////////////////////////////////////////////////////////
// funcion de prestacion de tiempo
function dameFufo(){
	return new Date().valueOf();
}
function dameFufoCon( anio, mes, dia, h, m, s ){
	return new Date(anio, mes, dia, h, m, s, 0).valueOf();
}
function segundosFufoHace( fufo ){
	var cDT = new Date();
	cDT.setTime(cDT.getTime() - fufo*1000 );
	return Math.round(cDT.getTime()/1000);
}
function deFufoToString( fufo ){
	var cDT = new Date();
	cDT.setTime(fufo*1000);
	var anios = cDT.getFullYear();var meses = cDT.getMonth()+1;
	var dias = cDT.getDate(); var h = cDT.getHours(); var m = cDT.getMinutes(); var s = cDT.getSeconds();
	return dias+"/"+(meses<10?"0":"")+meses+"/"+anios+" "+h+":"+m+":"+s;
	return curDateTime.toLocaleString();
}
function dameFufoHace( fufo, sionon ){
	sionon = sionon || false;
	var cDT = new Date();
	cDT.setTime(cDT.getTime() - fufo*1000 );
	var anios = cDT.getFullYear()-1970;var meses = cDT.getMonth();
	var dias = cDT.getDate()-1; var h = cDT.getHours()-1; var m = cDT.getMinutes(); var s = cDT.getSeconds();
	return dameStringFecha( anios, meses, dias, h, m, s, sionon );
}
function dameSextaEntreDosFufos( fufo1, fufo2 ){
	var cDT = new Date();
	cDT.setTime( fufo1 - fufo2 );
	var anios = cDT.getFullYear()-1970;var meses = cDT.getMonth();
	var dias = cDT.getDate()-1; var h = cDT.getHours()-1; var m = cDT.getMinutes(); var s = cDT.getSeconds();
	return new Array( anios, meses, dias, h, m, s );
}
function dameStringFecha( anios, meses, dias, h, m, s, sionon ){
	var strng = "";
	if( anios > 0 ){
		strng += anios+" ";
		strng += "a&ntilde;o"+(anios==1?"":"s")+" ";
		if( dias > 0 || meses > 0){
			strng += ",";
		}
		strng += " ";
	}
	if( meses > 0 ){
		strng += meses+" ";
		strng += "mes"+(meses==1?"":"es");
		if( dias > 0 ){
			if( sionon ){
				strng += " y ";
			}else{
				strng += ",";
			}
		}
		strng += " ";
	}
	if( dias > 0 ){
		strng += dias+" ";
		strng += "d&iacute;a"+(dias==1?"":"s");
	}
	if( strng == "" || !sionon ){
		if( dias > 0 || meses > 0 || anios > 0 ){
			if( h > 0 || m > 0 || s > 0 ){
				strng += "; y ";
			}
		}
		if( h > 0  ){
			strng += h+" h., ";
		}
		if( m > 0 ){
			if( s == 0 && h > 0 && !sionon ){
				strng += " con ";
			}
			strng += m+" min.";
		}
		if( s > 0 && !sionon ){
			if( h > 0 || m > 0 ){
				strng += " con ";
			}
			strng += s+" seg.";
		}else{
			if( strng == "" ){
				strng = "unos instantes";
			}
		}
	}
	return strng;
}
function dameFufoHora( fufo ){
	var cDT = new Date();
	cDT.setTime( fufo );
	var h = cDT.getHours(); var m = cDT.getMinutes(); var s = cDT.getSeconds();
	var strng = "";
		strng += h+":";
		if( m < 10 ){
			strng += "0";
		}
		strng += m;
		strng += '<span class="bloque5_padrecito">';
		strng += ":";
		if( s < 10 ){
			strng += "0";
		}
		strng += s;
		strng += '</span>';
	return strng;
}
function pasarDeFechaNacToFufo(s){
	var terna = sacarTernaNac(s);
	var dia = terna[0];
	var mes = terna[1];
	var ayo = terna[2];
	var edad = dameSextaEntreDosFufos( dameFufo(),dameFufoCon(ayo,mes,dia,0,0,0) )[0];
	var afaltan = dameSextaEntreDosFufos( dameFufoCon(2100,mes,dia,0,0,0),dameFufo() );
		var fmeses = afaltan[1]-1;
		var fdias = afaltan[2];
		var stringFalta = "falta"+((fmeses+fdias)>1?"n":"")+(fmeses>=1?" "+fmeses +" mes"+(fmeses>1?"es":'')+" y ":" ")+fdias+" d&iacute;a"+"s";
	return '<span title="'+sacarHoroscopo(dia,mes)+'">'+dia+'/'+mes+'/'+ayo+'</span> - <span class="bloque5_datehace" title="'+stringFalta+'">'+edad+' a&ntilde;os</span>';
}
function pasarDeSexoToSexo(s){
	switch( s[0] ){
		case "M":
			return "Masculino";	
		case "F":
			return "Femenino";
	}
	return "Indefinido";
}
function sacarTernaNac(s){
	var ars = s.split("");
	var dia = ars[0]*10 + ars[1]*1;
	var mes = ars[2]*10 + ars[3]*1;
	var ayo = ars[4]*1000 + ars[5]*100 + ars[6]*10 + ars[7]*1;
	return new Array( dia, mes, ayo );
}
function sacarHoroscopo( dia, mes ){
	if( dia <= 20 && mes <= 1 ){
		return "Capricornio";
	}else if( (dia <= 19 && mes == 2) ||  mes < 2 ){
		return "Acuario";
	}else if( (dia <= 20 && mes == 3) ||  mes < 3 ){
		return "Piscis";
	}else if( (dia <= 20 && mes == 4) ||  mes < 4 ){
		return "Aries";
	}else if( (dia <= 21 && mes == 5) ||  mes < 5 ){
		return "Tauro";
	}else if( (dia <= 21 && mes == 6) ||  mes < 6 ){
		return "G&eacute;minis";
	}else if( (dia <= 23 && mes == 7) ||  mes < 7 ){
		return "C&aacute;ncer";
	}else if( (dia <= 23 && mes == 8) ||  mes < 8 ){
		return "Leo";
	}else if( (dia <= 23 && mes == 9) ||  mes < 9 ){
		return "Virgo";
	}else if( (dia <= 23 && mes == 10) ||  mes < 10 ){
		return "Libra";
	}else if( (dia <= 22 && mes == 11) ||  mes < 11 ){
		return "Escorpio";
	}else if( (dia <= 21 && mes == 12) ||  mes < 12 ){
		return "Sagitario";
	}
	return "Capricornio";
}
////////////////////////////////////////////////////////
// funciones matematicas
function aleatorio(inferior,superior){ 
    numPosibilidades = superior - inferior 
    aleat = Math.random() * numPosibilidades 
    aleat = Math.floor(aleat) 
    return parseInt(inferior) + aleat 
} 
////////////////////////////////////////////////////////
// funciones de codificación y decodificación de cadenas
function urlescape(s){
	return encodeURIComponent( s );
}
function urlunescape(s, sinimagen){
	sinimagen = sinimagen || false;
	var str = s;
	try{
		str = str.split("%0D%0A").join("<br/>");
		str = str.split("%0A").join("<br/>");
		try{
			str = decodeURIComponent( str );
		}catch(e){
			str = unescape( str );
		}
		str = str.split("\\\\\\'").join("'");
		str = str.split("\\'").join("'");
		str = str.split('\\"').join('"');
		str = str.split("+").join(" ");
		if( !sinimagen ){
			str = pasaReURL(str);
			str = pasaKopete(str);
		}else{
			str = pasaQuitaAngulitos(str);
		}
	}catch(e){
	}
	return str;
}
function concatena( s1, s2, s3, s4, s5 ){
	s3 = s3 || ""; s4 = s4 || ""; s5 = s5 || "";
	return s1+s2+s3;
}

