/*
 * Superfish v1.4.8 - jQuery menu widget
 * Copyright (c) 2008 Joel Birch
 *
 * Dual licensed under the MIT and GPL licenses:
 * 	http://www.opensource.org/licenses/mit-license.php
 * 	http://www.gnu.org/licenses/gpl.html
 *
 * CHANGELOG: http://users.tpg.com.au/j_birch/plugins/superfish/changelog.txt
 */
;(function($){$.fn.superfish=function(op){var sf=$.fn.superfish,c=sf.c,$arrow=$(['<span class="',c.arrowClass,'"> »</span>'].join('')),over=function(){var $$=$(this),menu=getMenu($$);clearTimeout(menu.sfTimer);$$.showSuperfishUl().siblings().hideSuperfishUl();},out=function(){var $$=$(this),menu=getMenu($$),o=sf.op;clearTimeout(menu.sfTimer);menu.sfTimer=setTimeout(function(){o.retainPath=($.inArray($$[0],o.$path)>-1);$$.hideSuperfishUl();if(o.$path.length&&$$.parents(['li.',o.hoverClass].join('')).length<1){over.call(o.$path);}},o.delay);},getMenu=function($menu){var menu=$menu.parents(['ul.',c.menuClass,':first'].join(''))[0];sf.op=sf.o[menu.serial];return menu;},addArrow=function($a){$a.addClass(c.anchorClass).append($arrow.clone());};return this.each(function(){var s=this.serial=sf.o.length;var o=$.extend({},sf.defaults,op);o.$path=$('li.'+o.pathClass,this).slice(0,o.pathLevels).each(function(){$(this).addClass([o.hoverClass,c.bcClass].join(' ')).filter('li:has(ul)').removeClass(o.pathClass);});sf.o[s]=sf.op=o;$('li:has(ul)',this)[($.fn.hoverIntent&&!o.disableHI)?'hoverIntent':'hover'](over,out).each(function(){if(o.autoArrows)addArrow($('>a:first-child',this));}).not('.'+c.bcClass).hideSuperfishUl();var $a=$('a',this);$a.each(function(i){var $li=$a.eq(i).parents('li');$a.eq(i).focus(function(){over.call($li);}).blur(function(){out.call($li);});});o.onInit.call(this);}).each(function(){var menuClasses=[c.menuClass];if(sf.op.dropShadows&&!($.browser.msie&&$.browser.version<7))menuClasses.push(c.shadowClass);$(this).addClass(menuClasses.join(' '));});};var sf=$.fn.superfish;sf.o=[];sf.op={};sf.IE7fix=function(){var o=sf.op;if($.browser.msie&&$.browser.version>6&&o.dropShadows&&o.animation.opacity!=undefined)
this.toggleClass(sf.c.shadowClass+'-off');};sf.c={bcClass:'sf-breadcrumb',menuClass:'sf-js-enabled',anchorClass:'sf-with-ul',arrowClass:'sf-sub-indicator',shadowClass:'sf-shadow'};sf.defaults={hoverClass:'sfHover',pathClass:'overideThisToUse',pathLevels:1,delay:800,animation:{opacity:'show'},speed:'normal',autoArrows:true,dropShadows:true,disableHI:false,onInit:function(){},onBeforeShow:function(){},onShow:function(){},onHide:function(){}};$.fn.extend({hideSuperfishUl:function(){var o=sf.op,not=(o.retainPath===true)?o.$path:'';o.retainPath=false;var $ul=$(['li.',o.hoverClass].join(''),this).add(this).not(not).removeClass(o.hoverClass).find('>ul').hide().css('visibility','hidden');o.onHide.call($ul);return this;},showSuperfishUl:function(){var o=sf.op,sh=sf.c.shadowClass+'-off',$ul=this.addClass(o.hoverClass).find('>ul:hidden').css('visibility','visible');sf.IE7fix.call($ul);o.onBeforeShow.call($ul);$ul.animate(o.animation,o.speed,function(){sf.IE7fix.call($ul);o.onShow.call($ul);});return this;}});})(jQuery);

/* Tabify */
(function(a){a.fn.extend({tabify:function(b){function d(b){a(b).addClass("active");a(c(b)).show();a(b).siblings("li").each(function(){a(this).removeClass("active");a(c(this)).hide()})}function c(b){hash=a(b).find("a").attr("href");hash=hash.substring(0,hash.length-4);return hash}return this.each(function(){function g(){if(location.hash&&a(e).find("a[href="+location.hash+"]").length>0){d(a(e).find("a[href="+location.hash+"]").parent())}}var e=this;var f={ul:a(e)};a(this).find("li a").each(function(){a(this).attr("href",a(this).attr("href")+"-tab")});if(location.hash){g()}setInterval(g,100);a(this).find("li").each(function(){if(a(this).hasClass("active")){a(c(this)).show()}else{a(c(this)).hide()}});if(b){a.getScript("/js/BrightcoveExperiences.js")}})}})})(jQuery);

/* Easing */
jQuery.easing['jswing']=jQuery.easing['swing'];jQuery.extend(jQuery.easing,{def:'easeOutQuad',swing:function(x,t,b,c,d){return jQuery.easing[jQuery.easing.def](x,t,b,c,d);},easeInQuad:function(x,t,b,c,d){return c*(t/=d)*t+b;},easeOutQuad:function(x,t,b,c,d){return-c*(t/=d)*(t-2)+b;},easeInOutQuad:function(x,t,b,c,d){if((t/=d/2)<1)return c/2*t*t+b;return-c/2*((--t)*(t-2)-1)+b;},easeInCubic:function(x,t,b,c,d){return c*(t/=d)*t*t+b;},easeOutCubic:function(x,t,b,c,d){return c*((t=t/d-1)*t*t+1)+b;},easeInOutCubic:function(x,t,b,c,d){if((t/=d/2)<1)return c/2*t*t*t+b;return c/2*((t-=2)*t*t+2)+b;},easeInQuart:function(x,t,b,c,d){return c*(t/=d)*t*t*t+b;},easeOutQuart:function(x,t,b,c,d){return-c*((t=t/d-1)*t*t*t-1)+b;},easeInOutQuart:function(x,t,b,c,d){if((t/=d/2)<1)return c/2*t*t*t*t+b;return-c/2*((t-=2)*t*t*t-2)+b;},easeInQuint:function(x,t,b,c,d){return c*(t/=d)*t*t*t*t+b;},easeOutQuint:function(x,t,b,c,d){return c*((t=t/d-1)*t*t*t*t+1)+b;},easeInOutQuint:function(x,t,b,c,d){if((t/=d/2)<1)return c/2*t*t*t*t*t+b;return c/2*((t-=2)*t*t*t*t+2)+b;},easeInSine:function(x,t,b,c,d){return-c*Math.cos(t/d*(Math.PI/2))+c+b;},easeOutSine:function(x,t,b,c,d){return c*Math.sin(t/d*(Math.PI/2))+b;},easeInOutSine:function(x,t,b,c,d){return-c/2*(Math.cos(Math.PI*t/d)-1)+b;},easeInExpo:function(x,t,b,c,d){return(t==0)?b:c*Math.pow(2,10*(t/d-1))+b;},easeOutExpo:function(x,t,b,c,d){return(t==d)?b+c:c*(-Math.pow(2,-10*t/d)+1)+b;},easeInOutExpo:function(x,t,b,c,d){if(t==0)return b;if(t==d)return b+c;if((t/=d/2)<1)return c/2*Math.pow(2,10*(t-1))+b;return c/2*(-Math.pow(2,-10*--t)+2)+b;},easeInCirc:function(x,t,b,c,d){return-c*(Math.sqrt(1-(t/=d)*t)-1)+b;},easeOutCirc:function(x,t,b,c,d){return c*Math.sqrt(1-(t=t/d-1)*t)+b;},easeInOutCirc:function(x,t,b,c,d){if((t/=d/2)<1)return-c/2*(Math.sqrt(1-t*t)-1)+b;return c/2*(Math.sqrt(1-(t-=2)*t)+1)+b;},easeInElastic:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0)return b;if((t/=d)==1)return b+c;if(!p)p=d*.3;if(a<Math.abs(c)){a=c;var s=p/4;}
else var s=p/(2*Math.PI)*Math.asin(c/a);return-(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b;},easeOutElastic:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0)return b;if((t/=d)==1)return b+c;if(!p)p=d*.3;if(a<Math.abs(c)){a=c;var s=p/4;}
else var s=p/(2*Math.PI)*Math.asin(c/a);return a*Math.pow(2,-10*t)*Math.sin((t*d-s)*(2*Math.PI)/p)+c+b;},easeInOutElastic:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0)return b;if((t/=d/2)==2)return b+c;if(!p)p=d*(.3*1.5);if(a<Math.abs(c)){a=c;var s=p/4;}
else var s=p/(2*Math.PI)*Math.asin(c/a);if(t<1)return-.5*(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b;return a*Math.pow(2,-10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p)*.5+c+b;},easeInBack:function(x,t,b,c,d,s){if(s==undefined)s=1.70158;return c*(t/=d)*t*((s+1)*t-s)+b;},easeOutBack:function(x,t,b,c,d,s){if(s==undefined)s=1.70158;return c*((t=t/d-1)*t*((s+1)*t+s)+1)+b;},easeInOutBack:function(x,t,b,c,d,s){if(s==undefined)s=1.70158;if((t/=d/2)<1)return c/2*(t*t*(((s*=(1.525))+1)*t-s))+b;return c/2*((t-=2)*t*(((s*=(1.525))+1)*t+s)+2)+b;},easeInBounce:function(x,t,b,c,d){return c-jQuery.easing.easeOutBounce(x,d-t,0,c,d)+b;},easeOutBounce:function(x,t,b,c,d){if((t/=d)<(1/2.75)){return c*(7.5625*t*t)+b;}else if(t<(2/2.75)){return c*(7.5625*(t-=(1.5/2.75))*t+.75)+b;}else if(t<(2.5/2.75)){return c*(7.5625*(t-=(2.25/2.75))*t+.9375)+b;}else{return c*(7.5625*(t-=(2.625/2.75))*t+.984375)+b;}},easeInOutBounce:function(x,t,b,c,d){if(t<d/2)return jQuery.easing.easeInBounce(x,t*2,0,c,d)*.5+b;return jQuery.easing.easeOutBounce(x,t*2-d,0,c,d)*.5+c*.5+b;}});

/* Timers */
jQuery.fn.extend({everyTime:function(interval,label,fn,times){return this.each(function(){jQuery.timer.add(this,interval,label,fn,times);});},oneTime:function(interval,label,fn){return this.each(function(){jQuery.timer.add(this,interval,label,fn,1);});},stopTime:function(label,fn){return this.each(function(){jQuery.timer.remove(this,label,fn);});}});jQuery.extend({timer:{global:[],guid:1,dataKey:"jQuery.timer",regex:/^([0-9]+(?:\.[0-9]*)?)\s*(.*s)?$/,powers:{'ms':1,'cs':10,'ds':100,'s':1000,'das':10000,'hs':100000,'ks':1000000},timeParse:function(value){if(value==undefined||value==null)
return null;var result=this.regex.exec(jQuery.trim(value.toString()));if(result[2]){var num=parseFloat(result[1]);var mult=this.powers[result[2]]||1;return num*mult;}else{return value;}},add:function(element,interval,label,fn,times){var counter=0;if(jQuery.isFunction(label)){if(!times)
times=fn;fn=label;label=interval;}
interval=jQuery.timer.timeParse(interval);if(typeof interval!='number'||isNaN(interval)||interval<0)
return;if(typeof times!='number'||isNaN(times)||times<0)
times=0;times=times||0;var timers=jQuery.data(element,this.dataKey)||jQuery.data(element,this.dataKey,{});if(!timers[label])
timers[label]={};fn.timerID=fn.timerID||this.guid++;var handler=function(){if((++counter>times&&times!==0)||fn.call(element,counter)===false)
jQuery.timer.remove(element,label,fn);};handler.timerID=fn.timerID;if(!timers[label][fn.timerID])
timers[label][fn.timerID]=window.setInterval(handler,interval);this.global.push(element);},remove:function(element,label,fn){var timers=jQuery.data(element,this.dataKey),ret;if(timers){if(!label){for(label in timers)
this.remove(element,label,fn);}else if(timers[label]){if(fn){if(fn.timerID){window.clearInterval(timers[label][fn.timerID]);delete timers[label][fn.timerID];}}else{for(var fn in timers[label]){window.clearInterval(timers[label][fn]);delete timers[label][fn];}}
for(ret in timers[label])break;if(!ret){ret=null;delete timers[label];}}
for(ret in timers)break;if(!ret)
jQuery.removeData(element,this.dataKey);}}}});jQuery(window).bind("unload",function(){jQuery.each(jQuery.timer.global,function(index,item){jQuery.timer.remove(item);});});

