Commit a571209140cb829a96610d8a236eea49c0adef1e
1 parent
2c24a16d
Exists in
master
and in
5 other branches
Fix regex to validade alphanumeric Full Name and show error message to user
Signed-off-by: David Carlos <ddavidcarlos1392@gmail.com> Signed-off-by: Fabio Teixeira <fabio1079@gmail.com> Signed-off-by: Luciano Prestes <lucianopcbr@gmail.com>
Showing
2 changed files
with
13 additions
and
12 deletions
Show diff stats
lib/mpog_software_plugin.rb
... | ... | @@ -44,6 +44,7 @@ class MpogSoftwarePlugin < Noosfero::Plugin |
44 | 44 | link_to(_("Create new institution"), "#", :id=>"create_institution_link", :class=>'button with-text icon-add')+ |
45 | 45 | hidden_field_tag("user[institution_ids][]", "", :class => 'user_institutions')+ |
46 | 46 | hidden_field_tag("institution_selected", "")+ |
47 | + hidden_field_tag("full_name_error", _("Should begin with a capital letter and no special characters"))+ | |
47 | 48 | content_tag("ul", "",:class=>"institutions_added")+ |
48 | 49 | content_tag(:div, "", :id=>"institution_dialog") |
49 | 50 | ), | ... | ... |
public/mpog-user-validations.js
... | ... | @@ -81,7 +81,6 @@ |
81 | 81 | if( last.length == 3 ) { |
82 | 82 | var move = jQuery(this).val().substr( jQuery(this).val().indexOf("-") - 1, 1 ); |
83 | 83 | var lastfour = move + last; |
84 | - | |
85 | 84 | var first = jQuery(this).val().substr( 0, 9 ); |
86 | 85 | |
87 | 86 | jQuery(this).val( first + '-' + lastfour ); |
... | ... | @@ -91,17 +90,10 @@ |
91 | 90 | |
92 | 91 | function set_full_name_validation() { |
93 | 92 | function is_invalid_formated(text) { |
94 | - slices = text.split(" "); | |
95 | - | |
96 | - var reg = /(^|\s)([a-z]|[0-9]|([&\/\\#,+()$~%.'":*?<>{}!@\-\[\]]))/g; | |
97 | - | |
98 | - for(var i = 0; i < slices.length; i++) { | |
99 | - if( reg.test(slices[i]) ) { | |
100 | - return true; | |
101 | - } | |
102 | - } | |
93 | + var reg_firsts_char = /(^|\s)([a-z]|[0-9])/g; | |
94 | + var reg_special_char = /[^\w\*\s*]/g; | |
103 | 95 | |
104 | - return false; | |
96 | + return reg_firsts_char.test(text) || reg_special_char.test(text); | |
105 | 97 | } |
106 | 98 | |
107 | 99 | jQuery("#profile_data_name").blur(function(){ |
... | ... | @@ -110,8 +102,16 @@ |
110 | 102 | if( this.value.length > 0 ) { |
111 | 103 | if( is_invalid_formated(this.value) ) { |
112 | 104 | jQuery(this).removeClass("validated").addClass("invalid"); |
105 | + | |
106 | + if(!jQuery(".full_name_error")[0]) { | |
107 | + var message = jQuery("#full_name_error").val(); | |
108 | + jQuery(this).parent().append("<span class='full_name_error'>"+message+"</span>"); | |
109 | + } else { | |
110 | + jQuery(".full_name_error").show(); | |
111 | + } | |
113 | 112 | } else { |
114 | 113 | jQuery(this).removeClass("invalid").addClass("validated"); |
114 | + jQuery(".full_name_error").hide(); | |
115 | 115 | } |
116 | 116 | } |
117 | 117 | }); |
... | ... | @@ -146,4 +146,4 @@ |
146 | 146 | set_full_name_validation(); |
147 | 147 | }, 2000); |
148 | 148 | }); |
149 | -})(); | |
150 | 149 | \ No newline at end of file |
150 | +})(); | ... | ... |