// JavaScript Functions
function obrewin(url) {
	ext=window.open(url,'ext','left=50,top=50,width=480,height=480,scrollbars=1,toolbar=0,resizable=1');
	ext.focus();
}

function skfsubm() {
	$('skform').submit();
}

function recarregar(obj) {
	if ((obj.responseText!="")&&(obj.responseText!=null)) {
		alert(obj.responseText);
	} else {
		skfsubm();
	}
}

function include(fullUrl) {
	var e = document.createElement("script");
	e.src = fullUrl;
	e.type="text/javascript";
	document.getElementsByTagName("head")[0].appendChild(e);
}

function csslink(fullUrl) {
	var e = document.createElement("link");
	e.href = fullUrl;
	e.type="text/css";
	e.rel="stylesheet";
	e.media="all";
	document.getElementsByTagName("head")[0].appendChild(e);
}

function relative_time(time_value) {
     var parsed_date = Date.parse(time_value);

     var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
     var delta = parseInt((relative_to.getTime() - parsed_date) / 1000);

     if(delta < 60) {
         return 'fa < 1 minut';
     } else if(delta < 120) {
         return 'fa 1 minut';
     } else if(delta < (45*60)) {
         return 'fa '+(parseInt(delta / 60)).toString() + ' minuts';
     } else if(delta < (120*60)) {
         return 'fa 1 hora';
     } else if(delta < (24*60*60)) {
         return 'fa unes ' + (parseInt(delta / 3600)).toString() + ' hores';
     } else if(delta < (48*60*60)) {
         return 'fa 1 dia';
     } else {
         return 'fa '+(parseInt(delta / 86400)).toString() + ' dies';
     }
}


function recarregarfo () {
	obrefoto($('skfcomentar').ida.value,$('skfcomentar').idf.value,urlfotoact,comentableact);
}
	
function urlgo(url2go) {
	window.location.href=url2go;
}

function pag(id) {
	$('skform').pag.value=id;
	skfsubm();
}

function keyuppag(keypress,keyvalue) {
	if(keypress == 13) pag(keyvalue);
}

function cookieslogin() {
	var url = '/inc/ajaxinc.feslogin.php';
	var rq = new Ajax.Request( url, { method: 'get' });
}

function feslogin(keypress) {
	if(keypress==13) {
		var txtform=Form.serialize($('skflogin'));
		var url = '/inc/ajaxinc.feslogin.php';
		var rq = new Ajax.Request( url, { method: 'post', parameters: txtform, onComplete: recarregar });
	}
}

function sortir() {
	var url = '/inc/ajaxinc.sortir.php';
	var rq = new Ajax.Request( url, { method: 'get', onComplete: recarregar });
}

//Funcions de Bloc

function cercar() {
	$('skform').pag.value=1;
	skfsubm();
}

function keyupcercar(keypress,keyvalue) {
	$('skform').cercar.value=keyvalue;
	if(keypress == 13) cercar();
}

function insertacomentari(btn) {
	jQuery(".loadingMini").show();
	btn.disabled=true;
	
	var txtform=Form.serialize($('skfcomentar'));
	var url = '/inc/ajaxinc.insertacomentari.php';
	var rq = new Ajax.Request( url, { method: 'post', parameters: txtform, onComplete: function(o) {
		recarregar(o);
		if ((o.responseText!="")&&(o.responseText!=null)) {
			jQuery(".loadingMini").hide();
			btn.disabled=false;
		}
	}});
}

function insertafocomentari() {
	var txtform=Form.serialize($('skfcomentar'));
	var url = '/inc/ajaxinc.insertacomentari.php';
	var rq = new Ajax.Request( url, { method: 'post', parameters: txtform, onComplete: recarregarfo });
}

function confirmaesborra(filtre,id) {
	if (confirm('Esteu segurs que voleu esborrar aquest comentari?')) {
		var url = '/inc/ajaxinc.moderar.php';
		var rq = new Ajax.Request( url, { method: 'post', parameters: 'filtre='+filtre+'&id='+id, onComplete: recarregar });
	}
}
function confirmaesborrafo(filtre,id) {
	if (confirm('Esteu segurs que voleu esborrar aquest comentari?')) {
		var url = '/inc/ajaxinc.moderar.php';
		var rq = new Ajax.Request( url, { method: 'post', parameters: 'filtre='+filtre+'&id='+id+'&esfoto=1', onComplete: recarregarfo });
	}
}

function calendari(mesany) {
	var url = '/inc/ajaxinc.calendari.php';
	var rq = new Ajax.Updater( 'cal',url, { method: 'get', parameters: 'mesany='+mesany });
	
}

//Funcions de Fotos
function obregaleries() { 
	ud = new Ajax.Updater( 'fotocont', '/inc/fotos.galeries.php', { method: 'get' }); 
}