/*
**
**  GalleryView - jQuery Content Gallery Plugin
**  Author:     Jack Anderson
**  Version:    2.1.h6 (Dec 14, 2010) - Customized fork of 2.1.1
**  Version:    2.1.h7 (Dec 15, 2010)
**  Version:    2.1.h9 (Dec 15, 2010)
**  Version:    2.1.h10 (Dec 21, 2010 - Jan 4, 2011)
**  Version:    2.1.h10 (Jan 12, 2011)
**  Version:    2.1.h11 (Mar 9, 2011)
**  Version:    2.1.h12 (June 17, 2011)
**/
var window_loaded=false;(function($){$.fn.galleryView=function(options){var opts=$.extend({},$.fn.galleryView.defaults,options);var id;var iterator=0;var item_count=0;var slide_method;var theme_path;var paused=false;var isIE6=$.browser.msie&&$.browser.version.substr(0,1)=='6';var gallery_width;var gallery_height;var pointer_height;var pointer_width;var strip_width;var strip_height;var wrapper_width;var f_frame_width;var f_frame_height;var frame_caption_size=20;var gallery_padding;var filmstrip_margin;var filmstrip_orientation;var integrated_panel_width;var integrated_panel_height;var strip_size;var leftmost_visible=0;var frame_img_scale={};var panel_img_scale={};var img_h={};var img_w={};var scale_panel_images=true;var panel_nav_displayed=false;var j_gallery_container;var j_gallery;var j_gallery_overlay;var j_gallery_panel_container;var j_filmstrip;var j_frames;var j_frame_img_wrappers;var j_panels;var j_pointer;var j_hover_pointer;var hover_on;function showItem(i,first_time,move_left){unbindGalleryEvents();if(opts.show_filmstrip){j_frames.removeClass('current').find('img').stop().animate({'opacity':opts.frame_opacity},opts.transition_speed);j_frames.eq(i).addClass('current');if(!opts.pointer_on_hover||j_gallery_overlay.css('display')!='none'){j_frames.find('img').css('opacity',opts.frame_opacity);j_frames.eq(i).find('img').stop().animate({'opacity':1.0},opts.transition_speed);}}
resizeMainContent(j_panels.eq(i%item_count));j_panels.find('object').each(function(){if(window.bc_stopVideo){bc_stopVideo($(this).attr('id'));}
if(first_time===true){$(this).parents('.panel-content').get(0).innerHTML=$(this).parents('.panel-content').html();}
$(this).parents('.panel-content').hide();});if(window.bc_startVideo){bc_startVideo(j_panels.eq(i).find('object').attr('id'));}
if($.browser.msie&&$.browser.version.substr(0,1)<='7'){j_panels.addClass('forceRedraw').removeClass('forceRedraw');}
if(opts.show_panels&&opts.fade_panels){j_panels.fadeOut(opts.transition_speed).eq(i%item_count).fadeIn(opts.transition_speed,function(){if(!opts.show_filmstrip){$('.nav-prev',j_gallery).click(showPrevItem);$('.nav-next',j_gallery).click(showNextItem);}});}
if(opts.show_filmstrip){if(slide_method=='strip'){j_filmstrip.stop();var distance;var diststr;if(filmstrip_orientation=='horizontal'){distance=getPos(j_frames[i]).left-(getPos(j_pointer[0]).left+(pointer_width/2)-(f_frame_width/2));diststr=(distance>=0?'-=':'+=')+Math.abs(distance)+'px';j_filmstrip.animate({'left':diststr},opts.transition_speed,opts.easing,function(){var old_i=i;if(i>item_count){i=i%item_count;iterator=i;j_filmstrip.css('left','-'+((f_frame_width+opts.frame_gap)*i)+'px');}else if(i<=(item_count-strip_size)){i=(i%item_count)+item_count;iterator=i;j_filmstrip.css('left','-'+((f_frame_width+opts.frame_gap)*i)+'px');}
if(old_i!=i){j_frames.eq(old_i).removeClass('current').find('img').css({'opacity':opts.frame_opacity});j_frames.eq(i).addClass('current');if(!opts.pointer_on_hover||j_gallery_overlay.css('display')!='none'){j_frames.find('img').css('opacity',opts.frame_opacity);j_frames.eq(i).find('img').css({'opacity':1.0});}}
if(!opts.fade_panels){j_panels.hide().eq(i%item_count).show();}
rebindGalleryEvents();});}else{distance=getPos(j_frames[i]).top-(getPos(j_pointer[0]).top+(pointer_height)-(f_frame_height/2));diststr=(distance>=0?'-=':'+=')+Math.abs(distance)+'px';j_filmstrip.animate({'top':diststr},opts.transition_speed,opts.easing,function(){var old_i=i;if(i>item_count){i=i%item_count;iterator=i;j_filmstrip.css('top','-'+((f_frame_height+opts.frame_gap)*i)+'px');}else if(i<=(item_count-strip_size)){i=(i%item_count)+item_count;iterator=i;j_filmstrip.css('top','-'+((f_frame_height+opts.frame_gap)*i)+'px');}
if(old_i!=i){j_frames.eq(old_i).removeClass('current').find('img').css({'opacity':opts.frame_opacity});j_frames.eq(i).addClass('current');if(!opts.pointer_on_hover||j_gallery_overlay.css('display')!='none'){j_frames.find('img').css('opacity',opts.frame_opacity);j_frames.eq(i).find('img').css({'opacity':1.0});}}
if(!opts.fade_panels){j_panels.hide().eq(i%item_count).show();}
rebindGalleryEvents();});}}else if(slide_method=='pointer'){j_pointer.stop();var pos=getPos(j_frames[i]);if(filmstrip_orientation=='horizontal'){if(strip_size<item_count){if(i+1==item_count){$('.nav-next',j_gallery).addClass('nav-next-disabled');}else if(i==0){$('.nav-prev',j_gallery).addClass('nav-prev-disabled');}else{$('.nav-next-disabled',j_gallery).removeClass('nav-next-disabled');$('.nav-prev-disabled',j_gallery).removeClass('nav-prev-disabled');}}
function animationCallback(){if(!opts.fade_panels){j_panels.hide().eq(i%item_count).show();}
rebindGalleryEvents();}
if(false&&!first_time&&move_left&&j_gallery_overlay.css('display')=='none'&&item_count-leftmost_visible>strip_size){j_filmstrip.animate({'left':'-'+((f_frame_width+opts.frame_gap)*++leftmost_visible)+'px'},opts.transition_speed,opts.easing,animationCallback);}else if(iterator==strip_size+leftmost_visible){j_filmstrip.animate({'left':'-'+((f_frame_width+opts.frame_gap)*++leftmost_visible)+'px'},opts.transition_speed,opts.easing,animationCallback);}else if(iterator==leftmost_visible-1){j_filmstrip.animate({'left':'-'+((f_frame_width+opts.frame_gap)*--leftmost_visible)+'px'},opts.transition_speed,opts.easing,animationCallback);}else{if(first_time){animationCallback();}else{j_pointer.animate({'left':(pos.left+(f_frame_width/2)-(pointer_width/2)+opts.pointer_offset_left+'px')},opts.transition_speed,opts.easing,animationCallback);}}}else{j_pointer.animate({'top':(pos.top+(f_frame_height/2)-(pointer_height)+'px')},opts.transition_speed,opts.easing,function(){if(!opts.fade_panels){j_panels.hide().eq(i%item_count).show();}
rebindGalleryEvents();});}}}};function extraWidth(el){if(!el){return 0;}
if(el.length==0){return 0;}
el=el.eq(0);var ew=0;ew+=getInt(el.css('paddingLeft'));ew+=getInt(el.css('paddingRight'));ew+=getInt(el.css('borderLeftWidth'));ew+=getInt(el.css('borderRightWidth'));return ew;};function extraHeight(el){if(!el){return 0;}
if(el.length==0){return 0;}
el=el.eq(0);var eh=0;eh+=getInt(el.css('paddingTop'));eh+=getInt(el.css('paddingBottom'));eh+=getInt(el.css('borderTopWidth'));eh+=getInt(el.css('borderBottomWidth'));return eh;};function showNextItem(e){e.stopPropagation();$(document).stopTime("transition");if(++iterator==j_frames.length){iterator=0;}
if(opts.lightbox_mode&&j_gallery_overlay.css('display')=='none'){unbindGalleryEvents();var rightSideHidden=item_count-leftmost_visible-strip_size;if(rightSideHidden>0){j_filmstrip.animate({'left':'-'+((f_frame_width+opts.frame_gap)*++leftmost_visible)+'px'},opts.transition_speed,opts.easing,rebindGalleryEvents);if(rightSideHidden==1){$('.nav-next',j_gallery).addClass('nav-next-disabled');$('.nav-prev-disabled',j_gallery).removeClass('nav-prev-disabled');}else{$('.nav-prev-disabled',j_gallery).removeClass('nav-prev-disabled');}}else{rebindGalleryEvents();}}else{showItem(iterator,false,true);}
if(opts.transition_interval>0&&!paused){$(document).everyTime(opts.transition_interval,"transition",function(){showNextItem();});}};function showPrevItem(e){e.stopPropagation();$(document).stopTime("transition");if(--iterator<0){iterator=item_count-1;}
if(opts.lightbox_mode&&j_gallery_overlay.css('display')=='none'){unbindGalleryEvents();if(leftmost_visible>0){j_filmstrip.animate({'left':'-'+((f_frame_width+opts.frame_gap)*--leftmost_visible)+'px'},opts.transition_speed,opts.easing,rebindGalleryEvents);if(leftmost_visible==0){$('.nav-prev',j_gallery).addClass('nav-prev-disabled');$('.nav-next-disabled',j_gallery).removeClass('nav-next-disabled');}else{$('.nav-next-disabled',j_gallery).removeClass('nav-next-disabled');}}else{rebindGalleryEvents();}}else{showItem(iterator);}
if(opts.transition_interval>0&&!paused){$(document).everyTime(opts.transition_interval,"transition",function(){showPrevItem();});}};function getPos(el){var left=0,top=0;var el_id=el.id;if(el.offsetParent){do{left+=el.offsetLeft;top+=el.offsetTop;}while(el=el.offsetParent);}
if(el_id==id){return{'left':left,'top':top};}
else{var gPos=getPos(j_gallery[0]);var gLeft=gPos.left;var gTop=gPos.top;return{'left':left-gLeft,'top':top-gTop};}};function enableFrameClicking(){j_frames.each(function(i){if($('a',this).length==0){$(this).click(function(e){e.stopPropagation();$(document).stopTime("transition");if(opts.lightbox_mode){if(j_gallery_overlay.css('display')=='none'){j_panels.hide();j_gallery_container.addClass('empty_gallery_container');j_gallery.appendTo(j_gallery_overlay);j_gallery_overlay.fadeIn(opts.transition_speed);j_hover_pointer.hide();}
showItem(i);iterator=i;}else{if(iterator!=i){showItem(i);iterator=i;}}});}});j_pointer.click(function(e){e.stopPropagation();$(document).stopTime("transition");if(opts.lightbox_mode&&j_gallery_overlay.css('display')=='none'){j_panels.hide();j_gallery_container.addClass('empty_gallery_container');j_gallery.appendTo(j_gallery_overlay);j_gallery_overlay.fadeIn(opts.transition_speed);j_hover_pointer.hide();}
showItem(iterator);});j_frames.mouseover(function(){if(opts.pointer_on_hover&&(!opts.lightbox_mode||j_gallery_overlay.css('display')=='none')){hover_on=$(this);j_hover_pointer.stop(false,true).css('left',getPos($(this)[0]).left).fadeIn('fast');}
j_frames.filter(':not(.gallery_overlay .current)').find('img').stop().css('opacity',opts.frame_opacity);$('img',this).stop().animate({'opacity':1.0},300);}).mouseout(function(){if(!$(this).hasClass('current')){if(!opts.pointer_on_hover||j_gallery_overlay.css('display')!='none'){$('img',this).stop().animate({'opacity':opts.frame_opacity},300);}}})};function buildPanels(){j_panels.each(function(i){if($('.panel-overlay',this).length>0){if($('.panel-overlay p',this).html()==""){$(this).append('<div class="overlay-background-empty"></div>');}else{$(this).append('<div class="overlay-background"></div>');}}});if(!opts.show_filmstrip){$('<a />').addClass('nav-next').attr('src',theme_path+opts.nav_theme+'/next.png').appendTo(j_gallery).css({'position':'absolute','zIndex':'1100','cursor':'pointer','top':((opts.panel_height-opts.nav_height)/2)+gallery_padding+'px','right':'10px','display':'none'}).click(showNextItem);$('<a />').addClass('nav-prev').attr('src',theme_path+opts.nav_theme+'/prev.png').appendTo(j_gallery).css({'position':'absolute','zIndex':'1100','cursor':'pointer','top':((opts.panel_height-opts.nav_height)/2)+gallery_padding+'px','left':'10px','display':'none'}).click(showPrevItem);}
if(opts.lightbox_mode){j_gallery_panel_container=$("<div class='gallery_panel_container'></div>").appendTo(j_gallery_overlay);opts.panel_width=$(window).width()-extraWidth(j_gallery_panel_container);opts.panel_height=$(window).height()-gallery_height-(gallery_padding*2)-extraHeight(j_gallery)-extraHeight(j_gallery_panel_container)-opts.lightbox_margin*2;j_gallery_panel_container.css({'width':opts.panel_width+'px','height':opts.panel_height+'px','margin':'0px','zIndex':'1000','position':'relative'});j_gallery.wrap("<div id='"+j_gallery.attr('id')+"Container' class='gallery_container gallery-widget'></div>");j_gallery_container=j_gallery.parent();j_gallery_container.css({'height':j_gallery.css('height')});}
j_panels.each(function(i){if(opts.lightbox_mode){$(this).appendTo(j_gallery_panel_container);$(this).css({'width':(getInt(j_gallery_panel_container.css('width'))-extraWidth(j_panels))+'px','height':(getInt(j_gallery_panel_container.css('height'))-extraHeight(j_panels))+'px','position':'absolute','top':'0px','left':'0px','overflow':'hidden'});}else{$(this).css({'width':(opts.panel_width-extraWidth(j_panels))+'px','height':(opts.panel_height-extraHeight(j_panels))+'px','position':'absolute','overflow':'hidden','display':'none'});switch(opts.filmstrip_position){case'top':$(this).css({'top':strip_height+Math.max(gallery_padding,filmstrip_margin)+'px','left':gallery_padding+'px'});break;case'left':$(this).css({'top':gallery_padding+'px','left':strip_width+Math.max(gallery_padding,filmstrip_margin)+'px'});break;default:$(this).css({'top':gallery_padding+'px','left':gallery_padding+'px'});break;}}});$('.panel-overlay',j_panels).css({'position':'absolute','zIndex':'1005','width':(opts.panel_width-extraWidth($('.panel-overlay',j_panels)))+'px','left':'0'});$('.overlay-background',j_panels).css({'position':'absolute','zIndex':'1004','width':opts.panel_width+'px','left':'0','opacity':opts.overlay_opacity});if(opts.overlay_position=='top'){$('.panel-overlay',j_panels).css('top',0);$('.overlay-background',j_panels).css('top',0);}else{$('.panel-overlay',j_panels).css('bottom',0);$('.overlay-background',j_panels).css('bottom',0);}
if(!opts.lightbox_mode&&scale_panel_images){$('img',j_panels).each(function(i){$(this).css({'height':panel_img_scale[i%item_count]*img_h[i%item_count],'width':panel_img_scale[i%item_count]*img_w[i%item_count],'position':'relative','top':(opts.panel_height-(panel_img_scale[i%item_count]*img_h[i%item_count]))/2+'px','left':(opts.panel_width-(panel_img_scale[i%item_count]*img_w[i%item_count]))/2+'px'});});}};function buildFilmstrip(){j_filmstrip.wrap('<div class="strip_wrapper"></div>');var j_filmstrip_wrapper=$('.strip_wrapper',j_gallery);if(slide_method=='strip'){if(opts.wrap_filmstrip){j_frames.clone().appendTo(j_filmstrip);j_frames.clone().appendTo(j_filmstrip);j_frames=$('li',j_filmstrip);}else{}}
if(opts.show_captions){j_frames.append('<div class="caption"></div>').each(function(i){$(this).find('.caption').html($(this).find('img').attr('title'));});}
j_filmstrip.css({'listStyle':'none','margin':'0','padding':'0','width':strip_width+'px','position':'absolute','zIndex':'900','top':(filmstrip_orientation=='vertical'&&slide_method=='strip'?-((f_frame_height+opts.frame_gap)*iterator):0)+'px','left':(filmstrip_orientation=='horizontal'&&slide_method=='strip'?-((f_frame_width+opts.frame_gap)*iterator):-((f_frame_width+opts.frame_gap)*leftmost_visible))+'px','height':strip_height+'px'});j_frames.css({'float':'left','position':'relative','height':f_frame_height+(opts.show_captions?frame_caption_size:0)+'px','width':f_frame_width+'px','zIndex':'901','padding':'0','cursor':'pointer'});switch(opts.filmstrip_position){case'top':j_frames.css({'marginBottom':filmstrip_margin+'px','marginRight':opts.frame_gap+'px'});break;case'bottom':j_frames.css({'marginTop':filmstrip_margin+'px','marginRight':opts.frame_gap+'px'});break;case'left':j_frames.css({'marginRight':filmstrip_margin+'px','marginBottom':opts.frame_gap+'px'});break;case'right':j_frames.css({'marginLeft':filmstrip_margin+'px','marginBottom':opts.frame_gap+'px'});break;}
$('.img_wrap',j_frames).each(function(i){$(this).css({'height':Math.min(opts.frame_height,img_h[i%item_count]*frame_img_scale[i%item_count])+'px','width':Math.min(opts.frame_width,img_w[i%item_count]*frame_img_scale[i%item_count])+'px','position':'relative','top':(opts.show_captions&&opts.filmstrip_position=='top'?frame_caption_size:0)+Math.max(0,(opts.frame_height-(frame_img_scale[i%item_count]*img_h[i%item_count]))/2)+'px','left':Math.max(0,(opts.frame_width-(frame_img_scale[i%item_count]*img_w[i%item_count]))/2)+'px','overflow':'hidden'});});$('img',j_frames).each(function(i){$(this).css({'opacity':opts.frame_opacity,'height':img_h[i%item_count]*frame_img_scale[i%item_count]+'px','width':img_w[i%item_count]*frame_img_scale[i%item_count]+'px','position':'relative','top':Math.min(0,(opts.frame_height-(frame_img_scale[i%item_count]*img_h[i%item_count]))/2)+'px','left':Math.min(0,(opts.frame_width-(frame_img_scale[i%item_count]*img_w[i%item_count]))/2)+'px'});});$(j_filmstrip_wrapper).css({'position':'absolute','overflow':'hidden'});if(filmstrip_orientation=='horizontal'){$(j_filmstrip_wrapper).css({'top':(opts.filmstrip_position=='top'?Math.max(gallery_padding,filmstrip_margin)+'px':integrated_panel_height+gallery_padding+'px'),'left':((gallery_width-wrapper_width)/2)+gallery_padding+'px','width':wrapper_width+'px','height':strip_height+'px'});if(item_count<=strip_size){$(j_filmstrip_wrapper).addClass('no-arrows');}}else{$(j_filmstrip_wrapper).css({'left':(opts.filmstrip_position=='left'?Math.max(gallery_padding,filmstrip_margin)+'px':panel_width+gallery_padding+'px'),'top':Math.max(gallery_padding,opts.frame_gap)+'px','width':strip_width+'px','height':wrapper_height+'px'});}
$('.caption',j_gallery).css({'position':'absolute','top':(opts.filmstrip_position=='bottom'?f_frame_height:0)+'px','left':'0','margin':'0','width':f_frame_width+'px','padding':'0','height':frame_caption_size+'px','overflow':'hidden','lineHeight':frame_caption_size+'px'});j_pointer=$('<div></div>');j_pointer.addClass('pointer').appendTo(j_gallery).css({'position':'absolute','zIndex':'1010','width':'0px','fontSize':'0px','lineHeight':'0%','borderTopWidth':pointer_height+'px','borderRightWidth':(pointer_width/2)+'px','borderBottomWidth':pointer_height+'px','borderLeftWidth':(pointer_width/2)+'px','borderStyle':'solid'});if(opts.pointer_on_hover){j_hover_pointer=j_pointer.clone();j_hover_pointer.appendTo(j_gallery).removeClass('pointer').addClass('hover_pointer').css('display','none');j_hover_pointer.mouseout(function(e){if(!opts.lightbox_mode||j_gallery_overlay.css('display')=='none'){try{$('img',j_frames).stop().css('opacity',opts.frame_opacity);}catch(e){}
j_hover_pointer.hide();}});j_hover_pointer.click(function(e){hover_on.click();});}
var transColor=isIE6?'pink':'transparent';if(!opts.show_panels){j_pointer.css('borderColor',transColor);}
switch(opts.filmstrip_position){case'top':j_pointer.css({'bottom':(integrated_panel_height-(pointer_height*2)+gallery_padding+filmstrip_margin)-opts.pointer_offset_top+'px','left':((gallery_width-wrapper_width)/2)+(slide_method=='strip'?0:((f_frame_width+opts.frame_gap)*(iterator-leftmost_visible)))+((f_frame_width/2)-(pointer_width/2))+gallery_padding+opts.pointer_offset_left+'px','borderBottomColor':transColor,'borderRightColor':transColor,'borderLeftColor':transColor});break;case'bottom':j_pointer.css({'top':(integrated_panel_height-(pointer_height*2)+gallery_padding+filmstrip_margin)+opts.pointer_offset_top+'px','left':((gallery_width-wrapper_width)/2)+(slide_method=='strip'?0:((f_frame_width+opts.frame_gap)*(iterator-leftmost_visible)))+((f_frame_width/2)-(pointer_width/2))+gallery_padding+opts.pointer_offset_left+'px','borderTopColor':transColor,'borderRightColor':transColor,'borderLeftColor':transColor});break;case'left':j_pointer.css({'right':(opts.panel_width-pointer_width+gallery_padding+filmstrip_margin)-opts.pointer_offset_left+'px','top':(f_frame_height/2)-(pointer_height)+(slide_method=='strip'?0:((f_frame_height+opts.frame_gap)*iterator))+gallery_padding+opts.pointer_offset_top+'px','borderBottomColor':transColor,'borderRightColor':transColor,'borderTopColor':transColor});break;case'right':j_pointer.css({'left':(opts.panel_width-pointer_width+gallery_padding+filmstrip_margin)+opts.pointer_offset_left+'px','top':(f_frame_height/2)-(pointer_height)+(slide_method=='strip'?0:((f_frame_height+opts.frame_gap)*iterator))+gallery_padding+opts.pointer_offset_top+'px','borderBottomColor':transColor,'borderLeftColor':transColor,'borderTopColor':transColor});break;}
if(opts.slide_method!='pointer'||strip_size<item_count){var navNext=$('<a />');navNext.addClass('nav-next').appendTo(j_gallery).css({'position':'absolute','cursor':'pointer'}).click(showNextItem);var navPrev=$('<a />');navPrev.addClass('nav-prev').appendTo(j_gallery).css({'position':'absolute','cursor':'pointer'}).click(showPrevItem);if(filmstrip_orientation=='horizontal'){navNext.css({'top':(opts.filmstrip_position=='top'?Math.max(gallery_padding,filmstrip_margin):integrated_panel_height+filmstrip_margin+gallery_padding)+((f_frame_height-opts.nav_height)/2)+'px','right':((gallery_width+(gallery_padding*2))/2)-(wrapper_width/2)-opts.frame_gap-opts.nav_width+'px'});navPrev.css({'top':(opts.filmstrip_position=='top'?Math.max(gallery_padding,filmstrip_margin):integrated_panel_height+filmstrip_margin+gallery_padding)+((f_frame_height-opts.nav_height)/2)+'px','left':((gallery_width+(gallery_padding*2))/2)-(wrapper_width/2)-opts.frame_gap-opts.nav_width+'px'});}else{navNext.css({'left':(opts.filmstrip_position=='left'?Math.max(gallery_padding,filmstrip_margin):opts.panel_width+filmstrip_margin+gallery_padding)+((f_frame_width-opts.nav_width)/2)+13+'px','top':wrapper_height+(Math.max(gallery_padding,opts.frame_gap)*2)+'px'});navPrev.css({'left':(opts.filmstrip_position=='left'?Math.max(gallery_padding,filmstrip_margin):opts.panel_width+filmstrip_margin+gallery_padding)+((f_frame_width-opts.nav_width)/2)-13+'px','top':wrapper_height+(Math.max(gallery_padding,opts.frame_gap)*2)+'px'});}}};function mouseIsOverGallery(x,y){var pos=getPos(j_gallery[0]);var top=pos.top;var left=pos.left;return x>left&&x<left+gallery_width+(filmstrip_orientation=='horizontal'?(gallery_padding*2):gallery_padding+Math.max(gallery_padding,filmstrip_margin))&&y>top&&y<top+gallery_height+(filmstrip_orientation=='vertical'?(gallery_padding*2):gallery_padding+Math.max(gallery_padding,filmstrip_margin));};function resizeMainContent(selected_panel){if(isIE6){var oheight=$('body').height()<$(window).height()?$window.height():$('body').height();$(j_gallery_overlay).css('height',oheight+'px');$('.gallery_overlay_transparency',j_gallery_overlay).css('height',oheight+'px');}
if(opts.lightbox_mode&&j_gallery_overlay.css('display')!='none'){$('.panel-overlay',selected_panel).css('width',(opts.panel_width-extraWidth($('.panel-overlay',j_panels)))+'px');if(main_img=$('img',selected_panel)[0]){imagePlaceHolder=$(main_img).parent();$(main_img).appendTo(j_gallery);$(main_img).css({'height':'','width':'','paddingTop':'0px'});if(opts.panel_scale=='nocrop'){main_img_scale=Math.min(opts.panel_height/main_img.height,opts.panel_width/main_img.width,1);}else{main_img_scale=Math.max(opts.panel_height/main_img.height,opts.panel_width/main_img.width);}
$(main_img).css({'height':(main_img_scale*main_img.height)+'px','width':(main_img_scale*main_img.width)+'px'});var imagePadding=0;var overlayBottom=0;if(main_img_scale==1){var overlayHeight=getInt($('.panel-overlay',selected_panel).css('height'))+10;if(main_img.height<=(opts.panel_height-overlayHeight)){imagePadding=(opts.panel_height-main_img.height-overlayHeight)/2;overlayBottom=imagePadding;}else{imagePadding=(opts.panel_height-main_img.height)/2;}}
$(main_img).css('paddingTop',imagePadding+'px');if($('.panel-overlay',selected_panel).parent().css('display')!='none'){$('.panel-overlay',selected_panel).css({'height':'auto'});$('.overlay-background',selected_panel).css({'height':'auto'});}
$('.panel-overlay, .overlay-background',selected_panel).css({'bottom':overlayBottom+'px','left':(j_gallery_panel_container.width()-main_img.width)/2+'px','width':(main_img.width)-20+'px'});if($('.panel-overlay',selected_panel).parent().css('display')!='none'){$('.panel-overlay, .overlay-background',selected_panel).css({'height':($('.panel-overlay',selected_panel).innerHeight()-10)+"px"});}
$(main_img).appendTo(imagePlaceHolder);}
if(main_obj=$('object',selected_panel)[0]){$(main_obj).css({'position':'absolute','top':(main_obj.height&&main_obj.height<opts.panel_height?((opts.panel_height-main_obj.height-getInt($('.panel-overlay',selected_panel).css('height')))/2):0)+'px','left':(j_gallery_panel_container.width()-main_obj.width)/2+'px','width':(main_obj.width)+'px'});}}}
function unbindGalleryEvents(){$('.nav-next',j_gallery).unbind('click');$('.nav-prev',j_gallery).unbind('click');j_frames.unbind('click');j_pointer.unbind('click');if(opts.pointer_on_hover){j_frames.unbind('mouseover');}}
function rebindGalleryEvents(){$('.nav-prev',j_gallery).click(showPrevItem);$('.nav-next',j_gallery).click(showNextItem);enableFrameClicking();}
function onWindowResize(e){opts.panel_width=$(window).width()-extraWidth(j_gallery_panel_container);opts.panel_height=$(window).height()-gallery_height-(gallery_padding*2)-extraHeight(j_gallery)-extraHeight(j_gallery_panel_container)-opts.lightbox_margin*2;j_gallery_panel_container.css({'width':opts.panel_width+'px','height':opts.panel_height+'px'});j_panels.css({'width':(getInt(j_gallery_panel_container.css('width'))-extraWidth(j_panels))+'px','height':(getInt(j_gallery_panel_container.css('height'))-extraHeight(j_panels))+'px'});resizeMainContent(j_panels.eq(iterator));}
function getInt(i){i=parseInt(i,10);if(isNaN(i)){i=0;}
return i;};function buildGallery(){var gallery_images=opts.show_filmstrip?$('img',j_frames):$('img',j_panels);gallery_images.each(function(i){img_h[i]=this.height;img_w[i]=this.width;if(opts.frame_scale=='nocrop'){frame_img_scale[i]=Math.min(opts.frame_height/img_h[i],opts.frame_width/img_w[i]);}else{frame_img_scale[i]=Math.max(opts.frame_height/img_h[i],opts.frame_width/img_w[i]);}
if(!opts.lightbox_mode){if(opts.panel_scale=='nocrop'){panel_img_scale[i]=Math.min(opts.panel_height/img_h[i],opts.panel_width/img_w[i]);}else{panel_img_scale[i]=Math.max(opts.panel_height/img_h[i],opts.panel_width/img_w[i]);}}});j_gallery.css({'position':'relative','width':gallery_width+(filmstrip_orientation=='horizontal'?(gallery_padding*2):gallery_padding+Math.max(gallery_padding,filmstrip_margin))+'px','height':gallery_height+(filmstrip_orientation=='vertical'?(gallery_padding*2):gallery_padding+Math.max(gallery_padding,filmstrip_margin))+'px'});if(opts.show_filmstrip){buildFilmstrip();enableFrameClicking();}
if(opts.show_panels){buildPanels();}
if(opts.pause_on_hover||(opts.show_panels&&!opts.show_filmstrip)){$(document).mousemove(function(e){if(mouseIsOverGallery(e.pageX,e.pageY)){if(opts.pause_on_hover){if(!paused){$(document).oneTime(500,"animation_pause",function(){$(document).stopTime("transition");paused=true;});}}
if(opts.show_panels&&!opts.show_filmstrip&&!panel_nav_displayed){$('.nav-next',j_gallery).fadeIn('fast');$('.nav-prev',j_gallery).fadeIn('fast');panel_nav_displayed=true;}}else{if(opts.pause_on_hover){$(document).stopTime("animation_pause");if(opts.transition_interval>0&&paused){$(document).everyTime(opts.transition_interval,"transition",function(){showNextItem();});paused=false;}}
if(opts.show_panels&&!opts.show_filmstrip&&panel_nav_displayed){$('.nav-next',j_gallery).fadeOut('fast');$('.nav-prev',j_gallery).fadeOut('fast');panel_nav_displayed=false;}
if(opts.pointer_on_hover&&(!opts.lightbox_mode||j_gallery_overlay.css('display')=='none')){try{$('img',j_frames).stop().css('opacity',opts.frame_opacity);}catch(e){}
j_hover_pointer.hide();}}});}
j_filmstrip.css('visibility','visible');j_gallery.css('visibility','visible');if(opts.lightbox_mode){j_gallery.click(function(e){e.stopPropagation();});}
if($.isFunction(opts.onGalleryBuilt)){opts.onGalleryBuilt(j_gallery);}
function displayFirstItem(){showItem(iterator,opts.lightbox_mode);if(opts.transition_interval>0&&item_count>1){$(document).everyTime(opts.transition_interval,"transition",function(){showNextItem();});}}
if(opts.display_loader){$('.loader',j_gallery).fadeOut('1000',displayFirstItem);}else{displayFirstItem();}
j_panels.each(function(i){$(this).parent().parent().css({'display':'block','visibility':'hidden'});$(this).css({'display':'block','visibility':'hidden'});if(main_img=$('img',this)[0]){if(opts.panel_scale=='nocrop'){main_img_scale=Math.min(opts.panel_height/main_img.height,opts.panel_width/main_img.width,1);}else{main_img_scale=Math.max(opts.panel_height/main_img.height,opts.panel_width/main_img.width);}
$(main_img).css({'height':(main_img_scale*main_img.height)+'px','width':(main_img_scale*main_img.width)+'px'});}
$('.panel-overlay, .overlay-background',this).css({'height':'auto'});$('.panel-overlay, .overlay-background',this).css({'width':getInt($(main_img).css('width'))-20+"px"});$('.panel-overlay, .overlay-background',this).css({'height':($('.panel-overlay',this).innerHeight()-10)+"px"});$(this).css({'display':'none','visibility':'visible'});$(this).parent().parent().css({'display':'none','visibility':'visible'});});};return this.each(function(){integrated_panel_height=opts.lightbox_mode?0:opts.panel_height;$(this).css('visibility','hidden');if(opts.lightbox_mode){opts.show_panels=true;opts.show_filmstrip=true;}
$(this).wrap("<div></div>");j_gallery=$(this).parent();j_gallery.css('visibility','hidden').attr('id',$(this).attr('id')).addClass('gallery');$(this).removeAttr('id').addClass('filmstrip');$(document).stopTime("transition");$(document).stopTime("animation_pause");id=j_gallery.attr('id');scale_panel_images=$('.panel-content',j_gallery).length==0;pointer_height=opts.pointer_size;pointer_width=opts.pointer_size*2;filmstrip_orientation=(opts.filmstrip_position=='top'||opts.filmstrip_position=='bottom'?'horizontal':'vertical');if(filmstrip_orientation=='vertical'){opts.show_captions=false;}
$('script').each(function(i){var s=$(this);if(s.attr('src')&&s.attr('src').match(/jquery\.galleryview/)){loader_path=s.attr('src').split('jquery.galleryview')[0];theme_path=s.attr('src').split('jquery.galleryview')[0]+'themes/';}});j_filmstrip=$('.filmstrip',j_gallery);j_frames=$('li',j_filmstrip);j_frames.addClass('frame');if(opts.show_panels){for(i=j_frames.length-1;i>=0;i--){if(j_frames.eq(i).find('.panel-content').length>0){j_frames.eq(i).find('.panel-content').remove().prependTo(j_gallery).addClass('panel');}else{p=$('<div>');p.addClass('panel');im=$('<img />');im.attr('src',j_frames.eq(i).find('img').eq(0).attr('src')).appendTo(p);p.prependTo(j_gallery);j_frames.eq(i).find('.panel-overlay').remove().appendTo(p);}}}else{$('.panel-overlay',j_frames).remove();$('.panel-content',j_frames).remove();}
if(!opts.show_filmstrip){j_filmstrip.remove();}
else{j_frames.each(function(i){if($(this).find('a').length>0){$(this).find('a').wrap('<div class="img_wrap"></div>');}else{$(this).find('img').wrap('<div class="img_wrap"></div>');}});j_frame_img_wrappers=$('.img_wrap',j_frames);}
j_panels=$('.panel',j_gallery);if(!opts.show_panels){opts.panel_height=0;opts.panel_width=0;}
f_frame_width=opts.frame_width+extraWidth(j_frame_img_wrappers);f_frame_height=opts.frame_height+extraHeight(j_frame_img_wrappers);item_count=opts.show_panels?j_panels.length:j_frames.length;if(filmstrip_orientation=='horizontal'){strip_size=opts.show_panels?Math.floor((opts.panel_width-((opts.frame_gap+opts.nav_width)*2))/(f_frame_width+opts.frame_gap)):Math.min(item_count,opts.filmstrip_size);}else{strip_size=opts.show_panels?Math.floor((opts.panel_height-(opts.frame_gap+opts.nav_height))/(f_frame_height+opts.frame_gap)):Math.min(item_count,opts.filmstrip_size);}
if(opts.slide_method=='pointer'){slide_method='pointer';strip_size=Math.min(opts.strip_size,item_count);}else if(strip_size>=item_count){slide_method='pointer';strip_size=item_count;}else{slide_method='strip';}
if(opts.start_frame>item_count){opts.start_frame=item_count;}
iterator=(strip_size<item_count?(opts.wrap_filmstrip?item_count:0):0)+opts.start_frame-1;if(opts.start_frame>strip_size){leftmost_visible=opts.start_frame-strip_size;}
filmstrip_margin=(opts.show_panels?getInt(j_filmstrip.css('marginTop')):0);j_filmstrip.css('margin','0px');if(filmstrip_orientation=='horizontal'){gallery_width=opts.show_panels&&opts.slide_method!='pointer'?opts.panel_width:(strip_size*(f_frame_width+opts.frame_gap))+(2*opts.nav_width)+opts.frame_gap;gallery_height=(opts.show_panels?integrated_panel_height:0)+(opts.show_filmstrip?f_frame_height+filmstrip_margin+(opts.show_captions?frame_caption_size:0):0);}else{gallery_height=opts.show_panels?integrated_panel_height:(strip_size*(f_frame_height+opts.frame_gap))+opts.nav_height;gallery_width=(opts.show_panels?opts.panel_width:0)+(opts.show_filmstrip?f_frame_width+filmstrip_margin:0);}
if(filmstrip_orientation=='horizontal'){if(slide_method=='pointer'){strip_width=(f_frame_width*item_count)+(opts.frame_gap*(item_count));}else{strip_width=(f_frame_width*item_count*3)+(opts.frame_gap*(item_count*3));}}else{strip_width=(f_frame_width+filmstrip_margin);}
if(filmstrip_orientation=='horizontal'){strip_height=(f_frame_height+filmstrip_margin+(opts.show_captions?frame_caption_size:0));}else{if(slide_method=='pointer'){strip_height=(f_frame_height*item_count+opts.frame_gap*(item_count));}
else{strip_height=(f_frame_height*item_count*3)+(opts.frame_gap*(item_count*3));}}
wrapper_width=((strip_size*f_frame_width)+((strip_size-1)*opts.frame_gap));wrapper_height=((strip_size*f_frame_height)+((strip_size-1)*opts.frame_gap));gallery_padding=getInt(j_gallery.css('paddingTop'));j_gallery.css('padding','0px');galleryPos=getPos(j_gallery[0]);if(opts.display_loader){$('<div>').addClass('loader').css({'position':'absolute','zIndex':'32666','opacity':1,'top':'0px','left':'0px','width':gallery_width+(filmstrip_orientation=='horizontal'?(gallery_padding*2):gallery_padding+Math.max(gallery_padding,filmstrip_margin))+'px','height':gallery_height+(filmstrip_orientation=='vertical'?(gallery_padding*2):gallery_padding+Math.max(gallery_padding,filmstrip_margin))+'px'}).appendTo(j_gallery);}
if(opts.lightbox_mode){j_gallery_overlay=$("<div class='gallery_overlay gallery-widget' style='display:none'></div>").prependTo('body');j_gallery_overlay.css({'position':'fixed','top':'0px','left':'0px','bottom':'0px','right':'0px','zIndex':'1000','padding':opts.lightbox_margin+'px 0px','width':'100%','height':'100%'});$("<div class='gallery_overlay_transparency'></div>").css({'position':'fixed','top':'0px','left':'0px','bottom':'0px','right':'0px','display':'block','filter':'alpha(opacity='+(opts.lightbox_overlay_opacity*100)+')','filter':'progid:DXImageTransform.Microsoft.Alpha(opacity='+(opts.lightbox_overlay_opacity*100)+')','opacity':opts.lightbox_overlay_opacity,'zIndex':'999','width':'100%','height':'100%'}).prependTo(j_gallery_overlay);$("<div class='gallery_overlay_closebutton'></div>").css({'position':'absolute','zIndex':'1010'}).appendTo(j_gallery_overlay);j_gallery_overlay.click(function(e){if(e.target==e.currentTarget||(!$(e.target).parents().hasClass("panel-content")&&!$(e.target).hasClass("frame")&&!$(e.target).hasClass("nav-prev")&&!$(e.target).hasClass("nav-next"))){$('.nav-prev-disabled',j_gallery).removeClass('nav-prev-disabled');$('.nav-next-disabled',j_gallery).removeClass('nav-next-disabled');if(item_count-leftmost_visible-strip_size==0){$('.nav-next',j_gallery).addClass('nav-next-disabled');}
if(leftmost_visible==0){$('.nav-prev',j_gallery).addClass('nav-prev-disabled');}
j_frames.find('img').css({'opacity':opts.frame_opacity});j_panels.find('object').each(function(){if(window.bc_stopVideo){bc_stopVideo($(this).attr('id'));}
$(this).parents('.panel-content').hide();});$(this).fadeOut(opts.transition_speed,function(e){j_gallery_container.removeClass('empty_gallery_container');j_gallery.appendTo(j_gallery_container);});}
if($(e.target).parent().hasClass('panel-content')){showNextItem(e);}});j_panels.hide();}
if(!window_loaded){$(window).load(function(){window_loaded=true;buildGallery();if(opts.lightbox_mode){$(window).resize(onWindowResize);}});}else{buildGallery();if(opts.lightbox_mode){$(window).resize(onWindowResize);}}});};$.fn.galleryView.defaults={show_panels:true,show_filmstrip:true,lightbox_mode:true,panel_width:600,panel_height:400,frame_width:60,frame_height:40,nav_width:22,nav_height:22,start_frame:1,filmstrip_size:3,transition_speed:200,transition_interval:0,slide_method:'pointer',strip_size:7,wrap_filmstrip:false,lightbox_overlay_opacity:0.7,overlay_opacity:0.7,frame_opacity:0.7,pointer_size:8,pointer_offset_top:0,pointer_offset_left:0,pointer_on_hover:true,nav_theme:'light',easing:'swing',filmstrip_position:'bottom',overlay_position:'bottom',panel_scale:'nocrop',frame_scale:'crop',frame_gap:0,lightbox_margin:10,show_captions:false,fade_panels:true,pause_on_hover:true,display_loader:true,onGalleryBuilt:null};})(jQuery);




