Commit 9aa9bc85ac1a342539baaa0b892dddc04ec154b8

Authored by Gabriela Navarro
1 parent 8482deba
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

Add fields to percentage calculation

Signed-off-by: Gabriela Navarro <navarro1703@gmail.com>
Signed-off-by: Gustavo Jaruga <darksshades@gmail.com>
lib/mpog_software_plugin.rb
@@ -258,8 +258,8 @@ class MpogSoftwarePlugin &lt; Noosfero::Plugin @@ -258,8 +258,8 @@ class MpogSoftwarePlugin &lt; Noosfero::Plugin
258 def calc_percentage_registration person 258 def calc_percentage_registration person
259 required_list = profile_required_list 259 required_list = profile_required_list
260 empty_fields = profile_required_empty_list person 260 empty_fields = profile_required_empty_list person
261 -  
262 - percentege = 100 - ((empty_fields.count*100)/required_list.count) 261 + count = required_list[:person_fields].count + required_list[:user_fields].count
  262 + percentege = 100 - ((empty_fields.count*100)/count)
263 person.percentage_incomplete = percentege 263 person.percentage_incomplete = percentege
264 person.save(validate: false) 264 person.save(validate: false)
265 percentege 265 percentege
@@ -275,18 +275,26 @@ class MpogSoftwarePlugin &lt; Noosfero::Plugin @@ -275,18 +275,26 @@ class MpogSoftwarePlugin &lt; Noosfero::Plugin
275 end 275 end
276 276
277 def profile_required_list 277 def profile_required_list
278 - ["cell_phone","contact_phone","comercial_phone","country","city","state","organization_website","image"] 278 + fields = Hash.new
  279 + fields[:person_fields] = ["cell_phone","contact_phone","comercial_phone","country","city","state","organization_website", "image", "identifier", "name"]
  280 + fields[:user_fields] = ["secondary_email", "email"]
  281 + fields
279 end 282 end
280 283
281 def profile_required_empty_list person 284 def profile_required_empty_list person
282 empty_fields = [] 285 empty_fields = []
283 required_list = profile_required_list 286 required_list = profile_required_list
284 287
285 - required_list.each do |field| 288 + required_list[:person_fields].each do |field|
286 if person.send(field).blank? 289 if person.send(field).blank?
287 empty_fields << field.sub("_"," ") 290 empty_fields << field.sub("_"," ")
288 end 291 end
289 end 292 end
  293 + required_list[:user_fields].each do |field|
  294 + if person.user.send(field).blank?
  295 + empty_fields << field.sub("_"," ")
  296 + end
  297 + end
290 empty_fields 298 empty_fields
291 end 299 end
292 300
test/unit/mpog_software_plugin_test.rb
@@ -22,10 +22,12 @@ class MpogSoftwarePluginTest &lt; ActiveSupport::TestCase @@ -22,10 +22,12 @@ class MpogSoftwarePluginTest &lt; ActiveSupport::TestCase
22 @person.cell_phone = "76888919" 22 @person.cell_phone = "76888919"
23 @person.contact_phone = "987654321" 23 @person.contact_phone = "987654321"
24 24
25 - assert_equal(50, @plugin.calc_percentage_registration(@person)) 25 + assert_equal(67, @plugin.calc_percentage_registration(@person))
26 26
27 @person.comercial_phone = "11223344" 27 @person.comercial_phone = "11223344"
28 @person.country = "I dont know" 28 @person.country = "I dont know"
  29 + @person.state = "I dont know"
  30 + @person.city = "I dont know"
29 @person.organization_website = "www.whatever.com" 31 @person.organization_website = "www.whatever.com"
30 @person.image = Image::new :uploaded_data=>fixture_file_upload('/files/rails.png', 'image/png') 32 @person.image = Image::new :uploaded_data=>fixture_file_upload('/files/rails.png', 'image/png')
31 @person.save 33 @person.save