diff --git a/src/noosfero-spb/software_communities/lib/tasks/import_sisp_software.rake b/src/noosfero-spb/software_communities/lib/tasks/import_sisp_software.rake index e860883..b26f380 100755 --- a/src/noosfero-spb/software_communities/lib/tasks/import_sisp_software.rake +++ b/src/noosfero-spb/software_communities/lib/tasks/import_sisp_software.rake @@ -46,6 +46,8 @@ namespace :software do sw.save! print '.' else + sw.community.destroy + sw.destroy puts sw.errors.full_messages print 'F' end @@ -79,6 +81,11 @@ end def create_software_info name, finality = "blank", acronym = "" community = create_community(name) + + if community.software? + return community.software_info + end + software_info = SoftwareInfo.new software_info.community = community software_info.finality = finality @@ -90,7 +97,7 @@ end def set_software_category software, category_name category = Category.find_by_name(category_name) category ||= Category.create(:name => category_name, :parent => $software_category, :environment => $env) - software.community.categories << category + software.community.categories << category unless software.community.categories.include?(category) end def set_sisp_hashes software, sisp_hash -- libgit2 0.21.2