/* Copyright (c) 2007 Paul Bakaus (paul.bakaus@googlemail.com) and Brandon Aaron (brandon.aaron@gmail.com || http://brandonaaron.net)
 * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
 * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
 *
 * $LastChangedDate: 2007-12-20 15:43:48 +0100 (Do, 20 Dez 2007) $
 * $Rev: 4257 $
 *
 * Version: @VERSION
 *
 * Requires: jQuery 1.2+
 */

(function($){$.dimensions={version:'@VERSION'};$.each(['Height','Width'],function(i,name){$.fn['inner'+name]=function(){if(!this[0])return;var torl=name=='Height'?'Top':'Left',borr=name=='Height'?'Bottom':'Right';return this.is(':visible')?this[0]['client'+name]:num(this,name.toLowerCase())+num(this,'padding'+torl)+num(this,'padding'+borr);};$.fn['outer'+name]=function(options){if(!this[0])return;var torl=name=='Height'?'Top':'Left',borr=name=='Height'?'Bottom':'Right';options=$.extend({margin:false},options||{});var val=this.is(':visible')?this[0]['offset'+name]:num(this,name.toLowerCase())
+num(this,'border'+torl+'Width')+num(this,'border'+borr+'Width')
+num(this,'padding'+torl)+num(this,'padding'+borr);return val+(options.margin?(num(this,'margin'+torl)+num(this,'margin'+borr)):0);};});$.each(['Left','Top'],function(i,name){$.fn['scroll'+name]=function(val){if(!this[0])return;return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(name=='Left'?val:$(window)['scrollLeft'](),name=='Top'?val:$(window)['scrollTop']()):this['scroll'+name]=val;}):this[0]==window||this[0]==document?self[(name=='Left'?'pageXOffset':'pageYOffset')]||$.boxModel&&document.documentElement['scroll'+name]||document.body['scroll'+name]:this[0]['scroll'+name];};});$.fn.extend({position:function(){var left=0,top=0,elem=this[0],offset,parentOffset,offsetParent,results;if(elem){offsetParent=this.offsetParent();offset=this.offset();parentOffset=offsetParent.offset();offset.top-=num(elem,'marginTop');offset.left-=num(elem,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};}
return results;},offsetParent:function(){var offsetParent=this[0].offsetParent;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&$.css(offsetParent,'position')=='static'))
offsetParent=offsetParent.offsetParent;return $(offsetParent);}});function num(el,prop){return parseInt($.curCSS(el.jquery?el[0]:el,prop,true))||0;};})(jQuery);(function($){$.ui=$.ui||{};$.extend($.ui,{plugin:{add:function(module,option,set){var proto=$.ui[module].prototype;for(var i in set){proto.plugins[i]=proto.plugins[i]||[];proto.plugins[i].push([option,set[i]]);}},call:function(instance,name,arguments){var set=instance.plugins[name];if(!set)return;for(var i=0;i<set.length;i++){if(instance.options[set[i][0]])set[i][1].apply(instance.element,arguments);}}},cssCache:{},css:function(name){if($.ui.cssCache[name])return $.ui.cssCache[name];var tmp=$('<div class="ui-resizable-gen">').addClass(name).css({position:'absolute',top:'-5000px',left:'-5000px',display:'block'}).appendTo('body');$.ui.cssCache[name]=!!(((/^[1-9]/).test(tmp.css('height'))||(/^[1-9]/).test(tmp.css('width'))||!(/none/).test(tmp.css('backgroundImage'))||!(/transparent|rgba\(0, 0, 0, 0\)/).test(tmp.css('backgroundColor'))));try{$('body').get(0).removeChild(tmp.get(0));}catch(e){}
return $.ui.cssCache[name];},disableSelection:function(e){if(!e)return;e.unselectable="on";e.onselectstart=function(){return false;};if(e.style)e.style.MozUserSelect="none";},enableSelection:function(e){if(!e)return;e.unselectable="off";e.onselectstart=function(){return true;};if(e.style)e.style.MozUserSelect="";}});$.fn.extend({mouseInteraction:function(o){return this.each(function(){new $.ui.mouseInteraction(this,o);});},removeMouseInteraction:function(o){return this.each(function(){if($.data(this,"ui-mouse"))
$.data(this,"ui-mouse").destroy();});}});$.ui.mouseInteraction=function(element,options){var self=this;this.element=element;$.data(this.element,"ui-mouse",this);this.options=$.extend({},options);$(element).bind('mousedown.draggable',function(){return self.click.apply(self,arguments);});if($.browser.msie)$(element).attr('unselectable','on');};$.extend($.ui.mouseInteraction.prototype,{destroy:function(){$(this.element).unbind('mousedown.draggable');},trigger:function(){return this.click.apply(this,arguments);},click:function(e){if(e.which!=1||$.inArray(e.target.nodeName.toLowerCase(),this.options.dragPrevention)!=-1||(this.options.condition&&!this.options.condition.apply(this.options.executor||this,[e,this.element])))return true;var self=this;var initialize=function(){self._MP={left:e.pageX,top:e.pageY};$(document).bind('mouseup.draggable',function(){return self.stop.apply(self,arguments);});$(document).bind('mousemove.draggable',function(){return self.drag.apply(self,arguments);});};if(this.options.delay){if(this.timer)clearInterval(this.timer);this.timer=setTimeout(initialize,this.options.delay);}else{initialize();}
return false;},stop:function(e){var o=this.options;if(!this.initialized)return $(document).unbind('mouseup.draggable').unbind('mousemove.draggable');if(this.options.stop)this.options.stop.call(this.options.executor||this,e,this.element);$(document).unbind('mouseup.draggable').unbind('mousemove.draggable');this.initialized=false;return false;},drag:function(e){var o=this.options;if($.browser.msie&&!e.button)return this.stop.apply(this,[e]);if(!this.initialized&&(Math.abs(this._MP.left-e.pageX)>=o.distance||Math.abs(this._MP.top-e.pageY)>=o.distance)){if(this.options.start)this.options.start.call(this.options.executor||this,e,this.element);this.initialized=true;}else{if(!this.initialized)return false;}
if(o.drag)o.drag.call(this.options.executor||this,e,this.element);return false;}});})(jQuery);(function($){$.fn.extend({slider:function(options){var args=Array.prototype.slice.call(arguments,1);if(options=="value")
return $.data(this[0],"ui-slider").value(arguments[1]);return this.each(function(){if(typeof options=="string"){var slider=$.data(this,"ui-slider");slider[options].apply(slider,args);}else if(!$.data(this,"ui-slider"))
new $.ui.slider(this,options);});}});$.ui.slider=function(element,options){var self=this;this.element=$(element);$.data(element,"ui-slider",this);this.element.addClass("ui-slider");this.options=$.extend({},options);var o=this.options;$(element).width(65);$.extend(o,{axis:o.axis||(element.offsetWidth<element.offsetHeight?'vertical':'horizontal'),maxValue:!isNaN(parseInt(o.maxValue,10))?parseInt(o.maxValue,10):100,minValue:parseInt(o.minValue,10)||0,startValue:parseInt(o.startValue,10)||'none'});o.realMaxValue=o.maxValue-o.minValue;o.stepping=parseInt(o.stepping,10)||(o.steps?o.realMaxValue/o.steps:0);$(element).bind("setData.slider",function(event,key,value){self.options[key]=value;}).bind("getData.slider",function(event,key){return self.options[key];});this.handle=o.handle?$(o.handle,element):$('> *',element);$(this.handle).mouseInteraction({executor:this,delay:o.delay,distance:o.distance||0,dragPrevention:o.prevention?o.prevention.toLowerCase().split(','):['input','textarea','button','select','option'],start:this.start,stop:this.stop,drag:this.drag,condition:function(e,handle){if(!this.disabled){if(this.currentHandle)this.blur(this.currentHandle);this.focus(handle,1);return!this.disabled;}}}).wrap('<a href="javascript:void(0)"></a>').parent().bind('focus',function(e){self.focus(this.firstChild);}).bind('blur',function(e){self.blur(this.firstChild);}).bind('keydown',function(e){if(/(37|39)/.test(e.keyCode))
self.moveTo((e.keyCode==37?'-':'+')+'='+(self.options.stepping?self.options.stepping:(self.options.realMaxValue/self.size)*5),this.firstChild);});if(o.helper=='original'&&(this.element.css('position')=='static'||this.element.css('position')==''))this.element.css('position','relative');if(o.axis=='horizontal'){this.size=this.element.outerWidth();this.properties=['left','width'];}else{this.size=this.element.outerHeight();this.properties=['top','height'];}
this.element.bind('click',function(e){self.click.apply(self,[e]);});if(!isNaN(o.startValue))this.moveTo(o.startValue,0);if(this.handle.length==1)this.previousHandle=this.handle;if(this.handle.length==2&&o.range)this.createRange();};$.extend($.ui.slider.prototype,{plugins:{},createRange:function(){this.rangeElement=$('<div></div>').addClass('ui-slider-range').css({position:'absolute'}).css(this.properties[0],parseInt($(this.handle[0]).css(this.properties[0]),10)+this.handleSize(0)/2).css(this.properties[1],parseInt($(this.handle[1]).css(this.properties[0]),10)-parseInt($(this.handle[0]).css(this.properties[0]),10)).appendTo(this.element);},updateRange:function(){this.rangeElement.css(this.properties[0],parseInt($(this.handle[0]).css(this.properties[0]),10)+this.handleSize(0)/2);this.rangeElement.css(this.properties[1],parseInt($(this.handle[1]).css(this.properties[0]),10)-parseInt($(this.handle[0]).css(this.properties[0]),10));},getRange:function(){return this.rangeElement?this.convertValue(parseInt(this.rangeElement.css(this.properties[1]),10)):null;},ui:function(e){return{instance:this,options:this.options,handle:this.currentHandle,value:this.value(),range:this.getRange()};},propagate:function(n,e){$.ui.plugin.call(this,n,[e,this.ui()]);this.element.triggerHandler(n=="slide"?n:"slide"+n,[e,this.ui()],this.options[n]);},destroy:function(){this.element.removeClass("ui-slider ui-slider-disabled").removeData("ul-slider").unbind(".slider");this.handles.removeMouseInteraction();},enable:function(){this.element.removeClass("ui-slider-disabled");this.disabled=false;},disable:function(){this.element.addClass("ui-slider-disabled");this.disabled=true;},focus:function(handle,hard){this.currentHandle=$(handle).addClass('ui-slider-handle-active');if(hard)this.currentHandle.parent()[0].focus();},blur:function(handle){$(handle).removeClass('ui-slider-handle-active');if(this.currentHandle&&this.currentHandle[0]==handle){this.previousHandle=this.currentHandle;this.currentHandle=null;};},value:function(handle){if(this.handle.length==1)this.currentHandle=this.handle;return((parseInt($(handle!=undefined?this.handle[handle]||handle:this.currentHandle).css(this.properties[0]),10)/(this.size-this.handleSize()))*this.options.realMaxValue)+this.options.minValue;},convertValue:function(value){return(value/(this.size-this.handleSize()))*this.options.realMaxValue;},translateValue:function(value){return((value-this.options.minValue)/this.options.realMaxValue)*(this.size-this.handleSize());},handleSize:function(handle){return $(handle!=undefined?this.handle[handle]:this.currentHandle)['outer'+this.properties[1].substr(0,1).toUpperCase()+this.properties[1].substr(1)]();},click:function(e){var pointer=[e.pageX,e.pageY];var clickedHandle=false;this.handle.each(function(){if(this==e.target)clickedHandle=true;});if(clickedHandle||this.disabled||!(this.currentHandle||this.previousHandle))return;if(this.previousHandle)this.focus(this.previousHandle,1);this.offset=this.element.offset();this.moveTo(this.convertValue(e[this.properties[0]=='top'?'pageY':'pageX']-this.offset[this.properties[0]]-this.handleSize()/2));},start:function(e,handle){var o=this.options;this.offset=this.element.offset();this.handleOffset=this.currentHandle.offset();this.clickOffset={top:e.pageY-this.handleOffset.top,left:e.pageX-this.handleOffset.left};this.firstValue=this.value();this.propagate('start',e);return false;},stop:function(e){this.propagate('stop',e);if(this.firstValue!=this.value())this.propagate('change',e);return false;},drag:function(e,handle){var o=this.options;var position={top:e.pageY-this.offset.top-this.clickOffset.top,left:e.pageX-this.offset.left-this.clickOffset.left};var modifier=position[this.properties[0]];if(modifier>=this.size-this.handleSize())modifier=this.size-this.handleSize();if(modifier<=0)modifier=0;if(o.stepping){var value=this.convertValue(modifier);value=Math.round(value/o.stepping)*o.stepping;modifier=this.translateValue(value);}
if(this.rangeElement){if(this.currentHandle[0]==this.handle[0]&&modifier>=this.translateValue(this.value(1)))modifier=this.translateValue(this.value(1));if(this.currentHandle[0]==this.handle[1]&&modifier<=this.translateValue(this.value(0)))modifier=this.translateValue(this.value(0));}
this.currentHandle.css(this.properties[0],modifier);if(this.rangeElement)this.updateRange();this.propagate('slide',e);return false;},moveTo:function(value,handle){var o=this.options;if(handle==undefined&&!this.currentHandle&&this.handle.length!=1)return false;if(handle==undefined&&!this.currentHandle)handle=0;if(handle!=undefined)this.currentHandle=this.previousHandle=$(this.handle[handle]||handle);if(value.constructor==String)value=/\-\=/.test(value)?this.value()-parseInt(value.replace('-=',''),10):this.value()+parseInt(value.replace('+=',''),10);if(o.stepping)value=Math.round(value/o.stepping)*o.stepping;value=this.translateValue(value);if(value>=this.size-this.handleSize())value=this.size-this.handleSize();if(value<=0)value=0;if(this.rangeElement){if(this.currentHandle[0]==this.handle[0]&&value>=this.translateValue(this.value(1)))value=this.translateValue(this.value(1));if(this.currentHandle[0]==this.handle[1]&&value<=this.translateValue(this.value(0)))value=this.translateValue(this.value(0));}
this.currentHandle.css(this.properties[0],value);if(this.rangeElement)this.updateRange();this.propagate('start',null);this.propagate('stop',null);this.propagate('change',null);}});})(jQuery);(function($){$.fn.extend({draggable:function(options){var args=Array.prototype.slice.call(arguments,1);return this.each(function(){if(typeof options=="string"){var drag=$.data(this,"ui-draggable");drag[options].apply(drag,args);}else if(!$.data(this,"ui-draggable"))
new $.ui.draggable(this,options);});}});$.ui.draggable=function(element,options){var self=this;this.element=$(element);$.data(element,"ui-draggable",this);this.element.addClass("ui-draggable");this.options=$.extend({},options);var o=this.options;$.extend(o,{helper:o.ghosting==true?'clone':(o.helper||'original'),handle:o.handle?($(o.handle,element)[0]?$(o.handle,element):this.element):this.element,appendTo:o.appendTo||'parent'});$(element).bind("setData.draggable",function(event,key,value){self.options[key]=value;}).bind("getData.draggable",function(event,key){return self.options[key];});$(o.handle).mouseInteraction({executor:this,delay:o.delay,distance:o.distance||0,dragPrevention:o.prevention?o.prevention.toLowerCase().split(','):['input','textarea','button','select','option'],start:this.start,stop:this.stop,drag:this.drag,condition:function(e){return!(e.target.className.indexOf("ui-resizable-handle")!=-1||this.disabled);}});if(o.helper=='original'&&(this.element.css('position')=='static'||this.element.css('position')==''))
this.element.css('position','relative');};$.extend($.ui.draggable.prototype,{plugins:{},ui:function(e){return{helper:this.helper,position:this.position,absolutePosition:this.positionAbs,instance:this,options:this.options};},propagate:function(n,e){$.ui.plugin.call(this,n,[e,this.ui()]);return this.element.triggerHandler(n=="drag"?n:"drag"+n,[e,this.ui()],this.options[n]);},destroy:function(){this.handle.removeMouseInteraction();this.element.removeClass("ui-draggable ui-draggable-disabled").removeData("ui-draggable").unbind(".draggable");},enable:function(){this.element.removeClass("ui-draggable-disabled");this.disabled=false;},disable:function(){this.element.addClass("ui-draggable-disabled");this.disabled=true;},recallOffset:function(e){var elementPosition={left:this.elementOffset.left-this.offsetParentOffset.left,top:this.elementOffset.top-this.offsetParentOffset.top};var r=this.helper.css('position')=='relative';this.originalPosition={left:(r?parseInt(this.helper.css('left'),10)||0:elementPosition.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft)),top:(r?parseInt(this.helper.css('top'),10)||0:elementPosition.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop))};this.offset={left:this._pageX-this.originalPosition.left,top:this._pageY-this.originalPosition.top};},start:function(e){var o=this.options;if($.ui.ddmanager)$.ui.ddmanager.current=this;this.helper=typeof o.helper=='function'?$(o.helper.apply(this.element[0],[e])):(o.helper=='clone'?this.element.clone().appendTo((o.appendTo=='parent'?this.element[0].parentNode:o.appendTo)):this.element);if(this.helper[0]!=this.element[0])this.helper.css('position','absolute');if(!this.helper.parents('body').length)this.helper.appendTo((o.appendTo=='parent'?this.element[0].parentNode:o.appendTo));this.offsetParent=(function(cp){while(cp){if(cp.style&&(/(absolute|relative|fixed)/).test($.css(cp,'position')))return $(cp);cp=cp.parentNode?cp.parentNode:null;};return $("body");})(this.helper[0].parentNode);this.elementOffset=this.element.offset();this.offsetParentOffset=this.offsetParent.offset();var elementPosition={left:this.elementOffset.left-this.offsetParentOffset.left,top:this.elementOffset.top-this.offsetParentOffset.top};this._pageX=e.pageX;this._pageY=e.pageY;this.clickOffset={left:e.pageX-this.elementOffset.left,top:e.pageY-this.elementOffset.top};var r=this.helper.css('position')=='relative';this.originalPosition={left:(r?parseInt(this.helper.css('left'),10)||0:elementPosition.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft)),top:(r?parseInt(this.helper.css('top'),10)||0:elementPosition.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop))};if(this.element.css('position')=='fixed'){this.originalPosition.top-=this.offsetParent[0]==document.body?$(document).scrollTop():this.offsetParent[0].scrollTop;this.originalPosition.left-=this.offsetParent[0]==document.body?$(document).scrollLeft():this.offsetParent[0].scrollLeft;}
this.offset={left:e.pageX-this.originalPosition.left,top:e.pageY-this.originalPosition.top};this.propagate("start",e);this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()};if($.ui.ddmanager&&!o.dropBehaviour)$.ui.ddmanager.prepareOffsets(this,e);if(o.cursorAt){if(o.cursorAt.top!=undefined||o.cursorAt.bottom!=undefined){this.offset.top-=this.clickOffset.top-(o.cursorAt.top!=undefined?o.cursorAt.top:(this.helperProportions.height-o.cursorAt.bottom));this.clickOffset.top=(o.cursorAt.top!=undefined?o.cursorAt.top:(this.helperProportions.height-o.cursorAt.bottom));}
if(o.cursorAt.left!=undefined||o.cursorAt.right!=undefined){this.offset.left-=this.clickOffset.left-(o.cursorAt.left!=undefined?o.cursorAt.left:(this.helperProportions.width-o.cursorAt.right));this.clickOffset.left=(o.cursorAt.left!=undefined?o.cursorAt.left:(this.helperProportions.width-o.cursorAt.right));}}
return false;},clear:function(){if($.ui.ddmanager)$.ui.ddmanager.current=null;this.helper=null;},stop:function(e){if($.ui.ddmanager&&!this.options.dropBehaviour)
$.ui.ddmanager.drop(this,e);this.propagate("stop",e);if(this.cancelHelperRemoval)return false;if(this.options.helper!='original')this.helper.remove();this.clear();return false;},drag:function(e){this.position={top:e.pageY-this.offset.top,left:e.pageX-this.offset.left};this.positionAbs={left:e.pageX-this.clickOffset.left,top:e.pageY-this.clickOffset.top};this.position=this.propagate("drag",e)||this.position;this.helper.css({left:this.position.left+'px',top:this.position.top+'px'});if($.ui.ddmanager)$.ui.ddmanager.drag(this,e);return false;}});})(jQuery);(function($){$.ui.plugin.add("draggable","cursor",{start:function(e,ui){var t=$('body');if(t.css("cursor"))ui.options._cursor=t.css("cursor");t.css("cursor",ui.options.cursor);},stop:function(e,ui){if(ui.options._cursor)$('body').css("cursor",ui.options._cursor);}});$.ui.plugin.add("draggable","zIndex",{start:function(e,ui){var t=$(ui.helper);if(t.css("zIndex"))ui.options._zIndex=t.css("zIndex");t.css('zIndex',ui.options.zIndex);},stop:function(e,ui){if(ui.options._zIndex)$(ui.helper).css('zIndex',ui.options._zIndex);}});$.ui.plugin.add("draggable","opacity",{start:function(e,ui){var t=$(ui.helper);if(t.css("opacity"))ui.options._opacity=t.css("opacity");t.css('opacity',ui.options.opacity);},stop:function(e,ui){if(ui.options._opacity)$(ui.helper).css('opacity',ui.options._opacity);}});$.ui.plugin.add("draggable","revert",{stop:function(e,ui){var self=ui.instance;self.cancelHelperRemoval=true;$(ui.helper).animate({left:self.originalPosition.left,top:self.originalPosition.top},parseInt(ui.options.revert,10)||500,function(){if(ui.options.helper!='original')self.helper.remove();self.clear();});}});$.ui.plugin.add("draggable","iframeFix",{start:function(e,ui){var o=ui.options;if(ui.instance.slowMode)return;if(o.iframeFix.constructor==Array){for(var i=0;i<o.iframeFix.length;i++){var co=$(o.iframeFix[i]).offset({border:false});$('<div class="DragDropIframeFix"" style="background: #fff;"></div>').css("width",$(o.iframeFix[i])[0].offsetWidth+"px").css("height",$(o.iframeFix[i])[0].offsetHeight+"px").css("position","absolute").css("opacity","0.001").css("z-index","1000").css("top",co.top+"px").css("left",co.left+"px").appendTo("body");}}else{$("iframe").each(function(){var co=$(this).offset({border:false});$('<div class="DragDropIframeFix" style="background: #fff;"></div>').css("width",this.offsetWidth+"px").css("height",this.offsetHeight+"px").css("position","absolute").css("opacity","0.001").css("z-index","1000").css("top",co.top+"px").css("left",co.left+"px").appendTo("body");});}},stop:function(e,ui){if(ui.options.iframeFix)$("div.DragDropIframeFix").each(function(){this.parentNode.removeChild(this);});}});$.ui.plugin.add("draggable","containment",{start:function(e,ui){var o=ui.options;if((o.containment.left!=undefined||o.containment.constructor==Array)&&!o._containment)return;if(!o._containment)o._containment=o.containment;if(o._containment=='parent')o._containment=this[0].parentNode;if(o._containment=='document'){o.containment=[0,0,$(document).width(),($(document).height()||document.body.parentNode.scrollHeight)];}else{var ce=$(o._containment)[0];var co=$(o._containment).offset();o.containment=[co.left,co.top,co.left+(ce.offsetWidth||ce.scrollWidth),co.top+(ce.offsetHeight||ce.scrollHeight)];}},drag:function(e,ui){var o=ui.options;var h=ui.helper;var c=o.containment;var self=ui.instance;if(c.constructor==Array){if((ui.absolutePosition.left<c[0]))self.position.left=c[0]-(self.offset.left-self.clickOffset.left);if((ui.absolutePosition.top<c[1]))self.position.top=c[1]-(self.offset.top-self.clickOffset.top);if(ui.absolutePosition.left-c[2]+self.helperProportions.width>=0)self.position.left=c[2]-(self.offset.left-self.clickOffset.left)-self.helperProportions.width;if(ui.absolutePosition.top-c[3]+self.helperProportions.height>=0)self.position.top=c[3]-(self.offset.top-self.clickOffset.top)-self.helperProportions.height;}else{if((ui.position.left<c.left))self.position.left=c.left;if((ui.position.top<c.top))self.position.top=c.top;if(ui.position.left-self.offsetParent.innerWidth()+self.helperProportions.width+c.right+(parseInt(self.offsetParent.css("borderLeftWidth"),10)||0)+(parseInt(self.offsetParent.css("borderRightWidth"),10)||0)>=0)self.position.left=self.offsetParent.innerWidth()-self.helperProportions.width-c.right-(parseInt(self.offsetParent.css("borderLeftWidth"),10)||0)-(parseInt(self.offsetParent.css("borderRightWidth"),10)||0);if(ui.position.top-self.offsetParent.innerHeight()+self.helperProportions.height+c.bottom+(parseInt(self.offsetParent.css("borderTopWidth"),10)||0)+(parseInt(self.offsetParent.css("borderBottomWidth"),10)||0)>=0)self.position.top=self.offsetParent.innerHeight()-self.helperProportions.height-c.bottom-(parseInt(self.offsetParent.css("borderTopWidth"),10)||0)-(parseInt(self.offsetParent.css("borderBottomWidth"),10)||0);}}});$.ui.plugin.add("draggable","grid",{drag:function(e,ui){var o=ui.options;ui.instance.position.left=ui.instance.originalPosition.left+Math.round((e.pageX-ui.instance._pageX)/o.grid[0])*o.grid[0];ui.instance.position.top=ui.instance.originalPosition.top+Math.round((e.pageY-ui.instance._pageY)/o.grid[1])*o.grid[1];}});$.ui.plugin.add("draggable","axis",{drag:function(e,ui){var o=ui.options;if(o.constraint)o.axis=o.constraint;o.axis=='x'?ui.instance.position.top=ui.instance.originalPosition.top:ui.instance.position.left=ui.instance.originalPosition.left;}});$.ui.plugin.add("draggable","scroll",{start:function(e,ui){var o=ui.options;o.scrollSensitivity=o.scrollSensitivity||20;o.scrollSpeed=o.scrollSpeed||20;ui.instance.overflowY=function(el){do{if(/auto|scroll/.test(el.css('overflow'))||(/auto|scroll/).test(el.css('overflow-y')))return el;el=el.parent();}while(el[0].parentNode);return $(document);}(this);ui.instance.overflowX=function(el){do{if(/auto|scroll/.test(el.css('overflow'))||(/auto|scroll/).test(el.css('overflow-x')))return el;el=el.parent();}while(el[0].parentNode);return $(document);}(this);},drag:function(e,ui){var o=ui.options;var i=ui.instance;if(i.overflowY[0]!=document&&i.overflowY[0].tagName!='HTML'){if(i.overflowY[0].offsetHeight-(ui.position.top-i.overflowY[0].scrollTop+i.clickOffset.top)<o.scrollSensitivity)
i.overflowY[0].scrollTop=i.overflowY[0].scrollTop+o.scrollSpeed;if((ui.position.top-i.overflowY[0].scrollTop+i.clickOffset.top)<o.scrollSensitivity)
i.overflowY[0].scrollTop=i.overflowY[0].scrollTop-o.scrollSpeed;}else{if(e.pageY-$(document).scrollTop()<o.scrollSensitivity)
$(document).scrollTop($(document).scrollTop()-o.scrollSpeed);if($(window).height()-(e.pageY-$(document).scrollTop())<o.scrollSensitivity)
$(document).scrollTop($(document).scrollTop()+o.scrollSpeed);}
if(i.overflowX[0]!=document&&i.overflowX[0].tagName!='HTML'){if(i.overflowX[0].offsetWidth-(ui.position.left-i.overflowX[0].scrollLeft+i.clickOffset.left)<o.scrollSensitivity)
i.overflowX[0].scrollLeft=i.overflowX[0].scrollLeft+o.scrollSpeed;if((ui.position.top-i.overflowX[0].scrollLeft+i.clickOffset.left)<o.scrollSensitivity)
i.overflowX[0].scrollLeft=i.overflowX[0].scrollLeft-o.scrollSpeed;}else{if(e.pageX-$(document).scrollLeft()<o.scrollSensitivity)
$(document).scrollLeft($(document).scrollLeft()-o.scrollSpeed);if($(window).width()-(e.pageX-$(document).scrollLeft())<o.scrollSensitivity)
$(document).scrollLeft($(document).scrollLeft()+o.scrollSpeed);}
ui.instance.recallOffset(e);}});$.ui.plugin.add("draggable","snap",{start:function(e,ui){ui.instance.snapElements=[];$(ui.options.snap===true?'.ui-draggable':ui.options.snap).each(function(){var $t=$(this);var $o=$t.offset();if(this!=ui.instance.element[0])ui.instance.snapElements.push({item:this,width:$t.outerWidth(),height:$t.outerHeight(),top:$o.top,left:$o.left});});},drag:function(e,ui){var d=ui.options.snapTolerance||20;var x1=ui.absolutePosition.left,x2=x1+ui.instance.helperProportions.width,y1=ui.absolutePosition.top,y2=y1+ui.instance.helperProportions.height;for(var i=ui.instance.snapElements.length-1;i>=0;i--){var l=ui.instance.snapElements[i].left,r=l+ui.instance.snapElements[i].width,t=ui.instance.snapElements[i].top,b=t+ui.instance.snapElements[i].height;if(!((l-d<x1&&x1<r+d&&t-d<y1&&y1<b+d)||(l-d<x1&&x1<r+d&&t-d<y2&&y2<b+d)||(l-d<x2&&x2<r+d&&t-d<y1&&y1<b+d)||(l-d<x2&&x2<r+d&&t-d<y2&&y2<b+d)))continue;if(ui.options.snapMode!='inner'){var ts=Math.abs(t-y2)<=20;var bs=Math.abs(b-y1)<=20;var ls=Math.abs(l-x2)<=20;var rs=Math.abs(r-x1)<=20;if(ts)ui.position.top=t-ui.instance.offset.top+ui.instance.clickOffset.top-ui.instance.helperProportions.height;if(bs)ui.position.top=b-ui.instance.offset.top+ui.instance.clickOffset.top;if(ls)ui.position.left=l-ui.instance.offset.left+ui.instance.clickOffset.left-ui.instance.helperProportions.width;if(rs)ui.position.left=r-ui.instance.offset.left+ui.instance.clickOffset.left;}
if(ui.options.snapMode!='outer'){var ts=Math.abs(t-y1)<=20;var bs=Math.abs(b-y2)<=20;var ls=Math.abs(l-x1)<=20;var rs=Math.abs(r-x2)<=20;if(ts)ui.position.top=t-ui.instance.offset.top+ui.instance.clickOffset.top;if(bs)ui.position.top=b-ui.instance.offset.top+ui.instance.clickOffset.top-ui.instance.helperProportions.height;if(ls)ui.position.left=l-ui.instance.offset.left+ui.instance.clickOffset.left;if(rs)ui.position.left=r-ui.instance.offset.left+ui.instance.clickOffset.left-ui.instance.helperProportions.width;}};}});})(jQuery);
