lolita-menu 0.0.10 → 0.0.11

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/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.10
1
+ 0.0.11
@@ -9,6 +9,7 @@ class MenuItem < ActiveRecord::Base
9
9
  validates :url, :format => {:with => /^(\/)|(http).*/}, :unless=>:root?
10
10
 
11
11
  before_create :set_default_positions
12
+ before_save :normalize_url
12
13
  after_create :put_in_place
13
14
  before_validation :set_default_values, :if=>:new_record?
14
15
 
@@ -30,7 +31,7 @@ class MenuItem < ActiveRecord::Base
30
31
  # instance methods
31
32
 
32
33
  def active?(request,options={})
33
- active_item = self_and_all_children.detect{|item|
34
+ active_item = self_and_descendants.detect{|item|
34
35
  item.url_match?(request,options[:fullpath])
35
36
  }
36
37
 
@@ -38,9 +39,8 @@ class MenuItem < ActiveRecord::Base
38
39
  end
39
40
 
40
41
  def url_match?(request,fullpath=false)
41
-
42
- if self.url.match(/^http/)
43
- self.url==request.url
42
+ if self.url.strip.match(/^http/)
43
+ self.url.strip==request.url
44
44
  else
45
45
  only_path = (fullpath ? request.fullpath : request.path).gsub(/\?.*/,"")
46
46
  self.real_url(request.params) == only_path
@@ -48,7 +48,7 @@ class MenuItem < ActiveRecord::Base
48
48
  end
49
49
 
50
50
  def real_url(params)
51
- self.url.gsub(/(:\w+)\/?/) do |m|
51
+ self.url.strip.gsub(/(:\w+)\/?/) do |m|
52
52
  params_key = $1.gsub(":","").to_sym
53
53
  params.has_key?(params_key) ? "#{params[params_key]}#{m[m.size-1]=="/" ? "/" : ""}" : ""
54
54
  end
@@ -78,11 +78,11 @@ class MenuItem < ActiveRecord::Base
78
78
  @children
79
79
  end
80
80
 
81
- def self_and_all_children
82
- @self_and_all_children||=self.class.where("lft>=:left AND rgt<=:right AND menu_id=:menu",{
81
+ def self_and_descendants
82
+ @self_and_descendants||=self.class.where("lft>=:left AND rgt<=:right AND menu_id=:menu",{
83
83
  :left => self.lft,:right => self.rgt, :menu=>self.menu_id
84
84
  }).order("lft asc")
85
- @self_and_all_children
85
+ @self_and_descendants
86
86
  end
87
87
 
88
88
  def root
@@ -159,4 +159,8 @@ class MenuItem < ActiveRecord::Base
159
159
  self.url||="/"
160
160
  end
161
161
 
162
+ def normalize_url
163
+ self.url = self.url.to_s.strip
164
+ end
165
+
162
166
  end
@@ -1,7 +1,7 @@
1
1
  %button{:class => "add_new_menu_item",:"data-id" => menu.id,:"data-url" => menu_items_path(:menu_id=>menu.id)}
2
- = "Pievienot jaunu"
2
+ = t("lolita.menu.add_new")
3
3
  %button{:class => "save_menu_tree", :"data-id" => "menu_tree_#{menu.id}"}
4
- = "Saglabāt izvēlni"
4
+ = t("lolita.menu.save_menu")
5
5
  %ol{:class=>"menu-items-tree", :id=>"menu_tree_#{menu.id}", :"data-url"=>update_tree_menu_items_path(:menu_id=>menu.id)}
6
6
  - menu.children.each do |item|
7
7
  = render_component "lolita/menu_items", :row, :item => item, :menu => menu
@@ -4,4 +4,6 @@ en:
4
4
  notice: "Menu saved."
5
5
  error: "Couldn't save a menu. Try again."
6
6
  "branch created": "New menu item created."
7
- "branch deleted": "Menu item deleted."
7
+ "branch deleted": "Menu item deleted."
8
+ add_new: "Add new"
9
+ save_menu: "Save menu"
@@ -4,4 +4,6 @@ lv:
4
4
  notice: "Izvēlne veiksmīgi saglabāta."
5
5
  error: "Izvēlni neizdevās saglabāt. Mēģiniet vēlreiz."
6
6
  "branch created": "Jauns izvēlnes sadaļa izveidota."
7
- "branch deleted": "Izvēlnes sadaļa dzēsta."
7
+ "branch deleted": "Izvēlnes sadaļa dzēsta."
8
+ add_new: "Pievienot jaunu"
9
+ save_menu: "Saglabāt izvēlni"
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{lolita-menu}
8
- s.version = "0.0.10"
8
+ s.version = "0.0.11"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["ITHouse", "Arturs Meisters"]
12
- s.date = %q{2011-06-10}
12
+ s.date = %q{2011-08-11}
13
13
  s.description = %q{Manage public menus for each project inside Lolita.}
14
14
  s.email = %q{support@ithouse.lv}
15
15
  s.extra_rdoc_files = [
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lolita-menu
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.10
4
+ version: 0.0.11
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,12 +10,12 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2011-06-10 00:00:00.000000000 +03:00
13
+ date: 2011-08-11 00:00:00.000000000 +03:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: lolita
18
- requirement: &84038000 !ruby/object:Gem::Requirement
18
+ requirement: &74478890 !ruby/object:Gem::Requirement
19
19
  none: false
20
20
  requirements:
21
21
  - - ~>
@@ -23,10 +23,10 @@ dependencies:
23
23
  version: 3.1.6
24
24
  type: :runtime
25
25
  prerelease: false
26
- version_requirements: *84038000
26
+ version_requirements: *74478890
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: haml
29
- requirement: &84037150 !ruby/object:Gem::Requirement
29
+ requirement: &74478580 !ruby/object:Gem::Requirement
30
30
  none: false
31
31
  requirements:
32
32
  - - ! '>='
@@ -34,10 +34,10 @@ dependencies:
34
34
  version: '0'
35
35
  type: :runtime
36
36
  prerelease: false
37
- version_requirements: *84037150
37
+ version_requirements: *74478580
38
38
  - !ruby/object:Gem::Dependency
39
39
  name: rspec
40
- requirement: &84036530 !ruby/object:Gem::Requirement
40
+ requirement: &74478210 !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
43
  - - ~>
@@ -45,10 +45,10 @@ dependencies:
45
45
  version: 2.6.0
46
46
  type: :development
47
47
  prerelease: false
48
- version_requirements: *84036530
48
+ version_requirements: *74478210
49
49
  - !ruby/object:Gem::Dependency
50
50
  name: sqlite3
51
- requirement: &84035790 !ruby/object:Gem::Requirement
51
+ requirement: &74477880 !ruby/object:Gem::Requirement
52
52
  none: false
53
53
  requirements:
54
54
  - - ! '>='
@@ -56,10 +56,10 @@ dependencies:
56
56
  version: '0'
57
57
  type: :development
58
58
  prerelease: false
59
- version_requirements: *84035790
59
+ version_requirements: *74477880
60
60
  - !ruby/object:Gem::Dependency
61
61
  name: rspec-rails
62
- requirement: &84035230 !ruby/object:Gem::Requirement
62
+ requirement: &74476870 !ruby/object:Gem::Requirement
63
63
  none: false
64
64
  requirements:
65
65
  - - ~>
@@ -67,10 +67,10 @@ dependencies:
67
67
  version: 2.6.0
68
68
  type: :development
69
69
  prerelease: false
70
- version_requirements: *84035230
70
+ version_requirements: *74476870
71
71
  - !ruby/object:Gem::Dependency
72
72
  name: haml-rails
73
- requirement: &84034600 !ruby/object:Gem::Requirement
73
+ requirement: &74476210 !ruby/object:Gem::Requirement
74
74
  none: false
75
75
  requirements:
76
76
  - - ! '>='
@@ -78,10 +78,10 @@ dependencies:
78
78
  version: '0'
79
79
  type: :development
80
80
  prerelease: false
81
- version_requirements: *84034600
81
+ version_requirements: *74476210
82
82
  - !ruby/object:Gem::Dependency
83
83
  name: shoulda
84
- requirement: &84033680 !ruby/object:Gem::Requirement
84
+ requirement: &74475510 !ruby/object:Gem::Requirement
85
85
  none: false
86
86
  requirements:
87
87
  - - ! '>='
@@ -89,10 +89,10 @@ dependencies:
89
89
  version: '0'
90
90
  type: :development
91
91
  prerelease: false
92
- version_requirements: *84033680
92
+ version_requirements: *74475510
93
93
  - !ruby/object:Gem::Dependency
94
94
  name: bundler
95
- requirement: &84032930 !ruby/object:Gem::Requirement
95
+ requirement: &74474950 !ruby/object:Gem::Requirement
96
96
  none: false
97
97
  requirements:
98
98
  - - ~>
@@ -100,10 +100,10 @@ dependencies:
100
100
  version: 1.0.0
101
101
  type: :development
102
102
  prerelease: false
103
- version_requirements: *84032930
103
+ version_requirements: *74474950
104
104
  - !ruby/object:Gem::Dependency
105
105
  name: jeweler
106
- requirement: &84032030 !ruby/object:Gem::Requirement
106
+ requirement: &74452710 !ruby/object:Gem::Requirement
107
107
  none: false
108
108
  requirements:
109
109
  - - ~>
@@ -111,10 +111,10 @@ dependencies:
111
111
  version: 1.5.2
112
112
  type: :development
113
113
  prerelease: false
114
- version_requirements: *84032030
114
+ version_requirements: *74452710
115
115
  - !ruby/object:Gem::Dependency
116
116
  name: rcov
117
- requirement: &84024430 !ruby/object:Gem::Requirement
117
+ requirement: &74452180 !ruby/object:Gem::Requirement
118
118
  none: false
119
119
  requirements:
120
120
  - - ! '>='
@@ -122,7 +122,7 @@ dependencies:
122
122
  version: '0'
123
123
  type: :development
124
124
  prerelease: false
125
- version_requirements: *84024430
125
+ version_requirements: *74452180
126
126
  description: Manage public menus for each project inside Lolita.
127
127
  email: support@ithouse.lv
128
128
  executables: []
@@ -190,7 +190,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
190
190
  version: '0'
191
191
  segments:
192
192
  - 0
193
- hash: 795611633
193
+ hash: -50740721
194
194
  required_rubygems_version: !ruby/object:Gem::Requirement
195
195
  none: false
196
196
  requirements: