releaf-content 1.1.13 → 1.1.14

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: c59bcf2772f44e7e5e81404393789495ad3a78f8
4
- data.tar.gz: 27f5c3a33ffff515048a2c6ca4389fbb796c2d7d
3
+ metadata.gz: d3e39e5e0655124a503e3bd9e89d76053ee5a8ba
4
+ data.tar.gz: dd26dd7aded3ecf42fd733381471d8711b2e5520
5
5
  SHA512:
6
- metadata.gz: d5d8e8afbe40691cca83ca6875a55ae0ff52c6223aaba91cff6ce5bbf51a84e122afb9693c5327a3378ea5f5bc8b4448bb4d49bd6bd652a38cdb9f3664b596aa
7
- data.tar.gz: fdd72a11447be9d18782e76977e96305282d829ec08bccbe2230f983c4ebd6d2f4cb4af8c081c3bbd67d35b5f7bff93632d1d0080d069548155463647595b7d4
6
+ metadata.gz: 6f9d9949a7cef5c6eb6acef18b9d276776171e18b9ecf1b5e4ee7a92bc85987fce67cef057ca34266dbe97064ff779c24cc8634a626c614e57c06129602482ee
7
+ data.tar.gz: 40e49c33905600975e40ad80323697459f693472337e1005959c462c38cb793b16193746ad9603e22c07202fbf994efd1b4d878fb43dbc9db0f9baceb807c94a
@@ -25,33 +25,22 @@ module Releaf::Content::Builders
25
25
  end
26
26
 
27
27
  def build_tree
28
- stack = []
29
- result = []
30
-
31
- collection.each do |node|
32
- if stack.empty?
33
- stack.push({ node: node, children: [] })
34
- result << stack.last
35
- next
36
- end
28
+ object_hash = collection.inject({}) do |result, node|
29
+ result[node.id] = { node: node, children: [] }
30
+ result
31
+ end
37
32
 
38
- if stack.last[:node].lft < node.lft && node.lft < stack.last[:node].rgt
39
- child = { node: node, children: [] }
40
- stack.last[:children] << child
33
+ object_hash[nil] = { root: true, children: [] }
41
34
 
42
- if node.rgt + 1 == stack.last[:node].rgt
43
- stack.pop
44
- end
35
+ object_hash.each_value do |node|
36
+ next if node[:root]
37
+ next if node[:node].parent_id && !object_hash[node[:node].parent_id]
45
38
 
46
- unless node.leaf?
47
- stack.push(child)
48
- end
49
- else
50
- stack.pop
51
- end
39
+ children = object_hash[node[:node].parent_id][:children]
40
+ children << node
52
41
  end
53
42
 
54
- result
43
+ object_hash[nil][:children]
55
44
  end
56
45
 
57
46
  def tree
@@ -67,7 +67,7 @@ class Releaf::Content::NodesController < Releaf::ActionController
67
67
  protected
68
68
 
69
69
  def prepare_index
70
- @collection = resource_class.reorder(lft: :asc)
70
+ @collection = resource_class.all
71
71
  end
72
72
 
73
73
  private
@@ -99,7 +99,7 @@ class Releaf::Content::NodesController < Releaf::ActionController
99
99
 
100
100
  def copy_move_dialog_common
101
101
  @resource = resource_class.find params[:id]
102
- @collection = resource_class.reorder(lft: :asc)
102
+ @collection = resource_class.all
103
103
  end
104
104
 
105
105
  def prepare_resource
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: releaf-content
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.13
4
+ version: 1.1.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - CubeSystems
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-01-18 00:00:00.000000000 Z
11
+ date: 2018-03-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: releaf-core
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 1.1.13
19
+ version: 1.1.14
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: 1.1.13
26
+ version: 1.1.14
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: stringex
29
29
  requirement: !ruby/object:Gem::Requirement