mtoros-mega_menus 0.7.3 → 0.7.4

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.
data/Manifest CHANGED
@@ -16,6 +16,7 @@ rails_generators/menu/templates/views/edit_menu_form.rjs
16
16
  rails_generators/menu/templates/views/edit_menu.rjs
17
17
  rails_generators/menu/templates/views/up_menu.rjs
18
18
  rails_generators/menu/templates/views/down_menu.rjs
19
+ rails_generators/menu/templates/views/publish_menu.rjs
19
20
  rails_generators/menu/templates/views/_menu.html.erb
20
21
  rails_generators/menu/templates/helpers/menu_helper.rb
21
22
  rails_generators/menu/templates/models/create_menus.rb
data/Rakefile CHANGED
@@ -4,7 +4,7 @@ require 'rake'
4
4
  begin
5
5
  require 'echoe'
6
6
 
7
- Echoe.new('mega_menus', '0.7.3') do |p|
7
+ Echoe.new('mega_menus', '0.7.4') do |p|
8
8
  p.summary = "Treeview menu Gem for Rails"
9
9
  p.description = "Adds a model, controller to perform the tasks in order to have a treeview menu. To use this gem simply install it and write script/generate menu name_of_the_menu"
10
10
  p.author = ['Marko Toros']
@@ -16,6 +16,32 @@ module MegaMenus
16
16
  return FALSE
17
17
  end
18
18
 
19
+ def setPublished
20
+ self.published=TRUE
21
+ self.save!
22
+ parent_id=self.id
23
+ allmenus=self.class.all
24
+ allmenus.each do |m|
25
+ if(m.isChildOf(parent_id))
26
+ m.published=TRUE
27
+ m.save!
28
+ end
29
+ end
30
+ end
31
+
32
+ def setNotPublished
33
+ self.published=FALSE
34
+ self.save!
35
+ parent_id=self.id
36
+ allmenus=self.class.all
37
+ allmenus.each do |m|
38
+ if(m.isChildOf(parent_id))
39
+ m.published=FALSE
40
+ m.save!
41
+ end
42
+ end
43
+ end
44
+
19
45
  def children
20
46
  self.class.children(self.id)
21
47
  end
@@ -61,7 +87,8 @@ module MegaMenus
61
87
  child = self.new( "title" => title,
62
88
  "link" => link,
63
89
  "parent_id" => menu_id,
64
- "position" => position)
90
+ "position" => position,
91
+ "published" => FALSE)
65
92
  child.save!
66
93
  end
67
94
 
data/mega_menus.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = %q{mega_menus}
3
- s.version = "0.7.3"
3
+ s.version = "0.7.4"
4
4
 
5
5
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
6
6
  s.authors = ["Marko Toros"]
@@ -8,7 +8,7 @@ Gem::Specification.new do |s|
8
8
  s.description = %q{Adds a model, controller to perform the tasks in order to have a treeview menu. To use this gem simply install it and write script/generate menu name_of_the_menu}
9
9
  s.email = %q{mtoros@gmail.com}
10
10
  s.extra_rdoc_files = ["README.rdoc", "lib/mega_menus.rb", "lib/mega_menus/editor.rb", "lib/mega_menus/view_helpers.rb"]
