trusty-cms 4.1.2 → 4.1.3

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 (112) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +2 -2
  3. data/Gemfile.lock +25 -25
  4. data/Rakefile +7 -7
  5. data/app/assets/stylesheets/admin/partials/_content.scss +1 -2
  6. data/app/controllers/admin/assets_controller.rb +22 -21
  7. data/app/controllers/admin/configuration_controller.rb +9 -11
  8. data/app/controllers/admin/extensions_controller.rb +3 -3
  9. data/app/controllers/admin/layouts_controller.rb +3 -4
  10. data/app/controllers/admin/page_attachments_controller.rb +5 -5
  11. data/app/controllers/admin/page_fields_controller.rb +3 -4
  12. data/app/controllers/admin/page_parts_controller.rb +4 -5
  13. data/app/controllers/admin/pages_controller.rb +55 -56
  14. data/app/controllers/admin/references_controller.rb +1 -1
  15. data/app/controllers/admin/resource_controller.rb +132 -130
  16. data/app/controllers/admin/sites_controller.rb +4 -4
  17. data/app/controllers/admin/snippets_controller.rb +3 -4
  18. data/app/controllers/admin/users_controller.rb +16 -16
  19. data/app/controllers/application_controller.rb +47 -48
  20. data/app/controllers/site_controller.rb +51 -48
  21. data/app/controllers/social_mailer_controller.rb +13 -16
  22. data/app/helpers/admin/configuration_helper.rb +19 -20
  23. data/app/helpers/admin/layouts_helper.rb +0 -1
  24. data/app/helpers/admin/node_helper.rb +27 -24
  25. data/app/helpers/admin/pages_helper.rb +2 -2
  26. data/app/helpers/admin/preferences_helper.rb +0 -1
  27. data/app/helpers/admin/references_helper.rb +9 -10
  28. data/app/helpers/admin/regions_helper.rb +3 -3
  29. data/app/helpers/application_helper.rb +32 -33
  30. data/app/helpers/rad_social_helper.rb +8 -11
  31. data/app/helpers/scoped_helper.rb +1 -3
  32. data/app/helpers/sites_helper.rb +4 -4
  33. data/app/mailers/devise_mailer.rb +3 -4
  34. data/app/mailers/rad_social_mailer.rb +8 -8
  35. data/app/models/asset.rb +62 -63
  36. data/app/models/asset_type.rb +38 -39
  37. data/app/models/deprecated_tags.rb +3 -4
  38. data/app/models/file_not_found_page.rb +1 -3
  39. data/app/models/haml_filter.rb +1 -1
  40. data/app/models/layout.rb +4 -5
  41. data/app/models/legacy_user.rb +2 -2
  42. data/app/models/menu_renderer.rb +16 -18
  43. data/app/models/page.rb +96 -93
  44. data/app/models/page_attachment.rb +1 -2
  45. data/app/models/page_context.rb +11 -12
  46. data/app/models/page_part.rb +3 -4
  47. data/app/models/rails_page.rb +10 -12
  48. data/app/models/site.rb +22 -21
  49. data/app/models/snippet.rb +6 -8
  50. data/app/models/snippet_finder.rb +3 -3
  51. data/app/models/snippet_tags.rb +4 -4
  52. data/app/models/standard_tags.rb +258 -252
  53. data/app/models/status.rb +8 -8
  54. data/app/models/trusty_cms/config.rb +25 -25
  55. data/app/models/trusty_cms/page_response_cache_director.rb +2 -3
  56. data/app/models/user.rb +15 -14
  57. data/app/models/user_action_observer.rb +3 -3
  58. data/bin/rails +4 -4
  59. data/bin/trusty_cms +3 -5
  60. data/config.ru +1 -1
  61. data/config/application.rb +14 -15
  62. data/config/boot.rb +1 -2
  63. data/config/environment.rb +1 -1
  64. data/config/environments/production.rb +0 -1
  65. data/config/environments/test.rb +1 -2
  66. data/config/initializers/devise.rb +1 -1
  67. data/config/initializers/kraken.rb +2 -2
  68. data/config/initializers/tmp.rb +1 -1
  69. data/config/initializers/trusty_cms_config.rb +48 -48
  70. data/config/routes.rb +6 -6
  71. data/lib/active_record_extensions/active_record_extensions.rb +1 -2
  72. data/lib/annotatable.rb +3 -5
  73. data/lib/configuration_extensions/configuration_extensions.rb +1 -1
  74. data/lib/inheritable_class_attributes.rb +13 -9
  75. data/lib/login_system.rb +73 -73
  76. data/lib/method_observer.rb +13 -12
  77. data/lib/ostruct.rb +7 -10
  78. data/lib/simpleton.rb +0 -4
  79. data/lib/string_extensions/string_extensions.rb +3 -3
  80. data/lib/symbol_extensions/symbol_extensions.rb +1 -1
  81. data/lib/tasks/database.rake +28 -28
  82. data/lib/tasks/extensions.rake +18 -18
  83. data/lib/tasks/framework.rake +68 -68
  84. data/lib/tasks/radiant_config.rake +4 -4
  85. data/lib/tasks/snippets_extension_tasks.rake +11 -11
  86. data/lib/tasks/translate.rake +14 -14
  87. data/lib/tasks/upgrade_to_devise.rake +1 -1
  88. data/lib/translation_support.rb +22 -22
  89. data/lib/trusty_cms.rb +2 -2
  90. data/lib/trusty_cms/admin_ui.rb +19 -16
  91. data/lib/trusty_cms/admin_ui/region_partials.rb +4 -3
  92. data/lib/trusty_cms/admin_ui/region_set.rb +4 -5
  93. data/lib/trusty_cms/available_locales.rb +2 -4
  94. data/lib/trusty_cms/config/definition.rb +11 -8
  95. data/lib/trusty_cms/engine.rb +14 -14
  96. data/lib/trusty_cms/extension.rb +14 -16
  97. data/lib/trusty_cms/extension_loader.rb +6 -6
  98. data/lib/trusty_cms/extension_migrator.rb +42 -41
  99. data/lib/trusty_cms/extension_path.rb +20 -19
  100. data/lib/trusty_cms/initializer.rb +5 -8
  101. data/lib/trusty_cms/pagination/controller.rb +7 -10
  102. data/lib/trusty_cms/pagination/link_renderer.rb +2 -2
  103. data/lib/trusty_cms/resource_responses.rb +3 -3
  104. data/lib/trusty_cms/setup.rb +130 -132
  105. data/lib/trusty_cms/taggable.rb +19 -22
  106. data/lib/trusty_cms/task_support.rb +9 -6
  107. data/public/dispatch.fcgi +1 -1
  108. data/public/dispatch.rb +2 -2
  109. data/script/extension +1 -1
  110. data/script/rails +2 -2
  111. data/trusty_cms.gemspec +23 -23
  112. metadata +32 -32
