/**
 * @author corey
 */

/**
 * Ritorna l'id utente dato il selettore di pagina
 * 
 * @param parent_el
 */
function get_idUser(parent_el) {
	return get_genericId("h1.utente", parent_el)
}

/**
 * Ritorna l'id dato il selettore e l'elemento parent
 * 
 * @param selector
 * @param parent_el
 * @return
 */
function get_genericId(selector, parent_el) {
	var id = $(selector, parent_el).attr("id");
	if (id != undefined) {
		var tmp = id.split("-");
		var ret = tmp[1]
	} else {
		var ret = 0;
	}
	return ret;
}

/**
 * Ritorna l'id dato l'elemento/selettore
 * 
 * @param el
 * @return
 */
function get_elementId(el) {
	var id = $(el).attr("id");
	if (id != undefined) {
		var tmp = id.split("-");
		if (tmp[1] != undefined) {
			return tmp[1];
		}
	}
	return 0
}

function src_user(type){
	switch (type){
		case 'user':
			var link = 'hr/searchUser.php';
		break;
	}
	var input = $('input[name=link]')
	$(input).val(link);
	var form = $(input).parents('form');
	$('input[name=flag]',form).val(1);
	$(form).submit();
}

function mod_userserv(type, id, idUser){
	var link = 'hr/assocServ.php';
	switch (type){
		case 'mod':
			$('input[name=is_new]').val(0);
			
		break;
		case 'new':
			$('input[name=is_new]').val(1);
		break;
	}
	var input =$('input[name=link]');
	$(input).val(link);
	$('input[name=idUser]').val(idUser);
	$('input[name=idUsrServAss]').val(id);
	var form = $(input).parents('form');
	$(form).submit();
}

function mod_userservatt(type, id, idUserServ, idUser){
	var link = 'hr/AttSpe.php';
	switch (type){
		case 'mod':
			$('input[name=is_new]').val(0);
			
		break;
		case 'new':
			$('input[name=is_new]').val(1);
		break;
	}
	var input =$('input[name=link]');
	$(input).val(link);
	$('input[name=idUser]').val(idUser);
	$('input[name=idUsrServAss]').val(idUserServ);
	$('input[name=idUsrServAttSpec]').val(id);
	var form = $(input).parents('form');
	$(form).submit();
}

function CTRL_change_password(form_selector){
  var formObj = $(form_selector);
	var oldPwd = $('input[name=oldPwd]', formObj).val();
	var newPwd = $('input[name=newPwd]', formObj).val();
	var newPwd2 = $('input[name=newPwd2]', formObj).val();
	if(newPwd==newPwd2){
	  if((newPwd.length>7)){
	    if(oldPwd.length>0){
           	 $('input[name=flag]', formObj).val(1);
	         $(form_selector).submit();
	    }else{
	      $('input[name=flag]', formObj).val(0);
	      alert('Inserire la vecchia password');
	    }
	  }else{
	    $('input[name=flag]', formObj).val(0);
	    alert('Inserire una password di lunghezza superiore o uguale a 8 caratteri');
	  }
	}else{
		$('input[name=flag]', formObj).val(0);
		alert('Le password inserite non corrispondono');
	}
}

function addrowplus(tablename, arr , delay, p, contPlus) {			
	if(p==1){
		var tbl = parent.document.getElementById(tablename);
	}else{
		var tbl = document.getElementById(tablename);
	}
	var righetotali=tbl.rows.length;
	var lastRow = tbl.rows.length - delay;
	if (righetotali < contPlus) {
		var row = tbl.insertRow(lastRow);
		for (r = 0; r < arr.length; r++) {
			var cell = row.insertCell(r);
			cell.innerHTML = arr[r];
		}
		var rowInd = row.rowIndex;
		row.id = rowInd;
		var cell = row.insertCell(r);
		cell.innerHTML = '<img src="images/bt/bt_rimuovi.gif" onclick="removeRow(' + rowInd + ')" onmouseover="cambiaimmagine(this);" onmouseout="cambiaimmagine(this)"; >';
                //cell.innerHTML = '<input type="button" value="Rimuovi" onclick="removeRow(' + rowInd + ')" />';
	// 	get_tableRow(tablename)
	}
}

