
Object.digest=function(dataChain,scope,isWrite){var items=dataChain.match(RegExp.CHAIN);var item=items[0];var key=item.replace(/^\[['|"]?(.+?)['|"]?\]$/,'$1');if(typeof scope[key]=='undefined'){if(!isWrite){throw new Error('Object does not exist: {0}'.supplant(dataChain));}
else{scope[key]=RegExp.ARRAY_INDEX.test(item)?[]:undefined;}}
if(items.length==1){return(isWrite?{scope:scope,key:key}:scope[key]);}
return this.digest(dataChain.replace(item,''),scope[key],isWrite);};Object.merge=function(source,target,isOverwrite){if(source instanceof Array){source.forEach(function(item){Object.merge(item,target,isOverwrite);});return target;}
source=Object.inflate(source);for(var key in source){if(isCustomObject(target[key])){Object.merge(source[key],target[key],isOverwrite);}else if(isOverwrite||!(key in target)){var getter=key.replace(/^./,function(match,$1){return'get'+match.toUpperCase();});var setter=key.replace(/^./,function(match,$1){return'set'+match.toUpperCase();});var value=source[getter]?source[getter]():source[key];target[setter]?target[setter](value):target[key]=value;target[key]=source[key];}}
return target;};Object.inflate=function(obj){for(var key in obj){if(!key.match(RegExp.IDENTIFIER)){var d=this.digest(key,obj,true);d.scope[d.key]=obj[key];}}
return obj;};Object.deflate=function(obj){};RegExp.NAMED_PROPERTY=/\[(["|']).+?\1\]/;RegExp.ARRAY_INDEX=/\[\d+\]/;RegExp.IDENTIFIER=/[a-zA-Z_$][a-zA-Z_$\d]*/;RegExp.CHAIN=new RegExp([RegExp.NAMED_PROPERTY.source,RegExp.ARRAY_INDEX.source,RegExp.IDENTIFIER.source].join('|'),'g');window.SortableConfig={};window.SortableConfig['formInput']={accept:"formInput",helperclass:"dropHover",snapDistance:20};window.SortableConfig['buttonSetInput']={accept:"buttonSetInput",helperclass:"dropTarget",snapDistance:20};window.SortableConfig['gridInput']={accept:"gridInput",helperclass:"dropHover",snapDistance:20};window.Build={single:{},list:{},typeMap:{},templateMap:{},containerTags:{},params:{},sortableConfig:{},availableSpace:{},bindEvents:{},destroy:{},afterLoad:{},copy:{},design:false,rebuild:function(namespace,key,reloadTemplate){if(window.Build.design){window.FormDesigner.setDirty(true);}
var elementId=window.Build.design?key:window.FormData[namespace][key].id;var componentDom=window.Build.util.getComponentContainer(elementId,namespace).get(0);var configData=window.FormDesigner[namespace].jsonForm.data[key];var type=window.FormDesigner.getType(componentDom);if(!reloadTemplate&&window.Build.rebuild[configData.view]&&window.Build.rebuild[configData.view][type]){window.Build.rebuild[configData.view][type](componentDom,configData);}else{var tempDocument=document.createDocumentFragment();var placeholder=componentDom.cloneNode(false);$(componentDom).after(placeholder);tempDocument.appendChild(componentDom);window.FormDesigner.loadWithCaching(type,configData,componentDom,function(){var eraseIds=window.Build.util.isStaticTemplate(type);var cDomPtrs=window.Build.util.getPointersMap(componentDom,{},eraseIds);window.Build[configData.view][type](componentDom,configData,cDomPtrs);if(!window.Build.design){if(window.Build.bindEvents[type]){$(componentDom).unbind();window.Build.bindEvents[type](componentDom,configData,cDomPtrs);}}
placeholder.parentNode.replaceChild(tempDocument,placeholder);delete cDomPtrs;});}
if(window.Build.design&&type==='button'){window.Build.afterLoad.form();}},build:function(layout,parentContainer,namespace){var key=layout.key||layout;var configData=window.FormDesigner[namespace].jsonForm.data[key];if(!configData){return null;}
configData.namespace=namespace;if(!window.Build.design&&window.FormDesigner[namespace].extraParams.disabledOverride==='true'){configData.disabled=window.FormDesigner[namespace].extraParams.disabledOverride;}
if(!configData.typeName){window.FormDesigner.initLegacyComponent(configData);}
var type=configData.typeName;var tempDocument=document.createDocumentFragment();var container=window.Build.createContainer(namespace,configData.id,key,type);var placeholder=container.cloneNode(false);parentContainer.appendChild(placeholder);tempDocument.appendChild(container);function buildCallback(){window.componentKey=configData.key;configData.view=configData.view||"single";var eraseIds=window.Build.util.isStaticTemplate(type);var cDomPtrs=window.Build.util.getPointersMap(container,{},eraseIds);try{if(window.Layout[type]){(window.Build[configData.view][type]&&window.Build[configData.view][type](container,configData,layout,cDomPtrs));}else{(window.Build[configData.view][type]&&window.Build[configData.view][type](container,configData,cDomPtrs));}
if(!window.Build.design){(window.Build.bindEvents[type]&&window.Build.bindEvents[type](container,configData,cDomPtrs));if(configData.view==='single'){window.FormDesigner.ComponentCache.add(namespace,configData.id,container);}else{window.FormDesigner.ComponentCache.init(namespace,configData.id);}}}catch(e){ASI_LOG.error("An error ocurred when building an element. Type: {0}, id: {1}, error: {2}".supplant(type,configData.id,e.message));ASI_LOG.error("configData: {0}".supplant(JSON.stringify(configData)));window.FormDesigner[namespace].errorInForm=true;}
placeholder.parentNode.replaceChild(tempDocument,placeholder);delete cDomPtrs;window.FormDesigner[namespace].renderCounter--;window.FormDesigner[namespace].formLoadingCounter++;window.Build.util.displayLoadingCounter(window.FormDesigner[namespace].formLoadingCounter,namespace);var pcRenderCounter=parentContainer.renderCounter;if(pcRenderCounter>0){parentContainer.renderCounter=--pcRenderCounter;}
if(window.FormDesigner[namespace].renderCounter===0){if(window.FormDesigner[namespace].errorInForm){backgroundAction("/portal/error.jsp","portalContent");}
else{if(window.Build.design){LOADING.show();window.FormDesigner.initWorkspace();window.FormDesigner.loadFormConfig();window.Build.afterLoad.form();var endLoadForm=new Date();LOADING.hide();ASI_LOG.debug(window.loggingField+"   loadForm   "+(endLoadForm.getTime()-window.startLoadForm.getTime()));}
else{window.Build.util.getComponentContainer('form0',namespace).trigger(EVENT_FORM_LOAD);var endRender=new Date();ASI_LOG.debug(window.loggingField+"   renderForm   "+(endRender.getTime()-window.startRender.getTime()));LOADING.hide();}}
window.Build.util.displayLoadingCounter(window.FormDesigner[namespace].formComponentSize,namespace);}}
window.FormDesigner[namespace].renderCounter++;window.FormDesigner.readDefaultValue(configData);window.FormDesigner.loadWithCaching(type,configData,container,buildCallback);return container;},all:function(componentDom,configData){if(window.Build.design){var jComponent=$(componentDom);jComponent.click(window.FormDesigner.selectComponent).click(window.FormDesigner.eventLoadConfigPane);if(configData.typeName!=='form'){if(componentDom.onmouseover){jComponent.unbind("mouseover");}
if(componentDom.onmouseout){jComponent.unbind("mouseout");}
jComponent.hover(window.FormDesigner.hoverOverComponent,window.FormDesigner.hoverOutComponent);}}
Snippets.applyCustomCss(configData.namespace,configData.key,componentDom);},layout:function(componentDom,configData,layout){window.Build.all(componentDom,configData);function setKeyTags(container,key){if(container.nodeType===3){return;}
var prop;for(var i=0;i<container.childNodes.length;i++){var node=container.childNodes[i];if(node.nodeType!=3&&node.getAttribute){if((prop=node.getAttribute('keyTag'))){node.setAttribute('keyTag',prop+key);}
setKeyTags(node,key);}}}
setKeyTags(componentDom,configData.key);window.Build.util.handleDelete(componentDom,configData);},element:function(componentDom,configData,cDomPtrs){window.Build.all(componentDom,configData);window.Build.util.handleLabelPosition(componentDom,configData);window.Build.util.handleLegend(componentDom,configData,cDomPtrs);window.Build.util.handleReadOnly(componentDom,configData);window.Build.util.handleInstructions(componentDom,configData,cDomPtrs);window.Build.util.handleDisplay(componentDom,configData);window.Build.util.displayValidationMessages(componentDom,configData,cDomPtrs);window.Build.util.handleDelete(componentDom,configData);},createContainer:function(namespace,id,key,type){var elementId=window.Build.design?key:id;var containerTag="FIELDSET";var containerClasses="";if(window.Build.containerTags[type]){containerTag=window.Build.containerTags[type].tag||containerTag;containerClasses=window.Build.containerTags[type].classes||containerClasses;}
var container="".node(containerTag,{id:window.Build.util.getUniqueDOMId(namespace,elementId),key:key,namespace:namespace,componentType:type,className:containerClasses});return container;},util:{getComponentContainer:function(id,namespace){return $('#'+window.Build.util.getUniqueDOMId(namespace,id));},getUniqueDOMId:function(namespace,id){return window.FormConstants.COMPONENT_ID_PREFIX+namespace+id;},getPointersMap:function(container,nodes,removeId){if(container.nodeType===3){return;}
var prop,i,node;if(removeId){for(i=0;i<container.childNodes.length;i++){node=container.childNodes[i];if(node.nodeType!=3&&node.getAttribute){if((prop=node.getAttribute('id'))){nodes[prop]=node;node.removeAttribute('id');}
window.Build.util.getPointersMap(node,nodes,removeId);}}}else{for(i=0;i<container.childNodes.length;i++){node=container.childNodes[i];if(node.nodeType!=3&&node.getAttribute){if((prop=node.getAttribute('id'))){nodes[prop]=node;}
window.Build.util.getPointersMap(node,nodes,removeId);}}}
return nodes;},isStaticTemplate:function(type){var re=/\.html$/gim;return window.Build.templateMap[type].control.match(re)===null?false:true;},getParentComponent:function(domElement){var ancestors=$(domElement).ancestors('[@key]');if(ancestors.size()>0){return ancestors.get(0);}
return null;},getContainers:function(componentDom,configData){var containers;switch(configData.view){case'list':containers=$(componentDom).filter('[@index]');if(containers.length===0){containers=$('[@index]',componentDom);}
break;default:containers=$(componentDom);}
return containers;},handleLabelPosition:function(componentDom,configData){if(!configData.labelPosition||!(configData.labelPosition in set('left','above','right'))){configData.labelPosition='right';}
var jComponentDom=$(componentDom);if(configData.labelPosition=='left'){jComponentDom.removeClass("legendAbove");jComponentDom.removeClass("legendRight");jComponentDom.addClass("legendLeft");}else if(configData.labelPosition=='above'){jComponentDom.removeClass("legendLeft");jComponentDom.removeClass("legendRight");jComponentDom.addClass("legendAbove");}else{jComponentDom.removeClass("legendAbove");jComponentDom.removeClass("legendLeft");jComponentDom.addClass("legendRight");}},handleLegend:function(componentDom,configData,cDomPtrs){var legendField,labelField;if(cDomPtrs){legendField=cDomPtrs['legend']?$(cDomPtrs['legend']):null;labelField=cDomPtrs['controlLabel']?$(cDomPtrs['controlLabel']):null;}else{legendField=$('.legend',componentDom);labelField=$('[@name="controlLabel"]',componentDom);}
if((!legendField||legendField.size()<=0)&&(!labelField||labelField.size()<=0)){return;}
var legend=configData.label||"";if(configData.required){if(configData.required=='true'){if(configData.labelPosition==='right'){legend=window.FormConstants.spanRequired+legend;}else{legend+=window.FormConstants.spanRequired;}}}else{configData.required='false';}
if(legendField&&legendField.size()>0){if(legend){legendField.html(legend).css('display','block');}else{legendField.hide();}}
if(labelField&&labelField.size()>0){labelField.html(legend);}},handleReadOnly:function(componentDom,configData){var jComponentDom=$(componentDom);jComponentDom.removeClass("readOnly");if(configData.readOnly){if(configData.readOnly=='true'){jComponentDom.addClass("readOnly");}}else{configData.readOnly='false';}},getCustomDisplayReference:function(namespace,key){var mappedTo=window.FormData[namespace][key].mappedTo;if(mappedTo){for(var i=0;i<window.FormDesigner[namespace].modelerParams.length;i++){var acp=window.FormDesigner[namespace].modelerParams[i];if(acp.key==mappedTo){var customDisplayReference;if(typeof acp.getCustomDisplayReference=='function'){customDisplayReference=acp.getCustomDisplayReference();}else{customDisplayReference=acp.customDisplayReference;}
if(customDisplayReference){return customDisplayReference;}}}}
return null;},handleInstructions:function(componentDom,configData,cDomPtrs){var instructionsField;if(cDomPtrs){instructionsField=cDomPtrs['instructions']?$(cDomPtrs['instructions']):null;}else{instructionsField=$('.instructions',componentDom);}
if(!instructionsField||instructionsField.size()<=0){return;}
var instructions=configData.instructions||"";if(instructions){instructionsField.html(instructions).css('display','block');}else{instructionsField.hide();}},handleDisplay:function(componentDom,configData){if(!configData.displayField){configData.displayField='show';}
if(window.Build.design){if(configData.displayField in set('hide','conditional')){$(componentDom).addClass("conditionalInput");}else{$(componentDom).removeClass("conditionalInput");}}},bindCustomEvents:function(containers,configData){var customEvents=configData.customEvents||[];for(var i=0;i<customEvents.length;i++){var currentEvent=customEvents[i];if(!Util.isNull(currentEvent.event)&&!Util.isNull(currentEvent.value)){(function(eventName,eventValue){$(containers).bind(eventName,function(){var msg='An exception was thrown by the custom event "{0}" with rule "{1}".'.supplant(eventName,eventValue.escapeJS());try{window.FormDesigner.runtimeNamespace=configData.namespace;eval(eventValue);}catch(e){ASI_LOG.error(msg+' -> '+toJSON(e));asi.alert(msg);}});})(currentEvent.event,currentEvent.value);}}},displayValidationMessages:function(componentDom,configData,cDomPtrs){if(!window.Build.design){var msgContainer;if(cDomPtrs){msgContainer=cDomPtrs['errorMessage']?$(cDomPtrs['errorMessage']):null;}else{msgContainer=$('.errorMessage',componentDom);}
if(!msgContainer||msgContainer.size()<=0){return;}
var validationMessages=configData.validationMessages||[];if(validationMessages.length>0){for(var i=0;i<validationMessages.length;i++){validationMessages[i]=StringSecurityUtils.encodeHtml(validationMessages[i]);}
msgContainer.html(validationMessages.join('<br/>')).css('display','block');}else{msgContainer.hide();}}},handleDelete:function(componentDom,configData){if(window.Build.design&&configData.typeName!=='form'){var deleteImg=$('.componentTools',componentDom).get(0);if(!deleteImg){var el=$("<img src='"+window.FormConstants.hiddenDeleteIndicator+"' alt='Delete this field' class='componentTools' imgkey='"+StringSecurityUtils.encodeHtml(configData.key)+"'>");el.click(function(e){var type=configData.typeName;var msg=window.Build.util.getDeleteMessage(type);Snippets.deleteComponent(configData.key,msg,true);e.cancelBubble=true;});if(configData.typeName==='section'){var sectionContent=$('[@keyTag="sectionContent'+configData.key+'"]',componentDom);el.css('margin','-20px');sectionContent.prepend(el.get(0));}else{$(componentDom).prepend(el.get(0));}}}},getDeleteMessage:function(type){var display;switch(type){case'section':display='section';break;case'grid':display='grid';break;case'report':display='report';break;case'tabs_container':display='tabs container';break;case'tab':display='tab';break;default:display='field';}
return'Are you sure you want to delete this {0}?'.supplant(display);},displayLoadingCounter:function(count,namespace){var size=window.FormDesigner[namespace].formComponentSize;window.status=_GENERAL.FormLoadingMessage.supplant(Math.round((count/size)*100));if(size===count){window.status='';}},grid:{buildHeader:function(componentDom,configData,cDomPtrs){var componentId=window.Build.design?configData.key:configData.id;componentId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var instructions,msgContainer,legend;if(cDomPtrs){instructions=cDomPtrs['instructions']?$(cDomPtrs['instructions']):null;msgContainer=cDomPtrs['errorMessage']?$(cDomPtrs['errorMessage']):null;legend=cDomPtrs['legend']?$(cDomPtrs['legend']):null;}else{instructions=$('.instructions',componentDom);msgContainer=$('.errorMessage',componentDom);legend=$('.legend',componentDom);}
var header=''.node('DIV',{'gridId':componentId,'componentType':configData.typeName,'className':'gridHeader','namespace':configData.namespace,'key':configData.key});var instrError=''.node('DIV',{'className':'fields'});if(instructions&&instructions.size()>0){var intr=instructions.clone().removeClass('nonCloneable').get(0);$(instrError).append(intr);}
var err=null;if(msgContainer&&msgContainer.size()>0){err=msgContainer.clone().get(0);$(instrError).append(err);}
var leg=null;if(legend&&legend.size()>0){leg=legend.clone().get(0);$(header).append(leg);}
$(header).append(instrError);window.Build.util.displayValidationMessages(header,configData,{'errorMessage':err});window.Build.util.handleLegend(header,configData,{'legend':leg});window.Build.util.handleDelete(header,configData);return header;},buildClones:function(componentDom,configData,length){var componentId=configData.id;componentId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var type=configData.typeName;var cloneableControl=$('.cloneable',componentDom).Cloneable();cloneableControl.attr({'gridId':componentId,'namespace':configData.namespace,'key':configData.key,'componentType':type});var cloneable=cloneableControl.get(0);var clones=[];for(var i=0;i<length;i++){clones[i]=cloneable.clone();clones[i].setAttribute('index',i);window.FormDesigner.ComponentCache.add(configData.namespace,configData.id,clones[i]);}
clones[clones.length]=cloneable;window.Build.util.handleReadOnly(clones,configData);return clones;}},text:{copy:function(cloneableDom,index,controlNamePrefix){var cloneable=$(cloneableDom);var configData=window.FormData[cloneable.attr('namespace')][cloneable.attr('key')];cloneable.Cloneable();var clone=cloneable.get(0).clone();clone.setAttribute('index',index);var control=$('[@id^="{0}"]'.supplant(controlNamePrefix),clone);var id=control.id()+'_'+index;control.id(id);$('[@for^="{0}"]'.supplant(controlNamePrefix),clone).attr('for',id);window.Build.bindEvents[configData.typeName](clone,configData);return clone;},read:function(value,configData){if(value==null){configData.defaultValue="";}else{if(value.constructor==Array){configData.defaultValue=value.join(_AE.uiDelimiter);}else{configData.defaultValue=''+value;}}},value:function(componentDom,configData,asArray){var componentId=window.Build.util.getUniqueDOMId(configData.namespace,configData.id);var values=[];switch(configData.view){case'list':var controls=$('[@id^="textControl_"]',$(componentDom));var currentValue;for(var i=0;i<controls.length;i++){values.push(controls.get(i).value);}
break;default:values.push($('#textControl_'+componentId,$(componentDom)).val());}
if(asArray){return{id:values};}else{return{id:values.join(_AE.uiDelimiter)};}},generateControl:function(templateControl,configData,componentId,componentName){var controlAttr={type:'text',id:componentId,className:'medium'};if(window.Build.design||eval(configData.readOnly)){controlAttr['readOnly']='true';}
var newControl=createNamedElement('input',componentName,controlAttr);$(templateControl).before(newControl).remove();return newControl;},buildSingleViewText:function(componentDom,configData,cDomPtrs){var componentId=window.Build.design?configData.key:configData.id;var controlId="textControl_"+window.Build.util.getUniqueDOMId(configData.namespace,componentId);window.Build.element(componentDom,configData,cDomPtrs);$(cDomPtrs['fields']).removeClass('cloneable');$(cDomPtrs['instructions']).removeClass('nonCloneable');var control=cDomPtrs['textControl'];control=window.Build.util.text.generateControl(control,configData,controlId,componentId);cDomPtrs['textControl']=control;control=$(control);$(cDomPtrs['controlLabel']).attr('for',controlId);control.val(configData.defaultValue);if(eval(configData.disabled)){control.attr('disabled','true');}else{control.removeAttr('disabled');}
return control.get(0);},buildListViewText:function(componentDom,configData,cDomPtrs){var componentId=window.Build.design?configData.key:configData.id;var controlId='textControl_'+window.Build.util.getUniqueDOMId(configData.namespace,componentId);window.Build.all(componentDom,configData);if(!configData.readOnly){configData.readOnly='false';}
var header=window.Build.util.grid.buildHeader(componentDom,configData,cDomPtrs);var controls=[cDomPtrs['textControl']];var jComponentDom=$(componentDom);if(window.Build.design){jComponentDom.empty();jComponentDom.append(header);}else{var control=cDomPtrs['textControl'];if(typeof configData.label==='undefined'||configData.label===null){$(cDomPtrs['controlLabel']).html('');}else{$(cDomPtrs['controlLabel']).html(configData.label);}
control=window.Build.util.text.generateControl(control,configData,controlId,componentId);cDomPtrs['textControl']=control;var values=configData.defaultValue?configData.defaultValue.split(_AE.uiDelimiter):[];var clones=window.Build.util.grid.buildClones(componentDom,configData,values.length);controls=$(clones).find('[@id^="textControl"]').get();var controlLabels=$(clones).find('[@name="controlLabel"]').get();var id,currentControl,controlAttr;var numControls=controls.length;for(var i=0;i<numControls-1;i++){id=controlId+'_'+i;currentControl=$(controls[i]);controlAttr={'id':id,'value':(values[i]?values[i].trim():'')};if(eval(configData.disabled)){controlAttr['disabled']='true';}
currentControl.attr(controlAttr);controlLabels[i].setAttribute('for',id);}
currentControl=$(controls[numControls-1]);controlAttr={'id':controlId,'value':''};if(eval(configData.disabled)){controlAttr['disabled']='true';}
currentControl.attr(controlAttr);controlLabels[numControls-1].setAttribute('for',controlId);jComponentDom.empty();jComponentDom.append(header).append(clones);cDomPtrs['containers']=clones;}
cDomPtrs['controls']=controls;return controls;},bindTextEvents:function(componentDom,configData,cDomPtrs){if(configData.readOnly&&configData.readOnly=='true'){return;}
var containers,controls;if(configData.view==='single'){containers=[componentDom];controls=[cDomPtrs['textControl']];}else if(configData.view==='list'){if(cDomPtrs){containers=cDomPtrs['containers'].subArray(0,cDomPtrs['containers'].length-1);controls=cDomPtrs['controls'].subArray(0,cDomPtrs['controls'].length-1);}else{containers=[componentDom];controls=$('[@id^="textControl_"]',componentDom).get();}}
window.Build.util.bindCustomEvents(containers,configData);$(containers).change(function(){window.FormValidate(configData.namespace,configData.key,this.getAttribute('index'));});window.Events.attachCommonEvent(controls,containers,["blur","focus","change"]);},destroy:function(componentDomArray,configData){for(var i=0;i<componentDomArray.length;i++){$('[@id^="textControl_"]',componentDomArray[i]).unbind();}}},picker:{copy:function(cloneableDom,index,controlNamePrefix){var clone=window.Build.util.text.copy(cloneableDom,index,controlNamePrefix);var configData=window.FormData[cloneableDom.getAttribute('namespace')][cloneableDom.getAttribute('key')];var type=configData.subType?configData.subType:configData.typeName;var pickerType=Mappings.FEtoPickerType(type);var input=$('input',clone).get(0);var config={pickerType:pickerType,acceptNullEntries:true,singlePicker:true,id:window.Build.util.getUniqueDOMId(configData.namespace,input.name)+'_'+$(clone).attr('index'),onValidate:function(){if(window.FormValidate(configData.namespace,configData.key,index)){STATUS.message(_ASI.Autocomplete.validEntryFound);}}};if(!eval(configData.disabled)&&!eval(configData.readOnly)){PICKER.lazyLoad(input,config);}
return clone;},events:["onpick"],bindPickerEvents:function(componentDom,configData,cDomPtrs){var containers,controls;if(configData.view==='single'){containers=[componentDom];controls=[cDomPtrs['pickerControl']];}else if(configData.view==='list'){if(cDomPtrs){containers=cDomPtrs['containers'].subArray(0,cDomPtrs['containers'].length-1);controls=cDomPtrs['controls'].subArray(0,cDomPtrs['controls'].length-1);}else{containers=[componentDom];controls=$('[@id^="pickerControl_"]',componentDom).get();}}
window.Build.util.bindCustomEvents(containers,configData);window.Events.attachCommonEvent(controls,containers,window.Build.util.picker.events);},destroy:function(componentDomArray,configData){var componentId=window.Build.util.getUniqueDOMId(configData.namespace,configData.id);if(configData.view=='list'){for(var i=0;i<componentDomArray.length;i++){$('[@id^="pickerControl"]',componentDomArray[i]).unbind();PICKER.destroy('asiFormPicker_{0}_{1}_'.supplant(componentId,i));}}else{$('[@id^="pickerControl"]',componentDomArray[0]).unbind();PICKER.destroy('asiFormPicker_{0}_'.supplant(componentId));}},buildSingleViewPicker:function(componentDom,configData,cDomPtrs){var componentId=window.Build.design?configData.key:configData.id;var controlId='pickerControl_'+window.Build.util.getUniqueDOMId(configData.namespace,componentId);window.Build.element(componentDom,configData,cDomPtrs);$(cDomPtrs['fields']).removeClass('cloneable');$(cDomPtrs['instructions']).removeClass('nonCloneable');var control=cDomPtrs['pickerControl'];control=window.Build.util.text.generateControl(control,configData,controlId,componentId);cDomPtrs['pickerControl']=control;control=$(control);$(cDomPtrs['controlLabel']).attr('for',controlId);control.attr('disabled',eval(configData.disabled)||false);var pickedItems=configData.pickedItems;var isSinglePicker=!eval(configData.multiple);var pickerType;var customDisplayReference=window.Build.util.getCustomDisplayReference(configData.namespace,configData.key);if(customDisplayReference){pickerType=customDisplayReference;}else{pickerType=Mappings.FEtoPickerType(configData.subType?configData.subType:configData.typeName);}
if(window.Build.design){control.val(PICKER.formatDisplay(pickedItems,isSinglePicker,pickerType));if(!control.attr('disabled')==true&&!eval(configData.readOnly)){control.after(Tag('IMG',{src:window.FormConstants.pickerCheckForNew,alt:_PICKER.Validate}));control.after(Tag('IMG',{src:window.FormConstants.pickerBrowse,alt:_PICKER.Directory}));}}else{if(control.attr('disabled')==true||eval(configData.readOnly)){if(!pickedItems||pickedItems.length==0){control.val('');}else{control.get(0).pickedItemsLazyLoad=pickedItems;control.val(PICKER.formatDisplay(pickedItems,isSinglePicker,pickerType));}}else{PICKER.lazyLoad(control.get(0),{pickerType:pickerType,acceptNullEntries:true,singlePicker:isSinglePicker,id:window.Build.util.getUniqueDOMId(configData.namespace,componentId),pickedItems:pickedItems,onValidate:function(){if(window.FormValidate(configData.namespace,configData.key)){STATUS.message(_ASI.Autocomplete.validEntryFound);}}});}}},buildListViewPicker:function(componentDom,configData,cDomPtrs){var componentId=window.Build.design?configData.key:configData.id;var controlId='pickerControl_'+window.Build.util.getUniqueDOMId(configData.namespace,componentId);window.Build.all(componentDom,configData);if(!configData.readOnly){configData.readOnly='false';}
var header=window.Build.util.grid.buildHeader(componentDom,configData,cDomPtrs);var controls=[cDomPtrs['pickerControl']];var jComponentDom=$(componentDom);if(window.Build.design){$(jComponentDom).empty();$(componentDom).append(header);}else{var control=cDomPtrs['pickerControl'];if(typeof configData.label==='undefined'||configData.label===null){$(cDomPtrs['controlLabel']).html('');}else{$(cDomPtrs['controlLabel']).html(configData.label);}
control=window.Build.util.text.generateControl(control,configData,controlId,componentId);cDomPtrs['pickerControl']=control;var values=configData.pickedItems;var clones=window.Build.util.grid.buildClones(componentDom,configData,values.length);var controls=$(clones).find('[@id^="pickerControl"]').get();var controlLabels=$(clones).find('[@name="controlLabel"]').get();var id,currentControl,controlAttr;var numControls=controls.length;for(var i=0;i<numControls-1;i++){id=controlId+'_'+i;currentControl=$(controls[i]);controlAttr={'id':id};if(eval(configData.disabled)){controlAttr['disabled']='true';}
currentControl.attr(controlAttr);controlLabels[i].setAttribute('for',id);var pickerType=Mappings.FEtoPickerType(configData.subType?configData.subType:configData.typeName);if(eval(configData.disabled)||eval(configData.readOnly)){if(!values||values.length==0){currentControl.val('');}else{currentControl.attr('pickedItemsLazyLoad',[values[i]]);currentControl.val(PICKER.formatDisplay([values[i]],!eval(configData.multiple),pickerType));}}else{var onValidate=(function(index){return function(){if(window.FormValidate(configData.namespace,configData.key,index)){STATUS.message(_ASI.Autocomplete.validEntryFound);}}})(i);PICKER.lazyLoad(currentControl.get(0),{pickerType:pickerType,acceptNullEntries:true,singlePicker:true,onValidate:onValidate,id:window.Build.util.getUniqueDOMId(configData.namespace,componentId)+'_'+i,pickedItems:[values[i]]});}}
currentControl=$(controls[numControls-1]);controlAttr={'id':controlId,'value':''};if(eval(configData.disabled)){controlAttr['disabled']='true';}
currentControl.attr(controlAttr);controlLabels[numControls-1].setAttribute('for',controlId);$(componentDom).empty();$(componentDom).append(header).append(clones);cDomPtrs['containers']=clones;}
cDomPtrs['controls']=controls;},read:function(value,configData){configData.defaultValue=value;var feBaseType=window.FormDesigner.getFeBaseType(configData.namespace,configData.key);var type=Mappings.FEtoParamType(feBaseType);configData.pickedItems=PICKER.normalizePickerValues(value,type);},getPickerValue:function(componentDom,configData){var controls=$('[@id^=pickerControl_]',$(componentDom));function getPickedItems(id,control){var pickedItems;if(control.hasPickerBeenLoaded){var picker=window['asiFormPicker_{0}_'.supplant(window.Build.util.getUniqueDOMId(configData.namespace,id))];pickedItems=picker.getDescriptorsArray();}else{pickedItems=control.pickedItemsLazyLoad||[];}
return pickedItems;}
var id=[];var type=[];var pickedItems;if(componentDom.length>0){if(configData.view==='list'){for(var i=0;i<controls.length;i++){pickedItems=getPickedItems(controls.get(0).name+'_'+componentDom[i].getAttribute("index"),controls.get(i));id.push(pickedItems&&pickedItems[0]&&pickedItems[0].id?pickedItems[0].id:'');type.push(pickedItems&&pickedItems[0]&&pickedItems[0].type?pickedItems[0].type:'');}}else{pickedItems=getPickedItems(controls.get(0).name,controls.get(0));for(i=0;i<pickedItems.length;i++){id.push(pickedItems[i].id);type.push(pickedItems[i].type);}}}
return{id:id.join(_AE.uiDelimiter),type:type.join(_AE.uiDelimiter)};}},expressionOptions:function(configData){var choices={entries:[],selected:[]};var labels=[];if(configData.displayLabels){labels=configData.displayLabels.multiple?configData.displayLabels.value:[configData.displayLabels.value];}
var values=[];if(configData.displayValues){values=configData.displayValues.multiple?configData.displayValues.value:[configData.displayValues.value];}
var numOptions=labels.length>values.length?labels.length:values.length;var entry,currentLabel,currentValue,currentType;var appianType=configData.displayValues&&isAppianType(configData.displayValues.type);var isCompoundPicker=PICKER.isCompound(Mappings.FEtoPickerType(Mappings.ParamTypetoFE(configData.displayValues.type)));var appianTypeLabel=configData.displayLabels&&isAppianType(configData.displayLabels.type);var isCompoundPickerLabel=PICKER.isCompound(Mappings.FEtoPickerType(Mappings.ParamTypetoFE(configData.displayLabels.type)));if(appianTypeLabel&&!isCompoundPickerLabel){labels=PICKER.normalizePickerValues(labels,configData.displayLabels.type);}
var appianObjectCache=window.FormDesigner.AppianObjectCache;for(var i=0;i<numOptions;i++){currentLabel=labels[i]?appianObjectCache.getDisplayValue(labels[i]):'';currentValue=values[i];if(Util.isNull(currentValue)){currentValue='';}
if(appianType){if(currentValue&&isCompoundPicker){currentType=currentValue.type;currentValue=currentValue.id;}else{currentType=configData.displayValues.type;}}
entry={label:currentLabel,id:currentValue};if(appianType){entry.type=currentType;}
choices.entries.push(entry);}
if(configData.defaultChoice){var defValue,defValues=configData.defaultChoice.multiple?configData.defaultChoice.value:[configData.defaultChoice.value];for(var j=0;j<defValues.length;j++){for(i=0;i<numOptions;i++){defValue=defValues[j];entry=choices.entries[i];if(appianType&&isCompoundPicker&&defValue){if(defValue.type===entry.type&&defValue.id===entry.id){choices.selected.push(i);}}else if(entry.id==(typeof defValue=='string'?defValue.trim():defValue)){choices.selected.push(i);}}}}
return choices;}}};window.Build.rebuild.single={};window.Build.rebuild.list={};window.Clean={};window.Destroy={};window.Events={attachCommonEvent:function(controls,containers,types){for(var i=0;i<types.length;i++){for(var j=0;j<controls.length;j++){(function(controls,containers,type,count){$(controls[count]).bind(type,function(){$(containers[count]).trigger(type);});})(controls,containers,types[i],j);}}}};var EVENT_SUBTYPE_CHANGED="subTypeChanged";var EVENT_SAVEAS_CHANGED="saveAsChanged";var EVENT_REQUIRED_TRUE="requiredTrue";var EVENT_MULTIPLE_CHANGED="multipleChanged";var EVENT_DISPLAY_NOT_SHOW="displayNotShow";var EVENT_FORM_LOAD="load";window.Initialize={};window.Inherit={};window.Layout={buildTree:function(componentDom){var componentKey=componentDom.getAttribute('key');var type=componentDom.getAttribute('componentType');if(Util.isNull(window.Layout[type])){return componentKey;}
var branchContent=window.Layout[type](componentDom);var branch={'key':componentKey};for(var property in branchContent){branch[property]=branchContent[property];}
return branch;}};function setLabel(labelJQueryObject,label){var childNodes=labelJQueryObject.get(0).childNodes;var isLabelSet=false;for(var i=childNodes.length-1;i>0;i--){if(childNodes[i].nodeType===3){childNodes[i].nodeValue=label;isLabelSet=true;break;}}
if(!isLabelSet){labelJQueryObject.append(label);}}
function createNamedElement(type,name,attr){var element;try{if(typeof attr.checked!=='undefined'&&attr.checked){element=document.createElement('<'+type+' name="'+name+'" checked="'+attr.checked+'">');}else{element=document.createElement('<'+type+' name="'+name+'">');}
if(attr){$(element).attr(attr);}}catch(e){}
if(!element||!element.name){element=document.createElement(type);if(attr){$(element).attr(attr);}
element.name=name;}
return element;}
Function.trace=function(caller){var trace=[],caller=caller||arguments.callee.caller;var source=caller.toString();var re_function=/.*?function ?([\w$_]*)(\(.*?\))[\w\W]+/;var name=source.replace(re_function,function(match,$1,$2){return(($1||'anonymous')+$2+'; ');});trace.push('\tat '+name);var args=name.match(/\(.*?\)/)[0];args=args.match(/\((.*?)\)/)[1].split(",");for(var i=0;i<caller.arguments.length;i++){if(!args[i]){args[i]='arguments[{0}]'.supplant(i);}
var argument=args[i].trim();var value=caller.arguments[i];trace.push(argument+'='+value);}
if(name.match(/^anonymous/)){trace.push(caller.toString().match(/[^\{]+\{([\w\W]+)\}/,'')[1].trim());}
if(caller.caller){trace.push(Function.trace(caller.caller));}
return trace.join('\n');};function Aspect(object){return{before:function(method,f){var original=object[method];if(!original){original=function(){return true;}}
object[method]=function(){if(f.apply(object,arguments)===true){return original.apply(object,arguments);}};},after:function(method,f){var original=object[method];if(!original){original=function(){return true;}}
object[method]=function(){if(original.apply(object,arguments)===true){return f.apply(object,arguments);}}},around:function(method,f){var original=object[method];object[method]=function(){object.yield=original;return f.apply(object,arguments);}}};}
window.Value={read:function Value(namespace,id){var componentDomArray=window.FormDesigner.ComponentCache.get(namespace,id);if(!componentDomArray||componentDomArray.length===0){return{id:'',type:''};}
var configData=window.FormDesigner.getConfigData(componentDomArray[0]);var type=configData.typeName;return(window.Value[type]&&window.Value[type](componentDomArray,configData));}};window.FormDesigner={formElementSynchronizer:{},jsonForm:{data:{}},initialize:function(){window.Build.design=true;window.FormDesigner.MessagePane.init();$(window).unload(function(){var modeler=window.opener;try{modeler.forms_tab.theDesignerHasBeenClosed();}catch(e){}});$('#workspace').height(document.body.clientHeight-130);},initWorkspace:function(){$('#workspace .sortable').each(function(){var sortableConfig=this.getAttribute('sortableConfig');if(sortableConfig){$(this).Sortable(window.SortableConfig[sortableConfig]);var children=$(this).children('[@componentType]');for(var i=0;i<children.length;i++){$(this).SortableAddItem(children.get(i));}}});},setSortableConfig:function(sortables,configType){$(sortables).attr('sortableConfig',configType);},loadFormConfig:function(){var namespace=window.FormDesigner.currentNamespace;var formDom=window.Build.util.getComponentContainer('form0',namespace).get(0);if(formDom){var type=window.FormDesigner.getType(formDom);var key=formDom.getAttribute("key");window.FormDesigner.loadConfigPane(type,key);window.FormDesigner.selectComponent.call(formDom);}},removeComponent:function(componentDom){$('.sortable',componentDom).DroppableDestroy();var namespace=componentDom.getAttribute('namespace');var components=$('[@key]',componentDom);for(var i=0;i<components.length;i++){delete window.FormData[namespace][components.get(i).getAttribute('key')];}
var key=componentDom.getAttribute('key');if(window.Destroy[componentDom.getAttribute('componentType')]){window.Destroy[componentDom.getAttribute('componentType')]([componentDom],window.FormData[namespace][key]);}
delete window.FormData[namespace][key];$(componentDom).remove();},getParams:function(configData){var type=configData.typeName;var params=window.Build.params[type]&&window.Build.params[type](configData);var extraParams=window.FormDesigner[configData.namespace].extraParams;if(params&&extraParams){for(var p in extraParams){params[p]=extraParams[p];}}
return params;},startDrag:function(){window.buttonClone=$(this).clone().get(0);$(this).after(window.buttonClone);},stopDrag:function(){var draggedButton=$(this);if($(draggedButton).parent().attr("class").match(/sortable/i)){window.FormDesigner.dropComponent(this,draggedButton.attr('inputType'),false);}
$(window.buttonClone).after(this).remove();},dropComponent:function(pointer,type,prevent){var namespace=window.FormDesigner.currentNamespace;window.FormDesigner.setDirty("true");var key=window.FormDesigner.generateId(namespace,type);var configData=window.FormDesigner.generateDefaultData(namespace,key,type);var tempDocument=document.createDocumentFragment();var container=window.Build.createContainer(namespace,configData.id,key,type);var placeholder=container.cloneNode(false);var parent=$(pointer).after(placeholder).parent();tempDocument.appendChild(container);if(parent.attr('class').match(/sortable/i)){parent.SortableAddItem(container);}
var parentCDom=window.Build.util.getParentComponent(placeholder);window.FormDesigner.initComponent(configData,window.FormDesigner.getConfigData(parentCDom));window.FormDesigner[namespace].jsonForm.data[key]=configData;function buildCallback(){window.FormDesigner[namespace].elementCounter++;var eraseIds=window.Build.util.isStaticTemplate(type);var cDomPtrs=window.Build.util.getPointersMap(container,{},eraseIds);if(window.Layout[type]){(window.Build[configData.view][type]&&window.Build[configData.view][type](container,configData,null,cDomPtrs));}else{(window.Build[configData.view][type]&&window.Build[configData.view][type](container,configData,cDomPtrs));}
placeholder.parentNode.replaceChild(tempDocument,placeholder);delete cDomPtrs;if(!prevent){$("select",$("#configPane").get(0)).remove();window.FormDesigner.loadConfigPane(type,key);window.FormDesigner.selectComponent.call($(container).get(0));if(type==='button'){window.Build.afterLoad.form();}}}
window.FormDesigner.loadWithCaching(type,configData,container,buildCallback);},createRuntimeComponent:function(pointer,type,namespace,key){var configData=window.FormDesigner.generateDefaultData(namespace,key,type);var tempDocument=document.createDocumentFragment();var container=window.Build.createContainer(namespace,configData.id,key,type);var placeholder=container.cloneNode(false);$(pointer).after(placeholder);tempDocument.appendChild(container);if(!window.Build.design&&window.FormDesigner[namespace].extraParams.disabledOverride==='true'){configData.disabled=window.FormDesigner[namespace].extraParams.disabledOverride;}
var parentCDom=window.Build.util.getParentComponent(placeholder);window.FormDesigner.initComponent(configData,window.FormDesigner.getConfigData(parentCDom));function buildCallback(){window.FormDesigner[namespace].jsonForm.data[key]=configData;window.componentKey=configData.key;var eraseIds=window.Build.util.isStaticTemplate(type);var cDomPtrs=window.Build.util.getPointersMap(container,{},eraseIds);if(window.Layout[type]){(window.Build[configData.view][type]&&window.Build[configData.view][type](container,configData,null,cDomPtrs));}else{(window.Build[configData.view][type]&&window.Build[configData.view][type](container,configData,cDomPtrs));}
window.FormDesigner.ComponentCache.add(namespace,configData.id,container);placeholder.parentNode.replaceChild(tempDocument,placeholder);delete cDomPtrs;}
window.FormDesigner.loadWithCaching(type,configData,container,buildCallback);},loadForm:function(jsonObject,isTaskForm,params,extraParams,mode,namespace){window.Build.design=true;window.FormDesigner.currentNamespace=namespace;var appianObjects=window.FormDesigner.getFormAppianObjects(jsonObject);if(appianObjects.length>0){ensureJSON(function(){server.processDesign.getDisplayNames(function(response){for(var i=0;i<response.length;i++){setAppianDisplayName(response[i].type,response[i].id,response[i].displayName);}
continueLoadForm();},appianObjects);});}else{continueLoadForm();}
function continueLoadForm(){window.startLoadForm=new Date();window.FormDesigner[namespace]={};window.FormDesigner[namespace].renderCounter=0;window.FormDesigner[namespace].elementCounter=0;window.FormDesigner[namespace].jsonForm=jsonObject;window.FormDesigner[namespace].isTaskForm=isTaskForm;window.FormDesigner[namespace].modelerParams=params;window.FormDesigner[namespace].mode=mode;window.FormDesigner[namespace].processVariables=extraParams;var paramIds=[];for(var i=0;i<params.length;i++){paramIds.push(params[i].type);}
for(var i=0;i<extraParams.length;i++){paramIds.push(extraParams[i].type);}
var processModeler=window.opener;processModeler.DatatypeUtils.populateTypes(paramIds,function(){});DatatypeUtils.populateTypes(paramIds,function(){if(!window.FormData){window.FormData={};}
window.FormData[namespace]={};window.FormData[namespace]=jsonObject.data;window.FormDesigner[namespace].elementCounter=window.FormData[namespace]['form0'].elementCounter;window.FormDesigner[namespace].renderCounter=0;window.Build.build(jsonObject.tree,$('#workspace').get(0),namespace);setTimeout('$("#splash").hide();',1300);});}},generateLayout:function(namespace){var formDom=window.Build.util.getComponentContainer('form0',namespace).get(0);var tree=window.Layout.buildTree(formDom);tree.typeName="tree";return tree;},renderForm:function(jsonObject,container,namespace){var appianObjects=window.FormDesigner.getFormAppianObjects(jsonObject);if(appianObjects.length>0){ensureJSON(function(){server.processDesign.getDisplayNames(function(response){LOADING.show();for(var i=0;i<response.length;i++){setAppianDisplayName(response[i].type,response[i].id,response[i].displayName);}
callback();},appianObjects);});}else{LOADING.show();callback();}
function callback(){window.FormDesigner[namespace].jsonForm=jsonObject;if(!window.FormData){window.FormData={};}
window.FormData[namespace]={};window.FormData[namespace]=jsonObject.data;$("#portalContent").unload(function(){window.FormDesigner.unloadForm(namespace);});window.FormDesigner[namespace].eventCache=[];window.FormDesigner[namespace].renderCounter=0;window.FormDesigner[namespace].elementCounter=0;window.FormDesigner.ComponentCache.remove(namespace);window.FormDesigner[namespace].formLoadingCounter=0;window.FormDesigner[namespace].formComponentSize=0;for(var key in window.FormData[namespace]){window.FormDesigner[namespace].formComponentSize++;}
window.FormDesigner[namespace].errorInForm=false;window.Build.util.displayLoadingCounter(0,namespace);var params=[];for(var i=0;i<window.FormDesigner[namespace].modelerParams.length;i++){params.push(window.FormDesigner[namespace].modelerParams[i].type);}
DatatypeUtils.populateTypes(params,function(){window.Build.build(jsonObject.tree,container,namespace);});}},unloadForm:function(namespace){var s=new Date().getTime();var configData,componentDomArray;var cache=window.FormDesigner.ComponentCache;try{for(var component in window.FormData[namespace]){configData=window.FormData[namespace][component];componentDomArray=window.FormDesigner.ComponentCache.get(namespace,configData.id);if(componentDomArray){(window.Destroy[configData.typeName]&&window.Destroy[configData.typeName](componentDomArray,configData));cache.remove(configData.namespace,configData.id);}}}catch(e){ASI_LOG.error("The form of namespace "+namespace+" couldn't be unloaded because: "+e.message);}},generateId:function(namespace,type){return(type||"Field")+window.FormDesigner[namespace].elementCounter;},generateDefaultData:function(namespace,key,type){var configData={id:key,key:key,namespace:namespace,label:"Label",typeName:type,customValidations:[],customEvents:[]};return configData;},loadConfigPane:function(type,key,callback){LOADING.show();var namespace=window.FormDesigner.currentNamespace;$('#configPane').trigger("destroy").unbind("destroy");var configUrl=window.Build.templateMap[type].config;var configData=window.FormData[namespace][key];var params=window.FormDesigner.getParams(configData);if(!params){params={};}
params.isConfigPane=true;params.isTaskForm=window.FormDesigner[namespace].isTaskForm;window.componentKey=key;window.FormDesigner.loadTemplate($('#configPane'),configUrl.url(),params,callback);$('#configPane').keyup(function(e){e.cancelBubble=true;});},eventLoadConfigPane:function(event){var startTime=new Date();var type=this.getAttribute("componentType");var key=this.getAttribute("key");window.FormDesigner.loadConfigPane(type,key);var endTime=new Date();ASI_LOG.debug(window.loggingField+"   eventLoadConfigPane   "+(endTime.getTime()-startTime.getTime()));return false;},selectComponent:function(event){if(window.selected){(window.selected).removeClass('selected');window.FormDesigner.hideDeleteImg(window.selected.get(0));}
$(this).addClass("selected");window.FormDesigner.showDeleteImg($(this).get(0));window.selected=$(this);if(window.hoveredQueue){window.hoveredQueue.forEach(function(item){if(item.attr('key')!==window.selected.attr('key')){item.removeClass('hovered');window.FormDesigner.hideDeleteImg(item.get(0));}});window.hoveredQueue.length=0;}
return false;},hoverOverComponent:function(event){if(!window.hoveredQueue){window.hoveredQueue=[];}
var jLastHovered=window.hoveredQueue[window.hoveredQueue.length-1];if(jLastHovered){jLastHovered.removeClass('hovered');window.FormDesigner.hideDeleteImg(jLastHovered.get(0));}
$(this).addClass('hovered');window.FormDesigner.showDeleteImg($(this).get(0));(window.hoveredQueue).push($(this));return false;},hoverOutComponent:function(event){$(this).removeClass('hovered');if(window.selected&&window.selected.attr('key')!==$(this).attr('key')){window.FormDesigner.hideDeleteImg($(this).get(0));}
if(!window.hoveredQueue){return;}
var nextInQueue=window.hoveredQueue[window.hoveredQueue.length-1];if(nextInQueue&&nextInQueue.attr('key')===$(this).attr('key')){window.hoveredQueue.pop();var lastHovered=window.hoveredQueue[window.hoveredQueue.length-1];if(lastHovered){lastHovered.addClass('hovered');window.FormDesigner.showDeleteImg(lastHovered.get(0));}}else{window.hoveredQueue.forEach(function(item){item.removeClass('hovered');window.FormDesigner.hideDeleteImg(item.get(0));});window.hoveredQueue.length=0;}
return false;},hideDeleteImg:function(componentDom){var key=$(componentDom).attr('key');$('.componentTools[@imgKey="'+key+'"]',componentDom).attr('src',window.FormConstants.hiddenDeleteIndicator).show();},showDeleteImg:function(componentDom){var key=$(componentDom).attr('key');$('.componentTools[@imgKey="'+key+'"]',componentDom).attr('src',window.FormConstants.deleteIndicator).show();},getType:function(componentDom){var configData=window.FormDesigner.getConfigData(componentDom);return configData.typeName;},getSubType:function(componentDom){var configData=window.FormDesigner.getConfigData(componentDom);return configData.subType;},getFeBaseType:function(namespace,key){var type=window.FormData[namespace][key].typeName;var subType=window.FormData[namespace][key].subType;return subType?subType:type;},getMappedParameter:function(configData,params){var key=configData.saveAs.name;for(var i=0;i<params.length;i++){var nextParam=params[i];if(key==nextParam.key){return nextParam;}else if(nextParam.key==configData.mappedToBeanArray){var mappedBean=nextParam.value[configData.mappedToArrayIndex];for(var j=0;j<mappedBean.value.length;j++){if(mappedBean.value[j].key=="sppv"){return mappedBean.value[j];}}}}
return null;},initLegacyComponent:function(configData){if(configData.saveAs){var mappedParam=window.FormDesigner.getMappedParameter(configData,window.FormDesigner[configData.namespace].modelerParams);if(mappedParam){configData.subType=Mappings.ParamTypetoFE(mappedParam.type);}}
var updatedConfigData=window.Build.typeMap[configData.type];for(var property in updatedConfigData){configData[property]=updatedConfigData[property];}
configData.name=configData.id;},initComponent:function(configData,parentConfigData){configData.view='single';var parentType=parentConfigData.typeName;if(parentConfigData!==null&&parentType==='grid'){configData.view='list';configData.multiple='true';}
var properties=window.Inherit[parentType],prty;if(window.Layout[parentType]&&properties){for(var i=0;i<properties.length;i++){prty=properties[i];configData[prty]=parentConfigData[prty];}}
var initMethod=window.Initialize[configData.typeName];if(initMethod){initMethod(configData);}},getConfigData:function(componentDom){if(!componentDom){return null;}
var key=componentDom.getAttribute('key');var namespace=componentDom.getAttribute('namespace');return window.FormDesigner[namespace].jsonForm.data[key];},removeCurrentForm:function(){window.FormDesigner.removeComponent($('#workspace').children('[@componentType="form"]').get(0));},readDefaultValue:function(configData){var defaultValue;if(configData.saveAs){var mappedParam=window.FormDesigner.getMappedParameter(configData,window.FormDesigner[configData.namespace].modelerParams);if(mappedParam){if(Constants.TYPES[mappedParam.type].isRecord){var instanceType=Boolean.parseBoolean(mappedParam.multiple)?Constants.TYPES[mappedParam.type].listType:mappedParam.type;if(window.Build.design){defaultValue=DatatypeUtils.getNestedPropertyValue(mappedParam.interiorExpressions,instanceType,configData.saveAs.propertyIndex);if(!(YAHOO.lang.isString(defaultValue)&&defaultValue.trim().length>0)){defaultValue=DatatypeUtils.getNestedPropertyValue(mappedParam.value,instanceType,configData.saveAs.propertyIndex);}}else{defaultValue=DatatypeUtils.getNestedPropertyValue(mappedParam.value,instanceType,configData.saveAs.propertyIndex);}}else{defaultValue=!StringUtils.isBlank(mappedParam.expression)?mappedParam.expression:mappedParam.value;}
configData.defaultValue=defaultValue;}else{configData.saveAs=null;}}else{if(configData.defaultValue&&configData.defaultValue.constructor==String&&Boolean.parseBoolean(window.FormData[configData.namespace][configData.key].multiple)){defaultValue=configData.defaultValue.split(_AE.uiDelimiter);}else{defaultValue=configData.defaultValue;}}
(window.Read[configData.typeName]&&window.Read[configData.typeName](defaultValue,configData));},loadWithCaching:function(type,configData,container,callback){if(window.templateCache&&window.templateCache[type]){$(container).html(window.templateCache[type]);if(callback){callback();}}else{var controlTemplate=(window.Build.templateMap[type]&&window.Build.templateMap[type].control)||"";var params=window.FormDesigner.getParams(configData);window.FormDesigner.loadTemplate($(container),controlTemplate.url(),params,callback);}},loadTemplate:function(container,url,params,callback){var startTime=new Date();var debugCallBack=function(){if(callback){callback();}
var endTime=new Date();ASI_LOG.debug(window.loggingField+"   loadTemplate   "+url+"   "+(endTime.getTime()-startTime.getTime()));};if(params){container.load(url,params,debugCallBack);}else{container.load(url,debugCallBack);}},isIdUnique:function(namespace,id,key){for(var compKey in window.FormData[namespace]){if(key==compKey){continue;}
if(id==window.FormData[namespace][compKey].id){return false;}}
return true;},cleanFormData:function(namespace){var formDataCopy=copyBean(window.FormData[namespace]);for(var componentKey in formDataCopy){if(window.Clean[formDataCopy[componentKey].typeName]){window.Clean[formDataCopy[componentKey].typeName](formDataCopy[componentKey]);}}
return formDataCopy;},actions:{save:function(callback){var startSaveTime=new Date();LOADING.show();if(!window.FormDesigner.actions.validate(true)){LOADING.hide();return false;}
var configData;var namespace=window.FormDesigner.currentNamespace;for(var component in window.FormData[namespace]){configData=window.FormData[namespace][component];var defaultValue=configData.defaultValue;var canConvertDefaultValueToString=true;if(configData.saveAs){var isList=Boolean.parseBoolean(configData.multiple);var expression=ComponentsUtils.getExpressionFromValue(defaultValue);if(isList&&!expression&&defaultValue!=null&&defaultValue.constructor==String){defaultValue=defaultValue.split(_AE.uiDelimiter);}
var mappedParam=window.FormDesigner.getMappedParameter(configData,window.FormDesigner[namespace].modelerParams);var instanceType=Boolean.parseBoolean(mappedParam.multiple)?Constants.TYPES[mappedParam.type].listType:mappedParam.type;if(expression){var isTaskForm=window.FormDesigner[namespace].isTaskForm;if(Constants.TYPES[mappedParam.type].isRecord){mappedParam.interiorExpressions=DatatypeUtils.setNestedPropertyValue(mappedParam.interiorExpressions,instanceType,configData.saveAs.propertyIndex,defaultValue,true);mappedParam.value=DatatypeUtils.setNestedPropertyValue(mappedParam.value,instanceType,configData.saveAs.propertyIndex,null,false);mappedParam.expression=null;mappedParam.expressionFlag=0;}else{mappedParam.value=isTaskForm?expression:null;mappedParam.expression=expression;mappedParam.interiorExpressions=null;mappedParam.expressionFlag=1;}}else{if(Constants.TYPES[mappedParam.type].isRecord){mappedParam.value=DatatypeUtils.setNestedPropertyValue(mappedParam.value,instanceType,configData.saveAs.propertyIndex,defaultValue,false);mappedParam.interiorExpressions=DatatypeUtils.setNestedPropertyValue(mappedParam.interiorExpressions,instanceType,configData.saveAs.propertyIndex,null,true);}else{mappedParam.value=defaultValue;mappedParam.interiorExpressions=null;}
mappedParam.expressionFlag=0;mappedParam.expression=null;}
var feType=mappedParam.type;if(isAppianType(feType)||isDateOrTimeType(feType)){canConvertDefaultValueToString=false;}}
defaultValue=configData.defaultValue;if(defaultValue!=null&&canConvertDefaultValueToString){if(defaultValue.constructor==Array){configData.defaultValue=defaultValue.join(_AE.uiDelimiter);}else{configData.defaultValue=defaultValue+"";}}}
window.FormData[namespace]['form0'].elementCounter=window.FormDesigner[namespace].elementCounter;var jsonFormElements=window.FormDesigner.cleanFormData(namespace);var layoutTree=window.FormDesigner.generateLayout(namespace);ensureJSON(function(){server.processDesign.parseJSONForm(function(fes){if(!fes){asi.alert("There has been an error, the form can't be saved.");LOADING.hide();return;}
var namespace=window.FormDesigner.currentNamespace;var modeler=window.opener;modeler.forms_tab.saveForm(fes,window.FormDesigner[namespace].modelerParams);fixObjectType(window.FormDesigner[namespace].modelerParams);var endSaveTime=new Date();ASI_LOG.debug(window.loggingField+"   saveForm   "+(endSaveTime.getTime()-startSaveTime.getTime()));LOADING.hide();if(callback){window.FormDesigner.setDirty(false,callback);}else{window.FormDesigner.setDirty(false);asi.alert("The Form has been successfully saved.");}},jsonFormElements,layoutTree);});},saveAndClose:function(){window.FormDesigner.actions.save(window.FormDesigner.actions.close);},validate:function(hideStatusMessage){var startValidate=new Date();var problemsFound=[];FormDesigner.MessagePane.clear();var namespace=window.FormDesigner.currentNamespace;for(var componentKey in window.FormData[namespace]){var type=window.FormData[namespace][componentKey].typeName;var validateFunctions=window.FormDesigner.ValidateConfiguration[type];for(var item in validateFunctions){var error=validateFunctions[item](componentKey);if(error){error.sourceKey=componentKey;problemsFound.push(error);}}}
if(problemsFound.length===0){FormDesigner.MessagePane.hide();if(!hideStatusMessage){asi.alert("No problems found.");}
var endValidate=new Date();ASI_LOG.debug(window.loggingField+"   validateForm   "+(endValidate.getTime()-startValidate.getTime()));return true;}else{problemsFound.forEach(function(problem){FormDesigner.MessagePane.addRow(problem);});FormDesigner.MessagePane.show();endValidate=new Date();ASI_LOG.debug(window.loggingField+"   validateForm   "+(endValidate.getTime()-startValidate.getTime()));return false;}},close:function(){window.close();},displayExportForm:function(){backgroundAction('/forms/displayFormsExportDialog.do?$e=asiDialog&asiDialogSize=small');},displayImportForm:function(){if(window.FormDesigner.isDirty()){var msg="The current form is not saved. Importing and saving a form will overwrite the current form. Do you want to proceed?";asi.confirm(msg,function(){backgroundAction('/forms/displayFormsImportDialog.do?$e=asiDialog&asiDialogSize=small');});}else{backgroundAction('/forms/displayFormsImportDialog.do?$e=asiDialog&asiDialogSize=small');}}},loadImportedForm:function(response){if(response&&response.result&&response.result.jsonForm){var jsonForm=response.result.jsonForm;var newParams=response.result.newParams;var namespace=window.FormDesigner.currentNamespace;window.FormDesigner.setDirty(true);if(newParams){for(var key in newParams){window.FormDesigner[namespace].modelerParams.push(newParams[key]);}}
window.FormDesigner.removeCurrentForm();window.FormDesigner.loadForm(jsonForm,window.FormDesigner[namespace].isTaskForm,window.FormDesigner[namespace].modelerParams,window.FormDesigner[namespace].processVariables,window.FormDesigner[namespace].mode,namespace);window.FormDesigner.MessagePane.showMessages(response.result.importMessages);}else if(response&&response.errors&&response.errors.length>0){var modeler=window.opener;var errors=modeler.ap.beans.ValidationError.fromJSON(response.errors);window.FormDesigner.MessagePane.clear();for(var i=0;i<errors.length;i++){var item={};item.message=errors[i].getMessage();item.sourceKey="";window.FormDesigner.MessagePane.addRow(item);}
window.FormDesigner.MessagePane.show();}else{asi.alert('An unexpected error occurred while trying to import the form.');}
LOADING.hide();var endImport=new Date();ASI_LOG.debug(window.loggingField+'   importForm   '+
(endImport.getTime()-window.startImport.getTime()));},showFormProperties:function(){$("#formPropertiesPane").html("");var namespace=window.FormDesigner.currentNamespace;var tree=window.FormDesigner.generateLayout(namespace);function buildChildren(tree,ulNode_){if(!tree||!tree.children||tree.children.length===0){return ulNode_;}
var parentComponent=window.FormData[namespace][tree.key];var liNode=''.node('LI',{componentKey:tree.key});var spanNode=''.node('SPAN');var componentTypeName=parentComponent.typeName;componentTypeName=componentTypeName.charAt(0).toUpperCase()+componentTypeName.substr(1).toLowerCase();spanNode.innerHTML=parentComponent.label+' ('+componentTypeName+')';liNode.appendChild(spanNode);ulNode_.appendChild(liNode);var numberOfColumns=tree.children.length;for(var j=0;j<numberOfColumns;j++){var rows=tree.children[j];var numberOfRows=rows.length;for(var i=0;i<numberOfRows;i++){if(!rows[i]||!rows[i].children){continue;}
var component=window.FormData[namespace][rows[i].key];if(component.typeName==="section"){var ul=''.node('UL');ulNode_.appendChild(ul);ulNode_.appendChild(buildChildren(rows[i],ul));}}}
return ulNode_;}
var ulNode=''.node('UL');var nodes=buildChildren(tree,ulNode);$("#formPropertiesPane").append(nodes);$("#formPropertiesPane li span").mouseover(function(e){$(this).addClass("hover");var evt=e||event;evt.cancelBubble=true;evt.returnValue=false;});$("#formPropertiesPane li span").mouseout(function(e){$(this).removeClass("hover");var evt=e||event;evt.cancelBubble=true;evt.returnValue=false;});$("#formPropertiesPane li").click(function(){var componentKey=$(this).attr("componentKey");var configData=window.FormData[window.FormDesigner.currentNamespace][componentKey];var type=configData.typeName;window.FormDesigner.selectComponent.call(window.Build.util.getComponentContainer(configData.key,configData.namespace).get(0));window.FormDesigner.loadConfigPane(type,componentKey,function(){var validateFunctions=window.FormDesigner.ValidateConfiguration[type];for(var item in validateFunctions){validateFunctions[item](componentKey);}});});$("#formPropertiesPane").show();},isDirty:function(){var namespace=window.FormDesigner.currentNamespace;if(!window.FormDesigner[namespace].dirty){window.FormDesigner[namespace].dirty=false;}
return window.FormDesigner[namespace].dirty;},setDirty:function(booleanValue,callback){var namespace=window.FormDesigner.currentNamespace;if(booleanValue.constructor!=Boolean){if(booleanValue==="true"){window.FormDesigner[namespace].dirty=true;}else if(booleanValue==="false"){window.FormDesigner[namespace].dirty=false;}}else{window.FormDesigner[namespace].dirty=booleanValue;}
var modeler=window.opener;modeler.ap.Control.getActiveCanvas().setIsModifiedFlag(true);if(window.FormDesigner[namespace].dirty){if(Util.isNull(window.FormDesigner[namespace].lastSaved)){$("#lastSaved").html("Changes not saved");}else{$("#lastSaved").html("Changes not saved since "+window.FormDesigner[namespace].lastSaved);}
$("#lastSaved").removeClass("saved");window.onbeforeunload=function(){return"All unsaved changes will be lost.";};}else{Date.Util.getDateTimeStringsFromTimestamps([new Date().getTime()],function(response){window.FormDesigner[namespace].lastSaved=Date.Util.splitDatetimeString(response[0]).timeStr;$("#lastSaved").addClass("saved");$("#lastSaved").html("Saved at "+window.FormDesigner[namespace].lastSaved);(callback&&callback());});window.onbeforeunload=function(){};}},getFormAppianObjects:function(jsonForm){var appianObjects=[];if(!jsonForm||!jsonForm.data){return appianObjects;}
for(var componentKey in jsonForm.data){var configData=jsonForm.data[componentKey];var type=configData.typeName;var appianObjectFields=window.FormDesigner.AppianObjectCache.all;appianObjectFields=appianObjectFields.concat(window.FormDesigner.AppianObjectCache[type]||[]);if(!appianObjectFields){continue;}
for(var i=0;i<appianObjectFields.length;i++){var field=appianObjectFields[i];field=field.split(".");var fieldValue=configData[field[0]];for(var j=1;j<field.length;j++){fieldValue=fieldValue[field[j]];}
if(Util.isNull(fieldValue)){continue;}
appianObjects=appianObjects.concat(this.getAppianObjects(fieldValue));}}
return appianObjects;},getAppianObjects:function(fieldValue){var appianObjects=[];if(fieldValue.constructor==Array){for(j=0;j<fieldValue.length;j++){appianObjects=appianObjects.concat(this.getAppianObjects(fieldValue[j]));}}else if(!Util.isNull(fieldValue.type)){if(Util.isNull(fieldValue.value)){appianObjects.push({id:fieldValue.id,type:fieldValue.type});}else{appianObjects=window.PICKER.normalizePickerValues(fieldValue.value,fieldValue.type);}}else if(fieldValue.constructor==Object){for(var p in fieldValue){appianObjects=appianObjects.concat(this.getAppianObjects(fieldValue[p]));}}
return appianObjects;},getMappedToOptions:function(namespace,key,paramInstanceType){var mappedOptions=[];var params=window.FormDesigner[namespace].modelerParams;var lastACP=null;var mappedToObject=window.FormData[namespace][key];var mappedTo=(mappedToObject.saveAs&&mappedToObject.saveAs.name)||"";var mappedToBeanArray=mappedToObject.mappedToBeanArray;var mappedToArrayIndex=mappedToObject.mappedToArrayIndex;var numParams=params.length;for(var j=0;j<numParams;j++){var nextParam=params[j];var nextParamInstanceType=Boolean.parseBoolean(nextParam.multiple)?Constants.TYPES[nextParam.type].listType:nextParam.type;var name=nextParam.key;if(!name){continue;}
if(nextParam.hiddenFromDesigner||nextParam.inputToAc===0){}else if(nextParam.type==asi.TYPES.BEAN){var beanArrayName=nextParam.key;var beans=nextParam.value;var type=nextParam.type;for(var k=0;k<beans.length;k++){var subParams=beans[k].value;var numSubParams=subParams.length;for(var l=0;l<numSubParams;l++){var displayName=this.getBeanArrayElementDisplayName(nextParam,k,l);var subParamInstanceType=Boolean.parseBoolean(subParams[l].multiple)?Constants.TYPES[subParams[l].type].listType:subParams[l].type;if(displayName&&(paramInstanceType==subParamInstanceType)){match=false;var encodedName=subParams[l].key+"##"+beanArrayName+"##"+k;var current=mappedTo+"##"+mappedToBeanArray+"##"+mappedToArrayIndex;if(current&&!Util.isNull(mappedToBeanArray)){match=current.equalsIgnoreCase(encodedName);}
mappedOptions.push({display:displayName,displayWhenSelected:displayName,value:encodedName,match:match});}}}}else{match=false;if(mappedTo&&!mappedToBeanArray){match=mappedTo.equalsIgnoreCase(name);}
if(window.FormDesigner[namespace].isTaskForm||nextParam.parameter){if(Constants.TYPES[nextParam.type].isRecord){var output=AEUtils.generateDropdownData([nextParam],paramInstanceType);if(output.length===1){mappedOptions.push(output[0]);}}else if(DatatypeUtils.getFoundationInstanceType(nextParamInstanceType)===paramInstanceType){mappedOptions.push({display:name,value:name,match:match});}}}}
return mappedOptions;},getBeanArrayElementDisplayName:function(beanArrayACP,beanIndex,subParamIndex){var beanArrayName=beanArrayACP.key;var bean=beanArrayACP.value[beanIndex];var subParam=bean.value[subParamIndex];var acpName=subParam.key;if(beanArrayName=='inMap'){if(acpName=='sppn'){return null;}else if(acpName=='sppv'){for(var i=0;i<bean.value.length;i++){var currName=bean.value[i].key;if(currName=='sppn'){return bean.value[i].value;}}}}
return beanArrayACP.getName()+'['+beanIndex+'].'+acpName;},ComponentCache:{cache:{},init:function(namespace,id){this.cache[namespace]=this.cache[namespace]||{};this.cache[namespace][id]=this.cache[namespace][id]||[];},add:function(namespace,id,componentDom){this.init(namespace,id);this.cache[namespace][id].push(componentDom);return componentDom;},get:function(namespace,id){return this.cache[namespace][id];},remove:function(namespace,id,index){if(Util.isNull(id)){delete this.cache[namespace];return;}
if(Util.isNull(index)){delete this.cache[namespace][id];}else{var componentDomArray=this.cache[namespace][id];for(var i=0;i<componentDomArray.length;i++){if(componentDomArray[i].getAttribute('index')===index){componentDomArray.splice(i,1);break;}}}}}};window.AreDTHiddenFieldsInitialized={};function resetFDUnload(){window.onbeforeunload=function(){};}
$(document).keyup(function(e){if(e.keyCode==119){debugger;}
if(window.Build.design){if((e.keyCode===46||e.keyCode===8)&&(typeof DIALOGS=='undefined'||DIALOGS.length===0)){var type=window.FormData[window.FormDesigner.currentNamespace][window.componentKey].typeName;if(type!='form'){var msg=window.Build.util.getDeleteMessage(type);Snippets.deleteComponent(window.componentKey,msg,true);}}}});window.StandardValidate={};window.FormValidate=function(namespace,key,index,action){var isValid=true;var validationMessages=[];var configData=window.FormDesigner[namespace].jsonForm.data[key];var elementId=window.Build.design?key:configData.id;var gridId=window.Build.util.getUniqueDOMId(namespace,elementId);action=Util.isNull(action)?'':action;var saveAction=window.FormConstants.SAVE_ACTION.equalsIgnoreCase(action);index=typeof index==='undefined'?null:index;var componentDom;switch(configData.view){case'list':var gridDom=window.Build.util.getComponentContainer(configData.parentId,namespace);componentDom=$('div[@gridId='+gridId+']',gridDom);componentDom.filter(index!==null?'[@index='+index+']':'[@index]');break;default:componentDom=window.Build.util.getComponentContainer(elementId,namespace);}
if(componentDom.length>0){var type=window.FormDesigner.getType(componentDom.get(0));if(Boolean.parseBoolean(configData.required)&&!saveAction){var value=Value.read(configData.namespace,configData.id);var isMultiple=eval(configData.multiple)&&index==null;if(Util.isNull(value.id,isMultiple)){validationMessages.push(FIELD_REQUIRED.supplant(configData.label));isValid=false;}}
if(window.StandardValidate[type]){for(var i=0;i<window.StandardValidate[type].length;i++){var isStandardValid=window.StandardValidate[type][i].method(componentDom.get(),configData);if(!isStandardValid){validationMessages.push(window.StandardValidate[type][i].message(componentDom.get(),configData));isValid=false;}}}
if(!saveAction){var customValidations=configData.customValidations;var numValidations=!customValidations?0:customValidations.length;for(i=0;i<numValidations;i++){var validationMethod=customValidations[i].value;if(!Util.isNull(validationMethod)){var msg='An exception was thrown by the validation rule "{0}".'.supplant(validationMethod.escapeJS());var setNamespace='window.FormDesigner.runtimeNamespace = "'+configData.namespace+'";';var ftext="try{{0}}catch(e){asi.alert('{1}');}".supplant(setNamespace+validationMethod,msg);var result;if(index!=null){result=!!new Function("componentDom","configData","index",ftext)(componentDom.get(),configData,parseInt(index));}else{result=!!new Function("componentDom","configData",ftext)(componentDom.get(),configData);}
if(!result){validationMessages.push(window.FormDesigner.AppianObjectCache.getDisplayValue(customValidations[i].message));}
isValid=isValid&&result;}}}}
switch(configData.view){case'list':var gridError=(index!==null)?$('.errorIcon',componentDom):$('p.errorMessage[@gridId='+gridId+']',gridDom);if(!isValid){if(index!==null){gridError.attr("alt",StringSecurityUtils.unencodeHtml(validationMessages.join('. '))).attr("src",window.FormConstants.gridCellError);}else{var label=StringSecurityUtils.encodeHtml(configData.label);gridError.html(label+': '+validationMessages.join('<br/>'+label+': ')).show();}
componentDom.parent().addClass("cellError");}else{gridError.attr("alt",'').attr("src",window.FormConstants.hiddenGridCellError);componentDom.parent().removeClass("cellError");}
break;default:var msgContainerResult,messageContainer;if(window.Layout[configData.typeName]){msgContainerResult=$('.errorMessage[@keyTag="errorMessage'+configData.key+'"]',componentDom);}else{msgContainerResult=$('.errorMessage',componentDom);}
if(msgContainerResult.length>0){messageContainer=msgContainerResult.get(0);}
if(messageContainer){if(!isValid){messageContainer.innerHTML=validationMessages.join('<br/>');$(messageContainer).show();}else{$(messageContainer).hide();}}}
return isValid;};window.FormDesigner.ValidateUtilities={containsUiDelimiter:function(textArray){for(var i=0;i<textArray.length;i++){if(checkForDelimiter(textArray[i])){return true;}}
return false;function checkForDelimiter(text){if(StringUtils.isBlank(text)){return false;}
return text.match(_AE.uiDelimiter)!==null;}},compareRegExp:function(valueString,regExpStr){var regexp=new RegExp(regExpStr);var values=valueString.split(_AE.uiDelimiter);if(values&&values instanceof Array){for(var i=0;i<values.length;i++){if(values[i]&&!values[i].trim().match(regexp)){return false;}}}else{if(!valueString.match(regexp)){return false;}}
return true;},integer:function(value){if(!value){return true;}
var regexp="^(-)?\\d+$";return window.FormDesigner.ValidateUtilities.compareRegExp(value,regexp);},decimal:function(value){if(!value){return true;}
var regexp="^(-)?((\\d+(\\"+DECIMAL_SEPARATOR+"\\d*)?)|(\\"+DECIMAL_SEPARATOR+"\\d+))$";return window.FormDesigner.ValidateUtilities.compareRegExp(value,regexp);},dateTime:function(value,subType){return Date.Util.validate(ComponentsUtils.DateTimeUtils.parseDateTimeFields(value),subType);}};window.FormDesigner.DefaultConfValidation={id:function validate(componentKey){var problem;var namespace=window.FormDesigner.currentNamespace;var id=window.FormData[namespace][componentKey].id;if(!id){problem={message:'You must enter an Id.',type:'error'};}else{if(!id.match(/^[a-zA-Z_$][\w_$]*$/)){problem={message:'Id must consist of A-Z, 0-9, $ and underscores only.',type:'error'};}
if(id in set('abstract','as','boolean','break','byte','case','catch','char','class','continue','const','debugger','default','delete','do','double','else','enum','export','extends','false','final','finally','float','for','function','goto','if','implements','import','in','instanceof','int','interface','is','long','namespace','native','new','null','package','private','protected','public','return','short','static','super','switch','synchronized','this','throw','throws','transient','true','try','typeof','use','var','void','void','volatile','while','with')){problem={message:'Id cannot be a reserved word',type:'error'};}
if(!window.FormDesigner.isIdUnique(namespace,id,componentKey)){problem={message:'The id you selected is already in use.',type:'error'};}}
return problem;},choices:function(componentKey){if(!componentKey){return null;}
var configData=window.FormData[window.FormDesigner.currentNamespace][componentKey];var entries=configData.choices.entries;var problem=null;if(configData.importChoices==="literal"){if(entries.length===0){problem={message:"You need to specify at least one choice",type:"error"};}else{for(var i=0;i<entries.length;i++){if(!entries[i].id){problem={message:"You need to specify a value for each option",type:"error"};}else{switch(configData.subType){case'integer':if(!FormDesigner.ValidateUtilities.integer(entries[i].id)){problem={message:"You must enter an integer for each option",type:"error"};}
break;case'decimal':if(!FormDesigner.ValidateUtilities.decimal(entries[i].id)){problem={message:"You must enter a decimal for each option",type:"error"};}
break;}
if(problem!=null){break;}}}}
configData.choices.error=problem;}else if(configData.importChoices==="data"){if(typeof configData.displayValues==="undefined"){problem={message:"Please provide an expression for 'Value'",type:"error"};}else if(typeof configData.displayValues==="string"){if(configData.displayValues.trim().length===0){problem={message:"Please provide an expression for 'Value'",type:"error"};}else if(!configData.displayValues.isAppianExpression()){problem={message:"The value of 'Value' is not a valid expression. An expression starts with an equal sign.",type:"error"};}}
if(typeof configData.displayLabels==="undefined"){problem={message:"Please provide an expression for 'Display Label'",type:"error"};}else if(typeof configData.displayLabels==="string"){if(configData.displayLabels.trim().length===0){problem={message:"Please provide an expression for 'Display Label'",type:"error"};}else if(!configData.displayLabels.isAppianExpression()){problem={message:"The value of 'Display Label' is not a valid expression. An expression starts with an equal sign.",type:"error"};}}
if(typeof configData.defaultChoice==="string"&&configData.defaultChoice.trim().length>0&&!configData.defaultChoice.isAppianExpression()){problem={message:"The value of 'Default Value' is not a valid expression. An expression starts with an equal sign.",type:"error"};}}
return problem;},numberValue:function(componentKey){if(!componentKey){return null;}
var subType=window.FormData[window.FormDesigner.currentNamespace][componentKey].subType;var problem=null;if("integer"===subType){problem=window.FormDesigner.DefaultConfValidation.integer(componentKey);}else{problem=window.FormDesigner.DefaultConfValidation.decimal(componentKey);}
return problem;},integer:function(componentKey){if(!componentKey){return null;}
var configData=window.FormData[window.FormDesigner.currentNamespace][componentKey];var subType=configData.subType;if(subType!='integer'){return;}
var problem={message:"Number must be an integer.",type:'error'};var value=configData.defaultValue;if(!value||value.startsWith('=')){return null;}
var isValid=FormDesigner.ValidateUtilities.integer(value);if(!isValid){return problem;}else{return null;}},decimal:function(componentKey){if(!componentKey){return null;}
var configData=window.FormData[window.FormDesigner.currentNamespace][componentKey];var subType=configData.subType;if(subType!='decimal'){return;}
var problem={message:"Number must be a decimal.",type:"error"};var value=configData.defaultValue;if(!value||value.startsWith('=')){return null;}
var isValid=FormDesigner.ValidateUtilities.decimal(value);if(!isValid){return problem;}else{return null;}},appianTypeDefaultsForChoices:function(componentKey){if(!componentKey){return null;}
var configData=window.FormData[window.FormDesigner.currentNamespace][componentKey];if(isAppianType(Mappings.FEtoParamType(configData.subType))){var problem={message:"The default value must be saved into an activity class parameter or process parameter.",type:"error"};var isMapped=configData.saveAs;if(!isMapped){return problem;}}},appianTypeDefaults:function(componentKey){if(!componentKey){return null;}
var namespace=window.FormDesigner.currentNamespace;var configData=window.FormData[namespace][componentKey];var pickedItems=configData.pickedItems;if(pickedItems){for(var i=0;i<pickedItems.length;i++){if(pickedItems[i].type==TYPE_INVALID){var problem={message:"The entry {0} is invalid.".supplant(pickedItems[i].display),type:"error"};return problem;}}}
var value=configData.defaultValue;if(value==null||value===""){return null;}
var message;if(window.FormDesigner[namespace].isTaskForm){message="The default value must be saved into an Activity Class Parameter."}else{message="The default value must be saved into a Process Parameter."}
var problem={message:message,type:"error"};var isMapped=configData.saveAs;if(!isMapped){return problem;}
return null;},dateTimeDefaults:function(componentKey){if(!componentKey){return null;}
var namespace=window.FormDesigner.currentNamespace;var PVOrACP=window.FormDesigner[namespace].isTaskForm?'an Activity Class Parameter.':'a Process Parameter.';var problem={message:"The default value must be saved into "+PVOrACP,type:"error"};var configData=window.FormData[namespace][componentKey];var value=configData.defaultValue;if(eval(configData.multiple)&&!eval(configData.isExpression)){if(value){var regexp=new RegExp("["+_AE.uiDelimiter+"]","g");if(configData.defaultStringValue.replace(regexp,'').trim().length==0)
value=null;}}
var expressionValueString=configData.expressionValueString;if(!value&&!expressionValueString){return null;}
var isMapped=configData.saveAs;if(!isMapped){return problem;}else{return null;}},dateTime:function(componentKey){if(!componentKey){return null;}
var configData=window.FormData[window.FormDesigner.currentNamespace][componentKey];var subType=configData.subType;var value=configData.defaultStringValue;value=value?value.trim():"";var problem={message:"You must enter a valid "+subType,type:"error"};if(!Date.Util.validate(ComponentsUtils.DateTimeUtils.parseDateTimeFields(value),subType)){return problem;}
return null;},report:function(componentKey){if(!componentKey){return null;}
var problem={message:"You must select a valid report",type:"error"};var configData=window.FormData[window.FormDesigner.currentNamespace][componentKey];if(!configData.reportItem){return problem;}
if(configData.contextType&&!configData.contextItems){problem.message="You must select a valid context for the report";return problem;}
return null;},paragraph:function(componentKey){if(!componentKey){return null;}
var problem={message:"The entered text cannot exceed "+DATA_CAP_PARAGRAPHS+" characters.",type:"error"}
var isValid=true;var configData=window.FormData[window.FormDesigner.currentNamespace][componentKey];var allowRichText=configData.allowRichText;if(eval(allowRichText)){if(configData.richText){isValid=configData.richText.length<=DATA_CAP_PARAGRAPHS;}}else{if(configData.plainText){isValid=configData.plainText.length<=DATA_CAP_PARAGRAPHS;}}
if(!isValid){return problem;}
return null;},longText:function(componentKey){if(!componentKey){return null;}
var problem={message:"The entered text cannot exceed "+DATA_CAP_PARAGRAPHS+" characters.",type:"error"}
var isValid=true;var configData=window.FormData[window.FormDesigner.currentNamespace][componentKey];if(configData.defaultValue){isValid=configData.defaultValue.length<=DATA_CAP_PARAGRAPHS;}
if(!isValid){return problem;}
return null;},isEmpty:function(text){if(text&&text.constructor==String&&text!=""){return null;}
return{message:"The value is empty",type:"error"};},alphanumeric:function(componentKey){if(!componentKey){return null;}
var problem={message:"Invalid character(s) found. Only alphanumeric characters and underscores are allowed for name",type:"error"}
var isValid=true;var paramName=window.FormData[window.FormDesigner.currentNamespace][componentKey].inputName;if(!paramName||paramName.trim().length==0){problem.message='Parameter Name cannot be left blank.';isValid=false;}
if(paramName.replace(/[^0-9^a-z^_]/gi,"")!=paramName){problem.message='Parameter Name may only contain letters, numbers and underscores.';isValid=false;}
if(!isValid){return problem;}
return null;},hrefNN:function(componentKey){var defaultUrlValue=window.FormData[window.FormDesigner.currentNamespace][componentKey].defaultUrlValue;if(defaultUrlValue!=""){return null;}
var problem={message:"Parameter URL cannot be left blank",type:"error"}
var isValid=true;var paramName=window.FormData[window.FormDesigner.currentNamespace][componentKey].defaultUrlValue;if(!paramName||paramName.trim().length==0){problem.message='Parameter URL cannot be left blank.';isValid=false;}
if(!isValid){return problem;}
return null;}};window.FormDesigner.ValidateConfiguration={form:{},text:{id:FormDesigner.DefaultConfValidation.id},number:{id:FormDesigner.DefaultConfValidation.id,numberValue:FormDesigner.DefaultConfValidation.numberValue},paragraph:{id:FormDesigner.DefaultConfValidation.id,paragraphValue:FormDesigner.DefaultConfValidation.paragraph},longText:{id:FormDesigner.DefaultConfValidation.id,longTextValue:FormDesigner.DefaultConfValidation.longText},radio:{id:FormDesigner.DefaultConfValidation.id,defaultValue:FormDesigner.DefaultConfValidation.appianTypeDefaultsForChoices,choices:FormDesigner.DefaultConfValidation.choices},checkbox:{id:FormDesigner.DefaultConfValidation.id,defaultValue:FormDesigner.DefaultConfValidation.appianTypeDefaultsForChoices,choices:FormDesigner.DefaultConfValidation.choices},dropdown:{id:FormDesigner.DefaultConfValidation.id,defaultValue:FormDesigner.DefaultConfValidation.appianTypeDefaultsForChoices,choices:FormDesigner.DefaultConfValidation.choices},truefalse:{id:FormDesigner.DefaultConfValidation.id},datetime:{id:FormDesigner.DefaultConfValidation.id,defaultValue:FormDesigner.DefaultConfValidation.dateTimeDefaults,dateTime:FormDesigner.DefaultConfValidation.dateTime},grid:{id:FormDesigner.DefaultConfValidation.id},fileupload:{id:FormDesigner.DefaultConfValidation.id,inputName:FormDesigner.DefaultConfValidation.alphanumeric},button:{id:FormDesigner.DefaultConfValidation.id},password:{id:FormDesigner.DefaultConfValidation.id},hidden:{id:FormDesigner.DefaultConfValidation.id},knowledge_center:{id:FormDesigner.DefaultConfValidation.id,defaultValue:FormDesigner.DefaultConfValidation.appianTypeDefaults},folder:{id:FormDesigner.DefaultConfValidation.id,defaultValue:FormDesigner.DefaultConfValidation.appianTypeDefaults},document:{id:FormDesigner.DefaultConfValidation.id,defaultValue:FormDesigner.DefaultConfValidation.appianTypeDefaults},content:{id:FormDesigner.DefaultConfValidation.id,defaultValue:FormDesigner.DefaultConfValidation.appianTypeDefaults},community:{id:FormDesigner.DefaultConfValidation.id,defaultValue:FormDesigner.DefaultConfValidation.appianTypeDefaults},people:{id:FormDesigner.DefaultConfValidation.id,defaultValue:FormDesigner.DefaultConfValidation.appianTypeDefaults},page:{id:FormDesigner.DefaultConfValidation.id,defaultValue:FormDesigner.DefaultConfValidation.appianTypeDefaults},discussion:{id:FormDesigner.DefaultConfValidation.id,defaultValue:FormDesigner.DefaultConfValidation.appianTypeDefaults},email_recipient:{id:FormDesigner.DefaultConfValidation.id,defaultValue:FormDesigner.DefaultConfValidation.appianTypeDefaults},email:{id:FormDesigner.DefaultConfValidation.id,defaultValue:FormDesigner.DefaultConfValidation.appianTypeDefaults},tab:{id:FormDesigner.DefaultConfValidation.id,label:FormDesigner.DefaultConfValidation.isEmpty},tabContainer:{id:FormDesigner.DefaultConfValidation.id},section:{id:FormDesigner.DefaultConfValidation.id},message:{id:FormDesigner.DefaultConfValidation.id},image:{id:FormDesigner.DefaultConfValidation.id},report:{id:FormDesigner.DefaultConfValidation.id,report:FormDesigner.DefaultConfValidation.report},link:{id:FormDesigner.DefaultConfValidation.id,href:FormDesigner.DefaultConfValidation.hrefNN}};window.FormDesigner.MessagePane={init:function(){$('#messagePane').hide();$('#messagePane .cloneable').Cloneable();},show:function(){if($('#messagePane').css("display")=='none'){var workspaceHeight=$('#workspace').height();var messagePaneHeight=$('#messagePane').height();$('#workspace').height(workspaceHeight-messagePaneHeight);}
$('#messagePane').slideDown();},showMessages:function(items){this.clear();if(Util.isNull(items)||items.length==0){this.hide();}else{this.addRows(items);this.show();}},hide:function(){if($('#messagePane').css("display")!='none'){var workspaceHeight=$('#workspace').height();var messagePaneHeight=$('#messagePane').height();$('#workspace').height(workspaceHeight+messagePaneHeight);$('#messagePane').slideUp();}},clear:function(){$('#messagePane .clone').unbind().remove();},addRows:function(items){if(Util.isNull(items)||items.length==0){return;}
for(var i=0;i<items.length;i++){this.addRow(items[i]);}},addRow:function(item){var newRow=$('#messagePane .cloneable').get(0).clone();if($('#messagePane .clone').length%2){$(newRow).addClass('alternate');}
$(newRow).attr("sourceKey",item.sourceKey);var icon="";switch(item.type){case"warning":icon=icon.tag('IMG',{src:CONTEXT_PREFIX+'components/toolbar/img/warning.gif',alt:'Warning',title:'Warning'});break;case"error":icon=icon.tag('IMG',{src:CONTEXT_PREFIX+'components/toolbar/img/stop.gif',alt:'Error',title:'Error'});break;default:icon=icon.tag('IMG',{src:CONTEXT_PREFIX+'components/toolbar/img/info.gif',alt:'Information',title:'Information'});}
var truncatedMessage=item.message.truncate(86);if(item.sourceKey!=null&&item.sourceKey.trim().length>0){var configData=window.FormData[window.FormDesigner.currentNamespace][item.sourceKey];$("[@column='icon']",newRow).html(icon.tag('a',{href:'#'}));$("[@column='message']",newRow).html(truncatedMessage.tag('a',{href:'#',title:item.message}));$("[@column='sourceId']",newRow).html(configData.id.tag('a',{href:'#'}));$("[@column='sourceType']",newRow).html(configData.typeName.toUpperCase().tag('a',{href:'#'}));$(newRow).css({cursor:"hand"});$(newRow).mouseover(function(){$(this).addClass("hover");});$(newRow).mouseout(function(){$(this).removeClass("hover");});}else{$("[@column='icon']",newRow).html(icon);$("[@column='message']",newRow).html(truncatedMessage.tag('span',{title:item.message}));}
if(item.sourceKey!=null&&item.sourceKey.trim().length>0){$(newRow).click(function(){$(this).addClass('visited');var key=$(this).attr("sourceKey");var namespace=window.FormDesigner.currentNamespace;var configData=window.FormData[namespace][key];var type=configData.typeName;var elementId=window.Build.Design?key:configData.id;window.FormDesigner.selectComponent.call(window.Build.util.getComponentContainer(key,namespace).get(0));window.FormDesigner.loadConfigPane(type,key);});}}};Snippets={attachEELauncher:function(imgSet){imgSet.each(function(){if(window.FormDesigner[window.FormDesigner.currentNamespace].isTaskForm){$(this).click(function(){var field=$('#'+$(this).attr("expEdCaller"));Snippets.launchExpressionEditor(field);});}else{$(this).attr("class",'hidden');}});},clearDefaultExpressionValue:function(field){if(field.value===field.defaultValue){field.value="";field.style.color="black";}},launchExpressionEditor:function(field,config){field=field.get(0);Snippets.clearDefaultExpressionValue(field);var expEditor=(config)?new ExpressionEditor(field,null,null,null,null,null,config):new ExpressionEditor(field,Snippets.getPVArray(),Snippets.getACPArray(),window.FormDesigner[window.FormDesigner.currentNamespace].isTaskForm,null,null,window.expressionEditorConfig);expEditor.openEditor();},deleteComponent:function(key,msg,loadFormConfig,afterDelete){asi.confirm(msg,function(){var startTime=new Date();var namespace=window.FormDesigner.currentNamespace;var configData=window.FormData[namespace][key];var component=window.Build.util.getComponentContainer(key,namespace);var parentKey=component.ancestors('[@key]').get(0).getAttribute("key");window.FormDesigner.removeComponent(component.end().get(0));if(loadFormConfig){window.FormDesigner.loadFormConfig();}
window.FormDesigner.setDirty(true);if(typeof afterDelete==='function'){afterDelete();}
var endTime=new Date();ASI_LOG.debug(window.loggingField+"   deleteComponent   "+(endTime.getTime()-startTime.getTime()));});},getPVArray:function(){return window.FormDesigner[window.FormDesigner.currentNamespace].processVariables;},getACPArray:function(){var eeAcps=[];window.FormDesigner[window.FormDesigner.currentNamespace].modelerParams.forEach(function(param){eeAcps[eeAcps.length]={key:param.key,type:param.getType()};});return eeAcps;},getDateSubTypeName:function(subType){return subType=='date'?'Date':subType=='time'?'Time':'DateTime';},validateAppianType:function(key){var problem=window.FormDesigner.DefaultConfValidation.appianTypeDefaults(key);var errorContainer=$("#appianDefaultValueSnippet .errorMessage");if(problem){errorContainer.html(problem.message).show();}else{errorContainer.hide();}},writeAndBuild:function(field){var namespace=window.FormDesigner.currentNamespace;$(field).write(window.FormData[namespace][window.componentKey]);window.Build.rebuild(namespace,window.componentKey);},openExpressionEditorForHTMLArea:function(fieldObj){var expEditor=new ExpressionEditor(fieldObj,Snippets.getPVArray(),Snippets.getACPArray(),window.FormDesigner[window.FormDesigner.currentNamespace].isTaskForm,null,null,window.expressionEditorConfig);expEditor.openEditor();},applyCustomCss:function(namespace,key,componentDom){var configData=window.FormData[namespace][key];if(componentDom==null){var elementId=window.Build.design?key:configData.id;componentDom=window.Build.util.getComponentContainer(elementId,namespace);}
if(typeof(configData.oldCSS)!='undefined'){var oldCssClasses=configData.oldCSS.split(_AE.uiDelimiter);if(oldCssClasses&&oldCssClasses.constructor==Array){for(var i=0;i<oldCssClasses.length;i++){if(oldCssClasses[i]==null||oldCssClasses[i].length==0){continue;}
try{$(componentDom).removeClass(oldCssClasses[i])}catch(e){};}}else{if(oldCssClasses!=null&&oldCssClasses.length>0){try{$(componentDom).removeClass(oldCssClasses)}catch(e){};}}}
configData.oldCSS=configData.customCSS;if(typeof(configData.customCSS)!='undefined'){var customCSSClasses=configData.customCSS.split(_AE.uiDelimiter);if(customCSSClasses&&customCSSClasses.constructor==Array){for(var i=0;i<customCSSClasses.length;i++){if(customCSSClasses[i]==null||customCSSClasses[i].length==0){continue;}
try{$(componentDom).removeClass(customCSSClasses[i])}catch(e){};$(componentDom).addClass(customCSSClasses[i]);}}else{if(customCSSClasses!=null&&customCSSClasses.length>0){try{$(componentDom).removeClass(customCSSClasses)}catch(e){};$(componentDom).addClass(customCSSClasses);}}}},disableMultiple:function(isMultiple){var multiple=$('#optionsSnippet_isMultiple');if(isMultiple){multiple.attr("disabled",'true');}else{multiple.removeAttr("disabled");}},showHelpWindow:function(path){var h=document.body.clientHeight||window.innerHeight+20;var w=document.body.clientWidth||window.innerWidth;var top=h*.45;var left=w/3;helpWin=popup('/docs/en_US/help/user/forms/'+path,'helpWin','top='+top+',left='+left+',width=495,height=250,resizable=yes,scrollbars=yes');void 0;}};var htmlAreaConfigs={toggleRichText:function(allowRichText){$('#richText')[allowRichText?'show':'hide']();$('#plainTextDiv')[allowRichText?'hide':'show']();},setHeight:function(height){$('#plainText',defaultValueFieldset).attr("rows",height);$('#_textArea_richText__editor').get(0).style.height=height*17;configData.height=height;}};window.ComponentsUtils={getExpressionFromValue:function(value){if(value){var v=value.constructor==Array&&value.length>0?value[0]:value;if(v!==null){if(v.constructor==String){v=v.trim();if(v.isAppianExpression()){return v;}}else if(v.constructor==Object){if(v.type==TYPE_EXPRESSION){return v.id;}}}}
return null;},fetchValueFromChoices:function(componentDom){var ids=[];var types=[];$(componentDom).find("[@checked]").each(function(){ids.push($(this).attr("valueId"));var type=$(this).attr("valueType");if(type){types.push(type);}});if(types.length>0){return{id:ids.join(_AE.uiDelimiter),type:types.join(_AE.uiDelimiter)};}else{return{id:ids.join(_AE.uiDelimiter)};}},updateDefaultValuesFromChoices:function(value,configData){if(configData.importChoices==="data"&&!Util.isNull(value)){if(value.constructor===Array&&value.length===1&&value[0]===""){delete configData.defaultChoice;}else{if(!configData.defaultChoice){configData.defaultChoice={};}
configData.defaultChoice.value=value;configData.defaultChoice.multiple=value.constructor==Array;}}
if(!configData.choices){configData.choices={};}
var entries=configData.choices.entries;configData.choices.selected=[];if(value==null||!entries){return;}
var feBaseType=window.FormDesigner.getFeBaseType(configData.namespace,configData.key);var type=Mappings.FEtoParamType(feBaseType);var normalizedValues=PICKER.normalizePickerValues(value,type);for(var i=0;i<normalizedValues.length;i++){var id=normalizedValues[i].id;if(typeof id==='string'){id=id.trim();}
var type=normalizedValues[i].type;for(var j=0;j<entries.length;j++){if(entries[j].id==id&&(Util.isNull(entries[j].type)||entries[j].type==type)){window.FormData[configData.namespace][configData.key].choices.selected.push(j);}}}},DateTimeUtils:{parseDateTimeFields:function(value){var values=value.split(_AE.uiDelimiter);var valueToValidate='';values.forEach(function(value){if(value.trim().length!=0){valueToValidate+=value+',';}});return(valueToValidate==""?valueToValidate:valueToValidate.substring(0,valueToValidate.length-1));},getDatetimeInputId:function(configData){var subType=configData.subType;var posFix=configData.multiple=='true'?'Mult_':'Single_';var name=window.Build.design?configData.key:configData.id;var id=window.Build.util.getUniqueDOMId(configData.namespace,name);return'#hidden_'+subType+'_'+name+'_value'+Snippets.getDateSubTypeName(subType)+posFix+id+'_';},clearConfigPaneInputs:function(configData){if(eval(configData.isExpression)){$('#expressionValueString').val("");}else{var subType=configData.subType;var posFix=configData.multiple=='true'?'Mult_':'Single_';var posFix2=configData.multiple=='true'?'Multiple_':'_';var subTypeName=Snippets.getDateSubTypeName(subType);$('input',$('#container_'+subType+'_defaultValue'+subTypeName+posFix2+'defaultValue'+subTypeName+posFix)).val("");}},getDateTimeObject:function(defaultStringValue){var subType=ComponentsUtils.DateTimeUtils.getTVTypeFromFEType(configData.subType);return Date.Util.parseValue(defaultStringValue,subType);},getDefaultValueStringFromObjectMap:function(configData){var valueObj=configData.defaultValue;if(!valueObj){return"";}
var subType=configData.subType;var isMultiple=eval(configData.multiple);var stringValue='';if(valueObj.constructor==Object){return ComponentsUtils.DateTimeUtils.getStringValueFromDateTimeObject(valueObj,subType);}else if(valueObj.constructor==Array){for(var i=0;i<valueObj.length;i++){stringValue+=ComponentsUtils.DateTimeUtils.getStringValueFromDateTimeObject(valueObj[i],subType)+_AE.uiDelimiter;}
if(stringValue.lastIndexOf(_AE.uiDelimiter)==stringValue.length-1){stringValue=stringValue.substring(0,stringValue.length-1);}
return stringValue;}},getStringValueFromDateTimeObject:function(dateTimeObject,subType){if(dateTimeObject){if(subType=='date'){return dateTimeObject.dateStr||"";}
else if(subType=='time'){return dateTimeObject.timeStr||"";}
else{return Date.Util.createDatetimeString(dateTimeObject.dateStr,dateTimeObject.timeStr)||"";}}else{return"";}},getTVTypeFromFEType:function(subType){return subType=='date'?TYPE_DATE:subType=='time'?TYPE_TIME:TYPE_DATETIME;},isNullDate:function(value){if(!value){return true;}else if(value.constructor==Array){var isEmpty=true;for(var i=0;i<value.length;i++){if(value[i]){isEmpty=false;}}
return isEmpty;}
return false;}}};window.Read={};window.FormAPI={setValue:function(id,value){var componentDom=window.Build.util.getComponentContainer(id,window.FormDesigner.runtimeNamespace);if(componentDom.length>0){var configData=window.FormDesigner.getConfigData(componentDom.get(0));var type=window.FormDesigner.getType(componentDom.get(0));(window.Read[type]&&window.Read[type](value,configData));window.Build.rebuild(configData.namespace,configData.key,true);}},getValue:function(id){return window.Value.read(window.FormDesigner.runtimeNamespace,id);},hide:function(id){window.Build.util.getComponentContainer(id,window.FormDesigner.runtimeNamespace).hide();},show:function(id){window.Build.util.getComponentContainer(id,window.FormDesigner.runtimeNamespace).show();},addClass:function(id,className){window.Build.util.getComponentContainer(id,window.FormDesigner.runtimeNamespace).addClass(className);},removeClass:function(id,className){window.Build.util.getComponentContainer(id,window.FormDesigner.runtimeNamespace).removeClass(className);},collapse:function(id){var section=window.Build.util.getComponentContainer(id,window.FormDesigner.runtimeNamespace);if(section.length>0){var configData=window.FormDesigner.getConfigData(section.get(0));var type=window.FormDesigner.getType(section.get(0));if(type=="section"&&configData.allowCollapse=="allow"){$('.formSection',section).addClass("collapse");}
var image=$("h2 img",section);var imgSrc=image.attr('src');if(imgSrc.match(/minus.gif/i)){image.attr('src',imgSrc.replace(/minus.gif/i,'plus.gif'));}}},expand:function(id){var section=window.Build.util.getComponentContainer(id,window.FormDesigner.runtimeNamespace);if(section.length>0){var configData=window.FormDesigner.getConfigData(section.get(0));var type=window.FormDesigner.getType(section.get(0));if(type=="section"&&configData.allowCollapse=="allow"){$('.formSection',section).removeClass("collapse");}
var image=$("h2 img",section);var imgSrc=image.attr('src');if(imgSrc.match(/plus.gif/i)){image.attr('src',imgSrc.replace(/plus.gif/i,'minus.gif'));}}}};window.FormDesigner.AppianObjectCache={all:["customValidations"],form:['styleDocs','jsDocs'],report:['reportItem','contextItems'],image:['alt'],radio:['choices.entries','displayLabels'],checkbox:['choices.entries','displayLabels'],dropdown:['choices.entries','displayLabels'],populate:function(appianObjects_){if(!appianObjects_||appianObjects_.constructor!=Array){return appianObjects_;}
for(var i=0;i<appianObjects_.length;i++){appianObjects_[i].display=getDisplayNameForId(appianObjects_[i].type,appianObjects_[i].id);}
return appianObjects_;},updateCacheWithPickedItems:function(pickedItems_){if(!pickedItems_||pickedItems_.constructor!=Array){return;}
for(var i=0;i<pickedItems_.length;i++){if(pickedItems_[i].type==TYPE_EXPRESSION){continue;}
setAppianDisplayName(pickedItems_[i].type,pickedItems_[i].id,pickedItems_[i].display);}},getDisplayValue:function(fieldValue_){if(fieldValue_===null||typeof fieldValue_=="undefined"){return null;}
var finalString=[];if(fieldValue_.constructor==Array){for(var i=0;i<fieldValue_.length;i++){finalString.push(getDisplayNameForId(fieldValue_[i].type,fieldValue_[i].id));}}else if(isAppianType(fieldValue_.type)){if(Util.isNull(fieldValue_.value)){finalString.push(getDisplayNameForId(fieldValue_.type,fieldValue_.id));}else{var normalizedValues=PICKER.normalizePickerValues(fieldValue_.value,fieldValue_.type);for(i=0;i<normalizedValues.length;i++){finalString.push(normalizedValues[i].display);}}}else if(fieldValue_.type in set(TYPE_DATE,TYPE_TIME,TYPE_DATETIME)){var value=fieldValue_.value;if(!Util.isNull(value)){if(value.constructor!=Array){value=[value];}
for(i=0;i<value.length;i++){switch(fieldValue_.type){case TYPE_DATE:finalString.push(Date.Util.createDatetimeString(value[i]['dateStr']," ").trim());break;case TYPE_TIME:finalString.push(Date.Util.createDatetimeString(" ",value[i]['timeStr']).trim());break;case TYPE_DATETIME:finalString.push(Date.Util.createDatetimeString(value[i]['dateStr'],value[i]['timeStr']));break;}}}}else if(!Util.isNull(fieldValue_.value)){var value=fieldValue_.value;if(value.constructor!=Array){value=[value];}
for(i=0;i<value.length;i++){finalString.push(value[i]);}}else{finalString.push(fieldValue_);}
return finalString.join(_AE.uiDelimiter);}};window.Build.templateMap.form={control:"forms/templates/controls/form.jsp",config:"forms/templates/config/form_config.jsp"};window.Initialize.form=function(configData){if(typeof configData.label==='undefined'&&window.Build.design){configData.label='Untitled';}
if(typeof configData.instructions==='undefined'&&window.Build.design){configData.instructions='Please complete the form below.';}
if(typeof configData.labelPosition==='undefined'){configData.labelPosition='right';}};window.Inherit.form=['labelPosition'];window.Build.single.form=function(componentDom,configData,layoutTree,cDomPtrs){window.Initialize.form(configData);var docUrl,id;var jHead=$('head');var customCSSLinkId=window.Build.util.getUniqueDOMId(configData.namespace,'addedCustomCSSFile');var jCustomCSSLink=$('[@id^="{0}"]'.supplant(customCSSLinkId),jHead.get(0));if(jCustomCSSLink.size()>0){jCustomCSSLink.remove();}
if(configData.styleDocs){if(configData.isCSSExpression&&!window.Build.design){if(configData.styleDocs.value&&configData.styleDocs.type&&configData.styleDocs.type===13){if((configData.styleDocs.value).constructor===Array){id=configData.styleDocs.value[0];}else{id=configData.styleDocs.value;}
if((id+"").isNumber()){docUrl=("/doc/"+id).url();var stylesheetUrl="".node('LINK',{rel:'stylesheet',type:'text/css',href:docUrl,id:customCSSLinkId});jHead.append(stylesheetUrl);}else{ASI_LOG.error("The provided doc id for style sheet {0}, is not a number".supplant(id));}}}else if(!configData.isCSSExpression){if((configData.styleDocs.id||"").isNumber()){docUrl=("/doc/"+configData.styleDocs.id).url();stylesheetUrl="".node('LINK',{rel:'stylesheet',type:'text/css',href:docUrl,id:customCSSLinkId});jHead.append(stylesheetUrl);}else{ASI_LOG.error("The provided doc id for style sheet {0}, is not a number".supplant(configData.styleDocs.id));}}}
if(!window.Build.design&&configData.jsDocs){if(configData.isJSExpression){if(configData.jsDocs.type&&configData.jsDocs.type===13){if((configData.jsDocs.value).constructor===Array){id=configData.jsDocs.value[0];}else{id=configData.jsDocs.value;}
if((id+"").isNumber()){docUrl=("/doc/"+id).url();try{importScript(docUrl);}catch(e){}}else{ASI_LOG.error("The provided do id for a JavaScript library {0}, is not a number".supplant(id));}}}else{if((configData.jsDocs.id+"").isNumber()){docUrl=("/doc/"+configData.jsDocs.id).url();try{importScript(docUrl);}catch(e){}}else{ASI_LOG.error("The provided doc id for a JavaScript library {0}, is not a number".supplant(configData.styleDocs.id));}}}
window.Build.layout(componentDom,configData);var componentName=window.Build.design?configData.key:configData.id;var componentId=window.Build.util.getUniqueDOMId(configData.namespace,componentName);if(typeof configData.label==='undefined'||configData.label===''){$(cDomPtrs['formTitle_'+componentId]).css('display','none');}else{$(cDomPtrs['formTitle_'+componentId]).html(configData.label);}
if(typeof configData.instructions==='undefined'||configData.instructions===''){$(cDomPtrs['formInstructions_'+componentId]).css('display','none');}else{$(cDomPtrs['formInstructions_'+componentId]).html(configData.instructions);}
if(window.Build.design){$('form',componentDom).addClass('designTime');}else{$('form',componentDom).addClass('runTime');}
var formContent=$(cDomPtrs['formContent_'+componentId]);if(layoutTree&&layoutTree.children){var baseColumn=$(cDomPtrs['baseColumn']);baseColumn.removeAttr('id');var column;for(var c=0;c<layoutTree.children.length;c++){column=$(baseColumn).clone().get(0);formContent.append(column);for(var i=0;i<layoutTree.children[c].length;i++){window.Build.build(layoutTree.children[c][i],column,configData.namespace);}}
baseColumn.remove();var buttonSection=cDomPtrs['buttonSetBottom_'+componentId];if(layoutTree.buttons){for(i=0;i<layoutTree.buttons.length;i++){window.Build.build(layoutTree.buttons[i],buttonSection,configData.namespace);}}}
var columns=$(formContent).children('.column');window.ComponentsUtils.form.formatColumns(columns);if(window.Build.design){window.FormDesigner.setSortableConfig(columns,'formInput');$(columns).Sortable(window.SortableConfig['formInput']);}
buttonSection=cDomPtrs['buttonSetBottom_'+componentId];if(window.Build.design){window.FormDesigner.setSortableConfig(buttonSection,'buttonSetInput');$(buttonSection).Sortable(window.SortableConfig['buttonSetInput']);}
buttonSection=$(buttonSection);var noButtons=true;var customSubmitButtons=$(formContent).children().children('[@componentType="button"]');if(customSubmitButtons.length>0){buttonSection.append(customSubmitButtons.get());}
try{noButtons=!($(buttonSection).children('[@componentType="button"]').length)&&!customSubmitButtons.length;}catch(e){}
if(noButtons){var pointer="".node('DIV');if(window.Build.design){buttonSection.append(pointer);window.FormDesigner.dropComponent(pointer,'button',true);}else{buttonSection.append(pointer);window.FormDesigner.createRuntimeComponent(pointer,'button',configData.namespace,'defaultSubmit');}
$(pointer).remove();}
if(configData.displayAtTop){var topButtonSection=$(cDomPtrs['buttonSetTop_'+componentId]);topButtonSection.removeClass('hidden');if(!window.Build.design){if(layoutTree.buttons){for(i=0;i<layoutTree.buttons.length;i++){window.Build.build(layoutTree.buttons[i],topButtonSection.get(0),configData.namespace);}}}}
window.componentKey='form';};window.Build.rebuild.single.form=function(componentDom,configData){var jHead=$('head');var customCSSLinkId=window.Build.util.getUniqueDOMId(configData.namespace,'addedCustomCSSFile');var jCustomCSSLink=$('[@id^="{0}"]'.supplant(customCSSLinkId),jHead.get(0));if(jCustomCSSLink.size()>0){jCustomCSSLink.remove();}
if(configData.styleDocs&&!configData.isCSSExpression){var docUrl=("/doc/"+configData.styleDocs.id).url();var stylesheetUrl="".node('LINK',{rel:'stylesheet',type:'text/css',href:docUrl,id:customCSSLinkId});jHead.append(stylesheetUrl);}
if(typeof configData.label==='undefined'||configData.label===''){$('h1[@keyTag="formTitle'+configData.key+'"]',componentDom).css('display','none');}else{$('h1[@keyTag="formTitle'+configData.key+'"]',componentDom).html(configData.label).css('display','block');}
if(typeof configData.instructions==='undefined'||configData.instructions===''){$('.formInstructions[@keyTag="formInstructions'+configData.key+'"]',componentDom).css('display','none');}else{$('.formInstructions[@keyTag="formInstructions'+configData.key+'"]',componentDom).html(configData.instructions).css('display','block');}
var topButtonSection=$('.buttonSet[@keyTag="top'+configData.key+'"]',componentDom);try{$(topButtonSection).children().remove();}catch(e){}
topButtonSection.addClass('hidden');if(configData.displayAtTop){topButtonSection.removeClass('hidden');try{$('.buttonSet[@keyTag="bottom'+configData.key+'"]',componentDom).children().clone().removeAttr('key').removeAttr('id').appendTo('.buttonSet[@keyTag="top'+configData.key+'"]');}catch(e){}}
var formContent=$('.formContent[@keyTag="formContent'+configData.key+'"]',componentDom);var columns=$(formContent).children('.column');if(columns.length==configData.columns){return;}
if(columns.length<configData.columns){var baseColumn=$(columns.get(0)).clone(false);baseColumn.removeAttr('isSortable');baseColumn.removeAttr('isDroppable');baseColumn.removeAttr('idsa');formContent.append(baseColumn.get(0));var columnsToInsert=configData.columns-columns.length;for(var i=1;i<columnsToInsert;i++){formContent.append(baseColumn.clone().get(0));}
columns=$(formContent).children('.column');window.ComponentsUtils.form.formatColumns(columns);$(columns).Sortable(window.SortableConfig['formInput']);}else{var lastColumn=$(columns.get(configData.columns-1));for(i=configData.columns;i<columns.length;i++){try{lastColumn.append($(columns.get(i)).children().get());}catch(e){}
$(columns.get(i)).DroppableDestroy();$(columns.get(i)).remove();}
columns=$(formContent).children('.column');window.ComponentsUtils.form.formatColumns(columns);$(columns).Sortable(window.SortableConfig['formInput']);}};window.Build.params.form=function(configData){var backButtonEnabled=false;var backButtonReadOnly=false;var chained=false;if(!window.Build.design){backButtonEnabled=window.FormDesigner[configData.namespace].activityChaining.backButtonEnabled;backButtonReadOnly=window.FormDesigner[configData.namespace].activityChaining.backButtonReadOnly;chained=window.FormDesigner[configData.namespace].activityChaining.chained;}
var name=window.Build.design?configData.key:configData.id;var domId=window.Build.util.getUniqueDOMId(configData.namespace,name);return{componentId:domId,isTaskForm:window.FormDesigner[configData.namespace].isTaskForm,backButtonEnabled:backButtonEnabled,backButtonReadOnly:backButtonReadOnly,chained:chained,namespace:configData.namespace};};window.Build.sortableConfig.form='formInput';window.Build.availableSpace.form=function(componentDom,configData){var pointer="".node('DIV');var formContent=$('.formContent[@keyTag="formContent'+configData.key+'"]',componentDom);var firstColumn=$(formContent).children('.column').get(0);firstColumn.appendChild(pointer);return pointer;};window.Build.availableSpace.buttonSet=function(componentDom,configData){var pointer="".node('DIV');var buttonSection=$('.buttonSet[@keyTag="bottom'+configData.key+'"]',componentDom).get(0);buttonSection.appendChild(pointer);return pointer;};window.Build.afterLoad.form=function(){var formDom=$('#workspace [@componentType="form"]').get(0);if(formDom&&window.Build.design){var configData=window.FormDesigner.getConfigData(formDom);if(configData&&configData.displayAtTop){var key=formDom.getAttribute("key");var topButtonSection=$('.buttonSet[@keyTag="top'+key+'"]',formDom);try{$(topButtonSection).children().remove();}catch(e){}
topButtonSection.removeClass('hidden');var buttonSection=$('.buttonSet[@keyTag="bottom'+key+'"]',formDom);try{var cloned=$(buttonSection).children().clone();cloned.removeAttr('key');cloned.removeAttr('id');cloned.removeClass('selected');cloned.appendTo(topButtonSection);}catch(e){}}}};window.ComponentsUtils.form={};window.ComponentsUtils.form.formatColumns=function(columns){var numColumns=columns.length;if(numColumns==1){columns.css('margin','0px');columns.width('100%');}else{columns.css('marginRight','11px');columns.width(Math.floor(100/numColumns)-2+'%');}};window.Events.form=function(configData){return["load","save","submit","failedValidation"];};window.Build.bindEvents.form=function(componentDom,configData,cDomPtrs){var containers=[componentDom];window.Build.util.bindCustomEvents(containers,configData);};window.Destroy.form=function(componentDomArray,configData){if(!window.Build.design){for(var i=0;i<componentDomArray.length;i++){$(componentDomArray[i]).unbind();}}};window.Layout.form=function(componentDom){var children=[];var componentKey=componentDom.getAttribute('key');var columns=$('.formContent[@keyTag="formContent'+componentKey+'"]',componentDom).children('.column');var childrenContainers;for(var c=0;c<columns.length;c++){children[c]=[];try{childrenContainers=$(columns.get(c)).children('[@componentType]');}catch(e){}
if(childrenContainers){for(var i=0;i<childrenContainers.length;i++){children[c][i]=window.Layout.buildTree(childrenContainers.get(i));}}}
var buttonSection=$('.buttonSet[@keyTag="bottom'+componentKey+'"]',componentDom).get(0);var buttonContainers=$(buttonSection).children('[@componentType]');var buttons=[];for(i=0;i<buttonContainers.length;i++){buttons[i]=window.Layout.buildTree(buttonContainers.get(i));}
return{'children':children,'buttons':buttons};};window.submitForm1=function(namespace,action){LOADING.show();var startSubmit=new Date();var isValid=true;for(var p in window.FormData[namespace]){if(!window.FormValidate(namespace,p,null,action)){LOADING.hide();isValid=false;}}
var endValidate=new Date();ASI_LOG.debug(window.loggingField+"   Validate form   "+(endValidate.getTime()-startSubmit.getTime()));if(!isValid){return false;}
var configData;for(p in window.FormData[namespace]){configData=window.FormData[namespace][p];if(configData.namespace&&configData.namespace===namespace&&configData.saveAs){if(configData.typeName=='button'&&configData.key!=window.submitButtonKey){continue;}
var value=window.Value.read(configData.namespace,configData.id);var key=window.constructParamKey(configData);var inputId='<input type="hidden" name="{0}" value="{1}" />'.supplant(key,value.id.escapeHtml());$("#acpMappings_"+namespace).append(inputId);if(typeof value.type!="undefined"){var inputType='<input type="hidden" name="pickerType_{0}" value="{1}" />'.supplant(key,value.type);$("#acpMappings_"+namespace).append(inputType);}}}
var endSubmit=new Date();ASI_LOG.debug(window.loggingField+"   Submit form   "+(endSubmit.getTime()-startSubmit.getTime()));return true;};window.constructParamKey=function(configData){var prefix=window.FormDesigner[configData.namespace].isTaskForm?"ACP~":"PP~";var params=window.FormDesigner[configData.namespace].modelerParams;var mappedTo=configData.saveAs.name;for(var i=0;i<params.length;i++){var nextParam=params[i];if(nextParam.key==mappedTo){var paramKey=prefix+i;if(Constants.TYPES[nextParam.type].isRecord){paramKey+="[";for(var j=0,k=configData.saveAs.propertyIndex.length;j<k;j++){paramKey+=configData.saveAs.propertyIndex[j].index;if(j+1<k){paramKey+=",";}}
paramKey+="]";}
return paramKey;}else if(nextParam.key==configData.mappedToBeanArray){var mappedBean=nextParam.value[configData.mappedToArrayIndex];for(var j=0;j<mappedBean.value.length;j++){if(mappedBean.value[j].key=="sppv"){return prefix+i+"~"+configData.mappedToArrayIndex+"~"+j;}}}}
return"";};window.submitFormOnConfirm=function(namespace){var formContainer=window.Build.util.getComponentContainer('form0',namespace);if((formContainer.size()>0)&&window.submitForm1(namespace)){$('form',formContainer.get(0)).get(0).submit();}else{return false;}};window.Build.templateMap.number={control:"forms/templates/controls/text.html",config:"forms/templates/config/number_config.jsp"};window.Build.typeMap[0]={typeName:"number",subType:"integer"};window.Build.typeMap[1]={typeName:"number",subType:"decimal"};window.Initialize.number=function(configData){configData.subType='integer';};window.Read.number=function(value,configData){if(value==="null"){value=""};window.Build.util.text.read(value,configData);};window.Build.single.number=function(componentDom,configData,cDomPtrs){var control=window.Build.util.text.buildSingleViewText(componentDom,configData,cDomPtrs);$(control).attr('class','short');};window.Build.list.number=function(componentDom,configData,cDomPtrs){var controls=window.Build.util.text.buildListViewText(componentDom,configData,cDomPtrs);$(controls).attr('class','short');};window.Build.copy.number=function(cloneableDom,index){return window.Build.util.text.copy(cloneableDom,index,"textControl_");};window.Events.number=function(configData){return['change','blur','focus'];};window.Build.bindEvents.number=function(componentDom,configData,cDomPtrs){window.Build.util.text.bindTextEvents(componentDom,configData,cDomPtrs);};window.Value.number=function(componentDom,configData,asArray){return window.Build.util.text.value(componentDom,configData,asArray);};window.Destroy.number=function(componentDomArray,configData){if(!window.Build.design){window.Build.util.text.destroy(componentDomArray,configData);}};window.StandardValidate.number=[];window.StandardValidate.number[0]={message:function(componentDom,configData){if(configData.view==='list'&&FormDesigner.ValidateUtilities.containsUiDelimiter(window.Value.number(componentDom,configData,true).id)){return _TEXT.noUiDelimiter.supplant(_AE.uiDelimiter);}
switch(configData.subType){case'integer':return _NUMBER.NotAnInteger;case'decimal':return _NUMBER.NotADecimal;default:return'';}},method:function(componentDom,configData){if(configData.view==='list'&&FormDesigner.ValidateUtilities.containsUiDelimiter(window.Value.number(componentDom,configData,true).id)){return false;}
var value=window.Value.number(componentDom,configData).id;switch(configData.subType){case'integer':return FormDesigner.ValidateUtilities.integer(value);case'decimal':return FormDesigner.ValidateUtilities.decimal(value);default:return true;}}};window.Build.templateMap.fileupload={control:"forms/templates/controls/fileupload.html",config:"forms/templates/config/fileupload_config.jsp"};window.Build.typeMap[21]={typeName:"fileupload"};window.Initialize.fileupload=function(configData){configData.inputName='file';};window.Read.fileupload=function(value,configData){if(!configData.inputName){configData.inputName='file';}};window.Build.single.fileupload=function(componentDom,configData,cDomPtrs){window.Build.element(componentDom,configData,cDomPtrs);var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var controlId='fileuploadControl_'+compDomId;var fileuploadControl=$(cDomPtrs['fileuploadControl']);var componentName=configData.inputName;var newControl=createNamedElement('input',componentName,{'type':'file','id':controlId});fileuploadControl.before(newControl).remove();fileuploadControl=$(newControl);cDomPtrs['fileuploadControl']=newControl;$(cDomPtrs['fileuploadControlLabel']).attr('for',controlId);if(!window.Build.design&&configData.readOnly!='true'){fileuploadControl.removeAttr('readOnly');}
if(typeof configData.disabled!='undefined'&&configData.disabled==='true'){fileuploadControl.attr('disabled',true);}else{fileuploadControl.removeAttr('disabled');}};window.Value.fileupload=function(componentDomArray,configData){var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,configData.id);return{id:$('[@id=fileuploadControl_{0}]'.supplant(compDomId),componentDomArray[0]).val()};};window.Events.fileupload=function(){return["change","blur","focus"];};window.Build.bindEvents.fileupload=function(componentDom,configData,cDomPtrs){if(configData.readOnly&&configData.readOnly=='true'){return;}
window.Build.util.bindCustomEvents([componentDom],configData);$(componentDom).change(function(){window.FormValidate(configData.namespace,configData.key);});var controls;if(cDomPtrs){controls=[cDomPtrs['fileuploadControl']];}else{var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,configData.id);controls=$('[@id=fileuploadControl_{0}]'.supplant(compDomId),componentDom).get();}
window.Events.attachCommonEvent(controls,[componentDom],["blur","focus","change"]);};window.Destroy.fileupload=function(componentDomArray,configData){if(!window.Build.design){$(componentDomArray[0]).unbind();var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,configData.id);var control=$('[@id=fileuploadControl_{0}]'.supplant(compDomId),componentDomArray[0]);control.unbind();}};window.StandardValidate.fileupload=[];window.StandardValidate.fileupload[0]={message:function(componentDom,configData){return _FILEUPLOAD.notAValidFilePath;},method:function(componentDom,configData){var value=window.Value.fileupload(componentDom,configData).id;return value?value.validate('file'):true;}};window.Build.templateMap.image={control:"forms/templates/controls/image.html",config:"forms/templates/config/image_config.jsp"};window.Initialize.image=function(configData){configData.expressionSrcFile=false;configData.expressionSrcURL=false;configData.source='chooseFile';configData.align='imageLeft';configData.preserveImgSize='true';};window.Build.single.image=function(componentDom,configData,cDomPtrs){window.Build.element(componentDom,configData,cDomPtrs);$(cDomPtrs['fields']).removeClass('cloneable');$(cDomPtrs['instructions']).removeClass('nonCloneable');var control=cDomPtrs['imageControl'];window.ComponentsUtils.image.setHeightWidth(control,configData);var controlAttr;if(window.Build.design&&((configData.source==='chooseFile'&&configData.expressionSrcFile)||(configData.source==='enterURL'&&configData.expressionSrcURL))){controlAttr={'src':window.FormConstants.imageDefaultImg};if(configData.expressionSrcURL){if(window.FormDesigner[configData.namespace].isTaskForm){controlAttr['alt']='The image source is an expression and can not be displayed in the Form Designer';}else{controlAttr['alt']='Expressions are not supported in Process Start Forms.';}}
$(control).attr(controlAttr);}else{var values=window.ComponentsUtils.image.getValues(configData);if(values.length>0){var clone;if(configData.alt){$(control).attr('alt',window.FormDesigner.AppianObjectCache.getDisplayValue(configData.alt));}
window.ComponentsUtils.image.setImgSrc(control,values[0],configData);var currentControl=control;for(var i=1;i<values.length;i++){clone=$(control).clone().get(0);$(currentControl).after(clone);currentControl=clone;window.ComponentsUtils.image.setImgSrc(currentControl,values[i],configData);}}else{controlAttr={'src':window.FormConstants.imageDefaultImg};if(configData.alt){controlAttr['alt']=window.FormDesigner.AppianObjectCache.getDisplayValue(configData.alt);}
$(control).attr(controlAttr);}}
window.ComponentsUtils.image.setAlignment(componentDom,configData.align);};window.Build.list.image=function(componentDom,configData,cDomPtrs){window.Build.all(componentDom,configData);var header=window.Build.util.grid.buildHeader(componentDom,configData,cDomPtrs);var controls=[cDomPtrs['imageControl']];var jComponentDom=$(componentDom);if(window.Build.design){jComponentDom.empty();jComponentDom.append(header);}else{control=cDomPtrs['imageControl'];window.ComponentsUtils.image.setHeightWidth(control,configData);window.ComponentsUtils.image.setAlignment(cDomPtrs['fields'],configData.align);$(control).attr('alt',window.FormDesigner.AppianObjectCache.getDisplayValue(configData.alt));var values=window.ComponentsUtils.image.getValues(configData);var clones=window.Build.util.grid.buildClones(componentDom,configData,values.length);var controls=$(clones).find('img.imageControl').get();var currentControl;for(var i=0;i<controls.length-1;i++){window.ComponentsUtils.image.setImgSrc(controls[i],values[i],configData);}
$(controls[controls.length-1]).attr('src',window.FormConstants.imageDefaultImg);jComponentDom.empty();jComponentDom.append(header).append(clones);cDomPtrs['containers']=clones;}
cDomPtrs['controls']=controls;};window.Build.copy.image=function(cloneableDom,index){var cloneable=$(cloneableDom);var configData=window.FormData[cloneable.attr('namespace')][cloneable.attr('key')];cloneable.Cloneable();var clone=cloneable.get(0).clone();clone.setAttribute('index',index);window.Build.bindEvents.image(clone,configData);return clone;};window.Events.image=function(configData){return["mouseover","mouseout","mousedown","mouseup"];};window.Build.bindEvents.image=function(componentDom,configData,cDomPtrs){var controls;if(configData.view==='single'){controls=[cDomPtrs['imageControl']];}else if(configData.view==='list'){if(cDomPtrs){controls=cDomPtrs['controls'].subArray(0,cDomPtrs['controls'].length-1);}else{var containers=[componentDom];controls=$('img.imageControl',componentDom).get();}}
window.Build.util.bindCustomEvents(controls,configData);};window.Destroy.image=function(componentDomArray,configData){if(!window.Build.design){for(var i=0;i<componentDomArray.length;i++){var containers=window.Build.util.getContainers(componentDomArray[i],configData);containers.unbind();containers.find('.imageControl').unbind();}}};window.ComponentsUtils.image={};window.ComponentsUtils.image.setHeightWidth=function(control,configData){control=$(control);if(!configData.preserveImgSize){control.attr('width',configData.width);control.attr('height',configData.height);}else{control.removeAttr('height');control.removeAttr('width');}};window.ComponentsUtils.image.setAlignment=function(componentDom,alignment){$(componentDom).removeClass('imageLeft').removeClass('imageRight').removeClass('imageCenter').addClass(alignment);};window.ComponentsUtils.image.setImgSrc=function(control,value,configData){if(configData.source==='chooseFile'){control.setAttribute('src',CONTEXT_PREFIX+'doc/'+value);}else{control.setAttribute('src',value);}};window.ComponentsUtils.image.getValues=function(configData){var val=[];if(configData.source==='chooseFile'){if(configData.expressionSrcFile){if(eval(configData.multiple)){val=configData.srcFile.value;}else{val.push(configData.srcFile.value);}}else{var pickedItems=eval('('+configData.srcFile+')');if(pickedItems){if(eval(configData.multiple)){for(var i=0;i<pickedItems.length;i++){val.push(pickedItems[i].id);}}else if(pickedItems.length>0){val.push(pickedItems[0].id);}}}}else{if(configData.srcURL){var urlValue=!configData.expressionSrcURL?configData.srcURL:(eval(configData.multiple)?configData.srcURL.value.join(';'):configData.srcURL.value);if(eval(configData.multiple)){val=urlValue.split(_AE.uiDelimiter);}else{val.push(urlValue);}}}
return val;};window.Build.templateMap.truefalse={control:"forms/templates/controls/truefalse.html",config:"forms/templates/config/truefalse_config.jsp"};window.Initialize.truefalse=function(configData){configData.displayType='radio';configData.yesLabel='Yes';configData.noLabel='No';configData.selected=FormConstants.BOOLEAN_VALUE_TRUE;configData.multiple='false';configData.required='true';configData.isExpression='false';};window.Read.truefalse=function(value,configData){if(value!==null&&typeof value!='undefined'){if(value.constructor===Array){if(configData.view==='list'){configData.selected=value;}else{configData.selected=value[0];}}else{configData.selected=value;}}else{configData.selected=configData.displayType=='checkbox'?FormConstants.BOOLEAN_VALUE_FALSE:FormConstants.BOOLEAN_VALUE_TRUE;}};window.Build.single.truefalse=function(componentDom,configData,cDomPtrs){window.Build.element(componentDom,configData,cDomPtrs);$(cDomPtrs['fields']).removeClass('cloneable');$(cDomPtrs['instructions']).removeClass('nonCloneable');var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var displayType=configData.displayType;var selectedValue=configData.selected;if(!window.Build.design){if(typeof(configData.selected)!='string'){configData.selected=configData.selected?FormConstants.BOOLEAN_VALUE_TRUE:FormConstants.BOOLEAN_VALUE_FALSE;}
selectedValue=eval(configData.isExpression)&&window.FormDesigner[configData.namespace].extraParams.task_completed!=='true'?(configData.expressionValue.value?FormConstants.BOOLEAN_VALUE_TRUE:FormConstants.BOOLEAN_VALUE_FALSE):configData.selected;}else{if(eval(configData.isExpression)){selectedValue='expression';}}
var booleanControls=window.ComponentsUtils.truefalse.populateTemplate(cDomPtrs['fields'],configData,selectedValue);cDomPtrs['controls']=[booleanControls[0]];cDomPtrs['extraControls']=booleanControls[1]?[booleanControls[1]]:[];if(typeof configData.disabled!='undefined'&&configData.disabled==='true'){$(booleanControls).attr('disabled',true);}};window.Build.list.truefalse=function(componentDom,configData,cDomPtrs){window.Build.all(componentDom,configData);var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);if(!configData.readOnly){configData.readOnly='false';}
var controls=[],extraControls=[];var header=window.Build.util.grid.buildHeader(componentDom,configData,cDomPtrs);var jComponentDom=$(componentDom);if(window.Build.design){jComponentDom.empty();jComponentDom.append(header);}else{var i;if(window.FormDesigner[configData.namespace].extraParams.task_completed!=='true'){if(eval(configData.isExpression)){var values;values=window.FormDesigner.AppianObjectCache.getDisplayValue(configData.expressionValue);values=values||[];if(typeof values==='string'){values=values.split(_AE.uiDelimiter);}
for(i=0;i<values.length;i++){values[i]=eval(values[i])?FormConstants.BOOLEAN_VALUE_TRUE:FormConstants.BOOLEAN_VALUE_FALSE;}
configData.defaultValue=values;}else{if(typeof configData.defaultValue==='string'){configData.defaultValue=configData.defaultValue.split(_AE.uiDelimiter);}}}
configData.defaultValue=configData.defaultValue||[];var clones=window.Build.util.grid.buildClones(componentDom,configData,configData.defaultValue.length);var numControls=clones.length;var booleanControls;for(i=0;i<numControls-1;i++){booleanControls=window.ComponentsUtils.truefalse.populateTemplate(clones[i],configData,configData.defaultValue[i],i);controls[i]=booleanControls[0];if(booleanControls[1]){extraControls[i]=booleanControls[0];}
if(typeof configData.disabled!='undefined'&&configData.disabled==='true'){$(booleanControls).attr('disabled',true);}}
jComponentDom.empty();jComponentDom.append(header).append(clones);cDomPtrs['containers']=clones;}
cDomPtrs['controls']=controls;cDomPtrs['extraControls']=extraControls;};window.Build.copy.truefalse=function(cloneableDom,index){var cloneable=$(cloneableDom);var configData=window.FormData[cloneable.attr('namespace')][cloneable.attr('key')];cloneable.Cloneable();var clone=cloneable.get(0).clone();clone.setAttribute('index',index);var booleanControls=window.ComponentsUtils.truefalse.populateTemplate(clone,configData,null,index);if(typeof configData.disabled!='undefined'&&configData.disabled==='true'){$(booleanControls).attr('disabled',true);}
window.Build.bindEvents[configData.typeName](clone,configData);return clone;};window.Events.truefalse=function(){return["change","click"];};window.Build.bindEvents.truefalse=function(componentDom,configData,cDomPtrs){if(configData.disabled){return;}
var containers,controls,extraControls;if(configData.view==='single'){containers=[componentDom];controls=cDomPtrs['controls'];extraControls=cDomPtrs['extraControls']&&cDomPtrs['extraControls'].length>0?cDomPtrs['extraControls']:[];}else if(configData.view==='list'){if(cDomPtrs){containers=cDomPtrs['containers'].subArray(0,cDomPtrs['containers'].length-1);controls=cDomPtrs['controls'];extraControls=cDomPtrs['extraControls']&&cDomPtrs['extraControls'].length>0?cDomPtrs['extraControls']:[];}else{containers=[componentDom];switch(configData.displayType){case'radio':controls=$('input[@id^="radioYesControl_"]',componentDom).get();extraControls=$('input[@id^="radioNoControl_"]',componentDom).get();break;case'dropdown':controls=$('select',componentDom).get();break;case'checkbox':controls=$('[@id^="checkboxControl_"]',componentDom).get();}}}
window.Build.util.bindCustomEvents(containers,configData);window.Events.attachCommonEvent(controls,containers,['change']);if(extraControls&&extraControls.length>0){window.Events.attachCommonEvent(extraControls,containers,['change']);}};window.Destroy.truefalse=function(componentDomArray,configData){if(!window.Build.design){for(var i=0;i<componentDomArray.length;i++){var containers=window.Build.util.getContainers(componentDomArray[i],configData);containers.unbind();switch(configData.displayType){case'radio':$('[@id^="radioYesControl_"]',containers).unbind();$('[@id^="radioNoControl_"]',containers).unbind();break;case'dropdown':$('[@id^="dropdownControl_"]',containers).unbind();break;case'checkbox':$('[@id^="checkboxControl_"]',containers).unbind();break;}}}};window.Value.truefalse=function(componentDomArray,configData){var value;var values=[];for(i=0;i<componentDomArray.length;i++){switch(configData.displayType){case'radio':var radioYes=$('[@id^=radioYesControl_]',componentDomArray[i]).get(0);value=eval(radioYes.checked)?FormConstants.BOOLEAN_VALUE_TRUE:FormConstants.BOOLEAN_VALUE_FALSE;values.push(value);break;case'dropdown':value=$('select',componentDomArray[i]).val();values.push(value);break;case'checkbox':var checkboxControl=$('[@id^=checkboxControl_]',componentDomArray[i]).get(0);value=eval(checkboxControl.checked)?FormConstants.BOOLEAN_VALUE_TRUE:FormConstants.BOOLEAN_VALUE_FALSE;values.push(value);}}
return{id:values.join(_AE.uiDelimiter)};};window.Clean.truefalse=function(configData){delete configData.selected;};window.ComponentsUtils.truefalse={};window.ComponentsUtils.truefalse.populateTemplate=function(fields,configData,value,index){var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var indexSufix=index?('_'+index):'';var controlName=componentId+indexSufix;var booleanControls,labelValue;var tmpDiv=document.createElement('div');switch(configData.displayType){case'radio':var yesControlId='radioYesControl_'+compDomId+indexSufix;var noControlId='radioNoControl_'+compDomId+indexSufix;var yesControlLabel=''.node('label',{'id':'radioYesControlLabel_'+compDomId+indexSufix,'for':yesControlId,'className':'displayLabel'});var noControlLabel=''.node('label',{'id':'radioNoControlLabel_'+compDomId+indexSufix,'for':noControlId,'className':'displayLabel'});$(fields).prepend([yesControlLabel,noControlLabel]);var yesControl,noControl;var tmpDiv2=document.createElement('div');if(value==FormConstants.BOOLEAN_VALUE_TRUE){tmpDiv.innerHTML='<input type="radio" name="'+controlName+'" class="radio" checked/>';tmpDiv2.innerHTML='<input type="radio" name="'+controlName+'" class="radio"/>';}else if(value==FormConstants.BOOLEAN_VALUE_FALSE){tmpDiv.innerHTML='<input type="radio" name="'+controlName+'" class="radio"/>';tmpDiv2.innerHTML='<input type="radio" name="'+controlName+'" class="radio" checked/>';}else{tmpDiv.innerHTML='<input type="radio" name="'+controlName+'" class="radio"/>';tmpDiv2.innerHTML='<input type="radio" name="'+controlName+'" class="radio"/>';}
yesControl=tmpDiv.childNodes[0];noControl=tmpDiv2.childNodes[0];yesControlLabel.appendChild(yesControl);noControlLabel.appendChild(noControl);labelValue=''.node('span');yesControlLabel.appendChild(labelValue);if(typeof configData.yesLabel==='undefined'||configData.yesLabel===null){$(labelValue).html('');}else{$(labelValue).html(configData.yesLabel);}
labelValue=''.node('span');noControlLabel.appendChild(labelValue);if(typeof configData.noLabel==='undefined'||configData.noLabel===null){$(labelValue).html('');}else{$(labelValue).html(configData.noLabel);}
yesControl.setAttribute('id',yesControlId);if(window.Build.design){yesControl.setAttribute('readOnly','true');}
noControl.setAttribute('id',noControlId);if(window.Build.design){noControl.setAttribute('readOnly','true');}
booleanControls=[yesControl,noControl];break;case'dropdown':var dropdownControlId='dropdownControl_'+compDomId+indexSufix;var dropdownControlAttr={'id':dropdownControlId};if(window.Build.design){dropdownControlAttr['readOnly']='true';}
var dropdownControl=createNamedElement('select',controlName,dropdownControlAttr);var dropdownControlLabel=''.node('label',{'id':'dropdownControlLabel_'+compDomId+indexSufix,'for':dropdownControlId});labelValue=''.node('span');dropdownControlLabel.appendChild(labelValue);if(typeof configData.label==='undefined'||configData.label===null){$(labelValue).html('');}else{$(labelValue).html(configData.label);}
$(fields).prepend([dropdownControl,dropdownControlLabel]);var selectOptions=dropdownControl.options;selectOptions.length=0;selectOptions[selectOptions.length]=new Option(configData.yesLabel,FormConstants.BOOLEAN_VALUE_TRUE);selectOptions[selectOptions.length]=new Option(configData.noLabel,FormConstants.BOOLEAN_VALUE_FALSE);if(value==FormConstants.BOOLEAN_VALUE_TRUE||value===1){dropdownControl.value=FormConstants.BOOLEAN_VALUE_TRUE;}else if(value==FormConstants.BOOLEAN_VALUE_FALSE||value===0){dropdownControl.value=FormConstants.BOOLEAN_VALUE_FALSE;}else{dropdownControl.value='';}
booleanControls=[dropdownControl];break;case'checkbox':var checkboxControlId='checkboxControl_'+compDomId+indexSufix;var checkboxLabel=''.node('label',{'id':'checkboxControlLabel_'+compDomId+indexSufix,'for':checkboxControlId,'className':'displayLabel'});$(fields).prepend(checkboxLabel);var checkboxControl;if(value==FormConstants.BOOLEAN_VALUE_TRUE||value===1){tmpDiv.innerHTML='<input type="checkbox" name="'+controlName+'" class="checkbox" checked/>';}else{tmpDiv.innerHTML='<input type="checkbox" name="'+controlName+'" class="checkbox"/>';}
checkboxControl=tmpDiv.childNodes[0];labelValue=''.node('span');checkboxLabel.appendChild(checkboxControl);checkboxLabel.appendChild(labelValue);if(typeof configData.checkboxLabel==='undefined'||configData.checkboxLabel===null){$(labelValue).html('');}else{$(labelValue).html(configData.checkboxLabel);}
checkboxControl.setAttribute('id',checkboxControlId);if(window.Build.design){checkboxControl.setAttribute('readOnly','true');}
booleanControls=[checkboxControl];}
return booleanControls;};window.Build.templateMap.checkbox={control:"forms/templates/controls/checkbox.html",config:"forms/templates/config/checkbox_config.jsp"};window.Build.typeMap[15]={typeName:"checkbox",importChoices:"literal"};window.Initialize.checkbox=function(configData){configData.importChoices="literal";configData.choices={entries:[{label:"Choice 1",id:""}],selected:[]};configData.defaultValue=null;configData.subType='text';configData.multiple=true;};window.Build.single.checkbox=function(componentDom,configData,cDomPtrs){window.Build.element(componentDom,configData,cDomPtrs);var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var choices={entries:[],selected:[]};if(configData.importChoices=='data'&&window.FormDesigner[configData.namespace].isTaskForm){if(window.Build.design){var exprLabel=configData.displayLabels||'';var exprValue=configData.displayValues||'';choices.entries=[{label:exprLabel,id:exprValue}];}else{choices=window.Build.util.expressionOptions(configData);}}else{choices=configData.choices;}
var entry,field,label,input,inputId,labelValue,controls=[];var tmpDiv=document.createElement('div');var baseField=cDomPtrs['baseField'],baseLabel=cDomPtrs['displayLabel'];var baseLabelValue=cDomPtrs['baseLabelValue'];var fieldsContainer=cDomPtrs['fieldsContainer'];var numEntries=choices.entries.length;for(var i=0;i<numEntries;i++){entry=choices.entries[i];field=baseField.cloneNode(false);fieldsContainer.appendChild(field);label=baseLabel.cloneNode(false);field.appendChild(label);inputId='checkbox_'+compDomId+'_'+i;label.setAttribute('for',inputId);if(choices.selected.contains(i)){tmpDiv.innerHTML='<input type="checkbox" name="'+componentId+'" data="checkbox" class="checkbox" checked/>';}else{tmpDiv.innerHTML='<input type="checkbox" name="'+componentId+'" data="checkbox" class="checkbox"/>';}
input=tmpDiv.childNodes[0];label.appendChild(input);input.setAttribute('id',inputId);input.setAttribute('valueId',entry.id);input.setAttribute('valueType',entry.type);labelValue=''.node('span');label.appendChild(labelValue);if(typeof entry.label!=='undefined'){$(labelValue).html(entry.label);}
if(!window.Build.design&&configData.readOnly!='true'){field.removeAttribute('readOnly');}
if(typeof configData.disabled!='undefined'&&configData.disabled==='true'){field.setAttribute('disabled',true);}else{field.removeAttribute('disabled');}
controls[i]=input;}
cDomPtrs['controls']=controls;fieldsContainer.removeChild(baseField);};window.Events.checkbox=function(configData){return['change','click'];};window.Build.bindEvents.checkbox=function(componentDom,configData,cDomPtrs){window.Build.util.bindCustomEvents([componentDom],configData);var controls;if(cDomPtrs){controls=cDomPtrs['controls'];}else{var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,configData.id);controls=$('[@id^=checkbox_{0}_]'.supplant(compDomId),componentDom).get();}
var containers=[];for(var i=0;i<controls.length;i++){containers[i]=componentDom;}
window.Events.attachCommonEvent(controls,containers,["change"]);};window.Read.checkbox=function(value,configData){ComponentsUtils.updateDefaultValuesFromChoices(value,configData);};window.Destroy.checkbox=function(componentDomArray,configData){if(!window.Build.design){$(componentDomArray[0]).unbind();var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,configData.id);var controls=$('[@id^=checkbox_{0}_]'.supplant(compDomId),componentDomArray[0]);controls.unbind();}};window.Value.checkbox=function(componentDomArray,configData){return ComponentsUtils.fetchValueFromChoices(componentDomArray[0]);};window.Clean.checkbox=function(configData){delete configData.choices.selected;};window.Build.templateMap.report={control:"forms/templates/controls/report.jsp",config:"forms/templates/config/report_config.jsp"};window.Initialize.report=function(configData){configData.reportItem=null;configData.showToolbar=false;configData.showAdvancedControls=false;configData.contextPickerType='process_models';configData.isReportExpression=false;configData.isContextExpression=false;configData.width='500';configData.height='200';configData.labelPosition='above';};window.Build.params.report=function(configData){var compDomId=window.Build.design?configData.key:configData.id;compDomId=window.Build.util.getUniqueDOMId(configData.namespace,compDomId);var params={id:compDomId,showToolbar:configData.showToolbar,showDisplayOptions:configData.showAdvancedControls,chartWidth:configData.width,chartHeight:configData.height,contextType:configData.contextType,contextPickerType:configData.contextPickerType,isReportExpression:configData.isReportExpression,isContextExpression:configData.isContextExpression,height:configData.height,width:configData.width,isdesignTime:window.Build.design};if(configData.reportItem){if(configData.isReportExpression){params.reportId=configData.reportItem.value;}else{params.reportId=configData.reportItem.id;}}
if(configData.contextItems){if(configData.isContextExpression){params.context=toJSON(configData.contextItems);}else{params.context=configData.context;}}
return params;};window.Build.single.report=function(componentDom,configData,cDomPtrs){cDomPtrs['legend'].removeAttribute('id');cDomPtrs['formReportContainer'].removeAttribute('id');cDomPtrs['reportFields'].removeAttribute('id');window.Build.element(componentDom,configData,cDomPtrs);window.ComponentsUtils.report.configureReportControl(cDomPtrs['formReportContainer'],cDomPtrs['reportFields'],configData);};window.Build.rebuild.single.report=function(componentDom,configData){window.Build.element(componentDom,configData);window.ComponentsUtils.report.configureReportControl($('.formReportContainer',componentDom).get(0),$('.fields.reportFields',componentDom).get(0),configData);};window.ComponentsUtils.report={};window.ComponentsUtils.report.configureReportControl=function(reportControl,reportFields,configData){reportControl=$(reportControl);if(window.Build.design){if(!configData.reportItem){reportControl.html('[ Select A Report ]');reportControl.height(20);}else if(configData.isReportExpression||configData.isContextExpression){reportControl.html('This report can only be rendered at runtime');reportControl.height(20);}else{reportControl.attr('disabled','true');configureDimensions();}}else{configureDimensions();}
function configureDimensions(){reportControl.height(configData.height+'px');var containerWidth=$(reportFields).width();reportControl.width(((containerWidth&&containerWidth>0&&configData.width>containerWidth)?containerWidth:configData.width)+'px');}};window.StandardValidate.report=[];window.Build.templateMap.community={control:"forms/templates/controls/picker.html",config:"forms/templates/config/community_config.jsp"};window.Build.typeMap[13]={typeName:"community"};window.Read.community=function(value,configData){window.Build.util.picker.read(value,configData);};window.Build.params.community=function(configData){return{key:configData.key,design:window.Build.design};};window.Build.single.community=function(componentDom,configData,cDomPtrs){window.Build.util.picker.buildSingleViewPicker(componentDom,configData,cDomPtrs);};window.Build.list.community=function(componentDom,configData,cDomPtrs){window.Build.util.picker.buildListViewPicker(componentDom,configData,cDomPtrs);};window.Build.copy.community=function(cloneableDom,index){return window.Build.util.picker.copy(cloneableDom,index,"pickerControl_");};window.Events.community=function(){return window.Build.util.picker.events;};window.Build.bindEvents.community=function(componentDom,configData,cDomPtrs){window.Build.util.picker.bindPickerEvents(componentDom,configData,cDomPtrs);};window.Value.community=function(componentDom,configData){return window.Build.util.picker.getPickerValue(componentDom,configData);};window.Destroy.community=function(componentDomArray,configData){if(!window.Build.design){window.Build.util.picker.destroy(componentDomArray,configData);}};window.StandardValidate.community=PICKER.pickerValidation;window.Build.templateMap.text={control:"forms/templates/controls/text.html",config:"forms/templates/config/text_config.jsp"};window.Build.typeMap[2]={typeName:"text",width:'medium'};window.Initialize.text=function(configData){configData.width='medium';};window.Read.text=function(value,configData){window.Build.util.text.read(value,configData);};window.Build.single.text=function(componentDom,configData,cDomPtrs){var control=window.Build.util.text.buildSingleViewText(componentDom,configData,cDomPtrs);$(control).attr("class",configData.width);};window.Build.list.text=function(componentDom,configData,cDomPtrs){var controls=window.Build.util.text.buildListViewText(componentDom,configData,cDomPtrs);$(controls).attr("class",configData.width);};window.Build.copy.text=function(cloneableDom,index){return window.Build.util.text.copy(cloneableDom,index,"textControl_");};window.Events.text=function(configData){return["change","blur","focus","keypress","keyup","keydown"];};window.Build.bindEvents.text=function(componentDom,configData,cDomPtrs){window.Build.util.text.bindTextEvents(componentDom,configData,cDomPtrs);};window.Destroy.text=function(componentDomArray,configData){if(!window.Build.design){window.Build.util.text.destroy(componentDomArray,configData);}};window.Value.text=function(componentDom,configData,asArray){return window.Build.util.text.value(componentDom,configData,asArray);};window.StandardValidate.text=[{message:function(componentDom,configData){if(configData.view==='list'&&FormDesigner.ValidateUtilities.containsUiDelimiter(window.Value.text(componentDom,configData,true).id)){return _TEXT.noUiDelimiter.supplant(_AE.uiDelimiter);}},method:function(componentDom,configData){if(configData.view==='list'&&FormDesigner.ValidateUtilities.containsUiDelimiter(window.Value.text(componentDom,configData,true).id)){return false;}
return true;}}];window.Build.templateMap.button={control:"forms/templates/controls/button.html",config:"forms/templates/config/button_config.jsp"};window.Build.typeMap[26]={typeName:"button"};window.Initialize.button=function(configData){configData.buttonLabel=window.FormDesigner[configData.namespace].isTaskForm?_BUTTON.Submit:_BUTTON.Startnbspraquo;configData.buttonValue='Submit';configData.buttonConfirm='false';configData.confirmMessage='Submit this form?';};window.Read.button=function(value,configData){};window.Build.single.button=function(componentDom,configData,cDomPtrs){window.Build.element(componentDom,configData,cDomPtrs);var componentId=window.Build.design?configData.key:configData.id;if(configData.defaultValue!=null){if(!configData.buttonLabel){configData.buttonLabel=configData.defaultValue;}
if(!configData.buttonValue){configData.buttonValue=_BUTTON.Submit;}}
if(!window.Build.design){$(componentDom).addClass("buttonSetInput");}
var hiddenButtonValue=$(cDomPtrs['buttonValue']);var newButtonValue=createNamedElement('input',componentId,{'type':'hidden'});hiddenButtonValue.before(newButtonValue).remove();hiddenButtonValue=$(newButtonValue);if(configData.buttonValue.constructor===Object){hiddenButtonValue.val(configData.buttonValue.value);}else{hiddenButtonValue.val(configData.buttonValue);}
var buttonTemplate=$(cDomPtrs['buttonLabel']);if(configData.buttonLabel.constructor===Object){buttonTemplate.val(configData.buttonLabel.value);}else{buttonTemplate.val(configData.buttonLabel);}
if(window.Build.design){buttonTemplate.attr('disabled','disabled');}else{if(configData.disabled==='true'){$(buttonTemplate).attr('disabled',true);$(buttonTemplate).css("cursor","default");}else{$(buttonTemplate).removeAttr("disabled");}
if(configData.buttonConfirm==='true'){buttonTemplate.click(function(){var buttonKey=this.parentNode.key;var message=configData.confirmMessage.constructor===Object?configData.confirmMessage.value:configData.confirmMessage;asi.confirm(message,function(){window.submitButtonKey=buttonKey;return window.submitFormOnConfirm(configData.namespace,configData.id);});return false;});}else{buttonTemplate.click(function(){window.submitButtonKey=this.parentNode.getAttribute('key');return true;});}}
if(window.FormDesigner[configData.namespace].activityChaining&&window.FormDesigner[configData.namespace].activityChaining.chained){if(configData.key==="defaultSubmit"||buttonTemplate.attr("value")===_BUTTON.Submit){if(window.FormDesigner[configData.namespace].isTaskForm){buttonTemplate.attr("value",_BUTTON.Next);}}}};window.Events.button=function(configData){return[];};window.Destroy.button=function(componentDomArray,configData){if(!window.Build.design){var buttonTemplate=$('[@name="buttonLabel"]',componentDomArray[0]);buttonTemplate.unbind();}};window.Value.button=function(componentDom,configData){return{id:$(componentDom).find('[@name='+configData.id+']').val()};};window.StandardValidate.button=[];window.Build.templateMap.email={control:"forms/templates/controls/text.html",config:"forms/templates/config/email_config.jsp"};window.Build.typeMap[29]={typeName:"email"};window.Initialize.email=function(configData){};window.Read.email=function(value,configData){window.Build.util.text.read(value,configData);};window.Build.single.email=function(componentDom,configData,cDomPtrs){window.Build.util.text.buildSingleViewText(componentDom,configData,cDomPtrs);};window.Build.list.email=function(componentDom,configData,cDomPtrs){window.Build.util.text.buildListViewText(componentDom,configData,cDomPtrs);};window.Build.copy.email=function(cloneableDom,index){return window.Build.util.text.copy(cloneableDom,index,"textControl_");};window.Events.email=function(configData){return['change','blur','focus','keyup','keydown','keypress'];};window.Build.bindEvents.email=function(componentDom,configData,cDomPtrs){window.Build.util.text.bindTextEvents(componentDom,configData,cDomPtrs);};window.Value.email=function(componentDom,configData){return window.Build.util.text.value(componentDom,configData);};window.Destroy.email=function(componentDomArray,configData){if(!window.Build.design){window.Build.util.text.destroy(componentDomArray,configData);}};window.StandardValidate.email=[];window.Build.templateMap.paragraph={control:"forms/templates/controls/paragraph.jsp",config:"forms/templates/config/paragraph_config.jsp"};window.Build.typeMap[3]={typeName:'paragraph',height:7,allowRichText:'false'};window.Build.typeMap[25]={typeName:'paragraph',height:15,allowRichText:'true'};window.Build.typeMap[28]={typeName:'paragraph',height:15,allowRichText:'false'};window.Initialize.paragraph=function(configData){configData.allowRichText='false';configData.height=5;configData.instructions='';};window.Build.params.paragraph=function(configData){var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);return{id:compDomId,name:componentId,readOnly:configData.readOnly,disabled:configData.disabled};};window.Read.paragraph=function(value,configData){if(!value||value===null){configData.richText=configData.plainText='';}else{var defaultValue;if(value.constructor==Array){defaultValue=value.join(_AE.uiDelimiter);}else{defaultValue=''+value;}
configData.plainText=defaultValue;configData.richText=defaultValue.replace(/(http[s]?:\/\/.+?)?(components\/htmlarea\/htmlarea\/images\/openEditor.gif)/gi,rewriteURL("$2"));configData.instructions=configData.instructions||'';}};window.Build.single.paragraph=function(componentDom,configData,cDomPtrs){var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var plainTextControlDiv=$(cDomPtrs['plainTextControlDiv_'+compDomId]);var richTextControlDiv=$(cDomPtrs['richTextControlDiv_'+compDomId]);if(eval(configData.allowRichText)&&isIE){if(window.Build.design){plainTextControlDiv.hide();}else{plainTextControlDiv.remove();}
setTimeout(function(){window.Build.element(componentDom,configData);var richTextValue=window.ComponentsUtils.paragraph.getRichTextValue(configData);var richTextIframe=$('[@id="_textArea_richTextControl_'+compDomId+'__editor"]',cDomPtrs['htmlArea_richTextControl_'+compDomId+'_']).get(0);window.ComponentsUtils.paragraph.setRichTextIframeValue(richTextIframe,richTextValue);window.ComponentsUtils.paragraph.styleRichTextIframe(richTextIframe,configData);var fields=$('.fields',richTextControlDiv.get(0));var instructions=''.node('p',{'name':'paragraphControlInstructions','className':'instructions'});$(instructions).html(configData.instructions);fields.append(instructions);cDomPtrs['instructions']=instructions;if(eval(configData.readOnly)||eval(configData.disabled)){var staticIframe=cDomPtrs['htmlarea_static_'+compDomId];window.ComponentsUtils.paragraph.setStaticIframeValue(staticIframe,richTextValue);window.ComponentsUtils.paragraph.styleStaticIframe(staticIframe,configData);}
if(window.Build.design){richTextControlDiv.show();}},5);}else{window.Build.element(componentDom,configData);window.ComponentsUtils.paragraph.confPlainTextControl(cDomPtrs['plainTextControl_'+compDomId],configData);if(window.Build.design){richTextControlDiv.hide();plainTextControlDiv.show();}else{richTextControlDiv.remove();}}};window.Build.rebuild.single.paragraph=function(componentDom,configData){var componentId=window.Build.design?configData.key:configData.id;compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var plainTextControlDiv=$('#plainTextControlDiv_'+compDomId,componentDom);var richTextControlDiv=$('#richTextControlDiv_'+compDomId,componentDom);if(eval(configData.allowRichText)&&isIE){if(window.Build.design){plainTextControlDiv.hide();}else{plainTextControlDiv.remove();}
setTimeout(function(){window.Build.element(componentDom,configData);var richTextValue=window.ComponentsUtils.paragraph.getRichTextValue(configData);var richTextIframe=$('#_textArea_richTextControl_'+compDomId+'__editor',componentDom).get(0);window.ComponentsUtils.paragraph.setRichTextIframeValue(richTextIframe,richTextValue);window.ComponentsUtils.paragraph.styleRichTextIframe(richTextIframe,configData);var fields=$('.fields',richTextControlDiv.get(0));var instTag=$('.instructions',fields.get(0));if(instTag.length===0){fields.append('<p class="instructions" name="paragraphControlInstructions">'+configData.instructions+'</p>');}
if(eval(configData.readOnly)||eval(configData.disabled)){var staticIframe=$('#htmlarea_static_'+compDomId,componentDom).get(0);window.ComponentsUtils.paragraph.setStaticIframeValue(staticIframe,richTextValue);window.ComponentsUtils.paragraph.styleStaticIframe(staticIframe,configData);}
if(window.Build.design){richTextControlDiv.show();}},10);}else{window.Build.element(componentDom,configData);window.ComponentsUtils.paragraph.confPlainTextControl($('#plainTextControl_'+compDomId,plainTextControlDiv).get(0),configData);if(window.Build.design){richTextControlDiv.hide();plainTextControlDiv.show();}else{richTextControlDiv.remove();}}};window.ComponentsUtils.paragraph={};window.ComponentsUtils.paragraph.getRichTextValue=function(configData){var richTextValue;if(!window.Build.design&&window.FormDesigner[configData.namespace].isTaskForm&&configData.expressionValue&&configData.expressionValue.constructor==Object){if((configData.defaultValue||"").match(/components\/htmlarea\/htmlarea\/images\/openEditor.gif/)){richTextValue=configData.expressionValue.value||'';}else{richTextValue=configData.defaultValue;}}else{richTextValue=configData.richText||'';}
return richTextValue;};window.ComponentsUtils.paragraph.setRichTextIframeValue=function(richTextIframe,richTextValue){if(richTextIframe){richTextIframe.contentWindow.document.body.innerHTML=richTextValue;}};window.ComponentsUtils.paragraph.styleRichTextIframe=function(richTextIframe,configData){if(!richTextIframe){return;}
richTextIframe.style.height=configData.height*17;};window.ComponentsUtils.paragraph.setStaticIframeValue=function(staticIframe,richTextValue){if(staticIframe){staticIframe.contentWindow.document.body.innerHTML=richTextValue;}};window.ComponentsUtils.paragraph.styleStaticIframe=function(staticIframe,configData){if(staticIframe){staticIframe.style.display='';staticIframe.style.height=configData.height*17;}};window.ComponentsUtils.paragraph.confPlainTextControl=function(plainTextControl,configData){if(!plainTextControl){return;}
plainTextControl=$(plainTextControl);plainTextControl.val(configData.plainText);plainTextControl.attr('rows',configData.height);if(!window.Build.design&&configData.readOnly!='true'){plainTextControl.removeAttr('readOnly');}
if(eval(configData.disabled)){plainTextControl.attr('disabled',true);}else{plainTextControl.removeAttr('disabled');}};window.Events.paragraph=function(configData){if(configData.allowRichText&&configData.allowRichText==='true'){return["blur","focus"];}else{return["change","blur","focus","keyup","keypress","keydown"];}};window.Build.bindEvents.paragraph=function(componentDom,configData,cDomPtrs){var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var containers=$(componentDom);window.Build.util.bindCustomEvents([componentDom],configData);if(configData.allowRichText&&configData.allowRichText==='true'){setTimeout(function(){var richTextIframe;if(cDomPtrs){richTextIframe=$('[@id="_textArea_richTextControl_'+compDomId+'__editor"]',cDomPtrs['htmlArea_richTextControl_'+compDomId+'_']).get(0);}else{richTextIframe=$('[@id="_textArea_richTextControl_'+compDomId+'__editor"]',componentDom).get(0);}
window.Events.attachCommonEvent([richTextIframe],[componentDom],['blur','focus']);$(richTextIframe).bind('blur',function(){window.FormValidate(configData.namespace,configData.key);});},5);}else{var plainText=cDomPtrs?cDomPtrs['plainTextControl_'+compDomId]:$('[@id="plainTextControl_'+compDomId+'"]',componentDom).get(0);window.Events.attachCommonEvent([plainText],[componentDom],['blur','focus','change']);$(plainText).change(function(){window.FormValidate(configData.namespace,configData.key);});}};window.Destroy.paragraph=function(componentDomArray,configData){if(!window.Build.design){var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,configData.id);for(var i=0;i<componentDomArray.length;i++){var containers=$(componentDomArray[i]);containers.unbind();var richTextIframe=$('#_textArea_richTextControl_{0}__editor'.supplant(compDomId),containers);richTextIframe.unbind();var plainText=$('#plainTextControl_{0}'.supplant(compDomId),containers);plainText.unbind();}}};window.Value.paragraph=function(componentDoms,configData){var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var paragraphDom=componentDoms[0];var value;if(configData.allowRichText&&configData.allowRichText==='true'&&isIE){if(configData.readOnly=='true'||configData.disabled=='true'){var staticIframe=$('#htmlarea_static_'+compDomId,paragraphDom).get(0);value=staticIframe.contentWindow.document.body.innerHTML;}else{var richTextIframe=$('#_textArea_richTextControl_'+compDomId+'__editor',paragraphDom).get(0);value=richTextIframe.contentWindow.document.body.innerHTML;}}else{var plainTextControlDiv=$('#plainTextControlDiv_'+compDomId,paragraphDom);value=$('#plainTextControl_'+compDomId,plainTextControlDiv).val();}
return{id:value};};window.StandardValidate.paragraph=[];window.StandardValidate.paragraph[0]={message:function(componentDoms,configData){return _PARAGRAPH.ExceedsLimit.supplant(DATA_CAP_PARAGRAPHS);},method:function(componentDoms,configData){return window.Value.paragraph(componentDoms,configData).id.length<=DATA_CAP_PARAGRAPHS;}};window.Build.templateMap.password={control:"forms/templates/controls/password.html",config:"forms/templates/config/password_config.jsp"};window.Build.typeMap[27]={typeName:"password"};window.Initialize.password=function(configData){};window.Read.password=function(value,configData){if(!value||value===null){configData.defaultValue="";}else{configData.defaultValue=value;}};window.Build.single.password=function(componentDom,configData,cDomPtrs){window.Build.element(componentDom,configData,cDomPtrs);var passwordControl=$(cDomPtrs['passwordControl']);var passwordControlLabel=$(cDomPtrs['controlLabel']);var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var controlId='passwordControl_'+compDomId;var controlAttrs={'type':passwordControl.attr('type'),'id':controlId,'class':passwordControl.attr('class')};if(!window.Build.design&&configData.readOnly==='true'){controlAttrs['readOnly']='true';}
var newControl=createNamedElement('input',componentId,controlAttrs);passwordControl.before(newControl).remove();passwordControl=$(newControl);cDomPtrs['passwordControl']=newControl;passwordControl.val(configData.defaultValue);passwordControlLabel.attr('for',controlId);if(typeof configData.disabled!='undefined'&&configData.disabled==='true'){passwordControl.attr('disabled',true);}else{passwordControl.removeAttr('disabled');}};window.Build.bindEvents.password=function(componentDom,configData,cDomPtrs){if(configData.readOnly&&configData.readOnly=='true'){return;}
window.Build.util.bindCustomEvents([componentDom],configData);$(componentDom).change(function(){window.FormValidate(configData.namespace,configData.key);});var controls;if(cDomPtrs){controls=[cDomPtrs['passwordControl']];}else{var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,configData.id);controls=$('[@id=passwordControl_{0}]'.supplant(compDomId),componentDom).get();}
window.Events.attachCommonEvent(controls,[componentDom],["blur","focus","change"]);};window.Destroy.password=function(componentDomArray,configData){if(!window.Build.design){$(componentDomArray[0]).unbind();var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,configData.id);var control=$('[@id=passwordControl_{0}]'.supplant(compDomId),componentDomArray[0]);control.unbind();}};window.Value.password=function(componentDomArray,configData){var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,configData.id);var value=$('[@id=passwordControl_{0}]'.supplant(compDomId),componentDomArray[0]).val();return{id:value};};window.Events.password=function(configData){return['change','blur','focus','keyup','keydown','keypress'];};window.StandardValidate.password=[];window.Build.templateMap.knowledge_center={control:"forms/templates/controls/picker.html",config:"forms/templates/config/knowledgecenter_config.jsp"};window.Build.typeMap[10]={typeName:"knowledge_center"};window.Build.params.knowledge_center=function(configData){return{key:configData.key,design:window.Build.design};};window.Read.knowledge_center=function(value,configData){window.Build.util.picker.read(value,configData);};window.Build.single.knowledge_center=function(componentDom,configData,cDomPtrs){window.Build.util.picker.buildSingleViewPicker(componentDom,configData,cDomPtrs);};window.Build.list.knowledge_center=function(componentDom,configData,cDomPtrs){window.Build.util.picker.buildListViewPicker(componentDom,configData,cDomPtrs);};window.Build.copy.knowledge_center=function(cloneableDom,index){return window.Build.util.picker.copy(cloneableDom,index,"pickerControl_");};window.Events.knowledge_center=function(){return window.Build.util.picker.events;};window.Build.bindEvents.knowledge_center=function(componentDom,configData,cDomPtrs){window.Build.util.picker.bindPickerEvents(componentDom,configData,cDomPtrs);};window.Value.knowledge_center=function(componentDom,configData){return window.Build.util.picker.getPickerValue(componentDom,configData);};window.Destroy.knowledge_center=function(componentDomArray,configData){if(!window.Build.design){window.Build.util.picker.destroy(componentDomArray,configData);}};window.StandardValidate.knowledge_center=PICKER.pickerValidation;window.Build.templateMap.hidden={control:"forms/templates/controls/hidden.html",config:"forms/templates/config/hidden_config.jsp"};window.Build.typeMap[22]={typeName:"hidden"};window.Initialize.hidden=function(configData){};window.Read.hidden=function(value,configData){if(value==null){configData.defaultValue='';}else{configData.defaultValue=value;}}
window.Build.single.hidden=function(componentDom,configData,cDomPtrs){window.Build.element(componentDom,configData,cDomPtrs);var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var hiddenControl=$(cDomPtrs['hiddenControl']);var controlId='hidden_'+compDomId;var newControl=createNamedElement('input',componentId,{'type':hiddenControl.attr('type'),'id':controlId});hiddenControl.before(newControl).remove();hiddenControl=$(newControl);cDomPtrs['hiddenControl']=newControl;hiddenControl.val(configData.defaultValue);if(window.Build.design){$(componentDom).addClass('hiddenInput');var hiddenImage=''.node('img',{src:window.FormConstants.hiddenIndicator,className:'hiddenImage'});var text=''.node('span');$(text).html(configData.id+' (Hidden Input)');$(cDomPtrs['displayLabel']).append(hiddenImage).append(text);}else{$(cDomPtrs['displayLabel']).hide();}};window.Value.hidden=function(componentDomArray,configData){var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,configData.id);return{id:$('[@id="hidden_{0}"]'.supplant(compDomId),componentDomArray[0]).val()};};window.Events.hidden=function(configData){return[];};window.StandardValidate.hidden=[];window.Build.templateMap.page={control:"forms/templates/controls/picker.html",config:"forms/templates/config/page_config.jsp"};window.Build.typeMap[24]={typeName:"page"};window.Build.params.page=function(configData){return{key:configData.key,design:window.Build.design};};window.Read.page=function(value,configData){window.Build.util.picker.read(value,configData);};window.Build.single.page=function(componentDom,configData,cDomPtrs){window.Build.util.picker.buildSingleViewPicker(componentDom,configData,cDomPtrs);};window.Build.list.page=function(componentDom,configData,cDomPtrs){window.Build.util.picker.buildListViewPicker(componentDom,configData,cDomPtrs);};window.Build.copy.page=function(cloneableDom,index){return window.Build.util.picker.copy(cloneableDom,index,"pickerControl_");};window.Events.page=function(){return window.Build.util.picker.events;};window.Build.bindEvents.page=function(componentDom,configData,cDomPtrs){window.Build.util.picker.bindPickerEvents(componentDom,configData,cDomPtrs);};window.Value.page=function(componentDom,configData){return window.Build.util.picker.getPickerValue(componentDom,configData);};window.Destroy.page=function(componentDomArray,configData){if(!window.Build.design){window.Build.util.picker.destroy(componentDomArray,configData);}};window.StandardValidate.page=PICKER.pickerValidation;window.Build.templateMap.people={control:"forms/templates/controls/picker.html",config:"forms/templates/config/people_config.jsp"};window.Build.typeMap[4]={typeName:"people",subType:"user"};window.Build.typeMap[5]={typeName:"people",subType:"group"};window.Build.typeMap[6]={typeName:"people",subType:"people"};window.Initialize.people=function(configData){configData.subType='people';};window.Build.params.people=function(configData){return{key:configData.key,design:window.Build.design};};window.Read.people=function(value,configData){window.Build.util.picker.read(value,configData);};window.Build.single.people=function(componentDom,configData,cDomPtrs){window.Build.util.picker.buildSingleViewPicker(componentDom,configData,cDomPtrs);};window.Build.list.people=function(componentDom,configData,cDomPtrs){window.Build.util.picker.buildListViewPicker(componentDom,configData,cDomPtrs);};window.Build.copy.people=function(cloneableDom,index){return window.Build.util.picker.copy(cloneableDom,index,"pickerControl_");};window.Events.people=function(){return window.Build.util.picker.events;};window.Build.bindEvents.people=function(componentDom,configData,cDomPtrs){window.Build.util.picker.bindPickerEvents(componentDom,configData,cDomPtrs);};window.Value.people=function(componentDom,configData){return window.Build.util.picker.getPickerValue(componentDom,configData);};window.Destroy.people=function(componentDomArray,configData){if(!window.Build.design){window.Build.util.picker.destroy(componentDomArray,configData);}};window.StandardValidate.people=PICKER.pickerValidation;window.Build.templateMap.discussion={control:"forms/templates/controls/picker.html",config:"forms/templates/config/discussions_config.jsp"};window.Build.typeMap[18]={typeName:"discussion",subType:"forum"};window.Build.typeMap[19]={typeName:"discussion",subType:"topic"};window.Build.typeMap[20]={typeName:"discussion",subType:"message"};window.Build.params.discussion=function(configData){return{key:configData.key,design:window.Build.design};};window.Initialize.discussion=function(configData){configData.subType='forum';};window.Read.discussion=function(value,configData){window.Build.util.picker.read(value,configData);};window.Build.single.discussion=function(componentDom,configData,cDomPtrs){window.Build.util.picker.buildSingleViewPicker(componentDom,configData,cDomPtrs);};window.Build.list.discussion=function(componentDom,configData,cDomPtrs){window.Build.util.picker.buildListViewPicker(componentDom,configData,cDomPtrs);};window.Build.copy.discussion=function(cloneableDom,index){return window.Build.util.picker.copy(cloneableDom,index,"pickerControl_");};window.Events.discussion=function(){return window.Build.util.picker.events;};window.Build.bindEvents.discussion=function(componentDom,configData,cDomPtrs){window.Build.util.picker.bindPickerEvents(componentDom,configData,cDomPtrs);};window.Value.discussion=function(componentDom,configData){return window.Build.util.picker.getPickerValue(componentDom,configData);};window.Destroy.discussion=function(componentDomArray,configData){if(!window.Build.design){window.Build.util.picker.destroy(componentDomArray,configData);}};window.StandardValidate.discussion=PICKER.pickerValidation;window.Build.templateMap.email_recipient={control:"forms/templates/controls/picker.html",config:"forms/templates/config/email_recipient_config.jsp"};window.Build.typeMap[30]={typeName:"email_recipient"};window.Build.params.email_recipient=function(configData){return{key:configData.key,design:window.Build.design};};window.Read.email_recipient=function(value,configData){window.Build.util.picker.read(value,configData);};window.Build.single.email_recipient=function(componentDom,configData,cDomPtrs){window.Build.util.picker.buildSingleViewPicker(componentDom,configData,cDomPtrs);};window.Build.list.email_recipient=function(componentDom,configData,cDomPtrs){window.Build.util.picker.buildListViewPicker(componentDom,configData,cDomPtrs);};window.Build.copy.email_recipient=function(cloneableDom,index){return window.Build.util.picker.copy(cloneableDom,index,"pickerControl_");};window.Events.email_recipient=function(){return window.Build.util.picker.events;};window.Build.bindEvents.email_recipient=function(componentDom,configData,cDomPtrs){window.Build.util.picker.bindPickerEvents(componentDom,configData,cDomPtrs);};window.Value.email_recipient=function(componentDom,configData){return window.Build.util.picker.getPickerValue(componentDom,configData);};window.Destroy.email_recipient=function(componentDomArray,configData){if(!window.Build.design){window.Build.util.picker.destroy(componentDomArray,configData);}};window.StandardValidate.email_recipient=PICKER.pickerValidation;window.Build.templateMap.content={control:"forms/templates/controls/picker.html",config:"forms/templates/config/content_config.jsp"};window.Build.typeMap[11]={typeName:"content",subType:"folder"};window.Build.typeMap[12]={typeName:"content",subType:"document"};window.Build.typeMap[23]={typeName:"content",subType:"content"};window.Read.content=function(value,configData){window.Build.util.picker.read(value,configData);};window.Initialize.content=function(configData){configData.subType='document';};window.Build.params.content=function(configData){return{key:configData.key,design:window.Build.design};};window.Build.single.content=function(componentDom,configData,cDomPtrs){window.Build.util.picker.buildSingleViewPicker(componentDom,configData,cDomPtrs);};window.Build.list.content=function(componentDom,configData,cDomPtrs){window.Build.util.picker.buildListViewPicker(componentDom,configData,cDomPtrs);};window.Build.copy.content=function(cloneableDom,index){return window.Build.util.picker.copy(cloneableDom,index,"pickerControl_");};window.Events.content=function(){return window.Build.util.picker.events;};window.Build.bindEvents.content=function(componentDom,configData,cDomPtrs){window.Build.util.picker.bindPickerEvents(componentDom,configData,cDomPtrs);};window.Value.content=function(componentDom,configData){return window.Build.util.picker.getPickerValue(componentDom,configData);};window.Destroy.content=function(componentDomArray,configData){if(!window.Build.design){window.Build.util.picker.destroy(componentDomArray,configData);}};window.StandardValidate.content=PICKER.pickerValidation;window.Build.templateMap.message={control:"forms/templates/controls/message.html",config:"forms/templates/config/message_config.jsp"};window.Build.typeMap[17]={typeName:"message",allowRichText:false};window.Initialize.message=function(configData){configData.allowRichText=false;configData.label='Message';};window.Build.single.message=function(componentDom,configData,cDomPtrs){window.Build.element(componentDom,configData,cDomPtrs);configData.richText=configData.richText||configData.label;configData.plainText=configData.plainText||configData.label;var jComponentDom=$(componentDom);jComponentDom.addClass('message');jComponentDom.removeClass('legendRight');var componentControl=$(cDomPtrs['messageControl']);if(configData.allowRichText){if(configData.richText&&configData.richText.constructor==Object){componentControl.html(configData.richText.value);}else if(configData.expressionValue&&configData.expressionValue.constructor==Object){componentControl.html(configData.expressionValue.value);}else{componentControl.html(configData.richText);}}else{if(configData.plainText&&configData.plainText.constructor==Object){componentControl.html(configData.plainText.value);}else{componentControl.html(configData.plainText);}}};window.Value.message=function(componentDom,configData){return null;};window.Events.message=function(configData){return[];};window.StandardValidate.message=[];window.Build.templateMap.section={control:"forms/templates/controls/section.html",config:"forms/templates/config/section_config.jsp"};window.Initialize.section=function(configData){configData.showLabel='yes';configData.columns=1;configData.label="Untitled Section";};window.Inherit.section=['labelPosition'];window.Build.single.section=function(componentDom,configData,layoutTree,cDomPtrs){window.Build.layout(componentDom,configData);$(componentDom).addClass('section');var sectionLabel=$(cDomPtrs['sectionLabel']);sectionLabel.append(configData.label);var image=$(cDomPtrs['collapseImg']);image.attr('src',window.FormConstants.sectionMinus);var formSection=$(cDomPtrs['formSection']);if(!configData.showLabel||configData.showLabel==='no'){sectionLabel.addClass('noHeader');}else{if(!configData.allowCollapse){image.addClass('hidden');}else{if(configData.collapseByDefault){formSection.addClass('collapse');image.attr('src',image.attr('src').replace(/minus.gif/i,'plus.gif'));}}}
image.click(function(e){var img=$(this);var formSection=$('.formSection[@keyTag="formSection'+configData.key+'"]',componentDom);if(formSection.attr("class").match(/collapse/i)){formSection.removeClass('collapse');img.attr('src',img.attr('src').replace(/plus.gif/i,'minus.gif'));}else{formSection.addClass('collapse');img.attr('src',img.attr('src').replace(/minus.gif/i,'plus.gif'));}});var sectionContent=$(cDomPtrs['sectionContent']);if(layoutTree&&layoutTree.children){var baseColumn=$(cDomPtrs['baseColumn']);var column;for(var c=0;c<layoutTree.children.length;c++){column=$(baseColumn).clone().get(0);sectionContent.append(column);for(var i=0;i<layoutTree.children[c].length;i++){window.Build.build(layoutTree.children[c][i],column,configData.namespace);}}
baseColumn.remove();}
var columns=$(sectionContent).children('.column');window.ComponentsUtils.section.formatColumns(columns);if(window.Build.design){window.FormDesigner.setSortableConfig(columns,'formInput');$(columns).Sortable(window.SortableConfig['formInput']);}};window.Destroy.section=function(componentDomArray,configData){if(!window.Build.design){for(var i=0;i<componentDomArray.length;i++){var sectionLabel=$('h2',componentDomArray[i]);sectionLabel.children('img').unbind();}}};window.Build.rebuild.single.section=function(componentDom,configData){var sectionLabel=$('h2[@keyTag="sectionLabel'+configData.key+'"]',componentDom);var image=$(sectionLabel).children('img');sectionLabel.empty().append(image.get(0)).append(configData.label);var formSection=$('.formSection[@keyTag="formSection'+configData.key+'"]',componentDom);sectionLabel.removeClass('noHeader');image.removeClass('hidden');formSection.removeClass('collapse');image.attr('src',image.attr('src').replace(/plus.gif/i,'minus.gif'));if(!configData.showLabel||configData.showLabel==='no'){sectionLabel.addClass('noHeader');}else{if(!configData.allowCollapse){image.addClass('hidden');}else{if(configData.collapseByDefault){formSection.addClass('collapse');image.attr('src',image.attr('src').replace(/minus.gif/i,'plus.gif'));}}}
var sectionContent=$('.formSectionBody[@keyTag="sectionContent'+configData.key+'"]',componentDom);var columns=$(sectionContent).children('.column');if(columns.length==configData.columns){return;}
if(columns.length<configData.columns){var baseColumn=$(columns.get(0)).clone(false);baseColumn.removeAttr('isSortable');baseColumn.removeAttr('isDroppable');baseColumn.removeAttr('idsa');sectionContent.append(baseColumn.get(0));var columnsToInsert=configData.columns-columns.length;for(var i=1;i<columnsToInsert;i++){sectionContent.append(baseColumn.clone().get(0));}
columns=$(sectionContent).children('.column');window.ComponentsUtils.section.formatColumns(columns);$(columns).Sortable(window.SortableConfig['formInput']);}else{var lastColumn=$(columns.get(configData.columns-1)),column;for(i=configData.columns;i<columns.length;i++){column=columns.get(i);lastColumn.append($(column).children('[@componentType]').get());$(column).DroppableDestroy();$(column).remove();}
columns=$(sectionContent).children('.column');window.ComponentsUtils.section.formatColumns(columns);$(columns).Sortable(window.SortableConfig['formInput']);}};window.Build.sortableConfig.section='formInput';window.Build.availableSpace.section=function(componentDom,configData){var pointer="".node('DIV');var sectionContent=$('.formSectionBody[@keyTag="sectionContent'+configData.key+'"]',componentDom);var firstColumn=$(sectionContent).children('.column').get(0);$(firstColumn).append(pointer);return pointer;};window.ComponentsUtils.section={};window.ComponentsUtils.section.formatColumns=function(columns){var numColumns=columns.length;if(numColumns==1){columns.css('marginRight','0%');columns.width('100%');}else{columns.css('marginRight','1%');columns.width(Math.floor(100/numColumns)-2+'%');}};window.Layout.section=function(componentDom){var children=[];var componentKey=componentDom.getAttribute('key');var columns=$('.formSectionBody[@keyTag="sectionContent'+componentKey+'"]',componentDom).children('.column');var childrenContainers;for(var c=0;c<columns.length;c++){children[c]=[];childrenContainers=$(columns.get(c)).children('[@componentType]');for(var i=0;i<childrenContainers.length;i++){children[c][i]=window.Layout.buildTree(childrenContainers.get(i));}}
return{'children':children};};window.Build.templateMap.radio={control:"forms/templates/controls/radio.html",config:"forms/templates/config/radio_config.jsp"};window.Build.typeMap[14]={typeName:"radio",importChoices:"literal"};window.Initialize.radio=function(configData){configData.importChoices="literal";configData.choices={entries:[{label:"Choice 1",id:""}],selected:[]};configData.defaultValue=null;configData.subType='text';configData.multiple=false;};window.Read.radio=function(value,configData){ComponentsUtils.updateDefaultValuesFromChoices(value,configData);};window.Build.single.radio=function(componentDom,configData,cDomPtrs){window.Build.element(componentDom,configData,cDomPtrs);var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var choices={entries:[],selected:[]};if(configData.importChoices=='data'&&window.FormDesigner[configData.namespace].isTaskForm){if(window.Build.design){var exprLabel=configData.displayLabels||'';var exprValue=configData.displayValues||'';choices.entries=[{label:exprLabel,id:exprValue}];}else{choices=window.Build.util.expressionOptions(configData);}}else{choices=configData.choices;}
var entry,field,label,input,inputId,labelValue,controls=[];var tmpDiv=document.createElement('div');var baseField=cDomPtrs['baseField'],baseLabel=cDomPtrs['displayLabel'];var baseLabelValue=cDomPtrs['baseLabelValue'];var fieldsContainer=cDomPtrs['fieldsContainer'];var numEntries=choices.entries.length;for(var i=0;i<numEntries;i++){entry=choices.entries[i];field=baseField.cloneNode(false);fieldsContainer.appendChild(field);label=baseLabel.cloneNode(false);field.appendChild(label);inputId='radio_'+compDomId+"_"+i;label.setAttribute('for',inputId);if(choices.selected.contains(i)){tmpDiv.innerHTML='<input type="radio" name="'+componentId+'" data="radio" class="radio" checked/>';}else{tmpDiv.innerHTML='<input type="radio" name="'+componentId+'" data="radio" class="radio"/>';}
input=tmpDiv.childNodes[0];label.appendChild(input);input.setAttribute('id',inputId);input.setAttribute('valueId',entry.id);input.setAttribute('valueType',entry.type);labelValue=''.node('span');label.appendChild(labelValue);if(typeof entry.label!=='undefined'){$(labelValue).html(entry.label);}
if(!window.Build.design&&configData.readOnly!='true'){field.removeAttribute('readOnly');}
if(typeof configData.disabled!='undefined'&&configData.disabled==='true'){field.setAttribute('disabled',true);}else{field.removeAttribute('disabled');}
controls[i]=input;}
cDomPtrs['controls']=controls;fieldsContainer.removeChild(baseField);};window.Events.radio=function(configData){return['change','click'];};window.Build.bindEvents.radio=function(componentDom,configData,cDomPtrs){window.Build.util.bindCustomEvents([componentDom],configData);var controls;if(cDomPtrs){controls=cDomPtrs['controls'];}else{var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,configData.id);controls=$('[@id^=radio_{0}_]'.supplant(compDomId),componentDom).get();}
var containers=[];for(var i=0;i<controls.length;i++){containers[i]=componentDom;}
window.Events.attachCommonEvent(controls,containers,["change"]);};window.Destroy.radio=function(componentDomArray,configData){if(!window.Build.design){$(componentDomArray[0]).unbind();var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,configData.id);var controls=$('[@id^=radio_{0}_]'.supplant(compDomId),componentDomArray[0]);controls.unbind();}};window.Value.radio=function(componentDomArray,configData){return ComponentsUtils.fetchValueFromChoices(componentDomArray[0]);};window.Clean.radio=function(configData){delete configData.choices.selected;};window.Build.templateMap.dropdown={control:"forms/templates/controls/dropdown.html",config:"forms/templates/config/dropdown_config.jsp"};window.Build.typeMap[16]={typeName:"dropdown",importChoices:"literal"};window.Initialize.dropdown=function(configData){configData.importChoices='literal';configData.choices={entries:[{label:'Choice 1',id:''}],selected:[0]};configData.defaultValue=null;configData.subType='text';configData.multiple=false;configData.readOnly=false;};window.Read.dropdown=function(value,configData){ComponentsUtils.updateDefaultValuesFromChoices(value,configData);};window.Build.single.dropdown=function(componentDom,configData,cDomPtrs){window.Build.element(componentDom,configData,cDomPtrs);var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);$(cDomPtrs['fields']).removeClass('cloneable');$(cDomPtrs['instructions']).removeClass('nonCloneable');var templateControl=cDomPtrs['dropdownControl'];var controlId='dropdownControl_'+compDomId;var controlAttr={'id':controlId,'data':cDomPtrs['dropdownControl'].getAttribute('data'),'class':cDomPtrs['dropdownControl'].getAttribute('class')};cDomPtrs['dropdownControlLabel'].setAttribute('for',controlId);var selectBox=createNamedElement('select',componentId,controlAttr);$(templateControl).before(selectBox).remove();cDomPtrs['dropdownControl']=selectBox;var choices=window.ComponentsUtils.dropdown.getChoices(configData);var multiple;if(typeof configData.multiple!='undefined'&&configData.multiple==='true'){selectBox.setAttribute('multiple',true);selectBox.setAttribute('size',4);multiple=true;}else{selectBox.removeAttribute('multiple');selectBox.setAttribute('size',0);multiple=false;}
window.ComponentsUtils.dropdown.populateDropdown(selectBox,choices,0,'single',multiple);if(!window.Build.design&&configData.readOnly!='true'){selectBox.removeAttribute('readOnly');}
if(typeof configData.disabled!='undefined'&&configData.disabled==='true'){selectBox.setAttribute('disabled',true);}else{selectBox.removeAttribute('disabled');}};window.Build.list.dropdown=function(componentDom,configData,cDomPtrs){window.Build.all(componentDom,configData);var header=window.Build.util.grid.buildHeader(componentDom,configData,cDomPtrs);var controls=[cDomPtrs['dropdownControl']];var jComponentDom=$(componentDom);if(window.Build.design){jComponentDom.empty();jComponentDom.append(header);}else{var componentId=configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var controlId='dropdownControl_'+compDomId;var choices=window.ComponentsUtils.dropdown.getChoices(configData);if(configData.importChoices==="data"){choices.selected=[];var values=[];if(typeof(configData.defaultChoice)==="string"){var defValues=configData.defaultChoice.trim()===""?[]:[configData.defaultChoice];}else if(typeof configData.defaultChoice==="object"){defValues=configData.defaultChoice.value;}else{defValues=[];}
choices.entries.forEach(function(entry){values.push((entry.id+"").trim());});for(var i=0;i<defValues.length;i++){choices.selected.push(values.indexOf((defValues[i]+"").trim()));}}
var templateControl=cDomPtrs['dropdownControl'];var control=createNamedElement('select',componentId,controlId);$(templateControl).before(control).remove();cDomPtrs['dropdownControl']=control;var clones=window.Build.util.grid.buildClones(componentDom,configData,choices.selected.length);controls=$(clones).find('select').get();var controlLabels=$(clones).find('[@name="dropdownControlLabel"]').get();var numControls=clones.length;var id;for(var i=0;i<numControls-1;i++){id=controlId+'_'+i;controls[i].setAttribute('id',id);controlLabels[i].setAttribute('for',id);if(configData.disabled){controls[i].setAttribute('disabled',true);}
window.ComponentsUtils.dropdown.populateDropdown(controls[i],choices,i,'list',false);}
controls[numControls-1].setAttribute('id',controlId);if(configData.disabled){controls[numControls-1].setAttribute('disabled',true);}
controlLabels[numControls-1].setAttribute('for',controlId);window.ComponentsUtils.dropdown.populateDropdown(controls[i],{entries:choices.entries,selected:[]},numControls-1,'list',false);jComponentDom.empty();jComponentDom.append(header).append(clones);cDomPtrs['containers']=clones;}
cDomPtrs['controls']=controls;};window.Build.copy.dropdown=function(cloneableDom,index){var cloneable=$(cloneableDom);var configData=window.FormData[cloneable.attr('namespace')][cloneable.attr('key')];cloneable.Cloneable();var clone=cloneable.get(0).clone();clone.setAttribute('index',index);var control=$('select',clone);var id=control.id()+'_'+index;control.id(id);$('[@name="dropdownControlLabel"]',clone).attr('for',id);window.Build.bindEvents[configData.typeName](clone,configData);return clone;};window.Events.dropdown=function(){return['click','change'];};window.Build.bindEvents.dropdown=function(componentDom,configData,cDomPtrs){if(configData.readOnly&&configData.readOnly=='true'){return;}
var containers,controls;if(configData.view==='single'){containers=[componentDom];controls=[cDomPtrs['dropdownControl']];}else if(configData.view==='list'){if(cDomPtrs){containers=cDomPtrs['containers'].subArray(0,cDomPtrs['containers'].length-1);controls=cDomPtrs['controls'].subArray(0,cDomPtrs['controls'].length-1);}else{containers=[componentDom];controls=$('select',componentDom).get();}}
window.Build.util.bindCustomEvents(containers,configData);window.Events.attachCommonEvent(controls,containers,['change']);};window.Destroy.dropdown=function(componentDomArray,configData){if(!window.Build.design){for(var i=0;i<componentDomArray.length;i++){$(componentDomArray[i]).unbind();$('select',componentDomArray[i]).unbind();}}};window.Value.dropdown=function(componentDomArray,configData){if(componentDomArray.length===0){return{id:'',type:''};}
var idArray=[];var types=[];var selectBox;var selectedOptions;selectBox=$('select',$(componentDomArray));selectedOptions=$('select>option',$(componentDomArray));for(var j=0;j<selectedOptions.length;j++){if(selectedOptions[j].selected){idArray.push(selectedOptions[j].value);if(selectedOptions[j].type!==null){types.push(selectedOptions[j].type);}else{types.push(selectBox.attr('valueType'));}}}
return{id:idArray.join(_AE.uiDelimiter),type:types.join(_AE.uiDelimiter)};};window.Clean.dropdown=function(configData){delete configData.choices.selected;};window.ComponentsUtils.dropdown={};window.ComponentsUtils.dropdown.getChoices=function(configData){var choices={entries:[],selected:[]};if(configData.importChoices=='data'&&window.FormDesigner[configData.namespace].isTaskForm){if(window.Build.design){var exprLabel=configData.displayLabels||'';var exprValue=configData.displayValues||'';choices.entries=[{label:exprLabel,id:exprValue}];}else{choices=window.Build.util.expressionOptions(configData);}}else{choices=configData.choices;}
return choices;};window.ComponentsUtils.dropdown.populateDropdown=function(selectBox,choices,index,view,multiple){var selectOptions=selectBox.options;var entries=choices.entries,selected=choices.selected;selectOptions.length=0;if(entries&&entries.length>0){selectBox.setAttribute('valueType',entries[0].type);var entry,option;for(var i=0;i<entries.length;i++){entry=entries[i];option=new Option(entry.label,entry.id);if(entry.type!==null){option.type=entry.type;}
selectOptions[selectOptions.length]=option;if(selected&&selected.length>0){if(view==='list'){selectOptions[i].selected=i===selected[index];}else if(view==='single'){selectOptions[i].selected=selected.contains(i);}}}}
if(multiple&&view==='single'){setTimeout(function(){for(var i=0;i<selectOptions.length;i++){selectOptions[i].selected=selected.contains(i);}},1);}};window.Build.templateMap.grid={control:"forms/templates/controls/grid.html",config:"forms/templates/config/grid_config.jsp"};window.Initialize.grid=function(configData){configData.height=-1;configData.allowAddDelete=true;configData.addItemLabel="Add an item";configData.deleteItemLabel="Delete row";configData.readOnly='false';};window.Inherit.grid=['labelPosition'];window.Build.single.grid=function(componentDom,configData,layoutTree,cDomPtrs){window.Build.layout(componentDom,configData);cDomPtrs['controlLabel']=null;window.Build.util.handleLegend(componentDom,configData,cDomPtrs);window.Build.util.handleInstructions(componentDom,configData,cDomPtrs);var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);$(cDomPtrs['errorMessage']).Cloneable();var gridBody=$(cDomPtrs['formGridBody']);var tmpContainer="".node('DIV',{id:'tmpGrid_'+compDomId});if(!layoutTree&&window.Build.design){layoutTree=window.Layout.grid(componentDom);}
if(layoutTree&&layoutTree.children){tmpContainer.renderCounter=0;var key,columnConfigData;for(var c=0;c<layoutTree.children.length;c++){key=layoutTree.children[c][0];columnConfigData=window.FormData[configData.namespace][key];if(!columnConfigData){continue;}
tmpContainer.renderCounter++;columnConfigData.view='list';columnConfigData.multiple='true';columnConfigData.parentId=componentId;if(!window.Build.design&&configData.readOnly=='true'){columnConfigData.readOnly='true';}
window.Build.build(key,tmpContainer,configData.namespace);if(!window.Build.design){var columnError=cDomPtrs['errorMessage'].clone();columnError.setAttribute("gridId",window.Build.util.getUniqueDOMId(configData.namespace,columnConfigData.id));gridBody.before(columnError);}}}
if(!window.Build.design){$(cDomPtrs['emptyGridText']).hide();if(configData.height<0){gridBody.css('overflowX','auto');}else{gridBody.height((configData.height*17)+'px');gridBody.css('overflow','auto');}
if(configData.readOnly==='true'){gridBody.addClass('readOnly');}
(function renderTimerRunTime(){if(tmpContainer.renderCounter===0){if(configData.disabled=='true'){configData.readOnly='true';}
var numDataRows=window.ComponentsUtils.formGrid.buildTable(tmpContainer,gridBody,configData);if(numDataRows!==-1&&configData.allowAddDelete&&configData.readOnly!=='true'){var index=numDataRows;var addButtonAnchor="".node('A',{'href':'#','className':'gridTool'});var addButton="".node('IMG',{src:window.FormConstants.imageAdd,alt:configData.addItemLabel});$(addButtonAnchor).attr('index',index).click(window.ComponentsUtils.formGrid.addRow);var addButtonText=document.createTextNode(configData.addItemLabel);addButtonAnchor.appendChild(addButton);addButtonAnchor.appendChild(addButtonText);gridBody.before(addButtonAnchor);}}else{setTimeout(renderTimerRunTime,100);}})();}else{(function renderTimerDesignTime(){if(tmpContainer.renderCounter===0){window.ComponentsUtils.formGrid.buildDesignView(tmpContainer,gridBody);}else{setTimeout(renderTimerDesignTime,100);}})();}
$(componentDom).addClass("grid");};window.Build.rebuild.single.grid=function(componentDom,configData){var legend=configData.label||"";var legendField=$('div.formGrid > div.legend',componentDom);legendField.html(legend)[legend?'show':'hide']();window.Build.util.handleInstructions(componentDom,configData);};window.ComponentsUtils.formGrid={};window.ComponentsUtils.formGrid.buildDesignView=function(tmpContainer,parentContainer){parentContainer.empty();if(tmpContainer.hasChildNodes()){var columns=$(tmpContainer).children('[@key]');for(var c=0;c<columns.length;c++){parentContainer.append(columns.get(c));}}};window.ComponentsUtils.formGrid.buildTable=function(tmpContainer,parentContainer,configData){var columns;if(!tmpContainer.hasChildNodes()||(columns=$(tmpContainer).children('[@key]')).length===0){var noResultsDIV=document.createElement('DIV');$(noResultsDIV).addClass('noResults').html('This Grid contains no columns.');parentContainer.append(noResultsDIV);return-1;}
parentContainer.empty();var componentsTable=[];var cloneableContainers=[];var allowAddDelete=configData.allowAddDelete;var readOnly=configData.readOnly==='true';var gridTable=document.createElement('TABLE');var tableHeader=document.createElement('THEAD');var headerRow=document.createElement('TR');var tableBody=document.createElement('TBODY');var cloneableRow=document.createElement('TR');var numColumns=columns.length;var deleteColumnWidth=(allowAddDelete&&!readOnly)?1:0;var columnWidth=Math.floor((100-deleteColumnWidth)/numColumns);var errorIcon='<img class="errorIcon" alt="" src="'+window.FormConstants.hiddenGridCellError+'"/>';var deleteCell,deleteButton;if(allowAddDelete&&!readOnly){deleteCell="".node('TD',{'className':'deleteColumn'});deleteCell.width=deleteColumnWidth+'%';deleteButton="".node('IMG',{className:'deleteRowIcon',src:window.FormConstants.imageDelete,alt:configData.deleteItemLabel});}
var column,headerCell,cells,r,cloneableCell,cloneableContainer;for(var c=0;c<numColumns;c++){column=columns.get(c);headerCell=document.createElement('TH');headerCell.appendChild($(column).children('.gridHeader').get(0));headerRow.appendChild(headerCell);cells=$(column).children('[@index]');for(r=0;r<cells.length;r++){if(componentsTable[r]===undefined){componentsTable[r]=[];}
componentsTable[r][c]=cells.get(r);}
cloneableCell=document.createElement('TD');cloneableCell.width=columnWidth+'%';cloneableContainer=$(column).children('.cloneable').get(0);$(cloneableContainer).append(errorIcon);cloneableContainers[c]=cloneableContainer;cloneableCell.appendChild(cloneableContainer);cloneableRow.appendChild(cloneableCell);}
if(allowAddDelete&&!readOnly){$(headerRow).append('<th class="deleteColumn" width="'+deleteColumnWidth+'%">&nbsp;</th>');}else if(readOnly){$(headerRow).addClass("readOnly");}
tableHeader.appendChild(headerRow);gridTable.appendChild(tableHeader);var row,col,newRow,newCell,cellValue,delCellClone,delButtonClone;for(row=0;row<componentsTable.length;row++){newRow=document.createElement('TR');for(col=0;col<numColumns;col++){newCell=document.createElement('TD');newCell.width=columnWidth+'%';cellValue=componentsTable[row][col];if(cellValue!==undefined){$(cellValue).append(errorIcon);newCell.appendChild(cellValue);}else{var cloneCell=cloneableContainers[col];var clonedCell=window.Build.copy[cloneCell.getAttribute('componentType')](cloneCell,row);var cloneConfigData=window.FormDesigner.getConfigData(clonedCell);window.FormDesigner.ComponentCache.add(cloneConfigData.namespace,cloneConfigData.id,clonedCell);$(clonedCell).show();newCell.appendChild(clonedCell);}
if(!readOnly){$(newCell).click(window.ComponentsUtils.formGrid.selectCell);}
newRow.appendChild(newCell);}
if(allowAddDelete&&!readOnly){delCellClone=deleteCell.cloneNode(true);$(delCellClone).click(window.ComponentsUtils.formGrid.selectCell);delButtonClone=deleteButton.cloneNode(true);(function(row){$(delButtonClone).click(function(){window.ComponentsUtils.formGrid.removeRow.call(row);});})(newRow);delCellClone.appendChild(delButtonClone);newRow.appendChild(delCellClone);}
if(readOnly){$(newRow).addClass("readOnly");}
tableBody.appendChild(newRow);}
gridTable.appendChild(tableBody);$(cloneableRow).addClass('cloneable');$(cloneableRow).Cloneable();if(allowAddDelete&&!readOnly){delCellClone=deleteCell.cloneNode(true);delButtonClone=deleteButton.cloneNode(true);delCellClone.appendChild(delButtonClone);cloneableRow.appendChild(delCellClone);}
tableBody.appendChild(cloneableRow);parentContainer.append(gridTable);return componentsTable.length;};window.ComponentsUtils.formGrid.selectCell=function(){var myTbody=$(this).parent().parent();$('tr.selected',myTbody).removeClass("selected").find('td.selected').removeClass("selected");$(this).addClass("selected").parent().addClass("selected");};window.ComponentsUtils.formGrid.removeRow=function(){var configData;var cache=window.FormDesigner.ComponentCache;var componentDomArray=$('[@index]',this).get();for(var i=0;i<componentDomArray.length;i++){configData=window.FormDesigner.getConfigData(componentDomArray[i]);cache.remove(configData.namespace,configData.id,componentDomArray[i].getAttribute('index'));if(isIE6){(window.Destroy[configData.typeName]&&window.Destroy[configData.typeName]([componentDomArray[i]],configData));}}
$(this).remove();};window.ComponentsUtils.formGrid.addRow=function(){var cloneableRow=$('tr.cloneable',$(this).parent()).get(0);var clonedRow=cloneableRow.clone();var index=$(this).attr("index");$(this).attr("index",parseInt(index,10)+1);$(cloneableRow).before(clonedRow);var cells=$(clonedRow).children().children('[@key]');cells.show();var cell,type,clonedCell,cloneConfigData;for(var i=0;i<cells.length;i++){cell=cells.get(i);type=cell.getAttribute("componentType");clonedCell=window.Build.copy[type](cell,index);cloneConfigData=window.FormDesigner.getConfigData(clonedCell);window.FormDesigner.ComponentCache.add(cloneConfigData.namespace,cloneConfigData.id,clonedCell);$(cell).before(clonedCell).remove();}
$('.deleteRowIcon',clonedRow).click(function(){window.ComponentsUtils.formGrid.removeRow.call(clonedRow);});$('td',clonedRow).click(window.ComponentsUtils.formGrid.selectCell);$('td:first-child',clonedRow).click();return false;};window.ComponentsUtils.formGrid.getGridColumns=function(componentDom,configData){var gridBody=$('.formGridBody',componentDom);var columns=$(gridBody).children('[@key]');return columns.get();};window.ComponentsUtils.formGrid.moveColumnLeft=function(componentDom,configData,columnKey){var gridBody=$('.formGridBody',componentDom);var columnsDom=window.ComponentsUtils.formGrid.getGridColumns(componentDom,configData);if(columnsDom.length<=1){return;}
if($(columnsDom[0]).attr('key')===columnKey){return;}
for(var i=(columnsDom.length-1);i>=0;i--){if($(columnsDom[i]).attr('key')===columnKey){gridBody.prepend(columnsDom[i-1]);gridBody.prepend(columnsDom[i]);i--;}else{gridBody.prepend(columnsDom[i]);}}};window.ComponentsUtils.formGrid.moveColumnRight=function(componentDom,configData,columnKey){var gridBody=$('.formGridBody',componentDom);var columnsDom=window.ComponentsUtils.formGrid.getGridColumns(componentDom,configData);if(columnsDom.length<=1){return;}
if($(columnsDom[columnsDom.length-1]).attr('key')===columnKey){return;}
for(var i=0;i<columnsDom.length;i++){if($(columnsDom[i]).attr('key')===columnKey){gridBody.append(columnsDom[i+1]);gridBody.append(columnsDom[i]);i++;}else{gridBody.append(columnsDom[i]);}}};window.ComponentsUtils.formGrid.getGridInputTypes=function(){var gridInputTypes={text:'Text',longText:'Paragraph',number:'Number',knowledge_center:'Knowledge Center',content:'Documents & Folders',community:'Collaboration community',people:'People',page:'Portal Page',discussion:'Discussion',email:'Email Address',email_recipient:'Email Recipient',image:'Image',link:'Link',dropdown:'Dropdown',truefalse:'True/False'};return gridInputTypes;};window.Build.sortableConfig.grid='gridInput';window.Build.availableSpace.grid=function(componentDom,configData){var pointer="".node('DIV');var gridContent=$('.formGridBody',componentDom);$(gridContent).append(pointer);return pointer;};window.Destroy.grid=function(componentDomArray,configData){};window.Layout.grid=function(componentDom){var children=[];var myKeys=$('[@key]',componentDom);var uniqueKeys={},curKey;for(var j=0;j<myKeys.length;j++){curKey=myKeys.get(j).getAttribute('key');if(uniqueKeys[curKey]===undefined){uniqueKeys[curKey]=curKey;children.push([curKey]);}}
return{'children':children};};window.Build.templateMap.tabs_container={control:"forms/templates/controls/tabs_container.html",config:"forms/templates/config/tabs_container_config.jsp"};window.Initialize.tabs_container=function(configData){configData.tabCount=0;configData.currentTabs=[];};window.Inherit.tabs_container=['labelPosition'];window.Build.single.tabs_container=function(componentDom,configData,layoutTree,cDomPtrs){window.Build.layout(componentDom,configData);if(window.Build.design){$(cDomPtrs['addTabLink']).click(function(e){e.stopPropagation();window.ComponentsUtils.tabs_container.addTab(componentDom,configData,true);});var image=$(cDomPtrs['addTabImg']);image.attr('src',window.FormConstants.imageAdd);}else{$(cDomPtrs['addTabLink']).remove();}
if(layoutTree&&layoutTree.children){var tabsContainer=$(cDomPtrs['tabsContainer']);var tabLabel,tabDomId,tabConfigData;configData.tabCount=0;configData.currentTabs=[];var tabsContainerDOM=tabsContainer.get(0);for(var i=0;i<layoutTree.children.length;i++){tabConfigData=window.FormData[configData.namespace][layoutTree.children[i].key];if(!tabConfigData){continue;}
tabLabel=tabConfigData.label;tabDomId=(window.Build.design?tabConfigData.key:tabConfigData.id);tabDomId=window.ComponentsUtils.tabs_container.WRAPPER+
window.Build.util.getUniqueDOMId(configData.namespace,tabDomId);window.ComponentsUtils.tabs_container.addTabLabel(componentDom,tabDomId,tabLabel,cDomPtrs);configData.currentTabs.push(layoutTree.children[i].key);configData.tabCount++;var tabWrapperContainer=''.node('div',{id:tabDomId,className:window.ComponentsUtils.tabs_container.WRAPPER});tabsContainerDOM.appendChild(tabWrapperContainer);window.Build.build(layoutTree.children[i],tabWrapperContainer,configData.namespace);}
tabsContainer.tabs(window.ComponentsUtils.tabs_container.getTabConfig());}else{window.ComponentsUtils.tabs_container.addTab(componentDom,configData,true);}};window.Build.rebuild.single.tabs_container=function(componentDom,configData){var tabsContainer=$(componentDom).children('div[@name="tabsContainer"]');var tabLabelContainer=$(tabsContainer).children('ul[@name="tabLabelsContainer"]');var tabDomId,i;var ids=[];var tabsContainerDOM=tabsContainer.get(0);for(i=(configData.currentTabs.length-1);i>=0;i--){ids[i]=window.ComponentsUtils.tabs_container.WRAPPER+
window.Build.util.getUniqueDOMId(configData.namespace,configData.currentTabs[i]);var li=$('>ul:eq(0)>li>a[@href="#'+ids[i]+'"]',tabsContainerDOM).parent();tabLabelContainer.prepend(li);}
for(i=0;i<configData.currentTabs.length;i++){var tab=$('#'+ids[i],tabsContainerDOM).get(0);tabsContainer.append(tab);}
var tabConfig=window.ComponentsUtils.tabs_container.getTabConfig();tabsContainer.resetTabs(tabConfig);tabsContainer.tabs(tabConfig);};window.Build.sortableConfig.tabs_container='';window.Build.availableSpace.tabs_container=function(componentDom,configData){var pointer=''.node('div');var tabsContainer=$(componentDom).children('div[@name="tabsContainer"]');tabsContainer.append(pointer);return pointer;};window.ComponentsUtils.tabs_container={};window.ComponentsUtils.tabs_container.WRAPPER="tabWrapperContainer";window.ComponentsUtils.tabs_container.addTab=function(componentDom,configData,triggerLast){var tabsContainer=$(componentDom).children('div[@name="tabsContainer"]');var tabWrapper=''.node('div',{className:window.ComponentsUtils.tabs_container.WRAPPER});var tabPointer=''.node('div');tabWrapper.appendChild(tabPointer);tabsContainer.append(tabWrapper);window.FormDesigner.dropComponent(tabPointer,'tab',true);var newTab=$(tabPointer).next();$(tabPointer).remove();var newTabDomId=newTab.id();var newTabKey=newTab.attr('key');tabWrapper.id=window.ComponentsUtils.tabs_container.WRAPPER+newTabDomId;var tabLabel='Tab '+(configData.tabCount+1);window.FormData[configData.namespace][newTabKey].label=tabLabel;window.ComponentsUtils.tabs_container.addTabLabel(componentDom,tabWrapper.id,tabLabel);configData.currentTabs.push(newTabKey);var tabConfig=window.ComponentsUtils.tabs_container.getTabConfig();tabsContainer.resetTabs(tabConfig);tabsContainer.tabs(tabConfig);if(triggerLast){tabsContainer.triggerLastTab();}
configData.tabCount++;};window.ComponentsUtils.tabs_container.addTabLabel=function(componentDom,tabDomId,label,cDomPtrs){var tabLabelContainer;if(!cDomPtrs||!(tabLabelContainer=cDomPtrs['tabLabelsContainer'])){var tabsContainer=$(componentDom).children('div[@name="tabsContainer"]');tabLabelContainer=$(tabsContainer).children('ul[@name="tabLabelsContainer"]');}else{tabLabelContainer=$(tabLabelContainer);}
var li=''.node('li');var link=''.node('a',{href:'#'+tabDomId});if(label===null||label===''){$(link).html('&nbsp;&nbsp;&nbsp;&nbsp;');}else{$(link).html(label);}
$(li).append(link);tabLabelContainer.append(li);};window.ComponentsUtils.tabs_container.selectTab=function(componentDom,configData,tabId){var tabsContainer=$(componentDom).children('div[@name="tabsContainer"]');tabId=window.ComponentsUtils.tabs_container.WRAPPER+
window.Build.util.getUniqueDOMId(configData.namespace,tabId);var tabLabelLink=$('>ul:eq(0)>li>a[@href="#'+tabId+'"]',tabsContainer.get(0));tabLabelLink.click();};window.ComponentsUtils.tabs_container.getTabConfig=function(){var tabConfig={fxAutoHeight:false,bookmarkable:false};if(window.Build.design){tabConfig['onAllClick']=function(tabLabelDom,tabBodyDom){$(tabBodyDom).children().click();};}
return tabConfig;};window.ComponentsUtils.tabs_container.editTabLabel=function(tabDom,tabData){var tabDomId=$(tabDom).parent().id();var tabsContainer=$(tabDom).parent().parent();if(tabsContainer.size()<0){return;}
var link=$('>ul:eq(0)>li>a',tabsContainer.get(0)).filter('[@href="#'+tabDomId+'"]');if(tabData.label===null||tabData.label===''){link.html('&nbsp;&nbsp;&nbsp;&nbsp;');}else{link.html(tabData.label);}};window.ComponentsUtils.tabs_container.removeTab=function(tabDom,tabData){var tabDomId=$(tabDom).parent().id();var tabsContainer=$(tabDom).parent().parent();if(tabsContainer.size()<0){return;}
var li=$('>ul:eq(0)>li>a[@href="#'+tabDomId+'"]',tabsContainer.get(0)).parent();li.remove();var tabsContData=window.FormData[tabData.namespace][$(tabsContainer.get(0)).parent().attr('key')];var index=tabsContData.currentTabs.indexOf(tabData.key);if(index>=0){tabsContData.currentTabs.splice(index,1);}
$(tabDom).parent().remove();var tabConfig=window.ComponentsUtils.tabs_container.getTabConfig();tabsContainer.resetTabs(tabConfig);tabsContainer.tabs(tabConfig);};window.Clean.tabs_container=function(configData){delete configData.tabCount;delete configData.currentTabs;};window.Layout.tabs_container=function(componentDom){var children=[];var tabsContainer=$(componentDom).children('div[@name="tabsContainer"]');var tabs=$(tabsContainer).children('.'+window.ComponentsUtils.tabs_container.WRAPPER).children('[@componentType]');for(var i=0;i<tabs.length;i++){children[i]=window.Layout.buildTree(tabs.get(i));}
return{'children':children};};window.Build.templateMap.tab={control:"forms/templates/controls/tab.html",config:"forms/templates/config/tab_config.jsp"};window.Build.containerTags.tab={tag:'div',classes:'fragment'};window.Initialize.tab=function(configData){configData.showLabel='yes';configData.columns=1;};window.Inherit.tab=['labelPosition'];window.Build.single.tab=function(componentDom,configData,layoutTree,cDomPtrs){window.Build.layout(componentDom,configData);var tabContent=$(cDomPtrs['tabContent']);if(layoutTree&&layoutTree.children){var baseColumn=$(cDomPtrs['baseColumn']);var column;for(var c=0;c<layoutTree.children.length;c++){column=$(baseColumn).clone().get(0);tabContent.append(column);for(var i=0;i<layoutTree.children[c].length;i++){window.Build.build(layoutTree.children[c][i],column,configData.namespace);}}
baseColumn.remove();}
var columns=$(tabContent).children('.column');window.ComponentsUtils.tab.formatColumns(columns);if(window.Build.design){window.FormDesigner.setSortableConfig(columns,'formInput');$(columns).Sortable(window.SortableConfig['formInput']);}};window.Build.rebuild.single.tab=function(componentDom,configData){window.ComponentsUtils.tabs_container.editTabLabel(componentDom,configData);var tabContent=$(componentDom).children('div[@name="tabSection"]').children('div[@name="tabContent"]');var columns=$(tabContent).children('.column');if(columns.length==configData.columns){return;}
if(columns.length<configData.columns){var baseColumn=$(columns.get(0)).clone(false);baseColumn.removeAttr('isSortable');baseColumn.removeAttr('isDroppable');baseColumn.removeAttr('idsa');tabContent.append(baseColumn.get(0));var columnsToInsert=configData.columns-columns.length;for(var i=1;i<columnsToInsert;i++){tabContent.append(baseColumn.clone().get(0));}
columns=$(tabContent).children('.column');window.ComponentsUtils.tab.formatColumns(columns);$(columns).Sortable(window.SortableConfig['formInput']);}else{var lastColumn=$(columns.get(configData.columns-1));var column;for(i=configData.columns;i<columns.length;i++){column=columns.get(i);lastColumn.append($(columns.get(i)).children('[@componentType]').get());$(column).DroppableDestroy();$(column).remove();}
columns=$(tabContent).children('.column');window.ComponentsUtils.tab.formatColumns(columns);$(columns).Sortable(window.SortableConfig['formInput']);}};window.Build.sortableConfig.tab='formInput';window.Build.availableSpace.tab=function(componentDom,configData){var pointer=''.node('div');var tabContent=$(componentDom).children('div[@name="tabSection"]').children('div[@name="tabContent"]');var firstColumn=$(tabContent).children('.column').get(0);$(firstColumn).append(pointer);return pointer;};window.ComponentsUtils.tab={};window.ComponentsUtils.tab.formatColumns=function(columns){var numColumns=columns.length;if(numColumns==1){columns.css('marginRight','0%');columns.width('100%');}else{columns.css('marginRight','1%');columns.width(Math.floor(100/numColumns)-2+'%');}};window.Destroy.tab=function(componentDomArray,configData){if(window.Build.design){window.ComponentsUtils.tabs_container.removeTab(componentDomArray[0],configData);}};window.Layout.tab=function(componentDom){var children=[];var columns=$(componentDom).children('div[@name="tabSection"]').children('div[@name="tabContent"]').children('.column');var childrenContainers;for(var c=0;c<columns.length;c++){children[c]=[];childrenContainers=$(columns.get(c)).children('[@componentType]');for(var i=0;i<childrenContainers.length;i++){children[c][i]=window.Layout.buildTree(childrenContainers.get(i));}}
return{'children':children};};window.Build.templateMap.datetime={control:"forms/templates/controls/date_time.jsp",config:"forms/templates/config/date_time_config.jsp"};window.Build.typeMap[7]={typeName:"datetime",subType:"date"};window.Build.typeMap[8]={typeName:"datetime",subType:"time"};window.Build.typeMap[9]={typeName:"datetime",subType:"datetime"};window.Initialize.datetime=function(configData){configData.subType="date";configData.isExpression="false";};window.Build.params.datetime=function(configData){var params={type:configData.subType,multiple:configData.multiple,isDesign:window.Build.design,readOnly:configData.readOnly,disabled:configData.disabled,isExpression:configData.isExpression};params.name=window.Build.design?configData.key:configData.id;params.id=window.Build.util.getUniqueDOMId(configData.namespace,params.name);if(configData.defaultValue&&(configData.defaultValue.dateStr||configData.defaultValue.timeStr)){params.defaultValue=configData.defaultValue;if(!configData.defaultStringValue){configData.defaultStringValue=ComponentsUtils.DateTimeUtils.getDefaultValueStringFromObjectMap(configData);}}
params.defaultValue=configData.defaultValue;params.defaultStringValue=configData.defaultStringValue||"";return params;};window.Read.datetime=function(value,configData){if(window.Build.design){if(configData.expressionValue!==null&&typeof(configData.expressionValueString)==="undefined"){configData.defaultValue=configData.expressionValue;configData.expressionValueString=configData.expressionValue;delete configData.expressionValue;}}
if(typeof(configData.isExpression)==="undefined"){configData.isExpression="false";}
if(value&&value.constructor==="string"&&value.indexOf('=')===0){configData.defaultValue=null;}
if(ComponentsUtils.DateTimeUtils.isNullDate(value)&&(configData.expressionValue&&configData.expressionValue.value)){configData.defaultValue=configData.expressionValue.value;}
configData.defaultStringValue=ComponentsUtils.DateTimeUtils.getDefaultValueStringFromObjectMap(configData);};window.Build.single.datetime=function(componentDom,configData,cDomPtrs){var isMultiple=eval(configData.multiple);var controlTemplate;var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);if(!window.Build.design&&configData.readOnly!='true'&&configData.disabled!='true'){controlTemplate=isMultiple?$(cDomPtrs['dateTimeMultipleValues_'+compDomId]):$(cDomPtrs['dateTimeSingleValues_'+compDomId]);cDomPtrs['legend']=$('.legend',componentDom).get(0);}else{controlTemplate=$(cDomPtrs['datetimeclones_'+compDomId]);}
if(cDomPtrs['legend']){cDomPtrs['legend'].removeAttribute('id');}
if(cDomPtrs['controlLabel']){cDomPtrs['controlLabel'].removeAttribute('id');}
if(cDomPtrs['instructions']){cDomPtrs['instructions'].removeAttribute('id');}
if(cDomPtrs['errorMessage']){cDomPtrs['errorMessage'].removeAttribute('id');}
window.Build.element(componentDom,configData,cDomPtrs);$(componentDom).addClass('datetime');if(typeof configData.disabled!='undefined'&&configData.disabled==='true'){$('input',controlTemplate).attr('disabled',true);}};window.Build.rebuild.single.datetime=function(componentDom,configData){window.Build.element(componentDom,configData);var isMultiple=eval(configData.multiple);var controlTemplate;var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);if(!window.Build.design&&configData.readOnly!='true'&&configData.disabled!='true'){controlTemplate=isMultiple?$('#dateTimeMultipleValues_'+compDomId,componentDom):$('#dateTimeSingleValues_'+compDomId,componentDom);}else{controlTemplate=$('#datetimeclones_'+compDomId,componentDom);}
$(componentDom).addClass('datetime');if(typeof configData.disabled!='undefined'&&configData.disabled==='true'){$('input',controlTemplate).attr('disabled',true);}else if(window.Build.design){$('input',controlTemplate).removeAttr('disabled');}};window.Build.bindEvents.datetime=function(componentDom,configData,cDomPtrs){if(configData.readOnly&&configData.readOnly=='true'){return;}
window.Build.util.bindCustomEvents([componentDom],configData);var hiddenFields=$('[@type="hidden"]',componentDom).get();hiddenFields.forEach(function(field){window.AreDTHiddenFieldsInitialized[field.id]=false;var aux=field.onchange;field.onchange=function(){(aux&&aux());if(window.AreDTHiddenFieldsInitialized[field.id]){configData.defaultStringValue=this.value;window.FormValidate(configData.namespace,configData.key);$(componentDom).trigger('change');}
window.AreDTHiddenFieldsInitialized[field.id]=true;};});};window.Destroy.datetime=function(componentDomArray,configData){if(!window.Build.design){for(var i=0;i<componentDomArray.length;i++){var containers=window.Build.util.getContainers(componentDomArray[i],configData);var dateInputs=$(".asiFormDate",componentDomArray[i]);var timeInputs=$('[@isTime="true"]',componentDomArray[i]);containers.unbind();dateInputs.unbind();timeInputs.unbind();}}};window.Value.datetime=function(componentDom,configData){if(configData.readOnly!='true'&&configData.disabled!='true'){var value=$(ComponentsUtils.DateTimeUtils.getDatetimeInputId(configData)).val()||"";return{id:value};}else{return{id:configData.defaultStringValue};}};window.Events.datetime=function(configData){return['change'];};window.StandardValidate.datetime=[];window.StandardValidate.datetime[0]={message:function(componentDom,configData){var format,type;switch(configData.subType){case'date':type='date';format=datePickerPattern;break;case'time':type='time';format=timePickerPattern;break;default:type='date/time';format=datePickerPattern+" "+timePickerPattern;}
return _DATE_TIME.NotDateTime.supplant(type,format);},method:function(componentDom,configData){return FormDesigner.ValidateUtilities.dateTime(window.Value.datetime(componentDom,configData).id,configData.subType);}};window.Build.templateMap.link={control:"forms/templates/controls/link.html",config:"forms/templates/config/link_config.jsp"};window.Initialize.link=function(configData){configData.wlocation='_blank';configData.align='center';configData.defaultUrlValue='http://';configData.defaultTitleValue='Link';configData.defaultAltValue='';configData.align='imageLeft';};window.Build.single.link=function(componentDom,configData,cDomPtrs){window.Build.element(componentDom,configData,cDomPtrs);$(cDomPtrs['fields']).removeClass('cloneable');$(cDomPtrs['linkText']).removeClass('nonCloneable');window.ComponentsUtils.link.setAlignment(componentDom,configData.align);var urls=[],alts=[],titles=[];window.ComponentsUtils.link.readDefaultDisplayValues(configData);window.ComponentsUtils.link.populateDefaultValues(configData,urls,alts,titles);var list=cDomPtrs['linkText'];var i,item,anchor;for(i=0;i<urls.length;i++){if(urls[i]!==''){if(!(urls[i].startsWith('http:')||urls[i].startsWith('https:')||urls[i].startsWith('ftp:'))){urls[i]=CONTEXT_PREFIX+urls[i];}
if(titles[i]===''){titles[i]=urls[i];}
anchor=''.node('a',{href:urls[i],title:alts[i].trim(),target:configData.wlocation,alt:alts[i].trim()});if(configData.disabled){anchor.disabled=true;}
item=''.node('li');item.appendChild(anchor);list.appendChild(item);anchor.innerHTML=titles[i].escapeHtml();}else{$(list).append('<li>'+titles[i].escapeHtml()+'</li>');}}};window.Build.list.link=function(componentDom,configData,cDomPtrs){window.Build.all(componentDom,configData);window.ComponentsUtils.link.readDefaultDisplayValues(configData);var header=window.Build.util.grid.buildHeader(componentDom,configData,cDomPtrs);var jComponentDom=$(componentDom);if(window.Build.design){jComponentDom.empty();jComponentDom.append(header);}else{var urls=[],alts=[],titles=[];window.ComponentsUtils.link.populateDefaultValues(configData,urls,alts,titles);var clones=window.Build.util.grid.buildClones(componentDom,configData,urls.length);for(var i=0;i<clones.length-1;i++){if(urls[i]!==''){if(!(urls[i].startsWith('http:')||urls[i].startsWith('https:')||urls[i].startsWith('ftp:'))){urls[i]=CONTEXT_PREFIX+urls[i];}
if(titles[i]===''){titles[i]=urls[i];}
var anchor=''.node('a',{href:urls[i],title:alts[i].trim(),target:configData.wlocation,alt:alts[i].trim()});if(configData.disabled){anchor.disabled=true;}
anchor.innerHTML=titles[i].escapeHtml();clones[i].appendChild(anchor);}else{$(clones[i]).append(titles[i].escapeHtml());}}
jComponentDom.empty();jComponentDom.append(header).append(clones);cDomPtrs['containers']=clones;}};window.Build.copy.link=function(cloneableDom,index){var cloneable=$(cloneableDom);cloneable.Cloneable();var clone=cloneable.get(0).clone();clone.setAttribute('index',index);return clone;};window.Events.link=function(configData){return["mouseover","mouseout","mousedown","mouseup"];};window.Build.bindEvents.link=function(componentDom,configData,cDomPtrs){if(configData.disabled){return;}
var containers;if(configData.view==='single'){containers=[componentDom];}else if(configData.view==='list'){if(cDomPtrs){containers=cDomPtrs['containers'].subArray(0,cDomPtrs['containers'].length-1);}else{containers=[componentDom];}}
window.Build.util.bindCustomEvents(containers,configData);};window.ComponentsUtils.link={};window.ComponentsUtils.link.getAnchorHref=function(value){var href=value;if(value.match(/^<.*>$/gim)){var elm;try{elm=$(value);}catch(Exception){return value;}
if(elm&&elm.size()>0){var elmHref=elm.attr('href');if(elmHref){href=elmHref;}}}
return href;};window.ComponentsUtils.link.setAlignment=function(componentDom,alignment){$(componentDom).removeClass('imageLeft').removeClass('imageRight').removeClass('imageCenter').addClass(alignment);};window.ComponentsUtils.link.readDefaultDisplayValues=function(configData){if(configData.defaultUrlValue){configData.defaultUrlValue=window.FormDesigner.AppianObjectCache.getDisplayValue(configData.defaultUrlValue);}
if(configData.defaultAltValue){configData.defaultAltValue=window.FormDesigner.AppianObjectCache.getDisplayValue(configData.defaultAltValue);}
if(configData.defaultTitleValue){configData.defaultTitleValue=window.FormDesigner.AppianObjectCache.getDisplayValue(configData.defaultTitleValue);}};window.ComponentsUtils.link.populateDefaultValues=function(configData,urls,alts,titles){if(configData.multiple==='true'){ArrayUtils.copyArray(configData.defaultUrlValue.split(_AE.uiDelimiter),urls,0);ArrayUtils.copyArray(configData.defaultAltValue.split(_AE.uiDelimiter),alts,0);ArrayUtils.copyArray(configData.defaultTitleValue.split(_AE.uiDelimiter),titles,0);}else{urls[0]=configData.defaultUrlValue;alts[0]=configData.defaultAltValue;titles[0]=configData.defaultTitleValue;}
var i;for(i=0;i<urls.length;i++){urls[i]=window.ComponentsUtils.link.getAnchorHref(urls[i]);if(urls[i].trim){urls[i]=urls[i].trim();}}
if(urls.length>titles.length){for(i=0;i<titles.length;i++){if(titles[i]===''||titles[i]===null){titles[i]=urls[i];}}
for(i=titles.length;i<urls.length;i++){titles[i]='';}
for(i=alts.length;i<urls.length;i++){alts[i]='';}}else{for(i=urls.length;i<titles.length;i++){urls[i]='';}
for(i=alts.length;i<titles.length;i++){alts[i]='';}}};window.Build.templateMap.longText={control:"forms/templates/controls/longText.html",config:"forms/templates/config/longText_config.jsp"};window.Initialize.longText=function(configData){configData.allowRichText='false';configData.height=5;configData.instructions='';configData.readOnly='false';};window.Build.params.longText=function(configData){var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);return{id:compDomId,name:componentId,readOnly:configData.readOnly,disabled:configData.disabled};};window.Read.longText=function(value,configData){window.Build.util.text.read(value,configData);};window.Build.copy.longText=function(cloneableDom,index){var cloneable=$(cloneableDom);var configData=window.FormData[cloneable.attr('namespace')][cloneable.attr('key')];cloneable.Cloneable();var clone=cloneable.get(0).clone();clone.setAttribute('index',index);var control=$('[@name="longTextControl"]',clone);var id=control.id()+'_'+index;control.id(id);window.Build.bindEvents[configData.typeName](clone,configData);return clone;};window.Build.list.longText=function(componentDom,configData,cDomPtrs){var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);window.Build.all(componentDom,configData);var header=window.Build.util.grid.buildHeader(componentDom,configData);window.ComponentsUtils.longText.conflongTextControl(cDomPtrs['longTextControl'],configData);var jComponentDom=$(componentDom);if(window.Build.design){jComponentDom.empty();jComponentDom.append(header);}else{var control=cDomPtrs['longTextControl'];var values=configData.defaultValue?configData.defaultValue.split(_AE.uiDelimiter):[];var clones=window.Build.util.grid.buildClones(componentDom,configData,values.length);controls=$(clones).find('[@name="longTextControl"]').get();var id,currentControl,controlAttr;var numControls=controls.length;for(var i=0;i<numControls-1;i++){id=compDomId+'_'+i;currentControl=$(controls[i]);controlAttr={'id':id,'value':(values[i]?values[i].trim():'')};if(eval(configData.disabled)){controlAttr['disabled']='true';}
currentControl.attr(controlAttr);}
currentControl=$(controls[numControls-1]);controlAttr={'id':compDomId,'value':''};if(eval(configData.disabled)){controlAttr['disabled']='true';}
currentControl.attr(controlAttr);jComponentDom.empty();jComponentDom.append(header).append(clones);cDomPtrs['containers']=clones;cDomPtrs['controls']=controls;}};window.ComponentsUtils.longText={};window.ComponentsUtils.longText.conflongTextControl=function(longTextControl,configData){if(!longTextControl){return;}
longTextControl=$(longTextControl);longTextControl.val(configData.longText);longTextControl.attr('rows',configData.height);if(!window.Build.design&&configData.readOnly!='true'){longTextControl.removeAttr('readOnly');}
if(eval(configData.disabled)){longTextControl.attr('disabled',true);}else{longTextControl.removeAttr('disabled');}};window.Events.longText=function(configData){return["change","blur","focus","keyup","keypress","keydown"];};window.Build.bindEvents.longText=function(componentDom,configData,cDomPtrs){var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var containers=cDomPtrs?cDomPtrs['containers'].subArray(0,cDomPtrs['containers'].length-1):containers=[componentDom];var controls=cDomPtrs?cDomPtrs['controls'].subArray(0,cDomPtrs['controls'].length-1):$('[@name="longTextControl"]',componentDom);window.Build.util.bindCustomEvents(containers,configData);$(containers).change(function(){window.FormValidate(configData.namespace,configData.key,this.getAttribute('index'));});window.Events.attachCommonEvent(controls,containers,["change","blur","focus","keyup","keypress","keydown"]);};window.Destroy.longText=function(componentDomArray,configData){if(!window.Build.design){var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,configData.id);for(var i=0;i<componentDomArray.length;i++){var containers=$(componentDomArray[i]);containers.unbind();var longText=$('[@name="longTextControl"]',containers);longText.unbind();}}};window.Value.longText=function(componentDom,configData,asArray){var componentId=window.Build.design?configData.key:configData.id;var compDomId=window.Build.util.getUniqueDOMId(configData.namespace,componentId);var values=[];var currentValue;for(var i=0;i<componentDom.length;i++){currentValue=$('[@id^={0}]'.supplant(compDomId),componentDom[i]).val();values.push(currentValue);}
if(asArray){return{id:values};}else{return{id:values.join(_AE.uiDelimiter)};}};window.StandardValidate.longText=[];window.StandardValidate.longText[0]={message:function(componentDom,configData){if(configData.view==='list'&&FormDesigner.ValidateUtilities.containsUiDelimiter(window.Value.longText(componentDom,configData,true).id)){return _TEXT.noUiDelimiter.supplant(_AE.uiDelimiter);}else{return _PARAGRAPH.ExceedsLimit.supplant(DATA_CAP_PARAGRAPHS);}},method:function(componentDom,configData){var arrayOfText=window.Value.longText(componentDom,configData,true).id;if(configData.view==='list'&&FormDesigner.ValidateUtilities.containsUiDelimiter(arrayOfText)){return false;}
for(var i=0;i<arrayOfText.length;i++){if(arrayOfText[i].length>DATA_CAP_PARAGRAPHS){return false;}}
return true;}};