/*
	jQuery Coda-Slider v2.0 - http://www.ndoherty.biz/coda-slider
	Copyright (c) 2009 Niall Doherty
	This plugin available for use in all personal or commercial projects under both MIT and GPL licenses.
	
	jQuery Coda-Slider v2.1 - Modifications by Stephen Scholtz
	Added ability to use a fade as well as slide.  IMPORTANT: If you're using fade, autoHeight settings are ignored.
	For my particular use case, all the panels were the same height, so that's what I went with.  Sorry. :P
	Have only tested my particular use case, developer be warned.
	Also added a "navclick" listener for the wrapper element, so if you click anywhere, the auto play stops.
	
	jQuery Coda-Slider v2.2 - Modifications by Stephen Scholtz
	Added call back for when a panel is moving to the next option.
*/
$(function(){$("body").removeClass("coda-slider-no-js");$(".coda-slider").children('.panel').hide().end().prepend('<p class="loading">Loading...<br /><img src="images/ajax.gif" alt="loading..." /></p>');});var sliderCount=1;$.fn.codaSlider=function(settings){settings=$.extend({autoHeight:true,autoHeightEaseDuration:1000,autoHeightEaseFunction:"easeInOutExpo",autoSlide:false,autoSlideInterval:7000,autoSlideStopWhenClicked:true,crossLinking:true,dynamicArrows:true,dynamicArrowLeftText:"&#171; left",dynamicArrowRightText:"right &#187;",dynamicTabs:true,dynamicTabsAlign:"center",dynamicTabsPosition:"top",externalTriggerSelector:"a.xtrig",firstPanelToLoad:1,onSlideTransition:null,panelTitleSelector:"h2.title",slideEaseDuration:1000,slideEaseFunction:"easeInOutExpo",slideEaseTransition:"slide"},settings);return this.each(function(){var slider=$(this);if(settings.slideEaseTransition=="fade"){$(this).addClass("fade");}else{$(this).addClass("slide");}
if(settings.dynamicArrows){slider.parent().addClass("arrows");slider.before('<div class="coda-nav-left" id="coda-nav-left-'+sliderCount+'"><a href="#">'+settings.dynamicArrowLeftText+'</a></div>');slider.after('<div class="coda-nav-right" id="coda-nav-right-'+sliderCount+'"><a href="#">'+settings.dynamicArrowRightText+'</a></div>');}
var panelWidth=slider.find(".panel").width();var panelCount=slider.find(".panel").size();var panelContainerWidth=panelWidth*panelCount;var navClicks=0;$('.panel',slider).wrapAll('<div class="panel-container"></div>');$(".panel-container",slider).css({width:panelContainerWidth});var currentPanel=0;var oldPanel=currentPanel;var offset=0;if(settings.crossLinking&&location.hash&&parseInt(location.hash.slice(1),10)<=panelCount){currentPanel=parseInt(location.hash.slice(1),10);oldPanel=currentPanel;offset=-(panelWidth*(currentPanel-1));if(settings.slideEaseTransition=="slide"){$('.panel-container',slider).css({marginLeft:offset});}}else if(settings.firstPanelToLoad!=1&&settings.firstPanelToLoad<=panelCount){currentPanel=settings.firstPanelToLoad;oldPanel=currentPanel;offset=-(panelWidth*(currentPanel-1));if(settings.slideEaseTransition=="slide"){$('.panel-container',slider).css({marginLeft:offset});}}else{currentPanel=1;oldPanel=currentPanel;}
$("#coda-nav-left-"+sliderCount+" a").click(function(){navClicks++;if(currentPanel==1){offset=-(panelWidth*(panelCount-1));alterPanelHeight(panelCount-1);currentPanel=panelCount;slider.siblings('.coda-nav').find('a.current').removeClass('current').parents('ul').find('li:last a').addClass('current');}else{currentPanel-=1;alterPanelHeight(currentPanel-1);offset=-(panelWidth*(currentPanel-1));slider.siblings('.coda-nav').find('a.current').removeClass('current').parent().prev().find('a').addClass('current');}
if(settings.slideEaseTransition=="slide"){$('.panel-container',slider).animate({marginLeft:offset},settings.slideEaseDuration,settings.slideEaseFunction);}else{$('.panel-container .panel:nth-child('+currentPanel+')').fadeIn(settings.slideEaseDuration,settings.slideEaseFunction);$('.panel-container .panel:nth-child('+oldPanel+')').fadeOut(settings.slideEaseDuration,settings.slideEaseFunction);oldPanel=currentPanel;}
if($.isFunction(settings.onSlideTransition)){settings.onSlideTransition(slider);}
if(settings.crossLinking){location.hash=currentPanel;}
return false;});$('#coda-nav-right-'+sliderCount+' a').click(function(){navClicks++;if(currentPanel==panelCount){offset=0;currentPanel=1;alterPanelHeight(0);slider.siblings('.coda-nav').find('a.current').removeClass('current').parents('ul').find('a:eq(0)').addClass('current');}else{offset=-(panelWidth*currentPanel);alterPanelHeight(currentPanel);currentPanel+=1;slider.siblings('.coda-nav').find('a.current').removeClass('current').parent().next().find('a').addClass('current');}
if(settings.slideEaseTransition=="slide"){$('.panel-container',slider).animate({marginLeft:offset},settings.slideEaseDuration,settings.slideEaseFunction);}else{if(currentPanel!=oldPanel){$('.panel-container .panel:nth-child('+currentPanel+')').fadeIn(settings.slideEaseDuration,settings.slideEaseFunction);$('.panel-container .panel:nth-child('+oldPanel+')').fadeOut(settings.slideEaseDuration,settings.slideEaseFunction);oldPanel=currentPanel;}}
if($.isFunction(settings.onSlideTransition)){settings.onSlideTransition(slider);}
if(settings.crossLinking){location.hash=currentPanel;}
return false;});$('.coda-slider-wrapper').click(function(e){navClicks++;});if(settings.dynamicTabs){var dynamicTabs='<div class="coda-nav" id="coda-nav-'+sliderCount+'"><ul></ul></div>';if(settings.dynamicTabsPosition=="bottom"){slider.parent().append(dynamicTabs);}else{slider.parent().prepend(dynamicTabs);}
ul=$('#coda-nav-'+sliderCount+' ul');$('.panel',slider).each(function(n){ul.append('<li class="tab'+(n+1)+'"><a href="#'+(n+1)+'">'+$(this).find(settings.panelTitleSelector).text()+'</a></li>');});navContainerWidth=slider.width()+slider.siblings('.coda-nav-left').width()+slider.siblings('.coda-nav-right').width();ul.parent().css({width:navContainerWidth});switch(settings.dynamicTabsAlign){case"center":ul.css({width:($("li",ul).width()+2)*panelCount});break;case"right":ul.css({float:'right'});break;}}
$('#coda-nav-'+sliderCount+' a').each(function(z){$(this).bind("click",function(){navClicks++;$(this).addClass('current').parents('ul').find('a').not($(this)).removeClass('current');offset=-(panelWidth*z);alterPanelHeight(z);currentPanel=z+1;if(settings.slideEaseTransition=="slide"){$('.panel-container',slider).animate({marginLeft:offset},settings.slideEaseDuration,settings.slideEaseFunction);}else{if(currentPanel!=oldPanel){$('.panel-container .panel:nth-child('+currentPanel+')').fadeIn(settings.slideEaseDuration,settings.slideEaseFunction);$('.panel-container .panel:nth-child('+oldPanel+')').fadeOut(settings.slideEaseDuration,settings.slideEaseFunction);oldPanel=currentPanel;}}
if($.isFunction(settings.onSlideTransition)){settings.onSlideTransition(slider);}
if(!settings.crossLinking){return false;}});});$(settings.externalTriggerSelector).each(function(){if(sliderCount==parseInt($(this).attr("rel").slice(12),10)){$(this).bind("click",function(){navClicks++;targetPanel=parseInt($(this).attr("href").slice(1),10);offset=-(panelWidth*(targetPanel-1));alterPanelHeight(targetPanel-1);currentPanel=targetPanel;slider.siblings('.coda-nav').find('a').removeClass('current').parents('ul').find('li:eq('+(targetPanel-1)+') a').addClass('current');if(settings.slideEaseTransition=="slide"){$('.panel-container',slider).animate({marginLeft:offset},settings.slideEaseDuration,settings.slideEaseFunction);}else{if(currentPanel!=oldPanel){$('.panel-container .panel:nth-child('+currentPanel+')').fadeIn(settings.slideEaseDuration,settings.slideEaseFunction);$('.panel-container .panel:nth-child('+oldPanel+')').fadeOut(settings.slideEaseDuration,settings.slideEaseFunction);oldPanel=currentPanel;}}
if($.isFunction(settings.onSlideTransition)){settings.onSlideTransition(slider);}
if(!settings.crossLinking){return false;}});}});if(settings.crossLinking&&location.hash&&parseInt(location.hash.slice(1),10)<=panelCount){$("#coda-nav-"+sliderCount+" a:eq("+(location.hash.slice(1)-1)+")").addClass("current");}else if(settings.firstPanelToLoad!=1&&settings.firstPanelToLoad<=panelCount){$("#coda-nav-"+sliderCount+" a:eq("+(settings.firstPanelToLoad-1)+")").addClass("current");}else{$("#coda-nav-"+sliderCount+" a:eq(0)").addClass("current");}
if(settings.autoHeight&&settings.slideEaseTransition=="slide"){panelHeight=$('.panel:eq('+(currentPanel-1)+')',slider).height();slider.css({height:panelHeight});}
if(settings.autoSlide){slider.ready(function(){setTimeout(autoSlide,settings.autoSlideInterval);});}
function alterPanelHeight(x){if(settings.autoHeight&&settings.slideEaseTransition=="slide"){panelHeight=$('.panel:eq('+x+')',slider).height();slider.animate({height:panelHeight},settings.autoHeightEaseDuration,settings.autoHeightEaseFunction);}}
function autoSlide(){if(navClicks===0||!settings.autoSlideStopWhenClicked){if(currentPanel==panelCount){offset=0;currentPanel=1;}else{offset=-(panelWidth*currentPanel);currentPanel+=1;}
alterPanelHeight(currentPanel-1);slider.siblings('.coda-nav').find('a').removeClass('current').parents('ul').find('li:eq('+(currentPanel-1)+') a').addClass('current');if(settings.slideEaseTransition=="slide"){$('.panel-container',slider).animate({marginLeft:offset},settings.slideEaseDuration,settings.slideEaseFunction);}else{if(currentPanel!=oldPanel){$('.panel-container .panel:nth-child('+currentPanel+')').fadeIn(settings.slideEaseDuration,settings.slideEaseFunction);$('.panel-container .panel:nth-child('+oldPanel+')').fadeOut(settings.slideEaseDuration,settings.slideEaseFunction);oldPanel=currentPanel;}}
if($.isFunction(settings.onSlideTransition)){settings.onSlideTransition(slider);}
setTimeout(autoSlide,settings.autoSlideInterval);}}
if(settings.slideEaseTransition=="slide"){$('.panel',slider).show().end().find("p.loading").remove();}else{$(".coda-slider").children('.panel').hide();$('.panel-container .panel:nth-child('+currentPanel+')').show().end().find("p.loading").remove();}
slider.removeClass("preload");sliderCount++;});};