//Rimuove una riga specificato l'id della stessa.
function removeRow(id) {
	//alert(id);
    var tr = document.getElementById( id );
    if ( tr ) {
      if ( tr.nodeName == 'TR' ) {
        var tbl = tr;                  // Look up the hierarchy for TABLE
        while ( tbl != document && tbl.nodeName != 'TABLE' ) {
          tbl = tbl.parentNode;
        }
        if ( tbl && tbl.nodeName == 'TABLE' ) {
          while ( tr.hasChildNodes() ) {
            tr.removeChild( tr.lastChild );
          }
          tr.parentNode.removeChild( tr );
        }
      } else {
        alert( 'Specified document element is not a TR.  id=' + id );
      }
    } else {
      alert( 'Specified document element is not found.  id=' + id );
    }
}

/**
 * Manda i dati ad ajax.php per il salvataggio delle anagrafiche
 * 
 * @param form_selector
 * @param type
 * @return
 */
function saveUser(form_selector, type) {
	var url = '_ajax/ajax.php';
	var errors = new Array();
	var form_obj = $(form_selector);
	errors = ctrl_req(form_obj);
	var id_array = $(errors).length;
	if (!ctrlCFfield($('input[name=cf]', form_obj))) {
	    errors[id_array] = "Codice fiscale errato";
	}
	$("[name^='data']", form_obj).each(function(){
		if (!CTRLdatafield(this)) {
			id_array = $(errors).length;
	      errors[id_array] = "Formato data in campo " + $(this).prev('label').text() + " errato";
	    }
	});
	if ($(errors).length == 0) {
	//Author: Marco - Funzione utile solo per salvataggio enti dalla schermata referenti
		var grandContainer1 = $('fieldset#items-9', form_obj);
		if ($(grandContainer1).length ==1) {
			saveEnteFromRef(grandContainer1);
		}
	    // @TODO controllo esattezza campi
	    if (type == 'inspopup') {
	      var func = 'addUser&return=popup';
	    }
	    else {
	      var func = 'addUser';
	    }
	    if (type == 'inspopup') {
        /*  var name = $("option[value=" + idUser + "]", select_el).text();
        var data = name + '_' + add2data;
        var data2add = themeUserAssLine(idUser, data, type);
        $(data2add).appendTo(appTo);*/
        var thecontainer = $("fieldset#items-" + type + " .user-list"); //type è errato
        postEprompt1(url, form_selector, 'ajax=' + func + '&insert=1', thecontainer);
      }
      else {
        postEprompt(url, form_selector, 'ajax=' + func + '&insert=1');
      }
	    return true;
	} 
	var alert_msg = '';
	$(errors).each(function() {
		alert_msg = alert_msg + this + "\r\n";
	});
	alert(alert_msg);
}

function saveSede(form_selector, type){
  var form_obj = $(form_selector);
  $("input[name='flag']", form_obj).val(1);
  $(form_obj).submit();
}

function saveEnte(el) {
	var url = 'hr/addEnte.php';
	var errors = new Array();
	var form_obj = $(el).parents('form');
	errors = ctrl_req(form_obj);
	if ($(errors).length == 0) {
		$("input[name='enteRel[]']", form_obj).remove();
		$("div#ente-father > div").each(
				function() {
					var id_ref = get_elementId(this);
					$(document.createElement('input')).attr('type', 'hidden')
							.attr('name', 'enteRel[]').val(id_ref).appendTo(
									form_obj);
				});
		$("input[name='enteRef[]']", form_obj).remove();
		$("div#ente-ref > div").each(
				function() {
					var id_ref = get_elementId(this);
					id_ref = id_ref.replace('_','');//Aggiunta 22/12
					$(document.createElement('input')).attr('type', 'hidden')
							.attr('name', 'enteRef[]').val(id_ref).appendTo(
									form_obj);
				});
		$(document.createElement('input')).attr('type', 'hidden').attr('name',
				'is_save').val(1).appendTo(form_obj);
		$("input#linkURL", form_obj).val(url);
		$(form_obj).submit();
	} else {
		var alert_msg = '';
		$(errors).each(function() {
			alert_msg = alert_msg + this + "\r\n";
		});
		alert(alert_msg);
	}
}
/* author: Marco
 * Salva gli enti associati ai referenti
 */