////////////////////////////////////////////////////////
// reproductor embebido
var ultimoDicho = "";
function googleSay( que ){
	if( ultimoDicho != que ){
		ultimoDicho = que;
		if( "val" == "en" ){
			var dir = "genproxy.php?x="+urlescape("http://translate.google.es/translate_tts?q="+urlescape(que)+"&tl=en");
			reproducirColgado( "su", urlescape(urlescape(dir)) );
			reproductorMinimizar();
/*		}else if( "val" == "www" ){
			var dir = "tts.php?texto="+urlescape(que);
			reproducirColgado( "su", urlescape(urlescape(dir)) );
			reproductorMinimizar();
*/		}
	}
}

function pasaQuitaAngulitos( str ){
	str = str.split("<br/>").join("\n");
	return str;
}

function pasaReURL( str ){
	str = str.split("http://youtube.com/watch?").join("youtube.com/watch?");
	str = str.split("http://es.youtube.com/watch?").join("youtube.com/watch?");
	str = str.split("http://www.youtube.com/watch?").join("youtube.com/watch?");
	/*****************************************/
	var astr = str.split("youtube.com/watch?");
	str = astr[0];
	for( var i = 1; i < astr.length; i++){
		var temp = astr[i].split(" ");
		var videoid = temp[0].split("v=")[1].split("&")[0];
		temp[0] = "#vy_"+videoid;
		str += temp.join(" ");
	}
	str = reURLWWW(str);	// se les pusiera ese prefijo, y luego se trataren todas por igual
	str = reURL(str);		// la idea aqui seria que primero las cadenas de "www." sin "http://" delante
	str = reURLaHash( str, ">" );
	str = reURLaHash( str, "(" );
	str = reURLaHash( " "+str, " " );
	return str;
}

