
var INNER_LINK = "";
var validado=false;
//Funciones ocupadas para Ajax
function TRUE(){
	validado = true;
}
function FALSE(){
	validado = false;
}
	
function MostrarOcultar (objetoVisualizar,id_link) {
	var navegador = navigator.appName
	
	if (navegador == "Microsoft Internet Explorer") 
		varDisp = '';
	else
		varDisp = '';


//	estado = document.getElementById(objetoVisualizar).style.display;

	if (document.getElementById(objetoVisualizar).style.display =='none') { 
		document.getElementById(objetoVisualizar).style.display=varDisp;

		if(id_link != ""){
			INNER_LINK = document.getElementById(id_link).innerHTML;
			document.getElementById(id_link).innerHTML = 'Ocultar';
		}
	} else {
		document.getElementById(objetoVisualizar).style.display='none';
		if(id_link != "")
			document.getElementById(id_link).innerHTML = INNER_LINK;
	}
}

function newPage(pagina){
	var newWin = window.open(pagina,"_blank","toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, copyhistory=yes, width=800, height=600");
}
function goToPage(pagina){
	window.location.href=pagina;
}
function goToPage2(pagina,obj,lnk_name){
	window.location.href=pagina + "&"+ lnk_name +"=" + obj.value;
}
function sendMessage($msg){
	alert($msg);
	return true;
}

function preguntar(){
	resp = confirm("¿Esta Seguro de Realizar esta Operación?");
	if(resp){
	 	return true;
	}else{
		return false;
	}
}

function preguntar(msg){
	if(msg ==""){
		return confirm("¿Esta Seguro de Realizar esta Operación?");
	}
	resp = confirm(msg);
	if(resp){
	 	return true;
	}else{
		return false;
	}
}

function revisarMail(input){
	var b=/^[^@\s]+@[^@\.\s]+(\.[^@\.\s]+)+$/
	if (!b.test(input.elements["email"].value))
	{
       return false;
	}else{
		return true;
	}

}

//Formato = 12345678-9
function revisarRut(input,rut){
	var rut;
	rut = input.elements[rut].value;
	if((rut.length!=10) && (rut.length!=9)){
		return false;
	}
	var count=0;
	var count2=0;
	var factor=2;
	var suma=0;
	var sum=0;
	var digito=0;
	var codigo=0;
	count2=rut.length - 1;
	codigo=rut.substr(count2,1);
	count2=count2 - 1;
	
	if(rut.substr(count2,1)!="-"){
		return false;
	}
	count2=count2 - 1;
	while(count < rut.length-2)
		{
			sum = factor * (parseInt(rut.substr(count2,1))); 
			suma = suma + sum;
			sum=0;
			count = count + 1;
			count2 = count2 - 1;
			factor = factor + 1;
			if(factor > 7)
			{
				factor=2; 
			} 
		}

	digito= 11 - (suma % 11);
	
	if(digito==11)
	{
		digito=0;
	}
	
	if(digito==10)
	{
		digito="k";
	}
	
	if(codigo==digito){
		return true;
	}else{
		return false;
	}
	return false;
}
function revisarCampos(pagina,f){
	var camposRequeridos;
	var camposNombres;
	var camposRequeridos_select;
	var camposNombres_select;
	var email = false;
	var rut = false;
	var camposCheck   = true;
	var fono = false;
	var camposFaltantes = "\nTodos los campos son obligatorios. El o los siguientes campo(s) está(n) vacío(s):                        \n\n\t";

	switch (pagina){
		
		case 'ingresar_GD':
				camposRequeridos = new Array("id_gd_pk","id_sucursal_fk","id_comuna_destino_fk","id_cliente_fk","nombre_emisor","direccion_emisor","rut_emisor","fono_emisor","fecha","hora_embarque","nombre_destino","direccion_destino","rut_destino","fono_destino","id_tipo_tarifado_fk","tipo_carga","num_doc","descripcion_contenido","num_piezas","kilos","alto","largo","ancho","kpv","monto_asegurar","flete","servicio","seguro","subTotal","descuento","iva","total","formaDePago","observaciones","estado");
				camposNombres = new Array("Escriba el Número del GD","Seleccione la Sucursal","Seleccione la Comuna de Destino","Seleccione al Cliente","Ingrese Nombre del Emisor","Ingrese la Direccion del Emisor","Ingrese Rut del Emisor","Ingrese Telefono del Emisor","Ingrese la Fecha","Ingrese la Hora del Embarque","Ingrese el Nombre del Destino","Ingrese la Direccion del Destino","Ingrese el Rut del Destino","Ingrese el Telefono del Destino","Seleccione el Tipo de Tarifado","Seleccione el Tipo de Carga","Ingrese el Numero del Documento","Ingrese la Descripcion del Contenido","Ingrese el Numero de Piezas","Ingrese los Kilogramos","Ingrese el Alto","Ingrese el Largo","Ingrese el Ancho","Ingrese los Kilogramos por Volumen","Ingrese Monto a Asegurar","Ingrese el Valor del Flete","Ingrese el Valor del Servicio","Ingrese el Valor del Seguro","Ingrese el Valor del SubTotal","Ingrese el Valor del Descuento","Ingrese el Valor del Iva","Ingrese el Total del GD","Seleccione la Forma de Pago","Ingrese las Observaciones","Seleccione el estado del GD");
				rut  = "rut_emisor";
				break;

		default: return false;
	}
	
		//Reviso que los campos ingresados no esten vacios	
		for(var i=0; i < camposRequeridos.length; i++) {
			if ((f.elements[camposRequeridos[i]].value == "") ||
				(f.elements[camposRequeridos[i]].value == " ")) {
	
				camposFaltantes += camposNombres[i] + "\n\t";
				camposCheck = false;
			}
		}
		
		//Reviso que se haya seleccionado alguna de las opciones de los select's
/*		for(var i=0; i < camposRequeridos_select.length; i++) {
			if ((f.elements[camposRequeridos_select[i]].value == "0") || (f.elements[camposRequeridos_select[i]].value == "-1")|| (f.elements[camposRequeridos_select[i]].value == "")) {
	
				camposFaltantes += camposNombres_select[i] + "\n\t";
				camposCheck = false;
			}
		}*/
		
		//Reviso que el email este bien escrito
		if(email){
			if(!revisarMail(f)){
				camposFaltantes += "Debe escribir correctamente el correo" + "\n\t";
				camposCheck = false;
			}
		}
		
		//reviso que el rut ingresado sea válido.
		if(rut){
			if(!revisarRut(f,rut)){
				camposFaltantes += "El Rut Ingresado no es Válido" + "\n\t";
				camposCheck = false;
			}
		}
		
		//Reviso que el fono ingresado sea valido (no ingrese caracteres)
		if(fono){
			//colocar aca la funcion que revise el cuestionsita esta.
		}
		//Reviso que se hayan cumplido todas las condiciones.
		if (camposCheck == true){
			return true;
		}else{
			alert(camposFaltantes);
			return false;
		}
	
}

function isdefined(variable) 
{ 
	if(typeof(variable) !="undefined") 
		return true; 
	else 
	return false; 
}

function existeElementoEnArray(arr,elem)
{
	var i;
	for(i=0; i <  arr.length; i++)
	{
		if(arr[i] == elem)
			return true;
	}
	return false;
}
function eliminarElementoDeArray(arr,elem)
{
	var i,j;
	var tmpArr = new Array();
	for(i=0, j=0; i <  arr.length; i++)
	{
		if(arr[i] != elem)
		{
			tmpArr[j] = arr[i];
			j++;
		}
	}
	return tmpArr;
}
//elem1 y elem2 son arreglos
//La funcion verifica q sean iguales, si lo son retorna verdadero y sino falso !!
//El que sean iguales quiere decir q todos sus elementos son iguales, con mismo valor y en la misma
//posicion.-
function sonIguales(elem1,elem2)
{
	var i;
	if(elem1.lenght != elem2.lenght)
		return false;
	for(i=0; i < elem1.length; i++)
	{
		if(elem1[i]!=elem2[i])
			return false;
	}
	return true;
}

function jsArray2PHPArray(a)
// This converts a javascript array to a string in PHP serialized format.
// This is useful for passing arrays to PHP. On the PHP side you can 
// unserialize this string from a cookie or request variable. For example,
// assuming you used javascript to set a cookie called "php_array"
// to the value of a javascript array then you can restore the cookie 
// from PHP like this:
//    <?php
//    session_start();
//    $my_array = unserialize(urldecode(stripslashes($_COOKIE['php_array'])));
//    print_r ($my_array);
//    ?>
// This automatically converts both keys and values to strings.
// The return string is not URL escaped, so you must call the
// Javascript "escape()" function before you pass this string to PHP.
{
    var a_php = "";
    var total = 0;
    for (var key in a)
    {
        ++ total;
        a_php = a_php + "s:" +
                String(key).length + ":\"" + String(key) + "\";s:" +
                String(a[key]).length + ":\"" + String(a[key]) + "\";";
    }
    a_php = "a:" + total + ":{" + a_php + "}";
    return a_php;
}

function eliminaDeArray(arr, pos)
{
	var cantidad=1;
	arr.splice(pos,cantidad);
}

function encuentraPosEnArray(arr,elem)
{
	var i;
	for(i=0; i < arr.length; i++)
		if(sonIguales(arr[i],elem))
			return i;
	return -1;			
}

/*function eliminarElementoDeArray(arr,elem)
{
	var pos = encuentraPosEnArray(arr,elem);
	arr = eliminaDeArray(arr, pos);
	return arr;
}
*/
carrito = new Array();
function seleccionarTrabajo(chkBox){
	//Esta funcion usa el arreglo carrito (arribita), el cual contiene los elementos
	//que vayan siendo seleccionados. 
	if(existeElementoEnArray(carrito,chkBox.value))
		carrito = eliminarElementoDeArray(carrito,chkBox.value);
	else
		carrito[carrito.length] = chkBox.value;
	//alert(carrito+"   --> "+carrito.length);
		
}

function openVistaImpresion(){	
	if(carrito.length > 0)
		newPage('vistaImpresion.php?ids='+carrito.toString());
	else
		alert("Debe seleccionar al menos un trabajo");
}

function cerrar(){
location.href="mensaje.php?msg=Ud. ha cerrado su sesión&link=cerrar.php";
}
function show(){
var Digital=new Date()
var hours=Digital.getHours()
var minutes=Digital.getMinutes()
var seconds=Digital.getSeconds()
var dn="AM"
if (hours>12){
dn="PM"
hours=hours-12
}
if (hours==0)
hours=12
if (minutes<=9)
minutes="0"+minutes
if (seconds<=9)
seconds="0"+seconds
document.Tick.Clock.value=hours+":"+minutes+":"
+seconds+" "+dn
setTimeout("show()",1000)
}
function confirmDel()
{
var agree=confirm("¿Realmente desea eliminarlo? ");
if (agree) 
return true;

else
return false ;
}
function reAbrir()
{
window.opener="ellamisma";
vppal=window.open('http://www.jolivares.sansanet.cl/serpajchile/flash.html', "ppal", "directories=no, menubar=yes,status=no,toolbar=no,location=no,scrollbars=no,fullscreen=no")
window.close();
vppal.focus()
}
