/* * Kendo UI v2011.3.1129 (http://kendoui.com) * Copyright 2011 Telerik AD. All rights reserved. * * Kendo UI commercial licenses may be obtained at http://kendoui.com/license. * If you do not own a commercial license, this file shall be governed by the * GNU General Public License (GPL) version 3. For GPL requirements, please * review: http://www.gnu.org/copyleft/gpl.html */ (function(a,b){function D(b,c){return b===c||a.contains(b,c)}var c=window.kendo,d=c.ui,e=c.support.touch,f=c.getOffset,g="open",h="close",i="center",j="left",k="right",l="top",m="bottom",n="absolute",o="hidden",p="body",q="location",r="position",s="visible",t="offset",u="fitted",v="effects",w="k-state-active",x="k-state-border",y=".k-picker-wrap, .k-dropdown-wrap, .k-link",z=e?"touchstart":"mousedown",A=a.extend,B=a.proxy,C=d.Widget,E=C.extend({init:function(b,d){var e=this;C.fn.init.call(e,b,d),d=e.options,e.collisions=e.options.collision.split(" "),e.collisions.length===1&&e.collisions.push(e.collisions[0]),e.element.hide().addClass("k-popup k-group k-reset").css({position:n}).appendTo(a(d.appendTo)),e.wrapper=a(),d.animation===!1&&(d.animation={open:{show:!0,effects:{}},close:{hide:!0,effects:{}}}),v in d.animation.close||(d.animation.close=A({reverse:!0},d.animation.open,d.animation.close)),A(d.animation.open,{complete:function(){e.wrapper.css({overflow:s}).css("overflow")}}),A(d.animation.close,{complete:function(){e.wrapper.hide();var b=e.wrapper.data(q),f=a(d.anchor),g,h;b&&e.wrapper.css(b),d.anchor!=p&&(g=f.hasClass(x+"-down")?"down":"up",h=x+"-"+g,f.removeClass(h).children(y).removeClass(w).removeClass(h),e.element.removeClass(x+"-"+c.directions[g].reverse)),e._closing=!1}}),e.bind([g,h],d),a(document.documentElement).bind(z,B(e._mousedown,e)),a(window).bind("resize scroll",function(){e.close()}),d.toggleTarget&&a(d.toggleTarget).bind(d.toggleEvent,B(e.toggle,e))},options:{name:"Popup",toggleEvent:"click",origin:m+" "+j,position:l+" "+j,anchor:p,appendTo:p,collision:"flip fit",animation:{open:{effects:"slideIn:down",transition:!/chrome/i.test(navigator.userAgent),duration:200,show:!0},close:{duration:100,show:!1,hide:!0}}},open:function(){var b=this,d=b.element,e=b.options,f="down",h,i,j=a(e.anchor);if(!b.visible()){if(d.data("animating")||b.trigger(g))return;b.wrapper=i=c.wrap(d).css({overflow:o,display:"block",position:n}),i.css(r),e.appendTo==p&&i.css(l,"-10000px"),h=A({},e.animation.open),b._update()&&(typeof h.effects=="string"&&h.effects.match(f)&&(f="up"),h.effects=c.parseEffects(h.effects,!0));if(e.anchor!=p){var k=x+"-"+f;d.addClass(x+"-"+c.directions[f].reverse),j.addClass(k).children(y).addClass(w).addClass(k)}d.data(v,h.effects).kendoStop(!0).kendoAnimate(h)}},toggle:function(){var a=this;a[a.visible()?h:g]()},visible:function(){return this.element.is(":"+s)},close:function(){var a=this,b=a.options,d,e;if(a.visible()){if(a._closing||a.trigger(h))return;d=A({},b.animation.close),e=a.element.data(v),a.wrapper=c.wrap(a.element).css({overflow:o}),e&&(d.effects=e),a._closing=!0,a.element.kendoStop(!0).kendoAnimate(d)}},_mousedown:function(b){var c=this,d=c.element[0],e=c.options,f=a(e.anchor)[0],g=e.toggleTarget,h=b.target,i=a(h).closest(".k-popup")[0];(!i||i===c.element[0])&&!D(d,h)&&!D(f,h)&&(!g||!D(a(g)[0],h))&&c.close()},_update:function(){return this._position(a(window))},_fit:function(a,b,c){var d=0;a+b>c&&(d=c-(a+b)),a<0&&(d=a);return d},_flip:function(a,b,c,d,e,f,g){var h=0;g=g||b,f!==e&&f!==i&&e!==i&&(a+g>d&&(h+=-(c+b)),a+h<0&&(h+=c+b));return h},_position:function(b){var d=this,e=d.element,g=d.wrapper,h=d.options,i=a(h.anchor),j=h.origin.toLowerCase().split(" "),k=h.position.toLowerCase().split(" "),l=d.collisions,m=!1,n=c.support.zoomLevel(),o=10002;i.parents().andSelf().each(function(){var b=a(this).css("zIndex");if(!isNaN(b)){b=Number(b)+1;return!1}}),g.css("zIndex",o),h.appendTo===E.fn.options.appendTo&&(g.css(d._align(j,k)),m=!0);var p=f(g,r),s=f(g),t=i.offsetParent().parent(".k-animation-container");t.length&&t.data(u)&&(p=f(g,r),s=f(g)),s={top:s.top-(window.pageYOffset||document.documentElement.scrollTop||0),left:s.left-(window.pageXOffset||document.documentElement.scrollLeft||0)},d.wrapper.data(q)||g.data(q,A({},p));var v=A({},s),w=A({},p);l[0]==="fit"&&(w.top+=d._fit(v.top,g.outerHeight(),b.height()/n)),l[1]==="fit"&&(w.left+=d._fit(v.left,g.outerWidth(),b.width()/n)),w.left!=p.left||w.top!=p.top?g.data(u,!0):g.removeData(u);var x=A({},w);l[0]==="flip"&&(w.top+=d._flip(v.top,e.outerHeight(),i.outerHeight(),b.height()/n,j[0],k[0],g.outerHeight())),l[1]==="flip"&&(w.left+=d._flip(v.left,e.outerWidth(),i.outerWidth(),b.width()/n,j[1],k[1],g.outerWidth())),g.css(w);return w.left!=x.left||w.top!=x.top},_align:function(b,c){var d=this,e=d.wrapper,g=a(d.options.anchor),h=b[0],j=b[1],l=c[0],n=c[1],o=f(g),p=e.outerWidth(),q=e.outerHeight(),r=g.outerWidth(),s=g.outerHeight(),t=o.top,u=o.left,v=Math.round;h===m&&(t+=s),h===i&&(t+=v(s/2)),l===m&&(t-=q),l===i&&(t-=v(q/2)),j===k&&(u+=r),j===i&&(u+=v(r/2)),n===k&&(u-=p),n===i&&(u-=v(p/2));return{top:t,left:u}}});d.plugin(E)})(jQuery)