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 displayEdit(ucode,provinces_list){
//console.log("displayEdit");
getUser(ucode).done(function(result){
var data=result.data;
edit_role_id=data.roles[0]["id"];
//console.log("---->"+edit_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("");
img_base64=result.data.main_image;
if(img_base64!=null && img_base64!="" && typeof img_base64 !== undefined ) $('#input_file_image_preview').after('');
if(data.addresses[0]!=undefined && data.addresses[0].tel_number!=undefined) $('#create_user_6').val(data.addresses[0].tel_number);
$('.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("");
}
});
});
});
}
/* ---- Overloading delle funzioni in headers.js, perchè la famiglia può avere una sola città di residenza ----- */
var addCity = (function() {
var b = addCity;
return function() {
b();
if($('.cities_list ul li').length==1){
$('.btn-add-city').prop("disabled",true);
$('.btn-add-city').addClass("btn-disabled");
$('.btn-add-city').removeClass("btn-success");
}
}
})();
/* -------------------------------------------------------- */
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 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;
}
/*if(tel_value==undefined){
alert("Il campo telefono è un campo obbligatorio");
return;
} */
toggleDefaultLoader();
//console.log(cities);
//return;
var userData={
"business_name":business_name,
"first_name":first_name,
"last_name":last_name,
"cities":cities//,
//"phone_number":tel_value
};
var main_image=$("#hidden_file_input_image_preview").val();
if(main_image!="" && main_image!=null) userData.main_image=main_image;
$.ajax({
url: remoteAPIurl+'/api/v1/user/'+edit_code+'?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();
goToWorkerList(status);
},
error: function() { console.log('error'); }
});
}
$(function(){
var provinces_list={};
var myProvincesList={};
$.fn.intlTelInput.loadUtils("/assets/js/utils.js");
$("#create_user_6").intlTelInput({preferredCountries: ["it","us", "gb"]});
/*$.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);
//console.log("111");
$('input[code="image_preview"]').change(function(){
//console.log("dentro");
input_code=$(this).attr("code");
if($(this).attr("video")!="video")
{
$('.profile_picture').remove();
loadImageFileAsURL(input_code);
}
});
//console.log("222");
getUser(ucode).done(function(result){
console.log("into");
data=result.data;
myCities=data.cities;
//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;
});
myCities=[];
}
objectLength=Object.keys(myProvincesList).length;
//console.log(objectLength);
getProvinces().done(function(result2){
$.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("")
});*/
var data=result.data;
edit_role_id=data.roles[0]["id"];
result2.single_city_mode=1
console.log("role="+edit_role_id);
if(objectLength==0 || edit_role_id==1){
//console.log("--->0");
//console.log(result);
displayProvinces('.places_list',result2,0);
}else{
//console.log("--->1");
displayProvinces('.places_list',{data:provinces_list,single_city_mode:1},0);
}
$('.province_selection_title').html("Seleziona la provincia di residenza");
$('.city_selection_title').html("Seleziona il comune di residenza e premi +");
$('.cities_list_title').html("Comune di residenza");
displayEdit(edit_code,provinces_list);
});
});
$.validate({
form : '#userCreate',
modules : 'security',
onSuccess : function($form) {
//console.log('OK');
update(ucode,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') );
}
});
});