(function(a){a.fn.addOption=function(){var c=function(m,s,r,l){var q=document.createElement("option");q.value=s,q.text=r;var k=m.options;var p=k.length;if(!m.cache){m.cache={};for(var j=0;j<p;j++){m.cache[k[j].value]=j}}if(typeof m.cache[s]=="undefined"){m.cache[s]=p}m.options[m.cache[s]]=q;if(l){q.selected=true}};var e=arguments;if(e.length==0){return this}var h=true;var b=false;var f,g,d;if(typeof(e[0])=="object"){b=true;f=e[0]}if(e.length>=2){if(typeof(e[1])=="boolean"){h=e[1]}else{if(typeof(e[2])=="boolean"){h=e[2]}}if(!b){g=e[0];d=e[1]}}this.each(function(){if(this.nodeName.toLowerCase()!="select"){return}if(b){for(var j in f){c(this,j,f[j],h)}}else{c(this,g,d,h)}});return this};a.fn.ajaxAddOption=function(d,b,c,e,f){if(typeof(d)!="string"){return this}if(typeof(b)!="object"){b={}}if(typeof(c)!="boolean"){c=true}this.each(function(){var g=this;a.getJSON(d,b,function(h){a(g).addOption(h,c);if(typeof e=="function"){if(typeof f=="object"){e.apply(g,f)}else{e.call(g)}}})});return this};a.fn.removeOption=function(){var c=arguments;if(c.length==0){return this}var f=typeof(c[0]);var b,g;if(f=="string"||f=="object"||f=="function"){b=c[0];if(b.constructor==Array){var d=b.length;for(var e=0;e<d;e++){this.removeOption(b[e],c[1])}return this}}else{if(f=="number"){g=c[0]}else{return this}}this.each(function(){if(this.nodeName.toLowerCase()!="select"){return}if(this.cache){this.cache=null}var j=false;var h=this.options;if(!!b){var l=h.length;for(var k=l-1;k>=0;k--){if(b.constructor==RegExp){if(h[k].value.match(b)){j=true}}else{if(h[k].value==b){j=true}}if(j&&c[1]===true){j=h[k].selected}if(j){h[k]=null}j=false}}else{if(c[1]===true){j=h[g].selected}else{j=true}if(j){this.remove(g)}}});return this};a.fn.sortOptions=function(c){var b=typeof(c)=="undefined"?true:!!c;this.each(function(){if(this.nodeName.toLowerCase()!="select"){return}var d=this.options;var e=d.length;var g=[];for(var f=0;f<e;f++){g[f]={v:d[f].value,t:d[f].text}}g.sort(function(h,j){o1t=h.t.toLowerCase(),o2t=j.t.toLowerCase();if(o1t==o2t){return 0}if(b){return o1t<o2t?-1:1}else{return o1t>o2t?-1:1}});for(var f=0;f<e;f++){d[f].text=g[f].t;d[f].value=g[f].v}});return this};a.fn.selectOptions=function(b,e){var f=b;var d=typeof(b);var g=e||false;if(d!="string"&&d!="function"&&d!="object"){return this}this.each(function(){if(this.nodeName.toLowerCase()!="select"){return this}var c=this.options;var h=c.length;for(var j=0;j<h;j++){if(f.constructor==RegExp){if(c[j].value.match(f)){c[j].selected=true}else{if(g){c[j].selected=false}}}else{if(c[j].value==f){c[j].selected=true}else{if(g){c[j].selected=false}}}}});return this};a.fn.copyOptions=function(c,b){var d=b||"selected";if(a(c).size()==0){return this}this.each(function(){if(this.nodeName.toLowerCase()!="select"){return this}var e=this.options;var f=e.length;for(var g=0;g<f;g++){if(d=="all"||(d=="selected"&&e[g].selected)){a(c).addOption(e[g].value,e[g].text)}}});return this};a.fn.containsOption=function(c,b){var e=false;var g=c;var d=typeof(g);var f=typeof(b);if(d!="string"&&d!="function"&&d!="object"){return f=="function"?this:e}this.each(function(){if(this.nodeName.toLowerCase()!="select"){return this}if(e&&f!="function"){return false}var h=this.options;var j=h.length;for(var k=0;k<j;k++){if(g.constructor==RegExp){if(h[k].value.match(g)){e=true;if(f=="function"){b.call(h[k],k)}}}else{if(h[k].value==g){e=true;if(f=="function"){b.call(h[k],k)}}}}});return f=="function"?this:e};a.fn.selectedValues=function(){var b=[];this.find("option:selected").each(function(){b[b.length]=this.value});return b};a.fn.selectedOptions=function(){return this.find("option:selected")}})(jQuery);(function(a){a.extend(a.fn,{validate:function(c){if(!this.length){c&&c.debug&&window.console&&console.warn("nothing selected, can't validate, returning nothing");return}var b=a.data(this[0],"validator");if(b){return b}b=new a.validator(c,this[0]);a.data(this[0],"validator",b);if(b.settings.onsubmit){this.find("input, button").filter(".cancel").click(function(){b.cancelSubmit=true});this.submit(function(d){if(b.settings.debug){d.preventDefault()}function e(){if(b.settings.submitHandler){b.settings.submitHandler.call(b,b.currentForm);return false}return true}if(b.cancelSubmit){b.cancelSubmit=false;return e()}if(b.form()){if(b.pendingRequest){b.formSubmitted=true;return false}return e()}else{b.focusInvalid();return false}})}return b},valid:function(){if(a(this[0]).is("form")){return this.validate().form()}else{var b=false;var c=a(this[0].form).validate();this.each(function(){b|=c.element(this)});return b}},removeAttrs:function(d){var c={},b=this;a.each(d.split(/\s/),function(f,e){c[e]=b.attr(e);b.removeAttr(e)});return c},rules:function(e,g){var c=this[0];if(e){var k=a.data(c.form,"validator").settings;var h=k.rules;var f=a.validator.staticRules(c);switch(e){case"add":a.extend(f,a.validator.normalizeRule(g));h[c.name]=f;if(g.messages){k.messages[c.name]=a.extend(k.messages[c.name],g.messages)}break;case"remove":if(!g){delete h[c.name];return f}var b={};a.each(g.split(/\s/),function(m,l){b[l]=f[l];delete f[l]});return b}}var d=a.validator.normalizeRules(a.extend({},a.validator.metadataRules(c),a.validator.classRules(c),a.validator.attributeRules(c),a.validator.staticRules(c)),c);if(d.required){var j=d.required;delete d.required;d=a.extend({required:j},d)}return d}});a.extend(a.expr[":"],{blank:function(b){return !a.trim(b.value)},filled:function(b){return !!a.trim(b.value)},unchecked:function(b){return !b.checked}});a.format=function(c,b){if(arguments.length==1){return function(){var d=a.makeArray(arguments);d.unshift(c);return a.format.apply(this,d)}}if(arguments.length>2&&b.constructor!=Array){b=a.makeArray(arguments).slice(1)}if(b.constructor!=Array){b=[b]}a.each(b,function(e,d){c=c.replace(new RegExp("\\{"+e+"\\}","g"),d)});return c};a.validator=function(c,b){this.settings=a.extend({},a.validator.defaults,c);this.currentForm=b;this.init()};a.extend(a.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",errorElement:"label",focusInvalid:true,errorContainer:a([]),errorLabelContainer:a([]),onsubmit:true,ignore:[],ignoreTitle:false,onfocusin:function(b){this.lastActive=b;if(this.settings.focusCleanup&&!this.blockFocusCleanup){this.settings.unhighlight&&this.settings.unhighlight.call(this,b,this.settings.errorClass);this.errorsFor(b).hide()}},onfocusout:function(b){if(!this.checkable(b)&&(b.name in this.submitted||!this.optional(b))){this.element(b)}},onkeyup:function(b){if(b.name in this.submitted||b==this.lastElement){this.element(b)}},onclick:function(b){if(b.name in this.submitted){this.element(b)}},highlight:function(b,c){a(b).addClass(c)},unhighlight:function(b,c){a(b).removeClass(c)}},setDefaults:function(b){a.extend(a.validator.defaults,b)},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).",dateDE:"Bitte geben Sie ein gültiges Datum ein.",number:"Please enter a valid number.",numberDE:"Bitte geben Sie eine Nummer ein.",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:a.format("Please enter no more than {0} characters."),minlength:a.format("Please enter at least {0} characters."),rangelength:a.format("Please enter a value between {0} and {1} characters long."),range:a.format("Please enter a value between {0} and {1}."),max:a.format("Please enter a value less than or equal to {0}."),min:a.format("Please enter a value greater than or equal to {0}.")},autoCreateRanges:false,prototype:{init:function(){this.labelContainer=a(this.settings.errorLabelContainer);this.errorContext=this.labelContainer.length&&this.labelContainer||a(this.currentForm);this.containers=a(this.settings.errorContainer).add(this.settings.errorLabelContainer);this.submitted={};this.valueCache={};this.pendingRequest=0;this.pending={};this.invalid={};this.reset();var b=(this.groups={});a.each(this.settings.groups,function(f,e){a.each(e.split(/\s/),function(h,g){b[g]=f})});var d=this.settings.rules;a.each(d,function(f,e){d[f]=a.validator.normalizeRule(e)});function c(e){var f=a.data(this[0].form,"validator");f.settings["on"+e.type]&&f.settings["on"+e.type].call(f,this[0])}a(this.currentForm).delegate("focusin focusout keyup",":text, :password, :file, select, textarea",c).delegate("click",":radio, :checkbox",c);if(this.settings.invalidHandler){a(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler)}},form:function(){this.checkForm();a.extend(this.submitted,this.errorMap);this.invalid=a.extend({},this.errorMap);if(!this.valid()){a(this.currentForm).triggerHandler("invalid-form",[this])}this.showErrors();return this.valid()},checkForm:function(){this.prepareForm();for(var c=0,b=(this.currentElements=this.elements());b[c];c++){this.check(b[c])}return this.valid()},element:function(c){c=this.clean(c);this.lastElement=c;this.prepareElement(c);this.currentElements=a(c);var b=this.check(c);if(b){delete this.invalid[c.name]}else{this.invalid[c.name]=true}if(!this.numberOfInvalids()){this.toHide=this.toHide.add(this.containers)}this.showErrors();return b},showErrors:function(c){if(c){a.extend(this.errorMap,c);this.errorList=[];for(var b in c){this.errorList.push({message:c[b],element:this.findByName(b)[0]})}this.successList=a.grep(this.successList,function(d){return !(d.name in c)})}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors()},resetForm:function(){if(a.fn.resetForm){a(this.currentForm).resetForm()}this.submitted={};this.prepareForm();this.hideErrors();this.elements().removeClass(this.settings.errorClass)},numberOfInvalids:function(){return this.objectLength(this.invalid)},objectLength:function(d){var b=0;for(var c in d){b++}return b},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{a(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus()}catch(b){}}},findLastActive:function(){var b=this.lastActive;return b&&a.grep(this.errorList,function(c){return c.element.name==b.name}).length==1&&b},elements:function(){var c=this,b={};return a([]).add(this.currentForm.elements).filter(":input").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function(){!this.name&&c.settings.debug&&window.console&&console.error("%o has no name assigned",this);if(this.name in b||!c.objectLength(a(this).rules())){return false}b[this.name]=true;return true})},clean:function(b){return a(b)[0]},errors:function(){return a(this.settings.errorElement+"."+this.settings.errorClass,this.errorContext)},reset:function(){this.successList=[];this.errorList=[];this.errorMap={};this.toShow=a([]);this.toHide=a([]);this.formSubmitted=false;this.currentElements=a([])},prepareForm:function(){this.reset();this.toHide=this.errors().add(this.containers)},prepareElement:function(b){this.reset();this.toHide=this.errorsFor(b)},check:function(f){f=this.clean(f);if(this.checkable(f)){f=this.findByName(f.name)[0]}var d=a(f).rules();var b=false;for(method in d){var h={method:method,parameters:d[method]};try{var c=a.validator.methods[method].call(this,f.value.replace(/\r/g,""),f,h.parameters);if(c=="dependency-mismatch"){b=true;continue}b=false;if(c=="pending"){this.toHide=this.toHide.not(this.errorsFor(f));return}if(!c){this.formatAndAdd(f,h);return false}}catch(g){this.settings.debug&&window.console&&console.log("exception occured when checking element "+f.id+", check the '"+h.method+"' method");throw g}}if(b){return}if(this.objectLength(d)){this.successList.push(f)}return true},customMetaMessage:function(d,b){if(!a.metadata){return}var c=this.settings.meta?a(d).metadata()[this.settings.meta]:a(d).metadata();return c&&c.messages&&c.messages[b]},customMessage:function(c,d){var b=this.settings.messages[c];return b&&(b.constructor==String?b:b[d])},findDefined:function(){for(var b=0;b<arguments.length;b++){if(arguments[b]!==undefined){return arguments[b]}}return undefined},defaultMessage:function(c,b){return this.findDefined(this.customMessage(c.name,b),this.customMetaMessage(c,b),!this.settings.ignoreTitle&&c.title||undefined,a.validator.messages[b],"<strong>Warning: No message defined for "+c.name+"</strong>")},formatAndAdd:function(c,d){var b=this.defaultMessage(c,d.method);if(typeof b=="function"){b=b.call(this,d.parameters,c)}this.errorList.push({message:b,element:c});this.errorMap[c.name]=b;this.submitted[c.name]=b},addWrapper:function(b){if(this.settings.wrapper){b=b.add(b.parents(this.settings.wrapper))}return b},defaultShowErrors:function(){for(var c=0;this.errorList[c];c++){var d=this.errorList[c];this.settings.highlight&&this.settings.highlight.call(this,d.element,this.settings.errorClass);this.showLabel(d.element,d.message)}if(this.errorList.length){this.toShow=this.toShow.add(this.containers)}if(this.settings.success){for(var c=0;this.successList[c];c++){this.showLabel(this.successList[c])}}if(this.settings.unhighlight){for(var c=0,b=this.validElements();b[c];c++){this.settings.unhighlight.call(this,b[c],this.settings.errorClass)}}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 a(this.errorList).map(function(){return this.element})},showLabel:function(d,c){var b=this.errorsFor(d);if(b.length){b.removeClass().addClass(this.settings.errorClass);b.attr("generated")&&b.html(c)}else{b=a("<"+this.settings.errorElement+"/>").attr({"for":this.idOrName(d),generated:true}).addClass(this.settings.errorClass).html(c||"");if(this.settings.wrapper){b=b.hide().show().wrap("<"+this.settings.wrapper+"/>").parent()}if(!this.labelContainer.append(b).length){this.settings.errorPlacement?this.settings.errorPlacement(b,a(d)):b.insertAfter(d)}}if(!c&&this.settings.success){b.text("");typeof this.settings.success=="string"?b.addClass(this.settings.success):this.settings.success(b)}this.toShow=this.toShow.add(b)},errorsFor:function(b){return this.errors().filter("[for='"+this.idOrName(b)+"']")},idOrName:function(b){return this.groups[b.name]||(this.checkable(b)?b.name:b.id||b.name)},checkable:function(b){return/radio|checkbox/i.test(b.type)},findByName:function(b){var c=this.currentForm;return a(document.getElementsByName(b)).map(function(e,d){return d.form==c&&d.name==b&&d||null})},getLength:function(b,c){switch(c.nodeName.toLowerCase()){case"select":return a("option:selected",c).length;case"input":if(this.checkable(c)){return this.findByName(c.name).filter(":checked").length}}return b.length},depend:function(b,c){return this.dependTypes[typeof b]?this.dependTypes[typeof b](b,c):true},dependTypes:{"boolean":function(b,c){return b},string:function(b,c){return !!a(b,c.form).length},"function":function(b,c){return b(c)}},optional:function(b){return !a.validator.methods.required.call(this,a.trim(b.value),b)&&"dependency-mismatch"},startRequest:function(b){if(!this.pending[b.name]){this.pendingRequest++;this.pending[b.name]=true}},stopRequest:function(c,b){this.pendingRequest--;if(this.pendingRequest<0){this.pendingRequest=0}delete this.pending[c.name];if(b&&this.pendingRequest==0&&this.formSubmitted&&this.form()){a(this.currentForm).submit()}else{if(!b&&this.pendingRequest==0&&this.formSubmitted){a(this.currentForm).triggerHandler("invalid-form",[this])}}},previousValue:function(b){return a.data(b,"previousValue")||a.data(b,"previousValue",previous={old:null,valid:true,message:this.defaultMessage(b,"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(c,b){c.constructor==String?this.classRuleSettings[c]=b:a.extend(this.classRuleSettings,c)},classRules:function(d){var c={};var b=a(d).attr("class");b&&a.each(b.split(" "),function(){if(this in a.validator.classRuleSettings){a.extend(c,a.validator.classRuleSettings[this])}});return c},attributeRules:function(e){var d={};var c=a(e);for(method in a.validator.methods){var b=c.attr(method);if(b){d[method]=b}}if(d.maxlength&&/-1|2147483647|524288/.test(d.maxlength)){delete d.maxlength}return d},metadataRules:function(c){if(!a.metadata){return{}}var b=a.data(c.form,"validator").settings.meta;return b?a(c).metadata()[b]:a(c).metadata()},staticRules:function(d){var b={};var c=a.data(d.form,"validator");if(c.settings.rules){b=a.validator.normalizeRule(c.settings.rules[d.name])||{}}return b},normalizeRules:function(b,c){a.each(b,function(f,e){if(e===false){delete b[f];return}if(e.param||e.depends){var d=true;switch(typeof e.depends){case"string":d=!!a(e.depends,c.form).length;break;case"function":d=e.depends.call(c,c);break}if(d){b[f]=e.param!==undefined?e.param:true}else{delete b[f]}}});a.each(b,function(e,d){b[e]=a.isFunction(d)?d(c):d});a.each(["minlength","maxlength","min","max"],function(){if(b[this]){b[this]=Number(b[this])}});a.each(["rangelength","range"],function(){if(b[this]){b[this]=[Number(b[this][0]),Number(b[this][1])]}});if(a.validator.autoCreateRanges){if(b.min&&b.max){b.range=[b.min,b.max];delete b.min;delete b.max}if(b.minlength&&b.maxlength){b.rangelength=[b.minlength,b.maxlength];delete b.minlength;delete b.maxlength}}if(b.messages){delete b.messages}return b},normalizeRule:function(c){if(typeof c=="string"){var b={};a.each(c.split(/\s/),function(){b[this]=true});c=b}return c},addMethod:function(b,c,d){a.validator.methods[b]=c;a.validator.messages[b]=d;if(c.length<3){a.validator.addClassRules(b,a.validator.normalizeRule(b))}},methods:{required:function(b,d,c){if(!this.depend(c,d)){return"dependency-mismatch"}switch(d.nodeName.toLowerCase()){case"select":var e=a("option:selected",d);return e.length>0&&(d.type=="select-multiple"||(a.browser.msie&&!(e[0].attributes.value.specified)?e[0].text:e[0].value).length>0);case"input":if(this.checkable(d)){return this.getLength(b,d)>0}default:return a.trim(b).length>0}},remote:function(b,f,c){if(this.optional(f)){return"dependency-mismatch"}var d=this.previousValue(f);if(!this.settings.messages[f.name]){this.settings.messages[f.name]={}}this.settings.messages[f.name].remote=typeof d.message=="function"?d.message(b):d.message;c=typeof c=="string"&&{url:c}||c;if(d.old!==b){d.old=b;var e=this;this.startRequest(f);var g={};g[f.name]=b;a.ajax(a.extend(true,{url:c,mode:"abort",port:"validate"+f.name,dataType:"json",data:g,success:function(h){if(h){var j=e.formSubmitted;e.prepareElement(f);e.formSubmitted=j;e.successList.push(f);e.showErrors()}else{var k={};k[f.name]=h||e.defaultMessage(f,"remote");e.showErrors(k)}d.valid=h;e.stopRequest(f,h)}},c));return"pending"}else{if(this.pending[f.name]){return"pending"}}return d.valid},minlength:function(b,d,c){return this.optional(d)||this.getLength(a.trim(b),d)>=c},maxlength:function(b,d,c){return this.optional(d)||this.getLength(a.trim(b),d)<=c},rangelength:function(b,d,c){var e=this.getLength(a.trim(b),d);return this.optional(d)||(e>=c[0]&&e<=c[1])},min:function(b,d,c){return this.optional(d)||b>=c},max:function(b,d,c){return this.optional(d)||b<=c},range:function(b,d,c){return this.optional(d)||(b>=c[0]&&b<=c[1])},email:function(b,c){return this.optional(c)||/^((([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(b)},url:function(b,c){return this.optional(c)||/^(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(b)},date:function(b,c){return this.optional(c)||!/Invalid|NaN/.test(new Date(b))},dateISO:function(b,c){return this.optional(c)||/^\d{4}[\/-]\d{1,2}[\/-]\d{1,2}$/.test(b)},dateDE:function(b,c){return this.optional(c)||/^\d\d?\.\d\d?\.\d\d\d?\d?$/.test(b)},number:function(b,c){return this.optional(c)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/.test(b)},numberDE:function(b,c){return this.optional(c)||/^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?$/.test(b)},digits:function(b,c){return this.optional(c)||/^\d+$/.test(b)},creditcard:function(b,d){if(this.optional(d)){return"dependency-mismatch"}if(/[^0-9-]+/.test(b)){return false}var e=0,c=0,g=false;b=b.replace(/\D/g,"");for(n=b.length-1;n>=0;n--){var f=b.charAt(n);var c=parseInt(f,10);if(g){if((c*=2)>9){c-=9}}e+=c;g=!g}return(e%10)==0},accept:function(b,d,c){c=typeof c=="string"?c:"png|jpe?g|gif";return this.optional(d)||b.match(new RegExp(".("+c+")$","i"))},equalTo:function(b,d,c){return b==a(c).val()}}})})(jQuery);(function(b){var c=b.ajax;var a={};b.ajax=function(e){e=b.extend(e,b.extend({},b.ajaxSettings,e));var d=e.port;if(e.mode=="abort"){if(a[d]){a[d].abort()}return(a[d]=c.apply(this,arguments))}return c.apply(this,arguments)}})(jQuery);(function(a){a.each({focus:"focusin",blur:"focusout"},function(b,c){a.event.special[c]={setup:function(){if(a.browser.msie){return false}this.addEventListener(b,a.event.special[c].handler,true)},teardown:function(){if(a.browser.msie){return false}this.removeEventListener(b,a.event.special[c].handler,true)},handler:function(d){arguments[0]=a.event.fix(d);arguments[0].type=c;return a.event.handle.apply(this,arguments)}}});a.extend(a.fn,{delegate:function(c,b,d){return this.bind(c,function(e){var f=a(e.target);if(f.is(b)){return d.apply(f,arguments)}})},triggerEvent:function(b,c){return this.triggerHandler(b,[a.event.fix({type:b,target:c})])}})})(jQuery);(function(c){c.fn.media=function(m,o,l){return this.each(function(){if(typeof m=="function"){l=o;o=m;m={}}var s=h(this,m);if(typeof o=="function"){o(this,s)}var p=j();var u=p.exec(s.src.toLowerCase())||[""];s.type?u[0]=s.type:u.shift();for(var t=0;t<u.length;t++){fn=u[t].toLowerCase();if(g(fn[0])){fn="fn"+fn}if(!c.fn.media[fn]){continue}var v=c.fn.media[fn+"_player"];if(!s.params){s.params={}}if(v){var w=v.autoplayAttr=="autostart";s.params[v.autoplayAttr||"autoplay"]=w?(s.autoplay?1:0):s.autoplay?true:false}var q=c.fn.media[fn](this,s);q.css("backgroundColor",s.bgColor).width(s.width);if(typeof l=="function"){l(this,q[0],s,v.name)}break}})};c.fn.media.mapFormat=function(m,l){if(!m||!l||!c.fn.media.defaults.players[l]){return}m=m.toLowerCase();if(g(m[0])){m="fn"+m}c.fn.media[m]=c.fn.media[l];c.fn.media[m+"_player"]=c.fn.media.defaults.players[l]};c.fn.media.defaults={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}};c.fn.media.defaults.players={flash:{name:"flash",types:"flv,mp3,swf",oAttrs:{classid:"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000",type:"application/x-oleobject",codebase:"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version="+c.fn.media.defaults.flashVersion},eAttrs:{type:"application/x-shockwave-flash",pluginspage:"http://www.adobe.com/go/getflashplayer"}},quicktime:{name:"quicktime",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",oAttrs:{classid:"clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B",codebase:"http://www.apple.com/qtactivex/qtplugin.cab"},eAttrs:{pluginspage:"http://www.apple.com/quicktime/download/"}},realplayer:{name:"real",types:"ra,ram,rm,rpm,rv,smi,smil",autoplayAttr:"autostart",oAttrs:{classid:"clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA"},eAttrs:{type:"audio/x-pn-realaudio-plugin",pluginspage:"http://www.real.com/player/"}},winmedia:{name:"winmedia",types:"asx,asf,avi,wma,wmv",autoplayAttr:"autostart",oUrl:"url",oAttrs:{classid:"clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6",type:"application/x-oleobject"},eAttrs:{type:c.browser.mozilla&&d()?"application/x-ms-wmp":"application/x-mplayer2",pluginspage:"http://www.microsoft.com/Windows/MediaPlayer/"}},iframe:{name:"iframe",types:"html,pdf"},silverlight:{name:"silverlight",types:"xaml"}};function d(){var l=navigator.plugins;for(i=0;i<l.length;i++){var m=l[i];if(m.filename=="np-mswmp.dll"){return true}}return false}var f=1;for(var e in c.fn.media.defaults.players){var b=c.fn.media.defaults.players[e].types;c.each(b.split(","),function(m,l){if(g(l[0])){l="fn"+l}c.fn.media[l]=c.fn.media[e]=k(e);c.fn.media[l+"_player"]=c.fn.media.defaults.players[e]})}function j(){var m="";for(var l in c.fn.media.defaults.players){if(m.length){m+=","}m+=c.fn.media.defaults.players[l].types}return new RegExp("\\.("+m.replace(/,/ig,"|")+")\\b")}function k(l){return function(m,o){return a(m,o,l)}}function g(l){return"0123456789".indexOf(l)>-1}function h(s,l){l=l||{};var m=c(s);var o=s.className||"";var v=c.metadata?m.metadata():c.meta?m.data():{};v=v||{};var y=v.width||parseInt(((o.match(/w:(\d+)/)||[])[1]||0));var z=v.height||parseInt(((o.match(/h:(\d+)/)||[])[1]||0));if(y){v.width=y}if(z){v.height=z}if(o){v.cls=o}var q=c.fn.media.defaults;var r=l;var x=v;var u={params:{bgColor:l.bgColor||c.fn.media.defaults.bgColor}};var t=c.extend({},q,r,x);c.each(["attrs","params","flashvars","silverlight"],function(w,p){t[p]=c.extend({},u[p]||{},q[p]||{},r[p]||{},x[p]||{})});if(typeof t.caption=="undefined"){t.caption=m.text()}t.src=t.src||m.attr("href")||m.attr("src")||"unknown";return t}c.fn.media.swf=function(q,v){if(!window.SWFObject&&!window.swfobject){if(v.flashvars){var o=[];for(var r in v.flashvars){o.push(r+"="+v.flashvars[r])}if(!v.params){v.params={}}v.params.flashvars=o.join("&")}return a(q,v,"flash")}var l=q.id?(' id="'+q.id+'"'):"";var m=v.cls?(' class="'+v.cls+'"'):"";var t=c("<div"+l+m+">");if(window.swfobject){c(q).after(t).appendTo(t);if(!q.id){q.id="movie_player_"+f++}swfobject.embedSWF(v.src,q.id,v.width,v.height,v.flashVersion,v.expressInstaller,v.flashvars,v.params,v.attrs)}else{c(q).after(t).remove();var u=new SWFObject(v.src,"movie_player_"+f++,v.width,v.height,v.flashVersion,v.bgColor);if(v.expressInstaller){u.useExpressInstall(v.expressInstaller)}for(var s in v.params){if(s!="bgColor"){u.addParam(s,v.params[s])}}for(var r in v.flashvars){u.addVariable(r,v.flashvars[r])}u.write(t[0])}if(v.caption){c("<div>").appendTo(t).html(v.caption)}return t};c.fn.media.flv=c.fn.media.mp3=function(o,l){var r=l.src;var q=/\.mp3\b/i.test(r)?c.fn.media.defaults.mp3Player:c.fn.media.defaults.flvPlayer;var m=l.flvKeyName;r=encodeURIComponent(r);l.src=q;l.src=l.src+"?"+m+"="+(r);var p={};p[m]=r;l.flashvars=c.extend({},p,l.flashvars);return c.fn.media.swf(o,l)};c.fn.media.xaml=function(q,t){if(!window.Sys||!window.Sys.Silverlight){if(c.fn.media.xaml.warning){return}c.fn.media.xaml.warning=1;alert("You must include the Silverlight.js script.");return}var o={width:t.width,height:t.height,background:t.bgColor,inplaceInstallPrompt:t.silverlight.inplaceInstallPrompt,isWindowless:t.silverlight.isWindowless,framerate:t.silverlight.framerate,version:t.silverlight.version};var p={onError:t.silverlight.onError,onLoad:t.silverlight.onLoad};var r=q.id?(' id="'+q.id+'"'):"";var l=t.id||"AG"+f++;var m=t.cls?(' class="'+t.cls+'"'):"";var s=c("<div"+r+m+">");c(q).after(s).remove();Sys.Silverlight.createObjectEx({source:t.src,initParams:t.silverlight.initParams,userContext:t.silverlight.userContext,id:l,parentElement:s[0],properties:o,events:p});if(t.caption){c("<div>").appendTo(s).html(t.caption)}return s};function a(w,B,x){var t=c(w);var s=c.fn.media.defaults.players[x];if(x=="iframe"){var s=c('<iframe width="'+B.width+'" height="'+B.height+'" >');s.attr("src",B.src);s.css("backgroundColor",s.bgColor)}else{if(c.browser.msie){var u=['<object width="'+B.width+'" height="'+B.height+'" '];for(var q in B.attrs){u.push(q+'="'+B.attrs[q]+'" ')}for(var q in s.oAttrs||{}){var A=s.oAttrs[q];if(q=="codebase"&&window.location.protocol=="https:"){A=A.replace("http","https")}u.push(q+'="'+A+'" ')}u.push("></object>");var y=['<param name="'+(s.oUrl||"src")+'" value="'+B.src+'">'];for(var q in B.params){y.push('<param name="'+q+'" value="'+B.params[q]+'">')}var s=document.createElement(u.join(""));for(var l=0;l<y.length;l++){s.appendChild(document.createElement(y[l]))}}else{var u=['<embed width="'+B.width+'" height="'+B.height+'" style="display:block"'];if(B.src){u.push(' src="'+B.src+'" ')}for(var q in B.attrs){u.push(q+'="'+B.attrs[q]+'" ')}for(var q in s.eAttrs||{}){u.push(q+'="'+s.eAttrs[q]+'" ')}for(var q in B.params){if(q=="wmode"&&x!="flash"){continue}u.push(q+'="'+B.params[q]+'" ')}u.push("></embed>")}}var m=w.id?(' id="'+w.id+'"'):"";var r=B.cls?(' class="'+B.cls+'"'):"";var z=c("<div"+m+r+">");t.after(z).remove();(c.browser.msie||x=="iframe")?z.append(s):z.html(u.join(""));if(B.caption){c("<div>").appendTo(z).html(B.caption)}return z}})(jQuery);(function(){if(!window.mvc){window.mvc=function(){}}var xforms=window.mvc.xforms={init:function(form){initChildCons(form,"")}};function controlBase(el,con){}function group(el,con){initChildCons(con,el.id)}function repeat(el,con){this.index=el.childNodes.length-1;$.each(el.childNodes,function(i){this.xforms=new repeatItem(this,i);initChildCons(con,el.id+"-"+i)})}repeat.prototype.insertItem=insertItem;repeat.prototype.deleteItem=deleteItem;repeat.prototype.buildTemplate=buildTemplate;function repeatItem(el,itemIndex){this.el=el;this.itemIndex=itemIndex}function getControl(conID){var jq=$("#"+conID);if(jq.length>0){return jq[0]}else{throw ("XForms: Element not found for ID = "+conID)}}function initChildCons(con,prefix){$.each(con.cons,function(i,childCon){initControl(childCon,prefix)})}function initControl(con,prefix){if(prefix.length>0&&con.id.length>0){prefix=prefix+"_"}var conID=prefix+con.id;var el=getControl(conID);initDom(el,con);if(con.acts){$.each(con.acts,function(i,action){if(action.type==0){bindAction(el,action)}else{if(action.type==2){bindInsertAction(el,action)}else{if(action.type==3){bindDeleteAction(el,action)}}}})}$(el).trigger("xforms-rebuild")}function initDom(el,con){el.xforms=createDomControl(el,con);el.xforms.con=con;el.xforms.el=el}function createDomControl(el,con){if(con.type==0){return new group(el,con)}else{if(con.type==3){return new repeat(el,con)}}return new controlBase(el,con)}function bindAction(el,action){eval("var func = "+action.func);$(el).bind(action.ev,func)}function bindInsertAction(el,action){eval("var cond = "+action.cond);var repeat=getTriggerRepeat(el,action.ns);$(el).bind(action.ev,function(){if(cond!=null?cond():true){var index=getRepeatIndex(repeat,el,action.at);repeat.xforms.insertItem(index,action.pos)}})}function bindDeleteAction(el,action){eval("var cond = "+action.cond);var repeat=getTriggerRepeat(el,action.ns);$(el).bind(action.ev,function(){if(cond!=null?cond():true){var index=getRepeatIndex(repeat,el,action.at);repeat.xforms.deleteItem(index)}})}function actionEvent(ev){if(cond!=null?cond():true){func(ev)}}function insertItem(index,position){if(index==undefined){index=this.el.childNodes.length-1}if(position==undefined){position=0}var template=this.buildTemplate();var jq=$(this.el);if(this.el.childNodes.length==0){jq.html(template)}else{if(index>-1){var insertItem=$(this.el.childNodes[index]);if(position==1){insertItem.before(template)}else{insertItem.after(template)}}}initChildCons(this.con,this.el.id+"-"+template.xforms.itemIndex);jq.trigger("xforms-insert",[template,index,position]);return template}function deleteItem(index){var jq=$(this.el);if(index>-1){var deleteItem=jq.children().eq(index);deleteItem.remove();jq.trigger("xforms-delete",[deleteItem[0],index])}}function buildTemplate(){this.index++;var temJQ=$(this.con.itemTemplate);var tem=temJQ[0];tem.xforms=new repeatItem(tem,this.index);var itemID=this.el.id+"-"+this.index;reindexAttr(this,temJQ,"id",itemID);reindexAttr(this,temJQ,"name",itemID);reindexAttr(this,temJQ,"for",itemID);return tem}function reindexAttr(repeat,tem,attr,itemID){$(tem).find("["+attr+"^="+repeat.con.templateID+"]").each(function(){var jqCon=$(this);var newID=jqCon.attr(attr).replace(repeat.con.templateID,itemID);jqCon.attr(attr,newID)})}function getRepeatIndex(repeat,el,at){var itemLength=repeat.childNodes.length;if(itemLength==0||at==1){return 0}if(at==2&&itemLength>0){return itemLength-1}else{if(at==0){var tmpEl=el;while(tmpEl.xforms==undefined||tmpEl.xforms.itemIndex==undefined){tmpEl=tmpEl.parentNode;if(tmpEl==undefined){throw ("At = current not valid for insert on trigger "+el.id)}}var item=$(tmpEl);var repeatIndex=$(repeat).children().index(item);return repeatIndex}}}function getTriggerRepeat(el,nodeset){var conID=el.xforms.con.id;var repeatID=el.id.substr(0,el.id.length-conID.length);if(nodeset.length>0){repeatID=repeatID+nodeset}else{repeatID=repeatID.substr(0,repeatID.lastIndexOf("-"))}var dom=getControl(repeatID);return dom}})();var local_BlockUiElementSelector="#main";$(document).ready(function(){$("form.xform").submit(function(){engine.WorkingDialog(local_BlockUiElementSelector)})});function hotel_ToggleDescription(b,a){if(window.event){b=window.event}var c=b.srcelement?b.srcelement:b.target;$("span.rest, span.more",$(c).parent().parent()).toggle()}function hotel_ToggleModeProducts(a){if($("#hotel_"+a+" tr.prod-hidden").css("display")=="none"){$("#hotel_"+a+" tr.prod-hidden").show()}else{$("#hotel_"+a+" tr.prod-hidden").hide()}}var wasCurrencyChanged=false;function currency_OnChange(o){if(o==null||typeof(arHotelIDs)=="undefined"||arHotelIDs.length<1){return}var selectedCurrency=o.value;for(i=0;i<arHotelIDs.length;i++){var hotelData=$("table#hotel_"+arHotelIDs[i]).metadata();var curFrom=hotelData.curr,curTo=(selectedCurrency==""?hotelData.curr:selectedCurrency);var exchRate=getExchangeRate(curFrom,curTo);if(exchRate<0){return}$("#hotel_"+arHotelIDs[i]+" span.rate, .hotel-minies li."+arHotelIDs[i]+" span.rate").each(function(i){var v=$(this).metadata().o*exchRate;$(this).text(v.toFixed(2))});$("#hotel_"+arHotelIDs[i]+" span.curr, .hotel-minies li."+arHotelIDs[i]+" span.curr").text(selectedCurrency==""?hotelData.curr:selectedCurrency)}if(false
/*@cc_on || @_jscript_version < 5.7@*/
){$("div.pager a.active:first").focus()}else{$(o).blur()}wasCurrencyChanged=true}var arExchangeRates=new Array();function getExchangeRate(fromCode,toCode){if(fromCode==toCode){return 1}var d=arExchangeRates[fromCode+"_"+toCode];if(d==null){var o=$.ajax({async:false,type:"GET",url:"/en/WebService.mvc/GetExchangeRate?currencyCodeFrom="+fromCode+"&currencyCodeTo="+toCode,contentType:"application/json; charset=utf-8",dataType:"json"});var e=eval("("+o.responseText+")");if(e.Message){alert("Ajax Error:\n"+e.Message);return -1}arExchangeRates[fromCode+"_"+toCode]=e}return arExchangeRates[fromCode+"_"+toCode]}function pageRequest_OnBegin(){engine.WorkingDialog(local_BlockUiElementSelector)}function pageRequest_OnSuccess(){engine.WorkingDialog(local_BlockUiElementSelector,false);if(wasCurrencyChanged){currency_OnChange(document.getElementById("Currencies"))}engine.ToolTipsInit()}function pageRequest_Failed(a){$.unblockUI();alert("Ajax Error.\nPlease, try later, or contact site admnistrator.")}function loadHotelPage(a){$("html, body").animate({scrollTop:0},"fast");engine.WorkingDialog(local_BlockUiElementSelector);$.get(a,function(b){$("#hotels").html(b);engine.WorkingDialog(local_BlockUiElementSelector,false);if(wasCurrencyChanged){currency_OnChange(document.getElementById("Currencies"))}engine.ToolTipsInit("#hotels");mapHotelList_Destroy();if($("input[id$='_IsHotelsMapVisible']").val().toLowerCase()=="true"){mapHotelList_Show()}})}$().ready(function(){$("form.xf td.value.date input[type='hidden'], table.info input.date-picker[type='hidden']").datepicker({mandatory:true,gotoCurrent:true,changeMonth:true,changeYear:true,minDate:"+1d",maxDate:"+1y +1m +1d",showOn:"both",dateFormat:datePicker_DateFormat,buttonImageOnly:true,buttonImage:datePicker_ImageButton,onSelect:function(a){avhForm.SetDate(this.id.split("_")[1],$(this).datepicker("getDate"))}});$("#AvhSearchRequest_CurrencyCode").change(function(){currency_OnChange(this);$("#Currencies").selectOptions(this.value,true)});$("#advanced-search-button a").click(function(){$(this).toggleClass("hide");$("#hotel-search-form-body tr.advanced").toggleClass("hidden")})});function goAvh(a,b,c){$("#HotelID").val(a);$("#RateTypeID").val(b);$("#RoomID").val(c);$("#TimeStampMs").val(new Date().getTime());$("#formAvh").submit();engine.Working();return false}function AvhSearchForm(e,b,c){this.IdPrefix=e;this.MinDate=b;this.MinDate.setHours(0,0,0,0);this.MaxDate=c;this.MaxDate.setHours(0,0,0,0);this.MaxOccupancy=5;var a=3;var d=" / ";this.GetOccupancy=function(){return $(getIdJQ("Occupancy")).val()};this.GetDateFromSelects=function(h){var k=$(getIdJQ(h+"_MonthYear")+" :selected").text(),f=k.split(d);var m=$(getIdJQ(h+"_Day")+" :selected").text(),j=f[0],g=f[1];var l=new Date();l.setFullYear(g,j-1,m);l.setHours(0,0,0,0);return l};this.SetDate=function(g,h){var f=setDate(g,h);this.Validate(f);this.MonthYearChanged(f)};this.Validate=function(h){var j=h.name.replace(getId(""),"").split("_")[0],f=this.GetDateFromSelects("FromDate"),k=this.GetDateFromSelects("ToDate");if(f<avhForm.MinDate){f=avhForm.MinDate;setDate("FromDate",f)}else{if(f>=avhForm.MaxDate){f.setDate(avhForm.MaxDate.getDate()-1);setDate("FromDate",f)}}if(k<=avhForm.MinDate){k.setDate(avhForm.MinDate.getDate()+1);setDate("ToDate",k)}else{if(k>avhForm.MaxDate){k=avhForm.MaxDate;setDate("ToDate",k)}}if(f>=k){var g=f.add("d",1);if(!$("#ToDate_Day").containsOption(g.getDate().toString())){loadDates("ToDate",g.getDate(),g.getDate(),g.getDate())}setDate("ToDate",g);this.MonthYearChanged(document.getElementById(getId("ToDate_MonthYear")))}};this.MonthYearChanged=function(g){var h=g.name.replace(getId(""),"").split("_")[0],j=getNoOfDaysMinMax(h,g.options[g.selectedIndex].text),l=$(getIdJQ(h+"_Day")+" option:selected").val();var f=j[0],k=j[1];if($(getIdJQ(h+"_Day")+" option:first").val()!=f||$(getIdJQ(h+"_Day")+" option:last").val()!=k){loadDates(h,f,k,l)}updateDatePicker(h)};this.DayChanged=function(f){var g=f.name.replace(getId(""),"").split("_")[0];updateDatePicker(g)};this.OccupancyChanged=function(g){if(!g){g=this.GetOccupancy()}for(i=a;i<=this.MaxOccupancy;i++){var f=$("#trAge"+i+", #trAge"+i+"_Mini");if(g>=i){f.show()}else{f.hide()}if($("form.xform").length==0){if(i<=g){$(getIdJQ("GuestAgeList["+(i-a)+"]")).addClass("required")}else{$(getIdJQ("GuestAgeList["+(i-a)+"]")).removeClass("required")}}}this.ValidateGuestAges()};this.GuestAgeChanged=function(f){this.ValidateGuestAge(f)};this.ValidateGuestAges=function(){var f=this.GetOccupancy();for(i=a;i<=this.MaxOccupancy;i++){this.ValidateGuestAge(i)}};this.ValidateGuestAge=function(g){var f=true,h=this.GetOccupancy();$("#trAge"+g+" select:first, #trAge"+g+"_Mini select:first").each(function(){var k=$(this),j=k.parent().children(".form-error-msg");k.removeClass("invalid");j.hide();if((k.val()==""||k.val()=="-1")&&g<=h){k.addClass("invalid");j.show();f=false}});return f};this.BeforeSubmit=function(){var f=$("form *.invalid").length==0;return f};getIdJQ=function(f){return"#"+getId(f)};getId=function(f){var g=(f.indexOf("MonthYear")>=0||f.indexOf("Day")>=0)?"":((avhForm?avhForm.IdPrefix:e)+"_");return g+f};loadDates=function(f,g,j,h){$(getIdJQ(f+"_Day")).removeOption(/./);for(i=g;i<=j;i++){$(getIdJQ(f+"_Day")).addOption(i,(i<10?"0":"")+i)}if(h){$(getIdJQ(f+"_Day")).selectOptions(h,true)}};getNoOfDaysMinMax=function(h,k){var j=(k.split(d)[0]),g=(k.split(d)[1]),l=j<8?(j%2==0?(j==2?(g%4==0?29:28):30):31):(j%2==0?31:30),f=1,m=l;if(avhForm.MinDate.getMonth()+1==j&&avhForm.MinDate.getFullYear()==g){f=avhForm.MinDate.getDate()+(h=="ToDate"?1:0)}if(avhForm.MaxDate.getMonth()+1==j&&avhForm.MaxDate.getFullYear()==g){m=avhForm.MinDate.getDate()+(h=="FromDate"?-1:0)}return new Array(f,m)};setDate=function(g,j){$(getIdJQ(g+"_Day")).val(j.getDate());var h=j.getMonth()+1,f=(h<10?"0":"")+h+d+j.getFullYear();var k=(document.getElementById(getId(g+"_MonthYear")));for(i=0;i<k.options.length;i++){if(k.options[i].text==f){k.selectedIndex=i;break}}return k};updateDatePicker=function(f){$(getIdJQ(f)).val($.datepicker.formatDate(datePicker_DateFormat,avhForm.GetDateFromSelects(f)))};this.OccupancyChanged()}var regExp_CountryCity=/http(.?):\/\/(.+)\/(.+)\/(.*)\/?(.*)?\/?(.*)?\/?/;$().ready(function(){if(typeof(mapCity)!="undefined"){mapCity.map.jmap("init",{language:engine.LanguageCode,mapCenter:mapCity.center,mapZoom:10,mapControl:"none",mapEnableDragging:false,mapEnableInfoWindows:false,mapShowjMapsIcon:false})}if(typeof(cityOnChangeSelector)!="undefined"){$(cityOnChangeSelector).change(function(){var latitude,longitude,cityID,cityName,countryName;if(isNaN(this.value)){var p=eval("("+this.value+")");cityID=p.CityID;cityName=p.Name;countryName=p.CountryName;latitude=p.Latitude;longitude=p.Longitude}else{cityID=this.value;var e=geo_GetCityInfo(cityID,"en");if(e<0){return}cityName=e.Name;countryName=e.CountryName;latitude=e.Latitude;longitude=e.Longitude}$("#Weather_CityID, #BestRates_CityID").selectOptions(new RegExp('"CityID":'+cityID),true);$("#SelectedCity_CityID").selectOptions(cityID.toString(),true);$("#Weather_CityID, #BestRates_CityID, #SelectedCity_CityID, img.ajax-loading").toggle();engine.WeatherLoad(longitude,latitude);if($("#containerBestRates").length>0){$.get("/"+engine.LanguageCode+"/WebService.mvc/bestrates",{cityID:cityID},function(data){$("#containerBestRates").html(data);engine.ToolTipsInit($("#containerBestRates"));$("#BestRates_CityID").show();$("img.ajax-loading").hide();engine.VideoPlayerInit()})}var geoLink="/"+countryName.toLowerCase()+"/"+cityName.toLowerCase();$("#weatherTitle").text(cityName);$("#mapCityLink").attr("href","/"+engine.LanguageCode+"/hotels.mvc"+geoLink+"?map=on");if(typeof(mapCity)!="undefined"&&mapCity.map.length>0){Mapifies.MoveTo(mapCity.map,{mapCenter:[latitude,longitude]})}$("#menu-lang a").each(function(){this.href="/"+this.id.split("_")[1]+"/home.mvc"+geoLink})})}});var mapHotelList={map:null,savedMarkerIndex:null,savedHotelId:null,arMarkers:new Array(),timerID:null};var MyMaps_CurrencyTop=null;function mapHotelList_Show(){if($("#containerHotelListMap").css("display")=="none"){mapHotelList_Toggle()}}function mapHotelList_Toggle(){$("#containerHotelListMap, #hotels table.hotel .map-anchor").toggle();var b=$("#containerHotelListMap").css("display")!="none";if(!isDef(mapHotelList.map)){mapHotelList_Create()}if(typeof(mapCity)!="undefined"){Mapifies.MoveTo(mapHotelList.map,{mapCenter:mapCity.center})}if(MyMaps_CurrencyTop==null){var a=new RegExp("\\d+").exec(text=$("select.currency").css("top"));MyMaps_CurrencyTop=parseInt((a==null?0:a[0]))}$("select.currency").css("top",(b?$("#containerHotelListMap").height():0)+MyMaps_CurrencyTop+"px");$("input[id$='_IsHotelsMapVisible']").val(b);if(!b&&isDef(mapHotelList.savedHotelId)){mapHotelList_SelectHotel(mapHotelList.savedHotelId,mapHotelList.savedMarkerIndex,false,false)}}function mapHotelList_Destroy(){mapHotelList.map=null}function mapHotelList_Create(){mapHotelList.map=$("#mapHotelList");if(mapHotelList.map.length<1||typeof(mapCity)=="undefined"||typeof(arHotelIDs)=="undefined"){return}mapHotelList.map.jmap("init",{language:engine.LanguageCode,mapCenter:mapCity.center,mapZoom:11,mapControl:"large",mapEnableType:true,mapEnableDragging:true,mapEnableInfoWindows:true,mapEnableScaleControl:true,mapShowjMapsIcon:false});$("table.hotel").each(function(b){var a=$(this).metadata();mapHotelList.map.jmap("AddMarker",{pointIcon:MapHelper.GetHotelMarkerIcon(b,false),pointLatLng:[a.lat,a.lng],importance:0},function(c,d){mapHotelList.arMarkers[a.id]=c;GEvent.addListener(c,"click",function(){mapHotelList_SelectHotel(a.id,b,true,false)})})})}function importanceOrder(a,c){return GOverlay.getZIndex(a.getPoint().lat())+a.importance*1000000}function mapHotelList_SelectHotel(f,g,b,a){if(isDef(mapHotelList.savedHotelId)){var d=mapHotelList.savedHotelId;mapHotelList.savedHotelId=null;mapHotelList_SelectHotel(d,mapHotelList.savedMarkerIndex,false,false);if(f==d){return}b=true}var e=mapHotelList.arMarkers[f];var c=e.getLatLng();Mapifies.RemoveMarker(mapHotelList.map,e);mapHotelList.map.jmap("AddMarker",{pointIcon:MapHelper.GetHotelMarkerIcon(g,b),pointLatLng:[c.lat(),c.lng()],importance:b?100:0,zIndexProcess:function(h,j){return h.importance}},function(h,j){mapHotelList.arMarkers[f]=h;GEvent.addListener(h,"click",function(){mapHotelList_SelectHotel(f,g,!b,false)})});if(a){Mapifies.MoveTo(mapHotelList.map,{mapCenter:[c.lat(),c.lng()]})}$("ul.hotel-minies li."+(b?mapHotelList.savedHotelId:f)).removeClass("active");if(b){if($("ul.hotel-minies li").length>1){$("#hotel_"+f).hide().insertAfter("#firstHotelContainer").addClass("active").fadeIn("slow")}if(mapHotelList.timerID!=null){clearTimeout(mapHotelList.timerID)}mapHotelList.timerID=setTimeout("$('#hotel_"+f+"').removeClass('active')",3000);$("ul.hotel-minies li."+f).addClass("active")}else{$("#hotel_"+f).removeClass("active")}mapHotelList.savedHotelId=(b?f:null);mapHotelList.savedMarkerIndex=(b?g:null)};