function saveEnteFromRef(el) {
	var form_obj = $(el).parents('form');
	if ($(form_obj).length ==1) {
		$("input[name='enteRel[]']", form_obj).remove();
	}
	else{
		form_obj = el
	}
	$("div#ente-father > div", el).each(function() {
		var id_ref = get_elementId(this);
		$(document.createElement('input')).attr('type', 'hidden')
			.attr('name', 'enteRel[]').val(id_ref).appendTo(form_obj);
	});
}

function assocgroup(idUser, select_el) {
	if (idUser > 0) {
		var data = $("option[value=" + idUser + "]", select_el).text();
		var data2add = themeUserGrLine(idUser, data);
		$(data2add).appendTo("#servUsrGrp");
	}
}

function assocusers(idUser, select_el, appTo, type, add2data) {
	if (idUser != undefined) {
    var name = $("option[value=" + idUser + "]", select_el).text();
		var data = name + '_' + add2data;
		var data2add = themeUserAssLine(idUser, data, type);
		$(data2add).appendTo(appTo);
	}
}


function themeUserGrLine(id, data) {
	var html = themeUserGr;
	html = html.replace("<id>", id);
	var data_arr = data.split('-');
	html = html.replace("<name>", data_arr[0]);
	if (data_arr[3] != undefined) {
		var ddn = data_arr[1] + '-' + data_arr[2] + '-' + data_arr[3]
	} else {
		var ddn = '';
	}
	html = html.replace("<ddn>", ddn);
	return html;
}

function themeUserAssLine(id, data, type) {
	switch (type) {
    case '1':
		  var html = themeUserRef;
    break;
    case '4':
      var html = themeUserRif;
    break;
    default:
  		var html = themeUserAss;
    break;
	}
    
	html = html.replace("<id>", id);
	var data_arr = data.split('_');
	html = html.replace("<name>", data_arr[0]);
  if (data_arr[1] != undefined) {
    html = html.replace("<prel>", data_arr[1]);
  }
	var ddn = '';
	html = html.replace("<ddn>", ddn);
	
	return html;
	
}

function ajaxpost(url, JQuery_Obj, add_param) {
	var postdata = add_param + '&' + $(JQuery_Obj).serialize();
	$.post(url, postdata, function(data) {
		ajaxview(data)
	}, "json");
}

function ajaxview(data) {
	$('#dialog_ajax_small').html(data);
	openDialog('dialog_ajax_small', '');
}

function postEprompt(url, JQuery_Obj, add_param) {
	var popup = $('#dialog_ajax_small');
	var postdata = add_param + '&' + $(JQuery_Obj).serialize();
	$.post(url, postdata, function(data) {
		$(data.html).appendTo("body");
		theme_warnings();
	}, "json");
}

function postEprompt1(url, JQuery_Obj, add_param, container) {
  var popup = $('#dialog_ajax_small');
  var postdata = add_param + '&' + $(JQuery_Obj).serialize();
  $.post(url, postdata, function(data) {
    $(data.html).appendTo("body");
    //@TODO: marco
    var toAdd = data.data;
    assocNewUsers(toAdd, container);
    theme_warnings();
  }, "json");
}

//Author: Marco
/*funzione che aggiunge il referente nella pagina dopo essere stato inserito */
function assocNewUsers(toAdd,appTo) {
	
	arrToAdd = toAdd.split("/");
    var idUser = arrToAdd[0];//.split("_")[0];
    var type   = arrToAdd[1];
    var idContainer = arrToAdd[2];
    var name = arrToAdd[3];//.split("_")[0];
    var enteLup = arrToAdd[4];
	if (idUser != undefined) { 
		var data = enteLup + ' ' + name ;
		var data2add = themeUserAssLine(idUser, data, type);
		var thecontainer = $("fieldset#items-" + type + " .user-list");
		$(data2add).appendTo(thecontainer);
		odd_even_arrange(thecontainer, 'div.item-user');
		add_usrGrp_remove_bt(thecontainer);
		
	}
}

