function selecciona(){ 
    var i 
    for (i=0;i<document.frm.optSeleccion.length;i++){ 
      if (document.frm.optSeleccion[i].checked) 
          break; 
    } 

	document.frm.hdCodMarca.value=document.frm.vchCodMarca[i].value;
	document.frm.hdCodCliente.value=document.frm.vchCodCliente[i].value; 
	document.frm.hdCantComentar.value=document.frm.vchCantComentar[i].value;
	document.frm.hdCantDetalle.value=document.frm.vchCantDetalle[i].value;
	document.frm.hdCantStatus.value=document.frm.vchCantStatus[i].value;
	document.frm.hdCantVistas.value=document.frm.vchCantVistas[i].value;
	document.frm.hdnumOposicion.value=document.frm.numOposicion[i].value;
} 

function BloqueoTeclado(){
	var code
	code = window.event.keyCode
	window.event.keyCode = ""
	return true
}  

function Depurar(pValor){
var Cadena = pValor;
var aTemp, i;

aTemp = Cadena.split("¬");
aTemp = aTemp.sort();
Cadena = "¬" + aTemp[0] + "¬";
for (i=0; i < aTemp.length; i++){
 if (Cadena.indexOf("¬" + aTemp[i] + "¬") == -1){
   Cadena += aTemp[i] + "¬"
 }
}
Cadena = Cadena.substr(1);
Cadena = Cadena.substr(0 ,Cadena.length - 1);
return Cadena;
}



function IrAPagina(URL){
	document.location.href = URL
}
document.getElementsByClassName = function (needle){
  var         my_array = document.getElementsByTagName("*");
  var         retvalue = new Array();
  var        i;
  var        j;

  for (i = 0, j = 0; i < my_array.length; i++){
    var c = " " + my_array[i].className + " ";
    if (c.indexOf(" " + needle + " ") != -1)
      retvalue[j++] = my_array[i];
  }
  return retvalue;
}

function addEvent(obj, evType, fn){
	if (obj.addEventListener){
		obj.addEventListener(evType, fn, true);
		return true;
	}else if (obj.attachEvent){
		var r = obj.attachEvent("on"+evType, fn);
		return r;
	}else{
		return false;
	}
}
addEvent(window, 'load', function(){
	var counts = document.getElementsByClassName('claseFormsTextArea');
	var i, count, matches, countHolder;
	
	for (i=0; i<counts.length; i++){
		count = counts[i];	
		matches = count.className.match(/max_([0-9]+)/);
		count.maxVal = RegExp.$1;
		count.holder = document.getElementById(count.id + 'Count');
		if (count.holder){
			count.holder.innerHTML = count.maxVal - count.value.length;
			count.onkeyup = function(){
				if (this.value.length > this.maxVal)
					this.value = this.value.substring(0, this.maxVal);
	
				this.holder.innerHTML = this.maxVal - this.value.length;		
			}
		}
	}	
});
function isUndefined(obj){
	if("" + obj + "" == "undefined"){ 
		return true
	}
	else{
		return false
	}
}
function formatNumber(expr,numDec){
	//formatea un numero con la cantidad de decimales deseados
	var parteInt = "" + expr
	var parteDec = "" + expr
	var posDec = parteInt.indexOf(".")
	if (posDec==-1) return parteInt + "." + Ceros(numDec-1)
	parteInt = parteInt.substring(0,posDec)
	parteDec = parteDec.substring(posDec + 1)
	if (eval(numDec)==0) return "" + parteInt + "." + Ceros(numDec)
	parteDec = (eval(parteDec)*Math.pow(10,numDec)).toString()
	return "" + parteInt + "." + parteDec.substring(0,numDec)
}
function AbrirVentanaHistorialesPedido(pIdPedido,pNumeroPedido,pIdEmpresa,pIdSucursal,pChAnioPedido){
	window.open("../Historiales/HistorialPedido.asp?IdPedido=" + pIdPedido + "&NumeroPedido=" + pNumeroPedido+ "&IdEmpresa=" + pIdEmpresa+ "&IdSucursal=" + pIdSucursal+ "&ChAnioPedido=" + pChAnioPedido,"_blank","width=650,height=400,scrollbars=yes")
}
function Ceros(numceros){
    var ceros;
    ceros = "";
    for(var i=0; i<=numceros; i++){
        ceros = "0" + ceros;
    }
    return ceros;
}
function Escape_CloseWindow(){	
	/* solo InternetExplorer */
	var tecla = event.keyCode; 
	if(tecla==27) window.close();
}
function ToNum(value){
	if (trim(value) == ""){
		return 0
	}
	else{
		value = ReplaceComma(value)
		//alert("value:" + value)
		return parseFloat(value)
	}
}
function Ucase(){
	var code
	code = window.event.keyCode
	if ((code!=39)&&(code!=34)){
		if ((code>=97)&&(code<=122)){
			window.event.keyCode = code-32
		}
	}else{
		window.event.keyCode = ""
	}
}

