trusty-cms 2.0.23 → 2.0.24

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.
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.