function goToWorkerList(status){ window.location.href = "../workers/index.php?status="+status; } function generatePsw(){ var rString = randomString(10, '0123456789abcdefghijklmnopqrstuvwxyz'); $('#create_user_5').val(rString); $('#create_user_5_help_box').html("Password generata: "+rString); //console.log(rString); $('#create_user_5').trigger("click"); $('#create_user_5').trigger("focus"); } function create(token) { var first_name=$('#create_user_1').val(); var last_name=$('#create_user_2').val(); var business_name=$('#create_user_3').val(); var email=$('#create_user_4').val(); var password=$('#create_user_5').val(); var tel_value = $("#create_user_6").intlTelInput("getNumber"); var role=8; var cities=[]; //città $("input.city_list").each(function(){ city_id=$(this).val(); cities.push({slug:city_id}); }); if(!validateEmail(email)){ alert("Devi inserire un'email valida."); return; } if(cities.length==0){ alert("Devi aggiungere almeno un comune per confermare."); return; } if(tel_value==undefined){ alert("Il campo telefono è un campo obbligatorio"); return; } toggleDefaultLoader(); var userData={ "business_name":business_name, "first_name":first_name, "last_name":last_name, "email":email, "password":password, "role":role, "cities":cities, "phone_number":tel_value }; //creo l'utente var user_code=null; var create_deferred = $.Deferred(); $.ajax({ url: remoteAPIurl+'/api/v1/user?api_token='+token, crossDomain: true, type: "put", data: userData, dataType: 'json', success: function(result, statusText, resObject){ var code=result.code; if(code===409){ toggleDefaultLoader(); alert("L'email selezionata è già presente a sistema."); return; } user_code=result.data.user_code; //console.log('User created'); toggleDefaultLoader(); goToWorkerList(0); create_deferred.resolve(); }, error: function() { console.log('error'); } }); } $(function(){ var provinces_list={}; var myProvincesList={}; var myCities={}; $.fn.intlTelInput.loadUtils("/assets/js/utils.js"); $("#create_user_6").intlTelInput({preferredCountries: ["it","us", "gb"]}); getUser(ucode).done(function(result){ data=result.data; myCities=data.cities; role_slug=data.roles[0]["role_slug"]; //se l'utente del sistema ha almeno una città settata, devo recuperare la lista delle province attive if(myCities.length>0){ $.each(myCities,function(id,elem){ myProvincesList[elem.province_slug]=1; }); } var isGranted=false; if(role_slug=="super-admin" || role_slug=="super-user" || role_slug=="worker"){ myCities={}; isGranted=true; } objectLength=Object.keys(myProvincesList).length; console.log(objectLength); getProvinces().done(function(result){ $.each(result.data,function(id,province){ //console.log(province.slug); if(objectLength==0 || typeof(myProvincesList[province.slug])!="undefined"){ provinces_list[province.slug]={slug:province.slug,name:province.name,cities:province.cities,tot:province.cities.length}; console.log("prova"); } }); //console.log(provinces_list); /*$.each(result.data,function(id,province){ $(filter).append("") });*/ if(objectLength==0 || isGranted) displayProvinces('.places_list',result,0,myCities); else displayProvinces('.places_list',{data:provinces_list},0,myCities); }); $.validate({ form : '#workerCreate', modules : 'security', onSuccess : function($form) { //console.log('OK'); create(token); return false; // Will stop the submission of the form }, /*onValidate : function($form) { return { element : $('#some-input'), message : 'This input has an invalid value for some reason' } },*/ onElementValidate : function(valid, $el, $form, errorMess) { //console.log('Input ' +$el.attr('name')+ ' is ' + ( valid ? 'VALID':'NOT VALID') ); } }); }); });