﻿/** 

Queste funzioni permettono la gestione del contenuto principale della pagina sotto
forma di Div a schermo intero. 

L'idea è quella di creare un div in secondo piano (desktop) su cui poter mostrare
altri controlli. Questo Div può caricare pagine esterne e visualizzarle.

Il div dovrebbe essere visualizzato a tutto schermo in modo da poter sfruttare la
dimensione intera della pagina.

Attenzione: La definizione dell'aspetto del contenitore viene in parte svolta nel
file ~/layout/NetSellGui_CleanSpaceDiv.css. 


.**/

// Questa funzione avvia il componente per la visualizzazione del body principale
// della pagina. In base al brower utilizzato sceglie il tipo di elemento contenitore 
// da utilizzare.


function NetSellGui_CleanDivSpaceInit(TypeOfInit) {

    
    var CleanDivSpace;
    var TheBody = document.getElementsByTagName("body").item(0);

    if ((TypeOfInit == 'Netscape') && !navigator.userAgent.toString().match('(Firefox)+') && !navigator.userAgent.toString().match('(Chrome)+')) {
        // Questa inizializzazione non serve per i browser basati su mozilla
       /** CleanDivSpace = document.createElement("object");
        CleanDivSpace.setAttribute("id", "NetSellGui_CleanSpaceDiv");
        CleanDivSpace.setAttribute("type", "text/html");
        TheBody.appendChild(CleanDivSpace);**/
    }
    else 
    {
        CleanDivSpace = document.createElement("iframe");
        CleanDivSpace.setAttribute("id", "NetSellGui_CleanSpaceDiv");
        CleanDivSpace.setAttribute("name", "_NetSellGui_CleanSpaceDiv");
        CleanDivSpace.setAttribute("frameborder", "0");
	    TheBody.appendChild(CleanDivSpace);
    }

    

    TheBody = null;CleanDivSpace = null;
}


// Questa funzione permette di mostrare una pagina web all'interno del corpo
// principale. Il corpo principale è sempre in secondo piano rispetto agli oggetti
// Gestisce la compatibilità tra Mozilla ed Explorer
//
// Se sta usando un browser Mozilla-Based che non sia chorme perchè ha un problema
// di compatibilità con la cronologia NON USA GLI IFRAME.
// In caso di IEXPLORE o CHROME usa gli IFRAME

function NetSellGui_CleanDiv_OpenPage(URI,_jCache) {


    // L'URI viene opportunamente modificato per evitare la cache del browser
    if (_jCache == null) {
        var _xDate = new Date();
        if (URI.toString().match('\\?') != null)
            URI = URI + '&x=' + _xDate.getSeconds() + '&y=' + _xDate.getMilliseconds();
        else
            URI = URI + '?x=' + _xDate.getSeconds() + '&y=' + _xDate.getMilliseconds();
        _xDate = null;
    }

    var ViewObject = document.getElementById("NetSellGui_CleanSpaceDiv");
    if ((NetSell_Global_BrowserName == 'Netscape') && !navigator.userAgent.toString().match('(Firefox)+') && !navigator.userAgent.toString().match('(Chrome)+')) {
        var CleanDivSpace;
        var TheBody = document.getElementsByTagName("body").item(0);
        if (ViewObject != null) 
        {
            ViewObject.style.visibility = 'hidden';
            TheBody.removeChild(ViewObject);
        }  
        CleanDivSpace = document.createElement("object");
        CleanDivSpace.setAttribute("id", "NetSellGui_CleanSpaceDiv");
        CleanDivSpace.setAttribute("type", "text/html");
        CleanDivSpace.setAttribute("data", URI);       
        TheBody.appendChild(CleanDivSpace);
        TheBody = null; CleanDivSpace = null;
        
    }
    else {
    // ~ Fix per firefox e Chrome ~
        if (navigator.userAgent.toString().match('(Firefox)+') || navigator.userAgent.toString().match('(Chrome)+'))
            window.open(URI, '_NetSellGui_CleanSpaceDiv');
        else
            ViewObject.setAttribute("src", URI);
    }
    
    ViewObject = null;
    TheBody = null;

}
