
function lirecookie(t){
 var cs=""+document.cookie;
 var i1=cs.indexOf(t);
 if (i1==-1 || t=="") return ""; 
 var i2=cs.indexOf(';',i1);
 if (i2==-1) i2=cs.length; 
 return unescape(cs.substring(i1+t.length+1,i2));
}

function quittepage(){
	if (encours){
		return "Attention : le transfert en cours échouera si vous quittez la page.";
	}
	return void(0);
}

var nberreur=0;
var encours=false;
var password="";
var logerreur="";
var serveur=document.location.host;
var infook=false;
var depart;
var dfin=0;
var olddate=0;
var oldtaille;
var lastdate=0;
var lasttaille=0;
var fichier;
var progstart=false;
var code='';
var req;

var ddernierverif=0;

esca=window.encodeURIComponent?encodeURIComponent:escape;

if (location.search.search(/code=ubb/)!=-1) {	code='ubb';}

if (location.search.search(/code=html/)!=-1){	code='html';}


function progress(){
	if (encours){
		var oparms=(lasttaille-oldtaille)/(lastdate-olddate);//en o/ms ok
		var prct=fichier.taillep*100/fichier.taille; //ok
		var prctparms=oparms*100*0.95/fichier.taille; // estimation ࠹5%
		var debit=Math.round(oparms*10)/10+" ko/s";
		
		var nowprc=prct+prctparms*(((new Date()).getTime())-lastdate);
		if (nowprc>100) nowprc=100;
		taille=Math.floor(nowprc*fichier.taille/100);
		if (fichier.taille<taille) taille=fichier.taille;

		var tempsrestantensec=(fichier.taille-taille)/(oparms*1000+0.001);
		var minrestant=(Math.floor(tempsrestantensec/60));
		var secrestant=Math.floor(tempsrestantensec-minrestant*60);
		var txttempsrestant="temps restant : "+minrestant+" min "+secrestant+" sec";

		document.getElementById('barre').width=Math.round(nowprc*600/100);
		document.getElementById('barreinfo').innerHTML=taille+"/"+fichier.taille+" octets, "+debit+", "+txttempsrestant;
		setTimeout("progress()",150);
		if ((new Date()).getTime()-ddernierverif>10000){
			//ajax('info/'+random.substr(0,1)+'/'+random+'.info','GET',''+Math.random()+'',false);
		}
	}
}

function check(){
	olddate=lastdate;
	lastdate=(new Date()).getTime();
	oldtaille=lasttaille;
	lasttaille=fichier.taillep;
	//if (lasttaille==oldtaille) nberreur++;
	if (!progstart){
	  progress();
	  progstart=true;
	}
	
}

function ajax(page,method,data,sync) { //type=mp 
 var req = false;
 if(sync){sync=true;}else{sync=false;}
 if(window.XMLHttpRequest) {
  try {
   req = new XMLHttpRequest();
  } catch(e) {
   logerreur+='///'+e;
   req = false;
  }
 } else if(window.ActiveXObject) {
  try {
   req = new ActiveXObject("Msxml2.XMLHTTP");
  } catch(e) {
   try {
    req = new ActiveXObject("Microsoft.XMLHTTP");
   } catch(e) {
   logerreur+='///'+e;
    req = false;
   }
  }
 }
 if(req) {
  req.onreadystatechange = function(){
   if (req.readyState == 4 && req.status == 200) {ddernierverif=(new Date()).getTime();try{maj(req.responseText);}catch(e){alert('Erreur:'+req.responseText+e);logerreur+='///'+e;}}
   if (req.readyState == 4 && req.status != 200) {try{maj("NONSTATUS");}catch(e){alert('Erreur:'+req.responseText+e);logerreur+='///'+e;}}

  }
  if(method == "GET"){
   if(data == "null"){req.open("GET", page,!sync);}
   else{req.open("GET", page+"?"+data,!sync);}
  }
  else if(method == "POST"){req.open("POST", page,!sync);}

  if(method == "GET"){req.send(null);}
  else if(method == "POST"){req.setRequestHeader('Content-Type','application/x-www-form-urlencoded');req.send(data);}

  if (sync) {try{eval(req.responseText);}catch(e){alert('Erreur'+e+' /// '+req.responseText);logerreur+='///'+e;}}
  return true;
 }
 else{
  return false;//vieux nav
 }
}

