Data={};Data.countries={"++":"DOMESTIC","AF":"AFGHANISTAN","AL":"ALBANIA","DZ":"ALGERIA","AS":"AMERICAN SAMOA","AD":"ANDORRA","AO":"ANGOLA","AI":"ANGUILLA","AQ":"ANTARCTICA","AG":"ANTIGUA AND BARBUDA","AR":"ARGENTINA","AM":"ARMENIA","AW":"ARUBA","AU":"AUSTRALIA","AT":"AUSTRIA","AZ":"AZERBAIJAN","BS":"BAHAMAS","BH":"BAHRAIN","BD":"BANGLADESH","BB":"BARBADOS","BY":"BELARUS","BE":"BELGIUM","BZ":"BELIZE","BJ":"BENIN","BM":"BERMUDA","BT":"BHUTAN","BO":"BOLIVIA","BA":"BOSNIA AND HERZEGOWINA","BW":"BOTSWANA","BV":"BOUVET ISLAND","BR":"BRAZIL","IO":"BRITISH INDIAN OCEAN TERRITORY","BN":"BRUNEI DARUSSALAM","BG":"BULGARIA","BF":"BURKINA FASO","BI":"BURUNDI","KH":"CAMBODIA","CM":"CAMEROON","CA":"CANADA","CV":"CAPE VERDE","KY":"CAYMAN ISLANDS","CF":"CENTRAL AFRICAN REPUBLIC","TD":"CHAD","CL":"CHILE","CN":"CHINA","CX":"CHRISTMAS ISLAND","CC":"COCOS (KEELING) ISLANDS","CO":"COLOMBIA","KM":"COMOROS","CG":"CONGO","CD":"CONGO, THE DEMOCRATIC REPUBLIC OF THE","CK":"COOK ISLANDS","CR":"COSTA RICA","CI":"COTE D'IVOIRE","HR":"CROATIA (local name: Hrvatska)","CU":"CUBA","CY":"CYPRUS","CZ":"CZECH REPUBLIC","DK":"DENMARK","DJ":"DJIBOUTI","DM":"DOMINICA","DO":"DOMINICAN REPUBLIC","TP":"EAST TIMOR","EC":"ECUADOR","EG":"EGYPT","SV":"EL SALVADOR","GQ":"EQUATORIAL GUINEA","ER":"ERITREA","EE":"ESTONIA","ET":"ETHIOPIA","FK":"FALKLAND ISLANDS (MALVINAS)","FO":"FAROE ISLANDS","FJ":"FIJI","FI":"FINLAND","FR":"FRANCE","GF":"FRENCH GUIANA","PF":"FRENCH POLYNESIA","TF":"FRENCH SOUTHERN TERRITORIES","GA":"GABON","GM":"GAMBIA","GE":"GEORGIA","DE":"GERMANY","GH":"GHANA","GI":"GIBRALTAR","GR":"GREECE","GL":"GREENLAND","GD":"GRENADA","GP":"GUADELOUPE","GU":"GUAM","GT":"GUATEMALA","GN":"GUINEA","GW":"GUINEA-BISSAU","GY":"GUYANA","HT":"HAITI","HM":"HEARD AND MC DONALD ISLANDS","VA":"HOLY SEE (VATICAN CITY STATE)","HN":"HONDURAS","HK":"HONG KONG","HU":"HUNGARY","IS":"ICELAND","IN":"INDIA","ID":"INDONESIA","IR":"IRAN (ISLAMIC REPUBLIC OF)","IQ":"IRAQ","IE":"IRELAND","IL":"ISRAEL","IT":"ITALY","JM":"JAMAICA","JP":"JAPAN","JO":"JORDAN","KZ":"KAZAKHSTAN","KE":"KENYA","KI":"KIRIBATI","KP":"KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF","KR":"KOREA, REPUBLIC OF","KW":"KUWAIT","KG":"KYRGYZSTAN","LA":"LAO PEOPLE'S DEMOCRATIC REPUBLIC","LV":"LATVIA","LB":"LEBANON","LS":"LESOTHO","LR":"LIBERIA","LY":"LIBYAN ARAB JAMAHIRIYA","LI":"LIECHTENSTEIN","LT":"LITHUANIA","LU":"LUXEMBOURG","MO":"MACAU","MK":"MACEDONIA, THE FORMER YUGOSLAV REPUBLIC","MG":"MADAGASCAR","MW":"MALAWI","MY":"MALAYSIA","MV":"MALDIVES","ML":"MALI","MT":"MALTA","MH":"MARSHALL ISLANDS","MQ":"MARTINIQUE","MR":"MAURITANIA","MU":"MAURITIUS","YT":"MAYOTTE","MX":"MEXICO","FM":"MICRONESIA, FEDERATED STATES OF","MD":"MOLDOVA, REPUBLIC OF","MC":"MONACO","MN":"MONGOLIA","MS":"MONTSERRAT","MA":"MOROCCO","MZ":"MOZAMBIQUE","MM":"MYANMAR","NA":"NAMIBIA","NR":"NAURU","NP":"NEPAL","NL":"NETHERLANDS","AN":"NETHERLANDS ANTILLES","NC":"NEW CALEDONIA","NZ":"NEW ZEALAND","NI":"NICARAGUA","NE":"NIGER","NG":"NIGERIA","NU":"NIUE","NF":"NORFOLK ISLAND","MP":"NORTHERN MARIANA ISLANDS","NO":"NORWAY","OM":"OMAN","PK":"PAKISTAN","PW":"PALAU","PA":"PANAMA","PG":"PAPUA NEW GUINEA","PY":"PARAGUAY","PE":"PERU","PH":"PHILIPPINES","PN":"PITCAIRN","PL":"POLAND","PT":"PORTUGAL","PR":"PUERTO RICO","QA":"QATAR","RE":"REUNION","RO":"ROMANIA","RU":"RUSSIAN FEDERATION","RW":"RWANDA","KN":"SAINT KITTS AND NEVIS","LC":"SAINT LUCIA","VC":"SAINT VINCENT AND THE GRENADINES","WS":"SAMOA","SM":"SAN MARINO","ST":"SAO TOME AND PRINCIPE","SA":"SAUDI ARABIA","SN":"SENEGAL","SC":"SEYCHELLES","SL":"SIERRA LEONE","SG":"SINGAPORE","SK":"SLOVAKIA (Slovak Republic)","SI":"SLOVENIA","SB":"SOLOMON ISLANDS","SO":"SOMALIA","ZA":"SOUTH AFRICA","GS":"SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS","ES":"SPAIN","LK":"SRI LANKA","SH":"ST. HELENA","PM":"ST. PIERRE AND MIQUELON","SD":"SUDAN","SR":"SURINAME","SJ":"SVALBARD AND JAN MAYEN ISLANDS","SZ":"SWAZILAND","SE":"SWEDEN","CH":"SWITZERLAND","SY":"SYRIAN ARAB REPUBLIC","TW":"TAIWAN, PROVINCE OF CHINA","TJ":"TAJIKISTAN","TZ":"TANZANIA, UNITED REPUBLIC OF","TH":"THAILAND","TG":"TOGO","TK":"TOKELAU","TO":"TONGA","TT":"TRINIDAD AND TOBAGO","TN":"TUNISIA","TR":"TURKEY","TM":"TURKMENISTAN","TC":"TURKS AND CAICOS ISLANDS","TV":"TUVALU","UG":"UGANDA","UA":"UKRAINE","AE":"UNITED ARAB EMIRATES","GB":"UNITED KINGDOM","US":"UNITED STATES","UM":"UNITED STATES MINOR OUTLYING ISLANDS","UY":"URUGUAY","UZ":"UZBEKISTAN","VU":"VANUATU","VE":"VENEZUELA","VN":"VIET NAM","VG":"VIRGIN ISLANDS (BRITISH)","VI":"VIRGIN ISLANDS (U.S.)","WF":"WALLIS AND FUTUNA ISLANDS","EH":"WESTERN SAHARA","YE":"YEMEN","YU":"YUGOSLAVIA","ZM":"ZAMBIA","ZW":"ZIMBABWE"};Data.domainExtensions={"ac":"United Kingdom academic institutions","ae":"United Arab Emirates","af":"Afghanistan","ag":"Antigua and Barbuda","ai":"Anguilla","al":"Albania","am":"Armenia","ao":"Angola","aq":"Antarctica","ar":"Argentina","as":"American Samoa","at":"Austria","au":"Australia","ba":"Bosnia and Herzegovina","bd":"Bangladesh","be":"Belgium","bg":"Bulgaria","biz":"US business","bj":"Benin","bm":"Bermuda","bn":"Brunei Darussalam","bo":"Bolivia","br":"Brazil","bs":"Bahamas","bt":"Bhutan","bv":"Bouvet Island","ca":"Canada","cf":"Central African Republic","cg":"Congo","ch":"Switzerland","cl":"Chile","cn":"China","co":"Colombia","com":"US Commercial","cr":"Costa Rica","cs":"Czechoslovakia (former)","cu":"Cuba","cy":"Cyprus","cz":"Czech Republic","de":"Germany","dj":"Djibouti","dk":"Denmark","dm":"Dominica","do":"Dominican Republic","dz":"Algeria","ec":"Ecuador","edu":"US Educational","ee":"Estonia","eg":"Egypt","es":"Spain","et":"Ethiopia","fi":"Finland","fj":"Fiji","fr":"France","fx":"France (Metropolitan)","gb":"Great Britain (UK)","gl":"Greenland","gm":"Gambia","gn":"Guinea","gov":"US Government","gr":"Greece","gt":"Guatemala","gu":"Guam","hk":"Hong Kong","ht":"Haiti","hu":"Hungary","id":"Indonesia","ie":"Ireland","il":"Israel","in":"India","io":"British Indian Ocean Territory","iq":"Iraq","ir":"Iran","is":"Iceland","it":"Italy","jm":"Jamaica","jo":"Jordan","jp":"Japan","ke":"Kenya","kh":"Cambodia","kp":"Korea (North)","kr":"Korea (South)","ku":"Kuwait","la":"Laos","lb":"Lebanon","lk":"Sri Lanka","ma":"Morocco","mc":"Monaco","mil":"US Military","mn":"Mongolia","mo":"Macau","mx":"Mexico","my":"Malaysia","ne":"Niger","net":"US network","ng":"Nigeria","nl":"Netherlands","no":"Norway","np":"Nepal","nz":"New Zealand (Aotearoa)","org":"US Non-Profit Organization","pa":"Panama","pe":"Peru","pf":"French Polynesia","ph":"Philippines","pk":"Pakistan","pl":"Poland","pr":"Puerto Rico","pro":"US professional","pt":"Portugal","ro":"Romania","ru":"Russian Federation","rw":"Rwanda","sa":"Saudi Arabia","sd":"Sudan","se":"Sweden","sg":"Singapore","so":"Somalia","su":"USSR (former)","sv":"El Salvador","sy":"Syria","sz":"Swaziland","th":"Thailand","tr":"Turkey","tv":"US Business or Tuvalu","tw":"Taiwan","tz":"Tanzania","ua":"Ukraine","ug":"Uganda","uk":"United Kingdom","us":"United States","ve":"Venezuela","vg":"Virgin Islands (British)","vi":"Virgin Islands (US)","vn":"Viet Nam","ws":"Samoa","yu":"Yugoslavia","za":"South Africa","zm":"Zambia","zw":"Zimbabwe"};Data.domainExtensionStrList=function(){var iExtention=0;var strDomainExtentionList="";for(key in Data.domainExtensions){if(iExtention!=0){strDomainExtentionList+="|";}strDomainExtentionList+="."+key;iExtention++;}return strDomainExtentionList;};
//------------------------
Form={};Form.Validators={email:{regex:/^[A-Z0-9._%-]+@[A-Z0-9\.\-]+\.(?:[A-Z]{2}|com|org|net|biz|info|name|aero|biz|info|jobs|museum|name)$/i,name:"email address"},url:{regex:new RegExp("^(ht|f)tp(s?):\/\/[a-z0-9\-_\.]+("+Data.domainExtensionStrList()+")?(.*)*$","i"),name:"web address"},date:{regex:/^(0[1-9]|1[012])[-\/.](0[1-9]|[12][0-9]|3[01])[-\/.](19|20)\d\d$/,name:"date"},mysqldate:{regex:/^(19|20)\d\d[-\/.](0[1-9]|1[012])[-\/.](0[1-9]|[12][0-9]|3[01])$/,name:"date"},money:{regex:/^[0-9]+(\.\d\d)?$/,name:"dollar value"},phone:{regex:/^[0-9\-\.\,\(\)x\+\s]+?$/,name:"phone number"},integer:{regex:/^[0-9,]+$/,name:"number"},decimal:{regex:/^(\+|\-)?\d*(\.\d+)?$/,name:"number"},nonNegativeDecimal:{regex:/^(\+)?\d*(\.\d+)?$/,name:"positive decimal"},positiveDecimal:{"function":function(value){if(!value.match(/^(\+)?\d*(\.\d+)?$/)){return false;}if(parseFloat(value,10)<=0){return false;}return true;},name:"positive decimal"},password:{regex:/^([a-zA-Z0-9\!\@\#\%\*\?\$]{6,30})$/,name:"password"},nonNegativeInteger:{regex:/^[\d,]+$/,name:"non-negative integer"},positiveInteger:{"function":function(value){if(!value.match(/^[\d,]+$/)){return false;}if(parseInt(value,10)<=0){return false;}return true;},name:"positive integer"},cpc_bid:{regex:/^(?:\d+(?:\.\d{1,3})?|\d*\.\d{1,3})$/,name:"CPC bid, with at most 3 decimals"},cpi_bid:{regex:/^(?:\d+(?:\.\d{1,3})?|\d*\.\d{1,3})$/,name:"CPI bid, with at most 3 decimals"},cpm_bid:{regex:/^[1-9]?[0-9]{1,3}$/,name:"CPM bid"},cpm_fractional_bid:{regex:/^[0-9]{1,4}(?:\.\d?)?$|^\.\d$/,name:"CPM bid, with at most 1 decimal"},cpi_fractional_bid:{regex:/^(?:\d+(?:\.\d{1,4})?|\d*\.\d{1,4})$/,name:"CPI bid, with at most 4 decimals"},month:{regex:/^(0?[1-9])|(1[0-2])$/,name:"Month"},year:{regex:/^(?:20|19)?[0-9][0-9]$/,name:"Year"},credit_card_number:{"function":function(value){if(!value.match(/^[0-9 ]+/)){return false;}var result=true;var sum=0;var mul=1;var strLen=value.length;for(i=0;i<strLen;i++){var digit=value.substring(strLen-i-1,strLen-i);var tproduct=parseInt(digit,10)*mul;if(tproduct>=10)sum+=(tproduct%10)+1;else sum+=tproduct;if(mul==1)mul++;else mul--;}if((sum%10)!=0)result=false;return result;},name:"Credit Card Number (no dashes or spaces)"}};Form.toggleCheckbox=function(element,bChecked){element=$(element);if(!element){return null;}if(typeof(bChecked)!="undefined"){element.checked=bChecked;}else{element.checked=!element.checked;}return element.checked;};Form.getCheckedValue=function(HTMLCollection){if(!HTMLCollection){return null;}var length=HTMLCollection.length;if(typeof(length)=="undefined"){if(HTMLCollection.checked){return HTMLCollection.value;}else{return null;}}var retval=[];for(var i=0;i<length;i++){if(HTMLCollection[i].checked){if(HTMLCollection[i].getAttribute("type")=="radio"){return HTMLCollection[i].value;}else{retval[retval.length]=HTMLCollection[i].value;}}}return(retval.length>0)?retval:null;};Form.setCheckedValue=function(HTMLCollection,aValues,triggerOnChange){if(!HTMLCollection){return;}if(typeof(triggerOnChange)=='undefined'||triggerOnChange===null){triggerOnChange=true;}if($type(aValues)!='array'){aValues=[aValues.toString()];}else{aValues.map(function(mValue){return mValue.toString();});}var length=HTMLCollection.length;if(typeof(length)=="undefined"){HTMLCollection.checked=aValues.contains(HTMLCollection.value);if(triggerOnChange){DOM.triggerEvent(HTMLCollection,"change");DOM.triggerEvent(HTMLCollection,"click");$(HTMLCollection).fireEvent("change").fireEvent("click");}return;}for(var i=0;i<length;i++){var orginalChecked=HTMLCollection[i].checked;HTMLCollection[i].checked=false;if(aValues.contains(HTMLCollection[i].value)){HTMLCollection[i].checked=true;}if(triggerOnChange&&orginalChecked!=HTMLCollection[i].checked){DOM.triggerEvent(HTMLCollection[i],"change");DOM.triggerEvent(HTMLCollection[i],"click");$(HTMLCollection[i]).fireEvent("change").fireEvent("click");}}};Form.getElementValue=function(element){element=$N(element);var value=null,multiple,getall,arr,j,val;if(!element){return null;}if(element.nodeName=="INPUT"&&element.type.toUpperCase()=="CHECKBOX"){if(element.checked){value=element.value;}}else if(element.nodeName=="INPUT"||element.nodeName=="TEXTAREA"){value=element.value;}else if(element.nodeName=="SELECT"){multiple=element.getProperty("multiple");getall=element.getAttribute("getall");if(multiple!==null&&multiple!==""&&multiple!==false){arr=[];for(j=0;j<element.length;++j){if(element.options[j].selected||getall){val=element.options[j].value;if(val===""){val=element.options[j].text;}if(val=="unset"||val=="Please Select"){continue;}arr[arr.length]=val;}}if(arr.length>0){value=arr;}}else{if(element.selectedIndex!==null&&element.selectedIndex!=-1){value=element.options[element.selectedIndex].value;if(value===""){value=element.options[element.selectedIndex].text;}if(value=="unset"||value=="Please Select"){value=null;}}}}else if(typeof(element)=='object'){value=[];for(j=0;j<element.length;j++){if(['select','textarea','input'].contains(element[j].nodeName)||!['radio','checkbox'].contains(element[j].getProperty('type'))||element[j].checked){value.push(Form.getElementValue(element[j]));}}}return value;};Form.setElementValue=function(elementID,value,triggerOnChange,event){var elem=$N(elementID),i,j,val;if(elem===null){return false;}if(typeof(triggerOnChange)=='undefined'||triggerOnChange===null){triggerOnChange=true;}if(elem.nodeName=="INPUT"&&elem.type.toUpperCase()=="CHECKBOX"){Form.setCheckedValue(elem,value,triggerOnChange);}else if(elem.nodeName=="INPUT"&&elem.type.toUpperCase()=="RADIO"){Form.setCheckedValue(elem,value,triggerOnChange);}else if(elem.nodeName=="INPUT"||elem.nodeName=="TEXTAREA"){if(value!==null){elem.value=value;}else{elem.value="";}if(triggerOnChange){DOM.triggerEvent(elem,"change");elem.fireEvent("change",event);}return true;}else if(elem.nodeName=="SELECT"){if(value===null){elem.selectedIndex=0;}else{if(typeof(value)!='array'&&typeof(value)!='object'){value=[value];}for(j in value){val=value[j];for(i=0;i<elem.options.length;++i){if(elem.options[i].value.toString().toLowerCase()==val.toString().toLowerCase()){elem.options[i].selected=true;break;}}}}if(triggerOnChange){DOM.triggerEvent(elem,"change");elem.fireEvent("change",event);}}else if(typeof(elem)=='object'){Form.setCheckedValue(elem,value,triggerOnChange);}return true;};Form.getCaretPosition=function(oField){var iCaretPos=0,oSel;if(document.selection){oField.focus();oSel=document.selection.createRange();oSel.moveStart('character',-oField.value.length);iCaretPos=oSel.text.length;}else if(oField.selectionStart||oField.selectionStart=='0'){iCaretPos=oField.selectionStart;}return(iCaretPos);};Form.setCaretPosition=function(oField,iCaretPos){var oSel,range;if(oField.tagName=="INPUT"){if(document.selection){oField.focus();oSel=document.selection.createRange();oSel.moveStart('character',-oField.value.length);oSel.moveStart('character',iCaretPos);oSel.moveEnd('character',0);oSel.select();}else if(oField.selectionStart||oField.selectionStart=='0'){oField.selectionStart=iCaretPos;oField.selectionEnd=iCaretPos;oField.focus();}}else if(oField.tagName=="TEXTAREA"){if(oField.setSelectionRange){oField.focus();oField.setSelectionRange(iCaretPos,iCaretPos);}else if(oField.createTextRange){range=oField.createTextRange();range.collapse(true);range.moveEnd('character',iCaretPos);range.moveStart('character',iCaretPos);range.select();}}};Form.checkAll=function(masterCheckbox){masterCheckbox=$(masterCheckbox);var aCheckboxes=masterCheckbox.getParent().getParent().getParent().getParent().getElements("input[type='checkbox']");aCheckboxes.each(function(checkbox){if(checkbox.getProperty("form_key")=="true"&&checkbox.disabled!==true){checkbox.checked=masterCheckbox.checked;checkbox.fireEvent("click");if(DOM){DOM.triggerEvent(checkbox,"change");DOM.triggerEvent(checkbox,"click");}}});};Form.liveLookupList={};Form.liveLookup=function(aParameters){var _self=this;this.url=aParameters.url?aParameters.url:"liveLookup.html";this.inputElement=$(aParameters.id);this.name=aParameters.name;this.id=aParameters.id;Form.liveLookupList[this.id]=this;this.resultsElement=null;this.resultsIframeShim=null;this.valueElement=(aParameters.valueElementId!==null&&typeof(aParameters.valueElementId)!='undefined'&&$(aParameters.valueElementId))?$(aParameters.valueElementId):null;this.includeElements={};this.timerHandle=null;this.hideTimerHandle=null;this.request=null;this.lastRequest="";this.bReady=false;if(aParameters.include_elements!==null){if(typeof(aParameters.include_elements)!='object'){this.includeElements[aParameters.include_elements]='optional';}else{this.includeElements=aParameters.include_elements;}}if(Browser.Engine.trident4){this.resultsIframeShim=DOM.createElement("iframe",{src:"javascript: false;"},{zIndex:2,position:"absolute",display:"none",filter:"progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)"});}this.resultsElement=DOM.createElement("DIV",{className:"liveLookupResults"},{position:"absolute",zIndex:3,display:"none"});this.inputElement.parentNode.insertBefore(this.resultsElement,this.inputElement.nextSibling);this.init=function(){this.inputElement.setProperties({"autocomplete":"off","maxlength":50});DOM.attachEventHandler(this.inputElement,"onkeydown",this,"handleKeyStroke");DOM.attachEventHandler(this.inputElement,"onblur",this,"delayedHide");DOM.attachEventHandler(this.inputElement,"onfocus",this.inputElement,"select");if(Browser.Engine.trident){DOM.attachEventHandler(this.resultsElement,"onscroll",this,"stopHide");}this.bReady=true;};this.stop=function(){DOM.detachEventHandler(this.inputElement,"onkeydown",this,"handleKeyStroke");DOM.detachEventHandler(this.inputElement,"onblur",this,"delayedHide");DOM.detachEventHandler(this.inputElement,"onfocus",this.inputElement,"select");if(Browser.Engine.trident){DOM.detachEventHandler(this.resultsElement,"onscroll",this,"stopHide");}this.bReady=false;};this.setParam=function(param){for(var x in param){aParameters[x]=param[x];}};this.stopHide=function(){clearTimeout(this.hideTimerHandle);};this.delayedHide=function(event,element){this.hideTimerHandle=window.setTimeout("Form.liveLookupList['"+this.id+"'].hide()",400);};this.hide=function(){var highlight=$("liveLookupHighlight");if(this.resultsIframeShim!==null){this.resultsIframeShim.style.display="none";}this.resultsElement.style.display="none";if(highlight){highlight.removeAttribute("id");}};this.setValue=function(value){highlight=$("liveLookupHighlight");if(value===null||typeof(value)=='undefined'){value=highlight.get("text");}_self.lastRequest=highlight.get("text");Form.setElementValue(_self.inputElement,highlight.get("text"));if(_self.valueElement){Form.setElementValue(_self.valueElement,value);}_self.hide();};this.handleKeyStroke=function(event,element){var highlight=$("liveLookupHighlight");if(!highlight){_self.start();return true;}if(event.keyCode==40){if(!highlight){highlight=_self.resultsElement.firstChild.firstChild.nextSibling;}else if(highlight.nextSibling.nextSibling){highlight.removeAttribute("id");highlight=highlight.nextSibling.nextSibling;}else{highlight.removeAttribute("id");highlight=highlight.parentNode.firstChild.nextSibling;}if(highlight){highlight.setAttribute("id","liveLookupHighlight");}if(!document.all){event.preventDefault();}}else if(event.keyCode==38){if(!highlight){highlight=_self.resultsElement.firstChild.lastChild.previousSibling;}else if(highlight.previousSibling.previousSibling){highlight.removeAttribute("id");highlight=highlight.previousSibling.previousSibling;}else{highlight.removeAttribute("id");highlight=highlight.parentNode.lastChild.previousSibling;}if(highlight){highlight.setAttribute("id","liveLookupHighlight");}if(!document.all){event.preventDefault();}}else if(event.keyCode==27){_self.hide();return false;}else if(event.keyCode==13){DOM.triggerEvent(highlight,"mousedown");return false;}else{_self.start();}return true;};this.start=function(){if(this.timerHandle){window.clearTimeout(this.timerHandle);}this.timerHandle=window.setTimeout("Form.liveLookupList['"+this.id+"'].doSearch()",500);};this.doSearch=function(){if(this.inputElement.value===""){this.lastRequest="";this.hide();return false;}var searchValue=Form.getElementValue(this.inputElement),otherParams,x;if(this.lastRequest!=searchValue){this.lastRequest=searchValue;if(this.request&&this.request.readyState<4){this.request.abort();}otherParams=aParameters.otherParams;x=new AjaxRequest({url:this.url+"?livelookup_id="+this.id+"&q="+encodeURIComponent(searchValue)+"&rnd="+Math.random(),responseHandler:this.responseHandler,postVars:otherParams,type:"request",returnType:"html"});this.lastRequest=Form.getElementValue(this.inputElement);}};this.responseHandler=function(html){var ScrollTop=document.body.scrollTop;_self.resultsElement.style.display='block';_self.resultsElement.innerHTML=html;if(_self.resultsIframeShim!==null){_self.resultsIframeShim.style.display="";_self.resultsIframeShim.style.width=_self.resultsElement.offsetWidth;_self.resultsIframeShim.style.height=_self.resultsElement.offsetHeight;_self.resultsIframeShim.style.top=_self.resultsElement.offsetTop;_self.resultsIframeShim.style.left=_self.resultsElement.offsetLeft;}if(document.body){document.body.scrollTop=ScrollTop;}};this.init();};Element.implement({"validate":function(value,validator){var bValidationResult=false;if(validator=="url"&&value.substr(0,7)!="http://"&&value.substr(0,8)!="https://"){value="http://"+value;this.value=value;}regex=Form.Validators[validator];if(!regex){regex=eval(validator);strError=this.getAttribute("error_message")||"Please enter a valid value.";bValidationResult=value.match(regex);}else{strError="Please enter a valid "+regex.name+".";if(typeof(Form.Validators[validator].regex)!='undefined'&&Form.Validators[validator].regex!=null){regex=Form.Validators[validator].regex;bValidationResult=value.match(regex);}else if(typeof(Form.Validators[validator]["function"])!='undefined'&&Form.Validators[validator]["function"]!=null){bValidationResult=Form.Validators[validator]["function"](value);}}return bValidationResult;}});ExtendedForm=function(aParams){var self=this;var bUsingForm;if(typeof(aParams.form)!='undefined'&&aParams.form!=null){var form=$N(aParams.form);if(!form||form.nodeName.toUpperCase()!="FORM"){throw"ExtendedForm constructor failed!  Form not found ("+aParams.form+").";}bUsingForm=true;}else{var container=$N(aParams.container);if(!container){throw"ExtendedForm constructor failed!  Container not found ("+aParams.container+").";}bUsingForm=false;var form={};}var stopEnter=aParams.stopEnter||false;var metaValidators=aParams.metaValidators||{};var dMaxRecommendedBid=0.025;var element_names;var touch=function(e){var orig_type;if(!this.touched){this.removeClass("help_text");if(orig_type=this.getProperty("orig_type")){this.setProperties({"orig_type":this.getProperty("type"),"type":orig_type});}this.touched=true;if(this.getAttribute("help_text")==this.value){this.value='';}}};var untouch=function(e,bForceRefresh){var orig_type;bForceRefresh==bForceRefresh||false;if((this.value===''||bForceRefresh)&&this.getAttribute("help_text")){this.value=this.getAttribute("help_text");if(orig_type=this.getProperty("orig_type")){this.setProperties({"orig_type":this.getProperty("type"),"type":orig_type});}this.addClass("help_text");this.touched=false;}};var showCharsUsed=function(e){var max=(this.maxLength!=null?this.maxLength.toInt():false)||parseInt(this.getAttribute('maxlength'));if(this.value.length>max){this.value=this.value.substring(0,max);}var aParams={type:'formHelp',element:this};aParams.text="Used "+this.value.length+"/"+max+" Characters.";if(this.value.length>max-20){Communication.showToolTip(aParams);}};var checkUrl=function(e){var elem=$(this);if(elem.value==elem.getProperty("old_value")){return true;}else if(elem.value==elem.getProperty("help_text")){return true;}var args=elem.name+"="+encodeURIComponent(elem.value);var required=["true",true].contains(elem.getProperty("required"));var validation=elem.getProperty("validation");var validators=validation.split(/, /),validator,handler,x;for(var i=0;i<validators.length;++i){validator=validators[i];if(validator.substr(0,4)=="url:"){break;}}var url=validator.substr(4);if(required!==true||elem.value!==""){var handler=function(retval){var aParams,aNodes,strErrors="",x;if(Object.count(retval.errors)>0){elem.setProperty("valid","false");aParams={type:'formHelp',element:elem,displayTime:5000};aNodes=retval.errors;for(x in aNodes){if(aNodes[x]===Object.prototype[x]){continue;}strErrors+=aNodes[x];}elem.setProperty("error_message",strErrors);aParams.text=strErrors;Communication.showToolTip(aParams);}else{elem.setProperty("valid","true");}};var x=new AjaxRequest({url:url,responseHandler:handler,postVars:args,type:"request",returnType:"retval"});}return true;};var validateElement=function(e,element){var bOnBlur=false;if(element===null||typeof(element)=='undefined'){element=this;bOnBlur=true;}var strError=null;var value=element.value;if(element.getProperty("ignore")=="true"){return true;}var help=element.getProperty("help_text")||"";var minvalue=element.getProperty("minvalue");var maxvalue=element.getProperty("maxvalue");var validation=element.getProperty("validation")||"";var bCheckUrl=false;var dTmpMaxBid,validator,validators,regex,i,bValidationResult;if(value==help){value="";element.value=value;}else{value=value.trim();if(!bOnBlur){element.value=value;}}if(validation!==""&&value!==""){validators=validation.split(/, /);for(i=0;i<validators.length;++i){bValidationResult=true;validator=validators[i];if(validator.substr(0,4)!="url:"){bValidationResult=element.validate(value,validator);if(!bValidationResult){showErrorMessage(element,strError);return false;}else if(element.getProperty("confirmedBid")!='true'&&["cpm_bid","cpm_fractional_bid","cpi_bid"].contains(validator)){dTmpMaxBid=dMaxRecommendedBid;if(["cpm_bid","cpm_fractional_bid"].contains(validator)){dTmpMaxBid*=1000;}if(value>=dTmpMaxBid){if(!confirm("Are you sure you want to bid over $"+dTmpMaxBid+"?")){showErrorMessage(element,"Please correct your bid amount.");return false;}else{element.setProperty("confirmedBid","true");}}}}else{bCheckUrl=true;}}}if(bCheckUrl&&bOnBlur){return element.checkUrl();}else if(element.getProperty("valid")=="false"){showErrorMessage(element);return false;}if(element.getProperty("required")!="true"){return true;}if(minvalue!==null&&minvalue!==""){minvalue=minvalue.toFloat();if(minvalue>value.toFloat()){showErrorMessage(element);return false;}}var min=parseInt(element.getProperty("minlength"));min=(isNaN(min)?1:min);value=value.replace(/^\s*|\s*$/g,"");if(value.length<min){showErrorMessage(element);return false;}if(maxvalue!==null&&maxvalue!==""){maxvalue=maxvalue.toFloat();if(maxvalue<value.toFloat()){showErrorMessage(element);return false;}}return true;};var generateErrorMessage=function(element){var bMultiple=(element.getProperty?false:true);var strError=(bMultiple?element[0].getProperty("error_message"):element.getProperty("error_message"))||"";if(strError===""){if(bMultiple){strError="Please select one of the options.";}else{strError="This element is required.  Please enter a valid value.";}}return strError;};var showErrorMessage=function(elem,error){try{elem.focus();}catch(e){}if(error===null||typeof(error)=='undefined'||error===''){error=generateErrorMessage(elem);}var aErrorParams={type:'formHelp',text:error,displayTime:5000};if(elem.getProperty("type")=="hidden"||elem.getStyle("visibility")=="hidden"||elem.getStyle('display')=="none"||elem.offsetWidth==0){aErrorParams.divPosition="toolTip";}else{if(elem.type=="checkbox"||elem.type=="radio"){aErrorParams.divPosition="top left";}aErrorParams.element=elem;aErrorParams.scrollIntoView=true;}Communication.showToolTip(aErrorParams);var bg=elem.style.backgroundColor;elem.style.backgroundColor="#FEFEC9";window.top.setTimeout(function(){if(typeof(elem)!='undefined'){elem.style.backgroundColor=bg;}},4000);};var fixMSChars=function(e){this.value=this.value.convertMSWordCharacters();};var cancelFormSubmit=function(e){if(Browser.Engine.trident){e=window.event;}return e.keyCode!=13;};self.addValidationEvents=function(element){element=$(element);if(element.name=="recaptcha_response_field"){element.setProperties({"required":"true","error_message":"Please enter the words pictured above."});}if((element.tagName=="INPUT"||element.tagName=="TEXTAREA")&&(element.type!="hidden"&&element.type!="checkbox"&&element.type!="radio")){maxLength="";if(typeof(element.maxLength)!='undefined'){maxLength=element.maxLength;}else if(typeof(element.getProperty('maxlength'))!='undefined'){maxLength=element.getProperty('maxlength');}else if(element.getAttribute("maxlength")!==null){maxLength=element.getAttribute("maxlength");}if(maxLength!==""&&maxLength!==null&&maxLength!=2147483647){maxLength=maxLength.toInt();}else{maxLength="invalid";}if(!isNaN(maxLength)&&maxLength>0){element.addEvents({keyup:showCharsUsed,change:showCharsUsed});}element.addEvent('change',fixMSChars);helpText=element.getProperty("help_text");if(helpText!==null&&helpText!==""){if(element.value==""){element.value=helpText;element.addClass("help_text");if(false&&element.getProperty("type")=="password"){element.setProperties({"orig_type":"password","type":"text"});}}element.addEvents({focus:touch,blur:untouch});}validation=element.getProperty("validation");if(validation!==null&&validation!==""){validators=validation.split(/, /);for(i=0;i<validators.length;++i){validator=validators[i];if(validator.substr(0,4)=="url:"){element.checkUrl=checkUrl;element.setAttribute("validate_onblur","true");break;}}if(element.getProperty("validate_onblur")=="true"){element.addEvent('blur',validateElement);}}}if(stopEnter){if(element.tagName!="TEXTAREA"&&element.type!="hidden"&&element.type!='radio'&&element.type!='checkbox'){element.addEvent("keydown",cancelFormSubmit);}}var bIgnoreUnlessChanged=element.getProperty("ignore_unless_changed");if(bIgnoreUnlessChanged!=null&&bIgnoreUnlessChanged=="true"){element.originalValue=Form.getElementValue(element);element.addEvents({"change":self.ignoreUnlessChanged,"keydown":self.ignoreUnlessChanged});element.setProperty("ignore","true");}element.modified_by_form=true;};self.ignoreUnlessChanged=function(e){var value=Form.getElementValue(this);if(value!=this.originalValue){this.setProperty("ignore","false");}else{this.setProperty("ignore","true");}};self.reloadElements=function(){if(!bUsingForm){allElements=container.getElements("input, select, textarea");form.elements=[];allElements.each(function(element){form[element.getProperty("name")]=element;form.elements.push({name:element.getProperty("name")});});delete(allElements);}var element;var maxLength="",helpText,validation,validator,validators,i;element_names={};for(i=0;i<form.elements.length;++i){if(form.elements[i].name){element_names[form.elements[i].name]=i;}}for(var strElementName in element_names){element=form[strElementName];if(!form[strElementName]&&form.elements[element_names[strElementName]]){element=form.elements[element_names[strElementName]];}if(typeof(element)=="undefined"||element.modified_by_form===true){continue;}if($type(element)=="collection"){for(i=0;i<element.length;i++){this.addValidationEvents(element[i]);}}else{this.addValidationEvents(element);}}};self.validateElement=function(element_name,isSubmitting){var len=form.elements.length,i,checked;var query_string='';var element=form[element_name];if(!form[element_name]&&form.elements[element_names[element_name]]){element=form.elements[element_names[element_name]];}if(typeof(element)=="undefined"){return'';}var element_value=false;var bIsDisabled=false;var bIgnore=false;if($type(element)=='collection'){bIsDisabled=["true","disabled",true].contains($(element[0]).getProperty("disabled"));bIgnore=["true","ignore",true].contains($(element[0]).getProperty("ignore"))||$(element[0]).getParent("*[ignore='true']")!==null;}else{element=$(element);bIsDisabled=["true","disabled",true].contains(element.getProperty("disabled"));bIgnore=["true","ignore",true].contains(element.getProperty("ignore"))||element.getParent("*[ignore='true']")!==null;}if(!bIsDisabled&&!bIgnore){if(["collection","array"].contains($type(element))&&element[0].tagName=='INPUT'&&(element[0].type.toLowerCase()=="radio"||element[0].type.toLowerCase()=="checkbox")){checked=false;for(var i=0;i<element.length;++i){if(element[i].checked){checked=true;break;}}var required=["true",true].contains(element[0].getProperty("required"));if(!checked&&required){showErrorMessage(element[0]);return false;}}else if(element.tagName=="INPUT"&&element.type.toUpperCase()=="CHECKBOX"){var checked=false;if(element.checked){checked=true;}if(["true",true].contains(element.getProperty("required"))&&!checked){showErrorMessage(element);return false;}}else if(element.tagName=="INPUT"||element.tagName=="TEXTAREA"){var valid=false;if(element.getProperty("ignore")=="true"){valid=true;}else{valid=validateElement(null,element);}if(!valid){return false;}}else if(element.tagName=="SELECT"){var value="";if(element.selectedIndex>=0){value=Form.getElementValue(element);}if(element.getProperty("getall")=="yes"&&element.options.length>0){if(value==''){value=true;}if(isSubmitting){for(var i=0;i<element.options.length;i++){element.options[i].selected=true;}}}if(!(!["true",true].contains(element.getProperty("required"))||element.getProperty("ignore")=="true"||element.getParent("*[ignore='true']")!=null)){if(element.options.length==0){showErrorMessage(element);return false;}if(element.getProperty("getall")!="yes"){if(value===null||value===""||value=="unset"){showErrorMessage(element);return false;}}}}element_value=Form.getElementValue(element);if(typeof(element_value)=='string'){query_string+=element_name+"="+encodeURIComponent(element_value)+"&";}else if(element_value&&typeof(element_value.length)=='number'){for(i=0;i<element_value.length;i++){query_string+=element_name+"="+encodeURIComponent(element_value[i])+"&";}}else if(element_value){for(var i in element_value){query_string+=element_name+"="+encodeURIComponent(element_value[i])+"&";}}}return query_string;};self.validate=function(e,bReturnObject){var bOnSubmit=false,i,validators;if(e!==null&&typeof(e)!="undefined"){bOnSubmit=true;e=new Event(e);}bReturnObject=(bReturnObject&&bReturnObject==true)?true:false;var query_string=(bReturnObject==true)?{}:"";self.reloadElements();for(var strElementName in element_names){var retval=self.validateElement(strElementName,bOnSubmit);if(retval!==false){if(bReturnObject){if(retval.indexOf("=")!=-1){var pieces=retval.split('=');var key=pieces[0];var val=unescape(pieces[1].replace(/&/g,''));query_string[key]=val;}}else{query_string+=retval;}}else{if(bOnSubmit){e.stop();}return false;}}if(false){for(var vtype in metaValidators){validators=metavalidators[vtype];switch(vtype){case'required':for(i=0;i<validators.length;++i){if(self.validateElement(validators[i].name)===false){alert(validators[i].error_message);return false;}}break;case'choose':for(i=0;i<validators.length;++i){var okay=false;for(var j=0;j<validators[i]['names'].length;++i){if(self.validateElement(validators[i].name)!==false){okay=true;break;}}if(okay==false){alert(validators[i].error_message);return false;}}break;case'regex':var okay,error_message;for(i=0;i<validators.length;++i){okay=false;for(strElementName in element_names){if(strElementName.match(validators[i].regex)&&self.validateElement(strElementName)!==false){okay=true;break;}}if(okay===false){alert(validators[i].error_message);return false;}}break;}}}return query_string;};self.reloadElements();if(bUsingForm){form.validate=self.validate.bind(self);form.addEvent('submit',form.validate);}};var ExtendedForms={};window.addEvent("domready",function(){$$("form.extended_form").each(function(oForm){ExtendedForms[oForm.getProperty("name")]=new ExtendedForm({form:oForm,stopEnter:(["true","1",1,true].contains($pick(oForm.getProperty("stopEnter"),false))?true:false)});});});Form.mirrorChange=function(elem){var si;if(elem){elem=$(elem);}else{elem=this;}if(elem.tagName.toUpperCase()=="SELECT"&&elem.getProperty("type")=="date_range"){var other=$(elem.getProperty("mirror"));if(other){si=(other.selectedIndex=elem.selectedIndex);if(elem.options[si].getAttribute("type")=="custom"){other.options[si].value=elem.options[si].value;other.options[si].text=elem.options[si].text;}}}else{var mMirrorValue=Form.getElementValue(elem);elem.getProperty("mirror").split(";").each(function(oMirrorElem){Form.setElementValue(oMirrorElem,mMirrorValue,false);});}};
//------------------------
Form.LiveLookups={};Form.LiveLookup=new Class({Implements:[Options,Events],options:{service:"/Lookup/reference",parameters:{criteria:{page_size:100,page_offset:0}},name:null,includeElements:{},timerHandle:null,inputElement:null,valueElement:null,oNoResultsFound:new Element("span",{"class":"required"}).appendText("No Results Found"),textName:"username",valueName:"_id",queryName:null,entityType:null,oTextNames:{"listing":{"listing_name":{display:"Listing Name",path:"listing_name",service:"/Listing/select"}},"advertiser":{"username":{display:"Advertiser Username",path:"username"},"advertiser_name":{display:"Advertiser Name",path:"advertiser_name"},"advertiser_nickname":{display:"Advertiser Nickname",path:"advertiser_nickname"}},"affiliate":{"affiliate_name":{display:"Affiliate Name",path:"name"},"username":{display:"Affiliate Username",path:"username"}},"tag":{"tag_name":{display:"Tag Name",path:"tag_name"}}},styles:{position:"absolute",zIndex:10001,display:"none"}},oTextName:null,inputElement:null,valueElement:null,oRequest:null,resultsElement:null,resultsIframeShim:null,oLastRetval:{},initialize:function(oOptions){this.handleKeyStroke=this.handleKeyStroke.bindWithEvent(this);this.delayedHide=this.delayedHide.bindWithEvent(this);this.stopHide=this.stopHide.bindWithEvent(this);this.selectInputElement=this.selectInputElement.bindWithEvent(this);this.updateTextName=this.updateTextName.bindWithEvent(this);this.inputElement=$(oOptions.inputElement);this.setOptions(oOptions);this.options.name=this.inputElement.getProperty("name")||this.options.id;this.options.entityType=this.inputElement.getAttribute("entityType")||"user";if(this.oTextName=$(this.inputElement.getAttribute("textNameElement"))){var oSelect=new Element("select",{events:{"change":this.updateTextName}});for(strQueryName in this.options.oTextNames[this.options.entityType]){oSelect.options[oSelect.length]=new Option(this.options.oTextNames[this.options.entityType][strQueryName].display,strQueryName);}oSelect.replaces(this.oTextName);this.oTextName=oSelect;this.options.queryName=Form.getElementValue(this.oTextName)||this.options.name;this.options.textName=this.options.oTextNames[this.options.entityType][this.options.queryName].path||this.options.textName;}else{this.options.textName=this.inputElement.getAttribute("textName")||this.options.textName;this.options.queryName=this.inputElement.getAttribute("queryName")||this.options.name;}var mOtherParams=this.inputElement.getAttribute("parameters")||false;if(mOtherParams!==false){this.options.parameters=$merge(this.options.parameters,JSON.decode(mOtherParams));}this.valueElement=$(this.options.valueElement)||$(this.inputElement.getAttribute("valueElement"));this.options.service=this.inputElement.getAttribute("service")||this.options.service;this.options.valueName=(this.valueElement!=false&&this.valueElement!=null?(this.valueElement.getProperty("valueName")?this.valueElement.getProperty("valueName"):this.valueElement.getProperty("name")):false)||this.options.entityType+"_id";this.start();this._createIFrame();},updateTextName:function(){this.options.queryName=Form.getElementValue(this.oTextName);this.options.textName=this.options.oTextNames[this.options.entityType][this.options.queryName].path;this.inputElement.setProperty("name",this.options.queryName);},selectInputElement:function(event){this.inputElement.select();},_initResultsElement:function(){if(this.resultsElement==null){this.resultsElement=new Element("DIV",{className:"liveLookupResults",styles:this.options.styles});}this.resultsElement.injectAfter(this.inputElement);},_initInputElement:function(){this.inputElement.setProperties({"autocomplete":"off","maxlength":255});this.inputElement.addEvents({"keydown":this.handleKeyStroke,"blur":this.delayedHide,"focus":this.selectInputElement});var oForm=$(this.inputElement.form);if(oForm){oForm.addEvent("submit",this.hide.bind(this));}if(Browser.Engine.trident){this.resultsElement.addEvent("scroll",this.stopHide);}},_createIFrame:function(){if(Browser.Engine.trident4){this.resultsIframeShim=new Element("iframe",{src:"javascript: false;","styles":{zIndex:this.resultsElement.getStyle("z-index")-1,position:"absolute",display:"none",filter:"progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)"}});}},start:function(event){this._initResultsElement();this._initInputElement();this.bReady=true;},stop:function(event){this.bReady=false;this.inputElement.removeEvent("keydown",this.handleKeyStroke).removeEvent("blur",this.delayedHide).removeEvent("focus",this.selectInputElement);if(Browser.Engine.trident){this.resultsElement.removeEvent("scroll",this.stopHide);}this.resultsElement.dispose();},setParam:function(param){for(var x in param){this.options.parameters[x]=param[x];}},stopHide:function(){clearTimeout(this.hideTimerHandle);},delayedHide:function(event,element){this.hideTimerHandle=this.hide.delay(400,this);},hide:function(){var highlight=$("liveLookupHighlight");if(this.resultsIframeShim!==null){this.resultsIframeShim.style.display="none";}this.resultsElement.style.display="none";if(highlight){highlight.removeAttribute("id");}if($defined(this.timerHandle)){window.clearTimeout(this.timerHandle);}if($defined(this.oRequest)){this.oRequest.cancel();}},handleKeyStroke:function(event,element){var bRetval=true;if(this.bReady){var highlight=$("liveLookupHighlight");if(!highlight){this.startSearch();return true;}switch(event.key){case"down":{if(!highlight){highlight=this.resultsElement.firstChild.firstChild;}else if(highlight.nextSibling){highlight.removeAttribute("id");highlight=highlight.nextSibling;}else{highlight.removeAttribute("id");highlight=highlight.parentNode.firstChild;}if(highlight){highlight.setAttribute("id","liveLookupHighlight");}event.preventDefault();break;}case"up":{if(!highlight){highlight=this.resultsElement.firstChild.lastChild;}else if(highlight.previousSibling){highlight.removeAttribute("id");highlight=highlight.previousSibling;}else{highlight.removeAttribute("id");highlight=highlight.parentNode.lastChild;}if(highlight){highlight.setAttribute("id","liveLookupHighlight");}event.preventDefault();break;}case"esc":{this.hide();event.stop();bRetval=false;break;}case"enter":{highlight.fireEvent("click");event.stop();bRetval=false;break;}default:{this.startSearch();break;}}}return bRetval;},startSearch:function(){if(this.timerHandle){window.clearTimeout(this.timerHandle);}this.resultsElement.setStyles({"width":this.inputElement.getSize().x<100?100:this.inputElement.getSize().x}).setPosition({relativeTo:this.inputElement,position:"bottomLeft",edge:"topLeft"});this._showPleaseWait();this.timerHandle=this.doSearch.delay(500,this);},doSearch:function(){if(this.inputElement.value===""){this.lastRequest="";this.hide();return false;}var searchValue=Form.getElementValue(this.inputElement),otherParams,x,params=this.options.parameters;if(this.lastRequest!=searchValue){this.lastRequest=searchValue;if(this.oRequest&&this.oRequest.running){this.oRequest.cancel();}params["criteria"][this.options.queryName]=(searchValue.length>3?'%':(this.options.queryName=='channel_path'?'/':''))+searchValue+'%';this.oRequest=new APIRequest({service:this.options.service,handler:this.responseHandler.bind(this),parameters:params,returnType:"retval"});this.lastRequest=Form.getElementValue(this.inputElement);}},responseHandler:function(oRetval){var ScrollTop=document.body.scrollTop;this.resultsElement.style.display='block';this.oLastRetval=oRetval;this._showResults(oRetval.data);if(this.resultsIframeShim!==null){this.resultsIframeShim.style.display="";this.resultsIframeShim.style.width=this.resultsElement.offsetWidth;this.resultsIframeShim.style.height=this.resultsElement.offsetHeight;this.resultsIframeShim.style.top=this.resultsElement.offsetTop;this.resultsIframeShim.style.left=this.resultsElement.offsetLeft;}if(document.body){document.body.scrollTop=ScrollTop;}},_showPleaseWait:function(){this.resultsElement.empty();var oUL=new Element("UL",{"class":"liveLookupResults"});oUL.adopt(new Element("LI",{"class":"liveLookupRow"}).appendText("Searching..."));oUL.getFirst().setProperty("id","liveLookupHighlight").setStyle("border-top","1px solid #666").setStyle("border-bottom","1px solid #666");this.resultsElement.adopt(oUL);this.resultsElement.style.display='block';},_showResults:function(oData){this.resultsElement.empty();if(oData.summary.count>0){var oUL=new Element("UL",{"class":"liveLookupResults"});$each(oData[this.options.entityType+"s"][this.options.entityType],function(oDatum){oUL.adopt(new Element("LI",{"class":"liveLookupRow",events:{click:this.setValue.bindWithEvent(this,oDatum[this.options.valueName]),mouseover:function(){if(highlight=$('liveLookupHighlight')){highlight.erase('id');this.set('id','liveLookupHighlight');}}}}).appendText(eval("oDatum."+this.options.textName)));},this);oUL.getFirst().setProperty("id","liveLookupHighlight").setStyle("border-top","1px solid #666");oUL.getLast().setStyle("border-bottom","1px solid #666");this.resultsElement.adopt(oUL);}else{this.resultsElement.adopt(this.options.oNoResultsFound);}this.inputElement.fireEvent("complete",oData);},setValue:function(event,value){highlight=$("liveLookupHighlight");if(value===null||typeof(value)=='undefined'){value=highlight.get("text");}this.lastRequest=highlight.get("text");Form.setElementValue(this.inputElement,highlight.get("text"),true,event);if(this.valueElement){Form.setElementValue(this.valueElement,value,true,event);}this.hide();this.inputElement.fireEvent("setvalue",[value]);}});var LiveLookupInitializer=function(oContainer){oContainer=oContainer||false;var aLiveLookups=[];if(oContainer){aLiveLookups=oContainer.getElements('input.livelookup, textarea.livelookup');}else{aLiveLookups=$$('input.livelookup, textarea.livelookup');}aLiveLookups.each(function(oLL){var strID=oLL.getProperty("id");while(!strID&&Form.LiveLookups[strID]!=null){strID="LiveLookup"+Math.random();};Form.LiveLookups[strID]=new Form.LiveLookup({inputElement:oLL});});};window.addEvent('domready',LiveLookupInitializer);Form.RbacLiveLookup=new Class({Extends:Form.LiveLookup,initialize:function(oOptions){this.parent(oOptions);this.options=$merge(this.options,{parameters:{criteria:{program_id:window.aRbacProgramIDs}}});}});var RbacLiveLookupInitializer=function(oContainer){oContainer=oContainer||false;var aLiveLookups=[];if(oContainer){aLiveLookups=oContainer.getElements('input.rbaclivelookup, textarea.rbaclivelookup');}else{aLiveLookups=$$('input.rbaclivelookup, textarea.rbaclivelookup');}aLiveLookups.each(function(oLL){var strID=oLL.getProperty("id");while(!strID&&Form.LiveLookups[strID]!=null){strID="RbacLiveLookup"+Math.random();};Form.LiveLookups[strID]=new Form.RbacLiveLookup({inputElement:oLL});});};window.addEvent('domready',RbacLiveLookupInitializer);
//------------------------
function generateErrorMessage(element){var bMultiple=(element.getProperty?false:true);var strError=(bMultiple?element[0].getProperty('error_message'):element.getProperty('error_message'))||'';if(strError===''){if(bMultiple){strError="Please select one of the options.";}else{strError="This element is required.  Please enter a valid value.";}}return strError;};function showErrorMessage(elem,error){try{elem.focus();}catch(e){}if(error===null||typeof(error)=='undefined'||error===''){error=generateErrorMessage(elem);}var aErrorParams={type:'formHelp',text:error,displayTime:5000};if(elem.getProperty("type")=="hidden"||elem.getStyle("visibility")=="hidden"||elem.getStyle('display')=="none"){aErrorParams.divPosition="toolTip";}else{aErrorParams.element=elem;aErrorParams.scrollIntoView=true;}Communication.showToolTip(aErrorParams);var bg=elem.style.backgroundColor;elem.style.backgroundColor="#FEFEC9";window.top.setTimeout(function(){if(typeof(elem)!='undefined'){elem.style.backgroundColor=bg;}},5000);};var MooValidator=new Class({Implements:[Options,Events],options:{validators:{email:{regex:/^[A-Z0-9._%-]+@[A-Z0-9\.\-]+\.(?:[A-Z]{2}|com|org|net|biz|info|name|aero|biz|info|jobs|museum|name)$/i,name:"email address"},url:{regex:new RegExp("^(ht|f)tp(s?):\/\/[a-z0-9\-_\.]+("+Data.domainExtensionStrList()+")?((\/|[\?]|#)[a-z0-9\-\.\?\/\\\+&%\$#_=;@:,]*)*$","i"),name:"web address, starting with 'http://'"},date:{regex:/^(0[1-9]|1[012])[-\/.](0[1-9]|[12][0-9]|3[01])[-\/.](19|20)\d\d$/,name:"date"},money:{regex:/^[0-9]+(\.\d\d)?$/,name:"dollar value"},phone:{regex:/^[0-9\-\.\,\(\)x\+\s]+?$/,name:"phone number"},integer:{regex:/^[0-9,]+$/,name:"number"},cpc_bid:{regex:/^(?:\d+(?:\.\d{1,3})?|\d*\.\d{1,3})$/,name:"CPC bid, with at most 3 decimals"},cpi_bid:{regex:/^(?:\d+(?:\.\d{1,3})?|\d*\.\d{1,3})$/,name:"CPI bid, with at most 3 decimals",max:1},cpm_bid:{regex:/^[1-9]?[0-9]{1,3}$/,name:"CPM bid",max:1000},month:{regex:/^[1-9]?[0-9]{0,1}$/,name:"Month"},year:{regex:/^(?:20|19)?[0-9][0-9]$/,name:"Year"},credit_card_number:{"function":function(value){if(!value.match(/^[0-9 ]+/)){return false;}this.result=true;this.sum=0;this.mul=1;this.strLen=value.length;for(i=0;i<strLen;i++){this.digit=str.substring(strLen-i-1,strLen-i);this.tproduct=parseInt(digit,10)*mul;if(tproduct>=10)sum+=(tproduct%10)+1;else sum+=tproduct;if(mul==1)mul++;else mul--;}if((sum%10)!=0)result=false;return result;},name:"Credit Card Number (no dashes or spaces)"},checkUrl:function(elem){if(elem.value==elem.getProperty("old_value")){return true;}else if(elem.value==elem.getProperty("help_text")){return true;}var args=elem.name+"="+encodeURIComponent(elem.value);var required=["true",true].contains(elem.getProperty("required"));var validation=elem.getProperty("validation");var validators=validation.split(/, /),validator,handler,x;for(var i=0;i<validators.length;++i){validator=validators[i];if(validator.substr(0,4)=="url:"){break;}}var url=validator.substr(4);if(required!==true||elem.value!==""){handler=function(retval){var aParams,aNodes,strErrors="",x;if(Object.count(retval.errors)>0){elem.setProperty("valid","false");aParams={type:'formHelp',element:elem,displayTime:5000};aNodes=retval.errors;for(x in aNodes){if(aNodes[x]===Object.prototype[x]){continue;}strErrors+=aNodes[x];}elem.setProperty("error_message",strErrors);aParams.text=strErrors;Communication.showToolTip(aParams);}else{elem.setProperty("valid","true");}};x=new AjaxRequest({url:url,responseHandler:handler,postVars:args,type:"request",returnType:"retval"});}return true;}},callbacks:{error:function(obj){var elememt=obj['element'];var error=obj['error'];showErrorMessage(elememt,error);},warning:function(obj){alert('Validation Warning: '+obj['msg']);},notification:function(obj){alert('Validation Notification: '+obj['msg']);}}},initialize:function(options){this.setOptions(options);},getValidators:function(){return this.options.validators;},getValidator:function(id){return this.options.validators[id];},getCallbacks:function(){return this.options.callbacks;},getCallback:function(id){return this.options.callbacks[id];},showError:function(obj){this.getCallback('error')(obj);},showWarning:function(obj){this.getCallback('warning')(obj);},showNotification:function(obj){this.getCallback('notification')(obj);},validate:function(elements){var results=[];var len=elements.length;for(var x=0;x<len;x++){results.push(this.validateAll(elements[x]));}return results;},validateAll:function(obj){var type=$type(obj),result;if(type=='collection'||type=='array'){result=this.validateCollection(obj);}else{result=this.validateElement(obj);}return result;},validateCollection:function(collection){var data=collection[0];var required=data['required'];var disabled=data['disabled'];var elements=data['elements'];var result={valid:true,type:'collection',collection:data,errors:[]};if(required==true&&disabled!=true){var len=elements.length;var selected=false;for(var x=0;x<len;x++){selected=elements[x].checked;if(selected==true){break;}}if(selected==false){result['valid']=false;result['errors']=[generateErrorMessage(elements)];}}return result;},validateElement:function(element){var bRequired=["true",true].contains(element.getProperty("required"));var bDisabled=["true",true,"disabled"].contains(element.getProperty("disabled"));var oResult={valid:true,type:'element',element:element,errors:[]};var bValid=true;if(bDisabled!=true){var value=Form.getElementValue(element)||"";if(value==""&&bRequired==true){bValid=false;}if(bValid){var minLength=parseInt(element.getProperty("minlength"));minLength=(isNaN(minLength)?0:minLength);if(minLength>value.replace(/^\s*|\s*$/g,"").length){bValid=false;}}if(bValid){var minValue=element.getProperty("minvalue")||"";if(minValue!=""){if(minValue.toFloat()>value.toFloat()){bValid=false;}}}if(bValid&&(!(bRequired==false&&value==""))){var validation=element.getProperty("validation")||"";if(validation!=""){var validators=validation.split(/, /);var len=validators.length;var valResult=true;for(var x=0;x<len;x++){var validator=validators[x];if(validator.substr(0,4)!="url:"){valResult=this.validateValue(validator,value);if(valResult==true&&element.getProperty('confirmedBid')!='true'&&(validator=='cpm_bid'||validator=='cpi_bid')){var maxBid=validator['max'];if(value>=maxBid){if(!confirm('Are you sure you want to bid over $'+maxBid+'?')){strError='Please correct your bid amount.';this.showError({msg:strError});valResult=false;}else{element.setProperty('confirmedBid','true');}}}}else{valResult=(element.getProperty('valid')==true);}if(valResult!=true){break;}}if(valResult!=true){bValid=false;}}}}if(bValid==false){oResult.valid=false;oResult.errors=[generateErrorMessage(element)];}return oResult;},validateValue:function(validatorIdOrRegex,value){var bResult=true,regex,funk;var oValidator=this.getValidator(validatorIdOrRegex);if(!validator){regex=eval(validatorIdOrRegex);strError="Please enter a valid value.";bResult=(value==value.match(regex));}else{strError="Please enter a valid "+oValidator.name+".";regex=oValidator['regex']||"";if(regex!=''){bResult=(value==value.match(regex));}else{funk=oValidator['function']||"";if($type(funk)=="function"){bResult=funk(value);}}}return bResult;}});var MooForm=new Class({Implements:[Options,Events],options:{form:null,atLeastOne:null,stopEnter:false},events:{},initialize:function(options){this.setOptions(options);this.setRoot(this.options.form);},setRoot:function(root){this.root=root;},getRoot:function(){return this.root;},setContainer:function(container){this.container=container;},getContainer:function(){return this.container;},setElements:function(elements){this.elements=elements;},getElements:function(){return this.elements;},includeElement:function(element){this.elements.include(element);},removeElement:function(element){this.elements.remove(element);},getValidator:function(){this.validator=this.validator||this.loadValidator();return this.validator;},loadValidator:function(){return new MooValidator();},run:function(){var bAttached=this.attachDom();if(bAttached){this.attachContainerEvents();this.attachElementEvents();}return this;},attachDom:function(){var root=this.getRoot();if(!$defined(root)||root===''){alert('MooForm Error: Form must be valid, Form = ['+root+']');return false;}var container=$(root);this.setContainer(container);var elements=container.getElements("input, select, textarea");this.setElements(elements);return true;},containerShouldGetEvents:function(container){return true;},attachContainerEvents:function(){var container=this.getContainer();if(this.containerShouldGetEvents(container)){container.addEvent('submit',this.submit.bind(this));}},attachElementEvents:function(){var elements=this.getElements();this.attachEvents(elements);},attachEvents:function(obj){var result=$type(obj);if(result=="collection"||result=='array'){obj.each(this.attachEvents.bind(this));}else{this.attachEventsToElement(obj);}},attachEventsToElement:function(element){var result=this.elementShouldGetEvents(element);if(result==true){this.attachBehaviors(element);this.attachValidationEvents(element);}if(this.options.stopEnter==true){if(element.tagName!="TEXTAREA"&&element.type!="hidden"&&element.type!='radio'&&element.type!='checkbox'){element.addEvent("keydown",function(e){if(Browser.Engine.trident){e=window.event;}return e.keyCode!=13;});}}},elementShouldGetEvents:function(element){if(element){var elName=element.tagName;var elType=element.type;return((elName==='INPUT'||elName==='TEXTAREA')&&(elType!=='HIDDEN'&&elType!=='checkbox'&&elType!=='radio'));}return false;},attachBehaviors:function(element){var max=element.getProperty('maxlength')-0||0;var helpText=element.getProperty("help_text")||'';var helpTest=helpText;if(max>0&&max<2147483647){helpTest=helpTest.substring(0,max);element.setAttribute('origMaxLength',max);element.removeAttribute('maxlength');var showCharsUsed=function(e){if(this.value.length>max){if(this.value!=helpText){this.value=this.value.substring(0,max);}}var aParams={type:'formHelp',element:this};aParams.text="Used "+this.value.length+"/"+max+" Characters.";Communication.showToolTip(aParams);};element.addEvents({keyup:showCharsUsed,change:showCharsUsed});}element.addEvent('change',function(e){this.value=this.value.convertMSWordCharacters();});if(helpText!==""){var touch=function(e){if(!this.touched&&this.value===helpText&&helpText!==''){this.value='';this.removeClass("help_text");this.touched=true;}};var untouch=function(e){if(this.value===''&&helpText!==''){this.value=helpText;this.addClass("help_text");this.touched=false;}};if(element.value===''||element.value===helpTest){element.value=helpText;}if(element.value===helpText){element.addClass("help_text");}element.addEvents({focus:touch,blur:untouch});}},attachValidationEvents:function(element){var validation=element.getProperty("validation");if(validation!==null&&validation!==""){var validators=validation.split(/, /);validators.each(function(validator){if(validator.substr(0,4)=="url:"){element.addEvent('blur',this.getValidator().checkUrl.bind(element));}});}},getElementsToValidate:function(){var results=[];var elements=this.getElements();var map={};elements.each(function(element){var name=element.name;var set=map[name]||[];set.push(element);map[name]=set;});for(name in map){var entry=map[name];var len=entry.length;if(len==1){results[results.length]=this.prepElementForValidation(entry[0]);}else{var first=entry[0];var required=["true",true].contains(first.getProperty("required"));var disabled=["true",true,"disabled"].contains(first.getProperty("disabled"));var elements=this.prepElementsForValidation(entry);var obj={required:required,disabled:disabled,elements:elements};results[results.length]=[obj];}}return results;},prepElementsForValidation:function(elements){var len=elements.length;for(var x=0;x<len;x++){this.prepElementForValidation(elements[x]);}return elements;},prepElementForValidation:function(element){var isDataSelector=(element.getProperty("getall")=="yes");if(isDataSelector==true){var options=element.options;var num=options.length;for(var y=0;y<num;y++){options[y].selected=true;}}var value=Form.getElementValue(element)||"";value=value.trim();var helpText=element.getProperty("help_text")||"";if(value==helpText){value="";element.removeClass("help_text");element.touched=true;}var triggerOnChange=false;Form.setElementValue(element,value,triggerOnChange);return element;},validate:function(collection){return this.getValidator().validate(collection);},isValid:function(aData){var result=true;var len=aData.length;for(var x=0;x<len;x++){var data=aData[x];result=data['valid'];if(result==false){break;}}return result;},submit:function(){var collection=this.getElementsToValidate();var validation=this.validate(collection);var result=this.isValid(validation);if(result==true){this.prepForSubmit(validation);}else{this.handleError(validation);}return this.send(result,validation);},send:function(result,validation){if(result==true){return true;}else{return false;}},handleError:function(aData){var firstError=true;var len=aData.length;for(var x=0;x<len;x++){var data=aData[x];var type=data['type'];result=data['valid'];if(result==false&&firstError==true){if(type=='collection'){var collection=data['collection'];var elements=collection['elements'];var error=null;showErrorMessage(elements[0],error);}else{var element=data['element'];var error=null;showErrorMessage(element,error);}firstError=false;}if(type=='element'){var element=data['element'];var isDataSelector=(element.getProperty("getall")=="yes");if(isDataSelector==true){var options=element.options;var num=options.length;for(var y=0;y<num;y++){options[y].selected=false;}}}}},prepForSubmit:function(aData){var len=aData.length;for(var x=0;x<len;x++){var data=aData[x];var type=data['type'];if(type=='collection'){var collection=data['collection'];var disabled=collection['disabled'];if(disabled==true){var elements=collection['elements'];elements.setProperty('disabled',true);}}else{var element=data['element'];var ignore=element.getProperty('ignore');if(ignore=="true"){element.setProperty('disabled',true);}}}}});function getAoN(obj,id){return obj.getAttribute(id)||null;};function getMooFormOptions(mooForm){var options={};options['form']=mooForm.id||mooForm.name||null;options['atLeastOne']=getAoN(mooForm,'atLeastOne');options['stopEnter']=getAoN(mooForm,'stopEnter');return options;};var MooForms=[];window.addEvent("domready",function(){$$(".MooForm").each(function(mooForm){MooForms.push(new MooForm(getMooFormOptions(mooForm)).run());});});var MooContainer=MooForm.extend({options:{container:null},initialize:function(options){this.parent(options);options=this.options;this.setRoot(options.container);},attachDom:function(){var root=this.getRoot();if(!$defined(root)||root===''){alert('MooContainer Error: Container must be valid, Container = ['+root+']');return false;}var container=$(root);this.setContainer(container);var elements=container.getElementsBySelector("input, select, textarea");this.setElements(elements);return true;}});function getMooContainerOptions(mooContainer){var options=getMooFormOptions(mooContainer);options['container']=options['form'];return options;};var MooContainers=[];window.addEvent("domready",function(){$$(".MooContainer").each(function(mooContainer){MooContainers.push(new MooContainer(getMooContainerOptions(mooContainer)).run());});});
//------------------------
