$(function(){ /** * * @type @call;$@call;parents */ var partnerSelect = $('#fos_user_registration_form_partner'), partnerSelectParents = partnerSelect.parents('.form-group'), roleSelect = $('#fos_user_registration_form_role') ; updatePartnerSelectView = function() { if ($('#fos_user_registration_form_role option:selected').val() === 'ROLE_NONPROFIT') { partnerSelectParents.show(); partnerSelect.prop('required', true); } else { partnerSelectParents.hide(); partnerSelect.prop('required', false); } } roleSelect.on('change', updatePartnerSelectView); updatePartnerSelectView(); /* * Code borrowed from: http://stackoverflow.com/a/1350278 */ function randomString(L){ var s = ''; var randomchar = function(){ var n = Math.floor(Math.random()*62); if ( n < 10 ) return n; //1-10 if ( n < 36 ) return String.fromCharCode(n+55); //A-Z return String.fromCharCode(n+61); //a-z }; while ( s.length < L ) s += randomchar(); return s; } /* * Random Password Generation */ var plainPassword = $('#fos_user_registration_form_plainPassword_first'), plainPassword2 = $('#fos_user_registration_form_plainPassword_second'); plainPassword.before('
'); $('body').on('click', 'button#generateRandomPassword', function(){ var random = randomString(10); plainPassword.val(random); plainPassword2.val(random); $('input#generate-password-input').val(random); }); });