Commit 9198bbb93bebb26387b67a387abb1f5ba222fd70

Authored by David Silva
Committed by Fabio Teixeira
1 parent 36475a0e

correcoes_aderencia: Hide field "city" when country isn't Brazil.

Signed-off-by: David Carlos <ddavidcarlos1392@gmail.com>
Signed-off-by: Parley Martins <parley@outlook.com>
features/user_profile_edition.feature
@@ -10,6 +10,11 @@ Feature: Institution Field @@ -10,6 +10,11 @@ Feature: Institution Field
10 And I check "MpogSoftwarePlugin" 10 And I check "MpogSoftwarePlugin"
11 And I press "Save changes" 11 And I press "Save changes"
12 And feature "skip_new_user_email_confirmation" is enabled on environment 12 And feature "skip_new_user_email_confirmation" is enabled on environment
  13 + And I go to /admin/features/manage_fields
  14 + And I check "person_fields_country_active"
  15 + And I check "person_fields_state_active"
  16 + And I check "person_fields_city_active"
  17 + And I press "Save changes"
13 And I go to /account/logout 18 And I go to /account/logout
14 And Institutions has initial default values on database 19 And Institutions has initial default values on database
15 And the following public institutions 20 And the following public institutions
@@ -47,4 +52,18 @@ Feature: Institution Field @@ -47,4 +52,18 @@ Feature: Institution Field
47 Scenario: Verify text information to use governmental e-mail 52 Scenario: Verify text information to use governmental e-mail
48 Given I am on josesilva's control panel 53 Given I am on josesilva's control panel
49 And I follow "Edit Profile" 54 And I follow "Edit Profile"
50 - Then I should see "If you work in a public agency use your government e-Mail"  
51 \ No newline at end of file 55 \ No newline at end of file
  56 + Then I should see "If you work in a public agency use your government e-Mail"
  57 +
  58 + @selenium
  59 + Scenario: Verify if field 'city' is shown when Brazil is selected
  60 + Given I am on josesilva's control panel
  61 + And I follow "Edit Profile"
  62 + Then I should see "City"
  63 +
  64 + @selenium
  65 + Scenario: Verify if field 'city' does not appear when Brazil is not selected as country
  66 + Given I am on josesilva's control panel
  67 + When I follow "Edit Profile"
  68 + And I select "United States" from "profile_data_country"
  69 + And I sleep for 1 seconds
  70 + Then I should not see "City"
public/mpog-user-validations.js
@@ -38,6 +38,13 @@ @@ -38,6 +38,13 @@
38 }); 38 });
39 } 39 }
40 40
  41 + function hide_city(){
  42 + jQuery("#city_field").parent().parent().parent().hide();
  43 + }
  44 + function show_city(){
  45 + jQuery("#city_field").parent().parent().parent().show();
  46 + }
  47 +
41 function replace_state_with_input() { 48 function replace_state_with_input() {
42 replace_with(input_select); 49 replace_with(input_select);
43 } 50 }
@@ -53,6 +60,14 @@ @@ -53,6 +60,14 @@
53 60
54 setInput : function() { 61 setInput : function() {
55 replace_state_with_input(); 62 replace_state_with_input();
  63 + },
  64 +
  65 + setHideCity : function(){
  66 + hide_city();
  67 + },
  68 +
  69 + setShowCity : function(){
  70 + show_city();
56 } 71 }
57 } 72 }
58 } 73 }
@@ -255,8 +270,10 @@ @@ -255,8 +270,10 @@
255 jQuery("#profile_data_country").change(function(){ 270 jQuery("#profile_data_country").change(function(){
256 if( this.value == "BR" && selectFieldChoices.actualFieldIsInput() ) { 271 if( this.value == "BR" && selectFieldChoices.actualFieldIsInput() ) {
257 selectFieldChoices.setSelect(); 272 selectFieldChoices.setSelect();
  273 + selectFieldChoices.setShowCity();
258 } else { 274 } else {
259 selectFieldChoices.setInput(); 275 selectFieldChoices.setInput();
  276 + selectFieldChoices.setHideCity();
260 } 277 }
261 }); 278 });
262 279