Skip to content
Snippets Groups Projects
Commit 9ddcfc7b authored by Arnaud Levy's avatar Arnaud Levy
Browse files

merge

parent 62fae481
No related branches found
No related tags found
No related merge requests found
......@@ -107,6 +107,8 @@ module Communication::Website::WithConnectedObjects
# On ne connecte pas le site à lui-même
!indirect_object.is_a?(Communication::Website) &&
# On ne connecte pas les objets directs (en principe ça n'arrive pas)
!indirect_object.try(:is_direct_object?)
!indirect_object.try(:is_direct_object?) &&
# On ne connecte pas des objets qui ne sont pas issus de modèles ActiveRecord (comme les composants des blocs)
indirect_object.is_a?(ActiveRecord::Base)
end
end
\ No newline at end of file
......@@ -54,6 +54,8 @@ module AsIndirectObject
protected
def direct_sources_from_reference(reference)
# Early-return to ignore contexts without connections (ex: extranets)
return [] unless reference.respond_to?(:is_direct_object?)
reference.is_direct_object? ? [reference] # Récupération de la connexion directe
: reference.direct_sources_from_existing_connections # Récupération via les connexions des références
end
......
......@@ -10,16 +10,7 @@ namespace :app do
task fix: :environment do
ContentMigration.run
Communication::Website.find_each do |website|
# Rebuild connections
website.pages.find_each(&:connect_dependencies)
website.posts.find_each(&:connect_dependencies)
website.categories.find_each(&:connect_dependencies)
website.menus.find_each(&:connect_dependencies)
website.connect(website.about, website) if website.about.present?
website.destroy_obsolete_connections
website.sync_with_git
website.destroy_obsolete_git_files
MigrateWebsiteConnectionsJob.perform_later(website.id)
end
end
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment