/* ================================================================================ */
/*              OpenMoP - Libreria funzioni varie Javascript                        */
/* ================================================================================ */
/*                                                                     VERSIONE 0.3 */
/* ================================================================================ */

// Definizione variabili globali.
var popUpWin=0;

// ==========================================================================================================
// Funzione popUpWindow [vers. 0.4]
// ==========================================================================================================
// Esempio di utilizzo:
//
//      <a href="#" onClick="javascript:popUpWindow('http://www.google.it',100,70,450,250);">
//          Cerca su google...
//      </a>
// ==========================================================================================================
function popUpWindow(URLStr,left,top,width,height,scrollable){
	if(popUpWin)popUpWin.close();
	popUpWin=open(URLStr,'popUpWin','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars='+scrollable+',resizable=no,copyhistory=yes,width='+width+',height='+height+',left='+left+',top='+top+',screenX='+left+',screenY='+top+'');
}

// ==========================================================================================================
// Funzione resizeBrowserWindow [vers. 0.1]
// ==========================================================================================================
// Ridimensiona la finestra del browser. Esempio di utilizzo:
//
//      <a href="#" onClick="javascript:resizeBrowserWindow('800','600');">Ridimensiona a 800x600...</a>
// ==========================================================================================================
function resizeBrowserWindow(newWidth,newHeight){
    window.resizeTo(newWidth,newHeight);
}

// ==========================================================================================================
// Funzione confirmBox [vers. 0.2]
// ==========================================================================================================
// Visualizza un box di conferma prima di redirezionare l'url all'indirizzo specificato nel parametro.
// Esempio di utilizzo:
//
//      <a href="#" onClick="javascript:confirmBox(this,'Vuoi andare su google?','http://www.google.it');">
//          Cerca su google...
//      </a>
// ==========================================================================================================
function confirmBox(link,message,url){
    var is_confirmed=confirm(message);
    if(is_confirmed)location.href=url;
}

// ==========================================================================================================
// Funzione printPage [vers. 0.1]
// ==========================================================================================================
// Invia la pagina alla stampante:
//
//      <a href="javascript:printPage()">Stampa...</a>
// ==========================================================================================================
function printPage(){
    if(window.print){
        window.print();
    }else{
        alert('Funzione non supportata dal browser.');
    }
}

// ==========================================================================================================
// Funzione clearTextBoxContents [vers. 0.1]
// ==========================================================================================================
// Svuota il contenuto di un textbox se � uguale a quanto specificato nei parametri:
//
//      <input id=tbox type=text name=cerca value="Clicca qui!" onClick="clearTextBoxContents('tbox','Clicca qui!','#000000')">
// ==========================================================================================================
function clearTextBoxContents(control,deftext,selectedcolor){
    if(document.getElementById(control).value==deftext){
        document.getElementById(control).value=""
        document.getElementById(control).style.color=selectedcolor;
    }
}

// ==========================================================================================================
// Funzione checkForm [vers. 0.2]
// ==========================================================================================================
function checkForm(f,str_required){
    var required=str_required.split("|");
    
    // verifica se sono stati compilati tutti i campi richiesti.
    for(i=0;i<required.length;i++){
        eval('j = f.'+required[i]+';');
        if(j.value.length<2){ 
    	    alert('Devi completare tutti i campi della form con l\'asterisco per continuare.');
    	    return false;
        }
    }
    
    // supporto per controllo digitazione di un eventuale campo email (input di tipo TEXT).
    if(!f.OMOP_MODULE_FIELD_EMAIL.value.match(/^[a-z0-9._-]+@[a-z0-9._-]+\.[a-z]{2,4}$/i)){
        alert('L\'E-Mail inserita non � corretta.');
        return false;
    }
    
    // supporto per il controllo dell'accettazione dei termini sulla privacy (input di tipo CHECKBOX).
    if(!f.OMOP_MODULE_FIELD_PRIVACY.checked){
        alert('Devi accettare l\'autorizzazione al trattamento dei dati per continuare.');
        return false;
    }
    
    // supporto per modalit� di pagamento (input di tipo SELECT).
    /*if(f.OMOP_PAYMENT_TYPE.value==0){
        alert('Devi scegliere una modalit� di pagamento per continuare.');
        return false;
    }*/
    
    // supporto per modalit� di spedizione (input di tipo SELECT).
    /*if(f.OMOP_SHIPPING_TYPE.value==0){
        alert('Devi scegliere una modalit� di spedizione per continuare.');
        return false;
    }*/
}

// ==========================================================================================================
// Funzione SwitchVisibility [vers. 0.2]
// ==========================================================================================================
function SwitchVisibility(obj){
    obj=document.getElementById(obj);
    obj.style.visibility=(obj.style.visibility=='visible')?'hidden':'visible';
}

// ==========================================================================================================
// Funzione PreloadImages [vers. 0.3]
// ==========================================================================================================
function PreloadImages(){
    var d=document;
    
    if(d.images){
        if(!d.MM_p)d.MM_p=new Array();
        
        var i,j=d.MM_p.length,a=PreloadImages.arguments;
        
        for(i=0;i<a.length;i++){
            if(a[i].indexOf("#")!=0){
                d.MM_p[j]=new Image;
                d.MM_p[j++].src=a[i];
            }
        }
    }
}