@@ -1,7 +1,7 @@
1
1
  class Admin::PagesController < Admin::ResourceController
2
- before_action :initialize_meta_rows_and_buttons, :only => [:new, :edit, :create, :update]
3
- before_action :count_deleted_pages, :only => [:destroy]
4
- rescue_from ActiveRecord::RecordInvalid, :with => :validation_error
2
+ before_action :initialize_meta_rows_and_buttons, only: %i[new edit create update]
3
+ before_action :count_deleted_pages, only: [:destroy]
4
+ rescue_from ActiveRecord::RecordInvalid, with: :validation_error
5
5
 
6
6
  class PreviewStop < ActiveRecord::Rollback
7
7
  def message
@@ -13,11 +13,11 @@ class Admin::PagesController < Admin::ResourceController
13
13
  r.plural.js do
14
14
  @level = params[:level].to_i
15
15
  @index = params[:index].to_i
16
- @rendered_html = ""
16
+ @rendered_html = ''
17
17
  @template_name = 'index'
18
18
  self.models = Page.find(params[:page_id]).children.all
19
19
  response.headers['Content-Type'] = 'text/html;charset=utf-8'
20
- render :action => 'children.html.haml', :layout => false
20
+ render action: 'children.html.haml', layout: false
21
21
  end
22
22
  end
