From 2de9cb34b6729055c3c782d2157b4bbf665c5bad Mon Sep 17 00:00:00 2001 From: Tallys Martins Date: Thu, 7 Jan 2016 14:50:39 -0200 Subject: [PATCH] Improvements on task that creates discussion list --- src/noosfero-spb/software_communities/lib/tasks/templates.rake | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/noosfero-spb/software_communities/lib/tasks/templates.rake b/src/noosfero-spb/software_communities/lib/tasks/templates.rake index 6defaed..a4940ee 100644 --- a/src/noosfero-spb/software_communities/lib/tasks/templates.rake +++ b/src/noosfero-spb/software_communities/lib/tasks/templates.rake @@ -41,21 +41,25 @@ namespace :templates do desc "Copy mail list article from template to all Communities" task :copy_mail_article => :environment do + env = Environment.find_by_name("SPB") || Environment.default article = Profile['software'].articles.find_by_slug('como-participar-da-lista-de-discussao') - puts "Copying article #{article.title}: " + Article.connection.execute("DELETE FROM articles WHERE slug='como-participar-da-lista-de-discussao' AND id NOT IN (#{article.id})") + puts "Copying article #{article.title}: " if article.present? if article.present? - SoftwareInfo.find_each do |software| - community = software.community + env.communities.find_each do |community| + next unless community.software? a_copy = community.articles.find_by_slug('como-participar-da-lista-de-discussao') || article.copy_without_save - a_copy.profile = software.community - a_copy.save if a_copy.profile.present? + a_copy.profile = community + a_copy.save box = community.boxes.detect {|x| x.blocks.find_by_title("Participe") } if community.present? block = box.blocks.find_by_title("Participe") if box.present? - link = block.links.detect { |l| l["name"] == "Lista de E-mails" } if block.present? + link = block.links.detect { |l| l["name"] == "Listas de discussão" } if block.present? link["address"] = "/{profile}/#{a_copy.path}" if link.present? block.save if block.present? print "." end + else + puts "Article not found" end end end -- libgit2 0.21.2