From 5db7f142fcd5022dbcc3ddee087b69c3551b05a6 Mon Sep 17 00:00:00 2001 From: Gabriela Navarro Date: Mon, 13 Apr 2015 19:46:26 +0000 Subject: [PATCH] Fix javascript for modal institution. --- features/institution_registration.feature | 6 +++--- features/steps_definitions/gov_user_steps.rb | 23 +++++++++++++++++++++++ features/user_profile_edition.feature | 8 ++++++++ lib/gov_user_plugin.rb | 6 ++++-- public/initializer.js | 8 +++++--- public/views/complete-registration.js | 2 +- public/views/create-institution.js | 13 +++++++------ public/views/user-edit-profile.js | 16 ++++++++-------- 8 files changed, 59 insertions(+), 23 deletions(-) diff --git a/features/institution_registration.feature b/features/institution_registration.feature index 086b14e..c1fbb4e 100644 --- a/features/institution_registration.feature +++ b/features/institution_registration.feature @@ -4,10 +4,10 @@ Feature: Institution Field So others users can use it Background: - Given "SoftwareCommunitiesPlugin" plugin is enabled + Given "GovUserPlugin" plugin is enabled And I am logged in as mpog_admin And I go to /admin/plugins - And I check "SoftwareCommunitiesPlugin" + And I check "GovUserPlugin" And I press "Save changes" And Institutions has initial default values on database And I am logged in as mpog_admin @@ -29,4 +29,4 @@ Feature: Institution Field And I choose "Public Institution" Then I should see "Governmental Sphere:" And I should see "Governmental Power:" - And I should see "Juridical Nature:" \ No newline at end of file + And I should see "Juridical Nature:" diff --git a/features/steps_definitions/gov_user_steps.rb b/features/steps_definitions/gov_user_steps.rb index 6609f8d..78bf984 100644 --- a/features/steps_definitions/gov_user_steps.rb +++ b/features/steps_definitions/gov_user_steps.rb @@ -21,6 +21,29 @@ Given /^Institutions has initial default values on database$/ do national_region.save end +Given /^I type in "([^"]*)" in autocomplete list "([^"]*)" and I choose "([^"]*)"$/ do |typed, input_field_selector, should_select| +# Wait the page javascript load +sleep 1 +# Basicaly it, search for the input field, type something, wait for ajax end select an item +page.driver.browser.execute_script %Q{ + var search_query = "#{input_field_selector}.ui-autocomplete-input"; + var input = jQuery(search_query).first(); + + input.trigger('click'); + input.val('#{typed}'); + input.trigger('keydown'); + + window.setTimeout(function(){ + search_query = ".ui-menu-item a:contains('#{should_select}')"; + var typed = jQuery(search_query).first(); + + typed.trigger('mouseenter').trigger('click'); + console.log(jQuery('#license_info_id')); + }, 1000); + } + sleep 1 +end + Given /^the following public institutions?$/ do |table| # table is a Cucumber::Ast::Table diff --git a/features/user_profile_edition.feature b/features/user_profile_edition.feature index 3d9f060..3866734 100644 --- a/features/user_profile_edition.feature +++ b/features/user_profile_edition.feature @@ -15,6 +15,14 @@ Feature: Institution Field And I check "person_fields_state_active" And I check "person_fields_city_active" And I press "Save changes" + And Institutions has initial default values on database + And the following public institutions + | name | acronym | country | state | city | cnpj | juridical_nature | governmental_power | governmental_sphere | corporate_name | + | Ministerio das Cidades | MC | BR | DF | Gama | 58.745.189/0001-21 | Autarquia | Executivo | Federal | Ministerio das Cidades | + | Governo do DF | GDF | BR | DF | Taguatinga | 12.645.166/0001-44 | Autarquia | Legislativo | Federal | Governo do DF | + | Ministerio do Planejamento | MP | BR | DF | Brasilia | 41.769.591/0001-43 | Autarquia | Judiciario | Federal | Ministerio do Planejamento | + And I am logged in as mpog_admin + And I am logged in as mpog_admin Scenario: Go to control panel when clicked on 'Complete your profile' link diff --git a/lib/gov_user_plugin.rb b/lib/gov_user_plugin.rb index 1dc5bbb..22e3640 100644 --- a/lib/gov_user_plugin.rb +++ b/lib/gov_user_plugin.rb @@ -125,13 +125,15 @@ class GovUserPlugin < Noosfero::Plugin vendor/modulejs-1.5.0.min.js vendor/jquery.js lib/noosfero-root.js + lib/select-element.js + lib/select-field-choices.js views/complete-registration.js - initializer.js - app.js views/control-panel.js views/create-institution.js views/new-community.js views/user-edit-profile.js + initializer.js + app.js ) end diff --git a/public/initializer.js b/public/initializer.js index 0bbc0d2..2b5ac3d 100644 --- a/public/initializer.js +++ b/public/initializer.js @@ -2,9 +2,11 @@ 'use strict'; var dependencies = [ - 'CompleteRegistration', - 'UserEditProfile', - 'CreateInstitution' + 'ControlPanel', + 'CreateInstitution', + 'CompleteRegistration', + 'UserEditProfile', + 'NewCommunity' ]; diff --git a/public/views/complete-registration.js b/public/views/complete-registration.js index 6293cc0..81dd745 100644 --- a/public/views/complete-registration.js +++ b/public/views/complete-registration.js @@ -4,7 +4,7 @@ modulejs.define('CompleteRegistration', ['jquery', 'NoosferoRoot'], function($, var AJAX_URL = { hide_registration_incomplete_percentage: - NoosferoRoot.urlWithSubDirectory("/plugin/software_communities/hide_registration_incomplete_percentage") + NoosferoRoot.urlWithSubDirectory("/plugin/gov_user/hide_registration_incomplete_percentage") }; diff --git a/public/views/create-institution.js b/public/views/create-institution.js index f909bc4..4a58871 100644 --- a/public/views/create-institution.js +++ b/public/views/create-institution.js @@ -3,13 +3,13 @@ modulejs.define('CreateInstitution', ['jquery', 'NoosferoRoot', 'SelectElement'] var AJAX_URL = { create_institution_modal: - NoosferoRoot.urlWithSubDirectory("/plugin/software_communities/create_institution"), + NoosferoRoot.urlWithSubDirectory("/plugin/gov_user/create_institution"), new_institution: - NoosferoRoot.urlWithSubDirectory("/plugin/software_communities/new_institution"), + NoosferoRoot.urlWithSubDirectory("/plugin/gov_user/new_institution"), institution_already_exists: - NoosferoRoot.urlWithSubDirectory("/plugin/software_communities/institution_already_exists"), + NoosferoRoot.urlWithSubDirectory("/plugin/gov_user/institution_already_exists"), get_institutions: - NoosferoRoot.urlWithSubDirectory("/plugin/software_communities/get_institutions") + NoosferoRoot.urlWithSubDirectory("/plugin/gov_user/get_institutions") }; @@ -43,7 +43,6 @@ modulejs.define('CreateInstitution', ['jquery', 'NoosferoRoot', 'SelectElement'] function show_private_institutions_fields() { $(".public-institutions-fields").hide(); - $("#institutions_governmental_power option").selected(0); $("#institutions_governmental_sphere option").selected(0); } @@ -188,6 +187,8 @@ modulejs.define('CreateInstitution', ['jquery', 'NoosferoRoot', 'SelectElement'] function add_new_institution(evt) { + (" JAJAjAjAJAJaJ ADD NEW INST") + evt.preventDefault(); var selected = $("#institution_selected"); var institution_already_added = $(".institutions_added li[data-institution='"+selected.val()+"']").length; @@ -218,7 +219,7 @@ modulejs.define('CreateInstitution', ['jquery', 'NoosferoRoot', 'SelectElement'] function add_mask_to_form_items() { - $(".intitution_cnpj_field").mask("99.999.999/9999-99"); +// $(".intitution_cnpj_field").mask("99.999.999/9999-99"); } diff --git a/public/views/user-edit-profile.js b/public/views/user-edit-profile.js index 2bd7914..c92c987 100644 --- a/public/views/user-edit-profile.js +++ b/public/views/user-edit-profile.js @@ -23,7 +23,7 @@ modulejs.define('UserEditProfile', ['jquery', 'SelectElement', 'SelectFieldChoic function show_state_if_country_is_brazil() { - var selectFieldChoices = new SelectFieldChoices("#state_field", "#city_field", "/plugin/software_communities/get_brazil_states"); + var selectFieldChoices = new SelectFieldChoices("#state_field", "#city_field", "/plugin/gov_user/get_brazil_states"); set_initial_form_custom_data(selectFieldChoices); $("#profile_data_country").change(function(){ @@ -43,14 +43,14 @@ modulejs.define('UserEditProfile', ['jquery', 'SelectElement', 'SelectFieldChoic function show_or_hide_phone_mask() { if($("#profile_data_country").val() === "BR") { if( (typeof $("#profile_data_cell_phone").data("rawMaskFn") === 'undefined') ) { - $("#profile_data_cell_phone").mask("(99) 9999?9-9999"); - $("#profile_data_comercial_phone").mask("(99) 9999?9-9999"); - $("#profile_data_contact_phone").mask("(99) 9999?9-9999"); + // $("#profile_data_cell_phone").mask("(99) 9999?9-9999"); + // $("#profile_data_comercial_phone").mask("(99) 9999?9-9999"); + // $("#profile_data_contact_phone").mask("(99) 9999?9-9999"); } } else { - $("#profile_data_cell_phone").unmask(); - $("#profile_data_comercial_phone").unmask(); - $("#profile_data_contact_phone").unmask(); + // $("#profile_data_cell_phone").unmask(); + // $("#profile_data_comercial_phone").unmask(); + // $("#profile_data_contact_phone").unmask(); } } @@ -182,7 +182,7 @@ modulejs.define('UserEditProfile', ['jquery', 'SelectElement', 'SelectFieldChoic function set_fields_validations() { $("#profile_data_country").blur(show_or_hide_phone_mask); - $("#profile_data_birth_date").mask("99/99/9999"); + // $("#profile_data_birth_date").mask("99/99/9999"); fix_phone_mask_format("#profile_data_cell_phone"); fix_phone_mask_format("#profile_data_comercial_phone"); -- libgit2 0.21.2