23
23
 
@@ -34,8 +34,8 @@ class Admin::PagesController < Admin::ResourceController
34
34
 
35
35
  def preview
36
36
  render_preview
37
- rescue PreviewStop => exception
38
- render :text => exception.message unless @performed_render
37
+ rescue PreviewStop => e
38
+ render text: e.message unless @performed_render
39
39
  end
40
40
 
41
41
  def save_table_position
@@ -44,67 +44,66 @@ class Admin::PagesController < Admin::ResourceController
44
44
  head :ok
45
45
  end
46
46
 
47
-
48
47
  private
49
48
 
50
- def validation_error(e)
51
- flash[:error] = e.message
52
- render :new
53
- end
49
+ def validation_error(e)
50
+ flash[:error] = e.message
51
+ render :new
52
+ end
54
53
 
55
- def assign_page_attributes
56
- if params[:page_id].blank?
57
- self.model.slug = '/'
58
- end
59
- self.model.parent_id = params[:page_id]
54
+ def assign_page_attributes
55
+ if params[:page_id].blank?
56
+ model.slug = '/'
60
57
  end
58
+ model.parent_id = params[:page_id]
59
+ end
61
60
 
62
- def model_class
63
- if Page.descendants.any? { |d| d.to_s == params[:page_class] }
64
- verify_page_class(params[:page_class])
65
- elsif params[:page_id]
66
- Page.find(params[:page_id]).children
67
- else
68
- Page
69
- end
61
+ def model_class
62
+ if Page.descendants.any? { |d| d.to_s == params[:page_class] }
63
+ verify_page_class(params[:page_class])
64
+ elsif params[:page_id]
65
+ Page.find(params[:page_id]).children
66
+ else
67
+ Page
70
68
  end
69
+ end
71
70
 
72
- def render_preview
73
- params.permit!
74
- Page.transaction do
75
- page_class = Page.descendants.include?(model_class) ? model_class : Page
76
- if request.referer =~ %r{/admin/pages/(\d+)/edit}
77
- page = Page.find($1).becomes(page_class)
78
- layout_id = page.layout_id
79
- page.update_attributes(params[:page])
80
- page.published_at ||= Time.now
81
- else
82
- page = page_class.new(params[:page])
83
- page.published_at = page.updated_at = page.created_at = Time.now
84
- page.parent = Page.find($1) if request.referer =~ %r{/admin/pages/(\d+)/children/new}
85
- end
86
- page.pagination_parameters = pagination_parameters
87
- process_with_exception(page)
71
+ def render_preview
72
+ params.permit!
73
+ Page.transaction do
74
+ page_class = Page.descendants.include?(model_class) ? model_class : Page
75
+ if request.referer =~ %r{/admin/pages/(\d+)/edit}
76
+ page = Page.find($1).becomes(page_class)
77
+ layout_id = page.layout_id
78
+ page.update_attributes(params[:page])
79
+ page.published_at ||= Time.now
80
+ else
81
+ page = page_class.new(params[:page])
82
+ page.published_at = page.updated_at = page.created_at = Time.now
83
+ page.parent = Page.find($1) if request.referer =~ %r{/admin/pages/(\d+)/children/new}
88
84
  end
85
+ page.pagination_parameters = pagination_parameters
86
+ process_with_exception(page)
89
87
  end
88
+ end
90
89
 
91
- def process_with_exception(page)
92
- page.process(request, response)
93
- @performed_render = true
94
- render template: 'site/show_page', layout: false
95
- raise PreviewStop
96
- end
90
+ def process_with_exception(page)
91
+ page.process(request, response)
92
+ @performed_render = true
93
+ render template: 'site/show_page', layout: false
94
+ raise PreviewStop
95
+ end
97
96
 
