// on regarde sur quel navigateur on est
	var agt = navigator.userAgent.toLowerCase();
	var appVer = navigator.appVersion.toLowerCase();
	var iePos  = appVer.indexOf('msie');
	if (iePos != -1) {
	   is_minor = parseFloat(appVer.substring(iePos+5,appVer.indexOf(';',iePos)))
	   is_major = parseInt(is_minor);
	}
	var nav6Pos = agt.indexOf('netscape6');
	if (nav6Pos !=-1) {
	   is_minor = parseFloat(agt.substring(nav6Pos+10))
	   is_major = parseInt(is_minor)
	}
	var is_nav  = ((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1)
	            && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1)
	            && (agt.indexOf('webtv')==-1));
	var is_nav6   = (is_nav && is_major==6);    // new 010118 mhp
	var is_nav6up = (is_nav && is_minor >= 6) // new 010118 mhp
	var is_ie    = (iePos!=-1)
	var is_win   = ( (agt.indexOf("win")!=-1) || (agt.indexOf("16bit")!=-1) );
	var is_ie5up = (is_ie && is_minor >= 5);

// Fonction qui cheque tous les champs file, et qui appelle la fonction
// chargeImage pour tous ceux qui ont une valeur.
// Cette fonction se rappelle elle-même toutes les secondes
var tImages = new Array(nbImage); // on construit un tableau où on va enregistrer les images loadées.

function checkImage()
{	
    for (i = 1; i <= nbImage; i ++) {
        fichier = eval(frm + nomFichier + i + ".value");
        if (fichier != "") {
            if (is_ie && is_win) {
                // sur ie, on met le must
                chargeImage(i);
            } else if (is_nav6up) {
                // sur netscape 6, on a une fonction spéciale
                chargeImage3(i);
            } else {
               // pour les autres
                chargeImage2(i);
            }
        }
    }
	    setTimeout("checkImage()", 500);
}

function chargeImage(numero)
	{
	   var previsu = new Image;
	    var w=0;
	    var h=0;
	    chemin = eval(frm + nomFichier + numero + '.value');
	    if (is_ie) {
	        previsu.src = chemin;
	    } else {
	        previsu.src = getNSurl(chemin);
	        alert(previsu.getAttribute("width"));
	        previsu.height = 90;
	        previsu.width = 90;
	    }
	    oWidth=previsu.width;
	    oHeight=previsu.height;
	    if (oWidth > 0 && oHeight > 0) {
	        if (oWidth > oHeight) {
	            var mWidth = 90;
	            var mHeight = oHeight*90/oWidth;
	        } else {
	            var mHeight = 90;
	            var mWidth  = oWidth*90/oHeight;
	        }
	        var vignette = eval(frm + nomImage + numero);
	        //alert(vignette);
	        if (tImages[numero] != previsu.src) {
	            if (is_win && is_ie5up) {
	                vignette.style.filter = "blendTrans(duration=1)";
	                vignette.filters.blendTrans.apply();
	            }
	            vignette.src    = previsu.src;
	            vignette.width  = mWidth;
	            vignette.height = mHeight;
	            if (is_win && is_ie5up) {
	               vignette.filters.blendTrans.play();
	            }
	            tImages[numero] = previsu.src;
	            var fonction = "verifierImage("+numero+")";
	           setTimeout (fonction, 2500);
	        }
	        var dernierSlash = vignette.src.lastIndexOf("/");
	        if (vignette.src.substr(dernierSlash+1) == "espaceur.gif") {
	            // si c'est le premier chargement, on met l'image par défaut, au cas où la suite ne marche pas
           	chargeImage2(numero);
        	}
	    }
	}

// la fonction simplifiée pour les autres navigateurs.
// on affiche une image fixe (genre cliquez ici pour voir l'image)

function chargeImage2(numero)
{
    eval("document.images['" + nomImage + numero + "'].src = 'images/previsu_upload.jpg'");
}

// d'ailleurs, on va précharger cette image
var loupeImage = new Image;
loupeImage.src = 'images/previsu_upload.jpg';

function chargeImage3(numero) {
    previsu = new Image;
    objetImage  = eval("document." + nomImage + numero);
    objetFile   = eval(frm + nomFichier + numero);
    previsu.src = getNSurl(objetFile.value);
    if (objetImage.src != previsu.src) {
        objetImage.src = previsu.src;
        setTimeout("retailler(objetImage)", 500);
        var fonction = "verifierImage("+numero+")";
        setTimeout (fonction, 2500);
    }
}

function retailler(objetImage)
{
    if (objetImage.height > objetImage.width) {
        objetImage.height = 90;
        objetImage.removeAttribute("width");
    } else {
        objetImage.width = 90;
        objetImage.removeAttribute("height");
    }
}