function enviar(Formulario, Action){
	document.forms[Formulario].action = Action;
	document.forms[Formulario].submit();
}





function isArray(obj){
	return(typeof(obj.length)=="undefined")?false:true;
}








/************************************************************
Autor: Joan Manuel Luna-Peralta Román
Fecha: 8 de Abril del 2006
Descripcion: Funcion que selecciona todos los checkboxes del mismo nombre de 
una pagina, recibe le nombre del checkbox a seleccionar, el nombre del checkbox que valida y el nombre del 
formulario.
*******************************************************************/
function checkAll(frmName,chkNombreValida,chkNombreCheck){
	var intX
	if (document.forms[frmName][chkNombreValida].checked ){
		for (intX = 0 ; intX < document.forms[frmName][chkNombreCheck].length ; intX++){
		
			document.forms[frmName][chkNombreCheck][intX].checked = true;
		}
	}else{
		for (intX = 0 ; intX < document.forms[frmName][chkNombreCheck].length ; intX++){
			document.forms[frmName][chkNombreCheck][intX].checked = false;
		}
	}
}


//****************************************
//Autor: Joan Manuel Luna-Peralta Román
//Fecha: 8 de Abril del 2006
//Descripcion: Funcion que muestra abre la ventana de about
/**********************************************/

function showAbout(pagina){
  var popupURL =pagina;
  var popup = window.open(pagina,'about','scrollbars=0,status=0,toolbar=0,location=0,menubar=0,directories=0,resizable=1,height=280,width=540')
  if( navigator.appName.substring(0,8) == "Netscape" ){
    popup.location = popupURL;
  }
}


//****************************************
//Autor: Joan Manuel Luna-Peralta Román
//Fecha: 8 de Abril del 2006
//Descripcion: Funcion que cierra la ventana de about
/**********************************************/

function closeAbout(pagina){
	window.close();
	return ;
}


//****************************************
//Autor: Joan Manuel Luna-Peralta Román
//Fecha: 8 de Abril del 2006
//Descripcion: Funcion que muestra abre una ventana modal
/**********************************************/


function showWindowModal(pagina){

  var popupURL =pagina;
  var popup = window.showModalDialog(pagina,"Dialog Box Arguments # 1","dialogHeight: 265px; dialogWidth: 698px; dialogTop: 441px; dialogLeft: 861px; edge: Raised; center: Yes; help: Yes; resizable: No; status: No;")
  if( navigator.appName.substring(0,8) == "Netscape" ){
    popup.location = popupURL;
  }
}

//****************************************
//Autor: Joan Manuel Luna-Peralta Román
//Fecha: 8 de Abril del 2006
//Descripcion: Funcion que muestra abre la ventana de filtros de consultas
/**********************************************/

