var ie = (navigator.appName == "Microsoft Internet Explorer") ? true : false;
if(ie){
	_navV = navigator.userAgent.split(';');
	ie6 = (_navV[1].substring(6)<7) ? true : false;
}
function GE(obj) {
	return document.getElementById(obj);
}
function wl(ruta){
	window.location=ruta;
}
function volver(){
	window.history.back();
	return false;
}
///
memSRC = "";
function rollOver(obj){memSRC = obj.src;obj.src =  memSRC.substr(0,memSRC.length-4) + "_over" + memSRC.substring(memSRC.length-4);}
function rollOut(obj){obj.src =  memSRC;}
function Cachear(){
	cacheOver=[];
	for(im=0; im<Cachear.arguments.length; im++){
		imagenCachear = Cachear.arguments[im];
		cacheOver[im] = new Image();
		cacheOver[im].src = imagenCachear;
	}
}
function BipCache(){
	var DI=document.images;
	for(var i=0;i<DI.length; i++){
		if(DI[i].className){
			if(DI[i].className.toString().toLowerCase().indexOf('rollover')>-1){
				path=DI[i].src;
				ext=path.substr(path.length-4,4);
				img=path.substr(0,path.length-4);
				Cachear(img+'_over'+ext);
				DI[i].onmouseover=new Function('rollOver(this)');
				DI[i].onmouseout=new Function('rollOut(this)');
			}
		}
	}
}
//
function soloEmail(e){
	arrayBlock = [' ','ñ','Ñ','[',']',',',';',':','{','}','(',')','+','*','/','=','&','%','$','#','!','<','>','|','°','?','¿','¡','\'','"'];
	var tecla = (e.keyCode) ? e.keyCode : e.which;
	if(e.ctrlKey && tecla==118 || tecla==39){
		return false;
	}
	var l = String.fromCharCode(tecla)
	for(var i=0; i<arrayBlock.length; i++){
		if(arrayBlock[i] == l){
			return false;
		}
	}
}
function soloNumeros(e){
	tecla = (e.keyCode) ? e.keyCode : e.which;
	if(e.ctrlKey && tecla==118 || tecla==39){
		return false;
	}
    if (tecla==8 || tecla==0 || tecla==13 || tecla==9 || tecla==37 || tecla==46) return true;
    patron = /\d/;
    te = String.fromCharCode(tecla); 
    return patron.test(te); 
}
function filtrarTecla(e){
	var tecla = (e.keyCode) ? e.keyCode : e.which;
	if(e.ctrlKey && tecla==118) return false;
    if(tecla==8 || tecla==9 || tecla==0 || tecla==13 || tecla==46 || tecla==35 || tecla==36 || tecla==37 || tecla==39) return true;
	patron = /[a-zA-Z-_áÁéÉíÍóÓúÚñÑ]/;
    te = String.fromCharCode(tecla);
    return patron.test(te);
}
//
function soloLetras(e){
	tecla = (e.keyCode) ? e.keyCode : e.which;
	if(e.ctrlKey && tecla==118 || tecla==39) return false;
    if (tecla==8 || tecla==0 || tecla==13 || tecla==9) return true;
    patron = /[A-Za-z]/;
    return patron.test(String.fromCharCode(tecla));
}
function dateDiff(f1, f2){
	_s = "/";
	vF1 = f1.split(_s);
	_f1 = new Date(vF1[1] + _s + vF1[0] + _s + vF1[2]);
	vF2 = f2.split(_s);
	_f2 = new Date(vF2[1] + _s + vF2[0] + _s + vF2[2]);
	return (_f2-_f1)/24/60/60/1000;
}
function dateAdd(fecha, dias){
	_s = "/";
	vFecha = fecha.split(_s);
	time = new Date(vFecha[2],vFecha[1]-1,vFecha[0]);
	time = new Date(time.valueOf()+dias*1000*3600*24);	
	return time.getDate().biDig() + _s + (time.getMonth()+1).biDig() + _s + time.getFullYear();
}
Number.prototype.biDig = function(){
	return Number(this)<10 ? "0"+this : this;
}
//
_yscroll=_scrollto=0;
function scrollerTo(posv){
	_yscroll = getTopScroll();
	_scrollto=posv;
	intervalScroll=setInterval(scrollerMove,50);
	return false;
}
function scrollerMove(){
	_yscroll += (_scrollto-_yscroll)/2;
	_ymove=Math.round(_yscroll);
	if(_ymove==_scrollto){
		clearInterval(intervalScroll);
	}
	window.scrollTo(0,_ymove);
}
function getTopScroll(){
	if(self.pageYOffset){		
		scrolTop = self.pageYOffset;
	}else if (document.documentElement && document.documentElement.scrollTop){
		scrolTop = document.documentElement.scrollTop;
	}else if (document.body){
		scrolTop = document.body.scrollTop;
	}
	return scrolTop;
}
function AgregarOpcion(o,v,t,r) {
	if(r){
		for(var s=1; s<document.getElementById(o).options.length; s++){
			if(document.getElementById(o).options[s].text == t && document.getElementById(o).options[s].value == v) return false;
		}
	}
	var newOpt = document.createElement("OPTION");
	newOpt.text = t;
	newOpt.value = v;
	document.getElementById(o).options.add(newOpt);
}
function EliminarOpcion(o,v) {
	document.getElementById(o).remove(document.getElementById(o).options[v]);
}
var addEvent = function() {
  if (window.addEventListener) {
    return function(el, type, fn) {
      el.addEventListener(type, fn, false);
    };
  } else if (window.attachEvent) {
    return function(el, type, fn) {
      var f = function() {
        fn.call(el, window.event);
      };
      el.attachEvent('on' + type, f);
    };
  }
}();