function obregaleria (id) {
	ud = new Ajax.Updater( 'fotocont', '/inc/fotos.galeria.php', { method: 'get' , parameters: 'id='+id }); 
}

var urlfotoact="";
var comentableact=1;
function obrefoto (ida,idf,srclink,escomentable) {
	urlfotoact=srclink;
	tip="Foto "+ida+"-"+idf;
	if (srclink.indexOf('flickr')>0) {
		idimg=srclink.substring(srclink.lastIndexOf('/')+1,srclink.indexOf('_'));
		if (srclink.lastIndexOf('_')==srclink.indexOf('_')) {
			linkgran=srclink.substring(0,srclink.length-4)+"_o.jpg";
		} else {
			linkgran=srclink.substring(0,srclink.length-6)+"_o.jpg";
		}
		src='<a title="'+tip+'" target="_blank" href="http://www.flickr.com/photos/siknus/'+idimg+'/"><img alt="'+tip+'" style="margin-bottom:5px; " border="0" src="'+srclink+'" /></a><br /><!--Fes clic <a title="'+tip+'" style="color:#0063DC;" target="_blank" href="'+linkgran+'">aquí</a> per veure aquesta foto en el tamany + gran.--><br /><br />';
	} else {
		src='<a title="'+tip+'" target="_blank" href="'+srclink+'"><img alt="'+tip+'" border="0" src="'+srclink+'" /></a>';
	}
	$("fotosimg").innerHTML=src;
	if(escomentable) {
		comentableact=1;
		$("fotosimgcoms").innerHTML='<center><br /><img src="/img/loadingcomentaris.gif" alt="" /><br /><br />S\'estan carregant els comentaris<br />d\'aquesta foto...</center>';
		ud = new Ajax.Updater( 'fotosimgcoms', '/inc/ajaxinc.fotoscomentaris.php', { method: 'get' , parameters: 'ida='+ida+'&idf='+idf }); 
	} else {
		comentableact=0;
	}
}

function preferits(url,nom){
   if ((navigator.appName=="Microsoft Internet Explorer") && 
         (parseInt(navigator.appVersion)>=4)) {
      window.external.AddFavorite(url,nom);
   } else { 
      if(navigator.appName == "Netscape") 
         alert("Premi Crtl+D per afegir aquesta pàgina a les adreces d'interès."); 
   }
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return unescape(c.substring(nameEQ.length,c.length).replace(/\+/g, " "));
	}
	return '';
}

function sendrecomanar(idp) {
	var getsr = function (obj) {
		result = obj.responseText.split("|");
		if (parseInt(result[0])) { 
			alert(result[2]);
			eval("document.recid_"+result[1]+".rec_nom1.value='';");
			eval("document.recid_"+result[1]+".rec_email1.value='';");
		} else { 
			alert(result[1]);
		}
	}
	var txtform=Form.serialize('recid_'+idp);
	var url = '/inc/ajaxinc.emlrecomanar.php';
	var rq = new Ajax.Request( url, { method: 'post', parameters: txtform, onComplete: getsr });
}


function recomanareml(idp,titol){
   Element.toggle('recomanar-'+idp);
   if ($('recomanar-'+idp).innerHTML=="") {
	   cht='<form id="recid_'+idp+'" name="recid_'+idp+'" action="#"><p style="width:400px;"><span class="titolrec">Recomanar el post &ldquo;'+titol+'&rdquo; per e-mail</span></p><br />';
	   cht+='<p><label class="short">El teu nom:<br /><input type="text" name="rec_nom0" value="'+readCookie('skrecnom')+'" tabindex="1"></label>';
	   cht+='<label>El teu e-mail:<br /><input type="text" name="rec_email0" value="'+readCookie('skreceml')+'" tabindex="2"></label></p>';
	   cht+='<p><label class="short">Nom del destinatari:<br /><input type="text" name="rec_nom1" class="short" tabindex="3"></label>';
	   cht+='<label>E-mail del destinatari:<br /><input type="text" name="rec_email1" tabindex="4"></label></p>';
	   cht+='<p><label style="width:300px; margin-top:5px;">Comentari complementari (opcional):</label><br />';
	   cht+='<textarea name="rec_comentari" rows="3" style="width:370px;" tabindex="5"></textarea><br />';
	   cht+='<input name="idp" value="'+idp+'" type="hidden" />';
	   cht+='<input style="margin-left:105px;" type="button" name="Enviar" tabindex="6" value="Enviar" class="btn" onclick="javascript:sendrecomanar('+idp+');">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="button" name="Tancar" tabindex="7" value="Tancar" class="btn" onclick="javascript:Element.toggle(\'recomanar-'+idp+'\');"></p></form>';
	   $('recomanar-'+idp).innerHTML=cht; 
   }
  
}

