spud_cms 0.3.4 → 0.3.6

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,28 +1,26 @@
1
1
  class Spud::Admin::MenuItemsController < Spud::Admin::ApplicationController
2
2
  add_breadcrumb "Menus", :spud_admin_menus_path
3
+ belongs_to_spud_app :menus
3
4
  layout 'spud/admin/cms/detail'
4
5
  before_filter :load_menu
5
6
  before_filter :load_menu_item, :only => [:edit,:update,:show,:destroy]
6
7
 
7
8
  def index
8
- @page_thumbnail = "spud/admin/menus_thumb.png"
9
- @page_name = "Menus"
9
+ @page_name = "Menu Items"
10
10
  @menu_items = @menu.spud_menu_items.order(:menu_order).includes(:spud_menu_items).paginate :page => params[:page]
11
+ respond_with @menu_items
11
12
  end
12
13
 
13
14
  def new
14
15
  add_breadcrumb "New", :new_spud_admin_page_path
15
-
16
- @page_thumbnail = "spud/admin/menus_thumb.png"
17
16
  @page_name = "New Menu Item"
18
17
 
19
18
  @menu_item = @menu.spud_menu_items.new
20
-
19
+ respond_with @menu_item
21
20
  end
22
21
 
23
22
  def create
24
23
  add_breadcrumb "New", :new_spud_admin_page_path
25
- @page_thumbnail = "spud/admin/menus_thumb.png"
26
24
  @page_name = "New Menu Item"
27
25
  @menu_item = SpudMenuItem.new(params[:spud_menu_item])
28
26
  @menu_item.spud_menu_id = @menu.id
@@ -41,28 +39,22 @@ class Spud::Admin::MenuItemsController < Spud::Admin::ApplicationController
41
39
  @menu_item.menu_order = highest_sibling.menu_order + 1
42
40
  end
43
41
  end
44
- if @menu_item.save
45
- flash[:notice] = "Menu Created successfully!"
46
- redirect_to spud_admin_menu_menu_items_url() and return
47
- else
48
- flash[:error] = "Error saving menu item"
49
- @error_object_name = "menu_item"
50
- render :action => "new"
51
- end
42
+ flash[:notice] = "Menu Created successfully!" if @menu_item.save
43
+
44
+ respond_with @menu_item,:location => spud_admin_menu_menu_items_url
52
45
  end
53
46
 
54
47
  def edit
55
48
  add_breadcrumb "Edit #{@menu_item.name}", :edit_spud_admin_menu_menu_item_path
56
- @page_thumbnail = "spud/admin/menus_thumb.png"
57
49
  @page_name = "Edit #{@menu_item.name}"
58
50
  if @menu_item.parent_type == "SpudMenu"
59
51
  @menu_item.parent_id = nil
60
52
  end
53
+ respond_with @menu_item
61
54
  end
62
55
 
63
56
  def update
64
57
  add_breadcrumb "Edit #{@menu_item.name}", :edit_spud_admin_menu_menu_item_path
65
- @page_thumbnail = "spud/admin/menus_thumb.png"
66
58
  @page_name = "Edit #{@menu_item.name}"
67
59
  if params[:spud_menu_item][:parent_id].blank?
68
60
  params[:spud_menu_item][:parent_type] = "SpudMenu"
@@ -72,35 +64,20 @@ class Spud::Admin::MenuItemsController < Spud::Admin::ApplicationController
72
64
  end
73
65
  @menu_item.attributes = params[:spud_menu_item]
74
66
  @menu_item.spud_menu_id = @menu.id
75
- if @menu_item.save
76
-
77
- flash[:notice] = "Menu saved successfully!"
78
- redirect_to spud_admin_menu_menu_items_url() and return
67
+ flash[:notice] = "Menu saved successfully!" if @menu_item.save
79
68
 
80
- else
81
- flash[:error] = "Error saving menu item"
82
- render :action => "edit"
83
- end
69
+ respond_with @menu_item,:location => spud_admin_menu_menu_items_url
84
70
  end
85
71
 
86
72
  def destroy
87
- status = 500
88
- if @menu_item.destroy
89
- status = 200
90
- end
91
- respond_to do |format|
92
- format.js { render :status => status}
93
- format.html {
94
- flash[:notice] = "Menu Item removed!" if status == 200
95
- flash[:error] = "Error removing menu item!" if status == 500
96
- redirect_to spud_admin_menu_menu_items_path() and return
97
- }
98
- end
73
+
74
+ flash[:notice] = "Menu Item removed!" if @menu_item.destroy
75
+ respond_with @menu_item,:location => spud_admin_menu_menu_items_url
99
76
  end
100
77
  private
101
78
  def load_menu
102
79
 
103
- @menu = SpudMenu.where(:id => params[:menu_id]).first
80
+ @menu = SpudMenu.find(params[:menu_id])
104
81
  if @menu.blank?
