//Funcions vàries

//Funcions per carregar més selects disciplina-subdisciplina
var numDiscCreativo = 2;
var numDiscObra = 2;
function otraDisciplina(esCreativo,idioma){
	BrowserDetect.init();
	//Afegim seleccionables de disciplina als creatius
	if(esCreativo && numDiscCreativo<=4){
		var params = "numDisciplina="+numDiscCreativo+"&idioma="+idioma+"&esCreativo=1"+"&browser="+BrowserDetect.browser;
		new Ajax.Updater({success:'disciplinasCreativo'}, '../ajax/montaDisciplina.php', {asynchronous:true,
		evalScripts:true, insertion:Insertion.Bottom, onComplete:completeDisciplinaCreativo, onLoading:loadingDisciplinaCreativo,
		parameters:params});
	}
	//Afegim seleccionables de disciplina a les obres
	if(!esCreativo && numDiscObra<=4){
		var params = "numDisciplina="+numDiscObra+"&idioma="+idioma+"&esCreativo=0"+"&browser="+BrowserDetect.browser;
		new Ajax.Updater({success:'disciplinasObra'}, '../ajax/montaDisciplina.php', {asynchronous:true,
		evalScripts:true, insertion:Insertion.Bottom, onComplete:completeDisciplinaObra, onLoading:loadingDisciplinaObra,
		parameters:params});
	}
}
function loadingDisciplinaCreativo(){
	$('linkDisciplCreativo').style.visibility='hidden';
}
function completeDisciplinaCreativo(){
	new Effect.BlindDown($('disciplinasCreativo').lastChild);
	$('numSelectsCreativo').value=numDiscCreativo;
	numDiscCreativo++;
	$('linkDisciplCreativo').style.visibility='visible';
}
function loadingDisciplinaObra(){
	$('linkDisciplObra').style.visibility='hidden';
}
function completeDisciplinaObra(){
	new Effect.BlindDown($('disciplinasObra').lastChild);
	$('linkDisciplObra').style.visibility='visible';
	$('numSelectsObra').value=numDiscObra;
	numDiscObra++;
}

//Funcions per carregar el select de subdisciplines al canviar la disciplina
var nombreSelectSubDiscGlob;
function carregaSubdisciplina(valorSelect,nombreSelectSubDisc,idioma){
	nombreSelectSubDiscGlob = nombreSelectSubDisc;
	if(valorSelect == 'no_def'){ //Fem un disable del select de subdisciplina i només deixem la primera opció
		$(nombreSelectSubDisc).length = 1;
		$(nombreSelectSubDisc).disabled = true;
		return;
	}
	//Si és alguna opció continuem
	BrowserDetect.init();
	var params = "disciplina="+valorSelect+"&idioma="+idioma+"&browser="+BrowserDetect.browser;
	new Ajax.Request('../ajax/carregaSubDisciplina.php', {asynchronous:true,
	evalScripts:true, onComplete: completeSubdisciplina, onLoading:loadingSubdisciplina,
	parameters:params});
}
function loadingSubdisciplina(){
	$(nombreSelectSubDiscGlob).disabled = true;
}
function completeSubdisciplina(t){
	$(nombreSelectSubDiscGlob).disabled = false;
	var retorn = t.responseText;
	var valorsRetorn = retorn.split("--");
	//alert(valorsRetorn);
	$(nombreSelectSubDiscGlob).options.length = 0;
	for(i=0;i<((valorsRetorn.length) -1);i++){
		eval("$(nombreSelectSubDiscGlob).options[i]= new Option " + valorsRetorn[i] + ";");
	}

}


//Pels radios de selecció d'any
function anyExacte(){
	$('anyExacteSel').disabled = false;
	$('anyAproxInici').disabled = true;
	$('anyAproxFi').disabled = true;
}

function anyAprox(){
	$('anyExacteSel').disabled = true;
	$('anyAproxInici').disabled = false;
	$('anyAproxFi').disabled = false;
}

//Detecció navegador
var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]
};

// CriptOS Enginyeria

function fordena() {
  jQuery(document).ready(function(){
  	jQuery('#ordenarPor').change(function() {
		location.href=jQuery('#ordenarPor option:selected').attr('href');
  	});
  });
}