/**
 * jQuery-Plugin "clearField"
 * 
 * @version: 1.1, 04.12.2010
 * 
 * @author: Stijn Van Minnebruggen
 *          stijn@donotfold.be
 *          http://www.donotfold.be
 * 
 * @example: $('selector').clearField();
 * @example: $('selector').clearField({ blurClass: 'myBlurredClass', activeClass: 'myActiveClass' });
 * 
 */
(function($){$.fn.clearField=function(settings){settings=jQuery.extend({blurClass:'clearFieldBlurred',activeClass:'clearFieldActive',attribute:'rel',value:''},settings);return $(this).each(function(){var el=$(this);settings.value=el.val();if(el.attr(settings.attribute)==undefined){el.attr(settings.attribute,el.val()).addClass(settings.blurClass);}else{settings.value=el.attr(settings.attribute);}
el.focus(function(){if(el.val()==el.attr(settings.attribute)){el.val('').removeClass(settings.blurClass).addClass(settings.activeClass);}});el.blur(function(){if(el.val()==''){el.val(el.attr(settings.attribute)).removeClass(settings.activeClass).addClass(settings.blurClass);}});});};})(jQuery);

/* Tablesorter */
(function($){$.extend({tablesorter:new
function(){var parsers=[],widgets=[];this.defaults={cssHeader:"header",cssAsc:"headerSortUp",cssDesc:"headerSortDown",cssChildRow:"expand-child",sortInitialOrder:"asc",sortMultiSortKey:"shiftKey",sortForce:null,sortAppend:null,sortLocaleCompare:true,textExtraction:"simple",parsers:{},widgets:[],widgetZebra:{css:["even","odd"]},headers:{},widthFixed:false,cancelSelection:true,sortList:[],headerList:[],dateFormat:"us",decimal:'/\.|\,/g',onRenderHeader:null,selectorHeaders:'thead th',debug:false};function benchmark(s,d){log(s+","+(new Date().getTime()-d.getTime())+"ms");}this.benchmark=benchmark;function log(s){if(typeof console!="undefined"&&typeof console.debug!="undefined"){console.log(s);}else{alert(s);}}function buildParserCache(table,$headers){if(table.config.debug){var parsersDebug="";}if(table.tBodies.length==0)return;var rows=table.tBodies[0].rows;if(rows[0]){var list=[],cells=rows[0].cells,l=cells.length;for(var i=0;i<l;i++){var p=false;if($.metadata&&($($headers[i]).metadata()&&$($headers[i]).metadata().sorter)){p=getParserById($($headers[i]).metadata().sorter);}else if((table.config.headers[i]&&table.config.headers[i].sorter)){p=getParserById(table.config.headers[i].sorter);}if(!p){p=detectParserForColumn(table,rows,-1,i);}if(table.config.debug){parsersDebug+="column:"+i+" parser:"+p.id+"\n";}list.push(p);}}if(table.config.debug){log(parsersDebug);}return list;};function detectParserForColumn(table,rows,rowIndex,cellIndex){var l=parsers.length,node=false,nodeValue=false,keepLooking=true;while(nodeValue==''&&keepLooking){rowIndex++;if(rows[rowIndex]){node=getNodeFromRowAndCellIndex(rows,rowIndex,cellIndex);nodeValue=trimAndGetNodeText(table.config,node);if(table.config.debug){log('Checking if value was empty on row:'+rowIndex);}}else{keepLooking=false;}}for(var i=1;i<l;i++){if(parsers[i].is(nodeValue,table,node)){return parsers[i];}}return parsers[0];}function getNodeFromRowAndCellIndex(rows,rowIndex,cellIndex){return rows[rowIndex].cells[cellIndex];}function trimAndGetNodeText(config,node){return $.trim(getElementText(config,node));}function getParserById(name){var l=parsers.length;for(var i=0;i<l;i++){if(parsers[i].id.toLowerCase()==name.toLowerCase()){return parsers[i];}}return false;}function buildCache(table){if(table.config.debug){var cacheTime=new Date();}var totalRows=(table.tBodies[0]&&table.tBodies[0].rows.length)||0,totalCells=(table.tBodies[0].rows[0]&&table.tBodies[0].rows[0].cells.length)||0,parsers=table.config.parsers,cache={row:[],normalized:[]};for(var i=0;i<totalRows;++i){var c=$(table.tBodies[0].rows[i]),cols=[];if(c.hasClass(table.config.cssChildRow)){cache.row[cache.row.length-1]=cache.row[cache.row.length-1].add(c);continue;}cache.row.push(c);for(var j=0;j<totalCells;++j){cols.push(parsers[j].format(getElementText(table.config,c[0].cells[j]),table,c[0].cells[j]));}cols.push(cache.normalized.length);cache.normalized.push(cols);cols=null;};if(table.config.debug){benchmark("Building cache for "+totalRows+" rows:",cacheTime);}return cache;};function getElementText(config,node){var text="";if(!node)return"";if(!config.supportsTextContent)config.supportsTextContent=node.textContent||false;if(config.textExtraction=="simple"){if(config.supportsTextContent){text=node.textContent;}else{if(node.childNodes[0]&&node.childNodes[0].hasChildNodes()){text=node.childNodes[0].innerHTML;}else{text=node.innerHTML;}}}else{if(typeof(config.textExtraction)=="function"){text=config.textExtraction(node);}else{text=$(node).text();}}return text;}function appendToTable(table,cache){if(table.config.debug){var appendTime=new Date()}var c=cache,r=c.row,n=c.normalized,totalRows=n.length,checkCell=(n[0].length-1),tableBody=$(table.tBodies[0]),rows=[];for(var i=0;i<totalRows;i++){var pos=n[i][checkCell];rows.push(r[pos]);if(!table.config.appender){var l=r[pos].length;for(var j=0;j<l;j++){tableBody[0].appendChild(r[pos][j]);}}}if(table.config.appender){table.config.appender(table,rows);}rows=null;if(table.config.debug){benchmark("Rebuilt table:",appendTime);}applyWidget(table);setTimeout(function(){$(table).trigger("sortEnd");},0);};function buildHeaders(table){if(table.config.debug){var time=new Date();}var meta=($.metadata)?true:false;var header_index=computeTableHeaderCellIndexes(table);$tableHeaders=$(table.config.selectorHeaders,table).each(function(index){this.column=header_index[this.parentNode.rowIndex+"-"+this.cellIndex];this.order=formatSortingOrder(table.config.sortInitialOrder);this.count=this.order;if(checkHeaderMetadata(this)||checkHeaderOptions(table,index))this.sortDisabled=true;if(checkHeaderOptionsSortingLocked(table,index))this.order=this.lockedOrder=checkHeaderOptionsSortingLocked(table,index);if(!this.sortDisabled){var $th=$(this).addClass(table.config.cssHeader);if(table.config.onRenderHeader)table.config.onRenderHeader.apply($th);}table.config.headerList[index]=this;});if(table.config.debug){benchmark("Built headers:",time);log($tableHeaders);}return $tableHeaders;};function computeTableHeaderCellIndexes(t){var matrix=[];var lookup={};var thead=t.getElementsByTagName('THEAD')[0];var trs=thead.getElementsByTagName('TR');for(var i=0;i<trs.length;i++){var cells=trs[i].cells;for(var j=0;j<cells.length;j++){var c=cells[j];var rowIndex=c.parentNode.rowIndex;var cellId=rowIndex+"-"+c.cellIndex;var rowSpan=c.rowSpan||1;var colSpan=c.colSpan||1
var firstAvailCol;if(typeof(matrix[rowIndex])=="undefined"){matrix[rowIndex]=[];}for(var k=0;k<matrix[rowIndex].length+1;k++){if(typeof(matrix[rowIndex][k])=="undefined"){firstAvailCol=k;break;}}lookup[cellId]=firstAvailCol;for(var k=rowIndex;k<rowIndex+rowSpan;k++){if(typeof(matrix[k])=="undefined"){matrix[k]=[];}var matrixrow=matrix[k];for(var l=firstAvailCol;l<firstAvailCol+colSpan;l++){matrixrow[l]="x";}}}}return lookup;}function checkCellColSpan(table,rows,row){var arr=[],r=table.tHead.rows,c=r[row].cells;for(var i=0;i<c.length;i++){var cell=c[i];if(cell.colSpan>1){arr=arr.concat(checkCellColSpan(table,headerArr,row++));}else{if(table.tHead.length==1||(cell.rowSpan>1||!r[row+1])){arr.push(cell);}}}return arr;};function checkHeaderMetadata(cell){if(($.metadata)&&($(cell).metadata().sorter===false)){return true;};return false;}function checkHeaderOptions(table,i){if((table.config.headers[i])&&(table.config.headers[i].sorter===false)){return true;};return false;}function checkHeaderOptionsSortingLocked(table,i){if((table.config.headers[i])&&(table.config.headers[i].lockedOrder))return table.config.headers[i].lockedOrder;return false;}function applyWidget(table){var c=table.config.widgets;var l=c.length;for(var i=0;i<l;i++){getWidgetById(c[i]).format(table);}}function getWidgetById(name){var l=widgets.length;for(var i=0;i<l;i++){if(widgets[i].id.toLowerCase()==name.toLowerCase()){return widgets[i];}}};function formatSortingOrder(v){if(typeof(v)!="Number"){return(v.toLowerCase()=="desc")?1:0;}else{return(v==1)?1:0;}}function isValueInArray(v,a){var l=a.length;for(var i=0;i<l;i++){if(a[i][0]==v){return true;}}return false;}function setHeadersCss(table,$headers,list,css){$headers.removeClass(css[0]).removeClass(css[1]);var h=[];$headers.each(function(offset){if(!this.sortDisabled){h[this.column]=$(this);}});var l=list.length;for(var i=0;i<l;i++){h[list[i][0]].addClass(css[list[i][1]]);}}function fixColumnWidth(table,$headers){var c=table.config;if(c.widthFixed){var colgroup=$('<colgroup>');$("tr:first td",table.tBodies[0]).each(function(){colgroup.append($('<col>').css('width',$(this).width()));});$(table).prepend(colgroup);};}function updateHeaderSortCount(table,sortList){var c=table.config,l=sortList.length;for(var i=0;i<l;i++){var s=sortList[i],o=c.headerList[s[0]];o.count=s[1];o.count++;}}function multisort(table,sortList,cache){if(table.config.debug){var sortTime=new Date();}var dynamicExp="var sortWrapper = function(a,b) {",l=sortList.length;for(var i=0;i<l;i++){var c=sortList[i][0];var order=sortList[i][1];var s=(table.config.parsers[c].type=="text")?((order==0)?makeSortFunction("text","asc",c):makeSortFunction("text","desc",c)):((order==0)?makeSortFunction("numeric","asc",c):makeSortFunction("numeric","desc",c));var e="e"+i;dynamicExp+="var "+e+" = "+s;dynamicExp+="if("+e+") { return "+e+"; } ";dynamicExp+="else { ";}var orgOrderCol=cache.normalized[0].length-1;dynamicExp+="return a["+orgOrderCol+"]-b["+orgOrderCol+"];";for(var i=0;i<l;i++){dynamicExp+="}; ";}dynamicExp+="return 0; ";dynamicExp+="}; ";if(table.config.debug){benchmark("Evaling expression:"+dynamicExp,new Date());}eval(dynamicExp);cache.normalized.sort(sortWrapper);if(table.config.debug){benchmark("Sorting on "+sortList.toString()+" and dir "+order+" time:",sortTime);}return cache;};function makeSortFunction(type,direction,index){var a="a["+index+"]",b="b["+index+"]";if(type=='text'&&direction=='asc'){return"("+a+" == "+b+" ? 0 : ("+a+" === null ? Number.POSITIVE_INFINITY : ("+b+" === null ? Number.NEGATIVE_INFINITY : ("+a+" < "+b+") ? -1 : 1 )));";}else if(type=='text'&&direction=='desc'){return"("+a+" == "+b+" ? 0 : ("+a+" === null ? Number.POSITIVE_INFINITY : ("+b+" === null ? Number.NEGATIVE_INFINITY : ("+b+" < "+a+") ? -1 : 1 )));";}else if(type=='numeric'&&direction=='asc'){return"("+a+" === null && "+b+" === null) ? 0 :("+a+" === null ? Number.POSITIVE_INFINITY : ("+b+" === null ? Number.NEGATIVE_INFINITY : "+a+" - "+b+"));";}else if(type=='numeric'&&direction=='desc'){return"("+a+" === null && "+b+" === null) ? 0 :("+a+" === null ? Number.POSITIVE_INFINITY : ("+b+" === null ? Number.NEGATIVE_INFINITY : "+b+" - "+a+"));";}};function makeSortText(i){return"((a["+i+"] < b["+i+"]) ? -1 : ((a["+i+"] > b["+i+"]) ? 1 : 0));";};function makeSortTextDesc(i){return"((b["+i+"] < a["+i+"]) ? -1 : ((b["+i+"] > a["+i+"]) ? 1 : 0));";};function makeSortNumeric(i){return"a["+i+"]-b["+i+"];";};function makeSortNumericDesc(i){return"b["+i+"]-a["+i+"];";};function sortText(a,b){if(table.config.sortLocaleCompare)return a.localeCompare(b);return((a<b)?-1:((a>b)?1:0));};function sortTextDesc(a,b){if(table.config.sortLocaleCompare)return b.localeCompare(a);return((b<a)?-1:((b>a)?1:0));};function sortNumeric(a,b){return a-b;};function sortNumericDesc(a,b){return b-a;};function getCachedSortType(parsers,i){return parsers[i].type;};this.construct=function(settings){return this.each(function(){if(!this.tHead||!this.tBodies)return;var $this,$document,$headers,cache,config,shiftDown=0,sortOrder;this.config={};config=$.extend(this.config,$.tablesorter.defaults,settings);$this=$(this);$.data(this,"tablesorter",config);$headers=buildHeaders(this);this.config.parsers=buildParserCache(this,$headers);cache=buildCache(this);var sortCSS=[config.cssDesc,config.cssAsc];fixColumnWidth(this);$headers.click(function(e){var totalRows=($this[0].tBodies[0]&&$this[0].tBodies[0].rows.length)||0;if(!this.sortDisabled&&totalRows>0){$this.trigger("sortStart");var $cell=$(this);var i=this.column;this.order=this.count++%2;if(this.lockedOrder)this.order=this.lockedOrder;if(!e[config.sortMultiSortKey]){config.sortList=[];if(config.sortForce!=null){var a=config.sortForce;for(var j=0;j<a.length;j++){if(a[j][0]!=i){config.sortList.push(a[j]);}}}config.sortList.push([i,this.order]);}else{if(isValueInArray(i,config.sortList)){for(var j=0;j<config.sortList.length;j++){var s=config.sortList[j],o=config.headerList[s[0]];if(s[0]==i){o.count=s[1];o.count++;s[1]=o.count%2;}}}else{config.sortList.push([i,this.order]);}};setTimeout(function(){setHeadersCss($this[0],$headers,config.sortList,sortCSS);appendToTable($this[0],multisort($this[0],config.sortList,cache));},1);return false;}}).mousedown(function(){if(config.cancelSelection){this.onselectstart=function(){return false};return false;}});$this.bind("update",function(){var me=this;setTimeout(function(){me.config.parsers=buildParserCache(me,$headers);cache=buildCache(me);},1);}).bind("updateCell",function(e,cell){var config=this.config;var pos=[(cell.parentNode.rowIndex-1),cell.cellIndex];cache.normalized[pos[0]][pos[1]]=config.parsers[pos[1]].format(getElementText(config,cell),cell);}).bind("sorton",function(e,list){$(this).trigger("sortStart");config.sortList=list;var sortList=config.sortList;updateHeaderSortCount(this,sortList);setHeadersCss(this,$headers,sortList,sortCSS);appendToTable(this,multisort(this,sortList,cache));}).bind("appendCache",function(){appendToTable(this,cache);}).bind("applyWidgetId",function(e,id){getWidgetById(id).format(this);}).bind("applyWidgets",function(){applyWidget(this);});if($.metadata&&($(this).metadata()&&$(this).metadata().sortlist)){config.sortList=$(this).metadata().sortlist;}if(config.sortList.length>0){$this.trigger("sorton",[config.sortList]);}applyWidget(this);});};this.addParser=function(parser){var l=parsers.length,a=true;for(var i=0;i<l;i++){if(parsers[i].id.toLowerCase()==parser.id.toLowerCase()){a=false;}}if(a){parsers.push(parser);};};this.addWidget=function(widget){widgets.push(widget);};this.formatFloat=function(s){var i=parseFloat(s);return(isNaN(i))?0:i;};this.formatInt=function(s){var i=parseInt(s);return(isNaN(i))?0:i;};this.isDigit=function(s,config){return/^[-+]?\d*$/.test($.trim(s.replace(/[,.']/g,'')));};this.clearTableBody=function(table){if($.browser.msie){function empty(){while(this.firstChild)this.removeChild(this.firstChild);}empty.apply(table.tBodies[0]);}else{table.tBodies[0].innerHTML="";}};}});$.fn.extend({tablesorter:$.tablesorter.construct});var ts=$.tablesorter;ts.addParser({id:"text",is:function(s){return true;},format:function(s){return $.trim(s.toLocaleLowerCase());},type:"text"});ts.addParser({id:"digit",is:function(s,table){var c=table.config;return $.tablesorter.isDigit(s,c);},format:function(s){return $.tablesorter.formatFloat(s);},type:"numeric"});ts.addParser({id:"currency",is:function(s){return/^[£$€?.]/.test(s);},format:function(s){return $.tablesorter.formatFloat(s.replace(new RegExp(/[£$€]/g),""));},type:"numeric"});ts.addParser({id:"ipAddress",is:function(s){return/^\d{2,3}[\.]\d{2,3}[\.]\d{2,3}[\.]\d{2,3}$/.test(s);},format:function(s){var a=s.split("."),r="",l=a.length;for(var i=0;i<l;i++){var item=a[i];if(item.length==2){r+="0"+item;}else{r+=item;}}return $.tablesorter.formatFloat(r);},type:"numeric"});ts.addParser({id:"url",is:function(s){return/^(https?|ftp|file):\/\/$/.test(s);},format:function(s){return jQuery.trim(s.replace(new RegExp(/(https?|ftp|file):\/\//),''));},type:"text"});ts.addParser({id:"isoDate",is:function(s){return/^\d{4}[\/-]\d{1,2}[\/-]\d{1,2}$/.test(s);},format:function(s){return $.tablesorter.formatFloat((s!="")?new Date(s.replace(new RegExp(/-/g),"/")).getTime():"0");},type:"numeric"});ts.addParser({id:"percent",is:function(s){return/\%$/.test($.trim(s));},format:function(s){return $.tablesorter.formatFloat(s.replace(new RegExp(/%/g),""));},type:"numeric"});ts.addParser({id:"usLongDate",is:function(s){return s.match(new RegExp(/^[A-Za-z]{3,10}\.? [0-9]{1,2}, ([0-9]{4}|'?[0-9]{2}) (([0-2]?[0-9]:[0-5][0-9])|([0-1]?[0-9]:[0-5][0-9]\s(AM|PM)))$/));},format:function(s){return $.tablesorter.formatFloat(new Date(s).getTime());},type:"numeric"});ts.addParser({id:"shortDate",is:function(s){return/\d{1,2}[\/\-]\d{1,2}[\/\-]\d{2,4}/.test(s);},format:function(s,table){var c=table.config;s=s.replace(/\-/g,"/");if(c.dateFormat=="us"){s=s.replace(/(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})/,"$3/$1/$2");}else if(c.dateFormat=="uk"){s=s.replace(/(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})/,"$3/$2/$1");}else if(c.dateFormat=="dd/mm/yy"||c.dateFormat=="dd-mm-yy"){s=s.replace(/(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{2})/,"$1/$2/$3");}return $.tablesorter.formatFloat(new Date(s).getTime());},type:"numeric"});ts.addParser({id:"time",is:function(s){return/^(([0-2]?[0-9]:[0-5][0-9])|([0-1]?[0-9]:[0-5][0-9]\s(am|pm)))$/.test(s);},format:function(s){return $.tablesorter.formatFloat(new Date("2000/01/01 "+s).getTime());},type:"numeric"});ts.addParser({id:"metadata",is:function(s){return false;},format:function(s,table,cell){var c=table.config,p=(!c.parserMetadataName)?'sortValue':c.parserMetadataName;return $(cell).metadata()[p];},type:"numeric"});ts.addWidget({id:"zebra",format:function(table){if(table.config.debug){var time=new Date();}var $tr,row=-1,odd;$("tr:visible",table.tBodies[0]).each(function(i){$tr=$(this);if(!$tr.hasClass(table.config.cssChildRow))row++;odd=(row%2==0);$tr.removeClass(table.config.widgetZebra.css[odd?0:1]).addClass(table.config.widgetZebra.css[odd?1:0])});if(table.config.debug){$.tablesorter.benchmark("Applying Zebra widget",time);}}});})(jQuery);