function reURLWWW( s ){
	var astr = s.split("www.");
	var str = astr[0];
	for( var i = 1; i < astr.length; i++){
		var temp = astr[i-1].split("http://");
		if( temp[ temp.length-1 ] != "" ){
			str += "http://";
		}
		str += "www."+astr[i];
	}
	return str;
}
function reURL(s){
	var astr = s.split("http://");
	str = astr[0];
	for( var i = 1; i < astr.length; i++){
		var temp;
		var temp1 = astr[i].split(" ");
		var temp2 = astr[i].split(";");
		var temp3 = astr[i].split(",");
		var temp4 = astr[i].split('"');
		var temp5 = astr[i].split("'");
		var temp6 = astr[i].split("<");
		var temp7 = astr[i].split(")");
		if( 	  temp1[0].length < temp2[0].length && temp1[0].length < temp3[0].length && temp1[0].length < temp4[0].length && temp1[0].length < temp5[0].length && temp1[0].length < temp6[0].length && temp1[0].length < temp7[0].length ){
			temp = temp1; fin = " ";
		}else if( temp2[0].length < temp1[0].length && temp2[0].length < temp3[0].length && temp2[0].length < temp4[0].length && temp2[0].length < temp5[0].length && temp2[0].length < temp6[0].length && temp2[0].length < temp7[0].length){
			temp = temp2; fin = ";";
		}else if( temp3[0].length < temp1[0].length && temp3[0].length < temp2[0].length && temp3[0].length < temp4[0].length && temp3[0].length < temp5[0].length && temp3[0].length < temp6[0].length && temp3[0].length < temp7[0].length){
			temp = temp3; fin = ",";
		}else if( temp4[0].length < temp1[0].length && temp4[0].length < temp2[0].length && temp4[0].length < temp3[0].length && temp4[0].length < temp5[0].length && temp4[0].length < temp6[0].length && temp4[0].length < temp7[0].length){
			temp = temp4; fin = '"';
		}else if( temp5[0].length < temp1[0].length && temp5[0].length < temp2[0].length && temp5[0].length < temp3[0].length && temp5[0].length < temp4[0].length && temp5[0].length < temp6[0].length && temp5[0].length < temp7[0].length){
			temp = temp5; fin = "'";
		}else if( temp6[0].length < temp1[0].length && temp6[0].length < temp2[0].length && temp6[0].length < temp3[0].length && temp6[0].length < temp4[0].length && temp6[0].length < temp5[0].length && temp6[0].length < temp7[0].length){
			temp = temp6; fin = '<';
		}else{
			temp = temp7; fin = ")";
		}
		var mod = true;
		if( temp.length > 1 && fin == '"' ){
			mod = false;
		}
		if( mod ){
			temp[0] = '<a class="enlacesinsub" target="blank" href="'+"http://"+temp[0]+'">'+temp[0]+'</a>';
		}
		str += temp.join(fin);
	}
	return str;
}