function showFiltros(pagina){
  var vartop;
  var varleft; 
  var parametros; 
  vartop = 200
  varleft = 200
   
  parametros = "scrollbars=0,status=0,toolbar=0,location=0,menubar=0,directories=0,resizable=1,top=" + vartop + ",left=" + varleft + ",height=280,width=600";
  
  var popupURL =pagina;
  var popup = window.open(pagina,'filtros',parametros)
  if( navigator.appName.substring(0,8) == "Netscape" )
  {
    popup.location = popupURL;
  }
}

function F_OrdenaRInd(pRuta){
	window.open(pRuta,"","statusbar=1,directories=0,resizable=no,width=450,height=450")
}


function F_OrdenarEst(pRuta){
	window.open(pRuta,"","statusbar=1,directories=0,resizable=no,width=450,height=450")
}

function F_OrdenarObj(pRuta){
	window.open(pRuta,"","statusbar=1,directories=0,resizable=no,width=450,height=450")
}

function Marca_Combo(combo,valor){
 	var i=combo.length;
	var j=0;
	while((j<i) && (valor != combo.options[j].value)){
		j=j+1;
	}
	if (j<i){
		combo.options[j].selected = true;		
		return true;
		}
	return false;
}

function BorrarItemCombo(combo) {
var i,j,k;
var aux_combo = new Array();
for(i=0;i<combo.length;i++)
aux_combo[i] =combo.options[i].text;

i=combo.selectedIndex;
j=0;
k=0;
combo.length=0;
	if (i>-1){
		while(j<aux_combo.length){
			if (j==i){
				k=j;
			}	
			else{
				combo.options[k] = new Option(aux_combo[j],aux_combo[j]);
				k=k+1;
			}
		j=j+1;
		}
	}
}

function Poner_Dos_Puntos(src){
	if (SoloNumeros()){
		if (src.value.length==2){
			src.value = src.value + ":";
		}
	}
}

function Borrar_Caja(src){
	if (!src.readOnly){
		var code = window.event.keyCode
		if ((code==8)||(code==46)){
			src.value = ""
		}
	}
}

function Poner_Guion(src){
	if (SoloNumeros()){
		if ((src.value.length==4)||(src.value.length==7)){
			src.value = src.value + "-";
		}
	}
}

function Borrar_Guion(src){
	if (!src.readOnly){
		var code = window.event.keyCode
		if ((code==8)||(code==46)){
			src.value = ""
		}
	}
}

function SoloNumeros(){
	var code
	code = window.event.keyCode
	if ((code>=48)&&(code<=57)){
		window.event.keyCode = code
		return true
	}else{
		window.event.keyCode = ""
		return false
	}
}

function SoloNumerosDec(){
	var code
	code = window.event.keyCode;
	//if (((code>=48)&&(code<=57))||(code==44)||(code==45)){
	if (((code>=48)&&(code<=57))||(code==46)){
		window.event.keyCode = code
		//alert(code);
	}else{
		window.event.keyCode = ""
		//alert(code);
	}
}

function Ucase(){
	var code
	code = window.event.keyCode
	if ((code!=39)&&(code!=34)){
		if ((code>=97)&&(code<=122)){
			window.event.keyCode = code-32
		}
	}else{
		window.event.keyCode = ""
	}
}

function trim(str){
	var cadena = String(str);
	var nuevaCadena = String(str);
	var i = 0;	
	while (cadena.charAt(i) == " "){
		i++;
		nuevaCadena = cadena.substring(i,cadena.length - 1);
	}
	cadena = nuevaCadena;
	i = cadena.length - 1;
	while (cadena.charAt(i) == " "){
		nuevaCadena = cadena.substring(0,i);
		i--;
	}
	cadena = nuevaCadena;
	return cadena;
}

function abrirVentana(archivo,nombre,settings){
	window.open(archivo,nombre,settings);
}