function crearAcordio() {
	var bottomAccordion = new accordion('faqs');

	// Open first one
	//bottomAccordion.activate($$('#faqs .accordion_toggle')[0]);
}

function crearjqAcordio() {
/*  jQuery(document).ready(function(){*/
  jQuery(function(){
     jQuery('#faqs').simpleAccordion({
          header: ".pregunta",
          collapsable: ".resposta",
          speed: 200
     });
  });
}

function initAltaForm()
{
/*	jQuery(document).ready(function(){*/
	jQuery(function(){
		jQuery('#formAlta').submit(function(){
			if (this.ok == '')
				return false;
			else
				return true;
		});
		jQuery('#anyLlegada').change(natiuToggle);

		jQuery('#formulari_alta_1').attr('pas', 1);
		// incialitzar el formulari alta amagant pas 2 i 3
		jQuery('#formulari_alta_2').hide();
		jQuery('#formulari_alta_3').hide();
		jQuery('#formulari_alta_4').hide();
		jQuery('#formulari_alta_5').hide();


		jQuery('.formulari_alta_seguent').click(nextAltaForm);

		jQuery('.formulari_alta_anterior').click(previousAltaForm);

		//Inicialitzar disciplines creatiu
		jQuery('.disciplina2').hide();
		jQuery('.disciplina3').hide();
		jQuery('.disciplina4').hide();

		//Inicialitzar camps de procedencia
		jQuery('#pProcedencia').parent(":first").hide();
		jQuery('#motivo').parent(":first").hide();

		jQuery('.formulari_alta_fi').click(function(){
			if (comprovaFormulari2() && comprovaObra(1)) {
				// Enviar formulari al servidor
				mostraSpinner();
				jQuery('#formAlta').attr('ok','true');
				jQuery('#formAlta').submit();
			}
		});

		//Incialitzar obres
/*		jQuery('#obra2').hide();
		jQuery('#obra3').hide();

		jQuery('.botoObra').click(function(){
			var ara = jQuery('.botoObraSelected').attr('num');
			var despres = jQuery(this).attr('num');

			jQuery('.formerr').hide();

			if (ara == despres)
				comprovaObra(ara);

			if (comprovaObra(ara)) {
				//mostrem la part de formulari
				jQuery('#obra'+ara).hide();
				jQuery('#obra'+despres).show();
				// canviem els botons
				jQuery('.botoObraSelected').removeClass('botoObraSelected').addClass('botoObra');
				jQuery(this).removeClass('botoObra').addClass('botoObraSelected');
			}
		});
*/


		jQuery('#botoObra1').removeClass('botoObra').addClass('botoObraSelected');

		//Inicialitzar previews obres
		jQuery('#obra1preview').attr('disabled', true);
		jQuery('#obra2preview').attr('disabled', true);
		jQuery('#obra3preview').attr('disabled', true);

		jQuery('#obra1archivo').change(function() {
			activaPreviewPerExtensio(this);
		 });
		 jQuery('#obra2archivo').change(function() {
			activaPreviewPerExtensio(this);
		 });
		 jQuery('#obra3archivo').change(function() {
			activaPreviewPerExtensio(this);
		 });
	});
}

function comprovaFormulari1()
{
	jQuery('.formerr').hide();

/* DEBUG
	saltapas2();
	return;
*/

	var login = jQuery('#login').val();
	var pass1 = jQuery('#password').val();
	var pass2 = jQuery('#password2').val();
	var email = jQuery('#email').val();
	var res = true;

	if (login.length < 2) {
		jQuery('#formerr_login_curt').show();
		res = false;
	}
	if (pass1 != pass2) {
		jQuery('#formerr_pass_diferent').show();
		res = false;
	}
	if (pass1.length < 2) {
		jQuery('#formerr_pass_curt').show();
		res = false;
	}
	if (email.indexOf('@') == -1) {
		jQuery('#formerr_email').show();
		res = false;
	}

	if (res == true) {
		comprovaUnicitat();
	}
}

function amagaSpinner() {
	jQuery('.formulari_alta_seguent').show();
	jQuery('.formulari_alta_anterior').show();
	jQuery('.spinner').hide();
	if (jQuery('#formAlta').attr('update') == 'true'){
		jQuery('.formulari_alta_fi').show();
	}
}

function mostraSpinner() {
	jQuery('.spinner').show();
	jQuery('.formulari_alta_seguent').hide();
	jQuery('.formulari_alta_anterior').hide();
	jQuery('.formulari_alta_fi').hide();
}