105
82
  flash[:error] = "Menu not found!"
106
83
  redirect_to spud_admin_menus_url() and return false
@@ -109,7 +86,7 @@ private
109
86
  end
110
87
 
111
88
  def load_menu_item
112
- @menu_item = SpudMenuItem.where(:id => params[:id]).first
89
+ @menu_item = SpudMenuItem.find(params[:id])
113
90
  if @menu_item.blank?
114
91
  flash[:error] = "Menu Item not found!"
115
92
  redirect_to spud_admin_menu_menu_items_url() and return false
@@ -7,6 +7,7 @@ class Spud::Admin::PagesController < Spud::Admin::ApplicationController
7
7
  def index
8
8
 
9
9
  @pages = SpudPage.where(:spud_page_id => nil).order(:page_order).includes(:spud_pages).paginate :page => params[:page]
10
+ respond_with @pages
10
11
  end
11
12
 
12
13
  def show
@@ -19,8 +20,7 @@ class Spud::Admin::PagesController < Spud::Admin::ApplicationController
19
20
  else
20
21
  return
21
22
  end
22
- end
23
-
23
+ end
24
24
  layout = 'application'
25
25
 
26
26
 
@@ -42,22 +42,13 @@ class Spud::Admin::PagesController < Spud::Admin::ApplicationController
42
42
  Spud::Cms.default_page_parts.each do |part|
43
43
  @page.spud_page_partials.new(:name => part)
44
44
  end
45
-
46
- # @page.spud_page_partials.new(:name => "Sidebar")
45
+ respond_with @page
47
46
  end
48
47
 
49
48
  def create
50
-
51
49
  @page = SpudPage.new(params[:spud_page])
52
-
53
- if @page.save
54
- flash[:notice] = "Page Saved successfully"
55
- redirect_to spud_admin_pages_url() and return
56
- else
57
- flash[:error] = "Error creating page"
58
- @error_object_name = "page"
59
- render :action => "new"
60
- end
50
+ flash[:notice] = "Page Saved successfully" if @page.save
51
+ respond_with @page,:location => spud_admin_pages_url
61
52
  end
62
53
 
63
54
  def edit
@@ -114,4 +114,21 @@ private
114
114
  content += "</ul>"
115
115
  return content.html_safe
116
116
  end
117
+
118
+ def sp_menu_with_seperator(options={})
119
+ seperator = "&nbsp;|&nbsp;".html_safe
120
+ if(options.has_key?(:seperator))
121
+ seperator = options[:seperator]
122
+ end
123
+
124
+ menu = SpudMenu.where(:name => options[:name]).first
125
+ menu_items = menu.spud_menu_items_combined.select("spud_menu_items.id as id,spud_menu_items.url as url,spud_menu_items.classes as classes,spud_menu_items.parent_type as parent_type,spud_menu_items.menu_order as menu_order,spud_menu_items.parent_id as parent_id,spud_menu_items.name as name,spud_pages.url_name as url_name").order(:parent_type,:parent_id).joins("LEFT JOIN spud_pages ON (spud_pages.id = spud_menu_items.spud_page_id)").all
126
+
127
+ menu_tags = []
128
+ menu_items.sort_by{|p| p.menu_order}.each do |item|
129
+ menu_tags += ["<a #{"class='#{item.classes}' " if !item.classes.blank?}href='#{!item.url_name.blank? ? page_path(:id => item.url_name) : item.url}'>#{item.name}</a>"]
130
+ end
131
+
132
+ return menu_tags.join(seperator).html_safe
133
+ end
117
134
  end
@@ -44,7 +44,8 @@ class SpudPage < ActiveRecord::Base
44
44
 
45
45
 
46
46
  def generate_url_name
47
- return false if self.name.blank?
47
+ # return false if self.name.blank?
48
+ return true if self.name.blank?
48
49
  if !self.use_custom_url_name || self.url_name.blank?
49
50
 
50
51
  url_name = self.name.parameterize.downcase
@@ -1,31 +1,31 @@
1
+ <%=error_messages_for(f.object)%>
1
2
  <fieldset>
2
3
  <ol>
3
4
  <li><%=f.label :name, :required=>true%>
4
5
  <%=f.text_field :name,:title => "",:size=>40%>
5
- <%=error_message_on "menu_item","name"%>
6
+
6
7
  </li>
7
8
  <li><%=f.label :menu_order, :required=>true%>
8
9
  <%=f.text_field :menu_order,:title => "",:size=>5%>
9
- <%=error_message_on "menu_item","menu_order"%>
10
+
10
11
  </li>
11
12
  <li><%=f.label :spud_page_id, "Page"%>