/*
 * jQuery validation plug-in 1.7
 *
 * http://bassistance.de/jquery-plugins/jquery-plugin-validation/
 * http://docs.jquery.com/Plugins/Validation
 *
 * Copyright (c) 2006 - 2008 Jörn Zaefferer
 *
 * $Id: jquery.validate.js 6403 2009-06-17 14:27:16Z joern.zaefferer $
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 */
(function($){$.extend($.fn,{validate:function(options){if(!this.length){options&&options.debug&&window.console&&console.warn("nothing selected, can't validate, returning nothing");return;}var validator=$.data(this[0],'validator');if(validator){return validator;}validator=new $.validator(options,this[0]);$.data(this[0],'validator',validator);if(validator.settings.onsubmit){this.find("input, button").filter(".cancel").click(function(){validator.cancelSubmit=true;});if(validator.settings.submitHandler){this.find("input, button").filter(":submit").click(function(){validator.submitButton=this;});}this.submit(function(event){if(validator.settings.debug)event.preventDefault();function handle(){if(validator.settings.submitHandler){if(validator.submitButton){var hidden=$("<input type='hidden'/>").attr("name",validator.submitButton.name).val(validator.submitButton.value).appendTo(validator.currentForm);}validator.settings.submitHandler.call(validator,validator.currentForm);if(validator.submitButton){hidden.remove();}return false;}return true;}if(validator.cancelSubmit){validator.cancelSubmit=false;return handle();}if(validator.form()){if(validator.pendingRequest){validator.formSubmitted=true;return false;}return handle();}else{validator.focusInvalid();return false;}});}return validator;},valid:function(){if($(this[0]).is('form')){return this.validate().form();}else{var valid=true;var validator=$(this[0].form).validate();this.each(function(){valid&=validator.element(this);});return valid;}},removeAttrs:function(attributes){var result={},$element=this;$.each(attributes.split(/\s/),function(index,value){result[value]=$element.attr(value);$element.removeAttr(value);});return result;},rules:function(command,argument){var element=this[0];if(command){var settings=$.data(element.form,'validator').settings;var staticRules=settings.rules;var existingRules=$.validator.staticRules(element);switch(command){case"add":$.extend(existingRules,$.validator.normalizeRule(argument));staticRules[element.name]=existingRules;if(argument.messages)settings.messages[element.name]=$.extend(settings.messages[element.name],argument.messages);break;case"remove":if(!argument){delete staticRules[element.name];return existingRules;}var filtered={};$.each(argument.split(/\s/),function(index,method){filtered[method]=existingRules[method];delete existingRules[method];});return filtered;}}var data=$.validator.normalizeRules($.extend({},$.validator.metadataRules(element),$.validator.classRules(element),$.validator.attributeRules(element),$.validator.staticRules(element)),element);if(data.required){var param=data.required;delete data.required;data=$.extend({required:param},data);}return data;}});$.extend($.expr[":"],{blank:function(a){return!$.trim(""+a.value);},filled:function(a){return!!$.trim(""+a.value);},unchecked:function(a){return!a.checked;}});$.validator=function(options,form){this.settings=$.extend(true,{},$.validator.defaults,options);this.currentForm=form;this.init();};$.validator.format=function(source,params){if(arguments.length==1)return function(){var args=$.makeArray(arguments);args.unshift(source);return $.validator.format.apply(this,args);};if(arguments.length>2&&params.constructor!=Array){params=$.makeArray(arguments).slice(1);}if(params.constructor!=Array){params=[params];}$.each(params,function(i,n){source=source.replace(new RegExp("\\{"+i+"\\}","g"),n);});return source;};$.extend($.validator,{defaults:{messages:{},groups:{},rules:{},errorClass:"error",validClass:"valid",errorElement:"label",focusInvalid:true,errorContainer:$([]),errorLabelContainer:$([]),onsubmit:true,ignore:[],ignoreTitle:false,onfocusin:function(element){this.lastActive=element;if(this.settings.focusCleanup&&!this.blockFocusCleanup){this.settings.unhighlight&&this.settings.unhighlight.call(this,element,this.settings.errorClass,this.settings.validClass);this.errorsFor(element).hide();}},onfocusout:function(element){if(!this.checkable(element)&&(element.name in this.submitted||!this.optional(element))){this.element(element);}},onkeyup:function(element){if(element.name in this.submitted||element==this.lastElement){this.element(element);}},onclick:function(element){if(element.name in this.submitted)this.element(element);else if(element.parentNode.name in this.submitted)this.element(element.parentNode);},highlight:function(element,errorClass,validClass){$(element).addClass(errorClass).removeClass(validClass);},unhighlight:function(element,errorClass,validClass){$(element).removeClass(errorClass).addClass(validClass);}},setDefaults:function(settings){$.extend($.validator.defaults,settings);},messages:{required:"This field is required.",remote:"Please fix this field.",email:"Please enter a valid email address.",url:"Please enter a valid URL.",date:"Please enter a valid date.",dateISO:"Please enter a valid date (ISO).",number:"Please enter a valid number.",digits:"Please enter only digits.",creditcard:"Please enter a valid credit card number.",equalTo:"Please enter the same value again.",accept:"Please enter a value with a valid extension.",maxlength:$.validator.format("Please enter no more than {0} characters."),minlength:$.validator.format("Please enter at least {0} characters."),rangelength:$.validator.format("Please enter a value between {0} and {1} characters long."),range:$.validator.format("Please enter a value between {0} and {1}."),max:$.validator.format("Please enter a value less than or equal to {0}."),min:$.validator.format("Please enter a value greater than or equal to {0}.")},autoCreateRanges:false,prototype:{init:function(){this.labelContainer=$(this.settings.errorLabelContainer);this.errorContext=this.labelContainer.length&&this.labelContainer||$(this.currentForm);this.containers=$(this.settings.errorContainer).add(this.settings.errorLabelContainer);this.submitted={};this.valueCache={};this.pendingRequest=0;this.pending={};this.invalid={};this.reset();var groups=(this.groups={});$.each(this.settings.groups,function(key,value){$.each(value.split(/\s/),function(index,name){groups[name]=key;});});var rules=this.settings.rules;$.each(rules,function(key,value){rules[key]=$.validator.normalizeRule(value);});function delegate(event){var validator=$.data(this[0].form,"validator"),eventType="on"+event.type.replace(/^validate/,"");validator.settings[eventType]&&validator.settings[eventType].call(validator,this[0]);}$(this.currentForm).validateDelegate(":text, :password, :file, select, textarea","focusin focusout keyup",delegate).validateDelegate(":radio, :checkbox, select, option","click",delegate);if(this.settings.invalidHandler)$(this.currentForm).bind("invalid-form.validate",this.settings.invalidHandler);},form:function(){this.checkForm();$.extend(this.submitted,this.errorMap);this.invalid=$.extend({},this.errorMap);if(!this.valid())$(this.currentForm).triggerHandler("invalid-form",[this]);this.showErrors();return this.valid();},checkForm:function(){this.prepareForm();for(var i=0,elements=(this.currentElements=this.elements());elements[i];i++){this.check(elements[i]);}return this.valid();},element:function(element){element=this.clean(element);this.lastElement=element;this.prepareElement(element);this.currentElements=$(element);var result=this.check(element);if(result){delete this.invalid[element.name];}else{this.invalid[element.name]=true;}if(!this.numberOfInvalids()){this.toHide=this.toHide.add(this.containers);}this.showErrors();return result;},showErrors:function(errors){if(errors){$.extend(this.errorMap,errors);this.errorList=[];for(var name in errors){this.errorList.push({message:errors[name],element:this.findByName(name)[0]});}this.successList=$.grep(this.successList,function(element){return!(element.name in errors);});}this.settings.showErrors?this.settings.showErrors.call(this,this.errorMap,this.errorList):this.defaultShowErrors();},resetForm:function(){if($.fn.resetForm)$(this.currentForm).resetForm();this.submitted={};this.prepareForm();this.hideErrors();this.elements().removeClass(this.settings.errorClass);},numberOfInvalids:function(){return this.objectLength(this.invalid);},objectLength:function(obj){var count=0;for(var i in obj)count++;return count;},hideErrors:function(){this.addWrapper(this.toHide).hide();},valid:function(){return this.size()==0;},size:function(){return this.errorList.length;},focusInvalid:function(){if(this.settings.focusInvalid){try{$(this.findLastActive()||this.errorList.length&&this.errorList[0].element||[]).filter(":visible").focus().trigger("focusin");}catch(e){}}},findLastActive:function(){var lastActive=this.lastActive;return lastActive&&$.grep(this.errorList,function(n){return n.element.name==lastActive.name;}).length==1&&lastActive;},elements:function(){var validator=this,rulesCache={};return $([]).add(this.currentForm.elements).filter(":input").not(":submit, :reset, :image, [disabled]").not(this.settings.ignore).filter(function(){!this.name&&validator.settings.debug&&window.console&&console.error("%o has no name assigned",this);if(this.name in rulesCache||!validator.objectLength($(this).rules()))return false;rulesCache[this.name]=true;return true;});},clean:function(selector){return $(selector)[0];},errors:function(){return $(this.settings.errorElement+"."+this.settings.errorClass,this.errorContext);},reset:function(){this.successList=[];this.errorList=[];this.errorMap={};this.toShow=$([]);this.toHide=$([]);this.currentElements=$([]);},prepareForm:function(){this.reset();this.toHide=this.errors().add(this.containers);},prepareElement:function(element){this.reset();this.toHide=this.errorsFor(element);},check:function(element){element=this.clean(element);if(this.checkable(element)){element=this.findByName(element.name)[0];}var rules=$(element).rules();var dependencyMismatch=false;for(method in rules){var rule={method:method,parameters:rules[method]};try{var result=$.validator.methods[method].call(this,element.value.replace(/\r/g,""),element,rule.parameters);if(result=="dependency-mismatch"){dependencyMismatch=true;continue;}dependencyMismatch=false;if(result=="pending"){this.toHide=this.toHide.not(this.errorsFor(element));return;}if(!result){this.formatAndAdd(element,rule);return false;}}catch(e){this.settings.debug&&window.console&&console.log("exception occured when checking element "+element.id
+", check the '"+rule.method+"' method",e);throw e;}}if(dependencyMismatch)return;if(this.objectLength(rules))this.successList.push(element);return true;},customMetaMessage:function(element,method){if(!$.metadata)return;var meta=this.settings.meta?$(element).metadata()[this.settings.meta]:$(element).metadata();return meta&&meta.messages&&meta.messages[method];},customMessage:function(name,method){var m=this.settings.messages[name];return m&&(m.constructor==String?m:m[method]);},findDefined:function(){for(var i=0;i<arguments.length;i++){if(arguments[i]!==undefined)return arguments[i];}return undefined;},defaultMessage:function(element,method){return this.findDefined(this.customMessage(element.name,method),this.customMetaMessage(element,method),!this.settings.ignoreTitle&&element.title||undefined,$.validator.messages[method],"<strong>Warning: No message defined for "+element.name+"</strong>");},formatAndAdd:function(element,rule){var message=this.defaultMessage(element,rule.method),theregex=/\$?\{(\d+)\}/g;if(typeof message=="function"){message=message.call(this,rule.parameters,element);}else if(theregex.test(message)){message=jQuery.format(message.replace(theregex,'{$1}'),rule.parameters);}this.errorList.push({message:message,element:element});this.errorMap[element.name]=message;this.submitted[element.name]=message;},addWrapper:function(toToggle){if(this.settings.wrapper)toToggle=toToggle.add(toToggle.parent(this.settings.wrapper));return toToggle;},defaultShowErrors:function(){for(var i=0;this.errorList[i];i++){var error=this.errorList[i];this.settings.highlight&&this.settings.highlight.call(this,error.element,this.settings.errorClass,this.settings.validClass);this.showLabel(error.element,error.message);}if(this.errorList.length){this.toShow=this.toShow.add(this.containers);}if(this.settings.success){for(var i=0;this.successList[i];i++){this.showLabel(this.successList[i]);}}if(this.settings.unhighlight){for(var i=0,elements=this.validElements();elements[i];i++){this.settings.unhighlight.call(this,elements[i],this.settings.errorClass,this.settings.validClass);}}this.toHide=this.toHide.not(this.toShow);this.hideErrors();this.addWrapper(this.toShow).show();},validElements:function(){return this.currentElements.not(this.invalidElements());},invalidElements:function(){return $(this.errorList).map(function(){return this.element;});},showLabel:function(element,message){var label=this.errorsFor(element);if(label.length){label.removeClass().addClass(this.settings.errorClass);label.attr("generated")&&label.html(message);}else{label=$("<"+this.settings.errorElement+"/>").attr({"for":this.idOrName(element),generated:true}).addClass(this.settings.errorClass).html(message||"");if(this.settings.wrapper){label=label.hide().show().wrap("<"+this.settings.wrapper+"/>").parent();}if(!this.labelContainer.append(label).length)this.settings.errorPlacement?this.settings.errorPlacement(label,$(element)):label.insertAfter(element);}if(!message&&this.settings.success){label.text("");typeof this.settings.success=="string"?label.addClass(this.settings.success):this.settings.success(label);}this.toShow=this.toShow.add(label);},errorsFor:function(element){var name=this.idOrName(element);return this.errors().filter(function(){return $(this).attr('for')==name;});},idOrName:function(element){return this.groups[element.name]||(this.checkable(element)?element.name:element.id||element.name);},checkable:function(element){return/radio|checkbox/i.test(element.type);},findByName:function(name){var form=this.currentForm;return $(document.getElementsByName(name)).map(function(index,element){return element.form==form&&element.name==name&&element||null;});},getLength:function(value,element){switch(element.nodeName.toLowerCase()){case'select':return $("option:selected",element).length;case'input':if(this.checkable(element))return this.findByName(element.name).filter(':checked').length;}return value.length;},depend:function(param,element){return this.dependTypes[typeof param]?this.dependTypes[typeof param](param,element):true;},dependTypes:{"boolean":function(param,element){return param;},"string":function(param,element){return!!$(param,element.form).length;},"function":function(param,element){return param(element);}},optional:function(element){return!$.validator.methods.required.call(this,$.trim(element.value),element)&&"dependency-mismatch";},startRequest:function(element){if(!this.pending[element.name]){this.pendingRequest++;this.pending[element.name]=true;}},stopRequest:function(element,valid){this.pendingRequest--;if(this.pendingRequest<0)this.pendingRequest=0;delete this.pending[element.name];if(valid&&this.pendingRequest==0&&this.formSubmitted&&this.form()){$(this.currentForm).submit();this.formSubmitted=false;}else if(!valid&&this.pendingRequest==0&&this.formSubmitted){$(this.currentForm).triggerHandler("invalid-form",[this]);this.formSubmitted=false;}},previousValue:function(element){return $.data(element,"previousValue")||$.data(element,"previousValue",{old:null,valid:true,message:this.defaultMessage(element,"remote")});}},classRuleSettings:{required:{required:true},email:{email:true},url:{url:true},date:{date:true},dateISO:{dateISO:true},dateDE:{dateDE:true},number:{number:true},numberDE:{numberDE:true},digits:{digits:true},creditcard:{creditcard:true}},addClassRules:function(className,rules){className.constructor==String?this.classRuleSettings[className]=rules:$.extend(this.classRuleSettings,className);},classRules:function(element){var rules={};var classes=$(element).attr('class');classes&&$.each(classes.split(' '),function(){if(this in $.validator.classRuleSettings){$.extend(rules,$.validator.classRuleSettings[this]);}});return rules;},attributeRules:function(element){var rules={};var $element=$(element);for(method in $.validator.methods){var value=$element.attr(method);if(value){rules[method]=value;}}if(rules.maxlength&&/-1|2147483647|524288/.test(rules.maxlength)){delete rules.maxlength;}return rules;},metadataRules:function(element){if(!$.metadata)return{};var meta=$.data(element.form,'validator').settings.meta;return meta?$(element).metadata()[meta]:$(element).metadata();},staticRules:function(element){var rules={};var validator=$.data(element.form,'validator');if(validator.settings.rules){rules=$.validator.normalizeRule(validator.settings.rules[element.name])||{};}return rules;},normalizeRules:function(rules,element){$.each(rules,function(prop,val){if(val===false){delete rules[prop];return;}if(val.param||val.depends){var keepRule=true;switch(typeof val.depends){case"string":keepRule=!!$(val.depends,element.form).length;break;case"function":keepRule=val.depends.call(element,element);break;}if(keepRule){rules[prop]=val.param!==undefined?val.param:true;}else{delete rules[prop];}}});$.each(rules,function(rule,parameter){rules[rule]=$.isFunction(parameter)?parameter(element):parameter;});$.each(['minlength','maxlength','min','max'],function(){if(rules[this]){rules[this]=Number(rules[this]);}});$.each(['rangelength','range'],function(){if(rules[this]){rules[this]=[Number(rules[this][0]),Number(rules[this][1])];}});if($.validator.autoCreateRanges){if(rules.min&&rules.max){rules.range=[rules.min,rules.max];delete rules.min;delete rules.max;}if(rules.minlength&&rules.maxlength){rules.rangelength=[rules.minlength,rules.maxlength];delete rules.minlength;delete rules.maxlength;}}if(rules.messages){delete rules.messages;}return rules;},normalizeRule:function(data){if(typeof data=="string"){var transformed={};$.each(data.split(/\s/),function(){transformed[this]=true;});data=transformed;}return data;},addMethod:function(name,method,message){$.validator.methods[name]=method;$.validator.messages[name]=message!=undefined?message:$.validator.messages[name];if(method.length<3){$.validator.addClassRules(name,$.validator.normalizeRule(name));}},methods:{required:function(value,element,param){if(!this.depend(param,element))return"dependency-mismatch";switch(element.nodeName.toLowerCase()){case'select':var val=$(element).val();return val&&val.length>0;case'input':if(this.checkable(element))return this.getLength(value,element)>0;default:return $.trim(value).length>0;}},remote:function(value,element,param){if(this.optional(element))return"dependency-mismatch";var previous=this.previousValue(element);if(!this.settings.messages[element.name])this.settings.messages[element.name]={};previous.originalMessage=this.settings.messages[element.name].remote;this.settings.messages[element.name].remote=previous.message;param=typeof param=="string"&&{url:param}||param;if(previous.old!==value){previous.old=value;var validator=this;this.startRequest(element);var data={};data[element.name]=value;$.ajax($.extend(true,{url:param,mode:"abort",port:"validate"+element.name,dataType:"json",data:data,success:function(response){validator.settings.messages[element.name].remote=previous.originalMessage;var valid=response===true;if(valid){var submitted=validator.formSubmitted;validator.prepareElement(element);validator.formSubmitted=submitted;validator.successList.push(element);validator.showErrors();}else{var errors={};var message=(previous.message=response||validator.defaultMessage(element,"remote"));errors[element.name]=$.isFunction(message)?message(value):message;validator.showErrors(errors);}previous.valid=valid;validator.stopRequest(element,valid);}},param));return"pending";}else if(this.pending[element.name]){return"pending";}return previous.valid;},minlength:function(value,element,param){return this.optional(element)||this.getLength($.trim(value),element)>=param;},maxlength:function(value,element,param){return this.optional(element)||this.getLength($.trim(value),element)<=param;},rangelength:function(value,element,param){var length=this.getLength($.trim(value),element);return this.optional(element)||(length>=param[0]&&length<=param[1]);},min:function(value,element,param){return this.optional(element)||value>=param;},max:function(value,element,param){return this.optional(element)||value<=param;},range:function(value,element,param){return this.optional(element)||(value>=param[0]&&value<=param[1]);},email:function(value,element){return this.optional(element)||/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(value);},url:function(value,element){return this.optional(element)||/^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value);},date:function(value,element){return this.optional(element)||!/Invalid|NaN/.test(new Date(value));},dateISO:function(value,element){return this.optional(element)||/^\d{4}[\/-]\d{1,2}[\/-]\d{1,2}$/.test(value);},number:function(value,element){return this.optional(element)||/^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/.test(value);},digits:function(value,element){return this.optional(element)||/^\d+$/.test(value);},creditcard:function(value,element){if(this.optional(element))return"dependency-mismatch";if(/[^0-9-]+/.test(value))return false;var nCheck=0,nDigit=0,bEven=false;value=value.replace(/\D/g,"");for(var n=value.length-1;n>=0;n--){var cDigit=value.charAt(n);var nDigit=parseInt(cDigit,10);if(bEven){if((nDigit*=2)>9)nDigit-=9;}nCheck+=nDigit;bEven=!bEven;}return(nCheck%10)==0;},accept:function(value,element,param){param=typeof param=="string"?param.replace(/,/g,'|'):"png|jpe?g|gif";return this.optional(element)||value.match(new RegExp(".("+param+")$","i"));},equalTo:function(value,element,param){var target=$(param).unbind(".validate-equalTo").bind("blur.validate-equalTo",function(){$(element).valid();});return value==target.val();}}});$.format=$.validator.format;})(jQuery);;(function($){var ajax=$.ajax;var pendingRequests={};$.ajax=function(settings){settings=$.extend(settings,$.extend({},$.ajaxSettings,settings));var port=settings.port;if(settings.mode=="abort"){if(pendingRequests[port]){pendingRequests[port].abort();}return(pendingRequests[port]=ajax.apply(this,arguments));}return ajax.apply(this,arguments);};})(jQuery);;(function($){if(!jQuery.event.special.focusin&&!jQuery.event.special.focusout&&document.addEventListener){$.each({focus:'focusin',blur:'focusout'},function(original,fix){$.event.special[fix]={setup:function(){this.addEventListener(original,handler,true);},teardown:function(){this.removeEventListener(original,handler,true);},handler:function(e){arguments[0]=$.event.fix(e);arguments[0].type=fix;return $.event.handle.apply(this,arguments);}};function handler(e){e=$.event.fix(e);e.type=fix;return $.event.handle.call(this,e);}});};$.extend($.fn,{validateDelegate:function(delegate,type,handler){return this.bind(type,function(event){var target=$(event.target);if(target.is(delegate)){return handler.apply(target,arguments);}});}});})(jQuery);

