
var DatatypeUtils={getType:function(typeId){var datatype=Constants.TYPES[typeId];if(Util.isNull(datatype)){ASI_LOG.error('Datatype with id '+typeId+' has not been loaded. '+'Make sure DatatypeUtils.populateTypes is called before using the type');}
return datatype;},getNestedPropertyValue:function(values_,instanceType_,indexes_){values_=values_||[];var datatype=Constants.TYPES[instanceType_];if(datatype.isList&&!(values_[0]&&typeof values_[0].splice!=="undefined")){instanceType_=datatype.singleType;datatype=Constants.TYPES[instanceType_];}
if(datatype.isList){var o=[];for(var i=0;i<values_.length;i++){o.push(DatatypeUtils.getNestedPropertyValue(values_[i],datatype.singleType,indexes_));}
while(o.length>0&&Util.isNull(o[o.length-1])){o.pop();}
return o;}else{if(indexes_.length===1){values_=values_[indexes_[0].index];}else{var reducedIndexes=indexes_.slice(1);var currIndex=indexes_[0].index;values_=DatatypeUtils.getNestedPropertyValue(values_[currIndex],datatype.fieldTypes[currIndex],reducedIndexes);}
return values_;}},setNestedPropertyValue:function(value_,instanceType_,indexes_,propertyValue_,isExpression_){var dataType=Constants.TYPES[instanceType_];if(isExpression_&&dataType.isList){instanceType_=dataType.singleType;dataType=Constants.TYPES[instanceType_];}
if(typeof value_==="undefined"||value_===null){if(typeof propertyValue_==="undefined"||propertyValue_===null){return value_;}else{value_=[];}}
if(dataType.isList){if(Util.isNull(propertyValue_)){propertyValue_=[];}
if(!YAHOO.lang.isArray(propertyValue_)){ASI_LOG.error("Can't set the value of a list without an array of values, "+"propertyValue_ is not an array");return null;}
if(propertyValue_.length<value_.length){propertyValue_[value_.length-1]=null;}
var singleType=Constants.TYPES[instanceType_].singleType;for(var i=0;i<propertyValue_.length;i++){value_[i]=DatatypeUtils.setNestedPropertyValue(value_[i],singleType,indexes_,propertyValue_[i],isExpression_);}
return value_;}
if(!dataType.isRecord){ASI_LOG.error("Cannot set the nested property of a non record type. Type id is "+
instanceType_);return null;}
var fieldTypes=dataType.fieldTypes;if(value_.length<fieldTypes.length){value_[fieldTypes.length-1]=null;}
var firstIndex=indexes_[0].index;if(firstIndex>=fieldTypes.length){ASI_LOG.error("Property index out of bounds. Index was "+
firstIndex+" and "+dataType.name+" only has "+fieldTypes.length+" properties");return null;}
if(indexes_.length===1){value_[firstIndex]=propertyValue_;}else{var childValue=value_[firstIndex];var childType=fieldTypes[firstIndex];var reducedIndexes=indexes_.slice(1);value_[firstIndex]=DatatypeUtils.setNestedPropertyValue(childValue,childType,reducedIndexes,propertyValue_,isExpression_);}
return value_;},populateTypes:function(typeIds_,callback_){var noTypesNeeded=true;var typeSet={};var reqTypeIds_=[];for(var i=0;i<typeIds_.length;i++){if(!Constants.TYPES[typeIds_[i]]&&!typeSet[typeIds_[i]]){noTypesNeeded=false;typeSet[typeIds_[i]]=true;reqTypeIds_.push(typeIds_[i]);}}
if(noTypesNeeded){callback_();}else{ensureJSON(function(){server.clientComponent.getDatatypes(function(response){var errorOccurred=false;if(response&&response.length>0){for(var i=0;i<response.length;i++){Constants.TYPES[response[i].id]=response[i];}
for(i=0;i<reqTypeIds_.length;i++){if(!Constants.TYPES[reqTypeIds_[i]]){errorOcurred=true;break;}}}else{errorOccurred=true;}
if(errorOccurred){ASI_LOG.error("There was an error retrieving the types with ids=["+typeIds_.join(", ")+"]");callback_("There was an error retrieving the types.");}else{callback_();}},reqTypeIds_);});}},populateType:function(typeId_,callback_){if(Constants.TYPES[typeId_]){callback_();}else{DatatypeUtils.populateTypes([typeId_],callback_);}},getTypedValueFromString:function(value,instanceType){if(Util.isNull(value)||(YAHOO.lang.isString(value)&&StringUtils.isBlank(value))){return null;}
var val=value;var datatype=Constants.TYPES[instanceType];if(datatype.isList){if(YAHOO.lang.isString(value)){val=value.toArray();}
if(val.constructor!=Array){val=[val];}
for(var i=0;i<val.length;i++){val[i]=DatatypeUtils.getTypedValueFromString(val[i],datatype.singleType);}
return val;}
var foundationSingleType=DatatypeUtils.getFoundationType(instanceType);if(foundationSingleType in set(TYPE_DATE,TYPE_DATETIME,TYPE_TIME)){if(val.constructor==String){return Date.Util.parseValue(val,foundationSingleType);}else if(val.constructor==Object){val=foundationSingleType==TYPE_DATE?val.dateStr:foundationSingleType==TYPE_TIME?val.timeStr:Date.Util.createDatetimeString(val.dateStr,val.timeStr);return Date.Util.parseValue(val,foundationSingleType);}}
if(foundationSingleType==TYPE_BOOLEAN){return Boolean.parseBoolean(val)?1:0;}
return val;},convertToInstanceType:function(type_,multiple_){return Boolean.parseBoolean(multiple_)?Constants.TYPES[type_].listType:type_;},getFoundationType:function(instanceTypeId){if(!instanceTypeId){return instanceTypeId;}
var type=Constants.TYPES[instanceTypeId];var singleType=type.isList?type.singleType:type.id;if(Constants.TYPES[singleType].isSystemType){return singleType;}
return Constants.TYPES[singleType].isRecord?singleType:Constants.TYPES[singleType].base;},getFoundationInstanceType:function(instanceTypeId){if(!instanceTypeId){return instanceTypeId;}
if(Constants.TYPES[instanceTypeId].isSystemType){return instanceTypeId;}
var datatype=Constants.TYPES[instanceTypeId];var foundationType=DatatypeUtils.getFoundationType(instanceTypeId);return datatype.isList?Constants.TYPES[foundationType].listType:foundationType;},validateExpression:function(expression_){EXPRESSIONEDITOR.exceptions=[];if(EXPRESSIONEDITOR.lexer(expression_,true)){return null;}
var message='The expression contains an error.';if(EXPRESSIONEDITOR.exceptions.length>0){message=EXPRESSIONEDITOR.exceptions.join('');EXPRESSIONEDITOR.exceptions=[];}
return message;},validateValue:function(value_,instanceType_,delimiter_){var multiple=Constants.TYPES[instanceType_].isList;var foundationTypeSingle=DatatypeUtils.getFoundationType(instanceType_);var validationType;if(Constants.TYPES[foundationTypeSingle].isRecord){validationType='record';}else{validationType=DatatypeUtils.validateTypeMap[foundationTypeSingle];}
var delimiter=multiple?Util.isNull(delimiter_)?_AE.uiDelimiter:delimiter_:null;if(!Util.isNull(validationType)&&!value_.validate(validationType,delimiter)){return(getValidationMessage(validationType,value_));}
return null;}};DatatypeUtils.validateTypeMap=[];DatatypeUtils.validateTypeMap[TYPE_LONG]='long';DatatypeUtils.validateTypeMap[TYPE_DOUBLE]='float';DatatypeUtils.validateTypeMap[TYPE_STRING]='string';DatatypeUtils.validateTypeMap[TYPE_DATE]='date';DatatypeUtils.validateTypeMap[TYPE_TIME]='time';DatatypeUtils.validateTypeMap[TYPE_DATETIME]='datetime';if(!this.JSON){JSON=function(){function f(n){return n<10?'0'+n:n;}
Date.prototype.toJSON=function(key){return this.getUTCFullYear()+'-'+
f(this.getUTCMonth()+1)+'-'+
f(this.getUTCDate())+'T'+
f(this.getUTCHours())+':'+
f(this.getUTCMinutes())+':'+
f(this.getUTCSeconds())+'Z';};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapeable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function quote(string){escapeable.lastIndex=0;return escapeable.test(string)?'"'+string.replace(escapeable,function(a){var c=meta[a];if(typeof c==='string'){return c;}
return'\\u'+('0000'+
(+(a.charCodeAt(0))).toString(16)).slice(-4);})+'"':'"'+string+'"';}
function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(key);}
if(typeof rep==='function'){value=rep.call(holder,key,value);}
switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';}
gap+=indent;partial=[];if(typeof value.length==='number'&&!(value.propertyIsEnumerable('length'))){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||'null';}
v=partial.length===0?'[]':gap?'[\n'+gap+
partial.join(',\n'+gap)+'\n'+
mind+']':'['+partial.join(',')+']';gap=mind;return v;}
if(rep&&typeof rep==='object'){length=rep.length;for(i=0;i<length;i+=1){k=rep[i];if(typeof k==='string'){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}
v=partial.length===0?'{}':gap?'{\n'+gap+partial.join(',\n'+gap)+'\n'+
mind+'}':'{'+partial.join(',')+'}';gap=mind;return v;}}
return{stringify:function(value,replacer,space){var i;gap='';indent='';if(typeof space==='number'){for(i=0;i<space;i+=1){indent+=' ';}}else if(typeof space==='string'){indent=space;}
rep=replacer;if(replacer&&typeof replacer!=='function'&&(typeof replacer!=='object'||typeof replacer.length!=='number')){throw new Error('JSON.stringify');}
return str('',{'':value});},parse:function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==='object'){for(k in value){if(Object.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v;}else{delete value[k];}}}}
return reviver.call(holder,key,value);}
cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return'\\u'+('0000'+
(+(a.charCodeAt(0))).toString(16)).slice(-4);});}
if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,'@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']').replace(/(?:^|:|,)(?:\s*\[)+/g,''))){j=eval('('+text+')');return typeof reviver==='function'?walk({'':j},''):j;}
throw new SyntaxError('JSON.parse');}};}();}
function loadURL(url,callback){var config={callback:callback,isAsync:!!callback,queryString:null};return new ServerRequest('GET',url,config);}
function postURL(url,callback,data){var config={callback:callback,isAsync:!!callback,data:data};return new ServerRequest('POST',url,config);}
function empty(){};function ServerRequest(method,url,config){if(!config){config={};}
var req=getXMLHttpRequest();req.open(method,rewriteURL(url),!!config.isAsync);var _reqTime=new Date().getTime();if((/post/i).test(method)){req.setRequestHeader('Content-Type','application/x-www-form-urlencoded');}
if(config.callback){req.onreadystatechange=function onreadystatechange(){if(req.readyState==4){switch(req.status){case 200:req.onreadystatechange=empty;config.callback(req);returnXMLHttpRequest(req);req=null;break;default:throw new Error('Invalid response from the server: '+
req.responseText);}}
var _reqDelta=(new Date().getTime())-_reqTime;}}
req.send(config.data);return req;}
function postForm(url,form,callback){var queryString=serializeForm(form);postURL(url,queryString,callback);}
var msxmlNames=["MSXML2.XMLHTTP.5.0","MSXML2.XMLHTTP.4.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"];var msxmlName=null;if(typeof XMLHttpRequest=='undefined'){XMLHttpRequest=function(){if(msxmlName!=null){return new ActiveXObject(msxmlName);}
for(var i=0;i<msxmlNames.length;i++){try{msxmlName=msxmlNames[i];return new ActiveXObject(msxmlName);}catch(e){}}}}
var http_pool=[];function getXMLHttpRequest(){var http=http_pool.pop();if(typeof http=='undefined'){http=new XMLHttpRequest();}
return http;}
function returnXMLHttpRequest(http){http.onreadystatechange=empty;http_pool.push(http);}
function importStyleSheet(path){if(path.indexOf('components/css/asi')!==-1){return false;}
var skinpath=path.replace(/\/css\/(?!skins\/)/,'/css/skins/');var layout=importOneSheet(path);var skin=importOneSheet(skinpath);if(layout&&skin){return true;}}
function importOneSheet(path){if(window.name=='fProcess'){return false;}
if(isSheetLoaded(path)){return false;}
var head=document.documentElement.getElementsByTagName('HEAD')[0];var link=document.createElement('LINK');link.rel='stylesheet';link.href=rewriteURL(path);link.type='text/css';head.appendChild(link);return true;}
function isSheetLoaded(path){var sheets=document.styleSheets;for(var i=0;i<sheets.length;i++){if(sheets[i].href==rewriteURL(path))return true;}
return false;}
function importScript(path,callback){if(isScriptLoaded(path)){if(callback)callback();return;}
path=rewriteURL(path);if(callback){loadURL(path,function(req){loadScript(req);callback();});}else{var req=loadScript(loadURL(path));returnXMLHttpRequest(req);req=null;}
function loadScript(req){if(req.status!=404){executeScript(window.IMPORTED_SCRIPTS[path]=req.responseText);return req;}else{throw new Error('Requested script not found in server: '+path);}}}
function isScriptLoaded(path){path=rewriteURL(path);if(window.IMPORTED_SCRIPTS[path])return true;var scripts=document.getElementsByTagName('SCRIPT');for(var i=0;i<scripts.length;i++){if(scripts[i].src==path)return true}
return false;}
window.IMPORTED_SCRIPTS=window.IMPORTED_SCRIPTS||{};function getInputsByType(type,container){if(typeof container=='undefined'){ASI_LOG.warn("Container not specified: must be explicitly specified.",true);}
var result=new Array();container=(typeof container!='undefined')?container:document;if(type.toUpperCase()=='SELECT')return container.getElementsByTagName('SELECT');if(type.toUpperCase()=='TEXTAREA')return container.getElementsByTagName('TEXTAREA');var inputs=container.getElementsByTagName('INPUT');for(var i=0;i<inputs.length;i++){if(inputs[i].type==type){result[result.length]=inputs[i];}}
return result;}
function getInputsByName(name,container){if(typeof container=='undefined'){ASI_LOG.warn("Container not specified: must be explicitly specified.",true);}
var results=new Array();container=(typeof container!='undefined')?container:document;var inputs=container.getElementsByTagName('INPUT');for(var i=0;i<inputs.length;i++){if(inputs[i].name==name)results.push(inputs[i]);}
return results;}
function $$(){var elements=[];for(var i=0;i<arguments.length;i++){var element=arguments[i];if(typeof element=='string'){element=document.getElementById(element);}
if(arguments.length==1)return element;elements.push(element);}
return elements;}
function Node(tagName,properties){var node=document.createElement(tagName);for(property in properties){var p=properties[property];if(property=='style'){for(styleProperty in p){node.style[styleProperty]=p[styleProperty];}}else{node[property]=p;if(node.getAttribute(property)==null){var isEvent=property.match(/^on\w/)&&typeof p=='function';if(!isEvent)node.setAttribute(property,p);}}}
return node;}
function getNodeElements(nodeArray){var nodeElements=new Array();for(var i=0;i<nodeArray.length;i++){if(nodeArray[i].nodeType==1)nodeElements.push(nodeArray[i]);}
return nodeElements;}
function nextDataSibling(node){while((node=node.nextSibling)){var isCommentNode=(node.nodeType==8);var isEmpty=(node.nodeType==3)&&(!node.data.trim());if(!isCommentNode&&!isEmpty){return node;}}
return null;}
function removeElement(element){element.parentNode.removeChild(element);}
function getOrCreateElement(tagname,container){if(typeof container=='undefined'){ASI_LOG.warn("Container not specified: must be explicitly specified.",true);}
container=(typeof container!='undefined')?container:document;var elements=container.getElementsByTagName(tagname);if(elements.length==0){var element=document.createElement(tagname);container.appendChild(element);}else element=elements[0];return element;}
function createImageElement(src,alt){var img=document.createElement('IMG');img.src=src;img.alt=alt;return img;}
function getElementsByClassName(name,container,tagName){if(typeof container=='undefined'){ASI_LOG.warn("Container not specified: must be explicitly specified.",true);}
var all_obj,ret_obj=new Array();var container=(typeof container!='undefined')?container:document;var matcher=new RegExp('(^| )'+name+'( |$)');all_obj=container.all?(tagName?container.getElementsByTagName(tagName):container.all):container.getElementsByTagName(tagName||'*');for(var i=0;i<all_obj.length;i++){if(all_obj[i].nodeType==1&&all_obj[i].className.match(matcher)){ret_obj[ret_obj.length]=all_obj[i];}}
return ret_obj;}
function getElementsByAttributeValue(attribute,value,container,tagName){if(typeof container=='undefined'){ASI_LOG.warn("Container not specified: must be explicitly specified.",true);}
var container=(typeof container!='undefined')?container:document;var elements=container.all?(tagName?container.getElementsByTagName(tagName):container.all):container.getElementsByTagName(tagName||'*');var result=[];for(var i=0;i<elements.length;i++){if(String(elements[i].getAttribute(attribute))===String(value)){result.push(elements[i]);}}
return result;}
function getElementsWithAttribute(attribute,container,tagName){if(typeof container=='undefined'){ASI_LOG.warn("Container not specified: must be explicitly specified.",true);}
var isSearchAllTags=(typeof tagName=='undefined');var attributes=(attribute instanceof Array)?attribute:[attribute];var tags=(tagName instanceof Array)?tagName:[tagName];var elements=[],stack=[];tags.forEach(function(tag){var elementsByTag=isSearchAllTags?(container.all||container.getElementsByTagName('*')):container.getElementsByTagName(tag);for(var i=0,len=elementsByTag.length;i<len;i++){elements.push(elementsByTag[i]);}});elements.forEach(function(element){attributes.forEach(function(attr){if(element.getAttribute(attr))stack.push(element);});});return stack;}
function getContainerByTagName(object,tagName,maxDepth){var container=object;maxDepth=maxDepth||-1;while(maxDepth!=0&&container&&container.tagName!=tagName.toUpperCase()&&container.tagName!='BODY'){container=container.parentNode;maxDepth--;}
return container.tagName==tagName.toUpperCase()?container:null;}
function getContainerByClassName(object,name,maxDepth){var container=object;maxDepth=maxDepth||-1;var matcher=new RegExp('\\b'+name+'\\b');while(maxDepth!=0&&container&&container.tagName!='BODY'&&!container.className.match(matcher)){container=container.parentNode;maxDepth--;}
return(container.className&&container.className.indexOf(name)>-1)?container:null;}
function insertAfter(newObject,refObject){var nextSib=refObject.nextSibling;if(nextSib)refObject.parentNode.insertBefore(newObject,nextSib);else refObject.parentNode.appendChild(newObject);}
function booleanToggle(bool,id1,id2){$$(id1).style.display=eval(bool)?'':'none';if(id2){$$(id2).style.display=eval(bool)?'none':'';}}
function toggleEnabled(isEnabled,elem){elem=$$(elem);if(elem.tagName in set('input','textarea','select')){elem.disabled=!isEnabled;}else{elem.setAttribute('disabled',!isEnabled);getElements(elem).forEach(function(elem){toggleEnabled(isEnabled,elem);});}}
function centerInViewport(object){var scrolledFromTop=getScrollFromTop();var height=getWindowHeight();var bodyWidth=(!window.cachedWidth||!window.IS_MODELER)?(window.cachedWidth=document.body.offsetWidth):window.cachedWidth;try{var position=object.style.position!=''?object.style.position:object.currentStyle?object.currentStyle.position:getComputedStyle(object,null).position;}catch(e){return 0}
var objectHeight=object.offsetHeight;var objectWidth=object.offsetWidth;if(isIE&&!objectHeight){objectHeight=parseInt(object.currentStyle.height);}
if(isIE&&!objectWidth){objectWidth=parseInt(object.currentStyle.width);}
if(position!='absolute'){object.style.marginTop=Math.max((height-objectHeight)/2,0)+'px';object.style.marginLeft=Math.max((bodyWidth-objectWidth)/2,0)+'px';}else{object.style.top=Math.max(((height-objectHeight)/2)+scrolledFromTop,0)+'px';object.style.left=Math.max((bodyWidth-objectWidth)/2,0)+'px';}
return scrolledFromTop;}
function getWindowHeight(){if(window.IS_MODELER&&window.cachedHeight){return window.cachedHeight;}
var windowHeight=0;if(typeof(window.innerHeight)=='number'){windowHeight=window.innerHeight;}
else{windowHeight=(document.documentElement&&document.documentElement.clientHeight!=0)?document.documentElement.clientHeight:((document.body&&document.body.clientHeight)?document.body.clientHeight:0);}
return(window.cachedHeight=windowHeight);}
function getScrollFromTop(){if(window.IS_MODELER){return 0;}
if(document.documentElement)return document.documentElement.scrollTop;if(window.scrollX)return window.scrollX;if(document.body.scrollHeight)return document.body.scrollTop;return 0;}
function getPageOffsetLeft(element){var offsetLeft=element.offsetLeft;while((element=element.offsetParent)!=null){offsetLeft+=element.offsetLeft;if(element.offsetParent!=null){offsetLeft-=element.scrollLeft;}}
return offsetLeft;}
function getPageOffsetTop(element){var offsetTop=element.offsetTop;while((element=element.offsetParent)!=null){offsetTop+=element.offsetTop;if(element.offsetParent!=null){offsetTop-=element.scrollTop;}}
return offsetTop;}
function isVisible(element){if(element.offsetWidth=='0'||element.offsetHeight=='0')return false;else return true;}
function toggleDisplay(obj,value){if(!obj.tagName){obj=$$(obj);}
if(obj.style.display=='none'){return obj.style.display=value||'';}
else{return obj.style.display='none';}}
function getDataRows(table,exclusionClass){var dataRows=new Array();for(var i=0;i<table.tBodies.length;i++){for(var j=0;j<table.tBodies[i].rows.length;j++){var row=table.tBodies[i].rows[j];if(!exclusionClass||!row.className.match(new RegExp(exclusionClass))){dataRows=dataRows.concat(row);}}}
return dataRows;}
function alternateRowClass(table,blockSize){if(!table){return;}
blockSize=blockSize||1;for(var i=0;i<table.tBodies.length;i++){for(var j=0;j<table.tBodies[i].rows.length;j++){var row=table.tBodies[i].rows[j];row.className=row.className.replace(/ *alternate/g,'');if(Math.floor(j/blockSize)%2){row.className+=' alternate';}}}}
function normalizeColumns(table){var numCols=1;for(var i=0;i<table.rows.length;i++){var numCells=table.rows[i].cells.length;numCols=numCells>numCols?numCells:numCols;}
for(i=0;i<table.rows.length;i++){numCells=table.rows[i].cells.length;if(numCells==1&&numCells<numCols){table.rows[i].cells[0].colSpan=numCols;}}}
function getSelectedRows(container){return getElementsByClassName('selected',container,'TR');}
function selectRow(row,isExclusive,evt){evt=(typeof evt!='undefined')?evt:(window.event)?window.event:false;var target=null;if(typeof evt!="undefined"&&evt!==false){if(evt.ctrlKey){unselectDocument();}
if(evt.ctrlKey){isExclusive=false;}
target=(evt.target)?evt.target:event.srcElement;if(target.tagName=='A'&&target.href.length>0&&!target.href.match(/#$/)){return false;}}else if(evt!==false){ASI_LOG.warn("Row selection must explicitly get the event object for non-IE browsers. Unexpected behavior will stem from this omission.%0a Try using autoClick(element) instead. ",true);}
var checkbox=getCheckboxInElement(row);if(checkbox=="null"){throw new Error('Row cannot be selected without a checkbox');}
isChecked=checkbox.checked;checkboxContainer=getContainerByTagName(checkbox,'TABLE');if(isExclusive){unselectRows(checkboxContainer);}
if(isExclusive){isChecked=false;}
if(target&&(target.tagName=='INPUT'||target.tagName=='SELECT'||target.tagName=='TEXTAREA')){isChecked=!isChecked;}
if(isChecked){row.className=row.className.replace(/ *selected/g,'');}
else{row.className+=' selected';}
checkbox.checked=!isChecked;return true;}
function highlightRow(row){if(!row.className.match(/selected/g)){row.className+=' selected';getCheckboxInElement(row).checked=true;}}
function unselectRows(container){var rows=getSelectedRows(container);for(var i=0;i<rows.length;i++){rows[i].className=rows[i].className.replace(/ *selected/g,'');var checkbox=getInputsByType('checkbox',rows[i])[0];if(!checkbox){continue;}
checkbox.checked=false;}}
function selectAllRows(table,exclusionClass){var rows=getDataRows(table,exclusionClass);for(var i=0;i<rows.length;i++){var checkbox=getInputsByType('checkbox',rows[i])[0];if(!checkbox){continue;}
selectRow(rows[i],false,false);}}
function SelectingBoxHTML(isChecked){var onselect='var tr = getContainerByTagName(this, \'TR\');'+'if(!this.checked) tr.className = tr.className.replace(/ ?selected/g,\'\');'+'else tr.className += \' selected\';';var config={type:'checkbox',onclick:onselect,className:'selectingBox'};if(isChecked){config.checked=true;}
return Tag('INPUT',config);}
function MasterSelectBoxHTML(){var onselect='var table = getContainerByTagName(this, \'TABLE\');'+'var boxes = getElementsByClassName(\'selectingBox\', table, \'INPUT\');'+'for (var i=0;i<boxes.length;i++){boxes[i].checked=this.checked;boxes[i].onclick()}';return Tag('INPUT',{type:'checkbox',onclick:onselect,className:'masterBox'});}
var Util={isNull:function(value,multiple){if(multiple){var values=value.split(_AE.uiDelimiter);for(var i=0;i<values.length;i++){isnull=Util.isNull(values[i]);if(Util.isNull(values[i])){return true;}}
return false;}else{return(typeof value==="undefined"||value===null||value==="");}},delayExecutionUntilReady:function(condition,statement,time){var i=0;(function loop(){if(condition.call()){statement.call();}else{if(i>30){ASI_LOG.error("delayExecutionUntilReady() - Condition didn't meet.");return;}
setTimeout(loop,time||100);i++;}})();}};function autoClick(element){if(document.createEvent){var evt=document.createEvent("MouseEvents");evt.initMouseEvent('click',true,true,document.defaultView,1,0,0,0,0,false,false,false,false,0,null);return element.dispatchEvent(evt);}
else if(element.tagName){return element.click();}}
function joinArgs(functionArgs,delimiter){var a=[];Array.prototype.push.apply(a,functionArgs);return a.join(delimiter||',');}
function sliceArgs(functionArgs,startIndex,endIndex){var a=[];Array.prototype.push.apply(a,functionArgs);return a.slice(startIndex,endIndex||functionArgs.length);}
function wait(ms){var start=new Date().getTime();while(new Date().getTime()<(start+ms)){}}
function unselectDocument(){try{document.execCommand("Unselect",false,null);}
catch(e){}}
function getSetContents(obj1,obj2){try{obj2.innerHTML=obj1.innerHTML;}catch(e){}}
function disableEnter(){if(document.layers)document.captureEvents(Event.KEYPRESS);document.onkeypress=doKey;}
function getIEVer(){if(window.clientInformation==null)return false;if(window.clientInformation.appVersion==null)return false;return window.clientInformation.appVersion.match(/MSIE ([0-9].[0-9])/i)[1];}
function applyCN(){importStyleSheet('/portal/css/skins.css');document.body.className='default '+getObject('portalQueryField').value;}
function set(){var result={};for(var i=0;i<arguments.length;i++){result[arguments[i]]=true;}
return result;}
function isEmpty(obj){if(obj instanceof Array&&!obj.length){return true;}
if(obj instanceof String&&!obj){return true;}
for(var o in obj){return false;}
return true;}
function fixObjectType(b){if(!b){return b;}
var fixedType="";if(typeof b.splice!="undefined"){b.constructor=Array;fixedType="array";}else if(typeof b.charAt!="undefined"){b.constructor=String;}else if(typeof b.getMilliseconds!="undefined"){b.constructor=Date;}else if(typeof b.between!="undefined"){b.constructor=Number;}else if(b.toString()in set("true","false")){b.constructor=Boolean;}else if(typeof b.apply!="undefined"){b.constructor=Function;fixedType="function";}else{b.constructor=Object;}
if(fixedType!="function"){if(fixedType=="array"){for(var i=0;i<b.length;i++){fixObjectType(b[i]);}}else{for(var p in b){fixObjectType(b[p]);}}}
return b;}
function copyBean(b){if(b==null||b.constructor==Number||b.constructor==String||b.constructor==Boolean)
return b;if(b.constructor==Array){var copy=[];for(var x=0;x<b.length;x++){copy[x]=copyBean(b[x]);}
return copy;}
var copy={}
for(var p in b){if(b[p]==null)
continue;if(b[p].constructor==Object){copy[p]=copyBean(b[p]);}else if(b[p].constructor==Date){copy[p]=new Date(b[p].getTime());}else if(b[p].constructor==Array){copy[p]=copyBean(b[p]);}else if(typeof b[p].copy==Function){copy[p]=b[p].copy();}else{copy[p]=b[p];}}
return copy;}
Number.prototype.between=function(min,max,isInclusive){min=parseInt(min),max=parseInt(max);if(!isInclusive)return Math.min(min,max)<this&&this<Math.max(min,max);else return Math.min(min,max)<=this&&this<=Math.max(min,max);}
function ensureJSON(callback){function setupServer(){JSONRpcClient.max_req_active=5;window.server=new JSONRpcClient(rewriteURL('/JSON-RPC'));}
if(window.server==null){setupServer();}
callback();}
function toSource(obj){if(typeof obj.toSource=='function'){return obj.toSource();}
switch(typeof obj){case'null':return'null';case'undefined':return'undefined';case'string':return"'"+obj.toString()+"'";case'number':if(isNaN(obj)){return'Number.NaN';}
case'object':var constructor=obj.constructor;switch(constructor.toString().match(/function ?([\w$]*)/)[1]){case'Array':var s='[';for(var i=0,len=obj.length;i<len;i++){s+=(i?', ':'')+toSource(obj[i]);}
return s+']';case'Date':return'new Date(\''+obj.toString()+'\')';case'Object':var s='{',comma;for(var prop in obj){if(prop in constructor.prototype){continue;}
s+=(comma?', ':'')+prop+' : '+toSource(obj[prop]);comma=true;}
return s+'}';}}
return obj.toString();}
function backWithIframe(object,zIndex){if(isIE6){var iframe=Node('IFRAME',{className:'backingIframe'});iframe.title=_AE.backdropIframeTitle;iframe.style.left=getPageOffsetLeft(object)-2+'px';iframe.style.top=getPageOffsetTop(object)-2+'px';iframe.style.height=object.offsetHeight+4+'px';iframe.style.width=object.offsetWidth+4+'px';iframe.src=rewriteURL('portal/blank.jsp');if(typeof zIndex!='undefined')iframe.style.zIndex=zIndex;iframe.style.visibility='hidden';document.body.appendChild(iframe);iframe.style.visibility='';return iframe;}}
function objectToQueryString(obj){var s=[];for(var key in obj){if(typeof(obj[key])in set("string","boolean","number")){s[s.length]=[encodeURIComponent(key),encodeURIComponent(obj[key])].join("=");}}
return s.join('&');}
function queryStringToObject(str){var o={};var pairs=str.split("&");pairs.forEach(function(pair,i){var kv=pair.split("=");if(kv.length==2){o[decodeURIComponent(kv[0])]=decodeURIComponent(kv[1]);}});return o;}
function isCustomObject(o){return!(typeof o!='object'||o instanceof Array||o instanceof Date||o instanceof RegExp||o===null);}
var StringUtils={isBlank:function(str){return(Util.isNull(str)||((typeof str==="string")&&str.trim().length==0));},chop:function(str){if(Util.isNull(str)){return str;}else{str=str+'';return str.substring(0,str.length-1);}},encloseIdentifierInQuotes:function(str){if(Util.isNull(str)||str.search(/[\.\-\:\~\<\>]/)<0){return str;}else{return"'{0}'".supplant(str);}},getURLExtension:function(url){var tokens=url.split("?");tokens=tokens[0].split(".");return tokens.length>1?tokens[tokens.length-1]:"";}};var StringSecurityUtils={encodeHtml:function(text_){if(Util.isNull(text_)){text_="";}
return(text_+"").escapeHtml();},unencodeHtml:function(text_){if(Util.isNull(text_)){text_="";}
var htmlNode=document.createElement("DIV");htmlNode.innerHTML=text_;return(typeof htmlNode.innerText!=="undefined")?htmlNode.innerText:htmlNode.textContent;},escapeJavaScript:function(text_){if(Util.isNull(text_)){text_="";}
return(text_+"").escapeJS();}};(function stringUtils(){String.prototype.isAppianExpression=function isAppianExpression(){return(this.startsWith('=')&&this.length>1);}
String.prototype.isNumber=function isNumber(){return this.match(/^\d+$/)!==null;}
String.prototype.startsWith=function startsWith(s){return this.indexOf(s)===0;};String.prototype.endsWith=function endsWith(s){return this.lastIndexOf(s)==this.length-s.length;};String.prototype.equalsIgnoreCase=function equalsIgnoreCase(s){return!s?false:this.toLowerCase()==s.toLowerCase();};String.prototype.tokenAt=function tokenAt(index,delimiter){if(typeof index=='undefined'){return this;}
return this.split(delimiter||"/")[index];};String.prototype.tokenizedSubstring=function tokenizedSubstring(startIndex,includeCount,delimiter){var tokens=this.split(delimiter||"/");return tokens.splice(startIndex,includeCount).join(delimiter||"/");};String.prototype.replaceToken=function replaceToken(index,value,delimiter){var tokens=this.split(delimiter||"/");var subsetA=tokens.slice(0,index);if(typeof value!="undefined"){subsetA.push(value);}
return subsetA.concat(tokens.slice(index+1)).join(delimiter||"/");};String.prototype.validate=function validate(type,delimiter){if(!Util.isNull(delimiter)){var strings=this.toArray(delimiter);for(var i=0;i<strings.length;i++){if(!strings[i].validate(type)){return false;}}
return true;}
var trimmed=this.trim();if(trimmed.match(/[\u0000-\u0008\u000B\u000C\u000E-\u001F]+/)){return false;}
var unicodeChar="0-9A-Za-z_\\u00a1-\\uFFFD\\u10000-FFFFFF";var positivefloat=new RegExp("^((\\d+(\\"+DECIMAL_SEPARATOR+"\\d*)?)|(\\"+DECIMAL_SEPARATOR+"\\d+))$");var regularfloat=new RegExp("^(-)?((\\d+(\\"+DECIMAL_SEPARATOR+"\\d*)?)|(\\"+DECIMAL_SEPARATOR+"\\d+))$");if(type in set('positive','long','positivefloat','float','scientific')){var groupingSeparatorRegEx=new RegExp(GROUPING_SEPARATOR.escapeRegEx(),"g");trimmed=trimmed.replace(groupingSeparatorRegEx,'');}
switch(type){case"positive":return trimmed.match(/^\d+$/)!=null;case"long":return trimmed.match(/^(-)?\d+$/)!=null;case"positivefloat":return trimmed.match(positivefloat)!=null;case"float":return trimmed.match(regularfloat)!=null;case"scientific":return trimmed.match(/^(-)?((\d+(\.\d*)?)|(\.\d+))(E(-)?\d+)?$/i)!=null;case"alphanumeric":return trimmed.match(/^[\s0-9A-Za-z_\u00a1-\uFFFD\u10000-FFFFFF]+$/)!=null;case"username":return trimmed.match(/^[A-Za-z_\.\-\@\u00a1-\uFFFD\u10000-FFFFFF]+$/)!=null;case"displayname":return trimmed.match(/^[\sA-Za-z_\'\-\u00a1-\uFFFD\u10000-FFFFFF]+$/)!=null;case"notNumbers":return(trimmed.match(/[0-9]+/)==null)&&(trimmed.match(/^[\sA-Za-z_\-\u00a1-\uFFFD\u10000-FFFFFF]+$/)!=null);case"date":case"time":case"datetime":return Date.Util.validate(trimmed,type);case"zipcode":return trimmed.match(/^\d{5}(-\d{4})?$/)!=null;case"ssn":return trimmed.replace(/-/g,'').match(/^\d{9}$/)!=null;case"email":return trimmed.match(/^.+@.+\..+$/)!=null;case"yesno":return trimmed.match(/^(yes|no)$/i)!=null;case"EE identifier":return trimmed.match(/^[^\(\)\[\]\{\}#~+-\.\*\/^%&?@<=>, :]*$/)&&trimmed.match(/[^\d]/);case"file":return true;case"record":return StringUtils.isBlank(trimmed);default:{if(type&&type.match(/^!?regex\(/)){var isNot=type.match(/^!/);var isCaseInsensitive=type.match(/\/i\)/);var regex=new RegExp(type.slice(isNot?8:7,isCaseInsensitive?-3:-2),isCaseInsensitive?'i':'');if((!isNot&&!trimmed.match(regex))||(isNot&&trimmed.match(regex))){return false;}}
return true;}}};String.prototype.toArray=function toArray(delim){delim=delim||',';var results=new Array();var regex=new RegExp('((\\s*"((\\\\"?)|[^"])*"\\s*)|([^'+delim+']*))'+delim,'g');var result;var rightContext='';while((result=regex.exec(this))&&results.length<100000){rightContext=RegExp.rightContext;var current=result[0];current=current.slice(0,-1).trim();current=unquote(current);results.push(current);}
if(results.length){results.push(unquote(rightContext.trim()));}
else{results.push(this.toString());}
return results;function unquote(str){if(str.startsWith('"')&&str.endsWith('"'))str=str.slice(1,-1);return str.replace(/\\\"/g,"\"");}};String.prototype.trim=function trim(){return this.replace(/^\s+|\s+$/g,'');};String.prototype.alert=function alert(){asi.alert(this);};String.prototype.escapeHTML=function escapeHTML(){var s=this;s=s.replace(/&/g,"&amp;");s=s.replace(/#/g,'&#35;');s=s.replace(/'/g,"&#39;");s=s.replace(/"/g,'&quot;');s=s.replace(/>/g,"&gt;");s=s.replace(/</g,"&lt;");return s;};String.prototype.escapeHtml=function(){var chars='&#\'"><';var re=new RegExp(chars.split('').join('|'),'g');return this.replace(re,function(c){return'&#'+c.charCodeAt(0)+';';});};String.prototype.unescapeHTML=function unescapeHTML(){var s=this;s=s.replace(/&lt;/g,"<");s=s.replace(/&gt;/g,">");s=s.replace(/&#0?39;/g,"'");s=s.replace(/&quot;/g,'"');s=s.replace(/&nbsp;/g," ");s=s.replace(/&#0?35;/g,"#");s=s.replace(/&#0?34;/g,'"');s=s.replace(/&amp;/g,"&");return s;};String.prototype.escapeJS=function escapeJS(){var s=this;s=s.replace(/\\/g,"\\\\");s=s.replace(/\//g,"\\/");s=s.replace(/'/g,"\\'");s=s.replace(/"/g,'\\"');s=s.replace(/\n/g,"\\n");s=s.replace(/\r/g,"");return s;};String.prototype.escapeRegEx=function escapeRegEx(){var s=this;letters=['\\','!','$','/','.','[',']','+','{','}','-','^','?','*','|','(',')'];for(var i=0;i<letters.length;i++){var withSlash='\\'+letters[i];s=s.replace(new RegExp(withSlash,'g'),withSlash);}
return s;};String.prototype.truncate=function truncate(length,isHardTruncate){if(isHardTruncate)return this.length>length?this.slice(0,length)+"...":this;return this.length>length?this.slice(0,length).replace(/(.+?)\s*\b\w+$/,'$1...'):this;};String.prototype.tag=function tag(tagName,attributes){var name=tagName.toLowerCase();var s=['<'+name];var i=1;for(attribute in attributes){var attributeName=attribute=='className'?'class':attribute;var attributeValue=(typeof(attributes[attribute])=="string")?attributes[attribute].replace(/\"/g,'\''):attributes[attribute];s[i++]=' '+attributeName+'="'+StringSecurityUtils.encodeHtml(attributeValue)+'"';}
s[i++]=(this!='')?'>'+this+'</'+name+'>':'/>';return s.join('');};String.prototype.node=function node(tagName,attributes){var node=new Node(tagName,attributes);if(!!this.toString())node.innerHTML=this;return node;};String.prototype.supplant=function supplant(){var self=this;var reservedWord="\u1111\u3333\u7777\u4567\u3366";for(var i=0;i<arguments.length;i++){var escaped=(arguments[i]+"").replace(/\{(\d)\}/g,"{"+reservedWord+"$1}");self=self.replace(new RegExp("\\{"+i+"\\}",'g'),escaped);}
self=self.replace(/\{\d\}/g,'');return self.replace(new RegExp(reservedWord,'g'),'');};String.prototype.format=function format(object){var re_tokens=/\{([^\{\}]+)\}/g;return this.replace(re_tokens,function($match,$1){if(object[$1]){return object[$1];}
else{return'';}});};String.prototype.stripHTML=function stripHTML(delim){return this.replace(/<[^>]+>/ig,delim||'');};String.prototype.compactScript=function compactScript(){var s=this.replace(/\n\s+\n/g,'\n');return s.replace(/\/\*\*?[\w\W]*?\*\/\s+\r?\n*/g,'');};String.prototype.url=function(){if(this.match(CONTEXT_PREFIX)){}
return CONTEXT_PREFIX+this.replace(/^\//,'');}})();function trim(a){return a.trim();}
function Tag(tagName,attributes){return''.tag(tagName,attributes)};function getFunctionName(func){return(func.toString().match(/function ?([$_a-zA-Z][\w$_]*)/)||[])[1]||'anonymous';}
(window.ArrayUtils=function(){Array.prototype.indexOf=function indexOf(item){for(var i=this.length;i>-1&&this[i]!=item;i--){}
return i;};Array.prototype.tokenizedIndexOf=function tokenizedIndexOf(searchTerm,startIndex,howMany,delimiter){for(var i=0,len=this.length;i<len;i++){if(this[i].tokenizedSubstring(startIndex,howMany,delimiter||"/")==searchTerm)return i;}
return-1;};Array.prototype.quotedJoin=function quotedJoin(delim){delim=delim||',';for(var i=0,len=this.length;i<len;i++){var curr=this[i];if(curr.match(/'"'|','/))curr=quote(curr);}
return this.join(delim);function quote(str){return'"'+str.replace(/\"/g,"\\\"")+'"';}};Array.prototype.contains=function contains(obj){for(var i=0,len=this.length;i<len;i++){if(this[i]===obj)return true}
return false;};Array.prototype.forEach=function(visitor){for(var i=0,ret=[],len=this.length;i<len;i++){ret.push(visitor.call(this,this[i],i))}
return ret;};Array.prototype.swap=function swap(m,n){if(![m,n].between(0,this.length-1,true))return this;var temp=this[m];this[m]=this[n];this[n]=temp;return this;};Array.prototype.between=function between(min,max,isInclusive){for(var i=0,len=this.length;i<len;i++){if(!parseInt(this[i]).between(min,max,isInclusive))return false;}
return true;};Array.prototype.subArray=function subArray(start,end){var subArray=[];for(var i=start;i<end;i++){subArray[subArray.length]=this[i];}
return subArray;};ArrayUtils.copyArray=function copyArray(src,dest,start){if(YAHOO.lang.isUndefined(start)){start=0;}
for(var i=0;i<src.length;i++){dest[start+i]=src[i];}};ArrayUtils.merge=function merge(a,b){var o=[];a=a||[];b=b||[];if(a.length<b.length){a[b.length-1]=null;}
for(var i=0;i<a.length;i++){if(YAHOO.lang.isArray(b[i])){if(YAHOO.lang.isArray(a[i])){o[i]=ArrayUtils.merge(a[i],b[i]);}else{o[i]=b[i];}}else{o[i]=Util.isNull(b[i])?a[i]:b[i];}}
return o;};})();(function booleanUtils(){Boolean.parseBoolean=function parseBoolean(b){if(typeof b==="string"){b=b.toLowerCase().trim();}
return(b==="true"||b>0||b===true);};})();function limitInputLength(field,maxlimit){if(field.value.length>maxlimit)
field.value=field.value.substring(0,maxlimit);}
function getImageHTML(src,alt,altSrc){var imgSrc=isLowBandwidth&&altSrc?altSrc:src;var imgAlt=(alt||_AE.decorativeImage).escapeHtml();var out="<img src=\""+rewriteURL(imgSrc)+"\" alt=\""+imgAlt+"\"";out+=" />";return out;}
function InputHTML(name,value,type){if(typeof value=='undefined'){value='';}
type=(type||'text').escapeHtml();name=(name+"").escapeHtml();var out="<input type=\""+type+"\" name=\""+name+"\" value=\""+value.toString().escapeHtml()+"\"";if(arguments[3])out+=arguments[3];out+=" />";return out;}
function CheckboxHTML(name,value,isChecked){var attributes={type:'checkbox',name:name,value:typeof value!='undefined'?value.toString().escapeHTML():''};if(isChecked){attributes['checked']="true";}
var element=Tag('INPUT',attributes);if(arguments[3]){element=element.replace(/>$/," "+arguments[3]+" />");}
return element;}
function RadioHTML(name,value,isChecked){if(typeof value=='undefined'){value='';}
name=(name+"").escapeHtml();var out="<input type=\"radio\" name=\""+name+"\" value=\""+value.toString().escapeHtml()+"\"";if(isChecked)out+=" checked=\"true\"";if(arguments[3])out+=arguments[3];out+=" />";return out;}
function TextareaHTML(name,value){if(typeof value=='undefined'){value='';}
name=(name+"").escapeHtml();value=value.escapeHtml();var out="<textarea name=\""+name+"\" ";if(arguments[2])out+=arguments[2];out+=" >"+value+"</textarea>";return out;}
function SelectHTML(name,value,opts){if(typeof value=='undefined'){value='';}
var out=[];name=(name+"").escapeHtml();out.push("<select name=\""+name+"\" ");if(arguments[3])out.push(arguments[3]);out.push(">");var numOpts=opts.length;for(var i=0;i<numOpts;i++){var nextOpt=opts[i];var nextOptOne=nextOpt[1];out.push("<option value=\""+nextOptOne.toString().escapeHtml()+"\" ");if(value==nextOptOne)out.push('selected=\"true\" ');out.push(">"+(nextOpt[0]+"").escapeHtml()+"</option>");}
out.push("</select>");return out.join('');}
function isField(field){return field.tagName!='FIELDSET'&&field.type!='button'&&field.type!='submit';}
function getElements(container){if(container.tagName=='FORM'){return toArray(container.elements);}
var array=toArray(container.getElementsByTagName('INPUT'));array=array.concat(toArray(container.getElementsByTagName('TEXTAREA')));array=array.concat(toArray(container.getElementsByTagName('SELECT')));return array;function toArray(c){var array=new Array(c.length);for(var i=0;i<c.length;i++){array[i]=c[i]};return array;}}
function getRadioValue(oRadioGrp,isDisplayValue){if(typeof oRadioGrp.length=='undefined'){if(oRadioGrp.checked){if(isDisplayValue)return getFieldItemLabel(oRadioGrp);return oRadioGrp.value;}}else{for(var i=0;i<oRadioGrp.length;i++){if(oRadioGrp[i].checked){if(isDisplayValue)return getFieldItemLabel(oRadioGrp[i]);return oRadioGrp[i].value;}}}
return'';}
function getRadioGroupValue(name,isDisplayValue){return getRadioValue(document.getElementsByName(name),isDisplayValue);}
function getCheckboxInElement(object){var fields=object.getElementsByTagName('INPUT');for(var i=0;i<fields.length;i++){if(fields[i].type=='checkbox'){return fields[i];}}}
function getSelectedCheckboxes(checkGroup){var aResults=new Array();if(checkGroup[0]){for(var i=0;i<checkGroup.length;i++){if(checkGroup[i].checked){aResults[aResults.length]=i;}}}else{if(checkGroup.checked){aResults[0]=0;}}
return aResults;}
function getSelectedCheckboxValues(checkGroup,isDisplayValue){var aResults=new Array();var selectedItems=getSelectedCheckboxes(checkGroup);if(selectedItems.length!=0){aResults.length=selectedItems.length;for(var i=0;i<selectedItems.length;i++){if(checkGroup[selectedItems[i]]){aResults[i]=isDisplayValue?getFieldItemLabel(checkGroup[selectedItems[i]]):checkGroup[selectedItems[i]].value;}else{aResults[i]=isDisplayValue?getFieldItemLabel(checkGroup):checkGroup.value;}}}
return aResults;}
function checkAll(checkGroup){if(checkGroup[0]){for(var i=0;i<checkGroup.length;i++){checkGroup[i].checked=true;}}else{checkGroup.checked=true;}}
function uncheckAll(checkGroup){if(checkGroup[0]){for(var i=0;i<checkGroup.length;i++){checkGroup[i].checked=false;}}else{checkGroup.checked=false;}}
function getFieldValue(field,isDisplayValue){if(field.tagName=='INPUT'){if(field.type=='checkbox'){if(!field.name){return getSelectedCheckboxValues(field,isDisplayValue)}
var checkboxValues=getSelectedCheckboxValues(document.getElementsByName(field.name),isDisplayValue).join();return isDisplayValue?checkboxValues.replace(/\s\,/g,', '):checkboxValues;}else if(field.type=='radio'){return getRadioGroupValue(field.name,isDisplayValue);}else if(getObject('pickerDisplayName_'+field.name)&&isDisplayValue){return getObject('pickerDisplayName_'+field.name).value;}else{return field.value;}}else if(field.tagName=='SELECT'){if(field.selectedIndex==-1)return'';if(!field.multiple){return isDisplayValue?field.options[field.selectedIndex].innerText||field.options[field.selectedIndex].innerHTML:field.options[field.selectedIndex].value;}else{var concatValues="";for(var i=0;i<field.length;i++){if(field.options[i].selected){if(i!=0&&concatValues!="")concatValues+=", ";concatValues+=isDisplayValue?field.options[i].innerHTML:field.options[i].value;}}
return concatValues;}}else if(field.tagName=='TEXTAREA'){return field.value;}}
function isDuplicateValue(dropdown,value){var d=dropdown.options;for(var i=0;i<d.length;i++){if(d[i].value==value)return true;}
return false;}
function formListener(evt){var keywords=['Next','Finish'];evt=evt?evt:event;var key=evt.keyCode?evt.keyCode:evt.which;var target=evt.srcElement?evt.srcElement:evt.target;if(target.tagName=='TEXTAREA')return;var form=target.form;try{switch(key){case ENTER_KEY:var submit=getInputsByType('submit',form)[0];if(submit){autoClick(submit);if(evt.preventDefault)evt.preventDefault();else evt.returnValue=false;}
else for(var i=0;i<keywords.length;i++){var candidate=getElementsByAttributeValue('value',keywords[i],form,'INPUT')[0];if(candidate&&candidate.type=='button'){autoClick(candidate);if(evt.preventDefault)evt.preventDefault();else evt.returnValue=false;break;}}
break;case ESC_KEY:break;}}catch(e){}}
function openExpEditorForEmailAndTemplateSNs(fieldObj){var expEd=new ExpressionEditor(fieldObj,null,null,true,null,null,{processVariables:ap.util.getAllProcessVariables(),showProcessModelProperties:true,showProcessProperties:true});expEd.openEditor();}
function focusFirstInput(container){var container=$$(container);if(!container){return;}
var inputs=getElements(container);for(var i=0;i<inputs.length;++i){try{return inputs[i].focus();}
catch(e){continue;}}}
Date.Util={splitDatetimeString:function(datetime){var index=datetime.indexOf(_AE.datetimeSeparator);if(index==-1){return{dateStr:'',timeStr:''};}
return{dateStr:datetime.substring(0,index),timeStr:datetime.substring(index+1)};},createDatetimeString:function(date,time){if(!date||!time){return null;}
return date+_AE.datetimeSeparator+time;},datetimeToJSONFormat:function(date,time){if(!date&&!time){return null;}
return{dateStr:!date?'':date,timeStr:!time?'':time};},parseValue:function(value,type){var isMultiple=value.constructor==Array;if(!isMultiple){value=[value];}
if(type==asi.TYPES.DATE){for(var i=0;i<value.length;i++){value[i]=Date.Util.datetimeToJSONFormat(value[i],null);}}else if(type==asi.TYPES.DATETIME){for(var i=0;i<value.length;i++){var datetimeMap=Date.Util.splitDatetimeString(value[i]);value[i]=Date.Util.datetimeToJSONFormat(datetimeMap.dateStr,datetimeMap.timeStr);}}else if(type==asi.TYPES.TIME){for(var i=0;i<value.length;i++){value[i]=Date.Util.datetimeToJSONFormat(null,value[i]);}}
return isMultiple?value:value[0];},autoCorrect:function(field,type,callback){var value=field.value;var pickerPatterns=set(datePickerPattern,timePickerPattern,Date.Util.createDatetimeString(datePickerPattern,timePickerPattern));if(value.trim()in pickerPatterns){value="";}
var valuesArray=value.split(',');ensureJSON(function(){server.clientComponent.validateAndCorrectDateTimes(populateField,valuesArray,type);});function populateField(datetimes,exception){if(exception){throw new Error('Problem calling '+'server.clientComponent.validateAndCorrectDateTimes: '+exception.message);return;}
if(!datetimes){return;}
value='';for(var i=0;i<datetimes.length;i++){value+=datetimes[i];if(i+1!=datetimes.length)value+=', ';}
field.value=value;if(callback){callback(field);}}},validate:function(strvalue,type){var pickerPatterns=set(datePickerPattern,timePickerPattern,Date.Util.createDatetimeString(datePickerPattern,timePickerPattern));if(strvalue==''||strvalue in pickerPatterns){return true;}
var valuesArray=strvalue.split(',');var isValid=false;ensureJSON(function(){isValid=server.clientComponent.validateDateTimes(valuesArray,type);});return isValid;},getDateTimeStringsFromTimestamps:function(timestampArray,callback){ensureJSON(function(){server.clientComponent.getDateTimeStringsFromTimestamps(setDateTimeStrings,timestampArray);});function setDateTimeStrings(datetimes,exception){if(exception){throw new Error('Problem calling '+'server.clientComponent.getDateTimeStringsFromTimestamps: '+exception.message);return;}
if(callback){callback(datetimes);}}},getDateTimeStringFromDate:function(year,month,day,hour,minute,second,callback){ensureJSON(function(){server.clientComponent.getDateTimeStringFromDate(setDateTimeString,year,month,day,hour,minute,second);});function setDateTimeString(datetime,exception){if(exception){throw new Error('Problem calling '+'server.clientComponent.getDateTimeStringFromDate: '+exception.message);return;}
if(callback){callback(datetime);}}},getTimestampsFromDateTimeStrings:function(datetimeStrArray,type,callback){ensureJSON(function(){server.clientComponent.getTimestampsFromDateTimeStrings(setDateTimestamps,datetimeStrArray,type);});function setDateTimestamps(timestamps,exception){if(exception){throw new Error('Problem calling '+'server.clientComponent.getTimestampsFromDateTimeStrings: '+exception.message);return;}
if(callback){callback(timestamps);}}}};function rewriteURL(url){var parameters="";if(arguments.length>1&&arguments[1]!==''){parameters+=(url.indexOf("?")==-1)?"?":"&";parameters+=joinArgs(sliceArgs(arguments,1),"&");}
if(url.indexOf(CONTEXT_PREFIX)===0||url.indexOf('http')===0){return url+parameters;}
if(url.indexOf("/")===0){url=url.substring(1,url.length);}
return CONTEXT_PREFIX+url+parameters;}
function executeScript(string){if(!string.replace(/^\s+|\s$/g,'')){return;}
window.executedScript=string;if(window.execScript){window.execScript(string);}
else{self.eval(string);}
window.executedScript=null;}
function executeScripts(sourceHTML){var re_scripts=/<script([^>]*?)>([\w\W]*?)<\/script>/g;var scripts=[];sourceHTML=sourceHTML.replace(re_scripts,function(match,attributes,script){var isImported=false;attributes.replace(/src=(["'])(.+?)["']/,function(match,$1,url){importScript(url);isImported=true;});if(!isImported){scripts.push(script.compactScript());}
return'';});if(!window.isDebuggingMode){executeScript(scripts.join(';//-------------------------------------\n'));}else{scripts.forEach(executeScript);}
return sourceHTML;}
function backgroundAction(paths,targets,callback){if(!(paths instanceof Array)){paths=[paths];targets=[targets];}
if(!targets){targets=[];}
var isParseUitl=false;var useCache,contentObj,loadConfig={},config={},requestMsgTimeout;var numRequests=paths.length;var url=CONTEXT_PREFIX+'framework/backgroundAction.none';var data="";window.MARS=window.MARS||new Mars('backgroundAction');if(typeof arguments[2]=='object'){config=arguments[2];callback=config.callback;useCache=config.useCache;loadConfig.onload=config.onload;isParseUitl=config.isParseUitl;}
var re_contextPrefix=new RegExp('^.*?\\'+CONTEXT_PREFIX);paths.forEach(function(path,i){if(path.startsWith('http:')||path.startsWith('https:')||path.startsWith(CONTEXT_PREFIX)){path=path.replace(re_contextPrefix,'/');}
var hasResponse=!(/\$replace=false/).test(path);var isCached=!!MARS.cache[path.replace(/[&\?]\$e=.*$/g,'')];if(hasResponse){if(!(useCache&&isCached)&&(!targets[i]||targets[i]in set('portalContent','asiDialog'))){requestMsgTimeout=setTimeout(LOADING.show,REQUEST_MSG_DELAY);}
if(useCache&&isCached){numRequests--;return;}
if(targets[i]){path=path+((/\?/).test(path)?'&':'?')+"$e="+targets[i];}}
data+=(!i?'':'&')+"$bgUrl="+encodeURIComponent(path)+'&';});var lastRequest=url;if(numRequests){postURL(url,function(req){if(lastRequest!=url){return;}
if(requestMsgTimeout){clearTimeout(requestMsgTimeout);}
contentObj=MARS.parseXml(req.responseXML,isParseUitl,config.synchronizer);if(contentObj){if(useCache){MARS.addToCache(contentObj);}
loadConfig.scripts=contentObj.scripts;}
afterLoad();},data);}else{afterLoad();}
function afterLoad(){if(useCache){contentObj=MARS.getFromCache(paths,targets);}
if(contentObj){executeBackgroundLogic(contentObj,loadConfig);}
if(typeof timeout=='function'){timeout();}
if(typeof callback=='function'){callback();}}}
function executeBackgroundLogic(contentObj,loadConfig){clearTimeout(window.requestTimeout);for(var targetId in contentObj.content){if(targetId=='portalContent'&&Boolean.parseBoolean(contentObj.content[targetId].replace)){$('#portalContent').trigger("unload");$('#portalContent').unbind("unload");if(window.decorator=='main'&&typeof hideLayers=='function'){hideLayers();}}}
if(loadConfig&&loadConfig.scripts){executeScripts(loadConfig.scripts);}
var re_scripts=/<script[^>]*?>[\w\W]*?<\/script>/g;for(targetId in contentObj.content){var content=contentObj.content[targetId];var currentPath=content.path;var isReplace=Boolean.parseBoolean(content.replace);var isPlaceholder=Boolean.parseBoolean(content.isPlaceholder);var title=content.title;var target=$$(targetId);if(content.navMenu==='none'){document.body.className+=' noMenu';}else if(content.navMenu){NavigationMenu.switchMenu(content.navMenu);document.body.className=document.body.className.replace(/ noMenu/,'');}
if(content.navButton){NavigationButtons.highlight(content.navButton);}
if(content.refreshNav){NavigationMenu.refresh();}
if(target&&targetId!='asiDialog'){if(isReplace){target.innerHTML=content.body.replace(re_scripts,'');}
if(isPlaceholder){var placeholder=$(target);var nodes=$(placeholder).get(0).childNodes;for(var i=nodes.length-1;i>=0;i--){placeholder.after(nodes[i]);}
placeholder.remove();}else if(targetId==='portalContent'){window.portalContentData={};target.setAttribute('lastHref',currentPath);target.className='';if(isReplace){target.appendChild('.'.node('DIV',{style:{clear:'both',visibility:'hidden'}}));};if(title.trim()||isReplace){Navigation.setBreadcrumb(StringSecurityUtils.unencodeHtml(window.currentNavCategory),StringSecurityUtils.unencodeHtml(Navigation.getPageTitle())||StringSecurityUtils.unencodeHtml(title));top.document.title=WINDOW_TITLE+' - '+
title.replace(/\r|\n/g,'').trim().unescapeHTML();}}
executeScripts(content.body);}else if(targetId==='asiDialog'){var dialogContainer=currentPath.match(/&dialogId=(\w+)/);dialogContainer=(dialogContainer&&dialogContainer[1])||targetId;var dialogSize=currentPath.match(/asiDialogSize=(\w+)/);dialogSize=(dialogSize&&dialogSize[1])||'';window.DIALOGS=window.DIALOGS||[];if(isReplace){if(!DIALOGS[dialogContainer]||!$$(dialogContainer)){new Dialog(dialogContainer,{size:dialogSize});}else{$$(DIALOGS[dialogContainer].id).className='asiDialog '+dialogSize;}
DIALOGS[dialogContainer].setTitle(StringSecurityUtils.unencodeHtml(title));DIALOGS[dialogContainer].setContent(content.body.replace(re_scripts,''));}
executeScripts(content.body);if(isReplace&&DIALOGS[dialogContainer]){DIALOGS[dialogContainer].show();}}else if(isReplace===false){executeScripts(content.body);}else{ASI_LOG.warn('Container with id "{0}" was not found in the DOM.'.supplant(targetId));}
if(loadConfig&&loadConfig.onload){loadConfig.onload(targetId);}}
try{LOADING.hide();}catch(e){}}
function popup(action,windowName,properties){action=action.replace(/\.do(?=\?)|.do$/,'.popup');action=rewriteURL(action);var newWindow=window.open(action,windowName,properties);if(newWindow){newWindow.focus();}
return newWindow;}
function goToPage(page){window.location.href=rewriteURL(page,joinArgs(sliceArgs(arguments,1),"&"));}
function backgroundPage(page){if(!page){return;}
if(page.endsWith('.none')||page.indexOf('.none?')>0){return backgroundPageNoHistory(page);}
page=rewriteURL(page.replace(/\.do(?=\?)|.do$/,'.bg'),joinArgs(sliceArgs(arguments,1),"&"));try{LOADING.show();}catch(e){}
if(window.name=='fProcess'){window.location.href=page;}
else{window.fProcess.location.href=page;}}
function backgroundPageNoHistory(page){if(!page){return;}
page=rewriteURL(page.replace(/\.do(?=\?)|.do$/,'.bg'),joinArgs(sliceArgs(arguments,1),"&"));if(window.name=='fProcess'){window.location.replace(page);}
else{window.fProcess.location.replace(page);}}
function startRequestTimeout(config){if(!config){return;}
return(window.requestTimeout=setTimeout(function(){if(!config.callback||config.callback()){backgroundPage(config.url);}},REQUEST_TIMEOUT));}
UI={getElementsByTagName:function(tagName,container){if(!document.getElementsByTagNameNS){tagName=tagName.replace(/^\w+:/,'');}
var collection=container.getElementsByTagName(tagName);collection.forEach=function(visitor){var ret=[];for(var i=0,len=this.length;i<len;i++){ret.push(visitor.call(this,this[i],i));}
return ret;};return collection;},parseTest:function(input,scope){var re_chain=/([\w$]+[\[\]\.\w$]*)/g;var output=input.replace(re_chain,function(match,$1){try{var obj=UI.digest($1,scope);if((obj.toString='[object Object]')){if(obj.toSource){return obj.toSource();}
else{return toSource(obj);}}}catch(e){return $1;}});return!!eval('_obj = '+output);},digest:function(dataChain,scope,isGenerate){var re_namedProperty="\\[([\"|']).+?\\1\\]";var re_arrayIndex="\\[\\d+\\]";var re_identifier="[a-zA-Z_$][a-zA-Z_$\\d]*";var re_splitter=new RegExp([re_namedProperty,re_arrayIndex,re_identifier].join("|"),'g');var items=dataChain.match(re_splitter);var item=items[0];var key=item.replace(/^\[['|"]?(.+?)['|"]?\]$/,'$1');if(items.length==1){return scope[key];}
if(typeof scope[key]=='undefined'){if(!isGenerate){throw new Error(UI.UNDEFINED.supplant(dataChain));}
else{scope[key]=(new RegExp(re_arrayIndex)).test(item)?[]:{};}}
return UI.digest(dataChain.replace(item,''),scope[key],isGenerate);},executeTag:function(tagName){function ifTag(container,scope,tagName){tagName=tagName||'UI:IF';var elements=UI.getElementsByTagName(tagName,container),removed=[];elements.forEach(function(element){if(typeof element=='undefined'){return;}
var test=element.getAttribute('test').trim();if(!UI.parseTest(test,scope)){removed.push(element);}});removed.forEach(function(element){element.parentNode.removeChild(element);});}
function forEachTag(container,scope,tagName){tagName=tagName||'UI:FOREACH';var elements=UI.getElementsByTagName(tagName,container);var cloneMap={};elements.forEach(function(element){var clonerId=element.getAttribute('clonerId');if(clonerId){cloneMap[clonerId]=element;}
var dataChain=element.getAttribute('items');if(!dataChain){return;}
var collection=UI.digest(dataChain,scope);if(!element.mold){element.mold=new Node('MOLD');while(element.hasChildNodes()){element.mold.appendChild(element.firstChild);}}else{while(element.hasChildNodes()){element.removeChild(element.firstChild);}}
var variable=element.getAttribute('var');collection.forEach(function(item,i){var clone=element.mold.cloneNode(true);var targets=getElementsWithAttribute(['data','displayData'],clone);targets.forEach(function(target){var regex=new RegExp('(^| )'+variable);var cloneDataChain=target.getAttribute('data').replace(regex,dataChain+'['+i+']');target.setAttribute('data',cloneDataChain);if(target.getAttribute('displayData')){var cloneDataValueChain=target.getAttribute('displayData').replace(regex,dataChain+'['+i+']');target.setAttribute('displayData',cloneDataValueChain);}});while(clone.hasChildNodes()){element.appendChild(clone.firstChild);}});});return cloneMap;}
return eval(tagName+'Tag');},clone:function(element,scope){},UNDEFINED:'Object does not exist: {0}'};function setObjContents(objId,contentStr){getObject(objId).innerHTML=contentStr;}
function toggleArrow(arrowId){if((document.getElementById(arrowId).src).indexOf(asiArrowUpURL)>0){document.getElementById(arrowId).src=asiArrowDownURL;}
else{document.getElementById(arrowId).src=asiArrowUpURL;}}
function validatePortalSearch(searchValue){var searchTerm=trim(searchValue);if(searchTerm===""){asi.alert(_AE.pleaseEnter);return false;}
else if(searchTerm.match(/^[\*\?]/)){asi.alert(_AE.searchTerm);return false;}else if("-"==searchTerm){asi.alert(_AE.invalidSearch);return false;}else if(searchTerm.match(/[\'\"]/)){asi.alert(_AE.cannotContainQuotes);return false;}
else{return true;}}
function ACGetDocument(id,inline,kcid){if(isAnonymous){document.location.href=CONTEXT_PREFIX+"doc/"+id;}else{if(!inline)
inline='false';else if(inline=='inline')
inline='true';if(kcid){window.frames['fProcess'].location.href=strACDocumentExternalPath+"?id="+id+"&inline="+inline+"&kcid="+kcid;}
else{window.frames['fProcess'].location.href=strACDocumentExternalPath+"?id="+id+"&inline="+inline;}}}
function ACGetDocumentVersion(id,vid,inline,kcid){if(isAnonymous){}else{if(!inline)
inline='false';else if(inline=='inline')
inline='true';if(kcid){window.frames['fProcess'].location.href=strACDocumentExternalPath+"?id="+id+"&inline="+inline+"&kcid="+kcid+"&inline="+inline+"&vid="+vid;}
else{window.frames['fProcess'].location.href=strACDocumentExternalPath+"?id="+id+"&inline="+inline+"&vid="+vid;}}}
function doKey(e){var pK;var tN;if(window.event){pK=window.event.keyCode;tN=window.event.srcElement.tagName;}
else{pK=e.which;tN=e.target.tagName;}
if(pK==13&&tN.toUpperCase()!='TEXTAREA')return false;else if(pK==27)try{DIALOG.hideAll()}catch(e){}}
function viewSrc(){objWin=window.open("","objWin","top=5,left=5,width=1240,height=920,scrollbars=yes,resizable=yes");objDoc=objWin.document;objDoc.open("text/plain");objDoc.write(document.documentElement.outerHTML);objDoc.close();}
function resizeIframe(o,offset){if(window.innerHeight){theHeight=window.innerHeight}else if(document.documentElement&&document.documentElement.clientHeight){theHeight=document.documentElement.clientHeight}else if(document.body){theHeight=document.body.clientHeight}
theHeight-=offset;theHeight/=2;if(theHeight>0){o.style.height=theHeight+"px";if(o.name!="hContent")
o.style.display="inline";}else{o.style.display="none";}}
function getTopX(){if(window.innerHeight)
{theHeight=window.innerHeight}
else if(document.documentElement&&document.documentElement.clientHeight)
{theHeight=document.documentElement.clientHeight}
else if(document.body)
{theHeight=document.body.clientHeight}
return theHeight;}
function getRightY(){if(window.innerWidth)
{theWidth=window.innerWidth}
else if(document.documentElement&&document.documentElement.clientWidth)
{theWidth=document.documentElement.clientWidth}
else if(document.body)
{theWidth=document.body.clientWidth}
return theWidth;}
function setTop(o,x){if(x>=0)
o.style.top=x+"px";}
function setHeight(o,x){if(x>0)
o.style.height=x+"px";}
function getCenterX(){return getTopX()/2;}
function getCenterY(){if(window.innerWidth)
{theWidth=window.innerWidth}
else if(document.documentElement&&document.documentElement.clientWidth)
{theWidth=document.documentElement.clientWidth}
else if(document.body)
{theWidth=document.body.clientWidth}
theWidth/=2;return theWidth;}
function openEmailToGroup(groupId,evt){window.open('../toemailgroup.do?gid='+groupId,'','left=200,width=750,height=315,scrollbars=no');evt=evt?evt:event?event:null;if(evt)event.cancelBubble=true;}
function JSEscape(string){if(string&&string.constructor==String){string=string.replace(/\\/g,"\\\\");string=string.replace(/'/g,"\\'");string=string.replace(/"/g,'\\"');}
return string;}
function HTMLEscape(string){if(string&&string.constructor==String){string=string.replace(/</g,"&lt;");string=string.replace(/>/g,"&gt;");string=string.replace(/'/g,"&#39;");string=string.replace(/"/g,'&quot;');}
return string;}
bShowAdmin=false;function insertAtCursor(myRange,myValue){var parent=myRange.parentNode?myRange.parentNode():myRange.startContainer;myRange.text=myValue;myRange.select();}
function moveCursor(myField,steps){myField.focus();var range=document.selection.createRange();range.move("character",steps);range.select();}
function stringToDate(string,isTime){var date=new Date();var month;date.setHours(0);date.setMinutes(0);date.setSeconds(0);try{var twoDigitYearMess=false;string=string.split(',')[0].trim();if(!isTime)string=parser(string,date,true).trim();if(string.length)parser(string,date);if(twoDigitYearMess!==false){var thisYear=(new Date()).getFullYear();var lowerBound=new Date();lowerBound.setYear(thisYear-80);var upperBound=new Date();upperBound.setYear(thisYear+20);var testYear=(Math.floor(thisYear/100)-1)*100+Number(twoDigitYearMess);do{date.setYear(testYear);testYear+=100;}while(date<lowerBound||date>=upperBound)}
if(month==1&&date.getMonth()==2&&date.getDate()==1){date.setMonth(1);date.setDate(29);}
return date;}catch(e){return false;}
function parser(string,date,isDate){var buffer=isDate?datePickerPattern:timePickerPattern+' a';var tokens=isDate?'^y+|^M+|^d+':'^h+|^H+|^m+|^s+|^a+';while(buffer.length!=0){var match=buffer.match(new RegExp(tokens));if(!match){buffer=buffer.slice(1);string=string.replace(/^[^a-zA-Z0-9]*/,'');}else{buffer=buffer.slice(match[0].length);var topChar=match[0].charAt(0);var count=match[0].length;var stringLength=count;switch(topChar){case'y':var year=string.match(/^\d+/)[0];stringLength=year.length;if(stringLength==2)twoDigitYearMess=year;else date.setYear(year);break;case'M':var monthMatch=string.match(/^\d+/);if(monthMatch){stringLength=monthMatch[0].length;month=cap(monthMatch[0],12)-1;}else{monthMatch=string.match(/^[a-zA-Z]+/)[0];monthMatch=monthMatch.substr(0,1).toUpperCase()+monthMatch.substr(1).toLowerCase();month=_ASI.Datetime.months.indexOf(monthMatch);if(month==-1)
month=_ASI.Datetime.shortMonths.indexOf(monthMatch);if(month==-1)throw new Error(_AE.invalidMonth);stringLength=monthMatch.length;}
date.setMonth(month);break;case'd':var day=string.match(/^\d+/)[0];stringLength=day.length;date.setDate(cap(day,31));break;case'h':case'H':var hour=string.match(/^\d+/)[0];stringLength=hour.length;date.setHours(cap(hour,23,true));break;case'm':var minute=string.match(/^\d+/);stringLength=minute?minute[0].length:0;date.setMinutes(minute?cap(minute[0],59,true):0);break;case's':var second=string.match(/^\d+/);stringLength=second?second[0].length:0;date.setSeconds(second?cap(second[0],59,true):0);break;case'a':if(!string)break;var ampm=string.match(/[^ap]*[ap]m?/i)[0];stringLength=ampm.length;var hours=date.getHours();if(hours==12){hours=0;date.setHours(0)};if(ampm.match(/p/i)&&hours<12)date.setHours(hours+12);break;}
string=string.slice(stringLength);}}
return string;}
function cap(str,cap,allowZero){num=Number(str);if(!allowZero&&num==0)throw new Error();else if(num<=cap)return num;else if(allowZero&&num==cap+1)return 0;else throw new Error()}}
function validateDatetime(string,type){if(string in set(datePickerPattern,timePickerPattern,Date.Util.createDatetimeString(datePickerPattern,timePickerPattern)))return true;if(typeof dateRegEx=='undefined'||typeof timeRegEx=='undefined'||dateRegEx==''||timeRegEx==''){dateRegEx=datePickerPattern.escapeRegEx();dateRegEx=dateRegEx.replace(/y+/,'\\$2{1,4}');dateRegEx=dateRegEx.replace(/MMMM/,'('+_ASI.Datetime.months.join('|').replace(/M/g,'$1')+')');dateRegEx=dateRegEx.replace(/MMM/,'[A-Z][a-z][a-z]');dateRegEx=dateRegEx.replace(/MM/,'(0[1-9]|1[0-2])');dateRegEx=dateRegEx.replace(/M/,'(1[0-2]|[1-9])');dateRegEx=dateRegEx.replace(/dd/,'(0[1-9]|[12][0-9]|3[01])');dateRegEx=dateRegEx.replace(/d/,'([12][0-9]|3[01]|[1-9])');dateRegEx=dateRegEx.replace(/\$1/g,'M');dateRegEx=dateRegEx.replace(/\$2/g,'d');timeRegEx=timePickerPattern.escapeRegEx();timeRegEx=timeRegEx.replace(/hh/,'(0[1-9]|1[0-2])');timeRegEx=timeRegEx.replace(/h/,'(1[0-2]|[1-9])');timeRegEx=timeRegEx.replace(/HH/,'([01][0-9]|2[0-3])');timeRegEx=timeRegEx.replace(/H/,'(1[0-9]|2[0-3]|[0-9])');timeRegEx=timeRegEx.replace(/mm/,'[0-5][0-9]');timeRegEx=timeRegEx.replace(/m/,'[1-5]?[0-9]');timeRegEx=timeRegEx.replace(/ss/,'[0-5][0-9]');timeRegEx=timeRegEx.replace(/s/,'[1-5]?[0-9]');timeRegEx=timeRegEx.replace(/aa/,'[APap]Mm');timeRegEx=timeRegEx.replace(/a/,'[APap][Mm]');}
var regex='^';if(type=='datetime'||type=='date')regex+=dateRegEx;if(type=='datetime')regex+=_AE.datetimeSeparator;if(type=='datetime'||type=='time')regex+=timeRegEx;regex+='$';return string.match(new RegExp(regex))!=null;}
Date.prototype.toAString=function(type){var self=this;if(type=='datetime')var mask=Date.Util.createDatetimeString(datePickerPattern,timePickerPattern);else if(type=='datedisplay')var mask=calendarDateDisplayPattern;else var mask=type=='date'?datePickerPattern:timePickerPattern;var tokens='yMdhHmsaE'.split('');for(var i=0;i<tokens.length;i++){var regex=new RegExp('('+tokens[i]+'+)');if(regex.test(mask))mask=mask.replace(RegExp.$1,'{'+RegExp.$1+'}');}
var match;do{match=mask.match(/\{[^}]*\}/);if(match)mask=mask.replace(match[0],tokenTranslator(match[0].slice(1,-1)));}while(match)
return mask;function tokenTranslator(token){var month=self.getMonth();var date=self.getDate();var hours=self.getHours();var sHours=(11+hours)%12+1;var minutes=self.getMinutes();var seconds=self.getSeconds();switch(token){case'y':case'yy':return shortYear(self);case'yyyy':return self.getFullYear();case'M':return month+1;case'MM':return(month+1<10)?'0'+(month+1):month+1;case'MMM':return toText(month);case'MMMM':return toText(month,true);case'd':return date;case'dd':return(date<10)?'0'+date:date;case'h':return sHours;case'hh':return(sHours<10)?'0'+sHours:sHours;case'H':return hours;case'HH':return(hours<10)?'0'+hours:hours;case'm':return minutes;case'mm':return(minutes<10)?'0'+minutes:minutes;case's':return seconds;case'ss':return(seconds<10)?'0'+seconds:seconds;case'a':case'aa':return(hours<12)?'AM':'PM';case'EEEE':return toDayText(self.getDay(),false);}}
function toText(month,isLong){var array=isLong?_ASI.Datetime.months:_ASI.Datetime.shortMonths;return array[month];}
function shortYear(date){var thisYear=(new Date()).getFullYear();var lowerBound=new Date();lowerBound.setYear(thisYear-80);var upperBound=new Date();upperBound.setYear(thisYear+20);return(date<lowerBound||date>=upperBound)?date.getFullYear():date.getFullYear().toString().substr(2,2);}
function toDayText(day,isPlural){var array=isPlural?_ASI.Calendar.dayNamesPlural:_ASI.Calendar.dayNames;return array[day];}};function autoCorrect(field,type,noMultiple){var value=field.value;if(value==''||value.validate(type,!noMultiple))return;var array=noMultiple?[value]:value.split(',');value='';for(var i=0;i<array.length;i++){var datetime=stringToDate(array[i],type=='time');if(!datetime)return;value+=datetime.toAString(type);if(i+1!=array.length)value+=', ';}
field.value=value;}
function getMachineUserTimeZoneOffset(date){var offchgsLength=GMT_OFFSETCHANGES.length;var dateMilis=date.getTime();var currentUserTimeZoneOffset=GMT_OFFSETCHANGES[0].offset;if(dateMilis>GMT_OFFSETCHANGES[offchgsLength-1].timestamp){asi.alert(_AE.dateOutDSTInterval);}else if(dateMilis>=GMT_OFFSETCHANGES[0].timestamp){var i=Math.floor(offchgsLength/2);if(dateMilis>=GMT_OFFSETCHANGES[i].timestamp){do{i++;}while(i<offchgsLength&&dateMilis>=GMT_OFFSETCHANGES[i].timestamp)
currentUserTimeZoneOffset=GMT_OFFSETCHANGES[i-1].offset;}else{do{i--;}while(i>=0&&dateMilis<GMT_OFFSETCHANGES[i].timestamp)
currentUserTimeZoneOffset=GMT_OFFSETCHANGES[i].offset;}}
return currentUserTimeZoneOffset+date.getTimezoneOffset()*60000;}
Date.prototype.getMonthDays=function(){var days=new Array();var initialPad=new Date(this.getFullYear(),this.getMonth(),1).getDay();var lastDate=32-new Date(this.getFullYear(),this.getMonth(),32).getDate();for(var i=0;i<initialPad;i++){days.push('&nbsp;')}
for(var i=1;i<=lastDate;i++){days.push(i)}
return days;};function getDateTimeStrings(timestamp){if(timestamp==null)return null;if(timestamp.time)timestamp=timestamp.time*1000;var userTimeStamp=parseInt(timestamp)+getMachineUserTimeZoneOffset(new Date(timestamp));var dateArray=new Array();var dateTime=new Date(userTimeStamp);dateArray['date']=dateTime.toAString('date');dateArray['time']=dateTime.toAString('time');return dateArray;}
function getTimefromStrings(dat,time){var date;if(!dat&&!time)return null;else if(!dat)date=stringToDate(time,true)||new Date();else if(!time)date=stringToDate(dat)||new Date();else date=stringToDate(dat+' '+time)||new Date();var gmtTimestamp=date.getTime()-getMachineUserTimeZoneOffset(new Date(date));var myTime=parseInt(gmtTimestamp/1000)
return{time:myTime};}
function showObject(objectId){theObject=getObject(objectId,"1");theObject["display"]="inline";}
function showObjectNull(objectId){theObject=getObject(objectId,"1");theObject["display"]="";}
function showObjectBlock(objectId){theObject=getObject(objectId,"1");theObject["display"]="block";}
function show(object){object.style.display='';}
function hideObject(objectId){theObject=getObject(objectId,"1");theObject["display"]="none";}
function hide(object){object.style.display='none';}
function attachHover(element,nodeName,cascade){if(element){var root=element;for(var i=0;i<root.childNodes.length;i++){var node=root.childNodes[i];if(node.nodeName==nodeName&&node.className!='divider'){attachSingleHover(node);}
if(cascade&&node.nodeType==1){attachHover(node,nodeName,true);}}}}
function attachSingleHover(element){element.onmouseover=function(){this.className+=" hover";}
element.onmouseout=function(){this.className=this.className.replace(/ *hover/g,"");}}
function getObject(objectId,isGetStyle){var object=document.getElementById(objectId);if(object)return isGetStyle?object.style:object;else return null;}
Navigation={setBreadcrumb:function(){var breadcrumbDOM=$$('breadcrumb');var pageTitleDOM=$$('pageTitle');var pageContextDOM=$$('pageContext');if(!breadcrumbDOM||!pageTitleDOM||!pageContextDOM){return;}
pageTitleDOM.innerHTML=StringSecurityUtils.encodeHtml(arguments[arguments.length-1]);pageContextDOM.innerHTML='';var breadcrumb='';for(var i=0,len=arguments.length-1;i<len;i++){var item=arguments[i];if(!item||item==arguments[len]){continue;}
breadcrumb+=((i&&arguments[len-2])?'&nbsp;&gt;&nbsp;':'');if(typeof item=='string'&&item.trim()){breadcrumb+=item.escapeHtml();}else if(item.tagName=='A'){breadcrumb+=(item.outerHTML?item.outerHTML:Node('DIV').appendChild(item).innerHTML);}}
breadcrumbDOM.innerHTML=breadcrumb;},setReportPageTitle:function(title,context){$$('pageTitle').innerHTML=title.escapeHTML();if(!context){return;}
var editLink=_AE.editContext.tag('a',{href:'#',onclick:'hideLayers(); showReportOptions(window.portalContentData.currentReportInstanceId)'});editLink=editLink.escapeJS();var contextLabel=context;var isMultiple=!!(context.split(_AE.uiDelimiter).length-1);if(isMultiple){contextLabel=_AE.view+' '+window.portalContentData.currentReportContextTypeDisplay;}
contextLabel=contextLabel.escapeHTML();var contextEscaped=context.escapeHTML().escapeJS();contextLink=(contextLabel).tag('a',{title:context,onclick:'asi.alert(\'{0}<br /><br />{1}\'); return false;'.supplant(contextEscaped,editLink),href:'#'});$$('pageContext').innerHTML='({0})'.supplant(contextLink);},getPageTitle:function(){var pageTitle='';var category=window.currentNavCategory;var content=$$('portalContent');if(content=getElementsByClassName('asiPortalPageHeader',content,'DIV')[0]){var header=content.getElementsByTagName('H1')[0];if(header&&header.innerHTML.trim()!='&nbsp;'){pageTitle=header.innerHTML.stripHTML('\n');var candidates=pageTitle.trim().split('\n');pageTitle=candidates[0];}else{header=content.getElementsByTagName('LI')[0];if(header){pageTitle=header.innerHTML.stripHTML('\n').trim().split('\n')[0];}}}else{pageTitle=(pageTitle==category)?' ':pageTitle;}
return pageTitle;},setHomePage:function(){if(Navigation.currentPageLink){var fn=$$('pageTitle').innerHTML.stripHTML();var link=Navigation.currentPageLink;if(link.indexOf('.do')<0&&Navigation.currentTab!=null){link+='/'+Navigation.currentTab.getAttribute('contentId')+'Nav';}
backgroundPage('/portal/setMyHomePage.do?$replace=false&homePage='+link+'&friendlyName='+fn+'&keepNavigationContext="true"&keepDashboardContext="true"');}},setCurrentPageLink:function(url){if(url){Navigation.currentPageLink=url;}
else{delete Navigation.currentPageLink;}},reset:function(){if($$('pageOptions')){var pageOptions=new Dropdown('pageOptions');pageOptions.clearOptions();}},setPageOptions:function(homepageUrl,favoritesLink){var pageOptions=new Dropdown('pageOptions');var dropdownIsEmpty=true;for(var i=0;i<arguments.length;i++){if(arguments[i]){dropdownIsEmpty=false;break;}}
if(dropdownIsEmpty)hideObject('pageOptions');else showObjectNull('pageOptions');if(favoritesLink!=null){this.favoritesIdentity="&id={0}&type={1}".supplant(favoritesLink.id,favoritesLink.type);if(favoritesLink.isFavorite){pageOptions.addOption(_AE.removeFromFavorites,this.removeFromFavorites,true);}else{pageOptions.addOption(_AE.addToFavorites,this.addToFavorites,true);}}
this.setCurrentPageLink(homepageUrl);if(homepageUrl){pageOptions.addOption(_AE.makeThisMyHomepage,this.setHomePage,true);}},addToFavorites:function(){backgroundAction('/analytics/favorites/add.do?$replace=false'+Navigation.favoritesIdentity);STATUS.message(_AE.addedToFavorites);var pageOptions=new Dropdown('pageOptions');pageOptions.removeOption(_AE.addToFavorites);pageOptions.addOption(_AE.removeFromFavorites,Navigation.removeFromFavorites);pageOptions.hide();},removeFromFavorites:function(){backgroundAction('/analytics/favorites/remove.do?$replace=false'+Navigation.favoritesIdentity);STATUS.message(_AE.removedFromFavorites);var pageOptions=new Dropdown('pageOptions');pageOptions.removeOption(_AE.removeFromFavorites);pageOptions.addOption(_AE.addToFavorites,Navigation.addToFavorites);pageOptions.hide();}};var NavigationMenu={currentNavigationItem:null,switchMenu:function(path){var old=$$(this.currentNavigationItem);if(old){old.style.display='none';}
this.currentNavigationItem=path;if($$(path)){$$(path).style.display='';}else{if(!path){return;}
var mainNavigation=$$('mainNavigation');if(mainNavigation){mainNavigation.appendChild(Node('DIV',{id:path,className:path.replace(/(.*\/)*(.+)\.jsp/,'$2Nav')}));}
backgroundAction(path,path);}},refresh:function(){var mainNavigation=$$('mainNavigation');if(mainNavigation){mainNavigation.innerHTML='';}
this.switchMenu(this.currentNavigationItem);}};var NavigationButtons={highlight:function(key){var categoryNavigationTabs=$$('categoryNavigationTabs');if(!categoryNavigationTabs){ASI_LOG.warn('Illegal method call',true);return;}
var lis=categoryNavigationTabs.getElementsByTagName('LI');for(var i=0;i<lis.length;i++){var li=lis[i];if(li.getAttribute('contentId')==key){Navigation.currentTab=li;li.className='current';}else{li.className='';}}}};AEUtils={generateDropdownData:function(pvs,filterInstanceType,filterOnTypeOnly,levelsDeep){filterOnTypeOnly=Util.isNull(filterOnTypeOnly)?false:filterOnTypeOnly;filterInstanceType=DatatypeUtils.getFoundationInstanceType(filterInstanceType);levelsDeep=levelsDeep||6;pvs=convertPvsToInstanceType(pvs);var output=generate(pvs,filterInstanceType);convertPvsToType(output);convertPvsToType(pvs);capLevelsDeep(output,levelsDeep);prune(output,levelsDeep);return output;function prune(lat,levelsDeep,deep){deep=deep||0;for(var i=0;i<lat.length;i++){var childs=lat[i].children;if(childs){prune(childs,levelsDeep,deep+1);}else{if(deep>=levelsDeep&&!lat[i].isMatch){lat.splice(i,1);i--;}}}}
function capLevelsDeep(lat,levelsDeep,deep){deep=deep||0;for(var i=0;i<lat.length;i++){var childs=lat[i].children;if(childs){if(deep>=levelsDeep){for(var j=0;j<childs.length;j++){childs[j].display=lat[i].display+"."+childs[j].display;childs[j].value=childs[j].value;lat.push(childs[j]);}
delete lat[i].children;}else{capLevelsDeep(childs,levelsDeep,deep+1);}}}}
function convertPvsToInstanceType(pvs){for(var i=0;i<pvs.length;i++){if(Boolean.parseBoolean(pvs[i].multiple)){pvs[i].type=Constants.TYPES[pvs[i].type].listType;}}
return pvs;}
function convertPvsToType(pvs){for(var i=0;i<pvs.length;i++){if(Boolean.parseBoolean(pvs[i].multiple)){pvs[i].type=Constants.TYPES[pvs[i].type].singleType;}}
return pvs;}
function generate(pvs,filterInstanceType,prefix,parent,parentTypes,isParentMultiple){prefix=prefix||"";parent=parent||{};parentTypes=parentTypes||{};isParentMultiple=isParentMultiple||false;filterType=DatatypeUtils.getFoundationType(filterInstanceType);var display,value,type,instanceType,multiple;if(pvs.length===0){return[];}
var output=[];for(var i=0,j=pvs.length;i<j;i++){display=pvs[i].key;value=prefix+StringUtils.encloseIdentifierInQuotes(pvs[i].key);instanceType=pvs[i].type;multiple=Constants.TYPES[instanceType].isList;type=multiple?Constants.TYPES[instanceType].singleType:instanceType;if(isParentMultiple){if(multiple){continue;}else{multiple=true;instanceType=Constants.TYPES[instanceType].listType;}}
var entry={display:display,value:value,type:instanceType,parent:parent,index:i,multiple:multiple};var children=[];if(Constants.TYPES[type].isRecord){var dataType=Constants.TYPES[type];var mockPvs=[];for(var k=0;k<dataType.fieldNames.length;k++){mockPvs.push({key:dataType.fieldNames[k],type:dataType.fieldTypes[k],multiple:Constants.TYPES[dataType.fieldTypes[k]].isList});}
if(!parentTypes[instanceType]){parentTypes[instanceType]=true;children=generate(mockPvs,filterInstanceType,value+".",entry,parentTypes,multiple);parentTypes[instanceType]=false;}}
var isMatch=Util.isNull(filterInstanceType)||DatatypeUtils.getFoundationInstanceType(instanceType)===filterInstanceType||(filterOnTypeOnly&&(DatatypeUtils.getFoundationType(instanceType)===filterType));if(isMatch||children.length>0){entry.isMatch=isMatch;if(children.length>0){entry.children=children;}
output.push(entry);}}
return output;}},toggleFavorite:function(setAsFavorite,id,type){var action=setAsFavorite?"add":"remove";id=encodeURIComponent(id);type=encodeURIComponent(type);backgroundAction("/analytics/favorites/{0}.do?$replace=false&id={1}&type={2}".supplant(action,id,type));$("#mainContent").trigger(Events.toggleFavorite,[id,type]);},findPvTypeByName:function(fullPvName,allPvs){var pvParts=fullPvName.split('.');var currPart=0;while(currPart<pvParts.length&&pvParts.length>1){if(pvParts[currPart++].indexOf("'")==0){if(pvParts[currPart-1].charAt(pvParts[currPart-1].length-1)!="'"){while(pvParts[currPart].indexOf("'")<0){pvParts[currPart-1]=pvParts[currPart-1]+'.'+pvParts[currPart];pvParts.splice(currPart,1);}
pvParts[currPart-1]=pvParts[currPart-1]+'.'+pvParts[currPart];pvParts.splice(currPart,1);}
pvParts[currPart-1]=pvParts[currPart-1].substring(1,pvParts[currPart-1].length-1);}}
currPart=0;for(var i=0;i<allPvs.length;i++){if(allPvs[i].key!=pvParts[0]){continue;}
if(pvParts.length==1){return{id:allPvs[i].type,isList:Boolean.parseBoolean(allPvs[i].multiple)};}
var datatype=Constants.TYPES[allPvs[i].type];function getInnerType(datatype_,index_,parentMultiple_){var innerName=pvParts[index_];for(var j=0;j<datatype_.fieldNames.length;j++){if(datatype_.fieldNames[j]!=innerName){continue;}
var currType=Constants.TYPES[datatype_.fieldTypes[j]];var currMultiple=currType.isList;if(currMultiple){currType=Constants.TYPES[currType.singleType];}
if(index_==(pvParts.length-1)){if(parentMultiple_&&currMultiple){return{id:0,isList:false};}else{return{id:currType.id,isList:parentMultiple_||currMultiple};}}else{return getInnerType(currType,index_+1,parentMultiple_||currMultiple);}}
return null;}
return getInnerType(datatype,1,Boolean.parseBoolean(allPvs[i].multiple));}
return null;}};function toggleFavorite(img,id,type,evt){var onOrOff=img.getAttribute('isFavorite')==="off"?"on":"off";img.setAttribute('isFavorite',onOrOff);img.setAttribute("src","{0}framework/img/star_{1}.gif".supplant(CONTEXT_PREFIX,onOrOff));AEUtils.toggleFavorite(onOrOff=="on",id,type);var event=evt||window.event;event.returnValue=false;event.cancelBubble=true;}
function doUserDetail(name){name=encodeURIComponent(name);popup('/userdetail_pop.do?un='+name,'','left=200,top=400,width=495,height=250,scrollbars=no');}
function doNoteDetail(pid,nid){pid=encodeURIComponent(pid);nid=encodeURIComponent(nid);backgroundPage('/process/notedetail_pop.do?$e=asiDialog&asiDialogSize=small&pid='+pid+'&nid='+nid);}
function doAttachmentDetail(pid,aid){pid=encodeURIComponent(pid);aid=encodeURIComponent(aid);popup('process/attachmentdetail_pop.popup?pid='+pid+'&aid='+aid,'','left=200,width=470,height=300,scrollbars=no');}
function doGroupDetail(id){id=encodeURIComponent(id);popup('/groupdetail_pop.do?gid='+id,'','left=200,top=400,width=495,height=250');}
function AEItemHTML(type,id,displayName,hasIcon){switch(parseInt(type,10)){case TYPE_USER:return UserHTML(id,displayName,hasIcon);case TYPE_GROUP:return GroupHTML(id,displayName,hasIcon);case TYPE_ACTOR:return ActorHTML(id,displayName,hasIcon);case TYPE_EXPRESSION:return ExpressionHTML(id,displayName,hasIcon);default:return displayName;}}
function UserHTML(id,displayName,hasIcon){id=StringSecurityUtils.escapeJavaScript(id);id=StringSecurityUtils.encodeHtml(id);displayName=StringSecurityUtils.encodeHtml(displayName);var out="";out+="<a href=\"#\" onclick=\"doUserDetail('"+id+"')\">";if(hasIcon){out+="<img src=\""+rewriteURL('/personalization/img/menu_user.gif')+'\" alt=\"'+_AE.user+'\" class=\"partlyTranspUserImg\" \>';}
out+=displayName;out+="</a>";return out;}
function ActorHTML(id,displayName,hasIcon){displayName=StringSecurityUtils.encodeHtml(displayName);var out="";if(hasIcon){out+="<img src=\""+rewriteURL('/process/img/menu_role.gif')+'\" alt=\"'+_AE.actor+'\" \>';}
out+=displayName;out+="";return out;}
function ExpressionHTML(id,displayName,hasIcon){displayName=StringSecurityUtils.encodeHtml(displayName);var out="";if(hasIcon){out+="<img src=\""+rewriteURL('/components/expeditor/img/openEditor.gif')+'\" alt=\"'+_AE.expression+'\" \>';}
out+=displayName;out+="";return out;}
function GroupHTML(id,displayName,hasIcon){id=StringSecurityUtils.escapeJavaScript(id);id=StringSecurityUtils.encodeHtml(id);displayName=StringSecurityUtils.encodeHtml(displayName);var out="";out+="<a href=\"#\" onclick=\"doGroupDetail('"+id+"')\">";if(hasIcon){out+="<img src=\""+rewriteURL('/components/toolbar/img/dept.gif')+'\" alt=\"'+_AE.department+'\" \>';}
out+=displayName;out+="</a>";return out;}
function ACGetFolder(id){id=encodeURIComponent(id);window.frames['fProcess'].location.href=strACFolderExternalPath+"?id="+id;}
function ACGetKnowledgeCenter(id){id=encodeURIComponent(id);window.frames['fProcess'].location.href=strACKnowledgeCenterExternalPath+"?id="+id;}
function ACGetCommunity(id){id=encodeURIComponent(id);window.frames['fProcess'].location.href=strACCommunityExternalPath+"/"+id;}
function APGetUser(name){name=encodeURIComponent(name);window.frames['fProcess'].location.href=strAPUserExternalPath+"?username="+name;}
function APGetGroup(id){id=encodeURIComponent(id);window.frames['fProcess'].location.href=strAPGroupExternalPath+"?groupid="+id;}
function GetThread(id){id=encodeURIComponent(id);backgroundPage("/forums/thread_V.do?threadId="+id);}
function GetForum(id){id=encodeURIComponent(id);backgroundPage("/forums/forum_V.do?forumId="+id);}
function GetPage(id){id=encodeURIComponent(id);backgroundPage("/portal.do?$p="+id);}
function transferBackgroundPasswords(){try{var sourceInputs=getInputsByType('password',fProcess.getObject('portalContent'));var displayedInputs=getInputsByType('password',getObject(window.fProcess.$e));for(var i=0;i<sourceInputs.length;i++){displayedInputs[i].value=sourceInputs[i].value;}}catch(e){}}
function executeJavaScript(){return window.name!='fProcess';}
function loadModeler(id,version){version=version?version.trim():version;if(typeof timeOut=='number'){clearTimeout(timeOut);}
if(getIEVer()>=6.0){var h=screen.availHeight;var w=screen.availWidth;var wh_ratio=screen.width/screen.height;if(wh_ratio>2){w/=2;}
try{if(!window.parent.processModeler||window.parent.processModeler.closed){if(Util.isNull(id)){processModeler=popup("/process/startdesigner.none",'processModeler','top='+(h*0.015)+',left='+(w*0.03)+',width='+(w*0.94)+',height='+(h*0.94)+',scrollbars=no',true);}else{if(Util.isNull(version)){processModeler=popup("/process/startdesigner.none?idToOpen="+id,'processModeler','top='+(h*0.015)+',left='+(w*0.03)+',width='+(w*0.94)+',height='+(h*0.94)+',scrollbars=no',true);}else{processModeler=popup("/process/startdesigner.none?idToOpen="+id+"&versionToOpen="+version,'processModeler','top='+(h*0.015)+',left='+(w*0.03)+',width='+(w*0.94)+',height='+(h*0.94)+',scrollbars=no',true);}}
window.parent.processModeler=processModeler;}else{if(window.parent.processModeler.ap.Control.isSubCanvasOpen()){asi.alert(_AE.openSubCanvasModel);return;}
if(Util.isNull(id)){window.parent.processModeler.ap.Control.newPM();}else{window.parent.processModeler.ap.Control.openPM(id,version);}
window.parent.processModeler.focus();}}catch(e){}}else{asi.alert(_AE.notCompatible);}}
function loadModeler2(processId,isEdit){if(typeof timeOut=='number'){clearTimeout(timeOut);}
if(getIEVer()>=6.0){var h=screen.availHeight;var w=screen.availWidth;if(w>1800){w/=2;}
try{if(!window.parent.processModeler||window.parent.processModeler.closed){if(typeof processId=='undefined'){processModeler=popup("/process/startdesigner.none",'processModeler','top='+(h*0.015)+',left='+(w*0.03)+',width='+(w*0.94)+',height='+(h*0.94)+',scrollbars=no',true);}else{processModeler=popup("/process/startdesigner.none?processId="+processId+"&isEdit="+isEdit,'processModeler','top='+(h*0.015)+',left='+(w*0.03)+',width='+(w*0.94)+',height='+(h*0.94)+',scrollbars=no',true);}
window.parent.processModeler=processModeler;}else{if(window.parent.processModeler.ap.Control.isSubCanvasOpen()){asi.alert(_AE.openSubCanvasProcess);return;}
if(typeof processId=='undefined'){window.parent.processModeler.ap.Control.newPM();}else{window.parent.processModeler.ap.Control.openPD(processId,false,isEdit);}
window.parent.processModeler.focus();}}catch(e){}}else{asi.alert(_AE.notCompatible);}}
function promptCloseModeler(form){if(typeof processModeler=='undefined'){processModeler=window.parent.processModeler;}
if(typeof processModeler=='undefined'||processModeler.closed){return true;}else{asi.confirm(_AE.actionWillCloseModeler,function(){processModeler.closeModeler();if(form){form.submit();}});return false;}}
function logout(){if(typeof processModeler=='undefined'){processModeler=window.parent.processModeler;}
if(typeof processModeler=='undefined'||processModeler.closed){document.location.href=CONTEXT_PREFIX+"logout.do";}else{asi.confirm(_AE.loggingOut,logoutAndClose);}}
function logoutAndClose(){processModeler.closeModeler();Util.delayExecutionUntilReady(function isReady(){try{if(processModeler.closed){return true;}}catch(e){return true;}
return false;},function execute(){document.location.href=CONTEXT_PREFIX+"logout.do";});}
try{(function cpr_(){if(!document.readyState||document.readyState=='complete'){if(window.decorator=='main'&&$$('cpr')){$$('cpr').onclick=function(){var qf=$$('portalQueryField').value;if(qf.length!=9){return;}
popup('/collaboration/getDefaultPage.do?q='+qf,"_","top=50,left=200, width=500,height=400,screenX=200,screenY=50,resizable=yes,scrollbars=no");};}else if(window.decorator=='main'){setTimeout(cpr_,500);}}else{setTimeout(cpr_,500);}})();}catch(e){}
function getExpressionFromHtmlareaString(htmlareaString){if(htmlareaString===""){return htmlareaString;}
var first=true;var temp;var str="=concatenate(";while(htmlareaString.search("<IMG class=expImg")!=-1){var i=htmlareaString.search("<IMG class=expImg");if(i>0){if(!first){str+=',';}else{first=false;}
str+="\"";temp=htmlareaString.substr(0,i);str+=temp.replace(/"/g,'""');str+="\"";htmlareaString=htmlareaString.substr(i,htmlareaString.length);}
var beginAltPos=htmlareaString.search("alt=")+4;var endAltPos=0;htmlareaString=htmlareaString.substr(beginAltPos,htmlareaString.length);if(!first){str+=',';}else{first=false;}
var c=htmlareaString.charAt(0);htmlareaString=htmlareaString.substr(1,htmlareaString.length);if(c=='"'){endAltPos=htmlareaString.search('"');}else if(c=="'"){endAltPos=htmlareaString.search("'");}else{htmlareaString=c+htmlareaString;endAltPos=htmlareaString.search(" ");}
temp=htmlareaString.substr(0,endAltPos);temp=temp.unescapeHTML();temp=temp.replace(/&nbsp;/g," ");temp=temp.replace(/^=/,'');if(temp.trim().length<=0){temp='""';}
str+=temp;htmlareaString=htmlareaString.substr(endAltPos,htmlareaString.length);var endImg=htmlareaString.search('>');htmlareaString=htmlareaString.substr(endImg+1,htmlareaString.length);}
if(htmlareaString.length){if(!first){str+=',';}else{first=false;}
str+="\"";str+=htmlareaString.replace(/"/g,'""');str+="\"";}
str+=")";return str;}
function getHtmlareaStringFromExpression(expression){function getHtmlForExpression(expressionToken_){if(!expressionToken_||expressionToken_.length<=0){return'';}
expressionToken_=expressionToken_.replace(/'/g,"&#39;");return"<IMG class=expImg src=\""+rewriteURL('/components/expeditor/img/openEditor.gif')+"\" alt='"+expressionToken_+"' />";}
function getStringToken(expression,leaveQuotesEscaped,QUOTE_CHAR){if(!QUOTE_CHAR){QUOTE_CHAR='"';}
var result=new Array();result.token="";result.remainingExpressionAfterToken="";result.token=expression.charAt(0);expression=expression.trim();expression=expression.substr(1,expression.length);for(var nextQuoteIndex=expression.search(QUOTE_CHAR);nextQuoteIndex!=-1;nextQuoteIndex=expression.search(QUOTE_CHAR)){result.token+=expression.substr(0,nextQuoteIndex);var escapedQuote=expression.charAt(nextQuoteIndex+1);if(escapedQuote!=QUOTE_CHAR){result.token+=expression.charAt(nextQuoteIndex);expression=expression.substr(nextQuoteIndex+1,expression.length);break;}
result.token+=QUOTE_CHAR;if(leaveQuotesEscaped){result.token+=QUOTE_CHAR;}
expression=expression.substr(nextQuoteIndex+2,expression.length);}
result.remainingExpressionAfterToken=expression;return result;}
function getExpressionToken(expression){var result=new Array();result.token="";result.remainingExpressionAfterToken="";var parenStack=0;var curlyBraceStack=0;var squareBracketStack=0;while(expression.length>0){var c=expression.charAt(0);if(c=='"'||c=="'"){var stringToken=getStringToken(expression,true,c);result.token+=stringToken.token;expression=stringToken.remainingExpressionAfterToken;continue;}
if(c==','&&parenStack<=0&&curlyBraceStack<=0&&squareBracketStack<=0){break;}
if(c=='('){parenStack++;}else if(c==')'){parenStack--;}else if(c=='{'){curlyBraceStack++;}else if(c=='}'){curlyBraceStack--;}else if(c=='['){squareBracketStack++;}else if(c==']'){squareBracketStack--;}
result.token+=c;expression=expression.substr(1,expression.length);}
result.remainingExpressionAfterToken=expression;return result;}
if(!expression){return"";}
var parenthesisIndex=expression.indexOf('(');expression=expression.substring(parenthesisIndex+1,expression.length-1);var str="";do{expression=expression.trim();var c=expression.charAt(0);if(c=='"'){result=getStringToken(expression,false,c);if(result.remainingExpressionAfterToken.search(/^\s*&/)>=0){result=getExpressionToken(expression);str+=getHtmlForExpression(result.token);}else{str+=(result.token).substr(1,result.token.length-2);}}else{result=getExpressionToken(expression);str+=getHtmlForExpression(result.token);}
expression=result.remainingExpressionAfterToken.trim();expression=expression.substr(1,expression.length);}while(expression.length>0);return str;}
function getDetailPage(type,id){id=encodeURIComponent(id);switch(type){case TYPE_GROUP:backgroundPage('/personalization/groupdetail.do?$e=detailPane&gid='+id);break;case TYPE_USER:backgroundPage('/personalization/userdetail.do?$e=detailPane&un='+id);break;case TYPE_PROCESSMODEL_FOLDER:backgroundPage('/process/getProcessModelFolders.bg?id='+id);break;}}
Events={toggleFavorite:"toggleFavorite",setAsFavorite:"setAsFavorite",removeAsFavorite:"removeAsFavorite"};function EventCache(){var events=[];return{events:events,add:function(node,eventName){events.push([node,eventName]);},flush:function(){var item;while(events.length){item=events.pop();item[0][item[1]]=null;}}};}
window.eventCache=(function(){var _self=new EventCache();_self.flushAll=function(){this.flush();[D3,D2].forEach(function(monitor){var entities=monitor.entities;for(var type in entities){for(var id in entities[type]){var component=entities[type][id].entity;if(component&&component.eventCache){component.eventCache.flush();}}}});};return _self;})();window.Mappings={paramTypeMaps:[{feBaseType:'integer',paramType:TYPE_LONG},{feBaseType:'decimal',paramType:TYPE_DOUBLE},{feBaseType:'text',paramType:TYPE_STRING},{feBaseType:'paragraph',paramType:TYPE_STRING},{feBaseType:'user',paramType:TYPE_USER,pickerType:"users"},{feBaseType:'group',paramType:TYPE_GROUP,pickerType:"groups"},{feBaseType:'people',paramType:TYPE_PEOPLE,pickerType:"people"},{feBaseType:'date',paramType:TYPE_DATE},{feBaseType:'time',paramType:TYPE_TIME},{feBaseType:'datetime',paramType:TYPE_DATETIME},{feBaseType:'folder',paramType:TYPE_FOLDER,pickerType:"folders"},{feBaseType:'document',paramType:TYPE_DOCUMENT,pickerType:"documents"},{feBaseType:'content',paramType:TYPE_CONTENT,pickerType:"content"},{feBaseType:'page',paramType:TYPE_PAGE,pickerType:"portal_pages"},{feBaseType:'forum',paramType:TYPE_FORUM,pickerType:"forums"},{feBaseType:'topic',paramType:TYPE_DISCUSSION_THREAD,pickerType:"topics"},{feBaseType:'message',paramType:TYPE_MESSAGE,pickerType:"messages"},{feBaseType:'knowledge_center',paramType:TYPE_KNOWLEDGE_CENTER,pickerType:"knowledge_centers"},{feBaseType:'community',paramType:TYPE_COMMUNITY,pickerType:"communities"},{feBaseType:'email_recipient',paramType:TYPE_EMAIL_RECIPIENT,pickerType:"email_recipients"},{feBaseType:'email',paramType:TYPE_EMAIL_ADDRESS},{feBaseType:'button',paramType:TYPE_STRING},{feBaseType:'truefalse',paramType:TYPE_BOOLEAN},{feBaseType:'password',paramType:TYPE_PASSWORD},{feBaseType:'checkbox',paramType:TYPE_STRING},{feBaseType:'radio',paramType:TYPE_LONG},{feBaseType:'dropdown',paramType:TYPE_LONG},{feBaseType:'hidden',paramType:TYPE_STRING},{feBaseType:'longText',paramType:TYPE_STRING,paramTypeName:"Text"},{paramType:TYPE_PROCESS_MODEL,pickerType:"process_models"},{paramType:TYPE_DISCUSSION_THREAD,pickerType:"topics"},{paramType:TYPE_MESSAGE,pickerType:"messages"},{paramType:TYPE_EVENT,pickerType:"message_destinations"},{paramType:TYPE_PROCESS,pickerType:"processes"}],PickerTypetoParamType:function(pickerType){for(var i=0;i<Mappings.paramTypeMaps.length;i++){if(Mappings.paramTypeMaps[i].pickerType==pickerType){return Mappings.paramTypeMaps[i].paramType;}}},ParamTypetoPickerType:function(paramType){if(Constants.TYPES[paramType].isList){paramType=Constants.TYPES[paramType].singleType;}
var underlyingType=paramType;if(!Constants.TYPES[paramType].isRecord){underlyingType=Constants.TYPES[paramType].base!=paramType?Constants.TYPES[paramType].base:paramType;}
for(var i=0;i<Mappings.paramTypeMaps.length;i++){if(Mappings.paramTypeMaps[i].paramType==paramType||Mappings.paramTypeMaps[i].paramType==underlyingType){if(Mappings.paramTypeMaps[i].pickerType){return Mappings.paramTypeMaps[i].pickerType;}}}},ParamTypetoFE:function(paramType){if(Constants.TYPES[paramType].isList){paramType=Constants.TYPES[paramType].singleType;}
var underlyingType=paramType;if(!Constants.TYPES[paramType].isRecord){underlyingType=Constants.TYPES[paramType].base!=paramType?Constants.TYPES[paramType].base:paramType;}
for(var i=0;i<Mappings.paramTypeMaps.length;i++){if(Mappings.paramTypeMaps[i].paramType==paramType||Mappings.paramTypeMaps[i].paramType==underlyingType){return Mappings.paramTypeMaps[i].feBaseType;}}},FEtoParamType:function(feBaseType){for(var i=0;i<Mappings.paramTypeMaps.length;i++){if(Mappings.paramTypeMaps[i].feBaseType==feBaseType){return Mappings.paramTypeMaps[i].paramType;}}},FEtoParamTypeName:function(feBaseType){for(var i=0;i<Mappings.paramTypeMaps.length;i++){if(Mappings.paramTypeMaps[i].feBaseType==feBaseType){return Constants.TYPES[Mappings.paramTypeMaps[i].paramType].name;}}},FEtoPickerType:function(feBaseType){for(var i=0;i<Mappings.paramTypeMaps.length;i++){if(Mappings.paramTypeMaps[i].feBaseType==feBaseType){return Mappings.paramTypeMaps[i].pickerType;}}},CacheParamMappings:function(params){var paramCache={};var feBaseType;var paramType;for(var i=0;i<Mappings.paramTypeMaps.length;i++){feBaseType=Mappings.paramTypeMaps[i].feBaseType;paramType=Mappings.paramTypeMaps[i].paramType;paramCache[feBaseType]=[];for(var j=0;j<params.length;j++){var nextParam=params[j];if(nextParam.type==asi.TYPES.BEAN){var beanArrayName=nextParam.getName();var beans=nextParam.getValue();for(var k=0;k<beans.length;k++){var subParams=beans[k].getValue();for(var l=0;l<subParams.length;l++){var nextSubParam=subParams[l];if(paramType==nextSubParam.type&&!nextSubParam.hiddenFromDesigner){paramCache[feBaseType].push(nextSubParam);}}}}else if(paramType==nextParam.type&&!nextParam.hiddenFromDesigner){paramCache[feBaseType].push(nextParam);}}}
return paramCache;}};function $ContextMenu(id){var _self=new C3(this);_self.dropdown={};_self.show=function(evt){if(_self.setCapture)_self.setCapture();var x=evt.pageX||evt.clientX+document.body.scrollLeft;var y=evt.pageY||evt.clientY+document.body.scrollTop;_self.DOM.style.left=x-8+"px";_self.DOM.style.top=y-12+"px";_self.dropdown.show(evt);evt.cancelBubble=true;if(evt.preventDefault)evt.preventDefault();else evt.returnValue=false;return;}
function init(){_self.DOM=_self.dropdown.DOM;_self.DOM.style.position='absolute';}
_self.updateConfig();init();return _self;}
function $Demon(){var _self=this;_self.entities={};_self.register=function(object,type){var id=object.id||new Date().getTime();var entity={entity:object,caller:arguments.callee.caller};if(!type){_self.entities[id]=entity;}
else{if(!_self.entities[type]){_self.entities[type]={};}
_self.entities[type][id]=entity;}
return id;};_self.unregister=function(id,type){if(!type){return delete _self.entities[id];}
else{return delete _self.entities[type][id];}};function init(){_self.uid=('Demon_'+new Date().getTime());MAMON[_self.uid]=_self;}
init();return _self;}
window.MAMON=window.MAMON||{toggleConsole:function(){if(!MAMON.console){MAMON.console=new Console('Master',{toolbar:'/components/demon/masterToolbar.jsp'});MAMON.console.restore();return;}
if(!MAMON.console.$window.closed){MAMON.console.$window.focus();}
else{MAMON.console.restore();}}};function $Dropdown(id){var _self=new C3(this);_self.DOM=$$(id);_self.ul='';_self.toggle=function(evt){var pd=_self.parentDropdown;evt=evt||event;if(_self.ul.style.display==''){_self.show();}else{_self.hide();}
if(evt)evt.cancelBubble=true;}
_self.show=function(){var pd=_self.parentDropdown;if(DROPDOWN.openDropdown){if(pd){if(pd.openChild)pd.openChild.hide();pd.openChild=_self;}else{DROPDOWN.hideAll();}}
_self.ul.style.display='block';if(isIE6){_self.iframe=backWithIframe(_self.ul);}
if(!pd)DROPDOWN.openDropdown=_self;}
_self.hide=function(){var oc=_self.openChild;var pd=_self.parentDropdown;if(oc){oc.hide();_self.openChild=null;}
if(pd){if(_self==pd.openChild)pd.openChild=null;}
if(_self.iframe){_self.iframe.parentNode.removeChild(_self.iframe);}
_self.ul.style.display='';if(_self==DROPDOWN.openDropdown){DROPDOWN.openDropdown=null}}
_self.clearOptions=function(){_self.ul.innerHTML='';}
_self.addOption=function(title,onclick,insertTop){if(title==null||!onclick)ASI_LOG.error('Attempt to add dropdown option failed because title or onclick was not provided.');var li=title.node('LI',{onclick:onclick});if(insertTop&&_self.ul.childNodes.length>0){_self.ul.insertBefore(li,_self.ul.childNodes[0]);}else{_self.ul.appendChild(li);}
attachSingleHover(li);}
_self.removeOption=function(title){for(var i=0;i<_self.ul.childNodes.length;i++){var currentNode=_self.ul.childNodes[i];if(currentNode.innerHTML==title){_self.ul.removeChild(currentNode);}}}
_self.disableOption=function(title){}
_self.enableOption=function(title){}
function init(){var DOM=_self.DOM;_self.ul=DOM.getElementsByTagName('UL')[0];DOM.onclick=_self.toggle;_self.ul.onclick=function(evt){var evt=evt||event;DROPDOWN.hideAll();evt.cancelBubble=true;};for(var i=0;i<_self.ul.childNodes.length;i++){attachSingleHover(_self.ul.childNodes[i]);}}
_self.updateConfig();init();return _self;}
function $Grid(id,emptyMessage,delim){var _self=this;_self.stylesheets=['/components/css/asiGrid.css'];_self.className='asiGrid';_self.type='Grid';_self.component=Component;_self.component(id,_self.stylesheets,_self.type);var initGrid=init(_self.DOM);_self.emptyMessage=emptyMessage||_ASI.Grid.noResults;_self.DOM=initGrid?initGrid:_self.DOM.appendChild(getEmptyGridDOM(id,_self.emptyMessage));_self.defaultView=GRID.DEFAULT_VIEW;_self.delim=delim||"/";_self.isChanged=false;_self.descriptors=GRID.getDescriptors(_self.DOM);_self.deletedDescriptors=new Array();_self.getUpdateString=function(){var updateString="";var addedRows=getElementsByClassName('added',_self.DOM,'TR');var modifiedRows=getElementsByClassName('modified',_self.DOM,'TR');var rows=addedRows.concat(modifiedRows);for(var i=0;i<rows.length;i++){var rowDescriptor=GRID.getRowDescriptor(rows[i]);if(updateString.indexOf(rowDescriptor.tokenizedSubstring(0,2,_self.delim))==-1){updateString+=encodeURIComponent(rowDescriptor)+",";}}
for(i=0;i<_self.deletedDescriptors.length;i++){updateString+=encodeURIComponent(_self.deletedDescriptors[i])+",";}
return updateString.replace(/,$/,'');};_self.numCols=1;_self.getRowDOM=function(descriptor){var rowData=[];rowData[0]=CheckboxHTML('',descriptor);var data=descriptor.split(delim);for(var i=2;i<data.length;i++){rowData.push(data[i]);}
var row=GRID.getRowDOM(rowData);row.onclick=function(){selectRow(this);};_self.eventCache.add(row,"onclick");return row;};_self.regenerateRows=function(){var dataRows=getDataRows(_self.DOM,"asiGridNoResults");for(var i=0;i<dataRows.length;i++){var rd=GRID.getRowDescriptor(dataRows[i]);if(rd){var row=_self.addRow(_self.getRowDOM(rd),true,true);if(row){row.className=row.className.replace(/ added/g,'');}
rd=null;}}};_self.setHeader=function(headerList){var thead=getOrCreateElement('THEAD',_self.DOM);thead.replaceChild(getHeaderDOM(arguments),getElementsByClassName('asiGridHeaders',thead,'TR')[0]);};_self.setCaption=function(captionText){var caption=getOrCreateElement('CAPTION',_self.DOM);caption.innerHTML=(captionText+"").escapeHtml();};_self.setToolbar=function(){var thead=getOrCreateElement('THEAD',_self.DOM);var tbs=getElementsByClassName('asiToolbar',_self.DOM,'TR');var toolbarDOM=arguments.length?getToolbarDOM.apply(_self,arguments):getToolbarDOM();if(!tbs.length){thead.insertBefore(toolbarDOM,thead.rows[0]);}else{if(!arguments.length){tbs[0].parentNode.removeChild(tbs[0]);}
thead.replaceChild(toolbarDOM,tbs[0]);}
var rowSpace=getElementsByClassName('asiGridRowSpacer',thead,'TR')[0];if(rowSpace){rowSpace.parentNode.removeChild(rowSpace);}};this.addToolbarButton=function(label,href,onclick,title,iconPath){var thead=getOrCreateElement('THEAD',this.DOM);var toolbar=getElementsByClassName('asiToolbar',this.DOM,'TR');if(!toolbar.length){toolbar=getToolbarDOM.call(this);thead.insertBefore(toolbar,thead.rows[0]);toolbar.getElementsByTagName('TD')[0].innerHTML='';}else{toolbar=toolbar[0];}
href=href?rewriteURL(href):'#';if(!title){title=label;}
var newButton=new Node('A',{href:href,onclick:onclick,title:title});if(iconPath){var img=new Node('IMG',{src:rewriteURL(iconPath),alt:title});newButton.appendChild(img);}
newButton.appendChild(document.createTextNode(label));toolbar.getElementsByTagName('TD')[0].appendChild(newButton);var rowSpace=getElementsByClassName('asiGridRowSpacer',thead,'TR')[0];if(rowSpace){rowSpace.parentNode.removeChild(rowSpace);}};_self.filterActions=function(){var toolbarItems=_self.toolbarItems||getToolbarItems($$(_self.id));if(!toolbarItems.length){var toolbar=getElementsByClassName('toolbarContent',_self.DOM,'DIV');if(toolbar.length==1){}}else{var selectedRows=getSelectedRows(_self.DOM);_self.filterActionItems(toolbarItems,selectedRows);}};_self.filterActions();function getToolbarItems(container){var toolbar=getElementsByClassName('toolbarContent',container,'DIV');if(toolbar[0]){var items=getNodeElements(toolbar[0].childNodes);var toolbarItems=[];for(var i=0;i<items.length;i++){if(items[i].tagName=='A'){toolbarItems.push(items[i]);}}
return(_self.toolbarItems=toolbarItems);}else{var table=_self.DOM;toolbar=getElementsByClassName('asiToolbar',table,'TR')[0];if(typeof toolbar=="undefined"){return[];}
items=getNodeElements(toolbar.getElementsByTagName('TD')[0].childNodes);for(i=0;i<items.length;i++){var item=items[i];var isDropDown=(item.tagName=='UL'&&item.className=='asiDropDown');if(item.tagName!='A'&&!isDropDown){items.splice(i,1);}}
return(_self.toolbarItems=items);}}
_self.addRow=function(rowDOM,isOverwrite,isOverrideWarning,insertAtRow){if(!rowDOM){return;}
if(rowDOM instanceof Array){rowDOM=GRID.getRowDOM(rowDOM);}
initSlaveSelect(rowDOM);var rowId=GRID.getRowDescriptor(rowDOM);var rowIndex=_self.getRowIndex(rowDOM);var isDuplicate=rowIndex>-1;if(isDuplicate&&!isOverwrite){return false;}
if(!isOverrideWarning){enableControlsWarning(_self.DOM,_self.isChanged);}
rowDOM.className+=' added';if(!_self.descriptors.length){toggleNoResults(_self.DOM);}
if(isDuplicate){_self.descriptors.splice(rowIndex,1,rowId);var row=_self.getRow(rowIndex);row.parentNode.replaceChild(rowDOM,row);row=null;return rowDOM;}else{if(typeof insertAtRow=='undefined'||insertAtRow>=_self.descriptors.length){_self.descriptors.push(rowId);_self.DOM.tBodies[_self.DOM.tBodies.length-1].appendChild(rowDOM);}else{_self.descriptors.splice(insertAtRow,0,rowId);_self.DOM.tBodies[_self.DOM.tBodies.length-1].insertBefore(rowDOM,_self.getRow(insertAtRow));}
return rowDOM;}
return null;};_self.addNewRow=function(rowDOM,isOverrideWarning){if(!rowDOM){return;}
var rowId=GRID.getRowDescriptor(rowDOM);if(!isOverrideWarning){enableControlsWarning(_self.DOM,_self.isChanged);}
if(!_self.descriptors.length){toggleNoResults(_self.DOM);}
_self.descriptors.push(rowId);_self.DOM.tBodies[_self.DOM.tBodies.length-1].appendChild(rowDOM);if(_self.descriptors.length%2){rowDOM.className+=' alternate';}
initSlaveSelect(rowDOM);return rowDOM;};_self.removeRow=function(rowDOM,isOverrideWarning){if(rowDOM.className.match(/protected/)){rowDOM.toggle(false);getCheckboxInElement(rowDOM).checked=false;return;}
var rowId=GRID.getRowDescriptor(rowDOM);var rowIndex=_self.getRowIndex(rowDOM);if(rowIndex>-1){_self.descriptors.splice(rowIndex,1);}
_self.deletedDescriptors.push(GRID.getKey(rowId,_self.delim));rowDOM.parentNode.removeChild(rowDOM);if(!_self.descriptors.length){toggleNoResults(_self.DOM,_self.emptyMessage);normalizeColumns(_self.DOM);}
if(!isOverrideWarning){enableControlsWarning(_self.DOM,_self.isChanged);}};_self.removeRows=function(){var rows=getSelectedRows(_self.DOM);for(var i=0;i<rows.length;i++){_self.removeRow(rows[i]);}
return rows;};_self.removeAllRows=function(){var rows=getDataRows(_self.DOM,"asiGridNoResults");for(var i=0;i<rows.length;i++){_self.removeRow(rows[i]);}
return rows;};_self.modifyRowData=function(source){var value=source.value;if(!value){throw new Error("Grid row data can only be changed via an input field.");}
if(source.type&&source.type.search(/checkbox|radio/g)+1){value=source.checked?1:0;}
var td=getContainerByTagName(source,'TD');var colNum=parseInt(td.className.substring(9,td.className.length),10);var tr=td.parentNode;modifyRowDescriptor(tr,value,colNum+1,_self.descriptors,_self.getRowIndex(tr));var linkedRows=getSelectedRows(_self.DOM);for(var i=0;i<linkedRows.length;i++){var row=linkedRows[i];var rowDescriptor=modifyRowDescriptor(row,value,colNum+1,_self.descriptors,_self.getRowIndex(row));var newRow=_self.getRowDOM(rowDescriptor);row.parentNode.replaceChild(newRow,row);newRow.className+=' modified selected';}
enableControlsWarning(_self.DOM,_self.isChanged);};function modifyRowDescriptor(rowDOM,value,index,descriptors,rowIndex){var rowId=GRID.getRowDescriptor(rowDOM);var newId=rowId.replaceToken(index,value,_self.delim);getInputsByType('checkbox',rowDOM)[0].value=newId;descriptors[rowIndex]=newId;rowDOM.className+=' modified';return newId;}
_self.getRowIndex=function(rowDOM){var rowIndex=(rowDOM.rowIndex!=-1)?rowDOM.rowIndex-1:-1;var descriptorIndex;var descriptor=GRID.getRowDescriptor(rowDOM);if(typeof descriptor=='object'){var keys=GRID.getKeys(_self.descriptors);descriptorIndex=(function getIndex(item,collection){if(item instanceof Array){for(var i=collection.length;i>-1&&String(collection[i])!=String(item);--i){}
return i;}
function equals(obj1,obj2){for(var prop in obj1){if(obj1[prop]!=obj2[prop]){return false;}}
return true;}
for(var i=collection.length;i>-1&&!equals(item,collection[i]||{});i--){}
return i;})(GRID.getKey(descriptor),keys);}else{descriptorIndex=_self.descriptors.tokenizedIndexOf(descriptor.tokenizedSubstring(0,2,_self.delim),0,2,_self.delim);}
if(rowIndex!=descriptorIndex){var msg='Inaccurate DOM indexing: rowIndex={0}, descriptorIndex={1}'.supplant(rowIndex,descriptorIndex);}
return descriptorIndex;};_self.getRowIndexByKey=function(key){return _self.descriptors.tokenizedIndexOf(key,0,2,_self.delim);};_self.getRow=function(index){return getDataRows(_self.DOM,"asiGridNoResults")[index];};_self.getRowByKey=function(key){key=GRID.getKey(key);return _self.getRow(_self.getRowIndexByKey(key));};_self.getNextRow=function(key){key=GRID.getKey(key);var referenceRowIndex=_self.getRowIndexByKey(key);return _self.getRow(referenceRowIndex+1);};_self.getPreviousRow=function(key){key=GRID.getKey(key);var referenceRowIndex=_self.getRowIndexByKey(key);return _self.getRow(referenceRowIndex-1);};_self.getSelectedTokens=function(index,type){var isFilter=typeof type!='undefined';var ids=new Array();var rows=getSelectedRows(_self.DOM);var descriptors=GRID.getRowDescriptors(rows);var replaceNewLines=new RegExp("\r<br />","g");for(var i=0;i<descriptors.length;i++){descriptors[i]=descriptors[i].replace(replaceNewLines,'\r\n');if(!isFilter||(isFilter&&descriptors[i].tokenAt(0,_self.delim)==type)){ids.push(descriptors[i].tokenAt(index,_self.delim));}}
return ids;};_self.isDuplicateId=function(id){id=id.tokenizedSubstring(0,2,_self.delim);return _self.descriptors.tokenizedIndexOf(id,0,2,_self.delim)>-1;};_self.toggleSelect=function(){var rows=getDataRows(_self.DOM,"asiGridNoResults");var selectedRows=getSelectedRows(_self.DOM);var isSelect=rows.length>selectedRows.length;unselectRows(_self.DOM);if(isSelect){selectAllRows(_self.DOM);}};_self.addSelectionDataToUrl=function(url,paramName,tokenIndex,isSelectionRequired,areNullTokensOK,nullTokenMessage){if(!url){throw new Error('The parameter "url" can not be empty.');}
if(typeof tokenIndex=='undefined'||!paramName){return url;}
if(!(tokenIndex instanceof Array)){tokenIndex=[tokenIndex];}
if(!(paramName instanceof Array)){paramName=[paramName];}
var selectedDescriptors=GRID.getRowDescriptors(getSelectedRows(_self.DOM));if(selectedDescriptors.length<1&&isSelectionRequired){asi.alert('Please select at least one row.');return false;}
for(var i=0;i<selectedDescriptors.length;i++){for(var j=0;j<paramName.length;j++){url+=(!i&&!j&&!url.match(/\?/))?'?':'&';url+=paramName[j]+'=';var tokenValue=selectedDescriptors[i].tokenAt(tokenIndex[j],_self.delim);if(tokenValue===''&&!areNullTokensOK){if(nullTokenMessage){asi.alert(nullTokenMessage);}
else{throw new Error('The descriptor is missing a token or has an empty token.');}
return false;}else{url+=tokenValue;}}}
return url;};_self.enableControlsWarning=function(){enableControlsWarning(_self.DOM,_self.isChanged);};function enableControlsWarning(grid,isChanged){if(isChanged){return;}
var notice=_ASI.Grid.discardChangesConfirmation;var gridMiddleContainer=getContainerByClassName(grid,'asiGridMiddleContainer');if(gridMiddleContainer){var pageControls=getElementsByClassName('asiGridPageCtrls',gridMiddleContainer,'SPAN')[0];}
var controls=[];var j=0;if(pageControls){var aux=pageControls.getElementsByTagName('A');for(var i=0;i<aux.length;i++){controls[j++]=aux[i];}}
if(grid.tHead){aux=grid.tHead.getElementsByTagName('TH');for(i=0;i<aux.length;i++){controls[j++]=aux[i];}}
for(i=0;i<controls.length;i++){var control=controls[i];if(!control.onclick){continue;}
var onclickString=control.onclick.toString();if(onclickString.match("asi.confirm")){continue;}
if(onclickString.indexOf("'")==-1){control.action=onclickString.substring(onclickString.indexOf("\"")+1,onclickString.lastIndexOf("\""));}else{control.action=onclickString.substring(onclickString.indexOf("'")+1,onclickString.lastIndexOf("'"));}
control.onclick=function(){asi.confirm(notice,"backgroundAction('"+this.action+"')");return false;};_self.eventCache.add(control,"onclick");}
isChanged=true;}
function toggleNoResults(grid,message){var nr=getElementsByClassName('asiGridNoResults',grid,'TR')[0];if(nr){nr.parentNode.removeChild(nr);}else{grid.getElementsByTagName('TBODY')[0].appendChild(getEmptyRowDOM(message));}}
function init(element){var tables=element.getElementsByTagName('TABLE');if(!tables.length){return null;}
if(tables[0].className.match(/asiGrid/)){return tables[0];}
return null;}
function getEmptyGridDOM(id,message){var table=getTableDOM(id);table.getElementsByTagName('THEAD')[0].appendChild(getHeaderDOM("&nbsp;"));table.getElementsByTagName('TBODY')[0].appendChild(getEmptyRowDOM(message));return table;}
function getEmptyRowDOM(message){var tr=GRID.getRowDOM("<p>"+message||_ASI.Grid.noResults+"</p>");tr.className='asiGridNoResults';return tr;}
function getTableDOM(id){var table=document.createElement('TABLE');table.id="asi_grid_"+id;table.className='asiGrid client';table.cellSpacing=1;table.appendChild(document.createElement('THEAD'));table.appendChild(document.createElement('TBODY'));return table;}
function getHeaderDOM(){var rowData=arguments;if(typeof arguments[0]=='object'&&arguments[0].length){rowData=arguments[0];}
var tr=document.createElement('TR');tr.className='asiGridHeaders';for(var i=0;i<rowData.length;i++){var th=document.createElement('TH');th.className='asiGridTH'+i;if(rowData[i].tagName){th.appendChild(rowData[i]);}else if(typeof rowData[i]=='string'){th.innerHTML=rowData[i];}else{throw new Error('Invalid or unknown row data type for ASI Grid');}
tr.appendChild(th);}
return tr;}
function getToolbarDOM(){var toolbarData=arguments;var tr=document.createElement('TR');tr.className='asiToolbar';var td=document.createElement('TD');var div=document.createElement('DIV');var HTMLContents='';for(var i=0;i<toolbarData.length;i++){var item=toolbarData[i];var label=item[0];var href=item[1]||'#';var onclick=item[2]||'void(0)';var title=item[3]||label;var iconPath=item[4];var a='<a href=\"'+StringSecurityUtils.encodeHtml(href)+'\" ';a+='onclick=\"'+StringSecurityUtils.encodeHtml(onclick)+'\" ';a+='title=\"'+StringSecurityUtils.encodeHtml(title)+'\" />';if(iconPath){a+=getImageHTML(iconPath,label)+' ';}
a+=StringSecurityUtils.encodeHtml(label)+'</a>';HTMLContents+=a;}
div.innerHTML=HTMLContents;if(!toolbarData.length){div.innerHTML='&nbsp;';}
td.appendChild(div);tr.appendChild(td);return tr;}
(function initMasterSelect(){var firstColHeader=getElementsByClassName('asiGridTH0',_self.DOM,'th')[0];var checkbox=getCheckboxInElement(firstColHeader);if(!checkbox){var boxNode=Node('INPUT',{type:'checkbox'});checkbox=firstColHeader.insertBefore(boxNode,firstColHeader.firstChild);}
checkbox.className='masterBox';checkbox.onclick=function(e){(e||event).cancelBubble=true;var rows=getDataRows(_self.DOM,"asiGridNoResults");rows.forEach(function(row){row.toggle(checkbox.checked);getCheckboxInElement(row).checked=checkbox.checked;});_self.filterActions();};_self.eventCache.add(checkbox,"onclick");})();function initSlaveSelect(row){row.toggle=function(isSelected){if(!isSelected){row.className=row.className.replace(/ ?selected/g,'');}
else{row.className+=' selected';}};_self.eventCache.add(row,"toggle");var checkbox=getCheckboxInElement(row);if(checkbox){checkbox.parentNode.className+=" rowWithCheckbox";checkbox.className='selectingBox';checkbox.onclick=function(){row.toggle(checkbox.checked);_self.filterActions();};_self.eventCache.add(checkbox,"onclick");}}
(function initRows(){getDataRows(_self.DOM,"asiGridNoResults").forEach(initSlaveSelect);})();return _self;}
function $Tabs(id){var _self=new C3(this);var _tabs;var INIT_ERROR='Tab component failed to initialize. Component id: '+_self.id;var NOT_FOUND_ERR='Tab contents not found: "{0}"';_self.currentTab={};_self.switchTab=function(trigger){_self.selectTab(trigger.tab);var src=trigger.getAttribute('src');if(src&&(!trigger.isSrcLoaded||trigger.getAttribute('isForceReload'))){backgroundAction(src,trigger.getAttribute('contentId'));trigger.isSrcLoaded=true;}};_self.selectTab=function(reference){var attribute,attrValue;if(reference&&!reference.tagName){for(var prop in reference){attribute=prop;attrValue=reference[prop];}}
_tabs.forEach(function(tab){tab.className=tab.className.replace(/ *current/g,'');var content=$$(tab.trigger.getAttribute('contentId'));if(content){content.style.display='none';}
if(reference&&((reference.tagName&&reference===tab)||tab.trigger.getAttribute(attribute)===attrValue)){tab.className+=' current';if(content){content.style.display='';}
_self.currentTab=tab;}});if(!reference){delete _self.currentTab;}
else{return _self.currentTab;}};_self.onfirstload=function(trigger){};_self.onload=function(trigger){};_self.onunload=function(trigger){};function init(){_self.updateConfig();var siblings=[];_tabs=getNodeElements($$(_self.id).childNodes);_tabs.forEach(function(tab,i){if(!i){_self.currentTab=tab;}
var trigger=(tab.trigger=tab.firstChild.tagName?tab.firstChild:tab);trigger.siblings=siblings;trigger.tab=tab;siblings.push(trigger);var contentId=trigger.getAttribute('contentId');trigger.content=$$(contentId);trigger.href="#";var onclick=trigger.onclick;trigger.onclick=function(){var _return;if(onclick){_return=onclick();}
if(_return===false){return false;}
_return=_self.onunload(_self.currentTab.trigger);if(_return===false){return false;}
if(!trigger.isLoaded){_return=_self.onfirstload(trigger);trigger.isLoaded=true;}
if(_return===false){return false;}
_self.switchTab(trigger);if(_return===false){return false;}
_return=_self.onload(trigger);return false;};try{if(!(/\bcurrent\b/).test(tab.className)){trigger.content.style.display='none';}
else{_self.currentTab=tab;}}catch(e){ASI_LOG.warn(NOT_FOUND_ERR.supplant(contentId));}});_self.currentTab.trigger.onclick();}
_self.updateConfig();init();return _self;}
function RemoteComponent(component){var constructor=component.constructor;var name=constructor.toString().match(/function (\w+)\(/)[1];window.COMPONENTS=window.COMPONENTS||{};if(!COMPONENTS[name]){var isPreloaded=typeof window['$'+name]!='undefined';if(!isPreloaded){var url='/components/core/js/'+name+'.js';var req=loadURL(url);executeScript(req.responseText.compactScript());returnXMLHttpRequest(req);req=null;}
COMPONENTS[name]=window['$'+name];}
var args=constructor.arguments;if(constructor.superType=='C3'&&args.length>2){ASI_LOG.warn('Exceeded maximum allowed arity of 2 for C3 components',true);}
return new COMPONENTS[name](args[0],args[1],args[2],args[3],args[4]);}
function isC2(objectId,type){try{var object=eval(objectId);if(type&&object.type==type)return true;if(!type&&typeof object.component=='function')return true;else return false;}catch(e){return false}}
function getASIContainer(){var asiContainer=getObject('asiContainer');if(!asiContainer){asiContainer=document.createElement('ASIContainer');asiContainer.id='asiContainer';document.body.insertBefore(asiContainer,document.body.firstChild);}
return asiContainer;}
AUTOCOMPLETE={pointer:null,descriptorsCache:[],descriptorsCacheSize:{},attachAutocomplete:function(input,config){var autocomplete=new Autocomplete(input.id,config);autocomplete.setDefaultMessage(config.initialMessage);if(input.pickedItemsLazyLoad){input.pickedItemsLazyLoad.forEach(function(item){autocomplete.addItem(item);});input.pickedItemsLazyLoad=null;}
return autocomplete;},lazyLoad:function(input,config,configIcons){configIcons=configIcons||{};config.onAddItemCallback=config.onpickCallback;if(configIcons.displayBrowseIcon){var browseIcon=Tag('IMG',{src:rewriteURL('/components/img/browse.gif'),alt:_ASI.Picker.directory,className:"pickerIcon"}).node('A',{onclick:function(){if(!input.autocompleteRef){input.focus();}
Util.delayExecutionUntilReady(function isReady(){return typeof(input.autocompleteRef)!="undefined";},function execute(){config.defaultMessage=_AE.searchShort;var url=CONTEXT_PREFIX+"components/picker3/lightPicker.jsp?$e=asiDialog&"+objectToQueryString(config);backgroundAction(url,null,{callback:function(){var autocomplete=$$("lightPickerSearch").autocompleteRef;autocomplete.searchSet=config.searchSet;autocomplete.suggest();var dlg=DIALOGS.asiDialog;dlg.hideTitle();var container=$$(dlg.id);container.className+=" lightpicker";centerInViewport(container);dlg.config.closeFunction=function(config){if(config.action==="ok"){input.autocompleteRef.removeSelectedItems();config.pickedItems.forEach(function(pickedItem){input.autocompleteRef.addItem(pickedItem);});}}}});});}});input.parentNode.insertBefore(browseIcon,input.nextSibling);input.icons=[browseIcon];}
input.value=PICKER.formatDisplay(config.pickedItems,config.singlePicker,config.autocompleteType,config.validChar);input.pickedItemsLazyLoad=config.pickedItems?config.pickedItems:[];$(input).focus(function(){this.autocompleteRef=AUTOCOMPLETE.attachAutocomplete(this,config);});},enable:function(input){$(input).attr("disabled",false);var icons=input.icons;for(var i=0;i<icons.length;i++){$(icons[i]).show();}},disable:function(input){$(input).attr("disabled",true);var icons=input.icons;for(var i=0;i<icons.length;i++){$(icons[i]).hide();}}}
COLORPICKER={hideAll:function(){var elements=getElementsByClassName('asiColorpicker',document,'DIV');for(var i=0;i<elements.length;i++){var item=elements[i];if(item.componentType=='ColorPicker')item.parentNode.removeChild(item);}}}
CONSOLES={};COMPONENT={pick:function(evt){evt=evt||event;var target=evt.target||evt.srcElement;if(target.tagName=='H1'||target.parentNode.tagName=='H1'||target.className.match(/\bhandle\b/)){var container=getContainerByClassName(target,'draggable',2);if(!container||!container.className.match(/\bdraggable\b/))return false;COMPONENT.target=container;var tempContainer=updateTemp(COMPONENT.getTemp(),container);tempContainer.style.display='';COMPONENT.getTop=function(){return(tempContainer.currentStyle?tempContainer.currentStyle.top:tempContainer.style.top).replace(/px/,'');};COMPONENT.getLeft=function(){return(tempContainer.currentStyle?tempContainer.currentStyle.left:tempContainer.style.left).replace(/px/,'');};COMPONENT.mouseOffsetX=(evt.pageX?evt.pageX:event.clientX+document.body.scrollLeft)-COMPONENT.getLeft();COMPONENT.mouseOffsetY=(evt.pageY?evt.pageY:event.clientY+document.body.scrollTop)-COMPONENT.getTop();document.body.style.cursor='move';}
function updateTemp(tempContainer,container){tempContainer.style.width=container.offsetWidth+"px";tempContainer.style.height=container.offsetHeight+"px";tempContainer.style.top=(container.currentStyle?container.currentStyle.top:container.style.top).replace(/px/,'');tempContainer.style.left=(container.currentStyle?container.currentStyle.left:container.style.left).replace(/px/,'');if(container.targetDrop)tempContainer.targetDrop=container.targetDrop;return tempContainer;}},move:function(evt){var container=COMPONENT.target;var tempContainer=COMPONENT.tempContainer;if(!container||!tempContainer)return false;evt=evt||event;if(evt.button==1||evt.which==19){var eventX=evt.pageX?evt.pageX:event.clientX+document.body.scrollLeft;var eventY=evt.pageY?evt.pageY:event.clientY+document.body.scrollTop;var moveToX=eventX-COMPONENT.mouseOffsetX;var moveToY=eventY-COMPONENT.mouseOffsetY;var margin=2;var leftLimit=document.body.scrollLeft+margin;var topLimit=document.body.scrollTop+margin;var rightLimit=document.body.clientWidth+document.body.scrollLeft-tempContainer.offsetWidth-margin;var bottomLimit=document.body.clientHeight+document.body.scrollTop-tempContainer.offsetHeight-margin;if(tempContainer.targetDrop&&COMPONENT.isOnTarget(eventX,eventY,tempContainer.targetDrop)){if(!tempContainer.targetDrop.className.match(/\bonTarget\b/))tempContainer.targetDrop.className+=' onTarget';}else if(tempContainer.targetDrop){tempContainer.targetDrop.className=='paletteHotspot';}
if(moveToX>=leftLimit&&moveToX<=rightLimit)tempContainer.style.left=moveToX+"px";else if(eventX>=leftLimit&&moveToX<leftLimit)tempContainer.style.left=leftLimit+"px";else if(eventX<=rightLimit+tempContainer.offsetWidth&&moveToX>rightLimit)COMPONENT.mouseOffsetX=eventX-rightLimit;if(moveToY>=topLimit&&moveToY<=bottomLimit)tempContainer.style.top=moveToY+"px";else if(eventY>=topLimit&&moveToY<topLimit)COMPONENT.mouseOffsetY=eventY;else if(eventY<=bottomLimit+tempContainer.offsetHeight&&moveToY<bottomLimit)COMPONENT.mouseOffsetY=eventY-bottomLimit;unselectDocument();document.body.style.cursor='move';}else{COMPONENT.drop(evt);}},drop:function(evt){document.body.style.cursor='';var container=COMPONENT.target;var tempContainer=COMPONENT.getTemp();if(!container||!tempContainer)return false;evt=evt||event;var eventX=evt.pageX?evt.pageX:event.clientX+document.body.scrollLeft;var eventY=evt.pageY?evt.pageY:event.clientY+document.body.scrollTop;var margin=2;var moveToX=eventX-COMPONENT.mouseOffsetX;var moveToY=eventY-COMPONENT.mouseOffsetY;var leftLimit=document.body.scrollLeft+margin;var topLimit=document.body.scrollTop+margin;var rightLimit=document.body.clientWidth+document.body.scrollLeft-tempContainer.offsetWidth-margin;var bottomLimit=document.body.clientHeight+document.body.scrollTop-tempContainer.offsetHeight-margin;if(moveToX>=leftLimit&&moveToX<=rightLimit)tempContainer.style.left=moveToX+"px";else if(eventX>=leftLimit&&moveToX<leftLimit){COMPONENT.mouseOffsetX=eventX;}
else if(eventX<=rightLimit+tempContainer.offsetWidth&&moveToX>rightLimit){COMPONENT.mouseOffsetX=eventX-rightLimit;}
if(moveToY>=topLimit&&moveToY<=bottomLimit)tempContainer.style.top=moveToY+"px";else if(eventY>=topLimit&&moveToY<topLimit)COMPONENT.mouseOffsetY=eventY;else if(eventY<=bottomLimit+tempContainer.offsetHeight&&moveToY<bottomLimit)COMPONENT.mouseOffsetY=eventY-bottomLimit;if(tempContainer.targetDrop&&COMPONENT.isOnTarget(eventX,eventY,tempContainer.targetDrop)){container.dock();}else{if(container.getAttribute('mode')=='docked')container.undock();container.style.top=tempContainer.style.top;container.style.left=tempContainer.style.left;}
tempContainer.targetDrop=null;tempContainer.style.display='none';COMPONENT.target=null;},getTemp:function(evt){if(!COMPONENT.tempContainer)return createTemp();else return COMPONENT.tempContainer;function createTemp(){var tempContainer=document.createElement('DIV');tempContainer.className='asiTempContainer';document.body.insertBefore(tempContainer,document.body.firstChild);COMPONENT.tempContainer=tempContainer;return COMPONENT.tempContainer;}},isOnTarget:function(eventX,eventY,target){var targetY=parseInt((target.currentStyle?target.currentStyle.top:target.style.top).replace(/px/,''));var targetX=parseInt((target.currentStyle?target.currentStyle.left:target.style.left).replace(/px/,''));var rightY=parseInt(targetY)+parseInt((target.currentStyle?target.currentStyle.height:target.style.height).replace(/px/,''));var rightX=parseInt(targetX)+parseInt((target.currentStyle?target.currentStyle.width:target.style.width).replace(/px/,''));if((eventY>=targetY)&&(eventY<=rightY)&&(eventX>=targetX)&&(eventX<=rightX))return true;else return false;},target:null,tempContainer:null,mouseOffsetX:null,mouseOffsetY:null}
DATETIME={hideAll:function(target){if(target&&getContainerByClassName(target,'datepicker',2)){return false;}
for(var id in D2.entities['Datetime']){D2.entities['Datetime'][id].entity.destroy();}}}
DIALOG={hideAll:function(){if(typeof DIALOGS=='undefined'){return;}
if(window.dialogFilter)window.dialogFilter.hide();for(dialog in DIALOGS){if(typeof DIALOGS[dialog]!='function'){DIALOGS[dialog].hide();}}},hide:function(target,params){try{DATETIME.hideAll();}catch(e){}
if(typeof DIALOGS=='undefined'){return;}
if(window.dialogFilter&&window.dialogFilter.hide)window.dialogFilter.hide();if(!(DIALOGS[DIALOGS.length-1]))return;if(typeof target=='undefined'){return DIALOGS[DIALOGS.length-1].hide(params);}
var dialog=getContainerByClassName(target,'asiDialog');if(dialog&&DIALOGS[dialog.id]){DIALOGS[dialog.id].hide(params);}
else{ASI_LOG.warn('Failed attempt to close unregistered Dialog',true);}},pick:function(evt){evt=evt||event;var target=evt.target||evt.srcElement;if(target.tagName=='H1'||target.parentNode.tagName=='H1'){var container=getContainerByClassName(target,'asiDialog',2);if(!container)container=getContainerByClassName(target,'asiExpressionEditor',3);if(!container||!(container.className.match(/\basiDialog\b/)||container.className.match(/\basiExpressionEditor\b/)))return false;DIALOG.target=container;DIALOG.getTop=function(){return(container.currentStyle?container.currentStyle.top:getComputedStyle(container,null).top).replace(/px/,'');};DIALOG.getLeft=function(){return(container.currentStyle?container.currentStyle.left:getComputedStyle(container,null).left).replace(/px/,'');};DIALOG.deltaX=(evt.pageX?evt.pageX:event.clientX+document.body.scrollLeft)-DIALOG.getLeft();DIALOG.deltaY=(evt.pageY?evt.pageY:event.clientY+document.body.scrollTop)-DIALOG.getTop();document.body.style.cursor='move';}},move:function(evt){var container=DIALOG.target;if(!container)return false;evt=evt||event;if(evt.button==1||evt.which==65536){var eventX=evt.pageX?evt.pageX:event.clientX+document.body.scrollLeft;var eventY=evt.pageY?evt.pageY:event.clientY+document.body.scrollTop;var margin=2;var dialogX=eventX-DIALOG.deltaX;var dialogY=eventY-DIALOG.deltaY;var leftLimit=document.body.scrollLeft+margin;var topLimit=document.body.scrollTop+margin;var rightLimit=document.body.clientWidth+document.body.scrollLeft-container.offsetWidth-margin;var bottomLimit=document.body.clientHeight+document.body.scrollTop-container.offsetHeight-margin;if(dialogX>=leftLimit&&dialogX<=rightLimit)container.style.left=dialogX+"px";else if(eventX>=leftLimit&&dialogX<leftLimit)DIALOG.deltaX=eventX;else if(eventX<=rightLimit+container.offsetWidth&&dialogX>rightLimit)DIALOG.deltaX=eventX-rightLimit;if(dialogY>=topLimit&&dialogY<=bottomLimit){container.style.top=dialogY+"px";}else if(eventY>=topLimit&&dialogY<topLimit){DIALOG.deltaY=eventY;}else if(eventY<=bottomLimit+container.offsetHeight&&dialogY<bottomLimit){DIALOG.deltaY=eventY-bottomLimit;if(DIALOG.deltaY<0){DIALOG.deltaY=0;}}
unselectDocument();document.body.style.cursor='move';}else DIALOG.drop(evt);},drop:function(evt){document.body.style.cursor='';var container=DIALOG.target;if(!container)return false;DIALOG.target=null;},target:null}
DROPDOWN={openDropdown:null,hideAll:function(){if(!this.openDropdown){return;}else{this.openDropdown.hide();}}}
EXPRESSION_EDITOR={functionsMetadata:{definedCategories:[]},showInformativeMessageBar:function(msg){var bar=$$('expressionEditorMessageBar');var content=$$('expressionEditorMessageBarContent');if(bar&&content){content.innerHTML=(msg+"").escapeHtml();show(bar);}else{setTimeout(function(){var bar=$$('expressionEditorMessageBar');if(bar){bar.innerHTML=(msg+"").escapeHtml();show(bar);}},5000);}},hideInformativeMessageBar:function(){var bar=$$('expressionEditorMessageBar');if(bar){hide(bar);}}}
GRID={DEFAULT_VIEW:0,DETAIL_VIEW:1,LIST_VIEW:2,getRowDOM:function(){var rowData=arguments;if(typeof arguments[0]=='object'&&arguments[0].length){rowData=arguments[0];}
var tr=document.createElement('TR');tr.onmouseover=function(){this.className+=' hover'}
tr.onmouseout=function(){this.className=this.className.replace(/ hover/g,'')}
for(var i=0;i<rowData.length;i++){var td=document.createElement('TD');{td.className='asiGridTD'+i;if(rowData[i].tagName){td.appendChild(rowData[i]);}else if(typeof rowData[i]=='string'){td.innerHTML=rowData[i];}else{throw new Error('Invalid or unknown row data type for ASI Grid');}
tr.appendChild(td);}}
window.eventCache.add(tr,"onmouseover");window.eventCache.add(tr,"onmouseout");return tr;},getRowDescriptor:function(row){var checkbox=getCheckboxInElement(row);if(!checkbox||!checkbox.value){try{return eval('('+row.getAttribute('descriptor')+')');}
catch(e){var msg='Unable to parse row descriptor: '+row.getAttribute('descriptor');ASI_LOG.warn(msg,true);return'';}}else{return checkbox.value;}},getRowDescriptors:function(rows){var descriptors=[];for(var i=0;i<rows.length;i++){descriptors[descriptors.length]=GRID.getRowDescriptor(rows[i]);}
return descriptors;},getKey:function(descriptor,delim){if(typeof descriptor=='object'){if('type'in descriptor&&'id'in descriptor){return{type:descriptor.type,id:descriptor.id};}else{return descriptor;}}
return descriptor.tokenizedSubstring(0,2,delim);},getKeys:function(descriptors,delim){return descriptors.forEach(function(descriptor){return GRID.getKey(descriptor,delim);});},getDescriptors:function(table){return getDataRows(table,'asiGridNoResults').forEach(function(row){return GRID.getRowDescriptor(row);});}}
HIERARCHY={EVENT_NODE_EXPANDED:"nodeExpanded",EVENT_NODE_COLLAPSED:"nodeCollapsed",createNodeHTML:function(name,imageURL,onclick,onmouseover){name=(name+"").escapeHtml();var nodeHTML='<a title="'+name+'"';if(onclick)nodeHTML+=' onclick="'+onclick+'"';if(onmouseover)nodeHTML+=' onmouseover="'+onmouseover+'"';nodeHTML+='><img src="'+rewriteURL(imageURL)+'" alt="'+name+'"/> '+name+'</a>';return nodeHTML;},toggleNode:function(instanceId,childCounterValue){var children_ul=$$('asi_hierarchy_children_'+instanceId+'_'+childCounterValue);if(!children_ul){return;}
var plus_span=$$('asi_hierarchy_img_'+instanceId+'_'+childCounterValue+'_plus');var minus_span=$$('asi_hierarchy_img_'+instanceId+'_'+childCounterValue+'_minus');var jLi=$(children_ul.parentNode);if(children_ul.style.display=='none'){jLi.trigger(HIERARCHY.EVENT_NODE_EXPANDED,[jLi.get(0).categoryName]);children_ul.style.display='block';if(plus_span!=null){plus_span.style.display='none';}
if(minus_span!=null){minus_span.style.display='inline';}}else{jLi.trigger(HIERARCHY.EVENT_NODE_COLLAPSED,[jLi.get(0).categoryName]);children_ul.style.display='none';if(plus_span!=null){plus_span.style.display='inline';}
if(minus_span!=null){minus_span.style.display='none';}}},refreshServerHierarchy:function(instanceId){if($$('asi_hierarchy_component_'+instanceId)){backgroundAction('/components/hierarchy/dynamic.bg?instanceId='+instanceId);}},expandHierarchyNode:function(instanceId,nodeId,nodeType){if($$('asi_hierarchy_component_'+instanceId)){backgroundAction('/components/hierarchy/dynamic.do?instanceId='+instanceId+'&nodeId='+nodeId+'&nodeItemType='+nodeType+'&menuAction=expand');}}}
LOADING={show:function(showInModeler){if(!showInModeler&&window.IS_MODELER)return;var indicator=$$('wait_indicator');if(indicator){indicator.style.display='';}else{var indicator=document.createElement('DIV');indicator.id='wait_indicator';var innerDiv=document.createElement('DIV');indicator.appendChild(innerDiv);innerDiv.appendChild(createImageElement(rewriteURL('portal/img/wait.gif'),_ASI.componentUtils.pleaseWait));var msg=_ASI.componentUtils.pleaseWait;indicator.style.width=msg.length*6+125;innerDiv.appendChild(document.createTextNode(msg));indicator.innerHTML+=BACKDROP_IFRAME_HTML;getASIContainer().appendChild(indicator);}
centerInViewport(indicator);if(indicator.offsetTop<20)indicator.style.display='none';},hide:function(){var indicator=getObject('wait_indicator');if(indicator)indicator.style.display='none';}}
MESSAGE_BAR={isOutlookMessageBar:false,show:function(msg,id){var messageBar=$$('messageBar_'+id);var span=$$('messageBarContent_'+id);messageBar.style.display='';span.innerHTML=(msg+"").escapeHtml();MESSAGE_BAR.isOutlookMessageBar=false;},hide:function(id){if(MESSAGE_BAR.isOutlookMessageBar){var expireDate=new Date();var aboutTenYearsLater=expireDate.getTime()+315360000000;expireDate.setTime(aboutTenYearsLater);document.cookie="displayOutlookMsgBar=no; expires="+expireDate.toGMTString()+"path=<c:out value='${pageContext.request.contextPath}'/>";MESSAGE_BAR.isOutlookMessageBar=false;}
$$('messageBar_'+id).style.display="none";}}
MENU={add:function(id,trigger,action,field){if(!COMPONENTS.Menu){new Menu();}
COMPONENTS.Menu.add.apply(this,arguments);},remove:function(id){if(COMPONENTS.Menu){COMPONENTS.Menu.remove.apply(this,arguments);}}}
PICKER={currentPicker:null,getPickerInstance:function(propertyName,portletId){return window['asiFormPicker_'+propertyName+'_'+(portletId||'')];},isCompound:function(pickerType){return(pickerType in set("content","people","email_recipients"));},denormalizePickerValues:function(pickedItems,isCompound,isSinglePicker){if(pickedItems.length>0&&pickedItems[0].type==TYPE_EXPRESSION){return pickedItems[0].id;}
var denormalizedValues=[];for(var i=0;i<pickedItems.length;i++){denormalizedValues[i]=isCompound?{type:pickedItems[i].type,id:pickedItems[i].id}:pickedItems[i].id;}
if(isSinglePicker){denormalizedValues=denormalizedValues[0];}
return denormalizedValues;},normalizePickerValues:function(value,type){var normalizedValues=[];if(Util.isNull(value)){return normalizedValues;}
if(value.constructor==Array){for(var i=0;i<value.length;i++){if(value[i]==null){normalizedValues[i]={type:TYPE_UNKNOWN,id:"",display:""};}else{if(value[i].constructor==String||value[i].constructor==Number){normalizedValues[i]={type:type,id:value[i],display:getDisplayNameForId(type,value[i])};}else{normalizedValues[i]={type:value[i].type,id:value[i].id,display:getDisplayNameForId(value[i].type,value[i].id)};}}}}else if(value.constructor==Object){normalizedValues[0]={type:value.type,id:value.id,display:getDisplayNameForId(value.type,value.id)};}else{if(value.constructor==String&&value.isAppianExpression()){normalizedValues[0]={type:TYPE_EXPRESSION,id:value,display:value};}else{normalizedValues[0]={type:type,id:value,display:getDisplayNameForId(type,value)};}}
return normalizedValues;},hideAll:function(){var pickers;if(!window.D2||!(pickers=window.D2.entities['Picker'])){return;}
try{for(var pickerId in pickers){pickers[pickerId].entity.oncancel();}}catch(e){}},destroy:function(name){try{var picker=eval(name);picker.autocompleteReference.destroy();picker.autocompleteReference=null;picker.destroy();eval('{0} = null;'.supplant(name));}catch(e){}},pickerValidation:[{message:function(componentDom,configData){return _PICKER.InvalidEntry;},method:function(componentDom,configData){var pickedItemTypes=window.Value[configData.typeName](componentDom,configData).type.split(_AE.uiDelimiter);for(var i=0;i<pickedItemTypes.length;i++){if(pickedItemTypes[i]==TYPE_INVALID){return false;}}
return true;}}],attachPicker:function(input,config){config.pickerParameters=config.pickerParameters||"";var picker=new Picker3("asiFormPicker_{0}_".supplant(config.id),{pickerParameters:config.pickerParameters,singlePicker:config.singlePicker,pickerType:config.pickerType,onpickCallback:config.onpickCallback||function(){}});eval("asiFormPicker_{0}_ = picker".supplant(config.id));var autocompleteType=PICKER_TEMPLATES[config.pickerType].autocomplete;if(config.pickerParameters){var params=queryStringToObject(config.pickerParameters);if(params.autocomplete){autocompleteType=params.autocomplete;}}
picker.nameTarget=input.id;input.value='';var autocompleteConfig={expressionTarget:config.id+"_expressions_",singlePicker:config.singlePicker,textfield:input.id,type:autocompleteType,searchSet:Autocomplete.SEARCH_SETS[autocompleteType],initialMessage:config.initialMessage,enabled:(AUTOCOMPLETE_ENABLED==1&&autocompleteType!=undefined),onAddItemCallback:config.onAddItemCallback};picker.addAutocomplete(autocompleteConfig);picker.autocompleteReference.acceptNullEntries=config.acceptNullEntries||false;if(typeof config.validChar!=="undefined"&&config.validChar!==null){picker.autocompleteReference.validChar=config.validChar;}
if(input.pickedItemsLazyLoad){picker.populateFromArray(input.pickedItemsLazyLoad);input.pickedItemsLazyLoad=null;}
input.hasPickerBeenLoaded=true;return picker;},formatDisplay:function(pickedItems,isSinglePicker,pickerType,validChar){if(!pickedItems||pickedItems.length==0){var hasAutocomplete=PICKER_TEMPLATES[pickerType]&&PICKER_TEMPLATES[pickerType].autocomplete!==undefined;if(AUTOCOMPLETE_ENABLED===0||!hasAutocomplete){return _ASI.Picker3.clickHereToBrowse;}
return isSinglePicker?_ASI.Picker3.typeNameHere:_ASI.Picker3.typeNamesHere;}
validChar=validChar!==undefined?validChar:AUTOCOMPLETE_VALID_CHAR;var value="";pickedItems.forEach(function(descriptor){if(typeof descriptor.display!="undefined"){if(descriptor.type in set(TYPE_INVALID,TYPE_UNKNOWN,TYPE_EXPRESSION)){display=descriptor.display;}else{display=validChar+descriptor.display+validChar;}}else{var mask=DISPLAY_MASKS[descriptor.type];if(!mask){return;}
display=mask.format(descriptor);descriptor.display=display;display=validChar+display+validChar;}
if(isSinglePicker){value=display;}else{value+=display+_AE.uiDelimiter+" ";}});return value;},lazyLoad:function(input,config){config.insertAfter=config.insertAfter?config.insertAfter.nextSibling:input.nextSibling;if(config.useExpressionEditor){var eeTextField="".node("INPUT",{type:"text",id:config.id+"_expressions_",style:{display:'none'},onchange:function(){input.pickerRef.autocompleteReference.consumeExpression();}});var eeIcon=Tag('IMG',{src:rewriteURL('/components/expeditor/img/openEditor.gif'),alt:_ASI.Picker.expressionEditor}).node('A',{onclick:function(){if(!input.pickerRef){input.focus();}
Util.delayExecutionUntilReady(function isReady(){return typeof(input.pickerRef)!="undefined";},function execute(){config.expressionEditorConf=config.expressionEditorConf||{};config.expressionEditorConf.picker=input.pickerRef;var asiExpressionEditor=new ExpressionEditor(eeTextField,null,null,null,null,null,config.expressionEditorConf);asiExpressionEditor.openEditor();});}});input.parentNode.insertBefore(eeTextField,config.insertAfter);input.parentNode.insertBefore(eeIcon,config.insertAfter);}
var browseIcon=Tag('IMG',{src:rewriteURL('/components/img/browse.gif'),alt:_ASI.Picker.directory}).node('A',{onclick:function(){if(!input.pickerRef){input.focus();}
Util.delayExecutionUntilReady(function isReady(){return typeof(input.pickerRef)!="undefined";},function execute(){input.pickerRef.pick();});}});input.parentNode.insertBefore(browseIcon,config.insertAfter);input.value=PICKER.formatDisplay(config.pickedItems,config.singlePicker,config.pickerType,config.validChar);input.pickedItemsLazyLoad=config.pickedItems?config.pickedItems:[];input.hasPickerAttached=true;$(input).focus(function(){this.pickerRef=PICKER.attachPicker(this,config);input.hasPickerBeenLoaded=true;});}}
RATING={hideAll:function(){var ratings=getElementsByClassName('asiRating',document,'DIV');for(var i=0;i<ratings.length;i++){var item=ratings[i];if(item.componentType=='Rating')item.parentNode.removeChild(item);}}}
STATUS={message:function(msg){if(typeof asiStatus=='undefined'){window.asiStatus=new Status('asiStatus');}
asiStatus.show(msg);},TIMEOUT:null,hideAll:function(){var elements=getElementsByClassName('asiStatus',document,'DIV');for(var i=0;i<elements.length;i++){var item=elements[i];if(item.getAttribute('componentType')=='Status')eval(item.id+'.hide(0)')}}}
TABS={toggleCollapse:function(object){if(object.className.match(/collapsed/)){object.className=object.className.replace(/ *collapsed/,'');}
else{object.className+=' collapsed';}}}
TOOLTIP={show:function(field){if(!field.tooltip)field.tooltip=new Tooltip(field,field.getAttribute('alt'));field.parentNode.insertBefore(field.tooltip.DOM,field);},hide:function(field){if(field.tooltip)field.parentNode.removeChild(field.tooltip.DOM);}}
PALETTE={createPalette:function(type,title,body){var palette=document.createElement('DIV');palette.id=type;palette.setAttribute('mode','maximized');palette.className='asiPalette draggable '+type;palette.onmousedown=function(e){COMPONENT.pick(e);document.body.onmousemove=function(e){COMPONENT.move(e);}
document.body.onmouseup=function(e){COMPONENT.move(e);COMPONENT.drop(e);document.body.onmousemove=null;document.body.onmouseup=null}}
palette.onmouseover=function(e){if(this.getAttribute('mode')=='docked'){getObject(type+'Content').style.display='';}}
palette.onmouseout=function(e){if(this.getAttribute('mode')=='docked'){getObject(type+'Content').style.display='none';}}
if(getObject('paletteHotspot')){palette.targetDrop=getObject('paletteHotspot');palette.dock=function(){PALETTE.dock(type);}
palette.undock=function(){PALETTE.maximize(type);}}
var content="";var type_jsEscaped=(type+"").escapeJS();var type_htmlEscaped=(type+"").escapeHtml();var title_htmlEscaped=(title+"").escapeHtml();content+='<h1>'+title_htmlEscaped+' <span class="controls"><a onclick="PALETTE.hide(\''+type_jsEscaped+'\')"><img src="'+rewriteURL("/components/dialogs/img/close.gif")+'" alt="Close" /></a><a onclick="getObject(\''+type_jsEscaped+'\').getAttribute(\'mode\') ==\'maximized\'?PALETTE.minimize(\''+type_jsEscaped+'\'): PALETTE.maximize(\''+type_jsEscaped+'\');"><img id="'+type+'ModeImg" src="'+rewriteURL("/components/dialogs/img/minimize.gif")+'" alt="Minimize" /></a></span></h1>';content+='<div id="'+type_htmlEscaped+'Content" class="content">';content+=body;content+='</div>';palette.innerHTML=content;getASIContainer().appendChild(palette);palette.content=$$(type+'Content');palette.modeImg=$$(type+'ModeImg');palette=null;},show:function(paletteType){var palette=getObject(paletteType);if(palette){PALETTE.maximize(paletteType);palette.style.display='';}
else{PALETTE.createPalette(paletteType);}},hide:function(paletteType){var palette=getObject(paletteType);if(palette)palette.style.display='none';},minimize:function(paletteType){var palette=getObject(paletteType);palette.content.style.display='none';palette.modeImg.src=rewriteURL("/components/dialogs/img/maximize.gif");palette.modeImg.alt='Maximize'
palette.setAttribute('mode','minimized');},maximize:function(paletteType){var palette=getObject(paletteType);palette.content.style.display='';palette.modeImg.style.display='';palette.modeImg.src=rewriteURL("/components/dialogs/img/minimize.gif");palette.modeImg.alt='Minimize';palette.setAttribute('mode','maximized');},dock:function(paletteType){var palette=getObject(paletteType);palette.style.top=parseInt((palette.targetDrop.currentStyle?palette.targetDrop.currentStyle.top:palette.targetDrop.style.top).replace(/px/,''))+"px";palette.style.left=(palette.targetDrop.currentStyle?palette.targetDrop.currentStyle.left:palette.targetDrop.style.left).replace(/px/,'')+"px";palette.content.style.display='none';palette.modeImg.style.display='none';palette.setAttribute('mode','docked');},setZIndex:function(paletteType,zIndex){var palette=getObject(paletteType);palette.style.zIndex=zIndex;}}
TEXTPALETTE={textConfig:{"fontFamily":"Arial, Helvetica, Sans-Serif","fontSize":"12","fontColor":"#000000","bold":false,"italics":false,"underline":false},fontnames:{"Arial":"Arial, Helvetica, Sans-Serif","Courier New":"Courier New, Courier, Mono","Georgia":"Georgia, Times New Roman, Times, Serif","Tahoma":"Tahoma, Arial, Helvetica, Sans-Serif","Times New Roman":"Times New Roman, Times, Serif","Verdana":"Verdana, Arial, Helvetica, Sans-Serif","Impact":"Impact"},fontsizes:{"X-Small":"8","Small":"10","Medium":"12","Large":"16","X-Large":"20"},getTextPalette:function(globalOnchangeFunction){if(globalOnchangeFunction)TEXTPALETTE.onchange=globalOnchangeFunction;if(TEXTPALETTE.target)return TEXTPALETTE.target;else{function getFontSelect(){var fontselect='<select id="fontSelect" onchange="TEXTPALETTE.setPalette(\'fontFamily\',this.value)" unselectable="on" class="fontselect">';for(var fontname in TEXTPALETTE.fontnames){fontselect+='<option ';if(TEXTPALETTE.textConfig.fontFamily==TEXTPALETTE.fontnames[fontname])fontselect+='selected ';fontselect+='value="'+TEXTPALETTE.fontnames[fontname]+'">'+fontname+'</option>';}
fontselect+='</select>';return fontselect;}
function getSizeSelect(){var sizeselect='<select id="sizeSelect" class="sizeselect" onchange="TEXTPALETTE.setPalette(\'fontSize\',this.value)" unselectable="on">';for(var fontsize in TEXTPALETTE.fontsizes){sizeselect+='<option ';if(TEXTPALETTE.textConfig.fontSize==TEXTPALETTE.fontsizes[fontsize])sizeselect+='selected ';sizeselect+='value="'+TEXTPALETTE.fontsizes[fontsize]+'">'+fontsize+'</option>';}
sizeselect+='</select>';return sizeselect;}
function getColorSelect(){var colorselect='<div id="colorSelect" class="colorselect"';if(TEXTPALETTE.textConfig.fontColor){colorselect+=' style="background:'+TEXTPALETTE.textConfig.fontColor+'"';}
colorselect+=' onclick="TEXTPALETTE.colorPicker.show(this, event);"></div>'
return colorselect;}
function getStyleSelect(){var styleselect='';styleselect+='<div class=\'styleselect\'>';styleselect+='<a id="boldStyle" href="#" style="border:1px solid white" onclick="TEXTPALETTE.setStyle(\'bold\', this); return false;"><img src="'+rewriteURL("/components/htmlarea/htmlarea/images/ed_format_bold.gif")+'" alt="Bold" /></a>';styleselect+='<a id="italicStyle" href="#" style="border:1px solid white" onclick="TEXTPALETTE.setStyle(\'italics\', this); return false;"><img src="'+rewriteURL("/components/htmlarea/htmlarea/images/ed_format_italic.gif")+'" alt="Italics" /></a>';styleselect+='<a id="underlineStyle" href="#" style="border:1px solid white" onclick="TEXTPALETTE.setStyle(\'underline\', this); return false;"><img src="'+rewriteURL("/components/htmlarea/htmlarea/images/ed_format_underline.gif")+'" alt="Underline" /></a>';styleselect+='</div>';return styleselect;}
var content=getFontSelect()+getSizeSelect()+getColorSelect()+getStyleSelect();TEXTPALETTE.colorPicker=new ColorPicker('TEXTPALETTE.colorPicker');TEXTPALETTE.colorPicker.callBack=function(color){getObject('colorselect').style.backgroundColor=color;TEXTPALETTE.setPalette('fontColor',color);}
TEXTPALETTE.target=PALETTE.createPalette('asiTextPalette','Font',content);window.eventCache.add(TEXTPALETTE.colorPicker,"callBack");return TEXTPALETTE.target;}},setTextConfig:function(textConfig){if(textConfig)TEXTPALETTE.textConfig=textConfig;TEXTPALETTE.updateView();},updateView:function(){var textConfig=TEXTPALETTE.textConfig;$$('fontSelect').value=textConfig.fontFamily;$$('sizeSelect').value=textConfig.fontSize;$$('colorSelect').style.background=textConfig.fontColor;$$('boldStyle').style.borderColor=textConfig.bold?"#FF9A31":"#FFFFFF";$$('italicStyle').style.borderColor=textConfig.italics?"#FF9A31":"#FFFFFF";$$('underlineStyle').style.borderColor=textConfig.underline?"#FF9A31":"#FFFFFF";},setStyle:function(field,element){TEXTPALETTE.textConfig[field]=!TEXTPALETTE.textConfig[field];element.style.borderColor=TEXTPALETTE.textConfig[field]?"#FF9A31":"#FFFFFF";TEXTPALETTE.onchange.call(this,TEXTPALETTE.textConfig);},setPalette:function(field,value){TEXTPALETTE.textConfig[field]=value;TEXTPALETTE.onchange.call(this,TEXTPALETTE.textConfig);},mode:null,colorPicker:null,onchange:null}
window.callout=function(url,evt,config){config=config||{};config.reference=evt||window.event;config.url=url;window.callout.obj=new Callout('callout',config);};function C3(component){var _self=this;var isDebugEnabled=false,isProfilingEnabled=false,isConsoleEnabled=false;_self.updateConfig=function updateConfig(){_self.config=arguments.callee.caller.arguments[1];if(_self.config){for(var prop in _self.config){_self[prop]=_self.config[prop];}}else{_self.config={};}
epilogue();};_self.destroy=function destroy(){D3.unregister(_self.D3Id,_self.type);_self.eventCache.flush();_self.listeners.length=0;};_self.locals={};_self.eventCache=new EventCache();_self.listeners=[];_self.registerListener=function(listener){if(_self.listeners.indexOf(listener)==-1){_self.listeners.push(listener);}}
_self.unregisterListener=function(listener){var index=_self.listeners.indexOf(listener);if(index!=-1){_self.listeners.splice(index,1);}}
_self.eventOccurred=function(event){}
function init(){var $class=_self;var parentClass=null;do{$class.type=$class.constructor.toString().match(/function ?\$?(\w+)/)[1];$class.parentClass=parentClass;var constr=$class.constructor;var hasArguments=constr.arguments&&!!constr.arguments.length;var caller=constr.arguments[0];var hasInheritance=false;if(caller.constructor&&caller.constructor.toString){var matches=caller.constructor.toString().match(/function ?(\$?\w+)/);if(matches&&matches.length>1){hasInheritance=hasArguments&&!!caller.constructor&&typeof caller=='object'&&caller instanceof window[matches[1]];}}
if(hasInheritance){parentClass=$class;$class=caller;for(var prop in parentClass){$class[prop]=parentClass[prop];}}else{_self=$class;_self.id=$class.constructor.arguments[0]||(_self.type+new Date().getTime());$class=null;}}while($class);var obj=window[_self.id];if(!!obj&&obj.type==_self.type){D3.unregister(_self.D3Id,_self.type);obj.eventCache.flush();obj.destroy();}
_self.D3Id=D3.register(_self,_self.type);_self.superType='C3';}
function epilogue(){if(isProfilingEnabled&&_self.type!='Profiler'){new Profiler(_self.id,{target:_self}).register('*');}
if(isDebugEnabled){setTimeout(function(){ASI_LOG.debug('Instantiated '+_self.type+' "'+_self.id+'"');},500);}
if(isConsoleEnabled&&_self.type!='Console'){_self.console=CONSOLES[_self.type]||new Console(_self.type);}
if(isConsoleEnabled){try{MAMON.console.$window.populateConsoleMenu();}catch(e){}}}
init();return _self;}
window.D3=window.D3||new Demon();function Browse(){return new RemoteComponent(this)}
function Calendar(){return new RemoteComponent(this)}
function ContextMenu(){return new RemoteComponent(this)}
function Console(){return new RemoteComponent(this)}
function Demon(){return new RemoteComponent(this)}
function Dialog(){return new RemoteComponent(this)}
function Drilldown(){return new RemoteComponent(this)}
function Dropdown(){return new RemoteComponent(this)}
function Mars(){return new RemoteComponent(this)}
function Menu(){return new RemoteComponent(this)}
function MCalendar(){return new RemoteComponent(this)}
function MDatetime(){return new RemoteComponent(this)}
function Picker3(){return new RemoteComponent(this)}
function Profiler(){return new RemoteComponent(this)}
function ProtoGrid(){return new RemoteComponent(this)}
function Search(){return new RemoteComponent(this)}
function SecurityManager(){return new RemoteComponent(this)}
function SynchronizedDialog(){return new RemoteComponent(this)}
function Synchronizer(){return new RemoteComponent(this)}
function Tabs(){return new RemoteComponent(this)}
function Component(id,stylesheets,type){var _self=this;_self.stylesheets=stylesheets||new Array();_self.type=type||'Component';_self.id=id||(type+new Date().getTime());_self.D2Id=D2.register(_self,_self.type);_self.DOM=$$(id);if(_self.DOM){_self.DOM.setAttribute('componentType',_self.type);}
for(var i=0;i<_self.stylesheets.length;i++){importStyleSheet(_self.stylesheets[i]);}
_self.destroy=function destroy(){D2.unregister(this.D2Id,this.type);this.eventCache.flush();};_self.hide=function(){if(_self.DOM.parentNode){_self.DOM.parentNode.removeChild(_self.DOM);}};_self.delayedHide=function(){if(!_self.DOM.className.match(/hover/g)){_self.hide();}};_self.attachEvents=function(id){var element=getObject(id);element.onmouseover=function(){_self.className+=" hover";};element.onmouseout=function(){this.className=this.className.replace(/ *hover/g,"");var f='window.'+id+'.delayedHide()';setTimeout(f,5000);};};_self.filterActionItems=function(items,rows){var descriptors=GRID.getRowDescriptors(rows);var types=GRID.getKeys(descriptors).forEach(function(key){return(typeof key=='object')?key.type:key.tokenAt(0,_self.delim);});for(i=0;i<items.length;i++){var item=items[i];hideForMultiple=item.getAttribute('hideForMultiple');hideForAny=item.getAttribute('hideForAny');showForTypes=item.getAttribute('showForTypes');item.style.display='';if((hideForMultiple=="true"&&rows.length>1)||(hideForAny=="true"&&rows.length>0)||!isActionPermitted(descriptors,item)||(showForTypes&&!rows.length)){item.style.display='none';continue;}
if(showForTypes&&rows.length>0){for(var j=0;j<types.length;j++){if(!isTypeInItem(types[j],item)){item.style.display='none';break;}}}}
function isTypeInItem(type,item){var showForTypes=item.showForTypes||item.getAttribute('showForTypes');showForTypes=showForTypes.split(",");for(var i=0;i<showForTypes.length;i++){var showForType=showForTypes[i].trim();var translatedType=eval(showForType);if(translatedType==eval(type)){if(!showForType.match(/\D/)){var msg='Encountered literal object type. %0a';msg+='The string representation of the type constant should be used ';msg+='instead of the number that it represents (TYPE '+type+').';ASI_LOG.warn(msg,true);}
return true;}}
return false;}
function isActionPermitted(descriptors,item){if(!(descriptors instanceof Array)){throw new Error('Array expected');}
var permissions=item.getAttribute('permissions');var isStrict=eval(item.getAttribute('strictComparison'));if(!permissions){return true;}
var re_tokenIndex=/\[([$\w\.]+)\]/g;var re_looseComparisons=/(!=(?!=)|==(?!=))/g;for(var i=0;i<descriptors.length;++i){var token=permissions.replace(re_tokenIndex,function(m,index){return(descriptors[i].tokenAt(index,_self.delim)||'""');});if(isStrict){token=token.replace(re_looseComparisons,'$1=');}
var isAllowed=eval(token);if(!isAllowed){return false;}}
return true;}};_self.eventCache=new EventCache();return _self;}
window.D2=window.D2||new Demon();function $Logger(id){this.stylesheets=[];this.className='asiLogger';this.type='Logger';this.component=Component;this.component(id,this.stylesheets,this.type);}
ASI_LOG={getConsole:function(){var caller=arguments.callee.caller;if(caller&&caller.superType=='C3'){return caller.console;}
if(MAMON&&MAMON.console&&!MAMON.console.$window.closed){return MAMON.console;}},fatal:function(message,trace){if(trace)message=message+ASI_LOG.trace();ASI_LOG.console=ASI_LOG.getConsole();if(ASI_LOG.console){ASI_LOG.console.out(message);return;}
this.log('fatal.do?message='+message);},error:function(message,trace){if(trace)message=message+ASI_LOG.trace();ASI_LOG.console=ASI_LOG.getConsole();if(ASI_LOG.console){ASI_LOG.console.out(message);return;}
this.log('error.do?message='+message);},warn:function(message,trace){if(CLIENT_LOG_LEVEL<LOG_WARN){return;}
if(trace)message=message+ASI_LOG.trace();ASI_LOG.console=ASI_LOG.getConsole();if(ASI_LOG.console){ASI_LOG.console.out(message);return;}
this.log('warn.do?message='+message);},debug:function(message,trace){if(CLIENT_LOG_LEVEL<LOG_DEBUG){return;}
if(trace)message=message+ASI_LOG.trace();ASI_LOG.console=ASI_LOG.getConsole();if(ASI_LOG.console){ASI_LOG.console.out(message);return;}
this.log('debug.do?message='+message);},log:function(command){command=command.replace(/(.+?message=)([\w\W]+)/,function($m,$1,$2){return $1+encodeURIComponent($2);});this.stack.push(rewriteURL('/components/logger/'+command));setTimeout('ASI_LOG.send()',10*this.stack.length);},remote:function(command){command=command.replace(/(.+?message=)([\w\W]+)/,function($m,$1,$2){return $1+encodeURIComponent($2);});this.stack.push(IRE_MON+'/components/logger/'+command);setTimeout('ASI_LOG.send()',10*this.stack.length);},send:function(){if(this.stack.length){try{loadURL(this.stack.shift(),function(){});}catch(e){}}},stack:[],trace:function(caller){var msg="",caller=caller||arguments.callee.caller;if(caller){var $function=caller.toString();var re=/.*?function ?([\w$_]*)(\(.*?\))[\w\W]+/;var fName=$function.replace(re,function(match,$1,$2){return(($1||'anonymous')+$2);});msg+="\n\tat "+fName;var $arguments=fName.match(/\(.*?\)/)[0];$arguments=$arguments.match(/\((.*?)\)/)[1].split(",");for(var i=0,argName;i<caller.arguments.length;i++){if(!$arguments[i]){$arguments[i]="arguments["+i+"]";}
argName=$arguments[i].trim();argValue=caller.arguments[i];if(argName=='config'&&typeof argValue=='object'){argValue=toSource(argValue);}
msg+="; "+argName+"="+argValue;}
if(fName.match(/anonymous/)){var callerSource=caller.toString();callerSource=callerSource.match(/[^\{]+\{([\w\W]+)\}/,'')[1].trim();}
if(caller.caller){msg+=ASI_LOG.trace(caller.caller);}}
return msg;}}
if(LOG_CLIENT_ERRORS||TRAP_CLIENT_ERRORS){window.onerror=function(msg,URL,lineNum){if(window.isDebuggingMode){debugger;}
if(LOG_CLIENT_ERRORS){var message="\nClient URL is "+escape(URL);message+="\nReported line number is "+lineNum;message+="\nError: "+msg;var caller=window.onerror.caller;var source=window.executedScript;if(msg.match(/is undefined/)){message+="\nError thrown from: ";var vName=msg.match(/'([$_\w]+)'/)[1];source=caller.toString().match(new RegExp('.*?'+vName+'.*'));}else if(source){}else if(caller&&caller.toString().split(/\n/).length>=lineNum){message+="\nError was thrown from: ";source=caller.toString().split(/\r?\n/)[lineNum-1];}else{message+="\nMore information: ";source=loadURL('/portal/js/standard_scripts.js').responseText.split(/\r?\n/)[lineNum-2];}
message+=source;if(caller){message+=ASI_LOG.trace(caller);}
ASI_LOG.error(message);if(IRE_MON){var hostUrl=window.location.host;if(!IRE_MON.match(hostUrl)){ASI_LOG.error('Remote Monitor ['+hostUrl+']:\n'+message);}}}
return TRAP_CLIENT_ERRORS;}}
function _(msg){var startTime=window.__START_TIME;var lapStart=window.__LAP_TIME;var delta,outMsg=msg||'';window.__LAP_TIME=new Date().getTime();if(msg===0){if(typeof arguments[1]!='undefined'){outMsg=arguments[1];}
if(startTime){delta=new Date().getTime()-startTime;window.__START_TIME=lapStart=null;}else{window.__START_TIME=window.__LAP_TIME;}}
if(lapStart){delta=new Date().getTime()-lapStart;}
if(delta){outMsg+=' '+delta/1000+'s ('+delta+'ms)';}
if(outMsg){ASI_LOG.debug('\n\t '+outMsg);}}
function Autocomplete(){return new RemoteComponent(this)}
function ColorPicker(){return new RemoteComponent(this)}
function Datetime(){return new RemoteComponent(this)}
function Filter(){return new RemoteComponent(this)}
function Grid(){return new RemoteComponent(this)}
function Hierarchy(){return new RemoteComponent(this)}
function Palette(){return new RemoteComponent(this)}
function Picker(){return new RemoteComponent(this)}
function Rating(){return new RemoteComponent(this)}
function Status(){return new RemoteComponent(this)}
function Tooltip(){return new RemoteComponent(this)}
function Wizard(){return new RemoteComponent(this)}
if(!window.asi)window.asi=new Object();asi.WAIT="<div class='asiWait'>"+_ASI.componentUtils.pleaseWait+"</div>";asi.TYPES=new Object();asi.TYPES.DEFERRED=TYPE_DEFERRED;asi.TYPES.LONG=TYPE_LONG;asi.TYPES.DOUBLE=TYPE_DOUBLE;asi.TYPES.STRING=TYPE_STRING;asi.TYPES.USER=TYPE_USER;asi.TYPES.GROUP=TYPE_GROUP;asi.TYPES.CURRENCY=TYPE_CURRENCY;asi.TYPES.DATE=TYPE_DATE;asi.TYPES.TIME=TYPE_TIME;asi.TYPES.DATETIME=TYPE_DATETIME;asi.TYPES.BINARY=10;asi.TYPES.BEAN=TYPE_BEAN;asi.TYPES.FOLDER=TYPE_FOLDER;asi.TYPES.DOCUMENT=TYPE_DOCUMENT;asi.TYPES.PAGE=TYPE_PAGE;asi.TYPES.FORUM=TYPE_FORUM;asi.TYPES.DISCUSSION_THREAD=TYPE_DISCUSSION_THREAD;asi.TYPES.MESSAGE=TYPE_MESSAGE;asi.TYPES.KNOWLEDGE_CENTER=TYPE_KNOWLEDGE_CENTER;asi.TYPES.COMMUNITY=TYPE_COMMUNITY;asi.TYPES.TASK=TYPE_TASK;asi.TYPES.PROCESS=TYPE_PROCESS;asi.TYPES.TEMPLATE=TYPE_TEMPLATE;asi.TYPES.ATTACHMENT=TYPE_ATTACHMENT;asi.TYPES.ROLE=TYPE_ROLE;asi.TYPES.PROCESSMODEL_FOLDER=TYPE_PROCESSMODEL_FOLDER;asi.TYPES.SIM_SCENARIO=TYPE_SIM_SCENARIO;asi.TYPES.PASSWORD=TYPE_PASSWORD;asi.TYPES.EVENT=TYPE_EVENT;asi.TYPES.PROCESS_MODEL=TYPE_PROCESS_MODEL;asi.TYPES.BOOLEAN=TYPE_BOOLEAN;asi.TYPES.PEOPLE=TYPE_PEOPLE;asi.TYPES.CONTENT=TYPE_CONTENT;asi.TYPES.EMAIL_ADDRESS=TYPE_EMAIL_ADDRESS;asi.TYPES.EMAIL_RECIPIENT=TYPE_EMAIL_RECIPIENT;asi.parameters=new Array();asi.getParameters=function(id){var params=asi.parameters[id];if(params)return params;if(id=='asiWizard')return new asi.WizardParameters();if(id=='asiPicker')return new asi.PickerParameters();if(id=='parent.asiPicker')return new asi.PickerParameters();}
importStyleSheet('/components/css/asiForm.css');function getFieldLegend(field){var fieldset=getContainerByTagName(field,'FIELDSET');if(fieldset)return getElementsByClassName('legend',fieldset)[0];else return null;}
function getFieldLabel(field){if(field.parentNode.tagName=='LABEL'){var labelContainer=getElementsByClassName('label',field.parentNode,'SPAN')[0];var labelText;if(labelContainer){labelText=labelContainer.innerHTML.stripHTML();}
else{labelText=field.parentNode.innerHTML.stripHTML();}
if(labelText){return labelText.replace(/^\s+/,'').replace(/\s?\r?\n/g,'');}}else if(field.htmlFor){return getObject(field.htmlFor);}
if(getFieldLegend(field)){return getFieldLegend(field).innerHTML.stripHTML();}}
function getFieldItemLabel(field){if(field.parentNode.tagName=='LABEL'){var itemLabelContainer=getElementsByAttributeValue('itemLabel','true',field.parentNode,'SPAN')[0];if(itemLabelContainer){return itemLabelContainer.innerHTML.stripHTML();}}
if(field.nextSibling.nodeType==3){return field.nextSibling.data;}
else if(field.nextSibling.firstChild.nodeType==3){return field.nextSibling.innerHTML.stripHTML();}
else{return'';}}
function getErrorContainer(field,isGenerateNew){if(field.type=="hidden"){if(getElementsByClassName('Picker',field.parentNode,'INPUT').length==0){return null;}}
var label=getContainerByTagName(field,'LABEL',4);if(!label)return null;if(field.type in set('checkbox','radio')&&label)label=label.parentNode;var containers=[];if(label){containers=getElementsByClassName('errorMessage',label);}
if(isGenerateNew&&containers.length==0){var span=document.createElement('SPAN');{span.className='errorMessage';}
label.appendChild(span);return span;}
return containers[0];}
function setFieldError(field,message){var isEmptyMessage=(!message||message.trim()==="");var container=getErrorContainer(field,!isEmptyMessage);if(isEmptyMessage&&container){removeElement(container);}
if(isEmptyMessage||!container){return false;}
try{container.innerHTML=message;}catch(e){container=getElementsByClassName('errorMessage',container.parentNode,'SPAN')[0];var value=document.createElement('SPAN');value.className='errorMessage';value.appendChild(document.createTextNode(message));container.parentNode.replaceChild(value,container);}
return true;}
function clearAllErrors(container){var a=getElementsByClassName("errorMessage",container);for(var i=0;i<a.length;i++){removeElement(a[i]);}}
function clearErrors(elements){if(!elements)return;var container;if(!elements.length){container=getErrorContainer(elements);if(container){container.parentNode.removeChild(container);}
return;}
for(var i=0;i<elements.length;i++){if(isField(elements[i])){container=getErrorContainer(elements[i]);if(container){container.parentNode.removeChild(container);}}}}
function removeErrorContainer(field){if(field.tagName=='INPUT')var labelContainer=getContainerByTagName(field,'LABEL');if(!labelContainer)return false;if(field.tagName=='LABEL')var labelContainer=field;var errorContainer=getElementsByClassName('errorMessage',labelContainer);if(errorContainer.length==1){errorContainer=errorContainer[0];errorContainer.parentNode.removeChild(errorContainer);}
return true;}
function extractFields(fieldset,toHidden){var fieldsetContainer=fieldset.parentNode;var fields=toHidden?fieldset.getElementsByTagName('INPUT'):fieldset.getElementsByTagName('LABEL');while(fields.length>0){var field=fields[0];if(field.className=='booleanInput'){if(field.checked)fieldsetContainer.parentNode.insertBefore(normalizeBooleanInput(field),fieldsetContainer);field.parentNode.removeChild(field);}
else fieldsetContainer.parentNode.insertBefore(field,fieldsetContainer);}
fieldsetContainer.parentNode.removeChild(fieldsetContainer);}
function normalizeBooleanInput(radio){var label=document.createElement('LABEL');{var span=document.createElement('SPAN');{span.appendChild(document.createTextNode(getFieldLabel(radio)));span.style.display='block';}
label.appendChild(span);var input=document.createElement('INPUT');{input.name=radio.name;input.value=getFieldValue(radio);input.className='iText';}
label.appendChild(input);}
return label;}
function setRequiredStatus(submittedTextObject,isRequired){var listItem=getContainerByTagName(submittedTextObject,'LI');var inputFields=getInputsByType('text',listItem);for(var i=0;i<inputFields.length;i++){inputFields[i].required=isRequired}}
function setFieldConfirmValue(field){var container=getContainerByClassName(field,'fieldContainer',3);try{var fieldValue=getFieldValue(field,true);if(field.type=='password'){var tempValue='';for(var i=0;i<fieldValue.length;i++){tempValue+='*';}
fieldValue=tempValue;}
getElementsByClassName('confirmValue',container,'SPAN')[0].innerHTML=fieldValue.escapeHTML();}catch(e){container=getElementsByClassName('confirmValue',container,'SPAN')[0];var value=document.createElement('SPAN');value.className='confirmValue';var fieldValue=getFieldValue(field,true);if(field.type=='password'){fieldValue='';var tempValue='';for(var i=0;i<fieldValue.length;i++){tempValue+='*';}
fieldValue=tempValue;}
value.appendChild(document.createTextNode(fieldValue));container.parentNode.replaceChild(value,container);}}
function openExpressionEditor(hiddenField){var expEditor=new ExpressionEditor(hiddenField,null,null,null,null,'true');expEditor.openEditor();}
function joinDates(dateWidgetId){var dm=getDatetimeMeta(dateWidgetId);var dates=[];for(var i=0;i<dm.numFields;i++){var value='';if(dm.hasDates&&dm.dateFields[i].value!=datePickerPattern){value=dm.dateFields[i].value;if(dm.hasTimes){var timeValue=dm.timeFields[i].value;if(timeValue==""||timeValue==timePickerPattern){timeValue=TIME_PICKER_OPTIONS[0];}
value=Date.Util.createDatetimeString(value,timeValue);}}else if(!dm.hasDates){value=dm.timeFields[i].value==timePickerPattern?'':dm.timeFields[i].value;}
dates.push(value);}
dm.hiddenField.value=dates.join(_AE.uiDelimiter);var onchange=dm.hiddenField.onchange;if(onchange){setTimeout(function(){onchange.call(dm.hiddenField);},0);}
setFieldConfirmValue(dm.hiddenField);function midnight(){var midnight=new Date();midnight.setHours(0);midnight.setMinutes(0);return midnight.toAString('time');}
setFieldConfirmValue(dm.hiddenField);}
function addDateField(dateWidgetId,date,time){var dm=getDatetimeMeta(dateWidgetId);if(dm.numFields+1==dm.MAX_FIELDS){dm.addLink.disabled=true;}
var clonee=getContainerByTagName(dm.dateFields[0]||dm.timeFields[0],'LABEL');getElementsByAttributeValue('isRemoveLink','true',clonee,'A')[0].style.display='';var clone=clonee.cloneNode(true);var dateInput=getElementsByAttributeValue('isDate','true',clone,'INPUT')[0];var timeInput=getElementsByAttributeValue('isTime','true',clone,'INPUT')[0];if(dateInput)dateInput.value=date||datePickerPattern;if(timeInput)timeInput.value=time||timePickerPattern;var errorMessages=getElementsByClassName("errorMessage",clone,'SPAN');if(errorMessages.length>0)clone.removeChild(errorMessages[0]);dm.container.insertBefore(clone,dm.hiddenField);}
function removeDateField(anchor,dateWidgetId){var dm=getDatetimeMeta(dateWidgetId);var row=getContainerByTagName(anchor,'LABEL');row.parentNode.removeChild(row);joinDates(dateWidgetId);if(dm.numFields==2){getElementsByAttributeValue('isRemoveLink','true',dm.container,'A')[0].style.display='none';}else if(dm.numFields==dm.MAX_FIELDS){dm.addLink.disabled=false;}}
function getDatetimeMeta(dateWidgetId){var container=$$('container_'+dateWidgetId);var dateFields=getElementsByAttributeValue('isDate','true',container,'INPUT');var timeFields=getElementsByAttributeValue('isTime','true',container,'INPUT');return{container:container,dateFields:dateFields,timeFields:timeFields,hasDates:!!dateFields.length,hasTimes:!!timeFields.length,numFields:Math.max(dateFields.length,timeFields.length),hiddenField:$$('hidden_'+dateWidgetId),addLink:$$('addlink_'+dateWidgetId),MAX_FIELDS:9}}
function getTimeOptions(){var ranges=new Array();for(var i=0;i<TIME_PICKER_OPTIONS.length;i++){ranges.push([TIME_PICKER_OPTIONS[i],TIME_PICKER_OPTIONS[i]]);}
return ranges;}
function constructTimeESelect(uniqueId){var container=$$('eContainer_'+uniqueId);var attributes='isTime="true" ';attributes+='onchange="Date.Util.autoCorrect(this, \'time\', function(){joinDates(\''+uniqueId+'\');});" ';attributes+='validate="time" ';attributes+='id="time_'+uniqueId+'" ';container.innerHTML=EditableSelectHTML('eselect',timePickerPattern,getTimeOptions(),attributes);}
function showHelpbox(hoverObject){var helpbox=getHelpbox(hoverObject);if(helpbox){helpbox.style.display='inline';helpbox.iframe=backWithIframe(helpbox,'49');}}
function hideHelpbox(hoverObject){var helpbox=getHelpbox(hoverObject);if(helpbox){helpbox.style.display='';var iframe=helpbox.iframe;if(iframe&&iframe.parentNode){iframe.parentNode.removeChild(iframe);}}}
function getHelpbox(hoverObject){var candidate=hoverObject.previousSibling;if(candidate.nodeType==3){candidate=candidate.previousSibling;}
if(candidate&&candidate.className.match(/helpbox/)){return candidate;}
else{return null;}}
function getInstructionContainer(field,isGenerateNew){if(field.type=="hidden"){return null;}
var fieldContainer=getContainerByClassName(field,'fields',5);var instructionContainers=getElementsByClassName("instructions",fieldContainer,"P");if(isGenerateNew&&instructionContainers.length==0){var instructionNode=new Node('P',{className:'instructions'});fieldContainer.appendChild(instructionNode);return instructionNode;}
return instructionContainers[0];}
function setFieldInstruction(field,instruction){var isEmptyInstruction=(!instruction||instruction.trim()==="");var container=getInstructionContainer(field,!isEmptyInstruction);if(isEmptyInstruction&&container){removeElement(container);return false;}
if(isEmptyInstruction||!container){return false;}
try{container.innerHTML=instruction;}catch(e){}
return true;}
function clearFieldInstruction(field){var fieldContainer=getContainerByClassName(field,'fields',5);var a=getElementsByClassName("instructions",fieldContainer);if(a.length>0){removeElement(a[0]);}}
var validHelperTable=[];validHelperTable["positive"]=[_ASI.Validate.positive,true];validHelperTable["long"]=[_ASI.Validate.regularNumber,true];validHelperTable["float"]=[_ASI.Validate.number,true];validHelperTable["positivefloat"]=[_ASI.Validate.positive,true];validHelperTable["scientific"]=[_ASI.Validate.scientific,true];validHelperTable["string"]=[_ASI.Validate.letters,true];validHelperTable["alphanumeric"]=[_ASI.Validate.alphanumeric,true];validHelperTable["notNumbers"]=[_ASI.Validate.invalidChar,true];validHelperTable["username"]=[_ASI.Validate.invalidChar,true];validHelperTable["displayname"]=[_ASI.Validate.invalidChar,true];validHelperTable["date"]=[_ASI.Validate.date,true];validHelperTable["time"]=[_ASI.Validate.time,true];validHelperTable["datetime"]=[_ASI.Validate.datetime,true];validHelperTable["zipcode"]=[_ASI.Validate.zipcode,false];validHelperTable["ssn"]=[_ASI.Validate.ssn,false];validHelperTable["email"]=[_ASI.Validate.email,false];validHelperTable["htmlarea"]=[_ASI.Validate.htmlarea,false];validHelperTable["yesno"]=[_ASI.Validate.yesno,false];validHelperTable["regex"]=[_ASI.Validate.invalid,false];validHelperTable["EE identifier"]=[_ASI.Validate.invalid,false];validHelperTable["record"]=[_ASI.Validate.record,false];validHelperTable["file"]=[_ASI.Validate.invalid,false];function standardValidate(container,validateRequired){if(typeof validateRequired==='undefined'){validateRequired=true;}
var isFormValid=true;var errors=[];var errorRefs=[];var elements=getElements(container);var ERROR_TRUNCATE=25;clearErrors(elements);for(var i=0;i<elements.length;i++){var field=elements[i];if(!isField(field)){continue;}
var type=field.getAttribute('validate');if(type==null&&field.className==='Picker'){type="picker";}
if(type==null&&field.className=='iFile'){type="file";}
if(type!='htmlarea'&&!isVisible(field)){continue;}
if(field.tagName=='INPUT'&&field.type in set('radio','checkbox')){var inputSet=field.form[field.name];if(inputSet&&inputSet.length&&field!=inputSet[inputSet.length-1]){continue;}}
var validationMessage=field.getAttribute('validationMessage');var value=getFieldValue(field);var autocompleteRef=field.getAttribute('autocompleteRef');if(autocompleteRef){if(typeof(autocompleteRef)==="string"){value=value.replace(eval(autocompleteRef+".getDefaultMessage()"),'');}else if(typeof(autocompleteRef)==="object"){value=value.replace(autocompleteRef.getDefaultMessage(),'');}}
if(type in set('date','time','datetime')){if(value in set(datePickerPattern,timePickerPattern,Date.Util.createDatetimeString(datePickerPattern,timePickerPattern))){value='';}}
if(type=='htmlarea'&&value){value=value.replace(/<img.+?>/gi,'i').replace(/<.+?>/g,'').replace(/&nbsp;/g,' ');var maxlength=field.maxlength||field.getAttribute('maxlength');if(maxlength&&value.length>maxlength){validationMessage=validationMessage||_ASI.Validate.htmlareaMaxlength.supplant(maxlength);errors.push(validationMessage);errorRefs.push(field);}}
var minlength=field.getAttribute('minlength');if(minlength&&value.length<minlength){validationMessage=validationMessage||_ASI.Validate.length.supplant(minlength);errors.push(validationMessage);errorRefs.push(field);}
if(typeof(value)==="string"&&value.trim()!==""){if(type==='expression'){if(!EXPRESSIONEDITOR.lexer(value,true)){if(EXPRESSIONEDITOR.exceptions.length>0){errors.push(EXPRESSIONEDITOR.exceptions[0]);errorRefs.push(field);EXPRESSIONEDITOR.exceptions=[];}
isFormValid=false;continue;}}
if(type==="picker"){var id=field.parentNode.getElementsByTagName('INPUT')[1].value;var typeField=field.parentNode.getElementsByTagName('INPUT')[2].value;var required=field.getAttribute('required');if(required&&(required=='true'||required=='required')){if(id===''&&typeField===''){errors.push(value.split(_AE.uiDelimiter).length>1?_ASI.Picker.invalidEntry2Plural:_ASI.Picker.invalidEntry2);errorRefs.push(field);}}
var idArray=id.split(_AE.uiDelimiter);var valueArray=value.split(_AE.uiDelimiter);for(var j=0;j<valueArray.length;j++){if(idArray[j]===''&&valueArray[j].trim()!==''){errors.push(value.split(_AE.uiDelimiter).length>1?_ASI.Picker.invalidEntry2Plural:_ASI.Picker.invalidEntry2);errorRefs.push(field);}}
continue;}
var isMultiple=false;if(!!field.getAttribute('multiple')){isMultiple=field.getAttribute('multiple')==='true';}else if(validHelperTable[type]){isMultiple=validHelperTable[type][1];}
var delimiter=isMultiple?(container.delimiter?container.delimiter:_AE.uiDelimiter):null;if(!value.validate(type,delimiter)&&type!='expression'){validationMessage=getValidationMessage(type,value,validationMessage);errors.push(validationMessage);errorRefs.push(field);}
var matchWith=field.getAttribute('matchWith');if(matchWith){var fields=document.getElementsByName(matchWith);if(fields.length>1){ASI_LOG.warn('Encountered more than one field '+'with the same property name',true);}
var field2=fields[0];if(value!=getFieldValue(field2)){errors.push(_ASI.Validate.matchWith.supplant(getFieldLabel(field2)));errors.push(_ASI.Validate.matchWith.supplant(getFieldLabel(field)));errorRefs.push(field);errorRefs.push(field2);}}}else if(validateRequired){var required=field.getAttribute('required');if(required&&(required=='true'||required=='required'||required===true)){fieldName=trim(getFieldLabel(field).replace(/[:*\r\n]|<\/?[^>]+>/gi,''));validationMessage=validationMessage||_ASI.Validate.blank.supplant(fieldName);errors.push(validationMessage);errorRefs.push(field);}}}
if(errors.length>0){displayErrors(errors,errorRefs);isFormValid=false;}
return isFormValid;}
function displayErrors(errors,errorRefs){var buffer='';for(var i=0;i<errors.length;i++){if(!setFieldError(errorRefs[i],errors[i])){buffer+=StringSecurityUtils.encodeHtml(errors[i])+'<br />';}}
if(buffer!==''){asi.alert(_ASI.Validate.missingData.supplant(buffer));}}
function validateSearch(field){var valid=false;if(field.length){for(var i=0;i<field.length;i++){if(field[i].value!==''&&trim(field[i].value)!==''){valid=true;break;}}}else{if(field.value!==''&&trim(field.value)!==''){valid=true;}}
if(!valid){if(window.name=='fHeader'){window.parent.fBody.asi.alert(_ASI.Validate.searchCriteria);}else{asi.alert(_ASI.Validate.searchCriteria);}}
return valid;}
function getValidationMessage(validationType_,value_,default_){var message='';switch(validationType_){case"date":message=default_||validHelperTable[validationType_][0].supplant(value_,datePickerPattern);break;case"time":message=default_||validHelperTable[validationType_][0].supplant(value_,timePickerPattern);break;case"datetime":message=default_||validHelperTable[validationType_][0].supplant(value_,datePickerPattern,timePickerPattern);break;default:if(validationType_.match(/^!?regex\(/)){validationType_="regex";}
message=validHelperTable[validationType_][0].supplant(value_);break;}
return message.escapeHTML();}
importStyleSheet('/components/css/asiPicker.css');asi.WAIT_PICKER=BACKDROP_IFRAME_HTML+"<div class='asiWait'>"+_ASI.Picker.pleaseWait+"</div>";asi.PICK_GROUPS_AND_USERS='groupsAndUsers';asi.PICK_GROUPS='groups';asi.PICK_USERS='users';asi.PICK_FOLDER='folders';asi.PICK_DOCUMENT='docs';asi.PICK_ASSIGNEES_AC="assigneesAC";asi.PICK_ASSIGNEES="assignees";asi.PICK_KCS='kcs';asi.PICK_PORTAL_PAGES='portalPages';asi.PICK_REPORTS='reports';asi.PICK_THREADS='threads';asi.PICK_FORUMS='forums';asi.PICK_PROCESS_MODEL='processmodels';asi.PICK_WRITABLE_FOLDERS='writableFolders';asi.PICK_DOCUMENT_BY_EXTENSION='imageDocs';asi.PICK_COLLAB_COMMUNITIES='collabCommunities';asi.PICK_DOCUMENT_AND_FOLDER='foldersAndDocs';asi.PICK_XML_DOCUMENT_AND_FOLDER='foldersAndXmlDocs';asi.PICK_MESSAGE='discussionMessages';asi.PICK_PROCESS='processes';asi.PICK_PDF_DOCS='pdfDocs';asi.PICK_HTML_DOCS='htmlDocs';asi.PICK_PROCESS_MODEL_FOLDERS='pmFolders';asi.PICK_STARTABLE_PROCESS_MODELS='startablePMs';asi.PICK_DEPARTMENTS='departments'
asi.PICK_TEAMS='teams';asi.PICK_DEPARTMENTS_AND_TEAMS='departmentsandteams';asi.PICK_SAVED_REPORTS='savedreports';asi.PICK_EMAIL_RECIPIENTS='emailRecipients';asi.PICK_MESSAGE_DESTINATION='messageDestination';asi.PICK_MESSAGE_PROPERTIES_CONTAINER='messageProperties';asi.PICK_LINK_FOLDERS_PORTLET='linkFoldersPortletRoot';asi.PICK_LINK_FOLDERS_USER='linkFoldersUser';asi.PICK_LINK_FOLDERS_GROUP='linkFoldersGroup';asi.PICK_DEPARTMENTS_ADMIN='departmentsadmin';asi.PICK_TEAMS_ADMIN='teamsadmin';asi.PICK_DEPARTMENTS_AND_TEAMS_ADMIN='departmentsandteamsadmin';asi.PICK_WEBSERVICES='webservices';asi.PickerObject=function(dname,oid,ot,rid,prot){this.displayName=dname;this.objectId=oid;this.objectType=ot;this.roleId=rid;this.isProtected=prot;}
asi.PickerParameters=function(id){this.id=id?id:'asiPicker';this.showButtons=true;this.templateJSP='/components/picker2/main.do';this.removeCallbackFunction=null;this.addCallbackFunction=null;this.renderRowFunction="asi.renderRow";this.pickedArray=new Array();this.pickerTargetId=null;this.pickerTargetName=null;this.pickerTargetType=null;this.isSinglePicker=false;this.pickType=null;this.customRef=null;this.callback=null;}
asi.pick=function(pickType,targetId,targetName,parameters){parameters=parameters?parameters:new asi.PickerParameters();var integer=parseInt(pickType);if(isNaN(integer))
parameters.templateJSP="/components/picker2.do";if(getObject('asiPicker')&&getObject('asiPicker').style.display!="none"){parameters.id='redundantContainer'}
return asi.pick_old(pickType,targetId,targetName,parameters);}
asi.singlePick=function(pickType,targetId,targetName,parameters){parameters=parameters?parameters:new asi.PickerParameters();var integer=parseInt(pickType);if(isNaN(integer))
parameters.templateJSP="/components/picker2.do";if(getObject('asiPicker')&&getObject('asiPicker').style.display!="none"){parameters.id='redundantContainer'}
return asi.singlePick_old(pickType,targetId,targetName,parameters);}
asi.pick_old=function(pickType,targetId,targetName,parameters){parameters=parameters?parameters:new asi.PickerParameters();if(asi.isRedundantPicker&&pickType==13)parameters.id='redundantContainer';parameters.pickType=pickType;if(targetId)parameters.pickerTargetId=targetId;if(targetName)parameters.pickerTargetName=targetName;asi.parameters[parameters.id]=parameters;var htmlGet=parameters.templateJSP;htmlGet+='?type='+pickType;htmlGet+='&showButtons='+parameters.showButtons;htmlGet+='&pickerId='+parameters.id;htmlGet+='&customRef='+parameters.customRef;var pickerObj=getObject(parameters.id);if(!pickerObj){pickerObj=document.body.appendChild(asi.getPickerDOM(parameters.id));}
if(pickerObj){if(!parameters.isSinglePicker){pickerObj.className=pickerObj.className.replace(/ ?asiSinglePicker/g,'');pickerObj.style.width='';}
pickerObj.innerHTML=asi.WAIT_PICKER;pickerObj.style.display='block';if(parameters.id=='asiPicker'||parameters.id=='redundantContainer'){centerInViewport(pickerObj);if(parameters.id!='redundantContainer'){if(!window.event)pickerObj.style.zIndex=1001;}else if(!window.event)pickerObj.style.zIndex=1002;}}
var integer=parseInt(pickType);if(isNaN(integer)){backgroundAction(htmlGet,null,{callback:parameters.callback});}else{backgroundPageNoHistory(htmlGet);}
return true;}
asi.singlePick_old=function(pickType,targetId,targetName,parameters){parameters=parameters?parameters:new asi.PickerParameters();if(asi.isRedundantPicker&&pickType==13)parameters.id='redundantContainer';parameters.pickType=pickType;var pickerObj=getObject(parameters.id);if(!pickerObj){pickerObj=document.body.appendChild(asi.getPickerDOM(parameters.id));}
if(pickerObj.className.indexOf('asiSinglePicker')<0){pickerObj.className+=' asiSinglePicker';}
pickerObj.style.width='470px';parameters.isSinglePicker=true;return asi.pick_old(pickType,targetId,targetName,parameters);}
asi.updatePickerTargets=function(pickerId){var targetNames='';var targetIds='';var targetTypes='';var parameters=asi.getParameters(pickerId);if(!parameters){return;}
var pickedArray=parameters.pickedArray;for(var i=0;i<pickedArray.length;i++){targetIds+=pickedArray[i].objectId;targetNames+=pickedArray[i].displayName;targetTypes+=pickedArray[i].objectType;if(i<pickedArray.length-1){targetIds+=', ';targetTypes+=', ';targetNames+='; ';}}
targetNames+='';if(parameters.pickerTargetId&&getObject(parameters.pickerTargetId)){getObject(parameters.pickerTargetId).value=targetIds;try{getObject(parameters.pickerTargetId).onchange();}catch(e){};}
if(parameters.pickerTargetName&&getObject(parameters.pickerTargetName)){getObject(parameters.pickerTargetName).value=targetNames;try{getObject(parameters.pickerTargetName).onchange();}catch(e){}}
if(parameters.pickerTargetType&&getObject(parameters.pickerTargetType)){getObject(parameters.pickerTargetType).value=targetTypes;try{getObject(parameters.pickerTargetType).onchange();}catch(e){}}
getObject(pickerId,1).display='none';asi.clearCheckBoxes();}
asi.addToPicked=function(pickerId,row){var parameters=asi.getParameters(pickerId);var pickedArray=parameters.pickedArray;var pickedObj;var rowId=asi.getGridRowId(row);var isDuplicateId=function(){for(var i=0;i<pickedArray.length;i++){if(pickedArray[i].objectId==rowId.tokenAt(1)&&pickedArray[i].objectType==rowId.tokenAt(0))return true;}
return false;}
if(!isDuplicateId()){pickedObj=new asi.PickerObject(rowId.tokenAt(2),rowId.tokenAt(1),rowId.tokenAt(0),DEFAULT_ROLE,false);pickedArray.push(pickedObj);if(parameters.addCallbackFunction){eval(parameters.addCallbackFunction+"(pickedArray[pickedArray.length-1])");}
asi.appendGridRow(eval(parameters.renderRowFunction+"(pickedObj, parameters)"),getObject(pickerId+'_results').childNodes[0]);}
asi.clearCheckBoxes();asi.refreshResultList(pickerId);}
asi.removeFromPicked=function(pickerId,row){var parameters=asi.getParameters(pickerId);var pickedArray=parameters.pickedArray;var rowId=asi.getGridRowId(row);for(var i=0;i<pickedArray.length;i++){if(pickedArray[i].objectId==rowId.tokenAt(0)&&pickedArray[i].objectType==rowId.tokenAt(1)){if(parameters.removeCallbackFunction){eval(parameters.removeCallbackFunction+"(pickedArray[i])");}
pickedArray.splice(i,1);parameters.pickedArray=pickedArray;asi.removeGridRow(row);break;}}
asi.clearCheckBoxes();asi.refreshResultList(pickerId);}
asi.clearCheckBoxes=function(){if(getObject(asi.selectedTabId)){var box=getCheckboxInElement(getObject(asi.selectedTabId));if(box)
uncheckAll(document.getElementsByName(box.name));}}
asi.refreshResultList=function(pickerId,calledFromPageLoad){var parameters=asi.getParameters(pickerId);if(calledFromPageLoad==true&&parameters.pickedArray.length==0){return;}else if(calledFromPageLoad==true){for(var i=0;i<parameters.pickedArray.length;i++){asi.appendGridRow(eval(parameters.renderRowFunction+"(parameters.pickedArray[i], parameters)"),getObject(parameters.id+'_results').childNodes[0]);}}
setObjContents(parameters.id+'_counter',parameters.pickedArray.length);alternateRowClass(getObject(parameters.id+"_results").getElementsByTagName('TABLE')[0]);}
asi.attachClickToAdd=function(grid,pickerId){var isSinglePick=getObject(pickerId).className.indexOf('asiSinglePicker')!=-1;if(grid){var rows=grid.getElementsByTagName('TR');for(var j=0;j<rows.length;j++){row=rows[j];if(asi.canBePicked(row)&&row.id!="expRow"){row.onclick=function(event){if(isC2(pickerId,'Picker')){eval(pickerId).pickItem(this,event);}else{asi.selectRow(this,event,true);if(isSinglePick)asi.getParameters(pickerId).pickedArray.length=0;asi.addToPicked(pickerId,this);if(grid.tagName=='TABLE'){alternateRowClass(grid);}else{alternateRowClass(grid.getElementsByTagName('TABLE')[0]);}}}
row.onmouseover=function(){this.className+=' hover';}
row.onmouseout=function(){this.className=this.className.replace(/ *hover/g,'');}}}
if(isSinglePick){try{autoClick(getElementsByClassName('asiGridTD0',grid)[0].parentNode)}catch(e){}}}}
asi.canBePicked=function(row){var reservedRowClasses=/asiGridNoResults|asiGridCustom|asiToolbar|asiGridControls/g;return!reservedRowClasses.test(row.className);}
asi.renderRow=function(item,parameters){var tr=document.createElement('TR');tr.onclick=function(event){asi.selectRow(this,event,true);}
tr.onmouseover=function(){this.className+=' hover';}
tr.onmouseout=function(){this.className=this.className.replace(' hover','');}
var td0=document.createElement('TD');{td0.className='asiGridTD0';var checkbox=document.createElement('INPUT');{checkbox.type='checkbox';checkbox.name='asiPickedList';checkbox.id='asiPickedList';checkbox.value=""+item.objectId+"/"+item.objectType+"/"+item.roleId;if(item.isProtected)checkbox.disabled=true;td0.appendChild(checkbox);}
tr.appendChild(td0);}
var td1=document.createElement('TD');{td1.className='asiGridTD1';var img=document.createElement('IMG');{var objType=item.objectType;if(parameters.pickType==asi.PICK_ASSIGNEES_AC||parameters.pickType==asi.PICK_ASSIGNEES||parameters.pickType=="assignees"){if(objType==0)
objType=asi.TYPES.USER;else if(objType==1)
objType=asi.TYPES.GROUP;else if(objType==2||objType==TYPE_ACTOR)
objType="Role";else if(objType==3)
objType="fromVariable";else if(objType==TYPE_EXPRESSION)
objType=TYPE_EXPRESSION;}
if(objType==asi.TYPES.USER){img.src=CONTEXT_PREFIX+'components/toolbar/img/userInfo.gif';img.alt=_ASI.Picker.clickToSeeUserDetails;}
else if(objType==asi.TYPES.GROUP){img.src=CONTEXT_PREFIX+'components/toolbar/img/groupInfo.gif';img.alt=_ASI.Picker.clickToSeeGroupDetails;}
else if(objType=="Role"){img.src=CONTEXT_PREFIX+'process/img/menu_role.gif';}
else if(objType==TYPE_EXPRESSION)
{img.src=CONTEXT_PREFIX+'components/expeditor/img/openEditor.gif';img.alt=item.displayName;}else if(objType=="fromVariable"){img.src=CONTEXT_PREFIX+'components/toolbar/img/gear.gif';img.alt=item.displayName;}
img.alt=item.displayName;if(objType=="Role"||objType=="fromVariable"||objType==TYPE_EXPRESSION)td1.appendChild(img);else if(objType==asi.TYPES.USER||objType==asi.TYPES.GROUP){var a=document.createElement('A');{a.title=_ASI.Picker.userInfo;a.href='#';var id=item.objectId;a.onclick=function(event){if(objType==TYPE_USER)doUserDetail(id);if(objType==TYPE_GROUP)doGroupDetail(id);if(event)event.cancelBubble=true;return false;}}
a.appendChild(img);td1.appendChild(a);}}
var spacer=document.createTextNode(" ");{td1.appendChild(spacer);}
if(objType==TYPE_EXPRESSION){var a=document.createElement('A');a.title=item.displayName;a.appendChild(document.createTextNode(item.displayName.truncate(15,true)));td1.appendChild(a);}
else td1.appendChild(document.createTextNode(item.displayName));tr.appendChild(td1);}
var tdDel=document.createElement('TD');{tdDel.className='asiRemoveGridItem';var a=document.createElement('A');{a.title='Remove';a.href='#';a.onclick=function(event){row=getContainerByTagName(this,'TR');row.onclick(event);asi.removeFromPicked(parameters.id,row);}
var span=document.createElement('SPAN');{span.appendChild(document.createTextNode('Remove'));a.appendChild(span);}
tdDel.appendChild(a);}
tr.appendChild(tdDel);}
return tr;}
asi.getPickerDOM=function(id){if(!id)
id='asiPicker';div=document.createElement('DIV');{div.className='asiPicker asiDialog';div.id=id;div.style.border='1px solid #333';}
return div;}
importStyleSheet('/components/css/asiTabs.css');asi.selectedTabId=null;asi.selectTab=function(tabObject,tabTargetId,tabNumber){var tabGroup=tabObject.parentNode;while(tabGroup&&tabGroup.tagName!='BODY'&&tabGroup.getElementsByTagName('INPUT').length==0&&(tabGroup.getElementsByTagName('LI').length==0||tabGroup.getElementsByTagName('LI')[0].parentNode.className.indexOf('Tabs')==-1)){tabGroup=tabGroup.parentNode;}
if(tabGroup){asi.resetTabs(tabGroup);if(tabGroup.getElementsByTagName('INPUT').length>0){items=tabGroup.getElementsByTagName('INPUT');tabs=items;}else{items=tabGroup.getElementsByTagName('LI');}
if(!tabNumber){var count=0;while(tabObject.tagName!='INPUT'&&tabObject.tagName!='LI'){tabObject=tabObject.parentNode;}
var iterator=tabObject;var tabs=new Array();for(var i=0;i<items.length;i++){if(items[i].parentNode.className.indexOf('Tabs')!=-1){tabs[tabs.length]=items[i];}}
while(iterator.nextSibling&&count<=tabs.length){iterator=iterator.nextSibling;if(iterator.nodeType==1&&(iterator.tagName=='INPUT'||iterator.tagName=='LI')&&iterator.className.indexOf('collapse')==-1){count++;}}
tabNumber=tabs.length-count;}
asi.selectedTabId=tabTargetId;for(var i=0;i<tabs.length;i++){var tab=tabs[i];if(i==tabNumber-1){tab.className+=' current';break;}}}
if(getObject(tabTargetId)){asi.hideTabViews(tabTargetId);var obj=$$(tabTargetId);obj.style.display='block';}}
asi.hideTabViews=function(tabTargetId){targets=getObject(tabTargetId).parentNode.childNodes;if(getObject(tabTargetId).parentNode.tagName=='LI'){targets=getElementsByClassName('asiTabTarget',getObject(tabTargetId).parentNode.parentNode);}
for(var i=0;i<targets.length;i++){if(targets[i].nodeType==1)targets[i].style.display='none';}}
asi.resetTabs=function(tabGroup){if(tabGroup.getElementsByTagName('INPUT').length>0){tabs=tabGroup.getElementsByTagName('INPUT');}else{tabs=tabGroup.getElementsByTagName('LI');}
for(var i=0;i<tabs.length;i++){tabs[i].className=tabs[i].className.replace(/ *current/g,'');}}
asi.switchTabAndGetContents=function(element,tabTargetId,url){asi.selectTab(element,tabTargetId);var targetTab=$('#'+tabTargetId);var loaded=Boolean.parseBoolean(targetTab.attr('loaded'));if(loaded!=true){try{LOADING.show();}catch(e){}
backgroundAction(url,tabTargetId,function(){targetTab.attr('loaded',true);});}}
asi.toggleCollapse=function(object,bubbleLevels){if(object.className==""){object.className=' collapsed';if(object.parentNode&&bubbleLevels&&bubbleLevels>0){asi.toggleCollapse(object.parentNode,bubbleLevels-1);}}else{if(object.className.indexOf('collapsed')==-1){asi.collapse(object,bubbleLevels);}else{asi.uncollapse(object,bubbleLevels);}}}
asi.collapse=function(object,bubbleLevels){object.className+=' collapsed';if(object.parentNode&&bubbleLevels&&bubbleLevels>0){asi.collapse(object.parentNode,bubbleLevels-1);}}
asi.uncollapse=function(object,bubbleLevels){object.className=object.className.replace(' collapsed','');if(object.parentNode&&bubbleLevels&&bubbleLevels>0){asi.uncollapse(object.parentNode,bubbleLevels-1);}}
importStyleSheet('/components/css/asiGrid.css');asi.Grid=function(id){ASI_LOG.warn('asi.Grid has been deprecated for over a year.',true);this.id=id;this.rowIds=new Array();this.rows=new Array();this.getRowById=function(id,index){return this.rows[this.getRowIndex(id,index)];}
this.addRow=function(TR){var rowId=asi.getGridRowId(TR);if(!this.isDuplicateId(rowId)){this.rowIds.push(rowId);this.rows.push(TR);}}
this.removeRowById=function(id,index){this.removeRow(this.getRowIndex(id,index));}
this.removeRow=function(index){this.rowIds.splice(index,1);this.rows.splice(index,1);}
this.getRowIndex=function(id,index){for(var i=0;i<this.rowIds.length;i++){if(this.rowIds[i].tokenAt(index)==id)return i;}
return-1;}
this.isDuplicateId=function(id,index){for(var i=0;i<this.rowIds.length;i++){if(this.rowIds[i].tokenAt(index)==id)return true;}
return false;}
this.containerDOM=asi.getGridDOM(this.id);this.DOM=function(){gridTable=this.containerDOM.getElementsByTagName('TABLE')[0];for(var i=0;i<this.rows.length;i++){asi.appendGridRow(this.rows[i],gridTable);}
return gridTable;}}
asi.getGridDOM=function(id){ASI_LOG.warn('asi.Grid has been deprecated for over a year. ',true);var table=document.createElement('TABLE');{table.id="asi_grid_"+id;table.className='asiGrid';table.cellspacing=0;var tbody=document.createElement('TBODY');{table.appendChild(tbody);}}
return table;}
asi.getGridTR=function(rowObject){ASI_LOG.warn('asi.Grid has been deprecated for over a year. ',true);if(typeof rowObject=='object'&&rowObject.length){var tr=document.createElement('TR');for(var i=0;i<rowObject.length;i++){var td=document.createElement('TD');{td.className='asiGridTD'+i;if(rowObject[i].tagName){td.appendChild(rowObject[i]);}else{td.innerHTML=rowObject[i];}
tr.appendChild(td);}}
return tr;}
if(rowObject.self)return rowObject.self;}
asi.prependGridRow=function(TR,targetTable){ASI_LOG.warn('asi.Grid has been deprecated for over a year. ',true);if(TR.tagName!='TR')return false;if(targetTable.tagName!='TABLE')return false;if(getElementsByClassName('asiGridNoResults',targetTable).length>0)removeElement(getElementsByClassName('asiGridNoResults',targetTable)[0]);var rows=getNodeElements(targetTable.getElementsByTagName('TBODY')[0].childNodes)
if(rows.length==0)
targetTable.getElementsByTagName('TBODY')[0].appendChild(TR);else
targetTable.getElementsByTagName('TBODY')[0].insertBefore(TR,rows[0]);}
asi.appendGridRow=function(TR,targetTable){ASI_LOG.warn('asi.Grid has been deprecated for over a year. ',true);if(TR.tagName!='TR')return false;if(targetTable.tagName!='TABLE')return false;if(getElementsByClassName('asiGridNoResults',targetTable).length>0)removeElement(getElementsByClassName('asiGridNoResults',targetTable)[0]);targetTable.getElementsByTagName('TBODY')[0].appendChild(TR);}
asi.removeGridRow=function(object){ASI_LOG.warn('asi.Grid has been deprecated for over a year. ',true);var row=getContainerByTagName(object,'TR');row.parentNode.removeChild(row);}
asi.isDuplicateRow=function(id,table,index){ASI_LOG.warn('asi.Grid has been deprecated for over a year. ',true);var ids=asi.getGridIds(table);for(var i=0;i<ids.length;i++){if(index||index==0){var tokens=ids[i].split("/");if(tokens[index]==id)return true;}
if(ids[i]==id)return true;}
return false;}
asi.getGridRowId=function(TR,index){ASI_LOG.warn('asi.Grid has been deprecated for over a year. ',true);var checkboxes=getInputsByType('checkbox',TR);var chkValue=checkboxes.length>0?checkboxes[0].value:null;if(index||index==0){var tokens=chkValue.split("/");return tokens[index];}
return chkValue;}
asi.getGridRowIcon=function(TR){ASI_LOG.warn('asi.Grid has been deprecated for over a year. ',true);return TR.getElementsByTagName('IMG')[0];}
asi.modifyRowValue=function(object,value,index){ASI_LOG.warn('asi.Grid has been deprecated for over a year. ',true);var values=getInputsByType('checkbox',getContainerByTagName(object,'TR'))[0].value.split("/");values[index]=value;getInputsByType('checkbox',getContainerByTagName(object,'TR'))[0].value=values.join("/");}
asi.getGridIds=function(gridMain){ASI_LOG.warn('asi.Grid has been deprecated for over a year. ',true);var gridData=new Array();var gridRows=gridMain.getElementsByTagName('TR');for(var i=0;i<gridRows.length;i++){if(asi.getGridRowId(gridRows[i]))gridData[gridData.length]=asi.getGridRowId(gridRows[i]);}
return gridData;}
asi.getCheckboxForGrid=function(){ASI_LOG.warn('asi.Grid has been deprecated for over a year. ',true);return"<input type=\"checkbox\" value=\""+StringSecurityUtils.encodeHtml(joinArgs(arguments,'/'))+"\"/>";}
asi.getUserForGrid=function(id,displayName,type,hasIcon){ASI_LOG.warn('asi.Grid has been deprecated for over a year. ',true);var out="";if(hasIcon&&(type==asi.TYPES.USER||type==asi.TYPES.GROUP)){out+="<img src=\""+CONTEXT_PREFIX+"personalization/img/";out+=(type==asi.TYPES.USER)?"menu_user.gif":"menu_group.gif";out+="\" alt=\"Icon\">";}
out+="<a href=\"#\" onclick=\"";out+=(type==asi.TYPES.USER)?"doUserDetail('":"doGroupDetail('";out+=StringSecurityUtils.encodeHtml(id);out+="');\">";out+=StringSecurityUtils.encodeHtml(displayName);out+="</a>"
return out;}
asi.getRadioForGrid=function(property,value,isChecked){ASI_LOG.warn('asi.Grid has been deprecated for over a year. ',true);var out="<input type=\"radio\" name=\""+StringSecurityUtils.encodeHtml(property)+"\" value=\""+StringSecurityUtils.encodeHtml(value)+"\"";if(isChecked)out+=" checked=\"true\"";if(arguments[3])out+=arguments[3];out+=" />";return out;}
asi.getDeleteForGrid=function(isProtected){ASI_LOG.warn('asi.Grid has been deprecated for over a year. ',true);return isProtected?"&nbsp;":"<a href=\"#\" onclick=\"asi.removeGridRow(this); return false;\" ><img class=\"imgOnly\" src=\""+CONTEXT_PREFIX+"components/img/delete.gif\" alt=\"Remove\" align=\"absmiddle\"></a>";}
asi.GRID_DEFAULT_VIEW=0;asi.GRID_DETAIL_VIEW=1;asi.GRID_LIST_VIEW=2;asi.changeGridViewType=function(object,viewType){var container=object;while(container&&container.tagName!='BODY'&&container.getElementsByTagName('TABLE').length==0){container=container.parentNode;}
if(container){switch(viewType){case asi.GRID_DEFAULT_VIEW:container.className='';break;case asi.GRID_DETAIL_VIEW:container.className='asiGridDetailView';break;case asi.GRID_LIST_VIEW:container.className='asiGridListView';break;default:container.className='';}}}
asi.stripeTable=function(id){ASI_LOG.warn('asi.stripeTable has been deprecated for over a year. ',true);var even=false;var evenColor=arguments[1]?arguments[1]:"transparent";var oddColor=arguments[2]?arguments[2]:"#daf0f9";var table=getObject(id);if(!table){return;}
var tbodies=table.getElementsByTagName("tbody");for(var h=0;h<tbodies.length;h++){var trs=tbodies[h].getElementsByTagName("tr");for(var i=0;i<trs.length;i++){trs[i].style.backgroundColor=(i%2==0)?evenColor:oddColor;}}}
asi.selectRow=function(object,evt,isExclusive){ASI_LOG.warn('asi.selectRow has been deprecated for over a year. ',true);evt=(evt)?evt:(event)?event:'';if(evt){target=(evt.target)?evt.target:event.srcElement;if(target.tagName=='A'&&target.parentNode.className!='asiRemoveGridItem'){return;}}else{target=null;}
var checkbox=getCheckboxInElement(object);isChecked=checkbox.checked;checkboxContainer=checkbox.form?checkbox.form:getContainerByTagName(checkbox,'TABLE');if(isExclusive)asi.clearRows(checkboxContainer);if(target&&target.tagName=='INPUT'){isChecked=!isChecked;}
if(isChecked){object.className=object.className.replace(' selected','');}else{object.className+=' selected';}
checkbox.checked=!isChecked;}
asi.clearRows=function(container){ASI_LOG.warn('asi.clearRows has been deprecated for over a year. ',true);opts=container.getElementsByTagName('LI');if(opts.length==0||container.tagName=='TABLE')opts=container.getElementsByTagName('TR');for(var i=0;i<opts.length;i++){opts[i].className=opts[i].className.replace(/(^|[ ]*)selected/g,'');fields=opts[i].getElementsByTagName('INPUT');for(j=0;j<fields.length;j++){fields[j].checked=false;}}}
asi.markEven=function(id){ASI_LOG.warn('asi.markEven has been deprecated for over a year. ',true);var even=false;var table=getObject(id);if(!table){return;}
var tbodies=table.getElementsByTagName("tbody");for(var h=0;h<tbodies.length;h++){var trs=tbodies[h].getElementsByTagName("tr");for(var i=0;i<trs.length;i++){var tr=trs[i];if(tr.className.indexOf('even')==-1&&(i%2==0))tr.className+=' even';}}}
asi.prompt=function(title,onOK,type,label,property,validate,required,instructions,value,maxlength){if(arguments[2]instanceof Array)getPrompt.apply(this,arguments);else getPrompt(title,onOK,sliceArgs(arguments,2));function getPrompt(){var numEntries=arguments.length-2;var URL='/components/dialogs/prompt.do?$e=asiDialog&numEntries='+numEntries;URL+='&title='+arguments[0];URL+='&onOK='+arguments[1];for(var i=0;i<numEntries;i++){var entry=arguments[i+2];if(entry.length<3)throw new Error('Missing arguments: required arguments are type, title, label, property and onOK');URL+='&type='+entry[0];URL+='&label='+entry[1];URL+='&property='+entry[2];if(entry[3])URL+='&validate='+entry[3];URL+='&required='+entry[4]||false;if(entry[5])URL+='&instructions='+entry[5];if(entry[6])URL+='&value='+entry[6];if(entry[7])URL+='&maxlength='+entry[7];}
backgroundPage(URL);}}
asi.alert=function(text){asi.initializeAlert.apply(this,arguments);getObject('asiAlertCancel',1).display='none';getObject('asiAlertOK').focus();}
asi.confirm=function(text,onAccept,onCancel){asi.initializeAlert.apply(this,arguments);getObject('asiAlertCancel',1).display='inline';getObject('asiAlertOK').focus();if(text.match(/\?$/)){getObject('asiAlertOK').value=_AE.yes;getObject('asiAlertCancel').value=_AE.no;}}
asi.initializeAlert=function(text){var alertBox=getObject('asiAlert')
if(alertBox)alertBox.parentNode.removeChild(alertBox);getASIContainer().appendChild(asi.getAlertDOM(arguments));if(window.alertFilter)alertFilter.remove();window.alertFilter=new Filter(null,null,5000);centerInViewport(getObject('asiAlert'));getObject('asiAlert').style.display='block';getObject('asiAlertText').innerHTML=text;}
asi.getAlertDOM=function(alertArgs){div=document.createElement('DIV');{div.className='asiDialog';div.id='asiAlert';h1=document.createElement('H1');{h1.appendChild(document.createTextNode(APP_NAME));div.appendChild(h1);}
p=document.createElement('P');{p.id='asiAlertText';div.appendChild(p);}
p=document.createElement('P');{input=document.createElement('INPUT');{input.type='button';input.value=_AE.ok;input.className='iBlueButton';input.id='asiAlertOK';input.onclick=function(){var thisDOM=getObject('asiAlert');thisDOM.parentNode.removeChild(thisDOM);window.alertFilter.remove();if(!alertArgs)return true;if(!alertArgs.length||alertArgs.length<2)return true;if(alertArgs[1]&&typeof alertArgs[1]=='function'){if(alertArgs[2]&&typeof alertArgs[2]=='object'&&alertArgs[2].length){alertArgs[1].apply(this,alertArgs[2]);}else{alertArgs[1].call(this);}}else if(alertArgs[1]&&typeof alertArgs[1]=='string'){eval(alertArgs[1]);}}
p.appendChild(input);}
input=document.createElement('INPUT');{input.type='button';input.value=_AE.cancel;input.className="iBlueButton";input.id='asiAlertCancel';input.onclick=function(){var thisDOM=getObject('asiAlert');thisDOM.parentNode.removeChild(thisDOM);window.alertFilter.remove();if(!alertArgs.length||alertArgs.length<2)return false;if(alertArgs[2]&&typeof alertArgs[2]=='function'){if(alertArgs[3]&&typeof alertArgs[3]=='object'&&alertArgs[3].length){alertArgs[2].apply(this,alertArgs[3]);}else{alertArgs[2].call(this);}}else if(alertArgs[3]&&typeof alertArgs[3]=='function'){if(alertArgs[4]&&typeof alertArgs[4]=='object'&&alertArgs[4].length){alertArgs[3].apply(this,alertArgs[4]);}else{alertArgs[3].call(this);}}else if(alertArgs[2]&&typeof alertArgs[2]=='string'){eval(alertArgs[2]);}else if(alertArgs[3]&&typeof alertArgs[3]=='string'){eval(alertArgs[3]);}}
p.appendChild(input);}
div.appendChild(p);}}
return div;}
importStyleSheet("/components/css/asiExpressionEditor.css");var AEE;function ExpressionEditor(targetField,pvArray,acpArray,isTask,isPartial,acpGeneratedArray,config){AEE=this;this.targetField=targetField;this.expTextArea=null;this.isPartial=isPartial||false;this.varPalette=null;this.type='ExpressionEditor';this.component=Component;this.component(EXPRESSIONEDITOR.EDITORID,this.stylesheets,this.type);var _self=this;this.acpGeneratedArray=acpGeneratedArray;_varCategories=[];this.config=config=config||{showProcessModelProperties:true,showProcessProperties:true};this.config.processVariables=pvArray||config.processVariables;this.acpArray=acpArray||config.acpArray;function addDefaultVariables(){if(isTask||(config.showTaskProperties)){var tps=['id','uuid','name','description','display','priority','owner','assignees','starttime','deadline','instanceindex'];var tpsDisplayNames=[_ASI.ExpressionEditor.id,_ASI.ExpressionEditor.uuid,_ASI.ExpressionEditor.name,_ASI.ExpressionEditor.description,_ASI.ExpressionEditor.display,_ASI.ExpressionEditor.priority,_ASI.ExpressionEditor.owner,_ASI.ExpressionEditor.assignees,_ASI.ExpressionEditor.start_time,_ASI.ExpressionEditor.deadline,_ASI.ExpressionEditor.instanceindex];_self.addVariables(_ASI.ExpressionEditor.taskProperties,'tp',tps,tpsDisplayNames);}
if(config.isRule){var catHTML='<a onclick="toggleNode(this)" title="'+_ASI.ExpressionEditor.ruleInputs+'">'+_ASI.ExpressionEditor.ruleInputs+'</a>';var categoryHTML=[catHTML];if(config.ruleInputs&&config.ruleInputs.length!=0){for(var i=0;i<config.ruleInputs.length;i++){if(config.ruleInputs[i].key){var nodeHTML=EXPRESSIONEDITOR.createPaletteNodeHTML(config.ruleInputs[i].key,config.ruleInputs[i].key,'ri');categoryHTML.push(nodeHTML);}}
if(categoryHTML.length==1){categoryHTML[1]=_ASI.ExpressionEditor.noRuleInputs;}}else{categoryHTML[1]=_ASI.ExpressionEditor.noRuleInputs;}
_varCategories.push(categoryHTML);}
if(config.showProcessProperties){var pps=['id','name','priority','initiator','designer','starttime','deadline'];var ppsDisplayNames=[_ASI.ExpressionEditor.id,_ASI.ExpressionEditor.name,_ASI.ExpressionEditor.priority,_ASI.ExpressionEditor.initiator,_ASI.ExpressionEditor.designer,_ASI.ExpressionEditor.startTime,_ASI.ExpressionEditor.deadline];_self.addVariables(_ASI.ExpressionEditor.processProperties,'pp',pps,ppsDisplayNames);}
if(config.showProcessModelProperties){var pmps=['id','name','description','version','creator'];var pmpsDisplayNames=[_ASI.ExpressionEditor.id,_ASI.ExpressionEditor.name,_ASI.ExpressionEditor.description,_ASI.ExpressionEditor.version,_ASI.ExpressionEditor.creator];_self.addVariables(_ASI.ExpressionEditor.processModelProperties,'pm',pmps,pmpsDisplayNames);}
if(config.showTaskMetrics){_self.addMetrics(_ASI.ExpressionEditor.taskMetrics,EXPRESSIONEDITOR.metrics.task);}
if(config.showProcessMetrics){_self.addMetrics(_ASI.ExpressionEditor.processMetrics,EXPRESSIONEDITOR.metrics.process);}
if(config.showProcessModelMetrics){_self.addMetrics(_ASI.ExpressionEditor.processModelMetrics,EXPRESSIONEDITOR.metrics.processModel);}}
this.getSaveRuleLink=function(){if($$('saveRule')){if(config.isCreating!=true){if($$('portalContent')){clearAllErrors($$('portalContent'));}
ensureJSON(function(){window.server.content.hasRuleEditingPrivileges(function(canEdit){if(canEdit==true){$$('saveRule').innerHTML='<a href="#" onclick="getSynchronizer(\'rule_save_as\');return false;" >'+_ASI.ExpressionEditor.saveAsNewRule+'</a>';}
else{$$('saveRule').innerHTML='&nbsp;';}});});}
else{$$('saveRule').innerHTML='&nbsp;'}}}
this.getNewEditorProperties=function(){this.getSaveRuleLink();this.renderRuleHierarchy();}
this.renderRuleHierarchy=function(){HIERARCHY.refreshServerHierarchy('rules_expression_editor_hierarchy');}
this.repopulateVariablePalette=function(){this.varPalette.DOM.innerHTML='';for(var i=0;i<_varCategories.length;i++){this.varPalette.populate(_varCategories[i]);}
this.expandFirstAvailableNode();}
this.expandFirstAvailableNode=function(){var expanded=false;if(ExpressionEditor.complexTypeHierarchy){expanded=ExpressionEditor.complexTypeHierarchy.expandFirstNode();}
if(!expanded){this.varPalette.toggleNode(0);}}
this.addMetrics=function(title,metrics){title=StringSecurityUtils.encodeHtml(title);var categoryHTML=['<a onclick="toggleNode(this)" title="'+title+'">'+title+'</a>'];for(var i=0;i<metrics.length;i++){var nodeHTML=EXPRESSIONEDITOR.createPaletteNodeHTML(metrics[i].name,metrics[i].name,'func',metrics[i].expression+'()')
categoryHTML.push(nodeHTML);}
_varCategories.push(categoryHTML);}
this.addVariables=function(title,namespace,members,membersDisplayNames,emptyMessage){title=StringSecurityUtils.encodeHtml(title);var categoryHTML=['<a onclick="toggleNode(this)" title="'+title+'">'+title+'</a>'];if(members&&members.length!=0&&members[0].trim().length>0){for(var i=0;i<members.length;i++){var nodeHTML=EXPRESSIONEDITOR.createPaletteNodeHTML(members[i],membersDisplayNames[i],namespace);categoryHTML.push(nodeHTML);}}else{categoryHTML[1]=emptyMessage||_ASI.ExpressionEditor.msgNoVariables.supplant(title);}
_varCategories.push(categoryHTML);}
this.insertIntoExpression=function(value,isRegularFunction){if(this.range){insertAtCursor(this.range,value);if(isRegularFunction){moveCursor(this.expTextArea,-1);}
this.updateRange();}else{var oldValue=this.expTextArea.value;var s=oldValue.substring(0,this.startPos);s+=value;s+=oldValue.substring(this.endPos,oldValue.length);this.expTextArea.value=s;}}
this.insertRuleIntoExpression=function(value){if(!value.validate('EE identifier')){value='\''+value+'\'()';}else{value=value+'()';}
this.insertIntoExpression(value,true);}
this.insertConstantIntoExpression=function(value){if(!value.validate('EE identifier')){value='\'cons!'+value+'\'';}else{value='cons!'+value;}
this.insertIntoExpression(value);}
this.updateRange=function(){var sel=document.selection;if(sel){this.range=sel.createRange();if(this.range.parentElement()!=this.expTextArea){this.expTextArea.focus();}}else{this.startPos=this.expTextArea.selectionStart;this.endPos=this.expTextArea.selectionEnd;}}
this.showFunc=function(funcName,categoryName){var self=this;if(categoryName&&!EXPRESSION_EDITOR.functionsMetadata.definedCategories.contains(categoryName)){ensureJSON(function(){server.clientComponent.getLocalizedExpressionFunctions(function(response){if(response===null){return;}
for(var i=0;i<response.functions.length;i++){EXPRESSION_EDITOR.functionsMetadata[response.functions[i].name]=response.functions[i];}
EXPRESSION_EDITOR.functionsMetadata.definedCategories.push(categoryName);self.showFunc(funcName);},categoryName);});return;}
var data=EXPRESSION_EDITOR.functionsMetadata[funcName];var infoArea=$("#function_metadata").show().get(0);$("#function_metadata .details").hide();$("#rules_preview").hide();if(data){$(".name",infoArea).html(funcName+"()");if(Util.isNull(data.externalDescription)){$(".description",infoArea).html(data.description);}else{$(".description",infoArea).html(_ASI.ExpressionEditor.progress);backgroundAction(rewriteURL(data.externalDescription),"function_metadata_description",function(){data.externalDescription=null;data.description=$$("function_metadata_description").innerHTML;});}
if(data.outputType){var typeIds_=[];typeIds_.push(data.outputType);if(data.functionParameters){for(var i=0;i<data.functionParameters.length;i++){typeIds_.push(data.functionParameters[i].type);}}
DatatypeUtils.populateTypes(typeIds_,function(){if(arguments[0]){asi.alert(_ASI.ExpressionEditor.theFunctionReferences);}else{$("#function_metadata .details").show();$(".functionName",infoArea).html(funcName);$("#function_metadata .clone").remove();if(data.functionParameters){var archetype=$("#function_metadata .cloneable").get(0);var parameters="( ";for(var i=0;i<data.functionParameters.length;i++){var isLast=(i+1==data.functionParameters.length);var param=data.functionParameters[i];if(!param.required){parameters+="[";}
parameters+=param.name;if(data.unlimitedParameters&&isLast){parameters+="1, "+param.name+"2, ...";}
if(!isLast){parameters+=", ";}
if(!param.required){parameters+="]";}
var clone=archetype.clone();var name=param.name;if(param.required){name+="*".tag('a',{title:_ASI.ExpressionEditor.required});}
$("label",clone).html(name);var description="( {0} ) {1}";var singleType=Constants.TYPES[param.type].isList?Constants.TYPES[param.type].singleType:param.type;var type=Constants.TYPES[singleType].name.tag('a',{title:Constants.TYPES[singleType].description});if(Constants.TYPES[param.type].isList){type+=" "+_ASI.ExpressionEditor.anArray.tag('a',{title:_ASI.ExpressionEditor.AnArrayIsASetOfObjec});}
description=description.supplant(type,param.description);$("span",clone).html(description);}
parameters+=" )";$(".parameters",infoArea).html(parameters);}else{$(".parameters",infoArea).html("()");}
var singleOutputType=Constants.TYPES[data.outputType].isList?Constants.TYPES[data.outputType].singleType:data.outputType;var returns=Constants.TYPES[singleOutputType].name.tag('a',{title:Constants.TYPES[singleOutputType].description});if(Constants.TYPES[data.outputType].isList){returns+=" "+_ASI.ExpressionEditor.anArray.tag('a',{title:_ASI.ExpressionEditor.AnArrayIsASetOfObjec});}
$(".returns > span",infoArea).html(returns);}});}}else{$(".name",infoArea).html("");$(".description",infoArea).html(_ASI.ExpressionEditor.clickOnAFunctionToSe);}}
this.refreshEditor=function(){var defaultValue="";this.expTextArea=$$("expTextArea");if(this.targetField){defaultValue=this.targetField.value;}
if((!this.isPartial&&defaultValue&&defaultValue!=''&&defaultValue.charAt(0)!='=')&&(window.IS_MODELER||(config.isString))){defaultValue='"'+defaultValue.replace(/"/g,'""')+'"';}
this.expTextArea.value=defaultValue;if(!config.hideDataTab){if(!this.refreshEditor.complexTypeHierarchy){this.refreshEditor.complexTypeHierarchy=$("#complexTypeHierarchy");}
ExpressionEditor.complexTypeHierarchy.clear();if((config.isRule||config.hidePvs)){this.refreshEditor.complexTypeHierarchy.hide();}else{ExpressionEditor.complexTypeHierarchy.addToTree({variables:config.processVariables,rootName:_ASI.ExpressionEditor.processVariables,prefix:"pv!",labelStyle:"processVariable",rootLabelStyle:"topLabel"});this.refreshEditor.complexTypeHierarchy.show();}
if(this.acpArray&&this.acpArray[0]!=""){ExpressionEditor.complexTypeHierarchy.addToTree({variables:this.acpArray,rootName:_ASI.ExpressionEditor.ACPs,prefix:"ac!",labelStyle:"activityClassParameter",rootLabelStyle:"topLabel"});this.refreshEditor.complexTypeHierarchy.show();}
this.varPalette=new Hierarchy('varPalette');this.repopulateVariablePalette();isTask?showObjectBlock('parseWarning'):hideObject('parseWarning');}
this.saveRule=$$('saveRule');this.showFunc('welcome');return $$(this.id);}
this.warnIfItemsPresent=function(){var pickedArray;if(config.picker){pickedArray=config.picker.getDescriptorsArray();if(pickedArray.length>0&&pickedArray[0][DESCRIPTOR_TYPE]!=TYPE_EXPRESSION){EXPRESSION_EDITOR.showInformativeMessageBar(_ASI.ExpressionEditor.addingAnExpression);}else{EXPRESSION_EDITOR.hideInformativeMessageBar();}}}
this.openEditor=function(){AEE=this;AEE.getNewEditorProperties();config.useCache=!Util.isNull(config.useCache)?config.useCache:true;config.callback=function(){AEE.DOM.style.display='';AEE.getNewEditorProperties();if(config.picker&&!config.picker.canHaveExpressionsAndValues){AEE.warnIfItemsPresent();}
centerInViewport(AEE.DOM);try{AEE.expTextArea.focus();AEE.updateRange();}catch(e){}}
if($$(this.id)&&config.useCache){this.DOM.style.display='';var asiContainer=getASIContainer();var childNodes=asiContainer.childNodes;if(childNodes[childNodes.length-1].id!=="asiExpressionEditor"){asiContainer.appendChild(this.DOM);}
this.refreshEditor();centerInViewport(this.DOM);this.expTextArea.focus();this.updateRange();AEE.warnIfItemsPresent();}else{backgroundAction('/process/viewFunctionCategories.do?$e=asiDialog&dialogId='+AEE.id,null,config);}}
this.getRulePreview=function(ruleId){var containerID='rules_preview';hideObject('function_metadata');var rulePage='/rules/previewRule.do?id='+ruleId+'&isInExpressionEditor=true';backgroundAction(rulePage,containerID);showObject(containerID);}
this.validateExp=function(){return EXPRESSIONEDITOR.lexer(this.expTextArea.value);}
this.closeEditor=function(element){this.DOM.style.display='none';this.callback();AEE=null;}
this.saveAndClose=function(element){if(!this.validateExp()){return null;}
var theExpression=this.expTextArea.value;if(!this.isPartial&&theExpression&&theExpression.charAt(0)!='='){theExpression='='.concat(theExpression);}else if(this.isPartial&&theExpression&&theExpression.charAt(0)=='='){theExpression=theExpression.substring(1,theExpression.length);}
this.targetField.value=theExpression;try{this.targetField.focus();}catch(e){}
try{$(this.targetField).change();}catch(e){}
this.closeEditor(element);}
this.callback=function(){}
config=config||{};addDefaultVariables();$('.expTextArea').keyup(function(e){e.cancelBubble=true;});}
EXPRESSIONEDITOR={EDITORID:"asiExpressionEditor",metrics:EXPRESSIONEDITOR_METRICS,exceptions:[],addOperatorButton:function(symbol,imageName,alt,isNewButtonSection,alternateOnClick){var toolbar=getObject("operatorToolbar");var buttonDOM=EXPRESSIONEDITOR.getToolbarButtonDOM(imageName,alt);buttonDOM.onclick=alternateOnClick||function(){AEE.insertIntoExpression(symbol)};if(isNewButtonSection){buttonDOM.style.marginLeft="10px";}
toolbar.appendChild(buttonDOM);},createPaletteNodeHTML:function(node,nodeName,nodeType,onClickExpr){var imageURL,onclick,onmouseover;if(nodeType=="func"||nodeType=="customType"){imageURL="components/expeditor/img/fx.gif";onmouseover="AEE.showFunc('"+node.escapeJS()+"')";onclick="AEE.insertIntoExpression('";onclick+=onClickExpr?onClickExpr.escapeJS():node.escapeJS()+"()";onclick+=(nodeType=="customType"||onClickExpr==undefined)?"', true)":"')";}else{imageURL="components/expeditor/img/var.gif";var insertText=onClickExpr?onClickExpr:this.encodeIdentifier(node,nodeType);onmouseover="AEE.showFunc('welcome')";onclick="AEE.insertIntoExpression('"+insertText.escapeJS()+"');";}
var shortName=nodeName.replace(/^.*\>/,"");var html=HIERARCHY.createNodeHTML(shortName,imageURL,onclick,onmouseover);return html;},encodeIdentifier:function(identifierName,type){var encoded=identifierName.replace(/&#39;/g,"''");var isFirstCharLetter=/[a-zA-Z]/.test(encoded.charAt(0));var needsQuoteWrapper=!/^[a-zA-Z0-9_\.@]+$/.test(encoded)||(!isFirstCharLetter);encoded="!"+encoded;encoded=type+encoded;if(needsQuoteWrapper){encoded="'"+encoded+"'";}
return encoded;},getEditorDOM:function(id){var div=document.createElement("DIV");div.className="asiExpressionEditor";div.id=id;hide(div);div=document.body.appendChild(div);return div;},getToolbarButtonDOM:function(imageName,alt){var toolbarAnchor=document.createElement('A');var toolbarImg=document.createElement('IMG');{toolbarImg.src=rewriteURL("components/expeditor/img/"+imageName+".gif");toolbarImg.alt=alt;toolbarImg.onmousedown=function(){this.style.borderStyle='inset';}
toolbarImg.onmouseout=function(){this.style.borderStyle='outset';}
toolbarImg.onmouseup=function(){this.style.borderStyle='outset';}}
toolbarAnchor.appendChild(toolbarImg);return(toolbarAnchor);},parser:function(valueStack,typeStack,lexemeTypes,inlineErrors){function parser01(runner){function parser01a(runner){var op=valueStack[runner];if((op=='='||op=='<>')&&(runner+1)<tokenCount)
return parser01a(parser02(runner+1));return runner;}
return parser01a(parser02(runner));}
function parser02(runner){function parser02a(runner){var op=valueStack[runner];if((op=='>'||op=='>=')&&(runner+1)<tokenCount)
return parser02a(parser03(runner+1));return runner;}
return parser02a(parser03(runner));}
function parser03(runner){function parser03a(runner){var op=valueStack[runner];if((op=='<'||op=='<=')&&(runner+1)<tokenCount)
return parser03a(parser1(runner+1));return runner;}
return parser03a(parser1(runner));}
function parser1(runner){function parser1a(runner){var op=valueStack[runner];if((op=='+'||op=='-'||op=='&')&&(runner+1)<tokenCount)
return parser1a(parser2(runner+1));return runner;}
return parser1a(parser2(runner));}
function parser2(runner){function parser2a(runner){var op=valueStack[runner];if((op=='*'||op=='/')&&(runner+1)<tokenCount)
return parser2a(parser3(runner+1));return runner;}
return parser2a(parser3(runner));}
function parser3(runner){function parser3a(runner){var op=valueStack[runner];if((op=='^'||op=='.')&&(runner+1)<tokenCount)
return parser3a(parser4(runner+1));return runner;}
return parser3a(parser4(runner));}
function parser4(runner){function parser4a(runner){var op=valueStack[runner];if(op=='-'&&(runner+1)<tokenCount)
return parser4a(parser5(runner+1));return runner;}
var op=valueStack[runner];var type=typeStack[runner];if(op=='-'&&(type==lexemeTypes.TOKEN)&&(runner+1<tokenCount))
return parser4a(parser5(runner+1));return parser5(runner);}
function parser5(runner){runner=parser6(runner);var op=valueStack[runner];if(op=='%')
return runner+1;return runner;}
function parser6(runner){var value=valueStack[runner];var type=typeStack[runner];if(value=='{'){if(!(valueStack.length>runner&&valueStack[runner+1]=='}')){runner=arraylit(runner);}else{runner+=2;}
if(valueStack[runner]=='[')
runner=indexlit(runner);return runner;}else if(value=='('){runner=parser01(runner+1);if(runner==tokenCount){exceptions.push(_ASI.ExpressionEditor.msgInvalidSubexpr);return tokenCount;}
if(valueStack[runner]!=')'){exceptions.push(_ASI.ExpressionEditor.msgMissingRightParen);return tokenCount;}
return runner+1;}else if(type==lexemeTypes.TOKEN){if(value=='.')
return runner+1;else{exceptions.push(_ASI.ExpressionEditor.msgMisplacedExtraOperator);return tokenCount;}}else if(type==lexemeTypes.STRING){return runner+1;}else if(type==lexemeTypes.IDENTIFIER){if((runner+1)<tokenCount){var ap=valueStack[runner+1];if(ap=='[')return index(runner+1);if(ap=='(')return func(runner+1);}
return runner+1;}else
return runner+1;}
function index(runner){return indexlit(runner);}
function func(runner){runner=funclit(runner);if(runner<tokenCount&&valueStack[runner]=='[')
runner=indexlit(runner);return runner;}
function indexlit(runner){var op=valueStack[runner];if(op==']')
return runner+1;if(op!='['&&op!=','){exceptions.push(_ASI.ExpressionEditor.msgInvalidIndexSeparator.supplant(op));return tokenCount;}
runner+=1;runner=parser01(runner);return indexlit(runner);}
function funclit(runner){var op=valueStack[runner];if(op==')')
return runner+1;if(op!='('&&op!=','){exceptions.push(_ASI.ExpressionEditor.msgInvalidParamSeparator.supplant(op));return tokenCount;}
runner+=1;if((op=='('&&valueStack[runner]==')'))
return runner+1;runner=parser01(runner);return funclit(runner);}
function arraylit(runner){var op=valueStack[runner];if(op=='}')
return runner+1;if(op!='{'&&op!=','){exceptions.push(_ASI.ExpressionEditor.msgInvalidArrayItemSeparator.supplant(op));return tokenCount;}
runner+=1;if(valueStack.length>(runner+2)){if(valueStack[runner+1]===':'&&typeStack[runner]in set(lexemeTypes.IDENTIFIER,lexemeTypes.FLOAT,lexemeTypes.INTEGER)){runner+=2;}}
runner=parser01(runner);return arraylit(runner);}
var runner=0;var tokenCount=valueStack.length;var exceptions=new Array;for(var i=0;i<tokenCount;i++)
{var currentItem=valueStack[i];if(currentItem instanceof Array)
valueStack[i]=currentItem[1];}
if(valueStack.length>2&&typeStack[0]==lexemeTypes.IDENTIFIER&&valueStack[1].search(':')!=-1&&typeStack[1]==lexemeTypes.TOKEN)
runner+=2;runner=parser01(runner);if(runner<tokenCount){exceptions.push(_ASI.ExpressionEditor.msgOpenEndedExpr);}
if(exceptions.length>0){this.exceptions.push(exceptions[0]);this.outputErrorMessages(inlineErrors);return false;}
else
return true;},lexer:function(expression,inlineErrors){var p=b=k=0;var valueStack=[];var typeStack=[];var exceptions=[];var tokens=[];var lexemeTypes=[];tokens[0]="(";tokens[1]=")";tokens[2]="[";tokens[3]="]";tokens[4]="{";tokens[5]="}";tokens[6]="+";tokens[7]="-";tokens[8]=".";tokens[9]="*";tokens[10]="/";tokens[11]="^";tokens[12]="%";tokens[13]="&";tokens[14]="<";tokens[15]="<=";tokens[16]=">";tokens[17]=">=";tokens[18]="=";tokens[19]="<>";tokens[20]=",";tokens[21]="~";tokens[22]=":";tokens[23]="+:";tokens[24]="-:";tokens[25]="*:";tokens[26]="/:";tokens[27]="^:";tokens[28]="&:";tokens[29]="~";tokens[30]=",";lexemeTypes.TOKEN='token';lexemeTypes.STRING='string';lexemeTypes.IDENTIFIER='identifier';lexemeTypes.FLOAT='float';lexemeTypes.INTEGER='integer';if(expression.indexOf('|')!=-1){this.exceptions.push(_ASI.ExpressionEditor.msgUnknownChar.supplant(expression.charAt(expression.indexOf('|'))));this.outputErrorMessages(inlineErrors);return false;}
if(expression.charAt(0)=="="){expression=expression.substring(1,expression.length);}
while(expression.length>0){expression=expression.trim();var c=this.lexerToken(expression,tokens);var type=lexemeTypes.TOKEN;while(true){if(c!=null){switch(c){case'(':p+=1;break;case')':p-=1;if(p<0)exceptions.push(_ASI.ExpressionEditor.msgUnmatchedCloseParen);break;case'[':k+=1;break;case']':k-=1;if(k<0)exceptions.push(_ASI.ExpressionEditor.msgUnmatchedCloseBracket);break;case'{':b+=1;break;case'}':b-=1;if(b<0)exceptions.push(_ASI.ExpressionEditor.msgUnmatchedCloseBrace);break;}
break;}
else c=this.lexerString(expression,exceptions);if(c!=null){type=lexemeTypes.STRING;break;}
else c=this.lexerIdentifier(expression,exceptions);if(c!=null){type=lexemeTypes.IDENTIFIER;break;}
else c=this.lexerFloat(expression);if(c!=null){type=lexemeTypes.FLOAT;break;}
else c=this.lexerInt(expression);if(c!=null){type=lexemeTypes.INTEGER;break;}
else{this.exceptions.push(_ASI.ExpressionEditor.msgUnknownChar.supplant(expression.charAt(0)));this.outputErrorMessages(inlineErrors);return false;}}
expression=expression.substring(c.toString().length,expression.length);if(type==lexemeTypes.STRING){c=c.slice(1,-1);c=c.replace(/""/g,'"');}
if(type==lexemeTypes.IDENTIFIER){if(c.indexOf("'")==0){c=c.slice(1,-1);c=c.replace(/''/g,"'");}
if(expression.charAt(0)=="("){if(c.charAt(0)=='@')c=c.substring(1,c.length);c=new Array("function",c);}
else{if(c.indexOf("!")==-1)c="pv!"+c;else c=c.replace(/^!/,"pv!");var bangLocation=c.indexOf('!');c=new Array(c.substring(0,bangLocation),c.substring(bangLocation+1,c.length));}}
valueStack.push(c);typeStack.push(type);}
if(p>0)exceptions.push(_ASI.ExpressionEditor.msgUnmatchedOpenParen);if(b>0)exceptions.push(_ASI.ExpressionEditor.msgUnmatchedOpenBrace);if(k>0)exceptions.push(_ASI.ExpressionEditor.msgUnmatchedOpenBracket);if(exceptions.length>0){this.exceptions.push(_ASI.ExpressionEditor.msgProblems+"<br/>"+exceptions.join("<br/>"));this.outputErrorMessages(inlineErrors);return false;}else{return this.parser(valueStack,typeStack,lexemeTypes,inlineErrors);}},outputErrorMessages:function(inlineErrors){if(!inlineErrors){asi.alert(this.exceptions[0]);this.exceptions=[];}},lexerToken:function(expression,tokens){if(expression.length>1){var c2=expression.substr(0,2);if(c2.search(/^\.\d/)==0)return null;for(var i=0;i<tokens.length;i++){if(c2==tokens[i])
return c2;}
switch(c2){case'><':c2='<>';return c2;case'=<':c2='>=';return c2;case'=<':c2='<=';return c2;case'**':c2='^';return c2;}}
var c=expression.substr(0,1);for(var i=0;i<tokens.length;i++){if(c==tokens[i])
return c;}
return null;},lexerString:function(expression,exceptions){var c=expression.substr(0,1);if(c=='"'){var i=1;while(true){i=expression.indexOf('"',i);if(i==-1){exceptions.push(_ASI.ExpressionEditor.msgUnmatchedDblQuote);return expression;}
if(expression.charAt(i+1)=='"')i+=2;else return expression.substring(0,i+1);}}
return null;},lexerIdentifier:function(expression,exceptions){var c=expression.substr(0,1);if(c.match(/\d/))return null;if(c=="'"){var i=1;while(true){i=expression.indexOf("'",i);if(i==-1){exceptions.push(_ASI.ExpressionEditor.msgUnmatchedSingleQuote);return expression;}
if(expression.charAt(i+1)=="'")i+=2;else return expression.substring(0,i+1);}}else if(expression.search(/^[!@]?[a-zA-Z\u00ac-\uFFFFFF]+/)==0){var tokenLocation=expression.search(/[\+\-\*\/\^%&\,<>=:~\(\)\[\]\{\}\.]/,1);if(tokenLocation==-1){return expression;}
else return expression.substring(0,tokenLocation);}
return null;},lexerFloat:function(expression){var c=expression.match(/^\d*\.\d+[\D]/);if(!c)c=expression.match(/^\d+\.\d*[\D]/);if(c)c=c.toString().slice(0,-1);else{c=expression.match(/^\d*\.\d+$/);if(!c)c=expression.match(/^\d+\.\d*$/);}
if(c)return c;return null;},lexerInt:function(expression){var c=expression.match(/^\d+[\D]/);if(c)c=c.toString().slice(0,-1);else c=expression.match(/^\d+$/);if(c)return c;return null;}}
ExpressionEditor.complexTypeHierarchy=function(){var containerId="complexTypeHierarchy";var tree;function getEnclosedTextPart(node){if(node.depth==1){return StringUtils.encloseIdentifierInQuotes(node.data.prefix+node.data.key);}else{return StringUtils.encloseIdentifierInQuotes(node.data.key);}}
function addNode(parent,config){var newNode=new YAHOO.widget.TextNode(StringSecurityUtils.encodeHtml(config.label),parent,false);newNode.data={instanceType:config.instanceType,prefix:config.prefix,style:config.style,key:config.label};var singleType=Constants.TYPES[config.instanceType].singleType;newNode.isLeaf=!(config.instanceType&&(Constants.TYPES[config.instanceType].isRecord||(Constants.TYPES[config.instanceType].isList&&Constants.TYPES[singleType].isRecord)));newNode.labelStyle=config.style;newNode.onLabelClick=function(node){var label=getEnclosedTextPart(node);while(node.depth>1){node=node.parent;label=getEnclosedTextPart(node)+'.'+label;}
AEE.insertIntoExpression(label,false);return false;};}
function loadNodeData(node){var instanceType=node.data.instanceType;if(node.depth==0||!instanceType){node.loadComplete();return;}
var multiple=Constants.TYPES[instanceType].isList;var type=multiple?Constants.TYPES[instanceType].singleType:instanceType;var fieldNames=Constants.TYPES[type].fieldNames;var fieldTypes=Constants.TYPES[type].fieldTypes;DatatypeUtils.populateTypes(fieldTypes,function(){for(var i=0;i<fieldNames.length;i++){var fieldInstanceType=multiple?Constants.TYPES[fieldTypes[i]].listType:fieldTypes[i];addNode(node,{label:fieldNames[i],instanceType:fieldInstanceType,prefix:node.data.prefix,style:node.data.style});}
node.loadComplete();});}
function initTree(){tree=new YAHOO.widget.TreeView(containerId);tree.setDynamicLoad(loadNodeData);tree.draw();}
return{clear:function(){tree=null;},expandFirstNode:function(){if(tree){var nodes=tree.getRoot().children;if(nodes.length>0){nodes[0].expand();return true;}}
return false;},addToTree:function(config){if(!tree){initTree();}
var root=tree.getRoot();var top=new YAHOO.widget.TextNode(config.rootName,root,false);top.labelStyle=config.rootLabelStyle;top.onLabelClick=function(){this.toggle();return false;}
var numOfVariables=config.variables.length;if(numOfVariables==0){var htmlNode=new YAHOO.widget.HTMLNode(_ASI.ExpressionEditor.msgNoVariables.supplant(config.rootName).tag('span',{className:config.rootLabelStyle}),top,false,true);htmlNode.isLeaf=true;htmlNode.labelStyle=config.rootLabelStyle;tree.draw();return;}
var types=[];for(var i=0,j=numOfVariables;i<j;i++){if(config.variables[i].type){types.push(config.variables[i].type);}}
DatatypeUtils.populateTypes(types,function(){for(var i=0,j=numOfVariables;i<j;i++){var instanceType=config.variables[i].multiple?Constants.TYPES[config.variables[i].type].listType:config.variables[i].type;addNode(top,{label:config.variables[i].key||config.variables[i],instanceType:instanceType,prefix:config.prefix,style:config.labelStyle});}
tree.draw();});}}}();function HTMLArea(id,expEdit,onblur,inDesigner,PVs,ACPNames,modelId,processId,expEditShowTPs,height,width){_editor_url=rewriteURL('/components/htmlarea/htmlarea/');var win_ie_ver=parseFloat(navigator.appVersion.split("MSIE")[1]);if(navigator.userAgent.indexOf('Mac')>=0){win_ie_ver=0;}
if(navigator.userAgent.indexOf('Windows CE')>=0){win_ie_ver=0;}
if(navigator.userAgent.indexOf('Opera')>=0){win_ie_ver=0;}
var isValidBrowser=false;if(win_ie_ver>=5.5){isValidBrowser=true;}
this.stylesheets=['/components/css/htmlArea.css'];this.className='htmlArea';this.type="HTMLArea";this.component=Component;this.component(id,this.stylesheets,this.type);init(id,inDesigner,PVs,ACPNames,modelId,processId,expEditShowTPs,height,width);function init(id,inDesigner,PVs,ACPNames,modelId,processId,expEditShowTPs,height,width){var config=new Object();config.inDesigner=inDesigner;config.PVs=PVs;config.ACPNames=ACPNames;config.processId=processId;config.modelId=modelId;config.expEditShowTPs=expEditShowTPs;config.width=(width?width+(isNaN(width)?"":"px"):"90%");config.height=(height?height+(isNaN(height)?"":"px"):"150px");config.bodyStyle='background-color: white;font-family: Arial,Verdana,Tahoma,Helvetica,Times; font-size:x-small; color: #333333;';config.debug=0;config.id=id;config.expEdit=expEdit;config.imgURL=rewriteURL('/components/htmlarea/htmlarea/images/');if(expEdit!=null)
{config.toolbar=[['fontname','fontsize','forecolor','bold','italic','underline','separator','OrderedList','UnOrderedList','separator','HorizontalRule','CreateLink','InsertImage','separator','custom1','custom2','custom3','custom4','custom5','custom6','custom7','custom8','custom9']];}
else
{config.toolbar=[['fontname','fontsize','forecolor','bold','italic','underline','separator','OrderedList','UnOrderedList','separator','HorizontalRule','CreateLink','InsertImage','separator','custom1','custom2','custom3','custom4','custom5','custom6','custom7','custom8']];}
getObject('expression_'+id).mode='';getObject('textArea_'+id).value=getObject('text_'+id).value;if(isValidBrowser){editor_generate('textArea_'+id,config);document.getElementById('toolbarbuttons_'+id).style.display="";}else{document.getElementById('notSupportedMessage'+id).style.display="";}}
function getExp(expValue){var str="<img class=\"expImg\" src=\""+rewriteURL('/components/htmlarea/htmlarea/images/openEditor.gif')+"\"";if(expValue.charAt(0)=='=')expValue=expValue.substr(1,expValue.length-1);str+=" alt=\""+expValue+"\" />";return str;}
function submitForm(id){var contents=getObject('_'+this.id+'_editor').document.body.createTextRange().htmlText;f.value=contents;}
this.getVal=function(f){return getExpressionFromHtmlareaString(f.value);}
this.saveData=function(f){var expValue=getExpressionFromHtmlareaString(f.value);asi.alert(HTMLEscape(expValue));}
this.updateValue=function(expField){if(expField.mode=='edit'){expField.source.alt=expField.value;expField.value='';expField.mode='';}else{var htmlArea=getObject('textArea_'+this.id);var sel=htmlArea.sel;var sHtml=sel.htmlText;if(sel.htmlText.match(/asiContainer/))
{sel.htmlText='';}
var expString=getExp(HTMLEscape(expField.value));if(htmlArea.sel!=null){sel.pasteHTML(expString);}
else htmlArea.value+=expString;expField.value='';}
editor_focus(getObject('_textArea_'+this.id+'_editor'));}
this.show=function(){if(getObject(this.id))return getObject(this.id);backgroundPage('/p_mini/htmlarea.do?$e=asiDialog');}}
document.write('<style type="text/css">\n');document.write('.asiToolbar img.btn { border: 1px solid #d5e5f3;  padding: 2px 4px;  white-space: nowrap;  margin: 2px 2px 2px 0px !important;}\n');document.write('.btnOver { width: 14px;  height: 14px;  padding: 1px !important;   margin: 2px 3px 3px 0!important;  border: 1px solid #999 !important;   border-left: 0px;   border-top: 0px; background-color:white;}\n');document.write('.btnDown { width: 14px;  height: 14px;  padding: 1px !important;   margin: 2px 3px 3px 0!important;  border: 1px solid #999 !important;   border-left: 0px;   border-top: 0px; }\n');document.write('.btnNA   { width: 14px; height: 14px; padding: 1px !important;   margin: 2px 3px 3px 0!important; border: 0px solid buttonface; filter: alpha(opacity=25); }\n');document.write('.cMenu     { background-color: threedface; color: menutext; cursor: Default; font-family: MS Sans Serif; font-size: 8pt; padding: 2px 12px 2px 16px; }');document.write('.cMenuOver { background-color: highlight; color: highlighttext; cursor: Default; font-family: MS Sans Serif; font-size: 8pt; padding: 2px 12px 2px 16px; }');document.write('.cMenuDivOuter { background-color: threedface; height: 9px }');document.write('.cMenuDivInner { margin: 0 4px 0 4px; border-width: 1ps; border-style: solid; border-color: threedshadow threedhighlight threedhighlight threedshadow; }');document.write('</style>\n');function editor_defaultConfig(objname){this.version="2.02"
this.width="auto";this.height="auto";this.bodyStyle='font-size: small;';this.imgURL=_editor_url+'images/';this.debug=0;this.replaceNextlines=0;this.plaintextInput=0;this.toolbar=[['fontname'],['fontsize'],['bold','italic','underline','separator'],['justifyleft','justifycenter','justifyright','separator'],['OrderedList','UnOrderedList','Outdent','Indent','separator'],['forecolor','backcolor','separator'],['HorizontalRule','Createlink','InsertImage','InsertTable','htmlmode','separator'],['InserDoc','separator'],['popupeditor','about']];this.fontnames={"Arial":"Arial, Helvetica, Sans-Serif","Courier New":"Courier New, Courier, Mono","Georgia":"Georgia, Times New Roman, Times, Serif","Helvetica":"Helvetica, Verdana, Arial","Tahoma":"Tahoma, Arial, Helvetica, Sans-Serif","Times New Roman":"Times New Roman, Times, Serif","Verdana":"Verdana, Arial, Helvetica, Sans-Serif","Impact":"Impact","Wingdings":"Wingdings"};this.fontsizes=new Array();this.fontsizes[_ASI.HtmlArea.small]="2";this.fontsizes[_ASI.HtmlArea.medium]="3";this.fontsizes[_ASI.HtmlArea.large]="5";this.fontstyles=[];this.btnList={"bold":['Bold',_ASI.HtmlArea.bold,'editor_action(this.id)','ed_format_bold.gif'],"italic":['Italic',_ASI.HtmlArea.italic,'editor_action(this.id)','ed_format_italic.gif'],"underline":['Underline',_ASI.HtmlArea.underline,'editor_action(this.id)','ed_format_underline.gif'],"strikethrough":['StrikeThrough',_ASI.HtmlArea.strikethrough,'editor_action(this.id)','ed_format_strike.gif'],"subscript":['SubScript',_ASI.HtmlArea.subscript,'editor_action(this.id)','ed_format_sub.gif'],"superscript":['SuperScript',_ASI.HtmlArea.superscript,'editor_action(this.id)','ed_format_sup.gif'],"justifyleft":['JustifyLeft',_ASI.HtmlArea.justifyLeft,'editor_action(this.id)','ed_align_left.gif'],"justifycenter":['JustifyCenter',_ASI.HtmlArea.justifyCenter,'editor_action(this.id)','ed_align_center.gif'],"justifyright":['JustifyRight',_ASI.HtmlArea.justifyRight,'editor_action(this.id)','ed_align_right.gif'],"orderedlist":['InsertOrderedList',_ASI.HtmlArea.orderedList,'editor_action(this.id)','ed_list_num.gif'],"unorderedlist":['InsertUnorderedList',_ASI.HtmlArea.bulletedList,'editor_action(this.id)','ed_list_bullet.gif'],"outdent":['Outdent',_ASI.HtmlArea.decreaseIndent,'editor_action(this.id)','ed_indent_less.gif'],"indent":['Indent',_ASI.HtmlArea.increaseIndent,'editor_action(this.id)','ed_indent_more.gif'],"forecolor":['ForeColor',_ASI.HtmlArea.fontColor,'editor_action(this.id)','ed_color_fg.gif'],"backcolor":['BackColor',_ASI.HtmlArea.backgroundColor,'editor_action(this.id)','ed_color_bg.gif'],"horizontalrule":['InsertHorizontalRule',_ASI.HtmlArea.horizontalRule,'editor_action(this.id)','ed_hr.gif'],"createlink":['CreateLink',_ASI.HtmlArea.insertWebLink,'editor_action(this.id)','link.gif'],"insertimage":['InsertImage',_ASI.HtmlArea.insertImage,'editor_action(this.id)','ed_image.gif'],"inserttable":['InsertTable',_ASI.HtmlArea.insertTable,'editor_action(this.id)','insert_table.gif'],"htmlmode":['HtmlMode',_ASI.HtmlArea.viewHTMLSource,'editor_setmode(\''+objname+'\')','ed_html.gif'],"popupeditor":['popupeditor',_ASI.HtmlArea.enlargeEditor,'editor_action(this.id)','fullscreen_maximize.gif'],"about":['about',_ASI.HtmlArea.aboutThisEditor,'editor_about(\''+objname+'\')','ed_about.gif'],"custom1":['custom1',_ASI.HtmlArea.insertDocumentFromCollaborationCenter,'editor_action(this.id)','insert_document.gif'],"custom2":['custom2',_ASI.HtmlArea.insertImageFromCollaborationCenter,'editor_action(this.id)','temp_collab_img.gif'],"custom3":['custom3',_ASI.HtmlArea.insertFolderFromCollaborationCenter,'editor_action(this.id)','folder.gif'],"custom4":['custom4',_ASI.HtmlArea.insertKnowledgeCenterFromCollaborationCenter,'editor_action(this.id)','insert_knowledgecenter.gif'],"custom5":['custom5',_ASI.HtmlArea.insertALinkToAnInternalPage,'editor_action(this.id)','sendlink.gif'],"custom6":['custom6',_ASI.HtmlArea.insertDiscussionForum,'editor_action(this.id)','insert_forum.gif'],"custom7":['custom7',_ASI.HtmlArea.insertGroup,'editor_action(this.id)','group.gif'],"custom8":['custom8',_ASI.HtmlArea.insertAUser,'editor_action(this.id)','user.gif'],"custom9":['custom9',_ASI.HtmlArea.insertAnExpression,'editor_action(this.id)','openEditor.gif'],"help":['showhelp',_ASI.HtmlArea.helpUsingEditor,'editor_action(this.id)','ed_help.gif']};}
function editor_generate(objname,userConfig,inDesigner){var config=new editor_defaultConfig(objname);if(userConfig){for(var thisName in userConfig){if(typeof userConfig[thisName]=='function')continue;if(userConfig[thisName]!=null){config[thisName]=userConfig[thisName];}}}
document.all[objname].config=config;var obj=document.all[objname];if(!config.width||config.width=="auto"){if(obj.style.width){config.width=obj.style.width;}
else if(obj.cols){config.width=(obj.cols*8)+22;}
else{config.width='100%';}}
if(!config.height||config.height=="auto"){if(obj.style.height){config.height=obj.style.height;}
else if(obj.rows){config.height=obj.rows*17}
else{config.height='200';}}
var toolbar='';var btnGroup,btnItem,aboutEditor;for(var btnGroup in config.toolbar){if(typeof config.toolbar[btnGroup]=='function')continue;if(config.toolbar[btnGroup].length==1&&config.toolbar[btnGroup][0].toLowerCase()=="linebreak"){toolbar+='<br clear="all">';continue;}
for(var btnItem in config.toolbar[btnGroup]){if(typeof config.toolbar[btnGroup][btnItem]=='function')continue;var btnName=config.toolbar[btnGroup][btnItem].toLowerCase();if(btnName=="fontname"){toolbar+='<select id="_'+objname+'_FontName" onChange="editor_action(this.id)" unselectable="on" style="font-size: 11px;border: 1px solid #a0b6d0; font:arial;width: 120px;margin: 0 2 2 2;">';for(var fontname in config.fontnames){if(typeof config.fontnames[fontname]=='function')continue;toolbar+='<option value="'+config.fontnames[fontname]+'">'+fontname+'</option>'}
toolbar+='</select>';continue;}
if(btnName=="fontsize"){toolbar+='<select id="_'+objname+'_FontSize" onChange="editor_action(this.id)" unselectable="on" style="font-size: 11px;border: 1px solid #a0b6d0; font:arial;width: 70px;margin: 0 2 2 2;">';for(var fontsize in config.fontsizes){if(typeof config.fontsizes[fontsize]=='function')continue;toolbar+='<option value="'+config.fontsizes[fontsize]+'">'+fontsize+'</option>'}
toolbar+='</select>\n';continue;}
if(btnName=="fontstyle"){toolbar+='<select id="_'+objname+'_FontStyle" onChange="editor_action(this.id)" unselectable="on" style="margin: 1 2 0 0; font-size: 12px;">';+'<option value="">Font Style</option>';for(var i in config.fontstyles){if(typeof config.fontstyles[i]=='function')continue;var fontstyle=config.fontstyles[i];toolbar+='<option value="'+fontstyle.className+'">'+fontstyle.name+'</option>'}
toolbar+='</select>';continue;}
if(btnName=="separator"){toolbar+='<span style="border: 1px inset; width: 1px; font-size: 14px; height: 14px; margin: 0 3 0 3"></span>';continue;}
var btnObj=config.btnList[btnName];if(btnName=='linebreak'){alert("htmlArea error: 'linebreak' must be in a subgroup by itself, not with other buttons.\n\nhtmlArea wysiwyg editor not created.");return;}
if(!btnObj){alert("htmlArea error: button '"+btnName+"' not found in button list when creating the wysiwyg editor for '"+objname+"'.\nPlease make sure you entered the button name correctly.\n\nhtmlArea wysiwyg editor not created.");return;}
var btnCmdID=btnObj[0];var btnTitle=btnObj[1];var btnOnClick=btnObj[2];var btnImage=btnObj[3];toolbar+='<a href="#" onclick="'+btnOnClick+'; return false;" id="_'+objname+'_'+btnCmdID+'" style="width: 14px;  height: 14px;  padding: 3px !important;   margin: 2px 3px 3px 0!important;  border: 1px solid #999 !important;   border-left: 0px;   border-top: 0px;" ><img alt="'+btnTitle+'"  src="'+config.imgURL+btnImage+'" unselectable="on"></a>';}}
var editor='';if(config.inDesigner){editor='<div class="asiToolbar" id="htmlAreaToolbarDesigner" style="width:'+config.width+';" unselectable="on">\n'
+toolbar
+'</div>\n'
+'<textarea ID="_'+objname+'_editor" style="width:'+config.width+'; height:'+config.height+'; margin-top: -1px; margin-bottom: -1px;" wrap=soft ></textarea>';}else{editor='<div class="asiToolbar" id="htmlAreaToolbarPortal" style="padding: 1 0 4px; margin-left: 0px; border: 1px solid #999; border-bottom: 0px;width:'+config.width+'" unselectable="on">\n'
+toolbar
+'</div>\n'
+'<textarea ID="_'+objname+'_editor" style="width:'+config.width+'; height:'+config.height+'; margin-top: -1px; margin-bottom: -1px;" wrap=soft ></textarea>';}
editor+='<div id="_'+objname+'_cMenu" style="position: absolute; visibility: hidden;"></div>';if(!config.debug){document.all[objname].style.display="none";}else{document.all[objname].style.display="";}
if(config.plaintextInput){var contents=document.all[objname].value;contents=contents.replace(/\r\n/g,'<br>');contents=contents.replace(/\n/g,'<br>');contents=contents.replace(/\r/g,'<br>');document.all[objname].value=contents;}
document.all[objname].insertAdjacentHTML('afterEnd',editor)
editor_setmode(objname,'init');for(var idx=0;idx<document.forms.length;idx++){var r=document.forms[idx].attachEvent('onsubmit',function(){editor_filterOutput(objname);});if(!r){alert("Error attaching event to form!");}}
return true;}
function editor_action(button_id){var BtnParts=Array();BtnParts=button_id.split("_");var objname=button_id.replace(/^_(.*)_[^_]*$/,'$1');var cmdID=BtnParts[BtnParts.length-1];var button_obj=document.all[button_id];var editor_obj=document.all["_"+objname+"_editor"];var config=document.all[objname].config;if(cmdID=='showhelp'){popup("/components/htmlarea/htmlarea/popups/editor_help.html",'EditorHelp');return;}
if(cmdID=='popupeditor'){popup("/components/htmlarea/htmlarea/popups/fullscreen.html?"+objname,'FullScreen','toolbar=no,location=no,directories=no,status=yes,menubar=no,scrollbars=yes,resizable=yes,width=640,height=480');return;}
if(editor_obj.tagName.toLowerCase()=='textarea'){return;}
var editdoc=editor_obj.contentWindow.document;editor_focus(editor_obj);var idx=button_obj.selectedIndex;var val=(idx!=null)?button_obj[idx].value:null;if(0){}
else if(cmdID=='custom1'){var myText=showModalDialog(_editor_url+"popups/insert_docs.jsp",editdoc,"dialogHeight:40;dialogWidth:37;resizable: no; help: no; status: no; scroll: no; ");if(myText){editor_insertHTML(objname,unescape(myText));}}
else if(cmdID=='custom2'){var myText=showModalDialog(_editor_url+"popups/insert_img.jsp",editdoc,"dialogHeight:40;dialogWidth:37;resizable: no; help: no; status: no; scroll: no; ");if(myText){editor_insertHTML(objname,unescape(myText));}}
else if(cmdID=='custom3'){var myText=showModalDialog(_editor_url+"popups/insert_fol.jsp",editdoc,"dialogHeight:38;dialogWidth:40;resizable: no; help: no; status: no; scroll: no; ");if(myText){editor_insertHTML(objname,unescape(myText));}}
else if(cmdID=='custom4'){var myText=showModalDialog(_editor_url+"popups/insert_kc.jsp",editdoc,"dialogHeight:38;dialogWidth:40;resizable: no; help: no; status: no; scroll: no; ");if(myText){editor_insertHTML(objname,unescape(myText));}}
else if(cmdID=='custom5'){var myText=showModalDialog(_editor_url+"popups/insert_internallink.jsp",editdoc,"dialogHeight:38;dialogWidth:40;resizable: no; help: no; status: no; scroll: no; ");if(myText){editor_insertHTML(objname,unescape(myText));}}
else if(cmdID=='custom6'){var myText=showModalDialog(_editor_url+"popups/insert_forum.jsp",editdoc,"dialogHeight:38;dialogWidth:40;resizable: no; help: no; status: no; scroll: no; ");if(myText){editor_insertHTML(objname,unescape(myText));}}
else if(cmdID=='custom7'){var myText=showModalDialog(_editor_url+"popups/insert_group.jsp",editdoc,"dialogHeight:38;dialogWidth:40;resizable: no; help: no; status: no; scroll: no; ");if(myText){editor_insertHTML(objname,unescape(myText));}}
else if(cmdID=='custom8'){var myText=showModalDialog(_editor_url+"popups/insert_user.jsp",editdoc,"dialogHeight:38;dialogWidth:40;resizable: no; help: no; status: no; scroll: no; ");if(myText){editor_insertHTML(objname,unescape(myText));}}
else if(cmdID=='custom9'){var expField=getObject('expression_'+document.all[objname].config.id);expField.value='';expField.mode='';var htmlArea=getObject(objname);htmlArea.sel=editor_getCursorSelection(objname);expField.name=objname;if(config.expEdit!=null){var expEditAsString=config.expEdit+'';if(expEditAsString!=='true'&&expEditAsString!=='false'){eval(expEditAsString.unescapeHTML());return;}}
var myExpEditor={};if(config.inDesigner){myExpEditor=new ExpressionEditor(expField,config.PVs,config.ACPNames,config.expEditShowTPs);}
else{myExpEditor=new ExpressionEditor(expField,null,null,null,true,null,window.expEditorConfig[config.id]);}
myExpEditor.openEditor();}
else if(cmdID=='FontName'&&val){editdoc.execCommand(cmdID,0,val);}
else if(cmdID=='FontSize'&&val){editdoc.execCommand(cmdID,0,val);}
else if(cmdID=='FontStyle'&&val){editdoc.execCommand('RemoveFormat');editdoc.execCommand('FontName',0,'636c6173734e616d6520706c616365686f6c646572');var fontArray=editdoc.all.tags("FONT");for(i=0;i<fontArray.length;i++){if(fontArray[i].face=='636c6173734e616d6520706c616365686f6c646572'){fontArray[i].face="";fontArray[i].className=val;fontArray[i].outerHTML=fontArray[i].outerHTML.replace(/face=['"]+/,"");}}
button_obj.selectedIndex=0;}
else if(cmdID=='ForeColor'||cmdID=='BackColor'){var oldcolor=_dec_to_rgb(editdoc.queryCommandValue(cmdID));var newcolor=showModalDialog(_editor_url+"popups/select_color.jsp",oldcolor,"dialogHeight: 12; dialogWidth: 15; resizable: no; help: no; status: no; scroll: no;");if(newcolor!=null){editdoc.execCommand(cmdID,false,"#"+newcolor);}}
else{if(cmdID.toLowerCase()=='subscript'&&editdoc.queryCommandState('superscript')){editdoc.execCommand('superscript');}
if(cmdID.toLowerCase()=='superscript'&&editdoc.queryCommandState('subscript')){editdoc.execCommand('subscript');}
if(cmdID.toLowerCase()=='createlink'){if(editdoc.selection.createRange().text!=""){var highlightedText=editdoc.selection.createRange().text;}else{var highlightedText="";}
var myText=showModalDialog(_editor_url+"popups/insert_hyperlink.jsp",highlightedText,"dialogHeight: 25; dialogWidth: 40; resizable: no; help: no; status: no; scroll: no;");if(myText){editor_insertHTML(objname,unescape(myText));}}
else if(cmdID.toLowerCase()=='insertimage'){var myText=showModalDialog(_editor_url+"popups/insert_image.jsp",editdoc,"dialogHeight: 40; dialogWidth: 40; resizable: no; help: no; status: no; scroll: no; ");if(myText){editor_insertHTML(objname,unescape(myText));}}
else if(cmdID.toLowerCase()=='inserttable'){showModalDialog(_editor_url+"popups/insert_table.jsp?"+objname,window,"resizable: yes; help: no; status: no; scroll: no; ");}
else{editdoc.execCommand(cmdID);}}
editor_event(objname);updateMiniRange(editor_obj.contentWindow.document.body);}
function editor_event(objname,runDelay){if(!document.all[objname])return;var config=document.all[objname].config;var editor_obj=document.all["_"+objname+"_editor"];if(runDelay==null){runDelay=0;}
var editEvent=editor_obj.contentWindow?editor_obj.contentWindow.event:event;if(editEvent&&editEvent.srcElement&&editEvent.srcElement.className=='expImg'){var expField=getObject('expression_'+document.all[objname].config.id)
expField.value=editEvent.srcElement.alt.unescapeHTML();if(expField.value.charAt(0)!='='){expField.value='='+expField.value;}
expField.mode='edit';expField.source=editEvent.srcElement;if(config.expEdit!=null){var expEditAsString=config.expEdit+'';if(expEditAsString!=='true'&&expEditAsString!=='false'){eval(expEditAsString.unescapeHTML());return;}}
var myExpEditor={};if(config.inDesigner){myExpEditor=new ExpressionEditor(expField,config.PVs,config.ACPNames,config.expEditShowTPs);}else{myExpEditor=new ExpressionEditor(expField,null,null,null,true,null,window.expEditorConfig[config.id]);}
myExpEditor.openEditor();return;}
if(editEvent&&editEvent.srcElement&&editEvent.srcElement.tagName=='IMG'){}
if(editEvent&&editEvent.keyCode){var ord=editEvent.keyCode;var ctrlKey=editEvent.ctrlKey;var altKey=editEvent.altKey;var shiftKey=editEvent.shiftKey;if(ord==16){return;}
if(ord==17){return;}
if(ord==18){return;}
if(ctrlKey&&(ord==122||ord==90)){return;}
if((ctrlKey&&(ord==121||ord==89))||ctrlKey&&shiftKey&&(ord==122||ord==90)){return;}}
if(runDelay>0){return setTimeout(function(){editor_event(objname);},runDelay);}
if(this.tooSoon==1&&runDelay>=0){this.queue=1;return;}
this.tooSoon=1;setTimeout(function(){this.tooSoon=0;if(this.queue){editor_event(objname,-1);};this.queue=0;},333);editor_updateOutput(objname);editor_updateToolbar(objname);}
function editor_updateToolbar(objname,action){var config=document.all[objname].config;var editor_obj=document.all["_"+objname+"_editor"];if(action=="enable"||action=="disable"){var tbItems=new Array('FontName','FontSize','FontStyle');for(var btnName in config.btnList){if(typeof config.btnList[btnName]=='function')continue;tbItems.push(config.btnList[btnName][0]);}
for(var idxN in tbItems){if(typeof tbItems[idxN]=='function')continue;var cmdID=tbItems[idxN].toLowerCase();var tbObj=document.all["_"+objname+"_"+tbItems[idxN]];if(cmdID=="htmlmode"||cmdID=="about"||cmdID=="showhelp"||cmdID=="popupeditor"){continue;}
if(tbObj==null){continue;}
var isBtn=(tbObj.tagName.toLowerCase()=="button")?true:false;if(action=="enable"){tbObj.disabled=false;if(isBtn){tbObj.className='btn'}}
if(action=="disable"){tbObj.disabled=true;if(isBtn){tbObj.className='btnNA'}}}
return;}
if(editor_obj.tagName.toLowerCase()=='textarea'){return;}
var editdoc=editor_obj.contentWindow.document;var fontname_obj=document.all["_"+objname+"_FontName"];if(fontname_obj){var fontname=editdoc.queryCommandValue('FontName');if(fontname==null){fontname_obj.value=null;}
else{var found=0;for(i=0;i<fontname_obj.length;i++){if(fontname.toLowerCase()==fontname_obj[i].text.toLowerCase()){fontname_obj.selectedIndex=i;found=1;}}}}
var fontsize_obj=document.all["_"+objname+"_FontSize"];if(fontsize_obj){var fontsize=editdoc.queryCommandValue('FontSize');if(fontsize==null){fontsize_obj.value=null;}
else{var found=0;for(i=0;i<fontsize_obj.length;i++){if(fontsize==fontsize_obj[i].value){fontsize_obj.selectedIndex=i;found=1;}}
if(found!=1){fontsize_obj.value=null;}}}
var classname_obj=document.all["_"+objname+"_FontStyle"];if(classname_obj){var curRange=editdoc.selection.createRange();var pElement;if(curRange.length){pElement=curRange[0];}
else{pElement=curRange.parentElement();}
while(pElement&&!pElement.className){pElement=pElement.parentElement;}
var thisClass=pElement?pElement.className.toLowerCase():"";if(!thisClass&&classname_obj.value){classname_obj.value=null;}
else{var found=0;for(i=0;i<classname_obj.length;i++){if(thisClass==classname_obj[i].value.toLowerCase()){classname_obj.selectedIndex=i;found=1;}}
if(found!=1){classname_obj.value=null;}}}
var IDList=Array('Bold','Italic','Underline','StrikeThrough','SubScript','SuperScript','JustifyLeft','JustifyCenter','JustifyRight','InsertOrderedList','InsertUnorderedList');for(i=0;i<IDList.length;i++){var btnObj=document.all["_"+objname+"_"+IDList[i]];if(btnObj==null){continue;}
var cmdActive=editdoc.queryCommandState(IDList[i]);if(!cmdActive){if(btnObj.className!='btn'){btnObj.className='btn';}
if(btnObj.disabled!=false){btnObj.disabled=false;}}else if(cmdActive){if(btnObj.className!='btnDown'){btnObj.className='btnDown';}
if(btnObj.disabled!=false){btnObj.disabled=false;}}}}
function editor_updateOutput(objname){var config=document.all[objname].config;var editor_obj=document.all["_"+objname+"_editor"];var editEvent=editor_obj.contentWindow?editor_obj.contentWindow.event:event;var isTextarea=(editor_obj.tagName.toLowerCase()=='textarea');var editdoc=isTextarea?null:editor_obj.contentWindow.document;var contents;if(isTextarea){contents=editor_obj.value;}
else{contents=editdoc.body.innerHTML;}
if(config.lastUpdateOutput&&config.lastUpdateOutput==contents){return;}
else{config.lastUpdateOutput=contents;}
document.all[objname].value=contents;}
function editor_filterOutput(objname){editor_updateOutput(objname);var contents=document.all[objname].value;var config=document.all[objname].config;if(contents.toLowerCase()=='<p>&nbsp;</p>'){contents="";}
var filterTag=function(tagBody,tagName,tagAttr){tagName=tagName.toLowerCase();var closingTag=(tagBody.match(/^<\//))?true:false;if(tagName=='img'){tagBody=tagBody.replace(/(src\s*=\s*.)[^*]*(\*\*\*)/,"$1$2");}
if(tagName=='a'){tagBody=tagBody.replace(/(href\s*=\s*.)[^*]*(\*\*\*)/,"$1$2");}
return tagBody;};RegExp.lastIndex=0;var matchTag=/<\/?(\w+)((?:[^'">]*|'[^']*'|"[^"]*")*)>/g;contents=contents.replace(matchTag,filterTag);if(config.replaceNextlines){contents=contents.replace(/\r\n/g,' ');contents=contents.replace(/\n/g,' ');contents=contents.replace(/\r/g,' ');}
document.all[objname].value=contents;}
function editor_setmode(objname,mode){var config=document.all[objname].config;var editor_obj=document.all["_"+objname+"_editor"];if(document.readyState!='complete'){setTimeout(function(){editor_setmode(objname,mode)},25);return;}
var TextEdit='<textarea ID="_'+objname+'_editor" style="border: 2px solid purple; width:'+config.width+'; height:'+config.height+'; margin-top: -1px; margin-bottom: -1px;"></textarea>';if(config.inDesigner){var RichEdit='<iframe title="'+_ASI.HtmlArea.richTextInputContent+'" src="'+rewriteURL('/portal/blank.jsp')+'" ID="_'+objname+'_editor" style="width:'+config.width+'; height:'+config.height+';" onblur="getObject(\''+objname+'\').onchange();"></iframe>';}
else{var RichEdit='<iframe title="'+_ASI.HtmlArea.richTextInputContent+'" src="'+rewriteURL('/portal/blank.jsp')+'" ID="_'+objname+'_editor"  onblur="getObject(\''+objname+'\').onchange();"  style="width:'+config.width+'; border: 1px solid #999; height:'+config.height+';""></iframe>';}
if(mode=="textedit"||editor_obj.tagName.toLowerCase()=='iframe'){config.mode="textedit";var editdoc=editor_obj.contentWindow.document;var contents=editdoc.body.createTextRange().htmlText;editor_obj.outerHTML=TextEdit;editor_obj=document.all["_"+objname+"_editor"];editor_obj.value=contents;editor_event(objname);editor_updateToolbar(objname,"disable");editor_obj.onkeydown=function(){editor_event(objname);}
editor_obj.onkeypress=function(){editor_event(objname);}
editor_obj.onkeyup=function(){editor_event(objname);}
editor_obj.onmouseup=function(){editor_event(objname);}
editor_obj.ondrop=function(){cleanup_pasted(objname);}
editor_obj.oncut=function(){editor_event(objname,100);}
editor_obj.onpaste=function(){cleanup_pasted(objname);}
editor_obj.onblur=function(){editor_event(objname,-1);}
editor_updateOutput(objname);editor_focus(editor_obj);}
else{config.mode="wysiwyg";var contents=editor_obj.value;if(mode=='init'){contents=document.all[objname].value;}
editor_obj.outerHTML=RichEdit;editor_obj=document.all["_"+objname+"_editor"];var html="";html+='<html><head>\n';if(config.stylesheet){html+='<link href="'+config.stylesheet+'" rel="stylesheet" type="text/css">\n';}
html+='<style>\n';html+='body {'+config.bodyStyle+'} \n';html+='body p{line-height: auto; margin:0; padding:0} \n';for(var i in config.fontstyles){if(typeof config.fontstyles[i]=='function')continue;var fontstyle=config.fontstyles[i];if(fontstyle.classStyle){html+='.'+fontstyle.className+' {'+fontstyle.classStyle+'}\n';}}
html+='</style>\n'
+'</head>\n'
+'<body contenteditable="true" topmargin=1 leftmargin=1'
+' onmouseup="parent.updateMiniRange(this)" onkeyup="parent.updateMiniRange(this)" >'
+contents
+'</body>\n'
+'</html>\n';var editdoc=editor_obj.contentWindow.document;editdoc.open();editdoc.write(html);editdoc.close();editor_updateToolbar(objname,"enable");editdoc.objname=objname;editdoc.onkeydown=function(){editor_event(objname);}
editdoc.onkeypress=function(){editor_event(objname);}
editdoc.onkeyup=function(){editor_event(objname);}
editdoc.onmouseup=function(){editor_event(objname);}
editdoc.body.ondrop=function(){editor_event(objname);}
editdoc.body.oncut=function(){editor_event(objname,100);}
editdoc.body.onpaste=function(){cleanup_pasted(objname);}
editdoc.body.onblur=function(){editor_event(objname,-1);}
if(mode!='init'){editor_focus(editor_obj);}}
if(mode!='init'){editor_event(objname);}}
function editor_focus(editor_obj){if(editor_obj.tagName.toLowerCase()=='textarea'){var myfunc=function(){editor_obj.focus();};setTimeout(myfunc,100);}
else{var editbody=editor_obj.contentWindow.document.body;if(!editbody.range){moveCursor(editbody,editbody.innerHTML.length);updateMiniRange(editbody);}else editbody.range.select();var myfunc=function(){editbody.focus();};setTimeout(myfunc,100);}}
function editor_about(objname){showModalDialog(_editor_url+"popups/about.html",window,"resizable: yes; help: no; status: no; scroll: no; ");}
function _dec_to_rgb(value){var hex_string="";for(var hexpair=0;hexpair<3;hexpair++){var myByte=value&0xFF;value>>=8;var nybble2=myByte&0x0F;var nybble1=(myByte>>4)&0x0F;hex_string+=nybble1.toString(16);hex_string+=nybble2.toString(16);}
return hex_string.toUpperCase();}
function editor_insertHTML(objname,str1,str2,reqSel){var config=document.all[objname].config;var editor_obj=document.all["_"+objname+"_editor"];if(str1==null){str1='';}
if(str2==null){str2='';}
if(document.all[objname]&&editor_obj==null){document.all[objname].focus();document.all[objname].value=document.all[objname].value+str1+str2;return;}
if(editor_obj==null){return alert("Unable to insert HTML.  Invalid object name '"+objname+"'.");}
editor_focus(editor_obj);var tagname=editor_obj.tagName.toLowerCase();var sRange;if(tagname=='iframe'){var editdoc=editor_obj.contentWindow.document;sRange=editdoc.selection.createRange();var sHtml=sRange.htmlText;if(sRange.length){return alert("Unable to insert HTML.  Try highlighting content instead of selecting it.");}
var oldHandler=window.onerror;window.onerror=function(){alert("Unable to insert HTML for current selection.");return true;}
if(sHtml.length){if(str2){sRange.pasteHTML(str1+sHtml+str2)}
else{sRange.pasteHTML(str1);}}else{if(reqSel){return alert("Unable to insert HTML.  You must select something first.");}
sRange.pasteHTML(str1+str2);}
window.onerror=oldHandler;}
else if(tagname=='textarea'){editor_obj.focus();sRange=document.selection.createRange();var sText=sRange.text;if(sText.length){if(str2){sRange.text=str1+sText+str2;}
else{sRange.text=str1;}}else{if(reqSel){return alert("Unable to insert HTML.  You must select something first.");}
sRange.text=str1+str2;}}
else{alert("Unable to insert HTML.  Unknown object tag type '"+tagname+"'.");}
sRange.collapse(false);sRange.select();}
function editor_getCursorSelection(objname){var config=document.all[objname].config;var editor_obj=document.all["_"+objname+"_editor"];if(document.all[objname]&&editor_obj==null){document.all[objname].focus();document.all[objname].value=document.all[objname].value+str1+str2;return;}
if(editor_obj==null){return alert("Unable to insert HTML.  Invalid object name '"+objname+"'.");}
editor_focus(editor_obj);var tagname=editor_obj.tagName.toLowerCase();var sRange;if(tagname=='iframe'){var editdoc=editor_obj.contentWindow.document;sRange=editdoc.selection.createRange();return sRange;}
else{alert("Unable to insert HTML.  Unknown object tag type '"+tagname+"'.");}}
function editor_insertHTMLatCursor(sRange,objname,str1,str2,reqSel){var sHtml=sRange.htmlText;if(str1==null){str1='';}
if(str2==null){str2='';}
if(sRange.length){return alert("Unable to insert HTML.  Try highlighting content instead of selecting it.");}
var oldHandler=window.onerror;window.onerror=function(){alert("Unable to insert HTML for current selection.");return true;}
if(sHtml.length){if(str2){sRange.pasteHTML(str1+sHtml+str2)}
else{sRange.pasteHTML(str1);}}else{if(reqSel){return alert("Unable to insert HTML.  You must select something first.");}
sRange.pasteHTML(str1+str2);}
window.onerror=oldHandler;sRange.collapse(false);sRange.select();}
function editor_getHTML(objname){var editor_obj=document.all["_"+objname+"_editor"];var isTextarea=(editor_obj.tagName.toLowerCase()=='textarea');if(isTextarea){return editor_obj.value;}
else{return editor_obj.contentWindow.document.body.innerHTML;}}
function editor_setHTML(objname,html){var editor_obj=document.all["_"+objname+"_editor"];var isTextarea=(editor_obj.tagName.toLowerCase()=='textarea');if(isTextarea){editor_obj.value=html;}
else{editor_obj.contentWindow.document.body.innerHTML=html;}}
function editor_appendHTML(objname,html){var editor_obj=document.all["_"+objname+"_editor"];var isTextarea=(editor_obj.tagName.toLowerCase()=='textarea');if(isTextarea){editor_obj.value+=html;}
else{editor_obj.contentWindow.document.body.innerHTML+=html;}}
function _isMouseOver(obj,event){var mouseX=event.clientX;var mouseY=event.clientY;var objTop=obj.offsetTop;var objBottom=obj.offsetTop+obj.offsetHeight;var objLeft=obj.offsetLeft;var objRight=obj.offsetLeft+obj.offsetWidth;if(mouseX>=objLeft&&mouseX<=objRight&&mouseY>=objTop&&mouseY<=objBottom){return true;}
return false;}
function editor_cMenu_generate(editorWin,objname){var parentWin=window;editorWin.event.returnValue=false;var cMenuOptions=[['Cut','Ctrl-X',function(){}],['Copy','Ctrl-C',function(){}],['Paste','Ctrl-V',function(){}],['Delete','DEL',function(){}],['---',null,null],['Select All','Ctrl-A',function(){}],['Clear All','',function(){}],['---',null,null],['About this editor...','',function(){alert("about this editor");}]];editor_cMenu.options=cMenuOptions;var cMenuHeader=''
+'<div id="_'+objname+'_cMenu" onblur="editor_cMenu(this);" oncontextmenu="return false;" onselectstart="return false"'
+'  style="position: absolute; visibility: hidden; cursor: default; width: 167px; background-color: threedface;'
+'         border: solid 1px; border-color: threedlightshadow threeddarkshadow threeddarkshadow threedlightshadow;">'
+'<table border=0 cellspacing=0 cellpadding=0 width="100%" style="width: 167px; background-color: threedface; border: solid 1px; border-color: threedhighlight threedshadow threedshadow threedhighlight;">'
+' <tr><td colspan=2 height=1></td></tr>';var cMenuList='';var cMenuFooter=''
+' <tr><td colspan=2 height=1></td></tr>'
+'</table></div>';for(var menuIdx in editor_cMenu.options){if(typeof editor_cMenu.options[menuIdx]=='function')continue;var menuName=editor_cMenu.options[menuIdx][0];var menuKey=editor_cMenu.options[menuIdx][1];var menuCode=editor_cMenu.options[menuIdx][2];if(menuName=="---"||menuName=="separator"){cMenuList+=' <tr><td colspan=2 class="cMenuDivOuter"><div class="cMenuDivInner"></div></td></tr>';}
else{cMenuList+='<tr class="cMenu" onMouseOver="editor_cMenu(this)" onMouseOut="editor_cMenu(this)" onClick="editor_cMenu(this, \''+menuIdx+'\',\''+objname+'\')">';if(menuKey){cMenuList+=' <td align=left class="cMenu">'+menuName+'</td><td align=right class="cMenu">'+menuKey+'</td>';}
else{cMenuList+=' <td colspan=2 class="cMenu">'+menuName+'</td>';}
cMenuList+='</tr>';}}
var cMenuHTML=cMenuHeader+cMenuList+cMenuFooter;document.all['_'+objname+'_cMenu'].outerHTML=cMenuHTML;editor_cMenu_setPosition(parentWin,editorWin,objname);parentWin['_'+objname+'_cMenu'].style.visibility='visible';parentWin['_'+objname+'_cMenu'].focus();}
function editor_cMenu_setPosition(parentWin,editorWin,objname){var event=editorWin.event;var cMenuObj=parentWin['_'+objname+'_cMenu'];var mouseX=event.clientX+parentWin.document.all['_'+objname+'_editor'].offsetLeft;var mouseY=event.clientY+parentWin.document.all['_'+objname+'_editor'].offsetTop;var cMenuH=cMenuObj.offsetHeight;var cMenuW=cMenuObj.offsetWidth;var pageH=document.body.clientHeight+document.body.scrollTop;var pageW=document.body.clientWidth+document.body.scrollLeft;if(mouseX+5+cMenuW>pageW){var left=mouseX-cMenuW-5;}
else{var left=mouseX+5;}
if(mouseY+5+cMenuH>pageH){var top=mouseY-cMenuH+5;}
else{var top=mouseY+5;}
cMenuObj.style.top=top;cMenuObj.style.left=left;}
function editor_cMenu(obj,menuIdx,objname){var action=event.type;if(action=="mouseover"&&!obj.disabled&&obj.tagName.toLowerCase()=='tr'){obj.className='cMenuOver';for(var i=0;i<obj.cells.length;i++){obj.cells[i].className='cMenuOver';}}
else if(action=="mouseout"&&!obj.disabled&&obj.tagName.toLowerCase()=='tr'){obj.className='cMenu';for(var i=0;i<obj.cells.length;i++){obj.cells[i].className='cMenu';}}
else if(action=="click"&&!obj.disabled){document.all['_'+objname+'_cMenu'].style.visibility="hidden";var menucode=editor_cMenu.options[menuIdx][2];menucode();}
else if(action=="blur"){if(!_isMouseOver(obj,event)){obj.style.visibility='hidden';}
else{if(obj.style.visibility!="hidden"){obj.focus();}}}
else{alert("editor_cMenu, unknown action: "+action);}}
function cleanup_pasted(objname){var mytext=window.clipboardData.getData('Text');window.clipboardData.clearData('Text');window.clipboardData.clearData('HTML');window.clipboardData.setData('Text',mytext);}
function updateMiniRange(body){var sel=body.ownerDocument.selection;body.range=sel.createRange();body.focus();}
function EditableSelectHTML(name,value,opts){importStyleSheet('/components/css/editableSelect.css');value=value||_ASI.EditableSelect.typeValueHere;var out=[];name=(name+"").escapeHtml();value=(value+"").escapeHtml();out.push("<nobr /><div class=\"editableSelect\"><input name=\""+name+"\" ");if(arguments[3])out.push(arguments[3]);out.push(" value=\""+value+"\" onkeydown=\"this.parentNode.getElementsByTagName(\'SELECT\')[0].selectedIndex=0;\" onclick=\"if (this.value in set('"+_ASI.EditableSelect.typeValueHere+"', datePickerPattern, timePickerPattern)) this.value = '';\" /><div>");out.push("<iframe title=\""+_AE.backdropIframeTitle+"\" scrolling=\"no\" frameBorder=\"1\" style=\"filter: alpha(opacity=0)\" src=\""+rewriteURL('/portal/blank.jsp')+"\"></iframe></div><select");out.push(" onchange=\"this.parentNode.childNodes[0].value = (this.value == \'null\') ? \'\' : this.value;");out.push(" this.parentNode.childNodes[0].focus();try{this.parentNode.childNodes[0].onchange()}catch(e){}\">");out.push("<option value=\"null\"></option>");var numOpts=opts.length
for(var i=0;i<numOpts;i++){var nextOpt=opts[i];out.push("<option value=\""+(nextOpt[1]+"").escapeHtml()+"\" ");out.push(value==nextOpt[1]?'selected=\"true\" ':'');out.push(">"+(nextOpt[0]+"").escapeHtml()+"</option>");}
out.push("</select></div>");return out.join('');}
function EditableSelectHTML2(name,value,opts,customEvent){importStyleSheet('/components/css/editableSelect.css');var optsHTML='';opts.push([_ASI.EditableSelect.typeInAValue,'']);var displayValue=value;for(var i=0;i<opts.length;i++){optsHTML+='<option value="'+(opts[i][1]+"").escapeHtml()+'" ';optsHTML+=value==opts[i][1]?'selected="true" ':'';optsHTML+='>'+(opts[i][0]+"").escapeHtml()+'</option>';if(value==opts[i][1])displayValue=opts[i][0];}
var out='<div class="editableSelect"><input onblur="updateESValue(this);';if(customEvent)out+=customEvent;displayValue=(displayValue+"").escapeHtml();out+='" value="'+displayValue+'" onclick="if (this.value == '+_ASI.EditableSelect.typeInAValue+') this.value = \'\';" />';out+='<div><iframe title="'+_AE.backdropIframeTitle+'" scrolling="no" frameBorder="1" style="filter: alpha(opacity=0)" src="'+rewriteURL('/portal/blank.jsp')+'"></iframe></div>';out+='<select onchange="EditableSelectOnChoose(this)">';out+=optsHTML;out+='</select>';out+='<input type="hidden" name="'+name+'" value="'+value+'" />';out+='</div>';return out;}
function EditableSelectOnChoose(es){var displayValue=es.options[es.selectedIndex].innerHTML;es.parentNode.childNodes[0].value=(displayValue==_ASI.EditableSelect.typeInAValue)?'':displayValue;getInputsByType('hidden',es.parentNode)[0].value=es.value;es.parentNode.childNodes[0].focus();es.value=es.value+'fireIt';try{this.parentNode.childNodes[0].onchange()}catch(e){};}
function updateESValue(displayInput){var selectOptions=displayInput.parentNode.getElementsByTagName("SELECT")[0].options;var hiddenInput=getInputsByType('hidden',displayInput.parentNode)[0];for(var i=0;i<selectOptions.length;i++){if(displayInput.value==selectOptions[i].innerHTML){hiddenInput.value=selectOptions[i].value;return true;}}
hiddenInput.value=displayInput.value;}
var appianTypeCache={};var appianTypeCacheDefaults={};function addToAppianTypeCache(atc){if(atc==null){return;}
var key,key2;for(key in atc){if(appianTypeCache[key]==null){appianTypeCache[key]={};if(key==asi.TYPES.EVENT){appianTypeCacheDefaults[key]="Unknown Event";}else if(key==asi.TYPES.PROCESS_MODEL){appianTypeCacheDefaults[key]="Unknown Process Model";}}
for(key2 in atc[key]){appianTypeCache[key][key2]=atc[key][key2];}}}
function setAppianDisplayName(type,id,name){if(appianTypeCache[type]==null){appianTypeCache[type]={};}
appianTypeCache[type][id]=name;}
function getDisplayNameForId(type,id){if(id==null||id==='')
return'';if(type==asi.TYPES.DATE){return id.dateStr;}else if(type==asi.TYPES.DATETIME){return Date.Util.createDatetimeString(id.dateStr,id.timeStr);}else if(type==asi.TYPES.TIME){return id.timeStr;}
if(!isAppianType(type)){return id;}
if(appianTypeCache[type]==null){appianTypeCache[type]={};}
var d=appianTypeCache[type][id];if(d!=null){if(d.map){return d.map[USER_LOCALE]?d.map[USER_LOCALE]:d.map[PRIMARY_LOCALE];}else{return d;}}else{var defaultValue=appianTypeCacheDefaults[type];if(defaultValue!=null){return defaultValue;}else{return id;}}}
function isAppianType(type){switch(parseInt(type)){case TYPE_USER:case TYPE_GROUP:case TYPE_BEAN:case TYPE_FOLDER:case TYPE_DOCUMENT:case TYPE_PAGE:case TYPE_FORUM:case TYPE_DISCUSSION_THREAD:case TYPE_MESSAGE:case TYPE_KNOWLEDGE_CENTER:case TYPE_COMMUNITY:case TYPE_TASK:case TYPE_PROCESS:case TYPE_TEMPLATE:case TYPE_ATTACHMENT:case TYPE_ROLE:case TYPE_PROCESSMODEL_FOLDER:case TYPE_PEOPLE:case TYPE_CONTENT:case TYPE_SIM_SCENARIO:case TYPE_EVENT:case asi.TYPES.EMAIL_RECIPIENT:return true;default:return false;}}
function getAppianTypeName(type){switch(parseInt(type)){case TYPE_USER:return'user';case TYPE_GROUP:return'group';case TYPE_BEAN:return'bean';case TYPE_FOLDER:return'folder';case TYPE_DOCUMENT:return'document';case TYPE_PAGE:return'page';case TYPE_FORUM:return'forum';case TYPE_DISCUSSION_THREAD:return'discussion';case TYPE_MESSAGE:return'message';case TYPE_KNOWLEDGE_CENTER:return'knowledge center';case TYPE_COMMUNITY:return'community';case TYPE_TASK:return'task';case TYPE_PROCESS:return'process';case TYPE_PEOPLE:return'user or group';case TYPE_CONTENT:return'content';default:return null;}}
function displayAppianObjects(obj_,type_,default_,isArray_,isExpression_,escapeValue_){if(type_==null){asi.alert('Could not display variable value, because the type is not set.');}
if(obj_==null||obj_===''||(obj_.constructor==Array&&obj_.length==0)){return default_;}
if(isExpression_){return obj_;}
if(Util.isNull(escapeValue_)){escapeValue_=true;}
var s='';function display(obj){if(Util.isNull(obj)){return'';}
var id=(obj.id!=null)?obj.id:obj;var type=(obj.type!=null)?obj.type:type_;if(type==asi.TYPES.BOOLEAN){return Boolean.parseBoolean(id)?"True":"False"};if(Constants.TYPES[type].isList){type=Constants.TYPES[type].singleType;}
var isAppian=isAppianType(type);if(!Constants.TYPES[type].isRecord){type=DatatypeUtils.getFoundationInstanceType(type);var isDateTime=isDateOrTimeType(type);}else{var datatype=Constants.TYPES[type];var displayValues=[];for(var i=0;i<datatype.fieldTypes.length;i++){displayValues[i]=displayAppianObjects(obj[i],datatype.fieldTypes[i],'',Constants.TYPES[datatype.fieldTypes[i]].isList,false,escapeValue_);if(!Util.isNull(displayValues[i])){displayValues[i]=datatype.fieldNames[i]+'='+displayValues[i]+''}else{displayValues[i]=datatype.fieldNames[i]+'=';}}
return'['+displayValues.join(', ')+']';}
var displayString=(isAppian||isDateTime)?getDisplayNameForId(type,id):id;if(typeof displayString!='string'){var defaultValue=appianTypeCacheDefaults[type];if(defaultValue!=null){return defaultValue;}}
return(escapeValue_?StringSecurityUtils.encodeHtml(displayString):displayString);}
var isRecord=Constants.TYPES[type_].isRecord;if((isRecord&&isArray_)||(!isRecord&&obj_.constructor==Array)){for(var i=0;i<obj_.length;i++){s+=display(obj_[i]);if(i+1<obj_.length){s+=", ";}}}else{s+=display(obj_);}
return s;}
function isDateOrTimeType(type){switch(parseInt(type)){case asi.TYPES.DATE:case asi.TYPES.DATETIME:case asi.TYPES.TIME:return true;default:return false;}}
function togglePortletAdmin(trigger){var portlet=getContainerByClassName(trigger,'portlet',3);if(portlet.className.match(/admin/))portlet.className=portlet.className.replace(/ *admin/g,'');else portlet.className+=' admin';}
function showNotification(id,page){id=encodeURIComponent(id);page=encodeURIComponent(page);var strUrl=strNotifActionPath+"?id="+id+"&r="+page;notifWin=popup(strUrl,'notifWin','width=600,height=400,scrollbars=yes,resizable=yes');}
function showReportOptions(instanceId,tabName){importScript('/process/assign/actors.jsp');importStyleSheet('/framework/css/dialogSection.css');window.expressionEditorConfig=null;ensureJSON(function(){window.server.processAnalytics.getProcessReport(function(report,error){report.instanceId=instanceId;window.reportsSynchronizer=new Synchronizer('reportsSynchronizer',{dataSources:{Report:report}});new SynchronizedDialog('reportOptions',{tabName:tabName,synchronizer:reportsSynchronizer,params:'instanceId='+instanceId});addToAppianTypeCache(reportsSynchronizer.dataSources.Report.cache);},instanceId);});}
var _reports={};function reportAction(key,id){if(key in set('save','taskview.save','processview.save')){var page='/analytics/report/save.do?asiDialogSize=small&$e=asiDialog&instanceId='+id;backgroundAction(page);}else if(key=='userview.save'){var page='/analytics/view/user/save.do?$form_state=save&$override_tokens=true&instanceId='+id;backgroundPage(page);}else if(key=='groupview.save'){var page='/analytics/view/group/save.do?$form_state=save&$override_tokens=true&instanceId='+id;backgroundPage(page);}else if(key=='saveas'){var page='/analytics/report/saveAs.do?$e=asiDialog&instanceId='+id;backgroundPage(page);}else if(key=='processview.saveas'){var page='/analytics/processview/saveAs.do?$e=asiDialog&instanceId='+id;backgroundPage(page);}else if(key=='taskview.saveas'){var page='/analytics/taskview/saveAs.do?$e=asiDialog&instanceId='+id;backgroundPage(page);}else if(key in set('configure','taskview.configure','processview.configure','userview.configure','groupview.configure')){showReportOptions(id);}else if(key in set('print','taskview.print','processview.print','userview.print','groupview.print')){window.open(CONTEXT_PREFIX+'analytics/report/view/base.print?instanceId='+id);}else if(key in set('email','taskview.email','processview.email','userview.email','groupview.email')){backgroundPage('/analytics/report/email.do?$e=asiDialog&instanceId='+id);}else if(key in set('export','taskview.export','processview.export','userview.export','groupview.export')){backgroundPage('analytics/report/export.none?instanceId='+id);}}
function quickFilterAction(id,qf){var page='/analytics/report/view/render.do?instanceId='+id+'&qf='+qf;backgroundAction(page);}
function quickFilterDisplayLocation(id,showQuickFiltersInToolbar){var page='/analytics/report/view/render.do?instanceId='+id+'&showQuickFiltersInToolbar='+showQuickFiltersInToolbar;backgroundAction(page);}
function getTypeFromContext(contextType){switch(contextType){case 0:return;case 1:return 23;case 2:return;case 3:return;case 4:return 22;case 5:case 6:case 7:case 8:case 10:return 4;case 9:return 5;}}
function openExpressionEditorForReport(obj){if(window.expressionEditorConfig==null){ensureJSON(function(){var callback=function(config){window.expressionEditorConfig=config;expressionEditorConfig.isCreating=false;expressionEditorConfig.isAnalytics=true;var asiExpressionEditor=new ExpressionEditor(obj,null,null,null,null,null,window.expressionEditorConfig);asiExpressionEditor.openEditor();}
var report=reportsSynchronizer.dataSources.Report;server.processAnalytics.getExpressionEditorConfig(callback,report);});}else{expressionEditorConfig.isAnalytics=true;var asiExpressionEditor=new ExpressionEditor(obj,null,null,null,null,null,window.expressionEditorConfig);asiExpressionEditor.openEditor();}}
function confirmMultiple(evt,instanceId,tag,name,msg){var evt=evt?evt:event;if(evt){if(evt.stopPropagation){evt.stopPropagation();evt.preventDefault();}else{evt.cancelBubble=true;evt.returnValue=false;}};if(getSelectedIdsFromGrid(instanceId).length>1){asi.confirm(msg,performAction,cancelAction);}else{performAction();}
function performAction(){return attachToolbarParametersToTag(instanceId,tag,name);}
function cancelAction(){return false;}}
function attachToolbarParametersToTag(instanceId,tag,name){var ids=getSelectedIdsFromGrid(instanceId);if(ids.length==0)
return false;var href=""+tag.href;href=attachToolbarParametersToUrl(instanceId,href,name);backgroundPageNoHistory(href);return false;}
function attachToolbarParametersToUrl(instanceId,url,name){return attachSpecificParametersToUrl(instanceId,url,name);}
function attachSpecificParametersToUrl(instanceId,url,name,ids){if(ids==null){ids=getSelectedIdsFromGrid(instanceId);}
if(url.indexOf('?')<0){url+='?';}else{url+='&';}
url+='instanceId='+instanceId;for(var i=0;i<ids.length;i++){url+='&'+name+'='+ids[i];}
return url;}
function getSelectedIdsFromGrid(instanceId){var grid=eval('asi_gridMain_analytics_'+instanceId);var tokens=grid.getSelectedTokens();var ids=[];for(var i=0;i<tokens.length;i++){ids[i]=tokens[i].split(grid.delim)[1];}
return ids;}
REPORT_PALETTES={};function toggleReportPalettes(trigger,evt){var instanceId=trigger.getAttribute("instanceId");var paletteContainer=REPORT_PALETTES[instanceId];var palettes=paletteContainer.palettes;var triggers=getNodeElements(trigger.parentNode.childNodes).forEach(function(trigger){return trigger;});palettes.forEach(function(palette,i){palette.triggers=triggers;if(paletteContainer.current&&(trigger.getAttribute('type')==paletteContainer.current.type)&&(palette&&palette.type==trigger.getAttribute('type'))){cancelReportPalette(palette);paletteContainer.current=null;}
else if(palette&&palette.type==trigger.getAttribute('type')){var obj=$$(palette.id);obj.style.display='';obj.style.top=parseInt(getPageOffsetTop(trigger)+trigger.offsetHeight-1)+'px';var offsetLeft=parseInt(getPageOffsetLeft(trigger)+trigger.offsetWidth);var objWidth=obj.offsetWidth;obj.style.left=(offsetLeft-objWidth-2)+'px';palette.iframe=backWithIframe(obj);palette.cache=obj.cloneNode(true);if(isIE){var set1=obj.getElementsByTagName('SELECT');var set2=palette.cache.getElementsByTagName('SELECT');for(var i=0;i<set1.length;i++){set2[i].selectedIndex=set1[i].selectedIndex;}}
paletteContainer.current=palette;}
else if(palette&&$$(palette.id).style.display!='none'){cancelReportPalette(palette);}});}
function hideAllReportPalettes(target,replaceCache){if(target){if(getContainerByClassName(target,'asiPaletteTriggers','DIV',4))return;if(getContainerByClassName(target,'asiReportPalette','DIV',4))return;}
for(var paletteContainer in REPORT_PALETTES){var container=REPORT_PALETTES[paletteContainer];container.current=null;var palettes=container.palettes;palettes.forEach(function(palette,i){if(replaceCache&&palette.cache!=null){$$(palette.id).parentNode.replaceChild(palette.cache,$$(palette.id));}
hideReportPalette(palette);});}}
function hideReportPalette(palette){var obj=$$(palette.id);if(obj)obj.style.display='none';if(palette.iframe)
{try{document.body.removeChild(palette.iframe);}catch(e){}}
palette.iframe=null;}
function cancelReportPalette(palette,type,instanceId){var obj;if(palette){obj=$$(palette.id);}
else{var paletteContainer=REPORT_PALETTES[instanceId];var palettes=paletteContainer.palettes;palettes.forEach(function(currentPalette){if(currentPalette.type==type){palette=currentPalette;obj=$$(currentPalette.id);paletteContainer.current=null;}});}
if(palette.cache!=null){obj.parentNode.replaceChild(palette.cache,obj);}
hideReportPalette(palette);}
var reportOptions={close:function(element){DIALOG.hide(element);reportsSynchronizer.eventCache.flush();reportOptions.dynamicFilters=null;reportOptions.indicators=null;generalTab=null;},saveAndClose:function(element){var report=reportsSynchronizer.dataSources.Report;if(!report.display.name.trim()){return false;}
if(typeof addFilter!='undefined'&&addFilter&&!isEmpty(addFilter.errors)){return false;}
if(typeof dynamicFilters!='undefined'&&reportsSynchronizer.dataSources.dynamicFilters){var error=dynamicFilters.validate();if(error){asi.alert(error);$$('filteringTab').click();return;}}
window.server.processAnalytics.updateProcessReport(function(messages){if(arguments[1]){ASI_LOG.error(arguments[1].message);}else{if(messages&&messages.length>0){var text='<fmt:message key="erroroccurred"/> <br /> ';for(var i=0;i<messages.length;i++){text+='* '+StringSecurityUtils.encodeHtml(messages[i])+' <br /> ';}
text+='';asi.alert(text);}else{if($$('this_is_a_base_report')){var b=report.display.name;if(report.data.contextType!=0){if(asiFormPicker_reportContext_autocomplete){b+=' (';var pickedArray=asiFormPicker_reportContext_.getDescriptorsArray();for(var i=0;i<pickedArray.length;i++){if(pickedArray[i][DESCRIPTOR_TYPE]!=TYPE_INVALID){b+=pickedArray[i][DESCRIPTOR_DISPLAY];if(i+1<pickedArray.length)b+=_AE.uiDelimiter+' ';}}
b+=') *';}else{b+=' ('+$$('pickerDisplayName_reportContext').value+') *';}}
Navigation.setBreadcrumb(StringSecurityUtils.unencodeHtml(window.currentNavCategory),b);}
reportOptions.close(element);backgroundPage('/analytics/report/view/render.do?instanceId='+report.instanceId);}}},report.instanceId,report);},onunload:function(tab){return reportsSynchronizer.dataSources.Report.display.name.trim()!='';}}
var TYPES=new Array();var ENTITIES=new Array();function GroupRule(n){this.name=n;this.expressions=new Array();this.curr=-1;this.currentExpression=function(){with(this)return expressions[curr];}
this.currentConditions=function(){with(this)return expressions[curr].conditions;}
this.encode=function(){with(this){validateCurrentExpression();var r="";for(i=0;i<expressions.length-1;i++){r+=expressions[i].encode()+"&";}
if(expressions.length>0){r+=expressions[i].encode();}
r+="";return r;}}
this.encode_et=function(){with(this){validateCurrentExpression();var et="et=";for(i=0;i<expressions.length;i++){if(expressions[i].entityType.label=="u"){et+=";"+expressions[i].entityType.label;}else{et+=";g";}}
return et;}}
this.encode_etid=function(){with(this){validateCurrentExpression();var etid="etid=";for(i=0;i<expressions.length;i++){if(expressions[i].entityType.label=="u"){etid+=";-1";}else{etid+=";"+expressions[i].entityType.id;}}
return etid;}}
this.encode_c=function(){with(this){validateCurrentExpression();var c="c=";this.conditions=new Array();this.condition=new MembershipCondition();for(i=0;i<expressions.length;i++){conditions=expressions[i].conditions;if(expressions[i].conditions.length>0){c+=";";for(var j=0;j<conditions.length;j++){condition=conditions[j];c+=","+condition.attribute.id+","+condition.operator.id+","+condition.value;}}}
return c;}}
this.toString=function(){with(this){var r="";for(var i=0;i<expressions.length;i++){if(i==curr){r+=expressions[i].toHTML();if(curr<0||expressions[curr].isValid()){r+="&nbsp;/&nbsp;<a href='#' onclick='rule.addExpression();renderRule(); return false;'>"+_PE.msgMemRulesDone+"</a>)";}
r+="<br>";}else{r+=expressions[i].toString();r+="&nbsp;(<a href='#' onclick='rule.editExpression("+i+");renderRule(); return false;'>"+_PE.msgMemRulesEdit+"</a>&nbsp;/&nbsp;";r+="<a href='#' onclick='rule.deleteExpression("+i+");renderRule(); return false;'>"+_PE.msgMemRulesDelete+"</a>)";r+="<br /><br />";}}
return r;}}
this.addExpression=function(){with(this){validateCurrentExpression();curr=expressions.length;expressions.push(new MembershipExpression());}}
this.editExpression=function(i){with(this){validateCurrentExpression();curr=i;}}
this.validateCurrentExpression=function(){with(this){if(!(curr<0)){if(expressions[curr].isValid()){saveCurrentExpression();}else{deleteCurrentExpression();}}}}
this.deleteCurrentExpression=function(){with(this){expressions.splice(curr,1);curr=-1;}}
this.deleteExpression=function(i){with(this){expressions.splice(i,1);if(curr==i)curr=-1;if(curr>i)curr-=1;}}
this.saveCurrentExpression=function(){with(this){expressions[curr].saveCurrentCondition();}}}
function MembershipExpression(){this.entityType=null;this.conditions=new Array();this.curr=-1;this.isValid=function(){return(this.entityType!=null)&&(this.entityType!=-1);}
this.toHTML=function(){with(this){var r="";if(entityType==null){r=_PE.msgMemRulesAddUsersGroups.supplant("<a href='#' onclick='userClicked(); return false;'>","</a>","<a href='#' onclick='groupClicked(); return false;'>","</a>");}
else if(entityType==-1){var selectTypeStr="<select name='selGrpType' onchange='groupPicked(this[this.selectedIndex].value);'>";selectTypeStr+="<option selected value=''>"+_PE.msgMemRulesChooseAType+"</option>";for(var e=0;e<ENTITIES.length;e++){selectTypeStr+="<option value='"+e+"'>"+StringSecurityUtils.encodeHtml(ENTITIES[e].label)+"</option>";}
selectTypeStr+="</select>";r=_PE.msgMemRulesAddGroupsOfType.supplant("<b>","</b>",selectTypeStr);}
else{if(conditions.length==0){conditions.push(new MembershipCondition());curr=0;}
var conditionsStr="";for(var i=0;i<conditions.length;i++){if(i==curr){if(conditions.length>1){conditionsStr+=" (<a href='#' onclick='rule.currentExpression().deleteCurrentCondition();renderRule();return false;'";conditionsStr+=">"+_PE.msgMemRulesDelete+"</a>)";}
conditionsStr+=conditions[i].toHTML(entityType.attributes);}else{conditionsStr+="<a href='#' onclick='rule.currentExpression().selectCondition("+i+");renderRule(); return false;'>"+conditions[i].toString()+"</a>";}
if(i!=conditions.length-1){conditionsStr+=" "+_PE.msgMemRuleAnd+" ";}}
if(curr>=0){conditionsStr+=" (<a href='#' onclick='rule.currentExpression().addCondition();renderRule();return false;'";conditionsStr+=" title='"+_PE.msgMemRulesAddAnotherCondition+"'>"+_PE.msgMemRuleMore+"</a>";}
if(entityType==ENTITIES["u"]){r=_PE.msgMemRulesAddUserRules.supplant("<b>","</b>",conditionsStr);}else{r=_PE.msgMemRulesAddGroupRules.supplant("<b>","</b>","<b>"+entityType.label+"</b>",conditionsStr);}}
return r;}}
this.encode=function(){with(this){var r="";if(entityType.label=="u"){r="[({utid,"+entityType.id+"}),"+"(";}else{r="[({gtid,"+entityType.id+"}),"+"(";}
for(var i=0;i<conditions.length-1;i++){r+=conditions[i].encode();}
if(conditions.length>0){r+=conditions[i].encode()+")";}
r+="]";return r;}}
this.toString=function(){with(this){var conditionsStr="";for(var i=0;i<conditions.length;i++){conditionsStr+=conditions[i].toString();if(i!=conditions.length-1){conditionsStr+=" "+_PE.msgMemRuleAnd+" ";}}
var r="";if(entityType==ENTITIES["u"]){r=_PE.msgMemRulesAddUserRules.supplant("<b>","</b>",conditionsStr);}else{r=_PE.msgMemRulesAddGroupRules.supplant("<b>","</b>","<b>"+entityType.label+"</b>",conditionsStr);}
return r;}}
this.deleteCurrentCondition=function(){with(this){conditions.splice(curr,1);curr=Math.max(0,curr-1);}}
this.changeCurrentAttribute=function(i){with(this){conditions[curr].attribute=entityType.attributes[i];renderRule();}}
this.saveCurrentCondition=function(){if(this.curr<0){return;}
with(this.conditions[this.curr]){if(attribute.type.operators.length>1){operator=attribute.type.operators[document.agRuleForm.selOper.selectedIndex];}
else{operator=attribute.type.operators[0];}
value=document.agRuleForm.attrVal.value;}}
this.addCondition=function(){with(this){saveCurrentCondition();conditions.push(new MembershipCondition());curr=conditions.length-1;}
renderRule();}
this.selectCondition=function(i){with(this){saveCurrentCondition();curr=i;renderRule();}}}
function MembershipCondition(){this.attribute=null;this.operator=null;this.value=null;this.toHTML=function(a){with(this){if(attribute==null){attribute=a[0];}
return attributesToHTML(a)+attribute.type.operatorToHTML(operator)+attribute.type.valueToHTML(value);}}
this.attributesToHTML=function(a){with(this){var r="<select name='selAttr' onchange='rule.currentExpression().changeCurrentAttribute(this.selectedIndex);renderRule();'>";for(var i=0;i<a.length;i++){r+="<option ";if(a[i].id==attribute.id){r+="selected ";}
var id=StringSecurityUtils.encodeHtml(a[i].id);var label=StringSecurityUtils.encodeHtml(a[i].label);r+="value='"+id+"'>"+label+"</option>";}
r+="</select>";return r;}}
this.toString=function(){with(this){var r="<i>"+StringSecurityUtils.encodeHtml(attribute.label)+"</i>";r+=" "+StringSecurityUtils.encodeHtml(attribute.type.operatorToString(operator))+" ";r+="<b> "+StringSecurityUtils.encodeHtml(attribute.type.valueToString(value))+"</b>";return r;}}
this.encode=function(){with(this){var r="{"+attribute.id+",";r+=operator.id+",";r+=value+"}";return r;}}}
function MembershipType(d){this.domain=d;this.operators=new Array();this.valueToHTML=function(v){with(this){var r="";if(domain==null){r+="<input name='attrVal' type='text' value='"+StringSecurityUtils.encodeHtml(v==null?"":v)+"'>";}else{r+="<select name='attrVal'>";for(var i=0;i<domain.length;i++){r+="<option value='"+i+"'";if(v==i)r+=" selected";r+=">"+StringSecurityUtils.encodeHtml(domain[i])+"</option>";}
r+="</select>";}
return r;}}
this.valueToString=function(v){with(this){var r="";if(domain==null){if(v==""){r+=_PE.msgMemRulesEmptyValue;}
else{r+=v;}}else{r+=domain[v];}
return r;}}
this.operatorToHTML=function(o){with(this){if(operators.length>1){var r="<select name='selOper'>";for(var i=0;i<operators.length;i++){r+="<option value='"+StringSecurityUtils.encodeHtml(operators[i].id)+"'";if(o!=null){if(o.id==operators[i].id)r+=" selected";}else{if(o==operators[i])r+=" selected";}
r+=">"+StringSecurityUtils.encodeHtml(operators[i].label)+"</option>";}
r+="</select>";return r;}else{return" "+operators[0].label+" ";}}}
this.operatorToString=function(o){return o.label;}}
function MembershipOperator(i,l){this.id=i;this.label=l;}
function MembershipAttribute(i,l,t){this.id=i;this.label=l;this.type=t;}
function Entity(i,l){this.id=i;this.label=l;this.attributes=new Array();}
function userClicked(){rule.currentExpression().entityType=ENTITIES["u"];renderRule();}
function groupClicked(){rule.currentExpression().entityType=-1;renderRule();}
function groupPicked(g){rule.currentExpression().entityType=ENTITIES[g];renderRule();}
function renderRule(){rb=getObject("rulesdiv",0);rb.innerHTML=rule.toString();}
function escapeText(str){expr=/([\'])/gm;return str.replace(expr,"&#0039;");}
escapeJSONChar=function escapeJSONChar(c)
{if(c=="\""||c=="\\")return"\\"+c;if(c=="\b")return"\\b";if(c=="\f")return"\\f";if(c=="\n")return"\\n";if(c=="\r")return"\\r";if(c=="\t")return"\\t";var hex=c.charCodeAt(0).toString(16);var len=hex.length;switch(len){case 1:return"\\u000"+hex;case 2:return"\\u00"+hex;case 3:return"\\u0"+hex;}
return"\\u"+hex;};escapeJSONString=function escapeJSONString(s)
{return"\""+s.replace(/([^\u0020-\u007f]|[\\\"])/g,escapeJSONChar)+"\"";};toJSON=function toJSON(o)
{if(o==null){return"null";}
var c=o.constructor;if(c==String){return escapeJSONString(o);}else if(c==Number||c==Boolean){return o.toString();}else if(c==Date){return o.valueOf().toString();}else if(c==Array){var v=[];var len=o.length;for(var i=0;i<len;i++)v.push(toJSON(o[i]));return"["+v.join(",")+"]";}else{var v=[];var attr;for(attr in o){var nextAttr=o[attr];if(typeof nextAttr!="function"&&nextAttr!=null)
v.push(attr+":"+toJSON(nextAttr));}
return"{"+v.join(",")+"}";}};JSONRpcClient=function JSONRpcClient_ctor(serverURL,user,pass,objectID)
{this.serverURL=serverURL;this.user=user;this.pass=pass;this.objectID=objectID;if(this.objectID){this._addMethods(["listMethods"]);var req=this._makeRequest("listMethods",[]);}else{this._addMethods(["system.listMethods"]);var req=this._makeRequest("system.listMethods",[]);}
var m=this._sendRequest(req);this._addMethods(m);};JSONRpcClient.Exception=function JSONRpcClient_Exception_ctor(code,message,javaStack)
{this.code=code;var name;if(javaStack){this.javaStack=javaStack;var m=javaStack.match(/^([^:]*)/);if(m)name=m[0];}
if(name)this.name=name;else this.name="JSONRpcClientException";this.message=message;};JSONRpcClient.Exception.CODE_REMOTE_EXCEPTION=490;JSONRpcClient.Exception.CODE_ERR_CLIENT=550;JSONRpcClient.Exception.CODE_ERR_PARSE=590;JSONRpcClient.Exception.CODE_ERR_NOMETHOD=591;JSONRpcClient.Exception.CODE_ERR_UNMARSHALL=592;JSONRpcClient.Exception.CODE_ERR_MARSHALL=593;JSONRpcClient.Exception.prototype=new Error();JSONRpcClient.Exception.prototype.toString=function JSONRpcClient_Exception_toString(code,msg)
{return this.name+": "+this.message;};JSONRpcClient.default_ex_handler=function JSONRpcClient_default_ex_handler(e){if(e.name&&e.message){ASI_LOG.error(e.name+": "+e.message);}else{ASI_LOG.error(e);}};JSONRpcClient.toplevel_ex_handler=JSONRpcClient.default_ex_handler;JSONRpcClient.profile_async=false;JSONRpcClient.max_req_active=1;JSONRpcClient.requestId=1;JSONRpcClient.prototype._createMethod=function JSONRpcClient_createMethod(methodName)
{var fn=function()
{var args=[];var callback=null;for(var i=0;i<arguments.length;i++)args.push(arguments[i]);if(typeof args[0]=="function")callback=args.shift();var req=fn.client._makeRequest.call(fn.client,fn.methodName,args,callback);if(callback==null){return fn.client._sendRequest.call(fn.client,req);}else{JSONRpcClient.async_requests.push(req);JSONRpcClient.kick_async();return req.requestId;}};fn.client=this;fn.methodName=methodName;return fn;};JSONRpcClient.prototype._addMethods=function JSONRpcClient_addMethods(methodNames)
{for(var i=0;i<methodNames.length;i++){var obj=this;var names=methodNames[i].split(".");for(var n=0;n<names.length-1;n++){var name=names[n];if(obj[name]){obj=obj[name];}else{obj[name]=new Object();obj=obj[name];}}
var name=names[names.length-1];if(!obj[name]){var method=this._createMethod(methodNames[i]);obj[name]=method;}}};JSONRpcClient._getCharsetFromHeaders=function JSONRpcClient_getCharsetFromHeaders(http)
{try{var contentType=http.getResponseHeader("Content-type");var parts=contentType.split(/\s*;\s*/);for(var i=0;i<parts.length;i++){if(parts[i].substring(0,8)=="charset=")
return parts[i].substring(8,parts[i].length);}}catch(e){}
return"UTF-8";};JSONRpcClient.async_requests=[];JSONRpcClient.async_inflight={};JSONRpcClient.async_responses=[];JSONRpcClient.async_timeout=null;JSONRpcClient.num_req_active=0;JSONRpcClient._async_handler=function JSONRpcClient_async_handler()
{JSONRpcClient.async_timeout=null;while(JSONRpcClient.async_responses.length>0){var res=JSONRpcClient.async_responses.shift();if(res.canceled)continue;if(res.profile)res.profile.dispatch=new Date();try{res.cb(res.result,res.ex,res.profile);}catch(e){JSONRpcClient.toplevel_ex_handler(e);}}
while(JSONRpcClient.async_requests.length>0&&JSONRpcClient.num_req_active<JSONRpcClient.max_req_active){var req=JSONRpcClient.async_requests.shift();if(req.canceled)continue;req.client._sendRequest.call(req.client,req);}};JSONRpcClient.kick_async=function JSONRpcClient_kick_async()
{if(JSONRpcClient.async_timeout==null)
JSONRpcClient.async_timeout=setTimeout(JSONRpcClient._async_handler,0);};JSONRpcClient.cancelRequest=function JSONRpcClient_cancelRequest(requestId)
{if(JSONRpcClient.async_inflight[requestId]){JSONRpcClient.async_inflight[requestId].canceled=true;return true;}
for(var i in JSONRpcClient.async_requests){if(JSONRpcClient.async_requests[i].requestId==requestId){JSONRpcClient.async_requests[i].canceled=true;return true;}}
for(var i in JSONRpcClient.async_responses){if(JSONRpcClient.async_responses[i].requestId==requestId){JSONRpcClient.async_responses[i].canceled=true;return true;}}
return false;};JSONRpcClient.prototype._makeRequest=function JSONRpcClient_makeRequest(methodName,args,cb)
{var req={};req.client=this;req.requestId=JSONRpcClient.requestId++;var obj={};obj.id=req.requestId;if(this.objectID)
obj.method=".obj#"+this.objectID+"."+methodName;else
obj.method=methodName;obj.params=args;if(cb)req.cb=cb;if(JSONRpcClient.profile_async)
req.profile={"submit":new Date()};req.data=toJSON(obj);return req;};function null_function(){};JSONRpcClient.prototype._sendRequest=function JSONRpcClient_sendRequest(req)
{if(req.profile)req.profile.start=new Date();var http=JSONRpcClient.poolGetHTTPRequest();JSONRpcClient.num_req_active++;http.open("POST",this.serverURL,(req.cb!=null),this.user,this.pass);try{http.setRequestHeader("Content-type","text/plain");}catch(e){}
if(req.cb){var self=this;function http_onreadystatechange(){if(http.readyState==4){http.onreadystatechange=null_function;var res={"cb":req.cb,"result":null,"ex":null};if(req.profile){res.profile=req.profile;res.profile.end=new Date();}
try{res.result=self._handleResponse(http);}
catch(e){res.ex=e;}
if(!JSONRpcClient.async_inflight[req.requestId].canceled)
JSONRpcClient.async_responses.push(res);delete JSONRpcClient.async_inflight[req.requestId];JSONRpcClient.kick_async();}};(function(){http.onreadystatechange=http_onreadystatechange;})();}else{http.onreadystatechange=null_function;}
JSONRpcClient.async_inflight[req.requestId]=req;try{http.send(req.data);}catch(e){JSONRpcClient.poolReturnHTTPRequest(http);JSONRpcClient.num_req_active--;throw new JSONRpcClient.Exception(JSONRpcClient.Exception.CODE_ERR_CLIENT,"Connection failed");}
if(!req.cb)return this._handleResponse(http);};JSONRpcClient.prototype._handleResponse=function JSONRpcClient_handleResponse(http)
{if(!this.charset){this.charset=JSONRpcClient._getCharsetFromHeaders(http);}
var status,statusText,data;try{status=http.status;statusText=http.statusText;data=http.responseText;}catch(e){JSONRpcClient.poolReturnHTTPRequest(http);JSONRpcClient.num_req_active--;JSONRpcClient.kick_async();throw new JSONRpcClient.Exception
(JSONRpcClient.Exception.CODE_ERR_CLIENT,"Connection failed");}
JSONRpcClient.poolReturnHTTPRequest(http);JSONRpcClient.num_req_active--;if(status!=200){throw new JSONRpcClient.Exception(status,statusText);}
var obj;try{eval("obj = "+data);}catch(e){throw new JSONRpcClient.Exception(550,"error parsing result");}
if(obj.error)
throw new JSONRpcClient.Exception(obj.error.code,obj.error.msg,obj.error.trace);var res=obj.result;if(res&&res.objectID&&res.JSONRPCType=="CallableReference")
return new JSONRpcClient(this.serverURL,this.user,this.pass,res.objectID);return res;};JSONRpcClient.http_spare=[];JSONRpcClient.http_active=[];JSONRpcClient.http_max_spare=8;JSONRpcClient.poolGetHTTPRequest=function JSONRpcClient_pool_getHTTPRequest()
{var http=null;if(JSONRpcClient.http_spare.length>0){http=JSONRpcClient.http_spare.pop();}else{http=JSONRpcClient.getHTTPRequest();}
JSONRpcClient.http_active.push(http);return http;};JSONRpcClient.poolReturnHTTPRequest=function JSONRpcClient_poolReturnHTTPRequest(http)
{http.onreadystatechange=null_function;for(var i=0;i<JSONRpcClient.http_active.length;i++){if(http==JSONRpcClient.http_active[i]){JSONRpcClient.http_active.splice(i,1);break;}}
if(JSONRpcClient.http_spare.length>=JSONRpcClient.http_max_spare)
delete http;else
JSONRpcClient.http_spare.push(http);};JSONRpcClient.msxmlNames=["MSXML2.XMLHTTP.5.0","MSXML2.XMLHTTP.4.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"];JSONRpcClient.getHTTPRequest=function JSONRpcClient_getHTTPRequest()
{try{JSONRpcClient.httpObjectName="XMLHttpRequest";return new XMLHttpRequest();}catch(e){}
for(var i=0;i<JSONRpcClient.msxmlNames.length;i++){try{JSONRpcClient.httpObjectName=JSONRpcClient.msxmlNames[i];return new ActiveXObject(JSONRpcClient.msxmlNames[i]);}catch(e){}}
JSONRpcClient.httpObjectName=null;throw new JSONRpcClient.Exception(0,"Can't create XMLHttpRequest object");};if(typeof window.jQuery=="undefined"){window.undefined=window.undefined;jQuery=function(a,c){if(a&&typeof a=="function"&&jQuery.fn.ready)
return jQuery(document).ready(a);a=a||jQuery.context||document;if(a.jquery)
return jQuery(jQuery.merge(a,[]));if(c&&c.jquery)
return jQuery(c).find(a);if(window==this)
return new jQuery(a,c);var m=/^[^<]*(<.+>)[^>]*$/.exec(a);if(m)a=jQuery.clean([m[1]]);this.get(a.constructor==Array||a.length&&!a.nodeType&&a[0]!=undefined&&a[0].nodeType?jQuery.merge(a,[]):jQuery.find(a,c));var fn=arguments[arguments.length-1];if(fn&&typeof fn=="function")
this.each(fn);};if(typeof $!="undefined")
jQuery._$=$;var $=jQuery;jQuery.fn=jQuery.prototype={jquery:"1.0.2",size:function(){return this.length;},get:function(num){if(num&&num.constructor==Array){this.length=0;[].push.apply(this,num);return this;}else
return num==undefined?jQuery.merge(this,[]):this[num];},each:function(fn,args){return jQuery.each(this,fn,args);},index:function(obj){var pos=-1;this.each(function(i){if(this==obj)pos=i;});return pos;},attr:function(key,value,type){return key.constructor!=String||value!=undefined?this.each(function(){if(value==undefined)
for(var prop in key)
jQuery.attr(type?this.style:this,prop,key[prop]);else
jQuery.attr(type?this.style:this,key,value);}):jQuery[type||"attr"](this[0],key);},css:function(key,value){return this.attr(key,value,"curCSS");},text:function(e){e=e||this;var t="";for(var j=0;j<e.length;j++){var r=e[j].childNodes;for(var i=0;i<r.length;i++)
if(r[i].nodeType!=8)
t+=r[i].nodeType!=1?r[i].nodeValue:jQuery.fn.text([r[i]]);}
return t;},wrap:function(){var a=jQuery.clean(arguments);return this.each(function(){var b=a[0].cloneNode(true);this.parentNode.insertBefore(b,this);while(b.firstChild)
b=b.firstChild;b.appendChild(this);});},append:function(){return this.domManip(arguments,true,1,function(a){this.appendChild(a);});},prepend:function(){return this.domManip(arguments,true,-1,function(a){this.insertBefore(a,this.firstChild);});},before:function(){return this.domManip(arguments,false,1,function(a){this.parentNode.insertBefore(a,this);});},after:function(){return this.domManip(arguments,false,-1,function(a){this.parentNode.insertBefore(a,this.nextSibling);});},end:function(){return this.get(this.stack.pop());},find:function(t){return this.pushStack(jQuery.map(this,function(a){return jQuery.find(t,a);}),arguments);},clone:function(deep){return this.pushStack(jQuery.map(this,function(a){return a.cloneNode(deep!=undefined?deep:true);}),arguments);},filter:function(t){return this.pushStack(t.constructor==Array&&jQuery.map(this,function(a){for(var i=0;i<t.length;i++)
if(jQuery.filter(t[i],[a]).r.length)
return a;})||t.constructor==Boolean&&(t?this.get():[])||typeof t=="function"&&jQuery.grep(this,t)||jQuery.filter(t,this).r,arguments);},not:function(t){return this.pushStack(t.constructor==String?jQuery.filter(t,this,false).r:jQuery.grep(this,function(a){return a!=t;}),arguments);},add:function(t){return this.pushStack(jQuery.merge(this,t.constructor==String?jQuery.find(t):t.constructor==Array?t:[t]),arguments);},is:function(expr){return expr?jQuery.filter(expr,this).r.length>0:false;},domManip:function(args,table,dir,fn){var clone=this.size()>1;var a=jQuery.clean(args);return this.each(function(){var obj=this;if(table&&this.nodeName.toUpperCase()=="TABLE"&&a[0].nodeName.toUpperCase()!="THEAD"){var tbody=this.getElementsByTagName("tbody");if(!tbody.length){obj=document.createElement("tbody");this.appendChild(obj);}else
obj=tbody[0];}
for(var i=(dir<0?a.length-1:0);i!=(dir<0?dir:a.length);i+=dir){fn.apply(obj,[clone?a[i].cloneNode(true):a[i]]);}});},pushStack:function(a,args){var fn=args&&args[args.length-1];var fn2=args&&args[args.length-2];if(fn&&fn.constructor!=Function)fn=null;if(fn2&&fn2.constructor!=Function)fn2=null;if(!fn){if(!this.stack)this.stack=[];this.stack.push(this.get());this.get(a);}else{var old=this.get();this.get(a);if(fn2&&a.length||!fn2)
this.each(fn2||fn).get(old);else
this.get(old).each(fn);}
return this;}};jQuery.extend=jQuery.fn.extend=function(obj,prop){if(!prop){prop=obj;obj=this;}
for(var i in prop)obj[i]=prop[i];return obj;};jQuery.extend({init:function(){jQuery.initDone=true;jQuery.each(jQuery.macros.axis,function(i,n){jQuery.fn[i]=function(a){var ret=jQuery.map(this,n);if(a&&a.constructor==String)
ret=jQuery.filter(a,ret).r;return this.pushStack(ret,arguments);};});jQuery.each(jQuery.macros.to,function(i,n){jQuery.fn[i]=function(){var a=arguments;return this.each(function(){for(var j=0;j<a.length;j++)
jQuery(a[j])[n](this);});};});jQuery.each(jQuery.macros.each,function(i,n){jQuery.fn[i]=function(){return this.each(n,arguments);};});jQuery.each(jQuery.macros.filter,function(i,n){jQuery.fn[n]=function(num,fn){return this.filter(":"+n+"("+num+")",fn);};});jQuery.each(jQuery.macros.attr,function(i,n){n=n||i;jQuery.fn[i]=function(h){return h==undefined?this.length?this[0][n]:null:this.attr(n,h);};});jQuery.each(jQuery.macros.css,function(i,n){jQuery.fn[n]=function(h){return h==undefined?(this.length?jQuery.css(this[0],n):null):this.css(n,h);};});},each:function(obj,fn,args){if(obj.length==undefined)
for(var i in obj)
fn.apply(obj[i],args||[i,obj[i]]);else
for(var i=0;i<obj.length;i++)
fn.apply(obj[i],args||[i,obj[i]]);return obj;},className:{add:function(o,c){if(jQuery.className.has(o,c))return;o.className+=(o.className?" ":"")+c;},remove:function(o,c){if(!c){o.className="";}else{var classes=o.className.split(" ");for(var i=0;i<classes.length;i++){if(classes[i]==c){classes.splice(i,1);break;}}
o.className=classes.join(' ');}},has:function(e,a){if(e.className!=undefined)
e=e.className;return new RegExp("(^|\\s)"+a+"(\\s|$)").test(e);}},swap:function(e,o,f){for(var i in o){e.style["old"+i]=e.style[i];e.style[i]=o[i];}
f.apply(e,[]);for(var i in o)
e.style[i]=e.style["old"+i];},css:function(e,p){if(p=="height"||p=="width"||p=="dimension"){var old={},oHeight,oWidth,d=["Top","Bottom","Right","Left"];for(var i=0;i<d.length;i++){old["padding"+d[i]]=0;old["border"+d[i]+"Width"]=0;}
jQuery.swap(e,old,function(){if(jQuery.css(e,"display")!="none"){oHeight=e.offsetHeight;oWidth=e.offsetWidth;}else{e=jQuery(e.cloneNode(true)).find(":radio").removeAttr("checked").end().css({visibility:"hidden",position:"absolute",display:"block",right:"0",left:"0"}).appendTo(e.parentNode)[0];var parPos=jQuery.css(e.parentNode,"position");if(parPos==""||parPos=="static")
e.parentNode.style.position="relative";oHeight=e.clientHeight;oWidth=e.clientWidth;if(parPos==""||parPos=="static")
e.parentNode.style.position="static";e.parentNode.removeChild(e);}});if(p=="dimension"){return{"width":oWidth,"height":oHeight};}
return p=="height"?oHeight:oWidth;}
return jQuery.curCSS(e,p);},curCSS:function(elem,prop,force){var ret;if(prop=='opacity'&&jQuery.browser.msie)
return jQuery.attr(elem.style,'opacity');if(!force&&elem.style[prop]){ret=elem.style[prop];}else if(elem.currentStyle){var newProp=prop.replace(/\-(\w)/g,function(m,c){return c.toUpperCase();});ret=elem.currentStyle[prop]||elem.currentStyle[newProp];}else if(document.defaultView&&document.defaultView.getComputedStyle){prop=prop.replace(/([A-Z])/g,"-$1").toLowerCase();var cur=document.defaultView.getComputedStyle(elem,null);if(cur)
ret=cur.getPropertyValue(prop);else if(prop=='display')
ret='none';else
jQuery.swap(elem,{display:'block'},function(){ret=document.defaultView.getComputedStyle(this,null).getPropertyValue(prop);});}
return ret;},clean:function(a){var r=[];for(var i=0;i<a.length;i++){if(a[i].constructor==String){a[i]=jQuery.trim(a[i]);var table="";if(!a[i].indexOf("<thead")||!a[i].indexOf("<tbody")){table="thead";a[i]="<table>"+a[i]+"</table>";}else if(!a[i].indexOf("<tr")){table="tr";a[i]="<table>"+a[i]+"</table>";}else if(!a[i].indexOf("<td")||!a[i].indexOf("<th")){table="td";a[i]="<table><tbody><tr>"+a[i]+"</tr></tbody></table>";}
var div=document.createElement("div");div.innerHTML=a[i];if(table){div=div.firstChild;if(table!="thead")div=div.firstChild;if(table=="td")div=div.firstChild;}
for(var j=0;j<div.childNodes.length;j++)
r.push(div.childNodes[j]);}else if(a[i].jquery||a[i].length&&!a[i].nodeType)
for(var k=0;k<a[i].length;k++)
r.push(a[i][k]);else if(a[i]!==null)
r.push(a[i].nodeType?a[i]:document.createTextNode(a[i].toString()));}
return r;},expr:{"":"m[2]== '*'||a.nodeName.toUpperCase()==m[2].toUpperCase()","#":"a.getAttribute('id')&&a.getAttribute('id')==m[2]",":":{lt:"i<m[3]-0",gt:"i>m[3]-0",nth:"m[3]-0==i",eq:"m[3]-0==i",first:"i==0",last:"i==r.length-1",even:"i%2==0",odd:"i%2","nth-child":"jQuery.sibling(a,m[3]).cur","first-child":"jQuery.sibling(a,0).cur","last-child":"jQuery.sibling(a,0).last","only-child":"jQuery.sibling(a).length==1",parent:"a.childNodes.length",empty:"!a.childNodes.length",contains:"(a.innerText||a.innerHTML).indexOf(m[3])>=0",visible:"a.type!='hidden'&&jQuery.css(a,'display')!='none'&&jQuery.css(a,'visibility')!='hidden'",hidden:"a.type=='hidden'||jQuery.css(a,'display')=='none'||jQuery.css(a,'visibility')=='hidden'",enabled:"!a.disabled",disabled:"a.disabled",checked:"a.checked",selected:"a.selected || jQuery.attr(a, 'selected')",text:"a.type=='text'",radio:"a.type=='radio'",checkbox:"a.type=='checkbox'",file:"a.type=='file'",password:"a.type=='password'",submit:"a.type=='submit'",image:"a.type=='image'",reset:"a.type=='reset'",button:"a.type=='button'",input:"a.nodeName.toLowerCase().match(/input|select|textarea|button/)"},".":"jQuery.className.has(a,m[2])","@":{"=":"z==m[4]","!=":"z!=m[4]","^=":"z && !z.indexOf(m[4])","$=":"z && z.substr(z.length - m[4].length,m[4].length)==m[4]","*=":"z && z.indexOf(m[4])>=0","":"z"},"[":"jQuery.find(m[2],a).length"},token:["\\.\\.|/\\.\\.","a.parentNode",">|/","jQuery.sibling(a.firstChild)","\\+","jQuery.sibling(a).next","~",function(a){var r=[];var s=jQuery.sibling(a);if(s.n>0)
for(var i=s.n;i<s.length;i++)
r.push(s[i]);return r;}],find:function(t,context){if(context&&context.nodeType==undefined)
context=null;context=context||jQuery.context||document;if(t.constructor!=String)return[t];if(!t.indexOf("//")){context=context.documentElement;t=t.substr(2,t.length);}else if(!t.indexOf("/")){context=context.documentElement;t=t.substr(1,t.length);if(t.indexOf("/")>=1)
t=t.substr(t.indexOf("/"),t.length);}
var ret=[context];var done=[];var last=null;while(t.length>0&&last!=t){var r=[];last=t;t=jQuery.trim(t).replace(/^\/\//i,"");var foundToken=false;for(var i=0;i<jQuery.token.length;i+=2){if(foundToken)continue;var re=new RegExp("^("+jQuery.token[i]+")");var m=re.exec(t);if(m){r=ret=jQuery.map(ret,jQuery.token[i+1]);t=jQuery.trim(t.replace(re,""));foundToken=true;}}
if(!foundToken){if(!t.indexOf(",")||!t.indexOf("|")){if(ret[0]==context)ret.shift();done=jQuery.merge(done,ret);r=ret=[context];t=" "+t.substr(1,t.length);}else{var re2=/^([#.]?)([a-z0-9\\*_-]*)/i;var m=re2.exec(t);if(m[1]=="#"){var oid=document.getElementById(m[2]);r=ret=oid?[oid]:[];t=t.replace(re2,"");}else{if(!m[2]||m[1]==".")m[2]="*";for(var i=0;i<ret.length;i++)
r=jQuery.merge(r,m[2]=="*"?jQuery.getAll(ret[i]):ret[i].getElementsByTagName(m[2]));}}}
if(t){var val=jQuery.filter(t,r);ret=r=val.r;t=jQuery.trim(val.t);}}
if(ret&&ret[0]==context)ret.shift();done=jQuery.merge(done,ret);return done;},getAll:function(o,r){r=r||[];var s=o.childNodes;for(var i=0;i<s.length;i++)
if(s[i].nodeType==1){r.push(s[i]);jQuery.getAll(s[i],r);}
return r;},attr:function(elem,name,value){var fix={"for":"htmlFor","class":"className","float":"cssFloat",innerHTML:"innerHTML",className:"className",value:"value",disabled:"disabled",checked:"checked"};if(name=="opacity"&&jQuery.browser.msie&&value!=undefined){elem['zoom']=1;if(value==1)
return elem["filter"]=elem["filter"].replace(/alpha\([^\)]*\)/gi,"");else
return elem["filter"]=elem["filter"].replace(/alpha\([^\)]*\)/gi,"")+"alpha(opacity="+value*100+")";}else if(name=="opacity"&&jQuery.browser.msie){return elem["filter"]?parseFloat(elem["filter"].match(/alpha\(opacity=(.*)\)/)[1])/100:1;}
if(name=="opacity"&&jQuery.browser.mozilla&&value==1)value=0.9999;if(fix[name]){if(value!=undefined)elem[fix[name]]=value;return elem[fix[name]];}else if(value==undefined&&jQuery.browser.msie&&elem.nodeName&&elem.nodeName.toUpperCase()=='FORM'&&(name=='action'||name=='method')){return elem.getAttributeNode(name).nodeValue;}else if(elem.getAttribute!=undefined){if(value!=undefined)elem.setAttribute(name,value);return elem.getAttribute(name,2);}else{name=name.replace(/-([a-z])/ig,function(z,b){return b.toUpperCase();});if(value!=undefined)elem[name]=value;return elem[name];}},parse:["\\[ *(@)S *([!*$^=]*) *('?\"?)(.*?)\\4 *\\]","(\\[)\s*(.*?)\s*\\]","(:)S\\(\"?'?([^\\)]*?)\"?'?\\)","([:.#]*)S"],filter:function(t,r,not){var g=not!==false?jQuery.grep:function(a,f){return jQuery.grep(a,f,true);};while(t&&/^[a-z[({<*:.#]/i.test(t)){var p=jQuery.parse;for(var i=0;i<p.length;i++){var re=new RegExp("^"+p[i].replace("S","([a-z*_-][a-z0-9_-]*)"),"i");var m=re.exec(t);if(m){if(!i)
m=["",m[1],m[3],m[2],m[5]];t=t.replace(re,"");break;}}
if(m[1]==":"&&m[2]=="not")
r=jQuery.filter(m[3],r,false).r;else{var f=jQuery.expr[m[1]];if(f.constructor!=String)
f=jQuery.expr[m[1]][m[2]];eval("f = function(a,i){"+
(m[1]=="@"?"z=jQuery.attr(a,m[3]);":"")+"return "+f+"}");r=g(r,f);}}
return{r:r,t:t};},trim:function(t){return t.replace(/^\s+|\s+$/g,"");},parents:function(elem){var matched=[];var cur=elem.parentNode;while(cur&&cur!=document){matched.push(cur);cur=cur.parentNode;}
return matched;},sibling:function(elem,pos,not){var elems=[];if(elem){var siblings=elem.parentNode.childNodes;for(var i=0;i<siblings.length;i++){if(not===true&&siblings[i]==elem)continue;if(siblings[i].nodeType==1)
elems.push(siblings[i]);if(siblings[i]==elem)
elems.n=elems.length-1;}}
return jQuery.extend(elems,{last:elems.n==elems.length-1,cur:pos=="even"&&elems.n%2==0||pos=="odd"&&elems.n%2||elems[pos]==elem,prev:elems[elems.n-1],next:elems[elems.n+1]});},merge:function(first,second){var result=[];for(var k=0;k<first.length;k++)
result[k]=first[k];for(var i=0;i<second.length;i++){var noCollision=true;for(var j=0;j<first.length;j++)
if(second[i]==first[j])
noCollision=false;if(noCollision)
result.push(second[i]);}
return result;},grep:function(elems,fn,inv){if(fn.constructor==String)
fn=new Function("a","i","return "+fn);var result=[];for(var i=0;i<elems.length;i++)
if(!inv&&fn(elems[i],i)||inv&&!fn(elems[i],i))
result.push(elems[i]);return result;},map:function(elems,fn){if(fn.constructor==String)
fn=new Function("a","return "+fn);var result=[];for(var i=0;i<elems.length;i++){var val=fn(elems[i],i);if(val!==null&&val!=undefined){if(val.constructor!=Array)val=[val];result=jQuery.merge(result,val);}}
return result;},event:{add:function(element,type,handler){if(jQuery.browser.msie&&element.setInterval!=undefined)
element=window;if(!handler.guid)
handler.guid=this.guid++;if(!element.events)
element.events={};var handlers=element.events[type];if(!handlers){handlers=element.events[type]={};if(element["on"+type])
handlers[0]=element["on"+type];}
handlers[handler.guid]=handler;element["on"+type]=this.handle;if(!this.global[type])
this.global[type]=[];this.global[type].push(element);},guid:1,global:{},remove:function(element,type,handler){if(element.events)
if(type&&element.events[type])
if(handler)
delete element.events[type][handler.guid];else
for(var i in element.events[type])
delete element.events[type][i];else
for(var j in element.events)
this.remove(element,j);},trigger:function(type,data,element){data=data||[];if(!element){var g=this.global[type];if(g)
for(var i=0;i<g.length;i++)
this.trigger(type,data,g[i]);}else if(element["on"+type]){data.unshift(this.fix({type:type,target:element}));element["on"+type].apply(element,data);}},handle:function(event){if(typeof jQuery=="undefined")return;event=event||jQuery.event.fix(window.event);if(!event)return;var returnValue=true;var c=copyBean(this.events[event.type]);var args=[].slice.call(arguments,1);args.unshift(event);for(var j in c){if(c[j].apply(this,args)===false){event.preventDefault();event.stopPropagation();returnValue=false;}}
if(jQuery.browser.msie)event.target=event.preventDefault=event.stopPropagation=null;return returnValue;},fix:function(event){if(event){event.preventDefault=function(){this.returnValue=false;};event.stopPropagation=function(){this.cancelBubble=true;};}
return event;}}});new function(){var b=navigator.userAgent.toLowerCase();jQuery.browser={safari:/webkit/.test(b),opera:/opera/.test(b),msie:/msie/.test(b)&&!/opera/.test(b),mozilla:/mozilla/.test(b)&&!/(compatible|webkit)/.test(b)};jQuery.boxModel=!jQuery.browser.msie||document.compatMode=="CSS1Compat";};jQuery.macros={to:{appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after"},css:"width,height,top,left,position,float,overflow,color,background".split(","),filter:["eq","lt","gt","contains"],attr:{val:"value",html:"innerHTML",id:null,title:null,name:null,href:null,src:null,rel:null},axis:{parent:"a.parentNode",ancestors:jQuery.parents,parents:jQuery.parents,next:"jQuery.sibling(a).next",prev:"jQuery.sibling(a).prev",siblings:"jQuery.sibling(a, null, true)",children:"jQuery.sibling(a.firstChild)"},each:{removeAttr:function(key){this.removeAttribute(key);},show:function(){this.style.display=this.oldblock?this.oldblock:"";if(jQuery.css(this,"display")=="none")
this.style.display="block";},hide:function(){this.oldblock=this.oldblock||jQuery.css(this,"display");if(this.oldblock=="none")
this.oldblock="block";this.style.display="none";},toggle:function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"].apply(jQuery(this),arguments);},addClass:function(c){jQuery.className.add(this,c);},removeClass:function(c){jQuery.className.remove(this,c);},toggleClass:function(c){jQuery.className[jQuery.className.has(this,c)?"remove":"add"](this,c);},remove:function(a){if(!a||jQuery.filter(a,[this]).r)
this.parentNode.removeChild(this);},empty:function(){while(this.firstChild)
this.removeChild(this.firstChild);},bind:function(type,fn){if(fn.constructor==String)
fn=new Function("e",(!fn.indexOf(".")?"jQuery(this)":"return ")+fn);jQuery.event.add(this,type,fn);},unbind:function(type,fn){jQuery.event.remove(this,type,fn);},trigger:function(type,data){jQuery.event.trigger(type,data,this);}}};jQuery.init();jQuery.fn.extend({_toggle:jQuery.fn.toggle,toggle:function(a,b){return a&&b&&a.constructor==Function&&b.constructor==Function?this.click(function(e){this.last=this.last==a?b:a;e.preventDefault();return this.last.apply(this,[e])||false;}):this._toggle.apply(this,arguments);},hover:function(f,g){function handleHover(e){var p=(e.type=="mouseover"?e.fromElement:e.toElement)||e.relatedTarget;while(p&&p!=this)try{p=p.parentNode}catch(e){p=this;};if(p==this)return false;return(e.type=="mouseover"?f:g).apply(this,[e]);}
return this.mouseover(handleHover).mouseout(handleHover);},ready:function(f){if(jQuery.isReady)
f.apply(document);else{jQuery.readyList.push(f);}
return this;}});jQuery.extend({isReady:false,readyList:[],ready:function(){if(!jQuery.isReady){jQuery.isReady=true;if(jQuery.readyList){for(var i=0;i<jQuery.readyList.length;i++)
jQuery.readyList[i].apply(document);jQuery.readyList=null;}
if(jQuery.browser.mozilla||jQuery.browser.opera)
document.removeEventListener("DOMContentLoaded",jQuery.ready,false);}}});new function(){var e=("blur,focus,load,resize,scroll,unload,click,dblclick,"+"mousedown,mouseup,mousemove,mouseover,mouseout,change,reset,select,"+"submit,keydown,keypress,keyup,error").split(",");for(var i=0;i<e.length;i++)new function(){var o=e[i];jQuery.fn[o]=function(f){return f?this.bind(o,f):this.trigger(o);};jQuery.fn["un"+o]=function(f){return this.unbind(o,f);};jQuery.fn["one"+o]=function(f){return this.each(function(){var count=0;jQuery.event.add(this,o,function(e){if(count++)return;return f.apply(this,[e]);});});};};if(jQuery.browser.mozilla||jQuery.browser.opera){document.addEventListener("DOMContentLoaded",jQuery.ready,false);}else if(jQuery.browser.msie){document.write("<scr"+"ipt id=__ie_init defer=true "+"src=//:><\/script>");var script=document.getElementById("__ie_init");script.onreadystatechange=function(){if(this.readyState!="complete")return;this.parentNode.removeChild(this);jQuery.ready();};script=null;}else if(jQuery.browser.safari){jQuery.safariTimer=setInterval(function(){if(document.readyState=="loaded"||document.readyState=="complete"){clearInterval(jQuery.safariTimer);jQuery.safariTimer=null;jQuery.ready();}},10);}
jQuery.event.add(window,"load",jQuery.ready);};if(jQuery.browser.msie)jQuery(window).unload(function(){var event=jQuery.event,global=event.global;for(var type in global){var els=global[type],i=els.length;if(i>0)do if(type!='unload')event.remove(els[i-1],type);while(--i);}});jQuery.fn.extend({_show:jQuery.fn.show,show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this._show();},_hide:jQuery.fn.hide,hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this._hide();},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callback){return this.each(function(){var state=jQuery(this).is(":hidden")?"show":"hide";jQuery(this).animate({height:state},speed,callback);});},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,callback){return this.queue(function(){this.curAnim=prop;for(var p in prop){var e=new jQuery.fx(this,jQuery.speed(speed,callback),p);if(prop[p].constructor==Number)
e.custom(e.cur(),prop[p]);else
e[prop[p]](prop);}});},queue:function(type,fn){if(!fn){fn=type;type="fx";}
return this.each(function(){if(!this.queue)
this.queue={};if(!this.queue[type])
this.queue[type]=[];this.queue[type].push(fn);if(this.queue[type].length==1)
fn.apply(this);});}});jQuery.extend({setAuto:function(e,p){if(e.notAuto)return;if(p=="height"&&e.scrollHeight!=parseInt(jQuery.curCSS(e,p)))return;if(p=="width"&&e.scrollWidth!=parseInt(jQuery.curCSS(e,p)))return;var a=e.style[p];var o=jQuery.curCSS(e,p,1);if(p=="height"&&e.scrollHeight!=o||p=="width"&&e.scrollWidth!=o)return;e.style[p]=e.currentStyle?"":"auto";var n=jQuery.curCSS(e,p,1);if(o!=n&&n!="auto"){e.style[p]=a;e.notAuto=true;}},speed:function(s,o){o=o||{};if(o.constructor==Function)
o={complete:o};var ss={slow:600,fast:200};o.duration=(s&&s.constructor==Number?s:ss[s])||400;o.oldComplete=o.complete;o.complete=function(){jQuery.dequeue(this,"fx");if(o.oldComplete&&o.oldComplete.constructor==Function)
o.oldComplete.apply(this);};return o;},queue:{},dequeue:function(elem,type){type=type||"fx";if(elem.queue&&elem.queue[type]){elem.queue[type].shift();var f=elem.queue[type][0];if(f)f.apply(elem);}},fx:function(elem,options,prop){var z=this;z.o={duration:options.duration||400,complete:options.complete,step:options.step};z.el=elem;var y=z.el.style;z.a=function(){if(options.step)
options.step.apply(elem,[z.now]);if(prop=="opacity")
jQuery.attr(y,"opacity",z.now);else if(parseInt(z.now))
y[prop]=parseInt(z.now)+"px";y.display="block";};z.max=function(){return parseFloat(jQuery.css(z.el,prop));};z.cur=function(){var r=parseFloat(jQuery.curCSS(z.el,prop));return r&&r>-10000?r:z.max();};z.custom=function(from,to){z.startTime=(new Date()).getTime();z.now=from;z.a();z.timer=setInterval(function(){z.step(from,to);},13);};z.show=function(p){if(!z.el.orig)z.el.orig={};z.el.orig[prop]=this.cur();if(prop=="opacity")
z.custom(z.el.orig[prop],1);else
z.custom(0,z.el.orig[prop]);if(prop!="opacity")
y[prop]="1px";};z.hide=function(){if(!z.el.orig)z.el.orig={};z.el.orig[prop]=this.cur();z.o.hide=true;z.custom(z.el.orig[prop],0);};if(!z.el.oldOverlay)
z.el.oldOverflow=jQuery.css(z.el,"overflow");y.overflow="hidden";z.step=function(firstNum,lastNum){var t=(new Date()).getTime();if(t>z.o.duration+z.startTime){clearInterval(z.timer);z.timer=null;z.now=lastNum;z.a();z.el.curAnim[prop]=true;var done=true;for(var i in z.el.curAnim)
if(z.el.curAnim[i]!==true)
done=false;if(done){y.overflow=z.el.oldOverflow;if(z.o.hide)
y.display='none';if(z.o.hide){for(var p in z.el.curAnim){if(p=="opacity"&&jQuery.browser.msie)
jQuery.attr(y,p,z.el.orig[p]);else
y[p]=z.el.orig[p]+"px";if(p=='height'||p=='width')
jQuery.setAuto(z.el,p);}}}
if(done&&z.o.complete&&z.o.complete.constructor==Function)
z.o.complete.apply(z.el);}else{var p=(t-this.startTime)/z.o.duration;z.now=((-Math.cos(p*Math.PI)/2)+0.5)*(lastNum-firstNum)+firstNum;z.a();}};}});jQuery.fn.extend({loadIfModified:function(url,params,callback){this.load(url,params,callback,1);},load:function(url,params,callback,ifModified){if(url.constructor==Function)
return this.bind("load",url);callback=callback||function(){};var type="GET";if(params){if(params.constructor==Function){callback=params;params=null;}else{params=jQuery.param(params);type="POST";}}
var self=this;jQuery.ajax(type,url,params,function(res,status){if(status=="success"||!ifModified&&status=="notmodified"){self.html(res.responseText).each(callback,[res.responseText,status]);jQuery("script",self).each(function(){if(this.src)
jQuery.getScript(this.src);else
(window.execScript||self.eval)(this.text||this.textContent||this.innerHTML||"");});}else
callback.apply(self,[res.responseText,status]);},ifModified);return this;},serialize:function(){return jQuery.param(this);}});if(jQuery.browser.msie&&typeof XMLHttpRequest=="undefined")
XMLHttpRequest=function(){return new ActiveXObject(navigator.userAgent.indexOf("MSIE 5")>=0?"Microsoft.XMLHTTP":"Msxml2.XMLHTTP");};new function(){var e="ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess".split(",");for(var i=0;i<e.length;i++)new function(){var o=e[i];jQuery.fn[o]=function(f){return this.bind(o,f);};};};jQuery.extend({get:function(url,data,callback,type,ifModified){if(data.constructor==Function){type=callback;callback=data;data=null;}
if(data)url+=((url.indexOf("?")>-1)?"&":"?")+jQuery.param(data);jQuery.ajax("GET",url,null,function(r,status){if(callback)callback(jQuery.httpData(r,type),status);},ifModified);},getIfModified:function(url,data,callback,type){jQuery.get(url,data,callback,type,1);},getScript:function(url,callback){jQuery.get(url,callback,"script");},getJSON:function(url,data,callback){if(callback)
jQuery.get(url,data,callback,"json");else{jQuery.get(url,data,"json");}},post:function(url,data,callback,type){jQuery.ajax("POST",url,jQuery.param(data),function(r,status){if(callback)callback(jQuery.httpData(r,type),status);});},timeout:0,ajaxTimeout:function(timeout){jQuery.timeout=timeout;},lastModified:{},ajax:function(type,url,data,ret,ifModified){if(!url){ret=type.complete;var success=type.success;var error=type.error;var dataType=type.dataType;var global=typeof type.global=="boolean"?type.global:true;var timeout=typeof type.timeout=="number"?type.timeout:jQuery.timeout;var ifModified=type.ifModified||false;data=type.data;url=type.url;type=type.type;}
if(global&&!jQuery.active++)
jQuery.event.trigger("ajaxStart");var requestDone=false;var xml=new XMLHttpRequest();xml.open(type||"GET",url,true);if(data)
xml.setRequestHeader("Content-Type","application/x-www-form-urlencoded");if(ifModified)
xml.setRequestHeader("If-Modified-Since",jQuery.lastModified[url]||"Thu, 01 Jan 1970 00:00:00 GMT");xml.setRequestHeader("X-Requested-With","XMLHttpRequest");if(xml.overrideMimeType)
xml.setRequestHeader("Connection","close");var onreadystatechange=function(istimeout){if(xml&&(xml.readyState==4||istimeout=="timeout")){requestDone=true;var status=jQuery.httpSuccess(xml)&&istimeout!="timeout"?ifModified&&jQuery.httpNotModified(xml,url)?"notmodified":"success":"error";if(status!="error"){var modRes;try{modRes=xml.getResponseHeader("Last-Modified");}catch(e){}
if(ifModified&&modRes)
jQuery.lastModified[url]=modRes;if(success)
success(jQuery.httpData(xml,dataType),status);if(global)
jQuery.event.trigger("ajaxSuccess");}else{if(error)error(xml,status);if(global)
jQuery.event.trigger("ajaxError");}
if(global)
jQuery.event.trigger("ajaxComplete");if(global&&!--jQuery.active)
jQuery.event.trigger("ajaxStop");if(ret)ret(xml,status);xml.onreadystatechange=function(){};xml=null;}};xml.onreadystatechange=onreadystatechange;if(timeout>0)
setTimeout(function(){if(xml){xml.abort();if(!requestDone)onreadystatechange("timeout");xml=null;}},timeout);xml.send(data);},active:0,httpSuccess:function(r){try{return!r.status&&location.protocol=="file:"||(r.status>=200&&r.status<300)||r.status==304||jQuery.browser.safari&&r.status==undefined;}catch(e){}
return false;},httpNotModified:function(xml,url){try{var xmlRes=xml.getResponseHeader("Last-Modified");return xml.status==304||xmlRes==jQuery.lastModified[url]||jQuery.browser.safari&&xml.status==undefined;}catch(e){}
return false;},httpData:function(r,type){var ct=r.getResponseHeader("content-type");var data=!type&&ct&&ct.indexOf("xml")>=0;data=type=="xml"||data?r.responseXML:r.responseText;if(type=="script")eval.call(window,data);if(type=="json")eval("data = "+data);return data;},param:function(a){var s=[];if(a.constructor==Array||a.jquery){for(var i=0;i<a.length;i++)
s.push(a[i].name+"="+encodeURIComponent(a[i].value));}else{for(var j in a)
s.push(j+"="+encodeURIComponent(a[j]));}
return s.join("&");}});}
(function($){$.fn.tabs=function(initial,settings){if(typeof initial=='object')settings=initial;settings=$.extend({initial:(initial&&typeof initial=='number'&&initial>0)?--initial:0,bookmarkable:$.ajaxHistory?true:false,fxFade:null,fxSlide:null,fxShow:null,fxHide:null,fxSpeed:'normal',fxShowSpeed:null,fxHideSpeed:null,fxAutoHeight:false,onClick:null,onAllClick:null,onHide:null,onShow:null,selectedClass:'tabs-selected',hideClass:'tabs-hide',tabStruct:'div'},settings||{});$.browser.msie6=$.browser.msie&&typeof XMLHttpRequest=='function';var _unFocus=function(){scrollTo(0,0);};return this.each(function(){var container=this;if(location.hash){$('>ul:eq(0)>li>a',this).each(function(i){if(this.hash==location.hash){settings.initial=i;if($.browser.msie){var toShow=$(location.hash);var toShowId=location.hash.replace('#','');toShow.id('');setTimeout(function(){toShow.id(toShowId);},500);}
_unFocus();if($.browser.opera)setTimeout(_unFocus,100);return false;}});}
var tabs=$('>ul:eq(0)>li>a',this);$('>'+settings.tabStruct,this).not(':eq('+settings.initial+')').addClass(settings.hideClass);$('>ul:eq(0)>li:eq('+settings.initial+')',this).addClass(settings.selectedClass);if(settings.fxAutoHeight){var tabsContents=$('>'+settings.tabStruct,container);var _setAutoHeight=function(reset){var heights=$.map(tabsContents.get(),function(el){var h,jq=$(el);if(reset){if($.browser.msie6){el.style.removeExpression('behaviour');el.style.height='';el.minHeight=null;}
h=jq.css({'min-height':''}).height();}else{h=jq.height();}
return h;}).sort(function(a,b){return b-a;});if($.browser.msie6){tabsContents.each(function(){this.minHeight=heights[0]+'px';this.style.setExpression('behaviour','this.style.height = this.minHeight ? this.minHeight : "1px"');});}else{tabsContents.css({'min-height':heights[0]+'px'});}};_setAutoHeight();var cachedWidth=container.offsetWidth;var cachedHeight=container.offsetHeight;var watchFontSize=$('#tabs-watch-font-size').get(0)||$('<span id="tabs-watch-font-size">M</span>').css({display:'block',position:'absolute',visibility:'hidden'}).appendTo(document.body).get(0);var cachedFontSize=watchFontSize.offsetHeight;setInterval(function(){var currentWidth=container.offsetWidth;var currentHeight=container.offsetHeight;var currentFontSize=watchFontSize.offsetHeight;if(currentHeight>cachedHeight||currentWidth!=cachedWidth||currentFontSize!=cachedFontSize){_setAutoHeight((currentWidth>cachedWidth||currentFontSize<cachedFontSize));cachedWidth=currentWidth;cachedHeight=currentHeight;cachedFontSize=currentFontSize;}},50);}
if(settings.bookmarkable){tabs.history();$.ajaxHistory.initialize();}
tabs.bind('activateTab',function(){var hash=this.hash;if($(hash).is(':hidden')){if($.browser.msie){$(this).click();if(settings.bookmarkable){$.ajaxHistory.update(hash);location.hash=hash.replace('#','');}}else if($.browser.safari){var tempForm=$('<form action="'+hash+'"><div><input type="submit" value="h" /></div></form>').get(0);tempForm.submit();$(this).click();if(settings.bookmarkable){$.ajaxHistory.update(hash);}}else{if(settings.bookmarkable){location.hash=hash.replace('#','');}else{$(this).click();}}}});tabs.click(function(e){var onAllClick=settings.onAllClick;var tabBody=$(this.hash);var clicked=this;if(typeof onAllClick=='function'&&tabBody.size()>0){setTimeout(function(){onAllClick(clicked,tabBody[0]);},0);}
if(!$(this.parentNode).is('.'+settings.selectedClass)){var toShow=$(this.hash);if(toShow.size()>0){if(settings.bookmarkable&&$.browser.msie){var toShowId=this.hash.replace('#','');toShow.id('');setTimeout(function(){toShow.id(toShowId);},0);}
clicked=this;var toHide=$('>'+settings.tabStruct+':visible',container);var showAnim={},hideAnim={};var showSpeed,hideSpeed;if(settings.fxSlide||settings.fxFade){if(settings.fxSlide){showAnim['height']='show';hideAnim['height']='hide';}
if(settings.fxFade){showAnim['opacity']='show';hideAnim['opacity']='hide';}
showSpeed=hideSpeed=settings.fxSpeed;}else{if(settings.fxShow){showAnim=settings.fxShow;showSpeed=settings.fxShowSpeed||settings.fxSpeed;}else{showAnim['opacity']='show';showSpeed=settings.bookmarkable?50:1;}
if(settings.fxHide){hideAnim=settings.fxHide;hideSpeed=settings.fxHideSpeed||settings.fxSpeed;}else{hideAnim['opacity']='hide';hideSpeed=settings.bookmarkable?50:1;}}
var onClick=settings.onClick,onHide=settings.onHide,onShow=settings.onShow;if(typeof onClick=='function'){setTimeout(function(){onClick(clicked,toShow[0],toHide[0]);},0);}
toHide.animate(hideAnim,hideSpeed,function(){$(clicked.parentNode).addClass(settings.selectedClass).siblings().removeClass(settings.selectedClass);if(typeof onHide=='function'){onHide(clicked,toShow[0],toHide[0]);}
toShow.removeClass(settings.hideClass).animate(showAnim,showSpeed,function(){if($.browser.msie){toHide[0].style.filter='';toHide.addClass(settings.hideClass).css({display:'',overflow:'',height:''});}
toShow.css({height:'',overflow:''});if(typeof onShow=='function'){onShow(clicked,toShow[0],toHide[0]);}});});}else{alert('There is no such container.');}}
var scrollX=window.pageXOffset||document.documentElement&&document.documentElement.scrollLeft||document.body.scrollLeft||0;var scrollY=window.pageYOffset||document.documentElement&&document.documentElement.scrollTop||document.body.scrollTop||0;setTimeout(function(){window.scrollTo(scrollX,scrollY);},0);this.blur();return settings.bookmarkable;});});};$.fn.triggerTab=function(tabIndex){return this.each(function(){var i=tabIndex&&tabIndex>0&&tabIndex-1||0;$('>ul:eq(0)>li>a',this).eq(i).trigger('activateTab');});};$.fn.triggerLastTab=function(){return this.each(function(){var i=$('>ul:eq(0)>li>a',this).size();$(this).triggerTab(i);});};$.fn.resetTabs=function(settings){settings=$.extend({bookmarkable:$.ajaxHistory?true:false,fxFade:null,fxSlide:null,fxShow:null,fxHide:null,fxSpeed:'normal',fxShowSpeed:null,fxHideSpeed:null,fxAutoHeight:false,onClick:null,onAllClick:null,onHide:null,onShow:null,selectedClass:'tabs-selected',hideClass:'tabs-hide',tabStruct:'div'},settings||{});return this.each(function(){$('>ul:eq(0)>li>a',this).unclick();$('>ul:eq(0)>li>a',this).unbind('activateTab');$('>ul:eq(0)>li',this).removeClass(settings.selectedClass);$('>'+settings.tabStruct,this).removeClass(settings.hideClass);$('>'+settings.tabStruct,this).removeAttr('style');});};})(jQuery);jQuery.fn.deserialize=function(d){var data=d;var self=this;if(typeof d=='undefined'){return self;}
if(d.constructor==Array){data={};for(var i=0;i<d.length;i++){if(typeof data[d[i].name]!='undefined'){if(data[d[i].name].constructor!=Array){data[d[i].name]=[data[d[i].name],d[i].value];}else{data[d[i].name].push(d[i].value);}}else{data[d[i].name]=d[i].value;}}}
return this.each(function(){var p=this.name;var v=((p&&typeof data[p]!='undefined')?((data[p].constructor==Array)?data[p]:[data[p]]):[]);switch(this.type||this.tagName.toLowerCase()){case"radio":case"checkbox":this.checked=false;for(var i=0;i<v.length;i++){this.checked|=(this.value!=''&&v[i].toString()==this.value);}
break;case"select":for(var i=0;i<this.options.length;i++){this.options[i].selected=false;for(var j=0;j<v.length;j++){this.options[i].selected|=(this.options[i].value!=''&&this.options[i].value==v[j]);}}
break;case"button":case"submit":this.value=v.length>0?v.join(','):this.value;break;default:this.value=v.join(',');}});};jQuery.fn.serialize=function(){var a=[];var ok={INPUT:true,TEXTAREA:true,OPTION:true,SELECT:true};this.each(function(){var par=this.parentNode;var p=par.nodeName.toUpperCase();var n=this.name||p=='OPTGROUP'&&par.parentNode.name||p=='SELECT'&&par.name||this.id;if(!n||this.disabled||this.type=='reset'||(this.type=='checkbox'||this.type=='radio')&&!this.checked||!ok[this.nodeName.toUpperCase()]||(this.type=='submit'||this.type=='image')&&this.form.clicked!=this||(p=='SELECT'||p=='OPTGROUP')&&!this.selected)return;if(this.type=='image'&&this.form.clicked_x)
return a.push({name:this.name+'_x',value:this.form.clicked_x},{name:this.name+'_y',value:this.form.clicked_y});a.push({name:n,value:this.value});});this.vars=a;return this;};jQuery.fn.Cloneable=function(config){config=config||{};config.onclone=config.onclone||function(){};return this.each(function(){if(this.isCloneable){return;}
var archetype=this;archetype.clone=function(){var clone=this.cloneNode(true);$(clone).removeAttr('isCloneable');$(clone).removeClass('cloneable').addClass('clone');$(clone).find('.nonCloneable').remove();if(archetype.parentNode){$(archetype.parentNode).append(clone);}
config.onclone.call(clone);return clone;};config.cloner&&$(config.cloner).click(function(){return archetype.clone();});$("#portalContent").add("window").unload(function(){archetype.clone=null;config.cloner&&$(config.cloner).unbind();});this.isCloneable=true;});};Object.getIndex=function(element){if($(element).attr("class").match("clone")){return $(element).parent().children().index($(element).get(0))-1;}else{return $(element).parents(".clone").parent().children().index($(element).parents(".clone").get(0))-1;}}
jQuery.synchronizer={onchange:function(){var query='[@name="{0}"]'.supplant(this.name);$(this).siblings().filter(query).write(this.syncConfig.ds);return true;}};jQuery.fn.synchronize=function(config){if(!config.dataSource){throw new Error('dataSource not specified');}
config.except=(config.except||'')+'>*';return this.find('[@data]:not({0})'.supplant(config.except),function(){if(this.isSynchronized){return;}
this.syncConfig={pattern:config.pattern&&(config.pattern=='incoming'||config.pattern=='outgoing')?config.pattern:'duplex',ds:config.dataSource};if(config.pattern!='outgoing'){$(this).read(this.syncConfig.ds);$(this).trigger('change');}
if(config.pattern!='incoming'){new Aspect(this).after('onchange',$.synchronizer.onchange);}
this.isSynchronized=true;});};jQuery.fn.unsynchronize=function(){return this.each(function(){delete this.isSynchronized;$(this).unchange($.synchronizer.onchange);delete this.syncConfig;});};jQuery.fn.write=function(dataSource){var data={};this.each(function(item){data[this.name]=undefined;});this.serialize().vars.forEach(function(item){if(typeof data[item.name]!="undefined"){if(data[item.name]instanceof Array){data[item.name].push(item.value);}else{data[item.name]=[data[item.name],item.value];}}else{data[item.name]=item.value;}});Object.merge(data,dataSource,true);return this;};jQuery.fn.read=function(dataSource){if(!dataSource){return this;}
this.filter('[@name]',function(){var dataChain=this.getAttribute('data');$(this).deserialize(Object.digest(dataChain,dataSource,true).scope);});var re_attribute=/\[@(\w_$)+\]/;var re_nodeValue=/:(\w_$)+/;return this.filter('[@data]',function(){var data=this.getAttribute('data').split(/, ?/).forEach(function(data){if(data.match(re_attribute)){var attribute=data.match(re_attribute)[0];var chain=data.replace(re_attribute);$(this).attr(attribute,Object.digest(chain,dataSource));}
if(data.match(re_nodeValue)){var chain=data.replace(/^:/,'');this.innerHTML=Object.digest(chain,dataSource);}});});};jQuery.fn.synchroload=function(url,config){var collection=this;this.load(url,function(){collection.synchronize(config);});};jQuery.fn.delegate=function(config){var vars=this.serialize().vars;var value;if(vars.length==1){value=vars[0].value;}else if(vars.length>1){value=vars;}
config.resolver.call(this,value);var trigger=this;return this.click(function(){config.resolver.call(trigger,this.value);});};if(typeof YAHOO=="undefined"||!YAHOO){var YAHOO={};}
YAHOO.namespace=function(){var a=arguments,o=null,i,j,d;for(i=0;i<a.length;i=i+1){d=a[i].split(".");o=YAHOO;for(j=(d[0]=="YAHOO")?1:0;j<d.length;j=j+1){o[d[j]]=o[d[j]]||{};o=o[d[j]];}}
return o;};YAHOO.log=function(msg,cat,src){var l=YAHOO.widget.Logger;if(l&&l.log){return l.log(msg,cat,src);}else{return false;}};YAHOO.register=function(name,mainClass,data){var mods=YAHOO.env.modules;if(!mods[name]){mods[name]={versions:[],builds:[]};}
var m=mods[name],v=data.version,b=data.build,ls=YAHOO.env.listeners;m.name=name;m.version=v;m.build=b;m.versions.push(v);m.builds.push(b);m.mainClass=mainClass;for(var i=0;i<ls.length;i=i+1){ls[i](m);}
if(mainClass){mainClass.VERSION=v;mainClass.BUILD=b;}else{YAHOO.log("mainClass is undefined for module "+name,"warn");}};YAHOO.env=YAHOO.env||{modules:[],listeners:[]};YAHOO.env.getVersion=function(name){return YAHOO.env.modules[name]||null;};YAHOO.env.ua=function(){var o={ie:0,opera:0,gecko:0,webkit:0,mobile:null,air:0};var ua=navigator.userAgent,m;if((/KHTML/).test(ua)){o.webkit=1;}
m=ua.match(/AppleWebKit\/([^\s]*)/);if(m&&m[1]){o.webkit=parseFloat(m[1]);if(/ Mobile\//.test(ua)){o.mobile="Apple";}else{m=ua.match(/NokiaN[^\/]*/);if(m){o.mobile=m[0];}}
m=ua.match(/AdobeAIR\/([^\s]*)/);if(m){o.air=m[0];}}
if(!o.webkit){m=ua.match(/Opera[\s\/]([^\s]*)/);if(m&&m[1]){o.opera=parseFloat(m[1]);m=ua.match(/Opera Mini[^;]*/);if(m){o.mobile=m[0];}}else{m=ua.match(/MSIE\s([^;]*)/);if(m&&m[1]){o.ie=parseFloat(m[1]);}else{m=ua.match(/Gecko\/([^\s]*)/);if(m){o.gecko=1;m=ua.match(/rv:([^\s\)]*)/);if(m&&m[1]){o.gecko=parseFloat(m[1]);}}}}}
return o;}();(function(){YAHOO.namespace("util","widget","example");if("undefined"!==typeof YAHOO_config){var l=YAHOO_config.listener,ls=YAHOO.env.listeners,unique=true,i;if(l){for(i=0;i<ls.length;i=i+1){if(ls[i]==l){unique=false;break;}}
if(unique){ls.push(l);}}}})();YAHOO.lang=YAHOO.lang||{};(function(){var L=YAHOO.lang,ADD=["toString","valueOf"],OB={isArray:function(o){if(o){return L.isNumber(o.length)&&L.isFunction(o.splice);}
return false;},isBoolean:function(o){return typeof o==='boolean';},isFunction:function(o){return typeof o==='function';},isNull:function(o){return o===null;},isNumber:function(o){return typeof o==='number'&&isFinite(o);},isObject:function(o){return(o&&(typeof o==='object'||L.isFunction(o)))||false;},isString:function(o){return typeof o==='string';},isUndefined:function(o){return typeof o==='undefined';},_IEEnumFix:(YAHOO.env.ua.ie)?function(r,s){for(var i=0;i<ADD.length;i=i+1){var fname=ADD[i],f=s[fname];if(L.isFunction(f)&&f!=Object.prototype[fname]){r[fname]=f;}}}:function(){},extend:function(subc,superc,overrides){if(!superc||!subc){throw new Error("extend failed, please check that "+"all dependencies are included.");}
var F=function(){};F.prototype=superc.prototype;subc.prototype=new F();subc.prototype.constructor=subc;subc.superclass=superc.prototype;if(superc.prototype.constructor==Object.prototype.constructor){superc.prototype.constructor=superc;}
if(overrides){for(var i in overrides){if(L.hasOwnProperty(overrides,i)){subc.prototype[i]=overrides[i];}}
L._IEEnumFix(subc.prototype,overrides);}},augmentObject:function(r,s){if(!s||!r){throw new Error("Absorb failed, verify dependencies.");}
var a=arguments,i,p,override=a[2];if(override&&override!==true){for(i=2;i<a.length;i=i+1){r[a[i]]=s[a[i]];}}else{for(p in s){if(override||!(p in r)){r[p]=s[p];}}
L._IEEnumFix(r,s);}},augmentProto:function(r,s){if(!s||!r){throw new Error("Augment failed, verify dependencies.");}
var a=[r.prototype,s.prototype];for(var i=2;i<arguments.length;i=i+1){a.push(arguments[i]);}
L.augmentObject.apply(this,a);},dump:function(o,d){var i,len,s=[],OBJ="{...}",FUN="f(){...}",COMMA=', ',ARROW=' => ';if(!L.isObject(o)){return o+"";}else if(o instanceof Date||("nodeType"in o&&"tagName"in o)){return o;}else if(L.isFunction(o)){return FUN;}
d=(L.isNumber(d))?d:3;if(L.isArray(o)){s.push("[");for(i=0,len=o.length;i<len;i=i+1){if(L.isObject(o[i])){s.push((d>0)?L.dump(o[i],d-1):OBJ);}else{s.push(o[i]);}
s.push(COMMA);}
if(s.length>1){s.pop();}
s.push("]");}else{s.push("{");for(i in o){if(L.hasOwnProperty(o,i)){s.push(i+ARROW);if(L.isObject(o[i])){s.push((d>0)?L.dump(o[i],d-1):OBJ);}else{s.push(o[i]);}
s.push(COMMA);}}
if(s.length>1){s.pop();}
s.push("}");}
return s.join("");},substitute:function(s,o,f){var i,j,k,key,v,meta,saved=[],token,DUMP='dump',SPACE=' ',LBRACE='{',RBRACE='}';for(;;){i=s.lastIndexOf(LBRACE);if(i<0){break;}
j=s.indexOf(RBRACE,i);if(i+1>=j){break;}
token=s.substring(i+1,j);key=token;meta=null;k=key.indexOf(SPACE);if(k>-1){meta=key.substring(k+1);key=key.substring(0,k);}
v=o[key];if(f){v=f(key,v,meta);}
if(L.isObject(v)){if(L.isArray(v)){v=L.dump(v,parseInt(meta,10));}else{meta=meta||"";var dump=meta.indexOf(DUMP);if(dump>-1){meta=meta.substring(4);}
if(v.toString===Object.prototype.toString||dump>-1){v=L.dump(v,parseInt(meta,10));}else{v=v.toString();}}}else if(!L.isString(v)&&!L.isNumber(v)){v="~-"+saved.length+"-~";saved[saved.length]=token;}
s=s.substring(0,i)+v+s.substring(j+1);}
for(i=saved.length-1;i>=0;i=i-1){s=s.replace(new RegExp("~-"+i+"-~"),"{"+saved[i]+"}","g");}
return s;},trim:function(s){try{return s.replace(/^\s+|\s+$/g,"");}catch(e){return s;}},merge:function(){var o={},a=arguments;for(var i=0,l=a.length;i<l;i=i+1){L.augmentObject(o,a[i],true);}
return o;},later:function(when,o,fn,data,periodic){when=when||0;o=o||{};var m=fn,d=data,f,r;if(L.isString(fn)){m=o[fn];}
if(!m){throw new TypeError("method undefined");}
if(!L.isArray(d)){d=[data];}
f=function(){m.apply(o,d);};r=(periodic)?setInterval(f,when):setTimeout(f,when);return{interval:periodic,cancel:function(){if(this.interval){clearInterval(r);}else{clearTimeout(r);}}};},isValue:function(o){return(L.isObject(o)||L.isString(o)||L.isNumber(o)||L.isBoolean(o));}};L.hasOwnProperty=(Object.prototype.hasOwnProperty)?function(o,prop){return o&&o.hasOwnProperty(prop);}:function(o,prop){return!L.isUndefined(o[prop])&&o.constructor.prototype[prop]!==o[prop];};OB.augmentObject(L,OB,true);YAHOO.util.Lang=L;L.augment=L.augmentProto;YAHOO.augment=L.augmentProto;YAHOO.extend=L.extend;})();YAHOO.register("yahoo",YAHOO,{version:"2.5.2",build:"1076"});YAHOO.util.CustomEvent=function(type,oScope,silent,signature){this.type=type;this.scope=oScope||window;this.silent=silent;this.signature=signature||YAHOO.util.CustomEvent.LIST;this.subscribers=[];if(!this.silent){}
var onsubscribeType="_YUICEOnSubscribe";if(type!==onsubscribeType){this.subscribeEvent=new YAHOO.util.CustomEvent(onsubscribeType,this,true);}
this.lastError=null;};YAHOO.util.CustomEvent.LIST=0;YAHOO.util.CustomEvent.FLAT=1;YAHOO.util.CustomEvent.prototype={subscribe:function(fn,obj,override){if(!fn){throw new Error("Invalid callback for subscriber to '"+this.type+"'");}
if(this.subscribeEvent){this.subscribeEvent.fire(fn,obj,override);}
this.subscribers.push(new YAHOO.util.Subscriber(fn,obj,override));},unsubscribe:function(fn,obj){if(!fn){return this.unsubscribeAll();}
var found=false;for(var i=0,len=this.subscribers.length;i<len;++i){var s=this.subscribers[i];if(s&&s.contains(fn,obj)){this._delete(i);found=true;}}
return found;},fire:function(){this.lastError=null;var errors=[],len=this.subscribers.length;if(!len&&this.silent){return true;}
var args=[].slice.call(arguments,0),ret=true,i,rebuild=false;if(!this.silent){}
var subs=this.subscribers.slice(),throwErrors=YAHOO.util.Event.throwErrors;for(i=0;i<len;++i){var s=subs[i];if(!s){rebuild=true;}else{if(!this.silent){}
var scope=s.getScope(this.scope);if(this.signature==YAHOO.util.CustomEvent.FLAT){var param=null;if(args.length>0){param=args[0];}
try{ret=s.fn.call(scope,param,s.obj);}catch(e){this.lastError=e;if(throwErrors){throw e;}}}else{try{ret=s.fn.call(scope,this.type,args,s.obj);}catch(ex){this.lastError=ex;if(throwErrors){throw ex;}}}
if(false===ret){if(!this.silent){}
break;}}}
return(ret!==false);},unsubscribeAll:function(){for(var i=this.subscribers.length-1;i>-1;i--){this._delete(i);}
this.subscribers=[];return i;},_delete:function(index){var s=this.subscribers[index];if(s){delete s.fn;delete s.obj;}
this.subscribers.splice(index,1);},toString:function(){return"CustomEvent: "+"'"+this.type+"', "+"scope: "+this.scope;}};YAHOO.util.Subscriber=function(fn,obj,override){this.fn=fn;this.obj=YAHOO.lang.isUndefined(obj)?null:obj;this.override=override;};YAHOO.util.Subscriber.prototype.getScope=function(defaultScope){if(this.override){if(this.override===true){return this.obj;}else{return this.override;}}
return defaultScope;};YAHOO.util.Subscriber.prototype.contains=function(fn,obj){if(obj){return(this.fn==fn&&this.obj==obj);}else{return(this.fn==fn);}};YAHOO.util.Subscriber.prototype.toString=function(){return"Subscriber { obj: "+this.obj+", override: "+(this.override||"no")+" }";};if(!YAHOO.util.Event){YAHOO.util.Event=function(){var loadComplete=false;var listeners=[];var unloadListeners=[];var legacyEvents=[];var legacyHandlers=[];var retryCount=0;var onAvailStack=[];var legacyMap=[];var counter=0;var webkitKeymap={63232:38,63233:40,63234:37,63235:39,63276:33,63277:34,25:9};return{POLL_RETRYS:2000,POLL_INTERVAL:20,EL:0,TYPE:1,FN:2,WFN:3,UNLOAD_OBJ:3,ADJ_SCOPE:4,OBJ:5,OVERRIDE:6,lastError:null,isSafari:YAHOO.env.ua.webkit,webkit:YAHOO.env.ua.webkit,isIE:YAHOO.env.ua.ie,_interval:null,_dri:null,DOMReady:false,throwErrors:false,startInterval:function(){if(!this._interval){var self=this;var callback=function(){self._tryPreloadAttach();};this._interval=setInterval(callback,this.POLL_INTERVAL);}},onAvailable:function(p_id,p_fn,p_obj,p_override,checkContent){var a=(YAHOO.lang.isString(p_id))?[p_id]:p_id;for(var i=0;i<a.length;i=i+1){onAvailStack.push({id:a[i],fn:p_fn,obj:p_obj,override:p_override,checkReady:checkContent});}
retryCount=this.POLL_RETRYS;this.startInterval();},onContentReady:function(p_id,p_fn,p_obj,p_override){this.onAvailable(p_id,p_fn,p_obj,p_override,true);},onDOMReady:function(p_fn,p_obj,p_override){if(this.DOMReady){setTimeout(function(){var s=window;if(p_override){if(p_override===true){s=p_obj;}else{s=p_override;}}
p_fn.call(s,"DOMReady",[],p_obj);},0);}else{this.DOMReadyEvent.subscribe(p_fn,p_obj,p_override);}},addListener:function(el,sType,fn,obj,override){if(!fn||!fn.call){return false;}
if(this._isValidCollection(el)){var ok=true;for(var i=0,len=el.length;i<len;++i){ok=this.on(el[i],sType,fn,obj,override)&&ok;}
return ok;}else if(YAHOO.lang.isString(el)){var oEl=this.getEl(el);if(oEl){el=oEl;}else{this.onAvailable(el,function(){YAHOO.util.Event.on(el,sType,fn,obj,override);});return true;}}
if(!el){return false;}
if("unload"==sType&&obj!==this){unloadListeners[unloadListeners.length]=[el,sType,fn,obj,override];return true;}
var scope=el;if(override){if(override===true){scope=obj;}else{scope=override;}}
var wrappedFn=function(e){return fn.call(scope,YAHOO.util.Event.getEvent(e,el),obj);};var li=[el,sType,fn,wrappedFn,scope,obj,override];var index=listeners.length;listeners[index]=li;if(this.useLegacyEvent(el,sType)){var legacyIndex=this.getLegacyIndex(el,sType);if(legacyIndex==-1||el!=legacyEvents[legacyIndex][0]){legacyIndex=legacyEvents.length;legacyMap[el.id+sType]=legacyIndex;legacyEvents[legacyIndex]=[el,sType,el["on"+sType]];legacyHandlers[legacyIndex]=[];el["on"+sType]=function(e){YAHOO.util.Event.fireLegacyEvent(YAHOO.util.Event.getEvent(e),legacyIndex);};}
legacyHandlers[legacyIndex].push(li);}else{try{this._simpleAdd(el,sType,wrappedFn,false);}catch(ex){this.lastError=ex;this.removeListener(el,sType,fn);return false;}}
return true;},fireLegacyEvent:function(e,legacyIndex){var ok=true,le,lh,li,scope,ret;lh=legacyHandlers[legacyIndex].slice();for(var i=0,len=lh.length;i<len;++i){li=lh[i];if(li&&li[this.WFN]){scope=li[this.ADJ_SCOPE];ret=li[this.WFN].call(scope,e);ok=(ok&&ret);}}
le=legacyEvents[legacyIndex];if(le&&le[2]){le[2](e);}
return ok;},getLegacyIndex:function(el,sType){var key=this.generateId(el)+sType;if(typeof legacyMap[key]=="undefined"){return-1;}else{return legacyMap[key];}},useLegacyEvent:function(el,sType){if(this.webkit&&("click"==sType||"dblclick"==sType)){var v=parseInt(this.webkit,10);if(!isNaN(v)&&v<418){return true;}}
return false;},removeListener:function(el,sType,fn){var i,len,li;if(typeof el=="string"){el=this.getEl(el);}else if(this._isValidCollection(el)){var ok=true;for(i=el.length-1;i>-1;i--){ok=(this.removeListener(el[i],sType,fn)&&ok);}
return ok;}
if(!fn||!fn.call){return this.purgeElement(el,false,sType);}
if("unload"==sType){for(i=unloadListeners.length-1;i>-1;i--){li=unloadListeners[i];if(li&&li[0]==el&&li[1]==sType&&li[2]==fn){unloadListeners.splice(i,1);return true;}}
return false;}
var cacheItem=null;var index=arguments[3];if("undefined"===typeof index){index=this._getCacheIndex(el,sType,fn);}
if(index>=0){cacheItem=listeners[index];}
if(!el||!cacheItem){return false;}
if(this.useLegacyEvent(el,sType)){var legacyIndex=this.getLegacyIndex(el,sType);var llist=legacyHandlers[legacyIndex];if(llist){for(i=0,len=llist.length;i<len;++i){li=llist[i];if(li&&li[this.EL]==el&&li[this.TYPE]==sType&&li[this.FN]==fn){llist.splice(i,1);break;}}}}else{try{this._simpleRemove(el,sType,cacheItem[this.WFN],false);}catch(ex){this.lastError=ex;return false;}}
delete listeners[index][this.WFN];delete listeners[index][this.FN];listeners.splice(index,1);return true;},getTarget:function(ev,resolveTextNode){var t=ev.target||ev.srcElement;return this.resolveTextNode(t);},resolveTextNode:function(n){try{if(n&&3==n.nodeType){return n.parentNode;}}catch(e){}
return n;},getPageX:function(ev){var x=ev.pageX;if(!x&&0!==x){x=ev.clientX||0;if(this.isIE){x+=this._getScrollLeft();}}
return x;},getPageY:function(ev){var y=ev.pageY;if(!y&&0!==y){y=ev.clientY||0;if(this.isIE){y+=this._getScrollTop();}}
return y;},getXY:function(ev){return[this.getPageX(ev),this.getPageY(ev)];},getRelatedTarget:function(ev){var t=ev.relatedTarget;if(!t){if(ev.type=="mouseout"){t=ev.toElement;}else if(ev.type=="mouseover"){t=ev.fromElement;}}
return this.resolveTextNode(t);},getTime:function(ev){if(!ev.time){var t=new Date().getTime();try{ev.time=t;}catch(ex){this.lastError=ex;return t;}}
return ev.time;},stopEvent:function(ev){this.stopPropagation(ev);this.preventDefault(ev);},stopPropagation:function(ev){if(ev.stopPropagation){ev.stopPropagation();}else{ev.cancelBubble=true;}},preventDefault:function(ev){if(ev.preventDefault){ev.preventDefault();}else{ev.returnValue=false;}},getEvent:function(e,boundEl){var ev=e||window.event;if(!ev){var c=this.getEvent.caller;while(c){ev=c.arguments[0];if(ev&&Event==ev.constructor){break;}
c=c.caller;}}
return ev;},getCharCode:function(ev){var code=ev.keyCode||ev.charCode||0;if(YAHOO.env.ua.webkit&&(code in webkitKeymap)){code=webkitKeymap[code];}
return code;},_getCacheIndex:function(el,sType,fn){for(var i=0,l=listeners.length;i<l;i=i+1){var li=listeners[i];if(li&&li[this.FN]==fn&&li[this.EL]==el&&li[this.TYPE]==sType){return i;}}
return-1;},generateId:function(el){var id=el.id;if(!id){id="yuievtautoid-"+counter;++counter;el.id=id;}
return id;},_isValidCollection:function(o){try{return(o&&typeof o!=="string"&&o.length&&!o.tagName&&!o.alert&&typeof o[0]!=="undefined");}catch(ex){return false;}},elCache:{},getEl:function(id){return(typeof id==="string")?document.getElementById(id):id;},clearCache:function(){},DOMReadyEvent:new YAHOO.util.CustomEvent("DOMReady",this),_load:function(e){if(!loadComplete){loadComplete=true;var EU=YAHOO.util.Event;EU._ready();EU._tryPreloadAttach();}},_ready:function(e){var EU=YAHOO.util.Event;if(!EU.DOMReady){EU.DOMReady=true;EU.DOMReadyEvent.fire();EU._simpleRemove(document,"DOMContentLoaded",EU._ready);}},_tryPreloadAttach:function(){if(onAvailStack.length===0){retryCount=0;clearInterval(this._interval);this._interval=null;return;}
if(this.locked){return;}
if(this.isIE){if(!this.DOMReady){this.startInterval();return;}}
this.locked=true;var tryAgain=!loadComplete;if(!tryAgain){tryAgain=(retryCount>0&&onAvailStack.length>0);}
var notAvail=[];var executeItem=function(el,item){var scope=el;if(item.override){if(item.override===true){scope=item.obj;}else{scope=item.override;}}
item.fn.call(scope,item.obj);};var i,len,item,el,ready=[];for(i=0,len=onAvailStack.length;i<len;i=i+1){item=onAvailStack[i];if(item){el=this.getEl(item.id);if(el){if(item.checkReady){if(loadComplete||el.nextSibling||!tryAgain){ready.push(item);onAvailStack[i]=null;}}else{executeItem(el,item);onAvailStack[i]=null;}}else{notAvail.push(item);}}}
for(i=0,len=ready.length;i<len;i=i+1){item=ready[i];executeItem(this.getEl(item.id),item);}
retryCount--;if(tryAgain){for(i=onAvailStack.length-1;i>-1;i--){item=onAvailStack[i];if(!item||!item.id){onAvailStack.splice(i,1);}}
this.startInterval();}else{clearInterval(this._interval);this._interval=null;}
this.locked=false;},purgeElement:function(el,recurse,sType){var oEl=(YAHOO.lang.isString(el))?this.getEl(el):el;var elListeners=this.getListeners(oEl,sType),i,len;if(elListeners){for(i=elListeners.length-1;i>-1;i--){var l=elListeners[i];this.removeListener(oEl,l.type,l.fn);}}
if(recurse&&oEl&&oEl.childNodes){for(i=0,len=oEl.childNodes.length;i<len;++i){this.purgeElement(oEl.childNodes[i],recurse,sType);}}},getListeners:function(el,sType){var results=[],searchLists;if(!sType){searchLists=[listeners,unloadListeners];}else if(sType==="unload"){searchLists=[unloadListeners];}else{searchLists=[listeners];}
var oEl=(YAHOO.lang.isString(el))?this.getEl(el):el;for(var j=0;j<searchLists.length;j=j+1){var searchList=searchLists[j];if(searchList){for(var i=0,len=searchList.length;i<len;++i){var l=searchList[i];if(l&&l[this.EL]===oEl&&(!sType||sType===l[this.TYPE])){results.push({type:l[this.TYPE],fn:l[this.FN],obj:l[this.OBJ],adjust:l[this.OVERRIDE],scope:l[this.ADJ_SCOPE],index:i});}}}}
return(results.length)?results:null;},_unload:function(e){var EU=YAHOO.util.Event,i,j,l,len,index,ul=unloadListeners.slice();for(i=0,len=unloadListeners.length;i<len;++i){l=ul[i];if(l){var scope=window;if(l[EU.ADJ_SCOPE]){if(l[EU.ADJ_SCOPE]===true){scope=l[EU.UNLOAD_OBJ];}else{scope=l[EU.ADJ_SCOPE];}}
l[EU.FN].call(scope,EU.getEvent(e,l[EU.EL]),l[EU.UNLOAD_OBJ]);ul[i]=null;l=null;scope=null;}}
unloadListeners=null;if(listeners){for(j=listeners.length-1;j>-1;j--){l=listeners[j];if(l){EU.removeListener(l[EU.EL],l[EU.TYPE],l[EU.FN],j);}}
l=null;}
legacyEvents=null;EU._simpleRemove(window,"unload",EU._unload);},_getScrollLeft:function(){return this._getScroll()[1];},_getScrollTop:function(){return this._getScroll()[0];},_getScroll:function(){var dd=document.documentElement,db=document.body;if(dd&&(dd.scrollTop||dd.scrollLeft)){return[dd.scrollTop,dd.scrollLeft];}else if(db){return[db.scrollTop,db.scrollLeft];}else{return[0,0];}},regCE:function(){},_simpleAdd:function(){if(window.addEventListener){return function(el,sType,fn,capture){el.addEventListener(sType,fn,(capture));};}else if(window.attachEvent){return function(el,sType,fn,capture){el.attachEvent("on"+sType,fn);};}else{return function(){};}}(),_simpleRemove:function(){if(window.removeEventListener){return function(el,sType,fn,capture){el.removeEventListener(sType,fn,(capture));};}else if(window.detachEvent){return function(el,sType,fn){el.detachEvent("on"+sType,fn);};}else{return function(){};}}()};}();(function(){var EU=YAHOO.util.Event;EU.on=EU.addListener;if(EU.isIE){YAHOO.util.Event.onDOMReady(YAHOO.util.Event._tryPreloadAttach,YAHOO.util.Event,true);var n=document.createElement('p');EU._dri=setInterval(function(){try{n.doScroll('left');clearInterval(EU._dri);EU._dri=null;EU._ready();n=null;}catch(ex){}},EU.POLL_INTERVAL);}else if(EU.webkit&&EU.webkit<525){EU._dri=setInterval(function(){var rs=document.readyState;if("loaded"==rs||"complete"==rs){clearInterval(EU._dri);EU._dri=null;EU._ready();}},EU.POLL_INTERVAL);}else{EU._simpleAdd(document,"DOMContentLoaded",EU._ready);}
EU._simpleAdd(window,"load",EU._load);EU._simpleAdd(window,"unload",EU._unload);EU._tryPreloadAttach();})();}
YAHOO.util.EventProvider=function(){};YAHOO.util.EventProvider.prototype={__yui_events:null,__yui_subscribers:null,subscribe:function(p_type,p_fn,p_obj,p_override){this.__yui_events=this.__yui_events||{};var ce=this.__yui_events[p_type];if(ce){ce.subscribe(p_fn,p_obj,p_override);}else{this.__yui_subscribers=this.__yui_subscribers||{};var subs=this.__yui_subscribers;if(!subs[p_type]){subs[p_type]=[];}
subs[p_type].push({fn:p_fn,obj:p_obj,override:p_override});}},unsubscribe:function(p_type,p_fn,p_obj){this.__yui_events=this.__yui_events||{};var evts=this.__yui_events;if(p_type){var ce=evts[p_type];if(ce){return ce.unsubscribe(p_fn,p_obj);}}else{var ret=true;for(var i in evts){if(YAHOO.lang.hasOwnProperty(evts,i)){ret=ret&&evts[i].unsubscribe(p_fn,p_obj);}}
return ret;}
return false;},unsubscribeAll:function(p_type){return this.unsubscribe(p_type);},createEvent:function(p_type,p_config){this.__yui_events=this.__yui_events||{};var opts=p_config||{};var events=this.__yui_events;if(events[p_type]){}else{var scope=opts.scope||this;var silent=(opts.silent);var ce=new YAHOO.util.CustomEvent(p_type,scope,silent,YAHOO.util.CustomEvent.FLAT);events[p_type]=ce;if(opts.onSubscribeCallback){ce.subscribeEvent.subscribe(opts.onSubscribeCallback);}
this.__yui_subscribers=this.__yui_subscribers||{};var qs=this.__yui_subscribers[p_type];if(qs){for(var i=0;i<qs.length;++i){ce.subscribe(qs[i].fn,qs[i].obj,qs[i].override);}}}
return events[p_type];},fireEvent:function(p_type,arg1,arg2,etc){this.__yui_events=this.__yui_events||{};var ce=this.__yui_events[p_type];if(!ce){return null;}
var args=[];for(var i=1;i<arguments.length;++i){args.push(arguments[i]);}
return ce.fire.apply(ce,args);},hasEvent:function(type){if(this.__yui_events){if(this.__yui_events[type]){return true;}}
return false;}};YAHOO.util.KeyListener=function(attachTo,keyData,handler,event){if(!attachTo){}else if(!keyData){}else if(!handler){}
if(!event){event=YAHOO.util.KeyListener.KEYDOWN;}
var keyEvent=new YAHOO.util.CustomEvent("keyPressed");this.enabledEvent=new YAHOO.util.CustomEvent("enabled");this.disabledEvent=new YAHOO.util.CustomEvent("disabled");if(typeof attachTo=='string'){attachTo=document.getElementById(attachTo);}
if(typeof handler=='function'){keyEvent.subscribe(handler);}else{keyEvent.subscribe(handler.fn,handler.scope,handler.correctScope);}
function handleKeyPress(e,obj){if(!keyData.shift){keyData.shift=false;}
if(!keyData.alt){keyData.alt=false;}
if(!keyData.ctrl){keyData.ctrl=false;}
if(e.shiftKey==keyData.shift&&e.altKey==keyData.alt&&e.ctrlKey==keyData.ctrl){var dataItem;if(keyData.keys instanceof Array){for(var i=0;i<keyData.keys.length;i++){dataItem=keyData.keys[i];if(dataItem==e.charCode){keyEvent.fire(e.charCode,e);break;}else if(dataItem==e.keyCode){keyEvent.fire(e.keyCode,e);break;}}}else{dataItem=keyData.keys;if(dataItem==e.charCode){keyEvent.fire(e.charCode,e);}else if(dataItem==e.keyCode){keyEvent.fire(e.keyCode,e);}}}}
this.enable=function(){if(!this.enabled){YAHOO.util.Event.addListener(attachTo,event,handleKeyPress);this.enabledEvent.fire(keyData);}
this.enabled=true;};this.disable=function(){if(this.enabled){YAHOO.util.Event.removeListener(attachTo,event,handleKeyPress);this.disabledEvent.fire(keyData);}
this.enabled=false;};this.toString=function(){return"KeyListener ["+keyData.keys+"] "+attachTo.tagName+
(attachTo.id?"["+attachTo.id+"]":"");};};YAHOO.util.KeyListener.KEYDOWN="keydown";YAHOO.util.KeyListener.KEYUP="keyup";YAHOO.util.KeyListener.KEY={ALT:18,BACK_SPACE:8,CAPS_LOCK:20,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,META:224,NUM_LOCK:144,PAGE_DOWN:34,PAGE_UP:33,PAUSE:19,PRINTSCREEN:44,RIGHT:39,SCROLL_LOCK:145,SHIFT:16,SPACE:32,TAB:9,UP:38};YAHOO.register("event",YAHOO.util.Event,{version:"2.5.2",build:"1076"});YAHOO.widget.TreeView=function(id){if(id){this.init(id);}};YAHOO.widget.TreeView.prototype={id:null,_el:null,_nodes:null,locked:false,_expandAnim:null,_collapseAnim:null,_animCount:0,maxAnim:2,setExpandAnim:function(type){this._expandAnim=(YAHOO.widget.TVAnim.isValid(type))?type:null;},setCollapseAnim:function(type){this._collapseAnim=(YAHOO.widget.TVAnim.isValid(type))?type:null;},animateExpand:function(el,node){if(this._expandAnim&&this._animCount<this.maxAnim){var tree=this;var a=YAHOO.widget.TVAnim.getAnim(this._expandAnim,el,function(){tree.expandComplete(node);});if(a){++this._animCount;this.fireEvent("animStart",{"node":node,"type":"expand"});a.animate();}
return true;}
return false;},animateCollapse:function(el,node){if(this._collapseAnim&&this._animCount<this.maxAnim){var tree=this;var a=YAHOO.widget.TVAnim.getAnim(this._collapseAnim,el,function(){tree.collapseComplete(node);});if(a){++this._animCount;this.fireEvent("animStart",{"node":node,"type":"collapse"});a.animate();}
return true;}
return false;},expandComplete:function(node){--this._animCount;this.fireEvent("animComplete",{"node":node,"type":"expand"});},collapseComplete:function(node){--this._animCount;this.fireEvent("animComplete",{"node":node,"type":"collapse"});},init:function(id){this.id=id;if("string"!==typeof id){this._el=id;this.id=this.generateId(id);}
this.createEvent("animStart",this);this.createEvent("animComplete",this);this.createEvent("collapse",this);this.createEvent("collapseComplete",this);this.createEvent("expand",this);this.createEvent("expandComplete",this);this._nodes=[];YAHOO.widget.TreeView.trees[this.id]=this;this.root=new YAHOO.widget.RootNode(this);var LW=YAHOO.widget.LogWriter;},draw:function(){var html=this.root.getHtml();this.getEl().innerHTML=html;this.firstDraw=false;},getEl:function(){if(!this._el){this._el=document.getElementById(this.id);}
return this._el;},regNode:function(node){this._nodes[node.index]=node;},getRoot:function(){return this.root;},setDynamicLoad:function(fnDataLoader,iconMode){this.root.setDynamicLoad(fnDataLoader,iconMode);},expandAll:function(){if(!this.locked){this.root.expandAll();}},collapseAll:function(){if(!this.locked){this.root.collapseAll();}},getNodeByIndex:function(nodeIndex){var n=this._nodes[nodeIndex];return(n)?n:null;},getNodeByProperty:function(property,value){for(var i in this._nodes){var n=this._nodes[i];if(n.data&&value==n.data[property]){return n;}}
return null;},getNodesByProperty:function(property,value){var values=[];for(var i in this._nodes){var n=this._nodes[i];if(n.data&&value==n.data[property]){values.push(n);}}
return(values.length)?values:null;},getNodeByElement:function(el){var p=el,m,re=/ygtv([^\d]*)(.*)/;do{if(p&&p.id){m=p.id.match(re);if(m&&m[2]){return this.getNodeByIndex(m[2]);}}
p=p.parentNode;if(!p||!p.tagName){break;}}
while(p.id!==this.id&&p.tagName.toLowerCase()!=="body");return null;},removeNode:function(node,autoRefresh){if(node.isRoot()){return false;}
var p=node.parent;if(p.parent){p=p.parent;}
this._deleteNode(node);if(autoRefresh&&p&&p.childrenRendered){p.refresh();}
return true;},_removeChildren_animComplete:function(o){this.unsubscribe(this._removeChildren_animComplete);this.removeChildren(o.node);},removeChildren:function(node){if(node.expanded){if(this._collapseAnim){this.subscribe("animComplete",this._removeChildren_animComplete,this,true);YAHOO.widget.Node.prototype.collapse.call(node);return;}
node.collapse();}
while(node.children.length){this._deleteNode(node.children[0]);}
if(node.isRoot()){YAHOO.widget.Node.prototype.expand.call(node);}
node.childrenRendered=false;node.dynamicLoadComplete=false;node.updateIcon();},_deleteNode:function(node){this.removeChildren(node);this.popNode(node);},popNode:function(node){var p=node.parent;var a=[];for(var i=0,len=p.children.length;i<len;++i){if(p.children[i]!=node){a[a.length]=p.children[i];}}
p.children=a;p.childrenRendered=false;if(node.previousSibling){node.previousSibling.nextSibling=node.nextSibling;}
if(node.nextSibling){node.nextSibling.previousSibling=node.previousSibling;}
node.parent=null;node.previousSibling=null;node.nextSibling=null;node.tree=null;delete this._nodes[node.index];},toString:function(){return"TreeView "+this.id;},generateId:function(el){var id=el.id;if(!id){id="yui-tv-auto-id-"+YAHOO.widget.TreeView.counter;++YAHOO.widget.TreeView.counter;}
return id;},onExpand:function(node){},onCollapse:function(node){}};YAHOO.augment(YAHOO.widget.TreeView,YAHOO.util.EventProvider);YAHOO.widget.TreeView.nodeCount=0;YAHOO.widget.TreeView.trees=[];YAHOO.widget.TreeView.counter=0;YAHOO.widget.TreeView.getTree=function(treeId){var t=YAHOO.widget.TreeView.trees[treeId];return(t)?t:null;};YAHOO.widget.TreeView.getNode=function(treeId,nodeIndex){var t=YAHOO.widget.TreeView.getTree(treeId);return(t)?t.getNodeByIndex(nodeIndex):null;};YAHOO.widget.TreeView.addHandler=function(el,sType,fn){if(el.addEventListener){el.addEventListener(sType,fn,false);}else if(el.attachEvent){el.attachEvent("on"+sType,fn);}};YAHOO.widget.TreeView.removeHandler=function(el,sType,fn){if(el.removeEventListener){el.removeEventListener(sType,fn,false);}else if(el.detachEvent){el.detachEvent("on"+sType,fn);}};YAHOO.widget.TreeView.preload=function(e,prefix){prefix=prefix||"ygtv";var styles=["tn","tm","tmh","tp","tph","ln","lm","lmh","lp","lph","loading"];var sb=[];for(var i=1;i<styles.length;i=i+1){sb[sb.length]='<span class="'+prefix+styles[i]+'">&#160;</span>';}
var f=document.createElement("div");var s=f.style;s.className=prefix+styles[0];s.position="absolute";s.height="1px";s.width="1px";s.top="-1000px";s.left="-1000px";f.innerHTML=sb.join("");document.body.appendChild(f);YAHOO.widget.TreeView.removeHandler(window,"load",YAHOO.widget.TreeView.preload);};YAHOO.widget.TreeView.addHandler(window,"load",YAHOO.widget.TreeView.preload);YAHOO.widget.Node=function(oData,oParent,expanded){if(oData){this.init(oData,oParent,expanded);}};YAHOO.widget.Node.prototype={index:0,children:null,tree:null,data:null,parent:null,depth:-1,href:null,target:"_self",expanded:false,multiExpand:true,renderHidden:false,childrenRendered:false,dynamicLoadComplete:false,previousSibling:null,nextSibling:null,_dynLoad:false,dataLoader:null,isLoading:false,hasIcon:true,iconMode:0,nowrap:false,isLeaf:false,_type:"Node",init:function(oData,oParent,expanded){this.data=oData;this.children=[];this.index=YAHOO.widget.TreeView.nodeCount;++YAHOO.widget.TreeView.nodeCount;this.expanded=expanded;this.createEvent("parentChange",this);if(oParent){oParent.appendChild(this);}},applyParent:function(parentNode){if(!parentNode){return false;}
this.tree=parentNode.tree;this.parent=parentNode;this.depth=parentNode.depth+1;if(!this.href){this.href="javascript:"+this.getToggleLink();}
this.tree.regNode(this);parentNode.childrenRendered=false;for(var i=0,len=this.children.length;i<len;++i){this.children[i].applyParent(this);}
this.fireEvent("parentChange");return true;},appendChild:function(childNode){if(this.hasChildren()){var sib=this.children[this.children.length-1];sib.nextSibling=childNode;childNode.previousSibling=sib;}
this.children[this.children.length]=childNode;childNode.applyParent(this);if(this.childrenRendered&&this.expanded){this.getChildrenEl().style.display="";}
return childNode;},appendTo:function(parentNode){return parentNode.appendChild(this);},insertBefore:function(node){var p=node.parent;if(p){if(this.tree){this.tree.popNode(this);}
var refIndex=node.isChildOf(p);p.children.splice(refIndex,0,this);if(node.previousSibling){node.previousSibling.nextSibling=this;}
this.previousSibling=node.previousSibling;this.nextSibling=node;node.previousSibling=this;this.applyParent(p);}
return this;},insertAfter:function(node){var p=node.parent;if(p){if(this.tree){this.tree.popNode(this);}
var refIndex=node.isChildOf(p);if(!node.nextSibling){this.nextSibling=null;return this.appendTo(p);}
p.children.splice(refIndex+1,0,this);node.nextSibling.previousSibling=this;this.previousSibling=node;this.nextSibling=node.nextSibling;node.nextSibling=this;this.applyParent(p);}
return this;},isChildOf:function(parentNode){if(parentNode&&parentNode.children){for(var i=0,len=parentNode.children.length;i<len;++i){if(parentNode.children[i]===this){return i;}}}
return-1;},getSiblings:function(){return this.parent.children;},showChildren:function(){if(!this.tree.animateExpand(this.getChildrenEl(),this)){if(this.hasChildren()){this.getChildrenEl().style.display="";}}},hideChildren:function(){if(!this.tree.animateCollapse(this.getChildrenEl(),this)){this.getChildrenEl().style.display="none";}},getElId:function(){return"ygtv"+this.index;},getChildrenElId:function(){return"ygtvc"+this.index;},getToggleElId:function(){return"ygtvt"+this.index;},getEl:function(){return document.getElementById(this.getElId());},getChildrenEl:function(){return document.getElementById(this.getChildrenElId());},getToggleEl:function(){return document.getElementById(this.getToggleElId());},getToggleLink:function(){return"YAHOO.widget.TreeView.getNode(\'"+this.tree.id+"\',"+
this.index+").toggle()";},collapse:function(){if(!this.expanded){return;}
var ret=this.tree.onCollapse(this);if(false===ret){return;}
ret=this.tree.fireEvent("collapse",this);if(false===ret){return;}
if(!this.getEl()){this.expanded=false;}else{this.hideChildren();this.expanded=false;this.updateIcon();}
ret=this.tree.fireEvent("collapseComplete",this);},expand:function(lazySource){if(this.expanded&&!lazySource){return;}
var ret=true;if(!lazySource){ret=this.tree.onExpand(this);if(false===ret){return;}
ret=this.tree.fireEvent("expand",this);}
if(false===ret){return;}
if(!this.getEl()){this.expanded=true;return;}
if(!this.childrenRendered){this.getChildrenEl().innerHTML=this.renderChildren();}else{}
this.expanded=true;this.updateIcon();if(this.isLoading){this.expanded=false;return;}
if(!this.multiExpand){var sibs=this.getSiblings();for(var i=0;i<sibs.length;++i){if(sibs[i]!=this&&sibs[i].expanded){sibs[i].collapse();}}}
this.showChildren();ret=this.tree.fireEvent("expandComplete",this);},updateIcon:function(){if(this.hasIcon){var el=this.getToggleEl();if(el){el.className=this.getStyle();}}},getStyle:function(){if(this.isLoading){return"ygtvloading";}else{var loc=(this.nextSibling)?"t":"l";var type="n";if(this.hasChildren(true)||(this.isDynamic()&&!this.getIconMode())){type=(this.expanded)?"m":"p";}
return"ygtv"+loc+type;}},getHoverStyle:function(){var s=this.getStyle();if(this.hasChildren(true)&&!this.isLoading){s+="h";}
return s;},expandAll:function(){for(var i=0;i<this.children.length;++i){var c=this.children[i];if(c.isDynamic()){alert("Not supported (lazy load + expand all)");break;}else if(!c.multiExpand){alert("Not supported (no multi-expand + expand all)");break;}else{c.expand();c.expandAll();}}},collapseAll:function(){for(var i=0;i<this.children.length;++i){this.children[i].collapse();this.children[i].collapseAll();}},setDynamicLoad:function(fnDataLoader,iconMode){if(fnDataLoader){this.dataLoader=fnDataLoader;this._dynLoad=true;}else{this.dataLoader=null;this._dynLoad=false;}
if(iconMode){this.iconMode=iconMode;}},isRoot:function(){return(this==this.tree.root);},isDynamic:function(){if(this.isLeaf){return false;}else{return(!this.isRoot()&&(this._dynLoad||this.tree.root._dynLoad));}},getIconMode:function(){return(this.iconMode||this.tree.root.iconMode);},hasChildren:function(checkForLazyLoad){if(this.isLeaf){return false;}else{return(this.children.length>0||(checkForLazyLoad&&this.isDynamic()&&!this.dynamicLoadComplete));}},toggle:function(){if(!this.tree.locked&&(this.hasChildren(true)||this.isDynamic())){if(this.expanded){this.collapse();}else{this.expand();}}},getHtml:function(){this.childrenRendered=false;var sb=[];sb[sb.length]='<div class="ygtvitem" id="'+this.getElId()+'">';sb[sb.length]=this.getNodeHtml();sb[sb.length]=this.getChildrenHtml();sb[sb.length]='</div>';return sb.join("");},getChildrenHtml:function(){var sb=[];sb[sb.length]='<div class="ygtvchildren"';sb[sb.length]=' id="'+this.getChildrenElId()+'"';if(!this.expanded||!this.hasChildren()){sb[sb.length]=' style="display:none;"';}
sb[sb.length]='>';if((this.hasChildren(true)&&this.expanded)||(this.renderHidden&&!this.isDynamic())){sb[sb.length]=this.renderChildren();}
sb[sb.length]='</div>';return sb.join("");},renderChildren:function(){var node=this;if(this.isDynamic()&&!this.dynamicLoadComplete){this.isLoading=true;this.tree.locked=true;if(this.dataLoader){setTimeout(function(){node.dataLoader(node,function(){node.loadComplete();});},10);}else if(this.tree.root.dataLoader){setTimeout(function(){node.tree.root.dataLoader(node,function(){node.loadComplete();});},10);}else{return"Error: data loader not found or not specified.";}
return"";}else{return this.completeRender();}},completeRender:function(){var sb=[];for(var i=0;i<this.children.length;++i){sb[sb.length]=this.children[i].getHtml();}
this.childrenRendered=true;return sb.join("");},loadComplete:function(){this.getChildrenEl().innerHTML=this.completeRender();this.dynamicLoadComplete=true;this.isLoading=false;this.expand(true);this.tree.locked=false;},getAncestor:function(depth){if(depth>=this.depth||depth<0){return null;}
var p=this.parent;while(p.depth>depth){p=p.parent;}
return p;},getDepthStyle:function(depth){return(this.getAncestor(depth).nextSibling)?"ygtvdepthcell":"ygtvblankdepthcell";},getNodeHtml:function(){return"";},refresh:function(){this.getChildrenEl().innerHTML=this.completeRender();if(this.hasIcon){var el=this.getToggleEl();if(el){el.className=this.getStyle();}}},toString:function(){return"Node ("+this.index+")";}};YAHOO.augment(YAHOO.widget.Node,YAHOO.util.EventProvider);YAHOO.widget.TextNode=function(oData,oParent,expanded){if(oData){this.init(oData,oParent,expanded);this.setUpLabel(oData);}};YAHOO.extend(YAHOO.widget.TextNode,YAHOO.widget.Node,{labelStyle:"ygtvlabel",labelElId:null,label:null,textNodeParentChange:function(){if(this.tree&&!this.tree.hasEvent("labelClick")){this.tree.createEvent("labelClick",this.tree);}},setUpLabel:function(oData){this.textNodeParentChange();this.subscribe("parentChange",this.textNodeParentChange);if(typeof oData=="string"){oData={label:oData};}
this.label=oData.label;this.data.label=oData.label;if(oData.href){this.href=encodeURI(oData.href);}
if(oData.target){this.target=oData.target;}
if(oData.style){this.labelStyle=oData.style;}
if(oData.title){this.title=oData.title;}
this.labelElId="ygtvlabelel"+this.index;},getLabelEl:function(){return document.getElementById(this.labelElId);},getNodeHtml:function(){var sb=[];sb[sb.length]='<table border="0" cellpadding="0" cellspacing="0">';sb[sb.length]='<tr>';for(var i=0;i<this.depth;++i){sb[sb.length]='<td class="'+this.getDepthStyle(i)+'"><div class="ygtvspacer"></div></td>';}
var getNode='YAHOO.widget.TreeView.getNode(\''+
this.tree.id+'\','+this.index+')';sb[sb.length]='<td';sb[sb.length]=' id="'+this.getToggleElId()+'"';sb[sb.length]=' class="'+this.getStyle()+'"';if(this.hasChildren(true)){sb[sb.length]=' onmouseover="this.className=';sb[sb.length]=getNode+'.getHoverStyle()"';sb[sb.length]=' onmouseout="this.className=';sb[sb.length]=getNode+'.getStyle()"';}
sb[sb.length]=' onclick="javascript:'+this.getToggleLink()+'">';sb[sb.length]='<div class="ygtvspacer">';sb[sb.length]='</div>';sb[sb.length]='</td>';sb[sb.length]='<td ';sb[sb.length]=(this.nowrap)?' nowrap="nowrap" ':'';sb[sb.length]=' >';sb[sb.length]='<a';sb[sb.length]=' id="'+this.labelElId+'"';if(this.title){sb[sb.length]=' title="'+this.title+'"';}
sb[sb.length]=' class="'+this.labelStyle+'"';sb[sb.length]=' href="'+this.href+'"';sb[sb.length]=' target="'+this.target+'"';sb[sb.length]=' onclick="return '+getNode+'.onLabelClick('+getNode+')"';if(this.hasChildren(true)){sb[sb.length]=' onmouseover="document.getElementById(\'';sb[sb.length]=this.getToggleElId()+'\').className=';sb[sb.length]=getNode+'.getHoverStyle()"';sb[sb.length]=' onmouseout="document.getElementById(\'';sb[sb.length]=this.getToggleElId()+'\').className=';sb[sb.length]=getNode+'.getStyle()"';}
sb[sb.length]=' >';sb[sb.length]=this.label;sb[sb.length]='</a>';sb[sb.length]='</td>';sb[sb.length]='</tr>';sb[sb.length]='</table>';return sb.join("");},onLabelClick:function(me){return me.tree.fireEvent("labelClick",me);},toString:function(){return"TextNode ("+this.index+") "+this.label;}});YAHOO.widget.RootNode=function(oTree){this.init(null,null,true);this.tree=oTree;};YAHOO.extend(YAHOO.widget.RootNode,YAHOO.widget.Node,{getNodeHtml:function(){return"";},toString:function(){return"RootNode";},loadComplete:function(){this.tree.draw();},collapse:function(){},expand:function(){}});YAHOO.widget.HTMLNode=function(oData,oParent,expanded,hasIcon){if(oData){this.init(oData,oParent,expanded);this.initContent(oData,hasIcon);}};YAHOO.extend(YAHOO.widget.HTMLNode,YAHOO.widget.Node,{contentStyle:"ygtvhtml",contentElId:null,html:null,initContent:function(oData,hasIcon){this.setHtml(oData);this.contentElId="ygtvcontentel"+this.index;this.hasIcon=hasIcon;},setHtml:function(o){this.data=o;this.html=(typeof o==="string")?o:o.html;var el=this.getContentEl();if(el){el.innerHTML=this.html;}},getContentEl:function(){return document.getElementById(this.contentElId);},getNodeHtml:function(){var sb=[];sb[sb.length]='<table border="0" cellpadding="0" cellspacing="0">';sb[sb.length]='<tr>';for(var i=0;i<this.depth;++i){sb[sb.length]='<td class="'+this.getDepthStyle(i)+'"><div class="ygtvspacer"></div></td>';}
if(this.hasIcon){sb[sb.length]='<td';sb[sb.length]=' id="'+this.getToggleElId()+'"';sb[sb.length]=' class="'+this.getStyle()+'"';sb[sb.length]=' onclick="javascript:'+this.getToggleLink()+'"';if(this.hasChildren(true)){sb[sb.length]=' onmouseover="this.className=';sb[sb.length]='YAHOO.widget.TreeView.getNode(\'';sb[sb.length]=this.tree.id+'\','+this.index+').getHoverStyle()"';sb[sb.length]=' onmouseout="this.className=';sb[sb.length]='YAHOO.widget.TreeView.getNode(\'';sb[sb.length]=this.tree.id+'\','+this.index+').getStyle()"';}
sb[sb.length]='><div class="ygtvspacer"></div></td>';}
sb[sb.length]='<td';sb[sb.length]=' id="'+this.contentElId+'"';sb[sb.length]=' class="'+this.contentStyle+'"';sb[sb.length]=(this.nowrap)?' nowrap="nowrap" ':'';sb[sb.length]=' >';sb[sb.length]=this.html;sb[sb.length]='</td>';sb[sb.length]='</tr>';sb[sb.length]='</table>';return sb.join("");},toString:function(){return"HTMLNode ("+this.index+")";}});YAHOO.widget.MenuNode=function(oData,oParent,expanded){if(oData){this.init(oData,oParent,expanded);this.setUpLabel(oData);}
this.multiExpand=false;};YAHOO.extend(YAHOO.widget.MenuNode,YAHOO.widget.TextNode,{toString:function(){return"MenuNode ("+this.index+") "+this.label;}});YAHOO.widget.TVAnim=function(){return{FADE_IN:"TVFadeIn",FADE_OUT:"TVFadeOut",getAnim:function(type,el,callback){if(YAHOO.widget[type]){return new YAHOO.widget[type](el,callback);}else{return null;}},isValid:function(type){return(YAHOO.widget[type]);}};}();YAHOO.widget.TVFadeIn=function(el,callback){this.el=el;this.callback=callback;};YAHOO.widget.TVFadeIn.prototype={animate:function(){var tvanim=this;var s=this.el.style;s.opacity=0.1;s.filter="alpha(opacity=10)";s.display="";var dur=0.4;var a=new YAHOO.util.Anim(this.el,{opacity:{from:0.1,to:1,unit:""}},dur);a.onComplete.subscribe(function(){tvanim.onComplete();});a.animate();},onComplete:function(){this.callback();},toString:function(){return"TVFadeIn";}};YAHOO.widget.TVFadeOut=function(el,callback){this.el=el;this.callback=callback;};YAHOO.widget.TVFadeOut.prototype={animate:function(){var tvanim=this;var dur=0.4;var a=new YAHOO.util.Anim(this.el,{opacity:{from:1,to:0.1,unit:""}},dur);a.onComplete.subscribe(function(){tvanim.onComplete();});a.animate();},onComplete:function(){var s=this.el.style;s.display="none";s.filter="alpha(opacity=100)";this.callback();},toString:function(){return"TVFadeOut";}};YAHOO.register("treeview",YAHOO.widget.TreeView,{version:"2.5.2",build:"1076"});YAHOO.widget.dataFieldNodeDataloader=function(node,callback){var datatype=Constants.TYPES[node.type];if(datatype.isList){if(node.isParentMultiple()){var textNode=new YAHOO.widget.HTMLNode("There is no support for nested multiples. You can assign a value to this field by using an expression.",node,true,true);callback();return;}else{datatype=Constants.TYPES[datatype.singleType];}}
if(!(datatype.isRecord&&!Util.isNull(datatype.fieldTypes))){return;}
for(var i=0;i<datatype.fieldTypes.length;i++){var typeId=datatype.fieldTypes[i];var fieldName=datatype.fieldNames[i];var type=Constants.TYPES[typeId];if(!Util.isNull(type)){var newNode=new YAHOO.widget.DataFieldNode(type.id,type.isList,fieldName,fieldName,null,node,false,node.onclickFunc);}}
callback();};YAHOO.widget.DataFieldNode=function(type,multiple,fieldName,key,comment,parentNode,expanded,onclick){if(YAHOO.widget.LogWriter){this.logger=new YAHOO.widget.LogWriter(this.toString());}else{this.logger=YAHOO;}
this.init(fieldName,parentNode,expanded);this.setUpOutputNode(type,multiple,fieldName,key,comment,onclick);if(this.getIsRecord()){this.setDynamicLoad(YAHOO.widget.dataFieldNodeDataloader,0);}};YAHOO.extend(YAHOO.widget.DataFieldNode,YAHOO.widget.TextNode,{type:null,onclickFunc:null,fieldName:null,key:null,comment:null,isRecord:null,isMultiple:null,isExtend:null,label:null,typeDisplay:null,isSelected:false,fqnSuffix:null,getKey:function(){return this.key||this.fieldName;},getFqn:function(prefix){prefix=!Util.isNull(prefix)?prefix:'';if(this.isTopLevelNode()){return StringUtils.encloseIdentifierInQuotes(prefix+this.getKey());}else{var topNode=this.getTopLevelNode();return StringUtils.encloseIdentifierInQuotes(prefix+topNode.getKey())+'.'+
this.fqnSuffix;}},isTopLevelNode:function(){return this.depth===0;},getTopLevelNode:function(){if(this.isTopLevelNode()){return this;}else{return this.getAncestor(0);}},setSelected:function(){var prevSelected=this.tree.selectedNode;if(prevSelected==this){return;}
if(prevSelected){prevSelected.clearSelected();}
this.tree.selectedNode=this;this.isSelected=true;this.redrawLabel();},redrawLabel:function(){if(this.tree&&this.labelElId){var labelObj=$$(this.labelElId);if(labelObj){labelObj.parentNode.innerHTML=this.getNodeVisibleHtml();}}},clearSelected:function(){var prevSelected=this.tree.selectedNode;if(prevSelected==this){this.tree.selectedNode=null;}
this.isSelected=false;this.redrawLabel();},isParentMultiple:function(){var currNode=this.parent;while(currNode&&currNode.constructor==this.constructor){if(currNode.isMultiple){return true;}
currNode=currNode.parent;}
return false;},isNestedMultiple:function(){return this.isMultiple&&this.isParentMultiple();},getFieldValueInstanceType:function(){if(this.isTopLevelNode()){return DatatypeUtils.convertToInstanceType(this.type,this.getMultiple());}else{return DatatypeUtils.convertToInstanceType(this.type,this.isParentMultiple());}},getIsRecord:function(){var singleType=null;var mainDatatype=Constants.TYPES[this.type];if(mainDatatype.isList){singleType=Constants.TYPES[mainDatatype.singleType];}
return this.isRecord||(singleType&&singleType.isRecord);},getMultiple:function(){if(this.isMultiple){return true;}else{if(this.parent.constructor==this.constructor){return this.parent.getMultiple();}else{return false;}}
return false;},initializeFqn:function(fieldName_){if(this.depth>0){if(this.parent&&this.parent.fqnSuffix){this.fqnSuffix=this.parent.fqnSuffix+'.'+
StringUtils.encloseIdentifierInQuotes(fieldName_);}else{this.fqnSuffix=StringUtils.encloseIdentifierInQuotes(fieldName_);}}else{this.fqnSuffix='';}},setUpOutputNode:function(type_,multiple_,fieldName_,key_,comment_,function_){var datatype=Constants.TYPES[type_];this.type=type_;this.isExtend=!datatype.isSystemType&&!datatype.isRecord&&!datatype.isList&&(datatype.base!=datatype.id);this.isMultiple=Boolean.parseBoolean(multiple_);this.isRecord=datatype.isRecord;this.onclickFunc=function_;this.fieldName=fieldName_;this.key=key_;this.comment=comment_;this.initializeFqn(this.getKey());this.typeDisplay=this.buildDisplayName(datatype);},buildDisplayName:function(datatype){var s='';if(datatype.isList){s=DatatypeUtils.getType(datatype.singleType).name;}else{if(this.isExtend){s=(datatype.name+': '+DatatypeUtils.getType(datatype.base).name);}else{s=datatype.name;}}
return StringUtils.isBlank(s)?s:(' ('+s+')').tag('span',{className:'dataTypeShow'});},onLabelClick:function(param1,link,another){this.setSelected();return this.onclickFunc();},getLinkHtml:function(){var tempLabel=this.getLabel();tempLabel=tempLabel.length>45?tempLabel.substring(0,45)+'...':tempLabel;var escapedLabel=StringSecurityUtils.encodeHtml(tempLabel);return escapedLabel.tag('a',{id:this.labelElId,className:this.getLabelStyle(),href:this.href,target:this.target,title:this.comment,nowrap:(this.nowrap)?'nowrap':'',onclick:'return '+this.getNode()+'.onLabelClick('+this.getNode()+')'});},getTypeAndMultipleHtml:function(){var contents=this.getTypeDisplay();if(this.isMultiple){contents=contents+"".tag('img',{src:MULTIPLE_INDICATOR_PATH,title:_Other.Treeview.multiple});}
return contents;},getNode:function(){return'YAHOO.widget.TreeView.getNode(\''+this.tree.id+'\','+this.index+')';},getNodeVisibleHtml:function(){return this.getLinkHtml()+this.getTypeAndMultipleHtml();},getNodeHtml:function(){this.logger.log("Generating html");var datatype=DatatypeUtils.getType(this.type);var sb=[];this.labelElId='dataFieldTitle'+this.tree.id+'_'+this.index;sb[sb.length]='<table border="0" cellpadding="0" cellspacing="0">';sb.push('<tr title="'+datatype.qName+'">');for(var i=0;i<this.depth;++i){sb[sb.length]='<div class="ygtvspacer"></div>'.tag('td',{className:this.getDepthStyle(i)});}
var contents='<div class="ygtvspacer"></div></td><td class="treeviewNodeContent">';contents+=this.getNodeVisibleHtml();sb[sb.length]=contents.tag('td',{id:this.getToggleElId(),className:this.getStyle(),onclick:this.getToggleLink()});sb[sb.length]='</tr>';sb[sb.length]='</table>';return sb.join("");},getTypeDisplay:function(){return this.typeDisplay;},getLabel:function(){return this.fieldName;},getLabelStyle:function(){if(!this.isSelected){return'dataFieldLabel';}else{return'dataFieldLabelSelected';}},toString:function(){return"DataFieldNode ("+this.index+") "+this.label;}});YAHOO.widget.DataInputNode=function(type,multiple,propertyIndex,fieldName,comment,ntvReference,parentNode,expanded,onclick){if(YAHOO.widget.LogWriter){this.logger=new YAHOO.widget.LogWriter(this.toString());}else{this.logger=YAHOO;}
this.init(fieldName,parentNode,expanded);this.setUpFieldNode(type,multiple,propertyIndex,fieldName,comment,ntvReference,onclick);};YAHOO.extend(YAHOO.widget.DataInputNode,YAHOO.widget.DataFieldNode,{ntvReference:null,editableProperties:false,propertyIndex:null,getKey:function(){if(this.isTopLevelNode()){return this.ntvReference.key;}else{return this.fieldName;}},getPropertyIndexes:function(indexes){if(Util.isNull(indexes)){indexes=[];}
if(!Util.isNull(this.propertyIndex)){var pIndex={index:this.propertyIndex,name:this.fieldName};indexes.unshift(pIndex);}
if(this.parent.constructor==this.constructor){return this.parent.getPropertyIndexes(indexes);}else{return indexes;}},setValue:function(value_){var instanceType=this.getFieldValueInstanceType();var value=DatatypeUtils.getTypedValueFromString(value_,instanceType);var acpNode=this.getTopLevelNode();var acp=acpNode.ntvReference;if(this.isTopLevelNode()){acp.setExpressionFlag(ap.beans.ACParameter.EXPRESSION.NO);acp.setValue(value_);acp.setInteriorExpressions(null);}else{var indexes=this.getPropertyIndexes();var acpValue=DatatypeUtils.setNestedPropertyValue(acp.getValue(),acpNode.getFieldValueInstanceType(),indexes,value,false);var acpExp=DatatypeUtils.setNestedPropertyValue(acp.getInteriorExpressions(),acpNode.getFieldValueInstanceType(),indexes,null,true);acp.setValue(acpValue);acp.setInteriorExpressions(acpExp);}},setExpression:function(expression_){var acpNode=this.getTopLevelNode();var acp=acpNode.ntvReference;if(this.isTopLevelNode()){acp.setExpressionFlag(ap.beans.ACParameter.EXPRESSION.YES);acp.setValue(expression_);acp.setInteriorExpressions(null);}else{var indexes=this.getPropertyIndexes();var acpExp=DatatypeUtils.setNestedPropertyValue(acp.getInteriorExpressions(),acpNode.getFieldValueInstanceType(),indexes,expression_,true);var acpValue=DatatypeUtils.setNestedPropertyValue(acp.getValue(),acpNode.getFieldValueInstanceType(),indexes,null,false);acp.setValue(acpValue);acp.setInteriorExpressions(acpExp);}},getExpression:function(){var acpNode=this.getTopLevelNode();var acp=acpNode.ntvReference;if(!this.getExpressionFlag()){return null;}
if(this.isTopLevelNode()){return acp.getValue();}else{var indexes=this.getPropertyIndexes();var expresssion=DatatypeUtils.getNestedPropertyValue(acp.getInteriorExpressions(),acpNode.getFieldValueInstanceType(),indexes);return expresssion;}},hasInteriorExpressions:function(){var acpNode=this.getTopLevelNode();var acp=acpNode.ntvReference;if(this.isTopLevelNode()){var exp=acp.getInteriorExpressions();}else{var indexes=this.getPropertyIndexes();var exp=DatatypeUtils.getNestedPropertyValue(acp.getInteriorExpressions(),acpNode.getFieldValueInstanceType(),indexes);}
return!Util.isNull(exp)&&(exp instanceof Array&&exp.length>0);},hasNestedValues:function(){var acpNode=this.getTopLevelNode();var acp=acpNode.ntvReference;if(this.isTopLevelNode()){var val=acp.getValue();}else{var indexes=this.getPropertyIndexes();var val=DatatypeUtils.getNestedPropertyValue(acp.getValue(),acpNode.getFieldValueInstanceType(),indexes);}
return!Util.isNull(val)&&(val instanceof Array&&val.length>0);},getExpressionFlag:function(){var acpNode=this.getTopLevelNode();var acp=acpNode.ntvReference;if(this.isTopLevelNode()){return Boolean.parseBoolean(acp.expressionFlag);}
var indexes=this.getPropertyIndexes();var val=DatatypeUtils.getNestedPropertyValue(acp.getValue(),acpNode.getFieldValueInstanceType(),indexes);if(Util.isNull(val)||(val instanceof Array&&val.length===0)){var exp=DatatypeUtils.getNestedPropertyValue(acp.getInteriorExpressions(),acpNode.getFieldValueInstanceType(),indexes);if(!Util.isNull(exp)&&!Util.isNull(exp.isAppianExpression)&&exp.isAppianExpression()){return true;}else{return false;}}else{return false;}},getValue:function(){var acpNode=this.getTopLevelNode();var acp=acpNode.ntvReference;if(this.isTopLevelNode()){return acp.getValue();}
var indexes=this.getPropertyIndexes();if(this.getExpressionFlag()){return DatatypeUtils.getNestedPropertyValue(acp.getInteriorExpressions(),acpNode.getFieldValueInstanceType(),indexes);}else{return DatatypeUtils.getNestedPropertyValue(acp.getValue(),acpNode.getFieldValueInstanceType(),indexes);}},getFieldValueInstanceType:function(){if(this.ntvReference){var acp=this.ntvReference;return DatatypeUtils.convertToInstanceType(acp.getType(),acp.getMultiple());}else{return DatatypeUtils.convertToInstanceType(this.type,this.isParentMultiple());}},getIsRecord:function(){var singleType=null;var mainDatatype=Constants.TYPES[this.getFieldValueInstanceType()];if(mainDatatype.isList){singleType=Constants.TYPES[mainDatatype.singleType];}
return this.isRecord||(singleType&&singleType.isRecord);},getLabelOfParentRecordWithValue:function(){var currParent=this.parent;while(currParent.constructor==YAHOO.widget.DataInputNode&&currParent.getIsRecord()){if((currParent.ntvReference&&currParent.ntvReference.getExpressionFlag())||currParent.getExpressionFlag()){return currParent.getLabel();}
currParent=currParent.parent;}
return null;},setUpFieldNode:function(type_,multiple_,propertyIndex_,fieldName_,comment_,ntvReference_,function_){var datatype=Constants.TYPES[type_];this.type=type_;this.isExtend=!datatype.isSystemType&&!datatype.isRecord&&!datatype.isList&&(datatype.base!=datatype.id);this.isMultiple=Boolean.parseBoolean(multiple_);this.isRecord=datatype.isRecord;this.onclickFunc=function_;this.ntvReference=ntvReference_;this.propertyIndex=propertyIndex_;this.fieldName=fieldName_;this.comment=comment_;this.initializeFqn(this.getKey());this.typeDisplay=YAHOO.widget.DataInputNode.superclass.buildDisplayName.call(this,datatype);},getNodeVisibleHtml:function(){return this.getLinkHtml()+this.getRequiredHtml()+
this.getTypeAndMultipleHtml();},getRequiredHtml:function(){if(this.ntvReference&&this.ntvReference.getRequired()){return'&nbsp;*'.tag('span',{className:'requiredStar'});}else{return'';}},getLabelStyle:function(){if(this.ntvReference){if(!this.isSelected){return'dataFieldComplexLabel';}else{return'dataFieldComplexLabelSelected';}}else{if(!this.isSelected){return'dataFieldLabel';}else{return'dataFieldLabelSelected';}}},toString:function(){return"DataInputNode ("+this.index+") "+this.label;}});YAHOO.widget.DataTypeNode=function(dataType,fieldName,parentNode,expanded,onclick){if(YAHOO.widget.LogWriter){this.logger=new YAHOO.widget.LogWriter(this.toString());}else{this.logger=YAHOO;}
if(dataType){this.init(fieldName,parentNode,expanded);this.setUpDataTypeAndFunction(dataType,fieldName,onclick);}
if(dataType.isList){dataType=Constants.TYPES[dataType.singleType];}
if(dataType.isRecord||dataType.unionTypes.length>0){this.setDynamicLoad(YAHOO.widget.dataTypeNodeDataloader,0);}};YAHOO.extend(YAHOO.widget.DataTypeNode,YAHOO.widget.TextNode,{instanceType:null,onclickFunc:null,typeDisplay:null,isMultiple:null,isExtend:null,isRecord:null,qName:null,label:null,getLabelStyle:function(){if(this.isRecord){return'dataTypeComplexLabel';}else{return'dataTypeLabel';}},setUpDataTypeAndFunction:function(dataType_,fieldName_,function_){this.instanceType=dataType_.id;this.onclickFunc=function_;this.isExtend=!dataType_.isSystemType&&!dataType_.isRecord&&!dataType_.isList&&(dataType_.base!=dataType_.id);this.isMultiple=Boolean.parseBoolean(dataType_.isList);this.isRecord=dataType_.isRecord||(dataType_.isList&&Constants.TYPES[dataType_.singleType].isRecord);this.qName=dataType_.qName;if(fieldName_!=null&&fieldName_.length>0){this.label=fieldName_;}else{this.label=dataType_.name;}
var s='';if(this.isExtend){s+=(Constants.TYPES[dataType_.base].name);}else if(fieldName_!=null){if(this.isMultiple){s+=(Constants.TYPES[dataType_.singleType].name);}else{if(!this.isRecord&&dataType_.base!=dataType_.id){s+=(dataType_.name+': '+Constants.TYPES[dataType_.base].name);}else{s+=dataType_.name;}}}
this.typeDisplay=StringUtils.isBlank(s)?s:(' ('+s+')').tag('span',{className:'dataTypeShow'});},onLabelClick:function(){this.onclickFunc();},getNodeHtml:function(){this.logger.log("Generating html");var sb=[];sb[sb.length]='<table border="0" cellpadding="0" cellspacing="0">';sb.push('<tr title="'+this.qName+'">');for(var i=0;i<this.depth;++i){sb[sb.length]='<div class="ygtvspacer"></div>'.tag('td',{className:this.getDepthStyle(i)});}
var contents='<div class="ygtvspacer"></div></td><td class="treeviewNodeContent">';if(this.isRecord){contents+=this.label.tag('a',{id:this.labelElId,className:this.getLabelStyle(),href:this.href,target:this.target,nowrap:(this.nowrap)?'nowrap':''});}else{contents+=this.label.tag('span',{className:this.getLabelStyle()});}
contents+=this.typeDisplay;if(this.isMultiple){contents=contents+"".tag('img',{src:MULTIPLE_INDICATOR_PATH,title:_Other.Treeview.multiple});}
sb[sb.length]=contents.tag('td',{id:this.getToggleElId(),className:this.getStyle(),onclick:this.getToggleLink()});sb[sb.length]='</tr>';sb[sb.length]='</table>';return sb.join("");},toString:function(){return"DataTypeNode ("+this.index+") "+this.label;}});YAHOO.widget.dataTypeNodeDataloader=function(node,callback){var datatype=Constants.TYPES[node.instanceType];if(datatype.isList){datatype=Constants.TYPES[datatype.singleType];}
if(!datatype.isRecord&&datatype.unionTypes.length==0){callback();return;}
for(var i=0;i<datatype.fieldTypes.length;i++){var typeId=datatype.fieldTypes[i];var fieldName=datatype.fieldNames[i];var type=Constants.TYPES[typeId];if(!Util.isNull(type)){new YAHOO.widget.DataTypeNode(type,fieldName,node,false,node.onclickFunc);}else{new YAHOO.widget.HTMLNode(fieldName.tag('b'),node,false,true);}}
for(i=0;i<datatype.unionTypes.length;i++){typeId=datatype.unionTypes[i];type=Constants.TYPES[typeId];if(!Util.isNull(type)){new YAHOO.widget.DataTypeNode(type,null,node,false,node.onclickFunc);}}
callback();};YAHOO.widget.ExpressionNode=function(expression,parentNode,expanded,onclick){if(YAHOO.widget.LogWriter){this.logger=new YAHOO.widget.LogWriter(this.toString());}else{this.logger=YAHOO;}
if(expression){this.init('',parentNode,expanded);this.setUpExpressionNode(expression,onclick);}};YAHOO.extend(YAHOO.widget.ExpressionNode,YAHOO.widget.TextNode,{setSelected:function(){var prevSelected=this.tree.selectedNode;if(prevSelected==this){return;}
if(prevSelected){prevSelected.clearSelected();}
this.tree.selectedNode=this;this.isSelected=true;this.redrawLabel();},redrawLabel:function(){if(this.tree&&this.labelElId){var labelObj=$$(this.labelElId);if(labelObj){labelObj.parentNode.innerHTML=this.getLinkHtml();}}},toggleSelected:function(){this.isSelected=!this.isSelected;this.redrawLabel();},clearSelected:function(){var prevSelected=this.tree.selectedNode;if(prevSelected==this){this.tree.selectedNode=null;}
this.isSelected=false;this.redrawLabel();},setUpExpressionNode:function(expression_,function_){this.expression=new ap.beans.OutputExpression(expression_);this.onclickFunc=function_;},onLabelClick:function(param1,link,another){this.setSelected();return this.onclickFunc();},getLabel:function(){var currExpr=this.expression.expressionValue;if(currExpr!=null&&currExpr.length>0){return this.expression.expressionValue;}else{return"(No Expression has been configured)";}},getLabelStyle:function(){if(!this.isSelected){return'dataFieldLabel';}else{return'dataFieldLabelSelected';}},getLinkHtml:function(){var label=this.getLabel();var escapedLabel=label.length>45?label.substring(0,45)+'...':label;escapedLabel=StringSecurityUtils.encodeHtml(escapedLabel);var contents=escapedLabel.tag('a',{id:this.labelElId,className:this.getLabelStyle(),href:this.href,target:this.target,title:label,nowrap:(this.nowrap)?'nowrap':'',onclick:'return '+this.getNode()+'.onLabelClick('+this.getNode()+')'});return contents;},getNode:function(){return'YAHOO.widget.TreeView.getNode(\''+this.tree.id+'\','+this.index+')';},getNodeHtml:function(){this.logger.log("Generating html");var sb=[];this.labelElId='dataFieldTitle'+this.tree.id+'_'+this.index;sb[sb.length]='<table border="0" cellpadding="0" cellspacing="0">';sb[sb.length]='<tr>';for(var i=0;i<this.depth;++i){sb[sb.length]='<div class="ygtvspacer"></div>'.tag('td',{className:this.getDepthStyle(i)});}
var contents='<div class="ygtvspacer"></div></td><td class="treeviewNodeContent">';contents+=this.getLinkHtml();sb[sb.length]=contents.tag('td',{id:this.getToggleElId(),className:this.getStyle(),onclick:this.getToggleLink()});sb[sb.length]='</tr>';sb[sb.length]='</table>';return sb.join("");},toString:function(){return"ExpressionNode ("+this.index+") "+this.label;}});var ColumnFilters={toggle:function(instanceId){ensureJSON(function(){window.server.processAnalytics.getProcessReport(function getProcessReport(report){if(report==null||arguments[1]){throw new Error(arguments[1].javaStack);}
_reports[instanceId]=report;},instanceId);});var filters=$('#columnFilters_'+instanceId).get(0);if(filters.tagName=='DIV'){filters=transferFilters(filters);}
else{toggleDisplay(filters);}
toggleDisplay('columnFiltersControls_'+instanceId);setTimeout(function(){focusFirstInput($('#activeForm_'+instanceId).get(0)||filters);},0);function transferFilters(filters){var tr=Node('TR',{id:filters.id,className:'columnFilters'});getNodeElements(filters.childNodes).forEach(function(cell){var td=Node('TD');td.appendChild(cell);tr.appendChild(td);});filters.parentNode.removeChild(filters);return $('#asi_grid_analytics_'+instanceId).get(0).tHead.appendChild(tr);}},add:function(input,allowMultiple){var form=input.form;var instanceId=form.getAttribute('instanceId');var columnLocalId=form.getAttribute('columnLocalId');var filterValue=input.value;var formatToken=form.getAttribute('formatToken');var comparison=(input.comparison||form.comparison).value;if(formatToken=='string'&&comparison==10&&!input.value.match(/\*/)&&input.value!==''){filterValue='*{0}*'.supplant(input.value);}
var data=_reports[instanceId].data;var filters=[];data.dynamicFilters.forEach(function(filter){if(filter.columnLocalId!=columnLocalId||(allowMultiple&&filter.comparison!=comparison)||(comparison=='00'&&filter.comparison==1)){filters.push(filter);}});if(input.value!==''){data.lastChange=columnLocalId;var filter={columnLocalId:columnLocalId,filterType:0,comparison:comparison,apply:true,constant:{type:TokenMapping[formatToken],multiple:0,value:filterValue}};if(comparison!='00'){filters.push(filter);}
else{filters.unshift(filter);}}
data.dynamicFilters=filters;},addDate:function(input,comparison,isTime,allowMultiple){if(input.value===''){return ColumnFilters.add({value:'',form:input.form});}
var dateStr=stringToDate(input.value,isTime)||new Date();var v;if(isTime){v={timeStr:input.value};}else{v={dateStr:dateStr.getMonth()+1+"/"+dateStr.getDate()+"/"+dateStr.getFullYear(),timeStr:"12:00 AM"};}
ColumnFilters.add({form:input.form,value:v,comparison:comparison},allowMultiple);},addAutocomplete:function(descriptors,form,autocompleteType){ColumnFilters.add({form:form,value:autocompleteType in set('people','content')?{id:descriptors[0][DESCRIPTOR_ID],type:descriptors[0][DESCRIPTOR_TYPE]}:descriptors[0].id});},clear:function(instanceId){var filters=[],columnsById=[];var data=_reports[instanceId].data;data.columns.forEach(function getColumnsById(column){columnsById[column.localId]=column;});data.dynamicFilters.forEach(function getVisibleFilters(filter){if(!columnsById[filter.columnLocalId].show){filters.push(filter);}});data.dynamicFilters=filters;ColumnFilters.apply(instanceId);},apply:function(instanceId){var report=_reports[instanceId];var url='/analytics/report/view/render.do?'+'showColumnFilters=true&'+'lastChange='+encodeURIComponent(report.data.lastChange||'')+'&instanceId='+encodeURIComponent(instanceId)+'&';window.server.processAnalytics.updateProcessReport(function updateProcessReport(messages){backgroundPage(url);},instanceId,report);}};