trusty-cms 2.0.23 → 2.0.24

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a4491805dd46ed2c03f57d0644c0eb7e1400e681
4
- data.tar.gz: c0c1882ff16848f24053ab3d0d9ca0ed5b3d4b63
3
+ metadata.gz: 079b1b5601ad895b9a70dbe63fcd8b4cb5ec8cef
4
+ data.tar.gz: c494cd3eae5ecc44678b70b699bb0eb78a546e1b
5
5
  SHA512:
6
- metadata.gz: c27e7016b1cd41dbb135577ad9057af5e14801dee5bc4b6d1c08aec8a4be3cd72e519554f8afb4079d7b2d5d3057f2a96eb8737a8d9b3904e420eaa546ec521b
7
- data.tar.gz: 7089cb29b4d16ee3b0265dc3dd5c1ea96ae9243f2134fed2efd996ce0fa2934d4b8502f92c8b65127f45b6e5bbba14356c34850a0e98f0d1896b478e67b0b639
6
+ metadata.gz: b7fc84ccdc1bbf657111f33ed17ba3a687cfe0922bd1c46ce2af8c3201af2051852c8a72c189bffa0f5f36ee8894aec29e4a95268467174f66055cdab9cb4f2d
7
+ data.tar.gz: 7c1822cf7448a33477e9e9edda2cab6bc78d1420beeade56b266a3da335568715e02b9fdd62ca9b5c9805c839d5bc78ec6d88d918449e83aa6798ffb13d698bf
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- trusty-cms (2.0.23)
4
+ trusty-cms (2.0.24)
5
5
  RedCloth (~> 4.3.2)
6
6
  acts_as_tree (~> 2.1)
7
7
  bundler (~> 1.7)
@@ -66,19 +66,19 @@ GEM
66
66
  minitest (~> 5.1)
67
67
  thread_safe (~> 0.3, >= 0.3.4)
68
68
  tzinfo (~> 1.1)
69
- acts_as_tree (2.5.0)
69
+ acts_as_tree (2.6.0)
70
70
  activerecord (>= 3.0.0)
71
71
  addressable (2.4.0)
72
72
  arel (6.0.3)
73
73
  builder (3.2.2)
74
- byebug (9.0.5)
74
+ byebug (9.0.6)
75
75
  capybara (2.3.0)
76
76
  mime-types (>= 1.16)
77
77
  nokogiri (>= 1.3.3)
78
78
  rack (>= 1.0.0)
79
79
  rack-test (>= 0.5.4)
80
80
  xpath (~> 2.0)
81
- chunky_png (1.3.6)
81
+ chunky_png (1.3.7)
82
82
  ckeditor (4.1.6)
83
83
  cocaine
84
84
  orm_adapter (~> 0.5.0)
@@ -155,14 +155,12 @@ GEM
155
155
  mime-types-data (~> 3.2015)
156
156
  mime-types-data (3.2016.0521)
157
157
  mini_portile2 (2.1.0)
158
- minitest (5.9.0)
158
+ minitest (5.9.1)
159
159
  multi_json (1.12.1)
160
160
  mysql2 (0.4.4)
161
- nokogiri (1.6.8)
161
+ nokogiri (1.6.8.1)
162
162
  mini_portile2 (~> 2.1.0)
163
- pkg-config (~> 1.1.7)
164
163
  orm_adapter (0.5.0)
165
- pkg-config (1.1.7)
166
164
  poltergeist (1.5.1)
167
165
  capybara (~> 2.1)
168
166
  cliver (~> 0.3.1)
@@ -234,7 +232,7 @@ GEM
234
232
  rspec-mocks (~> 3.0.0)
235
233
  rspec-support (~> 3.0.0)
236
234
  rspec-support (3.0.4)
237
- ruby_parser (3.8.2)
235
+ ruby_parser (3.8.3)
238
236
  sexp_processor (~> 4.1)
239
237
  sass (3.4.22)
240
238
  sass-rails (5.0.6)
@@ -280,7 +278,7 @@ GEM
280
278
  websocket-driver (0.6.4)
281
279
  websocket-extensions (>= 0.1.0)
282
280
  websocket-extensions (0.1.2)
283
- will_paginate (3.1.0)
281
+ will_paginate (3.1.5)
284
282
  xpath (2.0.0)
285
283
  nokogiri (~> 1.3)
286
284
 
@@ -1,6 +1,7 @@
1
1
  class Admin::PagesController < Admin::ResourceController
2
2
  before_filter :initialize_meta_rows_and_buttons, :only => [:new, :edit, :create, :update]
