spud_cms 0.9.21 → 1.0.0.RC1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. checksums.yaml +6 -14
  2. data/app/assets/javascripts/spud/admin/cms/menu_items.js +31 -3
  3. data/app/assets/stylesheets/spud/admin/cms/application.css +4 -0
  4. data/app/controllers/pages_controller.rb +5 -8
  5. data/app/controllers/spud/admin/menu_items_controller.rb +28 -6
  6. data/app/controllers/spud/admin/menus_controller.rb +6 -2
  7. data/app/controllers/spud/admin/pages_controller.rb +13 -6
  8. data/app/controllers/spud/admin/snippets_controller.rb +7 -3
  9. data/app/controllers/spud/cms/sitemaps_controller.rb +0 -2
  10. data/app/helpers/spud/cms/application_helper.rb +6 -4
  11. data/app/models/concerns/spud/liquid_taggable.rb +8 -0
  12. data/app/models/spud_menu.rb +4 -4
  13. data/app/models/spud_menu_item.rb +2 -5
  14. data/app/models/spud_page.rb +9 -12
  15. data/app/models/spud_page_liquid_tag.rb +1 -2
  16. data/app/models/spud_page_partial.rb +14 -6
  17. data/app/models/spud_page_partial_revision.rb +1 -4
  18. data/app/models/spud_snippet.rb +22 -4
  19. data/app/observers/page_sweeper.rb +2 -0
  20. data/app/views/pages/show.html.erb +7 -2
  21. data/app/views/spud/admin/menu_items/_form.html.erb +3 -10
  22. data/app/views/spud/admin/menu_items/_menu_item_row.html.erb +2 -2
  23. data/app/views/spud/admin/menu_items/index.html.erb +3 -1
  24. data/app/views/spud/admin/pages/_form.html.erb +8 -1
  25. data/app/views/spud/admin/pages/show.html.erb +13 -11
  26. data/app/views/spud/admin/snippets/_form.html.erb +8 -1
  27. data/config/routes.rb +7 -2
  28. data/lib/spud_cms/engine.rb +11 -8
  29. data/lib/spud_cms/liquid_taggable.rb +28 -0
  30. data/lib/spud_cms/page_route.rb +2 -2
  31. data/lib/spud_cms/version.rb +1 -1
  32. data/spec/controllers/pages_controller_spec.rb +5 -2
  33. data/spec/controllers/spud/cms/sitemaps_controller_spec.rb +3 -2
  34. data/spec/dummy/config/environments/development.rb +2 -4
  35. data/spec/dummy/config/environments/production.rb +1 -1
  36. data/spec/dummy/config/environments/test.rb +2 -4
  37. data/spec/dummy/log/test.log +19992 -4353
  38. data/spec/models/spud_page_partial_spec.rb +3 -3
  39. data/spec/models/spud_page_spec.rb +3 -3
  40. metadata +36 -36
  41. data/spec/dummy/log/development.log +0 -182
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- NGVhMTAwYWIxMjQyYTRjZWE3YjQzMDA2ZTIyNmE1ODIxN2NiMDNkNA==
5
- data.tar.gz: !binary |-
6
- Yzk0ZWRjZTY4YzI3NjM4OWE1OTAwMzEyODg2YTYwMzcwYTdiMDU1OQ==
7
- !binary "U0hBNTEy":
8
- metadata.gz: !binary |-
9
- YWE1NjcwZjNhYzNlZTk4NzdlNDFhNWE1NzAxNTViYzdkZjU5Mjg5OWQ2Yjk3
10
- YjA4ZDE2NGRkNWE1Y2Q3YjgwNjVlMTgxM2E5MTE3OWViZjY0MGNmYjg1NTUy
11
- Y2NjMTFkYWVlMDRlZjljMTllMjVjNGY1MTE1MmI2M2Q4NmEyMWQ=
12
- data.tar.gz: !binary |-
13
- YzE5Zjc3YzhkZWY0MDQyZTg3YmM4YzQ2NzNkZGVhYmYzOWQwZDcwOTEyYWI4
14
- MjllZDFhOGU3YTE0ZmNmMjUyZGFlMDRhZTFmNWZhODViOGZmNDE4YTNjN2Ji
15
- YTg4NDM2NmU1NTRmNTEwZGU4Y2M5YmQzZjFiMTVjZWQ4MDg5MjU=
2
+ SHA1:
3
+ metadata.gz: 54e9c4a61c4797b554e4ddffbf29a1efff29b835
4
+ data.tar.gz: 397642ca31be38f6ba49303a8cbc0bd622d43780
5
+ SHA512:
6
+ metadata.gz: 6cc9210f9fed2f54a38078f17c740238d256491ee15e5441a93a54186f154af5db22755d3bf1dded796df564a7e8cf1c7d029ef281ceb76d128a80f693529464
7
+ data.tar.gz: 235e6abbcd19c6e08dc2b9bb1d5b62fe315a73cb6f7a1e7926689561abcc39a0764ababaccc0336262db624d27d82698fff3100f26881bb320f83e29f0dea3b5
@@ -2,9 +2,9 @@ spud.admin.cms.menu_items = {};
2
2
 