/**
 * Collassa i fieldset
 * 
 * @param legend
 * @return
 */
function fieldset_collapse(legend) {
	var fieldset = $(legend).parents('fieldset');
	if ($(fieldset).hasClass('collapsed')) {
		$("*:not(legend img)", fieldset).show();
	} else {
		$(fieldset).children("*:not(legend)").hide();
	}
	$(fieldset).toggleClass('collapsed')
	$(fieldset).toggleClass('collapsible')
}

function switch_img(selector) {
	$(selector).toggleClass('hide');
}

/**
 * Aggiunge una riga per i recapiti
 * 
 * @param {string}
 *            selettore div all'interno dei quali viene piazzato il recapito
 * @param {int}
 *            maxrow massimo numero di recapiti aggiungibili
 * @note utilizza la variabile jQuery $(input_recapito) definita nella pagina
 */
function addRecapiti(element, maxrow) {
	var addclass = "recapito-item";
	var container = $(element);
	var now = $(container).children('div').length;
	if (now == undefined || now < maxrow) {
		$(input_recapito).appendTo(container);
	}
}

/**
 * Aggiunge una riga per i servizi associati all'operatore
 * 
 * @param {string}
 *            selettore div all'interno dei qualki viene piazzato il recapito
 * @param {int}
 *            maxrow massimo numero di recapiti aggiungibili
 * @note utilizza la variabile jQuery $(input_recapito) definita nella pagina
 */
function addServOp(element, maxrow) {
	var addclass = "serviziop-item";
	var container = $(element);
	var now = $(container).children('div').length;
	if (now == undefined || now < maxrow) {
		$(input_servop).appendTo(container);
	}
}

function remove_divrow(el) {
	var to_remove = $(el).parents(
			"div.recapito-item,div.serviziop-item,div.item-user");
	var container = $(to_remove).parent();
	$(to_remove).remove();
	odd_even_arrange(container, "> div")

}

function odd_even_arrange(container, selector) {
	$(selector, container).each(function(i) {
		var ctrl = i % 2;
		if ($(this).hasClass('odd') && ctrl == 1) {
			$(this).removeClass('odd');
			$(this).addClass('even');
		}
		if ($(this).hasClass('even') && ctrl == 0) {
			$(this).removeClass('even');
			$(this).addClass('odd');
		}
	});
}

/**
 * aggiunge gli effetti sugli eventi del mouse;
 * 
 * @param selector
 * @return
 */
function add_img_effects(selector) {
	var chg_img = 'cambiaimmagine(this)';
	$(selector + ":not(.mover-processed)").attr({
		'onmouseover': chg_img,
		'onmouseout': chg_img,
		}).addClass('mover-processed')
}

/**
 * Prompt dopo modifica
 */
