////////////////////////////////////////////////////////////////////////////
// Rutines Java Genèriques Mode 'C' =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= //
// Copyright (c) 1999-2005 A. C. DiversiaWorld                            //
// asic@fragalia.com                                                        //                                             //
//                                                                        //
// Registrat en el Reg. Propietat Intel·lectual del Dept. de Cultura de   //
// la Generalitat de Catalunya                                            //
// Podeu fer-ne ús lliure en webs no comercials ni lucratives, avisant-ne //
// prèviament a l'autor mitjançant les URLs anteriors                     //
// Uso libre con fines no lucrativo previo aviso mediante las citadas URL //
////////////////////////////////////////////////////////////////////////////

// Funcions botó dret -----------------------------------------------------
var message="";
function clickIE() {if (document.all) {(message);return false;}}
function clickNS(e) {if 
(document.layers||(document.getElementById&&!document.all)) {
if (e.which==2||e.which==3) {(message);return false;}}}
if (document.layers) 
{document.captureEvents(Event.MOUSEDOWN);document.onmousedown=clickNS;}
else{document.onmouseup=clickNS;document.oncontextmenu=clickIE;}
// ------------------------------------------------------------------------

// Funcions antisel·lecció ------------------------------------------------
document.onselectstart=new Function("return false");
// ------------------------------------------------------------------------
	
// Funcions afegeix a preferits -------------------------------------------
var bookmarkurl="http://www.fragalia.com" 
var bookmarktitle="Web de del canal Gay_Busca_Novio" 
function addbookmark(){ 
if (document.all) 
window.external.AddFavorite(bookmarkurl,bookmarktitle) 
} 
// ------------------------------------------------------------------------

// Funcions de la data ----------------------------------------------------
var dies = new Array(8);
dies[1] = "diumenge";
dies[2] = "dilluns";
dies[3] = "dimarts";
dies[4] = "dimecres";
dies[5] = "dijous";
dies[6] = "divendres";
dies[7] = "dissabte";
var mesos = new Array(13);
mesos[1] = "de gener";
mesos[2] = "de febrer";
mesos[3] = "de març";
mesos[4] = "d'abril";
mesos[5] = "de maig";
mesos[6] = "de juny";
mesos[7] = "de juliol";
mesos[8] = "d'agost";
mesos[9] = "de setembre";
mesos[10] = "d'octubre";
mesos[11] = "de novembre";
mesos[12] = "de desembre";
var ObjecteData = new Date();
var escriudia = dies[ObjecteData.getDay() + 1];
var escriumes = mesos[ObjecteData.getMonth() + 1];
var escriunumero = ObjecteData.getDate();
var escriuany = ObjecteData.getYear();
if (escriuany < 2000)
escriuany = escriuany + 1900;
// ------------------------------------------------------------------------

// Funcions de formularis colorejats --------------------------------------
var highlightcolor="#FFFFCC"
var ns6=document.getElementById&&!document.all
var previous=''
var eventobj
//var intended=/INPUT|TEXTAREA|SELECT|OPTION/
var intended=/INPUT|TEXTAREA|SELECT/
function checkel(which){
if (which.style&&intended.test(which.tagName)){
if (ns6&&eventobj.nodeType==3)
eventobj=eventobj.parentNode.parentNode
return true
}
else
return false
}
function highlight(e){
eventobj=ns6? e.target : event.srcElement
if (previous!=''){
if (checkel(previous))
previous.style.backgroundColor=''
previous=eventobj
if (checkel(eventobj))
eventobj.style.backgroundColor=highlightcolor
}
else{
if (checkel(eventobj))
eventobj.style.backgroundColor=highlightcolor
previous=eventobj
}
}
// ------------------------------------------------------------------------

// Funció de només enviar un cop ------------------------------------------
function submitonce(theform){
if (document.all||document.getElementById){
for (i=0;i<theform.length;i++){
var tempobj=theform.elements[i]
if(tempobj.type.toLowerCase()=="submit"||tempobj.type.toLowerCase()=="reset")
tempobj.disabled=true
}
}
}
// lon();
// ------------------------------------------------------------------------

// Funció de tremolar -----------------------------------------------------
// Sintàxi: <img src="nom_arxiu_imatge.jpg" width="328" height="239" border="1" class="tremolaimatge" onMouseover="init(this);rattleimage()" onMouseout="stoprattle(this);top.focus()" onClick="top.focus()">
var rector=1
var stopit=0 
var valora=1
function init(which){
stopit=0
shake=which
shake.style.left=0
shake.style.top=0
}
function rattleimage(){
if ((!document.all&&!document.getElementById)||stopit==1)
return
if (valora==1){
shake.style.top=parseInt(shake.style.top)+rector
}
else if (valora==2){
shake.style.left=parseInt(shake.style.left)+rector
}
else if (valora==3){
shake.style.top=parseInt(shake.style.top)-rector
}
else{
shake.style.left=parseInt(shake.style.left)-rector
}
if (valora<4)
valora++
else
valora=1
setTimeout("rattleimage()",50)
}
function stoprattle(which){
stopit=1
which.style.left=0
which.style.top=0
}
// ------------------------------------------------------------------------

