constructor-cms 0.7.0 → 0.7.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (27) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/Guardfile +1 -1
  4. data/README.md +1 -1
  5. data/Rakefile +2 -0
  6. data/core/lib/constructor_core/version.rb +1 -1
  7. data/pages/app/controllers/constructor_pages/fields_controller.rb +10 -15
  8. data/pages/app/helpers/constructor_pages/code_name_uniq.rb +1 -3
  9. data/pages/app/models/constructor_pages/field.rb +12 -40
  10. data/pages/app/models/constructor_pages/page.rb +26 -70
  11. data/pages/app/models/constructor_pages/template.rb +4 -12
  12. data/pages/config/routes.rb +2 -3
  13. data/pages/spec/features/constructor_pages/{fields_controller_spec.rb → fields_spec.rb} +0 -0
  14. data/pages/spec/features/constructor_pages/{pages_controller_spec.rb → pages_spec.rb} +0 -0
  15. data/pages/spec/features/constructor_pages/{templates_controller_spec.rb → templates_spec.rb} +0 -0
  16. data/pages/spec/models/constructor_pages/{field_model_spec.rb → field_spec.rb} +0 -0
  17. data/pages/spec/models/constructor_pages/{page_model_spec.rb → page_spec.rb} +2 -1
  18. data/pages/spec/models/constructor_pages/{template_model_spec.rb → template_spec.rb} +0 -0
  19. data/pages/spec/models/constructor_pages/types/{boolean_type_model_spec.rb → boolean_type_spec.rb} +0 -0
  20. data/pages/spec/models/constructor_pages/types/{date_type_model_spec.rb → date_type_spec.rb} +0 -0
  21. data/pages/spec/models/constructor_pages/types/{float_type_model_spec.rb → float_type_spec.rb} +0 -0
  22. data/pages/spec/models/constructor_pages/types/{html_type_model_spec.rb → html_type_spec.rb} +0 -0
  23. data/pages/spec/models/constructor_pages/types/{integer_type_model_spec.rb → integer_type_spec.rb} +0 -0
  24. data/pages/spec/models/constructor_pages/types/{string_type_model_spec.rb → string_type_spec.rb} +0 -0
  25. data/pages/spec/models/constructor_pages/types/{text_type_model_spec.rb → text_type_spec.rb} +0 -0
  26. data/tasks/constructor-cms_tasks.rake +15 -0
  27. metadata +20 -20
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4aa0d5ab38b7e184f86ec0c1760f866179626899
4
- data.tar.gz: db509a39b252d05c871a4e783d07e2b21a2e7ac5
3
+ metadata.gz: 6500e3498ffe43b926ab0eb43bf2d66f9dab464b
4
+ data.tar.gz: e3ea540cecc0fe31124b53a1cccd2bdef1af0090
5
5
  SHA512:
6
- metadata.gz: d138a447d15b3f907ded261135d28dec1c8729457dcd4ecc0d8b25ac2af3972ce3c9f6bc4674dcf05714a81a4ade534f8694bf3f3290cb2326b232fa8365263e
7
- data.tar.gz: 07c1553d7cd639a461396dbbe68684c302bf6f2132182a54fe0fc4bc2969cb17d757cd652aa451533af2ec08966173c07ab7007c78f1b569d03e96c00f5adae2
6
+ metadata.gz: efcb9ee149e95df47d25badfb8f09768d2a4e28e58afd1da1b080f5bd1fa56985721e280575f38253c87d781ee8328396f907da31325ea80241ab3bae7f09068
7
+ data.tar.gz: 7a781dd453a6ed3e76f04886f3c320835699f92f05dd2d09ce94a379b6810c5d8a76d00d34f372d94b32ee232af72b4e471b5afa4b8cd7b6cfba6f89e8e864ae
data/.gitignore CHANGED
@@ -11,3 +11,4 @@ spec/dummy/tmp
11
11
  doc/
12
12
  .yardoc/
13
13
  tmp/