function ti1info(info){
	fichier=info;
	if (info.taille>1024*1024){ //plus de 1Mo
		taille=(Math.round(info.taille*10/1024/1024)/10)+"Mo";
	}
	else if(info.taille>1024){
		taille=(Math.round(info.taille*10/1024)/10)+"ko";
	}
	else{
		taille=(info.taille)+"o";
	}

	if (!infook){
		var ext=(info.nom).split(/\./);
		ext=(ext[ext.length-1]).toLowerCase();

		document.getElementById('nomfichier').innerHTML='<a href="http://ti1ca.com/'+info.id+'-'+esca(info.nom)+'.html" target="_blank">'+info.nom+'</a>';

		var txtinfo="";

		txtinfo="<br />"+
		'<label for="uploadlink"><span class="lab"><b>Votre fichier est disponible à l\'adresse suivante :</b><br /><small>Copier/coller dans une page web, un email, msn, etc.. pour créer un lien vers le fichier</small></span></label><br />'+
		'<input id="uploadlink" class="txtcopy" onclick="this.select();" title="Clic droit puis copier" value="http://ti1ca.com/'+info.id+'-'+esca(info.nom)+'.html" readonly="readonly" type="text" style="width:580px;"><a href="http://ti1ca.com/'+info.id+'-'+esca(info.nom)+'.html" target="_blank" title="Lien vers le fichier"><img src="http://ti1ca.com/ti1ca-go.gif" wisth="18" height="8" border="0" ></a><br /><br />';
		if (code!='ubb'){
				txtinfo=txtinfo+'<label for="uploadlinkhtmlmini"><span  class="lab"><b style="color:#039;">Code html</b> : <small>Copiez/collez sur votre site web ou votre blog : MySpace, Blogger, Friendster, eBay</small></span></label><br />'+
				'<input id="uploadlinkhtmlmini" class="txtcopy" onclick="this.select();" title="Clic droit puis copier" value="&lt;a href=&quot;http://ti1ca.com/'+info.id+'-'+esca(info.nom)+'.html&quot;&gt;&lt;img src=&quot;http://m'+serveur+'/'+info.id+'.jpg&quot; /&gt;&lt;a&gt;" readonly="readonly" type="text" style="width:600px;color:#039;"><br /><br />';
		}
		if (code!='html'){
			txtinfo=txtinfo+'<label for="uploadlinkubbmini"><span class="lab"><b style="color:#C33;">Code forum</b> : <small>Copier/coller dans un forum pour créer un lien vers le fichier</small></span></label><br />'+
				'<input id="uploadlinkubbmini" class="txtcopy" onclick="this.select();" title="Clic droit puis copier" value="[URL=http://ti1ca.com/'+info.id+'-'+esca(info.nom)+'.html][IMG]http://m'+serveur+'/'+info.id+'.jpg[/IMG][/URL]" readonly="readonly" type="text" style="width:600px;color:#C33;"><br />';
		}
		
		txtinfo=txtinfo+'<br />';

		document.getElementById("info").innerHTML=txtinfo;
		infook=true;
	}
}
//info bulle
var ibulle=false;
var txtib="";
var ibto=null;
function ib_move(e,force) {
  if(ibulle || force) {  // Si la bulle est visible, on calcul en temps reel sa position ideale
	if (navigator.appName!="Microsoft Internet Explorer") { // Si on est pas sous IE
		getId("curseur").style.left=(e.pageX+25)+"px";
		getId("curseur").style.top=(e.pageY+17)+"px";
	}
	else {
		if(document.documentElement.clientWidth>0) {
			getId("curseur").style.left=(25+event.x+document.documentElement.scrollLeft)+"px";
			getId("curseur").style.top=(17+event.y+document.documentElement.scrollTop)+"px";
		}
		else {
			getId("curseur").style.left=(25+event.x+document.body.scrollLeft)+"px";
			getId("curseur").style.top=(17+event.y+document.body.scrollTop)+"px";
		}
	}
  }
}

function ib_montre(e,text) {
  txtib=text;
  ib_move(e,true);
  ibto=setTimeout(function(){ib_montre2(text)},300);
}
function ib_montre2(text){
	if(!ibulle && txtib==text) {
		getId("curseur").style.visibility="visible"; // Si il est cacher (la verif n'est qu'une securité) on le rend visible.
		getId("curseur").innerHTML = text; // Cette fonction est a améliorer, il parait qu'elle n'est pas valide (mais elle marche)
		ibulle=true;
		
	}
}
function ib_cache() {

	if(ibulle==true) {
		txtib="";
		getId("curseur").style.visibility="hidden"; // Si la bulle etais visible on la cache
		ibulle=false;
	}
	ibulle=false;	
	if (ibto!=null){
		clearTimeout(ibto);
	}
}

