var helpWindow;function showHelp(helpUrl){if(helpWindow&&!helpWindow.closed){helpWindow.close();}helpWindow=window.open(helpUrl,"SFDCWSH","width=800,height=600,dependent=yes,scrollbars=yes,resizable=yes",true);helpWindow.focus();return false;}function showAlert(msg){window.alert(msg);}function convertToCSStr(listCtrl,textCtrl){var l=listCtrl;
var csStr=textCtrl;csStr.value="";for(var i=0;i<l.options.length;i++){if(csStr.value==""){csStr.value=l.options[i].value;}else{csStr.value+=","+l.options[i].value;}}}function keywordSearchAppOnly(textId){var keywordVal=document.getElementById(textId).value;var errorArray=new Array();if(keywordVal!=null){keywordVal=keywordVal.trim();
}if(keywordVal!=null&&keywordVal.length==1){document.getElementById(textId).value="";i=errorArray.length;errorArray[i]=new Array();errorArray[i][0]=textId;errorArray[i][1]="Search keyword has to be more than one character.";}else{if(keywordVal!=null&&keywordVal.length==2&&keywordVal.charAt(1)=="*"){document.getElementById(textId).value="";
i=errorArray.length;errorArray[i]=new Array();errorArray[i][0]=textId;errorArray[i][1]="Search keyword has to be more than one character.";}}if(errorArray.length>0){showErrors(errorArray,"error-msg-main");}else{window.location="results?keywords="+escape(keywordVal);}}function onSearchKeyDownAppsOnly(textId,e){if(window.event){keynum=e.keyCode;
}else{if(e.which){keynum=e.which;}}if(keynum==13){if(document.getElementById("hitEnter")){document.getElementById("hitEnter").value="y";}keywordSearchAppOnly(textId);return false;}return true;}function keywordSearch(textId,searchType){var searchTypeStr;if(searchType&&document.getElementsByName(searchType)){var searchRadios=document.getElementsByName(searchType);
for(var i=0;i<searchRadios.length;i++){if(document.getElementsByName(searchType)[i].checked){searchTypeStr=document.getElementsByName(searchType)[i].value;}}}if(document.getElementById("appsfield")&&document.getElementById("appsfield").checked){searchTypeStr="Apps";}if(document.getElementById("servicesfield")&&document.getElementById("servicesfield").checked){searchTypeStr="Services";
}var keywordVal=document.getElementById(textId).value;var errorArray=new Array();if(keywordVal!=null){keywordVal=keywordVal.trim();}if(keywordVal!=null&&keywordVal.length==1){document.getElementById(textId).value="";i=errorArray.length;errorArray[i]=new Array();errorArray[i][0]=textId;errorArray[i][1]="Search keyword has to be more than one character.";
}else{if(keywordVal!=null&&keywordVal.length==2&&keywordVal.charAt(1)=="*"){document.getElementById(textId).value="";i=errorArray.length;errorArray[i]=new Array();errorArray[i][0]=textId;errorArray[i][1]="Search keyword has to be more than one character.";}}if(errorArray.length>0){showErrors(errorArray,"error-msg-main");
}else{window.location="results?type="+searchTypeStr+"&keywords="+escape(keywordVal);}}function onSearchKeyDown(textId,e,searchType){if(window.event){keynum=e.keyCode;}else{if(e.which){keynum=e.which;}}if(keynum==13){if(document.getElementById("hitEnter")){document.getElementById("hitEnter").value="y";
}keywordSearch(textId,searchType);return false;}return true;}Ext.ux.PersistentTip=Ext.extend(Ext.ToolTip,{initComponent:function(){Ext.apply(this,{showDelay:1000,hideDelay:500,shadow:false,floating:true,autoDestroy:true,autoHide:false});Ext.ux.PersistentTip.superclass.initComponent.call(this);},beforeRender:function(){Ext.ux.PersistentTip.superclass.beforeRender.call(this);
this.el.on("mouseover",this.onElOver,this);},afterRender:function(){Ext.ux.PersistentTip.superclass.afterRender.call(this);this.el.on("mouseout",this.onTargetOut,this);this.el.on("mouseover",this.onElOver,this);},checkWithin:function(e){if(this.el&&e.within(this.el.dom,true)){return true;}if(this.disabled||e.within(this.target.dom,true)){return true;
}return false;},onElOver:function(e){if(this.checkWithin(e)){this.clearTimer("hide");}},onTargetOver:function(e){if(this.disabled||e.within(this.target.dom,true)){return ;}this.clearTimer("hide");this.targetXY=e.getXY();this.delayShow(e);},delayShow:function(e){this.showTimer=this.doShow.defer(this.showDelay,this,[e]);
},doShow:function(e){var xy=e.getXY();var within=this.target.getRegion().contains({left:xy[0],right:xy[0],top:xy[1],bottom:xy[1]});if(within){this.show();}},onTargetOut:function(e){if(this.checkWithin(e)){this.clearTimer("hide");}else{if(this.hideTimer){this.hide();}else{this.delayHide();}}}});Ext.reg("persistenttip",Ext.ux.PersistentTip);
function addLinkHover(targetId,listingId,buttonId,isListingPage,retURLForAddToSavedBtn){var popupUrl="listingPopup?lstingId="+listingId+"&buttonID="+buttonId+"&isListingPage="+isListingPage+"&retURLForAddToSaved="+escape(retURLForAddToSavedBtn);var pt=new Ext.ux.PersistentTip({target:targetId,mouseOffset:[-117,-310],baseCls:"hiddentip",width:615,autoLoad:{url:popupUrl,scripts:true,callback:function(){}},style:"height:315px; background-color: transparent;",bodyStyle:"height:315px; background-color: transparent; "});
return pt;}Ext.Updater.defaults.showLoadIndicator=false;Ext.reg("persistenttip",Ext.ux.PersistentTip);function getFilename(){pageurl=window.location.href.split("/");pagename=pageurl.length-1;return pageurl[pagename];}function validate(fieldArray,errorArray){for(var i=0;i<fieldArray.length;i++){var fieldId=fieldArray[i][0];
if(document.getElementById(fieldId)){var whatToValidate=fieldArray[i][3];if(!whatToValidate||whatToValidate.length==0){continue;}var maxFieldLen=fieldArray[i][1];var fieldLabel=fieldArray[i][2];var fieldObj=document.getElementById(fieldId);if((fieldObj.value==null||fieldObj.value=="")&&whatToValidate.indexOf("REQ")!=-1){eLen=errorArray.length;
errorArray[eLen]=new Array();errorArray[eLen][0]=fieldId;if(fieldArray[i][4]){errorArray[eLen][1]=fieldArray[i][4];}else{errorArray[eLen][1]="Please provide a value for "+fieldLabel+".";}}else{var fieldLen=StringCounter(fieldObj.value);if(fieldLen>maxFieldLen&&whatToValidate.indexOf("MAXLEN")!=-1){eLen=errorArray.length;
errorArray[eLen]=new Array();errorArray[eLen][0]=fieldId;var p="is";if(fieldLabel!=null&&fieldLabel.length>0&&fieldLabel.charAt(fieldLabel.length-1)=="s"){p="are";}errorArray[eLen][1]="The "+fieldLabel+" that you entered "+p+" too long. You can enter a maximum of "+maxFieldLen+" characters.";}}}}}