
/* donation.js */
function Donation(itemData){this.itemData=itemData;this.alertDlg=this.mkVerifyDlg();this.thankyouDlg=this.mkVerifyDlg("Thank you for your donation!",ondoneclose);Donation.cart=this;this.$makeForm();function ondoneclose(){window.location="shopcart.php";}}
Donation.cart=null;Donation.prototype.mkVerifyDlg=function(title,ondone){var thisptr=this;var dlgopts=Page.dlgOptions;var opts=$.extend({},dlgopts);var dlg=Sonata.DialogCtrl.makeDialogBox(opts);var okid="ok-btn"+document.uniqueId();var errid="ok-errmsg"+document.uniqueId();var html="<div id='"+errid+"'>&nbsp;</div>"
+"<br><div align='center' style='padding-top:10px;'><button id='"+okid+"' type='button'>Ok</button><div>";if(typeof title=='undefined')
title="Please fix the following:";dlg.setHtml(dlg.options.titleid,title);dlg.setHtml(dlg.options.bodyid,html);dlg.showOrig=dlg.show;dlg.show=showme;setTimeout(getelems,200);return dlg;function showme(errmsg,title){if(typeof title!='undefined')
dlg.setHtml(dlg.options.titleid,title);dlg.setHtml(errid,errmsg);dlg.showOrig();}
function getelems(){$("#"+okid).click(ok);}
function ok(){dlg.hide();if(typeof ondone=='function')
ondone();}}
Donation.prototype.$makeForm=function(){var fields={onetimeId:{type:"radiogrp",name:"repeat",bVerify:true,empty:"",errmsg:"Please select a repeat payment option."},amountId:{type:"text",name:"amount",idLabel:"amountLabelId",bVerify:true,empty:"",errmsg:"Please fill in the amount.",cb:amountCB},giftYesId:{type:"radiogrp",name:"gift",bVerify:true,empty:"",idLabel:"giftLabelId",errmsg:"Please select a gift option."},honorId:{type:"text",name:"honor",idLabel:"",bVerify:false,empty:"",errmsg:"Please fill in the In Honor of."},honorId:{type:"text",name:"inhonorof",idLabel:"",bVerify:false,empty:"",errmsg:"Please fill in the In Honor of."},memoryId:{type:"text",name:"inmemoryof",idLabel:"",bVerify:false,empty:"",errmsg:"Please fill in the In Memory of."},petMemoryId:{type:"text",name:"inmemoryofapet",idLabel:"",bVerify:false,empty:"",errmsg:"Please fill in the In Memory of a Pet."},commentId:{type:"textarea",name:"comment",idLabel:"",bVerify:false,empty:"",errmsg:"Please fill in the Comment field."}};this.form=new Sonata.Form(fields,{bShowRedArrows:true});this.submitBtn=$("#submitId");function amountCB(field,s){s=s.replace(/\$/g,"");if(s=="")return{ok:false,errmsg:field.errmsg};var info=Sonata.Form.getFloatInfo(s);if(info.ok==false)
return{ok:false,errmsg:"Donation amount must be a number."};if(info.number<=0)
return{ok:false,errmsg:"Donation amount should be greater than zero."};if(info.number<0)
return{ok:false,errmsg:"Donation amount must be at least $5.00."};return{ok:true,errmsg:""};}}
Donation.prototype.submit=function(ondone){var thisptr=this;var res=this.form.verify();var closedata={};if(res.ok){var data=makeData();if(true){if(thisptr.submitBtn.size()==1){thisptr.submitBtn[0].disabled=true;}
$.post("onlinestore/addshopcart.php",data,ondone,"text");}}
else{this.alertDlg.show(res.errmsg);}
function ondone(data){var desc=getMembership(closedata);if(desc!=""){thisptr.thankyouDlg.show(desc);}}
function getMembership(data){var d=data;var amount=d.amount;var mult=1;var repeat=d.repeat;switch(repeat){default:case"Annually":case"One time":mult=1;break;case"Monthly":mult=12;break;case"Quarterly":mult=4;break;}
var total=mult*amount;var desc="Contributions at this level are recognized at the ";if(total>=5&&total<=25){desc+="<b>Individual Donor</b> level. You will receive a Chimps Inc. postcard with images of all of the chimpanzees and a copy of our next newsletter.";}
else if(total>25&&total<=100){desc+="<b>Family Donor</b> level. You will receive a 5x7 glossy photo of one of our animal residents, a Chimps Inc. postcard, one-year subscription to our quarterly newsletter, and a 10% discount on merchandise.";}
else if(total>100&&total<=500){desc+="<b>Patron Donor</b> level. you will receive CD loaded with images of the chimpanzees, cats, and sanctuary grounds, a Chimps Inc. postcard, one-year subscription to our quarterly newsletter, and a 10% discount on merchandise. ";}
else if(total>500&&total<1000){desc+="<b>Associate Donor</b> level. You will receive CD loaded with images of the chimpanzees, cats, and sanctuary grounds, a Chimps Inc. postcard, chimp magnet, one-year subscription to our quarterly newsletter, and a 10% discount on merchandise. ";}
else if(total>=1000){desc+="<b>Benefactor Donor</b> level. You will receive CD loaded with images of the chimpanzees, cats, and sanctuary grounds, a Chimps Inc. postcard, chimp magnet, one-year subscription to our quarterly newsletter, and a 10% discount on merchandise. ";}
else{desc="Thank you for your donation!";}
return desc;}
function ondoneclose(){window.location="shopcart.php";if(thisptr.submitBtn.size()==1){}}
function makeData(){var d={};var name;for(name in thisptr.itemData){s=thisptr.itemData[name];s=s.replace(/"/g,'[[DQ]]');d[name]=s;}
for(name in res.values){var field=res.values[name];if(field.field.ctl!=null){d[field.field.name]=field.value;if(field.field.name=="amount")
d['price']=field.value;}}
d['qty']=1;closedata=d;var ret={cmd:"ADD",count:1,item1:Sonata.Form.toJSON(d)};return ret;}}
/* sonata.form.js */
Sonata.Form=function(fields,opts)
{this.fields=fields;this.opts=this.getOpts(opts);var name;for(name in fields){var o=fields[name];o.idField=name;o.arrowDiv=null;o.ctl=$("#"+name);if(typeof o.idLabel=='undefined')o.idLabel="";if(typeof o.name=='undefined')o.name=name;if(typeof o.grpName=='undefined')o.grpName=o.name;if(typeof o.empty=='undefined')o.empty="";if(typeof o.errmsg=='undefined')o.errmsg="Please fill in "+name;if(typeof o.cb=='undefined')o.cb=null;if(o.ctl.size()==0)
o.ctl=null;o.toString=this.getFieldToString(o);}
if(this.opts.bShowRedArrows)
this.$makeRedArrows();}
Sonata.Form.prototype.getFieldToString=function(ctl){var thisptr=this;return f;function f(){var s="{name:'"+ctl.name+"', type:'"+ctl.type+"', value:'"+thisptr.getValue(ctl)+"'}";return s;}}
Sonata.Form.defOpts={bShowRedArrows:true}
Sonata.Form.prototype.getOpts=function(opts){var name;if(typeof opts=='undefined')opts={};var ret={};for(name in Sonata.Form.defOpts){ret[name]=Sonata.Form.defOpts[name];}
for(name in opts)
ret[name]=opts[name];return ret;}
Sonata.Form.prototype.getValue=function(field){return Sonata.Form.getValue(field);}
Sonata.Form.prototype.setValue=function(field,value){Sonata.Form.setValue(field,value);}
Sonata.Form.getValue=function(field){if(field.ctl==null)return"";var v="";switch(field.type){case"textarea":case"hidden":case"text":v=Sonata.Form.getTextValue(field.ctl);break;case"select":v=Sonata.Form.getSelectValue(field.ctl,field.empty);break;case"checkbox":case"radio":v=Sonata.Form.getBtnValue(field.ctl);break;case"radiogrp":v=Sonata.Form.getRadioGrpValue(field);break;case"checkgrp":v=Sonata.Form.getCheckGrpValue(field);break;}
return Sonata.Form.escapeValue(v);}
Sonata.Form.getRadioGrpValue=function(field){var id="input[name='"+field.grpName+"']";var btns=$(id);var ret="";btns.each(cb);return ret;function cb(){if(this.checked)ret=this.value;}}
Sonata.Form.setRadioGrpValue=function(field,value){var btns=$("input[name='"+field.grpName+"']");var ret="";btns.each(cb);return ret;function cb(){if(this.value==value)
this.checked=true;else
this.checked=false;}}
Sonata.Form.getCheckGrpValue=function(field){var btns=$("input[name='"+field.grpName+"']");var ret="";var sep="";btns.each(cb);return ret;function cb(){if(this.checked){ret=sep+this.value;sep="|";}}}
Sonata.Form.setCheckGrpValue=function(field,value){var btns=$("input[name='"+field.grpName+"']");var values=value.split("|");var i,n=values.length;for(i=0;i<btns.size();i++)
btns[i].checked=false;for(i=0;i<n;i++){if(btns[i].value==values[i])
btns[i].checked=true;}}
Sonata.Form.escapeValue=function(value){var s=value.replace(/\n/g,"[NL]");s=s.replace(/"/g,"[DQ]");s=s.replace(/'/g,"[SQ]");s=s.replace(/\r/g,"");return s;}
Sonata.Form.unescapeValue=function(value){var s=value.replace(/\[DQ]/g,'"');s=s.replace(/\[NL]/g,"\n");s=s.replace(/\[SQ]/g,"'");return s;}
Sonata.Form.setValue=function(field,value){if(field.ctl==null)return"";value=Sonata.Form.unescapeValue(value);switch(field.type){case"textarea":case"hidden":case"text":Sonata.Form.setTextValue(field.ctl,value);break;case"select":Sonata.Form.setSelectValue(field.ctl,value);break;case"checkbox":case"radio":Sonata.Form.setBtnValue(field.ctl,value);break;case"radiogrp":Sonata.Form.setRadioGrpValue(field,value);break;case"checkgrp":Sonata.Form.setCheckGrpValue(field,value);break;}}
Sonata.Form.checkEmpty=function(field,value){if(value=="")return{ok:false,errmsg:field.errmsg};return{ok:true,errmsg:""};}
Sonata.Form.prototype.getData=function(){var name;var v,field;var ret={};for(name in this.fields){field=this.fields[name];v=this.getValue(field);ret[name]=v;}
return ret;}
Sonata.Form.prototype.setData=function(data){var name;var v,field;for(name in data){if(typeof this.fields[name]=='undefined')continue;field=this.fields[name];this.setValue(field,data[name]);}}
Sonata.Form.prototype.clearFields=function(){var name;var field;for(name in this.fields){field=this.fields[name];if(field.ctl==null)continue;switch(field.type){case'hidden':case'select':case"text":this.setValue(field,"");break;case'radio':case'checkbox':case"radiogrp":case"checkgrp":this.setValue(field,false);break;}}}
Sonata.Form.prototype.verify=function(){var values={};var name;var i,n;var error="";var ok=true;var fok=true;var fld;this.hideRedArrows();for(name in this.fields){var o=this.fields[name];var tvalue=this.getValue(o);fld={field:o,value:tvalue,ok:true,toString:this.getFieldToString(o)};values[name]=fld;fok=true;if(o.ctl!=null&&o.bVerify){if(typeof o.cb=='function'){var t=o.cb(o,tvalue);if(t.ok==false)
error+=t.errmsg+"<br>";fok=t.ok;}
else{switch(o.type){case'hidden':case'select':case"text":case"radiogrp":case"checkgrp":if(tvalue==""){error+=o.errmsg+"<br>";fok=false;}
break;case'radio':case'checkbox':if(tvalue==false){error+=o.errmsg+"<br>";fok=false;}
break;}}}
fld.ok=fok;if(ok==true)ok=fok;}
var ret={ok:ok,errmsg:error,values:values};if(ok==false)
this.showRedArrows(ret);return ret;}
Sonata.Form.prototype.eachField=function(cb){if(typeof cb!='function')return;var flds=this.fields;var name;for(name in flds){cb(name,flds[name]);}}
Sonata.Form.prototype.$makeRedArrows=function(){var arrows={};this.eachField(doit);this.arrows=arrows;function doit(id,field){var arrowid=id+"ARROW";var elem=field.ctl;if(elem==null)return;if(field.idLabel!=""){elem=$("#"+field.idLabel);if(elem.size()==0)
elem=field.ctl;}
var pos=elem.offset();var div=document.createElement("div");div.id=arrowid;div.style.display="none";div.style.position="absolute";var left=pos.left-14;var top=pos.top-5;div.style.left=left+"px";div.style.top=top+"px";div.innerHTML="<img src='"+Sonata.JSPLATFORM+"images/redarrow.gif'>";document.body.appendChild(div);field.arrowDiv={div:$(div),elem:elem,left:left,top:top};return;}}
Sonata.Form.prototype.hideRedArrows=function(){if(this.opts.bShowRedArrows==false)return;this.eachField(doit);function doit(id,field){if(field.arrowDiv!=null){field.arrowDiv.div.hide();}}}
Sonata.Form.prototype.showRedArrows=function(vflds){if(this.opts.bShowRedArrows==false)return;if(vflds.ok==true){this.hideRedArrows();return;}
var name;var flds=vflds.values;for(name in flds){var p=flds[name];if(p.ok)
hideArrow(p.field);else
showArrow(p.field);}
function hideArrow(field){if(field.arrowDiv!=null){field.arrowDiv.div.hide();}}
function showArrow(field){if(field.arrowDiv!=null){var p=field.arrowDiv;var ctl=field.arrowDiv.elem;var pos=ctl.offset();var w=p.div.width();var h2=p.div.height();var h=ctl.height();var dif=h-h2;if(dif<=0)dif=0;else dif=dif/2;var left=pos.left-w-4;var top=pos.top+dif;p.left=left;p.top=top;p.div.css("left",left+"px");p.div.css("top",top+"px");field.arrowDiv.div.show();}}}
Sonata.Form.prototype.toJSON=function(obj){return Sonata.Form.toJSON(obj);}
Sonata.Form.toJSON=function(obj){s=doit(obj);return s;function doit(obj){var t=obj instanceof Array;var s="";if(t)
s+=getArray(obj);else if(typeof obj=="object")
s+=getObject(obj);else
s+='"'+obj+'"';return s;}
function getArray(arr){var s="[";var i,n=arr.length;var sep="";for(i=0;i<n;i++){var p=arr[i];s+=sep+doit(p);sep=" , ";}
s+="]";return s;}
function getObject(obj){var name;var s="{";var sep="";for(name in obj){var v=doit(obj[name]);s+=sep+'"'+name+'" : '+v+'';sep=" , ";}
s+=" }";return s;}}
Sonata.Form.getSelectValue=function(ctl,empty){if(typeof empty=='undefined')
empty="";var elem=ctl[0];if(elem.selectedIndex<0)
return"";var s=elem.options[elem.selectedIndex].value;if(s==empty)return"";return s;}
Sonata.Form.setSelectValue=function(ctl,value){var elem=ctl[0];var i,n=elem.options.length;if(value==""){elem.selectedIndex=0;}
else{for(i=0;i<n;i++){var o=elem.options[i];if(o.value==value){elem.selectedIndex=i;break;}}}}
Sonata.Form.getTextValue=function(ctl){return ctl[0].value;}
Sonata.Form.setTextValue=function(ctl,value){ctl[0].value=value;}
Sonata.Form.getBtnValue=function(ctl){return ctl[0].checked;}
Sonata.Form.setBtnValue=function(ctl,on){ctl[0].checked=on;}
Sonata.Form.getIntInfo=function(s){var num=0;var ok=true;num=parseInt(s);if(isNaN(num)){ok=false;num=0;}
return{ok:ok,number:num};}
Sonata.Form.getFloatInfo=function(s){var num=0;var ok=true;num=parseFloat(s);if(isNaN(num)){ok=false;num=0;}
return{ok:ok,number:num};}
Sonata.Form.isInt=function(s){var t=Sonata.Form.getIntInfo(s);return t.ok;}
Sonata.Form.isFloat=function(s){var t=Sonata.Form.getFloatInfo(s);return t.ok;}
Sonata.Form.isNumber=function(s){var t=Sonata.Form.getIntInfo(s);if(t.ok==false)
t=Sonata.Form.getFloatInfo(s);return t.ok;}
Sonata.Form.getInt=function(s){var num=0;num=parseInt(s);if(isNaN(num))
num=0;return num;}
Sonata.Form.getNumber=function(s){var d=Sonata.Form.getFloatInfo(s);return d.number;}
Sonata.Form.getFloat=function(s){var num=0;num=parseFloat(s);if(isNaN(num))
num=0;return num;}
Sonata.Form.eval=function(text)
{var v='('+text+')';return eval(v);}
/* payment.js */
function Payments(){}
Payments.prototype.startup=function(shoppingCartData){var flds={};var paymentPage="https://www.chimps-inc.org/payments/payment.php";var thankyouPage="http://www.chimps-inc.org/thankyou.php";$(window).scrollTop(0);var dlgopts=Page.dlgOptions;if(false){flds.shippingvar=$("#shipping-information :text");flds.billingvar=$("#billing-information :text");flds.ccvar=$("#credit-card-information :input");}
else{flds.shippingvar=$("#shipping-information").find("input");flds.billingvar=$("#billing-information").find("input");flds.ccvar=$("#credit-card-information").find("input").add("select");}
flds.copyshippingbtn=$("#copy-shipping-btn").click(copyshipping);flds.copycentershippingbtn=$("#copyToBillingId").click(copyshipping);flds.copycenterbillingbtn=$("#copyToShippingId").click(copybilling);flds.paynowbtn=$("#paynow-btn").click(paynow);flds.calcshippingbtn=$("#calculate-shipping-btn").click(calcShipping);flds.toZip=$("#calcZipcodeId");flds.continueshoppingbtn=$("#continue-shopping-btn").click(continueShopping);flds.payingDlg=mkPayingDlg();flds.payingDoneDlg=mkPayingDoneDlg();flds.payingBadDlg=mkPayingBadDlg();flds.verifyBadDlg=mkVerifyBadDlg();flds.alertDlg=mkVerifyDlg();flds.allvar=$("#not a valid id").add(flds.ccvar).add(flds.shippingvar).add(flds.billingvar);flds.fields={};var redopts={text:"",css:{'background-color':"transparent",'font-size':"9pt",'font-family':"arial",color:"red",padding:"2px 2px 2px 2px",border:"none 1px #aaaaaa",height:"15px"},dx:-3,dy:1};var fldopts={required:true,emptyValue:""}
flds.allvar.each(addf);clearFields();function addf(i){var p=$(this);var name=p.attr("name");var lab=$("#"+this.id+"-label");var f;var opts=$.extend({},fldopts);if($.metadata){opts=$.extend(opts,$.metadata.get(this));}
var olddx=redopts.dx;if(name=="ccexpmonth"||name=="ccexpyear")
redopts.dx-=10;var vfnc=null;if(name=="ccnumber")
vfnc=ccnumberValidate;f=flds.fields[name]={name:name,id:this.id,p:p,label:lab,arrow:lab.redarrow('get',redopts),required:opts.required,validateFnc:vfnc,emptyValue:opts.emptyValue,value:"",ok:false};redopts.dx=olddx;}
function ccnumberValidate(name,field){var value=field.value;if(value=="")return{ok:false,errmsg:"No credit card number"};var type=$("#cctype").val();var clen=type=='American Express'?15:16;var s=value.replace(/-/g,"");if(s.length!=clen)
return{ok:false,errmsg:"Incorrect credit card number length."};if(checkDigits(s)==false)
return{ok:false,errmsg:"Credit card number must contain only numbers and dashes."};return{ok:true,errmsg:""};}
function checkDigits(s){var lo="0".charCodeAt(0);var hi="9".charCodeAt(0);var i,n=s.length;for(i=0;i<n;i++){var c=s.charCodeAt(i);if(c<lo||c>hi){return false;}}
return true;}
function paynow(){hideArrows();getData();if(checkData()==false){showArrows();flds.verifyBadDlg.show();}
else{flds.payingDlg.show();var data=getJSONdata();$.post(paymentPage,{cmd:'payment',data:data},donePayment,"text");}
function donePayment(response){flds.payingDlg.hide();var d=Sonata.eval(response);if(d.ok){clearFields();location.replace(thankyouPage);}
else{flds.payingBadDlg.show(d.errmsg);}}
function next(){flds.payingBadDlg.show("Credit card has expired.");flds.payingDlg.hide();}}
function getJSONdata(){var data={};each(get);var js=JSON.stringify(data);return js;function get(name,f){data[name]=f.value;}}
function mkPayingDlg(){var opts=$.extend({},dlgopts);var dlg=Sonata.DialogCtrl.makeDialogBox(opts);var html="Your payment is being processed. Please wait.";dlg.setHtml(dlg.options.titleid,"Processing Payment");dlg.setHtml(dlg.options.bodyid,html);return dlg;}
function mkPayingDoneDlg(){var opts=$.extend({},dlgopts);var dlg=Sonata.DialogCtrl.makeDialogBox(opts);var okid="payment-done-ok-btn";var html="Chimps Inc. thanks you for your order.<br><br>Clicking OK will take you to the Chimps Inc. Home page."
+"<br><div align='center' style='padding-top:10px;'><button id='"+okid+"' type='button'>Ok</button><div>";dlg.setHtml(dlg.options.titleid,"Payment Processed");dlg.setHtml(dlg.options.bodyid,html);dlg.showOrig=dlg.show;dlg.show=showme;setTimeout(getelems,200);return dlg;function showme(){dlg.showOrig();}
function getelems(){$("#"+okid).click(ok);}
function ok(){clearFields()
dlg.hide();}}
function mkPayingBadDlg(){var opts=$.extend({},dlgopts);var dlg=Sonata.DialogCtrl.makeDialogBox(opts);var okid="payment-bad-ok-btn";var bodyid="payment-bad-body";var html="<div>A problem was encountered while processing your credit card:"
+"<div id='"+bodyid+"' style='padding:5px 0px 8px 10px;font-weight:bold;'>&nbsp;</div>"
+"Please make corrections and click the Pay Now button again.</div>"
+"<div align='center' style='padding-top:10px;'><button id='"+okid+"' type='button'>Ok</button><div>";dlg.setHtml(dlg.options.titleid,"Problem with transaction!");dlg.setHtml(dlg.options.bodyid,html);dlg.showOrig=dlg.show;dlg.show=showme;setTimeout(getelems,200);return dlg;function showme(html){$("#"+bodyid).html(html);dlg.showOrig();}
function getelems(){$("#"+okid).click(ok);}
function ok(){dlg.hide();}}
function mkVerifyDlg(title,ondone){var thisptr=this;var dlgopts=Page.dlgOptions;var opts=$.extend({},dlgopts);var dlg=Sonata.DialogCtrl.makeDialogBox(opts);var okid="ok-btn"+document.uniqueId();var errid="ok-errmsg"+document.uniqueId();var html="<div id='"+errid+"'>&nbsp;</div>"
+"<br><div align='center' style='padding-top:10px;'><button id='"+okid+"' type='button'>Ok</button><div>";if(typeof title=='undefined')
title="Please fix the following:";dlg.setHtml(dlg.options.titleid,title);dlg.setHtml(dlg.options.bodyid,html);dlg.showOrig=dlg.show;dlg.show=showme;setTimeout(getelems,200);return dlg;function showme(errmsg,title){if(typeof title!='undefined')
dlg.setHtml(dlg.options.titleid,title);dlg.setHtml(errid,errmsg);dlg.showOrig();}
function getelems(){$("#"+okid).click(ok);}
function ok(){dlg.hide();if(typeof ondone=='function')
ondone();}}
function mkVerifyBadDlg(){var opts=$.extend({},dlgopts);var dlg=Sonata.DialogCtrl.makeDialogBox(opts);var okid="verify-bad-ok-btn";var bodyid="verify-bad-body";var html="<div>Some of the required fields are empty or not formatted correctly. Please fix the fields marked with <img src='/sonata.lib/images/redarrow.gif' />.</div>"
+"<div align='center' style='padding-top:10px;'><button id='"+okid+"' type='button'>Ok</button><div>";dlg.setHtml(dlg.options.titleid,"Please fix the fields...");dlg.setHtml(dlg.options.bodyid,html);dlg.showOrig=dlg.show;dlg.show=showme;setTimeout(getelems,200);return dlg;function showme(html){$("#"+bodyid).html(html);dlg.showOrig();}
function getelems(){$("#"+okid).click(ok);}
function ok(){dlg.hide();}}
function clearFields(){each(clear);function clear(name,f){f.value=f.emptyValue;switch(name){case"cctype":f.value="Visa";break;case"ccexpmonth":f.value="01";break;case"ccexpyear":f.value="2010";break;}
f.p.val(f.value);}}
function getData(){var name;each(get);function get(name,f){var v=f.p.val();f.value=v;}}
function setData(data){var name,f;var fields=flds.fields;for(name in data){if(typeof fields[name]=='undefined')continue;f=fields[name];f.p.val(data[name]);}}
function showArrows(){var name;var first=null;each(show);if(first!=null){var offs=first.label.offset();var w=$(window);if(w.scrollTop()>offs.top){w.scrollTop(offs.top-10);}}
function show(name,f){if(f.ok==false){if(first==null)first=f;f.arrow.show();}
else f.arrow.hide();}}
function hideArrows(){var name;each(hide);function hide(name,f){f.arrow.hide();}}
function each(f){var name;for(name in flds.fields){f(name,flds.fields[name]);}}
function checkData(){var name;var ok=true;each(check);return ok;function check(name,f){f.ok=true;if(typeof f.validateFnc=='function'){var res=f.validateFnc(name,f);if(res.ok==false){ok=false;f.ok=false;}}
else if(f.required&&f.emptyValue==f.value){ok=false;f.ok=false;}}}
function copyshipping(){var data={};flds.shippingvar.each(get);flds.billingvar.each(put);function get(){var p=$(this);var name=p.attr('name');data[name]=p.val();}
function put(){var p=$(this);var name=p.attr('name');var sname=name.replace("bill","ship");var v=data[sname];p.val(v);}}
function copybilling(){var data={};flds.billingvar.each(get);flds.shippingvar.each(put);function get(){var p=$(this);var name=p.attr('name');data[name]=p.val();}
function put(){var p=$(this);var name=p.attr('name');var sname=name.replace("ship","bill");var v=data[sname];p.val(v);}}
function calcShipping(){var zip=flds.toZip.val();var thisptr=this;if(zip!=""){var ret={cmd:"SETZIP",tozipcode:zip};$.post("onlinestore/addshopcart.php",ret,ondone,"text");}
function ondone(d){d=Sonata.Form.eval(d);if(d.error==""){$("#paymentShippingId").html(d.shipping.toFixed(2));shoppingCartData.shipping=d.shipping;shoppingCartData.grandTotal=shoppingCartData.amount+d.shipping;$("#paymentTotalId").html(shoppingCartData.grandTotal.toFixed(2));}
else if(d.error!=""){flds.alertDlg.show(d.error,"Problem with shipping estimate:");}}}
function continueShopping(){location.replace("getcatalogtoc.php");}}
/* shopcart.js */
function ShopCart(data){this.items=data.items;this.shipping=data.shipping;this.grandTotal=data.total;this.alertDlg=this.mkVerifyDlg();this.paymentPage="payment.php";this.paymentPage="https://www.chimps-inc.org/payment.php";ShopCart.cart=this;this.$fillIn();}
ShopCart.cart=null;ShopCart.prototype.mkVerifyDlg=function(title,ondone){var thisptr=this;var dlgopts=Page.dlgOptions;var opts=$.extend({},dlgopts);var dlg=Sonata.DialogCtrl.makeDialogBox(opts);var okid="ok-btn"+document.uniqueId();var errid="ok-errmsg"+document.uniqueId();var html="<div id='"+errid+"'>&nbsp;</div>"
+"<br><div align='center' style='padding-top:10px;'><button id='"+okid+"' type='button'>Ok</button><div>";if(typeof title=='undefined')
title="Please fix the following:";dlg.setHtml(dlg.options.titleid,title);dlg.setHtml(dlg.options.bodyid,html);dlg.showOrig=dlg.show;dlg.show=showme;setTimeout(getelems,200);return dlg;function showme(errmsg,title){if(typeof title!='undefined')
dlg.setHtml(dlg.options.titleid,title);dlg.setHtml(errid,errmsg);dlg.showOrig();}
function getelems(){$("#"+okid).click(ok);}
function ok(){dlg.hide();if(typeof ondone=='function')
ondone();}}
ShopCart.prototype.verify=function(){var d=this.items;var i,n=d.length;var p;var ret={cmd:"REPLACEALL",count:n};var curI=1;var v;var error="";for(i=0;i<n;i++){var p=d[i];var rmId=$("#removeId"+i);if(rmId.size()==1&&Sonata.Form.getBtnValue(rmId))continue;var amtId=$("#amountId"+i);var sizeId=$("#sizechoiceId"+i);var colorId=$("#colorchoiceId"+i);var qtyId=$("#qtyId"+i);var repeatId=$("#repeatId"+i);var giftId=$("#giftId"+i);var info,s;if(qtyId.size()==1){s=Sonata.Form.getTextValue(qtyId);if(s==""){error+="Please set the QTY for item="+p.itemid+".<br>";}
else{info=Sonata.Form.getIntInfo(s);if(info.ok==false||info.number<=0){error+="Qty should be greater than zero for item="+p.itemid+".<br>";}
else
p.qty=info.number;}}
if(amtId.size()==1){s=Sonata.Form.getTextValue(amtId);if(s==""){error+="Please set the Amount for item="+p.itemid+".<br>";}
else{info=Sonata.Form.getFloatInfo(s);if(info.ok==false||info.number<0){error+="Amount must be at least $5.00 for item="+p.itemid+".<br>";}
else
p.price=info.number;}}
if(sizeId.size()==1){v=Sonata.Form.getSelectValue(sizeId);if(v==""){error+="Select a size for item="+p.itemid+".<br>";}
p.sizechoice=v;}
if(colorId.size()==1){v=Sonata.Form.getSelectValue(colorId,false);if(v==""){error+="Select a color for item="+p.itemid+".<br>";}
p.colorchoice=v;}
if(repeatId.size()==1){v=Sonata.Form.getSelectValue(repeatId,false);if(v==""){error+="Select a repeat contribution for item="+p.itemid+".<br>";}
p.repeat=v;}
if(giftId.size()==1){v=Sonata.Form.getSelectValue(giftId,false);if(v==""){error+="Select a gift for item="+p.itemid+".<br>";}
p.gift=v;}
if(error!="")continue;ret["item"+curI]=toJSON(p);curI++;}
if(error!=""){this.alertDlg.show(error,"Please fix the following:");return{ok:false,values:ret};}
return{ok:true,values:ret};function toJSON(p){var np={};for(name in p){var s=p[name];if(typeof s=='string'){if(s.indexOf('"')>=0){s=s.replace(/"/g,"[[DQ]]");}}
np[name]=s;}
s=JSON.stringify(np);return s;}}
ShopCart.prototype.saveCart=function(ondone){var ret=this.verify();if(ret.ok){$.post("onlinestore/addshopcart.php",ret.values,ondone,"text");}}
ShopCart.prototype.clickRefresh=function(){this.saveCart(ondone);function ondone(response){window.location.replace("shopcart.php");}}
ShopCart.prototype.clickPayNow=function(){var thisptr=this;this.saveCart(ondone);function ondone(response){window.location=thisptr.paymentPage;}}
ShopCart.prototype.clickContinueShopping=function(){if(false)this.saveCart(ondone);else ondone("");function ondone(response){window.location="getcatalog.php";}}
ShopCart.prototype.clickZip=function(){var thisptr=this;var e=$("#zipcodeId");if(e.size()==1){var zip=Sonata.Form.getTextValue(e);if(zip!=""){var ret={cmd:"SETZIP",tozipcode:zip};$.post("onlinestore/addshopcart.php",ret,ondone,"text");}}
function ondone(d){var ship=$("#shippingId");d=Sonata.Form.eval(d);thisptr.shipping=d.shipping;if(ship.size()>0){thisptr.setShippingField(d.shipping);thisptr.calcTotal();thisptr.setTotalField(thisptr.grandTotal);if(d.error!=""){thisptr.alertDlg.show(d.error,"Problem with shipping:");}}}}
ShopCart.prototype.setShippingField=function(value){var ship=$("#shippingId");if(ship.size()>0){ship[0].innerHTML=value.toFixed(2);}}
ShopCart.prototype.calcTotal=function(){var i,n=this.items.length;var total=0;for(i=0;i<n;i++){var p=this.items[i];total+=Sonata.Form.getInt(p.qty)*Sonata.Form.getNumber(p.price);}
total+=this.shipping;this.grandTotal=total;return total;}
ShopCart.prototype.setTotalField=function(value){var total=$("#grandTotalId");if(total.size()>0){total[0].innerHTML=value.toFixed(2);}}
ShopCart.prototype.$fillIn=function(){var d=this.items;var i,n=d.length;for(i=0;i<n;i++){var e;var item=d[i];e=$("#qtyId"+i).val(item.qty);e=$("#sizechoiceId"+i).val(item.sizechoice);e=$("#colorchoiceId"+i).val(item.colorchoice);e=$("#amountId"+i).val(item.price);e=$("#repeatId"+i).val(item.repeat);e=$("#giftId"+i).val(item.gift);}}
/* page.js */
function log(s){if(typeof console!='undefined')
console.debug(s);else
mprint(s);}
function Page(){Page.current=this;}
Page.dlgOptions={moverBgColor:"rgb(178,1,1)",moverCss:"",titleCss:"color:#ffffff;",bodyCss:"",closeBtn:false,closeOnEsc:false,modal:true,bgColor:"#000000",bgAlpha:.2};Page.prototype.loadDropMenus=function(){var opt={dx:10,minWidth:100};new Sonata.DropMenu("aboutus","navAboutItems",opt);new Sonata.DropMenu("meet","navMeetItems",opt);new Sonata.DropMenu("support","navSupportItems",opt);new Sonata.DropMenu("photos","navPhotoItems",opt);new Sonata.DropMenu("news","navNewsItems",opt);new Sonata.DropMenu("education","navEducationItems",opt);}
Page.prototype.footerLogos=function(){var logos=$(".footerlogos");var f=$("#footer");var speed=500;logos.each(setup);function setSonataInfoNOTUSED(){var offs=f.offset();var fwid=f.width();var son=$("<div title='Phone: 541-318-0567'>Website by Sonata, Inc.</div>");var top=offs.top+f.height()-15;var left=offs.left+f.width()-135;son.css({position:"absolute",'font-size':'7pt',cursor:'default',left:left,top:top,overflow:'hidden'});document.body.appendChild(son[0]);}
function setup(){var id=this.id+"helpdiv";var logo=$(this);var help=$("#"+this.id+"help");var helpdiv=$("#"+this.id+"helpdiv");var offs=f.offset();var fwid=f.width();var top=offs.top;var hwid=help.width();var hht=help.height();var hleft=(offs.left+fwid-15-hwid);var htop=(top-hht);help.css("left",hleft+"px");help.css("top",htop+"px");var mydrawer=new Sonata.drawer(help,{direction:Sonata.drawer.BOTTOM,div:helpdiv,removedrawer:true});mydrawer.positionHelp=getPositionHelp(help,hwid,hht);mydrawer.options.inHelp=false;var tracker=new Sonata.MouseTracker({divs:[help,logo],cb:getTrackerCB(mydrawer),getDims:null,connector:{on:false}});var opts={sensitivity:7,interval:200,timeout:0,over:getMover(mydrawer,this.id,tracker),out:getMout(mydrawer,this.id)}
logo.hoverIntent(opts);}
function getPositionHelp(help,hwid,hht){return positionHelp;function positionHelp(){var f=$("#footer");var offs=f.offset();var fwid=f.width();var top=offs.top;var hleft=(offs.left+fwid-15-hwid);var htop=(top-hht);help.css("left",hleft+"px");help.css("top",htop+"px");}}
function getTrackerCB(drawer){return trackerCB;function trackerCB(traker,type,rdiv,evt){if(type==Sonata.MouseTracker.TYPE_OUT){traker.stop();drawer.hide();drawer.options.inHelp=false;}}}
function prDims(dims){var i,n=dims.length;for(i=0;i<n;i++){Sonata.prObject("dims"+i,dims[i]);}}
function getMover(drawer,id,traker){return mover;function mover(){if(drawer.options.inHelp)return;drawer.options.inHelp=true;drawer.positionHelp();drawer.show();traker.start();}}
function getMout(drawer,id){return mout;function mout(evt){}}}
Page.prototype.startup=function(){var thisptr=this;if(Sonata.isIE){$("#signupbtn").height(23).css("margin-top","0px");}
this.loadDropMenus();var signup=$("#signupbtn");var signupemail=$("#emailnewsletter");var signupAlert=mkBadEmailDlg();signupemail.val("").labelify();signup.click(dosignup);setTimeout(dofooter,1000);function dofooter(){thisptr.footerLogos();}
function mover(){$(this).css("background-color","red");}
function mout(){$(this).css("background-color","white");}
function dosignup(){var v=signupemail.val();if(v.indexOf("@")==-1){signupAlert.show("");}
else{var ret={cmd:"emailnewsletter",email:v};$.post("/v2/php/http_savedata.php",ret,onsignup,"text");}}
function onsignup(response){signupAlert.show("You have just signed up for the Chimps Inc. electronic newsletter. You will receive a confirmation email shortly at "+signupemail.val()+".");}
function mkBadEmailDlg(){var opts=$.extend({},Page.dlgOptions);var dlg=Sonata.DialogCtrl.makeDialogBox(opts);var okid="bad-email-ok-btn";var bodyid="bad-email-body";var defhtml="The email address is either empty or not in the correct format. Please fix it and click the sign up button again.";var html="<div id='"+bodyid+"'>"+defhtml+"</div>"
+"<div align='center' style='padding-top:10px;'><button id='"+okid+"' type='button'>Ok</button><div>";dlg.setHtml(dlg.options.titleid,"Please fix the fields...");dlg.setHtml(dlg.options.bodyid,html);dlg.showOrig=dlg.show;dlg.show=showme;setTimeout(getelems,500);return dlg;function showme(html){if(html!=""){dlg.setHtml(bodyid,html);}
else{dlg.setHtml(bodyid,defhtml);}
dlg.showOrig();}
function getelems(){$("#"+okid).click(ok);}
function ok(){dlg.hide();}}}
/* pagehome.js */
function PageHome(){}
PageHome.prototype.startSlider=function(){var thisptr=this;this.pics=null;this.slideOptions=null;var pics;Sonata.Timer.setTimer(startMain,400);function startMain(){thisptr.positionFrame();thisptr.pics=pics=$("#pics");var frame=$("#frameId");pics.cycle({fx:"fade",pause:0,timeout:4000,speed:2000,sync:1,fit:1,after:onAfter,before:onBefore});pics.css("visibility","visible");frame.hover(mover,mout);frame.click(donext);function donext(){thisptr.nextPhoto();}
function mover(event){pics.cycle("pause");}
function mout(event){pics.cycle("resume");}
function onBefore(curr,next,opts){thisptr.slideOptions=opts;}
function onAfter(curr,next,opts){}}
function onpause(slider,fPaused){var pid=$("#sliderPauseId");if(fPaused)pid.css("visibility","visible");else pid.css("visibility","hidden");}
function prPos(id){var elem=$(id);var offs=elem.offset();Sonata.prObject(id+" offset",offs);return id;}}
PageHome.prototype.prevPhoto=function(){var opts=this.slideOptions;if(opts!=null){var curr=opts.currSlide;var last=opts.slideCount;if(curr>0)
this.pics.cycle(curr-1);else this.pics.cycle(last-1);}}
PageHome.prototype.nextPhoto=function(){var opts=this.slideOptions;if(opts!=null){var curr=opts.currSlide;var last=opts.slideCount-1;if(curr<last)
this.pics.cycle(curr+1);else this.pics.cycle(0);}}
PageHome.prototype.positionFrame=function(){var show=$("#pics");var pos=show.offset();$frame=$("#frameId");$frame.css("z-index",50);$frame.css("position","absolute");var dx=29;var dy=24;var left=pos.left-dx;var top=pos.top-dy;$frame.css("left",left+"px");$frame.css("top",top+"px");document.body.appendChild($frame[0]);$frame.show();}
PageHome.prototype.readySlider=function(){var thisptr=this;var o=new Image();o.onload=imgLoaded;o.src="images/bgheaderbio.png";function imgLoaded(){thisptr.startSlider();}}
PageHome.prototype.startup=function(){var slider=$("#slidetd");if(slider.size()>0)
this.startSlider();}
PageHome.prototype.setMtSilo=function(){}
/* pagephotos.js */
function PagePhotos(frameId,picsId,showFrame,opts){var defOpts={random:0};opts=$.extend({},defOpts,opts);var thisptr=this;this.random=opts.random;this.current=this;this.bRunning=false;this.frameId=frameId;this.showFrame=showFrame;this.picsId=picsId;this.frame=$("#"+frameId);this.pics=$("#"+picsId);this.prevBtn=$("#ssprevId");this.nextBtn=$("#ssnextId");this.slideOptions=null;setTimeout(pos,500);function pos(){thisptr.frame=thisptr.positionFrame(thisptr.showFrame);}}
PagePhotos.prototype.startPhotos=function(file){var thisptr=this;var pics=this.pics.css("visibility","hidden").css("text-align","center");if(thisptr.bRunning)
pics.cycle("stop").cycle("destroy");thisptr.bRunning=false;if(file==""){start("");return;}
var ret={cmd:"GETPHOTOLIST",type:file};$.post("php/http_savedata.php",ret,ondone,"text");function ondone(response){var d=Sonata.eval(response);var list=d.list;var s="";var i,n=list.length;for(i=0;i<n;i++){var f=list[i];var padding=Math.floor((550-f.width)/2);loadimage(f.file);s+="<img src='"+f.file+"' width='"+f.width+"' height='"+f.height+" style='margin-left:"+padding+"px;' />\n";}
start(s);}
function loadimage(src){var img=new Image();img.src=src;}
function start(html){var pics=thisptr.pics.css("visibility","hidden").css("text-align","center");pics[0].innerHTML=html;if(html!=""){thisptr.bRunning=true;thisptr.startSlider(thisptr.showFrame);}}}
PagePhotos.prototype.startSlider=function(){var thisptr=this;var pics;Sonata.Timer.setTimer(startMain,500);function onprev(){mprint("prev clicked");}
function startMain(){pics=thisptr.pics;var frame=thisptr.frame;pics.cycle({fx:"fade",pause:0,timeout:4000,speed:2000,prev:thisptr.prevBtn,next:thisptr.nextBtn,sync:1,fit:0,after:onAfter,before:onBefore});pics.css("visibility","visible").css("text-align","center");frame.hover(mover,mout);function donext(){thisptr.nextPhoto();}
function mover(event){pics.cycle("pause");}
function mout(event){pics.cycle("resume");}}
function onBefore(curr,next,opts){thisptr.slideOptions=opts;var $slide=$(next);var w=$slide.outerWidth();var h=$slide.outerHeight();$slide.css({marginTop:(550-h)/2,marginLeft:(550-w)/2});}
function onAfter(curr,next,opts){}
function onpause(slider,fPaused){var pid=$("#sliderPauseId");if(fPaused)pid.css("visibility","visible");else pid.css("visibility","hidden");}
function prPos(id){var elem=$(id);var offs=elem.offset();Sonata.prObject(id+" offset",offs);return id;}}
PagePhotos.prototype.positionFrame=function(showFrame){var thisptr=this;var show=this.pics;var pos=show.offset();var $frame=this.frame;if(showFrame==false){var picsarea=this.pics;$frame=$("<div>");$frame.css({width:550,height:550,'background-color':"transparent",border:"none 1px red"});}
$frame.css("z-index",80);$frame.css("position","absolute");var left=pos.left;var top=pos.top-20;$frame.css("left",left+"px");$frame.css("top",top+"px");document.body.appendChild($frame[0]);$frame.show();if(showFrame){$("#pics").css('background-color','black');$("#picsarea").css('background-color','black');}
if(showFrame==false){$("#pics").css('background-color','transparent');$("#picsarea").css('background-color','transparent');$("#picstop").css('padding-top',"10px");}
var pics=this.pics;setTimeout(positionPrevNext,500);return $frame;function makeImage(name,left,top){var prev=$("<img />");prev.attr("src",'images/buttons/photogallery/'+name+'.gif');prev.css({position:'absolute',left:left,top:top}).show();document.body.appendChild(prev[0]);return prev;}
function positionPrevNext(){var pxoffs=0;var prev=thisptr.prevBtn;var next=thisptr.nextBtn;return;var w=$frame.width();var h=$frame.height();var bw=20;var bh=50;var btntop=Math.floor(top+h/2-bh/2);var prevleft=Math.floor(left-pxoffs-bw);var nextleft=Math.floor(left+pxoffs+w);var prev=thisptr.prevBtn=makeImage("prev",prevleft,btntop);var next=thisptr.nextBtn=makeImage("next",nextleft,btntop);prev.click(doPrev);next.click(doNext);}
function doPrev(){thisptr.prevPhoto();}
function doNext(){thisptr.nextPhoto();}}
PagePhotos.prototype.prevPhoto=function(){var opts=this.slideOptions;if(opts!=null){var curr=opts.currSlide;var last=opts.slideCount;if(curr>0)
this.pics.cycle(curr-1);else this.pics.cycle(last-1);}}
PagePhotos.prototype.nextPhoto=function(){var opts=this.slideOptions;if(opts!=null){var curr=opts.currSlide;var last=opts.slideCount-1;if(curr<last)
this.pics.cycle(curr+1);else this.pics.cycle(0);}}
PagePhotos.prototype.readySlider=function(){var thisptr=this;if(false){var o=new Image();o.onload=imgLoaded;o.src="images/bgheaderbio.png";}
else this.startSlider();function imgLoaded(){thisptr.startSlider();}}
PagePhotos.prototype.startup=function(showFrame){if(typeof showFrame=='undefined')showFrame=true;this.positionFrame(showFrame);this.startSlider();}
/* formfield.js */
function FormField(){}
FormField.getSelectValue=function(ctl,bEmptyFirst){if(typeof bEmptyFirst=='undefined')
bEmptyFirst=false;var elem=ctl[0];if(elem.selectedIndex<0)
return"";if(bEmptyFirst&&elem.selectedIndex==0)
return"";var s=elem.options[elem.selectedIndex].value;return s;}
FormField.setSelectValue=function(ctl,value){var elem=ctl[0];var i,n=elem.options.length;if(value==""){elem.selectedIndex=0;}
else{for(i=0;i<n;i++){var o=elem.options[i];if(o.value==value)
elem.selectedIndex=i;}}}
FormField.getInputValue=function(ctl){return ctl[0].value;}
FormField.setInputValue=function(ctl,value){ctl[0].value=value;}
FormField.getBtnValue=function(ctl){return ctl[0].checked;}
FormField.setBtnValue=function(ctl,on){ctl[0].checked=on;}
FormField.getInt=function(s){var num=0;try{num=parseInt(s);}
catch(e){num=0;}
return num;}
FormField.getNumber=function(s){var num=0;try{num=parseFloat(s);}
catch(e){num=0;}
return num;}
FormField.eval=function(text)
{var v='('+text+')';return eval(v);}
/* jgdialogs.js */
function Dialogs(id,opts){var thisptr=this;if(typeof dlgcls=='undefined')
dlgcls="jgSpecialDlg";this.id=id;this.opts=this.getOpts(opts);this.title=this.opts.title;this.dlgcls=this.opts.dlgcls;this.dialog=makeDialog(id);function makeDialog(id){var idtext="#"+id;var dial=$(idtext);var opts={title:thisptr.title,dialogClass:thisptr.dlgcls,bgiframe:true,resizable:false,draggable:true,autoOpen:false,width:400,zIndex:2000,modal:true,buttons:{}};if(typeof thisptr.opts.beforeClose=='function')
opts['beforeclose']=thisptr.opts.beforeClose;if(typeof thisptr.opts.close=='function')
opts['close']=thisptr.opts.close;if(typeof thisptr.opts.open=='function')
opts['open']=thisptr.opts.open;$(idtext).dialog(opts);$(idtext+"Ok").click(onOK);return dial;}
function onOK(){thisptr.close();}}
Dialogs.defOpts={title:"",dlgcls:"jgSpecialDlg",minHeight:100,hideCloseBox:false,beforeClose:null,close:null,open:null};Dialogs.prototype.getOpts=function(opts){var name;var ret={};for(name in Dialogs.defOpts)
ret[name]=Dialogs.defOpts[name];for(name in opts)
ret[name]=opts[name];return ret;}
Dialogs.prototype.setContent=function(text){var id="#"+this.id+"ErrorId";var e=$(id);if(e.size()==1)
e[0].innerHTML=text;}
Dialogs.prototype.open=function(text,title){if(this.opts.hideCloseBox){this.dialog.parents(".ui-dialog:first").find(".ui-dialog-titlebar-close").remove();}
var id="#"+this.id+"ErrorId";if(typeof title=='undefined')
title="";var e=$(id);e[0].innerHTML=text;if(title!=""){var t=$("#ui-dialog-title-"+this.id);if(t.size()==1)
t[0].innerHTML=title;}
this.dialog.dialog("open");var h=e.height();if(h<this.opts.minHeight)
e.height(this.opts.minHeight);}
Dialogs.prototype.close=function(){this.dialog.dialog('close');}
function DialogVerify(dlg,fields,opts)
{this.dlg=dlg;this.fields=fields;this.opts=this.getOpts(opts);var name;for(name in fields){var o=fields[name];o.ctl=$("#"+name);if(typeof o.name=='undefined')o.name=name;if(typeof o.empty=='undefined')o.empty="";if(typeof o.errmsg=='undefined')o.errmsg="Please fill in "+name;if(typeof o.cb=='undefined')o.cb=null;if(o.ctl.size()==0)
o.ctl=null;}}
DialogVerify.defOpts={bEmptyFirst:true}
DialogVerify.prototype.getOpts=function(opts){var name;if(typeof opts=='undefined')opts={};var ret={};for(name in DialogVerify.defOpts){ret[name]=DialogVerify.defOpts[name];}
for(name in opts)
ret[name]=opts[name];return ret;}
DialogVerify.getValue=function(field,bEmptyFirst){if(field.ctl==null)return"";if(typeof bEmptyFirst=='undefined')bEmptyFirst=false;var v="";switch(field.type){case"input":v=field.ctl[0].value;break;case"select":v=FormField.getSelectValue(field.ctl,bEmptyFirst);break;}
return v;function getSelectNOTUSED(field){var elem=field.ctl[0];if(elem.selectedIndex<=0)
return"";var s=elem.options[elem.selectedIndex].value;return s;}}
DialogVerify.isInt=function(s){var num=0;var ok=true;if(true){try{num=parseInt(s);if(isNaN(num))ok=false;}
catch(e){num=0;ok=false;}
return ok;}
else{var lo="0".charCodeAt(0);var hi="9".charCodeAt(0);var bl=" ".charCodeAt(0);var cnt=0;var i,n=s.length;for(i=0;i<n;i++){var c=s.charAt(i);var code=s.charCodeAt(i);if(code==bl)continue;if(code<lo||code>hi)return false;cnt++;}
return cnt>0?true:false;}}
DialogVerify.getInt=function(s){var num=0;try{num=parseInt(s);if(isNaN(num))num=0;}
catch(e){num=0;}
return num;}
DialogVerify.isNumber=function(s){if(typeof s.trim=='function')
s=s.trim();var num=0;var ok=true;try{num=parseFloat(s);if(isNaN(num))ok=false;}
catch(e){num=0;ok=false;}
return ok;}
DialogVerify.getNumber=function(s){var num=0;try{num=parseFloat(s);if(isNaN(num))num=0;}
catch(e){num=0;}
return num;}
DialogVerify.prototype.click=function(){var values={};var name;var i,n;var error="";var ok=true;for(name in this.fields){var o=this.fields[name];var tvalue=DialogVerify.getValue(o,this.opts.bEmptyFirst);values[name]={field:o,value:tvalue};if(o.ctl!=null&&o.bVerify){if(typeof o.cb=='function'){var t=o.cb(o,tvalue);if(t.ok==false)
error+=t.errmsg;ok=t.ok;}
else if(tvalue==o.empty){error+=o.errmsg;ok=false;}}}
if(error!=""){this.dlg.open(error);}
return{ok:ok,errmsg:error,values:values};}
DialogVerify.toJSON=function(obj){s=doit(obj);return s;function doit(obj){var t=obj instanceof Array;var s="";if(t)
s+=getArray(obj);else if(typeof obj=="object")
s+=getObject(obj);else
s+='"'+obj+'"';return s;}
function getArray(arr){var s="[";var i,n=arr.length;var sep="";for(i=0;i<n;i++){var p=arr[i];s+=sep+doit(p);sep=" , ";}
s+="]";return s;}
function getObject(obj){var name;var s="{";var sep="";for(name in obj){var v=doit(obj[name]);s+=sep+'"'+name+'" : '+v+'';sep=" , ";}
s+=" }";return s;}}
/* simpleslideshow.js */
var JSisReady=false;var theSlideShow;function SlideShow(ids){var defIds={toc:"toc",selelem:"selImgId",slideshow:"slideshow",slideshowouter:"slideshowouter",showtitle:"showTitleId",bordercolor:"#9bcee6",xmlfile:"chimpslidesxml.php",bgcolor:"#ffffff",fullbgcolor:"default",bartype:"plain",barcolor:"default",baralpha:"1"};if(typeof ids=='undefined')
ids=defIds;var name;for(name in defIds){if(typeof ids[name]=='undefined')
ids[name]=defIds[name];}
this.tocVisible=true;this.SSisReady=false;this.tocElemId=ids.toc;this.selElemId=ids.selelem;this.showElemId=ids.slideshow;this.outerElemId=ids.slideshowouter;this.titleElemId=ids.showtitle;this.bordercolor=ids.bordercolor;this.outerElem=document.getElementById(this.outerElemId);this.selElem=document.getElementById(this.selElemId);this.tocElem=document.getElementById(this.tocElemId);this.titleElem=document.getElementById(this.titleElemId);this.curShowId="";this.curShowElem=null;this.xmlfile=ids.xmlfile;this.bgcolor=ids.bgcolor;this.bartype=ids.bartype;this.barcolor=ids.barcolor;this.baralpha=ids.baralpha;this.fullbgcolor=ids.fullbgcolor;this.ids=ids;}
SlideShow.overImage=function(div,divid,over)
{if(theSlideShow.curShowElem==div)return;if(true)
{if(over)div.style.borderColor='#ff0000';else div.style.borderColor=theSlideShow.bordercolor;}
else{var e=document.getElementById(divid);if(e){if(over)e.style.backgroundColor='#9bcee6';else e.style.backgroundColor=runvideo_bgcolor;}}}
SlideShow.clickShow=function(elem,id)
{if(theSlideShow.curShowElem!=null)
theSlideShow.curShowElem.style.borderColor=theSlideShow.bordercolor;elem.style.borderColor='#ff0000'
theSlideShow.showSlideId(elem,id);}
SlideShow.prototype.setPhotoComment=function(showObj,info)
{var url=showObj.url;var count=showObj.count;var index=showObj.index;var elem=document.getElementById('photoCommentId');elem.innerHTML="&nbsp;";var t=document.getElementById(info.id);if(t!=null)
elem.innerHTML="<div align='center'>"+t.innerHTML+"</div>";}
SlideShow.prototype.getShowElem=function()
{return document.getElementById(this.showElemId);}
SlideShow.prototype.waitSSReady=function(fnc)
{var thisptr=this;setTimeout(ontime,500);function ontime(){if(thisptr.SSisReady){if(typeof fnc=='function')
fnc();return;}
setTimeout(ontime,500);}}
SlideShow.prototype.showSlideId=function(elem,id)
{this.curShowId=id;this.curShowElem=elem;this.titleElem.innerHTML="<span style='font-size:8pt;font-weight:normal;'>Now playing:&nbsp;</span>"+elem.title;this.showSlides(id);}
SlideShow.prototype.showSlides=function(id)
{this.SSisReady=false;var c=this.fullbgcolor=='default'?this.bgcolor:this.fullbgcolor;so=new SWFObject('SlideShow.swf','slideshow','600','630','9',c);so.addParam('quality','high');so.addParam('allowScriptAccess','sameDomain');so.addParam('allowFullScreen','true');so.addParam("wmode","transparent");so.addVariable("xmlfile",this.xmlfile+"?id="+id);so.addVariable("fade","2000");so.addVariable("duration","2000");so.addVariable("bgcolor",this.bgcolor);so.addVariable("bartype",this.bartype);so.addVariable("barcolor",this.barcolor);so.addVariable("baralpha",this.baralpha);so.addVariable("fullbgcolor",this.fullbgcolor);so.addVariable("jscommentfnc","setPhotoComment");so.addVariable("jsreadyfnc","jsReady");so.addVariable("valign","top");so.addVariable("align","center");so.addVariable("controlbar","top");so.write('slideshowouter');this.waitSSReady();}
/* scrollbox.js */
function ScrollBox(opts){this.options=$.extend({},ScrollBox.defOptions,opts);var thisptr=this;var paddingLeft=0;var outerbox=this.outerbox=$("#"+this.options.outerBoxId).css({overflow:"hidden",padding:"4px "+paddingLeft+"px 4px "+paddingLeft+"px"}).attr("align","left");if(!Sonata.isIE)outerbox.addClass("sonata-round-box");var box=this.box=$("#"+this.options.boxId);var right=this.rightBtn=$("#"+this.options.rightBtnId);var left=this.leftBtn=$("#"+this.options.leftBtnId);var totalWidth=0;var imgWidths=[];var images=$("img",box);var imgCount=images.size();var imgAvgWidth=0;images.each(getWidths);function getWidths(){var img=$(this);var margin=4;img.css("margin-left",margin);var w=img.outerWidth();w=thisptr.options.avgImgWidth;totalWidth+=w+margin+10;imgWidths.push({elem:this,img:img,width:w});}
box.width(totalWidth);setTimeout(getPos,1000);function getPos(){images.each(doit);function doit(index){var a=imgWidths[index];var pos=a.img.position();a.pos=pos;}}
var boxwidth=outerbox.outerWidth();if(imgCount==0||totalWidth<boxwidth){outerbox.attr('align','center');box.css("visibility","visible").attr("align","center");showLeft(false);showRight(false);outerbox.addClass("sonata-round-box");return;}
imgAvgWidth=totalWidth/imgCount;var imgCountInbox=Math.floor(boxwidth/imgAvgWidth);box.css("visibility","visible").attr("align","left");var boxheight=outerbox.outerHeight();var boxoffs=outerbox.offset();var wRight=right.width();var hRight=right.height();var wLeft=left.width();var hLeft=left.height();var leftpos,toppos;leftpos=boxoffs.left-wLeft;toppos=boxoffs.top+(boxheight-hLeft)/2;left.css({position:"absolute",left:leftpos,top:toppos,display:"block",visibility:"hidden"});leftpos=boxoffs.left+boxwidth;toppos=boxoffs.top+(boxheight-hRight)/2;right.css({position:"absolute",left:leftpos,top:toppos,display:"block",visibility:"hidden"});showLeft(false);showRight(imgCountInbox<imgCount);if(Sonata.isIE){document.body.appendChild(right[0]);document.body.appendChild(left[0]);}
var curIndex=0;left.click(leftClick);right.click(rightClick);function leftClick(){if(curIndex>0){curIndex-=imgCountInbox;setPos(curIndex);}
else{showLeft(false);}}
function rightClick(){var t=imgCountInbox;if(curIndex<=t){curIndex+=imgCountInbox;setPos(curIndex);}
else{showRight(false);}}
function showLeft(on){left.css("visibility",on?"visible":"hidden");}
function showRight(on){right.css("visibility",on?"visible":"hidden");}
function setPos(index){if(index>=imgCount)
index-=imgCountInbox;if(index<0)index=0;curIndex=index;var p=imgWidths[index];var left=p.pos.left-paddingLeft;box.animate({left:-left},thisptr.options.speed);if(curIndex==0)
showLeft(false);else{showLeft(true);}
var t=curIndex+imgCountInbox;if(t>=imgCount)
showRight(false);else
showRight(true);}}
ScrollBox.defOptions={outerBoxId:"",boxId:"",leftBtnId:"",rightBtnId:"",avgImgWidth:110,speed:400,cb:null};
/* loadimagedrawer.js */
function loadImageDrawer(id,src,width,height){var widthDiv=width;var heightDiv=height;var $window=$(window);var $content=$("#pageContentId");widthDiv=width;var $logo=$("#"+id);if(typeof $logo[0]=='undefined')return;var $outer=$("<div>");$outer.css({width:widthDiv,height:heightDiv,position:'absolute',display:'block',"background-color":'transparent',overflow:"hidden",border:"none 1px black"});var $elem=$("<div>");$elem.css({width:widthDiv,height:heightDiv,position:"relative",left:widthDiv,top:0,'background-color':'transparent'});var $img=$("<img>");$img.attr("src",src);var left=(widthDiv-width)/2;var top=(heightDiv-height)/2;$img.css({width:width,height:height,position:'relative',left:left,top:top});$img.appendTo($elem);$elem.appendTo($outer);document.body.appendChild($outer[0]);var speed=500;var mydrawer=new Sonata.drawer($outer,{direction:Sonata.drawer.RIGHT,duration:speed,div:$elem,dx:0,dy:0,removedrawer:true});var tracker=new Sonata.MouseTracker({divs:[$outer,$logo],cb:getTrackerCB(mydrawer)});var opts={sensitivity:7,interval:200,timeout:0,over:mover,out:mout}
$logo.hoverIntent(opts);loadImageDrawer._drawerlist[id]=mydrawer;function getTrackerCB(drawer){return trackerCB;function trackerCB(traker,type,rdiv,evt){if(type==Sonata.MouseTracker.TYPE_OUT){traker.stop();drawer.hide();}}}
function mover(){positionOuter();mydrawer.show();tracker.start();}
function mout(e){}
function positionOuter(){var w=$window.width();var h=$window.height();var st=$(document).scrollTop();var sl=$(document).scrollLeft();var offs=$content.offset();var left=(offs.left+$content.width()-widthDiv);var top=(h-heightDiv)/2;left+=sl-(Sonata.isIE?0:3);top+=st;$outer.css({left:left,top:top});}}
loadImageDrawer._drawerlist={};
/* loadauthorizedrawer.js */
function loadAuthorizeDrawer(id,width,height){var widthDiv=width;var heightDiv=height;var $window=$(window);var $content=$("#pageContentId");widthDiv=width;var $logo=$("#"+id);$logo.each(setup);function setup(){var id=this.id+"helpdiv";var logo=$(this);var help=$("#"+this.id+"help");var helpdiv=$("#"+this.id+"helpdiv");getPositionHelp(help,widthDiv,heightDiv)();var mydrawer=new Sonata.drawer(help,{direction:Sonata.drawer.LEFT,div:helpdiv,removedrawer:true});mydrawer.positionHelp=getPositionHelp(help);mydrawer.options.inHelp=false;var tracker=new Sonata.MouseTracker({divs:[help,logo],cb:getTrackerCB(mydrawer),getDims:null,connector:{on:true}});var opts={sensitivity:1,interval:200,timeout:0,over:getMover(mydrawer,this.id,tracker),out:getMout(mydrawer,this.id)}
logo.hover(getMover(mydrawer,this.id,tracker),getMout(mydrawer,this.id));function getPositionHelp(help,hwid,hht){return positionHelp;function positionHelp(){var f=logo;var offs=f.offset();var fwid=f.width();var fht=f.height();var top=offs.top;var hleft=(offs.left+fwid+10);var htop=(offs.top);help.css("left",hleft+"px");help.css("top",htop+"px");}}
function getTrackerCB(drawer){return trackerCB;function trackerCB(traker,type,rdiv,evt){if(type==Sonata.MouseTracker.TYPE_OUT){traker.stop();drawer.hide();}}}
function getTrackerGetDims(drawer){return trackerGetDims;function trackerGetDims(traker,d){var ret=traker.getDims(d);var t=traker.connectDivs(d[0],d[1]);if(t!=null)
ret.push(t);return ret;}}
function prDims(dims){var i,n=dims.length;for(i=0;i<n;i++){Sonata.prObject("dims"+i,dims[i]);}}
function getMover(drawer,id,traker){return mover;function mover(){drawer.positionHelp();drawer.show();traker.start();}}
function getMout(drawer,id){return mout;function mout(evt){}}}}
/* sonata.drawer.js */
Sonata.drawer=function(drawer,options){var defopts={direction:Sonata.drawer.RIGHT,removedrawer:false,div:null,duration:500,dx:2,dy:2};var w=drawer.width();var h=drawer.height();var opts={};$.extend(opts,defopts,options);var dir=opts.direction;var div=opts.div;if(div==null){div=$("#not_a_valid_id",drawer);}
var w=drawer.width();var h=drawer.height();div.css("position","relative");if(Sonata.isIE){opts.dx-=2;opts.dy-=2;}
div.width(w-opts.dx);div.height(h-opts.dy);var thisptr=this;this.options=opts;this.visible=false;this.drawer=drawer;this.div=div;this.setDirection(dir);this.removeDrawer();}
Sonata.drawer.RIGHT=0;Sonata.drawer.LEFT=1;Sonata.drawer.TOP=2;Sonata.drawer.BOTTOM=3;Sonata.drawer.prototype.removeDrawer=function()
{try{document.body.removeChild(this.drawer[0]);}
catch(e){}}
Sonata.drawer.prototype.setDirection=function(dir){var show_css={};var hide_css={};var div=this.div;var w=this.drawer.width();var h=this.drawer.height();div.hide();switch(dir){case Sonata.drawer.RIGHT:div.css("left",w+"px");show_css={left:0+"px"};hide_css={left:w+"px"};break;case Sonata.drawer.LEFT:div.css("left",(-w)+"px");show_css={left:0+"px"};hide_css={left:(-w)+"px"};break;case Sonata.drawer.TOP:div.css("top",(-h)+"px");show_css={top:0+"px"};hide_css={top:(-h)+"px"};break;case Sonata.drawer.BOTTOM:div.css("top",h+"px");show_css={top:0+"px"};hide_css={top:h+"px"};break;}
this.show_css=show_css;this.hide_css=hide_css;div.css("visibility","visible");}
Sonata.drawer.prototype.show=function(){if(this.visible)return;this.visible=true;$("body").append(this.drawer);this.drawer.show();this.drawer.attr("visibility","visible");this.div.show();this.div.attr("visibility","visible");this.div.animate(this.show_css,{queue:false,duration:this.options.duration});}
Sonata.drawer.prototype.hide=function(){if(this.visible==false)return;var thisptr=this;this.visible=false;this.div.animate(this.hide_css,{queue:false,duration:this.options.duration,complete:ondone});function ondone(){if(thisptr.options.removedrawer){thisptr.removeDrawer();}}}
Sonata.drawer.prototype.isVisible=function(){return this.visible;}
/* pagebio.js */
function PageBio(){}
PageBio.prototype.startSlider=function(){var thisptr=this;this.slideOptions=null;var pics;Sonata.Timer.setTimer(startMain,500);function startMain(){thisptr.positionFrame();thisptr.pics=pics=$("#pics");var frame=$("#biophotoframe");pics.cycle({fx:"fade",pause:0,timeout:4000,speed:2000,sync:1,fit:1,after:onAfter,before:onBefore});pics.css("visibility","visible");frame.hover(mover,mout);frame.click(donext);function donext(){thisptr.nextPhoto();}
function mover(event){pics.cycle("pause");}
function mout(event){pics.cycle("resume");}
function onBefore(curr,next,opts){thisptr.slideOptions=opts;}
function onAfter(curr,next,opts){}}
function onpause(slider,fPaused){var pid=$("#sliderPauseId");if(fPaused)pid.css("visibility","visible");else pid.css("visibility","hidden");}
function prPos(id){var elem=$(id);var offs=elem.offset();Sonata.prObject(id+" offset",offs);return id;}}
PageBio.prototype.prevPhoto=function(){var opts=this.slideOptions;if(opts!=null){var curr=opts.currSlide;var last=opts.slideCount;if(curr>0)
this.pics.cycle(curr-1);else this.pics.cycle(last-1);}}
PageBio.prototype.nextPhoto=function(){var opts=this.slideOptions;if(opts!=null){var curr=opts.currSlide;var last=opts.slideCount-1;if(curr<last)
this.pics.cycle(curr+1);else this.pics.cycle(0);}}
PageBio.prototype.positionFrame=function(){function bioPositionFrame(){var photo=$("#biophoto");var frame=$("#biophotoframe");var offs=photo.offset();frame.css("left",offs.left-3).css("top",offs.top-3);frame.css("z-index",10);frame.css("position","absolute");document.body.appendChild(frame[0]);frame.show();}
setTimeout(bioPositionFrame,200);setTimeout(bioPositionFrame,1000);setTimeout(bioPositionFrame,2000);}
PageBio.prototype.readySlider=function(){var thisptr=this;var o=new Image();o.onload=imgLoaded;o.src="images/bgheaderbio.png";function imgLoaded(){thisptr.startSlider();}}
PageBio.prototype.startup=function(){this.startSlider();}
/* sonata.mousetracker.js */
Sonata.MouseTracker=function(opts){var thisptr=this;this.options=$.extend({},Sonata.MouseTracker.defOptions,opts);this.divs=[];this.body=$(document.body);function cb(type,rdiv,evt){if(typeof thisptr.options.cb=='function')
thisptr.options.cb(thisptr,type,rdiv,evt);}
function doGetDims(d){if(typeof thisptr.options.getDims=='function'){return thisptr.options.getDims(thisptr,d);}
return thisptr.getDims(d);}
this.getDims=function(d){var i,n=d.length;var rdivs=[];for(i=0;i<n;i++){var p=d[i];var offs=p.offset();var w=p.outerWidth();var h=p.outerHeight();rdivs.push({elem:p,left:offs.left,top:offs.top,width:w,height:h,right:offs.left+w,bottom:offs.top+h});}
if(this.options.connector.on){if(n==2){var rdiv3=this.connectRDivs(rdivs[0],rdivs[1]);if(rdiv3!=null)rdivs.push(rdiv3);}
else
this.options.connector.on=false;}
return rdivs;}
this.connectDivs=function(div1,div2){var d=[div1,div2];var rd=thisptr.getDims(d);var r1=rd[0];var r2=rd[1];return this.connectRDivs(r1,r2);}
this.connectRDivs=function(r1,r2){if(r1.width>r2.width){var tr1=r1;r1=r2;r2=tr1;}
var p={elem:null,left:0,top:0,width:0,height:0,right:0,bottom:0};if(r1.top<r2.top||r1.top>=r2.bottom){if(r1.top<r2.top){p.left=r1.left;p.right=r1.right;p.width=r1.width;p.top=r1.bottom;p.bottom=r2.top;p.height=p.bottom-p.top;}
else{p.left=r1.left;p.right=r1.right;p.width=r1.width;p.top=r2.bottom;p.bottom=r1.top;p.height=p.bottom-p.top;}
mkConnector(p);return p;}
else if(r1.left<r2.left||r1.left>=r2.right){if(r1.left<=r2.left){p.top=r1.top;p.bottom=r1.bottom;p.height=r1.height;p.left=r1.right;p.right=r2.left;p.width=p.left-p.right;if(p.width<0)p.width=0;}
else{p.top=r1.top;p.bottom=r1.bottom;p.height=r1.height;p.left=r2.left;p.right=r1.right;p.width=p.left-p.right;}
mkConnector(p);return p;}
return null;}
function mkConnector(p){var cinfo=thisptr.options.connector;if(cinfo.on){p.elem=$("<div>");p.elem.css({position:'absolute',left:p.left,top:p.top,width:p.width+"px",height:p.height+"px",'z-index':80,'background-color':'#ffffff',visibility:'hidden'});if(cinfo.css){p.elem.css(cinfo.css);}
thisptr.options.connector.addConnectorDiv=addConnectorDiv;thisptr.options.connector.removeConnectorDiv=removeConnectorDiv;}
function addConnectorDiv(){if(p.elem!=null){var alpha=cinfo.alpha?cinfo.alpha:.01;document.body.appendChild(p.elem[0]);p.elem.fadeTo(1,alpha,cb);}
function cb(){p.elem.css("visibility","visible");}}
function removeConnectorDiv(){if(p.elem!=null){document.body.removeChild(p.elem[0]);}}}
this.inDivs=function(x,y){var d=thisptr.divs;var i,n=d.length;for(i=0;i<n;i++){p=d[i];if(x>=p.left&&x<=p.right&&y>=p.top&&y<=p.bottom)
return p;}
return null;}
function tracker(evt){var indiv=thisptr.inDivs(evt.pageX,evt.pageY);if(indiv!=null)cb(Sonata.MouseTracker.TYPE_IN,indiv,evt);else cb(Sonata.MouseTracker.TYPE_OUT,indiv,evt);}
this.bindTracker=function(){thisptr.body.bind("mousemove",tracker);}
this.unbindTracker=function(){thisptr.body.unbind("mousemove",tracker);}
this.start=function(){thisptr.divs=doGetDims(thisptr.options.divs);thisptr.bindTracker();if(thisptr.options.connector.on){thisptr.options.connector.addConnectorDiv();}}
this.stop=function(){if(thisptr.options.connector.on)
thisptr.options.connector.removeConnectorDiv();thisptr.unbindTracker();}}
Sonata.MouseTracker.defOptions={divs:[],cb:null,getDims:null,connector:{on:false,css:{'background-color':'#ffffff'},alpha:.01}}
Sonata.MouseTracker.TYPE_IN=1;Sonata.MouseTracker.TYPE_OUT=2;
/* jquery.media.js */;(function($){$.fn.media=function(options,f1,f2){if(options=='undo'){return this.each(function(){var $this=$(this);var html=$this.data('media.origHTML');if(html)
$this.replaceWith(html);});}
return this.each(function(){if(typeof options=='function'){f2=f1;f1=options;options={};}
var o=getSettings(this,options);if(typeof f1=='function')f1(this,o);var r=getTypesRegExp();var m=r.exec(o.src.toLowerCase())||[''];o.type?m[0]=o.type:m.shift();for(var i=0;i<m.length;i++){fn=m[i].toLowerCase();if(isDigit(fn[0]))fn='fn'+fn;if(!$.fn.media[fn])
continue;var player=$.fn.media[fn+'_player'];if(!o.params)o.params={};if(player){var num=player.autoplayAttr=='autostart';o.params[player.autoplayAttr||'autoplay']=num?(o.autoplay?1:0):o.autoplay?true:false;}
var $div=$.fn.media[fn](this,o);$div.css('backgroundColor',o.bgColor).width(o.width);if(o.canUndo){var $temp=$('<div></div>').append(this);$div.data('media.origHTML',$temp.html());}
if(typeof f2=='function')f2(this,$div[0],o,player.name);break;}});};$.fn.media.mapFormat=function(format,player){if(!format||!player||!$.fn.media.defaults.players[player])return;format=format.toLowerCase();if(isDigit(format[0]))format='fn'+format;$.fn.media[format]=$.fn.media[player];$.fn.media[format+'_player']=$.fn.media.defaults.players[player];};$.fn.media.defaults={standards:false,canUndo:true,width:400,height:400,autoplay:0,bgColor:'#ffffff',params:{wmode:'transparent'},attrs:{},flvKeyName:'file',flashvars:{},flashVersion:'7',expressInstaller:null,flvPlayer:'mediaplayer.swf',mp3Player:'mediaplayer.swf',silverlight:{inplaceInstallPrompt:'true',isWindowless:'true',framerate:'24',version:'0.9',onError:null,onLoad:null,initParams:null,userContext:null}};$.fn.media.defaults.players={flash:{name:'flash',title:'Flash',types:'flv,mp3,swf',mimetype:'application/x-shockwave-flash',pluginspage:'http://www.adobe.com/go/getflashplayer',ieAttrs:{classid:'clsid:d27cdb6e-ae6d-11cf-96b8-444553540000',type:'application/x-oleobject',codebase:'http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version='+$.fn.media.defaults.flashVersion}},quicktime:{name:'quicktime',title:'QuickTime',mimetype:'video/quicktime',pluginspage:'http://www.apple.com/quicktime/download/',types:'aif,aiff,aac,au,bmp,gsm,mov,mid,midi,mpg,mpeg,mp4,m4a,psd,qt,qtif,qif,qti,snd,tif,tiff,wav,3g2,3gp',ieAttrs:{classid:'clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B',codebase:'http://www.apple.com/qtactivex/qtplugin.cab'}},realplayer:{name:'real',title:'RealPlayer',types:'ra,ram,rm,rpm,rv,smi,smil',mimetype:'audio/x-pn-realaudio-plugin',pluginspage:'http://www.real.com/player/',autoplayAttr:'autostart',ieAttrs:{classid:'clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA'}},winmedia:{name:'winmedia',title:'Windows Media',types:'asx,asf,avi,wma,wmv',mimetype:$.browser.mozilla&&isFirefoxWMPPluginInstalled()?'application/x-ms-wmp':'application/x-mplayer2',pluginspage:'http://www.microsoft.com/Windows/MediaPlayer/',autoplayAttr:'autostart',oUrl:'url',ieAttrs:{classid:'clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6',type:'application/x-oleobject'}},iframe:{name:'iframe',types:'html,pdf'},silverlight:{name:'silverlight',types:'xaml'}};function isFirefoxWMPPluginInstalled(){var plugs=navigator.plugins;for(var i=0;i<plugs.length;i++){var plugin=plugs[i];if(plugin['filename']=='np-mswmp.dll')
return true;}
return false;}
var counter=1;for(var player in $.fn.media.defaults.players){var types=$.fn.media.defaults.players[player].types;$.each(types.split(','),function(i,o){if(isDigit(o[0]))o='fn'+o;$.fn.media[o]=$.fn.media[player]=getGenerator(player);$.fn.media[o+'_player']=$.fn.media.defaults.players[player];});};function getTypesRegExp(){var types='';for(var player in $.fn.media.defaults.players){if(types.length)types+=',';types+=$.fn.media.defaults.players[player].types;};return new RegExp('\\.('+types.replace(/,/ig,'|')+')\\b');};function getGenerator(player){return function(el,options){return generate(el,options,player);};};function isDigit(c){return'0123456789'.indexOf(c)>-1;};function getSettings(el,options){options=options||{};var $el=$(el);var cls=el.className||'';var meta=$.metadata?$el.metadata():$.meta?$el.data():{};meta=meta||{};var w=meta.width||parseInt(((cls.match(/w:(\d+)/)||[])[1]||0));var h=meta.height||parseInt(((cls.match(/h:(\d+)/)||[])[1]||0));if(w)meta.width=w;if(h)meta.height=h;if(cls)meta.cls=cls;var a=$.fn.media.defaults;var b=options;var c=meta;var p={params:{bgColor:options.bgColor||$.fn.media.defaults.bgColor}};var opts=$.extend({},a,b,c);$.each(['attrs','params','flashvars','silverlight'],function(i,o){opts[o]=$.extend({},p[o]||{},a[o]||{},b[o]||{},c[o]||{});});if(typeof opts.caption=='undefined')opts.caption=$el.text();opts.src=opts.src||$el.attr('href')||$el.attr('src')||'unknown';return opts;};$.fn.media.swf=function(el,opts){if(!window.SWFObject&&!window.swfobject){if(opts.flashvars){var a=[];for(var f in opts.flashvars)
a.push(f+'='+opts.flashvars[f]);if(!opts.params)opts.params={};opts.params.flashvars=a.join('&');}
return generate(el,opts,'flash');}
var id=el.id?(' id="'+el.id+'"'):'';var cls=opts.cls?(' class="'+opts.cls+'"'):'';var $div=$('<div'+id+cls+'>');if(window.swfobject){$(el).after($div).appendTo($div);if(!el.id)el.id='movie_player_'+counter++;swfobject.embedSWF(opts.src,el.id,opts.width,opts.height,opts.flashVersion,opts.expressInstaller,opts.flashvars,opts.params,opts.attrs);}
else{$(el).after($div).remove();var so=new SWFObject(opts.src,'movie_player_'+counter++,opts.width,opts.height,opts.flashVersion,opts.bgColor);if(opts.expressInstaller)so.useExpressInstall(opts.expressInstaller);for(var p in opts.params)
if(p!='bgColor')so.addParam(p,opts.params[p]);for(var f in opts.flashvars)
so.addVariable(f,opts.flashvars[f]);so.write($div[0]);}
if(opts.caption)$('<div>').appendTo($div).html(opts.caption);return $div;};$.fn.media.flv=$.fn.media.mp3=function(el,opts){var src=opts.src;var player=/\.mp3\b/i.test(src)?$.fn.media.defaults.mp3Player:$.fn.media.defaults.flvPlayer;var key=opts.flvKeyName;src=encodeURIComponent(src);opts.src=player;opts.src=opts.src+'?'+key+'='+(src);var srcObj={};srcObj[key]=src;opts.flashvars=$.extend({},srcObj,opts.flashvars);return $.fn.media.swf(el,opts);};$.fn.media.xaml=function(el,opts){if(!window.Sys||!window.Sys.Silverlight){if($.fn.media.xaml.warning)return;$.fn.media.xaml.warning=1;alert('You must include the Silverlight.js script.');return;}
var props={width:opts.width,height:opts.height,background:opts.bgColor,inplaceInstallPrompt:opts.silverlight.inplaceInstallPrompt,isWindowless:opts.silverlight.isWindowless,framerate:opts.silverlight.framerate,version:opts.silverlight.version};var events={onError:opts.silverlight.onError,onLoad:opts.silverlight.onLoad};var id1=el.id?(' id="'+el.id+'"'):'';var id2=opts.id||'AG'+counter++;var cls=opts.cls?(' class="'+opts.cls+'"'):'';var $div=$('<div'+id1+cls+'>');$(el).after($div).remove();Sys.Silverlight.createObjectEx({source:opts.src,initParams:opts.silverlight.initParams,userContext:opts.silverlight.userContext,id:id2,parentElement:$div[0],properties:props,events:events});if(opts.caption)$('<div>').appendTo($div).html(opts.caption);return $div;};function generate(el,opts,player){var $el=$(el);var o=$.fn.media.defaults.players[player];if(player=='iframe'){var o=$('<iframe'+' width="'+opts.width+'" height="'+opts.height+'" >');o.attr('src',opts.src);o.css('backgroundColor',o.bgColor);}
else if($.browser.msie){var a=['<object width="'+opts.width+'" height="'+opts.height+'" '];for(var key in opts.attrs)
a.push(key+'="'+opts.attrs[key]+'" ');for(var key in o.ieAttrs||{}){var v=o.ieAttrs[key];if(key=='codebase'&&window.location.protocol=='https:')
v=v.replace('http','https');a.push(key+'="'+v+'" ');}
a.push('></ob'+'ject'+'>');var p=['<param name="'+(o.oUrl||'src')+'" value="'+opts.src+'">'];for(var key in opts.params)
p.push('<param name="'+key+'" value="'+opts.params[key]+'">');var o=document.createElement(a.join(''));for(var i=0;i<p.length;i++)
o.appendChild(document.createElement(p[i]));}
else if(o.standards){var a=['<object type="'+o.mimetype+'" width="'+opts.width+'" height="'+opts.height+'"'];if(opts.src)a.push(' data="'+opts.src+'" ');a.push('>');a.push('<param name="'+(o.oUrl||'src')+'" value="'+opts.src+'">');for(var key in opts.params){if(key=='wmode'&&player!='flash')
continue;a.push('<param name="'+key+'" value="'+opts.params[key]+'">');}
a.push('<div><p><strong>'+o.title+' Required</strong></p><p>'+o.title+' is required to view this media. <a href="'+o.pluginspage+'">Download Here</a>.</p></div>');a.push('</ob'+'ject'+'>');}
else{var a=['<embed width="'+opts.width+'" height="'+opts.height+'" style="display:block"'];if(opts.src)a.push(' src="'+opts.src+'" ');for(var key in opts.attrs)
a.push(key+'="'+opts.attrs[key]+'" ');for(var key in o.eAttrs||{})
a.push(key+'="'+o.eAttrs[key]+'" ');for(var key in opts.params){if(key=='wmode'&&player!='flash')
continue;a.push(key+'="'+opts.params[key]+'" ');}
a.push('></em'+'bed'+'>');}
var id=el.id?(' id="'+el.id+'"'):'';var cls=opts.cls?(' class="'+opts.cls+'"'):'';var $div=$('<div'+id+cls+'>');$el.after($div).remove();($.browser.msie||player=='iframe')?$div.append(o):$div.html(a.join(''));if(opts.caption)$('<div>').appendTo($div).html(opts.caption);return $div;};})(jQuery);
/* jquery.metadata.min.js *//*
 * Metadata - jQuery plugin for parsing metadata from elements
 *
 * Copyright (c) 2006 John Resig, Yehuda Katz, J?örn Zaefferer, Paul McLanahan
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 *
 * Revision: $Id: jquery.metadata.js 3640 2007-10-11 18:34:38Z pmclanahan $
 *
 */
 (function($){$.extend({metadata:{defaults:{type:'class',name:'metadata',cre:/({.*})/,single:'metadata'},setType:function(type,name){this.defaults.type=type;this.defaults.name=name;},get:function(elem,opts){var settings=$.extend({},this.defaults,opts);if(!settings.single.length)settings.single='metadata';var data=$.data(elem,settings.single);if(data)return data;data="{}";var getData=function(data){if(typeof data!="string")return data;if(data.indexOf('{')<0){data=eval("("+data+")");}}
var getObject=function(data){if(typeof data!="string")return data;data=eval("("+data+")");return data;}
if(settings.type=="html5"){var object={};$(elem.attributes).each(function(){var name=this.nodeName;if(name.match(/^data-/))name=name.replace(/^data-/,'');else return true;object[name]=getObject(this.nodeValue);});}else{if(settings.type=="class"){var m=settings.cre.exec(elem.className);if(m)
data=m[1];}else if(settings.type=="elem"){if(!elem.getElementsByTagName)return;var e=elem.getElementsByTagName(settings.name);if(e.length)
data=$.trim(e[0].innerHTML);}else if(elem.getAttribute!=undefined){var attr=elem.getAttribute(settings.name);if(attr)
data=attr;}
object=getObject(data.indexOf("{")<0?"{"+data+"}":data);}
$.data(elem,settings.single,object);return object;}}});$.fn.metadata=function(opts){return $.metadata.get(this[0],opts);};})(jQuery);

/* jquery.scrollTo-min.js */;(function(d){var k=d.scrollTo=function(a,i,e){d(window).scrollTo(a,i,e)};k.defaults={axis:'xy',duration:parseFloat(d.fn.jquery)>=1.3?0:1};k.window=function(a){return d(window)._scrollable()};d.fn._scrollable=function(){return this.map(function(){var a=this,i=!a.nodeName||d.inArray(a.nodeName.toLowerCase(),['iframe','#document','html','body'])!=-1;if(!i)return a;var e=(a.contentWindow||a).document||a.ownerDocument||a;return d.browser.safari||e.compatMode=='BackCompat'?e.body:e.documentElement})};d.fn.scrollTo=function(n,j,b){if(typeof j=='object'){b=j;j=0}if(typeof b=='function')b={onAfter:b};if(n=='max')n=9e9;b=d.extend({},k.defaults,b);j=j||b.speed||b.duration;b.queue=b.queue&&b.axis.length>1;if(b.queue)j/=2;b.offset=p(b.offset);b.over=p(b.over);return this._scrollable().each(function(){var q=this,r=d(q),f=n,s,g={},u=r.is('html,body');switch(typeof f){case'number':case'string':if(/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(f)){f=p(f);break}f=d(f,this);case'object':if(f.is||f.style)s=(f=d(f)).offset()}d.each(b.axis.split(''),function(a,i){var e=i=='x'?'Left':'Top',h=e.toLowerCase(),c='scroll'+e,l=q[c],m=k.max(q,i);if(s){g[c]=s[h]+(u?0:l-r.offset()[h]);if(b.margin){g[c]-=parseInt(f.css('margin'+e))||0;g[c]-=parseInt(f.css('border'+e+'Width'))||0}g[c]+=b.offset[h]||0;if(b.over[h])g[c]+=f[i=='x'?'width':'height']()*b.over[h]}else{var o=f[h];g[c]=o.slice&&o.slice(-1)=='%'?parseFloat(o)/100*m:o}if(/^\d+$/.test(g[c]))g[c]=g[c]<=0?0:Math.min(g[c],m);if(!a&&b.queue){if(l!=g[c])t(b.onAfterFirst);delete g[c]}});t(b.onAfter);function t(a){r.animate(g,j,b.easing,a&&function(){a.call(this,n,b)})}}).end()};k.max=function(a,i){var e=i=='x'?'Width':'Height',h='scroll'+e;if(!d(a).is('html,body'))return a[h]-d(a)[e.toLowerCase()]();var c='client'+e,l=a.ownerDocument.documentElement,m=a.ownerDocument.body;return Math.max(l[h],m[h])-Math.min(l[c],m[c])};function p(a){return typeof a=='object'?a:{top:a,left:a}}})(jQuery);
/* sonata.runvideo.js */
Sonata.runVideo=function(wrapperid,videofile,type,options){var defopts={videowidth:500,videoheight:500,bgcolor:"#b29e85",barcolor:"#b29e85",flvPlayer:'Video.swf',jsflashcallback:'Sonata.runVideo.jsFlashCallback',buffertime:15};options=$.extend({},defopts,options);var videowrapper=$("#"+wrapperid);videowrapper.html("<a class='media' href='"+videofile+"'></a>");var flashvars={'bgcolor':options.bgcolor,'vwidth':options.videowidth,'vheight':options.videoheight,'file':''+videofile,'buffertime':options.buffertime,'bufferlength':'10','autostart':'true',"jsreadyfnc":"Sonata.runVideo.jsReady","jsflashcallback":options.jsflashcallback,"valign":"top","align":"center","controlbar":"bottom","controlbarbg":"#aaaaaa","buffertype":"curvedarrow","bufferlinewidth":"5","ballradius":"5","bartype":"plain","barcolor":options.barcolor};if(type=="FLV"){$.fn.media.defaults.flvPlayer=options.flvPlayer;videowrapper.css({width:options.videowidth,height:options.videoheight+20});$('.media').media({width:options.videowidth,height:options.videoheight+20,autoplay:1,flvPlayer:options.flvPlayer,src:videofile,params:{allowfullscreen:true,quality:'high',allowScriptAccess:'sameDomain',wmode:"transparent"},flashvars:flashvars,flashVersion:'9'});}
else if(type=="WMV"){videowrapper.css({width:options.videowidth,height:options.videoheight});$('.media').media({width:options.videowidth,height:options.videoheight,autoplay:1,params:{allowfullscreen:true,quality:'high',allowScriptAccess:'sameDomain'},flashvars:{},flashVersion:'9'});}}
Sonata.runVideo.bFlashReady=false;Sonata.runVideo.bJSReady=true;Sonata.runVideo.jsReady=function(){Sonata.runVideo.bFlashReady=true;return Sonata.runVideo.bJSReady;}
Sonata.runVideo.jsFlashCallback=function(action){}
/* chimps.form.js */
CHIMPS={};function ThisToString(){return JSON.encode(this);}
CHIMPS.Form=function(opts){var thisptr=this;var opts=$.extend({},CHIMPS.Form.defOptions,opts);if(!opts.onOK)opts.onOK=onOK;if(!opts.onFailed)opts.onFailed=onFailed;this.options=opts;this.savingDialog=CHIMPS.makeDialog({title:"Saving appication...",okBtn:false,cancelBtn:false});this.goodSaveDialog=CHIMPS.makeDialog({title:"Application saved!",okBtn:true,okcb:savedone,cancelBtn:false});this.badSaveDialog=CHIMPS.makeDialog({title:"Unable to save application!",okBtn:true,okcb:badsavedone,cancelBtn:false});this.fields=$("."+opts.formclass);this.fieldData={};this.fields.each(getfields);getRedArrows();this.submitbtn=$("#"+opts.submitid).click(onsubmit);function getRedArrows(){var name;for(name in thisptr.fieldData){thisptr.addVerifyArrow(name);}}
function getfields(){var p=$(this);var meta=$.extend({},CHIMPS.Form.fldOptions,p.metadata());var data=$.extend({elem:this,$elem:p,id:this.id,name:this.id},meta);data.getText=function(){thisptr.getText(this);}
data.setText=function(s){thisptr.setText(this,s);}
if(data.type=='check'||data.type=='radio'){if(thisptr.fieldData[this.name]){data=thisptr.fieldData[this.name];data.$elem=data.$elem.add(p);}
data.name=this.name;thisptr.fieldData[this.name]=data;}
else{thisptr.fieldData[this.id]=data;}}
function disableSubmit(){thisptr.submitbtn.attr('disabled','disabled');}
function enableSubmit(){thisptr.submitbtn.removeAttr('disabled');}
function onsubmit(){thisptr.hideVerifyArrows();disableSubmit();var values=thisptr.verifyData();if(values.ok==false){thisptr.showVerifyArrows(values.verifyData);enableSubmit();}
else{var text=thisptr.dataToText(values.data);var html=window.escape(thisptr.dataToHtmlForPage(values.data));if(thisptr.options.bIframeTransport){doIframeTransport(values,text,html);return;}
if(thisptr.options.httpsubmit){thisptr.savingDialog.show("Connecting to the CHIMPS server to submit your application. Please wait.");$.post(thisptr.options.httpsubmit,{cmd:'save',data:JSON.encode(values.data),text:text,html:html},ondone,"text");}
else if(thisptr.options.formsubmit){var $form=$("#formId");var $hidden=$("#hiddenFormDataId");var v={cmd:'save',data:JSON.encode(values.data),text:text};$hidden.val(JSON.encode(v));$form.attr("action","mailto: jeff@sonatainc.com");$form[0].submit();}}
function ondone(response){thisptr.savingDialog.hide();thisptr.goodSaveDialog.show("Your application successfully submitted to Chimps Inc.");return;d=Sonata.eval(response);if(d.ok){thisptr.goodSaveDialog.show("Your application successfully submitted to Chimps Inc.");}
else{}}}
function doIframeTransport(values,text,html){var fileinput=$(".fileattachments");var formData=getNameValue(values.data);formData.push({name:"cmd",value:"saveiframe"});formData.push({name:"text",value:text});var opts={formData:formData,fileInput:fileinput,action:thisptr.options.httpsubmit};var counter=0;var iframe=new Transport(opts);thisptr.savingDialog.show("Connecting to the CHIMPS server to submit your application. Please wait.");iframe.send(ondone);function ondone(response){thisptr.savingDialog.hide();thisptr.goodSaveDialog.show("Your application successfully submitted to Chimps Inc.");}
function getNameValue(data){var name,value;var ret=[];for(name in data){if(name=='toString')continue;ret.push({name:name,value:data[name]});mprint("name="+name+" value="+data[name]);}
return ret;}
function Transport(options){var defaults={action:"",formData:[],method:"POST",fileInput:[]};var form,iframe,results="",bCompleted=false;options=$.extend({},defaults,options);this.getResults=function(){return bCompleted?results:null;}
this.isCompleted=function(){return bCompleted;}
this.send=function(completeCallback){bCompleted=false;form=$('<form style="display:none;"></form>');iframe=$('<iframe src="javascript:false;" name="sIframeTransport-'+
(counter+=1)+'"></iframe>').bind('load',function(){var fileInputClones;iframe.unbind('load').bind('load',function(){bCompleted=true;results=iframe.contents().find('body').html();completeCallback(results);$('<iframe src="javascript:false;"></iframe>').appendTo(form);form.remove();});form.attr('target',iframe.attr('name')).attr('action',options.action).attr('method',options.method);if(options.formData){$.each(options.formData,function(index,field){$('<input type="hidden"/>').attr('name',field.name).val(field.value).appendTo(form);});}
if(options.fileInput&&options.fileInput.length&&options.method==='POST'){fileInputClones=options.fileInput.clone();options.fileInput.after(function(index){return fileInputClones[index];});form.append(options.fileInput).attr('enctype','multipart/form-data').attr('encoding','multipart/form-data');}
form.submit();if(fileInputClones&&fileInputClones.length){options.fileInput.each(function(index,input){$(fileInputClones[index]).replaceWith(input);});}});form.append(iframe).appendTo('body');};this.abort=function(){if(iframe){iframe.unbind('load').attr('src','javascript'.concat(':false;'));}
if(form){form.remove();}}};}
function onOK(src){window.location.replace("reg_completed.php?form="+thisptr.options.formname+src);}
function onFailed(src){window.location.replace("reg_completed.php?form="+thisptr.options.formname+"&err=1"+src);}
function savedone(){}
function badsavedone(){}}
CHIMPS.Form.defOptions={formclass:"reg_inputfld",submitid:"reg_submitbtn",formname:"unknown",formsubmit:false,bIframeTransport:false}
CHIMPS.Form.fldOptions={labelid:"",required:true,defValue:"",mincheck:1,ftype:""}
CHIMPS.Form.prototype.getData=function(){var ret={};var name;for(name in this.fieldData){var f=this.fieldData[name];ret[name]=this.getText(f);}
ret.toString=ThisToString;return ret;}
CHIMPS.Form.prototype.setData=function(data){var name;for(name in this.fieldData){var f=this.fieldData[name];if(typeof data[name]!='undefined'){this.setText(f,data[name]);}}}
CHIMPS.Form.prototype.verifyData=function(){var data=this.getData();var verifyData={};var name;var ok=true;var verify=CHIMPS.Form.verifyField;for(name in data){if(typeof data[name]=='function')continue;var f=this.fieldData[name];var s=data[name];var tok=verify(f,s,data,this,false);if(tok==false)ok=false;verifyData[name]=tok;}
verifyData.toString=ThisToString;return{ok:ok,data:data,verifyData:verifyData,toString:ThisToString};function verifyNOTUSED(field,s,data,kmmform,bPartialal){if(field.required==false)return true;if(typeof vfnc=='function')
return vfnc(field,s,data,kmmform);if(s==field.defValue)return false;return true;}}
CHIMPS.Form.prototype.setFieldOptions=function(name,opt){var field=this.fieldData[name];if(field){this.fieldData[name]=$.extend({},field,opt);this.addVerifyArrow(name);}}
CHIMPS.Form.prototype.setVerifyFnc=function(name,vfnc){var field=this.fieldData[name];if(field){field.vfnc=vfnc;}}
CHIMPS.Form.verifyField=function(field,s,data,kmmform,bPartial){if(typeof bPartial=='undefined')bPartial=false;if(field.required==false)return true;if(s==field.defValue){return false;}
if(field.type=='check'){var cnt=0;field.$elem.each(countChecks);if(cnt<field.mincheck)
return false;}
if(bPartial==false&&typeof field.vfnc=='function')
return field.vfnc(field,s,data,kmmform,false);return true;function countChecks(){if(this.checked)cnt++;}}
CHIMPS.Form.prototype.dataToText=function(data,opts){var defopts={emptystr:"[NO VALUE]",filtercb:function(name){return true;}}
var opts=$.extend({},defopts,opts);var s="";var name;for(name in data){if(opts.filtercb(name)==false)continue;var f=this.fieldData[name];if(typeof f=='undefined')continue;var value=data[name];if(typeof value=='function')continue;var label=f.labelid?$("#"+f.labelid).text():"UNKNOWN LABEL";if(typeof f.textlabel!='undefined')label=f.textlabel;if(f.type=='check'){if(value!=""){var tval=value.split("|");s+=label;var csep="";var i,n=tval.length;for(i=0;i<n;i++){s+=csep+tval[i];csep="\n\t";}
s+="\n";continue;}}
if(value=="")value=opts.emptystr;s+=label+"\n\t"+value+"\n";}
return s;}
CHIMPS.Form.prototype.dataToTextHtml=function(data,opts){var defopts={emptystr:"[NO VALUE]",filtercb:function(name){return true;}}
var opts=$.extend({},defopts,opts);var s="";var name;for(name in data){if(opts.filtercb(name)==false)continue;var f=this.fieldData[name];if(typeof f=='undefined')continue;var value=data[name];if(typeof value=='function')continue;var label=f.labelid?$("#"+f.labelid).text():"UNKNOWN LABEL";if(f.textlabel)label=f.textlabel;if(f.type=='check'){if(value!=""){var tval=value.split("|");s+=label;s+="<div style='padding-left:20px;padding-bottom:5px;'>\n";var csep="";var i,n=tval.length;for(i=0;i<n;i++){s+="<div style='padding-bottom:5px;'>"+csep+tval[i]+"</div>";}
s+="</div>\n";continue;}}
if(value=="")value=opts.emptystr;s+=label+"<div style='padding-left:20px;padding-bottom:5px;'>\n"+value+"</div>\n";}
return s;}
CHIMPS.Form.prototype.dataToHtmlForPage=function(data){switch(this.options.formname){default:s=this.dataToHTML(data);break;case"reg_drivesafe":case"reg_drivesafequiz":s=this.dataToTextHtml(data);break;}
return s;}
CHIMPS.Form.prototype.dataToHTML=function(data,opts){var fields=this;return dataToHTML(this,data,opts);function dataToHTML(fields,data,opts){var defopts={emptystr:"[NO VALUE]",filtercb:function(name){return true;},filterLabel:function(field,name,label,tlabel){return tlabel;}}
var opts=$.extend({},defopts,opts);var s="";var name;var tab="&nbsp;&nbsp;&nbsp;&nbsp;";var blocks=getBlocks();var blockname,name2;s="<div style='line-height:1.3em;'>\n";for(blockname in blocks){var p=blocks[blockname];s+="<div align='center' style='font-weight:bold;padding:0px 0px 5px 0px;'>"+blockname+"</div>\n";for(name2 in p.names){s+=addName(name2);}}
s+="</div>\n";return s;function addName(name){var s="";if(typeof(data[name])=='undefined')return s;if(opts.filtercb(name)==false)return s;var f=fields.fieldData[name];var value=data[name];if(typeof value=='function')return s;var label=f.labelid?$("#"+f.labelid).text():"UNKNOWN LABEL";var tlabel=label;if(typeof f.textlabel!='undefined')tlabel=f.textlabel;label=opts.filterLabel(f,name,label,tlabel);if(f.type=='check'){if(value!=""){var tval=value.split("|");s+=label;var csep="";var i,n=tval.length;s+="<div style='padding-left:20px;padding-bottom:5px;font-weight:normal;'>\n";for(i=0;i<n;i++){s+=csep+tval[i];csep="<br>\n";}
s+="</div>\n";return s;}}
if(value=="")value=opts.emptystr;s+=label+"<div style='padding-left:20px;padding-bottom:5px;font-weight:normal;'>\n"+value+"</div>\n";return s;}}
function getBlocks(){var blockTitles=$(".reg_blockstart2");var fieldData=fields.fieldData;var blocks={};blockTitles.each(getNames);return blocks;function getNames(){var block=$(this);var blockname=getBlockTitle(block);if(blockname=="CHIMPS Record Status")return;var sib=block.next(".reg_block");var flds=$(".reg_inputfld",sib);var names={};flds.each(get);blocks[blockname]={bgcolor:sib.css("background-color"),names:names};function get(){var f=$(this);var name=this.id;var fobj=fieldData[name];if(typeof fobj=='undefined'){fobj=fieldData[this.name];name=this.name;}
names[name]=fobj;}}}
function getBlockTitle(div){var opts={blockname:div.html()};var d=div.metadata();if(typeof d.blockname!='undefined')opts.blockname=d.blockname;return opts.blockname;}}
CHIMPS.Form.prototype.getText=function(field){var s="";var type=field.type.toString();switch(type){case'text':case'select':case'textarea':case'hidden':s=field.$elem.val();break;case'radio':s=CHIMPS.Form.getRadioValueForGroup(field.$elem);break;case'check':s=CHIMPS.Form.getCheckValueForGroup(field.$elem);break;}
return s;function fixPhone(s){var r="";var lo='0'.charCodeAt(0);var hi='9'.charCodeAt(0);var x='x'.charCodeAt(0);var X='X'.charCodeAt(0);var i,n=s.length;for(i=0;i<n;i++){var c=s.charCodeAt(i);if((c>=lo&&c<=hi)||c==x||c==X)
r+=s.charAt(i);}
return r;}}
CHIMPS.Form.prototype.setText=function(field,s){var type=field.type.toString();switch(type){case'text':case'select':case'textarea':case'hidden':s=field.$elem.val(s);break;case'radio':s=CHIMPS.Form.setRadioValueForGroup(field.$elem,s);break;case'check':s=CHIMPS.Form.setCheckValueForGroup(field.$elem,s);break;}
return s;}
CHIMPS.Form.prototype.clearData=function(){var name;for(name in this.fieldData){var f=this.fieldData[name];this.setText(f,"");}}
CHIMPS.Form.getRadioValueForGroup=function($all){var s="";var sep="";$all.each(get);return s;function get(){if(this.checked)s=this.value;}}
CHIMPS.Form.getCheckValueForGroup=function($all){var s="";var sep="";$all.each(get);return'|'+s+'|';function get(){if(this.checked){s+=sep+this.value;sep="|";}}}
CHIMPS.Form.setRadioValueForGroup=function($all,s){$all.each(set);function set(){this.checked=false;if(this.value==s)this.checked=true;}}
CHIMPS.Form.setCheckValueForGroup=function($all,s){var items=s.split("|");$all.each(set);function set(){this.checked=false;var i,n=items.length;for(i=0;i<n;i++){if(items[i]==this.value)this.checked=true;}}}
CHIMPS.Form.prototype.addVerifyArrow=function(name){var field=this.fieldData[name];if(field){if(field.labelid){var label=$("#"+field.labelid);field.verifyArrow=CHIMPS.getRedArrow(label,{});}
else field.verifyArrow=null;}}
CHIMPS.Form.prototype.showVerifyArrows=function(verifyData){this._showhideVerifyArrows(true,verifyData);}
CHIMPS.Form.prototype.hideVerifyArrows=function(verifyData){this._showhideVerifyArrows(false,verifyData);}
CHIMPS.Form.prototype.scrollTo=function(id){var e=$("#"+id);var offs=e.offset();var top=offs.top-50;var body=$(document);CHIMPS.scrollTop(top,body,700);}
CHIMPS.Form.prototype._showhideVerifyArrows=function(bShow,verifyData){var name;var arrows=[];for(name in this.fieldData){var field=this.fieldData[name];if(field.verifyArrow){if(bShow){if(verifyData[name]==false){field.verifyArrow.show();arrows.push(field.verifyArrow);}}
else field.verifyArrow.hide();}}
if(bShow&&arrows.length>0){setTimeout(scrollIt,20);}
function scrollIt(){var toparrow=findTopArrow(arrows);var offs=toparrow.arrow.offset();var top=offs.top-50;var body=$(document);CHIMPS.scrollTop(top,body,700);}
function findTopArrow(arrows){var i,n=arrows.length;var top=arrows[0].arrow.offset().top;var toparrow=arrows[0];for(i=1;i<n;i++){var a=arrows[i];var offs=a.arrow.offset();if(offs.top<top){top=offs.top;toparrow=a;}}
return toparrow;}
function scrollNOTUSED(top,body,ms){var ctop=body.scrollTop();var wht=$(window).height();if(top>=ctop&&top<=(ctop+wht-50))return;var dif=Math.abs(top-ctop);var time=20;var dt=time/ms;var dy=2*Math.floor(dt*dif);if(dy<=0)dy=10;if(top<ctop)
dy=-dy;var ival=setInterval(doscroll,time);function doscroll(){var inctop=ctop;ctop+=dy;if(dy<0&&ctop<top)ctop=top;else if(dy>0&&ctop>top)ctop=top;body.scrollTop(ctop);if((dy<0&&ctop<=top)||(dy>0&&ctop>=top)){clearInterval(ival);}}}}
CHIMPS.Form.prototype.toJSON=function(obj){return CHIMPS.Form.toJSON(obj);}
CHIMPS.Form.toJSON=function(obj){return JSON.encode(obj);s=doit(obj);return s;function doit(obj){var t=obj instanceof Array;var s="";if(t)
s+=getArray(obj);else if(typeof obj=="object")
s+=getObject(obj);else
s+='"'+obj+'"';return s;}
function getArray(arr){var s="[";var i,n=arr.length;var sep="";for(i=0;i<n;i++){var p=arr[i];s+=sep+doit(p);sep=" , ";}
s+="]";return s;}
function getObject(obj){var name;var s="{";var sep="";for(name in obj){var v=doit(obj[name]);s+=sep+'"'+name+'" : '+v+'';sep=" , ";}
s+=" }";return s;}}
CHIMPS.Form.getSelectValue=function(ctl,empty){if(typeof empty=='undefined')
empty="";var elem=ctl[0];if(elem.selectedIndex<0)
return"";var s=elem.options[elem.selectedIndex].value;if(s==empty)return"";return s;}
CHIMPS.Form.setSelectValue=function(ctl,value){var elem=ctl[0];var i,n=elem.options.length;if(value==""){elem.selectedIndex=0;}
else{for(i=0;i<n;i++){var o=elem.options[i];if(o.value==value){elem.selectedIndex=i;break;}}}}
CHIMPS.eval=function(text)
{var v='('+text+')';return eval(v);}
CHIMPS.dlgOptions={moverBgColor:"rgb(178,1,1)",moverCss:"",titleCss:"color:#ffffff;",bodyCss:"",closeBtn:false,closeOnEsc:false,modal:true,bgColor:"#000000",bgAlpha:.2};CHIMPS.makeDialog=function(dlgOpts){var thisptr=this;dlgOpts=$.extend({},{title:"Working...",ondone:null,okBtn:false,cancelBtn:false,okcb:null,cancelcb:null},dlgOpts);var title=dlgOpts.title;var okcb=dlgOpts.okcb;var cancelcb=dlgOpts.cancelcb;var okBtn=dlgOpts.okBtn;var cancelBtn=dlgOpts.cancelBtn;var dlgopts=CHIMPS.dlgOptions;var opts=$.extend({},dlgopts);var dlg=Sonata.DialogCtrl.makeDialogBox(opts);var okid="ok-btn"+document.uniqueId();var cancelid="cancel-btn"+document.uniqueId();var errid="ok-errmsg"+document.uniqueId();var html="<div id='"+errid+"'>&nbsp;</div>";if(okBtn||cancelBtn){var okhtml="<button id='"+okid+"' type='button'>Ok</button>";var cancelhtml="<button id='"+cancelid+"' type='button'>Cancel</button>";var btnhtml="";if(okBtn&&cancelBtn)btnhtml=okhtml+"&nbsp;&nbsp;"+cancelhtml;else if(okBtn)btnhtml=okhtml;else if(cancelBtn)btnhtml=cancelhtml;html+="<br><div align='center' style='padding-top:10px;'>"+btnhtml+"<div>";}
if(typeof title=='undefined')
title="Working...";dlg.setHtml(dlg.options.titleid,title);dlg.setHtml(dlg.options.bodyid,html);dlg.showOrig=dlg.show;dlg.show=showme;setTimeout(getelems,200);return dlg;function showme(errmsg,title){if(typeof title!='undefined')
dlg.setHtml(dlg.options.titleid,title);dlg.setHtml(errid,errmsg);dlg.showOrig();}
function getelems(){$("#"+okid).click(ok);$("#"+cancelid).click(oncancel);}
function ok(){dlg.hide();if(typeof okcb=='function')
okcb();}
function oncancel(){dlg.hide();if(typeof cancelcb=='function')
cancelcb();}}
CHIMPS.getRedArrow=function(labelElem,opts){var defopts=CHIMPS.getRedArrow.defaultOptions;opts=$.extend({},defopts,opts);var textid=document.uniqueId("arrow");var ret={arrow:mkarrow(textid),show:show,hide:hide,textid:textid};return ret;function show(text){var offs=labelElem.offset();var arrow=ret.arrow;arrow.css("position","absolute");arrow.css("display","inline");$('body').append(arrow);document.body.appendChild(arrow[0]);if(typeof text=='string'){$("#"+textid).html(text);}
var w=arrow.width();arrow.css("left",(offs.left-w+opts.dx)+'px');arrow.css("top",(offs.top+opts.dy)+'px');arrow.css("visibility","visible");}
function hide(){var arrow=ret.arrow[0];try{document.body.removeChild(arrow);}
catch(excep){}}
function mkarrow(textid){var offs=labelElem.offset();var arrow=$("<span>");arrow.css("position","absolute");arrow.css("left",(offs.left-120)+'px');arrow.css("top",(offs.top)+'px');arrow.attr("id",document.uniqueId("arrow"));var name;for(name in opts.css){arrow.css(name,opts.css[name]);}
arrow.css("display","inline");arrow.html("<span id='"+textid+"' style='cursor:default;'>"+opts.text+"</span> <img src='js/redarrow.gif'>");arrow.hide();return arrow;}}
CHIMPS.getRedArrow.defaultOptions={text:"Please complete",css:{'background-color':"transparent",'font-size':"9pt",'font-family':"arial",'font-weight':"bold",color:"red",cursor:"default"},dx:-15,dy:3};CHIMPS.scrollTop=function(top,body,ms){var ctop=body.scrollTop();var wht=$(window).height();if(top>=ctop&&top<=(ctop+wht-50))return;var dif=Math.abs(top-ctop);var start=new Date().getTime();var cnt=0;var dir=top<ctop?-1:1;var ival=setInterval(doscroll,50);function doscroll(){cnt++;var inctop=ctop;var dtime=new Date().getTime()-start;var pos=ctop+dir*Math.floor(dtime/ms*dif);if(dtime>=ms||cnt>100){pos=top;clearInterval(ival);}
body.scrollTop(pos);}}
CHIMPS.escapeObj=function(data){var name;var ret={};for(name in data){ret[name]=CHIMPS.escape(data[name]);}
return ret;}
CHIMPS.unescapeObj=function(data){var name;var ret={};for(name in data){ret[name]=CHIMPS.unescape(data[name]);}
return ret;}
CHIMPS.escape=function(s){if(typeof s!='string')return s;var ret=s.replace(/\'/g,"[SQ]");ret=ret.replace(/\"/g,"[DQ]");ret=ret.replace(/\n/g,"[NL]");return ret;}
CHIMPS.unescape=function(s){if(typeof s!='string')return s;var ret=s.replace(/\[SQ\]/g,"'");ret=ret.replace(/\[DQ\]/g,'"');ret=ret.replace(/\[NL\]/g,"\n");return ret;}
CHIMPS.printForm=function(fields,title){var scrollTop=$(document).scrollTop();var $body=$(document.body);$("#wrapper").css({visibility:'hidden',display:'none'}).addClass("noprint_div");var div=$("<div>").css({position:'absolute',left:0,top:0,width:650,padding:5,backgroundColor:'white'}).addClass("print_div").addClass("printFormStyle");var values=fields.verifyData();var dtext;dtext=fields.dataToHtmlForPage(values.data);var html="<div align='center' style='font-size:11pt;font-family:verdana;'><b>"+title+"</b></div><div style='line-height:1.3em;'>"+dtext+"</div>";div.html(html);$(document).scrollTop(0);$('body').addClass('printbgcolor');$('body').append(div);var doneButton=$("<button type='button'>");doneButton.css({position:'absolute',left:650+20,top:25,display:'block',fontSize:'12pt'})
doneButton.html("Return to Application")
doneButton.addClass("noprint_div")
doneButton.click(after);document.body.appendChild(doneButton[0]);window.print();function after(){$('body').removeClass('printbgcolor');$("#wrapper").css({visibility:'visible',display:'block'}).removeClass("noprint_div");try{document.body.removeChild(div[0]);document.body.removeChild(doneButton[0]);}
catch(e){}
$(document).scrollTop(scrollTop);}}
/* json2.js */
var JSON;if(!JSON){JSON={};}
(function(){"use strict";function f(n){return n<10?'0'+n:n;}
if(typeof Date.prototype.toJSON!=='function'){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+'-'+
f(this.getUTCMonth()+1)+'-'+
f(this.getUTCDate())+'T'+
f(this.getUTCHours())+':'+
f(this.getUTCMinutes())+':'+
f(this.getUTCSeconds())+'Z':null;};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};}
var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==='string'?c:'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);})+'"':'"'+string+'"';}
function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(key);}
if(typeof rep==='function'){value=rep.call(holder,key,value);}
switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';}
gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==='[object Array]'){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||'null';}
v=partial.length===0?'[]':gap?'[\n'+gap+partial.join(',\n'+gap)+'\n'+mind+']':'['+partial.join(',')+']';gap=mind;return v;}
if(rep&&typeof rep==='object'){length=rep.length;for(i=0;i<length;i+=1){k=rep[i];if(typeof k==='string'){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}
v=partial.length===0?'{}':gap?'{\n'+gap+partial.join(',\n'+gap)+'\n'+mind+'}':'{'+partial.join(',')+'}';gap=mind;return v;}}
if(typeof JSON.stringify!=='function'){JSON.stringify=function(value,replacer,space){var i;gap='';indent='';if(typeof space==='number'){for(i=0;i<space;i+=1){indent+=' ';}}else if(typeof space==='string'){indent=space;}
rep=replacer;if(replacer&&typeof replacer!=='function'&&(typeof replacer!=='object'||typeof replacer.length!=='number')){throw new Error('JSON.stringify');}
return str('',{'':value});};}
if(typeof JSON.parse!=='function'){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==='object'){for(k in value){if(Object.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v;}else{delete value[k];}}}}
return reviver.call(holder,key,value);}
text=String(text);cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return'\\u'+
('0000'+a.charCodeAt(0).toString(16)).slice(-4);});}
if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,'@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']').replace(/(?:^|:|,)(?:\s*\[)+/g,''))){j=eval('('+text+')');return typeof reviver==='function'?walk({'':j},''):j;}
throw new SyntaxError('JSON.parse');};}}());JSON.encode=JSON.stringify;JSON.decode=JSON.parse;
