ref: master
plugins/stoa/public/javascripts/signup_complement.js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
jQuery(function($) { $("#usp_id_field").observe_field(1, function(){ var me=this; $('#usp-id-invalid').hide(); $(this).addClass('checking').removeClass('validated'); $(this.parentNode).addClass('checking'); $('#usp-id-checking').show(); $.getJSON('/plugin/stoa/check_usp_id?usp_id='+me.value, function(data){ $('#usp-id-checking').hide(); if(data.exists) { $('#usp-id-invalid').hide(); $.getJSON('/plugin/stoa/check_cpf?usp_id='+me.value, function(data){ if(data.exists){ $('#signup-birth-date').hide(); $('#signup-cpf').show(); $('#confirmation_field').remove(); $('<input id="confirmation_field" type="hidden" value="cpf" name="confirmation_field">').insertAfter('#usp_id_field'); } else { $('#signup-cpf').hide(); $('#signup-birth-date').show(); $('#confirmation_field').remove(); $('<input id="confirmation_field" type="hidden" value="birth_date" name="confirmation_field">').insertAfter('#usp_id_field'); } $('#signup-form .submit').attr('disabled', false); $(me).removeClass('checking').addClass('validated'); $(me.parentNode).removeClass('checking'); }); } else { $(me).removeClass('checking'); $(me.parentNode).removeClass('checking'); if(me.value) { $('#signup-form .submit').attr('disabled', true); $(me).addClass('invalid'); $('#profile-data #usp_id_field').parent().addClass('fieldWithErrors') $('#usp-id-invalid').show(); } else { $('#signup-form .submit').attr('disabled', false); $(me).removeClass('invalid'); $('#profile-data #usp_id_field').parent().removeClass('fieldWithErrors') $(me).removeClass('validated'); } $('#signup-birth-date').hide(); $('#signup-cpf').hide(); } if(data.error) displayValidationUspIdError(data.error); } ); }); }); function displayValidationUspIdError(error){ noosfero.modal.html('<h2>'+error.message+'</h2>'+error.backtrace.join("<br />"), { height: "80%", width: "70%" }); } jQuery('#usp_id_field').focus(function() { jQuery('#usp-id-balloon').fadeIn('slow'); }); jQuery('#usp_id_field').blur(function() { jQuery('#usp-id-balloon').fadeOut('slow'); }); jQuery('#signup-birth-date #birth_date').focus(function() { jQuery('#usp-birth-date-balloon').fadeIn('slow'); }); jQuery('#signup-birth-date #birth_date').blur(function() { jQuery('#usp-birth-date-balloon').fadeOut('slow'); }); jQuery('#signup-cpf #cpf').focus(function() { jQuery('#usp-cpf-balloon').fadeIn('slow'); }); jQuery('#signup-cpf #cpf').blur(function() { jQuery('#usp-cpf-balloon').fadeOut('slow'); }); jQuery('#signup-birth-date #birth_date, #signup-cpf #cpf').each(function() { jQuery(this).bind('blur', function() { if (jQuery(this).val() == '') { jQuery(this).removeClass('validated'); } else jQuery(this).addClass('validated'); }); }); |