var e = {
	addEvent : function(obj, evType, fn, useCapture){
		if (obj.addEventListener){
			obj.addEventListener(evType, fn, useCapture);
			return true;
		}else if (obj.attachEvent){
			var r = obj.attachEvent("on"+evType, fn);
			return r;
		}else {
			return false;
		}
	}
}

var utils = {
	in_array:function(value, arr){
		var key;
		for (key in arr){
		    if (arr[key] === value) return true;
        }
		return null;
	}
}


Array.prototype.in_array = function(value){
	var key;
	for (key in this){
	    if (this[key] === value) return true;
    }
	return false;
}

var behaviours = {
	hitos:{
		init:function(){
			$('.hide2').hide();
			$('.showhide').toggle(function(){
			  $(this).parent().next().slideDown('slow').removeClass('hide2').preventDefault;
				$(this).parent().addClass('down');
			  },function(){
				$(this).parent().next().slideUp('slow').addClass('hide2').preventDefault;
				$(this).parent().removeClass('down');
			})
		}
	}
}

var carruseles = {
	sponsors:{
		init:function(){
			jQuery('#thumb').jcarousel();
		}
	},
	gallery:{
		init:function(){
			jQuery('#gallery').jcarousel();
		}
	}
}

var tuEquipo = {
   init:function(){
       var jugadores = $(".clearFix a");
       var jugador = "";
       var posicion = "." + document.location.href.split("=")[1];
       var opener = null;
       jugadores.each(function(){
           $(this).attr("href","javascript:void(null)");
           $(this).bind("click", function(){
                var idjugador = $(this).parent().find("span").attr("id");
                jugador = $(this).parent().find("span").text();
				opener = $(posicion,window.parent.document)
                opener.find("a").text(jugador);
                opener.find("input").attr("value", idjugador);
				parent.Shadowbox.close();
           });
       });

       $("#orderbyjugadores").bind("change", function(){
        $("#orderbyjugadoresform").submit();
       })
   }
}

/* validaciones de formularios */
var formsValidations = {
	setMsgError:function(txt, form){
		var parentForm = form.parent();
		var msgError = parentForm.find(".msgError");
		var divElement = (msgError.length != 0) ? msgError.eq(0) : document.createElement("div");
		var ulElement = document.createElement("ul");
		var liElement = null;
		var errors = txt.split("|");
		$(divElement).attr("class", "msgError");
		if($(divElement).find("ul").length != 0) $(divElement).empty();
		for(var i = 0; i < errors.length - 1; i++){
			liElement = document.createElement("li");
			liElement.appendChild(document.createTextNode(errors[i]));
			ulElement.appendChild(liElement);
		}
		$(divElement).append(ulElement);
		if(msgError.length == 0) form.before($(divElement));
	},
	validaFormSend11:function(obj){
		var errorTxt = "";
		var f = $(obj);
		if(!f.find("input[@name='usuario[nombre]']").attr("value")) errorTxt += literal["enviar11"][0];
		if(!f.find("input[@name='usuario[apellidos]']").attr("value")) errorTxt += literal["enviar11"][1];
		if(!f.find("input[@name='usuario[dni]']").attr("value")) errorTxt += literal["enviar11"][2];
		else{
			if(!regularExpressions.esNif(f.find("input[@name='usuario[dni]']").attr("value")))  errorTxt += literal["enviar11"][3];
		}
		if(f.find("input[@type='radio'][@checked]").length == 0) errorTxt += literal["enviar11"][4];
		if(!f.find("input[@name='dia']").attr("value")) errorTxt += literal["enviar11"][5];
		else{
			if(!regularExpressions.esNumero(f.find("input[@name='dia']").attr("value"))) errorTxt += literal["enviar11"][6];
			else{
				if(f.find("input[@name='dia']").attr("value") < 1 || f.find("input[@name='dia']").attr("value") > 31) errorTxt += literal["enviar11"][7];
			}
		}
		if(f.find("input[@name='usuario[telefono]']").attr("value")){
			if(!regularExpressions.esTelefono(f.find("input[@name='usuario[telefono]']").attr("value")))  errorTxt += literal["enviar11"][10];
		}
		if(!f.find("input[@name='usuario[email]']").attr("value")) errorTxt += literal["enviar11"][11];
		else{
			if(!regularExpressions.isValidEmail(f.find("input[@name='usuario[email]']").attr("value")))  errorTxt += literal["enviar11"][12];
		}
		if(f.find("input[@type='checkbox'][@checked]").length == 0) errorTxt += literal["enviar11"][13];
		if(errorTxt != ""){
			formsValidations.setMsgError(errorTxt, f);
			return false;
		}else return true;
	},
	validaFormParte:function(obj){
		var errorTxt = "";
		var f = $(obj);
		if(!f.find("input[@name='nombre']").attr("value")) errorTxt += literal["parte"][0];
		if(!f.find("textarea[@name='interesado']").val()) errorTxt += literal["parte"][1];
		if(errorTxt != ""){
			formsValidations.setMsgError(errorTxt, f);
			return false;
		}else return true;
	},
	validaFormElegir11:function(obj){
		var errorTxt = "";
		var players = [];
		var f = $(obj);
		var inputs = f.find("input[@type='hidden']");
		var aux = "";
		var selectAll = playerRepeat = true;
		inputs.each(function(){
			if ($(this).attr("name") != "hiddenformcampo") {
				aux = $(this).attr("value");
				if (!aux) selectAll = false;
			}
		})
		if(!selectAll) errorTxt = literal["elegir"][0];
		else{
			inputs.each(function(){
				if ($(this).attr("name") != "hiddenformcampo") {
					aux = $(this).attr("value");
					if (!players.in_array(aux)) players.push(aux);
					else playerRepeat = false;
				}
			})
		}
		if(!playerRepeat) errorTxt += literal["elegir"][1];
		if(errorTxt != ""){
			formsValidations.setMsgError(errorTxt, f);
			return false;
		}else return true;
	}
}

/* expresiones regulares para validar formularios */
var regularExpressions = {
	isValidEmail:function (str){
		var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
		return (filter.test(str));
	},
	esCadena:function(c) { return /^[0-9A-Za-z-\/Ññ?É?ÓÚáéíóúÜüÄäËë?ïÖö´,'/\\t\n\r\s]+$/.test(c); },
	esAlfabetico:function(c){return /^([a-zA-Z])+$/.test(c);},
	esNumero:function(c){return /^[0-9]+$/.test(c);},
	esTelefono:function(c){return /^[0-9\s\+\-)(]+$/.test(c)},
	esNif:function(c){
		if(!/^[0-9]{8}([A-Za-z]{1})$/.test(c)) return false
		var letras = 'TRWAGMYFPDXBNJZSQVHLCKE';
		return (c.substr(8,9).toUpperCase()==letras.charAt(c.substr(0,8)%23)) ;
	}

}


jQuery(document).ready(function() {
	if($("#formElegir11").length != 0) $("#formElegir11").submit(function(){return formsValidations.validaFormElegir11($(this))});
	if($("#formSend11").length != 0) $("#formSend11").submit(function(){return formsValidations.validaFormSend11($(this))});
	if($("#formParte").length != 0) $("#formParte").submit(function(){return formsValidations.validaFormParte($(this))});
	if($("#sponsors").length != 0) carruseles.sponsors.init();
	if($("#gallery").length != 0) carruseles.gallery.init();
	if($("#jugadores").length != 0) tuEquipo.init();
	if($(".desplegable").length != 0) behaviours.hitos.init();
})


