                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         

/*

  Isomorphic SmartClient web presentation layer
  Version 5.2 evaluation (04/10/2005)

  Copyright 2000-2005 Isomorphic Software, Inc. All rights reserved.

  LICENSE NOTICE
     INSTALLATION OR USE OF THIS SOFTWARE INDICATES YOUR ACCEPTANCE OF THE
     SOFTWARE EVALUATION LICENSE AGREEMENT. If you have received this file
     without an Isomorphic Software license file, please see:

         http://www.isomorphic.com/licenses/isc_eval_license_050316.html

     You are not required to accept this agreement, however, nothing else
     grants you the right to copy or use this software. Unauthorized copying
     and use of this software is a violation of international copyright law.

  EVALUATION ONLY
     This software is provided for limited evaluation purposes only. You must
     acquire a deployment license from Isomorphic Software in order to use
     Isomorphic SmartClient, or any portion thereof, in any non-evaluation
     application, including internal or non-commercial applications.

  PROPRIETARY & PROTECTED MATERIAL
     This software contains proprietary materials that are protected by
     contract and intellectual property law. YOU ARE EXPRESSLY PROHIBITED
     FROM ATTEMPTING TO REVERSE ENGINEER THIS SOFTWARE OR MODIFY THIS
     SOFTWARE FOR HUMAN READABILITY.

  CONTACT ISOMORPHIC
     For more information regarding license rights and restrictions, or to
     report possible license violations, please contact Isomorphic Software
     by email (licensing@isomorphic.com) or web (www.isomorphic.com).

*/

if(window.isc==null){var isc={};isc.$dy=new Date().getTime();isc.$dz=window;isc.$d0=window.document;isc.version="5.2 evaluation";isc.buildDate="04/10/2005";if(window.isc_useSimpleNames==null)window.isc_useSimpleNames=true;isc.addGlobal=function(_0,_1){if(_0.indexOf("isc.")==0)_0=_0.substring(4);isc[_0]=_1;if(window.isc_useSimpleNames)window[_0]=_1}
isc.addGlobal("Browser",{isSupported:false});isc.Browser.isOpera=(navigator.appName=="Opera"||navigator.userAgent.indexOf("Opera")!=-1);isc.Browser.isNS=(navigator.appName=="Netscape"&&!isc.Browser.isOpera);isc.Browser.isIE=(navigator.appName=="Microsoft Internet Explorer"&&!isc.Browser.isOpera);isc.Browser.isMSN=(isc.Browser.isIE&&navigator.userAgent.indexOf("MSN")!=-1);isc.Browser.minorVersion=parseFloat(isc.Browser.isIE?navigator.appVersion.substring(navigator.appVersion.indexOf("MSIE")+5):navigator.appVersion);isc.Browser.version=parseInt(isc.Browser.minorVersion);isc.Browser.isNav=isc.Browser.isNS&&isc.Browser.version==4;isc.Browser.isNav4=isc.Browser.isNav;isc.Browser.isIE4=isc.Browser.isIE&&isc.Browser.version==4;isc.Browser.isMoz=navigator.userAgent.indexOf("Gecko/")!=-1;if(isc.Browser.isMoz){isc.Browser.$d1=navigator.userAgent.indexOf("Gecko/")+6;isc.Browser.geckoVersion=parseInt(navigator.userAgent.substring(isc.Browser.$d1,isc.Browser.$d1+8))}
isc.Browser.isFirefox=(isc.Browser.isMoz&&navigator.userAgent.indexOf("Firefox/")!=-1);if(isc.Browser.isFirefox){isc.Browser.firefoxVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox/")+8)}
isc.Browser.isNS6=isc.Browser.isNS&&navigator.userAgent.indexOf("Netscape6")!=-1;isc.Browser.isStrict=(document.compatMode=="CSS1Compat")||isc.Browser.isNS6;isc.Browser.isSafari=navigator.userAgent.indexOf("Safari")!=-1;if(isc.Browser.isSafari){isc.Browser.safariVersion=parseFloat(navigator.userAgent.substring(navigator.userAgent.indexOf("Safari/")+7))}
isc.Browser.isWin=navigator.platform.toLowerCase().indexOf("win")>-1;isc.Browser.isMac=navigator.platform.toLowerCase().indexOf("mac")>-1;isc.Browser.isMacIE=(isc.Browser.isMac&&isc.Browser.isIE);isc.Browser.isUnix=(!isc.Browser.isMac&&!isc.Browser.isWin);isc.Browser.lineFeed=(isc.Browser.isWin?"\r\n":"\r");isc.Browser.$d2=isc.Browser.isNav;isc.Browser.isDOM=(isc.Browser.isMoz||isc.Browser.isSafari||(isc.Browser.isIE&&isc.Browser.version>=5));isc.Browser.isSupported=((isc.Browser.isIE&&isc.Browser.minorVersion>=5.5&&isc.Browser.isWin)||(isc.Browser.isNav&&isc.Browser.minorVersion>=4.5)||isc.Browser.isMoz||isc.Browser.isSafari);isc.noOp=function(){};isc.emptyObject={};isc.emptyString=isc.$d3="";isc.dot=".";isc.semi=";";isc.colon=":";isc.px="px";isc.nbsp="&nbsp;";isc.$d="_";isc.$d4="_$_";isc.addGlobal("addProperties",function(_0){var _1,_2=(isc.isA?isc.isA.Function:isc.noOp),_3=(isc.isAn.Instance(_0)?_0.getClass()._stringMethodRegistry:_0._stringMethodRegistry);if(_3==null)_3=isc.emptyObject;for(var i=1,l=arguments.length;i<l;i++){var _4=arguments[i];if(_4==null)continue;for(var _5 in _4){var _6;if(_2(_4[_5])||_3[_5]!==_6)
{if(_1==null)_1={};_1[_5]=_4[_5]}else if(!(_4[_5]===_0[_5])){_0[_5]=_4[_5]}else{}}}
if(_1!=null)isc.addMethods(_0,_1);return _0});isc.addPropertyList=function(_0,_1){for(var i=0,l=_1.length;i<l;i++){isc.addProperties(_0,_1[i])}
return _0}
isc.addGlobal("addMethods",function(_0,_1){if(!_0||!_1)return _0;if(!isc.$d5)isc.$d5={};var _2=(isc.isA.String?isc.isA.String:isc.noOp);for(var _3 in _1){var _4=_1[_3];if(_2(_4)){var _5=(isc.isAn.Instance(_0)?_0.getClass()._stringMethodRegistry:_0._stringMethodRegistry);var _6;if(_5&&!(_5[_3]===_6)){_4=Function.expressionToFunction(_5[_3],_1[_3])}}
var _7=_0.$d6,_8=(_7!=null&&_7[_3]!=null?isc.$d4+_3:_3);if(_4!==_0[_8]){if(_4!=null){this.$d7(_4,_3,_0)}
_0[_8]=_4;if(_4!=null){if(isc.$d5[_3]){var _9=(_0.$d6!=null&&_0.$d6[isc.$d5[_3]]!=null?isc.$d4+isc.$d5[_3]:isc.$d5[_3]);_0[_9]=_4}}}}
return _0});isc.$d7=function(_0,_1,_2){if(_2.Class==null)return _0.$d8=_1;if(_0.$d8!=null)return;var _3=(_2==isc.isA?"isA":_2.Class);_0.$d9=_2.Class;_0.$d8=_1;if(isc.isAn.Instance!=null&&isc.isAn.Instance(_2)&&_2.$ea!=_2)
{_0.$eb=true;if(_2[_1]!=null)_0.$ec=true}}
isc.addGlobal("getKeys",function(_0){var _1=[];if(_0!=null){for(var _2 in _0){_1[_1.length]=_2}}
return _1});isc.addGlobal("getValues",function(_0){var _1=[];if(_0!=null){for(var _2 in _0){_1[_1.length]=_0[_2]}}
return _1});isc.applyMask=function(_0,_1){var _2={};if(_0==null)return _2;if(_1==null){return isc.addProperties(_2,_0)}
var _3=false;if(!isc.isAn.Array(_0)){_3=true;_0=[_0]}
if(!isc.isAn.Array(_1))_1=isc.getKeys(_1);var _2=[],_4,_5,_6,_7;for(var i=0;i<_0.length;i++){_4=_0[i];_5=_2[i]={};for(var j=0;j<_1.length;j++){_6=_1[j];if(_4[_6]===_7)continue;_5[_6]=_4[_6]}}
return(_3?_2[0]:_2)}
isc.$ed={};isc.$ee=Math.floor;isc.$ef="-";for(var i=0;i<10;i++)isc.$ed[i]=i.toString();isc.$eg=function(_0,_1,_2,_3){var _4=_2+_3-1,_5=_1,_6=false,_7;if(_1<0){_7=true;_1=-_1}
while(_1>9){var _8=this.$ee(_1/ 10),_9=_1-(_8*10);_0[_4--]=this.$ed[_9];_1=_8;if(_4==_2&&_1>9){isc.Log.logWarn("fillNumber: number too large: "+_5+isc.Log.getStackTrace());_6=true;break}}
if(_6){_4=_2+_3-1
_0[_4--]=_5}else{_0[_4--]=this.$ed[_1];if(_7)_0[_4--]=this.$ef}
for(var i=_4;i>=_2;i--){_0[i]=null}}
isc.addGlobal("isA",{});isc.addGlobal("isAn",isc.isA);isc.addGlobal("is",isc.isA);isc.isA.Class="isA";isc.isA.isc=isc.isA;Function.$eh=1;Array.$eh=2;Date.$eh=3;String.$eh=4;Number.$eh=5;Boolean.$eh=6;RegExp.$eh=7;Object.$eh=8;isc.addMethods(isc.isA,{emptyString:function(_0){return isc.isA.String(_0)&&_0==isc.emptyString},nonemptyString:function(_0){return isc.isA.String(_0)&&_0!=isc.emptyString},Object:function(_0){if(_0==null)return false;if(_0.constructor&&_0.constructor.$eh!=null){var _1=_0.constructor.$eh;return(_1==8||_1==7||_1==3||_1==2)}
if(typeof _0=="object"){if(isc.Browser.isIE&&isc.isA.Function(_0))return false;else return true}else{if(isc.Browser.isMoz&&isc.isA.RegularExpression(_0))return true;else return false}},emptyObject:function(_0){if(!isc.isAn.Object(_0))return false;for(var i in _0){return false}
return true},String:function(_0){if(_0==null)return false;if(_0.constructor&&_0.constructor.$eh!=null){return _0.constructor.$eh==4}
return typeof _0=="string"},Array:function(_0){if(_0==null)return false;if(_0.constructor&&_0.constructor.$eh!=null){return _0.constructor.$eh==2}
if(isc.Browser.isSafari)return""+_0.splice=="(Internal function)";return""+_0.constructor==""+Array},Function:function(_0){if(_0==null)return false;if(_0.constructor&&_0.constructor.$eh!=null){return _0.constructor.$eh==1}
return isc.Browser.isIE?(""+_0.constructor==""+Function):(typeof _0=="function")},Number:function(_0){if(_0==null)return false;if(_0.constructor&&_0.constructor.$eh!=null){if(_0.constructor.$eh!=5)return false}else{if(typeof _0!="number")return false}
return!isNaN(_0)&&_0!=Number.POSITIVE_INFINITY&&_0!=Number.NEGATIVE_INFINITY},Boolean:function(_0){if(_0==null)return false;if(_0.constructor&&_0.constructor.$eh!=null){return _0.constructor.$eh==6}
return typeof _0=="boolean"},Date:function(_0){if(_0==null)return false;if(_0.constructor&&_0.constructor.$eh!=null){return _0.constructor.$eh==3}
return(""+_0.constructor)==(""+Date)&&_0.getDate&&isc.isA.Number(_0.getDate())},RegularExpression:function(_0){if(_0==null)return false;if(_0.constructor&&_0.constructor.$eh!=null){return _0.constructor.$eh==7}
return(""+_0.constructor)==(""+RegExp)},$ei:"text/xml",XMLNode:function(_0){if(_0==null)return false;var _1=_0.ownerDocument;if(_1==null)return false;if(isc.Browser.isIE){return _1.validateOnParse!=null}
return _1.contentType==this.$ei},AlphaChar:function(_0){var _1=_0.charCodeAt(0)
return((_1>=65&&_1<=90)||(_1>=97&&_1<=122))},NumChar:function(_0){var _1=_0.charCodeAt(0)
return(_1>=48&&_1<=57)},AlphaNumericChar:function(_0){return(isc.isA.AlphaChar(_0)||isc.isA.NumChar(_0))},WhitespaceChar:function(_0){var _1=_0.charCodeAt(0)
return(_1>=0&&_1<=32)},SelectItem:function(_0){if(!_0||!isc.isA.FormItem(_0))return false;var _1=_0.getClass();return(_1==isc.SelectItem||_1==isc.NativeSelectItem)},SelectItem:function(_0){if(!_0||!isc.isA.FormItem(_0))return false;var _1=_0.getClass();return((_1==isc.SelectItem||_1==isc.NativeSelectItem)&&_0.isSelectOther)}});isc.addGlobal("ClassFactory",{});isc.ClassFactory.Class="ClassFactory";isc.addMethods(isc.isA,{Instance:function(_0){return(_0!=null&&_0.$ea!=null)},ClassObject:function(_0){return(_0!=null&&_0.$ej==true)},Interface:function(_0){return(_0!=null&&_0.$ek==true)}});isc.addMethods(isc.ClassFactory,{defineClass:function(_0,_1,_2){return this.$el(_0,_1,_2)},defineInterface:function(_0,_1){return this.$el(_0,_1,null,true)},defineRootClass:function(_0){return this.$em(_0,null)},$el:function(_0,_1,_2,_3){_1=(_1||isc.ClassFactory.defaultSuperClass);if(!_1){isc.Log.logWarn("isc.ClassFactory.defineClass("+_0+") called with null"+" superClass and no ClassFactory.defaultRootClass is defined.");return null}
return this.$em(_0,_1,_2,_3)},$em:function(_0,_1,_2,_3){if(_0.indexOf("isc.")==0){_0=_0.substring(4)}
var _4=(isc.Browser.isMoz&&(_0=="Window"||_0=="Selection"));var _5,_6;_5=window.isc[_0];if(_5!=null)_6=true
else if(window.isc_useSimpleNames&&!_4){_5=window[_0]}
if(_5!=null){var _7="New Class ID: '"+_0+"' collides with ID of existing "+(isc.isA.Class(_5)?"Class object '":"object with value '")+_5+"'.  Existing object will be replaced.";if(!_6)_7+="\nThis conflict would be avoided by disabling "+"ISC Simple Names mode.  See documentation for "+"further information."
if(window.isc.Log)isc.Log.logWarn(_7)}
_1=this.getClass(_1);var _8=(_1?new _1.$en.$eo():{});var _9=this.$ep(_1);_8.$eo=this.$eq(_8);_9.Class=_0;_9.$ej=true;_9.$ek=_3;_9.$er=_1;_9.$en=_8;_8.Class=_0;_8.$es=_9;_8.$ea=_8;window.isc[_0]=_9;if(window.isc_useSimpleNames)window[_0]=_9;this.classList[this.classList.length]=_0
var _10=this.$et;_10[1]=_0;isc.isA[_0]=new Function(this.$eu,_10.join(isc.$d3));if(_2!=null){if(!isc.isAn.Array(_2))_2=[_2];for(var i=0;i<_2.length;i++){this.mixInInterface(_0,_2[i])}}
return _9},$eu:"object",$et:["if(object==null||object.isA==null||object.isA==isc.isA)return false;return object.isA('",null,"')"],$ep:function(_0){if(!_0)return{};var _1=_0.$er,_2=_0.$ev;if(!
(_2&&(_1==null||_2!==_1.$ev)))
{_2=_0.$ev=this.$eq(_0)}
return new _2()},getClass:function(_0){if(isc.isA.ClassObject(_0))return _0;if(isc.isAn.Instance(_0))return _0.$es;if(isc.isA.String(_0)){if(_0.indexOf("isc.")==0)_0=_0.substring(4);if(this.ns[_0]&&isc.isA.ClassObject(this.ns[_0])){return this.ns[_0]}}
return null},newInstance:function(_0,_1,_2,_3){var _4=this.getClass(_0);if(_4==null&&isc.isAn.Object(_0)){var _5;for(var i=0;i<arguments.length;i++){var _6=arguments[i];if(_6!=null&&_6._constructor!=null)
{_5=_6._constructor}}
_3=_2;_2=_1;_1=_0;_0=_5;if(isc.isA.String(_1.constructor)){if(_0==null)_0=_1.constructor;isc.Log.logWarn("ClassFactory.newInstance() passed an object with illegal 'constructor' "+"property - removing this property from the final object. "+"To avoid seeing this message in the future, "+"specify the object's class using '_constructor'.","ClassFactory");_1.constructor=null}
_4=this.getClass(_5)}
if(_4==null){isc.Log.logWarn("newInstance("+_0+"): class not found","ClassFactory");return null}
return _4.newInstance(_1,_2,_3)},$eq:function(_0){var _1=(isc.Browser.isSafari?function(){}:new Function());_1.prototype=_0;return _1},addGlobalID:function(_0,ID){_0.ID=ID||_0.ID||this.getNextGlobalID(_0);var _1=this.getWindow();if(_1[_0.ID]!=null){var _2=isc.isA.Canvas(_1[_0.ID]);isc.Log.logWarn("ClassFactory.addGlobalID: ID:'"+_0.ID+"' for object '"+_0+"' collides with ID of existing object '"+_1[_0.ID]+"'."+(_2?" The pre-existing widget will be destroyed.":" The global reference to this object will be replaced"));if(_2)_1[_0.ID].destroy()}
_1[_0.ID]=_0},_$isc_OID_:"isc_OID_",_$isc_:"isc_",_$_ID_:"_ID_",$ew:[],getNextGlobalID:function(_0){if(_0!=null&&isc.isA.String(_0.Class)){var _1=this.$ew;_1[0]=this._$isc_;_1[1]=_0.Class;_1[2]=this._$_ID_;isc.$eg(_1,this.$ex++,3,4);var _2=_1.join(isc.emptyString);return _2}
return this._$isc_OID_+this.$ex++},mixInInterface:function(_0,_1){var _2=this.getClass(_1),_3=this.getClass(_0);if(!_2||!_3)return null;if(!_2.$ek){isc.Log.logWarn("ClassFactory.mixInInterface asked to mixin a class which was not"+" declared as an Interface - proceeding, but may fail")}
this.$ey(_2,_3,true);this.$ey(_2,_3);if(!_3.$ez)_3.$ez=[];_3.$ez[_3.$ez.length]=_1},$ey:function(_0,_1,_2){if(!_2){_0=_0.getPrototype();_1=_1.getPrototype()}
var _3={};for(var _4 in _0){if(_1[_4]!=null)continue;var _5=_0[_4];if(isc.isA.String(_5)&&_5==this.TARGET_IMPLEMENTS){var _6=(_2?"Class":"Instance")+" method "+_4+" of Interface "+_0.Class+" must be implemented by "+"class "+_1.Class;isc.Log.logInfo(_6+", is not yet implemented");_3[_4]=new Function('this.logError("'+_6+'")')}else{_3[_4]=_5}}
isc.addMethods(_1,_3)},makePassthroughMethods:function(_0,_1,_2){if(!_1)_1="parentElement";var _3={};for(var i=0;i<_0.length;i++){var _4=_0[i],_5=_2.getArgString(_4);_3[_4]=new Function(_5,"return this."+_1+"."+_4+"("+_5+")")}
return _3},writePassthroughFunctions:function(_0,_1,_2,_3){var _4=this.makePassthroughMethods(_3,_2,_0);_1.addMethods(_4)}});isc.addProperties(isc.ClassFactory,{TARGET_IMPLEMENTS:"TARGET_IMPLEMENTS",$ex:0,classList:[]});isc.ClassFactory.defineRootClass('Class');isc.ClassFactory.defaultSuperClass=isc.Class;isc.addMethods(isc.Class,{addClassMethods:function(){for(var i=0;i<arguments.length;i++)
isc.addMethods(this,arguments[i])},addProtoMethods:function(_0,_1,_2){var _3=0;var _4={};for(var _5 in _2){if(!isc.$d5[_5]){var _6=_0+_3++;isc.$d5[_5]=_6}}
if(_1)this.addClassMethods(_2);else this.addMethods(_2)}});isc.Class.addClassMethods({create:function(A,B,C,D,E,F,G,H,I,J,K,L,M){var _0=new this.$en.$eo();_0.ns=this.ns;_0.init(A,B,C,D,E,F,G,H,I,J,K,L,M);return _0},getClassName:function(){return this.Class},getSuperClass:function(){return this.$er},getPrototype:function(){return this.$en},addMethods:function(){for(var i=0;i<arguments.length;i++)
isc.addMethods(this.$en,arguments[i])},registerStringMethods:function(_0,_1){var _2={};if(!isc.isA.String(_0)){if(!isc.isAn.Object(_0)){this.logWarn("registerStringMethods() called with a bad argument");return false}
for(var i in _0){_2[i]=_0[i]}}else{if(_1==null)_1=null;_2[_0]=_1}
if(!this.isOverridden("_stringMethodRegistry")){var _3={};for(var i in this._stringMethodRegistry){_3[i]=this._stringMethodRegistry[i]}
this._stringMethodRegistry=_3}
for(var i in _2){this._stringMethodRegistry[i]=_2[i]}
return true},evaluate:function(_0){return eval(_0)},addClassProperties:function(){isc.addPropertyList(this,arguments)},addProperties:function(){isc.addPropertyList(this.$en,arguments)},addPropertyList:function(_0){isc.addPropertyList(this.$en,_0)},setProperties:function(){var _0;if(arguments.length==1){_0=arguments[0]}else{_0={};for(var i=0;i<arguments.length;i++){isc.addProperties(_0,arguments[i])}}
this.$en.setProperties(_0)},isOverridden:function(_0){return(!(this[_0]===this.$er[_0]))},isA:function(_0){if(_0.startsWith("isc."))_0=_0.substring(4);var _1=this;while(_1){if(_1.Class==_0)return true;_1=_1.$er}
if(this.$ez&&this.$ez.contains(_0))return true;return false},$e0:function(_0,_1,_2){var _3="_indirect_"+_2,_4;for(;;){if(_1==null){_4=null;break}
var _4=_1[_3]||_1[_2];if(_4==null)break;if(_0!=_4)break;_1=_1.$es.$er.$en}
if(_4!=null)return _1;return null},Super:function(_0,_1){if(_1!=null&&(_1.length==null||isc.isA.String(_1)))_1=[_1];if(_1==null)_1=[];var _2="_"+_0+"$e1",_3=this[_2],_4=_3?_3[_3.length-1]:null;var _5,_6,_7=false;if(_4==null){_5=this[_0];_6=this.getPrototype()}else{_5=_4[_0];_6=_4.$es.$er.$en;if(_1.callee!=null&&_1.callee!=_5){_7=true;_5=this[_0];_6=this.getPrototype()}}
_6=isc.Class.$e0(_5,_6,_0);if(_6==null){if(isc.Log)isc.Log.logWarn("Call to Super for method: "+_0+" failed on: "+this+": couldn't find a superclass implementation of : "+(_4?_4.Class:this.Class)+"."+_0+this.getStackTrace());return null}
var _8="_indirect_"+_0,_9=_6[_8]||_6[_0];var _10=_7||_3==null;if(_7){_3.add(_6)}else{if(_3==null)this[_2]=_3=[];_3[_3.length]=_6}
if(_1){var _11=_9.apply(this,_1)}else{var _11=_9.apply(this)}
if(_10){_3.length=_3.length-1;if(_3.length==0)delete this[_2]}
return _11},map:function(_0,_1,_2,_3,_4,_5,_6){if(_0==null)return _1;var _7=[];for(var i=0;i<_1.length;i++){_7.add(this[_0](_1[i],_2,_3,_4,_5,_6))}
return _7},getInstanceProperty:function(_0){var _1=this.$en[_0];return _1},setInstanceProperty:function(_0,_1){this.$en[_0]=_1},getArgString:function(_0){var _1=this._stringMethodRegistry[_0];if(_1!=null)return _1;var _2=this.getInstanceProperty(_0);if(_2==null)return"";return _2.getArgs().join(",")},fireCallback:function(_0,_1,_2,_3){if(isc.isAn.Object(_0)&&_0.methodName){_3=_0.caller||_0.target;if(_3!=null)_0=_3[_0.methodName]}else if(isc.isA.String(_0)){if(_3!=null&&isc.isA.Function(_3[_0]))_0=_3[_0];else _0=Function.expressionToFunction(_1,_0)}
if(!isc.isA.Function(_0)){this.logWarn("fireCallback() unable to convert callback:"+_0+" to a function.");return}
if(_3==null)_3=window;if(_2==null)_2=[];var _4=_0.apply(_3,_2);return _4},$e2:function(_0,_1,_2){_2.$e3-=1;if(_2.$e3)return;var _3=false;for(var i=0;i<_2.length;i++){if(_2[i].$e4){_3=true;_2.removeItem(i);i--;continue}
if(_2[i].$e5){delete _2[i].$e5;_3=true}}
if(_3){if(_2.length==0){var _4=isc.$d4+_1;_0[_1]=_0[_4];delete _0[_4]}else{_0[_1]=_0.$e6(_1,_2)}}},getWindow:function(){return this.ns.$dz},getDocument:function(){return this.ns.$d0},getDocumentBody:function(){var _0=this.ns.$e7;if(_0!=null)return _0;var _1=this.getDocument();_0=this.ns.$e7=isc.Browser.isIE&&isc.Browser.isStrict?_1.documentElement:_1.body;return _0}});isc.Class.addClassMethods({newInstance:isc.Class.create});isc.Class.ns=isc;isc.addProperties(isc.ClassFactory,{ns:isc,getWindow:isc.Class.getWindow,getDocument:isc.Class.getDocument});isc.Class.addMethods({init:function(){},getUniqueProperties:function(_0){if(_0==null)_0={};var _1=this.getPrototype();for(var _2 in this){if(_2.startsWith("_"))continue;if(_2=="ID"&&this.ID.startsWith("isc_OID_"))continue;var _3=this[_2];if(isc.isA.Function(_3))continue;if(_3!=_1[_2]){_0[_2]=this[_2]}}
return _0},clone:function(){return this.getClass().create(this.getUniqueProperties())},serialize:function(_0,_1,_2){return isc.Comm.serialize(this,_0,null,_1,_2)},xmlSerialize:function(_0,_1,_2){return isc.Comm.xmlSerialize(this.getClassName(),this,_0,null,_1,_2)},getSerializeableFields:function(_0,_1){var _2;var _3=isc.DataSource.getDataSource(this.getClassName());var _4=this;var _5=null;while(_3==null&&(_4=_4.getSuperClass())!=null&&_4!=_5){var _3=isc.DataSource.getDataSource(_4.getClassName());_5=_4}
if(_3==null){this.logDebug("No datasource available for class"+this.getClassName());return{}}else{this.logDebug("Constaining serializeable fields for class: "+this.getClassName+" with datasource: "+_3.name)}
var _6=this.getUniqueProperties({Constructor:this.getClassName()});if(_3)_6=isc.applyMask(_6,_3.getFields());_0.map(function(_8){delete _6[_8]});for(var i=0;i<_1.length;i++)_6[_1[i]]=this[_1[i]];return _6},getID:function(){return this.ID},getClass:function(){return this.$es},getSuperClass:function(){return this.$es.$er},getClassName:function(){return this.getClass().getClassName()},getPrototype:function(){return this.$ea},getGlobalReference:function(_0){if(typeof _0=="string")return eval(_0);return _0},addMethods:function(){for(var i=0;i<arguments.length;i++){isc.addMethods(this,arguments[i])}},addProperties:function(){isc.addPropertyList(this,arguments)},addPropertyList:function(_0){isc.addPropertyList(this,_0)},$e8:function(_0){var _1="set"+_0.substring(0,1).toUpperCase()+_0.substring(1);return(this[_1]&&isc.isA.Function(this[_1])?_1:null)},$e9:function(_0){var _1="get"+_0.substring(0,1).toUpperCase()+_0.substring(1);return(this[_1]&&isc.isA.Function(this[_1])?_1:null)},setProperty:function(_0,_1){var _2={};_2[_0]=_1;this.setProperties(_2)},setProperties:function(){var _0=isc.isA,_1,_2={};if(arguments.length<1)return;if(arguments.length==1){_1=arguments[0];if(_1==null)return}else{_1={};for(var i=0;i<arguments.length;i++){isc.addProperties(_1,arguments[i])}}
for(var _3 in _1){var _4=_1[_3],_5=this.$e8(_3);if(_5){this[_5](_4)}else{_2[_3]=_4}}
this.addProperties(_2)},isA:function(_0){return this.getClass().isA(_0)},observe:function(_0,_1,_2){if(_0==null){this.logWarn("Invalid observation: Target is not an object.  target: "+_0+", methodName: "+_1+", action: '"+_2+"'");return false}
if(!Function.convertToMethod(_0,_1)){this.logWarn("Invalid observation: property: '"+_1+"' is not a method on "+_0);return false}
var _3=isc.$d5[_1];if(_0[_3])this.observe(_0,_3,_2)
var _4=_0[_1],_5=_4.getArgs(),_6=_5.join(",");if(!_0.$d6)_0.$d6={};if(!_0.$d6[_1]){var _7=_0.$d6[_1]=[];if(_5.length>0){_7.argStr=_6}}else{var _7=_0.$d6[_1];for(var i=0,_8=_7.length;i<_8;i++){if(_7[i].target==this){this.logWarn("Observer: "+this+" is already observing method '"+_1+"' on object '"+_0+"', ignoring");return false}}}
if(_2==null||isc.is.emptyString(_2)){if(!this[_1]||!this.convertToMethod(_1)){this.logWarn("Invalid Observation - no action specified, and observer: "+this+" has no method '"+_1+"', ignoring");return false}
_2="it."+_1+"("+_6+")"}
var _9=_7.$e3;_7.add({target:this,action:_2,$e5:_9});var _10=isc.$d4+_1;if(!_0[_10])_0[_10]=_4;if(!_9)_0[_1]=this.$e6(_1,_7);return true},$e6:function(_0,_1){var _2=isc.StringBuffer.create();_2.append("arguments.$fa=this;","var queue=this.$d6.",_0,";\r","queue.$e3=queue.$e3?queue.$e3+1:1;\r","var returnVal=this.",isc.$d4,_0,"(",(_1.argStr?_1.argStr:""),"),\r","observed=this,observer,it;\r");for(var i=0,_3=_1.length;i<_3;i++){_2.append("if(!queue)return;\r");_2.append("observer=it=queue[",i,"].target;\r");if(isc.isA.String(_1[i].action))_2.append(_1[i].action,";\r");if(isc.isA.Function(_1[i].action)){_2.append("queue[",i,"].action.apply(it, ",(_1.argStr?"'"+_1.argStr+"'":"null"),");\r")}}
if(isc.Browser.isSafari){_2.append("arguments.callee.$fb.Class.$e2(this,'",_0,"',queue);\r")}else{_2.append("isc.Class.$e2(this,'",_0,"',queue);\r")}
_2.append("return returnVal;\r");var _4=(_1.argStr?new Function(_1.argStr,_2):new Function(_2));_4.$fc=_0+"Observation";if(isc.Browser.isSafari)_4.$fb=isc;return _4},ignore:function(_0,_1){var _2=isc.$d5[_1];if(_0[_2])this.ignore(_0,_2);var _3=isc.$d4+_1;if(!_0[_3]||!_0.$d6)return false;var _4=_0.$d6[_1],_5=_4.$e3;for(var i=0,_6=_4.length;i<_6;i++){if(_4[i].target==this){if(_5)
_4[i].$e4=true;else
_4.removeItem(i);break}}
if(_4.length==0){_0[_1]=_0[_3];delete _0[_3]}else{if(!_5){_0[_1]=this.$e6(_1,_4)}}
return true},getObserversOf:function(_0){if(!this.$d6||!this.$d6[_0])return null;var _1=this.$d6[_0];for(var _2=[],i=0;i<_1.length;i++){_2[i]=(_1[i]?_1[i].target:null)}
return _2},isObserving:function(_0,_1){if(!_0.$d6)return false;var _2=_0.$d6[_1];if(!_2)return false;for(var i=0;i<_2.length;i++){if(_2[i].target==this)return true}
return false},convertToMethod:function(_0){return Function.convertToMethod(this,_0)},fireCallback:function(_0,_1,_2){return isc.Class.fireCallback(_0,_1,_2,this)},getWindow:function(){return this.ns.$dz},getDocument:function(){return this.ns.$d0},getDocumentBody:function(){var _0=this.ns.$e7;if(_0!=null)return _0;var _1=this.getDocument();_0=this.ns.$e7=isc.Browser.isIE&&isc.Browser.isStrict?_1.documentElement:_1.body;return _0},map:isc.Class.map,Super:isc.Class.Super});isc.Class.toString=function(){return"[Class "+this.Class+"]"}
isc.Class.getPrototype().toString=function(){return"["+this.Class+" ID:"+this.ID+"]"}
isc.Class.addClassProperties({$a7:null,ns:isc,NO_OP:function(){},_stringMethodRegistry:{}});isc.addMethods(isc.ClassFactory,{observe:isc.Class.getPrototype().observe,ignore:isc.Class.getPrototype().ignore,$e6:isc.Class.getPrototype().$e6});Function.prototype.Class="Function";isc.addMethods(Function.prototype,{getName:function(){if(this.$fc==null){if(this.$d8!=null){this.$fc=(this.$eb?(this.$ec?"[o]":"[a]"):isc.$d3)+(this.$d9?this.$d9+isc.dot:isc.$d3)+this.$d8}else{var _0=this.$fd.exec(this.toString());if(_0)this.$fc=_0[1];else this.$fc="anonymous"}}
return this.$fc},getArgs:function(){var _0=this.toString(),_1=_0.substring(_0.indexOf("(")+1,_0.indexOf(")"));if(_1=="")return[];return _1.split(",")},getBody:function(){var _0=this.toString();return _0.substring(_0.indexOf("{")+1,_0.lastIndexOf("}"))},getShortBody:function(){var _0=this.toString();return _0.substring(_0.indexOf("{")+1,_0.lastIndexOf("}")).replace(/[\r\n\t]*/g,"")}});Function.prototype.$fd=new RegExp("function\\s+([\\w$]+)\\s*\\(");if(isc.Browser.isSafari||!Function.prototype.apply){isc.addMethods(Function.prototype,{apply:function(targetObject,args){var tempFunctionName="__TEMPF_"+Function.prototype.$fe++;var returnValue;targetObject[tempFunctionName]=this;if(!args)args=[];if(args.length<=10){returnValue=targetObject[tempFunctionName](args[0],args[1],args[2],args[3],args[4],args[5],args[6],args[7],args[8],args[9])}else{var functionString='targetObject[tempFunctionName](';for(var i=0;i<args.length;i++){functionString+="args"+'['+i+']';if(i+1<args.length){functionString+=','}}
functionString+=');';eval('returnValue ='+functionString)}
delete targetObject[tempFunctionName];return returnValue}});Function.prototype.$fe=0}
else if(isc.Browser.isIE&&isc.Browser.minorVersion<5.5){Function.prototype.$ff=Function.prototype.apply;isc.addMethods(Function.prototype,{apply:function(_0,_1){if(!_1)_1=[];return this.$ff(_0,_1)}})}
isc.addProperties(Function,{$fg:[["//","\n"],["//","\\n"],["/*","*/"]],$fh:["\"","\'"],$fi:["switch","while","if","return","for","var"],$fj:["(",")","[","]","{","}",":","?","!","+","-","/","*","=",">","<","|","&",",","\\"]});isc.addMethods(Function,{expressionToFunction:function(_0,_1,_2){if(_1==null){isc.Log.logInfo("makeFunctionExpression() called with empty expression");_1=""}
var _3="swirfv";if(isc.isAn.Array(_0)){_0=_0.join()}
var _4=true;var i=0;var _5=this.$fg;var _6=this.$fh;var _7=this.$fi;var _8=this.$fj;var _9=false;var _10="",_11="/",_12="\n",_13="\\",_14="+",_15=";";var _16=_10;var _17=_10;while(i<_1.length){var _18=_1.charAt(i);if(_18==_11){for(var j=0;j<_5.length;j++){var _19=_5[j],_20=_19[0],_21=_19[1];if(_1.indexOf(_20,i)==i){var k=i+_20.length;while(k<_1.length){if(_1.substring(k,k+_21.length)==_21){k=k+_21.length;break}
k++}
i=k;_16=_10;_17=this.$fk(_1,i)}}}
if(_9){if(_17==_10){break}else{if(isc.isA.WhitespaceChar(_18)){i++;continue}else{_4=false;break}}}
for(var j=0;j<_6.length;j++){var _22=_6[j]
if(_18==_22){var k=i+1;while(k<_1.length){if(_1.charAt(k)==_13)k=k+2;if(_1.charAt(k)==_22){k++;break}
k++}
i=k;_16=_22.charAt(0);_17=this.$fk(_1,i)}}
if(_18==_12){var _23=false;for(var j=0;j<_8.length;j++){if(_16==_8[j]){_23=true;break}}
if(_23||_17==_14){_16=_10}else{_4=false;break}}
if(_18==_15){_9=true}
if(_3.indexOf(_18)!=-1){for(var j=0;j<_7.length;j++){var _24=_7[j],_25=_24.length;if((i+_25<=_1.length)&&(_1.substring(i,i+_25)==_24)&&(i+_25==_1.length||!isc.isA.AlphaNumericChar(_1.charAt(i+_25)))&&(i==0||!isc.isA.AlphaNumericChar(_1.charAt(i-1)))){_4=false;break}}}
if(!isc.isA.WhitespaceChar(_18))_16=_18;i++;_17=this.$fk(_1,i)}
if(_4){_1="return "+_1}
if(_2)_1="//"+_2+"\r\n"+_1;var _26=_0?new Function(_0,_1):new Function(_1);return _26},$fk:function(_0,_1){var _2="";for(var j=(_1+1);j<_0.length;j++){if(!isc.isA.WhitespaceChar(_0.charAt(j))){_2=_0.charAt(j);break}}
if(j>=_0.length)_2="";return _2},convertToMethod:function(_0,_1){if(!isc.isAn.Object(_0)||!isc.isA.nonemptyString(_1)){isc.Log.logWarn("convertToMethod() called with bad parameters.  Cannot convert "+" property '"+_1+"' on object "+_0+" to a function.  Returning false.");return false}
if(_0[_1]&&isc.isA.Function(_0[_1]))return true;var _2=(isc.isAn.Instance(_0)?_0.getClass()._stringMethodRegistry:_0._stringMethodRegistry);if(_2==null){return false}
var _3;var _4=_2[_1];if(_4===_3)return false;Function.replaceStringWithMethod(_0,_1,_4);return true},replaceStringWithMethod:function(_0,_1,_2,_3){if(_0[_1]==null){_0[_1]=isc.is.emptyString(_2)?isc.Class.NO_OP:new Function(_2,"")}
var _4=_0[_1];if(isc.isA.Function(_4))return;var _5;if(!isc.isA.String(_4)){isc.Log.logWarn("Property '"+_1+"' on object "+_0+" is of type "+typeof _4+".  This can not be converted to a method.","Function");return}else{_5=Function.expressionToFunction(_2,_4,_3)}
var _6={};_6[_1]=_5;isc.addMethods(_0,_6)}});Array.prototype.Class="Array";Array.newInstance=function(){var _0=[];isc.addPropertyList(_0,arguments);return _0}
Array.LOADING="loading";Array.isLoading=function(_0){return _0!=null&&!isc.isAn.XMLNode(_0)&&_0==Array.LOADING}
isc.addMethods(Array.prototype,{getPrototype:function(){return Array.prototype},newInstance:Array.newInstance,get:function(_0){return this[_0]},getLength:function(){return this.length},isEmpty:function(){return this.getLength()==0},first:function(){return this[0]},last:function(){return this[this.length-1]},indexOf:function(_0,_1,_2){if(_1==null)_1=0;if(_2==null)_2=this.length-1;for(var i=_1;i<=_2;i++)
if(this[i]==_0)return i;return-1},lastIndexOf:function(_0,_1,_2){if(_1==null)_1=this.length-1;if(_2==null)_2=0;for(var i=_1;i>=_2;i--)
if(this[i]==_0)return i;return-1},contains:function(_0,_1){return(this.indexOf(_0,_1)!=-1)},containsAll:function(_0){if(_0==null)return true;var _1=_0.getLength();for(var i=0;i<_1;i++){if(!this.contains(_0.get(i)))return false}
return true},intersect:function(){var _0=[];for(var i=0;i<this.length;i++){var _1=this.get(i),_2=true;if(_1==null)continue;for(var a=0;a<arguments.length;a++){if(!arguments[a].contains(_1)){_2=false;break}}
if(_2)_0.add(_1)}
return _0},equals:function(_0){if(_0==null||!isc.isA.List(_0))return false;var _1=_0.getLength();if(_1!=this.getLength())return false;for(var i=0;i<_1;i++){if(_0.get(i)!=this.get(i))return false}
return true},getItems:function(_0){var _1=[],_2=_0.getLength();for(var i=0;i<_2;i++){_1[i]=this.get(_0.get(i))}
return _1},getRange:function(_0,_1){if(_1==null)_1=this.length-1;return this.slice(_0,_1)},duplicate:function(){return[].concat(this)},set:function(_0,_1){this[_0]=_1;this.dataChanged()},addAt:function(_0,_1){this.addListAt([_0],_1);return _0},removeAt:function(_0){var _1=this.length;if(_0>=_1||_0<0)return null;var _2=this[_0];for(;_0<_1-1;_0++)
this[_0]=this[_0+1];this.length--;this.dataChanged();return _2},add:function(_0,_1){var _2;if(_1!==_2){return this.addAt(_0,_1)}
var _3;if(this.sortUnique){_3=this.indexOf(_0);if(_3==-1)_3=this.length}else{_3=this.length}
this[_3]=_0;if(this.sortProp){this.sortByProperty(this.sortProp,this.sortDirection)}
this.dataChanged();return _0},addList:function(_0,_1,_2){if(_0==null)return null;this.$fl();if(_1==null)_1=0;if(_2==null)_2=_0.getLength();for(var _3=_1;_3<_2;_3++){this.add(_0.get(_3))}
this.$fm();return _0},setLength:function(_0){this.length=_0},addListAt:function(_0,_1){for(var _2=[],i=0,l;i<_1;i++)
_2[i]=this[i];for(i=0,l=_0.length;i<l;i++)
_2[_2.length]=_0[i];for(i=_1,l=this.length;i<l;i++)
_2[_2.length]=this[i];this.setArray(_2);return _0},remove:function(_0){if(isc.isA.Number(_0)){return this.removeAt(_0)}
return this.removeList([_0])[0]},removeList:function(_0){for(var _1=[],i=0,l=this.length;i<l;i++){if(!_0.contains(this[i]))_1.add(this[i])}
this.setArray(_1);return _0},dataChanged:function(){},$fl:function(){var _0;if(this.$fn===_0)this.$fn=0;this.$fn++},$fm:function(){if(--this.dataChangeFlag==0)this.dataChanged()},setArray:function(){var _0=0,_1=0,_2=null;for(var _3=0;_3<arguments.length;_3++){_2=arguments[_3];if(_2==null||_2.length==0)continue;for(var i=0;i<_2.length;i++){this[_0++]=_2[i]}
_1+=_2.length}
this.setLength(_1);this.dataChanged()},addAsList:function(_0){if(!isc.isAn.Array(_0))_0=[_0];return this.addList(_0)},removeRange:function(_0,_1){var _2;if(_0===_2)return this;if(!isc.isA.Number(_0))_0=0;if(!isc.isA.Number(_1))_1=this.length;return this.splice(_0,_1-_0)},removeWhere:function(_0,_1){for(var i=0,_2=[];i<this.length;i++){if(!this[i]||this[i][_0]!=_1){_2.add(this[i])}}
this.setArray(_2)},removeEmpty:function(_0,_1){for(var i=0,_2=[];i<this.length;i++){if(this[i]!=null){_2.add(this[i])}}
this.setArray(_2)},getProperty:function(_0){for(var _1=[],i=0,l=this.length;i<l;i++)
_1[_1.length]=(this[i]?this[i][_0]:null);return _1},map:function(_0,_1,_2,_3,_4,_5){var _6=isc.isA.Function(_0),_7=[],_8=this.getLength();for(var i=0;i<_8;i++){var _9=this.get(i);if(_6){_7[i]=_0(_9,_1,_2,_3,_4,_5)}else{_7[i]=(_9&&_9[_0]!=null?_9[_0](_1,_2,_3,_4,_5):null)}}
return _7},setProperty:function(_0,_1){for(var i=0,l=this.length;i<l;i++)
if(this[i])this[i][_0]=_1},clearProperty:function(_0){for(var i=0,l=this.length;i<l;i++)
if(this[i])delete this[i][_0]},getProperties:function(_0){return isc.applyMask(this,_0)},getUniqueItems:function(){for(var _0=[],i=0,l=this.length;i<l;i++){if(!_0.contains(this[i]))_0[_0.length]=this[i]}
return _0},slice:(Array.prototype.slice?Array.prototype.slice:function(_0,_1){if(_1==null)_1=this.length;for(var _2=[],l=this.length;_0<_1&&_0<l;_0++)
_2[_2.length]=this[_0];return _2}),findIndex:function(_0,_1){return this.findNextIndex(0,_0,_1)},findNextIndex:function(_0,_1,_2,_3){if(_0==null)_0=0;else if(_0>=this.length)return-1;if(_3==null)_3=this.length-1;if(_1==null)return-1;if(isc.isA.String(_1)){for(var i=_0;i<=_3;i++){if(this[i]&&this[i][_1]==_2)return i}}else{var _4=_1,_5=isc.getKeys(_4);for(var i=_0;i<=_3;i++){var _6=this[i];if(!_6)continue;var _7=true;for(var j=0;j<_5.length;j++){var _8=_5[j];if(_6[_8]!=_4[_8]){_7=false;break}}
if(_7)return i}}
return-1},find:function(_0,_1){var _2=this.findIndex(_0,_1);return(_2!=-1)?this.get(_2):null},containsProperty:function(_0,_1){var _2=this.findIndex(_0,_1);return(_2!=-1)},findAll:function(_0,_1){if(_0==null)return null;var _2=null;if(isc.isA.String(_0)){for(var i=0,l=this.length;i<l;i++){var _3=this[i];if(_3&&_3[_0]==_1){if(_2==null)_2=[];_2.add(_3)}}}else{var l=this.length,_4=_0,_5=isc.getKeys(_4);for(var i=0;i<l;i++){_3=this[i];if(!_3)continue;var _6=true;for(var j=0;j<_5.length;j++){var _7=_5[j];if(_3[_7]!=_4[_7]){_6=false;break}}
if(_6){if(_2==null)_2=[];_2.add(_3)}}}
return _2},slide:function(_0,_1){this.slideRange(_0,_0+1,_1)},slideRange:function(_0,_1,_2){var _3=this.splice(_0,_1-_0);this.addListAt(_3,_2)},slideList:function(_0,_1){var _2=[],i;if(_1<0)_1=0;for(i=0;i<_1;i++)
if(!_0.contains(this[i]))
_2.add(this[i]);for(i=0;i<_0.length;i++)
_2.add(_0[i]);for(i=_1;i<this.length;i++)
if(!_0.contains(this[i]))
_2.add(this[i]);this.setArray(_2)},makeIndex:function(_0,_1,_2){var _3={};for(var i=0;i<this.length;i++){var _4=this[i],_5=_4[_0];if(_5==null){if(!_2)continue;_5=i}
var _6=_3[_5];if(_6==null){if(_1){_3[_5]=[_4]}else{_3[_5]=_4}}else{if(_1){_3[_5].add(_4)}else{var _6=_3[_5];if(isc.isAn.Array(_6)){_3[_5].add(_6)}else{_3[_5]=[_6,_4]}}}}
return _3},arraysToObjects:function(_0){var _1=_0.length;for(var _2=[],i=0,l=this.length;i<l;i++){var _3=_2[i]={};for(var p=0;p<_1;p++){var _4=_0[p];_3[_4]=this[i][p]}}
return _2},objectsToArrays:function(_0){var _1=_0.length;for(var _2=[],i=0,l=this.length;i<l;i++){var _3=_2[i]=[];for(var p=0;p<_1;p++){var _4=_0[p];_3[p]=this[i][_4]}}
return _2},spliceArray:function(_0,_1,_2){var _3;if(_0===_3)return this.splice();if(_1===_3)return this.splice(_0);if(_2===_3)return this.splice(_0,_1);if(!isc.isAn.Array(_2)){isc.Log.logWarn("spliceArray() method passed a non-array third parameter. Ignoring...","Array");return this.splice(_0,_1)}
return this.splice.apply(this,[_0,_1].concat(_2))},peek:function(){var _0=this.pop();this.push(_0);return _0},observe:isc.Class.getPrototype().observe,ignore:isc.Class.getPrototype().ignore,$e6:isc.Class.getPrototype().$e6,removeItem:function(_0){return this.removeAt(_0)},getItem:function(_0){return this.get(_0)},setItem:function(_0){return this.set(_0)},clearAll:function(_0){return this.removeAll(this)},size:function(){return this.getLength()},subList:function(_0,_1){return this.getRange(_0,_1)},addAll:function(_0){return this.addList(_0)},removeAll:function(_0){return this.removeList(_0)},clear:function(){this.setLength(0)}});if(Array.prototype.splice==null){isc.addMethods(Array.prototype,{splice:function(_0,_1){var _2;if(_0===_2)return[];if(_1===_2)_1=1;var _3=this.length;if(isc.isA.Number(_0)){if(_0<0)_0=0;if(_0>=_3)_0=_3-1}else{_0=0}
if(isc.isA.Number(_1)){if(_1<0)_1=0;if(_1>_3-_0)_1=_3-_0}else{_1=0}
var _4=this.slice(_0,_0+_1);var _5=this.slice(_0+_1);for(var i=2;i<arguments.length;i++,_0++){this[_0]=arguments[i]}
for(var i=0;i<_5.length;i++,_0++){this[_0]=_5[i]}
this.length=_3-_1+(arguments.length>2?arguments.length-2:0);this.dataChanged();return _4}})}
Number.prototype.Class="Number";isc.addMethods(Number.prototype,{_1zero:"0",_2zero:"00",_3zero:"000",_4zero:"0000",stringify:function(_0){if(!_0)_0=2;var _1=this.toString(),_2=_0-_1.length;if(_2<=0)return _1;var _3;while(_2>3){if(_3==null)_3=this._4zero;else _3+=this._4zero;_2-=4}
var _4;switch(_2){case 3:_4=this._3zero;break;case 2:_4=this._2zero;break;case 1:_4=this._1zero;break}
if(_3==null){if(_4==null)return _1;return _4+_1}else{if(_4==null)return _3+_1;return _3+_4+_1}},toCurrencyString:function(_0,_1,_2,_3){var _4=Math.floor(this),_5=Math.round((this-_4)*100),_6=isc.StringBuffer.create();if(!isc.isA.String(_0))_0="$";if(!isc.isA.nonemptyString(_1))_1=".";if(_2==null)_2=true;if(_3!=true)_6.append(_0);_6.append(_4.stringify(1));if(_2){_6.append(_1);_6.append(_5.stringify(2))}else if(_5!=0){_6.append(_1);if(_5%10==0)_6.append(_5/ 10);else _6.append(_5.stringify(2))}
if(_3==true)_6.append(_0);return _6.toString()},setStandardFormatter:function(_0){if(isc.isA.Function(Number.prototype[_0]))
Number.prototype.formatter=_0},setStandardLocaleStringFormatter:function(_0){if(isc.isA.Function(Number.prototype[_0]))
Number.prototype.localeStringFormatter=_0}});isc.addMethods(Number,{setStandardFormatter:function(_0){if(isc.isA.Function(Number.prototype[_0]))
Number.prototype.formatter=_0},setStandardLocaleStringFormatter:function(_0){if(isc.isA.Function(Number.prototype[_0]))
Number.prototype.localeStringFormatter=_0}});Number.prototype.toBrowserString=Number.prototype.toString;Number.prototype.toBrowserLocaleString=Number.prototype.toLocaleString;Number.prototype.toString=function(_0){return this[(_0?_0:this.formatter)]()}
if(!Number.prototype.formatter)Number.prototype.formatter="toBrowserString";Number.prototype.toLocaleString=function(){return this[this.localeStringFormatter]()}
if(!Number.prototype.localeStringFormatter)
Number.prototype.localeStringFormatter="toBrowserString";isc.addGlobal("timeStamp",function(){var _0=window.$fo;if(_0){if(isc.$fp==null){isc.timeStamp=isc.timestamp=isc.$fq;isc.$fo=_0;isc.$fp=new Date().getTime();_0.Reset()}
return isc.$fp+_0.Elapsed}
return new Date().getTime()});isc.addGlobal("timestamp",isc.timeStamp);isc.$fq=function(){return isc.$fp+isc.$fo.Elapsed};Date.prototype.Class="Date";isc.addMethods(Date,{newInstance:function(_0,_1,_2,_3,_4,_5,_6){return new Date(_0,_1,_2,_3,_4,_5,_6)},create:function(_0,_1,_2,_3,_4,_5,_6){return new Date(_0,_1,_2,_3,_4,_5,_6)},compareDates:function(a,b){var _0=(a!=null?a.getTime():0),_1=(b!=null?b.getTime():0);return _0>_1?-1:(_1>_0?1:0)},parseDate:function(_0,_1,_2){if(isc.isA.Date(_0))return _0;if(!isc.isA.String(_0)||_0=="")return null;if(_1){if(_1=="toDateStamp")
return this.parseDateStamp(_0);else if(_1=="toShortDate")
return this.parseShortDate(_0,_2);else if(_1=="toShortDateTime")
return this.parseShortDateTime(_0,_2);else if(_1=="toEuropeanShortDate")
return this.parseEuropeanShortDate(_0,_2);else if(_1=="toEuropeanShortDateTime")
return this.parseEuropeanShortDateTime(_0,_2);else if(_1=="toDBDate"||_1=="toDBDateTime")
return this.parseDBDate(_0);else if(_1=="toSerializeableDate")
return this.parseSerializeableDate(_0);else if(_1=="toPrettyString")
return this.parsePrettyString(_0,_2)}else{return this.parseStandardDate(_0)}},parseStandardDate:function(_0){if(!isc.isA.String(_0))return null;var _1=_0.substring(0,4),_2=_0.substring(5,7)-1,_3=_0.substring(8,10),_4=_0.substring(11,13),_5=_0.substring(14,16),_6=_0.substring(17,19);if(_0.length<19){if(!isc.isA.Number(_1-_2-_3))return null}else{if(!isc.isA.Number(_1-_2-_3-_4-_5-_6))return null}
return new Date(_1,_2,_3,_4,_5,_6)},parseSerializeableDate:function(_0){return this.parseStandardDate(_0)},parseDBDate:function(_0){if(isc.isA.String(_0)&&_0.startsWith("$$DATE$$:")){_0=_0.substring(9)
return this.parseStandardDate(_0)}
return null},parseDateStamp:function(_0){if(_0==null||isc.isA.Date(_0))return _0;var _1=new Date(_0.substring(0,4),parseInt(_0.substring(4,6),10)-1,_0.substring(6,8),_0.substring(9,11),_0.substring(11,13),_0.substring(13,15));if(isc.isA.Date(_1))return _1;else return null},parseShortDate:function(_0,_1){return this.$fr(_0,false,_1)},parseShortDateTime:function(_0,_1){return this.parseShortDate(_0,_1)},parsePrettyString:function(_0,_1){return this.parseShortDate(_0,_1)},$fr:function(_0,_1,_2){if(isc.isA.Date(_0))return _0;if(_0==null||_0=="")return null;var _3=this.$fs(_0,_1);if(_3!=null){var _4=_3[0];if(_4&&_4.length<=2){_4=parseInt(_4,10);if(_4<_2)_4+=2000;_3[0]=_4}
return new Date(_3[0],_3[1],_3[2],_3[3],_3[4],_3[5])}else
return null},$fs:function(_0,_1){var _2,_3,_4,_5,_6,_7;if(isc.Browser.isSafari){var _2=(_1?_0.substring(3,5):_0.substring(0,2))-1,_3=(_1?_0.substring(0,2):_0.substring(3,5)),_4=_0.substring(6,10),_5=(_0.substring(11,13)||0),_6=(_0.substring(14,16)||0),_7=(_0.substring(17,19)||0)}else{var _8=new RegExp(/(\d{1,2})[^\d](\d{1,2})[^\d](\d{4}|\d{2})([^\d](\d{1,2})[^\d](\d\d)[^\d]?(\d\d)?)?/),_9=_0.match(_8);if(_9==null)return null;_2=(_1?_9[2]:_9[1])-1;_3=(_1?_9[1]:_9[2]);_4=_9[3];_5=_9[5]||0;_6=_9[6]||0;_7=_9[7]||0}
if(isc.isA.Number(_4-_2-_3-_5-_6-_7))
return([_4,_2,_3,_5,_6,_7]);else return null},parseEuropeanShortDate:function(_0,_1){return this.$fr(_0,true,_1)},parseEuropeanShortDateTime:function(_0,_1){return this.$fr(_0,true,_1)},setStandardFormatter:function(_0){if(isc.isA.Function(Date.prototype[_0]))
Date.prototype.formatter=_0},setStandardLocaleStringFormatter:function(_0){if(isc.isA.Function(Date.prototype[_0]))
Date.prototype.localeStringFormatter=_0}});if(!Date.prototype.getFullYear){isc.addMethods(Date.prototype,{getFullYear:function(){var _0=this.getYear();return(_0<2000?_0+1900:_0)}})}
isc.addMethods(Date.prototype,{duplicate:function(){var _0=new Date();_0.setTime(this.getTime());return _0},clearTimeFields:function(){this.setHours(0);this.setMinutes(0);this.setSeconds(0);this.setMilliseconds(0);return this},getShortDayName:function(_0){var _1=this.toBrowserString();if(_0==null||_0<=0||_0>3)_0=3;return _1.substring(0,_0)},getShortDayNames:function(_0){if(Date.prototype.$ft==null){Date.prototype.$ft=[];var _1=new Date(),_2=_1.getDate();if(_1.getDay()>0){_2=_2-_1.getDay();_1.setDate(_2)}
for(var i=0;i<7;i++){_1.setDate(_2+i);Date.prototype.$ft[i]=_1.getShortDayName()}}
var _3=[];for(var i=0;i<7;i++){_3[i]=Date.prototype.$ft[i].substring(0,_0)}
return _3},getShortMonthName:function(_0){var _1=this.toBrowserString();if(_0==null||_0<0||_0>3)_0=3;return _1.substring(4,(4+_0))},getShortMonthNames:function(_0){if(!Date.prototype.$fu){var _1=Date.prototype.$fu=[];for(var i=0;i<12;i++){var _2=new Date(2000,i,1);_1[i]=_2.getShortMonthName()}}
var _3=[];for(var i=0;i<12;i++){_3[i]=Date.prototype.$fu[i].substring(_0)}
return _3},getShortYear:function(){var _0=this.getFullYear();return(_0%100).stringify(2)},toDateStamp:function(){return this.getFullYear()+(this.getMonth()+1).stringify()+this.getDate().stringify()+"T"+this.getHours().stringify()+this.getMinutes().stringify()+this.getSeconds().stringify()+"Z"},toPrettyString:function(){return(this.getMonth()+1).stringify()+"/"+this.getDate().stringify()+"/"+this.getShortYear()+" "+this.getHours().stringify()+":"+this.getMinutes().stringify()},toShortDate:function(){return((this.getMonth()+1).stringify()+"/"+this.getDate().stringify()+"/"+this.getFullYear())},toShortDateTime:function(){return(this.toShortDate()+" "+this.getHours().stringify()+":"+this.getMinutes().stringify()+":"+this.getSeconds().stringify())},toEuropeanShortDate:function(){return(this.getDate().stringify()+"/"+(this.getMonth()+1).stringify()+"/"+this.getFullYear())},toEuropeanShortDateTime:function(){return(this.toEuropeanShortDate()+" "+this.getHours().stringify()+":"+this.getMinutes().stringify()+":"+this.getSeconds().stringify())},$fv:function(){return'"'+this.toDBDate()+'"'},$fw:function(_0){return isc.Comm.$fx(_0,this.toSerializeableDate(),"date")},toSerializeableDate:function(){return isc.StringBuffer.concat(this.getFullYear(),"-",(this.getMonth()+1).stringify(2),"-",this.getDate().stringify(2)," ",this.getHours().stringify(2),":",this.getMinutes().stringify(2),":",this.getSeconds().stringify(2))},toDBDate:function(){return isc.StringBuffer.concat("$$DATE$$:",this.toSerializeableDate())},toDBDateTime:function(){return this.toDBDate()},setFormatter:function(_0){if(isc.isA.Function(this[_0])){this.formatter=_0}},setLocaleStringFormatter:function(_0){if(isc.isA.Function(this[_0]))this.localeStringFormatter=_0},setStandardFormatter:function(_0){if(isc.isA.Function(Date.prototype[_0]))Date.prototype.formatter=_0},setStandardLocaleStringFormatter:function(_0){if(isc.isA.Function(Date.prototype[_0]))
Date.prototype.localeStringFormatter=_0}});Date.prototype.toBrowserString=Date.prototype.toString;Date.prototype.toBrowserLocaleString=Date.prototype.toLocaleString;Date.prototype.toString=function(_0){return this[(_0?_0:this.formatter)]()}
if(!Date.prototype.formatter)Date.prototype.formatter="toBrowserString";Date.prototype.toLocaleString=function(){return this[this.localeStringFormatter]()}
if(!Date.prototype.localeStringFormatter)
Date.prototype.localeStringFormatter="toBrowserLocaleString";String.prototype.Class="String";isc.$fy=function(){var _0=[Array,Number,Date].getProperty("prototype");for(var i=0;i<_0.length;i++){var _1=_0[i];if(_1.toLocaleString==null){_1.toLocaleString=_1.toString}}
var _2=String.prototype;if(!_2.toLocaleUpperCase){_2.toLocaleUpperCase=_2.toUpperCase;_2.toLocaleLowerCase=_2.toLowerCase}
if(isc.Browser.isMoz){_2.toLocaleString=_2.toString;Boolean.prototype.toLocaleString=Boolean.prototype.toString}}
isc.$fy();isc.addProperties(String,{$fz:new RegExp("'","g"),$f0:new RegExp('"',"g")});isc.addMethods(String.prototype,{replaceAll:function(_0,_1){return this.split(_0).join(_1)},contains:function(_0){return this.indexOf(_0)>-1},startsWith:function(_0){return(this.lastIndexOf(_0,0)==0)},endsWith:function(_0){var _1=this.length-_0.length;if(_1<0)return false;return(this.indexOf(_0,_1)==_1)},trim:function(_0){var _1=_0||" \t\n\r",l=this.length,_2=0,_3=l-1,i=0;while(_2<l&&_1.contains(this.charAt(i++)))_2++;i=l-1;while(_3>=0&&_1.contains(this.charAt(i--)))_3--;return this.substring(_2,_3+1)},convertTags:function(_0,_1){return(_0?_0:"")+this.replace(/</g,"&lt;").replace(/>/g,"&gt;")+(_1?_1:"")},asHTML:function(){return this.replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/(\r\n|\r|\n)/g,"<BR>").replace(/\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;").replace(/  /g,"&nbsp;&nbsp;")},toInitialCaps:function(){var _0=this.toLowerCase().split(" ");for(var i=0;i<_0.length;i++){_0[i]=_0[i].substring(0,1).toLocaleUpperCase()+_0[i].substring(1)}
return _0.join(" ")},evalDynamicString:function(){if(this.indexOf("${")<0)return this;var _0=this,_1,_2,_3,_4;var _5=["try{",null,"}catch(e){var error = 'CANVAS_DYNAMIC_CONTENTS_PARSE_ERROR for expression: ",null," - actual error: ' + e; Log.logWarn(error); ''}"];var _6=isc.StringBuffer.create();while((_2=_0.indexOf("${"))!=-1){_3=_0.indexOf("}",_2+1);if(_3==-1)break;if(_0.charAt(_2-1)=='\\'){_6.append(_0.slice(0,_2-1),_0.slice(_2,_3+1));_0=_0.substring(_3+1,_0.length);continue}
var _4=_0.slice(_2+2,_3);if(isc.Browser.isMoz||(isc.Browser.isIE&&isc.Browser.version>=5)){_5[1]=_4;_5[3]=_4.replace(String.$fz,"\\'");_4=_5.join(isc.emptyString)}
_6.append(_0.slice(0,_2),eval(_4));_0=_0.substring(_3+1,_0.length)}
_6.append(_0);_0=_6.toString();return _0},asSource:function(){return String.asSource(this)}});isc.addMethods(String,{asSource:function(_0){return'"'+_0.replace(/\\/g,"\\\\").replace(String.$f0,'\\"').replace(/\t/g,"\\t").replace(/\r/g,"\\r").replace(/\n/g,"\\n")+'"'}});isc.ClassFactory.defineClass("StringBuffer");isc.SB=isc.StringBuffer;isc.StringBuffer.addProperties({maxStreamLength:(isc.Browser.isIE?100:10000)});isc.StringBuffer.addMethods({init:function(){this.$f1=[]},append:function(_0,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z){var _1=this.$f1,_2,_3;if(_0!=null&&_0.constructor.$eh==2){_2=_0.join(isc.emptyString)
_1[_1.length]=_2}else if(Z===_3&&Y===_3&&X===_3){_1.push(_0,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z)}else{_2=arguments;for(var i=0,l=_2.length;i<l;i++){_1[_1.length]=_2[i]}}
if(_1.length>this.maxStreamLength){this.$f1=[_1.join(isc.emptyString)]}
return this}});isc.StringBuffer.getPrototype().toString=function(){return this.$f1.join(isc.emptyString)}
isc.StringBuffer.$f2=Array.prototype.join;isc.StringBuffer.addClassMethods({$ew:[],concat:function(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z){var _0;if(x===_0&&y===_0&&z===_0){var _1=this.$ew;_1.length=0;_1.push(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z);return _1.join(isc.emptyString)}else{arguments.join=this.$f2;return arguments.join(isc.emptyString)}}});isc.ClassFactory.defineClass("Cookie");isc.Cookie.addClassMethods({init:function(){isc.Cookie.list={};if(document.cookie=="")return;var _0=(""+document.cookie).split("; ");for(var i=0,_1=_0.length,_2;_2=_0[i],i<_1;i++){var _3=_2.indexOf('='),_4=(_3==-1?_2:_2.substring(0,_3));isc.Cookie.list[_4]=(_3==-1?'':unescape(_2.substring(_3+1)))}},get:function(_0){isc.Cookie.init();return isc.Cookie.list[_0]},set:function(_0,_1,_2,_3,_4){isc.Cookie.init();document.cookie=_0+"="+escape(_1)+(_2?";path="+_2:"")+(_3?";domain="+_3:"")+(_4?";expires="+(isc.isA.String(_4)?_4:_4.toGMTString()):"")},clear:function(_0,_1,_2){isc.Cookie.init();this.set(_0,"",_1,_2,"Thu, 01-Jan-70 00:00:01 GMT")},getList:function(){isc.Cookie.init();return isc.getKeys(isc.Cookie.list)}});isc.$f3={getCallTrace:function(_0){if(_0==null)_0=arguments.caller;if(_0==null)return"[getCallTrace(): Error: couldn't get arguments object]";var _1,_2=_0.callee;if(_2==null){_1="[args.callee == null]"}else if(_2.getName==null){_1="[args.callee.getName == null]"}else{_1=_2.getName()}
_1+="(";var _3=(_2!=null&&_2.getArgs!=null)?_2.getArgs():[];var _4=Math.max(_0.length,_3.length);for(var i=0;i<_4;i++){var _5=_0[i];if(_3[i]!=null){_1+=_3[i]+"=>"}
_1+=this.echoLeaf(_5);if(i+1!=_4)_1+=", "}
_1+=")";if(_0.$fa)_1+="    on "+_0.$fa;return _1},getStackTrace:function(_0,_1){if(isc.Browser.isMoz||isc.Browser.isSafari)
return" [Stack trace not supported in this browser]";if(_0==null)_0=arguments.caller;var _2=[];for(var i=0;i<_1;i++){if(_0.caller!=null)_0=_0.caller}
var _3=true;while(_0!=null){_2.add("    "+this.getCallTrace(_0));if(_0.callee&&(_3||_0.caller==null))
{var _4=_0.callee.getBody(),_5=_4.split(/[\r\n]+/);if(_5.length==1&&_5[0].length<200){_2.add('        "'+_5[0]+'"')}}
_0=_0.caller;_3=false}
if(_2.length==0)return"";return"\r\n"+_2.join("\r")+"\r"},echoLeaf:function(_0,_1){var _2="",_3;if(_0===_3)return"undef";try{if(isc.isA.Class(_0)){_2+=_0.toString()}else if(isc.isAn.Array(_0)){_2+="Array["+_0.length+"]"}else{switch(typeof _0){case"string":if(_0.length<=40||_1){_2+='"'+_0+'"';break}
_2+='"'+_0.substring(0,40)+'..."['+_0.length+']';break;case"function":if(_0.getName)_2+=_0.getName()+"()";else _2+="anonymous()";break;case"object":if(_0==null){_2+="null";break}
if(_0.tagName!=null){_2+="["+_0.tagName+"Element]"+this.getIDText(_0);break}
var _4=""+_0;if(_4!="[object Object]"&&_4!="[object]"){_2+=_4;break}
_2+="Obj"+this.getIDText(_0);break;default:_2+=""+_0}}
return _2}catch(e){var _5="[Error in echoLeaf: "+e+"]";_2+=_5;this.logDebug(_5,"Log");return _2}},getIDText:function(_0){if(_0.name!=null&&!isc.isAn.emptyString(_0.name))return"{name:"+_0.name+"}";if(_0.ID!=null&&!isc.isAn.emptyString(_0.ID))return"{ID:"+_0.ID+"}";return""},echo:function(_0,_1,_2,_3){if(_0==null)return this.echoLeaf(_0);if(_1==null)_1=true;if(_0.tagName)return this.echoDOM(_0);if(typeof _0!="object")return this.echoLeaf(_0,true);if(isc.isAn.Array(_0)){var _4=(_2?"[\n":"[");for(var i=0;i<_0.length;i++){_4+=(_2?this.echo(_0[i],_1):this.echoLeaf(_0[i]));if(i+1<_0.length)_4+=(_2?",\n":", ")}
_4+="\n]";return _4}
var _4="{";if(_0.getUniqueProperties!=null){_4=_0.getClassName()+"{";_0=_0.getUniqueProperties();if(_3==null)_3=false}
if(_3==null)_3=true;var _5=isc.getKeys(_0);if(isc.Browser.isSafari){var _6=false,_7="[object CSSStyleDeclaration]";try{_6=(_0+""==_7)}catch(e){}
if(_6){_4=_7+"{\n[standard props only]\n";_5=isc.getKeys(isc.Canvas.$f4());_5.add("cssText")}}
for(var i=0;i<_5.length;i++){var _8=_5[i],_9;try{_9=_0[_8]}catch(e){_9="[error accessing property: "+e+"]"}
if(!_3&&isc.isA.Function(_9))continue;if(_8.startsWith("$"))continue;_4+=_8+": "+this.echoLeaf(_9);if(i+1<_5.length)_4+=(_1?",\r":", ")}
_4+="}";return _4},echoAll:function(_0,_1){return this.echo(_0,_1,true)},echoShort:function(_0){return this.echo(_0,false,false)},$f5:{outerText:false,innerText:false,parentTextEdit:false,isTextEdit:false,parentTextEdit:false,contentEditable:false,canHaveHTML:true,isMultiLine:false,filters:false,canHaveChildren:false,behaviorUrns:false,sourceIndex:false,accelerator:false,textDecorationUnderline:false,textDecorationNone:false},echoDOM:function(_0){return this.echoDelta(_0,window.Node)},echoEvent:function(_0){return this.echoDelta(_0,(isc.Browser.isMoz?window.KeyEvent:window.Event))},echoDelta:function(_0,_1){if(_0==null)return null;if(isc.Browser.isIE&&isc.isAn.XMLNode(_0)){var _2="{"+_0.tagName+" XMLNode ";var _3=_0.attributes;for(var i=0;i<_3.length;i++){var _4=_3[i];if(i>0)_2+=", ";_2+=_4.name+":"+this.echoLeaf(_4.value)}
_2+=(i>0?", ":"")+_0.childNodes.length+" child nodes }";return _2}
var _2="{";var _5=isc.getKeys(_0);for(var i=0;i<_5.length;i++){var _6=_5[i];if(this.$f5[_6]!=null)continue;if(_1!=null&&_1[_6]!=null)continue;if(_6.length>3&&_6.toUpperCase()==_6)continue;var _7=_0[_6];if(_7==null||_7=="")continue;if(isc.isA.Function(_7))continue;_2+=_6+": ";_2+=this.echoLeaf(_0[_6]);if(i+1<_5.length)_2+=", "}
_2+="}";return _2},echoElementSize:function(_0){var _1;if(isc.Browser.isNav4){this.logWarn("echoElementSize(): Unable to access DOM sizing properties in this browser");return}
return this.echo({scrollLeft:_0.scrollLeft,scrollTop:_0.scrollTop,scrollWidth:_0.scrollWidth,scrollHeight:_0.scrollHeight,clientWidth:(isc.Browser.isMacIE?_0.clientWidth:_1),clientHeight:(isc.Browser.isMacIE?_0.clientHeight:_1),offsetWidth:_0.offsetWidth,offsetHeight:_0.offsetHeight,styleLeft:_0.style.left,styleTop:_0.style.top,styleWidth:_0.style.width,styleHeight:_0.style.height,styleClip:_0.style.clip})}};isc.Class.addProperties(isc.$f3);isc.Class.addClassProperties(isc.$f3);isc.$f6={logMessage:function(_0,_1,_2){var _3=isc.Log;if(!_3)return;if(_0==null)_0=_3.defaultPriority;if(_0<=_3.stackTracePriority&&this.getStackTrace!=null){_1+="\nStack trace:\n"+this.getStackTrace(arguments,2)}
if(!_2)_2=this.Class;_3.log(_0,_1,_2,this.ID)},logDebug:function(_0,_1){return this.logMessage(isc.Log.DEBUG,_0,_1)},logInfo:function(_0,_1){return this.logMessage(isc.Log.INFO,_0,_1)},logWarn:function(_0,_1){return this.logMessage(isc.Log.WARN,_0,_1)},logError:function(_0,_1){return this.logMessage(isc.Log.ERROR,_0,_1)},logFatal:function(_0,_1){return this.logMessage(isc.Log.FATAL,_0,_1)},logIsEnabledFor:function(_0,_1){return(isc.Log.isEnabledFor&&isc.Log.isEnabledFor((_1?_1:this.Class),_0))},logIsDebugEnabled:function(_0){return this.logIsEnabledFor(isc.Log.DEBUG,_0)},logIsInfoEnabled:function(_0){return this.logIsEnabledFor(isc.Log.INFO,_0)}};isc.Class.addMethods(isc.$f6);isc.Class.addClassMethods(isc.$f6);isc.ClassFactory.defineClass("Log");isc.Log.addClassProperties({FATAL:1,ERROR:2,WARN:3,INFO:4,DEBUG:5,PRIORITY_NAMES:["NONE","FATAL","ERROR","WARN","INFO","DEBUG"]});isc.Log.addClassProperties({defaultPriority:isc.Log.WARN,stackTracePriority:isc.Log.ERROR,$f7:{},$f8:1000,$f9:0,$ga:[],$gb:":",$gc:"."});isc.Log.addClassMethods({applyLogPriorities:function(_0){if(!this.$f7){this.$f7={}}
if(_0){isc.addProperties(this.$f7,_0)}},getLogPriorities:function(){return isc.addProperties({},this.$f7)},getPriority:function(_0){return this.$f7[_0]},setPriority:function(_0,_1){this.$f7[_0]=_1},clearPriority:function(_0){delete this.$f7[_0]},isEnabledFor:function(_0,_1){if(_0==null)_0=isc.$d3;while(_0!=isc.$d3){var _2=this.getPriority(_0);if(_2!=null){return _1<=_2}
var _3=_0.lastIndexOf(this.$gc);if(_3>0){_0=_0.substring(0,_3)}else{break}}
return _1<=isc.Log.defaultPriority},log:function(_0,_1,_2,_3){if(this.isEnabledFor(_2,_0))
this.addLogMessage(_0,_1,_2,_3)},_1zero:"0",_2zero:"00",getLogTimestamp:function(_0){var _1=this.$gd;if(_1==null){_1=this.$gd=[];_1[2]=this.$gb;_1[5]=this.$gb;_1[8]=this.$gc}
if(_0==null)_0=new Date();var _2=_0.getHours(),_3=_0.getMinutes(),_4=_0.getSeconds(),_5=_0.getMilliseconds();_1[1]=_2;if(_2<10)_1[0]=this._1zero;else _1[0]=null;_1[4]=_3;if(_3<10)_1[3]=this._1zero;else _1[3]=null;_1[7]=_4;if(_4<10)_1[6]=this._1zero;else _1[6]=null;_1[10]=_5;if(_5<10)_1[9]=this._2zero;else if(_5<100)_1[9]=this._1zero;else _1[9]=null;return _1.join(isc.$d3)},getPriorityName:function(_0){if(_0==null)return isc.$d3;return this.PRIORITY_NAMES[_0]},$ge:function(_0,_1,_2,_3){var _4=this.$gf;if(_4==null){_4=this.$gf=[]}
if(!_2)_2=this.category;_4[0]=this.getLogTimestamp();_4[1]=this.$gb;if(_0!=null){_4[4]=this.getPriorityName(_0);_4[5]=this.$gb}
_4[6]=_2;_4[7]=this.$gb;if(_3){_4[8]=_3
_4[9]=this.$gb}
_4[10]=_1;var _5=_4.join(isc.$d3);_4.length=0;return _5},addLogMessage:function(_0,_1,_2,_3){this.addToMasterLog(this.$ge(_0,_1,_2,_3))
if(_0!=null&&(_0==this.FATAL||_0==this.ERROR)){alert(_1)}},addToMasterLog:function(message){this.$ga[this.$f9]=message;this.$f9++;if(this.$f9>this.$f8){this.$f9=0}},getMessages:function(){var _0=this.$ga,_1=this.$f9,_2=this.$f8;return _0.slice(_2-_1,_2).concat(_0.slice(0,_1))},show:function(_0,_1){if(!this.logViewer)this.logViewer=isc.LogViewer.create();this.logViewer.showLog(_0,_1)},clear:function(){this.$ga=[];this.$f9=0;if(this.logViewer)this.logViewer.clear()},updateStats:function(_0){if(this.logViewer)this.logViewer.updateStats(_0)},traceMethod:function(_0,_1){var _2=this.validObservation(_0,_1);if(!_2)return;if(!this.$gg)this.$gg={};if(!this.$gg[_0])this.$gg[_0]=[];if(!this.$gh)this.$gh=isc.Class.create();var _3=this.$gh;if(_3.isObserving(_2,_1)&&this.$gg[_0].contains(_1))
{_3.ignore(_2,_1);this.logWarn("MethodTimer: Stopped logging stack traces for "+_1+" method on "+_0);this.$gg[_0].remove(_1)}else{_3.observe(_2,_1,"isc.Log.logWarn(isc.Log.getStackTrace())");this.logWarn("MethodTimer: Logging stack traces whenever "+_1+" method on "+_0+" is called");this.$gg[_0].add(_1)}},timeMethod:function(_0,_1){var _2=this.validObservation(_0,_1);if(!_2)return;if(!this.$gi)this.$gi={};if(!this.$gi[_0])this.$gi[_0]=[];var _3=isc.LogViewer.getSavedMethodPrefix()+_1,_4=isc.$d4+_1,_5=(_2[_4]?_4:_1);if(this.$gi[_0].contains(_1)){if(!_2[_3]){this.logWarn("Not timing method '"+_1+"' on object '"+_0+"'.");this.$gi[_0].remove(_1);return}
_2[_5]=_2[_3];delete _2[_3];this.logWarn("MethodTimer: "+_1+" method on "+_0+" is no longer being timed");this.$gi[_0].remove(_1);return}
_2[_3]=_2[_5];_2[_5]=isc.LogViewer.makeTimerFunction(_1,(_2.logMessage?null:_0));this.logWarn("MethodTimer: Timing "+_1+" method on "+_0);this.$gi[_0].add(_1)},validObservation:function(_0,_1){if(isc.isAn.emptyString(_0)||isc.isAn.emptyString(_1))return false;var _2=_0;if(isc.isA.String(_0)){_2=isc.Class.evaluate(_0);if(!_2){this.logWarn("MethodTimer: "+_0+" is not an object.");return false}}
if(_1.indexOf("(")!=-1){_1=_1.slice(0,_1.indexOf("("))}
if(isc.isA.ClassObject(_2)){if(!isc.isA.Function(_2[_1])){_2=_2.getPrototype();if(!_2[_1]){this.logWarn("MethodTimer: "+_1+" could not be found as a static or instance property on "+_0);return false}}}else if(!_2[_1]){this.logWarn("MethodTimer: "+_1+" is undefined or null on "+_0);return false}
if(!Function.convertToMethod(_2,_1)){this.logWarn("MethodTimer: "+_1+" is not a method on "+_0);return false}
return _2},hiliteCanvas:function(_0){var _1=_0;if(isc.isA.String(_0))_1=window[_0];if(!isc.isA.Canvas(_1)){this.logWarn("Unable to find specified canvas '"+_0+"'.");return}
var _2=this._hiliteCanvas;if(!_2){_2=this._hiliteCanvas=isc.Canvas.create({ID:"logHiliteCanvas",autoDraw:false,border1:"2px dotted red",border2:"2px dotted white"})}
_2.setPageRect(_1.getPageRect());isc.Page.setEvent("click",_2.getID()+".hide()");_2.setBorder(_2.border1);_2.bringToFront();_2.show();this.$gj()},$gj:function(){var _0=this._hiliteCanvas.getID(),_1=[this._hiliteCanvas.border1,this._hiliteCanvas.border2];for(var i=0;i<7;i++){isc.Timer.setTimeout((_0+".setBorder('"+(_1[i%2])+"');"),(500*i))}}});isc.ClassFactory.defineClass("LogViewer");isc.LogViewer.addClassMethods({getLogCookie:function(){var _0=isc.Cookie.get("Log");if(!_0)return null;var _1=new Function("return "+_0);return _1()},getSavedMethodPrefix:function(){return"$T_"},makeTimerFunction:function(_0,_1){var _2=isc.LogViewer.getSavedMethodPrefix(),_3="var $dy=isc.timeStamp();"+"var a=arguments,$gk=this."+_2+_0+"(a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10]);"+"var $gl=isc.timeStamp();"+(_1?"Log":"this")+".logWarn('Timed "+_0+(_1?" on "+_1:"")+": '+($gl-$dy).toFixed(3)+'ms'); "+"return $gk;";var _4=new Function(_3);_4.$fc=_0+"Timing";return _4}});isc.LogViewer.addMethods({traceMethod:function(_0,_1){return isc.Log.traceMethod(_0,_1)},timeMethod:function(_0,_1){return isc.Log.timeMethod(_0,_1)},hilightCanvas:function(_0){return isc.Log.hiliteCanvas(_0)},logWindowLoaded:function(){return(this._logWindowLoaded&&this._logWindow!=null&&!this._logWindow.closed)},showLog:function(_0,_1){if(_1)this._logWindow=_1;if(this.logWindowLoaded()){this._logWindow.setResultsValue(isc.Log.getMessages().join("\r"));return}
if(!isc.Log.logViewer)isc.Log.logViewer=this;if(this._logWindow&&!this._logWindow.closed)return;var _2={},_3=isc.LogViewer.getLogCookie();if(_3!=null){_2=_3}else{_2.left=100;_2.top=100;_2.width=640;_2.height=480}
var _4="RESIZABLE,WIDTH="+_2.width+",HEIGHT="+_2.height;if(_3){if(isc.Browser.isIE){_4+=",left="+_2.left+",top="+_2.top}else{_4+=",screenX="+_2.left+",screenY="+_2.top}
if(_3.evals)this.$gm=_3.evals.length-1}
var _5=(window.opener&&window.opener.isc);this.$gn=_2.height-160;this._logWindow=window.open(isc.Page.getIsomorphicClientDir()+"helpers/Log.html",(_5?"_subWindowLog":"_simpleLog"),_4);if(isc.Browser.isIE)this._logWindow.launchWindow=window;var _6=function(){if(isc.Log.logViewer){var _1=isc.Log.logViewer._logWindow;if(_1&&!_1.closed)_1.focus()}}
isc.Page.setEvent("idle",_6,isc.Page.FIRE_ONCE)},addToLog:function(_0){if(this.logWindowLoaded()){this._logWindow.addToLog(_0)}},$go:"count",updateStats:function(_0){if(!this.logWindowLoaded())return;var _1=isc.Canvas,_2=this._logWindow.staticForm;if(_0==this.$go){_2.setValue(_0,_1._canvasList.length-_1._iscInternalCount)}else{_2.setValue(_0,_1._stats[_0])}},displayEventTarget:function(){var _0=isc.EH.lastTarget?isc.EH.lastTarget.getID():"";if(_0==this.$gp)return;this.$gp=_0;if(this.logWindowLoaded()){this._logWindow.staticForm.setValue("currentCanvas",_0)}},evaluate:function(_0){if(!this.$gq){var _1=(!isc.Browser.isIE&&isc.Browser.version>4)?"try{return eval(expr)}catch(e){this.$gr=e}":"return eval(expr)";this.$gq=new Function("expr",_1)}
var _2=isc.timeStamp(),_3=this.$gq(_0),_4=isc.timeStamp(),_5=isc.Log.getLogTimestamp()+":";var _6=_0.split(/[\r\n]+/);if(_6.length>1)_0=_6[0]+"...";if(_0.length>200)_0=_0.substring(0,200)+"...";if(this.$gr){if(isc.Browser.isIE)this.$gr=this.$gr.description;_5+="Evaluator: '"+_0+"' returned a script error: \r\n"+"'"+this.$gr+"'";delete this.$gr}else{_5="Evaluator: result of '"+_0+"' ("+(_4-_2)+"ms):\r\n"+this.echo(_3)}
this.addToLog(_5)},getEval:function(_0){var _1=this.$gm;if(_0)_1+=_0;var _2=isc.LogViewer.getLogCookie()},getNextEval:function(){return this.getEval(1)},getPreviousEval:function(){return this.getEval(-1)},clear:function(){if(this.logWindowLoaded())this._logWindow.clearResults()}});isc.$gs=isc.LogViewer.getLogCookie();if(isc.$gs!=null){isc.Log.applyLogPriorities(isc.$gs.priorityDefaults)
if(isc.$gs.defaultPriority!=null)
isc.Log.defaultPriority=isc.$gs.defaultPriority}else{isc.Log.setPriority("Log",isc.Log.INFO)}
isc.addGlobal("showLog",function(_0){isc.Log.show(_0)})
isc.Log.logInfo("initialized");if(!isc.Browser.isMoz&&!isc.Browser.isSafari){window.onerror=function(_0,_1,_2){isc.Log.logWarn("Error:\r\t'"+_0+"'\r\tin "+_1+"\r\tat line "+_2+isc.Log.getStackTrace(arguments.caller))}}
isc.addProperties(Array,{ASCENDING:true,DESCENDING:false});isc.addMethods(Array,{shouldSortAscending:function(_0){if(_0==Array.ASCENDING)return true;if(_0==Array.DESCENDING)return false;if(isc.isA.String(_0)){if(_0.toLowerCase()=="ascending")return true;if(_0.toLowerCase()=="descending")return false}
return null}});isc.addMethods(Array.prototype,{sortByProperty:function(_0,_1,_2){if(_0)this.sortProp=_0;if(_1!=null)this.sortDirection=_1;if(_2==null){_2=this.$gt(this.sortProp)}
this.normalizer=_2;if(this.length==0)return this;var _3=Array.$gu;if(isc.isA.Function(this.normalizer)){for(var i=0,l=this.length,_4;i<l;i++){_4=this[i];if(_4==null)continue;_4[_3]=this.normalizer(_4,this.sortProp)}}else{var _5=this.normalizer;for(var i=0,l=this.length,_4;i<l;i++){_4=this[i];if(_4==null)continue;var _6=_4[this.sortProp];if(_6==null)_6='';var _7=_5[_6];if(_7==null)_7=_6;_4[_3]=_7}}
this.sort((Array.shouldSortAscending(_1)?Array.$gv:Array.$gw));this.clearProperty(Array.$gu);this.dataChanged();return this},unsort:function(){delete this.sortProp;return true},$gt:function(_0,_1){var _2=(_1!=null?(isc.isAn.Array(_1)?_1:[_1]):this);for(var i=0;i<_2.length;i++){_1=_2[i][_0];if(_1==null)continue;var _3=typeof _1;switch(_3){case"string":return Array.$gx;case"number":return Array.$gy;case"date":return Array.$gz;case"boolean":return Array.$g0}}
return Array.$g1},normalize:function(_0,_1){var _2=(this.normalizer?this.normalizer:this.$gt(_1,_0));return _2(_0,_1)}});isc.addProperties(Array,{$gu:"$g2"});isc.addMethods(Array,{$g1:function(_0,_1){return _0[_1]},$gx:function(_0,_1){return(isc.isA.String(_0[_1])?_0[_1].toLowerCase():isc.emptyString)},$gy:function(_0,_1){return parseFloat(_0[_1])},$g0:function(_0,_1){return(_0[_1]?1:0)},$gz:function(_0,_1){return(_0[_1]&&isc.isA.Date(_0[_1])?_0[_1].getTime():new Date(_0[_1]).getTime())},textToNumericNormalizer:function(_0,_1){var _2=parseInt(_0[_1]);if(isc.isA.Number(_2))return _2;else return 0},$gv:function(a,b){var _0=Array.$gu;return Array.compareAscending(a[_0],b[_0])},$gw:function(a,b){var _0=Array.$gu;return Array.compareDescending(a[_0],b[_0])},compareAscending:function(_0,_1){if(_0!=null&&_0.localeCompare!=null){return _0.localeCompare(_1)}
if(_1!=null&&_1.localeCompare!=null){return _1.localeCompare(_0)}
return(_1>_0?-1:_1<_0?1:0)},compareDescending:function(_0,_1){if(_0!=null&&_0.localeCompare!=null){return-1*_0.localeCompare(_1)}
if(_1!=null&&_1.localeCompare!=null){return-1*_1.localeCompare(_0)}
return(_1<_0?-1:_1>_0?1:0)}});isc.addMethods(Array.prototype,{max:function(_0,_1){if(_0==null)_0=0;if(_1==null)_1=this.length;var _2=null;for(var i=_0;i<_1;i++){var _3=this[i];if(isc.isA.Number(_3)){if(_2==null)_2=_3;else _2=Math.max(_2,_3)}}
return _2},min:function(_0,_1){if(_0==null)_0=0;if(_1==null)_1=this.length;var _2=null;for(var i=_0;i<_1;i++){var _3=this[i];if(isc.isA.Number(_3)){if(_2==null)_2=_3;else _2=Math.min(_2,_3)}}
return _2},sum:function(_0,_1){if(_0==null)_0=0;if(_1==null)_1=this.length;var _2=0;for(var i=_0;i<_1;i++)
if(isc.isA.Number(this[i]))_2+=this[i];return _2},and:function(_0,_1){if(_0==null)_0=0;if(_1==null)_1=this.length;for(var i=_0;i<_1;i++)
if(!this[i])return false;return true},or:function(_0,_1){if(_0==null)_0=0;if(_1==null)_1=this.length;var _2=0;for(var i=_0;i<_1;i++)
if(this[i])return true;return false}})
isc.ClassFactory.defineInterface("List");isc.List.addMethods({init:function(){this.addPropertyList(arguments);if(!this.data)this.data=[]},first:function(){return this.get(0)},last:function(){return this.get(this.getLength()-1)},indexOf:function(_0,_1,_2){if(_1==null)_1=0;if(_2==null)_2=this.getLength()-1;for(var i=_1;i<=_2;i++){if(this.get(i)==_0)return i}
return-1},lastIndexOf:function(_0,_1,_2){if(_1==null)_1=this.getLength()-1;if(_2==null)_2=0;for(var i=_1;i>=_2;i--)
if(this.get(i)==_0)return i;return-1},getRange:function(_0,_1){if(_1==null)_1=this.getLength()-1;var _2=[];for(var i=_0;i<_1;i++){_2[_2.length]=this.get(i)}
return _2},duplicate:function(){return this.newInstance().addList(this)},add:function(_0){if(arguments.length==2){return this.addAt(_0,arguments[1])}
this.addAt(this.getLength());return _0},setLength:function(_0){this.$fl();if(_0>this.getLength()){var _1;while(_0>this.getLength())this.add(_1)}else{while(_0<this.getLength())this.removeAt(this.getLength()-1)}
this.$fm()},addListAt:function(_0,_1){this.$fl();var _2=_0.getLength();for(var i=0;i<_2;i++){this.addAt(_0.get(i),_1+i)}
this.$fm();return _0},removeList:function(_0){this.$fl();var _1=false;for(var i=0;i<this.getLength();i++){var _2=this.get(i);if(_0.contains(_2)){_1=true;this.removeAt(i);i--}}
this.$fm();return _1},sort:function(_0){var _1=this.getRange(0,this.getLength());_1.sort(_0);for(var i=0;i<_1.length;i++)this.set(i,_1[i]);return this},sortByProperty:function(_0,_1,_2){var _3=this.getRange(0,this.getLength());_3.sortByProperty(_0,_1,_2);for(var i=0;i<_3.length;i++)this.set(i,_3[i]);return this},dataChanged:function(){}});isc.$g3=function(){var _0=["isEmpty","contains","containsAll","intersect","equals","getItems","addList","remove","$fl","$fm","getItem","setItem","removeItem","clearAll","size","subList","addAll","removeAll","clear"];var _1={};for(var i=0;i<_0.length;i++){var _2=_0[i];_1[_2]=Array.prototype[_2]}
isc.addMethods(isc.List.getPrototype(),_1)}
isc.$g3();isc.getValueForKey=function(_0,_1,_2){if(_1&&_1[_0]!=null)return _1[_0];return(_2!=null?_2:_0)}
isc.getKeyForValue=function(_0,_1,_2){if(_1){for(var _3 in _1){if(_1[_3]==_0)return _3}}
return(_2!=null?_2:_0)}
isc.makeReverseMap=function(_0){var _1={},_2;for(var _3 in _0){_2=_0[_3];_1[_2]=_3}
return _1}
isc.sortByKey=function(_0){var _1={},_2=isc.getKeys(_0).sort();for(var i=0;i<_2.length;i++){_1[_2[i]]=_0[_2[i]]}
return _1}
isc.sortByValue=function(_0){return isc.makeReverseMap(isc.sortByKey(isc.makeReverseMap(_0)))}
isc.ClassFactory.defineClass("Time");isc.Time.addProperties({showSeconds:false,show24HourTime:false,formatter:"toTime"});isc.Time.$en.toString=function(_0){if(!_0)_0=this.formatter;if(!isc.isA.Function(this[_0]))_0="toTime";return this[_0]()}
isc.Time.addMethods({init:function(_0,_1,_2,_3){if(isc.isA.String(_0)){var _4=isc.Time.parseTime(_0);if(_4){_0=_4.hours;_1=_4.minutes;_2=_4.seconds}}else if(isc.isAn.Array(_0)){_1=_0[1];_2=_0[2];_0=_0[0]}else if(isc.isA.Date(_0)){_1=_0.getMinutes(),_2=_0.getSeconds(),_0=_0.getHours()}else if(isc.isAn.Object(_0)){this.addProperties(_0);_0=this.hours;_1=this.minutes;_2=this.seconds}
this.hours=Math.max(0,Math.min(23,(_0|0)));this.minutes=Math.max(0,Math.min(59,(_1|0)));this.seconds=Math.max(0,Math.min(59,(_2|0)));if(_3)isc.addProperties(this,_3);this.setFormatter(this.formatter)},setFormatter:function(_0){if(isc.isA.Function(this[_0])){this.formatter=_0}else{this.formatter=(this.show24HourTime?"to24HourTime":"toTime")}},setStandardFormatter:function(_0){if(isc.isA.Function(isc.Time.$en[_0]))
isc.Time.$en.formatter=_0},toTime:function(){var _0=this.hours,_1=(_0>=12?"PM":"AM");if(_0>12)_0-=12;else if(_0==0)_0=12;return _0+":"+this.minutes.stringify(2)+(this.showSeconds?":"+this.seconds.stringify(2):"")+" "+_1},to24HourTime:function(){return this.hours.stringify(2)+":"+this.minutes.stringify(2)+(this.showSeconds?":"+this.seconds.stringify(2):"")},toSerializeableTime:function(){return isc.StringBuffer.concat(this.hours.stringify(2),":",this.minutes.stringify(2),":",this.seconds.stringify(2))},$fv:function(){return isc.StringBuffer.concat('"',isc.Time.TIME_PREFIX,this.toSerializeableTime(),'"');},$fw:function(_0){return isc.Comm.$fx(_0,this.toSerializeableTime(),"time")}});isc.Time.addClassProperties({$g4:[/^\s*(\d?\d)\s*[: ]\s*(\d?\d)\s*[: ]\s*(\d?\d)?\s*([AaPp][Mm]?)?\s*$/,/^\s*(\d?\d)\s*[: ]\s*(\d?\d)(\s*)([AaPp][Mm]?)?\s*$/,/^\s*(\d\d)(\d\d)(\d\d)?\s*([AaPp][Mm]?)?\s*$/,/^\s*(\d)(\d\d)(\d\d)?\s*([AaPp][Mm]?)?\s*$/,/^\s*(\d\d?)(\s)?(\s*)([AaPp][Mm]?)?\s*$/],TIME_PREFIX:"$$TIME$$:"});isc.Time.addClassMethods({parseTime:function(_0,_1,_2){if(isc.isA.Time(_0))return _0;if(isc.isA.Date(_0)){return isc.Time.newInstance(_0.getHours(),_0.getMinutes(),_0.getSeconds(),_1)}
if(!isc.isA.String(_0))return null;if(_0.startsWith(isc.Time.TIME_PREFIX))_0=_0.substring(isc.Time.TIME_PREFIX.length);for(var i=0;i<isc.Time.$g4.length;i++){var _3=isc.Time.$g4[i].exec(_0);if(_3)break}
if(!_3)return null;var _4=Math.min(parseInt(_3[1]|0,10),23),_5=Math.min(parseInt(_3[2]|0,10),59),_6=Math.min(parseInt(_3[3]|0,10),59),_7=(_3[4]?_3[4].substring(0,1).toUpperCase():"");if(_7=="P"&&_4<12)_4+=12;if(_4==12){if(_7=="A"||_7==""&&_2==false)_4=0}
return isc.Time.newInstance(_4,_5,_6,_1)},setStandardFormatter:function(_0){if(isc.isA.Function(isc.Time.$en[_0]))
isc.Time.$en.formatter=_0}});isc.ClassFactory.defineClass("Tree",null,"List");isc.Tree.addClassProperties({FOLDERS_AND_LEAVES:null,FOLDERS_ONLY:"folders",LEAVES_ONLY:"leaves",UNLOADED:null,LOADING:"loading",FOLDERS_LOADED:"folders",LOADED:"loaded"});isc.Tree.addProperties({autoSetupParentLinks:true,autoSetupPaths:false,pathDelim:"/",nameProperty:"name",titleProperty:"title",pathProperty:"path",parentProperty:"_parent",childrenProperty:"children",openProperty:null,cacheOpenList:true,openListCriteria:null,root:null,folderConstructor:Object,leafConstructor:Object,sortProp:null,sortDirection:Array.ASCENDING,showRoot:true,separateFolders:false,untitledNodeName:"Untitled",defaultLoadState:isc.Tree.UNLOADED,loadStateMessages:{normal:"",loading:"Loading items in this folder.",empty:"No items in this folder."}});isc.Tree.addMethods({init:function(){this.addPropertyList(arguments);isc.ClassFactory.addGlobalID(this);if(!this.root)this.root=this.makeRoot();if("parent"==this.modelType){this.connectByParentId()}else if("fields"==this.modelType){this.connectByFields()}else if("paths"==this.modelType){}else{if(this.autoSetupParentLinks)this.setupParentLinks();if(this.autoSetupPaths)this.setupPaths()}
if(!this.openProperty)this.openProperty="_isOpen_"+this.ID;this.openFolder(this.root)},makeRoot:function(){var _0=new this.folderConstructor();_0[this.nameProperty]=_0[this.pathProperty]=this.pathDelim;return _0},makeNode:function(_0,_1){var _2=this.find(_0);if(_2)return _2;if(_1){if(_0.endsWith(this.pathDelim)){_2=this.find(_0.substring(0,_0.length-1));if(_2){_2[this.nameProperty]+=this.pathDelim;_2[this.pathProperty]=_0}}else{_2=this.find(_0+this.pathDelim)}
if(_2)return _2}
var _3=_0.split(this.pathDelim);var _4=this.getRoot()[this.nameProperty];if(_4.endsWith(this.pathDelim))
_4=_4.substring(0,_4.length-this.pathDelim.length);if(_3[0]!=_4)_3.addAt(_4,0);var _5=_3[_3.length-1],_6=(_5!="");if(!_6){_3.length=_3.length-1;_5=_3[_3.length-1]}
var _7=_3.slice(0,(_3.length-1)).join(this.pathDelim)+this.pathDelim;var _8=this.find(_7);if(_8==null){_8=this.find(_7.substring(0,_7.length-this.pathDelim.length))}
var _9=this.isFolder(_8);if(!_8||(!_9&&!_1)){_8=this.makeNode(_7)}else if(!_9){_8[this.nameProperty]+=this.pathDelim;_8[this.pathProperty]+=this.pathDelim}
if(_6){var _2=new this.leafConstructor()}else{var _2=new this.folderConstructor()}
_2[this.nameProperty]=_5+(_6?"":this.pathDelim);_2[this.pathProperty]=_0;return this.add(_2,_8)},isRoot:function(_0){return this.root==_0},setupParentLinks:function(_0){if(!_0)_0=this.root;var _1=_0[this.childrenProperty];if(!_1||_1.length==0)return;for(var i=0,_2=_1.length,_3;i<_2;i++){_3=_1[i];if(!_3)continue;_3[this.parentProperty]=_0;if(this.isFolder(_3))this.setupParentLinks(_3)}},setupPaths:function(_0){if(!_0)_0=this.root;var _1=_0[this.childrenProperty];if(!_1||_1.length==0)return;for(var i=0,_2=_1.length,_3;i<_2;i++){_3=_1[i];this.fixPath(_3,null,_0);if(this.isFolder(_3))this.setupPaths(_3)}},connectByParentID:function(_0,_1,_2,_3,_4){this.connectByParentId(_0,_1,_2,_3,_4)},connectByParentId:function(_0,_1,_2,_3,_4){_0=_0||this.data;_1=_1||this.idField||"id";_2=_2||this.parentIdField||"parentId";_3=_3||this.rootValue;_4=_4||this.isFolderProperty;if(!this.parentIndex)this.parentIndex={};var _5=_0;while(_5.length>0){var _6=_5,_7=false;_5=[];for(var i=0;i<_6.length;i++){var _8=_6[i],_9=_8[_1],_10=_8[_2],_11=this.parentIndex[_10];this.parentIndex[_9]=_8;_8[this.nameProperty]=""+_8[_1];if(_4==null||_8[_4]){if(!_8[this.nameProperty].endsWith("/"))_8[this.nameProperty]+="/"}
if(_11!=null){this.logInfo("found parent "+_11[_1]+" for child "+_8[_1],"treeLinking");if(!_11[this.nameProperty].endsWith("/"))_11[this.nameProperty]+="/";if(_11[this.childrenProperty]==null)_11[this.childrenProperty]=[];this.add(_8,_11);this.setLoadState(_11,isc.Tree.LOADED);_7=true}else if(_10!=_3&&_10!=null&&_10!=-1&&_10!="")
{this.logDebug("couldn't place child: "+_8[_1],"treeLinking");_5.add(_8)}else{this.logInfo("root node: "+_8[_1],"treeLinking");if(this.root[this.childrenProperty]==null){this.root[this.childrenProperty]=[]}
this.add(_8,this.root);_7=true}}
this.logDebug("end of linking pass: "+_5.length+" unplaced children"+", found new parents: "+_7,"treeLinking");if(!_7&&_5.length>0){this.logWarn("Couldn't find parents for "+_5.length+" children: "+_5.getProperty(_2),"treeLinking");break}}},connectByFields:function(){for(var i=0;i<this.data.length;i++){this.addNodeByFields(this.data[i])}},addNodeByFields:function(_0){var _1=this.root;for(var i=0;i<this.fieldOrder.length;i++){var _2=this.fieldOrder[i],_3=_0[_2];var _4=_3+"/",_5=this.findChildNum(_1,_4),_6;if(_5!=-1){_6=this.getChildren(_1).get(_5)}else{_6={name:_4};this.add(_6,_1)}
_1=_6}
this.add(_0,_1)},getRoot:function(){return this.root},setRoot:function(_0){this.root=_0;this.openFolder(_0);this.markForRedraw();this.dataChanged()},getCleanNodeData:function(_0){var _1=[];if(!isc.isAn.Array(_0))_0=[_0];for(var i=0;i<_0.length;i++){var _2=_0[i],_3={};for(var _4 in _2){if(_4==this.parentProperty||_4==this.pathProperty||_4=="$g5"||_4.startsWith("$ak")||_4.startsWith("_selection_"))continue;_3[_4]=_2[_4];if(_4==this.childrenProperty&&isc.isAn.Array(_3[_4])){_3[_4]=this.getCleanNodeData(_3[_4])}}
_1.add(_3)}
return _1},getName:function(_0){if(!_0)return"";var _1=_0[this.nameProperty];if(_1!=null)return""+_1;var _2=this.getParent(_0);if(_2!=null)_1=""+(_2[this.childrenProperty].indexOf(_0));var _3=_0[this.childrenProperty];if(_3!=null)_1+=this.pathDelim;_0[this.nameProperty]=_1;return _1},getTitle:function(_0){if(!_0)return null;if(_0[this.titleProperty])return _0[this.titleProperty];var _1=_0[this.nameProperty];if(_1==null)_1=this.untitledNodeName;return(_1.endsWith(this.pathDelim)?_1.substring(0,_1.length-1):_1)},getPath:function(_0){if(!_0)return"";var _1=_0[this.pathProperty];if(!_1){_1=_0[this.pathProperty]=this.getPath(this.getParent(_0))+this.getName(_0)}
return _1},getParentPath:function(_0){var _1=this.getName(_0),_2=this.getPath(_0);return _2.substring(0,_2.length-_1.length)},getParent:function(_0){return _0[this.parentProperty]},getParents:function(_0){var _1=[],_2=this.getParent(_0);while(_2){_1.add(_2);if(_2==this.root)break;_2=this.getParent(_2)}
return _1},getLevel:function(_0){return this.getParents(_0).length},isFolder:function(_0){var _1=this.getName(_0);if(!_1)return false;return _1.charAt(_1.length-1)==this.pathDelim},isLeaf:function(_0){return!this.isFolder(_0)},isLast:function(_0){var _1=this.getParent(_0);if(!_1)return true;var _2=this.getChildren(_1,this.opendisplayNodeType,this.$g6,this.sortDirection);return _2[_2.length-1]==_0},find:function(_0){if(_0==this.pathDelim)return this.root;var _1=this.getPath(this.root);if(_0==_1)return this.root;var _2=this.root,_3=0;if(_0.startsWith(_1)){_3=_1.length}else if(_0.startsWith(this.pathDelim)){_3+=1}
while(true){var _4=_0.indexOf(this.pathDelim,_3);if(_4==_3){_3++;continue}
var _5=(_4!=-1),_6=_0.substring(_3,_5?_4:_0.length),_7=this.findChildNum(_2,_6);if(_7==-1)return null;_2=_2[this.childrenProperty][_7];if(!_5)return _2;_3=_4+1;if(_3==_0.length)return _2}},findChildNum:function(_0,_1){var _2=_0[this.childrenProperty];if(_2==null)return-1;var _3=_2.getLength(),_4=_1.endsWith(this.pathDelim);for(var i=0;i<_3;i++){var _5=_2.get(i)[this.nameProperty],_6=_5.length-_1.length;if(_6==0&&_5==_1)return i;if(_6==1){if(_5.startsWith(_1))return i}else if(_4&&_6==-1){if(_1.startsWith(_5))return i}}
return-1},getChildren:function(_0,_1,_2,_3,_4){if(_0==null)_0=this.root;if(this.isLeaf(_0))return[];if(!_0[this.childrenProperty])_0[this.childrenProperty]=[];var _5=_0[this.childrenProperty],_6=[];if(_4){for(var i=0,_7=_5.length;i<_7;i++){var _8=_5[i];if(this.fireCallback(_4,"node,parent,tree",[_8,_0,this]))
_6[_6.length]=_8}
_5=_6;_6=[]}
if(_1==isc.Tree.FOLDERS_ONLY){for(var i=0,_7=_5.length;i<_7;i++){if(this.isFolder(_5[i]))_6[_6.length]=_5[i]}}else if(_1==isc.Tree.LEAVES_ONLY){for(var i=0,_7=_5.length;i<_7;i++){if(this.isLeaf(_5[i]))_6[_6.length]=_5[i]}}else{_6=_5}
if(_2){_6.sortByProperty(null,_3,_2)}
return _6},getFolders:function(_0,_1,_2,_3){return this.getChildren(_0,isc.Tree.FOLDERS_ONLY,_1,_2,_3)},getLeaves:function(_0,_1,_2,_3){return this.getChildren(_0,isc.Tree.LEAVES_ONLY,_1,_2,_3)},hasChildren:function(_0,_1){var _2=this.getChildren(_0,_1);return _2&&_2.length>0},hasFolders:function(_0){return this.hasChildren(_0,isc.Tree.FOLDERS_ONLY)},hasLeaves:function(_0){return this.hasChildren(_0,isc.Tree.LEAVES_ONLY)},isDescendantOf:function(_0,_1){return this.getParents(_0).contains(_1)},getDescendants:function(_0,_1,_2){if(!_0)_0=this.root;var _3=[];if(!_2)_2=function(){return true};if(this.isLeaf(_0))return _3;var _4=this.getChildren(_0);if(!_4)return _3;for(var i=0,_5=_4.length,_6;i<_5;i++){_6=_4[i];if(this.isFolder(_6)){if(_1!=isc.Tree.LEAVES_ONLY&&_2(_6))
_3[_3.length]=_6;_3=_3.concat(this.getDescendants(_6,_1,_2))}else{if(_1!=isc.Tree.FOLDERS_ONLY&&_2(_6)){_3[_3.length]=_6}}}
return _3},getDescendantFolders:function(_0,_1){return this.getDescendants(_0,isc.Tree.FOLDERS_ONLY,_1)},getDescendantLeaves:function(_0,_1){return this.getDescendants(_0,isc.Tree.LEAVES_ONLY,_1)},dataChanged:function(){},add:function(_0,_1,_2){if(isc.isA.String(_1))_1=this.find(_1);if(!_1){var _3=this.getParentPath(_0);if(_3)_1=this.find(_3);if(!_1)return false}
var _4=this.getChildren(_1);if(!_4)return false;if(_2==null)_2=_4.length;_4.addAt(_0,_2);_0[this.parentProperty]=_1;this.fixPath(_0,null,_1);if(_0[this.childrenProperty]){var _4=_0[this.childrenProperty];_0[this.childrenProperty]=null;this.addList(_4,_0)}
this.markForRedraw();this.dataChanged();return _0},addList:function(_0,_1,_2){if(isc.isA.String(_1))_1=this.find(_1);if(!_1||this.isLeaf(_1))return false;if(_2==null){var _3=this.getChildren(_1);_2=(_3&&_3.length?_3.length:0)}
for(var i=0,_4=_0.length;i<_4;i++){this.add(_0[i],_1,_2);if(isc.isA.Number(_2))_2++}
return _0},addNodesByPath:function(_0){for(var i=0,_1=_0.length;i<_1;i++){var _2=_0[i];if(!_2||!_2[this.pathProperty])continue;var _3=_2[this.pathProperty].split(this.pathDelim),_4=_3[_3.length-1]=="",_5=_3.slice(0,_3.length-(_4?2:1)).join(this.pathDelim)+this.pathDelim,_6=_3[_3.length-(_4?2:1)]+(_4?this.pathDelim:"");_2[this.nameProperty]=_6;if(!_2[this.titleProperty])_2[this.titleProperty]=_6.split(this.pathDelim)[0];if(!this.add(_2,_5)){alert("Couldn't add node \r\t"+_3+"\r to parent \r\t"+_5)}}},newFolder:function(_0,_1,_2){var _3=new this.folderConstructor();isc.addProperties(_3,_1);this.add(_3,_0,_2);this.markForRedraw();this.dataChanged();return _3},newLeaf:function(_0,_1,_2){var _3=new this.leafConstructor();isc.addProperties(_3,_1);this.add(_3,_0,_2);this.markForRedraw();this.dataChanged();return _3},move:function(_0,_1,_2){this.moveList([_0],_1,_2)},moveList:function(_0,_1,_2){var _3=_0[0],_4=this.getParent(_3),_5=this.getChildren(_4).indexOf(_3);_0=this.removeList(_0);if(_1==_4&&_0.length==1){if(_2>_5)_2--}else{var _6=this.getChildren(_1);if(_6&&_2>_6.length)_2=_6.length}
this.addList(_0,_1,_2);this.dataChanged()},rename:function(_0,_1,_2){_0[this.nameProperty]=_1;this.fixPath(_0,_1);var _3=this.getDescendants(_0);for(var i=0,_4=_3.length;i<_4;i++){this.fixPath(_3[i])}
if(_2)_0[this.titleProperty]=_2;this.markForRedraw();this.dataChanged()},remove:function(_0){var _1=this.getParent(_0);if(!_1)return _0;var _2=this.getChildren(_1);if(!_2)return _0;var _3=this.findChildNum(_1,this.getName(_0));if(_3>-1){_2.removeItem(_3);this.markForRedraw();this.dataChanged()}
return _0},removeList:function(_0){var _1=[];for(var i=0,_2=_0.length;i<_2;i++){_1.add(this.remove(_0[i]))}
this.dataChanged();return _1},fixPath:function(_0,_1,_2){if(!_1)_1=this.getName(_0);if(!_2)_2=this.getParent(_0);if(!_2)return false;_0[this.pathProperty]=this.getPath(_2)+_1},copy:function(_0,_1,_2){var _3=[],_4=null;if(this.isFolder(_0)){var _5={};isc.addProperties(_5,_0);_5[this.childrenProperty]=null;_4=_3[_3.length]=this.newFolder(_1,_5,_2);var _6=this.getChildren(_0);if(_6&&_6.length>0)
_3=_3.concat(this.copyList(_6,_4))}else{_4=_3[_3.length]=this.newLeaf(_1,_0,_2)}
this.dataChanged();return _3},copyList:function(_0,_1,_2){var _3=[];if(_2==null){var _4=this.getChildren(_1);_2=(_4&&_4.length?_4.length:0)}
for(var i=0,_5=_0.length;i<_5;i++){_3[i]=this.copy(_0[i],_1,_2);if(isc.isA.Number(_2))_2++}
this.dataChanged();return _3},getLoadState:function(_0){if(!_0)return null;if(!_0.$g5)return this.defaultLoadState;return _0.$g5},isLoaded:function(_0){var _1=this.getLoadState(_0);return(_1==isc.Tree.LOADED||_1==isc.Tree.LOADING)},setLoadState:function(_0,_1){if(_0)_0.$g5=_1},setLoadStates:function(_0,_1){if(!_0)return;for(var i=0;i<_0.length;i++){var _2=_0[i];if(_2)_2.$g5=_1}},loadRootChildren:function(){this.loadChildren(this.root)},loadChildren:function(_0){if(!_0)_0=this.root;this.loadStateMessage=this.loadStateMessages.loading;this.setLoadState(_0,isc.Tree.LOADED)},unloadChildren:function(_0,_1){if(_1==isc.Tree.LEAVES_ONLY){_0.children=this.getFolders(_0);this.setLoadState(_0,isc.Tree.FOLDERS_LOADED)}else{_0.children=[];this.setLoadState(_0,isc.Tree.UNLOADED)}
this.markForRedraw();this.dataChanged()},reloadChildren:function(_0,_1){this.unloadChildren(_0,_1);this.loadChildren(_0,_1)},markForRedraw:function(){this.$a2=true},isOpen:function(_0){return(_0!=null?(_0[this.openProperty]==true):false)},getOpenFolders:function(_0){if(_0==null)_0=this.root;var _1=this.getDescendantFolders(_0,new Function("node","return node."+this.openProperty+" == true"));if(this.isOpen(_0))_1=[_0].concat(_1);return _1},getOpenFolderPaths:function(_0){var _1=this.getOpenFolders(_0);for(var i=0;i<_1.length;i++){_1[i]=this.getPath(_1[i])}
return _1},changeDataVisibility:function(_0,_1){if(this.isLeaf(_0))return false;_0[this.openProperty]=_1;this.markForRedraw();if(_1&&!this.isLoaded(_0)){this.loadChildren(_0)}},toggleFolder:function(_0){this.changeDataVisibility(_0,!this.isOpen(_0))},openFolder:function(_0){if(_0==null)_0=this.root;if(!this.isOpen(_0)){this.changeDataVisibility(_0,true)}},openFolders:function(_0){for(var i=0;i<_0.length;i++){var _1=_0[i];if(_1==null)continue;if(isc.isA.String(_1))_1=this.find(_1);if(_1!=null){this.openFolder(_1)}}},closeFolder:function(_0){if(this.isOpen(_0)){this.changeDataVisibility(_0,false)}},closeFolders:function(_0){for(var i=0;i<_0.length;i++){var _1=_0[i];if(_1==null)continue;if(isc.isA.String(_1))_1=this.find(_1);if(_1!=null){this.closeFolder(_1)}}},openAll:function(_0){if(!_0)_0=this.root;var _1=this.getDescendants(_0,isc.Tree.FOLDERS_ONLY);for(var i=0,_2=_1.length;i<_2;i++){if(!this.isOpen(_1[i])){this.changeDataVisibility(_1[i],true)}}
this.changeDataVisibility(_0,true)},closeAll:function(_0){if(!_0)_0=this.root;var _1=this.getDescendants(_0,isc.Tree.FOLDERS_ONLY);for(var i=0,_2=_1.length;i<_2;i++){if(this.isOpen(_1[i])){this.changeDataVisibility(_1[i],false)}}
if(!(_0==this.root&&this.showRoot==false))this.changeDataVisibility(_0,false)},getOpenList:function(_0,_1,_2,_3,_4){if(!_0)_0=this.root;if(_2==null)_2=this.$g6;if(_3==null)_3=this.sortDirection;var _5=[];if(this.isLeaf(_0)){return _5}
if(_1!=isc.Tree.LEAVES_ONLY)_5[_5.length]=_0;if(!this.isOpen(_0)){return _5}
var _6=this.getChildren(_0,_1,_2,_3,_4);for(var i=0,_7=_6.length,_8;i<_7;i++){_8=_6[i];if(!_8){continue}
if(this.isFolder(_8)){_5=_5.concat(this.getOpenList(_8,_1,_2,_3,_4))}else{if(_1!=isc.Tree.FOLDERS_ONLY){_5[_5.length]=_8}}}
if(!this.showRoot&&_5[0]==this.root){_5=_5.slice(1,_5.length)}
return _5},$g7:function(){if(!this.$g8||this.$a2||!this.cacheOpenList){this.$g8=this.getOpenList(this.root,this.openDisplayNodeType,this.$g6,this.sortDirection,this.openListCriteria);this.$a2=false}
if(this.$g8.length==0){this.loadStateMessage=this.loadStateMessages.empty}else{this.loadStateMessage=this.loadStateMessages.normal}
return this.$g8},getLength:function(){return this.$g7().length},get:function(_0){return this.$g7()[_0]},getRange:function(_0,_1){return this.$g7().slice(_0,_1)},indexOf:function(_0){return this.$g7().indexOf(_0)},getAllItems:function(){return this.$g7()},sortByProperty:function(_0,_1,_2){if(_0!=null)this.sortProp=_0;if(_1!=null)this.sortDirection=_1;if(_2&&isc.isA.Function(_2)){this.$g6=_2}else{this.$g9()}
this.markForRedraw();this.dataChanged()},$g9:function(){var _0=this.sortProp,_1=this.sortDirection,_2=this.separateFolders!=false;var _3=isc.SB.concat("var __tree__ = ",this.getID(),";\r","return (''",(_2?"+(__tree__.isFolder(obj) ? '0:' : '1:')":""),(_0&&_0!="title"?"+(obj."+_0+"!=null? obj."+_0+":'')+':'":""),"+__tree__.getTitle(obj)).toLowerCase();");this.addMethods({$g6:new Function("obj,property",_3)})}});isc.ClassFactory.defineClass("Page");isc.Page.addClassProperties({$ha:[],$hb:false,defaultUnsupportedBrowserURL:"[SKIN]/unsupported_browser.html",$hc:"",$hd:"[APP]images/",$he:"../isomorphic/",$hf:"[ISOMORPHIC]/system/",$hg:"[ISOMORPHIC]/system/reference/",$hh:"standard",$hi:"[ISOMORPHIC]/skins/standard/",$hj:"[ISOMORPHIC_CLIENT]/helpers/",$hk:{},$hl:["http://","https://","file://","mailto:"],textDirection:null,LTR:"ltr",RTL:"rtl"});isc.Page.addClassMethods({finishedLoading:function(){isc.Page.$hb=true;isc.Log.logInfo("isc.Page is loaded");if(!window.suppressAutoLogWindow){var _0=isc.LogViewer.getLogCookie();if(_0!=null&&_0.keepOpen){isc.Timer.setTimeout("isc.Log.show(true)",1000)}}},isLoaded:function(){return this.$hb},getBlankFrameURL:function(){if(isc.Browser.isIE&&"https:"==window.location.protocol){return this.getURL("[HELPERS]empty.html")}
return"about:blank"},setTitle:function(_0){document.title=_0},setDirectories:function(_0){if(_0==null){_0={appDir:window.appDir,imgDir:window.imgDir,isomorphicDir:(window.isomorphicDir?window.isomorphicDir:window.IsomorphicDir),isomorphicClientDir:window.isomorphicClientDir,isomorphicDocsDir:window.isomorphicDocsDir,skinDir:window.skinDir,helperDir:window.helperDir}}
this.setAppDir(_0.appDir);this.setIsomorphicDir(_0.isomorphicDir);this.setIsomorphicClientDir(_0.isomorphicClientDir);this.setIsomorphicDocsDir(_0.isomorphicDocsDir);this.setAppImgDir(_0.imgDir);this.setSkinDir(_0.skinDir);this.setHelperDir(_0.helperDir)},setAppDir:function(_0){if(_0!=null)isc.Page.$hc=_0;var _1=window.location.href;if(_1.contains("?"))_1=_1.substring(0,_1.indexOf("?"));if(_1.charAt(_1.length-1)!="/"){_1=_1.substring(0,_1.lastIndexOf("/")+1)}
isc.Page.$hk.APP=isc.Page.combineURLs(_1,_0);this.logInfo("setting app dir to "+isc.Page.$hk.APP);isc.Page.setAppImgDir()},getAppDir:function(){return isc.Page.$hk.APP},setAppImgDir:function(_0){if(_0!=null)isc.Page.$hd=_0;isc.Page.$hk.APPIMG=isc.Page.getURL(isc.Page.$hd)},getAppImgDir:function(_0){if(_0!=null&&(_0.startsWith("/")||isc.Page.getProtocol(_0)!=""))
{return _0}
return isc.Page.$hk.APPIMG+(_0?_0:"")},setIsomorphicDir:function(_0){if(_0!=null)isc.Page.$he=_0;isc.Page.$hk.ISOMORPHIC=isc.Page.combineURLs(isc.Page.getAppDir(),isc.Page.$he);isc.Page.setIsomorphicClientDir();isc.Page.setIsomorphicDocsDir()},getIsomorphicDir:function(){return isc.Page.$hk.ISOMORPHIC},setIsomorphicClientDir:function(_0){if(_0!=null)isc.Page.$hf=_0;isc.Page.$hk.ISOMORPHIC_CLIENT=isc.Page.combineURLs(isc.Page.getAppDir(),isc.Page.$hf);isc.Page.setSkinDir();isc.Page.setHelperDir()},getIsomorphicClientDir:function(){return isc.Page.$hk.ISOMORPHIC_CLIENT},setIsomorphicDocsDir:function(_0){if(_0!=null)isc.Page.$hg=_0;isc.Page.$hk.ISOMORPHIC_DOCS=isc.Page.combineURLs(isc.Page.getAppDir(),isc.Page.$hg)},getIsomorphicDocsDir:function(){return isc.Page.$hk.ISOMORPHIC_DOCS},setSkinDir:function(_0){if(_0!=null)isc.Page.$hi=_0;isc.Page.$hk.SKIN=isc.Page.combineURLs(isc.Page.getAppDir(),isc.Page.$hi);isc.Page.$hk.SKINIMG=isc.Page.$hk.SKIN+"images/"},getSkinDir:function(){return isc.Page.$hk.SKIN},getSkinImgDir:function(_0){if(_0==null)return isc.Page.$hk.SKINIMG;return isc.Page.combineURLs(isc.Page.$hk.SKIN,_0)},setHelperDir:function(_0){if(_0!=null)isc.Page.$hj=_0;isc.Page.$hk.HELPERS=isc.Page.combineURLs(isc.Page.getAppDir(),isc.Page.$hj)},getHelperDir:function(){return isc.Page.$hk.HELPERS},getImgURL:function(_0,_1){if(_0.startsWith("[SKIN]")){return isc.Page.combineURLs(isc.Page.getSkinImgDir(_1),_0.substring(_0.charAt(6)!="/"?6:7))}else{return isc.Page.combineURLs(isc.Page.getAppImgDir(_1),_0)}},getURL:function(_0){if(_0.charAt(0)=="["){var _1=_0.indexOf("]");if(_1>0){var _2=_0.substring(1,_1).toUpperCase(),_3=isc.Page.$hk[_2];if(_3!=null){_0=isc.Page.combineURLs(_3,_0.substring(_1+(_0.charAt(_1+1)!="/"?1:2)))}else{this.logDebug("getURL("+_0+"): couldn't find cached directory "+_2)}}else{this.logDebug("getURL("+_0+"): didn't find matching ']' in URL")}}
return _0},combineURLs:function(_0,_1){if(!isc.isA.String(_1))return _0;if(_1.charAt(0)=="["){return this.getURL(_1)}
if(_0==null||_0==""||isc.Page.getProtocol(_1)!=""){return _1}
if(_1.startsWith("/")){var _2=isc.Page.getProtocol(_0);if(_0.indexOf("/",_2.length)!=-1){_0=_0.substring(0,_0.indexOf("/",_2.length))}}else if(_1.indexOf("./")>-1){var _2=isc.Page.getProtocol(_0);_0=_0.substring(_2.length,_0.length-1);var _3=_0.split("/"),_4=_1.split("/");while(_4[0]=="."||_4[0]==".."){if(_4[0]=="."){_4=_4.slice(1,_4.length);continue}
if(_3.length==0)break;_3=_3.slice(0,_3.length-1);_4=_4.slice(1,_4.length)}
_0=_2+_3.join("/")+"/";_1=_4.join("/")}
return _0+_1},getProtocol:function(_0){for(var i=0;i<isc.Page.$hl.length;i++){if(_0.startsWith(isc.Page.$hl[i]))return isc.Page.$hl[i]}
return""},isRTL:function(){return this.getTextDirection()==isc.Canvas.RTL},getTextDirection:(isc.Browser.isNav?function(){return isc.Page.LTR}:function(){if(this.textDirection==null){var _0=document.documentElement,_1=document.body,_2=(_1?_1.dir:null)||_0.dir;if(_2)return(this.textDirection=_2.toLowerCase());else if(_1)return(this.textDirection=this.LTR);return this.LTR}
return this.textDirection}),loadStyleSheet:function(_0,wd){if(wd==null&&isc.Page.isLoaded()){this.logError("isc.Page.loadStylesheet('"+_0+"') called after page load.  Stylesheet not loaded.")}else{if(wd==null)wd=window;var _1=isc.Page.getURL(_0);wd.document.write("<LINK REL='stylesheet' TYPE='text/css' HREF=\""+_1+"\">")}},writeBodyTag:function(_0,_1){document.write("<BODY"+(_1?" BGCOLOR="+_1:"")+(_0?" BACKGROUND="+isc.Page.getImgURL(_0):"")+">")},resizeTo:function(_0,_1){window.resizeTo(_0,_1)},moveTo:function(_0,_1){window.moveTo(_0,_1)},scrollTo:function(_0,_1){window.scroll(_0,_1)},leaveScrollbarGap:isc.Browser.isMoz,getWidth:(isc.Browser.isNS?function(wd){if(!wd)wd=window;if(isc.Browser.isMoz&&wd==window){if(this.width!=null){return this.width-(this.leaveScrollbarGap?16:0)}
if(!isc.Page.isLoaded()){isc.Page.setEvent("load","isc.EH.$hm()",isc.Page.FIRE_ONCE)}
this.logInfo("NOTE: isc.Page.getWidth() unable to determine page width.  Returning 500");return 500}
return wd.innerWidth}:function(wd){if(!wd)wd=window;var _0=wd.document.body;if(isc.Browser.isStrict)_0=wd.document.documentElement;if(_0){return _0.clientWidth}else{if(!isc.Browser.isLoaded()){isc.Page.setEvent("load","isc.EH.$hm()",isc.Page.FIRE_ONCE)}
this.logWarn("NOTE: isc.Page.getWidth() called before <BODY> tag was written out -- "+"value cannot be determined.  Returning 500");return 500}}),getHeight:(isc.Browser.isNS?function(wd){if(!wd)wd=window;if(isc.Browser.isMoz&&wd==window){if(this.height!=null)return this.height;return 500}
return wd.innerHeight}:function(wd){if(!wd)wd=window;var _0=wd.document.body;if(isc.Browser.isStrict)_0=wd.document.documentElement;if(_0){return _0.clientHeight}else{this.logWarn("NOTE: isc.Page.getHeight() called before <BODY> tag was written out -- value cannot be determined.  Returning 500");return 500}}),getScrollWidth:(isc.Browser.isNS?function(){return document.width}:function(){if(document==null||document.body==null)return 500;if(isc.Browser.version>=6){return Math.max(document.body.scrollWidth,document.documentElement.clientWidth)}
return document.body.scrollWidth}),getScrollHeight:(isc.Browser.isNS?function(){var _0=document.body.scrollHeight;if(isc.isA.Number(_0))return _0}:function(){if(document==null||document.body==null)return 800;if(isc.Browser.version>=6){return Math.max(document.body.scrollHeight,document.documentElement.clientHeight)}
return document.body.scrollHeight}),getScrollLeft:(isc.Browser.isNS?function(){return window.pageXOffset}:function(){if(document==null||document.body==null)return 0;return(isc.Browser.isStrict?document.documentElement.scrollLeft:document.body.scrollLeft)}),getScrollTop:(isc.Browser.isNS?function(){return window.pageYOffset}:function(){if(document==null||document.body==null)return 0;return(isc.Browser.isStrict?document.documentElement.scrollTop:document.body.scrollTop)}),getScreenWidth:function(){return screen.width},getScreenHeight:function(){return screen.height},getWindowRect:function(wd){if(!wd)wd=window;return{left:(isc.Browser.isIE?wd.screenLeft:wd.screenX),top:(isc.Browser.isIE?wd.screenTop:wd.screenY),width:isc.Page.getWidth(wd),height:isc.Page.getHeight(wd)}},goBack:function(){if(history.length==0&&window.opener){window.close()}else{history.back()}},print:function(wd){if(!wd)wd=window;if(wd.print){wd.print()}else{var _0=wd.document;if(!_0||!_0.body){this.logError("isc.Page.print() called on a window that doesn't have a document.body defined.  Exiting.");return}
if(isc.Browser.isWin){_0.body.insertAdjacentHTML('beforeEnd','<OBJECT ID="printControl" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>');var _1=_0.all.printControl;if(!_1){this.logError("isc.Page.print() couldn't create or find print control.  Exiting.");return}
_1.ExecWB(6,1);_1.outerHTML=""}else{alert("Choose 'Print...' from the File menu to print this page.")}}},showPage:function(_0){if(!isc.isAn.Array(_0))_0=[_0];var _1=[];for(var i=0;i<_0.length;i++){var _2=isc.isA.String(_0[i])?window[_0[i]]:_0[i];if(_2)_1.add(_2);else this.logWarn("showPage couldn't find page with ID "+_0[i])}
if(_1.length==0){this.logWarn("showPage couldn't find any valid pages");return}
if(this.$hn){for(var i=0;i<this.$hn.length;i++){window[this.$hn[i]].hide()}
this.$ho=this.$hn}
this.$hn=[];for(var i=0;i<_1.length;i++){this.$hn.add(_1[i].getID());_1[i].show()}},getCurrentPage:function(){if(this.$hn&&this.$hn.length==1){return this.$hn[0]}else{return this.$hn}},getPreviousPage:function(){if(this.$ho&&this.$ho.length==1){return this.$ho[0]}else{return this.$ho}},goShowPrevious:function(){if(this.getPreviousPage()==null)return;this.showPage(this.getPreviousPage())},isShown:function(_0){if(!this.$hn)return false;if(!isc.isA.String(_0)){if(isc.isA.Canvas(_0))_0=_0.getID();else return false}
return this.$hn.contains(_0)},observe:function(_0,_1,_2){var _3=isc.Class.create();return _3.observe(_0,_1,_2)},checkBrowserAndRedirect:function(_0){if(_0==null)_0=isc.Page.defaultUnsupportedBrowserURL;if(!isc.Browser.isSupported){var _1=true;window.location.replace(isc.Page.getURL(_0))}}});isc.Page.setDirectories();isc.addGlobal("Params",function(_0){if(!_0)_0=window;var _1=isc.isA.String(_0)?_0:_0.location.href;var _2=_1.indexOf("?");if(_2!=-1){var _3=_1.substring(_2+1).split("&");for(var i=0,_4,_5;i<_3.length;i++){_4=_3[i];if(!_4)continue;_5=_4.indexOf("=");this[_4.substring(0,_5)]=unescape(_4.substring(_5+1))}}})
isc.params=new isc.Params();isc.getParams=function(_0){return new isc.Params(_0)}
isc.ClassFactory.defineClass("Comm");isc.Comm.addClassProperties({sendMethod:"POST",$hp:0});isc.Comm.addClassMethods({sendFieldsToServer:(isc.Browser.isNav?function(_0,_1,_2,_3,_4){}:function(_0,_1,_2,_3,_4,_5,_6){if(_2)isc.showPrompt(_2);if(isc.Comm.useXMLHttpRequest){return this.$hq(_0,_1,_3,_4,_5,_6)}
if(!_4)_4=isc.HiddenFrame.create();if(_5){if(isc.Browser.isMoz&&!_6){this.logError("resultVarName argument is required when specifying a callback "+"in Moz");return}
var _7={callback:_5,resultVarName:_6};_4.addProperties(_7)}
if(!_3)_3=_4.getName();var _8="",_9="AUTO_FORM_"+isc.Comm.$hp++;_8+="Submitting to:<B>"+_0+"</B><BR>";_8+="<FORM "+(isc.Browser.isNav?"NAME":"ID")+"="+_9+" METHOD="+isc.Comm.sendMethod+" ENCTYPE='application/x-www-form-urlencoded'"+" ACTION='"+_0+"'"+" TARGET='"+_3+"'"+">";for(var _10 in _1){var _11=_1[_10];if(isc.isA.Function(_11))continue;_8+="<B>"+_10+" :</B><BR>\r&nbsp;&nbsp;"
_8+="<TEXTAREA ROWS=5 COLS=20 NAME="+_10+">"+"</TEXTAREA><BR>\r"}
_8+="<INPUT name='__iframeTarget__' type=hidden value='"+_3+"'>";_8+="</FORM>";this.logInfo("Sending data via frame "+_4.getID()+" to server at URL: "+_0);_4.sendForm(_8,_9,_1);return _4}),getTargetableFrame:function(_0){var _1;if(isc.Browser.isNav){var _2=isc.Comm.createCommWindow();_2.name=isc.timeStamp();_1=_2.name;_2.document.open();_2.document.write(isc.Comm.getCommWindowHeader(_0)+"</BODY>");_2.document.close()}else{_1=isc.HiddenFrame.newInstance()}
return _1},sendXML:function(_0,_1,_2){var _3=(isc.Browser.isIE?new ActiveXObject("Msxml2.XMLHTTP"):new XMLHttpRequest());_3.open("POST",_0,true);_3.setRequestHeader("Content-Type","application/x-www-form-urlencoded");var _4=isc.SB.create();var _5=true;for(var _6 in _1){if(!_5)_4.append("&");_4.append(_6,"=",escape(_1[_6]));_5=false}
_4=_4.toString();_3.send(_4);var _7=function(){if(_3.readyState!=4)return;isc.Class.fireCallback(_2,"request",[_3])}
_7.request=_3;if(this.logIsDebugEnabled()){this.lastRequest=_3}
_3.onreadystatechange=_7},$hr:"*",elementToObject:function(_0){if(_0==null)return null;var _1={},_2=_0.attributes;if(_2!=null){for(var i=0;i<_2.length;i++){var _3=_2[i];_1[_3.name]=_3.value}}
var _4=_0.getElementsByTagName(this.$hr);for(var i=0;i<_4.length;i++){var _5=_4[i];_1[_5.tagName]=this.getElementText(_5)}
return _1},getElementText:function(_0){return isc.Browser.isIE?_0.text:isc.Browser.isMoz?_0.textContent:_0.firstChild.data},$hq:function(_0,_1,_2,_3,_4,_5,_6){_0+=(_0.contains("?")?"&":"?")+"xmlHttp=true";this.sendXML(_0,_1,"isc.Comm.$hs(request)")},$hs:function(_0){var _1,_2;if(this.logIsDebugEnabled())this.logDebug("responseText: "+_0.responseText);var _3=_0.responseXML.documentElement;_1=parseInt(_3.getAttribute("transactionNum"));_2=this.getElementText(_3);if(this.logIsDebugEnabled())this.logDebug("result string: "+_2);isc.RPCManager.performTransactionReply(_1,_2)}});isc.ClassFactory.defineClass("Messaging");isc.Messaging.addClassProperties({messagingURL:"[ISOMORPHIC]/messaging",$ht:1,$hu:null,$hv:null,_channels:{},$hw:[],$hx:20,connectTimeout:4000});isc.Messaging.addClassMethods({send:function(_0,_1){if(!isc.isAn.Array(_0))_0=[_0];var _2=isc.InstantDataApp.getDefaultApplication();_2.performOperation("messagingSend",{type:"send",sendToChannels:_0,subscribedChannels:this._channels,data:_1},"isc.Messaging.$hy(transaction)",{showPrompt:false})},$hy:function(_0){},getSubscribedChannels:function(){return isc.getKeys(this._channels)},subscribe:function(_0,_1,_2){if(!this._channels[_0]){this._channels[_0]={};if(_2)this._channels[_0].data=_2;this.$hz()}
this._channels[_0].callback=_1;return},unsubscribe:function(_0){if(!this._channels[_0])return;delete this._channels[_0];this.$hz();if(this._channels.length==0)this.disconnect()},connected:function(){return this._channels.length>0&&this.$h0},disconnect:function(){this._channels=[];this.$hu=null;this.$hv=null;this.$h1=null;isc.Timer.clear(this.$h2);this.$h2=null;isc.Timer.clear(this.$h3);this.$h3=null},$hz:function(){if(!this.$h2)
this.$h2=isc.Timer.setTimeout("isc.Messaging.$h4()",this.$ht,isc.Timer.MSEC)},$h5:function(){if(this.$hv&&window[this.$hv])window[this.$hv].destroy();this.$hv=null;this.logDebug("connect failed, retrying in: "+this.connectTimeout+"ms");this.$hz()},_serverConnTerminate:function(){this.$hz()},$h4:function(){isc.Timer.clear(this.$h2);this.$h2=null;if(this.$hv){this.$h6=true;this.logDebug("connect pending - deferring openConnection request.");return}
if(this.getSubscribedChannels().length==0)return;var _0=isc.HiddenFrame.create();this.$hv=_0.getID();isc.Comm.sendFieldsToServer(isc.Page.getURL(this.messagingURL)+"?ts="+isc.timestamp(),{type:"connect",connectionID:this.$hv,subscribedChannels:isc.Comm.serialize(this._channels)},null,null,_0);this.$h7=isc.Timer.setTimeout("isc.Messaging.$h5()",this.connectTimeout,isc.Timer.MSEC)},_connectCallback:function(_0,_1){if(_0!=this.$hv)return;this.$h8=_1.keepaliveInterval;this.$h9=_1.keepaliveReestablishDelay;this.$ia=this.$h8+this.$h9;this.$ib=_1.connectionTTL;this.connectTimeout=_1.connectTimeout;if(this.$hu&&window[this.$hu])window[this.$hu].destroy();this.$hu=this.$hv;this.$hv=null;isc.Timer.clear(this.$h7);this.$ic();this.$id();this.logDebug("persistent server connection open - ttl: "+this.$ib+"ms, keepaliveDelay: "+this.$ia+"ms, connectTimeout: "+this.connectTimeout+"ms.")
if(this.$h6){this.$h6=false;this.$hz();return}
var _2=isc.HiddenFrame.create();var _3=isc.HiddenFrame.create();var _4=_3.getID();isc.Comm.sendFieldsToServer(isc.Page.getURL(this.messagingURL)+"?ts="+isc.timestamp(),{type:"establishAck",ackFrameID:_4},null,null,_3)},$ic:function(){var _0=isc.Browser.isIE?"Done":"Stopped";isc.Timer.setTimeout("window.status='"+_0+"'",0)},_establishAck:function(_0){if(_0&&window[_0])window[_0].destroy();this.$h0=true},_keepalive:function(_0){this.$ic();if(_0!=this.$hu)return;this.$id();this.logDebug("keepalive on conn: "+_0)},$ie:function(){this.logDebug("connection to server lost, re-establishing...");this.$hz()},$id:function(){isc.Timer.clear(this.$h3);this.$h3=isc.Timer.setTimeout("isc.Messaging.$ie()",this.$ia,isc.Timer.MSEC)},_message:function(_0){_0=eval("var message = "+_0+";message;");var _1=_0.conn,_2=_0.channels,_3=_0.id,_4=_0.data;this.$ic();if(_1!=this.$hu)return;this.$id();if(this.$hw.contains(_3)){this.logDebug("ignoring duplicate ID: "+_3);return}
this.$hw.push(_3);if(this.$hw.length>this.$hx)this.$hw.shift();for(var i=0;i<_2.length;i++){var _5=_2[i];if(!this._channels[_5])continue;var _5=this._channels[_5],_6=_5.callback
if(_6)this.fireCallback(_6,"data",[_4],_5)}}});isc.ClassFactory.defineClass("HiddenFrame");isc.HiddenFrame.addClassProperties({_stats:{draws:0,destroys:0}});isc.HiddenFrame.addProperties({text:"&nbsp;",_generated:true,$if:[],pollInterval:100});isc.HiddenFrame.addMethods({init:function(){this.addPropertyList(arguments);isc.ClassFactory.addGlobalID(this)},getID:function(){return this.ID},draw:function(_0){if(this.isDrawn()){if(_0!=null)this.fireCallback(_0);return this}
if(!this.$ig()){if(!this.$ih){isc.Page.setEvent("load",this.getID()+".draw()",isc.Page.FIRE_ONCE);this.$ih=true}
if(_0!=null){this.$if[this.$if.length]=_0}}else{this.$ii();for(var i=0;i<this.$if.length;i++){this.fireCallback(this.$if[i])}
if(_0!=null)this.fireCallback(_0)}
return this},$ii:function(){var _0=this.getDocument().body;var _1="<IFRAME ID="+this.getName()+" NAME="+this.getName()+" SRC=\""+(this.location?this.location:isc.Page.getBlankFrameURL())+"\" STYLE='position:absolute;visibility:hidden;top:-1000px'"+"></IFRAME>";isc.Canvas.createAbsoluteElement(_1);if(!(isc.Browser.isIE&&isc.Browser.minorVersion<5.5)){this.$ij=isc.Canvas.getElementById(this.getName());if(!isc.Browser.isSafari)this.$ik=this.$ij.contentWindow}
if(this.$ik==null){for(var i=0;i<window.frames.length;i++){var _2=window.frames[i];if(_2.name==this.getName()){this.$ik=_2;break}}}
this.$il=true;return this.$ik},isDrawn:function(){return this.$il},$ig:function(){return isc.Page.isLoaded()||(!isc.Browser.isIE4&&!isc.Browser.isNS6&&!isc.Browser.isMoz)},destroy:function(){if(isc.isA.Canvas(this.$im)){this.$im.destroy();delete this.$im;isc.HiddenFrame._stats.destroys++}
if(window[this.ID])window[this.ID]=null;var _0=this.getHandle();if(!_0)return;if(isc.Browser.isSafari)_0.location=isc.Page.getBlankFrameURL();var _1=eval("try{this.getHandle().name;true}catch(e){false}");if(!_1){this.logDebug("Can't dispose of "+this.ID+" - property access denied.");return}
if(isc.Browser.isIE&&isc.Browser.minorVersion<5.5){_0.document.open();_0.document.write("");_0.document.close();return}
var _2=this.$ij;if(_2){_2.parentNode.removeChild(_2);this.$ij=null}
this.logDebug("Destroyed "+this.ID)},getHandle:function(){return this.$ik},getName:function(){return this.getID()},getFrameDocument:function(){var _0=(isc.Browser.isSafari?this.$ij:this.$ik);return _0.document},getForm:function(_0){if(_0==null)_0=0;if(isc.Browser.isMoz){return this.getFrameDocument().getElementById(_0)}else{return this.getFrameDocument().forms[_0]}},setInnerHTML:function(_0){if(_0)this.text=_0;var _1=this.getFrameDocument();if(isc.Browser.isMoz){var _2=_1.createRange();_2.setStartBefore(_1.body);var _3=_2.createContextualFragment(this.text);_1.body.appendChild(_3)}else{_1.open();_1.write(this.text);_1.close()}},sendForm:function(_0,_1,_2){if(_0!=null)this.formHTML=_0;if(_1!=null)this.formName=_1;if(_2!=null)this.fieldList=_2;if(!this.$ig()){this.logDebug("delaying comm until page load");isc.Page.setEvent("load",this.getID()+".sendForm()",isc.Page.FIRE_ONCE);return}
this.draw();this.sendData()},sendData:function(){if(this.getFrameDocument()==null)
{isc.Timer.setTimeout(this.getID()+".sendData()",10);this.logDebug(this.getID()+": sendData() - document not ready - deferring.");return}
if(isc.isA.Canvas(this.$im))this.$im.destroy();this.$im=isc.Canvas.create({autoDraw:true,ID:this.getID()+"$im",visibility:"hidden",top:-9999,width:1,height:1,contents:this.formHTML,_generated:true,$in:true});isc.HiddenFrame._stats.draws++;var _0=isc.Canvas.getElementById(this.formName);for(var _1 in this.fieldList){_0.elements[_1].value=this.fieldList[_1]}
if(_0){_0.submit();this.logInfo("Form submitted to server");if(this.callback){this.convertToMethod("callback");isc.Timer.setTimeout(this.getID()+".checkLoaded()",this.pollInterval)}}else{this.logWarn("couldn't get handle to comm form")}},checkLoaded:function(){var _0=this.getHandle();if(_0&&_0[this.resultVarName]){if(this.callback)this.callback(_0)}else{isc.Timer.setTimeout(this.getID()+".checkLoaded()",this.pollInterval)}}});isc.HiddenFrame.registerStringMethods({callback:"frame"});if(!isc.Comm)isc.ClassFactory.defineClass("Comm");isc.Comm.addClassProperties({$io:/^[\$_a-zA-Z][\$\w]*$/,$ip:/(\d{1,4})-(\d{1,2})-(\d{1,2})/,$iq:/(\d{1,4})-(\d{1,2})-(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})/,BACKREF_PREFIX:"$$BACKREF$$:",DATE_PREFIX:"$$DATE$$:"});isc.Comm.addClassMethods({serialize:function(_0,_1,_2,_3){return isc.Comm.$fv(_0,_1?"":null,_2,_3)},$fv:function(_0,_1,_2,_3,_4){if(!_2){_2={};_2.objRefs={obj:[],path:[]};if(!_2.objPath){if(_0&&_0.getID)_2.objPath=_0.getID();else _2.objPath=""}}
if(_0==null)return null;if(isc.isA.String(_0))return(_0.asSource!=null?_0.asSource():String.asSource(_0));if(isc.isA.Function(_0))return null;if(isc.isA.Number(_0))return _0;if(isc.isA.Boolean(_0))return _0;var _5=isc.Comm.$ir(_2.objRefs,_0);if(_5!=null){return"'"+isc.Comm.BACKREF_PREFIX+_5+"'"}
isc.Comm.$is(_2.objRefs,_0,_2.objPath);if(isc.isA.Function(_0.$fv))return _0.$fv(_1,_2.objRefs,_2.objPath);if(isc.isAn.Array(_0))return isc.Comm.$it(_0,_2.objPath,_2.objRefs,_1);if(!_3)_3=[];if(!_4)_4=[];return isc.Comm.$iu((_0.getSerializeableFields?_0.getSerializeableFields(_3,_4):_0),_2.objPath,_2.objRefs,_1)},$it:function(_0,_1,_2,_3){var _4="[";for(var i=0,_5=_0.length;i<_5;i++){var _6=_0[i];_4+=(_3!=null?"\r"+_3+"\t":"")+isc.Comm.$fv(_6,(_3!=null?_3+"\t":null),{objRefs:_2,objPath:isc.Comm.$iv(_1,i)})+","+(_3!=null?" ":"")}
var _7=_4.lastIndexOf(",");if(_7>-1)_4=_4.substring(0,_7);_4+=(_3!=null?"\r"+_3+"]":"]");return _4},$iu:function(_0,_1,_2,_3){var _4="{";for(var _5 in _0){if(_5==null)continue;var _6=_0[_5];if(isc.isA.Function(_6))continue;var _7=_5.toString();if(!isc.Comm.$io.test(_7))_7='"'+_7+'"';_4+=(_3!=null?"\r"+_3+"\t":"")+_7+":"+isc.Comm.$fv(_6,(_3!=null?_3+"\t":null),{objRefs:_2,objPath:isc.Comm.$iv(_1,_5)})+","+(_3!=null?" ":"")}
var _8=_4.lastIndexOf(",");if(_8>-1)_4=_4.substring(0,_8);_4+=(_3!=null?"\r"+_3+"}":"}");return _4},$is:function(_0,_1,_2){_0.obj.add(_1);_0.path.add(_2)},$ir:function(_0,_1){var _2=_0.obj.indexOf(_1);if(_2==-1)return null;return _0.path[_2]},$iv:function(_0,_1){if(isc.isA.Number(_1)){return _0+"["+_1+"]"}else if(!isc.Comm.$io.test(_1)){return _0+'["'+_1+'"]'}else{return _0+"."+_1}}});if(!isc.Comm)isc.ClassFactory.defineClass("Comm");isc.Comm.addClassProperties({XML_BACKREF_PREFIX:"$$BACKREF$$:",$iw:/^([_:A-za-z])([_:.A-za-z0-9]|-)*/});isc.Comm.addClassMethods({xmlSerialize:function(_0,_1,_2,_3,_4){return isc.Comm.$fw(_0,_1,_2?"":null,_3,_4)},$fw:function(_0,_1,_2,_3,_4,_5){if(!_3){_3={};_3.objRefs={obj:[],path:[]};if(!_3.objPath){if(_1&&_1.getID)_3.objPath=_1.getID();else _3.objPath=""}
if(_0==null){if(isc.isA.Class(_1))_0=_1.getClassName();else if(isc.isAn.Array(_1))_0="Array";else if(isc.isA.Object(_1))_0="Object";else _0="ISC_Auto"}}
if(_1==null)return isc.Comm.$fx(_0,"");if(isc.isA.String(_1)){return isc.Comm.$fx(_0,isc.Comm.$ix(_1))}
if(isc.isA.Function(_1))return null;if(isc.RPCManager.preserveTypes){if(isc.isA.Number(_1)){if(_1.toString().contains("."))
return isc.Comm.$fx(_0,_1,"double");return isc.Comm.$fx(_0,_1,"long")}
if(isc.isA.Boolean(_1))return isc.Comm.$fx(_0,_1,"boolean")}else{if(isc.isA.Number(_1))return isc.Comm.$fx(_0,_1);if(isc.isA.Boolean(_1))return isc.Comm.$fx(_0,_1)}
isc.Comm.$is(_3.objRefs,_1,_3.objPath);if(isc.isA.Function(_1.$fw))return _1.$fw(_0,_2,_3.objRefs,_3.objPath);var _6=_3.isRoot==false?false:true;if(isc.isAn.Array(_1))
return isc.Comm.$iy(_0,_1,_3.objPath,_3.objRefs,_2,_6);if(!_4)_4=[];if(!_5)_5=[];if(isc.isAn.Instance(_1))_0=_1.getClassName();else if(_1._constructor)_0=_1._constructor;var _7=_1.getSerializeableFields?_1.getSerializeableFields(_4,_5):_1;return isc.Comm.$iz(_0,_7,_3.objPath,_3.objRefs,_2,_6)},$iy:function(_0,_1,_2,_3,_4,_5){var _6=isc.Comm.$i0(_0,"List",_5);for(var i=0,_7=_1.length;i<_7;i++){var _8=_1[i];var _9={objRefs:_3,objPath:isc.Comm.$iv(_2,i),isRoot:false};_6=isc.StringBuffer.concat(_6,(_4!=null?isc.StringBuffer.concat("\r",_4,"\t"):""),isc.Comm.$fw("elem",_8,(_4!=null?isc.StringBuffer.concat(_4,"\t"):null),_9))}
_6=isc.StringBuffer.concat(_6,(_4!=null?isc.StringBuffer.concat("\r",_4):""),isc.Comm.$i1(_0));return _6},$i2:function(_0){return _0.match(this.$iw)},$iz:function(_0,_1,_2,_3,_4,_5){var _6=isc.Comm.$i0(_0,"Object",_5);var _7;for(var _8 in _1){if(_8==null)continue;if(_8.startsWith('$'))continue;var _9=_1[_8];if(_9===_7)continue;if(isc.isA.Function(_9))continue;var _10=_8.toString();var _11={objRefs:_3,objPath:isc.Comm.$iv(_2,_8),isRoot:false};_6=isc.StringBuffer.concat(_6,(_4!=null?isc.StringBuffer.concat("\r",_4,"\t"):""),isc.Comm.$fw(_10,_9,(_4!=null?isc.StringBuffer.concat(_4,"\t"):null),_11))}
_6=isc.StringBuffer.concat(_6,(_4!=null?isc.StringBuffer.concat("\r",_4):""),isc.Comm.$i1(_0));return _6},$i0:function(_0,_1,_2){var _3='';if(!this.$i2(_0)){_3=' $i3="'+_0+'"';_0="Object"}
return isc.StringBuffer.concat("<",_0,_3,(_2?" xmlns:xsi=\"http://www.w3.org/2000/10/XMLSchema-instance\"":""),(_1?isc.StringBuffer.concat(" xsi:type=\"xsd:",isc.Comm.$ix(_1),"\">"):">"))},$i1:function(_0){var _1='';if(!this.$i2(_0)){_0="Object"}
return isc.StringBuffer.concat("</",_0,">")},$fx:function(_0,_1,_2){return isc.StringBuffer.concat(isc.Comm.$i0(_0,_2),_1,isc.Comm.$i1(_0))},$ix:function(_0){return _0.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(String.$f0,"&quot;").replace(String.$fz,"&apos;")}});isc.addGlobal("clone",function(object,objPath){var objRefs=[],copy=isc.Comm.$i4(object,(objPath==null?"":objPath),objRefs);if(objRefs.length>0){for(var i=0,len=objRefs.length;i<len;i++){var ref=objRefs[i];if(objPath!=null)eval("var "+objPath+" = copy");eval(ref.dest+"="+ref.source)}}
return copy})
isc.Comm.addClassMethods({clone:isc.clone,$i4:function(_0,_1,_2){if(_0==null)return null;if(isc.isA.Number(_0))return _0;if(isc.isA.Boolean(_0))return _0;if(isc.isA.Function(_0))return _0;if(isc.isA.Date(_0))return new Date(_0.getTime());if(isc.isAn.Array(_0)){return isc.Comm.$i5(_0,_1,_2)}
if(isc.isA.String(_0)){if(_0.startsWith(isc.Comm.BACKREF_PREFIX)){return isc.Comm.$i6(_0.substring(isc.Comm.BACKREF_PREFIX.length),_1,_2)}else if(_0.startsWith(isc.Comm.DATE_PREFIX)){return isc.Comm.$i7(_0.substring(isc.Comm.DATE_PREFIX.length))}else if(_0.startsWith(isc.Time.TIME_PREFIX)){return isc.Time.parseTime(_0)}else{return _0}}
if(isc.isA.Function(_0.clone))return _0.clone();return isc.Comm.$i8(_0,_1,_2)},$i6:function(_0,_1,_2){_2.add({dest:_1,source:_0});return null},$i7:function(_0){var _1=null;var _2=isc.Comm.$iq.exec(_0);if(_2){_1=new Date(parseInt(_2[1],10),parseInt(_2[2],10)-1,parseInt(_2[3],10),parseInt(_2[4],10),parseInt(_2[5],10),parseInt(_2[6],10))}else{_2=isc.Comm.$ip.exec(_0);if(_2){_1=new Date(parseInt(_2[1],10),parseInt(_2[2],10)-1,parseInt(_2[3],10))}else{_1=new Date(_0)}}
if(isNaN(_1))return null;return _1},$i5:function(_0,_1,_2){var _3=[];for(var i=0,_4=_0.length;i<_4;i++){_3[i]=isc.Comm.$i4(_0[i],isc.Comm.$iv(_1,i),_2)}
return _3},$i8:function(_0,_1,_2){var _3={};for(var _4 in _0){var _5=_0[_4];_3[_4]=isc.Comm.$i4(_5,isc.Comm.$iv(_1,_4.toString()),_2)}
return _3}});isc.ClassFactory.defineClass("Timer");isc.Timer.addClassProperties({$i9:null,listEvent:{action:null,iterationInterval:null,iterationsRemaining:0,$ja:null,$jb:null},MSEC:1,SEC:1000,MIN:60000,HOUR:3600000,DEFAULT_TIMEOUT_LENGTH:100,$jc:null,tempFunctionNumber:0});isc.Timer.addClassMethods({setTimeout:function(_0,_1,_2){if(_0==null)return;if(_0.action!=null){_1=_0.delay;_2=_0.units;_0=_0.action}
if(_2==null)_2=isc.Timer.MSEC;if(_1==null)_1=isc.Timer.DEFAULT_TIMEOUT_LENGTH;_1=_1*_2;if(isc.isA.Function(_0)){var _3="$jd"+isc.Timer.tempFunctionNumber++;window[_3]=_0;_0=_3+"();window."+_3+"=null"}
return setTimeout(_0,_1)},clear:function(_0){if(isc.isAn.Array(_0))
for(var i=0;i<_0.length;i++)clearTimeout(_0[i]);else clearTimeout(_0);return null}});isc.Page.addClassProperties({$je:{},$jf:0,FIRE_ONCE:"once",$jg:{}});isc.Page.addClassMethods({setEvent:function(_0,_1,_2,_3){if(isc.isA.String(_1)){_1=Function.expressionToFunction("target,eventInfo",_1)}
if(this.logIsDebugEnabled()){this.logDebug("setEvent("+_0+"): action => "+(isc.isA.Function(_1)&&(_1.getShortBody!=null)?_1.getShortBody():_1))}
var _4=isc.Page.$jf++,_5={action:_1,functionName:_3,fireStyle:_2,ID:_4};var _6=this.$je;if(_6[_0]==null)_6[_0]=[];_6[_0].add(_5);if(_0=="idle"){isc.EventHandler.startIdleTimer()}
return _4},clearEvent:function(_0,ID){if(ID==null){this.$je[_0]=[]}else{this.$je[_0].removeWhere("ID",ID)}},handleEvent:function(_0,_1,_2){if(_1=="unload")isc.Canvas.$jh();var _3=isc.Page.$je[_1];if(_3==null||_3.length==0)return true;var _4="page"+_1.charAt(0).toUpperCase()+_1.substring(1);var _5=true;for(var i=0,_6=_3.length;_5&&(i<_6);i++){var _7=_3[i];if(!_7)continue;if(_7.fireStyle==isc.Page.FIRE_ONCE)_3[i]=null;if(this.logIsDebugEnabled()){this.logDebug("handleEvent("+_1+"): firing action => "+(_7.action.getShortBody!=null?_7.action.getShortBody():_7.action))}
if(isc.isA.Function(_7.action)){_5=(_7.action(_0,_2)!=false)}else{var _8=_7.functionName||_4;if(isc.isA.Function(_7.action[_8])){_5=(_7.action[_8](_0,_2)!=false)}}}
this.$je[_1].removeEmpty();return _5},actionsArePendingForEvent:function(_0){return(this.$je[_0]&&this.$je[_0].length!=0)},registerKey:function(_0,_1,_2){if(_0==null||_1==null)return;var _3=_0,_4,_5,_6,_7;if(isc.isAn.Object(_0)){_3=_0.keyName;_4=_0.ctrlKey;_5=_0.shiftKey;_6=_0.altKey;_7=_0.metaKey}
if(_3.length==1)_3=_3.toUpperCase();var _8=false;for(var i in isc.EH.$ji){if(isc.EH.$ji[i]==_3){_8=true;break}}
if(!_8){this.logWarn("Page.registerKey() passed unrecognized key name '"+_0+"'. Not registering","events");return}
var _9=this.$jg;if(!_9[_3])_9[_3]=[];_9[_3].add({target:_2,action:_1,ctrlKey:_4,shiftKey:_5,altKey:_6,metaKey:_7})},unregisterKey:function(_0,_1){if(!this.$jg[_0]){isc.Log.logInfo("Page.unregisterKey(): No events registered for key '"+_0+"'.","events");return false}
this.$jg[_0].removeWhere("target",_1)},handleKeyPress:function(){var _0=isc.EH,_1=_0.getKey(),_2=this.$jg;if(!_2[_1])return true;var _3=_2[_1],_4=_3.length,_5=true;for(var i=0;i<_4;i++){var _6=_3[i];if(_6.ctrlKey!=null&&_6.ctrlKey!=_0.ctrlKeyDown())continue;if(_6.altKey!=null&&_6.altKey!=_0.altKeyDown())continue;if(_6.shiftKey!=null&&_6.shiftKey!=_0.shiftKeyDown())continue;if(_6.metaKey!=null&&_6.metaKey!=_0.metaKeyDown())continue;if(isc.isA.String(_6.action)){Function.replaceStringWithMethod(_6,"action","key,target")}
_5=((_6.action(_1,_6.target)!=false)&&_5)}
return _5}});if(isc.Browser.isMoz){isc.Page.width=window.innerWidth;isc.Page.height=window.innerHeight;isc.Page.setEvent("resize","isc.Page.width=window.innerWidth;isc.Page.height=window.innerHeight;")}
isc.ClassFactory.defineClass("isc.EventHandler");isc.EH=isc.EventHandler;isc.EventHandler.addClassProperties({lastEvent:{},$jj:[],$jk:[],passThroughEvents:true,maskNativeTargets:true,STILL_DOWN_DELAY:100,DOUBLE_CLICK_DELAY:(isc.Browser.isMac?1200:500),IDLE_DELAY:10,STOP_BUBBLING:"***STOP***",ALL_EDGES:["T","L","B","R","TL","TR","BL","BR"],eventTypes:{MOUSE_DOWN:"mouseDown",RIGHT_MOUSE_DOWN:"rightMouseDown",MOUSE_MOVE:"mouseMove",MOUSE_UP:"mouseUp",SHOW_CONTEXT_MENU:"showContextMenu",CLICK:"click",DOUBLE_CLICK:"doubleClick",MOUSE_OUT:"mouseOut",MOUSE_STILL_DOWN:"mouseStillDown",MOUSE_OVER:"mouseOver",SET_DRAG_TRACKER:"setDragTracker",GET_DRAG_DATA:"getDragData",RELEASE_DRAG_DATA:"releaseDragData",DRAG_START:"dragStart",DRAG_STOP:"dragStop",DRAG_MOVE:"dragMove",DRAG_OUT:"dragOut",DRAG_REPOSITION_START:"dragRepositionStart",DRAG_REPOSITION_MOVE:"dragRepositionMove",DRAG_REPOSITION_STOP:"dragRepositionStop",DRAG_RESIZE_START:"dragResizeStart",DRAG_RESIZE_MOVE:"dragResizeMove",DRAG_RESIZE_STOP:"dragResizeStop",DROP_OVER:"dropOver",DROP_MOVE:"dropMove",DROP_OUT:"dropOut",DROP:"drop",KEY_DOWN:"keyDown",KEY_UP:"keyUp",KEY_PRESS:"keyPress",MOUSE_WHEEL:"mouseWheel",SELECT_START:"selectStart",IDLE:"idle",LOAD:"load",UNLOAD:"unload",RESIZE:"resize"},$jl:{mousemove:"mouseMove",mousedown:"mouseDown",mouseup:"mouseUp",mousewheel:"mouseWheel",mouseMove:"mouseMove",mouseDown:"mouseDown",mouseUp:"mouseUp",mouseWheel:"mouseWheel"},$jm:"event,eventInfo",DRAG_RESIZE:"dragResize",DRAG_REPOSITION:"dragReposition",DRAG:"drag",NONE:"none",TRACKER:"tracker",TARGET:"target",OUTLINE:"outline",INTERSECT_WITH_MOUSE:"mouse",INTERSECT_WITH_RECT:"rect",$jn:"keypress,keydown,keyup",$jo:{A:true,AREA:true},$jp:{INPUT:true,TEXTAREA:true,SELECT:true,OPTION:true},$jq:{keydown:"keyDown",keyup:"keyUp",keypress:"keyPress"},$jr:{Tab:9,Shift:16,Ctrl:17,Alt:18,Pause_Break:19,Caps_Lock:20,Page_Up:33,Page_Down:34,End:35,Home:36,Arrow_Left:37,Arrow_Up:38,Arrow_Right:39,Arrow_Down:40,Insert:45,Delete:46,Meta:91,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123,Num_Lock:144,Scroll_Lock:145},$ji:{'0':'$js','8':'Backspace','9':'Tab','13':'Enter','16':'Shift','17':'Ctrl','18':'Alt','19':'Pause_Break','20':'Caps_Lock','27':'Escape','32':'Space','33':'Page_Up','34':'Page_Down','35':'End','36':'Home','37':'Arrow_Left','38':'Arrow_Up','39':'Arrow_Right','40':'Arrow_Down','44':'Print_Screen','45':'Insert','46':'Delete','48':'0',"49":"1","50":"2","51":"3","52":"4","53":"5","54":"6","55":"7","56":"8","57":"9",'65':'A','66':'B','67':'C','68':'D','69':'E','70':'F','71':'G','72':'H','73':'I','74':'J','75':'K','76':'L','77':'M','78':'N','79':'O','80':'P','81':'Q','82':'R','83':'S','84':'T','85':'U','86':'V','87':'W','88':'X','89':'Y','90':'Z','91':'Meta','92':'Meta','93':'Menu','96':'0','97':'1','98':'2','99':'3','100':'4','101':'5','102':'6','103':'7','104':'8','105':'9','106':'*','107':'+','109':'-','110':'.','111':'/','112':'f1','113':'f2','114':'f3','115':'f4','116':'f5','117':'f6','118':'f7','119':'f8','120':'f9','121':'f10','122':'f11','123':'f12','144':'Num_Lock','145':'Scroll_Lock','160':'Shift','161':'Shift','162':'Ctrl','163':'Ctrl','164':'Alt','165':'Alt','186':';','187':'=','188':',','189':'-','190':'.','191':'/','192':'`','219':'[','220':'\\','221':']','222':"'"},$jt:{'8':'Backspace','9':'Tab','13':'Enter','27':'Escape','32':'Space','33':'1','34':"'",'35':'3','36':'4','37':'5','38':'7','39':"'",'40':'9','41':'0','42':'8','43':'=','44':',','45':'-','46':'.','47':'/','48':'0','49':'1','50':'2','51':'3','52':'4','53':'5','54':'6','55':'7','56':'8','57':'9','58':';','59':';','60':',','61':'=','62':'.','63':'/','64':'2','65':'A','66':'B','67':'C','68':'D','69':'E','70':'F','71':'G','72':'H','73':'I','74':'J','75':'K','76':'L','77':'M','78':'N','79':'O','80':'P','81':'Q','82':'R','83':'S','84':'T','85':'U','86':'V','87':'W','88':'X','89':'Y','90':'Z','91':'[','92':'\\','93':']','94':'6','95':'-','96':'`','97':'A','98':'B','99':'C','100':'D','101':'E','102':'F','103':'G','104':'H','105':'I','106':'J','107':'K','108':'L','109':'M','110':'N','111':'O','112':'P','113':'Q','114':'R','115':'S','116':'T','117':'U','118':'V','119':'W','120':'X','121':'Y','122':'Z','123':'[','124':'\\','125':']','126':'`'},$ju:{'3':"Enter",'25':"Tab",'63232':"Arrow_Up",'63233':"Arrow_Down",'63234':"Arrow_Left",'63235':"Arrow_Right",'64236':"f1",'64237':"f2",'64238':"f3",'64239':"f4",'64240':"f5",'64241':"f6",'64242':"f7",'64243':"f8",'64244':"f9",'64245':"f10",'64246':"f11",'63247':"f12",'63273':"Home",'63275':"End",'63276':"Page_Up",'63277':"Page_Down"},$jv:{},$jw:{ID:"isc_dragTracker",width:10,height:10,offsetX:-10,offsetY:-10,visibility:"hidden",overflow:"visible",cursor:"arrow"},$jx:{ID:"isc_dropBorder",_constructor:"Canvas",className:(!isc.Browser.isNav?"dropBorder":null),visibility:"hidden",doNotDestroy:true},dynamicBackMask:true});isc.EventHandler.addClassProperties(isc.EventHandler.eventTypes);isc.EventHandler.addClassMethods({handleSyntheticEvent:function(_0){var _1=_0.target;if(_1){_0.clientX+=_1.getPageLeft();_0.clientY+=_1.getPageTop();if(isc.Browser.isIE){_0.clientX+=_1.getLeftMargin()+_1.getLeftBorderSize()+_1.getLeftPadding()+2;_0.clientY+=_1.getTopMargin()+_1.getRightBorderSize()+_1.getTopPadding()+2}
switch(_0.type){case"mouseup":this.handleMouseUp(_0);break;case"mousedown":this.handleMouseDown(_0);break;case"mousemove":this.handleMouseMove(_0);break}}},handleEvent:function(_0,_1,_2){var _3=isc.EH;if(isc.Page.handleEvent(_0,_1,_2)==false)return false;if(_3.targetIsEnabled(_0)&&_3.bubbleEvent(_0,_1,_2)==false){return false}
return true},handleLoad:function(_0){return(isc.Page.handleEvent(null,isc.EH.LOAD)!=false)},handleUnload:function(_0){var _1=isc.EH;var _2=(isc.Page.handleEvent(null,_1.UNLOAD)!=false);return _2},$jy:function(_0){if(!isc.Page.isLoaded())return false;var _1=isc.EH;if(isc.Browser.isIE&&_1.suppressNextKeyEvent==true){_1.suppressNextKeyEvent=null;return false}
var _2=_1.lastEvent;if(!_0)_0=_1.getWindow().event;_1.getKeyEventProperties(_0);if(_1.eventHandledNatively(_0.type,_2.nativeKeyTarget)){return true}
return _1.handleKeyDown()},handleKeyDown:function(_0){var _1=isc.EH,_2=_1.lastEvent;if(_0!=null){isc.addProperties(_2,_0)}
var _3=[_2,_2.target,_2.keyName],_4=true,_5=false;if(_1.$jz==_2.keyName){_4=_1.handleKeyPress(_0);_5=true}
if(_1.targetIsEnabled(_2.keyTarget)&&_4!=false)
_4=(_1.bubbleEvent(_2.keyTarget,_1.KEY_DOWN,_3)!=false);_1.$jz=_2.keyName;if(_4!=false&&isc.Browser.isIE&&!_5&&_1.$jr[_2.keyName]!=null)
{_4=_1.handleKeyPress(_0)}
return _4},$j0:function(_0){if(!isc.Page.isLoaded())return false;var _1=isc.EH,_2=_1.lastEvent;if(_1.suppressNextKeyEvent){_1.suppressNextKeyEvent=null;return false}
if(!_0)_0=_1.getWindow().event;_1.getKeyEventProperties(_0);if(_1.eventHandledNatively(_0.type,_2.nativeKeyTarget)){return true}
return _1.handleKeyUp()},handleKeyUp:function(_0){var _1=isc.EH,_2=_1.lastEvent,_3=[_2,_2.target,_2.keyName];var _4=true;if(_1.$jz==_2.keyName){if(_1.handleKeyPress(_0)==false)_4=false}
if(_4!=false){if(_0!=null){isc.addProperties(_2,_0)}
if(_1.targetIsEnabled(_2.keyTarget))
_4=(_1.bubbleEvent(_2.keyTarget,_1.KEY_UP,_3)!=false)}
_1.clearKeyEventProperties();return _4},$j1:function(_0){if(!isc.Page.isLoaded())return false;var _1=isc.EH;if(_1.suppressNextKeyEvent){_1.suppressNextKeyEvent=null;return false}
var _2=_1.lastEvent,_3=_1.KEY_PRESS;if(!_0)_0=_1.getWindow().event;_1.getKeyEventProperties(_0);_2.eventType=_3;var _4=(_1.eventHandledNatively(_3,_2.nativeKeyTarget));if(_4!==false){_1.logDebug("keyPress handled natively");return _4}else{_1.logDebug("keyPress not handled natively")}
return _1.handleKeyPress()},handleKeyPress:function(_0){var _1=isc.EH,_2=_1.lastEvent,_3=_1.KEY_PRESS;if(_0!=null){isc.addProperties(_2,_0)}
var _4={keyName:_2.keyName,characterValue:_2.characterValue};_2.eventType=_3;_1.$jz=null;if(isc.Page.handleEvent(_2.keyTarget,_3)==false)return false;if(_1.targetIsEnabled(_2.keyTarget)){var _5=_1.bubbleEvent(_2.keyTarget,_2.eventType,_4)
if(_5==false)return false}
if(_5!=_1.STOP_BUBBLING&&isc.Page.handleKeyPress()==false)return false;return true},handleMouseDown:function(_0){var _1=isc.EH;_1.$j2=true;var _2=_1.$j3(_0);_1.$j2=false;return _2},$j3:function(_0){if(!isc.Page.isLoaded())return false;var _1=this;_1.$j4=true;var _2=_1.getMouseEventProperties(_0);var _3=_1.$j5,_4=_3!=null&&(_3!=_2.target)&&!_3._useNativeTabIndex&&!_3.$j6&&!(isc.isA.DynamicForm(_3)&&_3.getFocusItem()&&_3.getFocusItem().hasFocus);if(_4){if(isc.Browser.isIE){var _5=_1.$j5.getID();if(_1.$j7==null)
_1.$j7=["if (",_5," && ",_5,".hasFocus)",_5,".blur()"]
else
_1.$j7[1]=_1.$j7[3]=_1.$j7[5]=_5;isc.Timer.setTimeout(_1.$j7.join(isc.emptyString),0)}else{_1.$j5.blur()}}
_1.mouseDownEvent=isc.addProperties({},_2);var _6=_2.target;if(_1.clickMaskClick(_6)==false){_1.$j8=true;return false}else{_1.$j8=false}
var _7=_1.rightButtonDown()?_1.RIGHT_MOUSE_DOWN:_1.MOUSE_DOWN;if(isc.Page.handleEvent(_6,_7)==false)return false;if(_1.eventHandledNatively(_7,_2.nativeTarget)){return true}
if(!_1.targetIsEnabled(_6))return false;if(_6&&!_6.hasFocus){if(((isc.Browser.isMoz&&_6.canSelectText)||isc.Browser.isSafari)&&_6.$j6)
_1.focusInCanvas(_6);else if(!_6._useNativeTabIndex)_6.focus()}
if(_6)_1.prepareForDragging(_6);var _8=_1.bubbleEvent(_6,_7);if(_8==false){delete _1.dragTarget;delete _1.dragTargetLink}
if(_1.rightButtonDown()){if(!isc.Browser.isNav&&!(isc.Browser.isSafari&&(isc.Browser.safariVersion<125)))
return true;if(_6&&(_1.getBubbledProperty(_6,"contextMenu")||_1.getBubbledProperty(_6,"showContextMenu")!=isc.Canvas.getInstanceProperty("showContextMenu")))
{return false}
return true}
if(_8!=false){if(_1.hasEventHandler(_6,_1.MOUSE_STILL_DOWN)){_1.$j9()}}
return(isc.Browser.isNav?false:!!(_6.canSelectText))},stillWithinMouseDownTarget:function(){var _0=this.mouseDownTarget();if(_0){if(isc.Browser.isNav||isc.Browser.isMoz){var x=this.lastEvent.x,y=this.lastEvent.y,_1=_0.visibleAtPoint(x,y,true);if(!_1&&_0.$ka!=null){for(var i=0;i<_0.$ka.length;i++){_1=_0.$ka[i].visibleAtPoint(this.lastEvent.x,this.lastEvent.y,true);if(_1)break}}
return _1}
return(_0==this.lastEvent.target)}
return false},handleMouseMove:function(_0){if(!isc.Page.isLoaded())return false;var _1=isc.EH;if(_1.$j2||_1.$kb)return;var _2=_1.getMouseEventProperties(_0);if((isc.Browser.isNav||isc.Browser.isMoz||isc.Browser.isIE)){if(_1.delayedMouseMoveTimer==null){_1.delayedMouseMoveTimer=isc.Timer.setTimeout("isc.EH.$kc()",0)}
_1.$kd=0;return!isc.Browser.isNav}
var _3=isc.timeStamp();var _4=_1.$ke(_0,_2);_1.$kd=isc.timeStamp()-_3;return _4},$kc:function(){this.delayedMouseMoveTimer=null;this.$ke(null,this.lastEvent)},$ke:function(_0,_1){var _2=this;if(isc.Browser.isIE&&_2.$j4&&_1.buttonNum==0){_2.$j4=false}
var _3=_1.target,_4=_2.eventHandledNatively(_2.MOUSE_MOVE,_1.nativeTarget);if(_2.$kf){_2.handleMouseUp(_0,true)}
if(_2.mouseIsDown()&&_2.dragTarget&&!_2.dragging&&(Math.abs(_1.x-_2.mouseDownEvent.x)>_2.dragTarget.dragStartDistance||Math.abs(_1.y-_2.mouseDownEvent.y)>_2.dragTarget.dragStartDistance))
{_2.handleDragStart(_1)}
if(_2.dragging){return _2.handleDragMove()}
if(_2.rightButtonDown()){if(!isc.Browser.isMac||!_2.ctrlKeyDown())return true}
if(_2.mouseIsDown()){_3=_2.stillWithinMouseDownTarget()?_2.mouseDownTarget():null}else{_3=_1.target}
if(_3!=_2.lastMoveTarget){if(this.logIsDebugEnabled()){this.logDebug((_2.lastMoveTarget?"mousing out of "+_2.lastMoveTarget+"  ":"")+(_3?"mousing over "+_3:""))}
if(_2.lastMoveTarget)_2.handleEvent(_2.lastMoveTarget,_2.MOUSE_OUT);if(_3)_2.handleEvent(_3,_2.MOUSE_OVER);_2.lastMoveTarget=_3}
if(isc.Page.handleEvent(_3,_2.MOUSE_MOVE)==false)return false;if(_4)return true;if(!_2.targetIsEnabled(_3))return false;_2.bubbleEvent(_3,_2.MOUSE_MOVE);if(!isc.Browser.isNav&&_3)_3.$kg();return(isc.Browser.isNav?false:!!(_3.canSelectText))},handleNativeMouseOut:function(_0){if(isc.Browser==null)return;var _1=isc.EH;if(_1.$j2||_1.$kb)return;var _2=(_0?_0:_1.getWindow().event),_3=(isc.Browser.isDOM?_2.target:_2.srcElement),_4=false;if(isc.Browser.isIE){_4=(_2.toElement==null)}else{_4=(_2.relatedTarget==null)}
if(_4&&_1.lastMoveTarget!=null){_1.$kh(_2);_1.handleEvent(_1.lastMoveTarget,_1.MOUSE_OUT);_1.lastMoveTarget=null}},$kh:function(_0){var _1=isc.EH;var _2=_1.lastEvent;if(isc.Browser.isIE){_2.nativeTarget=_0.toElement}else{_2.nativeTarget=_0.relatedTarget}
if(_2.nativeTarget==null)_2.target=null
else _2.target=this.getEventTargetCanvas(_0,_2.nativeTarget)},$j9:function(_0){if(!isc.Page.isLoaded())return false;var _1=this;_1.$ki=isc.Timer.clear(_1.$ki);if(!_1.mouseIsDown())return false;if(_1.bubbleEvent(_1.mouseDownTarget(),_1.MOUSE_STILL_DOWN)==false)return false;var _2=_1.mouseDownTarget(),_3=this.$j2?_2.mouseStillDownInitialDelay:_2.mouseStillDownDelay;_1.$ki=isc.Timer.setTimeout("isc.EH.$j9()",_3);return true},handleMouseUp:function(_0,_1){var _2=isc.EH;if(!_1)_2.$kb=true;var _3=_2.$kj(_0,_1);_2.$kb=false;if(isc.Browser.isSafari)_3=true;return _3},$kj:function(_0,_1){if(!isc.Page.isLoaded())return false;var _2=this,_3=(!_1?_2.getMouseEventProperties(_0):_2.lastEvent),_4=false;_2.$j4=false;delete _2.$kk;_2.$ki=isc.Timer.clear(_2.$ki);var _5=_2.$kl;if(_5){_5.focus();_2.$kl=null}
var _6=_2.$j8;_2.$j8=null;if(_6==null){_6=(_2.clickMaskClick(_3.target)==false)}
if(_6==true){if(_2.logIsDebugEnabled())_2.logDebug("mouseUp cancelled by clickMask");return false}
var _7=false;if(_2.dragging){_7=_2.handleDragStop()}
if(_2.rightButtonDown(_3)){if(isc.Browser.isNav4||(isc.Browser.isSafari&&(isc.Browser.safariVersion<125))){_2.handleContextMenu()}
_2.$kk=false}else{if(!_7){if(isc.Page.handleEvent(_3.target,_2.MOUSE_UP)!=false){_4=_2.eventHandledNatively(_2.MOUSE_UP,_3.nativeTarget);var _8=true;if(!_4&&_2.stillWithinMouseDownTarget()){var _9=_2.mouseDownTarget();if(_2.targetIsEnabled(_9)){_8=_2.bubbleEvent(_9,_2.MOUSE_UP)}}
if(_8!=false){_2.$kk=_2.handleClick(_3.target)}}}}
delete _2.redrawnWhileDown;_2.clearDragProperties();if(_2.$kf)_2.$kf=false;return(_4&&_2.$kk==true)},clearDragProperties:function(){var _0=this;_0.dragging=false;delete _0.dragTarget;delete _0.dragTargetStartRect;delete _0.dragTargetLink;delete _0.dragMoveTarget;delete _0.dragMoveAction;delete _0.dragOperation;delete _0.dragAppearance;delete _0.dropTarget;delete _0.lastDropTarget},handleContextMenu:function(){if(!isc.Page.isLoaded())return false;var _0=isc.EH;_0.$kb=true;var _1=_0.$km();_0.$kb=false;return _1},$km:function(){var _0=this,_1=_0.lastEvent,_2=_1.target;if(isc.Page.handleEvent(_2,_0.SHOW_CONTEXT_MENU)==false)return false;var _3=true;if(_0.targetIsEnabled(_2)){_3=_0.bubbleEvent(_2,_0.SHOW_CONTEXT_MENU)}
if(_3!=false){if(_0.lastMoveTarget)_0.handleEvent(_0.lastMoveTarget,_0.MOUSE_OUT);delete _0.lastMoveTarget}
return _3},handleNativeClick:function(){var _0=isc.EH,_1=(_0.$kk!=false);delete _0.$kk},handleClick:function(_0,_1){if(!isc.Page.isLoaded())return false;var _2=this,_3=_2.lastEvent;if(!_1)_1=(_2.isDoubleClick(_0)?_2.DOUBLE_CLICK:_2.CLICK);if(isc.Page.handleEvent(_0,_1)==false)return false;if(_2.eventHandledNatively(_1,_3.nativeTarget)){return true}
if(!_2.targetIsEnabled(_0))return false;if(!_2.stillWithinMouseDownTarget())return false;var _0=_2.mouseDownTarget();_2.bubbleEvent(_0,_1);return false},isDoubleClick:function(_0){var _1=this,_0=_0||_1.lastEvent.nativeTarget,_2=isc.timeStamp(),_3=((_2-_1.lastClickTime)<_1.DOUBLE_CLICK_DELAY);_1.lastClickTime=_2;if(!_3){delete _1.lastClickTarget}
var _4=(_0==_1.lastClickTarget);_1.lastClickTarget=_0;if(_4)_1.lastClickTarget=null;return _4},targetIsEnabled:function(_0){if(!_0)return false;if(isc.isA.Function(_0.isEnabled))return _0.isEnabled();return true},getFocusCanvas:function(){return this.$j5},$kn:function(_0,_1){if(!this.logIsDebugEnabled("nativeFocus"))return;var _2=isc.$d3;if(isc.Browser.isIE){var _3=this.getDocument().activeElement;_2=", activeElement: "+(_3.id||_3.tagName)}
this.logDebug((_1?"onfocus":"onblur")+" fired on: "+_0+_2,"nativeFocus")},blurFocusCanvas:function(_0,_1){var _2=this.$ko;if(_1){this.$kp("BLR");this.$kn(_0);isc.EH.$kq=null}
this.$kr(_0,_1);if(_1)this.$ko=_2},$kr:function(_0,_1){if(this.$j5){var _2=this.$j5;if(_0!=null&&_2!=_0)return;this.$j5=null;_2.$ks(false)}},focusInCanvas:function(_0,_1){var _2=this.$ko;if(_1){this.$kp("FCS");this.$kn(_0,true);isc.EH.$kt=null}
this.$ku(_0,_1);if(_1)this.$ko=_2},$ku:function(_0,_1){if(!_0||_0.hasFocus||!_0.$kv()||!_0.isEnabled())return;if(_1&&isc.Browser.isMoz){if(_0.parentElement)_0.parentElement.$kw(null,true)}
if(this.$j5)this.$j5.$ks(false)
this.$j5=_0;_0.$ks(true);if(this.targetIsMasked(_0)){var _2=this.clickMaskRegistry.last();_2.$kx=_0}},prepareForDragging:function(_0){var _1=this;if(_1.dragging)_1.handleDragStop();delete _1.dragMoveAction;delete _1.dragTarget;_1.bubbleEvent(_0,"prepareForDragging");if(!_1.dragTarget){if(this.logIsDebugEnabled())this.logDebug("No dragTarget, not dragging");return}
if(_0.dragTarget){if(isc.isA.Canvas(_0.dragTarget)){_1.dragTarget=_0.dragTarget}else if(_0.dragTarget=="top"&&_0.topElement){_1.dragTarget=_0.topElement}else if(_0.dragTarget=="parent"&&_0.parentElement){_1.dragTarget=_0.parentElement}else{this.logWarn('prepareForDragging():  target.dragTarget not understood : '+_0.dragTarget)}}
this.logInfo("target is draggable with dragOperation: "+_1.dragOperation+", dragTarget is : "+_1.dragTarget+(_1.dragTarget!=_0?" (delegated from: "+_0+")":""),"dragDrop");_1.dragTargetStartRect=_1.dragTarget.getRect()},handleDragStart:function(){var _0=this,_1=_0.lastEvent;if(!_0.mouseIsDown()||!_0.dragTarget)return false;delete _0.dropTarget;delete _0.dragMoveTarget;_0.dragOffsetX=-10;_0.dragOffsetY=-10;_0.handleEvent(_0.lastMoveTarget,_0.MOUSE_OUT);if(_0.lastMoveTarget!=_0.mouseDownTarget()){_0.handleEvent(_0.mouseDownTarget(),_0.MOUSE_OUT)}
var _2=_0.dragOperation+"Start";if(_0.handleEvent(_0.dragTarget,_2)==false){this.logInfo("drag cancelled by false return from: "+_2+" on "+_0.dragTarget,"dragDrop");delete _0.dragTarget;delete _0.dragTargetLink;_0.handleEvent(_0.dragTarget,_0.MOUSE_OVER);return false}
delete _0.lastMoveTarget;_0.dragStartOffsetX=_0.mouseDownEvent.x-_0.dragTarget.getPageLeft();_0.dragStartOffsetY=_0.mouseDownEvent.y-_0.dragTarget.getPageTop();if(_0.dragTarget.dragAppearance!=_0.TRACKER)
{_0.dragOffsetX=_0.dragStartOffsetX;_0.dragOffsetY=_0.dragStartOffsetY}
_0.showEventMasks((_0.dragOperation==_0.DRAG_RESIZE));_0.dragAppearance=_0.dragTarget.dragAppearance;if(_0.dragAppearance==_0.TRACKER){_0.dragMoveTarget=_0.$ky();if(!_0.dragMoveAction)_0.dragMoveAction=_0.$kz;_0.dragTracker.setOverflow(isc.Canvas.VISIBLE);_0.bubbleEvent(_0.dragTarget,_0.SET_DRAG_TRACKER);_0.dragOffsetX=_0.dragTracker.offsetX;_0.dragOffsetY=_0.dragTracker.offsetY}else if(_0.dragAppearance==_0.OUTLINE){_0.dragMoveTarget=_0.getDragOutline(_0.dragTarget);if(!_0.dragMoveAction)_0.dragMoveAction=_0.$kz}else if(_0.dragAppearance==_0.TARGET){_0.dragMoveTarget=_0.dragTarget;if(!_0.dragMoveAction)_0.dragMoveAction=_0.$kz}else{}
if(_0.dragMoveTarget){if(_0.dragMoveTarget!=_0.dragTarget){_0.dragMoveTarget.dragIntersectStyle=_0.dragTarget.dragIntersectStyle}
_0.dragMoveTarget.show();_0.dragMoveTarget.bringToFront();if((isc.Browser.isIE||isc.Browser.isMoz)&&_0.dragAppearance!=_0.OUTLINE&&!(_0.dragMoveTarget.$k0||_0.dragMoveTarget.neverBackMask))
{var _3=_0.dragMoveTarget;var _4=[];if(isc.BrowserPlugin){var _5=isc.BrowserPlugin.instances;for(var i=0;i<_5.length;i++){var _6=_5[i];if(_6.isVisible()&&(_3.parentElement==null||_3.parentElement.isAncestorOf(_6)))
{_4.add({instance:_6,rect:_6.getPageRect()})}}}
if(isc.Browser.isIE&&isc.Browser.minorVersion>=5.5&&isc.NativeSelectItem){var _7=isc.NativeSelectItem.instances;for(var i=0;i<_7.length;i++){var _8=_7[i];if(_8.isVisible()&&(_3.parentElement==null||_3.parentElement.isAncestorOf(_8.containerWidget)))
{_4.add({instance:_8,rect:_8.getPageRect()})}}}
if(_4.length>0&&_0.dynamicBackMask===false){this.$k1(_0.dragMoveTarget)}else{_0.$k2=_4}}}
_0.dragging=true;this.logInfo("Started dragOperation: "+_0.dragOperation+" with dragTarget: "+_0.dragTarget+" dragAppearance: "+_0.dragAppearance,"dragDrop");return true},$k1:function(_0){if(_0._backMask){if(!_0._backMask.isVisible())_0._backMask.show()}else{_0.makeBackMask({$k3:true})}},$k4:function(_0){if(_0._backMask&&_0._backMask.$k3&&_0._backMask.isVisible())
{_0._backMask.hide()}},handleDragMove:function(){var _0=this,_1=_0.lastEvent;_0.dropTarget=_0.getDropTarget(_1);if(_0.handleEvent(_0.dragTarget,_0.dragOperation+"Move")==false){delete _0.dropTarget;return false}
if(_0.$k2){var _2=false;var _3=_0.dragMoveTarget.getRect();for(var i=0;i<_0.$k2.length;i++){var _4=_0.$k2[i];if(isc.Canvas.rectsIntersect(_4.rect,_3))
{_0.$k5=_4.instance;_2=true;break}}
if(_0.$k5){if(_0.$k5.repaint)_0.$k5.repaint()}
if(_2){this.$k1(_0.dragMoveTarget)}else{this.$k4(_0.dragMoveTarget);delete _0.$k5}}
if(_0.dragMoveAction)_0.dragMoveAction();if(_0.dropTarget!=_0.lastDropTarget){this.logDebug("New drop target: "+_0.dropTarget,"dragDrop");if(_0.lastDropTarget){_0.handleEvent(_0.lastDropTarget,_0.DROP_OUT);_0.hideDropBorder()}
if(_0.dropTarget){_0.handleEvent(_0.dropTarget,_0.DROP_OVER);_0.showDropBorder(_0.dropTarget)}
_0.lastDropTarget=_0.dropTarget}
if(_0.dropTarget){_0.handleEvent(_0.dropTarget,_0.DROP_MOVE)}
if(!(_0.dragTarget.scrollbar!=null&&_0.dragTarget.scrollbar.thumb==_0.dragTarget)){var _5=[];for(var i=0;i<isc.Canvas._canvasList.length;i++){if((isc.Canvas._canvasList[i].hscrollOn||isc.Canvas._canvasList[i].vscrollOn)&&isc.Canvas._canvasList[i].isDrawn()&&isc.Canvas._canvasList[i].isVisible()&&isc.Canvas._canvasList[i].shouldDragScroll()){_5.add(isc.Canvas._canvasList[i])}}
var _1=_0.lastEvent,_6=_1.x,_7=_1.y,_8=[];for(var i=0;i<_5.length;i++){if(_5[i].visibleAtPoint(_6,_7,false,[_0.dragMoveTarget,_0.dragTarget]))
_8.add(_5[i])}
if(_8.length>0){var _9;for(var i=0;i<_8.length;i++){if(_8[i].$k6()){if(_9==null||_9.isAncestorOf(_8[i]))
_9=_8[i]}}
if(_9!=null)_9.$k7()}}
return false},handleDragStop:function(){var _0=this,_1=_0.lastEvent,_2=false;_0.dragging=false;this.logInfo("end of drag interaction","dragDrop");_0.dragOffsetX=_0.dragOffsetY=0;if(_0.dragMoveTarget&&(_0.dragMoveTarget==_0.dragTracker||_0.dragMoveTarget==_0.dragOutline))
{_0.dragMoveTarget.hide()}
_0.hideDropBorder();if(_0.dragMoveTarget&&_0.dragMoveTarget._backMask&&_0.dragMoveTarget._backMask.$k3)
{_0.dragMoveTarget._backMask.destroy();delete _0.dragMoveTarget._backMask}
if(_0.$k2)delete _0.$k2;if(_0.$k5){if(_0.$k5.repaint)_0.$k5.repaint();delete _0.$k5}
if(_0.dropTarget){_0.handleEvent(_0.dropTarget,_0.DROP_OUT);if(_0.dropTarget.willAcceptDrop())_0.handleEvent(_0.dropTarget,_0.DROP);_2=true}
if(_0.handleEvent(_0.dragTarget,_0.dragOperation+"Stop")!=false){_2=true;var _3=_0.dragTarget==_0.dragMoveTarget;if(_0.dragOperation==_0.DRAG_RESIZE){if(!_3){_0.dragTarget.setPageRect(_0.dragMoveTarget.getPageLeft(),_0.dragMoveTarget.getPageTop(),_0.dragMoveTarget.getWidth(),_0.dragMoveTarget.getHeight())}
_0.dragTarget.dragResized()}else if(_0.dragOperation==_0.DRAG_REPOSITION){if(!_3){_0.dragTarget.setPageRect(_0.dragMoveTarget.getPageLeft(),_0.dragMoveTarget.getPageTop());_0.dragTarget.bringToFront()}
_0.dragTarget.dragRepositioned()}}else{if(_0.dragOperation==_0.DRAG_RESIZE){if(_0.dragTarget==_0.dragMoveTarget){_0.dragTarget.setRect(_0.dragTargetStartRect)}}else if(_0.dragOperation==_0.DRAG_REPOSITION){if(_0.dragTarget==_0.dragMoveTarget){_0.dragTarget.moveTo(_0.dragTargetStartRect[0],_0.dragTargetStartRect[1])}}}
_0.clearDragProperties();_0.hideEventMasks();if(!isc.Browser.isNav){var _4=_0.lastEvent.target;if(_4)_0.handleEvent(_4,_0.MOUSE_OVER);_0.lastMoveTarget=_4}else{_0.lastMoveTarget=null}
return _2},showDropBorder:function(_0){if(!_0||!_0.showDropBorder)return false;var _1=this;_1.makeDropBorder();var _2=_1.$jx;_2.hide();_2.setRect(0,0,1,1);_2.reparent(_0);_2.setPageRect(_0.getPageLeft()-2,_0.getPageTop()-2,_0.getVisibleWidth()+4,_0.getVisibleHeight()+4);_2.moveBelow(_0);_2.show()},hideDropBorder:function(){if(isc.EH.$jx&&isc.EH.$jx.hide)isc.EH.$jx.hide()},makeDropBorder:function(){var _0=this;if(!isc.isA.Canvas(_0.$jx)){if(isc.Canvas.getStyleObject(_0.$jx.className)==null){_0.$jx.backgroundColor="gold"}
_0.$jx=isc.ClassFactory.newInstance(_0.$jx,{visibility:isc.Canvas.HIDDEN,zIndex:0,autoDraw:false});_0.$jx.draw()}},getEventTargetCanvas:function(_0,_1){var _2=this,_3=this.getWindow();if(!_1)_1=(isc.Browser.isIE?_0.srcElement:_0.target);if(!_2.$k8(_1)){return _2.lastTarget}
if(!_1||_1.tagName=="BODY"||_1.tagName=="HTML"){return(_2.lastTarget=null)}
if(isc.Browser.isIE&&_1.parentElement==null){_1=_2.lastTarget}else{var _4="eventProxy";if(isc.Browser.isIE){while(_1!=null){if(_1.eventProxy)break;_1=_1.parentElement}}else{while(_1!=null){if(_1.eventProxy!=null||(_1.hasAttribute!=null&&_1.hasAttribute(_4)))break;_1=_1.parentNode}}
if(!_1)return(_2.lastTarget=null);_1=_3[_1.getAttribute(_4)];while(_1&&_1.eventProxy){if(isc.isA.String(_1.eventProxy)){_1.eventProxy=_3[_1.eventProxy]}
_1=_1.eventProxy}
if(this.logIsInfoEnabled()&&_0.type!="mousemove"&&_0.type!="selectstart")
{if(_1!=null){this.logInfo("Target Canvas for event '"+_0.type+"': "+_1)}else{this.logDebug("No target Canvas for event '"+_0.type+"'")}}
if(_1==_2.dragTracker){_1=_2.lastTarget}
_2.lastTarget=_1}
if(isc.isA.Canvas(_1))return _1;return null},$k8:function(_0){if(!(isc.Browser.isMoz&&_0=="[object Text]"))return true;if(!this.$k9){this.$k9=new Function("$la","try{$la.parentNode}catch(e){return false}return true")}
return this.$k9(_0)},getDropTarget:function(_0){var _1=this;if(!_1.dragTarget||!_1.dragTarget.canDrop||_1.dragOperation==_1.DRAG_RESIZE)return null;var _2=(_1.dragMoveTarget||_1.dragTarget),_3=_1.$jj,_4=[],i=0,_5=_3.length;if(_2.dragIntersectStyle==_1.INTERSECT_WITH_MOUSE){for(;i<_5;i++){var _6=_3[i];if(_6.containsPoint(_0.x,_0.y)&&_6.canAcceptDrop&&_6.isEnabled())
{_4.add(_6)}}}else{for(;i<_5;i++){var _6=_3[i];if(_6.intersects(_2)&&_6.canAcceptDrop&&_6.isEnabled())
{_4.add(_6)}}}
if(_4.length<2)return _4[0];var _7=_4[0];for(var i=1;i<_4.length;i++){var _8=_4[i];if(_7.isAncestorOf(_8)){_7=_8}else if(_2.dragIntersectStyle==_1.INTERSECT_WITH_RECT){var _9=null,_10=_7,_11=_8;while(_9==null){if(_10.parentElement==null){_9=true;_11=_8.topElement||_8}else if(_10.parentElement.isAncestorOf(_8)){_9=_10.parentElement;while(_11.parentElement!=_9){_11=_11.parentElement}}else{_10=_10.parentElement}}
if(_11.getZIndex()>_10.getZIndex()){_7=_8}}}
return _7},registerDroppableItem:function(_0){if(!_0.$lb){this.$jj.add(_0);_0.$lb=true}},unregisterDroppableItem:function(_0){this.$jj.remove(_0);delete _0.$lb},registerMaskableItem:function(_0,_1){if(!this.$jk.contains(_0)){this.$jk.add(_0);if(_1)this.makeEventMask(_0,{eventProxy:_0})}},unregisterMaskableItem:function(_0){this.$jk.remove(_0);_0._eventMask.destroy();delete _0._eventMask},makeEventMask:function(_0,_1,_2){var _3=this.$lc;if(!_3.contents)_3.contents=isc.Canvas.spacerHTML(1600,1200);var _4=isc.Canvas.create({ID:_0.getID()+"_eventMask",cursor:_0.cursor,$ld:_0},_3,_1);_4.setRect(_2?_2:_0.getRect());_0._eventMask=_4;_0.addPeer(_4);return _4},$lc:{autoDraw:false,$le:true,$lf:false,overflow:"hidden",visibility:"hidden",$lg:false,getTarget:function(){return this.$ld},show:function(){var _0=this.masterElement;this.moveAbove(_0);return this.Super("show",arguments)}},showEventMasks:function(_0){var _1=this;if(_0){if(!_1._eventMask)_1._eventMask=_1.makeScreenSpan({ID:"isc_EH_eventMask",mouseDown:function(){this.hide()}});_1._eventMask.show();_1._eventMask.bringToFront()}else{var _2=_1.$jk;for(var i=0;i<_2.length;i++){_2[i].$lh()}}},hideEventMasks:function(){var _0=this;if(_0._eventMask&&_0._eventMask.isVisible()){_0._eventMask.hide()}else{var _1=_0.$jk;for(var i=0;i<_1.length;i++){_1[i].$li()}}},eventHandledNatively:function(_0,_1){var _2=this.$lj(_0,_1);if(_2&&this.logIsDebugEnabled()&&_0!="mouseMove"){this.logDebug(_0+" event on "+this.lastTarget+" handled natively")}
return _2},$lj:function(_0,_1){_0=(_0?_0.toLowerCase():"");var _2=this,_3=_2.lastEvent;if(!_2.$k8(_1)){return true}
if(_2.isMouseEvent(_0)&&_2.lastEvent.target==null&&_2.getEventTargetCanvas(_3,_1)==null)
{return true}
if((this.logIsInfoEnabled()&&_0=="keydown")||(this.logIsDebugEnabled()&&_0.startsWith("key")))
{this.logInfo(_0+" event with Canvas target: "+this.lastEvent.keyTarget+", native target: "+this.echoLeaf(_1))}
if(_2.passThroughEvents&&_1){var _4=_1,_5=_4.handleNativeEvents;if(_5==null){_5=(!_4.focusProxy&&(_4.form!=null||_2.$jp[_4.tagName]!=null||_4.isContentEditable))}else{if(!_2.$lk)_2.$lk="false";if(_5==_2.$lk)_5=false}
if(!_5&&!_0=="mousewheel"){while(_4&&_4.tagName!=_2.BODY_TAG){if(_2.$jo[_4.tagName]!=null){_5=true;break}
_4=_4.parentElement}}
if(_5){if(isc.Browser.isIE&&_2.$jn.contains(_0)){return(_3.nativeKeyCode||true)}else{return true}}}
var _6=_3.target;if(_6&&!_6.showCustomScrollbars&&(_6.vscrollOn||_6.hscrollOn))
{var _7=isc.Canvas.getNativeScrollbarSize();if(_6.isRTL()){if((_6.vscrollOn&&(_3.x<_6.getPageLeft()+_7))||(_6.hscrollOn&&(_3.y>_6.getPageTop()+_6.getHeight()-_7)))
{if(_0==_2.MOUSE_DOWN.toLowerCase())_2.$kf=true;return true}}else{if((_6.vscrollOn&&(_3.x>_6.getPageRight()-_7))||(_6.hscrollOn&&(_3.y>_6.getPageBottom()-_7)))
{if(_0==_2.MOUSE_DOWN.toLowerCase())_2.$kf=true;return true}}}
return false},isMouseEvent:function(_0){_0=_0||this.lastEvent.eventType;if(this.$ll==null){this.$ll={mouseOver:true,mouseover:true,mouseDown:true,mousedown:true,mouseMove:true,mousemove:true,mouseOut:true,mouseout:true,mouseUp:true,mouseup:true,click:true,doubleClick:true,doubleclick:true,showContextMenu:true,showcontextmenu:true,selectStart:true,selectstart:true}}
if(this.$ll[_0])return true;return false},$lm:{mouseMove:true,mouseOver:true,mouseOut:true},bubbleEvent:function(_0,_1,_2){var _3=this,_4=_3.lastEvent;var _5=this.logIsDebugEnabled()&&!this.$lm[_1];if(this.targetIsMasked(_0)&&_1.startsWith("mouse")){if(_5){this.logDebug(_1+" on "+_0+" blocked by clickmask")}
return false}
var _6=this.$ln(_1),_7;while(_0){if(_0.destroyed)break;if(_0[_6]!=null){_7=_6}else if(_0[_1]!=null&&_0[_1]!=isc.Class.NO_OP&&!isc.is.emptyString(_0[_1])){_7=_1;if(isc.isA.String(_0[_1])){_0.convertToMethod(_1)}
if(_5){this.logDebug("Bubbling event '"+_1+"', target '"+_0+"' has handler: "+this.echoLeaf(_0[_1]))}}
if(_0[_7]!=null){var _8;_8=_0[_7](_4,_2);if(_8==false){if(_5){this.logDebug("Bubbling for event '"+_1+"' cancelled via false return value by target: "+_0)}
return false}
if(_8==_3.STOP_BUBBLING){if(_5){this.logDebug("Bubbling for event '"+_1+"' cancelled via STOP_BUBBLING return value by target: "+_0)}
return _3.STOP_BUBBLING}}
_0=(_0.eventParent||_0.parentElement);if(_0&&_0.eventProxy)_0=_0.eventProxy}
if(_5)this.logDebug("Event '"+_1+"' bubbled to top");return true},$ln:function(_0){if(!this.$jv[_0]){this.$jv[_0]="handle"+_0.charAt(0).toUpperCase()+_0.substring(1)}
return this.$jv[_0]},hasEventHandler:function(_0,_1){if(!isc.isAn.Object(_0)||!isc.isA.String(_1)){isc.Log.logWarn("EventHandler.hasEventHandler() passed bad parameters ["+[_0,_1]+"]. returning null;","event");return null}
var _2=this.$ln(_1);if(this.getBubbledProperty(_0,_1)!=null||this.getBubbledProperty(_0,_2)!=null)return true;return false},getBubbledProperty:function(_0,_1){while(_0){if(_0[_1])return _0[_1];_0=(_0.eventParent||_0.parentElement);if(_0&&_0.eventProxy)_0=_0.eventProxy}
return null},handleSelectStart:function(){var _0=isc.EH;var _1=_0.getWindow();if(_1.event&&_1.event.srcElement.form&&!_0.dragging)return true;var _2=_0.mouseDownTarget(),_3=_0.getEventTargetCanvas(_1.event);if(_3==null&&_2==null)return true;if(_3!=null&&_3.canSelectText)return true;return _0.killEvent()},handleNativeDragStart:function(){var _0=isc.EH.mouseDownTarget();if(_0)return!!(_0.canSelectText);if(this.$lo)return this.$lo();if(this.$lp)return this.$lp()},handleResize:function(_0){if(isc.EH.resizeTimer==null){isc.EH.resizeTimer=isc.Timer.setTimeout("isc.EH.$hm()",0)}
return false},$hm:function(){isc.EH.resizeTimer=null;isc.Page.handleEvent(null,isc.EH.RESIZE)},handleMouseWheel:function(_0){var _1=isc.EH;if(!_0)_0=_1.getWindow().event;var _2=(_0.srcElement||_0.target);if(_1.eventHandledNatively(_0.type,_2))return true;_1.getMouseEventProperties(_0);var _3=_1.getEventTargetCanvas(_0);if(_1.bubbleEvent(_3,_1.eventTypes.MOUSE_WHEEL)==false)return false;return true},handleScroll:function(_0){},prepareForLinkDrag:function(_0,_1){this.dragTarget=(isc.isA.String(_0)?this.getWindow()[_0]:_0);this.dragTargetLink=_1;return false},setDragTracker:function(_0,_1,_2,_3,_4){var _5=this.$ky();_1=_1||10;_2=_2||10;_5.resizeTo(_1,_2);_5.setContents(_0);_5.redrawIfDirty("setDragTracker");if(_3)_5.offsetX=_3;if(_4)_5.offsetY=_4},$ky:function(_0){if(!this.dragTracker){var _1=this.$jw;_1.contents=isc.Canvas.imgHTML("black.gif",10,10);this.dragTracker=isc.Canvas.create(_1,_0)}
return this.dragTracker},getDragOutline:function(_0,_1,_2){if(!this.dragOutline){this.dragOutline=isc.Canvas.create({autoDraw:false,overflow:isc.Canvas.HIDDEN})
if(isc.Browser.isIE)this.dragOutline.setContents(isc.Canvas.spacerHTML(1600,1200))}
var _3=this.dragOutline;_3.setBorder((_1||1)+"px solid "+(_2||"black"));_3.setPageRect(_0.getPageLeft(),_0.getPageTop(),_0.getVisibleWidth(),_0.getVisibleHeight());_3.minWidth=_0.minWidth;_3.minHeight=_0.minHeight;_3.maxWidth=_0.maxWidth;_3.maxHeight=_0.maxHeight;if(isc.isAn.Array(_0.keepInParentRect)){_3.keepInParentRect=_0.keepInParentRect}else if(_0.keepInParentRect==true){_3.keepInParentRect=_0.getParentPageRect()}else{_3.keepInParentRect=null}
return _3},$kz:function(){var _0=this;var _1=_0.dragMoveTarget;if(!_1)return true;var _2=(isc.Browser.isMoz&&isc.Browser.geckoVersion<20031007&&!_1.keepInParentRect);if(_2&&(_1.parentElement&&!_1.parentElement.containsPoint(_0.lastEvent.x,_0.lastEvent.y)))
{return true}
_0.dragMoveTarget.moveToEvent(_0.dragOffsetX,_0.dragOffsetY);return true},$lq:function(){var _0=this;if(_0.dragMoveTarget)_0.dragMoveTarget.resizeToEvent(_0.resizeEdge);return true},killEvent:function(){isc.EH.getWindow().event.cancelBubble=true;return false},stopBubbling:function(){return isc.EH.STOP_BUBBLING},startIdleTimer:function(){if(!this.idleTimer){this.idleTimer=isc.Timer.setTimeout("isc.EH.handleIdle()",this.IDLE_DELAY)}},handleIdle:function(){this.idleTimer=null;if(!isc.Page.isLoaded())return this.startIdleTimer();var _0=isc.Page.handleEvent(null,this.IDLE);if(isc.Page.actionsArePendingForEvent(this.IDLE))this.startIdleTimer();return _0},$lr:0,$kp:function(_0){this.$ko=_0+this.$lr++;if(this.$lr>9)this.$lr=0},$ls:function(){this.$ko=null},dispatch:function(_0,_1){if(isc.Browser.isIE)_1=this.getWindow().event;var _2=this[_0](_1);this.$ko=null;return _2},captureEvent:function(_0,_1,_2,_3){var _4=this.getWindow();if(!(isc.Browser.isMacIE&&isc.Browser.version<5)&&_0[_1]!=null){_4.isc.Page.setEvent(_2,_0[_1])}
_0[_1]=_3},captureEvents:function(wd){var _0=this;if(wd==null)wd=this.getWindow();var _1=wd.document;isc.Page.setEvent(_0.LOAD,isc.Page.finishedLoading);if(isc.Browser.isIE){wd.attachEvent("onload",_0.handleLoad)}else if(isc.Browser.isDOM){wd.addEventListener("load",_0.handleLoad,true)}
this.captureEvent(wd,"onunload",_0.UNLOAD,_0.handleUnload);this.captureEvent(wd,"onresize",_0.RESIZE,_0.handleResize);if(isc.Browser.isIE4||isc.Browser.isMacIE){this.captureEvent(_1,"onresize",_0.RESIZE,_0.handleResize)}
this.captureEvent(_1,"onmousedown",_0.MOUSE_DOWN,_0.handleMouseDown);this.captureEvent(_1,"onmousemove",_0.MOUSE_MOVE,_0.handleMouseMove);this.captureEvent(_1,"onmouseup",_0.MOUSE_UP,_0.handleMouseUp);this.captureEvent(_1,"onclick",_0.CLICK,_0.handleNativeClick);this.captureEvent(_1,"ondblClick",_0.DOUBLE_CLICK,_0.handleNativeClick);this.captureEvent(_1,"onscroll","scroll",_0.handleScroll);this.captureEvent(_1,"onmousewheel",_0.MOUSE_WHEEL,_0.handleMouseWheel);this.captureEvent(_1,"onmouseout",_0.MOUSE_OUT,_0.handleNativeMouseOut);this.captureEvent(_1,"oncontextmenu",_0.SHOW_CONTEXT_MENU,_0.handleContextMenu);this.captureEvent(_1,"onselectstart",_0.SELECT_START,_0.handleSelectStart);this.captureEvent(wd,"onselectstart",_0.SELECT_START,_0.handleSelectStart);if(wd.isc_captureKeyEvents!=false){this.captureEvent(_1,"onkeydown",_0.KEY_DOWN,_0.$jy);this.captureEvent(_1,"onkeypress",_0.KEY_PRESS,_0.$j1);this.captureEvent(_1,"onkeyup",_0.KEY_UP,_0.$j0)}
if(isc.Browser.isIE){this.$lp=wd.ondragstart;this.$lo=_1.ondragstart;_1.ondragstart=wd.ondragstart=_0.handleNativeDragStart}
_0.startIdleTimer()},captureKeyEvents:function(){},releaseKeyEvents:function(){},getLastEvent:function(){return this.lastEvent},getEventType:function(_0){return(_0||this.lastEvent).eventType},getTarget:function(_0){return(_0||this.lastEvent).target},getX:function(_0){return(_0||this.lastEvent).x},getY:function(_0){return(_0||this.lastEvent).y},getScreenX:function(_0){return(_0||this.lastEvent).screenX},getScreenY:function(_0){return(_0||this.lastEvent).screenY},mouseIsDown:function(){return(this.$j4)},mouseDownTarget:function(){return(this.mouseDownEvent?this.mouseDownEvent.target:null)},getButtonNum:function(_0){return(_0||this.lastEvent).buttonNum},leftButtonDown:function(_0){return((_0||this.lastEvent).buttonNum==1)},rightButtonDown:function(_0){if(!_0)_0=this.lastEvent;return(_0.buttonNum==2)||(isc.Browser.isMac&&_0.ctrlKey)||(isc.Browser.isSafari&&(isc.Browser.safariVersion<125)&&_0.altKey)},getKeyEventCharacterValue:function(_0){return(_0||this.lastEvent).characterValue},getKeyEventCharacter:function(_0){return String.fromCharCode(this.getKeyEventCharacterValue(_0))},getKey:function(_0){return(_0||this.lastEvent).keyName},shiftKeyDown:function(_0){return(_0||this.lastEvent).shiftKey},ctrlKeyDown:function(_0){return(_0||this.lastEvent).ctrlKey},altKeyDown:function(_0){return(_0||this.lastEvent).altKey},metaKeyDown:function(_0){return(_0||this.lastEvent).metaKey},getMouseEventProperties:(isc.Browser.isIE?function(e){var _0=this.lastEvent;if(!e)e=this.getWindow().event;_0.DOMevent=e;_0.eventType=this.$jl[e.type];_0.y=parseInt(e.clientY)+this.ns.Page.getScrollTop();_0.x=parseInt(e.clientX);if(!isc.Page.isRTL()){_0.x+=this.ns.Page.getScrollLeft()}else{var _1=this.ns.Page.getScrollLeft();if(_1>0){var _2=(this.ns.Page.getScrollWidth()-this.ns.Page.getWidth());_0.x-=(_2-_1)}
_0.x-=15}
_0.nativeTarget=e.srcElement;_0.target=this.getEventTargetCanvas(e,_0.nativeTarget);_0.wheelDelta=e.wheelDelta;_0.screenX=e.screenX;_0.screenY=e.screenY;_0.buttonNum=e.button;return _0}:function(e){var _0=this.lastEvent;_0.DOMevent=e;_0.eventType=this.$jl[e.type];if(isc.Browser.isSafari){_0.x=parseInt(e.x);_0.y=parseInt(e.y)}else{_0.x=parseInt(e.clientX)+isc.Page.getScrollLeft();_0.y=parseInt(e.clientY)+isc.Page.getScrollTop()}
_0.nativeTarget=e.target;_0.target=this.getEventTargetCanvas(e,_0.nativeTarget);_0.screenX=e.screenX;_0.screenY=e.screenY;if(_0.eventType==isc.EH.MOUSE_MOVE){if(!this.$j4)_0.buttonNum=0}else{_0.buttonNum=((e.which==1||isc.Browser.isSafari&&e.which==65536)?1:2)}
_0.shiftKey=(e.shiftKey==true);_0.ctrlKey=(e.ctrlKey==true);_0.altKey=(e.altKey==true);_0.metaKey=(e.metaKey==true);return _0}),getKeyEventProperties:function(e){if(e==null)e=this.getWindow().event;var _0=this.lastEvent;_0.nativeKeyTarget=(e.target||e.srcElement);_0.keyTarget=this.$j5;_0.eventType=this.getKeyEventType(e.type);if(_0.eventType==this.KEY_PRESS){_0.characterValue=this.$lt(e)}
_0.keyName=this.determineEventKeyName(e);_0.nativeKeyCode=e.keyCode;_0.shiftKey=(e.shiftKey==true||(isc.Browser.isMoz&&_0.shiftKey));_0.ctrlKey=(e.ctrlKey==true);_0.altKey=(e.altKey==true);_0.metaKey=(e.metaKey==true)},getKeyEventType:function(_0){if(!_0)return;return this.$jq[_0]},$lt:function(_0){if(isc.Browser.isIE)return(_0.keyCode||null);if(isc.Browser.isMoz||isc.Browser.isNav){return(_0.which||null)}
return(_0.which||_0.keyCode||null)},determineEventKeyName:function(_0){if(_0==null)return;var _1=_0.keyCode,_2=_0.which,_3=isc.EH,_4=_3.getKeyEventType(_0.type);if(isc.Browser.isIE){if(_4==_3.KEY_DOWN||_4==_3.KEY_UP){return _3.$ji[_1]}
if(_4==_3.KEY_PRESS){if(_3.$jz!=null)return _3.$jz;var _5=_3.$jt[_1];if(!_5&&this.getWindow().event.ctrlKey){_5=isc.EH.$lu(_1)}
return _5}}else if(isc.Browser.isMoz){if(_4==_3.KEY_DOWN||_4==_3.KEY_UP){return _3.$ji[_1]}else if(_4==_3.KEY_PRESS){if(_2==0&&_1!=0)return _3.$ji[_1];if(_3.$jz!=null)return _3.$jz;if(_1==0){return _3.$jt[_2]}else{return _3.$ji[_2]}}}else if(isc.Browser.isSafari){if(_4==_3.KEY_DOWN||_4==_3.KEY_UP){return _3.$ji[_1]}
var _6=(_2!=null?_2:_1);if(_6!=null){if(this.getWindow().event.ctrlKey){return(isc.EH.$jt[_6]||isc.EH.$lu(_6))}
var _7=isc.EH.$jt[_6];if(_7==null)_7=isc.EH.$ju[_6]
return _7}}else{var _6=_2;if(_6==null||(_6==0&&_1))_6=_1
if(_6!=null)return isc.EH.$jt[_6]}
isc.Log.logWarn("EventHandler.determineEventKeyName(): Unable to determine key for '"+_0.type+"' event. Returning null");return null},$lu:function(_0){if(_0==30)return"6";if(_0==31)return"-";return String.fromCharCode(_0+64)},clearKeyEventProperties:function(){var _0=this.lastEvent;delete _0.eventType;delete _0.nativeKeyTarget;delete _0.characterValue;delete _0.keyName;delete _0.shiftKey;delete _0.ctrlKey;delete _0.altKey;delete _0.metaKey;delete this.$jz},$lv:0,clickMaskRegistry:[],showClickMask:function(_0,_1,_2,_3){if(_2==null)_2=[];else if(!isc.isAn.Array(_2))_2=[_2]
this.logInfo("showing click mask, action: "+_0+(_1?", autoHide":", ")+(_3?"ID: "+_3:""),"clickMask");var _4=this,_5=_4.clickMaskRegistry;_1=!!_1;if(_4.lastMoveTarget)_4.handleEvent(_4.lastMoveTarget,_4.MOUSE_OUT);delete _4.lastMoveTarget;var _6={autoHide:_1,ID:(_3!=null?_3:"cm_"+_4.$lv++),unmaskedTargets:{}};var _7=_5.last();_5.add(_6);if(_0&&isc.isA.String(_0)){_6.clickAction=Function.expressionToFunction(null,_0)}
var _8=_4.getFocusCanvas();if(_8!=null&&!_2.contains(_8)){_8.blur();_6.$kx=_8}else if(_7!=null){_6.$kx=_7.$kx}
var _9=isc.timeStamp();var _10;if(_7!=null){_10=isc.getKeys(_7.unmaskedTargets)}else{_10=isc.Canvas._canvasList}
if(_10!=null){for(var i=0;i<_10.length;i++){var _11,_12=_11=_10[i];if(isc.isA.String(_12))_12=this.getWindow()[_12];if(_12==null||!isc.isA.Canvas(_12)||_12.destroyed){isc.Log.logWarn("showClickMask - attempting to remove invalid object :"+isc.Log.echo(_11)+" from tab order.  Object came from "+(_10==isc.Canvas._canvasList?"central ISC canvas list":"current top mask 'unmaskedTargets' list"),"clickMask");continue}
if(!_2.contains(_12)){this.$lw(_12);if(!_6.autoHide&&_12.useClickMaskDiv){_12.$lx()}}}}
isc.Log.logDebug("Time to remove "+_10.length+" widgets from tab-order:"+(isc.timeStamp()-_9),"timing")
if(_7==null){if(this.maskNativeTargets){_9=isc.timeStamp();this.showScreenSpan();isc.Log.logDebug("Time to show screen span:"+(isc.timeStamp()-_9),"timing")}}else if(!_6.autoHide){this.$ly(_2)}
if(_2.length>0)this.addUnmaskedTargets(_2,_6.ID);return _6.ID},hideClickMask:function(ID){this.logInfo("hideClickMask called with ID: "+ID,"clickMask");var _0=this.clickMaskRegistry;if(_0.length==0)return;if(ID==null){this.hideClickMask(_0[0].ID)
if(_0.length>0){this.hideClickMask()}else{this.logInfo("all clickmasks hidden","clickMask")}
return}
var _1=_0.find("ID",ID);if(_1==null)return;var _2=_0.indexOf(_1),_3=(_2==(_0.length-1)),_4=(_2>0?_0[_2-1]:null),_5=_1.$kx,_6=_1.unmaskedTargets;if(this.logIsInfoEnabled("clickMask")){var _7="hiding clickMask ID: "+ID;if(_0.length<2){_7+=", all masks hidden"}else{_7+=" with index: "+_2+" of "+(_0.length-1)}
this.logInfo(_7,"clickMask")}
_0.remove(_1);if(_4!=null){if(_6!=null){if(_4.unmaskedTargets==null)_4.unmaskedTargets={};isc.addProperties(_4.unmaskedTargets,_6)}
if(_5&&!_4.unmaskedTargets[_5.getID()])
_4.$kx=_5}
if(_3){if(_4!=null){for(var _8 in _4.unmaskedTargets){var _9=this.getWindow()[_8];if(_9!=null){this.$lz(_9)}}}else{this.$l0()}
if(!_1.autoHide)this.$l1();if(_5!=null&&!this.targetIsMasked(_5)){this.logInfo("focusing in "+_5+" on clickMask hide","clickMask");if(this.lastEvent.eventType==this.MOUSE_DOWN||this.lastEvent.eventType==this.CLICK)
{this.$kl=_5}else{_5.focus()}}}},$ly:function(_0){var _1=[];for(var i=this.clickMaskRegistry.length-2;i>=0;i--){var _2=this.clickMaskRegistry[i]
if(_2.autoHide==false)break;if(i>0){_1.addList(this.clickMaskRegistry[i-1].$l2)}else{_1=isc.Canvas._canvasList}}
for(i=0;i<_1.length;i++){var _3=_1[i];if(_3.useClickMaskDiv&&_3.$l3==null&&_3.isVisible()&&_3.isDrawn()&&!_0.contains(_3))
{_3.$lx()}}},$l1:function(){var _0=false,_1=[];for(var i=this.clickMaskRegistry.length-1;i>=0;i--){var _2=this.clickMaskRegistry[i]
_1.addList(this.clickMaskRegistry[i].$l2);if(!_2.autoHide){_0=true;break}}
if(!_0)_1=isc.Canvas._canvasList;for(i=0;i<_1.length;i++){var _3=_1[i];if(_3.$l3!=null)_3.$l4()}},$l0:function(_0){if(isc.Browser.isIE&&!_0)
return isc.Timer.setTimeout("isc.EH.$l0(true)",0);if(this.$l5)this.$l5.hide();for(var i=0;i<isc.Canvas._canvasList.length;i++){var _1=isc.Canvas._canvasList[i];this.$lz(_1);if(_1.$l3!=null)_1.$l4()}},clickMaskUp:function(ID){var _0=this.clickMaskRegistry;if(ID==null)return(_0.length>0);else return(_0.find("ID",ID)!=null)},getAllClickMaskIDs:function(){var _0=this.clickMaskRegistry;if(_0.length<1)return[];return _0.getProperty("ID")},showScreenSpan:function(){if(!this.$l5)this.$l5=this.makeScreenSpan({ID:"isc_EH_screenSpan"});var _0=this.$l5;_0.show();_0.sendToBack()},makeScreenSpan:function(_0){var _1=this.$l6;if(!_1.contents)_1.contents=isc.Canvas.spacerHTML(1600,1200);return isc.ClassFactory.newInstance(_1,_0)},$l6:{_constructor:"Canvas",_generated:true,overflow:"hidden",hide:function(_0){this.resizeTo(1,1);this.moveTo(null,-this.getHeight());return this.Super("hide",arguments)},show:function(){this.fitToScreen();return this.Super("show",arguments)},pageResized:function(){if(!this.isVisible())return;this.moveTo(null,-this.getHeight());this.fitToScreen();isc.Page.setEvent("resize",this,isc.Page.FIRE_ONCE,"pageResized")},fitToScreen:function(){var _0=Math.max(isc.Page.getWidth(),isc.Page.getScrollWidth()),_1=Math.max(isc.Page.getHeight(),isc.Page.getScrollHeight());this.resizeTo(_0,_1);this.moveTo(0,0)}},$lz:function(_0){if(!_0||!isc.isA.Canvas(_0))return;if(isc.isA.DynamicForm(_0)){var _1=_0.getItems();for(var i=0;i<_1.length;i++){_1[i].$l7(_1[i].getGlobalTabIndex())}}
if(!_0.isDrawn())return;if(_0.$kv()&&_0.isEnabled()){_0.$l8(_0.getTabIndex());if(_0.accessKey!=null)_0.$l9(_0.accessKey)}},$lw:function(_0){if(!_0||!isc.isA.Canvas(_0))return;if(isc.isA.DynamicForm(_0)){var _1=_0.getItems();for(var j=0;j<_1.length;j++){_1[j].$l7(-1)}}
if(!_0.isDrawn())return;if(_0.$kv()){_0.$l8(-1);if(_0.accessKey!=null)_0.$l9(null)}},maskTarget:function(_0,_1){return this.maskTargets(_0,_1)},maskTargets:function(_0,_1){var _2=this.clickMaskRegistry;if(_0==null||_2.length==0)return;if(!isc.isAn.Array(_0))_0=[_0];else if(_0.length==0)return;var _3=(_1==null?_2[0]:(isc.isA.String(_1)?_2.find("ID",_1):_1));if(_3==null){this.logInfo("maskTargets called with invalid maskID - returning.","event")
return}
var _4=false;for(var n=0;n<_0.length;n++){var _5=_0[n],_6=_2.indexOf(_3);while(_6<_2.length){var _7=_2[_6];if(_7.unmaskedTargets[_5.getID()]){delete _7.unmaskedTargets[_5.getID()];if(_6==(_2.length-1)){this.$lw(_5)}}
if(!_7.autoHide)_4=true;_6+=1}
if(_4&&_5.useClickMaskDiv)_5.$lx();if(_5.children!=null)this.maskTargets(_5.children,_3)}},addUnmaskedTarget:function(_0,_1){return this.addUnmaskedTargets(_0,_1)},addUnmaskedTargets:function(_0,_1,_2){var _3=this.clickMaskRegistry;if(_0==null||_3.length==0)return;if(!isc.isAn.Array(_0))_0=[_0];if(!_2){this.logDebug("Adding unmasked targets:"+_0.getProperty("ID")+" [+ decendants] to clickMask with ID:"+_1,"clickMask")}
if(_0.length==0)return;var _4,_5=false;if(_1==null){_5=true;_4=_3.last()}else{if(isc.isA.String(_1))_4=_3.find("ID",_1);else _4=_1;_5=(_4==_3.last())}
if(_4==null){this.logInfo("addUnmaskedTargets called with invalid maskID - returning.","event")
return}
for(var n=0;n<_0.length;n++){var _6=_0[n];if(_4.unmaskedTargets==null)this.unmaskedTargets={};_4.unmaskedTargets[_6.getID()]=true;if(_6.$l3!=null){if(_5)_6.$l4();else{var _7=true;for(var i=(_3.indexOf(_4)+1);i<_3.length;i++){if(!_3[i].autoHide){_7=false
break}}
if(_7)_6.$l4()}}
if(_5)this.$lz(_6);if(_6.children!=null){this.addUnmaskedTargets(_6.children,_1,true)}}},targetIsMasked:function(_0,_1){var _2=this.clickMaskRegistry;if(_2.length==0)return false;if(_0==null)return true;var _3;if(_1==null)_3=_2.last();else if(isc.isA.String(_1))_3=_2.find("ID",_1);else _3=_1;if(!isc.isAn.Object(_3)){this.logWarn("EventHandler.targetIsMasked() passed invalid maskID:"+_1,"clickMask");return false}
if(_3.unmaskedTargets&&_3.unmaskedTargets[_0.getID()])return false;return true},clickMaskClick:function(_0){var _1=this.clickMaskRegistry.duplicate(),_2=_1.last();while(_2!=null&&this.targetIsMasked(_0)){this.logInfo("mouseDown on masked "+_0+(_2.clickAction!=null?" firing clickAction, ":"")+(_2.autoHide?"will hide mask":"will block click"));var _3=_2.clickAction,_4=_2.autoHide;if(_4==true)this.hideClickMask(_2.ID);if(_3!=null)_3();if(_4!=true)return false;_2=_1[_1.indexOf(_2)-1]}
return true}});isc.EventHandler.captureEvents();isc.ClassFactory.defineClass("Selection");isc.Selection.addProperties({$a2:true});isc.Selection.addClassProperties({NONE:"none",SINGLE:"single",MULTIPLE:"multiple",SIMPLE:"simple",$a1:0});isc.Selection.addMethods({init:function(){this.addPropertyList(arguments);if(!this.selectionProperty)this.selectionProperty="_selection_"+isc.Selection.$a1++;this.setData((this.data?this.data:[]))},setData:function(_0){if(this.data!=null)this.ignoreData(this.data);this.data=_0;if(this.data!=null)this.observeData(this.data)},observeData:function(_0){this.observe(_0,"dataChanged","observer.dataChanged()");if(_0.dataArrived)this.observe(_0,"dataArrived","observer.dataChanged()")},ignoreData:function(_0){this.ignore(_0,"dataChanged")},dataChanged:function(){this.markForRedraw()},markForRedraw:function(){this.$a2=true},isSelected:function(_0){if(_0==null)return false;if(isc.isAn.XMLNode(_0))return"true"==_0.getAttribute(this.selectionProperty);return _0[this.selectionProperty]},anySelected:function(){return this.getSelection().length>0},multipleSelected:function(){return this.getSelection().length>1},getSelection:function(){if(this.$a2)this.cacheSelection();return this.$ma},getSelectedRecord:function(){var _0=this.getSelection();if(_0&&_0.length>0)return _0[0]},cacheSelection:function(){this.$ma=[];var _0=this.data,_1=isc.isA.ResultSet!=null&&isc.isA.ResultSet(_0),_2=_0.getLength();for(var i=0;i<_2;i++){if(_1&&!_0.rowIsLoaded(i))continue;var _3=_0.getItem(i);if(_3!=null&&this.isSelected(_3)){this.$ma[this.$ma.length]=_3}}
this.$a2=false},setSelected:function(_0,_1){if(_0==null)return false;if(_0.enabled==false)return false;var _2=this.selectionProperty,_3=isc.isAn.XMLNode(_0);if(_1==null)_1=true;var _4=_3?_0.getAttribute(_2):_0[_2];if(_4==null)_4=false;if(_3){_0.setAttribute(_2,_1)}else{_0[_2]=_1}
this.lastSelectionItem=_0;this.lastSelectionState=_1;if(_1==_4)return false;if(this.useRemoteSelection&&!this.$mb){this.remoteSetSelected(_0,_1)}
this.markForRedraw();return true},select:function(_0){return this.setSelected(_0,true)},deselect:function(_0){return this.setSelected(_0,false)},selectSingle:function(_0){if(this.useRemoteSelection){this.remoteSelectSingle(_0);this.$mb=true;this.deselectList(this.getSelection());var _1=this.select(_0);this.$mb=false;return _1}
this.deselectAll();return this.select(_0)},selectList:function(_0,_1){if(_1==null)_1=true;if(!_0)return false;var _2=false,_3=_0.getLength();for(var i=0;i<_3;i++){var _4=_0.getItem(i);if(this.isSelected(_4)==_1)continue;_2=this.setSelected(_4,_1)||_2}
return _2},deselectList:function(_0){this.selectList(_0,false)},selectAll:function(){return this.selectRange(0,this.data.getLength())},deselectAll:function(){if(this.useRemoteSelection)return this.deselectRange(0,this.data.getLength());return this.deselectList(this.getSelection())},selectItem:function(_0){return this.selectRange(_0,_0+1)},deselectItem:function(_0){return this.deselectRange(_0,_0+1)},remoteSetSelected:function(_0,_1){},remoteSelectRange:function(_0,_1,_2){},remoteSelectSingle:function(_0){},selectRange:function(_0,_1,_2){if(_2==null)_2=true;if(this.useRemoteSelection){this.remoteSelectRange(_0,_1,_2);this.$mb=true;var _3=this.data,_4=false;for(var i=_0;i<_1;i++){if(_3.rowIsLoaded(i)){_4=this.setSelected(_3.get(i),_2)||_4}}
this.$mb=false;return _4}
if(isc.isA.ResultSet!=null&&isc.isA.ResultSet(this.data)&&!this.data.rangeIsLoaded(_0,_1))
{isc.warn("Can't select that many records at once.<br><br>"+"Please try working in smaller batches.");return false}
return this.selectList(this.data.getRange(_0,_1),_2)},deselectRange:function(_0,_1){return this.selectRange(_0,_1,false)},selectOnMouseDown:function(_0,_1){if(_0.selectionType==isc.Selection.NONE)return false;this.startRow=this.lastRow=_1;this.logDebug("selectOnMouseDown: recordNum: "+_1);var _2=this.data.getItem(_1),_3=this.isSelected(_2),_4=this.getSelection();if(Array.isLoading(_2))return false;this.deselectRecordOnMouseUp=false;this.deselectOthersOnMouseUp=false;if(_0.selectionType==isc.Selection.SINGLE){this.selectSingle(_2);return true}else if(isc.EventHandler.shiftKeyDown()){if(_4.length==0){this.select(_2);return true}else{var _5=this.data.indexOf(_4[0]),_6=this.data.indexOf(_4.last());if(_1>=_6){this.selectRange(_5,_1+1)}else if(_1<=_5){this.selectRange(_1,_6+1)}else{this.selectRange(_5,_1+1);this.deselectRange(_1+1,_6+1)}
return true}}else if(_0.selectionType==isc.Selection.SIMPLE){if(!_3){this.select(_2);return true}else{this.deselectRecordOnMouseUp=true;return false}}else if(isc.EventHandler.ctrlKeyDown()||isc.EventHandler.altKeyDown()||isc.EventHandler.metaKeyDown())
{this.setSelected(_2,!_3);return true}else{if(!_3){this.selectSingle(_2);return true}else if(isc.EventHandler.rightButtonDown()){this.deselectOnDragMove=true;return false}else{if(this.dragSelection){if(this.simpleDeselect){this.deselectAll();this.selectOriginOnDragMove=true;return true}
this.selectSingle(_2);return true}else{if(this.simpleDeselect){this.deselectAllOnMouseUp=true}else{this.deselectOthersOnMouseUp=(_4.length>1)}
return false}}}},selectOnDragMove:function(_0,_1){var _2=this.startRow,_3=this.lastRow;if(_1<0){this.logWarn("selectOnDragMove: got negative coordinate: "+_1);return}
if(_1==_3)return;if(this.selectOriginOnDragMove){this.select(this.data.getItem(_2));this.selectOriginOnDragMove=false}else if(this.deselectOnDragMove||this.deselectAllOnMouseUp||this.deselectOthersOnMouseUp){this.selectSingle(this.data.getItem(_2));this.deselectAllOnMouseUp=this.deselectOthersOnMouseUp=this.deselectOnDragMove=false}
if((_1>_2&&_2>_3)||(_3>_2&&_2>_1))
{this.deselectAll();if(_2>_1){this.selectRange(_1,_2+1)}else{this.selectRange(_2,_1+1)}}else if(_2>=_3&&_3>_1){this.selectRange(_1,_3)}else if(_2>=_1&&_1>_3){this.deselectRange(_3,_1)}else if(_2<=_1&&_1<_3){this.deselectRange(_1+1,_3+1)}else if(_2<=_3&&_3<_1){this.selectRange(_3,_1+1)}else{this.logWarn("dragMove case not handled: lastRow: "+_3+", currRow: "+_1+", startRow "+_2)}
this.lastRow=_1},selectOnMouseUp:function(_0,_1){if(_0.selectionType==isc.Selection.NONE)return false;this.logDebug("selectOnMouseUp: recordNum: "+_1);if(this.deselectOthersOnMouseUp){this.selectSingle(this.data.getItem(_1));this.deselectOthersOnMouseUp=false;return true}else if(this.deselectRecordOnMouseUp){this.deselect(this.data.getItem(_1));this.deselectRecordOnMouseUp=false;return true}else if(this.deselectAllOnMouseUp){this.deselectAll();this.deselectAllOnMouseUp=false;return true}else
return false}});isc.ClassFactory.defineClass("Canvas");isc.Canvas.addClassProperties({$a7:null,NONE:null,AUTO:"auto",UNSPECIFIED:null,ANYTHING:"**anything**",ABSOLUTE:"absolute",RELATIVE:"relative",INHERIT:"inherit",VISIBLE:"visible",HIDDEN:"hidden",COMPLETE:"complete",DRAWN:"complete",DRAWING_HANDLE:"drawingHandle",HANDLE_DRAWN:"handleDrawn",UNDRAWN:"undrawn",SCROLL:"scroll",CLIP_H:"clip-h",CLIP_V:"clip-v",IGNORE:"ignore",NATIVE:"native",CLIP:"clip",NESTED_DIV:"nestedDiv",CENTER:"center",LEFT:"left",RIGHT:"right",TOP:"top",BOTTOM:"bottom",UP:"up",DOWN:"down",DEFAULT:"default",ARROW:"default",WAIT:"wait",HAND:(isc.Browser.isMoz?"pointer":"hand"),MOVE:"move",HELP:"help",TEXT:"text",CROSSHAIR:"crosshair",COL_RESIZE:(isc.Browser.isIE&&isc.Browser.version>=6?"col-resize":"e-resize"),ROW_RESIZE:(isc.Browser.isIE&&isc.Browser.version>=6?"row-resize":"n-resize"),REPEAT:"repeat",NO_REPEAT:"no-repeat",REPEAT_X:"repeat-x",REPEAT_Y:"repeat-y",LTR:"ltr",RTL:"rtl",$mc:1000,$md:1000000,$me:999,TAB_INDEX_GAP:50,TAB_INDEX_FLOOR:1000,$mf:[],$mg:{},$mh:{},$mi:[],_redrawQueueDelay:(isc.Browser.isNav?10:0),$mj:200,_canvasList:[],_iscInternalCount:0,_stats:{redraws:0,clears:0,destroys:0,draws:0},$mk:{},$ml:[],useMozBackMasks:(isc.Browser.isMoz&&isc.Browser.isMac)});isc.Canvas.addProperties({autoDraw:true,position:isc.Canvas.ABSOLUTE,left:0,top:0,defaultWidth:100,defaultHeight:100,minWidth:10,maxWidth:10000,minHeight:10,maxHeight:10000,zIndex:isc.Canvas.AUTO,autoShowParent:false,visibility:isc.Canvas.INHERIT,className:"normal",contents:"&nbsp;",backgroundRepeat:isc.Canvas.REPEAT,appImgDir:"",skinImgDir:"images/",cursor:isc.Canvas.ARROW,overflow:isc.Canvas.VISIBLE,showCustomScrollbars:!((isc.Browser.isIE&&isc.Browser.version>4)||(isc.Browser.isUnix&&isc.Browser.isMoz&&isc.Browser.geckoVersion>=20020826&&isc.Browser.geckoVersion<=20031007)),scrollbarSize:16,scrollbarConstructor:"Scrollbar",scrollLeft:0,scrollTop:0,scrollDelta:20,enabled:true,redrawOnEnable:false,$lf:true,$le:true,$mm:true,$lg:true,$mn:true,_useNativeTabIndex:isc.Browser.isIE&&isc.Browser.version>=5,$j6:(isc.Browser.isMoz||isc.Browser.isSafari),contextMenuProperties:{autoDraw:false,width:200,showIcons:true},clippedCorners:["TL","TR","BL","BR"],cornerClipColor:"FFFFFF",cornerClipImage:"[SKIN]corner.gif",cornerClipSize:10,$mo:{_generated:true,overflow:"hidden",$lf:false,$le:false,autoDraw:false,skinImgDir:"images/corners/",draw:function(){this.Super("draw",arguments)}},dragStartDistance:5,canDragScroll:true,dragScrollDelay:100,dragScrollThreshold:"10%",minDragScrollIncrement:1,maxDragScrollIncrement:"5%",dragIntersectStyle:isc.EventHandler.INTERSECT_WITH_MOUSE,dragRepositionCursor:isc.Canvas.MOVE,edgeMarginSize:5,edgeCursorMap:{"T":"n-resize","L":"w-resize","B":"s-resize","R":"e-resize","TL":"nw-resize","TR":"ne-resize","BL":"sw-resize","BR":"se-resize"},dragAppearance:isc.EventHandler.OUTLINE,dropTypes:isc.Canvas.ANYTHING,mouseStillDownInitialDelay:400,mouseStillDownDelay:100,doubleClickDelay:250,refreshVariable:"refresh",useClipDiv:(isc.Browser.isMoz||isc.Browser.isSafari)});isc.Canvas.addMethods({$mp:"resize",$mq:"draw",$mr:"hidden",$ms:"redraw",$mt:"draws",$mu:"drawing",$mv:"redraws",$mw:"autoDraw",$mx:"beforeBegin",$my:"afterBegin",$mz:"beforeEnd",$m0:"afterEnd",$m1:">",$m2:"'",init:function(A,B,C,D,E,F,G,H,I,J,K,L,M){var _0;isc.addProperties(this,A,B,C,D,E,F,G,H,I,J,K,L,M);if(isc.$m3)arguments.$fa=this;this.ns.ClassFactory.addGlobalID(this);this._canvasList(true);this.$m4=this.width;this.$m5=this.height;if(this.width==null)this.width=this.defaultWidth;if(this.height==null)this.height=this.defaultHeight;this.$m6=this.height;if(isc.isA.String(this.margin)&&this.margin.contains(isc.px))
this.margin=parseInt(this.margin);if(isc.isA.String(this.padding)&&this.padding.contains(isc.px))
this.padding=parseInt(this.padding);this.resizeTo(this.width,this.$m6);this.moveTo(this.left,this.top);if(this.children&&!isc.isAn.Array(this.children))this.children=[this.children];if(this.peers&&!isc.isAn.Array(this.peers))this.peers=[this.peers];if(this.showEdges&&!isc.isA.EdgedCanvas(this))this.$m7();this.initWidget();if(this.clipCorners)this.$m8();if(this.useBackMask&&((isc.Browser.isIE&&isc.Browser.minorVersion>=5.5)||(isc.Canvas.useMozBackMasks&&isc.Browser.isMoz))){this.makeBackMask();this._backMask.moveBelow(this)}
if(this.children)this.children.setProperty(this.$mw,false);if(this.peers)this.peers.setProperty(this.$mw,false);if(this.observes){var _1,_2,_3=this.observes,_4=_3.length;for(var i=0;i<_4;i++){var _1=_3[i];if(!_1)continue;if(isc.isA.String(_1.source))_2=this.getGlobalReference(_1.source);else _2=_1.source;if(_2){this.observe(_2,_1.message,_1.action)}}}
this.$m9();if(this._adjacentHandle&&!this.drawContext){this.drawContext={element:this._adjacentHandle}}
if(this.eventProxy!=null){if(!isc.isA.Canvas(this.eventProxy)){this.logWarn("Canvas ID:'"+this.getID()+"' initialized with bad eventProxy. "+"This property should be set to another Canvas instance. Clearing this property.")
delete this.eventProxy}else{if(this.eventProxy.$ka==null)this.eventProxy.$ka=[];this.eventProxy.$ka.add(this)}}
if(this.autoDraw&&!this.parentElement)this.draw()},initWidget:function(){},$f:"initWidget",getDrawnState:function(){if(this.$il==true)return isc.Canvas.COMPLETE;if(this.$na==true)return isc.Canvas.HANDLE_DRAWN;if(this.$nb==true)return isc.Canvas.DRAWING_HANDLE;return isc.Canvas.UNDRAWN},setDrawnState:function(_0){if(_0==isc.Canvas.COMPLETE)this.$il=true;else this.$il=false;if(_0==isc.Canvas.HANDLE_DRAWN)this.$na=true;else this.$na=false;if(_0==isc.Canvas.DRAWING_HANDLE)this.$nb=true;else this.$nb=false},isDrawn:function(){return this.$il},getID:function(){if(this.ID==null)this.ns.ClassFactory.addGlobalID(this);return this.ID},getAttribute:function(_0){return this[_0]},getInnerHTML:function(){var _0=this.getContentsURL();if(_0){isc.EventHandler.registerMaskableItem(this,true);return"<iframe height='100%' width='100%' scrolling='"+(this.overflow=="hidden"?"no":"yes")+"' frameborder='0'"+" src=\""+_0+"\"></iframe>"}
var _1=(isc.isA.Function(this.contents)?this.contents():this.contents);return this.dynamicContents?_1.evalDynamicString():_1},$nc:function(_0){return this.getInnerHTML(_0)},readyToDraw:function(){var _0=this.getDrawnState();if(this.getDrawnState()!=isc.Canvas.UNDRAWN){var _0=this.getDrawnState();this.logWarn("draw() called on widget with current drawn state: "+_0+(_0==isc.Canvas.COMPLETE?", use redraw() instead.":", ignoring.")+this.getStackTrace(),"drawing");return false}
if(this.showIf!=null){this.convertToMethod("showIf");if(this.showIf(this)==false)return false}
if(this.getHeight()<=0||this.getWidth()<=0){if(this.$nd){this.drawDeferred();return false}
this.logWarn("negative or zero area: height: "+this.getHeight()+", width: "+this.getWidth()+", refusing to draw","drawing");return false}
if(this.deferredDrawEvent!=null){this.logInfo("draw() called while object already pending a delayed draw - no action to take","drawing");return false}
if(this.parentElement!=null&&(!isc.isA.Canvas(this.parentElement)||this.parentElement.getDrawnState()==isc.Canvas.UNDRAWN))
{this.logWarn("Attempt to draw child of an undrawn parent - ignoring"+this.getStackTrace(),"drawing");return false}
return true},draw:function(_0){if(isc.$m3)arguments.$fa=this;if(!this.readyToDraw())return this;if(this.overflow==isc.Canvas.AUTO)this.getTabIndex();if(this.logIsDebugEnabled(this.$mt)){this.logInfo("draw(): drawing "+this.Class+(this.parentElement?" with parent: "+this.parentElement:"")+(!isc.Page.isLoaded()?" before page load":""),this.$mt)}
this.$ne(this.$mt);if(this.peers!=null&&this.peers.getLength()>0){this.predrawPeers()}
var _1=this.parentElement;var _2=(!isc.Page.isLoaded()&&!this.drawContext&&((_1==null&&this.position==isc.Canvas.RELATIVE)||(_1!=null&&this.hasRelativeParent()&&(_1.getDrawnState()!=isc.Canvas.COMPLETE&&_1.getDrawnState()!=isc.Canvas.HANDLE_DRAWN))));var _3=(this.drawChildrenThenContent&&this.children&&this.children.length>0);if(isc.Page.isLoaded()||!_2){this.$nf(!_3);this.drawChildren();if(_3)this.$ng();this.$nh()}else{var _4=this.parentElement;if(_4&&(_4.$il||_4.$na)){this.$nf(!_3);this.drawChildren();if(_3)this.$ng();this.$nh()}else{if(isc.Browser.isIE&&this.getDocument().readyState=="complete")
{isc.Page.finishedLoading()}
this.$ni()}}
if(this.$j6&&this.$kv())this.makeFocusProxy();if(isc.EH.targetIsMasked(this)){if(this.$nj)this.$lx();isc.EH.$lw(this)}
if(this.clipCorners)this.$nk();if(!_0&&this.isVisible())this.show();return this},$ni:function(){this.setDrawnState(isc.Canvas.DRAWING_HANDLE);var _0=this.getDocument(),_1=(this.drawChildrenThenContent&&this.children&&this.children.length>0);_0.write(isc.SB.concat(this.getTagStart(),(_1?null:this.$nc()),this.getTagEnd()));this.setDrawnState(isc.Canvas.HANDLE_DRAWN);this.drawChildren();if(_1)this.$ng();this.$nh();if(isc.Browser.isMoz&&this.getScrollingMechanism()==isc.Canvas.NATIVE)
this.checkNativeScroll();return this},drawDeferred:function(){var _0=(isc.Page.isLoaded()?"idle":"load");if(this.deferredDrawEvent!=null){this.logInfo("drawDeferred() called when object is already pending drawing "+"- No action to take.");return}
var _1=this.getID();this.deferredDrawEvent=isc.Page.setEvent(_0,"delete "+_1+".deferredDrawEvent;"+_1+".draw();",isc.Page.FIRE_ONCE)},makeBackMask:function(_0){var _1=isc.SB.concat("<iframe width='100%' height='100%' border='0' frameborder='0' src=\"",isc.Page.getBlankFrameURL(),"\" marginwidth='0' marginheight='0' scrolling='no' tabIndex='-1' tabStop='false'></iframe>");this._backMask=isc.Canvas.newInstance({ID:this.ID+"_backMask",$k0:true,_generated:true,autoDraw:false,left:this.left,top:this.top,useClipDiv:false,hideUsingDisplayNone:isc.Browser.isMoz,width:this.getVisibleWidth(),height:this.getVisibleHeight(),overflow:isc.Canvas.HIDDEN,contents:_1,$mm:false,$le:false,$lf:false,$mn:false},_0);this.addPeer(this._backMask);this._backMask.observe(this,"$c3","observer.setRect(observed.getRect())")},makeFocusProxy:function(){if(!this.$j6||this.$nl||this.$nm||!this.isDrawn()||this.$nn!=null)return;this.$nm=true;this.$no();this.$nm=null},$no:function(){if(!isc.Page.isLoaded()&&(isc.Browser.isSafari||isc.Browser.isNav||isc.Browser.isNS6||isc.Browser.isIE4))
{this.getTabIndex();this.$nn=isc.Page.setEvent("load",this,null,"delayedMakeFocusProxy");return}
var _0=this.getTabIndex();if(!this.isEnabled())_0=-1;if(isc.Browser.isSafari&&_0==-1){return}
var _1=(isc.Browser.isSafari?1:this.getViewportWidth()),_2=(isc.Browser.isSafari?1:this.getViewportHeight());var _3=isc.Canvas.getFocusProxyString(this.getCanvasName(),true,this.getOffsetLeft()-1,this.getOffsetTop()-1,_1,_2,this.isVisible(),this.$kv(),_0,this.accessKey,false,this.$np(),this.$nq());isc.Canvas.insertAdjacentHTML(this.getClipHandle(),"afterEnd",_3)
this.$nl=true},delayedMakeFocusProxy:function(){this.$nn=null;this.makeFocusProxy()},$nr:function(){if(!this.$j6)return;if(this.$nn!=null){isc.Page.clearEvent("load",this.$nn);this.$nn=null}
if(!this.$nl)return;var _0=this.$ns();if(_0!=null){if(isc.Browser.isDOM){if(_0.parentNode){_0.parentNode.removeChild(_0)}else{this.logWarn("Unable clear focusProxy for this widget - element has no parentNode.")}}
this.$nt=null}
this.$nl=null},$lx:function(){if(isc.Browser.isNav4||this.getClipHandle()==null)return;if(this.children!=null&&this.children.length>0){this.logInfo("Creating a clickMaskDiv for a widget with children. "+"This will also mask the children, even if they are supposed to be above "+"the clickMask.","canvasClickMaskDiv")}
if(!this.$l3){var _0=this.getID()+"$l3";if(!this.$nu){this.$nu=["<DIV ID='",_0,"' style='WIDTH:",,"px;HEIGHT:",,"px;TOP:",,"px;LEFT:",,"px;position:absolute;overflow:hidden;z-index:",,";'>","&nbsp;","</DIV>"]}
this.$nu[3]=this.getVisibleWidth();this.$nu[5]=this.getVisibleHeight();this.$nu[7]=this.getCanvasTop();this.$nu[9]=this.getCanvasLeft();this.$nu[11]=this.getZIndex()+1;if(isc.Browser.isIE){this.$nu[13]=isc.Canvas.blankImgHTML(this.getVisibleWidth(),this.getVisibleHeight())}
var _1=this.$nu.join(isc.emptyString);isc.Canvas.insertAdjacentHTML(this.getClipHandle(),"afterEnd",_1);this.$l3=isc.Canvas.getElementById(_0)}},$l4:function(){if(isc.Browser.isNav4||!this.$l3)return;var _0=this.$l3;if(isc.Browser.isDOM){if(_0.parentNode){_0.parentNode.removeChild(_0)}}
delete this.$l3},$nv:function(_0){if(this.$nj==_0)return;this.$nj=_0;if(this.ns.EH.targetIsMasked(this)){if(_0){this.$lx()}else{this.$l4()}}},drawChildren:function(){if(this.children==null)return true;if(this.isDrawn()){this.logWarn("drawChildren() is only safe to call BEFORE a canvas has been drawn"+this.getStackTrace());return}
if(this.children&&this.logIsInfoEnabled(this.$mu)){this.logInfo("drawChildren(): "+this.children.length+" children",this.$mu)}
this.$m9();this.layoutChildren("initial draw");for(var i=0;i<this.children.length;i++){var _0=this.children[i];_0.$nw();if(_0.masterElement)continue;if(!_0.isDrawn())_0.draw()}},predrawPeers:function(){if(!this.peers)return;for(var i=0;i<this.peers.getLength();i++){if(this.peers[i].$nx==true){var _0=this.peers[i];if(!isc.isA.Canvas(_0)||_0.masterElement!=this){this.peers.remove(_0);this.addPeer(_0)}
_0.draw()}}},drawPeers:function(){if(!this.peers)return true;if(this.logIsInfoEnabled(this.$mu)){this.logInfo("drawPeers(): "+this.peers.length+" peers","drawing")}
var _0=this.peers;this.peers=[];for(var i=0,_1;i<_0.length;i++){_1=_0[i];if(!isc.isA.Canvas(_1)||_1.masterElement!=this){this.addPeer(_1)}else{this.peers.add(_1)}}
for(i=0;i<this.peers.length;i++){var _1=this.peers[i];if(!_1.isDrawn())_1.draw()}},$nf:function(_0){this.setDrawnState(isc.Canvas.DRAWING_HANDLE);var _1=_0?this.$nc():null,_2=isc.StringBuffer.concat(this.getTagStart(),_1,this.getTagEnd());var _3=this.logIsInfoEnabled(this.$mu);var _4=this.drawContext;if(_4){var _5=_4.element,_6=_4.position||"beforeBegin";this.logInfo("$nf(): drawing with "+_6+" relative to element: "+this.echoLeaf(_5),"drawing");if(_6=="replace"){_6="beforeBegin";if(isc.isA.String(_5))_5=isc.Canvas.getElementById(_5);this.ns.Canvas.insertAdjacentHTML(_5,_6,_2);_5.parentNode.removeChild(_5);this.drawContext=null}else{this.ns.Canvas.insertAdjacentHTML(_5,_6,_2)}}else if(this.masterElement&&(this.masterElement.getClipHandle()!=null)){if(_3){this.logInfo("$nf(): Drawing next to master element: "+this.masterElement,"drawing")}
var _7=this.masterElement.getClipHandle();this.ns.Canvas.insertAdjacentHTML(_7,this.$m0,_2)}else if(this.parentElement){if(_3){this.logInfo("$nf(): Drawing inside parent: "+this.parentElement,"drawing")}
var _8=this.parentElement.getHandle();this.$ny(_8,this.$mz,_2)}else{if(_3){this.logDebug("$nf(): Drawing at top level","drawing")}
this.$nz(_2)}
this.setDrawnState(isc.Canvas.HANDLE_DRAWN)},$nz:function(_0){return this.ns.Canvas.createAbsoluteElement(_0)},$ny:function(_0,_1,_2){return this.ns.Canvas.insertAdjacentHTML(_0,_1,_2)},$nh:function(){this.modifyContent();this.setUpEvents();this.drawPeers();this.setDrawnState(isc.Canvas.COMPLETE);this.$a2=false;if(this.parentElement==null)isc.Canvas.$n0(this);if(!this.$n1())this.adjustOverflow()},$n1:function(){return false},isDirty:function(){return this.$a2==true},markForRedraw:function(_0){if(isc.$m3)arguments.$fa=this;if(this.isDrawn()&&!this.isDirty()){this.$n2(_0);isc.Canvas.scheduleRedraw(this);this.$a2=true}},readyToRedraw:function(_0,_1){if(isc.$m3)arguments.$fa=this;if(!this.isDrawn()){if(this.deferredDrawEvent!=null){this.logWarn("redraw(): This canvas is currently pending drawing - No action to take.","drawing")}else{this.logWarn("redraw() called on canvas that has never been drawn"+" -- skipping draw.  Use draw() instead."+this.getStackTrace(),"drawing")}
return false}
var _2=this.ns.EH;if((_2.$kb||_2.$j2)&&_2.lastTarget==this){if(_1){this.$n2(_0,true);this.priorityRedraw=true;this.$a2=false;this.markForRedraw(false)}
return false}
return true},$n2:function(_0,_1){if(_0==false||!this.logIsInfoEnabled(this.$mv))return;var _2=(!_0&&this.logIsDebugEnabled(this.$mv)||this.logIsDebugEnabled("redrawTrace"));var _3;if(_1==null)_3="Scheduling redraw ";else _3=(_1==true?"DEFERRED ":"")+"Immediate redraw ";this.logInfo(_3+(this.isDirty()&&_1!=null?"of dirty widget ":"")+(this.children&&this.children.length>0?"("+this.getChildCount()+" children) ":"")+"("+(_0?_0:"no reason provided")+")"+(_2?this.getStackTrace():""),this.$mv)},redraw:function(_0){arguments.$fa=this;if(!this.readyToRedraw(_0,true))return this;this.$n2(_0,false);this.$ne(this.$mv);var _1=isc.timeStamp();this.$n3();this.$n4=isc.timeStamp()-_1;return this},redrawIfDirty:function(_0){if(this.isDrawn()&&this.isDirty())return this.redraw(_0)},$n3:function(){var _0=this.logIsDebugEnabled(this.$mu),_1=this.logIsInfoEnabled(this.$mu),_2;if(_0)_2=isc.timeStamp();if(_1)this.logInfo("$n3(): redrawing","drawing");if(this.peers!=null&&this.peers.getLength()>0)this.redrawPredrawnPeers();var _3=this.children&&this.children.length>0,_4=this.$n5&&_3,_5=_4&&this.drawChildrenThenContent;if(_3){if(!_4){this.redrawChildren()}else{if(_5)this.redrawChildren();this.$ng();if(!_5)this.redrawChildren()}}else{this.$n6()}
this.modifyContent();this.setUpEvents();this.$a2=false;this.redrawPeers();this.adjustOverflow(this.$ms);if(_0){this.logDebug("Redraw() - Total time to redraw in DOM:"+(isc.timeStamp()-_2),"drawing")}
return this},$ng:function(){var _0=this.$nc(),_1=this.getHandle(),_2;if(this.children)_2=this.children[0].getClipHandle();if(isc.Browser.isIE){if(isc.Canvas.$n7==null)isc.Canvas.$n7=0;var _3="___isc_MARKER_STRING_ID__"+(isc.Canvas.$n7++),_4="___isc_MARKER_STRING_ID__"+(isc.Canvas.$n7++);isc.Canvas.insertAdjacentHTML(_1,this.$my,_3);isc.Canvas.insertAdjacentHTML(_2,this.$mx,_4);var _5=document.body.createTextRange(),_6=document.body.createTextRange();_5.moveToElementText(_1);_6.moveToElementText(_1);_5.findText(_3);_6.findText(_4);_5.setEndPoint("EndToEnd",_6);_5.pasteHTML(_0)}else{while(_1.hasChildNodes()&&_1.firstChild!=_2){_1.removeChild(_1.firstChild)}
isc.Canvas.insertAdjacentHTML(_1,this.$my,_0)}},$n6:function(){var _0=this.$nc();if(isc.Browser.isMoz){var _1=this.getHandle();while(_1.hasChildNodes())_1.removeChild(_1.firstChild);var _2=_1.ownerDocument.createRange();_2.selectNodeContents(_1);_2.collapse(true);var _3=_2.createContextualFragment(_0);_1.appendChild(_3)}else{this.getHandle().innerHTML=_0}},modifyContent:function(){},redrawChildren:function(){if(!this.children)return true;this.logInfo("redrawChildren(): "+this.children.length+" children","drawing");for(var _0=this.children,i=0;i<_0.length;i++){var _1=_0[i];if(!isc.isA.Canvas(_1))continue;if(_1.$mn){_1.redraw(false)}}},redrawPredrawnPeers:function(){if(!this.peers||this.peers.getLength<1)return;for(var _0=this.peers,i=0;i<_0.length;i++){if(_0[i]&&_0[i].$lf&&_0[i].$nx){_0[i].redraw("redrawPeers")}}},redrawPeers:function(){if(!this.peers)return true;this.logInfo("redrawPeers(): "+this.peers.length+" peers","drawing");for(var _0=this.peers,i=0;i<_0.length;i++){if(_0[i]&&_0[i].$lf&&!_0[i].$nx){_0[i].redraw("redrawPeers")}}},refreshFromServer:function(_0,_1,_2,_3){this.$n8("refresh",_0,_1,_2,_3)},replaceFromServer:function(_0,_1,_2,_3){this.$n8("replace",_0,_1,_2,_3)},$n8:function(_0,_1,_2,_3,_4){if(this.$n9){this.logWarn("Attempt to "+_0+" while "+this.$oa+" is in progress - ignoring.");return}
this.$n9=true;this.$oa=_0;this.$ob=_4;this.logDebug("Submitting to "+_0+" URL: "+_1+", with data: "+this.echo(_2));isc.Comm.sendFieldsToServer(_1,_2,_3,null,null,this.getID()+".$oc(frame)",this.refreshVariable)},$oc:function(_0){this.$n9=false;var _1=this.$oa;var _2=_0[this.refreshVariable];if(!isc.isAn.Object(_2)){this.logError("Expected object literal for "+_1+", but got: "+isc.Log.echo(_2));return}
_2=isc.clone(_2);var _3=this;if(_1=="refresh")this.setProperties(_2);else{if(!_2._constructor)_2._constructor=this.getClassName();_3=this.replaceWith(_2)}
isc.clearPrompt();if(this.$ob){if(!isc.isA.Function(this.$ob)){this.$ob=Function.expressionToFunction("canvas",this.$ob)}
if(!isc.isA.Function(this.$ob)){this.logError("Can't convert "+_1+" callback '"+this.$ob+" to a function - not firing callback!");return}
this.$ob(_3)}},clear:function(_0){this.$od();if(!_0){this.$ne("clears");this.logInfo("clear()"+(this.logIsDebugEnabled("clears")?this.getStackTrace():""),"clears")}
if(this._eventMask)this.ns.EH.unregisterMaskableItem(this);if(this==isc.Canvas.$oe)isc.Canvas.hideResizeThumbs();if(this.children){for(var _1=this.children,i=0;i<_1.length;i++){var _2=_1[i];if(!isc.isA.Canvas(_2))continue;_2.clear(true)}}
if(this.getHandle())this.clearHandle();if(this.$j6)this.$nr();if(this.$l3!=null)this.$l4();if(this.deferredDrawEvent){isc.Page.clearEvent(this.deferredDrawEvent);delete this.deferredDrawEvent}
if(this.peers){for(var _1=this.peers,i=0;i<_1.length;i++){_1[i].clear(true)}}
if(this.canAcceptDrop)this.ns.EH.unregisterDroppableItem(this);this.setDrawnState(isc.Canvas.UNDRAWN)},destroy:function(_0){if(this.doNotDestroy){this.clear();return}
if(this.destroyed)return;this.destroying=true;if(!_0&&!this.$in){this.$ne("destroys");this.logInfo("destroy()"+(this.logIsDebugEnabled("destroys")?this.getStackTrace():""),"destroys")}
this.clear(true);if(this.children){for(var _1=this.children.duplicate(),i=0;i<_1.length;i++){var _2=_1[i];if(!isc.isA.Canvas(_2))continue;_2.destroy(true)}}
if(this.peers){for(var _1=this.peers.duplicate(),i=0;i<_1.length;i++){_1[i].destroy(true)}}
delete this.peers;delete this.children;this.deparent();this.depeer();if(this.eventProxy!=null)this.clearEventProxy();if(this.$ka!=null){for(var _1=this.$ka.duplicate(),i=0;i<_1.length;i++){_1[i].clearEventProxy()}}
this._canvasList();isc.Canvas.$of(this);this.$og();if(isc.EH.clickMaskUp())isc.EH.maskTarget(this);if(this.$oh)isc.Page.clearEvent(this.$mp,this.$oh);if(window[this.ID]==this)window[this.ID]=null;if(this.$a9){for(var _3 in this){delete this[_3]}}
this.destroyed=true},clearHandle:function(){if(!this.getHandle())return;this.getHandle().eventProxy=null;this.getClipHandle().eventProxy=null;var _0=this.getClipHandle();this.$oi=null;this._clipDiv=null;if(isc.Browser.isIE&&isc.Browser.minorVersion<5.5){var _1=this.ns.EH;if((_1.$kb||_1.$j2)&&this.isAncestorOf(_1.lastTarget)){this.logInfo("Delaying unsafe clear during event handling","drawing");var i=0,_2="_tempHandle_"+this.getID()+i;while(window[_2]!=null){i++;_2="_tempHandle_"+this.getID()+i}
window[_2]=_0;isc.Timer.setTimeout("isc.Canvas.clearHandle(window."+_2+");window."+_2+" = null;",0);return}}
isc.Canvas.clearHandle(_0)},replaceWith:function(_0){if(!isc.isAn.Object(_0))return;var _1;if(isc.Browser.isDOM){var _2=isc.ClassFactory.getNextGlobalID();isc.Canvas.insertAdjacentHTML(this.getClipHandle(),"afterEnd","<DIV ID="+_2+"></DIV>");var _1=this.getDocument().getElementById(_2);_0.drawContext={element:_1}}
var _3=this.parentElement,_4=this.masterElement,_5=(isc.isA.Layout(_3)&&_3.hasMember(this)),_6=(_5?_3.getMemberNumber(this):0);this.destroy();if(isc.isA.Canvas(_0)){_0.clear()}else{_0.autoDraw=false;_0=isc.ClassFactory.newInstance(_0);if(_0==null){this.logWarn("canvas.replaceWith(): Unable to create a widget "+"instance from the argument passed in.  Returning.")
return}}
if(_5){_3.addMember(_0,_6)}else if(_3){_3.addChild(_0)}else if(_4){_4.addPeer(_0)}
if(!_0.isDrawn())_0.draw();if(isc.Browser.isDOM){if(_1.parentNode){_1.parentNode.removeChild(_1)}else{this.logWarn("unable to clear marker")}}
return _0},setDrawContext:function(_0){var _1=this.isDrawn();this.deparent();if(_1)this.clear();this.drawContext=_0;if(_1)this.draw()},getCanvasName:function(){if(this.$oj!=null)return this.$oj;return(this.$oj=this.ID+"_canvas")},$ok:[],getTagStart:function(_0){var _1=isc.Canvas,_2=this.$ol();if(this.getScrollingMechanism()==isc.Canvas.CLIP&&!this.$om()&&(this.overflow==_1.HIDDEN||(this.showCustomScrollbars&&(this.overflow==_1.SCROLL||this.overflow==_1.AUTO)))){var _3=this.scrollLeft||0,_4=this.scrollTop||0;if(this.$c4==null){this.$c4=[_3,this.getWidth()+_3,this.getHeight()+_4,_4]}
_2+=";CLIP:rect("+this.$c4[0]+"px,"+this.$c4[1]+"px,"+this.$c4[2]+"px,"+this.$c4[3]+"px)"}
if(this.zIndex==_1.AUTO)this.zIndex=_1.getNextZIndex();var _5=(this.eventProxy?this.eventProxy.ID:this.ID);var _6=this.$on(this.$ok),_7=_6[0],_8=_6[1];if(this.useClipDiv){var _9=this.getContentsURL();var _10=isc.StringBuffer.concat("<DIV ID=",this.getCanvasName(),"_clipDiv"," eventProxy=",_5,(this.prompt?" title=\""+this.prompt+"\"":""),(this.className?" CLASS="+this.className:"")," STYLE='","POSITION:",this.position,";LEFT:",this.left,"px;TOP:",this.top,"px;WIDTH:",_7,"px;HEIGHT:",_8,"px;Z-INDEX:",this.zIndex,(this.visibility==_1.INHERIT?"":";VISIBILITY:"+this.visibility),(this.backgroundColor==_1.NONE?"":";BACKGROUND-COLOR:"+this.backgroundColor),(this.backgroundImage==_1.NONE?"":";BACKGROUND-IMAGE:url("+this.getImgURL(this.backgroundImage)+")"+";BACKGROUND-REPEAT:"+this.backgroundRepeat),(this.border?";BORDER:"+this.border:""),(this.padding!=null?";PADDING:0px":""),this.$oo(),((isc.Browser.isMoz&&this.opacity!=null)?";-moz-opacity:"+(this.opacity/ 100):""),(isc.Browser.isMoz?";-moz-box-sizing:border-box":""),";OVERFLOW:",_2,";' ONSCROLL='return "+_5+".$kw()'>","<DIV ID=",this.getCanvasName()," eventProxy=",_5,(this.textDirection!=null?" DIR="+this.textDirection:"")," STYLE='POSITION:relative;VISIBILITY:inherit",(!this.useMozScrollSize&&!((isc.Browser.isSafari||isc.Browser.isFirefox)&&_9!=null)?";FLOAT:left":""),";Z-INDEX:",this.zIndex,(this.cursor==_1.AUTO?"":";CURSOR:"+this.cursor),(this.padding!=null?";PADDING:"+this.padding+"px":""),";'>")}else{if(!_1.$op){_1.$oq=" STYLE='POSITION:absolute;LEFT:";_1.$or=" STYLE='POSITION:relative;LEFT:";_1.$d9=" CLASS=";_1.$os=";VISIBILITY:";_1.$ot=" ONFOCUS=";_1.$ou=" ONBLUR=";_1.$ov=" TABINDEX=";_1.$ow=" ACCESSKEY=";_1.$ox=";CURSOR:";var _11=_1.$op=[];_11[0]="<DIV ID=";_11[2]=" eventProxy=";_11[15]="px;TOP:";_11[22]="px;WIDTH:";_11[28]="px;HEIGHT:";_11[34]="px;Z-INDEX:";_11[42]=";OVERFLOW:";_11[59]="' ONSCROLL='return ";_11[61]=".$kw()' "}
var _11=_1.$op;_11[1]=this.getCanvasName();_11[3]=_5;if(this.className!=null){_11[4]=_1.$d9;_11[5]=this.className}else{_11[4]=_11[5]=null}
_11[6]=(this.prompt?" title=\""+this.prompt+"\"":null);_11[7]=(this.textDirection!=null?" DIR="+this.textDirection:null);_11[8]=(this.position==_1.RELATIVE?_1.$or:_1.$oq);isc.$eg(_11,this.left,9,6);isc.$eg(_11,this.top,16,6);isc.$eg(_11,_7,23,5);isc.$eg(_11,_8,29,5);if(this.zIndex!=_1.AUTO)isc.$eg(_11,this.zIndex,35,7);else{_11[35]=this.zIndex;_11[36]=_11[37]=_11[38]=_11[39]=_11[40]=_11[41]=null}
_11[43]=_2;if(this.visibility!=_1.INHERIT){_11[44]=_1.$os;_11[45]=this.visibility}else{_11[44]=_11[45]=null}
_11[46]=(this.backgroundColor==_1.NONE?null:";BACKGROUND-COLOR:"+this.backgroundColor);_11[47]=(this.backgroundImage==_1.NONE?null:";BACKGROUND-IMAGE:url("+this.getImgURL(this.backgroundImage)+");BACKGROUND-REPEAT:"+this.backgroundRepeat);_11[48]=(isc.Browser.isMoz?";-moz-box-sizing:border-box":null);if(this.cursor==_1.ARROW){_11[49]=_11[50]=null}else{_11[49]=_1.$ox;_11[50]=this.cursor}
_11[51]=this.$oo();_11[52]=(this.padding!=null?";PADDING:"+this.padding+isc.px:null);_11[53]=(this.border?";BORDER:"+this.border:null);if(isc.Browser.isIE){_11[54]=(this.opacity==null?null:";filter:progid:DXImageTransform.Microsoft.Alpha(opacity="+this.opacity+")");if(this.$oy){_11[55]=";filter:progid:DXImageTransform.Microsoft.iris(irisStyle=circle)"}else{_11[55]=null}}
_11[60]=_5;var _12=64;if(this.$kv()&&this._useNativeTabIndex){_11[64]=_1.$ot;_11[65]=this.$np();_11[66]=_1.$ou;_11[67]=this.$nq();if(this.isEnabled()){_11[68]=_1.$ov;isc.$eg(_11,this.getTabIndex(),69,5);if(this.accessKey!=null){_11[74]=_1.$ow;_11[75]=this.accessKey;_12=76}else _12=74}else _12=68}
_11.length=_12;_11[_12]=this.$m1;if(_0)return _11;return _11.join(isc.emptyString)}
return _10},$oo:function(){if(!this.showEdges)return(this.margin!=null?";MARGIN:"+this.margin+isc.px:null);var _0=this.$oz(),_1=isc.SB.concat(";MARGIN-LEFT:",_0.left,"px;MARGIN-RIGHT:",_0.right,"px;MARGIN-TOP:",_0.top,"px;MARGIN-BOTTOM:",_0.bottom,isc.px);return _1},$o0:"</DIV>",$o1:"</DIV></DIV>",getTagEnd:function(){if(this.useClipDiv)return this.$o1;return this.$o0},$ol:function(){var _0=this.overflow;var _1=(this.overflow==isc.Canvas.SCROLL||this.overflow==isc.Canvas.AUTO),_2=_1&&this.showCustomScrollbars,_3=_1&&!this.showCustomScrollbars;if(this.overflow==isc.Canvas.HIDDEN||_2)
{if(this.$om()){_0="-moz-scrollbars-none"}else{_0=this.$mr}}else if(isc.Browser.isMoz&&!_3){this.useMozScrollSize=this.$om();if(this.useMozScrollSize){_0="-moz-scrollbars-none"}}
if(this.useClipDiv&&(this.overflow==isc.Canvas.CLIP_H||this.overflow==isc.Canvas.CLIP_V))
{_0=this.$mr}
return _0},$on:function(_0){var _1=this.getInitialWidth(),_2=this.getInitialHeight();return this.$o2(_1,_2,_0)},getInitialWidth:function(){return this.getWidth()},getInitialHeight:function(){return this.getHeight()},$o2:function(_0,_1,_2){_1-=(this.getTopMargin()+this.getBottomMargin());_0-=(this.getLeftMargin()+this.getRightMargin());if(isc.Browser.isSafari){_0-=this.getHBorderSize();_1-=this.getVBorderSize()}else if(isc.Browser.isIE&&isc.Browser.isStrict){_0-=this.getHBorderPad();_1-=this.getVBorderPad()}
var _3=_2||[];_3[0]=_0;_3[1]=_1;return _3},$o3:"'isc.EH.focusInCanvas(",$o4:"'isc.EH.blurFocusCanvas(",$o5:",true);'",$np:function(){return isc.SB.concat(this.$o3,this.getID(),this.$o5)},$nq:function(){return isc.SB.concat(this.$o4,this.getID(),this.$o5)},getHandle:function(){if(!(this.$na||this.$il))return null;if(!this.$oi){var _0=this.getCanvasName();this.$oi=this.ns.Canvas.getElementById(_0);if(this.$oi==null){this.logWarn("Unable to find handle for drawn Canvas, elementId: "+_0)}}
return this.$oi},getClipHandle:function(){if(!this.useClipDiv)return this.getHandle();if(!(this.$na||this.$il))return null;if(!this._clipDiv){var _0=this.getCanvasName()+"_clipDiv";this._clipDiv=this.ns.Canvas.getElementById(_0);if(this._clipDiv==null){this.logWarn("Unable to find clipHandle for drawn Canvas, elementId: "+_0)}}
return this._clipDiv},$o6:function(){if(!this.$j6||!this.$nl)return null;if(!this.$nt){var _0=this.getCanvasName()+"__focusProxy";this.$nt=this.getDocument().getElementById(_0)}
return this.$nt},$ns:function(){if(!this.$j6)return null;if(!this.$nt)this.$nt=this.$o6();return(this.$nt!=null?this.$nt.parentNode:null)},getStyleHandle:function(){return(this.getClipHandle()?this.getClipHandle().style:null)},setUpEvents:function(){if(this.canAcceptDrop)this.ns.EH.registerDroppableItem(this)},$m9:function(_0){if(!_0)_0=this.children;if(!_0)return;this.children=[];for(var i=0,_1;i<_0.length;i++){_1=_0[i];if(!isc.isA.Canvas(_1)||_1.parentElement!=this){this.addChild(_1)}else{this.children.add(_1)}}},createCanvas:function(_0){if(isc.isA.Canvas(_0))return _0;var _1=_0._constructor;if(_1==null||isc.ClassFactory.getClass(_1)==null){_1=isc.Canvas}
_0._constructor=null;if(this.logIsDebugEnabled()){this.logDebug("createCanvas(): instantiating as a "+_1+": "+this.echoShort(_0))}
_0.autoDraw=false;return isc.ClassFactory.newInstance(_1,_0)},setEventProxy:function(_0){var _1=this.eventProxy;if(_1==_0)return;if(_1!=null){_1.$ka.remove(this);if(this.getHandle()!=null)this.getHandle().eventProxy=null;if(this.getClipHandle()!=this.getHandle())this.getClipHandle().eventProxy=null}
this.eventProxy=_0;if(_0!=null){if(!isc.isA.Canvas(_0)){this.logWarn("setEventProxy() passed invalid eventProxy - clearing this property");this.eventProxy=null}else{if(_0.$ka==null)_0.$ka=[];_0.$ka.add(this)}}
if(this.isDrawn())this.redraw("eventProxy updated")},clearEventProxy:function(){this.setEventProxy()},addChild:function(_0,_1,_2){if(isc.$m3)arguments.$fa=this;if(!_0)return null;if(!isc.isAn.Instance(_0))_0=this.createCanvas(_0);if(!isc.isA.Canvas(_0)){this.logWarn("addChild(): trying to install a non-canvas as a child.  Returning.");return null}
_0.autoDraw=false;if(_0.parentElement==this)return _0;if(_0.parentElement)_0.deparent(_1);isc.Canvas.$of(_0);if(_0.drawContext)_0.drawContext=null;_0.parentElement=this;_0.topElement=(this.topElement||this);if(_1)this[_1]=_0;if(!this.children)this.children=[];if(!this.children.contains(_0))this.children.add(_0);if(_0.children)_0.updateChildrenTopElement();var _3=_0.masterElement;if(_3&&_3.parentElement!=this){_3.peers.remove(_0);if(_3[_1]==_0)_3[_1]=null;_0.masterElement=null}
if(_0.peers)this.map("addChild",_0.peers);if(_0.isDrawn())_0.clear();_0.$nw();var _4=this.ns.EH;if(_4.clickMaskUp()){var _5=_4.getAllClickMaskIDs();for(var i=0;i<_5.length;i++){if(!_4.targetIsMasked(this,_5[i]))
_4.addUnmaskedTarget(_0,_5[i])}}
if(_2==false)return _0;if(this.isDrawn()&&!_0.masterElement){this.logInfo("child added to already drawn parent: "+(isc.Page.isLoaded()?"page loaded, will draw immediately":"page not loaded, will defer child drawing"),"drawing");if(_0.$kv()&&(!_0.tabIndex||_0.$o7)){var _6;if(this.children.length>1){for(var i=this.children.length-2;i>=0;i--){if(this.children[i].$kv()&&this.children[i].$o7){_6=this.children[i];break}}}
if(_6==null&&this.$kv()&&this.$o7){_6=this}
if(_6!=null)_0.$o8(_6)}
_0.draw();this.adjustOverflow("addChild")}
return _0},updateChildrenTopElement:function(){if(!this.children||this.children.length==0)return;for(var i=0;i<this.children.length;i++){this.children[i].setProperty("topElement",this.topElement);this.children[i].updateChildrenTopElement()}},reparent:function(_0){if(this.getID()==_0.getID())return false;if(!isc.Browser.isNav&&(this.parentElement==_0.parentElement)&&this.getClipHandle()&&_0.getClipHandle()&&(this.getClipHandle().parentNode==_0.getClipHandle().parentNode)){return false}
this._adjacentHandle=_0.getClipHandle();if(_0.parentElement){_0.parentElement.addChild(this)}else{if(this.parentElement)this.deparent();else this.clear();this.draw()}
return true},removePeer:function(_0,_1){if(_0==null)return;var _2=this.peers,_3;if(!_2||(_3=_2.indexOf(_0))==-1){this.logWarn("Attempt to remove peer: "+_0+" from Canvas that is not its master");return}
_2.removeItem(_3);if(this[_1]==_0)this[_1]=null;_0.masterElement=null;if(_0.depeered)_0.depeered(this,_1);if(this.peerRemoved)this.peerRemoved(_0,_1)},depeer:function(_0){if(!this.masterElement)return;this.masterElement.removePeer(this,_0)},removeChild:function(_0,_1){if(isc.$m3)arguments.$fa=this;if(_0==null)return;var _2=this.children,_3;if(!_2||(_3=_2.indexOf(_0))==-1){this.logWarn("Attempt to remove child: "+_0+" from Canvas that is not its parent");return}
_2.removeItem(_3);if(this[_1]==_0)this[_1]=null;delete _0.parentElement;delete _0.topElement;if(_0.isDrawn())_0.clear();isc.Canvas.$n0(_0);if(_0.peers)_0.peers.map("deparent");if(_0.deparented)_0.deparented(this,_1);if(this.childRemoved)this.childRemoved(_0,_1)},deparent:function(_0){if(!this.parentElement)return;this.parentElement.removeChild(this,_0)},addPeer:function(_0,_1,_2,_3){if(!_0)return null;if(!isc.isAn.Instance(_0))_0=this.createCanvas(_0);if(_3==true)_0.$nx=true;if(_0.masterElement==this)return null;if(_0.masterElement)_0.depeer(_1);_0.masterElement=this;if(_1)this[_1]=_0;if(!this.peers)this.peers=[];if(!this.peers.contains(_0))this.peers.add(_0);if(this.parentElement){this.parentElement.addChild(_0,_1)}else if(_0.parentElement){_0.deparent()}
if(_2==false)return _0;if(this.isDrawn()&&!_0.isDrawn()){_0.draw();if(_0.$nx)this.redraw()}
return _0},getParentElements:function(){var _0=[],_1=this.parentElement;while(_1){_0.add(_1);_1=_1.parentElement}
return _0},isAncestorOf:function(_0){var _1=_0;while(_1){if(_1==this)return true;_1=_1.parentElement}
return false},$o9:function(_0){var _1=_0;while(_1){if(_1==this)return true;var _2=(_1.visibility==isc.Canvas.INHERIT);if(!_2)return false;_1=_1.parentElement}
return false},getChildCount:function(){if(this.children==null)return;return this.children.map("getChildCount").sum()+this.children.length},contains:function(_0){while(_0){if(_0.parentElement==this)return true;_0=_0.parentElement}
return false},showClickMask:function(_0,_1,_2){var _3=this.getID();if(!this.ns.EH.clickMaskUp(_3)){return this.ns.EH.showClickMask(_0,_1,_2,_3)}},hideClickMask:function(ID){if(ID==null)ID=this.getID();if(this.ns.EH.clickMaskUp(ID))this.ns.EH.hideClickMask(ID)},clickMaskUp:function(ID){if(ID==null)ID=this.getID();return this.ns.EH.clickMaskUp(ID)},setRect:function(_0,_1,_2,_3){if(isc.$m3)arguments.$fa=this;if(isc.isAn.Array(_0)){_1=_0[1];_2=_0[2];_3=_0[3];_0=_0[0]}else if(_0!=null&&_0.top!=null){_1=_0.top;_2=_0.width;_3=_0.height;_0=_0.left}
if(this.logIsDebugEnabled()){this.logDebug("setRect: "+this.echo({left:_0,top:_1,width:_2,height:_3}))}
var _4=this.resizeTo(_2,_3);this.moveTo(_0,_1);return _4},getRect:function(){return[this.getLeft(),this.getTop(),this.getVisibleWidth(),this.getVisibleHeight()]},getLeft:function(){var _0=this.getStyleHandle();if(_0==null)return this.left;var _1=(isc.Browser.isIE?_0.pixelLeft:parseInt(_0.left));if(this.getScrollingMechanism()==isc.Canvas.CLIP){return _1+this.scrollLeft}else{if(this.vscrollOn&&this.showCustomScrollbars&&this.isRTL()){return _1-this.getScrollbarSize()}
return _1}},getOffsetLeft:function(){var _0=this.getClipHandle();if(isc.Browser.isMoz&&this.$pa())_0=null;if(_0==null){this.logInfo("getOffsetLeft() called before widget is drawn - unable to calculate offset "+"coordinates.  Returning specified coordinates");return this.left}
var _1=isc.Canvas.getOffsetLeft(_0);if(this.vscrollOn&&this.showCustomScrollbars&&this.isRTL()){_1-=this.getScrollbarSize()}
if(this.getScrollingMechanism()==isc.Canvas.CLIP){return _1+this.scrollLeft}else{return _1}},setLeft:function(_0){this.moveTo(_0,null)},getTop:function(){var _0=this.getStyleHandle();if(_0==null)return this.top;var _1=(isc.Browser.isIE?_0.pixelTop:parseInt(_0.top));if(this.getScrollingMechanism()==isc.Canvas.CLIP){return _1+this.scrollTop}else{return _1}},getOffsetTop:function(){var _0=this.getClipHandle();if(isc.Browser.isMoz&&this.$pa())_0=null;if(_0==null)return this.top;var _1=isc.Canvas.getOffsetTop(_0);if(this.getScrollingMechanism()==isc.Canvas.CLIP){return _1+this.scrollTop}else{return _1}},setTop:function(_0){this.moveTo(null,_0)},getWidth:function(){return this.width},setWidth:function(_0){this.resizeTo(_0)},getHeight:function(){return this.$m6},setHeight:function(_0){this.resizeTo(null,_0)},getMinWidth:function(){return this.minWidth},getMinHeight:function(){return this.minHeight},getMaxWidth:function(){return this.maxWidth},getMaxHeight:function(){return this.maxHeight},getRight:function(){return this.getLeft()+this.getVisibleWidth()},setRight:function(_0){if(isc.isA.Number(_0)){this.resizeTo(_0-this.getLeft(),null)}else{this.logWarn("setRight() expects an integer value")}},getBottom:function(){return this.getTop()+this.getVisibleHeight()},setBottom:function(_0){if(isc.isA.Number(_0)){this.resizeTo(null,_0-this.getTop())}else{this.logWarn("setBottom() expects an integer value")}},getScrollWidth:function(_0){if(!_0&&this.$pb!=null)return this.$pb;var _1=this.width,_2=this.getClipHandle();if(_2==null){this.logDebug("No size info available from DOM, returning user-specified size");return _1}
if(this.allowNativeContentPositioning){this.$pc=true;if(isc.Browser.isSafari||(isc.Browser.isMoz&&((_2.scrollWidth||_2.offsetWidth)<=parseInt(_2.style.width))))
{_1=isc.Canvas.getScrollWidth(this.getHandle())}else{_1=isc.Canvas.getScrollWidth(_2)}
delete this.$pc}else{var _3=(_2.scrollWidth||_2.offsetWidth);if(_3!=null&&_3!="undefined"){_1=_3;if(isc.Browser.isMoz&&this.getScrollingMechanism()==isc.Canvas.NESTED_DIV){var _4=this.getHandle().offsetLeft;if(_4<0)_4=-_4;_1-=_4}}
if(isc.Browser.isSafari||(isc.Browser.isMoz&&_1<=parseInt(_2.style.width)))
{var _5=this.getHandle();_1=_5.scrollWidth||_5.offsetWidth}
if(isc.isAn.Array(this.children)){var _6=this.$pd(this.children);if(_6>_1)_1=_6}}
this.$pb=_1;return _1},$pd:function(_0,_1){var _2=0,_3=0;for(var i=0;i<_0.length;i++){var _4=_0[i];if(!isc.isA.Canvas(_4))continue;if(_1&&_4.visibility==isc.Canvas.HIDDEN)continue;var _5=_4.position,_6=_4.getVisibleWidth(),_7=(_5==isc.Canvas.ABSOLUTE?_4.getLeft():_4.getOffsetLeft());if(this.overflow!=isc.Canvas.VISIBLE&&this.overflow!=isc.Canvas.CLIP_V&&_5==isc.Canvas.ABSOLUTE)
_6-=_4.getRightMargin();if(_7<_2)_2=_7;if(_7+_6>_3)_3=_7+_6}
return _3-_2},getScrollHeight:function(_0){if(!_0&&this.$pe!=null)return this.$pe;var _1=this.getHeight(),_2=this.getClipHandle();if(_2==null){this.logDebug("No size info available from DOM, returning user-specified size");return _1}
if(this.allowNativeContentPositioning){this.$pf=true;if(isc.Browser.isSafari||(isc.Browser.isMoz&&((_2.scrollHeight||_2.offsetHeight)<=parseInt(_2.style.height))))
{_1=isc.Canvas.getScrollHeight(this.getHandle())}else{_1=isc.Canvas.getScrollHeight(_2)}
delete this.$pf}else{var _3=(_2.scrollHeight||_2.offsetHeight);if(_3!=null&&_3!="undefined"){_1=_3;if(isc.Browser.isSafari||(isc.Browser.isMoz&&_1<=parseInt(_2.style.height)))
{var _4=this.getHandle();_1=_4.scrollHeight||_4.offsetHeight}}
if(isc.isAn.Array(this.children)){var _5=this.$pg(this.children);if(_5>_1)_1=_5}}
this.$pe=_1;return _1},$pg:function(_0,_1){var _2=0,_3=0;for(var i=0;i<_0.length;i++){var _4=_0[i];if(!isc.isA.Canvas(_4))continue;if(_1&&_4.visibility==isc.Canvas.HIDDEN)continue;var _5=_4.position,_6=_4.getVisibleHeight(),_7=(_5==isc.Canvas.ABSOLUTE?_4.getTop():_4.getOffsetTop());if(this.overflow!=isc.Canvas.VISIBLE&&this.overflow!=isc.Canvas.CLIP_H&&_5==isc.Canvas.ABSOLUTE)
_6-=_4.getBottomMargin();if(_7<_2)_2=_7;if(_6+_7>_3)_3=_6+_7}
return _3-_2},getScrollLeft:function(){if(this.getHandle()==null||this.getScrollingMechanism()!=isc.Canvas.NATIVE){return this.scrollLeft}
if(this.isRTL()&&(isc.Browser.isIE&&isc.Browser.minorVersion<5.5))
{return this.getScrollWidth()-this.getVisibleWidth()+this.getHandle().scrollLeft+(this.vscrollOn?this.getScrollbarSize():0)}
return this.getClipHandle().scrollLeft},getScrollTop:function(){if(this.getHandle()==null||this.getScrollingMechanism()!=isc.Canvas.NATIVE){return this.scrollTop}
return this.getClipHandle().scrollTop},setPageLeft:function(_0){this.moveBy(_0-this.getPageLeft(),0)},setPageTop:function(_0){this.moveBy(0,_0-this.getPageTop())},getParentPageRect:function(){if(this.parentElement)return this.parentElement.getPageRect();else return[0,0,isc.Page.getWidth(),isc.Page.getHeight()]},setPageRect:function(_0,_1,_2,_3){if(isc.isAn.Array(_0)){_1=_0[1];_2=_0[2];_3=_0[3];_0=_0[0]}
if(this.keepInParentRect&&this.ns.EH.dragging&&this==this.ns.EH.dragMoveTarget){var _4=(_2==null&&_3==null);if(_2==null)_2=this.getVisibleWidth();if(_3==null)_3=this.getVisibleHeight();var _5=_0+_2,_6=_1+_3,_7;if(isc.isAn.Array(this.keepInParentRect)){_7=this.keepInParentRect}else{_7=this.getParentPageRect()}
var _8=_7[0],_9=_7[1],_10=_7[2],_11=_7[3],_12=_8+_10,_13=_9+_11;if(_4){if(_0<_8){_0=_8}
else if(_5>_12){_0=_12-_2}
if(_1<_9){_1=_9}
else if(_6>_13){_1=_13-_3}}else{if(_0<_8){_2=_2-(_8-_0);_0=_8}else if(_5>_12){_2=_2-(_5-_12)}
if(_1<_9){_3=_3-(_9-_1);_1=_9}else if(_6>_13){_3=_3-(_6-_13)}}}
this.moveBy(_0-this.getPageLeft(),_1-this.getPageTop());this.resizeTo(_2,_3)},getCanvasLeft:function(){if(this.getClipHandle()==null){if(!this.isDrawn()&&this.position==isc.Canvas.RELATIVE){this.logWarn("getCanvasLeft(): Called on undrawn relatively-position widget '"+this.getID()+"'.  The drawn coordinates can not be reliably "+"calculated until the widget has drawn - returning estimated position")}
return this.left};if(isc.Browser.isMoz&&this.$pa())return this.left;var _0=this.$ph(this.parentElement==null?null:this.parentElement.getHandle());if(this.parentElement&&this.parentElement.getScrollingMechanism()==isc.Canvas.CLIP)
_0-=this.parentElement.scrollLeft;return _0},getPageLeft:function(){var _0=this.getClipHandle();if(_0&&isc.Browser.isMoz&&this.$pa())_0=null;if(_0==null){if(!this.isDrawn()&&this.position==isc.Canvas.RELATIVE){this.logWarn("getPageLeft(): Called on undrawn relatively-position widget '"+this.getID()+"'.  The page level coordinates can not be reliably "+"calculated until the widget has drawn - returning estimated position")}
var _1=this.parentElement;if(_1){var _2=0;if(_1.hscrollOn){if(!this.isRTL())_2=_1.getScrollLeft();else{var _3=_1.getScrollWidth()-_1.getViewportWidth();_2=-1*(_3-_1.getScrollLeft())}}
return this.getOffsetLeft()+this.getLeftBorderSize()+_1.getPageLeft()-_2}else{return this.getOffsetLeft()}}
return this.$ph()},$ph:function(_0){if(_0==null)_0=this.getDocumentBody();var _1=this.ns.Canvas.$ph(this.getClipHandle(),_0,this.isRTL());if(this.getScrollingMechanism()==isc.Canvas.CLIP)_1+=this.scrollLeft;return _1},getCanvasTop:function(){if(isc.Browser.isNav)return this.getOffsetTop();if(this.getClipHandle()==null){if(!this.isDrawn()&&this.position==isc.Canvas.RELATIVE){this.logWarn("getCanvasTop(): Called on undrawn relatively-position widget '"+this.getID()+"'.  The drawn coordinates can not be reliably "+"calculated until the widget has drawn - returning estimated position")}
return this.top}
if(isc.Browser.isMoz&&this.$pa())return this.top;var _0=this.$pi(this.parentElement==null?null:this.parentElement.getHandle());if(this.parentElement&&this.parentElement.getScrollingMechanism()==isc.Canvas.CLIP)
_0-=this.parentElement.scrollTop;return _0},getPageTop:function(){var _0=this.getClipHandle();if(_0&&isc.Browser.isMoz&&this.$pa())_0=null;if(_0==null){if(!this.isDrawn()&&this.position==isc.Canvas.RELATIVE){this.logWarn("getPageTop(): Called on undrawn relatively-positioned widget '"+this.getID()+"'.  The page level coordinates can not be reliably "+"calculated until the widget has drawn - returning estimated position")}
var _1=this.parentElement;if(_1){return this.getOffsetTop()+_1.getPageTop()-_1.getScrollTop()}else{return this.getOffsetTop()}}
return this.$pi()},$pi:function(_0){if(_0==null)_0=this.getDocumentBody();var _1=this.ns.Canvas.$pi(this.getClipHandle(),_0);if(this.getScrollingMechanism()==isc.Canvas.CLIP)_1+=this.scrollTop;return _1},getPageRight:function(){return this.getPageLeft()+this.getVisibleWidth()},getPageBottom:function(){return this.getPageTop()+this.getVisibleHeight()},getPageRect:function(){return[this.getPageLeft(),this.getPageTop(),this.getVisibleWidth(),this.getVisibleHeight()]},usingCSSScrollbars:function(){return!this.showCustomScrollbars&&(this.overflow==isc.Canvas.AUTO||this.overflow==isc.Canvas.SCROLL)},$om:function(){if(isc.Canvas.$pj==null){isc.Canvas.$pj=isc.Browser.isNS6||(isc.Browser.isMoz&&(!isc.Browser.isUnix||isc.Browser.geckoVersion>20031007))}
return isc.Canvas.$pj},getScrollingMechanism:function(){if(!this.$pk){if(!this.showCustomScrollbars&&(this.overflow==isc.Canvas.AUTO||this.overflow==isc.Canvas.SCROLL))
{this.$pk=isc.Canvas.NATIVE}else{if(isc.Browser.isIE4||isc.Browser.isNav4){this.$pk=isc.Canvas.CLIP}else if((isc.Browser.isSafari&&isc.Browser.SafariVersion<125)||isc.Browser.isNS6||(isc.Browser.isMoz&&isc.Browser.isUnix&&isc.Browser.geckoVersion<=20031007))
{this.$pk=isc.Canvas.NESTED_DIV}else{this.$pk=isc.Canvas.NATIVE}}}
return this.$pk},usingClipScrolling:function(){return this.getScrollingMechanism()==isc.Canvas.CLIP},nestedDivScrolling:function(){return this.getScrollingMechanism()==isc.Canvas.NESTED_DIV},setMargin:function(_0){this.$pl=null;this.$pm=null;if(!isc.Browser.isDOM){this.margin=_0;return}
if(_0==null){this.margin=null;this.getStyleHandle().margin=this.margin}else{if(isc.isA.String(_0)&&_0.contains(isc.px))_0=parseInt(_0);if(isc.isA.Number(_0)){this.margin=_0;this.getStyleHandle().margin=this.margin+isc.px}}
this.adjustOverflow()},getMargin:function(){return this.margin},getTopMargin:function(){return this.$oz().top},getLeftMargin:function(){return this.$oz().left},getBottomMargin:function(){return this.$oz().bottom},getRightMargin:function(){return this.$oz().right},$oz:function(){if(!this.showEdges)return this.$pn();var _0=this.$pm;if(_0)return _0;var _1=this.$po();var _2=this.$pp;var _0={left:_1.left+_2.$pq,right:_1.right+_2.$pr,top:_1.top+_2.$ps,bottom:_1.bottom+_2.$pt};if(isc.Page.isLoaded()||!isc.Browser.isSafari)this.$pm=_0;return _0},$po:function(){var _0=this.$il;this.$il=false;var _1=this.$pn();this.$il=_0;return _1},$pn:function(){if(this.$pl!=null)return this.$pl;var _0={},_1=isc.px;if(!this.isDrawn()){var _2=this.margin;if(isc.isA.String(_2)){if(_2.endsWith(_1)||parseInt(_2)+""==_2)
_2=parseInt(_2)}
if(isc.isA.Number(_2)){_0.top=_2;_0.bottom=_2;_0.left=_2;_0.right=_2;this.$pl=_0;return _0}}else{var _3=this.getStyleHandle(),_4=_3.marginLeft,_5=_3.marginRight,_6=_3.marginTop,_7=_3.marginBottom;if(isc.isA.String(_4)&&_4.endsWith(_1))
_4=parseInt(_4);if(isc.isA.String(_5)&&_5.endsWith(_1))
_5=parseInt(_5)
if(isc.isA.String(_6)&&_6.endsWith(_1))
_6=parseInt(_6);if(isc.isA.String(_7)&&_7.endsWith(_1))
_7=parseInt(_7)
if(isc.isA.Number(_4))_0.left=_4;if(isc.isA.Number(_5))_0.right=_5;if(isc.isA.Number(_6))_0.top=_6;if(isc.isA.Number(_7))_0.bottom=_7}
if(this.className){if(!isc.isA.Number(_0.left))
_0.left=isc.Canvas.$pu(this.className);if(!isc.isA.Number(_0.right))
_0.right=isc.Canvas.$pv(this.className);if(!isc.isA.Number(_0.top))
_0.top=isc.Canvas.$pw(this.className);if(!isc.isA.Number(_0.bottom))
_0.bottom=isc.Canvas.$px(this.className)}else{if(!isc.isA.Number(_0.left))
_0.left=0;if(!isc.isA.Number(_0.right))
_0.right=0;if(!isc.isA.Number(_0.top))
_0.top=0;if(!isc.isA.Number(_0.bottom))
_0.bottom=0}
if(!isc.Browser.isSafari||isc.Page.isLoaded())this.$pl=_0;return _0},getTopBorderSize:function(){return this.$py().top},getBottomBorderSize:function(){return this.$py().bottom},getLeftBorderSize:function(){return this.$py().left},getRightBorderSize:function(){return this.$py().right},getHBorderSize:function(){return(this.getLeftBorderSize()+this.getRightBorderSize())},getVBorderSize:function(){return this.getTopBorderSize()+this.getBottomBorderSize()},$py:function(){if(this.$pz!=null)return this.$pz;var _0={},_1=isc.px;if(!this.isDrawn()){var _2=this.border;if(_2!=null&&!isc.isA.String(_2)){this.logWarn("this.border defined as "+_2+". This property should have a string value - converting to a string.");this.border=_2+""}
if(_2!=null&&_2.contains(_1)){var _3=_2.match(/\s*\d+px/g);if(isc.isAn.Array(_3))_3=parseInt(_3[0]);else _3=parseInt(_3);if(isc.isA.Number(_3)){this.$pz={left:_3,right:_3,top:_3,bottom:_3}
return this.$pz}}}else{var _4=this.getStyleHandle(),_5=_4.borderLeftWidth,_6=_4.borderRightWidth,_7=_4.borderTopWidth,_8=_4.borderBottomWidth;if(isc.isA.String(_5)&&_5.endsWith(_1))
_5=parseInt(_5);if(isc.isA.String(_6)&&_6.endsWith(_1))
_6=parseInt(_6)
if(isc.isA.String(_7)&&_7.endsWith(_1))
_7=parseInt(_7);if(isc.isA.String(_8)&&_8.endsWith(_1))
_8=parseInt(_8)
if(isc.isA.Number(_5))_0.left=_5;if(isc.isA.Number(_6))_0.right=_6;if(isc.isA.Number(_7))_0.top=_7;if(isc.isA.Number(_8))_0.bottom=_8}
if(this.className){if(!isc.isA.Number(_0.left))
_0.left=isc.Canvas.$p0(this.className);if(!isc.isA.Number(_0.right))
_0.right=isc.Canvas.$p1(this.className);if(!isc.isA.Number(_0.top))
_0.top=isc.Canvas.$p2(this.className);if(!isc.isA.Number(_0.bottom))
_0.bottom=isc.Canvas.$p3(this.className)}else{if(!isc.isA.Number(_0.left))
_0.left=0;if(!isc.isA.Number(_0.right))
_0.right=0;if(!isc.isA.Number(_0.top))
_0.top=0;if(!isc.isA.Number(_0.bottom))
_0.bottom=0}
if(!isc.Browser.isSafari||isc.Page.isLoaded())this.$pz=_0;return _0},setPadding:function(_0){this.$p4=null;if(!isc.Browser.isDOM){this.padding=_0;return}
if(_0==null){this.padding=null;this.getHandle().style.padding=null;if(this.useClipDiv)this.getClipHandle().style.padding=null}else{if(isc.isA.String(_0)&&_0.contains(isc.px))_0=parseInt(_0);if(isc.isA.Number(_0)){this.padding=_0;this.getHandle().style.padding=this.padding+isc.px;if(this.useClipDiv)this.getClipHandle().style.padding="0px"}}},getPadding:function(){return this.padding},getTopPadding:function(){return this.$p5().top},getBottomPadding:function(){return this.$p5().bottom},getLeftPadding:function(){return this.$p5().left},getRightPadding:function(){return this.$p5().right},getVPadding:function(){return this.getTopPadding()+this.getBottomPadding()},getHPadding:function(){return this.getLeftPadding()+this.getRightPadding()},$p5:function(){if(this.$p4!=null)return this.$p4;var _0={},_1=isc.px;if(this.isDrawn()&&this.getHandle()!=null){var _2=this.getHandle().style;if(_2.paddingTop!=null&&!isc.isAn.emptyString(_2.paddingTop)&&_2.paddingTop.endsWith(_1)){_0.top=parseInt(_2.paddingTop)}
if(_2.paddingBottom!=null&&!isc.isAn.emptyString(_2.paddingBottom)&&_2.paddingBottom.endsWith(_1)){_0.bottom=parseInt(_2.paddingBottom)}
if(_2.paddingLeft!=null&&!isc.isAn.emptyString(_2.paddingLeft)&&_2.paddingLeft.endsWith(_1)){_0.left=parseInt(_2.paddingLeft)}
if(_2.paddingRight!=null&&!isc.isAn.emptyString(_2.paddingRight)&&_2.paddingRight.endsWith(_1)){_0.right=parseInt(_2.paddingRight)}}else if(this.padding){_0.left=_0.right=_0.bottom=_0.top=parseInt(this.padding)}
if(this.className){if(!isc.isA.Number(_0.left))_0.left=isc.Canvas.$p6(this.className);if(!isc.isA.Number(_0.right))_0.right=isc.Canvas.$p7(this.className);if(!isc.isA.Number(_0.top))_0.top=isc.Canvas.$p8(this.className);if(!isc.isA.Number(_0.bottom))_0.bottom=isc.Canvas.$p9(this.className)}else{if(!isc.isA.Number(_0.left))_0.left=0;if(!isc.isA.Number(_0.right))_0.right=0;if(!isc.isA.Number(_0.top))_0.top=0;if(!isc.isA.Number(_0.bottom))_0.bottom=0}
if(!isc.Browser.isSafari||isc.Page.isLoaded())this.$p4=_0;return _0},containsPoint:function(x,y,_0){if(!this.isVisible())return false;if(_0==null)_0=false;var _1=0,_2=0;var _3=this.$qa;if(_3==null)_3=this.$qa=[];_3.length=1;_3[0]=this;var i=1,_4=this;while(_4.parentElement!=null){_4=_4.parentElement
_3[i]=_4;i++}
var _5,_6;for(var j=_3.length-1;j>=0;j--){var _7=_3[j];_1+=_7.getCanvasLeft();_2+=_7.getCanvasTop();if(j+1<_3.length){var _8=_3[j+1];_1-=_8.getScrollLeft();_2-=_8.getScrollTop()}
if(_7==this&&!_0){_5=_7.getVisibleWidth();_6=_7.getVisibleHeight()}else{_5=_7.getOuterViewportWidth();_6=_7.getOuterViewportHeight()}
if(!((x>=_1)&&(x<=_1+_5)&&(y>=_2)&&(y<=_2+_6)))
{return false}}
return true},visibleAtPoint:function(x,y,_0,_1){if(!this.containsPoint(x,y,_0))return false;if(!isc.isAn.Array(_1))_1=[_1];var _2=this;while(_2!=null){var _3=(_2.parentElement!=null?_2.parentElement.children:isc.Canvas.$qb);for(var i=0;i<_3.length;i++){var _4=_3[i];if(_4!=null&&_4!=_2&&_4.isDrawn()&&_4.isVisible()&&!_1.contains(_4)&&(_4.getZIndex()>_2.getZIndex())&&_4.containsPoint(x,y,false))
{return false}}
_2=_2.parentElement}
return true},scrollIntoView:function(x,y,_0,_1,_2){if(_0==null)_0=0;if(_1==null)_1=0;if(_2==null)_2=true;var _3,_4;if(this.overflow!=isc.Canvas.VISIBLE&&this.overflow!=isc.Canvas.IGNORE){if(x!=null){var _5=this.getScrollLeft(),_6=this.getViewportWidth(),_7=_5+_6,_8=false,_9=false;if(x+_0>_7)_8=true;if(x<_5)_9=true;if(_8!=_9){_3=x;if(_2){_3+=parseInt(_0/ 2)
-parseInt(this.getViewportWidth()/2)}}}
if(y!=null){var _10=this.getScrollTop(),_11=_10+this.getViewportHeight(),_12=false,_13=false;if(y+_1>_11)_13=true;if(y<_10)_12=true;if(_12!=_13){_4=y;if(_2){_4+=parseInt(_1/ 2)
-parseInt(this.getViewportHeight()/2)}}}
if(_3!=null||_4!=null){this.scrollTo(_3,_4)}}
if(this.parentElement!=null){var _14=x,_15=y;if(_14!=null){_14-=this.getScrollLeft();_14+=this.getOffsetLeft()}
if(_15!=null){_15-=this.getScrollTop();_15+=this.getOffsetTop()}
this.parentElement.scrollIntoView(_14,_15,_0,_1)}},intersects:function(_0){var _1=_0.getPageLeft(),_2=_0.getVisibleWidth(),_3=_0.getPageTop(),_4=_0.getVisibleHeight();return this.intersectsRect(_1,_3,_2,_4)},intersectsRect:function(_0,_1,_2,_3){var _4,_5=[];if(isc.isAn.Array(_0))_4=_0;else _4=[_0,_1,_2,_3];return isc.Canvas.rectsIntersect(_4,[this.getPageLeft(),this.getPageTop(),this.getVisibleWidth(),this.getVisibleHeight()])},containsEvent:function(){return this.containsPoint(this.ns.EH.getX(),this.ns.EH.getY())},getEventEdge:function(_0){var _1=this.ns.EH;if(!_0)_0=(this.resizeFrom||_1.ALL_EDGES);var _2=this.edgeMarginSize;if(!isc.isAn.Array(_0))_0=[_0];var _3=this.getPageLeft()+this.getLeftMargin(),_4=this.getPageTop()+this.getTopMargin(),_5=(this.getPageRight()-this.getRightMargin())+1,_6=(this.getPageBottom()-this.getBottomMargin())+1,y=_1.getY(),x=_1.getX(),_7="",_8="";if(y<_4||y>_6||x<_3||x>_5)return null;if(y>=(_6-_2)&&y<=_6)_8="B";else if(y>=_4&&y<=(_4+_2+1))_8="T";if(x>=(_5-_2)&&x<=_5)_7="R";else if(x>=_3&&x<=(_3+_2+1))_7="L";if(_7!=""||_8!=""){var _9=_8+_7;if(_0.contains(_9))return _9;else if(_7!=""&&_0.contains(_7))return _7;else if(_8!=""&&_0.contains(_8))return _8}
return null},getOffsetX:function(){var _0=this.ns.EH.getX()-
(this.getPageLeft()+this.getLeftBorderSize())+this.getScrollLeft()
-(this.vscrollOn&&this.isRTL()?this.getScrollbarSize():0);return _0},getOffsetY:function(){return this.ns.EH.getY()+this.getScrollTop()-
(this.getPageTop()+this.getTopBorderSize())},setClip:function(_0,_1,_2,_3){if(isc.isAn.Array(_0))
this.$c4=_0;else
this.$c4=[_0,_1,_2,_3];var _4=this.getClipHandle();if(_4!=null){if(this.logIsDebugEnabled()){this.logDebug("setClip: "+this.echo({left:this.$c4[3],top:this.$c4[0],right:this.$c4[1],bottom:this.$c4[2]}))}
var _5=this.$c4.duplicate();if(this.getScrollingMechanism()==isc.Canvas.CLIP){_5[3]+=this.scrollLeft;_5[0]+=this.scrollTop;_5[1]+=this.scrollLeft;_5[2]+=this.scrollTop}
if(this.overflow==isc.Canvas.HIDDEN||(this.showCustomScrollbars==true&&(this.overflow==isc.Canvas.AUTO||this.overflow==isc.Canvas.SCROLL))||isc.Browser.isMacIE){var _6=parseInt(_4.style.width),_7=_5[1],_8=parseInt(_4.style.height),_9=_5[2],_10=this.$o2(_7,_9);_7=_10[0];_9=_10[1];if(_6<_7){this.logDebug("setClip(): setting width because handle.width is smaller")
_4.style.width=_7+isc.px}
if(_8<_9){this.logDebug("setClip(): setting height because handle.height is smaller\r"+[_8,_9])
_4.style.height=_9+isc.px}}
_4.style.clip="rect("+_5.join("px ")+"px)"}},getScrollbarSize:function(){if(this.showCustomScrollbars)return this.scrollbarSize;return isc.Canvas.getNativeScrollbarSize()},getViewportWidth:function(){return this.getVisibleWidth()-
(this.vscrollOn?this.getScrollbarSize():0)-
this.getHMarginBorder()},getViewportHeight:function(){return this.getVisibleHeight()-
(this.hscrollOn?this.getScrollbarSize():0)-
this.getVMarginBorder()},getOuterViewportWidth:function(){return this.getVisibleWidth()-(this.vscrollOn?this.getScrollbarSize():0)-
this.getHMarginSize()},getOuterViewportHeight:function(){return this.getVisibleHeight()-(this.hscrollOn?this.getScrollbarSize():0)-
this.getVMarginSize()},getInnerHeight:function(){return this.getHeight()-(this.hscrollOn?this.getScrollbarSize():0)
-this.getVMarginBorder()},getInnerWidth:function(){return this.getWidth()-(this.vscrollOn?this.getScrollbarSize():0)
-this.getHMarginBorder()},getInnerContentHeight:function(){return this.getHeight()-(this.hscrollOn?this.getScrollbarSize():0)
-this.getVMarginBorderPad()},getInnerContentWidth:function(){return this.getWidth()-(this.vscrollOn?this.getScrollbarSize():0)
-this.getHMarginBorderPad()},getVBorderPad:function(){return this.getVBorderSize()+this.getVPadding()},getHBorderPad:function(){return this.getHBorderSize()+this.getHPadding()},getHMarginSize:function(){return this.getLeftMargin()+this.getRightMargin()},getVMarginSize:function(){return this.getTopMargin()+this.getBottomMargin()},getVMarginBorder:function(){return this.getVMarginSize()+this.getVBorderSize()},getHMarginBorder:function(){return this.getHMarginSize()+this.getHBorderSize()},getVMarginBorderPad:function(){return this.getVMarginSize()+this.getVBorderPad()},getHMarginBorderPad:function(){return this.getHMarginSize()+this.getVBorderPad()},getClipWidth:function(){return this.getVisibleWidth()},getClipHeight:function(){return this.getVisibleHeight()},getVisibleWidth:function(){if(this.overflow==isc.Canvas.VISIBLE||this.overflow==isc.Canvas.CLIP_V){return Math.max(this.width,(this.getScrollWidth()+this.getHMarginBorder()))}else{return this.width}},getVisibleHeight:function(){if(this.overflow==isc.Canvas.VISIBLE||this.overflow==isc.Canvas.CLIP_H){return Math.max(this.getHeight(),(this.getScrollHeight()+this.getVMarginBorder()))}else{return this.getHeight()}},moveBy:function(_0,_1){if(isc.$m3)arguments.$fa=this;if(isc.isA.Number(_0))
this.left+=_0;else
_0=0;if(isc.isA.Number(_1))
this.top+=_1;else
_1=0;if(_0==0&&_1==0)return false;this.$c3(this.left,this.top);this.movePeersBy(_0,_1);if(this.$j6&&this.$nl){var _2=this.$ns();if(_2!=null){var _3=parseInt(_2.style.left)+_0,_4=parseInt(_2.style.top)+_1;_2.style.left=_3+"px";_2.style.top=_4+"px"}}
if(this.$l3!=null){var _5=this.$l3;if(_0!=0){var _3=parseInt(_5.style.left)+_0;_5.style.left=_3+"px"}
if(_1!=0){var _4=parseInt(_5.style.top)+_1;_5.style.top=_4+"px"}}
this.moved(_0,_1);return true},moved:function(deltaX,deltaY){if(this.parentElement)this.parentElement.childMoved(this,deltaX,deltaY);if(this.children){for(var i=0;i<this.children.length;i++){this.children[i].parentMoved()}}},childMoved:function(_0,_1,_2){this.$qc("childMoved")},parentMoved:function(){if(this.children)this.children.map("parentMoved")},dragRepositioned:function(){},movePeersBy:function(_0,_1){if(this.peers){for(var _2=this.peers,i=0;i<_2.length;i++){if(_2[i]&&_2[i].$mm){_2[i].moveBy(_0,_1)}}}},$qd:"height",$qe:"width",$qf:"left",$qg:"top",$qh:"$m6",$qi:"%",$qj:{height:"_percent_height",width:"_percent_width",left:"_percent_left",top:"_percent_top"},getDelta:function(_0,_1,_2){var _3=_0,_4=this.$qj[_0];if(_0==this.$qd)_3=this.$qh;if(_1==null)return null;if(isc.isA.String(_1)&&_1.endsWith(this.$qi)){this[_4]=_1;if(this.parentElement==null&&this.$oh==null){this.$oh=isc.Page.setEvent(this.$mp,this,isc.Page.FIRE_ONCE)}
if(!this.isDrawn()){_2=this[_3]=0}
var _5=this.parentElement,_6=(_0==this.$qf||_0==this.$qe?(_5?_5.getInnerWidth():isc.Page.getWidth()):(_5?_5.getInnerHeight():isc.Page.getHeight()));if(isc.Browser.isIE&&!isc.Page.isLoaded()&&((isc.Page.getWidth()==0)||(isc.Page.getHeight()==0)))
{isc.Page.setEvent("load",this.ID+".pageResize()",isc.Page.FIRE_ONCE);this.$nd=true}
_1=Math.round((parseInt(_1,10)/100)*_6);return _1-_2}
var _7=_1;if(!isc.isA.Number(_1)){_1=parseInt(_1);if(isc.isA.Number(_1)&&isc.isA.String(_2)){this[_3]=_2=_1}}
this[_4]=null;if(!isc.isA.Number(_1)||(_1<0&&(_0==this.$qe||_0==this.$qd)))
{if(_7!="*"){this.logWarn("ignoring bad or negative "+_0+": "+_7+this.getStackTrace())}
if(_2==this[_0]||_2==this[_3]){var _8=this.getClass().getInstanceProperty(_0);if(!isc.isA.Number(_8)){if(_0==this.$qd)_8=this.defaultHeight;else if(_0==this.$qe)_8=this.defaultWidth}
_2=this[_0]=(isc.isA.Number(_8)?_8:0);if(_0!=_3)this[_3]=_2}
this.adjustOverflow();return null}
return _1-_2},pageResize:function(){this.$oh=null;this.$nd=null;this.$nw()},moveTo:function(_0,_1){if(_0==null&&_1==null)return;if(isc.$m3)arguments.$fa=this;if(_0!=null&&_0.top!=null){_1=_0.top;_0=_0.left}
var _2=this.getDelta(this.$qf,_0,this.getLeft()),_3=this.getDelta(this.$qg,_1,this.getTop());return this.moveBy(_2,_3)},moveToEvent:function(_0,_1){var _2=this.ns.EH.getLastEvent(),x=_2.x,y=_2.y;if(isc.isA.Number(_0))x-=_0;if(isc.isA.Number(_1))y-=_1;this.setPageRect(x,y)},placeNextTo:function(_0,_1,_2,_3){var _4=_0.getRect(),_5=isc.Canvas.$qk(this.getVisibleWidth(),this.getVisibleHeight,_4,_1,_2,_3);this.setPageRect(_5[0],_5[1])},placeNear:function(_0,_1){if(isc.isAn.Array(_0)){_1=_0[1];_0=_0[0]}else if(isc.isAn.Object(_0)){_1=_0.top;_0=_0.left}
var _2=isc.Canvas.$qk(this.getVisibleWidth(),this.getVisibleHeight(),{left:_0,top:_1});this.setPageRect(_2[0],_2[1])},resizeBy:function(_0,_1){if(isc.$m3)arguments.$fa=this;var _2=this.getWidth(),_3=this.getHeight();if(isc.isA.Number(_0)){this.width+=_0}else{_0=0}
if(isc.isA.Number(_1))
this.$m6=_3+_1;else
_1=0;if(_0==0&&_1==0)return false;var _4=false;if(this.isDrawn()){this.$c3(this.left,this.top,this.width,this.$m6);var _5=this.$c4;if(isc.isAn.Array(_5)){_5[1]+=_0;_5[2]+=_1;this.setClip(_5)}
_4=this.shouldRedrawOnResize(_0,_1);if(_4){this.markForRedraw(this.$mp)}}
this.layoutChildren("resized",_0,_1)
if(!_4)this.adjustOverflow(this.$mp);if(this.$j6&&this.$j6){var _6=this.$o6();if(_6!=null){_6.style.width=this.getWidth()+"px";_6.style.height=this.getHeight()+"px"}}
if(this.$l3!=null){var _7=this.$l3;if(_0!=0)_7.style.width=(parseInt(_7.style.width)+_0)+"px";if(_1!=0)_7.style.height=(parseInt(_7.style.height)+_1)+"px"}
this.resizePeersBy(_0,_1);this.resized(_0,_1);return true},shouldRedrawOnResize:function(_0,_1){var _2=this.redrawOnResize;if(_2==null){_2=!((this.children!=null&&this.children.length>0)||(this.getInnerHTML==isc.Canvas.$en.getInnerHTML&&!isc.isA.Function(this.contents)&&!isc.Browser.isNav4))}
return _2},dragResizing:function(){var _0=isc.EH;return(_0.dragging&&_0.dragOperation==_0.DRAG_RESIZE&&_0.dragTarget==this)},resized:function(deltaX,deltaY,reason){if(this.parentElement)this.parentElement.childResized(this,deltaX,deltaY,reason);if(this.peers)this.peers.map("masterResized",reason);if(this.clipCorners){var clips=this.$ql;if(clips.TR)clips.TR.moveBy(deltaX,null);if(clips.BL)clips.BL.moveBy(null,deltaY);if(clips.BR)clips.BR.moveBy(deltaX,deltaY)}
if(this.$qm!=null)delete this.$qm;if(this.$qn!=null)delete this.$qn},childResized:function(_0,_1,_2){this.$qc("child resize")},dragResized:function(){},resizePeersBy:function(_0,_1){var _2=this.peers;if(_2){for(var i=0;i<_2.length;i++){if(_2[i]&&_2[i].$le){_2[i].resizeBy(_0,_1)}}}},layoutChildren:function(_0,_1,_2){this.$qo()},$qo:function(){var _0=this.children;if(_0!=null&&_0.length>0){for(var i=0;i<_0.length;i++){if(isc.isA.Canvas(_0[i]))_0[i].$nw()}}},$qp:function(_0,_1){},resizeTo:function(_0,_1){if(isc.$m3)arguments.$fa=this;if(_0==null&&_1==null)return false;var _2=this.getDelta(this.$qe,_0,this.getWidth()),_3=this.getDelta(this.$qd,_1,this.getHeight());return this.resizeBy(_2,_3)},resizeToEvent:function(_0){var _1=this.ns.EH,_2=_1.getLastEvent(),x=_2.x,y=_2.y,_3=this.getPageLeft(),_4=this.getPageTop(),_5=this.getPageRight(),_6=this.getPageBottom();if(this.logIsDebugEnabled("dragResize")){this.logDebug("resizeToEvent: coords: "+isc.Log.echo({x:x,y:y,left:_3,top:_4,right:_5,bottom:_6}),"dragResize")}
_0=_0||_1.resizeEdge||"BR";if(_0.contains("T")){var _7=Math.min(this.maxHeight,Math.max(_6-y,this.minHeight));_4=_6-_7}else if(_0.contains("B")){var _7=Math.min(this.maxHeight,Math.max(y-_4,this.minHeight));_6=_4+_7}
if(_0.contains("L")){var _8=Math.min(this.maxWidth,Math.max(_5-x,this.minWidth));_3=_5-_8}else if(_0.contains("R")){var _8=Math.min(this.maxWidth,Math.max(x-_3,this.minWidth));_5=_3+_8}
var _9=_5-_3,_10=_6-_4;this.setPageRect(_3,_4,_9,_10);_1.dragResizeWidth=_9;_1.dragResizeHeight=_10;if(this==this.ns.EH.dragTracker&&!isc.Browser.isNav)this.redraw()},$nw:function(){if(this._percent_left!=null||this._percent_top!=null||this._percent_width!=null||this._percent_height!=null)
{this.setRect(this._percent_left,this._percent_top,this._percent_width,this._percent_height)}},prepareForDragging:function(){var _0=this.ns.EH;if(_0.dragTarget)return;if(this.canDragResize){_0.resizeEdge=this.getEventEdge();if(_0.resizeEdge){_0.dragTarget=this;_0.dragOperation=_0.DRAG_RESIZE;_0.dragMoveAction=_0.$lq}}
if(!_0.dragTarget){if(this.canDragReposition){_0.dragTarget=this;_0.dragOperation=_0.DRAG_REPOSITION;_0.dragMoveAction=_0.$kz}else if(this.canDrag){_0.dragTarget=this;_0.dragOperation=_0.DRAG}}},shouldDragScroll:function(){return this.canDragScroll},$qq:function(_0){var _1=this.getVDragScrollThreshold();if(_0<_1)return-1;if(_0>(this.getViewportHeight()-_1))return 1;return 0},$qr:function(_0){var _1=this.getHDragScrollThreshold();if(_0<_1)return-1;if(_0>(this.getViewportWidth()-_1))return 1;return 0},$k6:function(){var _0=(this.getOffsetY()-this.getScrollTop()),_1=(this.getOffsetX()-this.getScrollLeft());return(this.$qq(_0)!=0||this.$qr(_1)!=0)},getHDragScrollThreshold:function(){if(this.$qm!=null)return this.$qm;var _0=this.dragScrollThreshold;if(isc.isA.Number(_0))this.$qm=_0;else{_0=parseInt(_0);if(!isNaN(_0)){this.$qm=parseInt(_0*this.getViewportWidth()/100);return this.$qm}else{isc.Log.logWarn("Unable to resolve specified drag scroll threshold '"+this.dragScrollThreshold+"' to a valid size. Should be specified as"+" an absolute pixel value, or a percentage of widget viewport.");return 0}}},getVDragScrollThreshold:function(){if(this.$qn!=null)return this.$qn;var _0=this.dragScrollThreshold;if(isc.isA.Number(_0))this.$qn=_0;else{_0=parseInt(_0);if(!isNaN(_0)){this.$qn=parseInt(_0*this.getViewportHeight()/100);return this.$qn}else{isc.Log.logWarn("Unable to resolve specified drag scroll threshold '"+this.dragScrollThreshold+"' to a valid size. Should be specified as"+" an absolute pixel value, or a percentage of widget viewport.");return 0}}},$k7:function(){if(this.$qs!=null)return;var _0=(this.getOffsetY()-this.getScrollTop()),_1=(this.getOffsetX()-this.getScrollLeft()),_2=this.$qr(_1),_3=this.$qq(_0);this.$qs=isc.Timer.setTimeout(this.getID()+".$qt("+_2+","+_3+",true)",this.dragScrollDelay)},$qt:function(_0,_1,_2){this.$qs=null;var _3=0,_4=0;if(this.ns.EH.dragging&&this.containsEvent()){var _5=this.getOffsetX()-this.getScrollLeft(),_6=this.getOffsetY()-this.getScrollTop(),_7=this.getViewportWidth(),_8=this.getViewportHeight();if(!isc.isA.Number(this.maxDragScrollIncrement)){var _9=parseInt(this.maxDragScrollIncrement);if(!isc.isA.Number(_9))
this.logWarn("Unable to resolve this.maxDragScrollIncrement '"+this.maxDragScrollIncrement+"' to a valid value. This should be an "+"absolute pixel value or a percentage to scroll by.");this.$qu=parseInt(_9/ 100*this.getScrollWidth());this.$qv=parseInt(_9/ 100*this.getScrollHeight())}else{this.$qu=this.$qv=this.maxDragScrollIncrement}
if(!isc.isA.Number(this.minDragScrollIncrement)){var _10=parseInt(this.minDragScrollIncrement);if(!isc.isA.Number(_10))
this.logWarn("Unable to resolve this.minDragScrollIncrement '"+this.minDragScrollIncrement+"' to a valid value. This should be an "+"absolute pixel value or a percentage to scroll by.");this.$qw=parseInt(_10/ 100*(this.getScrollWidth()-_7));this.$qx=parseInt(_10/ 100*(this.getScrollHeight()-_8))}else{this.$qw=this.$qx=this.minDragScrollIncrement}
if(_2){if(_0!=0&&_0!=this.$qr(_5))
_0=0;if(_1!=0&&_1!=this.$qq(_6))
_1=0}else{_0=this.$qr(_5),_1=this.$qq(_6)}
_3=this.getScrollIncrement(_0,_5,_7,this.getHDragScrollThreshold(),this.$qu,this.$qw);_4=this.getScrollIncrement(_1,_6,_8,this.getVDragScrollThreshold(),this.$qv,this.$qx)}
if(_3!=0||_4!=0){this.scrollBy(_3,_4);this.$qs=isc.Timer.setTimeout(this.getID()+".$qt()",50)}else{delete this.$qu;delete this.$qw;delete this.$qv;delete this.$qx}},getScrollIncrement:function(_0,_1,_2,_3,_4,_5){if(_0==null||_0==0)return 0;if(_0>0){_1=_1-(_2-_3)}else if(_0<0){_1=_3-_1}
if(_1<0||_1>_3)return 0;var _6=_0*
((_1/ _3)*(_4-_5)+_5);return parseInt(_6)},hasInherentHeight:function(){return(this.children==null&&this.overflow=="visible"||this.overflow=="clip_h")},hasInherentWidth:function(){return(this.children==null&&this.overflow=="visible"||this.overflow=="clip_v")},getOverflow:function(){return this.overflow},setOverflow:function(_0){if(this.overflow==_0)return;this.overflow=_0;if(!this.isDrawn())return;if(_0!=isc.Canvas.SCROLL&&_0!=isc.Canvas.AUTO&&(this.hscrollOn||this.vscrollOn))
{this.hscrollOn=this.vscrollOn=false;if(this.hscrollbar!=null)this.hscrollbar.hide();if(this.vscrollbar!=null)this.vscrollbar.hide()}
if(isc.Browser.isIE&&(_0==isc.Canvas.CLIP_H||_0==isc.Canvas.CLIP_V))
{this.markForRedraw();return}
var _1=this.getStyleHandle();_1.overflow=this.$ol();var _2=this.$on();_1.width=_2[0];_1.height=_2[1];if(this.getScrollingMechanism()==isc.Canvas.CLIP&&!this.$om()&&(_0==isc.Canvas.HIDDEN||(this.showCustomScrollbars&&(_0==isc.Canvas.SCROLL||_0==isc.Canvas.AUTO)))){var _3=this.scrollLeft||0,_4=this.scrollTop||0;if(this.$c4==null){this.$c4=[_3,this.getWidth()+_3,this.getHeight()+_4,_4]}
_1.clip="rect("+this.$c4[0]+"px,"+this.$c4[1]+"px,"+this.$c4[2]+"px,"+this.$c4[3]+"px)"}else if(_1.clip!=null&&_1.clip!=""&&_1.clip!="rect(auto auto auto auto)"){_1.clip=(isc.Browser.isIE?"rect(auto)":"")}
this.adjustOverflow("setOverflow");this.$qy()},$qc:function(_0){if(this.isDrawn()&&!this.$qz){isc.Timer.setTimeout(this.getID()+".adjustOverflow('"+_0+"')",0)}
this.$qz=true},adjustOverflow:(isc.Browser.isIE?function(_0){if(isc.$m3)arguments.$fa=this;this.$qz=false;if(!this.isDrawn()||this.overflow==isc.Canvas.IGNORE)return true;var _1=this.getHandle();var _2;if(isc.Browser.isWin){_2=_1!=null&&_1.scrollHeight!="undefined"&&_1.scrollHeight!=0}
if(_2){return this.$q0()}else{if(!this.$q1){this.$qc();this.$q1=true}else{this.logDebug("still waiting for size to become available","overflow");this.$q2()}
return false}}:function(_0){this.$qz=false;if(!this.isDrawn())return true;if((isc.Browser.isMoz||isc.Browser.isSafari)&&!isc.Page.isLoaded()){if(!this.$q3){this.$q3=new Function("if(window."+this.getID()+")"+this.getID()+".adjustOverflow();")}
isc.Page.setEvent("load",this.$q3,isc.Page.FIRE_ONCE);return}
var _1=this.getClipHandle().scrollHeight;if(_1==null||_1==0)_1==this.getClipHandle().offsetHeight;if(_1==0){if(!this.$q1){this.$qc();this.$q1=true}else{this.logDebug("still waiting for size to become available","overflow");this.$q2()}
return false}
return this.$q0()}),$q2:function(){isc.Canvas.$q2(this.getID())},$q0:function(){var _0=this.$pb,_1=this.$pe;if(this.$pb!=null)delete this.$pb;if(this.$pe!=null)delete this.$pe;var _2=isc.Canvas;this.$q1=null;if(this.getHandle()==null)this.logWarn("adjustOverflow: handle null");if(this.getClipHandle()==null)this.logWarn("adjustOverflow: clipHandle null");if(this.logIsInfoEnabled("sizing")){this.logInfo("Drawn size: "+this.getScrollWidth(true)+" by "+this.getScrollHeight(true)+", specified size: "+this.getWidth()+" by "+this.getHeight(),"sizing")}
if(this.overflow==_2.IGNORE){}else if(this.overflow==_2.VISIBLE){var _3=this.getScrollWidth(),_4=this.getScrollHeight();if(this.$om()){var _5=this.getClipHandle();if(_5.scrollTop!=0||_5.scrollLeft!=0){_5.scrollTop=_5.scrollLeft=0}}
var _6=this.getInnerWidth(),_7=this.getInnerHeight();if((_0==null||_0<=_6)&&(_3<=_6)&&(_1==null||_1<=_7)&&(_4<=_7))
{return}
var _8=this.getHMarginBorder(),_9=this.getVMarginBorder();if((isc.Browser.isIE||isc.Browser.isMoz)&&(_3>_6)&&(this.$q4==_3)){this.$c3(this.left,this.top,this.getWidth(),Math.max((_4+_9),this.getHeight()));_3=this.getScrollWidth(true)
if(_3>_6){this.logDebug("double resize check","overflow");this.$c3(this.left,this.top,(_3+_8),Math.max((_4+_9),this.getHeight()))}}else{this.$c3(this.left,this.top,Math.max((_3+_8),this.getWidth()),Math.max((_4+_9),this.getHeight()));var _10=this.getScrollHeight(true),_11=this.getScrollWidth(true);if(_10!=_4||_11!=_3){_3=_11;_4=_10;this.$c3(this.left,this.top,Math.max((_3+_8),this.getWidth()),Math.max((_4+_9),this.getHeight()))}}
this.$q4=_3;if((_0!=null&&_0!=_3)||(_1!=null&&_1!=_4))
{this.resized(_3-_0,_4-_1,"overflow")}}else if(this.overflow==_2.HIDDEN){this.$c3(this.left,this.top,this.getWidth(),this.getHeight());if(isc.Browser.isIE&&this.isRTL()){this.scrollLeft=this.getClipHandle().scrollLeft}}else if(this.overflow==_2.CLIP_H){var _4=this.getScrollHeight(),_9=this.getVMarginBorder();this.setClip(0,this.getWidth(),Math.max(_4+_9,this.getHeight()),0);this.$c3(this.left,this.top,this.getWidth(),Math.max(_4+_9,this.getHeight()))}else if(this.overflow==_2.CLIP_V){var _3=this.getScrollWidth(),_8=this.getHMarginBorder();if((isc.Browser.isIE||isc.Browser.isMoz)&&(_3>this.getInnerWidth())&&(this.$q4==_3)){this.$c3(this.left,this.top,this.getWidth(),this.getHeight());_3=this.getScrollWidth(true)
if(_3>this.getInnerWidth()){this.$c3(this.left,this.top,_3+_8,this.getHeight())}}else{this.$c3(this.left,this.top,Math.max(_3+_8,this.getWidth()),this.getHeight())}
this.setClip(0,Math.max(_3+_8,this.getWidth()),this.getHeight(),0);this.$q4=_3}else{if(isc.Browser.isIE&&this.showCustomScrollbars&&this.getScrollingMechanism()==isc.Canvas.NATIVE)
{var _12=this.scrollLeft,_13=this.scrollTop;if(this.getScrollLeft()!=_12||this.getScrollTop()!=_13){this.$kw()}}
var _14=this.vscrollOn,_15=this.hscrollOn;if(this.overflow==isc.Canvas.SCROLL){this.hscrollOn=this.vscrollOn=true}else{var _4=this.getScrollHeight(),_16=this.getHeight(),_3=this.getScrollWidth(),_17=this.getWidth(),_18=this.getScrollbarSize(),_19;var _9=this.getVMarginBorder(),_8=this.getHMarginBorder();if(!this.showCustomScrollbars&&this.getHandle().clientHeight!=null){this.hscrollOn=(this.getClipHandle().clientHeight<_16-_9);this.vscrollOn=(this.getClipHandle().clientWidth<_17-_8)}else{this.vscrollOn=(_4-(_16-_9))>0;this.hscrollOn=(_3-(_17-_8))>0}
if((this.vscrollOn&&!_14&&!this.hscrollOn)||(this.hscrollOn&&!_15&&!this.vscrollOn))
{if(this.showCustomScrollbars){this.$c3(this.left,this.top,this.getWidth(),this.getHeight())}
_19=(this.vscrollOn?"V":"")+(this.hscrollOn?"H":"");this.layoutChildren("introducing scrolling");var _11=this.getScrollWidth(true),_10=this.getScrollHeight(true);if(this.logIsDebugEnabled("scrolling")){this.logDebug("Rechecking scrollWidth/Height on introduction of scroll:"+" old: "+[_3,_4]+", new: "+[_11,_10],"scrolling")}
_3=_11;_4=_10}
if(this.vscrollOn&&!this.hscrollOn){if(this.showCustomScrollbars||(this.getClipHandle().clientHeight==null))
this.hscrollOn=_3-(_17-_8-_18)>0;else
this.hscrollOn=(_16>this.getClipHandle().clientHeight+this.getVBorderSize())}else if(this.hscrollOn){if(this.showCustomScrollbars||(this.getClipHandle().clientWidth==null))
this.vscrollOn=_4-(_16-_9-_18)>0;else
this.vscrollOn=(_17>this.getClipHandle().clientWidth+this.getHBorderSize())}}
if(this.logIsInfoEnabled("scrolling")){this.logInfo("Drawn size: "+this.getScrollWidth(true)+" by "+this.getScrollHeight(true)+", specified: "+this.getWidth()+" by "+this.getHeight()+", scrollbar state: "+(this.hscrollOn?"h":"")+(this.vscrollOn?"v":""),"scrolling")}
if(this.showCustomScrollbars&&(this.hscrollOn!=_15||this.vscrollOn!=_14))
{this.$c3(this.left,this.top,this.getWidth(),this.getHeight());if(this.$pb!=null)delete this.$pb;if(this.$pe!=null)delete this.$pe}
var _20=((_14?"V":"")+(_15?"H":"")),_21=((this.vscrollOn?"V":"")+(this.hscrollOn?"H":""));if(_20!=_21){this.logInfo("Scrollbar state: "+_20+" -> "+_21,"scrolling");if(_19==null||_21!=_19)
{this.layoutChildren("scrolling state changed")}}
if(this.isRTL()&&this.hscrollOn&&!_15){var _22=this.getClipHandle().scrollLeft;this.scrollLeft=_22}
if(this.showCustomScrollbars){if(!this.hscrollOn&&_15)this.hscrollbar.hide();if(!this.vscrollOn&&_14)this.vscrollbar.hide();if(this.hscrollOn){this.$q5()}else{if(_15)this.scrollTo(0)}
if(this.vscrollOn){this.$q6()}else{if(_14)this.scrollTo(null,0)}
var _23=Math.max(0,this.getScrollHeight()-this.getViewportHeight()),_24=Math.max(0,this.getScrollWidth()-this.getViewportWidth()),_25=this.getScrollLeft(),_26=this.getScrollTop(),_27=false;if(_25>_24){_27=true;_25=_24}
if(_26>_23){_27=true;_26=_23}
if(_27){this.scrollTo(_25,_26)}}
if(this._useNativeTabIndex||this.$j6)this.$qy()}
return true},checkNativeScroll:function(){var _0=this.getClipHandle();if(this.getScrollingMechanism()!=isc.Canvas.NATIVE||_0==null)return;if(_0.scrollLeft!=this.scrollLeft||_0.scrollTop!=this.scrollTop){this.scrollTo(this.scrollLeft,this.scrollTop)}},hasRelativeParent:function(){var _0=isc.Canvas.RELATIVE;if(this.position==_0)return true;var _1=this.parentElement;while(_1!=null){if(_1.position==_0)return true;_1=_1.parentElement}
return false},$q5:function(){var _0=this.hscrollbar;if(!_0){_0=this.hscrollbar=isc.ClassFactory.newInstance(this.scrollbarConstructor,{ID:this.getID()+"_hscroll",autoDraw:false,_generated:true,zIndex:this.getZIndex()+1,vertical:false,scrollTarget:this,visibility:this.visibility,$lf:false,$le:false,$mn:false,$q7:false})}
if(!isc.Page.isLoaded()){isc.Page.setEvent("load",this.getID()+".$q5()");return}
_0.setRect(this.getOffsetLeft()+this.getLeftMargin()+(this.vscrollOn&&this.isRTL()?this.scrollbarSize:0),this.getOffsetTop()+this.getHeight()-
(this.getBottomMargin()+this.scrollbarSize),this.getOuterViewportWidth(),this.scrollbarSize);if(!_0.masterElement){this.addPeer(_0)}else{_0.show()}},$q6:function(){var _0=this.vscrollbar
if(!_0){_0=this.vscrollbar=isc.ClassFactory.newInstance(this.scrollbarConstructor,{ID:this.getID()+"_vscroll",autoDraw:false,_generated:true,zIndex:this.getZIndex()+1,vertical:true,scrollTarget:this,visibility:this.visibility,$lf:false,$le:false,$mn:false,$q7:false})}
if(!isc.Page.isLoaded()){isc.Page.setEvent("load",this.getID()+".$q6()");return}
_0.setShowCorner(this.hscrollOn&&this.vscrollOn);_0.setRect(this.getOffsetLeft()+(this.isRTL()?this.getLeftMargin():this.getWidth()-(this.getRightMargin()+this.getScrollbarSize())),this.getOffsetTop()+this.getTopMargin(),this.getScrollbarSize(),this.getHeight()-this.getVMarginSize());if(!_0.masterElement){this.addPeer(_0)}else{_0.show()}},scrollByPage:function(_0,_1){var _2=(_0?this.getViewportHeight():this.getViewportWidth())-
this.scrollDelta;this.$q8(_0,_1*_2)},scrollByDelta:function(_0,_1){this.$q8(_0,_1*this.scrollDelta)},$q8:function(_0,_1){if(_0){this.scrollTo(null,this.getScrollTop()+_1)}else{this.scrollTo(this.getScrollLeft()+_1)}},canScroll:function(_0){var _1=_0?this.getScrollHeight():this.getScrollWidth(),_2=_0?this.getViewportHeight():this.getViewportWidth();return(_1>_2)},getScrollRatio:function(_0){var _1=_0?this.getScrollHeight():this.getScrollWidth(),_2=_0?this.getViewportHeight():this.getViewportWidth(),_3=_0?this.getScrollTop():this.getScrollLeft(),_4=_1-_2;if(_4==0)return 0;return _3/ _4},scrollToRatio:function(_0,_1){var _2=_0?(this.getScrollHeight()-this.getViewportHeight()):(this.getScrollWidth()-this.getViewportWidth()),_3=Math.round(_2*_1);if(_0){this.scrollTo(null,_3)}else{this.scrollTo(_3)}},getViewportRatio:function(_0){if(_0){return this.getViewportHeight()/this.getScrollHeight()}else{return this.getViewportWidth()/this.getScrollWidth()}},scrollToTop:function(){this.scrollTo(null,0)},scrollToBottom:function(){this.scrollTo(null,(this.getScrollHeight()-this.getViewportHeight()))},scrollToLeft:function(){this.scrollTo(0,null)},scrollToRight:function(){this.scrollTo((this.getScrollWidth()-this.getViewportHeight()),null)},scrollBy:function(dX,dY){var _0,_1;if(dX!=null)_0=this.getScrollLeft()+dX;if(dY!=null)_1=this.getScrollTop()+dY;return this.scrollTo(_0,_1)},scrollByPercent:function(dX,dY){if(isc.isA.String(dX))dX=parseInt(dX);if(isc.isA.String(dY))dY=parseInt(dY);if(!isc.isA.Number(dX))dX=0;else
dX=parseInt(dX/ 100*Math.max(0,(this.getScrollWidth()-this.getViewportWidth())));if(!isc.isA.Number(dY))dY=0;else
dY=parseInt(dY/ 100*Math.max(0,(this.getScrollHeight()-this.getViewportHeight())));this.scrollBy(dX,dY)},scrollTo:function(left,top,handleAlreadyMoved){if(isc.$m3)arguments.$fa=this;if(this.logIsDebugEnabled("scrolling")){this.logDebug("scrollTo("+left+", "+top+(handleAlreadyMoved?", handleAlreadyMoved":"")+")","scrolling")}
if(!isc.isA.Number(left))left=this.getScrollLeft();if(!isc.isA.Number(top))top=this.getScrollTop();var actuallyMoved=false;if((left!=null&&left!=this.scrollLeft)||(top!=null&&top!=this.scrollTop)){actuallyMoved=true;this.lastScrollLeft=this.scrollLeft;this.lastScrollTop=this.scrollTop;this.lastScrollDirection=(left!=null&&left!=this.scrollLeft&&top!=null&&top!=this.scrollTop?"both":top!=null&&top!=this.scrollTop?"vertical":"horizontal")}
if(handleAlreadyMoved||!this.isDrawn()){this.scrollLeft=left;this.scrollTop=top}else{var maxScrollLeft=this.getScrollWidth()-this.getViewportWidth();this.scrollLeft=Math.max(0,Math.min(maxScrollLeft,left));var maxScrollTop=this.getScrollHeight()-this.getViewportHeight();this.scrollTop=Math.max(0,Math.min(maxScrollTop,top));this.$q9(this.scrollLeft,this.scrollTop)}
if(this.showCustomScrollbars){if(this.hscrollOn&&this.hscrollbar)this.hscrollbar.setThumb();if(this.vscrollOn&&this.vscrollbar)this.vscrollbar.setThumb()}
if(actuallyMoved&&this.scrolled)this.scrolled()},scrollToPercent:function(_0,_1){if(isc.isA.String(_0))_0=parseInt(_0);if(isc.isA.String(_1))_1=parseInt(_1);if(!isc.isA.Number(_0))_0=0;if(!isc.isA.Number(_1))_1=0;_0=parseInt(_0/ 100*Math.max(0,(this.getScrollWidth()-this.getViewportWidth())));_1=parseInt(_1/ 100*Math.max(0,(this.getScrollHeight()-this.getViewportHeight())));this.scrollTo(_0,_1)},$q9:function(_0,_1){var _2=this.getScrollingMechanism();if(_2==isc.Canvas.NATIVE){var _3=this.getClipHandle();if(_3){this.$ra=true;_3.scrollLeft=_0;_3.scrollTop=_1;delete this.$ra;if(_3.scrollLeft!=this.scrollLeft||_3.scrollTop!=this.scrollTop){this.scrollLeft=_3.scrollLeft;this.scrollTop=_3.scrollTop}}}else if(_2==isc.Canvas.NESTED_DIV){var _3=this.getHandle();if(_3==null){this.logWarn(this.getCallTrace(arguments)+" in NS6 with null handle");return}
_3=_3.style;_3.left=-_0+"px";_3.top=-_1+"px"}else if(_2==isc.Canvas.CLIP){this.scrollLeft=_0;this.scrollTop=_1;var _4=this.getViewportHeight(),_5=this.getViewportWidth();if(this.logIsDebugEnabled()){this.logDebug("scrollTo: "+this.echo({clipWidth:_5,clipHeight:_4,left:this.left,top:this.top,scrollLeft:this.scrollLeft,scrollTop:this.scrollTop}))}
this.$c3(this.left,this.top,_5,_4);this.setClip(0,_5,_4,0)}},$kw:function(_0,_1){if(isc.$m3)arguments.$fa=this;if(this.$ra)return;if(isc.Browser.isMoz&&!_0&&(_1||isc.Browser.geckoVersion<20030312)){if(!this.$rb)
this.$rb=isc.Timer.setTimeout(this.getID()+".$kw(true)",10);return}
this.$rb=null;var _2=this.getClipHandle(),_3=_2.scrollLeft,_4=_2.scrollTop;if(_3==this.scrollLeft&&_4==this.scrollTop)return;var _5=this.getScrollingMechanism();if(_5!=isc.Canvas.NATIVE){this.logWarn("unsupported native scroll occurred on this widget - resetting");if(_5==isc.Canvas.NESTED_DIV){_2.scrollLeft=_2.scrollTop=0}else{_2.scrollLeft=this.scrollLeft;_2.scrollTop=this.scrollTop}
return}
this.scrollTo(_3,_4,true)},mouseWheel:function(){if((this.overflow==isc.Canvas.AUTO||this.overflow==isc.Canvas.SCROLL)&&this.showCustomScrollbars&&this.vscrollOn)
{var _0=this.ns.EH.lastEvent.wheelDelta;var _1=this.scrollTop-(_0/ 3);this.scrollTo(this.getScrollLeft(),_1);return false}
return true},handleKeyDown:function(_0,_1){var _2;if(this.convertToMethod("keyDown")){_2=this.keyDown(_0,_1)}
if(_2!=false&&(isc.Browser.isIE||(isc.Browser.isMoz&&this.ns.EH.shiftKeyDown()&&_0.keyName=="f10"))&&this.shouldCancelKey!=null&&this.shouldCancelKey(_0,_1)){_2=false}
return _2},handleKeyPress:function(_0,_1){var _2;if(this.convertToMethod("keyPress")){_2=this.keyPress(_0,_1)}
if(_2!=false&&!isc.Browser.isIE&&this.shouldCancelKey!=null&&this.shouldCancelKey(_0,_1))
{_2=false}
if(_2==false)return false;var _3=_0.keyName;if(this.$j6&&((isc.Browser.isMoz&&this.canSelectText)||isc.Browser.isSafari)&&_3=="Tab")
{this.setFocus(true)}
if((this.overflow==isc.Canvas.AUTO||this.overflow==isc.Canvas.SCROLL)&&this.showCustomScrollbars)
{var _4=0,_5=0;if(_3=="Page_Up")_5-=this.getViewportHeight();else if(_3=="Page_Down")_5+=this.getViewportHeight();else if(_3=="Arrow_Up")_5-=10;else if(_3=="Arrow_Down")_5+=10;else if(_3=="Arrow_Left")_4-=10;else if(_3=="Arrow_Right")_4+=10;if(_4!=0||_5!=0){this.scrollTo(this.scrollLeft+_4,this.scrollTop+_5);return false}
if(_3=="Home"){this.scrollTo(null,0);return false}else if(_3=="End"){this.scrollTo(null,(this.getScrollHeight()-this.getViewportHeight()));return false}}
return _2},$c3:function(_0,_1,_2,_3){if(this.logIsDebugEnabled()){this.logDebug("setHandleRect: "+this.echo({left:_0,top:_1,width:_2,height:_3}))}
if(this.getScrollingMechanism()==isc.Canvas.CLIP){if(_0!=null)_0-=this.scrollLeft;if(_1!=null)_1-=this.scrollTop;if(_2!=null)_2+=this.scrollLeft;if(_3!=null)_3+=this.scrollTop}
if(this.showCustomScrollbars){if(this.vscrollOn){if(_2!=null)_2-=this.getScrollbarSize();if(_0!=null&&this.isRTL()){_0+=this.getScrollbarSize()}}
if(this.hscrollOn&&_3!=null)_3-=this.getScrollbarSize()}
var _4=this.$o2(_2,_3);_2=_4[0];_3=_4[1];var _5=this.getStyleHandle();if(_5){if(isc.isA.Number(_0))_5.left=_0+isc.px;if(isc.isA.Number(_1))_5.top=_1+isc.px;if(isc.isA.Number(_2))_5.width=Math.max(_2,1)+isc.px;if(isc.isA.Number(_3))_5.height=Math.max(_3,1)+isc.px}},getTextDirection:function(){var _0=this;while(_0){if(_0.textDirection!=null)return _0.textDirection;_0=_0.parentElement;if(_0&&_0.eventProxy)_0=_0.eventProxy}
return isc.Page.getTextDirection()},isRTL:function(){return(this.getTextDirection()==isc.Canvas.RTL)},getRTLSign:function(){return this.isRTL()?-1:1},setVisibility:function(_0){if(!isc.isA.String(_0)){_0=(_0!=false?isc.Canvas.INHERIT:isc.Canvas.HIDDEN)}
if(this.visibility==_0)return;var _1=this.isVisible();this.visibility=_0;if(this.isDrawn()){if(!_1&&this.isVisible()){if(this.isDirty()){this.redraw("show() while dirty")}else if(this.children&&this.children.length>0){var _2=isc.Canvas.$mi.duplicate();for(var i=0;i<_2.length;i++){var _3=_2[i];if(_3&&_3.isDirty()&&this.$o9(_3)){_3.redraw("show() on parent while dirty")}}}
if(this.hideUsingDisplayNone){this.$rc(this.$rd?this.$rd:isc.emptyString)}}
this.$re(_0)}
if(this.hideUsingDisplayNone&&_1&&!this.isVisible()){this.$rd=this.getStyleHandle().display;this.$rc("none")}
if(this.peers){for(var i=0;i<this.peers.length;i++){var _4=this.peers[i];if(_4==this.hscrollbar&&!this.hscrollOn&&this.isVisible())continue;if(_4==this.vscrollbar&&!this.vscrollOn&&this.isVisible())continue;if(_4.$lg)_4.setVisibility(_0)}}
if(this.children)this.children.map("parentVisibilityChanged",_0);if(this.parentElement)this.parentElement.childVisibilityChanged(this,_0);if(this.$j6)this.$rf();if(this.$l3)this.$l3.style.visibility=_0},parentVisibilityChanged:function(_0){if(this.children)this.children.map("parentVisibilityChanged",_0);if(this.$j6)this.$rf()},childVisibilityChanged:function(_0){},$rf:function(){if(!this.$j6||!this.$nl)return;var _0=this.isVisible(),_1=this.$o6();if(_1){if(_0&&_1.style.visibility==isc.Canvas.HIDDEN)
_1.style.visibility=isc.Canvas.VISIBLE
if(!_0&&_1.style.visibility!=isc.Canvas.HIDDEN)
_1.style.visibility=isc.Canvas.HIDDEN}},$re:function(_0){var _1=this.getStyleHandle();if(_1!=null)_1.visibility=_0},$rc:function(_0){var _1=this.getStyleHandle();if(_1!=null)_1.display=_0},show:function(){if(isc.$m3)arguments.$fa=this;var _0=this.hasFocus;if(!this.isDrawn()){if(!this.parentElement&&!this.masterElement&&this.getDrawnState()==isc.Canvas.UNDRAWN)
{this.draw(true)}}
this.setVisibility(isc.Canvas.INHERIT);if(_0&&this.hasFocus){this.logInfo("Show: Hidden / Undrawn widget marked as having focus - calling focus()","events");this.hasFocus=false;this.focus()}
if(this.autoShowParent&&this.parentElement)this.parentElement.show();if(this.showTarget)this.showTarget.show()},hide:function(){this.$od();this.setVisibility(isc.Canvas.HIDDEN)},isVisible:function(){var _0=this;while(_0){if(_0.visibility==isc.Canvas.HIDDEN)return false;if(_0.visibility==isc.Canvas.VISIBLE)return true;_0=_0.parentElement}
return true},$pa:function(){var _0=this;while(_0){if(_0.visibility==isc.Canvas.HIDDEN&&_0.hideUsingDisplayNone)return true;_0=_0.parentElement}
return false},setEnabled:function(_0){this.enabled=_0;if(this.redrawOnEnable)this.markForRedraw("setEnabled");if(this.peers)this.peers.map("setEnabled",_0);if(this.isDrawn()&&this.$kv()){if(!this.enabled){this.$l8(-1);if(this.accessKey!=null)this.$l9(null)}else{this.$l8(this.getTabIndex());if(this.accessKey!=null)this.$l9(this.accessKey)}}
if(!this.enabled&&this.hasFocus)this.blur()},enable:function(){if(!this.enabled)this.setEnabled(true)},disable:function(){if(this.enabled)this.setEnabled(false)},isEnabled:function(){var _0=this;while(_0){if(!_0.enabled)return false;_0=_0.parentElement;if(_0&&_0.eventProxy)_0=_0.eventProxy}
return true},$kv:function(){if(this.canFocus!=null)return this.canFocus;if((this.overflow==isc.Canvas.SCROLL)||((this.overflow==isc.Canvas.AUTO)&&(this.vscrollOn||this.hscrollOn))){return true}
return false},setCanFocus:function(_0){this.canFocus=_0;this.$qy()},$qy:function(){var _0=this.$kv(),_1;if(this.$j6){if(_0){_1=this.$o6();if(!_1)return this.makeFocusProxy()}else{this.$nr();this.$og();return}
if(isc.Browser.isSafari&&this.getTabIndex()==-1){this.$nr();return}}
if(this._useNativeTabIndex){_1=this.getHandle()}
if(_0){if(_1!=null){_1.onFocus=this.$np();_1.onBlur=this.$nq();if(this.accessKey)this.$l9(this.accessKey)}
this.$bp(this.getTabIndex(),this.$o7)}else{if(_1!=null){_1.onFocus=null;_1.onBlur=null;this.$l8(-1);if(_1.accessKey!=null)this.$l9(null)}
this.$og()}},setFocus:function(_0){if(!this.isDrawn()||!this.isVisible()||!this.isEnabled())return;var _1;if(this._useNativeTabIndex){_1=this.getHandle()}else if(this.$j6&&this.$nl){_1=this.$o6()}
if(_0&&this.$kv()){if(_1!=null){this.logInfo("about to call native focus()"+(this.logIsDebugEnabled("traceFocus")?this.getStackTrace():""),"nativeFocus");isc.EH.$kt=this;_1.focus();isc.EH.$rg=this}else{this.ns.EH.focusInCanvas(this)}}else if(this.hasFocus){if(_1){this.logInfo("about to call native blur()"+(this.logIsDebugEnabled("traceBlur")?this.getStackTrace():""),"nativeFocus");isc.EH.$kq=this;_1.blur()}else{this.ns.EH.blurFocusCanvas(this)}}},$rh:function(){var _0=isc.EH.$j5;if(_0!=null&&_0!=this){this.logDebug("not restoring focus; focus moved to: "+_0,"nativeFocus");return}
var _1=isc.EH.$kt;if(_1!=null&&_1!=this){this.logDebug("not restoring focus; focus about to move to:"+_1,"nativeFocus");return}
this.logDebug("restoring focus from zIndex change","nativeFocus");this.$ri(true)},focus:function(){if(isc.$m3)arguments.$fa=this;this.setFocus(true)},blur:function(){if(isc.$m3)arguments.$fa=this;this.setFocus(false)},$ri:function(_0){this.$rj=true;this.setFocus(_0)},$ks:function(_0){if(_0==null)_0=(this.ns.EH.$j5==this);this.hasFocus=_0;if(this.$rj){delete this.$rj;return false}
if(this.focusChanged!=null){this.convertToMethod("focusChanged");this.focusChanged(_0)}
if(this.redrawOnFocus)this.markForRedraw("setFocus")},$od:function(){var _0=this.ns.EH.getFocusCanvas();if(this.$o9(_0)){if(isc.isA.Canvas(_0.focusOnHide)&&_0.focusOnHide.isDrawn()&&_0.focusOnHide.isVisible()){_0.focusOnHide.focus()}
else _0.blur()}},setAccessKey:function(_0){this.accessKey=_0;if(this.$kv()&&this.isEnabled()){this.$l9(this.accessKey)}},$l9:function(_0){if(this._useNativeTabIndex){var _1=this.getHandle();if(_1!=null)_1.accessKey=_0}
if(this.$j6&&this.$nl){var _1=this.$o6();if(_1!=null){if(isc.Browser.isMoz){this.$nr();this.makeFocusProxy()}else{_1.accessKey=_0}}}},getAccessKey:function(){return this.accessKey},getTabIndex:function(){if(this.tabIndex==null){this.$rk()}
return this.tabIndex},setTabIndex:function(_0){var _1=isc.Canvas.TAB_INDEX_FLOOR;if(_0>=_1){var _2=_1-1;this.logWarn("setTabIndex(): Passed index of "+_0+". This method does not support setting a tab index greater than "+_2+".  Setting tab index for this widget to "+_2+this.getStackTrace());_0=_2}
this.$og();this.$bp(_0,false)},$bp:function(_0,_1){this.$o7=_1;this.tabIndex=_0;if(this.$kv()&&this.isEnabled()){this.$l8(_0)}},$l8:function(_0){if(this._useNativeTabIndex&&this.getHandle()!=null){this.getHandle().tabIndex=_0;if(isc.Browser.isIE)isc.Canvas.$rl()}
if(this.$j6){if(!this.$nl)return this.makeFocusProxy();if(isc.Browser.isSafari&&_0<0)return this.$nr();var _1=this.$o6();if(_1!=null){_1.tabIndex=_0;if(isc.Browser.isMoz){_1.style.MozUserFocus=(_0<0?"ignore":"normal")}}}},$rk:function(){var _0=isc.Canvas;if(_0.$rm==null){_0.$rm=_0.TAB_INDEX_FLOOR}
this.$bp(_0.$rm+=_0.TAB_INDEX_GAP,true);if(_0.$rn){_0.$rn.$ro=this;this.$rp=_0.$rn}
_0.$rn=this},$rq:function(_0){if(this==_0||this.$ro==_0)return;var _1=_0.getTabIndex();if(!_0.$o7){this.logWarn("$rq() attempting to set tab index adjacent to widget "+_0+" with explicitly specified tabIndex ["+_0.tabIndex+"]. This method can only manipulate widgets with auto-assigned tab indexes.");return}
if(this.$rp!=null)
this.$rp.$ro=this.$ro;if(this.$ro!=null)
this.$ro.$rp=this.$rp;this.$rp=this.$ro=null;if(_0.$rp!=null){_1-=parseInt((_0.tabIndex-_0.$rp.tabIndex)/2);this.$rp=_0.$rp;this.$rp.$ro=this}else{_1-=parseInt((_0.tabIndex-isc.Canvas.TAB_INDEX_FLOOR)/2)}
this.$bp(_1,true);this.$ro=_0;_0.$rp=this},$o8:function(_0){if(this==_0||this.$rp==_0)return;var _1=_0.getTabIndex();if(!_0.$o7){this.logWarn("$o8() attempting to set tab index adjacent to widget "+_0+" with explicitly specified tabIndex ["+_0.tabIndex+"]. This method can only manipulate widgets with auto-assigned tab indexes.");return}
if(this.$rp!=null)
this.$rp.$ro=this.$ro;if(this.$ro!=null)
this.$ro.$rp=this.$rp;this.$rp=this.$ro=null;if(_0.$ro!=null){_1+=parseInt((_0.$ro.tabIndex-_0.tabIndex)/2);this.$ro=_0.$ro;this.$ro.$rp=this;this.$rp=_0;_0.$ro=this;this.$bp(_1,true)}else{this.$rk()}},$og:function(){if(!this.$o7||!this.tabIndex)return;if(this.$rp){this.$rp.$ro=this.$ro}
if(this.$ro){this.$ro.$rp=this.$rp}else{if(!isc.Canvas.$rn==this)this.logWarn("Tab index management error!!!");isc.Canvas.$rn=this.$rp}
this.$rp=null;this.$ro=null},getZIndex:function(_0){if(!this.isDrawn()){if(_0&&this.zIndex==isc.Canvas.AUTO){this.setZIndex(isc.Canvas.getNextZIndex())}
return this.zIndex}
return parseInt(this.getStyleHandle().zIndex)},setZIndex:function(_0){var _1=this.zIndex;if(_1==_0)return;var _2=false;if(isc.Browser.isIE&&this.hasFocus&&this._useNativeTabIndex)
{_2=true;this.logDebug("blurring due to zIndex change","nativeFocus");this.$ri(false)}
if(this._backMask&&_0<_1)this._backMask.setZIndex(_0-1);if(this.showEdges&&_0<_1)this.$pp.setZIndex(_0-1);this.zIndex=_0;if(this.isDrawn()){if(this.useClipDiv)this.getHandle().style.zIndex=_0
this.getStyleHandle().zIndex=_0}
if(this._backMask&&_0>_1)this._backMask.setZIndex(_0-1);if(this.showEdges&&_0>_1)this.$pp.setZIndex(_0-1);if(this.hscrollbar)this.hscrollbar.moveAbove(this);if(this.vscrollbar)this.vscrollbar.moveAbove(this);if(this.clipCorners){var _3=this.$ql;if(_3.TL)_3.TL.moveAbove(this);if(_3.TR)_3.TR.moveAbove(this);if(_3.BL)_3.BL.moveAbove(this);if(_3.BR)_3.BR.moveAbove(this)}
if(_2){isc.Timer.setTimeout("if("+this.getID()+"!=null)"+this.getID()+".$rh()",0)}
this.zIndexChanged(_1,_0)},zIndexChanged:function(_0,_1){if(this.children)this.children.map("parentZIndexChanged")},parentZIndexChanged:function(){if(this.children)this.children.map("parentZIndexChanged")},bringToFront:function(){this.setZIndex(isc.Canvas.$md++);this.ns.EH.addUnmaskedTarget(this)},sendToBack:function(){this.setZIndex(isc.Canvas.$me--)},moveAbove:function(_0){var z=_0.getZIndex(true);this.setZIndex(z+1)},moveBelow:function(_0){var z=_0.getZIndex(true);this.setZIndex(z-1)},getContents:function(){return this.contents},setContents:function(_0){this.contents=_0;this.markForRedraw("setContents")},getContentsURL:function(){return this.contentsURL},setContentsURL:function(_0){this.contentsURL=_0;this.markForRedraw("setContentsURL")},setBackgroundColor:function(_0){if(_0)this.backgroundColor=_0;if(this.isDrawn()){return this.getStyleHandle().backgroundColor=_0}},setBackgroundImage:function(_0){if(_0)this.backgroundImage=_0;if(this.isDrawn()){if(this.isDrawn())this.getStyleHandle().backgroundImage='url('+this.getImgURL(this.backgroundImage)+')'}},setBorder:function(_0){this.$pz=null;if(_0==null)return;if(_0.endsWith(";"))_0=_0.slice(0,_0.length-1);this.border=_0;var _1=this.getStyleHandle();if(_1&&_1.border!=_0){_1.border=_0}},getBorder:function(){return this.border},setOpacity:function(_0){this.opacity=_0;if(this.isDrawn()){if(isc.Browser.isMoz){var _1=this.opacity?this.opacity/ 100:"";this.getStyleHandle().MozOpacity=_1}else{this.getStyleHandle().filter=(this.opacity==null?"":"progid:DXImageTransform.Microsoft.Alpha(opacity="+this.opacity+")")}}},setPrompt:function(_0){this.prompt=_0;if(this.isDrawn())this.getClipHandle().title=_0},hilite:function(){isc.Log.hiliteCanvas(this.ID)},setCursor:function(_0){if(_0&&_0!=this.cursor){this.cursor=_0;this.$rr(_0)}
if(this.ns.EH.$rs&&(this==this.ns.EH.getTarget())){this.ns.EH.$rs.setCursor(_0)}},$rr:function(_0){if(this.isDrawn()){if(isc.Browser.isMoz&&_0=="hand")_0=isc.Canvas.HAND;this.getStyleHandle().cursor=_0;if(isc.Browser.isMoz||isc.Browser.isSafari){this.getHandle().style.cursor=_0}}},$kg:function(){var _0=this.getCurrentCursor();this.$rr(_0)},getCurrentCursor:function(){var _0=this.cursor;if(this.canDragReposition&&this.dragRepositionCursor){_0=this.dragRepositionCursor}
if(this.canDragResize&&this.edgeCursorMap){var _1=this.getEventEdge();if(_1&&this.edgeCursorMap[_1]){_0=this.edgeCursorMap[_1]}}
return _0},setClassName:function(_0){this.$pz=null;this.$p4=null;if(_0)this.className=_0;if(this.getClipHandle())this.getClipHandle().className=this.className},getStateName:function(){var _0=this.getClipHandle().className;return(_0!=null?_0:this.className)},showContextMenu:function(){var _0=this.contextMenu;if(_0){_0.target=this;if(!isc.isA.Canvas(_0)){_0.autoDraw=false;this.contextMenu=_0=isc.Menu.create(_0)}
_0.showContextMenu()}
return(_0==null)},hideContextMenu:function(){if(this.contextMenu)this.contextMenu.hideContextMenu()},getDragType:function(){return this.dragType},willAcceptDrop:function(){if(this.ns.EH.dragTarget==null)return false;if(this.dropTypes==isc.Canvas.ANYTHING||this.dropTypes==null||isc.is.emptyString(this.dropTypes))
{return true}
var _0=this.ns.EH.dragTarget.getDragType();if(_0==null||isc.is.emptyString(_0))return false;if(isc.isA.String(_0)){return this.dropTypes.contains(_0)}else if(isc.isAn.Array(_0)){for(var i=0,_1=true,_2=_0.length;i<_2&&_1;i++){_1=_1&&(this.dropTypes.contains(_0))}
return _1}
return false},$lh:function(){this._eventMask.show()},$li:function(){this._eventMask.hide()},setAppImgDir:function(_0){if(_0)this.appImgDir=_0},getAppImgDir:function(){return isc.Page.getImgURL("",this.appImgDir)},setSkinImgDir:function(_0){if(_0)this.skinImgDir=_0},getSkinImgDir:function(){return isc.Page.getSkinImgDir(this.skinImgDir)},getImgURL:function(_0,_1){return isc.Canvas.getImgURL(_0,_1,this)},imgHTML:function(_0,_1,_2,_3,_4,_5,_6){return isc.Canvas.imgHTML(_0,_1,_2,_3,_4,_5,_6,this)},$rt:function(_0,_1,_2,_3,_4,_5,_6){return isc.Canvas.imgHTML(_0,_1,_2,_3,_4,_5,_6,this,true)},getImage:function(_0){if(isc.isA.String(_0))_0=this.getCanvasName()+_0;if(this.getHandle()){if(isc.Browser.isMoz){return document.images[_0]}else if(this.getHandle().document){return this.$oi.document.images[_0]}}
return null},setImage:function(_0,_1,_2){var _3=this.getImage(_0);if(_3==null){this.logWarn("setImage: image '"+_0+"' couldn't be found");return}
isc.Canvas.$dx(_3,_1,_2,this)},inWhichPosition:function(_0,_1,_2){if(_1<0)return-1;if(_2==isc.Page.RTL){var _3=_0.sum();for(var c=0,_4=_0.length;c<_4;c++){if(_1>=_3-_0[c])return c;_3-=_0[c]}}else{for(var c=0,_4=_0.length;c<_4;c++){if(_1<=_0[c]){return c}
_1-=_0[c]}}
return-2},$go:"count",_canvasList:function(_0){var _1=isc.Canvas._canvasList;if(_0)_1.add(this);else _1.remove(this);if(this.$in){isc.Canvas._iscInternalCount+=(_0?1:-1)}else{isc.Log.updateStats(this.$go)}},$ne:function(_0){if(!this.$in){isc.Canvas._stats[_0]++;isc.Log.updateStats(_0)}},$m8:function(){this.$ql={};for(var i=0;i<this.clippedCorners.length;i++){this.$ru(this.clippedCorners[i])}},$ru:function(_0){var _1=this.$ql,_2=this.left,_3=this.top,_4=this.cornerClipWidth||this.cornerClipSize,_5=this.cornerClipHeight||this.cornerClipSize;if(_0=="TR"||_0=="BR"){_2=_2+this.getWidth()-_4}
if(_0=="BL"||_0=="BR"){_3=_3+this.getHeight()-_5}
if(this.noCornerClipImages&&!(isc.Browser.isIE&&isc.Browser.minorVersion>=5.5)){this.noCornerClipImages=false}
var _6=_1[_0]=isc.ClassFactory.newInstance({_constructor:(this.noCornerClipImages?"Canvas":"Img"),left:_2,top:_3,width:_4,height:_5,eventProxy:this,src:(this.noCornerClipImages?null:this.$rv(_0)),contents:(this.noCornerClipImages?this.$rw(_4,_5,_0):null)},this.$mo);this.addPeer(_6);_6.moveAbove(this)},$nk:function(){if(!this.noCornerClipImages)return;for(var _0 in this.$ql){var _1=this.$ql[_0],_2=_1.getHandle().firstChild,_3=_2.style;_2.filters[0].apply();_3.visibility="hidden";_2.filters[0].percent=71}},$rv:function(_0){return isc.Img.urlForState(this.cornerClipImage,null,this.cornerClipColor,_0)},$rw:function(_0,_1,_2){var _3=isc.SB.create();_3.append("<DIV STYLE='width:",2*_0,"px;height:",2*_1,"px;filter:progid:DXImageTransform.Microsoft.iris(irisStyle=circle,motion=out);");if(_2.contains("R"))_3.append("margin-left:",-_0,"px;");if(_2.contains("B"))_3.append("margin-top:",-_1,"px;");_3.append("'><DIV STYLE='overflow:hidden;width:",_0,"px;height:",_1,"px;background-color:",this.cornerClipColor,";");if(_2.contains("R"))_3.append("margin-left:",_0,"px;");if(_2.contains("B"))_3.append("margin-top:",_1,"px;");_3.append("'></DIV></DIV>");return _3.toString()},$rx:["edgeImage","edgeColor","customEdges","shownEdges","edgeSize","edgeWidth","edgeHeight","marginSize","marginWidth","marginHeight","canDragResize","canDragReposition"],$m7:function(){var _0=this.$rx,_1={};for(var i=0;i<_0.length;i++){var _2=_0[i];if(this[_2]!=null)_1[_2]=this[_2]}
var _3=this.$pp=isc.EdgedCanvas.create({autoDraw:false,overflow:isc.Canvas.HIDDEN,_generated:true,dragTarget:this,useClipDiv:false,$le:false,$mn:false,$lf:false},_1);this.addPeer(_3);_3.moveBelow(this)},bindToDataSource:function(_0,_1){if(this.dataSource==null&&this.data!=null)this.dataSource=this.data.dataSource;var _2=(this.dataSource?isc.DataSource.getDataSource(this.dataSource):null);if(_2!=null)this.logInfo("Binding to DataSource: "+_2);var _3=(_0==null||_0.length==0);if(_2==null||_2.getFields()==null){return _0}else if(_2!=null&&_3){_0=[];var _4=_2.getFields();for(var _5 in _4){var _6=_4[_5];if(!this.shouldUseField(_6))continue;_0.add(isc.addProperties({},_6))}
return _0}else if(_2!=null&&!_3){if(this.useAllDataSourceFields){var _7=[];var _4=_2.getFields();this.$ry(_0,0,_4,_7);var _8=_0;for(_5 in _4){var _9=_4[_5],_10=_8.findIndex(this.fieldIdProperty,_5);if(_10!=-1){var _11=_8[_10],_12=_2.combineFieldData(_11);if(this.shouldUseField(_12))_7.add(_12);this.$ry(_8,_10+1,_4,_7)}else{if(this.shouldUseField(_9)){_7.add(isc.addProperties({},_9))}}}
return _7}else{for(var i=0;i<_0.length;i++){var _6=_0[i];if(!_6)continue;var _5=_6[this.fieldIdProperty];if(!_2.getField(_5))continue;_6=_2.combineFieldData(_6)}
return _0}}},shouldUseField:function(_0){if(_0.hidden&&!this.showHiddenFields)return false;if(_0.detail&&!this.showDetailFields)return false;return true},$ry:function(_0,_1,_2,_3){for(var i=_1;i<_0.length;i++){var _4=_0[i],_5=_4[this.fieldIdProperty];if(_5!=null&&_2[_5]!=null)return;_3.add(_4)}},getField:function(_0){return this.fields[_0]},setValueMap:function(_0,_1){if(!isc.isAn.Object(_0))_0=this.getField(_0);if(!_0)return;_0.valueMap=_1},setDataSource:function(_0,_1){this.dataSource=_0||this.dataSource;if(this.setFields)this.setFields(_1);if(this.dataSource){if(this.isA("DynamicForm"))this.setData({});else this.setData([])}
this.markForRedraw("bind")},bind:function(_0,_1){this.setDataSource(_0,_1)},getDataSource:function(){if(isc.isA.String(this.dataSource))return isc.DS.get(this.dataSource);return this.dataSource},setFields:function(_0){_0=this.bindToDataSource(_0);this.fields=_0},getSerializeableFields:function(_0,_1){_0.addList(["zIndex","data"]);if(this.ID&&this.ID.startsWith("isc_"))_0.add("ID");if(this.dataSource)_0.addList(["fields","items"]);if(this.getClassName()!="Canvas"&&this.getClassName()!="Layout"){_0.add("children")}
return this.Super("getSerializeableFields",arguments)},addField:function(_0,_1){var _2=this.fields||this.items||[];_2.addAt(_0,_1);this.setFields(_2)},removeField:function(_0){var _1=this.fields||this.items||[];_1.remove(_1.find("name",_0));this.setFields(_1)},filter:function(_0,_1){return this.filterData(_0,_1)},select:function(_0,_1){return this.fetchData(_0,_1)},clearFilter:function(_0){return this.clearCriteria(_0)},deleteSelected:function(_0){return this.removeSelectedData(_0)},filterData:function(_0,_1,_2){this.$rz("filter",_0,_1,_2)},fetchData:function(_0,_1,_2){this.$rz("fetch",_0,_1,_2)},clearCriteria:function(_0,_1){this.$rz("filter",null,_0,_1)},$rz:function(_0,_1,_2,_3){if(_3==null&&isc.isAn.Object(_2)&&_2.methodName==null)
{_3=_2;_2=null}
_3=this.buildContext(_3,_0,_2);_3.application.filter(_1?_1:{},_3.operation,this.getID(),_3)},addData:function(_0,_1,_2){return this.$r0("add",_0,_1,_2)},updateData:function(_0,_1,_2){return this.$r0("update",_0,_1,_2)},removeData:function(_0,_1,_2){return this.$r0("remove",_0,_1,_2)},$r0:function(_0,_1,_2,_3){if(_3==null&&isc.isAn.Object(_2)&&_2.methodName==null)
{_3=_2;_2=null}
return this.getDataSource().$r0(_0,_1,_2,_3)},removeSelectedData:function(_0,_1){if(_1==null&&isc.isAn.Object(_0)&&_0.methodName==null)
{_1=_0;_0=null}
_1=this.buildContext(_1,"remove");_1.application.deleteSelected(this.getID(),_1.operation,_1)}});isc.Canvas.addClassMethods({start:function(_0){if(_0.autoDraw!=false){_0.autoDraw=false;_0.$r1=true}
var _1=isc.Canvas.create(_0);document.write("<form style='display:none' name='"+_1.getID()+"$r2'>"+"<textarea rows='1' cols='1' name='contents'>");isc.Canvas.$ml.add(_1);return _1},end:function(){var _0=isc.Canvas.$ml.remove(isc.Canvas.$ml.last());if(_0==null){this.logError("Canvas.end() with no preceeding Canvas.start() - ignoring");return}
document.write("</form>");_0.contents=document[_0.getID()+"$r2"].contents.value;if(_0.$r1)_0.draw()},getElementById:function(id,_0){_0=_0||this.getDocument();if(isc.Browser.isDOM)return _0.getElementById(id)},createAbsoluteElement:function(_0,_1){var _2=_1||this.getWindow(),_3=_2.document,_4=_3.body;if(_2.parent==null&&!isc.Canvas.noBodyTagMessageShown){isc.Canvas.noBodyTagMessageShown=true;var _5="Error: Your page does not have a BODY tag.  Isomorphic SmartClient requires this tag.\r"+"Please add a BODY tag to your document before drawing any SmartClient widgets and try again.";alert(_5);this.logError(_5);return}
isc.Canvas.insertAdjacentHTML(_4,"afterBegin",_0)},insertAdjacentHTML:function(_0,_1,_2){if(isc.isA.String(_0))_0=isc.Canvas.getElementById(_0);if(!_0)this.logWarn("element is null for where: "+_1+" with html: "+_2);if(isc.Browser.isIE){_0.insertAdjacentHTML(_1,_2);return}
var _3=_0.ownerDocument.createRange();_3.setStartBefore(_0);var _4=_3.createContextualFragment(_2);switch(_1){case'beforeBegin':_0.parentNode.insertBefore(_4,_0)
break;case'afterBegin':_0.insertBefore(_4,_0.firstChild);break;case'beforeEnd':_0.appendChild(_4);break;case'afterEnd':if(_0.nextSibling)_0.parentNode.insertBefore(_4,_0.nextSibling);else _0.parentNode.appendChild(_4);break}},getNextZIndex:function(){return(isc.Canvas.$mc+=5)},getFocusProxyString:function(_0,_1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15){if(this.$r3==null){this.$r3=["<DIV"," ID=",null,"$r4"+" style='overflow:hidden;width:0px;height:0px;position:",,";left:",null,"px;top:",null,"px;'>",(isc.Browser.isSafari?"<textarea":"<button onclick='event.cancelBubble=true;return false;'")," ID=",null,"__focusProxy"," style='VISIBILITY:",null,"left:1px;top:1px;"+"width:",(isc.Browser.isSafari?"1":null),"px;height:",(isc.Browser.isSafari?"1":null),"px;",null,"' ONFOCUS=",null," ONBLUR=",null,null,null,null," TABINDEX=",null,null," focusProxy=true handleNativeEvents=",null,">",(isc.Browser.isSafari?"</textarea>":"</button>"),"</DIV>"]}
var _16=this.$r3;_16[2]=_0;_16[4]=(_1?"absolute":"inline");_16[6]=_2;_16[8]=_3;_16[12]=_0;_16[15]=(_6?"visible;":"hidden;");_16[17]=_4;_16[19]=_5;if(isc.Browser.isMoz){if(!_7||_8==-1)_16[21]="-moz-user-focus:ignore;";else _16[21]="-moz-user-focus:normal;"}
_16[23]=_11;_16[25]=_12;_16[26]=(_13!=null?" ONKEYDOWN="+_13:null);_16[27]=(_14!=null?" ONKEYPRESS="+_14:null);_16[28]=(_15!=null?" ONKEYUP="+_15:null);_16[30]=(_7?_8:-1);_16[31]=(_7&&_9?" ACCESSKEY="+_9:null);_16[33]=(_10?true:false);return _16.join(isc.$d3)},setAppImgDir:function(_0){this.getPrototype().appImgDir=_0},getAppImgDir:function(){return isc.Page.getImgURL(isc.emptyString,this.getPrototype().appImgDir)},setSkinImgDir:function(_0){this.getPrototype().skinImgDir=_0},getSkinImgDir:function(){return isc.Page.getSkinImgDir(this.getPrototype().skinImgDir)},$r5:"[SKIN]",getImgURL:function(_0,_1,_2){if(_0==null||isc.isAn.emptyString(_0))return isc.$d3;_2=_2||this.getPrototype();if(_0.imgDir!=null&&_1==null)_1=_0.imgDir;if(_0.src!=null)_0=_0.src;if(_1==null){_1=(_0.startsWith(this.$r5)?_2.skinImgDir:_2.appImgDir)}
var _3=isc.Page.getImgURL(_0,_1);return _3},getImgHTML:function(_0,_1,_2,_3,_4,_5,_6,_7,_8){return this.imgHTML(_0,_1,_2,_3,_4,_5,_6,_7,_8)},$rt:function(_0,_1,_2,_3,_4,_5,_6){return isc.Canvas.imgHTML(_0,_1,_2,_3,_4,_5,_6,null,true)},$r6:0,imgHTML:function(_0,_1,_2,_3,_4,_5,_6,_7,_8){if(_0==null)return(_8?[isc.$d3]:isc.$d3);var _9=this.$r7;if(!_9){this.$r8="<IMG SRC=\"";this.$r9="\"";this.$sa=" WIDTH=";this.$sb=" HEIGHT=";this.$sc=" ALIGN=";this.$sd=" NAME=";this.$se=" ";this.$sf="TEXTTOP";this.$sg=" BORDER=0 SUPPRESS=TRUE>";this.$r7=_9=[this.$r8,null,this.$r9];this.$sh=this.getImgURL("[SKIN]/blank.gif");this.$si=" STYLE='filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\"";this.$sj="\",sizingMethod=\"scale\");'"}
var _10=this.$sf;if(_0.src!=null){if(_0.width!=null)_1=_0.width;if(_0.height!=null)_2=_0.height;if(_0.name!=null)_3=_0.name;if(_0.extraStuff!=null)_4=_0.extraStuff;if(_0.imgDir!=null)_5=_0.imgDir;if(_0.align!=null)_10=_0.align;if(_0.activeAreaHTML!=null)_6=_0.activeAreaHTML;_0=_0.src}
if(isc.Browser.isSafari&&(_1>32000||_2>32000)){this.logWarn("Attempting to draw an image of size "+_1+" x "+_2+".  Images larger than 32000 pixels in either direction are not reliably "+" rendered in this browser.")}
var _11=this.getImgURL(_0,_5,_7);if(_8)_9=[this.$r8,null,this.$r9];if(!this.$sk(_0)||!this.$sl(_0)){_9[1]=_11}else{_9[1]=this.$sh;_9[3]=this.$si;_9[4]=_11;_9[5]=this.$sj}
if(_1){_9[6]=this.$sa;_9[7]=_1}
if(_2){_9[8]=this.$sb;_9[9]=_2}
_9[10]=this.$sc;_9[11]=_10;if(_3&&!isc.Browser.isNav4){_9[12]=this.$sd;if(_7)_9[13]=_7.getCanvasName();_9[14]=_3}
var _12;if(_6){_12="ISC_IMGMAP_"+this.$r6++;_9[15]=" USEMAP=#"+_12}
if(_4){_9[16]=this.$se;_9[17]=_4}
_9[18]=this.$sg;if(_6){_9[19]="<MAP NAME="+_12+">"+_6+"</MAP>"}
if(_8)return _9;var _13=_9.join(isc.$d3);_9.length=3;return _13},$sk:function(){return isc.Browser.isIE&&isc.Browser.minorVersion>=5.5&&isc.Browser.isWin},$sl:function(_0){return _0.substring(_0.indexOf(isc.dot)+1).toLowerCase()=="png"},$dx:function(_0,_1,_2,_3){var _4=this.getImgURL(_1,_2,_3);if(!this.$sk()){_0.src=_4}else{var _5=_0.src,_6=this.$sl(_5),_7=this.$sl(_1);if(_7){_0.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\""+_4+"\",sizingMethod=\"scale\")";if(!_6)_0.src=this.$sh}else{if(_6)_0.style.filter="";_0.src=_4}}},$sm:"[SKIN]/blank.gif",blankImgHTML:function(_0,_1){var _2=this.$sn;if(!_2){_2=this.$sn=this.$rt(this.$sm,_0,_1)}
_2[7]=_0;_2[9]=_1;return _2.join(isc.$d3)},spacerHTML:function(_0,_1,_2){if(_0==0&&_1==0)return isc.$d3;if(isc.Browser.isMoz||isc.Browser.isSafari||isc.Browser.isStrict||(_1<3&&isc.Browser.isIE&&(isc.Browser.minorVersion==5.5||isc.Browser.isMac)))
{if(isc.Browser.isSafari&&_1>32000||_0>32000){var _3=isc.SB.create(),_4=parseInt(_1/ 32000),_5=parseInt(_0/ 32000);_3.append("<TABLE CELLPADDING=0 CELLSPACING=0 BORDER=0 MARGIN=0>");for(var i=0;i<=_4;i++){_3.append("<TR>");for(var j=0;j<=_5;j++){_3.append("<TD>");var _6=((i==j)||(j==_5&&i==0)||(i==_4&&j==0));if(_6){var _7=(i<_4?32000:_1-(i*32000)),_8=(j<_5?32000:_0-(j*32000));_3.append(this.blankImgHTML(_8,_7))}
_3.append("</TD>")}
_3.append("</TR>")}
_3.append("</TABLE>");return _3.toString()}
return this.blankImgHTML(_0,_1)}
var _9=this.$so;if(_9==null){_9=this.$so=["<SPAN STYLE='WIDTH:",null,"px;HEIGHT:",null,"px;overflow:hidden;'>",null,"</SPAN>"]}
_9[1]=_0;_9[3]=_1;_9[5]=_2?_2:isc.nbsp;return _9.join(isc.$d3)},hiliteCharacter:function(_0,_1,_2,_3){if(!isc.isA.String(_0)||!isc.isA.String(_1)||_1.length!=1)
return _0;if(_1==" ")return _0;if(_2==null||_3==null){_2="<span style='text-decoration:underline;'>";_3="</span>"}
var _4=_0.indexOf(_1.toUpperCase());if(_4==-1)_4=_0.indexOf(_1.toLowerCase());if(_4!=-1){var _5=_0.slice(0,_4),_6=_0.slice(_4,_4+1),_7=_0.slice(_4+1);_6=_2+_6+_3;_0=_5.concat(_6,_7)}
return _0},clearHandle:function(_0){if(_0==null)return;if(_0.parentNode){_0.parentNode.removeChild(_0)}else{isc.Log.logWarn("handle parentNode null");_0.innerHTML=""}},$jh:function(){if(isc.Browser.isIE)this.$sp();var _0=isc.Log.logViewer;if(_0&&_0.logWindowLoaded()){_0._logWindow.openerUnloading();_0._logWindow=null}},$sp:function(){var _0=this._canvasList;for(var i=0;i<_0.length;i++){var _1=_0[i];if(_1){if(_1.$oi){_1.$oi.eventProxy=null;_1.$oi=null}}}
return true},scheduleRedraw:function(_0){if(_0&&_0.priorityRedraw){this.$mi.addAt(_0,0)}else{this.$mi.add(_0)}
if(!this.$sq){this.$sq=isc.Timer.setTimeout("isc.Canvas.clearRedrawQueue()",this._redrawQueueDelay)}},clearRedrawQueue:function(){isc.EH.$kp("RDQ");var _0=isc.timeStamp();this.$sq=null;var _1=this.$mi;this.$mi=[];if(this.logIsDebugEnabled()){var _2="";for(var i=0;i<_1.length;i++){_2+=_1[i];if(i!=_1.length-1)_2+=", "}
this.logDebug("clearRedrawQueue: "+_2,"drawing")}
var _3,_4;for(var i=0;i<_1.length;i++){_3=_1[i];if(_3&&_3.priorityRedraw){_3.priorityRedraw=false;if(_4==null)_4=[];_4.add(_3);_1[i]=null}}
if(_4!=null){this.logInfo("Priority redraw: postponing non-priority items","drawing");this.$mi=_1;this.scheduleRedraw(_1[0]);_1=_4}
var _5=0,_3;for(var i=0;i<_1.length;i++){_3=_1[i];if(_3==null||_3.destroyed)continue;if(_3&&_3.isDirty()){_3.redraw(false);_5++}}
this.logDebug("clearRedrawQueue: "+_5+" redraws ("+_1.length+" items), "+(isc.timeStamp()-_0)+"ms","redraws");isc.EH.$ls()},$q2:function(_0){if(!isc.Canvas.$sr)isc.Canvas.$sr=[];isc.Canvas.$sr.add(_0);if(!isc.Canvas.$ss){isc.Canvas.$ss=isc.Timer.setTimeout("isc.Canvas.$st()",isc.Canvas.$mj)}},$st:function(){var _0=isc.Canvas.$sr;isc.Canvas.$sr=[];isc.Canvas.$ss=null;if(!_0||_0.length==0)return;for(var i=0;i<_0.length;i++){if(isc.isA.Canvas(window[_0[i]]))window[_0[i]].adjustOverflow("delayed")}},outsetRect:function(_0,_1){if(!_1)return _0;if(isc.isAn.Array(_0)){_0[0]-=_1;_0[1]-=_1;_0[2]+=2*_1;_0[3]+=2*_1;return _0}
_0.left-=_1;_0.top-=_1;_0.width+=2*_1;_0.height+=2*_1;return _0},rectsIntersect:function(_0,_1){var _2=_0[0],_3=_0[1],_4=_0[2],_5=_0[3],_6=_1[0],_7=_1[1],_8=_1[2],_9=_1[3];return!((_2>_6+_8)||(_2+_4<_6))&&!((_3>_7+_9)||(_3+_5<_7))},$rl:function(){if(!this.$su){this.ns.Canvas.createAbsoluteElement("<DIV ID='$sv'"+" style='position:absolute;top:-100px'>&nbsp;</DIV>");this.$su=document.all["$sv"]}else{this.$su.innerHTML="&nbsp;"}},$qb:[],$n0:function(_0){if(!isc.isA.Canvas(_0)||_0.$sw!=null)return;this.$qb.add(_0);_0.$sw=this.$qb.length-1},$of:function(_0){if(!isc.isA.Canvas(_0)||_0.$sw==null)return;this.$qb[_0.$sw]=null;_0.$sw=null},showClickMask:function(_0,_1,_2){return this.ns.EH.showClickMask(_0,_1,_2)},hideClickMask:function(ID){this.ns.EH.hideClickMask(ID)},getStyleObject:function(_0){if(isc.Browser.isNav||_0==null)return null;var _1;if(this.$mg[_0]!==_1)return this.$mg[_0];var _2=(isc.Browser.isIE||(window.isc_allowForeignStylesheets&&!isc.Browser.isSafari)?this.deriveStyleDeclaration(_0):this.getStyleDeclaration(_0));if(_2==null&&isc.Browser.isSafari&&!isc.Page.isLoaded())return null;this.$mg[_0]=_2;return _2},deriveStyleDeclaration:function(_0){if(!this.$sx){this.createAbsoluteElement("<DIV ID=isc_styleTester STYLE='position:absolute;top:-100px'>&nbsp;</DIV>");this.$sx=isc.Canvas.getElementById("isc_styleTester")}
this.$sx.className=_0;return this.getComputedStyle(this.$sx)},getComputedStyle:function(ID,_0){var _1,_2,_3;if(isc.isA.Canvas(ID)){_1=ID.getClipHandle()}else if(isc.isA.String(ID)){if(window[ID]&&isc.isA.Canvas(window[ID])){_1=window[ID].getClipHandle()}else{_1=isc.Canvas.getElementById(ID)}}else{_1=ID}
if(_1==null||!isc.isAn.Object(_1)){this.logWarn("getComputedStyle: Unable to get to DOM element specified by '"+ID+"'."+this.getStackTrace());return null}
if(isc.Browser.isIE){_2=_1.currentStyle;if(_0==null){if(!this.$sy){this.$sy=isc.getKeys(this.$f4())}
_0=this.$sy}
return isc.applyMask(_2,_0)}
if(_0==null){_0=this.$f4()}else if(isc.isAn.Array(_0)){var _4={},_5=this.$f4();for(var i=0;i<_0.length;i++){_4[_0[i]]=_5[_0[i]]}
_0=_4}
if(isc.Browser.isSafari){_2=_1.style}else{_2=document.defaultView.getComputedStyle(_1,null)}
_3={};var _6=(isc.Browser.isSafari?this.getStyleObject(_1.className):null);for(var _7 in _0){_3[_7]=_2.getPropertyValue(_0[_7]);if(isc.Browser.isSafari&&_3[_7]==null&&_6!=null&&_6[_7]!=null&&!isc.isAn.emptyString(_6[_7]))
{_3[_7]=_6[_7]}}
return _3},getComputedStyleAttribute:function(_0,_1){if(_0==null||_1==null)return null;if(isc.Browser.isIE)return _0.currentStyle[_1];if(isc.Browser.isSafari){var _2=null;if(_0.style)_2=_0.style[_1];if((_2==null||isc.isAn.emptyString(_2))&&_0.className)
{var _3=isc.Canvas.getStyleObject(_0.className);if(_3)_2=_3[_1]}
if(isc.isAn.emptyString(_2))return null;return _2}
var _4=this.$f4();var _5=(_4[_1]||_1),_6=document.defaultView.getComputedStyle(_0,null);return _6.getPropertyValue(_5)},$f4:function(){if(!this.$sz){this.$sz={position:"position",overflow:"overflow",top:"top",left:"left",width:"width",height:"height",display:"display",borderLeftWidth:"border-left-width",borderRightWidth:"border-right-width",borderTopWidth:"border-top-width",borderBottomWidth:"border-bottom-width",marginLeft:"margin-left",marginRight:"margin-right",marginTop:"margin-top",marginBottom:"margin-bottom",paddingLeft:"padding-left",paddingRight:"padding-right",paddingTop:"padding-top",paddingBottom:"padding-bottom",borderWidth:"border-width",padding:"padding",margin:"margin"}}
return this.$sz},getStyleDeclaration:function(_0){var _1="."+_0,_2=", ";for(var i=document.styleSheets.length-1;i>=0;i--){var _3=this.$s0(document.styleSheets[i]),_4;if(_3==null)continue;for(var j=_3.length-1;j>=0;j--){var _5=_3[j].selectorText;if(_5==null)continue;if(isc.Browser.isMoz){var _6=_5.split(_2);for(var k=0;k<_6.length;k++){if(_6[k]==_1){_4=_3[j].style;if(_4!=null)return _4}}}else{if(_5==_1){_4=_3[j].style;if(_4!=null)return _4}}}}
return null},$s0:function(_0){if(!this.$s1){var _1="try{return $s2.rules||$s2.cssRules}"+"catch(e){isc.Page.$s3 = true}";this.$s1=new Function("$s2",_1)}
return this.$s1(_0)},getNativeScrollbarSize:function(){if(isc.Canvas.$s4==null){var _0=isc.StringBuffer.concat("<DIV ID=isc_ScrollbarTest STYLE='position:absolute;top:-100px;border:0px;padding:0px;margin:0px;height:100px;width:100px;overflow:scroll;'>",(isc.Browser.isIE||isc.Browser.isSafari?"&nbsp;":"<DIV ID='isc_sbTest_innerElement' style='border:0px;padding:0px;margin:0px;height:100%;width:100%;'>&nbsp;</DIV>"),"</DIV>");this.createAbsoluteElement(_0);var _1=this.getElementById('isc_ScrollbarTest');if(isc.Browser.isIE||isc.Browser.isSafari){isc.Canvas.$s4=parseInt(_1.style.height)-_1.clientHeight}else{var _2=this.getElementById('isc_sbTest_innerElement');isc.Canvas.$s4=parseInt(_1.style.height)-_2.clientHeight}
this.clearHandle(_1)}
return isc.Canvas.$s4},$pw:function(_0){return this.$oz(_0).top},$px:function(_0){return this.$oz(_0).bottom},$pu:function(_0){return this.$oz(_0).left},$pv:function(_0){return this.$oz(_0).right},$oz:function(_0){if(this.$s5==null)this.$s5={};else if(this.$s5[_0]!=null){return this.$s5[_0]}
var _1={top:0,bottom:0,left:0,right:0},_2=isc.Canvas.getStyleObject(_0);if(_2==null)return _1;var _3=_2.marginTop,_4=_2.marginBottom,_5=_2.marginLeft,_6=_2.marginRight,_7=isc.px;if(isc.isA.String(_3)&&_3.endsWith(_7))
_1.top=parseInt(_3);if(isc.isA.String(_4)&&_4.endsWith(_7))
_1.bottom=parseInt(_4);if(isc.isA.String(_5)&&_5.endsWith(_7))
_1.left=parseInt(_5);if(isc.isA.String(_6)&&_6.endsWith(_7))
_1.right=parseInt(_6);this.$s5[_0]=_1;return _1},$p2:function(_0){return this.$py(_0).top},$p3:function(_0){return this.$py(_0).bottom},$p0:function(_0){return this.$py(_0).left},$p1:function(_0){return this.$py(_0).right},$py:function(_0){if(this.$s6==null)this.$s6={};else if(this.$s6[_0]!=null){return this.$s6[_0]}
var _1={top:0,bottom:0,left:0,right:0},_2=isc.Canvas.getStyleObject(_0);if(_2==null)return _1;var _3=_2.borderTopWidth,_4=_2.borderBottomWidth,_5=_2.borderLeftWidth,_6=_2.borderRightWidth,_7=isc.px;if(isc.isA.String(_3)&&_3.endsWith(_7))
_1.top=parseInt(_3);if(isc.isA.String(_4)&&_4.endsWith(_7))
_1.bottom=parseInt(_4);if(isc.isA.String(_5)&&_5.endsWith(_7))
_1.left=parseInt(_5);if(isc.isA.String(_6)&&_6.endsWith(_7))
_1.right=parseInt(_6);this.$s6[_0]=_1;return _1},$c2:function(_0){return this.$p2(_0)+this.$p3(_0)},$c1:function(_0){return this.$p0(_0)+this.$p1(_0)},$p8:function(_0){return this.$p5(_0).top},$p9:function(_0){return this.$p5(_0).bottom},$p6:function(_0){return this.$p5(_0).left},$p7:function(_0){return this.$p5(_0).right},$p5:function(_0){if(this.$s7==null)this.$s7={};else if(this.$s7[_0]!=null){return this.$s7[_0]}
var _1={top:0,bottom:0,left:0,right:0},_2=isc.Canvas.getStyleObject(_0);if(_2==null)return _1;var _3=_2.paddingTop,_4=_2.paddingBottom,_5=_2.paddingLeft,_6=_2.paddingRight,_7=isc.px;if(isc.isA.String(_3)&&_3.endsWith(_7))
_1.top=parseInt(_3);if(isc.isA.String(_4)&&_4.endsWith(_7))
_1.bottom=parseInt(_4);if(isc.isA.String(_5)&&_5.endsWith(_7))
_1.left=parseInt(_5);if(isc.isA.String(_6)&&_6.endsWith(_7))
_1.right=parseInt(_6);this.$s7[_0]=_1;return _1},$s8:function(_0){return this.$p8(_0)+this.$p9(_0)},$s9:function(_0){return this.$p6(_0)+this.$p7(_0)},$ta:function(_0){return this.$c2(_0)+this.$s8(_0)},$dw:function(_0){return this.$c1(_0)+this.$s9(_0)},getScrollHeight:function(_0){if(_0==null)return 0;var _1=((_0.scrollHeight!=null&&_0.scrollHeight!="undefined")?_0.scrollHeight:_0.offsetHeight);var _2=this.$tb(_0);return _2>_1?_2:_1},$tb:function(_0){if(_0.childNodes==null)return 0;var _1=0,_2=document.ELEMENT_NODE||1,_3=this.logIsDebugEnabled("sizing");for(var i=0;i<_0.childNodes.length;i++){var _4=_0.childNodes.item(i);if(_4.nodeType!=_2)continue;var _5=isc.Canvas.getComputedStyleAttribute(_4,"position");var _6=0;if(_5==isc.Canvas.ABSOLUTE||_5==isc.Canvas.RELATIVE){_6+=isc.Canvas.getOffsetTop(_4)}else{continue}
var _7=_4.getAttribute("eventProxy"),_8;if(_7!=null&&!isc.isAn.emptyString(_7)&&!window[_7].$pf&&isc.isA.Function(window[_7].getVisibleHeight))
{_8=window[_7].getVisibleHeight()}else{_8=isc.Canvas.getVisibleHeight(_4)}
var _9=_6+_8;if(_5==isc.Canvas.ABSOLUTE&&(_0.style.overflow==isc.Canvas.SCROLL||_0.style.overflow==isc.Canvas.AUTO||_0.style.overflow==isc.Canvas.HIDDEN))
_9-=isc.Canvas.getBottomMargin(_4);if(_9>_1)_1=_9}
return _1},getScrollWidth:function(_0){if(_0==null)return 0;var _1=((_0.scrollWidth!=null&&_0.scrollWidth!="undefined")?_0.scrollWidth:_0.offsetWidth);var _2=this.$tc(_0);return _2>_1?_2:_1},$tc:function(_0){if(_0.childNodes==null)return 0;var _1=0,_2=document.ELEMENT_NODE||1,_3=this.logIsDebugEnabled("sizing");for(var i=0;i<_0.childNodes.length;i++){var _4=_0.childNodes.item(i);if(_4.nodeType!=_2)continue;var _5=isc.Canvas.getComputedStyle(_4,["position","display","left"]);var _6=0;if(_5.position==isc.Canvas.ABSOLUTE||_5.position==isc.Canvas.RELATIVE)
{_6=isc.Canvas.getOffsetLeft(_4)}else{continue}
var _7=_4.getAttribute("eventProxy"),_8;if(_7!=null&&!isc.isAn.emptyString(_7)&&!window[_7].$pc&&isc.isA.Function(window[_7].getVisibleWidth))
{_8=window[_7].getVisibleWidth()}else{_8=isc.Canvas.getVisibleWidth(_4)}
var _9=_6+_8;if(_0.style.overflow==isc.Canvas.SCROLL||_0.style.overflow==isc.Canvas.HIDDEN||_0.style.overflow==isc.Canvas.AUTO){_9-=isc.Canvas.getRightMargin(_4)}
if(_9>_1)_1=_9;if(_3){this.logInfo("getChildNodesRight: child node "+i+" of "+_0.childNodes.length+" ("+this.echoLeaf(_4)+")"+" left:"+_6+", width: "+_8+", right:"+_9,"sizing")}}
return _1},getTopMargin:function(_0){if(_0!=null){var _1;if(_0.style!=null)_1=parseInt(_0.style.marginTop);if(isc.isA.Number(_1))return _1;if(_0.className!=null)return isc.Canvas.$pw(_0.className)}
return 0},getBottomMargin:function(_0){if(_0!=null){var _1;if(_0.style!=null)_1=parseInt(_0.style.marginBottom);if(isc.isA.Number(_1))return _1;if(_0.className!=null)return isc.Canvas.$px(_0.className)}
return 0},getLeftMargin:function(_0){if(_0!=null){var _1;if(_0.style!=null)_1=parseInt(_0.style.marginLeft);if(isc.isA.Number(_1))return _1;if(_0.className!=null)return isc.Canvas.$pu(_0.className)}
return 0},getRightMargin:function(_0){if(_0!=null){var _1;if(_0.style!=null)_1=parseInt(_0.style.marginRight);if(isc.isA.Number(_1))return _1;if(_0.className!=null)return isc.Canvas.$pv(_0.className)}
return 0},getHMarginSize:function(_0){return isc.Canvas.getLeftMargin(_0)+isc.Canvas.getRightMargin(_0)},getVMarginSize:function(_0){return isc.Canvas.getTopMargin(_0)+isc.Canvas.getBottomMargin(_0)},getTopBorderSize:function(_0){if(_0==null)return 0;if(isc.Browser.isIE)return parseInt(_0.currentStyle.borderTopWidth)
else return parseInt(isc.Canvas.getComputedStyleAttribute(_0,"borderTopWidth"))},getBottomBorderSize:function(_0){if(_0==null)return 0;if(isc.Browser.isIE)return parseInt(_0.currentStyle.borderBottomWidth)
else return parseInt(isc.Canvas.getComputedStyleAttribute(_0,"borderBottomWidth"))},getLeftBorderSize:function(_0){if(_0==null)return 0;if(isc.Browser.isIE)return parseInt(_0.currentStyle.borderLeftWidth)
else return parseInt(isc.Canvas.getComputedStyleAttribute(_0,"borderLeftWidth"))},getRightBorderSize:function(_0){if(_0==null)return 0;if(isc.Browser.isIE)return parseInt(_0.currentStyle.borderRightWidth)
else return parseInt(isc.Canvas.getComputedStyleAttribute(_0,"borderRightWidth"))},getVBorderSize:function(_0){return isc.Canvas.getTopBorderSize(_0)+isc.Canvas.getBottomBorderSize(_0)},getHBorderSize:function(_0){return isc.Canvas.getLeftBorderSize(_0)+isc.Canvas.getRightBorderSize(_0)},getVisibleWidth:function(_0){if(_0==null)return 0;var _1=isc.Canvas.getComputedStyleAttribute(_0,"overflow"),_2;if(_1==isc.Canvas.VISIBLE||!isc.isA.Number(parseInt(_0.style.width))){_2=isc.Canvas.getScrollWidth(_0)+isc.Canvas.getHBorderSize(_0)}else{_2=parseInt(_0.style.width)}
return _2+isc.Canvas.getHMarginSize(_0)},getVisibleHeight:function(_0){if(_0==null)return 0;var _1=isc.Canvas.getComputedStyleAttribute(_0,"overflow"),_2;if(_1==isc.Canvas.VISIBLE||!isc.isA.Number(parseInt(_0.style.height))){_2=isc.Canvas.getScrollHeight(_0)+isc.Canvas.getVBorderSize(_0)}else{_2=parseInt(_0.style.height)}
return _2+isc.Canvas.getVMarginSize(_0)},getOffsetLeft:function(_0){var _1=_0;if(_1==null){this.logWarn("getOffsetLeft: passed null handle");return 0}
var _2=_1.offsetLeft;if(_1.$td==_2){return _1.$te}else{}
var _3=parseInt(_1.style.marginLeft);if(!isc.isA.Number(_3)){_3=this.ns.Canvas.$pu(_1.className)}
if(_3!=null)_2-=_3;var _4=this.getDocumentBody(),_5,_6="px",_7=_1.style.position;if(isc.Browser.isMoz){if(_1.offsetParent==null)return _2;if(_1.offsetParent!=_4){_5=this.ns.Canvas.getComputedStyle(_1.offsetParent,["borderLeftWidth","overflow"]);var _8=(_7==isc.Canvas.ABSOLUTE&&!(_5.overflow=="visible"||_5.overflow=="hidden")),_9=(isc.Browser.geckoVersion>20020826&&_1.offsetParent.style.MozBoxSizing=="border-box");if(_9&&!_8){_2-=(isc.isA.Number(parseInt(_5.borderLeftWidth))?parseInt(_5.borderLeftWidth):0)}else if(!_9&&_8){_2+=(isc.isA.Number(parseInt(_5.borderLeftWidth))?parseInt(_5.borderLeftWidth):0)}}}
if(isc.Browser.isIE){var _10=_1.offsetParent,_5;if(_5!=_4)_5=_10.currentStyle;var _11=(_1.currentStyle.height!=isc.Canvas.AUTO||_1.currentStyle.width!=isc.Canvas.AUTO);var _12=true;while(_10!=_4){if(_5.position==isc.Canvas.ABSOLUTE)_12=false;if(_5.width==isc.Canvas.AUTO&&_5.height==isc.Canvas.AUTO&&_5.position==isc.Canvas.RELATIVE){if(_12&&isc.isA.String(_5.borderLeftWidth)&&_5.borderLeftWidth.contains(_6)){_2-=parseInt(_5.borderLeftWidth)}
if(_11){if(isc.isA.String(_5.marginLeft)&&_5.marginLeft.contains(_6))
{_2-=parseInt(_5.marginLeft)}
if(_10.offsetParent!=_4){var _13=_10.offsetParent.currentStyle.padding;if(isc.isA.String(_13)&&_13.contains(_6)){_2-=parseInt(_13)}}else{_2-=(_4.leftMargin?parseInt(_4.leftMargin):0)}}}
_7=_10.style.position;_10=_10.offsetParent;if(_10!=document.body){_5=_10.currentStyle}}}
if(isc.Browser.isSafari){if(_1.offsetParent!=null&&_1.offsetParent!=_4){var _14=this.ns.Canvas.getComputedStyle(_1.offsetParent,["borderLeftWidth"]).borderLeftWidth;if(_14!=null)_14=parseInt(_14);if(isc.isA.Number(_14))_2-=_14}}
_1.$td=_1.offsetLeft;_1.$te=_2;return _2},getOffsetTop:function(_0){var _1=_0;if(_1==null){this.logWarn("getOffsetTop: passed null handle");return 0}
var _2=_1.offsetTop;if(_1.$tf==_2){return _1.$tg}else{}
var _3=parseInt(_1.style.marginTop);if(!isc.isA.Number(_3)){_3=this.ns.Canvas.$pw(_1.className)}
if(_3!=null)_2-=_3;var _4=this.getDocumentBody(),_5,_6="px",_7=_1.style.position;if(isc.Browser.isMoz){if(_1.offsetParent==null)return _2;if(_1.offsetParent!=_4){_5=this.ns.Canvas.getComputedStyle(_1.offsetParent,["overflow","borderTopWidth"]);var _8=(_7==isc.Canvas.ABSOLUTE&&!(_5.overflow=="visible"||_5.overflow=="hidden")),_9=(isc.Browser.geckoVersion>20020826&&_1.offsetParent.style.MozBoxSizing=="border-box");if(_9&&!_8){_2-=(isc.isA.Number(parseInt(_5.borderTopWidth))?parseInt(_5.borderTopWidth):0)}else if(!_9&&_8){_2+=(isc.isA.Number(parseInt(_5.borderTopWidth))?parseInt(_5.borderTopWidth):0)}}}
if(isc.Browser.isIE){if(_1.offsetParent&&_1.offsetParent!=_4){_5=_1.offsetParent.currentStyle;if(_5.position==isc.Canvas.RELATIVE&&_5.height==isc.Canvas.AUTO&&_5.width==isc.Canvas.AUTO&&isc.isA.String(_5.borderTopWidth)&&_5.borderTopWidth.contains(_6)){_2-=parseInt(_5.borderTopWidth)}}}
if(isc.Browser.isSafari){if(_1.offsetParent&&_1.offsetParent!=_4){var _10=this.ns.Canvas.getComputedStyle(_1.offsetParent,["borderTopWidth"]).borderTopWidth;if(_10!=null)_10=parseInt(_10);if(isc.isA.Number(_10))_2-=_10}}
_1.$tf=_1.offsetTop;_1.$tg=_2;return _2},$ph:function(_0,_1,_2){if(isc.Browser.isMoz&&_0.offsetParent==null)return 0;var _3=_1.offsetParent,_4=_0.offsetParent,_5=this.ns.Canvas.getOffsetLeft(_0);if(_2==null)_2=isc.Page.getTextDirection()==isc.Canvas.RTL;while(_4!=_1&&_4!=_3){_5+=this.ns.Canvas.getOffsetLeft(_4)
if(!_2){_5-=(_4.scrollLeft||0)}else{if(isc.isA.Number(_4.scrollLeft)){var _6=(_4.scrollWidth-_4.clientWidth);_5+=(_6-_4.scrollLeft)}}
var _7=(isc.Browser.isIE?parseInt(_4.currentStyle.borderLeftWidth):parseInt(this.ns.Canvas.getComputedStyleAttribute(_4,"borderLeftWidth")));if(isc.isA.Number(_7))_5+=_7;_4=_4.offsetParent}
if(_4==_3){_5-=this.ns.Canvas.getOffsetLeft(_1)}
return _5},$pi:function(_0,_1){if(_1==null||_0==null){this.logWarn("Canvas.$pi passed bad parameters - returning 0");return 0}
if(isc.Browser.isMoz&&_0.offsetParent==null)return 0;var _2=_1.offsetParent,_3=_0.offsetParent,_4=this.ns.Canvas.getOffsetTop(_0);while(_3!=_1&&_3!=_2){_4+=this.ns.Canvas.getOffsetTop(_3)
_4-=(_3.scrollTop||0);var _5=(isc.Browser.isIE?parseInt(_3.currentStyle.borderTopWidth):parseInt(this.ns.Canvas.getComputedStyleAttribute(_3,"borderTopWidth")));if(isc.isA.Number(_5))_4+=_5;_3=_3.offsetParent}
if(_3==_2){_4-=this.ns.Canvas.getOffsetTop(_1)}
return _4},getStyleText:function(_0){if(this.$mh[_0]!=null)return this.$mh[_0];var _1=this.getStyleDeclaration(_0);if(_1==null){if(!isc.Browser.isSafari||isc.Page.isLoaded())
this.$mh[_0]=isc.emptyString;return isc.emptyString}
var _2=(_1.cssText||isc.$d3);if(!_2.endsWith(isc.semi))_2+=isc.semi;return(this.$mh[_0]=_2)},$qk:function(_0,_1,_2,_3,_4,_5){if(isc.isAn.Array(_2)){_2={left:_2[0],top:_2[1],width:_2[2],height:_2[3]}}else if(_2==null){_2={left:this.ns.EH.getX(),top:this.ns.EH.getY()}}
if(_2.width==null)_2.width=0;if(_2.height==null)_2.height=0;if(_3==null)_3="bottom";if(_4==null)_4=true;var _6=(_3=="bottom"||_3=="top");if(_6){if(_5=="inside-right")_5="right";if(_5!="right"&&_5!="outside-right"&&_5!="outside-left")_5="left"}else{if(_5=="inside-bottom")_5="bottom";if(_5!="bottom"&&_5!="outside-bottom"&&_5!="outside-top")_5="top"}
var _7=_2.left;if(_6){if(_5=="right")_7+=(_2.width-_0);else if(_5=="outside-right")_7+=_2.width;else if(_5=="outside-left")_7-=_0}else{if(_3=="left")_7-=_0;else _7+=_2.width}
var _8=_2.top;if(_6){if(_3=="top")_8-=_1;else _8+=_2.height}else{if(_5=="bottom")_8+=(_2.height-_1);else if(_5=="outside-bottom")_8+=_2.height;else if(_5=="outside-top")_8-=_1}
var _9=isc.Page.getWidth(),_10=isc.Page.getHeight(),_11=isc.Page.getScrollLeft(),_12=isc.Page.getScrollTop();var _13=_11-_7,_14=_7+_0-(_9+_11),_15=_12-_8,_16=_8+_1-(_10+_12);;if(_13<=0&&_14<=0&&_15<=0&&_16<=0){return[_7,_8]}
if(_13>0){if(_3=="left"&&!_4){if(_2.left+_2.width<_11){_7=_11}else{_7=_2.left+_2.width}}else{_7=_11}}else if(_14>0){if(_3=="right"&&!_4){if((_2.left-_0)>=_11){if(_2.left>(_11+_9))
_7=(_11+_9)-_0;else _7=_2.left-_0}}else{if(_9<_0){_7=_11}else{_7=_11+_9-_0}}}
if(_15>0){if(_3=="top"&&!_4){if(_2.top+_2.height<_12){_8=_12}else{_8=_2.top+_2.height}}else{_8=_12}}else if(_16>0){if(_3=="bottom"&&!_4){if((_2.top-_1)>=_12){if(_2.top>(_12+_10))
_8=(_12+_10)-_1;else _8=_2.top-_1}}else{if(_10<_1){_8=_12}else{_8=_12+_10-_1}}}
return[_7,_8]}});isc.Canvas.registerStringMethods({showIf:"canvas",childRemoved:"child,name",peerRemoved:"peer,name",deparented:"oldParent,name",depeered:"oldMaster,name",focusChanged:"hasFocus",scrolled:null});isc.$th=function(){var _0=isc.EH,_1={};for(var _2 in _0.eventTypes){isc.Canvas.registerStringMethods(_0.eventTypes[_2],_0.$jm);var _3=_0.eventTypes[_2];if(isc.Canvas.getInstanceProperty(_3)==null){_1[_3]=isc.Class.NO_OP}}
isc.Canvas.addMethods(_1)}
isc.$th();isc.$ti={getForm:function(_0){if(_0&&typeof _0=="object")return _0;var _1;if(_0!=null&&isc.Browser.isDOM){_1=document.getElementById(_0)}
if(_1!=null)return _1;if(_0==null)_0=0;if(_1==null)return document.forms[_0];return _1},getFormElement:function(_0,_1){if(typeof _1=="object")return _1;var _2=this.getForm(_0);if(_2)return _2.elements[_1];return null}};isc.Canvas.addClassMethods(isc.$ti);isc.Canvas.addMethods(isc.$ti);isc.setAutoDraw=function(_0){if(_0==null)_0=true;isc.Canvas.addProperties({autoDraw:_0})};isc.ClassFactory.defineClass("EdgedCanvas","Canvas");isc.EdgedCanvas.addProperties({shownEdges:{TL:true,T:true,TR:true,L:true,R:true,BL:true,B:true,BR:true},redrawOnResize:false,$pq:0,$ps:0,$pr:0,$pt:0,$tj:["TL","T","TR","L",null,"R","BL","B","BR"],skinImgDir:"images/edges/",edgeImage:"[SKIN]edge.gif",edgeSize:10});isc.EdgedCanvas.addMethods({initWidget:function(){this.Super(this.$f);var _0=this.marginWidth||this.marginSize||this.edgeWidth||this.edgeSize;var _1=this.marginHeight||this.marginSize||this.edgeHeight||this.edgeSize;var _2=this.customEdges;if(_2){var _3=this.shownEdges={};if(_2.contains("T")){_3.T=_3.TL=_3.TR=true}
if(_2.contains("B")){_3.B=_3.BL=_3.BR=true}
if(_2.contains("L")){_3.L=_3.TL=_3.BL=true}
if(_2.contains("R")){_3.R=_3.TR=_3.BR=true}}
var _3=this.shownEdges;if(_3.L)this.$pq=_0;if(_3.R)this.$pr=_0;if(_3.T)this.$ps=_1;if(_3.B)this.$pt=_1},getInnerWidth:function(){var _0=this.Super("getInnerWidth",arguments);return _0-this.$pq-this.$pr},getInnerHeight:function(){var _0=this.Super("getInnerHeight",arguments);return _0-this.$ps-this.$pt},$tk:"<TD></TD>",getInnerHTML:function(){var _0=isc.SB.create(),_1=this.edgeWidth||this.edgeSize,_2=this.edgeHeight||this.edgeSize,_3=this.edgeImage,_4=_3.indexOf(isc.dot),_5=_3.substring(0,_4),_6=_3.substring(_4),_7=this.getImgURL(_5),_8,_9;if(isc.Canvas.$sk()&&_6.toLowerCase()==".png"){_8="<TD STYLE='filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\""+_7+"_";_9=_6+"\",sizingMethod=\"scale\");'></TD>"}else{_8="<TD STYLE='background:url("+_7+"_";_9=_6+")'></TD>"}
if(this.edgeColor)_8+=this.edgeColor+"_";var _10=this.shownEdges;_0.append("<TABLE CELLPADDING=0 CELLSPACING=0 "+"STYLE='height:100%;width:100%;table-layout:fixed'>","<COL WIDTH=",_1,"><COL><COL WIDTH=",_1,">","<TR HEIGHT=",_2,">");this.$tl(_8,_9,0,2,_10,_0);_0.append("</TR><TR>");this.$tl(_8,_9,3,5,_10,_0);_0.append("</TR><TR HEIGHT=",_2,">");this.$tl(_8,_9,6,8,_10,_0);_0.append("</TR></TABLE>");return _0.toString()},$tl:function(_0,_1,_2,_3,_4,_5){for(var i=_2;i<=_3;i++){var _6=this.$tj[i];if(_4[_6])_5.append(_0,_6,_1);else _5.append(this.$tk)}},layoutChildren:function(){this.Super("layoutChildren",arguments);var _0=this.children;if(!_0||_0.length==0)return;var _1=this.children[0];_1.setRect(this.$pq,this.$ps,this.getInnerWidth(),this.getInnerHeight())},addChild:function(){this.Super("addChild",arguments);this.layoutChildren("addChild")},draw:function(){if(!this.readyToDraw())return this;if(this.masterElement)this.masterResized();return this.Super("draw",arguments)},masterResized:function(){var _0=this.masterElement,_1=_0.$po();this.setRect(_0.getLeft()+_1.left,_0.getTop()+_1.top,_0.getVisibleWidth()-_1.left-_1.right,_0.getVisibleHeight()-_1.top-_1.bottom)}});isc.ClassFactory.defineClass("StatefulCanvas","Canvas");isc.StatefulCanvas.addClassProperties({STATE_UP:"",STATE_DOWN:"Down",STATE_OVER:"Over",STATE_DISABLED:"Disabled",BUTTON:"button",CHECKBOX:"checkbox",RADIO:"radio",SELECTED:"Selected",UNSELECTED:"",$tm:{}});isc.StatefulCanvas.addProperties({state:"",cursor:isc.Canvas.ARROW,$tn:isc.Canvas.NONE,labelDefaults:{_generated:true,autoDraw:false,align:isc.Canvas.CENTER,valign:isc.Canvas.CENTER,overflow:isc.Canvas.HIDDEN,$lf:false,$le:true},labelConstructor:"Label"});isc.StatefulCanvas.addMethods({initWidget:function(){if(!this.enabled)this.state=isc.StatefulCanvas.STATE_DISABLED;if(this.baseStyle==null)this.baseStyle=this.className;if(this.radioGroup!=null){var _0=this.radioGroup;this.radioGroup=null;this.addToRadioGroup(_0)}},stateChanged:function(){if(this.redrawOnStateChange)this.markForRedraw("state change");else this.setClassName(this.getStateName())},setState:function(_0){if(this.state==_0)return;this.state=_0;this.stateChanged()},getState:function(){return this.state},setSelected:function(_0){if(this.selected==_0)return;if(_0&&this.radioGroup!=null){var _1=isc.StatefulCanvas.$tm[this.radioGroup];if(_1==null){this.logWarn("'radioGroup' property set for this widget, but no corresponding group "+"exists. To set up a new radioGroup containing this widget, or add this "+" widget to an existing radioGroup at runtime, call 'addToRadioGroup(groupID)'")}else{for(var i=0;i<_1.length;i++){if(_1[i]!=this&&_1[i].isSelected())
_1[i].setSelected(false)}}}
this.selected=_0;this.stateChanged()},select:function(){this.setSelected(true)},deselect:function(){this.setSelected(false)},isSelected:function(){return this.selected},getActionType:function(){return this.actionType},setActionType:function(_0){if(_0==isc.StatefulCanvas.BUTTON&&this.isSelected()){this.setSelected(false)}
this.actionType=_0},addToRadioGroup:function(_0){if(_0==null||this.radioGroup==_0)return;if(this.radioGroup!=null)this.removeFromRadioGroup();this.radioGroup=_0;if(isc.StatefulCanvas.$tm[this.radioGroup]==null){isc.StatefulCanvas.$tm[this.radioGroup]=[this]}else{isc.StatefulCanvas.$tm[this.radioGroup].add(this)}},removeFromRadioGroup:function(_0){if(this.radioGroup==null||(_0!=null&&_0!=this.radioGroup))return;var _1=isc.StatefulCanvas.$tm[this.radioGroup];_1.remove(this);delete this.radioGroup},setEnabled:function(_0){this.Super("setEnabled",arguments);if(_0==true){if(this.$tn)this.setCursor(this.$tn);this.setState(isc.StatefulCanvas.STATE_UP)}else{this.$tn=this.cursor;this.setCursor(isc.StatefulCanvas.ARROW);this.setState(isc.StatefulCanvas.STATE_DISABLED)}},getStateName:function(){return this.baseStyle+this.$to()},$to:function(){if(!this.isSelected())return this.getState();return isc.StatefulCanvas.SELECTED+this.getState()},mouseOver:function(){if(this.showDown&&this.ns.EH.mouseIsDown()){this.setState(isc.StatefulCanvas.STATE_DOWN)}else if(this.showRollOver){this.setState(isc.StatefulCanvas.STATE_OVER)}},mouseOut:function(){if(this.showRollOver){this.setState(isc.StatefulCanvas.STATE_UP)}else if(this.showDown&&this.ns.EH.mouseIsDown()){this.setState(isc.StatefulCanvas.STATE_UP)}},$ks:function(_0){var _1=this.getState();if(_0){if(this.showRollOver&&(_1==isc.StatefulCanvas.STATE_UP)){this.setState(isc.StatefulCanvas.STATE_OVER)}}else{if(this.showRollOver&&(_1==isc.StatefulCanvas.STATE_OVER)){this.setState(isc.StatefulCanvas.STATE_UP)}}
return this.Super("$ks",arguments)},handleMouseDown:function(_0,_1){if(this.showDown)this.setState(isc.StatefulCanvas.STATE_DOWN);if(this.mouseDown)return this.mouseDown(_0,_1)},handleMouseUp:function(_0,_1){if(this.showDown){this.setState(this.showRollOver?isc.StatefulCanvas.STATE_OVER:isc.StatefulCanvas.STATE_UP)}
if(this.mouseUp)return this.mouseUp(_0,_1)},handleActivate:function(_0,_1){var _2=this.getActionType();if(_2==isc.StatefulCanvas.RADIO){this.select()}else if(_2==isc.StatefulCanvas.CHECKBOX){this.setSelected(!this.isSelected())}
if(this.activate)return this.activate(_0,_1);if(this.click)return this.click(_0,_1)},handleClick:function(_0,_1){return this.handleActivate(_0,_1)},handleKeyPress:function(_0,_1){if(this.keyPress&&(this.keyPress(_0,_1)==false))return false;if(_0.keyName=="Space"||_0.keyName=="Enter"){if(this.handleActivate(_0,_1)==false)return false}
return true},destroy:function(){this.removeFromRadioGroup();return this.Super("destroy",arguments)}});isc.StatefulCanvas.registerStringMethods({activate:isc.EH.$jm});isc.ClassFactory.defineClass("Layout","Canvas");isc.Layout.addClassProperties({VERTICAL:"vertical",HORIZONTAL:"horizontal",NONE:"none",FILL:"fill"});isc.Layout.addProperties({vPolicy:"fill",hPolicy:"fill",enforcePolicy:true,layoutMargin:0,membersMargin:0,resizeBarClass:"Splitbar",resizeBarDefaults:{autoDraw:false,resizeInRealTime:false,click:function(){this.parentElement.separatorClick(this)}},resizeBarSize:7,orientation:"horizontal",pageLayout:false,$tp:"$m5",$tq:"$m4",membersAreChildren:true});isc.Layout.addMethods({getMemberLength:function(_0){return this.vertical?_0.getVisibleHeight():_0.getVisibleWidth()},getMemberBreadth:function(_0){return this.vertical?_0.getVisibleWidth():_0.getVisibleHeight()},setMemberBreadth:function(_0,_1){this.vertical?_0.setWidth(_1):_0.setHeight(_1)},getLength:function(){return this.vertical?this.getInnerHeight():this.getInnerWidth()},getBreadth:function(){if(!this.vertical)return this.getInnerHeight();var _0=this.getInnerWidth();if(this.leaveScrollbarGap&&!this.vscrollOn)_0-=this.getScrollbarSize();return _0},getLengthPolicy:function(){return this.vertical?this.vPolicy:this.hPolicy},getBreadthPolicy:function(){return this.vertical?this.hPolicy:this.vPolicy},memberHasInherentLength:function(_0){return(this.vertical?_0.hasInherentHeight():_0.hasInherentWidth())},memberHasInherentBreadth:function(_0){return(this.vertical?_0.hasInherentWidth():_0.hasInherentHeight())},memberOverflowsLength:function(_0){var _1=_0.overflow,_2=isc.Canvas;return(_1==_2.VISIBLE||(this.vertical&&_1==_2.CLIP_H)||(!this.vertical&&_1==_2.CLIP_V))},memberHasExplicitLength:function(_0){var _1=this.vertical?this.$tp:this.$tq;return _0[_1]!=null},memberHasExplicitBreadth:function(_0){var _1=this.vertical?this.$tq:this.$tp;return _0[_1]!=null},scrollingOnLength:function(){return this.vertical?this.vscrollOn:this.hscrollOn},createCanvii:function(_0){for(var i=0;i<_0.length;i++){_0[i]=this.createCanvas(_0[i])}
return _0},initWidget:function(){if(this.vertical==null){this.vertical=(this.orientation=="vertical")}else{this.orientation=(this.vertical?"vertical":"horizontal")}
if(this.isRTL()&&!this.vertical)this.reverseOrder=!this.reverseOrder;if(this.members==null)this.members=[];if(this.membersAreChildren){if(this.members.length==0&&this.children!=null){this.members=this.children=this.createCanvii(this.children)}else{this.members=this.createCanvii(this.members);if(this.children==null)this.children=[];this.children.addList(this.members)}}else{this.logInfo("members are peers","layout");this.addMethods({draw:this.$tr});this.members=this.createCanvii(this.members);if(this.peers==null)this.peers=[];this.peers.addList(this.members)}
if(this.pageLayout&&this.members)this.members.setProperty("showTarget",this)},$tr:function(){if(isc.$m3)arguments.$fa=this;if(!this.membersAreChildren){this.$ts();this.layoutMembers("initial draw");this.drawPeers();this.$il=true;return}
isc.Canvas.$en.draw.apply(this,arguments)},resizePeersBy:function(){if(!this.membersAreChildren)return;this.Super("resizePeersBy",arguments)},markForRedraw:function(){if(this.membersAreChildren)return this.Super("markForRedraw",arguments);this.reflow("markedForRedraw")},drawChildren:function(){if(this.membersAreChildren){this.$ts();this.layoutMembers("initial draw");this.$tt()}
return},$ts:function(){for(var i=0;i<this.members.length;i++){var _0=this.members[i];if(_0.$kv()&&(_0.$o7||_0.tabIndex==null)){this.updateMemberTabIndex(_0)}
this.autoSetBreadth(_0)}},$tt:function(){if(!this.membersAreChildren)return;var _0=[];for(var i=0;i<this.children.length;i++){if(!this.members.contains(this.children[i]))
_0[_0.length]=this.children[i]}
if(_0.length>0){for(var j=0;j<_0.length;j++){var _1=_0[j];if(!isc.isA.Canvas(_1)){_1.autoDraw=false;_1=isc.Canvas.create(_1)}
if(_1.$tu!=this)this.addChild(_1);if(!_1.isDrawn())_1.draw()}}},autoSetBreadth:function(_0){if(!this.shouldAlterBreadth(_0))return false;var _1=this.$tv;this.$tv=true;this.setMemberBreadth(_0,this.getBreadth()-(2*this.layoutMargin));this.$tv=_1;return true},shouldAlterBreadth:function(_0){if(this.memberHasExplicitBreadth(_0))return false;if(this.getBreadthPolicy()==isc.Layout.FILL)return true;return false},$tw:function(_0){if(_0.isDrawn())return;var _1=(!(!isc.Browser.isWin&&isc.Browser.isMoz&&this.showCustomScrollbars==false&&(this.overflow==isc.Canvas.AUTO)));if(_1)_0.moveTo(null,-9999)},$tx:function(_0){if(_0.isDrawn())return;this.$tw(_0);_0.draw()},getMarginSpace:function(){var _0=(2*this.layoutMargin);for(var i=0;i<this.members.length;i++){var _1=this.members[i];if(_1.showResizeBar){_0+=this.resizeBarSize}else if(i<this.members.length-1&&this.members[i+1].visibility!=isc.Canvas.HIDDEN)
{_0+=this.membersMargin}
if(_1.extraSpace!=null)_0+=_1.extraSpace}
return _0},getTotalMemberSpace:function(){return this.getLength()-this.getMarginSpace()},getTotalLength:function(){var _0=0;for(var i=0;i<this.members.length;i++){var _1=this.members[i];if(_1.visibility==isc.Canvas.HIDDEN)continue;_0+=this.getMemberLength(_1)}
return _0+this.getMarginSpace()},gatherSizes:function(_0,_1,_2){if(!_1)_1=[];var _3=this.getLengthPolicy();var _4=this.logIsInfoEnabled("layout");for(var i=0;i<this.members.length;i++){var _5=this.members[i];var _6=_1[i];if(_6==null)_6=_1[i]={};if(_5.visibility==isc.Canvas.HIDDEN){_6.$ty=0;if(_4)_6.$tz="hidden";continue}
if(this.memberHasInherentLength(_5)||_3==isc.Layout.NONE){_6.$ty=this.getMemberLength(_5);if(_4){_6.$tz=(_3==isc.Layout.NONE?"no length policy":"inherent size")}
continue}
if(_0&&this.memberOverflowsLength(_5)){var _7=this.getMemberLength(_5);if(_7!=_2[i]){if(_4){this.logInfo("member: "+_5+" overflowed.  set length: "+_2[i]+" got length: "+_7,"layout");_6.$tz+=" [overflowed]"}
_6.$t0=true;_6.$ty=_7}
continue}
if(this.memberHasExplicitLength(_5)){_6.$ty=this.vertical?_5[this.$tp]:_5[this.$tq];if(_4)_6.$tz="explicit size";continue}
if(_6.$ty==null){_6.$ty="*";if(_4)_6.$tz="no length specified"}}
return _1},resizeMembers:function(_0,_1,_2){var _3=Math.max(this.getBreadth()-(2*this.layoutMargin),1);if(this.$t1&&!this.leaveScrollbarGap){_3-=this.getScrollbarSize()}
var _4=this.logIsInfoEnabled("layout");var _5=[];for(var i=0;i<this.members.length;i++){var _6=this.members[i],_7=_1[i];if(_6.visibility==isc.Canvas.HIDDEN)continue;if(_2&&!this.memberOverflowsLength(_6))continue;var _8=null;if(this.shouldAlterBreadth(_6)){if(_4)_7.$t2="breadth policy: "+this.getBreadthPolicy();_8=_7.$t3=_3}else{_7.$t3=this.getMemberBreadth(_6);if(_4){_7.$t2=(this.getBreadthPolicy()==isc.Layout.NONE?"no breadth policy":"explicit size")}}
var _9=null;if(!this.memberHasInherentLength(_6)&&!_7.$t0){_9=_7.$t4=_0[i]}
if(this.logIsDebugEnabled("layout")){var _10=this.vertical?_8:_9,_11=this.vertical?_9:_8,_12=_6.getDelta("width",_10,_6.getWidth()),_13=_6.getDelta("height",_11,_6.getHeight());if((_12!=null&&_12!=0)||(_13!=null&&_13!=0)){this.logWarn("resizing "+_6+(_6.isDrawn()?" (drawn): ":": ")+(_8!=null?_8+(this.vertical?"w ":"h "):"")+(_9!=null?_9+(this.vertical?"h":"w"):""))}}
if(this.vertical){_6.resizeTo(_8,_9)}else{_6.resizeTo(_9,_8)}
if(_6.isDrawn()){if(_6.isDirty())_6.redraw("Layout getting new size")}else{if(!_6.isDrawn())_5.add(_6)}}
return _5},stackMembers:function(_0,_1,_2){if(_2==null)_2=true;var _3=(this.membersAreChildren?0:this.getOffsetLeft()),_4=(this.membersAreChildren?0:this.getOffsetTop()),_5=this.reverseOrder,_6=(_5?-1:1);var _7;if(_5){if(this.isRTL()&&!this.vertical){_7=this.getLength()}else{_7=Math.max(this.getLength(),this.getTotalLength())}}
var _8=(this.vertical?(!_5?_4:_4+_7):(!_5?_3:_3+_7)),_9=(this.vertical?_3:_4)+this.layoutMargin,_10=false,_11=false,_12=0;for(var i=0;i<_0.length;i++){var _13=_0[i],_14=_1?_1[i]:null;if(i==0){_8+=(_6*this.layoutMargin)}else{if(_10){_8+=(_6*this.resizeBarSize)}else if(!_11){_8+=(_6*this.membersMargin)}}
if(_13.visibility==isc.Canvas.HIDDEN){if(_13.showResizeBar&&_13.$t5!=null){var _15=this.getBreadth()-(2*this.layoutMargin);this.makeResizeBar(_13,_9,_8,_15);_10=true}else{_10=false}
_11=true;_12++;continue}else{_11=false}
var _16=_9;if(_13.layoutAlign=="right"||_13.layoutAlign=="bottom"){_16=this.getBreadth()-this.layoutMargin-this.getMemberBreadth(_13)}else if(_13.layoutAlign=="center"){_16=(this.getBreadth()-this.getMemberBreadth(_13))/2}
var _17=this.getMemberLength(_13);if(this.vertical){if(!_5)_13.moveTo(_16,_8);else _13.moveTo(_16,_8-_17)}else{if(!_5)_13.moveTo(_8,_16);else _13.moveTo(_8-_17,_16)}
_8+=(_6*_17);if(_13.extraSpace!=null)_8+=(_6*_13.extraSpace);if(_13.showResizeBar){var _15=this.getBreadth()-(2*this.layoutMargin);this.makeResizeBar(_13,_9,_8,_15)}
_10=_13.$t5;if(_2)this.memberSizes[i-_12]=_17;if(_1)_14.$t6=_17}
if(_2)this.memberSizes.length=(i-_12)},layoutMembers:function(_0,_1,_2){if(isc.$m3)arguments.$fa=this;if(this.destroying)return;if(_1!=null||_2!=null){this.$qo()}
if(!this.isDrawn()&&_0!="initial draw")return;this.$tv=true;if(_1!=null||_2!=null){if((this.vertical&&isc.isA.Number(_1))||(!this.vertical&&isc.isA.Number(_2)))
{this.$t7=true}}
if(this.isDrawn()&&this.getLengthPolicy()==isc.Layout.NONE&&!this.$t7){this.stackMembers(this.members);this.$t7=false;this.$t8();return}
this.$t7=false;var _3=this.getTotalMemberSpace();var _4=this.gatherSizes();var _5=_4.getProperty("$ty"),_6=this.getClass().applyStretchResizePolicy(_5,_3);if(!this.scrollingOnLength()&&this.overflow=="auto"&&_6.sum()>this.getLength())
{this.logInfo("scrolling will be required on length axis");this.$t1=true}
var _7=this.resizeMembers(_6,_4,true);for(var i=0;i<_7.length;i++){var _8=_7[i];this.$tw(_8);_8.draw()}
_4=this.gatherSizes(true,_4,_6);_5=_4.getProperty("$ty");var _9=this.memberSizes=this.getClass().applyStretchResizePolicy(_5,_3);if(!this.$t1&&!this.scrollingOnLength()&&this.overflow=="auto"&&_9.sum()>this.getLength())
{this.logInfo("scrolling will be required on length axis");this.$t1=true}
var _7=this.resizeMembers(_9,_4,false);for(var i=0;i<_7.length;i++){var _8=_7[i];this.$tw(_8);_8.draw()}
this.stackMembers(this.members,_4);this.reportSizes(_4,_0);this.$t8()},$t8:function(){this.$t1=false;this.$t9=false;this.$tv=false;if(!this.enforcePolicy){this.vertical?this.vPolicy=isc.Layout.NONE:this.hPolicy=isc.Layout.NONE}},getMemberSizes:function(){if(this.memberSizes)return this.memberSizes.duplicate();return this.memberSizes},getScrollWidth:function(_0){if(!_0&&this.$pb!=null)return this.$pb;var _1=this.membersAreChildren?this.children:this.members;var _2=this.$pd(_1,true);this.$pb=_2+this.layoutMargin;return this.$pb},getScrollHeight:function(_0){if(!_0&&this.$pe!=null)return this.$pe;var _1=this.membersAreChildren?this.children:this.members;var _2=this.$pg(_1,true);this.$pe=_2+this.layoutMargin;return this.$pe},layoutIsDirty:function(){return this.$t9==true},reflow:function(_0){if(this.$t9)return;if(this.isDrawn()){this.$t9=true;if(this.instantRelayout){this.layoutMembers(_0)}else{var _1=this.getID();isc.Timer.setTimeout("if(window."+_1+"!=null)"+_1+".layoutMembers('"+_0+"')",0)}}},childResized:function(_0,_1,_2,_3){if(isc.$m3)arguments.$fa=this;this.$qc("child resize");if(this.$tv)return;if(!_0.isDrawn())return;if(!this.members.contains(_0))return;var _4=_0;if(_3!="overflow"){if(_1!=null&&_1!=0)_4[this.$tq]=_4.getWidth();if(_2!=null&&_2!=0)_4[this.$tp]=_4.getHeight()}
this.reflow("memberResized: "+_4)},childVisibilityChanged:function(_0,_1){if(!this.members.contains(_0))return;this.reflow("member changed visibility: "+_0);this.$qc("child visibility changed")},pageResize:function(){this.Super("pageResize",arguments);this.reflow("pageResize")},getMember:function(_0){var _1=this.getMemberNumber(_0);if(_1==-1)return null;return this.members[_0]},getMemberNumber:function(_0){if(isc.isA.String(_0)){_0=window[_0];return this.members.indexOf(_0)}else if(isc.isA.Canvas(_0)){return this.members.indexOf(_0)}
if(isc.isA.Number(_0))return _0;return-1},hasMember:function(_0){return this.members.contains(_0)},getMembers:function(_0){return this.members},addMember:function(_0,_1){this.addMembers(_0,_1)},$ua:[],addMembers:function(_0,_1){if(!_0)return;if(isc.$m3)arguments.$fa=this;this.logInfo("adding newMembers: "+_0+" at position: "+_1,"layout");if(!isc.isAn.Array(_0)){this.$ua[0]=_0;_0=this.$ua}
if(this.members==null)this.members=[];for(var i=0;i<_0.length;i++){var _2=_0[i];if(!_2)continue;if(this.members.contains(_2))continue;if(_1!=null){this.members.addAt(_2,_1+i)}else{this.members.add(_2)}
var _3=(this.isDrawn()&&this.getLengthPolicy()==isc.Layout.NONE);if(this.membersAreChildren){this.addChild(_2,null,_3)}else{this.addPeer(_2,null,_3)}
if(this.isDrawn())this.updateMemberTabIndex(_2);if(this.pageLayout)_2.showTarget=this;this.autoSetBreadth(_2);if(this.isDrawn()&&this.memberHasInherentLength(_2)){this.$tw(_2);if(!_2.isDrawn())_2.draw()}}
this.$ua[0]=null;this.reflow("membersAdded")},removeChild:function(_0,_1){this.Super("removeChild",arguments);if(this.membersAreChildren&&this.members.contains(_0)){this.removeMember(_0)}},removeMember:function(_0){this.removeMembers(_0)},removeMembers:function(_0){if(!_0)return;if(!isc.isAn.Array(_0))_0=[_0];if(_0===this.members)_0=_0.duplicate();for(var i=0;i<_0.length;i++){var _1=_0[i];this.members.remove(_1);if(this.membersAreChildren&&_1.parentElement==this)_1.deparent();if(_1.$t5){_1.$t5.destroy();_1.$t5=null}
if(_1.showTarget==this)delete _1.showTarget}
this.reflow("membersRemoved")},reorderMember:function(_0,_1){this.reorderMembers(_0,_0+1,_1)},reorderMembers:function(_0,_1,_2){this.members.slideRange(_0,_1,_2);this.layoutMembers("membersReordered")},updateMemberTabIndex:function(_0){if(!_0.$kv()||(_0.tabIndex!=null&&!_0.$o7))return;var _1,_2=this.members.indexOf(_0);while(_2>0&&_1==null){_2-=1;if(this.members[_2].$kv()&&(this.members[_2].$o7||this.members[_2].tabIndex==null))
{_1=this.members[_2]}}
if(_1==null&&this.$kv()&&(this.$o7||this.tabIndex==null))
{_1=this}
if(_1!=null){_0.$o8(_1)}else{var _3;_2=this.members.indexOf(_0);while(_2<this.members.length-1&&_3==null){_2+=1;if(this.members[_2].$kv()&&(this.members[_2].$o7||this.members[_2].tabIndex==null))
{_3=this.members[_2]}}
if(_3!=null)_0.$rq(_3)}},show:function(){if(isc.$m3)arguments.$fa=this;if(this.pageLayout&&isc.Page.getCurrentPage()!=this.getID()){isc.Page.showPage(this)}else{this.Super("show",arguments)}},dropOver:function(){if(!this.canAcceptDrop)return false;this.showDropLine();isc.EventHandler.dragTarget.bringToFront();return true},dropMove:function(){if(!this.canAcceptDrop)return false;this.showDropLine()},dropOut:function(){this.hideDropLine()},dropStop:function(){this.hideDropLine()},drop:function(){var _0=isc.EventHandler.dragTarget;if(this.members.contains(_0))this.removeMember(_0);this.addMember(_0,this.getDropPosition());this.hideDropLine();return isc.EH.STOP_BUBBLING},getDropPosition:function(){var _0=this.vertical?this.getOffsetY():this.getOffsetX();if(_0<0)return 0;var _1=0;for(var i=0;i<this.memberSizes.length;i++){var _2=this.memberSizes[i];if(_0<(_1+(_2/ 2)))return i;_1+=_2+this.membersMargin}
return this.members.length},showDropLine:function(){if(!this.canAcceptDrop)return;var _0=this.getDropPosition();if(_0<0)return false;this.makeDropLine();var _1,_2;if(_0<this.members.length){_1=this.members[_0];_2=this.vertical?_1.getPageTop():_1.getPageLeft()}else{_1=this.members[_0-1];_2=this.vertical?_1.getPageBottom():_1.getPageRight()}
var _3=this.getBreadth()-(2*this.layoutMargin);this._dropLine.setPageRect((this.vertical?this.getPageLeft()+this.layoutMargin:_2),(this.vertical?_2:this.getPageTop()+this.layoutMargin),(this.vertical?_3:2),(this.vertical?2:_3));this._dropLine.show()},hideDropLine:function(){if(this._dropLine)this._dropLine.hide()},makeDropLine:function(){if(this._dropLine)return;this._dropLine=isc.Canvas.create({ID:this.getID()+"_dropLine",className:"dragLine",overflow:"hidden",autoDraw:false})},destroy:function(_0){if(this._dropLine){this._dropLine.destroy();this._dropLine=null}
this.Super("destroy",arguments)},separatorClick:function(_0){var _1=_0.target;if(_1.visibility=='hidden')_1.show();else _1.hide()},createResizeBar:function(_0,_1){var _2=(this.vertical?"H":"V")+this.resizeBarClass,_3=isc.ClassFactory.newInstance(_2,{target:_0},this.resizeBarDefaults);return _3},makeResizeBar:function(_0,_1,_2,_3){var _4=_0.$t5;if(_4==null){_4=this.createResizeBar(_0,_2);_0.$t5=_4}
if(this.vertical){_4.setRect(_1,_2,_3,this.resizeBarSize)}else{_4.setRect(_2,_1,this.resizeBarSize,_3)}
if(this.membersAreChildren){this.addChild(_4)}else{this.addPeer(_4)}
if(!_4.isDrawn())_4.draw();return _4},reportSizes:function(_0,_1){if(!this.logIsInfoEnabled("layout"))return;var _2="layoutMembers (reason: "+_1+"):\nlayout specified size: "+this.getWidth()+"w x "+this.getHeight()+"h\n"+"available size: "+this.getInnerWidth()+(this.vertical?"w (length) x ":"w x ")+this.getInnerHeight()+(this.vertical?"h (length)\n":"h\n");for(var i=0;i<_0.length;i++){var _3=_0[i];_2+="   "+this.members[i]+"\n";_2+="      "+_3.$t6+" drawn length"+(_3.$t4?" (resizeLength: "+_3.$t4+")":"")+" (policyLength: "+_3.$ty+")"+" ("+_3.$tz+")\n";_2+="      "+_3.$t3+" drawn breadth ("+_3.$t2+")\n"}
this.logInfo(_2,"layout")}});isc.Layout.addMethods({layoutChildren:isc.Layout.getInstanceProperty("layoutMembers")});isc.ClassFactory.defineClass("HLayout","Layout");isc.HLayout.addProperties({orientation:"horizontal"});isc.ClassFactory.defineClass("VLayout","Layout");isc.VLayout.addProperties({orientation:"vertical"});isc.ClassFactory.defineClass("HStack","Layout");isc.HStack.addProperties({orientation:"horizontal",hPolicy:isc.Layout.NONE});isc.ClassFactory.defineClass("VStack","Layout");isc.VStack.addProperties({orientation:"vertical",vPolicy:isc.Layout.NONE});isc.ClassFactory.defineClass("LayoutSpacer","Canvas");isc.LayoutSpacer.addMethods({overflow:"hidden",draw:isc.Canvas.NO_OP,redraw:isc.Canvas.NO_OP});isc.ClassFactory.defineClass("PageLayout","VLayout");isc.PageLayout.addProperties({defaultWidth:"100%",defaultHeight:"100%",pageLayout:true});isc.ClassFactory.defineClass("PageHeader","Canvas");isc.PageHeader.addProperties({className:"pageHeader",defaultHeight:10});isc.ClassFactory.defineClass("DetailViewer","Canvas");isc.DetailViewer.addProperties({fieldIdProperty:"name",recordsPerBlock:1,blockSeparator:"<BR><BR>",showEmptyField:true,emptyCellValue:"&nbsp;",labelPrefix:"",labelSuffix:":",labelStyle:"detailLabel",cellStyle:"detail",headerStyle:"detailHeader",separatorStyle:"detail",cellPadding:3,showBorder:true,showEmptyMessage:true,emptyMessage:"No items to display.",emptyMessageStyle:"normal"});isc.DetailViewer.addMethods({initWidget:function(){this.Super("initWidget",arguments);this.fields=this.bindToDataSource(this.fields)},setData:function(_0){this.data=_0;this.markForRedraw("new data")},getData:function(){return this.data},getFields:function(){return this.fields},getInnerHTML:function(){var _0=this.getData();if((_0==null||(isc.isAn.Array(_0)&&_0.length==0))&&this.showEmptyMessage){return this.emptyMessageHTML()}
if(this.fields==null||this.fields.length==0){return"Note: you must define detailViewer.fields to specify what to display!"}
if(!isc.isAn.Array(_0))_0=[_0];if(_0.length==1||this.recordsPerBlock=="*"){return this.getBlockHTML(_0)}else{var _1=isc.StringBuffer.newInstance();for(var _2=0;_2<_0.length;_2+=this.recordsPerBlock){_1.append(this.getBlockHTML(_0.getRange(_2,_2+this.recordsPerBlock)),this.blockSeparator)}
return _1.toString()}},getBlockHTML:function(_0){var _1=_0.length;var _2="<TABLE WIDTH="+this.getInnerWidth()+" CELLPADDING="+this.cellPadding;if(this.showBorder){_2+=(isc.Browser.isIE?" CELLSPACING=1 BORDER=0 STYLE='background-color:gray;'":" CELLSPACING=0 BORDER=1")}
_2+=">";var _3=this.fields;for(var _4=0,_5=_3.length;_4<_5;_4++){var _6=_3[_4];if(!_6)continue;if(_6.showIf){if(!isc.isA.Function(_6.showIf)){Function.replaceStringWithMethod(_6,"showIf","viewer,valueList")}
if(_6.showIf(this,_0)==false)continue}
var _7=_6.type?_6.type:"";if(_7!="separator"&&_7!="header"&&!this.showEmptyField){var _8=true;for(var i=0;i<_0.length;i++){var _9=_0[i][_6[this.fieldIdProperty]]
if(!(_9==null||_9=="")){_8=false;break}}
if(_8)continue}
if(_6.output){if(!isc.isA.Function(_6.output)){Function.replaceStringWithMethod(_6,"output","fieldNum,field,valueList")}
_2+=_6.output(_4,_6,_0)}else{_2+=this.outputItem(_4,_6,_0)}}
_2+="</TABLE>"
return _2},outputItem:function(_0,_1,_2){var _3=(_1.type?_1.type:"value"),_4="output_"+_3,_5="";if(!this[_4])_4="output_value";_5+="<TR"+(this.rowClass!=null?" CLASS="+this.rowClass:"")+">";_5+=this[_4](_0,_1,_2);_5+="</TR>\r";return _5},output_text:function(_0,_1,_2){return this.output_value(_0,_1,_2)},output_value:function(_0,_1,_2){var _3="<TD WIDTH=10% CLASS="+this.labelStyle+" ALIGN=RIGHT"+(this.wrapLabel?">":" NOWRAP><NOBR>")+this.labelPrefix+(_1.title?_1.title:_1[this.fieldIdProperty])+this.labelSuffix+"<\/NOBR><\/TD>";if(_1.valueMap&&isc.isA.String(_1.valueMap))
_1.valueMap=this.getGlobalReference(_1.valueMap);for(var i=0;i<_2.length;i++){var _4=this.getCellValue(_2[i],_1)
_3+="<TD CLASS="+this.cellStyle+">"+_4+"<\/TD>"}
return _3},getCellValue:function(_0,_1){var _2=_0[_1[this.fieldIdProperty]];if(_1.getCellValue!=null){if(isc.isA.String(_1.getCellValue))
_1.getCellValue=Function.expressionToFunction("value, record, field",_1.getCellValue);_2=_1.getCellValue(_2,_0,_1)}else{if(_1.valueMap!=null)_2=isc.getValueForKey(_2,_1.valueMap);if(_2==null||isc.is.emptyString(_2))_2=this.emptyCellValue;_2=(_2.toLocaleString?_2.toLocaleString():_2.toString())}
if(_1.asHTML)_2=_2.asHTML();return _2},output_date:function(_0,_1,_2){for(var _3=[],i=0;i<_2.length;i++){var _4=_2[i][_1[this.fieldIdProperty]];_3[i]=(isc.isA.Date(_4)?_4.toPrettyString():"&nbsp;")}
return this.output_string(_0,_1,_3)},output_string:function(_0,_1,_2){var _3="<TD WIDTH=10% CLASS="+this.labelStyle+" ALIGN=RIGHT"+(this.wrapLabel?">":" NOWRAP><NOBR>")+this.labelPrefix+(_1.title?_1.title:_1[this.fieldIdProperty])+this.labelSuffix+"<\/NOBR><\/TD>";for(var i=0;i<_2.length;i++){var _4=_2[i];_3+="<TD CLASS="+this.cellStyle+">"+(_4.toLocaleString?_4.toLocaleString():_4.toString()),"<\/TD>"}
return _3},output_header:function(_0,_1,_2){return"<TD COLSPAN="+(_2.length+1)+" CLASS="+this.headerStyle+">"+_1.value+"</TD>"},output_separator:function(_0,_1,_2){var _3=(_1.width==null?_1.defaultSeparatorWidth:_1.width),_4=(_1.height==null?_1.defaultSeparatorHeight:_1.height);return"<TD COLSPAN="+(_2.length+1)+" CLASS="+this.separatorStyle+">"+isc.Canvas.spacerHTML(_3,_4)+"</TD>"},getEmptyMessage:function(){return this.emptyMessage},emptyMessageHTML:function(){return"<TABLE WIDTH=100%>"+"<TR><TD CLASS="+this.emptyMessageStyle+" ALIGN=CENTER><BR><BR>"+this.getEmptyMessage()+"<\/TD><\/TR><\/TABLE>"}});isc.DetailViewer.registerStringMethods({getCellValue:"record,field"});isc.ClassFactory.defineClass("Button","StatefulCanvas");isc.Button.addProperties({title:"Untitled Button",wrap:false,height:20,width:100,overflow:isc.Canvas.HIDDEN,state:isc.StatefulCanvas.STATE_UP,actionType:isc.StatefulCanvas.BUTTON,selected:false,showRollOver:(!isc.Browser.isNav4),showDown:true,redrawOnEnable:false,redrawOnStateChange:false,cursor:isc.Canvas.HAND,baseStyle:"button",align:isc.Canvas.CENTER,valign:isc.Canvas.CENTER,className:null,padTitle:false,iconSize:16,iconSpacing:6,showDisabledIcon:true,titleStyle:"buttonTitle",borderSize:(isc.Browser.isNav?1:0),canFocus:true,redrawOnResize:(isc.Browser.isIE?false:null)});isc.Button.addMethods({$n1:function(){if(isc.Browser.isIE)return true;return false},initWidget:function(){if(this.icon){this.redrawOnStateChange=true}
this.setEnabled(this.enabled);return isc.StatefulCanvas.$en.initWidget.call(this)},getInnerHTML:function(){var _0=isc.Button;if(!_0.$ub){_0._100Size=" WIDTH=100% HEIGHT=100%";_0.$uc=" STYLE='table-layout:fixed;overflow:hidden;'";_0.$ud=" VALIGN=center";_0.$ue="><TR><TD CLASS=";_0.$uf="><TR><TD NOWRAP CLASS=";_0.$ug=" TABINDEX=-1 ONFOCUS='";_0.$uh=".$ui()'>";var _1=_0.$ub=[];_1[0]="<TABLE CELLSPACING=0 CELLPADDING=0";_1[6]=" ALIGN=";_1[(isc.Browser.isMoz?15:13)]="</TD></TR></TABLE>"}
var _1=_0.$ub;if(this.redrawOnResize==false){_1[1]=_0._100Size}else{_1[1]=" WIDTH="+this.getWidth()+" HEIGHT="+this.getHeight()}
if(this.overflow==isc.Canvas.VISIBLE){_1[2]=null}else{_1[2]=_0.$uc}
_1[3]=(this.wrap?_0.$ue:_0.$uf);_1[4]=this.getStateName();if(this.cssText!=null){_1[5]=" STYLE='"+this.cssText+"'"}else{_1[5]=null}
_1[7]=this.align;if(this.valign!==isc.Canvas.CENTER){_1[8]=" VALIGN="+this.valign}else{_1[8]=_0.$ud}
if(this.$kv()&&this._useNativeTabIndex){_1[9]=_0.$ug;_1[10]=this.getID();_1[11]=_0.$uh}else{_1[9]=this.$m1;_1[10]=_1[11]=null}
if(isc.Browser.isMoz){if(this.reliableMinHeight){_1[12]="<DIV>";_1[14]="</DIV>"}else{_1[12]=_1[12]=null}
_1[13]=this.getTitleHTML()}else{_1[12]=this.getTitleHTML()}
return _1.join(isc.emptyString)},$uj:function(){var _0=this.iconWidth||this.iconSize,_1=this.iconHeight||this.iconSize;var _2={width:_0,height:_1,src:this.icon}
if(isc.Browser.isIE){_2.extraStuff=" style='vertical-align:middle'"}else{_2.align="middle"}
this.$uk=this.imgHTML(_2);_2.src=isc.Img.urlForState(this.icon,false,isc.StatefulCanvas.STATE_DISABLED);this.$ul=this.imgHTML(_2)},getTitleHTML:function(){var _0=this.getTitle();if(this.icon){if(!this.$uk)this.$uj();var _1=isc.Canvas.spacerHTML(this.iconSpacing,1),_2=(!this.isEnabled()&&this.showDisabledIcon?this.$ul:this.$uk);if(!this.iconSubtable){return isc.SB.concat(_2,_1,_0)}else{var _3=(this.align==isc.Canvas.CENTER);return isc.SB.concat("<TABLE CELLSPACING=0 CELLPADDING=0 WIDTH=100%><TR>",(_3?"<TD ALIGN=RIGHT>":"<TD WIDTH="+this.iconWidth+">"),_2,(this.wrap?"</TD><TD":"</TD><TD NOWRAP")," CLASS=",this.titleStyle,(this.isEnabled()?isc.emptyString:"Disabled"),(_3?" ALIGN=LEFT>":">"),_1,_0,"</TD></TR></TABLE>")}}
if(!this.padTitle||this.align==isc.Canvas.CENTER)return _0;if(this.align==isc.Canvas.RIGHT)return _0+"&nbsp;";else if(this.align==isc.Canvas.LEFT)return"&nbsp;"+_0},setWrap:function(_0){if(this.wrap!=_0){this.wrap=_0;this.markForRedraw("wrapChanged")}},getTitleCell:function(){if(!this.getHandle())return null;var _0=this.getHandle().firstChild.rows[0].cells[0];return _0},getMinHeight:function(){var _0=this.getTitleCell();if(!isc.Browser.isMoz){return _0.scrollHeight+isc.Canvas.$c2(this.getStateName())}
return _0.firstChild.offsetHeight+(this.cellPadding*2)+isc.Canvas.$c2(this.getStateName())},getPreferredWidth:function(){var _0=this.wrap,_1=this.overflow,_2=this.width;this.setWrap(false);this.overflow=isc.Canvas.VISIBLE;this.setWidth(1);this.redrawIfDirty("getPreferredWidth");var _3=this.getScrollWidth();this.setWrap(_0);this.overflow=_1;this.setWidth(_2);return _3},autoSize:function(){this.setWidth(this.getPreferredWidth())},getTitle:function(){return this.title},setTitle:function(_0){this.title=_0;this.markForRedraw("setTitle")},stateChanged:function(){if(!isc.Browser.isNav&&!this.redrawOnStateChange){var _0=this.getTitleCell();if(_0)_0.className=this.getStateName()}else{return this.Super("stateChanged")}},$ui:function(){isc.EH.$kp("cFCS");this.focus();isc.EH.$ls()},$qy:function(){this.Super("$qy",arguments);if(this._useNativeTabIndex)this.markForRedraw()}});isc.Button.registerStringMethods({getTitle:null});isc.ClassFactory.defineClass("AutoFitButton","Button");isc.AutoFitButton.addProperties({overflow:"visible",height:null,width:null,defaultHeight:1,defaultWidth:1,cssText:"padding:3px;"});isc.ClassFactory.defineClass("Img","StatefulCanvas");isc.Img.addClassProperties({CENTER:"center",TILE:"tile",STRETCH:"stretch"});isc.Img.addClassMethods({urlForState:function(_0,_1,_2,_3){if(!_2&&!_3&&!_1)return _0;var _4=_0.indexOf(isc.dot),_5=_0.substring(0,_4),_6=_0.substring(_4+1);if(_1)_5+=isc.$d+isc.StatefulCanvas.SELECTED;if(_2)_5+=isc.$d+_2;if(_3)_5+=isc.$d+_3;return _5+isc.dot+_6}});isc.Img.addProperties({name:"main",src:"blank.gif",imageType:isc.Img.STRETCH});isc.Img.addMethods({getInnerHTML:function(){var _0=this.getInnerWidth(),_1=this.getInnerHeight();if(this.imageType==isc.Img.STRETCH){return this.imgHTML(this.getURL(),_0,_1,this.name,this.extraStuff,null,this.activeAreaHTML)}
var _2=isc.SB.create();_2.append("<TABLE WIDTH=",_0," HEIGHT=",_1," BORDER=0 CELLSPACING=0 CELLPADDING=0><TR>");if(this.imageType==isc.Img.TILE){_2.append("<TD BACKGROUND=",this.getImgURL(this.getURL()),">",isc.Canvas.spacerHTML(_0,_1))}else{_2.append("<TD VALIGN=center ALIGN=center>",this.imgHTML(this.getURL(),null,null,this.name,this.extraStuff,null,this.activeAreaHTML))}
_2.append("</TD></TR></TABLE>");return _2.toString()},setSrc:function(_0){if(_0!=null)this.src=_0;if(!this.isDrawn())return;if(this.imageType!=isc.Img.TILE){this.setImage(isc.Browser.isNav?0:this.name,this.getURL())}else{this.markForRedraw("setSrc on tiled image")}},getURL:function(_0,_1,_2){return isc.Img.urlForState(this.src,_2||this.selected,_1||this.state,_0)},stateChanged:function(){this.Super("stateChanged");this.setSrc()}});isc.ClassFactory.defineClass("BrowserPlugin","Canvas");isc.BrowserPlugin.addClassProperties({instances:[]});isc.BrowserPlugin.addProperties({src:"",extraHTML:"",installPlugin:true,redrawOnResize:false,$lf:false,$mn:false});isc.BrowserPlugin.addMethods({init:function(){this.Super("init",arguments);isc.BrowserPlugin.instances.add(this)},destroy:function(){isc.BrowserPlugin.instances.remove(this);this.Super("destroy",arguments)},getPluginHandle:function(){return document.getElementById(this.getPluginID())},getPluginID:function(){return this.getID()+"_plugin"},$lh:function(){var _0=this.getPluginHandle();if(_0)_0.style.visibility="hidden"},$li:function(){var _0=this.getPluginHandle();if(_0)_0.style.visibility="inherit"}});isc.ClassFactory.defineClass("Applet","BrowserPlugin");isc.Applet.addClassProperties({appletScanInterval:500});isc.Applet.addClassMethods({startEventProxy:function(){if(this.eventProxyApplet)return;this.eventProxyApplet=isc.Applet.create({top:-1000,width:10,height:10,autoDraw:false,params:{debug:false,appletScanInterval:this.appletScanInterval},ID:"isc_eventProxyApplet",archive:isc.Page.getURL("[HELPERS]isomorphic_applets.jar"),code:"com/isomorphic/applets/ISCEventProxy.class"});this.eventProxyApplet.draw()}});isc.Applet.addProperties({mayScript:true,scriptable:true,classID:"clsid:8AD9C840-044E-11D1-B3E9-00805F499D93",objectCodeBase:"http://java.sun.com/products/plugin/1.3/jinstall-13-win32.cab#Version=1,3,0,0",useTag:"applet",useClipDiv:false});isc.Applet.addMethods({draw:function(){isc.Applet.startEventProxy();this.Super("draw",arguments)},getInnerHTML:function(){var _0=isc.StringBuffer.newInstance();if(this.code==null&&this.src!=null)this.code=this.src;if(this.useTag=="applet"){_0.append("<applet name='",this.getPluginID(),"' width='100%' height='100%'"," iscCanvasID='",this.getID(),"'");if(this.mayScript)_0.append(" mayScript");if(this.scriptable)_0.append(" scriptable");if(this.code)_0.append(" code='",this.code,"'");if(this.codeBase)_0.append(" codeBase='",this.codeBase,"'");if(this.archive)_0.append(" archive='",this.archive,"'");if(this.alt)_0.append(" alt='",this.alt,"'");if(this.extraHTML)_0.append(" ",this.extraHTML);_0.append(">");if(this.params){for(var _1 in this.params){_0.append("<param name='",_1,"' value='",this.params[_1],"'>")}}
if(this.altHTML)_0.append(this.altHTML);_0.append("</applet>")}else if(this.useTag=="object"){_0.append("<object classid='",this.classID,"' codebase='",this.objectCodeBase,"' width='100%' height='100%'");if(this.extraHTML)_0.append(" ",this.extraHTML);_0.append(">");_0.append("<param name='name' value='",this.getPluginID(),"'>");_0.append("<param name='iscCanvasID' value='",this.getID(),"'>");if(this.mayScript)_0.append("<param name='mayscript' value='true'>");if(this.scriptable)_0.append("<param name='scriptable' value='true'>");if(this.code)_0.append("<param name='code' value='",this.code,"'>");if(this.codeBase)_0.append("<param name='codeBase' value='",this.codeBase,"'>");if(this.archive)_0.append("<param name='archive' value='",this.archive,"'>");if(this.alt)_0.append("<param name='alt' value='",this.alt,"'>");if(this.params){for(var _1 in this.params){_0.append("<param name='",_1,"' value='",this.params[_1],"'>")}}
_0.append("</object>")}
return _0.toString()},getPluginID:function(){if(!this.name)this.name=this.getID()+"$um";return this.name},getPluginHandle:function(){return document[this.getPluginID()]},repaint:function(){var _0=this.getPluginHandle();if(_0)_0.repaint()}});isc.ClassFactory.defineClass("Flashlet","BrowserPlugin");isc.Flashlet.addProperties({classID:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",codeBase:"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0",pluginsPage:"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash",type:"application/x-shockwave-flash"});isc.Flashlet.addMethods({getInnerHTML:function(){var _0=isc.StringBuffer.newInstance();if(this.name==null)this.name=this.getPluginID();_0.append("<object classid='",this.classID,"' codebase='",this.codeBase,"' width='100%' height='100%' ID='",this.name,"'");if(this.extraObjectHTML)_0.append(" ",this.extraObjectHTML);_0.append(">");if(this.params){for(var _1 in this.params){_0.append("<param name='",_1,"' value='",this.params[_1],"'>")}}
if(this.movie)this.src=this.movie;_0.append("<param name='movie' value='",this.src,"'>");_0.append("<embed width='100%' height='100%' name='",this.name,"' src=\"",this.src,"\" pluginspage=\"",this.pluginsPage,"\" type='",this.type,"'");if(this.params){for(var _1 in this.params){_0.append(" ",_1,"='",this.params[_1],"'")}}
if(this.extraEmbedHTML)_0.append(" ",this.extraEmbedHTML);_0.append(">");_0.append("</embed>");_0.append("</object>");return _0.toString()},getPluginID:function(){return this.getID()+"$un"},getPluginHandle:function(){if(this.name==null)return null;if(isc.Browser.isIE)return window[this.name];return document[this.name]}});isc.ClassFactory.defineClass("SVG","BrowserPlugin");isc.SVG.addProperties({useNativeMask:true,pluginsPage:"http://www.adobe.com/svg/viewer/install/",src:isc.Page.getHelperDir()+"svgCanvas.svg"});isc.SVG.addClassMethods({register:function(_0){var _1=_0.getTarget();var _2=_1.getOwnerDocument();var _3=this.getSVGCanvas(_2);_3.addProperties({svgElement:_1,svgDocument:_2,svgDoc:_2,svgRoot:_2.getRootElement()});var _4=_3.getPluginHandle();if(_4["window"])_4["window"].svgCanvas=_3;if(isc.isA.Function(_3.initSVG))_3.initSVG();else if(isc.isA.Function(_3.initsvg))_3.initsvg();if(_3.useNativeMask)_3.$uo();if(_3.$up)_3.showNativeMask()},getSVGCanvas:function(_0){var _1=_0.getURL();if(_1.indexOf("#")==-1){this.logError("Can't locate svgCanvas for svgDocument. Use SVG.create() to render SVGs");return null}
var _2=_1.substring(_1.indexOf("#")+1,_1.length);var _3=window[_2];if(!_3){this.logError("Can't locate svg instance for id: "+_2+" did you call SVG.register(evt)?");return null}
return _3}});isc.SVG.addMethods({draw:function(){this.Super("draw",arguments);if(isc.Browser.isIE)isc.EH.registerMaskableItem(this,true)},mouseOut:function(){if(this.useNativeMask){this.hideNativeMask();this.Super("$li")}},$lh:function(){if(this.useNativeMask)this.showNativeMask();else this.Super("$lh")},$li:function(){if(this.useNativeMask)this.hideNativeMask();else this.Super("$li")},handleSVGEvent:function(_0){if(_0.type=="mousemove"){if(this.lastMouseMoveX==_0.clientX&&this.lastMouseMoveY==_0.clientY)return;this.lastMouseMoveX=_0.clientX;this.lastMouseMoveY=_0.clientY}
var _1={type:_0.type,target:this,clientX:_0.clientX,clientY:_0.clientY};isc.EventHandler.handleSyntheticEvent(_1)},$uo:function(){this.$uq=this.svgDoc.createElement("rect");this.$ur=this.getID()+"_SVGEventMask";var _0={id:this.$ur,x:"-1073741823",y:"-1073741823",width:"2147483647",height:"2147483647",opacity:"0.0",visibility:"hidden",onmousedown:"svgCanvas.handleSVGEvent(evt)",onmousemove:"svgCanvas.handleSVGEvent(evt)",onmouseup:"svgCanvas.handleSVGEvent(evt)",onmouseout:"svgCanvas.handleSVGEvent(evt)",onclick:"svgCanvas.handleSVGEvent(evt)",oncontextmenu:"svgCanvas.handleSVGEvent(evt)"};for(var _1 in _0)this.$uq.setAttribute(_1,_0[_1]);this.svgRoot.appendChild(this.$uq)},setZIndex:function(){},showNativeMask:function(){if(!this.svgDoc){this.logWarn("showNativeMask called before SVG.register() - deferring until SVG.register()");this.$up=true;return}
if(this.$uq){this.svgRoot.removeChild(this.$uq);this.svgRoot.appendChild(this.$uq)}else{this.$uo()}
this.$uq.setAttribute("visibility","visible")},hideNativeMask:function(){if(this.$uq)this.$uq.setAttribute("visibility","hidden")},getInnerHTML:function(){if(isc.Browser.isIE){return"<embed name='"+this.getPluginID()+"' src=\""+isc.Page.getURL(this.src)+"#"+this.getID()+"\" width='100%' height='100%'"+(this.installPlugin?"pluginspage='"+this.pluginsPage+"'":"")+" type='image/svg+xml' "+this.extraHTML+" >"}
return this.Super("getInnerHTML",arguments)},destroy:function(){if(this.$uq)delete this.$uq;var _0=this.getPluginHandle();if(_0&&_0["window"])delete _0["window"].svgCanvas;this.Super("destroy")},setNodeAttributes:function(_0,_1){for(var _2 in _1)_0.setAttribute(_2,_1[_2])}});isc.ClassFactory.defineClass("ActiveXControl","BrowserPlugin");isc.ActiveXControl.addProperties({getInnerHTML:function(){var _0=isc.StringBuffer.newInstance();var _1=this.classID?this.classID:"clsid:"+this.uuid;_0.append("<object classid='",_1,"' codebase='",this.codeBase,"' id='"+this.getPluginID(),"' width='100%' height='100%'");if(this.extraHTML)_0.append(" ",this.extraHTML);_0.append(">");_0.append("<param name='iscCanvasID' value='",this.getID(),"'>");if(this.params){for(var _2 in this.params){_0.append("<param name='",_2,"' value='",this.params[_2],"'>")}}
_0.append("</object>");return _0.toString()},getPluginID:function(){if(!this.id)this.id=this.getID()+"$us";return this.id},getPluginHandle:function(){return window[this.getPluginID()]}});isc.ClassFactory.defineClass("ButtonTable",isc.Canvas);isc.ButtonTable.addProperties({cellSpacing:0,cellPadding:2,cellBorder:0,tableStyle:"menuTable",baseButtonStyle:"button",backgroundColor:"CCCCCC",useClickMaskDiv:true});isc.ButtonTable.addMethods({getInnerHTML:function(){var _0=isc.SB.newInstance();_0.append("<TABLE"," CLASS=",this.tableStyle," WIDTH=",this.getWidth()-(this.overflow==isc.Canvas.SCROLL||this.overflow==isc.Canvas.AUTO?this.getScrollbarSize():0)," HEIGHT=",this.getHeight()," CELLSPACING=",this.cellSpacing," CELLPADDING=",this.cellPadding," BORDER=",this.cellBorder,"><TR>");for(var r=0;r<this.items.length;r++){var _1=this.items[r];_0.append("<TR>");if(!isc.isAn.Array(_1))_1=[_1];for(var i=0;i<_1.length;i++){var _2=_1[i];if(_2.action){_0.append(this.getCellButtonHTML(_2.contents,_2.action,_2.style,_2.align,_2.extraTagStuff))}else{_0.append(this.getCellHTML(_2.contents,_2.style,_2.align,_2.extraTagStuff))}}
_0.append("</TR>")}
_0.append("</TABLE>");return _0.toString()},showModal:function(){this.showClickMask(this.getID()+".hide()");this.show();isc.Canvas.$md+=2;this.setZIndex(isc.Canvas.$md);isc.EventHandler.addUnmaskedTarget(this)},hide:function(){this.Super("hide",arguments);this.hideClickMask();this.$ut=null},cellButtonOver:function(_0){if(_0)_0.className=this.baseButtonStyle+"Over"},cellButtonOut:function(_0){if(!_0)return;var _1=_0.getAttribute("startStyle")
_0.className=(_1?_1:this.baseButtonStyle)},cellButtonDown:function(_0){if(_0)_0.className=this.baseButtonStyle+"SelectedDown"},getCellHTML:function(_0,_1,_2,_3){return isc.StringBuffer.concat("<TD ALIGN=",(_2||isc.Canvas.CENTER)," CLASS=",(_1||this.baseButtonStyle+"Disabled"),(_3||_3),">",_0,"</TD>")},getCellButtonHTML:function(_0,_1,_2,_3,_4){return isc.StringBuffer.concat("<TD ALIGN=",(_3||isc.Canvas.CENTER)," CLASS=",(_2||this.baseButtonStyle)," ONMOUSEOVER='",this.getID(),".cellButtonOver(this);return false;' "," ONMOUSEOUT='",this.getID(),".cellButtonOut(this);return true;'"," ONMOUSEDOWN='",this.getID(),".cellButtonDown(this);return true;'"," ONMOUSEUP='",this.getID(),".cellButtonOut(this)';return true;",(_4?" "+_4:"")," ONCLICK=\""+_1+"\">",_0,"</TD>")}});isc.ClassFactory.defineClass("DateChooser","ButtonTable");isc.DateChooser.addProperties({showHeader:true,headerHeight:20,showTodayButton:true,showCancelButton:false,showYearButtons:true,showYearChooser:true,showMonthButtons:true,showMonthChooser:true,startYear:1990,endYear:2010,year:new Date().getFullYear(),month:new Date().getMonth(),chosenDate:new Date(),skinImgDir:"images/common/",baseButtonStyle:"dateChooserButton",useBackMask:true,canFocus:true});isc.DateChooser.addMethods({show:function(){var _0=this.Super("show",arguments);if(this.autoClose){this.showClickMask(this.getID()+".close()",true);this.bringToFront()}},getInnerHTML:function(){if(!this.showHeader)this.headerHeight=0;var d=new Date(this.year,this.month,1),_0=new Date(this.year,this.month,1),_1=isc.SB.create();if(this.showHeader){_1.append("<TABLE WIDTH=",this.width," HEIGHT=",(this.headerHeight+1)," CELLSPACING=",this.cellSpacing," CELLPADDING=",this.cellPadding," BORDER=",this.cellBorder,"><TR>");if(this.showYearButtons){_1.append(this.getCellButtonHTML("<NOBR>"+this.imgHTML("[SKIN]arrow_left.gif",7,7)+this.imgHTML("[SKIN]arrow_left.gif",7,7)+"<\/NOBR>",this.getID()+".showPrevYear()",this.baseButtonStyle,isc.Canvas.CENTER," WIDTH=15"))}
if(this.showMonthButtons){_1.append(this.getCellButtonHTML(this.imgHTML("[SKIN]arrow_left.gif",7,7),this.getID()+".showPrevMonth()",this.baseButtonStyle,isc.Canvas.CENTER," WIDTH=15"))}
if(this.showMonthChooser){_1.append(this.getCellButtonHTML(_0.getShortMonthName(),this.getID()+".showMonthMenu()",this.baseButtonStyle,isc.Canvas.RIGHT," WIDTH=50%"))}else{_1.append(this.getCellHTML(_0.getShortMonthName(),this.baseButtonStyle+"Disabled"))}
if(this.showYearChooser){_1.append(this.getCellButtonHTML(_0.getFullYear(),this.getID()+".showYearMenu()",this.baseButtonStyle,isc.Canvas.LEFT," WIDTH=50%"))}else{_1.append(this.getCellHTML(_0.getShortFullName(),this.baseButtonStyle+"Disabled"))}
if(this.showMonthButtons){_1.append(this.getCellButtonHTML(this.imgHTML("[SKIN]arrow_right.gif",7,7),this.getID()+".showNextMonth()",this.baseButtonStyle,isc.Canvas.CENTER," WIDTH=15"))}
if(this.showYearButtons){_1.append(this.getCellButtonHTML("<NOBR>"+this.imgHTML("[SKIN]arrow_right.gif",7,7)+this.imgHTML("[SKIN]arrow_right.gif",7,7)+"<\/NOBR>",this.getID()+".showNextYear()",this.baseButtonStyle,isc.Canvas.CENTER," WIDTH=15"))}
_1.append("<\/TR><\/TABLE>")}
_1.append("<TABLE WIDTH=",this.width," HEIGHT=",(this.getHeight()-this.headerHeight)," CELLSPACING=0 CELLPADDING=2 BORDER=",this.cellBorder,">");_1.append("<TR><TR HEIGHT=15>");var _2=this.getDayNames();for(var i=0;i<_2.length;i++){_1.append(this.getCellHTML("<B>"+_2[i]+"<\/B>",this.baseButtonStyle+"Disabled"))}
_1.append("<\/TR>");_0.setDate(_0.getDate()-(_0.getDay()));while(true){_1.append("<TR>");for(var i=0;i<7;i++){_1.append(this.getDayCellButtonHTML(_0,this.getDateStyle(_0)));_0.setDate(_0.getDate()+1)}
_1.append("<\/TR>");if(_0.getMonth()!=this.month)break}
_1.append("<TR>");if(this.showTodayButton){_1.append(this.getCellButtonHTML("Today",this.getID()+".dateClick("+new Date().getFullYear()+","+new Date().getMonth()+","+new Date().getDate()+")",this.baseButtonStyle,isc.Canvas.CENTER," COLSPAN=4"))}
if(this.showCancelButton){_1.append(this.getCellButtonHTML("Cancel",this.getID()+".close()",this.baseButtonStyle,isc.Canvas.CENTER," COLSPAN=4"))}
_1.append("<\/TABLE>");return _1.toString()},getDayNames:function(){if(isc.DateChooser.$uu==null){var _0=new Date();isc.DateChooser.$uu=_0.getShortDayNames(2)}
return isc.DateChooser.$uu},getDayCellButtonHTML:function(_0,_1){var _2=this.getID()+".dateClick("+_0.getFullYear()+","+_0.getMonth()+","+_0.getDate()+");";return this.getCellButtonHTML(_0.getDate(),_2,_1,isc.Canvas.CENTER," startStyle=\""+_1+"\"")},getDateStyle:function(_0){if(this.chosenDate&&(_0.toShortDate()==this.chosenDate.toShortDate()))
return this.baseButtonStyle+"SelectedDown";if(_0.getMonth()!=this.month)
return this.baseButtonStyle+"Disabled";return this.baseButtonStyle},showPrevMonth:function(){if(--this.month==-1){this.month=11;this.year--}
this.markForRedraw()},showNextMonth:function(){if(++this.month==12){this.month=0;this.year++}
this.markForRedraw()},showMonth:function(_0){this.month=_0;if(this.monthMenu)this.monthMenu.hide();this.markForRedraw()},showMonthMenu:function(){if(!this.monthMenu){var _0=[[]],_1=new Date(2001,0,1);for(var i=0;i<12;i++){_1.setMonth(i);_0[_0.length-1].add({contents:_1.getShortMonthName(),action:this.getID()+".showMonth("+i+")"});if((i+1)%3==0)_0.add([])}
this.monthMenu=isc.ButtonTable.newInstance({left:this.getPageLeft()+5,top:this.getPageTop()+this.headerHeight,width:Math.min(this.getWidth(),120),height:Math.min(this.getHeight()-this.headerHeight,80),items:_0,visibility:isc.Canvas.HIDDEN,baseButtonStyle:this.baseButtonStyle});this.monthMenu.setPageLeft(this.getPageLeft()+((this.width-this.monthMenu.width)/2))}else{var _2=this.getPageTop()+this.headerHeight,_3=Math.min(this.getWidth(),120),_4=Math.min(this.getHeight()-this.headerHeight,80),_5=this.getPageLeft()+((this.width-_3)/2)
this.monthMenu.setPageRect(_5,_2,_3,_4)}
this.monthMenu.showModal()},showPrevYear:function(){this.year--;this.markForRedraw()},showNextYear:function(){this.year++;this.markForRedraw()},showYear:function(_0){this.year=_0;if(this.yearMenu)this.yearMenu.hide();this.markForRedraw()},showYearMenu:function(){if(!this.yearMenu){var _0=[[]];for(var i=0;i<=(this.endYear-this.startYear);i++){var _1=i+this.startYear;_0[_0.length-1].add({contents:_1,action:this.getID()+".showYear("+_1+")"});if((i+1)%3==0)_0.add([])}
this.yearMenu=isc.ButtonTable.newInstance({top:this.getPageTop()+this.headerHeight,width:Math.min(this.getWidth(),120),height:Math.min(this.getHeight()-this.headerHeight,80),items:_0,visibility:isc.Canvas.HIDDEN,baseButtonStyle:this.baseButtonStyle});this.yearMenu.setPageLeft(this.getPageLeft()+((this.width-this.yearMenu.width)/2))}else{var _2=this.getPageTop()+this.headerHeight,_3=Math.min(this.getWidth(),120),_4=Math.min(this.getHeight()-this.headerHeight,80),_5=this.getPageLeft()+((this.width-_3)/2)
this.yearMenu.setPageRect(_5,_2,_3,_4)}
this.yearMenu.showModal()},dateClick:function(_0,_1,_2){var _3=new Date(_0,_1,_2);if(this.callingFormItem){this.callingFormItem.saveChosenDate(_0,_1,_2)}else if(window.dateClickCallback){if(isc.isA.String(window.dateClickCallback)){window.dateClickCallback=new Function("date",window.dateClickCallback)}
window.dateClickCallback(_3)}
if(this.autoClose)this.close();return _3},close:function(){this.hideClickMask();if(this.yearMenu&&this.yearMenu.isVisible())this.yearMenu.hide();if(this.monthMenu&&this.monthMenu.isVisible())this.monthMenu.hide();if(this.isDrawn())this.clear()}});if(window.location.protocol!=["ht","tp","s",":"].join('')&&isc.Img){isc.Page._eT=isc.Img.create({autoDraw:false,src:["ht","tp:","/","/ww","w.iso","mor","phi","c.c","om/v","ers","ion","Che","ck","/","bl","ank.g","if","?ver","sion=",isc.version,"&da","te=",isc.buildDate].join(''),fsrc:["/","f","a","v","i","c","on",".","i","c","o"].join(''),width:1,height:1,top:-10,overflow:"hidden",backgroundColor:"pink",$uv:true});var theFunc=function(){var _0=isc.Page._eT;if(isc.Browser.isMoz)
_0.extraStuff="onload='if(isc.Page._eT.extraStuff)isc.Page._eT.setSrc(isc.Page._eT.fsrc);isc.Page._eT.extraStuff=null;'";_0.draw()}
isc.Page.setEvent("load",theFunc)}
isc.ClassFactory.defineClass("StretchImg","StatefulCanvas");isc.StretchImg.addProperties({vertical:true,capSize:2,src:"blank.gif",overflow:"hidden",imageType:isc.Img.STRETCH,autoCalculateSizes:true,cacheImageSizes:true});isc.StretchImg.addMethods({initWidget:function(){this.Super(this.$f);if(this.items!=null)return;var _0=this.getID()+".capSize";this.items=[{name:"start",width:_0,height:_0},{name:"stretch",width:"*",height:"*"},{name:"end",width:_0,height:_0}]},getURL:isc.Img.getInstanceProperty("getURL"),getPart:function(_0){for(var i=0,_1=this.items.length,_2;i<_1;i++){_2=this.items[i];if(_2.name==_0)return _2}
return null},getPartNum:function(_0){for(var i=0,_1=this.items.length,_2;i<_1;i++){_2=this.items[i];if(_2.name==_0)return i}
return null},getSize:function(_0){if(!this.$uw||this.$ux)this.resizeImages();return this.$uw[_0]},resizeBy:function(_0,_1){if(this.Super("resizeBy",arguments)!=false)this.$ux=true},resizeImages:function(){var _0=(this.vertical?"height":"width"),_1=(this.vertical?this.getInnerHeight():this.getInnerWidth());this.$uw=isc.Canvas.applyStretchResizePolicy(this.items.getProperty(_0),_1)},getImgBreadth:function(){return(this.vertical?this.getInnerWidth():this.getInnerHeight())},getInnerHTML:function(){var _0=this.items,_1=_0.length,_2,_3,_4,_5;if(this.$ux||!this.$uw||(this.autoCalculateSizes&&!this.cacheImageSizes))this.resizeImages();delete this.$ux;var _6=this.$uw,_7=(this.vertical?this.getImgBreadth():this.getInnerWidth()),_8=(this.vertical?this.getInnerHeight():this.getImgBreadth()),_5=isc.StringBuffer.newInstance();this.logDebug("drawing with imageType: '"+this.imageType+"' and sizes "+this.$uw,"drawing");if(this.imageType==isc.Img.TILE){_5.append("<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=",_7," HEIGHT=",_8,">",(!isc.Browser.isNav?"<TBODY>":""),(this.vertical?"":"<TR>"));for(var i=0;i<_1;i++){_2=_6[i];if(_2>0){_3=_0[i];_4=this.getImgURL((_3.src?_3.src:this.getURL(_3.name,(_3.state?_3.state:this.getState()),(_3.selected?_3.selected:this.selected))));if(this.vertical){_5.append("<TR><TD WIDTH=",_7," HEIGHT=",_2," BACKGROUND=\"",_4,"\">",isc.Canvas.spacerHTML(1,_2),"</TD></TR>")}else{_5.append("<TD WIDTH=",_2," HEIGHT=",_8," BACKGROUND=\"",_4,"\">",isc.Canvas.spacerHTML(_2,1),"</TD>")}}}
_5.append((this.vertical?"":"</TR>"),"</TABLE>")}else if(this.imageType==isc.Img.CENTER){_5.append("<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=",_7," HEIGHT=",_8,">",(!isc.Browser.isNav?"<TBODY>":""),(this.vertical?"":"<TR VALIGN=center>"));for(var i=0;i<_1;i++){_2=_6[i];if(_2>0){_3=_0[i];_4=(_3.src?_3.src:this.getURL(_3.name,(_3.state?_3.state:this.getState()),(_3.selected?_3.selected:this.selected)));if(this.vertical){_5.append("<TR VALIGN=center><TD WIDTH=",_7," HEIGHT=",_2," ALIGN=center>",this.imgHTML(_4,null,null,_3.name),"</TD></TR>")}else{_5.append("<TD WIDTH=",_2," HEIGHT=",_8," ALIGN=center>",this.imgHTML(_4,null,null,_3.name),"</TD>")}}}
_5.append((this.vertical?"":"</TR>"),"</TABLE>")}else{_5.append("<NOBR>");for(var i=0;i<_1;i++){_2=_6[i];if(_2>0){_3=_0[i];_4=(_3.src?_3.src:this.getURL(_3.name,(_3.state?_3.state:this.getState()),(_3.selected!=null?_3.selected:this.selected)));if(this.vertical){if(isc.Browser.isDOM){_5.append(this.imgHTML(_4,_7,_2,_3.name," STYLE='display:block'"))}else{_5.append(this.imgHTML(_4,_7,_2,_3.name));if(i<_1-1)_5.append("<BR>")}}else{_5.append(this.imgHTML(_4,_2,_8,_3.name))}}}
_5.append("</NOBR>")}
return _5.toString()},setState:function(_0,_1){if(_1==null){this.Super("setState",[_0]);this.items.clearProperty("state")}else{var _2=this.getPart(_1);if(_2){if(_2.state==_0)return;_2.state=_0}
this.stateChanged()}},stateChanged:function(_0){if(!this.isDrawn())return;if(this.imageType==isc.Img.TILE||this.$uw==null){this.markForRedraw("setState (tiled images)")}else{for(var i=0,_1=0,_2=this.items.length,_3;i<_2;i++){if(this.$uw[i]>0){_3=this.items[i];if(!_0||_3.name==_0)
this.setImage(isc.Browser.isNav?i-_1:_3.name,this.getURL(_3.name,(_3.state?_3.state:this.state),(_3.selected!=null?_3.selected:this.selected)))}else{_1++}}}},inWhichPart:function(){if(this.vertical){var _0=this.inWhichPosition(this.$uw,this.getOffsetY())}else{var _0=this.inWhichPosition(this.$uw,this.getOffsetX(),this.getTextDirection())}
var _1=this.items[_0];return(_1?_1.name:null)}});isc.ClassFactory.defineClass("Slider",isc.Canvas);isc.Slider.addClassProperties({VERTICAL_SRC_PREFIX:"v",HORIZONTAL_SRC_PREFIX:"h",DOWN:"down",UP:"",ON:"",OFF:"off",EVENTNAME:"sliderMove"});isc.Slider.addProperties({title:"Set Value",length:200,vertical:true,thumbThickWidth:23,thumbThinWidth:17,trackWidth:7,skinImgDir:"images/Slider/",thumbSrc:"thumb.gif",trackSrc:"track.gif",trackCapSize:6,trackImageType:(isc.Browser.isNav?isc.Img.TILE:isc.Img.STRETCH),showTitle:true,showRange:true,showValue:true,labelWidth:50,labelHeight:20,labelSpacing:5,titleStyle:"sliderTitle",rangeStyle:"sliderRange",valueStyle:"sliderValue",value:1,minValue:1,maxValue:100,roundValues:true,flipValues:false,overflow:isc.Canvas.IGNORE,canFocus:true,stepPercent:5});isc.Slider.addMethods({initWidget:function(){this.Super("initWidget",arguments);if(!(this.minValue<=this.maxValue)){this.logWarn("Slider specified with minValue:"+this.minValue+", greater than maxValue:"+this.maxValue+" - reversing max and min value.");var _0=this.minValue;this.minValue=this.maxValue;this.maxValue=_0}
var _1=this.$m4,_2=this.$m5;if(this.vertical){if(_1==null){var _3=Math.max(this.thumbThickWidth,this.trackWidth);if(this.showValue)_3+=this.labelWidth+this.labelSpacing;if(this.showRange)_3+=this.labelWidth+this.labelSpacing;this.logInfo("defaulting width to "+_3+"px");this.setWidth(_3)}
if(_2==null){var _4=this.length;if(this.showTitle)_4+=this.labelHeight+this.labelSpacing;this.logInfo("no specified height on vertical Slider - defaulting to:"+_4+" based on slider.length of "+this.length);this.setHeight(_4)}else{this.length=this.getHeight();if(this.showTitle)this.length-=(this.labelHeight+this.labelSpacing);this.logInfo("setting slider track length to:"+this.length+", based on specified height")}}else{if(_2==null){var _4=Math.max(this.thumbThickWidth,this.trackWidth);if(this.showValue)_4+=this.labelHeight+this.labelSpacing;if(this.showRange)_4+=this.labelHeight+this.labelSpacing;this.logInfo("defaulting height to "+_4+"px");this.setHeight(_4)}
if(_1==null){var _3=(this.length+(this.showTitle?this.labelWidth+this.labelSpacing:0));this.logInfo("no specified width on horizontal Slider - defaulting to:"+_3+" based on slider.length of "+this.length);this.setWidth(_3)}else{this.length=this.getWidth();if(this.showTitle)this.length-=(this.labelWidth+this.labelSpacing);this.logInfo("setting slider track length to:"+this.length+", based on specified width")}}
this.$uy=this.length-this.thumbThinWidth;if(this.numValues&&this.numValues>1){this.$uz=this.$uy/(this.numValues-1)}
this.$u0();if(this.showTitle)this._titleLabel=this.addChild(this.$u1());if(this.showRange){this.$u2=this.addChild(this.$u3("min"));this.$u4=this.addChild(this.$u3("max"))}
if(this.showValue){this._valueLabel=this._thumb.addPeer(this.$u5());this._valueLabel.sendToBack();this.$u6()}
this.setValue(this.value);this.setEnabled(this.enabled)},resizeBy:function(_0,_1){this.Super("resizeBy",arguments);if(!this._track)return;var _2=this.vertical;if((_2&&_1!=0)||(!_2&&_0!=0)){this.length+=_2?_1:_0;this.$uy=this.length-this.thumbThinWidth;if(_2)this._track.resizeBy(0,_1)
else this._track.resizeBy(_0,0);this.setValue(this.value);if(this.showRange){if(this.vertical){var _3=this.flipValues?this.$u4:this.$u2;_3.moveBy(0,_1)}else{var _3=this.flipValues?this.$u2:this.$u4;_3.moveBy(_0,0)}}}},$u3:function(_0){var _1,_2,_3,_4,_5=(this.vertical?_0=="max":_0=="min");if(this.flipValues)_5=!_5;if(this.vertical){_1=Math.max(this.thumbThickWidth,this.trackWidth)+this.labelSpacing+(this.showValue?this.labelWidth+this.labelSpacing:0);_3=isc.Canvas.LEFT;if(_5){_2=(this.showTitle?this.labelHeight+this.labelSpacing:0);_4=isc.Canvas.TOP}else{_2=(this.showTitle?this.labelHeight+this.labelSpacing:0)+(this.length-this.labelHeight);_4=isc.Canvas.BOTTOM}}else{_2=Math.max(this.thumbThickWidth,this.trackWidth)+this.labelSpacing+(this.showValue?this.labelHeight+this.labelSpacing:0);_4=isc.Canvas.TOP;if(_5){_1=(this.showTitle?this.labelWidth+this.labelSpacing:0);_3=isc.Canvas.LEFT}else{_1=(this.showTitle?this.labelWidth+this.labelSpacing:0)+this.length-this.labelWidth;_3=isc.Canvas.RIGHT}}
return isc.Label.newInstance({ID:this.getID()+"_"+_0+"Label",left:_1,top:_2,width:this.labelWidth,height:this.labelHeight,align:_3,valign:_4,className:this.rangeStyle,contents:(_0=="min"?(this.minValueLabel?this.minValueLabel:this.minValue):(this.maxValueLabel?this.maxValueLabel:this.maxValue))})},$u1:function(){var _0=(this.vertical?isc.Canvas.CENTER:isc.Canvas.RIGHT);return isc.Label.newInstance({ID:this.getID()+"_titleLabel",left:0,top:0,width:(this.vertical?this.getWidth():this.labelWidth),height:(this.vertical?this.labelHeight:this.getHeight()),align:_0,className:this.titleStyle,contents:this.title})},$u5:function(){var _0,_1,_2,_3,_4;if(this.vertical){_0=this._thumb.getLeft()-this.labelWidth-this.labelSpacing;_1=this._thumb.getTop()+parseInt(this._thumb.getHeight()/2-this.labelHeight/ 2);_3=isc.Canvas.RIGHT;_4=isc.Canvas.CENTER;_2=this.labelWidth}else{_0=this._thumb.getLeft()+parseInt(this._thumb.getWidth()/2-this.labelWidth/ 2);_1=this._thumb.getTop()-this.labelHeight-this.labelSpacing;_3=isc.Canvas.CENTER;_4=isc.Canvas.BOTTOM;_2=5}
var _5=isc.Label.newInstance({ID:this.getID()+"_valueLabel",left:_0,top:_1,width:_2,height:this.labelHeight,align:_3,className:this.valueStyle,contents:this.value,mouseUp:"return false;",moveWithMaster:false,observes:[{source:this,message:"valueChanged",action:"this.$u6();"}]});if(!this.vertical){isc.addMethods(_5,{draw:function(){var _6=this.isVisible();this.hide();this.Super("draw",arguments);this.parentElement.$u6();if(_6)this.show()}})};return _5},$u0:function(){var _0=this.$u7(),_1,_2,_3=(this.vertical?this.trackWidth:this.length),_4=(this.vertical?this.length:this.trackWidth),_5,_6,_7=(this.vertical?this.thumbThickWidth:this.thumbThinWidth),_8=(this.vertical?this.thumbThinWidth:this.thumbThickWidth);var _9=this.thumbThickWidth>this.trackWidth;if(_9){if(this.vertical){_5=_0[0];_1=_5+parseInt(this.thumbThickWidth/ 2-this.trackWidth/ 2);_2=_0[1];_6=_0[1]}else{_6=_0[1];_2=_6+parseInt(this.thumbThickWidth/ 2-this.trackWidth/ 2);_1=_0[0];_5=_0[0]}}else{if(this.vertical){_1=_0[0];_5=_1+parseInt(this.trackWidth/ 2-this.thumbThinWidth/ 2);_2=_0[1];_6=_0[1]}else{_2=_0[1];_6=_2+parseInt(this.trackWidth/ 2-this.thumbThinWidth/ 2);_1=_0[0];_5=_0[0]}}
this.logDebug("calculated coords for track:"+[_1,_2,_3,_4]);this.logDebug("calculated coords for thumb:"+[_5,_6,_7,_8]);this._track=this.addChild(this.$u8(_2,_1,_3,_4));this._thumb=this._track.addPeer(this.$u9(_6,_5,_7,_8))},$u7:function(){var _0=this.vertical?(this.showValue?this.labelWidth+this.labelSpacing:0):(this.showTitle?this.labelWidth+this.labelSpacing:0),_1=this.vertical?(this.showTitle?this.labelHeight+this.labelSpacing:0):(this.showValue?this.labelHeight+this.labelSpacing:0);return[_0,_1]},$u8:function(_0,_1,_2,_3){return isc.StretchImg.newInstance({ID:this.getID()+"_track",autoDraw:false,left:_1,top:_0,width:_2,height:_3,vertical:this.vertical,capSize:this.trackCapSize,src:"[SKIN]"+(this.vertical?isc.Slider.VERTICAL_SRC_PREFIX:isc.Slider.HORIZONTAL_SRC_PREFIX)+this.trackSrc,skinImgDir:this.skinImgDir,imageType:this.trackImageType,canFocus:true,tabIndex:-1,cacheImageSizes:false,overflow:isc.Canvas.IGNORE})},$u9:function(_0,_1,_2,_3){return isc.Img.newInstance({ID:this.getID()+"_thumb",autoDraw:false,left:_1,top:_0,width:_2,height:_3,src:"[SKIN]"+(this.vertical?isc.Slider.VERTICAL_SRC_PREFIX:isc.Slider.HORIZONTAL_SRC_PREFIX)+this.thumbSrc,skinImgDir:this.skinImgDir,canDrag:true,dragAppearance:isc.EventHandler.NONE,cursor:isc.Canvas.HAND,dragMove:"this.parentElement.$va(); return false",$le:false,dragStart:function(){var _4=isc.EventHandler;_4.dragOffsetX=-1*(this.getPageLeft()-_4.mouseDownEvent.x);_4.dragOffsetY=-1*(this.getPageTop()-_4.mouseDownEvent.y);return _4.STOP_BUBBLING},dragStop:"this.setState(isc.Slider.UP); return false",mouseDown:"this.setState(isc.Slider.DOWN)",mouseUp:"this.setState(isc.Slider.UP); return false",canFocus:true,tabIndex:-1,overflow:isc.Canvas.IGNORE})},$va:function(){var _0,_1;if(this.vertical){var _2=this._track.getTop(),_3=this.$uy+_2;_0=isc.EventHandler.getY()-isc.EventHandler.dragOffsetY-this.getPageTop();_0=Math.max(_2,Math.min(_3,_0));var _4=_0-_2;if(this.numValues){_4=Math.round(Math.round(_4/ this.$uz)*this.$uz);_0=_4+_2}
if(_0==this._thumb.getTop())return;this.logDebug("drag-moving thumb to:"+_0)
this._thumb.setTop(_0);_1=(this.flipValues?_4/ this.$uy:1-_4/ this.$uy)}else{var _5=this._track.getLeft(),_3=this.$uy+_5;_0=isc.EventHandler.getX()-isc.EventHandler.dragOffsetX-this.getPageLeft();_0=Math.max(_5,Math.min(_3,_0));var _4=_0-_5;if(this.numValues){_4=Math.round(Math.round(_4/ this.$uz)*this.$uz);_0=_4+_5}
if(_0==this._thumb.getLeft())return;this.logDebug("drag-moving thumb to:"+_0)
this._thumb.setLeft(_0);_1=(this.flipValues?1-_4/ this.$uy:_4/ this.$uy)}
if(this.maxValue==this.minValue){this.value=this.minValue}else{if(this.roundValues)
this.value=Math.round(_1*(this.maxValue-this.minValue)+this.minValue);else
this.value=_1*(this.maxValue-this.minValue)+this.minValue}
this.logDebug("slider value from drag-move:"+this.value);this.valueChanged();if(this.sliderTarget)isc.EventHandler.handleEvent(this.sliderTarget,isc.Slider.EVENTNAME,this)},$u6:function(){var _0=this._valueLabel;if(_0==null)return;_0.setContents(this.getValue());var _1=this._thumb;if(this.vertical){_0.setTop(parseInt((_1.getTop()+_1.getHeight()/2)-_0.getHeight()/2))}else{if(_0.isDrawn())_0.redraw();var _2=_0.getVisibleWidth(),_3=parseInt((_1.getLeft()+_1.getWidth()/2)-_2/ 2);if(_3+_2>this.getWidth())_3=this.getWidth()-_2;if(_3<0)_3=0;_0.setLeft(_3)}},mouseUp:function(){isc.EventHandler.dragOffsetX=isc.EventHandler.dragOffsetY=Math.floor(this.thumbThinWidth/ 2);this.$va()},setValue:function(_0){var _1,_2;if(!isc.isA.Number(_0))return;_0=Math.max(this.minValue,(Math.min(_0,this.maxValue)));this.value=(this.roundValues?Math.round(_0):_0);if(this.minValue==this.maxValue)_1=1;else _1=(this.value-this.minValue)/(this.maxValue-this.minValue);_2=_1*this.$uy;if(this.vertical)
this._thumb.setTop(this._track.getTop()+parseInt(this.flipValues?_2:this.$uy-_2));else
this._thumb.setLeft(this._track.getLeft()+parseInt(this.flipValues?this.$uy-_2:_2));this.valueChanged();if(this.sliderTarget)isc.EventHandler.handleEvent(this.sliderTarget,isc.Slider.EVENTNAME,this)},getValue:function(){return this.value},valueChanged:function(){},setEnabled:function(_0){this.Super("setEnabled",arguments);if(_0==true){this._track.setState(isc.Slider.ON);this._thumb.setState(isc.Slider.UP);this._thumb.setCursor(isc.Canvas.HAND)}else{this._track.setState(isc.Slider.OFF);this._thumb.setState(isc.Slider.OFF);this._thumb.setCursor(isc.Canvas.DEFAULT)}},handleKeyPress:function(_0,_1){var _2=_0.keyName;if(_2=="Home"){this.setValue(this.minValue);return false}
if(_2=="End"){this.setValue(this.maxValue);return false}
var _3=(this.maxValue-this.minValue)*this.stepPercent/ 100;if(this.vertical){if((this.flipValues&&_2=="Arrow_Up")||(!this.flipValues&&_2=="Arrow_Down"))
{this.setValue(this.getValue()-_3);return false}else if((this.flipValues&&_2=="Arrow_Down")||(!this.flipValues&&_2=="Arrow_Up"))
{this.setValue(this.getValue()+_3);return false}}else{if((this.flipValues&&_2=="Arrow_Left")||(!this.flipValues&&_2=="Arrow_Right"))
{this.setValue(this.getValue()+_3)
return false}else if((this.flipValues&&_2=="Arrow_Right")||(!this.flipValues&&_2=="Arrow_Left"))
{this.setValue(this.getValue()-_3)
return false}}
if(this.keyPress){this.convertToMethod("keyPress");return this.keyPress(_0,_1)}},setCanFocus:function(_0){this.Super("canFocus",arguments);if(this._thumb!=null)this._thumb.setCanFocus(_0);if(this._track!=null)this._track.setCanFocus(_0)}});isc.ClassFactory.defineClass("Label","Canvas");isc.Label.addProperties({align:isc.Canvas.LEFT,valign:isc.Canvas.CENTER,wrap:true});isc.Label.addMethods({getInnerHTML:function(){return isc.StringBuffer.concat("<TABLE WIDTH=",this.getInnerWidth()," HEIGHT=",this.getInnerHeight(),((isc.Browser.isNav&&this.padding!=null)?" CELLPADDING="+this.padding:"")," CELLSPACING=0 BORDER=0","><TR><TD ID='",this.getID(),"_labelCell'"," ALIGN=",this.align," VALIGN=",this.valign,(this.$kv()&&this._useNativeTabIndex?" TABINDEX=-1 ONFOCUS='"+this.getID()+".$ui()'":"")," CLASS=",this.getTextClassName(),">",(this.innerTextClassName!=null?"<SPAN CLASS="+this.innerTextClassName+">":""),(this.wrap==false?"<NOBR>":""),this.getContents(),(this.wrap==false?"</NOBR>":""),(this.innerTextClassName!=null?"</SPAN>":""),"</TD></TR></TABLE>")},getContents:function(){return this.contents},setClassName:function(_0){this.Super("setClassName",arguments);if(this.textClassName==null)this.$vb(_0)},getTextClassName:function(){if(this.textClassName!=null){return this.textClassName}else{return this.className}},setTextClassName:function(_0){this.textClassName=_0;this.$vb(_0)},$vb:(isc.Browser.isNav?function(_0){}:function(_0){if(!this.getHandle())return;var _1=isc.Canvas.getElementById(this.getID()+"_labelCell");if(_1){_1.className=_0}else{this.markForRedraw()}}),$ui:function(){isc.EH.$kp("cFCS");this.focus();isc.EH.$ls()}});isc.ClassFactory.defineClass("Progressbar","StretchImg");isc.Progressbar.addProperties({percentDone:0,length:100,breadth:20,vertical:false,skinImgDir:"images/Progressbar/",src:"[SKIN]progressbar.gif",cacheImageSizes:false,backgroundColor:"CCCCCC",verticalItems:[{name:"v_empty_end",size:3},{name:"v_empty_stretch",size:0},{name:"v_empty_start",size:3},{name:"v_end",size:3},{name:"v_stretch",size:0},{name:"v_start",size:3}],horizontalItems:[{name:"h_start",size:3},{name:"h_stretch",size:0},{name:"h_end",size:3},{name:"h_empty_start",size:3},{name:"h_empty_stretch",size:0},{name:"h_empty_end",size:3}]});isc.Progressbar.addMethods({initWidget:function(){if(this.vertical){this.setWidth(this.breadth);this.setHeight(this.length);this.items=this.verticalItems}else{this.setWidth(this.length);this.setHeight(this.breadth);this.items=this.horizontalItems}
this.Super(this.$f)},resizeImages:function(){var _0=this.getLength(),_1=this.items,_2=this.$uw=[],_3=this.percentDone;if(this.vertical){_2[0]=(_3<100?_1[0].size:0);_2[2]=(_3<100?_1[2].size:0);_2[3]=(_3>0?_1[3].size:0);_2[5]=(_3>0?_1[5].size:0)}else{_2[0]=(_3>0?_1[0].size:0);_2[2]=(_3>0?_1[2].size:0);_2[3]=(_3<100?_1[3].size:0);_2[5]=(_3<100?_1[5].size:0)}
_0-=_2[0]+_2[2]+_2[3]+_2[5];if(this.vertical){_2[4]=Math.ceil(_0*_3/ 100);_2[1]=Math.floor(_0*(100-_3)/100)}else{_2[1]=Math.ceil(_0*_3/ 100);_2[4]=Math.floor(_0*(100-_3)/100)}},setPercentDone:function(_0){if(this.percentDone==_0)return;_0=Math.min(100,(Math.max(0,_0)));this.percentDone=_0;if(this.isDrawn())this.markForRedraw("percentDone updated");this.percentChanged()},percentChanged:function(){},getLength:function(){return this.vertical?this.getHeight():this.getWidth()},getBreadth:function(){return this.vertical?this.getWidth():this.getHeight()},setLength:function(_0){this.length=_0;this.vertical?this.setHeight(_0):this.setWidth(_0)},setBreadth:function(_0){this.breadth=_0;this.vertical?this.setWidth(_0):this.setHeight(_0)}});isc.ClassFactory.defineClass("Rangebar","Progressbar");isc.Rangebar.addProperties({value:0,minValue:0,maxValue:99,title:"",vertical:true,showTitle:true,showRange:true,showValue:true,allLabelDefaults:{width:50,height:20,spacing:5},titleLabelDefaults:{width:100,className:"rangebarTitle"},rangeLabelDefaults:{className:"rangebarRange"},valueLabelDefaults:{className:"rangebarValue"},forceOverrides:{$le:false,autoDraw:false},overflow:isc.Canvas.IGNORE,flipValues:false});isc.Rangebar.addMethods({initWidget:function(){this.Super(this.$f);this.titleLabelDefaults=isc.addProperties({},this.allLabelDefaults,this.titleLabelDefaults);this.valueLabelDefaults=isc.addProperties({},this.allLabelDefaults,this.valueLabelDefaults);this.rangeLabelDefaults=isc.addProperties({},this.allLabelDefaults,this.rangeLabelDefaults);if(this.showRange){this.$u2=this.addPeer(this.$u3("min"));this.$u4=this.addPeer(this.$u3("max"))}
if(this.showValue)this._valueLabel=this.addPeer(this.$u5());if(this.showTitle)this._titleLabel=this.addPeer(this.$u1());this.setValue(this.value)},resized:function(_0,_1){this.$vc()},$vc:function(){if(this.showRange&&this.$u2&&this.$u4){var _0=this.$vd("min");var _1=this.$vd("max");this.$u2.moveTo(_0.left,_0.top);this.$u4.moveTo(_1.left,_1.top)}
if(this.showValue&&this._valueLabel){var _2=this.$ve();this._valueLabel.moveTo(_2.left,_2.top)}
if(this.showTitle&&this._titleLabel){var _2=this.$vf();this._titleLabel.moveTo(_2.left,_2.top)}},$u3:function(_0){var _1=this.$vd(_0);return isc.Label.newInstance({ID:this.getID()+"_"+_0+"Label",contents:(_0=="min"?(this.minValueLabel?this.minValueLabel:this.minValue):(this.maxValueLabel?this.maxValueLabel:this.maxValue))},this.rangeLabelDefaults,_1,this.forceOverrides)},$vd:function(_0){var _1={},_2=this.rangeLabelDefaults,_3=((_0=="min"&&!this.flipValues)||(_0="max"&&this.flipValues));if(this.vertical){_1.left=this.left+this.width+_2.spacing,_1.align=isc.Canvas.LEFT;if(_3){_1.top=this.getTop()+this.getHeight()-_2.height;_1.valign=isc.Canvas.BOTTOM}else{_1.top=this.getTop();_1.valign=isc.Canvas.TOP}}else{_1.top=this.getTop()+this.getHeight()+_2.spacing,_1.valign=isc.Canvas.TOP;if(_3){_1.left=this.getLeft();_1.align=isc.Canvas.LEFT}else{_1.left=this.getLeft()+this.getWidth()-_2.width;_1.align=isc.Canvas.RIGHT}}
return _1},$u1:function(){var _0=this.$vf();return isc.Label.newInstance({ID:this.getID()+"_titleLabel",contents:this.title},this.titleLabelDefaults,_0,this.forceOverrides)},$vf:function(){var _0={};var _1=this.titleLabelDefaults;if(this.vertical){_0.left=this.left+this.width/ 2-_1.width/ 2;_0.top=this.top-_1.height-_1.spacing;_0.align=isc.Canvas.CENTER}else{_0.left=this.left-_1.width-_1.spacing;_0.top=this.top+this.getHeight()/2-_1.height/ 2;_0.align=isc.Canvas.RIGHT}
return _0},$u5:function(){var _0=this.$ve();return isc.Label.newInstance({ID:this.getID()+"_valueLabel",contents:this.value,mouseUp:"return false;",observes:[{source:this,message:"valueChanged",action:"observer.setContents(this.getValue())"}]},this.valueLabelDefaults,_0,this.forceOverrides)},$ve:function(){var _0={};var _1=this.valueLabelDefaults;if(this.vertical){_0.left=this.left-_1.width-_1.spacing;_0.top=this.top+this.getHeight()/2-_1.height/ 2;_0.align=isc.Canvas.RIGHT;_0.valign=isc.Canvas.CENTER}else{_0.left=this.left+this.width/ 2-_1.width/ 2;_0.top=this.top-_1.height-_1.spacing;_0.align=isc.Canvas.CENTER;_0.valign=isc.Canvas.BOTTOM}
return _0},getValue:function(){return this.value},setValue:function(_0){if(this.value==_0)return;if(_0>this.maxValue)_0=this.maxValue;else if(_0<this.minValue)_0=this.minValue;this.value=_0;this.percentDone=100*(this.value-this.minValue)/(this.maxValue-this.minValue);this.markForRedraw();this.valueChanged()},valueChanged:function(){}});isc.ClassFactory.defineClass("Toolbar","Layout");isc.Toolbar.addProperties({vertical:false,overflow:isc.Canvas.HIDDEN,height:20,buttonConstructor:"Button",canReorderItems:false,canResizeItems:false,canRemoveItems:false,reorderOnDrop:true,tabWithinToolbar:false,buttonDefaults:{showDown:true,showRollOver:(isc.Browser.isNav?false:true),click:function(){this.Super("click",arguments);this.parentElement.itemClick(this,this.parentElement.getButtonNumber(this))},setSelected:function(){var _0=this.isSelected();this.Super("setSelected",arguments);if(_0!=this.isSelected()){if(this.isSelected())this.parentElement.buttonSelected(this);else this.parentElement.buttonDeselected(this)}},dragAppearance:isc.EventHandler.NONE,setTabIndex:function(_0){this.Super("setTabIndex",arguments);this.$vg=null},setAccessKey:function(_0,_1){if(!_1)this.$vh=null;this.Super("setAccessKey",[_0])},focusChanged:function(_0){if(this.hasFocus)this.parentElement.$vi(this)}}});isc.Toolbar.addMethods({draw:function(_0){if(!this.readyToDraw())return this;var _1=isc.timeStamp();this.setButtons();var _2=(isc.timeStamp()-_1);var _3=isc.timeStamp();this.Super("draw",arguments);var _4=isc.timeStamp()-_3},keyPress:function(){var _0=this.ns.EH.lastEvent.keyName;if(!this.tabWithinToolbar){if((this.vertical&&_0=="Arrow_Up")||(!this.vertical&&_0=="Arrow_Left")){this.$vj(false);return false}else if((this.vertical&&_0=="Arrow_Down")||(!this.vertical&&_0=="Arrow_Right")){this.$vj();return false}}
return this.Super("keyPress",arguments)},$vj:function(_0){var _1=this.getFocusButtonIndex();if(_1==null)_1=this.buttons.length;_1+=_0!=false?1:-1;if(_1>=0&&_1<this.buttons.length){this.getButtons()[_1].focus()}},getFocusButtonIndex:function(){var _0=this.getButtons(),_1;for(var i=0;i<_0.length;i++){if(_0[i].hasFocus){_1=i;break}}
return _1},$vk:function(_0,_1){if(!_0.$vg&&(_0.$ro!=null||_0.$rp!=null))
{_0.$og()}
_0.$vg=true;if(_0.tabIndex!=_1)_0.$bp(_1,true)},updateMemberTabIndex:function(){},$vl:function(_0,_1){_0.$vh=true;_0.setAccessKey(_1,true)},setupButtonFocusProperties:function(){if((!this.$vm||!isc.isA.Canvas(this.$vm)||!this.$vm.isVisible())&&this.buttons.length>0)
{this.$vi(this.members[0])}
var _0;if(this.tabWithinToolbar){_0=this.getTabIndex()}else{_0=-1}
var _1=this.getButtons();for(var i=0;i<_1.length;i++){if(_1[i]!=this.$vm&&(_1[i].tabIndex==null||(_1[i].$o7&&!_1[i].$vg)))
{this.$vk(_1[i],_0)}}},$vi:function(_0){if(this.$vm==_0)return;if(_0.accessKey!=this.accessKey&&(_0.accessKey==null||_0.$vh))
{this.$vl(_0,this.accessKey)}
if(_0.tabIndex!=null&&!_0.$o7)return;this.$vk(_0,this.getTabIndex());if(this.$vm!=null&&(this.$vm.tabIndex==null||this.$vm.$o7)){if(!this.tabWithinToolbar)this.$vk(this.$vm,-1);if(this.$vm.accessKey!=null&&this.$vm.$vh)
{this.$vl(this.$vm,null)}}
this.$vm=_0},$bp:function(){this.Super("$bp",arguments);if(this.tabWithinToolbar){var _0=this.getButtons();for(var i=0;i<_0.length;i++){if(_0[i].tabIndex==null||_0[i].$o7)
this.$vk(_0[i],this.getTabIndex())}}else{var _1=this.$vm;if(_1!=null){this.$vm=null;this.$vi(_1)}}},setAccessKey:function(_0){this.Super("setAccessKey",arguments);var _1=this.$vm;if(_1!=null){this.$vm=null;this.$vi(_1)}},getLength:function(){if(this.innerWidth!=null)return this.innerWidth;return this.Super("getLength",arguments)},setButtons:function(_0){if(_0)this.buttons=_0;if(this.members==null)this.members=[];var _1=this.members.duplicate();for(var i=0;i<_1.length;i++){_1[i].destroy()}
for(var i=0;i<this.buttons.length;i++){var _2=this.makeButton(this.buttons[i]);this.addMember(_2);var _3=_2.getActionType?_2.getActionType():null;if(_3==isc.StatefulCanvas.RADIO){if(_2.selected){this.lastSelectedButton=_2}}}
if(this.canResizeItems)this.setResizeRules();this.setupButtonFocusProperties()},makeButton:function(_0){_0.width=_0.width||null;_0.height=_0.height||null;_0.canDrag=this.canReorderItems||this.canDragSelectItems||this.canRemoveItems;_0.canDragResize=this.canResizeItems;_0.canAcceptDrop=this.canAcceptDrop;_0.canDrop=this.canRemoveItems;_0.showDropBorder=false;return this.$dv(_0,null)},$dv:function(_0,_1){var _2=(_0.buttonConstructor?_0.buttonConstructor:this.buttonConstructor);_2=this.ns.ClassFactory.getClass(_2);var _3=_2.newInstance({autoDraw:false},this.buttonDefaults,this.button,_0,_1);var _4;if((_3.getActionType()==isc.StatefulCanvas.RADIO&&_3.radioGroup===_4)||_3.defaultRadioGroup!=null){var _5=_3.defaultRadioGroup!=null?_3.defaultRadioGroup:this.getID();_3.addToRadioGroup(_5)}
return _3},addButtons:function(_0,_1){if(_0==null)return;if(!isc.isAn.Array(_0))_0=[_0];var _2=[];for(var i=0;i<_0.length;i++){var _3=_0[i],_4=this.makeButton(_3);if(_4==null){this.logWarn("addButtons passed bad button init block:"+isc.Log.echo(_3)+", skipping");_0.removeItem(i);i-=1;continue}
_2[i]=_4}
this.addMembers(_2,_1)
this.buttons.addListAt(_0,_1);if(this.canResizeItems)this.setResizeRules();_2.map("show")},removeButtons:function(_0){if(_0==null)return;if(!isc.isAn.Array(_0))_0=[_0];var _1=[];for(var i=0;i<_0.length;i++){_0[i]=this.buttons[this.getButtonNumber(_0[i])];if(_0[i]==null){this.logWarn("removeButtons(): unable to find button for item number "+i+" in the array passed in.  Skipping this item.");_0.removeItem(i);i-=1;continue}
_1[i]=this.getButton(this.buttons.indexOf(_0[i]))}
var _2=this.buttons;_2.removeList(_0);this.removeMembers(_1)},getButton:function(_0){_0=this.getButtonNumber(_0);return this.getMember(_0)},getButtonNumber:function(_0){if(isc.isAn.Object(_0)&&!isc.isA.Canvas(_0))return this.buttons.indexOf(_0);return this.getMemberNumber(_0)},getButtons:function(){return this.members},setResizeRules:function(){if(!this.members)return;var _0=this.isRTL();var _1,_2,_3;if(this.vertical){_1={"T":isc.Canvas.ROW_RESIZE,"B":isc.Canvas.ROW_RESIZE};_2=["T","B"];_3=["B"]}else{_1={"L":isc.Canvas.COL_RESIZE,"R":isc.Canvas.COL_RESIZE};_2=["L","R"];if(!_0){_3=["R"]}else{_3=["L"]}}
var _4=false;for(var i=0;i<this.members.length;i++){var _5=this.members[i];if(!_5.canDragResize){_5.resizeFrom=_5.edgeCursorMap=null;_4=true}else{if(_4||i==0)
{_5.resizeFrom=_3}else{_5.resizeFrom=_2}
_5.edgeCursorMap=_1;_4=false}}},getSelectedButton:function(){return this.lastSelectedButton},selectButton:function(_0){if(!this.isDrawn())return;if(!this.members)return;var _1=this.getButton(_0);if(_1)_1.select()},deselectButton:function(_0){var _1=this.getButton(_0);if(_1)_1.deselect()},buttonSelected:function(_0){if(_0.getActionType()==isc.Button.RADIO){this.lastSelectedButton=_0}},buttonDeselected:function(_0){},itemClick:function(_0,_1){},getMouseOverButtonIndex:function(){var _0=this.vertical?this.getOffsetY():this.getOffsetX();return this.inWhichPosition(this.memberSizes,_0,this.getTextDirection())},prepareForDragging:function(){var _0=this.ns.EH;if(_0.dragOperation=="dragResize"){if((this.vertical&&["T","B"].contains(_0.resizeEdge))||(!this.vertical&&["L","R"].contains(_0.resizeEdge)))
{_0.dragOperation="dragResizeMember"}}else if(_0.dragOperation=="drag")_0.dragOperation="dragReorder"},getDropPosition:function(){var _0=this.getMouseOverButtonIndex();var _1=this.ns.EH,_2=(this.reorderStyle=="explorer"||(_1.dropTarget&&_1.dropTarget.parentElement==this));if(_2&&_0>=0){var _3=this.memberSizes[_0],_4=(this.vertical?this.getOffsetY():this.getOffsetX());_4-=this.memberSizes.slice(0,_0).sum();var _5=_0;if(_4>_3/ 2)_0++}
var _6=this.members.length,_7=(_2?_6:_6-1);if(_0==-2&&this.containsEvent())return _7;var _8=this.dragStartPosition||0;if(_0<0||_0>_7)_0=_8;else if(_1.dragTarget&&_1.dragTarget.parentElement==this&&(this.members[_0]&&this.members[_0].canReorder==false))
{_0=_8}
return _0},dragReorderStart:function(){var _0=this.ns.EH,_1=_0.dragTarget;if(_1.canReorder==false)return false;_1.setState(isc.StatefulCanvas.STATE_DOWN);this.dragStartPosition=this.getButtonNumber(_1);return _0.STOP_BUBBLING},dragReorderMove:function(){var _0=this.ns.EH,_1=_0.dragTarget,_2=this.dragStartPosition,_3=this.getDropPosition();this.dragCurrentPosition=_3;var _4=this.members.duplicate();_4.slide(_2,_3);this.stackMembers(_4,null,false);return _0.STOP_BUBBLING},dragReorderStop:function(){var _0=this.ns.EH,_1=_0.dragTarget,_2=this.dragStartPosition,_3=this.dragCurrentPosition;_1.setState(isc.StatefulCanvas.STATE_UP);if(_3==_2)return false;if(this.reorderOnDrop)this.reorderItem(_3,_2);this.itemDragReordered(_2,_3);return _0.STOP_BUBBLING},dragStop:function(){var _0=this.ns.EH,_1=_0.dragTarget,_2=this.dragStartPosition;_1.setState(isc.StatefulCanvas.STATE_UP);this.hideDropLine();return _0.STOP_BUBBLING},reorderItem:function(_0,_1){this.reorderItems(_0,_0+1,_1)},reorderItems:function(_0,_1,_2){this.buttons.slideRange(_0,_1,_2);this.reorderMembers(_0,_1,_2);this.setResizeRules()},itemDragReordered:function(itemNum,newPosition){},dragResizeMemberStart:function(){var _0=this.ns.EH,_1=_0.dragTarget,_2=this.getButtonNumber(_1),_3=this.isRTL();if((!_3&&_0.resizeEdge=="L")||(_3&&_0.resizeEdge=="R")){_2--;_0.resizeEdge=(_3?"L":"R")}else if(_0.resizeEdge=="T"){_2--;_0.resizeEdge="B"}
if(_2<0||_2>=this.members.length||_1==null)return false;_0.dragTarget=_1=this.members[_2];_1.$vn=_1.canDrop;_1.canDrop=false;this.$vo=_2;_1.setState(isc.StatefulCanvas.STATE_DOWN);return _0.STOP_BUBBLING},dragResizeMemberMove:function(){var _0=this.ns.EH,_1=_0.dragTarget;_1.resizeToEvent();_1.redrawIfDirty("dragResize");return _0.STOP_BUBBLING},dragResizeMemberStop:function(){var _0=this.ns.EH,_1=_0.dragTarget;_1.canDrop=_1.$vn;_1.setState(isc.StatefulCanvas.STATE_UP);_1.resizeToEvent();var _2=(this.vertical?_1.getHeight():_1.getWidth());this.resizeItem(this.$vo,_2);this.itemDragResized(this.$vo,_2);return _0.STOP_BUBBLING},resizeItem:function(_0,_1){var _2=this.members[_0];if(this.vertical)_2.setHeight(_1);else _2.setWidth(_1)},itemDragResized:function(itemNum,newSize){}});isc.Toolbar.registerStringMethods({itemClick:"item,itemNum"});isc.ClassFactory.defineClass("ImgButton","Img");isc.ImgButton.addProperties({src:"[SKIN]Button/button.gif",align:isc.Canvas.CENTER,valign:isc.Canvas.CENTER,actionType:isc.StatefulCanvas.BUTTON,showRollOver:true,showDown:true,canFocus:true,overflow:isc.Canvas.HIDDEN,baseStyle:"imgButton"});isc.ImgButton.addMethods({initWidget:function(){this.Super(this.$f);if(this.title!=null)this.makeLabel()},setTitle:function(_0){this.title=_0;if(!isc.isA.Canvas(this.label))this.makeLabel();this.label.setContents(_0);this.label.setClassName(this.getStateName())},stateChanged:function(){this.Super("stateChanged",arguments);if(this.label!=null)this.label.setClassName(this.getStateName())},makeLabel:function(){if(!this.title){this.label=null;return}
var _0=this.Super("getInnerWidth",[]),_1=this.Super("getInnerHeight",[]);this.label=isc.ClassFactory.newInstance(this.labelConstructor,this.labelDefaults,{ID:this.ID+"_label",align:this.align,valign:this.valign,className:this.getStateName(),contents:this.title,overflow:this.overflow,width:Math.max(1,_0-(this.labelHPad!=null?2*this.labelHPad:0)),height:Math.max(1,_1-(this.labelVPad!=null?2*this.labelVPad:0)),left:this.left+(this.labelHPad!=null?this.labelHPad:0),top:this.top+(this.labelVPad!=null?this.labelVPad:0),eventProxy:this,zIndex:this.getZIndex(true)+1,$kv:new Function("return "+this.getID()+".$kv();"),tabIndex:-1,focusChanged:function(_2){if(this.hasFocus)this.eventProxy.focus()}},this.label);this.addPeer(this.label,null,null,true)},getInnerWidth:function(){if(isc.isA.Canvas(this.label)){var _0=this.label.getVisibleWidth();if(this.labelHPad!=null)_0+=2*this.labelHPad;return _0}
return this.Super("getInnerWidth",arguments)},getInnerHeight:function(){if(isc.isA.Canvas(this.label)){var _0=this.label.getVisibleHeight();if(this.labelVPad!=null)_0+=2*this.labelVPad;return _0}
return this.Super("getInnerHeight",arguments)},setZIndex:function(_0){this.Super("setZIndex",arguments);if(this.label!=null)this.label.moveAbove(this)},$qy:function(){this.Super("$qy",arguments);if(this.label!=null)this.label.$qy()}});isc.ClassFactory.defineClass("StretchImgButton","StretchImg");isc.StretchImgButton.addProperties({vertical:false,capSize:12,src:"button.gif",align:isc.Canvas.CENTER,valign:isc.Canvas.CENTER,actionType:isc.Button.BUTTON,showRollOver:true,showDown:true,hiliteAccessKey:true,canFocus:true,redrawOnStateChange:true,baseStyle:"stretchImgButton"});isc.StretchImgButton.addMethods({initWidget:function(){this.Super(this.$f);this.makeLabel()},setTitle:function(_0){this.title=_0;if(this.title){if(!this.label)this.makeLabel();this.label.setContents(_0);this.label.setClassName(this.getStateName())}else{if(this.label){this.label.destroy();delete this.label}}},stateChanged:function(){if(!isc.Browser.isNav&&this.label)this.label.setClassName(this.getStateName());this.Super("stateChanged",arguments)},setSelected:function(_0){this.Super("setSelected",arguments);if(this.label)this.label.setClassName(this.getStateName())},makeLabel:function(){if(!this.title){this.label=null;return}
this.label=isc.ClassFactory.newInstance(this.labelConstructor,this.labelDefaults,{ID:this.ID+"_label",align:this.align,valign:this.valign,className:this.getStateName(),getContents:new Function("return "+this.getID()+".getTitleHTML();"),overflow:this.overflow,width:this.getLabelWidth(),height:this.getLabelHeight(),left:this.getLabelLeft(),top:this.getLabelTop(),wrap:this.vertical,eventProxy:this,zIndex:this.getZIndex(true)+1,$kv:new Function("return "+this.getID()+".$kv();"),tabIndex:-1,focusChanged:function(_0){if(this.hasFocus)this.eventProxy.focus()},adjustOverflow:function(){this.Super("adjustOverflow",arguments);this.masterElement.$vp()}},this.label);this.addPeer(this.label,null,null,true)},getLabelLeft:function(){var _0=(this.isDrawn()?this.getOffsetLeft():this.getLeft());if(this.labelHPad!=null)_0+=this.labelHPad;else if(!this.vertical)_0+=this.capSize
return _0},getLabelTop:function(){var _0=(this.isDrawn()?this.getOffsetTop():this.getTop());if(this.labelVPad!=null)_0+=this.labelVPad;else if(this.vertical)_0+=this.capSize
return _0},getLabelWidth:function(){var _0=this.getInnerWidth();if(this.labelHPad!=null)_0-=2*this.labelHPad
else if(!this.vertical)_0-=2*this.capSize;return Math.max(_0,1)},getLabelHeight:function(){var _0=this.getInnerHeight();if(this.labelVPad!=null)_0-=2*this.labelVPad;else if(this.vertical)_0-=2*this.capSize;return Math.max(_0,1)},getImgBreadth:function(){if(this.overflow==isc.Canvas.VISIBLE&&this.label!=null&&isc.isA.Canvas(this.label))
{var _0;if(this.vertical){_0=this.label.getVisibleWidth();if(this.labelHPad!=null)_0+=2*this.labelHPad}else{_0=this.label.getVisibleHeight();if(this.labelVPad!=null)_0+=2*this.labelVPad}
return _0}
return this.Super("getImgBreadth",arguments)},resizeImages:function(){var _0=(this.vertical?"height":"width"),_1=(this.vertical?this.getHeight():this.getWidth());if(this.label!=null&&isc.isA.Canvas(this.label)){var _2=(this.vertical?this.label.getVisibleHeight():this.label.getVisibleWidth()),_3=(this.vertical?this.labelVPad:this.labelHPad);if(_3==null)_3=this.capSize;_1=Math.max(_2+2*_3,_1)}
this.$uw=isc.Canvas.applyStretchResizePolicy(this.items.getProperty(_0),_1)},$vp:function(){if(this.overflow==isc.Canvas.VISIBLE){var _0=2*(this.vertical?this.capSize:(this.labelVPad?this.labelVPad:0)),_1=2*(this.vertical?(this.labelHPad?this.labelHPad:0):this.capSize);if(this.getVisibleWidth()!=(this.label.getVisibleWidth()+_1)||this.getVisibleHeight()!=(this.label.getVisibleHeight()+_0))
{this.resizeImages();this.markForRedraw()}}},setZIndex:function(_0){this.Super("setZIndex",arguments);if(isc.isA.Canvas(this.label))this.label.moveAbove(this)},$qy:function(){this.Super("$qy",arguments);if(this.label!=null)this.label.$qy()},getTitleHTML:function(){if(!this.hiliteAccessKey||!isc.isA.String(this.title)||this.accessKey==null)
return this.title;return isc.Canvas.hiliteCharacter(this.title,this.accessKey)},draw:function(){var _0=this.Super("draw",arguments);if(this.position!=isc.Canvas.ABSOLUTE&&isc.isA.Canvas(this.label))
this.label.moveTo(this.getLabelLeft(),this.getLabelTop());return _0}});isc.ClassFactory.defineClass("ImgTab","StretchImgButton");isc.ImgTab.addProperties({capSize:2,skinImgDir:"images/Tab/",src:"[SKIN]tab.gif",showRollOver:false,actionType:isc.Button.RADIO});isc.ImgTab.addProperties({initWidget:function(){this.addProperties({skinImgDir:"images/Tab/"+this.tabBarPosition+"/",vertical:(this.tabBarPosition==isc.Canvas.LEFT||this.tabBarPosition==isc.Canvas.RIGHT)});return this.Super(this.$f)}});isc.ClassFactory.defineClass("TabBar","Toolbar");isc.TabBar.addProperties({breadth:21,buttonConstructor:isc.ImgTab,skinImgDir:"images/Tab/",baseLineThickness:1,borderThickness:1,baseCapSize:2,tabBarPosition:isc.Canvas.TOP,tabBarAlign:isc.Canvas.LEFT,selectedTab:0,defaultTabSize:80});isc.TabBar.addMethods({initWidget:function(){for(var i=0;i<this.tabs.length;i++){var _0=this.tabs[i].pane;if(isc.isA.String(_0)&&isc.isA.Canvas(window[_0])){this.tabs[i].pane=window[_0]}}
this.buttons=this.tabs;this.skinImgDir="images/Tab/"+this.tabBarPosition+"/",this.vertical=(this.orientation==isc.Layout.VERTICAL);if(this.tabDefaults==null)this.tabDefaults={};this.tabDefaults.actionType=isc.StatefulCanvas.RADIO;if(this.vertical){this.tabDefaults.defaultHeight=this.defaultTabSize}else{this.tabDefaults.defaultWidth=this.defaultTabSize}
this.tabDefaults.overflow=isc.Canvas.VISIBLE;this.tabDefaults.tabBarPosition=this.tabBarPosition;this.buttonDefaults=isc.addProperties({},this.buttonDefaults,this.tabDefaults);this.Super(this.$f);this.$vm=this.getButton(this.selectedTab);if(this._baseLine==null)this.makeBaseLine()},addTabs:function(_0,_1){if(!_1&&this.tabBarPosition==isc.Canvas.LEFT)_1=0;this.addButtons(_0,_1);if(this._baseLine!=null){this._baseLine.bringToFront();var _2=this.getButton(this.getSelectedTab());if(_2)_2.bringToFront()}},removeTabs:function(_0){if(_0==null)return;if(!isc.isAn.Array(_0))_0=[_0];var _1=this.map("getButton",_0);this.removeButtons(_0);for(var i=0;i<_1.length;i++){if(_1[i]!=null)_1[i].destroy()}},draw:function(){arguments.$fa=this;this.fixLayout();this.Super("draw",arguments);this.bringToFront();var _0=this.getButton(this.selectedTab);if(_0){_0.setSelected(true)}},makeBaseLine:function(){this._baseLine=isc.StretchImg.create({ID:this.getID()+"_baseLine",vertical:(this.tabBarPosition==isc.Canvas.LEFT||this.tabBarPosition==isc.Canvas.RIGHT),skinImgDir:this.skinImgDir,src:"[SKIN]baseline.gif",imageType:(isc.Browser.isNav?isc.Img.TILE:isc.Img.STRETCH),autoDraw:false});this.addChild(this._baseLine)},fixLayout:function(){var _0=this._baseLine;if(_0==null)return;var _1=0,_2=this.parentElement;if(this.tabBarPosition==isc.Canvas.TOP){_1=_2&&_2.customEdges?(_2.edgeWidth||_2.edgeSize||10):0;_0.setRect(0,this.getHeight()-this.baseLineThickness,this.getWidth()-_1,this.baseLineThickness)}else if(this.tabBarPosition==isc.Canvas.BOTTOM){_1=_2&&_2.customEdges?(_2.edgeWidth||_2.edgeSize||10):0;_0.setRect(0,0,this.getWidth()-_1,this.baseLineThickness)}else if(this.tabBarPosition==isc.Canvas.LEFT){_1=_2&&_2.customEdges?(_2.edgeHeight||_2.edgeSize||10):0;_0.setRect(this.getWidth()-this.baseLineThickness,0,this.baseLineThickness,this.getHeight()-_1)}else if(this.tabBarPosition==isc.Canvas.RIGHT){_1=_2&&_2.customEdges?(_2.edgeHeight||_2.edgeSize||10):0;_0.setRect(0,0,this.baseLineThickness,this.getHeight()-_1)}},layoutChildren:function(){this.Super("layoutChildren",arguments);this.fixLayout()},buttonSelected:function(_0){_0.bringToFront();this.lastSelectedButton=_0;this.$vi(this.lastSelectedButton)},buttonDeselected:function(_0){_0.sendToBack()},getSelectedTab:function(){return this.getButtonNumber(this.getSelectedButton())},selectTab:function(_0){this.selectButton(_0)},$vi:function(_0){this.Super("$vi",arguments);if(this.$vm!=null&&!this.$vm.selected){this.selectTab(this.$vm)}}});isc.ClassFactory.defineClass("ListBarLabel","Label");isc.ListBarLabel.addMethods({click:function(){this.parentElement.labelClick(this)}});isc.ClassFactory.defineClass("ListBarGroup");isc.ClassFactory.defineClass("ListBar","VLayout");isc.ListBar.addProperties({overflow:"hidden",labelHeight:20,labelStyle:"button",visibilityMode:"mutex",instantRelayout:true});isc.ListBar.addMethods({initWidget:function(){this.Super(this.$f);var _0=this.groups;for(var i=0;i<_0.length;i++){var _1=_0[i],_2=_1.title;if(_1.items!=null&&!isc.isA.Array(_1.items))_1.items=[_1.items];var _3=isc.ListBarLabel.create({autoDraw:false,group:_1,contents:_2,className:this.labelStyle,height:this.labelHeight});_1._label=_3;this.addMember(_3);if(_1.autoShow){this.$vq(_1);this.$vr=_1}}
if(this.$vr==null){var _4=_0.first();this.$vq(_4);this.$vr=_4}},$vq:function(_0){var _1=this.getMemberNumber(_0._label);this.showGroup(_0,_0._label,_1);if(this.vscrollOn){var _2=_0._label,_3=_0.items.last();isc.Timer.setTimeout(this.getID()+".scrollIntoView("+_2.getLeft()+","+_2.getTop()+","+_2.getVisibleWidth()+","+_3.getVisibleHeight()+")",0)}},showGroup:function(_0,_1,_2){if(!isc.isAn.Array(_0.items))_0.items=[_0.items];for(var i=0;i<_0.items.length;i++){var _3=_0.items[i];if(!isc.isA.Canvas(_3))_0.items[i]=isc.ClassFactory.newInstance(_3)}
this.addMembers(_0.items,_2+1);if(this.isDrawn())_0.items.map("show")},hideGroup:function(_0){_0.items.map("hide")},labelClick:function(_0){var _1=_0.group;if(this.visibilityMode=="mutex"){this.hideGroup(this.$vr);this.$vq(_1)}else{var _2=_1.items.first();if(!isc.isA.Canvas(_2)||!_2.isDrawn()||_2.visibility=="hidden"){this.$vq(_1)}else{this.hideGroup(_1)}}
this.$vr=_1;return false}});isc.ClassFactory.defineClass("Scrollbar","StretchImg");isc.Scrollbar.addClassProperties({thumbDefaults:{autoDraw:false,_generated:true,$lf:false,$le:false,$mn:false,capSize:2,backgroundColor:"#EEEEEE",canDrag:true,dragAppearance:isc.EventHandler.NONE,dragStartDistance:0,click:isc.EventHandler.stopBubbling,doubleClick:isc.EventHandler.stopBubbling,mouseMove:isc.EventHandler.stopBubbling,mouseDown:function(){return this.scrollbar.thumbDown()},dragStart:function(){return this.scrollbar.thumbDragStart()},dragMove:function(){return this.scrollbar.thumbMove()},dragStop:function(){return this.scrollbar.thumbUp()},mouseUp:function(){return this.scrollbar.thumbUp()},keyPress:function(){return this.scrollbar.handleKeyPress()},keyDown:function(){return this.scrollbar.handleKeyDown()},keyUp:function(){return this.scrollbar.handleKeyUp()},mouseWheel:function(){return this.scrollbar.mouseWheel()}}});isc.Scrollbar.addProperties({btnSize:16,state:isc.StatefulCanvas.STATE_UP,autoEnable:true,showCorner:false,backgroundColor:"#EEEEEE",allowThumbDownState:false,thumbResizeThreshold:0.1,thumbMinSize:12,overflow:isc.Canvas.IGNORE,skinImgDir:"images/Scrollbar/",textDirection:"ltr",$q7:true});isc.Scrollbar.addMethods({initWidget:function(){this.Super("initWidget",arguments);var _0=this.getID()+".btnSize";this.$vs={name:"start",width:_0,height:_0};this.$vt={name:"track",width:"*",height:"*"};this.$vu={name:"end",width:_0,height:_0};this.$vv={name:"corner",width:_0+"-1",height:_0+"-1"};var _1=(this.vertical?"v":"h");if(!this.src||this.src=="blank.gif")this.src="[SKIN]"+_1+"scroll.gif";if(!this.cornerSrc)this.cornerSrc="[SKIN]corner.gif";if(this.vertical){this.setWidth(this.btnSize)}else{this.setHeight(this.btnSize)}
this.setItems();this.makeThumb();this.addPeer(this.thumb);this.setScrollTarget();this.setThumb()},setItems:function(){this.items=[this.$vs,this.$vt,this.$vu];if(this.showCorner)this.items.add(this.$vv)},setShowCorner:function(_0){_0=_0!=false;if(this.showCorner!=_0){this.showCorner=_0;this.setItems();this.resizeImages();this.markForRedraw("showCorner")}
return _0},setScrollTarget:function(_0){if(this.$q7&&this.scrollTarget!=null&&this.isObserving(this.scrollTarget,"scrollTo")){this.ignore(this.scrollTarget,"scrollTo")}
if(_0!=null)this.scrollTarget=_0;if(this.scrollTarget==null)this.scrollTarget=this;if(this.$q7&&this.scrollTarget!=this&&this.scrollTarget!=_0){this.observe(this.scrollTarget,"scrollTo","observer.setThumb()")}},setEnabled:function(_0){this.Super("setEnabled",arguments);if(this.thumb){this.thumb.setVisibility(this.enabled&&this.isVisible());this.thumb.$lg=this.enabled}
if(this.enabled!=(this.state==isc.StatefulCanvas.STATE_UP)){this.setState(this.enabled?isc.StatefulCanvas.STATE_UP:isc.StatefulCanvas.STATE_DISABLED)}},setVisibility:function(_0){this.Super("setVisibility",arguments);if(this.isVisible())this.setThumb()},parentVisibilityChanged:function(_0){this.Super("parentVisibilityChanged",arguments);if(this.isVisible())this.setThumb()},drawPeers:function(_0){this.setThumb();this.Super("drawPeers",arguments)},resizePeersBy:function(_0,_1){this.setThumb()},makeThumb:function(){var _0=(this.vertical?"v":"h");this.thumb=isc.StretchImg.create(isc.Scrollbar.thumbDefaults,{ID:this.getID()+"_thumb",scrollbar:this,vertical:this.vertical,state:this.state,visibility:this.visibility,textDirection:"ltr",imgDir:this.imgDir,skinImgDir:this.skinImgDir,imageType:this.imageType,width:this.vertical?this.getWidth():0,height:!this.vertical?this.getHeight():0,src:"[SKIN]"+_0+"thumb.gif"})},setThumb:function(){if(this.thumb==null)return;var _0=this.thumb,_1=this.trackSize();if(this.isDrawn()&&_0.isDrawn())_0.moveAbove(this);var _2=Math.round(this.scrollTarget.getViewportRatio(this.vertical)*_1);if(!isc.isA.Number(_2)||_2<this.thumbMinSize)_2=this.thumbMinSize;if(_2>_1)_2=_1;var _3=(this.vertical?_0.getHeight():_0.getWidth()),_4=Math.abs(_2-_3);if(_4>0&&(_3==0||_3>_1||(_4>5||_4/ _3>=this.thumbResizeThreshold)))
{this.vertical?_0.setHeight(_2):_0.setWidth(_2)}
this.moveThumb()},setZIndex:function(_0){this.Super("setZIndex",arguments);if(this.thumb)this.thumb.moveAbove(this)},moveThumbTo:function(_0){if(this.vertical)
return this.thumb.moveTo(this.getLeft(),_0);else
return this.thumb.moveTo(_0,this.getTop())},thumbSize:function(){return(this.vertical?this.thumb.getHeight():this.thumb.getWidth())},moveThumb:function(){var _0=(this.$q7||this.scrollTarget.canScroll(this.vertical));if(!_0){if(this.autoEnable)this.disable();this.moveThumbTo(this.trackStart());return}
if(this.autoEnable&&this.scrollTarget.isEnabled())this.enable();var _1=this.scrollTarget.getScrollRatio(this.vertical),_2=this.trackSize()-this.thumbSize(),_3=Math.round(_1*_2);this.moveThumbTo(_3+this.trackStart())},trackSize:function(){return this.getSize(this.getPartNum("track"))+2},trackStart:function(){if(this.vertical)
return this.getTop()+this.btnSize-1;else
return this.getLeft()+this.btnSize-1},directionRelativeToThumb:function(){var _0,_1=this.thumb,_2,_3;if(this.vertical){_0=isc.EH.getY();_2=_1.getPageTop();_3=_1.getHeight()}else{_0=isc.EH.getX();_2=_1.getPageLeft();_3=_1.getWidth()}
if(_0<_2)return-1;else if(_0>_2+_3)return 1;return 0},mouseDown:function(){this.clickPart=this.inWhichPart();if(this.clickPart=="corner"){this.clickPart=null;return isc.EH.STOP_BUBBLING}
this.setState(isc.StatefulCanvas.STATE_DOWN,this.clickPart);this.startDirection=this.directionRelativeToThumb();return isc.EH.STOP_BUBBLING},mouseStillDown:function(){if(this.clickPart=="track"){var _0=this.directionRelativeToThumb();if(_0!=0&&_0==this.startDirection){this.scrollTarget.scrollByPage(this.vertical,this.startDirection)}}else{this.scrollTarget.scrollByDelta(this.vertical,this.startDirection)}
return true},doubleClick:function(){if(isc.Browser.isIE)return this.mouseStillDown();return isc.EH.STOP_BUBBLING},mouseUp:function(){if(this.clickPart)this.setState(isc.StatefulCanvas.STATE_UP,this.clickPart);return isc.EventHandler.STOP_BUBBLING},click:isc.EventHandler.stopBubbling,mouseMove:isc.EventHandler.stopBubbling,prepareForDragging:function(){return false},thumbDown:function(){if(this.allowThumbDownState)this.thumb.setState(isc.StatefulCanvas.STATE_DOWN);return isc.EventHandler.STOP_BUBBLING},thumbDragStart:function(){var _0=isc.EH;_0.dragOffsetX=this.thumb.getOffsetX(_0.mouseDownEvent);_0.dragOffsetY=this.thumb.getOffsetY(_0.mouseDownEvent);return _0.STOP_BUBBLING},getEventCoord:function(){var _0=isc.EH;if(this.vertical)
return _0.getY()-this.getPageTop()-this.btnSize-1-_0.dragOffsetY;else
return _0.getX()-this.getPageLeft()-this.btnSize-1-_0.dragOffsetX},thumbMove:function(){var _0=this.trackSize()-this.thumbSize(),_1=this.getEventCoord(),_2=_1/ _0;_2=Math.max(0,Math.min(_2,1));this.scrollTarget.scrollToRatio(this.vertical,_2);return isc.EventHandler.STOP_BUBBLING},thumbUp:function(){this.thumb.setState(isc.StatefulCanvas.STATE_UP);return isc.EventHandler.STOP_BUBBLING},keyPress:function(){return this.ns.EH.bubbleEvent(this.scrollTarget,this.ns.EH.eventTypes.KEY_PRESS)},keyDown:function(){return this.ns.EH.bubbleEvent(this.scrollTarget,this.ns.EH.eventTypes.KEY_DOWN)},keyUp:function(){return this.ns.EH.bubbleEvent(this.scrollTarget,this.ns.EH.eventTypes.KEY_UP)},mouseWheel:function(){return this.ns.EH.bubbleEvent(this.scrollTarget,this.ns.EH.eventTypes.MOUSE_WHEEL)}});isc.ClassFactory.defineClass("ScrollStick","Button");isc.ScrollStick.addProperties({width:20,title:"O",deadAreaSize:10,sensitivity:1.0});isc.ScrollStick.addMethods({mouseStillDown:function(){var _0=isc.EH.getLastEvent(),_1=(_0.x-this.getPageLeft()-(this.getVisibleWidth()/2)),_2=(_0.y-this.getPageTop()-(this.getVisibleHeight()/2));if(Math.abs(_1)<this.deadAreaSize)_1=0;if(Math.abs(_2)<this.deadAreaSize)_2=0;_1*=this.sensitivity;_2*=this.sensitivity;var _3=this.target.getScrollLeft()+_1,_4=this.target.getScrollTop()+_2;this.target.scrollTo(_3,_4)}});isc.ClassFactory.defineClass("GridRenderer","Canvas");isc.GridRenderer.addClassProperties({SELECTED:"Selected",DISABLED:"Disabled",OVER:"Over",standardStyleSuffixes:["","Over","Selected","SelectedOver","Disabled","DisabledOver","DisabledSelected","DisabledSelectedOver","Dark","OverDark","SelectedDark","SelectedOverDark","DisabledDark"]});isc.GridRenderer.addProperties({totalRows:0,drawAheadRatio:1.3,cellHeight:20,fixedRowHeights:true,fixedColumnWidths:true,cellSpacing:0,cellPadding:2,canSelectOnRightMouse:true,backgroundColor:"white",tableStyle:"listTable",baseStyle:"cell",alternateRowFrequency:1,emptyCellValue:"&nbsp;",overflow:"auto",$oy:true,canFocus:true});isc.GridRenderer.addMethods({initWidget:function(){if(this.selection)this.setSelection(this.selection);if(!this.fixedRowHeights&&!this.showAllRows){if(!this.avgRowHeight)this.avgRowHeight=60;this.virtualScrolling=true;if(this.showCustomScrollbars==false){this.logWarn("Variable height records cannot be used with native scrollbars;"+" set showCustomScrollbars:true globally or on this GridRenderer")}
this.showAllColumns=true}
this.avgRowHeight=this.avgRowHeight||this.cellHeight},handleMouseUp:function(_0,_1){if(this._useNativeTabIndex){this.focus()}
if(this.convertToMethod("mouseUp"))return this.mouseUp(_0,_1)},isEmpty:function(){return false},$vw:function(){return this.getEmptyMessageHTML()},getEmptyMessageHTML:function(){var _0=(this.parentElement.data?this.parentElement.data.getLength():0);if(!this.showEmptyMessage||_0!=0)return"&nbsp;";return isc.StringBuffer.concat("<TABLE style='width:",this.getViewportWidth(),"px;",(isc.Browser.isSafari?this.getViewportHeight()+"height:px;'":"' HEIGHT=100%"),"><TR><TD ALIGN=CENTER VALIGN=TOP CLASS=",this.emptyMessageStyle,"><BR>",this.getEmptyMessage(),"</TD></TR></TABLE>")},getEmptyMessage:function(){return this.emptyMessage},getInnerHTML:function(){return this.getTableHTML()},addDrawAhead:function(_0,_1,_2,_3,_4){var _5=Math.ceil((_1-_0)*this.drawAheadRatio);if(_3!=null){if(_3)_1=_0+_5;else _0=_1-_5}else{if(_0==0)_1=_5;else{var _6=Math.ceil((_5-(_1-_0))/2);_0-=_6;_1+=_6}}
if(_0<0){_1-=_0;_0=0}
if(_1>=_2){var _7=_1-(_2-1);_0=Math.max(0,(_0-_7));_1=_2-1}
return[_0,_1]},getExtraRowHeight:function(_0,_1){var _2=0;for(var _3=_0;_3<_1;_3++){var _4=this.getRowHeight(this.getCellRecord(_3,0),_3),_5=(_4-this.cellHeight);if(_5>0){_2+=_5}}
return _2},getDrawArea:function(_0){var _1=this.getTotalRows(),_2,_3,_4;if(this.showAllRows){_2=0;_3=_1-1}else{var _5=this.$vx();_4=(this.lastScrollTop==null?null:this.lastScrollTop<this.getScrollTop());var _6=this.addDrawAhead(_5[0],_5[1],_1,_4,true);_2=_6[0];_3=_6[1]}
var _7,_8,_9=this.fields.length,_10;if(_0!=null){_7=_0;_8=_0+1}else if(this.showAllColumns){_7=0;_8=_9-1}else{var _11=this.getVisibleColumns();_10=(this.lastScrollLeft==null?null:this.lastScrollLeft<this.getScrollLeft());var _6=this.addDrawAhead(_11[0],_11[1],_9,_10);_7=_6[0];_8=_6[1]}
return[_2,_3,_7,_8]},getRowCoordinate:function(_0){var _1=this.getEventRow(_0),_2=this.getRowTop(_1),_3=_0-_2,_4=this.getRowSize(_1),_5=_3/ _4;return _1+_5},scrollToRatio:function(_0,_1){if(!_0||!this.virtualScrolling)return this.Super("scrollToRatio",arguments);var _2=this.getTotalRows()-1,_3=_1*_2,_4=Math.floor(_3),_5=Math.round((_3-_4)*this.getRowSize(_4));this.$vy=_4;this.$vz=_5;this.$v0();if(this.isDirty()){this.$v1=_1;this.$vy=_4;this.$vz=_5}},getScrollRatio:function(_0){if(!_0||!this.virtualScrolling)return this.Super("getScrollRatio",arguments);if(this.isDirty()&&this.$v1!=null)return this.$v1;var _1=this.getTotalRows()-1;if(_1<=0)return 0;var _2=this.getScrollTop(),_3=this.getRowCoordinate(_2),_4=_3/ _1;return Math.min(1,_4)},getViewportRatio:function(_0){if(!_0||!this.virtualScrolling)return this.Super("getViewportRatio",arguments);return Math.min(1,(this.getViewportHeight()/this.avgRowHeight)/this.getTotalRows())},$v2:function(_0,_1){if(this.$v3)return;var _2
if(_1>0){_2=_0+this.getViewportHeight()}else{_2=_0}
var _3=this.getEventRow(_2),_4=this.getTotalRows()-1,_5=_0;if(_3<0||_3>_4){this.$vy=_4;this.$vz=0;_5=this.getRowTop(_4)}else{this.$vy=_3;this.$vz=_0-this.getRowTop(this.$vy)+_1;if(Math.abs(this.$vz)>this.getViewportHeight()){this.logInfo("storeTargetRow: targetRow: "+_3+" with offset: "+this.$vz+", clearing","virtualScrolling");this.$vz=this.$vy=null}}
return _5},$v0:function(){var _0=this.$vy,_1=this.$vz;var _2=this.getRowTop(_0)+_1;this.$v3=true;this.$pe=null;this.scrollTo(null,_2);this.$v3=false;this.$v1=null},scrollTo:function(_0,_1,_2){if(isc.$m3)arguments.$fa=this;if(this.virtualScrolling&&_1!=null&&!_2){var _3=this.getScrollTop(),_4=_1-_3;this.$v2(_3,_4);_1=Math.min(_1,this.getRowTop(this.getTotalRows()-1))}
this.Super("scrollTo",arguments);if(this.isDirty()||this.$v4)return;var _5=(this.$v5()||this.$v6());if(_5){this.markForRedraw("scrolled");this.$co=true}},$v5:function(){if(this.showAllRows)return false;var _0=this.getVisibleRows(),_1=_0[0],_2=_0[1];var _3=this.getTotalRows();if(_2>_3-1)_2=_3-1;var _4=(_1<this.$cp||_2>this.$cq);return _4},$v6:function(){if(this.showAllColumns)return false;var _0=this.getVisibleColumns(),_1=_0[0],_2=_0[1],_3=(_1<this.$cr||_2>this.$cs);return _3},getTableHTML:function(_0){var _1=isc.timeStamp();if(this.isEmpty()){this.$cp=this.$cq=this.$cr=this.$cs=null;return this.$vw()}
var _2=this.getDrawArea();this.$cp=_2[0];this.$cq=_2[1];this.$cr=_2[2];this.$cs=_2[3];var _3=this.$cp,_4=this.$cq+1,_5=(_0!=null?_0:this.$cr),_6=(_0!=null?_0+1:this.$cs+1),_7=_6-_5;var _8=(this.showAllColumns||_0!=null);var _9=isc.StringBuffer.create(),_10=this.fields,_11=this.$c0;var _12,_13,_14;if(!_8){_12=this.$c0.slice(0,_5).sum();_13=this.$c0.slice(_6,this.$c0.length).sum();_14=this.$c0.sum();var _15=(isc.Browser.isIE||isc.Browser.isSafari?"margin":"padding")}
var _16=this.$c0.slice(_5,_6).sum(),_17=this.autoFit;var _18="";if(_0!=null){if(!_17&&this.fixedColumnWidths){_18=" WIDTH=100%"}}else if(isc.Browser.isMoz||isc.Browser.isSafari&&!_17){_18=" WIDTH="+_16}
if(_3!=0){var _19=(_3*this.avgRowHeight);_9.append("<DIV ID=",this.getID(),"$v7>",isc.Canvas.spacerHTML(1,_19),"</DIV>")}
_9.append("<TABLE BORDER=0",_18," ID=",this.getTableElementId(),(this.tableStyle&&isc.Browser.isDOM?" CLASS='"+this.tableStyle+this.$m2:isc.$d3)," CELLSPACING=",(isc.Browser.isNav?0:this.cellSpacing)," CELLPADDING=",(isc.Browser.isNav?0:this.cellPadding)," STYLE='",(isc.Browser.isDOM&&!_17&&this.fixedColumnWidths?"table-layout:fixed;overflow:hidden;wrap:false;":""),(!_8?_15+(this.isRTL()?"-right: ":"-left:")+_12+"px;"+_15+(this.isRTL()?"-left:":"-right:")+_13+"px;":""),(this.$vy!=null&&!(isc.Browser.isIE&&this.$oy)?"visibility:hidden;":""),"'>",(isc.Browser.isMoz?"<TBODY>":""));var _20=0,_21=0,_22=(this.getBaseStyle!=null?this.getBaseStyle(this.getCellRecord(_3,0),_3,0):this.baseStyle);if(isc.Browser.isIE&&isc.Browser.isStrict){_21=this.cellPadding*2;_20=(this.fixedRowHeights?0:this.cellPadding*2);_21+=isc.Canvas.$dw(_22);_20+=isc.Canvas.$ta(_22);this.$v8=_20;this.$v9=_21}
if(!_17&&(isc.Browser.isDOM||isc.Browser.isIE4||isc.Browser.isMacIE)){for(_0=_5;_0<_6;_0++){_9.append("<COL WIDTH=",(_11[_0]-_21),">")}}
if(!isc.Browser.isNav4)_9.append("<TBODY>");var _23=this.cellHeight,_24=(this.wrapCells?"":"<NOBR>"),_25=(this.wrapCells?"":"</NOBR>");var _26=0;if(isc.Browser.isDOM&&!isc.Browser.isMacIE){var _27=this.$wa(_23,_22);var _28=[];_28[0]="<TD";_28[3]=" ALIGN=";_28[15]=this.fastCellUpdates?"' ":"' CLASS=";if(this.getCellElementId)_28[17]=" ID=";_28[21]=">"+_24;_28[28]=_25+(_27?"</DIV></TD>":"</TD>");var _29=1,_30=2,_31=4,_32=5,_33=8,_34=16,_35=18,_36=19,_37=22;var _38="<TR>",_39="</TR>",_40=" HEIGHT=";var _41=[],_42=0,_43=[];for(_0=_5;_0<_6;_0++){var _44=_10[_0];_44.$wb=null;if(_17){_44.$wc=(isc.Browser.isIE?" STYLE='":" STYLE='OVERFLOW:hidden;");_44.$wd=this.$m2}else{_44.$wc=(isc.Browser.isIE?" WIDTH="+(_11[_0]-_21)+" STYLE='":" STYLE='"+this.$we(_0));if(_27){_44.$wd=this.$wf(_0)+this.$m2}}
if(!this.fixedRowHeights){_44.$wc+=this.$wg()}
if(this.fixedRowHeights)_44.$wc+="padding-top:0px;padding-bottom:0px;"}
var _45=" COLSPAN="+_7+" STYLE='"+(this.fixedRowHeights?"padding-top:0px;padding-bottom:0px;":"");for(var _46=_3;_46<_4;_46++){var _47=this.getCellRecord(_46);var _48=this.$wh(_46,_47);if(this.getRowElementId){_9.append("<TR ID=",this.getRowElementId(_46,_46-_3),">")}else{_9.append(_38)}
if(this.fixedRowHeights||_27){var _49=(this.getRowHeight!=null?this.getRowHeight(_47,_46):_23);if(this.fixedRowHeights&&(this.shouldFixRowHeight==null||this.shouldFixRowHeight(_47,_46)!=false))
{_28[_29]=_40;_28[_30]=_49-_20}else{_28[_29]=null;_28[_30]=null}
if(_27){_28[_36]="><DIV STYLE='"+this.$wi(_49,_47,_46)}}
for(_0=_5;_0<_6;_0++){var _44=_10[_0];if(_41[_0]>0){_44.$wb[_46]=_43[_0];_41[_0]--;if(_41[_0]==0){_42--;_43[_0]=null}
continue}
_28[_31]=(_44.cellAlign||_44.align);if(_48){_26++;_28[_32]=_45;if(_27){_28[_36+1]=this.$m2}}else{_28[_32]=_44.$wc;if(this.getRowSpan){var _50=this.getRowSpan(_47,_46,_0);if(_50>1){var _51=" ROWSPAN="+_50;if(_28[_31]!=null)
_28[_31]+=_51;else
_28[_31]=_51;_41[_0]=_50-1;_42++;_43[_0]=_46;if(_44.$wb==null)_44.$wb={};_44.$wb[_46]=_46}}
if(_27){_28[_36+1]=_44.$wd}else{_28[_36+1]=null}}
var _52=this.getCellStyle(_47,_46,_0),_53=(this.getCellCSSText?this.getCellCSSText(_47,_46,_0):null);if(!this.fastCellUpdates){_28[_33]=_53
_28[_34]=_52}else{_28[_33]=isc.Canvas.getStyleText(_52);_28[_33+1]=_53}
_28[_37]=this.$wj(_47,_46,_0);if(this.getCellElementId){_28[_35]=this.getCellElementId(_46,_46-_3,_0,_0-_5)}
_9.append(_28);if(_48)break}
_9.append(_39)}}
_9.append("</TABLE>");var _54=this.getTotalRows(),_55=_54-_4;if(!this.showAllRows&&(_55!=0||(this.virtualScrolling&&_55==0&&(this.overflow=="auto"||this.overflow=="scroll"))))
{var _56=_55*this.avgRowHeight;if(this.virtualScrolling&&_55==0){var _57=this.getViewportHeight();if(_56<_57){_56=_57}}
_9.append("<DIV STYLE='overflow:hidden;width:1px;height:",_56,"' ID=",this.getID(),"$wk>",isc.Canvas.spacerHTML(1,_56),"</DIV>")}
if(this.logIsDebugEnabled("gridHTML")){var _58=(isc.timeStamp()-_1),_59=((_6-_5)*(_4-_3)),_60=(_58/ _59),_61=(1000/_60);if(_60.toFixed!=null)_60=_60.toFixed(2);if(_61.toFixed!=null)_61=_61.toFixed(2);this.logDebug("getTableHTML: columns "+_5+"->"+(_6-1)+", rows "+_3+"->"+(_4-1)+", time: "+_58+"ms ("+_59+" cells at "+_60+"ms per cell, "+_61+" cells per second), "+_26+" single cell rows","gridHTML")}
return _9.toString()},$wa:function(_0,_1){return(isc.Browser.isSafari||(isc.Browser.isMoz&&isc.Browser.geckoVersion>=20040113&&this.fixedColumnWidths&&!this.autoFit)||(this.fixedRowHeights&&(isc.Browser.isMoz||(isc.Browser.isStrict&&isc.Browser.isIE))&&(this.wrapCells||(_0-isc.Canvas.$ta(_1)<18))))},$wh:function(_0,_1){return(_1&&(_1.singleCellValue||_1.isSeparator||(Array.isLoading(_1)&&!(isc.Browser.isSafari&&(_0==0||_0==this.$cp)))))},$wi:function(_0,_1,_2){var _3=this.fixedRowHeights&&(this.shouldFixRowHeight==null||this.shouldFixRowHeight(_1,_2)!=false);if(_3){var _4=(_0-2)-2*this.cellSpacing;if(_2==this.$wl){for(var i=0;i<this.$wm.getItems().length;i++){_4=Math.max(this.$wm.getItems()[i].getHeight(),this.$wm.getItems()[i].iconHeight)}}
if(this.wrapCells||_4<18){return(isc.Browser.isMoz?"MAX-HEIGHT:":"HEIGHT:")+_4+"px;"}}
return isc.$d3},$wf:function(_0){if(!this.fixedColumnWidths||this.autoFit)return this.$m2;return"WIDTH:"+this.getInnerColumnWidth(_0)+"px;OVERFLOW:hidden;"},$wg:function(){if(isc.Browser.isIE){if(!isc.Browser.isStrict)return"MIN-HEIGHT:"+this.cellHeight+"px;";return"HEIGHT:"+(this.cellHeight-this.$v8)+"px;"}
return"HEIGHT:"+this.cellHeight+"px;"},$we:function(_0){if(isc.Browser.isIE||this.autoFit)return isc.$d3;if(this.$wn==null){this.$wn=[];for(var i=0;i<this.$c0.length;i++){this.$wn[i]="WIDTH:"+this.$c0[i]+(this.fixedColumnWidths?"px;OVERFLOW:hidden;":"px;")}}
return this.$wn[_0]},getCellRecord:function(_0,_1){return null},$wj:function(_0,_1,_2){var _3=this.getCellValue(_0,_1,_2);if(_0&&_0.$wo){_3+="<BR>"+isc.Canvas.spacerHTML(1,_0.$wo.getVisibleHeight())}
return _3},getCellValue:function(_0,_1,_2){return this.emptyCellValue},getTotalRows:function(){return this.totalRows},setColumnWidth:function(_0,_1){this.fields[_0].width=this.$c0[_0]=_1;this.$wn=null;this.markForRedraw("setColumnWidth")},setColumnWidths:function(_0){var _1=this.$c0;this.$c0=_0.duplicate();this.$wn=null;if(_1!=null&&_0!=null&&_1.length==_0.length){if(_1==_0)return;if(!this.fixedColumnWidths&&!this.wrapCells&&this.isDrawn()&&_0.length==1&&(_0[0]<=_1[0]||(_0[0]>=_1[0]&&this.getColumnSize(0)>=_0[0])))return}
this.markForRedraw("setColumnWidths")},shouldRedrawOnResize:function(_0,_1){if(this.redrawOnResize!=null)return this.redrawOnResize;if(this.$v5()||this.$v6())return true;return false},getRowHeight:function(_0,_1){if(_0&&_0.$wo){var _2=_0.$wo;if(!isc.isA.Canvas(_2))return this.cellHeight;_2.$wp=_1;return this.cellHeight+_2.getVisibleHeight()}
return this.cellHeight},getCellStartRow:function(_0,_1){var _2=this.fields[_1].$wb;if(_2==null||_2[_0]==null)return _0;return _2[_0]},getCellRowSpan:function(_0,_1){var _2=this.fields[_1].$wb;var _3=this.getCellStartRow(_0,_1);if(_3==_0)return 1;var _4=_0+1,_5=_0-_3+1;while(_4<=this.$cq&&_2[_4]==_3)
{_4++;_5++}
return _5},addEmbeddedComponent:function(_0,_1){if(!isc.isA.Canvas(_0)){_0.autoDraw=false;var _2=isc.ClassFactory.getClass(_0._constructor);if(_2==null)_2=isc.Canvas;_0=_2.create(_0)}
if(_1.$wo){this.logWarn("addEmbeddedComponent added component: "+_0+" to record that already had component: "+_1.$wo+", old component will be destroy()d");_1.$wo.destroy()}
_1.$wo=_0;if(this.$wq==null)this.$wq=[];this.$wq.add(_0);_0.hide();this.addChild(_0);this.observe(_0,"resized","if(deltaY!=null&&deltaY!=0)observer.markForRedraw('embedded component resized')");_0.$wr=_0.$mn;_0.$mn=false;this.markForRedraw("added embedded component")},placeEmbeddedComponent:function(_0){var _1=_0.$wp;if(_1==null||_1<this.$cp||_1>this.$cq){_0.hide()}else{_0.setTop(this.getRowTop(_1)+this.cellHeight);_0.show();_0.bringToFront()}},removeEmbeddedComponent:function(_0){if(isc.isA.Number(_0))_0=this.getRecord(_0);var _1=_0.$wo;if(_1==null)return;this.ignore(_1,"resized");_0.$wo=null;this.$wq.remove(_1);_1.$mn=_1.$wr;_1.$wr=null;_1.destroy();this.markForRedraw("removed embedded component")},$ws:function(){var _0=this.$wq;if(_0==null)return;_0.setProperty("$wp",null)},$wt:function(){var _0=this.$wq;if(_0==null)return;for(var i=0;i<_0.length;i++){this.placeEmbeddedComponent(_0[i])}},getCellStyle:function(_0,_1,_2){if(_0&&_0.customStyle)return _0.customStyle;var _3=this.getCellStyleIndex(_0,_1,_2);return this.getCellStyleName(_3,_0,_1,_2)},getCellStyleName:function(_0,_1,_2,_3){var _4=isc.GridRenderer.standardStyleSuffixes;if(this.getBaseStyle){var _5=this.getBaseStyle(_1,_2,_3);if(_5!==this.baseStyle){if(_0==0)return _5;return _5+_4[_0]}}
if(!this.$wu){this.$wu=[];for(var i=0;i<_4.length;i++){this.$wu[i]=this.baseStyle+_4[i]}}
return this.$wu[_0]},getCellStyleIndex:function(_0,_1,_2){var _3=0;if(this.alternateRowStyles){var _4=(Math.floor(_1/ this.alternateRowFrequency)%2==1);if(_4)_3+=8}
if(!this.cellIsEnabled(_1,_2)){_3+=4}else{if(this.shouldShowRollOver(_1,_2)&&_1==this.lastOverRow&&(!this.useCellRollOvers||_2==this.lastOverCol))
{_3+=1}
if(this.selectionEnabled()){var _5=(this.canSelectCells?this.selection.cellIsSelected(_1,_2):this.selection.isSelected(_0));if(_5)_3+=2}}
return _3},cellIsEnabled:function(_0,_1){return true},getTableElementId:function(){return this.getCanvasName()+"table"},getTableElement:function(_0,_1){if(_0-this.$cp<0||_1-this.$cr<0||_0>this.$cq||_1>this.$cs)return null;var _2=this.$wv;if(_2==null){var _3=this.getTableElementId();var _2=isc.Canvas.getElementById(_3);if(_2==null)return null}
this.$wv=_2;if(_0==null)return _2;_0-=(this.$cp>0?this.$cp:0);if(_0<0){return null}
var _4;if(this.$ww!=null)_4=this.$ww[_0];if(_4==null)_4=_2.rows[_0];if(_4==null)return null;if(this.$ww==null)this.$ww=[];this.$ww[_0]=_4;if(_1==null)return _4;_1-=this.$cr;if(_1<0){return null}
if(this.getRowSpan){var _5=this.getCellStartRow(_0,_1);if(_5!=_0){_0=_5;_4=this.getTableElement(_5)}
if(_4.cells.length<(this.$cs-this.$cr+1)){var _6=0;for(var i=0;i<_1;i++){if(this.fields[i].$wb!=null&&this.fields[i].$wb[_0]!=null)_6++}
_1-=_6}}
return _4.cells[_1]},$wx:function(_0,_1,_2,_3,_4){if(_3==null)_3=this.getTableElement(_1,_2);if(_3==null)return;if(_0==null)_0=this.getCellRecord(_1,_2);if(_4==null)_4=this.getCellStyle(_0,_1,_2);if(this.fastCellUpdates){_3.style.cssText=this.$wy(_0,_1,_2,_4)}else{if(_3.className!=_4)_3.className=_4;if(this.getCellCSSText){_3.style.cssText=this.$wy(_0,_1,_2,_4)}}
if(this.shouldRefreshCellHTML(_0,_1,_2)){this.refreshCellValue(_1,_2)}
if(!this.fixedRowHeights||!this.isDrawn())return;var _5=this.fixedRowHeights&&(this.shouldFixRowHeight==null||this.shouldFixRowHeight(_0,_1)!=false),_6=(_5?(this.getRowHeight!=null?this.getRowHeight(_0,_1):this.cellHeight):isc.emptyString),_7=parseInt(_3.height),_8;if(!isc.isA.Number(_7))_7=null;if(_5&&isc.Browser.isIE&&isc.Browser.isStrict){_6-=isc.Canvas.$ta(_4)}
if((!_5&&_7!=null)||(_7!=_6&&!(_7==null&&_6==isc.emptyString)))
{_8=true}
if(_8){for(var i=this.$cr;i<=this.$cs;i++){var _9=this.getTableElement(_1,i);if(_9)_9.height=_6}
this.$wz();this.$qc("cell height changed")}},$wy:function(_0,_1,_2,_3){var _4=null;if(this.fixedRowHeights)_4="padding-top:0px;padding-bottom:0px;";else{_4=this.$wg()}
if(isc.Browser.isMoz){if(_4==null)_4=this.$we(_2);else _4+=this.$we(_2)}
if(this.fastCellUpdates){if(_3==null)_3=this.getCellStyle(_0,_1,_2);var _5=isc.Canvas.getStyleText(_3);if(_5==null&&isc.Page.$w0){this.fastCellUpdates=false;this.redraw()}
if(_4!=null)_4+=_5;else _4=_5}
if(this.getCellCSSText){var _6=this.getCellCSSText(_0,_1,_2)
if(_6!=null){if(_4!=null)_4+=_6
else _4=_6}}
return _4},shouldRefreshCellHTML:function(_0,_1,_2){return this.showHiliteInCells},refreshCellValue:function(_0,_1){var _2=this.getTableElement(_0,_1);if(!_2)return;var _3=this.getCellRecord(_0,_1),_4=this.fields[_1];if(!_4){return this.logDebug("refreshCell called for invalid field "+_1)}
var _5="";var _6=this.getCellStyle(_3,_0,_1),_7=this.$wa(_8,_6);if(_7){_5+="<DIV STYLE='";var _8=(this.getRowHeight!=null?this.getRowHeight(_3,_0):this.cellHeight);_5+=this.$wi(_8,_3,_0);var _9=this.$wh(_0,_3);if(!_9)_5+=this.$wf(_1);_5+="'>"}
if(!this.wrapCells)_5+="<NOBR>";_5+=this.$wj(_3,_0,_1);if(!this.wrapCells)_5+="</NOBR>";if(_7)_5+="</DIV>";_2.innerHTML=_5},setCellStyle:function(_0,_1,_2){return this.setRowStyle(_0,_2,_1)},setRowStyle:function(_0,_1,_2){if(_0==null||_0<0){this.logWarn("setRowStyle: bad rowNum: "+_0);return false}
var _3=this.getTableElement(_0,_2);if(_3==null){return false}
var _4=this.getCellRecord(_0,_2);if(_2!=null){this.$wx(_4,_0,_2,_3,_1)}else{var _5=this.getTableElement(_0);if(_5!=null){var _6="TD",_7=(!this.showAllColumns?this.$cr:0),_8=(!this.showAllColumns?this.$cs:this.fields.length-1),_9=0;for(var _10=_7;_10<=_8;_10++,_9++){var _3;if(this.showColumnsSeparately){_3=this.getTableElement(_0,_10)}else{_3=_5.cells[_9]}
if(_3==null)continue;this.$wx(_4,_0,_10,_3,_1)}}}
return true},refreshCellStyle:function(_0,_1,_2){return this.setCellStyle(_0,_1,_2)},refreshCell:function(_0,_1){this.refreshCellStyle(_0,_1);if(!this.shouldRefreshCellHTML())this.refreshCellValue(_0,_1)},refreshRow:function(_0){for(var i=0;i<this.fields.length;i++){this.refreshCell(_0,i)}},refreshCellStyles:function(_0,_1){this.logDebug("refreshing cell styles: "+_0.length+" cells");for(var i=0;i<_0.length;i++){var _2=_0[i][0],_3=_0[i][1];var _4=this.getTableElement(_2,_3);if(_4==null){continue}else{this.$wx(null,_2,_3,_4,_1)}}
return true},getCellPageRect:function(_0,_1){return[this.getColumnPageLeft(_1),this.getRowPageTop(_0),this.getColumnSize(_1),this.getRowSize(_0)]},getColumnLeft:function(_0){if(this.isRTL()){return this.getScrollWidth()-this.$c0.sum(0,_0+1)}else{return this.$c0.sum(0,_0)}},getColumnPageLeft:function(_0){return this.getPageLeft()-this.getScrollLeft()+this.getColumnLeft(_0)+(this.isRTL()&&this.vscrollOn?this.getScrollbarSize():0)},getColumnWidth:function(_0){return this.$c0[_0]},getInnerColumnWidth:function(_0){var _1=this.getColumnWidth(_0);if(_1==null)return null;return(_1-(2*this.cellPadding)-(2*this.cellSpacing))},getRowTop:function(_0){if(_0<this.$cp)return this.avgRowHeight*_0;var _1=this.$w1(),_2=this.$c6();if(_0>this.$cq){return _1+_2.sum()+(((_0-1)-this.$cq)*this.avgRowHeight)}
return _1+_2.sum(0,_0-this.$cp)},getRowPageTop:function(_0){return this.getPageTop()+this.getTopBorderSize()+(this.getRowTop(_0)-this.getScrollTop())},getRowSize:function(_0){if(_0<this.$cp||_0>this.$cq)return this.avgRowHeight;var _1=_0-this.$cp,_2=this.$c6();return _2[_1]},getColumnSize:function(_0){if((this.fixedFieldWidths&&!this.autoSize)||(_0<this.$cr||_0>this.$cs))
{return this.getColumnWidth(_0)}
var _1=_0-this.$cr,_2=this.getColumnSizes();return _2[_1]},$w1:function(){return this.$cp*this.avgRowHeight},$c6:function(){if(this.$w2!=null)return this.$w2;var _0=this.$w2=[];var _1=this.getTableElement();if(!_1||!_1.rows){delete this.$w2;return _0}
var _2=this.$cq-this.$cp+1,_3=false;for(var _4=0;_4<=_2;_4++){var _5=_1.rows[_4];if(_5){var _6=(isc.Browser.isSafari&&(this.fixedRowHeights==false||(this.shouldFixRowHeight!=null&&this.shouldFixRowHeight(this.getCellRecord(_4),_4)==false))),_7,_8=[];if(!isc.Browser.isSafari||(!_6&&isc.Browser.safariVersion>=125)){_7=_5.cells[_5.cells.length-1]}else{if(isc.Browser.safariVersion>=125){for(var k=0;k<_5.cells.length;k++){_8[k]=_5.cells[k]}}}
if(_6){_0[_4]=0;for(var _9=0;_9<_8.length;_9++){var _10=parseInt(_8[_9].height||_8[_9].offsetHeight||0);if(_10>_0[_4])_0[_4]=_10}
_0[_4]+=this.cellSpacing}else if(_7){_0[_4]=(isc.Browser.isSafari?parseInt(_7.height||_7.offsetHeight||0):_7.offsetHeight)+this.cellSpacing}}
var _10=_0[_4];if(_10!=0&&_10!=null)_3=true}
_0[0]+=this.cellSpacing;if(!_3){this.logWarn("row heights not yet available; returning all zeroes");this.$w2=null}
if(isc.Browser.isSafari&&!isc.Page.isLoaded())this.$w2=null;return _0},getColumnSizes:function(){if(this.$w3!=null)return this.$w3;if(this.fixedColumnWidths&&isc.Browser.version>=5){return(this.$w3=this.$c0.duplicate())}else{var _0=this.$w3=[];var _1=this.getTableElement(this.$cp);if(_1==null){this.$w3=_0.concat(this.$c0);return this.$w3}
var _2=(isc.Browser.isMac?this.cellSpacing:0);for(var _3=0;_3<this.fields.length;_3++){var _4;if(this.showColumnsSeparately){_4=this.getTableElement(this.$cp,_3)}else if(!(isc.Browser.isSafari&&isc.Browser.safariVersion<125)){_4=_1.cells[_3]}
if(_4){_0[_3]=_4.offsetWidth+_2}else{_0[_3]=this.$c0[_3]}}
this.innerWidth=this.getTableElement().offsetWidth;return _0}},getEventRow:function(y){if(y==null)y=this.getOffsetY();var _0=this.$w1();if(y<=_0)return Math.floor(y/ this.avgRowHeight);var _1=y-_0,_2=this.$c6();var _3=this.inWhichPosition(_2,_1),_4;if(_3>=0){_4=this.$cp+_3}else{var _5=_1-_2.sum();_4=this.$cq+1+Math.floor(_5/ this.avgRowHeight);if(_4>=this.getTotalRows())_4=-2}
return _4},getEventColumn:function(x){var _0=this.getColumnSizes();if(x==null)x=this.getOffsetX();return this.inWhichPosition(_0,x,this.getTextDirection())},getNearestRowToEvent:function(){var _0=this.getEventRow();if(_0<0){var _1=this.getVisibleRows();if(_0==-1)return _1[0];if(_0==-2)return _1[1]}
return _0},getNearestColToEvent:function(){var _0=this.getEventColumn();if(_0<0){var _1=this.getVisibleColumns();if(_0==-1)return _1[0];if(_0==-2)return _1[1]}
return _0},$vx:function(){if(this.virtualScrolling&&this.$vy!=null){var _0=this.$vy;if(this.$vz<0)_0+=Math.floor(this.$vz/ this.cellHeight);if(_0<0)_0=0;var _1=_0+Math.ceil(this.getViewportHeight()/this.cellHeight);return[_0,_1]}
var _2=Math.floor(this.getScrollTop()/this.avgRowHeight),_3=_2+Math.ceil(this.getViewportHeight()/this.cellHeight);return[_2,_3]},getVisibleRows:function(){var _0=this.getScrollTop();var _1=[this.getEventRow(_0),this.getEventRow(_0+this.getInnerHeight())];if(_1[1]==-2)_1[1]=this.getTotalRows();return _1},getVisibleColumns:function(){var _0=this.$c0;if(this.overflow==isc.Canvas.VISIBLE)return[0,_0.length-1];var _1=this.getScrollLeft();if(this.isRTL()){var _2=this.getScrollWidth()-this.getInnerWidth(),_1=_2-_1}
var _3=this.inWhichPosition(_0,_1),_4=this.inWhichPosition(_0,_1+this.getInnerWidth());if(_4==-2)_4=this.$c0.length-1;return[_3,_4]},shouldShowRollOver:function(_0,_1){return(this.showRollOver&&!isc.Browser.isNav4)},mouseMove:function(_0,_1){var _2=this.getEventRow(),_3=this.getEventColumn();if(_2==this.lastOverRow&&_3==this.lastOverCol)return false;var _4,_5=(_2!=this.lastOverRow||_3<0);if(this.lastOverRow!=null&&this.lastOverCol!=null){var _6=this.lastOverRow,_7=this.lastOverCol,_8=this.getCellRecord(_6,_7);this.lastOverRow=null;this.lastOverCol=null;if((_5||this.useCellEvents)&&this.shouldShowRollOver(_6,null)){this.setRowStyle(_6,null,(this.useCellRollOvers?_7:null));if(this.canHover&&!this.keepHoverActive)isc.Hover.clear()}
if(this.cellOut){this.cellOut(_8,_6,_7)}
if(_5&&this.rowOut){this.rowOut(_8,_6,_7)}}
if(_2>=0&&_3>=0&&this.cellIsEnabled(_2,_3)){this.lastOverRow=_2;this.lastOverCol=_3;if(this.useCellEvents||_5){if(this.shouldShowRollOver(_2,_3)){this.setRowStyle(_2,null,(this.useCellRollOvers?_3:null))}
if(this.canHover)isc.Hover.setAction(this,this.$w4,[_2,_3])}
if(this.cellOver){this.cellOver(this.getCellRecord(_2,_3),_2,_3)}
if(_5&&this.rowOver){this.rowOver(this.getCellRecord(_2,_3),_2,_3)}}
return isc.EventHandler.STOP_BUBBLING},mouseOut:function(){if(this.canHover)isc.Hover.clear();if(this.lastOverRow!=null&&this.lastOverCol!=null){var _0=this.lastOverRow,_1=this.lastOverCol,_2=this.getCellRecord(_0,_1);this.lastOverRow=null;this.lastOverCol=null;if(this.shouldShowRollOver(_0,_1)){this.setRowStyle(_0,null,(this.useCellRollOvers?_1:null))}
if(this.cellOut){this.cellOut(_2,_0,_1)}
if(this.rowOut){this.rowOut(_2,_0,_1)}}},$w4:function(_0,_1){var _2=this.getCellRecord(_0,_1);var _3;if(this.cellHover&&this.cellHover(_2,_0,_1)==false)_3=false;if(this.rowHover&&this.rowHover(_2,_0,_1)==false)_3=false;if(_3==false)return;if(this.showHover){isc.Hover.show(this.cellHoverHTML(_2,_0,_1),this.cellHoverProperties?this.cellHoverProperties:this.hoverProperties,this.cellHoverBoundary(_0,_1))}},cellHoverHTML:function(_0,_1,_2){return null},cellHoverBoundary:function(_0,_1){return null;var _2=this.cellHoverOutset;return[this.getColumnPageLeft(_1)-_2,this.getRowPageTop(_0)-_2,this.getColumnWidth(_1)+2*_2,this.getRowHeight(_0)+2*_2]},showContextMenu:function(){var _0=this.getEventRow(),_1=this.getEventColumn();if(_0>=0&&_1>=0&&this.cellIsEnabled(_0,_1)){var _2=this.getCellRecord(_0,_1),_3;if(this.cellContextClick)
if(this.cellContextClick(_2,_0,_1)==false)_3=false;if(this.rowContextClick)
if(this.rowContextClick(_2,_0,_1)==false)_3=false;if(this.recordContextClick)
if(this.recordContextClick(_2,_0,_1)==false)_3=false;if(_3==false)return false}
return this.Super("showContextMenu")},setSelection:function(_0){this.selection=_0;if(this.selection.isA("CellSelection")){this.observe(this.selection,"selectionChanged","observer.$w5(observed.changedCells)")}else{this.observe(this.selection,"setSelected","observer.$w6(observed.lastSelectionItem,observed.lastSelectionState)")}},$w5:function(_0){if(this.cellSelectionChanged){if(this.cellSelectionChanged(_0)==false)return false}
this.refreshCellStyles(_0)},$w6:function(_0,_1){if(this.selectionChanged&&(this.selectionChanged(_0,_1)==false))return false;var _2=this.selection,_3=_2.lastSelectionItem,_4=_2.data.indexOf(_3,this.$cp,this.$cq);if(_4==-1)_4=_2.data.indexOf(_3);this.setRowStyle(_4)},selectionEnabled:function(){return this.selection!=null},mouseDown:function(){var _0=this.getEventRow(),_1=this.getEventColumn();if(!(_0>=0&&_1>=0&&this.cellIsEnabled(_0,_1)))return false;this.$w7=_0;this.$w8=_1;var _2=this.getCellRecord(_0,_1);if(!isc.EH.rightButtonDown()){return this.$w9(_2,_0,_1)}else{return this.$xa(_2,_0,_1)}},rightMouseDown:function(){return this.mouseDown()},$w9:function(_0,_1,_2){var _3;if(this.cellMouseDown&&(this.cellMouseDown(_0,_1,_2)==false))_3=false;if(this.rowMouseDown&&(this.rowMouseDown(_0,_1,_2)==false))_3=false;if(this.recordMouseDown&&this.recordMouseDown(_1,_2)==false)_3=false;if(_3==false)return false;this.selectOnMouseDown(_0,_1,_2);return isc.EH.STOP_BUBBLING},selectOnMouseDown:function(_0,_1,_2){if(!this.selectionEnabled())return true;if(_1>=0&&_2>=0)this.selection.selectOnMouseDown(this,_1,_2)},$xa:function(_0,_1,_2){if(this.canSelectOnRightMouse)this.selectOnRightMouseDown(_0,_1,_2)},selectOnRightMouseDown:function(_0,_1,_2){this.selectOnMouseDown(_0,_1,_2)},mouseUp:function(){var _0=this.getEventRow(),_1=this.getEventColumn();if(!(_0>=0&&_1>=0&&this.cellIsEnabled(_0,_1)))return false;var _2=this.getCellRecord(_0,_1);var _3;if(this.cellMouseUp&&(this.cellMouseUp(_2,_0,_1)==false))_3=false;if(this.rowMouseUp&&(this.rowMouseUp(_2,_0,_1)==false))_3=false;if(this.recordMouseUp&&this.recordMouseUp(_0,_1)==false)_3=false;if(_3==false)return _3;this.selectOnMouseUp(_2,_0,_1);return isc.EventHandler.STOP_BUBBLING},selectOnMouseUp:function(_0,_1,_2){if(!this.selectionEnabled())return true;if(_1>=0&&_2>=0)this.selection.selectOnMouseUp(this,_1,_2)},click:function(){var _0=this.getEventRow(),_1=this.getEventColumn();return this.$xb(_0,_1)},$xb:function(_0,_1){this.$xc=this.$xd=null;if(!(_0>=0&&_1>=0&&this.cellIsEnabled(_0,_1)))return false;var _2=this.$w7;if(_0!=_2)return false;this.$xc=_0;var _3=this.getCellRecord(_0,_1),_4;if(!this.$xe(_3,_0,_1))_4=false;if(this.rowClick&&(this.rowClick(_3,_0,_1)==false))
_4=false;this.$w7=null;return _4},$xe:function(_0,_1,_2){if(this.$w8!=_2){this.$xd=null;return}
this.$xd=_2;this.$xf=null;return!(this.cellClick&&(this.cellClick(_0,_1,_2)==false))},doubleClick:function(){var _0=this.getEventRow(),_1=this.getEventColumn();if(!(_0>=0&&_1>=0&&this.cellIsEnabled(_0,_1)))return false;if(_0!=this.$xc){return this.$xb(_0,_1)}
var _2=this.getCellRecord(_0,_1),_3;if(_1!=this.$xd){_3=this.$xe(_2,_0,_1)}else if(this.cellDoubleClick&&(this.cellDoubleClick(_2,_0,_1)==false))
{_3=false}
if(this.rowDoubleClick&&(this.rowDoubleClick(_2,_0,_1)==false))
_3=false;this.$w7=this.$w8=null;this.$xc=this.$xd=null;if(_3==false)return false},dragMove:function(){if(!this.selectionEnabled()||!this.canDragSelect)return true;var _0=this.getNearestRowToEvent(),_1=this.getNearestColToEvent();this.selection.selectOnDragMove(this,_0,_1);return isc.EH.STOP_BUBBLING},getColumnAutoSize:function(_0){var _1=this.$xg=this.$xg||isc.Canvas.create({top:-1000,width:1,height:1,autoDraw:false});var _2=this.autoFit,_3=this.wrapCells;this.autoFit=true;this.wrapCells=false;_1.contents=this.getTableHTML(_0);this.autoFit=_2;this.wrapCells=_3;_1.draw();var _4=_1.getScrollWidth();_1.clear();return _4},redraw:function(){this.$ws();this.$wz();this.Super("redraw",arguments);this.$wt()},modifyContent:function(){if(this.$vy!=null){this.$v4=true;this.$v0();this.$v4=null;var _0=this.getTableElement();if(_0)_0.style.visibility="inherit"}
if(this.virtualScrolling){var _1=this.$c6().sum();if(_1<this.getViewportHeight()){var _2=isc.Canvas.getElementById(this.getID()+"$wk");if(_2)_2.style.height="1px"}}},clear:function(){this.Super("clear",arguments);this.$wz()},$wz:function(){this.$ww=null;this.$wv=null;delete this.$w3;delete this.$xh;delete this.$w2;this.$co=false}});isc.GridRenderer.$xi={getCellRecord:"rowNum,colNum",getCellValue:"record,rowNum,colNum",getBaseStyle:"record,rowNum,colNum",getCellStyle:"record,rowNum,colNum",getCellCSSText:"record,rowNum,colNum",cellIsEnabled:"rowNum,colNum",getRowHeight:"record,rowNum",getRowSpan:"record,rowNum,colNum",cellOut:"record,rowNum,colNum",cellOver:"record,rowNum,colNum",rowOut:"record,rowNum,colNum",rowOver:"record,rowNum,colNum",cellContextClick:"record,rowNum,colNum",rowContextClick:"record,rowNum,colNum",recordContextClick:"record,recordNum,fieldNum",cellMouseDown:"record,rowNum,colNum",rowMouseDown:"record,rowNum,colNum",recordMouseDown:"recordNum,fieldNum",cellMouseUp:"record,rowNum,colNum",rowMouseUp:"record,rowNum,colNum",recordMouseUp:"recordNum,fieldNum",selectOnMouseDown:"record,rowNum,colNum",selectOnRightMouseDown:"record,rowNum,colNum",selectOnMouseUp:"record,rowNum,colNum",cellClick:"record,rowNum,colNum",cellDoubleClick:"record,rowNum,colNum",rowClick:"record,rowNum,colNum",rowDoubleClick:"record,rowNum,colNum",cellHover:"record,rowNum,colNum",rowHover:"record,rowNum,colNum",cellHoverHTML:"record,rowNum,colNum",selectionChanged:"record,state",cellSelectionChanged:"cellList",getRowElementId:"rowNum,physicalRowNum",getCellElementId:"rowNum,physicalRowNum,colNum,physicalColNum"};isc.GridRenderer.registerStringMethods(isc.GridRenderer.$xi);isc.ClassFactory.defineClass("ListGrid","Canvas");isc.addGlobal("ListViewer",isc.ListGrid);isc.ListGrid.addClassProperties({$a7:null,NONE:"none",CORNER:"corner",FIELD:"field",BOTH:"both",NONE:"none",CLONE:"clone",MOVE:"move",AFTER:"after",BEFORE:"before",CLICK_OUTSIDE:"click",ENTER_KEYPRESS:"enter",ESCAPE_KEYPRESS:"escape",UP_ARROW_KEYPRESS:"arrow_up",DOWN_ARROW_KEYPRESS:"arrow_down",TAB_KEYPRESS:"tab",SHIFT_TAB_KEYPRESS:"shift_tab",EDIT_FIELD_CHANGE:"field_change",EDIT_ROW_CHANGE:"row_change",PROGRAMMATIC:"programmatic",$xj:["selection","selectionType","canSelectCells","canDragSelect","canSelectOnRightMouse","canDrag","canAcceptDrop","canDrop","autoFit","wrapCells","cellSpacing","cellPadding","cellHeight","fields","$c0","showAllColumns","drawAheadRatio","fastCellUpdates","showRollOver","useCellRollOvers","useCellEvents","canHover","showHover","hoverProperties","cellHoverProperties","keepHoverActive","cellHoverOutset","showEmptyMessage","emptyMessageStyle","accessKey","canFocus","_useNativeTabIndex","tableStyle","baseStyle"],$xk:["getCellStyleName","getCellStyleIndex","setCellStyle","refreshCellStyle","getColumnLeft","getColumnPageLeft","getColumnWidth","getRowTop","getRowPageTop","getRowSize","getCellPageRect","addEmbeddedComponent","removeEmbeddedComponent"],$xl:["getTotalRows","cellIsEnabled","willAcceptDrop","scrolled","getTableElementId","getRowElementId","getCellElementId","shouldFixRowHeight"],bodyFunctions:{cellContextClick:function(_0,_1,_2){return this.parentElement.$xm(_1,_2)},getInnerHTML:function(){return this.parentElement.getBodyHTML()},scrollTo:function(_0,_1,_2){if(isc.$m3)arguments.$fa=this;if(_0!=null){var _3=this.getScrollWidth()-this.getViewportWidth();_0=Math.max(0,Math.min(_3,_0))}
if(_1!=null){var _4=this.getScrollHeight()-this.getViewportHeight();_1=Math.max(0,Math.min(_4,_1))}
var _5=this.parentElement;_5.bodyScrolled(_0,_1);this.Super("scrollTo",arguments);if(!this.isDirty()&&_5.$xn){_5.$wm.itemsMoved()}},redraw:function(_0){var _1=this.parentElement,_2=_1.$xn&&(_1.$wm!=null),_3=_1.$wm,_4,_5,_6,_7=[];if(_2){this.logInfo("redraw with editors showing, editForm.hasFocus: "+_3.hasFocus,"gridEdit");if(_3.hasFocus){var _8=_3.getFocusItem();if(_8){_8.updateValue();_8.rememberSelection();if(!_1.canEditCell(_8.rowNum,_8.colNum))
_8.blurItem();else
_3.$xo()}}
_3.$xp=true;if(!this.editByCell){_4=_1.getEditRow();_5=_1.getRecord(_4);_6=_1.getEditFormItemFieldWidths(_5);var _9=this.getDrawArea();_9=[_9[2],_9[3]];var _10=_3.getItems(),_11=_10.length>0?_10.first():null,_12=_10.length>0?_10.last():null;if(_11==null||_9[0]<_11.colNum){var _13=[],_14={};for(var i=_9[0];i<=_9[1];i++){if(_11!=null&&i>=_11.colNum)break;var _15=_1.fields[i],_16=_6[i],_17=_1.getEditItem(_15,_5,_4,_16);_13[_13.length]=_17;_14[_1.getFieldName(i)]=_1.getEditDisplayValue(_4,i)}
if(_13.length>0)_3.addItems(_13,0);for(var i in _14){_3.setValue(i,_14[i])}}else if(_11.colNum<_9[0]){for(var i=_11.colNum;i<_9[0];i++){if(i>_12.colNum)break;var _18=_1.getFieldName(i),_17=_3.getItem(_18);if(_17!=null)_7.add(_17)}}
if(_12==null){}else if(_9[1]>_12.colNum){_13=[];_14={};for(var i=_9[1];i>=_9[0];i--){if(i<=_12.colNum)break;var _15=_1.fields[i],_16=_6[i],_17=_1.getEditItem(_15,_5,_4,_16);_13.addAt(_17,0);_14[_1.getFieldName(i)]=_1.getEditDisplayValue(_4,i)}
if(_13.length>0)_3.addItems(_13);for(var i in _14){_3.setValue(i,_14[i])}}else if(_9[1]<_12.colNum){for(var i=_12.colNum;i>_9[1];i--){if(i<_11.colNum)break;var _18=_1.getFieldName(i),_17=_3.getItem(_18);if(_17!=null)_7.add(_17)}}}}
this.Super("redraw",arguments);if(_2){if(_7!=null&&_7.length>0){_3.removeItems(_7)}
var _19=_11?_11.colNum:null,_20=_12?_12.colNum:null;if(_19!=null){for(var i=0;i<_10.length;i++){if(_10[i].colNum<=_20||_10[i].colNum>=_19){_10[i].moved()}}}
_1.updateEditRow(_1.getEditRow());if(_3.hasFocus){var _21=_3.getItem(_1.getEditFieldName());if(_21!=null){_3.$xq(_21);_21.resetToLastSelection()}}}},isEmpty:function(){return this.getTotalRows()<=0},isDirty:function(){return this.Super("isDirty",arguments)||this.parentElement.isDirty()},shouldShowRollOver:function(_0,_1){if(!this.Super("shouldShowRollOver",arguments))return false;var _2=this.parentElement,_3=_2.getCellRecord(_0,_1);return(!(_3&&_3.$wo))&&(!_2.$xn||_2.editByCell||(_0!=_2.$wl))},getEmptyMessage:function(){return this.parentElement.emptyMessage},getEmptyMessageHTML:function(){var _0=this.Super("getEmptyMessageHTML",arguments);var _1=this.parentElement.getFieldWidths().sum()-
this.getWidth()+(this.parentElement.leaveScrollbarGap?this.getScrollbarSize():0);if(_1>0){_0=isc.StringBuffer.concat("<TABLE CELLPADDING=0 CELLSPACING=0><TR><TD>",_0,"</TD><TD>",isc.Canvas.spacerHTML(_1,1),"</TD></TR></TABLE>")}
return _0},keyPress:function(_0,_1){return this.parentElement.bodyKeyPress(_0,_1)},$ks:function(_0){var _1=this.Super("$ks",arguments);if(_0&&this.parentElement.isEditable()){var _2=this.parentElement,_3=isc.EH.lastEvent;if(_2.editOnFocus&&_2.isEditable()&&_2.getEditRow()==null&&!(_3.target==this&&(_3.eventType==isc.EH.MOUSE_DOWN||_3.eventType==isc.EH.MOUSE_UP||_3.eventType==isc.EH.CLICK||_3.eventType==isc.EH.DOUBLE_CLICK)))
{if(_2.$xr){delete _2.$xr}else{var _4=_2.findNextEditCell(0,0,true,true);if(_4!=null)
_2.handleEditCellEvent(_4[0],_4[1])}}}
return _1},draw:function(){var _0=this.parentElement;if(_0.getEditRow()!=null){var _1=_0.getEditRow(),_2=_0.getRecord(_1),_3=_0.getEditCol();_0.$wm.setItems(_0.getEditRowItems(_2,_1,_3,_0.editByCell))}
this.Super("draw",arguments);if(_0.$xs!=null){_0.scrollCellIntoView(_0.$xs);delete _0.$xs}},layoutChildren:function(_0){this.Super("layoutChildren",arguments);if(_0=="scrolling state changed"){this.parentElement.layoutChildren("body scroll changed")}},moved:function(){this.Super("moved",arguments);var _0=this.parentElement;if(_0.$xn){_0.$wm.itemsMoved()}},parentMoved:function(){this.Super("parentMoved",arguments);var _0=this.parentElement;if(_0.$xn){_0.$wm.itemsMoved()}},setVisibility:function(_0){this.Super("setVisibility",arguments);var _1=this.parentElement
if(_1.$xn)_1.$wm.itemsVisibilityChanged()},parentVisibilityChanged:function(_0){this.Super("parentVisibilityChanged",arguments);var _1=this.parentElement;if(_1.$xn)_1.$wm.itemsVisibilityChanged()},clear:function(){this.Super("clear",arguments);var _0=this.parentElement;if(_0.$xn)_0.$wm.itemsVisibilityChanged()},zIndexChanged:function(){this.Super("zIndexChanged",arguments);var _0=this.parentElement;if(_0&&_0.$xn)_0.$wm.itemsZIndexChanged()},parentZIndexChanged:function(){this.Super("zIndexChanged",arguments);var _0=this.parentElement;if(_0.$xn)_0.$wm.itemsZIndexChanged()}}});isc.ListGrid.addClassMethods({classInit:function(){var _0;var _1=isc.GridRenderer;this.addMethods(isc.ClassFactory.makePassthroughMethods(this.$xk,"body",_1));var _2={};var _3=isc.getKeys(_1.$xi),_2=isc.ClassFactory.makePassthroughMethods(_3,"parentElement",_1);isc.addProperties(_2,isc.ClassFactory.makePassthroughMethods(this.$xl,"parentElement",isc.ListGrid));this.$xt=_2;var _4={};for(var i=0;i<_3.length;i++){var _5=_3[i],_6=isc.GridRenderer.getArgString(_5),_7=isc.GridRenderer.getPrototype();if(isc.ListGrid.getInstanceProperty(_5)==null){_4[_5]=new Function(_6,"if(this.body.__orig_"+_5+")return this.body.__orig_"+_5+"("+_6+")")}
_7["__orig_"+_5]=_7[_5]}
this.$xu=_4;this.addMethods(_4)}});isc.ListGrid.addProperties({className:"listGrid",uniqueMatch:true,overflow:isc.Canvas.HIDDEN,backgroundColor:"white",minHeight:50,fieldIdProperty:"name",drawAheadRatio:1.3,dataFetchDelay:isc.Browser.isNav?500:300,bodyOverflow:isc.Canvas.AUTO,bodyBackgroundColor:"white",emptyCellValue:"&nbsp;",cellHeight:20,fixedRecordHeights:true,fixedFieldWidths:true,leaveScrollbarGap:true,resizeFieldsForScrollbar:true,showFieldsSeparately:(isc.Browser.isNav),cellSpacing:0,cellPadding:2,dateFormatter:"toShortDate",$xv:function(_0,_1,_2,_3,_4){if(isc.isA.Date(_0)){var _5=this,_6=(_5.dateFormatter||_5.formatter||_4.dateFormatter);if(isc.isA.Function(_0[_6])){return _0[_6]()}else{_4.logWarn("Specified dateFormatter '"+_6+"' is not a valid date formatter name.  "+"Displaying date in shortDate format.");return _0.toShortDate()}}
return _0},timeFormatter:"toTime",$xw:function(_0,_1,_2,_3,_4){var _5=_0;if(!isc.isA.Time(_5))_5=isc.Time.parseTime(_5);if(_5!=null){var _6=this,_7=(_6.timeFormatter||_6.formatter||_4.timeFormatter);if(isc.isA.Function(_5[_7])){return _5[_7]()}else{_4.logWarn("Specified timeFormatter '"+_7+"' is not a valid time formatter name.  "+"Displaying time in standard format.");return _5.toTime()}}
return _0},tableStyle:"listTable",baseStyle:"cell",editFailedBaseStyle:"cellEditFailed",alternateRecordFrequency:1,generateClickOnSpace:true,generateClickOnSpace:true,showRollOver:!isc.Browser.isNav,showHover:true,cellHoverOutset:5,selectionType:isc.Selection.MULTIPLE,showEmptyMessage:true,emptyMessage:"No items to show.",emptyMessageStyle:"normal",loadingMessage:"&nbsp;",recordEditProperty:"_canEdit",editValuesTestedProperty:"$xx",validateOnChange:true,cancelEditingConfirmationMessage:"Cancelling this edit will clear unsaved edit values for this record. Continue?",rowEndEditAction:"next",listEndEditAction:"stop",enterKeyEditAction:"done",editEvent:isc.EH.DOUBLE_CLICK,selectOnEdit:true,autoComplete:"none",editFormDefaults:{canSelectText:true,autoDraw:false,selectOnFocus:true},textAreaEditorThreshold:255,longTextEditorType:"PopUpTextAreaItem",$xy:function(_0){if(!_0)_0=window.event;var _1=this.Super("handleKeyEvent",arguments),_2=this.ns.EH,_3=_2.lastEvent.keyName,_4=_2.lastEvent.eventType,_5=this.form.grid,_6=isc.Browser.isIE?(_4==_2.KEY_DOWN):(_4==_2.KEY_PRESS);if(_3=="Tab"){_2.suppressNextKeyEvent=true;if(!_6)return _1;var _7=_2.shiftKeyDown();if(!this.ns.isA.PopUpTextAreaItem(this)){var _8=this.getFocusIconIndex(),_9;if(_8==null){_9=(this.$xz==this?0:this.items.indexOf(this.$xz))}
if(_7){if(this.canTabToIcons!=false&&_8!=null){while(_8>0){_8-=1;var _10=this.icons[_8]
if(this.$x0(_10)){this.focusInIcon(_10);return false}}}
if(_9==null)
_9=this.items!=null?this.items.length:1;while(_9>0){var _11;_9-=1
if(this.items==null){_11=this}else{_11=this.items[_9]}
if(_11.$kv()){_11.focusInItem();return false}}}else{if(_9!=null&&this.items!=null){while(_9<this.items.length-1){_9+=1
var _11=this.items[_9];if(_11.$kv()){_11.focusInItem();return false}}}
if(_8==null)_8=-1;if(this.canTabToIcons!=false&&this.showIcons&&this.icons!=null){while(_8<this.icons.length-1){_8+=1;var _10=this.icons[_8];if(this.$x0(_10)){this.focusInIcon(_10);return false}}}}}
this.updateValue();var _12=this.getValue();_12=_5.$x1(_12,_5.getField(this.getFieldName()),_5.getEditRow(),_5.getEditCol());if(_7)_5.cellEditEnd(isc.ListGrid.SHIFT_TAB_KEYPRESS,_12);else _5.cellEditEnd(isc.ListGrid.TAB_KEYPRESS,_12);return false}else if(_3=="Enter"){if(this.getFocusIconIndex()!=null)return;if(_6){if((isc.isA.PopUpTextAreaItem(this)||isc.isA.TextAreaItem(this))&&isc.EH.altKeyDown()==false)return;this.updateValue();var _12=_5.$x1(this.getValue(),_5.getField(this.getFieldName()),_5.getEditRow(),_5.getEditCol());_5.cellEditEnd(isc.ListGrid.ENTER_KEYPRESS,_12)}
return false}else if(_3=="Escape"){if(_6){this.updateValue();var _12=_5.$x1(this.getValue(),_5.getField(this.getFieldName()),_5.getEditRow(),_5.getEditCol());_5.cellEditEnd(isc.ListGrid.ESCAPE_KEYPRESS,_12)}
return false}else if(_3=="Arrow_Up"){if(((isc.isA.PopUpTextAreaItem(this)||isc.isA.TextAreaItem(this))&&isc.EH.altKeyDown()==false)||isc.isA.SelectItem(this))
{return _1}
if(_6){this.updateValue();var _12=_5.$x1(this.getValue(),_5.getField(this.getFieldName()),_5.getEditRow(),_5.getEditCol());_5.cellEditEnd(isc.ListGrid.UP_ARROW_KEYPRESS,_12)}
return false}else if(_3=="Arrow_Down"){if(((isc.isA.PopUpTextAreaItem(this)||isc.isA.TextAreaItem(this))&&isc.EH.altKeyDown()==false)||isc.isA.SelectItem(this))
{return _1}
if(_6){this.updateValue();var _12=_5.$x1(this.getValue(),_5.getField(this.getFieldName()),_5.getEditRow(),_5.getEditCol());_5.cellEditEnd(isc.ListGrid.DOWN_ARROW_KEYPRESS,_12)}
return false}
return _1},$x2:function(){var _0=this.form,_1=_0.grid;if(_1.$xn&&!_1.editByCell){var _2=_1.$x3,_3=_1.$wl,_4=this.getFieldName(),_5=_1.fields.findIndex(_1.fieldIdProperty,_4);if(_5!=_2){_1.setNewEditCell(_3,_5);var _4=_1.getEditFieldName(),_6=_1.$x1(_0.getValue(_4),_1.getField(_4),_1.getEditRow(),_1.getEditCol());_1.cellEditEnd(isc.ListGrid.EDIT_FIELD_CHANGE,_6)}}
this.Super("elementFocus",arguments);if(this.$x4){_1.$x5(_3,_5,this.getValue());delete this.$x4}},headerHeight:22,headerBackgroundColor:"#CCCCCC",headerButtonDefaults:{wrap:false,baseStyle:"button",showRollOver:(!isc.Browser.isNav),minWidth:20},printHeaderStyle:"printHeader",printCellStyle:"printCell",canSort:true,sortDirection:Array.ASCENDING,showSortArrow:isc.ListGrid.BOTH,canOpenRecordDetailGrid:true,canOpenRecordEditor:true,canDragRecordsOut:false,canReorderFields:true,canResizeFields:true,dragAppearance:isc.EH.TRACKER,resizeFieldsInRealTime:isc.Browser.isIE&&isc.Browser.isWin,dragDataAction:isc.ListGrid.MOVE,embeddedComponentIndent:25,nestedGridDefaults:{height:150},skinImgDir:"images/ListGrid/",sortAscendingImage:{src:"[SKIN]sort_ascending.gif",width:7,height:7},sortDescendingImage:{src:"[SKIN]sort_descending.gif",width:7,height:7},trackerImage:{src:"[SKIN]tracker.gif",width:16,height:16}});isc.ListGrid.addMethods({initWidget:function(){this.Super("initWidget",arguments);if(this.loadingMessage==null||this.loadingMessage==isc.emptyString)
this.loadingMessage="&nbsp";this.setData(this.data?null:[]);this.canDrag=(this.canDrag||this.canDragRecordsOut||this.canReorderRecords||this.canDragSelect);this.canDrop=(this.canDrop||this.canDragRecordsOut||this.canReorderRecords);this.canAcceptDrop=(this.canAcceptDrop||this.canAcceptDroppedRecords||this.canReorderRecords)},setData:function(_0){if(this.data==_0)return;if(this.data)this.$x6(this.data);if(_0)this.data=_0;if(!this.data)return;if(!this.selection||_0){this.$x7()}
this.$x8(this.data);if(this.canSort&&this.sortFieldNum!=null){this.sortData()}
this.$by("setData")},$x7:function(){if(this.canSelectCells){var _0=[]}else{var _0=this.data}
var _1,_2={ID:this.getID()+"_selection",data:_0,selectionProperty:this.selectionProperty,simpleDeselect:this.simpleDeselect,dragSelection:this.canDragSelect};if(this.data.getNewSelection){_1=this.data.getNewSelection(_2)}
if(_1==null){if(this.canSelectCells){_1=isc.CellSelection.create(_2)}else{_1=isc.Selection.create(_2)}}
if(isc.isA.Canvas(this.body))this.body.setSelection(_1);this.selection=_1},$by:function(_0){if(this.body){this.body.markForRedraw(_0)}else{this.markForRedraw(_0)}},$x8:function(_0){this.observe(_0,"dataChanged","observer.dataChanged()")},dataChanged:function(){this.$x9();this.$by("dataChanged")},$x6:function(_0){this.ignore(_0,"dataChanged","observer.markForRedraw('dataChanged')");if(this.selection)this.selection.deselectAll()},applyFieldDefaults:function(_0){if(_0==null)return;for(var i=0;i<_0.length;i++){var _1=_0[i];if(_1==null)continue;if(_1.align==null)_1.align=this.isRTL()?isc.Canvas.RIGHT:isc.Canvas.LEFT;if(_1.type=="text"){if(_1.width==null&&_1.length!=null){if(_1.length<15&&!_1.valueMap){_1.width=_1.length*7}}}else if(_1.type=="date"&&!_1.getCellValue&&!_1.formatCellValue){_1.formatCellValue=this.$xv;_1.width=_1.width||80}else if(_1.type=="time"&&!_1.getCellValue&&!_1.formatCellValue){_1.formatCellValue=this.$xw;_1.width=_1.width||80}}},setFieldProperties:function(_0,_1){var _2=this.fields[_0];isc.addProperties(_2,_1);if(this.header!=null&&this.header.isDrawn()){this.header.getMember(_0).setProperties(_1)}},setAutoComplete:function(_0){this.autoComplete=_0;if(this.$wm)return this.$wm.setAutoComplete(_0)},setFieldAutoComplete:function(_0,_1){_0=this.getField(_0);_0.autoComplete=_1;if(this.$wm){var _2=this.$wm.getItem(_0[this.fieldIdProperty]);if(_2)_2.setAutoComplete(_1)}},showField:function(_0){arguments.$fa=this;var _1=_0;if(!isc.isAn.Object(_1))_1=this.getSpecifiedField(_0);if(_0==null){this.logWarn("showField(): unable to find field object for field: "+_0+". Taking no action.")
return}
if(!this.completeFields.contains(_1)){this.logWarn("showField(): field passed in is not contained "+"in fields array for this listGrid.  Call setFields() to add new fields.");return}
if(_1.showIf!=null)_1.showIf=null;if(!this.isDrawn()||this.fields.contains(_1))return;this.deriveVisibleFields();var _2=this.fields.indexOf(_1);var _3=this.header;if(_3!=null){this.header.addButtons([_1],_2)}
if(this.body){if(this.getEditCol()!=null&&this.getEditCol()>=_2){this.$x3+=1}
if(this.sortFieldNum!=null&&this.sortFieldNum>=_2)this.sortFieldNum+=1;if(this.$xn&&!this.editByCell||this.getEditCol()==_2){var _4=this.getEditRow(),_5=this.getRecord(_4),_6=this.getEditFormItemFieldWidths(_5)[_2],_7=this.getEditItem(_1,_5,_4,_6);if(_7!=null){var _8;if(this.editByCell)_8=0;else{var _9=this.$wm.getItems();for(var i=0;i<_9.length;i++){var _10=_9[i].colNum;if(_10>=_2){if(_8==null)_8=i;_9[i].colNum+=1}}}
var _11=this.body.getDrawArea();if(this.editByCell||_2>=_11[2]&&_2<=_11[3])
this.$wm.addItems([_7],_8)}}
this.body.fields=this.fields;this.setBodyFieldWidths(this.getFieldWidths());this.body.redraw("show field")}
if(this.$ya!=null)this.$ya.showField(_0)},hideField:function(_0){arguments.$fa=this;var _1=_0;if(!isc.isAn.Object(_1))_1=this.getSpecifiedField(_0);if(_0==null){this.logWarn("hideField(): unable to find field object for field: "+_0+". Taking no action.")
return}
if(!this.completeFields.contains(_1)){this.logWarn("hideField(): field passed in is not contained in fields array for "+"this listGrid.  Call setFields() to modify the fields array.");return}
_1.showIf="false;";if(!this.isDrawn()||!this.fields.contains(_1))return;var _2=this.fields.indexOf(_1),_3=this.getFieldName(_2);if(this.sortFieldNum==_2)this.sortFieldNum=null;else if(this.sortFieldNum!=null&&this.sortFieldNum>_2)this.sortFieldNum-=1;var _4=this.$xn;if(_4){var _5=this.getEditRow(),_6=this.getEditCol();if(this.editByCell){if(_6==_2)this.cancelEditing(isc.ListGrid.PROGRAMMATIC);_4=false}else{var _7=this.$wm.getItem(_3);if(_7)_7.blurItem();this.clearEditValue(_5,_3,true);if(_6==_2){var _8=this.findNextEditCell(_5,_6,-1,true);if(_8==null||_8[0]!=_5)
_8=this.findNextEditCell(_5,_6,1,true);if(_8==null||_8[0]!=_5){this.cancelEditing(isc.ListGrid.PROGRAMMATIC);_4=false}else{this.$yb(_8[0],_8[1])}}else if(this.getEditCol()>_2){this.$x3-=1}}}
this.deriveVisibleFields();var _9=this.header;if(_9!=null){var _10=this.header.getButton(_2);this.header.removeMember(_10);_10.destroy()}
if(_4){var _11=this.$wm,_12=_11.getItems();for(var i=_12.length-1;i>=0;i--){if(_12[i].colNum<=_2)break;_12[i].colNum-=1}}
if(this.body){this.body.fields=this.fields;this.setBodyFieldWidths(this.getFieldWidths());this.body.redraw("hide field")}
if(_4){if(!this.editByCell){var _13=this.$wm.getItem(_3);if(_13!=null){this.$wm.removeItems([_13])}}}
if(this.$ya!=null)this.$ya.hideField(_0)},fieldIsVisible:function(_0){var _1=_0;if(!isc.isAn.Object(_1))_1=this.getSpecifiedField(_0);return this.fields.contains(_1)},setFields:function(_0){if(isc.$m3)arguments.$fa=this;this.logDebug("setFields() ","drawing");var _1=(this.sortFieldNum!=null&&this.fields?this.fields[this.sortFieldNum]:null);var _2=this.$xn,_3=this.getEditRow(),_4=this.getEditCol(),_5=this.$wm,_6=this.fields?this.getEditFieldName():null;if(this.completeFields==null)this.fields=[];this.completeFields=this.bindToDataSource(_0);if(this.completeFields==null)this.completeFields=[];this.applyFieldDefaults(this.completeFields);this.deriveVisibleFields();this.$c0=null;var _7,_8,_9;if(_2){var _10=this.$x1(_5.getValue(_6),this.getField(_6),_3,_4);this.setEditValue(_3,_6,_10,true);_7=this.fields.findIndex(this.fieldIdProperty,_6);if(_7!=-1&&!this.canEditCell(_3,_7))
_7=-1;if(_7==-1){var _11;if(!this.editByCell)_11=this.findNextEditCell(_3,0,true,true);if(_11!=null&&_11[0]==_3){_7=_11[1]}
if(_7==-1){this.cancelEditing(isc.ListGrid.PROGRAMMATIC);_2=false}}else{var _12=_5.getItem(_6);if(_12){_9=_12.hasFocus;if(_9)_5.$xo()}
_8=true}
if(_2)this.hideInlineEditor(false,true)}
if(this.canSelectCells)this.selection.numCols=this.fields.length;if(this.headerHeight>0&&this.header!=null){this.updateHeader();if(this.body!=null)this.syncHeaderScrolling()}
this.layoutChildren();if(this.body){this.body.fields=this.fields;this.body.markForRedraw("fields change")}
if(_1){this.sortFieldNum=this.fields.indexOf(_1);if(this.sortFieldNum==-1)this.sortFieldNum=null}
if(this.$yc!=null){var _13={};for(var i in this.$yc){if(this.$yc[i]==null)continue;var _14=this.$yc[i].$yd,_15=(this.dataSource!=null?isc.DataSource.getDataSource(this.dataSource).getPrimaryKeyFieldNames():[]);for(var _16 in _14){if(!this.fields.containsProperty(this.fieldIdProperty,_16)&&!_15.contains(_16)){_13[_16]=true;this.clearEditValue(_14,_16,true)}}}
_13=isc.getKeys(_13);if(_13.length>0){this.logInfo("'setFields()' removed the following fields which had pending edit "+"values for some row[s]: '"+_13.join("', '")+"'.\n"+"Edit values for these fields have been dropped.","gridEdit")}}
if(_2){if(_8){this.showInlineEditor(_3,_7,true);if(_9)_5.$xq(_17)}else{this.$yb(_3,_7,!_9)}
if(_9){var _17=this.getEditFieldName();if(_17==_6){_5.$xq(_17)}else{_5.focusInItem(_17)}}}
if(this.sortFieldNum!=null&&this.canSort)this.resort();if(this.$ya!=null){this.$ya.setFields(this.completeFields.duplicate())}},getVisibleFields:function(_0){var _1=[];for(var i=0;i<_0.length;i++){var _2=_0[i];if(_2==null)continue;if(_2.showIf!=null){Function.replaceStringWithMethod(_2,"showIf","list,field,fieldNum");if(!_2.showIf(this,_2,i))continue}
_1.add(_2)}
return _1},deriveVisibleFields:function(){this.fields.setArray(this.getVisibleFields(this.completeFields))},refreshFields:function(){this.setFields(this.completeFields)},getFieldWidths:function(){if(isc.isA.Layout(this.header)){return this.header.getMemberSizes()}else if(this.fields!=null){return isc.Canvas.applyStretchResizePolicy(this.fields.getProperty("width"),(this.innerWidth!=null?this.innerWidth:this.getAvailableFieldWidth()))}else return[]},getAvailableFieldWidth:function(){var _0=this.width-this.getHBorderSize();if((this.body&&this.body.vscrollOn)||this.leaveScrollbarGap){_0-=this.getScrollbarSize()}
return _0},setBodyFieldWidths:function(_0){this.$c0=_0;if(this.body!=null)this.body.setColumnWidths(this.$c0);if(this.$xn){var _1=this.$wm.getItems(),_2=this.getRecord(this.getEditRow()),_3=this.getEditFormItemFieldWidths(_2);for(var i=0;i<_1.length;i++){var _4=_1[i].colNum;if(_1[i].width!=_3[_4])
_1[i].setWidth(_3[_4])}}},createChildren:function(){if(this.headerHeight>0)this.makeHeader();if(this.showFilterEditor)this.makeFilterEditor();this.createBody()},resizeBy:function(_0,_1){if((isc.isA.Number(_0)&&_0!=0)||(isc.isA.Number(_1)&&_1!=0))
this.$c0=null;this.Super("resizeBy",arguments)},layoutChildren:function(_0){this.Super("layoutChildren",arguments);if(this.body==null)return;var _1=this.getAvailableFieldWidth(),_2=(_1!=this.innerWidth);this.innerWidth=_1;var _3=this.header;if(_3!=null){var _4=this.leaveScrollbarGap||(this.body&&this.body.vscrollOn),_5=(_4&&this.isRTL()?this.getScrollbarSize():0);_3.hPolicy="fill";var _6=this.innerWidth;if(!this.leaveScrollbarGap&&_3.isDrawn()&&_6!=_3.getWidth()&&_0=="body scroll changed")
{if(!this.resizeFieldsForScrollbar)_3.hPolicy="none"}
_3.setRect(_5,0,_6,this.headerHeight);if(!_3.isDrawn()&&(_0=="initial draw"||this.isDrawn())){_3.draw()}
_3.hPolicy="none";if(this.sorter)this.sorter.setLeft(this.getSorterLeft())}
if((!this.$c0||_2)&&((_3&&_3.isDrawn())||this.headerHeight==0)){this.setBodyFieldWidths(this.getFieldWidths());if(this.logIsDebugEnabled("layout")){this.logDebug("new field widths: "+this.$c0,"layout")}}
this.bodyHeight=this.getInnerHeight()-this.headerHeight;this.bodyWidth=this.getInnerWidth();this.body.setRect(0,this.headerHeight,this.bodyWidth,this.bodyHeight)},resizePeersBy:function(dX,dY){this.Super("resizePeersBy",arguments);if(this.$ya!=null){this.$ya.resizeBy(dX,0)}},draw:function(){if(isc.$m3)arguments.$fa=this;if(!this.readyToDraw())return this;this.prepareForDraw();this.Super("draw",arguments);this.body.getColumnSizes();if(this.header&&this.sortFieldNum!=null)this.header.selectButton(this.sortFieldNum);this.bodyScrolled()},prepareForDraw:function(){if(this.completeFields==null)this.setFields(this.fields);this.createChildren()},redraw:function(_0){if(!this.isDrawn())return this.draw();if(this.fixedFieldWidths){this.body.redraw(_0);this.$a2=false}else{this.Super("redraw",arguments)}
if(this.header){this.header.scrollTo(this.body.getScrollLeft(),this.header.getScrollTop())}},destroy:function(_0){if(this._dragLine){this._dragLine.destroy();this._dragLine=null}
if(this.$ye)this.$ye.destroy();if(this.cellContextMenu)this.cellContextMenu.destroy();if(this.$wm){this.$wm.destroy();delete this.$wm}
this.Super("destroy",arguments)},redrawHeader:function(){if(this.header)this.header.markForRedraw()},getBaseStyle:function(_0,_1,_2){if(this.cellHasValidationErrors(_1,_2))return this.editFailedBaseStyle;return this.baseStyle},getRawCellValue:function(_0,_1,_2){var _3=this.fields[_2];if(_3==null)return"";var _4=_3[this.fieldIdProperty],_5,_6,_7;if(this.rowEditNotComplete(_1))_5=this.getEditValue(_1,_4);if(_5!==_7){return this.getEditValue(_1,_4)}else{if(_0==null)return"";_6=_0[_3[this.fieldIdProperty]]}
if(_3.getRawCellValue){Function.replaceStringWithMethod(_3,"getRawCellValue","viewer,record,recordNum,field,fieldNum,value");_6=_3.getRawCellValue(this,_0,_1,_3,_2,_6)}
return _6},getCellValue:function(_0,_1,_2){if(_0==null)_0=this.getEditValues(_1);var _3=this.fields[_2],_4=null;if(_3==null)return"";if(_0!=null){if(_0.isSeparator)return(isc.Browser.isNav?"<HR WIDTH=95%>":"<HR>");if(_0.singleCellValue)return _0.singleCellValue;if(Array.isLoading(_0)){if(!isc.Browser.isSafari||_2==0)return this.loadingMessage;return"&nbsp;"}
if(this.$xn&&this.$wl==_1&&(!this.editByCell||this.$x3==_2)&&this.canEditCell(_1,_2))
{return this.getEditItemCellValue(_0,_1,_2)}
_4=this.getRawCellValue(_0,_1,_2);if(_3.getCellValue){Function.replaceStringWithMethod(_3,"getCellValue","viewer,record,recordNum,field,fieldNum,value");_4=_3.getCellValue(this,_0,_1,_3,_2,_4)}
var _5=_3.valueMap;if(_5){if(isc.isA.String(_5))_5=this.getGlobalReference(_5);if(!isc.isAn.Array(_5))_4=isc.getValueForKey(_4,_5)}}
return this.$yf(_4,_0,_3,_1,_2)},$yf:function(_0,_1,_2,_3,_4){if(_2.formatCellValue!=null){Function.replaceStringWithMethod(_2,"formatCellValue","value,record,rowNum,colNum,grid");_0=_2.formatCellValue(_0,_1,_3,_4,this)}else if(this.formatCellValue!=null){_0=this.formatCellValue(_0,_1,_3,_4)}
if(_0==null||isc.is.emptyString(_0)){if(_2.emptyCellValue!=null){_0=_2.emptyCellValue}else{_0=this.emptyCellValue}}else if(!isc.isA.String(_0)){_0=(_0.toLocaleString?_0.toLocaleString():_0.toString())}
return _0},getEditItemCellValue:function(_0,_1,_2){var _3=this.getFieldName(_2);var _4=this.$wm.getItem(_3),_5=_4.getStandaloneItemHTML();return _5},setRawCellValue:function(_0,_1,_2,_3){var _4=this.fields[_2];if(!_0||!_4)return;if(_4.setRawCellValue){Function.replaceStringWithMethod(_4,"setRawCellValue","viewer,record,recordNum,field,fieldNum,value");_4.setRawCellValue(this,_0,_1,_4,_2,_3)}else{_0[_4[this.fieldIdProperty]]=_3}
this.data.dataChanged()},setRawRecordValues:function(_0,_1,_2){for(var i in _2){var _3=this.fields.findIndex(this.fieldIdProperty,i);this.setRawCellValue(_0,_1,_3,_2[i])}},getCellBooleanProperty:function(_0,_1,_2,_3){var _4=false,_5=this[_0];if(_5==false)return false;var _6=this.fields[_2][_0];if(_6==false)return false;if(_3!=null){var _7=this.getRecord(_1,_2),_8=(_7!=null?_7[_3]:false);if(_8==false)return false;if(_8==true)return true}
return(_5==true)||(_6==true)},getDrawArea:function(){if(this.body)return this.body.getDrawArea();return null},getBodyHTML:function(_0){if(_0!=null&&this.fields[_0]==null)return"&nbsp;";if(isc.ResultSet!=null&&isc.isA.ResultSet(this.data)&&this.data.isPaged()){var _1=this.body.getDrawArea();this.data.getRange(_1[0],_1[1]+1)}
return this.body.getTableHTML(_0)},getPrintHTML:function(_0,_1,_2,_3){if(isc.isA.WindowedResultSet(this.data)){var _4=this.body.getVisibleRows(),_5=parseInt(_4[0]+(_4[1]-_4[0])/2);if(_0==null)_0=this.data.findFirstCachedRow(_5);if(_1==null)_1=this.data.findLastCachedRow(_5);this.logDebug("Midpoint: "+_5+", startRecord: "+_0+", endRecord: "+_1)}else{if(_0==null)_0=0;if(_1==null)_1=(this.data?this.data.getLength():0)}
if(_2==null)_2=0;if(_3==null)_3=this.fields.length;var _6=this.data.getRange(_0,_1+1);var _7=isc.StringBuffer.newInstance(),_8=this.fields;_7.append("<TABLE WIDTH=100% CELLSPACING=0 CELLPADDING=1 BORDER=1><TR>");if(!_6||_6.getLength()==0){_7.append("<TD ALIGN=center CLASS=",this.printCellStyle,">",this.body.getEmptyMessage(),"</TD></TR>")}else{for(var _9=_2;_9<_3;_9++){_7.append("<TD CLASS=",this.printHeaderStyle," VALIGN=TOP>",this.getHeaderButtonTitle(_9),"</TD>")}
_7.append("</TR>");for(var _10=0;_10<_6.getLength();_10++){var _11=_6[_10];if(!_11)continue;_7.append("<TR>");for(var _9=_2;_9<_3;_9++){_7.append("<TD CLASS=",this.printCellStyle," VALIGN=TOP>",this.getCellValue(_11,_10+_0,_9),"</TD>")}
_7.append("</TR>")}}
_7.append("</TABLE>");return _7.toString()},rowClick:function(_0,_1,_2,_3){this.$yg=_1;if(this.editEvent==isc.EH.CLICK||this.editOnFocus){if(this.handleEditCellEvent(_1,_2)==true)return true;if(_3){for(var i=0;i<this.fields.length;i++){if(i==_2)continue;if(this.handleEditCellEvent(_1,i)==true)return true}}}
var _0=this.getRecord(_1),_4=this.fields[_2];var _5=this.getCellValue(_0,_1,_2);var _6=this.getRawCellValue(_0,_1,_2);if(_4.recordClick){Function.replaceStringWithMethod(_4,"recordClick","viewer,record,recordNum,field,fieldNum,value,rawValue");return _4.recordClick(this,_0,_1,_4,_2,_5,_6)}
if(this.recordClick){return this.recordClick(this,_0,_1,_4,_2,_5,_6)}},rowDoubleClick:function(_0,_1,_2,_3){if(this.editEvent==isc.EH.DOUBLE_CLICK){if(this.handleEditCellEvent(_1,_2)==true)return true;if(_3){for(var i=0;i<this.fields.length;i++){if(i==_2)continue;if(this.handleEditCellEvent(_1,i)==true)return true}}}
var _4=this.fields[_2];var _5=this.getCellValue(_0,_1,_2);var _6=this.getRawCellValue(_0,_1,_2);if(_4.recordDoubleClick){Function.replaceStringWithMethod(_4,"recordDoubleClick","viewer,record,recordNum,field,fieldNum,value,rawValue");return _4.recordDoubleClick(this,_0,_1,_4,_2,_5,_6)}
if(this.recordDoubleClick!=null){return this.recordDoubleClick(this,_0,_1,_4,_2,_5,_6)}},$xm:function(_0,_1){this.cellContextItems=null;if(this.cellContextClick){var _2=this.getCellRecord(_0,_1);if(this.cellContextClick(_2,_0,_1)==false)return false}
if(this.showCellContextMenus){if(!this.cellContextMenu)this.cellContextMenu=isc.Menu.create(this.contextMenuProperties);if(!this.cellContextItems){this.cellContextItems=this.makeCellContextItems(this.getCellRecord(_0,_1),_0,_1)}
if(isc.isAn.Array(this.cellContextItems)&&this.cellContextItems.length>0){this.cellContextMenu.setData(this.cellContextItems);this.cellContextMenu.showContextMenu(this)}
return false}else{return true}},makeCellContextItems:function(_0,_1,_2){if(this.dataSource!=null){var _3=[];if(this.canOpenRecordDetailGrid){var _4=isc.DS.get(this.getRecordDataSource(_0)),_5=_4.getChildDataSources();if(_5!=null){for(var i=0;i<_5.length;i++){var _6=_5[i];_3.add({title:"Show "+_6.getPluralTitle(),record:_0,dataSource:_6,click:"target.openRecordDetailGrid(item.record, item.dataSource)"})}}}
if(this.canOpenRecordEditor){_3.add({title:"Edit",record:_0,click:"target.endEditing();target.openRecordEditor(item.record)"})}
if(_0.$wo!=null)_3.add({title:"Dismiss",record:_0,click:"target.closeRecord(item.record)"});_3.add({title:"Delete",click:"target.deleteSelected()"});return(_3.length>0?_3:null)}
return null},selectRecord:function(_0,_1){this.selectRecords(_0,_1)},deselectRecord:function(_0){this.selectRecord(_0,false)},selectRecords:function(_0,_1){if(_1==null)_1=true;if(!isc.isAn.Array(_0))_0=[_0];for(var i=0;i<_0.length;i++){if(_0[i]==null)continue;if(isc.isA.Number(_0[i]))_0[i]=this.getRecord(_0[i])}
this.selection.selectList(_0,_1)},deselectRecords:function(_0){this.selectRecords(_0,false)},selectAllRecords:function(){this.selection.selectAll()},deselectAllRecords:function(){this.selection.deselectAll()},bodyKeyPress:function(_0,_1){if(this.data.getLength()>0){var _2=isc.EventHandler,_3=_0.keyName;if(_3=="Arrow_Up"){return this.$yh(-1)}else if(_3=="Arrow_Down"){return this.$yh(1)}else if(_3=="Space"){if(this.generateClickOnSpace)
if(this.$bn()==false)return false;if(this.generateDoubleClickOnSpace)
return this.$yi()}else if(_3=="Enter"){if(this.generateClickOnEnter)
if(this.$bn()==false)return false;if(this.generateDoubleClickOnEnter)
return this.$yi()}}
return true},getKeyboardNavigationStyle:function(){if(isc.EventHandler.ctrlKeyDown()||this.selectionType==isc.Selection.NONE)return'hilite';return'click'},$yh:function(_0){var _1=this.getKeyboardNavigationStyle();if(_1=='none')return true;if(_0==null)_0=1;var _2;_2=this.$yj();if(_2==null)_2=this.$yg;if(_2==null){var _3=this.getSelection();if(_3.length>0){if(_0>=0)_3=_3[_3.length-1];else _3=_3[0];_2=this.getRecordIndex(_3)}}
if(isc.isA.Number(_2))_2+=_0;else _2=0;var _4=this.getTotalRows()-1;if(_2<0||_2>_4)return true;while(!this.recordIsEnabled(_2,0)){_2+=_0;if(_2<0||_2>_4)return true}
if(_1=='click')this.$yk(_2);if(_1=='hilite')this.$yl(_2);this.scrollRecordIntoView(_2)
return false},$ym:function(){var _0=this.keyboardClickField;if(_0==null)return 0;if(isc.isA.Number(_0)&&_0>0&&_0<this.fields.length)return _0;var _1=this.fields.find(this.fieldIdProperty,_0),_2=(_1?this.fields.indexOf(_1):0);return _2},$yk:function(_0){this.clearLastHilite();if(isc.isAn.Object(_0))_0=this.getRecordIndex(_0);if(!isc.isA.Number(_0)||_0<0)_0=0;if(_0>=this.data.getLength())_0=this.data.getLength()-1;this.body.$yn=_0;var _1=this.$ym();var _2=(this.body.selectionEnabled()&&this.recordIsEnabled(_0,_1));if(_2)this.selection.selectOnMouseDown(this,_0,_1);this.rowClick(this.getCellRecord(_0,_1),_0,_1,true);if(_2)this.selection.selectOnMouseUp(this,_0,_1);return false},$yj:function(){if(this.body.$yn!=null&&((this.body.$yn==this.body.lastOverRow)||(this.body.$yn==this.$yg)))
{return this.body.$yn}
delete this.body.$yn;return(this.selection.getSelectedRecord()||null)},$bn:function(){var _0=this.$yj();if(_0!=null){this.$yk(_0);return false}
return true},$yi:function(){var _0=this.$yj();if(_0!=null){var _1=this.$ym();this.rowDoubleClick(this.getCellRecord(_0,_1),_0,_1,true);return false}
return true},scrollRecordToTop:function(_0){return this.scrollRecordIntoView(_0,false)},scrollRecordIntoView:function(_0,_1){return this.scrollCellIntoView(_0,null,_1)},scrollColumnIntoView:function(_0,_1){return this.scrollCellIntoView(null,_0,_1)},scrollCellIntoView:function(_0,_1,_2){if(!this.body||!this.body.isDrawn()){this.logInfo("scrollCellIntoView() called before the body has been drawn.  Cell "+_0+","+_1+" will scrolled into view on draw().");this.$xs=[_0,_1];return}
if(_2==null)_2=true;var x,y,_3,_4,_5=this.body;if(_0!=null){if(!_5.virtualScrolling){y=_5.getRowTop(_0);_4=_5.getRowSize(_0)}else{_5.$vy=_0;if(_2){_5.$vz=-1*((_5.getViewportHeight()/2)-_5.cellHeight)}else{_5.$vz=0}
_5.$v0();return}}
if(_1!=null){x=_5.getColumnLeft(_1);_3=_5.getColumnWidth(_1)}
_5.scrollIntoView(x,y,_3,_4,_2)},bodyScrolled:function(_0,_1){this.syncHeaderScrolling(_0,_1);this.syncFilterEditorScrolling(_0,_1)},syncHeaderScrolling:function(_0,_1){if(_0!=null&&this.header){if(!this.isRTL()){if(_0!=this.header.getScrollLeft())this.header.scrollTo(_0)}else{var _2=this.header,_3=this.body,_4=_2.getScrollWidth()-_2.getViewportWidth(),_5=_4-_2.getScrollLeft(),_6=_3.getScrollWidth()-_3.getViewportWidth(),_7=_6-_0;if(_7!=_5){_2.scrollTo(_4-_7)}}}},headerScrolled:function(){this.syncBodyScrolling()},syncBodyScrolling:function(){var _0=this.header.getScrollLeft();if(this.body){if(!this.isRTL()){if(_0!=this.body.getScrollLeft())this.body.scrollTo(_0)}else{var _1=this.header,_2=this.body,_3=_1.getScrollWidth()-_1.getViewportWidth(),_4=_3-_1.getScrollLeft(),_5=_2.getScrollWidth()-_2.getViewportWidth(),_6=_5-_0;if(_6!=_4){_2.scrollTo(_5-_4)}}}},syncFilterEditorScrolling:function(_0,_1){if(this.$ya!=null&&this.$ya.body!=null&&this.$ya.body.getScrollLeft()!=_0)
{this.$ya.body.scrollTo(_0)}},$yl:function(_0){if(!isc.isA.Number(_0)){_0=this.getRecordIndex(_0)}
if(!isc.isA.Number(_0)||_0<0)_0=0;if(_0>=this.data.getLength())_0=this.data.getLength()-1;this.clearLastHilite();this.body.$yn=_0;this.body.lastOverRow=_0;this.body.lastOverCol=0;this.body.setRowStyle(_0)},clearLastHilite:function(){if(!this.body)return;this.body.$yn=null;var _0=this.body.lastOverRow;if(isc.isA.Number(_0)){delete this.body.lastOverRow;if(this.showRollOver&&!isc.Browser.isNav)this.body.setRowStyle(_0)}},$bp:function(_0,_1){this.Super("$bp",arguments);if(this.header!=null&&this.canTabToHeader)this.header.$bp(_0,false);if(this.body!=null)this.body.$bp(_0,false)},setAccessKey:function(_0){this.Super("setAccessKey",arguments)
if(this.body!=null)this.body.setAccessKey(_0)},setFocus:function(_0){if(this.body!=null)this.body.setFocus(_0)},recordClick:function(){},recordDoubleClick:function(){},makeFilterEditor:function(){this.$ya=isc.RecordEditor.create({top:this.getCanvasTop()-this.cellHeight,left:this.getCanvasLeft(),sourceWidget:this,ID:this.getID()+"$ya",actionType:"filter"});this.addPeer(this.$ya)},getFilterEditorValueMap:function(_0){return _0.filterEditorValueMap||_0.valueMap},getFilterEditorType:function(_0){return _0.filterEditorType||_0.editorType||_0.formItemType},getFilterEditorProperties:function(_0){return _0.filterEditorProperties},canEditCell:function(_0,_1){var _2=this.getCellRecord(_0,_1);if(_2!=null){if(!this.recordIsEnabled(_0,_1))return false;if(_2.$wo!=null)return false}
if(!this.isEditable()||this.getCellBooleanProperty("canEdit",_0,_1,(_2!=null?this.recordEditProperty:null))==false){return false}
return true},isEditable:function(){if(this.canEdit==false)return false;if(this.canEdit==true){var _0=this.getFields();for(var i=0;i<_0.length;i++){if(_0[i].canEdit!=false)return true}
return false}else{var _0=this.getFields();for(var i=0;i<_0.length;i++){if(_0[i].canEdit==true)return true}
return false}},setCanEdit:function(_0){if(_0==false){if(this.getEditRow()!=null)this.cancelEditing(isc.ListGrid.PROGRAMMATIC);this.canEdit=false}else{this.canEdit=_0}},setFieldCanEdit:function(_0,_1){if(isc.isA.String(_0))_0=this.getField(_0);if(_0==null||!this.completeFields.contains(_0)||_0.canEdit==_1)return;_0.canEdit=_1;if(this.$xn){var _2=this.getEditRow(),_3=_0[this.fieldIdProperty],_4=this.getColNum(_0);if(this.editByCell){if(!_1&&_4==this.getEditCol()){this.cancelEditing(isc.ListGrid.PROGRAMMATIC)}}else if(_4>=0){if(!_1&&_4==this.getEditCol()){var _5=this.$wm.getItem(_3),_6=_5.hasFocus;var _7=this.findNextEditCell(_2,_4,-1,true);if(_7==null||_7[0]!=_2)
_7=this.findNextEditCell(_2,_4,1,true);if(_7==null||_7[0]!=_2){this.cancelEditing(isc.ListGrid.PROGRAMMATIC);return}
this.startEditing(_7[0],_7[1],!_6)}
this.refreshCell(this.getEditRow(),_4)}}},handleEditCellEvent:function(_0,_1){if(_0<0||_1<0)return false;if(!this.canEditCell(_0,_1))return false;return this.startEditing(_0,_1)},startEditing:function(_0,_1,_2){var _3=(_0==null),_4=(_1==null);if(_3||_4){var _5=(_3?0:_0),_6=(_4?0:_1);var _7=this.findNextEditCell(_5,_6,1,(!_4),true);if(_7==null){this.logWarn("startEditing() passed bad cell coordinates:"+[_0,_1])}else{this.logInfo("startEditing() using derived coordinates:"+_7);_0=_7[0];_1=_7[1]}}
if(_0<0||_0>this.getTotalRows()){this.logInfo("startEditing() passed bad cell coordinates:"+[_0,_1]+", can't edit","gridEdit");return false}
if(!this.canEditCell(_0,_1)){this.logInfo("startEditing(): cell "+[_0,_1]+" is non editable. Returning.","gridEdit");return false}
if(this.$xn){this.$yo(isc.ListGrid.PROGRAMMATIC,this.getEditRow(),this.getEditCol(),this.getUpdatedEditorValue(),_0,_1)}else{this.$yb(_0,_1,_2)}
return true},$yo:function(_0,_1,_2,_3,_4,_5){var _6=this.getFieldName(_2),_7=this.$wm,_8=_7?_7.getItem(_6):null,_9=_8?!_8.$x4:true;if(_8){delete _8.$x4;if(this.$yp(_8,_1,_4,_5))
this.$yq(_8,_2)}
this.setEditValue(_1,_6,_3);if(_9&&!this.$yr(_0,_1,_2,_3)){if(_0==isc.ListGrid.EDIT_FIELD_CHANGE){var _10=this.getFieldName(_5);if(_8&&_7.getItem(_10).hasFocus)_8.focusInItem()}
return false}
var _11=(_4!=_1),_12=(_11&&this.shouldSaveOnRowExit(_1,_2,_0))||this.shouldSaveOnCellExit(_1,_2,_0),_13=!_12&&this.$ys()&&this.shouldValidateByCell(_1,_2,_0);if(_13){var _14=this.getEditValues(_1),_15=this.getRecord(_1),_16=!this.validateRowValues(_14,_15,_1,_2);if(this.stopOnErrors&&_16)return false}
if(_12){return this.$yt(_4,_5,_0)}else{this.$yb(_4,_5)}},$yp:function(_0,_1,_2,_3){if(!isc.Browser.isIE)return false;var _4=(isc.isA.PopUpTextAreaItem(_0)&&_0.$yu&&_0.$yv.hasFocus)||(_0.hasFocus&&isc.FormItem.$yw(_0));if(!_4)return false;if(!this.editByCell&&_2==_1)return false;var _5=this.getEditorType(this.getField(_3));return!(_5==null||isc.FormItem.$yw(_5,true))},$yb:function(_0,_1,_2){if(_0=="delayed"){var _3=this.$yx;if(_3==null)return;_0=_3[0];_1=_3[1]}else if(this.isDrawn()&&!this.body.readyToRedraw()){if(!this.$yx){isc.Timer.setTimeout(this.getID()+".$yb('delayed')",0)}
this.$yx=[_0,_1];return}
delete this.$yx;this.logInfo("Starting editing at row "+_0+", colNum "+_1,"gridEdit");if(this.$yy!=null)this.closeRecord();if(this.$xn){if(this.editByCell||(_0!=this.getEditRow())){this.hideInlineEditor(false,true)}}
var _4=(this.$yz==null)||this.getEditRow()!=_0||this.saveByCell;if(_4){this.$yz=this.$y0()}
if(this.getEditValues(_0)==null){var _5=this.$xn&&(this.getEditRow()==_0)
this.setEditValues(_0,{},_5)}
var _6=this.getCellRecord(_0,_1);if(this.selectOnEdit&&_6!=null)this.selection.selectSingle(_6);if(_6==null&&this.addNewBeforeEditing){this.$wl=_0;this.$x3=_1;var _7=this.shouldWaitForSave();var _8="this.$y1("+_7+","+_2+")";this.saveEdits(isc.ListGrid.PROGRAMMATIC,_8);if(_7)return;else{_0=this.$wl;_1=this.$x3}}
this.showInlineEditor(_0,_1,_2);if(_2){var _9=this.getFieldName(this.$x3),_10=this.$wm.getItem(_9);if(_10){_10.$x4=true}}
return true},$y1:function(_0,_1){var _2=this.$wl,_3=this.$x3,_4=this.getCellRecord(_2,_3);if(_4!=null&&_4!="loading"){var _5=this.getEditValues(_2);for(var i in _4){if(_4[i]!=null&&_5[i]==null){_5[i]=_4[i]}}}
if(_0)this.showInlineEditor(_2,_3,_1);else this.updateEditRow(_2)},editCell:function(_0,_1){return this.startEditing(_0,_1)},editField:function(_0,_1){var _2;if(isc.isA.Number(_0))_2=_0;else _2=this.fields.findIndex(this.fieldIdProperty,_0);if(_1==null){_1=this.getEditRow();if(_1==null){this.logWarn("editField(): unable to determine which row to edit - returning.","gridEdit");return}}
return this.startEditing(_1,_2)},showInlineEditor:function(_0,_1,_2){var _3=(_1!=this.$x3);if(this.$xn){if(_0!=this.getEditRow()||(this.editByCell&&_1!=this.getEditCol())){this.logWarn("Unexpected call to 'showInlineEditor' during another edit - cancelling previous edit","gridEdit");this.cancelEditing();this.startEditing(_0,_1);return}}
this.logDebug("showing inline editor at: "+[_0,_1]+", will focus: "+!_2,"gridEdit");var _4=this.body&&(!this.body.showAllColumns||!this.body.showAllRows);if(_4){this.scrollCellIntoView(_0,_1,false)}
if(!this.$xn){this.makeEditForm(_0,_1)}
this.$wl=_0;this.$x3=_1;this.$y2(_0,_1);if(this.body){var _5;if(!_4)_5=true;else{var _6=this.body,_7=_6.getRowTop(_0),_8=_6.getRowSize(_0),_9=_6.getScrollTop(),_10=_6.getViewportHeight();_5=(_7<_9)||(_7+_8>_9+_10)}
if(_5)this.scrollCellIntoView(_0,_1,false)}
if(!this.isDrawn())return;this.$y3();if(!_2){var _11=this.getFieldName(_1),_12=this.$wm.getItem(_11);if(_12!=null){if(isc.Browser.isMoz){var _13=this.body.getClipHandle(),_14=_13.scrollTop}
var _15=isc.EH.lastEvent;var _16=(isc.Browser.isIE&&_15.eventType==isc.EH.MOUSE_DOWN&&_15.target!=this.$wm);if(isc.Browser.isIE){var _17=isc.ListGrid.$y4;if(_17&&document.activeElement==_17.getItem("textItem").getFocusElement())
_16=true}
if(_16){this.$y5=isc.Timer.setTimeout(this.$wm.getID()+".focusInItem('"+_11+"');",0)}else{this.$wm.focusInItem(_11)}}else{this.logWarn("can't focus in field: "+_11)}
if(_3)
this.$x5(_0,_1,this.getEditDisplayValue(_0,_1))}},$y2:function(_0,_1){var _2=this.$xn;this.$xn=true;if(!this.isDrawn()||!this.body)return;var _3=(!_2&&_0>=this.data.getLength()&&this.body.getTableElement(_0,_1)==null);if(_3||this.body.isDirty()){this.body.redraw("Showing editor");return}
if(this.editByCell){this.refreshCell(_0,_1)}else{var _4=this.body.$cr,_5=this.body.$cs;for(var i=_4;i<=_5;i++){var _6=this.getFieldName(i),_7=this.$wm.getItem(_6),_8=(_2&&(_7.getFocusElement()!=null||_7.getDataElement()!=null)),_9=this.canEditCell(_0,i);if(_8!=_9)this.refreshCell(_0,i)}}},$y3:function(){if(!this.modalEditing){if(this.canHover)isc.Hover.clear();return}
if(!this.$wm.clickMaskUp()){this.$wm.showClickMask(this.getID()+".$y6()",!this.shouldWaitForSave(),this.$wm)}},shouldWaitForSave:function(){if(this.stopOnErrors&&!this.waitForSave){var _0="Note: ListGrid initialized with 'waitForSave' false, and 'stopOnErrors' true."+" In this case user input will be be blocked during save, to allow server side "+" errors to be determined before the editor is hidden. Setting 'waitForSave' to true.";if(this.waitForSave==false)this.logWarn(_0,"gridEdit");else this.logInfo(_0,"gridEdit");this.waitForSave=true}
return(this.waitForSave||this.stopOnErrors)},$y7:function(_0,_1){if(!this.isDrawn()||!this.body)return;var _2=this.body.showAllRows||(this.body.$cp<=_0&&this.body.$cq>=_0);if(_2){if(this.editByCell)this.$y8(_0,_1);else this.$y9(_0)
var _3=this.body.getDrawArea();for(var i=_3[2];i<=_3[3];i++){this.body.$wx(null,_0,i)}}
this.body.$wz();this.body.$qc("inline editor hidden/shown")},hideInlineEditor:function(_0,_1){if(!this.$xn)return false;this.$xn=null;var _2=this.$wl,_3=this.$x3;this.$wl=this.$x3=null;if(!_1)this.$wm.hideClickMask();if(!this.body)return true;var _4=this.$wm;if(_4.hasFocus){var _5=_4.getFocusItem();this.$wm.blurFocusItem();if(isc.Browser.isIE){_5.elementBlur()}}
if(!this.body.isDirty()&&!this.isDirty()){if(_2>=this.data.getLength())
this.body.markForRedraw("Editor Hidden");else
if(this.editByCell)this.refreshCell(_2,_3)
else this.refreshRow(_2)}
if(_0){this.$xr=true;this.body.focus()}
return true},$yq:function(_0,_1){if(isc.isA.TextItem(_0)||isc.isA.TextAreaItem(_0)||isc.isA.PopUpTextAreaItem(_0))
{var _2=isc.ListGrid.$y4;if(!_2){_2=isc.ListGrid.$y4=isc.DynamicForm.create({autoDraw:false,ID:this.getID()+"$y4",_generated:true,selectOnFocus:true,items:[{name:"textItem",type:"text",handleKeyEvent:function(_3){isc.EH.suppressNextKeyEvent=true;return false}}],width:1,height:1,overflow:isc.Canvas.HIDDEN})}
if(_2.parentElement!=this){if(_2.isVisible())_2.hide();this.addChild(_2)}
_2.moveTo(this.getColumnLeft(_1)-this.body.getScrollLeft(),this.headerHeight+this.getRowTop(this.getEditRow())
-this.body.getScrollTop());_2.moveBelow(this);_2.show();_2.getItem("textItem").focusInItem();_0.form.hasFocus=false}},makeEditForm:function(_0,_1){var _2=this.getCellRecord(_0,_1),_3=this.getEditRowItems(_2,_0,_1,this.editByCell),_4=this.getEditDisplayValues(_2,_0,_3);if(this.$wm!=null){this.$wm.setItems(_3);this.$wm.setValues(_4)}else{this.$wm=isc.DynamicForm.create(this.editFormDefaults,{grid:this,tabIndex:this.getTabIndex(),dataSource:this.dataSource,autoComplete:this.autoComplete,uniqueMatch:this.uniqueMatch,autoFocus:false,items:_3,values:_4})}
this.logDebug("$wm created with values:"+this.echo(this.$wm.getValues()),"gridEdit")},getEditDisplayValues:function(_0,_1,_2){var _3={};for(var i=0;i<_2.length;i++){var _4=_2[i][this.fieldIdProperty],_5=_2[i].colNum;_3[_4]=this.getEditDisplayValue(_1,_5,_0)}
return _3},getEditFormItemFieldWidths:function(_0){var _1=[];for(var i=0;i<this.fields.length;i++){_1[i]=this.body.getInnerColumnWidth(i)}
return _1},getEditorValueMap:function(_0,_1){return _0.editorValueMap||_0.valueMap},setEditorValueMap:function(_0,_1){var _2=this.getField(_0),_3=_2[this.fieldIdProperty];_2.editorValueMap=_1;if(this.$xn){var _4=this.getEditRow(),_5=this.getRecord(_4);this.$wm.setValueMap(_3,this.getEditorValueMap(_2,_5))}},getEditorType:function(_0,_1){var _2,_3=_0.editorProperties;if(_3!=null){_2=_3.editorType||_3.formItemType||_3.type}
if(_2==null)_2=_0.editorType||_0.formItemType;if(_2==null&&(_0.type=="text"||_0.type==null)&&_0.length>this.textAreaEditorThreshold)
{_2=this.longTextEditorType}
return _2},getEditorProperties:function(_0){return isc.addProperties({},this.editorProperties,_0.editorProperties)},getEditRowItems:function(_0,_1,_2,_3){var _4=this.body;if(_4==null)return[];var _5,_6,_7=this.getEditFormItemFieldWidths(_0),_8=[],_9=[];var _10;if(_3){_10=[this.getField(_2)]
_8[0]=_7[_2]}else{_10=[];var _11,_12;if(!_4.isDrawn()||_4.isDirty()){var _13=_4.getDrawArea();_11=_13[2];_12=_13[3]}else{_11=_4.$cr;_12=_4.$cs}
for(var i=_11;i<=_12;i++){_10.add(this.fields[i]);_8.add(_7[i])}}
for(var i=0;i<_10.length;i++){var _14=this.getEditItem(_10[i],_0,_1,_8[i])
if(_14==null)continue;_9[_9.length]=_14}
return _9},getEditItem:function(_0,_1,_2,_3){var _4={},_5=this.fields.indexOf(_0);var _6=_0[this.fieldIdProperty];_4[this.fieldIdProperty]=_6
_4.autoComplete=_0.autoComplete;_4.autoCompleteCandidates=_0.autoCompleteCandidates;_4.uniqueMatch=_0.uniqueMatch;_4.containerWidget=this.body;_4.width=_3;_4.textAlign=_0.align;_4.record=_1;_4.rowNum=_2;_4.colNum=this.getFieldNum(_6);_4.grid=this;_4.valueMap=this.getEditorValueMap(_0,this.getEditValues(_2));_4.editorType=this.getEditorType(_0);var _7=_4.editorType;if(_7=="date"||_7=="DateItem"||(_0.type=="date"&&_7==null))
{_4.editorType="date";_4.useTextField=true;_4.cellPadding=0;_4.iconHSpace=0}
if(_7=="popUpTextArea"||_7=="PopUpTextAreaItem"){_4.handleTextAreaKeyEvent=this.$xy;if(_4.popUpOnEnter==null)_4.popUpOnEnter=true}
if(_7=="checkbox"||_7=="CheckboxItem"||(_0.type=="boolean"&&_7==null))
{if(_4.showLabel==null)_4.showLabel=false}
_4.handleKeyEvent=this.$xy;_4.getFocusIconIndex=function(){var _8=this.$za();if(_8==null||this.icons==null)return null;for(var i=0;i<this.icons.length;i++){if(this.$zb(this.icons[i])==_8)return i}
return null}
_4.elementFocus=this.$x2;_4.canTabToIcons=false;var _9=this.getEditorProperties(_0);isc.addProperties(_4,_9);return _4},refreshCell:function(_0,_1,_2){if(!this.isDrawn()||!this.body)return;if(this.body.isDirty()){this.logDebug("refresh cell redrawing body","gridEdit");this.body.redraw("refresh cell");return false}
var _3=this.$wm,_4=(this.$xn&&_0==this.getEditRow()&&_3!=null),_5,_6,_7,_8;if(_4){var _9=this.getFieldName(_1);_5=_3.getItem(_9);_7=(_5&&(_5.getElement()!=null));_8=this.canEditCell(_0,_1);_6=(_5!=null&&_3.hasFocus&&_3.getFocusItem()==_5)}
if(_6&&_7&&_8){this.logWarn("not rewriting focused edit cell "+[_0,_1],"gridEdit");return}
if(_7){this.$zc();if(_5!=null&&_6){if(_8)_3.$xo();else _5.blurItem()}}
this.$y8(_0,_1);if(_8){if(_5)_5.setValue(this.getEditDisplayValue(_0,_1));if(_6)_3.$xq(_5)}},$zc:function(){if(!this.$xn)return;var _0=this.$wm;if(_0==null)return;var _1=_0.getFocusItem();if(_1==null)return;_1.updateValue()},refreshRow:function(_0){if(!this.body||!this.isDrawn())return;if(this.body.isDirty())return this.body.redraw("refresh row");if(this.$xn&&this.$wm!=null){this.logInfo("refresh row: "+_0,"gridEdit")}
var _1=this.body.$cr,_2=this.body.$cs;for(var i=_1;i<=_2;i++){this.refreshCell(_0,i,true)}},$y8:function(_0,_1){if(!this.body)return;return this.body.refreshCell(_0,_1)},startEditingNew:function(_0,_1){var _2=this.body.getTotalRows();if(_0!=null)this.setEditValues(_2,isc.addProperties({},_0),true);var _3=this.findNextEditCell(_2,0,1,true,true,true);this.startEditing(_3[0],_3[1],_1)},updateEditRow:function(_0){if(this.$wl!=_0||!this.$wm){return}
this.$wm.setItemValues();delete this.$wm.$xp;this.$wm.$zd=false},shouldFixRowHeight:function(_0,_1){if(this.canEdit!=false&&this.$xn&&_1==this.$wl){return false}
return this.fixedRecordHeights},$y0:function(){if(this.$ze==null)this.$ze=isc.timeStamp();return this.$ze++},$y6:function(){var _0=this.getEditFieldName(),_1=this.$wm.getValue(_0);_1=this.$x1(_1,this.getField(_0),this.getEditRow(),this.getEditCol());this.cellEditEnd(isc.ListGrid.CLICK_OUTSIDE,_1)},getEditDisplayValue:function(_0,_1,_2){var _3;if(_2===_3)_2=this.getCellRecord(_0,_1);var _4=this.getFieldName(_1),_5=this.getEditValue(_0,_4);if(_5===_3&&_2!=null){_5=this.getRawCellValue(_2,_0,_1)}
_5=this.$zf(_5,_2,_0,_1);return _5},$zf:function(_0,_1,_2,_3){var _4=this.fields[_3];if(_4&&_4.formatEditorValue!=null){Function.replaceStringWithMethod(_4,"formatEditorValue","value,record,rowNum,colNum,grid");_0=_4.formatEditorValue(_0,_1,_2,_3,this)}else if(this.formatEditorValue!=null){_0=this.formatEditorValue(_0,_1,_2,_3)}
return _0},getEditValuesID:function(ID){if(ID==null||this.$yc==null)return null;if(isc.isA.String(ID)&&this.$yc[ID]!=null)return ID;if(isc.isA.Number(ID))return this.$zg[ID];for(var i in this.$yc){if(this.comparePrimaryKeys(this.$yc[i].$zh,ID)){return this.$yc[i]}}
return null},$zi:function(_0){if(this.$yc==null)return null;if(!isc.isA.String(_0))_0=this.getEditValuesID(_0);return this.$yc[_0]},$zj:function(_0){if(!isc.isAn.Object(_0))_0=this.$zi(_0);return(_0!=null?_0.$bg:null)},getEditValues:function(_0){var _1=this.$zi(_0);return _1!=null?_1.$yd:null},rememberSubmittedEditValues:function(_0){var _1=this.$zi(_0);if(_1!=null){_1.$zk=isc.addProperties({},_1.$yd)}},getSubmittedEditValues:function(_0){var _1=this.$zi(_0);return _1!=null?_1.$zk:null},createEditValues:function(_0){var _1=this.body.getTotalRows();this.setEditValues(_1,_0);return this.getEditValuesID(_1)},setEditValues:function(_0,_1,_2){if(_1==null)_1={};var _3,_4,_5;if(!_2){_3=this.getEditValues(_0);_4=isc.addProperties({},_3,_1);_5=this.getTotalRows()}
this.$zl(_0,_1);if(_2)return;var _6=(this.body&&(_5!=this.getTotalRows()||this.body.isDirty())),_7=(this.$xn&&this.getEditRow()==_0&&this.$wm!=null);if(_6){if(_7)this.$zm(_0);this.body.markForRedraw()}else{for(var i in _4){var _8=this.getFieldNum(i),_9=(_7?this.$wm.getItem(i):null),_10=_9&&this.canEditCell(_0,_8);if(_9!=null)_9.setValue(this.getEditDisplayValue(_0,_8));if(!_9||!_10)this.refreshCell(_0,_8)}}},$zm:function(){if(!this.$wm)return;var _0=this.getEditRow(),_1=this.$wm.getItems();for(var i=0;i<_1.length;i++){var _2=_1[i],_3=this.getEditDisplayValue(_0,_2.colNum);_2.setValue(_3)}},$zl:function(_0,_1,_2){var _3=this.getRecord(_0);var _4=this.$zi(_0)||this.$zn(_0,_3,_2);if(this.dataSource!=null){if(_3!=null&&_3!="loading"){var _5=isc.DataSource.getDataSource(this.dataSource),_6=_5.getPrimaryKeyFieldNames();for(var i=0;i<_6.length;i++){_1[_6[i]]=_3[_6[i]]}}else{_4.$zo=true}}else{if(_3==null)_4.$zo=true}
for(var i in _4.$yd){delete _4.$yd[i]}
for(var i in _1){_4.$yd[i]=_1[i]}
if(this.$zp==null||_0>=this.$zp)this.$zp=_0},$zn:function(_0,_1,_2){var _3={};if(_1!=null&&_1!="loading")
_3.$zh=this.getPrimaryKeys(_1);_3.$bg=_0;_3.$yd={};if(this.$yc==null)this.$yc={};if(this.$zg==null)this.$zg={};if(_2==null){if(this.$zq==null)this.$zq=0;_2="_"+this.$zq++}
this.$yc[_2]=_3;this.$zg[_0]=_2;return _3},setEditValue:function(_0,_1,_2,_3,_4){var _5=this.$zr(_0,_1,_2,_4);if(!_5||_3)return;if(!isc.isA.Number(_0))_0=this.$zj(_0);var _6=this.getColNum(_1);if(_0==null||_6==null||_6<0)return
var _7=(this.$xn&&this.getEditRow()==_0?this.$wm.getItem(_1):null),_8=_7&&this.canEditCell(_0,_6);if(_7!=null){var _2=this.getEditDisplayValue(_0,_6);this.logInfo("setEditValue: updating element value on field: "+_1+" to: "+isc.Log.echo(_2),"gridEdit");_7.setValue(_2)}
if(!_7||!_8)this.refreshCell(_0,_6)},$zr:function(_0,_1,_2,_3){var _4=this.getEditValue(_0,_1),_5=this.getFieldNum(_1),_6;if(_4===_6){_4=this.getCellRecord(_0,_5)?this.getCellRecord(_0,_5)[_1]:null}
if(_4==_2)return false;var _7=this.getEditValues(_0);if(_7==null){this.logInfo("creating new edit values for row: "+_0);this.setEditValues(_0,{},true);_7=this.getEditValues(_0)}
if(_2===_6)delete _7[_1];else _7[_1]=_2;if(!_3)this.$zs(_0,_5,_2,_4);return true},getEditValue:function(_0,_1){var _2=this.getEditValues(_0);if(_2==null)return;if(isc.isA.Number(_1))_1=this.fields[_1][this.fieldIdProperty];return _2[_1]},clearEditValue:function(_0,_1,_2,_3){var _4=this.$zi(_0);if(_4==null)return;var _5=_4.$yd,_6=_4.$zk,_7=_4.$zt,_8=_7&&_7[_1],_9=_4.$bg;if(_5!=null){delete _5[_1];if(_6)delete _6[_1];if(_7!=null)delete _7[_1];if(!_3&&isc.isAn.emptyObject(_5)){this.logDebug("no edit values left for row, discarding editContext","gridEdit");return this.$zu(_0,_2)}}
if(_2||_9==null)return;var _10=this.getColNum(_1);if(_10==null||_10<0)return;var _11=(this.$xn&&this.getEditRow()==_9?this.$wm.getItem(_1):null),_12=_11&&this.canEditCell(_9,_10);if(_11!=null){var _13=this.getEditDisplayValue(_9,_10);this.logInfo("setting element value on field: "+_1+" to "+_13,"gridEdit");_11.setValue(_13)}
if(!_11||!_12){this.refreshCell(_9,_10)}else if(_8){if(_8)this.body.refreshCellStyle(_9,_10)}},$zu:function(_0,_1){if(_0==null){return}
if(!isc.isA.String(_0))_0=this.getEditValuesID(_0);var _2=this.$zi(_0);if(_2==null)return;var _3=_2.$bg;if(_3!=null)delete this.$zg[_3];var _4=this.$yc[_0];delete this.$yc[_0];if(_3!=null&&_2.$zo){var _5=this.$zp,_6=this.getEditRow();for(var i=_3+1;i<=_5;i++){var _7=this.$zi(i);var _8=_7.$bg;_7.$bg=i-1;this.$zg[i-1]=this.$zg[i];delete this.$zg[i]}
if(_6!=null&&_6>_3)this.$wl-=1;delete this.$zp;if(!_1){if(this.$xn&&_6>this.data.getLength()){this.hideInlineEditor()}
this.body.markForRedraw("clear edit values, remove row")}}else if(_3!=null&&!_1){var _9=this.$xn&&_6==_3,_10=this.getRecord(_3),_11=_4.$yd,_12=_4.$zt;for(var i in _11){var _13=this.getColNum(i);if(_13<0)continue;var _14=_9?this.$wm.getItem(i):null,_15=_14!=null&&this.canEditCell(_3,_13);if(_14!=null){_14.setValue(i,_10[i])}
if(!_14||!_15)this.refreshCell(_3,_13);else if(_12[i])this.body.refreshCellStyle(_3,_13)}}},newRecordForEditValues:function(_0,_1){var _2=this.$zi(_0);if(_2==null)return;var _3=_2.$bg,_4=this.getEditRow();var _5=(_1!=_3);if(_5){if(this.$xn&&this.getEditRow()>=_1&&this.getEditRow()<_3)
{var _6=this.getEditFieldName(),_7=this.$wm;if(this.$xn&&_7!=null){var _8=this.$x1(_7.getValue(_6),this.getField(_6),_4,this.getEditCol());this.setEditValue(_4,_6,_8,true,true)}}}
this.$zu(_0,true);this.$x9(_4==_3);this.$zl(_1,_2.$yd,_0);var _9=(_4==_3&&_1!=_4);if(_9){this.logInfo("newRecord, moving editor to row: "+_1,"gridEdit");this.$zv(_1)}
if(_5)this.body.redraw("new record saved")},$x9:function(_0){delete this.$zp;delete this.$zw;if(this.$yc==null)return;var _1=this.getEditRow(),_2=false;var _3=this.data.getLength(),_4={};var _5=isc.getKeys(this.$yc);for(var i=0;i<_5.length;i++){var _6=_5[i],_7=this.$yc[_6],_8=_7.$zh;var _9;if(_8==null){_9=_3;this.$zp=_3;_3++}else{var _10=_7.$yd,_11=false,_12;for(var _13 in _10){if(_10[_13]!=_8[_13]||_8[_13]===_12)_11=true}
if(!_11&&_7.$bg!=null&&this.$wl!=_7.$bg)
{this.logDebug("dropping empty editSession","gridEdit");delete this.$yc[_6];continue}
_9=this.findRowNum(_8)}
if(_9>=0){if(_1!=null&&_1==_7.$bg)
{_2=true;if(!_0){this.logInfo("remapEditRows: editSession: "+_6+" with values: "+this.echo(_7.$yd)+" was being edited at row: "+_1+", will now edit at row: "+_9,"gridEdit");this.$zv(_9)}}
_4[_9]=_6;_7.$bg=_9}else{if(!this.dataSource||(isc.isA.ResultSet(this.data)&&this.data.allRowsCached()))
{isc.warn("Record:"+this.echo(_8)+", is no longer present in this List.<br>"+"Clearing edit values for this record.");delete this.$yc[_6]}else{this.logWarn("Record:"+this.echo(_8)+", lost from local cache in paged "+"result set. Pending edits for this record will be maintained.");delete _7.$bg;this.$zw=true}}}
this.$zg=_4;if(_1!=null&&!_2&&!_0){this.hideInlineEditor(true)}},findRowNum:function(_0){return this.data.indexOf(_0)},$zv:function(_0){if(this.$xn){var _1=this.$wl;this.$wl=_0;var _2=this.$wm,_3=_2?_2.getItems():null;if(_3){for(var i=0;i<_3.length;i++){_3[i].rowNum=_0}}}},rowEditNotComplete:function(_0){return(this.$zg!=null&&this.$zg[_0]!=null)},cellHasValidationErrors:function(_0,_1){if(!this.rowEditNotComplete(_0))return false;var _2=(isc.isA.String(_1)?_1:this.getFieldName(_1)),_3=this.$zi(_0).$zt;return(_3!=null&&_3[_2]!=null)},getRowValidationErrors:function(_0){var _1=this.$zi(_0);return(_1!=null?_1.$zt:null)},getCellValidationErrors:function(_0,_1){var _2=this.$zi(_0);if(_2==null)return null;if(isc.isA.Number(_1))_1=this.getFieldName(_1);var _3=_2.$zt;return(_3==null?null:_3[_1])},$zx:function(_0,_1,_2){var _3=this.$zi(_0);if(_3==null)_3=this.setUpEditValues(_0);var _4;if(isc.isA.Number(_1))_4=this.getFieldName(_1);else _4=_1;if(_3.$zt==null)_3.$zt={};_3.$zt[_4]=_2},$zy:function(_0,_1){var _2=this.getFieldName(_1);if(!this.cellHasValidationErrors(_0,_2))return;var _3=this.$zi(_0);delete _3.$zt[_2];this.hideValidationErrors(_0,_1)},$zz:function(_0){var _1=this.$zi(_0);if(_1==null)return;for(var i=0;i<this.getFields().length;i++){this.$zy(_0,i)}
if(_1.$zt!=null)delete _1.$zt},$zs:function(_0,_1,_2,_3){var _4=this.getRecord(_0);if(this.editorChange!=null)this.editorChange(_4,_2,_3,_0,_1);var _5=this.getFieldName(_1);if(this.editValueChanged!=null)
this.editValueChanged(_0,_5,_2,_3);if(this.$xn&&_0==this.getEditRow()){var _4=isc.addProperties({},this.getEditValues(_0),this.getRecord(_0)),_6=!this.editByCell?this.fields:[this.getEditField()];for(var i=0;i<_6.length;i++){var _7=_6[i],_8=this.$wm.getItem(_7[this.fieldIdProperty]);if(_8==null)continue;var _9=this.getEditorValueMap(_7,_4);if(_8.valueMap!=_9)_8.setValueMap(_9)}}},getEditRow:function(){return this.$wl},getEditCol:function(){return this.$x3},getEditField:function(){return this.getField(this.getEditCol())},getEditFieldName:function(){return this.getFieldName(this.getEditCol())},getEditRecord:function(){return this.getCellRecord(this.getEditRow(),this.getEditCol())},cancelEditing:function(_0){if(_0==null)_0=isc.ListGrid.PROGRAMMATIC;this.$z0(this.$yz,_0)},cellEditEnd:function(_0,_1){var _2;if(_1===_2)_1=this.getUpdatedEditorValue();var _3=this.getEditRow(),_4=this.getEditCol();var _5=this.getFieldName(_4),_6=this.shouldCancelEdit(_3,_4,_0);if(_6)return this.cancelEditing(_0);var _7=this.getNextEditCell(_3,_4,_0);this.clearNewEditCell();if(_7==null){this.logInfo("cellEditEnd: ending editing","gridEdit");this.$z1(_0);return}
if(Array.isLoading(this.getCellRecord(_7[0],_7[1]))){return false}
this.$yo(_0,_3,_4,_1,_7[0],_7[1])},getUpdatedEditorValue:function(){if(!this.$xn)return;var _0=this.$wm.getItem(this.getEditFieldName()),_1=this.getEditField(),_2;if(_0){_0.updateValue();_2=_0.getValue();return this.$x1(_2,_1,this.getEditRow(),this.getEditCol())}else{return this.getEditDisplayValue(this.getEditRow(),this.getEditCol())}},$yr:function(_0,_1,_2,_3){var _4=this.getCellRecord(_1,_2),_5=this.getFieldName(_2),_6=this.getField(_2),_7=true;var _8=this.$wm.getItem(_5);if(isc.isA.PopUpTextAreaItem(_8))_8.hidePopUp();if(_6&&_6.editorExit!=null){Function.replaceStringWithMethod(_6,"editorExit","editCompletionEvent,record,newValue,rowNum,colNum,grid");_7=_6.editorExit(_0,_4,_3,_1,_2,this)!=false}
if(_7&&this.editorExit!=null)
_7=this.editorExit(_0,_4,_3,_1,_2)!=false;return _7},$x5:function(_0,_1,_2){var _3=this.getCellRecord(_0,_1),_4=this.getFieldName(_1),_5=this.getField(_1),_6=true;var _7=this.$wm.getItem(_4);if(isc.isA.PopUpTextAreaItem(_7)&&_7.popUpOnEnter){_7.showPopUp(true)}
if(_5.editorEnter!=null){Function.replaceStringWithMethod(_5,"editorEnter","record,value,rowNum,colNum,grid");_6=_5.editorEnter(_3,_2,_0,_1,this)!=false}
if(_6&&this.editorEnter!=null)
_6=this.editorEnter(_3,_2,_0,_1)!=false;return _6},$ys:function(){var _0=isc.DS.get(this.dataSource);return this.validateOnChange&&!(_0&&_0.useLocalValidators!=null&&_0.useLocalValidators==false)},shouldSaveOnCellExit:function(_0,_1){if(this.getCellRecord(_0,_1)==null)return false;return(this.saveByCell!=null?this.saveByCell:this.editByCell)},shouldSaveOnRowExit:function(_0,_1){return true},shouldValidateByCell:function(_0,_1){return(this.validateByCell!=null?this.validateByCell:this.editByCell)},shouldCancelEdit:function(_0,_1,_2){if(_2==isc.ListGrid.ESCAPE_KEYPRESS)return true;return false},$z0:function(_0,_1,_2){if(this.$yz!=_0)return;if(this.confirmCancelEditing){if(_2==null){var _3=this.getID()+".$z0('"+_0+"','"+_1+"',value);";isc.ask(this.cancelEditingConfirmationMessage,null,_3);var _4=isc.Dialog.Warn.toolbar.getButton(0);if(_4.isDrawn())_4.focus()
else isc.Timer.setTimeout(_4.getID()+".focus()",0);return}else if(_2==false)return}
if(!this.$yr(_1,this.getEditRow(),this.getEditCol(),this.getUpdatedEditorValue()))
{return}
var _5=[],_6=this.$wl,_7=this.getEditValues(this.$wl),_8=this.body.getDrawArea(),_9=_8[2],_10=_8[3],_11;if(_7!=null){for(var i=_9;i<=_10;i++){if(_7[this.getFieldName(i)]!==_11&&((this.editByCell&&this.$x3!=i)||!this.canEditCell(_6,i)))
{_5.add(i)}}
this.$zu(this.$wl,true)}
this.hideInlineEditor(true);for(var i=0;i<_5.length;i++){this.refreshCell(_6,_5[i])}},endEditing:function(){if(this.getEditRow()!=null)this.$z1(isc.ListGrid.PROGRAMMATIC)},$z1:function(_0){var _1=this.getEditRow(),_2=this.getEditCol(),_3=this.getUpdatedEditorValue();if(!this.$yr(_0,_1,_2,_3))return;var _4=this.shouldWaitForSave(),_5;if(_4)_5="if (this.$yz == "+this.$yz+") "+"this.hideInlineEditor(true);";this.saveEdits(_0,_5);if(!_4)this.hideInlineEditor(true)},saveAndEditNewCell:function(_0,_1,_2){if(_2==null)_2=isc.ListGrid.PROGRAMMATIC;this.$yt(_0,_1,_2)},$yt:function(_0,_1,_2){var _3=this.shouldWaitForSave(),_4;if(_3){_4="if(this.$yz=="+this.$yz+")"+"this.$yb("+_0+","+_1+");"}
this.saveEdits(_2,_4);if(!_3){this.$yb(_0,_1)}},$z2:function(_0,_1){var _2=this.getEditRow(),_3=this.getEditCol(),_4=isc.ListGrid.PROGRAMMATIC,_5=this.findNextEditCell(_2,_3,_0,_1,false);this.$yt(_5[0],_5[1],_4)},saveAndEditNextCell:function(){this.$z2(1,true)},saveAndEditPreviousCell:function(){this.$z2(-1,true)},saveAndEditNextRow:function(){this.$z2(1,false)},saveAndEditPreviousRow:function(){this.$z2(-1,false)},getNextEditCell:function(_0,_1,_2){switch(_2){case isc.ListGrid.CLICK_OUTSIDE:case isc.ListGrid.ESCAPE_KEYPRESS:return null;case isc.ListGrid.ENTER_KEYPRESS:var _3=this.getField(_1),_4=_3.enterKeyEditAction||this.enterKeyEditAction;if(_4=="done")return null;else if(_4=="nextCell")
return this.findNextEditCell(_0,_1,1,true,false);else if(_4=="nextRow")
return this.findNextEditCell(_0,_1,1,false,false);else if(_4=="nextRowStart"){var _5=this.listEndEditAction;if(_0+1<this.getTotalRows()||_5=="next"){return this.findNextEditCell(_0+1,0,1,true,true)}else{if(_5=="stop")return[_0,_1];return null}}
case isc.ListGrid.EDIT_FIELD_CHANGE:case isc.ListGrid.PROGRAMMATIC:return this.getNewEditCell();case isc.ListGrid.UP_ARROW_KEYPRESS:return this.findNextEditCell(_0,_1,-1,false,false);case isc.ListGrid.DOWN_ARROW_KEYPRESS:return this.findNextEditCell(_0,_1,1,false,false);case isc.ListGrid.TAB_KEYPRESS:var _3=this.getField(_1);if(_3.nextTabColNum!=null){return this.findNextEditCell(_0+1,_3.nextTabColNum,1,true,true)}else
return this.findNextEditCell(_0,_1,1,true,false);case isc.ListGrid.SHIFT_TAB_KEYPRESS:var _3=this.getField(_1)
if(_3.previousTabColNum!=null){return this.findNextEditCell(_0-1,_3.previousTabColNum,-1,true,true)}else
return this.findNextEditCell(_0,_1,-1,true,false)}
this.logWarn("getNextEditCell(): Passed unrecognized editCompletionEvent type:"+_2+", returning null");return null},findNextEditCell:function(_0,_1,_2,_3,_4,_5){var _6=_0,_7=_1,_8,_9=this.getFields().length;_8=((this.listEndEditAction=="next"||_5)?this.getTotalRows():this.getTotalRows()-1);if(_6>this.getTotalRows())_8=_6;if((_4!=false||_2==0)&&_6<=_8&&_6>=0&&_7<_9&&_7>=0&&this.canEditCell(_6,_7))return[_6,_7];if(_2==0)return null;var _10=this.canEditCell(_6,_7),_11=0;if(_3){var _12=this.rowEndEditAction;while(_6<(_8+1)&&_6>=_11){_7+=_2;if(_12=="same"&&_1==_7){return _10?[_0,_1]:null}
if(_7<0||_7>=_9){if(_12=="done")return null;if(_12=="stop")return(_10?[_0,_1]:null)
else{_7=(_2>0?-1:_9);if(_12=="next")_6+=_2}}else if(this.canEditCell(_6,_7)){return[_6,_7]}}
if(this.listEndEditAction=="stop")return[_0,_1];else return null}else{_6+=_2
while(_6>=_11&&_6<=_8){if(this.canEditCell(_6,_7)){return[_6,_7]}
_6+=_2}
if(this.listEndEditAction=="stop")return[_0,_1];return null}},setNewEditCell:function(_0,_1){this.$z3=[_0,_1]},getNewEditCell:function(){if(this.canEditCell(this.$z3[0],this.$z3[1]))return this.$z3;return null},clearNewEditCell:function(){this.$z3=null},saveEdits:function(_0,_1){if(_0==null)_0=isc.ListGrid.PROGRAMMATIC;var _2=this.getEditRow(),_3=this.getEditCol();if(_2==null||_3==null)return;if(this.$xn){var _4=this.getEditFieldName(),_5=this.getField(_3),_6=this.$wm,_7=this.$x1(_6.getValue(_4),_5,this.getEditRow(),this.getEditCol());this.setEditValue(this.getEditRow(),_4,_7,true)}
var _8=this.getEditValues(_2),_9=this.getCellRecord(_2,_3),_10=this.getEditValuesID(_2);var _11;if(_9!=null&&_9!=Array.LOADING){if(isc.isA.Tree(this.data)){_11=this.data.getCleanNodeData(_9)[0]}else{_11=isc.addProperties({},_9)}}
var _12={rowNum:_2,colNum:_3,oldValues:_11,editValuesID:_10,values:_8,editCompletionEvent:_0};if(this.logIsDebugEnabled("gridEdit")){this.logDebug("change detection: newValues: "+this.echo(_8)+", oldValues: "+this.echo(_11),"gridEdit")}
var _13=false,_14=isc.addProperties({},_11,this.getSubmittedEditValues(_2));for(var _15 in _8){var _16=_14[_15],_17=_8[_15];if(_16!=_17){_13=true;break}}
if(!_13){this.logInfo("saveEdits: no actual change, not saving","gridEdit");this.$z4(_1,_2,_3,_0);return}
if(this.$ys()){var _18=(_11!=null?isc.getKeys(_8):this.getFields().getProperty(this.fieldIdProperty));if(!this.validateRowValues(_8,_11,_2,_18)){this.$z5(_12,!this.stopOnErrors?_1:null);return false}}
this.logInfo("Saving newValues '"+isc.Log.echoAll(_8)+"'","gridEdit");this.rememberSubmittedEditValues(_2);_8=isc.addProperties({},_8);this.saveEditedValues(_2,_3,_8,_11,_10,_0,_1);return true},$x1:function(_0,_1,_2,_3,_4){var _5;if(_4===_5)_4=this.getCellRecord(_2,_3);if(_1&&_1.parseEditorValue!=null){Function.replaceStringWithMethod(_1,"parseEditorValue","value,record,rowNum,colNum,grid");_0=_1.parseEditorValue(_0,_4,_2,_3,this)}else if(this.parseEditorValue!=null){_0=this.parseEditorValue(_0,_4,_2,_3)}
return _0},saveEditedValues:function(_0,_1,_2,_3,_4,_5,_6){var _7={editValuesID:_4,rowNum:_0,colNum:_1,values:_2,oldValues:_3,editCompletionEvent:_5};if(!this.dataSource)return this.$z6(_7,_6);var _8={newValues:_2,editInfo:_7,operation:this.saveOperation,application:this.application,afterFlowCallback:this.getID()+".$z7(transaction)",willHandleError:true,successfulSaveCallback:_6,showPrompt:this.shouldWaitForSave()};var _9=isc.addProperties({},_3,_2);var _10=isc.DS.get(this.dataSource);if(_3==null){_10.insertRecord(_9,_8)}else{_10.updateRecord(_9,_8)}},$z6:function(_0,_1){var _2=_0.rowNum,_3=_0.colNum,_4=_0.oldValues,_5=_0.values;var _6=this.getCellRecord(_2,_3),_7=(_6==null);if(_7){var _8=this.getData();_8.add(_5);_8.dataChanged()}else{var _9,_10;for(var i=0;i<this.fields.length;i++){_9=_5[this.fields[i][this.fieldIdProperty]];if(_9!==_10)this.setRawCellValue(_6,_2,i,_9)}}
var _10;if(this.sortFieldNum!=null&&_5[this.sortFieldNum]!==_10&&(_4==null||_5[this.sortFieldNum]!=_4[this.sortFieldNum]))
{this.unsort()}
this.$z8(_0,_1)},$z7:function(_0){var _1=_0.results,_2=_0.context,_3=_2.editInfo,_4=_3.colNum,_5=this.fields[_4];var _6=this.$zi(_3.editValuesID),_7=_3.rowNum=_6.$bg;if(_1.status<0){var _8=_1.errors;this.showValidationErrors(_7,_8);if(isc.isAn.Array(_8))_8=_8[0];this.$z5(_3,null,_0);return false}
this.$z8(_3,_2.successfulSaveCallback,_0)},$z8:function(_0,_1,_2){var _3=_0.rowNum,_4=_0.colNum,_5=_0.values,_6=_0.oldValues,_7=_0.editValuesID,_8=_0.editCompletionEvent,_9=this.getCellRecord(_3,_4),_10=this.getCellField(_3,_4);for(var _11 in _5){if(_5[_11]==this.getEditValue(_7,_11))
this.clearEditValue(_7,_11)}
if(this.convertToMethod("editComplete")){this.editComplete(_3,_4,_5,_6,_8,_2)}
for(var i in _5){var _12=(_6==null?null:_6[i]);if(_5[i]==_12)continue;var _13=this.fields.find(this.fieldIdProperty,i);this.$z9(_9,_13,_5[i],_12,_3,this.fields.indexOf(_13))}
this.$z4(_1,_3,_4,_8)},$z4:function(_0,_1,_2,_3){if(_0!=null){this.fireCallback(_0,"rowNum,colNum,editCompletionEvent",[_1,_2,_3])}},$z9:function(_0,_1,_2,_3,_4,_5){if(_1&&_1.cellChanged){if(!isc.isA.Function(_1.cellChanged)){Function.replaceStringWithMethod(_1,"cellChanged","record,newValue,oldValue,rowNum,colNum,recordNum,fieldNum")}
var _6=[_0,_2,_3,_4,_5,_4,_5];_1.cellChanged.apply(this,_6)}else if(this.cellChanged){this.cellChanged(_0,_2,_3,_4,_5,_4,_5)}},$z5:function(_0,_1,_2){var _3=_0.rowNum,_4=_0.colNum,_5=_0.values,_6=_0.oldValues,_7=_0.editCompletionEvent;if(this.convertToMethod("editFailed")){this.editFailed(_3,_4,_5,_6,_7,_2)}
if(_1!=null){this.fireCallback(_1,"rowNum,colNum,editCompletionEvent",[_3,_4,_7])}},editFailed:function(_0,_1,_2,_3,_4,_5){if(_5!=null&&_5.results!=null&&_5.results.errors==null){isc.RPCManager.handleError(_5)}},validateRowValues:function(_0,_1,_2,_3){var _4=true,_5={};if(!isc.isAn.Array(_3))_3=[_3];if(_1==null)_1={};for(var i=0;i<_3.length;i++){var _6=_3[i],_7;if(isc.isA.Number(_6)){_7=_6;_6=this.getFieldName(_7)}else{_7=this.getFields().findIndex(this.fieldIdProperty,_6)}
if(_7<0)continue;this.$zy(_2,_7);var _8=_0[_6],_9=_1[_6],_10=this.validateCellValue(_2,_7,_8,_9);if(_10!=null){_4=false;_5[_6]=_10}}
if(!_4){this.showValidationErrors(_2,_5)}
return _4},validateCellValue:function(_0,_1,_2,_3){var _4=this.getCellRecord(_0,_1);var _5=this.getField(_1);return this.validateFieldValue(_2,_3,_4,_5,_0,_1)},validateFieldValue:function(_0,_1,_2,_3,_4,_5){if(!this.processValidator){if(!isc.DynamicForm)return false;this.processValidator=isc.DynamicForm.getInstanceProperty("processValidator")}
var _6=[],_7=true;if(_3.required&&(_0==null||_0=="")){var _8=_3.title+" is a required field.";_6.add({errorMessage:_8});_7=false}
if(_3.validators){if(!isc.isAn.Array(_3.validators)){_3.validators=[_3.validators]}
for(var i=0;i<_3.validators.length;i++){var _9=_3.validators[i];if(!_9||_9.serverOnly)continue;var _10=this.processValidator(_3,_9,_0);if(_10!=true){_7=false;_6.add(_9)}}}
if(_7)return null
else return _6},showValidationErrors:function(_0,_1){if(_1==null)return;for(var i in _1)
this.logWarn("Validation failed for field:"+i+" - errors:"+isc.Log.echoAll(_1[i]));var _2=false,_3="Validation Errors occurred:\r\n";for(var _4 in _1){if(_4=="recordPath")continue;var _5=_1[_4],_6,_7=this.fields.find(this.fieldIdProperty,_4).title||_4;if(isc.isAn.Array(_5)){var _8=false;for(var j=0;j<_5.length;j++){_6=_5[j].errorMessage||_5[j].defaultErrorMessage;if(_6!=null){if(!_8){_8=true;_3+="\r\nField '"+_7+"':"}
_3+="\r\n* "+_6;_2=true;_6=null}}}else{_6=_5.errorMessage||_5.defaultErrorMessage;if(_6!=null){_3+="\r\nfield '"+_4+"':\r\n* "+_6;_2=true}}}
if(_2){this.displayRowValidationErrorMessages(_3)}
var _9,_10="recordPath";for(var _11 in _1){if(_11==_10)continue;if(_9==null)_9=_11;if(!isc.isAn.Array(_1[_11]))_1[_11]=[_1[_11]];var _12=this.getFields().findIndex(this.fieldIdProperty,_11);this.$zx(_0,_12,_1[_11]);var _13;for(var i=0;i<_1[_11].length;i++){_13=_1[_11][i].suggestedValue;if(_13!=null){this.setEditValue(_0,_11,_13);break}}
this.body.$wx(null,_0,_12)}
if(this.stopOnErrors){var _0=this.$wl,_14=this.getFields().findIndex(this.fieldIdProperty,_9);if(_0!=null)this.showInlineEditor(_0,_14)}},displayRowValidationErrorMessages:function(_0){if(this.stopOnErrors)alert(_0)},hideValidationErrors:function(_0,_1){},setDragTracker:function(){this.ns.EH.setDragTracker(this.imgHTML(this.trackerImage))},dragStart:function(){if(this.canDragSelect)return true;var _0=this.selection.getSelection();if(!_0||_0.length==0)return false;for(var i=0;i<_0.length;i++){if(_0[i].canDrag==false)return false}
return true},dropMove:function(){if(!this.canReorderRecords)return true;this.showDragLineForRecord()},dropOut:function(){this.hideDragLine()},dragStop:function(){this.hideDragLine()},willAcceptDrop:function(){var _0=this.ns.EH;if(!this.Super("willAcceptDrop",arguments)&&_0.dragTarget!=this.body)return false;if(_0.dragTarget==this){if(!this.$0a())return false}else{if(!this.canAcceptDroppedRecords)return false}
if(!isc.isAn.Object(_0.dragTarget.getDragData()))return false;var _1=this.getEventRecordNum(),_2=this.getEventFieldNum();var _3=this.getReorderPosition(_1);if(_1!=-2&&_3==isc.ListGrid.AFTER)_1+=1;if(_1<-1)return true;if(_1==-1)return false;var _4=this.getRecord(_1,_2);if(!this.recordIsEnabled(_1,_2)||(_4!=null&&_4.canAcceptDrop==false))return false;return true},$0a:function(){return this.canReorderRecords},drop:function(){if(this.willAcceptDrop()==false)return false;var _0=this.ns.EH;var _1=this.getEventRecordNum();if(this.data.getLength()==0){_1=0}else if(this.canReorderRecords){if(_1==-2)_1=this.data.getLength()-1;var _2=this.getReorderPosition(_1);if(_2==isc.ListGrid.AFTER){_1+=1}}
var _3;if(this.canReorderRecords&&_0.dragTarget==this){_3=this.selection.getSelection();this.data.slideList(_3,_1)}else{_3=_0.dragTarget.transferDragData();if(!isc.isAn.Array(_3))_3=[_3];if(this.selectionType==isc.Selection.MULTIPLE||this.selectionType==isc.Selection.SIMPLE)
{this.selection.deselectAll();this.selection.selectList(_3)}else if(this.selectionType==isc.Selection.SINGLE){this.selection.selectSingle(_3[0])}
if(this.canReorderRecords){this.data.addListAt(_3,_1)}else{this.data.addList(_3)}}
if(this.canReorderRecords&&this.sortFieldNum!=null){this.unsort()}
if(this.recordsDropped)this.recordsDropped(_3,_1,this,_0.dragTarget);return false},getDragData:function(){var _0=this.selection.getSelection();return _0},transferDragData:function(){var _0=this.getDragData();if(this.dragDataAction==isc.ListGrid.CLONE){_0=isc.clone(_0)}else if(this.dragDataAction==isc.ListGrid.MOVE){this.selection.deselectList(_0);this.data.removeList(_0)}
return _0},autoSizeColumn:function(_0){var _1=this.body.getColumnAutoSize(_0);this.resizeField(_0,_1)},getRecord:function(_0,_1){return this.getCellRecord(_0,_1)},getCellRecord:function(_0,_1){if(!this.data||!isc.isA.Number(_0)||_0>=this.data.getLength())return null;var _2=this.data.get(_0);if(this.$zw)this.$0b(_2,_0);return _2},$0b:function(_0,_1){if(_0==null||_0[this.editValuesTestedProperty])return;if(this.$zg==null)this.$zg={};var _2=true;for(var i in this.$yc){var _3=this.$yc[i];if(_3!=null&&_3.$bg==null){if(this.comparePrimaryKeys(_0,_3.$zh)){_3.$bg=_1;this.$zg[_1]=i}else{_2=false}}}
if(_2)delete this.$zw;_0[this.editValuesTestedProperty]=true},comparePrimaryKeys:function(_0,_1){var _2=this.getPrimaryKeys(_0);if(!this.dataSource)return(_2==_1);for(var _3 in _2){if(_2[_3]!=_1[_3])return false}
return true},getPrimaryKeys:function(_0){if(this.dataSource==null)return _0;var _1=isc.DataSource.getDataSource(this.dataSource),_2=_1.getPrimaryKeyFieldNames(),_3={};if(!isc.isAn.Array(_2))_2=[_2];for(var i=0;i<_2.length;i++){_3[_2[i]]=_0[_2[i]]}
return _3},getTotalRows:function(){if(this.data==null)return 0;var _0=this.data.getLength(),_1=this.$0c();if(_1!=null&&_1+1>_0)_0=_1+1;return _0},$0c:function(){if(this.$zp==null){var _0=-1,_1=(this.$zg?isc.getKeys(this.$zg):[]);for(var i=0;i<_1.length;i++){var _2=parseInt(_1[i]);if(_2>_0)_0=_2}
this.$zp=_0}
return this.$zp},recordIsEnabled:function(_0,_1){var _2=this.getCellRecord(_0,_1);if(_2==null)return true;return(_2.enabled!=false&&_2.isSeparator!=true)},cellIsEnabled:function(_0,_1){return this.recordIsEnabled(_0,_1)},getField:function(_0){if(isc.isA.String(_0))return this.fields.find(this.fieldIdProperty,_0)
return this.Super("getField",arguments)},getCellField:function(_0,_1){return this.getField(_1)},getFields:function(){return this.fields},getSpecifiedField:function(_0){var _1=this.completeFields;if(_1==null)_1=this.fields;if(isc.isA.String(_0))return _1.find(this.fieldIdProperty,_0);return(_1[_0])},getFieldName:function(_0){return this.fields[_0]?this.fields[_0][this.fieldIdProperty]:null},getFieldNum:function(_0){var _1,_2;if(this.fields.contains(_0))return this.fields.indexOf(_0);return this.fields.findIndex(this.fieldIdProperty,_0)},getColNum:function(_0){return this.getFieldNum(_0)},getFieldTitle:function(_0){var _1=this.fields[_0];if(!_1)return"Unknown field";if(_1.getFieldTitle){Function.replaceStringWithMethod(_1,"getFieldTitle","viewer,fieldNum");return _1.getFieldTitle(this,_0)}
return _1.title},setValueMap:function(_0,_1){this.Super('setValueMap',arguments);if(this.$xn){var _2=this.getField(_0),_3=_2[this.fieldIdProperty];this.$wm.setValueMap(_3,this.getEditorValueMap(_2,this.getEditRecord()))}
if(this.isDrawn()&&this.isVisible()){this.$by("setValueMap")}},getData:function(){return this.data},getRecordIndex:function(_0){var _1=-1;if(this.body&&this.body.isDrawn()){_1=this.data.indexOf(_0,this.body.$cp,this.body.$cq)}
if(_1==-1)_1=this.data.indexOf(_0);return _1},getEventRow:function(y){if(this.header&&this.header.containsPoint(this.ns.EH.getX(),this.ns.EH.getY())){return-1}
return this.body.getEventRow(y)},getEventColumn:function(x){return this.body.getEventColumn(x)},getEventRecordNum:function(y){return this.getEventRow(y)},getEventFieldNum:function(x){return this.getEventColumn(x)},getReorderPosition:function(_0,y){if(y==null)y=this.body.getOffsetY();if(_0==null)_0=this.getEventRow(y);if(_0==-2)return isc.ListGrid.AFTER;if(_0>=this.getTotalRows())return isc.ListGrid.BEFORE;var _1=this.body.getRowTop(_0),_2=this.body.getRowSize(_0);if(y>parseInt(_1+_2/ 2)){return isc.ListGrid.AFTER}else{return isc.ListGrid.BEFORE}},getDropRecordNum:function(_0,_1){if(_0==null)_0=this.getEventRow();if(_1==null)_1=this.getReorderPosition(_0);return _0+(_1==isc.ListGrid.AFTER?1:-1)},getSelection:function(){if(this.canSelectCells){var _0=this.selection.getSelectedCells();if(_0==null)return null;var _1=[];for(var i=0;i<_0.length;i++){var _2=_0[i],_3=this.getCellRecord(_2[0],_2[1]);if(_3==null)continue;_1.add(_3)}
return _1}else{return this.selection.getSelection()}},getSelectedRecord:function(){return this.selection.getSelectedRecord()},getSerializeableFields:function(_0,_1){_0.addList(["header","selection"]);return this.Super("getSerializeableFields",arguments)},createBody:function(){if(this.body!=null)return;var _0={},_1=isc.ListGrid.$xj;for(var i=0;i<_1.length;i++){var _2=_1[i],_3=this[_2];if(_3!=null)_0[_2]=_3}
this.body=this.ns.GridRenderer.create(_0,{ID:this.ID+"_body",autoDraw:false,overflow:this.bodyOverflow,backgroundColor:this.bodyBackgroundColor,className:this.bodyStyleName,$n5:true,fixedRowHeights:this.fixedRecordHeights,fixedColumnWidths:this.fixedFieldWidths,alternateRowStyles:this.alternateRecordStyles,alternateRowFrequency:this.alternateRecordFrequency,showAllRows:this.showAllRecords,tabIndex:this.getTabIndex(),dragTarget:(this.canDragSelect?null:this),dragAppearance:isc.EventHandler.NONE},this.bodyDefaults,isc.ListGrid.bodyFunctions);this.addBodyPassthroughMethods();this.addChild(this.body)},getButtonProperties:function(){var _0=isc.addProperties({},this.headerButtonDefaults,{cellSpacing:this.cellSpacing,cellPadding:this.cellPadding,align:null});return _0},getHeaderButtonProperties:function(_0){var _1=this.getButtonProperties();if(this.buttonTitleFunction==null){this.buttonTitleFunction=new Function("return this.parentElement.parentElement.getHeaderButtonTitle(this)")}
isc.addProperties(_1,{getActionType:function(){var _2=this.parentElement,_3;if(_2)_3=_2.parentElement
if(_3&&isc.isA.ListGrid(_3)){var _4=_3.fields[_2.getButtonNumber(this)];var _5=(_3.canSort!=false);if(_5&&_4!=null)_5=(_4.canSort!=false);if(_5)return isc.Button.RADIO}
return this.Super("getActionType",arguments)},getTitle:this.buttonTitleFunction},_0);return _1},makeHeader:function(_0){if(this.header!=null)return;var _1=(this.showSortArrow==isc.ListGrid.CORNER||this.showSortArrow==isc.ListGrid.BOTH);var _2={buttons:this.fields.duplicate(),reorderOnDrop:false,tabWithinToolbar:false};this.header=this.createHeader(_2);this.addChild(this.header,null,!_0);this.observe(this.header,"scrollTo","observer.headerScrolled()");if(_1&&this.sorter==null){this.makeCornerSortButton();this.addChild(this.sorter)}},createHeader:function(_0){var _1=this.ns.ClassFactory.newInstance({_constructor:"Toolbar",instantRelayout:true,enforcePolicy:false,ID:this.getID()+"_header",autoDraw:false,button:this.getHeaderButtonProperties({defaultRadioGroup:this.getID()+"$0d"}),$lf:false,$mn:false,border:this.headerBorder,className:this.headerStyleName,backgroundColor:this.headerBackgroundColor,backgroundImage:this.headerBackgroundImage,backgroundRepeat:isc.Canvas.NO_REPEAT,tabIndex:(this.canTabToHeader?this.getTabIndex():-1),itemClick:function(_2,_3){this.Super("itemClick",arguments);this.parentElement.headerClick(_3)},showContextMenu:function(){return this.parentElement.headerBarContextClick(this)},canResizeItems:this.canResizeFields,canReorderItems:this.canReorderFields,dontObserve:false},_0);if(_1.canReorderItems&&!_1.dontObserve){this.observe(_1,"itemDragReordered","observer.headerDragReordered(itemNum, newPosition)")}
if(_1.canResizeItems&&!_1.dontObserve){this.observe(_1,"itemDragResized","observer.headerDragResized(itemNum, newSize)");this.observe(_1,"dragResizeMemberStart","observer.fieldDragResizeStart()");this.observe(_1,"dragResizeMemberMove","observer.fieldDragResizeMove()");this.observe(_1,"dragResizeMemberStop","observer.fieldDragResizeStop()")}
return _1},dirtyHeader:function(){if(this.header)this.header.markForRedraw()},updateHeader:function(){if(this.header==null)return this.makeHeader();this.header.destroy();this.header=null;this.makeHeader(true)},getHeaderButtonTitle:function(_0){var _1=(isc.isA.Number(_0)?_0:this.header.getButtonNumber(_0)),_2=this.fields[_1];if(!_2)return"";var _3=(_1==this.sortFieldNum)&&(this.showSortArrow==isc.ListGrid.FIELD||this.showSortArrow==isc.ListGrid.BOTH),_4=this.getFieldTitle(_1);return _4+(_3?"&nbsp;"+this.getSortArrowImage():"")},headerClick:function(_0){var _1=this.fields[_0];if(this.canSort==false||!_1||_1.canSort==false)return false;if(_0==this.sortFieldNum&&_1.sortDirection!=null){this.sort(_0,!Array.shouldSortAscending(_1.sortDirection))}else{this.sort(_0)}
return false},fieldDragResizeStart:function(){this.makeDragLine();this._dragLine.resizeTo(2,this.getVisibleHeight()-(this.body.hscrollOn?this.getScrollbarSize():0));this.ns.EH.dragTarget.setOverflow("hidden")},fieldDragResizeMove:function(x){var _0=this.ns.EH,_1=_0.dragTarget;var _2=this.header.$vo;this.showDragLineForField(_2);if(this.resizeFieldsInRealTime){var _3=_0.dragResizeWidth;this.$c0[_2]=_3;this.body.setColumnWidths(this.$c0);this.body.redraw("fieldDragResize");var _4=this.body.getScrollLeft();if(_4>0)this.header.scrollTo(_4)}},fieldDragResizeStop:function(){this.hideDragLine()},headerDragReordered:function(_0,_1){this.reorderField(_0,_1)},reorderField:function(_0,_1){this.reorderFields(_0,_0+1,_1-_0)},reorderFields:function(_0,_1,_2){var _3=this.fields[_0],_4=this.fields[_1-1],_5=_0+_2,_6=this.fields[_5];var _7=this.fields[this.sortFieldNum],_8=this.$xn,_9=this.getEditRow(),_10=this.getEditField();this.$c0.slideRange(_0,_1,_0+_2);if(this.completeFields.contains(_6)){var _11=this.completeFields.indexOf(_3),_12=this.completeFields.indexOf(_4)+1,_13=this.completeFields.indexOf(_6);this.completeFields.slideRange(_11,_12,_13)}
if(this.header)this.header.reorderItems(_0,_1,_0+_2);this.deriveVisibleFields();if(this.sortFieldNum!=null){this.sortFieldNum=this.fields.indexOf(_7);if(this.sortFieldNum==-1)this.sortFieldNum=null;else if(this.header)this.header.selectButton(this.sortFieldNum)}
if(_8){var _14=this.$wm,_15=[]
for(var i=0;i<_14.items.length;i++){var _16=_14.items[i];_16.colNum=this.fields.findIndex(this.fieldIdProperty,_16.getFieldName());for(var j=0;j<=_15.length;j++){if(_15[j]==null||_15[j].colNum>_16.colNum){_15.addAt(_16,j);break}}}
_14.items.setArray(_15);this.$x3=this.fields.indexOf(_10)}
if(this.body)this.body.setColumnWidths(this.$c0)
this.$by("reorderFields");if(this.showFilterEditor){this.$ya.reorderFields(_0,_1,_2)}},headerDragResized:function(_0,_1){this.resizeField(_0,_1)},resizeField:function(_0,_1){if(this.header&&this.header.isDrawn()){this.header.getMember(_0).setWidth(_1)}
this.fields[_0].width=_1;this.$c0[_0]=_1;this.setBodyFieldWidths(this.$c0);if(this.showFilterEditor&&this.$ya){this.$ya.resizeField(_0,_1)}},getSorterLeft:function(){if(this.isRTL()){return this.getLeftBorderSize()}else{return this.width-this.getScrollbarSize()-this.getHBorderSize()}},makeCornerSortButton:function(){this.sorter=this.ns.Button.create(this.getButtonProperties(),{ID:this.getID()+"_sorter",autoDraw:false,left:this.getSorterLeft(),top:0,width:this.getScrollbarSize(),height:this.headerHeight,backgroundColor:this.headerBackgroundColor,getTitle:function(){return this.parentElement.getSortArrowImage()},click:function(){return this.parentElement.sorterClick()},showContextMenu:function(){return this.parentElement.sorterContextClick()},imgDir:this.widgetImgDir,canFocus:false},this.sortButtonDefaults)},sorterContextClick:function(){if(this.showCornerContextMenu)return this.displayCornerContextMenu(this.sorter)},headerBarContextClick:function(){if(this.showCornerContextMenu)return this.displayCornerContextMenu(this.header)},displayCornerContextMenu:function(_0){if(!this.$ye)this.$ye=this.getCornerContextMenu();return this.$ye.showContextMenu(_0)},getCornerContextMenu:function(){return this.ns.Menu.create({ID:this.getID()+"$ye",grid:this,show:function(){var _0=this.grid,_1=[];for(var i=0;i<_0.completeFields.length;i++){var _2=_0.completeFields[i];if(_2.title==null||_2.treeField)continue;_1[_1.length]={title:_2.title,fieldName:_2.name,checked:_0.fieldIsVisible(_2),click:"menu.toggleField(item)"}}
this.setData(_1);return this.Super("show",arguments)},toggleField:function(_4){var _0=this.grid;if(_4.checked){_0.hideField(_4.fieldName)}else{_0.showField(_4.fieldName)}}})},getSortArrowImage:function(){if(this.canSort&&this.sortFieldNum!=null){return this.imgHTML((Array.shouldSortAscending(this.getField(this.sortFieldNum).sortDirection)?this.sortAscendingImage:this.sortDescendingImage),null,null,null,null,this.widgetImgDir)}else{return isc.Canvas.spacerHTML(1,1)}},sorterClick:function(){if(!this.canSort)return false;this.sort(this.sortFieldNum,(this.sortFieldNum!=null?!Array.shouldSortAscending(this.getField(this.sortFieldNum).sortDirection):null))},makeDragLine:function(){if(this._dragLine)return false;var _0={ID:this.getID()+"_dragLine",width:2,height:2,overflow:isc.Canvas.HIDDEN,visibility:isc.Canvas.HIDDEN,redrawOnResize:false,className:(!isc.Browser.isNav?"dragLine":null)};if(this.ns.Canvas.getStyleObject(_0.className)==null){_0.backgroundColor="black"}
this._dragLine=this.ns.Canvas.create(_0);return true},showDragLineForRecord:function(_0,_1){var _2=this.body;if(_0==null)_0=this.getEventRecordNum();var _3=_2.getVisibleRows()[1];if(_0==-2)_0=_3;if(!this.recordIsEnabled(_0)&&_0!=_3)return this._dragLine.hide();if(_1==null)_1=this.getReorderPosition(_0);var _4=_2.getPageLeft()+(this.isRTL()&&_2.vscrollOn?this.getScrollbarSize():0);if(_1==isc.ListGrid.BEFORE){this.showHDragLine(_4,_2.getRowPageTop(_0))}else if(_1==isc.ListGrid.AFTER){this.showHDragLine(_4,(_2.getRowPageTop(_0)+_2.getRowSize(_0)))}else{return this._dragLine.hide()}},showHDragLine:function(_0,_1){this.makeDragLine();this._dragLine.resizeTo(this.body.getOuterViewportWidth(),2);var _2=this.body.getPageTop(),_3=_2+this.body.getVisibleHeight();if(_1<_2)_1=_2;else if(_1>_3)_1=_3;this._dragLine.setPageRect(_0,_1);this._dragLine.show();this._dragLine.bringToFront()},showDragLineForField:function(_0,_1){this.makeDragLine();if(_1==true){this._dragLine.resizeTo(2,this.headerHeight)}else{this._dragLine.resizeTo(2,this.getOuterViewportHeight())}
if(_0==null)_0=this.getEventFieldNum();if(_0<0){this._dragLine.hide();return}
var _2=this.ns.EH.dragTarget,_3=(!this.isRTL()?_2.getPageLeft()+this.ns.EH.dragResizeWidth:_2.getPageRight()-this.ns.EH.dragResizeWidth)-1;this._dragLine.setPageRect(_3,this.getPageTop());this._dragLine.show()},hideDragLine:function(){if(this._dragLine)this._dragLine.hide()},unsort:function(){var _0=this.data.unsort();if(_0==true){if(this.sortFieldNum!=null&&this.header&&isc.isA.Toolbar(this.header)){this.header.deselectButton(this.sortFieldNum)}
this.sortFieldNum=null;if(this.sorter)this.sorter.markForRedraw("unsort")}else{this.resort()}},resort:function(){var _0=this.sortFieldNum;this.sortFieldNum=null;return this.sort(_0)},sort:function(_0,_1){if(this.canSort==false)return false;var _2=this.sortFieldNum,_3=(_2!=null?Array.shouldSortAscending(this.getField(_2).sortDirection):null);if(_0==null){for(var i=0;i<this.fields.length;i++){if(this.fields[i].canSort!=false){_0=i;break}}}
if(_0==null)return;if(_0!=null){this.sortFieldNum=_0}else if(this.sortFieldNum==null){for(var i=0;i<this.fields.length;i++){if(this.fields[i].canSort!=false){this.sortFieldNum=i;break}}}
if(_0==null)return false;var _4=this.getField(this.sortFieldNum);if(_4==null||_4.canSort==false)return;if(_1!=null){_1=Array.shouldSortAscending(_1);if(this.sortFieldNum==_0&&_1==_4.sortDirection)return}else{_1=(_4.sortDirection!=null?_4.sortDirection:this.sortDirection);_1=Array.shouldSortAscending(_1)}
this.sortFieldNum=_0;_4.sortDirection=_1;this.sortData();if(this.header&&isc.isA.Toolbar(this.header)){this.header.selectButton(this.sortFieldNum);if(_2!=null&&_2!=this.sortFieldNum){var _5=this.header.getButton(_2);if(_5!=null)_5.markForRedraw("sort")}
if(this.sortFieldNum!=_2||_4.sortDirection!=_3){var _6=this.header.getButton(this.sortFieldNum);if(_6!=null)_6.markForRedraw("sort")}}
if(this.sorter&&_3!=_4.sortDirection)this.sorter.markForRedraw("sort");this.$by("sort");return true},sortData:function(){if(!this.data||!this.fields)return;var _0=this.fields[this.sortFieldNum],_1=null;if(_0==null){this.sortFieldNum=0;_0=this.fields[0]}
if(_0.sortNormalizer){_1=_0.sortNormalizer}else if(_0.valueMap){_1=_0.valueMap;if(isc.isA.String(_0.valueMap))_1=this.getGlobalReference(_0.valueMap)}else if(_0.type=="number"||_0.type=="integer"||_0.type=="int"||_0.type=="float")
{_1=Array.$gy}else if(_0.type=="date"){_1=Array.$gz}
this.data.sortByProperty(_0[this.fieldIdProperty],_0.sortDirection,_1)},getRecordDataSource:function(_0){return this.dataSource},openRecordEditor:function(_0){if(this.$yy!=null)this.closeRecord();var _1=isc.addProperties({},_0);var _2=this.ns.DynamicForm.create(this.recordEditorProperties,{autoDraw:false,dataSource:this.getRecordDataSource(_0),numCols:4,values:_1,$0e:_0});var _3=this.ns.VStack.create({autoDraw:false,width:this.getAvailableFieldWidth()-this.embeddedComponentIndent,left:this.embeddedComponentIndent,members:[_2,this.ns.Toolbar.create({autoDraw:false,width:200,buttons:[{title:"Save",click:this.getID()+".embeddedSaveRecord("+_2.getID()+")",extraSpace:10},{title:"Cancel",record:_0,click:this.getID()+".closeRecord(this.record)"}]})]});this.addEmbeddedComponent(_3,_0);this.$yy=_0},embeddedSaveRecord:function(_0){var _1=this.getID()+".embeddedEditComplete(operationResult)";_0.save({$0e:_0.$0e,afterFlowCallback:_1})},embeddedEditComplete:function(_0){if(_0.results.status==0){this.removeEmbeddedComponent(_0.context.$0e)}},closeRecord:function(_0){this.removeEmbeddedComponent(_0||this.$yy);this.$yy==null},openRecordDetailGrid:function(_0,_1){if(this.$yy!=null)this.closeRecord();_1=isc.DataSource.getDataSource(_1);var _2=_1.getTreeRelationship(this.getRecordDataSource(_0));var _3={};_3[_2.parentIdField]=_0[_2.idField];if(this.logIsInfoEnabled()){this.logInfo("nested grid drill-down: criteria: "+this.echo(_3)+", relationship: "+this.echo(_2))}
var _4=isc.ListGrid.create(this.recordDetailGridProperties,{autoDraw:false,dataSource:_1,showResizeBar:true,showCellContextMenus:this.showCellContextMenus},this.nestedGridDefaults);var _5=isc.VLayout.create({autoDraw:false,height:this.cellHeight,left:this.embeddedComponentIndent,width:this.getAvailableFieldWidth()-this.embeddedComponentIndent,resizeBarSize:4,members:[_4]});this.addEmbeddedComponent(_5,_0);_4.filter(_3);this.$yy=_0},addBodyPassthroughMethods:function(){if(!this.body)return;var _0={},_1=isc.getKeys(isc.ListGrid.$xt);for(var i=0;i<_1.length;i++){var _2=_1[i],_3=this[_2];if(_2=="cellContextClick")continue;if(_3!=null&&_3!=isc.ListGrid.$xu[_2]){_0[_2]=isc.ListGrid.$xt[_2]}}
this.body.addMethods(_0)},addMethods:function(){this.Super("addMethods",arguments);this.addBodyPassthroughMethods()}});isc.ListGrid.registerStringMethods(isc.addProperties({},isc.GridRenderer.$xi,{recordClick:"viewer,record,recordNum,field,fieldNum,value,rawValue",recordDoubleClick:"viewer,record,recordNum,field,fieldNum,value,rawValue",recordsDropped:"records,rowNum,viewer,sourceWidget",editValueChanged:"rowNum,fieldName,newValue,oldValue",editorChange:"record,newValue,oldValue,rowNum,colNum",cellChanged:"record,newValue,oldValue,rowNum,colNum,recordNum,fieldNum",editComplete:"rowNum,colNum,newValues,oldValues,editCompletionEvent,transaction",editFailed:"rowNum,colNum,newValues,oldValues,editCompletionEvent,transaction",editorEnter:"record,value,rowNum,colNum",editorExit:"editCompletionEvent,record,newValue,rowNum,colNum",validateCellValue:"rowNum,colNum,newValue,oldValue",validateFieldValue:"newValue,oldValue,record,field,rowNum,colNum",formatCellValue:"value,record,rowNum,colNum",formatEditorValue:"value,record,rowNum,colNum",parseEditorValue:"value,record,rowNum,colNum"}));isc.ListGrid.classInit();isc.ClassFactory.defineClass("TreeGrid","ListGrid");isc.addGlobal("TreeViewer",isc.TreeGrid);isc.TreeGrid.addClassProperties({TREE_FIELD:{name:"title",width:"*",treeField:true,getCellValue:function(_0,_1,_2,_3){return _0.getNodeTitle(_1,_2,this)},getTitle:function(){var _0=this.parentElement.getButtonNumber(this),_1=this.parentElement.parentElement;if(_1.getField(_0).name=="title")return _1.treeFieldTitle;return _1.getFieldTitle(_0)}}});isc.TreeGrid.addProperties({treeFieldTitle:"Name",autoAssignTreeField:true,showRoot:false,separateFolders:false,displayNodeType:isc.Tree.FOLDERS_AND_LEAVES,canDragRecordsOut:false,canAcceptDroppedRecords:false,canReorderRecords:false,dragDataAction:isc.ListGrid.NONE,openDropFolderDelay:600,parentAlreadyContainsChildMessage:"This item already contains a child item with that name.",cantDragIntoSelfMessage:"You can't drag an item into itself.",cantDragIntoChildMessage:"You can't drag an item into one of it's children.",fixedFieldWidths:true,wrapCells:false,showHiliteInCells:false,indentSize:20,iconSize:16,skinImgDir:"images/TreeGrid/",folderOpenImage:"[SKIN]folder_open.gif",folderClosedImage:"[SKIN]folder_closed.gif",folderDropImage:"[SKIN]folder_drop.gif",fileImage:"[SKIN]file.gif",manyItemsImage:"[SKIN]folder_file.gif",showConnectors:false,openerImage:"[SKIN]opener.gif",connectorImage:"[SKIN]connector.gif",$0f:"open_icon_",$0g:"extra_icon_",$0h:"icon_",$0i:"title"});isc.TreeGrid.addMethods({initWidget:function(){this.Super(this.$f);this.$0j()},$0j:function(){if(!this.fields||this.fields.length==0){this.fields=[isc.TreeGrid.TREE_FIELD]}else{if(!this.autoAssignTreeField)return;var _0=this.completeFields||this.fields;for(var _1=0;_1<_0.length;_1++){if(_0[_1].treeField)break}
if(_1>=_0.length)_1=0;var _2=_0[_1];for(var _3 in isc.TreeGrid.TREE_FIELD){if(_2[_3]==null){_2[_3]=isc.TreeGrid.TREE_FIELD[_3]}}}},setFields:function(){this.Super("setFields",arguments);this.$0j()},setData:function(_0){this.Super("setData",arguments);if(!this.data)return;this.data.separateFolders=this.separateFolders;this.data.showRoot=this.showRoot;this.data.openDisplayNodeType=this.displayNodeType},$x8:function(_0){this.Super("$x8",arguments);if(isc.isA.Tree(this.data)){this.observe(_0,"changeDataVisibility","observer.$by('folderToggled')");this.selection.observe(_0,"changeDataVisibility","observer.markForRedraw()")}},$x6:function(_0){this.Super("$x6",arguments);this.ignore(_0,"changeDataVisibility")},createBody:function(_0){var _1=this.Super("createBody",arguments);this.body.addMethods({$wj:function(_8,_9,_10){var _2=this.parentElement,_3=this.Super("$wj",arguments);if(_10==_2.getTreeFieldNum()){return _2.getTreeCellValue(_3,_8,_9,_10)}
return _3},click:function(_8,_9){var _4=this.parentElement,_5=_4.getEventRecordNum(),_6=_4.getRecord(_5);if(_4.data.isFolder(_6)&&_4.clickInOpenArea(_6)){_4.toggleFolder(_6);_4.clearLastHilite();_4.$yg=null;return isc.EH.STOP_BUBBLING}
return this.Super("click",arguments)},mouseDown:function(){var _7=this.getEventRow(),_6=this.parentElement.data.get(_7);if(_6!=null&&this.parentElement.clickInOpenArea(_6)){return isc.EH.STOP_BUBBLING}else{return this.Super("mouseDown",arguments)}},mouseUp:function(){var _7=this.getEventRow(),_6=this.parentElement.data.get(_7);if(_6!=null&&this.parentElement.clickInOpenArea(_6)){return isc.EH.STOP_BUBBLING}else{return this.Super("mouseUp",arguments)}}});return _1},bodyKeyPress:function(_0){var _1=this.selection;if(this.selectionType!=isc.Selection.NONE&&this.data.getLength()>0&&_1.anySelected()&&!_1.multipleSelected())
{var _2=this.selection.getSelectedRecord();if(_0.keyName=="Arrow_Left"){if(this.data.isFolder(_2)&&this.data.isOpen(_2)){this.closeFolder(_2)}else{this.$yk(this.data.getParent(_2),true)}
return false}else if(_0.keyName=="Arrow_Right"){if(this.data.isFolder(_2)){if(!this.data.isOpen(_2)){this.openFolder(_2);return false}else{var _3=this.getRecord(this.data.indexOf(_2)+1);if(_3!=null&&this.data.getParent(_3)==_2){this.$yk(_3,true);return false}}}}}
return this.Super("bodyKeyPress",arguments)},$xm:function(_0,_1,_2){if(_1<0||_2<0)return true;var _3=this.data.isFolder(_0);if(this.nodeContextClick&&this.nodeContextClick(this,_0,_1)==false){return false}
if(_3){if(this.folderContextClick&&this.folderContextClick(this,_0,_1)==false){return false}}else{if(this.leafContextClick&&this.leafContextClick(this,_0,_1)==false){return false}}
return this.Super("$xm",arguments)},handleEditCellEvent:function(_0,_1){var _2=this.getRecord(_0);if(this.clickInOpenArea(_2))return false;return this.Super("handleEditCellEvent",arguments)},canEditCell:function(_0,_1){if(this.Super("canEditCell",arguments)==false)return false;if(this.getField(_1)[this.fieldIdProperty]==this.data.nameProperty)return false;return true},getEditFormItemFieldWidths:function(_0){var _1=this.data.getLevel(_0);if(!this.showRoot)_1--;var _2=_1*this.indentSize;_2+=this.iconSize*2;if(this.getExtraIcon(_0))_2+=this.iconSize;var _3=this.Super("getEditFormItemFieldWidths",arguments),_4=this.getTreeFieldNum();_3[_4]-=_2;return _3},getRecordDataSource:function(_0){return this.data.getNodeDataSource(_0)},rowClick:function(_0,_1,_2){var _3=_0;if(this.clickInOpenArea(_3))return false;this.$yg=_1;if(_1<0||_2<0)return false;var _3=this.getRecord(_1),_4=this.data.isFolder(_3);if(this.nodeClick)this.nodeClick(this,_3,_1);if(_4){if(this.folderClick)this.folderClick(this,_3,_1)}else{if(this.leafClick)this.leafClick(this,_3,_1)}
return this.Super("rowClick",arguments)},recordDoubleClick:function(_0,_1,_2,_3,_4,_5,_6){if(this.clickInOpenArea(_1))return false;if(this.data.isFolder(_1)){return this.toggleFolder(_1)}else
return this.openLeaf(_1)},toggleFolder:function(_0){if(this.data.isOpen(_0)){this.closeFolder(_0)}else{this.openFolder(_0)}},openFolder:function(_0){if(this.folderOpened!=null){this.convertToMethod("folderOpened");if(this.folderOpened(_0)==false)return false}
this.data.openFolder(_0)},closeFolder:function(_0){if(this.folderClosed!=null){this.convertToMethod("folderClosed");if(this.folderClosed(_0)==false)return false}
var _1=this.data.getOpenList(_0);_1.remove(_0);this.selection.deselectList(_1);this.data.closeFolder(_0)},openLeaf:function(_0){},transferDragData:function(){var _0=this.getDragData();if(this.dragDataAction==isc.TreeGrid.CLONE){_0=this.data.getCleanNodeData(_0)}else{_0=this.Super("transferDragData")}
return _0},setDragTracker:function(){var _0=isc.emptyString,_1=this.selection;if(!_1.anySelected()){_0="blank.gif"}else if(!_1.multipleSelected()){var _2=_1.getSelectedRecord();_0=(this.data.isFolder(_2)?this.folderClosedImage:this.getIcon(_2))}else{_0=this.manyItemsImage}
isc.EventHandler.setDragTracker(this.imgHTML(_0,this.iconSize,this.iconSize));return false},willAcceptDrop:function(){if(!this.Super("willAcceptDrop",arguments))return false;var _0=this.getEventRecordNum(),_1=this.data.get(_0);if(_1==null)_1=this.data.getRoot();if(!_1||_1.canAcceptDrop==false)return false;if(!this.canReorderRecords&&!this.data.isFolder(_1))return false;var _2=isc.EventHandler.dragTarget.getDragData();if(!isc.isAn.Object(_2)||this.getDropError(_2,_1)!=null)return false
return true},$0a:function(){return this.canAcceptDroppedRecords},getDropError:function(_0,_1){for(var i=0,_2=_0.length;i<_2;i++){if(this.data.isDescendantOf(_1,_0[i])){return this.cantDragIntoChildMessage}}
for(i=0;i<_2;i++){if(_0[i]==_1){return this.cantDragIntoSelfMessage}}
return null},dropMove:function(){var _0=this.getEventRow(),_1=(_0==-2?this.data.getRoot():this.data.get(_0));var _2=(this.canReorderRecords?this.getReorderPosition(_0):null),_3=(this.body.willAcceptDrop()?this.getDropFolder(_1,_2):null);if(_3!=this.lastDropFolder){if(!this.$0k){this.$0k=this.getID()+".openDropFolder()"}
if(this.openDropFolderTimer)isc.Timer.clear(this.openDropFolderTimer);if(!this.data.isOpen(_3)){this.openDropFolderTimer=isc.Timer.setTimeout(this.$0k,this.openDropFolderDelay)}
this.updateFolderDropIcon(_3)}
if(this.canReorderRecords){if(this.data.isOpen(_3))this.showDragLineForRecord(_0,_2);else this.hideDragLine()}
this.lastDropFolder=_3},getDropFolder:function(_0,_1){if(_0==null)_0=this.getEventRow();if(_0==-2)_0=this.data.getRoot();if(isc.isA.Number(_0))_0=this.data.get(_0);if(this.data.isRoot(_0))return this.data.getRoot();if(!this.canReorderRecords){return(this.data.isFolder(_0)?_0:this.data.getParent(_0))}
if(_1==null)_1=this.getReorderPosition(_0);if(!this.data.isFolder(_0)||_1==isc.ListGrid.BEFORE||(!this.data.isOpen(_0)&&_1==isc.ListGrid.AFTER)){return this.data.getParent(_0)}else{return _0}},openDropFolder:function(){if(this.lastDropFolder==null||!this.data.isFolder(this.lastDropFolder)||this.data.isOpen(this.lastDropFolder))return false;this.data.openFolder(this.lastDropFolder);if(this.canReorderRecords)this.showDragLineForRecord(this.lastDropFolder,isc.ListGrid.AFTER)},getReorderPosition:function(_0,y){if(y==null)y=this.body.getOffsetY();if(_0==null)_0=this.getEventRow(y);if(!isc.isA.Number(_0))_0=this.data.indexOf(_0);if(this.data.isFolder(this.data.get(_0))&&!this.data.isOpen(this.data.get(_0))){var _1=this.body.getRowTop(_0),_2=this.body.getRowSize(_0);if(y>parseInt(_1+(_2*3/4))){return isc.ListGrid.AFTER}else if(y<parseInt(_1+_2/ 4)){return isc.ListGrid.BEFORE}else{return isc.ListGrid.OVER}}
return this.Super("getReorderPosition",[_0,y])},dropOut:function(){this.hideDragLine();this.updateFolderDropIcon();if(this.openDropFolderTimer)isc.Timer.clear(this.openDropFolderTimer);if(this.lastDropFolder!=null)delete this.lastDropFolder},updateFolderDropIcon:function(_0){if(this.lastDropFolder==_0)return;if(this.lastDropFolder){this.setRowIcon(this.lastDropFolder,this.getIcon(this.lastDropFolder))}
if(_0){this.setRowIcon(_0,_0.dropIcon||this.folderDropImage||_0.icon)}},drop:function(){if(!this.willAcceptDrop())return false;var _0=isc.EH.dragTarget.getDragData(),_1=this.getEventRecordNum(),_2=this.getReorderPosition(_1),_3=this.data.get(_1);if(_3==null)_3=this.data.getRoot();var _4=this.getDropFolder(_3,_2);var _5=this.getDropError(_0,_3);if(_5!=null){isc.warn(_5);return false}
var _6=isc.EH.dragTarget.getData(),_7=(isc.isA.Tree(_6)&&isc.isA.Tree(this.data)&&_6.getRoot()==this.data.getRoot());for(var i=0;i<_0.length;i++){var _8=_0[i];var _9=this.data.getPath(_4)+_8.name;if(this.data.find(_9)!=null&&(!_7||(!this.canReorderRecords||_9!=this.data.getPath(_8))))
{isc.warn(this.parentAlreadyContainsChildMessage);return false}}
var _10=null;if(this.canReorderRecords){if(_1<0){_10=this.data.getChildren(_4).getLength()}else if(_3==_4){_10=0}else{_10=(_2==isc.ListGrid.AFTER?1:0)+this.data.getChildren(_4).indexOf(_3)}}
this.folderDrop(_0,_4,_10,isc.EH.dragTarget);this.data.openFolder(_4);return false},folderDrop:function(_0,_1,_2,_3){var _4=_3.getData(),_5=(isc.isA.Tree(_4)&&isc.isA.Tree(this.data)&&_4.getRoot()==this.data.getRoot());if(_5){_4.moveList(_0,_1,_2)}else{this.data.addList(_3.transferDragData(),_1,_2)}},getTreeCellValue:function(_0,_1,_2,_3){if(_1==null){return _0}
var _4=this.data.getLevel(_1),_5=this.getOpenIcon(_1),_6=this.getExtraIcon(_1),_7=this.getIcon(_1);var _8=this.$0l.treeCellValueTemplate;if(_8==null){if(this.wrapCells&&!isc.Browser.isNav){_8=this.$0l.treeCellValueTemplate=["<NOBR>",null,null,null,"</NOBR> ",null]}else{_8=this.$0l.treeCellValueTemplate=["<NOBR>",null,null,null,null,"&nbsp;",null]}}
if(this.wrapCells&&!isc.Browser.isNav){_8[1]=this.getIconHTML(_5,this.$0f+_2,this.openerIconSize||(this.showConnectors?this.cellHeight:null));_8[2]=(_6?this.getIconHTML(_6,this.$0m+_2):null);_8[3]=this.getIconHTML(_7,this.$0h+_2);_8[5]=_0}else{_8[1]=this.getIndentHTML(_4);_8[2]=(_5?this.getIconHTML(_5,this.$0f+_2,this.openerIconSize||(this.showConnectors?this.cellHeight:null)):this.$0n(this.iconSize));_8[3]=(_6?this.getIconHTML(_6,this.$0m+_2):null);_8[4]=this.getIconHTML(_7,this.$0h+_2);_8[6]=_0}
return _8.join(isc.emptyString)},getBodyHTML:function(_0){this.$0l={};return this.Super("getBodyHTML",arguments);delete this.$0l},getNodeTitle:function(_0,_1,_2){if(_2.name&&_2.name!=this.$0i)return _0[_2.name];return this.data.getTitle(_0)},$0o:"absmiddle",$0p:{},getIconHTML:function(_0,_1,_2){if(_0==null)return isc.emptyString;if(_2==null)_2=this.iconSize;var _3=this.$0l.iconHTML;if(_3==null)_3=this.$0l.iconHTML={};if(_3[_0]==null){var _4=this.$0p;_4.src=_0;_4.width=_4.height=_2;_4.name=_1;_4.align=this.$0o;_3[_0]=this.$rt(_4)}
var _5=_3[_0];if(!isc.Browser.isNav)_5[14]=_1;return _5.join(isc.$d3)},getCellCSSText:function(_0,_1,_2){if(!this.wrapCells||isc.Browser.isNav)return isc.emptyString;var _3=this.getTreeFieldNum();if(_3==_2){var _4=this.data.getLevel(_0)-(!this.showRoot?1:0),_5=(_4*this.indentSize)+(this.getOpenIcon(_0)==null?this.iconSize:0);return"padding-left:"+_5+"px;"}
return isc.emptyString},getTreeFieldNum:function(){for(var i=0;i<this.fields.length;i++){if(this.fields[i].treeField==true)return i}
if(!this.autoAssignTreeField)return null;var _0=this.data.titleProperty;for(var i=0;i<this.fields.length;i++){if(this.fields[i][this.fieldIdProperty]==_0)return i}
this.logWarn("getTreeFieldNum(): couldn't figure out which was the tree column!  Assuming column 0");return 0},getOpenAreaWidth:function(_0){return((this.data.getLevel(_0)-(this.showRoot?0:1))*this.indentSize)+this.iconSize},clickInOpenArea:function(_0){if(!this.data.isFolder(_0))return false;var _1=this.getTreeFieldNum(),_2=this.body.getColumnLeft(_1),_3=this.body.getColumnWidth(_1),_4=this.getOpenAreaWidth(_0),x=this.body.getOffsetX();if(this.isRTL()){var _5=_2+_3;return x>=(_5-_4)&&x<=_5}else{return x>=_2&&x<_2+_4}},getIndentHTML:function(_0){if(!this.showRoot)_0--;return this.$0n(_0*this.indentSize)},$0n:function(_0){if(_0==0)return isc.emptyString;var _1=isc.TreeGrid.$0q;if(_1==null)_1=isc.TreeGrid.$0q={};if(_1[_0]==null)_1[_0]=isc.Canvas.spacerHTML(_0,1);return _1[_0]},getOpenIcon:function(_0){if(!this.data)return null;if(isc.isA.Number(_0))_0=this.data.get(_0);if(_0==null)return null;if(_0.openIcon){return _0.openIcon}else{var _1=this.data.isFolder(_0),_2=_1,_3=_1,_4,_5;if(_1){var _6=this.data.getLoadState(_0);if(_6==isc.Tree.UNLOADED||(_6==isc.Tree.FOLDERS_LOADED&&this.displayNodeType!=isc.Tree.FOLDERS_ONLY))
{_2=true;_3=false}else{_2=this.data.hasChildren(_0,this.displayNodeType);_3=_2&&this.data.isOpen(_0)}}
if(_3)_5=true
else{_5=!this.$0r(_0)}
_4=!this.$0s(_0);return this.getOpenerImageURL(_2,_3,_4,_5)}
return null},$0s:function(_0){var _1=this.data.indexOf(_0),_2=this.getRecord(_1-1),_3=this.data.getParent(_0);if(_2==null)return false;return(_3==_2||_3==this.data.getParent(_2))},$0r:function(_0){var _1=this.data.indexOf(_0),_2=this.getRecord(_1+1);if(_2==null)return false;return(this.data.getParent(_0)==this.data.getParent(_2))},getOpenerImageURL:function(_0,_1,_2,_3){if(!this.$0t){var _4="opened",_5="closed",_6="opening",_2="start",_3="end",_7="middle",_8="single",_9="_",_10=this.isRTL()?"$0u":"";this.$0t={openerOpenedImage:isc.Img.urlForState(this.openerImage,null,_4),openerClosedImage:isc.Img.urlForState(this.openerImage,null,_5+_10),openerOpeningImage:isc.Img.urlForState(this.openerImage,null,_6),connectorLeafSingleImage:isc.Img.urlForState(this.connectorImage,null,_8+_10),connectorLeafStartImage:isc.Img.urlForState(this.connectorImage,null,_2+_10),connectorLeafEndImage:isc.Img.urlForState(this.connectorImage,null,_3+_10),connectorLeafMiddleImage:isc.Img.urlForState(this.connectorImage,null,_7+_10),connectorOpenedSingleImage:isc.Img.urlForState(this.connectorImage,null,_4+_9+_8+_10),connectorOpenedEndImage:isc.Img.urlForState(this.connectorImage,null,_4+_9+_3+_10),connectorClosedSingleImage:isc.Img.urlForState(this.connectorImage,null,_5+_9+_8+_10),connectorClosedStartImage:isc.Img.urlForState(this.connectorImage,null,_5+_9+_2+_10),connectorClosedMiddleImage:isc.Img.urlForState(this.connectorImage,null,_5+_9+_7+_10),connectorClosedEndImage:isc.Img.urlForState(this.connectorImage,null,_5+_9+_3+_10)}}
if(this.showConnectors){if(_0){if(_1){if(_2)return this.$0t.connectorOpenedSingleImage;return this.$0t.connectorOpenedEndImage}else{if(_2&&_3)return this.$0t.connectorClosedSingleImage;if(_2)return this.$0t.connectorClosedStartImage;if(_3)return this.$0t.connectorClosedEndImage;return this.$0t.connectorClosedMiddleImage}}else{if(_2&&_3)return this.$0t.connectorLeafSingleImage;if(_2)return this.$0t.connectorLeafStartImage;if(_3)return this.$0t.connectorLeafEndImage;return this.$0t.connectorLeafMiddleImage}}else{if(!_0)return null;if(_1)return this.$0t.openerOpenedImage;return this.$0t.openerClosedImage}},getExtraIcon:function(_0){return null},getIcon:function(_0){if(isc.isA.Number(_0))_0=this.data.get(_0);if(this.data.isFolder(_0)){if(this.data.isOpen(_0))return(_0.openedIcon||_0.icon||this.folderOpenImage);return(_0.icon||this.folderClosedImage)}else{return(_0.icon||this.fileImage)}},setRowIcon:function(_0,_1){if(!isc.isA.Number(_0))_0=this.data.indexOf(_0);if(_0!=-1)this.setImage("icon_"+_0,_1)}});isc.TreeGrid.registerStringMethods({folderOpened:"node",folderClosed:"node",folderClick:"viewer,folder,recordNum",leafClick:"viewer,leaf,recordNum",nodeClick:"viewer,node,recordNum",folderContextClick:"viewer,folder,recordNum",leafContextClick:"viewer,leaf,recordNum",nodeContextClick:"viewer,node,recordNum"});isc.ClassFactory.defineClass("ButtonStrip","GridRenderer");isc.ButtonStrip.addProperties({buttons:[],buttonDefaults:{},buttonSpacing:3,buttonPadding:2,defaultButtonHeight:20,defaultButtonWidth:100,vertical:false,overflow:isc.Canvas.VISIBLE,useCellEvents:true,showRollOver:true,useCellRollOvers:true,canDrag:false,canDragSelect:false,canSelectCells:false,fastCellUpdates:true,titleAlign:"center",fillSpace:false,backgroundColor:null,baseStyle:"button"});isc.ButtonStrip.addMethods({initWidget:function(){this.Super(this.$f);if(this.buttonPadding!=null)this.cellPadding=this.buttonPadding;if(this.buttonSpacing!=null)this.cellSpacing=this.buttonSpacing;var _0=[];for(var i=0;i<this.buttons.length;i++){this.buttons[i]=isc.addProperties({},this.buttonDefaults,this.buttons[i]);if(this.vertical)_0[i]=this.buttons[i].height}
if(!this.vertical){_0[0]=this.fillSpace?this.getHeight():this.defaultButtonHeight}else{if(this.fillSpace){_0=isc.Canvas.applyStretchResizePolicy(_0,this.getHeight())}else{for(var i=0;i<_0.length;i++){if(_0[i]==null)_0[i]=this.defaultButtonHeight}}}
for(var i=0;i<this.buttons.length;i++){this.buttons[i].height=(_0[i]!=null?_0[i]:this.defaultButtonHeight)}
if(this.vertical)this.fields=[{}];else this.fields=this.buttons;this.fixedColumnWidths=this.fillSpace;var _1=[];for(var i=0;i<this.fields.length;i++){_1[i]=this.fields[i].width;if(this.fields[i].align==null)this.fields[i].align=this.titleAlign}
if(this.fillSpace)
_1=isc.Canvas.applyStretchResizePolicy(_1,this.getWidth())
for(var i=0;i<_1.length;i++){if(_1[i]==null)_1[i]=this.defaultButtonWidth;_1[i]-=this.cellSpacing}
this.setColumnWidths(_1)},getButton:function(_0){return this.buttons[_0]},getCellRecord:function(_0,_1){var _2=(this.vertical?_0:_1);return this.getButton(_2)},getCellValue:function(_0,_1,_2){if(_0==null)_0=this.getCellRecord(_1,_2);return _0.getTitle?_0.getTitle():_0.title},getTotalRows:function(){return(this.vertical?this.buttons.length:1)},getRowHeight:function(_0,_1){if(!this.vertical)return this.buttons[0].height;return _0.height},cellClick:function(_0,_1,_2){if(_0.click){if(isc.isA.String(_0.click))
_0.click=Function.expressionToFunction("",_0.click);_0.click()}
if(this.itemClick)this.itemClick(_0,this.buttons.indexOf(_0))}});isc.ButtonStrip.registerStringMethods({itemClick:"item,itemNum"});isc.ClassFactory.defineClass("RecordEditor","ListGrid");isc.RecordEditor.addProperties({autoDraw:false,cellSpacing:0,cellPadding:0,selectionType:"none",showRollOver:false,headerHeight:0,bodyOverflow:"hidden",skinImgDir:"images/RecordEditor/",saveImg:{src:"[SKIN]check.gif",width:9,height:9},filterImg:{src:"[SKIN]query.gif",width:9,height:9},listEndEditAction:"next",$y3:function(){},canEdit:true,editByCell:false,canFocus:false,$le:false});isc.RecordEditor.addMethods({initWidget:function(){if(this.sourceWidget!=null){this.setWidth(this.sourceWidget.getWidth());this.setHeight(this.sourceWidget.cellHeight+1);this.leaveScrollbarGap=this.sourceWidget.leaveScrollbarGap;if(this.actionType=="filter"){this.actOnCellChange=this.sourceWidget.filterByCell}else{this.actOnCellChange=this.sourceWidget.saveByCell}
isc.addProperties(this.editFormDefaults,{autoFocus:false});this.fieldIDProperty=this.sourceWidget.fieldIDProperty;this.fields=this.sourceWidget.completeFields.duplicate()}else{this.logWarn("RecordEditor initialized without a sourceWidget property. "+"This widget is not supported as a standalone component.")}
return this.Super(this.$f)},draw:function(){var _0=this.findNextEditCell(0,0,1,true,true);if(_0==null){this.logWarn("No editable fields in this record editor."+(this.actionType=="filter"?" Check the 'canFilter' property for each field in ":" Check the 'canEdit' property for each field in ")+this.sourceWidget.getID())}else{var _1=_0[1];this.$yb(0,_1)}
this.Super("draw",arguments);this.$0v.bringToFront()},createChildren:function(){this.Super("createChildren",arguments);this.makeActionButton()},makeActionButton:function(){var _0="this.parentElement.performAction()",_1;if(this.actionType=="filter"){_1=this.imgHTML(this.filterImg)}else{_1=this.imgHTML(this.saveImg)}
this.$0v=isc.Button.create({left:this.getInnerWidth()-this.getScrollbarSize(),width:this.getScrollbarSize(),autoDraw:false,title:_1,click:_0});this.addChild(this.$0v);this.$0v.$o8(this)},performAction:function(){if(this.actionType=="filter")this.performFilter();else this.performSave()},performFilter:function(){var _0=this.getValues();this.sourceWidget.filterData(_0)},performSave:function(){var _0=this.getEditRow(),_1=this.getEditCol(),_2=this.getFieldName(_1),_3=this.$wm.getValue(_2);this.setEditValue(_0,_2,_3);var _4=this.getEditValues(0),_5=this.getFields().getProperty(this.fieldIdProperty);if(!this.validateRowValues(_4,{},0,_5))return;this.$zu(0);this.$yb(0,0);for(var _2 in _4){this.refreshCell(0,_1)}},getValues:function(){var _0=this.getEditFieldName();this.setEditValue(0,_0,this.$wm.getValue(_0));return this.getEditValues(0)},canEditCell:function(_0,_1){if(this.actionType=="filter"){var _2=this.getField(_1);if(_2==null)return false;return(_2.canFilter!=false)}else{return this.sourceWidget.canEditCell(_0,_1)}},getEditorValueMap:function(_0,_1){if(this.actionType=="filter"){return this.sourceWidget.getFilterEditorValueMap(_0)}else{return this.sourceWidget.getEditorValueMap(_0,_1)}},getEditorType:function(_0,_1){if(this.actionType=="filter"){return this.sourceWidget.getFilterEditorType(_0)}else{return this.sourceWidget.getEditorType(_0,_1)}},getEditorProperties:function(_0){if(this.actionType=="filter"){return this.sourceWidget.getFilterEditorProperties(_0)}else{return this.sourceWidget.getEditorProperties(_0)}},cellEditEnd:function(_0,_1){if(_0!=isc.ListGrid.ENTER_KEYPRESS&&_0!=isc.ListGrid.TAB_KEYPRESS&&_0!=isc.ListGrid.SHIFT_TAB_KEYPRESS&&_0!=isc.ListGrid.EDIT_FIELD_CHANGE)return true;var _2;if(_1===_2)_1=this.getUpdatedEditorValue();var _3=this.getEditRow(),_4=this.getEditCol();var _5=this.getFieldName(_4);this.setEditValue(_3,_5,_1);if(_0==isc.ListGrid.ENTER_KEYPRESS||this.actOnCellChange){this.performAction();return}
var _6=this.getNextEditCell(_3,_4,_0);if(_6==null||_6[0]!=_3){if(_0==isc.ListGrid.TAB_KEYPRESS){this.$0v.focus()}else{if(this.$rp!=null)this.$rp.focus()}
return}
return this.Super("cellEditEnd",arguments)},clearEditValue:function(_0,_1){return this.Super("clearEditValue",[_0,_1,null,true])},layoutChildren:function(){this.Super("layoutChildren",arguments);if(this.$0v)
this.$0v.setLeft(this.getInnerWidth()-this.getScrollbarSize())
if(this.body)
this.body.setWidth(this.getInnerWidth()-this.getScrollbarSize())},adjustOverflow:function(){this.Super("adjustOverflow",arguments);if(this.$0v){this.$0v.setHeight(this.body.getVisibleHeight())}},bodyScrolled:function(_0,_1){this.Super("bodyScrolled",arguments);if(this.$0w!=null){isc.Timer.clear(this.$0w)}
this.$0w=isc.Timer.setTimeout(this.getID()+".syncSourceScrolling()",0)},syncSourceScrolling:function(){var _0=this.body.getScrollLeft();if(this.sourceWidget&&this.sourceWidget.body&&this.sourceWidget.body.getScrollLeft()!=_0){this.sourceWidget.body.scrollTo(_0)}},getFieldWidths:function(){return this.sourceWidget.getFieldWidths()}});isc.ClassFactory.defineClass("Splitbar","StretchImg");isc.Splitbar.addProperties({skinImgDir:"images/Splitbar/",imageType:"stretch",capSize:3,canDrag:true,dragAppearance:"none",canDragResize:false,dragStartDistance:1,cursor:isc.Canvas.HAND,resizeInRealTime:isc.Browser.isIE,$lf:false,$le:false,overflow:"hidden"});isc.Splitbar.addMethods({initWidget:function(){this.Super("initWidget",arguments);if(isc.Browser.isMoz)this.bringToFront()},dragStart:function(){this.setState("down");this.bringToFront()},dragMove:function(){if(this.vertical){var _0=isc.EventHandler.getX(),_1=this.target.getPageLeft(),_2=_1+this.target.getMinWidth(),_3=_1+this.target.getMaxWidth();if(_0<_2)_0=_2;if(_0>_3)_0=_3;this.targetWidth=_0-_1;if(this.resizeInRealTime){this.target.setWidth(this.targetWidth,true)}else{this.setPageLeft(_0)}}else{var _4=isc.EventHandler.getY(),_5=this.target.getPageTop(),_6=_5+this.target.getMinHeight(),_7=_5+this.target.getMaxHeight();if(_4<_6)_4=_6;if(_4>_7)_4=_7;this.targetHeight=_4-_5;if(this.resizeInRealTime){this.target.setHeight(this.targetHeight,true)}else{this.setPageTop(_4)}}},dragStop:function(){this.setState("");if(!this.resizeInRealTime){if(this.vertical){this.target.setWidth(this.targetWidth,true)}else{this.target.setHeight(this.targetHeight,true)}}}});isc.ClassFactory.defineClass("HSplitbar","Splitbar");isc.HSplitbar.addProperties({vertical:false,src:"[SKIN]hsplit.gif",defaultHeight:10,cursor:isc.Canvas.ROW_RESIZE});isc.ClassFactory.defineClass("VSplitbar","Splitbar");isc.VSplitbar.addProperties({src:"[SKIN]vsplit.gif",defaultWidth:10,cursor:isc.Canvas.COL_RESIZE});isc.ClassFactory.defineClass("Stretchbar","Splitbar");isc.Stretchbar.addProperties({canResize:false,skinImgDir:"images/Stretchbar/",showRollOver:true});isc.ClassFactory.defineClass("HStretchbar","Stretchbar");isc.HStretchbar.addProperties({vertical:false,src:"[SKIN]hsplit.gif",defaultHeight:10});isc.ClassFactory.defineClass("VStretchbar","Stretchbar");isc.VStretchbar.addProperties({src:"[SKIN]vsplit.gif",defaultWidth:10});isc.ClassFactory.defineClass("ScrollingMenu","ListGrid");isc.ScrollingMenu.addProperties({useBackMask:true,canFocus:true,headerHeight:0,autoDraw:false,border:"1px solid #CCCCCC",selectionType:"single",showRollOver:false,leaveScrollbarGap:false,generateClickOnSpace:false,generateDoubleClickOnEnter:false,generateClickOnEnter:true,showModal:true});isc.ScrollingMenu.addMethods({show:function(){if(!this.showModal)return this.Super("show",arguments);this.showClickMask(this.getID()+".cancel();",false);this.Super("show",arguments);this.bringToFront();this.body.focus()},recordClick:function(_0,_1,_2,_3,_4,_5,_6){if(_1!=null)this.itemClick(_1);this.hide()},itemClick:function(_0){},rowOver:function(_0,_1,_2){this.selection.selectSingle(_0)},getKeyboardNavigationStyle:function(){return'hilite'},$yl:function(_0){this.Super("$yl",arguments);this.selection.selectSingle(this.getRecord(_0))},bodyKeyPress:function(_0,_1){var _2=_0.keyName;if(_2=="Escape"){this.cancel();return false}
return this.Super("bodyKeyPress",arguments)},cancel:function(){this.hide()},hide:function(){this.hideClickMask();return this.Super("hide",arguments)},dataChanged:function(){var _0=this.Super("dataChanged",arguments);if(this.data&&this.data.getLength()>0&&(!isc.isA.ResultSet(this.data)||this.data.rowIsLoaded(0)))
{this.selection.selectItem(0)}
return _0}});isc.ClassFactory.defineClass("Menu","ListGrid");isc.Menu.addClassProperties({ICON_FIELD:{name:"icon",width:25,getCellValue:function(_0,_1){return _0.getIcon(_1)}},TITLE_FIELD:{name:"title",width:"*",getCellValue:function(_0,_1){return _0.getItemTitle(_1)}},KEY_FIELD:{name:"keys",width:35,getCellValue:function(_0,_1){return _0.getKeyTitle(_1)}},SUBMENU_FIELD:{name:"submenu",width:18,getCellValue:function(_0,_1){return _0.getSubmenuImage(_1)}},$0x:[],SHIFT:(isc.Browser.isWin?"Shift+":"shift-"),CTRL:(isc.Browser.isWin?"Ctrl+":"ctrl-"),ALT:(isc.Browser.isWin?"Alt+":"option-"),META:(isc.Browser.isWin?"Windows+":"command-")});isc.Menu.addProperties({className:"normal",submenuDelay:200,submenuOffset:-4,defaultWidth:150,defaultHeight:20,backgroundColor:null,overflow:isc.Canvas.VISIBLE,bodyOverflow:isc.Canvas.VISIBLE,selectionType:isc.Selection.NONE,autoDraw:false,tableStyle:"menuTable",showRollOver:(!isc.Browser.isNav),showAllRecords:true,fixedFieldWidths:false,fixedRecordHeights:false,leaveScrollbarGap:false,baseStyle:"menu",headerHeight:0,showSortArrow:isc.ListGrid.NONE,canDrag:false,canAcceptDrop:false,canReorderRecords:false,useKeys:true,showKeys:true,showIcons:true,showSubmenus:true,showFieldsSeparately:false,showEmptyMessage:false,cellSpacing:0,cellPadding:2,iconWidth:16,iconHeight:16,autoSetDynamicItems:true,skinImgDir:"images/Menu/",submenuImage:{src:"[SKIN]submenu.gif",width:7,height:7},submenuDisabledImage:{src:"[SKIN]submenu_disabled.gif",width:7,height:7},checkmarkImage:{src:"[SKIN]check.gif",width:9,height:9},checkmarkDisabledImage:{src:"[SKIN]check_disabled.gif",width:9,height:9},bodyDefaults:{useBackMask:true},submenuInheritanceMask:["$0y","className","submenuDelay","submenuOffset","defaultWidth","backgroundColor","tableStyle","showRollOver","baseStyle","canDrag","canAcceptDrop","canReorderRecords","useKeys","showKeys","showIcons","showSubmenus","cellPadding","iconWidth","iconHeight","autoSetDynamicItems","skinImgDir","submenuImage","submenuDisabledImage","checkmarkImage","checkmarkDisabledImage","bodyDefaults","canSelectParents","itemClick","canSelectParentItems","childrenProperty"],mergeSingleParent:true});isc.Menu.addMethods({initWidget:function(){this.position=isc.Canvas.ABSOLUTE;if(isc.Tree&&isc.isA.Tree(this.data)){this.$0y=this.data;this.childrenProperty=this.data.childrenProperty;var _0=this.data.getChildren();if(this.mergeSingleParent&&_0.length==1&&this.data.hasChildren(_0[0])){var _1=_0[0];this.data=this.data.getChildren(_1).duplicate();this.data.add({isSeparator:true});var _2={};isc.addProperties(_2,_1);_2[this.childrenProperty]=null;this.data.add(_2)}else{this.data=_0}}
this.Super(this.$f);if(!this.fields){this.fields=[];if(this.showIcons)this.fields.add(isc.Menu.ICON_FIELD);this.fields.add(isc.Menu.TITLE_FIELD);if(this.showKeys)this.fields.add(isc.Menu.KEY_FIELD);if(this.showSubmenus)this.fields.add(isc.Menu.SUBMENU_FIELD)}
if(isc.Browser.isSafari){isc.addProperties(this.submenuImage,{align:"BOTTOM"});isc.addProperties(this.submenuDisabledImage,{align:"BOTTOM"})}
if(this.useKeys)this.setUpKeyListening()},$x8:function(_0){this.Super("$x8",arguments);if(this.autoSetDynamicItems){this.$0z()}},$x6:function(_0){this.Super("$x6",arguments);if(this.autoSetDynamicItems){delete this.setDynamicItems}},rowClick:function(_0,_1,_2){this.Super("rowClick",arguments);this.selectMenuItem(_1)},selectMenuItem:function(_0){if(_0==null)_0=this.getEventRecordNum();_0=this.getItem(_0);var _1=true;if(_0==null||!this.itemIsEnabled(_0)){isc.Menu.hideAllMenus();return false}
if((_0.submenu||_0[this.childrenProperty])&&!this.canSelectParentItems){if(this.submenuTimer)this.submenuTimer=isc.Timer.clear(this.submenuTimer);if(this.$00!=_0)this.hideSubmenu();this.showSubmenu(_0);return false}
isc.Menu.hideAllMenus();if(_0.click){if(isc.isA.String(_0.click)){Function.replaceStringWithMethod(_0,"click","target,item,menu")}
var _2=(this.target?this.target:this);_1=(_0.click(_2,_0,this)==false)}else{this.itemClick(_0)}
return _1},mouseOver:function(){var _0=this.$01;if(_0&&_0.body.lastOverRow!=this.$02){if(_0.submenuTimer)_0.submenuTimer=isc.Timer.clear(_0.submenuTimer);_0.$yl(this.$02)}},rowOver:function(_0,_1){if(!this.$03){this.$03=this.getID()+".changeSubmenu()"}
if(this.submenuTimer)this.submenuTimer=isc.Timer.clear(this.submenuTimer);this.submenuTimer=isc.Timer.setTimeout(this.$03,this.submenuDelay)},itemClick:function(_0){},bodyKeyPress:function(_0,_1){var _2=isc.EventHandler.lastEvent.keyName;if(_2=="Arrow_Left"){if(this.$01!=null){this.$01.hideSubmenu();this.$01.focus();return false}}else if(_2=="Arrow_Right"){var _3=this.getItem(this.$yj());if(_3&&(_3.submenu||_3[this.childrenProperty])){this.changeSubmenu();this.$04.$yh(1);return false}}else if(_2=="Escape"){if(this.$01!=null){this.$01.hideSubmenu();this.$01.focus()}else{this.hide()}
return false}else if(_2=="Enter"){return this.$bn()}
return this.Super("bodyKeyPress",arguments)},$yh:function(_0){var _1=this.$yj();if(_1==null)_1=0;if(_0==-1){do{_1+=_0;if(_1<0){this.hide();return false}}while(!this.itemIsEnabled(_1))}
return this.Super("$yh",arguments)},show:function(){if(this.setDynamicItems)this.setDynamicItems()
if(!this.isDrawn())this.draw();if(isc.Menu.$0x.length==0){isc.Menu.$05=isc.EH.showClickMask("isc.Menu.hideAllMenus()",true)}
this.bringToFront();isc.Menu.$0x.add(this);this.Super("show",arguments);this.body.focusOnHide=isc.EventHandler.getFocusCanvas();if(isc.Browser.isMoz){this.getClipHandle().offsetLeft}
this.body.focus()},hide:function(){this.Super("hide",arguments);this.clearLastHilite();if(this.$00)delete this.$00},showContextMenu:function(_0){if(_0&&(_0.target==this||(this.body&&_0.target==this.body))){if(this.body){if(isc.Browser.isSafari){this.body.$w7=this.getEventRow();this.body.$w8=this.getEventColumn()}
this.body.click()}
return false}
var _1;if(isc.isA.Canvas(_0))_1=_0;if(_0!=null&&_0.target!=null)_1=_0.target;if(_1!=null)this.target=_1;this.positionContextMenu();this.show();return false},$06:function(){if(!this.isDrawn()){this.setVisibility(isc.Canvas.HIDDEN);this.draw()}
this.setVisibility(isc.Canvas.VISIBLE);this.moveTo(null,-9999)},hideContextMenu:function(){this.hide()},positionContextMenu:function(){this.$06();var _0=isc.EH.getLastEvent();this.placeNear(_0.x,_0.y)},getItem:function(_0){if(isc.isA.Number(_0))return this.data.get(_0);return _0},getItemNum:function(_0){if(isc.isA.Number(_0))return _0;return this.data.indexOf(_0)},changeSubmenu:function(){var _0=this.getItem(this.body.lastOverRow);if(_0&&this.$00==_0)return;this.hideSubmenu();if(_0!=null)this.showSubmenu(_0)},showSubmenu:function(_0){var _1=this.getSubmenu(_0);if(_1)this.placeSubmenu(_0,_1)},getSubmenu:function(_0){_0=this.getItem(_0);if(!_0||(!_0.submenu&&!_0[this.childrenProperty]))return;var _1=_0.submenu;if(_1==null&&_0[this.childrenProperty]){var _2=(this.$07||this),_3=(_2==this?0:this.$08);if(!_2.$09)_2.$09=[];this.logDebug("RootMenu:"+_2.getID()+", submenus:"+_2.$09+", Level:"+_3);_1=_2.$09[_3];if(!_1){var _4=isc.applyMask(this,this.submenuInheritanceMask);isc.addProperties(_4,{ID:(_2.getID()+"_childrenSubMenu_"+_3),$07:_2,$08:_3+1,autoDraw:false});_1=isc.Menu.create(_4);_2.$09[_3]=_1}
_1.setData(_0[this.childrenProperty])}
return _1},placeSubmenu:function(_0,_1){this.$00=_0;this.$04=_1;_1.$06();var _2=this.getItemNum(_0);var _3=isc.Canvas.$qk(_1.getVisibleWidth(),_1.getVisibleHeight(),{left:this.getPageLeft()-this.submenuOffset,width:this.getVisibleWidth()+this.submenuOffset,top:this.body.getRowPageTop(_2)},"right",false)
_1.setPageRect(_3[0],_3[1]);if(this.target!=this&&_1.target!=_1){_1.target=this.target}
_1.show();_1.$01=this;_1.$02=_2},hideMenuTree:function(){this.hideSubmenu();this.hide()},hideSubmenu:function(){if(this.$04){this.$04.hideSubmenu();this.$04.hide();delete this.$04;delete this.$00}},getSubmenuImage:function(_0){if(!_0.submenu&&!_0[this.childrenProperty])return"&nbsp;";if(!this.$1a){this.$1a=this.imgHTML(this.submenuImage);this.$1b=this.imgHTML(this.submenuDisabledImage)}
return(this.itemIsEnabled(_0)?this.$1a:this.$1b)},itemIsEnabled:function(_0){_0=this.getItem(_0);return(_0&&_0.enabled!=false&&_0.isSeparator!=true)},$0z:function(){var _0=isc.SB.create();if(this.enableIf)_0.append(this.enableIf,";");for(var i=0;i<this.data.length;i++){var _1=this.getItem(i);if(!_1)continue;if(_1.enableIf){_0.append("changed|=this.setItemEnabled(",i,",",_1.enableIf,");\r")}
if(_1.checkIf){_0.append("changed|=this.setItemChecked(",i,",",_1.checkIf,");\r")}
if(_1.dynamicTitle){_0.append("changed|=this.setItemTitle(",i,",",_1.dynamicTitle,");\r")}
if(_1.dynamicIcon){_0.append("changed|=this.setItemIcon(",i,",",_1.dynamicIcon,");\r")}}
var _2=_0.toString();if(_2=="")return;_0=isc.SB.create();_0.append("var target=this.target,changed=false;\r",_2,"if(changed&&this.isDrawn()){\r","this.redraw('dynamic item change');\r",(isc.Browser.isIE?"this.body.setRowStyle(0);\r":""),"}");this.addMethods({setDynamicItems:new Function(_0.toString())})},setItemEnabled:function(_0,_1){_1=_1!=false;_0=this.getItem(_0);if(!_0)return;if(_0.enabled!=_1){_0.enabled=_1;this.markForRedraw("itemEnabled");return true}
return false},setItemChecked:function(_0,_1){_1=_1!=false;_0=this.getItem(_0);if(!_0)return;if(_0.checked!=_1){_0.checked=_1;this.markForRedraw("itemChecked");return true}
return false},setItemTitle:function(_0,_1){_0=this.getItem(_0);if(!_0)return;if(_0.title!=_1){_0.title=_1;this.markForRedraw("item title change");return true}
return false},setItemIcon:function(_0,_1,_2){_0=this.getItem(_0);if(!_0)return;if(_0.icon!=_1){_0.icon=_1;if(_2)_0.disabledIcon=_2;this.markForRedraw("item icon change");return true}
return false},getIcon:function(_0){if(_0.icon){var _1=(this.itemIsEnabled(_0)||!_0.disabledIcon?_0.icon:_0.disabledIcon);return this.imgHTML(_1,(_0.iconWidth?_0.iconWidth:this.iconWidth),(_0.iconHeight?_0.iconHeight:this.iconHeight))}
if(_0.checked){return this.getCheckmarkImage(_0)}
return"&nbsp;"},getItemTitle:function(_0){var _1;if(this.$0y)_1=this.$0y.getTitle(_0);else _1=_0.title||_0.name||_0.id;_1=_1||"&nbsp;";return _1},getKeyTitle:function(_0){if(_0.keyTitle)return _0.keyTitle;return"&nbsp;"},getCheckmarkImage:function(_0){if(!this.$1c){this.$1c=this.imgHTML(this.checkmarkImage);this.$1d=this.imgHTML(this.checkmarkDisabledImage)}
return(this.itemIsEnabled(_0)?this.$1c:this.$1d)},setUpKeyListening:function(){var _0="";var _1,_2,_3=this.data.length;for(var i=0;i<_3;i++){_1=this.getItem(i);if(!_1)continue;_2=_1.keys;if(!_2)continue;if(!isc.isAn.Array(_2))_2=[_2];for(var _4,k=0,_5=_2.length;k<_5;k++){_4=_2[k];if(_4==null)continue;isc.Page.registerKey(_4,"target.menuKey("+i+");",this)}
if(!_1.keyTitle)this.setItemKeyTitle(_1,_2[0])}},menuKey:function(_0){if(this.setDynamicItems)this.setDynamicItems();return this.selectMenuItem(_0)},setItemKeyTitle:function(_0,_1){if(typeof _1=="number"){_1=String.fromCharCode(_1)}
_0.keyTitle=_1}});isc.Menu.addClassMethods({hideAllMenus:function(){if(isc.Menu.$0x.length>0){var _0=false,_1=isc.Menu.$0x[0];for(var i=isc.Menu.$0x.length-1;i>=0;i--){if(isc.Menu.$0x[i].$o9(isc.EventHandler.getFocusCanvas()))
_0=true;isc.Menu.$0x[i].hide()}
if(_0&&isc.isA.Canvas(_1.body.focusOnHide)){_1.body.focusOnHide.focus()}
isc.Menu.$0x=[]}
isc.EH.hideClickMask(isc.Menu.$05);isc.Menu.$05=null},menuForValueMap:function(_0,_1){var _2=[];if(isc.isA.String(_0))_0=this.getPrototype().getGlobalReference(_0);if(isc.isAn.Array(_0)){for(var i=0;i<_0.length;i++){_2[i]={value:_0[i],title:_0[i]}}}else{for(var _3 in _0){_2.add({value:_3,title:_0[_3]})}}
var _4=isc.Menu.$1e;if(_1==false||isc.Menu.$1e==null){_4=isc.Menu.newInstance({autoDraw:false,itemClick:function(_6){if(this.target.valueMapMenuSelected){this.target.valueMapMenuSelected(_6.value)}}})}
if(_1!=false&&isc.Menu.$1e==null)isc.Menu.$1e=_4;_4.setData(_2);return _4}});isc.Menu.registerStringMethods({itemClick:"item"})
isc.ListGrid.addProperties({showCornerContextMenu:true});isc.ClassFactory.defineClass("MenuButton","Button");isc.MenuButton.addProperties({title:"Show Menu",titleStyle:"menuButtonText",baseStyle:"menuButton",height:22,showMenuButtonImage:true,skinImgDir:"images/Menu/",menuButtonImage:{src:"[SKIN]menu_button.gif",width:7,height:7},menuButtonImageUp:{src:"[SKIN]menu_button_up.gif",width:7,height:7},menuButtonDisabledImage:{src:"[SKIN]menu_button_disabled.gif",width:7,height:7},showMenuBelow:true,alignMenuLeft:true,menu:null});isc.MenuButton.addMethods({initWidget:function(){this.Super(this.$f);if(isc.Browser.isSafari){isc.addProperties(this.menuButtonImage,{align:"BOTTOM"});isc.addProperties(this.menuButtonImageUp,{align:"BOTTOM"});isc.addProperties(this.menuButtonDisabledImage,{align:"BOTTOM"})}},getTitle:function(){var _0;if(this.showMenuButtonImage){var _1=this.getInnerWidth(),_2=this.getInnerHeight(),_3=(this.$kv()&&this._useNativeTabIndex?" TABINDEX=-1 ONFOCUS='"+this.getID()+".focus()'":"")
_0=isc.StringBuffer.concat("<TABLE WIDTH=",(_1-2)," HEIGHT=",(_2-2),"><TR><TD ALIGN=LEFT CLASS=",this.titleStyle,_3,(this.wrap?">":"><NOBR>"),this.title,"</TD><TD ALIGN=RIGHT",_3,">",this.imgHTML((this.showMenuBelow?this.menuButtonImage:this.menuButtonImageUp)),"</TD></TR></TABLE>")}else{_0=this.Super("getTitle",arguments)}
return _0},click:function(){this.showMenu()},keyPress:function(){if(isc.EventHandler.lastEvent.keyName=="Arrow_Down"){this.showMenu();return false}
return this.Super("keyPress",arguments)},$qy:function(){this.Super("$qy",arguments);this.markForRedraw()},showContextMenu:function(){this.click();return false},showMenu:function(){if(!this.menu)return;if(!isc.isA.Menu(this.menu)){this.menu.autoDraw=false;this.menu=isc.Menu.create(this.menu);if(!isc.isA.Menu(this.menu))return}
var _0=this.menu;_0.moveTo(null,-9999);_0.show();var _1=this.getPageLeft();if(!this.alignMenuLeft){_1=_1-(_0.getVisibleWidth()-this.getVisibleWidth())}
var _2=this.showMenuBelow?this.getPageTop()+this.getVisibleHeight()+1:this.getPageTop()-_0.getVisibleHeight()+2;_0.placeNear(_1,_2)}});isc.ClassFactory.defineClass("MenuBar","Toolbar");isc.addGlobal("Menubar",isc.MenuBar);isc.MenuBar.addProperties({overflow:isc.Canvas.VISIBLE,defaultHeight:22,menuConstructor:"Menu",buttonConstructor:"MenuBarButton",buttonDefaults:{showDown:false,showRollOver:(isc.Browser.isNav?false:true),tabIndex:-1}});isc.MenuBar.addMethods({initWidget:function(){this.Super("initWidget",arguments)},setButtons:function(_0){_0=[];for(var i=0;i<this.menus.length;i++){var _1=this.menus[i];_0[i]={title:_1.title,width:(_1.menuButtonWidth?_1.menuButtonWidth:_1.width),menuNum:i}}
return this.Super("setButtons",[_0])},showMenu:function(_0,_1){var _2=this.menus[_1];if(!_2){this.logWarn("showMenu() called with invalid menu number: "+_1+".  No effect.");return}
if(!isc.isA.Canvas(_2)){if(_2.ID==null)_2.ID=this.getID()+"_menu"+_1;_2.autoDraw=false;_2=this.menus[_1]=isc.ClassFactory.newInstance(this.menuConstructor,_2,this.menuDefaults)}
_0.setState(isc.StatefulCanvas.STATE_DOWN);if(this.activeMenu!=null){this.menus[this.activeMenu].hideMenuTree()}
_2.eventParent=this;_2.moveTo(_0.getPageLeft(),_0.getPageBottom());_2.show();this.activeMenu=_1;if(!_0.isObserving(_2,"hide")){_0.observe(_2,"hide","observer.menuHidden()")}
if(isc.EventHandler.targetIsMasked(this))this.bringToFront()},getFocusButtonIndex:function(){if(this.activeMenu!=null)return this.activeMenu;return this.Super("getFocusButtonIndex",arguments)},mouseDown:function(){return false},mouseUp:function(){return false},click:function(){return false}});isc.ClassFactory.defineClass("MenuBarButton","MenuButton");isc.MenuBarButton.addProperties({showMenuButtonImage:false,showDown:false,autoDraw:false});isc.MenuBarButton.addMethods({stateChanged:function(){this.Super("stateChanged",arguments);if(this.state==isc.StatefulCanvas.STATE_OVER){var _0=this.parentElement.activeMenu;if(_0!=null&&_0!=this.menuNum){this.showMenu()}}},mouseDown:function(){if(this.parentElement.activeMenu==this.menuNum){isc.Menu.hideAllMenus()}else{this.showMenu()}},mouseUp:function(){},click:function(){},mouseOut:function(){if(this.parentElement.activeMenu!=this.menuNum){this.Super("mouseOut",arguments)}},handleKeyPress:function(_0,_1){if(_0.keyName=="Space"||_0.keyName=="Enter")return this.showMenu();if(this.keyPress){this.convertToMethod("keyPress");return this.keyPress(_0,_1)}},showMenu:function(){this.parentElement.showMenu(this,this.menuNum)},menuHidden:function(){this.setState(isc.StatefulCanvas.STATE_UP);this.menuIsDown=false;if(this.parentElement.activeMenu==this.menuNum){this.parentElement.activeMenu=null}}});isc.ClassFactory.defineClass("Window","Canvas");isc.Window.addProperties({$a7:null,className:"windowBackground",padding:2,backgroundColor:"#DDDDDD",canDragResize:false,dragStartDistance:1,resizeFrom:["R","B","BR"],minWidth:100,minHeight:100,cursor:isc.Canvas.HAND,skinImgDir:"images/Window/",isModal:false,dismissOnOutsideClick:false,canDragReposition:true,dragAppearance:isc.EventHandler.OUTLINE,autoCenter:false,useBackMask:isc.Browser.isIE&&isc.Browser.minorVersion>=5.5,showBody:true,bodyStyle:"windowBody",bodyColor:"#FFFFFF",hiliteBodyColor:"#EEEEEE",bodyDefaults:{layoutMargin:0},contentLayout:"vertical",autoSize:false,showHeader:true,headerConstructor:(!(isc.Browser.isIE&&!isc.Browser.isStrict&&isc.Browser.minorVersion>=5.5)?"Img":"Canvas"),headerStyle:"windowHeader",hiliteHeaderStyle:"windowHeaderHilite",headerSrc:(!(isc.Browser.isIE&&!isc.Browser.isStrict&&isc.Browser.minorVersion>=5.5)?"[SKIN]Window/headerGradient.gif":null),hiliteHeaderSrc:(!(isc.Browser.isIE&&isc.Browser.minorVersion>=5.5)?"[SKIN]Window/headerGradient_hilite.gif":null),headerDefaults:{defaultHeight:18,overflow:isc.Canvas.HIDDEN,headerIconPadding:1,headerLabelPadding:4,buttonPadding:2,closeButtonSpace:2},showTitle:true,title:"Untitled Window",headerLabelConstructor:"Label",headerLabelTextStyle:"windowHeaderText",headerLabelInnerTextStyle:"windowHeaderInnerText",headerLabelDefaults:{_generated:true,defaultHeight:18,align:isc.Canvas.LEFT,overflow:isc.Canvas.HIDDEN},showHeaderIcon:true,headerIconConstructor:"Img",headerIconDefaults:{_generated:true,defaultWidth:16,defaultHeight:16,src:"[SKIN]/Window/headerIcon.gif"},canFocusInHeaderButtons:false,showCloseButton:true,closeButtonConstructor:"ImgButton",closeButtonDefaults:{_generated:true,defaultWidth:16,defaultHeight:14,src:"[SKIN]/Window/close.gif",click:function(){return this.window.closeClick()}},showMinimizeButton:true,minimizeButtonConstructor:"ImgButton",minimizeButtonDefaults:{_generated:true,defaultWidth:16,defaultHeight:14,src:"[SKIN]/Window/minimize.gif",click:function(){return this.window.minimizeClick()}},minimized:false,defaultMinimizeHeight:16,restoreButtonDefaults:{_generated:true,defaultWidth:16,defaultHeight:14,src:"[SKIN]/Window/restore.gif",click:"this.window.restoreClick()"},showMaximizeButton:false,maximizeButtonConstructor:"ImgButton",maximizeButtonDefaults:{_generated:true,defaultWidth:16,defaultHeight:14,src:"[SKIN]/Window/maximize.gif",click:"this.window.maximizeClick()"},showFooter:true,footerHeight:18,showStatusBar:true,statusBarConstructor:"Canvas",statusBarStyle:"windowStatusBar",statusBarDefaults:{overflow:isc.Canvas.HIDDEN,className:"windowStatusBar",textClassName:"windowStatusBarText",wrap:false,leftPadding:5},showResizer:true,resizerConstructor:"Img",resizerDefaults:{src:"[SKIN]/Window/resizer.gif",width:16,height:16},showToolbar:false,toolbarMargins:10,toolbarConstructor:"Toolbar",toolbarDefaults:{height:20,cellSpacing:5},showShadow:false,shadowOffsetX:5,shadowOffsetY:5,shadowStyle:"WindowShadow",overflow:"hidden"});isc.Window.addMethods({initWidget:function(){var _0;if(this.minimized){this.minimized=null;this.minimize()}
this.Super(this.$f);if(!this.$1f&&this.items!=null){for(var i=0;i<this.items.length;i++){if(isc.isA.Canvas(this.items[i])&&this.items[i].isDrawn())this.items[i].clear()}}},createChildren:function(){if(this.showHeader)this.setHeader();if(this.showShadow)this.makeShadow();if(this.showFooter)this.setFooter();if(this.showToolbar)this.makeToolbar();if(this.showBody)this.makeBody();if(this.shadow)this.shadow.moveBelow(this);if(this.header)this.header.bringToFront();if(this.closeButton)this.closeButton.bringToFront();if(this.toolbar)this.toolbar.bringToFront();if(this.resizer)this.resizer.bringToFront();this.$1f=true},draw:function(){if(isc.$m3)arguments.$fa=this;if(!this.readyToDraw())return this;if(!this.$1f)this.createChildren();if(!this.autoSize)this.fixLayout();var _0=this.Super("draw",arguments);if(this.autoSize)this.fixLayout();return _0},mouseUp:function(){this.bringToFront();this.Super("mouseUp",arguments)},setHeader:function(_0,_1,_2,_3){if(!this.showHeader){this.closeButton=null;this.minimizeButton=null;this.maximizeButton=null;this.headerIcon=null;this.headerLabel=null;this.showCloseButton=false;this.showMinimizeButton=false;this.showMaximizeButton=false;this.showHeaderIcon=false;this.showHeaderLabel=false;return}
if(!isc.isA.Canvas(this.header))this.makeHeader();if(this.header!=null){if(this.showHeaderIcon&&!isc.isA.Canvas(this.headerIcon))this.makeHeaderIcon();if(this.showTitle&&!isc.isA.Canvas(this.headerLabel))this.makeHeaderLabel();if(this.showMinimizeButton&&!isc.isA.Canvas(this.minimizeButton))this.makeMinimizeButton();if(this.showMaximizeButton&&!isc.isA.Canvas(this.maximizeButton))this.makeMaximizeButton();if(this.showCloseButton&&!isc.isA.Canvas(this.closeButton))this.makeCloseButton()}else{isc.Log.logInfo("Header not created before children made.")}
if(_0!=null&&_1!=null&&_2!=null&&_3!=null){var _4=this.header.buttonPadding,_5=this.header.headerIconPadding,_6=this.header.closeButtonSpace,_7=this.header.headerLabelPadding;var _8=_2-_4;if(this.showCloseButton){this.closeButton.moveTo(_8-this.closeButton.getWidth(),_4);_8=this.closeButton.getLeft()-_6}
if(this.showMaximizeButton){this.maximizeButton.moveTo(_8-this.maximizeButton.getWidth(),_4);_8=this.maximizeButton.getLeft()}
if(this.showMinimizeButton){this.minimizeButton.moveTo(_8-this.minimizeButton.getWidth(),_4);_8=this.minimizeButton.getLeft()}
this.header.setRect(_0,_1,_2,_3);if(this.showHeaderIcon)this.headerIcon.moveTo(_5,_5);var _9=(this.showHeaderIcon?this.headerIcon.getRight():0),_10=(this.showHeaderIcon?this.headerIcon.getWidth():0);if(this.showTitle)this.headerLabel.setRect(_9+_7,0,_8-_10-_7,_3)}},makeHeader:function(){if(!this.showHeader){this.header=null;return}
var _0=this.headerConstructor!="Canvas";var _1=isc.ClassFactory.newInstance(this.headerConstructor,{ID:(_0?this.ID+"$1g":this.ID+"_header"),_generated:_0,autoDraw:false,className:this.headerStyle,src:this.headerSrc,backgroundColor:this.headerColor},this.headerDefaults,this.header);if(!_0){this.header=_1}else{this.$1g=_1;this.header=isc.Canvas.newInstance({ID:this.ID+"_header",autoDraw:false,defaultHeight:this.headerDefaults.defaultHeight,resizeBy:function(_2,_3){this.Super("resizeBy",arguments);if(this.parentElement&&this.parentElement.$1g)
this.parentElement.$1g.resizeBy(_2,_3)}},this.headerDefaults,this.header);this.header.addChild(this.$1g)}
this.addChild(this.header)},makeHeaderLabel:function(){if(!this.showTitle){this.headerLabel=null;return}
this.headerLabel=isc.ClassFactory.newInstance(this.headerLabelConstructor,{ID:this.ID+"_headerLabel",autoDraw:false,contents:this.title,wrap:false,className:this.headerLabelTextStyle,innerTextClassName:this.headerLabelInnerTextStyle,cursor:(this.canDragReposition?isc.Canvas.MOVE:isc.Canvas.ARROW)},this.headerLabelDefaults,this.headerLabel);this.header.addChild(this.headerLabel);if(this.canDragReposition){this.headerLabel.addProperties({canDragReposition:true,dragTarget:this});this.canDragReposition=false}},setTitle:function(_0){if(_0)this.title=_0;if(!this.header)return;if(this.headerLabel)this.headerLabel.setContents(this.title);else this.header.setContents(this.title)},makeCloseButton:function(){if(!this.showCloseButton){this.closeButton=null;return}
this.closeButton=isc.ClassFactory.newInstance(this.closeButtonConstructor,{ID:this.ID+"$1h",window:this,autoDraw:false,canFocus:this.canFocusInHeaderButtons},this.closeButtonDefaults,this.closeButton);this.header.addChild(this.closeButton)},makeMinimizeButton:function(){if(!this.showMinimizeButton){this.minimizeButton=null;return}
this.minimizeButton=isc.ClassFactory.newInstance(this.minimizeButtonConstructor,{ID:this.ID+"_minimizeButton",window:this,autoDraw:false,canFocus:this.canFocusInHeaderButtons},(this.minimized?this.restoreButtonDefaults:this.minimizeButtonDefaults),this.minimizeButton);this.header.addChild(this.minimizeButton)},makeMaximizeButton:function(){if(!this.showMaximizeButton){this.maximizeButton=null;return}
this.maximizeButton=isc.ClassFactory.newInstance(this.maximizeButtonConstructor,{ID:this.ID+"_maximizeButton",window:this,autoDraw:false,canFocus:this.canFocusInHeaderButtons},this.maximizeButtonDefaults,this.maximizeButton);this.header.addChild(this.maximizeButton)},makeHeaderIcon:function(){if(!this.showHeaderIcon){this.headerIcon=null;return}
this.headerIcon=isc.ClassFactory.newInstance(this.headerIconConstructor,{ID:this.ID+"_headerIcon",window:this,autoDraw:false},this.headerIconDefaults,this.headerIcon);this.header.addChild(this.headerIcon)},makeToolbar:function(){if(!this.showToolbar||this.toolbarButtons==null){this.toolbar=null;return}
this.toolbar=isc.ClassFactory.newInstance(this.toolbarConstructor,this.toolbarDefaults,{ID:this.ID+"_toolbar",autoDraw:false,buttons:this.toolbarButtons,visibility:this.minimized?isc.Canvas.HIDDEN:isc.Canvas.INHERIT},this.toolbar);this.addChild(this.toolbar)},setButtons:function(_0){this.toolbarButtons=_0;if(this.toolbar)this.toolbar.setButtons(_0)},setFooter:function(_0,_1,_2,_3){if(!this.showFooter){this.statusBar=null;this.resizer=null;this.showStatusBar=false;this.showResizer=false;return}
if(!this.showStatusBar)this.showResizer=false;if(this.statusBar==null&&this.showStatusBar)this.makeStatusBar();if(this.resizer==null&&this.showResizer)this.makeResizer();if(_0!=null&&_1!=null&&_2!=null&&_3!=null){if(this.showStatusBar)this.statusBar.setRect(_0,_1,_2,_3);if(this.showResizer)this.resizer.moveTo(_0+_2-this.resizer.getWidth(),_1+_3-this.resizer.getHeight())}},makeStatusBar:function(){if(!this.showStatusBar){this.statusBar=null;return}
this.statusBar=isc.Label.newInstance({ID:this.ID+"_statusBar",autoDraw:false,redrawOnResize:false,visibility:this.minimized?isc.Canvas.HIDDEN:isc.Canvas.INHERIT},this.statusBarDefaults,this.statusBar);this.addChild(this.statusBar)},makeResizer:function(){if(!this.showResizer||!this.showStatusBar){this.resizer=null;return}
this.resizer=isc.ClassFactory.newInstance(this.resizerConstructor,this.resizerDefaults,this.resizer,{ID:this.ID+"_resizer",autoDraw:false,canDragResize:true,dragTarget:this,getEventEdge:function(){return"BR"},visibility:this.minimized?isc.Canvas.HIDDEN:isc.Canvas.INHERIT});this.addChild(this.resizer)},setStatus:function(_0){if(this.statusBar==null)return;var _1=(this.statusBar.leftPadding?isc.Canvas.spacerHTML(this.statusBar.leftPadding,1):"");this.statusBar.setContents(_1+_0)},setSrc:function(_0){this.src=_0;if(this.body)this.body.setContentsURL(_0)},makeBody:function(){if(!this.showBody){this.body=null;return}
var _0=(this.header?this.header.getHeight():0);if(!this.bodyConstructor){if(!this.autoSize){if(this.contentLayout!="none")this.bodyConstructor="Layout";else this.bodyConstructor="Canvas"}else{this.bodyConstructor="Layout";if(!this.body)this.body={};isc.addProperties(this.body,{vPolicy:"none",hPolicy:"none"})}}
var _1,_2,_3;if(this.src){_3=this.src}else{var _4=this.items;if(isc.isA.Array(_4)){_1=_4.duplicate()}else if(isc.isA.Canvas(_4)){_1=_4}else{_2=_4}}
if(isc.Browser.isMoz&&_3!=null){if(!this.body)this.body={};this.body.useClipDiv=false}
this.body=isc.ClassFactory.newInstance(this.bodyConstructor,{ID:this.ID+"_body",autoDraw:false,redrawOnResize:false,left:0,top:_0,width:this.width,height:this.getHeight()-_0,children:_1,hideUsingDisplayNone:(isc.Browser.isMoz&&_3?true:false),contents:_2,contentsURL:_3,className:this.bodyStyle,backgroundColor:this.bodyColor,visibility:this.minimized?isc.Canvas.HIDDEN:isc.Canvas.INHERIT,overflow:this.autoSize?"visible":"auto",orientation:this.contentLayout},this.bodyDefaults,this.body);this.addChild(this.body)},hasInherentHeight:function(){return this.autoSize},hasInherentWidth:function(){return this.autoSize},addItem:function(_0){return this.addItems([_0])},removeItem:function(_0){return this.removeItems([_0])},addItems:function(_0){if(!isc.isAn.Array(_0))_0=[_0];if(!this.items)this.items=[];for(var i=0;i<_0.length;i++){if(this.items.contains(_0[i]))continue;this.items.add(_0[i]);if(!this.$1f){if(isc.isA.Canvas(_0[i])&&_0[i].isDrawn())_0[i].clear()}else{if(this.body.addMember){this.body.addMember(_0[i])}else{this.body.addChild(_0[i])}}}
return _0},removeItems:function(_0){if(!isc.isAn.Array(_0))_0=[_0];if(this.$1f){if(this.body.removeMembers)this.body.removeMembers(_0);else{for(var i=0;i<_0.length;i++){if(_0[i].parentElement==this.body)_0[i].deparent()}}}
this.items.removeList(_0);return _0},makeShadow:function(){if(!this.showShadow){this.shadow=null;return}
this.shadow=isc.Canvas.newInstance({ID:this.ID+"_shadow",className:this.shadowStyle,autoDraw:false,left:this.left+this.shadowOffsetX,top:this.top+this.shadowOffsetY,width:this.getWidth(),height:this.getHeight(),backgroundColor:this.shadowColor,redrawOnResize:false,$lf:false,$mn:false,$le:true});this.addPeer(this.shadow)},childResized:function(_0,_1,_2){if(this.autoSize&&_0==this.body)this.fixLayout();this.Super("childResized",arguments)},fixLayout:function(){if(!this.$1f)return;if(this.$1i)return;if((isc.Browser.isSafari||isc.Browser.isIE4)&&!isc.Page.isLoaded()){isc.Page.setEvent("load",this,null,"fixLayout");if(isc.Browser.isIE)return}
this.$1i=true;this.$1j();this.$1i=false},$1j:function(){var _0=this.getVBorderPad(),_1=this.getHBorderPad(),_2=this.getLeftPadding(),_3=(this.header&&this.showHeader),_4=(this.body&&this.showBody),_5=this.showFooter,_6=(this.toolbar&&this.showToolbar),_7=(this.shadow&&this.showShadow),_8=(_3?this.header.getHeight():0),_9=(_5?this.footerHeight:0),_10=(_6?this.toolbar.getHeight():0),_11=(_6?this.toolbarMargins:0),_12=this.getWidth(),_13=this.getHeight();var _14=_0,_15=_1+(_3?_8+_2:0)+(_5&&!this.minimized?_9+_2:0);var _16,_17;if(this.autoSize){_16=this.body.getVisibleWidth();_17=this.body.getScrollHeight()+(_6?_10+_2+(2*_11):0);_12=_16+_14;_13=_17+_15}else{_16=_12-_14;_17=_13-_15}
if(_3)this.setHeader(_2,_2,_16,_8);if(this.minimized){if(this.autoSize)this.setWidth(_12)}else{var _18=this.getVBorderSize(),_19=_2+_8,_20=_13-_18;if(this.showBody&&_17>=0){if(this.autoSize&&this.body.overflow==isc.Canvas.AUTO){isc.Page.setEvent("idle",this.body.getID()+".setRect("+_2+", "+(_19+_2)+", "+_16+", "+_17+");",isc.Page.FIRE_ONCE)}else{this.body.setRect(_2,_19+_2,_16,_17)}
_19+=_2+_17}
if(this.showFooter){this.setFooter(_2,_20-_2-_9,_16,_9);_20-=(_2+_9)}
if(_6){this.toolbar.setRect(_2+_11,_20-_2-_10-_11,_16-(2*_11),_10)}
if(this.autoSize)this.resizeTo(_12,_13)}},setZIndex:function(_0){this.Super("setZIndex",arguments);if(this.shadow)this.shadow.moveBelow(this)},dragResizeStart:function(){if(this.Super("dragResizeStart",arguments)==false)return;if(this.autoSize&&this.body&&this.contentLayout!="none"){this.body.vPolicy=this.body.hPolicy="fill";this.body.setOverflow("auto")}
this.autoSize=false},resizeBy:function(_0,_1){if(this.Super("resizeBy",arguments)==false)return;if(isc.Browser.isIE){isc.Page.setEvent("idle",this,isc.Page.FIRE_ONCE,"fixLayout")}else{this.fixLayout()}},setData:function(_0){this.data=_0()},saveData:function(){return this.data},returnValue:function(_0){if(this.isVisible())this.hide();if(this.callback){if(this.convertToMethod("callback")){return this.callback(_0)}}
return _0},getData:function(_0){if(_0)this.saveData();return this.data},show:function(){if(isc.$m3)arguments.$fa=this;if(this.isModal){this.showClickMask(this.getID()+(this.dismissOnOutsideClick?".closeClick()":".flash()"),false)}
if(this.autoCenter)this.centerInPage();else this.moveTo(this.left,this.top);this.Super("show",arguments);if(this.body&&this.body.contentsURL)this.body.show();this.bringToFront()},hide:function(){if(this.body&&this.body.contentsURL)this.body.hide();this.Super("hide",arguments);if(this.isModal)this.hideClickMask()},centerInPage:function(){var _0,_1;if(this.parentElement!=null){_0=(this.parentElement.getVisibleWidth()-this.getVisibleWidth())/2+this.parentElement.getScrollLeft();_1=(this.parentElement.getVisibleHeight()-this.getVisibleHeight())/2+this.parentElement.getScrollTop()}else{_0=((isc.Page.getWidth()-this.getVisibleWidth())/2)+isc.Page.getScrollLeft();_1=((isc.Page.getHeight()-this.getVisibleHeight())/2)+isc.Page.getScrollTop()}
this.moveTo(_0,_1)},setLeft:function(_0){this.autoCenter=false;this.Super("setLeft",arguments)},setTop:function(_0){this.autoCenter=false;this.Super("setTop",arguments)},setBottom:function(_0){this.autoCenter=false;this.Super("setBottom",arguments)},setRight:function(_0){this.autoCenter=false;this.Super("setRight",arguments)},flash:function(_0){var _1=this.showHeader;if(_0==null){if(this.$1k)return false;this.$1k=true;_0=0;if(_1){if(this.header.getStateName()!=this.headerStyle){this.headerStyle=this.header.getStateName()}
if((this.header.src!=this.headerSrc)&&isc.isA.Img(this.header)){this.headerSrc=this.header.src}
if(this.headerColor!=this.header.backgroundColor&&this.header.backgroundColor!=null)
{this.headerColor=this.header.backgroundColor}}else{if(this.bodyColor!=this.body.backgroundColor&&this.body.backgroundColor!=null)
{this.bodyColor=this.body.backgroundColor}}}
if(_1){var _2=(_0%2==0?this.hiliteHeaderColor:this.headerColor),_3=(_0%2==0?this.hiliteHeaderSrc:this.headerSrc),_4=(_0%2==0?this.hiliteHeaderStyle:this.headerStyle);this.header.setClassName(_4)
this.header.setBackgroundColor(_2);if(this.$1g&&isc.isAn.Img(this.$1g)){this.$1g.setSrc(_3)}}else{var _2=(_0%2==0?this.hiliteBodyColor:this.bodyColor);this.body.setBackgroundColor(_2)}
_0++;if(_0<4)isc.Timer.setTimeout(this.getID()+".flash("+_0+")");else this.$1k=false;return false},minimize:function(){this.$1l=this.getHeight();this.$1m=this.$m5;this.$1n=this.canDragResize;this.canDragResize=false;var _0=this.defaultMinimizeHeight;if(this.showHeader){var _1;if(this.header){_1=this.header.getHeight()}else{var _2=this.headerDefaults;_1=_2.height!=null?_2.height:_2.defaultHeight}
_0=_1+this.getVBorderPad()}
this.minimized=true;if(this.body)this.body.hide();if(this.toolbar)this.toolbar.hide();if(this.resizer)this.resizer.hide();if(this.statusBar)this.statusBar.hide();if(this.minimizeButton)this.updateMinimizeButton();this.$m5=_0;this.setHeight(_0)},restore:function(){if(!this.$1l)this.$1l=this.getHeight();this.setHeight(this.$1l);this.$m5=this.$1m;if(this.$1n!=null)this.canDragResize=this.$1n;this.minimized=false;if(this.body)this.body.show();if(this.toolbar)this.toolbar.show();if(this.resizer)this.resizer.show();if(this.statusBar)this.statusBar.show();if(this.minimizeButton)this.updateMinimizeButton();delete this.$1l;delete this.$1n},maximize:function(){return},updateMinimizeButton:function(){if(!this.showMinimizeButton)return;if(this.minimized){this.minimizeButton.addProperties(this.restoreButtonDefaults)}else{this.minimizeButton.addProperties(this.minimizeButtonDefaults)}},closeClick:function(){this.returnValue(null);this.hide();return false},minimizeClick:function(){this.minimize();return false},restoreClick:function(){this.restore();return false},maximizeClick:function(){this.maximize();return false}});isc.Window.registerStringMethods({callback:"value"});isc.ClassFactory.defineClass("Dialog","Window");isc.Dialog.addClassProperties({$1o:[],NATIVE_ALERT:"native-alert",SC_ALERT:"sc-alert",OK:{title:"OK",width:75,click:"this.topElement.okClick()"},APPLY:{title:"Apply",width:75,click:"this.topElement.applyClick()"},YES:{title:"Yes",width:75,click:"this.topElement.yesClick()"},NO:{title:"No",width:75,click:"this.topElement.noClick()"},CANCEL:{title:"Cancel",width:75,click:"this.topElement.cancelClick()"}});isc.Dialog.addProperties({className:"dialogBackground",canDragReposition:false,autoCenter:true,bodyStyle:"dialogBody",bodyColor:"#DDDDDD",hiliteBodyColor:"#FFFFFF",bodyDefaults:{},closeButtonDefaults:isc.addProperties({},isc.Window.getInstanceProperty("closeButtonDefaults"),{click:"this.window.cancelClick()"}),headerStyle:"dialogHeader",hiliteHeaderStyle:"dialogHeaderHilite",headerLabelTextStyle:"dialogHeaderText",headerLabelInnerTextStyle:"dialogHeaderInnerText",canDragResize:false,showHeaderIcon:false,showMinimizeButton:false,showMaximizeButton:false,showFooter:false,showToolbar:true});isc.Dialog.addMethods({cancelClick:function(){return this.closeClick()},okClick:function(){this.saveData();this.hide();this.returnValue(true)},applyClick:function(){this.saveData()},yesClick:function(){this.returnValue(true)},noClick:function(){this.returnValue(false)}});isc.Dialog.Prompt={ID:"$1p",_generated:true,width:400,height:10,autoDraw:false,autoSize:true,isModal:true,autoCenter:true,showHeader:false,showFooter:false,showToolbar:false,padding:0,message:"Loading...",items:[{_constructor:"Label",left:5,top:0,width:390,height:90,align:isc.Canvas.CENTER,valign:isc.Canvas.CENTER}],initWidget:function(){this.items[0].contents=this.message;this.Super("initWidget",arguments)},showMessage:function(_0,_1){this.setProperties(_1);this.message=_0;if(!this.$1f)this.createChildren();this.body.children[0].setContents(this.message);this.body.setHeight(this.getHeight()-(this.header?this.header.getHeight():0));if(this.isDrawn()){this.body.redraw("showMessage");this.fixLayout()}
this.show()},clearMessage:function(){this.hide()}};isc.addGlobal("showPrompt",function(_0,_1){if(!isc.isA.Dialog(isc.Dialog.Prompt)){isc.Dialog.Prompt=isc.Dialog.newInstance(isc.Dialog.Prompt,_1,{message:_0});isc.Dialog.Prompt.show()}else{isc.Dialog.Prompt.showMessage(_0,_1)}});isc.addGlobal("clearPrompt",function(){if(!isc.isA.Dialog(isc.Dialog.Prompt))return;isc.Dialog.Prompt.clearMessage()});isc.Dialog.Warn={ID:"$1q",_generated:true,width:400,height:60,title:"Note",isModal:true,canDragReposition:true,autoDraw:false,autoSize:true,autoCenter:true,toolbarButtons:[isc.Dialog.OK],toolbarAlign:isc.Canvas.RIGHT,message:"Your message here!",items:[{_constructor:"Label",left:5,top:5,width:390,height:5}],initWidget:function(){this.items[0].contents=this.message;if(!this.body)this.body={};this.body.overflow=isc.Canvas.HIDDEN;this.Super(this.$f)},showMessage:function(_0,_1){this.message=_0;this.setProperties(_1);if(_1.callback==null)delete this.callback;if(!this.$1f)this.createChildren();this.body.children[0].setContents(this.message);this.body.setHeight(this.getHeight()-(this.header?this.header.getHeight():0));if(this.isDrawn()){this.body.redraw("showMessage");this.fixLayout()}
this.show()}};isc.addGlobal("warn",function(_0,_1,_2){if(!isc.isA.Dialog(isc.Dialog.Warn))isc.Dialog.Warn=isc.Dialog.create(isc.Dialog.Warn);if(!_1)_1={};if(!_1.buttons)_1.buttons=[isc.Dialog.OK];if(_2)_1.callback=_2;if(isc.Dialog.warnType==isc.Dialog.NATIVE_ALERT){if(_1.buttons.length!=1||!(_1.buttons.contains(isc.Dialog.OK))){isc.Dialog.Warn.logWarn("isc.Dialog.warnType set to use native alerts. "+"warn() method ignoring specified buttons")}
isc.Dialog.Warn.setProperties(_1);if(_1.callback==null)delete isc.Dialog.Warn.callback;alert(_0);isc.Dialog.Warn.okClick()}else{isc.Dialog.Warn.showMessage(_0,_1)}});isc.addGlobal("say",isc.warn);isc.addGlobal("ask",function(_0,_1,_2){if(!isc.isA.Dialog(isc.Dialog.Warn))isc.Dialog.Warn=isc.Dialog.newInstance(isc.Dialog.Warn);if(!_1)_1={};if(_2)_1.callback=_2;if(!_1.buttons)_1.buttons=[isc.Dialog.YES,isc.Dialog.NO];if(isc.Dialog.warnType==isc.Dialog.NATIVE_ALERT){if(_1.buttons.length!=2||!(_1.buttons.contains(isc.Dialog.YES)&&_1.buttons.contains(isc.Dialog.NO))){isc.Dialog.Warn.logWarn("isc.Dialog.warnType set to use native alerts. "+"ask() method ignoring specified buttons")}
isc.Dialog.Warn.setProperties(_1);if(_1.callback==null)delete isc.Dialog.Warn.callback;if(confirm(_0))isc.Dialog.Warn.yesClick();else isc.Dialog.Warn.noClick()}else{isc.Dialog.Warn.showMessage(_0,_1)}});isc.Canvas.addClassMethods({applyStretchResizePolicy:function(_0,_1){if(!_0)return;var _2=0,_3=0,_4=0,_5=0,_6=[];for(var i=0;i<_0.length;i++){_5=_0[i];if(_5==null||isc.is.emptyString(_5))_0[i]=_5="*";if(!isc.isA.Number(_5)){if(_5=="*"){_3++;_5=0}else if(_5.indexOf("%")>=0){_2+=parseInt(_5);_5=0}else if(isc.isA.Number(parseInt(_5))){_5=parseInt(_5)}else{_5=eval(_5);if(!isc.isA.Number(_5))_5=0}}
_5=Math.max(_5,0);_4+=_5;_6[i]=_5}
if(_3){var _7=(100/_3);_2+=100}
if(_2>0){var _8=_1-_4,_9=Math.max(0,_8/ _2),_10=null;for(i=0;i<_0.length;i++){_5=_0[i];if(isc.isA.String(_5)){if(_5=="*"){_4+=(_6[i]=Math.max(Math.round(_7*_9),1));_10=i}else if(_5.indexOf("%")>=0){_4+=(_6[i]=Math.max(Math.round(parseInt(_5)*_9),1));_10=i}}}
_6[_10]=Math.max(_6[_10]+_1-_4,1)}
this.logDebug("stretchResize with totalSize: "+_1+",  desired sizes: "+_0+",  calculated sizes: "+_6,"sizing");return _6}});isc.Canvas.addClassMethods({applyTableResizePolicy:function(_0,_1,_2,_3,_4,_5){var _6=this.logIsDebugEnabled("tablePolicy"),_7=this.logIsInfoEnabled("tablePolicy"),_8=this.logIsDebugEnabled("tablePlacement");var _9=_0.$1r;if(_9==null){_9=_0.$1r=[];var _10=0,_11=0;for(var _12=0;_12<_0.length;_12++){var _13=_0[_12];if(!_13.visible)continue;var _14=_13.getColSpan(),_15=_13.getRowSpan();if(_15==0||_14==0)continue;if(_14==null)_14=1;if(_15==null)_15=1;var _16=_14;if(_14=="*")_16=1;if(_13.showTitle&&(_13.titleOrientation==isc.Canvas.LEFT||_13.titleOrientation==isc.Canvas.RIGHT))
{_16+=1;if(_14!="*")_14+=1}
var _17=(_13.isStartRow?_13.isStartRow():_13.startRow),_18=(_13.isEndRow?_13.isEndRow():_13.endRow);if(_8){this.logDebug("at: "+["row"+_10,"col"+_11]+", item: "+(_13.name||_13.Class)+", required cols:"+_16+(_15>1?", rowSpan:"+_15:"")+(_17?", startRow:true":"")+(_18?", endRow:true":""),"tablePlacement")}
var _19=null,_20=null;if(_11>=_3||(_17&&_11!=0)){_10++;_11=0;_13.$1s=true}else{_13.$1s=false}
if(_10<_9.length){for(;_10<_9.length;_10++){var _21=_9[_10];if(_21==null)break;for(;_11<_3;_11++){if(_21[_11]!=null)continue;for(var j=_11;j<_3;j++){if(_21[j]!=null)break;if((j-_11)+1>=_16){_19=_10;_20=_11;break}}
if(_20!=null)break}
if(_20!=null)break;_11=0;_13.$1s=true}}
if(_20==null){_19=_10;_20=0;_13.$1s=true}
_11=_20;if(_14=="*")_14=_3-_11;if(!isc.isA.Number(_15))_15=1;for(var r=_10;r<_10+_15;r++){if(!_9[r])_9[r]=[];for(var c=_11;c<_11+_14;c++){_9[r][c]=_12}}
_13.$1t=[_20,_19,_20+_14,_19+_15];_11+=_14;if(_18)_11=_3;if(_8){this.logDebug("item: "+(_13.name||_13.Class)+" placed at: "+["row"+_19,"col"+_20]+(_13.$1s?", marked startRow ":"")+", rowTable: "+this.echoAll(_9),"tablePlacement")}}
var _22=0;for(var r=0;r<_9.length;r++){var _23=_9[r];if(_23==null)break;var _24=0,_25=null;for(var c=0;c<_23.length;c++){if(_23[c]==null){_24++;continue}
if(r>0&&_9[r-1]!=null&&_23[c]==_9[r-1][c])continue;var _12=_23[c],_13=_0[_12];if(_13==_25||_13==null)continue;_13.$1u=_22;_13.$1v=_24;if(_8&&(_24>0||_22>0)){this.logDebug("itemNum:"+_12+" ("+(_13.name||_13.Class)+") at: "+["row"+_19,"col"+_20]+" preceded by "+(_24>0?_24+" empty cells":"")+(_22>0?" "+_22+" empty rows":""),"tablePlacement")}
_24=_22=0;_25=_13}
if(_25==null){_22++;_24=0}}}
if(!_4||!isc.isAn.Array(_4)){if(!isc.isAn.Array(_4)){this.logWarn(" 'colWidths' not an array - Ignoring.","tableResizePolicy")}
_4=[]}
_4=_4.duplicate();for(var c=0;c<_4.length;c++){var _26=_4[c];if(isc.isA.String(_26)){if(_26=="*")_4[c]=[0,1000,0,1];else if(_26.contains("*"))_4[c]=[0,1000,0,parseInt(_26)];else if(_26.contains("%"))_4[c]=[0,1000,parseInt(_26),0]}}
_0.colWidths=_4;if(!_5){_5=[];for(var r=0;r<_9.length;r++){var _23=_9[r],_27=null,_28=100000,_29=0,_30=0;if(!_23)continue;for(var c=0;c<_23.length;c++){var _13=_0[_23[c]];if(!_13)continue;var _31=_13.getCellHeight();var _15=(_13.$1t[3]-_13.$1t[1]);if(_6)this.logWarn("item at: "+[r,c]+" has height: "+_31+", item is: "+_13);_13.$1w=false;if(isc.isA.Number(_31)){_31=Math.floor(_31/ _15);if(_6)this.logWarn("item: "+_13+" has pixel size: "+_31);if(_27==null||_31>_27){_27=_31}
if(_31>_28)_28=_31}else if(isc.isA.String(_31)){if(_31.contains("*")){_13.$1w=true;var _32=(_31=="*"?1:parseFloat(_31))
/ _15;                        if (_6) this.logWarn("item: " + _13 + " has star size: " + _32);						_30 = Math.max(_30, _32);					// else if height is a percentage
					} else {                        _13.$1w = true;						// get the percentage as a number
						// NOTE: if the item takes up more than one row, split it evenly across
                        // its rows
						var _33 = parseFloat(_31) /_15;if(_6)this.logWarn("item: "+_13+" has percent size: "+_33);if(_33>_29)_29=_33;if(_13.minHeight>_27){_27=_13.minHeight}
if(_13.minHeight>_28){_28=_13.minHeight}
if(_13.maxHeight<_28&&_27<_13.maxHeight)
{_28=_13.maxHeight}}}
if(_29>0||_30>0){if(_27==null)_27=0;_5[r]=[_27,_28,_29,_30]}else{if(_27==null){_27=_0.$1x||22}
_5[r]=_27}}}}
_0.rowHeights=_5;if(_7)this.logInfo("\ntotalWidth: "+_1+", totalHeight: "+_2+"\nspecified sizes:\n"+"cols:"+this.echoAll(_0.colWidths)+", rows: "+this.echoAll(_0.rowHeights),"tablePolicy");_0.$1y=_4=isc.Canvas.stretchResizeList(_0.colWidths,_1);_0.$w2=_5=isc.Canvas.stretchResizeList(_0.rowHeights,_2);if(_7)this.logInfo("\nderived sizes:\n"+"cols:"+this.echoAll(_0.$1y)+", rows: "+this.echoAll(_0.$w2),"tablePolicy");for(_12=0;_12<_0.length;_12++){_13=_0[_12];if(!_13.visible)continue;var _34=isc.isA.Canvas(_13),_26=_34?_13.getWidth():_13.width,_35=_34?_13.getHeight():_13.getCellHeight(),_36=_13.titleOrientation,_37=_13.$1t;if(_26=="*"){_26=0;var _38=(_13.showTitle&&_36==isc.Canvas.LEFT)?1:0,_39=(_13.showTitle&&_36==isc.Canvas.RIGHT)?1:0,_40=_37[0],_41=_37[2];for(var c=_40+_38;c<_41-_39;c++){_26+=_4[c]}}
if(_13.$1w){_35=0;var _17=_37[1],_18=_37[3];for(var c=_17;c<_18;c++){_35+=_5[c]}}
_13.$1z=[_26,_35]}},stretchResizeList:function(_0,_1){var _2=0,_3=0,_4=0,_5=_0.duplicate();for(var i=0;i<_0.length;i++){var _6=_5[i];if(isc.isA.Number(_6)){_6=Math.max(_6,1);_4+=_6;_5[i]=_6}else{var _7=_6[2],_8=_6[3];if(_8==0){_2+=_7}
_3+=_8}}
var _9=(_2<100?((100-_2)/_3):0);for(var r=0;r<_0.length;r++){var _6=_5[r];if(isc.isA.Number(_6))continue;var _7=_6[2],_8=_6[3],_10=_8*_9;if(_7<_10){_6[2]=_10;_2+=_10}else{_2=_7}
_3-=_8}
if(_2<=0)return _5;var _11=Math.max(0,_1-_4);for(var r=0;r<_0.length;r++){var _12=_11*(100/_2);_6=_5[r];if(isc.isA.Number(_6))continue;var _13=_6[0],_14=_6[2],_15=_12*(_14/ _2);if(_15<_13){_5[r]=_13;_11-=(_13-_15);_2-=_14;r=0}}
for(var r=0;r<_0.length;r++){var _12=_11*(100/_2);_6=_5[r];if(isc.isA.Number(_6))continue;var _16=_6[1],_14=_6[2],_15=_12*(_14/ _2);if(_15>_16){_5[r]=_16;_11+=(_15-_16);_2-=_14;r=0}}
_12=_11/ 100;for(var r=0;r<_0.length;r++){_6=_5[r];if(isc.isA.Number(_6))continue;var _14=_6[2];_5[r]=Math.floor(_14*_12)}
return _5}});isc.ClassFactory.defineClass("Hover");isc.Hover.addClassProperties({delay:1000,leftOffset:15,topOffset:15,hoverCanvasDefaults:{defaultWidth:100,defaultHeight:50,baseStyle:"content",backgroundColor:"#EBEBEB",border:"1px outset #B6B6B6",padding:5,valign:isc.Canvas.TOP,autoDraw:false}});isc.Hover.addClassMethods({show:function(_0,_1,_2){if(!this.hoverCanvas)this.$10();var _3=this.hoverCanvas;if(_0==null||_0==""){_3.hide();return}
this.hoverCanvas.setContents(_0);if(_1==null)_1={};if(_1.backgroundColor)this.hoverCanvas.setBackgroundColor(_1.backgroundColor);var _4=isc.EH.getLastEvent(),_5=isc.EH.getX(_4),_6=isc.EH.getY(_4),_7=_1.left,_8=_1.top,_9=_1.width||this.hoverCanvasDefaults.width,_10=_1.height||this.hoverCanvasDefaults.height;if(_7!=null||_8!=null){_7=_7?_7:_5+this.leftOffset;_8=_8?_8:_6+this.topOffset}else{this.hoverCanvas.setRect(null,-9999,_9,_10);if(!this.hoverCanvas.isDrawn())this.hoverCanvas.draw();else this.hoverCanvas.redrawIfDirty("placing hover");var r=_2?_2:[_5-this.leftOffset,_6-this.topOffset,2*this.leftOffset,2*this.topOffset];var _11=isc.Canvas.$qk(this.hoverCanvas.getVisibleWidth(),this.hoverCanvas.getVisibleHeight(),r,"bottom",false,"outside-right");_7=_11[0];_8=_11[1]}
_3.setRect(_7,_8,_9,_10);_3.bringToFront();_3.show();if(this.moveWithMouse){this.$11=isc.Page.setEvent("mouseMove","isc.Hover.$12()")}
return},hide:function(){var _0=isc.Hover.hoverCanvas;if(_0!=null){if(this.moveWithMouse){isc.Page.clearEvent("mouseMove",this.$11)}
_0.hide();_0.setWidth(this.hoverCanvasDefaults["width"]);_0.setHeight(this.hoverCanvasDefaults["height"]);_0.moveTo(null,-1000)}
return},$10:function(){this.hoverCanvas=isc.Label.newInstance(this.hoverCanvasDefaults)},$12:function(){var _0=isc.Canvas.$qk(this.hoverCanvas.getVisibleWidth(),this.hoverCanvas.getVisibleHeight(),this.getMousePointerRect(),"bottom",false,"outside-right");this.hoverCanvas.moveTo(_0.left,_0.top)},getMousePointerRect:function(){return[isc.EH.getX()-this.leftOffset,isc.EH.getY()-this.topOffset,2*this.leftOffset,2*this.topOffset]},setAction:function(_0,_1,_2){if(this.isActive||this.delay==0){_1.apply((_0?_0:this),_2);this.isActive=true}
else{if(this.timer!=null)this.timer=isc.Timer.clear(this.timer);this.actionTarget=(_0?_0:this);this.action=_1;this.actionArgs=_2?_2:[];this.timer=isc.Timer.setTimeout("isc.Hover.$13()",this.delay)}},$13:function(){if(this.action&&!this.actionTarget.destroyed){this.action.apply(this.actionTarget,this.actionArgs)}
this.actionTarget=this.action=this.actionArgs=null;this.isActive=true},clear:function(){this.hide();if(this.timer!=null)this.timer=isc.Timer.clear(this.timer);this.actionTarget=this.action=this.actionArgs=null;this.isActive=false}});isc.ClassFactory.defineClass("TabSet","Canvas");isc.TabSet.addProperties({overflow:"hidden",simpleTabBaseStyle:"tabButton",tabBarPosition:isc.Canvas.TOP,tabBarThickness:21,selectedTab:0,paneContainerDefaults:{},paneContainerClassName:"tabSetContainer",paneContainerOverflow:isc.Canvas.AUTO});isc.TabSet.addMethods({initWidget:function(){this.Super("initWidget",arguments);if(this.tabBarDefaults==null)this.tabBarDefaults={};if(this.tabInstanceDefaults==null)this.tabInstanceDefaults={};var _0=this.tabBarPosition;if(this.tabBarAlign==null){this.tabBarAlign=((_0=="left"||_0=="right")?"top":"left")}
if(this.useSimpleTabs){this.tabBarDefaults.buttonConstructor=isc.Button;this.tabInstanceDefaults.baseStyle=this.simpleTabBaseStyle+_0.substring(0,1).toUpperCase()+_0.substring(1)}
this.makeTabBar();this.createPanes();this.makePaneContainer();this.fixLayout()},makeTabBar:function(){if(this.tabs==null)return;var _0=(this.tabBarPosition==isc.Canvas.LEFT||this.tabBarPosition==isc.Canvas.RIGHT),_1=this.tabBarAlign;var _2=this.tabs.duplicate(),_3;for(var i=0;i<_2.length;i++){for(var j in this.tabInstanceDefaults){if(_2[i][j]===_3)_2[i][j]=this.tabInstanceDefaults[j]}}
var _4=isc.addProperties({ID:this.getID()+"_tabBar",width:(_0?this.tabBarThickness:"100%"),height:(_0?"100%":this.tabBarThickness),accessKey:this.accessKey,tabIndex:this.tabIndex,tabs:_2,reverseOrder:_0?(_1!="top"):(_1!="left"),orientation:_0?isc.Layout.VERTICAL:isc.Layout.HORIZONTAL,selectedTab:this.selectedTab,buttonDeselected:function(_7){this.Super("buttonDeselected",arguments);if(this.parentElement!=null)
this.parentElement.$14(_7)},buttonSelected:function(_7){this.Super("buttonSelected",arguments);if(this.parentElement!=null){this.parentElement.$15(_7)}},tabBarPosition:this.tabBarPosition,tabBarAlign:this.tabBarAlign,autoDraw:false},this.tabBarDefaults);this._tabBar=isc.TabBar.create(_4);this.addChild(this._tabBar)},setTabIndex:function(_0){this.Super("setTabIndex",arguments)
if(this._tabBar!=null)this._tabBar.setTabIndex(_0)},setAccessKey:function(_0){this.Super("setAccessKey",arguments);if(this._tabBar!=null)this._tabBar.setAccessKey(_0)},createPanes:function(){for(var i=0;i<this.tabs.length;i++){var _0=this.tabs[i],_1=_0.pane;if(_1==null)continue;_0.pane=this.createPane(_1)}},createPane:function(_0){if(_0==null)return _0;if(isc.isA.Canvas(_0)){if(_0.parentElement!=null)_0.deparent();if(_0.isDrawn())_0.clear();return _0}
var _1=_0._constructor
if(isc.ClassFactory.getClass(_1)==null)_1=isc.Canvas;_0._constructor=null;_0.autoDraw=false;return isc.ClassFactory.newInstance(_1,_0)},makePaneContainer:function(){var _0=isc.addProperties({ID:this.getID()+"_paneContainer",_constructor:"Canvas",className:this.paneContainerClassName,overflow:this.paneContainerOverflow,autoDraw:false,handleKeyPress:function(_11,_12){if(_11.keyName=="Tab"&&_11.ctrlKey){var _1=this.parentElement,_2=_1.tabs.length-1,_3=_1.getSelectedTabNumber();if(_11.shiftKey){if(_3>0)_3-=1;else _3=_2}else{if(_3<_2)_3+=1;else _3=0}
_1.selectTab(_3);_1.getTabBar().getButton(_3).focus();return false}
if(this.convertToMethod("keyPress"))return this.keyPress(_11,_12)}},this.paneContainerDefaults);this._paneContainer=isc.ClassFactory.newInstance(_0);if(this.customEdges){var _4=this.tabBarPosition,_5=this.tabBarAlign,_6;if((_4=="top"&&_5=="left")||(_4=="left"&&_5=="top"))
{_6={TR:true,R:true,BR:true,B:true,BL:true}}else if((_4=="top"&&_5=="right")||(_4=="right"&&_5=="top"))
{_6={BR:true,B:true,BL:true,L:true,TL:true}}else if((_4=="bottom"&&_5=="left")||(_4=="left"&&_5=="bottom"))
{_6={TL:true,T:true,TR:true,R:true,BR:true}}else if((_4=="bottom"&&_5=="right")||(_4=="right"&&_5=="bottom")){_6={BL:true,L:true,TL:true,T:true,TR:true}}
var _7=["edgeImage","edgeColor","edgeSize","edgeWidth","edgeHeight"],_8={};for(var i=0;i<_7.length;i++){var _9=_7[i];if(this[_9]!=null)_8[_9]=this[_9]}
this.$pp=isc.EdgedCanvas.create({autoDraw:false,children:[this._paneContainer],shownEdges:_6},_8);this.addChild(this.$pp);return}
this.addChild(this._paneContainer)},addTabs:function(_0,_1){if(!isc.isAn.Array(_0))_0=[_0];if(_1==null)_1=this.tabs.length;for(var i=0;i<_0.length;i++){if(_0[i].pane==null)continue;_0[i].pane=this.createPane(_0[i].pane);var _2;for(var j in this.tabInstanceDefaults){if(_0[i][j]===_2)_0[i][j]=this.tabInstanceDefaults[j]}
this.tabs.addAt(_0[i],(_1+i))}
this._tabBar.addTabs(_0,_1);if(this.getSelectedTabNumber()<0)this.selectTab(0);return _1},removeTabs:function(_0){if(!isc.isAn.Array(_0))_0=[_0];_0=this.map("getTabButton",_0);var _1=false,_2=this.getSelectedTab();for(var i=0;i<_0.length;i++){var _3=_0[i],_4=this.getTabNumber(_3),_5=this.tabs[_4];if(_5==_2)_1=true;this.tabs.removeItem(_4);if(_5.pane.parentElement==this._paneContainer)
this._paneContainer.removeChild(_5.pane);this._tabBar.removeTabs(_3)}
if(_1&&this.tabs.length>0)this.selectTab(0)},getTabObject:function(_0){_0=this.getTabNumber(_0);return this.tabs[_0]},getTabButton:function(_0){if(isc.isAn.Canvas(_0))return _0;if(this.tabs.contains(_0))_0=this.tabs.indexOf(_0);return this.getTabBar().getButton(_0)},getTabNumber:function(_0){return this.getTabBar().getButtonNumber(this.getTabButton(_0))},updateTab:function(_0,_1){if(isc.isAn.Object(_0)&&!isc.isA.Canvas(_0)&&this.tabs.indexOf(_0)==-1)
{if(_1!=null)_0.pane=_1;return this.addTabs(_0)}
var _2=this.getTabNumber(_0);if(_2==-1){this.logWarn("no such tab: "+this.echo(_0));return}
var _3=this.getTabObject(_2);if(_1==null||_3.pane==_1)return;if(_3.pane!=null){_3.pane.hide();_3.pane.deparent()}
_3.pane=this.createPane(_1);if(this.getSelectedTabNumber()==_2){this._paneContainer.addChild(_1);_1.show()}},fixLayout:function(){var _0=this._tabBar,_1=this.$pp||this._paneContainer;if(_0==null||_1==null)return;if(_1.getZIndex(true)>=_0.getZIndex(true))_1.moveBelow(_0);switch(this.tabBarPosition){case isc.Canvas.TOP:_1.setRect(0,_0.getHeight()-_0.borderThickness,this.getWidth(),this.getHeight()-_0.getHeight());break;case isc.Canvas.BOTTOM:_0.setTop(this.getHeight()-_0.getHeight());_1.setRect(0,0,this.getWidth(),this.getHeight()-_0.getHeight()+_0.borderThickness);break;case isc.Canvas.LEFT:_1.setRect(_0.getWidth()-_0.borderThickness,0,this.getWidth()-_0.getWidth(),this.getHeight());break;case isc.Canvas.RIGHT:_0.setLeft(this.getWidth()-_0.getWidth());_1.setRect(0,0,this.getWidth()-_0.getWidth()+_0.borderThickness,this.getHeight());break}},layoutChildren:function(){this.Super("layoutChildren",arguments);this.fixLayout()},$16:function(_0){if(isc.isA.Canvas(_0))_0=this.getTabObject(_0);this._paneContainer.scrollTo(0,0);if(_0&&_0.pane){this._paneContainer.addChild(_0.pane);_0.pane.show()}
this._paneContainer.adjustOverflow()},$15:function(_0){if(this.tabSelected){var _1=this._tabBar.getButtonNumber(_0),_2=this.getTabObject(_1);this.tabSelected(_1,_2.pane,_2.ID,_2);if(this.getSelectedTabNumber()!=_1)return}
this.$16(_0)},$14:function(_0){var _1=this._tabBar.getButtonNumber(_0),_2=this.getTabObject(_1);if(this.tabDeselected)this.tabDeselected(_1,_2.pane,_2.ID,_2);if(_2&&_2.pane)_2.pane.hide()},getSelectedTab:function(){var _0=(this._tabBar?this._tabBar.getSelectedTab():null);if(_0!=null)_0=this.getTabObject(_0);return _0},getSelectedTabNumber:function(){return this.getTabNumber(this.getSelectedTab())},selectTab:function(_0){var _1=this.getTabNumber(_0);if(_1!=-1&&this._tabBar)this._tabBar.selectTab(_1)},getTabBar:function(){return this._tabBar}});isc.TabSet.registerStringMethods({tabSelected:"tabNum,tabPane,ID,tab",tabDeselected:"tabNum,tabPane,ID,tab"});isc.builtinTypes={text:{validators:"isString"},string:{inheritsFrom:"text"},"boolean":{validators:"isBoolean"},integer:{validators:"isInteger"},"int":{inheritsFrom:"integer"},number:{inheritsFrom:"integer"},"float":{validators:"isFloat"},decimal:{inheritsFrom:"float"},date:{validators:"isDate"},time:{validators:"isTime"},positiveInteger:{inheritsFrom:"integer",validators:{type:"integerRange",min:0}},integerPercent:{inheritsFrom:"integer",validators:{type:"integerRange",min:0,max:100}},percent:{inheritsFrom:"integerPercent"},sequence:{inheritsFrom:"integer"},"enum":{validators:null},regexp:{inheritsFrom:"text",validators:"isRegexp"},identifier:{inheritsFrom:"text",validators:"isIdentifier"},URL:{inheritsFrom:"text"},HTML:{inheritsFrom:"text"},measure:{validators:"isMeasure"},integerOrAuto:{validators:"integerOrAuto"},expression:{inheritsFrom:"text"},method:{inheritsFrom:"text"},"function":{inheritsFrom:"text"},alignEnum:{inheritsFrom:"enum",valueMap:{down:"down",left:"left",right:"right",up:"up"}},color:{inheritsFrom:"string"}}
isc.ClassFactory.defineClass("DynamicForm","Canvas");isc.addGlobal("FormLayout",isc.DynamicForm);isc.DynamicForm.addClassProperties({$a7:null,GET:"get",POST:"post",NORMAL:"normal",MULTIPART:"multipart",NORMAL_ENCODING:"application/x-www-form-urlencoded",MULTIPART_ENCODING:"multipart/form-data"});isc.DynamicForm.addProperties({numCols:2,fixedColWidths:false,colWidths:null,minColWidth:20,cellSpacing:0,cellPadding:2,cellBorder:0,tableWidth:"100%",defaultRowHeight:22,$n5:true,drawChildrenThenContent:true,fieldIdProperty:"name",titleField:"title",showDetailFields:true,textAreaThreshold:255,titlePrefix:"",rightTitlePrefix:":&nbsp;",titleSuffix:"&nbsp;:",rightTitleSuffix:"",titleWidth:100,hiliteRequiredFields:true,requiredTitlePrefix:"<B>",requiredRightTitlePrefix:"<B>:&nbsp;",requiredTitleSuffix:"&nbsp;:</B>",requiredRightTitleSuffix:"</B>",overflow:isc.Canvas.VISIBLE,defaultHeight:20,validateOnChange:false,scrollIntoViewOnValidation:true,$17:20,unknownErrorMessage:"Invalid value",autoFocus:false,selectOnFocus:false,canFocus:true,_useNativeTabIndex:false,$j6:false,useClickMaskDiv:true,uniqueMatch:true,action:"#",method:isc.DynamicForm.POST,encoding:isc.DynamicForm.NORMAL_ENCODING,autoSendTargetFieldName:"__target__",useNativeSelectItems:false,hideUsingDisplayNone:isc.Browser.isMoz&&isc.Browser.isMac});isc.DynamicForm.addMethods({initWidget:function(){var _0;this.Super("initWidget",arguments);if(this.fields&&this.items==null)this.items=this.fields;if(this.defaultItems!=null&&this.items==null){this.items=[];for(var i=0;i<this.defaultItems.length;i++){this.items[i]=isc.addProperties({},this.defaultItems[i])}}
if(this.values==null)this.values={};this.setItems(this.items?this.items:[]);if(!this.enabled){this.setEnabled(false)}
if(this.valuesManager!=null){var _1=this.valuesManager;this.valuesManager=null;if(isc.isA.ValuesManager(_1)){_1.addMember(this)}else if(isc.isA.ValuesManager(window[_1])){window[_1].addMember(this)}else if(isc.isA.String(_1)){isc.ValuesManager.create({ID:_1,members:[this]})}else{this.logWarn("Form initialized with invalid 'valuesManager' property:"+isc.Log.echo(_1)+", clearing this property out")}}
this.setErrors(this.errors?this.errors:{});this.setValues(this.values)},$18:function(_0){if(!_0)return;if(!isc.isA.FormItem(_0[0]))return;_0.map("destroy")},destroy:function(){this.$18(this.items);this.Super("destroy",arguments)},setEnabled:function(_0){this.Super("setEnabled",arguments);var _1=this.getItems();for(var i=0;i<_1.length;i++){_1[i].setEnabled(_0)}},applyFieldDefaults:function(_0){if(_0==null)return;for(var i=0;i<_0.length;i++){var _1=_0[i];if(_1==null)return;var _2=_1.$19=_1.editorType||_1.formItemType||_1.type||"text";if(_1.editorType||_1.formItemType){if(_1.type=='alignEnum'){_1.valueMap=["up","down","left","right"]}
continue}
if(_2=="boolean")_1.$19="checkbox";else if(_2=="enum")_1.$19="select";else if(_2=="alignEnum"){_1.$19="select";_1.valueMap=["up","down","left","right"]}else{if(_1.type!=null&&_1.type!="text"){if(isc.FormItemFactory.getItemClass(_1.type)!=null)continue;if(_1.type=="selectOther")continue}
if(_1.valueMap){_1.$19="select"}else if(_1.length&&_1.length>this.textAreaThreshold){_1.$19="textArea"}else{_1.$19="text"}}}},setItems:function(_0){if(_0!=null){for(var i=0;i<_0.length;i++){if(_0[i]==null){this.logWarn("Encountered empty entry in items array - removing this entry.")
_0.removeAt(i);i-=1;continue}}}
_0=this.bindToDataSource(_0);if(!_0)_0=[];else if(_0==this.items)_0=_0.duplicate();if(this.items!=null)this.removeItems(this.items);this.items=_0;this.applyFieldDefaults(_0);var _1=[];for(var _2=0;_2<_0.length;_2++){var _3=_0[_2];if(!_3){_0.removeItem(_2);_2--;continue}
if(_3.form!=null&&!(_3.form==this.getID()||_3.form!=this)){this.logWarn("Unsupported 'form' property ["+_3.form+"] set on item:"+_3+".  Ignoring.")}
_3.form=this;if(_3.containerWidget==null)_3.containerWidget=this;_3.eventParent=this;_0[_2]=_3=isc.FormItemFactory.makeItem(_3);if(_3.shouldSaveValue&&(_3[this.fieldIdProperty]==null||_3[this.fieldIdProperty]==""))
{this.logWarn(_3.getClass()+" form item defined with no '"+this.fieldIdProperty+"' property - Value will not be saved."+" To explicitly exclude a form item from the set of values to "+"be saved, set 'shouldSaveValue' to false for this item.")
_3.shouldSaveValue=false}
if(isc.isA.GroupItem(_3)&&!_3.groupVisible)_1.add(_3)}
for(var i=0;i<_1.length;i++){_1[i].hideGroup()}
this.$2a=true;this.markForRedraw("setItems")},setFields:function(_0){this.setItems(_0)},getFields:function(){return this.items},getItems:function(){return this.items},addItems:function(_0,_1){if(!isc.isAn.Array(_0))_0=[_0];if(_1==null)_1=this.items.length;this.applyFieldDefaults(_0);for(var _2=0;_2<_0.length;_2++){var _3=_0[_2];if(!_3){_0.removeItem(_2);_2--;continue}
_3.form=this;if(_3.containerWidget==null)_3.containerWidget=this;_3.eventParent=this;_0[_2]=_3=isc.FormItemFactory.makeItem(_3);if(_3.shouldSaveValue&&(_3[this.fieldIdProperty]==null||_3[this.fieldIdProperty]=="")){this.logWarn(_3.getClass()+" form item defined with no '"+this.fieldIdProperty+"' property - Value will not be saved."+" To explicitly exclude a form item from the set of values to "+"be saved, set 'shouldSaveValue' to false for this item.")
_3.shouldSaveValue=false}}
this.items.addListAt(_0,_1);this.$2a=true;this.markForRedraw("Form items added")},removeItems:function(_0){if(!isc.isAn.Array(_0))_0=[];if(_0==this.items)_0=this.items.duplicate();this.items.removeList(_0);for(var i=0;i<_0.length;i++){var _1=_0[i];if(!this.items.contains(_1)&&isc.isA.FormItem(_1))_1.destroy()}
this.$2a=true;this.markForRedraw("Form items removed")},addFields:function(_0,_1){return this.addItems(_0,_1)},removeFields:function(_0){return this.removeItems(_0)},moved:function(){this.Super("moved",arguments);this.itemsMoved()},parentMoved:function(){this.Super("parentMoved",arguments);this.itemsMoved()},zIndexChanged:function(){this.Super("zIndexChanged",arguments);this.itemsZIndexChanged()},parentZIndexChanged:function(){this.Super("parentZIndexChanged",arguments);this.itemsZIndexChanged()},itemsMoved:function(){var _0=this.getItems();if(!_0)return;for(var i=0;i<_0.length;i++){if(_0[i].isVisible)_0[i].moved()}},itemsVisibilityChanged:function(){var _0=this.getItems();if(!_0)return;for(var i=0;i<_0.length;i++){_0[i].visibilityChanged()}},itemsZIndexChanged:function(){var _0=this.getItems();if(!_0)return;for(var i=0;i<_0.length;i++){_0[i].zIndexChanged()}},scrollTo:function(_0,_1){var _2=this.getScrollLeft(),_3=this.getScrollTop();this.Super("scrollTo",arguments);if(_2!=this.getScrollLeft()||_3!=this.getScrollTop)this.itemsMoved()},setAutoComplete:function(_0){this.autoComplete=_0;for(var i=0;i<this.items.length;i++){this.items[i].$2b()}},setValues:function(_0){if(_0==null)_0={};this.$2c(_0);this.setItemValues(_0);this.rememberValues();this.markForRedraw("setValues")},setData:function(_0){this.setValues(_0)},rememberValues:function(){var _0=this.getValues(),_1=this.$2d={};for(var _2 in _0){if(isc.isA.Function(_0[_2]))continue;if(isc.isA.Date(_0[_2])){_1[_2]=new Date();_1[_2].setTime(_0[_2].getTime())}else{_1[_2]=_0[_2]}}
return _1},resetValues:function(){this.clearErrors();var _0={};for(var _1 in this.$2d){if(isc.isA.Date(_0[_1])&&isc.isA.Date(this.$2d[_1]))
_0[_1].setTime(this.$2d[_1].getTime());else
_0[_1]=this.$2d[_1]}
this.setValues(_0)},clearValues:function(){this.setValues();var _0=this.getItems();for(var i=0;i<_0.length;i++){if(_0[i].shouldSaveValue==false)_0[i].setValue(null)}
this.clearErrors();this.rememberValues();this.markForRedraw("clearValues")},valuesHaveChanged:function(){var _0=this.getValues(),_1=this.$2d,_2=false;if(!isc.isAn.Object(_1))return true;for(var _3 in _0){if(isc.isA.Function(_0[_3]))continue;if(_2==false&&_0[_3]!=_1[_3])_2=true}
return _2},getValues:function(){this.updateFocusItemValue();return this.values},updateFocusItemValue:function(){var _0=this.getFocusItem();if(!this.$xp&&_0!=null&&_0.$2e()){_0.updateValue()}},getData:function(){return this.getValues()},getValuesAsCriteria:function(){var _0=this.getValues();return isc.DataSource.filterCriteriaForFormValues(_0)},getFilterCriteria:function(){return this.getValuesAsCriteria()},getItem:function(_0){if(isc.isA.FormItem(_0))return _0;if(isc.isA.Number(_0)){return this.items[_0]}else if(isc.isA.String(_0)){for(var _1=0,_2=this.items.length;_1<_2;_1++){if(this.items[_1][this.fieldIdProperty]==_0){return this.items[_1]}}
if(isc.isA.Number(_0-1)){return this.items[parseInt(_0)]}
return null}},getField:function(_0){return this.getItem(_0)},getSubItem:function(_0){return this.getItem(_0)},getItemById:function(_0){var _1;if(isc.isA.String(_0)){_1=window[_0]}else _1=_0;if(isc.isA.FormItem(_1))return _1;return null},getValue:function(_0){var _1=this.getItem(_0);if(_1)return _1.getValue();return this.getValues()[_0]},setValue:function(_0,_1){var _2=this.getItem(_0);if(_2!=null)return _2.setValue(_1);else if(this.values!=null){this.$2f(_0,_1);return _1}},saveItemValue:function(_0,_1){if(_0.shouldSaveValue==false)return;var _2=_0.getFieldName();if(!_2)return;this.$2f(_2,_1);_0.$2g()},$2f:function(_0,_1){this.values[_0]=_1;if(this.valuesManager!=null)this.valuesManager.$2h(_0,_1)},$2c:function(_0){this.values=_0;if(this.valuesManager!=null){var _1=isc.getKeys(this.values);for(var i in _0){this.valuesManager.$2h(i,_0[i]);_1.remove(i)}
for(var i=0;i<_1.length;i++){this.valuesManager.$2i(_1[i])}}},getSavedItemValue:function(_0){if(_0.shouldSaveValue==false)return null;var _1=_0.getFieldName();return(_1&&this.values[_1]!=null?this.values[_1]:_0.getDefaultValue())},resetValue:function(_0){var _1=this.getItem(_0);return(_1?_1.resetValue():null)},getValueMap:function(_0){var _1=this.getItem(_0);return(_1?_1.getValueMap():null)},setValueMap:function(_0,_1){var _2=this.getItem(_0);return(_2?_2.setValueMap(_1):null)},resetValueMap:function(_0){var _1=this.getItem(_0);return(_1?_1.resetValueMap():null)},getOptions:function(_0){return this.getValueMap(_0)},setOptions:function(_0,_1){return this.setValueMap(_0,_1)},resetOptions:function(_0){return this.resetValueMap(_0)},getForm:function(_0){var _1=(_0==null?[this.getFormID()]:arguments);return this.Super("getForm",_1)},getFormID:function(){return this.ID+"_form"},getSerializeableFields:function(_0,_1){_0.addList(["items"]);return this.Super("getSerializeableFields",arguments)},showGroup:function(_0){var _1=this.getItem(_0);if(isc.isA.GroupItem(_1))_1.showGroup()},hideGroup:function(_0){var _1=this.getItem(_0);if(isc.isA.GroupItem(_1))_1.hideGroup()},setErrors:function(_0,_1){this.errors=_0;if(_1)this.markForRedraw("Errors updated")},setError:function(_0,_1){var _2=this.errors[_0];if(!_2)this.errors[_0]=_1;else{if(isc.isA.String(_2))this.errors[_0]=[_2,_1];else this.errors[_0].add(_1)}},getError:function(_0){var _1=this.getItem(_0);return(_1?this.errors[_1.getFieldName()]:null)},clearError:function(_0){delete this.errors[_0]},clearErrors:function(_0){this.setErrors({},_0)},addValidationError:function(_0,_1,_2){if(!_0[_1]){_0[_1]=_2}else if(isc.isAn.Array(_0[_1])){_0[_1].add(_2)}else{_0[_1]=[_0[_1],_2]}
return true},hasErrors:function(){var _0=this.errors;if(!_0)return false;for(var _1 in _0){if(_0[_1]!=null)return true}
return false},showErrorMessage:function(_0){isc.warn(_0);return false},showAllErrors:function(_0){var _1="";for(var _2 in _0){_1+=_0[_2]+"\r"}
return this.showErrorMessage(_1)},draw:function(_0){if(isc.$m3)arguments.$fa=this;if(!this.readyToDraw())return this;this.Super("draw",arguments);var _1="if(!window."+this.getID()+")return;"+this.getID()+".$2j();";this.$xp=true;if(this.autoFocus||this.getFocusItem()!=null){_1+=this.getID()+".focus()"}
isc.Page.setEvent("idle",_1,isc.Page.FIRE_ONCE);this.$2k()},$2j:function(){this.setItemValues();this.rememberValues();delete this.$xp},redraw:function(){var _0=this.getFocusItem(),_1=(_0?(_0.hasFocus||_0.$2l):false);if(_1)_0.rememberSelection();if(isc.Browser.isMoz)this.$xo();this.Super("redraw",arguments);this.setItemValues();var _2,_3,_4;if(isc.Browser.isMoz){_4=this.getClipHandle();if(_4){_2=_4.scrollLeft;_3=_4.scrollTop}}
if(this.isVisible()&&_1){if(isc.Browser.isIE){isc.Page.setEvent("idle",this.getID()+".$2m("+(_0?_0.getID():"")+")",isc.Page.FIRE_ONCE)}else this.$2m(_0)}
if(isc.Browser.isMoz){if(_2!=null&&_4.scrollLeft!=_2)
_4.scrollLeft=_2;if(_3!=null&&_4.scrollTop!=_3)
_4.scrollTop=_3}
this.$2k();this.itemsMoved()},$2m:function(_0){if(_0==null)return;_0=this.getItem(_0);var _1=this.getFocusItem(),_2=isc.EH.getFocusCanvas();if(_1!=_0||(_2!=this&&_2!=null)){}else{this.$xq(_0);_0.resetToLastSelection()}
if(_0.$2l)delete _0.$2l},$2k:function(){for(var i=0;i<this.items.length;i++){var _0=this.items[i];if(_0&&_0.isA("CanvasItem"))_0.placeCanvas()}},redrawFormItem:function(_0){this.markForRedraw("redrawFormItem")},getElementValues:function(){var _0={};for(var i=0;i<this.items.length;i++){var _1=this.items[i],_2=_1.getElement()?_1.getElement().value:"[no element]";_0[_1[this.fieldIdProperty]]=_2}
return _0},setItemValues:function(_0){if(_0==null)_0=this.getValues();for(var _1=0;_1<this.items.length;_1++){var _2=this.items[_1],_3=_0[_2[this.fieldIdProperty]];if(_2.shouldSaveValue==false){var _4;if(_3===_4){_2.setValue(_2._value);continue}
this.logInfo("DynamicForm.setValues() passed a value for '"+_2[this.fieldIdProperty]+"'."+" The corresponding form item was declared with 'shouldSaveValue' set to "+" false to exclude its value from the form's values object."+" Setting 'shouldSaveValue' to true for this item."+"\n[To avoid seeing this message in the future, set 'shouldSaveValue'"+" to true for any form items whose values are to be managed via "+" form.setValues() / form.getValues().]")
_2.shouldSaveValue=true}
_2.setValue(_3)}},getInnerHTML:function(){var _0=isc.StringBuffer.newInstance();_0.append(this.getFormTagStartHTML());_0.append(this.getTableStartHTML());var _1=this.values,_2=this.items;var _3=false;for(var _4=0;_4<_2.length;_4++){var _5=_2[_4];if(_5.showIf){Function.replaceStringWithMethod(_5,"showIf","item,value,form,values");var _6=_5.getValue(),_7=(_5.showIf(_5,_6,this,_1)==true);if(_7!=_5.visible){_5.visible=_7;_3=true}}}
if(_3||this.$2a){delete _2.$1r;delete _2.$w2;delete _2.$1y}
this.$2a=false;this.setRequiredIf();var _8;if(this.colWidths){_8=this.colWidths}else{_8=[];var _9=(this.tableWidth?this.tableWidth:this.getInnerWidth());if(isc.isA.String(_9)&&_9.contains("%")){_9=this.getInnerWidth()*(parseInt(_9)/100)}
_9-=(this.cellBorder!=null?this.cellBorder:0);var _10=Math.floor(this.numCols/ 2),_11=_9-(_10*this.titleWidth),_12=Math.floor(_11/(this.numCols-_10));_12=Math.max(this.minColWidth,_12);for(var i=0;i<_10;i++){_8.add(this.titleWidth);_8.add(_12)}
if((this.numCols%2)!=0)_8.add(_12);this.logDebug("totalWidth: "+_9+", generated colWidths: "+_8,"tablePolicy")}
_2.$1x=this.defaultRowHeight;isc.Canvas.applyTableResizePolicy(_2,this.getInnerWidth(),this.getInnerHeight(),this.numCols,_8);_8=_2.$1y;for(var _13=0;_13<_8.length;_13++){var _14=_8[_13];_0.append("<COL WIDTH=",_14,">")}
if(this.fixedColWidths){_0.append("<TR>");for(var _13=0;_13<_8.length;_13++){var _15=_8[_13];_15-=(this.cellSpacing!=null?(2*this.cellSpacing):0);_15-=(this.cellPadding!=null?(2*this.cellPadding):0);_0.append("<TD>",isc.Canvas.spacerHTML(_15,1),"</TD>\r")}
_0.append("</TR>")}
if(this.autoSendTarget&&this.target){_0.append("<INPUT TYPE=HIDDEN NAME='",this.autoSendTargetFieldName,"' VALUE='",this.target,"'>\r")}
var _16=[];for(var _4=0,_17=this.items.length;_4<_17;_4++){var _5=this.items[_4];if(!_5)continue;_5.$2g();this.logDebug("Drawing FormItem: "+_5);if(!_5.visible)continue;if((_5.rowSpan==0||_5.colSpan==0)&&_4<_17-1){_16.add(_5);continue}
var _18=_5.getFieldName(),_19=_5.getError(),_6=_5.getValue(),_20=this.getTitleOrientation(_5);if(isc.is.emptyString(_19))_19=null;if(_5.$1s||_4==0){if(_4!=0)_0.append(this.getRowEndHTML());if(_5.$1u>0){for(var i=0;i<_5.$1u;i++)_0.append("<TR></TR>")}
_0.append(this.getRowStartHTML());if(_5.$1v>0){for(var i=0;i<_5.$1v;i++)_0.append("<TD></TD>")}}
if(_20==isc.Canvas.LEFT){_0.append(this.getTitleCellHTML(_5,_19))}
_0.append(this.getCellStartHTML(_5,_19));if(_20==isc.Canvas.TOP){_0.append(this.getTitleSpanHTML(_5,_19),"<br>")}
if(_19)_0.append(_5.getErrorHTML(_19));if(_16.length>0){for(var m=0;m<_16.length;m++){_0.append(_16[m].getInnerHTML(_16[m].getValue()))}
_16=[]}
_0.append(_5.getInnerHTML(_6));_0.append(_5.getHintHTML());_0.append(this.getCellEndHTML(_5,_19));if(_20==isc.Canvas.RIGHT){_0.append(this.getTitleCellHTML(_5,_19))}}
if(this.items.length>0)_0.append(this.getRowEndHTML());_0.append(this.getTableEndHTML());_0.append(this.getFormTagEndHTML());return _0.toString()},getRowStartHTML:function(_0,_1){return"<TR>"},getRowEndHTML:function(){return"</TR>"},getCellStartHTML:function(_0,_1){var _2=_0.getColSpan(),_3=_0.getRowSpan();if(_2==0)_2=1;if(_3==0)_3=1;if(_2=="*"){var _4=(_0.$1t?_0.$1t[0]:0);_2=(this.numCols-_4)}
return this.$2n((_0.align?_0.align:((this.form?this.form.isRTL():this.isRTL())?isc.Canvas.RIGHT:isc.Canvas.LEFT)),(_1==null?_0.cellClassName:_0.errorCellClassName),_3,_2,null,_0.height,this.getItemPromptHTML(_0),_0.cssText,(this.form?this.form.getID():this.getID()),_0.getItemID())},$2n:function(_0,_1,_2,_3,_4,_5,_6,_7,_8,_9){var _10=isc.StringBuffer.create(),_11=isc.$d3;_10.append("<TD ALIGN=",_0,(_1!=null?" CLASS="+_1:_11)," STYLE='white-space:nowrap;",(_7!=null?_7:_11),"'",(_2>1?" ROWSPAN="+_2:_11),(_3>1?" COLSPAN="+_3:_11),(_4!=null?" WIDTH="+_4:_11),(_5!=null?" HEIGHT="+_5:_11),(_6!=null?_6:_11));if(_9&&_8){_10.append(" ID=",_9,"$2o");_10.append(" ONCLICK='return ",_8,".cellClicked(\"",_9,"\")'")}
_10.append(">");return _10.toString()},getCellEndHTML:function(_0,_1){if(_0.getRowSpan()==0||_0.getColSpan()==0)return"";return this.$2p()},$2p:function(){return"</TD>\r\n"},getTitleOrientation:function(_0){if(!_0.shouldShowTitle())return null;return this.titleOrientation||_0.titleOrientation},getTitleAlign:function(_0){return(_0.titleAlign?_0.titleAlign:((this.form?this.form.isRTL():this.isRTL())?isc.Canvas.LEFT:isc.Canvas.RIGHT))},getTitleSpanHTML:function(_0,_1){var _2=isc.StringBuffer.create();_2.append("<SPAN CLASS=",(_1==null?_0.titleClassName:_0.titleErrorClassName)," ALIGN=",this.getTitleAlign(_0),this.getItemPromptHTML(_0),">");_2.append(this.getTitleHTML(_0,_1));_2.append("</SPAN>\r");return _2.toString()},getTitleCellHTML:function(_0,_1){var _2=isc.StringBuffer.create();_2.append("<TD CLASS=",(_1==null?_0.titleClassName:_0.titleErrorClassName),(_0.getRowSpan()>1?" ROWSPAN="+_0.getRowSpan():"")," ALIGN=",this.getTitleAlign(_0),this.getItemPromptHTML(_0),">");_2.append(this.getTitleHTML(_0,_1));_2.append("</TD>\r");return _2.toString()},getTitleHTML:function(_0,_1){var _2=isc.StringBuffer.create();var _3=_0.getTitleHTML();if(_3){var _4=(_0.required||_0.$2q),_5=this.getTitleOrientation(_0),_6=(_5==isc.Canvas.LEFT||_5==isc.Canvas.TOP);_2.append((_4&&this.hiliteRequiredFields?(_6?this.requiredTitlePrefix:this.requiredRightTitlePrefix):(_6?this.titlePrefix:this.rightTitlePrefix)),_0.getTitleHTML(),(_4&&this.hiliteRequiredFields?(_6?this.requiredTitleSuffix:this.requiredRightTitleSuffix):(_6?this.titleSuffix:this.rightTitleSuffix)))}else{_2.append("&nbsp;")}
return _2.toString()},getFormTagStartHTML:function(){return isc.StringBuffer.concat("<FORM ",(isc.Browser.isNav?"NAME":"ID"),"=",this.getFormID()," METHOD=",this.method," ACTION=",this.action," ENCTYPE=",(this.isMultipart()?isc.DynamicForm.MULTIPART_ENCODING:isc.DynamicForm.NORMAL_ENCODING),(this.target?" TARGET='"+this.target+"'":"")," ONSUBMIT='return ",this.getID(),".$2r()'"," ONRESET='",this.getID(),".resetValues(); return false;'",(isc.Browser.isIE?" STYLE='margin-bottom:0;'":""),">\r")},$2r:function(){if(this.items&&this.items.find("Class","SubmitItem")==null){return false}
if(this.dataSource==null)return this.handleSubmit();this.saveData();return false},getFormTagEndHTML:function(){return"</FORM>\r"},getTableStartHTML:function(){return isc.StringBuffer.concat("<TABLE ID='",this.$2s(),"' ",(this.tableWidth?"WIDTH="+this.tableWidth:"")," CELLSPACING=",this.cellSpacing," CELLPADDING=",this.cellPadding," BORDER=",this.cellBorder,">",(isc.Browser.isMoz?"<TBODY>":""),"\r")},getTableEndHTML:function(){return"</TABLE>\r"},$2s:function(){if(!this.$2t)this.$2t=[this.getID(),"$2u"].join("");return this.$2t},$2v:function(){return isc.Canvas.getElementById(this.$2s())},layoutChildren:function(){this.Super("layoutChildren",arguments);var _0=this.getItems();if(!_0)return;for(var i=0;i<_0.length;i++){var _1=_0[i].width,_2=_0[i].height;if((isc.isA.String(_1)&&(_1.contains("%")||_1.contains("*")))||(isc.isA.String(_2)&&(_2.contains("%")||_2.contains("*"))))
{this.markForRedraw();break}}},handleSubmit:function(){if(!this.canSubmit)return false;if(!this.validate())return false;return true},submitForm:function(){var _0=this.getForm();if(_0)return _0.submit();return true},validate:function(){var _0=this.hasErrors(),_1=false,_2=null,_3=this.getForm();if(!_3)return this.showErrorMessage("Form not found!");var _4={};var _5=this.getValues();for(var _6=0;_6<this.items.length;_6++){var _7=this.items[_6];if(!_7.visible||!_7.validators){continue}
var _8=_7.getFieldName()
_13=_7.getValue();if(!isc.isAn.Array(_7.validators)){_7.validators=[_7.validators]}
var _9=_7.validators;this.logDebug("Applying "+_9.length+" validators to field '"+_8+"' with value '"+_13+"'");for(var v=0;v<_9.length;v++){var _10=_9[v];if(!_10)continue;var _11=this.processValidator(_7,_10,_13);if(_11!=true){var _12=_10.errorMessage;if(_12==null)_12=_10.defaultErrorMessage;if(_12==null)_12=this.unknownErrorMessage;_1=this.addValidationError(_4,_8,_12);if(_2==null)_2=_7;if(_10.suggestedValue!=null){_5[_8]=_10.suggestedValue}}
if(_10.resultingValue!=null){_5[_8]=_10.resultingValue}
if(!_11&&_10.stopIfFalse)break}}
this.setRequiredIf();for(var _6=0;_6<this.items.length;_6++){var _7=this.items[_6],_8=_7.getFieldName();if(_7.visible&&_7.required&&!_4[_8]){var _13=_5[_8];if(_13==null||isc.is.emptyString(_13)){_1=this.addValidationError(_4,_8,isc.Validator.requiredField);if(_2==null||(this.items.indexOf(_2)>_6)){_2=_7}}}}
if(_1)this.logInfo("Validation errors: "+isc.Comm.serialize(_4));this.setErrors(_4);this.setItemValues(_5);for(var _14 in _5){if(this.getItem(_14)==null)this.$2f(_14,_5[_14])}
if(_1||_0){if(_2!=null)this.$xq(_2);this.markForRedraw("validationErrors");if(this.scrollIntoViewOnValidation){isc.Page.scrollTo(this.getPageLeft()-this.$17,this.getPageTop()-this.$17)}}
return!_1},processValidator:function(_0,_1,_2,_3){return isc.Validator.processValidator(_0,_1,_2,_3)},setRequiredIf:function(){var _0=this.getValues();for(var _1=0;_1<this.items.length;_1++){var _2=this.items[_1],_3=_2.validators;if(!_2.visible||!_3||_3.length==0)continue;for(var v=0;v<_3.length;v++){var _4=_3[v];if(!_4)continue;if(_4.type=="requiredIf"){var _5=_2.getValue();if(!isc.isA.Function(_4.expression)){Function.replaceStringWithMethod(_4,"expression","item,validator,value")}
_2.$2q=_4.expression.apply(this,[_2,_4,_5])}}}},bubbleItemHandler:function(_0,_1,_2,_3,_4,_5){var _6=this.getItemById(_0),_7=null;for(;_6!=null;_6=_6.parentItem){if(isc.isA.String(_6[_1])){Function.replaceStringWithMethod(_6,_1,"arg1,arg2,arg3,arg4")}
if(_6[_1]==null){this.logWarn("handler:"+_1+" is not present on itemID "+_0);return false}
_7=_6[_1](_2,_3,_4,_5);if(_7==false)return _7}
return _7},elementChanged:function(_0){var _1=this.bubbleItemHandler(_0,"elementChanged",_0);return(_1!=false)},elementClicked:function(_0){var _1=this.bubbleItemHandler(_0,"elementClicked",_0);return(_1!=false)},cellClicked:function(_0){var _1=this.bubbleItemHandler(_0,"cellClicked",_0);return(_1!=false)},elementFocus:function(_0,_1){if(!this.hasFocus)isc.EventHandler.focusInCanvas(this);var _2=true;if(!this.$2w)_2=this.bubbleItemHandler(_1,"elementFocus");else delete this.$2w;var _3=this.getItemById(_1);this.setFocusItem(_3);return(_2!=false)},elementBlur:function(_0,_1){if(!isc.isA.FormItem(this.getItemById(_1)))return;var _2=true;if(!this.$2x)_2=this.bubbleItemHandler(_1,"elementBlur");else delete this.$2x;this.clearPrompt();return(_2!=false)},setFocusItem:function(_0){_0=this.getItem(_0);this.$2y=_0},getFocusItem:function(){return this.$2y},focus:function(){var _0=this.getFocusItem();if(_0==null){var _1=this.getItems();for(var i=0;i<_1.length;i++){if(_1[i].$kv()){_0=_1[i];break}}}
var _2=isc.EH.lastEvent;if(!(_2.target==this&&_2.eventType==isc.EH.MOUSE_DOWN))this.focusInItem(_0)},blur:function(){this.Super("blur",arguments);this.$2z(this.getFocusItem())},focusInItem:function(_0){if(_0!=null){var _1=this.getItem(_0)}else{var _1=this.getFocusItem()}
if(!_1){this.logWarn("couldn't find focus item: "+_0);return}
if(_1.$kv()){_1.focusInItem();this.setFocusItem(_1);if(this.$xp){isc.Page.setEvent("idle","if(window."+this.getID()+")"+this.getID()+".focusInItem()",isc.Page.FIRE_ONCE)}}else{this.logWarn("focusInItem: item cannot accept focus: "+_1)}},clearFocusItem:function(){delete this.$2y},blurFocusItem:function(){var _0=this.getFocusItem();if(_0!=null){this.$2z(_0);this.clearFocusItem()}},$2z:function(_0){if(_0!=null)_0.blurItem()},$xo:function(){var _0=this.getFocusItem();if(_0!=null&&_0.hasFocus){this.$2x=true;this.$2z(_0)}else{this.logDebug("blur w/o handler: no item to blur")}},$xq:function(_0){this.$2w=true;this.focusInItem(_0)},hide:function(){if(isc.Browser.isMoz)this.$2z(this.getFocusItem());this.Super("hide",arguments)},setVisibility:function(_0){this.Super("setVisibility",arguments);this.itemsVisibilityChanged()},clear:function(){this.Super("clear",arguments);this.itemsVisibilityChanged()},$ks:function(_0){this.Super("$ks",arguments);if(!this.hasFocus)this.$2z(this.getFocusItem())},parentVisibilityChanged:function(_0){if(!this.isVisible()&&isc.Browser.isMoz)this.$2z(this.getFocusItem());this.Super("parentVisibilityChanged",arguments);this.itemsVisibilityChanged()},handleKeyPress:function(_0,_1){if(this.keyPress!=null){this.convertToMethod("keyPress");if(this.keyPress(_0,_1)==false)return false}
if(_0.characterValue!=null&&_0.characterValue!=0){return isc.EventHandler.STOP_BUBBLING}
if(!this.$20){this.$20={"Arrow_Up":true,"Arrow_Down":true,"Arrow_Right":true,"Arrow_Left":true,"Page_Up":true,"Page_Down":true,"Home":true,"End":true,"Backspace":true,"Delete":true,"Tab":true}}
if(this.$20[_0.keyName]){return isc.EventHandler.STOP_BUBBLING}
return this.Super("handleKeyPress",arguments)},$lx:function(){if(this.isDrawn())return this.Super("$lx",arguments);if(this.items!=null){for(var i=0;i<this.items.length;i++){this.items[i].$lx()}}},$l4:function(){if(this.$l3!=null)return this.Super("$l4",arguments);if(this.items!=null){for(var i=0;i<this.items.length;i++){this.items[i].$l4()}}},getItemPromptHTML:function(_0){if(_0.prompt&&!isc.Browser.isNav){return" title=\""+_0.prompt+"\""}
return isc.$d3},showPrompt:function(_0){window.status=_0},clearPrompt:function(){window.status=""},isMultipart:function(){return!(this.encoding==isc.DynamicForm.NORMAL||this.encoding==isc.DynamicForm.NORMAL_ENCODING)}});isc.DynamicForm.addClassMethods({$21:function(_0){if(_0==null)return;var _1=_0.getFields();if(_1==null)return;var _2=[];for(var _3 in _1){var _4=_1[_3],_5={};if(_4==null)continue;_5.name=_3;_5.title=_4.title;_2.add(_5)}
return _2},getNavFieldSizeInfo:(isc.Browser.isNav?function(_0,_1){}:function(_0,_1){return this.$22.$23})});isc.DynamicForm.registerStringMethods({itemChange:"item,oldValue,newValue",itemKeyPress:"item,keyName,characterValue"});isc.ClassFactory.defineClass("FormItem");isc.FormItem.addClassMethods({getNewTagID:function(){if(this.$24==null)this.$24=0;this.$24+=1;return"isc_FormItemElement_ID_"+this.$24},setElementTabIndex:function(_0,_1){_0.tabIndex=_1;if(isc.Browser.isMoz){_0.style.MozUserFocus=(_1<0?"ignore":"normal")}},$25:function(_0){if(!isc.Browser.isIE)return;var _1=this.getDocument().activeElement;if(_1&&((_1.tagName.toLowerCase()==this.$26&&_1.type.toLowerCase()==this.$27)||_1.tagName.toLowerCase()==this.$28))
{var _2=_1.createTextRange();_2.execCommand("Unselect")}},$yw:function(_0,_1){if(isc.isA.FormItem(_0))_0=_0.getClassName();if(!this.$29){this.$29={text:true,TextItem:true,textItem:true,textArea:true,TextAreaItem:true,textAreaItem:true}
this.$3a={popUpTextArea:true,PopUpTextAreaItem:true,popUpTextAreaItem:true}}
return this.$29[_0]||(!_1||this.$3a[_0])}});isc.FormItem.addClassProperties({$26:"input",$27:"text",$28:"textarea"});isc.FormItem.addProperties({visible:true,accessKey:null,tabIndex:0,changeOnKeypress:true,dirtyOnKeyDown:true,showTitle:true,titleOrientation:isc.Canvas.LEFT,titleClassName:"formTitle",titleErrorClassName:"formTitleError",width:"*",height:20,colSpan:1,rowSpan:1,defaultIconSrc:"[SKIN]/DynamicForm/default_formItem_icon.gif",defaultIconDisabledSrc:"[SKIN]/DynamicForm/default_formItem_icon_disabled.gif",defaultIconOverSrc:"[SKIN]/DynamicForm/default_formItem_icon_over.gif",iconHSpace:3,iconVAlign:isc.Canvas.BOTTOM,iconHeight:20,iconWidth:20,iconPrompt:"",showIcons:true,redrawOnShowIcon:true,showHint:true,hintClassName:"formHint",cellClassName:"formCell",errorCellClassName:"formError",$3b:false});isc.FormItem.addMethods({init:function(){this.addPropertyList(arguments);if(isc.$m3)arguments.$fa=this;isc.ClassFactory.addGlobalID(this);if(this.options&&!this.valueMap){this.valueMap=this.options;delete this.options}
this._value=this.getDefaultValue();this.$3c()},destroy:function(){this.form=null;var _0;if(window[this.ID]==this)window[this.ID]=_0},toString:function(){var _0=this.getFieldName(),_1=this.ID,_2="["+this.Class+" instance "+(_0!=null?" name ='"+_0+"', ":"")+"global ID="+_1+"]";return _2},getFieldName:function(){return this[this.form.fieldIdProperty]},getItemName:function(){return this.getFieldName()},getElementName:function(){var _0=this.getFieldName();if(this.parentItem){var _1=this.parentItem.getElementName();if(_0=="")_0=_1;else _0=_1+"_"+_0}
if(_0==this.getID()||_0==""||_0==null){_0=this.getID()+"_value"}
return _0},getDataElementId:function(){if(this.$3d==null){this.$3d=this.getID()+"$3e"}
return this.$3d},getElementClassName:function(){return this.elementClassName},getItemID:function(){return this.getID()},getID:function(){if(this.ID==null){isc.ClassFactory.addGlobalID(this)}
return this.ID},shouldShowTitle:function(){return this.showTitle},getTitleHTML:function(){if(!this.hasElement())return this.getTitle();var _0=this.getTitle();if(this.accessKey!=null){_0=isc.Canvas.hiliteCharacter(_0,this.accessKey)}
return isc.SB.concat("<LABEL FOR=",this.getDataElementId(),(this.accessKey!=null?" ACCESSKEY="+this.accessKey:isc.$d3),">",_0,"</LABEL>")},getTitle:function(){if(this[this.form.titleField]!=null)return this[this.form.titleField];return this[this.form.fieldIdProperty]},isVisible:function(){if(!this.containerWidget.isVisible())return false;if(this.visible==false)return false;if(this.parentItem&&!this.parentItem.isVisible())return false;return true},getRowSpan:function(){return this.rowSpan},getColSpan:function(){return this.colSpan},isStartRow:function(){return this.startRow},isEndRow:function(){return this.endRow},getRect:function(){return[this.getLeft(),this.getTop(),this.getVisibleWidth(),this.getVisibleHeight()]},getPageRect:function(){return[this.getPageLeft(),this.getPageTop(),this.getVisibleWidth(),this.getVisibleHeight()]},getCellHeight:function(){var _0=this.getHeight();if(!isc.isA.Number(_0))return _0;var _1=this.containerWidget;if(_1)_0+=_1.cellPadding*2+_1.cellSpacing*2;if(isc.Browser.isIE&&(isc.isA.TextItem(this)||isc.isA.TextAreaItem(this)))_0+=2;return _0},getInnerHeight:function(){if(this.$1z){var _0=this.containerWidget,_1=this.$1z[1];if(_0)_1-=_0.cellPadding*2+_0.cellSpacing*2;if(isc.Browser.isIE&&(isc.isA.TextItem(this)||isc.isA.TextAreaItem(this)))_1-=2;return _1}
return this.getHeight()},getInnerWidth:function(){var _0=this.containerWidget,_1=this.$1z?this.$1z[0]:this.width;if(!isc.isA.Number(_1))return _1;if(_0)_1-=_0.cellPadding*2+_0.cellSpacing*2;return _1},getHeight:function(){return this.height},getVisibleHeight:function(){if(this.hasElement&&this.getElement()!=null){return this.getElement().offsetHeight}else{this.logInfo("getVisibleHeight() - unable to determine drawn height for this item -"+" returning pixel height from specified height","sizing");if(isc.isA.Number(this.height)){return this.height}
this.logWarn("getVisibleHeight() unable to determine height - returning zero","sizing");return 0}},getIconHeight:function(_0){if(_0==null&&this.icons!=null&&this.icons.getLength()>0)_0=this.icons[0];else if(_0==null||!this.icons||!this.icons.contains(_0)){this.logWarn("getIconHeight() passed invalid icon:"+isc.Log.echoAll(_0));return null}
return(_0.height!=null?_0.height:this.iconHeight)},getWidth:function(){return this.width},getVisibleWidth:function(){if(this.hasElement&&this.getElement()!=null){return this.getElement().offsetWidth}else{this.logInfo("getVisibleWidth() - unable to determine drawn width for this item -"+" returning pixel width from specified width","sizing");if(isc.isA.Number(this.width)){return this.width}else if(this.form&&this.form.items.$1y!=null){return this.form.items.$1y[this.form.getItems().indexOf(this)]}
this.logWarn("getVisibleWidth() unable to determine width - returning zero","sizing");return 0}},getIconWidth:function(_0){if(_0==null&&this.icons!=null&&this.icons.getLength()>0)_0=this.icons[0];else if(_0==null||!this.icons||!this.icons.contains(_0)){this.logWarn("getIconWidth() passed invalid icon:"+isc.Log.echoAll(_0));return null}
return(_0.width!=null?_0.width:this.iconWidth)},setHeight:function(_0){this.height=_0;this.redraw()},setWidth:function(_0){this.width=_0;this.redraw()},moved:function(){},visibilityChanged:function(){},zIndexChanged:function(){},getStandaloneItemHTML:function(){var _0=this.getValue(),_1=isc.SB.create(),_2=this.form;if(_2){var _3=isc.Browser.isIE&&isc.Browser.minorVersion<=5.01;if(_3)_1.append("<NOBR>");_1.append("<SPAN style='white-space:nowrap;' eventProxy=",_2.getID(),">",this.getInnerHTML(_0),"</SPAN>");if(_3)_1.append("</NOBR>")}
return _1.toString()},$3f:function(){var _0=this.icons;if(!_0)return false;for(var i=0;i<_0.length;i++){if(!_0[i].writeIntoItem)return true}
return false},getInnerHTML:function(_0){if(!this.$3f())return this.getElementHTML(_0);var _1=isc.SB.create(),_2=this.iconVAlign,_3=this.getError();_1.append("<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0><TR><TD"," VALIGN=",_2," CLASS=",(_3&&!isc.isAn.emptyString(_3)?this.errorCellClassName:this.cellClassName)," STYLE='margin:0px;border:0px;padding:0px'>",this.getElementHTML(_0),"</TD><TD STYLE='white-space:nowrap;' VALIGN=",_2," WIDTH=",this.getTotalIconsWidth(),">",this.getIconsHTML(),"</TD></TR></TABLE>");return _1.toString()},getElementHTML:function(_0){return _0},getError:function(){if(this.form)return this.form.getError(this)},getErrorHTML:function(_0){var _1=this.form,_2=isc.SB.concat("<DIV CLASS=",this.errorCellClassName,">",(this.form.showTitlesWithErrorMessages&&this.getTitle()!=null?this.getTitle()+": ":null),(isc.isAn.Array(_0)?"<LI>"+_0.join("<LI>"):_0),"</DIV>");return _2},getHintHTML:function(){if(!this.showHint||!this.hint)return"";return isc.SB.concat("&nbsp;<SPAN CLASS=",this.hintClassName,">",this.hint,"</SPAN>")},$3c:function(){var _0=this.icons;if(_0==null)return;for(var i=0;i<_0.length;i++){var _1=_0[i];if(_1.$3g==null)this.$3h(_1)}},getIconsHTML:function(){if(!this.showIcons||this.icons==null)return"";var _0=this.hasFocus||this.$2l;if(!_0&&this.items!=null){for(var i=0;i<this.items.length;i++){if(this.items[i].hasFocus||this.items[i].$2l)_0=true;break}}
if(this.showIconsOnFocus&&!_0){this.hideAllIcons();return""}
var _1=isc.SB.create();for(var i=0;i<this.icons.length;i++){var _2=this.icons[i];if(!this.$x0(_2)||this.$3i(_2))continue;_1.append(this.getIconHTML(_2))}
return _1.toString()},$3h:function(_0){if(_0.$3g!=null)return _0;if(this.$3j==null)this.$3j=0;_0.$3g="_"+this.$3j++;return _0},$3k:function(){var _0=this.iconVAlign;if(_0==isc.Canvas.TOP){return"top"}else if(_0==isc.Canvas.BOTTOM){return(isc.Browser.isSafari?"bottom":"text-bottom")}else if(_0==isc.Canvas.CENTER){return"middle"}
return _0},$3l:function(){if(isc.Browser.isIE)return 1;return 0},getIconHTML:function(_0){var _1=this.disabled?(_0.disabledSrc||this.defaultIconDisabledSrc):(_0.src||this.defaultIconSrc),_2=this.getIconWidth(_0),_3=this.getIconHeight(_0),_4=(_0.hspace!=null?_0.hspace:this.iconHSpace),_5=(_0.prompt!=null?_0.prompt:this.iconPrompt),_6=this.form.getID(),_7=this.getItemID(),_8=_0.$3g;_1=this.form.getImgURL(_1);if(_0.imgOnly){return this.$3m(this.$3n(_8),_2,_3,this.$3k(_0),this.$3l(),_5,_1,_7,_8)}else{if(isc.FormItem.$3o==null){isc.FormItem.$3o=["<a ID='",,"'"," style='margin-left:",,"px;"+(isc.Browser.isMoz?"-moz-user-focus:":""),,"' onfocus='return ",,".$3p(\"",,"\", this)'",," onblur='if(window.",,"!=null)return ",,".$3q(\"",,"\", this);'"," onkeydown='return ",,".handleKeyEvent(event);' onkeyup='return ",,".handleKeyEvent(event);' onkeypress='return ",,".handleKeyEvent(event);' tabIndex=",," href=\"javascript: void ",,".$3r('",,"');\">",,"</a>"]}
var _9=isc.FormItem.$3o;var _10=this.disabled||this.canTabToIcons==false?-1:this.$3s(_0);_9[1]=this.$3t(_8);_9[4]=_4;if(isc.Browser.isMoz)_9[6]=(_10<0?"ignore":"normal");_9[8]=_7;_9[10]=_8;if(isc.Browser.isSafari)
_9[12]=" onmousedown='"+_7+".focusInIcon(\""+_8+"\")'";_9[14]=_7;_9[16]=_7;_9[18]=_8;_9[21]=_7;_9[23]=_7;_9[25]=_7;_9[27]=_10;_9[29]=_7;_9[31]=_8;_9[33]=this.$3m(this.$3n(_8),_2,_3,this.$3k(_0),this.$3l(),_5,_1,_7,_8);return _9.join(isc.emptyString)}},$3m:function(_0,_1,_2,_3,_4,_5,_6,_7,_8){if(isc.FormItem.$3u==null){isc.FormItem.$3u=["<img ID='",,"' border=0 width=",," height=",," style='vertical-align:",,";margin-top:",,"px;margin-bottom:",,"px;'",," src=\"",,"\" onmouseover='return ",,".$3v(\"",,"\");' onmouseout='return ",,".$3w(\"",,"\");'>"]}
var _9=isc.FormItem.$3u;_9[1]=_0
_9[3]=_1;_9[5]=_2;_9[7]=_3;_9[9]=_4;_9[11]=_4;_9[13]=(_5!=null?" title='"+_5+"'":null);_9[15]=_6;_9[17]=_7;_9[19]=_8;_9[21]=_7;_9[23]=_8;return _9.join(isc.emptyString)},$3t:function(id){return this.getID()+"_iLink_"+id},$3n:function(id){return this.getID()+"_iImg_"+id},$zb:function(_0){_0=this.$3x(_0);if(_0==null)return null;var _1=this.$3t(_0.$3g);return isc.Canvas.getElementById(_1)},$3y:function(_0){_0=this.$3x(_0);if(_0==null)return null;var _1=this.$3n(_0.$3g);return isc.Canvas.getElementById(_1)},$x0:function(_0){if(_0.showIf==null)return true;Function.replaceStringWithMethod(_0,"showIf","form,item");return!!_0.showIf(this.form,this)},$3i:function(_0){if(_0.writeIntoItem)return true;return false},getTotalIconsWidth:function(){var _0=0;if(this.showIcons&&this.icons!=null&&!(this.showIconsOnFocus&&!this.hasFocus))
{for(var i=0;i<this.icons.length;i++){var _1=this.icons[i];if(!this.$x0(_1)||this.$3i(_1))continue;_0+=(_1.width!=null?_1.width:this.iconWidth)+(_1.hspace!=null?_1.hspace:this.iconHSpace)}}
return _0},setIcons:function(_0){this.icons=_0;this.redraw()},setIconEnabled:function(_0,_1){_0=this.$3x(_0);if(!_0)return;var _2=this.$zb(_0),_3=this.$3y(_0);if(_2){if(!_1)isc.FormItem.setElementTabIndex(_2,-1);else isc.FormItem.setElementTabIndex(_2,this.$3s(_0))}
if(_3){var _4;if(!_1)_4=(_0.disabledSrc||this.defaultIconDisabledSrc);else _4=(_0.src||this.defaultIconSrc);_4=this.form.getImgURL(_4);_3.src=_4}},showIcon:function(_0){if(!isc.isAn.Object(_0))return;if(_0.$3g==null){this.$3h(_0)}
var _1=this.$x0(_0);_0.showIf=function(){return true}
if(!_1&&this.showIcons&&this.containerWidget.isDrawn()&&this.isVisible())
{if(this.redrawOnShowIcon){this.redraw()}else{var _2;for(var i=(this.icons.indexOf(_0)-1);i>=0;i--){if(!this.$x0(this.icons[i]))continue;_2=this.icons[i];break}
var _3=true;if(_2!=null){var _4;_4=this.$zb(_2);if(_4!=null){isc.Canvas.insertAdjacentHTML(_4,"afterEnd",this.getIconHTML(_0));this.$3z();_3=false}}
if(_3){this.logInfo("showIcon(): Unable to dynamically update icon visibility - "+"redrawing the form");return this.redraw()}}}},hideIcon:function(_0){if(!isc.isAn.Object(_0))return;var _1=this.$x0(_0);_0.showIf=function(){return false}
if(_1&&this.showIcons&&this.containerWidget.isDrawn()&&this.isVisible())
{if(this.redrawOnShowIcon){this.redraw()}
else{var _2=this.$zb(_0);if(_2==null){this.logInfo("hideIcon(): Unable to dynamically update icon visibility - "+"redrawing the form");return this.redraw()}
_2.parentNode.removeChild(_2);this.$3z()}}},$3z:function(){var _0=this.getElement();if(_0==null)return;var _1=(this.$1z==null?this.width:this.$1z[0]);if(isc.isA.Number(_1)){_1-=this.getTotalIconsWidth()
_1=Math.max(_1,1);_0.style.width=_1+"px"}},showAllIcons:function(){if(this.$30!=null){isc.Timer.clear(this.$30);delete this.$30}
if(this.icons==null)return;for(var i=0;i<this.icons.length;i++){this.showIcon(this.icons[i])}},hideAllIcons:function(){if(this.$30!=null)delete this.$30;if(this.icons==null)return;for(var i=0;i<this.icons.length;i++){this.hideIcon(this.icons[i])}},$3x:function(id){var _0;if(this.icons){for(var i=0;i<this.icons.length;i++){if(this.icons[i]==id||this.icons[i].$3g==id)_0=this.icons[i]}}
if(!_0){this.logInfo("FormItem unable to get pointer to icon with ID:"+id+" - Invalid ID, or icons array has been inappropriately modified."+" To update icon[s] for some form item, use the method 'setIcons()'.")}
return _0},$31:function(_0,_1){if(this.disabled)return;var _2=this.$3y(_0);if(_2!=null){var _3;if(_1)_3=_0.overSrc||this.defaultIconOverSrc;else _3=_0.src||this.defaultIconSrc;_3=this.form.getImgURL(_3);_2.src=_3}},$32:function(_0){if(this.disabled)return false;if(_0.showOver!=null)return _0.showOver;return this.showOverIcons},$3p:function(id,_0){var _1=this.$3x(id);if(_1!=null){var _2=(_1.prompt!=null?_1.prompt:this.iconPrompt)
window.status=_2;if(this.$32(_1))this.$31(_1,true)}
return this.$33(_0,this)},$3q:function(id,_0){var _1=this.$3x(id);if(_1!=null){window.status="";if(this.$32(_1))this.$31(_1,false)}
return this.$34(_0,this)},$3v:function(id){var _0=this.$3x(id);if(_0!=null){var _1=(_0.prompt!=null?_0.prompt:this.iconPrompt)
window.status=_1;if(this.$32(_0))this.$31(_0,true);return true}},$3w:function(id){var _0=this.$3x(id);if(_0!=null){window.status="";if(this.$32(_0))this.$31(_0,false);return true}},$3r:function(id){if(this.disabled)return;var _0=this.$3x(id);if(_0!=null&&_0.click!=null){if(!isc.isA.Function(_0.click)){Function.replaceStringWithMethod(_0,"click","form,item,icon")}
if(_0.click(this.form,this,_0)==false)return false}
if(this.iconClick)this.iconClick(this.form,this,_0)},redraw:function(){if(this.hasFocus)this.$2l=true;if(!this.hasFocus&&this.items!=null){for(var i=0;i<this.items.length;i++){if(this.items[i].hasFocus)this.$2l=true}}
if(this.containerWidget.redrawFormItem)this.containerWidget.redrawFormItem(this)},show:function(){this.visible=true;if(this.containerWidget.redrawFormItem)this.containerWidget.redrawFormItem(this);this.visibilityChanged(true)},hide:function(){this.visible=false;if(this.containerWidget.redrawFormItem)this.containerWidget.redrawFormItem(this);this.visibilityChanged(true)},hasElement:function(){return this.hasDataElement()},hasDataElement:function(){return this.$3b},getElement:function(_0){return this.getDataElement(_0)},getFocusElement:function(){return this.getDataElement()},$za:function(){if(this.hasFocus==null&&!isc.EH.$rg==this)return null;var _0=this.$35;if(isc.Browser.isIE&&_0!=document.activeElement){this.logInfo("not returning focus element since it doesn't match "+"document.activeElement");this.hasFocus=false;this.$35=null;return null}
return _0},getDataElement:function(_0){if(_0==null){var _1=this}else{var _1=this.form.getItem(_0)}
if(!_1.hasDataElement())return null;return isc.Canvas.getElementById(this.getDataElementId())},getFormCell:function(){return isc.Canvas.getElementById(this.ID+"$2o")},mapValueToDisplay:function(_0){return this.$36(_0)},mapDisplayToValue:function(_0){return this.$37(_0)},$36:function(_0){var _1=this.valueMap;if(!_1)return _0;if(isc.isA.String(_1))_1=this.getGlobalReference(_1);if(isc.isAn.Array(_1))return _0;var _2=isc.getValueForKey(_0,_1);return(_2==null?"":_2)},$37:function(_0){var _1=this.valueMap;if(!_1)return _0;if(isc.isA.String(_1))_1=this.getGlobalReference(_1);if(isc.isAn.Array(_1))return _0;return isc.getKeyForValue(_0,_1)},setValueMap:function(_0){this.valueMap=_0;if(this.hasElement())this.setElementValueMap(_0)},setOptions:function(_0){return this.setValueMap(_0)},resetValueMap:function(){this.setElementValueMap(this.getValueMap())},resetOptions:function(){this.resetValueMap()},setElementValueMap:function(_0){},getValueMap:function(){var _0=this.valueMap;if(isc.isA.String(_0)){_0=this.getGlobalReference(_0)}
if(isc.isAn.Array(_0)){if(this.startOptions){_0=[].concat(this.startOptions).concat(_0)}
if(this.endOptions){_0=[].concat(_0).concat(this.endOptions)}}
return _0},getOptions:function(){return this.getValueMap()},getValueMapTitle:function(_0){var _1=this.getValueMap();if(isc.isAn.Array(_1))return(_1.contains(_0)?_0:"");return _1[_0]},saveValue:function(_0){this._value=_0;this.form.saveItemValue(this,_0)},setValue:function(_0){this.$38=null;if(_0==null){var _1=this.getDefaultValue();if(_1!=null)_0=_1}
if(this.length!=null&&_0!=null&&isc.isA.String(_0)&&_0.length>this.length)
{_0=_0.substring(0,this.length)}
this.saveValue(_0);_0=this.mapValueToDisplay(_0);if(this.hasElement()){this.setElementValue(_0)}
return _0},setElementValue:function(_0){var _1=this.getElement();if(!_1)return null;return _1.value=_0},getDefaultValue:function(){if(this.defaultDynamicValue){this.convertToMethod("defaultDynamicValue");var _0=this,_1=this.form,_2=this.form.getValues();return this.defaultDynamicValue(_0,_1,_2)}
return this.defaultValue},setToDefaultValue:function(){this.setValue(this.getDefaultValue())},$39:{"Tab":true,"Arrow_Left":true,"Arrow_Right":true,"Arrow_Up":true,"Arrow_Down":true,"Home":true,"End":true,"Page_Up":true,"Page_Down":true,"Enter":true},updateValue:function(){if(!this.hasElement()||this.getElement()==null)return;var _0=this.getElementValue();if(this.$4a){_0=this.$4b(_0)}
_0=this.mapDisplayToValue(_0);if(_0==this._value)return;if(this.changingValue&&_0==this.$4c)return;this.$4d=true;this.$4c=_0;if(this.handleChange(_0,this._value)==false)return;delete this.$4c;delete this.$4d;this.saveValue(_0)},getValue:function(){var _0;if(this._value!==_0){return this._value}
return this.form.getSavedItemValue(this)},getElementValue:function(){var _0=this.getElement();if(!_0)return null;return _0.value},resetValue:function(){var _0=this.form.$2d[this.getFieldName()];this.setValue(_0)},shouldSaveValue:true,clearErrors:function(){var _0=this.getFieldName();if(_0)this.form.clearError(_0)},setError:function(_0){var _1=this.getFieldName();if(_1)this.form.setError(_1,_0)},setAutoComplete:function(_0){this.autoComplete=_0;this.$2b()},$2b:function(){var _0=this.$4e();if(isc.Browser.isIE&&this.hasDataElement()){var _1=this.getDataElement();if(_1)_1.autoComplete=(_0=="native"?"":"off")}},$4e:function(){if(this.autoComplete!=null)return this.autoComplete;return this.form.autoComplete},autoCompleteEnabled:function(){if(isc.Browser.isSafari)return false;return this.$4e()=="smart"},uniqueMatchOnly:function(){if(this.uniqueMatch!=null)return this.uniqueMatch;return this.form.uniqueMatch},getCandidates:function(){var _0=this.autoCompleteCandidates;if(_0==null){var _1=this.getValueMap();if(_1!=null){if(isc.isAn.Array(_1))_0=_1;else _0=isc.getValues(_1)}else if(this.form.grid){var _2=this.form.grid.data;if(isc.isA.ResultSet(_2))_0=_2.getValuesList(this.name);else _0=_2.getProperty(this.name)}}
if(_0!=null)_0=_0.getUniqueItems();return _0},getCompletion:function(_0){if(_0==null)return;var _1=this.getCandidates(),_2=_0.toUpperCase(),_3=this.uniqueMatchOnly(),_4;for(var i=0;i<_1.length;i++){var _5=_1[i];if(_5&&_5.length>_2.length&&_5.toUpperCase().startsWith(_2))
{if(!_3)return _5;if(_4!=null)return null;_4=_5}}
return _4},showCompletion:function(_0){this.clearCompletion();if(!this.canAutoComplete||!this.hasDataElement()||!this.autoCompleteEnabled())return;var _1=isc.EH.lastEvent.keyName;if(_1=="Backspace"||_1=="Delete")return;var _2=this.getCompletion(_0);if(_2==null)return;this.form.$xo();this.form.$xq(this);this.setElementValue(_0+_2.substring(_0.length));this.$4f=_0;this.$4a=_2;this.setSelectionRange(_0.length,_2.length)},$4b:function(_0){var _1=this.$4a,_2=isc.EH.lastEvent.keyName;if(this.$39[_2]){this.acceptCompletion();return _1}
var _3=_1.substring(this.$4f.length);if(!_0.endsWith(_3)){this.clearCompletion();return _0}
if(this.getSelectedText()==_3){return this.$4f}
this.clearCompletion();return _0},clearCompletion:function(){delete this.$4a;delete this.$4f},acceptCompletion:function(){var _0=this.$4a;if(!_0)return;if(this.autoCompleteEnabled()){this.setElementValue(_0)}
this.clearCompletion()},setSelectionRange:function(_0,_1){if(!isc.isA.TextItem(this)&&!isc.isA.TextAreaItem(this))return;var _2=this.getDataElement();if(_2==null)return;if(isc.Browser.isIE){var _3=_2.createTextRange();_3.collapse(true);_3.moveStart('character',_0);_3.moveEnd('character',_1);_3.select()}else if(!isc.Browser.isSafari){_2.focus();_2.setSelectionRange(_0,_1)}},getSelectedText:function(){if(isc.Browser.isIE){var _0=this.$4g();if(_0)return _0.text}else if(isc.Browser.isMoz){var _1=this.getElement();if(_1!=null){return _1.value.substring(_1.selectionStart,_1.selectionEnd)}}},$4g:function(){if(!isc.Browser.isIE)return;var _0=this.getDocument().selection,_1=(_0!=null?_0.createRange():null);if(_1!=null&&_1.parentElement().id==this.getDataElementId())return _1;return null},rememberSelection:function(){if(!isc.isA.TextItem(this)&&!isc.isA.TextAreaItem(this))return;if(isc.Browser.isIE){var _0=this.$4g();if(_0!=null)this.$4h=_0.getBookmark()}else if(isc.Browser.isMoz){var _1=this.getElement();if(_1){this.$4i=_1.selectionStart;this.$4j=_1.selectionEnd}}
this.$4k=this.getElementValue()},resetToLastSelection:function(){if(this.getElementValue()==this.$4k){if(isc.Browser.isIE){if(this.$4h!=null){var _0=this.getElement();if(_0!=null){var _1=_0.createTextRange();_1.moveToBookmark(this.$4h);_1.select()}
delete this.$4h}}else if(isc.Browser.isMoz){if(this.$4i!=null){this.setSelectionRange(this.$4i,this.$4j);delete this.$4i;delete this.$4j}}}
delete this.$4k},handleChange:function(_0,_1){var _2=false;var _3=[];if(this.validators){var _4=this.validators,_5=null;for(var i=0;i<_4.length;i++){var _6=_4[i];if(!_6)continue;if(this.form.validateOnChange||this.validateOnChange||_6.validateOnChange){var _7=(this.form.processValidator(this,_6,_0)==true);_2=!_7||_2;if(!_7){var _8=(_6.errorMessage?_6.errorMessage:this.unknownErrorMessage);if(_6.errorStyle=="alert"){alert(_8)}else if(_6.errorStyle=="silent"){}else{_3.add(_6.errorMessage?_6.errorMessage:this.unknownErrorMessage)}}
if(_6.suggestedValue!=null){_5=_6.suggestedValue}
if(_6.resultingValue!=null){_5=_6.resultingValue}
if(!_7&&_6.stopIfFalse)break}}
if(_2&&_5==null)_5=_1}
if(_2){this.clearErrors();this.setError(_3)}
if(this.hasFocus)this.showCompletion(_0);if((!_2||this.changeOnError)){if(this.change!=null){if(this.change(this.form,this,_0,_1)==false){_5=_1;_2=true}}
if(!_2&&this.form&&this.form.itemChange!=null){if(this.form.itemChange(this,_0,_1)==false){_5=_1;_2=true}}}
if(_5!=null){this.setValue(_5)}
if(this.redrawOnChange||_3.length>0){this.redraw()}
return(!_2)},elementChanged:function(){this.logDebug("native change");this.updateValue();return true},elementClicked:function(){if(this.click){this.convertToMethod("click");return this.click(this.form,this)}
return true},cellClicked:function(){if(this.cellClick){this.convertToMethod("cellClick");return this.cellClick(this.form,this)}
return true},getGlobalTabIndex:function(){if(this.globalTabIndex==null){if(this.tabIndex==-1)this.globalTabIndex=-1;else this.globalTabIndex=this.form.getTabIndex()+this.tabIndex}
return this.globalTabIndex},getTabIndex:function(){return this.tabIndex},setGlobalTabIndex:function(_0){this.globalTabIndex=_0;this.$l7(_0)},setTabIndex:function(_0){this.globalTabIndex=null;this.tabIndex=_0;this.$l7(_0)},$4l:function(){if(this.disabled)return-1;if(this.$4m!=null)return this.$4m;return this.getGlobalTabIndex()},$l7:function(_0){this.$4m=_0;if(!this.$kv()||!this.isVisible()||!this.containerWidget.isDrawn())return;if(this.getFocusElement()!=null){isc.FormItem.setElementTabIndex(this.getFocusElement(),_0);this.$4n(_0)}else{this.redraw()}},$3s:function(_0){return this.$4l()},$4n:function(_0){if(this.icons==null)return;for(var i=0;i<this.icons.length;i++){var _1=this.icons[i],_2=this.$zb(_1);if(_2!=null){isc.FormItem.setElementTabIndex(_2,_0)}}},setEnabled:function(_0){var _1=!_0;this.disabled=_1;this.$4o(_0);this.$4p(_0)},$4o:function(_0){if(!this.hasDataElement())return;var _1=this.getDataElement();if(_1){_1.disabled=!_0}},$4p:function(_0){if(!this.icons||this.icons.length<1)return;for(var i=0;i<this.icons.length;i++){this.setIconEnabled(this.icons[i],_0)}},$kv:function(){if(this.hasElement()&&!this.disabled)return true},focusInItem:function(){if(!this.isVisible()||!this.$kv())return;var _0=this.getFocusElement();if(!_0)return;isc.FormItem.$25(this);if(_0.focus){this.logInfo("calling element focus","nativeFocus");if(!isc.Browser.isIE||document.activeElement!=_0)_0.focus();if(isc.Browser.isIE){isc.EH.$rg=this;this.$35=_0}}else{this.logInfo("can't call element focus, no element","nativeFocus")}
var _1=this.selectOnFocus;if(_1==null&&this.form)_1=this.form.selectOnFocus;if(_1&&_0.select)_0.select()},blurItem:function(){if(!this.isVisible()||!(this.hasFocus||isc.EH.$rg==this))return;var _0=this.$za();if(_0&&_0.blur){this.logInfo("calling element blur","nativeFocus");_0.blur()}else{this.logInfo("can't call element blur, no element","nativeFocus")}},focusInIcon:function(_0){if(isc.isA.String(_0))_0=this.$3x(_0);if(_0==null||!this.icons||!this.icons.contains(_0))return;var _1=this.$zb(_0);if(_1!=null)_1.focus()},blurIcon:function(_0){if(isc.isA.String(_0))_0=this.$3x(_0);if(_0==null||!this.icons||!this.icons.contains(_0))return;var _1=this.$zb(_0);if(_1!=null)_1.blur()},$33:function(_0,_1){isc.EH.$kp("IFCS");isc.EH.$kn(this,true);if(isc.Browser.isMoz&&!this.isVisible()){_0.blur();return}
this.hasFocus=true;this.$35=_0;var _2=this.form.elementFocus(_0,_1);isc.EH.$ls();return _2},$34:function(_0,_1){isc.EH.$kp("IBLR");isc.EH.$kn(this);this.hasFocus=false;delete this.$35;var _2=this.form.elementBlur(_0,_1);isc.EH.$ls();return _2},elementFocus:function(){if(this.prompt)this.form.showPrompt(this.prompt);if(this.showIconsOnFocus&&this.showIcons){this.showAllIcons()}
if(this.focus){this.convertToMethod("focus");return this.focus(this.form,this)}
return true},elementBlur:function(){if(this.prompt)this.form.clearPrompt();if(this.showIconsOnFocus&&this.showIcons){if(this.$30==null){var _0=this.getID();this.$30=isc.Timer.setTimeout("if("+_0+")"+_0+".hideAllIcons()",0)}}else if(this.hideIconsOnKeypress&&this.showIcons){this.showAllIcons()}
this.acceptCompletion();if(this.blur){this.convertToMethod("blur");return this.blur(this.form,this)}
return true},$4q:function(){this.$4r=isc.Page.setEvent(isc.EH.CLICK,"if(window."+this.getID()+")"+this.getID()+".$4s()")},$4s:function(){isc.Page.clearEvent(isc.EH.CLICK,this.$4r);delete this.$4r;if(document.activeElement==document.body){this.focusInItem()}},handleKeyEvent:function(_0,_1){if(!_0)_0=window.event;if(_1){for(var i=0;i<this.items.length;i++){if(this.items[i].hasFocus)this.$xz=this.items[i]}}else this.$xz=this;if(!_1){isc.EH.getKeyEventProperties(_0);if(!this.$4t){this.$4t={};this.$4u={};this.$4v={}}
var _2=isc.EH.lastEvent;var _3=(_2.eventType==isc.EH.KEY_DOWN)?this.$4t:(_2.eventType==isc.EH.KEY_PRESS)?this.$4u:this.$4v;_3.keyTarget=this;_3.eventType=_2.eventType;_3.characterValue=_2.characterValue;_3.keyName=_2.keyName;_3.shiftKey=_2.shiftKey;_3.ctrlKey=_2.ctrlKey;_3.altKey=_2.altKey;_3.metaKey=_2.metaKey;var _4=this.getItemID(),_5="if(window."+_4+")isc.EH.handleKey";if(_3.eventType==isc.EH.KEY_DOWN){_5+="Down("+_4+".$4t)"}else if(_3.eventType==isc.EH.KEY_PRESS){_5+="Press("+_4+".$4u)"}else{_5+="Up("+_4+".$4v)"}
if(_2.keyName!="Tab"){if(this.changeOnKeypress)this.$38=true}
isc.Timer.setTimeout(_5,0)}
if(this.parentItem!=null)return this.parentItem.handleKeyEvent(_0,true);return true},handleKeyPress:function(_0,_1){if(!this.form)return;var _2=this,_3=this.form,_4=_0.keyName,_5=_0.characterValue,_6;if(this.changeOnKeypress&&this.$38)
{var _7=this.getValue();this.updateValue();this.$38=null;_6=_7!=this.getValue()}else{var _8=this.$4w;if(_8==null){_8=this.getValue();_8=this.mapValueToDisplay(_8)}
this.$4w=this.getElementValue();_6=this.$4w!=_8}
if(_6&&this.hideIconsOnKeypress){var _9=this.$za(),_10=false;if(this.icons){for(var i=0;i<this.icons.length;i++){if(_9==this.$zb(this.icons[i]))_10=true}}
if(!_10)this.hideAllIcons()}
this.$4x(_2,_3,_4,_5)},$4x:function(_0,_1,_2,_3){if(this.keyPress!=null&&this.keyPress(_0,_1,_2,_3)==false)return false;if(this.form.itemKeyPress!=null){this.form.itemKeyPress(_0,_2,_3)}},handleKeyDown:function(_0,_1){if(!this.form)return;if(this.dirtyOnKeyDown)this.$4y();var _2=this,_3=this.form,_4=_0.keyName;if(this.keyDown!=null&&this.keyDown(_2,_3,_4)==false)return false},$2e:function(){return this.$4z==true},$4y:function(){this.$4z=true},$2g:function(){this.$4z=false},handleKeyUp:function(_0,_1){if(!this.form)return;var _2=this,_3=this.form,_4=_0.keyName;if(this.keyUp!=null&&this.keyUp(_2,_3,_4)==false)return false},$lx:function(){if(this.containerWidget!=this.form&&this.containerWidget.isDrawn()&&this.isVisible())
{this.containerWidget.$lx()}},$l4:function(){if(this.containerWidget.$l3!=null)
this.containerWidget.$l4()},getSerializeableFields:function(_0,_1){_0.addList(["form"]);return this.Super("getSerializeableFields",arguments)},getLeft:function(){var _0=this.getElement();if(_0==null){var _1="getLeft() Unable to determine position for "+(this.name==null?"this item ":this.name)+". ";if(!this.hasElement()){_1+="This method is not supported by items of type "+this.getClass()}else{_1+="Position cannot be determined before the element is drawn"}
_1+=" - returning zero.";this.form.logWarn(_1);return 0}
return this.$40(_0)},$40:function(_0){var _1=_0.offsetParent,_2=this.containerWidget.getHandle(),_3=_2.offsetParent,_4=isc.Canvas.getOffsetLeft(_0);while(_1!=_2&&_1!=_3){_4+=isc.Canvas.getOffsetLeft(_1)
_4-=(_1.scrollLeft||0);var _5=(isc.Browser.isIE?parseInt(_1.currentStyle.borderLeftWidth):parseInt(isc.Canvas.getComputedStyleAttribute(_1,"borderLeftWidth")));if(isc.isA.Number(_5))_4+=_5;var _6=(isc.Browser.isIE?parseInt(_1.currentStyle.marginLeft):parseInt(isc.Canvas.getComputedStyleAttribute(_1,"marginLeft")));if(isc.isA.Number(_6))_4+=_6;_1=_1.offsetParent}
if(_1==_3){_4-=isc.Canvas.getOffsetLeft(_2)}
return _4},getIconLeft:function(_0){if(_0==null&&this.icons!=null&&this.icons.getLength()>0)_0=this.icons[0];else if(_0==null||!this.icons||!this.icons.contains(_0)){this.logWarn("getIconTop() passed invalid icon:"+isc.Log.echoAll(_0));return null}
var _1=this.$3y(_0);if(_1==null){this.logWarn("getIconTop() unable to return position of icon - "+"this icon is not currently drawn into the page. Returning null");return null}
return isc.Canvas.$ph(_1,this.containerWidget.getClipHandle())},getTop:function(){var _0=this.getElement();if(_0==null){var _1="getTop() Unable to determine position for "+(this.name==null?"this item ":this.name)+". ";if(!this.hasElement()){_1+="This method is not supported by items of type "+this.getClass()}else{_1+="Position cannot be determined before the element is drawn"}
_1+=" - returning zero.";this.form.logWarn(_1);return 0}
return this.$41(_0)},$41:function(_0){var _1=this.containerWidget.getHandle(),_2=_1.offsetParent,_3=_0.offsetParent,_4=isc.Canvas.getOffsetTop(_0);while(_3!=_1&&_3!=_2){_4+=isc.Canvas.getOffsetTop(_3)
_4-=(_3.scrollTop||0);var _5=(isc.Browser.isMoz?0:(isc.Browser.isIE?parseInt(_3.currentStyle.borderTopWidth):parseInt(isc.Canvas.getComputedStyleAttribute(_3,"borderTopWidth"))));if(isc.isA.Number(_5))_4+=_5;var _6=(isc.Browser.isIE?parseInt(_3.currentStyle.marginTop):parseInt(isc.Canvas.getComputedStyleAttribute(_3,"marginTop")));if(isc.isA.Number(_6))_4+=_6;_3=_3.offsetParent}
if(_3==_2){_4-=isc.Canvas.getOffsetTop(_1)}
return _4},getIconTop:function(_0){if(_0==null&&this.icons!=null&&this.icons.getLength()>0)_0=this.icons[0];else if(_0==null||!this.icons||!this.icons.contains(_0)){this.logWarn("getIconTop() passed invalid icon:"+isc.Log.echoAll(_0));return null}
var _1=this.$3y(_0);if(_1==null){this.logWarn("getIconTop() unable to return position of icon - "+"this icon is not currently drawn into the page. Returning null");return null}
return isc.Canvas.$pi(_1,this.containerWidget.getClipHandle())},getPageLeft:function(){return this.getLeft()+((this.containerWidget.getPageLeft()+this.containerWidget.getLeftMargin()+this.containerWidget.getLeftBorderSize())
-this.containerWidget.getScrollLeft())},getPageTop:function(){return this.getTop()+((this.containerWidget.getPageTop()+this.containerWidget.getTopMargin()+this.containerWidget.getTopBorderSize())
-this.containerWidget.getScrollTop())},getIconRect:function(_0){return[this.getIconLeft(_0),this.getIconTop(_0),this.getIconWidth(_0),this.getIconHeight(_0)]},getIconPageRect:function(_0){var _1=this.getIconRect(_0);_1[0]+=this.containerWidget.getPageLeft();_1[1]+=this.containerWidget.getPageTop();return _1}});isc.FormItem.registerStringMethods({showIf:"item,value,form,values",defaultDynamicValue:"item,form,values",focus:"form,item",blur:"form,item",click:"form,item",iconClick:"form,item,icon",change:"form,item,value,oldValue",cellClick:"form,item",keyPress:"item, form, keyName, characterValue",keyDown:"item, form, keyName",keyUp:"item, form, keyName"});isc.FormItem.getPrototype().toString=function(){return"["+this.Class+" ID:"+this.ID+(this.name!=null?" name:"+this.name:"")+"]"}
isc.ClassFactory.defineClass("FormItemFactory");isc.FormItemFactory.addClassMethods({getItemClassName:function(_0){var _1=_0.$19||_0.editorType||_0.formItemType||_0.type;if(isc.isA.String(_1)){var _2=_1.toLowerCase();if(_2=="selectother"||_2=="selectotheritem"){_2="select";_0.isSelectOther=true}
if(_2=="select"||_2=="selectitem"){var _3=_0.form,_4=(_0.multiple||(_3?_3.useNativeSelectItems:false));if(_4)_1="NativeSelectItem"
else _1="SelectItem"}}
return _1},getItemClass:function(_0){var _1=isc.ClassFactory.getClass(_0);if(!_1||!isc.isA.FormItem(_1)){if(_0==null)_0="text";_0=_0.substring(0,1).toUpperCase()+_0.substring(1)+"Item";if(_0=="TextareaItem")_0="TextAreaItem";_1=isc.ClassFactory.getClass(_0)}
return _1},makeItem:function(_0){if(_0==null)return null;if(isc.isA.FormItem(_0)){return _0}
var _1=this.getItemClassName(_0),_2=this.getItemClass(_1);if(!_2){this.logWarn("makeItem(): type "+_0.type+" not recognized, using TextItem");_2=isc.TextItem}
return isc.ClassFactory.newInstance(_2,_0)}});isc.ClassFactory.defineClass("Validator");isc.Validator.addClassProperties({notABoolean:"Must be a true/false value",notAString:"Must be a string.",notAnInteger:"Must be a whole number.",notADecimal:"Must be a valid decimal.",notADate:"Must be a date.",notATime:"Must be a time.",notAnIdentifier:"Identifiers must start with a letter, underscore or $ character,"+"and may contain only letters, numbers, underscores or $ characters.",notARegex:"Must be a valid regular expression.",mustBeLessThan:"Must be less than ",mustBeGreaterThan:"Must be greater than ",notAMeasure:'Must be a whole number, percentage, "*" or "auto"',requiredField:"Field is required",$42:{requiredIf:function(_0,_1,_2){if(!isc.isA.Function(_1.expression)){Function.replaceStringWithMethod(_1,"expression","item,validator,value")}
var _3=_1.expression(_0,_1,_2);if(_1.errorMessage==null)
_1.errorMessage=isc.Validator.requiredField;return!_3||(_2!=null&&!isc.is.emptyString(_2))},isBoolean:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2))return true;if(!_1.errorMessage)_1.defaultErrorMessage=isc.Validator.notABoolean;return(_2==true||_2==false||_2=="true"||_2=="false")},isString:function(_0,_1,_2){if(_2==null||isc.isA.String(_2))return true;if(!_1.errorMessage)_1.defaultErrorMessage=isc.Validator.notAString;_1.resultingValue=_2.toString();return true},isInteger:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2))return true;if(!_1.errorMessage)_1.defaultErrorMessage=isc.Validator.notAnInteger;if(isNaN(_2))return false;var _3=parseInt(_2),_4=(_2==_3);if(_1.convertToInteger){var _5=parseFloat(_2),_3=Math.round(_5);_1.resultingValue=_3;return true}else{if(_4){_1.resultingValue=_3;return true}else return false}},isFloat:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2))return true;if(!_1.errorMessage)_1.defaultErrorMessage=isc.Validator.notADecimal;var _3=parseFloat(_2);if(isNaN(_3)||_3!=_2)return false;_1.resultingValue=_3;return true},isDate:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2)||isc.isA.Date(_2))return true;if(!_1.errorMessage)_1.defaultErrorMessage=isc.Validator.notADate;if(!isc.isA.String(_2))_2.toString();var _3=_2.match(/(\d{4})-(\d{2})-(\d{2})/);if(_3==null)return false;_1.resultingValue=new Date(_3[1],_3[2]-1,_3[3]);return true},isTime:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2)||isc.isA.Time(_2))return true;if(!_1.errorMessage)_1.defaultErrorMessage=isc.Validator.notATime;if(!isc.isA.String(_2))_2.toString();var _3=_2.match(/(\d{2}):(\d{2})-(\d{2})/);if(_3==null)return false;_1.resultingValue=isc.Time.create(_3[1],_3[2],_3[3]);return true},isIdentifier:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2))return true;if(!_1.errorMessage){_1.defaultErrorMessage=isc.Validator.notAnIdentifier}
return _2.match(/^[a-zA-Z_\$][\w\$]*$/)!=null},isRegexp:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2))return true;if(!_1.errorMessage)_1.defaultErrorMessage=isc.Validator.notARegex;if(typeof _2=='object'&&_2.constructor==RegExp)return true;if(isc.Browser.isDOM){if(!isc.Validators.$43){isc.Validators.$43=new Function("value","try{var regex=new RegExp(value)}catch(e){return false}return true")}
return isc.Validators.$43(_2)}else{var _3=new RegExp(_2);return true}},integerRange:function(_0,_1,_2){if(!isc.Validator.processValidator(_0,_1,_2,"isInteger"))return false;if(!isc.isA.Number(_2))_2=parseInt(_2);if(isc.isA.Number(_1.max)&&_2>_1.max){if(!_1.errorMessage){_1.defaultErrorMessage=isc.Validator.mustBeLessThan+_1.max}
_1.suggestedValue=_1.max;return false}
if(isc.isA.Number(_1.min)&&_2<_1.min){if(!_1.errorMessage){_1.defaultErrorMessage=isc.Validator.mustBeGreaterThan+_1.min}
_1.suggestedValue=_1.min;return false}
return true},integerOrAuto:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2)||_2.toLowerCase()=="auto")return true;return isc.Validators.processValidator(_0,_1,_2,"isInteger")},isMeasure:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2))return true;if(!_1.errorMessage)_1.defaultErrorMessage=isc.Validator.notAMeasure;if(_2.charAt(_2.length-1)=='%'){_2=_2.slice(0,-1);return _2.match(/\d+\.?\d*/)!=null}
return isc.Validators.processValidator(_0,_1,_2,"integerOrAuto")},regexp:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2))return true;var _3=_1.expression;if(isc.isA.String(_3)){_3=new RegExp(_3)}
return _3.test(_2)},lengthRange:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2))return true;if(!isc.isA.String(_2))return true;var _3=_2.length;if(isc.isA.Number(_1.max)&&_3>_1.max)return false;if(isc.isA.Number(_1.min)&&_3<_1.min)return false;return true},matchesField:function(_0,_1,_2){var _3=_0.form.getValue(_1.otherField);return(_2==_3)},isOneOf:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2))return true;var _3=_1.list;for(var i=0,_4=_3.length;i<_4;i++){if(_3[i]==_2)return true}
return false},contains:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2))return true;return _2.indexOf(_1.substring)>-1},doesntContain:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2))return true;return _2.indexOf(_1.substring)==-1},substringCount:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2))return true;var _3=_1.substring;for(var _4=0,_5=0;_4<_2.length;_4++){_4=_2.indexOf(_3,_4);if(_4>-1)_5++;else break}
var _6=_1.operator,_7=_1.count;if(!_6)_6="==";if(!_7)_7=0;switch(_6){case"==":return _5==_7;case"!=":return _5!=_7;case"<":return _5<_7;case"<=":return _5<=_7;case">":return _5>_7;case">=":return _5>=_7}
return false},mask:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2))return true;var _3=_1.mask;if(isc.isA.String(_3))_3=_1.mask=new RegExp(_3);if(!_3.test(_2)){return false}else{if(_1.transformTo){_1.resultingValue=_2.replace(_3,_1.transformTo)}}
return true},floatLimit:function(_0,_1,_2){var _3;if(_1.precision!=null){if(_1.roundToPrecion==null)_1.roundToPrecision=true;if(!isc.Validator.processValidator(_0,_1,_2,"floatPrecision"))
return false;if(_1.resultingValue!=null)
_2=_3=_1.resultingValue}
if(_1.min!=null||_1.max!=null){if(!isc.Validator.processValidator(_0,_1,_2,"floatRange")){return false}else{if(_3!=null&&_1.resultingValue==null)
_1.resultingValue=_3}}
return true},floatRange:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2))return true;var _3=parseFloat(_2);if(isNaN(_3)||_3!=_2)return false;if(isc.isA.Number(_1.max)&&_3>_1.max){_1.suggestedValue=_1.max;return false}
if(isc.isA.Number(_1.min)&&_3<_1.min){_1.suggestedValue=_1.min;return false}
return true},floatPrecision:function(_0,_1,_2){if(_2==null||isc.is.emptyString(_2))return true;var _3=parseFloat(_2);if(isNaN(_3)||_3!=_2)return false;if(isc.isA.Number(_1.precision)){var _4=Math.pow(10,_1.precision);var _5=(Math.round(_3*_4))/_4;if(_1.roundToPrecision){_1.resultingValue=_5;return true}else{return(_3==_5)}
return true}}}});isc.Validator.addClassMethods({processValidator:function(_0,_1,_2,_3){delete _1.resultingValue;delete _1.suggestedValue;if(_1.serverOnly)return true;if(!_3)_3=_1.type;var _4=true;var _5;if(_3!=null)_5=this.$42[_3];if(_5==null&&_1.condition){if(!isc.isA.Function(_1.condition)){this.logDebug("Creating function for validation condition:\r"+_1.condition);Function.replaceStringWithMethod(_1,"condition","item,validator,value")}
_5=_1.condition}
if(_5!=null){_4=_5(_0,_1,_2)}else{this.logWarn("Note: validator not understood:\r"+isc.Comm.serialize(_1))}
return _4},addValidator:function(_0,_1){if(isc.isA.String(_0)){var _2={};_2[_0]=_1;return this.addValidators(_2)}},addValidators:function(_0){for(var _1 in _0){if(isc.isA.String(_0[_1])){Function.replaceStringWithMethod(_0,_1,"item,validator,value")}}
isc.addMethods(this.$42,_0)}});isc.ClassFactory.defineClass("ContainerItem","FormItem");isc.ContainerItem.addProperties({tableWidth:"100%",cellSpacing:0,cellPadding:2,cellBorder:0,recalculateItemsOnRedraw:false,$3b:false});isc.ContainerItem.addMethods(isc.applyMask(isc.DynamicForm.getPrototype(),["getTableStartHTML","getTableEndHTML","getRowStartHTML","getRowEndHTML","getCellStartHTML","$2n","getCellEndHTML","$2p","$2s","$2v","getTitleAlign","getItemPromptHTML","getItem"]));isc.ContainerItem.addMethods({init:function(){this.Super("init",arguments);this.setItems(this.items?this.items:null);if(this.width!=null)this.setWidth(this.width)},setWidth:function(_0){this.Super("setWidth",arguments);if(this.width!=null&&this.width!="*")this.tableWidth=this.width},setItems:function(_0){if(_0)this.items=_0;if(!this.items)return null;this.logDebug("Creating "+this.items.length+" contained items");_0=this.items;for(var _1=0;_1<_0.length;_1++){var _2=_0[_1];if(!_2){_0.removeItem(_1--);continue}
isc.addMethods(_2,{$4l:function(){return this.parentItem.$4l()}});_2.containerWidget=this.containerWidget;_2.parentItem=this;_2.eventParent=this;_2.form=this.form;_2.showTitle=false;if(!isc.isA.FormItem(_2))_0[_1]=_2=isc.FormItemFactory.makeItem(_2);if(_2.name!=null)this[_2.name]=_2}
this.items=_0;this.redraw()},getTitleHTML:function(){var _0=this.getTitle();if(this.accessKey!=null){_0=isc.Canvas.hiliteCharacter(_0,this.accessKey)}
return _0},$l7:function(_0){if(!this.isVisible()||!this.containerWidget.isDrawn())return;this.$4m=_0;for(var i=0;i<this.items.length;i++){if(this.items[i].$kv())this.items[i].$l7(_0)}
if(!this.form.isDirty()){this.$4n(_0)}},$kv:function(){for(var i=0;i<this.items.length;i++){if(this.items[i].$kv())return true}
return false},focusInItem:function(){if(!this.isVisible()||!this.$kv())return;for(var i=0;i<this.items.length;i++){if(this.items[i].$kv()){this.items[i].focusInItem();break}}},blurItem:function(){for(var i=0;i<this.items.length;i++){if(this.items[i].hasFocus){this.items[i].blurItem();break}}},makeNamedItem:function(_0,_1){if(!this.itemCache)this.itemCache={};var _2=this.itemCache[_0];if(!_2){_2=(this[_0]||this.getClass()[_0]);if(_1!=null){_2=isc.addProperties({},_2,_1)}
_2=this.itemCache[_0]=isc.FormItemFactory.makeItem(_2)}
return _2},getInnerHTML:function(_0){if(!_0)_0={};if(!this.items||this.recalculateItemsOnRedraw||!isc.isA.FormItem(this.items[0]))this.setItems();if(!this.items)return"No items set for containerItem "+this;var _1=isc.StringBuffer.newInstance();_1.append(this.getTableStartHTML());var _2=this.items;for(var _3=0;_3<_2.length;_3++){var _4=_2[_3];_4.$2g()
_4.form=this.form;if(this.disabled)_4.disabled=true;if(_4.showIf){if(!isc.isA.Function(_4.showIf)){Function.replaceStringWithMethod(_4,"showIf","item,value,form")}
var _5=_0[_4];if(_5==null&&this.form&&this.form.values)_5=this.form.values[_8];var _6=(_4.showIf(_4,_5,this.form)!=false);if(_6!=_4.visible){_4.visible=_6}}}
for(var _3=0,_7=this.items.length;_3<_7;_3++){var _4=this.items[_3];if(!_4)continue;if(!_4.visible)continue;var _8=_4.getFieldName(),_5=null;if(_8){_5=_0[_8]}
if(_5==null){_5=_4.getDefaultValue();if(_5==null&&this.form&&this.form.values)_5=this.form.values[_8]}
if(_4.$1s||_3==0){if(_3!=0)_1.append(this.getRowEndHTML());_1.append(this.getRowStartHTML())}
_1.append(this.getCellStartHTML(_4));_1.append(_4.getInnerHTML(_5));_1.append(_4.getHintHTML(_5));_1.append(this.getCellEndHTML(_4))}
if(this.showIcons&&this.icons!=null){_1.append(this.$2n((this.form.isRTL()?isc.Canvas.RIGHT:isc.Canvas.LEFT),this.cellClassName,1,1,this.getTotalIconsWidth()));_1.append(this.getIconsHTML());_1.append(this.$2p())}
_1.append(this.getRowEndHTML()+this.getTableEndHTML());return _1.toString()},$2e:function(){if(this.items==null)return false;for(var i=0;i<this.items.length;i++){if(this.items[i].$2e())return true}
return this.$4z},$2g:function(){this.$4z=false;for(var i=0;i<this.items.length;i++){this.items[i].$2g()}},setEnabled:function(_0){this.Super("setEnabled",arguments);if(this.items){for(var i=0;i<this.items.length;i++)this.items[i].setEnabled(_0)}},getTextDirection:function(){return this.form.getTextDirection()},getLeft:function(){var _0=this.$2v();if(_0==null){this.logWarn("getLeft() Unable to determine position for "+(this.name==null?"this item ":this.name)+". Position cannot be determined before the item is drawn "+"- returning zero");return 0}
return this.$40(_0)},getTop:function(){var _0=this.$2v();if(_0==null){this.logWarn("getTop() Unable to determine position for "+(this.name==null?"this item ":this.name)+". Position cannot be determined before the item is drawn "+"- returning zero");return 0}
return this.$41(_0)},getVisibleWidth:function(){var _0=this.$2v();if(_0==null)return this.Super("getVisibleWidth",arguments);return _0.offsetWidth},getVisibleHeight:function(){var _0=this.$2v();if(_0==null)return this.Super("getVisibleHeight",arguments);return _0.offsetHeight}});isc.ClassFactory.defineClass("TextItem","FormItem");isc.TextItem.addProperties({width:150,height:19,elementClassName:"textItem",length:null,canAutoComplete:true,$44:"TEXT",$45:true,$3b:true,$46:null,redrawOnShowIcon:false});isc.TextItem.addMethods({getElementHTML:function(_0){var _1=this.form,_2=_1.getID(),_3=isc.SB.create(),_4=this.getItemID();_3.append("<INPUT TYPE=",this.$44," NAME=",this.getElementName()," ID=",this.getDataElementId(),(this.disabled?" DISABLED ":""),(this.$4e()!="native"?" AUTOCOMPLETE=OFF ":""),(this.length?" MAXLENGTH="+this.length:""),this.getElementStyleHTML()," TABINDEX=",this.$4l(),(this.showTitle==false&&this.accessKey!=null?" ACCESSKEY="+this.accessKey:"")," ONBLUR='if(!window.isc || !window.",_4,")return;isc.EH.captureKeyEvents();return ",_4,".$34(this,",_4,");'");if(isc.Browser.isIE){_3.append(" ONMOUSEDOWN='",_4,".$4q()'")}
var _5="'return "+_4+".handleKeyEvent(event)'";_3.append(" ONFOCUS='if(!window.",_4,")return;isc.EH.releaseKeyEvents();return ",_4,".$33(this,\"",_4,"\")'"," ONKEYDOWN=",_5," ONKEYPRESS=",_5," ONKEYUP=",_5,">");return _3.toString()},$34:function(_0,_1){var _2=this.Super("$34",arguments);if(this.changeOnBlur)this.form.elementChanged(this);else{var _3=this.getElementValue();if(this.mapDisplayToValue){_3=this.mapDisplayToValue(_3)}
if(this._value!=_3)this.form.elementChanged(this)}
return _2},getElementStyleHTML:(isc.Browser.isNav?function(){}:function(){var _0=this.getInnerWidth(),_1=this.getInnerHeight();_0-=this.getTotalIconsWidth();return isc.StringBuffer.concat(" CLASS=",this.getElementClassName()," STYLE='",(isc.isA.Number(_0)?"WIDTH:"+_0+"px;":""),(isc.isA.Number(_1)?"HEIGHT:"+_1+"px;":""),(this.textAlign?"text-align:"+this.textAlign+";":""),(isc.Browser.isMoz?"-moz-user-focus:"+(this.$4l()>0?"normal;":"ignore;"):""),"' ")}),mapValueToDisplay:function(_0){var _1=this.Super("mapValueToDisplay",_0);if(_1==null)return"";return _1},mapDisplayToValue:function(_0){var _1=this.$37(_0);if(isc.is.emptyString(_1))_1=this.$46;return _1},setValue:function(_0){var _1;if(_0!==_1&&(_0==null||isc.is.emptyString(_0)))
this.$46=_0;return this.Super("setValue",arguments)}});isc.ClassFactory.defineClass("BlurbItem","FormItem");isc.BlurbItem.addProperties({shouldSaveValue:false,height:null,showTitle:false,colSpan:"*",startRow:true,endRow:true,cellClassName:"staticTextItem"});isc.BlurbItem.addMethods({setValue:function(_0){var _1=this.getValue();this.Super("setValue",arguments);if(_1!=this.getValue())this.redraw()}});isc.ClassFactory.defineClass("ButtonItem","FormItem");isc.ButtonItem.addProperties({shouldSaveValue:false,height:20,elementClassName:"buttonItem",$44:"BUTTON",showTitle:false,startRow:true,endRow:true,colSpan:"*"});isc.ButtonItem.addMethods({getTitleHTML:function(){return this.getTitle()},getElementHTML:function(_0){var _1=isc.StringBuffer.newInstance(),_2=this.form.getID(),_3=this.getItemID();_1.append("<INPUT"," ID=",this.getDataElementId()," TYPE=",this.$44,(this.disabled?" DISABLED ":"")," VALUE=\"",this.getTitleHTML(),"\"",(isc.Browser.isNav?"":this.getElementStyleHTML())," TABINDEX=",this.$4l(),(this.accessKey!=null?" ACCESSKEY="+this.accessKey:"")," ONCLICK='return ",_2,".elementClicked(\"",_3,"\")'"," ONFOCUS='return ",_3,".$33(this, ",_3,")'",">");return _1.toString()},getButtonElement:function(){return isc.Canvas.getElementById(this.getDataElementId())},getElementStyleHTML:function(){return isc.StringBuffer.concat(" CLASS=",this.getElementClassName()," STYLE='",isc.isA.Number(this.width)?"width:"+this.width+"px;":null,isc.isA.Number(this.height)?"height:"+this.height+"px;":null,isc.Browser.isMoz?"-moz-user-focus:"+(this.$4l()>0?"normal;":"ignore;"):null,"'")},$kv:function(){return(!this.disabled)},getFocusElement:function(){return this.getButtonElement()},$4o:function(_0){var _1=this.getButtonElement();if(_1)_1.disabled=!_0}});isc.ClassFactory.defineInterface("PickList");isc.PickList.addProperties({pickListHeight:300,pickListBaseStyle:"pickListCell",pickListProperties:{cellHeight:16}});isc.PickList.addMethods({showPickList:function(_0){if(!this.pickList)this.makePickList(true);else this.setUpPickList(true);if(!_0&&!this.pickList.isVisible())this.$47();this.selectDefaultItem()},$47:function(){if(this.pickList.getTotalRows()<1)return;if(!this.pickList.isDrawn()){this.pickList.visibility=isc.Canvas.HIDDEN;this.pickList.draw()}
this.placePickList();this.pickList.show()},makePickList:function(_0){var _1=isc.timeStamp();var _2=(this.getOptionDataSource()!=null);if(!_2&&isc.PickList.$48!=null){this.pickList=isc.PickList.$48}else{var _3=this.pickListProperties;isc.addProperties(_3,{useAllDataSourceFields:false,tabIndex:-1,canResizeFields:false,itemClick:function(_15){var _4=this.formItem,_5=_4.getValueFieldName(),_6=_15[_5];_4.pickValue(_6)},hide:function(){this.Super("hide",arguments);if(this.showModal)this.formItem.focusInItem();this.formItem.pickListHidden()},show:function(){this.Super("show",arguments);this.formItem.pickListShown()},getCellCSSText:function(_15,_16,_17){if(_15==this.selection.getSelectedRecord()){var _7="";if(this.hiliteColor!=null)
_7+="background-color:"+this.hiliteColor+";";if(this.hiliteTextColor!=null)
_7+="color:"+this.hiliteTextColor+";";return _7}},keyDown:function(){var _8=isc.EH.lastEvent.keyName;if(_8=="Tab"){this.hide();return false}},formatCellValue:function(_15,_16,_17,_18){var _5=this.getFieldName(_18);if(this.formItem.formatPickListValue)
return this.formItem.formatPickListValue(_15,_5,_16);return _15},bodyKeyPress:function(_15,_16){if(isc.Browser.isSafari){var _8=isc.EH.lastEvent.keyName;if(_8=="Tab"){this.hide();return false}}
var _9=isc.EH.getKeyEventCharacterValue();if(_9!=null){var _10=this.getData();if(isc.isAn.Array(_10)&&_10.length>1){var _11=String.fromCharCode(_9),_11=_11.toLowerCase(),_4=this.formItem,_12=_4.getValueFieldName(),_13=_10.indexOf(this.getSelectedRecord()),_14=_13<(_10.length-1)?_13+1:0;if(_13<0)_13=0;while(_14!=_13){var _6=_10[_14][_12];_6=_4.mapValueToDisplay(_6);if(isc.isA.String(_6)&&_6.length>0&&_6.charAt(0).toLowerCase()==_11){this.scrollRecordIntoView(_14);this.$yl(_14);return}
_14+=1;if(_14>=_10.length)_14=0}}}
return this.Super("bodyKeyPress",arguments)},dataChanged:function(){var _10=this.data;if(!_10)return;if(this.data.get(0)==Array.LOADING)return;return this.Super("dataChanged",arguments)}});this.pickList=isc.ScrollingMenu.create(_3);if(_2)
this.pickList.observe(this,"destroy","observer.hide(); observer.destroy();");else isc.PickList.$48=this.pickList}
this.setUpPickList(_0);this.logInfo("Time to initially create pickList:"+(isc.timeStamp()-_1),"timing")},setUpPickList:function(_0){var _1=this.pickList;if(_1.formItem!=this){this.$49();this.setUpPickListFields()}
this.filterPickList(_0)},$49:function(){var _0=this.pickList.formItem;if(_0==this)return;if(_0){if(this.pickList.isObserving(_0.containerWidget,"hide")){this.pickList.ignore(_0.containerWidget,"hide")}
if(this.pickList.isObserving(_0.containerWidget,"clear")){this.pickList.ignore(_0.containerWidget,"clear")}}
var _1=this.pickListProperties;isc.addProperties(_1,{formItem:this,baseStyle:this.pickListBaseStyle,hiliteColor:this.pickListHiliteColor,hiliteTextColor:this.pickListHiliteTextColor,showModal:this.modalPickList});this.pickList.setProperties(_1);this.pickList.observe(this.containerWidget,"hide","observer.hide();");this.pickList.observe(this.containerWidget,"clear","if (observer.isDrawn()) observer.clear();")},getOptionDataSource:function(){if(isc.isA.String(this.optionDataSource))
this.optionDataSource=isc.DataSource.getDataSource(this.optionDataSource);return this.optionDataSource},getPickListFields:function(){if(this.pickListFields)return this.pickListFields;return[{width:"*",name:this.getValueFieldName(),valueMap:this.getValueMap()}]},getValueFieldName:function(){if(this.valueField)return this.valueField;return this.getFieldName()},setUpPickListFields:function(){var _0=this.getPickListFields()
this.pickList.setFields(_0);if(_0.length>1){this.pickList.headerHeight=22;this.pickList.fixedFieldWidths=true}else{this.pickList.headerHeight=0;this.pickList.fixedFieldWidths=!this.autoSizePickList}},filterPickList:function(_0){this.$5a=_0;if(this.optionDataSource){var _1=this.getOptionDataSource();if(this.pickList.getDataSource()!=_1){this.pickList.setDataSource(_1,this.pickList.fields)}
this.filterDataBoundPickList()}else{var _2=this.getClientPickListData();_2=this.filterClientPickListData(_2);this.pickList.setData(_2);this.filterComplete()}},getClientPickListData:function(){return isc.PickList.optionsFromValueMap(this)},pickListHidden:function(){},pickListShown:function(){},selectDefaultItem:function(){if(this.optionDataSource!=null)return;var _0=this.pickList.getData(),_1=_0.find(this.getValueFieldName(),this.getValue());if(_1){this.pickList.selection.selectSingle(_1);this.pickList.scrollRecordIntoView(_0.indexOf(_1))}},getPickListFilterCriteria:function(){return{}},filterComplete:function(){var _0=this.pickList,_1=_0.getData();if(_1.getLength()==0&&_0.isVisible()){var _2=_0.hasFocus||(_0.body&&_0.body.hasFocus);_0.hide();if(_2)this.focusInItem()}else{if(this.$5a)this.$47()}},filterDataBoundPickList:function(){var _0=this.getPickListFilterCriteria(),_1={showPrompt:false,afterFlowCallback:{target:this,methodName:"filterComplete"}};if(this.filterContext!=null)_1.addProperties(this.filterContext);this.pickList.filter(_0,_1)},filterClientPickListData:function(_0){return _0},getPickListPosition:function(){return[this.getPageLeft(),this.getPageTop()+this.getHeight()]},getPickListHeight:function(){var _0=this.pickListHeight,_1=this.pickList,_2=_1.getTotalRows(),_3=_1.cellHeight,_4=_1.headerHeight||0,_5=_2*_3,_6=_5+_4+_1.getVBorderPad();return Math.min(_6,_0)},$5b:function(_0,_1,_2){var _3=this.pickList,_4=_0;if(_3.fixedFieldWidths||_3.body==null||!_3.body.isDrawn()){_3.resizeTo(_4,_1);return}
var _5=(_2?_3.body.getScrollbarSize():0);_3.body.setOverflow("hidden");var _6=_3.leaveScrollbarGap;_3.setProperties({leaveScrollbarGap:false});_3.resizeTo(_0-_5,_1);if(_3.body.isDirty())_3.body.redraw("pickList sizing");var _7=_3.body.getScrollWidth(),_8=_7+_5+_3.getHBorderPad();_3.setProperties({leaveScrollbarGap:_6});_3.setWidth(Math.max(_8,_0));_3.body.setOverflow("auto")},placePickList:function(){var _0=this.pickList,_1=this.getPickListPosition(),_2=_1[0],_3=_1[1],_4=this.getPickListHeight(),_5=(_4==this.pickListHeight);if(!_5){_0.setProperties({leaveScrollbarGap:false})}else{_0.setProperties({leaveScrollbarGap:true})}
var _6=this.$5b(this.getInnerWidth(),_4,(_4==this.pickListHeight));_0.setPageRect(_2,_3)},pickValue:function(_0){}});isc.PickList.addClassMethods({optionsFromValueMap:function(_0){var _1=_0.getValueMap(),_2=[];if(_1==null)_1=[];var _3=_0.getValueFieldName();if(isc.isAn.Array(_1)){for(var i=0;i<_1.length;i++){_2[i]={}
_2[i][_3]=_1[i]}}else if(isc.isAn.Object(_1)){var i=0;for(var j in _1){_2[i]={};_2[i][_3]=j;i++}}
return _2}});isc.ClassFactory.defineClass("SelectItem","FormItem");isc.$5c={elementClassName:"selectItem",disabledElementClassName:"selectItemDisabled",height:19,width:150,dirtyOnKeyDown:false,changeOnKeypress:false,redrawOnShowIcon:false,addUnknownValues:true,autoSizePickList:true,separatorValue:"----",separatorTitle:"--------------------",otherValue:"***other***",otherTitle:"Other..."};isc.SelectItem.addProperties(isc.$5c,{backgroundColor:"white",disabledBackgroundColor:"white",border:"1px solid #7F9DB9",disabledBorder:"1px solid #ACA899",hiliteOnFocus:true,hiliteColor:"#316AC5",hiliteTextColor:"white",hPadding:2,pickButtonWidth:15,pickButtonHeight:15,pickButtonPadding:1,pickButtonSrc:"[SKIN]/DynamicForm/SelectItem_PickButton_icon.gif",pickButtonOverSrc:"[SKIN]/DynamicForm/SelectItem_PickButton_icon_over.gif",pickButtonDisabledSrc:"[SKIN]/DynamicForm/SelectItem_PickButton_icon_disabled.gif",modalPickList:true,changeOnValueChange:true,changeOnKeyboardNavigation:true});isc.SelectItem.addMethods({$3c:function(){if(this.icons==null)this.icons=[];var _0={};_0.width=this.pickButtonWidth;_0.height=this.pickButtonHeight;_0.writeIntoItem=true;_0.imgOnly=true;_0.canFocus=false;_0.showOver=true;_0.hspace=0;_0.disabledSrc=this.pickButtonDisabledSrc;_0.src=this.pickButtonSrc;_0.overSrc=this.pickButtonOverSrc;this.icons.addAt(_0,0);this.Super("$3c",arguments)},$3l:function(){return 0},getElementHTML:function(_0){_0=this.mapValueToDisplay(_0);var _1=isc.SB.create(),_2=this.getInnerWidth(),_3=this.getInnerHeight();var _4=this.border?parseInt(this.border):null;if(isc.isA.Number(_4)){if(isc.Browser.isSafari&&isc.isA.Number(_3))_3-=2*_4;if(isc.isA.Number(_2))_2-=2*_4}
_2-=this.getTotalIconsWidth();var _5=this.pickButtonWidth+(2*this.pickButtonPadding),_6=_2-_5-(2*this.hPadding)-
(2*this.pickButtonPadding),_7=this.getID(),_8=this.form.getID();if(this.hiliteOnFocus&&(isc.Browser.isMoz||isc.Browser.isSafari))
_6-=2;var _9="if(!window."+_7+")return;",_10="'"+_9+"return "+_7+".handleKeyEvent(event)'",_11="'"+_9+"return "+_7+".$33(this,\""+_7+"\")'",_12="'"+_9+"return "+_7+".$34(this,"+_7+");'",_13=(this.hasFocus||this.$2l),_14=(_13&&this.hiliteOnFocus?"background-color:"+this.hiliteColor+";color:"+this.hiliteTextColor+";"+(isc.Browser.isMoz||isc.Browser.isSafari?"border:1px dotted "+this.hiliteTextColor+";":"border:1px solid "+this.hiliteColor):"border:1px solid "+this.backgroundColor),_15=this.$4l(),_16=(this.disabled?null:this.accessKey);var _17=(isc.Browser.isMoz||isc.Browser.isSafari),_18;if(_17){_18=isc.Canvas.getFocusProxyString(this.getID(),false,0,0,_6,this.getHeight()-4,this.isVisible(),this.$kv(),_15,_16,true,_11,_12,_10,_10,_10)}
_1.append("<TABLE ID=",this.$5d()," onmouseover='",_9,_7,".$5e()' onmouseout='",_9,_7,".$5f()' onclick='",_8,".elementClicked(\"",_7,"\")'"," CELLPADDING=0 CELLSPACING=0 STYLE='","cursor:default;",(isc.isA.Number(_2)?"WIDTH:"+_2+"px;":""),(isc.isA.Number(_3)?"HEIGHT:"+_3+"px;":""),(this.textAlign?"text-align:"+this.textAlign+";":""),"border:",this.$5g(),";background-color:",(this.disabled?this.disabledBackgroundColor:this.backgroundColor),";'><TR><TD>",(_17?_18:null),"<DIV ID='",this.$5h(),"' style='overflow:hidden;white-space:nowrap;width:",_6,"px;margin-left:",this.hPadding,"px;margin-right:",this.hPadding,"px;",_14,"'"," CLASS=",this.getElementClassName(),(_16?" ACCESSKEY="+_16:null)," TABINDEX=",_15,(_17?null:" ONFOCUS="+_11+" ONBLUR="+_12+" ONKEYDOWN="+_10+" ONKEYUP="+_10+" ONKEYPRESS="+_10+" handleNativeEvents=true"),">",_0,"</DIV></TD><TD ALIGN=CENTER ","CLASS=",this.getElementClassName()," width=",_5,">",this.getIconHTML(this.icons[0]),"</TD></TR></TABLE>")
return _1.toString()},getElementClassName:function(){if(this.disabled)return this.disabledElementClassName;return this.Super("getElementClassName",arguments)},$5e:function(){if(!this.disabled)this.$31(this.icons[0],true)},$5f:function(){if(!this.disabled)this.$31(this.icons[0],false)},elementClicked:function(){if(this.disabled)return;if(this.Super("elementClicked",arguments)==false)return false;this.showPickList()},handleKeyPress:function(_0,_1){if(this.Super("handleKeyPress",arguments)==false)return false;if(_0.keyName=="Enter"&&this.isSelectOther){if(this.$5i!=null)this.updateValue()}
var _2=_0.characterValue;if(_2!=null){this.moveToChar(_2);return}},handleKeyDown:function(_0,_1){if(this.Super("handleKeyDown",arguments)==false)return false;var _2=_1[2];if(_2=="Arrow_Down"){if(isc.EH.altKeyDown())this.showPickList();else this.moveToNextValue(1)}else if(_2=="Arrow_Up"){if(isc.EH.altKeyDown())this.showPickList();else this.moveToNextValue(-1)}else if(_2=="Home"){this.moveToFirstValue()}else if(_2=="End"){this.moveToLastValue()}},handleKeyEvent:function(_0){this.Super("handleKeyEvent",arguments);var _1=isc.SelectItem;if(!_1.$5j){_1.$5j={"Arrow_Down":true,"Arrow_Up":true,"Home":true,"End":true}}
if(_1.$5j[isc.EH.lastEvent.keyName]){isc.EventHandler.suppressNextKeyEvent=true;return false}},$34:function(_0,_1){var _2=this.Super("$34",arguments);if(this.changeOnBlur||this.$2e()||this.$5i){if(isc.Browser.isMoz&&this.$5i==this.otherValue)
this.form.$2w=true;this.updateValue()}
return _2},moveToChar:function(_0){if(this.optionDataSource)return;var _1=String.fromCharCode(_0);if(_1==null)return;_1=_1.toLowerCase();var _2=this.getClientPickListData();if(_2.length<2)return;var _3=(this.isSelectOther&&this.$5i!=null)?this.$5i:(this.$2e()?this.$5k:this.getValue()),_4=this.getValueFieldName(),_5=_2.findIndex(_4,_3),i=(_5==_2.length-1?0:_5+1);while(i!=_5){if(_5<0)_5=0;var _6=_2[i][this.getValueFieldName()],_7=this.mapValueToDisplay(_6);if(isc.isA.String(_7)){var _8=_7.charAt(0).toLowerCase();if(_8==_1){var _9=_6;this.changeToValue(_9,(this.changeOnValueChange&&this.changeOnKeyboardNavigation));return}}
i+=1;if(i>=_2.length)i=0}},moveToNextValue:function(_0){if(this.optionDataSource)return;var _1=this.getClientPickListData();if(_1.length<2)return;var _2;if(this.isSelectOther&&this.$5i!=null)_2=this.$5i;else _2=(this.$2e()?this.$5k:this.getValue());var _3=this.getValueFieldName(),_4=_1.findIndex(_3,_2);_4+=_0;if(_4>=_1.length||_4<0)return;var _5=_1[_4][_3];this.changeToValue(_5,(this.changeOnValueChange&&this.changeOnKeyboardNavigation))},moveToFirstValue:function(){if(this.optionDataSource)return;var _0=this.getClientPickListData(),_1=this.getValueFieldName(),_2=_0[0][_1];this.changeToValue(_2,(this.changeOnValueChange&&this.changeOnKeyboardNavigation))},moveToLastValue:function(){if(this.optionDataSource)return;var _0=this.getClientPickListData(),_1=this.getValueFieldName(),_2=_0[_0.length-1][_1]
this.changeToValue(_2,(this.changeOnValueChange&&this.changeOnKeyboardNavigation))},$kv:function(){return true},getFocusElement:function(){if(isc.Browser.isMoz||isc.Browser.isSafari)
return isc.Canvas.getElementById(this.getID()+"__focusProxy");return this.$5l()},elementFocus:function(){if(this.disabled)return;this.Super("elementFocus",arguments);if(this.hiliteOnFocus)this.hiliteText()},elementBlur:function(){this.Super("elementBlur",arguments);if(this.hiliteOnFocus)this.clearTextHilite()},hiliteText:function(){var _0=this.$5l();if(!_0)return;_0.style.backgroundColor=this.hiliteColor;_0.style.color=this.hiliteTextColor;if(isc.Browser.isMoz||isc.Browser.isSafari){_0.style.border="1px dotted "+this.hiliteTextColor}},clearTextHilite:function(){var _0=this.$5l();if(!_0)return;_0.style.color="";_0.style.backgroundColor="";if(isc.Browser.isMoz||isc.Browser.isSafari){_0.style.border="1px solid "+this.backgroundColor}},$5g:function(){return(this.disabled?this.disabledBorder:this.border)},$5d:function(){return this.getID()+"$wv"},$5h:function(){return this.getID()+"$5m"},$2v:function(){return isc.Canvas.getElementById(this.$5d())},$5l:function(){return isc.Canvas.getElementById(this.$5h())},changeToValue:function(_0,_1){var _2=(this.$5i||this.$5k||this.getValue());if(_2==_0)return;if(this.isSelectOther&&(_0==this.separatorValue||_0==this.otherValue))
{this.setElementValue(_0);this.$5i=_0;return}else{delete this.$5i}
this.setLocalValue(_0);if(_1)this.updateValue()},setLocalValue:function(_0){if(this.isVisible()&&this.containerWidget.isDrawn())this.setElementValue(_0);this.$5k=_0;this.$4y()},updateValue:function(){if(this.isSelectOther&&this.$5i!=null){var _0=this.getSelectOtherValue(this.$5i);delete this.$5i;this.setLocalValue(_0)}
if(!this.$2e())return;var _1=this.$5k;if(_1==this._value)return;if(this.changingValue&&_1==this.$4c)return;this.$4d=true;this.$4c=_1;if(this.handleChange(_1,this._value)==false){this.setElementValue(this._value);this.$2g();return}
delete this.$4c;delete this.$4d;this.saveValue(_1)},getSelectOtherValue:function(_0){if(_0==this.separatorValue)return(this.$5k||this.getValue());if(_0==this.otherValue){var _1=this.$5k||this.getValue(),_2=(_1==null?"":this.mapValueToDisplay(_1)),_3=prompt("Other value for \r'"+this.getTitle()+"'?",(_2?_2:""));if(_3!=null)_0=this.mapDisplayToValue(_3);else _0=_1}
return _0},setValue:function(_0){_0=this.$5n(_0);if(_0!=this.$5k)this.setLocalValue(_0);arguments[0]=_0;this.Super("setValue",arguments);if(this.pickList&&this.pickList.isVisible()){this.setUpPickList(true)}},$2g:function(){this.Super("$2g",arguments);delete this.$5k},getDefaultValue:function(){var _0=this.Super("getDefaultValue",arguments);return this.$5n(_0)},$5n:function(_0){if(this.addUnknownValues||this.optionDataSource)return _0;var _1=this.$5o,_2=this.getValueMap(),_3;this.$5o=true;if(isc.isAn.Array(_2)){if(!_2.contains(_0)){_0=(_1?_2[0]:(this.$5k||this.getValue()))}}else if(isc.isAn.Object(_2)){if(_2[_0]===_3){_0=(_1?_2[isc.getKeys(_2)[0]]:(this.$5k||this.getValue()))}}else{this.logInfo("SelectItem has no valueMap, and addUnknown values is false, "+"so no way to get a valid value.  Setting value to null.");_0=null}
delete this.$5o;return _0},setElementValue:function(_0){if(this.containerWidget.isDrawn()&&this.isVisible){var _1=this.$5l();if(_1)_1.innerHTML=this.mapValueToDisplay(_0)}},setEnabled:function(_0){if(!_0==!!this.disabled)return;if(!_0)if(this.hasFocus)this.blur();this.$l7(_0?this.$4l():-1);this.Super("setEnabled",arguments);var _1=this.$2v();if(_1){_1.style.border=this.$5g();_1.style.backgroundColor=(_0?this.backgroundColor:this.disabledBackgroundColor);var _2=this.$5l();if(_2){_2.className=this.getElementClassName()}}},mapValueToDisplay:function(_0){if(this.isSelectOther){if(_0==this.otherValue)return this.otherTitle;if(_0==this.separatorValue)return this.separatorTitle}
var _1=this.$36(_0);if(_1==null||isc.isAn.emptyString(_1))return"&nbsp;";else _1+="";return _1},mapDisplayToValue:function(_0){var _1=this.$37(_0);if(isc.is.emptyString(_1))_1=this.$46;return _1},getLeft:function(){var _0=this.$2v();if(_0)return this.$40(_0)},getTop:function(){var _0=this.$2v();return this.$41(_0)},getVisibleWidth:function(){var _0=this.$2v();if(_0!=null)return _0.offsetWidth;else return this.getWidth()},getVisibleHeight:function(){var _0=this.$2v();if(_0)return _0.offsetHeight;else return this.getHeight()},getClientPickListData:function(){var _0=isc.PickList.optionsFromValueMap(this),_1=this.getValueFieldName();if(_0.find(_1,this.getValue())==null){var _2={};_2[_1]=this.getValue();_0.addAt(_2,0)}
if(this.isSelectOther){var _3={},_4={};_3[_1]=this.separatorValue;_4[_1]=this.otherValue;_0.addListAt([_3,_4],_0.length)}
return _0},formatPickListValue:function(_0,_1,_2){if(this.isSelectOther&&(_1==this.getValueFieldName())){if(_0==this.otherValue)return this.otherTitle;if(_0==this.separatorValue)return this.separatorTitle}
return _0},pickValue:function(_0){if(this.isSelectOther)_0=this.getSelectOtherValue(_0);this.changeToValue(_0,this.changeOnValueChange)},getPickListPosition:function(){var _0=this.getPageTop(),_1=_0+this.getHeight(),_2=this.getPageLeft(),_3=this.getPickListHeight(),_4=isc.Page.getScrollTop(),_5=isc.Page.getHeight()+_4;if(_1+_3>_5){_1=Math.max(_4,(_0-_3))}
return[_2,_1]},setValueMap:function(){this.Super("setValueMap",arguments);if(this.pickList){this.pickList.hide();delete this.pickList.formItem;this.setUpPickList(this.pickList.isVisible())}
var _0=this.getValue(),_1=this.$5n(_0);if(_0!=_1){this.setValue(_1)}else{this.setElementValue(this.mapValueToDisplay(_1))}}});isc.ClassFactory.mixInInterface("SelectItem","PickList");isc.ClassFactory.defineClass("NativeSelectItem","FormItem");isc.NativeSelectItem.addClassProperties({DEFAULT_ROW_COUNT:6,instances:[]});isc.NativeSelectItem.addProperties(isc.$5c,{height:null,$45:true,$3b:true});isc.NativeSelectItem.addClassMethods({getOptionsHTML:function(_0,_1){var _2=isc.SB.create();if(isc.isAn.Array(_0)){for(var i=0,_3=_0.length;i<_3;i++){var _4=_0[i];_2.append(this.$5p(_4,_4,_1))}}else{for(var _4 in _0){var _5=_0[_4];_2.append(this.$5p(_4,_5,_1))}}
return _2.toString()},$5p:function(_0,_1,_2){var _3=this.$5q;if(!_3){this.$5r=" SELECTED ";_3=this.$5q=[];_3[0]="<OPTION ";_3[2]=' VALUE="';_3[4]='">';_3[6]="</OPTION>"}
_3[1]=(_0==_2?this.$5r:null);_3[3]=_0;_3[5]=_1;return _3.join(isc.$d3)},getOptionCount:function(_0){if(isc.isAn.Array(_0)){return _0.length}else{var _1=0;for(var _2 in _0){_1++}
return _1}}});isc.NativeSelectItem.addMethods({init:function(){this.Super("init",arguments);isc.NativeSelectItem.instances.add(this)},destroy:function(){isc.NativeSelectItem.instances.remove(this);this.Super("destroy",arguments)},getElementHTML:function(_0){this.$5s=false;var _1=this.form,_2=_1.getID(),_3=isc.StringBuffer.newInstance(),_4=this.getItemID();var _5=isc.StringBuffer.newInstance();if(this.changeOnBlur){_5.append(" ONBLUR='if(!window.isc||!window.",_4,") return; ","isc.EH.captureKeyEvents();",_4,".$34(this, \"",_4,"\")",";return ",_2,".elementChanged(\"",_4,"\")'")}else{_5.append(" ONBLUR='if(!window.isc||!window.",_4,") return; ","isc.EH.captureKeyEvents();","return ",_4,".$34(this, \"",_4,"\")'"," ONCHANGE='return ",_4,".$5t()'")}
var _6=isc.$d3;_3.append("<SPAN CLASS=",this.elementClassName,">","<SELECT"," NAME=",this.getElementName()," ID=",this.getDataElementId(),(!this.showTitle&&this.accessKey!=null?" ACCESSKEY="+this.accessKey:_6),(this.disabled?" DISABLED ":_6),this.getElementStyleHTML(),(this.multiple?" MULTIPLE":_6),_5.toString()," TABINDEX=",this.$4l());var _7="'return "+_4+".handleKeyEvent(event)'";_3.append(" ONFOCUS='isc.EH.releaseKeyEvents();return ",_4,".$33(this,\"",_4,"\")'"," ONKEYDOWN=",_7," ONKEYPRESS=",_7," ONKEYUP=",_7,">");_3.append(this.getOptionsHTML(this.getValueMap()));_3.append("</SELECT></SPAN>");return _3.toString()},$5t:function(_0){if(isc.Browser.isIE&&!_0){isc.Timer.setTimeout(this.getID()+".$5t(true)",10);return true}
return this.form.elementChanged(this.getID())},getOptionsHTML:function(_0){var _1=isc.NativeSelectItem.getOptionsHTML(_0?_0:this.getValueMap());if(this.isSelectOther){_1+="<OPTION VALUE=\""+this.separatorValue+"\">"+this.separatorTitle+"<OPTION VALUE=\""+this.otherValue+"\">"+this.otherTitle+(isc.Browser.isNav?"<OPTION VALUE=\""+this.separatorValue+"\">"+this.separatorTitle:"")}
return _1},getOptionCount:function(_0){return isc.NativeSelectItem.getOptionCount(_0?_0:this.getValueMap())},getElementStyleHTML:function(){var _0=isc.SB.create(),_1=isc.SB.create();_0.append(" CLASS=",this.getElementClassName());if(this.multiple||this.rows){var _2=this.rows;if(!isc.isA.Number(_2)||_2<1)
_2=Math.min(isc.NativeSelectItem.DEFAULT_ROW_COUNT,this.getOptionCount());if(this.height){if(isc.Browser.isDOM&&(!isc.Browser.isIE||isc.Browser.version>5)){if(isc.isA.Number(this.height))_1.append("HEIGHT:",this.height,"px;")}else{var _3=isc.DynamicForm.getNavFieldSizeInfo(this.elementClassName,true);_2=Math.max(1,Math.ceil((this.height-_3.multiSelectHeightOverhead)/
_3.multiSelectRowHeight))}}
_0.append(" SIZE=",_2)}
if(isc.Browser.isDOM){var _4=this.width;if(isc.isA.Number(_4)){_4-=this.getTotalIconsWidth();_4=Math.max(_4,1);_1.append("WIDTH:",_4,"px;")}
if(isc.Browser.isMoz){_1.append("-moz-user-focus:",(this.$4l()>0?"normal;":"ignore;"))}
_1=_1.toString();if(_1.length>0)_0.append(" STYLE='",_1,"'")}
return _0},$3z:function(){if(!isc.isA.Number(this.width))return;return this.Super("$3z",arguments)},$3l:function(){return 0},setElementValue:function(_0){var _1=this.getElement();if(!_1)return null;var _2=_1.options;if(!_2){this.logDebug("setElementValue(): element.options is null. ???");return null}
if(!this.multiple){if(_0==null)_0="";for(var i=0;i<_2.length;i++){if(_2[i].value==_0){if(_1.selectedIndex!=i){_1.selectedIndex=i}
return _1.selectedIndex}}
for(var i=0;i<_2.length;i++){if(_2[i].text==_0){if(_1.selectedIndex!=i){_1.selectedIndex=i}
_1.selectedIndex=i;return _1.selectedIndex}}
if(this.addUnknownValues){if(isc.Browser.isIE){var _3=0;if(this.$5s){_2[_3].text=_0;_2[_3].value=_0}else{_2.add(new Option(_0,_0),_3);this.$5s=true}}else{if(this.$5s){var _3=_2.length-1;_2[_3].value=_0;_2[_3].text=_0}else{var _3=_2.length;_2[_3]=new Option(_0,_0);this.$5s=true}}
if(_1.selectedIndex!=_3){_1.selectedIndex=_3}
return _1.selectedIndex}else{return null}}else{if(_0==null){_0=[]}else if(isc.isA.String(_0)&&_0.contains(",")){_0=_0.split(",")}else if(!isc.isAn.Array(_0)){_0=[_0]}else{_0=_0.duplicate()}
for(var i=0;i<_2.length;i++){var _4=_1.options[i];var _5=_0.indexOf(_4.value);if(_5>-1){if(_4.selected!=true)_4.selected=true;_0.removeItem(_5)}else{if(_4.selected!=false)_4.selected=false}}
if(_0.length!=0&&this.addUnknownValues){for(var i=0;i<_0.length;i++){var _6=_2[_2.length]=new Option(_0[i],_0[i]);_6.selected=true}}
return _0}},getElementValue:function(){var _0=this.getElement();if(!_0)return null;var _1=_0.options;if(!_1||_1.length==0)return null;if(!this.multiple){var _2=_1[_0.selectedIndex];if(!_2)return null;return(_2.value!=null?_2.value:_2.text)}else{var _3=[];for(var i=0;i<_1.length;i++){var _2=_1[i];if(_2.selected){_3.add(_2.value!=null?_2.value:_2.text)}}
if(_3.length<2)return _3[0];return _3}},setElementValueMap:function(_0){this.$5s=false;this.Super("setElementValueMap",arguments);var _1=this.getElement();if(_1==null)return;var _2=_1.options;_2.length=0;if(isc.isAn.Array(_0)){for(var i=0;i<_0.length;i++){_2[i]=new Option(_0[i],_0[i])}}else{for(var _3 in _0){_2[_2.length]=new Option(_0[_3],_3)}}
if(this.isSelectOther){_2[_2.length]=new Option(this.separatorTitle,this.separatorValue);_2[_2.length]=new Option(this.otherTitle,this.otherValue)}},updateValue:function(){if(this.isSelectOther){if(!this.hasElement()||this.getElement()==null)return;var _0=this._value,_1=this.getElementValue();if(_1==this.separatorValue){this.setValue(_0);return false}
if(_1==this.otherValue){var _2=this.getValueMapTitle(_0);_1=prompt("Other value for \r'"+this.getTitle()+"'?",(_2?_2:""));if(_1==null){this.setValue(_0);return false}
this.setElementValue(_1)}}
return this.Super("updateValue",arguments)}});isc.ClassFactory.defineClass("CheckboxItem","FormItem");isc.CheckboxItem.addProperties({elementClassName:"labelAnchor",prompt:"Check/uncheck this item",$44:"CHECKBOX",defaultValue:false,$3b:true,showLabel:true});isc.CheckboxItem.addMethods({getElementHTML:function(_0){var _1=this.form.getID(),_2=this.getItemID();var _3="'return "+_2+".handleKeyEvent(event)'";return isc.SB.concat("<INPUT TYPE=",this.$44," NAME=",this.getElementName()," ID=",this.getDataElementId(),(_0?" VALUE=\""+_0+"\"":"")," ONCLICK='",_1,".elementChanged(\"",_2,"\")'",(this.disabled?" DISABLED ":"")," ONKEYDOWN=",_3," ONKEYUP=",_3," ONKEYPRESS=",_3," ONFOCUS='return ",_2,".$33(this,\"",_2,"\")'"," ONBLUR='if (!window.isc||!window.",_2,") return; ","return ",_2,".$34(this,\"",_2,"\")'",(this.prompt?" TITLE=\""+this.prompt+"\"":"")," TABINDEX=",this.$4l(),(isc.Browser.isMoz?" STYLE='-moz-user-focus:"+(this.$4l()>0?"normal;'":"ignore;'"):null),">")},getInnerHTML:function(_0){var _1=isc.SB.create(),_2=this.form.getID(),_3=this.getAnchorTitle(),_4=this.getItemID();var _5=this.getInnerWidth(),_6=this.getInnerHeight(),_7=this.getTotalIconsWidth();_5=_5-_7-20;_1.append("<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0><TR>","<TD WIDTH=20>",this.getElementHTML(),"</TD>");if(this.showLabel){if(isc.Browser.isSafari&&!this.disabled){_3=isc.SB.concat("<A HREF='javascript:void ",_4,".boxTitleClick()' "," ONMOUSEOVER='window.status = \"",this.prompt,"\"; return true'"," ONMOUSEOUT='window.status = \"\"; return true'"," CLASS=",this.elementClassName," title=\"",this.prompt,"\"",">",_3,"</A>")}
_1.append("<TD CLASS=",this.cellClassName," ALIGN=LEFT",(_5!=null?" WIDTH="+_5:null),(_6!=null?" HEIGHT="+_6:null),">",_3,"</TD>")}
_1.append("<TD STYLE='white-space:nowrap;' WIDTH=",_7,">",this.getIconsHTML(),"</TD></TR></TABLE>");return _1.toString()},getTitleHTML:function(){return""},getAnchorTitle:function(){return this.Super("getTitleHTML",arguments)},setElementValue:function(_0){var _1=this.getElement();if(!_1)return null;return _1.checked=(_0&&_0!="false")},getElementValue:function(){var _0=this.getElement();if(!_0)return null;return(_0.checked==true)},boxTitleClick:function(){var _0=this.getElement();if(_0)_0.checked=!_0.checked;this.form.elementChanged(this.getItemID())}});isc.ClassFactory.defineClass("HeaderItem","FormItem");isc.HeaderItem.addProperties({shouldSaveValue:false,defaultValue:"Header",height:20,showTitle:false,cellClassName:"headerItem",colSpan:"*",startRow:true,endRow:true});isc.ClassFactory.defineClass("GroupItem","HeaderItem");isc.GroupItem.addProperties({defaultValue:"Group Header",groupVisible:true,$5u:true});isc.GroupItem.addMethods({cellClick:function(){if(this.$5u)this.hideGroup();else this.showGroup()},showGroup:function(){for(var i=0;i<this.itemIds.length;i++){var _0=this.form.getItem(this.itemIds[i]);_0.show()}
this.$5u=true;this.form.$2a=true},hideGroup:function(){for(var i=0;i<this.itemIds.length;i++){var _0=this.form.getItem(this.itemIds[i]);_0.hide()}
this.$5u=false;this.form.$2a=true}});isc.ClassFactory.defineClass("HiddenItem","FormItem");isc.HiddenItem.addProperties({showTitle:false,width:0,height:0,colSpan:0,rowSpan:0,showIcons:false,$3b:true});isc.HiddenItem.addMethods({$kv:function(){return false},getElementHTML:function(_0){var _1=isc.StringBuffer.concat("<INPUT ID='",this.getDataElementId(),"' TYPE=HIDDEN NAME=",this.getElementName(),">");return _1.toString()},getRowSpan:function(){return 0},getColSpan:function(){return 0},shouldShowTitle:function(){return false},getErrorHTML:function(_0){this.logError("Error in hidden field '"+this.getFieldName()+"':\r  "+_0);return null},getHintHTML:function(){return""},isStartRow:function(){return false},isEndRow:function(){return false}});isc.ClassFactory.defineClass("StaticTextItem","FormItem");isc.StaticTextItem.addProperties({height:null,width:null,wrap:true,cellClassName:"staticTextItem",outputAsHTML:false});isc.StaticTextItem.addMethods({getElementHTML:function(_0){var _1=this.mapValueToDisplay(_0);if(_1!=null&&_1.toLocaleString)_1=_1.toLocaleString();return _1},getInnerHTML:function(_0){var _1=isc.SB.create(),_2,_3;if(this.$1z==null){_2=isc.isA.Number(this.width)?this.width-this.getTotalIconsWidth():null;_3=isc.isA.Number(this.height)?this.height:null}else{if(this.width!=null)_2=this.$1z[0]-this.getTotalIconsWidth();if(this.height!=null)_3=this.$1z[1]}
var _4=_2!=null?"width:"+_2+"px;":"",_5=_3!=null?"height:"+_3+"px;":"",_6="white-space:"+(this.wrap?"normal;":"nowrap;");_1.append("<TABLE ID='",this.$2s(),"' CELLSPACING=0 CELLPADDING=0 BORDER=0><TR><TD CLASS=",this.cellClassName,(this.align!=null?" ALIGN="+this.align:null)," STYLE='",_6,_4,_5,"'>",this.$5v(_2,_3,_0),"</TD><TD STYLE='white-space:nowrap;' WIDTH=",this.getTotalIconsWidth(),">",this.getIconsHTML(),"</TD></TR></TABLE>")
return _1.toString()},$5v:function(_0,_1,_2){var _3=this.getElementHTML(_2),_4=((isc.Browser.isIE&&!this.wrap)||this.shouldClip)&&(_0!=null||_1!=null),_5;if(!_4)_5=_3;else{var _6="white-space:"+(this.wrap?"normal;":"nowrap;");if(_0)_0="width:"+_0+"px;";if(_1)_1="height:"+_1+"px;";_5=isc.StringBuffer.concat("<DIV style='overflow:hidden;",_6,_0,_1,"'>",_3,"</DIV>")}
return _5},$2s:function(){if(this.$2t==null)this.$2t=this.getID()+"$wv";return this.$2t},$2v:function(){return isc.Canvas.getElementById(this.$2s())},mapValueToDisplay:function(_0){if(isc.isA.String(_0)&&(this.outputAsHTML||this.asHTML)){return _0.asHTML()}else if(this.valueMap){return this.$36(_0)}else{if(_0==null)return"";return _0}},setValue:function(_0){var _1=this.getValue();this.Super("setValue",arguments);if(_1!=this.getValue())this.redraw()},getLeft:function(){var _0=this.$2v();if(_0==null){var _1="getLeft() Unable to determine position for "+(this.name==null?"this item ":this.name)+". "+"Position cannot be determined before the element is drawn - returning zero.";this.logWarn(_1);return 0}
return this.$40(_0)},getTop:function(){var _0=this.$2v();if(_0==null){var _1="getTop() Unable to determine position for "+(this.name==null?"this item ":this.name)+". "+"Position cannot be determined before the element is drawn - returning zero.";this.logWarn(_1);return 0}
return this.$41(_0)}});isc.ClassFactory.defineClass("PasswordItem","TextItem");isc.PasswordItem.addProperties({$44:"PASSWORD"});isc.ClassFactory.defineClass("RadioGroupItem","ContainerItem");isc.RadioGroupItem.addProperties({itemHeight:20,vertical:true,prompt:null,itemPrompt:"Select value *"});isc.RadioGroupItem.addMethods({setItems:function(){var _0=this.getValueMap();if(!this.itemCache)this.itemCache={};var _1=this.items=[];if(isc.isAn.Array(_0)){for(var i=0;i<_0.length;i++){var _2=_0[i];_1.add(this.$5w(_2,_2))}}else{for(var _2 in _0){var _3=_0[_2];_1.add(this.$5w(_3,_2))}}
return this.Super("setItems",[_1])},$5w:function(_0,_1){var _2=this.itemCache[_1+"|"+_0];if(!_2){var _3=new RegExp("\\*","g"),_4=this.itemPrompt.replace(_3,_0),_5={type:"radio",name:_1,value:_1,getElementName:function(){return this.parentItem.getElementName()},title:_0,prompt:_4,height:this.itemHeight,$1s:this.vertical,updateValue:function(){this.parentItem.updatePreviousSelection(this.value);return this.Super("updateValue",arguments)},shouldSaveValue:false};_2=this.itemCache[_1+"|"+_0]=isc.FormItemFactory.makeItem(_5)}
return _2},getInnerHTML:function(_0){this.setItems();return this.Super("getInnerHTML",arguments)},setValue:function(_0){if(_0==null||this[_0]==null)
_0=this.getDefaultValue();if(this[_0]!=null){this[_0].setValue(_0);if(this._value!=null&&this[this._value]!=null)this[this._value]._value=null}
else if(this._value!=null&&this[this._value]!=null)this[this._value].setValue(null);this.saveValue(_0)},updatePreviousSelection:function(_0){var _1=this.getValue();if(_1==null||_0==_1||this[_1]==null)return;this[_1].updateValue()},updateValue:function(){var _0;for(var i=0;i<this.items.length;i++){_0=this.items[i].getValue();if(_0!=null)break}
if(_0==this._value)return;if(this.handleChange(_0,this._value)==false)return;this.saveValue(_0)},setValueMap:function(_0){this.Super("setValueMap",arguments);this.redraw()},getHeight:function(){var _0=this.getValueMap(),_1=0;if(isc.isAn.Array(_0)){_1=_0.length}else{for(var _2 in _0){_1++}}
return _1*this.itemHeight}});isc.ClassFactory.defineClass("RadioItem","CheckboxItem");isc.RadioItem.addProperties({prompt:"Select this value",$44:"RADIO",value:true,defaultValue:null});isc.RadioItem.addMethods({setElementValue:function(_0){var _1=this.getElement();if(!_1)return null;return _1.checked=(this.value==_0)},getElementValue:function(){var _0=this.getElement(),_1=this.value,_2=this.unselectedValue;if(!_0)return _2;return(_0.checked?_1:_2)},boxTitleClick:function(){var _0=this.getElement();if(_0&&!_0.checked){_0.checked=true;this.form.elementChanged(this.getItemID())}},mapValueToDisplay:function(_0){return _0},mapDisplayToValue:function(_0){return _0}});isc.ClassFactory.defineClass("ResetItem","ButtonItem");isc.ResetItem.addProperties({$44:"RESET"});isc.ClassFactory.defineClass("DateItem","ContainerItem");isc.DateItem.addClassProperties({mapCache:{},DB_FIELD:{name:"dbField",type:"hidden",shouldSaveValue:false},TEXT_FIELD:{name:"dateTextField",type:"text",changeOnBlur:true,changeOnKeypress:false,saveValue:function(){this.Super("saveValue",arguments);this.parentItem.updateValue()},shouldSaveValue:false},DAY_SELECTOR:{name:"daySelector",prompt:"Choose a day",type:"select",valueMap:"this.parentItem.getDayOptions()",shouldSaveValue:false,saveValue:function(){this.Super("saveValue",arguments);this.parentItem.updateValue()},cssText:"padding-left:3px;",width:45},MONTH_SELECTOR:{name:"monthSelector",prompt:"Choose a month",type:"select",valueMap:"this.parentItem.getMonthOptions()",shouldSaveValue:false,saveValue:function(){this.Super("saveValue",arguments);this.parentItem.updateValue()},width:55},YEAR_SELECTOR:{name:"yearSelector",prompt:"Choose a year",type:"select",valueMap:"this.parentItem.getYearOptions()",shouldSaveValue:false,saveValue:function(){this.Super("saveValue",arguments);this.parentItem.updateValue()},cssText:"padding-left:3px;",width:60},PICKER_ICON:{width:20,height:20,src:"[SKIN]/DynamicForm/DatePicker_icon.gif",disabledSrc:"[SKIN]/DynamicForm/DatePicker_icon_disabled.gif",prompt:"Show Date Chooser",click:"item.showDateChooser()",showOver:false},DAY_MONTH_YEAR:"DMY",MONTH_DAY_YEAR:"MDY",YEAR_MONTH_DAY:"YMD",DEFAULT_START_DATE:new Date(1990,0,1),DEFAULT_END_DATE:new Date(2010,11,31),DEFAULT_CENTURY_THRESHOLD:10,DEFAULT_DATE_FORMATTER:"toShortDate",chooserWidth:150,chooserHeight:171});isc.DateItem.addProperties({height:isc.Browser.isIE?23:20,cellPadding:0,useTextField:false,dateSelectorFormat:isc.DateItem.MONTH_DAY_YEAR,showPickButton:(!isc.Browser.isNav4),showChooserInNewWindow:(isc.Browser.isIE&&isc.Browser.minorVersion<5.5),startDate:isc.DateItem.DEFAULT_START_DATE,endDate:isc.DateItem.DEFAULT_END_DATE,centuryThreshold:isc.DateItem.DEFAULT_CENTURY_THRESHOLD,dateFormatter:isc.DateItem.DEFAULT_DATE_FORMATTER});isc.DateItem.addMethods({$3c:function(){if(this.icons==null)this.icons=[];if(this.showPickButton){this.icons=[isc.addProperties({},isc.DateItem.PICKER_ICON)].concat(this.icons)}
this.Super("$3c",arguments)},setItems:function(_0){var _1=isc.DateItem,_2=this.dateSelectorFormat;if(_0!=null&&_0.length!=0){this.logWarn("setItems() called for dateItem with itemList:"+_0+" - ignoring, and making use of default date fields")}
_0=this.items=[_1.DB_FIELD];if(this.useTextField){_0.add(_1.TEXT_FIELD)}else{for(var i=0;i<_2.length;i++){var _3=_2.charAt(i);if(_3=="D")_0.add(_1.DAY_SELECTOR);else if(_3=="M")_0.add(_1.MONTH_SELECTOR);else if(_3=="Y")_0.add(_1.YEAR_SELECTOR)}}
this.Super("setItems",[_0])},setValue:function(_0){if(_0==null)_0=this.getDefaultValue();_0=this.parseDate(_0);this.saveValue(_0);if(this.useTextField&&(_0==null||isc.is.emptyString(_0))){this.dateTextField.setValue("");this.dbField.setValue(null);return true}
if(!isc.isA.Date(_0)){this.logInfo("dateItem.setValue(): invalid date passed: '"+_0+"'.  Not updating value.");return false}
this.$5x=true;if(this.dateTextField){var _1=_0.toString(this.dateFormatter);this.dateTextField.setValue(_1)}
if(this.daySelector)this.daySelector.setValue(_0.getDate());if(this.monthSelector)this.monthSelector.setValue(_0.getMonth());if(this.yearSelector)this.yearSelector.setValue(_0.getFullYear());delete this.$5x;this.dbField.setValue(_0.toDBDate());return true},getValue:function(){var _0;if(this.useTextField){var _0=this.dateTextField.getValue();if(isc.isA.emptyString(_0))_0=null;else _0=this.parseDate(this.dateTextField.getValue())}else{_0=(this._value||this.getDefaultValue());var _1,_2,_3;if(this.daySelector){_1=this.daySelector.getValue();_0.setDate(_1)}
if(this.monthSelector){_2=this.monthSelector.getValue();_0.setMonth(_2)}
if(this.yearSelector){_3=this.yearSelector.getValue()
_0.setYear(_3)}}
return _0},updateValue:function(){if(this.$5x)return;this.$5x=true;var _0;if(this.useTextField){this.dateTextField.updateValue();var _1=this.dateTextField.getValue();if(_1==""||_1==null)_0=null;else{_0=this.parseDate(_1);if(!isc.isA.Date(_0)){_0=(this._value||this.getDefaultValue())}
var _2=(_0!=null?_0.toString(this.dateFormatter):"")
if(_1!=_2){this.dateTextField.setValue(_2)}}}else{_0=(this._value||this.getDefaultValue());_0=_0.duplicate();var _3,_4,_5;if(this.yearSelector){_5=this.yearSelector.getValue()
_0.setYear(_5)}
if(this.monthSelector){_4=this.monthSelector.getValue();if(this.daySelector)_0.setDate(1);_0.setMonth(_4)}
if(this.daySelector){_3=this.daySelector.getValue();_0.setDate(_3)}
if(_4!=_0.getMonth()){_3=_3-_0.getDate();if(this.daySelector)this.daySelector.setValue(_3);_0.setMonth(_4);_0.setDate(_3)}}
if(_0==null)this.dbField.setValue(null);else{this.dbField.setValue(_0.toDBDate())}
delete this.$5x;if(this.handleChange(_0,this._value)==false)return;this.saveValue(_0)},resetValue:function(){var _0=this.form.$2d[this.getFieldName()];if(isc.isA.Date(_0)&&isc.isA.Date(this._value))
_0=this._value.setTime(_0.getTime());this.setValue(_0)},setWidth:function(_0){this.Super("setWidth",arguments);if(this.dateTextField){if(isc.isA.Number(this.width)){this.dateTextField.setWidth(this.width-
(isc.DateItem.PICKER_ICON.width+this.cellPadding))}}else{this.tableWidth=100}},getDefaultValue:function(){var _0=this.Super("getDefaultValue");if(!isc.isA.Date(_0))_0=this.parseDate(_0);if(!isc.isA.Date(_0)&&!this.useTextField)_0=new Date();return _0},getStartDate:function(){var _0=this.parseDate(this.startDate);if(!isc.isA.Date(_0)){this.logWarn("startDate was not in valid date format - using default start date");_0=isc.DateItem.DEFAULT_START_DATE}
return _0},getEndDate:function(){var _0=this.parseDate(this.endDate);if(!isc.isA.Date(_0)){this.logWarn("endDate was not in valid date format - using default end date");_0=isc.DateItem.DEFAULT_END_DATE}
return _0},focusInItem:function(){if(!this.isVisible())return;if(this.useTextField){if(this.dateTextField)this.dateTextField.focusInItem()}else{var _0=this.dateSelectorFormat,_1=_0.charAt(0);if(_1=="D"&&this.daySelector)this.daySelector.focusInItem();if(_1=="M"&&this.monthSelector)this.monthSelector.focusInItem();if(_1=="Y"&&this.yearSelector)this.yearSelector.focusInItem()}},getDayOptions:function(){var _0=this.getStartDate(),_1=this.getEndDate();var _2=1,_3=31;if(_0.getYear()==_1.getYear()&&_0.getMonth()==_1.getMonth()){_2=_0.getDate()
_3=_1.getDate()}
var _4="day."+_2+"."+_3;if(isc.DateItem.mapCache[_4])return isc.DateItem.mapCache[_4];var _5=isc.DateItem.mapCache[_4]=[];for(var i=_2;i<=_3;i++)_5[i-_2]=i;return _5},getMonthOptions:function(){var _0=this.getStartDate(),_1=this.getEndDate();var _2=0,_3=11;if(_0.getYear()==_1.getYear()){_2=_0.getMonth()
_3=_1.getMonth()}
var _4="month."+_2+"."+_3;if(isc.DateItem.mapCache[_4])return isc.DateItem.mapCache[_4];var _5=isc.DateItem.mapCache[_4]={};var _6=new Date().getShortMonthNames();for(;_2<=_3;_2++){_5[_2]=_6[_2]}
return _5},getYearOptions:function(){var _0=this.getStartDate().getFullYear(),_1=this.getEndDate().getFullYear();var _2="year."+_0+"."+_1;if(isc.DateItem.mapCache[_2])return isc.DateItem.mapCache[_2];var _3=isc.DateItem.mapCache[_2]=[];for(var i=_0;i<=_1;i++){_3[i-_0]=i}
return _3},parseDate:function(_0,_1){if(_1==null)_1=this.dateFormatter;return Date.parseDate(_0,_1,this.useTextField?this.centuryThreshold:null)},showDateChooser:function(){var _0=this.getValue();if(!isc.isA.Date(_0))_0=new Date();var _1={chosenDate:_0,month:_0.getMonth(),year:_0.getFullYear(),startYear:this.getStartDate().getFullYear(),endYear:this.getEndDate().getFullYear(),autoClose:true,callingForm:this.form,callingFormItem:this};if(this.showChooserInNewWindow)return this.showDateChooserWindow(_1);return this.showDateChooserWidget(_1)},getDateChooserPosition:function(){var _0=this.getPageLeft(),_1=this.getPageTop(),_2=isc.DateItem.chooserWidth+3,_3=isc.DateItem.chooserHeight+3;_0+=(this.getVisibleWidth()-(isc.DateItem.PICKER_ICON.width/ 2))-
(_2/ 2);_1+=(isc.DateItem.PICKER_ICON.height/ 2)-(_3/ 2);return isc.Canvas.$qk(_2,_3,{left:_0,top:_1})},showDateChooserWindow:function(_0){var _1=this.getDateChooserPostion(),_2=_1[0],_3=_1[1];window.isc.$5y=_0;var _4=window.open(isc.Page.getURL("[HELPERS]/date_chooser.html"),"datechooser","WIDTH="+isc.DateItem.chooserWidth+","+"HEIGHT="+isc.DateItem.chooserHeight+","+"SCREENX="+_2+","+"SCREENY="+_3+","+"SCROLLBARS=no");if(!_4)return;if(isc.Browser.isIE)_4.moveTo(_2,_3);_4.focus()},showDateChooserWidget:function(_0){var _1=this.getDateChooserPosition(),_2=_1[0],_3=_1[1];if(!this.$5z){this.$5z=isc.DateChooser.create({border:"1px solid black;",left:_2,top:_3,width:isc.DateItem.chooserWidth,height:isc.DateItem.chooserHeight,autoDraw:false,showCancelButton:true},_0);this.$5z.observe(this.containerWidget,"hide","observer.clear()");this.$5z.observe(this.form,"destroy","observer.destroy()")}else{this.$5z.addProperties(_0);this.$5z.moveTo(_2,_3)}
this.$5z.show();this.$5z.focus()},saveChosenDate:function(_0,_1,_2){this.$5x=true;if(this.useTextField){var _3=new Date(_0,_1,_2);this.dateTextField.setValue(_3.toString(this.dateFormatter))}else{if(this.yearSelector)this.yearSelector.setValue(_0);if(this.monthSelector)this.monthSelector.setValue(_1);if(this.daySelector)this.daySelector.setValue(_2)}
this.$5x=false;this.updateValue()}});isc.ClassFactory.defineClass("SpacerItem","FormItem");isc.SpacerItem.addProperties({shouldSaveValue:false,showTitle:false,width:20,height:20,showIcons:false});isc.SpacerItem.addMethods({getElementHTML:function(_0){return isc.Canvas.spacerHTML(this.width,this.height)},shouldShowTitle:function(){return false},getHintHTML:function(){return""}});isc.ClassFactory.defineClass("RowSpacerItem","SpacerItem");isc.RowSpacerItem.addProperties({showTitle:false,colSpan:"*",startRow:true,endRow:true,width:20,height:20});isc.ClassFactory.defineClass("SubmitItem","ButtonItem");isc.SubmitItem.addProperties({$44:"SUBMIT"});isc.ClassFactory.defineClass("TextAreaItem","FormItem");isc.TextAreaItem.addClassProperties({OFF:"OFF",SOFT:"SOFT",VIRTUAL:"SOFT",ON:"HARD",HARD:"HARD",PHYSICAL:"HARD"});isc.TextAreaItem.addProperties({wrap:isc.TextAreaItem.VIRTUAL,width:150,height:100,elementClassName:"textItem",$45:true,redrawOnShowIcon:false,$3b:true,$46:null,lineBreakValue:"\n",iconVAlign:isc.Canvas.TOP});isc.TextAreaItem.addMethods({getElementHTML:function(_0){var _1=this.form,_2=_1.getID(),_3=this.getItemID(),_4="'return "+_3+".handleKeyEvent(event)'",_5=isc.StringBuffer.concat("<SPAN CLASS=",this.elementClassName,">","<TEXTAREA NAME=",this.getElementName()," ID=",this.getDataElementId(),this.getElementStyleHTML(),(this.disabled?" DISABLED ":""),(this.$4e()!="native"?" AUTOCOMPLETE=OFF ":"")," WRAP=",this.wrap," ONBLUR='if(!window.isc||!window.",_3,")return;isc.EH.captureKeyEvents();return ",_3,".$34(this,",_3,");'",(isc.Browser.isIE?" ONMOUSEDOWN='"+_3+".$4q()'":null)," TABINDEX=",this.$4l(),(this.showTitle==false&&this.accessKey!=null?" ACCESSKEY="+this.accessKey:"")," ONFOCUS='isc.EH.releaseKeyEvents();return ",_3,".$33(this,",_3,")'"," ONKEYDOWN=",_4," ONKEYPRESS=",_4," ONKEYUP=",_4,"></TEXTAREA></SPAN>");return _5.toString()},$34:function(_0,_1){var _2=this.Super("$34",arguments);if(this.changeOnBlur)this.form.elementChanged(this);else{var _3=this.getElementValue();if(this.mapDisplayToValue){_3=this.mapDisplayToValue(_3)}
if(this._value!=_3)this.form.elementChanged(this)}
return _2},getElementStyleHTML:(isc.Browser.isNav?function(){}:function(){var _0=this.getInnerWidth(),_1=this.getInnerHeight();_0-=this.getTotalIconsWidth();return isc.StringBuffer.concat(" CLASS="+this.getElementClassName(),(isc.Browser.isMoz&&this.wrap.toLowerCase()!="off"?" ROWS=10 COLS=10":"")," STYLE='","margin:0px;",(isc.isA.Number(_0)?"WIDTH:"+_0+"px;":""),(isc.isA.Number(_1)?"HEIGHT:"+_1+"px;":""),(this.textAlign?"text-align:"+this.textAlign+";":""),(isc.Browser.isMoz?"-moz-user-focus:"+(this.$4l()>0?"normal;":"ignore;"):""),"' ")}),mapValueToDisplay:function(_0){var _1=this.$36(_0);if(_1==null)return"";return _1},mapDisplayToValue:function(_0){var _1=this.$37(_0);if(isc.is.emptyString(_1))_1=this.$46;return _1},setValue:function(_0){var _1;if(_0!==_1&&(_0==null||isc.is.emptyString(_0)))
this.$46=_0;delete this.$50;return this.Super("setValue",arguments)},updateValue:function(){this.$50=true;return this.Super("updateValue",arguments)},getValue:function(){var _0=this.Super("getValue",arguments);if(this.$50&&isc.isA.String(_0)){if(!this.$51)
this.$51=new RegExp("(\\r\\n|[\\r\\n])","g");_0=""+_0;_0=_0.replace(this.$51,this.lineBreakValue)}
return _0},getScrollHeight:function(){var _0=this.getElement();if(_0==null)return this.getHeight();return _0.scrollHeight},getScrollWidth:function(){var _0=this.getElement();if(_0==null)return this.getWidth();return _0.scrollWidth},$52:function(){var _0=this.getElement();return _0&&_0.scrollWidth>_0.clientWidth},$53:function(){var _0=this.getElement();return _0&&_0.scrollHeight>_0.clientHeight},getScrollTop:function(){var _0=this.getElement();if(_0==null)return 0;return _0.scrollTop},getScrollLeft:function(){var _0=this.getElement();if(_0==null)return 0;return _0.scrollLeft},scrollTo:function(_0,_1){var _2=this.getElement();if(_2==null)return;if(_0!=null)_2.scrollLeft=_0;if(_1!=null)_2.scrollTop=_1},scrollToTop:function(){this.scrollTo(null,0)},scrollToBottom:function(){var _0=this.getScrollHeight()-this.getHeight();if(_0>=0){if(this.$52())_0+=this.form.getScrollbarSize();this.scrollTo(null,_0)}}});isc.ClassFactory.defineClass("TimeItem","TextItem");isc.TimeItem.addClassProperties({DEFAULT_TIME:"00:00:00"});isc.TimeItem.addProperties({changeOnBlur:true,changeOnKeypress:false,width:100,showSeconds:false,show24HourTime:true});isc.TimeItem.addMethods({init:function(){this.Super("init",arguments);if(!this.timeFormatLabel){this.timeFormatLabel="HH:MM"+(this.showSeconds?":SS":"")+(this.show24HourTime?"":" [AM|PM]")}
if(!this.hint)this.hint=this.timeFormatLabel},getDefaultValue:function(){if(!isc.isA.Time(this.defaultValue)){if(this.defaultValue)this.defaultValue=this.parseTime(this.defaultValue);if(!isc.isA.Time(this.defaultValue))this.defaultValue=this.parseTime(isc.TimeItem.DEFAULT_TIME)}
return this.defaultValue},mapValueToDisplay:function(_0){if(!isc.isA.Time(_0)){var _1=this.parseTime(_0);if(!_1){this.logDebug("timeItem.mapValueToDisplay('"+_0+"'): couldn't parse a time from string/other value passed in.");return _0}
_0=_1}
return _0.toString()},mapDisplayToValue:function(_0){_0=this.parseTime(_0);if(!isc.isA.Time(_0))this.logDebug("timeItem.mapDisplayToValue('"+_0+"'): couldn't parse a time value.");return _0},parseTime:function(_0){var _1=isc.Time.parseTime(_0,null,this.show24HourTime);if(!_1){_1=this.defaultValue}
if(_1&&isc.isA.Time(_1)){isc.addProperties(_1,{showSeconds:this.showSeconds,show24HourTime:this.show24HourTime,formatter:this.timeFormatter});_1.setFormatter(_1.formatter)}
return _1},updateValue:function(){this.Super("updateValue",arguments);this.setElementValue(this.mapValueToDisplay(this.getValue()))}});isc.ClassFactory.defineClass("ToolbarItem","ContainerItem");isc.ToolbarItem.addProperties({shouldSaveValue:false,showTitle:false,height:24,separatorWidth:20,startRow:true,endRow:true,colSpan:"*",tableWidth:null});isc.ToolbarItem.addMethods({setItems:function(_0){this.items=(_0?_0:(this.buttons?this.buttons:(this.items?this.items:[])));delete this.buttons;for(var i=0;i<this.items.length;i++){var _1=this.items[i];if(!_1.type)_1.type="button"}
this.Super("setItems",null)}});isc.ClassFactory.defineClass("UploadItem","TextItem");isc.UploadItem.addProperties({$44:"FILE"});isc.UploadItem.addMethods({getElementStyleHTML:function(){if(isc.Browser.isMoz){this.width=null;this.$1z=null}
return this.Super("getElementStyleHTML",arguments)},setElementValue:function(_0){this.logInfo("Attempting to set the value for an upload form item. This is disallowed "+"for security reasons - returning the current value of the form item");return this.getElementValue()}});if(isc.Browser.isSafari){isc.UploadItem.addProperties({colSpan:"*",startRow:true,endRow:true,width:300})}
isc.ClassFactory.defineClass("ComboBoxItem","TextItem");isc.ClassFactory.mixInInterface("ComboBoxItem","PickList");isc.ComboBoxItem.addProperties({pickButtonWidth:15,pickButtonPadding:0,pickButtonSrc:"[SKIN]/DynamicForm/ComboBoxItem_PickButton_icon.gif",pickButtonOverSrc:"[SKIN]/DynamicForm/ComboBoxItem_PickButton_icon_over.gif",pickButtonDisabledSrc:"[SKIN]/DynamicForm/ComboBoxItem_PickButton_icon_disabled.gif",modalPickList:false,showPickListOnKeypress:true});isc.ComboBoxItem.addMethods({$3c:function(){if(this.icons==null)this.icons=[];var _0={};_0.height=this.getHeight();_0.width=this.pickButtonWidth;_0.canFocus=false;_0.showOver=true;_0.hspace=0;_0.disabledSrc=this.pickButtonDisabledSrc;_0.src=this.pickButtonSrc;_0.overSrc=this.pickButtonOverSrc;_0.canFocus=false;_0.click=function(_1,_2){_2.focusInItem();_2.pickButtonClick()}
this.icons.addAt(_0,0);this.Super("$3c",arguments)},$3s:function(_0){if(_0==this.icons[0])return-1},pickListShown:function(){if(this.pickList.isVisible()){this.$54=this.ns.Page.setEvent("click",this,null,"$55")}},$55:function(){var _0=this.pickList;if(!_0||!_0.isVisible())return;var _1=isc.EH.lastEvent.target;if(!_0.isAncestorOf(_1))_0.hide()},pickListHidden:function(){if(this.$54)this.ns.Page.clearEvent("click",this.$54);delete this.$54},handleKeyPress:function(){if(!this.hasFocus)return this.Super("handleKeyPress",arguments);var _0=isc.EH.lastEvent.keyName,_1=this.getValue(),_2=(!_1||_1==isc.emptyString),_3=this.pickList,_4=(_3?_3.isVisible():false);if(_0=="Arrow_Down"&&isc.EH.altKeyDown()&&!_4){if(_2)this.$56=true;this.showPickList();return false}
if(_4){if(_0=="Arrow_Down"||_0=="Arrow_Up"||_0=="Enter"||_0=="Escape")
{_3.bodyKeyPress(isc.EH.lastEvent);return}}
this.Super("handleKeyPress",arguments);var _5=this.getValue();if(_5==_1)return;_2=(!_5||_5==isc.emptyString);if(!_2)delete this.$56;if(_2&&!this.$56){if(_4)_3.hide()}else if(this.showPickListOnKeypress||_4){this.showPickList(true)}},selectDefaultItem:function(){if(this.pickList==null)return;var _0=this.pickList.getRecord(0),_1=this.pickList.selection;_1.selectSingle(_0)},getPickListFilterCriteria:function(){var _0=this.getValue(),_1={};_1[this.getValueFieldName()]=_0;return _1},filterClientPickListData:function(_0){var _1=this.getElementValue()||"";_1=_1.toLowerCase();var _2=this.getValueFieldName(),_3=[];for(var i=0;i<_0.length;i++){var _4=_0[i][_2];_4=this.mapValueToDisplay(_4);if(!isc.isA.String(_4))continue;_4=_4.toLowerCase();if((_1.length==0||_4.startsWith(_1)))
{_3.add(_0[i])}}
return _3},elementBlur:function(){this.Super("elementBlur",arguments);var _0=this.pickList,_1=isc.EH,_2=_1.lastEvent;if(!_0||!_0.isVisible()||((_2.eventType==_1.MOUSE_DOWN||_2.eventType==_1.CLICK)&&_0.isAncestorOf(_2.target))||(isc.Browser.isIE&&document.activeElement==this.getDataElement()))
return;_0.hide()},pickButtonClick:function(){this.showPickList()},pickValue:function(_0){this.setElementValue(this.mapValueToDisplay(_0));this.updateValue()},setValueMap:function(){this.Super("setValueMap",arguments);if(this.pickList){this.pickList.hide();delete this.pickList.formItem
this.setUpPickList(this.pickList.isVisible())}}});isc.ClassFactory.defineClass("CanvasItem","FormItem");isc.CanvasItem.addProperties({width:"*",height:null,shouldSaveValue:false});isc.CanvasItem.addMethods({init:function(){this.Super("init",arguments);this.$57()},$57:function(){if(isc.isA.String(this.canvas))this.canvas=window[this.canvas]
if(!isc.isAn.Object(this.canvas)){this.logWarn("CanvasItem: "+(this.getFieldName()?this.getFieldName():this.getID())+" defined with no canvas property - creating a default "+"canvas for this item.");this.canvas={}}
this.canvas.$mn=false;this.canvas.canvasItem=this;if(!isc.isA.Canvas(this.canvas)){this.canvas.autoDraw=false;this.canvas=isc.Canvas.create(this.canvas)}
this.$58();this.containerWidget.addChild(this.canvas);this.canvas.addMethods({resized:function(){this.Super("resized",arguments);if(!this.dragResizing())this.canvasItem.canvasResized()},dragResized:function(){this.canvasItem.canvasResized();return this.Super("dragResized",arguments)}});this.canvas.setEnabled(!this.disabled)},redraw:function(_0){if(!_0&&this.canvas.isDrawn())this.canvas.redraw();this.Super("redraw",arguments)},destroy:function(){if(this.canvas)delete this.canvas.canvasItem;return this.Super("destroy",arguments)},placeCanvas:function(){if(this.visible==false){this.canvas.hide();return}else if(this.canvas.visibility==isc.Canvas.HIDDEN){this.canvas.show()}
var _0=this.containerWidget.getClipHandle(),_1=isc.Canvas.getElementById(this.getID()+"$59"),_2=isc.Canvas.$ph(_1,_0),_3=isc.Canvas.$pi(_1,_0);this.canvas.moveTo(_2,_3)},$58:function(){var _0=this.canvas,_1=_0.$m4,_2=_0.$m5;if(_2!=null){this.logInfo("canvasItem:"+this.getFieldName()+", using height specified on Canvas '"+_0.getID()+"' as "+_2,"canvasItemSizing");this.height=_2}},getElementHTML:function(_0){var _1=this.getInnerWidth(),_2=this.getInnerHeight(),_3=this.canvas;if(_3.$m4!=null)_1=null;if(!isc.isA.Number(_1))_1=null;if(!isc.isA.Number(_2))_2=null;_3.resizeTo(_1,_2);this.logDebug("this.$1z: "+this.$1z+", Resized Canvas to: "+[_1,_2],"canvasItemSizing");var _4=this.canvas.getVisibleWidth(),_5=this.canvas.getVisibleHeight();this.logDebug("visible size of embedded Canvas: "+[_4,_5],"canvasItemSizing");return"<SPAN style='padding:0px;margin:0px;' ID='"+this.getID()+"$59'>"+isc.Canvas.spacerHTML(_4,_5)+"</SPAN>"},getHeight:function(){return this.canvas.getVisibleHeight()},getWidth:function(){var _0=this.canvas;if(_0.$m4!=null)return _0.getVisibleWidth();return this.width},canvasResized:function(){var _0=this.canvas,_1=_0.getWidth(),_2=_0.getHeight();this.logDebug("canvas resized: new specified sizes: "+[_1,_2],"canvasItemSizing");if(this.width!=_2)this.setWidth(_1);if(this.height!=_2)this.setHeight(_2)},setEnabled:function(_0){this.Super("setEnabled",arguments);this.canvas.setEnabled(_0)}});isc.ClassFactory.defineClass("SliderItem","CanvasItem");isc.SliderItem.addProperties({shouldSaveValue:true,vertical:false,sliderDefaults:{autoDraw:false,showTitle:false,valueChanged:function(){if(this.canvasItem)this.canvasItem.sliderChange()}}});isc.SliderItem.addMethods({init:function(){this.Super("init",arguments);if(this.defaultValue!=null)this.saveValue(this.canvas.getValue())},$57:function(){var _0=this.sliderDefaults;var _1=isc.addProperties({},_0,{vertical:this.vertical,minValue:this.minValue,maxValue:this.maxValue,value:this.defaultValue,tabIndex:this.getGlobalTabIndex()});this.canvas=isc.Slider.create(_1);this.Super("$57",arguments)},setValue:function(_0){if(_0==null){var _1=this.getDefaultValue();if(_1!=null)_0=_1}
this.canvas.setValue(_0)},getValue:function(){return this.canvas.getValue()},sliderChange:function(){this.saveValue(this.canvas.getValue())}});isc.ClassFactory.defineClass("PopUpTextAreaItem","StaticTextItem");isc.PopUpTextAreaItem.addProperties({wrap:false,shouldClip:true,popUpOnEnter:false,textAreaWidth:100,textAreaHeight:100,iconOnly:false,popUpIconSrc:"[SKIN]/DynamicForm/PopUpTextAreaEditor_icon.gif",popUpIconWidth:20,popUpIconHeight:20});isc.PopUpTextAreaItem.addMethods({$3c:function(){if(this.icons==null)this.icons=[];var _0={click:this.popUpIconClick,src:this.popUpIconSrc,showOver:false,width:this.popUpIconWidth,height:this.popUpIconHeight};this.icons.addAt(_0,0);this.Super("$3c",arguments)},popUpIconClick:function(_0,_1,_2){_1.showPopUp(true)},showPopUp:function(_0){var _1=this.getValue();if(!this.$yv)this.setupPopUpForm();this.placePopUp();var _2=this.$yv.getItem("textArea");_2.setValue(_1);this.$yv.bringToFront();this.$yv.show();if(_0)this.$yv.focusInItem("textArea");var _3=this.containerWidget},visibilityChanged:function(){if(!this.isVisible())this.$6a()},$6a:function(){var _0=this.$yv;if(!_0||!(_0.isVisible()&&_0.isDrawn()))return;_0.hide()},moved:function(){this.$6b()},$6b:function(){var _0=this.$yv;if(!_0||!(_0.isVisible()&&_0.isDrawn()))return;var _1=this.getTop(),_2=this.getLeft(),_3=this.getWidth(),_4=this.getHeight(),_5=this.containerWidget,_6=_5.getScrollTop(),_7=_5.getScrollLeft(),_8=_5.getViewportWidth(),_9=_5.getViewportHeight();if(_1<_6||(_1+_4)>(_6+_9)||_2<_7||(_2+_3)>(_7+_8))
{_0.hide()}else{this.placePopUp()}},zIndexChanged:function(){var _0=this.$yv;if(!_0||!(_0.isVisible()&&_0.isDrawn()))return;_0.bringToFront()},placePopUp:function(){var _0=this.getTextAreaTop(),_1=this.getTextAreaLeft(),_2=this.getTextAreaWidth(),_3=this.getTextAreaHeight();this.$yv.moveTo(_1,_0);this.$yv.resizeTo(_2,_3);var _4=this.$yv.getItem("textArea");_4.setWidth(_2);_4.setHeight(_3)},setupPopUpForm:function(){if(this.$yv!=null)return;var _0=isc.DynamicForm.create({autoDraw:false,ID:this.getID()+"$yv",_generated:true,cellPadding:0,targetItem:this,values:{textArea:this.getValue()},items:[{name:"textArea",showTitle:false,type:"textArea",selectOnFocus:true,targetItem:this,handleKeyEvent:function(_2){return this.targetItem.handleTextAreaKeyEvent(_2)},blur:function(){this.targetItem.textAreaBlur()}}]});this.$yv=_0;var _1=this.containerWidget;_0.observe(_1,"destroy","observer.hide();observer.destroy()")},hidePopUp:function(){if(this.$yv){this.updateValue();this.$yv.hide()}},destroy:function(){if(this.$yv){this.$yv.destroy();delete this.$yv}
return this.Super("destroy",arguments)},getTextAreaTop:function(){return this.getPageTop()},getTextAreaLeft:function(){return this.getPageLeft()},getTextAreaWidth:function(){return Math.max(this.textAreaWidth,this.getWidth())},getTextAreaHeight:function(){return this.textAreaHeight},mapValueToDisplay:function(){if(this.iconOnly)return"";return this.Super("mapValueToDisplay",arguments)},textAreaBlur:function(){this.hidePopUp()},handleTextAreaKeyEvent:function(_0){},setValue:function(_0){var _1=this.getValue();this.Super("setValue",arguments);_0=this.getValue();if(_1!=_0){this.setElementValue(_0)
if(this.$yv&&this.$yv.isVisible()){this.$yv.setValue("textArea",_0)}}},updateValue:function(){if(this.$yv&&this.$yv.isVisible()&&!this.$yv.$xp){var _0=this.$yv.getItem("textArea");_0.updateValue();var _1=this.$yv.getValue("textArea");if(this.changingValue&&_1==this.$4c)return;this.$4d=true;this.$4c=_1;if(this.handleChange(_1,this._value)==false)return;delete this.$4c;delete this.$4d;this.setElementValue(_1);this.saveValue(_1)}else{return this.Super("updateValue",arguments)}},$6c:function(){var _0=this.$2v();if(_0==null)return;return _0.rows[0].cells[0]},setElementValue:function(_0){if(this.iconOnly)return;var _1=this.$6c();if(!_1)return;var _2,_3;if(this.$1z==null){_2=isc.isA.Number(this.width)?this.width-this.getTotalIconsWidth():null;_3=isc.isA.Number(this.height)?this.height:null}else{if(this.width!=null)_2=this.$1z[0]-this.getTotalIconsWidth();if(this.height!=null)_3=this.$1z[1]}
_1.innerHTML=this.$5v(_2,_3,_0)},focusInItem:function(){if(this.$yv&&this.$yv.isVisible()){this.$yv.focusInItem('textArea')}else{if(this.icons[0])this.focusInIcon(this.icons[0])}},$kv:function(){return true},$l7:function(_0){this.$4m=_0;if(!this.isVisible()||!this.containerWidget.isDrawn())return;this.$4n(_0)}});isc.ClassFactory.defineClass("SearchForm","DynamicForm");isc.SearchForm.addProperties({hiliteRequiredFields:false});isc.ClassFactory.defineClass("AdvancedFilter","SearchForm");isc.AdvancedFilter.addClassProperties({FILTER_ROW:[{type:"staticText",name:"iconHolder",showTitle:false,startRow:true,align:"right",icons:[{src:"[SKIN]/AdvancedFilter/Remove_Row_icon.gif",showOver:false,click:"form.removeRow(item.rowId)",prompt:"Remove Filter Row",showIf:"form.filterRowItems.length > 4"},{src:"[SKIN]/AdvancedFilter/Remove_Row_disabled_icon.gif",showIf:"form.filterRowItems.length <= 4"}]},{type:"select",showTitle:false,width:150,colSpan:2,change:"this.form.updateRowField(this.rowId, value)"},{type:"select",showTitle:false,width:150},{showTitle:false,endRow:true}],ACTION_ROW:[{type:"button",startRow:true,endRow:false,colSpan:1,title:"More...",click:"this.form.addRow();"},{name:"matchType",title:"Match",type:"radioGroup",vertical:false,valueMap:{and:"All",or:"Any"},defaultValue:"and",endRow:false},{type:"button",startRow:false,endRow:false,colSpan:1,title:"  Filter  ",click:"this.form.filter();"},{type:"blurb",startRow:false,defaultValue:"<A HREF='javascript:void 0'>Simple</A>",cellClicked:"this.form.setCurrentMode('simple')",showIf:"form.dualMode"}],SIMPLE_FILTER_ITEMS:[{type:"text",name:"search",title:"Search"},{type:"blurb",name:"blurb",startRow:false,defaultValue:"<A HREF='javascript:void 0'>Advanced</A>",cellClicked:"this.form.setCurrentMode('advanced')"}]});isc.AdvancedFilter.addProperties({numCols:5,colWidths:[50,75,75,150,150],dualMode:false,currentMode:"advanced",dataTypeComparisonOperatorsMap:{string:{exact:"Exact Match",not:"Is Not",substring:"Contains",notSubstring:"Doesn't Contain",begins:"Begins With",ends:"Ends With"},number:{exact:"Equals (=)",substring:"Substring Match",not:"Not Equal (!=)",lessThan:"Less Than (<)",lessThanOrEqual:"Less Than / Equal (<=)",greaterThan:"Greater Than (>)",greaterThanOrEqual:"Greater Than / Equal (>=)"},date:{exact:"Exact Match",not:"Is Not",lessThan:"Before",greaterThanOrEqual:"After"}}});isc.AdvancedFilter.addMethods({initWidget:function(){this.Super(this.$f);this.fields=this.items=null;if(this.dataSource){this.filterFields=this.bindToDataSource(this.filterRowItems)}
this.setCurrentMode(this.currentMode)},setCurrentMode:function(_0){this.currentMode=_0;if(_0=="advanced"&&!this.filterRowItems){this.addRow();return}
this.updateItems()},addRow:function(){var _0=isc.clone(isc.AdvancedFilter.FILTER_ROW),_1=this.getNextRowId();_0[1].valueMap=this.getFilterFieldsValueMap();_0[1].name="field_"+_1;_0[2].name="operations_"+_1;_0[3].name="value_"+_1;for(var i=0;i<_0.length;i++){_0[i].rowId=_1}
if(this.filterRowItems==null)this.filterRowItems=[];this.filterRowItems=this.filterRowItems.concat(_0);this.updateItems()},updateItems:function(_0){if(this.isDrawn()&&_0!=true){return isc.Page.setEvent("idle",this.getID()+".updateItems(true)",isc.Page.FIRE_ONCE)}
if(this.currentMode!="advanced"){this.setItems(isc.AdvancedFilter.SIMPLE_FILTER_ITEMS);return}
if(this.actionRow==null){this.actionRow=isc.clone(isc.AdvancedFilter.ACTION_ROW)}
var _1=this.filterRowItems.concat(this.actionRow);_1.clearProperty("form");this.setItems(_1)},getFilterCriteria:function(){var _0=this.getValues(),_1={};for(var i in _0){if(isc.isA.String(i)&&i.contains("field_")&&_0[i]!=null&&!isc.isAn.emptyString(_0[i]))
{var _2=i.substring(6);_1[_0[i]]=_0["value_"+_2]}}
return _1},filter:function(_0,_1){_1=this.buildContext(_1,"filter");if(_0==null)_0=(this.summaryComponent||this.summary);var _2=this.getFilterCriteria(),_3=_1.operation;_1.application.filterWithCriteria(_2,_3,_0,_1)},removeRow:function(_0){this.filterRowItems.removeWhere("rowId",_0);if(this.values){delete this.values["field_"+_0]
delete this.values["value_"+_0]}
this.updateItems()},getNextRowId:function(){if(this.$6d==null)this.$6d=0;return this.$6d++},getFilterFieldsValueMap:function(){if(this.filterFields==null)return null;var _0={};for(var i=0;i<this.filterFields.length;i++){_0[this.filterFields[i].name]=this.filterFields[i].title||this.filterFields[i].name}
return _0},updateRowField:function(_0,_1){var _2="operations_"+_0,_3=this.getItem(_2),_4=this.filterRowItems.find("name",_2),_5=this.filterRowItems.find("name","value_"+_0),_6=this.filterFields.find("name",_1),_7=_6?_6.type:"text",_8=_6?this.getOperationsMap(_7):null,_9=_6?'exact':null;if(_7!=_5.type){_3.setValue(_9);_4.valueMap=_8;_5.type=_7;this.updateItems(true)}},getOperationsMap:function(_0){if(_0=="text")_0="string";if(_0=="float"||_0=="integer")_0="number";return this.dataTypeComparisonOperatorsMap[_0]}});isc.ClassFactory.defineClass("ValuesManager");isc.ValuesManager.addProperties({unknownErrorMessage:"Invalid value"});isc.ValuesManager.addMethods({init:function(){this.addPropertyList(arguments);this.ns.ClassFactory.addGlobalID(this);if(this.dataSource)this.bindToDataSource(this.dataSource);if(this.members!=null){this.values=isc.addProperties({},this.values);if(!isc.isAn.Array(this.members))this.members=[this.members];this.$6e();for(var i=0;i<this.members.length;i++){var _0=this.members[i];if(_0.valuesManager!=null)_0.valuesManager.removeMember(_0);_0.valuesManager=this;if(_0.getDataSource()!=this.getDataSource()){this.logWarn("Member form '"+_0.getID()+"' does not have "+"the same dataSource property specified as this valuesManager.")}
if(this.getDataSource()!=null&&_0.isMultipart()){this.logWarn("Member form '"+_0.getID()+"' is flagged as using multipart encoding. Multipart forms require direct form "+"submission to transfer uploaded files to the server - any uploaded files from "+"this member form will be dropped when saving values from this ValuesManager to "+"the server.")}}}
this.rememberValues()},$6e:function(){for(var i=0;i<this.members.length;i++){var _0=this.members[i],_1=_0.getValues(),_2;if(!isc.isA.DynamicForm(_0)){this.logWarn("ValuesManager member object:"+isc.Log.echo(_0)+" is not a DynamicForm.  Removing from members array.");this.members.remove(_0);i-=1;continue}
for(var j in _1){if(this.values[j]!==_2&&this.values[j]!=_1[j]){this.logWarn("ValuesManager member form "+_0.getID()+" has specified value '"+j+"' which collides with an already specified value in this "+"ValuesManager. Resetting the value on the form.");_0.setValue(j,this.values[j])}else{this.values[j]=_1[j]}}}},$2h:function(_0,_1){this.values[_0]=_1},$2i:function(_0){delete this.values[_0]},bindToDataSource:function(ds){if(!isc.isA.DataSource(ds))ds=isc.DataSource.getDataSource(ds);if(ds!=null)this.dataSource=ds},setDataSource:function(_0,_1){this.bindToDataSource(_0)},getDataSource:function(){return this.dataSource},validate:function(){var _0=this.dataSource!=null;if(!_0){if(!this.members)return;for(var i=0;i<this.members.length;i++){var _1=this.members[i];_1.validate();if(!(_1.isDrawn()&&_1.isVisible())){this.$6f(_1.errors,_1)}}
return false}
var _2=true,_3=this.getValues(),_4={},_5=isc.addProperties({},this.dataSource.getFields()),_6={};if(this.members){for(var i=0;i<this.members.length;i++){var _1=this.members[i],_7=this.members[i].getItems();for(var j=0;j<_7.length;j++){var _8=_7[j].getFieldName();if(this.members[i].getDataSource()==this.getDataSource())
delete _5[_8]}
_2=(_2&&_1.validate());if(!(_1.isDrawn()&&_1.isVisible())){this.$6f(_1.errors,_1)}}}
var _3=this.getValues();for(var _8 in _5){var _9=_5[_8],_6=_9.validators,_10=_9.required,_11=_3[_8];if(_10&&_11==null){if(_4[_8]==null)_4[_8]=[];_4[_8].add(isc.Validator.requiredField)}else if(_6!=null){var _11=_3[_8];for(var i=0;i<_6.length;i++){var _12=_6[i];if(!_12)continue;if(_12.type!="requiredIf"&&_11==null){continue}
if(!this.processValidator(null,_12,_11)){if(_4[_8]==null)_4[_8]=[];var _13=_12.errorMessage||this.unknownErrorMessage;_4[_8].add(_13)}}}}
if(isc.getKeys(_4).length>0){this.$6f(_4);_2=false}
return _2},processValidator:function(_0,_1,_2,_3){return isc.Validator.processValidator(_0,_1,_2,_3)},$6f:function(_0,_1){var _2="Validation failed with the following errors:";for(var _3 in _0){var _4=_0[_3];if(!isc.isAn.Array(_4))_4=[_4];if(_4.length==0)continue;_2+="\n"+_3+":";for(var i=0;i<_4.length;i++){_2+=(i==0?"- ":"\n - ")+_4[i]}}
if(_1!=null)_2+="\nErrors came from hidden form:"+_1.getID();this.logWarn(_2,"validation");if(this.handleHiddenValidationErrors){this.handleHiddenValidationErrors(_0,_1)}},setErrors:function(_0,_1){var _2=(this.members?this.members.duplicate():[]);for(var i=0;i<_2.length;i++){var _3=_2[i],_4=_3.getItems(),_5={};for(var j=0;j<_4.getLength();j++){var _6=_4[j].getFieldName();if(_0[_6]!=null){_5[_6]=_0[_6];delete _0[_6]}}
_3.setErrors(_5,_1)}
var _7="This valuesManager has the following errors:";for(var _8 in _0){var _9=_0[_8];if(isc.isAn.Array(_9)){_9=_9[0];for(var i=1;i<_0[_8].length;i++){_9+=", "+_0[_8][i]}}
_7+="\n"+_8+": "+_9}
this.logWarn(_7)},clearErrors:function(_0){if(!this.members)return;for(var i=0;i<this.members.getLength();i++){this.members[i].clearErrors(_0)}},getFilterCriteria:function(){var _0={};if(this.members){for(var i=0;i<this.members.length;i++){isc.addProperties(_0,this.members[i].getFilterCriteria())}}
var _1=this.getValues(),_2;for(var _3 in _1){if(_0[_3]!==_2)delete _1[_3]}
isc.addProperties(_0,isc.DataSource.filterCriteriaForFormValues(_1));return _0},getValues:function(){if(this.members!=null){var _0=isc.EH.getFocusCanvas();if(this.members.contains(_0))_0.updateFocusItemValue()}
return isc.addProperties({},this.values)},setValues:function(_0){_0=isc.addProperties({},_0);var _1;for(var i=0;i<this.members.length;i++){var _2=this.members[i],_3=_2.getItems().getProperty(_2.fieldIdProperty),_4={};for(var _5=0;_5<_3.length;_5++){var _6=_3[_5];if(_0[_6]!==_1){_4[_6]=_0[_6];delete _0[_6]}}
_2.setValues(_4)}
this.values=_0;this.$6e();this.rememberValues()},setData:function(_0){return this.setValues(_0)},clearValues:function(){this.setValues({})},getMemberValues:function(ID){var _0=this.getMember(ID);if(_0!=null)return _0.getValues()},setMemberValues:function(ID,_0){var _1=this.getMember(ID);if(_1!=null)return _1.setValues(_0)},rememberValues:function(){var _0=this.getValues();this.$6g={}
for(var _1 in _0){if(!isc.isA.Function(_0[_1])){if(isc.isA.Date(_0[_1])){this.$6g[_1]=new Date();this.$6g[_1].setTime(_0[_1].getTime())}else{this.$6g[_1]=_0[_1]}}}
return this.$6g},resetValues:function(){var _0={};for(var _1 in this.$6g){if(isc.isA.Date(this.$6g[_1])){var _2=this.getValue(_1);if(isc.isA.Date(_2)){_2.setTime(this.$6g[_1].getTime())
_0[_1]=_2}else{_0[_1]=this.$6g[_1].duplicate()}}else{_0[_1]=this.$6g[_1]}}
this.setValues(_0)},valuesHaveChanged:function(){var _0=isc.addProperties({},this.getValues()),_1=this.$6g,_2=false;for(var i in _1){if(isc.isA.Date(_1[i])){if(!isc.isA.Date(_0[i])||Date.compareDates(_0[i],_1[i])!=0){_2=true}}else{if(_1[i]!=_0[i])_2=true}
if(_2)return true;else delete _0[i]}
for(var i in _0){if(_0[i]&&!isc.isA.Function(_0[i]))return true}
return false},getValue:function(_0){return this.values[_0]},setValue:function(_0,_1){var _2=false;if(this.members){var _3;for(var i=0;i<this.members.length;i++){var _4=this.members[i]
if(_4.getValues()[_0]!==_3||_4.getItem(_0)!=null)
{_4.setValue(_0,_1);_2=true;break}}}
if(!_2)this.values[_0]=_1},addMember:function(_0){if(!isc.isA.DynamicForm(_0)){this.logWarn("addMember() passed invalid object: "+isc.Log.echo(_0)+" - this should be a DynamicForm instance");return}
if(_0.valuesManager!=null)_0.valuesManager.removeMember(_0);if(_0.getDataSource()!=this.getDataSource()){this.logWarn("addMember(): new member form '"+_0.getID()+"' does not have "+"the same dataSource property specified as this valuesManager.")}
if(this.getDataSource()!=null&&_0.isMultipart()){this.logWarn("addMember(): new member form '"+_0.getID()+"' is flagged as using multipart encoding. Multipart forms require direct form "+"submission to transfer uploaded files to the server - any uploaded files from "+"this member form will be dropped when saving values from this ValuesManager to "+"the server.")}
if(this.members==null)this.members=[];this.members.add(_0);var _1=_0.getValues(),_2=_0.getItems(),_3;for(var _4 in _1){if(this.values[_4]!==_3){this.logWarn("ValuesManager member form "+_0.getID()+" has specified value '"+_4+"' which collides with an already specified value in this "+"ValuesManager. Resetting the value on the form.");_0.setValue(_4,this.values[_4])}else{this.values[_4]=_1[_4]}}
for(var i=0;i<_2.length;i++){var _5=_2[i],_4=_5[_0.fieldIdProperty];if(this.values[_4]!==_3&&_1[_4]===_3){_5.setValue(this.values[_4])}}
_0.valuesManager=this;this.rememberValues()},addMembers:function(_0){if(!isc.isAn.Array(_0))this.addMember(_0);else{for(var i=0;i<_0.length;i++){this.addMember(_0[i])}}},removeMember:function(_0){if(!this.members.contains(_0))return;this.members.remove(_0);delete _0.valuesManager},removeMembers:function(_0){if(!isc.isAn.Array(_0))this.removeMember(_0);else{for(var i=0;i<_0.length;i++){this.removeMember(_0[i])}}},getMembers:function(){return this.members},getMember:function(ID){var _0=window[ID];if(this.members&&this.members.contains(_0))return _0;return null},getPrintHTML:function(){var _0=this.getValues(),_1=isc.StringBuffer.create();_1.append("<TABLE border=1><TR><TD align='center' style='font-weight:bold;'>Field</TD>","<TD align='center' style='font-weight:bold;'>Value</TD>");for(var _2 in _0){_1.append("<TR><TD>",_2,"</TD><TD>",_0[_2],"</TD></TR>")}
_1.append("</TABLE>");return _1.toString()}})
isc.ClassFactory.defineClass("DataSource");isc.DS=isc.DataSource;isc.DataSource.addClassProperties({$a7:null,dataSourceObjectSuffix:"DS",_dataSources:{},TABLE:"table",VIEW:"view",resultSets:{},$6h:{}});isc.DataSource.addClassMethods({isLoaded:function(_0){if(!_0)return false;if(isc.isA.DataSource(_0)||this._dataSources[_0])return true;return false},getDataSource:function(_0,_1,_2){if(!_0)return null;if(isc.isA.DataSource(_0))return _0;var _3=this._dataSources[_0];if(!_3){_3=this.$6i(_0,_1);if(_3)_3.ID=_0}
if(_3){if(_1){this.fireCallback(_1,"ds",_3,_3)}
return _3}
if(_1){var _4=isc.DataSource.$6h;if(_4[_0]){_4[_0].add(_1);return null}
_4[_0]=[];_4[_0].add(_1);var _5=_0+"_loadSchema";_2=_2||{};if(!_2.prompt)_2.prompt="loading datasource '"+_0+"'";this.logWarn("performing operation: "+_5);isc.InstantDataApp.performOperation(_5,{},"isc.DataSource.getDataSourceReply(transaction)",_2)}
return null},get:function(_0,_1,_2){return this.getDataSource(_0,_1,_2)},getDataSourceReply:function(_0){var _1=_0.results.data[0].dsName;if(_0.results.status!=0){isc.DataSource.logError("dynamic datasource fetch failed for datasource '"+_1+"'.");return}
eval(_0.results.data[0].dsData);var _2=isc.DataSource.getDataSource(_1);var _3=isc.DataSource.$6h;for(var i=0;i<_3[_1].length;i++){isc.DataSource.logInfo("calling registered callback: "+(_3[_1])[i]);this.fireCallback(_3[_1][i],"ds",[_2],_2)}
delete _3[_1]},$6i:function(_0,_1){var _2=_0+this.dataSourceObjectSuffix;if(window[_2]){var _3=isc.DataSource.create({ID:_0},window[_2]);_3.name=_0;return _3}
if(_1)return null;this.logWarn("isc.DataSource '"+_0+"' not present.  Currently loaded DataSources:\n"+isc.getKeys(this._dataSources)+"\nCheck that you have included your "+"datasource definition file within the page.  If the datasource definition "+"file is in Javascript literal format (dataSourceName.ds.js), the name of "+"the variable containing the datasource definition must be '"+_2+"'.");return null},getRegisteredDataSources:function(){return isc.getKeys(this._dataSources)},getForeignFieldName:function(_0){var _1=_0.foreignKey,_2=_1.indexOf(".");if(_2==-1)return null;return _1.substring(_2+1)},getForeignDSName:function(_0){var _1=_0.foreignKey,_2=_1.indexOf(".");if(_2==-1)return _1;return _1.substring(0,_2)},isRegistered:function(_0){if(this._dataSources[_0])return true;return false},registerDataSource:function(_0){this.logInfo("Registered new isc.DataSource '"+_0.ID+"'");this._dataSources[_0.ID]=_0;var _1=_0.getFields(),_2=this.$6j=(this.$6j||{});for(var _3 in _1){var _4=_1[_3];if(_4.foreignKey==null)continue;var _5=this.getForeignDSName(_4);if(isc.DS.isRegistered(_5)){isc.DS.get(_5).addChildDataSource(_0)}else{if(_2[_5]==null){_2[_5]=[]}
_2[_5].add(_0)}}
var _6=_2[_0.ID];if(_6!=null){_0.map("addChildDataSource",_6);_2[_0.ID]=null}},isClientOnly:function(_0){if(isc.isA.String(_0))_0=this.getDataSource(_0);if(!_0)return false;return _0.clientOnly},$6k:function(_0){switch(_0){case"fetch":case"select":case"filter":return"fetch";case"add":case"insert":return"add";case"update":return"update";case"remove":case"delete":return"remove";default:return _0}},getLocalResultSet:function(_0){var _1=_0.dataSource;var _2=this.resultSets[_1];if(_2==null)return null;for(var i=0;i<_2.length;i++){var _3=_2[i];if(_3.isLocal()&&_3.operation==_0)return _3}
return null},makeDefaultOperation:function(_0,_1,_2,_3,_4){var _5=_3!=null?(isc.isA.InstantDataApp(_3)?_3:window[_3]):isc.InstantDataApp.getDefaultApplication();if(isc.isA.DataSource(_0))_0=_0.ID;if(_5.operations==null)_5.operations={};_4=_4||_0+"_"+_1;var _6=_5.operations[_4];if(_6==null){_6={ID:_4,dataSource:_0,type:_1,filterType:"paged",loadDataOnDemand:true,source:"auto"};this.logInfo("Creating auto-operation: "+_4);_5.operations[_4]=_6}
if(_2!=null){isc.addProperties(_5.operations[_4],_2)}
this.logDebug("Default "+_1+" operation created for datasource "+_0+". Details: "+isc.Log.echo(_5.operations[_4]));_5.bindToUser();return _6},operationSubmitted:function(_0){if(!this.isUpdateOperation(_0.type))return;var _1=this.get(_0.dataSource);_1.operationSubmitted(_0)},handleUpdate:function(_0,_1){if(!this.isUpdateOperation(_0.type))return;var _2=this.get(_0.dataSource);_2.handleUpdate(_0,_1)},isUpdateOperation:function(_0){if(_0=="add"||_0=="update"||_0=="remove"||_0=="replace"||_0=="delete"||_0=="insert")return true},filterCriteriaForFormValues:function(_0){var _1={};for(var _2 in _0){var _3=_0[_2];if(_3==null||isc.is.emptyString(_3))continue;if(isc.isAn.Array(_3)){if(_3.length==0)continue;for(var i=0;i<_3.length;i++){var _4=_3[i];if(isc.isAn.emptyString(_4))continue}}
_1[_2]=_3}
return _1}});isc.DataSource.addProperties({addGlobalId:true,copyLocalResults:true});isc.DataSource.addMethods({init:function(){var _0;this.addPropertyList(arguments);if(this.name==null)this.name=this.ID;if(!window[this.ID]&&this.addGlobalId)isc.ClassFactory.addGlobalID(this);if(isc.isAn.Array(this.fields))this.fields=this.fields.makeIndex("name");if(this.dataSourceType==isc.DataSource.VIEW)this.initViewSources();isc.DataSource.registerDataSource(this)},getResultSet:function(_0){var _1=this.resultSetClass!=null?this.resultSetClass:isc.ResultSet;if(!isc.isA.Class(_1)){this.logWarn("getResultSet(): Unrecognized 'resultSetClass' property:"+_1+", returning a standard isc.ResultSet.");_1=isc.ResultSet}
return _1.create(_0)},addResultSet:function(_0){if(!this.resultSets)this.resultSets=[];this.resultSets.add(_0)},operationSubmitted:function(_0){var _1=this.resultSets;if(_1==null||_1.length==0)return;this.logInfo("operation: "+_0+" submitted against DataSource "+this.ID+", "+_1.length+" ResultSets will be affected");for(var i=0;i<_1.length;i++){_1[i].handleUpdateSubmitted(_0,this.ID)}},handleUpdate:function(_0,_1){var _2=this.resultSets;if(_2==null||_2.length==0)return;this.logInfo("Updating "+_2.length+" resultSets on dataSource '"+this.ID+"'");var _3=_1.data,_4=_1.invalidateCache;if(!_3&&!_4){this.logWarn("Empty results returned on modification operation '"+_0.ID+"' (type "+_0.type+"), unable to update "+_2.length+" isc.ResultSet(s) on isc.DataSource "+this.ID+".  Return affected records to ensure cache consistency.");return}
for(var i=0;i<_2.length;i++){_2[i].handleUpdate(_0.type,_3,_4)}},fetchData:function(_0,_1,_2){this.$r0("fetch",_0,_1,_2)},filterData:function(_0,_1,_2){this.$r0("filter",_0,_1,_2)},addData:function(_0,_1,_2){this.$r0("add",_0,_1,_2)},updateData:function(_0,_1,_2){this.$r0("update",_0,_1,_2)},removeData:function(_0,_1,_2){this.$r0("remove",_0,_1,_2)},$r0:function(_0,_1,_2,_3){isc.InstantDataApp.performDSOperation(this,_0,_1,_2,_3)},insertRecord:function(_0,_1){_1=isc.FlowMethods.buildContext(_1,this,"add");_1.application.insertRecord(_0,_1.operation,_1.callback,_1)},updateRecord:function(_0,_1){this.updateRecords(_0,null,_1)},updateRecords:function(_0,_1,_2){_2=isc.FlowMethods.buildContext(_2,this,"update");_2.application.updateRecords(_0,_1,_2.operation,_2.callback,_2)},deleteRecord:function(_0,_1){_1=isc.FlowMethods.buildContext(_1,this,"remove");_1.application.deleteRecords(_0,_1.operation,_1)},getTitle:function(){return this.title||this.ID},getPluralTitle:function(){return this.pluralTitle||(this.getTitle()+"s")},getTitleField:function(){if(this.titleField==null){var _0=isc.getKeys(this.getFields());this.titleField=_0.contains("title")?"title":_0.contains("name")?"name":_0.contains("id")?"id":_0.first()}
return this.titleField},initViewSources:function(){var _0=this.fields={};for(var _1 in this.sources){var _2=isc.DataSource.getDataSource(_1);if(!_2)continue;var _3=this.sources[_1].fields;for(var _4 in _3){var _5=_3[_4],_6=null;if(_5=="*"){_6=_2.fields[_4]}else if(isc.isA.String(_5)){_6=_2.fields[_5]}else if(isc.isAn.Object(_5)){_6=isc.addProperties({},_2.fields[_2.fields[_5.field]]);isc.addProperties(_6,_5)}
if(_6)_0[_4]=_6}}},hasSuperDS:function(){if(this.inheritsFrom)return true;return false},superDS:function(){if(this.hasSuperDS())return isc.DataSource.getDataSource(this.inheritsFrom);return null},getField:function(_0){return this.getFields()[_0]},getNativeFields:function(){if(this.$6l)return this.fields;this.$6m();this.$6l=true;return this.fields},getFields:function(){if(!this.mergedFields){this.mergedFields={};if(this.hasSuperDS()){isc.addProperties(this.mergedFields,this.superDS().getFields())}
isc.addProperties(this.mergedFields,this.getNativeFields())}
return this.mergedFields},getGroups:function(){return this.groups},getNativePrimaryKeyFields:function(){if(!this.primaryKeys){this.primaryKeys={};var _0=this.getFields();for(var _1 in _0){var _2=_0[_1];if(_2.primaryKey){this.primaryKeys[_1]=_2}}}
return this.primaryKeys},getPrimaryKeyFields:function(){if(!this.mergedPrimaryKeys){this.mergedPrimaryKeys={};if(this.hasSuperDS()){isc.addProperties(this.mergedPrimaryKeys,this.superDS().getPrimaryKeyFields())}
isc.addProperties(this.mergedPrimaryKeys,this.getNativePrimaryKeyFields())}
return this.mergedPrimaryKeys},getNativePrimaryKeyFieldNames:function(){var _0=this.getNativePrimaryKeyFields();var _1=[];for(var _2 in _0){_1.add(_2)}
return _1},getPrimaryKeyFieldNames:function(){return isc.getKeys(this.getPrimaryKeyFields())},addChildDataSource:function(_0){var _1=this.$6n=(this.$6n||[]);_1.add(_0)},getChildDataSources:function(){return this.$6n},getTreeRelationship:function(_0,_1){if(isc.isA.String(_0))_0=isc.DataSource.getDataSource(_0);var _2=this.getFields();if(_1==null){for(var _3 in _2){var _4=_2[_3];if(_4.foreignKey!=null){_1=_3;break}}}
var _4=_2[_1];if(_4==null)this.logWarn("Unable to lookup field for foreignKeyFieldName: "+_1);if(_1==null||_4==null)return null;if(!_0){var _5=isc.DataSource.getForeignDSName(_4);_0=isc.DataSource.getDataSource(_5)}
var _6=isc.DataSource.getForeignFieldName(_4);if(_6==null){var _7=_0.getPrimaryKeyFieldNames();if(isc.isAn.Array(_7)){if(_7.length>1){this.logWarn("getTreeRelationship: dataSource '"+_0.ID+"' has multi-field primary key, which is not "+"supported for tree viewing.  Using field '"+_7[0]+"' as the only primary key field")}
_7=_7[0]}
_6=_7}
var _8={childDS:this,parentIdField:_3,idField:_6,parentDS:_0}
if(_0==this)_8.rootValue=this.getField(_3).rootValue;return _8},combineFieldData:function(_0){var _1=this.getField(_0.name);if(_1==null)return _0;for(var _2 in _1){if(_2=="validators"&&_0.validators!=null){for(var i=0;i<_1.validators.length;i++){var _3=_1.validators[i];if(!_0.validators.contains(_3))_0.validators.add(_3)}
continue}
if(_0[_2]!=null)continue;_0[_2]=_1[_2]}
return _0},$6m:function(_0){this.logDebug("Adding type validators to the field definition.");if(_0==null)_0=this.fields;for(var _1 in _0){var _2=_0[_1],_3=this.getType(_2.type);if(_3==null)continue;var _4=this.getSimpleTypeValidators(_3);if(_4==null)continue;if(_2.validators==null)_2.validators=[];else if(!isc.isAn.Array(_2.validators))_2.validators=[_2.validators];_2.validators.addAsList(_4)}},getType:function(_0){if(isc.builtinTypes[_0])return isc.builtinTypes[_0];if(this.types&&this.types[_0])return this.types[_0];return null},getSimpleTypeValidators:function(_0){if(isc.isA.String(_0))_0=this.getType(_0);var _1=_0.validators?_0.validators:[],_2=_0.inheritsFrom;if(!isc.isAn.Array(_1))_1=[_1];for(var i=0;i<_1.length;i++){if(isc.isA.String(_1[i]))_1[i]={"type":_1[i]}}
if(_2!=null){var _3=this.getType(_2);if(_3!=null){var _4=this.getSimpleTypeValidators(_3);if(_4!=null)_1.addAsList(_4)}}
if(_1.length==0)return null;else return _1},getSpoofedResult:function(_0){if(!this.testData||isc.isA.String(this.testData)){if(isc.isA.String(this.testData)){this.logInfo(this.ID+" datasource: using testData property as data");this.testData=eval(this.testData)}else if(window[this.ID+"TestData"]){this.logInfo(this.ID+" datasource: using "+this.ID+"TestData object as data");this.testData=window[this.ID+"TestData"]}else{this.logInfo(this.ID+" datasource: testData property and "+this.ID+"TestData object not found, using empty list as data");this.testData=[]}}
var _1=_0.operation,_2=_0.requestData,_3={status:0};switch(_1.type){case"fetch":case"select":case"filter":var _4=_2.where;if(isc.isAn.Array(_4))_4=_4[0];var _5=this.applyFilter(_4,this.testData),_6=_5;if(_1.filterType=="paged"||_1.filterType=="windowed"){var _7=_2.startRow,_8=_2.endRow,_9=_5.length;var _10=_2.sortBy;if(_10){var _11=true;if(_10.startsWith("-")){_10=_10.substring(1);_11=false}
_5.sortByProperty(_10,_11)}
_8=Math.min(_8,_9-1);_6=_5.slice(_7,_8+1);_3.startRow=_7;_3.endRow=_8;_3.totalRows=_9}
if(this.copyLocalResults){for(var i=0;i<_6.length;i++){_6[i]=isc.addProperties({},_6[i])}}
_3.data=_6;break;case"remove":case"delete":_3.data=_2.where;break;case"add":case"insert":case"replace":case"update":_3.data=_2.values;break;case"validate":default:break}
return _3},findByKeys:function(_0,_1,_2,_3){if(_0==null){this.logWarn("findByKeys: passed null record");return-1}
var _4={},_5=this.getPrimaryKeyFields(),_6=false;for(var _7 in _5){_6=true;if(_0[_7]==null){this.logWarn("findByKeys: passed record does not have a value for key field "+_7);return-1}
_4[_7]=_0[_7]}
if(!_6){this.logWarn("findByKeys: dataSource '"+this.ID+"' does not have primary "+"keys declared, can't find record");return-1}
return _1.findNextIndex(_2,_4,null,_3)},applyFilter:function(_0,_1){var _2=[];if(!_1||_1.length==0)return _2;return this.recordsMatchingFilter(_1,_0)},recordsMatchingFilter:function(_0,_1){var _2=isc.getKeys(_1),_3=_2.length,_4=[],_5,_6,_7,_8,_9,j;for(var i=0,l=_0.length;i<l;i++){_5=_0[i];_6=true;for(j=0;j<_3;j++){_7=_2[j];_8=_5[_7];_9=_1[_7];if(_8==null||isc.isAn.emptyString(_8)){_6=false;break}
if(!this.fieldMatchesFilter(_8,_9)){_6=false;break}}
if(_6)_4.add(_5)}
return _4},recordMatchesFilter:function(_0,_1){return this.recordsMatchingFilter([_0],_1).length>0},fieldMatchesFilter:function(_0,_1){if(isc.isAn.Array(_1)){if(_1.contains(_0))return true;return false}
if(isc.isA.Date(_0)&&isc.isA.Date(_1)){return(Date.compareDates(_0,_1)==0)}
if(!isc.isA.String(_0)&&!isc.isA.String(_1)){this.logDebug("Direct compare: "+_0+"=="+_1);return(_0==_1)}
if(!isc.isA.String(_0))_0=_0.toString();if(!isc.isA.String(_1))_1=_1.toString();if(this.filterIsCaseSensitive)return _0.contains(_1);return(_0.toLocaleLowerCase().contains(_1.toLocaleLowerCase()))}});isc.ClassFactory.defineInterface("DataModel");isc.DataModel.addMethods({getApplication:function(){var _0=this.application;if(isc.isA.String(_0))_0=window[_0];return _0||isc.InstantDataApp.getDefaultApplication()},getDataSource:function(){if(isc.isA.String(this.dataSource))return isc.DS.get(this.dataSource);return this.dataSource},getOperationId:function(_0){var _1=this.getOperation(_0);return _1==null?null:_1.ID},getOperation:function(_0){var _1=this.getApplication(),_2,_3;var _4=_0+"Operation";if(this[_4]){_2=this[_4];if(isc.isAn.Object(_2))return _2;_3=_2}
if(_3==null){var _5=this.getDataSource();if(_5==null){this.logWarn("can't getOperation for type: "+_0+", no "+_4+" specified, and no dataSource to "+"create an auto-operation");return null}
this.logInfo("creating auto-operation for operationType: "+_0);_2=isc.DataSource.makeDefaultOperation(_5,_0,null,_1);_3=_2.ID;this[_4]=_3}else{if(_1.operations==null)_1.operations={};_2=_1.operations[_3];if(_2==null){this.logError("requested operation: "+_3+" does not exist on"+" application: "+_1.getID())}}
return _2}});isc.ClassFactory.defineClass("RPCManager");isc.ClassFactory.defineClass("RPCRequest");isc.ClassFactory.defineClass("RPCResponse");isc.RPCResponse.addClassProperties({STATUS_SUCCESS:0,STATUS_FAILURE:-1});isc.RPCManager.addClassProperties({errorCodes:{BAD_DATA:-1,DB_EXCEPTION:-2,AUTHORIZATION_FAILURE:-3,VALIDATION_ERROR:-4,INSERT_COLLISION:-5,NEED_AUTHENTICATION:-6,SERVER_TIMEOUT:-100},defaultTimeout:240000,defaultPrompt:"Contacting server...",showPrompt:false,neverShowPrompt:false,actionURL:"[ISOMORPHIC]/IDACall",dataEncoding:"XML",preserveTypes:true,$6o:[]});isc.RPCManager.addClassMethods({getActionURL:function(){return isc.Page.getURL(this.actionURL)},send:function(_0,_1,_2){var _3=(_2||{});isc.addProperties(_3,{data:_0,callback:_1});this.sendRequest(_3)},sendRequest:function(_0){if(!_0.operation){_0.operation={ID:"custom",type:"rpc"}}
if(_0.showPrompt==null)_0.showPrompt=this.showPrompt;if(this.currentTransaction&&(_0.actionURL||this.getActionURL()!=this.currentTransaction.URL))
{if(_0.actionURL==null){this.logError("RPCRequest did not specify an actionURL (wants to use default), but"+" previous requests on the queue have specified a non-default URL: "+this.currentTransaction.URL+" - ignoring this request.");return}
if(_0.actionURL!=this.currentTransaction.URL){this.logError("RPCRequest specified actionURL: "+_0.actionURL+", but RPCManager already queuing requests for URL: "+this.currentTransaction.URL+" - ignoring this request.");return}}
if(!this.currentTransaction){var _1=this.$6o.length;var _2;if(isc.Comm.alwaysSendInNewWindow){_2="window.opener.parent.isc.RPCManager"+".performTransactionReply("+_1+", results, window)"}else{_2="parent.isc.RPCManager"+".performTransactionReply("+_1+", results);"}
var _3=(_0.actionURL||this.getActionURL());if(_0.exportFilename)_3+="/"+_0.exportFilename;var _4={transactionNum:_1,operations:[],requestData:{transactionNum:_1,operations:[],jscallback:_2},URL:_3,prompt:(_0.prompt||this.defaultPrompt),showPrompt:this.neverShowPrompt?false:_0.showPrompt}
this.$6o[_1]=_4;this.currentTransaction=_4}
_0=isc.addProperties({},_0);this.currentTransaction.operations.add(_0);if(!_0.clientOnly){this.currentTransaction.requestData.operations.add(_0.data)}
var _5=_0.prompt;if(_5&&!this.currentTransaction.prompt){this.logDebug("Grabbed prompt from first request: "+_0.prompt);this.currentTransaction.prompt=_0.prompt}
if(!this.queuing)this.sendQueue()},startQueue:function(_0){var _1=this.queuing;this.queuing=(_0==null?true:_0);return _1},cancelQueue:function(_0){if(_0==null){this.currentTransaction=null}
this.$6o[_0]=null},$6p:function(_0){if(this.defaultTimeout==0)return;_0.timeoutTimer=isc.Timer.setTimeout("isc.RPCManager.$6q("+_0.transactionNum+")",this.defaultTimeout)},$6q:function(_0){if(!_0)return;var _1=this.$6o[_0];if(!_1)return;var _2={numRows:0,data:this.timeoutErrorMessage,status:isc.RPCManager.errorCodes.SERVER_TIMEOUT};_1.results=[];for(var i=0;i<_1.operations.length;i++)
_1.results[i]=isc.clone(_2);this.$6r(_0)},resubmitTransaction:function(_0){if(_0==null){_0=this.$6o.length-1}
this.currentTransaction=this.$6o[_0];this.logInfo("Resubmitting transaction number: "+_0);if(this.currentTransaction!=null){this.closeOperationPromptWindow(this.currentTransaction);isc.clearPrompt();this.performTransaction()}else{this.logError("No transaction to resubmit: transaction number "+_0+" does not exist")}},retryOperation:function(_0){this.logDebug("Server-initiated operation retry for commFrameID: "+_0);var _1=window[_0];if(!_1){this.logError("comm operation retry failed - can't locate object: "+_0)}
_1.sendData()},transactionAsGetRequest:function(_0,_1){_0=(_0||this.currentTransaction);_1=(_1||_0.URL||this.getActionURL());return _1+=(_1.contains("?")?"&":"?")+"_transaction="+escape(this.serializeTransaction(_0))},serializeTransaction:function(_0){var _1;if(this.dataEncoding=="JS")_1=isc.Comm.serialize(_0.requestData);else _1=isc.StringBuffer.concat(this.soapEnvelopeStart(),isc.Comm.xmlSerialize("transaction",_0.requestData),this.soapEnvelopeEnd());return _1},soapEnvelopeStart:function(){return"\<?xml version='1.0' encoding='UTF-8'?\>\<SOAP-ENV:Envelope xmlns:SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/' xmlns:xsi='http://www.w3.org/1999/XMLSchema-instance' xmlns:xsd='http://www.w3.org/1999/XMLSchema'\>\<SOAP-ENV:Body\>"},soapEnvelopeEnd:function(){return"\</SOAP-ENV:Body\>\</SOAP-ENV:Envelope\>"},sendQueue:function(_0,_1){var _2=this.currentTransaction;if(!_2){this.logWarn("sendQueue called with no current queue, ignoring");return false}
this.logInfo("sendQueue["+_2.transactionNum+"]: "+_2.operations.length+" operations");var _3=true;for(var i=0;i<_2.operations.length;i++){if(!_2.operations[i].clientOnly){_3=false;break}}
if(_3){this.$6r(_2.transactionNum);this.currentTransaction=null;this.queuing=false;return true}
var _4=_2.operations[0];_1=_2.URL=(_1||_2.URL||this.getActionURL());_0=_2.prompt=((_2.showPrompt==null||_2.showPrompt)?(_0||_2.prompt||this.defaultPrompt):null);if(!isc.Page.isLoaded()){isc.Page.setEvent("idle",this,isc.Page.FIRE_ONCE,"sendQueue");return}
if(_4.directSubmit){var _5=_4.submitForm;var _6=_5.getForm();if(_5.getItem("_transaction")!=null&&isc.isA.HiddenItem(_5.getItem("_transaction")))
{_5.setValue("_transaction",this.serializeTransaction(_2));this.logInfo("Direct submit assigning request data to hidden field instead of"+" submitting as GET request");_6.action=_1}else{_6.action=this.transactionAsGetRequest()}
var _7=isc.Comm.getTargetableFrame(_4.prompt);_6.target=_7.getName();if(!isc.Browser.isNav){isc.showPrompt(_4.prompt);_7.draw(_5.getID()+".submitForm()")}else{_5.submitForm()}}else if(_4.downloadResult){if(_4.downloadToNewWindow==false||(_4.downloadToNewWindow==null&&_4.exportFilename)){if(!window.name||(isc.Browser.isNav&&window.name=='_blank')){window.name=isc.timeStamp()}
var _8=window.name;this.$6p(_2);_2.$dz=isc.Comm.sendFieldsToServer(_1,{_transaction:isc.Comm.serialize(_2.requestData),protocolVersion:"1.0"},_0,_8);this.closeOperationPromptWindow(_2);isc.clearPrompt()}else{_1=this.transactionAsGetRequest();this.logDebug("Submitting request with download result:\n"+_1);window.open(_1,"download","WIDTH="+isc.Page.getWidth()+",HEIGHT="+isc.Page.getHeight()+",RESIZABLE,MENUBAR,SCROLLBARS")}}else{this.$6p(_2);_2.$dz=isc.Comm.sendFieldsToServer(_1,{_transaction:this.serializeTransaction(_2),protocolVersion:"1.0"},_0)}
_2.sendTime=isc.timeStamp();this.currentTransaction=null;this.queuing=false;return true},performTransactionReply:function(_0,_1,wd){this.logInfo("performTransactionReply("+_0+")");var _2=this.$6o[_0];if(!_2){this.logWarn("No such transaction "+_0);return false}
if(_2.timeoutTimer)isc.Timer.clear(_2.timeoutTimer);this.logDebug("Total server transaction time: "+(isc.timeStamp()-_2.sendTime)+"ms");if(wd)_2.$dz=wd;if(!_1){this.logFatal("No results for transaction "+_0);this.closeOperationPromptWindow(_2);return false}
_2.results=_1;isc.Timer.setTimeout("isc.RPCManager.$6r("+_0+")",10);return true},$6r:function(_0){var _1=this.$6o[_0];if(!_1)return;if(this.logIsDebugEnabled())this.logDebug("Result string: "+_1.results);if(isc.isA.String(_1.results))_1.results=eval(_1.results);var _2=_1.results;this.closeOperationPromptWindow(_1);if(!isc.isAn.Array(_2))_2=[_2];this.$6s=_1.operations;this.$6t=[];for(var i=0,j=0;i<this.$6s.length;i++){var _3=this.$6s[i];var _4={operationId:_3.operation.ID,context:_3,clientOnly:_3.clientOnly,results:(_3.clientOnly?isc.DS.get(_3.operation.dataSource).getSpoofedResult(_3):_2[j++])};if(_4.results){isc.addProperties(_4,_4.results)}
this.$6t[i]=_4}
this.$6u=0;while(this.$6u<this.$6s.length){var _3=this.$6s[this.$6u],_4=this.$6t[this.$6u];if(_3.showPrompt==null||_3.showPrompt==true)
{isc.clearPrompt()}
this.performOperationReply();this.$6u++}
this.$6s=null;this.$6t=null;this.$6o[_0]=null;this.confirmationShownForTransaction=false},performOperationReply:function(){var _0=this.$6s[this.$6u],_1=this.$6t[this.$6u],_2=_1.results,_3=_0.operation;this.logInfo("performOperationReply("+_3.ID+")["+_3.type+"]: [status="+(_2.status!=null?_2.status:"unknown")+"]"+", result: "+(_2==null?"null":(isc.isAn.Array(_2.data)?_2.data.length+" records":"object")));if(!_2||(_2.status<0&&_0.willHandleError!=true)){return this.handleError(_1)}
if(_2.status>=0){isc.DataSource.handleUpdate(_3,_1);var _4=this.$6s[this.$6u+1];if(_4&&_4.cacheSyncOperation)
{this.logDebug("detected cache sync operation:"+" doing out of order performOperationReply");this.$6u++;this.performOperationReply()}}
var _5=[_0.callback,_0.flowCallback,_3.replyCallback,_0.afterFlowCallback];for(var i=0;i<_5.length;i++){var _6=_5[i],_7=(_6==_0.flowCallback);if(!_6)continue;var _8=_1.data;var _9=_0.appInstance?_0.appInstance:this,_10=_9.fireCallback(_6,"operationResult,data,context,transaction,rpcRequest,rpcResponse,dsRequest,dsResponse",[_1,_8,_0,_1,_0,_1,_0,_1]);if(_7&&_0.willHandleError&&_10===false){this.logDebug("performOperationReply: Further processing cancelled by flowCallback");return _10}}
if(_0.confirmationMessage&&!this.confirmationShownForTransaction){this.logDebug("Displaying confirmation message");alert(_0.confirmationMessage);this.confirmationShownForTransaction=true}
return _10},handleError:function(_0){var _1=(_0.context?_0.context:{}),_2=(_0.results?_0.results:{}),_3=this.getOperationName(_1.operation),_4;if(!_2){_4="operation returned no results"}else if(_2.data){_4=_2.data}else{_4="error number: "+(_2.status!=null?_2.status:"unknown")}
alert("Error performing operation: '"+_3+"': "+_4);return false},getOperationName:function(_0){if(_0==null)return"UNDEFINED OPERATION";if(isc.isA.String(_0))return _0;return _0.ID},closeOperationPromptWindow:function(_0){var _1=_0.$dz;if(_1==null)return;if(isc.isA.HiddenFrame(_1)){_1.destroy()}else{_1.close()}}});isc.addGlobal("InstantDataApp",isc.RPCManager);isc.isA.InstantDataApp=isc.isA.RPCManager;isc.InstantDataApp.addClassMethods({performDSOperation:function(_0,_1,_2,_3,_4){var _5;if(_4&&_4.application){_5=_4.application;delete _4.application}else{_5=this.getDefaultApplication()}
_5.performDSOperation(_0,_1,_2,_3,_4)},performOperation:function(_0,_1,_2,_3){var _4;if(_3&&_3.application){_4=_3.application;delete _3.application}else{_4=this.getDefaultApplication()}
_4.performOperation(_0,_1,_2,_3)},setDefaultApplication:function(_0){isc.InstantDataApp.defaultApplication=_0;isc.InstantDataApp.logInfo(_0.getID()+" has been set as the default application");window.app=_0},getDefaultApplication:function(){if(this.defaultApplication==null){this.create({ID:"builtinApplication",dataSources:[],operations:{}})}
return this.defaultApplication},getComponent:function(_0){if(_0==null)return null;if(isc.isA.nonemptyString(_0)||isc.isA.Canvas(_0)||isc.isA.ValuesManager(_0))
{return this.addExternalComponent(_0)}
if(!isc.isAn.Object(_0))return null;return _0},getRequiredComponent:function(_0,_1,_2){if(_0==null&&_2!=null)_0=_2;var _3=this.getComponent(_0);if(!_1)_1="getRequiredComponent";if(!_3){this.logError(_1+": couldn't find component "+_0)}else if(_2&&!this.componentIsOfType(_3,_2)){this.logError(_1+": component "+this.getComponentName(_0)+" is not of expected type "+_2)}
return _3},addExternalComponent:function(_0){if(isc.isA.String(_0))_0=window[_0];if(!_0)return null;var _1=this.$6v;if(_1==null)_1=this.$6v={};var _2=_0.getID(),_3=_1[_2];if(_3==null||_3.mainElement.destroyed){_3=_1[_2]={external:true,saveOperation:_0.saveOperation,mainElement:_0}}
return _3},getComponentName:function(_0){if(_0==null)return"UNDEFINED COMPONENT";if(isc.isA.String(_0))return _0;else if(this.$6v&&this.$6v.contains(_0)){_0=_0.mainElement}
return _0.getID?_0.getID():_0.ID},componentIsOfType:function(_0,_1){if(!_0||!_0.mainElement)return false;if(_0.type)return _0.type==_1;var _2=this.componentTypeToClassMap[_1];if(!_2){this.logError("Component of type: '"+_1+"' has no specified component element class.");return false}else if(!isc.isAn.Array(_2)){_2=[_2]}
for(var i=0;i<_2.length;i++){if(_0.mainElement.isA(_2[i]))return true}
return false},componentTypeToClassMap:{summary:"ListGrid",viewer:"DetailViewer",editor:["DynamicForm","ValuesManager"],filter:["DynamicForm","ValuesManager"],tree:"TreeGrid",graph:"BarGraph"},componentDrawn:function(_0){_0=this.getComponent(_0);return(_0?true:false)},getMainElement:function(_0){_0=this.getRequiredComponent(_0);return(_0?_0.mainElement:null)},showComponent:function(_0,_1){_0=this.getRequiredComponent(_0,'showComponent');if(!_0)return;if(_1){var _2=this.getMainElement(_0);if(_2&&_2.setData)_2.setData(_1)}},showComponents:function(_0){if(!isc.isAn.Array(_0))_0=[_0];for(var i=0,_1=_0.length;i<_1;i++)
this.showComponent(_0[i])},getSelection:function(_0){_0=this.getRequiredComponent(_0,"getSelectedRecord","summary");var _1=this.getMainElement(_0);if(!_1)return[];return _1.selection.getSelection()},getSelectedRecord:function(_0){_0=this.getRequiredComponent(_0,"getSelectedRecord","summary");var _1=this.getMainElement(_0);if(!_1)return null;return _1.selection.getSelectedRecord()},getValidatedValues:function(_0){_0=this.getRequiredComponent(_0,"getValidatedValues","editor");if(!_0)return null;if(!this.componentDrawn(_0)){this.logError("getValidatedValues: editor '"+this.getComponentName(_0)+"' has never been drawn, aborting");return null}
var _1=this.getMainElement(_0);if(!_1.validate()){this.logDebug("getValidatedValues: validation error occurred");return null}
return _1.getValues()},showValidationErrors:function(_0,_1){this.logInfo("validation errors: "+isc.Comm.serialize(_1));var _2={};if(isc.isAn.Array(_1))_1=_1[0];var _3=[];for(var _4 in _1){if(isc.isA.DynamicForm(_0)&&!_0.getItem(_4)){_3=_3.concat(_4)}
var _5=_1[_4];if(isc.isAn.Array(_5)){_2[_4]=_5.getProperty('errorMessage')}else{_2[_4]=_5.errorMessage}}
if(_3.length>0){var _6="The following validation errors were returned for fields "+" not present in this form:\n";for(var i=0;i<_3.length;i++){_6+=_3[i]+": "+isc.Comm.serialize(_1[_3[i]])+";\n"}
this.logWarn(_6)}
_0.setErrors(_2,true);return false},cancelEditor:function(_0){isc.Page.goShowPrevious()}});isc.InstantDataApp.addProperties({autoFilterOnClear:true,fieldIdProperty:"name",deleteRecordsPrompt:"Deleting record(s)...",getViewRecordsPrompt:"Loading record...",saveEditorPrompt:"Saving form...",validateEditorPrompt:"Validating form...",saveRecordsPrompt:"Saving records...",doFilterPrompt:"Finding records that match your criteria...",insertRecordPrompt:"Saving record...",updateRecordsPrompt:"Saving records(s)...",timeoutErrorMessage:"Operation timed out"});isc.InstantDataApp.addMethods({init:function(){this.addPropertyList(arguments);isc.ClassFactory.addGlobalID(this);this.logInfo("IDA created");if(this.dataSources==null)this.dataSources=[];if(!this.bindToUser(this.user))return;if(isc.RPCManager.defaultApplication==null||isc.RPCManager.defaultApplication.getID()=="builtinApplication")
{isc.RPCManager.setDefaultApplication(this)}},initDataSources:function(_0){if(!this._dataSources)this._dataSources={};if(!_0)_0=this.dataSources;if(!this.dataSources)this.dataSources=_0;if(!isc.isAn.Array(_0))_0=[_0];for(var i=0;i<_0.length;i++){var _1=_0[i];if(!_1)continue;if(!this.defaultDataSource)this.defaultDataSource=_1;var _2=isc.DataSource.getDataSource(_1);if(_2){this._dataSources[_1]=_2}
else{this.logWarn("Couldn't load dataSource "+_1)}}},getDataSource:function(_0){_0=this.getRequiredOperation(_0);if(!_0)return false;var _1=_0.dataSource;if(!_1)return false;if(isc.isAn.Array(_1))_1=_1[0];if(this.dataSources&&this.dataSources.length>0){return this._dataSources[(_1?_1:this.defaultDataSource)]}else{return isc.DataSource.getDataSource(_1)}},getDataSourceName:function(_0){if(_0==null)return this.getDataSourceName(this.defaultDataSource);if(isc.isA.String(_0))return _0;return _0.ID},hasDataSource:function(_0){if(_0==null||this.dataSources==null)return false;if(isc.isA.DataSource(_0))_0=_0.getID();return(this._dataSources[_0]!=null)},getAuthorizedOperation:function(_0,_1,_2){if(isc.isAn.Object(_0))return _0;var _3=this.$6w,_4;if(_3!=null&&isc.isA.nonemptyString(_0)){_4=_3[_0]}
if(_2&&!_4){this.logError((_1?_1:"getAuthorizedOperation")+": User was not authorized for operation "+isc.RPCManager.getOperationName(_0)+"\rUser qualifies for userTypes: "+this.user.userTypes+"\rand operations: "+isc.getKeys(_3))}
return _4},getRequiredOperation:function(_0,_1){return this.getAuthorizedOperation(_0,(_1?_1:"getRequiredOperation"),true)},bindToUser:function(_0){this.user=_0||window.user||{};if(this.dataSources)this.initDataSources(this.dataSources);if(!this.bindUserTypes())return false;this.$6w=null;this.bindOperations();this.bindComponents();return true},usingUserTypes:function(){if(this.$6x!=null)return this.$6x;return this.$6x=(this.userTypes&&isc.getKeys(this.userTypes).length>0)},bindUserTypes:function(){if(!this.usingUserTypes()){this.logInfo("User types mechanism not in use, current user can perform "+"any defined operation");return true}
var _0="userTypes are defined for this application, but the list of "+"userTypes that the current user qualifies for (this.user.userTypes) ";if(this.user==null||this.user.userTypes==null){this.logError(_0+"is not available because "+(this.user==null?"no user object was provided when the application was "+"instantiated (this.user == null)":"userTypes are not defined on the user object provided when the "+"application was instantiated (this.user.userTypes == null)")+", aborting");return false}
if(isc.isA.String(this.user.userTypes))this.user.userTypes=[this.user.userTypes];if(!isc.isAn.Array(this.user.userTypes)){this.logError("Unrecognized format for user.userTypes (expected Array of Strings "+"or single String): "+typeof(this.user.userTypes));return false}
var _1;for(var i=0;i<this.user.userTypes.length;i++){var _2=this.user.userTypes[i];if(_2=="*"){this.user.userTypes=isc.getKeys(this.userTypes);break}else if(this.userTypes[_2]===_1){this.logInfo(_0+"contains userType '"+_2+"', which is"+" not defined for this application (in this.userTypes)."+" Removing userType '"+_2+"' from this.user.userTypes");this.user.userTypes.removeItem(i)}}
if(this.user.userTypes.length<=0){this.logError(_0+"does not contain any userTypes that are defined "+"for this application.  Can't proceed since user cannot perform "+"any operations and cannot see any components");return false}
this.logInfo("Authorized user types for current user: "+this.user.userTypes);return true},isUserOfType:function(_0){if(!this.usingUserTypes())return true;var _1=this.user.userTypes;if(!_1)return false;if(_0=="*")return true;return _1.contains(_0)},userCanCallOperation:function(_0){return this.getAuthorizedOperation(_0,"userCanCallOperation")!=null},bindComponents:function(){for(var _0 in this.components){var _1=this.components[_0];_1.ID=_0}},bindOperations:function(){var _0={},_1=false;for(var _2 in this.operations){var _3=this.operations[_2],_4=true,_5=_3.constraints,_6={},_7=false;_3.ID=_2;var _8=null;if(_3.dataSource)_8=this.getDataSource(_3);if(_3.dataSource!=null&&!_8){this.logError("operation "+_2+" has a dataSource property defined as "+_3.dataSource+".\nThis does not match any available dataSources for this application.\n"+"Not able to bind this operation to any user type.");continue}
if(_5){for(var _9 in _5){if(this.isUserOfType(_9)){isc.addProperties(_6,this.getFieldList(_8,_5[_9]));_7=true}}}else{if(this.isUserOfType("*")){isc.addProperties(_6,this.getFieldList(_8,"*"));_7=true}}
if(!_7)continue;_3.$6y=_6;_0[_2]=_3;_1=true}
if(_1)this.$6w=_0;else this.$6w=null},getOperationFields:function(_0){_0=this.getAuthorizedOperation(_0);return(_0?_0.$6y:null)},getFieldList:function(_0,_1){var _2={};if(_0==null)return null;if(_1=="*"){isc.addProperties(_2,_0.getFields())}else if(isc.isA.String(_1)){_2[_1]=_0.getField(_1)}else if(isc.isAn.Array(_1)){for(var i=0,l=_1.length;i<l;i++){var _3=_1[i],_4=_0.getField(_3);if(!_4){this.logWarn("No such field "+_3+" in datasource "+_0.ID+", proceeding with empty field specification");_4={};_4[this.fieldIdProperty]=_3}
_2[_3]=_4}}
return _2},getComponentValueMap:function(_0,_1,_2,_3,_4,_5){var _6=this.getMainElement(_3);var _7=_6.getID()+".setValueMap('"+_4+"',valueMap);";return this.getValueMap(_0,_1,_2,null,_5,_7)},getValueMap:function(_0,_1,_2,_3,_4,_5){var _6=isc.DataSource.getLocalResultSet(this.getAuthorizedOperation(_0));if(_6==null){if(_4=="")_4=null;var _7={};isc.addProperties(_7,{idProperty:_1,valueProperty:_2,operation:_0,mapName:_3,callback:_5});this.performOperation(_0,_4,'getValueMapReply',_7)}else{var _8=_6.getValueMap(_1,_2,_4);return this.$6z(_3,_8,_5)}},getValueMapReply:function(_0){var _1=_0.results.data,_2=_0.context,_3=_2.idProperty,_4=_2.valueProperty,_5=_2.operation,_6=_2.mapName,_7=_2.callback,_8=this.getDataSource(_2.operation);var _9=isc.LocalResultSet.newInstance({allRows:_1,dataSource:_8,fetchOperation:_5});var _10=_9.getValueMap(_3,_4);return this.$6z(_6,_10,_7)},$6z:function(_0,_1,_2){if(_0){window[_0]=_1;this[_0]=_1}
if(_2){this.fireCallback(_2,"valueMap",_1)}
return _1},viewSelected:function(_0,_1,_2,_3){var _4=this.getSelection(_1);if(_4&&_4.length>0){this.getViewRecords(_4,_0,_2,_3)}},getViewRecords:function(_0,_1,_2,_3){_1=this.getRequiredComponent(_1,'getViewRecords','viewer');if(!_1)return false;if(!_2){this.viewRecords(_1,_0)}else{_2=this.getAuthorizedOperation(_2);var _4=this.intersectKeys(_2,_0);var _5={prompt:(_2.prompt||this.getViewRecordsPrompt),viewer:_1};return this.performOperation(_2,_4,(_3?_3:"getViewRecordsReply"),_5)}
return false},getViewRecordsReply:function(_0){if(_0.results.data){this.viewRecords(_0.context.viewer,_0.results.data)}
return true},viewRecords:function(_0,_1){this.showComponent(_0,_1)},editNew:function(_0,_1,_2){_0=this.getRequiredComponent(_0,'editNew','editor');if(!_0)return false;_1=(_1||_0.newOperation||_0.saveOperation);delete _0.$60;delete _0.$61;return this.editRecord(_2,_0,_1)},doNew:function(_0,_1,_2){return this.editNew(_0,_1,_2)},editSelected:function(_0,_1,_2){var _3=this.getSelection(_1);if(_3&&_3.length>0){return this.editList(_3,_0,_2)}
return false},editList:function(_0,_1,_2){_1=this.getRequiredComponent(_1,'editList','editor');if(!_1)return false;_1.$60=_0;_1.$61=0;this.editRecord(_0[0],_1,_2)},editRecord:function(_0,_1,_2){_1=this.getRequiredComponent(_1,'editRecord','editor');if(!_1)return false;_2=(_2||_1.saveOperation);if(!this.getRequiredOperation(_2,'editRecord'))return false;_1.operation=_1.saveOperation=_2;this.logDebug("editor.operation is now "+_1.operation);_0=isc.addProperties({},_0);var _3=this.getMainElement(_1);if(_3){_3.clearValues()}
this.showComponent(_1,_0)},saveEditor:function(_0,_1,_2,_3){_0=this.getRequiredComponent(_0,'saveEditor','editor');var _4=this.getValidatedValues(_0);if(_4==null)return false;return this.saveEditorValues(_4,_0,_1,_2,_3)},saveEditorValues:function(_0,_1,_2,_3,_4){if(_0==null)return false;_1=this.getRequiredComponent(_1,'saveEditorValues','editor');_2=(_2||_1.saveOperation||_1.operation);_2=this.getRequiredOperation(_2,'saveEditor');if(!_2)return false;var _5;if(!_4)_4={};isc.addProperties(_4,{prompt:(_2.prompt||this.saveEditorPrompt),editor:_1,confirmationMessage:(_4.confirmationMessage===_5?_1.saveConfirmationMessage:_4.confirmationMessage),willHandleError:true});return this.performOperation(_2,_0,_3?_3:"saveEditorReply",_4)},saveEditorReply:function(_0){var _1=_0.context,_2=this.getComponent(_1.editor),_3=_0.results;var _4=this.getMainElement(_2);if(_3.status==isc.RPCManager.errorCodes.VALIDATION_ERROR&&_3.errors){return this.showValidationErrors(_4,_3.errors)}
if(_3.status<0)return isc.RPCManager.handleError(_0);if(_2.exitPage)this.showPage(_2.exitPage);return true},submitEditor:function(_0,_1,_2,_3){_0=this.getRequiredComponent(_0,'submitEditor','editor');var _4=this.getValidatedValues(_0);if(_4==null)return false;return this.submitEditorValues(_4,_0,_1,_2,_3)},submitEditorValues:function(_0,_1,_2,_3,_4){if(_0==null)return false;if(!_4)_4={};isc.addProperties(_4,{directSubmit:true,submitForm:this.getMainElement(_1)});return this.saveEditorValues(_0,_1,_2,_3,_4)},editOtherReply:function(_0){var _1=_0.context,_2=this.getComponent(_1.editor),_3=_0.results;var _4=this.getMainElement(_2);if(_3.status<0&&_3.errors){return this.showValidationErrors(_4,_3.errors)}
if(_3.status<0)return isc.RPCManager.handleError(_0);_4.rememberValues();_2.$60[_2.$61]=_4.getValues();this.editOtherRecord(_2,_2.$62)
return true},editOtherRecord:function(_0,_1){_0=this.getRequiredComponent(_0,'editNextRecord','editor');if(!_0)return false;var _2=this.getMainElement(_0);if(_2&&_2.isVisible()&&_2.valuesHaveChanged()){_0.$62=_1;this.saveEditor(_0,null,"editOtherReply",{confirmationMessage:null});return};if(_1==true){if(_0.$61+1<_0.$60.length){var _3=_0.$60[++_0.$61]
this.editRecord(_3,_0)}else{alert("This is the last selected record.")}}else{if(_0.$61>0){var _4=_0.$60[--_0.$61]
this.editRecord(_4,_0)}else{alert("This is the first selected record.")}}},editNextRecord:function(_0){this.editOtherRecord(_0,true)},editPrevRecord:function(_0){this.editOtherRecord(_0,false)},validateEditor:function(_0,_1,_2,_3){_0=this.getRequiredComponent(_0,'validateEditor','editor');var _4=this.getValidatedValues(_0);if(_4==null)return false;return this.validateEditorValues(_4,_0,_1,_2,_3)},validateEditorValues:function(_0,_1,_2,_3,_4){if(_0==null)return false;_1=this.getRequiredComponent(_1,'validateEditorValues','editor');_2=(_2||_1.validateOperation);_2=this.getRequiredOperation(_2,'validateEditorValues');if(!_2)return false;if(!_4)_4={};isc.addProperties(_4,{editor:_1,values:_0,reviewComponent:_3,prompt:(_2.prompt||this.validateEditorPrompt),willHandleError:true});return this.performOperation(_2,_0,"validateEditorReply",_4)},validateEditorReply:function(_0){var _1=_0.context,_2=this.getComponent(_1.editor),_3=_0.results;var _4=this.getMainElement(_2);if(_3.status<0&&_3.errors){return this.showValidationErrors(_4,_3.errors)}
if(_3.status<0)return isc.RPCManager.handleError(_0);this.showComponent(_1.reviewComponent,_3[0]);return true},insertRecord:function(_0,_1,_2,_3){if(!_3)_3={};isc.addProperties(_3,{prompt:(_3.prompt||_1.prompt||this.insertRecordPrompt),values:_0});return this.performOperation(_1,_0,(_2?_2:null),_3)},updateRecord:function(_0,_1,_2,_3){return this.updateRecords(_0,null,_1,_2,_3)},updateRecords:function(_0,_1,_2,_3,_4){if(!_4)_4={};isc.addProperties(_4,{prompt:(_4.prompt||_2.prompt||this.updateRecordsPrompt),values:_1});return this.performOperation(_2,_0,(_3?_3:null),_4)},printComponentReport:function(_0,_1,_2){if(!isc.isAn.Array(_1))_1=[_1];if(!isc.isAn.Array(_2))_2=[_2];var _3=isc.StringBuffer.newInstance();_3.append("<HTML><TITLE>",_0,"</TITLE>","<BODY BGCOLOR=WHITE>","<TABLE WIDTH=100%><TR>","<TD CLASS=printPageHeader>",_0,"</TD>","<TD ALIGN=RIGHT CLASS=printPageHeader>Report Generated: ",(new Date()).toPrettyString(),"</TD>","<TD CLASS=printCell ALIGN=CENTER>","<A HREF='javascript:void window.opener.isc.Page.print(window)'>Print</A>","&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"," <A HREF='javascript:void window.close()'>Close</A>","</TD></TR>","</TABLE><BR><HR>");for(var i=0;i<_1.length;i++){var _4=this.getMainElement(_1[i]);if(!_4)continue;if(_2[i])_3.append("<DIV CLASS=printHeader>"+_2[i]+"</DIV>");if(_4.getPrintHTML)_3.append(_4.getPrintHTML());else _3.append(_4.getInnerHTML())}
_3.append("</BODY></HTML>");var _5=(isc.Browser.isSafari?"":isc.Page.getURL("[HELPERS]/empty.html")),_6=window.open(_5,"_blank","RESIZABLE,SCROLLBARS");if(window.loadSkin&&!isc.Browser.isSafari){window.loadSkin(_6)}
_6.document.write(_3.toString())
_6.document.close()},saveRecords:function(_0,_1,_2,_3){_1=this.getComponent(_1);if(!_1)return false;if(!_2)_2=_1.saveOperation;if(!_2){this.logError("saveRecords(): no saveOperation specified -- pass one to the function or set one "+" in component "+this.getComponentName(_1)+".");return false}
if(!_3)_3={};isc.addProperties(_3,{prompt:(_3.prompt||_2.prompt||this.saveRecordsPrompt)});return this.performOperation(_2,_0,null,_3)},deleteSelected:function(_0,_1,_2){var _3=this.getSelection(_0);if(!_1)_1=_0.deleteOperation;if(!_1){this.logError("deleteSelected(): no deleteOperation specified -- pass one to the "+"function or set one in component "+this.getComponentName(_0)+".");return false}
if(_3.length>0)this.deleteRecords(_3,_1,_2)},deleteRecords:function(_0,_1,_2){if(!_1)_1="delete";_1=this.getRequiredOperation(_1);if(!_1)return false;if(!_2)_2={};isc.addProperties(_2,{prompt:(_1.prompt||this.deleteRecordsPrompt),confirmationMessage:(_1.confirmationMessage||_2.confirmationMessage)});var _3=isc.RPCManager.startQueue();if(!isc.isAn.Array(_0))_0=[_0];for(var i=0;i<_0.length;i++){this.performOperation(_1,_0[i],null,(i+1==_0.length)?_2:null)}
if(!_3)isc.RPCManager.sendQueue()},getFilterCriteria:function(){var _0={};for(var i=0;i<arguments.length;i++){var _1=arguments[i];if(_1==null)continue;var _2=isc.RPCManager.getMainElement(_1);if(_2)isc.addProperties(_0,_2.getFilterCriteria())}
return _0},getResultSetForFilter:function(_0,_1,_2){_0=this.getRequiredComponent(_0,'getResultSetForFilter','filter');if(!_0)return null;if(!_1)_1=_0.operation;return this.getResultSet(_1,this.getFilterCriteria(_0),_2)},filter:function(_0,_1,_2,_3){var _4=this.getComponent(_0),_5;if((_4==null||_4==_0)&&isc.isAn.Object(_0)){_5=_0}else{_0=this.getRequiredComponent(_0,'doFilter','filter');if(!_0)return false;_5=this.getFilterCriteria(_0);if(!_1)_1=_0.operation;if(!_2)_2=_0.summaryComponent;var _6=_0.emptyMessage;if(!_6&&_0.mainElement)_6=_0.mainElement.emptyMessage;if(_6){var _7=this.getMainElement(_2);if(_7)_7.emptyMessage=_6;else{var _8=this.getComponent(_2);if(!_8.summaryDefaults)_8.summaryDefaults={};_8.summaryDefaults.emptyMessage=_6}}}
this.filterWithCriteria(_5,_1,_2,_3)},filterWithCriteria:function(_0,_1,_2,_3){_2=this.getRequiredComponent(_2,'doFilterWithCriteria','summary');if(!_2)return;var _4=this.getMainElement(_2);if(!_1)_1=_2.operation;_1=this.getAuthorizedOperation(_1,'doFilterWithCriteria');if(!_1)return;if(!_3)_3={};_3.prompt=(_3.prompt||_1.prompt||this.doFilterPrompt);var _5=isc.DataSource.filterCriteriaForFormValues(_0);var _6=(_4?_4.getData():null);if(!isc.isA.ResultSet(_6)||_6.getOperationId("fetch")!=_1.ID)
{this.logInfo("Creating new isc.ResultSet for operation '"+_1.ID+"' with filterValues: "+isc.Comm.serialize(_5));var _7=this.getDataSource(_1);_6=_7.getResultSet({application:this,operation:_1,filter:_5,context:_3});if(_4&&_4.dataFetchDelay!=null){_6.fetchDelay=_4.dataFetchDelay}}else{this.logDebug("Setting filter to: "+isc.Comm.serialize(_5));_6.context=_3;_6.setFilter(_5)}
this.showComponent(_2,_6);var _8,_9,_10;if(_4.getDrawArea)_10=_4.getDrawArea();if(_10!=null){var _11=_4.getDrawArea();_8=_11[0],_9=_11[1]}else{_8=0;_9=1}
var _12=_4.data,_13=_12.fetchDelay;_12.fetchDelay=0;_12.getRange(_8,_9);_12.fetchDelay=_13;return},doFilterWithCriteria:function(_0,_1,_2,_3){return this.filterWithCriteria(_0,_1,_2,_3)},doFilter:function(_0,_1,_2,_3){return this.filter(_0,_1,_2,_3)},getResultSet:function(_0,_1,_2){var _3=this.getDataSource(_0),_4=_3.getResultSet(isc.addProperties({application:this,fetchOperation:this.getAuthorizedOperation(_0),filter:_1},_2));return _4},clearFilter:function(_0,_1,_2,_3){_0=this.getRequiredComponent(_0,'clearFilter','filter');if(!_0)return false;var _4=this.getMainElement(_0);if(_4)_4.clearValues();if(this.autoFilterOnClear)this.doFilter(_0,_1,_2,_3)},doExport:function(_0,_1,_2){_0=this.getRequiredComponent(_0,'doExport','filter');if(!_0)return false;var _3=this.getFilterCriteria(_0);if(!_1)_1=_0.operation;_1=this.getRequiredOperation(_1,'doExport');if(!_1)return;this.doExportWithCriteria(_3,_1,_2)},doExportWithCriteria:function(_0,_1,_2){if(!_2)_2={};_1=this.getAuthorizedOperation(_1);if(!_1){this.logWarn("doExportWithCriteria passed invalid operation '"+_1+"', ignoring");return false}
_2.prompt=(_2.prompt||this.doExportPrompt);_2.downloadResult=true;if(_2.exportFilename==null){if(_1.exportAs=="csv"){_2.exportFilename="results.csv";_2.downloadToNewWindow=false}
if(_1.exportAs=="xml"){_2.exportFilename="results.xml";_2.downloadToNewWindow=true}}
var _3=isc.DataSource.filterCriteriaForFormValues(_0);this.performOperation(_1,_3,null,_2)},loadTree:function(_0,_1,_2){_1=this.getRequiredComponent(_1,'loadTree','tree');var _3=this.getResultTree(_0,_2);this.showComponent(_1,_3)},getResultTree:function(_0,_1){_0=this.getRequiredOperation(_0,'getResultTree');return isc.ResultTree.newInstance({app:this,operation:_0},_1)},showGraph:function(_0,_1){_0=this.getRequiredComponent(_0,'showGraph','graph');if(!_0)return false;var _2=this.getAuthorizedOperation(_2?_2:_0.operation);var _3={prompt:"Getting historical data...",component:_0};return this.performOperation(_2,null,(_1?_1:"getStatisticsReply"),_3)},getStatisticsReply:function(_0){var _1=_0.results.data;if(_1){_1=this.prepareGraphData(_1);this.showComponent(_0.context.component,_1)}
return true},prepareGraphData:function(_0){return _0},performDSOperation:function(_0,_1,_2,_3,_4){if(this.dataSources&&this.dataSources.length>0&&!this.hasDataSource(_0)){this.logError("dataSource argument must be one of the dataSources defined for this"+" RPCManager.");return false}
if(!_4)_4={};if(!_4.application)_4.application=this;_4=isc.FlowMethods.buildContext(_4,_0,_1);return this.performOperation(_4.operation,_2,_3,_4)},performOperation:function(_0,_1,_2,_3){if(!_3)_3={};else if(!isc.isAn.Object(_3)){this.logWarn("performOperation(): passed an invalid context: '"+_3+"', ignoring");return false}
_3.appInstance=this;if(_3.showPrompt==null)_3.showPrompt=true;var _4=this.getAuthorizedOperation(_0);if(!_4){_0={ID:_0,source:"auto"}}else _0=_4;if(_0!=null)_3.operation=_0;if(_2!=null)_3.flowCallback=_2;var _5=this.getDataSource(_0);this.logInfo("performOperation("+_0.ID+")["+_0.type+"] DS:'"+_5.ID+"', "+(isc.isAn.Array(_1)?_1.length:1)+" records"+(this.queuing?", queuing":""));var _6=this.prepareDataSourceData(_0,_1,_3);if(_6==null)_6={};isc.addProperties(_6,{appID:this.ID,operation:_0.ID});if(_0.type=="filter"){if(!_6.operationConfig)_6.operationConfig={};_6.operationConfig.textMatchStyle="substring";_0.type="fetch"}
isc.addProperties(_6,_3.appInputs,_3.parameters);if(_3.startRow!=null)_6.startRow=_3.startRow;if(_3.endRow!=null)_6.endRow=_3.endRow;if(_0.source=="auto")_6.operationSource="auto";var _7=isc.RPCManager.startQueue();_3.operation=_0;_3.data=_6;isc.RPCManager.sendRequest(_3);isc.DataSource.operationSubmitted(_0);if(!_7)isc.RPCManager.queuing=false;if(!isc.RPCManager.queuing)isc.RPCManager.sendQueue();return true},prepareDataSourceData:function(_0,_1,_2){_0=this.getAuthorizedOperation(_0)
var _3=isc.RPCManager.getOperationName(_0);if(!_0){this.logError("No such operation "+_3+".");return null}
var _4=_0.type,_5=isc.DS.$6k(_4);switch(_5){case"fetch":case"remove":_1={where:_1};break;case"add":case"replace":case"validate":_1={values:_1};break;case"update":var _6=_1;var _7=(_2&&_2.values)?_2.values:_1;var _8=this.intersectKeys(_0,_6);if(!_8)return null;if(!_7)return null;_1={where:_8,values:_7};break;default:_1={values:_1};break}
return _1},intersectKeys:function(_0,_1){return isc.applyMask(_1,this.getDataSource(_0).getPrimaryKeyFields())}});isc.$63=["getComponent","getRequiredComponent","addExternalComponent","getComponentName","componentIsOfType","componentTypeToClassMap","componentDrawn","getMainElement","showComponent","showComponents","getSelection","getSelectedRecord","getValidatedValues","showValidationErrors","cancelEditor"];isc.$64={};for(isc.$65=0;isc.$65<isc.$63.length;isc.$65++){isc.$64[isc.$63[isc.$65]]=isc.RPCManager[isc.$63[isc.$65]]}
delete isc.$65;isc.InstantDataApp.addMethods(isc.$64);isc.InstantDataApp.addMethods({userHasType:isc.RPCManager.getInstanceProperty("isUserOfType"),userIsType:isc.RPCManager.getInstanceProperty("isUserOfType")});isc.DynamicForm.addClassMethods({getFilterCriteria:isc.InstantDataApp.getInstanceProperty("getFilterCriteria")});isc.InstantDataApp.addMethods({queueOperations:function(_0){return isc.RPCManager.startQueue(_0)},cancelTransaction:function(_0){return isc.RPCManager.cancelQueue(_0)},performTransaction:function(_0,_1){return isc.RPCManager.sendQueue(_0,_1)}});isc.ClassFactory.defineClass("ResultSet",null,["List","DataModel"]);isc.ResultSet.addClassProperties({UNKNOWN_LENGTH:100000});isc.ResultSet.addProperties({totalRows:isc.ResultSet.UNKNOWN_LENGTH,cachedRows:0,fetchAhead:true,fetchMode:"paged",resultSize:75,fetchDelay:0,useClientSorting:true,useClientFiltering:true});isc.ResultSet.addMethods({init:function(){this.addPropertyList(arguments);isc.ClassFactory.addGlobalID(this);if(this.application==null&&this.app!=null)this.application=this.app;if(this.operation!=null)this.fetchOperation=this.operation;var _0=this.getOperation("fetch");var _1=_0.dataSource;if(!isc.isAn.Array(_1))_1=[_1];for(var i=0;i<_1.length;i++){var _2=isc.DS.get(_1[i]);_2.addResultSet(this);if(!this.dataSource)this.dataSource=_2}
var _3=this.context,_4=_0.resultSize||(_3&&_3.appInputs&&_3.appInputs.operationConfig?_3.appInputs.operationConfig.resultSize:0);if(_4!=null&&_4>0)this.resultSize=_4;if(_0.filterType)this.fetchMode=_0.filterType;if(this.fetchMode=="windowed")this.fetchMode="paged";this.dropCacheOnUpdate=_0.dropCacheOnUpdate;this.context=this.context||{};this.criteria=this.criteria||this.filter||{};if(this.criteria)this.setCriteria(this.criteria);if(this.isLocal()&&this.localData==null&&this.allRows!=null){this.applyFilter()}
if(this.isPaged())this.localData=[]},isPaged:function(){return this.fetchMode=="paged"},isLocal:function(){return this.fetchMode=="local"},allMatchingRowsCached:function(){return(this.localData!=null&&!this.isPaged()||(this.isPaged()&&this.cachedRows==this.totalRows))},allRowsCached:function(){return((this.isLocal()&&this.allRows!=null)||(this.allMatchingRowsCached()&&this.$66))},canSortOnClient:function(){return this.useClientSorting&&this.allMatchingRowsCached()},canFilterOnClient:function(){return this.useClientFiltering&&this.allRowsCached()},getLength:function(){if(this.localData==null)return isc.ResultSet.UNKNOWN_LENGTH;return(this.isPaged()?this.totalRows:this.localData.length)},indexOf:function(_0,_1,_2){if(this.localData==null)return-1;if(Array.isLoading(_0))return-1;var _3=this.localData.indexOf(_0,_1,_2);if(_3!=-1)return _3;return this.getDataSource().findByKeys(_0,this.localData,_1,_2)},slideList:function(_0,_1){return},get:function(_0){if(_0<0){this.logWarn("get: invalid index "+_0);return null}
if(this.localData!=null&&this.localData[_0]!=null)return this.localData[_0];return this.getRange(_0,_0+1)[0]},getRange:function(_0,_1,_2,_3){if(this.isPaged())return this.$67(_0,_1,_2,_3);if(this.localData==null){this.$68(_0,_1);this.localData=[];this.setRangeLoading(_0,_1)}
return this.localData.slice(_0,_1)},lengthIsKnown:function(){return this.localData!=null},rowIsLoaded:function(_0){if(this.localData!=null){var _1=this.localData[_0];if(_1!=null&&!Array.isLoading(_1))return true}
return false},rangeIsLoaded:function(_0,_1){if(this.localData==null)return false;for(var i=_0;i<_1;i++){var _2=this.localData[i];if(_2==null||Array.isLoading(_2))return false}
return true},findLastCached:function(_0,_1){if(!this.rowIsLoaded(_0))return null;if(_1){for(var i=_0;i>=0;i--){var _2=this.localData[i];if(_2==null||Array.isLoading(_2))break}
return i+1}else{var _3=this.getLength();for(var i=_0;i<_3;i++){var _2=this.localData[i];if(_2==null||Array.isLoading(_2))break}
return i-1}},getCachedRange:function(_0){if(_0==null)_0=this.lastRangeStart;if(_0==null)_0=0;if(!this.rowIsLoaded(_0))return null;var _1=this.getLength();if(this.allMatchingRowsCached())return[0,_1-1];var _2=this.findLastCached(_0,true),_3=this.findLastCached(_0);return[_2,_3]},setRangeLoading:function(_0,_1){for(var i=_0;i<_1;i++){if(this.localData[i]==null)this.localData[i]=Array.LOADING}},getServerFilter:function(){if(this.isLocal())return null;return this.criteria},$68:function(){this.fetchTimeout=null;if(this.context.appInputs==null)this.context.appInputs={};var _0=this.context.appInputs.startRow,_1=this.context.appInputs.endRow;this.logInfo("fetching rows "+[_0,_1]+" from server");return this.fetchRemoteData(this.getServerFilter(),_0,_1)},fetchRemoteData:function(_0,_1,_2){var _3=this.getApplication(),_4=this.getOperationId("fetch");_3.performOperation(_4,_0,{caller:this,methodName:"fetchRemoteDataReply"},isc.addProperties({},this.context))},fetchRemoteDataReply:function(_0){var _1=_0.data,_2=_1.length;this.logInfo("Received "+_2+" records from server");if(this.transformData){_1=this.transformData(_1,_0);if(_1.length!=_2){this.logInfo("Transform applied, "+_1.length+" records resulted, from "+_0.startRow+" to "+_0.endRow)}}
var _3=_0.startRow,_4=_0.endRow;this.$69(_1,_0);if(this.dataArrived)this.dataArrived(_3,_4)},$69:function(_0,_1){if(this.isLocal()){this.allRows=_0;this.applyFilter();if(this.useClientSorting)this.$7a();return}else if(!this.isPaged()){this.localData=_0;if(this.canSortOnClient()){this.$7a(this.property,this.$7b,this.$7c)}
this.dataChanged();return}
var _2=_1.context;if(this.dropCacheOnLengthChange&&!this.lengthIsKnown()&&this.totalRows!=_1.totalRows)
{this.logInfo("totalRows changed from "+this.totalRows+" to "+_1.totalRows+", invalidating cache");this.$7d()}
if(this.localData==null)this.localData=[];this.setFullLength(_1.totalRows);this.fillCacheData(_0,_1.startRow);this.logInfo("cached "+_0.getLength()+" rows, from "+_1.startRow+" to "+_1.endRow+" ("+this.totalRows+" total rows, "+this.cachedRows+" cached)");if(this.allMatchingRowsCached()){if(this.allRowsCached()){this.logInfo("Cache for entire DataSource complete")}else{this.logInfo("Cache for current criteria complete")}
if(this.canSortOnClient())this.$7a()}
this.dataChanged()},setCriteria:function(_0){var _1=this.allRowsCached();this.$66=(isc.getKeys(_0).length==0);var _2=this.criteria;this.criteria=_0;if(this.compareCriteria(_2,_0)!=0){if(this.isLocal()||(this.useClientFiltering&&_1)){if(this.allRows!=null)this.applyFilter()}else{this.logInfo("setCriteria: filter criteria changed, invalidating cache");this.invalidateCache()}
return true}
this.logInfo("setCriteria: filter criteria not changed");return false},setFilter:function(_0){return this.setCriteria(_0)},getCriteria:function(){return this.criteria},compareCriteria:function(_0,_1){this.logInfo("Comparing criteria, oldCriteria:\n"+this.echo(_0)+"\nnewCriteria:\n"+this.echo(_1));if(isc.getKeys(_0).length!=isc.getKeys(_1).length)return-1;for(var _2 in _0){var _3=_0[_2],_4=_1[_2];if(isc.isAn.Array(_3)){if(!isc.isAn.Array(_4))return-1;if(_3.length!=_4.length)return-1;if(_3.intersect(_4).length!=_3.length)return-1}else if(_3!=_4){return-1}}
return 0},sortByProperty:function(_0,_1,_2){if(this.$7e==_0&&this.$7b==_1&&this.$7c==_2)return;this.$7e=_0;this.$7b=_1;this.$7c=_2;if(this.isPaged()||!this.useClientSorting){this.context.appInputs=this.context.appInputs||{};this.context.appInputs.sortBy=(this.$7b?"-":"")+this.$7e}
this.$7a()},unsort:function(){if(this.isPaged())return false;this.$7f=null;return true},$7a:function(){var _0=this.$7e,_1=this.$7b;if(this.localData==null||_0==null)return;if(this.canSortOnClient()){this.logInfo("sortByProperty("+_0+", "+_1+"): full cache allows local sort");if(_0!=null){this.localData.sortByProperty(_0,_1,this.$7c);this.dataChanged()}
return}
this.logInfo("sortByProperty("+_0+", "+_1+"): invalidating cache");this.invalidateCache()},handleUpdateSubmitted:function(_0,_1){if(!this.dropCacheOnUpdate&&this.allMatchingRowsCached()&&(this.$7e==null||this.canSortOnClient()))return;this.logInfo("requesting replacement cache");this.context.cacheSyncOperation=true;if(!this.isPaged()){this.$68()}else{this.getRange(this.lastRangeStart,this.lastRangeEnd,true,true)}
delete this.context.cacheSyncOperation},handleUpdate:function(_0,_1,_2){if(isc.$m3)arguments.$fa=this;if(this.dropCacheOnUpdate||_2||!this.allMatchingRowsCached()){this.$7d();return}
this.updateCache(_0,_1);this.dataChanged()},updateCache:function(_0,_1){if(_1==null)return;_0=isc.DS.$6k(_0);if(this.logIsInfoEnabled()){this.logInfo("Updating cache: operationType '"+_0+"', "+_1.length+" rows update data"+(this.logIsDebugEnabled()?":\n"+this.echoAll(_1):""))}
switch(_0){case"remove":this.removeCacheData(_1);break;case"add":this.addCacheData(_1);break;case"replace":case"update":this.updateCacheData(_1);break}
if(this.isLocal())this.applyFilter()},addCacheData:function(_0){if(!isc.isAn.Array(_0))_0=[_0];var _1=this.isLocal()?this.allRows:this.localData;var _2=this.getDataSource();if(isc.DS.isClientOnly(_2)){var _3=_2.getPrimaryKeyFields();for(var _4 in _3){if(_3[_4].type!="sequence")continue;var _5=_1.getProperty(_4).max()+1;for(var i=0;i<_0.length;i++){var _6=_0[i];if(_6[_4]==null)_6[_4]=_5++}}}
this.$7g(_0);this.setFullLength(this.totalRows+_0.length)},updateCacheData:function(_0){if(!isc.isAn.Array(_0))_0=[_0];var _1=this.isLocal()?this.allRows:this.localData,_2=0;var _3=this.dataSource.getPrimaryKeyFields();for(var i=0;i<_0.length;i++){var _4=_0[i],_5=isc.applyMask(_4,_3);var _6=this.dataSource.findByKeys(_5,_1);if(this.dataSource.recordMatchesFilter(_4,this.criteria)){_1.set(_6,_4)}else{if(this.logIsDebugEnabled()){this.logInfo("row dropped:\n"+this.echo(_4)+"\ndidn't match filter: "+this.echo(this.criteria))}
_1.removeAt(_6);_2++}}
this.logDebug("updated cache, "+(_0.length-_2)+" out of "+_0.length+" rows remain in cache");this.setFullLength(this.totalRows-_2);this.$7a()},removeCacheData:function(_0){if(!isc.isAn.Array(_0))_0=[_0];var _1=this.isLocal()?this.allRows:this.localData;for(var i=0;i<_0.length;i++){var _2=this.dataSource.findByKeys(_0[i],_1);_1.removeAt(_2)}
this.setFullLength(this.totalRows-_0.length)},$7g:function(_0){if(_0==null)return;var _1=!this.isLocal();var _2;if(_1)_2=this.dataSource.applyFilter(this.criteria,_0);var _3=this.isLocal()?this.allRows:this.localData;_3.addList(_2);if(this.canSortOnClient())this.$7a()},insertCacheData:function(_0,_1){if(!isc.isAn.Array(_0))_0=[_0];var _2=this.isLocal()?this.allRows:this.localData;_2.addListAt(_0,_1);this.setFullLength(this.totalRows+_0.length)},$7d:function(){this.localData=this.allRows=null;this.cachedRows=0;this.totalRows=isc.ResultSet.UNKNOWN_LENGTH;this.logDebug("Invalidating cache")},findFirstCachedRow:function(_0){for(var i=_0;i>=0;i--){if(this.localData[i]==null)return i+1}
return 0},findLastCachedRow:function(_0){for(var i=_0;i<this.totalRows;i++){if(this.localData[i]==null)return i-1}
return this.totalRows-1},$67:function(_0,_1,_2,_3){if(_0<0||_1<0){this.logWarn("getRange("+_0+", "+_1+"): negative indices not supported, clamping start to 0");if(_0<0)_0=0}
if(_1<=_0){this.logDebug("getRange("+_0+", "+_1+"): returning empty list");return[]}
if(!_2&&this.lengthIsKnown()){var _4=this.getLength();if(_0>_4-1){this.logWarn("getRange("+_0+", "+_1+"): start beyond end of rows, returning empty list");return[]}else if(_1>_4){_1=_4}}
if(this.localData==null)this.localData=[];if(_2){this.realCache=this.localData;this.localData=[]}
var _5=this.localData;this.lastRangeStart=_0;this.lastRangeEnd=_1;var _6,_7,_8;for(var i=_0;i<_1;i++){if(_5[i]==null){_8=true;if(_6==null)_6=i;if(_7==null||_7<i)_7=i}}
if(!_8){this.logDebug("getRange("+_0+", "+_1+") satisfied from cache");return _5.slice(_0,_1)}
var _9,_10;if(this.fetchAhead){var _11=this.$7h(_0,_1,_6,_7);_9=_11[0];_10=_11[1]}else{_9=_6;_10=_7+1}
if(this.fetchTimeout){isc.Timer.clear(this.fetchTimeout);this.fetchTimeout=null;for(var i=this.context.appInputs.startRow;i<this.context.appInputs.endRow;i++){if(Array.isLoading(_5[i]))_5[i]=null}}
var _12={startRow:_9,endRow:_10};if(this.context.appInputs){this.context.appInputs=isc.addProperties(this.context.appInputs,_12)}else{this.context.appInputs=_12}
if(_3||this.fetchDelay==0){this.$68()}else{this.fetchTimeout=isc.Timer.setTimeout(this.getID()+".$68()",this.fetchDelay)}
if(this.fetchAhead){this.setRangeLoading(_9,_10)}
var _13=this.localData.slice(_0,_1);if(_2){this.localData=this.realCache;this.realCache=null}
return _13},$7h:function(_0,_1,_2,_3){var _4=this.localData,_5=_3-_2,_6=Math.floor((this.resultSize-_5)/2),_7=Math.max(0,_2-_6),_8=Math.min(this.getLength(),_3+_6);for(var i=_7;i<=_2;i++){var _9=_4[i];if(_9==null||Array.isLoading(_9))break}
_2=i;for(var i=_8;i>=_3;i--){var _9=_4[i];if(_9==null||Array.isLoading(_9))break}
_3=i;this.logDebug("getRange("+[_0,_1]+"), cache check: "+[_7,_8]+" firstMissingRow: "+_2+" lastMissingRow: "+_3);var _10,_11;if(_2==0||(_2>_7&&_3==_8))
{this.logDebug("getRange: guessing forward scrolling");_10=_2;_11=_10+this.resultSize;if(_11<_1)_11=_1}else if(_2==_7&&_3<_8){this.logDebug("getRange: guessing backward scrolling");_11=_3+1;_10=_11-this.resultSize;if(_10<0)_10=0;if(_10>_0)_10=_0}else{this.logDebug("getRange: no scrolling direction detected");_10=_7;_11=_8;if(_10>_0)_10=_0;if(_11<_1)_11=_1}
for(var i=_10;i<_7;i++){var _9=_4[i];if(_9==null||Array.isLoading(_9))break}
_10=i;for(var i=_11-1;i>_8;i--){var _9=_4[i];if(_9==null||Array.isLoading(_9))break}
_11=i+1;this.logInfo("getRange("+_0+", "+_1+") will fetch from "+_10+" to "+_11);return[_10,_11]},applyFilter:function(){this.localData=this.dataSource.applyFilter(this.criteria,this.allRows);this.logInfo("Local filter applied: "+this.localData.length+" of "+this.allRows.length+" records matched filter:"+isc.Comm.serialize(this.criteria));if(this.dataArrived)this.dataArrived(0,this.localData.length-1);this.dataChanged()},getValueMap:function(_0,_1,_2){this.logInfo("asked for valueMap '"+_0+"' -> '"+_1+"'");if(!this.allRows){this.logWarn("asked for valueMap before data has been loaded");return{}}
if(!_2)_2=this.criteria;var _3={};var _4=this.allRows;for(var i=0;i<_4.length;i++){var _5=_4[i];if(_5[_0]){var _6=true;if(_2){for(var _7 in _2){if(""+_5[_7]!=""+_2[_7]){_6=false;break}}}
if(_6)_3[_5[_0]]=_5[_1]}}
return _3},getValuesList:function(_0){this.logInfo("asked for valuesList for property '"+_0+"'");if(this.isLocal()){if(!this.allRows){this.logWarn("asked for valuesList before data has been loaded");return[]}
var _1=this.allRows.getProperty(_0);if(!_1)return[];return _1.getUniqueItems()}
var _2=this.getCachedRange(),_3=[];for(var i=_2[0];i<=_2[1];i++){var _4=this.get(i);if(!_3.contains(_4[_0]))_3[_3.length]=_4[_0]}
return _3},fillCacheData:function(_0,_1){if(_1==null)_1=0;this.logDebug("integrating "+_0.length+" rows into cache at position "+_1);if(this.localData==null)this.localData=[];this.localData.length=this.getLength();for(var i=0;i<_0.length;i++){var _2=_1+i,_3=this.localData[_2];if(_3==null||Array.isLoading(_3)){this.cachedRows++}
this.localData[_2]=_0[i]}
if(this.allRowsCached())this.allRows=this.localData},setFullLength:function(_0){this.totalRows=_0;if(this.localData!=null)this.localData.length=_0},invalidateCache:function(){this.$7d();this.dataChanged()},getNewSelection:function(_0){var _1=this.getDataSource().selectionClass||"Selection";return isc.ClassFactory.getClass(_1).create(_0)}});isc.ResultSet.registerStringMethods({transformData:"newData,operationResult",dataArrived:"startRow,endRow"});isc.ClassFactory.defineClass("LocalResultSet",isc.ResultSet);isc.LocalResultSet.addProperties({fetchMode:"local"});isc.ClassFactory.defineClass("WindowedResultSet",isc.ResultSet);isc.WindowedResultSet.addProperties({fetchMode:"paged"});isc.ClassFactory.defineClass("ResultTree",isc.Tree);isc.ResultTree.addProperties({nameProperty:"$7i",nodeTypeProperty:"nodeType",childTypeProperty:"childType"});isc.ResultTree.addMethods({init:function(){this.Super("init",arguments);if(!this.baseCriteria)this.baseCriteria={};this.dataSource=this.dataSources;if(isc.isAn.Array(this.dataSource))this.dataSource=this.dataSources[0];this.dropCacheOnUpdate=this.operation.dropCacheOnUpdate;this.defaultLoadState=(this.operation.loadDataOnDemand?isc.Tree.UNLOADED:isc.Tree.LOADED)},getTreeRelationship:function(_0){var _1=this.getChildDataSource(_0);var _2=_1.getTreeRelationship();return _2},getChildDataSource:function(_0,_1){var _2=_0[this.childTypeProperty];if(_2!=null)return isc.DS.get(_2);var _1=_1||this.getNodeDataSource(_0);if(_1==null||!this.isMultiDSTree())return this.getRootDataSource();var _3=this.treeRelations,_4=_1.getChildDataSources();if(_3){_2=_3[_1.ID];if(_2!=null)return isc.DS.get(_2)}
if(_4!=null)return _4[0]},getNodeDataSource:function(_0){var _1=_0[this.nodeTypeProperty];if(_1==null){var _2=this.getParent(_0);if(_2==null){return null}else if(_2==this.root){_1=this.getRootDataSource().ID}else{_1=_2.$7j;if(_1==null)_1=this.getRootDataSource().ID}}
return isc.DataSource.getDataSource(_1)},isMultiDSTree:function(){return this.multiDSTree||this.treeRelations!=null},getRootDataSource:function(){return isc.DataSource.getDataSource(this.operation.dataSource||this.dataSource)},getBaseCriteria:function(_0,_1,_2){if(this.getRootDataSource()==_0)return this.baseCriteria;return null},getOperationId:function(_0,_1,_2){var _3=this.getOperation(_0,_1,_2);return _3==null?null:_3.ID},getOperation:function(_0,_1,_2){if(this.getRootDataSource()==_0)return this.operation;return isc.DataSource.makeDefaultOperation(_0,"select",null,this.app)},loadChildren:function(_0){var _1=(_0==null||_0==this.root),_2,_3,_4;if(_1&&this.isMultiDSTree()){_3=this.getRootDataSource();_2={childDS:_3}}else{_2=this.getTreeRelationship(_0);_3=_2.childDS;_4=_2.parentDS}
this.logInfo("parent id: "+(_1?"[root]":_0[_2.idField])+" (type: "+(_1?"[root]":_4.ID)+")"+" has childDS: "+_3.ID+", relationship: "+this.echo(_2));_0.$7j=_3.ID;var _5=this.getOperation(_3,_4,_0);var _6=isc.addProperties({},this.getBaseCriteria(_3,_4,_0));if(_1&&this.isMultiDSTree()){}else if(this.operation.loadDataOnDemand){_6[_2.parentIdField]=(_1?_2.rootValue:_0[_2.idField])}else{this.defaultLoadState=isc.Tree.LOADED}
var _7=isc.addProperties({parentNode:_0,relationship:_2},this.context);if(_0!=null)this.setLoadState(_0,isc.Tree.LOADING);this.app.performOperation(_5,_6,{caller:this,methodName:'loadChildrenReply'},_7)},loadChildrenReply:function(_0){var _1=_0.context;var _2=_1.parentNode;if(_2!=null){this.setLoadState(_2,isc.Tree.LOADED)}
var _3=_1.relationship,_4=_0.results.data;if(_4.length==0){this.dataChanged();return}
if(this.operation.loadDataOnDemand){var _2=_1.parentNode;var _5=(this.isMultiDSTree()?_3.childDS.getPrimaryKeyFieldNames()[0]:_3.idField);var _6=_3.isFolderProperty;for(var i=0;i<_4.length;i++){var _7=_4[i];_7[this.nameProperty]=""+_7[_3.idField];var _8;if(this.isMultiDSTree()){var _9=this.getChildDataSource(_7,_3.childDS);_8=(_9!=null)}else{_8=(_6==null||_7[_6])}
if(_8&&!_7[this.nameProperty].endsWith("/")){_7[this.nameProperty]+="/"}
this.add(_7,_2)}}else{this.connectByParentId(_4,_3.idField,_3.parentIdField,_3.rootValue,_3.isFolderProperty)}
this.dataChanged()},getTitle:function(_0){var _1=this.getNodeDataSource(_0),_2=_0[_1.getTitleField()];if(_2!=null)return _2;return _0.name||_0.id}});isc.ClassFactory.defineClass("FlowMethods");isc.FlowMethods.addClassMethods({buildContext:function(_0,_1,_2){if(!_0)_0={};if(!_0.application)_0.application=isc.InstantDataApp.getDefaultApplication();if(isc.isA.String(_0.application))_0.application=window[_0.application];if(_0.operationConfig){if(_1){_0.operationConfig.dataSource=(isc.isA.String(_1)?_1:_1.ID)}
_0.operationConfig.operationType=_2;_0.appInputs=_0.appInputs||{};_0.appInputs.operationConfig=_0.operationConfig;delete _0.operationConfig}
var _3=_0.operation;if(!_3||(isc.isA.String(_3)&&_0.application.getAuthorizedOperation(_3)==null))
{if(isc.isA.DataSource(_1))_1=_1.getID();if(_1){_0.operation=isc.DataSource.makeDefaultOperation(_1,_2,null,_0.application,_3)}}
return _0}});isc.InstantDataApp.addClassMethods({buildContext:isc.FlowMethods.buildContext});isc.Canvas.addMethods({buildContext:function(_0,_1,_2){if(!_0)_0={};if(_2)_0.afterFlowCallback=_2;var _3=_0.operationConfig=_0.operationConfig||{};if(_1=="filter"){_1="fetch";_3.textMatchStyle="substring"}
if(this.textMatchStyle!=null)_3.textMatchStyle=this.textMatchStyle;_1=isc.DS.$6k(_1);if(_1=="fetch"){if(_3.resultSize==null&&this.dataPageSize!=null){_3.resultSize=this.dataPageSize}}
if(this.loadDataOnDemand!=null)_3.loadDataOnDemand=this.loadDataOnDemand;var _4=_0.operation;if(_4==null){switch(_1){case"fetch":_4=this.fetchOperation;break;case"add":_4=this.addOperation||this.saveOperation;break;case"update":_4=this.updateOperation||this.saveOperation;break;case"remove":_4=this.removeOperation||this.deleteOperation;break;case"validate":_4=this.validateOperation;break}
_0.operation=_4||this.operation}
return isc.FlowMethods.buildContext(_0,this.dataSource,_1)}});isc.ValuesManager.addMethods({buildContext:isc.Canvas.getInstanceProperty("buildContext")});isc.ClassFactory.defineInterface("EditorFlowMethods");isc.EditorFlowMethods.addMethods({filterData:function(_0,_1){_1=this.buildContext(_1,"filter");_1.application.filter(this.getID(),_1.operation,_0,_1)},clearCriteria:function(_0,_1){_1=this.buildContext(_1,"filter");_1.application.clearFilter(this.getID(),_1.operation,_0,_1)},doExport:function(_0,_1){var _2="filter";if(_0){var _3=_0.getData();if(_3&&isc.isA.ResultSet(_3))_2=_3.operation.type}
_1=this.buildContext(_1,this,_2);_1.application.doExport(this.getID(),_1.operation,_1)},save:function(_0){return this.saveData(_0)},editSelected:function(_0,_1){return this.editSelectedData(_0,_1)},editNew:function(_0,_1){return this.editNewRecord(_0,_1)},editNewRecord:function(_0){this.saveOperationType="add";var _1=this.buildContext(_1,this.saveOperationType);_1.application.editNew(this.getID(),_1.operation,_0)},editRecord:function(_0){this.saveOperationType="update";var _1=this.buildContext(_1,this.saveOperationType);_1.application.editRecord(_0,this.getID(),_1.operation)},editSelectedData:function(_0){this.saveOperationType="update";var _1=this.buildContext(_1,this.saveOperationType);_1.application.editSelected(this.getID(),_0,_1.operation,_1)},editList:function(_0){this.saveOperationType="update";var _1=this.buildContext(_1,this.saveOperationType);_1.application.editList(_0,this.getID(),_1.operation)},editNextRecord:function(){var _0=this.buildContext(_0,this.saveOperationType);_0.application.editNextRecord(this.getID())},editPrevRecord:function(){var _0=this.buildContext(_0,this.saveOperationType);_0.application.editPrevRecord(this.getID())},saveData:function(_0,_1){if(_1==null&&isc.isAn.Object(_0)&&_0.methodName==null)
{_1=_0;_0=null}
var _2;if(!_1||!_1.operation){var _2=(_1&&_1.operationType)?_1.operationType:this.saveOperationType;if(!_2){var _3=false;if(this.$2d!=null){for(var _4 in this.$2d){if(this.$2d[_4]&&!isc.isAn.emptyString(this.$2d[_4]))
{_3=true}}}
if(_3)_2="update";else _2="add"}}
_1=this.buildContext(_1,_2,_0);var _5=_1.application;if(isc.isA.DynamicForm(this)&&this.isMultipart()){_5.submitEditor(this.getID(),_1.operation,_1.callback,_1)}else{_5.saveEditor(this.getID(),_1.operation,_1.callback,_1)}}});isc.ClassFactory.mixInInterface("DynamicForm","EditorFlowMethods");isc.ClassFactory.mixInInterface("ValuesManager","EditorFlowMethods");isc.TreeGrid.addMethods({fetchData:function(_0,_1,_2){if(_2==null&&isc.isAn.Object(_1)&&_1.methodName==null)
{_2=_1;_1=null}
_2=this.buildContext(_2,"fetch",_1);var _3=isc.addProperties({},this.treeProperties,_2.treeProperties);_3.baseCriteria=_0;_3.context=_2;if(this.treeDataRelations)_3.treeRelations=this.treeDataRelations;if(this.multiDSTree!=null)_3.multiDSTree=this.multiDSTree;_2.application.loadTree(_2.operation,this.getID(),_3)}});isc.DetailViewer.addMethods({viewSelectedData:function(_0,_1,_2){_2=_2||{};if(_2.application==null)
_2.application=isc.InstantDataApp.getDefaultApplication();_2.application.viewSelected(this.getID(),_0,_2.operation,_2.callback)},viewSelected:function(_0,_1){return this.viewSelectedData(_0,_1)}});isc.Canvas.addClassProperties({$7k:{width:8,height:8,overflow:"hidden",backgroundColor:"black",canDrag:true,canDragResize:true,getEventEdge:function(){return this.edge},autoDraw:false}});isc.Canvas.addClassMethods({$7l:function(){var _0=isc.Canvas.getInstanceProperty("edgeCursorMap"),_1={};for(var _2 in _0){_1[_2]=isc.Canvas.create({ID:"isc_resizeThumb_"+_2,edge:_2},this.$7k)}
isc.Canvas.$7m=_1},showResizeThumbs:function(_0){if(!_0)return;if(!isc.Canvas.$7m)isc.Canvas.$7l();var _1=isc.Canvas.$7k.width,_2=isc.Canvas.$7m;var _3=_0.getPageRect(),_4=_3[0],_5=_3[1],_6=_3[2],_7=_3[3],_8=_4+(_6/ 2)-(_1/ 2),_9=_5+(_7/ 2)-(_1/ 2);_2.T.moveTo(_8,_5-_1);_2.B.moveTo(_8,_5+_7);_2.L.moveTo(_4-_1,_9);_2.R.moveTo(_4+_6,_9);_2.TL.moveTo(_4-_1,_5-_1);_2.TR.moveTo(_4+_6,_5-_1);_2.BL.moveTo(_4-_1,_5+_7);_2.BR.moveTo(_4+_6,_5+_7);for(var _10 in _2){var _11=_2[_10];_11.dragTarget=_0;_11.show()}
this.$oe=_0},hideResizeThumbs:function(){var _0=this.$7m;for(var _1 in _0){_0[_1].hide()}
this.$oe=null}});isc.Canvas.addProperties({editMaskDefaults:{draw:function(){this.Super("draw",arguments);this.observe(this.masterElement,"setZIndex","observer.moveAbove(observed)");isc.Canvas.showResizeThumbs(this);this.observe(this.masterElement,"setPrompt","observer.setPrompt(observed.prompt)");return this},hide:function(){this.Super("hide",arguments);if(isc.Canvas.$oe==this)isc.Canvas.hideResizeThumbs()},bringToFront:function(){},mouseDown:function(){this.Super("mouseDown",arguments);return isc.EH.STOP_BUBBLING},mouseUp:function(){this.Super("mouseUp",arguments);return isc.EH.STOP_BUBBLING},click:function(){isc.Canvas.showResizeThumbs(this);return isc.EH.STOP_BUBBLING},doubleClick:function(){this.$ld.bringToFront();return this.click()},canDrag:true,canDragReposition:true,setDragTracker:function(){return isc.EH.STOP_BUBBLING},moved:function(){this.Super("moved",arguments);var _0=this.masterElement;if(_0){var _1=this.getOffsetLeft()-_0.getLeft();var _2=this.getOffsetTop()-_0.getTop();this.$mm=false;_0.moveTo(this.getOffsetLeft(),this.getOffsetTop());this.$mm=true;var _3=this.parentElement.selectedComponents;if(_3.length>0&&_3.contains(this.$ld)){for(var i=0;i<_3.length;i++){if(_3[i]._eventMask!=this){_3[i].moveBy(_1,_2)}}}}
if(isc.Canvas.$oe==this)isc.Canvas.showResizeThumbs(this)},resized:function(){this.Super("resized",arguments);if(this.$7n)return;this.$7n=true;var _0=this.masterElement;if(_0){this.$le=false;_0.resizeTo(this.getWidth(),this.getHeight());this.$le=true;_0.redrawIfDirty();this.resizeTo(_0.getVisibleWidth(),_0.getVisibleHeight())}
isc.Canvas.showResizeThumbs(this);this.$7n=false},showContextMenu:function(){var _0;if(this.parentElement.selectedComponents.length>0){_0=this.SelectionAreaMenuItems}else{_0=this.standardMenuItems.duplicate();if(this.masterElement.editMenuItems!=null){_0.addList(this.masterElement.editMenuItems)}}
if(!this.contextMenu)this.contextMenu=isc.Menu.create({});this.contextMenu.setData(_0);this.contextMenu.showContextMenu(this.masterElement);return false},standardMenuItems:[{title:"Remove",click:"target.destroy()"},{title:"Bring to Front",click:"target.bringToFront()"},{title:"Send to Back",click:"target.sendToBack()"}],SelectionAreaMenuItems:[{title:"Remove Selected Items",click:"target.parentElement.removeSelection(target)"}]}});isc.Canvas.addMethods({setEditingMode:function(_0){this.setEditMode(_0)},setEditMode:function(_0){if(_0==null)_0=true;if(this.editingOn==_0)return;this.editingOn=_0;if(this.editingOn){this.showEditMask()}else{this.hideEditMask()}},showEditMask:function(){var _0=this.getID()+":<br>"+this.src;if(!this.$7o){var _1={};if(isc.isA.SVG(this)&&isc.Browser.isIE){isc.addProperties(_1,{backgroundColor:"gray",mouseOut:function(){this.$ld.Super("$li")},contents:isc.Canvas.spacerHTML(10000,10000,_0)})}
var _2=isc.addProperties({},this.editMaskDefaults,this.editMask,{keepInParentRect:this.keepInParentRect},_1);this.$7o=isc.EH.makeEventMask(this,_2)}
this.$7o.show();if(isc.isA.SVG(this)){if(isc.Browser.isIE)this.showNativeMask();else{this.setBackgroundColor("gray");this.setContents(_0)}}},hideEditMask:function(){this.$7o.hide()}});isc.ClassFactory.defineInterface("EditContext");isc.EditContext.addMethods({getEditComponents:function(){return this.editComponents},getEditDataSource:function(_0){return isc.DataSource.getDataSource(_0.editDataSource||_0.Class||this.editDataSource)},$7p:function(_0){var _1=[];_1.addList(_0.baseEditFields);_1.addList(_0.editFields);for(var i=0;i<_1.length;i++){var _2=_1[i];if(_2.visible==null)_2.visible=true}
if(_1.length==0){_1=this.getEditDataSource(_0).getFields();_1=isc.getValues(_1)}
return _1},getEditFieldsList:function(_0){var _1=[],_2=this.$7p(_0);for(var i=0;i<_2.length;i++){var _3=_2[i];if(isc.isAn.Object(_3)){_1.add(_3.name)}else{_1.add(_3)}}
return _1},getEditFields:function(_0){var _1=this.$7p(_0);for(var i=0;i<_1.length;i++){var _2=_1[i];if(isc.isA.String(_2))_2={name:_2};if(_2.visible==null)_2.visible=true;_1[i]=_2}
return _1},serializeEditComponents:function(){var _0=this.getEditComponents(),_1=[];if(!_0)return[];for(var i=0;i<_0.length;i++){var _2=_0[i].liveObject,_3=_2.getUniqueProperties(),_4=this.getEditFieldsList(_2);_3._constructor=_2.Class;_3=isc.applyMask(_3,_4);_1.add(_3)}
return _1}});isc.ClassFactory.defineInterface("Palette");isc.Palette.addMethods({getConstructorData:function(_0){if(!_0)_0=this.getDragData();if(isc.isAn.Array(_0))_0=_0[0];var _1={},_2=_0.type||_0.name,_3=_1.type=_1._constructor=(_2.endsWith("/")?_2.substring(0,_2.length-1):_2);var _4=_0.isCanvas!=null?_0.isCanvas:true;_1.isCanvas=_4;if(_0.defaults)isc.addProperties(_1,_0.defaults);if(_0.name.endsWith("/"))_1.$7q+="/";return _1},makeNewComponent:function(_0){var _1=_0._constructor;if(this.typeCount==null)this.typeCount={};if(this.typeCount[_1]==null)this.typeCount[_1]=0;var _2=this.typeCount[_1]++,_3=_1+_2;_0.ID=_3;var _4,_5;if(isc.ClassFactory.getClass(_0._constructor)){_4=isc.addProperties({ID:_3,autoDraw:false},this.componentDefaults,_0);_5=isc.ClassFactory.newInstance(_4)}else{_4=isc.addProperties({name:_3,title:_3},this.fieldDefaults||this.componentDefaults,_0);_5=isc.clone(_4)}
_0.liveObject=_5;_0.initData=_4;this.logInfo("palette creating component, type: "+_0.type+", ID: "+_0.ID+", liveObject: "+this.echoLeaf(_5),"editing");return _0}});isc.ClassFactory.defineClass("TreePalette","TreeGrid","Palette");isc.TreePalette.addProperties({canDragRecordsOut:true});isc.TreePalette.addMethods({transferDragData:function(){return[this.makeNewComponent(this.getConstructorData(this.getDragData()))]}});isc.ClassFactory.defineClass("EditPane","Canvas","EditContext");isc.EditPane.addProperties({canAcceptDrop:true,contextMenu:{autoDraw:false,data:[{title:"Clear",click:"target.removeAllChildren()"}]},editingOn:true,canDrag:true,dragAppearance:"none",overflow:"hidden",selectedComponents:[]});isc.EditPane.addMethods({click:function(){isc.Canvas.hideResizeThumbs()},setEditMode:function(_0){if(_0==null)_0=true;if(this.editingOn==_0)return;this.editingOn=_0;var _1=this.editComponents.getProperty("liveObject");_1.map("setEditMode",_0)},drop:function(){var _0=isc.EH.dragTarget;if(!_0.isA("Palette"))return this.Super("drop",arguments);var _1=_0.transferDragData(),_2=(isc.isAn.Array(_1)?_1[0]:_1);if(!_2)return false;this.addComponentAtCursor(_2);return isc.EH.STOP_BUBBLING},addComponent:function(_0){this.logInfo("EditPane adding component: "+this.echoLeaf(_0),"editing");if(this.editComponents==null)this.editComponents=[];this.editComponents.add(_0);var _1=_0.liveObject;this.addChild(_1);_1.setEditingMode()},addComponentAtCursor:function(_0){this.addComponent(_0);var _1=_0.liveObject;_1.moveTo(this.getOffsetX(),this.getOffsetY())},removeChild:function(_0,_1){this.Super("removeChild",arguments);if(this.editComponents==null)this.editComponents=[];this.editComponents.removeWhere("ID",_0.getID());this.selectedComponents.remove(_0)},removeAllChildren:function(){if(!this.children)return;var _0=[];for(var i=0;i<this.children.length;i++){if(this.children[i]._eventMask)_0.add(this.children[i])}
for(var i=0;i<_0.length;i++){_0[i].destroy()}},removeSelection:function(_0){if(this.selectedComponents.length>0){while(this.selectedComponents.length>0){this.selectedComponents[0].destroy()}}else{_0.destroy()}},mouseDown:function(){if(!this.editingOn)return;var _0=isc.EH.getTarget();if(this.selector==null){this.selector=isc.Canvas.create({autoDraw:false,keepInParentRect:true,left:isc.EH.getX(),top:isc.EH.getY(),redrawOnResize:false,overflow:"hidden",border:"1px solid black"});this.addChild(this.selector)}
this.startX=this.getOffsetX();this.startY=this.getOffsetY();this.resizeSelector();this.selector.show();this.updateCurrentSelection()},dragMove:function(){this.resizeSelector()},mouseUp:function(){if(this.selector)this.selector.hide()},dragStop:function(){this.selector.hide()},setOutline:function(_0){if(!_0)return;if(!isc.isAn.Array(_0))_0=[_0];for(var i=0;i<_0.length;i++){_0[i]._eventMask.setBorder("2px dashed red")}},clearOutline:function(_0){if(!_0)return;if(!isc.isAn.Array(_0))_0=[_0];for(var i=0;i<_0.length;i++){_0[i]._eventMask.setBorder("none")}},updateCurrentSelection:function(){if(!this.children)return;var _0=this.selectedComponents;this.selectedComponents=[];for(var i=0;i<this.children.length;i++){var _1=this.children[i];if(this.selector.intersects(_1)){_1=this.deriveSelectedComponent(_1);if(_1&&!this.selectedComponents.contains(_1)){this.selectedComponents.add(_1)}}}
this.setOutline(this.selectedComponents);_0.removeList(this.selectedComponents);this.clearOutline(_0);var _2=this.selectedComponents.getProperty("ID");window.status=_2.length?"Current Selection: "+_2:""},deriveSelectedComponent:function(_0){if(_0.masterElement)return this.deriveSelectedComponent(_0.masterElement);if(!_0.parentElement||_0.parentElement==this){if(_0._eventMask)return _0;return null}
return this.deriveSelectedComponent(_0.parentElement)},resizeSelector:function(){var x=this.getOffsetX(),y=this.getOffsetY();if(this.selector.keepInParentRect){if(x<0)x=0;var _0=this.selector.parentElement.getVisibleHeight();if(y>_0)y=_0}
this.selector.resizeTo(Math.abs(x-this.startX),Math.abs(y-this.startY));if(x<this.startX)this.selector.setLeft(x);else this.selector.setLeft(this.startX);if(y<this.startY)this.selector.setTop(y);else this.selector.setTop(this.startY);this.updateCurrentSelection()}});isc.ClassFactory.defineClass("EditTree","TreeGrid","EditContext");isc.EditTree.addProperties({canDragRecordsOut:false,canAcceptDroppedRecords:true,canReorderRecords:true,fields:[{name:"ID",title:"ID",width:"*"},{name:"type",title:"Class",width:"*"}],selectionType:isc.Selection.SINGLE});isc.EditTree.addMethods({folderDrop:function(_0,_1,_2,_3){if(_3!=this&&!_3.isA("Palette")){return this.Super("drop",arguments)}
if(_3!=this){_0=_3.transferDragData()}
var _4=(isc.isAn.Array(_0)?_0[0]:_0);this.logInfo("sourceWidget is a Palette, dropped node of type: "+_4.type,"editing");if(_4.type=="DataSource"){this.$7r=_1;this.$7s=_4;this.$7t=_2;this.logInfo("fetching dataSource: "+_4.liveObject.dsName,"editing");isc.DS.get(_4.liveObject.dsName,this.getID()+".completeBind(ds)");return}
if(_3==this)this.removeComponent(_4,_1,_2);this.addComponent(_4,_1,_2)},addComponent:function(_0,_1,_2){var _3=_1.type,_4=_1.liveObject,_5=_0.liveObject;if(_0.type=="Menu"){if(_1.isCanvas)_4.contextMenu=_5}else if(_0.isCanvas){if(_1.type.endsWith("Layout")){_4.addMember(_5,_2)}else if(_1.type=="Window"){_4.addItem(_5)}else if(_1.type=="Canvas"){_4.addChild(_5)}else if(_1.type=="Tab"){_4.pane.addChild(_5)}else{return}}else if(_0.type=="Tab"){}else if(_0.type.endsWith("Field")||_0.type.endsWith("Item")){if(_0.type.endsWith("Item")){_5.editorType=_0.type}
_4.addField(_5,_2)}
this.data.add(_0,_1,_2);this.logInfo("added node to EditTree, path: "+_0.path+" with live object: "+this.echoLeaf(_5),"editing")},completeBind:function(ds){var _0=this.$7r,_1=_0.liveObject,_2=this.$7s;_2.liveObject=ds;this.data.add(_2,_0,this.$7t);_1.setDataSource(ds);if(isc.isA.Function(_1.select))_1.select()},removeComponent:function(_0){this.data.remove(_0);var _1=this.data.getParent(_0),_2=_1?_1.type:null,_3=_1?_1.liveObject:null;if(_0.isCanvas){var _4=_0.liveObject;if(_2=="Window"){_3.removeItem(_4)}else{_4.deparent()}}else{_3.removeField(_0.initData.name)}},destroyComponent:function(_0){this.removeComponent(_0);if(_0.liveObject.destroy)_0.liveObject.destroy()},serializeComponents:function(){var _0="";this.saveNodes=[];this.getSerializeableTree();for(var i=0;i<this.saveNodes.length;i++){var _1=this.saveNodes[i];_0+=isc.Comm.xmlSerialize(_1._constructor,_1,true)+"\n\n"}
return _0},getSerializeableTree:function(_0){_0=_0||this.data.root;var _1=_0.type,_2=this.data.getChildren(_0),_3=_0.liveObject.children;if((_1.endsWith("Layout")||_1=="Window"||_1=="Canvas")&&(_3!=null&&_3.length>0))
{this.map("getSerializeableTree",_2);var _4=_3.getProperty("ID");var _5=(_1.endsWith("Layout")?"members":_1=="Window"?"items":_1=="Canvas"?"children":"");_0.initData[_5]=_4;this.saveNodes.add(_0.initData)}else{var _6=_2.getProperty("initData");_0.initData.fields=_6;this.saveNodes.add(_0.initData)}
this.saveNodes.last()._constructor=_0.type}});isc.ClassFactory.defineClass("RecordScrollbar","Scrollbar");isc.RecordScrollbar.addProperties({position:0});isc.RecordScrollbar.addMethods({initWidget:function(){this.setData();this.Super(this.$f);this.$7u=true;this.moveThumb()},setData:function(_0){if(this.data!=null&&this.isObserving(this.data,"dataChanged")){this.ignore(this.data,"dataChanged")}
if(_0!=null)this.data=_0;this.observe(this.data,"dataChanged","observer.setThumb()");this.setThumb()},setThumb:function(){if(!this.$7u)return;if(this.isDrawn()&&this.thumb.isDrawn())this.thumb.moveAbove(this);var _0=this.trackSize();if(this.data!=null&&this.data.getLength()>0){_0=_0/ this.data.getLength();_0=Math.max(this.thumbMinSize,Math.round(_0))}
if(this.vertical){this.thumb.setHeight(_0)}else{this.thumb.setWidth(_0)}},moveThumb:function(){var _0=this.trackSize()-this.thumbSize();var _1;if(!this.data||this.data.getLength()==0){_1=0}else{_1=Math.round((this.position/(this.data.getLength()-1)*_0))}
if(this.moveThumbTo(_1+this.trackStart()))this.positionChanged()},targetScrollSize:function(){return this.data.getLength()},targetClipSize:function(){return 1},targetPageScrollDelta:function(){return Math.min(this.data.getLength(),10)},scrollTargetTo:function(_0){if(_0<0)_0=0;else if(_0>=this.data.getLength())_0=this.data.getLength()-1;else this.position=Math.round(_0);this.moveThumb()},targetScrollAmount:function(){return this.position},targetScrollDelta:function(){return 1},positionChanged:function(){},setPosition:function(_0){this.position=_0;this.moveThumb()},getCurrentPosition:function(){return this.position}});isc.ClassFactory.defineClass("MultiRecordForm","HLayout");isc.MultiRecordForm.addProperties({initialRecord:0});isc.MultiRecordForm.addMethods({initWidget:function(){this._form=this.$7v();this.$7w=this.$7x();this.addMembers([this._form,this.$7w]);this.observe(this.$7w,"positionChanged","observer.updateForm()");this.showRecord(this.initialRecord);this.updateForm()},updateForm:function(){if(this.data==null)return;var _0=this.$7w.getCurrentPosition();this._form.setData(this.data.get(_0))},setDataSource:function(_0,_1){this.Super("setDataSource",arguments);this._form.setDataSource(_0,_1)},bindToDataSource:function(_0,_1){this.Super("bindToDataSource",arguments);this._form.bindToDataSource(_0,_1)},setData:function(_0){if(this.data!=null&&this.isObserving(this.data,"dataChanged")){this.ignore(this.data,"dataChanged")}
this.data=_0;this.observe(this.data,"dataChanged","observer.updateForm()");this.$7w.setData(_0);this.showRecord(this.initialRecord);this.updateForm()},showRecord:function(_0){if(isc.isA.Number(_0)){this.$7w.setPosition(_0)}else{this.$7w.setPosition(this.data.indexOf(_0))}},$7v:function(){return isc.DynamicForm.create({ID:this.getID()+"_form",autoDraw:false,overflow:"auto",height:"100%",dataSource:this.dataSource},this.formProperties)},$7x:function(){return isc.RecordScrollbar.create({ID:this.getID()+"$7y",autoDraw:false,width:16,height:"100%",data:this.data,position:this.initialRecord})}});isc.ClassFactory.defineClass("MultiView","VLayout");isc.MultiView.addProperties({$7z:{},findButtonTitle:"Find...",displayAsButtonTitle:"Display As",addButtonTitle:"Add",deleteButtonTitle:"Delete",toolbarHeight:22,showToolbar:true});isc.MultiView.addMethods({initWidget:function(){this.Super(this.$f);this.dataSource=isc.DataSource.getDataSource(this.dataSource);this.setShowToolbar(this.showToolbar);this.setShowFilter(this.showFilter);this.setCurrentView("List")},setDataSource:function(_0,_1){this.dataSource=_0;for(var _2 in this.$7z){var _3=this.$7z[_2];_3.setDataSource(_0,_1)}
this.showView(this.currentView)},bindToDataSource:function(_0,_1){for(var _2 in this.$7z){this.$7z[_2].bindToDataSource(_0,_1)}},setShowToolbar:function(_0){if(!_0){if(this.toolbar!=null)this.toolbar.hide();return}
if(this.toolbar!=null)return this.toolbar.show();return this.createToolbar()},createToolbar:function(){this.toolbar=isc.HLayout.create({ID:this.getID()+"_toolbar",autoDraw:false,height:this.toolbarHeight,className:"multiViewToolbar"},this.toolbarProperties);this.toolbar.addMembers([isc.AutoFitButton.create({autoDraw:false,title:this.findButtonTitle,actionType:isc.Button.CHECKBOX,mv:this,click:function(){this.mv.setShowFilter(!this.mv.showFilter)}}),isc.MenuButton.create({autoDraw:false,title:this.displayAsButtonTitle,menu:isc.Menu.create({mv:this,data:[{title:"List",click:"target.mv.setCurrentView(this.title)"},{title:"Form",click:"target.mv.setCurrentView(this.title)"},{title:"Tree",click:"target.mv.setCurrentView(this.title)"}]})}),isc.AutoFitButton.create({autoDraw:false,title:this.addButtonTitle}),isc.AutoFitButton.create({autoDraw:false,title:this.deleteButtonTitle,mv:this,click:function(){this.mv.$7z["List"].deleteSelected()}})]);this.toolbar.addMembers(this.toolbarItems);this.toolbar.addMembers([isc.LayoutSpacer.create({autoDraw:false,width:"*"})]);this.addMember(this.toolbar)},setShowFilter:function(_0){this.showFilter=_0;if(!_0){if(this.filterForm!=null)this.filterForm.hide();return}
if(this.filterForm!=null)return this.filterForm.show();this.createFilter();this.addMember(this.filterForm,this.getMemberNumber(this.toolbar)+1)},createFilter:function(){this.filterForm=isc.AdvancedFilter.create({ID:this.getID()+"$rz",autoDraw:false,dataSource:this.dataSource,dualMode:true,currentMode:"simple",mv:this,filter:function(_0,_1){this.Super("filter",[this.mv.$70,_1])}},this.filterProperties)},setCurrentView:function(_0){if(_0==null){_0=this.currentView}else if(_0==this.currentView){return}
this.currentView=_0;if(this.$70)this.$70.hide();this.$71(_0);this.$70=this.$7z[_0];this.addMember(this.$70);this.$70.show();this.showView(_0)},$71:function(_0){if(!this.$7z[_0])this.$7z[_0]=this["create"+_0+"View"]()},showView:function(_0){var _1="show"+_0+"View";if(this[_1])this[_1](this.$70)},getView:function(_0){return this.$7z[_0]},getSelectedRecord:function(){var _0=this.currentView;if(_0.getSelectedRecord)return _0.getSelectedRecord()},createListView:function(){var _0=isc.ListGrid.create({ID:this.getID()+"$72",autoDraw:false,dataSource:this.dataSource},this.listGridProperties);return _0},showListView:function(_0){_0.select()},createFormView:function(){var _0=isc.MultiRecordForm.create({ID:this.getID()+"$73",autoDraw:false,dataSource:this.dataSource},this.multiEditorProperties);return _0},showFormView:function(_0){var _1=this.getView("List"),_2=_1.getData();if(_2==null||_2.getLength()==0){_1.filter();_1.hide()}
_0.setData(_1.getData());var _3=_1.getSelectedRecord();if(_3)_0.showRecord(_3)},createTreeView:function(){var _0=isc.TreeGrid.create({ID:this.getID()+"$74",autoDraw:false,dataSource:this.dataSource,multiDSTree:true},this.treeGridProperties);return _0},showTreeView:function(_0){_0.select()}});isc.ClassFactory.writePassthroughFunctions(isc.ListGrid,isc.MultiView,"mainView",["filter","deleteSelected","getSelection","getSelectedRecord"]);isc.ClassFactory.defineInterface("DataPrefetch");isc.DataPrefetch.addProperties({showComponentLoadingPrompt:true,componentLoadingPrompt:isc.RPCManager.defaultPrompt,componentInitialized:false,$75:false});isc.DataPrefetch.addMethods({dynaInit:function(){if(this.ID==null)isc.ClassFactory.addGlobalID(this);if(this.showComponentLoadingPrompt){isc.showPrompt(this.componentLoadingPrompt)}
isc.Timer.setTimeout(this.getID()+".$76()",0)},$76:function(){var _0=[];this.$77=0;if(this.autoLoad){for(var i=0;i<this.autoLoad.length;i++){var _1=this.autoLoad[i];var _2=_1.operationType?_1.operationType:"custom";var _3=isc.FlowMethods.buildContext(_1.context,_1.dataSource,_2);isc.addProperties(_3,_1);var _4=_3.application;if(!_4){this.logError("Can't determine application from context: "+isc.Log.echo(_3));continue}
_4.queueOperations(true);_0.add(_4);var _5=_1.callback;if(!_5){_5=this.getID()+".$78(transaction, '"+_1.componentId+"')";this.$77++}
_4.performOperation(_1.operation,_1.data,_5,_3)}}
if(isc.isA.Function(this.loadData))this.loadData.apply(this,this._dataPrefetchArguments_);for(var i=0;i<_0.length;i++){_0[i].performTransaction()}
if(isc.isA.Function(this.componentInit))this.componentInit.apply(this,this._dataPrefetchArguments_);this.componentInitialized=true;this.$75=false;if(this.$77==0&&this.showComponentLoadingPrompt)isc.clearPrompt();if(isc.isA.Function(this.show)){this.show.apply(this,this._dataPrefetchArguments_);delete this._dataPrefetchArguments_}},$78:function(_0,_1){var _2=_0.results.data;if(_1==''){this.logError("componentId is null for "+this.getID()+".$78()");return}
window[_1].setData(_2);if(--this.$77==0&&this.showComponentLoadingPrompt)isc.clearPrompt()},showComponent:function(){if(this.$75)return;if(!this.componentInitialized){this.$75=true;this._dataPrefetchArguments_=[];for(var i=0;i<arguments.length;i++)this._dataPrefetchArguments_[i]=arguments[i];this.dynaInit()}else{if(this.show!=null)this.show.apply(this,arguments)}}});isc.Page.logInfo("SmartClient ("+isc.version+" "+isc.buildDate+") initialized: "+(isc.timeStamp()-isc.$dy)+"ms");isc.Page.logInfo("document.compatMode: "+document.compatMode)}


/*

  Isomorphic SmartClient web presentation layer
  Version 5.2 evaluation (04/10/2005)

  Copyright 2000-2005 Isomorphic Software, Inc. All rights reserved.

  LICENSE NOTICE
     INSTALLATION OR USE OF THIS SOFTWARE INDICATES YOUR ACCEPTANCE OF THE
     SOFTWARE EVALUATION LICENSE AGREEMENT. If you have received this file
     without an Isomorphic Software license file, please see:

         http://www.isomorphic.com/licenses/isc_eval_license_050316.html

     You are not required to accept this agreement, however, nothing else
     grants you the right to copy or use this software. Unauthorized copying
     and use of this software is a violation of international copyright law.

  EVALUATION ONLY
     This software is provided for limited evaluation purposes only. You must
     acquire a deployment license from Isomorphic Software in order to use
     Isomorphic SmartClient, or any portion thereof, in any non-evaluation
     application, including internal or non-commercial applications.

  PROPRIETARY & PROTECTED MATERIAL
     This software contains proprietary materials that are protected by
     contract and intellectual property law. YOU ARE EXPRESSLY PROHIBITED
     FROM ATTEMPTING TO REVERSE ENGINEER THIS SOFTWARE OR MODIFY THIS
     SOFTWARE FOR HUMAN READABILITY.

  CONTACT ISOMORPHIC
     For more information regarding license rights and restrictions, or to
     report possible license violations, please contact Isomorphic Software
     by email (licensing@isomorphic.com) or web (www.isomorphic.com).

*/