3
3
  (function() {
4
4
  var menu_items = spud.admin.cms.menu_items;
5
-
6
- menu_items.init = function() {
7
- return;
5
+ var menuId = 0;
6
+ menu_items.init = function(id) {
7
+ menuId = id;
8
8
  $('.sortable').sortable({
9
9
  connectWith:".connectedSortable",
10
10
  start: function(event,ui) {
@@ -16,6 +16,7 @@ spud.admin.cms.menu_items = {};
16
16
  items:'li',
17
17
  stop: function(event,ui) {
18
18
  $('#root_menu_list').removeClass('menu_edit');
19
+ menu_items.save.call(menu_items);
19
20
  },
20
21
  over: function(event,ui) {
21
22
 
@@ -32,4 +33,31 @@ spud.admin.cms.menu_items = {};
32
33
  }).disableSelection();
33
34
  };
34
35
 
36
+ menu_items.save = function() {
37
+ var menuItems = $('#root_menu_list > li > .menu-item-row');
38
+
39
+ var orderArray = []
40
+ menu_items.buildOrderArray(menuItems, orderArray);
41
+
42
+ // Post To Menu Items Save method
43
+ $.ajax({
44
+ url: "/spud/admin/menus/" + menuId + "/menu_items/sort",
45
+ type: 'post',
46
+ data: {menu_order: JSON.stringify(orderArray), _method: 'put'}
47
+ });
48
+
49
+ };
50
+
51
+ menu_items.buildOrderArray = function(menuItems,orderArray) {
52
+ for(var counter=0;counter < menuItems.length; counter++) {
53
+ var menuItem = $(menuItems[counter]);
54
+ var menuHash = {id: menuItem.attr('data-menu-item-id'), order: []}
55
+ var subItems = menuItem.parent().find(' > .menu_list > li > .menu-item-row');
56
+ if(subItems && subItems.length > 0) {
57
+ menu_items.buildOrderArray(subItems, menuHash.order)
58
+ }
59
+ orderArray.push(menuHash)
60
+ }
61
+ }
62
+
35
63
  })();
@@ -2,8 +2,12 @@
2
2
  //= require codemirror
3
3
  //= require codemirror/themes/night
4
4
  */
5
+ #root_menu_list {
6
+ padding-bottom: 15px;
7
+ }
5
8
  .menu_list {
6
9
  list-style-type:none;
10
+
7
11
  }
8
12
  .page_row {
9
13
  background:white;
@@ -1,15 +1,13 @@
1
1
  class PagesController < ApplicationController
2
- caches_action :show, :if => Proc.new { |c| Spud::Cms.cache_mode == :action }
3
-
4
2
  respond_to :html
5
3
 
6
4
  before_filter :set_default_content_type
7
5
 
8
- after_filter({:only => [:show]}) do |c|
9
- if Spud::Cms.cache_mode == :full_page && @page && @page.is_private? == false
10
- c.cache_page(nil, nil, false)
11
- end
12
- end
6
+ # after_filter({:only => [:show]}) do |c|
7
+ # if Spud::Cms.cache_mode == :full_page && @page && @page.is_private? == false
8
+ # c.cache_page(nil, nil, false)
9
+ # end
10
+ # end
13
11
 
14
12
  def show
15
13
  # prevents 500 errors if a url like "/home.jpg" is hit
@@ -57,7 +55,6 @@ class PagesController < ApplicationController
57
55
  end
58
56
 
59
57
  if @page.is_private?
60
- @rendered_action_cache = true if Spud::Cms.cache_mode == :action
61
58
  return if defined?(require_user) && require_user == false
62
59
  end
63
60
 
@@ -21,7 +21,7 @@ class Spud::Admin::MenuItemsController < Spud::Admin::CmsController
21
21
  def create
22
22
 
23
23
  add_breadcrumb "New", :new_spud_admin_page_path
24
- @menu_item = SpudMenuItem.new(params[:spud_menu_item])
24
+ @menu_item = SpudMenuItem.new(menu_item_params)
25
25
  @menu_item.spud_menu_id = @menu.id
26
26
  if params[:spud_menu_item][:parent_id].blank?
27
27
  @menu_item.parent_id = @menu.id
@@ -62,7 +62,7 @@ class Spud::Admin::MenuItemsController < Spud::Admin::CmsController
62
62
  else
63
63
  params[:spud_menu_item][:parent_type] = "SpudMenuItem"
64
64
  end
65
- @menu_item.attributes = params[:spud_menu_item]
65
+ @menu_item.attributes = menu_item_params
66
66
  @menu_item.spud_menu_id = @menu.id
67
67
  flash[:notice] = "Menu saved successfully!" if @menu_item.save
68
68
 
@@ -76,7 +76,12 @@ class Spud::Admin::MenuItemsController < Spud::Admin::CmsController
76
76
  respond_with @menu_item,:location => spud_admin_menu_menu_items_url
77
77
  end
78
78
 
79
- def reorder
79
+ def sort
80
+ menu_orders = ActiveSupport::JSON.decode(params[:menu_order])
81
+ sort_menu_items_to_parent(@menu, menu_orders)
82
+ render :nothing => true, :status => 200
83
+
84
+
80
85
  #id param
81
86
  #source position
82
87
  #destination position
@@ -86,6 +91,23 @@ class Spud::Admin::MenuItemsController < Spud::Admin::CmsController
86
91
 
87
92
  end
88
93
  private
94
+
95
+ def sort_menu_items_to_parent(parent,menu_orders)
96
+ sort_position = 0
97
+ menu_orders.each do |menu_meta|
98
+ menu_item = SpudMenuItem.find(menu_meta["id"])
99
+ if menu_item
100
+ menu_item.menu_order = sort_position
101
+ menu_item.parent = parent
102
+ menu_item.save!
103
+ if menu_meta["order"].nil? == false
104
+ sort_menu_items_to_parent(menu_item, menu_meta["order"])
105
+ end
106
+ sort_position += 1
107
+ end
108
+ end
109
+ end
110
+
89
111
  def load_menu
90
112
 
91
113
  @menu = SpudMenu.where(:id => params[:menu_id]).first
@@ -108,8 +130,8 @@ private
108
130
  end
109
131
  end
110
132
 
111
-
112
-
113
-
133
+ def menu_item_params
134
+ params.require(:spud_menu_item).permit(:name,:parent_type,:parent_id,:item_type,:spud_page_id,:menu_order,:url,:classes)
135
+ end
114
136
 
115
137
  end
@@ -18,7 +18,7 @@ class Spud::Admin::MenusController < Spud::Admin::CmsController
18
18
 
19
19
  def create
20
20
  add_breadcrumb "New", :new_spud_admin_menu_path
21
- @menu = SpudMenu.new(params[:spud_menu])
21
+ @menu = SpudMenu.new(menu_params)
22
22
  @menu.site_id = session[:admin_site]
23
23
  flash[:notice] = "New menu created" if @menu.save
24
24
  respond_with @menu,:location => @menu.id != nil ? spud_admin_menu_menu_items_url(:menu_id => @menu.id) : spud_admin_menus_url
@@ -32,7 +32,7 @@ class Spud::Admin::MenusController < Spud::Admin::CmsController
32
32
  def update
33
33
  add_breadcrumb "Edit #{@menu.name}", :edit_spud_admin_menu_path
34
34
 
35
- flash[:notice] = "Menu saved successfully" if @menu.update_attributes(params[:spud_menu])
35
+ flash[:notice] = "Menu saved successfully" if @menu.update_attributes(menu_params)
36
36
  respond_with @menu,:location => spud_admin_menu_menu_items_url(:menu_id => @menu.id)
37
37
  end
38
38
 
@@ -52,4 +52,8 @@ private
52
52
  redirect_to spud_admin_menus_url() and return false
53
53
  end
54
54
  end
55
+
56
+ def menu_params
57
+ params.require(:spud_menu).permit(:name, :description)
58
+ end
55
59
  end
@@ -8,10 +8,12 @@ class Spud::Admin::PagesController < Spud::Admin::CmsController
8
8
 
9
9
  @pages = SpudPage.site(session[:admin_site]).where(:spud_page_id => nil).order(:page_order).includes(:spud_pages).paginate :page => params[:page]
10
10
 
11
- home_page = SpudPage.where(:url_name => Spud::Cms.root_page_name).first
12
- if home_page.blank?
13
- flash.now[:warning] = "You have not setup your default CMS page. This page will be your homepage. To do so, create a page with the name '#{Spud::Cms.root_page_name.titlecase}'"
14
- end
11
+ if Spud::Cms.root_page_name
12
+ home_page = SpudPage.where(:url_name => Spud::Cms.root_page_name).first
13
+ if home_page.blank?
14
+ flash.now[:warning] = "You have not setup your default CMS page. This page will be your homepage. To do so, create a page with the name '#{Spud::Cms.root_page_name.titlecase}'"
15
+ end
16
+ end
15
17
 
16
18
  respond_with @pages
17
19
  end
@@ -39,7 +41,7 @@ class Spud::Admin::PagesController < Spud::Admin::CmsController
39
41
 
40
42
  def create
41
43
 
42
- @page = SpudPage.new(params[:spud_page])
44
+ @page = SpudPage.new(page_params)
43
45
  @page.site_id = session[:admin_site]
44
46
  if params[:preview] && params[:preview].to_i == 1
45
47
  preview
@@ -71,7 +73,7 @@ class Spud::Admin::PagesController < Spud::Admin::CmsController
71
73
 
72
74
  def update
73
75
 
74
- @page.attributes = params[:spud_page]
76
+ @page.attributes = page_params
75
77
  if params[:preview] && params[:preview].to_i == 1
76
78
  preview
77
79
  return
@@ -178,5 +180,10 @@ private
178
180
  end
179
181
 
180
182
 
183
+ def page_params
184
+ params.require(:spud_page).permit(:name,:url_name,:created_by,:updated_by,:layout,:visibility,:spud_page_id,:publish_at,:format,:meta_description,:meta_keywords,:page_order,{:spud_page_partials_attributes => [:id,:name, :content, :format]},:use_custom_url_name,:published,:notes)
185
+ end
186
+
187
+
181
188
 
182
189
  end
@@ -5,7 +5,7 @@ class Spud::Admin::SnippetsController < Spud::Admin::ApplicationController
5
5
 
6
6
  before_filter :load_snippet, :only => [:show, :edit, :update, :destroy]
7
7
 
8
- cache_sweeper :snippet_sweeper, :only => [:update,:destroy,:create]
8
+ # cache_sweeper :snippet_sweeper, :only => [:update,:destroy,:create]
9
9
 
10
10
  def index
11
11
  @snippets = SpudSnippet.site(session[:admin_site]).order(:name).paginate :page => params[:page]
@@ -21,7 +21,7 @@ class Spud::Admin::SnippetsController < Spud::Admin::ApplicationController
21
21
 
22
22
  def create
23
23
  add_breadcrumb "New", :new_spud_admin_snippet_url
24
- @snippet = SpudSnippet.new(params[:spud_snippet])
24
+ @snippet = SpudSnippet.new(snippet_params)
25
25
  @snippet.site_id = session[:admin_site]
26
26
 
27
27
  @snippet.save
@@ -37,7 +37,7 @@ class Spud::Admin::SnippetsController < Spud::Admin::ApplicationController
37
37
 
38
38
  def update
39
39
  add_breadcrumb "Edit", :edit_spud_admin_snippet_url
40
- flash[:notice] = "Snippet saved successfully!" if @snippet.update_attributes(params[:spud_snippet])
40
+ flash[:notice] = "Snippet saved successfully!" if @snippet.update_attributes(snippet_params)
41
41
  respond_with @snippet, :location => spud_admin_snippets_url
42
42
  end
43
43
 
@@ -58,4 +58,8 @@ private
58
58
  redirect_to spud_admin_snippets_url and return false
59
59
  end
60
60
  end
61
+
62
+ def snippet_params
63
+ params.require(:spud_snippet).permit(:content, :content_processed, :format, :name)
64
+ end
61
65
  end
@@ -1,13 +1,11 @@
1
1
  class Spud::Cms::SitemapsController < Spud::ApplicationController
2
2
  respond_to :xml
3
- caches_page :show,:expires_in => 1.day
4
3
  def show
5
4
  @pages = SpudPage.published_pages.public.order(:spud_page_id)
6
5
  if Spud::Core.multisite_mode_enabled
7
6
  site_config = Spud::Core.site_config_for_host(request.host_with_port)
8
7
  @pages = @pages.site(!site_config.blank? ? site_config[:site_id] : 0)
9
8
  end
10
- @pages = @pages.all
11
9
  respond_with @pages
12
10
  end
13
11
  end
@@ -13,7 +13,9 @@ module Spud::Cms::ApplicationHelper
13
13
  end
14
14
 
15
15
  if !snippet.blank?
16
- return snippet.content_processed.html_safe
16
+ cache snippet do
17
+ return snippet.content_processed.html_safe
18
+ end
17
19
  else
18
20
  return nil
19
21
  end
@@ -55,7 +57,7 @@ module Spud::Cms::ApplicationHelper
55
57
  content = "<ul>"
56
58
  end
57
59
 
58
- pages = pages.all.group_by(&:spud_page_id)
60
+ pages = pages.load.group_by(&:spud_page_id)
59
61
  if pages[start_page].blank?
60
62
 
61
63
  return ""
@@ -136,7 +138,7 @@ module Spud::Cms::ApplicationHelper
136
138
  #{SpudMenuItem.table_name}.menu_order as menu_order,
137
139
  #{SpudMenuItem.table_name}.parent_id as parent_id,
138
140
  #{SpudMenuItem.table_name}.name as name,
139
- #{SpudPage.table_name}.url_name as url_name").order(:parent_type,:parent_id).joins("LEFT JOIN #{SpudPage.table_name} ON (#{SpudPage.table_name}.id = #{SpudMenuItem.table_name}.spud_page_id)").all
141
+ #{SpudPage.table_name}.url_name as url_name").order(:parent_type,:parent_id).joins("LEFT JOIN #{SpudPage.table_name} ON (#{SpudPage.table_name}.id = #{SpudMenuItem.table_name}.spud_page_id)").load
140
142
 
141
143
 
142
144
  grouped_items = menu_items.group_by(&:parent_type)
@@ -201,7 +203,7 @@ module Spud::Cms::ApplicationHelper
201
203
  #{SpudMenuItem.table_name}.menu_order as menu_order,
202
204
  #{SpudMenuItem.table_name}.parent_id as parent_id,
203
205
  #{SpudMenuItem.table_name}.name as name,
204
- #{SpudPage.table_name}.url_name as url_name").order(:parent_type,:parent_id).joins("LEFT JOIN #{SpudPage.table_name} ON (#{SpudPage.table_name}.id = #{SpudMenuItem.table_name}.spud_page_id)").all
206
+ #{SpudPage.table_name}.url_name as url_name").order(:parent_type,:parent_id).joins("LEFT JOIN #{SpudPage.table_name} ON (#{SpudPage.table_name}.id = #{SpudMenuItem.table_name}.spud_page_id)").load
205
207
 
206
208
  menu_tags = []
207
209
  menu_items.sort_by{|p| p.menu_order}.each do |item|
@@ -0,0 +1,8 @@
1
+
2
+ module Spud::LiquidTaggable
3
+ extend ActiveSupport::Concern
4
+ included do
5
+ has_many :spud_page_liquid_tags, :as => :attachment, :dependent => :destroy
6
+
7
+ end
8
+ end
@@ -1,9 +1,9 @@
1
1
  class SpudMenu < ActiveRecord::Base
2
- validates :name,:presence => true
3
- validates_uniqueness_of :name, :scope => [:site_id]
2
+ validates :name,:presence => true, :uniqueness => [:site_id]
3
+
4
4
  has_many :spud_menu_items,:as => :parent,:dependent => :destroy
5
5
  has_many :spud_menu_items_combined,:class_name => "SpudMenuItem",:foreign_key => :spud_menu_id,:dependent => :destroy
6
-
7
- attr_protected :site_id
6
+
7
+
8
8
  scope :site, lambda {|sid| where(:site_id => sid)}
9
9
  end
@@ -1,6 +1,6 @@
1
1
  class SpudMenuItem < ActiveRecord::Base
2
- belongs_to :parent, :polymorphic=>true
3
- belongs_to :spud_menu
2
+ belongs_to :parent, :polymorphic=>true, :touch => true
3
+ belongs_to :spud_menu, :touch => true
4
4
  belongs_to :spud_page
5
5
  has_many :spud_menu_items,:as => :parent,:dependent => :destroy
6
6
 
@@ -9,9 +9,6 @@ class SpudMenuItem < ActiveRecord::Base
9
9
  validates :parent_type,:presence => true
10
10
  validates :parent_id,:presence => true
11
11
 
12
-
13
- attr_accessible :name,:parent_type,:parent_id,:item_type,:spud_page_id,:menu_order,:url,:classes
14
-
15
12
  def get_url
16
13
  if !self.spud_page.blank?
17
14
  return self.spud_page.url_name
@@ -2,6 +2,7 @@ class SpudPage < ActiveRecord::Base
2
2
  spud_searchable
3
3
  belongs_to :spud_page
4
4
  has_many :spud_page_partial_revisions
5
+ has_many :spud_menu_items
5
6
  has_many :spud_pages, :dependent => :nullify
6
7
  has_many :spud_page_partials,:dependent => :destroy
7
8
  has_many :spud_permalinks,:as => :attachment, :dependent => :destroy
@@ -9,25 +10,21 @@ class SpudPage < ActiveRecord::Base
9
10
  belongs_to :updated_by_user,:class_name => "SpudUser",:foreign_key => :updated_by
10
11
 
11
12
 
12
- attr_accessible :name,:url_name,:created_by,:updated_by,:layout,:visibility,:spud_page_id,:publish_at,:format,:meta_description,:meta_keywords,:page_order,:spud_page_partials_attributes,:use_custom_url_name,:published,:notes
13
-
14
13
  before_validation :generate_url_name
15
- validates :name,:presence => true
16
- validates_uniqueness_of :name, :scope => [:site_id,:spud_page_id]
17
- validates :url_name,:presence => true
18
- validates_uniqueness_of :url_name, :scope => :site_id
14
+ validates :name,:presence => true, :uniqueness => {:scope => [:site_id, :spud_page_id]}
15
+ validates :url_name,:presence => true, :uniqueness => {:scope => :site_id}
19
16
 
20
17
  accepts_nested_attributes_for :spud_page_partials, :allow_destroy => true
21
- scope :parent_pages, where(:spud_page_id => nil)
18
+ scope :parent_pages, -> {where(:spud_page_id => nil)}
22
19
  scope :site, lambda {|sid| where(:site_id => sid)}
23
- scope :published_pages, where(:published => true)
24
- scope :public, where(:visibility => 0)
20
+ scope :published_pages, -> { where(:published => true)}
21
+ scope :public, -> {where(:visibility => 0)}
25
22
 
26
23
 
27
24
  def self.grouped(site_id=0)
28
25
 
29
26
  if(Spud::Core.multisite_mode_enabled)
30
- return site(site_id).all.group_by(&:spud_page_id)
27
+ return site(site_id).load.group_by(&:spud_page_id)
31
28
  else
32
29
  return all.group_by(&:spud_page_id)
33
30
  end
@@ -38,7 +35,7 @@ class SpudPage < ActiveRecord::Base
38
35
  end
39
36
 
40
37
  # Returns an array of pages in order of heirarchy
41
- # :fitler Filters out a page by ID, and all of its children
38
+ # :filter Filters out a page by ID, and all of its children
42
39
  # :value Pick an attribute to be used in the value field, defaults to ID
43
40
  def self.options_tree_for_page(config={})
44
41
  collection = config[:collection] || self.grouped(config[:site_id])
@@ -73,7 +70,7 @@ class SpudPage < ActiveRecord::Base
73
70
  if !self.id.blank?
74
71
  pages = pages.where("id != #{self.id}")
75
72
  end
76
- url_names = pages.site(self.site_id).all.collect{|p| p.url_name}
73
+ url_names = pages.site(self.site_id).collect{|p| p.url_name}
77
74
 
78
75
  counter = 1
79
76
  url_name_new = url_name