function theme_warnings() {
	var popup = $("#warn-popup");
	if ($(popup).length > 0) {
		var pathel = $("#popup-goto", popup);
		if ($(pathel).length > 0) {
			var goto_link = $(pathel).attr('href');
			$(pathel).remove();
			var pathel = $("#popup-idnewuser", popup);
			var newUser = $(pathel).attr('href');
			$(pathel).remove();
		}
		var pathel = $("#user-toassoc", popup);
		if ($(pathel).length > 0) {
			var temp = $(pathel).attr('href');
			var tmp_arr = temp.split('/');
			var id_newUser = tmp_arr[0];
			var type = tmp_arr[1];
			var container = tmp_arr[2];
			var user_text = $(pathel).text();
			$(pathel).remove();
		}
    var back2form = $("#popup-backtoform", popup);
    if ($(back2form).length > 0) {
      var back2formjs = $(back2form).attr('href');
      $(back2form).remove();
    }
		var dialogclass = 'alert';
		if ($(popup).hasClass('error')) {
			var dialogclass = dialogclass + ' error';
		}
		$(popup).dialog({
			dialogClass: dialogclass,
			bgiframe : true,
			modal : true,
			beforeclose : function(event, ui) {
				if (goto_link != undefined) {
					if (newUser != undefined && newUser != 0) {
						$(document.createElement('input')).attr('type', 'hidden').attr('name', 'idUser').val(newUser).appendTo('form');
						$(document.createElement('input')).attr('type', 'hidden').attr('name', 'is_insProc').val(1).appendTo('form');
					}
					site_goto(goto_link);
				} 
				else {
					if (id_newUser != undefined) {
						var selEl = $(document.createElement('select'));
						$(document.createElement('option')).text(user_text).val(id_newUser).appendTo(selEl);
						assocusers(id_newUser, selEl, $('#' + container), type, '');
						add_usrGrp_remove_bt($('#' + container));
						odd_even_arrange($('#' + container), 'div.item-user');
						$('.popups').dialog('close');
					}
          else {
            if (back2formjs != undefined)  {
              eval(back2formjs);
            }
          }
				}
			},
			closeOnEscape : false,
			buttons : {
				Ok : function() {
					$(this).dialog('close');
					$(popup).remove();
				}
			}
		});
	}
}

function createPopup(data, warn) {
	  if (warn) {
		$(data.html).appendTo("body");
		theme_warnings();
	  }
	  else {
		var popups = $(".popups").length;
		var popup = $(document.createElement('div')).attr('id', 'popup-' + (popups + 1)).addClass('popups');
		$(popup).html(data.html);
		popup_title(popup);
		//modifichi form
		$(popup).appendTo('body');
		var contwidth = 600;
		var contheight = 400;
		$(popup).dialog( {
		  bgiframe : true,
		  height : contheight,
		  width : contwidth,
	      modal : true
		});	
	  }
	}

/**
 * Va al link passato
 * @param {atring} link
 */
function site_goto(link) {
	$("input[name=link]").val(link);
	$("form").submit();
}

/**
 * rimuove le righe gruppo utente
 * 
 * @param parent_el
 * @return
 */
function add_usrGrp_remove_bt(parent_el) {
	$("img.bt-usergr-remove:not(.processed)", parent_el).each(function() {
		$(this).click(function() {
			remove_divrow(this);
		});
		$(this).addClass('processed');
	});
}

/**
 * Associa l'anagrafica all'utente
 * 
 * @param {Object}
 *            tosearch
 * @param {Object}
 *            type
 * @param {Object}
 *            container
 */
