var x_fin, y_fin, ratio_w, ratio_h, ratio_x, ratio_y, w_win, h_win = 0;
var preloader; 
var vitesse = -30;
var titre_img = desc_img = "";
var active = '';

// Preload
function verif_largeur_max(idimg) {
    var largeur = jsmove("largeur_total", "w");
    var indef;
    if (jsmove(idimg, "w") > parseInt(largeur)-40) {
        document.getElementById(idimg).style.width = (parseInt(largeur)-40) + "px";
    }
}

// Fonction INIT
function ouvre_img(vignette, img) {

    if (active != "") document.getElementById(active).style.visibility = "visible";
    
    vitesse = -30;
    var elmd = document.getElementById("cadre_popup");
    var elm = document.getElementById("imgpp");
    elm.src = document.getElementById(vignette).src;
    elm.style.opacity = "1";
    
    titre_img = document.getElementById(vignette).alt;
    desc_img = document.getElementById(vignette).title;
    
    preloader = new Image(); 
    preloader.src = img;
    verif_preload(vignette, img);
}

function verif_preload(vignette, img) {
    var indef;
    if (preloader.width == indef || preloader.width == 0) {
        setTimeout("verif_preload('"+vignette+"', '"+img+"')", 100);
    } else {
        ouvre_img2(vignette, img);
        // Vignette Disparait
        active = vignette;
        document.getElementById(vignette).style.opacity = "0";
        document.getElementById(vignette).style.filter = "alpha(opacity=0)";
    }
}

function ouvre_img2(vignette, img) {

    var elmd = document.getElementById("cadre_popup");
    var elm = document.getElementById("imgpp");
    var w_img = preloader.width;
    var h_img = preloader.height;
    
    var fenetre = getPageSize();
    w_win = fenetre[0];
    h_win = fenetre[3];
    
    
    elm.style.width = elmd.style.width = jsmove(vignette, "w") + "px";
    elm.style.height = elmd.style.height = jsmove(vignette, "h") + "px";
    elmd.style.left = jsmove(vignette, "left") + "px";
    elmd.style.top = jsmove(vignette, "top") + "px";
    elm.style.display = elmd.style.display = "block";
    
    // Verif si img trop grande
    if (w_img > w_win) {
        h_img = h_img / (w_img / (w_win - 200));
        w_img = w_win - 200;
    } 
    if (h_img > h_win) {
        w_img = w_img / (h_img / (h_win - 200));
        h_img = h_win - 200;
    } 
    
    // calcul des elm de fin
    x_fin = (w_win - w_img) / 2;
    y_fin = (h_win - h_img) / 2 + fenetre[5];
    if (x_fin < 0) x_fin = 0;
    if (y_fin < 50) y_fin = 50;
    ratio_w = (w_img - jsmove(vignette, "w")) / 10;
    ratio_h = (h_img - jsmove(vignette, "h")) / 10;
    ratio_x = (x_fin - jsmove(vignette, "left")) / 10;
    ratio_y = (y_fin - jsmove(vignette, "top")) / 10;
    
    
    agrandi(img, w_img, h_img);
}

// Agrandir
function agrandi(img, w_img, h_img) {
    vitesse = vitesse + 5;
    var elmd = document.getElementById("cadre_popup");
    var elm = document.getElementById("imgpp");
    elmd.style.left = (parseInt(elmd.style.left) + ratio_x + vitesse) + "px";
    elmd.style.top = (parseInt(elmd.style.top) + ratio_y + vitesse) + "px";
    elmd.style.width = elm.style.width = (parseInt(elm.style.width) + ratio_w + vitesse) + "px";
    elmd.style.height = elm.style.height = (parseInt(elm.style.height) + ratio_h + vitesse) + "px";
    
    if (parseInt(elm.style.width) <= w_img) {
        setTimeout("agrandi('"+img+"', '"+w_img+"', '"+h_img+"')", (20-vitesse*2));
    } else {
        verif_complete();
        elmd.className = elm.className = "MB_popup_in";
        elmd.style.width = elm.style.width = w_img + "px";
        elmd.style.height = (parseInt(h_img) + 19) + "px";
        elm.style.height = h_img + "px";
        elmd.style.left = (parseInt(elm.style.left) - ratio_x) + "px";
        elmd.style.top = (parseInt(elm.style.top) - ratio_y) + "px";
        document.getElementById("total").style.opacity = "0.3";
    }
}
function verif_complete() {
    if (preloader.complete) {
        var elmd = document.getElementById("cadre_popup");
        var elm = document.getElementById("imgpp");
        elm.src = preloader.src;
        elmd.style.opacity = elm.style.opacity = "1";
        document.getElementById("titre_img_popup").innerHTML = "&nbsp;"+titre_img;
    } else {
        setTimeout("verif_complete()", 50);
    }
}


// ferme
function ferme_img() {
    document.getElementById("total").style.opacity = "1";
    var elmd = document.getElementById("cadre_popup");
    var elm = document.getElementById("imgpp");
    elmd.className = "MB_popup";
    elmd.style.width = elmd.style.height = "0";
    elmd.style.display = "none";
    elm.style.src = " ";
    document.getElementById("titre_img_popup").innerHTML = "";
    if (active != "") {
        document.getElementById(active).style.opacity = "1";
        document.getElementById(active).style.filter = "alpha(opacity=100)";
    }
}


