/* Extending jQuery with autocomplete
*Version:1.4.2
*Author:Yanik Gleyzer(clonyara)
*/
;(function($){ var RETURN=13; var TAB=9; var ESC=27; var ARRLEFT=37; var ARRUP=38; var ARRRIGHT=39; var ARRDOWN=40; var BACKSPACE=8; var DELETE=46; function debug(s){$('#info').append(htmlspecialchars(s)+'<br>');} function getCaretPosition(obj){ var start=-1; var end=-1; if(typeof obj.selectionStart!="undefined"){start=obj.selectionStart;end=obj.selectionEnd;} else if(document.selection&&document.selection.createRange){ var M=document.selection.createRange(); var Lp; try{ Lp=M.duplicate(); Lp.moveToElementText(obj); }catch(e){ Lp=obj.createTextRange(); } Lp.setEndPoint("EndToStart",M); start=Lp.text.length; if(start>obj.value.length)start=-1; Lp.setEndPoint("EndToStart",M); end=Lp.text.length; if(end>obj.value.length)end=-1; } return{'start':start,'end':end}; } function setCaret(obj,l){ obj.focus(); if(obj.setSelectionRange){ obj.setSelectionRange(l,l); } else if(obj.createTextRange){ m=obj.createTextRange(); m.moveStart('character',l); m.collapse(); m.select(); } } function prepareArray(jsondata){ var new_arr=[]; for(var i=0;i<jsondata.length;i++){ if(jsondata[i].id!=undefined&&jsondata[i].value!=undefined){ jsondata[i].id=jsondata[i].id+""; jsondata[i].value=jsondata[i].value+""; if(jsondata[i].info!=undefined)jsondata[i].info=jsondata[i].info+""; new_arr.push(jsondata[i]); } } return new_arr; } function escapearg(s){ if(s==undefined||!s)return ''; return s.replace('\\','\\\\'). replace('*','\\*'). replace('.','\\.'). replace('/','\\/'); } function htmlspecialchars(s){ if(s==undefined||!s)return ''; return s.replace('&','&amp;'). replace('<','&lt;'). replace('>','&gt;'); } function ltrim(s){ if(s==undefined||!s)return ''; return s.replace(/^\s+/g,''); } $.fn.autocomplete=function(options){return this.each(function(){ var me=$(this); var me_this=$(this).get(0); if(!me.is('input:text,input:password,textarea'))return; if(!options&&(!$.isFunction(options.get)||!options.ajax_get)){ return; } if(me.attr('jqac')=='on')return; me.attr('jqac','on'); me.attr('autocomplete','off'); options=$.extend({ delay:500 , timeout:5000 , minchars:3 , multi:false , cache:true , height:150 , autowidth:false , noresults:'No results' }, options); me.keydown(function(ev){ switch(ev.which){ case RETURN:if(!suggestions_menu)return true; else setHighlightedValue(); return false; case ESC:clearSuggestions(); return false; } return true; }); me.keypress(function(ev){ switch(ev.keyCode){ case RETURN:case ESC:return false; case ARRUP:changeHighlight(ev.keyCode); return false; case ARRDOWN:if(!suggestions_menu)getSuggestions(getUserInput()); else changeHighlight(ev.keyCode); return false; } return true; }); me.keyup(function(ev){ switch(ev.which){ case RETURN:case ESC:case ARRLEFT:case ARRRIGHT:case ARRUP:case ARRDOWN:return false; default:getSuggestions(getUserInput()); } return true; }); var user_input=""; var input_chars_size=0; var suggestions=[]; var current_highlight=0; var suggestions_menu=false; var suggestions_list=false; var loading_indicator=false; var clearSuggestionsTimer=false; var getSuggestionsTimer=false; var showLoadingTimer=false; var zIndex=me.css('z-index'); function getUserInput(){ var val=me.val(); if(options.multi){ var pos=getCaretPosition(me_this); var start=pos.start; for(;start>0&&val.charAt(start-1)!=',';start--){} var end=pos.start; for(;end<val.length&&val.charAt(end)!=',';end++){} var val=val.substr(start,end-start);}return ltrim(val);} function setSuggestion(val){ user_input=val; if(options.multi){ var orig=me.val(); var pos=getCaretPosition(me_this); var start=pos.start; for(;start>0&&orig.charAt(start-1)!=',';start--){} var end=pos.start; for(;end<orig.length&&orig.charAt(end)!=',';end++){} var new_val=orig.substr(0,start)+(start>0?' ':'')+val+orig.substr(end); me.val(new_val); setCaret(me_this,start+val.length+(start>0?1:0)); } else{ me_this.focus(); me.val(val); } } function getSuggestions(val){ if(val.length<options.minchars){ clearSuggestions(); return false; } if(options.cache&&val.length>input_chars_size&&suggestions.length){ var arr=[]; for(var i=0;i<suggestions.length;i++){ var re=new RegExp("("+escapearg(val)+")",'ig'); if(re.exec(suggestions[i].value))arr.push(suggestions[i] ); } user_input=val; input_chars_size=val.length; suggestions=arr; createList(suggestions); return false; } else{ clearTimeout(getSuggestionsTimer); user_input=val; input_chars_size=val.length; getSuggestionsTimer=setTimeout( function(){ suggestions=[]; if($.isFunction(options.pre_callback))options.pre_callback(); if($.isFunction(options.get)){ suggestions=prepareArray(options.get(val)); createList(suggestions);}else if($.isFunction(options.ajax_get)){clearSuggestions();showLoadingTimer=setTimeout(show_loading,options.delay);options.ajax_get(val,ajax_continuation);}},options.delay);}return false;}; function ajax_continuation(jsondata){hide_loading(); suggestions=prepareArray(jsondata);createList(suggestions);} function show_loading(){ if(!loading_indicator){ loading_indicator=$('<div class="jqac-menu"><div class="jqac-loading">Loading</div></div>').get(0); $(loading_indicator).css('position','absolute'); var pos=me.offset(); $(loading_indicator).css('left',pos.left+"px"); $(loading_indicator).css('top',(pos.top+me.height()+2 )+"px"); if(!options.autowidth)$(loading_indicator).width(me.width()); $('body').append(loading_indicator); } $(loading_indicator).show(); setTimeout(hide_loading,10000); } function hide_loading(){ if(loading_indicator)$(loading_indicator).hide(); clearTimeout(showLoadingTimer); } function createList(arr){ if(suggestions_menu)$(suggestions_menu).remove(); hide_loading();killTimeout(); suggestions_menu=$('<div class="jqac-menu"></div>').get(0); $(suggestions_menu).css({'position':'absolute', 'z-index':zIndex, 'max-height':options.height+'px', 'overflow-y':'auto'}); suggestions_list=$('<ul></ul>').get(0); $(suggestions_list). css('list-style','none'). css('margin','0px'). css('padding','2px'). css('overflow','hidden'); var re=new RegExp("("+escapearg(htmlspecialchars(user_input))+")",'ig'); for(var i=0;i<arr.length;i++){ var val=new String(arr[i].value); var output=htmlspecialchars(val).replace(re,'<em>$1</em>'); var span=$('<span class="jqac-link">'+output+'</span>').get(0); if(arr[i].info!=undefined&&arr[i].info!=""){ $(span).append($('<div class="jqac-info">'+arr[i].info+'</div>')); } $(span).attr('name',i+1); $(span).click(function(){setHighlightedValue();}); $(span).mouseover(function(){setHighlight($(this).attr('name'),true);}); var li=$('<li></li>').get(0); $(li).append(span); $(suggestions_list).append(li); } if(arr.length==0){ $(suggestions_list).append('<li class="jqac-warning">'+options.noresults+'</li>'); } $(suggestions_menu).append(suggestions_list); var pos=me.offset(); $(suggestions_menu).css('left', pos.left+"px"); $(suggestions_menu).css('top',(pos.top+me.height()+2 )+"px"); if(!options.autowidth)$(suggestions_menu).width(me.width()); $(suggestions_menu).mouseover(function(){killTimeout()}); $(suggestions_menu).mouseout(function(){resetTimeout()}); $('body').append(suggestions_menu); if($.fn.bgiframe)$(suggestions_menu).bgiframe({height:suggestions_menu.scrollHeight}); if(suggestions_menu.scrollHeight>options.height){ $(suggestions_menu).height(options.height); $(suggestions_menu).width($(suggestions_menu).width()+20); } current_highlight=0; clearSuggestionsTimer=setTimeout(function(){clearSuggestions()}, options.timeout); }; function setHighlightedValue(){ if(current_highlight&&suggestions[current_highlight-1]){ var sugg=suggestions[ current_highlight-1 ]; if(sugg.affected_value!=undefined&&sugg.affected_value!='')setSuggestion(sugg.affected_value); else setSuggestion(sugg.value); if($.isFunction(options.callback))options.callback(suggestions[current_highlight-1] ); clearSuggestions(); } }; function changeHighlight(key){ if(!suggestions_list||suggestions.length==0)return false; var n; if(key==ARRDOWN)n=current_highlight+1; else if(key==ARRUP)n=current_highlight-1; if(n>$(suggestions_list).children().size())n=1; if(n<1)n=$(suggestions_list).children().size(); setHighlight(n); }; function setHighlight(n,mouse_mode){ if(!suggestions_list)return false; if(current_highlight>0)clearHighlight(); current_highlight=Number(n); var li=$(suggestions_list).children().get(current_highlight-1); li.className='jqac-highlight'; if(!mouse_mode)adjustScroll(li); killTimeout(); }; function clearHighlight(){ if(!suggestions_list)return false; if(current_highlight>0){ $(suggestions_list).children().get(current_highlight-1).className=''; current_highlight=0; } }; function clearSuggestions(){ killTimeout(); if(suggestions_menu){ $(suggestions_menu).remove(); suggestions_menu=false; suggestions_list=false; current_highlight=0; } }; function adjustScroll(el){ if(!suggestions_menu)return false; var viewportHeight=suggestions_menu.clientHeight; var wholeHeight=suggestions_menu.scrollHeight; var scrolled=suggestions_menu.scrollTop; var elTop=el.offsetTop; var elBottom=elTop+el.offsetHeight; if(elBottom>scrolled+viewportHeight){ suggestions_menu.scrollTop=elBottom-viewportHeight;}else if(elTop<scrolled){suggestions_menu.scrollTop=elTop;}return true;}function killTimeout(){clearTimeout(clearSuggestionsTimer);};function resetTimeout(){clearTimeout(clearSuggestionsTimer);clearSuggestionsTimer=setTimeout(function(){clearSuggestions()}, 1000);};})};})($);
/* jQuery validation plug-in 1.7
*http://bassistance.de/jquery-plugins/jquery-plugin-validation/
*http://docs.jquery.com/Plugins/Validation
*Copyright(c)2006-2008 JÃ¶rn Zaefferer
*$Id:jquery.validate.js 6403 2009-06-17 14:27:16Z joern.zaefferer $
*Dual licensed under the MIT and GPL licenses:
*  http://www.opensource.org/licenses/mit-license.php
*  http://www.gnu.org/licenses/gpl.html
*/
;(function($){$.extend($.fn,{validate:function(options){if(!this.length){options&&options.debug&&window.console&&console.warn("nothing selected, can't validate, returning nothing");return;}var validator=$.data(this[0],'validator');if(validator){return validator;}validator=new $.validator(options,this[0]);$.data(this[0],'validator',validator);if(validator.settings.onsubmit){this.find("input, button").filter(".cancel").click(function(){validator.cancelSubmit=true;});if(validator.settings.submitHandler){this.find("input, button").filter(":submit").click(function(){validator.submitButton=this;});}this.submit(function(event){if(validator.settings.debug)event.preventDefault();function handle(){if(validator.settings.submitHandler){if(validator.submitButton){var hidden=$("<input type='hidden'/>").attr("name",validator.submitButton.name).val(validator.submitButton.value).appendTo(validator.currentForm);}validator.settings.submitHandler.call(validator,validator.currentForm);if(validator.submitButton){hidden.remove();}return false;}return true;}if(validator.cancelSubmit){validator.cancelSubmit=false;return handle();}if(validator.form()){if(validator.pendingRequest){validator.formSubmitted=true;return false;}return handle();}else{validator.focusInvalid();return false;}});}return validator;},valid:function(){if($(this[0]).is('form')){return this.validate().form();}else{var valid=true;var validator=$(this[0].form).validate();this.each(function(){valid&=validator.element(this);});return valid;}},removeAttrs:function(attributes){var result={},$element=this;$.each(attributes.split(/\s/),function(index,value){result[value]=$element.attr(value);$element.removeAttr(value);});return result;},rules:function(command,argument){var element=this[0];if(command){var settings=$.data(element.form,'validator').settings;var staticRules=settings.rules;var existingRules=$.validator.staticRules(element);switch(command){case"add":$.extend(existingRules,$.validator.normalizeRule(argument));staticRules[element.name]=existingRules;if(argument.messages)settings.messages[element.name]=$.extend(settings.messages[element.name],argument.messages);break;case"remove":if(!argument){delete staticRules[element.name];return existingRules;}var filtered={};$.each(argument.split(/\s/),function(index,method){filtered[method]=existingRules[method];delete existingRules[method];});return filtered;}}var data=$.validator.normalizeRules($.extend({},$.validator.metadataRules(element),$.validator.classRules(element),$.validator.attributeRules(element),$.validator.staticRules(element)),element);if(data.required){var param=data.required;delete data.required;data=$.extend({required:param},data);}return data;}});$.extend($.expr[":"],{blank:function(a){return!$.trim(""+a.value);},filled:function(a){return!!$.trim(""+a.value);},unchecked:function(a){return!a.checked;}});$.validator=function(options,form){this.settings=$.extend(true,{},$.validator.defaults,options);this.currentForm=form;this.init();};$.validator.format=function(source,params){if(arguments.length==1)return function(){var args=$.makeArray(arguments);args.unshift(source);return $.validator.format.apply(this,args);};if(arguments.length>2&&params.constructor!=Array){params=$.makeArray(arguments).slice(1);}if(params.constructor!=Array){params=[params];}$.each(params,function(i,n){source=source.replace(new RegExp("\\{"+i+"\\}","g"),n);});return source;};$.extend($.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",validClass:"valid",errorElement:"label",focusInvalid:true,errorContainer:$([]),errorLabelContainer:$([]),onsubmit:true,ignore:[],ignoreTitle:false,onfocusin:function(element){this.lastActive=element;if(this.settings.focusCleanup&&!this.blockFocusCleanup){this.settings.unhighlight&&this.settings.unhighlight.call(this,element,this.settings.errorClass,this.settings.validClass);this.errorsFor(element).hide();}},onfocusout:function(element){if(!this.checkable(element)&&(element.name in this.submitted||!this.optional(element))){this.element(element);}},onkeyup:function(element){if(element.name in this.submitted||element==this.lastElement){this.element(element);}},onclick:function(element){if(element.name in this.submitted)this.element(element);else if(element.parentNode.name in this.submitted)this.element(element.parentNode);},highlight:function(element,errorClass,validClass){$(element).addClass(errorClass).removeClass(validClass);},unhighlight:function(element,errorClass,validClass){$(element).removeClass(errorClass).addClass(validClass);}},setDefaults:function(settings){$.extend($.validator.defaults,settings);},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date(ISO).",number:"Please enter a valid number.",digits:"Please enter only digits.",creditcard:"Please enter a valid credit card number.",equalTo:"Please enter the same value again.",accept:"Please enter a value with a valid extension.",maxlength:$.validator.format("Please enter no more than{0} characters."),minlength:$.validator.format("Please enter at least{0} characters."),rangelength:$.validator.format("Please enter a value between{0} and{1} characters long."),range:$.validator.format("Please enter a value between{0} and{1}."),max:$.validator.format("Please enter a value less than or equal to{0}."),min:$.validator.format("Please enter a value greater than or equal to{0}.")},autoCreateRanges:false,prototype:{init:function(){this.labelContainer=$(this.settings.errorLabelContainer);this.errorContext=this.labelContainer.length&&this.labelContainer||$(this.currentForm);this.containers=$(this.settings.errorContainer).add(this.settings.errorLabelContainer);this.submitted={};this.valueCache={};this.pendingRequest=0;this.pending={};this.invalid={};this.reset();var groups=(this.groups={});$.each(this.settings.groups,function(key,value){$.each(value.split(/\s/),function(index,name){groups[name]=key;});});var rules=this.settings.rules;$.each(rules,function(key,value){rules[key]=$.validator.normalizeRule(value);});function delegate(event){var validator=$.data(this[0].form,"validator"),eventType="on"+event.type.replace(/^validate/,"");validator.settings[eventType]&&validator.settings[eventType].call(validator,this[0]);}$(this.currentForm).validateDelegate(":text, :password, :file, select, textarea","focusin focusout keyup",delegate).validateDelegate(":radio, :checkbox, select, option","click",delegate);if(this.settings.invalidHandler)$(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler);},form:function(){this.checkForm();$.extend(this.submitted,this.errorMap);this.invalid=$.extend({},this.errorMap);if(!this.valid())$(this.currentForm).triggerHandler("invalid-form",[this]);this.showErrors();return this.valid();},checkForm:function(){this.prepareForm();for(var i=0,elements=(this.currentElements=this.elements());elements[i];i++){this.check(elements[i]);}return this.valid();},element:function(element){element=this.clean(element);this.lastElement=element;this.prepareElement(element);this.currentElements=$(element);var result=this.check(element);if(result){delete this.invalid[element.name];}else{this.invalid[element.name]=true;}if(!this.numberOfInvalids()){this.toHide=this.toHide.add(this.containers);}this.showErrors();return result;},showErrors:function(errors){if(errors){$.extend(this.errorMap,errors);this.errorList=[];for(var name in errors){this.errorList.push({message:errors[name],element:this.findByName(name)[0]});}this.successList=$.grep(this.successList,function(element){return!(element.name in errors);});}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors();},resetForm:function(){if($.fn.resetForm)$(this.currentForm).resetForm();this.submitted={};this.prepareForm();this.hideErrors();this.elements().removeClass(this.settings.errorClass);},numberOfInvalids:function(){return this.objectLength(this.invalid);},objectLength:function(obj){var count=0;for(var i in obj)count++;return count;},hideErrors:function(){this.addWrapper(this.toHide).hide();},valid:function(){return this.size()==0;},size:function(){return this.errorList.length;},focusInvalid:function(){if(this.settings.focusInvalid){try{$(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin");}catch(e){}}},findLastActive:function(){var lastActive=this.lastActive;return lastActive&&$.grep(this.errorList,function(n){return n.element.name==lastActive.name;}).length==1&&lastActive;},elements:function(){var validator=this,rulesCache={};return $([]).add(this.currentForm.elements).filter(":input").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function(){!this.name&&validator.settings.debug&&window.console&&console.error("%o has no name assigned",this);if(this.name in rulesCache||!validator.objectLength($(this).rules()))return false;rulesCache[this.name]=true;return true;});},clean:function(selector){return $(selector)[0];},errors:function(){return $(this.settings.errorElement+"."+this.settings.errorClass,this.errorContext);},reset:function(){this.successList=[];this.errorList=[];this.errorMap={};this.toShow=$([]);this.toHide=$([]);this.currentElements=$([]);},prepareForm:function(){this.reset();this.toHide=this.errors().add(this.containers);},prepareElement:function(element){this.reset();this.toHide=this.errorsFor(element);},check:function(element){element=this.clean(element);if(this.checkable(element)){element=this.findByName(element.name)[0];}var rules=$(element).rules();var dependencyMismatch=false;for(method in rules){var rule={method:method,parameters:rules[method]};try{var result=$.validator.methods[method].call(this,element.value.replace(/\r/g,""),element,rule.parameters);if(result=="dependency-mismatch"){dependencyMismatch=true;continue;}dependencyMismatch=false;if(result=="pending"){this.toHide=this.toHide.not(this.errorsFor(element));return;}if(!result){this.formatAndAdd(element,rule);return false;}}catch(e){this.settings.debug&&window.console&&console.log("exception occured when checking element "+element.id+", check the '"+rule.method+"' method",e);throw e;}}if(dependencyMismatch)return;if(this.objectLength(rules))this.successList.push(element);return true;},customMetaMessage:function(element,method){if(!$.metadata)return;var meta=this.settings.meta?$(element).metadata()[this.settings.meta]:$(element).metadata();return meta&&meta.messages&&meta.messages[method];},customMessage:function(name,method){var m=this.settings.messages[name];return m&&(m.constructor==String?m:m[method]);},findDefined:function(){for(var i=0;i<arguments.length;i++){if(arguments[i]!==undefined)return arguments[i];}return undefined;},defaultMessage:function(element,method){return this.findDefined(this.customMessage(element.name,method),this.customMetaMessage(element,method),!this.settings.ignoreTitle&&element.title||undefined,$.validator.messages[method],"<strong>Warning:No message defined for "+element.name+"</strong>");},formatAndAdd:function(element,rule){var message=this.defaultMessage(element,rule.method),theregex=/\$?\{(\d+)\}/g;if(typeof message=="function"){message=message.call(this,rule.parameters,element);}else if(theregex.test(message)){message=jQuery.format(message.replace(theregex,'{$1}'),rule.parameters);}this.errorList.push({message:message,element:element});this.errorMap[element.name]=message;this.submitted[element.name]=message;},addWrapper:function(toToggle){if(this.settings.wrapper)toToggle=toToggle.add(toToggle.parent(this.settings.wrapper));return toToggle;},defaultShowErrors:function(){for(var i=0;this.errorList[i];i++){var error=this.errorList[i];this.settings.highlight&&this.settings.highlight.call(this,error.element,this.settings.errorClass,this.settings.validClass);this.showLabel(error.element,error.message);}if(this.errorList.length){this.toShow=this.toShow.add(this.containers);}if(this.settings.success){for(var i=0;this.successList[i];i++){this.showLabel(this.successList[i]);}}if(this.settings.unhighlight){for(var i=0,elements=this.validElements();elements[i];i++){this.settings.unhighlight.call(this,elements[i],this.settings.errorClass,this.settings.validClass);}}this.toHide=this.toHide.not(this.toShow);this.hideErrors();this.addWrapper(this.toShow).show();},validElements:function(){return this.currentElements.not(this.invalidElements());},invalidElements:function(){return $(this.errorList).map(function(){return this.element;});},showLabel:function(element,message){var label=this.errorsFor(element);if(label.length){label.removeClass().addClass(this.settings.errorClass);label.attr("generated")&&label.html(message);}else{label=$("<"+this.settings.errorElement+"/>").attr({"for":this.idOrName(element),generated:true}).addClass(this.settings.errorClass).html(message||"");if(this.settings.wrapper){label=label.hide().show().wrap("<"+this.settings.wrapper+"/>").parent();}if(!this.labelContainer.append(label).length)this.settings.errorPlacement?this.settings.errorPlacement(label,$(element)):label.insertAfter(element);}if(!message&&this.settings.success){label.text("");typeof this.settings.success=="string"?label.addClass(this.settings.success):this.settings.success(label);}this.toShow=this.toShow.add(label);},errorsFor:function(element){var name=this.idOrName(element);return this.errors().filter(function(){return $(this).attr('for')==name;});},idOrName:function(element){return this.groups[element.name]||(this.checkable(element)?element.name:element.id||element.name);},checkable:function(element){return/radio|checkbox/i.test(element.type);},findByName:function(name){var form=this.currentForm;return $(document.getElementsByName(name)).map(function(index,element){return element.form==form&&element.name==name&&element||null;});},getLength:function(value,element){switch(element.nodeName.toLowerCase()){case'select':return $("option:selected",element).length;case'input':if(this.checkable(element))return this.findByName(element.name).filter(':checked').length;}return value.length;},depend:function(param,element){return this.dependTypes[typeof param]?this.dependTypes[typeof param](param,element):true;},dependTypes:{"boolean":function(param,element){return param;},"string":function(param,element){return!!$(param,element.form).length;},"function":function(param,element){return param(element);}},optional:function(element){return!$.validator.methods.required.call(this,$.trim(element.value),element)&&"dependency-mismatch";},startRequest:function(element){if(!this.pending[element.name]){this.pendingRequest++;this.pending[element.name]=true;}},stopRequest:function(element,valid){this.pendingRequest--;if(this.pendingRequest<0)this.pendingRequest=0;delete this.pending[element.name];if(valid&&this.pendingRequest==0&&this.formSubmitted&&this.form()){$(this.currentForm).submit();this.formSubmitted=false;}else if(!valid&&this.pendingRequest==0&&this.formSubmitted){$(this.currentForm).triggerHandler("invalid-form",[this]);this.formSubmitted=false;}},previousValue:function(element){return $.data(element,"previousValue")||$.data(element,"previousValue",{old:null,valid:true,message:this.defaultMessage(element,"remote")});}},classRuleSettings:{required:{required:true},email:{email:true},url:{url:true},date:{date:true},dateISO:{dateISO:true},dateDE:{dateDE:true},number:{number:true},numberDE:{numberDE:true},digits:{digits:true},creditcard:{creditcard:true}},addClassRules:function(className,rules){className.constructor==String?this.classRuleSettings[className]=rules:$.extend(this.classRuleSettings,className);},classRules:function(element){var rules={};var classes=$(element).attr('class');classes&&$.each(classes.split(' '),function(){if(this in $.validator.classRuleSettings){$.extend(rules,$.validator.classRuleSettings[this]);}});return rules;},attributeRules:function(element){var rules={};var $element=$(element);for(method in $.validator.methods){var value=$element.attr(method);if(value){rules[method]=value;}}if(rules.maxlength&&/-1|2147483647|524288/.test(rules.maxlength)){delete rules.maxlength;}return rules;},metadataRules:function(element){if(!$.metadata)return{};var meta=$.data(element.form,'validator').settings.meta;return meta?$(element).metadata()[meta]:$(element).metadata();},staticRules:function(element){var rules={};var validator=$.data(element.form,'validator');if(validator.settings.rules){rules=$.validator.normalizeRule(validator.settings.rules[element.name])||{};}return rules;},normalizeRules:function(rules,element){$.each(rules,function(prop,val){if(val===false){delete rules[prop];return;}if(val.param||val.depends){var keepRule=true;switch(typeof val.depends){case"string":keepRule=!!$(val.depends,element.form).length;break;case"function":keepRule=val.depends.call(element,element);break;}if(keepRule){rules[prop]=val.param!==undefined?val.param:true;}else{delete rules[prop];}}});$.each(rules,function(rule,parameter){rules[rule]=$.isFunction(parameter)?parameter(element):parameter;});$.each(['minlength','maxlength','min','max'],function(){if(rules[this]){rules[this]=Number(rules[this]);}});$.each(['rangelength','range'],function(){if(rules[this]){rules[this]=[Number(rules[this][0]),Number(rules[this][1])];}});if($.validator.autoCreateRanges){if(rules.min&&rules.max){rules.range=[rules.min,rules.max];delete rules.min;delete rules.max;}if(rules.minlength&&rules.maxlength){rules.rangelength=[rules.minlength,rules.maxlength];delete rules.minlength;delete rules.maxlength;}}if(rules.messages){delete rules.messages;}return rules;},normalizeRule:function(data){if(typeof data=="string"){var transformed={};$.each(data.split(/\s/),function(){transformed[this]=true;});data=transformed;}return data;},addMethod:function(name,method,message){$.validator.methods[name]=method;$.validator.messages[name]=message!=undefined?message:$.validator.messages[name];if(method.length<3){$.validator.addClassRules(name,$.validator.normalizeRule(name));}},methods:{required:function(value,element,param){if(!this.depend(param,element))return"dependency-mismatch";switch(element.nodeName.toLowerCase()){case'select':var val=$(element).val();return val&&val.length>0;case'input':if(this.checkable(element))return this.getLength(value,element)>0;default:return $.trim(value).length>0;}},remote:function(value,element,param){if(this.optional(element))return"dependency-mismatch";var previous=this.previousValue(element);if(!this.settings.messages[element.name])this.settings.messages[element.name]={};previous.originalMessage=this.settings.messages[element.name].remote;this.settings.messages[element.name].remote=previous.message;param=typeof param=="string"&&{url:param}||param;if(previous.old!==value){previous.old=value;var validator=this;this.startRequest(element);var data={};data[element.name]=value;$.ajax($.extend(true,{url:param,mode:"abort",port:"validate"+element.name,dataType:"json",data:data,success:function(response){validator.settings.messages[element.name].remote=previous.originalMessage;var valid=response===true;if(valid){var submitted=validator.formSubmitted;validator.prepareElement(element);validator.formSubmitted=submitted;validator.successList.push(element);validator.showErrors();}else{var errors={};var message=(previous.message=response||validator.defaultMessage(element,"remote"));errors[element.name]=$.isFunction(message)?message(value):message;validator.showErrors(errors);}previous.valid=valid;validator.stopRequest(element,valid);}},param));return"pending";}else if(this.pending[element.name]){return"pending";}return previous.valid;},minlength:function(value,element,param){return this.optional(element)||this.getLength($.trim(value),element)>=param;},maxlength:function(value,element,param){return this.optional(element)||this.getLength($.trim(value),element)<=param;},rangelength:function(value,element,param){var length=this.getLength($.trim(value),element);return this.optional(element)||(length>=param[0]&&length<=param[1]);},min:function(value,element,param){return this.optional(element)||value>=param;},max:function(value,element,param){return this.optional(element)||value<=param;},range:function(value,element,param){return this.optional(element)||(value>=param[0]&&value<=param[1]);},email:function(value,element){return this.optional(element)||/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(value);},url:function(value,element){return this.optional(element)||/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value);},date:function(value,element){return this.optional(element)||!/Invalid|NaN/.test(new Date(value));},dateISO:function(value,element){return this.optional(element)||/^\d{4}[\/-]\d{1,2}[\/-]\d{1,2}$/.test(value);},number:function(value,element){return this.optional(element)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/.test(value);},digits:function(value,element){return this.optional(element)||/^\d+$/.test(value);},creditcard:function(value,element){if(this.optional(element))return"dependency-mismatch";if(/[^0-9-]+/.test(value))return false;var nCheck=0,nDigit=0,bEven=false;value=value.replace(/\D/g,"");for(var n=value.length-1;n>=0;n--){var cDigit=value.charAt(n);var nDigit=parseInt(cDigit,10);if(bEven){if((nDigit*=2)>9)nDigit-=9;}nCheck+=nDigit;bEven=!bEven;}return(nCheck%10)==0;},accept:function(value,element,param){param=typeof param=="string"?param.replace(/,/g,'|'):"png|jpe?g|gif";return this.optional(element)||value.match(new RegExp(".("+param+")$","i"));},equalTo:function(value,element,param){var target=$(param).unbind(".validate-equalTo").bind("blur.validate-equalTo",function(){$(element).valid();});return value==target.val();}}});$.format=$.validator.format;})(jQuery);;(function($){var ajax=$.ajax;var pendingRequests={};$.ajax=function(settings){settings=$.extend(settings,$.extend({},$.ajaxSettings,settings));var port=settings.port;if(settings.mode=="abort"){if(pendingRequests[port]){pendingRequests[port].abort();}return(pendingRequests[port]=ajax.apply(this,arguments));}return ajax.apply(this,arguments);};})(jQuery);;(function($){if(!jQuery.event.special.focusin&&!jQuery.event.special.focusout&&document.addEventListener){$.each({focus:'focusin',blur:'focusout'},function(original,fix){$.event.special[fix]={setup:function(){this.addEventListener(original,handler,true);},teardown:function(){this.removeEventListener(original,handler,true);},handler:function(e){arguments[0]=$.event.fix(e);arguments[0].type=fix;return $.event.handle.apply(this,arguments);}};function handler(e){e=$.event.fix(e);e.type=fix;return $.event.handle.call(this,e);}});};$.extend($.fn,{validateDelegate:function(delegate,type,handler){return this.bind(type,function(event){var target=$(event.target);if(target.is(delegate)){return handler.apply(target,arguments);}});}});})(jQuery);
/* jquery.twitter.js v1.0
*Created by Damien du Toit
*http://coda.co.za/blog/2008/10/26/jquery-plugin-for-twitter
 *
*Licensed under a Creative Commons Attribution-Non-Commercial 3.0 Unported License
*http://creativecommons.org/licenses/by-nc/3.0/
*/
;(function($){$.fn.getTwitter=function(options){var o=$.extend({},$.fn.getTwitter.defaults,options);$(this).hide();if(o.showHeading){$(this).append('<h2>'+o.headingText+'</h2>');}$(this).append('<ul id="twitter_update_list"><li></li></ul>');$("ul#twitter_update_list").hide();var pl=$('<p id="'+o.preloaderId+'">'+o.loaderText+'</p>');$(this).append(pl); if(o.showProfileLink){$(this).append('<a id="profileLink" href="http://twitter.com/'+o.userName+'">http://twitter.com/'+o.userName+'</a>');} $(this).show(); $.getScript("http://twitter.com/javascripts/blogger.js"); $.getScript("http://api.twitter.com/1/statuses/user_timeline/"+o.userName+".json?callback=twitterCallback2&include_rts=true&count="+o.numTweets, function(){ $(pl).remove(); if(o.slideIn){$("ul#twitter_update_list").slideDown(1000);}else{$("ul#twitter_update_list").show();}$("ul#twitter_update_list li:first").addClass("firstTweet");$("ul#twitter_update_list li:last").addClass("lastTweet");});};$.fn.getTwitter.defaults={userName:null,numTweets:5,preloaderId:"preloader",loaderText:"Loading tweets...",slideIn:false,showHeading:true,headingText:"Latest Tweets",showProfileLink:true};})(jQuery);
/* jQuery corner plugin:simple corner rounding
*Examples and documentation at:http://jquery.malsup.com/corner/
*version 2.04(11-FEB-2010)
*Dual licensed under the MIT and GPL licenses:
*http://www.opensource.org/licenses/mit-license.php
*http://www.gnu.org/licenses/gpl.html
*@author Dave Methvin(http://methvin.com/jquery/jq-corner.html)
*@author Mike Alsup  (http://jquery.malsup.com/corner/)
*/
;(function($){var ua=navigator.userAgent;var moz=$.browser.mozilla && /gecko/i.test(ua);var webkit=$.browser.safari && /Safari\/[5-9]/.test(ua);var mode=document.documentMode || 0;var noBottomFold=$.browser.msie &&(($.browser.version<8 && !mode)|| mode<8);var expr=$.browser.msie &&(function(){var div=document.createElement('div');try{ div.style.setExpression('width','0+0'); div.style.removeExpression('width'); }catch(e){ return false; }return true;})();function sz(el, p){return parseInt($.css(el,p))||0;};function hex2(s){var s=parseInt(s).toString(16);return( s.length<2 )? '0'+s :s;};function gpc(node){for( ; node && node.nodeName.toLowerCase()!= 'html'; node=node.parentNode ){var v=$.css(node,'backgroundColor');if(v == 'rgba(0, 0, 0, 0)')continue;if(v.indexOf('rgb')>= 0){var rgb=v.match(/\d+/g);return '#'+ hex2(rgb[0])+hex2(rgb[1])+hex2(rgb[2]);}if( v && v != 'transparent' )return v;}return '#ffffff';};function getWidth(fx, i, width){switch(fx){case 'round':return Math.round(width*(1-Math.cos(Math.asin(i/width))));case 'cool':return Math.round(width*(1+Math.cos(Math.asin(i/width))));case 'sharp':return Math.round(width*(1-Math.cos(Math.acos(i/width))));case 'bite':return Math.round(width*(Math.cos(Math.asin((width-i-1)/width))));case 'slide':return Math.round(width*(Math.atan2(i,width/i)));case 'jut':return Math.round(width*(Math.atan2(width,(width-i-1))));case 'curl':return Math.round(width*(Math.atan(i)));case 'tear':return Math.round(width*(Math.cos(i)));case 'wicked':return Math.round(width*(Math.tan(i)));case 'long':return Math.round(width*(Math.sqrt(i)));case 'sculpt':return Math.round(width*(Math.log((width-i-1),width)));case 'dogfold':case 'dog':return(i&1)?(i+1):width;case 'dog2':return(i&2)?(i+1):width;case 'dog3':return(i&3)?(i+1):width;case 'fray':return(i%2)*width;case 'notch':return width;case 'bevelfold':case 'bevel':return i+1;}};$.fn.corner=function(options){if(this.length == 0){if(!$.isReady && this.selector){var s=this.selector, c=this.context;$(function(){$(s,c).corner(options);});}return this;}return this.each(function(index){var $this=$(this);var o=[ options || '', $this.attr($.fn.corner.defaults.metaAttr)|| ''].join(' ').toLowerCase();var keep=/keep/.test(o);var cc=((o.match(/cc:(#[0-9a-f]+)/)||[])[1]);var sc=((o.match(/sc:(#[0-9a-f]+)/)||[])[1]);var width=parseInt((o.match(/(\d+)px/)||[])[1])|| 10;var re=/round|bevelfold|bevel|notch|bite|cool|sharp|slide|jut|curl|tear|fray|wicked|sculpt|long|dog3|dog2|dogfold|dog/;var fx=((o.match(re)||['round'])[0]);var fold=/dogfold|bevelfold/.test(o);var edges={ T:0, B:1 };var opts={TL:/top|tl|left/.test(o),TR:/top|tr|right/.test(o),BL:/bottom|bl|left/.test(o),BR:/bottom|br|right/.test(o)};if( !opts.TL && !opts.TR && !opts.BL && !opts.BR )opts={ TL:1, TR:1, BL:1, BR:1 };if($.fn.corner.defaults.useNative && fx == 'round' &&(moz || webkit)&& !cc && !sc){if(opts.TL)$this.css(moz ? '-moz-border-radius-topleft' :'-webkit-border-top-left-radius', width+'px');if(opts.TR)$this.css(moz ? '-moz-border-radius-topright' :'-webkit-border-top-right-radius', width+'px');if(opts.BL)$this.css(moz ? '-moz-border-radius-bottomleft' :'-webkit-border-bottom-left-radius', width+'px');if(opts.BR)$this.css(moz ? '-moz-border-radius-bottomright' :'-webkit-border-bottom-right-radius', width+'px');return;}var strip=document.createElement('div');strip.style.overflow='hidden';strip.style.height='1px';strip.style.backgroundColor=sc || 'transparent';strip.style.borderStyle='solid';var pad={T:parseInt($.css(this,'paddingTop'))||0,R:parseInt($.css(this,'paddingRight'))||0,B:parseInt($.css(this,'paddingBottom'))||0,  L:parseInt($.css(this,'paddingLeft'))||0};if(typeof this.style.zoom != undefined)this.style.zoom=1;if(!keep)this.style.border='none';strip.style.borderColor=cc || gpc(this.parentNode);var cssHeight=$.curCSS(this, 'height');for(var j in edges){var bot=edges[j];if((bot &&(opts.BL || opts.BR))||(!bot &&(opts.TL || opts.TR))){strip.style.borderStyle='none '+(opts[j+'R']?'solid':'none')+' none '+(opts[j+'L']?'solid':'none');var d=document.createElement('div');$(d).addClass('jquery-corner');var ds=d.style;bot?this.appendChild(d):this.insertBefore(d, this.firstChild);if(bot && cssHeight != 'auto'){if($.css(this,'position')== 'static')this.style.position='relative';ds.position='absolute';ds.bottom=ds.left=ds.padding=ds.margin='0';if(expr)ds.setExpression('width', 'this.parentNode.offsetWidth');else ds.width='100%';}else if(!bot && $.browser.msie){if($.css(this,'position')== 'static')this.style.position='relative';ds.position='absolute';ds.top=ds.left=ds.right=ds.padding=ds.margin='0';if(expr){var bw=sz(this,'borderLeftWidth')+sz(this,'borderRightWidth');ds.setExpression('width', 'this.parentNode.offsetWidth-'+bw+'+ "px"');}else ds.width='100%';}else{ds.position='relative';ds.margin=!bot ? '-'+pad.T+'px -'+pad.R+'px '+(pad.T-width)+'px -'+pad.L+'px' :(pad.B-width)+'px -'+pad.R+'px -'+pad.B+'px -'+pad.L+'px';}for(var i=0; i<width; i++){var w=Math.max(0,getWidth(fx,i, width));var e=strip.cloneNode(false);e.style.borderWidth='0 '+(opts[j+'R']?w:0)+'px 0 '+(opts[j+'L']?w:0)+'px';bot ? d.appendChild(e):d.insertBefore(e, d.firstChild);}if(fold && $.support.boxModel){if(bot && noBottomFold)continue;for(var c in opts){if(!opts[c])continue;if(bot &&(c == 'TL' || c == 'TR'))continue;if(!bot &&(c == 'BL' || c == 'BR'))continue;var common={ position:'absolute', border:'none', margin:0, padding:0, overflow:'hidden', backgroundColor:strip.style.borderColor };var $horz=$('<div/>').css(common).css({ width:width+'px', height:'1px' });switch(c){case 'TL':$horz.css({ bottom:0, left:0 }); break;case 'TR':$horz.css({ bottom:0, right:0 }); break;case 'BL':$horz.css({ top:0, left:0 }); break;case 'BR':$horz.css({ top:0, right:0 }); break;}d.appendChild($horz[0]);var $vert=$('<div/>').css(common).css({ top:0, bottom:0, width:'1px', height:width+'px' });switch(c){case 'TL':$vert.css({ left:width }); break;case 'TR':$vert.css({ right:width }); break;case 'BL':$vert.css({ left:width }); break;case 'BR':$vert.css({ right:width }); break;}d.appendChild($vert[0]);}}}}});};$.fn.uncorner=function(){if(moz || webkit)this.css(moz ? '-moz-border-radius' :'-webkit-border-radius', 0);$('div.jquery-corner', this).remove();return this;};$.fn.corner.defaults={useNative:true,metaAttr:'data-corner'};})(jQuery);
/* UItoTop jQuery Plugin 1.1
*http://www.mattvarone.com/web-design/uitotop-jquery-plugin/
*/
;(function($){$.fn.UItoTop = function(options){var defaults={text:'To Top',min:200,inDelay:600,outDelay:400,containerID:'toTop',containerHoverID:'toTopHover',scrollSpeed:1200,easingType:'linear'};var settings = $.extend(defaults, options);var containerIDhash = '#'+settings.containerID;var containerHoverIDHash = '#'+settings.containerHoverID;$('body').append('<a href="#" id="'+settings.containerID+'">'+settings.text+'</a>');$(containerIDhash).hide().click(function(){$('html, body').animate({scrollTop:0}, settings.scrollSpeed, settings.easingType);$('#'+settings.containerHoverID, this).stop().animate({'opacity':0 }, settings.inDelay, settings.easingType);return false;}).prepend('<span id="'+settings.containerHoverID+'"></span>').hover(function(){$(containerHoverIDHash, this).stop().animate({'opacity':1}, 600, 'linear');}, function(){$(containerHoverIDHash, this).stop().animate({'opacity':0}, 700, 'linear');});$(window).scroll(function(){var sd = $(window).scrollTop();if(typeof document.body.style.maxHeight === "undefined"){$(containerIDhash).css({'position':'absolute','top':$(window).scrollTop()+$(window).height()-50});}if(sd>settings.min)$(containerIDhash).fadeIn(settings.inDelay);else $(containerIDhash).fadeOut(settings.Outdelay);});};})(jQuery);
/* jQuery EasIng v1.1.2-http://gsgd.co.uk/sandbox/jquery.easIng.php
 * Copyright(c)2007 George Smith
 * Licensed under the MIT License:
 * http://www.opensource.org/licenses/mit-license.php
*/
jQuery.extend( jQuery.easing,{easeInQuad:function(x, t, b, c, d){return c*(t/=d)*t+b;},easeOutQuad:function(x, t, b, c, d){return -c *(t/=d)*(t-2)+b;},easeInOutQuad:function(x, t, b, c, d){if((t/=d/2)<1)return c/2*t*t+b;return -c/2*((--t)*(t-2)-1)+b;},easeInCubic:function(x, t, b, c, d){return c*(t/=d)*t*t+b;},easeOutCubic:function(x, t, b, c, d){return c*((t=t/d-1)*t*t+1)+b;},easeInOutCubic:function(x, t, b, c, d){if((t/=d/2)<1)return c/2*t*t*t+b;return c/2*((t-=2)*t*t+2)+b;},easeInQuart:function(x, t, b, c, d){return c*(t/=d)*t*t*t+b;},easeOutQuart:function(x, t, b, c, d){return -c*((t=t/d-1)*t*t*t-1)+b;},easeInOutQuart:function(x, t, b, c, d){if((t/=d/2)<1)return c/2*t*t*t*t+b;return -c/2*((t-=2)*t*t*t-2)+b;},easeInQuint:function(x, t, b, c, d){return c*(t/=d)*t*t*t*t+b;},easeOutQuint:function(x, t, b, c, d){return c*((t=t/d-1)*t*t*t*t+1)+b;},easeInOutQuint:function(x, t, b, c, d){if((t/=d/2)<1)return c/2*t*t*t*t*t+b;return c/2*((t-=2)*t*t*t*t+2)+b;},easeInSine:function(x, t, b, c, d){return -c*Math.cos(t/d*(Math.PI/2))+c+b;},easeOutSine:function(x, t, b, c, d){return c*Math.sin(t/d*(Math.PI/2))+b;},easeInOutSine:function(x, t, b, c, d){return -c/2*(Math.cos(Math.PI*t/d)-1)+b;},easeInExpo:function(x, t, b, c, d){return(t==0)? b :c*Math.pow(2, 10*(t/d-1))+b;},easeOutExpo:function(x, t, b, c, d){return(t==d)? b+c :c*(-Math.pow(2, -10*t/d)+1)+b;},easeInOutExpo:function(x, t, b, c, d){if(t==0)return b;if(t==d)return b+c;if((t/=d/2)<1)return c/2*Math.pow(2, 10*(t-1))+b;return c/2*(-Math.pow(2, -10*--t)+2)+b;},easeInCirc:function(x, t, b, c, d){return -c*(Math.sqrt(1-(t/=d)*t)-1)+b;},easeOutCirc:function(x, t, b, c, d){return c*Math.sqrt(1-(t=t/d-1)*t)+b;},easeInOutCirc:function(x, t, b, c, d){if((t/=d/2)<1)return -c/2*(Math.sqrt(1-t*t)-1)+b;return c/2*(Math.sqrt(1-(t-=2)*t)+1)+b;},easeInElastic:function(x, t, b, c, d){var s=1.70158;var p=0;var a=c;if(t==0)return b;  if((t/=d)==1)return b+c;  if(!p)p=d*.3;if(a<Math.abs(c)){ a=c; var s=p/4; }else var s = p/(2*Math.PI)*Math.asin(c/a);return -(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p ))+b;},easeOutElastic:function(x, t, b, c, d){var s=1.70158;var p=0;var a=c;if(t==0)return b;  if((t/=d)==1)return b+c;  if(!p)p=d*.3;if(a<Math.abs(c)){ a=c; var s=p/4; }else var s = p/(2*Math.PI)*Math.asin(c/a);return a*Math.pow(2,-10*t)*Math.sin((t*d-s)*(2*Math.PI)/p )+c+b;},easeInOutElastic:function(x, t, b, c, d){var s=1.70158;var p=0;var a=c;if(t==0)return b;  if((t/=d/2)==2)return b+c;  if(!p)p=d*(.3*1.5);if(a<Math.abs(c)){ a=c; var s=p/4; }else var s = p/(2*Math.PI)*Math.asin(c/a);if(t<1)return -.5*(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p ))+b;return a*Math.pow(2,-10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p )*.5+c+b;},easeInBack:function(x, t, b, c, d, s){if(s == undefined)s = 1.70158;return c*(t/=d)*t*((s+1)*t-s)+b;},easeOutBack:function(x, t, b, c, d, s){if(s == undefined)s = 1.70158;return c*((t=t/d-1)*t*((s+1)*t+s)+1)+b;},easeInOutBack:function(x, t, b, c, d, s){if(s == undefined)s = 1.70158;if((t/=d/2)<1)return c/2*(t*t*(((s*=(1.525))+1)*t-s))+b;return c/2*((t-=2)*t*(((s*=(1.525))+1)*t+s)+2)+b;},easeInBounce:function(x, t, b, c, d){return c-jQuery.easing.easeOutBounce(x, d-t, 0, c, d)+b;},easeOutBounce:function(x, t, b, c, d){if((t/=d)<(1/2.75)){return c*(7.5625*t*t)+b;} else if(t <(2/2.75)){return c*(7.5625*(t-=(1.5/2.75))*t+.75)+b;} else if(t <(2.5/2.75)){return c*(7.5625*(t-=(2.25/2.75))*t+.9375)+b;} else{return c*(7.5625*(t-=(2.625/2.75))*t+.984375)+b;}},easeInOutBounce:function(x, t, b, c, d){if(t<d/2)return jQuery.easing.easeInBounce(x, t*2, 0, c, d)*.5+b;return jQuery.easing.easeOutBounce(x, t*2-d, 0, c, d)*.5+c*.5+b;}});