function src_user_assoc(tosearch, type, container, fromRef) {
	var url = '_ajax/ajax.php';
	var idUser = get_idUser($("body"));
	var postdata = 'ajax=searchUserRef&idUser=' + idUser + '&tipo=' + type
			+ '&toSearch=' + tosearch + '&fromRef=' + fromRef + '&' ;
	$("> div", container).each(function() {
		postdata = postdata + 'tohide[]=' + get_elementId(this) + '&';
	});
	$.post(url, postdata, function(data) {
		var popups = $(".popups").length;
		var open_popup = true;
		var popup = $(document.createElement('div')).attr('id', 'popup-' + (popups + 1)).addClass('popups');
		$(document.createElement('input')).attr('type', 'hidden').attr('name', 'idUser').val(idUser).appendTo(popup);
		$(popup).html(data.form);
		$(popup).appendTo('body');
		ins_popup_start(popup)
		if (data.list != undefined) {
			var selector = $("select[name=selection]", popup);
			$.each(data.list, function(key, value) {
				$(document.createElement('option')).html(value[1])
						.val(value[0]).appendTo(selector)
			});
			add_img_effects("img.mover");
			if ($("select[name=prel]", popup).length > 0) {
				var addParentAjax = true;
				if (data.prelist != undefined) {
					// relazione di parentela
					parentalRel(selector, $("select[name=prel]", popup), data.prelist);
				}
			}
		} 
		else {
//			enteFromRef_start();
			//Elimina dal popup di inserimento di un nuovo referente la possibilità di associargli direttamente un ente.
			$('#items-9', popup).remove();
			if (data.warn != undefined) {
				open_popup = false;
			}
			else {
				
				user_start();
				general_start(popup);
				$(document.createElement('input')).attr('name', 'tipo').attr('type', 'hidden').val(type).appendTo($('#anag-form', popup));
				$(document.createElement('input')).attr('name', 'container').attr('type', 'hidden').val($(container).attr('id')).appendTo($('#anag-form', popup));
			}
		}
		if (open_popup) {
			$("#img-asgroupuser:not(.processed)", popup).each(function() {
				var parentRel = '';
				if (addParentAjax != undefined){
					$(this).click(function() {
						var idUserGr = $("select[name=selection]", popup).val();
						var prelSelect = $("select[name=prel]", popup);
						var parentId = $(prelSelect).val();
						var postdata1 = 'ajax=prelUser&idUser=' + idUser + '&id_rel=' + idUserGr + '&id_prel=' + parentId;
							//mando relazione per salvare
						$.post(url, postdata1, function(data) {
							//gestire il ritorno
						}, "json");
						parentRel = $("option[value=" + parentId + "]", prelSelect).text();
					});
				}
				$(this).click(function() {
					var idUserGr = $("select[name=selection]", popup).val();
					if (idUserGr != undefined && idUserGr != 0) {
						container = $("fieldset#items-" + type + " .user-list");
						assocusers(idUserGr, $("select[name=selection]", popup), container, type, parentRel);
						odd_even_arrange(container, 'div.item-user');
						add_usrGrp_remove_bt(container);
						$(popup).dialog('close');
					}
					else {
						alert('Scegliere almeno un\'anagrafica');
					}
				});
			
				$(this).addClass('processed');
			});
			$("#img-asgroupusernew", popup).remove();
			var contwidth = $("> div", popup).width() + 50;
			var contheight = $("> div", popup).height() + 130;
			$(popup).dialog( {
				bgiframe : true,
				height : contheight,
				width : contwidth,
				modal : true
			});
		}
		else {
			$(data.html).appendTo("body");
		    theme_warnings();
		}
	}, "json");
	odd_even_arrange(container, 'div.item-user');
}

/**
 * inserisce il titolo nel popup passato
 * 
 * @param {Object}
 *            popup
 */
function popup_title(popup) {
	var h1 = $('h1.title-popup', popup);
	$(popup).attr('title', $(h1).text());
	$('div.ins-popup', popup).attr('id', $(h1).attr('id'));
	$(h1).remove();
}

function mod_user(type, id) {
	switch (type) {
	case 'user':
		var link = 'hr/add_user.php';
		break;
	}
	var input = $('input[name=link]')
	$(input).val(link);
	var form = $(input).parents('form');
	$('input[name=idUser]', form).val(id);
	$(form).submit();
}

function view_user(type, id) {
  switch (type) {
  case 'user':
    var link = 'hr/riepilogo.php';
    break;
  }
  var input = $('input[name=link]')
  $(input).val(link);
  var form = $(input).parents('form');
  $('input[name=idUser]', form).val(id);
  $(form).submit();
}

function mod_ente(id) {
	var link = 'hr/addEnte.php';
	var input = $('input[name=link]')
	$(input).val(link);
	var form = $(input).parents('form');
	$('input[name=idEnte]', form).val(id);
	$(form).submit();
}

function to_folder(type, idUser) {
	switch (type) {
	case 'anag':
		var link = 'hr/add_user.php';
		if (idUser != 0) {
			$('input[name=idUser]').val(idUser);
		}
		break;
	case 'serv':
		var link = 'hr/modUserServ.php';
		if (idUser != 0) {
			$('input[name=idUser]').val(idUser);
		}
		break;
	case 'ref':
		var link = 'hr/addReferente.php';
		break;
	case 'atts':
		var link = 'hr/modAttSpe.php';
		break;
	}
	var input = $('input[name=link]');
	$(input).val(link);
	var form = $(input).parents('form');
	$(form).submit();
}