function isPosInteger(inputVal){
	var inputStr;
	var oneChar;
	inputStr = inputVal.toString();
	if (trim(inputStr) == ""){
		return false;
	}
	for (var i = 0; i < inputStr.length; i++){
		oneChar = inputStr.charAt(i);
		if (oneChar < "0" || oneChar > "9"){
			return false;
		}
	}
	return true;
}

function isNumber(inputVal){
	var inputStr;
	var oneChar;
	var oneDecimal;
	oneDecimal = false;
	inputStr = inputVal.toString();
	if (trim(inputStr) == ""){
		return false;
	}
	for (var i = 0; i < inputStr.length; i++){
		oneChar = inputStr.charAt(i);
		if (oneChar == "," && !oneDecimal){
			oneDecimal = true;
			continue;
		}
		if (oneChar < "0" || oneChar > "9"){
			return false;
		}
	}
	return true;
}

function isNumberPunto(inputVal){
	var inputStr;
	var oneChar;
	var oneDecimal;
	oneDecimal = false;
	inputStr = inputVal.toString();
	if (trim(inputStr) == ""){
		return false;
	}
	for (var i = 0; i < inputStr.length; i++){
		oneChar = inputStr.charAt(i);
		if (oneChar == "." && !oneDecimal){
			oneDecimal = true;
			continue;
		}
		if (oneChar < "0" || oneChar > "9"){
			return false;
		}
	}
	return true;
}

function isNumber1(inputVal){
	var inputStr;
	var oneChar;
	var oneDecimal;
	oneDecimal = false;
	inputStr = inputVal.toString();
	for (var i = 0; i < inputStr.length; i++){
		oneChar = inputStr.charAt(i);
		if (oneChar == "," && !oneDecimal){
			oneDecimal = true;
			continue;
		}
		if (oneChar < "0" || oneChar > "9"){
			if (oneChar != "-" && i != 0)
			{
				return false;				
			}			
		}
	}
	return true;
}

function isDate(inputVal){
	var inputStr;
	var numDelim;	
	var oneChar;
	var correctFormat;
	var i;
	var indexDelim1;
	var indexDelim2;
	var dd;
	var mm;
	var aaaa;
	var maxDay;
	
	inputStr = inputVal.toString();
	
	//revisa si hay más de ocho caracteres
	if (inputStr.length != 10){
		return false;
	}

	numDelim = 0
	correctFormat = true;

	//revisa si no hay letras u otros caracteres además de números y slash
	for (i = 0; i < inputStr.length; i++){
		oneChar = inputStr.charAt(i);
		if (oneChar < "0" || oneChar > "9"){
			if (oneChar != "-"){
				correctFormat = false;
			}else{
				numDelim = numDelim + 1
			}
		}
	}
	
	//revisa si existen mas de dos delimitadores
    if (numDelim != 2){
		return false;
	}	
	
	if (correctFormat == false){
		return false;
	}

	//inicio de la comprobación
	indexDelim1 = inputStr.indexOf("-");
	indexDelim2 = inputStr.lastIndexOf("-");

	if (indexDelim1 != 4 || indexDelim2 != 7){
		return false;
	}
	aaaa = parseInt(inputStr.substring(0,indexDelim1),10);
	mm = parseInt(inputStr.substring(indexDelim1 + 1,indexDelim2),10);
	dd = parseInt(inputStr.substring(indexDelim2 + 1,inputStr.length),10);
	if (mm < 1 || mm > 12){
		return false;
	}
	switch (mm){
		case 1: 
			maxDay = 31;
			break;
		case 2:
			if (aaaa % 4 == 0){
				maxDay = 29;
			}
			else {
				maxDay = 28;
			}
			break;
		case 3:
			maxDay = 31;
			break;
		case 4:
			maxDay = 30;
			break;
		case 5:
			maxDay = 31;
			break;
		case 6:
			maxDay = 30;
			break;
		case 7:
			maxDay = 31;
			break;
		case 8:
			maxDay = 31;
			break;
		case 9:
			maxDay = 30;
			break;
		case 10:
			maxDay = 31;
			break;
		case 11:
			maxDay = 30;
			break;
		case 12:
			maxDay = 31;
			break;
	}
	if (dd > maxDay){
		return false;
	}
	return true;
}

