alchemy-custom-model 3.0.0 → 3.1.3

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
  SHA256:
3
- metadata.gz: cc513864d0af1d5cd7f41920d50b2c0c5ce7fdb5e7dcd499cba0133b1c6b2370
4
- data.tar.gz: 0c48c0bb5aff124b19f19db0c943295d2e5081cb770137b218c121012039a9cb
3
+ metadata.gz: '028e68c8f085f2edc86ab9d40205c603f9118c033aa2cc33f7e5f7762e787a6f'
4
+ data.tar.gz: b617c1996d2f3632f6175c2641641ea8794235bac8709a1a93887a51e94787e4
5
5
  SHA512:
6
- metadata.gz: c252ab1b1bbcd71b7681b4f9310049f5517b328e71df390cf63530f5cb3e76e4da023a630ed23a312cf3cd02f2ab1c2e86abe85b584e65eec44a66204001a0a6
7
- data.tar.gz: 3c06811e1ec6d0ea5b747cdf0ea89e5119f8db87e9c384e7a6bfa31bcf51d30c058fe4e6fdf183eff4d3688e0c50c9fd12c9a465dfa18a279bda6445d94c9357
6
+ metadata.gz: 2ffc392f726016cfd74bbd8c96159323d36889eacdf4919b37b0a9bc5c8215d9e27d6736fd4b6131596ad6f1d4178d4fd110442800234c812cbccdc3c8571390
7
+ data.tar.gz: 53e285be0a561da95d43c4a6f1bf434541c66e08965e0abcb299f270a1d02f5d6b9f88edde209da9c6463e99c240e76ed49186f07a9308e84d70cd698d0fef1b
@@ -44,7 +44,8 @@ module Alchemy
44
44
  :nofollow,
45
45
  :external,
46
46
  :custom_model_klass,
47
- :custom_model_method
47
+ :custom_model_method,
48
+ :menu_type
48
49
  )
49
50
  end
50
51
 
@@ -392,7 +392,7 @@ module Alchemy::Custom::Model::Admin::BaseHelper
392
392
 
393
393
  def order_path(obj = nil, options = {})
394
394
  if obj.nil?
395
- new_polymorphic_path([:admin, base_class.to_s.pluralize.underscore, :order])
395
+ new_polymorphic_path([:admin, base_class.to_s.pluralize.underscore.to_sym, :order])
396
396
  else
397
397
  new_polymorphic_path([:admin, obj, :order])
398
398
  end
@@ -110,14 +110,14 @@ Alchemy::PagesHelper.module_eval do
110
110
  end
111
111
 
112
112
  def render_menu_with_language(name, options = {})
113
- root_node = Alchemy::Node.where(language_id: Alchemy::Language.current.id).roots.find_by(name: name)
113
+ root_node = Alchemy::Node.where(language_id: Alchemy::Language.current.id).roots.find_by(menu_type: name)
114
114
  if root_node.nil?
115
115
  warning("Menu with name #{name} not found!")
116
116
  return
117
117
  end
118
118
 
119
119
  options = {
120
- node_partial_name: "#{root_node.view_folder_name}/node"
120
+ node_partial_name: "#{root_node.to_partial_path}"
121
121
  }.merge(options)
122
122
 
123
123
  render(root_node, menu: root_node, node: root_node, options: options)
@@ -1,75 +1,57 @@
1
1
  <%= alchemy_form_for([:admin, node]) do |f| %>
2
+ <% if node.new_record? && node.root? %>
3
+ <%= f.input :menu_type,
4
+ collection: Alchemy::Language.current.available_menu_names.map { |n| [I18n.t(n, scope: [:alchemy, :menu_names]), n] },
5
+ include_blank: false,
6
+ input_html: { class: 'alchemy_selectbox' } %>
2
7
 
3
- <% if node.root? %>
4
-
5
- <% if Alchemy::Node.respond_to? :available_menu_names %>
6
- <%= f.input :name,
7
- collection: Alchemy::Node.available_menu_names.map { |n| [I18n.t(n, scope: [:alchemy, :menu_names]), n] },
8
- include_blank: false,
9
- input_html: {class: 'alchemy_selectbox'} %>
8
+ <% else %>
9
+ <% if node.root? %>
10
+ <%= f.input :name %>
10
11
  <% else %>