98
- def count_deleted_pages
99
- @count = model.children.count + 1
100
- end
97
+ def count_deleted_pages
98
+ @count = model.children.count + 1
99
+ end
101
100
 
102
- def initialize_meta_rows_and_buttons
103
- @buttons_partials ||= []
104
- @meta ||= []
105
- @meta << {:field => "slug", :type => "text_field", :args => [{:class => 'textbox'}]}
106
- @meta << {:field => "breadcrumb", :type => "text_field", :args => [{:class => 'textbox'}]}
107
- end
101
+ def initialize_meta_rows_and_buttons
102
+ @buttons_partials ||= []
103
+ @meta ||= []
104
+ @meta << { field: 'slug', type: 'text_field', args: [{ class: 'textbox' }] }
105
+ @meta << { field: 'breadcrumb', type: 'text_field', args: [{ class: 'textbox' }] }
106
+ end
108
107
 
109
108
  def verify_page_class(page_class)
110
109
  if page_class.constantize.ancestors.include?(Page)
@@ -2,7 +2,7 @@ class Admin::ReferencesController < ApplicationController
2
2
  def show
3
3
  respond_to do |format|
4
4
  render_allowed_type(params[:type])
5
- format.any { render :action => @type, :content_type => "text/html", :layout => false }
5
+ format.any { render action: @type, content_type: 'text/html', layout: false }
6
6
  end
7
7
  end
8
8
 
@@ -5,10 +5,10 @@ class Admin::ResourceController < ApplicationController
5
5
  helper_method :model, :current_object, :models, :current_objects, :model_symbol, :plural_model_symbol, :model_class, :model_name, :plural_model_name
6
6
  before_action :populate_format
7
7
  before_action :never_cache
8
- before_action :load_models, :only => :index
9
- before_action :load_model, :only => [:new, :create, :edit, :update, :remove, :destroy]
10
- before_action :set_owner_or_editor, :only => [:new, :create, :update]
11
- after_action :clear_model_cache, :only => [:create, :update, :destroy]
8
+ before_action :load_models, only: :index
9
+ before_action :load_model, only: %i[new create edit update remove destroy]
10
+ before_action :set_owner_or_editor, only: %i[new create update]
11
+ after_action :clear_model_cache, only: %i[create update destroy]
12
12
 
13
13
  cattr_reader :paginated
14
14
  cattr_accessor :default_per_page, :will_paginate_options
@@ -23,18 +23,18 @@ class Admin::ResourceController < ApplicationController
23
23
  r.plural.publish(:xml, :json) { render format_symbol => models }
24
24
 
25
25
  r.singular.publish(:xml, :json) { render format_symbol => model }
26
- r.singular.default { redirect_to edit_model_path if action_name == "show" }
26
+ r.singular.default { redirect_to edit_model_path if action_name == 'show' }
27
27
 
28
28
  r.not_found.publish(:xml, :json) { head :not_found }
29
- r.not_found.default { announce_not_found; redirect_to :action => "index" }
29
+ r.not_found.default { announce_not_found; redirect_to action: 'index' }
30
30
 
31
31
  r.invalid.publish(:xml, :json) { render format_symbol => model.errors, :status => :unprocessable_entity }
32
- r.invalid.default { announce_validation_errors; render :action => template_name }
32
+ r.invalid.default { announce_validation_errors; render action: template_name }
33
33
 
34
34
  r.stale.publish(:xml, :json) { head :conflict }
35
- r.stale.default { announce_update_conflict; render :action => template_name }
35
+ r.stale.default { announce_update_conflict; render action: template_name }
36
36
 
37
- r.create.publish(:xml, :json) { render format_symbol => model, :status => :created, :location => url_for(:format => format_symbol, :id => model) }
37
+ r.create.publish(:xml, :json) { render format_symbol => model, :status => :created, :location => url_for(format: format_symbol, id: model) }
38
38
  r.create.default { redirect_to continue_url(params) }