function maj(txt,nbsec){
	var fin=false;
	var redir=false;
	if (txt=="NONSTATUS"){
		nberreur++;
		txt="";
	}
	if (nberreur>5){
		txt="L'envoi du document a échoué";
		fin="true";
	}

	if (txt.length>4){
		do{
			if (!encours){
				a=txt.split(/\|/);
				if (a.length>1){
					random=a[0];
					password=a[1];
					encours=true;
					txt="";
					nbsec=10;
					break;
				}
			}
			if (txt.substring(0,2)=='OK'){
				encours=false;
				a=txt.split(/\|/);
				ti1info({id:random,nom:a[5],serveur:serveur,taille:a[4],taillep:a[4]});
				redir=true;
				txt="Le transfert du fichier est <b>terminé</b>.";
				document.getElementById('ann').style.display="none";
				fin=true;
				break;
			}
			if (txt.substring(0,2)=='TR'){
				encours=true;
				a=txt.split(/\|/);
				txt='';
				ti1info({id:random,nom:a[5],serveur:serveur,taille:a[4],taillep:a[3]});
				check();
				if (a[4]-a[3]>1000000) nbsec=5000;
				break;
			}
			if (txt.substring(0,2)=='ER'){
				encours=false;
				txt="L'envoi du document a échoué ! "+txt;
				fin="true";
				break;
			}
		}while(false);
	}
	
	if (txt!="") document.getElementById("progressbar").innerHTML=txt;
	if (!nbsec) nbsec=2000;
	if (!fin) setTimeout("ajax('info/"+random.substr(0,1)+"/"+random+".info','GET',"+Math.random()+",false);",nbsec);
	if (fin){ encours=false;document.getElementById('iframedl').src="about:blank";}
	if (redir){
		var t='<form method="POST" action="http://ti1ca.com/'+random+'-'+esca(fichier.nom)+'.html" name="redirfin"><input type="hidden" name="pass" value="'+password+'" />';
		if (code=='ubb' || code=='html'){
			t=t+'<input type="hidden" name="code" value="'+code+'" />';
		}
		t=t+'</form>';
		document.getElementById("progressbar").innerHTML=t;
		document.redirfin.submit();
	}
}


function submitFile(){

	if (document.formu.Fichier && document.formu.Fichier.value==''){
		alert('Choisissez un fichier');
		return false;
	}
	if (document.formu.url && document.formu.url.value.length<8){
		alert('Veuillez entrer une adresse complète');
		return false;
	}
	document.getElementById('subbtn').value="Envoi en cours, patientez...";
	document.getElementById('subbtn').disabled="disabled";
	document.formu.submit();
	depart=(new Date()).getTime();
	lastdate=depart;
	maj('Démarrage du transfert ...',100);
	txt='<table><tr><td style="background-image:url(http://ti1ca.com/ti1ca-echelle.png);width:600px;height:26px;"><img src="http://ti1ca.com/ti1ca-barre.gif" id="barre" width="7" height="26" /></td></tr></table><span id="barreinfo">Démarrage du transfert ...</span>';
	document.getElementById("progressbar").innerHTML=txt;
	document.getElementById('progressbar').style.display="block";
	document.getElementById('ann').style.display="block";
	document.getElementById('formupload').style.display="none";

}

function cancelt(){
	encours=false;
	top.location.href="http://ti1ca.com";
}


function ajaxon(page,method,data,sync,fn) {
 var req = false;
 if(sync){sync=true;}else{sync=false;}
 if(window.XMLHttpRequest) {
  try {
   req = new XMLHttpRequest();
  } catch(e) {
   logerreur+='///'+e;
   req = false;
  }
 } else if(window.ActiveXObject) {
  try {
   req = new ActiveXObject("Msxml2.XMLHTTP");
  } catch(e) {
   try {
    req = new ActiveXObject("Microsoft.XMLHTTP");
   } catch(e) {
   logerreur+='///'+e;
    req = false;
   }
  }
 }
 if(req) {
  req.onreadystatechange = function(){
   if (req.readyState == 4 && req.status == 200) {try{fn(req.responseText);}catch(e){alert('Erreur:'+req.responseText+e);logerreur+='///'+e;}}
   if (req.readyState == 4 && req.status != 200) {alert('erreur '+req.responseText);}
  }
  if(method == "GET"){
   if(data == "null" || data==null ){req.open("GET", page,!sync);}
   else{req.open("GET", page+"?"+data,!sync);}
  }
  else if(method == "POST"){req.open("POST", page,!sync);}

  if(method == "GET"){req.send(null);}
  else if(method == "POST"){req.setRequestHeader('Content-Type','application/x-www-form-urlencoded');req.send(data);}

  if (sync) {try{fn(req.responseText);}catch(e){alert('Erreur'+e+' /// '+req.responseText);logerreur+='///'+e;}}
  return true;
 }
 else{
  return false;//vieux nav
 }
}


function getId(i){return document.getElementById(i);}