function isTime(pValue){
	var inputStr
	var oneChar
	var i
	var correctFormat
	var numDelim
	var indexDelim1
	var hh
	var mm

	inputStr = pValue.toString()
	//revisa si hay más de cinco caracteres
	if (inputStr.length > 5 || inputStr.length < 4){
		return false
	}
	//revisa si no hay letras u otros caracteres además de números y ':'
	numDelim = 0
	correctFormat = true;
	for (i = 0; i < inputStr.length; i++){
		oneChar = inputStr.charAt(i);
		if (oneChar < "0" || oneChar > "9"){
			if (oneChar != ":"){
				correctFormat = false;
			}else{
				numDelim = numDelim + 1
			}
		}
	}
	
	//revisa si existen mas de dos delimitadores
    if (numDelim != 1){
		return false;
	}	
	
	if (correctFormat == false){
		return false;
	}

	//inicio de la comprobación
	indexDelim1 = inputStr.indexOf(":");

	hh = parseInt(inputStr.substring(0,indexDelim1),10);
	mm = parseInt(inputStr.substring(indexDelim1 + 1,inputStr.length),10);

	if (hh > 23){
		return false
	}
	if (mm > 59){
		return false
	}
	return true
}

function isType(extension,archivo){
	var strArchivo;
	var lastPosPoint;
	var strExtensionArchivo;
	var strExtensionPrueba;
	strExtensionPrueba = trim(extension.toString());
	strArchivo = trim(archivo.toString());
	lastPosPoint = strArchivo.lastIndexOf(".");
	if (lastPosPoint == -1){
		return false;
	}
	strExtensionArchivo = strArchivo.substring(lastPosPoint + 1,strArchivo.length);
	if (strExtensionArchivo != strExtensionPrueba){
		return false;
	}
	return true;
}


//auxiliares

function DiasMes(anno,mes){
//devuelve el numero de dias que tiene un mes, incluido año bisiesto
//anno es string y mes entero.
var factor, resto;
	if ((mes==1) || (mes==3) || (mes==5) || (mes==7) || (mes==8) || (mes==10) || (mes==12))
		return 31;
	if ((mes==4) || (mes==6) || (mes==9) || (mes==11))
		return 30;
	if (mes==2){
		factor=4;
		if (anno.substring(2,4)=="00")
			factor = 400;
		resto = (parseInt(anno) % factor);
		if (resto==0)
			return 29;
		else
			return 28;
	}
}


function FormatoCeros(numero,caja){
var len = caja.value.length;
var formato;
	if ((numero<1) || (len<=0))
		return;
	formato = Ceros(numero - len);
	caja.value = formato + caja.value;
}
function Poner_Guion(src){
	if (SoloNumeros()){
		if ((src.value.length==4)||(src.value.length==7)){
			src.value = src.value + "-";
		}
	}
}
function CompletaCerosalaizquierda(numero,caja){
	if(caja.value!=""){
	var len=caja.value.length;
	for(var i=len;i<numero;i++){
		caja.value="0" + caja.value	;
	
	}
	}
}

function Dar_Enter(objeto){
	if (window.event.keyCode==13)
		objeto.focus();
}
function EntercomoTab(){
	if(event.keyCode==13)
		return event.keyCode=9	;
		
}
function BgColor(obj){
	obj.style.backgroundColor = "#EFEFEF"
	obj.style.cursor="hand"
}
function CadenaVacia(numespacios){
    var espacios;
    espacios = "";
    for(var i=0; i<=numespacios; i++){
        espacios = espacios + " ";
    }
    return espacios;
}