14
+ pkg/
data/Guardfile CHANGED
@@ -5,7 +5,7 @@ guard 'rspec', :spec_paths => extensions.map{|e| "#{e}/spec"}, :cli => (['~/.rsp
5
5
  watch(%r{^#{extension}/spec/.+_spec\.rb$})
6
6
  watch(%r{^#{extension}/app/(.+)\.rb$}) { |m| "#{extension}/spec/#{m[1]}_spec.rb" }
7
7
  watch(%r{^#{extension}/lib/(.+)\.rb$}) { |m| "#{extension}/spec/lib/#{m[1]}_spec.rb" }
8
- watch(%r{^#{extension}/app/controllers/(.+)_(controller)\.rb$}) { |m| ["#{extension}/spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb", "#{extension}/spec/features/#{m[1]}_spec.rb"] }
8
+ watch(%r{^#{extension}/app/controllers/constructor_#{extension}/(.+)_(controller)\.rb$}) { |m| "#{extension}/spec/features/constructor_#{extension}/#{m[1]}_spec.rb" }
9
9
  watch(%r{^#{extension}/spec/support/(.+)\.rb$}) { "#{extension}/spec" }
10
10
  watch("#{extension}/spec/spec_helper.rb") { "#{extension}/spec" }
11
11
  # Capybara request specs
data/README.md CHANGED
@@ -12,7 +12,7 @@ Constructor – an open source Ruby on Rails content management system for Rails
12
12
 
13
13
  ### Add to Gemfile
14
14
 
15
- gem 'constructor-cms', '~> 0.6.4'
15
+ gem 'constructor-cms', '~> 0.7.2'
16
16
 
17
17
  ### Install
18
18
 
data/Rakefile CHANGED
@@ -10,6 +10,8 @@ APP_RAKEFILE = File.expand_path("../spec/dummy/Rakefile", __FILE__)
10
10
  load 'rails/tasks/engine.rake'
11
11
  require 'rspec/core/rake_task'
12
12
 
13
+ Dir[File.expand_path('../tasks/**/*', __FILE__)].each {|task| load task}
14
+
13
15
  RSpec::Core::RakeTask.new(:spec) do |t|
14
16
  t.pattern = './**/*_spec.rb'
15
17
  end
@@ -1,3 +1,3 @@
1
1
  module ConstructorCore
2
- VERSION = '0.7.0'
2
+ VERSION = '0.7.2'
3
3
  end
@@ -23,22 +23,17 @@ module ConstructorPages
23
23
  def update
24
24
  @field = Field.find params[:id]
25
25
 
26
- if @field.type_value != params[:field][:type_value]
27
- @field.type_class.where(field_id: @field.id).each do |field|
28
- new_field = "constructor_pages/types/#{params[:field][:type_value]}_type".classify.constantize.new(
29
- field_id: @field.id, page_id: field.page_id)
30
-
31
- if @field.type_value != 'image' \
32
- and params[:field][:type_value] != 'image' \
33
- and not (@field.type_value == 'string' and field.value.strip == '')
34
- new_field.value = field.value
35
- end
36
-
37
- new_field.save
38
-
39
- field.destroy
40
- end
26
+ unless @field.type_value == params[:field][:type_value]
27
+ @field.type_class.where(field_id: @field.id).each do |field|
28
+ "constructor_pages/types/#{params[:field][:type_value]}_type".classify.constantize.new(
29
+ field_id: @field.id, page_id: field.page_id).tap {|f|
30
+ f.value = field.value unless [@field.type_value, params[:field][:type_value]].include?('image') and
31
+ (@field.type_value == 'string' and field.value.strip == '')
32
+ f.save; field.destroy
33
+ }
41
34
  end
35
+ end
36
+
42
37
  if @field.update field_params
43
38
  redirect_to edit_template_url(@field.template.id), notice: t(:field_success_updated, name: @field.name)
44
39
  else
@@ -1,9 +1,7 @@
1
1
  module ConstructorPages
2
2
  module CodeNameUniq
3
3
  def code_name_uniqueness
4
- unless Page.check_code_name(code_name) and check_code_name(code_name)
5
- errors.add(:base, :code_name_already_in_use)
6
- end
4
+ errors.add(:base, :code_name_already_in_use) unless Page.check_code_name(code_name) and check_code_name(code_name)
7
5
  end
8
6
  end
9
7
  end
@@ -2,14 +2,14 @@
2
2
 
3
3
  module ConstructorPages
4
4
  # Field model. Fields allows to add custom fields for template.
5
- #
6
5
  # Each field has type of value such as float, integer, string...
7
6
  class Field < ActiveRecord::Base
8
7
  # Adding code_name_uniqueness method
9
8
  include CodeNameUniq
10
9
 
11
10
  # Array of available field types
12
- TYPES = %w{string integer float boolean text date html image}
11
+ TYPES = %w{string integer float boolean text date html image}.tap {|_t|
12
+ _t.each {|t| class_eval %{has_many :#{t}_types, dependent: :destroy, class_name: 'Types::#{t.titleize}Type'}}}
13
13
 
14
14
  validates_presence_of :name
15
15
  validates_uniqueness_of :code_name, scope: :template_id
@@ -18,25 +18,17 @@ module ConstructorPages
18
18
  after_create :create_page_fields
19
19
  after_destroy :destroy_all_page_fields
20
20
 
21
- belongs_to :template
22
-
23
- # Adding has_many for all field types
24
- TYPES.each do |t|
25
- class_eval %{
26
- has_many :#{t}_types, dependent: :destroy, class_name: 'Types::#{t.titleize}Type'
27
- }
28
- end
29
-
30
21
  has_many :pages, through: :template
22
+ belongs_to :template
31
23
 
32
- acts_as_list scope: :template_id
24
+ acts_as_list scope: :template_id
33
25
  default_scope -> { order :position }
34
26
 
35
27
  # Return constant of model type_value
36
28
  def type_class; "constructor_pages/types/#{type_value}_type".classify.constantize end
37
29
 
38
30
  # Return object of type_value by page
39
- def find_type_object(page); type_class.where(field_id: id, page_id: page.id).first end
31
+ def find_type_object(page); type_class.find_by(field_id: id, page_id: page.id) end
40
32
 
41
33
  # Create object of type_value by page
42
34
  def create_type_object(page); type_class.create(field_id: id, page_id: page.id) end
@@ -45,43 +37,23 @@ module ConstructorPages
45
37
  def remove_type_object(page); find_type_object(page).destroy end
46
38
 
47
39
  # Get value from type_field for specified page
48
- def get_value_for(page)
49
- _type_object = find_type_object(page)
50
- _type_object ? _type_object.value : nil
51
- end
40
+ def get_value_for(page); find_type_object(page).tap {|t| return t && t.value} end
52
41
 
53
42
  # Set value type_field for specified page
54
- def set_value_for(page, value)
55
- _type_object = find_type_object(page)
56
-
57
- if _type_object
58
- _type_object.value = value
59
- _type_object.save!
60
- end
61
- end
43
+ def set_value_for(page, value); find_type_object(page).tap {|t| t || return; t.update value: value} end
62
44
 
63
45
  private
64
46
 
65
47
  # Check if there is code_name in template branch
66
48
  def check_code_name(code_name)
67
- [code_name.pluralize, code_name.singularize].each do |name|
68
- %w{self_and_ancestors descendants}.each do |m|
69
- if template.send(m).map{|t| t.code_name}.include?(name)
70
- return false
71
- end
72
- end
73
- end
74
-
49
+ [code_name.pluralize, code_name.singularize].each {|name|
50
+ %w{self_and_ancestors descendants}.each {|m|
51
+ return false if template.send(m).map(&:code_name).include?(name)}}
75
52
  true
76
53
  end
77
54
 
78
55
  # Create and destroy page fields
79
- %w{create destroy_all}.each do |m|
80
- class_eval %{
81
- def #{m}_page_fields
82
- template.pages.each {|page| type_class.#{m} page_id: page.id, field_id: id}
83
- end
84
- }
85
- end
56
+ %w{create destroy_all}.each {|m| class_eval %{
57
+ def #{m}_page_fields; template.pages.each {|page| type_class.#{m} page_id: page.id, field_id: id} end }}
86
58
  end
87
59
  end
@@ -5,11 +5,10 @@ module ConstructorPages
5
5
  class Page < ActiveRecord::Base
6
6
  # Adding has_many for all field types
7
7
  Field::TYPES.each do |t|
8
- class_eval %{ has_many :#{t}_types, dependent: :destroy, class_name: 'Types::#{t.titleize}Type'}
8
+ class_eval %{has_many :#{t}_types, dependent: :destroy, class_name: 'Types::#{t.titleize}Type'}
9
9
  end
10
10
 
11
11
  has_many :fields, through: :template
12
-
13
12
  belongs_to :template
14
13
 
15
14
  default_scope -> { order :lft }
@@ -48,31 +47,12 @@ module ConstructorPages
48
47
  end
49
48
 
50
49
  def search(what_search = nil)
51
- if @where_search
52
- if @where_search.is_a?(String)
53
- _page = Page.find_by full_url: @where_search
54
- elsif @where_search.is_a?(Page)
55
- _page = @where_search
56
- end
57
-
58
- @result = _page ? _page.descendants : []
59
- else
60
- @result = Page.all
61
- end
62
-
63
- if what_search
64
- _template = Template.find_by code_name: what_search.to_s.singularize.downcase
65
- @result = _template ? @result.where(template: _template) : []
66
- end
67
-
68
- if @params_search
69
- @params_search.each_pair do |k, v|
70
- @result = @result.select { |p| p.send(k) == v }
71
- end
72
- end
73
-
50
+ (@where_search.is_a?(String) ? Page.find_by(full_url: @where_search) : @where_search)
51
+ .tap {|p| @result = @where_search ? p ? p.descendants : [] : Page.all }
52
+ what_search && Template.find_by(code_name: what_search.to_s.singularize.downcase)
53
+ .tap {|t| @result = t ? @result.where(template: t) : [] }
54
+ @params_search && @params_search.each_pair {|k,v| @result = @result.select {|p| p.send(k) == v}}
74
55
  @where_search = @params_search = nil
75
-
76
56
  @result
77
57
  end
78
58
 
@@ -84,6 +64,7 @@ module ConstructorPages
84
64
  end
85
65
 
86
66
  def search(what_search = nil); Page.in(self).search(what_search) end
67
+ def by(params_search = nil); Page.by(params_search); self end
87
68
  def search_by(params_search = nil); Page.by(params_search).in(self).search end
88
69
 
89
70
  # Get field by code_name
@@ -105,28 +86,19 @@ module ConstructorPages
105
86
  # @param params should looks like <tt>{price: 500, content: 'Hello'}</tt>
106
87
  # @param reset_booleans reset all boolean fields to false before assign params
107
88
  def update_fields_values(params, reset_booleans = true)
108
- return if params.nil?
109
-
110
- fields.each do |field|
111
- value = params[field.code_name.to_sym]
112
-
113
- _type_object = field.find_type_object(self)
89
+ params || return
114
90
 
115
- if _type_object
116
- _type_object.value = 0 if field.type_value == 'boolean' and reset_booleans
117
- _type_object.value = value if value
118
- _type_object.save
119
- end
120
- end
91
+ fields.each {|f| f.find_type_object(self).tap {|t| t || break
92
+ t.value = 0 if f.type_value == 'boolean' && reset_booleans
93
+ params[f.code_name.to_sym].tap {|v| v && t.value = v}
94
+ t.save }}
121
95
  end
122
96
 
123
97
  # Create fields values
124
- def create_fields_values; fields.each {|f| f.create_type_object(self) } end
98
+ def create_fields_values; fields.each {|f| f.create_type_object self} end
125
99
 
126
100
  # Remove all fields values
127
- def remove_fields_values
128
- fields.each {|f| f.remove_type_object self}
129
- end
101
+ def remove_fields_values; fields.each {|f| f.remove_type_object self} end
130
102
 
131
103
  # Search page by template code_name in same branch of pages and templates.
132
104
  # It allows to call page.category.brand.series.model etc.
@@ -135,16 +107,11 @@ module ConstructorPages
135
107
  # and return array of pages if founded in descendants
136
108
  #
137
109
  # It determines if code_name is singular or nor
138
- # @param code_name template code name
139
- def find_page_in_branch(code_name)
140
- _template = Template.find_by code_name: code_name.singularize
141
-
142
- if _template
143
- result = []
144
- result = descendants.where(template_id: _template.id) if code_name == code_name.pluralize
145
- result = ancestors.find_by(template_id: _template.id) if result.empty?
146
- result
147
- end
110
+ # @param cname template code name
111
+ def find_page_in_branch(cname)
112
+ Template.find_by(code_name: cname.singularize).tap {|t| t || return
113
+ (descendants.where(template_id: t.id) if cname == cname.pluralize).tap {|r| r ||= []
114
+ return r.empty? ? ancestors.find_by(template_id: t.id) : r}}
148
115
  end
149
116
 
150
117
  alias_method :find_pages_in_branch, :find_page_in_branch
@@ -159,9 +126,7 @@ module ConstructorPages
159
126
  # @param options default merge name and title page attributes
160
127
  def as_json(options = {})
161
128
  {name: self.name, title: self.title}.merge(options).tap do |options|
162
- fields.each do |f|
163
- options.merge!({f.code_name.to_sym => f.get_value_for(self)})
164
- end
129
+ fields.each {|f| options.merge!({f.code_name.to_sym => f.get_value_for(self)})}
165
130
  end
166
131
  end
167
132
 
@@ -175,12 +140,9 @@ module ConstructorPages
175
140
  # puts page.price
176
141
  # page.brand.models.each do...
177
142
  def method_missing(name, *args, &block)
178
- if new_record?
179
- super
180
- else
181
- name = name.to_s
182
- name[-1] == '=' ? set_field_value(name[0..-2], args[0]) : get_field_value(name) || find_pages_in_branch(name)
183
- end
143
+ super && return if new_record?
144
+ name = name.to_s
145
+ name[-1] == '=' ? set_field_value(name[0..-2], args[0]) : get_field_value(name) || find_pages_in_branch(name)
184
146
  end
185
147
 
186
148
  private
@@ -192,19 +154,13 @@ module ConstructorPages
192
154
 
193
155
  # TODO: add more languages
194
156
  # translit to english
195
- def translit(str)
196
- Russian.translit(str)
197
- end
157
+ def translit(str); Russian.translit(str) end
198
158
 
199
159
  # Page is not valid if there is no template
200
- def template_check
201
- errors.add_on_empty(:template_id) if Template.count == 0
202
- end
160
+ def template_check; errors.add_on_empty(:template_id) if Template.count == 0 end
203
161
 
204
162
  # If template_id is nil then get first template
205
- def template_assign
206
- self.template_id = Template.first.id unless template_id
207
- end
163
+ def template_assign; self.template_id = Template.first.id unless template_id end
208
164
 
209
165
  # Update full_url
210
166
  def full_url_update
@@ -23,23 +23,15 @@ module ConstructorPages
23
23
 
24
24
  # Return child corresponding child_id or children first
25
25
  def child
26
- if child_id.nil? and !leaf?
27
- children.first
28
- else
29
- Template.find child_id
30
- end
26
+ !child_id && !leaf? ? children.first : self.class.find(child_id)
31
27
  end
32
28
 
33
29
  private
34
30
 
35
31
  # Check if there is code_name in same branch
36
- def check_code_name(code_name)
37
- [code_name.pluralize, code_name.singularize].each do |name|
38
- if root.descendants.map{|t| t.code_name unless t.code_name == code_name}.include?(name)
39
- return false
40
- end
41
- end
42
-
32
+ def check_code_name(cname)
33
+ [cname.pluralize, cname.singularize].each {|name|
34
+ return false if root.descendants.map{|t| t.code_name unless t.code_name == cname}.include?(name)}
43
35
  true
44
36
  end
45
37
  end
@@ -15,12 +15,11 @@ ConstructorPages::Engine.routes.draw do
15
15
  get ':id/:template_id/edit/' => 'fields#edit', as: :edit_field
16
16
  end
17
17
 
18
- scope '/pages' do
19
- get ':page/new' => 'pages#new', as: :new_child_page
20
- end
18
+ get '/pages/:page/new' => 'pages#new', as: :new_child_page
21
19
  end
22
20
 
23
21
  root :to => 'pages#show'
22
+
24
23
  get '*all/search/:what_search' => 'pages#search', format: false
25
24
  get '*all.:format' => 'pages#show'
26
25
  get '*all' => 'pages#show'
@@ -138,7 +138,6 @@ module ConstructorPages
138
138
  end
139
139
  end
140
140
 
141
-
142
141
  context 'search in certain page' do
143
142
  it 'should search with what search' do
144
143
  @page.search.should == [@first_brand_page, @second_brand_page]
@@ -150,7 +149,9 @@ module ConstructorPages
150
149
  it 'it should search with by params' do
151
150
  @page.search_by(area: 25).should == [@first_brand_page]
152
151
  @page.search_by(price: 30000).should == [@second_brand_page]
152
+ @page.by(price: 30000).search.should == [@second_brand_page]
153
153
  @page.search_by(area: 10).should == []
154
+ @page.by(area: 10).search.should == []
154
155
  end
155
156
  end
156
157
  end
@@ -0,0 +1,15 @@
1
+ namespace :all do
2
+ desc 'Build gems into the pkg directory'
3
+ task :build do
4
+ sh 'rake build'
5
+
6
+ %w{core pages}.each do |engine|
7
+ sh "gem build #{engine}/constructor-#{engine}.gemspec && mv constructor-#{engine}-#{ConstructorCore::VERSION}.gem pkg/"
8
+ end
9
+ end
10
+
11
+ desc 'Push all gems to Rubygems'
12
+ task :push do
13
+ sh "for i in pkg/*#{ConstructorCore::VERSION}.gem; do gem push $i; done"
14
+ end
15
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: constructor-cms
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.7.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ivan Zotov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-06-22 00:00:00.000000000 Z
11
+ date: 2013-06-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: constructor-core
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.7.0
19
+ version: 0.7.2
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 0.7.0
26
+ version: 0.7.2
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: constructor-pages
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - '='
32
32
  - !ruby/object:Gem::Version
33
- version: 0.7.0
33
+ version: 0.7.2
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
- version: 0.7.0
40
+ version: 0.7.2
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec-rails
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -394,20 +394,20 @@ files:
394
394
  - pages/lib/constructor-pages.rb
395
395
  - pages/lib/constructor_pages/engine.rb
396
396
  - pages/public/hello.txt
397
- - pages/spec/features/constructor_pages/fields_controller_spec.rb
398
- - pages/spec/features/constructor_pages/pages_controller_spec.rb
399
- - pages/spec/features/constructor_pages/templates_controller_spec.rb
397
+ - pages/spec/features/constructor_pages/fields_spec.rb
398
+ - pages/spec/features/constructor_pages/pages_spec.rb
399
+ - pages/spec/features/constructor_pages/templates_spec.rb
400
400
  - pages/spec/helpers/constructor_pages/.keep
401
- - pages/spec/models/constructor_pages/field_model_spec.rb
402
- - pages/spec/models/constructor_pages/page_model_spec.rb
403
- - pages/spec/models/constructor_pages/template_model_spec.rb
404
- - pages/spec/models/constructor_pages/types/boolean_type_model_spec.rb
405
- - pages/spec/models/constructor_pages/types/date_type_model_spec.rb
406
- - pages/spec/models/constructor_pages/types/float_type_model_spec.rb
407
- - pages/spec/models/constructor_pages/types/html_type_model_spec.rb
408
- - pages/spec/models/constructor_pages/types/integer_type_model_spec.rb
409
- - pages/spec/models/constructor_pages/types/string_type_model_spec.rb
410
- - pages/spec/models/constructor_pages/types/text_type_model_spec.rb
401
+ - pages/spec/models/constructor_pages/field_spec.rb
402
+ - pages/spec/models/constructor_pages/page_spec.rb
403
+ - pages/spec/models/constructor_pages/template_spec.rb
404
+ - pages/spec/models/constructor_pages/types/boolean_type_spec.rb
405
+ - pages/spec/models/constructor_pages/types/date_type_spec.rb
406
+ - pages/spec/models/constructor_pages/types/float_type_spec.rb
407
+ - pages/spec/models/constructor_pages/types/html_type_spec.rb
408
+ - pages/spec/models/constructor_pages/types/integer_type_spec.rb
409
+ - pages/spec/models/constructor_pages/types/string_type_spec.rb
410
+ - pages/spec/models/constructor_pages/types/text_type_spec.rb
411
411
  - pages/spec/routing/constructor_pages/.keep
412
412
  - spec/dummy/README.rdoc
413
413
  - spec/dummy/Rakefile
@@ -450,6 +450,7 @@ files:
450
450
  - spec/dummy/public/favicon.ico
451
451
  - spec/dummy/public/robots.txt
452
452
  - spec/spec_helper.rb
453
+ - tasks/constructor-cms_tasks.rake
453
454
  homepage: http://ivanzotov.github.com/constructor
454
455
  licenses: []
455
456
  metadata: {}
@@ -515,4 +516,3 @@ test_files:
515
516
  - spec/dummy/public/favicon.ico
516
517
  - spec/dummy/public/robots.txt
517
518
  - spec/spec_helper.rb
518
- has_rdoc: