// +----------------------------------------------------------------------+
// | JavaScript version 1.2                                               |
// +----------------------------------------------------------------------+
// | Copyright (c) 2004 Luis Alfredo Abarca Galicia             		  |
// +----------------------------------------------------------------------+
// | Este codigo es propiedad intelectual de Luis Alfredo Abarca		  |
// | Cualquier duda o aclaracion, favor de comunicarse a:	              |
// | Cel: 04474.44.07.21.51		Email: luis_abarcag@hotmail.com           |
// +----------------------------------------------------------------------+
// | Autor: Luis Alfredo Abarca Galicia								  	  |
// +----------------------------------------------------------------------+
//
// $Id: common.js, v 1.0 18/03/2004 Exp $

	var CORE_LANG = "es";
	
	if( top.location != self.location ){ top.location = self.location; }	
	// Fechas
	var objFecha 	= new Date();
	var THIS_DAY 	= objFecha.getDate();
	var THIS_MONTH	= objFecha.getMonth();
	var THIS_YEAR 	= objFecha.getFullYear();
		
	var meses = new Array();	
	
	meses[0] = 31;		meses[1] = THIS_YEAR % 4 == 0 ? 29 : 28;
	meses[2] = 31;		meses[3] = 30;
	meses[4] = 31;		meses[5] = 30;
	meses[6] = 31;		meses[7] = 31;
	meses[8] = 30;		meses[9] = 31;
	meses[10] = 30;		meses[11] = 31;
	
	var meses_names = new Array("Ene", "Feb", "Mar", "Abr", "May", "Jun", "Jul", 
								"Ago", "Sep", "Oct", "Nov", "Dic");
	
	if( CORE_LANG == "en" ){   		
		DOMINGO							= "Sunday";
		LUNES							= "Monday";
		MARTES							= "Tuesday";
		MIERCOLES						= "Wednesday";
		JUEVES							= "Thursday";
		VIERNES							= "Friday";
		SABADO							= "Saturday";
		
		ENERO							= "Janaury";
		FEBRERO							= "February";
		MARZO							= "March";
		ABRIL							= "April";
		MAYO							= "May";
		JUNIO							= "June";
		JULIO							= "July";
		AGOSTO							= "August";
		SEPTIEMBRE						= "September";
		OCTUBRE							= "October";
		NOVIEMBRE						= "November";
		DICIEMBRE						= "December";
	}else{
		DOMINGO							= "Domingo";
		LUNES							= "Lunes";
		MARTES							= "Martes";
		MIERCOLES						= "Miercoles";
		JUEVES							= "Jueves";
		VIERNES							= "Viernes";
		SABADO							= "Sabado";
		
		ENERO							= "Enero";
		FEBRERO							= "Febrero";
		MARZO							= "Marzo";
		ABRIL							= "Abril";
		MAYO							= "Mayo";
		JUNIO							= "Junio";
		JULIO							= "Julio";
		AGOSTO							= "Agosto";
		SEPTIEMBRE						= "Septiembre";
		OCTUBRE							= "Octubre";
		NOVIEMBRE						= "Noviembre";
		DICIEMBRE						= "Diciembre";
	}	

	
	function eliminar(name, url, msg){
		if( msg == "" ){ msg = "Esta seguro que desea eliminar "; }		
		if( confirm(msg + name) ){ window.location = url; }
	}
	
	function restaurar(name, url, msg){
		if( msg == "" ){ msg = "Esta seguro que desea restaurar "; }		
		if( confirm(msg + name) ){ window.location = url; }
	}
	
	function confirmar(url, msg){
		if( confirm(msg) ){ window.location = url; }
	}
										
	function SetFocus( name ){
		var o = document.getElementById(name);
		o.focus();
		return true;
	}
	
	var m_form;
	var m_argc;
	var m_argv;
	
	// }}}
	// {{{	Form functions
	function form_send()
	{
		var i = 0;
		m_argc = form_send.arguments.length;
		m_argv = form_send.arguments;
		
		m_form = m_argv[0];
		
		for( i = 1; i < m_argc; i++ ){
			obj = eval("m_form." + m_argv[i]);
			oName = obj.name;
			oValue = obj.value;

			if( oName == "email" || oName == "mail" || oName == "correo" ){ 
				if( oValue == "" ){ alert("Por favor escriba su e-mail"); obj.focus(); return true; }
				if( oValue.indexOf('@', 0) == -1 || oValue.indexOf('.', 0) == -1){ alert("Por favor escriba su e-mail correctamente"); obj.focus(); return; }
			}
			if( oValue == "" ){ alert("Por favor rellene los campos marcados"); obj.focus(); return true; }
		}
		
		m_form.submit();
	}
	
	function form_check()
	{
		var i = 0;
		m_argc = form_check.arguments.length;
		m_argv = form_check.arguments;
		
		m_form = m_argv[0];
		
		for( i = 1; i < m_argc; i++ ){
			obj = eval("m_form." + m_argv[i]);
			oName = obj.name;
			oValue = obj.value;

			if( oName == "email" || oName == "mail" || oName == "correo" ){ 
				if( oValue == "" ){ alert("Por favor escriba su e-mail"); obj.focus(); return false; }
				if( oValue.indexOf('@', 0) == -1 || oValue.indexOf('.', 0) == -1){ alert("Por favor escriba su e-mail correctamente"); obj.focus(); return false; }
			}
			if( oValue == "" ){ alert("Por favor rellene los campos marcados"); obj.focus(); return false; }
		}
		return true;		
	}
	
	// }}}
	// {{{	Form functions
	function swapv( name )
	{
		var visible;
		var d = document;
		var obj = d.getElementById(name);
						
		if( d.all ){
			visible = obj.style.display == "none" ? false : true;
		}else{
			visible = obj.display == "none" ? false : true;
		}
		
		if( !visible ){
			ShowLayer( name );
		}else{
			HideLayer( name );
		}
	}

	// }}}
	// {{{	HideLayer
	function HideLayer( id )
	{
		DisplayLayer(id, "none");
	}
	
	// }}}
	// {{{	ShowLayer
	function ShowLayer( id )
	{
		DisplayLayer(id, "block");
	}	
	
	// }}}
	// {{{	DisplayLayer
	function DisplayLayer( id, cmd )
	{
		var d = document;
		DOMelement = d.getElementById( id );
		
		if( d.all ){
			DOMelement.style.display = cmd;
		}else{
			DOMelement.display = cmd;
		}
	}
	
	function paginar( page ){
		var d = document;	
		var nLinks = d.links.length;

		page = parseInt(page);

		if( page < 1 || isNaN(page) || page == "undefined" ){
			page = 1;
		}
		
		for( var i = 0; i < nLinks; i++ ){
			str = new String(d.links[i]);
			buffer = str.split("&");
			
			if( buffer.length > 1 ){
				str = buffer[1];
				buffer = str.split("=");		
				str = buffer[1];
			}else{
				buffer = str.split("=");		
				str = buffer[1];
			}	
			
			if( str == page ){ 
				var l = d.getElementById(str);
				
				if( l !== null ){
					l.innerHTML = str;
					l.style.fontWeight = "bold";
				}
			}			
		}
	}
	
	// }}}
	// {{{	DOM functions
	
	function createOption( text, value, object )
	{	
		var content;
		var d = document;
		var option = d.createElement("OPTION");				
								
		content = d.createTextNode( text );
		option.appendChild( content );
		option.setAttribute("value", value);
		object.appendChild( option );
		
		return option;
	}
	
	function createOptions( inicio, fin, object )
	{
		var i;
		var lpArray = new Array();
		
		for( i=inicio; i<= fin; i++){
			lpArray[i] = createOption(i, i, object);
		}
		return lpArray;
	}
	
	function clearOptions( inicio, objArray, object )
	{	
		var len = objArray.length - 1;
				
		if(	len > 0){
			for( i = inicio; i <= len; i++ ){
				object.removeChild( objArray[i] );
			}
			
			for( i = inicio; i <= objArray.length; i++ ){
				objArray.shift();
			}
		}					
	}
	
	// }}}
	// {{{
		
	function show(obj){
		if(document.all){			
			if(obj.style.display == 'none'){
				obj.style.display = 'block';
			}else{
				obj.style.display = 'none';
			}
		}else{
			if(obj.display == 'none'){
				obj.display = 'block';
			}else{
				obj.display = 'none';
			}
		}
	}
	
	// Muestra una ventana de dialogo	
	function popUpWnd(p_url, p_eval)
	{
		var navegador = navigator.appName;
		
		l_height 	= 250;
		l_width		= 600; 	
		
		l_top 		= (screen.height - l_height)/2;
		l_left		= (screen.width - l_width)/2;

		if(p_eval){
			if(navigator.appName.substring(0,9)=="Microsoft"){
				window.showModalDialog(p_url,"","dialogWidth:"+l_width+"px;dialogHeight:"+l_height+"px;help:0;scroll:0;status:0;");
			}else{
				window.open(p_url, '', 'tollbars=0,scrollbar=0,status=0,history=0,width='+l_width+',height='+l_height+',top='+l_top+',left='+l_left);				
			}
		}else{
			window.open(p_url, '', 'tollbars=0,scrollbar=0,status=0,history=0,width='+l_width+',height='+l_height+',top='+l_top+',left='+l_left);			
		}
	} 
	
										
	// {{{
	// }}}
	
	
	function newWin(url, w, h)
	{		
		var left = (screen.width - w) / 2;
		var top  = (screen.height - h) / 2;
		var opts = "tollbars=0,scrollbar=0,status=0,history=0,width="+ w +",height="+ h +",top="+ top +",left="+ left;
		
		hwnd = window.open(url, '', opts);
		return hwnd;
	}

	// {{{
	// }}}
	
	/*
	 *	Calendario()
	 *	Muestra las fechas
	 *
	 *  Variables locales
	 *  @var fecha				El nuevo objeto Date					
	 *	@var horas				La hora actual
	 * 	@var minutos			El minuto actual
	 *	@var segundos			Segundos actuales	
	 *	@var meses				El mes actual del 0-11	
	 *	@var dias				El dia de la semana 0-6
	 *	@var year				El aņo actual
	 *	@var hoy				El numero de dia del mes actual
	 *
	 */
	function fecha()
	{
		var objFecha;					
		var horas;
		var minutos;
		var segundos;
		var meses;
		var dias;
		var year;
		var hoy;
		
		var n_dias = new Array(	DOMINGO, LUNES, MARTES, MIERCOLES, 
								JUEVES, VIERNES, SABADO);
									
		var n_meses = new Array( ENERO, FEBRERO, MARZO, ABRIL, MAYO, 
								 JUNIO, JULIO, AGOSTO, SEPTIEMBRE, 
								 OCTUBRE, NOVIEMBRE, DICIEMBRE);
		
		if( fecha.arguments.length > 0 ){
			var arg  = fecha.arguments;

			year	 = parseInt( arg[0].substring(0, 4) );		
			month	 = parseInt( arg[0].substring(5, 7) ) -1;
			today	 = parseInt( arg[0].substring(8, 10) );
		}else{								 									
			objFecha = new Date;		
			horas 	 = objFecha.getHours();
			minutos  = objFecha.getMinutes();
			segundos = objFecha.getSeconds();
			month 	 = objFecha.getMonth();
			day 	 = objFecha.getDay();
			year 	 = objFecha.getYear();
			today 	 = objFecha.getDate();						
		}

		if( fecha.arguments.length > 0 ){
			if( CORE_LANG == "en" ){
				return n_meses[month] + " " + today;
			}else{
				return today +" de "+n_meses[month];
			}
		}else{
			if( CORE_LANG == "en" ){
				return n_dias[day] + ", " + n_meses[month] + " " + today;
			}else{
				return n_dias[day] + ", " + today +" de "+n_meses[month];
			}
		}
	}