alchemy_cms 4.4.2 → 4.4.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: ae4ec24167d52bce7dd695bff45480caea2bdc319b2ade53f0ce1e1765c8f2ec
4
- data.tar.gz: fea9390ea760a741269c9115c41090bfd0052705bbb161cb110295a390f84343
3
+ metadata.gz: 9af617bbf653eb9e5c293217f9dfc90060aaa22da0b306f0320c4da5858fbb9c
4
+ data.tar.gz: 405d140847ff533931bc8e759fc2cd1ae934ca0c856fe4e27cf346426f950867
5
5
  SHA512:
6
- metadata.gz: 5e2b632ebbc2222d6664d0b9e315d978df3840968e90570da00f89226427aa21465ac7fb17f350a21e976f928a84ec32b6476c4cd769791fdfc7ad774456c32b
7
- data.tar.gz: 74f98bf1fdf3301ae10af181414c49819945ba10b41abf5a0f993fb00606aa866e7fd4ae1c8a15b1808e2e3734e94d5954a889836f043f66d77ace3e71d1f395
6
+ metadata.gz: af4468b1a30d64e3ddbaad1aaeacd20f65b417651a23768ee6196348d9a9f0bb34734a9800fc5d236dc88e6ab4e6f50ba0e40c7baea490de5d97383b501bfdca
7
+ data.tar.gz: 88f2e7796ef2bd46b9cde670f0acd6f14e664bea97bc0170c607258c62cfd114aa8474754e7f5223e86b86cd58c09b1a9c9fc27da3aa118b90b60fb85d3a8cf4
@@ -1,5 +1,9 @@
1
1
  ## 5.0.0 (unreleased)
2
2
 
3
+ ## 4.4.3 (2020-02-26)
4
+
5
+ - Scope nodes to sites [#1738](https://github.com/AlchemyCMS/alchemy_cms/pull/1738) ([tvdeyen](https://github.com/tvdeyen))
6
+
3
7
  ## 4.4.2 (2020-02-25)
4
8
 
5
9
  - Do not use deprecated methods [#1737](https://github.com/AlchemyCMS/alchemy_cms/pull/1737) ([tvdeyen](https://github.com/tvdeyen))
@@ -9,6 +9,7 @@ module Alchemy
9
9
 
10
10
  def new
11
11
  @node = Node.new(
12
+ site: Alchemy::Site.current,
12
13
  parent_id: params[:parent_id],
13
14
  language: Language.current
14
15
  )
@@ -28,6 +29,7 @@ module Alchemy
28
29
 
29
30
  def resource_params
30
31
  params.require(:node).permit(
32
+ :site_id,
31
33
  :parent_id,
32
34
  :language_id,
33
35
  :page_id,
@@ -188,7 +188,7 @@ module Alchemy
188
188
  # @param [String] - Name of the menu
189
189
  # @param [Hash] - A set of options available in your menu partials
190
190
  def render_menu(name, options = {})
191
- root_node = Alchemy::Node.roots.find_by(name: name)
191
+ root_node = Alchemy::Node.roots.find_by(name: name, site: Alchemy::Site.current)
192
192
  if root_node.nil?
193
193
  warning("Menu with name #{name} not found!")
194
194
  return
@@ -7,6 +7,7 @@ module Alchemy
7
7
  acts_as_nested_set scope: 'language_id', touch: true
8
8
  stampable stamper_class_name: Alchemy.user_class_name
9
9
 
10
+ belongs_to :site, class_name: 'Alchemy::Site'
10
11
  belongs_to :language, class_name: 'Alchemy::Language'
11
12
  belongs_to :page, class_name: 'Alchemy::Page', optional: true, inverse_of: :nodes
12
13
 
@@ -594,7 +594,10 @@ module Alchemy
594
594
  end
595
595
 
596
596
  def attach_to_menu!
597
- Alchemy::Node.find(menu_id).children.create!(
597
+ current_site_id = Alchemy::Site.current.id
598
+ node = Alchemy::Node.find_by!(id: menu_id, site_id: current_site_id)
599
+ node.children.create!(
600
+ site_id: current_site_id,
598
601
  language_id: language_id,
599
602
  page_id: id,
600
603
  name: name
@@ -12,6 +12,7 @@
12
12
  <%= f.input :external %>
13
13
  <%= f.hidden_field :parent_id %>
14
14
  <% end %>
15
+ <%= f.hidden_field :site_id %>
15
16
  <%= f.hidden_field :language_id %>
16
17
  <%= f.submit button_label %>
17
18
  <% end %>
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ class AddSiteIdToAlchemyNodes < ActiveRecord::Migration[5.0]
4
+ def change
5
+ add_column :alchemy_nodes, :site_id, :integer, index: true
6
+ add_index :alchemy_nodes, :site_id
7
+ reversible do |dir|
8
+ dir.up do
9
+ Alchemy::Node.update_all(site_id: Alchemy::Site.first&.id)
10
+ change_column_null :alchemy_nodes, :site_id, false
11
+ end
12
+ end
13
+ add_foreign_key :alchemy_nodes, :alchemy_sites, column: :site_id, on_delete: :cascade
14
+ end
15
+ end
@@ -6,6 +6,7 @@ require 'alchemy/test_support/factories/page_factory'
6
6
 
7
7
  FactoryBot.define do
8
8
  factory :alchemy_node, class: 'Alchemy::Node' do
9
+ site { Alchemy::Site.default }
9
10
  language { Alchemy::Language.default }
10
11
  name { 'A Node' }
11
12
 
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Alchemy
4
- VERSION = "4.4.2"
4
+ VERSION = "4.4.3"
5
5
 
6
6
  def self.version
7
7
  VERSION
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alchemy_cms
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.4.2
4
+ version: 4.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas von Deyen
@@ -13,7 +13,7 @@ authors:
13
13
  autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
- date: 2020-02-25 00:00:00.000000000 Z
16
+ date: 2020-02-26 00:00:00.000000000 Z
17
17
  dependencies:
18
18
  - !ruby/object:Gem::Dependency
19
19
  name: active_model_serializers
@@ -1024,6 +1024,7 @@ files:
1024
1024
  - db/migrate/20180519204655_add_fixed_to_alchemy_elements.rb
1025
1025
  - db/migrate/20191016073858_create_alchemy_essence_pages.rb
1026
1026
  - db/migrate/20191029212236_create_alchemy_nodes.rb
1027
+ - db/migrate/20200226081535_add_site_id_to_alchemy_nodes.rb
1027
1028
  - lib/alchemy/ability_helper.rb
1028
1029
  - lib/alchemy/admin/locale.rb
1029
1030
  - lib/alchemy/auth_accessors.rb