// Funcions colorejar taula (v.2) -----------------------------------------

// Ús: <table onMouseover="changeto(event, 'lightgreen')" onMouseout="changeback(event, 'white')">
// Desús: id="ignora"

var ns6=document.getElementById&&!document.all
var ie=document.all

function changeto(e,highlightcolor){
source=ie? event.srcElement : e.target
if (source.tagName=="TR"||source.tagName=="TABLE")
return
while(source.tagName!="TD"&&source.tagName!="HTML")
source=ns6? source.parentNode : source.parentElement
if (source.style.backgroundColor!=highlightcolor&&source.id!="ignora")
source.style.backgroundColor=highlightcolor
}

function contains_ns6(master, slave) { 
while (slave.parentNode)
if ((slave = slave.parentNode) == master)
return true;
return false;
}

function changeback(e,originalcolor){
if
(ie&&(event.fromElement.contains(event.toElement)||source.contains(event.toElement)||source.id=="ignora")||source.tagName=="TR"||source.tagName=="TABLE")
return
else if (ns6&&(contains_ns6(source, e.relatedTarget)||source.id=="ignora"))
return
if (ie&&event.toElement!=source||ns6&&e.relatedTarget!=source)
source.style.backgroundColor=originalcolor
}
// ------------------------------------------------------------------------

// Funció de links animats amb fade ---------------------------------------
fadeColor = "#FF0000";
stepIn = 23;
stepOut = 45;
autoFade = false;  
sloppyClass = false;
macCompat = true;

hexa = new makearray(16);
for(var i = 0; i < 10; i++)
    hexa[i] = i;
hexa[10]="a"; hexa[11]="b"; hexa[12]="c";
hexa[13]="d"; hexa[14]="e"; hexa[15]="f";

document.onmouseover = domouseover;
document.onmouseout = domouseout;

fadeColor = dehexize(fadeColor.toLowerCase());

var fadeId = new Array();

function dehexize(Color){
	var colorArr = new makearray(3);
	for (i=1; i<7; i++){
		for (j=0; j<16; j++){
			if (Color.charAt(i) == hexa[j]){
				if (i%2 !=0)
					colorArr[Math.floor((i-1)/2)]=eval(j)*16;
				else
					colorArr[Math.floor((i-1)/2)]+=eval(j);
			}
		}
	}
	return colorArr;
}

function domouseover() {
	if(document.all){
		var srcElement = event.srcElement;
		if ((srcElement.tagName == "A" && autoFade && srcElement.className != "nofade") || srcElement.className == "fade" || (sloppyClass && srcElement.className.indexOf("fade") != -1)) {
				if (!srcElement.startColor) {
					srcElement.startColor = (srcElement.style.color)? srcElement.style.color: srcElement.currentStyle.color;
					srcElement.startColor = dehexize(srcElement.startColor.toLowerCase());
				}
				var link = (macCompat? srcElement.name: srcElement.uniqueID);
				if (link) fade(srcElement.startColor,fadeColor,link,stepIn);				
				else if (macCompat) alert("Error: Mac Compatility mode enabled, but link has no name.");
		}
	}
}

function domouseout() {
	if (document.all){
		var srcElement = event.srcElement;
		if ((srcElement.tagName == "A" && autoFade && srcElement.className != "nofade") || srcElement.className == "fade" || (sloppyClass && srcElement.className.indexOf("fade") != -1)) {
			var link = (macCompat? srcElement.name: srcElement.uniqueID);
			if (link) fade(fadeColor,srcElement.startColor,link,stepIn);
		}
	}
}

function makearray(n) {
    this.length = n;
    for(var i = 1; i <= n; i++)
        this[i] = 0;
    return this;
}

function hex(i) {
    if (i < 0)
        return "00";
    else if (i > 255)
        return "ff";
    else
       return "" + hexa[Math.floor(i/16)] + hexa[i%16];
}

function setColor(r, g, b, element) {
      var hr = hex(r); var hg = hex(g); var hb = hex(b);
      element.style.color = "#"+hr+hg+hb;
}

function fade(s,e,element,step) {
	var sr = s[0]; var sg = s[1]; var sb = s[2];
	var er = e[0]; var eg = e[1]; var eb = e[2];
	
	if (fadeId[0] != null && fade[0] != element && eval(fadeId[0])) {
		var orig = eval(fadeId[0]);
		setColor(orig.startColor[0],orig.startColor[1],orig.startColor[2],orig);
		var i = 1;
		while(i < fadeId.length) {
			clearTimeout(fadeId[i]);
			i++;
		}
	}
		
	for(var i = 0; i <= step; i++) {
		fadeId[i+1] = setTimeout("setColor(Math.floor(" +sr+ " *(( " +step+ " - " +i+ " )/ " +step+ " ) + " +er+ " * (" +i+ "/" +
			step+ ")),Math.floor(" +sg+ " * (( " +step+ " - " +i+ " )/ " +step+ " ) + " +eg+ " * (" +i+ "/" +step+
			")),Math.floor(" +sb+ " * ((" +step+ "-" +i+ ")/" +step+ ") + " +eb+ " * (" +i+ "/" +step+ ")),"+element+");",i*step);
	}
	fadeId[0] = element;
}
// ------------------------------------------------------------------------

