/*
 * jQuery UI Widget 1.8.5
 *
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * http://docs.jquery.com/UI/Widget
 */
(function(a,e){if(a.cleanData){var d=a.cleanData;a.cleanData=function(b){for(var g=0,f;(f=b[g])!=null;g++){a(f).triggerHandler("remove")}d(b)}}else{var c=a.fn.remove;a.fn.remove=function(b,f){return this.each(function(){if(!f){if(!b||a.filter(b,[this]).length){a("*",this).add([this]).each(function(){a(this).triggerHandler("remove")})}}return c.call(a(this),b,f)})}}a.widget=function(b,j,i){var h=b.split(".")[0],g;b=b.split(".")[1];g=h+"-"+b;if(!i){i=j;j=a.Widget}a.expr[":"][g]=function(f){return !!a.data(f,b)};a[h]=a[h]||{};a[h][b]=function(f,k){arguments.length&&this._createWidget(f,k)};j=new j;j.options=a.extend(true,{},j.options);a[h][b].prototype=a.extend(true,j,{namespace:h,widgetName:b,widgetEventPrefix:a[h][b].prototype.widgetEventPrefix||b,widgetBaseClass:g},i);a.widget.bridge(b,a[h][b])};a.widget.bridge=function(b,f){a.fn[b]=function(k){var j=typeof k==="string",i=Array.prototype.slice.call(arguments,1),g=this;k=!j&&i.length?a.extend.apply(null,[true,k].concat(i)):k;if(j&&k.substring(0,1)==="_"){return g}j?this.each(function(){var l=a.data(this,b);if(!l){throw"cannot call methods on "+b+" prior to initialization; attempted to call method '"+k+"'"}if(!a.isFunction(l[k])){throw"no such method '"+k+"' for "+b+" widget instance"}var h=l[k].apply(l,i);if(h!==l&&h!==e){g=h;return false}}):this.each(function(){var h=a.data(this,b);h?h.option(k||{})._init():a.data(this,b,new f(k,this))});return g}};a.Widget=function(b,f){arguments.length&&this._createWidget(b,f)};a.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(b,g){a.data(g,this.widgetName,this);this.element=a(g);this.options=a.extend(true,{},this.options,a.metadata&&a.metadata.get(g)[this.widgetName],b);var f=this;this.element.bind("remove."+this.widgetName,function(){f.destroy()});this._create();this._init()},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(b,h){var g=b,f=this;if(arguments.length===0){return a.extend({},f.options)}if(typeof b==="string"){if(h===e){return this.options[b]}g={};g[b]=h}a.each(g,function(j,i){f._setOption(j,i)});return f},_setOption:function(b,f){this.options[b]=f;if(b==="disabled"){this.widget()[f?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",f)}return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(b,j,i){var h=this.options[b];j=a.Event(j);j.type=(b===this.widgetEventPrefix?b:this.widgetEventPrefix+b).toLowerCase();i=i||{};if(j.originalEvent){b=a.event.props.length;for(var g;b;){g=a.event.props[--b];j[g]=j.originalEvent[g]}}this.element.trigger(j,i);return !(a.isFunction(h)&&h.call(this.element[0],j,i)===false||j.isDefaultPrevented())}}})(jQuery);(function(a){a.widget("thomaskahn.smoothDivScroll",{options:{scrollingHotSpotLeft:"div.scrollingHotSpotLeft",scrollingHotSpotRight:"div.scrollingHotSpotRight",scrollableArea:"div.scrollableArea",scrollWrapper:"div.scrollWrapper",hiddenOnStart:false,ajaxContentURL:"",countOnlyClass:"",scrollStep:15,scrollInterval:10,mouseDownSpeedBooster:3,autoScroll:"",autoScrollDirection:"right",autoScrollStep:5,autoScrollInterval:10,visibleHotSpots:"",hotSpotsVisibleTime:5,startAtElementId:""},_create:function(){var b=this,d=this.options,c=this.element;c.data("scrollWrapper",c.find(d.scrollWrapper));c.data("scrollingHotSpotRight",c.find(d.scrollingHotSpotRight));c.data("scrollingHotSpotLeft",c.find(d.scrollingHotSpotLeft));c.data("scrollableArea",c.find(d.scrollableArea));c.data("speedBooster",1);c.data("motherElementOffset",c.offset().left);c.data("scrollXPos",0);c.data("hotSpotWidth",c.find(d.scrollingHotSpotLeft).width());c.data("scrollableAreaWidth",0);c.data("startingPosition",0);c.data("rightScrollInterval",null);c.data("leftScrollInterval",null);c.data("autoScrollInterval",null);c.data("hideHotSpotBackgroundsInterval",null);c.data("previousScrollLeft",0);c.data("pingPongDirection","right");c.data("getNextElementWidth",true);c.data("swapAt",null);c.data("startAtElementHasNotPassed",true);c.data("swappedElement",null);c.data("originalElements",c.data("scrollableArea").children(d.countOnlyClass));c.data("visible",true);c.data("initialAjaxContentLoaded",false);c.data("enabled",true);c.data("scrollWrapper").scrollLeft(c.data("startingPosition"));if(d.autoScroll!=="always"){switch(d.visibleHotSpots){case"always":b.showHotSpotBackgrounds();break;case"onstart":b.showHotSpotBackgrounds();c.data("hideHotSpotBackgroundsInterval",setTimeout(function(){b.hideHotSpotBackgrounds("slow")},(d.hotSpotsVisibleTime*1000)));break;default:break}}c.data("scrollingHotSpotRight").bind("mousemove",function(g){var f=g.pageX-(this.offsetLeft+c.data("motherElementOffset"));c.data("scrollXPos",Math.round((f/c.data("hotSpotWidth"))*d.scrollStep));if(c.data("scrollXPos")===Infinity){c.data("scrollXPos",0)}});c.data("scrollingHotSpotRight").bind("mouseover",function(){if((d.autoScroll==="onstart"&&c.data("autoScrollInterval")!==null)){clearInterval(c.data("autoScrollInterval"));c.data("autoScrollInterval",null);b._trigger("autoScrollIntervalStopped")}c.data("rightScrollInterval",setInterval(function(){if(c.data("scrollXPos")>0&&c.data("enabled")){c.data("scrollWrapper").scrollLeft(c.data("scrollWrapper").scrollLeft()+(c.data("scrollXPos")*c.data("speedBooster")));b._showHideHotSpots()}},d.scrollInterval));b._trigger("mouseOverRightHotSpot")});c.data("scrollingHotSpotRight").bind("mouseout",function(){clearInterval(c.data("rightScrollInterval"));c.data("scrollXPos",0)});c.data("scrollingHotSpotRight").bind("mousedown",function(){c.data("speedBooster",d.mouseDownSpeedBooster)});a("body").bind("mouseup",function(){c.data("speedBooster",1)});c.data("scrollingHotSpotLeft").bind("mousemove",function(g){var f=c.data("scrollingHotSpotLeft").innerWidth()-(g.pageX-c.data("motherElementOffset"));c.data("scrollXPos",Math.round((f/c.data("hotSpotWidth"))*d.scrollStep));if(c.data("scrollXPos")===Infinity){c.data("scrollXPos",0)}});c.data("scrollingHotSpotLeft").bind("mouseover",function(){if((d.autoScroll==="onstart"&&c.data("autoScrollInterval")!==null)){clearInterval(c.data("autoScrollInterval"));c.data("autoScrollInterval",null);b._trigger("autoScrollIntervalStopped")}c.data("leftScrollInterval",setInterval(function(){if(c.data("scrollXPos")>0&&c.data("enabled")){c.data("scrollWrapper").scrollLeft(c.data("scrollWrapper").scrollLeft()-(c.data("scrollXPos")*c.data("speedBooster")));b._showHideHotSpots()}},d.scrollInterval));b._trigger("mouseOverLeftHotSpot")});c.data("scrollingHotSpotLeft").bind("mouseout",function(){clearInterval(c.data("leftScrollInterval"));c.data("scrollXPos",0)});c.data("scrollingHotSpotLeft").bind("mousedown",function(){c.data("speedBooster",d.mouseDownSpeedBooster)});a(window).bind("resize",function(){if(!(d.hiddenOnStart)){b._showHideHotSpots()}b._trigger("windowResized")});if(d.ajaxContentURL.length>0){b.replaceContent(d.ajaxContentURL)}else{b.recalculateScrollableArea()}if(d.hiddenOnStart){b.hide()}if((d.autoScroll.length>0)&&!(d.hiddenOnStart)&&(d.ajaxContentURL.length<=0)){b.startAutoScroll()}},showHotSpotBackgrounds:function(d){var b=this,c=this.element;if(d!==undefined){c.data("scrollingHotSpotLeft").css("opacity","0.0");c.data("scrollingHotSpotRight").css("opacity","0.0");c.data("scrollingHotSpotLeft").addClass("scrollingHotSpotLeftVisible");c.data("scrollingHotSpotRight").addClass("scrollingHotSpotRightVisible");c.data("scrollingHotSpotLeft").fadeTo(d,0.35);c.data("scrollingHotSpotRight").fadeTo(d,0.35)}else{c.data("scrollingHotSpotLeft").addClass("scrollingHotSpotLeftVisible");c.data("scrollingHotSpotLeft").removeAttr("style");c.data("scrollingHotSpotRight").addClass("scrollingHotSpotRightVisible");c.data("scrollingHotSpotRight").removeAttr("style")}b._showHideHotSpots()},hideHotSpotBackgrounds:function(c){var b=this.element;if(c!==undefined){b.data("scrollingHotSpotLeft").fadeTo(c,0,function(){b.data("scrollingHotSpotLeft").removeClass("scrollingHotSpotLeftVisible")});b.data("scrollingHotSpotRight").fadeTo(c,0,function(){b.data("scrollingHotSpotRight").removeClass("scrollingHotSpotRightVisible")})}else{b.data("scrollingHotSpotLeft").removeClass("scrollingHotSpotLeftVisible");b.data("scrollingHotSpotLeft").removeAttr("style");b.data("scrollingHotSpotRight").removeClass("scrollingHotSpotRightVisible");b.data("scrollingHotSpotRight").removeAttr("style")}},_showHideHotSpots:function(){var b=this,c=this.element,d=this.options;if(d.autoScroll!=="always"){if(c.data("scrollableAreaWidth")<=(c.data("scrollWrapper").innerWidth())){c.data("scrollingHotSpotLeft").hide();c.data("scrollingHotSpotRight").hide()}else{if(c.data("scrollWrapper").scrollLeft()===0){c.data("scrollingHotSpotLeft").hide();c.data("scrollingHotSpotRight").show();b._trigger("scrollLeftLimitReached");clearInterval(c.data("leftScrollInterval"));c.data("leftScrollInterval",null)}else{if(c.data("scrollableAreaWidth")<=(c.data("scrollWrapper").innerWidth()+c.data("scrollWrapper").scrollLeft())){c.data("scrollingHotSpotLeft").show();c.data("scrollingHotSpotRight").hide();b._trigger("scrollRightLimitReached");clearInterval(c.data("rightScrollInterval"));c.data("rightScrollInterval",null)}else{c.data("scrollingHotSpotLeft").show();c.data("scrollingHotSpotRight").show()}}}}else{c.data("scrollingHotSpotLeft").hide();c.data("scrollingHotSpotRight").hide()}},moveToElement:function(f,e){var b=this,c=this.element,h=this.options,d=0,g=false;switch(f){case"first":c.data("scrollXPos",0);b._trigger("movedToFirstElement");break;case"start":c.data("scrollableArea").children(h.countOnlyClass).each(function(){if((h.startAtElementId.length>0)&&((a(this).attr("id"))===h.startAtElementId)){c.data("startingPosition",d);g=true}d=d+a(this).outerWidth(true)});c.data("scrollXPos",c.data("startingPosition"));b._trigger("movedToStartElement");break;case"last":c.data("scrollXPos",c.data("scrollableAreaWidth"));b._trigger("movedToLastElement");break;case"number":if(!(isNaN(e))){c.data("scrollableArea").children(h.countOnlyClass).each(function(i){if(i===(e-1)){c.data("scrollXPos",d)}d=d+a(this).outerWidth(true)})}b._trigger("movedToElementNumber",null,{elementNumber:e});break;default:break}c.data("scrollWrapper").scrollLeft(c.data("scrollXPos"));b._showHideHotSpots()},addContent:function(e,c){var b=this,d=this.element;a.get(e,function(f){if(c==="first"){d.data("scrollableArea").children(":first").before(f)}else{d.data("scrollableArea").children(":last").after(f)}b.recalculateScrollableArea();b._showHideHotSpots()})},replaceContent:function(d){var b=this,c=this.element;c.data("scrollableArea").load(d,function(){b.recalculateScrollableArea();b.moveToElement("first");b._showHideHotSpots();c.data("startingPosition",0)})},recalculateScrollableArea:function(){var d=0,f=false,e=this.options,c=this.element,b=this;c.data("scrollableArea").children(e.countOnlyClass).each(function(){if((e.startAtElementId.length>0)&&((a(this).attr("id"))===e.startAtElementId)){c.data("startingPosition",d);f=true}d=d+a(this).outerWidth(true)});if(!(f)){c.data("startAtElementId","")}c.data("scrollableAreaWidth",d);c.data("scrollableArea").width(c.data("scrollableAreaWidth"));if(!(c.data("initialAjaxContentLoaded"))){if((e.autoScroll.length>0)&&!(e.hiddenOnStart)&&(e.ajaxContentURL.length>0)){b.startAutoScroll();c.data("initialAjaxContentLoaded",true)}}},stopAutoScroll:function(){var b=this,c=this.element;clearInterval(c.data("autoScrollInterval"));c.data("autoScrollInterval",null);b._showHideHotSpots();b._trigger("autoScrollStopped")},startAutoScroll:function(){var b=this,c=this.element,d=this.options;b._showHideHotSpots();clearInterval(c.data("autoScrollInterval"));c.data("autoScrollInterval",null);b._trigger("autoScrollStarted");c.data("autoScrollInterval",setInterval(function(){if(!(c.data("visible"))||(c.data("scrollableAreaWidth")<=(c.data("scrollWrapper").innerWidth()))){clearInterval(c.data("autoScrollInterval"));c.data("autoScrollInterval",null)}else{c.data("previousScrollLeft",c.data("scrollWrapper").scrollLeft());switch(d.autoScrollDirection){case"right":c.data("scrollWrapper").scrollLeft(c.data("scrollWrapper").scrollLeft()+d.autoScrollStep);if(c.data("previousScrollLeft")===c.data("scrollWrapper").scrollLeft()){b._trigger("autoScrollRightLimitReached");clearInterval(c.data("autoScrollInterval"));c.data("autoScrollInterval",null);b._trigger("autoScrollIntervalStopped")}break;case"left":c.data("scrollWrapper").scrollLeft(c.data("scrollWrapper").scrollLeft()-d.autoScrollStep);if(c.data("previousScrollLeft")===c.data("scrollWrapper").scrollLeft()){b._trigger("autoScrollLeftLimitReached");clearInterval(c.data("autoScrollInterval"));c.data("autoScrollInterval",null);b._trigger("autoScrollIntervalStopped")}break;case"backandforth":if(c.data("pingPongDirection")==="right"){c.data("scrollWrapper").scrollLeft(c.data("scrollWrapper").scrollLeft()+(d.autoScrollStep))}else{c.data("scrollWrapper").scrollLeft(c.data("scrollWrapper").scrollLeft()-(d.autoScrollStep))}if(c.data("previousScrollLeft")===c.data("scrollWrapper").scrollLeft()){if(c.data("pingPongDirection")==="right"){c.data("pingPongDirection","left");b._trigger("autoScrollRightLimitReached")}else{c.data("pingPongDirection","right");b._trigger("autoScrollLeftLimitReached")}}break;case"endlessloopright":if(c.data("getNextElementWidth")){if((d.startAtElementId.length>0)&&(c.data("startAtElementHasNotPassed"))){c.data("swapAt",a("#"+d.startAtElementId).outerWidth(true));c.data("startAtElementHasNotPassed",false)}else{c.data("swapAt",c.data("scrollableArea").children(":first").outerWidth(true))}c.data("getNextElementWidth",false)}c.data("scrollWrapper").scrollLeft(c.data("scrollWrapper").scrollLeft()+d.autoScrollStep);if(c.data("swapAt")<=c.data("scrollWrapper").scrollLeft()){c.data("swappedElement",c.data("scrollableArea").children(":first").detach());c.data("scrollableArea").append(c.data("swappedElement"));c.data("scrollWrapper").scrollLeft(c.data("scrollWrapper").scrollLeft()-c.data("swappedElement").outerWidth(true));c.data("getNextElementWidth",true)}break;case"endlessloopleft":if(c.data("getNextElementWidth")){if((d.startAtElementId.length>0)&&(c.data("startAtElementHasNotPassed"))){c.data("swapAt",a("#"+d.startAtElementId).outerWidth(true));c.data("startAtElementHasNotPassed",false)}else{c.data("swapAt",c.data("scrollableArea").children(":first").outerWidth(true))}c.data("getNextElementWidth",false)}c.data("scrollWrapper").scrollLeft(c.data("scrollWrapper").scrollLeft()-d.autoScrollStep);if(c.data("scrollWrapper").scrollLeft()===0){c.data("swappedElement",c.data("scrollableArea").children(":last").detach());c.data("scrollableArea").prepend(c.data("swappedElement"));c.data("scrollWrapper").scrollLeft(c.data("scrollWrapper").scrollLeft()+c.data("swappedElement").outerWidth(true));c.data("getNextElementWidth",true)}break;default:break}}},d.autoScrollInterval))},restoreOriginalElements:function(){var b=this,c=this.element;c.data("scrollableArea").html(c.data("originalElements"));b.recalculateScrollableArea();b.moveToElement("first")},show:function(){var b=this.element;b.data("visible",true);b.show()},hide:function(){var b=this.element;b.data("visible",false);b.hide()},enable:function(){var b=this.element;b.data("enabled",true)},disable:function(){var b=this.element;clearInterval(b.data("autoScrollInterval"));clearInterval(b.data("rightScrollInterval"));clearInterval(b.data("leftScrollInterval"));clearInterval(b.data("hideHotSpotBackgroundsInterval"));b.data("enabled",false)},destroy:function(){var b=this.element;clearInterval(b.data("autoScrollInterval"));clearInterval(b.data("rightScrollInterval"));clearInterval(b.data("leftScrollInterval"));clearInterval(b.data("hideHotSpotBackgroundsInterval"));b.data("scrollingHotSpotRight").unbind("mouseover");b.data("scrollingHotSpotRight").unbind("mouseout");b.data("scrollingHotSpotRight").unbind("mousedown");b.data("scrollingHotSpotLeft").unbind("mouseover");b.data("scrollingHotSpotLeft").unbind("mouseout");b.data("scrollingHotSpotLeft").unbind("mousedown");b.data("scrollableArea").html(b.data("originalElements"));b.data("scrollableArea").removeAttr("style");b.data("scrollingHotSpotRight").removeAttr("style");b.data("scrollingHotSpotLeft").removeAttr("style");b.data("scrollWrapper").scrollLeft(0);b.data("scrollingHotSpotLeft").removeClass("scrollingHotSpotLeftVisible");b.data("scrollingHotSpotRight").removeClass("scrollingHotSpotRightVisible");b.data("scrollingHotSpotRight").hide();b.data("scrollingHotSpotLeft").hide();a.Widget.prototype.destroy.apply(this,arguments)}})})(jQuery);
