if(typeof console==="undefined"){
console={log:function(){
}};
}
var YDOM=YAHOO.util.Dom;
var YEVENT=YAHOO.util.Event;
var YELEMENT=YAHOO.util.Element;
var YANIM=YAHOO.util.Anim;
var YCALENDAR=YAHOO.widget.Calendar;
var YSLIDER=YAHOO.widget.Slider;
YSLIDER.prototype.verifyOffset=function(_1){
var _2=YAHOO.util.Dom.getXY(this.getEl());
if(_2){
if(isNaN(this.baselinePos[0])){
this.setThumbCenterPoint();
this.thumb.startOffset=this.thumb.getOffsetFromParent(_2);
}
if(_2[0]!=this.baselinePos[0]||_2[1]!=this.baselinePos[1]){
this.thumb.resetConstraints();
this.baselinePos=_2;
return false;
}
}
return true;
};
function FSForm(id){
this.id=id;
this.scriptRequestCounter=1;
this.page=1;
this.lastPage=1;
this.checks=[];
this.logicFields=[];
this.calculations=[];
this.calcFields=[];
this.calcFieldDefaults={};
this.init=function(){
if(this.lastPage>1){
var _4=this;
YEVENT.addListener("fsForm"+this.id,"keypress",function(e){
if(e.keyCode!=13){
return true;
}
if(document.activeElement){
if(document.activeElement.tagName=="TEXTAREA"){
return true;
}
_4.updateCalculations(document.activeElement.id.substring(5));
}
if(_4.page==_4.lastPage){
_4.submitForm();
}else{
_4.nextPage(_4.page);
}
YAHOO.util.Event.preventDefault(e);
YAHOO.util.Event.stopEvent(e);
return false;
});
}
for(var i=0;i<this.calcFields.length;i++){
var id=this.calcFields[i];
var _8=this.getFieldsByName("field"+id);
for(var j=0;j<_8.length;j++){
var _a=_8[j];
var _b=_a.type.toLowerCase();
var _c=_b=="radio"||_b=="checkbox"?"click":"change";
YEVENT.addListener(_a,_c,(function(id){
return function(){
this.updateCalculations(id);
};
})(id),this,true);
}
var _e=YDOM.get("field"+id+"_othervalue");
if(_e){
YEVENT.addListener(_e,"change",(function(id,_10){
return function(){
YDOM.get("field"+id+"_other").checked=_10.value!="";
this.updateCalculations(id);
};
})(id,_e),this,true);
}
}
for(var i=0;i<this.logicFields.length;i++){
var id=this.logicFields[i];
var _8=this.getFieldsByName("field"+id);
for(var j=0;j<_8.length;j++){
var _a=_8[j];
var _b=_a.type.toLowerCase();
var _c=_b=="radio"||_b=="checkbox"?"click":"change";
YEVENT.addListener(_a,_c,(function(id){
return function(){
this.checkLogic(id);
};
})(id),this,true);
}
this.checkLogic(id);
}
var _8=YDOM.getElementsByClassName("fsOtherField","input");
for(var i=0;i<_8.length;i++){
var _a=_8[i];
YEVENT.addListener(_a,"change",function(e){
var _13=YEVENT.getTarget(e);
var id=_13.id.split("_");
YDOM.get(id[0]+"_other").checked=YDOM.get(_13).value!="";
},this,true);
}
var _8=YDOM.getElementsByClassName("fsField");
for(var i=0;i<_8.length;i++){
var _a=_8[i];
YEVENT.addListener(_a,"focus",function(e){
var _16=YEVENT.getTarget(e);
this.focus(_16,true);
},this,true);
YEVENT.addListener(_a,"blur",function(e){
var _18=YEVENT.getTarget(e);
this.focus(_18,false);
},this,true);
}
var _8=YDOM.getElementsByClassName("fsFieldConfirm");
for(var i=0;i<_8.length;i++){
var _a=_8[i];
var _19=_a.id.replace("confirm_","");
YEVENT.addListener(_a,"change",function(e){
var _1b=YEVENT.getTarget(e);
var _1c=document.getElementById(_19);
if(_1c){
this.checkFormat(_1c);
}
},this,true);
}
var els=YDOM.getElementsByClassName("fsCallout","div");
for(var i=0;i<els.length;i++){
var el=els[i];
YDOM.setStyle(el,"opacity",0);
FSUtil.hide(el);
}
for(var i=0;i<this.calculations.length;i++){
var _1f=this.calculations[i];
this.evalCalculation(_1f);
}
var _20=YDOM.getElementsByClassName("fsCalendar","div");
for(var i=0;i<_20.length;i++){
var div=_20[i];
var id=div.id.match(/(\d+)/);
id=id[1];
var _22=YDOM.get("field"+id+"Y").options;
var _23=parseInt(_22[1].value,10);
var _24=parseInt(_22[_22.length-1].value,10);
var _25=new Date().getFullYear();
if(_23<100){
_23+=_23>_25-2000?1900:2000;
}
if(_24<100){
_24+=2000;
}
var _26=new YCALENDAR(div.id,div.id,{mindate:"1/1/"+_23,maxdate:"12/31/"+_24,close:true});
_26.render();
YEVENT.addListener(div.id+"Link","click",_26.show,_26,true);
_26.beforeShowEvent.subscribe(this.calendarShow,_26,true);
_26.selectEvent.subscribe(this.calendarSelect,_26,true);
}
var _27=YDOM.getElementsByClassName("fsTextAreaMaxLength","textarea");
for(var i=0;i<_27.length;i++){
var _28=_27[i];
var id=_28.id.match(/(\d+)/);
id=id[1];
var _29=YDOM.get("fsCounter"+id);
var _2a=parseInt(_29.innerHTML);
if(_2a>0){
YEVENT.addListener(_28,"keyup",(function(id,_2c){
return function(){
this.textareaCharLimiter(id,_2c);
};
})(id,_2a),this,true);
YDOM.setStyle(_28.id,"paddingBottom","24px");
_29.innerHTML="";
FSUtil.show(_29);
}
}
var _2d=YDOM.getElementsByClassName("fsMatrixOnePerColumn","table");
for(var i=0;i<_2d.length;i++){
var _2e=_2d[i].getElementsByTagName("input");
for(var j=0;j<_2e.length;j++){
var _b=_2e[j].type.toLowerCase();
if(_b=="radio"||_b=="checkbox"){
YEVENT.addListener(_2e[j],"click",(function(id){
return function(){
this.checkMatrixOnePerColumn(id);
};
})(_2e[j].id),this,true);
}
}
}
var _30=YDOM.getElementsByClassName("fsSlider","input");
for(var i=0;i<_30.length;i++){
var _31=this.getNumberProperties(_30[i]);
if(!isNaN(_31.min)&&!isNaN(_31.max)){
var _32=YSLIDER.getHorizSlider(_30[i].id+"-sliderbg",_30[i].id+"-sliderthumb",0,100);
_32._fsobj=this;
_32._fsnumber=_31;
_32._fsfield=_30[i];
_32._fsshow=YDOM.get(_30[i].id+"-slidervalue");
var _33=_30[i].value!=""?parseFloat(_30[i].value):_31.min;
if(isNaN(_33)){
_33=_31.min;
}
if(!/msie/i.test(navigator.userAgent)||/opera/i.test(navigator.userAgent)){
var _34=Math.round((_33-_31.min)/(_31.max-_31.min)*100);
_32.setValue(_34,false,true,true);
}
if(!isNaN(_31.decimals)){
_33=_33.toFixed(_31.decimals);
}
_30[i].value=_33;
_32._fsshow.innerHTML=_33;
_32.subscribe("change",function(_35){
var _36=((_35/100)*(this._fsnumber.max-this._fsnumber.min))+this._fsnumber.min;
_36=isNaN(this._fsnumber.decimals)?Math.round(_36):_36.toFixed(this._fsnumber.decimals);
if(_36==-0){
_36=0;
}
this._fsfield.value=_36;
this._fsshow.innerHTML=_36;
var id=this._fsfield.id.match(/(\d+)/);
id=id[1];
if(FSUtil.arrayIndexOf(this._fsobj.calcFields,id)>=0){
this._fsobj.updateCalculations(id);
}
if(FSUtil.arrayIndexOf(this._fsobj.logicFields,id)>=0){
this._fsobj.checkLogic(id);
}
},_32,true);
}
}
var _2e=[];
var _38=["fsFormatEmail","fsFormatPhoneUS","fsFormatPhoneUK","fsFormatPhoneAU","fsFormatPhoneXX","fsFormatZipUS","fsFormatZipCA","fsFormatZipUK","fsFormatZipAU","fsFormatNumber","fsFormatCreditCard"];
for(var _39=0;_39<_38.length;_39++){
_2e=_2e.concat(YDOM.getElementsByClassName(_38[_39],"input"));
}
for(var i=0;i<_2e.length;i++){
this.checkFormat(_2e[i]);
YEVENT.addListener(_2e[i],"change",(function(_3a){
return function(){
this.checkFormat(_3a);
};
})(_2e[i]),this,true);
}
this.updateProgress(1);
this.fitTableWidths(1);
if(!this.checkFreeLink()){
return;
}
};
this.getFieldContainer=function(_3b){
var _3c=_3b;
while(_3c&&_3c.tagName.toLowerCase()!="body"){
if(YDOM.hasClass(_3c,"fsFieldCell")){
return _3c;
}
_3c=_3c.parentNode;
}
return;
};
this.focus=function(_3d,_3e){
if(/MSIE 6/i.test(navigator.userAgent)){
return;
}
var _3f=this.getFieldContainer(_3d);
if(!_3f){
return;
}
if(_3e){
YDOM.addClass(_3f,"fsFieldFocused");
this.showCallout(_3f,true);
}else{
YDOM.removeClass(_3f,"fsFieldFocused");
this.showCallout(_3f,false);
}
};
this.showCallout=function(_40,_41){
var _42=this.getFieldContainer(_40);
var _43=YDOM.getElementsByClassName("fsCallout","div",_42);
if(!_43.length){
return;
}
var _44=_43[0];
if(_41){
var _45=YDOM.getXY(_40);
var _46=FSUtil.getHeight(_40);
var _47=FSUtil.getWidth(_40);
YDOM.setStyle(_44,"opacity",0);
YDOM.setStyle(_44,"top",(_45[1])+_46+"px");
YDOM.setStyle(_44,"left",(_45[0]+50)+"px");
YDOM.setStyle(_44,"marginTop","25px");
FSUtil.show(_44);
var _48=new YAHOO.util.Anim(_44,{marginTop:{to:0},opacity:{to:1}},0.5,YAHOO.util.Easing.easeOut);
_48.animate();
}else{
var _48=new YAHOO.util.Anim(_44,{opacity:{to:0}},0.5,YAHOO.util.Easing.easeOut);
_48.onComplete.subscribe(function(){
FSUtil.hide(_44);
});
_48.animate();
}
};
this.fadeCallout=function(_49){
var _4a=15;
var _4b=20;
var _4c=YDOM.hasClass(_49,"fsCalloutShowing");
var _4d=YDOM.getStyle(_49,"opacity");
var _4e=YDOM.getStyle(_49,"marginTop").split("px")[0];
var _4f=this;
if(_4c){
_4d+=(1/_4a);
_4e-=(25/_4a);
if(_4d>=1){
_4d=1;
}else{
setTimeout(function(){
_4f.fadeCallout(_49);
},_4b);
}
if(_4e<=0){
_4e=0;
}
}else{
_4d-=(1/_4a);
if(_4d<=0){
_4d=0;
FSUtil.hide(_49);
}else{
setTimeout(function(){
_4f.fadeCallout(_49);
},_4b);
}
}
YDOM.setStyle(_49,"opacity",_4d);
YDOM.setStyle(_49,"margin-top",_4e+"px");
};
this.checkRequired=function(_50){
if(location.search.indexOf("no_req")>=0){
return true;
}
this.clearError(_50);
var _51=false;
var _52=[];
var _53=YDOM.getElementsByClassName("fsField","","fsPage"+this.id+"-"+_50);
for(var i=0;i<_53.length;i++){
var _55=_53[i];
if(this.fieldIsVisible(_55)&&FSUtil.arrayIndexOf(_52,_55.id)==-1){
var _56=true;
if(YDOM.hasClass(_55,"fsRequired")){
var _57=_55.name.substr(0,_55.name.indexOf("-"));
var _58=document.getElementById("matrix-"+_57);
if(_58!=null){
var _59=_58.getElementsByTagName("input");
var _5a=new Array(false);
for(var j=0;j<_59.length;j++){
hasRadio=false;
var _5c=_59[j].type.toLowerCase();
if(_5c=="radio"||_5c=="checkbox"){
if(_5c=="radio"){
hasRadio=true;
_56=this.checkValue(_55);
}
var col=parseInt(_59[j].id.substr(_59[j].id.lastIndexOf("-")+1))-1;
if(_5a[col]==null){
_5a[col]=false;
}
if(_59[j].checked){
_5a[col]=true;
}
}
}
if(YDOM.hasClass(_58,"fsMatrixOnePerColumn")){
_56=true;
for(var c=0;c<_5a.length;c++){
if(_5a[c]==false){
_56=false;
}
}
}else{
if(!hasRadio){
_56=false;
for(var c=0;c<_5a.length;c++){
if(_5a[c]==true){
_56=true;
break;
}
}
}
}
if(_56==false){
this.highlightField(_55,true);
}
}else{
_56=this.checkValue(_55);
}
if(!_56){
_51=true;
if(YDOM.hasClass(_55,"fsFieldAddress")){
var id=_55.id.split("-");
id=id[0];
_52.push(id+"-zip");
}
}
}
if(_56&&YDOM.hasClass(_55,"fsUpload")){
_56=this.checkUpload(_55);
if(!_56){
_51=true;
}
}
if(_56){
_56=this.checkFormat(_55);
if(!_56){
_51=true;
}
}
}
}
if(_51){
this.showError(YDOM.get("requiredFieldsError")?YDOM.get("requiredFieldsError").innerHTML:"Please fill in a valid value for all required fields");
return false;
}
return true;
};
this.checkValue=function(_60){
var bad=false;
switch(_60.type.toLowerCase()){
case "text":
case "password":
case "textarea":
case "file":
case "email":
case "tel":
if(YDOM.hasClass(_60,"fsFieldName")){
var id=_60.id.split("-");
id=id[0];
bad=!YDOM.get(id+"-first").value.match(/\S/)||!YDOM.get(id+"-last").value.match(/\S/);
}else{
if(YDOM.hasClass(_60,"fsFieldAddress")){
var id=_60.id.split("-");
id=id[0];
bad=!YDOM.get(id+"-address").value.match(/\S/)||!YDOM.get(id+"-city").value.match(/\S/)||!YDOM.get(id+"-zip").value.match(/\S/);
if(!bad){
var _63=YDOM.get(id+"-state");
if(_63.type.toLowerCase()=="select-one"){
bad=!_63.options[_63.selectedIndex].value.match(/\S/);
}else{
bad=!_63.value.match(/\S/);
}
}
if(!bad){
var _64=YDOM.get(id+"-country");
if(_64&&!_64.options[_64.selectedIndex].value.match(/\S/)){
bad=true;
}
}
}else{
bad=!_60.value.match(/\S/);
}
}
break;
case "select-one":
bad=!_60.options[_60.selectedIndex].value.match(/\S/);
break;
case "select-multiple":
bad=true;
var _65=_60.options;
for(var j=0;j<_65.length;j++){
if(_65[j].selected&&_65[j].value.match(/\S/)){
bad=false;
}
}
break;
case "radio":
case "checkbox":
bad=true;
var _67=document.getElementsByName(_60.name);
for(var j=0;j<_67.length;j++){
if(_67[j].checked){
bad=false;
}
}
break;
}
if(bad){
this.highlightField(_60,true);
}
return !bad;
};
this.checkFormat=function(_68){
var _69=false;
if(_68.value!=""){
if(YDOM.hasClass(_68,"fsFormatEmail")){
_69=true;
if(!_68.value.match(/^\s*\S+\@[\w\-\.]+\.\w+\s*$/)){
this.highlightField(_68,true);
return false;
}
var _6a=document.getElementById("confirm_"+_68.id);
if(_6a&&_6a.value!=_68.value){
this.highlightField(_68,true);
return false;
}
}else{
if(YDOM.hasClass(_68,"fsFormatPhoneUS")||YDOM.hasClass(_68,"fsFormatPhoneUK")||YDOM.hasClass(_68,"fsFormatPhoneAU")){
_69=true;
var val=_68.value.toLowerCase().replace(/[^\dx]/g,"");
var ext="";
if(val.indexOf("x")>=0){
var _6d=val.split("x");
val=_6d[0];
ext=_6d[1];
}
if(val.charAt(0)=="1"){
val=val.substr(1,val.length-1);
}
if(YDOM.hasClass(_68,"fsFormatPhoneUS")){
if(val.length!=10){
this.highlightField(_68,true);
return false;
}
_68.value="("+val.substr(0,3)+") "+val.substr(3,3)+"-"+val.substr(6,4);
}else{
if(YDOM.hasClass(_68,"fsFormatPhoneUK")){
if(val.substr(0,2)=="44"){
val=val.substr(2,val.length-2);
if(val.charAt(0)!="0"){
val="0"+val;
}
}
if(val.charAt(0)!="0"||(val.length!=10&&val.length!=11)){
this.highlightField(_68,true);
return false;
}
if((val.charAt(1)=="1"&&(val.charAt(2)=="1"||val.charAt(3)=="1"))||(val.charAt(1)=="8")){
_68.value=val.substr(0,4)+" "+val.substr(4,3)+" "+val.substr(7,val.length-7);
}else{
if(val.charAt(1)=="2"||val.charAt(1)=="3"||val.charAt(1)=="5"){
_68.value=val.substr(0,3)+" "+val.substr(3,4)+" "+val.substr(7,val.length-7);
}else{
_68.value=val.substr(0,5)+" "+val.substr(5,val.length-5);
}
}
}else{
if(YDOM.hasClass(_68,"fsFormatPhoneAU")){
if(val.substr(0,2)=="61"){
val=val.substr(2,val.length-2);
if(val.charAt(0)!="0"){
val="0"+val;
}
}
if(val.charAt(0)!="0"||val.length!=10){
this.highlightField(_68,true);
return false;
}
_68.value="("+val.substr(0,2)+") "+val.substr(2,4)+" "+val.substr(6,4);
}
}
}
if(ext.length){
_68.value+=" x"+ext;
}
}else{
if(YDOM.hasClass(_68,"fsFormatPhoneXX")){
_69=true;
if(!/\d{3,}/.test(_68.value)){
this.highlightField(_68,true);
return false;
}
}else{
if(YDOM.hasClass(_68,"fsFormatZipUS")){
_69=true;
var val=_68.value.replace(/^\s+/,"").replace(/\s+$/,"");
if(!val.match(/^\d{5}(?:\-\d{4})?$/)){
this.highlightField(_68,true);
return false;
}
_68.value=val;
}else{
if(YDOM.hasClass(_68,"fsFormatZipCA")){
_69=true;
var val=_68.value.replace(/^\s+/,"").replace(/\s+$/,"").replace(/\s{2,}/," ").toUpperCase();
if(val.length==6&&!val.match(/\s/)){
val=val.substr(0,3)+" "+val.substr(3,3);
}
if(!val.match(/^[A-Z]\d[A-Z] \d[A-Z]\d$/)){
this.highlightField(_68,true);
return false;
}
_68.value=val;
}else{
if(YDOM.hasClass(_68,"fsFormatZipUK")){
_69=true;
var val=_68.value.replace(/^\s+/,"").replace(/\s+$/,"").replace(/\s{2,}/," ").toUpperCase();
if(!val.match(/\s/)){
val=val.substr(0,val.length-3)+" "+val.substr(val.length-3,3);
}
if(!val.match(/^[A-Z]{1,2}[0-9R][0-9A-Z]? [0-9][ABD-HJLNP-UW-Z]{2}$/)){
this.highlightField(_68,true);
return false;
}
_68.value=val;
}else{
if(YDOM.hasClass(_68,"fsFormatZipAU")){
_69=true;
var val=_68.value.replace(/^\s+/,"").replace(/\s+$/,"").toUpperCase();
if(!val.match(/^\d{4}$/)){
this.highlightField(_68,true);
return false;
}
_68.value=val;
}else{
if(YDOM.hasClass(_68,"fsFormatNumber")){
_69=true;
var val=parseFloat(_68.value.replace(/[^\d\.\-]/g,""));
if(isNaN(val)){
this.highlightField(_68,true);
return false;
}
var _6e=this.getNumberProperties(_68);
if(!isNaN(_6e.min)&&val<_6e.min){
this.highlightField(_68,true);
return false;
}
if(!isNaN(_6e.max)&&val>_6e.max){
this.highlightField(_68,true);
return false;
}
if(!isNaN(_6e.decimals)){
val=val.toFixed(_6e.decimals);
}
_68.value=val;
}else{
if(YDOM.hasClass(_68,"fsFormatCreditCard")){
_69=true;
var val=_68.value.replace(/\D/g,"");
var _6f=0;
var _70=1;
for(var i=val.length-1;i>=0;i--){
var _72=parseInt(val.charAt(i))*_70;
_6f+=(_72>9)?_72-9:_72;
_70=_70==1?2:1;
}
if(_6f%10!=0){
this.highlightField(_68,true);
return false;
}
if(val.match(/^4/)){
if(!YDOM.hasClass(_68,"fsFormatCreditCardVisa")||(val.length!=13&&val.length!=16)){
this.highlightField(_68,true);
return false;
}
}else{
if(val.match(/^(?:51|52|53|54|55)/)){
if(!YDOM.hasClass(_68,"fsFormatCreditCardMasterCard")||val.length!=16){
this.highlightField(_68,true);
return false;
}
}else{
if(val.match(/^(?:6011|622|64|65)/)){
if(!YDOM.hasClass(_68,"fsFormatCreditCardDiscover")||val.length!=16){
this.highlightField(_68,true);
return false;
}
}else{
if(val.match(/^(?:34|37)/)){
if(!YDOM.hasClass(_68,"fsFormatCreditCardAmex")||val.length!=15){
this.highlightField(_68,true);
return false;
}
}else{
if(val.match(/^(?:300|301|302|303|304|305|36|54|55)/)){
if(!YDOM.hasClass(_68,"fsFormatCreditCardDiners")||(val.length!=14&&val.length!=16)){
this.highlightField(_68,true);
return false;
}
}else{
if(val.match(/^35/)){
if(!YDOM.hasClass(_68,"fsFormatCreditCardJCB")||val.length!=16){
this.highlightField(_68,true);
return false;
}
}else{
this.highlightField(_68,true);
return false;
}
}
}
}
}
}
_68.value=val;
}
}
}
}
}
}
}
}
}
}
if(_69){
this.highlightField(_68,false);
}
return true;
};
this.checkUpload=function(_73){
var _74=true;
var _75=[];
var _76=_73.className.split(/\s+/);
for(var j=0;j<_76.length;j++){
var _78=_76[j];
if(/^uploadTypes-/.test(_78)){
var m=_78.split("-");
_75=m[1].split(",");
}
}
for(var j=0;j<_75.length;j++){
_75[j]=_75[j].toLowerCase();
}
if(FSUtil.arrayIndexOf(_75,"*")<0&&_73&&_73.value!=""&&this.fieldIsVisible(_73)){
var ext=_73.value.match(/\.(\w+)$/);
_74=ext&&FSUtil.arrayIndexOf(_75,ext[1].toLowerCase())>=0?true:false;
if(!_74){
this.highlightField(_73,true);
var msg=YDOM.get("fileTypeAlert")?YDOM.get("fileTypeAlert").innerHTML:"You must upload one of the following file types for the selected field:";
alert(msg+_75.join(", "));
}
}
return _74;
};
this.showError=function(_7c){
var _7d=document.createElement("div");
_7d.id="fsError"+this.id;
_7d.className="fsError";
_7d.innerHTML=_7c;
YDOM.insertBefore(_7d,"fsForm"+this.id);
FSUtil.scrollTo("fsError"+this.id);
};
this.clearError=function(_7e){
var _7f=YDOM.getElementsByClassName("fsRequired","","fsPage"+this.id+"-"+_7e);
for(var i=0;i<_7f.length;i++){
this.highlightField(_7f[i],0);
}
var _7f=YDOM.getElementsByClassName("fsUpload","input","fsPage"+this.id+"-"+_7e);
for(var i=0;i<_7f.length;i++){
this.highlightField(_7f[i],0);
}
var _81=YDOM.get("fsError"+this.id);
if(_81){
_81.parentNode.removeChild(_81);
}
};
this.highlightField=function(_82,on){
var _84=this.getFieldContainer(_82);
if(on){
YDOM.addClass(_84,"fsValidationError");
}else{
YDOM.removeClass(_84,"fsValidationError");
}
};
this.checkSelected=function(_85,_86){
var _87=false;
var _88=document.getElementsByName(_85);
if(!_88.length){
_88=document.getElementsByName(_85+"[]");
}
for(var i=0;i<_88.length;i++){
var _8a=_88[i];
if(_8a.type=="checkbox"||_8a.type=="radio"){
if(_8a.checked&&_8a.value==_86){
_87=true;
}
}else{
if(_8a.type=="select-one"||_8a.type=="text"){
_87=_8a.value==_86;
}else{
if(_8a.type=="select-multiple"){
var _8b=_8a.options;
for(var j=0;j<_8b.length;j++){
var _8d=_8b[j];
if(_8d.selected&&_8d.value==_86){
_87=true;
}
}
}
}
}
}
return _87;
};
this.checkLogic=function(id){
for(var i=0;i<this.checks.length;i++){
var _90=this.checks[i];
if(FSUtil.arrayIndexOf(_90.fields,id)>=0){
var _91=_90.bool=="AND"?true:false;
for(var j=0;j<_90.checks.length;j++){
var _93=_90.checks[j];
var _94=false;
if(_93.condition=="gt"){
_94=Number(YDOM.get("field"+_93.field).value)>Number(_93.option);
}else{
if(_93.condition=="lt"){
_94=Number(YDOM.get("field"+_93.field).value)<Number(_93.option);
}else{
_94=this.checkSelected("field"+_93.field,_93.option);
if(_93.condition=="!="){
_94=!_94;
}
}
}
if(_90.bool=="AND"){
_91=_91?_94:false;
}else{
_91=_91?true:_94;
}
}
var _95=YDOM.get("fsCell"+_90.target);
if(YDOM.hasClass(_95,"fsSectionCell")){
_95=YDOM.get("fsSection"+_90.target);
}
if(_91){
if(_90.action=="Show"){
this.showFields(_95);
}else{
this.hideFields(_95);
}
}else{
if(_90.action=="Show"){
this.hideFields(_95);
}else{
this.showFields(_95);
}
}
}
}
};
this.showFields=function(_96){
var _97=["input","textarea","select"];
for(var i=0;i<_97.length;i++){
var _99=_96.getElementsByTagName(_97[i]);
for(var j=0;j<_99.length;j++){
var _9b=_99[j];
if(_9b.type!="file"){
_9b.disabled=false;
}
}
}
if(_96.tagName.toLowerCase()=="table"){
if(!FSUtil.visible(_96)){
FSUtil.show(_96);
this.updateTablePositionClasses(_96);
}
}else{
YDOM.removeClass(_96,"fsHiddenCell");
FSUtil.show(YDOM.getAncestorByTagName(_96,"tr"));
var _9c=YDOM.getAncestorByTagName(_96,"table");
if(!FSUtil.visible(_9c)){
FSUtil.show(_9c);
this.updateTablePositionClasses(_9c);
}
var _9d=YDOM.getElementsByClassName("fsMatrix","table",_96);
for(var _9e=0;_9e<_9d.length;_9e++){
var _9f=_9d[_9e].getElementsByTagName("td");
for(var _a0=0;_a0<_9f.length;_a0++){
YDOM.removeClass(_9f[_a0],"fsHiddenCell");
}
}
}
};
this.hideFields=function(_a1){
if(_a1.tagName.toLowerCase()=="table"){
if(FSUtil.visible(_a1)){
FSUtil.hide(_a1);
this.updateTablePositionClasses(_a1);
}
}else{
YDOM.addClass(_a1,"fsHiddenCell");
var _a2=YDOM.getAncestorByTagName(_a1,"tr");
var _a3=YDOM.getElementsByClassName("fsFieldCell","td",_a2);
var _a4=false;
if(_a3.length==1){
_a4=true;
}else{
var _a5=YDOM.getElementsByClassName("fsHiddenCell","td",_a2);
if(_a5.length==_a3.length){
_a4=true;
}
}
if(_a4){
FSUtil.hide(_a2);
var _a6=YDOM.getAncestorByTagName(_a1,"table");
var _a7=YDOM.getElementsByClassName("fsFieldRow","tr",_a6);
var _a8=false;
for(var i=0;i<_a7.length;i++){
if(FSUtil.visible(_a7[i])){
_a8=true;
break;
}
}
if(!_a8&&FSUtil.visible(_a6)){
FSUtil.hide(_a6);
this.updateTablePositionClasses(_a6);
}
}
}
var _aa=["input","textarea","select"];
for(var i=0;i<_aa.length;i++){
var _ab=_a1.getElementsByTagName(_aa[i]);
for(var j=0;j<_ab.length;j++){
var _ad=_ab[j];
if(_ad.type!="file"){
_ad.disabled=true;
}
}
}
};
this.updateTablePositionClasses=function(_ae){
var _af=YDOM.getAncestorByTagName(_ae,"div");
if(!YDOM.hasClass(_af,"fsPage")){
return;
}
var _b0=YDOM.getElementsByClassName("fsSection","table",_af);
var _b1=-1;
var _b2=-1;
for(var i=0;i<_b0.length;i++){
if(FSUtil.visible(_b0[i])){
if(_b1<0){
_b1=i;
YDOM.addClass(_b0[i],"fsFirstSection");
YDOM.removeClass(_b0[i],"fsMiddleSection");
YDOM.removeClass(_b0[i],"fsLastSection");
}else{
YDOM.addClass(_b0[i],"fsMiddleSection");
YDOM.removeClass(_b0[i],"fsFirstSection");
YDOM.removeClass(_b0[i],"fsLastSection");
}
YDOM.removeClass(_b0[_b2],"fsSingleSection");
_b2=i;
}
}
if(_b2>=0){
YDOM.removeClass(_b0[_b2],"fsMiddleSection");
if(_b2==_b1){
YDOM.addClass(_b0[_b2],"fsSingleSection");
YDOM.removeClass(_b0[_b2],"fsFirstSection");
YDOM.removeClass(_b0[_b2],"fsLastSection");
}else{
YDOM.addClass(_b0[_b2],"fsLastSection");
YDOM.removeClass(_b0[_b2],"fsFirstSection");
}
}
};
this.getCalculation=function(id){
for(var i=0;i<this.calculations.length;i++){
var _b6=this.calculations[i];
if(FSUtil.arrayIndexOf(_b6.fields,id)>=0){
return _b6;
}
}
return null;
};
this.getCalculationByTarget=function(_b7){
for(var i=0;i<this.calculations.length;i++){
var _b9=this.calculations[i];
if(_b9.target==_b7){
return _b9;
}
}
return null;
};
this.updateCalculations=function(id){
for(var i=0;i<this.calculations.length;i++){
var _bc=this.calculations[i];
if(FSUtil.arrayIndexOf(_bc.fields,id)>=0){
this.evalCalculation(_bc);
}
}
};
this.evalCalculation=function(_bd){
var _be=_bd.equation;
var _bf="";
for(var i=0;i<_bd.fields.length;i++){
var id=_bd.fields[i];
var _c2=new RegExp("\\["+id+"\\]","g");
var val=0;
var _c4=this.getFieldsByName("field"+id);
var _c5=_c4.length;
for(var j=0;j<_c5;j++){
var _c7=_c4[j];
var _c8;
switch(_c7.type.toLowerCase()){
case "radio":
case "checkbox":
if(_c7.value=="Other"&&YDOM.get(_c7.id+"value")){
_c8=YDOM.get(_c7.id+"value").value;
}else{
_c8=_c7.value;
}
var v=this.getNumber(_c8);
if(_c7.checked&&!isNaN(v)){
val+=v;
}
break;
case "select-multiple":
var _ca=_c7.options;
for(var k=0;k<_ca.length;k++){
var v=this.getNumber(_ca[k].value);
if(_ca[k].selected&&!isNaN(v)){
_c8=_ca[k].value;
val+=v;
}
}
break;
default:
_c8=YDOM.get(_c7).value;
var v=this.getNumber(YDOM.get(_c7).value);
if(!isNaN(v)){
val=v;
}
}
if(_c8&&_c8.indexOf("$")!=-1){
_bf="$";
}
}
_be=_be.replace(_c2,val);
}
var _cc=0;
try{
_cc=eval(_be);
}
catch(e){
}
var _c7=YDOM.get("field"+_bd.target);
if(YDOM.hasClass(_c7,"fsFormatNumber")){
_c7.value=_cc;
this.checkFormat(_c7);
}else{
_c7.value=_bf+_cc.toFixed(2);
}
if(_c7.type=="text"){
this.checkLogic(_bd.target);
}
this.updateCalculations(_bd.target);
};
this.getNumber=function(str){
if(!str){
return;
}
if(str.indexOf(" == ")!=-1){
var _ce=str.split(" == ");
str=_ce[1];
}
return parseFloat(str.replace(/[^\d\.\-]/g,""));
};
this.previousPage=function(_cf){
var _d0=YDOM.get("fsPage"+this.id+"-"+_cf);
if(!_d0){
return;
}
if(_cf<=1){
return;
}
var _d1=_cf-1;
while(!this.pageIsVisible(_d1)&&_d1>1){
_d1--;
}
var _d2=YDOM.get("fsPage"+this.id+"-"+_d1);
FSUtil.hide(_d0);
FSUtil.show(_d2);
this.updateProgress(_d1);
this.clearError(_cf);
FSUtil.hide("fsSubmit"+this.id);
FSUtil.scrollTo(_d2);
this.fitTableWidths(_d1);
this.page--;
};
this.nextPage=function(_d3){
var _d4=YDOM.get("fsPage"+this.id+"-"+_d3);
if(!_d4){
return;
}
if(_d3>=this.lastPage){
return;
}
if(this.checkRequired(_d3)){
var _d5=_d3+1;
while(!this.pageIsVisible(_d5)&&_d5<this.lastPage){
_d5++;
}
this.updateProgress(_d5);
var _d6=YDOM.get("fsPage"+this.id+"-"+_d5);
FSUtil.hide(_d4);
FSUtil.show(_d6);
if(_d5==this.lastPage){
FSUtil.show("fsSubmit"+this.id);
}
FSUtil.scrollTo(_d6);
this.fitTableWidths(_d5);
this.page++;
if(_d5==this.lastPage){
if(window["cp"+this.id]!=null){
window["cp"+this.id].parsePage();
}
}
}
};
this.fitTableWidths=function(_d7){
if(!/msie/i.test(navigator.userAgent)||/opera/i.test(navigator.userAgent)){
return;
}
var _d8="fsPage"+this.id+"-"+_d7;
var _d9=YDOM.getElementsByClassName("fsTable","table",_d8);
var max=0;
for(var i=0;i<_d9.length;i++){
var _dc=_d9[i].scrollWidth;
if(_dc>max){
max=_dc;
}
}
if(max){
YDOM.setStyle("fsForm"+this.id,"width",max+"px");
}
};
this.updateProgress=function(_dd){
if(!YDOM.get("fsProgress"+this.id+"-"+_dd)){
return;
}
var _de=YDOM.getElementsByClassName("fsPage","div","fsForm"+this.id).length;
if(_de<=1){
FSUtil.hide("fsProgress"+this.id+"-"+_dd);
return;
}
var _df=YDOM.get("fsProgressBarContainer"+this.id+"-"+_dd);
var _e0=YDOM.get("fsProgressBar"+this.id+"-"+_dd);
var _e1=100;
var _e2=_dd/_de;
if(_e2<0){
_e2=0;
}
if(_e2>1){
_e2=1;
}
var _e3=(_e1*_e2)+"px";
YDOM.setStyle(_e0,"width",_e3);
};
this.pageIsVisible=function(_e4){
var _e5=false;
var _e6=YDOM.getElementsByClassName("fsFieldCell","td","fsPage"+this.id+"-"+_e4);
for(var i=0;i<_e6.length;i++){
var _e8=_e6[i];
if(FSUtil.visible(_e8)&&!YDOM.hasClass(_e8,"fsHiddenCell")){
var _e9=YDOM.getAncestorByClassName(_e8,"fsSection");
if(!_e9||(FSUtil.visible(_e9)&&!YDOM.hasClass(_e9,"fsHiddenCell"))){
_e5=true;
}
}
}
var _ea=YDOM.getElementsByClassName("fsSection","table","fsPage"+this.id+"-"+_e4);
for(var i=0;i<_ea.length;i++){
var _e9=_ea[i];
if(FSUtil.visible(_e9)&&!YDOM.hasClass(_e9,"fsHiddenCell")){
_e5=true;
}
}
return _e5;
};
this.fieldIsVisible=function(_eb){
var _ec=_eb.parentNode;
while(_ec&&_ec.tagName.toLowerCase()!="body"&&!YDOM.hasClass(_ec,"fsFieldCell")){
_ec=_ec.parentNode;
}
var _ed=_ec&&_ec.tagName.toLowerCase()!="body"&&FSUtil.visible(_ec)&&!YDOM.hasClass(_ec,"fsHiddenCell")?true:false;
if(!_ed){
return false;
}
var _ee=_ec.parentNode;
while(_ee&&_ee.tagName.toLowerCase()!="body"&&!YDOM.hasClass(_ee,"fsSection")){
_ee=_ee.parentNode;
}
if(!_ee||_ee.tagName.toLowerCase()=="body"){
return _ed;
}
return FSUtil.visible(_ee)&&!YDOM.hasClass(_ee,"fsHiddenCell");
};
this.checkForm=function(){
var res=this.checkRequired(this.lastPage);
if(res){
var _f0=[];
var _f1=YDOM.getElementsByClassName("fsRequired","","fsForm"+this.id);
for(var i=0;i<_f1.length;i++){
var _f3=_f1[i];
if(!this.fieldIsVisible(_f3)){
if(_f3.id.indexOf("_")>=0){
var m=_f3.id.split("_");
_f0.push(m[0]);
}else{
_f0.push(_f3.name);
}
}
}
if(YDOM.get("hidden_fields"+this.id)){
YDOM.get("hidden_fields"+this.id).value=_f0.join(",");
}
if(YDOM.get("captcha"+this.id)){
if(YDOM.get("captcha_code_"+this.id).value==""){
this.captchaError();
return false;
}
}
return true;
}else{
return false;
}
};
this.submitForm=function(){
if(!this.checkForm()){
return;
}
if(YDOM.get("captcha"+this.id)){
YDOM.get("fsSubmitButton"+this.id).disabled=true;
var _f5=YDOM.get("fsForm"+this.id).action.replace(/index.php$/,"captcha.php");
this.scriptRequest(_f5+"?action=test&v=2&captcha_code="+YDOM.get("captcha_code_"+this.id).value+"&form="+this.id+"&fspublicsession="+YDOM.get("session_id"+this.id).value+"&r="+(new Date()).getTime());
}else{
YDOM.get("fsForm"+this.id).submit();
}
};
this.captchaError=function(){
YDOM.addClass("captcha"+this.id,"captchaError");
FSUtil.scrollTo("captcha"+this.id);
};
this.reloadCaptcha=function(_f6){
var _f7=YDOM.get("fsForm"+this.id).action.replace(/index.php$/,"captcha.php");
YDOM.get("captcha_image_"+this.id).src=_f7+"?fspublicsession="+_f6+"&r="+Math.random();
};
this.scriptRequest=function(req){
var _f9=document.getElementsByTagName("head");
if(!_f9.length){
YDOM.get("fsForm"+this.id).submit();
return;
}
_f9=_f9[0];
var _fa=document.createElement("script");
_fa.setAttribute("type","text/javascript");
_fa.setAttribute("charset","utf-8");
_fa.setAttribute("src",req);
_fa.setAttribute("id","scriptRequest"+this.scriptRequestCounter);
_f9.appendChild(_fa);
this.scriptRequestCounter++;
};
this.captchaTestCallback=function(_fb){
if(_fb.res=="OK"){
YDOM.get("fsForm"+this.id).submit();
}else{
this.captchaError();
}
YDOM.get("fsSubmitButton"+this.id).disabled=false;
};
this.calendarShow=function(_fc,_fd,_fe){
var _ff=YDOM.getRegion(_fe.containerId+"Link");
if(_ff){
YDOM.setStyle(_fe.oDomContainer,"top",_ff.top+"px");
YDOM.setStyle(_fe.oDomContainer,"left",(_ff.left+16)+"px");
}
var id=_fe.id.match(/(\d+)/);
id=id[1];
var cur=new Date;
var _102=YDOM.get("field"+id+"M");
var _103=_102&&_102.selectedIndex?_102.selectedIndex:cur.getMonth()+1;
var _104=YDOM.get("field"+id+"D");
var day=_104&&_104.selectedIndex?_104.selectedIndex:cur.getDate();
var _106=YDOM.get("field"+id+"Y");
var year=cur.getFullYear();
if(_106&&_106.selectedIndex){
var year=parseInt(_106.options[_106.selectedIndex].value,10);
if(year<100){
year+=2000;
}
}
_fe.select(_103+"/"+day+"/"+year);
_fe.setMonth(_103-1);
_fe.setYear(year);
_fe.render();
};
this.calendarSelect=function(type,args,_10a){
var id=_10a.id.match(/(\d+)/);
id=id[1];
var _10c=args[0];
var date=_10c[0];
var year=date[0],_10f=date[1],day=date[2];
var _111=YDOM.get("field"+id+"M");
if(_111){
_111.selectedIndex=_10f;
}
var _112=YDOM.get("field"+id+"D");
if(_112){
_112.selectedIndex=day;
}
var _113=YDOM.get("field"+id+"Y");
if(_113){
for(var y=1;y<_113.options.length;y++){
var _115=parseInt(_113.options[y].value,10);
if(_115<100){
_115+=2000;
}
if(_115==year){
_113.selectedIndex=y;
break;
}
}
}
_10a.hide();
};
this.textareaCharLimiter=function(id,_117){
var _118=YDOM.get("field"+id);
var _119=YDOM.get("fsCounter"+id);
var text=YDOM.get(_118).value;
if(text.length>_117){
_118.value=text.substring(0,_117);
}
_119.innerHTML=_117-YDOM.get(_118).value.length;
var _11b=YDOM.getRegion(_118.id);
if(_11b){
YDOM.setStyle(_119.id,"top",(_11b.bottom-FSUtil.getHeight(_119)-5)+"px");
YDOM.setStyle(_119.id,"left",(_11b.right-FSUtil.getWidth(_119)-25)+"px");
}
};
this.getFieldsByName=function(name){
var _11d=new Array();
var els=document.getElementsByName(name);
if(els.length>0){
for(var i=0;i<els.length;i++){
_11d.push(els[i]);
}
}else{
var els=document.getElementsByName(name+"[]");
for(var i=0;i<els.length;i++){
_11d.push(els[i]);
}
}
return _11d;
};
this.saveIncomplete=function(page,_121){
if(!confirm(YDOM.get("resumeConfirm")?YDOM.get("resumeConfirm").innerHTML:"Are you sure you want to leave this form and resume later?")){
return;
}
YDOM.get("incomplete"+this.id).value="true";
YDOM.get("fsForm"+this.id).submit();
};
this.checkFreeLink=function(){
var form=YDOM.get("fsForm"+this.id);
if(!YDOM.hasClass(form,"fsFormFree")){
return true;
}
var doc;
var type=YDOM.get("referrer_type"+this.id);
switch(type.value){
case "iframe":
doc=window.parent.document;
break;
case "js":
doc=window.document;
break;
default:
return true;
}
var _125=false;
var _126=doc.getElementsByTagName("a");
for(var i=0;i<_126.length;i++){
if((_126[i].href.indexOf("http://www.formspring.com/")==0)||(_126[i].href.indexOf("http://www.formstack.com/")==0)){
_125=true;
break;
}
}
if(_125){
return true;
}
this.showError(YDOM.get("embedError")?YDOM.get("embedError").innerHTML:"There was an error displaying the form. Please copy and paste the embed code again.");
FSUtil.hide(form);
return false;
};
this.checkMatrixOnePerColumn=function(id){
var ids=id.split("-");
var _12a=ids[0];
var _12b=ids[1];
var _12c=ids[2];
var _12d=YDOM.get("matrix-"+_12a).getElementsByTagName("input");
for(var i=0;i<_12d.length;i++){
var re=new RegExp("^"+_12a+"-\\d+-"+_12c+"$");
if(_12d[i].id!=id&&re.test(_12d[i].id)){
_12d[i].checked=false;
}
}
};
this.getNumberProperties=function(_130){
var _131={min:NaN,max:NaN,decimals:NaN};
var _132=_130.className.split(/\s+/);
for(var i=0;i<_132.length;i++){
var _134=_132[i];
var _135;
if(_135=_134.match(/^fsNumberMin-([\-\d]+)/)){
_131.min=parseInt(_135[1]);
}else{
if(_135=_134.match(/^fsNumberMax-([\-\d]+)/)){
_131.max=parseInt(_135[1]);
}else{
if(_135=_134.match(/^fsNumberDecimals-([\d]+)/)){
_131.decimals=parseInt(_135[1]);
}
}
}
}
return _131;
};
};
function FSUtil(){
};
FSUtil.checkAll=function(el){
var _137=el.name.replace("_all","_");
var i=1;
var e;
while(e=document.getElementById(_137+i)){
e.checked=el.checked;
i++;
}
form=document.getElementsByName("form");
form=form[0];
id=_137.replace("field","");
id=id.replace("_","");
eval("form"+form.value+".checkLogic("+id+")");
eval("form"+form.value+".updateCalculations("+id+")");
};
FSUtil.show=function(el){
YDOM.setStyle(el,"display","");
};
FSUtil.hide=function(el){
YDOM.setStyle(el,"display","none");
};
FSUtil.visible=function(el){
return YDOM.getStyle(el,"display")!="none";
};
FSUtil.scrollTo=function(el){
window.scroll(YDOM.getX(el),YDOM.getY(el));
};
FSUtil.getHeight=function(el){
var _13f=YDOM.getRegion(el);
var _140=_13f.bottom-_13f.top;
return isNaN(_140)?0:_140;
};
FSUtil.getWidth=function(el){
var _142=YDOM.getRegion(el);
var _143=_142.right-_142.left;
return isNaN(_143)?0:_143;
};
FSUtil.arrayIndexOf=function(arr,item){
for(var i=0;i<arr.length;i++){
if(arr[i]==item){
return i;
}
}
return -1;
};


