DateInput=function(b){function a(c,d){if(typeof opts!="object")d={};b.extend(this,a.DEFAULT_OPTS,d);d=b('<span class="jFormComponentDateButton">Find Date</span>');this.input=b(c);this.input.after(d);this.button=b(c).parent().find("span.jFormComponentDateButton");this.bindMethodsToObj("show","hide","hideIfClickOutside","keydownHandler","selectDate");this.build();this.selectDate();this.hide()}a.DEFAULT_OPTS={jFormComponentDateSelectorMonthNames:["January","February","March","April","May","June","July",
"August","September","October","November","December"],short_jFormComponentDateSelectorMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],short_day_names:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],start_of_week:0};a.prototype={build:function(){var c=b('<p class="jFormComponentDateSelectorMonthNavigator"><span class="jFormComponentDateSelectorButton jFormComponentDateSelectorPrevious" title="[Page-Up]">&#171;</span> <span class="jFormComponentDateSelectorMonthName"></span> <span class="jFormComponentDateSelectorButton jFormComponentDateSelectorNext" title="[Page-Down]">&#187;</span></p>');
this.monthNameSpan=b(".jFormComponentDateSelectorMonthName",c);b(".jFormComponentDateSelectorPrevious",c).click(this.bindToObj(function(){this.moveMonthBy(-1)}));b(".jFormComponentDateSelectorNext",c).click(this.bindToObj(function(){this.moveMonthBy(1)}));var d=b('<p class="jFormComponentDateSelectorYearNavigator"><span class="jFormComponentDateSelectorButton jFormComponentDateSelectorPrevious" title="[Ctrl+Page-Up]">&#171;</span> <span class="jFormComponentDateSelectorYearName"></span> <span class="jFormComponentDateSelectorButton jFormComponentDateSelectorNext" title="[Ctrl+Page-Down]">&#187;</span></p>');
this.yearNameSpan=b(".jFormComponentDateSelectorYearName",d);b(".jFormComponentDateSelectorPrevious",d).click(this.bindToObj(function(){this.moveMonthBy(-12)}));b(".jFormComponentDateSelectorNext",d).click(this.bindToObj(function(){this.moveMonthBy(12)}));c=b('<div class="jFormComponentDateSelectorNavigator"></div>').append(c,d);var e="<table><thead><tr>";b(this.adjustDays(this.short_day_names)).each(function(){e+="<th>"+this+"</th>"});e+="</tr></thead><tbody></tbody></table>";this.dateSelector=this.rootLayers=
b('<div class="jFormComponentDateSelector"></div>').append(c,e).insertAfter(this.input);if(b.browser.msie&&b.browser.version<7){this.ieframe=b('<iframe class="jFormComponentDateSelectorIEFrame" frameborder="0" src="#"></iframe>').insertBefore(this.dateSelector);this.rootLayers=this.rootLayers.add(this.ieframe);b(".jFormComponentDateSelectorButton",c).mouseover(function(){b(this).addClass("hover")});b(".jFormComponentDateSelectorButton",c).mouseout(function(){b(this).removeClass("hover")})}this.tbody=
b("tbody",this.dateSelector);this.input.change(this.bindToObj(function(){this.selectDate()}));this.selectDate()},selectMonth:function(c){var d=new Date(c.getFullYear(),c.getMonth(),1);if(!this.currentMonth||!(this.currentMonth.getFullYear()==d.getFullYear()&&this.currentMonth.getMonth()==d.getMonth())){this.currentMonth=d;d=this.rangeStart(c);var e=this.rangeEnd(c);e=this.daysBetween(d,e);for(var f="",g=0;g<=e;g++){var i=new Date(d.getFullYear(),d.getMonth(),d.getDate()+g,12,0);if(this.isFirstDayOfWeek(i))f+=
"<tr>";f+=i.getMonth()==c.getMonth()?'<td class="jFormComponentDateSelectorSelectedDay" date="'+this.dateToString(i)+'">'+i.getDate()+"</td>":'<td class="jFormComponentDateSelectorUnselectedMonth" date="'+this.dateToString(i)+'">'+i.getDate()+"</td>";if(this.isLastDayOfWeek(i))f+="</tr>"}this.tbody.empty().append(f);this.monthNameSpan.empty().append(this.monthName(c));this.yearNameSpan.empty().append(this.currentMonth.getFullYear());b(".jFormComponentDateSelectorSelectedDay",this.tbody).click(this.bindToObj(function(h){this.changeInput(b(h.target).attr("date"))}));
b("td[date="+this.dateToString(new Date)+"]",this.tbody).addClass("jFormComponentDateSelectorToday");b("td.jFormComponentDateSelectorSelectedDay",this.tbody).mouseover(function(){b(this).addClass("hover")});b("td.jFormComponentDateSelectorSelectedDay",this.tbody).mouseout(function(){b(this).removeClass("hover")})}b(".jFormComponentDateSelectorSelected",this.tbody).removeClass("jFormComponentDateSelectorSelected");b("td[date="+this.selectedDateString+"]",this.tbody).addClass("jFormComponentDateSelectorSelected")},
selectDate:function(c){if(typeof c=="undefined")c=this.stringToDate(this.input.val());c||(c=new Date);this.selectedDate=c;this.selectedDateString=this.dateToString(this.selectedDate);this.selectMonth(this.selectedDate)},changeInput:function(c){this.input.val(c).change();this.hide()},show:function(){this.rootLayers.css("display","block");this.button.unbind("click",this.show);this.input.unbind("focus",this.show);b(document.body).keydown(this.keydownHandler);b([window,document.body]).click(this.hideIfClickOutside);
this.setPosition()},hide:function(){this.rootLayers.css("display","none");b([window,document.body]).unbind("click",this.hideIfClickOutside);this.button.click(this.show);this.input.focus(this.show);b(document.body).unbind("keydown",this.keydownHandler)},hideIfClickOutside:function(c){c.target!=this.input[0]&&c.target!=this.button[0]&&!this.insideSelector(c)&&this.hide()},insideSelector:function(c){var d=this.dateSelector.offset();d.right=d.left+this.dateSelector.outerWidth();d.bottom=d.top+this.dateSelector.outerHeight();
return c.pageY<d.bottom&&c.pageY>d.top&&c.pageX<d.right&&c.pageX>d.left},keydownHandler:function(c){switch(c.keyCode){case 9:case 27:this.hide();return;case 13:this.changeInput(this.selectedDateString);break;case 33:this.moveDateMonthBy(c.ctrlKey?-12:-1);break;case 34:this.moveDateMonthBy(c.ctrlKey?12:1);break;case 38:this.moveDateBy(-7);break;case 40:this.moveDateBy(7);break;case 37:this.moveDateBy(-1);break;case 39:this.moveDateBy(1);break;default:return}c.preventDefault()},stringToDate:function(c){c=
c.replace(/[^\d]/g,"/");return c.match(/^(\d{1,2})\/(\d{1,2})\/(\d{4,4})$/)?new Date(c):null},dateToString:function(c){function d(e){e=""+e;if(e.length==1)e="0"+e;return e}return d(c.getMonth()+1)+"/"+d(c.getDate())+"/"+c.getFullYear()},setPosition:function(){var c=this.button.position();this.rootLayers.css({top:c.top,left:c.left+this.button.outerWidth()+4});this.ieframe&&this.ieframe.css({width:this.dateSelector.outerWidth(),height:this.dateSelector.outerHeight()});c=c.top+this.dateSelector.outerHeight()+
12;var d="";d=jFormerUtility.isSet(window.scrollY)?window.scrollY:document.documentElement.scrollTop;d+b(window).height()>c||b.scrollTo(c-b(window).height()+"px",250,{axis:"y"})},moveDateBy:function(c){this.selectDate(new Date(this.selectedDate.getFullYear(),this.selectedDate.getMonth(),this.selectedDate.getDate()+c))},moveDateMonthBy:function(c){var d=new Date(this.selectedDate.getFullYear(),this.selectedDate.getMonth()+c,this.selectedDate.getDate());d.getMonth()==this.selectedDate.getMonth()+c+
1&&d.setDate(0);this.selectDate(d)},moveMonthBy:function(c){this.selectMonth(new Date(this.currentMonth.getFullYear(),this.currentMonth.getMonth()+c,this.currentMonth.getDate()))},monthName:function(c){return this.jFormComponentDateSelectorMonthNames[c.getMonth()]},bindToObj:function(c){var d=this;return function(){return c.apply(d,arguments)}},bindMethodsToObj:function(){for(var c=0;c<arguments.length;c++)this[arguments[c]]=this.bindToObj(this[arguments[c]])},indexFor:function(c,d){for(var e=0;e<
c.length;e++)if(d==c[e])return e},monthNum:function(c){return this.indexFor(this.jFormComponentDateSelectorMonthNames,c)},shortMonthNum:function(c){return this.indexFor(this.short_jFormComponentDateSelectorMonthNames,c)},shortDayNum:function(c){return this.indexFor(this.short_day_names,c)},daysBetween:function(c,d){c=Date.UTC(c.getFullYear(),c.getMonth(),c.getDate());d=Date.UTC(d.getFullYear(),d.getMonth(),d.getDate());return(d-c)/864E5},changeDayTo:function(c,d,e){c=e*(Math.abs(d.getDay()-c-e*7)%
7);return new Date(d.getFullYear(),d.getMonth(),d.getDate()+c)},rangeStart:function(c){return this.changeDayTo(this.start_of_week,new Date(c.getFullYear(),c.getMonth()),-1)},rangeEnd:function(c){return this.changeDayTo((this.start_of_week-1)%7,new Date(c.getFullYear(),c.getMonth()+1,0),1)},isFirstDayOfWeek:function(c){return c.getDay()==this.start_of_week},isLastDayOfWeek:function(c){return c.getDay()==(this.start_of_week-1)%7},adjustDays:function(c){for(var d=[],e=0;e<c.length;e++)d[e]=c[(e+this.start_of_week)%
7];return d}};b.fn.date_input=function(c){return this.each(function(){new a(this,c)})};b.date_input={initialize:function(c){b("input.date_input").date_input(c)}};return a}(jQuery);
(function(b){var a=(b.browser.msie?"paste":"input")+".mask",c=window.orientation!=undefined;b.mask={definitions:{"9":"[0-9]",a:"[A-Za-z]","*":"[A-Za-z0-9]"}};b.fn.extend({caret:function(d,e){if(this.length!=0)if(typeof d=="number"){e=typeof e=="number"?e:d;return this.each(function(){if(this.setSelectionRange){this.focus();this.setSelectionRange(d,e)}else if(this.createTextRange){var g=this.createTextRange();g.collapse(true);g.moveEnd("character",e);g.moveStart("character",d);g.select()}})}else{if(this[0].setSelectionRange){d=
this[0].selectionStart;e=this[0].selectionEnd}else if(document.selection&&document.selection.createRange){var f=document.selection.createRange();d=0-f.duplicate().moveStart("character",-100000);e=d+f.text.length}return{begin:d,end:e}}},unmask:function(){return this.trigger("unmask")},mask:function(d,e){if(!d&&this.length>0){var f=b(this[0]),g=f.data("tests");return b.map(f.data("buffer"),function(r,m){return g[m]?r:null}).join("")}e=b.extend({placeholder:"_",completed:null},e);var i=b.mask.definitions;
g=[];var h=d.length,l=null,k=d.length;b.each(d.split(""),function(r,m){if(m=="?"){k--;h=r}else if(i[m]){g.push(new RegExp(i[m]));if(l==null)l=g.length-1}else g.push(null)});return this.each(function(){function r(j){for(;++j<=k&&!g[j];);return j}function m(j){for(;!g[j]&&--j>=0;);for(var n=j;n<k;n++)if(g[n]){x[n]=e.placeholder;var o=r(n);if(o<k&&g[n].test(x[o]))x[n]=x[o];else break}u();p.caret(Math.max(l,j))}function B(j){j=j;for(var n=e.placeholder;j<k;j++)if(g[j]){var o=r(j),v=x[j];x[j]=n;if(o<k&&
g[o].test(v))n=v;else break}}function t(j){var n=b(this).caret(),o=j.keyCode;q=o<16||o>16&&o<32||o>32&&o<41;if(!j.shiftKey){if(o==36){j.preventDefault();b(this).caret(r(0))}if(o==35){j.preventDefault();j=p.val().indexOf(" ");for(n=p.val().length;g[j]==null||p.val().charAt(j)!=" ";){j+=1;if(j==n)break}b(this).caret(j);return false}}if(n.begin-n.end!=0&&(!q||o==8||o==46))y(n.begin,n.end);if(o==8||o==46||c&&o==127){m(n.begin+(o==46?0:-1));return false}else if(o==27){p.val(z);p.caret(0,s());return false}}
function w(j){if(q){q=false;return j.keyCode==8?false:null}j=j||window.event;var n=j.charCode||j.keyCode||j.which,o=b(this).caret();if(j.ctrlKey||j.altKey||j.metaKey)return true;else if(n>=32&&n<=125||n>186){j=r(o.begin-1);if(j<k){n=String.fromCharCode(n);if(g[j].test(n)){B(j);x[j]=n;u();n=r(j);b(this).caret(n);e.completed&&n==k&&e.completed.call(p)}}}return false}function y(j,n){for(j=j;j<n&&j<k;j++)if(g[j])x[j]=e.placeholder}function u(){return p.val(x.join("")).val()}function s(j){for(var n=p.val(),
o=-1,v=0,A=0;v<k;v++)if(g[v]){for(x[v]=e.placeholder;A++<n.length;){var C=n.charAt(A-1);if(g[v].test(C)){x[v]=C;o=v;break}}if(A>n.length)break}else if(x[v]==n[A]&&v!=h){A++;o=v}if(!j&&o+1<h){p.val("");y(0,k)}else if(j||o+1>=h){u();j||p.val(p.val().substring(0,o+1))}return h?v:l}var p=b(this),x=b.map(d.split(""),function(j){if(j!="?")return i[j]?e.placeholder:j}),q=false,z=p.val();p.data("buffer",x).data("tests",g);p.attr("readonly")||p.one("unmask",function(){p.unbind(".mask").removeData("buffer").removeData("tests")}).bind("focus.mask",
function(){z=p.val();var j=s();u();setTimeout(function(){j==d.length?p.caret(0,j):p.caret(j)},0)}).bind("blur.mask",function(){s();p.val()!=z&&p.change()}).bind("keydown.mask",t).bind("keypress.mask",w).bind(a,function(){setTimeout(function(){p.caret(s(true))},0)});s()})}})})(jQuery);
(function(b){function a(d){return typeof d=="object"?d:{top:d,left:d}}var c=b.scrollTo=function(d,e,f){b(window).scrollTo(d,e,f)};c.defaults={axis:"xy",duration:parseFloat(b.fn.jquery)>=1.3?0:1};c.window=function(){return b(window).scrollable()};b.fn.scrollable=function(){return this.map(function(){var d=this;if(!(!d.nodeName||b.inArray(d.nodeName.toLowerCase(),["iframe","#document","html","body"])!=-1))return d;d=(d.contentWindow||d).document||d.ownerDocument||d;return b.browser.safari||d.compatMode==
"BackCompat"?d.body:d.documentElement})};b.fn.scrollTo=function(d,e,f){if(typeof e=="object"){f=e;e=0}if(typeof f=="function")f={onAfter:f};if(d=="max")d=9E9;f=b.extend({},c.defaults,f);e=e||f.speed||f.duration;f.queue=f.queue&&f.axis.length>1;if(f.queue)e/=2;f.offset=a(f.offset);f.over=a(f.over);return this.scrollable().each(function(){function g(t){l.animate(m,e,f.easing,t&&function(){t.call(this,d,f)})}function i(t){var w="scroll"+t;if(!B)return h[w];t="client"+t;var y=h.ownerDocument.documentElement,
u=h.ownerDocument.body;return Math.max(y[w],u[w])-Math.min(y[t],u[t])}var h=this,l=b(h),k=d,r,m={},B=l.is("html,body");switch(typeof k){case "number":case "string":if(/^([+-]=)?\d+(\.\d+)?(px)?$/.test(k)){k=a(k);break}k=b(k,this);case "object":if(k.is||k.style)r=(k=b(k)).offset()}b.each(f.axis.split(""),function(t,w){var y=w=="x"?"Left":"Top",u=y.toLowerCase(),s="scroll"+y,p=h[s];w=w=="x"?"Width":"Height";if(r){m[s]=r[u]+(B?0:p-l.offset()[u]);if(f.margin){m[s]-=parseInt(k.css("margin"+y))||0;m[s]-=
parseInt(k.css("border"+y+"Width"))||0}m[s]+=f.offset[u]||0;if(f.over[u])m[s]+=k[w.toLowerCase()]()*f.over[u]}else m[s]=k[u];if(/^\d+$/.test(m[s]))m[s]=m[s]<=0?0:Math.min(m[s],i(w));if(!t&&f.queue){p!=m[s]&&g(f.onAfterFirst);delete m[s]}});g(f.onAfter)}).end()}})(jQuery);
(function(b){function a(e,f,g){var i=f.hash.slice(1),h=document.getElementById(i)||document.getElementsByName(i)[0];if(h){e&&e.preventDefault();var l=b(g.target);if(!(g.lock&&l.is(":animated")||g.onBefore&&g.onBefore.call(g,e,h,l)===false)){g.stop&&l.stop(true);if(g.hash){e=h.id==i?"id":"name";var k=b("<a> </a>").attr(e,i).css({position:"absolute",top:b(window).scrollTop(),left:b(window).scrollLeft()});h[e]="";b("body").prepend(k);location=f.hash;k.remove();h[e]=i}l.scrollTo(h,g).trigger("notify.serialScroll",
[h])}}}var c=location.href.replace(/#.*/,""),d=b.localScroll=function(e){b("body").localScroll(e)};d.defaults={duration:1E3,axis:"y",event:"click",stop:true,target:window,reset:true};d.hash=function(e){if(location.hash){e=b.extend({},d.defaults,e);e.hash=false;if(e.reset){var f=e.duration;delete e.duration;b(e.target).scrollTo(0,e);e.duration=f}a(0,location,e)}};b.fn.localScroll=function(e){function f(){return!!this.href&&!!this.hash&&this.href.replace(this.hash,"")==c&&(!e.filter||b(this).is(e.filter))}
e=b.extend({},d.defaults,e);return e.lazy?this.bind(e.event,function(g){var i=b([g.target,g.target.parentNode]).filter(f)[0];i&&a(g,i,e)}):this.find("a,area").filter(f).bind(e.event,function(g){a(g,this,e)}).end().end()}})(jQuery);
(function(b){var a=".serialScroll",c=b.serialScroll=function(d){b.scrollTo.window().serialScroll(d)};c.defaults={duration:1E3,axis:"x",event:"click",start:0,step:1,lock:1,cycle:1,constant:1};b.fn.serialScroll=function(d){d=b.extend({},c.defaults,d);var e=d.event,f=d.step,g=d.lazy;return this.each(function(){function i(q){q.data+=u;h(q,this)}function h(q,z){if(!isNaN(z)){q.data=z;z=w}var j=q.data,n=q.type,o=d.exclude?r().slice(0,-d.exclude):r(),v=o.length,A=o[j],C=d.duration;n&&q.preventDefault();
if(s){k();x=setTimeout(l,d.interval)}if(!A){j=j<0?0:(j=v-1);if(u!=j)j=j;else if(d.cycle)j=v-j-1;else return;A=o[j]}if(!(!A||n&&u==j||d.lock&&t.is(":animated")||n&&d.onBefore&&d.onBefore.call(z,q,A,t,r(),j)===false)){d.stop&&t.queue("fx",[]).stop();if(d.constant)C=Math.abs(C/f*(u-j));t.scrollTo(A,C,d).trigger("notify"+a,[j])}}function l(){t.trigger("next"+a)}function k(){clearTimeout(x)}function r(){return b(y,w)}function m(q){if(!isNaN(q))return q;for(var z=r(),j;(j=z.index(q))==-1&&q!=w;)q=q.parentNode;
return j}var B=d.target?this:document,t=b(d.target||this,B),w=t[0],y=d.items,u=d.start,s=d.interval,p=d.navigation,x;g||(y=r());d.force&&h({},u);b(d.prev||[],B).bind(e,-f,i);b(d.next||[],B).bind(e,f,i);w.ssbound||t.bind("prev"+a,-f,i).bind("next"+a,f,i).bind("goto"+a,h);s&&t.bind("start"+a,function(){if(!s){k();s=1;l()}}).bind("stop"+a,function(){k();s=0});t.bind("notify"+a,function(q,z){q=m(z);if(q>-1)u=q});w.ssbound=1;if(d.jump)(g?t:r()).bind(e,function(q){h(q,m(q.target))});if(p)p=b(p,B).bind(e,
function(q){q.data=Math.round(r().length/p.length)*p.index(this);h(q,this)})})}})(jQuery);
(function(){function b(a,c){var d=this;a=jQuery(a);var e=['<span class="tipArrow"></span><div class="tipContent">',c.content.html(),"</div>"].join(""),f=jQuery(c.content).addClass(c.baseClass).addClass(c.fixed?c.fixedClass:"").addClass(c.persistent?c.persistentClass:"").html(e);jQuery(window).resize(function(){f.is(":visible")&&d.updatePos()});c.hidden?f.hide():f.show();if(c.persistent){a.click(function(){a.get(0)});jQuery(window).mousedown(function(g){f.css("display")!=="none"&&c.focus&&jQuery(g.target).parents(".tooltip").andSelf().filter(function(){return this===
f.get(0)})})}else{a.hover(function(g){d.show(g)},function(){d.hide()});c.fixed||a.mousemove(function(g){f.css("display")!=="none"&&d.updatePos(g)})}jQuery.extend(d,{getVersion:function(){return[1,2,0]},getParent:function(){return a},getTooltip:function(){return f},getPos:function(){return f.position()},setPos:function(g,i){var h=a.position();if(typeof g=="string")g=parseInt(g)+h.left;if(typeof i=="string")i=parseInt(i)+h.top;f.css({left:g,top:i});return d},show:function(g){if(c.onBeforeShow()===false)return false;
d.updatePos(c.fixed?null:g);switch(c.showEffect){case "fade":f.fadeIn(c.showTime);break;case "slide":f.slideDown(c.showTime,d.updatePos);break;case "custom":c.showCustom.call(f,c.showTime);break;default:case "none":f.show();break}f.addClass(c.activeClass);c.onShow.call(d);jQuery(document).trigger("blurTip",[f,"show"]);return d},hide:function(){c.onBeforeHide.call(d);switch(c.hideEffect){case "fade":f.fadeOut(c.hideTime);break;case "slide":f.slideUp(c.hideTime);break;case "custom":c.hideCustom.call(f,
c.hideTime);break;default:case "none":f.hide();break}f.removeClass(c.activeClass);c.onHide.call(d);jQuery(document).trigger("blurTip",[f,"hide"]);return d},update:function(){return d},load:function(g,i){c.beforeContentLoad.call(d);f.load(g,i,function(){c.onContentLoad.call(d)});return d},boundryCheck:function(g,i){g=g+f.outerWidth();i=i+f.outerHeight();var h=jQuery(window).width()+jQuery(window).scrollLeft(),l=jQuery(window).height()+jQuery(window).scrollTop();return[g>=h,i>=l]},updatePos:function(g){var i=
f.outerWidth(),h=f.outerHeight();if(!g&&c.fixed)if(c.position.constructor==Array){m=parseInt(c.position[0]);g=parseInt(c.position[1])}else if(jQuery(c.position).attr("nodeType")===1){g=jQuery(c.position).position();m=g.left;g=g.top}else{var l=a.position(),k=a.outerWidth(),r=a.outerHeight(),m="";g="";switch(c.position){case "top":m=l.left-i/2+k/2;g=l.top-h;break;case "bottom":m=l.left-i/2+k/2;g=l.top+r;break;case "left":m=l.left-i;g=l.top-h/2+r/2;break;case "right":m=l.left+k;g=l.top-h/2+r/2;break;
case "topRight":m=l.left+k;g=l.top;break;default:case "default":m=k/2+l.left+20;g=l.top;break}}else{m=g.pageX;g=g.pageY}if(typeof c.position!="object"){m+=c.offset[0];g+=c.offset[1];if(c.boundryCheck){l=d.boundryCheck(m,g);if(l[0])m=m-i/2-2*c.offset[0];if(l[1])g=g-h/2-2*c.offset[1]}}else{if(typeof c.position[0]=="string")m=String(m);if(typeof c.position[1]=="string")g=String(g)}d.setPos(m,g);return d}})}jQuery.fn.simpletip=function(a){var c=jQuery(this).eq(typeof a=="number"?a:0).data("simpletip");
if(c)return c;var d={content:"A simple tooltip",persistent:false,focus:false,hidden:true,position:"default",offset:[0,0],boundryCheck:false,fixed:true,showEffect:"fade",showTime:150,showCustom:null,hideEffect:"fade",hideTime:150,hideCustom:null,baseClass:"tooltip",activeClass:"active",fixedClass:"fixed",persistentClass:"persistent",focusClass:"focus",onBeforeShow:function(){return true},onShow:function(){},onBeforeHide:function(){},onHide:function(){},beforeContentLoad:function(){},onContentLoad:function(){}};
jQuery.extend(d,a);this.each(function(){var e=new b(jQuery(this),d);jQuery(this).data("simpletip",e)});return this}})();
JFormer=Class.extend({init:function(b,a){this.options=$.extend({pageNavigator:false,saveState:false,splashPage:false,progressBar:false,alertsEnabled:true,clientSideValidation:true,submitButtonText:"Submit",onSubmitStart:function(){return true},onSubmitFinish:function(){return true}},a.options||{});if(this.options.trackBind)jQuery.fn.bind=function(c){return function(){console.count("jQuery Bind Count");console.log("jQuery Bind %o",arguments[0],this);return c.apply(this,arguments)}}(jQuery.fn.bind);
this.id=b;this.form=$(["form#",this.id].join(""));this.formData={};this.jFormPageWrapper=this.form.find("div.jFormPageWrapper");this.jFormPageScroller=this.form.find("div.jFormPageScroller");this.jFormPageNavigator=null;this.jFormPages={};this.maxJFormPageIdArrayIndexReached=this.currentJFormPage=null;this.jFormPageIdArray=[];this.currentJFormPageIdArrayIndex=null;this.blurredTips=[];this.initializationTime=(new Date).getTime()/1E3;this.jFormComponentCount=this.durationInSeconds=0;this.controlNextLi=
this.form.find("ul.jFormerControl li.nextLi");this.controlNextButton=this.controlNextLi.find("button.nextButton");this.controlPreviousLi=this.form.find("ul.jFormerControl li.previousLi");this.controlPreviousButton=this.controlPreviousLi.find("button.previousButton");this.saveIntervalSetTimeoutId=null;this.initPages(a.jFormPages);if(this.options.splashPage!==false||this.options.saveState!==false){if(this.options.splashPage==false)this.options.splashPage={};this.addSplashPage()}else{this.maxJFormPageIdArrayIndexReached=
this.currentJFormPageIdArrayIndex=0;this.currentJFormPage=this.jFormPages[this.jFormPageIdArray[0]];this.currentJFormPage.active=true;this.currentJFormPage.startTime=(new Date).getTime()/1E3;this.options.pageNavigator!==false&&this.addPageNavigator()}this.setupPageScroller();this.hideInactivePages();this.setupControl();this.addSubmitListener();this.addEnterKeyListener();this.addBlurTipListener();this.recordAnalytics()},initPages:function(b){var a=this,c=$.each;c(b,function(d,e){var f=new JFormPage(a,
d,e.options);f.show();c(e.jFormSections,function(g,i){var h=new JFormSection(f,g,i.options);c(i.jFormComponents,function(l,k){a.jFormComponentCount+=1;h.addComponent(new window[k.type](h,l,k.type,k.options))});f.addSection(h)});a.addPage(f)})},select:function(b){var a=false,c=null;$.each(this.jFormPages,function(d,e){$.each(e.jFormSections,function(f,g){$.each(g.jFormComponents,function(i,h){if(h.id==b){c=h;a=true}return!a});return!a});return!a});return c},addSplashPage:function(){var b=this;this.options.splashPage.jFormPage=
new JFormPage(this,this.form.find("div.jFormerSplashPage").attr("id"));this.options.splashPage.jFormPage.addSection(new JFormSection(this.options.splashPage.jFormPage,this.form.find("div.jFormerSplashPage").attr("id")+"-section"));this.options.splashPage.jFormPage.page.width(this.form.width());this.options.splashPage.jFormPage.active=true;this.options.splashPage.jFormPage.startTime=(new Date).getTime()/1E3;this.currentJFormPage=this.options.splashPage.jFormPage;this.jFormPageWrapper.height(this.options.splashPage.jFormPage.page.outerHeight());
if(this.options.splashPage.customButtonId){this.options.splashPage.controlSplashLi=this.form.find("#"+this.options.splashPage.customButtonId);this.options.splashPage.controlSplashButton=this.form.find("#"+this.options.splashPage.customButtonId)}else{this.options.splashPage.controlSplashLi=this.form.find("li.splashLi");this.options.splashPage.controlSplashButton=this.form.find("button.splashButton")}this.setupControl();this.options.saveState!==false?b.addSaveStateToSplashPage():this.options.splashPage.controlSplashButton.bind("click",
function(a){a.preventDefault();b.beginFormFromSplashPage(false)})},beginFormFromSplashPage:function(b,a){var c=this;if(this.options.pageNavigator!==false&&this.jFormPageNavigator==null)this.addPageNavigator();else this.options.pageNavigator!==false&&this.jFormPageNavigator.show();this.form.find(".jFormPage").css("width",this.form.find(".jFormWrapperContainer").width());c.options.splashPage.jFormPage.active=false;c.options.splashPage.onAfterJs!=undefined&&eval(c.options.splashPage.onAfterJs);if(!a){c.currentJFormPageIdArrayIndex=
0;c.jFormPages[c.jFormPageIdArray[0]].scrollTo({onAfter:function(){c.options.splashPage.jFormPage.hide()}})}b&&c.initSaveState()},addSaveStateToSplashPage:function(){var b=this,a=b.options.splashPage.jFormPage.id+"-section";$.each(b.options.saveState.components,function(e,f){b.options.splashPage.jFormPage.jFormSections[a].addComponent(new window[f.type](b.options.splashPage.jFormPage.jFormSections[a],e,f.type,f.options))});var c="newForm",d=this.options.splashPage.jFormPage.jFormSections[a].jFormComponents;
d.saveStateStatus.component.find("input:option").bind("click",{context:this},function(e){b.form.find("li.jFormerFailureNotice").remove();c=$(e.target).val();if(c=="newForm"){d.saveStatePassword.component.find("label").html('Create password: <span class="jFormComponentLabelRequiredStar"> *</span>');b.options.splashPage.controlSplashButton.text("Begin")}else if(c=="resumeForm"){d.saveStatePassword.component.find("label").html('Form password: <span class="jFormComponentLabelRequiredStar"> *</span>');
b.options.splashPage.controlSplashButton.text("Resume")}});b.options.splashPage.controlSplashButton.bind("click",{context:this},function(e){e.preventDefault();b.form.find("li.jFormerFailureNotice").remove();var f=d.saveStateIdentifier.validate(),g=d.saveStatePassword.validate();if(f&&g){if(c=="newForm"){b.options.splashPage.controlSplashButton.text("Creating form...");var i={};i.meta={};i.meta.totalTime=0;i.meta.currentPage=b.getActivePage().id;i.meta.maxPageIndex=b.maxJFormPageIdArrayIndexReached;
i.form={}}else b.options.splashPage.controlSplashButton.text("Loading form...");$(e.target).attr("disabled","disabled");$.ajax({url:b.form.attr("action"),type:"post",data:{jFormerTask:"initializeSaveState",identifier:d.saveStateIdentifier.getValue(),password:d.saveStatePassword.getValue(),formState:c,formData:jFormerUtility.jsonEncode(i)},dataType:"json",success:function(h){if(h.status=="success")if(c=="newForm")b.beginFormFromSplashPage(true,false);else{if(c=="resumeForm"){b.beginFormFromSplashPage(true,
true);b.durationInSeconds=h.response.meta.totalTime;b.setData(h.response.form);b.maxJFormPageIdArrayIndexReached=h.response.meta.maxPageIndex;b.options.pageNavigator!=null&&b.updatePageNavigator();if(b.jFormPages[h.response.meta.currentPage]==undefined)h.response.meta.currentPage=b.jFormPages[b.jFormPageIdArray[0]].id;if(b.jFormPages[h.response.meta.currentPage].active===false){b.currentJFormPageIdArrayIndex=b.jFormPageIdArray.indexOf(h.response.meta.currentPage);b.jFormPages[h.response.meta.currentPage].scrollTo({onAfter:function(){b.options.splashPage.jFormPage.hide()}})}}}else if(h.status==
"exists"){c=="newForm"?b.options.splashPage.controlSplashButton.text("Begin"):b.options.splashPage.controlSplashButton.text("Resume");h.response.failureNoticeHtml&&b.form.find(".jFormerControl").append($('<li class="jFormerFailureNotice jFormComponentValidationFailed">'+h.response.failureNoticeHtml+"</li>"));$(e.target).removeAttr("disabled")}else if(h.status=="failure"){c=="newForm"?b.options.splashPage.controlSplashButton.text("Begin"):b.options.splashPage.controlSplashButton.text("Resume");h.response.failureNoticeHtml&&
b.form.find(".jFormerControl").append($(['<li class="jFormerFailureNotice jFormComponentValidationFailed">',h.response.failureNoticeHtml,"</li>"].join("")));h.response.failureJs&&eval(h.response.failureJs);$(e.target).removeAttr("disabled")}},error:function(){b.showAlert("There was a problem initializing the form.");b.setupControl()}})}else b.options.splashPage.jFormPage.focusOnFirstFailedComponent()})},addPageNavigator:function(){var b=this,a=1;this.jFormPageNavigator=$('<div class="jFormPageNavigator"></div');
this.form.find(".jFormWrapperContainer").before(b.jFormPageNavigator);this.jFormPageNavigator.append("<ul></ul>");this.options.pageNavigator.position=="right"?this.jFormPageNavigator.addClass("jFormPageNavigatorRight"):this.jFormPageNavigator.addClass("jFormPageNavigatorTop");$.each(this.jFormPages,function(c,d){if(b.options.pageNavigator.label=="numeric")d="Page "+a;else{d=d.page.find("div.jFormPageTitle");if(d.length>0){d=d.text();if(b.options.pageNavigator.label=="prefixLabels")d='<span class="jFormNavigatorLinkPrefix" >'+
a+"</span> "+d}else d="Page "+a}d=['<li id="navigatePage',a,'" class="jFormPageNavigatorLink"> ',d," </li>"].join("");b.jFormPageNavigator.find("ul").append(d);var e=$(""+("#navigatePage"+a));if(a!=1)e.addClass("jFormPageNavigatorLinkLocked");else{e.addClass("jFormPageNavigatorLinkUnlocked jFormPageNavigatorLinkActive");e.click(function(){b.currentJFormPageIdArrayIndex=0;b.scrollToPage(c,{onAfter:function(){e.hasClass("jFormPageNavigatorLinkWarning")&&b.jFormPages[c].focusOnFirstFailedComponent()}})})}a+=
1});this.options.pageNavigator.position=="right"&&this.form.find(".jFormWrapperContainer").width(this.form.width()-this.jFormPageNavigator.width()-30);this.options.progressBar!==false&&this.addProgressBar()},updatePageNavigator:function(){for(var b=this,a,c,d=1;d<=this.maxJFormPageIdArrayIndexReached+1;d++){a=d;var e=$("#navigatePage"+a);this.currentJFormPageIdArrayIndex!=a-1?e.removeClass("jFormPageNavigatorLinkActive"):e.addClass("jFormPageNavigatorLinkActive");if(e.hasClass("jFormPageNavigatorLinkLocked")){e.removeClass("jFormPageNavigatorLinkLocked").addClass("jFormPageNavigatorLinkUnlocked");
e.click(function(f){c=$(f.target).attr("id").match(/[0-9]+$/);c=parseInt(c)-1;b.getActivePage().validate(true);b.scrollToPage(b.jFormPageIdArray[c]);b.currentJFormPageIdArrayIndex=c;e.hasClass("jFormPageNavigatorLinkWarning")&&b.jFormPages[b.jFormPageIdArray[c]].focusOnFirstFailedComponent()})}}},addPage:function(b){this.jFormPageIdArray.push(b.id);this.jFormPages[b.id]=b},addEnterKeyListener:function(){var b=this;this.form.bind("keydown",{context:this},function(a){if(a.keyCode===13||a.charCode===
13)$(a.target).is("textarea")||a.preventDefault()});this.form.bind("keyup",{context:this},function(a){var c=b.getActivePage().page;if(a.keyCode===13||a.charCode===13){var d=$(a.target);if(!d.is("textarea"))if(d.is("button")){a.preventDefault();d.trigger("click").blur()}else if(d.is("input:checkbox")){a.preventDefault();d.trigger("click")}else if(c.find(":input").eq(c.find(":input").index(a.target)+1).val()=="remember"){a.preventDefault();d.blur();b.controlNextButton.trigger("click")}else if(d.is("input:password")){a.preventDefault();
d.blur();b.options.splashPage!==null&&b.currentJFormPage.id==b.options.splashPage.jFormPage.id?b.options.splashPage.controlSplashButton.trigger("click"):b.controlNextButton.trigger("click")}}})},addSubmitListener:function(){var b=this;this.form.bind("submit",{context:this},function(a){a.preventDefault();b.submitEvent(a)})},initSaveState:function(){var b=this;if(this.options.saveState!==null){this.saveIntervalSetTimeoutId=setInterval(function(){b.saveState(b.options.saveState.showSavingAlert)},this.options.saveState.interval*
1E3);this.saveStateInitialized=true}},saveState:function(b){if(this.saveRunning==true)return true;this.saveRunning=true;var a=this,c=this.durationInSeconds+this.getTimeActive(),d={};d.meta={};d.meta.totalTime=c;d.meta.currentPage=this.getActivePage().id;d.meta.maxPageIndex=this.maxJFormPageIdArrayIndexReached;d.form=this.getData();$.ajax({url:a.form.attr("action"),type:"post",data:{jFormerTask:"saveState",formData:jFormerUtility.jsonEncode(d)},dataType:"json",success:function(){b===true&&a.showAlert("Saving...");
a.saveRunning=false},error:function(e,f,g){if(f!="error")g=f?f:"unknown";a.showAlert("There was an error saving your form, we'll try again : "+g,"error");a.saveRunning=false}})},getData:function(){var b=this;this.formData={};$.each(this.jFormPages,function(a,c){b.formData[a]=c.getData()});return this.formData},setData:function(b){var a=this;this.formData=b;$.each(b,function(c,d){a.jFormPages[c]!=undefined&&a.jFormPages[c].setData(d)});return this.formData},setupPageScroller:function(){var b=this,
a=this.form.find(".jFormPage");a.css("width",this.form.find(".jFormWrapperContainer").width()).show();b.jFormPageScroller.css("width",$(".jFormPageWrapper").width()*(a.length+1));b.jFormPageWrapper.height(b.getActivePage().page.outerHeight())},setupControl:function(){var b=this;this.controlNextButton.unbind().click(function(a){a.preventDefault();a.context=b;b.submitEvent(a)}).removeAttr("disabled");this.controlPreviousButton.unbind().click(function(a){a.preventDefault();if(b.options.splashPage!==
false&&b.currentJFormPageIdArrayIndex===0){b.currentJFormPageIdArrayIndex=null;b.jFormPageNavigator&&b.jFormPageNavigator.hide();b.options.splashPage.jFormPage.scrollTo();b.options.splashPage.onReturnJs!=undefined&&eval(b.options.splashPage.onReturnJs)}else{b.currentJFormPageIdArrayIndex-=1;b.scrollToPage(b.jFormPageIdArray[b.currentJFormPageIdArrayIndex])}});if(this.currentJFormPageIdArrayIndex===0&&this.currentJFormPageIdArrayIndex!=this.jFormPageIdArray.length-1){this.controlNextButton.html("Next");
this.controlNextLi.show();this.controlPreviousLi.hide();this.controlPreviousButton.attr("disabled","disabled")}else if(b.currentJFormPageIdArrayIndex==this.jFormPageIdArray.length-1){this.controlNextButton.html(this.options.submitButtonText);this.controlNextLi.show();if(b.currentJFormPageIdArrayIndex===0){this.controlPreviousLi.hide();this.controlPreviousButton.attr("disabled","")}else if(b.currentJFormPageIdArrayIndex>0){this.controlPreviousButton.removeAttr("disabled");this.controlPreviousLi.show()}}else{this.controlNextButton.html("Next");
this.controlNextLi.show();this.controlPreviousButton.removeAttr("disabled");this.controlPreviousLi.show()}if(this.options.splashPage!==false){if(this.options.splashPage.jFormPage.active){this.options.splashPage.controlSplashLi.show();this.controlNextLi.hide();this.controlPreviousLi.hide();this.controlPreviousButton.attr("disabled","disabled")}else this.options.splashPage.controlSplashLi.hide();if(this.currentJFormPageIdArrayIndex===0&&this.options.saveState==false){this.controlPreviousButton.removeAttr("disabled");
this.controlPreviousLi.show()}}if(this.form.find(".jFormerControl .startOver").length==1){this.controlNextLi.hide();this.controlPreviousLi.hide();this.form.find(".jFormerControl .startOver").click(function(a){a.preventDefault();b.scrollToPage(b.jFormPageIdArray[0],{onAfter:function(){$(a.target).parent().remove();b.form.find(".jFormPageFailure").remove();b.setupControl()}})})}},scrollToPage:function(b,a){this.controlNextButton.attr("disabled",true);this.controlPreviousButton.attr("disabled",true);
var c=this,d=this.getActivePage();d.durationActiveInSeconds+=d.getTimeActive();$.each(this.jFormPages,function(e,f){f.show();f.active=false});if(c.options.splashPage!==false&&b==c.options.splashPage.jFormPage.id){c.currentJFormPage=c.options.splashPage.jFormPage;c.currentJFormPage.show()}else c.currentJFormPage=c.jFormPages[b];c.currentJFormPage.active=true;this.jFormPageWrapper.scrollTo(c.currentJFormPage.page,375,{axis:"xy",onAfter:function(){$(c.pageWrapper).queue("fx").length<=1&&c.hideInactivePages(c.getActivePage());
if(c.maxJFormPageIdArrayIndexReached<c.currentJFormPageIdArrayIndex)c.maxJFormPageIdArrayIndexReached=c.currentJFormPageIdArrayIndex;c.updatePageNavigator();c.adjustHeight();c.currentJFormPage.startTime=(new Date).getTime()/1E3;a&&a.onAfter&&a.onAfter();c.setupControl();c.controlNextButton.removeAttr("disabled").blur();c.controlPreviousButton.removeAttr("disabled").blur()}});this.scrollToTop()},scrollToTop:function(){$(window).scrollTop()>this.form.position().top&&$(document).scrollTo(this.form,500,
{offset:{top:-10}})},getActivePage:function(){return this.currentJFormPage},getTimeActive:function(){var b=0;$.each(this.jFormPages,function(a,c){b+=c.durationActiveInSeconds});b+=this.getActivePage().getTimeActive();return b},hideInactivePages:function(){$.each(this.jFormPages,function(b,a){a.hide()})},clearValidation:function(){$.each(this.jFormPages,function(b,a){a.clearValidation()})},submitEvent:function(b){var a=this;b.stopPropagation();b.preventDefault();a.form.find(".jFormerControl .jFormerFailureNotice").remove();
a.form.find(".jFormerFailure").remove();typeof a.options.onSubmitStart!="function"?eval(a.options.onSubmitStart):a.options.onSubmitStart();var c=false;if(this.options.clientSideValidation)c=a.currentJFormPageIdArrayIndex<a.jFormPageIdArray.length-1?a.getActivePage().validate():a.validateAll();else{this.clearValidation();c=true}if(a.options.onSubmitFinish())if(c&&a.currentJFormPageIdArrayIndex==a.jFormPageIdArray.length-1)a.submitForm(b);else if(c&&a.currentJFormPageIdArrayIndex<a.jFormPageIdArray.length-
1){a.currentJFormPageIdArrayIndex+=1;a.scrollToPage(a.jFormPageIdArray[a.currentJFormPageIdArrayIndex])}},validateAll:function(){var b=true;$.each(this.jFormPages,function(a,c){if(!c.validate())return b=false});return b},adjustHeight:function(){this.jFormPageWrapper.animate({height:this.getActivePage().page.outerHeight()},250)},submitForm:function(){var b=this.form.clone(false).attr("id",$(this.form).attr("id")+"-clone").html("").hide().insertAfter($(this.form));$('<input name="jFormer" />').attr("value",
encodeURI(jFormerUtility.jsonEncode(this.getData()))).appendTo(b);this.form.find("input:file").each(function(a,c){if($(c).val()!=""){a=$(c).closest(".jFormSection").attr("id");var d=$(c).closest(".jFormPage").attr("id"),e=$(c).clone();if($(c).attr("id").match(/-section[0-9]+/)){var f=null,g=$(c).closest(".jFormSection"),i=g.attr("id").replace(/-section[0-9]+/,"");a=a.replace(/-section[0-9]+/,"");g.closest(".jFormPage").find("div[id*="+i+"]").each(function(l,k){if(g.attr("id")==$(k).attr("id")){f=
l+1;return false}return true});e.attr("name",e.attr("name").replace(/-section[0-9]+/,"-section"+f))}if($(c).attr("id").match(/-instance[0-9]+/)){i=$(c).attr("id").replace(/-instance[0-9]+/,"");var h=null;$(c).closest(".jFormSection").find("input[id*="+i+"]").each(function(l,k){if($(k).attr("id")==$(c).attr("id")){h=l+1;return false}return true});e.attr("name",e.attr("name").replace(/-instance[0-9]+/,"-instance"+h))}e.attr("name",e.attr("name")+":"+d+":"+a);e.appendTo(b)}});b.submit();b.remove();$(this.form).find(".jFormerControl .nextButton").text("Processing...").attr("disabled",
"disabled")},handleFormSubmissionResponse:function(b){var a=this;if(b.status=="failure"){b.response.validationFailed&&$.each(b.response.validationFailed,function(d,e){$.each(e,function(f,g){$.isArray(g)?$.each(g,function(i,h){var l;l=i!=0?"-section"+(i+1):"";$.each(h,function(k,r){a.jFormPages[d].jFormSections[f].instanceArray[i].jFormComponents[k+l].handleServerValidationResponse(r)})}):$.each(g,function(i,h){a.jFormPages[d].jFormSections[f].jFormComponents[i].handleServerValidationResponse(h)})})});
if(b.response.failureHtml){this.form.find(".jFormerControl .jFormerFailure").remove();this.form.find(".jFormerControl").after('<div class="jFormerFailure">'+b.response.failureHtml+"</div>")}this.form.find("iframe").contents().find("body script").remove();this.form.find("iframe").contents().find("body").html()!==null&&this.form.find(".jFormerFailure").append("<p>Output:</p>"+this.form.find("iframe").contents().find("body").html().trim());this.controlNextButton.text(this.options.submitButtonText);this.controlNextButton.removeAttr("disabled");
this.getActivePage().focusOnFirstFailedComponent()}else if(b.status=="success"){if(b.response.successPageHtml){clearInterval(this.saveIntervalSetTimeoutId);var c=$('<div class="jFormPage jFormPageSuccess">'+b.response.successPageHtml+"</div>");c.width(this.jFormPages[this.jFormPageIdArray[0]].page.width());this.jFormPageScroller.append(c);this.form.find(".jFormerControl").hide();this.form.find(".jFormPageNavigator").hide();this.jFormPageWrapper.scrollTo(c,375,{axis:"xy"});this.jFormPageWrapper.animate({height:a.form.find(".jFormPageSuccess").outerHeight()},
250);this.scrollToTop()}else if(b.response.failurePageHtml){c=$('<div class="jFormPage jFormPageFailure">'+b.response.failurePageHtml+"</div>");c.width(this.jFormPages[this.jFormPageIdArray[0]].page.width());this.jFormPageScroller.append(c);this.form.find(".jFormerControl").append($('<li class="startOver"><button class="startOverButton">Start Over</button></li>'));this.jFormPageWrapper.scrollTo(c,375,{axis:"xy"});this.jFormPageWrapper.animate({height:a.form.find(".jFormPageFailure").outerHeight()},
250);this.scrollToTop();this.setupControl()}if(b.response.failureNoticeHtml){this.form.find(".jFormerControl .jFormerFailureNotice").remove();this.form.find(".jFormerControl").append('<li class="jFormerFailureNotice">'+b.response.failureNoticeHtml+"</li>");this.controlNextButton.text(this.options.submitButtonText);this.controlNextButton.removeAttr("disabled")}if(b.response.failureHtml){this.form.find(".jFormerControl .jFormerFailure").remove();this.form.find(".jFormerControl").after('<div class="jFormerFailure">'+
b.response.failureHtml+"</div>");this.controlNextButton.text(this.options.submitButtonText);this.controlNextButton.removeAttr("disabled")}if(b.response.successJs)eval(b.response.successJs);else b.response.failureJs&&eval(b.response.failureJs);if(b.response.redirect){this.form.find(".jFormerControl .nextButton").html("Redirecting...");document.location=b.response.redirect}}},showAlert:function(b,a,c){if(this.options.alertsEnabled){a||(a="");var d=this.form.find(".jFormerAlertWrapper"),e=this.form.find(".jFormerAlert");
e.addClass(a);e.text(b);if(c){d.attr("class","jFormerModalWrapper");e.attr("class","jFormerModal");d.append("<button>ok</button>");d.find("button").click(function(i){i.preventDefault();d.attr("style","display:none;");e.removeClass(a);d.find("button").unbind().remove();d.attr("class","jFormerAlertWrapper");e.attr("class","jFormerAlert")});var f=$(window).width()/2-d.width()/2,g=$(window).height()/2-d.height()/2+$(window).scrollTop();d.css({position:"absolute",top:g,left:f});$(window).resize(function(){f=
$(window).width()/2-d.width()/2;g=$(window).height()/2-d.height()/2+$(window).scrollTop();d.css({top:g,left:f})});$(window).scroll(function(){f=$(window).width()/2-d.width()/2;g=$(window).height()/2-d.height()/2+$(window).scrollTop();d.css({top:g,left:f})});d.show()}else d.slideDown("slow",function(){setTimeout(function(){d.slideUp("slow",function(){e.removeClass(a)})},1E3)})}},recordAnalytics:function(){var b=$('<img src="'+("https:"==document.location.protocol?"https://ssl.":"http://www.")+".jformer.com/analytics/analytics.gif?pageCount="+
this.jFormPageIdArray.length+"&componentCount="+this.jFormComponentCount+"&formId="+this.id+'" style="display: none;" />');this.form.append(b);b.remove()},addProgressBar:function(){this.jFormPageNavigator.append('<div class="jFormerProgress"><div class="jFormerProgressBar"></div></div>')},updateProgressBar:function(){var b=0,a=0;$.each(this.jFormPages,function(d,e){$.each(e.jFormSections,function(f,g){$.each(g.jFormComponents,function(i,h){if(h.isRequired===true&&h.disabledByDependency===false&&g.disabledByDependency===
false)if(h.type!="JFormComponentLikert"){b+=1;if(h.requiredCompleted===true)a+=1}})})});var c=parseInt(a/b*100);this.form.find(".jFormerProgressBar").animate({width:c+"%"},500).html("<p>"+c+"%</p>")},addBlurTipListener:function(){var b=this;$(document).bind("blurTip",function(a,c,d){if(d=="hide"){b.blurredTips=$.map(b.blurredTips,function(e){return $(e).attr("id")==c.attr("id")?null:e});b.blurredTips[b.blurredTips.length-1]!=undefined&&b.blurredTips[b.blurredTips.length-1].removeClass("jFormerTipBlurred")}else if(d==
"show"){b.blurredTips.length>0&&$.each(b.blurredTips,function(e,f){$(f).addClass("jFormerTipBlurred")});b.blurredTips.push(c);c.removeClass("jFormerTipBlurred")}})}});JFormerUtility=function(){};
$.extend(JFormerUtility.prototype,{isSet:function(){var b=arguments,a=b.length,c=0;if(a==0)throw new Error("Empty isSet.");for(;c!=a;)if(typeof b[c]=="undefined"||b[c]===null)return false;else c++;return true},empty:function(b){var a;if(b===""||b===0||b==="0"||b===null||b===false||b===undefined)return true;if(typeof b=="object"){for(a in b)if(typeof b[a]!=="function")return false;return true}return false},getExtraWidth:function(b){b=$(b);var a=0;a+=parseInt(b.css("padding-left"),10)+parseInt(b.css("padding-right"),
10);a+=parseInt(b.css("margin-left"),10)+parseInt(b.css("margin-right"),10);a+=parseInt(b.css("borderLeftWidth"),10)+parseInt(b.css("borderRightWidth"),10);return a},jsonEncode:function(b){var a=window.JSON;if(typeof a==="object"&&typeof a.stringify==="function")return a.stringify(b);var c=function(e){var f=/[\\\"\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,g={"\u0008":"\\b","\t":"\\t","\n":"\\n","\u000c":"\\f","\r":"\\r",
'"':'\\"',"\\":"\\\\"};f.lastIndex=0;return f.test(e)?'"'+e.replace(f,function(i){var h=g[i];return typeof h==="string"?h:"\\u"+("0000"+i.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+e+'"'},d=function(e,f){var g="",i=0,h=i="";h=0;var l=g,k=[];if((f=f[e])&&typeof f==="object"&&typeof f.toJSON==="function")f=f.toJSON(e);switch(typeof f){case "string":return c(f);case "number":return isFinite(f)?String(f):"null";case "boolean":case "null":return String(f);case "object":if(!f)return"null";g+="    ";
k=[];if(Object.prototype.toString.apply(f)==="[object Array]"){h=f.length;for(i=0;i<h;i+=1)k[i]=d(i,f)||"null";return h=k.length===0?"[]":g?"[\n"+g+k.join(",\n"+g)+"\n"+l+"]":"["+k.join(",")+"]"}for(i in f)if(Object.hasOwnProperty.call(f,i))if(h=d(i,f))k.push(c(i)+(g?": ":":")+h);return h=k.length===0?"{}":g?"{\n"+g+k.join(",\n"+g)+"\n"+l+"}":"{"+k.join(",")+"}"}};return d("",{"":b})}});jFormerUtility=new JFormerUtility;
(function(){var b=false,a=/xyz/.test(function(){})?/\b_super\b/:/.*/;this.Class=function(){};Class.extend=function(c){function d(){!b&&this.init&&this.init.apply(this,arguments)}var e=this.prototype;b=true;var f=new this;b=false;for(var g in c)f[g]=typeof c[g]=="function"&&typeof e[g]=="function"&&a.test(c[g])?function(i,h){return function(){var l=this._super;this._super=e[i];var k=h.apply(this,arguments);this._super=l;return k}}(g,c[g]):c[g];d.prototype=f;d.constructor=d;d.extend=arguments.callee;
return d}})();
JValidator=Class.extend({init:function(){var b=this;this.validations={required:function(a){var c=["Required."];return a.value!=""?"success":c},blank:function(a){var c=["Must be blank."];return $.trim(a.value).length==0?"success":c},alpha:function(a){var c=["Must only contain letters."];return a.value==""||a.value.match(/^[A-Za-z]+$/i)?"success":c},alphaNumeric:function(a){var c=["Must only contain letters and numbers."];return a.value==""||a.value.match(/^[A-Za-z0-9]+$/i)?"success":c},numeric:function(a){var c=
["Must only contain numbers."];return a.value==""||a.value.match(/^[0-9]+$/i)?"success":c},numericPositive:function(a){var c=["Must only contain numbers, and be greater than zero."];return(a.value==""||a.value.match(/^[(?!-)0-9]+$/i))&&a.value!="0"&&a.value!=0?"success":c},numericNegative:function(a){var c=["Must only contain numbers, and be less than zero."];return a.value==""||a.value.match(/^-[0-9]+$/i)?"success":c},numericZeroPositive:function(a){var c=["Must only contain numbers, and be zero or greater."];
return a.value==""||a.value.match(/^[(?!-)0-9]+$/i)?"success":c},numericZeroNegative:function(a){var c=["Must only contain numbers, and be zero or less."];return a.value==""||a.value.match(/^0|-[0-9]+$/i)?"success":c},phone:function(a){var c=["Must be a valid phone number with an area code."];return a.value==""||a.value.match(/^(1[\-. ]?)?\(?[0-9]{3}\)?[\-. ]?[0-9]{3}[\-. ]?[0-9]{4}$/)?"success":c},email:function(a){var c=["Must be a valid e-mail address."];return a.value==""||a.value.match(/^[A-Z0-9._%-\+]+@(?:[A-Z0-9\-]+\.)+[A-Z]{2,4}$/i)?
"success":c},password:function(a){var c=["Password must be between 4 and 32 characters."];return a.value==""||a.value.match(/^.{4,32}$/)?"success":c},username:function(a){var c=["Must use 4 to 32 characters and start with a letter."];return a.value==""||a.value.match(/^[A-Za-z](?=[A-Za-z0-9_.]{3,31}$)[a-zA-Z0-9_]*\.?[a-zA-Z0-9_]*$/)?"success":c},date:function(a){var c=["Must be a date in the mm/dd/yyyy format."];return a.value==""||a.value.match(/^(0?[1-9]|1[012])[\- \/.](0?[1-9]|[12][0-9]|3[01])[\- \/.](19|20)[0-9]{2}$/)?
"success":c},time:function(a){var c=["Must be a time in the hh:mm:ss tt format. ss and tt are optional."];return a.value==""||a.value.match(/^[0-2]?\d:[0-5]\d(:[0-5]\d)?( ?(a|p)m)?$/i)?"success":c},dateTime:function(a){var c=["Must be a date in the mm/dd/yyyy hh:mm:ss tt format. ss and tt are optional."];return a.value==""||a.value.match(/^(0?[1-9]|1[012])[\- \/.](0?[1-9]|[12][0-9]|3[01])[\- \/.](19|20)?[0-9]{2} [0-2]?\d:[0-5]\d(:[0-5]\d)?( ?(a|p)m)?$/i)?"success":c},url:function(a){var c=["Must be a valid Internet address."];
return a.value==""||a.value.match(/^((ht|f)tp(s)?:\/\/|www\.)?([\-A-Z0-9.]+)(\.[a-zA-Z]{2,4})(\/[\-A-Z0-9+&@#\/%=~_|!:,.;]*)?(\?[\-A-Z0-9+&@#\/%=~_|!:,.;]*)?$/i)?"success":c},ssn:function(a){var c=["Must be a valid US Social Security Number."];return a.value==""||a.value.match(/^\d{3}-?\d{2}-?\d{4}$/i)?"success":c},zip:function(a){var c=["Must be a valid US zip code."];return a.value==""||a.value.match(/^[0-9]{5}(?:-[0-9]{4})?$/)?"success":c},canadianZip:function(a){var c=["Must be a valid Canadian postal code."];
return a.value==""||a.value.match(/^[ABCEGHJKLMNPRSTVXY][0-9][A-Z] [0-9][A-Z][0-9]$/)?"success":c},ukPostal:function(a){var c=["Must be a valid UK postal code."];return a.value==""||a.value.match(/^[A-Z]{1,2}[0-9][A-Z0-9]? [0-9][ABD-HJLNP-UW-Z]{2}$/)?"success":c},money:function(a){var c=["Must be a valid dollar value."];return a.value==""||a.value.match(/^((-?\$)|(\$-?)|(-))?((\d+(\.\d{2})?)|(\.\d{2}))$/)?"success":c},moneyPositive:function(a){var c=["Must be a valid positive dollar value."];return a.value==
""||a.value.match(/^((-?\$)|(\$-?)|(-))?((\d+(\.\d{2})?)|(\.\d{2}))$/)&&RegExp.$5>0?"success":c},moneyZeroPositive:function(a){var c=["Must be zero or a valid positive dollar value."];return a.value==""||a.value.match(/^((-?\$)|(\$-?)|(-))?((\d+(\.\d{2})?)|(\.\d{2}))$/)&&RegExp.$5>=0?"success":c},moneyNegative:function(a){var c=["Must be a valid negative dollar value."];return a.value==""||a.value.match(/^((-?\$)|(\$-?)|(-))?((\d+(\.\d{2})?)|(\.\d{2}))$/)&&RegExp.$5<0?"success":c},moneyZeroNegative:function(a){var c=
["Must be a valid negative dollar value."];return a.value==""||a.value.match(/^((-?\$)|(\$-?)|(-))?((\d+(\.\d{2})?)|(\.\d{2}))$/)&&RegExp.$5<=0?"success":c},matches:function(a){var c=["Does not match."],d=a.matches;if(a.sectionInstances){var e=a.component.attr("id").match(/-section[\d]+/);if(e)d=a.matches+e}return a.value==$("#"+d).val()?"success":c},decimal:function(a){var c=["Must be a number without any commas."];return a.value==""||a.value.match(/^-?((\d+(\.\d+)?)|(\.\d+))$/)?"success":c},decimalPositive:function(a){var c=
["Must be a positive number without any commas."],d=this.decimal(a);return a.value==""||d=="success"&&parseFloat(a.value)>0?"success":c},decimalZeroOrPositive:function(a){var c=["Must be zero or a positive number without any commas."],d=this.decimal(a);return a.value==""||d=="success"&&parseFloat(a.value)>=0?"success":c},decimalNegative:function(a){var c=["Must be a negative number without any commas."],d=this.decimal(a);return a.value==""||d=="success"&&parseFloat(a.value)<0?"success":c},decimalZeroOrNegative:function(a){var c=
["Must be zero or a negative number without any commas."],d=b.validations.decimal({value:a.value});return a.value==""||d=="success"&&parseFloat(a.value)<=0?"success":c},integer:function(a){var c=["Must be a whole number."];return a.value==""||a.value.match(/^-?\d+$/)?"success":c},integerPositive:function(a){var c=["Must be a positive whole number."],d=this.integer(a);return a.value==""||d=="success"&&parseInt(a.value,10)>0?"success":c},integerZeroOrPositive:function(a){var c=["Must be zero or a positive whole number."],
d=this.integer(a);return a.value==""||d=="success"&&parseInt(a.value,10)>=0?"success":c},integerNegative:function(a){var c=["Must be a negative whole number."],d=this.integer(a);return a.value==""||d=="success"&&parseInt(a.value,10)<0?"success":c},integerZeroOrNegative:function(a){var c=["Must be zero or a negative whole number."],d=this.integer(a);return a.value==""||d=="success"&&parseInt(a.value,10)<=0?"success":c},length:function(a){var c=["Must be exactly "+a.length+" characters long. The string is "+
a.value.length+" characters."];return a.value==""||a.value.length==a.length?"success":c},maxLength:function(a){var c=["Must be less than "+a.maxLength+" characters long. The string is "+a.value.length+" characters."];return a.value==""||a.value.length<=a.maxLength?"success":c},minLength:function(a){var c=["Must be more than "+a.minLength+" characters long. The string is "+a.value.length+" characters."];return a.value==""||a.value.length>=a.minLength?"success":c},teenager:function(a){var c=new Date(a.value),
d=new Date;c=new Date(d.getFullYear()-13,d.getMonth(),d.getDate())-c;return a.value==""||c>=0?"success":"You must be at least 13 years old to use this site."},maxFloat:function(a){var c="Must be numberic and cannot have more than "+a.maxFloat+" decimal place(s).",d=new RegExp("^-?((\\d+(\\.\\d{0,"+a.maxFloat+"})?)|(\\.\\d{0,"+a+"}))$");return a.value==""||a.value.match(d)?"success":c},isbn:function(a){var c=["Must be a valid ISBN and consist of either ten or thirteen characters."];if(a.value.match(/^(?=.{13}$)\d{1,5}([\- ])\d{1,7}\1\d{1,6}\1(\d|X)$/))c=
"sucess";if(a.value.match(/^\d{9}(\d|X)$/))c="sucess";if(a.value.match(/^(?=.{17}$)\d{3}([\- ])\d{1,5}\1\d{1,7}\1\d{1,6}\1(\d|X)$/))c="sucess";if(a.value.match(/^\d{3}[\- ]\d{9}(\d|X)$/))c="sucess";if(a.value.match(/^\d{12}(\d|X)$/))c="sucess";return c},postalZip:function(a){var c=["Must be a valid US Zip Code, Canadian postal code, or UK postal code."];return a.value==""||this.zip(a)=="success"||this.canadianPostal(a)=="success"||this.ukPostal()=="success"?"success":c},requiredJFormComponentMultipleChoice:function(a){var c=
["Required."];return a.value.length>0?"success":c},minOptionsJFormComponentMultipleChoice:function(a){var c=["You must select more than "+a.minOptions+" options"];return a.value.length==0||a.value.length>a.minOptions?"success":c},maxOptionsJFormComponentMultipleChoice:function(a){var c=["You may select up to "+a.maxOptions+" options. You have selected "+a.value.length+"."];return a.value.length==0||a.value.length<=a.maxOptions?"success":c},requiredJFormComponentName:function(a){var c=[];a.value.firstName==
""&&c.push(["First name is required."]);a.value.lastName==""&&c.push(["Last name is required."]);return c.length<1?"success":c},requiredJFormComponentDropDown:function(a){return this.required(a)},requiredJFormComponentAddress:function(a){var c=[];a.value.addressLine1==""&&c.push(["Street Address is required."]);a.value.city==""&&c.push(["City is required."]);a.value.state==""&&c.push(["State is required."]);a.value.zip==""&&c.push(["Zip is required."]);a.value.country==""&&c.push(["Country is required."]);
return c.length<1?"success":c},requiredJFormComponentDate:function(a){var c=[];if(a.value.month==""||a.value.day==""||a.value.year==""||a.value==null)c.push(["Required."]);return c.length<1?"success":c},dateJFormComponentDate:function(a){var c=[],d=parseInt(a.value.month),e=parseInt(a.value.day),f=a.value.year,g=false;if(a.value.month==""||a.value.day==""||a.value.year=="")return true;f.match(/[\d]{4}/)||c.push(["you must enter a valid year."]);if(d<0||d>12)c.push(["you must enter a valid month."]);
if(d==4||d==6||d==9||d==11){if(e>30)g=true}else if(d==2){f=parseInt(f);if(e>(f%4==0&&(f%100!=0||f%400==0)?29:28))g=true}if(e>31)g=true;g&&c.push(["you must enter a valid day."]);return c.length<1?"success":c},requiredJFormComponentLikertStatement:function(a){var c=["Required."];return a.value.length>0?"success":c},dateDate:function(a){return this.required(a)},teenagerDate:function(a){return this.teenager(a)},serverSide:function(a){if(a.value=="")return"success";var c=[];a.component.addClass("jFormComponentServerSideCheck");
$.ajax({url:a.url,type:"post",data:{task:a.task,value:a.value},dataType:"json",cache:false,async:false,success:function(d){if(d.status!="success")c=d.response;a.component.removeClass("jFormComponentServerSideCheck")},error:function(d,e,f){if(e!="error")f=e?e:"Unknown error";c="There was an error during server side validation: "+f;a.component.removeClass("jFormComponentServerSideCheck")}});return c.length<1?"success":c},requiredJFormComponentFile:function(a){return this.required(a)},extensionJFormComponentFile:function(a){var c=
["Must have the ."+a.extension+" extension."],d=new RegExp("\\."+a.extension+"$");return a.value==""||a.value.match(d)?"success":c},extensionTypeJFormComponentFile:function(a){var c,d=["Incorrect file type."];console.log(a);if($.isArray(a)){console.log("array!");c=new RegExp("\\.("+a.join("|")+")$")}else{console.log("notArray");c={};c.image="\\.(bmp|gif|jpg|png|psd|psp|thm|tif)$";c.document="\\.(doc|docx|log|msg|pages|rtf|txt|wpd|wps)$";c.audio="\\.(aac|aif|iff|m3u|mid|midi|mp3|mpa|ra|wav|wma)$";
c.video="\\.(3g2|3gp|asf|asx|avi|flv|mov|mp4|mpg|rm|swf|vob|wmv)$";c.web="\\.(asp|css|htm|html|js|jsp|php|rss|xhtml)$";c=new RegExp(c[a.extensionType]);d=["Must be an "+a.extensionType+" file type."]}return a.value==""||a.value.match(c)?"success":d}}},validate:function(b,a){return this.validations[b](a)},addValidation:function(b,a){this.validations[b]=a}});jvalidator=new JValidator;
JFormPage=Class.extend({init:function(b,a,c){this.options=$.extend({},c||{});this.jFormer=b;this.id=a;this.page=$("#"+a);this.jFormSections={};this.formData={};this.validationPassed=this.active=false;this.durationActiveInSeconds=0},addSection:function(b){this.jFormSections[b.id]=b;return this},getData:function(){var b=this;this.formData={};$.each(this.jFormSections,function(a,c){b.formData[a]=c.getData()});return this.formData},setData:function(b){var a=this;$.each(b,function(c,d){if(a.jFormSections[c]!=
undefined)a.jFormSections[c].setData(d);else b[c]=undefined});return this.formData=b},getTimeActive:function(){return(new Date).getTime()/1E3-this.startTime},validate:function(b){var a=this,c=$.each;a.validationPassed=true;c(this.jFormSections,function(d,e){c(e.instanceArray,function(f,g){c(g.jFormComponents,function(i,h){h.type!="JFormComponentLikert"&&c(h.instanceArray,function(l,k){k.validate();if(k.validationPassed==false)a.validationPassed=false})})})});if(a.validationPassed)$("#navigatePage"+
(a.jFormer.currentJFormPageIdArrayIndex+1)).removeClass("jFormPageNavigatorLinkWarning");else b||this.focusOnFirstFailedComponent();return a.validationPassed},clearValidation:function(){$.each(this.jFormSections,function(b,a){a.clearValidation()})},focusOnFirstFailedComponent:function(){var b=$.each,a=true;b(this.jFormSections,function(c,d){b(d.instanceArray,function(e,f){b(f.jFormComponents,function(g,i){b(i.instanceArray,function(h,l){if(!l.validationPassed||l.errorMessageArray.length>0){h=l.component.offset().top-
30;var k=$(window).scrollTop();k<h&&k+$(window).height()>l.component.position().top?l.component.find(":input:first").focus():$.scrollTo(h+"px",500,{onAfter:function(){l.component.find(":input:first").focus()}});a=false}return a});return a});return a});return a})},scrollTo:function(b){this.jFormer.scrollToPage(this.id,b);return this},show:function(){this.page.hasClass("jFormPageInactive")&&this.page.removeClass("jFormPageInactive")},hide:function(){this.active||this.page.addClass("jFormPageInactive")}});
JFormSection=Class.extend({init:function(b,a,c){this.options=$.extend({dependencyDisplay:"hidden",dependencyConditionObject:null,instancesAllowed:1,instanceAddText:"Add Another",instanceRemoveText:"Remove"},c||{});this.parentJFormPage=b;this.id=a;this.section=$("#"+a);this.jFormComponents={};this.formData=null;this.disabledByDependency=false;this.addDependencyListeners();if(this.options.isInstance)this.clone=this.instanceArray=null;else{this.clone=this.section.clone();this.instanceArray=[this];this.createInstanceButton();
this.iterations=1}},addDependencyListeners:function(){function b(d){d.bind("jFormComponent:changed",function(){a.checkDependencies()});d.is("input:text, textarea")&&d.bind("keyup",function(){a.checkDependencies()})}var a=this;if(this.options.dependencyConditionObject){this.toggleDependencyLock(true);var c;$.each(this.options.dependencyConditionObject,function(d,e){if(d=="and")$.each(e,function(f,g){c=g==":validate"||g==":required"?a.parentJFormPage.jFormer.form.find(":input[id^="+f+"]"):$("#"+f);
b($("#"+f))});else{c=e==":validate"||e==":required"?a.parentJFormPage.jFormer.form.find(":input[id^="+d+"]"):$("#"+d);b(c)}})}},toggleDependencyLock:function(b){var a=this.parentJFormPage.jFormer.getActivePage();if(b){this.disabledByDependency=true;if(this.options.dependencyDisplay=="hidden"){this.section.hide();a!==null&&this.parentJFormPage.jFormer.adjustHeight()}else this.section.addClass("jFormSectionDependencyDisabled").find(":input").each(function(c,d){d.disabled=true})}else{this.disabledByDependency=
false;if(this.options.dependencyDisplay=="hidden"){this.section.show();this.parentJFormPage.jFormer.adjustHeight()}else this.section.removeClass("jFormSectionDependencyDisabled").find(":input").each(function(c,d){d.disabled=false})}return this},checkDependencies:function(){var b=this,a=true;$.each(this.options.dependencyConditionObject,function(c,d){if(c=="and"){$.each(d,function(e,f){if(f==":required"&&!jFormerUtility.empty(b.parentJFormPage.jFormer.select(e).getValue())||f==":validate"&&b.parentJFormPage.jFormer.select(e).validate(true)||
f==":checked"&&$("#"+e).is(":checked")==true||$("#"+e).val()==f)a=false;else{a=true;return false}});if(a===false)return false}else if(d==":required"&&!jFormerUtility.empty(b.parentJFormPage.jFormer.select(c).getValue())||d==":validate"&&b.parentJFormPage.jFormer.select(c).validate(true)||d==":checked"&&$("#"+c).is(":checked")||$("#"+c).val()==d)return a=false;else a=true});this.toggleDependencyLock(a);return this},createInstanceButton:function(){var b=this;if(this.options.instancesAllowed!=1){var a=
this.id+"-addInstance";this.section.after('<button id="'+a+'" class="jFormSectionAddInstanceButton">'+this.options.instanceAddText+"</button>");this.parentJFormPage.page.find("#"+a).bind("click",function(c){c.preventDefault();b.addSectionInstance()})}},addSectionInstance:function(){var b=this;if(this.instanceArray.length<this.options.instancesAllowed||this.options.instancesAllowed===0){this.iterations++;var a=this.clone.clone(),c=this.id+"-removeInstance",d='<button id="'+c+'" class="jFormSectionRemoveInstanceButton">'+
this.options.instanceRemoveText+"</button>";$(a).append(d);a.find("#"+c).bind("click",function(e){var f=$(e.target);e.preventDefault();b.instanceArray=$.map(b.instanceArray,function(g){if(g.section.attr("id")==f.parent().attr("id"))g=null;return g});f.parent().remove();f.remove();if(b.instanceArray.length<=b.options.instancesAllowed||b.options.instancesAllowed===0)b.parentJFormPage.page.find("#"+b.id+"-addInstance").show();b.relabelSectionInstances(b.instanceArray)});this.parentJFormPage.page.find("#"+
this.id+"-addInstance").before(a);this.nameSectionInstance(a);this.instanceArray.push(this.createSectionInstanceObject(a,this.options));this.relabelSectionInstances(this.instanceArray);this.instanceArray.length>=this.options.instancesAllowed&&this.options.instancesAllowed!==0&&this.parentJFormPage.page.find("#"+this.id+"-addInstance").hide()}return this},removeInstance:function(){return this},nameSectionInstance:function(b){function a(f,g){e=c($(f).attr(g));e==""?$(f).attr(g,$(f).attr(g)+"-section"+
d.iterations+e):$(f).attr(g,$(f).attr(g).replace(e,"-section"+d.iterations+e))}function c(f){var g="";if(f.match(/(\-[A-Za-z0-9]+)&?/))g=f.match(/(\-[A-Za-z0-9]+)&?/)[1];return g}var d=this,e="";$(b).attr("id",$(b).attr("id")+"-section"+this.iterations);$(b).find("*").each(function(f,g){$(g).attr("id")&&a(g,"id");$(g).attr("for")&&a(g,"for");$(g).attr("name")&&a(g,"name")});return b},createSectionInstanceObject:function(b,a){b=$.extend(true,{},a);b.isInstance=true;var c=this,d=new JFormSection(this.parentJFormPage,
this.id+"-section"+this.iterations,b);$.each(this.jFormComponents,function(e,f){e=$.extend(true,{},f.options);e.isInstance=false;f=new window[f.type](d,f.id+"-section"+c.iterations,f.type,e);d.addComponent(f)});return d},relabelSectionInstances:function(b){$.each(b,function(a,c){if(a!==0){a=a+1;c=c.section.find(".jFormSectionTitle").children(":first");if(c.length>0)c.text().match(/(\([0-9]+\))$/)?c.text(c.text().replace(/(\([0-9]+\))$/,"("+a+")")):c.text(c.text()+" ("+a+")")}});this.parentJFormPage.jFormer.adjustHeight()},
addComponent:function(b){this.jFormComponents[b.id]=b;return this},clearValidation:function(){$.each(this.jFormComponents,function(b,a){a.clearValidation()})},getData:function(){var b=this;if(this.instanceArray.length>1){this.formData=[];$.each(this.instanceArray,function(a,c){var d={};$.each(c.jFormComponents,function(e,f){e=e.replace(/-section[0-9]+/,"");d[e]=f.getData()});b.formData.push(d)})}else{this.formData={};$.each(this.jFormComponents,function(a,c){b.formData[a]=c.getData()})}return this.formData},
setData:function(b){var a=this;$.isArray(b)?$.each(b,function(c,d){c!==0&&a.instanceArray[c]==undefined&&a.addSectionInstance();$.each(d,function(e,f){if(c!==0)e=e+"-section"+(c+1);a.instanceArray[c].jFormComponents[e]!=undefined&&a.instanceArray[c].jFormComponents[e].setData(f)})}):$.each(b,function(c,d){a.jFormComponents[c]!=undefined&&a.jFormComponents[c].setData(d)})}});
JFormComponent=Class.extend({init:function(b,a,c,d){this.options=$.extend({validationOptions:[],triggerFunction:null,dependencyDisplay:"hidden",dependencyConditionObject:null,instancesAllowed:1,instanceAddText:"Add Another",instanceRemoveText:"Remove",tipTargetPosition:"rightMiddle",tipCornerPosition:"leftTop",isInstance:false},d||{});this.parentJFormSection=b;this.id=a;this.component=$("#"+a+"-wrapper");this.formData=null;this.type=c;this.jValidator=jvalidator;this.errorMessageArray=[];this.tip=
null;this.tipDiv=this.component.find("#"+this.id+"-tip");this.tipTarget=null;this.validationPassed=true;this.requiredCompleted=this.isRequired=this.disabledByDependency=false;if(this.options.triggerFunction!==null){var e=this.options.triggerFunction;this.options.triggerFunction=function(){eval(e)}}if(this.options.isInstance)this.clone=this.instanceArray=null;else{if(this.options.instancesAllowed!=1){this.clone=this.component.clone();this.iterations=1}else this.clone=null;this.instanceArray=[this];
this.createInstanceButton()}this.initialize();this.reformValidations();this.addHighlightListeners();this.defineComponentChangedEventListener();this.catchComponentChangedEventListener();this.addDependencyListeners();$.trim(this.tipDiv.html())!==""&&this.addTip();this.addTipListeners()},addHighlightListeners:function(){var b=this;this.component.find(":input:not(button):not(hidden)").each(function(a,c){$(c).bind("focus",function(){b.highlight()});$(c).bind("blur",function(){b.removeHighlight();if((b.type==
"JFormComponentName"||b.type=="JFormComponentAddress")&&b.changed===true)b.validate()})});if(this.component.find("input:checkbox, input:radio").length>0){this.component.mouseenter(function(){b.highlight()});this.component.mouseleave(function(){b.removeHighlight()})}return this},reformValidations:function(){var b={},a=this;$.each(this.options.validationOptions,function(c,d){if(d=="required")a.isRequired=true;if(c>=0){c=d;d={}}if(typeof d!="object"){var e=d;d={};d[c]=e}d.value="";b[c]=d;b[c].component=
a.component});this.options.validationOptions=b},defineComponentChangedEventListener:function(){var b=this;this.component.find("input:checkbox, input:radio").each(function(a,c){$(c).bind("click",function(){$(this).trigger("jFormComponent:changed",b)})});this.component.find(":input:not(button, :checkbox, :radio)").each(function(a,c){$(c).bind("change",function(){$(this).trigger("jFormComponent:changed",b)})})},catchComponentChangedEventListener:function(){var b=this;this.component.bind("jFormComponent:changed",
function(){b.options.triggerFunction!==null&&b.options.triggerFunction();if(b.type=="JFormComponentName"||b.type=="JFormComponentAddress"||b.type=="JFormComponentLikert")b.changed=true;b.parentJFormSection.parentJFormPage.jFormer.options.clientSideValidation&&b.validate();b.parentJFormSection.parentJFormPage.jFormer.options.progressBar!==false&&b.parentJFormSection.parentJFormPage.jFormer.updateProgressBar()})},highlight:function(){this.component.addClass("jFormComponentHighlight").trigger("jFormComponent:highlighted",
this.component);this.component.trigger("jFormComponent:showTip",this.component)},removeHighlight:function(){var b=this;this.component.removeClass("jFormComponentHighlight").trigger("jFormComponent:highlightRemoved",this.component);setTimeout(function(){b.component.hasClass("jFormComponentHighlight")||b.component.trigger("jFormComponent:hideTip",b.component)},1)},getData:function(){var b=this;if(this.instanceArray.length>1){this.formData=[];$.each(this.instanceArray,function(a,c){a=c.getValue();b.formData.push(a)})}else this.formData=
this.getValue();return this.formData},setData:function(b){var a=this;$.isArray(b)?$.each(b,function(c,d){if(a.type=="JFormComponentMultipleChoice"&&($.isArray(d)||a.multipeChoiceType=="radio")||a.type!="JFormComponentMultipleChoice"){c!==0&&a.instanceArray[c]==undefined&&a.addInstance();a.instanceArray[c].setValue(d)}else{a.setValue(b);return false}}):this.setValue(b)},addDependencyListeners:function(){function b(d){d.each(function(e,f){$(f).bind("jFormComponent:changed",function(){a.checkDependencies()});
$(f).is("input:text, textarea")&&$(f).bind("keyup",function(){a.checkDependencies()})})}var a=this,c;if(this.options.dependencyConditionObject){this.toggleDependencyLock(true);$.each(this.options.dependencyConditionObject,function(d,e){if(d=="and")$.each(e,function(f,g){c=g==":validate"||g==":required"?a.parentJFormSection.parentJFormPage.jFormer.form.find(":input[id^="+f+"]"):$("#"+f);b(c)});else{c=e==":validate"||e==":required"?a.parentJFormSection.parentJFormPage.jFormer.form.find(":input[id^="+
d+"]"):$("#"+d);b(c)}})}},toggleDependencyLock:function(b){var a=this.parentJFormSection.parentJFormPage.jFormer.getActivePage();if(b){this.disabledByDependency=true;if(this.options.dependencyDisplay=="hidden"){if(this.component.is(":visible")){this.component.hide();a!==null&&this.parentJFormSection.parentJFormPage.jFormer.adjustHeight()}}else this.component.hasClass("jFormComponentDependencyDisabled")||this.component.addClass("jFormComponentDependencyDisabled").find("input, select, textarea").each(function(c,
d){d.disabled=true})}else{this.disabledByDependency=false;if(this.options.dependencyDisplay=="hidden"){if(this.component.is(":hidden")){this.component.show();this.parentJFormSection.parentJFormPage.jFormer.adjustHeight()}}else this.component.hasClass("jFormComponentDependencyDisabled")&&this.component.removeClass("jFormComponentDependencyDisabled").find("input, select, textarea").each(function(c,d){d.disabled=false})}return this},checkDependencies:function(){var b=this,a=true;$.each(this.options.dependencyConditionObject,
function(c,d){if(c=="and"){$.each(d,function(e,f){if(f==":required"&&!jFormerUtility.empty(b.parentJFormSection.parentJFormPage.jFormer.select(e).getValue())||f==":validate"&&b.parentJFormSection.parentJFormPage.jFormer.select(e).validate(true)||f==":checked"&&$("#"+e).is(":checked")==true||$("#"+e).val()==f)a=false;else{a=true;return false}});if(a===false)return false}else if(d==":required"&&!jFormerUtility.empty(b.parentJFormSection.parentJFormPage.jFormer.select(c).getValue())||d==":validate"&&
b.parentJFormSection.parentJFormPage.jFormer.select(c).validate(true)||d==":checked"&&$("#"+c).is(":checked")||$("#"+c).val()==d)return a=false;else a=true});this.toggleDependencyLock(a);return this},createInstanceButton:function(){var b=this;if(this.options.instancesAllowed!=1){this.component.after('<button id="'+this.id+'-addInstance" class="jFormComponentAddInstanceButton">'+this.options.instanceAddText+"</button>");this.parentJFormSection.section.find("#"+this.id+"-addInstance").bind("click",
function(a){a.preventDefault();b.addInstance()})}},addInstance:function(){var b=this;if(this.instanceArray.length<this.options.instancesAllowed||this.options.instancesAllowed===0){var a=this.clone.clone(),c=this.parentJFormSection.section.find("#"+this.id+"-addInstance");$(a).append('<button id="'+this.id+'-removeInstance" class="jFormComponentRemoveInstanceButton">'+this.options.instanceRemoveText+"</button>");a.find("#"+this.id+"-removeInstance").bind("click",function(d){var e=$(d.target);d.preventDefault();
b.instanceArray=$.map(b.instanceArray,function(f){if(f.component.attr("id")==e.parent().attr("id")){f.tip!=null&&f.tip.hide();f=null}return f});e.parent().remove();e.remove();if(b.instanceArray.length<=b.options.instancesAllowed||b.options.instancesAllowed===0)c.show();b.relabelInstances(b.instanceArray)});c.before(a);this.nameInstance(a);this.instanceArray.push(this.createInstanceObject(a,this.options));this.relabelInstances(this.instanceArray);this.instanceArray.length==this.options.instancesAllowed&&
this.options.instancesAllowed!==0&&c.hide()}return this},nameInstance:function(b){function a(f,g){e=c($(f).attr(g));e==""?$(f).attr(g,$(f).attr(g)+"-instance"+d.iterations+e):$(f).attr(g,$(f).attr(g).replace(e,"-instance"+d.iterations+e))}function c(f){var g="";if(f.match(/\-(div|label|tip|removeInstance)\b/))g=f.match(/\-(div|label|tip|removeInstance)\b/)[0];return g}b=$(b);var d=this,e="";this.iterations++;b.attr("id",b.attr("id").replace("-wrapper","-instance"+this.iterations+"-wrapper"));b.find("*").each(function(f,
g){$(g).attr("id")&&a(g,"id");$(g).attr("for")&&a(g,"for");$(g).attr("name")&&a(g,"name")});return b},createInstanceObject:function(b,a){var c={};$.each(a,function(d,e){c[d]=e});c.isInstance=true;c.triggerFunction=null;return new window[this.type](this.parentJFormSection,this.id+"-instance"+this.iterations,this.type,c)},relabelInstances:function(b){$.each(b,function(a,c){if(a!==0){a=a+1;var d=c.component.find("#"+c.component.attr("id").replace("-wrapper","-label"));if(d.length>0){c=d.find("span.jFormComponentLabelRequiredStar");
c.length>0&&c.remove();if(d.html().match(/:$/))d.html(d.html().replace(/(\([0-9]+\))?:/," ("+a+"):"));else d.text().match(/(\([0-9]+\))$/)?d.text(d.text().replace(/(\([0-9]+\))$/,"("+a+")")):d.text(d.text()+" ("+a+")")}else{d=c.component.find("label");c=d.find("span.jFormComponentLabelRequiredStar");c.length>0&&c.remove();d.text().match(/(\([0-9]+\))$/)?d.text(d.text().replace(/(\([0-9]+\))$/,"("+a+")")):d.text(d.text()+" ("+a+")")}d.append(c)}});this.parentJFormSection.parentJFormPage.jFormer.adjustHeight()},
addTip:function(){var b=this;if(typeof this.tip!=="function")this.tip=this.tipTarget.simpletip({persistent:true,focus:true,position:"topRight",content:b.tipDiv,baseClass:"jFormerTip",hideEffect:"none",onBeforeShow:function(){if(b.tipDiv.find(".tipContent").text()=="")return false},onShow:function(){var a=$(window).height(),c=this.getTooltip().offset().top+this.getTooltip().outerHeight()+12;$(window).scrollTop()+a<c&&$.scrollTo(c-a+"px",250,{axis:"y"})}}).simpletip()},addTipListeners:function(){var b=
this;this.component.bind("jFormComponent:showTip",function(){b.tip&&typeof b.tip=="object"&&$.trim(b.tipDiv.html())!==""&&b.tip.show()});this.component.bind("jFormComponent:hideTip",function(){b.tip&&typeof b.tip=="object"&&b.tip.hide()});return this},clearValidation:function(){this.errorMessageArray=[];this.validationPassed=true;this.component.removeClass("jFormComponentValidationFailed");this.component.addClass("jFormComponentValidationPassed");this.component.find(".tipErrorUl").remove();if(this.tip&&
typeof this.tip=="object"){this.tip.update(this.tipDiv.html());$.trim(this.tipDiv.find(".tipContent").html())==""&&this.tipDiv.hide()}},initialize:function(){},getValue:function(){},setValue:function(){},validate:function(b){if(this.options.validationOptions.length<1)return true;if(b)var a=true;var c=this;this.clearValidation();var d=this.getValue();if(d===null)return true;$.each(this.options.validationOptions,function(e,f){if(c.type!="JFormComponentSingleLineText"&&c.type!="JFormComponentTextArea")e+=
c.type;f.value=d;f=c.jValidator.validate(e,f);if(f=="success"){if(e.match("required"))c.requiredCompleted=true;return true}else{if(e.match("required")){c.requiredCompleted=false;c.parentJFormSection.parentJFormPage.jFormer.options.pageNavigator!=false&&$("#navigatePage"+(c.parentJFormSection.parentJFormPage.jFormer.currentJFormPageIdArrayIndex+1)).addClass("jFormPageNavigatorLinkWarning")}if(b)a=false;else $.merge(c.errorMessageArray,f)}});if(b)return a;else{if(this.errorMessageArray.length>0){this.handleErrors();
this.validationPassed=false}return this.validationPassed}},handleServerValidationResponse:function(b){$.each(this.instanceArray,function(a,c){c.clearValidation()});if(b!=null&&b.length>0)if(this.instanceArray.length!=1)$.each(this.instanceArray,function(a,c){if(!jFormerUtility.empty(b[a])){$.each(b[a],function(d,e){e!=""&&c.errorMessageArray.push(e)});if(c.errorMessageArray.length>0){c.validationPassed=false;c.handleErrors()}}});else{this.errorMessageArray=b;this.validationPassed=false;this.handleErrors()}},
handleErrors:function(){var b=this;this.component.removeClass("jFormComponentValidationPassed");this.component.addClass("jFormComponentValidationFailed");this.tipDiv.length==0&&this.createTipDiv();var a=$('<ul id="'+this.id+'-tipErrorUl" class="tipErrorUl"></ul>');$.each(this.errorMessageArray,function(c,d){a.append("<li>"+d+"</li>")});this.tipDiv.find(".tipContent").append(a);this.tip.update(b.tipDiv.html());this.component.hasClass("jFormComponentHighlight")&&this.tip.show()},createTipDiv:function(){this.tipDiv=
$('<div id="'+this.id+'-tip" style="display: none;"></div>');this.component.append(this.tipDiv);this.addTip()}});
JFormComponentAddress=JFormComponent.extend({init:function(b,a,c,d){this._super(b,a,c,d)},initialize:function(){this.tipTarget=this.component;this.options.emptyValue&&this.addEmptyValues();this.changed=false},setValue:function(b){var a=this;if(this.options.emptyValue){b.addressLine1!=this.options.emptyValue.addressLine1&&a.component.find(":input[id*=addressLine1]").removeClass("defaultValue").val(b.addressLine1).blur();b.addressLine2!=this.options.emptyValue.addressLine2&&a.component.find(":input[id*=addressLine2]").removeClass("defaultValue").val(b.addressLine2).blur();
b.city!=this.options.emptyValue.city&&a.component.find(":input[id*=city]").removeClass("defaultValue").val(b.city).blur();if(b.state!=this.options.emptyValue.state||this.options.emptyValue.state==undefined)a.component.find(":input[id*=state]").removeClass("defaultValue").val(b.state).blur();b.zip!=this.options.emptyValue.zip&&a.component.find(":input[id*=zip]").removeClass("defaultValue").val(b.zip).blur()}else{a.component.find(":input[id*=addressLine1]").val(b.addressLine1);a.component.find(":input[id*=addressLine2]").val(b.addressLine2);
a.component.find(":input[id*=city]").val(b.city);a.component.find(":input[id*=state]").val(b.state);a.component.find(":input[id*=zip]").val(b.zip)}a.component.find(":input[id*=country]").val(b.country);this.validate(true)},getValue:function(){if(this.disabledByDependency||this.parentJFormSection.disabledByDependency)return null;var b={},a=this;b.addressLine1=a.component.find(":input[id*=addressLine1]").val();b.addressLine2=a.component.find(":input[id*=addressLine2]").val();b.city=a.component.find(":input[id*=city]").val();
b.state=a.component.find(":input[id*=state]").val();b.zip=a.component.find(":input[id*=zip]").val();b.country=a.component.find(":input[id*=country]").val();this.component.find(":input").each(function(c,d){b[$(d).attr("id").replace(a.id+"-","")]=$(d).val()});if(this.options.emptyValue){if(b.addressLine1==this.options.emptyValue.addressLine1)b.addressLine1="";if(b.addressLine2==this.options.emptyValue.addressLine2)b.addressLine2="";if(b.city==this.options.emptyValue.city)b.city="";if(b.state==this.options.emptyValue.state)b.state=
"";if(b.zip==this.options.emptyValue.zip)b.zip=""}return b},validate:function(){var b=this;this.changed||this._super();setTimeout(function(){if(!b.component.hasClass("jFormComponentHighlight")){if(b.options.validationOptions.length<1)return true;b.clearValidation();$.each(b.options.validationOptions,function(a,c){a+=b.type;c.value=b.getValue();a=b.jValidator.validate(a,c);if(a!="success"){$.merge(b.errorMessageArray,a);b.validationPassed=false}});b.errorMessageArray.length>0&&b.handleErrors();b.changed=
false;return b.validationPassed}},1)},addEmptyValues:function(){var b=this;$.each(this.options.emptyValue,function(a,c){a=b.component.find("input[id*="+a+"]");a.addClass("defaultValue");a.focus(function(d){if($.trim($(d.target).val())==c){$(d.target).val("");$(d.target).removeClass("defaultValue")}});a.blur(function(d){if($.trim($(d.target).val())==""){$(d.target).addClass("defaultValue");$(d.target).val(c)}});a.trigger("blur")})}});
JFormComponentDate=JFormComponent.extend({init:function(b,a,c,d){this._super(b,a,c,d)},initialize:function(){this.addCalendar();this.tipTarget=this.component.find(".jFormComponentDateSelector");if(this.tipTarget==undefined)this.tipTarget=this.component;if(this.options.validationOptions.length==0){this.options.validationOptions.push("date");this.reformValidations()}},highlight:function(){var b=this;this.component.addClass("jFormComponentHighlight").trigger("jFormComponent:highlighted",this.component);
setTimeout(function(){b.component.trigger("jFormComponent:showTip",b.component)},1)},addCalendar:function(){var b=this.component.find("input:text");b.date_input();b.bind("keyup",function(a){a.keyCode==9||a.keyCode==27||a.keyCode==13||a.keyCode==33||a.keyCode==34||a.keyCode==38||a.keyCode==40||a.keyCode==37||a.keyCode==39||b.val().length==10&&b.trigger("change")})},getValue:function(){if(this.disabledByDependency||this.parentJFormSection.disabledByDependency)return null;var b={month:"",day:"",year:""},
a=$("#"+this.id).val();if(a!=""){a=a.split(a.match(/[^\d]/));if(a[0]!=undefined)b.month=a[0];if(a[1]!=undefined)b.day=a[1];if(a[2]!=undefined)b.year=a[2]}return b},setValue:function(b){function a(c){if(c==""||c=="undefined")return"";c=""+c;if(c.length==1)c="0"+c;return c}if(b==null||b.month=="undefined"||b.year=="undefined"||b.day=="undefined")$("#"+this.id).val("");else{$("#"+this.id).val(a(b.month)+"/"+a(b.day)+"/"+b.year);$("#"+this.id).val()=="//"&&$("#"+this.id).val("");this.validate(true)}}});
JFormComponentDropDown=JFormComponent.extend({init:function(b,a,c,d){this._super(b,a,c,d)},initialize:function(){this.tipTarget=this.component.find("select:last")},getValue:function(){if(this.disabledByDependency||this.parentJFormSection.disabledByDependency)return null;return $("#"+this.id).val()},setValue:function(b){$("#"+this.id).val(b).trigger("jFormComponent:changed");this.validate(true)}});
JFormComponentFile=JFormComponent.extend({init:function(b,a,c,d){this._super(b,a,c,d)},initialize:function(){var b=this.component.find("button").parent();if(b.length<1)b=this.component.find("input:file");this.tipTarget=b;this.setOnChange()},setOnChange:function(){var b=this;this.component.find("input:file").change(function(a){a=a.target.value.replace(/.+\\/,"");b.component.find("input:text").val(a)})},setValue:function(){return false},getValue:function(){if(this.disabledByDependency||this.parentJFormSection.disabledByDependency)return null;
return this.component.find("input:text").val()},validate:function(){this._super()}});JFormComponentHidden=JFormComponent.extend({init:function(b,a,c,d){this._super(b,a,c,d)},getValue:function(){if(this.disabledByDependency||this.parentJFormSection.disabledByDependency)return null;return $("#"+this.id).val()},validate:function(){this._super()}});
JFormComponentLikert=JFormComponent.extend({init:function(b,a,c,d){this._super(b,a,c,d)},initialize:function(){var b=this;this.changed=false;this.tipTarget=this.component;this.statementComponentArray={};$.each(this.options.statementArray,function(a,c){if(!jFormerUtility.empty(b.options.validationOptions))c.validationOptions=b.options.validationOptions;c=new JFormComponentLikertStatement(b.parentJFormSection,a,"JFormComponentLikertStatement",c);c.id=b.id+"-"+c.id;b.parentJFormSection.addComponent(c);
b.statementComponentArray[a]=c})},clearValidation:function(){$.each(this.statementComponentArray,function(b,a){a.clearValidation()})},setValue:function(){},catchComponentChangedEventListener:function(){return null},addHighlightListeners:function(){return null},defineComponentChangedEventListener:function(){return null},addTipListeners:function(){return null},getValue:function(){var b={};$.each(this.statementComponentArray,function(a,c){b[a]=c.getValue()});return b},handleErrors:function(){return true},
handleServerValidationResponse:function(b){var a=this;b.length>0&&$.each(this.instanceArray,function(c,d){$.each(b,function(e,f){$.each(f,function(g,i){g=a.parentJFormSection.components[d.id+"-"+g];if(g!=undefined){g.errorMessageArray=[i];g.validationPassed=false;g.handleErrors()}})})})},validate:function(){return true}});
JFormComponentLikertStatement=JFormComponent.extend({init:function(b,a,c,d){this._super(b,a,c,d)},initialize:function(){this.changed=false;this.tipTarget=this.component=$("input[name="+this.id+"]:first").closest("tr");this.tipDiv=this.component.find("div.jFormComponentLikertStatementTip");this.component.find("td").click(function(b){b.preventDefault();$(b.target).find("input").attr("checked","checked").trigger("click")})},setValue:function(b){this.component.find("input").val([b]);this.validate(true)},
validate:function(){this._super()},getValue:function(){if(this.disabledByDependency||this.parentJFormSection.disabledByDependency)return null;var b=this.component.find("input:checked");return b=b.length>0?b.val():""}});
JFormComponentMultipleChoice=JFormComponent.extend({init:function(b,a,c,d){this._super(b,a,c,d)},initialize:function(){this.tipTarget=this.component;this.addChoiceTips()},addChoiceTips:function(){var b=this.component.find("div.jFormComponentMultipleChoiceTip");b.length>0&&b.each(function(a,c){a=$(c).prev("label").find(".jFormComponentMultipleChoiceTipIcon");if(a.length==0)a=$(c).parent();a.simpletip({position:"topRight",content:$(c),baseClass:"jFormerTip jFormComponentMultipleChoiceTip",hideEffect:"none"})})},
getValue:function(){if(this.disabledByDependency||this.parentJFormSection.disabledByDependency)return null;var b;if(this.options.multipleChoiceType=="checkbox"){b=[];this.component.find("input:checked").each(function(a,c){b.push($(c).val())})}else b=this.component.find("input:checked").length>0?this.component.find("input:checked").val():"";return b},setValue:function(b){var a=this;this.options.multipleChoiceType=="checkbox"?$.each(b,function(c,d){a.component.find("input[value='"+d+"']").attr("checked",
"checked").trigger("component:changed")}):this.component.find("input[value='"+b+"']").attr("checked","checked").trigger("component:changed");this.validate(true)}});
JFormComponentName=JFormComponent.extend({init:function(b,a,c,d){this._super(b,a,c,d)},initialize:function(){this.tipTarget=this.component.find("input:last");this.options.emptyValue&&this.addEmptyValues();this.changed=false},setValue:function(b){var a=this;if(this.options.emptyValue){b.firstName!=a.options.emptyValue.firstName&&a.component.find("input[id*=firstName]").removeClass("defaultValue").val(b.firstName).blur();a.component.find("input[id*=middleInitial]").removeClass("defaultValue").val(b.middleInitial).blur();
b.lastName!=a.options.emptyValue.lastName&&a.component.find("input[id*=lastName]").removeClass("defaultValue").val(b.lastName).blur()}else{a.component.find("input[id*=firstName]").val(b.firstName);a.component.find("input[id*=middleInitial]").val(b.middleInitial);a.component.find("input[id*=lastName]").val(b.lastName)}this.validate(true)},getValue:function(){if(this.disabledByDependency||this.parentJFormSection.disabledByDependency)return null;var b={};b.firstName=this.component.find("input[id*=firstName]").val();
b.middleInitial=this.component.find("input[id*=middleInitial]").val();b.lastName=this.component.find("input[id*=lastName]").val();if(this.options.emptyValue){if(b.firstName==this.options.emptyValue.firstName)b.firstName="";if(this.component.find("input[id$=middleInitial]").hasClass("defaultValue"))b.middleInitial="";if(b.lastName==this.options.emptyValue.lastName)b.lastName=""}return b},validate:function(){var b=this;this.changed||this._super();setTimeout(function(){if(!b.component.hasClass("jFormComponentHighlight")){if(b.options.validationOptions.length<
1)return true;b.clearValidation();$.each(b.options.validationOptions,function(a,c){a+=b.type;c.value=b.getValue();a=b.jValidator.validate(a,c);if(a!="success"){$.merge(b.errorMessageArray,a);b.validationPassed=false}});b.errorMessageArray.length>0&&b.handleErrors();b.changed=false;return b.validationPassed}},1)},addEmptyValues:function(){var b=this;$.each(this.options.emptyValue,function(a,c){a=b.component.find("input[id*="+a+"]");a.addClass("defaultValue");a.focus(function(d){if($.trim($(d.target).val())==
c){$(d.target).val("");$(d.target).removeClass("defaultValue")}});a.blur(function(d){if($.trim($(d.target).val())==""){$(d.target).addClass("defaultValue");$(d.target).val(c)}});a.trigger("blur")})}});
JFormComponentSingleLineText=JFormComponent.extend({init:function(b,a,c,d){this._super(b,a,c,d)},initialize:function(){this.tipTarget=this.component.find("input:last");this.options.mask&&this.addMask();this.options.emptyValue&&this.addEmptyValue();this.component.find("input:password").length==1&&this.options.showStrength&&this.addPasswordStrength()},addMask:function(){this.component.find("input").mask("?"+this.options.mask,{placeholder:" "})},addPasswordStrength:function(){var b=this,a=this.component,
c="<p id='"+this.id+"-strength' > Strength: <b> "+this.getPasswordStrength().strength+" </b> </p>";a.find("div.jFormComponentTip").append(c);a.find("input:password").bind("keyup",function(){a.find("#"+b.id+"-strength b").text(b.getPasswordStrength().strength);b.tip.update(a.find("div.jFormComponentTip").html())})},getPasswordStrength:function(){var b=this.getValue(),a=0,c="None";if(b.length>=6)a+=1;if(b.length>=10)a+=1;if(b.match(/[a-z]/))a+=1;if(b.match(/[A-Z]/))a+=1;if(b.match(/\d+/))a+=1;if(b.match(/(\d.*\d)/))a+=
1;if(b.match(/[!,@#$%\^&*?_~]/))a+=1;if(b.match(/([!,@#$%\^&*?_~].*[!,@#$%\^&*?_~])/))a+=1;if(b.match(/[a-z]/)&&b.match(/[A-Z]/))a+=1;if(b.match(/\d/)&&b.match(/\D/))a+=1;if(b.match(/[a-z]/)&&b.match(/[A-Z]/)&&b.match(/\d/)&&b.match(/[!,@#$%\^&*?_~]/))a+=1;if(a===0)c="None";else if(a<=1)c="Very Weak";else if(a<=3)c="Weak";else if(a<=5)c="Good";else if(a<=7)c="Strong";else if(a>7)c="Very Strong";return{score:a,strength:c}},getValue:function(){if(this.disabledByDependency||this.parentJFormSection.disabledByDependency)return null;
var b=$("#"+this.id).val();return this.options.emptyValue?b==this.options.emptyValue?"":b:b},setValue:function(b){$("#"+this.id).val(b).removeClass("defaultValue");this.validate(true)},addEmptyValue:function(){var b=this.options.emptyValue,a=this.component.find("input");a.addClass("defaultValue");a.val(b);var c="";a.focus(function(d){c=$(d.target);if($.trim(c.val())==b){c.val("");c.removeClass("defaultValue")}});a.blur(function(d){c=$(d.target);if($.trim(c.val())==""){c.addClass("defaultValue");c.val(b)}})}});
JFormComponentTextArea=JFormComponent.extend({init:function(b,a,c,d){this._super(b,a,c,d);this.options.allowTabbing&&this.allowTabbing()},initialize:function(){this.tipTarget=this.component.find("textarea");this.options.emptyValue&&this.addEmptyValue()},allowTabbing:function(){this.component.find("textarea").bind("keydown",function(b){if(b!=null)if(b.keyCode==9){if(this.setSelectionRange){var a=this.selectionStart,c=this.selectionEnd;this.value=this.value.substring(0,a)+"\t"+this.value.substr(c);
this.setSelectionRange(a+1,a+1);this.focus()}else if(this.createTextRange){document.selection.createRange().text="\t";b.returnValue=false}b.preventDefault&&b.preventDefault();return false}})},getValue:function(){if(this.disabledByDependency||this.parentJFormSection.disabledByDependency)return null;return $("#"+this.id).val()},setValue:function(b){$("#"+this.id).val(b);this.validate(true)}});