11
12
  <%= f.input :name, input_html: {
12
- autofocus: true,
13
- value: node.page && node.read_attribute(:name).blank? ? nil : node.name,
14
- placeholder: node.page ? node.page.name : nil
15
- } %>
16
- <% end %>
17
-
18
- <% else %>
19
-
20
- <%= f.input :name, as: :string, input_html: {
21
13
  autofocus: true,
22
14
  value: node.page && node.read_attribute(:name).blank? ? nil : node.name,
23
15
  placeholder: node.page ? node.page.name : nil
24
- } %>
25
-
26
- <%
27
- active_klass = (node.errors.keys.include? :custom_model_klass or
16
+ } %>
17
+ <%
18
+ active_klass = (node.errors.keys.include? :custom_model_klass or
28
19
  node.custom_model?) ? "ui-tabs-active" : ""
29
- %>
20
+ %>
21
+
22
+ <div class="container_selctor_age_custom_model">
23
+ <div id="tabs_nodes" class="ui-tabs ui-corner-all ui-widget ui-widget-content">
24
+ <ul role="tablist" class="ui-tabs-nav ui-corner-all ui-helper-reset ui-helper-clearfix ui-widget-header">
25
+ <li role="tab" tabindex="0" class="ui-tabs-tab ui-corner-top ui-state-default ui-tab">
26
+ <a href="#pages" role="presentation" tabindex="-1" class="ui-tabs-anchor" id="ui-id-1">
27
+ <%= Alchemy.t(:pages_select) %>
28
+ </a>
29
+ </li>
30
+ <li role="tab" tabindex="1" class="ui-tabs-tab ui-corner-top ui-tab <%= active_klass %>">
31
+ <a href="#custom_models" role="presentation" tabindex="1" class="ui-tabs-anchor" id="ui-id-2">
32
+ <%= Alchemy.t(:custom_models) %>
33
+ </a>
34
+ </li>
35
+ </ul>
36
+ <div id="custom_models" aria-labelledby="legacy_urls_label" role="tabpanel" class="ui-tabs-panel ui-corner-bottom ui-widget-content" aria-hidden="false">
37
+ <%= f.input :custom_model_klass, input_html: {class: 'alchemy_selectbox'} %>
38
+ <%= f.input :custom_model_method, input_html: {class: 'alchemy_selectbox'} %>
39
+ </div>
40
+ <div id="pages" aria-labelledby="ui-id-1" role="tabpanel" class="ui-tabs-panel ui-corner-bottom ui-widget-content" aria-hidden="false">
41
+ <%= f.input :page_id, label: Alchemy::Page.model_name.human, input_html: {class: 'alchemy_selectbox'} %>
42
+ <%= f.input :url, input_html: {disabled: node.page}, hint: Alchemy.t(:node_url_hint) %>
43
+ <%= f.input :title %>
44
+ <%= f.input :nofollow %>
45
+ <%= f.input :external %>
46
+ <%= f.hidden_field :parent_id %>
47
+ </div>
30
48
 
31
- <div class="container_selctor_age_custom_model">
32
- <div id="tabs_nodes" class="ui-tabs ui-corner-all ui-widget ui-widget-content">
33
- <ul role="tablist" class="ui-tabs-nav ui-corner-all ui-helper-reset ui-helper-clearfix ui-widget-header">
34
- <li role="tab" tabindex="0" class="ui-tabs-tab ui-corner-top ui-state-default ui-tab">
35
- <a href="#pages" role="presentation" tabindex="-1" class="ui-tabs-anchor" id="ui-id-1">
36
- <%= Alchemy.t(:pages_select) %>
37
- </a>
38
- </li>
39
- <li role="tab" tabindex="1" class="ui-tabs-tab ui-corner-top ui-tab <%= active_klass %>">
40
- <a href="#custom_models" role="presentation" tabindex="1" class="ui-tabs-anchor" id="ui-id-2">
41
- <%= Alchemy.t(:custom_models) %>
42
- </a>
43
- </li>
44
- </ul>
45
- <div id="custom_models" aria-labelledby="legacy_urls_label" role="tabpanel" class="ui-tabs-panel ui-corner-bottom ui-widget-content" aria-hidden="false">
46
- <%= f.input :custom_model_klass, input_html: {class: 'alchemy_selectbox'} %>
47
- <%= f.input :custom_model_method, input_html: {class: 'alchemy_selectbox'} %>
48
- </div>
49
- <div id="pages" aria-labelledby="ui-id-1" role="tabpanel" class="ui-tabs-panel ui-corner-bottom ui-widget-content" aria-hidden="false">
50
- <%= f.input :page_id, label: Alchemy::Page.model_name.human, input_html: {class: 'alchemy_selectbox'} %>
51
- <%= f.input :url, input_html: {disabled: node.page}, hint: Alchemy.t(:node_url_hint) %>
52
- <%= f.input :title %>
53
- <%= f.input :nofollow %>
54
- <%= f.input :external %>
55
- <%= f.hidden_field :parent_id %>
56
49
  </div>
