﻿
var ASPEN={Locale:{decimal:(typeof __trCulture=="undefined")?".":__trCulture.numberFormat.numberDecimalSeparator,separator:(typeof __trCulture=="undefined")?" ":__trCulture.numberFormat.numberGroupSeparator,set:function(decimal,separator){ASPEN.Locale.decimal=decimal;ASPEN.Locale.separator=separator;},getCleanValueRegExp:function(){function escapeRegExp(e){if(e==' '||e=='\u00A0'||e=='\t'){return'[ \\t\\u00A0]';}
return RegExp.escape(e);}
if(typeof(ASPEN.Locale.cleanValueRegExp)=="undefined"){var seps=ASPEN.Locale.separator;var cc='';if(typeof __trCulture!=="undefined"){var nf=__trCulture.numberFormat;seps+=nf.currencyGroupSeparator;cc="|"+escapeRegExp(nf.currencySymbol);}
ASPEN.Locale.cleanValueRegExp=new RegExp("["+seps+" \%\$\xa3\u20AC]"+cc,"g");}
return ASPEN.Locale.cleanValueRegExp;},parseFloat:function(v){v=ASPEN.Utils.CleanValue(v).replace(ASPEN.Locale.decimal,".");return parseFloat(v);},parseFloatExact:function(v){v=ASPEN.Utils.CleanValue(v).replace(ASPEN.Locale.decimal,".");var numRe=/^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$/;if(!numRe.test(v)){return Number.NaN;}
return parseFloat(v);},parseInt:function(v){v=ASPEN.Utils.CleanValue(v).replace(ASPEN.Locale.decimal,".");return parseInt(v);},convertNumericFieldTo:function(f){if(f){var v=parseFloat(f.value);if(!isNaN(v)){f.value=ASPEN.Locale.format(v,"###0.#################");}}},convertNumericFieldFrom:function(f){if(f){var v=ASPEN.Locale.parseFloat(f.value);if(!isNaN(v)){f.value=ASPEN.Locale.parseFloat(f.value);}}},format:function(v,mask){var fmtd=vbFormat(v,mask);var s=fmtd.replace(/\./g,"D").replace(/,/g,"T");return s.replace(/D/g,ASPEN.Locale.decimal).replace(/T/g,ASPEN.Locale.separator);}},Element:{addClassName:function(theObject,className){var names=theObject.className.split(" ");for(var i=0;i<names.length;i++){if(names[i]==className){return;}}
names.push(className);theObject.className=names.join(" ");},removeClassName:function(theObject,className){var names=theObject.className.split(" ");for(var i=0;i<names.length;i++){if(names[i]==className){names.splice(i,1);break;}}
theObject.className=names.join(" ");},usesClassName:function(theObject,className){var names=theObject.className.split(" ");for(var i=0;i<names.length;i++){if(names[i]==className){return true;}}
return false;},getText:function(theObject){if(typeof(theObject.innerText)!="undefined"){return theObject.innerText;}
return theObject.textContent;},setText:function(theObject,value){theObject.appendChild(document.createTextNode(value));}},RadioButton:{getValue:function(theObject){var items=theObject;if(typeof items.length=="undefined"){items=[items];}
var value=null;for(var i=0;i<items.length;i++){if(items[i].checked){value=items[i].value;break;}}
return value;},setValue:function(theObject,theValue){var items=theObject;if(items.length==0){items=[items];}
for(var i=0;i<items.length;i++){if(items[i].value==""+theValue){items[i].checked=true;break;}}}},Checkbox:{getValues:function(theObject){var items=theObject;if(items.length==0){items=[items];}
var values=[];for(var i=0;i<items.length;i++){if(items[i].checked){values.push(items[i].value);}}
return values;},setValues:function(theObject,theValue){var items=theObject;if(items.length==0){items=[items];}
for(var i=0;i<items.length;i++){if(items[i].value==""+theValue){items[i].checked=true;break;}}}},Cookie:{_getCookieVal:function(offset){var endstr=document.cookie.indexOf(";",offset);if(endstr==-1)
endstr=document.cookie.length;return unescape(document.cookie.substring(offset,endstr));},get:function(name){var arg=name+"=";var alen=arg.length;var clen=document.cookie.length;var i=0;while(i<clen){var j=i+alen;if(document.cookie.substring(i,j)==arg)
return ASPEN.Cookie._getCookieVal(j);i=document.cookie.indexOf(" ",i)+1;if(i==0)break;}
return null;},set:function(name,value){var argv=ASPEN.Cookie.set.arguments;var argc=ASPEN.Cookie.set.arguments.length;var expires=(argc>2)?argv[2]:null;var path=(argc>3)?argv[3]:"/";var domain=(argc>4)?argv[4]:null;var secure=(argc>5)?argv[5]:false;document.cookie=name+"="+escape(value)+
((expires==null)?"":("; expires="+expires.toGMTString()))+
((path==null)?"":("; path="+path))+
((domain==null)?"":("; domain="+domain))+
((secure==true)?"; secure":"");}},Window:{getSettings:function(){var myWidth=0,myHeight=0;if(typeof(window.innerWidth)=='number'){myWidth=window.innerWidth;myHeight=window.innerHeight;}else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){myWidth=document.documentElement.clientWidth;myHeight=document.documentElement.clientHeight;}else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){myWidth=document.body.clientWidth;myHeight=document.body.clientHeight;}
var scrOfX=0,scrOfY=0;if(typeof(window.pageYOffset)=='number'){scrOfY=window.pageYOffset;scrOfX=window.pageXOffset;}else if(document.body&&(document.body.scrollLeft||document.body.scrollTop)){scrOfY=document.body.scrollTop;scrOfX=document.body.scrollLeft;}else if(document.documentElement&&(document.documentElement.scrollLeft||document.documentElement.scrollTop)){scrOfY=document.documentElement.scrollTop;scrOfX=document.documentElement.scrollLeft;}
return new Ext.lib.Region(scrOfY,scrOfX+myWidth,scrOfY+myHeight,scrOfX);},ensureInBounds:function(showObject,forceOnScreen){if(forceOnScreen==null){forceOnScreen=3;}
var showEl=Ext.get(showObject);var objRegion=showEl.getRegion();var win=ASPEN.Window.getSettings();if(!win.contains(objRegion)){if((objRegion.right>win.right)&&(forceOnScreen&1)){showEl.setX(win.right-(objRegion.right-objRegion.left));}
if((objRegion.left<0)&&(forceOnScreen&1)){showEl.setX(showObject,0);}
if((objRegion.bottom>win.bottom)&&(forceOnScreen&2)){showEl.setY(win.bottom-(objRegion.bottom-objRegion.top));}
if((objRegion.top<0)&&(forceOnScreen&2)){showEl.setY(0);}}},isOnScreen:function(theObject){var objRegion=Ext.fly(theObject).getRegion();var win=ASPEN.Window.getSettings();return(win.contains(objRegion));}},Colour:{ConvertToGreyScale:function(c){var r=(c&0xff0000)>>16;var g=(c&0xff00)>>8;var b=c&0xff;return Math.round(r*0.2989+g*0.5866+b*0.1145);}},Dates:{MonthToMMM:function(idx){var months=__trCulture.dateTimeFormat.abbreviatedMonthNames;idx=(idx-1)%12;if(idx<0){idx=12+idx;}
return months[idx];},AddMonths:function(dtm,incMonths){var d=new Date(dtm);d.setMonth(d.getMonth()+incMonths);return d;},MonthsBetween:function(maxDtm,minDtm){var ymMin=minDtm.getMonth()+1+minDtm.getFullYear()*12;var ymMax=maxDtm.getMonth()+1+maxDtm.getFullYear()*12;return ymMax-ymMin;},DaysBetween:function(startDtm,endDtm){return(endDtm-startDtm)/(1000*60*60*24);},Format:function(dtm){return dtm.getDate()+" "+ASPEN.Dates.MonthToMMM(dtm.getMonth()+1)+" "+dtm.getFullYear();},FormatYear:function(dtm){if(dtm.getMonth()>0){return dtm.getFullYear()+"/"+(new String(dtm.getFullYear()+1)).substr(2,2);}else{return dtm.getFullYear();}},FormatPeriod:function(startDtm,endDtm){if(dtm.getMonth()>0){return dtm.getFullYear()+"/"+(new String(dtm.getFullYear()+1)).substr(2,2);}else{return dtm.getFullYear();}},GetMonthInitialsString:function(){var months=__trCulture.dateTimeFormat.abbreviatedMonthNames;var initials=[];for(var i=0;i<months.length;i++){initials.push(months[i].substr(0,1));}
return initials.join("");}},Utils:{ToFloat:function(val,ifNaN){val=parseFloat(val);return isNaN(val)?ifNaN:val;},ToInt:function(val,ifNaN){val=parseInt(val);return isNaN(val)?ifNaN:val;},ToHex:function(d,padToSize){if(!padToSize){padToSize=6;}
var hD="0123456789ABCDEF";var shiftBy=0;var h="";for(var i=0;i<8;i++){h=hD.substr((d>>shiftBy)&0xf,1)+h;shiftBy+=4;}
h=h.substr(h.length-padToSize,padToSize);return h;},IsArray:function(a){return(((typeof a=='object')||(typeof a=='function'))&&a.constructor==Array);},NVL:function(a,b){if(a==null){return b;}else{return a;}},ApplyAttributes:function(el,attributes,obj){for(var idx=0;idx<attributes.length;idx++){var v=attributes[idx];if(el.getAttribute(v)!=null){var spl=v.split("-");for(var i=1;i<spl.length;i++){spl[i]=spl[i].charAt(0).toUpperCase()+spl[i].substr(1);}
var name=spl.join("");obj[name]=el.getAttribute(v);}}},CleanValue:function(val){return new String(val).replace(ASPEN.Locale.getCleanValueRegExp(),"");}}}
document.getElementsByClassName=function(className,parentElement,elementName){var elements=new Array();if(!elementName){elementName="*";}
var re=new RegExp("(^|\\s)"+className+"(\\s|$)");var children=(parentElement?parentElement:document.body).getElementsByTagName(elementName);for(var i=0;i<children.length;i++){if(children[i].className.match(re)){elements.push(children[i]);}}
return elements;}
String.prototype.escapeHTML=function(){return this.replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;').replace(/"/g,'&quot;').replace(/'/g,'&#39;');}