39
39
 
40
40
  r.update.publish(:xml, :json) { head :ok }
@@ -48,7 +48,7 @@ class Admin::ResourceController < ApplicationController
48
48
  response_for :plural
49
49
  end
50
50
 
51
- [:show, :new, :edit, :remove].each do |action|
51
+ %i[show new edit remove].each do |action|
52
52
  class_eval %{
53
53
  def #{action} # def show
54
54
  response_for :singular # response_for :singular
@@ -56,7 +56,7 @@ class Admin::ResourceController < ApplicationController
56
56
  }, __FILE__, __LINE__
57
57
  end
58
58
 
59
- [:create, :update].each do |action|
59
+ %i[create update].each do |action|
60
60
  class_eval %{
61
61
  def #{action} # def create
62
62
  model.update_attributes!(permitted_params[model_symbol]) # model.update_attributes!(params[model_symbol])
@@ -71,7 +71,7 @@ class Admin::ResourceController < ApplicationController
71
71
  end
72
72
 
73
73
  def self.model_class(model_class = nil)
74
- @model_class ||= (model_class || self.controller_name).to_s.singularize.camelize.constantize
74
+ @model_class ||= (model_class || controller_name).to_s.singularize.camelize.constantize
75
75
  end
76
76
 
77
77
  # call paginate_models to declare that will_paginate should be used in the index view
@@ -81,9 +81,9 @@ class Admin::ResourceController < ApplicationController
81
81
  # Class MyController < Admin::ResourceController
82
82
  # paginate_models :per_page => 100
83
83
 
84
- def self.paginate_models(options={})
84
+ def self.paginate_models(options = {})
85
85
  @@paginated = true
86
- @@will_paginate_options = options.slice(:class, :previous_label, :next_label, :inner_window, :outer_window, :separator, :container).merge(:param_name => :p)
86
+ @@will_paginate_options = options.slice(:class, :previous_label, :next_label, :inner_window, :outer_window, :separator, :container).merge(param_name: :p)
87
87
  @@default_per_page = options[:per_page]
88
88
  end
89
89
 
@@ -111,151 +111,153 @@ class Admin::ResourceController < ApplicationController
111
111
  pp = params[:pp] || TrustyCms.config['admin.pagination.per_page']
112
112
  pp = (self.class.default_per_page || 50) if pp.blank?
113
113
  {
114
- :page => (params[:p] || 1).to_i,
115
- :per_page => pp.to_i
114
+ page: (params[:p] || 1).to_i,
115
+ per_page: pp.to_i,
116
116
  }
117
117
  end
118
118
 
119
119
  protected
120
120
 
121
- def rescue_action(exception)
122
- case exception
123
- when ActiveRecord::RecordInvalid
124
- response_for :invalid
125
- when ActiveRecord::StaleObjectError
126
- response_for :stale
127
- when ActiveRecord::RecordNotFound
128
- response_for :not_found
129
- else
130
- super
131
- end
121
+ def rescue_action(exception)
122
+ case exception
123
+ when ActiveRecord::RecordInvalid
124
+ response_for :invalid
125
+ when ActiveRecord::StaleObjectError
126
+ response_for :stale
127
+ when ActiveRecord::RecordNotFound
128
+ response_for :not_found
129
+ else
130
+ super
132
131
  end
132
+ end
133
133
 
134
- def model_class
135
- self.class.model_class
136
- end
134
+ def model_class
135
+ self.class.model_class
136
+ end
137
137
 
138
- def set_owner_or_editor
139
- if self.model.has_attribute? :created_by_id
140
- self.model.created_by_id = current_user.id if self.model.id == nil
141
- self.model.updated_by_id = current_user.id
142
- end
138
+ def set_owner_or_editor
139
+ if model.has_attribute? :created_by_id
140
+ model.created_by_id = current_user.id if model.id == nil
141
+ model.updated_by_id = current_user.id
143
142
  end
143
+ end
144
144
 
145
- def model
146
- instance_variable_get("@#{model_symbol}") || load_model
147
- end
148
- alias :current_object :model
149
- def model=(object)
150
- instance_variable_set("@#{model_symbol}", object)
151
- end
152
- def load_model
153
- self.model = if params[:id]
154
- model_class.find(params[:id])
155
- else
156
- model_class.new()
157
- end
158
- end
145
+ def model
146
+ instance_variable_get("@#{model_symbol}") || load_model
147
+ end
148
+ alias :current_object :model
149
+ def model=(object)
150
+ instance_variable_set("@#{model_symbol}", object)
151
+ end
159
152
 
160
- def models
161
- instance_variable_get("@#{plural_model_symbol}") || load_models
162
- end
163
- alias :current_objects :models
164
- def models=(objects)
165
- instance_variable_set("@#{plural_model_symbol}", objects)
166
- end
167
- def load_models
168
- self.models = paginated? ? model_class.paginate(pagination_parameters) : model_class.all
153
+ def load_model
154
+ self.model = if params[:id]
155
+ model_class.find(params[:id])
156
+ else
157
+ model_class.new
169
158
  end
159
+ end
170
160
 
171
- def model_name
172
- model_class.name
173
- end
174
- def plural_model_name
175
- model_name.pluralize
176
- end
177
- alias :models_name :plural_model_name
161
+ def models
162
+ instance_variable_get("@#{plural_model_symbol}") || load_models
163
+ end
164
+ alias :current_objects :models
165
+ def models=(objects)
166
+ instance_variable_set("@#{plural_model_symbol}", objects)
167
+ end
178
168
 
179
- def model_symbol
180
- model_name.underscore.intern
181
- end
182
- def plural_model_symbol
183
- model_name.pluralize.underscore.intern
184
- end
185
- alias :models_symbol :plural_model_symbol
169
+ def load_models
170
+ self.models = paginated? ? model_class.paginate(pagination_parameters) : model_class.all
171
+ end
186
172
 
187
- def humanized_model_name
188
- t(model_name.underscore.downcase)
189
- end
173
+ def model_name
174
+ model_class.name
175
+ end
190
176
 
191
- def continue_url(options)
192
- options[:redirect_to] || (params[:continue] ? {:action => 'edit', :id => model.id} : index_page_for_model)
193
- end
177
+ def plural_model_name
178
+ model_name.pluralize
179
+ end
180
+ alias :models_name :plural_model_name
194
181
 
195
- def index_page_for_model
196
- parts = {:action => "index"}
197
- if paginated? && model && i = model_class.all.index(model)
198
- p = (i / pagination_parameters[:per_page].to_i) + 1
199
- parts[:p] = p if p && p > 1
200
- end
201
- parts
202
- end
182
+ def model_symbol
183
+ model_name.underscore.intern
184
+ end
203
185
 
204
- def edit_model_path
205
- method = "edit_admin_#{model_name.underscore}_path"
206
- send method.to_sym, params[:id]
207
- end
186
+ def plural_model_symbol
187
+ model_name.pluralize.underscore.intern
188
+ end
189
+ alias :models_symbol :plural_model_symbol
208
190
 
209
- def announce_validation_errors
210
- flash.now[:error] = t("resource_controller.validation_errors")
211
- end
191
+ def humanized_model_name
192
+ t(model_name.underscore.downcase)
193
+ end
212
194
 
213
- def announce_removed
214
- ActiveSupport::Deprecation.warn("announce_removed is no longer encouraged in TrustyCms 0.9.x.", caller)
215
- flash[:notice] = t("resource_controller.removed", :humanized_model_name => humanized_model_name)
216
- end
195
+ def continue_url(options)
196
+ options[:redirect_to] || (params[:continue] ? { action: 'edit', id: model.id } : index_page_for_model)
197
+ end
217
198
 
218
- def announce_not_found
219
- flash[:notice] = t("resource_controller.not_found", :humanized_model_name => humanized_model_name)
199
+ def index_page_for_model
200
+ parts = { action: 'index' }
201
+ if paginated? && model && i = model_class.all.index(model)
202
+ p = (i / pagination_parameters[:per_page].to_i) + 1
203
+ parts[:p] = p if p && p > 1
220
204
  end
205
+ parts
206
+ end
221
207
 
222
- def announce_update_conflict
223
- flash.now[:error] = t("resource_controller.update_conflict", :humanized_model_name => humanized_model_name)
224
- end
208
+ def edit_model_path
209
+ method = "edit_admin_#{model_name.underscore}_path"
210
+ send method.to_sym, params[:id]
211
+ end
225
212
 
226
- def clear_model_cache
227
- Rails.cache.clear
228
- end
213
+ def announce_validation_errors
214
+ flash.now[:error] = t('resource_controller.validation_errors')
215
+ end
229
216
 
230
- def format_symbol
231
- format.to_sym
232
- end
217
+ def announce_removed
218
+ ActiveSupport::Deprecation.warn('announce_removed is no longer encouraged in TrustyCms 0.9.x.', caller)
219
+ flash[:notice] = t('resource_controller.removed', humanized_model_name: humanized_model_name)
220
+ end
233
221
 
234
- def format
235
- params[:format] || 'html'
236
- end
222
+ def announce_not_found
223
+ flash[:notice] = t('resource_controller.not_found', humanized_model_name: humanized_model_name)
224
+ end
237
225
 
226
+ def announce_update_conflict
227
+ flash.now[:error] = t('resource_controller.update_conflict', humanized_model_name: humanized_model_name)
228
+ end
238
229
 
239
- # I would like to set this to expires_in(1.minute, :private => true) to allow for more fluid navigation
240
- # but the annoyance for concurrent authors would be too great.
241
- def never_cache
242
- expires_now
243
- end
230
+ def clear_model_cache
231
+ Rails.cache.clear
232
+ end
244
233
 
245
- # Assist with user agents that cause improper content-negotiation
246
- # warn "Remove default HTML format, Accept header no longer used. (#{__FILE__}: #{__LINE__})" if Rails.version !~ /^2\.1/
247
- def populate_format
248
- params[:format] ||= 'html' unless request.xhr?
249
- end
234
+ def format_symbol
235
+ format.to_sym
236
+ end
250
237
 
251
- def permitted_params
252
- model_symbols = ActiveRecord::Base.descendants.map{|a| a.name.underscore.to_sym}
253
- keys = params.keys.map{|k| k.underscore.to_sym}
254
- valid_symbols = model_symbols & keys
255
- valid_symbols.each do |symbol|
256
- params[symbol].permit!
257
- end
258
- params
259
- end
238
+ def format
239
+ params[:format] || 'html'
240
+ end
260
241
 
242
+ # I would like to set this to expires_in(1.minute, :private => true) to allow for more fluid navigation
243
+ # but the annoyance for concurrent authors would be too great.
244
+ def never_cache
245
+ expires_now
246
+ end
247
+
248
+ # Assist with user agents that cause improper content-negotiation
249
+ # warn "Remove default HTML format, Accept header no longer used. (#{__FILE__}: #{__LINE__})" if Rails.version !~ /^2\.1/
250
+ def populate_format
251
+ params[:format] ||= 'html' unless request.xhr?
252
+ end
253
+
254
+ def permitted_params
255
+ model_symbols = ActiveRecord::Base.descendants.map { |a| a.name.underscore.to_sym }
256
+ keys = params.keys.map { |k| k.underscore.to_sym }
257
+ valid_symbols = model_symbols & keys
258
+ valid_symbols.each do |symbol|
259
+ params[symbol].permit!
260
+ end
261
+ params
262
+ end
261
263
  end