12
13
  <%=f.select :spud_page_id,options_for_select(SpudPage.options_tree_for_page(),@menu_item.spud_page_id),{:include_blank => 'Use URL instead'},{:title => "",:onchange => "if($(this).val() != '') {$('#spud_menu_item_url').val('');}"}%>
13
- <%=error_message_on "menu_item","spud_page_id"%>
14
+
14
15
  </li>
15
16
 
16
17
 
17
18
 
18
19
  <li><%=f.label :url%>
19
20
  <%=f.text_field :url,:title => "",:size=>40%>
20
- <%=error_message_on "menu_item","url"%>
21
21
  </li>
22
22
  <li><%=f.label :classes%>
23
23
  <%=f.text_field :classes,:title => "",:size=>40%>
24
- <%=error_message_on "menu_item","classes"%>
24
+
25
25
  </li>
26
26
  <li><%=f.label :parent, "Parent Menu"%>
27
27
  <%=f.select :parent_id,options_for_select(SpudMenuItem.options_tree_for_item(@menu,:filter => @menu_item),@menu_item.parent_type == 'SpudMenuItem' ? @menu_item.parent_id : nil),{:include_blank => "#{@menu.name}"},{:title => ""}%>
28
- <%=error_message_on "menu_item","parent"%>
28
+
29
29
  </li>
30
30
  </ol>
31
31
  </fieldset>
@@ -1,8 +1,8 @@
1
+ <%=error_messages_for(f.object)%>
1
2
  <fieldset>
2
3
  <ol>
3
4
  <li><%=f.label :name, :required=>true%>
4
5
  <%=f.text_field :name,:title => "",:size=>40%>
5
- <%=error_message_on "menu","name"%>
6
6
  </li>
7
7
  </ol>
8
8
  </fieldset>
@@ -1,7 +1,7 @@
1
+ <%=error_messages_for(f.object)%>
1
2
  <fieldset>
2
3
  <legend>Page Title</legend>
3
4
  <p>
4
- <%=error_message_on "page","name"%>
5
5
  <%=f.label :name, :required=>true, :style => "display:none;" %>
6
6
  <%=f.text_field :name, :class => "full-width" %>
7
7
  </p>
@@ -22,18 +22,18 @@
22
22
  <ol>
23
23
  <%if Spud::Cms.templates_enabled%>
24
24
  <li>
25
- <%=error_message_on "page","template_id"%>
25
+
26
26
  <%=f.label :template_id, "Template"%>
27
27
  <%=f.select :template_id, options_for_select(SpudTemplate.all.collect{|tp| [tp.name,tp.id]},@page.template_id), {:include_blank => 'Default'},{:title => "", 'data-source' => page_parts_spud_admin_pages_path(:page => @page.id) }%>
28
28
  </li>
29
29
  <%end%>
30
30
  <li>
31
- <%=error_message_on "page","spud_page_id"%>
31
+
32
32
  <%=f.label :spud_page_id, "Parent Page"%>
33
33
  <%=f.select :spud_page_id,options_for_select(SpudPage.options_tree_for_page(:filter => @page),@page.spud_page_id),{:include_blank => 'None'},{:title => ""}%>
34
34
  </li>
35
35
  <li>
36
- <%=error_message_on "page","url_name"%>
36
+
37
37
  <%=f.label :url_name, "Perma Link",:disabled => true%>
38
38
  <%=root_url%><%=f.text_field :url_name,:title => "",:size=>20%><%=f.check_box :use_custom_url_name,:onchange => "$('#spud_page_url_name').attr('disabled',!this.checked);"%>
39
39
  </li>
@@ -46,12 +46,12 @@
46
46
  <li>
47
47
  <%=f.label :meta_keywords,"Keywords"%>
48
48
  <%=f.text_field :meta_keywords,:title => "" %>
49
- <%=error_message_on "page","meta_keywords"%>
49
+
50
50
  </li>
51
51
  <li>
52
52
  <%=f.label :meta_description,"Description"%>
53
53
  <%=f.text_area :meta_description,:rows => 4,:cols=>75%>
54
- <%=error_message_on "page","meta_description"%>
54
+
55
55
  </li>
56
56
  <li>
57
57
  <%=f.label :visibility%>
@@ -62,7 +62,6 @@
62
62
  <%=f.check_box :published%>
63
63
  </li>
64
64
  <li>
65
- <%=error_message_on "page","notes"%>
66
65
  <%=f.label :notes,"Notes"%>
67
66
  <%=f.text_area :notes,:rows => 4,:cols=>75 %>
68
67
  </li>
@@ -1,8 +1,8 @@
1
1
  <div class="page_row">
2
2
 
3
- <span class="row_meta"><%=prefix if defined? prefix%><%=link_to page.name,spud_admin_page_path(:id => page.id)%></span>
3
+ <span class="row_meta"><%=prefix if defined? prefix%><%=link_to page.name,edit_spud_admin_page_path(:id => page.id)%></span>
4
4
 
