function isNetscape(){return(navigator.appName=="Netscape");}
function isOpera(){return(navigator.userAgent.indexOf("Opera")!=-1);}
function isNetscape4(){return(isNetscape()&&navigator.appVersion.charAt(0)=="4");}
function isNetscape6(){return(isNetscape()&&navigator.appVersion.charAt(0)!="4");}
function isExplorer(){return(!isNetscape()&&!isOpera());}
function isExplorer4(){return isExplorer();}
function isMac(){return(navigator.appVersion.lastIndexOf('Mac')!=-1)}
function trim(value){return value.replace(/(^\s*)|(\s*$)/g,"");}
function milsep(n){var ns=String(n)
var seps="."
while(/^([^.,]*\d)(\d{3}([.,]|$))/.test(ns)){ns=ns.replace(/^([^.,]*\d)(\d{3}([.,]|$))/,"$1"+seps+"$2");}
return ns;}
function nuevoTextoError(pcTexto){var oP=new Object();oP=document.createElement('P');oP.innerHTML=pcTexto;dojo.place(oP,dojo.query('.alert')[0],'last');}
function limpiarTextosError(){dojo.query('.alert p').forEach(function(poElemento){dojo.query('.alert')[0].removeChild(poElemento);});}
function getBundle(bundle){dojo.xhrGet({url:bundle,load:function(response,ioArgs){},error:function(response,ioArgs){console.debug('error loading bundle: '+bundle);},handleAs:"json"});}
function checkEnter(event,action){var code=(document.layers)?event.which:event.keyCode;if(code==13)eval(action);}
function clickStats(origen){dojo.xhrGet({url:'/redir.jsp?origen='+origen,load:function(response,ioArgs){}});}