refinerycms-core 2.0.6 → 2.0.7

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,3 @@
1
- require 'ostruct'
2
-
3
1
  module Refinery
4
2
  module ImageHelper
5
3
 
data/lib/refinery/crud.rb CHANGED
@@ -269,7 +269,7 @@ module Refinery
269
269
  # After we drop Ruby 1.8.x support the following line can be changed back to
270
270
  # list.each do |index, hash|
271
271
  # because there won't be an ordering issue (see https://github.com/resolve/refinerycms/issues/1585)
272
- list.sort.map { |item| item[1] }.each_with_index do |hash, index|
272
+ list.sort_by {|k, v| k.to_i}.map { |item| item[1] }.each_with_index do |hash, index|
273
273
  moved_item_id = hash['id'].split(/#{singular_name}\_?/).reject(&:empty?).first
274
274
  @current_#{singular_name} = #{class_name}.find_by_id(moved_item_id)
275
275
 
@@ -2,7 +2,7 @@ module Refinery
2
2
  class Version
3
3
  @major = 2
4
4
  @minor = 0
5
- @tiny = 6
5
+ @tiny = 7
6
6
  @build = nil
7
7
 
8
8
  class << self
@@ -100,6 +100,23 @@ module Refinery
100
100
  dummy.lft.should eq(9)
101
101
  dummy.rgt.should eq(10)
102
102
  end
103
+
104
+ # Regression test for https://github.com/resolve/refinerycms/issues/1585
105
+ it "sorts numerically rather than by string key" do
106
+ dummy, dummy_params = [], {}
107
+
108
+ # When we have 11 entries, the 11th index will be #10, which will be
109
+ # sorted above #2 if we are sorting by strings.
110
+ 11.times do |n|
111
+ dummy << Refinery::CrudDummy.create!
112
+ dummy_params["#{n}"] = {"id" => "crud_dummy_#{dummy[n].id}"}
113
+ end
114
+
115
+ post :update_positions, { "ul" => { "0" => dummy_params } }
116
+
117
+ dummy = dummy.last.reload
118
+ dummy.lft.should eq(21)
119
+ end
103
120
  end
104
121
 
105
122
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: refinerycms-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.6
4
+ version: 2.0.7
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ authors:
13
13
  autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
- date: 2012-08-07 00:00:00.000000000 Z
16
+ date: 2012-08-16 00:00:00.000000000 Z
17
17
  dependencies:
18
18
  - !ruby/object:Gem::Dependency
19
19
  name: acts_as_indexed
@@ -702,7 +702,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
702
702
  version: '0'
703
703
  segments:
704
704
  - 0
705
- hash: -2135277000701086304
705
+ hash: 2236946699019047872
706
706
  required_rubygems_version: !ruby/object:Gem::Requirement
707
707
  none: false
708
708
  requirements:
@@ -711,7 +711,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
711
711
  version: '0'
712
712
  segments:
713
713
  - 0
714
- hash: -2135277000701086304
714
+ hash: 2236946699019047872
715
715
  requirements: []
716
716
  rubyforge_project: refinerycms
717
717
  rubygems_version: 1.8.22