function Linea(numlineas){
    var lineas;
    lineas = "";
    for(var i=0; i <= numlineas; i++){
         lineas = lineas + "-";
    }
    return lineas;
}

function LTrim(s){
	//devueleve una cadena sin los espacios del principio
	var i=0;
	var j=0;
	//busca el primer caracter <> de un espacio
	for(i=0;i<=s.length-1;i++)
		if(s.substring(i,i+1) != ' '){
			j=i;
			break;
		}
	return s.substring(j,s.length);
}

function RTrim(s){
	//quita los espacios en blanco del final de una cadena
	var j=0;
	//busca el ultimo caracter <> de un espacio
	for(var i=s.length-1;i>-1;i--)
		if(s.substring(i,i+1) != ' '){
			j=i;
			break;
		}
	return s.substring(0,j+1);
}

function Left(s,n){
	//devuelve los n primeros caracteres de la cadena
	if(n>s.length)
		n=s.length;
	return s.substring(0,n);	
}

function Right(s,n){
	//devuelve los n ultimos caracteres de la cadena
	var t=s.length;
	if(n>t)
		n=t;
	return s.substring(t-n,t);
}


function ToNum(value){
	if (trim(value) == ""){
		return 0
	}
	else{
		value = ReplaceComma(value)
		return parseFloat(value)
	}
}

function ReplaceComma(parm){
	var posDec
	posDec = parm.indexOf(",")
	if (posDec != -1){
		return parm.substring(0,posDec) + "." + parm.substring(posDec + 1,parm.length)
	}else{
		return parm
	}
}

function ToInteger(value){
	if (trim(value) == "")
		return 0
	else
		return parseInt(value)
}


//****************************************
//Autor: Joan Manuel Luna-Peralta Román
//Fecha: 06 de Mayo del 2006
//Descripcion: Funciones para el efecto Over en los botones del Sistema
/**********************************************/

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function isMail(texto){ 
	
		var mailres = true;             
		var cadena = "abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ1234567890@._-"; 
		 
		var arroba = texto.indexOf("@",0); 
		if ((texto.lastIndexOf("@")) != arroba) arroba = -1; 
		 
		var punto = texto.lastIndexOf("."); 
					 
		 for (var contador = 0 ; contador < texto.length ; contador++){ 
			if (cadena.indexOf(texto.substr(contador, 1),0) == -1){ 
				mailres = false; 
				break; 
		 } 
		} 
	
		if ((arroba > 1) && (arroba + 1 < punto) && (punto + 1 < (texto.length)) && (mailres == true) && (texto.indexOf("..",0) == -1)) 
		 mailres = true; 
		else 
		 mailres = false; 
					 
		return mailres; 
	}
/**************************
	/*Autor: Joan Manuel Luna-Peralta Román
	/*Fecha: 8 de Abril del 2006
	/*Descripcion: Script que deshabilita el boton derecho del mouse*/
	/*********************************************/
	//function oncontextmenuHandler() 
//	{
//	    return false;
//	}
//	document.oncontextmenu = oncontextmenuHandler;
//	
//
//	var ns = (navigator.appName == "Netscape"); // true if the page is viewed in Netscape.
//
//	function rightClick( evnt )
//	{
//	 if (ns && ((evnt.which == 2) || (evnt.which == 3))) // check if it's Netscape and
//	                                                     // the mouse button is number 2 or 3.
//	  return false; // cancel the event-bubbling.
//	 else
//	  return true; // else, let all go on normally.
//	}
//
//	if (ns)
//	{
//	 window.captureEvents(Event.MOUSEDOWN);
//	 window.captureEvents(Event.MOUSEUP);
//	} // MOUSEDOWN and MOUSEUP events captured.
//
//	window.onmousedown = rightClick;
//	window.onmouseup = rightClick; // assign the rightClick function as the handler for those events.