function FormatTime(time){
        seconds = time % 60;
        time = (time-seconds) / 60;

        minutes = time % 60;
        time = (time-minutes) / 60;

        hours = time % 24;
        time = (time-hours) / 24;

        str = '';
        if(time != 0){ str = str + time + 'j '; }
        if(hours != 0){ str = str + FormatTimeZero(hours) + 'h '; }
        if(minutes != 0){ str = str + FormatTimeZero(minutes) + 'm '; }
        if(seconds != 0) { str = str + FormatTimeZero(seconds) + 's '; }

        return str;
}
function FormatTimeZero(time) {
        var str = '';
        if(time < 10) {
                str = '0' + time;
        }
        else {
                str = time;
        }
        return str;
}

var is_uploading = 0;

function uploadFile(){
	var uid = $("#progress_key").val();
	var d = new Date();

	is_uploading = 1;
	ms_start = parseInt( d.getTime() );

	uploadProgress(uid);
}

var ms_last = 0;
var ms_start = 0;
var byte_last = 0;

function uploadProgress(uid) {
	if( !is_uploading ) {
		return false;
	}


	$.ajax({
		type: "GET",
		url: "index.php?page=upload&type=progress&uid="+uid+"",
		cache: false,
		success: function(result) {
			var data = result.split(":");

			var sent = parseInt(data[0]);
			var total = parseInt(data[1]);

		        var d = new Date();
			var ms_now = parseInt( d.getTime() );

		        if( parseInt(ms_last+1000) < parseInt(ms_now) ) {
				var ms_lag = parseInt(ms_now-ms_last);
				var byte_lag = parseInt(sent-byte_last);

				var byte_now = parseInt( (byte_lag/(ms_lag/1000)) / 1024 );
				var byte_moy = parseInt( sent/(ms_now-ms_start) );
				
				var temps_restant = parseInt( (total-sent)/(byte_moy*1024) );

				if( !isNaN(byte_now) ) {
					$("#progress_speed").html('Vitesse actuel: '+byte_now+'kb/s');
				}
				if( !isNaN(byte_moy) ) {
					$("#progress_speed2").html('Vitesse moyenne: '+byte_moy+'kb/s');
				}
				if( !isNaN(temps_restant) ) {
					$("#progress_time").html('Temps restant: '+FormatTime(temps_restant)+'');
				}


				ms_last = parseInt(ms_now);
				byte_last = parseInt(sent);
			}

			$("#progress_bar").progressBar(parseInt(sent/total*100));

			if( sent != total ) {
				setTimeout( function() { uploadProgress(uid); }, 1000);
			}
			else {
				is_uploading = 0;
				uploadComplete();
			}
		}
	});
}

function toggleUploadPassword(val) {
	if( val == "private" ) {
		$(".uploadPassword").animate({ opacity: 1.0}, 200);
	}
	else {
		$(".uploadPassword").animate({ opacity: 0.0}, 200);
	}
}
function uploadComplete() {
	$("#upload_target").ready(function () {
		var data = $("#upload_target").contents().find('body').html();
		if( data == '-1' ) {
			alert("L'envois a été interompu.");
		}
		else if( data == '-2' ) {
			alert("Erreur interne au serveur, votre fichier n'a pas été envoyé.");
		}
		else {
			var type = $("#uploadType").val();
			var pass = $("#uploadPasswordInput").val();
			
			var url = "index.php?page=upload&type=config";
			url = url+"&id="+data+"&config="+type+"";

			if( type == "private" && pass != "" ) {
				url = url+"&pass="+pass+"";
			}
			location.href = url;
		}
	});
}

function AskPassword(id, nom) {
	var pass = prompt("Ce fichier requiert un mot de passe pour Ãªtre tÃ©lÃ©charger.\n\n   Mot de passe:", "")
	location.href = 'download/'+ id +'/'+ pass +'/'+ nom +'';
}