11
- s.files = ["Manifest", "README.rdoc", "init.rb", "Rakefile", "lib/mega_menus.rb", "lib/mega_menus/editor.rb", "lib/mega_menus/view_helpers.rb", "test/test_editor.rb", "rails_generators/menu/USAGE", "rails_generators/menu/menu_generator.rb", "rails_generators/menu/templates/controllers/menu_controller.rb", "rails_generators/menu/templates/views/add_menu_form.rjs", "rails_generators/menu/templates/views/add_menu.rjs", "rails_generators/menu/templates/views/delete_menu.rjs", "rails_generators/menu/templates/views/edit_menu_form.rjs", "rails_generators/menu/templates/views/edit_menu.rjs", "rails_generators/menu/templates/views/up_menu.rjs", "rails_generators/menu/templates/views/down_menu.rjs", "rails_generators/menu/templates/views/_menu.html.erb", "rails_generators/menu/templates/helpers/menu_helper.rb", "rails_generators/menu/templates/models/create_menus.rb", "rails_generators/menu/templates/models/menu.rb", "mega_menus.gemspec"]
11
+ s.files = ["Manifest", "README.rdoc", "init.rb", "Rakefile", "lib/mega_menus.rb", "lib/mega_menus/editor.rb", "lib/mega_menus/view_helpers.rb", "test/test_editor.rb", "rails_generators/menu/USAGE", "rails_generators/menu/menu_generator.rb", "rails_generators/menu/templates/controllers/menu_controller.rb", "rails_generators/menu/templates/views/add_menu_form.rjs", "rails_generators/menu/templates/views/add_menu.rjs", "rails_generators/menu/templates/views/delete_menu.rjs", "rails_generators/menu/templates/views/edit_menu_form.rjs", "rails_generators/menu/templates/views/edit_menu.rjs", "rails_generators/menu/templates/views/up_menu.rjs", "rails_generators/menu/templates/views/down_menu.rjs", "rails_generators/menu/templates/views/publish_menu.rjs", "rails_generators/menu/templates/views/_menu.html.erb", "rails_generators/menu/templates/helpers/menu_helper.rb", "rails_generators/menu/templates/models/create_menus.rb", "rails_generators/menu/templates/models/menu.rb", "mega_menus.gemspec"]
12
12
  s.has_rdoc = true
13
13
  s.homepage = %q{}
14
14
  s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Mega_menus", "--main", "README.rdoc"]
@@ -12,6 +12,7 @@ class MenuGenerator < Rails::Generator::NamedBase
12
12
  m.template "views/edit_menu.rjs", "app/views/#{file_name}editor/edit_menu.rjs"
13
13
  m.template "views/up_menu.rjs", "app/views/#{file_name}editor/up_menu.rjs"
14
14
  m.template "views/down_menu.rjs", "app/views/#{file_name}editor/down_menu.rjs"
15
+ m.template "views/publish_menu.rjs", "app/views/#{file_name}editor/publish_menu.rjs"
15
16
  m.template "views/_menu.html.erb", "app/views/#{file_name}editor/_#{file_name}.html.erb"
16
17
  #create the helper
17
18
  m.template "helpers/menu_helper.rb", "app/helpers/#{file_name}_helper.rb"
@@ -10,6 +10,15 @@ class <%= "#{file_name.capitalize+ "editor" + "Controller"}" %> < ApplicationCon
10
10
 
11
11
  end
12
12
 
13
+ def publish_menu
14
+ m=<%= file_name.capitalize %>.find(params[:menu_id].to_i)
15
+ if(m.published)
16
+ m.setNotPublished
17
+ else
18
+ m.setPublished
19
+ end
20
+ end
21
+
13
22
  def delete_menu
14
23
  temp=<%= file_name.capitalize %>.find(params[:menu_id]).parent_id
15
24
 
@@ -34,59 +34,75 @@ module <%= "#{file_name.capitalize}Helper" %>
34
34
  firstm=TRUE
35
35
  allmenus.each do |m|
36
36
  #write the actual menu line for each record
