10 lines
17 KiB
JavaScript
10 lines
17 KiB
JavaScript
/*
|
|
* Kendo UI Complete v2013.3.1119 (http://kendoui.com)
|
|
* Copyright 2013 Telerik AD. All rights reserved.
|
|
*
|
|
* Kendo UI Complete commercial licenses may be obtained at
|
|
* https://www.kendoui.com/purchase/license-agreement/kendo-ui-complete-commercial.aspx
|
|
* If you do not own a commercial license, this file shall be governed by the trial license terms.
|
|
*/
|
|
!function(define){return define(["./kendo.draganddrop.min"],function(){!function(i,e){function t(i){return e!==i}function n(i,e,t){return Math.max(Math.min(parseInt(i,10),1/0===t?t:parseInt(t,10)),parseInt(e,10))}function o(i,e){return function(){var t=this,n=t.wrapper,o=n[0].style,s=t.options;if(!s.isMaximized&&!s.isMinimized)return t.restoreOptions={width:o.width,height:o.height},n.children(x).hide().end().children(z).find(G).parent().hide().eq(0).before(X.action({name:"Restore"})),e.call(t),"maximize"==i?t.wrapper.children(z).find(V).parent().hide():t.wrapper.children(z).find(V).parent().show(),t}}function s(i){var e=this;e.owner=i,e._draggable=new l(i.wrapper,{filter:x,group:i.wrapper.id+"-resizing",dragstart:h(e.dragstart,e),drag:h(e.drag,e),dragend:h(e.dragend,e)})}function r(i,e){var t=this;t.owner=i,t._draggable=new l(i.wrapper,{filter:e,group:i.wrapper.id+"-moving",dragstart:h(t.dragstart,t),drag:h(t.drag,t),dragend:h(t.dragend,t),dragcancel:h(t.dragcancel,t)}),t._draggable.userEvents.stopPropagation=!1}var a=window.kendo,d=a.ui.Widget,l=a.ui.Draggable,c=i.isPlainObject,p=a._activeElement,h=i.proxy,f=i.extend,u=i.each,m=a.template,g="body",w=".kendoWindow",v=".k-window",k=".k-window-title",z=k+"bar",_=".k-window-content",x=".k-resize-handle",y=".k-overlay",b="k-content-frame",T="k-loading",M="k-state-hover",W="k-state-focused",H="k-window-maximized",C=":visible",O="hidden",P="cursor",S="open",I="activate",F="deactivate",D="close",L="refresh",j="resize",N="dragstart",R="dragend",E="error",A="overflow",q="zIndex",G=".k-window-actions .k-i-minimize,.k-window-actions .k-i-maximize",U=".k-i-pin",K=".k-i-unpin",V=U+","+K,B=".k-window-titlebar .k-window-action",Q=a.isLocalUrl,J=d.extend({init:function(n,o){var s,r,l,p,f,u,m,g=this,x={},y=!1,b=o&&o.actions&&!o.actions.length;d.fn.init.call(g,n,o),o=g.options,p=o.position,n=g.element,f=o.content,b&&(o.actions=[]),g.appendTo=i(i(o.appendTo)[0]||document.body),g._animations(),f&&!c(f)&&(f=o.content={url:f}),n.find("script").filter(function(){return!this.type||this.type.toLowerCase().indexOf("script")>=0}).remove(),n.parent().is(g.appendTo)||o.position.top!==e&&o.position.left!==e||(n.is(C)?(x=n.offset(),y=!0):(r=n.css("visibility"),l=n.css("display"),n.css({visibility:O,display:""}),x=n.offset(),n.css({visibility:r,display:l}))),t(o.visible)&&null!==o.visible||(o.visible=n.is(C)),s=g.wrapper=n.closest(v),n.is(".k-content")&&s[0]||(n.addClass("k-window-content k-content"),g._createWindow(n,o),s=g.wrapper=n.closest(v),g._dimensions()),p.top!==e&&(p.top=""+p.top),p.left!==e&&(p.left=""+p.left),s.css({top:p.top||x.top||"",left:p.left||x.left||""}),o.pinned&&g.pin(!0),f&&g.refresh(f),o.visible&&g.toFront(),u=s.children(_),g._tabindex(u),o.visible&&o.modal&&g._overlay(s.is(C)).css({opacity:.5}),s.on("mouseenter"+w,B,function(){i(this).addClass(M)}).on("mouseleave"+w,B,function(){i(this).removeClass(M)}).on("click"+w,"> "+B,h(g._windowActionHandler,g)),u.on("keydown"+w,h(g._keydown,g)).on("focus"+w,function(){s.addClass(W)}).on("blur"+w,function(){s.removeClass(W)}),this._resizable(),this._draggable(),m=n.attr("id"),m&&(m+="_wnd_title",s.children(z).children(k).attr("id",m),u.attr({role:"dialog","aria-labelledby":m})),s.add(s.children(".k-resize-handle,"+z)).on("mousedown"+w,h(g.toFront,g)),g.touchScroller=a.touchScroller(n),g._resizeHandler=function(i){return g._onDocumentResize(i)},i(window).on("resize",g._resizeHandler),o.visible&&(g.trigger(S),g.trigger(I)),a.notify(g)},_dimensions:function(){var i=this,e=i.wrapper,t=i.options,o=t.width,s=t.height,r=t.maxHeight;i.title(t.title),u(["minWidth","minHeight","maxWidth","maxHeight"],function(i,n){var o=t[n];o&&1/0!=o&&e.css(n,o)}),r&&1/0!=r&&i.element.css("maxHeight",r),o&&((""+o).indexOf("%")>0?e.width(o):e.width(n(o,t.minWidth,t.maxWidth))),s&&((""+s).indexOf("%")>0?e.height(s):e.height(n(s,t.minHeight,t.maxHeight))),t.visible||e.hide()},_animations:function(){var i=this.options;i.animation===!1&&(i.animation={open:{effects:{}},close:{hide:!0,effects:{}}})},_resize:function(){a.resize(this.element.children())},_resizable:function(){var e=this.options.resizable,t=this.wrapper;e?(t.on("dblclick"+w,z,h(function(e){i(e.target).closest(".k-window-action").length||this.toggleMaximization()},this)),u("n e s w se sw ne nw".split(" "),function(i,e){t.append(X.resizeHandle(e))}),this.resizing=new s(this)):this.resizing&&(t.off("dblclick"+w).children(x).remove(),this.resizing.destroy(),this.resizing=null)},_draggable:function(){var i=this.options.draggable;i?this.dragging=new r(this,i.dragHandle||z):this.dragging&&(this.dragging.destroy(),this.dragging=null)},setOptions:function(i){d.fn.setOptions.call(this,i),this._animations(),this._dimensions(),this._resizable(),this._draggable()},events:[S,I,F,D,L,j,N,R,E],options:{name:"Window",animation:{open:{effects:{zoom:{direction:"in"},fade:{direction:"in"}},duration:350},close:{effects:{zoom:{direction:"out",properties:{scale:.7}},fade:{direction:"out"}},duration:350,hide:!0}},title:"",actions:["Close"],autoFocus:!0,modal:!1,resizable:!0,draggable:!0,minWidth:90,minHeight:50,maxWidth:1/0,maxHeight:1/0,pinned:!1,position:{},content:null,visible:null,height:null,width:null},_closable:function(){return i.inArray("close",i.map(this.options.actions,function(i){return i.toLowerCase()}))>-1},_keydown:function(i){var e,t,o,s,r,d,l=this,c=l.options,p=a.keys,h=i.keyCode,f=l.wrapper,u=10,m=l.options.isMaximized;i.target!=i.currentTarget||l._closing||(h==p.ESC&&l._closable()&&l._close(!0),!c.draggable||i.ctrlKey||m||(e=a.getOffset(f),h==p.UP?t=f.css("top",e.top-u):h==p.DOWN?t=f.css("top",e.top+u):h==p.LEFT?t=f.css("left",e.left-u):h==p.RIGHT&&(t=f.css("left",e.left+u))),c.resizable&&i.ctrlKey&&!m&&(h==p.UP?(t=!0,s=f.height()-u):h==p.DOWN&&(t=!0,s=f.height()+u),h==p.LEFT?(t=!0,o=f.width()-u):h==p.RIGHT&&(t=!0,o=f.width()+u),t&&(r=n(o,c.minWidth,c.maxWidth),d=n(s,c.minHeight,c.maxHeight),isNaN(r)||(f.width(r),l.options.width=r+"px"),isNaN(d)||(f.height(d),l.options.height=d+"px"),l.resize())),t&&i.preventDefault())},_overlay:function(e){var t=this.appendTo.children(y),n=this.wrapper;return t.length||(t=i("<div class='k-overlay' />")),t.insertBefore(n[0]).toggle(e).css(q,parseInt(n.css(q),10)-1),t},_windowActionHandler:function(t){var n=i(t.target).closest(".k-window-action").find(".k-icon"),o=this;o._closing||u({"k-i-close":function(){o._close(!0)},"k-i-maximize":o.maximize,"k-i-minimize":o.minimize,"k-i-restore":o.restore,"k-i-refresh":o.refresh,"k-i-pin":o.pin,"k-i-unpin":o.unpin},function(i,s){return n.hasClass(i)?(t.preventDefault(),s.call(o),!1):e})},_modals:function(){var e=this;return i(v).filter(function(){var t=i(this),n=e._object(t).options;return n.modal&&n.visible&&t.is(C)}).sort(function(e,t){return+i(e).css("zIndex")-+i(t).css("zIndex")})},_object:function(i){var e=i.children(_);return e.data("kendoWindow")||e.data("kendo"+this.options.name)},center:function(){var e=this,t=e.wrapper,n=i(window);return e.options.isMaximized?e:(t.css({left:n.scrollLeft()+Math.max(0,(n.width()-t.width())/2),top:n.scrollTop()+Math.max(0,(n.height()-t.height())/2)}),e)},title:function(i){var e=this,t=e.wrapper,n=e.options,o=t.children(z),s=o.children(k),r=o.outerHeight();return arguments.length?(i===!1?(t.addClass("k-window-titleless"),o.remove()):(o.length||t.prepend(X.titlebar(f(X,n))),t.css("padding-top",r),o.css("margin-top",-r)),s.text(i),e.options.title=i,e):s.text()},content:function(i){var e=this.wrapper.children(_),t=e.children(".km-scroll-container");return e=t[0]?t:e,i?(a.destroy(this.element.children()),e.html(i),this):e.html()},open:function(){var e,t,n=this,o=n.wrapper,s=n.options,r=s.animation.open,d=o.children(_),l=d.css(A);return n.trigger(S)||(n._closing&&o.kendoStop(!0,!0),n._closing=!1,n.toFront(),s.autoFocus&&n.element.focus(),s.visible=!0,s.modal&&(e=n._overlay(!1),e.kendoStop(!0,!0),r.duration&&a.effects.Fade?(t=a.fx(e).fadeIn(),t.duration(r.duration||0),t.endValue(.5),t.play()):e.css("opacity",.5),e.show()),o.is(C)||(d.css(A,O),o.show().kendoStop().kendoAnimate({effects:r.effects,duration:r.duration,complete:function(){s.autoFocus&&n.element.focus(),n.trigger(I),d.css(A,l)}}))),s.isMaximized&&(n._documentScrollTop=i(document).scrollTop(),i("html, body").css(A,O)),n},_removeOverlay:function(t){var n,o=this._modals(),s=this.options,r=s.modal&&!o.length,d=s.modal?this._overlay(!0):i(e),l=s.animation.close;r?!t&&l.duration&&a.effects.Fade?(n=a.fx(d).fadeOut(),n.duration(l.duration||0),n.startValue(.5),n.play()):this._overlay(!1).remove():o.length&&this._object(o.last())._overlay(!0)},_close:function(e){var t=this,n=t.wrapper,o=t.options,s=o.animation.open,r=o.animation.close;n.is(C)&&!t.trigger(D,{userTriggered:!!e})&&(t._closing=!0,o.visible=!1,i(v).each(function(e,t){var o=i(t).children(_);t!=n&&o.find("> ."+b).length>0&&o.children(y).remove()}),this._removeOverlay(),n.kendoStop().kendoAnimate({effects:r.effects||s.effects,reverse:r.reverse===!0,duration:r.duration,complete:function(){n.hide().css("opacity",""),t.trigger(F);var i=t._object(t._modals().last());i&&i.toFront()}})),t.options.isMaximized&&(i("html, body").css(A,""),t._documentScrollTop&&t._documentScrollTop>0&&i(document).scrollTop(t._documentScrollTop))},close:function(){return this._close(!1),this},_actionable:function(e){return i(e).is(B+","+B+" .k-icon,:input,a")},_shouldFocus:function(e){var t=p(),n=this.element;return!(!this.options.autoFocus||i(t).is(n)||this._actionable(e)||n.find(t).length&&n.find(e).length)},toFront:function(e){var t,n,o=this,s=o.wrapper,r=s[0],a=+s.css(q),d=a,l=e&&e.target||null;return i(v).each(function(e,t){var n=i(t),o=n.css(q),s=n.children(_);isNaN(o)||(a=Math.max(+o,a)),t!=r&&s.find("> ."+b).length>0&&s.append(X.overlay)}),(!s[0].style.zIndex||a>d)&&s.css(q,a+2),o.element.find("> .k-overlay").remove(),o._shouldFocus(l)&&(o.element.focus(),t=i(window).scrollTop(),n=parseInt(s.position().top,10),n>0&&t>n&&(t>0?i(window).scrollTop(n):s.css("top",t))),o},toggleMaximization:function(){return this._closing?this:this[this.options.isMaximized?"restore":"maximize"]()},restore:function(){var e=this,t=e.options,n=t.minHeight,o=e.restoreOptions;return t.isMaximized||t.isMinimized?(n&&1/0!=n&&e.wrapper.css("min-height",n),e.wrapper.css({position:t.pinned?"fixed":"absolute",left:o.left,top:o.top,width:o.width,height:o.height}).removeClass(H).find(".k-window-content,.k-resize-handle").show().end().find(".k-window-titlebar .k-i-restore").parent().remove().end().end().find(G).parent().show().end().end().find(V).parent().show(),e.options.width=o.width,e.options.height=o.height,i("html, body").css(A,""),this._documentScrollTop&&this._documentScrollTop>0&&i(document).scrollTop(this._documentScrollTop),t.isMaximized=t.isMinimized=!1,e.resize(),e):e},maximize:o("maximize",function(){var e=this,t=e.wrapper,n=t.position();f(e.restoreOptions,{left:n.left,top:n.top}),t.css({left:0,top:0,position:"fixed"}).addClass(H),this._documentScrollTop=i(document).scrollTop(),i("html, body").css(A,O),e.options.isMaximized=!0,e._onDocumentResize()}),minimize:o("minimize",function(){var i=this;i.wrapper.css({height:"",minHeight:""}),i.element.hide(),i.options.isMinimized=!0}),pin:function(e){var t=this,n=i(window),o=t.wrapper,s=parseInt(o.css("top"),10),r=parseInt(o.css("left"),10);(e||!t.options.pinned&&!t.options.isMaximized)&&(o.css({position:"fixed",top:s-n.scrollTop(),left:r-n.scrollLeft()}),o.children(z).find(U).addClass("k-i-unpin").removeClass("k-i-pin"),t.options.pinned=!0)},unpin:function(){var e=this,t=i(window),n=e.wrapper,o=parseInt(n.css("top"),10),s=parseInt(n.css("left"),10);e.options.pinned&&!e.options.isMaximized&&(n.css({position:"",top:o+t.scrollTop(),left:s+t.scrollLeft()}),n.children(z).find(K).addClass("k-i-pin").removeClass("k-i-unpin"),e.options.pinned=!1)},_onDocumentResize:function(){var e,t,n=this,o=n.wrapper,s=i(window);n.options.isMaximized&&(e=s.width(),t=s.height()-parseInt(o.css("padding-top"),10),o.css({width:e,height:t}),n.options.width=e,n.options.height=t,n.resize())},refresh:function(e){var n,o,s,r=this,a=r.options,d=i(r.element);return c(e)||(e={url:e}),e=f({},a.content,e),o=t(a.iframe)?a.iframe:e.iframe,s=e.url,s?(t(o)||(o=!Q(s)),o?(n=d.find("."+b)[0],n?n.src=s||n.src:d.html(X.contentFrame(f({},a,{content:e}))),d.find("."+b).unbind("load"+w).on("load"+w,function(){r.trigger(L)})):r._ajaxRequest(e)):(e.template&&r.content(m(e.template)({})),r.trigger(L)),r},_ajaxRequest:function(e){var t=this,n=e.template,o=t.wrapper.find(".k-window-titlebar .k-i-refresh"),s=setTimeout(function(){o.addClass(T)},100);i.ajax(f({type:"GET",dataType:"html",cache:!1,error:function(i,e){t.trigger(E,{status:e,xhr:i})},complete:function(){clearTimeout(s),o.removeClass(T)},success:function(i){n&&(i=m(n)(i||{})),t.content(i),t.element.prop("scrollTop",0),t.trigger(L)}},e))},destroy:function(){var e=this.wrapper;d.fn.destroy.call(this),a.destroy(e),this.resizing&&this.resizing.destroy(),this.dragging&&this.dragging.destroy(),this.element.children("iframe").remove(),e.find(".k-resize-handle,.k-window-titlebar").off(w),e.remove().off(w),i(window).off("resize",this._resizeHandler),this._removeOverlay(!0)},_createWindow:function(){var e,t,n=this,o=n.element,s=n.options,r=a.support.isRtl(o);s.scrollable===!1&&o.attr("style","overflow:hidden;"),t=i(X.wrapper(s)),s.title!==!1&&t.append(X.titlebar(f(X,s))),e=o.find("iframe:not(.k-content)").map(function(){var i=this.getAttribute("src");return this.src="",i}),t.toggleClass("k-rtl",r).appendTo(n.appendTo).append(o).find("iframe:not(.k-content)").each(function(i){this.src=e[i]}),t.find(".k-window-title").css(r?"left":"right",t.find(".k-window-actions").outerWidth()+10),o.show(),o.find("[data-role=editor]").each(function(){var e=i(this).data("kendoEditor");e&&e.refresh()})}}),X={wrapper:m("<div class='k-widget k-window' />"),action:m("<a role='button' href='\\#' class='k-window-action k-link'><span role='presentation' class='k-icon k-i-#= name.toLowerCase() #'>#= name #</span></a>"),titlebar:m("<div class='k-window-titlebar k-header'> <span class='k-window-title'>#= title #</span><div class='k-window-actions'># for (var i = 0; i < actions.length; i++) { ##= action({ name: actions[i] }) ## } #</div></div>"),overlay:"<div class='k-overlay' />",contentFrame:m("<iframe frameborder='0' title='#= title #' class='"+b+"' "+"src='#= content.url #'>"+"This page requires frames in order to show content"+"</iframe>"),resizeHandle:m("<div class='k-resize-handle k-resize-#= data #'></div>")};s.prototype={dragstart:function(e){var t=this,n=t.owner,o=n.wrapper;t.elementPadding=parseInt(n.wrapper.css("padding-top"),10),t.initialCursorPosition=a.getOffset(o,"position"),t.resizeDirection=e.currentTarget.prop("className").replace("k-resize-handle k-resize-",""),t.initialSize={width:o.width(),height:o.height()},t.containerOffset=a.getOffset(n.appendTo),o.append(X.overlay).children(x).not(e.currentTarget).hide(),i(g).css(P,e.currentTarget.css(P))},drag:function(i){var e,t,o,s,r=this,a=r.owner,d=a.wrapper,l=a.options,c=r.resizeDirection,p=r.containerOffset,h=r.initialCursorPosition,f=r.initialSize,u=Math.max(i.x.location,p.left),m=Math.max(i.y.location,p.top);c.indexOf("e")>=0?(e=u-h.left,d.width(n(e,l.minWidth,l.maxWidth))):c.indexOf("w")>=0&&(s=h.left+f.width,e=n(s-u,l.minWidth,l.maxWidth),d.css({left:s-e-p.left,width:e})),c.indexOf("s")>=0?(t=m-h.top-r.elementPadding,d.height(n(t,l.minHeight,l.maxHeight))):c.indexOf("n")>=0&&(o=h.top+f.height,t=n(o-m,l.minHeight,l.maxHeight),d.css({top:o-t-p.top,height:t})),e&&(a.options.width=e+"px"),t&&(a.options.height=t+"px"),a.resize()},dragend:function(e){var t=this,n=t.owner,o=n.wrapper;return o.find(y).remove().end().children(x).not(e.currentTarget).show(),i(g).css(P,""),n.touchScroller&&n.touchScroller.reset(),27==e.keyCode&&o.css(t.initialCursorPosition).css(t.initialSize),!1},destroy:function(){this._draggable.destroy()}},r.prototype={dragstart:function(e){var t=this.owner,n=t.element,o=n.find(".k-window-actions"),s=a.getOffset(t.appendTo);t.trigger(N),t.initialWindowPosition=a.getOffset(t.wrapper,"position"),t.startPosition={left:e.x.client-t.initialWindowPosition.left,top:e.y.client-t.initialWindowPosition.top},t.minLeftPosition=o.length>0?o.outerWidth()+parseInt(o.css("right"),10)-n.outerWidth():20-n.outerWidth(),t.minLeftPosition-=s.left,t.minTopPosition=-s.top,t.wrapper.append(X.overlay).children(x).hide(),i(g).css(P,e.currentTarget.css(P))},drag:function(e){var t=this.owner,n={left:Math.max(e.x.client-t.startPosition.left,t.minLeftPosition),top:Math.max(e.y.client-t.startPosition.top,t.minTopPosition)};i(t.wrapper).css(n)},_finishDrag:function(){var e=this.owner;e.wrapper.children(x).toggle(!e.options.isMinimized).end().find(y).remove(),i(g).css(P,"")},dragcancel:function(i){this._finishDrag(),i.currentTarget.closest(v).css(this.owner.initialWindowPosition)},dragend:function(){return this._finishDrag(),this.owner.trigger(R),!1},destroy:function(){this._draggable.destroy()}},a.ui.plugin(J)}(window.kendo.jQuery)})}("function"==typeof define&&define.amd?define:function(i,e){return e()});
|
|
//@ sourceMappingURL=kendo.window.min.js.map
|