(function(b){var a="tmp_"+(new Date).getTime(),c=0,d={lang:"en",maxLabelLength:35,errorAction:"focus",focusElmClass:"stream",submittedClass:"issubmitted",validateEachField:"",errorMsgType:"inlineonly",inlineErrorClass:"errmsg",nextErrorLinkClass:"nexterror",customReqCheck:{},reqClassPattern:"req",reqErrorClass:"reqerror",typeErrorClass:"typeerror",defangReset:!0,defangEnter:"auto",emulateTab:!1,maxLengthTab:!1};b.extend({av:{lang:{en:{bullet:" \u2022 ",errorReqMsg:"Please fill out these fields:\n\n",
errorTypeMsg:"These fields contain invalid input:\n\n",inlineMsgPrefix:"Error:",inlineReqMsg:"This field is required ",inlineTypeMsg:"This field contains an invalid value ",inlineNextError:"Next error",resetAlert:"Note: You are about to reset all values in the form..."}},id:function(i){var i=b(i),g=i.attr("id");return g?g:i.attr("id",a+"_"+c++).attr("id")},cleanLabelString:function(b,a){if(!b)return"";a=a||35;b=b.replace(/\s\s+/g," ").replace(/ - /g,", ").replace(/\[/g,"(").replace(/\]/g,")").replace(/\([^)]+\)/g,
"").replace(/[\s*:#]+$/,"").replace(/^[\s*#]+/,"");b.length>a+2&&(b=b.substr(0,a-2).replace(/[.,:;\s]+$/,"")+"...");return b},getLabel:function(a,g,d){var k=a.find(":input:first"),f=k.data("av-labeltext");if(!f){var f=b.av.cleanLabelString(k.attr("title"),d.maxLabelLength),c=k.attr("id");!f&&c&&(f=k.parents("form").find("label[for="+c+"]").text()||k.parent("label").text()||a.find("label").eq(0).text(),f=b.av.cleanLabelString(f,d.maxLabelLength));a.is("fieldset:has(input[name="+k.attr("name")+"]:eq(1))")&&
(f=(c=a.find(":header, legend, p").eq(0).text())?b.av.cleanLabelString(c,d.maxLabelLength):f);f||(f=k.attr("name"));a=g.find("fieldset:has(#"+b.av.id(a)+"):last").children(":header:first-child, legend:first-child, p:first-child");a.length&&(f=f+" ["+b.av.cleanLabelString(a.text(),d.maxLabelLength)+"]");b(k).data("av-labeltext",f)}return f},getText:function(a,g){return b.av.getError(a,g)||b.av.getError(a,"en")||""},getError:function(a,g){return b.av.lang[g]&&b.av.lang[g][a]||""},config:function(a,
g){var c=b(a),c=b(c.filter("form")[0]||c.parents("form")[0]||c.find("form")[0]);g?c.data("av-config",g):(g=c.data("av-config"),g||(g=b.extend({},d),c.data("av-config",g)));return g},addInlineLabels:function(a){var g=b.av.config(a[0]);b.each(a,function(d){var c=b(this),f=c.attr("lang")||c.parents("[lang]").attr("lang");c.attr("lang",f);var e=b.av.getText("inlineReqMsg",f);c.is("."+g.typeErrorClass)&&(e=c.data("av-error")||b.av.getText("inlineTypeMsg",f));c.prepend('<strong class="'+g.inlineErrorClass+
'">'+e+"</strong>");d<a.length-1&&c.append('<a href="#'+b.av.id(a[d+1])+'" class="'+g.nextErrorLinkClass+'">'+b.av.getText("inlineNextError",f)+"</a>")})},alertErrors:function(a,g){var c=b.av.config(a[0]),d=b(a[0]).attr("lang")||b(a[0]).parents("[lang]").attr("lang");b(a[0]).attr("lang",d);var f=[],e=[],l="";b.each(a,function(){var a=b(this),a=b.av.getLabel(a,g,c);b(this).is("."+c.typeErrorClass)?e.push(a):f.push(a)});var h=b.av.getText("bullet",d);f.length&&(l+=b.av.getText("errorReqMsg",d)+h+f.join("\n"+
h));e.length&&(l+="\n\n",l+=b.av.getText("errorTypeMsg",d)+h+e.join("\n"+h));alert(b.trim(l))},focusNext:function(a){for(var c=b(":input").get(),c=c.sort(function(a,b){var c=a.tabIndex>0?a.tabIndex:99999,d=b.tabIndex>0?b.tabIndex:99999;return(c<d)*-1+(c>d)*1}),a=b.inArray(a,c);c[++a]&&c[a].tabIndex==-1;);var d=b(c[a]||c[0]);setTimeout(function(){d.trigger("focus")},1);return d}}});var e=function(a){return!!a},h=function(){var a=b(this);return a.parents("form").find("[name="+a.attr("name")+"]").is(":checked")};
b.extend(b.av,{type:{fi_btn:function(){return!0},fi_txt:e,fi_sel:e,fi_bdy:e,fi_file:e,fi_chk:h,fi_rdo:h}});b.fn.extend({defangReset:function(){return this.bind("click",function(){var a=b(this),c=a.attr("lang")||a.parents("[lang]").attr("lang")||"en";a.attr("lang",c);return confirm(b.av.getText("resetAlert",c))?(a.attr("type")!=="reset"&&(a=a.parents("form").get(0))&&a.trigger("reset"),!0):!1})},defangEnter:function(){return this.bind("keydown",function(a){var b=a.target;return a.keyCode!=13||b.tagName!=
"INPUT"||/^(button|reset|submit)$/i.test(b.type)})},autoValidate:function(a){return this.each(function(){var c=b(this),c=b(c.filter("form")[0]||c.parents("form")[0]||c.find("form")[0]);if(!c.length)return!1;var e=b.extend({},d,a);b.av.config(this,e);e.defangReset&&c.find(":reset").defangReset(e);(!e.emulateTab&&e.defangEnter===!0||e.defangEnter==="true"||e.defangEnter==="auto"&&b(":submit",c).length>1)&&c.defangEnter();e.emulateTab&&c.bind("keydown",function(a){if(a.keyCode==13&&b(a.target).is(":input:not(:button):not(:reset):not(:submit):not(textarea)"))return b.av.focusNext(a.target),
!1});e.maxLengthTab&&c.bind("keyup",function(a){var c=b(a.target),d=a.which;d>0&&d!=8&&d!=9&&d!=13&&d!=16&&d!=17&&c.attr("maxlength")==c.val().length&&b.av.focusNext(a.target)});/blur|change/.test(e.validateEachField);c.bind("submit",function(a){var c=b(this),d=b.av.config(this),e=c.isValid();e?c.addClass(d.submittedClass):a.preventDefault();return e})})},isValid:function(a){var a=!!(a||a==null),c=[],d="",e=!1;this.each(function(){var f=b(this),h=[];conf=b.av.config(this);e=e||/both|alertonly/.test(conf.errorMsgType);
d=d||"strong."+conf.inlineErrorClass+", a."+conf.nextErrorLinkClass;f.find(d).remove();(!f.is(":input")?f.find(":input"):f).each(function(){var a=b(this);a.removeData("av-malformed");var c=this.type=="checkbox"?{fi_chk:b.av.type.fi_chk}:{fi_txt:b.av.type.fi_txt},d=a.parents('[class^="fi_"], [class*=" fi_"]').eq(0),e=d.attr("lang")||d.parents("[lang]").attr("lang"),f=d.hasClass(conf.reqClassPattern)||a.hasClass(conf.reqClassPattern),g=b.trim(a.val());d.removeClass(conf.reqErrorClass);d.removeClass(conf.typeErrorClass);
if(d.length!==0)for(var j,i=b.trim(d.attr("class")).split(" ");j=i.pop();)/^fi_/.test(j)&&b.isFunction(b.av.type[j])&&(c[j]=b.av.type[j]);a=a.attr("name");(j=conf.customReqCheck&&conf.customReqCheck[a])&&b.isFunction(j)?f=j.call(this,g,d.get(0)||this,e):j&&typeof j==="string"&&(j=/^(!)?(.*)$/.exec(j),i=b(":input[name="+j[2]+"]",this.form),i.length&&("checkbox"==i.attr("type")||"radio"==i.attr("type"))?f=!j[1]^!i.is(":checked"):i.length&&(f=!j[1]^i.val()==""));conf.customTypeCheck&&b.isFunction(conf.customTypeCheck[a])&&
(c[a]=conf.customTypeCheck[a]);for(var k in c)d.attr("lang",e),a=c[k].call(this,g,d.get(0)||this,e),a!==!0&&(typeof a==="string"?(h.push(d.get(0)),d.data("av-error",a),d.removeClass(conf.reqErrorClass),d.addClass(conf.typeErrorClass)):f&&(h.push(d.get(0)),d.addClass(conf.reqErrorClass)))});a&&/both|inlineonly/.test(conf.errorMsgType)&&b.av.addInlineLabels(b.unique(h));c=c.concat(h)});a&&e&&c.length&&b.av.alertErrors(b.unique(c),this);return!c.length}})})(jQuery);
jQuery.av.lang.is={bullet:" \u2022 ",errorReqMsg:"\u00dea\u00f0 \u00fearf a\u00f0 fylla \u00fat \u00feessa li\u00f0i:\n\n",errorTypeMsg:"\u00deessir li\u00f0ir eru rangt \u00fatfylltir:\n\n",inlineMsgPrefix:"Villa:",inlineReqMsg:"\u00dea\u00f0 \u00fearf a\u00f0 fylla \u00fat \u00feennan li\u00f0 ",inlineTypeMsg:"\u00deessi li\u00f0ur er rangt \u00fat fylltur ",inlineNextError:"N\u00e6sta villa",resetAlert:"Ath: \u00de\u00fa ert \u00ed \u00feann mund a\u00f0 afturkalla \u00f6ll innslegin gildi...",
fi_email:"Vinsamlega sl\u00e1\u00f0u inn r\u00e9tt netfang",fi_url:"Vinsamlega sl\u00e1\u00f0u inn l\u00f6ggilda vefsl\u00f3\u00f0 (d\u00e6mi: http://www.example.is)",fi_year:"Vinsamlega sl\u00e1\u00f0u inn r\u00e9tt \u00e1rtal (d\u00e6mi: 1998)",fi_ccnum_noamex:"American Express kort virka ekki"};
(function(b){b.extend(b.av.lang.en,{fi_email:"Please provide a valid e-mail address (example: user@example.com)",fi_url:"Please provide a valid web address (example: http://www.example.is)",fi_year:"Please provide a valid four digit year (example: 1998)",fi_ccnum_noamex:"American Express cards not accepted"});b.extend(b.av.type,{fi_kt:function(a,c,d){c=b.av.getError("fi_kt",d);if(a){d=a.replace(/[\s\-]/g,"");b(this).val(d);var e=/010130[- ]?(2(12|20|39|47|55|63|71|98)|3(01|36)|4(33|92)|506|778)9/.test(d);
if(!/^\d{9}[90]$/.test(d)||e)return c;for(var e=[3,2,7,6,5,4,3,2,1],h=0,i=9;i--;)h+=e[i]*d.charAt(i);if(h%11)return c}return!!a},fi_email:function(a,c,d){return a&&!/^[a-z0-9-._+]+@([a-z0-9-_]+\.)+[a-z0-9-_]{2,99}$/i.test(a)?b.av.getError("fi_email",d):!!a},fi_url:function(a,c,d){return a?(c=a.replace(/^[a-z]+:\/\/.+$/i,""),!/^[a-z]+:\/\/.+\..+$/.test(a)||/[\(\)\<\>\,\:\"\[\]\\]/.test(c)?b.av.getError("fi_url",d):!0):!1},fi_tel:function(a){return a?!a.replace(/(\s|[-+]|\d)/g,"")||"":!1},fi_postal_is:function(a,
c,d){if(a){if(c=b.av.postCodes&&b.av.postCodes.is){if(c[a])return this.nodeType&&(d=b(this).siblings("span.unit"),d.length||(d=b('<span class="unit"></span>'),b(this).after(d)),d.html(c[a])),!0}else return/^\d\d\d$/.test(a)||b.av.getError("fi_pnr",d);return b.av.getError("fi_pnr",d)}return!1},fi_pnrs:function(a,c,d){if(a){for(var c=a.replace(/(^[ ,;]+|[ ,;]+$)/g,"").split(/[ ,;]+/),e=0;e<c.length;e++)if(a=b.av.type.fi_postal_is(c[e],null,d),a!==!0)return a;return!0}return!1},fi_qty:function(a){b(this).val(a);
return!a||/^\d+$/.test(a)||""},fi_num:function(a){a=a.replace(/^-\s+/,"-").replace(/[,.]$/,"");b(this).val(a);return!a||/\d/.test(a)&&/^-?\d*[.,]?\d*$/.test(a)||""},fi_year:function(a,c,d){return a&&!/^(19|20)\d\d$/.test(a)?b.av.getError("fi_year",d):!!a},fi_date:function(a,c,d){if(a){var e=b.av.getError("fi_year",d);if(window.datePicker&&datePicker.VERSION<2){var h=b.av.id(this);if(c=datePicker.fields[h])return(h=datePicker.parseDate(h))?(e=datePicker.printDateValue(h,c.dateFormat,d).replace(/(^\s+|\s+$)/g,
""),c.caseSensitive||(a=a.toLowerCase(),e=e.toLowerCase()),e==a||datePicker.printDateValue(new Date(2E3,4,27),c.dateFormat,d)):e}a=a.replace(/[ .-\/]+/g,".").replace(/\.(\d\d)$/,".20$1");return/^(3[01]|[12]?[0-9]|(0)?[1-9])\.(1[012]|(0)?[1-9])\.(19|20)?\d\d$/.test(a)||e}return!!a},fi_time:function(a,c,d){if(a)if(c=b.av.getError("fi_time",d),/^([01]?\d|2[01234])(:([0-5]\d))?(:([0-5]\d))?\s*([ap]\.?m\.?)?$/i.test(a)){var a=parseInt(RegExp.$1,10),d=parseInt(RegExp.$3||"0",10),e=parseInt(RegExp.$5||"0",
10);(RegExp.$6+"").replace(".","").toLowerCase()=="pm"&&(a+=12);return a*3600+d*60+e*60<=86400||c}else return c;return!!a},fi_ccnum:function(a,c,d){c=b.av.getError("fi_ccnum",d);if(a){a=a.replace(/[ -]/g,"");if(!/^(\d{16}|3[47]\d{13})$/.test(a))return c;b(this).val(a);for(var d=0,e,h=a.length;h-- >0;)d+=a.charAt(h--)*1,e=a.charAt(h)*2,d+=Math.floor(e/10)+e%10;return d%10===0||c}return!!a},fi_ccnum_noamex:function(a,c,d){return a&&a.replace(/[ -]/g,"").length==15?b.av.getError("fi_ccnum_noamex",d):
!!a},fi_ccexp:function(a,c,d){return a?(a=a.replace(/(\d\d)\s*[ -\/]?\s*(\d\d)/,"$1/$2").replace(/\s+/g,""),/^(0\d|1[012])\/(\d\d)$/.test(a)||b.av.getError("fi_ccexp",d)):!!a}})})(jQuery);

