Commit bc3bb546b0bf68fccfa954cde661ec1a6ca2e63c

Authored by David Silva
1 parent 26bdc8a5
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

Create transaction method and use it with diferent models.

Signed-off-by: David Carlos <ddavidcarlos1392@gmail.com>
Showing 1 changed file with 13 additions and 38 deletions   Show diff stats
lib/mpog_software_plugin.rb
@@ -33,45 +33,16 @@ class MpogSoftwarePlugin &lt; Noosfero::Plugin @@ -33,45 +33,16 @@ class MpogSoftwarePlugin &lt; Noosfero::Plugin
33 end 33 end
34 34
35 def profile_editor_transaction_extras 35 def profile_editor_transaction_extras
36 - if context.profile.respond_to?(:software_info)  
37 - if context.params.has_key?(:software_info)  
38 - software_info_transaction 36 + single_hash_transactions = {:user => "user", :software_info => "software_info",
  37 + :version => "license", :language => "language",
  38 + :operating_system => "operating_system",
  39 + :software_categories => "software_categories",
  40 + :instituton => "instituton", :library => "libraries"}
  41 +
  42 + single_hash_transactions.each do |model,transaction|
  43 + call_model_transaction(model,transaction)
39 end 44 end
40 -  
41 - if context.params.has_key?(:library)  
42 - libraries_transaction  
43 - end  
44 -  
45 - if context.params.has_key?(:version)  
46 - license_transaction  
47 - end  
48 -  
49 - if context.params.has_key?(:language)  
50 - language_transaction  
51 - end  
52 -  
53 - if context.params.has_key?(:database)  
54 - databases_transaction  
55 - end  
56 -  
57 - if context.params.has_key?(:operating_system)  
58 - operating_system_transaction  
59 - end  
60 - if context.params.has_key?(:institution) ||  
61 - context.params.has_key?(:governmental_power) ||  
62 - context.params.has_key?(:governmental_sphere)  
63 -  
64 - institution_transaction  
65 - end  
66 -  
67 - if context.params.has_key?(:software_categories)  
68 - software_categories_transaction  
69 - end  
70 - elsif context.profile.respond_to?(:user)  
71 - if context.params.has_key?(:user)  
72 - user_transaction  
73 - end  
74 - end 45 +
75 end 46 end
76 47
77 def profile_editor_controller_filters 48 def profile_editor_controller_filters
@@ -480,4 +451,8 @@ class MpogSoftwarePlugin &lt; Noosfero::Plugin @@ -480,4 +451,8 @@ class MpogSoftwarePlugin &lt; Noosfero::Plugin
480 current_person = User.find(context.session[:user]).person 451 current_person = User.find(context.session[:user]).person
481 context.environment.admins.include?(current_person) 452 context.environment.admins.include?(current_person)
482 end 453 end
  454 +
  455 + def call_model_transaction(model,name)
  456 + send(name + '_transaction') if context.params.has_key?(model.to_sym)
  457 + end
483 end 458 end