/*
 *  Check browser plug-in.
 *
 *  Copyright 2010 Brian Dartt
 *
 *  Date: 2010-12-23
 */
(function($){var _validBrowsers=[{name:"msie",majorversionmin:"7",minorversionmin:"0",upgradeinfo:"You have a version of Internet Explorer that is not supported by this website.<br>Please upgrade to MSIE version 7 or greater by clicking on the following link: ",upgradeurl:"<a href='http://www.microsoft.com/windows/products/winfamily/ie/default.mspx' target='_new'>Upragde my Internet Explorer</a>"},{name:"firefox",majorversionmin:"2",minorversionmin:"0.0.13",upgradeinfo:"You have a version of FireFox that is not supported by this website.<br>Please upgrade to FireFox version 2 or greater by clicking on the following link: ",upgradeurl:"<a href='http://www.mozilla.com/en-US/firefox/' target='_new'>Upgrade my FireFox</a>"},{name:"mozilla",majorversionmin:"2",minorversionmin:"0.0.13",upgradeinfo:"You have a version of Mozilla that is not supported by this website.<br>Please upgrade to Mozilla version 2 or greater by clicking on the following link: ",upgradeurl:"<a href='http://www.mozilla.org/' target='_new'>Upgrade to FireFox</a>"},{name:"safari",majorversionmin:"3",minorversionmin:"1.12",upgradeinfo:"You have a version of Safari that is not supported by this website.<br>Please upgrade to Safari version 3 or greater by clicking on the following link: ",upgradeurl:"<a href='http://www.apple.com/safari/' target='_new'>Upgrade my Safari</a>"},{name:"chrome",majorversionmin:"4",minorversionmin:"0",upgradeinfo:"You have a version of Chrome that is not supported by this website.<br>Please upgrade to Chrome version 4 or greater by clicking on the following link: ",upgradeurl:"<a href='http://www.google.com/chrome/' target='_new'>Upgrade my Chrome</a>"},{name:"opera",majorversionmin:"10",minorversionmin:"0",upgradeinfo:"You have a version of Opera that is not supported by this website.<br>Please upgrade to Opera version 10 or greater by clicking on the following link: ",upgradeurl:"<a href='http://www.opera.com/' target='_new'>Upgrade my Opera</a>"}];
var _getBrowserInfo=function(){var b=new Array("unknown","unknown","unknown","unknown");var brs=navigator.userAgent.toLowerCase();if(brs.search(/chrome[\/\s](\d+([\.-]\d)*)/)!=-1){b[0]="chrome";b[1]=brs.match(/chrome[\/\s](\d+([\.-][\d]+)*)/)[1];b[2]="gecko";b[3]="";return b;}else{if(brs.search(/omniweb[\/\s]v?(\d+([\.-]\d)*)/)!=-1){b[0]="omniweb";b[1]=brs.match(/omniweb[\/\s]v?(\d+([\.-]\d)*)/)[1];(b[1]>4.5?b[2]="khtml":b[2]="omniweb");(brs.search(/omniweb[\/\s]((\d+([\.-]\d)*)-)?v(\d+([\.-]\d)*)/)==-1?b[3]=brs.match(/omniweb[\/\s](\d+([\.-]\d)*)/)[1]:b[3]=brs.match(/omniweb[\/\s]((\d+([\.-]\d)*)-)?v(\d+([\.-]\d)*)/)[4]);return b;}else{if(brs.search(/opera[\/\s](\d+(\.?\d)*)/)!=-1){b[0]="opera";b[1]=brs.match(/opera[\/\s](\d+(\.?\d)*)/)[1];b[2]="opera";b[3]=b[1];return b;}else{if(brs.search(/crazy\s?browser\s(\d+(\.?\d)*)/)!=-1){b[0]="crazy";b[1]=brs.match(/crazy\s?browser\s(\d+(\.?\d)*)/)[1];b[2]="msie";b[3]=brs.match(/msie\s(\d+(\.?\d)*)/)[1];return b;}else{if(brs.search(/myie2/)!=-1){b[0]="myie2";
b[2]="msie";b[3]=brs.match(/msie\s(\d+(\.?\d)*)/)[1];return b;}else{if(brs.search(/netcaptor/)!=-1){b[0]="netcaptor";b[1]=brs.match(/netcaptor\s(\d+(\.?\d)*)/)[1];b[2]="msie";b[3]=brs.match(/msie\s(\d+(\.?\d)*)/)[1];return b;}else{if(brs.search(/avant\sbrowser/)!=-1){b[0]="avantbrowser";b[2]="msie";b[3]=brs.match(/msie\s(\d+(\.?\d)*)/)[1];return b;}else{if(brs.search(/msn\s(\d+(\.?\d)*)/)!=-1){b[0]="msn";b[1]=brs.match(/msn\s(\d+(\.?\d)*)/)[1];b[2]="msie";b[3]=brs.match(/msie\s(\d+(\.?\d)*)/)[1];return b;}else{if(brs.search(/msie\s(\d+(\.?\d)*)/)!=-1){b[0]="msie";b[1]=brs.match(/msie\s(\d+(\.?\d)*)/)[1];b[2]="msie";b[3]=b[1];return b;}else{if(brs.search(/powermarks\/(\d+(\.?\d)*)/)!=-1){b[0]="powermarks";b[1]=brs.match(/powermarks\/(\d+(\.?\d)*)/)[1];b[2]="msie";try{b[3]=brs.match(/msie\s(\d+(\.?\d)*)/)[1];}catch(e){}return b;}else{if(brs.search(/konqueror[\/\s](\d+([\.-]\d)*)/)!=-1){b[0]="konqueror";b[1]=brs.match(/konqueror[\/\s](\d+([\.-]\d)*)/)[1];b[2]="khtml";return b;}else{if(brs.search(/safari\/(\d)*/)!=-1){b[0]="safari";
b[1]=brs.match(/version\/(\d+(\.?\d*)*)/)[1];b[2]="khtml";b[3]=brs.match(/applewebkit\/(\d+(\.?\d*)*)/)[1];return b;}else{if(brs.search(/zyborg/)!=-1){b[0]="zyborg";b[1]=brs.match(/zyborg\/(\d+(\.?\d)*)/)[1];b[2]="robot";b[3]="-1";return b;}else{if(brs.search(/netscape6[\/\s](\d+([\.-]\d)*)/)!=-1){b[0]="netscape";b[1]=brs.match(/netscape6[\/\s](\d+([\.-]\d)*)/)[1];b[2]="gecko";b[3]="";return b;}else{if(brs.search(/netscape\/(7\.\d*)/)!=-1){b[0]="netscape";b[1]=brs.match(/netscape\/(7\.\d*)/)[1];b[2]="gecko";b[3]="";return b;}else{if(brs.search(/galeon[\/\s](\d+([\.-]\d)*)/)!=-1){b[0]="galeon";b[1]=brs.match(/galeon[\/\s](\d+([\.-]\d)*)/)[1];b[2]="gecko";b[3]="";return b;}else{if(brs.search(/nautilus[\/\s](\d+([\.-]\d)*)/)!=-1){b[0]="nautilus";b[1]=brs.match(/nautilus[\/\s](\d+([\.-]\d)*)/)[1];b[2]="gecko";b[3]="";return b;}else{if(brs.search(/firefox[\/\s](\d+([\.-]\d)*)/)!=-1){b[0]="firefox";b[1]=brs.match(/firefox[\/\s](\d+([\.-][\d]+)*)/)[1];b[2]="gecko";b[3]="";return b;}else{if(brs.search(/k-meleon[\/\s](\d+([\.-]\d)*)/)!=-1){b[0]="kmeleon";
b[1]=brs.match(/k-meleon[\/\s](\d+([\.-]\d)*)/)[1];b[2]="gecko";b[3]="";return b;}else{if(brs.search(/playstation\s3/)!=-1){b[0]="netfront";b[1]="2.81";b[2]="playstation3";b[3]=brs.match(/playstation\s3;\s(\d+\.\d+)/)[1];return b;}else{if(brs.search(/firebird[\/\s](\d+([\.-]\d)*)/)!=-1){b[0]="firebird";b[1]=brs.match(/firebird[\/\s](\d+([\.-]\d)*)/)[1];b[2]="gecko";b[3]="";return b;}else{if(brs.search(/phoenix[\/\s](\d+([\.-]\d)*)/)!=-1){b[0]="phoenix";b[1]=brs.match(/phoenix[\/\s](\d+([\.-]\d)*)/)[1];b[2]="gecko";b[3]="";return b;}else{if(brs.search(/camino[\/\s](\d+([\.-]\d)*)/)!=-1){b[0]="camino";b[1]=brs.match(/camino[\/\s](\d+([\.-]\d)*)/)[1];b[2]="gecko";b[3]="";return b;}else{if(brs.search(/epiphany[\/\s](\d+([\.-]\d)*)/)!=-1){b[0]="epiphany";b[1]=brs.match(/epiphany[\/\s](\d+([\.-]\d)*)/)[1];b[2]="gecko";b[3]="";return b;}else{if(brs.search(/chimera[\/\s](\d+([\.-]\d)*)/)!=-1){b[0]="chimera";b[1]=brs.match(/chimera[\/\s](\d+([\.-]\d)*)/)[1];b[2]="gecko";b[3]="";return b;}else{if(brs.search(/icab[\s\/]?(\d+(\.?\d)*)/)!=-1){b[0]="icab";
b[1]=brs.match(/icab[\s\/]?(\d+(\.?\d)*)/)[1];b[2]="icab";b[3]=b[1];return b;}else{if(brs.search(/netfront\/(\d+([\._]\d)*)/)!=-1){b[0]="netfront";b[1]=brs.match(/netfront\/(\d+([\._]\d)*)/)[1];b[2]="netfront";b[3]=b[1];return b;}else{if(brs.search(/netscape4\/(\d+([\.-]\d)*)/)!=-1){b[0]="netscape";b[1]=brs.match(/netscape4\/(\d+([\.-]\d)*)/)[1];b[2]="mozold";b[3]=b[1];return b;}else{if((brs.search(/mozilla\/(4.\d*)/)!=-1)&&(brs.search(/msie\s(\d+(\.?\d)*)/)==-1)){b[0]="netscape";b[1]=brs.match(/mozilla\/(4.\d*)/)[1];b[2]="mozold";b[3]=b[1];return b;}else{if((brs.search(/mozilla\/5.0/)!=-1)&&(brs.search(/gecko\//)!=-1)){b[0]="mozsea";b[1]=brs.match(/rv\x3a(\d+(\.?\d)*)/)[1];b[2]="gecko";b[3]="";return b;}else{if(brs.search(/elinks/)!=-1){b[0]="elinks";(brs.search(/elinks\/(\d+(\.?\d)*)/)==-1?b[1]=brs.match(/elinks\s\x28(\d+(\.?\d)*)/)[1]:b[1]=brs.match(/elinks\/(\d+(\.?\d)*)/)[1]);b[2]="elinks";b[3]=b[1];return b;}else{if(brs.search(/w3m\/(\d+(\.?\d)*)/)!=-1){b[0]="w3m";b[1]=brs.match(/(^w3m|\sw3m)\/(\d+(\.?\d)*)/)[2];
b[2]="w3m";b[3]=b[1];return b;}else{if(brs.search(/links/)!=-1){b[0]="links";(brs.search(/links\/(\d+(\.?\d)*)/)==-1?b[1]=brs.match(/links\s\x28(\d+(\.?\d)*)/)[1]:b[1]=brs.match(/links\/(\d+(\.?\d)*)/)[1]);b[2]="links";b[3]=b[1];return b;}else{if(brs.search(/java[\/\s]?(\d+([\._]\d)*)/)!=-1){b[0]="java";b[1]=brs.match(/java[\/\s]?(\d+([\._]\d)*)/)[1];b[2]="java";b[3]=b[1];return b;}else{if(brs.search(/lynx/)!=-1){b[0]="lynx";b[1]=brs.match(/lynx\/(\d+(\.?\d)*)/)[1];b[2]="libwww-fm";b[3]=brs.match(/libwww-fm\/(\d+(\.?\d)*)/)[1];return b;}else{if(brs.search(/wget/)!=-1){b[0]="wget";b[1]=brs.match(/wget\/(\d+(\.?\d)*)/)[1];b[2]="robot";b[3]="-1";return b;}else{if(brs.search(/googlebot\-image/)!=-1){b[0]="googlebotimg";b[1]=brs.match(/googlebot\-image\/(\d+(\.?\d)*)/)[1];b[2]="robot";b[3]="-1";return b;}else{if(brs.search(/googlebot/)!=-1){b[0]="googlebot";b[1]=brs.match(/googlebot\/(\d+(\.?\d)*)/)[1];b[2]="robot";b[3]="-1";return b;}else{if(brs.search(/msnbot/)!=-1){b[0]="msnbot";b[1]=brs.match(/msnbot\/(\d+(\.?\d)*)/)[1];
b[2]="robot";b[3]="-1";return b;}else{if(brs.search(/turnitinbot/)!=-1){b[0]="turnitinbot";b[1]=brs.match(/turnitinbot\/(\d+(\.?\d)*)/)[1];b[2]="robot";b[3]="-1";return b;}else{b[0]="unknown";return b;}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}};var _testCookies=function(){var rval=(navigator.cookieEnabled)?true:false;if(typeof navigator.cookieEnabled=="undefined"&&!rval){document.cookie="testcookie";rval=(document.cookie.indexOf("testcookie")!=-1)?true:false;}return rval;};var _binfo=_getBrowserInfo();var _cbr=_binfo[0];var _cvs=_binfo[1];var _cmg=parseInt(_cvs&&_cvs!=""?(_cvs.search(/\./)==-1?_cvs:_cvs.match(/(\d*)(\.\d*)*/)[1]):-1);var _cmn=(_cvs&&_cvs!=""?(_cvs.search(/\./)==-1?0:_cvs.match(/\.(\d*([-\.]\d*)*)/)[1]):-1);var _bvalid=(_binfo[2]&&_binfo[2]=="robot");var _bindex=-1;for(var i=0;!_bvalid&&i<_validBrowsers.length;i++){var vbr=_validBrowsers[i];if(_cbr==vbr.name){_bindex=i;if(_cmg&&(_cmg>=vbr.majorversionmin)){if(_cmg>vbr.majorversionmin){_bvalid=true;}else{if(_cmn&&(_cmn>=vbr.minorversionmin)){_bvalid=true;
}}}}}if(_bindex>=_validBrowsers.length){_bindex=-1;}$.checkBrowser=function(url){if(!_bvalid){window.location=url;}};$.fn.testCookies=function(){if(!_testCookies()){return this.each(function(){$(this).css("display","block");});}};$.fn.browserUpgradeText=function(){return this.each(function(){if(_bvalid){$(this).html("You are using a browser that this website supports. No upgrade is neccessary. <a href='/home.do?ignoreWarning=yes'>Click here to re-enter our site</a>.");}else{if(_bindex>=0&&_validBrowsers[_bindex]){var vbr=_validBrowsers[_bindex];$(this).html(vbr.upgradeinfo+"&nbsp;&nbsp;&nbsp;"+vbr.upgradeurl);}else{$(this).html("You are using a browser that this website does not currently support. Please use one of the supported browsers listed below.");}}});};})(jQuery);
/*
 *  Form validators plug-in.
 *
 *  Copyright 2010 Brian Dartt
 *
 *  Date: 2010-12-23
 */
(function($){var constants={EMAIL:"[\\da-zA-Z]+([\\da-zA-Z]*[-._+&'])*@(((?:(?:[\\da-zA-Z](?:[-\\da-zA-Z]{0,61}[\\da-zA-Z])?)\\.)+(?:[a-zA-Z](?:[-\\da-zA-Z]{0,6}[\\da-zA-Z])?)\\.?))",ZIP_USA:"^\\d{5}(-\\d{4})?$",ZIP_CAN:"^[ABCEGHJKLMNPRSTVXYabceghjklmnprstvxy]{1}\\d{1}[A-Za-z]{1} *\\d{1}[A-Za-z]{1}\\d{1}$",PHONE:"^\\d{3}-\\d{3}-\\d{4}$",PASS_MIN:4,PASS_MAX:12,CC_MIN:13,CC_MAX:16};
var defaultValidator={messages:{"js-required-error":"this field is required","js-match-error":"does not match","js-birthdate-error":"a valid date is required","js-state-error":"this field is required for U.S. and Canadian addresses","js-zip-USA-error":"a valid zip code is required (e.g. 12345 or 12345-1234)","js-zip-CAN-error":"a valid postal code is required (e.g. K1A 0B1)","js-phone-error":"a valid phone number is required (e.g. 212-321-4321)","js-email-error":"is not a valid email (e.g. john@yahoo.com)","js-password-error":"must be between 4 and 12 characters"},functions:{"js-required":function(value){return(value&&$.trim(value).length>0);},"js-match":function(value1,value2){var tvalue1=(value1?$.trim(value1):"");var tvalue2=(value2?$.trim(value2):"");return(tvalue1==tvalue2);},"js-birthdate":function(month,day,year){var tmonth=(month?$.trim(month):"");var tday=(day?$.trim(day):"");var tyear=(year?$.trim(year):"");return(tmonth.length>0&&tday.length>0&&tyear.length>0);},"js-state":function(value,country){var tvalue=(value?$.trim(value):"");
var tcountry=(country?$.trim(country):"");if(tcountry=="USA"||tcountry=="CAN"){return(tvalue.length>0);}else{return true;}},"js-zip":function(value,country){var tvalue=(value?$.trim(value):"");var tcountry=(country?$.trim(country):"");if(tcountry=="USA"){var pattern=new RegExp(constants.ZIP_USA);return(tvalue.length>0&&pattern.test(tvalue));}else{if(tcountry=="CAN"){var pattern=new RegExp(constants.ZIP_CAN);return(tvalue.length>0&&pattern.test(tvalue));}else{return true;}}},"js-email":function(value){var pattern=new RegExp(constants.EMAIL);var tvalue=(value?$.trim(value):"");return pattern.test(tvalue);},"js-phone":function(value){var pattern=new RegExp(constants.PHONE);var tvalue=(value?$.trim(value):"");return pattern.test(tvalue);},"js-password":function(value){var tvalue=(value?$.trim(value):"");return(tvalue.length>=constants.PASS_MIN&&tvalue.length<=constants.PASS_MAX);}},fields:{},formarea:null,validate:function(){var rval=true;var errors=[];var $earea=$(this.formarea).find(".validation-errors");
if($earea.css("display")!="none"){$earea.css("display","none");}for(var fid in this.fields){var fvalid=true;for(var i=0;fvalid&&i<this.fields[fid].length;i++){var isvalid=true;var name=this.fields[fid][i];var $field=$("#"+fid);var $label=$("label[for='"+fid+"']");var message=this.messages[name+"-error"];var value=$field.val();var func=this.functions[name];if(name=="js-birthdate"){var day=$field.siblings(".day").val();var year=$field.siblings(".year").val();isvalid=func(value,day,year);}else{if(!func){if(name.indexOf("js-match")==0){func=this.functions["js-match"];var mid=name.substring(9);var $match=$("#"+mid);var value2=$match.val();isvalid=func(value,value2);message=this.messages["js-match-error"];}else{if(name.indexOf("js-state")==0){func=this.functions["js-state"];var cid=name.substring(9);var $country=$("#"+cid);var country=$country.val();isvalid=func(value,country);message=this.messages["js-state-error"];}else{if(name.indexOf("js-zip")==0){func=this.functions["js-zip"];var cid=name.substring(7);
var $country=$("#"+cid);var country=$country.val();isvalid=func(value,country);message=this.messages["js-zip-"+country+"-error"];}}}}else{isvalid=func(value);}}if(!isvalid){fvalid=false;if(!$field.hasClass("invalid")){$field.addClass("invalid");}if(!$label.hasClass("invalid")){$label.addClass("invalid");}if($label.html()){errors[errors.length]="<u>"+$label.html()+"</u> "+message;}if(name=="js-birthdate"){var $day=$field.siblings(".day");var $year=$field.siblings(".year");if(!$day.hasClass("invalid")){$day.addClass("invalid");}if(!$year.hasClass("invalid")){$year.addClass("invalid");}}}else{if($field.hasClass("invalid")){$field.removeClass("invalid");}if($label.hasClass("invalid")){$label.removeClass("invalid");}if(name=="js-birthdate"){var $day=$field.siblings(".day");var $year=$field.siblings(".year");if($day.hasClass("invalid")){$day.removeClass("invalid");}if($year.hasClass("invalid")){$year.removeClass("invalid");}}}}if(!fvalid){rval=false;}}if(!rval){var ehtml="";for(var i=0;i<errors.length;
i++){ehtml+="<li>"+errors[i]+"</li>";}$earea.find("ul").html(ehtml);$earea.slideDown("fast");}else{$earea.find("ul").html("");}return rval;},init:function(formarea){var _validator=this;_validator.formarea=formarea;var $earea=$(formarea).find(".validation-errors");var ehtml=$earea.find("ul").html();if(ehtml&&$.trim(ehtml).length>0){$earea.css("display","block");}$(formarea).find("select, input, textarea").each(function(){var $field=$(this);var fid=$field.attr("id");var fclass=$field.attr("class");if(fid&&fclass){var classes=fclass.split(" ");for(var i=0;i<classes.length;i++){var thisclass=classes[i];if(thisclass.indexOf("js-")==0){var fields=_validator.fields[fid];if(!fields){_validator.fields[fid]=[];fields=_validator.fields[fid];}fields[fields.length]=thisclass;}if(thisclass.indexOf("js-state")==0){var cid=thisclass.substring(9);var $country=$("#"+cid);$country.change(function(){var id=$(this).attr("id");var country=$(this).val();var $state=$(".js-state-"+id);var sid=$state.attr("id");
var $label=$("label[for='"+sid+"']");if(country!="USA"){$label.html("Province:");}else{$label.html("State:");}if(country!="USA"&&country!="CAN"){$label.removeClass("required");}else{if(!$label.hasClass("required")){$label.addClass("required");}}}).change();}if(thisclass.indexOf("js-zip")==0){var cid=thisclass.substring(7);var $country=$("#"+cid);$country.change(function(){var id=$(this).attr("id");var country=$(this).val();var $zip=$(".js-zip-"+id);var zid=$zip.attr("id");var $label=$("label[for='"+zid+"']");if(country!="USA"){$label.html("Postal Code:");}else{$label.html("Zip:");}if(country!="USA"&&country!="CAN"){$label.removeClass("required");}else{if(!$label.hasClass("required")){$label.addClass("required");}}}).change();}}}});$(formarea).find("form").submit(function(){return _validator.validate();});}};$.fn.pluginFormValidator=function(options){return this.each(function(){var validator={};$.extend(true,validator,defaultValidator);if(options){$.extend(validator.messages,options);}validator.init(this);
});};$.fn.showGeneralError=function(messages){return this.each(function(){var $earea=$(this).find(".validation-errors");if($earea.length>0){var ehtml="";if(messages&&messages.length>0){for(var i=0;i<messages.length;i++){ehtml+="<li>"+messages[i]+"</li>";}}else{ehtml="<li>An unspecified error has occurred. Please contact us for assistance.</li>";}$earea.find("ul").html(ehtml);$earea.slideDown("fast");}});};})(jQuery);
/*
 *  Text rotator plug-in.
 *
 *  Copyright 2010 Brian Dartt
 *
 *  Date: 2010-12-23
 */
(function($){var jsRotatorFunction=function($elm,messages,index){var message=messages[index++];if(index>=messages.length){index=0;}$elm.delay(5000).fadeOut(800,function(){$elm.html(message);$elm.fadeIn(800,function(){jsRotatorFunction($elm,messages,index);});});};$.fn.initRotator=function(messages){if(messages.length>0){return this.each(function(){var $elm=$(this);$elm.css("display","none");$elm.html(messages[0]);if(messages.length>1){$elm.fadeIn(800,function(){jsRotatorFunction($elm,messages,1);
});}});}};})(jQuery);
/*
 *  In-page popups plug-in.
 *
 *  Copyright 2010 Brian Dartt
 *
 *  Date: 2010-12-23
 */
(function($){var _util={getPageOffset:function(){var iebody=(document.compatMode&&document.compatMode!="BackCompat")?document.documentElement:document.body;var scrOfY=document.all?iebody.scrollTop:window.pageYOffset-20;var scrOfX=document.all?iebody.scrollLeft:window.pageXOffset-10;return[scrOfX,scrOfY];},getPageDimensions:function(){var iebody=(document.compatMode&&document.compatMode!="BackCompat")?document.documentElement:document.body;var myWidth=document.all?iebody.clientWidth:window.innerWidth;var myHeight=document.all?iebody.clientHeight:window.innerHeight;return[myWidth,myHeight];},setPopPosition:function($popup){var offset=this.getPageOffset();var dimens=this.getPageDimensions();var width=$popup.width();var height=$popup.height();var left=Math.round(dimens[0]/2)-Math.round(width/2)+offset[0];var top=Math.round(dimens[1]/2)-Math.round(height/2)+offset[1];if(left<=20){left=20;
}if(top<=20){top=20;}$popup.css("top",top+"px");$popup.css("left",left+"px");},showPopup:function($popup,callback,callbackContext){this.setPopPosition($popup);$(".ui-widget-overlay").css("display","block");$popup.css("display","block");$popup.find(".js-close").click(function(){$(this).parents(".popup").inPagePopup("hide");return false;}).removeClass("js-close");if(callback){if(callbackContext){callback(callbackContext);}else{callback();}}},hidePopup:function($popup,callback,leaveOverlay,callbackContext){$popup.css("display","none");if(!leaveOverlay){$(".ui-widget-overlay").css("display","none");}if(callback){if(callbackContext){callback(callbackContext);}else{callback();}}}};$.fn.inPagePopup=function(action,callback,leaveOverlay,callbackContext){if(action=="hide"){return this.each(function(){var $elm=$(this);_util.hidePopup($elm,callback,leaveOverlay,callbackContext);});}else{return this.each(function(){var $elm=$(this);_util.showPopup($elm,callback,callbackContext);});}};$.processAjax=function(settings){$("#procMessage").html(settings.procMessage);
$(".processing").inPagePopup("show");$.extend(settings,{complete:function(req,status){if(this.fakeResults){this.procReturn=this.fakeResults;this.procStatus=this.fakeResults.status;}if(this.procStatus=="success"){$(".processing").inPagePopup("hide",this.procSuccess,this.procLeaveOverlay,this);}else{$(".processing").inPagePopup("hide",this.procError,this.procErrorOverlay,this);}},success:function(rval){if(rval){this.procStatus=rval.status;this.procReturn=rval;}else{this.procStatus="error";this.procReturn=0;}},error:function(req,status,err){this.procStatus="error";this.procReturn=0;}});$.ajax(settings);};})(jQuery);function doSubscribe(email){$("#subscribe_email").val("");$("#subscribe_emailVerif").val("");if(email!="Email Address"){$("#subscribe_email").val(email);}$(".popup.subscribe .validation-errors").css("display","none");$(".popup.subscribe .invalid").removeClass("invalid");$(".popup.subscribe").inPagePopup("show");}function submitSubscribe(){$(".popup.subscribe").inPagePopup("hide",function(){var fdata=$("#subscribe_form").serialize();
var ajax={type:"POST",url:"/subscribeAjax.do",data:fdata,dataType:"json",procReturn:0,procStatus:"none",procMessage:"Processing Your Request",procLeaveOverlay:true,procErrorOverlay:true,procSuccess:function(context){$(".popup.subscribe-success").inPagePopup("show");},procError:function(context){$(".popup.subscribe").inPagePopup("show");$(".popup.subscribe .subscribe-form").showGeneralError(context.procReturn&&context.procReturn.errors?context.procReturn.errors:[]);}};$.processAjax(ajax);},true);}function doNotify(){$("#notify_email").val("");$("#notify_emailVerif").val("");$(".popup.notify .validation-errors").css("display","none");$(".popup.notify .invalid").removeClass("invalid");$(".popup.notify").inPagePopup("show");}function submitNotify(){$(".popup.notify").inPagePopup("hide",function(){var fdata=$("#notify_form").serialize();var ajax={type:"POST",url:"/notifyAjax.do",data:fdata,dataType:"json",procReturn:0,procStatus:"none",procMessage:"Processing Your Request",procLeaveOverlay:true,procErrorOverlay:true,procSuccess:function(context){$(".popup.notify-success").inPagePopup("show");
},procError:function(context){$(".popup.notify").inPagePopup("show");$(".popup.notify .notify-form").showGeneralError(context.procReturn&&context.procReturn.errors?context.procReturn.errors:[]);}};$.processAjax(ajax);},true);}function submitEmployment(){var fdata=$("#employ_form").serialize();var ajax={type:"POST",url:"/employmentAjax.do",data:fdata,dataType:"json",procReturn:0,procStatus:"none",procMessage:"Processing Your Request",procLeaveOverlay:true,procErrorOverlay:false,procSuccess:function(context){$(".popup.employ-success").inPagePopup("show");$("#employ_email").val("");$("#employ_emailVerif").val("");$("#employ_first").val("");$("#employ_last").val("");$("#employ_add1").val("");$("#employ_add2").val("");$("#employ_city").val("");$("#employ_state").val("");$("#employ_zip").val("");$("#employ_home").val("");$("#employ_school").val("");$("#employ_subject").val("");$("#employ_years").val("");},procError:function(context){$(".employ-form").showGeneralError(context.procReturn&&context.procReturn.errors?context.procReturn.errors:[]);
}};$.processAjax(ajax);}function submitContact(){var fdata=$("#contact_form").serialize();var ajax={type:"POST",url:"/contactAjax.do",data:fdata,dataType:"json",procReturn:0,procStatus:"none",procMessage:"Processing Your Request",procLeaveOverlay:true,procErrorOverlay:false,procSuccess:function(context){$(".popup.contact-success").inPagePopup("show");$("#contact_email").val("");$("#contact_emailVerif").val("");$("#contact_first").val("");$("#contact_location").val("");$("#contact_message").val("");},procError:function(context){$(".contact-form").showGeneralError(context.procReturn&&context.procReturn.errors?context.procReturn.errors:[]);}};$.processAjax(ajax);}function submitEnroll(){var fdata=$("#enroll_form").serialize();var ajax={type:"POST",url:"/subjectAjax.do",data:fdata,dataType:"json",procReturn:0,procStatus:"none",procMessage:"Processing Your Request",procLeaveOverlay:true,procErrorOverlay:false,procSuccess:function(context){var first=context.procReturn.data["first"];var last=context.procReturn.data["last"];
var date=context.procReturn.data["date"];var time=context.procReturn.data["time"];var cc=context.procReturn.data["cart-count"];if(!cc){cc="0";}$(".navigation-wrap .cart").html("My Cart ("+cc+")");$(".popup.enroll-success .add-name").html(first+" "+last);$(".popup.enroll-success .add-date").html(date+" ("+time+")");$(".popup.enroll-success").inPagePopup("show");$("#enroll_first").val("");$("#enroll_last").val("");$("#enroll_school").val("");$("#enroll_grade").val("");$("#enroll_referrer").val("");},procError:function(context){$(".enroll-form").showGeneralError(context.procReturn&&context.procReturn.errors?context.procReturn.errors:[]);}};$.processAjax(ajax);}function doCartEdit(first,last,school,grade,cell){$("#cart_oldfirst").val(first);$("#cart_oldlast").val(last);$("#cart_first").val(first);$("#cart_last").val(last);$("#cart_school").val(school);$("#cart_grade").val(grade);$("#cart_referrer").val(cell);$(".popup.cart-edit .validation-errors").css("display","none");$(".popup.cart-edit .invalid").removeClass("invalid");
$(".popup.cart-edit").inPagePopup("show");}function placeOrder(){var fdata=$("#checkout_form").serialize();var ajax={type:"POST",url:"/checkoutAjax.do",data:fdata,dataType:"json",procReturn:0,procStatus:"none",procMessage:"Processing Your Order",procLeaveOverlay:true,procErrorOverlay:false,procSuccess:function(context){window.location.href="/receipt.do";},procError:function(context){$(".checkout-form").showGeneralError(context.procReturn&&context.procReturn.errors?context.procReturn.errors:[]);}};$.processAjax(ajax);}
/*
 *  Mapquest utility function.
 *
 *  Copyright 2010 Brian Dartt
 *
 *  Date: 2010-12-23
 */
(function($){$.initMapquest=function(options){window.map=new MQA.TileMap(document.getElementById("map"),9,{lat:options.lat,lng:options.lng},"map");MQA.withModule("zoomcontrol3","viewcontrol3","traffictogglecontrol",function(){map.addControl(new MQA.LargeZoomControl3(),new MQA.MapCornerPlacement(MQA.MapCorner.TOP_LEFT));map.addControl(new MQA.ViewControl3(),new MQA.MapCornerPlacement(MQA.MapCorner.TOP_RIGHT));
map.addControl(new MQA.TrafficToggleControl(),new MQA.MapCornerPlacement(MQA.MapCorner.TOP_LEFT));var info=new MQA.Poi({lat:options.lat,lng:options.lng});info.setInfoTitleHTML(options.location);info.setInfoContentHTML(options.location+"<br>"+options.sublocation+"<br>"+options.city+", "+options.state);map.addShape(info);});$("#directionsForm").submit(function(){$("#route").html("");$(".route-info").css("display","block");$("#route").html("<tr><td class='loading'><img src='/img/ajax-loader.gif' border='0'/></td></tr>");var saddr=$("#saddr").val();var daddr=$("#daddr").val();MQA.withModule("directions",function(){map.addRoute([saddr,daddr],{},function(data){var html="";var count=1;var mqurl="http://mapq.st/directions?saddr="+$("#saddr").val()+"&daddr="+$("#daddr").val();$(".route-info").css("display","none");if(data.route){var legs=data.route.legs;html+="<tr class='txt-large'><th colspan='2' class='txt-bold txt-right'>Start:</th>";html+="<th colspan='3'>"+$("#saddr").val()+"</th></tr>";html+="<tr class='txt-large'><th colspan='2' class='txt-bold txt-right'>End:</th>";
html+="<th colspan='3'>"+$("#daddr").val()+"</th></tr>";html+="<tr class='txt-large'>";html+="<th class='end' colspan='5'>";html+="<div class='route-link flt-left'><a href='"+mqurl+"' class='icon-link txt-small' target='_blank'><span class='tool-icon flt-left'></span>View, Change, or Print route on mapquest.com</a></div>";html+="<div class='distance-link flt-right txt-small txt-right'><b>Total Distance:</b> "+data.route.distance.toFixed(2)+" mi</div>";html+="<div class='flt-clear'></div>";html+="</th></tr>";for(var i=0;i<legs.length;i++){for(var j=0;j<legs[i].maneuvers.length;j++){var mnv=legs[i].maneuvers[j];if(count%2==0){html+="<tr class='even'>";}else{html+="<tr class='odd'>";}html+="<td class='icons'>";if(mnv.iconUrl){html+="<img border='0' src='"+mnv.iconUrl+"'/> ";}html+="</td>";html+="<td class='count txt-right'>"+count+".</td>";html+="<td class='narrative'>"+mnv.narrative;if(mnv.mapUrl){html+="<br><br><div class='map-div' id='mapdiv"+count+"' style='display:none'><img src='"+mnv.mapUrl+"' border='0'/></div>";
}html+="</td>";html+="<td class='icons'>";for(var k=0;k<mnv.signs.length;k++){var sign=mnv.signs[k];if(sign&&sign.url){html+="<img border='0' src='"+sign.url+"'/> ";}}html+="</td>";html+="<td class='distance txt-right'>"+mnv.distance.toFixed(2)+" mi";if(mnv.mapUrl){html+="<br><a href='#' id='maplink"+count+"' class='js-maplink'>show map</a>";}html+="</td>";html+="</tr>";count++;}}}$("#route").html(html);$(".js-maplink").click(function(){var divid=$(this).attr("id").replace("maplink","mapdiv");var $mapdiv=$("#"+divid);if($mapdiv.css("display")=="none"){$mapdiv.slideDown(500);$(this).html("hide map");}else{$mapdiv.slideUp(500);$(this).html("show map");}return false;});$(".route-info").slideDown(500);});});return false;});};})(jQuery);