3
3
  before_filter :count_deleted_pages, :only => [:destroy]
4
+ rescue_from ActiveRecord::RecordInvalid, :with => :validation_error
4
5
 
5
6
  class PreviewStop < ActiveRecord::Rollback
6
7
  def message
@@ -45,6 +46,12 @@ class Admin::PagesController < Admin::ResourceController
45
46
 
46
47
 
47
48
  private
49
+
50
+ def validation_error(e)
51
+ flash[:error] = e.message
52
+ render :new
53
+ end
54
+
48
55
  def assign_page_attributes
49
56
  if params[:page_id].blank?
50
57
  self.model.slug = '/'
@@ -42,15 +42,6 @@ class ApplicationController < ActionController::Base
42
42
  end
43
43
  end
44
44
 
45
- def rescue_action_in_public(exception)
46
- case exception
47
- when ActiveRecord::RecordNotFound, ActionController::UnknownController, ActionController::UnknownAction, ActionController::RoutingError
48
- render :template => "site/not_found", :status => 404
49
- else
50
- super
51
- end
52
- end
53
-
54
45
  private
55
46
 
56
47
  def set_mailer
@@ -53,26 +53,6 @@ module Admin::NodeHelper
53
53
  show_all? || expanded_rows.include?(@current_node.id)
54
54
  end
55
55
 
56
- def padding_left(level)
57
- (level * 23) + 9
58
- end
59
-
60
- def children_class
61
- unless @current_node.children.empty?
62
- if expanded
63
- " children_visible"
64
- else
65
- " children_hidden"
66
- end
67
- else
68
- " no_children"
69
- end
70
- end
71
-
72
- def virtual_class
73
- @current_node.virtual? ? " virtual": ""
74
- end
75
-
76
56
  def expander(level)
77
57
  unless @current_node.children.empty? or level == 0