/** Popola la select con le date per cui è possibile segnare presenze */
function viewDatas(servValue, idDataSel, user) {
	var url = '_ajax/ajax.php';
	var postdata = 'ajax=popDate&servValue=' + servValue + '&user=' + user;
	$.post(url, postdata, function(data) {
		var selector = $(idDataSel);
		$('option', selector).remove();
		$.each(data, function(key, value) {
			$(document.createElement('option')).html(value).val(key).appendTo(
					selector)
		})
	}, "json");
}

/** Crea le checkbox con le attività e le spunta in base se sono associate al servizio o meno*/
function viewAtt(servValue, user) {
	var url = '_ajax/ajax.php';
	var postdata = 'ajax=popAtt&servValue=' + servValue + '&user=' + user;
	$.post(url, postdata, function(data) {
		$.each(data, function(key, value) {
			$(document.createElement('option')).html(value).val(key).appendTo(
					selector)
		})
	}, "json");
}

/**
 * Change parent selector on user selector change
 * @param userSelector Jquery Object
 * @param parentalSelector Jquery Object
 * @param list array user=>parent type
 * @return
 */
function parentalRel(userSelector, parentalSelector, list) {
	$(userSelector).change(function() {
		var thisVal = $(this).val();
		if (list != undefined && list[thisVal] != undefined) {
			$(parentalSelector).val(list[thisVal]);
		}
		else {
			$(parentalSelector).val(0);
		}
	});
}

function regPre(dateServ, idUserServ, idPresenza){
	var url='_ajax/ajax.php';
	var pgcontainer = $("#preUsrSrv-" + idUserServ);
	var postdata = 'ajax=regPre&idPresenza=' + idPresenza + '&idUserServ=' + idUserServ + '&dateServ=' + dateServ;
	$.post(url, postdata, function(data){
		var popups = $(".popups").length;
		var popup = $(document.createElement('div')).attr('id', 'popup-' + (popups + 1)).addClass('popups');
		$(popup).html(data.form);
		popup_title(popup);
		//modifichi form
		if(data.data != undefined){
			if (data.data.attPre != undefined) {
				$.each(data.data.attPre, function(key,value){
					$("#check-attivita :checkbox[value=" + value + "]", popup).attr('checked', 'checked');
				});
			}
			if(data.data.fake == 1){
				$("#no-attivita :checkbox[name=fake]", popup).attr('checked', 'checked');
			}
			if(data.data.tipAmm != undefined) {
				$("#no-attivita select[name=tipAmm]",popup).val(data.data.tipAmm);
			}
		}
		
//		addPresenza_bt(container, dateServ);
			
	    $(popup).appendTo('body');
		var contwidth = 600;
		var contheight = 400;
		$(popup).dialog( {
			bgiframe : true,
			height : contheight,
			width : contwidth,
			modal : true,
			close: function() {
				var check = $(":checkbox", pgcontainer).attr('id')
				if ( check != undefined && check != '') {
					$(":checkbox", pgcontainer).attr('checked', 'checked');
				}
				else {
					$(":checkbox", pgcontainer).removeAttr('checked');
				}
			}
		});
		$("#attivita-form #no-attivita #submit-attivita", popup).click(function(){
	      var container = $(this).parents(".popups");
		  var data2send = $("#attivita-form", container);
		  var data2sendform = $(document.createElement("form")).attr('id', 'attivita-form-wrap');
		  $(data2send).appendTo($(data2sendform));
		  var postdata1 = 'ajax=regPreAct&idUserServ=' + idUserServ + '&idPresenza=' + idPresenza
			+ '&datePre=' + dateServ + '&';
		  postdata1 = postdata1 + $(data2sendform).serialize();
		  $("#attivita-form", data2sendform).appendTo(container);
		  $.post(url, postdata1, function(data) {
		    createPopup(data, 1)
		    
			if (data.data.error) {
			  if (data.data.is_mod) {
//			    $(":checkbox", pgcontainer).attr('checked', 'checked');
			  }
			  else {
				$(":checkbox", pgcontainer).removeAttr('checked');
				$("img.mod-pre", pgcontainer).remove();
				$(" img.del-pre", pgcontainer).remove();
			  }
			}
			else {
			  $(":checkbox", pgcontainer).attr('checked', 'checked');
			  $(":checkbox:checked", pgcontainer).attr('id', 'idPres-' + data.data.idPresenza);
			  $(":checkbox:checked", pgcontainer).attr('disabled', 'disabled');
			  if (data.data.fake > 0) {
				if($("input[name=fake]",pgcontainer).lenght == undefined){
				    var fake = $(document.createElement("input")).attr({
				    	'name': 'fake',
				    	'type': 'hidden'
				      }).appendTo(pgcontainer);
				}
			  }else{
				$("input[name=fake]", pgcontainer).remove();
			  }
			  addPresenza_bt(pgcontainer, dateServ);
			}
		  }, "json");
		  $(popup).dialog('destroy');
		  $(popup).remove();
		});
	}, "json");
}