37
- if(m.id==1 and m.children.empty? and admin_depth.include?(m.depth))
38
- concat( "<ul id=\"ul_menu_#{m.depth}\" class=\"ul_menu_depth_#{m.depth} ul_menu\">")
39
- if(admin_condition)
40
- concat( "<li id=\"root_add_#{m.id}\" class=\"root_add\">")
41
- concat( link_to_remote( "<span>Add</span>", {:url => {:controller => menu_controller, :action => 'add_menu_form', :menu_id => m.id,:menu_model=>menu_model, :menu_controller=>menu_controller}}, {:class => "menu_links_add", :title=> "Add",:id => "add_menu_link_#{m.id}"}))
42
- add_menu_form(menu_model, menu_controller, m.id)
43
- concat( "</li>")
44
- end
45
- firstm=FALSE
46
- end
47
- if(m.id!=1 and m.isChildOf(admin_parent))
48
- #check if your depth is correct
49
- if(admin_depth.include?(m.depth))
50
- if(m.depth > pmd or firstm)
51
- concat( "<ul id=\"ul_menu_#{m.depth}\" class=\"ul_menu_depth_#{m.depth} ul_menu\">")
37
+ if(m.published==TRUE or admin_condition==TRUE)
38
+ if(m.id==1 and m.children.empty? and admin_depth.include?(m.depth))
39
+ concat( "<ul id=\"ul_menu_#{m.depth}\" class=\"ul_menu_depth_#{m.depth} ul_menu\">")
52
40
  if(admin_condition)
53
- concat( "<li id=\"root_add_#{m.parent_id}\" class=\"root_add\">")
54
- concat( link_to_remote( "<span>Add</span>", {:url => {:controller => menu_controller, :action => 'add_menu_form', :menu_id => m.parent_id,:menu_model=>menu_model, :menu_controller=>menu_controller}}, {:class => "menu_links_add", :title=> "Add",:id => "add_menu_link_#{m.id}"}))
55
- add_menu_form(menu_model, menu_controller, m.parent_id)
56
- concat( "</li>")
57
- end
58
- firstm=FALSE
59
- elsif(m.depth < pmd)
60
- pmd.downto(m.depth+1) {concat( "</ul>")}
61
- end
62
- pmd=m.depth
63
-
64
- #make the selected view appear nicer
65
- if(m.id==menu_id.to_i)
66
- concat( "<li id=\"li_menu_#{m.id}\" class=\"li_menu_class_selected\">")
67
- concat( "<a class=\"selected_menu\", id =\"menu_link_#{m.id}\" href=\"#{m.link}?menu_id=#{m.id}\"> #{m.title} </a>")
68
- session[:menu_id]=menu_id
69
- else
70
- concat( "<li id=\"li_menu_#{m.id}\" class=\"li_menu_class\">")
71
- concat( "<a class=\"menu_link\", id =\"menu_link_#{m.id}\" href=\"#{m.link}?menu_id=#{m.id}\"> #{m.title} </a>")
72
- end
73
- if(admin_condition)
74
- #remove the comment on the following line depending on the view you want to have
75
- #concat( link_to_remote( "<span>Add</span>", {:url => {:controller => menu_controller, :action => 'add_menu_form', :menu_id => m.id,:menu_model=>menu_model, :menu_controller=>menu_controller}}, {:class => "menu_links_add", :title=> "Add",:id => "add_menu_link_#{m.id}"}))
76
- concat( link_to_remote( "<span>Delete</span>", {:url => {:controller => menu_controller, :action => 'delete_menu', :menu_id => m.id,:menu_model=>menu_model, :menu_controller=>menu_controller}, :confirm => "Are you sure?"}, {:class => "menu_links_delete", :title=> "Delete",:id => "delete_menu_link_#{m.id}"}))
77
- concat( link_to_remote( "<span>Edit</span>", {:url => {:controller => menu_controller, :action => 'edit_menu_form', :menu_id => m.id,:menu_model=>menu_model, :menu_controller=>menu_controller}}, {:class => "menu_links_edit",:title=> "Edit", :id => "edit_menu_link_#{m.id}"}))
78
- concat( link_to_remote( "<span>Up</span>", {:url => {:controller => menu_controller, :action => 'up_menu', :menu_id => m.id,:menu_model=>menu_model, :menu_controller=>menu_controller}}, {:class => "menu_links_up", :title=> "Up",:id => "up_menu_link_#{m.id}"}))
79
- concat( link_to_remote( "<span>Down</span>", {:url => {:controller => menu_controller, :action => 'down_menu', :menu_id => m.id,:menu_model=>menu_model, :menu_controller=>menu_controller}}, {:class => "menu_links_down", :title=> "Down", :id => "down_menu_link_#{m.id}"}))
80
- edit_menu_form(menu_model, menu_controller,m)
81
- end
82
- concat( "</li>")
83
- if(admin_condition and m.children.empty? and admin_depth.include?(m.depth+1))
84
- concat( "<ul id=\"ul_menu_#{m.depth+1}\" class=\"ul_menu_depth_#{m.depth+1} ul_menu\">")
85
41
  concat( "<li id=\"root_add_#{m.id}\" class=\"root_add\">")