function setCookie(nombre, valor) {
	caduca=new Date(2010, 12, 31);
	document.cookie = nombre + "=" + escape(valor) + "; expires=" + caduca.toGMTString();
}
function getCookie(nombre) {
  var buscar = nombre + "=";
  if (document.cookie.length > 0) {
	i = document.cookie.indexOf(buscar);	
	if (i != -1) {
	  i += buscar.length;
	  j = document.cookie.indexOf(";", i);
	  return unescape(document.cookie.substring(i,j));
	}else{
		return ""
	}
  }
}
function newAjax(){
	var http_request = false;
	if (window.XMLHttpRequest) {
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');			
		}
	} else if (window.ActiveXObject) {
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}	
	if (!http_request) {            
		return false;
	}
	return http_request;
}
function LogOut(){
	ht = document.getElementsByTagName("html");
	ht[0].style.filter = "progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)";
	if (confirm('Está seguro que desea salir?')){
		return true;
	}else{
		ht[0].style.filter = "";
		return false;
	}
}
function ponerHash(h){window.location.hash = h};
function traerHash(s){
		var wlh = window.location.hash;
		wlh = wlh.substring(1,wlh.length);
		v_wlh = wlh.split('&');
		var r_wlh = '';
		if(typeof(s) == 'undefined'){
			r_wlh = wlh;
		}else if(v_wlh.length>1){
			for(var v=0; v<v_wlh.length;v++){
				if(v_wlh[v].indexOf(s+'=')>-1)r_wlh = v_wlh[v].replace(s+'=','');
			}			
		}else{
			r_wlh = wlh.replace(s+'=','');
		}
		return r_wlh;
};
function hayHash(){return window.location.hash};
function getWindowHeight() {
	_wh = 0;
	if (document.body.scrollHeight && navigator.appVersion.indexOf("Win") != -1) {
		_wh = document.body.scrollHeight;
	}
	else if (document.documentElement.scrollHeight) {
		_wh = document.documentElement.scrollHeight;
	}
	else if (document.documentElement.offsetHeight) {
		_wh = document.documentElement.offsetHeight;
	}
	return _wh;
}
getStyle = function(el,styleProp){
	var x = typeof el == 'String' ? document.getElementById(el) : el;
	if (x.currentStyle)
		var y = x.currentStyle[styleProp];
	else if (window.getComputedStyle)
		var y = document.defaultView.getComputedStyle(x,null).getPropertyValue(styleProp);
	return y;
}
vMemSelectsStyle = [];
vMemSelectsObject = [];
showSelectBoxes = function(){	
	for (i = 0; i != vMemSelectsStyle.length; i++) {
		vMemSelectsObject[i].style.visibility = vMemSelectsStyle[i];
	}
}
hideSelectBoxes = function(){
	vMemSelectsStyle = [];
	vMemSelectsObject = [];
	var oSe = document.getElementsByTagName("select");
	for (i = 0; i != oSe.length; i++) {
		vMemSelectsStyle.push(getStyle(oSe[i],'visibility'));
		vMemSelectsObject.push(oSe[i]);
		oSe[i].style.visibility = "hidden";
	}
}
FormatNumber = function(num){
   num += '';
   var splitStr = num.split('.');
   var splitLeft = splitStr[0];
   var splitRight = splitStr.length > 1 ? '.' + splitStr[1] : '';
   var regx = /(\d+)(\d{3})/;
   while (regx.test(splitLeft)) {
      splitLeft = splitLeft.replace(regx, '$1' + ',' + '$2');
   }
   return splitLeft + splitRight;
}
UnFormatNumber = function(num) {
   return num.replace(/([^0-9\.\-])/g,'')*1;
}
encodeStr = function(s){
	return escape(s).replace(/\+/, "%2B");
}
html2js = function(s){
	return s.toString().split('"').join('&quot;');
}