function comprovaUnicitat()
{
	mostraSpinner();

	var login = jQuery('#login').val();
	var email = jQuery('#email').val();
	if (jQuery('#idCreador').val() != '') {
		var modif = '&idCreador='+jQuery('#idCreador').attr('value');
	} else {
		var modif = '';
	}

	var url = "../../php/cr_unic.php?login="+login+"&email="+email+modif;

	cr_unic = false;

	jQuery.getJSON(url,
		function(data){
			amagaSpinner();
			if (data.result == 1) {
				saltapas2();
			} else {
				jQuery('#formerr_existeix').show();
			}
		}
	);
}

function comprovaFormulari2()
{
/* DEBUG
	return (true);
*/
	jQuery('.formerr').hide();

	var nom = jQuery('#nombre').val();
	var cognom1 = jQuery('#apellidos1').val();
	var sexe = jQuery('input[name=sexo]:checked').val()
	var pnaixement = jQuery('#pNacimiento').val();
	var disciplina1 = jQuery('#disciplina1').val();
	var tel = jQuery('#telMovil').val();
	var cp = jQuery('#codigoPostal').val();

	var res = true;

	if (nom.length < 1) {
		jQuery('#formerr_nombre').show();
		res = false;
	}

	if (cognom1.length < 1) {
		jQuery('#formerr_apellidos1').show();
		res = false;
	}

	if (sexe == null) {
		jQuery('#formerr_sexo').show();
		res = false;
	}

	if (pnaixement == 'no_def') {
		jQuery('#formerr_pnacimiento').show();
		res = false;
	}

	if (disciplina1 == 'no_def') {
		jQuery('#formerr_disciplina1').show();
		res = false;
	}

	if (tel.length < 4) {
		jQuery('#formerr_telmovil').show();
		res = false;
	}

	if (cp.length < 5) {
		jQuery('#formerr_codigopostal').show();
		res = false;
	}

	return (res);
}

function comprovaObra(num_obra)
{
	var arxiu = '#obra'+num_obra+'archivo';
	var errorarxiu = '#formerr_archivo'+num_obra;
	var preview = '#obra'+num_obra+'preview';
	var errorpreview = '#formerr_preview'+num_obra;
	var titol = '#obra'+num_obra+'titulo';
	var errortitol = '#formerr_titulo'+num_obra;
	var disciplina = '#obra'+num_obra+'disciplina';
	var errordisciplina = '#formerr_disciplinaobra'+num_obra;

	jQuery('.formerr').hide();

	var res = true;

//	if (jQuery(arxiu).val() == '')
//		return(true);

	jQuery(arxiu).each(function() {
		if (this.value == '') {
			jQuery(errorarxiu).show();
		} else if (!checkExtension(this, ["bmp","gif","png","jpg","jpeg"])) {
			jQuery(preview).each(function() {
				if (!checkExtension(this, ["bmp","gif","png","jpg","jpeg"])) {
					jQuery(errorpreview).show();
					res = false;
				}
			});
		}
	});


	if (jQuery(titol).val().length < 1) {
		jQuery(errortitol).show();
		res = false;
	}

	if (jQuery(disciplina).val() == 'no_def') {
		jQuery(errordisciplina).show();
		res = false;
	}

	if ((num_obra == 1) && (res)){
		jQuery('.formulari_alta_fi').show();
	}

	if ((num_obra == 1) && (!res)){
		jQuery('.formulari_alta_fi').hide();
	}

	return (res);
}

function comprovaFormulari3()
{
	jQuery('.formerr').hide();

	var res = true;

	if (!comprovaObra(1))
		res = false;
	if (!comprovaObra(2))
		res = false;
	if (!comprovaObra(3))
		res = false;

	return (res);
}

function saltapas2()
{
	jQuery('#formulari_alta_1').attr('pas', 2);
	jQuery('#formulari_alta_1').hide();
	jQuery('#formulari_alta_2').show();
}

