/*************************************************************
 * Fichier : fenetre.js
 * Auteur : François Gaumond
 * courriel : fgaumond(a)viva-solutions.ca
 * Date : 1 octobre 2006
 * Description : Définit les fonctions qui servent à opérer
 *               les fenêtres
 ************************************************************/

function Fenetre(){}

/*
    *********************************************************
    Définition des variables globales
    *********************************************************
*/
    Fenetre._enMouvement = false;
    Fenetre._divFenetre = null;
    
    Fenetre._curX = 0;
    Fenetre._curY = 0;
    
    Fenetre._decalageCurseurX = 0;
    Fenetre._decalageCurseurY = 0;
/*
    *********************************************************
    Fin de définition des variables globales
    *********************************************************
*/

Fenetre.FermerFenetre  = function(nomFenetre)
{
    var divFenetre = document.getElementById(nomFenetre);
    divFenetre.style.visibility = "hidden";
    Fenetre.CacherMasque();
    
    var frameNavigation = document.getElementById("frameNavigation");
    frameNavigation.src = "/Chargement.aspx"; 
    
    //Dans le cas où la fenêtre est fermée durant l'envoie d'un courriel
    try
    {
        EnvoieCourriel_Fermer();
    }
    catch(e)
    {}
}

Fenetre.AfficherFenetre = function(nomFenetre)
{
    var divFenetre = document.getElementById(nomFenetre);
    divFenetre.style.visibility = "visible";
}

Fenetre.AfficherMasque = function()
{
    var tabDimension = Utils.getPageSize();

    var divMasque = document.getElementById("divMasque");
    divMasque.style.width = tabDimension[0] + "px";
    divMasque.style.height = tabDimension[1] + "px";
    divMasque.style.visibility = "visible";
}

Fenetre.Centrer = function(nomFenetre, largeurPage, hauteurPage)
{
    var divFenetre = document.getElementById(nomFenetre);
    var largeurElement = Utils.GetValeurNumerique(divFenetre.style.width);
    var hauteurElement = Utils.GetValeurNumerique(divFenetre.style.height);
    
    divFenetre.style.left = (largeurPage - largeurElement)/2 + "px";
    divFenetre.style.top =  (hauteurPage - hauteurElement)/4 + "px";
}

Fenetre.CacherMasque = function()
{
    var divMasque = document.getElementById("divMasque");
    divMasque.style.visibility = "hidden";
}

Fenetre.ChangerCouleur = function(nomFenetre, couleurBordure, couleurFond, imageBordure, couleurTitre)
{
    var divFenetre = parent.document.getElementById(nomFenetre);
    divFenetre.style.backgroundColor = couleurBordure;
    divFenetre.style.backgroundColor = "transparent";
    divFenetre.style.backgroundImage = imageBordure;
        
    if(nomFenetre == "divFenetre1")
    {
        var divContenuProfil = document.getElementById("divContenuProfil");
        divContenuProfil.style.backgroundColor = couleurFond;
        
        var contourFenetre = document.getElementById("ContourFenetre1");
        contourFenetre.style.backgroundColor = couleurTitre; 
    }
}

Fenetre.DimensionnerFenetre = function (nomFenetre, largeur, hauteur)
{
    var divFenetre = document.getElementById(nomFenetre);
    if(largeur > 0)
    {
        divFenetre.style.width = largeur + "px";
    }
    if(hauteur > 0)
    {
        divFenetre.style.height = hauteur + "px";
    }
}

Fenetre.PositionnerFenetre = function (nomFenetre, gauche, haut)
{
    var divFenetre = document.getElementById(nomFenetre);
    divFenetre.style.left = gauche + "px";
    divFenetre.style.top = haut + "px";
}

/**********************************
    Gestion du déplacement
**********************************/

Fenetre.InitMouvement = function (e,id)
{
    Fenetre._divFenetre = document.getElementById(id);
    Fenetre._enMouvement = true;
    Fenetre._decalageCurseurX = e.clientX - Utils.GetValeurNumerique(Fenetre._divFenetre.style.left);
    Fenetre._decalageCurseurY = e.clientY - Utils.GetValeurNumerique(Fenetre._divFenetre.style.top);
}

Fenetre.FinDeplacement = function()
{
    Fenetre._enMouvement = false;
}

Fenetre.DeplacerFenetre = function ()
{
//    if(document.all)
//    {
        Fenetre._divFenetre.style.left = Fenetre._curX - Fenetre._decalageCurseurX + "px";
        Fenetre._divFenetre.style.top = Fenetre._curY - Fenetre._decalageCurseurY + "px";
        
//    }
    
//    if(document.layers)
//    {
//        alert("deplacement document.layers");
//        var nomDiv = eval(Fenetre._divFenetre);
//        eval("document." + nomDiv + ".left") = Fenetre._curX + Fenetre._decalageCurseurX + "px";
//        eval("document." + nomDiv + ".top") = Fenetre._curY + Fenetre._decalageCurseurY + "px";
//    }
}

Fenetre.CapturerMouvement = function ()
{
    if(document.layers)
    {
        document.captureEvents(Event.MOUSEMOVE);
    }
    
    Fenetre._enMouvement = true;
}

Fenetre.FinCaptureMouvement = function ()
{
    if(document.layers)
    {
        document.releaseEvents(Event.MOUSEMOVE);
    }
    
    Fenetre._enMouvement = false;
    document.close();
}

Fenetre.GestionnaireMouvement = function (e) 
{
    if(Fenetre._enMouvement)
    {
        Fenetre._curX = e.clientX;
        Fenetre._curY = e.clientY;
        Fenetre.DeplacerFenetre();
    }
}

Fenetre.ClearError = function () 
{
    return true;
}

//document.onmousedown = Fenetre.CapturerMouvement;
//document.onmousemove = Fenetre.GestionnaireMouvement;
//document.onmouseup = Fenetre.FinCaptureMouvement;
//window.onerror = Fenetre.ClearError;