//Funcions de Forum
function resxpag() {
	var txtform=Form.serialize($('fresxpag'));
	var url = '/inc/ajaxinc.resxpag.php';
	var rq = new Ajax.Request( url, { method: 'post', parameters: txtform, onComplete: recarregar });
}

function guardanotifs() {
	var txtform=Form.serialize($('skfnotifs'));
	var url = '/inc/ajaxinc.guardanotifs.php';
	var rq = new Ajax.Request( url, { method: 'post', parameters: txtform, onComplete: recarregar });
}

function insertamsg() {
	var txtform=Form.serialize($('skfmsg'));
	var url = '/inc/ajaxinc.insertamsg.php';
	var rq = new Ajax.Request( url, { method: 'post', parameters: txtform, onComplete: recarregar });
}


function treuaccents (str) {
    function rac_analyzer (x) {
            if (x < 'ß')
                  return rac_analyzer(x.toLowerCase()).toUpperCase();
            else {
                  switch (x) {
                        case 'à': case 'á': case 'â': case 'ã': case 'ä': case 'å':
                              return 'a';
                        case 'æ':
                              return 'ae';
                        case 'ç':
                              return 'c';
                        case 'è': case 'é': case 'ê': case 'ë':
                              return 'e';
                        case 'ì': case 'í': case 'î': case 'ï':
                              return 'i';
                        case 'ð':
                              return 'd';
                        case 'ñ':
                              return 'n';
                        case 'ò': case 'ó': case 'ô': case 'õ': case 'ö': case 'ø':
                              return 'o';
                        case 'ù': case 'ú': case 'û': case 'ü':
                              return 'u';
                        case 'ý': case 'ÿ':
                              return 'y';
                        case 'þ':
                              return 'th';
                        case 'ß':
                              return 'ss';
                        default:
                              return x;
                  }
            }
    }
   
    return str.replace(/[À-ÿ]/g, rac_analyzer);
}


function highlight(searchText) {
  function htmlentities(txtstr) {
	  var chars = new Array ('&','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','?','€','\"','?','<','>','¢','£','?','¥','¦','§','¨','©','×','«','¬','­','®','¯','°','±','²','³','´','µ','¶','·','¸','¹','÷','»','¼','½','¾');
	  var entities = new Array ('amp','agrave','aacute','acirc','atilde','auml','aring','aelig','ccedil','egrave','eacute','ecirc','euml','igrave','iacute','icirc','iuml','eth','ntilde','ograve','oacute','ocirc','otilde','ouml','oslash','ugrave','uacute','ucirc','uuml','yacute','thorn','yuml','Agrave','Aacute','Acirc','Atilde','Auml','Aring','AElig','Ccedil','Egrave','Eacute','Ecirc','Euml','Igrave','Iacute','Icirc','Iuml','ETH','Ntilde','Ograve','Oacute','Ocirc','Otilde','Ouml','Oslash','Ugrave','Uacute','Ucirc','Uuml','Yacute','THORN','euro','quot','szlig','lt','gt','cent','pound','curren','yen','brvbar','sect','uml','copy','ordf','laquo','not','shy','reg','macr','deg','plusmn','sup2','sup3','acute','micro','para','middot','cedil','sup1','ordm','raquo','frac14','frac12','frac34');
	  for (var i = 0; i < chars.length; i++) txtstr.replace (chars[i], '&' + entities[i] + ';');
	  return txtstr;
  }
  function doHighlight(bodyText, searchTerm, highlightStartTag, highlightEndTag) { 
	  var newText = ""; var i = -1; var lcSearchTerm = htmlentities(searchTerm.toLowerCase()); var lcBodyText = bodyText.toLowerCase();
	  while (bodyText.length > 0) {
		i = lcBodyText.indexOf(lcSearchTerm, i+1);
		if (i < 0) {
		  newText += bodyText; bodyText = "";
		} else {
		  if (bodyText.lastIndexOf(">", i) >= bodyText.lastIndexOf("<", i)) {
			if (lcBodyText.lastIndexOf("/script>", i) >= lcBodyText.lastIndexOf("<script", i)) {
			  newText += bodyText.substring(0, i) + highlightStartTag + bodyText.substr(i, searchTerm.length) + highlightEndTag;
			  bodyText = bodyText.substr(i + searchTerm.length);
			  lcBodyText = bodyText.toLowerCase();
			  i = -1;
			}
		  }
		}
	  }
	  return newText;
  }
  searchArray = searchText.split(" "); 
  var bodyText = $('posts').innerHTML;
  for (var i = 0; i < searchArray.length; i++) bodyText = doHighlight(bodyText, searchArray[i], "<span style=\"background-color:#FF8\">", "</span>");
  $('posts').innerHTML = bodyText;
}