function nextAltaForm()
{
	var pas = jQuery('#formulari_alta_1').attr('pas');

	if (pas == 1) {
		comprovaFormulari1();
	} else if (pas == 2) {
		if (comprovaFormulari2()) {
			jQuery('#formulari_alta_1').attr('pas', 3);
			jQuery('#formulari_alta_2').hide();
			jQuery('#formulari_alta_3').show();
		}
	} else if (pas == 3) {
		if (comprovaObra(1)) {
			jQuery('#formulari_alta_1').attr('pas', 4);
			jQuery('#formulari_alta_3').hide();
			jQuery('#formulari_alta_4').show();
		}
	} else if (pas == 4) {
		if (comprovaObra(2)) {
			jQuery('#formulari_alta_1').attr('pas', 5);
			jQuery('#formulari_alta_4').hide();
			jQuery('#formulari_alta_5').show();
		}
	} else if (pas == 5) {
		comprovaObra(3);
	}
}

function previousAltaForm()
{
	var pas = jQuery('#formulari_alta_1').attr('pas');
	/* jQuery('#formulari_alta_1').is(':visible') */
	if (pas == 1) {
	} else if (pas == 2) {
		jQuery('#formulari_alta_1').attr('pas', 1);
		jQuery('#formulari_alta_1').show();
		jQuery('#formulari_alta_2').hide();
	} else if (pas == 3) {
		jQuery('#formulari_alta_1').attr('pas', 2);
		jQuery('#formulari_alta_2').show();
		jQuery('#formulari_alta_3').hide();
	} else if (pas == 4) {
		jQuery('#formulari_alta_1').attr('pas', 3);
		jQuery('#formulari_alta_3').show();
		jQuery('#formulari_alta_4').hide();
	} else if (pas == 5) {
		jQuery('#formulari_alta_1').attr('pas', 4);
		jQuery('#formulari_alta_4').show();
		jQuery('#formulari_alta_5').hide();
	}
}

function natiuToggle()
{
	var anya = jQuery('#anyLlegada').val();
	if (anya == 0) {
		jQuery('#pProcedencia').find('option:first').attr('selected', 'selected').parent('select');
		jQuery('#motivo').find('option:first').attr('selected', 'selected').parent('select');
		jQuery('#pProcedencia').parent(":first").hide("fast");
		jQuery('#motivo').parent(":first").hide("fast");
	} else {
		jQuery('#pProcedencia').parent(":first").show("fast");
		jQuery('#motivo').parent(":first").show("fast");
	}
}

/*
function natiuToggle()
{
	if (jQuery('#natiu').is(':checked')) {
		disabledTrue = true;
		jQuery('#pProcedencia').find('option:first').attr('selected', 'selected').parent('select');
		jQuery('#anyLlegada').val('');
		jQuery('#motivo').val('');
	} else {
		disabledTrue = false;
	}

	jQuery('#pProcedencia').attr('disabled', disabledTrue);
	jQuery('#anyLlegada').attr('disabled', disabledTrue);
	jQuery('#motivo').attr('disabled', disabledTrue);
}
*/

function mesDisciplinesCreatiu()
{
	if (jQuery('#disciplina2').is(':hidden')) {
		jQuery('.disciplina2').show("normal");
	} else if (jQuery('#disciplina3').is(':hidden')) {
		jQuery('.disciplina3').show("normal");
	} else if (jQuery('#disciplina4').is(':hidden')) {
		jQuery('.disciplina4').show("normal");
		jQuery('#linkDisciplCreatiu').hide();
	}
}

function activaPreviewPerExtensio(what){
  var fileTypes=["bmp","gif","png","jpg","jpeg"];
  var source=what.value;
  var ext=source.substring(source.lastIndexOf(".")+1,source.length).toLowerCase();
  for (var i=0; i<fileTypes.length; i++) if (fileTypes[i]==ext) break;
  if (i<fileTypes.length){
    jQuery(what).parent(':first').next(':first').children(':file').attr('disabled', true);
    jQuery(what).parent(':first').next(':first').children(':file').val('');
  }else {
    jQuery(what).parent(':first').next(':first').children(':file').attr('disabled', false);
  }
}

function checkExtension(what, fileTypes){
/*  var fileTypes=["bmp","gif","png","jpg","jpeg"];*/
  var source=what.value;
  var ext=source.substring(source.lastIndexOf(".")+1,source.length).toLowerCase();
  for (var i=0; i<fileTypes.length; i++) if (fileTypes[i]==ext) break;
  if (i<fileTypes.length){
	return (true);
  }else {
	return (false);
  }
}