// Configuración general de datepicker
$(document).ready(function()
{
	$.datepicker.regional['es'] = {
			dateFormat: 'dd/mm/yy',
	        minDate: '-80Y',
	        maxDate: '+1Y',
	        showOn: 'both',
	        buttonImage: '../../images/icons/calendar.png',
	        buttonImageOnly: true,
	        changeMonth: true,
	        changeYear: true,
	        numberOfMonths: 1,
	        yearRange: '-50:+10',
	        currentText: 'Hoy',
	        dayNamesMin: ['Do', 'Lu', 'Ma', 'Mi', 'Ju', 'Vi', 'Sa'],
	        monthNames: ['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo',
	        	'Junio', 'Julio', 'Agosto', 'Septiembre',
	            'Octubre', 'Noviembre', 'Diciembre'],
	        monthNamesShort: ['Ene', 'Feb', 'Mar', 'Abr',
	            'May', 'Jun', 'Jul', 'Ago',
	            'Sep', 'Oct', 'Nov', 'Dic']		
	}
	
	$.datepicker.setDefaults($.datepicker.regional['es']);

	
	
	
	$('#slider').hover(function(){
		$('#slider').animate({top:'0px'},{queue:false,duration:500});
	}, function(){
		$('#slider').animate({top:'-60px'},{queue:false,duration:500});
	});
	
	
	
	
	capas = $(".CTab");
    $.each(capas, function(i, a){   
    	$("li#P"+a.id).hover(function(){
    		  $("li#P"+a.id).animate({top:'-5px'},{queue:false,duration:500});
      }, function(){
          $("li#P"+a.id).animate({top:'0px'},{queue:false,duration:500});
      });

    });
    
});


function mostrarTab(name)
{
	capas = $(".CTab");
	$.each(capas, function(i, a){   
		if(a.id == name)
		{
			$("#"+a.id).show()
			$("li#P"+a.id).removeClass("tab_on"); 
			$("li#P"+a.id).addClass("tab_over");   			    
		}
		else
		{  
			$("#"+a.id).hide();
			$("li#P"+a.id).removeClass("tab_over"); 
			$("li#P"+a.id).addClass("tab_on");             
		}
	});
}


function activarTabForm(name)
{
	capas = $(".FTab");
	tmp = 0;
	
	$.each(capas, function(i, a){
		if(a.id == name)
		{			
			$("li#"+a.id).removeClass("tab_ok");
			$("li#"+a.id).removeClass("tab_on"); 
			$("li#"+a.id).addClass("tab_over");
			tmp = 1;
		}
		else
		{
			if (tmp == 1) 
			{		
				$("li#"+a.id).removeClass("tab_ok");
				$("li#"+a.id).removeClass("tab_over"); 
				$("li#"+a.id).addClass("tab_on");
			}
			else
			{
				$("li#"+a.id).removeClass("tab_on");
				$("li#"+a.id).removeClass("tab_over"); 
				$("li#"+a.id).addClass("tab_ok");
				$("span#num_tab_"+i).html('&nbsp;&nbsp;');
			}			             
		}
	});
}


function activarIndicador()
{
	var wscr = $(window).width();
    var hscr = $(window).height();
    
    //establecemos las dimensiones del fondo
    $('#indicator').css("width", wscr);
    $('#indicator').css("height", hscr);

	$('#indicator').show(); //'fast'
}

function desactivarIndicador()
{
	$('#indicator').hide();  //'slow'
}

function minmaxCapa(nombrediv, nombreboton)
{	
	if($("div#"+nombrediv).hasClass("oculta")) 
	{		
		$("div#"+nombrediv).removeClass("oculta");	
		$("div#"+nombrediv).addClass("visible");   
		$("div#"+nombreboton).removeClass("minimizar");    	
    	$("div#"+nombreboton).addClass("maximizar");              
	}
	else {
		$("div#"+nombrediv).removeClass("visible");	
		$("div#"+nombrediv).addClass("oculta");
		$("div#"+nombreboton).removeClass("maximizar");    	
    	$("div#"+nombreboton).addClass("minimizar");  
	}	
}

function muestra(nombrediv) 
{
	if(document.getElementById(nombrediv).style.display == '') {
            document.getElementById(nombrediv).style.display = 'none';
    } else {
            document.getElementById(nombrediv).style.display = '';
    }
}

function mostrar(nombreCapa){
	document.getElementById(nombreCapa).style.display="block";
}

function ocultar(nombreCapa){
	document.getElementById(nombreCapa).style.display="none";
}

function checkAll()
{
  var boxes = document.getElementsByTagName('input'); 
  for(var index = 0; index < boxes.length; index++) 
  { 
	box = boxes[index]; 
	if (box.type == 'checkbox' && box.className == 'sf_admin_batch_checkbox') 
		box.checked = document.getElementById('sf_admin_list_batch_checkbox').checked 
  } 
  return true;
}


