
function IsNumeric(sText)
{var ValidChars="0123456789.,";var IsNumber=true;var Char;for(i=0;i<sText.length&&IsNumber==true;i++)
{Char=sText.charAt(i);if(ValidChars.indexOf(Char)==-1)
{IsNumber=false;}}
return IsNumber;}
function ConvertToNumberJS(sText,DecimalSeparator,GroupSeparator)
{var myStr=new String(sText);myStr=myStr.replace(GroupSeparator,"");myStr=myStr.replace(DecimalSeparator,".");return parseFloat(myStr);}
function ConvertToNumberServer(sText,DecimalSeparator,GroupSeparator)
{var myStr=new String(sText);myStr=myStr.replace(".",DecimalSeparator);return myStr;}
function ConvertToNumberFormat(sText,DecimalSeparator,GroupSeparator)
{var myStr=new String(sText);myStr=myStr.replace(".",DecimalSeparator);myStr=FormatNumber(myStr,DecimalSeparator,GroupSeparator)
return myStr;}
function FormatNumber(num,decpoint,sep){if(arguments.length==2){sep=",";}
if(arguments.length==1){sep=",";decpoint=".";}
num=num.toString();a=num.split(decpoint);x=a[0];y=a[1];z="";if(typeof(x)!="undefined"){for(i=x.length-1;i>=0;i--)
z+=x.charAt(i);z=z.replace(/(\d{3})/g,"$1"+sep);if(z.slice(-sep.length)==sep)
z=z.slice(0,-sep.length);x="";for(i=z.length-1;i>=0;i--)
x+=z.charAt(i);if(typeof(y)!="undefined"&&y.length>0)
x+=decpoint+y;else
x+=decpoint+"00";}
return x;}
function dateDiffCurrent(compareDate,FormatDate)
{var firtsDate;var secondDate;var date1Array;var date2Array;diff=new Date();var matchFormat=FormatDate.split("/")
date1Array=compareDate.split("/");var date1=new Date();var date2=new Date();firtsDate=new Date();secondDate=new Date();if(matchFormat[0]=="dd"||matchFormat[0]=="DD")
{firtsDate=Date.parse(date1Array[2]+'/'+(parseInt(date1Array[1],10))+'/'+(parseInt(date1Array[0],10)));}
else
{firtsDate=Date.parse(date1Array[2]+'/'+(parseInt(date1Array[0],10))+'/'+(parseInt(date1Array[1],10)));}
secondDate=Date.parse(secondDate.getFullYear()+'/'+(parseInt(secondDate.getMonth(),10)+1)+'/'+(parseInt(secondDate.getDate(),10)));date1temp=new Date(firtsDate);date1.setTime(date1temp.getTime());date2temp=new Date(secondDate);date2.setTime(date2temp.getTime());diff.setTime(Math.abs(date1.getTime()-date2.getTime()));timediff=diff.getTime();days=Math.floor(timediff/(1000*60*60*24));if(date1.getTime()-date2.getTime()<0)
{return days*(-1);}
else
{return days;}}
function dateDiff(firstDate,secondDate,FormatDate)
{var firtsDate;var secondDate;var date1Array;var date2Array;diff=new Date();var matchFormat=FormatDate.split("/")
date1Array=firstDate.split("/");date2Array=secondDate.split("/");var date1=new Date();var date2=new Date();firtsDate=new Date();secondDate=new Date();if(matchFormat[0]=="dd"||matchFormat[0]=="DD")
{firtsDate=Date.parse(date1Array[2]+'/'+(parseInt(date1Array[1],10))+'/'+(parseInt(date1Array[0],10)));secondDate=Date.parse(date2Array[2]+'/'+(parseInt(date2Array[1],10))+'/'+(parseInt(date2Array[0],10)));}
else
{firtsDate=Date.parse(date1Array[2]+'/'+(parseInt(date1Array[0],10))+'/'+(parseInt(date1Array[1],10)));secondDate=Date.parse(date2Array[2]+'/'+(parseInt(date2Array[0],10))+'/'+(parseInt(date2Array[1],10)));}
date1temp=new Date(firtsDate);date1.setTime(date1temp.getTime());date2temp=new Date(secondDate);date2.setTime(date2temp.getTime());diff.setTime(Math.abs(date1.getTime()-date2.getTime()));timediff=diff.getTime();days=Math.floor(timediff/(1000*60*60*24));if(date2.getTime()-date1.getTime()<0)
{return days*(-1);}
else
{return days;}}
function isDate(sDate,FormatDate)
{var matchArray=sDate.match(/^(\d\d?)\/(\d\d?)\/(\d{4})$/);var matchFormat=FormatDate.split("/")
if(matchArray!=null){if(matchFormat[0]=="dd"||matchFormat[0]=="DD")
{var day=matchArray[1];var month=matchArray[2];}
else
{var day=matchArray[2];var month=matchArray[1];}
var year=matchArray[3];if(month<1||month>12)
{return false;}
if(day<1||day>31)
{return false;}
if((month==4||month==6||month==9||month==11)&&day==31)
{return false;}
if(month==2)
{var isleap=(year%4==0&&(year%100!=0||year%400==0));if(day>29||(day==29&&!isleap))
{return false;}}
return true;}
else
{return false;}}
function ConvertToDate(sDateString,FormatDate)
{var matchArray=sDateString.match(/^(\d\d?)\/(\d\d?)\/(\d{4})$/);var matchFormat=FormatDate.split("/")
if(matchArray!=null)
{if(matchFormat[1]=="dd"||matchFormat[1]=="DD")
{var day=matchArray[1];var month=matchArray[2]-1;}
else
{var day=matchArray[2];var month=matchArray[1]-1;}
var year=matchArray[3];return new Date(year,month,day);}}
function ValidarEmail(emailStr)
{var emailPat=/^(.+)@(.+)$/;var specialChars="\\(\\)<>@ñÑ,;:\\\\\\\"\\.\\[\\]";var validChars="\[^\\s"+specialChars+"\]";var quotedUser="(\"[^\"]*\")";var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;var atom=validChars+'+';var word="("+atom+"|"+quotedUser+")";var userPat=new RegExp("^"+word+"(\\."+word+")*$");var domainPat=new RegExp("^"+atom+"(\\."+atom+")*$");var matchArray=emailStr.match(emailPat);if(matchArray==null)
{return false;}
var user=matchArray[1];var domain=matchArray[2];if(user.match(userPat)==null)
{return false;}
var IPArray=domain.match(ipDomainPat);if(IPArray!=null)
{for(var i=1;i<=4;i++)
{if(IPArray[i]>255)
{return false;}}}
var domainArray=domain.match(domainPat);if(domainArray==null)
{return false;}
var atomPat=new RegExp(atom,"g");var domArr=domain.match(atomPat);var len=domArr.length;if(domArr[domArr.length-1].length<2||domArr[domArr.length-1].length>3)
{return false;}
if(len<2)
{return false;}
return true;}
function timeDiff(firstDate,secondDate)
{date1=new Date();date2=new Date();diff=new Date();date1temp=new Date(firstDate);date1.setTime(date1temp.getTime());date2temp=new Date(secondDate);date2.setTime(date2temp.getTime());diff.setTime(Math.abs(date1.getTime()-date2.getTime()));timediff=diff.getTime();sec=Math.floor(timediff/(1000));return sec;}
function cookieSave(name,value)
{jaaulde.utils.cookies.set(name,value,{hoursToLive:24});}
function cookieGet(name)
{return jaaulde.utils.cookies.get(name);}
function cookieDel(name)
{jaaulde.utils.cookies.del(name);}