﻿jQuery.fn.extend({ntr$center:function(){this.css("position","absolute");this.css("top",($(window).height()-this.height())/2+$(window).scrollTop()-40+"px");this.css("left",($(window).width()-this.width())/2+$(window).scrollLeft()+"px");return this;}});
(function($){jQuery.fn.extend({ntr$modal:function(b){var t=$(this);var vp='isVisible';var bg;function setVisible(v){t.data(vp,v);}
function getVisible(){return t.data(vp);}
function show(){var o={opacity:0.6};var d={duration:800};bg.appendTo('body');bg.ntr$scroll();t.css("z-index",bg.css("z-index")+1)
t.show();t.ntr$center();bg.animate(o,d.duration,'swing',function(){});o.opacity=1;t.animate(o,d);setVisible(1);return this;}
function hide(){return hide(500);}
function hide(dur){var o={opacity:0};bg.animate(o,dur,'swing',function(){bg.remove()});t.animate(o,dur,'swing',function(){t.hide();});setVisible(0);return this;}
function toggle(){if(getVisible()==1){hide();}else{show();}
return false;}
function createBackground(){return $('<div id="ntr$modal$bg" style="width:100%;height:100%;background-color:#000000;position:absolute;top:0;left:0;z-index:999998;"></div>');}
function registerButton(){$(b).live('click',toggle);}
bg=createBackground();hide(0);registerButton();$(window).scroll(function(){bg.ntr$scroll();t.ntr$center();});$(window).resize(function(){t.ntr$center();});return this;}});})(jQuery);
jQuery.fn.extend({ntr$scroll:function(){this.css("position","absolute");this.css("top",($(window).scrollTop()+"px"));this.css("left",($(window).scrollLeft()+"px"));return this;}});
(function($){var c='ntr-validate';var cm=c+'-msg';jQuery.fn.extend({ntr$addValidate:function(m,a,b){function inn(s){return(s&&s!==''&&s!=='undefined'&&s.length>0)}
$(this).addClass(c);if(!inn(m)){m='--&gt; '+this.toString();}
$(this).data(cm,m);if(a){if(typeof a==='function'){$(this).data(c,a);}else{if(a==='regex'){$(this).data(c,function(s){return s.match(b);});}else{$(this).data(c,inn);}}}else{$(this).data(c,inn);}},ntr$removeValidate:function(){$(this).removeClass(c).data(c,'');},ntr$validate:function(ec,mc){var a=$(this).find('.'+c);var r=true;if(mc){$(mc).text('');}
var i;for(i=0;i<a.length;i++){var d=$(a[i]);var b=d.data(c);var v=false;if(b){if(!b(d.val())){v=true;}}else{v=true;}
if(v){var em=d.data(cm);if(!em){em=d.text();}
if(mc){$(mc).append('<li>'+em+'</li>');}
if(ec){d.addClass(ec);}
r=false;}else if(ec){d.removeClass(ec);}}
return r;}});})(jQuery);