// confermaElimina(id del messaggio da visualizzare)
function confermaElimina(idMsg)
{
	// Messaggi pre-impostati
	var strMsg = new Array(21);
	strMsg[0] = "Cancellare la news?";
	strMsg[1] = "Cancellare l'accesso?";
	strMsg[2] = "Cancellare il protocollo d'invio dati al DWH?";
	strMsg[3] = "Cancellare la prestazione?";
	strMsg[4] = "Cancellare la visita?";
	strMsg[5] = "Cancellare la rilevazione?";
	strMsg[6] = "Cancellare il piano sanitario?";
	strMsg[7] = "Cancellare l'inserimento?";
	strMsg[8] = "Cancellare il certificato?";
	strMsg[9] = "Cancellare l'associazione?";
	strMsg[10] = "Cancellare il medico associato?";
	strMsg[11] = "Cancellare la scheda?";
	strMsg[12] = "Cancellare il corso?";
	strMsg[13] = "Cancellare la data?";
	strMsg[14] = "Cancellare la partecipazione?";
	strMsg[15] = "Cancellare la vaccinazione?";
	strMsg[16] = "Inviare il certificato al Siss?";
	strMsg[17] = "Rettificare il certificato inviato al Siss?";
	strMsg[18] = "Cancellare il certificato inviato al Siss?";
	strMsg[19] = "Eliminare il certificato?";
	strMsg[20] = "Cancellare?";
	
	// Se il messaggio non esiste, ritorno OK sempre
	if ((idMsg < 0) || (idMsg > strMsg.length))
	{
		return true;
	}
	else
	{
		if (confirm(strMsg[idMsg]))
		{
			return true;
		}
		else
		{
			return false;
		}
	}
}

// callCalendar(nome del campo editbox dove inserire il risultato, eventuale stringa in append ai risultati (es. orario), selezioni multiple attive);
function callCalendar(strTextBoxName, strRight, strMulti)
{
	var el = document.getElementById(strTextBoxName);

	// Se esiste il texbox	
	if (el)
	{
	    // Se non è disabilitato ...
	    if (!el.disabled)
	    {
	        // Chiamo il calendario
	        var sUrl = 'calendar.aspx?multi=' + strMulti + '&right=' + strRight + '&sel=' + el.value;

	        var rValue = null;

	        // Finestra più grande se c'è selezione multipla
	        if (strMulti == 'true')
	            rValue = myShowModalDialog(sUrl, '', 'dialogWidth:200px;dialogHeight:250px;help:0;status:1;scroll:0;resizable:0');
	        else
	            rValue = myShowModalDialog(sUrl, '', 'dialogWidth:200px;dialogHeight:220px;help:0;status:1;scroll:0;resizable:0');

	        // Se è stato selezionato un valore
	        if (rValue)
	        {
	            el.value = rValue;
	        }

	        el.select();
	    }
	    else
	    {
	        myAlert("Impossibile modificare la data.");	    
	    }
	}
}

// Visualizza una finestra modale
function myShowModalDialog(sUrl, sName, sParam)
{
    // Se esiste la showModalDialog (è su IE .. )
    if ((window.showModalDialog) && (navigator.appVersion.indexOf("MSIE") != -1))
    {
        // Se sto usando IE7 le altezze dei dialoghi sono differenti ...
        if ((navigator.appVersion.indexOf("MSIE 7") != -1) || (navigator.appVersion.indexOf("MSIE 8") != -1))
        {
            // Cerco il parametro altezza ...
            for (var co = 0; co < sParam.split(";").length; co++)
            {
                // Se ho trovato il parametro altezza e riesco a leggerne il valore ...
                if ((sParam.split(";")[co].indexOf("dialogHeight") != -1) && (sParam.split(";")[co].split(":").length > 0))
                {
                    // Se la conversione è possibile ...
                    if (parseInt(sParam.split(";")[co].split(":")[1]) ? true : false)
                    {
                        // Conversione valore specificato
                        var uHeight = parseInt(sParam.split(";")[co].split(":")[1]);

                        sParam = sParam.replace(parseInt(sParam.split(";")[co].split(":")[1]), uHeight - 45);
                    }
                }
            }
        }

        return window.showModalDialog(sUrl, window, sParam);
    }
    else
        return window.open(sUrl, sName, "dialog=yes,modal=yes," + sParam.replace(/dialog/g, "").replace(/:/g, "=").replace(/;/g, ","));
}

// Esce dall'applicativo chiudendo eventuali showModalDialog
function myLogOut(bSilent)
{
    if (!bSilent)
        myAlert("Autorizzazione negata o sessione scaduta.");

    // Se ero in una finestra di dialogo ...
    if (window.dialogArguments)
    {
        // Chiusura finestra attuale
        window.close();

        // Logout su pagina precedente
        window.dialogArguments.myLogOut(true);
    }
    else
    {
        // Logout
        location.href = 'logout.aspx';
    }
}

// Formatta il testo come numero con i decimali richiesti
function formatNumber(sNum, uDecimal)
{
    // Se non ho nessun numero, ritorno il testo vuoto
    if (sNum == "")
        return sNum;

    var sRet = "";
    var sDecimal = "";
    var uIdx = -1;

    // Decimali predefiniti
    for (var co = 0; co < uDecimal; co++)
        sDecimal += "0";
        
    // Elimino il .
    sRet = sNum.toString().replace(/[.]/gi, "");

    // Se la stringa è vuota ...
    if (sRet == "")
        sRet = "0";
   
    // Aggiunta decimali predefiniti
    sRet = sRet + (sRet.indexOf(",", 0) == -1 ? "," : "") + sDecimal;

    // Ritorno solo la stringa con i decimali richiesti
    return sRet.substr(0, sRet.indexOf(",", 0) + uDecimal + (uDecimal > 0 ? 1 : 0));
}

// Apre la pagina di LookUp
function OpenLookUp(uID, sParam, sTxt)
{
    var sUrl = "LookUp.aspx?id=" + uID + "&param=" + (sParam != null ? sParam : "");
    var sSeparatorDB4IE = "@##@";

    // Se devo prendere un valore predefinito ...    
    if (sTxt != "")
    {
        var el = document.getElementById(sTxt);

        // Se ho trovato l'elemento ed ha un valore ...
        if ((el) && (el.value != ""))
            sUrl += "&search=" + el.value;
    }

    // Apro LookUp
    var sRet = "" + myShowModalDialog(sUrl, "", "dialogWidth:640px;dialogHeight:470px;help:0;status:1;scroll:0;resizable:0");

    // Se ho un risultato ...
    if (sRet != "undefined")
    {
        // Per ogni elemento da compilare ...
        for (var co = 0; (co < sRet.split(sSeparatorDB4IE).length) && (sRet.split(sSeparatorDB4IE)[co] != ""); co += 2)
        {
            // Se esiste l'elemento da compilare ...
            if (document.getElementById(sRet.split(sSeparatorDB4IE)[co]))
                document.getElementById(sRet.split(sSeparatorDB4IE)[co]).value = sRet.split(sSeparatorDB4IE)[co + 1];
        }
    }
}