86
42
  concat( link_to_remote( "<span>Add</span>", {:url => {:controller => menu_controller, :action => 'add_menu_form', :menu_id => m.id,:menu_model=>menu_model, :menu_controller=>menu_controller}}, {:class => "menu_links_add", :title=> "Add",:id => "add_menu_link_#{m.id}"}))
87
43
  add_menu_form(menu_model, menu_controller, m.id)
88
44
  concat( "</li>")
89
- concat( "</ul>")
45
+ end
46
+ firstm=FALSE
47
+ end
48
+ if(m.id!=1 and m.isChildOf(admin_parent))
49
+ #check if your depth is correct
50
+ if(admin_depth.include?(m.depth))
51
+ if(m.depth > pmd or firstm)
52
+ concat( "<ul id=\"ul_menu_#{m.depth}\" class=\"ul_menu_depth_#{m.depth} ul_menu\">")
53
+ if(admin_condition)
54
+ concat( "<li id=\"root_add_#{m.parent_id}\" class=\"root_add\">")
55
+ concat( link_to_remote( "<span>Add</span>", {:url => {:controller => menu_controller, :action => 'add_menu_form', :menu_id => m.parent_id,:menu_model=>menu_model, :menu_controller=>menu_controller}}, {:class => "menu_links_add", :title=> "Add",:id => "add_menu_link_#{m.id}"}))
56
+ add_menu_form(menu_model, menu_controller, m.parent_id)
57
+ concat( "</li>")
58
+ end
59
+ firstm=FALSE
60
+ elsif(m.depth < pmd)
61
+ pmd.downto(m.depth+1) {concat( "</ul>")}
62
+ end
63
+ pmd=m.depth
64
+
65
+ #make the selected view appear nicer
66
+ if(m.id==menu_id.to_i)
67
+ concat( "<li id=\"li_menu_#{m.id}\" class=\"li_menu_class_selected\">")
68
+ concat( "<a class=\"selected_menu\", id =\"menu_link_#{m.id}\" href=\"#{m.link}?menu_id=#{m.id}\"> #{m.title} </a>")
69
+ session[:menu_id]=menu_id
70
+ else
71
+ concat( "<li id=\"li_menu_#{m.id}\" class=\"li_menu_class\">")
72
+ concat( "<a class=\"menu_link\", id =\"menu_link_#{m.id}\" href=\"#{m.link}?menu_id=#{m.id}\"> #{m.title} </a>")
73
+ end
74
+ if(admin_condition)
75
+ #remove the comment on the following line depending on the view you want to have
76
+ #concat( link_to_remote( "<span>Add</span>", {:url => {:controller => menu_controller, :action => 'add_menu_form', :menu_id => m.id,:menu_model=>menu_model, :menu_controller=>menu_controller}}, {:class => "menu_links_add", :title=> "Add",:id => "add_menu_link_#{m.id}"}))
77
+ # DELETE
78
+ concat( link_to_remote( "<span>Delete</span>", {:url => {:controller => menu_controller, :action => 'delete_menu', :menu_id => m.id,:menu_model=>menu_model, :menu_controller=>menu_controller}, :confirm => "Are you sure?"}, {:class => "menu_links_delete", :title=> "Delete",:id => "delete_menu_link_#{m.id}"}))
79
+ # EDIT
80
+ concat( link_to_remote( "<span>Edit</span>", {:url => {:controller => menu_controller, :action => 'edit_menu_form', :menu_id => m.id,:menu_model=>menu_model, :menu_controller=>menu_controller}}, {:class => "menu_links_edit",:title=> "Edit", :id => "edit_menu_link_#{m.id}"}))
81
+ # UP
82
+ concat( link_to_remote( "<span>Up</span>", {:url => {:controller => menu_controller, :action => 'up_menu', :menu_id => m.id,:menu_model=>menu_model, :menu_controller=>menu_controller}}, {:class => "menu_links_up", :title=> "Up",:id => "up_menu_link_#{m.id}"}))
83
+ # DOWN
84
+ concat( link_to_remote( "<span>Down</span>", {:url => {:controller => menu_controller, :action => 'down_menu', :menu_id => m.id,:menu_model=>menu_model, :menu_controller=>menu_controller}}, {:class => "menu_links_down", :title=> "Down", :id => "down_menu_link_#{m.id}"}))
85
+ # PUBLISH
86
+ if(m.published==TRUE)
87
+ mp="menu_links_published"
88
+ mpt="published"
89
+ else
90
+ mp="menu_links_not_published"
91
+ mpt="not published"
92
+ end
93
+ concat( link_to_remote( "<span>Publish</span>", {:url => {:controller => menu_controller, :action => 'publish_menu', :menu_id => m.id,:menu_model=>menu_model, :menu_controller=>menu_controller}}, {:class => mp, :title=> mpt, :id => "publish_menu_link_#{m.id}"}))
94
+ # EDIT FORM
95
+ edit_menu_form(menu_model, menu_controller,m)
96
+ end
97
+ concat( "</li>")
98
+ if(admin_condition and m.children.empty? and admin_depth.include?(m.depth+1))
99
+ concat( "<ul id=\"ul_menu_#{m.depth+1}\" class=\"ul_menu_depth_#{m.depth+1} ul_menu\">")
100
+ concat( "<li id=\"root_add_#{m.id}\" class=\"root_add\">")
101
+ concat( link_to_remote( "<span>Add</span>", {:url => {:controller => menu_controller, :action => 'add_menu_form', :menu_id => m.id,:menu_model=>menu_model, :menu_controller=>menu_controller}}, {:class => "menu_links_add", :title=> "Add",:id => "add_menu_link_#{m.id}"}))
102
+ add_menu_form(menu_model, menu_controller, m.id)
103
+ concat( "</li>")
104
+ concat( "</ul>")
105
+ end
90
106
  end