function serialize(arr)
{
	var res = 'a:'+arr.length+':{';
	for(i=0; i<arr.length; i++)
	{
		res += 'i:'+i+';s:'+arr[i].length+':"'+arr[i]+'";';
	}
	res += '}';
	
	return res;
}

// Serializa un array de 2 dimensiones
// BUG con tildes, eñes,...
function serialize2(arr)
{
	var res = 'a:' + arr.length + ':{';
	var aux = new Array();
	
	for(i=0; i<arr.length; i++)
	{
		aux = arr[i];		
		res = res + 's:' + aux[0].length + ':"' + aux[0] + '";';
		res = res + 's:' + aux[1].length + ':"' + aux[1] + '";';
	}
	res += '}';
	
	return res;
}

// Añadir atributos a un array y formar un array de 2 dimensiones
function addArray(arr, nombre, valor)
{
	var longitud = arr.length;
	if (valor.length >= 0)
	{
		var aux = new Array();
		aux[0] = nombre;
		aux[1] = valor;	
		arr[longitud] = aux;
	}
	return arr;
}

// Funcion para cojer todos los radios de un formulario y devolver el radio seleccionado
function buscarRadioChecked(name)
{
	var radios = $('input:radio[name="'+name+'"]');
	var r = 0;
	$.each( radios, function(i){		
		if (radios[i].checked)
			r = radios[i].value;
	});
	return r;
}

// Funcion para cojer todos los checkbox activos de un formulario y devolver en forma de array 
function recuperarChecks(name)
{
	var checkboxes = $('input:checkbox[name="'+name+'"]');
	var seleccionados = new Array();
	var x = 0;
	
	$.each( checkboxes, function(i){		
		if (checkboxes[i].checked)
		{			
			seleccionados[x] = checkboxes[i].value;
			x++;
		}
	});
	return seleccionados;
}

function recuperarChecks2(list, name)
{
	var seleccionados = new Array();
	var x = 0;		
	for(i=0; i<list.length; i++)
	{
		laextra = list[i];
		nombre = name + "_" + laextra[0];		
		checkbox = document.getElementById(nombre);
		
		if (checkbox.checked)
		{			
			seleccionados[x] = checkbox.value;
			x++;
		}
	}
	
	return seleccionados;
}

// Funcion para cojer todos los campos de un formulario y devolver en forma de array
function recuperarForm(name)
{
	var datos = $('#'+name+' :input') 
	
	var seleccionados = new Array();
	
	$.each( datos, function(i, a, b){		
		seleccionados = addArray(seleccionados, a.name, a.value);
	});
	return seleccionados;
}

// Funcion que valida si un campo tiene valor o no
function validarRequerido(v)
{
	if (v=='')
		return false;
    return true;
}

// Funcion que solo permite insertar numeros
function acceptNum(e) { 
    tecla = (document.all) ? e.keyCode : e.which; 
    if (tecla==8) return true; 
    if (tecla==0 ) return true; 
    patron = /\d/;
    te = String.fromCharCode(tecla); 
    return patron.test(te); 
} 

// Funcion que genera un password aleatorio de tamaño pasado por parametro
function generarPassword(tam) 
{	
	var strCaracteresPermitidos = 'a,b,c,d,e,f,g,h,i,j,k,m,n,p,q,r,';
	strCaracteresPermitidos += 's,t,u,v,w,x,y,z,1,2,3,4,5,6,7,8,9';
	strCaracteresPermitidos += 'A,B,C,D,E,F,G,H,I,J,K,L,M,N,P,Q,R';
	strCaracteresPermitidos += 'S,T,U,V,W,X,Y,Z';
	
	var strArrayCaracteres = new Array(60);
	strArrayCaracteres = strCaracteresPermitidos.split(',');
	var length = tam, i = 0, j, tmpstr = "";
	
	do {
		var randscript = -1;
		while (randscript < 1 || randscript > strArrayCaracteres.length || isNaN(randscript)) 
		{
			randscript = parseInt(Math.random() * strArrayCaracteres.length);
		}
		j = randscript;
		tmpstr = tmpstr + strArrayCaracteres[j];
		i = i + 1;
	} while (i < length)
	
	return tmpstr;
}

// Funcion que redirecciona a una direccion pasada por parametro
function redireccionarWithOption(dir)
{
	location.href="./" + dir.value;
}


// Funcion que arranca un sonido
function EvalSound(soundobj) 
{
	var thissound = document.getElementById(soundobj);
	if(thissound)
	{
		thissound.Play();
	}
}


function mueveSlider()
{   
	$('#slider').animate({top:'0px'},{queue:false,duration:500});
	setTimeout("$('#slider').animate({top:'-60px'},{queue:false,duration:500})",500);
	
    setTimeout("mueveSlider()",8000); 
}


function subir(){
    if( document.documentElement.scrollTop < 400 ){
         window.scrollTo(0,350);
    }else{
         window.scrollBy(0,-25);
         setTimeout("subir()",10);
    }
}
