function goToUserList(role_id){ window.location.href = "../users/index.php?role="+role_id; } 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 displayEdit(ucode,provinces_list){ getUser(ucode).done(function(result){ var data=result.data; edit_role_id=data.roles[0]["id"]; //console.log("---->"+role_id); $('#create_user_1').val(data.first_name); $('#create_user_2').val(data.last_name); $('#create_user_3').val(data.business_name); $('#create_user_4').val(data.email); $('#create_user_4').after(""); $('.cities_list_title').css("display","block"); getProvinces().done(function(result2){ //console.log(provinces_list); $.each(data.cities, function(city_key,city_value){ //console.log("città da cancellare "+city_value.id); city_id=city_value.id; $.each(provinces_list,function(k1,v1){ //console.log("provinces_slug="+k1); $.each(v1.cities,function(k2,v2){ //console.log(provinces_list[k1].not_owned_cities); if(v2!=null && v2.id==city_id){ //console.log(k1+"=>"); if(typeof(provinces_list[k1].tot_owned)=="undefined") provinces_list[k1].tot_owned=0; provinces_list[k1].tot--; provinces_list[k1].tot_owned++; //console.log(provinces_list[k1]); } }); }); }); //console.log(data.cities); // console.log(provinces_list); //console.log(typeof(provinces_list)); //visualizzo accorpamenti per provincia nei risultati //console.log(provinces_list); $.each(provinces_list, function(key,value){ //console.log("lol"); //ho tutte le città di questa provincia if(value.tot==0){ li_id="all-"+key; //console.log("li_id="+li_id); //console.log("
  • Tutti i comuni in prov. di "+value.name+"
  • "); $('.cities_list ul').append("
  • Tutti i comuni in prov. di "+value.name+"
  • "); $('li#'+li_id).append(""); $.each(value.cities,function(key2,value2){ var id2=value2.id; //console.log("content="+id2); $('.cities_list ul li#city_'+id2).remove(); if(id2!="all" && id2!=null && id2!="") $('#'+li_id).append("") }); } }); //console.log("----------------"); //visualizzo comuni $.each(data.cities, function(city_key,city_value){ if($('li#city_'+city_value.id).length==0 && $('.city_list[value='+city_value.id+']').length==0){ province_slug=city_value.province_slug; $('.cities_list ul').append("
  • ["+province_slug+"]"+city_value.name+"
  • "); $('#city_'+city_value.id).append(""); } }); }); }); } function update(ucode,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 status=$('#create_user_status').val(); var cities=[]; //città $("input.city_list").each(function(){ city_id=$(this).val(); cities.push({slug:city_id}); }); if(cities.length==0){ alert("Devi aggiungere almeno un comune per confermare."); return; } toggleDefaultLoader(); //console.log(cities); //return; var userData={ "business_name":business_name, "first_name":first_name, "last_name":last_name, "email":email, "cities":cities }; $.ajax({ url: remoteAPIurl+'/api/v1/user/'+ucode+'?api_token='+token, crossDomain: true, type: "put", data: userData, dataType: 'json', success: function(result, statusText, resObject){ //console.log("---->user_code="+result.data.user_code); //user_code=result.data.user_code; //console.log('User created'); toggleDefaultLoader(); goToUserList(edit_role_id); }, error: function() { console.log('error'); } }); } $(function(){ var provinces_list={}; var myProvincesList={}; /*$.ajax({ url: remoteAPIurl+'/api/v1/role?api_token='+token, crossDomain: true, dataType: 'text json', success: function(data, statusText, resObject){ populateRoleList(data, statusText, resObject); }, error: function() { console.log('error'); } });*/ console.log(ucode); getUser(ucode).done(function(result){ data=result.data; myCities=data.cities; role_slug=data.roles[0]["role_slug"]; console.log(myCities); if(role_slug=="super-admin" || role_slug=="super-user"){ myCities=[]; }else{ //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; }); } } objectLength=Object.keys(myProvincesList).length; //console.log(objectLength); getProvinces().done(function(result2){ var data=result.data; edit_role_id=data.roles[0]["id"]; $.each(result2.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 || edit_role_id==1) displayProvinces('.places_list',result2,0,myCities); else displayProvinces('.places_list',{data:provinces_list},0,myCities); //questa funzione risolve parte dei problemi legate alle città dell'operatore che sta inserendo la città, la displayProvinces precedente è quasi ridondante displayEdit(edit_code,provinces_list); }); }); $.validate({ form : '#userCreate', modules : 'security', onSuccess : function($form) { //console.log('OK'); update(edit_code,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') ); } }); });