91
107
  end
92
108
  end
@@ -7,10 +7,11 @@ class <%= "#{'Create' + file_name.capitalize + 's'}" %> < ActiveRecord::Migratio
7
7
  t.integer :position
8
8
  t.integer :absolute_position
9
9
  t.integer :depth
10
+ t.bool :published
10
11
  t.timestamps
11
12
  end
12
13
 
13
- <%= file_name.capitalize %>.create :id => 1, :position=>0, :absolute_position=>0, :depth=>1, :parent_id=>0
14
+ <%= file_name.capitalize %>.create :id => 1, :position=>0, :absolute_position=>0, :depth=>1, :parent_id=>0,:published=>FALSE
14
15
  end
15
16
 
16
17
 
@@ -0,0 +1 @@
1
+ page.replace "ul_menu_1", :partial => <%= "'#{file_name}editor/#{file_name}'" %>
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mtoros-mega_menus
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.3
4
+ version: 0.7.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marko Toros
@@ -51,6 +51,7 @@ files:
51
51
  - rails_generators/menu/templates/views/edit_menu.rjs
52
52
  - rails_generators/menu/templates/views/up_menu.rjs
53
53
  - rails_generators/menu/templates/views/down_menu.rjs
54
+ - rails_generators/menu/templates/views/publish_menu.rjs
54
55
  - rails_generators/menu/templates/views/_menu.html.erb
55
56
  - rails_generators/menu/templates/helpers/menu_helper.rb
56
57
  - rails_generators/menu/templates/models/create_menus.rb