function delPre(idUserServ, idPresenza, date){
	var url='_ajax/ajax.php';
	var postdata = 'ajax=regPre&idPresenza=' + idPresenza + '&idUserServ=' + idUserServ + '&delPre=1&dateServ=' + date;
	$.post(url, postdata, function(data){
		var container = "#preUsrSrv-" + data.data.idUsrServ;
		createPopup(data, 1);
		if (data.data.error == false) {
		  delPresenza_bt(container);
		  $("input[name=fake]", container).remove();
		  $(":checkbox:checked", container).removeAttr('disabled');
		  $(":checkbox:checked", container).removeAttr('id');
		  $(":checkbox:checked", container).removeAttr('checked');
		}
	}, "json");
}
//aggiunge i bottoni di gestione presenza
function addPresenza_bt(container, date) {
//	console.log($("img.mod-pre", container).length);
	if ($("img.mod-pre", container).length == 0) {
		var modImg = $(document.createElement("img")).addClass('mod-pre mover');
	    $(modImg).attr('src', 'images/bt/bt_modifica.gif');
	    $(modImg).click(function(){
	    	var idUserServ = get_elementId(container);
			var idPresenza = get_elementId($(":checkbox", container));
			regPre(date, idUserServ, idPresenza);
	    });
	    $(modImg).appendTo(container);
	}
	if ($("img.del-pre", container).length == 0 && $("input[name=idAttSpe]", container).length == 0) {
	    var delImg = $(document.createElement("img")).addClass('del-pre mover');
	    $(delImg).attr('src', 'images/bt/bt_rimuovi.gif');
	    $(delImg).click(function(){
	    	var idUserServ = get_elementId(container);
	    	var idPresenza = get_elementId($(":checkbox", container));
	    	
	    	
	    	delPre(idUserServ, idPresenza, date);
	    });
	    $(delImg).appendTo(container);
	}
    if ($("img.att-spe-img", container).length == 0) {
      $("input[name=idAttSpe]", container).each(function(){
        var asid = $(this).val();
        var attImg = $(document.createElement("img")).addClass('att-spe-img');
        $(attImg).attr('id', 'asid-' + asid).attr('src', 'images/att_spe-' + asid + '.gif');
        $(attImg).appendTo(container);
      });
    }
    $("img")
    if($("img.fake-img",container).length == 0) {
	    $("input[name=fake]", container).each(function(){
	  	  var fakeImg = $(document.createElement("img")).addClass('fake-img');
	  	  $(fakeImg).attr('src', 'images/fake.gif');
	  	  $(fakeImg).appendTo(container);
	  	});
    }
    else {
    	if ($("input[name=fake]", container).length == 0) {
    		$("img.fake-img", container).remove();
    	}
    }
    add_img_effects("img.mover");
}

function delPresenza_bt(container) {
	$("img.mod-pre", container).remove();
	$("img.del-pre", container).remove();
	$("img.fake-img", container).remove();
}

function resend_regmail(){
  var idUsr = get_idUser('body');
  var url='_ajax/ajax.php';
  var postdata = 'ajax=resendMail&idOp=' + idUsr;
  $.post(url, postdata, function(data) {
    $(data.html).appendTo("body");
    theme_warnings();
    return data.data.error;
  }, "json");
}