/* Additional Validators */
jQuery.validator.addMethod("phoneUSwExt",function(phone_number,element){phone_number=phone_number.replace(/\s+/g," ");return this.optional(element)||(phone_number.length>9&&phone_number.match(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-[2-9]\d{2}-\d{4}$/))||(phone_number.length>9&&phone_number.match(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-[2-9]\d{2}-\d{4}\s[\w]+/));},"Please specify a valid phone number");jQuery.validator.addMethod("ziporpostalcode",function(pcode,element){element.value=pcode=element.value.toUpperCase();pcode=jQuery.trim(pcode);pcode=pcode.replace(/\s+/g,"");return this.optional(element)||(pcode.length>5&&pcode.match(/^[a-ceghj-npr-tvxy]\d[a-z]\d[a-z]\d$/i))||(pcode.length==5&&!isNaN(pcode));},"Please specify a valid postal or zip code");jQuery.validator.addMethod("creditcardtypes",function(value,element,param){value=value.replace(/\s/g,"");if(/[^0-9-]+/.test(value))
return false;value=value.replace(/\D/g,"");var validTypes=0x0000;if(param.mastercard)
validTypes|=0x0001;if(param.visa)
validTypes|=0x0002;if(param.amex)
validTypes|=0x0004;if(param.dinersclub)
validTypes|=0x0008;if(param.enroute)
validTypes|=0x0010;if(param.discover)
validTypes|=0x0020;if(param.jcb)
validTypes|=0x0040;if(param.unknown)
validTypes|=0x0080;if(param.all)
validTypes=0x0001|0x0002|0x0004|0x0008|0x0010|0x0020|0x0040|0x0080;if(validTypes&0x0001&&/^(51|52|53|54|55)/.test(value)){return value.length==16;}
if(validTypes&0x0002&&/^(4)/.test(value)){return value.length==16;}
if(validTypes&0x0004&&/^(34|37)/.test(value)){return value.length==15;}
if(validTypes&0x0008&&/^(300|301|302|303|304|305|36|38)/.test(value)){return value.length==14;}
if(validTypes&0x0010&&/^(2014|2149)/.test(value)){return value.length==15;}
if(validTypes&0x0020&&/^(6011)/.test(value)){return value.length==16;}
if(validTypes&0x0040&&/^(3)/.test(value)){return value.length==16;}
if(validTypes&0x0040&&/^(2131|1800)/.test(value)){return value.length==15;}
if(validTypes&0x0080){return true;}
return false;},"Please enter a valid credit card number.");

