envoi_autorise = true;

function notifier_erreur(occurrence,erreur) { // notifie une erreur

    var msg = document.getElementById('msgErreur');
    if(occurrence == 1) {
        msg.style.color ='orange';
        msg.innerHTML = erreur;
        msg.style.display= '';
    } else {
        msg.style.display= 'none';
    }

}

function aucun_fichier(){ // verifie si le champ parcourir est vide

	if(document.getElementById('fichier').value == "") {
        notifier_erreur(1,'Vous n\'avez pas sélectionné de fichier!');
		return false;
	} else{
		if(envoi_autorise == false) {
			return false;
		} else {
			notifier_erreur(0,'');
			return true;
		}
	}
}


function examiner_fichiers(file) {

	// upload_maxsize_solo est définie dans la page d'envoi

    /*var bmp = "/image\/bmp/";

   	if (file.type.match(bmp)) {
   		return file.name+ ' sera converti en PNG';
    }*/
    
    ext_interdites = new Array('.php', '.exe', '.html', '.htm', '.scr', '.bat', '.dll', '.src', '.app', '.torrent');
    
    if(in_array(ext_interdites, file.name.substring(file.name.lastIndexOf(".")).toLowerCase())) {
        return file.name+ ' n\'est pas autorisé';
    }

  	if(file.size > upload_maxsize_solo) { // excede la limite autorisée
   		return file.name+ ' excède le poids maximum autorisé';
   	}
  	return false;
}

function analyser_selection(liste) {

	try {
		notifier_erreur(0, ''); // efface le message d'erreur
		var files = liste.files;
		var liste_erreurs = new Array();
		var poids_envoi_total = 0;
		for (var i = 0; i < files.length; i++) { // analayse les fichiers un par un
			var file = files[i];
			if(examiner_fichiers(file)) { // si non conforme
				liste_erreurs.push(examiner_fichiers(file));
			}
			poids_envoi_total += file.size; // calcul du oids total
		}
		
		if(poids_envoi_total > (50*1024*1024) && files.length > 1) { // si poids total >50Mo on ecrase les message d'erreurs precendent avec celui ci
			liste_erreurs = new Array("Le poids des fichiers sélectionnés dépassent le maximum autorisé par envoi.");
		}
		
		if(liste_erreurs.length > 0) { // si une/des erreurs est presente
			
			var msg = '';
			for (i in liste_erreurs) {
				msg += liste_erreurs[i] + '</br>';	
			}
			envoi_autorise = false; // on interdit l'envoi
			notifier_erreur(1, msg);
			
		} else {
			envoi_autorise = true;
		}
	} catch(e) {
		return false;
	}

}

// COMPTES UTILISATEURS //


