Commit 92cac97486903f0ec0b0f1757c86e5ab75648216

Authored by Fabio Teixeira
1 parent e8043011
Exists in master and in 79 other branches add_sisp_to_chef, add_super_archives_plugin, api_for_colab, automates_core_packing, backup_not_prod, changes_in_buttons_on_content_panel, colab_automated_login, colab_spb_plugin_recipe, colab_widgets_settings, design_validation, dev_env_minimal, disable_email_dev, fix_breadcrumbs_position, fix_categories_software_link, fix_edit_institution, fix_edit_software_with_another_license, fix_get_license_info, fix_gitlab_assets_permission, fix_list_style_inside_article, fix_list_style_on_folder_elements, fix_members_pagination, fix_merge_request_url, fix_models_translations, fix_no_license, fix_software_api, fix_software_block_migration, fix_software_communities_translations, fix_software_communities_unit_test, fix_style_create_institution_admin_panel, fix_superarchives_imports, fix_sym_links_noosfero, focus_search_field_theme, gov-user-refactoring, gov-user-refactoring-rails4, header_fix, institution_modal_on_rating, kalibro-conf-refactoring, kalibro-processor-package, lxc_settings, margin_fix, mezuro_cookbook, prezento, refactor_download_block, refactor_software_communities, refactor_software_for_sisp, register_page, release-process, release-process-v2, remove-unused-images, remove_broken_theme, remove_secondary_email_from_user, remove_sisp_buttons, removing_super_archives_email, review_message, scope2method, signals_user_noosfero, sisp_catalog_header, sisp_colab_config, sisp_dev, sisp_dev_master, sisp_simple_version, software_as_organization, software_catalog_style_fix, software_communities_html_refactor, software_infos_api, spb_minimal_env, spb_to_rails4, spec_refactor, stable-4.1, stable-4.2, stable-4.x, temp_soft_comm_refactoring, theme_header, theme_javascript_refactory, thread_dropdown, thread_page, update_search_by_categories, update_software_api, update_softwares_boxes

verify_tests(BUG): Create software after admin approves

Signed-off-by: Fabio Teixeira <fabio1079@gmail.com>
Signed-off-by: Luiz Matos <luizff.matos@gmail.com>
lib/ext/community.rb
... ... @@ -9,23 +9,23 @@ class Community
9 9  
10 10 def self.create_after_moderation(requestor, attributes = {}, software_info = nil, license_info = nil, controlled_vocabulary = nil)
11 11 community = Community.new(attributes)
12   - if community.environment.enabled?('admin_must_approve_new_communities')
13   - CreateCommunity.create(attributes.merge(:requestor => requestor))
14   - else
15   - community = Community.create(attributes)
16 12  
17   - if not software_info.nil?
18   - if not license_info.nil?
19   - software_info.license_info = license_info
20   - end
21   -
22   - if not controlled_vocabulary.nil?
23   - software_info.controlled_vocabulary = controlled_vocabulary
24   - end
  13 + if not software_info.nil?
  14 + if not license_info.nil?
  15 + software_info.license_info = license_info
  16 + end
25 17  
26   - community.software_info = software_info
  18 + if not controlled_vocabulary.nil?
  19 + software_info.controlled_vocabulary = controlled_vocabulary
27 20 end
  21 + software_info.save
  22 + end
28 23  
  24 + if community.environment.enabled?('admin_must_approve_new_communities')
  25 + cc = CreateCommunity.create(attributes.merge(:requestor => requestor, :software_info=>software_info))
  26 + else
  27 + community = Community.create(attributes)
  28 + community.software_info = software_info
29 29 community.add_admin(requestor)
30 30 end
31 31 community
... ...
lib/ext/create_community.rb 0 → 100644
... ... @@ -0,0 +1,20 @@
  1 +require_dependency 'create_community'
  2 +
  3 +class CreateCommunity
  4 + settings_items :software_info
  5 + attr_accessible :software_info, :environment, :name, :closed, :template_id, :requestor, :reject_explanation, :target, :image_builder
  6 +
  7 + def perform
  8 + community = Community.new
  9 + community_data = self.data.reject do |key, value|
  10 + ! DATA_FIELDS.include?(key.to_s)
  11 + end
  12 +
  13 + community.update_attributes(community_data)
  14 + community.image = image if image
  15 + community.environment = self.environment
  16 + community.software_info = self.software_info
  17 + community.save!
  18 + community.add_admin(self.requestor)
  19 + end
  20 +end
0 21 \ No newline at end of file
... ...