if(!window.com){com={}}if(!com.csg){com.csg={}}if(!com.csg.forms){com.csg.forms={}}$(document).ready(function(){com.csg.Page.addBrowserFixStyleSheet("forms")});com.csg.forms.FormValidator=com.csg.Class.extend({rootNode:null,inputs_:null,msgError_:null,msgWarn_:null,msgInfo_:null,msgConf_:null,errTitle_:null,messageBox_:null,initialize:function(A){var B=this;B.rootNode=$(A);B.errTitle_=B.rootNode.find("span.error-title:first");if(B.errTitle_.length){B.errTitle_=B.errTitle_.text()}else{B.errTitle_=null}B.messageBox_=$("body:first").find("div.fm-msg:first");if(!B.messageBox_.length){B.messageBox_=null}if(B.messageBox_!=null){B.msgError_=B.messageBox_.find("div.fm-error");if(!B.msgError_.length){B.msgError_=null}B.msgWarn_=B.messageBox_.find("div.fm-warning");B.msgInfo_=B.messageBox_.find("div.fm-information");B.msgConf_=B.messageBox_.find("div.fm-confirmation")}B.inputs_=new Array();B.rootNode.find("input[type!='submit'], textarea, select").each(function(){if($(this).hasClass("fm-btn")){return }var C=new Array();var D=B.rootNode.find("span[rel="+$(this).attr("id")+"]:first");if(D.length<1){D=B.rootNode.find("label[for="+$(this).attr("id")+"]:first")}var E=null;if(D!=null){E=D.next("span.error-message")}C.push(this);C.push(D);C.push(E);C.push(B.findCorrespondingTitle(this));B.inputs_.push(C)});B.rootNode.find("input[type=submit]").eq(0).click(function(){B.rootNode.validate({onfocusout:false,onkeyup:false,onclick:false,focusInvalid:false,focusCleanup:false,wrapper:"li",errorElement:"span",errorClass:"error",errorLabelContainer:"div.fm-msg > div.fm-error",showErrors:function(F,G){B.clearErrors();if(this.numberOfInvalids()>0){var C="";var E;for(E in G){var H=null;var D=B.findInputIndex(G[E].element);if(D>=0){H=B.inputs_[D][2].text()}if(H==null){H=G[E].message}C=C+(C.length>0?"\n":"")+H;B.markError(D)}alert((B.errTitle_!=null?B.errTitle_+"\n\n":"")+C);if(B.messageBox_==null){B.rootNode.prepend('<div class="fm-msg"></div>');B.messageBox_=B.rootNode.find("div.fm-msg:first")}if(B.msgError_==null){B.messageBox_.append('<div class="fm-error"></div>');B.msgError_=B.messageBox_.find("div.fm-error:first")}B.msgError_.find("ul").remove();B.msgError_.find("p").remove();if(B.msgWarn_!=null){B.msgWarn_.hide()}if(B.msgInfo_!=null){B.msgInfo_.hide()}if(B.msgConf_!=null){B.msgConf_.hide()}if(this.numberOfInvalids()==1){var H=null;var D=B.findInputIndex(G[0].element);if(D>=0){H=B.inputs_[D][2].text()}if(H==null){H=G[0].message}if(!B.msgError_.find("h2.chapter-title").length&&B.errTitle_!=null){B.msgError_.append('<h2 class="chapter-title no-line">'+B.errTitle_+"</h2>")}B.msgError_.append('<p><a href="#'+D+'">'+H+"</a></p>");if((D=B.findInputIndex(G[0].element))>=0){B.markError(D)}}else{if(this.numberOfInvalids()>1){if(!B.msgError_.find("h2.chapter-title").length&&B.errTitle_!=null){B.msgError_.append('<h2 class="chapter-title no-line">'+B.errTitle_+"</h2>")}B.msgError_.append('<ul class="bulleted-list"></ul>');var E;for(E in G){var H=null;var D=B.findInputIndex(G[E].element);if(D>=0){H=B.inputs_[D][2].text();B.markError(D)}if(H==null){H=G[E].message}B.msgError_.find("ul").append('<li><a href="#'+D+'">'+H+"</a></li>")}B.msgError_.find("li").each(function(){$(this).click(function(){B.handleErrorClick.apply(B,[$(this).find("a").attr("href")])})})}}$(window).scrollTop(0)}},success:function(){},submitHandler:function(C){C.submit()}})})},handleErrorClick:function(B){var A=this;B=parseInt(B.split("#")[1]);A.inputs_[B][0].focus()},findInputIndex:function(C){var B=this,A=B.inputs_.length-1;for(;A>=0;A--){if(B.inputs_[A][0]===C){return A}}return -1},clearErrors:function(){var A=this;for(key in A.inputs_){if(A.inputs_[key][3]!=null){A.inputs_[key][3].removeClass("error");continue}if(!$(A.inputs_[key][0]).hasClass("error")){continue}$(A.inputs_[key][0]).removeClass("error");$(A.inputs_[key][1]).removeClass("error");$(A.inputs_[key][2]).removeClass("hidden");$(A.inputs_[key][2]).addClass("error-message");$(A.inputs_[key][1]).after($(A.inputs_[key][2]))}},markError:function(B){var A=this;if(B<0){return }if(A.inputs_[B][3]!=null){A.inputs_[B][3].addClass("error");return }$(A.inputs_[B][0]).addClass("error");$(A.inputs_[B][1]).addClass("error");$(A.inputs_[B][2]).addClass("hidden");$(A.inputs_[B][2]).removeClass("error-message");$(A.inputs_[B][1]).append($(A.inputs_[B][2]))},findCorrespondingTitle:function(D){var C=this;var A=$(D).parents("div.fm-grouped-items");if(A.length<1){A=$(D).parents("fieldset.fm-grouped-items")}if(A.length<1){return null}A=$(A.get(0));var B=A.find("legend.fm-grouping-box-title, h2.chapter-title");if(B.length<1){return null}return $(B.get(0))}});com.csg.forms.SVE={LABEL_ERROR:{en:"Error",de:"Fehler",fr:"Erreur",it:"Errore",es:"Error"},HTML_SUMMARY:'<div id="fmsSVESummary" class="fms-msg-error fms-sz-12-20"><h2 class="chapter-title no-line">{$1}</h2><p class="text text15">{$2}</p><ul class="bulleted-list">{$3}</ul></div>',showValidationSummary:function(B){var F=$("html").attr("lang")||"en";var A=B.message.substring(0,B.message.indexOf("\n\n"));var E=B.message.substring(B.message.indexOf("\n\n")+2);var D=this.HTML_SUMMARY.replace(/\{\$1\}/,(this.LABEL_ERROR[F]||this.LABEL_ERROR.en));D=D.replace(/\{\$2\}/,A);D=D.replace(/\{\$3\}/,E.replace(/([^\n]+)\n?/g,"<li>$1</li>"));$("h1.page-title").after(D);if(B.fields&&B.fields.length){for(var C=0;C<B.fields.length;C++){$("label[for = "+B.fields[C].getAttribute("id")+"]").addClass("fms-error")}}},checkForm:function(D,C){$("div#fmsSVESummary").remove();$("label").removeClass("fms-error");try{var B=C();if(B!=null){this.showValidationSummary(B);return false}D.submit()}catch(A){return false}}};com.csg.forms.Form={joinForms:function(){var B=$("form.fms-form-joinable");var A=$("form[id]");A.each(function(){var C=$(this);B.filter("."+this.getAttribute("id")).each(function(){var D=$(this);var E=D.find("input[type=submit]").eq(0);E.click(function(){D.submit();return false});D.removeClass(C.attr("id"));C.find("div.fms-form-buttonbar").append(E);C.parent("div.fms-form").addClass(this.className.replace(/fms-form-joinable/,""))}).end()})}};$(document).ready(com.csg.forms.Form.joinForms);$(document).ready(function(){$("div.fm-form form:not(.no-js)").each(function(){new com.csg.forms.FormValidator(this)})});jQuery.validator.addMethod("alphanumeric",function(B,A){return this.optional(A)||/^\w+$/i.test(B)},"Letters, numbers, spaces or underscores only please");jQuery.validator.addMethod("lettersonly",function(B,A){return this.optional(A)||/^[a-z]+$/i.test(B)},"Letters only please");jQuery.validator.addMethod("phone",function(A,B){A=A.replace(/\s+/g,"");return this.optional(B)||A.length>9&&A.match(/^((\+\d{1,3}(-| )?\(?\d\)?(-| )?\d{1,5})|(\(?\d{2,6}\)?))(-| )?(\d{3,4})(-| )?(\d{4})(( x| ext)\d{1,5}){0,1}$/)},"Please specify a valid phone number");