57
-
58
50
  </div>
59
- </div>
60
-
61
-
62
-
63
-
64
51
 
65
-
66
- <% end %>
67
- <% if node.respond_to? :site_id %>
68
- <%= f.hidden_field :site_id %>
69
- <% end %>
70
- <% if node.respond_to? :language_id %>
71
- <%= f.hidden_field :language_id %>
52
+ <% end %>
72
53
  <% end %>
54
+ <%= f.hidden_field :language_id %>
73
55
  <%= f.submit button_label %>
74
56
  <% end %>
75
57
 
@@ -102,7 +84,6 @@
102
84
 
103
85
  })
104
86
 
105
- $('#node_custom_model_method').select2('disable');
106
87
 
107
88
  $('#node_page_id').alchemyPageSelect({
108
89
  placeholder: "<%= Alchemy.t(:search_page) %>",
@@ -111,16 +92,16 @@
111
92
  initialSelection: {
112
93
  id: <%= node.page_id %>,
113
94
  text: "<%= node.page.name %>",
114
- url: "/<%= node.page.urlname %>"
95
+ url_path: "<%= node.page.url_path %>"
115
96
  }
116
97
  <% end %>
117
- }).on('change', function (e) {
98
+ }).on('change', function(e) {
118
99
  if (e.val === '') {
119
100
  $('#node_name').removeAttr('placeholder')
120
101
  $('#node_url').val('').prop('disabled', false)
121
102
  } else {
122
103
  $('#node_name').attr('placeholder', e.added.name)
123
- $('#node_url').val('/' + e.added.urlname).prop('disabled', true)
104
+ $('#node_url').val(e.added.url_path).prop('disabled', true)
124
105
  }
125
106
  })
126
107
  </script>
@@ -31,22 +31,22 @@
31
31
  }
32
32
  end
33
33
 
34
- if can?(:export_csv, base_class) and check_presence_polymorphic_path([:export_csv, :admin, base_class.to_s.demodulize.pluralize.underscore ], :get, format: :csv)
34
+ if can?(:export_csv, base_class) and check_presence_polymorphic_path([:export_csv, :admin, base_class.to_s.demodulize.pluralize.underscore.to_sym ], :get, format: :csv)
35
35
  buttons << {
36
36
  icon: "download",
37
37
  label: t(:export_selected_data),
38
- url: polymorphic_path([:export_csv, :admin, base_class.to_s.demodulize.pluralize.underscore], {format: :csv}.merge(request.query_parameters) ),
38
+ url: polymorphic_path([:export_csv, :admin, base_class.to_s.demodulize.pluralize.underscore.to_sym], {format: :csv}.merge(request.query_parameters) ),
39
39
  title: t(:export_selected_data),
40
40
  dialog: false,
41
41
  if_permitted_to: [:export_csv, base_class]
42
42
  }
43
43
  end
44
44
 
45
- if can?(:export_csv_full, base_class) and check_presence_polymorphic_path([:export_csv_full, :admin, base_class.to_s.demodulize.pluralize.underscore ], :get, format: :csv)
45
+ if can?(:export_csv_full, base_class) and check_presence_polymorphic_path([:export_csv_full, :admin, base_class.to_s.demodulize.pluralize.underscore.to_sym ], :get, format: :csv)
46
46
  buttons << {
47
47
  icon: "file-archive",
48
48
  label: t(:export_all_data),
49
- url: polymorphic_path([:export_csv_full, :admin, base_class.to_s.demodulize.pluralize.underscore],format: :csv),
49
+ url: polymorphic_path([:export_csv_full, :admin, base_class.to_s.demodulize.pluralize.underscore.to_sym],format: :csv),
50
50
  title: t(:export_all_data),
51
51
  dialog: false,
52
52
  if_permitted_to: [:export_csv_full, base_class]
@@ -1,7 +1,7 @@
1
1
  module Alchemy
2
2
  module Custom
3
3
  module Model
4
- VERSION = '3.0.0'
4
+ VERSION = '3.1.3'
5
5
  end
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alchemy-custom-model
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0
4
+ version: 3.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alessandro Baccanelli
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2021-04-29 00:00:00.000000000 Z
12
+ date: 2021-07-14 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: alchemy_cms