78
58
  image((expanded ? "collapse" : "expand"),
@@ -14,10 +14,6 @@ module Admin::PagesHelper
14
14
  !!(@page.errors[:slug] or @page.errors[:breadcrumb])
15
15
  end
16
16
 
17
- def default_filter_name
18
- @page.parts.empty? ? "" : @page.parts[0].filter_id
19
- end
20
-
21
17
  def status_to_display
22
18
  @page.status_id = 100 if @page.status_id == 90
23
19
  @display_status = Status.selectable.map{ |s| [I18n.translate(s.name.downcase), s.id] }
@@ -70,14 +70,6 @@ module ApplicationHelper
70
70
  uri.path.gsub(%r{/+}, '/').gsub(%r{/$}, '')
71
71
  end
72
72
 
73
- def nav_link_to(name, options)
74
- if current_url?(options)
75
- %{<strong>#{ link_to translate_with_default(name), options }</strong>}
76
- else
77
- link_to translate_with_default(name), options
78
- end
79
- end
80
-
81
73
  def admin?
82
74
  current_user and current_user.admin?
83
75
  end
@@ -106,16 +98,6 @@ module ApplicationHelper
106
98
  I18n.localize(time, :format => :timestamp)
107
99
  end
108
100
 
109
- def meta_visible(symbol)
110
- v = case symbol
111
- when :meta_more
112
- not meta_errors?
113
- when :meta, :meta_less
114
- meta_errors?
115
- end
116
- v ? {} : {:style => "display: none"}
117
- end
118
-
119
101
  def meta_errors?
120
102
  false
121
103
  end
@@ -128,18 +110,10 @@ module ApplicationHelper
128
110
  image_tag(append_image_extension("admin/#{name}"), options)
129
111
  end
130
112
 
131
- def image_submit(name, options = {})
132
- image_submit_tag(append_image_extension("admin/#{name}"), options)
133
- end
134
-
135
113
  def admin
136
114
  TrustyCms::AdminUI.instance
137
115
  end
138
116
 
139
- def filter_options_for_select(selected=nil)
140
- options_for_select([[t('select.none'), '']] + TextFilter.descendants_names, selected)
141
- end
142
-
143
117
  def body_classes
144
118
  @body_classes ||= []
145
119
  end
@@ -183,7 +157,7 @@ module ApplicationHelper
183
157
 
184
158
  # Default image url to be used when no gravatar is found
185
159
  # or when an image exceeds the rating parameter.
186
- local_avatar_url = "/images/admin/avatar_#{([options[:size].to_i] * 2).join('x')}.png"
160
+ local_avatar_url = "/assets/admin/avatar_#{([options[:size].to_i] * 2).join('x')}.png"
187
161
  default_avatar_url = "#{request.protocol}#{request.host_with_port}#{ActionController::Base.relative_url_root}#{local_avatar_url}"
188
162
  options[:default] ||= default_avatar_url
189
163
 
data/app/models/page.rb CHANGED
@@ -30,6 +30,8 @@ class Page < ActiveRecord::Base
30
30
 
31
31
  validate :valid_class_name
32
32
 
33
+ default_scope { order('position ASC') }
34
+
33
35
  include TrustyCms::Taggable
34
36
  include StandardTags
35
37
  include DeprecatedTags
@@ -223,10 +225,6 @@ class Page < ActiveRecord::Base
223
225
  true
224
226
  end
225
227
 
226
- def to_xml(options={}, &block)
227
- super(options.reverse_merge(:include => :parts), &block)
228
- end
229
-
230
228
  def default_child
231
229
  self.class.default_child
232
230
  end
@@ -347,10 +345,6 @@ class Page < ActiveRecord::Base
347
345
  end
348
346
  end
349
347
 
350
- def attributes_protected_by_default
351
- super - [self.class.inheritance_column]
352
- end
353
-
354
348
  def update_virtual
355
349
  unless self.class == Page.descendant_class(class_name)
356
350
  self.virtual = Page.descendant_class(class_name).new.virtual?
@@ -29,12 +29,6 @@ class PageContext < Radius::Context
29
29
  render_error_message(e.message)
30
30
  end
31
31
 
32
- def tag_missing(name, attributes = {}, &block)
33
- super
34
- rescue Radius::UndefinedTagError => e
35
- raise StandardTags::TagError.new(e.message)
36
- end
37
-
38
32
  private
39
33
 
40
34
  def render_error_message(message)
@@ -9,7 +9,6 @@ module StandardTags
9
9
  include WillPaginate::ViewHelpers
10
10
 
11
11
  class TagError < StandardError; end
12
- class RequiredAttributeError < StandardError; end
13
12
 
14
13
  desc %{
15
14
  Causes the tags referring to a page's attributes to refer to the current page.
@@ -17,11 +17,6 @@ class TextFilter
17
17
  instance.filter(text)
18
18
  end
19
19
 
20
- def description_file(filename)
21
- text = File.read(filename) rescue ""
22
- self.description text
23
- end
24
-
25
20
  def descendants_names
26
21
  descendants.map { |s| s.filter_name }.sort
27
22
  end
@@ -211,10 +211,6 @@ module TrustyCms
211
211
  definitions[key] ||= TrustyCms::Config::Definition.new(:empty => true)
212
212
  end
213
213
 
214
- def clear_definitions!
215
- TrustyCms.config_definitions = {}
216
- end
217
-
218
214
  end
219
215
 
220
216
  # The usual way to use a config item:
@@ -0,0 +1,26 @@
1
+ class AddPositionToPages < ActiveRecord::Migration
2
+ def self.up
3
+ unless column_exists? :pages, :position
4
+ add_column :pages, :position, :integer
5
+ Page.reset_column_information
6
+ say_with_time("Putting all pages in a default order...") do
7
+ ActiveRecord::Base.record_timestamps = false
8
+ Page.where(parent_id: nil).each do |p|
9
+ put_children_into_list(p)
10
+ end
11
+ ActiveRecord::Base.record_timestamps = true
12
+ end
13
+ end
14
+ end
15
+
16
+ def self.down
17
+ remove_column :pages, :position
18
+ end
19
+
20
+ def self.put_children_into_list(page)
21
+ page.children.order("title asc").each_with_index do |pg, idx|
22
+ pg.update_attribute('position', idx + 1)
23
+ put_children_into_list(pg)
24
+ end
25
+ end
26
+ end
data/db/schema.rb CHANGED
@@ -70,6 +70,7 @@ ActiveRecord::Schema.define(:version => 20120209231801) do
70
70
  t.boolean "virtual", :default => false, :null => false
71
71
  t.integer "lock_version", :default => 0
72
72
  t.text "allowed_children_cache"
73
+ t.integer "position", limit: 4
73
74
  end
74
75
 
75
76
  add_index "pages", ["class_name"], :name => "pages_class_name"
data/lib/trusty_cms.rb CHANGED
@@ -2,6 +2,6 @@ TRUSTY_CMS_ROOT = File.expand_path(File.join(File.dirname(__FILE__), "..")) unle
2
2
 
3
3
  unless defined? TrustyCms::VERSION
4
4
  module TrustyCms
5
- VERSION = "2.0.23"
5
+ VERSION = "2.0.24"
6
6
  end
7
7
  end
@@ -230,25 +230,6 @@ Supports: TrustyCms #{supports_radiant_version}
230
230
  end
231
231
  end
232
232
 
233
- class Bzip2 < Tarball
234
- def filename
235
- @unpacked ? super : "#{self.name}.tar.bz2"
236
- end
237
-
238
- def unpack
239
- cd(Dir.tmpdir) { system "bunzip2 #{self.filename}" }
240
- @unpacked = true
241
- super
242
- end
243
- end
244
-
245
- class Zip < Download
246
- def unpack
247
- output = nil
248
- cd(Dir.tmpdir) { output = `unzip #{filename} -d #{name}` }
249
- self.path = File.join(Dir.tmpdir, name)
250
- end
251
- end
252
233
  end
253
234
 
254
235
  module TrustyCms
@@ -11,7 +11,7 @@
11
11
  #
12
12
  # It's strongly recommended that you check this file into your version control system.
13
13
 
14
- ActiveRecord::Schema.define(version: 20120209231801) do
14
+ ActiveRecord::Schema.define(version: 20161027141250) do
15
15
 
16
16
  create_table "config", force: :cascade do |t|
17
17
  t.string "key", limit: 40, default: "", null: false
@@ -70,6 +70,7 @@ ActiveRecord::Schema.define(version: 20120209231801) do
70
70
  t.boolean "virtual", default: false, null: false
71
71
  t.integer "lock_version", limit: 4, default: 0
72
72
  t.text "allowed_children_cache", limit: 65535
73
+ t.integer "position", limit: 4
73
74
  end
74
75
 
75
76
  add_index "pages", ["class_name"], name: "pages_class_name", using: :btree
@@ -100,21 +101,23 @@ ActiveRecord::Schema.define(version: 20120209231801) do
100
101
  add_index "snippets", ["name"], name: "name", unique: true, using: :btree
101
102
 
102
103
  create_table "users", force: :cascade do |t|
103
- t.string "name", limit: 100
104
- t.string "email", limit: 255
105
- t.string "login", limit: 40, default: "", null: false
106
- t.string "password", limit: 40
107
- t.boolean "admin", default: false, null: false
108
- t.boolean "designer", default: false, null: false
104
+ t.string "name", limit: 100
105
+ t.string "email", limit: 255
106
+ t.string "login", limit: 40, default: "", null: false
107
+ t.string "password", limit: 40
108
+ t.boolean "admin", default: false, null: false
109
+ t.boolean "designer", default: false, null: false
109
110
  t.datetime "created_at"
110
111
  t.datetime "updated_at"
111
- t.integer "created_by_id", limit: 4
112
- t.integer "updated_by_id", limit: 4
113
- t.string "salt", limit: 255
114
- t.text "notes", limit: 65535
115
- t.integer "lock_version", limit: 4, default: 0
116
- t.string "session_token", limit: 255
117
- t.string "locale", limit: 255
112
+ t.integer "created_by_id", limit: 4
113
+ t.integer "updated_by_id", limit: 4
114
+ t.string "salt", limit: 255
115
+ t.text "notes", limit: 65535
116
+ t.integer "lock_version", limit: 4, default: 0
117
+ t.string "session_token", limit: 255
118
+ t.string "locale", limit: 255
119
+ t.string "password_reset_token", limit: 255
120
+ t.datetime "password_reset_sent_at"
118
121
  end
119
122
 
120
123
  add_index "users", ["login"], name: "login", unique: true, using: :btree
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: trusty-cms
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.23
4
+ version: 2.0.24
5
5
  platform: ruby
6
6
  authors:
7
7
  - TrustyCms CMS dev team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-09-06 00:00:00.000000000 Z
11
+ date: 2016-11-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: tzinfo
@@ -1386,6 +1386,7 @@ files:
1386
1386
  - db/migrate/20111016150725_extend_page_part_content_limit.rb
1387
1387
  - db/migrate/20120209231801_change_pages_allowed_children_cache_to_text.rb
1388
1388
  - db/migrate/20160527141249_add_password_reset_to_users.rb
1389
+ - db/migrate/20161027141250_add_position_to_pages.rb
1389
1390
  - db/schema.rb
1390
1391
  - lib/active_record_extensions/active_record_extensions.rb
1391
1392
  - lib/annotatable.rb
@@ -1644,7 +1645,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1644
1645
  version: 1.3.1
1645
1646
  requirements: []
1646
1647
  rubyforge_project:
1647
- rubygems_version: 2.6.4
1648
+ rubygems_version: 2.5.1
1648
1649
  signing_key:
1649
1650
  specification_version: 4
1650
1651
  summary: A no-fluff content management system designed for small teams.