// fonction qui met une url locale au format netscape PC
function getNSurl(url)
{
    tUrl = url.split(":");
    var valeurUrl = escape(replace_char('\\', '/', tUrl[1]));
    var valeurDisque = tUrl[0];
    return("file:///" + valeurDisque + ":" + valeurUrl);
}

function verifierImage(numero)
{
    var erreur = false;
    photo   = eval(frm + nomImage + numero);
    fichier = eval(frm + nomFichier + numero);
    coche   = eval(frm + "case" + numero);
    if (is_ie) {
        if (photo.readyState == "loading") {
            photo.src = "images/bad_format.jpg";
            var erreur = true;
        }
        if (photo.fileSize > 2000000) {
            alert ("Le poids de cette image est supérieur à 2MO.\nElle ne sera pas envoyée.");
            var erreur = true;
        }
    }
    var posPoint = fichier.value.lastIndexOf(".");
    var extension = fichier.value.substr(posPoint + 1).toLowerCase();
    if (extension != "jpg" && extension != "jpeg" && extension != "png") {
        alert("Le format de cette image n'est pas reconnu.\nMerci de n'envoyer que des images jpeg,\navec l'extensions '.jpg' ou '.jpeg'");
        erreur = true;
    }
    if (erreur) {
        coche.checked = false;
        fichier.style.color = 'red';
    } else {
        coche.checked = true;
        fichier.style.color = 'green';
        fichier.style.font.weight = "bold";
        if (is_ie) {
            calculTemps();
        }
    }
}

function popupImage(numero)
{
    var imageUrl = eval(frm + nomFichier + numero + ".value");
    if (imageUrl == "") {
        alert("Vous devez d'abord choisir une image\nen cliquant sur le bouton parcourir.");
        return false;
    }
    if (is_ie) {
        // si c'est Netscape, les slash sont pas dans le même sens
        imageUrl = replace_char('\\', '/', imageUrl);
    }
    imageUrl = escape(imageUrl); // vu qu'on passe ça dans l'url, faut choser les caractères spéciaux
    var popupUrl = "voirPhoto.php?image="+imageUrl;
    window.open(popupUrl,'popup','resizable,width=470,heigth=400,scrollbars=2');
    return true;
}

function replace_char(old_char, new_char , string)
{
    var result = "";
    for (replace_char_compteur = 0; replace_char_compteur < string.length; replace_char_compteur ++) {
        var this_char = string.charAt(replace_char_compteur);
        if (this_char == old_char) {
            result = result + new_char;
        } else {
            result = result + this_char;
        }
    }
   return result;
}

// Fonction qui calcule le poids total des images, qui l'affiche, et qui calcul le temps en fonction de la vitesse
function calculTemps()
{
	
    var poids       = 0;
    champPoids      = eval(frm + "poids");
    champConnexion  = eval(frm + "connexion");
    champTemps      = eval(frm + "temps");
    hidNb_sec	    = eval(frm + "nb_sec");
	
    for (j = 1; j <= nbImage; j ++) {
        fichier = eval(frm + nomFichier + j);

        coche   = eval(frm + "case" + j);
        if (fichier.value != "" && fichier.style.color == "green" && coche.checked == true) {
            poids += eval(frm + nomImage + j + ".fileSize") * 1;
        }
    }
    poidsKo = (poids / 1024);
    if (poids >= 1073741824) {
        poids = Math.round(poids / 1073741824 * 100) / 100 + " Go";
    } else if (poids >= 1048576) {
        poids = Math.round(poids / 1048576 * 100) / 100 + " Mo";
    } else if (poids >= 1024) {
        poids = Math.round(poids / 1024 * 100) / 100 + " Ko";
    } else {
        poids = poids + " Octets";
    }
    champPoids.value = poids;
    connexion = champConnexion[champConnexion.selectedIndex].value;
    secondes = poidsKo / connexion;
    hidNb_sec.value = secondes;	
    if (secondes >= 3600) {
        minutes = Math.round(secondes/60);
        reste   = minutes % 60;
        heure   = (minutes - reste) / 60;
        temps   = heure + "h " + Math.round(minutes) + "mn";
    } else if (secondes >= 60) {
        reste = secondes % 60;
        minutes = (secondes - reste) / 60;
        temps = minutes + "mn " + Math.round(reste) + "s";
    } else {
        temps = Math.round(secondes) + " secondes";
    }
    champTemps.value = temps;
}

function verif3()
{	
  var cpt = 0;
  for (i = 1; i <= nbImage; i ++) {
	        var coche   = eval(frm + "case" + i);
	        if (coche.checked == true){
			cpt++;
		}
  }
if (cpt == 0) {
	alert('Vous devez choisir au moins une photo');
	return false;
}
else {
	nbsec = eval(frm + "nb_sec");
    	window.open('attente.php?nb_secondes=' + nbsec.value,'attente','Height=110,Width=300,resizable');
	return true;
}
}