5
- <span class="edit_controls"><%=link_to "Edit",edit_spud_admin_page_path(:id => page.id), :title => "Edit Page",:class => 'button'%>&nbsp;&nbsp;<%=link_to "Remove",spud_admin_page_path(:id => page.id),:method => :delete,:class => 'button',:confirm => "Are you sure you want to remove this page?"%></span>
5
+ <span class="edit_controls"><%=link_to "Preview",spud_admin_page_path(:id => page.id), :title => "Preview",:class => 'button'%>&nbsp;&nbsp;<%=link_to "Remove",spud_admin_page_path(:id => page.id),:method => :delete,:class => 'button',:confirm => "Are you sure you want to remove this page?"%></span>
6
6
  <br style="clear:both;"/>
7
7
  </div>
8
8
  <%if !page.spud_pages.all.blank?%>
@@ -1,8 +1,8 @@
1
+ <%=error_messages_for(f.object)%>
1
2
  <fieldset>
2
3
  <ol>
3
4
  <li><%=f.label :name, :required=>true%>
4
5
  <%=f.text_field :name,:title => "",:size=>40%>
5
- <%=error_message_on "template","name"%>
6
6
  </li>
7
7
 
8
8
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spud_cms
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.4
4
+ version: 0.3.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,22 +9,22 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-02-13 00:00:00.000000000 Z
12
+ date: 2012-02-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: spud_core
16
- requirement: &70139647374180 !ruby/object:Gem::Requirement
16
+ requirement: &70353867613180 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
20
20
  - !ruby/object:Gem::Version
21
- version: 0.5.2
21
+ version: 0.5.3
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70139647374180
24
+ version_requirements: *70353867613180
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: codemirror-rails
27
- requirement: &70139647373700 !ruby/object:Gem::Requirement
27
+ requirement: &70353867612440 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,7 +32,7 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70139647373700
35
+ version_requirements: *70353867612440
36
36
  description:
37
37
  email: destes@redwindsw.com
38
38
  executables: []
@@ -57,18 +57,7 @@ files:
57
57
  - app/controllers/spud/admin/pages_controller.rb
58
58
  - app/controllers/spud/admin/templates_controller.rb
59
59
  - app/controllers/spud/cms/sitemaps_controller.rb
60
- - app/helpers/pages_helper.rb
61
- - app/helpers/spud/admin/contacts_helper.rb
62
- - app/helpers/spud/admin/media_helper.rb
63
- - app/helpers/spud/admin/menu_items_helper.rb
64
- - app/helpers/spud/admin/menus_helper.rb
65
- - app/helpers/spud/admin/pages_helper.rb
66
- - app/helpers/spud/admin/posts_helper.rb
67
- - app/helpers/spud/admin/templates_helper.rb
68
- - app/helpers/spud/admin/users_helper.rb
69
60
  - app/helpers/spud/cms/application_helper.rb
70
- - app/helpers/spud/cms/sitemaps_helper.rb
71
- - app/helpers/spud/user_sessions_helper.rb
72
61
  - app/models/spud_menu.rb
73
62
  - app/models/spud_menu_item.rb
74
63
  - app/models/spud_page.rb
@@ -76,7 +65,6 @@ files:
76
65
  - app/models/spud_template.rb
77
66
  - app/views/layouts/spud/admin/cms/detail.html.erb
78
67
  - app/views/pages/show.html.erb
79
- - app/views/spud/admin/contacts/index.html.erb
80
68
  - app/views/spud/admin/menu_items/_form.html.erb
81
69
  - app/views/spud/admin/menu_items/_menu_item_row.html.erb
82
70
  - app/views/spud/admin/menu_items/edit.html.erb
@@ -1,2 +0,0 @@
1
- module PagesHelper
2
- end
@@ -1,2 +0,0 @@
1
- module Spud::Admin::ContactsHelper
2
- end
@@ -1,2 +0,0 @@
1
- module Spud::Admin::MediaHelper
2
- end
@@ -1,2 +0,0 @@
1
- module Spud::Admin::MenuItemsHelper
2
- end
@@ -1,2 +0,0 @@
1
- module Spud::Admin::MenusHelper
2
- end
@@ -1,2 +0,0 @@
1
- module Spud::Admin::PagesHelper
2
- end
@@ -1,2 +0,0 @@
1
- module Spud::Admin::PostsHelper
2
- end
@@ -1,2 +0,0 @@
1
- module Spud::Admin::TemplatesHelper
2
- end
@@ -1,2 +0,0 @@
1
- module Spud::Admin::UsersHelper
2
- end
@@ -1,2 +0,0 @@
1
- module Spud::Cms::SitemapsHelper
2
- end
@@ -1,2 +0,0 @@
1
- module Spud::UserSessionsHelper
2
- end
File without changes