// Funció de centrar la finestra ------------------------------------------
// Altres usos: onclick="ObreFinestra(this.href,'nom','400','400','yes');return false"
// Especifiqueu al final d'atributs: directories, location, menubar, status, toolbar, etc.
function ObreFinestra(pag,identificador,w,h,scroll){
PosicioEsquerra = (screen.width) ? (screen.width-w)/2 : 0;
PosicioSostre = (screen.height) ? (screen.height-h)/2 : 0;
atributs = 'height='+h+',width='+w+',top='+PosicioSostre+',left='+PosicioEsquerra+',scrollbars='+scroll+',resizable'
win = window.open(pag,identificador,atributs)
}
// ------------------------------------------------------------------------

// Funcions antispam ------------------------------------------------------
function correuNet(usuari,referencia,origen,domini,extensio) {
	ubicacio = "mailto:" + usuari + "@" + domini + "." + extensio;
	window.location = ubicacio;
	}
// ------------------------------------------------------------------------

// Funcions Aprova Perfil -------------------------------------------------
function InfoPerfilCA() { 
ObreFinestra('http://www.fragalia.com/perfils/perfils_normes_ca.php','FinestraInfo','640','280');
	}

function InfoPerfilES() { 
ObreFinestra('http://www.fragalia.com/perfils/perfils_normes.php','FinestraInfo','640','280');
	}
// ------------------------------------------------------------------------

// Funcions de la Llegenda de Colors -------------------------------------------------
function ObreColorsCA() { 
ObreFinestra('http://www.fragalia.com/estructura/infocolor/colors_ca.htm','FinestraCupido','650','500','yes');
	}

function ObreColorsES() { 
ObreFinestra('http://www.fragalia.com/estructura/infocolor/colors_es.htm','FinestraCupido','650','500','yes');
	}
// ------------------------------------------------------------------------

// Funcions del Cercle d'Amics --------------------------------------------
function ObreCercleES() { 
ObreFinestra('http://www.fragalia.com/cercleamics/index_es.php','Interactua','750','550','yes');
	}
function ObreCercleCA() { 
ObreFinestra('http://www.fragalia.com/cercleamics/index_ca.php','Interactua','750','550','yes');
	}
// ------------------------------------------------------------------------

// Funcions del Missatger -------------------------------------------------
function ObreMsgrES() { 
ObreFinestra('http://www.fragalia.com/missatger/index_es.php','missatger','307','421');
	}
function ObreMsgrCA() { 
ObreFinestra('http://www.fragalia.com/missatger/index_ca.php','missatger','307','421');
	}
// ------------------------------------------------------------------------

// Funcions del Fòrum -----------------------------------------------------
function ObreForum() { 
ObreFinestra('http://www.asesor-direct.com/ong/zenkiu','FinestraForum','760','550','yes');
	}
// ------------------------------------------------------------------------

// Servei de Càrrega ------------------------------------------------------
function lon(target)
{
	if (undefined == target)
		target = this;

	if (undefined == target._lon_disabled_arr)
		target._lon_disabled_arr = new Array();
	else if (target._lon_disabled_arr.length > 0)
		return true;

	target.document.getElementById("loaderContainer").style.display = "";
	var select_arr = target.document.getElementsByTagName("select");

	for (var i = 0; i < select_arr.length; i++) {
		select_arr[i].disabled = true;
		_lon_disabled_arr.pop(select_arr[i]);
		var clone = target.document.createElement("input");
		clone.type = "hidden";
		clone.name = select_arr[i].name;
		var values = new Array();
		for (var n = 0; n < select_arr[i].length; n++) {
			if (select_arr[i][n].selected) {
				values[values.length] = select_arr[i][n].value;
			}
		}
		clone.value = values.join(",");
		select_arr[i].parentNode.insertBefore(clone, select_arr[i]);
	}
	return true;
}

function loff(target)
{
	if (undefined == target)
		target = this;

	target.document.getElementById("loaderContainer").style.display = "none";
	if (undefined == target._lon_disabled_arr)
		return true;

	for (;_lon_disabled_arr.legth > 0;) {
		var select = _lon_disabled_arr.push();
		select.disabled = false;

		var clones_arr = target.document.getElementsByName(select.name);
		for (var n = 0; n < clones_arr.length; n++) {
			if ("hidden" == clones_arr[n].type)
				clones_arr[n].parent.removeChild(clones_arr[n]);
		}
	}
	return true;
}

function _body_onload()
{
	loff();
}

function _body_onunload()
{
	lon();
}
// ------------------------------------------------------------------------