function reURLaHash(s, cadenaComienzo ){
	var astr = s.split(cadenaComienzo+"#");
	var str = astr[0];
	for( var i = 1; i < astr.length; i++){
		var temp = astr[i].split(" ");
		var arra = temp[0].split("_"); var temporal = arra[0]; arra[0] = ""; arra[1] = arra.join("_").substr(1); arra[0] = temporal;
		switch( arra[0] ){
			case "vy":
			case "sg":
				temp[0] = cadenaComienzo+'<a class="enlacesinsub" href="#'+temp[0]+'" title="Haz clic para verlo en el \'Reproductor emergente\'" onclick="reproducirColgado(\''+arra[0]+'\',\''+arra[1]+'\');">#'+temp[0]+'</a>';
				break;
			default:
				temp[0] = cadenaComienzo+'<a class="enlacesinsub" href="#'+temp[0]+'">#'+temp[0]+'</a>';
		}
		str += temp.join(" ");
	}
	return str;
}



function pasaKopete( strng ){
	strng = recambia(strng, ":)", "smile");						strng = recambia(strng, "(:", "smile");
	strng = recambia(strng, ":(", "sad");						strng = recambia(strng, "):", "sad");
	strng = recambia(strng, ":D", "smile-big");
	strng = recambia(strng, ";)", "wink");						strng = recambia(strng, ";(", "worship");
	strng = recambia(strng, "(%)", "yin-yang");
	strng = recambia(strng, ":P", "tongue");					strng = recambia(strng, ":p", "tongue");
	strng = recambia(strng, ";P", "silly");						strng = recambia(strng, ";p", "messed");
	strng = recambia(strng, "(8)", "musical-note");
	strng = recambia(strng, "(K)", "kiss");						strng = recambia(strng, "(k)", "kiss");
	strng = recambia(strng, "(L)", "love");						strng = recambia(strng, "(l)", "love");
	strng = recambia(strng, "(LL)", "emblem-favorites");		strng = recambia(strng, "(ll)", "emblem-favorites");
	strng = recambia(strng, "(mono)", "monkey");
	strng = recambia(strng, ":$", "embarrassed");
	strng = recambia(strng, ":$", "embarrassed");
	strng = recambia(strng, ":S", "moneymouth");				strng = recambia(strng, ":s", "confused");
	strng = recambia(strng, ":X", "shut-mouth");				strng = recambia(strng, ":x", "shut-mouth");
	strng = recambia(strng, ":M", "mail");						strng = recambia(strng, ":m", "mail");
	strng = recambia(strng, "=D", "smile-big");
	strng = recambia(strng, "=)", "sinister");
	strng = recambia(strng, "(*)", "star");
	strng = recambia(strng, "(@)", "cat");
	strng = recambia(strng, ":O", "yawn");						strng = recambia(strng, ":o", "yawn");
	strng = recambia(strng, ":'(", "crying");
	strng = recambia(strng, ":|", "neutral");
	strng = recambia(strng, "(H)", "glasses-cool");				strng = recambia(strng, "(h)", "glasses-cool");
	strng = recambia(strng, "^^", "victory");
	strng = recambia(strng, "xd", "messed"); 	strng = recambia(strng, "xD", "face-smile-big");

	return strng;
}

function recambia( s, que, por ){
	var diremotes = 'imagenes/emotes/pasodoble-kopete';
	return s.split(que).join('<img class="emote" src="'+diremotes+'/'+por+'.png" title="'+que+'" alt="'+que+'">');
}

