/*
* Kendo UI Beta v2013.2.716 (http://kendoui.com)
* Copyright 2013 Telerik AD. All rights reserved.
*
* Kendo UI Beta license terms available at
* http://www.kendoui.com/purchase/license-agreement/kendo-ui-beta.aspx
*/
("function"==typeof define&&define.amd?define:function(e,t){return t()})(["./kendo.core.min","./kendo.userevents.min"],function(){!function(e,t){function n(e,t){return''+t+""}function r(n,r){var a,s,o,i,l,u=r!==t;return n.selectionStart!==t?u?(n.focus(),n.setSelectionRange(r,r)):r=[n.selectionStart,n.selectionEnd]:document.selection&&(e(n).is(":visible")&&n.focus(),a=document.selection.createRange(),u?(a.move("character",r),a.select()):(i=n.createTextRange(),l=i.duplicate(),i.moveToBookmark(a.getBookmark()),l.setEndPoint("EndToStart",i),s=l.text.length,o=s+i.text.length,r=[s,o])),r}var a=window.kendo,s=a.keys,o=a.ui,i=o.Widget,l=a._activeElement,u=a._extractFormat,d=a.parseFloat,c=a.support.placeholder,p=a.getCulture,_=a._round,f="change",m="disabled",v="readonly",g="k-input",h="spin",x=".kendoNumericTextBox",w="touchend",k="mouseleave"+x,y="mouseenter"+x+" "+k,b="k-state-default",T="k-state-focused",A="k-state-hover",E="focus",C=".",H="k-state-selected",N="k-state-disabled",R="aria-disabled",S="aria-readonly",O=null,W=e.proxy,B={190:".",188:","},D=i.extend({init:function(e,n){var r,s,o,l,d,c=this,p=n&&n.step!==t;i.fn.init.call(c,e,n),n=c.options,e=c.element.on("blur"+x,W(c._focusout,c)).attr("role","spinbutton"),n.placeholder=n.placeholder||e.attr("placeholder"),c._reset(),c._wrapper(),c._arrows(),c._input(),a.support.mobileOS?c._text.on(w+x+" "+E+x,function(t){c._toggleText(!1),t.type===E&&e.focus()}):c._text.on(E+x,W(c._click,c)),r=c.min(e.attr("min")),s=c.max(e.attr("max")),o=c._parse(e.attr("step")),n.min===O&&r!==O&&(n.min=r),n.max===O&&s!==O&&(n.max=s),p||o===O||(n.step=o),e.attr("aria-valuemin",n.min).attr("aria-valuemax",n.max),n.format=u(n.format),l=n.value,c.value(l!==O?l:e.val()),d=e.is("[disabled]"),d?c.enable(!1):c.readonly(e.is("[readonly]")),a.notify(c)},options:{name:"NumericTextBox",decimals:O,min:O,max:O,value:O,step:1,culture:"",format:"n",spinners:!0,placeholder:"",upArrowText:"Increase value",downArrowText:"Decrease value"},events:[f,h],_editable:function(e){var t=this,n=t.element,r=e.disable,a=e.readonly,s=t._text.add(n),o=t._inputWrapper.off(y);t._toggleText(!0),t._upArrowEventHandler.unbind("press"),t._downArrowEventHandler.unbind("press"),n.off("keydown"+x).off("paste"+x),a||r?(o.addClass(r?N:b).removeClass(r?b:N),s.attr(m,r).attr(v,a).attr(R,r).attr(S,a)):(o.addClass(b).removeClass(N).on(y,t._toggleHover),s.removeAttr(m).removeAttr(v).attr(R,!1).attr(S,!1),t._upArrowEventHandler.bind("press",function(e){e.preventDefault(),t._spin(1),t._upArrow.addClass(H)}),t._downArrowEventHandler.bind("press",function(e){e.preventDefault(),t._spin(-1),t._downArrow.addClass(H)}),t.element.on("keydown"+x,W(t._keydown,t)).on("paste"+x,W(t._paste,t)))},readonly:function(e){this._editable({readonly:e===t?!0:e,disable:!1})},enable:function(e){this._editable({readonly:!1,disable:!(e=e===t?!0:e)})},destroy:function(){var e=this;e.element.add(e._text).add(e._upArrow).add(e._downArrow).add(e._inputWrapper).off(x),e._upArrowEventHandler.destroy(),e._downArrowEventHandler.destroy(),e._form&&e._form.off("reset",e._resetHandler),i.fn.destroy.call(e)},min:function(e){return this._option("min",e)},max:function(e){return this._option("max",e)},step:function(e){return this._option("step",e)},value:function(e){var n,r=this;return e===t?r._value:(e=r._parse(e),n=r._adjust(e),e===n&&(r._update(e),r._old=r._value),t)},focus:function(){this._focusin()},_adjust:function(e){var t=this,n=t.options,r=n.min,a=n.max;return e===O?e:(r!==O&&r>e?e=r:a!==O&&e>a&&(e=a),e)},_arrows:function(){var t,r=this,s=function(){clearTimeout(r._spinning),t.removeClass(H)},o=r.options,i=o.spinners,l=r.element;t=l.siblings(".k-icon"),t[0]||(t=e(n("n",o.upArrowText)+n("s",o.downArrowText)).insertAfter(l),t.wrapAll('')),i||(t.parent().toggle(i),r._inputWrapper.addClass("k-expand-padding")),r._upArrow=t.eq(0),r._upArrowEventHandler=new a.UserEvents(r._upArrow,{release:s}),r._downArrow=t.eq(1),r._downArrowEventHandler=new a.UserEvents(r._downArrow,{release:s})},_blur:function(){var e=this;e._toggleText(!0),e._change(e.element.val())},_click:function(e){var t=this;clearTimeout(t._focusing),t._focusing=setTimeout(function(){var n,a,s,o=e.target,i=r(o)[0],l=o.value.substring(0,i),u=t._format(t.options.format),d=u[","],c=0;d&&(a=RegExp("\\"+d,"g"),s=RegExp("([\\d\\"+d+"]+)(\\"+u[C]+")?(\\d+)?")),s&&(n=s.exec(l)),n&&(c=n[0].replace(a,"").length,-1!=l.indexOf("(")&&t._value<0&&c++),t._focusin(),r(t.element[0],c)})},_change:function(e){var t=this;t._update(e),e=t._value,t._old!=e&&(t._old=e,t.trigger(f),t.element.trigger(f))},_culture:function(e){return e||p(this.options.culture)},_focusin:function(){var e=this;e._inputWrapper.addClass(T),e._toggleText(!1),e.element[0].focus()},_focusout:function(){var e=this;clearTimeout(e._focusing),e._inputWrapper.removeClass(T).removeClass(A),e._blur()},_format:function(e,t){var n=this._culture(t).numberFormat;return e=e.toLowerCase(),e.indexOf("c")>-1?n=n.currency:e.indexOf("p")>-1&&(n=n.percent),n},_input:function(){var t,n=this,r="k-formatted-value",a=n.element.addClass(g).show()[0],s=a.accessKey,o=n.wrapper;t=o.find(C+r),t[0]||(t=e('').insertBefore(a).addClass(r)),a.type="text",t[0].tabIndex=a.tabIndex,t[0].style.cssText=a.style.cssText,t.prop("placeholder",n.options.placeholder),s&&(t.attr("accesskey",s),a.accessKey=""),n._text=t.addClass(a.className)},_keydown:function(e){var t=this,n=e.keyCode;n==s.DOWN?t._step(-1):n==s.UP?t._step(1):n==s.ENTER&&t._change(t.element.val()),t._prevent(n,e.shiftKey)&&!e.ctrlKey&&e.preventDefault()},_paste:function(e){var t=this,n=e.target,r=n.value;setTimeout(function(){t._parse(n.value)===O&&t._update(r)})},_prevent:function(e,t){var n,a=this,o=a.element[0],i=o.value,l=a.options,u=l.min,d=a._format(l.format),c=d[C],p=l.decimals,_=r(o),f=_[0],m=_[1],v=0===f&&m===i.length,g=!0;return p===O&&(p=d.decimals),e>16&&21>e||e>32&&37>e||e>47&&58>e||e>95&&106>e||e==s.INSERT||e==s.DELETE||e==s.LEFT||e==s.RIGHT||e==s.TAB||e==s.BACKSPACE||e==s.ENTER?(g=!1,t&&(n=parseInt(String.fromCharCode(e),10),isNaN(n)||(n+="",i=i.substring(0,f)+n+i.substring(m),(-1===o.maxLength||o.maxLength>=i.length)&&(o.value=i,r(o,f+n.length)),g=!0))):(B[e]===c||110==e)&&p>0&&(-1==i.indexOf(c)||v)?110==e?(o.value=i.substring(0,f)+c+i.substring(m),r(o,f+c.length)):t||(g=!1):!(u===O||0>u)||-1!=i.indexOf("-")||189!=e&&109!=e&&173!=e||0!==f||(g=!1),g},_option:function(e,n){var r=this,a=r.options;return n===t?a[e]:(n=r._parse(n),(n||"step"!==e)&&(a[e]=n,r.element.attr("aria-value"+e,n).attr(e,n)),t)},_spin:function(e,t){var n=this;t=t||500,clearTimeout(n._spinning),n._spinning=setTimeout(function(){n._spin(e,50)},t),n._step(e)},_step:function(e){var t=this,n=t.element,r=t._parse(n.val())||0;l()!=n[0]&&t._focusin(),r+=t.options.step*e,t._update(t._adjust(r)),t.trigger(h)},_toggleHover:function(t){e(t.currentTarget).toggleClass(A,"mouseenter"===t.type)},_toggleText:function(e){var t=this;t._text.toggle(e),t.element.toggle(!e)},_parse:function(e,t){return d(e,this._culture(t),this.options.format)},_update:function(e){var t,n=this,r=n.options,s=r.format,o=r.decimals,i=n._culture(),l=n._format(s,i);o===O&&(o=l.decimals),e=n._parse(e,i),t=e!==O,t&&(e=parseFloat(_(e,o))),n._value=e=n._adjust(e),n._placeholder(a.toString(e,s,i)),t?(e=""+e,-1!==e.indexOf("e")&&(e=_(+e,o)),e=e.replace(C,l[C])):e="",n.element.val(e).attr("aria-valuenow",e)},_placeholder:function(e){this._text.val(e),c||e||this._text.val(this.options.placeholder)},_wrapper:function(){var t,n=this,r=n.element,a=r[0];t=r.parents(".k-numerictextbox"),t.is("span.k-numerictextbox")||(t=r.hide().wrap('').parent(),t=t.wrap("").parent()),t[0].style.cssText=a.style.cssText,a.style.width="",n.wrapper=t.addClass("k-widget k-numerictextbox").addClass(a.className).css("display",""),n._inputWrapper=e(t[0].firstChild)},_reset:function(){var t=this,n=t.element,r=n.attr("form"),a=r?e("#"+r):n.closest("form");a[0]&&(t._resetHandler=function(){setTimeout(function(){t.value(n[0].value)})},t._form=a.on("reset",t._resetHandler))}});o.plugin(D)}(window.kendo.jQuery)});