@boldreports/javascript-reporting-controls 5.3.12 → 5.3.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Content/bold.reportdesigner.core.bootstrap.compatibility.min.css +1 -1
- package/Content/bold.reportdesigner.core.bootstrap.min.css +1 -1
- package/Content/bold.reportdesigner.core.bootstrap4.compatibility.min.css +1 -1
- package/Content/bold.reportdesigner.core.bootstrap4.min.css +1 -1
- package/Content/bold.reportdesigner.core.compatibility.min.css +1 -1
- package/Content/bold.reportdesigner.core.material.compatibility.min.css +1 -1
- package/Content/bold.reportdesigner.core.material.min.css +1 -1
- package/Content/bold.reportdesigner.core.min.css +1 -1
- package/Content/bold.reportdesigner.core.office-365.compatibility.min.css +1 -1
- package/Content/bold.reportdesigner.core.office-365.min.css +1 -1
- package/Content/bold.widgets.core.bootstrap.compatibility.min.css +1 -1
- package/Content/bold.widgets.core.bootstrap.min.css +1 -1
- package/Content/bold.widgets.core.bootstrap4.compatibility.min.css +1 -1
- package/Content/bold.widgets.core.bootstrap4.min.css +1 -1
- package/Content/bold.widgets.core.compatibility.min.css +1 -1
- package/Content/bold.widgets.core.material.compatibility.min.css +1 -1
- package/Content/bold.widgets.core.material.min.css +1 -1
- package/Content/bold.widgets.core.min.css +1 -1
- package/Content/bold.widgets.core.office-365.compatibility.min.css +1 -1
- package/Content/bold.widgets.core.office-365.min.css +1 -1
- package/Content/bootstrap-theme/bold.reportdesigner.theme.compatibility.min.css +1 -1
- package/Content/bootstrap-theme/bold.reportdesigner.theme.min.css +1 -1
- package/Content/bootstrap-theme/bold.theme.compatibility.min.css +1 -1
- package/Content/bootstrap-theme/bold.theme.min.css +1 -1
- package/Content/bootstrap4/bold.reportdesigner.theme.compatibility.min.css +1 -1
- package/Content/bootstrap4/bold.reportdesigner.theme.min.css +1 -1
- package/Content/bootstrap4/bold.theme.compatibility.min.css +1 -1
- package/Content/bootstrap4/bold.theme.min.css +1 -1
- package/Content/high-contrast-01/bold.reportdesigner.theme.compatibility.min.css +1 -1
- package/Content/high-contrast-01/bold.reportdesigner.theme.min.css +1 -1
- package/Content/high-contrast-01/bold.theme.compatibility.min.css +1 -1
- package/Content/high-contrast-01/bold.theme.min.css +1 -1
- package/Content/high-contrast-02/bold.reportdesigner.theme.compatibility.min.css +1 -1
- package/Content/high-contrast-02/bold.reportdesigner.theme.min.css +1 -1
- package/Content/high-contrast-02/bold.theme.compatibility.min.css +1 -1
- package/Content/high-contrast-02/bold.theme.min.css +1 -1
- package/Content/material/bold.reportdesigner.theme.compatibility.min.css +1 -1
- package/Content/material/bold.reportdesigner.theme.min.css +1 -1
- package/Content/material/bold.theme.compatibility.min.css +1 -1
- package/Content/material/bold.theme.min.css +1 -1
- package/Content/office-365/bold.reportdesigner.theme.compatibility.min.css +1 -1
- package/Content/office-365/bold.reportdesigner.theme.min.css +1 -1
- package/Content/office-365/bold.theme.compatibility.min.css +1 -1
- package/Content/office-365/bold.theme.min.css +1 -1
- package/Content/v2.0/bootstrap-dark/bold.report-designer.min.css +1 -1
- package/Content/v2.0/bootstrap-dark/bold.report-viewer.min.css +1 -1
- package/Content/v2.0/bootstrap-light/bold.report-designer.min.css +1 -1
- package/Content/v2.0/bootstrap-light/bold.report-viewer.min.css +1 -1
- package/Content/v2.0/fluent-dark/bold.report-designer.min.css +1 -1
- package/Content/v2.0/fluent-dark/bold.report-viewer.min.css +1 -1
- package/Content/v2.0/fluent-light/bold.report-designer.min.css +1 -1
- package/Content/v2.0/fluent-light/bold.report-viewer.min.css +1 -1
- package/Content/v2.0/material-dark/bold.report-designer.min.css +1 -1
- package/Content/v2.0/material-dark/bold.report-viewer.min.css +1 -1
- package/Content/v2.0/material-light/bold.report-designer.min.css +1 -1
- package/Content/v2.0/material-light/bold.report-viewer.min.css +1 -1
- package/Content/v2.0/tailwind-dark/bold.report-designer.min.css +1 -1
- package/Content/v2.0/tailwind-dark/bold.report-viewer.min.css +1 -1
- package/Content/v2.0/tailwind-light/bold.report-designer.min.css +1 -1
- package/Content/v2.0/tailwind-light/bold.report-viewer.min.css +1 -1
- package/Scripts/bold.report-designer.min.js +1 -1
- package/Scripts/bold.report-viewer.min.js +2 -2
- package/Scripts/common/bold.report-designer-widgets.min.js +1 -1
- package/Scripts/common/bold.reports.common.min.js +1 -1
- package/Scripts/common/bold.reports.react.min.js +1 -1
- package/Scripts/common/bold.reports.widgets.min.js +2 -2
- package/Scripts/common/ej.unobtrusive.min.js +1 -1
- package/Scripts/common/ej.webform.min.js +1 -1
- package/Scripts/common/ej.widget.angular.min.js +1 -1
- package/Scripts/common/ej.widget.ko.min.js +1 -1
- package/Scripts/data-visualization/ej.bulletgraph.min.js +1 -1
- package/Scripts/data-visualization/ej.chart.min.js +1 -1
- package/Scripts/v2.0/bold.report-designer.min.js +1 -1
- package/Scripts/v2.0/bold.report-viewer.min.js +2 -2
- package/Scripts/v2.0/common/bold.reports.common.min.js +1 -2
- package/Scripts/v2.0/common/bold.reports.widgets.min.js +1 -1
- package/Scripts/v2.0/localization/l10n/ej.localetexts.ar-AE.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.cs-CZ.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.da-DK.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.de-DE.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.en-AU.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.en-CA.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.en-GB.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.en-US.min.js +1 -1
- package/Scripts/v2.0/localization/l10n/ej.localetexts.es-ES.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.fa-IR.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.fi-FI.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.fr-CA.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.fr-FR.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.he-IL.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.hr-HR.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.hu-HU.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.it-IT.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.it-LT.min.js +1 -1
- package/Scripts/v2.0/localization/l10n/ej.localetexts.ja-JP.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.ko-KR.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.ms-MY.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.nb-NO.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.nl-NL.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.pl-PL.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.pt-BR.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.pt-PT.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.ro-RO.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.ru-RU.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.sk-SK.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.sv-SE.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.tr-TR.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.vi-VN.min.js +2 -2
- package/Scripts/v2.0/localization/l10n/ej.localetexts.zh-CN.min.js +2 -2
- package/Scripts/v2.0/localization/querydesigner/ej.localetexts.de-DE.min.js +1 -1
- package/Scripts/v2.0/localization/querydesigner/ej.localetexts.en-AU.min.js +1 -1
- package/Scripts/v2.0/localization/querydesigner/ej.localetexts.en-CA.min.js +1 -1
- package/Scripts/v2.0/localization/querydesigner/ej.localetexts.en-US.min.js +1 -1
- package/Scripts/v2.0/localization/querydesigner/ej.localetexts.es-ES.min.js +1 -1
- package/Scripts/v2.0/localization/querydesigner/ej.localetexts.fr-CA.min.js +1 -1
- package/Scripts/v2.0/localization/querydesigner/ej.localetexts.fr-FR.min.js +1 -1
- package/Scripts/v2.0/localization/querydesigner/ej.localetexts.it-IT.min.js +1 -1
- package/Scripts/v2.0/localization/querydesigner/ej.localetexts.tr-TR.min.js +1 -1
- package/Scripts/v2.0/localization/querydesigner/ej.localetexts.zh-CN.min.js +1 -1
- package/Scripts/v2.0/localization/reportdesigner/ej.localetexts.de-DE.min.js +1 -1
- package/Scripts/v2.0/localization/reportdesigner/ej.localetexts.en-AU.min.js +1 -1
- package/Scripts/v2.0/localization/reportdesigner/ej.localetexts.en-CA.min.js +1 -1
- package/Scripts/v2.0/localization/reportdesigner/ej.localetexts.en-US.min.js +1 -1
- package/Scripts/v2.0/localization/reportdesigner/ej.localetexts.es-ES.min.js +1 -1
- package/Scripts/v2.0/localization/reportdesigner/ej.localetexts.fr-CA.min.js +1 -1
- package/Scripts/v2.0/localization/reportdesigner/ej.localetexts.fr-FR.min.js +1 -1
- package/Scripts/v2.0/localization/reportdesigner/ej.localetexts.it-IT.min.js +1 -1
- package/Scripts/v2.0/localization/reportdesigner/ej.localetexts.tr-TR.min.js +1 -1
- package/Scripts/v2.0/localization/reportdesigner/ej.localetexts.zh-CN.min.js +1 -1
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.ar-AE.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.cs-CZ.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.da-DK.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.de-DE.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.en-AU.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.en-CA.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.en-GB.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.en-US.min.js +1 -1
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.es-ES.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.fa-IR.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.fi-FI.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.fr-CA.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.fr-FR.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.he-IL.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.hr-HR.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.hu-HU.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.it-IT.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.it-LT.min.js +1 -1
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.ja-JP.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.ko-KR.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.ms-MY.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.nb-NO.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.nl-NL.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.pl-PL.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.pt-BR.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.pt-PT.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.ro-RO.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.ru-RU.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.sk-SK.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.sv-SE.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.tr-TR.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.vi-VN.min.js +2 -2
- package/Scripts/v2.0/localization/reportviewer/ej.localetexts.zh-CN.min.js +2 -2
- package/package.json +2 -2
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: bold.reports.widgets.min.js
|
|
3
|
-
* version : 5.3.
|
|
3
|
+
* version : 5.3.14
|
|
4
4
|
* Copyright Syncfusion Inc. 2001 - 2023. All rights reserved.
|
|
5
5
|
* Use of this code is subject to the terms of our license.
|
|
6
6
|
* A copy of the current license can be obtained at any time by e-mailing
|
|
7
7
|
* licensing@syncfusion.com. Any infringement will be prosecuted under
|
|
8
8
|
* applicable laws.
|
|
9
9
|
*/
|
|
10
|
-
(function(n){typeof define=="function"&&define.amd?define(["./bold.reports.common.min"],n):n()})(function(){(function(n,t,i){t.widget({ejNumericTextbox:["ej.NumericTextbox","e-numerictextbox"],ejPercentageTextbox:["ej.PercentageTextbox","e-percentagetextbox"],ejCurrencyTextbox:["ej.CurrencyTextbox","e-currencytextbox"]},{element:null,model:null,validTags:["input"],_addToPersist:["value"],_setFirst:!1,type:"editor",angular:{require:["?ngModel","^?form","^?ngModelOptions"],requireFormatters:!0,requireParser:!0},defaults:{width:"",height:"",value:null,name:null,htmlAttributes:{},minValue:-Number.MAX_VALUE,maxValue:Number.MAX_VALUE,incrementStep:1,decimalPlaces:0,validateOnType:!1,cssClass:"",enablePersistence:!1,showSpinButton:!0,locale:"en-US",enableStrictMode:!1,showRoundedCorner:!1,readOnly:!1,enabled:!0,enableRTL:!1,watermarkText:"Enter value",validationRules:null,validationMessage:null,groupSeparator:null,groupSize:null,positivePattern:null,currencySymbol:null,negativePattern:null,change:null,focusIn:null,focusOut:null,create:null,destroy:null},dataTypes:{minValue:"number",maxValue:"number",incrementStep:"number",decimalPlaces:"number",showSpinButton:"boolean",enableStrictMode:"boolean",showRoundedCorner:"boolean",enableRTL:"boolean",locale:"string",watermarkText:"string",cssClass:"string",readOnly:"boolean",enabled:"boolean",validationRules:"data",validationMessage:"data",htmlAttributes:"data",validateOnType:"boolean",groupSeparator:"string"},observables:["value"],_setModel:function(n){var r=!1;for(var i in n)switch(i){case"value":t.isNullOrUndefined(n.minValue)&&t.isNullOrUndefined(n.maxValue)?(this._setValue(n[i],!0),n[i]=this.model.value):(this.model.value=this._checkNumValue(n[i]),this._localizedFormat(),this._raiseChangeEvent(!0),r=!0);break;case"enableRTL":this._enableRTL(n[i]);break;case"width":this._setWidth(n[i]);break;case"height":this._setHeight(n[i]);break;case"validationRules":this.model.validationRules!=null&&(this.element.rules("remove"),this.model.validationMessage=null);this.model.validationRules=n[i];this.model.validationRules!=null&&(this._initValidator(),this._setValidation());break;case"validationMessage":this.model.validationMessage=n[i];this.model.validationRules!=null&&this.model.validationMessage!=null&&(this._initValidator(),this._setValidation());break;case"minValue":if(isNaN(n[i]))return;this.model.minValue=this.model.decimalPlaces==-1?n[i]:parseFloat(n[i].toFixed(this.model.decimalPlaces));this._updateValueAttributes(this.model.minValue,this.model.maxValue,this.model.value);r=!0;break;case"maxValue":if(isNaN(n[i]))return;this.model.maxValue=this.model.decimalPlaces==-1?n[i]:parseFloat(n[i].toFixed(this.model.decimalPlaces));this._updateValueAttributes(this.model.minValue,this.model.maxValue,this.model.value);r=!0;break;case"incrementStep":if(isNaN(n[i]))return;this.model.incrementStep=this.model.decimalPlaces==-1?n[i]:parseFloat(n[i].toFixed(this.model.decimalPlaces));break;case"enableStrictMode":this.model.enableStrictMode=n[i];r=!0;break;case"showSpinButton":this._showSpin(n[i]);break;case"showRoundedCorner":this._roundedCorner(n[i]);break;case"locale":this.model.decimalPlaces=t.isNullOrUndefined(this._options.decimalPlaces)&&this.model.decimalPlaces===this.culture.numberFormat.decimals?-1:this._options.decimalPlaces===-1?-1:this.model.decimalPlaces;this._setLocalize(n[i]);this._options.decimalPlaces=this.model.decimalPlaces;n[i]=this.model.locale;break;case"decimalPlaces":this._setDecimal(n[i]);t.isNullOrUndefined(this._options)&&(this._options={});this._options.decimalPlaces=n[i];break;case"cssClass":this._setSkin(n[i]);break;case"readOnly":this._setReadOnly(n[i]);break;case"enabled":n[i]?this.enable():this.disable();break;case"watermarkText":t.isNullOrUndefined(this._options)||(this._options=[]);this._options.watermarkText=this.model.watermarkText=n[i];this._localizedLabels.watermarkText=this.model.watermarkText;this._changeWatermark(n[i]);break;case"htmlAttributes":this._addAttr(n[i]);break;case"groupSeparator":this._checkSeparator(n[i]);n[i]=this.model.groupSeparator;break;case"positivePattern":case"negativePattern":case"groupSize":case"currencySymbol":this.model[i]=n[i];this._options[i]=n[i];this._initCustomValue();n[i]=this.model[i];this._setValue(this.model.value,!0)}r&&(this._validateMinMaxValue(!0,!0),n.value=this.model.value,n.maxValue=this.model.maxValue,n.minValue=this.model.minValue,this.model.minValue!=-Number.MAX_VALUE&&(this._startValue=this.model.minValue),this._updateValueAttributes(this.model.minValue,this.model.maxValue,this.model.value));this._checkSeparator(this.model.groupSeparator);this.element.val(this._removeSeparator(this.model.value));this._updateSeparator();this._checkErrorClass()},_destroy:function(){this.wrapper&&(this.element.insertBefore(this.wrapper),this.wrapper.remove());this._isWatermark&&this.element.removeAttr("placeholder");this.element.val("").removeClass("e-input e-disable e-no-spin").empty();this.element.removeAttr("disabled aria-disabled");this.wrapper.removeAttr("aria-valuemin aria-valuemax aria-valuenow aria-live");this._cloneElement.attr("role")||this.element.removeAttr("role");this.element.css("display","block")},_init:function(n){if(this._cloneElement=this.element.clone(),this._options=t.isNullOrUndefined(n)?{}:n,this.element.is("input")&&(this.element.is("input[type=text]")||this.element.is("input[type=number]")||!this.element.attr("type")))this.model.decimalPlaces>0&&(this.element[0].type=this.element.is("input[type=number]")?"tel":"text"),this.element.is("input[type=number]")&&this.element.addClass("e-no-spin"),this._isWatermark="placeholder"in document.createElement("input"),this.model.locale=t.preferredCulture(this.model.locale).name=="en"?"en-US":t.preferredCulture(this.model.locale).name,this._localizedLabels=this._getLocalizedLabels(),this.culture=t.preferredCulture(this.model.locale),this._browsername=t.browserInfo().name,this._initCustomValue(),this._prevSeparator=null,this._checkSeparator(this.model.groupSeparator),this._checkAttribute(),this._renderControl(),this._setValues(),this._wireEvents(),this._initObjects(),this._addAttr(this.model.htmlAttributes),this.model.validationRules!=null&&(this._initValidator(),this._setValidation()),this._updateSeparator(),n&&n.value!=i&&this._trigger("_change",{value:this.model.value});else return this._destroy(),!1},_checkAttribute:function(){for(var u=["min","max","step","readonly","disabled","placeholder"],f=["minValue","maxValue","incrementStep","readOnly","enabled","watermarkText"],i,n,r=0;r<u.length;r++)i=this.element.attr(u[r]),n=f[r],t.isNullOrUndefined(i)||t.isNullOrUndefined(this._options)||!t.isNullOrUndefined(this._options[n])||(n=="watermarkText"?this._options[n]=i:this.model[n]=n!="disabled"&&n!="readOnly"?t.parseFloat(i,this.model.locale):n=="readOnly"?this.element.is("[readonly]"):!this.element.is("[disabled]"))},_addAttr:function(i){var r=this;n.map(i,function(n,i){var u=i.toLowerCase();u=="class"?r.wrapper.addClass(n):u=="accesskey"?r._hiddenInput.attr(i,n):u=="disabled"&&n=="disabled"?r.disable():u=="readonly"&&n=="readOnly"?r._setReadOnly(!0):u=="tabindex"?(r._hiddenInput.attr(i,n),r.element.attr(i,n)):u=="style"||u=="id"?r.wrapper.attr(i,n):u=="aria-label"?r.element.attr(i,n):t.isValidAttr(r.element[0],i)?r.element.attr(i,n):r.wrapper.attr(i,n)})},_setValues:function(){this._id=this.element[0].id;this._textBox=this._hiddenInput[0];this._error=!1;this._timeout=null;this.isValidState=!0;this._allowkeyboard=!0;this._validateOnType=!1;this._focused=!1;this._startValue=0;this.sfType==="ej.CurrencyTextbox"&&this.model.minValue==-Number.MAX_VALUE&&(this.model.minValue=0);t.isNullOrUndefined(this.model.decimalPlaces)&&(this.model.decimalPlaces=this.sfType==="ej.CurrencyTextbox"?t.preferredCulture(this.model.locale).numberFormat.currency.decimals:t.preferredCulture(this.model.locale).numberFormat.decimals);this.model.decimalPlaces>=0&&(this.model.minValue=parseFloat(this.model.minValue.toFixed(this.model.decimalPlaces)),this.model.maxValue=parseFloat(this.model.maxValue.toFixed(this.model.decimalPlaces)));this.model.minValue!=-Number.MAX_VALUE&&(this._startValue=this.model.minValue);t.isNullOrUndefined(this._options)||t.isNullOrUndefined(this._options.watermarkText)||(this._localizedLabels.watermarkText=this._options.watermarkText);this._localizedLabelToModel();this._localizedFormat();this._validateMinMaxValue(!0);this._updateSymbol(this.model.locale);var n;t.isNullOrUndefined(this.model.value)?(n=this.model.value,this.wrapper.removeClass("e-valid")):(n=this.model.value.toString().indexOf("e")==-1?this._removeSeparator(this.model.value):this._convertToExponetial(this.model.value).unformattedValue,this.wrapper.addClass("e-valid"));this.element.val(n)},_initValidator:function(){this.element.closest("form").data("validator")||this.element.closest("form").validate()},_setValidation:function(){var u=this.model.validationRules,r,e,i,f,o;this.element.rules("add",u);r=this.element.closest("form").data("validator");r=r?r:this.element.closest("form").validate();e=this.element.attr("name");r.settings.messages[e]={};for(i in u)if(f=null,!t.isNullOrUndefined(u[i])){if(t.isNullOrUndefined(u.messages&&u.messages[i])){r.settings.messages[e][i]=n.validator.messages[i];for(o in this.model.validationMessage)i==o?f=this.model.validationMessage[i]:""}else f=u.messages[i];r.settings.messages[e][i]=f!=null?f:n.validator.messages[i]}},_updateValueAttributes:function(n,t,i){n&&n!=-Number.MAX_VALUE&&this.wrapper.attr({"aria-valuemin":n});t&&t!=Number.MAX_VALUE&&this.wrapper.attr({"aria-valuemax":t});i&&this.wrapper.attr({"aria-valuenow":i})},_renderControl:function(){this.wrapper=t.buildTag("span.e-widget e-pinch");this.innerWrap=t.buildTag("span.e-in-wrap e-box ");this.wrapper.attr("style",this.element.attr("style"));this.sfType==="ej.NumericTextbox"?this.wrapper.addClass("e-numeric"):this.sfType==="ej.PercentageTextbox"?this.wrapper.addClass("e-percent"):this.sfType==="ej.CurrencyTextbox"&&this.wrapper.addClass("e-currency");this.wrapper.append(this.innerWrap).insertAfter(this.element);this.innerWrap.append(this.element);this._hiddenInput=t.buildTag("input","",{},{type:"text"}).insertBefore(this.element);this._hiddenInput.attr("data-role","none");this._hiddenInput[0].tabIndex=this.element[0].tabIndex;this._hiddenInput.attr("accesskey",this.element[0].accessKey);this.element[0].accessKey="";this._hiddenInput.css("display","block");this.element.css("display","none");this._isWatermark||(this._hiddenSpan=t.buildTag("span.e-input e-placeholder ").insertAfter(this.element),this._hiddenSpan.text(this._localizedLabels.watermarkText),this._hiddenSpan.css("display","none"),this._on(this._hiddenSpan,"mousedown",this._focusIn),this._on(this._hiddenSpan,"mousewheel",this._mouseWheel),this._on(this._hiddenSpan,"DOMMouseScroll",this._mouseWheel));this.model.name=this.element.attr("name")!=null?this.element.attr("name"):this.model.name!=null?this.model.name:this.element[0].id;this.element.attr("name")==null?this.element.attr("name",this.model.name):"";this.element.addClass("e-input");t.isNullOrUndefined(this.model.value)&&this.element[0].value!=""?(t.preferredCulture(this.model.locale).numberFormat[","]=="."&&(this.element[0].value=this.element[0].value.replace(".",",")),this.model.value=this._checkNumValue(this.element[0].value)):(typeof this.model.value=="string"&&t.preferredCulture(this.model.locale).numberFormat[","]=="."&&(this.model.value=this.model.value.replace(".",",")),this.model.value=this._checkNumValue(this.model.value));this._hiddenInput.attr({value:this.model.value}).addClass("e-input");this.wrapper.attr({role:"spinbutton"});this._updateValueAttributes(this._options.minValue,this._options.maxVal,this.model.value);this.element.attr({"aria-live":"assertive",value:this.model.value});var i=n('<span class="e-select"><span class="e-spin e-spin-up " role="button" aria-label="Increase Value" unselectable="on"><\/span><span class="e-spin e-spin-down" role="button" aria-label="Decrease Value" unselectable="on"><\/span><\/span>');i.find(".e-spin-up").append(t.buildTag("span.e-icon e-arrow e-arrow-sans-up").attr({role:"presentation",unselectable:"on"}));i.find(".e-spin-down").append(t.buildTag("span.e-icon e-arrow e-arrow-sans-down").attr({role:"presentation",unselectable:"on"}));this.innerWrap.append(i);this.spin=this.wrapper.find(".e-select");this.spinUp=this.wrapper.find(".e-spin-up");this.spinDown=this.wrapper.find(".e-spin-down");this._setWidth(this.model.width);this._setHeight(this.model.height);this.model.cssClass!=""&&this._setSkin(this.model.cssClass);this._showSpin(this.model.showSpinButton);this.model.showRoundedCorner&&this._roundedCorner(this.model.showRoundedCorner);this.model.enableRTL&&this._enableRTL(this.model.enableRTL);this.model.readOnly&&this._setReadOnly(this.model.readOnly);this.model.enabled?this.model.enabled&&this.element.hasClass("e-disable")&&this.enable():this.disable()},_initObjects:function(){this._preVal=this.model.value;this.model.value===null?(this.isValidState=!0,this._hiddenInput.val(null)):(this.model.value<this.model.minValue||this.model.value>this.model.maxValue)&&(this.isValidState=!1);this._checkErrorClass();this._setWaterMark()},_showSpin:function(n){n?(this.spin&&(this.spin.show(),this.innerWrap.addClass("e-padding")),this._spinEvents("_on")):(this.spin&&(this.spin.hide(),this.innerWrap.removeClass("e-padding")),this._spinEvents("_off"))},_roundedCorner:function(n){n&&!this.innerWrap.hasClass("e-corner")?this.innerWrap.addClass("e-corner"):this.innerWrap.hasClass("e-corner")&&this.innerWrap.removeClass("e-corner")},_enableRTL:function(n){n?this.spin?this.wrapper.addClass("e-rtl"):this.element.addClass("e-rtl"):this.spin?this.wrapper.removeClass("e-rtl"):this.element.removeClass("e-rtl")},_setWidth:function(n){n!=""?this.wrapper.width(n):this.model.width=this.wrapper.outerWidth()},_setHeight:function(n){n!=""?this.wrapper.height(n):this.model.height=this.wrapper.outerHeight()},_setSkin:function(n){this.wrapper.removeClass(this.model.cssClass);this.wrapper.addClass(n)},_setValue:function(n,t){this._isWatermark||this._hiddenSpan.css("display","none");this.model.value=this._checkNumValue(n);this._validateMinMaxValue(!1);this._checkErrorClass();this._localizedFormat();this._raiseChangeEvent(t);this._setWaterMark()},_setLocalize:function(n){var r=t.preferredCulture(this.model.locale).numberFormat[","],i;this.model.locale=t.preferredCulture(n).name=="en"?"en-US":t.preferredCulture(n).name;this.model.groupSeparator=t.isNullOrUndefined(this._options.groupSeparator)&&r===this.model.groupSeparator?t.preferredCulture(this.model.locale).numberFormat[","]:this.model.groupSeparator;this._localizedLabels=this._getLocalizedLabels();t.isNullOrUndefined(this._options)||t.isNullOrUndefined(this._options.watermarkText)||(this._localizedLabels.watermarkText=this._options.watermarkText);this._localizedLabelToModel();this.culture=t.preferredCulture(this.model.locale);this._initCustomValue();this._updateSymbol(this.model.locale);this._localizedFormat();this._changeWatermark(this.model.watermarkText);i=t.isNullOrUndefined(this.model.value)?this.model.value:this.model.value.toString().indexOf("e")==-1?this._formatValue(this.model.value,"n",!0):this._convertToExponetial(this.model.value).unformattedValue;this.element.val(i)},_localizedLabelToModel:function(){this.model.watermarkText=this._localizedLabels.watermarkText},_updateSymbol:function(n){this._percentSymbol=t.preferredCulture(n).numberFormat.percent.symbol;this._currencySymbol=t.preferredCulture(n).numberFormat.currency.symbol},_setDecimal:function(n){this.model.decimalPlaces=n;this._localizedFormat()},_validateMinMaxValue:function(n,i){var u=!1,r;this.model.minValue>this.model.maxValue&&(this.model.minValue=this.model.maxValue);!t.isNullOrUndefined(this.model.value)&&this.model.minValue>this.model.value?(this.model.enableStrictMode!=!0?(this.isValidState=!0,this._startValue=this.model.value=this.model.minValue):this.isValidState=!1,u=!0):!t.isNullOrUndefined(this.model.value)&&this.model.maxValue<this.model.value?(this.model.enableStrictMode!=!0?(this.isValidState=!0,this.model.value=this.model.maxValue):this.isValidState=!1,u=!0):this.isValidState=!0;this.model.minValue==this.model.maxValue&&(this._startValue=this.model.minValue);u&&n&&(r=this._formatValue(this.model.value,"n",!0),this._hiddenInput.val(r),r=t.isNullOrUndefined(this.model.value)?this.model.value:this.model.value.toString().indexOf("e")==-1?this._formatValue(this.model.value,"n",!0):this._convertToExponetial(this.model.value).unformattedValue,this.element.val(r),this._localizedFormat(),this._raiseChangeEvent(i))},_convertToExponetial:function(n){var h="",u,i,c,e,r=n<0?!0:!1,o,s,f;for(n=n.toString(),i=t.preferredCulture(this.model.locale).numberFormat,n=n.replace(".",i["."]),c=n,s=null,this.sfType==="ej.NumericTextbox"?(u=r?i.pattern[0]:t.isNullOrUndefined(i.pattern[1])?"n":i.pattern[1],n=r?n.replace("-",""):n,e=""):this.sfType==="ej.PercentageTextbox"?(u=r?i.percent.pattern[0]:i.percent.pattern[1],n=r?n.replace("-",""):n,e=i.percent.symbol):this.sfType==="ej.CurrencyTextbox"&&(u=r?i.currency.pattern[0]:i.currency.pattern[1],n=r?n.replace("-",""):n,e=i.currency.symbol),o=0,s=u.length;o<s;o++)f=u.charAt(o),h+=f==="n"?n:f==="$"||f==="%"?e:f;return{formattedValue:h,unformattedValue:c}},_localizedFormat:function(){var i,r,n,u;if(this.culture=t.preferredCulture(this.model.locale),this._decimalSep=t.preferredCulture(this.model.locale).numberFormat["."],t.isNullOrUndefined(this.model.value)){this._textBox.value="";return}this.model.value.toString().indexOf("e")==-1?(this._textBox.value=this._removeSeparator(this.model.value),this._focused||this._textBox.value==""?(u=this._convertToExponetial(this.model.value),this._textBox.value=u.unformattedValue,this._focused||this._textBox.value==""||(this._textBox.value=u.formattedValue)):(this._textBox.value=this._formatValue(this.model.value,"n",!0),this.sfType==="ej.PercentageTextbox"?this._appendPercentSymbol(this._textBox.value):this.sfType==="ej.CurrencyTextbox"&&this._appendCurrencySymbol(this._textBox.value),i=this.sfType==="ej.CurrencyTextbox"?this._textBox.value.indexOf(this._currencySymbol):this.sfType==="ej.PercentageTextbox"?this._textBox.value.indexOf(this._percentSymbol):-1,this.model.decimalPlaces==-1&&this._afterDec!=0&&(this._textBox.value=this._textBox.value.substr(0,this._textBox.value.lastIndexOf(this._decimalSep)),i>1&&(t.isNullOrUndefined(this._afterDec)||this._afterDec=="")&&(this.sfType==="ej.CurrencyTextbox"&&(this._textBox.value=this._textBox.value+" "+this._currencySymbol),this.sfType==="ej.PercentageTextbox"&&(this._textBox.value=this._textBox.value+" "+this._percentSymbol)),this.model.decimalPlaces!=-1||t.isNullOrUndefined(this._afterDec)||this._afterDec==""||(r=this._textBox.value.lastIndexOf(this._decimalSep),r>=0&&(this._textBox.value=this._textBox.value.substr(0,r)),n=this._afterDec,i>1&&(this.sfType==="ej.CurrencyTextbox"&&(n=n+" "+this._currencySymbol),this.sfType==="ej.PercentageTextbox"&&(n=n+" "+this._percentSymbol)),this._textBox.value=this._textBox.value+this._decimalSep+n)))):this._textBox.value=this.model.value.toString()},_checkNumValue:function(n){return typeof n=="string"&&(n=this._changeSeparator?this._replaceSeparator(n,this.model.groupSeparator,t.preferredCulture(this.model.locale).numberFormat[","]):n),typeof n!="string"||isNaN(this._parseValue(n))?typeof n!="number"||isNaN(n)?null:n:(n=this._parseValue(n),parseFloat(n))},_setReadOnly:function(n){this.model.readOnly=n;n?(this.element.attr("readonly",!0),this._hiddenInput.attr("readonly",!0)):(this.element.prop("readonly",!1),this._hiddenInput.prop("readonly",!1))},_setWaterMark:function(){this._localizedLabels.watermarkText!=null&&this._textBox.value===""&&n.trim(this._hiddenInput.val())===""&&(this._isWatermark?(this._hiddenInput.attr("placeholder",this._localizedLabels.watermarkText),this.element.attr("placeholder",this._localizedLabels.watermarkText)):this._hiddenSpan.css("display","block").text(this._localizedLabels.watermarkText))},_changeWatermark:function(n){if(!this.model.enabled)return!1;this._isWatermark?(this._hiddenInput.attr("placeholder",n),this.element.attr("placeholder",n)):this._hiddenSpan.text(n)},_setSelectionRange:function(n,t){function f(i){i.collapse(!0);i.moveEnd("character",t);i.moveStart("character",n);i.select()}var i=this._textBox,r,u;try{i.setSelectionRange?this._browsername=="edge"?setTimeout(function(){i.setSelectionRange(n,t)}):i.setSelectionRange(n,t):i.createTextRange&&(r=i.createTextRange(),f(r))}catch(e){u=this;window.setTimeout(function(){if(document.body.focus(),u._textBox.select(),document.selection){var n=document.selection.createRange();f(n)}},1)}},_getSelection:function(n){if(this._textBox.type!="number"){var t=null;return document.selection?(t=document.selection.createRange(),t.text===""?t.text:this._removeFormats(t.text)):n==null?this.model.value:this._removeFormats(n.substring(this._textBox.selectionStart,this._textBox.selectionEnd))}},_caretPosition:function(){var n=this._textBox,t=0,i;if(n.type!="number")return document.selection?(n.focus(),i=document.selection.createRange(),i.moveStart("character",-n.value.length),t=i.text.length):(n.selectionStart||n.selectionStart=="0")&&(t=n.selectionEnd),t},_appendPercentSymbol:function(n){this._percentSymbol&&(n=n.replace(this._percentSymbol,""));n.indexOf(t.preferredCulture(this.model.locale).numberFormat.percent.symbol)<0&&(this._textBox.value=this._formatValue(this._parseValue(n)/100,"p",!0));this._percentSymbol=t.preferredCulture(this.model.locale).numberFormat.percent.symbol},_appendCurrencySymbol:function(n){this._currencySymbol&&(n=n.replace(this._currencySymbol,""));n.indexOf(t.preferredCulture(this.model.locale).numberFormat.currency.symbol)<0&&(this._textBox.value=this._formatValue(this._parseValue(n),"c",!0));this._currencySymbol=t.preferredCulture(this.model.locale).numberFormat.currency.symbol},_removeFormats:function(n){var i=t.preferredCulture(this.model.locale).numberFormat[","];return n!=null?i=="."?n.toString().replace(/["."]/g,""):n.toString().match(new RegExp(i,"g"))?n.toString().replace(new RegExp(i,"g"),""):n:null},_checkErrorClass:function(){this.isValidState?this.wrapper.removeClass("e-error"):this.wrapper.addClass("e-error")},enable:function(){this.model.enabled=!0;this.element[0].disabled=!1;this.element.prop("disabled",!1);this._hiddenInput.prop("disabled",!1);this.element.removeClass("e-disable").attr({"aria-disabled":!1});this._hiddenInput.removeClass("e-disable").attr({"aria-disabled":!1});this.wrapper.find(".e-select").removeClass("e-disable").attr({"aria-disabled":!1});this.wrapper.find(".e-select span.e-icon.e-arrow").removeClass("e-disable");this.wrapper.removeClass("e-disable-wrap")},disable:function(){this.model.enabled=!1;this.element[0].disabled=!0;this.element.attr("disabled","disabled");this._hiddenInput.attr("disabled","disabled");this.element.addClass("e-disable").attr({"aria-disabled":!0});this._hiddenInput.addClass("e-disable").attr({"aria-disabled":!0});this.wrapper.find(".e-select").addClass("e-disable").attr({"aria-disabled":!0});this.wrapper.find(".e-select span.e-icon.e-arrow").addClass("e-disable");this.wrapper.addClass("e-disable-wrap")},getValue:function(){return this.model.value},_wireEvents:function(){this._on(this._hiddenInput,"focus",this._focusIn);this._on(this.element,"paste",this._paste);this._on(this.element,"blur",this._focusOut);this._on(this.element,"keydown",this._keyDown);this._on(this.element,"keypress",this._keyPress);this._on(this.element,"mousewheel",this._mouseWheel);this._on(this.element,"DOMMouseScroll",this._mouseWheel)},_spinEvents:function(n){this[n](this.spinUp,"mousedown mouseup touchstart touchend",this._spinUpClick);this[n](this.spinDown,"mousedown mouseup touchstart touchend",this._spinDownClick)},_isIE8:function(){var n=!1,i=t.browserInfo();return i.name=="msie"&&i.version=="8.0"&&(n=!0),n},_spinUpClick:function(t){var i=!1,r;(t.button?i=this._isIE8()?t.button!=1:t.button!=0:t.which&&(i=t.which==3),i)||(r=this,t.preventDefault(),clearTimeout(this._timeout),this.model.enabled&&!this.model.readOnly)&&(this.wrapper.find(".e-animate").removeClass("e-animate"),this.spinUp.addClass("e-animate"),this._on(this.spinUp,"mouseleave",this._mouseUpClick),this.spinUp.addClass("e-active"),r=this,t.type=="mouseup"||t.type=="touchend"?(this._updateInputField("increment"),this.spinUp.removeClass("e-active"),this._off(n(document),"mouseup",this._mouseUpClick)):(t.type=="mousedown"||t.type=="touchstart")&&(this._focused||this._hiddenInput[0].focus(),this._timeout=setInterval(function(){r._updateInputField("increment")},150),this._on(n(document),"mouseup",this._mouseUpClick)))},_spinDownClick:function(t){var i=!1,r;(t.button?i=this._isIE8()?t.button!=1:t.button!=0:t.which&&(i=t.which==3),i)||(r=this,t.preventDefault(),clearTimeout(this._timeout),this.model.enabled&&!this.model.readOnly)&&(this.wrapper.find(".e-animate").removeClass("e-animate"),this.spinDown.addClass("e-animate"),this._on(this.spinDown,"mouseleave",this._mouseUpClick),this.spinDown.addClass("e-active"),t.type=="mouseup"||t.type=="touchend"?(this._updateInputField("decrement"),this.spinDown.removeClass("e-active"),this._off(n(document),"mouseup",this._mouseUpClick)):(t.type=="mousedown"||t.type=="touchstart")&&(this._focused||this._hiddenInput[0].focus(),this._timeout=setInterval(function(){r._updateInputField("decrement")},150),this._on(n(document),"mouseup",this._mouseUpClick)))},_mouseUpClick:function(n){n.stopPropagation();clearTimeout(this._timeout);this._off(this.spinUp,"mouseleave",this._mouseUpClick);this._off(this.spinDown,"mouseleave",this._mouseUpClick);this.spinDown.removeClass("e-active");this.spinUp.removeClass("e-active")},_mouseWheel:function(n){if(n.preventDefault(),this._focused||this.element[0].focus(),this.model.enabled&&!this.model.readOnly){var t,i=n.originalEvent;i.wheelDelta?t=i.wheelDelta/120:i.detail&&(t=-i.detail/3);t>0?this._updateInputField("increment"):t<0&&this._updateInputField("decrement");this._cancelEvent(n)}},_numberValue:function(){var n=this._textBox.value;return this.sfType==="ej.NumericTextbox"&&(n=this._formatValue(this.model.value,"n",!0)),this.sfType==="ej.PercentageTextbox"?n=this._formatValue(this.model.value,"n",!0):this.sfType==="ej.CurrencyTextbox"&&(n=this._formatValue(this.model.value,"n",!0)),typeof n=="string"&&!isNaN(this._parseValue(n))?n:""},_formatValue:function(n,i,r){r&&this._updateCultureInfo();var n;return n=this.model.decimalPlaces!=-1||this.model.decimalPlaces==-1&&this.model.value==null?t.format(n,i+this.model.decimalPlaces,this.model.locale):t.format(n,i+this._afterDec.length,this.model.locale),r&&this._restCultureInfo(),n},_parseValue:function(n){this._updateCultureInfo();var n=t.parseFloat(n,this.model.locale);return this._restCultureInfo(),n},_initCustomValue:function(){var n,i=this.sfType=="ej.PercentageTextbox"?"percent":this.sfType=="ej.CurrencyTextbox"?"currency":"numeric";switch(i){case"percent":case"currency":n=this.culture.numberFormat[i];t.isNullOrUndefined(this._options.negativePattern)&&(this.model.negativePattern=n.pattern[0]);t.isNullOrUndefined(this._options.positivePattern)&&(this.model.positivePattern=n.pattern[1]);t.isNullOrUndefined(this._options.currencySymbol)&&i=="currency"&&(this.model.currencySymbol=n.symbol);t.isNullOrUndefined(this._options.groupSize)&&(this.model.groupSize=n.groupSizes[0]);break;case"numeric":n=this.culture.numberFormat;t.isNullOrUndefined(this._options.negativePattern)&&(this.model.negativePattern=n.pattern[0]);t.isNullOrUndefined(this._options.positivePattern)&&(this.model.positivePattern=t.isNullOrUndefined(n.pattern[1])?"n":n.pattern[1]);t.isNullOrUndefined(this._options.groupSize)&&(this.model.groupSize=n.groupSizes[0])}},_updateCultureInfo:function(){var n,t=this.sfType=="ej.PercentageTextbox"?"percent":this.sfType=="ej.CurrencyTextbox"?"currency":"numeric";n=t=="numeric"?this.culture.numberFormat:this.culture.numberFormat[t];this._oldNegativePattern=n.pattern[0];this._oldGroupSize=n.groupSizes[0];n.pattern[0]=this.model.negativePattern;n.groupSizes[0]=this.model.groupSize;this._oldPositivePattern=n.pattern[1];n.pattern[1]=this.model.positivePattern;t=="currency"&&(this._oldcurrencySymbol=n.symbol,n.symbol=this.model.currencySymbol)},_restCultureInfo:function(){var n,t=this.sfType=="ej.PercentageTextbox"?"percent":this.sfType=="ej.CurrencyTextbox"?"currency":"numeric";n=t=="numeric"?this.culture.numberFormat:this.culture.numberFormat[t];n.pattern[0]=this._oldNegativePattern;n.groupSizes[0]=this._oldGroupSize;n.pattern[1]=this._oldPositivePattern;t=="currency"&&(n.symbol=this._oldcurrencySymbol)},_toggleTextbox:function(n){var t=this;t._hiddenInput.toggle(n);t.element.toggle(!n)},_paste:function(n){var i,r;window.clipboardData&&window.clipboardData.getData?i=window.clipboardData.getData("Text"):n.originalEvent.clipboardData&&n.originalEvent.clipboardData.getData&&(i=n.originalEvent.clipboardData.getData("text/plain"));r=t.parseFloat(i,this.model.locale);isNaN(r)&&i&&this._cancelEvent(n)},_focusIn:function(){if(!this.model.readOnly){if(this._focused=!0,t.isNullOrUndefined(this.model.value)||this.element.val(this._removeSeparator(this.model.value)),this._toggleTextbox(!1),this._textBox=this.element[0],this.element[0].focus(),this._preVal=this.model.value,this._isWatermark||this._hiddenSpan.css("display","none"),this.wrapper.addClass("e-focus"),this.wrapper.removeClass("e-error"),!this._error){if(this._textBox.value!=""){var n=this._formatValue(this._textBox.value,"n",!0);this.model.decimalPlaces==-1&&(this._separateValue(this._textBox.value.toString(),!0,!0),t.isNullOrUndefined(this._afterDec)||this._afterDec==""||(n=this._beforeDec+this._decimalSep+this._afterDec));this._textBox.value=n;this._hiddenInput.val(n)}this._setSelectionRange(0,this._textBox.value.length)}this._trigger("focusIn",{value:this.model.value})}},_separateValue:function(n,t,i){var r=t?n.lastIndexOf(this._decimalSep):n.lastIndexOf(".");this._beforeDec=r>=0?n.substr(0,r):n;!t&&i&&(this._afterDec=r>=0?n.substr(r+1):"")},_focusOut:function(){var n;this._focused=!1;this.wrapper.removeClass("e-focus");this._separateValue(this._textBox.value,!1,!0);this._error||(this._textBox.value!=""?(n=t.parseFloat(this._textBox.value,this.model.locale),n<this.model.minValue?this.model.enableStrictMode?this.isValidState=!1:this._textBox.value=this._formatValue(this.model.minValue,"n",!1):n>this.model.maxValue&&(this.model.enableStrictMode?this.isValidState=!1:this._textBox.value=this._formatValue(this.model.maxValue,"n",!1)),this.model.value=this.model.decimalPlaces==-1&&!t.isNullOrUndefined(this._afterDec)&&this._textBox.value.lastIndexOf(this._decimalSep)==-1&&n.toString().indexOf("e")==-1?t.parseFloat(this._textBox.value+this._decimalSep+this._afterDec,this.model.locale):t.parseFloat(this._textBox.value,this.model.locale),isNaN(this.model.value)&&!this.model.value&&(this.model.value=null,this.isValidState=!1),this._toggleTextbox(!0),this._textBox=this._hiddenInput[0],this._localizedFormat(),this._checkErrorClass()):(n=this._textBox.value==""?null:this._textBox.value,this.model.value=n,this._hiddenInput.val(n),this._toggleTextbox(!0),this._textBox=this._hiddenInput[0]),this.model.value===null||this.model.value>=this.model.minValue&&this.model.value<=this.model.maxValue?this.isValidState=!0:this.model.enableStrictMode&&(this.isValidState=!1),this._raiseChangeEvent(),this._setWaterMark(),n=t.isNullOrUndefined(this.model.value)?this.model.value:this.model.value.toString().indexOf("e")==-1?this._removeSeparator(this.model.value):this._convertToExponetial(this.model.value).unformattedValue,this.element.val(n),this._updateSeparator(),this._trigger("focusOut",{value:this.model.value}));this._checkErrorClass();this._afterDec=""},_cancelEvent:function(n){return n.cancelBubble=!0,n.returnValue=!1,n.stopPropagation(),n.preventDefault(),!1},_updateInputField:function(r){var e,o,f,u;this.isValidState=!0;this._focused||n(this._hiddenInput[0]).focus();e=this.model.incrementStep;o=this.model.value;this._textBox.value===""?(this._textBox.value=this._formatValue(this._startValue,"n",!0),e=0):this._textBox.value.indexOf(" ")>=0&&(this._textBox.value=this._textBox.value.replace(" ",""));this.sfType==="ej.PercentageTextbox"||this.sfType==="ej.CurrencyTextbox"?(f=this._textBox.value,u=f,f.indexOf(t.preferredCulture(this.model.locale).numberFormat.percent.symbol)>-1&&(u=f.substring(0,f.length-1)),this.model.value=this._parseValue(u)):this.sfType=="ej.NumericTextbox"&&(this.model.value=t.parseFloat(this._textBox.value,this.model.locale));isNaN(this.model.value)&&!this.model.value&&(this.model.value=this._startValue);this.model.value>=this.model.minValue&&this.model.value>this.model.maxValue?(this.model.value=this.model.maxValue,this._setValue(this.model.value)):this.model.value<this.model.minValue&&this.model.value<=this.model.maxValue?(this.model.value=this.model.minValue,this._setValue(this.model.value)):this.model.value>=this.model.minValue&&this.model.value<=this.model.maxValue&&(u=r=="increment"?this.model.value+e:this.model.value-e,this.model.decimalPlaces==-1&&(this.value==i&&this._setValue(this.model.value),u=this.model.value.toString().indexOf("e")==-1?parseFloat(u.toFixed(this._afterDec.length)):parseFloat(u)),u>=this.model.minValue&&u<=this.model.maxValue&&this._setValue(u));this._checkErrorClass()},_validateDecimal:function(n){var i=String.fromCharCode(n.keyCode);return(i=n.keyCode==188?",":n.keyCode==190?".":n.keyCode==110?t.preferredCulture(this.model.locale).numberFormat["."]:i,t.preferredCulture(this.model.locale).numberFormat["."].charCodeAt(0)==i.charCodeAt(0))?!0:!1},_allowKeyCodes:function(n){for(var i=[38,40,35,36,109,189,46,8,127,37,39,190,9,13,16,17,18,20,110,173,86,88,67],t=0;t<i.length;t++)if(n.keyCode==i[t]||this._validateDecimal(n)&&this.model.decimalPlaces!=0)return!0;return!1},_raiseChangeEvent:function(n){var r=this.model.value,i;this._checkNumValue(this._preVal)!==this._checkNumValue(r)&&(this._preVal=r,this.model.value=this.model.decimalPlaces==-1&&!t.isNullOrUndefined(this.model.value)?parseFloat(this.model.value):this._checkNumValue(this._formatValue(this._preVal,"n",!1)),this._updateHiddenField(),t.isNullOrUndefined(this.model.value)?(i=this.model.value,this.wrapper.removeClass("e-valid")):(i=this.model.value.toString().indexOf("e")==-1?this._removeSeparator(this.model.value):this._convertToExponetial(this.model.value).unformattedValue,this.model.decimalPlaces==-1&&(this._separateValue(this.model.value.toString(),!1,!0),t.isNullOrUndefined(this._afterDec)||this._afterDec==""||(i=this._beforeDec+this._decimalSep+this._afterDec)),this.wrapper.addClass("e-valid")),this.element.val(i),this.wrapper.attr("aria-valuenow",i),this._updateSeparator(),this.element.trigger("change"),this._trigger("_change",{value:this.model.value,isInteraction:!n}),this._trigger("change",{value:this.model.value,isInteraction:!n}))},_updateHiddenField:function(){var n=this._textBox;this._textBox=this._hiddenInput[0];this._localizedFormat();this._textBox=n},_removeSeparator:function(n){if(!t.isNullOrUndefined(n)){var i,r;return this.model.decimalPlaces==-1&&this._separateValue(n.toString(),!1,!0),n.toString().indexOf("e")==-1&&(n=this._checkNumValue(this._formatValue(n,"n",!1))),i=n.toString(),r=t.preferredCulture(this.model.locale).numberFormat,i.replace(".",r["."])}},_updateSeparator:function(){var n,r,u,f,i;this._changeSeparator&&this.model.value&&(this.sfType==="ej.NumericTextbox"?n=this._formatValue(this.model.value,"n",!0):this.sfType==="ej.PercentageTextbox"?n=this._formatValue(this.model.value/100,"p",!0):this.sfType==="ej.CurrencyTextbox"&&(n=this._formatValue(this.model.value,"c",!0)),this.model.decimalPlaces==-1&&(r=n.lastIndexOf(this._decimalSep),u=n.substr(r+1),this._separateValue(n,!0,!1),f=this.sfType==="ej.CurrencyTextbox"?n.indexOf(this._currencySymbol):this.sfType==="ej.PercentageTextbox"?this._textBox.value.indexOf(this._percentSymbol):-1,i=this._afterDec,f>1&&(this.sfType==="ej.CurrencyTextbox"&&(i=i+" "+this._currencySymbol),this.sfType==="ej.PercentageTextbox"&&(i=i+" "+this._percentSymbol)),t.isNullOrUndefined(this._afterDec)||this._afterDec==""||(n=this._beforeDec+this._decimalSep+i),t.isNullOrUndefined(this._afterDec)||this._afterDec!=""||(n=this._beforeDec+this._decimalSep+u)),this._hiddenInput.val(this._replaceSeparator(n,t.preferredCulture(this.model.locale).numberFormat[","],this.model.groupSeparator)))},_replaceSeparator:function(n,i,r){var u,f,o,e;return(this._decimalSep=t.preferredCulture(this.model.locale).numberFormat["."],u=i===""?new RegExp("\\s","g"):new RegExp("\\"+i,"g"),this.model.groupSeparator==t.preferredCulture(this.model.locale).numberFormat["."])?(f=this.model.decimalPlaces,this.model.decimalPlaces==-1&&(o=n.lastIndexOf(this._decimalSep),f=n.substr(o+1).length),e=n.length-f-1,n.substring(0,e).replace(u,r)+n.substring(e,n.length)):n.replace(u,r)},_checkSeparator:function(n){this.model.groupSeparator=n!=null?this._validateSeparator(n):t.preferredCulture(this.model.locale).numberFormat[","];this._changeSeparator=t.preferredCulture(this.model.locale).numberFormat[","]!=this.model.groupSeparator?!0:!1;this._prevSeparator=this.model.groupSeparator},_validateSeparator:function(n){var i=n.toString(),r=new RegExp("[a-zA-Z0-9]");return i=i.length>1?i[0]:i,r.test(i)?this._prevSeparator!=null?this._prevSeparator:t.preferredCulture(this.model.locale).numberFormat[","]:i},_keyPress:function(n){var c,i;if(n.which!==0&&!n.metaKey&&!n.ctrlKey&&n.keyCode!==8&&n.keyCode!==13){var l=this,u=null,f=".",r,e,o,s,h;return r=this._caretPosition(),e=this._textBox.value.toString().substring(0,r),o=this._textBox.value.toString().substring(r),s=t.preferredCulture(this.model.locale).numberFormat,c=String.fromCharCode(n.which),h=e+c+o,i=s[f],i=i===f?"\\"+i:i,u=l.model.decimalPlaces===0?new RegExp("^((-)?(\\d*)(-)?)?$"):new RegExp("^(-)?(((\\d+("+i+"\\d*)?)|("+i+"\\d*)))?((-)?)$"),u.test(h)?void 0:!1}},_validateDecimalOnType:function(n){var r,e,s,h,o,u,i,f;return r=this._caretPosition(),s=this._textBox.value.toString().substring(0,r),h=this._textBox.value.toString().substring(r),o=this._getSelection(this._textBox.value),i=t.preferredCulture(this.model.locale).numberFormat["."],u=t.isNullOrUndefined(this.model.value)?"":this.model.value.toString(),this.model.decimalPlaces!=0?(f=this._textBox.value.split(i)[1],e=u.indexOf(i)>0?u.substring(u.indexOf(i)+1,u.length).length>this.model.decimalPlaces?!0:o.length==0&&r>this._textBox.value.indexOf(i)&&f&&f.length>=this.model.decimalPlaces?!0:!1:o.length==0&&r>this._textBox.value.indexOf(i)&&f&&f.length>=this.model.decimalPlaces?!0:!1):e=!1,e?(this._keypressFlag=!1,this._cancelEvent(n),!1):void 0},_keyDown:function(r){var s,v,k,d,y,p,tt,b;if(!this.model.readOnly)if(this._CurrentCultureInfo=JSON.parse(JSON.stringify(t.preferredCulture())),r.keyCode>=48&&r.keyCode<=57||r.keyCode>=96&&r.keyCode<=105||this._allowKeyCodes(r)){if(r.shiftKey&&(r.keyCode==35||r.keyCode==36||r.keyCode==37||r.keyCode==39||r.keyCode==46||r.keyCode==127)||r.ctrlKey&&(r.keyCode==86||r.keyCode==118||r.keyCode==67||r.keyCode==88))return!0;if(r.ctrlKey==!0&&r.keyCode!=9&&r.keyCode!=17&&r.keyCode!=86&&r.keyCode!=67||r.keyCode==67||r.keyCode==86||r.keyCode==88)return this._keypressFlag=!1,this._cancelEvent(r),!1;if((r.keyCode>=48&&r.keyCode<=57||r.keyCode>=96&&r.keyCode<=105||r.keyCode==110)&&(s=this._caretPosition(),k=this._textBox.value.toString().substring(0,s),d=this._textBox.value.toString().substring(s),y=this._getSelection(this._textBox.value),r.keyCode>=96&&r.keyCode<=105&&(r.keyCode-=48),this.model.validateOnType&&this.model.decimalPlaces!=-1&&this._validateDecimalOnType(r),this._validateOnType)){var u=t.preferredCulture(this.model.locale).numberFormat["."],f=this.model.value.toString(),it=f.indexOf(u),g=this.model.value,e=this.model.decimalPlaces==-1?this.model.minValue:this.model.minValue.toFixed(this.model.decimalPlaces),o=this.model.decimalPlaces==-1?this.model.maxValue:this.model.maxValue.toFixed(this.model.decimalPlaces),w=!1;if((e.toString().indexOf("e")>0||o.toString().indexOf("e")>0)&&(w=!0),w)this.model.decimalPlaces!=0?(p=this._textBox.value.split(".")[1],v=f.indexOf(u)>0||Number(f)<Number(e)||Number(f)>Number(o)?f.substring(f.indexOf(u)+1,f.length).length>this.model.decimalPlaces?!0:y.length==0&&s>this._textBox.value.indexOf(u)&&p&&p.length>=this.model.decimalPlaces?!0:!1:y.length==0&&s>this._textBox.value.indexOf(u)&&p&&p.length>=this.model.decimalPlaces?!0:!1):v=!1;else if(u!="."&&(f=this._textBox.value.toString(),this.model.minValue.toString().match(new RegExp(".","g"))&&(e=this.model.minValue.toString().replace(/["."]/g,u)),this.model.maxValue.toString().match(new RegExp(".","g"))&&(o=this.model.maxValue.toString().replace(/["."]/g,u))),h=e.toString().indexOf(u)>0?Number(e.toString().substring(0,e.toString().indexOf(u))):this.model.minValue,c=o.toString().indexOf(u)>0?Number(o.toString().toString().substring(0,o.toString().indexOf(u))):this.model.maxValue,it>0){g=Number(f.substring(f.indexOf(u)+1,f.toString().length));h=e.toString().indexOf(u)>0?Number(e.toString().substring(e.toString().indexOf(u)+1,e.toString().length)):0;c=o.toString().indexOf(u)>0?Number(o.toString().substring(o.toString().indexOf(u)+1,o.toString().length)):0;var rt=Number(f.substring(0,f.indexOf(u))),ut=Number(e.toString().substring(0,e.toString().indexOf(u))),ft=Number(o.toString().substring(0,o.toString().indexOf(u)));v=this._validateValue(g,h,c,!0,rt,ut,ft)?!1:!0}else v=this._validateValue(g,h,c,!1)?!1:!0;if(v)return this._keypressFlag=!1,this._cancelEvent(r),!1}if(r.keyCode==38&&this._allowkeyboard&&(this._updateInputField("increment"),this._cancelEvent(r)),r.keyCode==40&&this._allowkeyboard&&(this._updateInputField("decrement"),this._cancelEvent(r)),r.keyCode==8&&(s=this._caretPosition(),k=this._textBox.value.substring(0,s),d=this._textBox.value.substring(s),y=this._getSelection(this._textBox.value)),(r.keyCode==46||r.keyCode==127)&&(s=this._caretPosition(),k=this._textBox.value.substring(0,s),d=this._textBox.value.substring(s),y=this._getSelection(this._textBox.value)),this._validateDecimal(r)&&this.model.decimalPlaces!=0&&r.keyCode!=46){var l=t.preferredCulture(this.model.locale).numberFormat["."],h,c,nt=this._textBox.value.split(l),a=this._caretPosition();if(this._textBox.selectionEnd-this._textBox.selectionStart==this._textBox.value.length)return this._textBox.value=l,this._setSelectionRange(a+1,a+1),this._keypressFlag=!1,this._cancelEvent(r),!1;if(nt[1]==i){if(tt=nt[0].substring(0,a),b=nt[0].substring(a),(this.model.minValue.toString().indexOf("e")>0||this.model.maxValue.toString().indexOf("e")>0)&&(w=!0),this.model.decimalPlaces!=-1&&b.length>this.model.decimalPlaces&&this.model.validateOnType==!0)return this._keypressFlag=!1,this._cancelEvent(r),!1;if(this._validateOnType&&!w)if(this.model.minValue.toString().match(new RegExp(".","g"))&&(h=this.model.minValue.toString().replace(/["."]/g,l)),this.model.maxValue.toString().match(new RegExp(".","g"))&&(c=this.model.maxValue.toString().replace(/["."]/g,l)),h=h.indexOf(l)>0?Number(h.substring(0,h.indexOf(l))):Number(h),c=c.indexOf(l)>0?Number(c.substring(0,c.indexOf(l))):Number(c),this._validateValue(this.model.value,h,c,"DecimalKeyPressed"))this._textBox.value=tt+l+b;else return this._keypressFlag=!1,this._cancelEvent(r),!1;else this._textBox.value=tt+l+b;this._setSelectionRange(a+1,a+1)}this._cancelEvent(r)}else(r.keyCode==190||r.keyCode==110)&&this._cancelEvent(r);(r.keyCode==109||r.keyCode==189||r.keyCode==173)&&((this.model.value===this._preVal||this.model.value===null)&&(this.model.value=this._textBox.value),this._caretPosition()!=0&&this._getSelection(this._removeFormats(this._textBox.value))!=this.model.value||this.model.minValue>=0&&!this.model.enableStrictMode||this._textBox.value.toString().match(new RegExp("-","g"))&&this._getSelection(this._textBox.value)===""?(this._preVal=this.model.value,this.model.value=this._textBox.value,this._cancelEvent(r)):this._getSelection()==this.model.value&&(this._preVal=this.model.value,this.model.value=null));r.keyCode==13&&this._checkNumValue(this._preVal)!==this._checkNumValue(this._textBox.value)&&this._setValue(this._textBox.value)}else(r.keyCode!=27&&!r.ctrlKey||r.ctrlKey&&r.keyCode==90&&n.trim(this._textBox.value)==="")&&(this._keypressFlag=!1,this._cancelEvent(r))},_getLocalizedLabels:function(){return t.getLocalizedConstants(this.sfType,this.model.locale)}});t.NumericTextbox.Locale=t.NumericTextbox.Locale||{};t.NumericTextbox.Locale["default"]=t.NumericTextbox.Locale["en-US"]={watermarkText:"Enter value"};t.PercentageTextbox.Locale=t.PercentageTextbox.Locale||{};t.PercentageTextbox.Locale["default"]=t.PercentageTextbox.Locale["en-US"]={watermarkText:"Enter value"};t.CurrencyTextbox.Locale=t.CurrencyTextbox.Locale||{};t.CurrencyTextbox.Locale["default"]=t.CurrencyTextbox.Locale["en-US"]={watermarkText:"Enter value"}})(jQuery,Syncfusion),function(n,t){t.widget("ejButton","ej.Button",{element:null,model:null,validTags:["button","input"],_setFirst:!1,_rootCSS:"e-button",_requiresID:!0,defaults:{size:"normal",type:"submit",height:"",width:"",enabled:!0,htmlAttributes:{},text:null,contentType:"textonly",imagePosition:"imageleft",showRoundedCorner:!1,cssClass:"",prefixIcon:null,suffixIcon:null,enableRTL:!1,repeatButton:!1,timeInterval:"150",create:null,click:null,destroy:null},dataTypes:{size:"enum",enabled:"boolean",type:"enum",showRoundedCorner:"boolean",text:"string",contentType:"enum",imagePosition:"enum",prefixIcon:"string",suffixIcon:"string",cssClass:"string",repeatButton:"boolean",enableRTL:"boolean",timeInterval:"string",htmlAttributes:"data"},disable:function(){this.element.addClass("e-disable").attr("aria-disabled",!0);this.model.enabled=!1},enable:function(){this.element.removeClass("e-disable").attr("aria-disabled",!1);this.model.enabled=!0},_init:function(){this._cloneElement=this.element.clone();this._initialize();this._render();this._controlStatus(this.model.enabled);this._wireEvents(this.model.repeatButton);this._addAttr(this.model.htmlAttributes)},_addAttr:function(t){var i=this;n.map(t,function(n,t){t=="class"?i.element.addClass(n):i.element.attr(t,n);t=="disabled"&&n=="disabled"&&i.disable()})},_destroy:function(){this._off(this.element,"blur",this._btnBlur);this.element.removeClass(this.model.cssClass+"e-ntouch e-btn e-txt e-select e-disable e-corner e-widget").removeAttr("role aria-describedby aria-disabled");!this._cloneElement.attr("type")&&this.element.attr("type")&&this.element.removeAttr("type");this.element.removeClass("e-btn-"+this.model.size);this.model.contentType&&this.model.contentType!="textonly"?this.element.append(this._cloneElement.text())&&this.imgtxtwrap[0].remove():""},_setModel:function(n){for(var t in n)switch(t){case"size":this._setSize(n[t]);break;case"height":this._setHeight(n[t]);break;case"width":this._setWidth(n[t]);break;case"contentType":this._setContentType(n[t]);break;case"imagePosition":this._setImagePosition(n[t]);break;case"text":this._setText(n[t]);break;case"prefixIcon":this.element.is("input")||this._setMajorIcon(n[t]);break;case"suffixIcon":this.element.is("input")||this._setMinorIcon(n[t]);break;case"enabled":this._controlStatus(n[t]);break;case"showRoundedCorner":this._roundedCorner(n[t]);break;case"cssClass":this._setSkin(n[t]);break;case"enableRTL":this._setRTL(n[t]);break;case"timeInterval":this.model.timeInterval=n[t];break;case"htmlAttributes":this._addAttr(n[t])}},_setSize:function(n){this.element.removeClass("e-btn-mini e-btn-medium e-btn-small e-btn-large e-btn-normal");this.element.addClass("e-btn-"+n)},_setType:function(n){this.element.prop({type:n})},_setHeight:function(n){this.element.css("height",n)},_setWidth:function(n){this.element.css("width",n)},_setText:function(n){this.buttonType=="inputButton"?this.element.val(n):this.model.contentType==t.ContentType.TextOnly?this.element.html(n):this.textspan.html(n);this.model.text=n},_setMajorIcon:function(n){this.majorimgtag.removeClass(this.model.prefixIcon);this.majorimgtag.addClass(n);this.model.prefixIcon=n},_setMinorIcon:function(n){this.minorimgtag.removeClass(this.model.suffixIcon);this.minorimgtag.addClass(n);this.model.suffixIcon=n},_setContentType:function(n){n!=this.model.contentType&&(this.element.empty(),this.model.contentType=n,this.element.is("input")||this._renderButtonNormal())},_setImagePosition:function(n){this.model.contentType==t.ContentType.TextAndImage&&n!=this.model.imagePosition&&(this.element.empty(),this.model.imagePosition=n,this.element.is("input")||this._renderButtonNormal())},_setRTL:function(n){n?this.element.addClass("e-rtl"):this.element.removeClass("e-rtl")},_controlStatus:function(n){n?this.enable():this.disable()},_setSkin:function(n){this.model.cssClass!=n&&(this.element.removeClass(this.model.cssClass),this.element.addClass(n))},_initialize:function(){t.isTouchDevice()||this.element.addClass("e-ntouch");this.element.is("input")?this.buttonType="inputButton":this.element.is("a")||this.element.is("button")?this.buttonType="tagButton":this.element.removeClass("e-button");this.element.attr("type")?this.model.type=this.element.attr("type"):this._setType(this.model.type);this._timeout=null},_render:function(){this._setSize(this.model.size);this._setHeight(this.model.height);this._setWidth(this.model.width);this._setRTL(this.model.enableRTL);this.element.addClass(this.model.cssClass+" e-btn e-select e-widget").attr("role","button");this.buttonType=="inputButton"?(this.element.addClass("e-txt"),this.model.text!=null&&this.model.text!=""?this.element.val(this.model.text):this.model.text=this.element.val()):this._renderButtonNormal();this._roundedCorner(this.model.showRoundedCorner);this.element[0].id&&this.element.attr("aria-describedby",this.element[0].id)},_renderButtonNormal:function(){if((this.model.text==null||this.model.text=="")&&(this.model.text=this.element.html()),this.element.empty(),this.textspan=t.buildTag("span.e-btntxt",this.model.text),this.model.contentType.indexOf("image")>-1&&(this.majorimgtag=t.buildTag("span").addClass(this.model.prefixIcon),this.minorimgtag=t.buildTag("span").addClass(this.model.suffixIcon),this.imgtxtwrap=t.buildTag("span").addClass("e-btn-span")),this.model.contentType==t.ContentType.TextAndImage){switch(this.model.imagePosition){case t.ImagePosition.ImageRight:this.imgtxtwrap.append(this.textspan,this.majorimgtag);break;case t.ImagePosition.ImageLeft:this.imgtxtwrap.append(this.majorimgtag,this.textspan);break;case t.ImagePosition.ImageBottom:this.majorimgtag.attr("style","display:inherit");this.imgtxtwrap.append(this.textspan,this.majorimgtag);break;case t.ImagePosition.ImageTop:this.majorimgtag.attr("style","display:inherit");this.imgtxtwrap.append(this.majorimgtag,this.textspan)}this.element.append(this.imgtxtwrap)}else this.model.contentType==t.ContentType.ImageTextImage?(this.imgtxtwrap.append(this.majorimgtag,this.textspan,this.minorimgtag),this.element.append(this.imgtxtwrap)):this.model.contentType==t.ContentType.ImageBoth?(this.imgtxtwrap.append(this.majorimgtag,this.minorimgtag),this.element.append(this.imgtxtwrap)):this.model.contentType==t.ContentType.ImageOnly?(this.imgtxtwrap.append(this.majorimgtag),this.element.append(this.imgtxtwrap)):(this.element.addClass("e-txt"),this.element.html(this.model.text))},_roundedCorner:function(n){n==!0?this.element.addClass("e-corner"):this.element.removeClass("e-corner")},_wireEvents:function(t){t&&(this._on(this.element,"mousedown",this._btnRepatMouseClickEvent),this._on(n(document),"mouseup",this._mouseUpClick),this._on(this.element,"keyup",this._btnRepatKeyUpEvent),this._on(n(document),"keypress",this._btnRepatKeyDownEvent));this._on(this.element,"click",this._btnMouseClickEvent);this._on(this.element,"blur",this._btnBlur)},_btnBlur:function(){this.element.removeClass("e-animate")},_btnMouseClickEvent:function(n){var t=this,i;if(this.element.addClass("e-animate"),!t.model.enabled)return!1;t.element.hasClass("e-disable")||(i={target:n.currentTarget,e:n,status:t.model.enabled},t._trigger("_click",i),t._trigger("click",i))},_btnRepatMouseClickEvent:function(n){var t=this,i;if(!t.model.enabled)return!1;t.element.hasClass("e-disable")||(i={status:t.model.enabled},(n.button==0||n.which==1)&&(t._timeout=setInterval(function(){t._trigger("click",{target:n.currentTarget,status:t.model.enabled})},this.model.timeInterval)))},_mouseUpClick:function(){clearTimeout(this._timeout)},_btnRepatKeyDownEvent:function(n){var t=this,i;t.element.hasClass("e-disable")||(i={status:t.model.enabled},(n.keyCode==32||n.keyCode==13)&&t._trigger("click",i))},_btnRepatKeyUpEvent:function(n){(n.keyCode==32||n.keyCode==13)&&clearTimeout(this._timeout)}});t.ContentType={TextOnly:"textonly",ImageOnly:"imageonly",ImageBoth:"imageboth",TextAndImage:"textandimage",ImageTextImage:"imagetextimage"};t.ImagePosition={ImageRight:"imageright",ImageLeft:"imageleft",ImageTop:"imagetop",ImageBottom:"imagebottom"};t.ButtonSize={Normal:"normal",Mini:"mini",Small:"small",Medium:"medium",Large:"large"};t.ButtonType={Button:"button",Reset:"reset",Submit:"submit"}}(jQuery,Syncfusion),function(n,t,i){t.widget("ejCheckBox","ej.CheckBox",{_rootCSS:"e-checkbox",element:null,model:null,validTags:["input"],_addToPersist:["checked","checkState"],_setFirst:!1,angular:{require:["?ngModel","^?form","^?ngModelOptions"]},defaults:{id:null,name:null,value:null,htmlAttributes:{},checked:!1,enabled:!0,enableTriState:!1,showRoundedCorner:!1,enablePersistence:!1,cssClass:"",text:"",enableRTL:!1,idPrefix:"ej",size:"small",checkState:"uncheck",validationRules:null,validationMessage:null,validationMessages:null,beforeChange:null,change:null,create:null,destroy:null},dataTypes:{id:"string",name:"string",enablePersistence:"boolean",enableTriState:"boolean",size:"enum",enabled:"boolean",idPrefix:"string",validationRules:"data",validationMessage:"data",validationMessages:"data",htmlAttributes:"data"},observables:["checked","checkState"],checked:t.util.valueFunction("checked"),checkState:t.util.valueFunction("checkState"),_init:function(n){this._cloneElement=this.element.clone();var i=t.browserInfo();this._isIE8=i.name=="msie"&&i.version=="8.0"?!0:!1;this._isIE9=i.name=="msie"&&i.version=="9.0"?!0:!1;this._isDevice=this._checkDevice();this._setValue();this._renderControl();this.model.enableRTL&&this._setRTL();this.model.enabled&&this._wireEvents();this._setEnabled(this.model.enabled);t.isNullOrUndefined(n)||t.isNullOrUndefined(n.validationMessage)||(this.model.validationMessages=this.model.validationMessage);this.model.validationRules!=null&&(this._initValidator(),this._setValidation());this._addAttr(this.model.htmlAttributes);(this._isIE9||this._isIE8)&&this.wrapper.addClass("e-tb-cell")},_checkDevice:function(){return t.isDevice()&&t.isTouchDevice()},_setRTL:function(){n(this.maindiv).addClass("e-rtl")},_initValidator:function(){this.wrapper.closest("form").data("validator")||this.wrapper.closest("form").validate()},_setValidation:function(){var r,f,i,u,e;this.wrapper.find("input").rules("add",this.model.validationRules);r=this.wrapper.closest("form").data("validator");r=r?r:this.wrapper.closest("form").validate();f=this.wrapper.find("input").attr("name");r.settings.messages[f]={};for(i in this.model.validationRules)if(u=null,!t.isNullOrUndefined(this.model.validationRules[i])){if(t.isNullOrUndefined(this.model.validationRules.messages&&this.model.validationRules.messages[i])){r.settings.messages[f][i]=n.validator.messages[i];for(e in this.model.validationMessages)i==e?u=this.model.validationMessages[i]:""}else u=this.model.validationRules.messages[i];r.settings.messages[f][i]=u!=null?u:n.validator.messages[i]}},_addAttr:function(t){var i=this;n.map(t,function(n,t){t=="class"?i.wrapper.addClass(n):t=="name"?i.element.attr(t,n):t=="required"?i.element.attr(t,n):t=="disabled"&&n=="disabled"?i._setEnabled(!1):t=="checked"&&n=="checked"?i.checked()instanceof Array?i._updateCheckedItem():i._checked(!0):i.wrapper.attr(t,n)})},_triggerBeforeChange:function(){var n={isChecked:this._isChecked,isInteraction:!1};if(!0==this._trigger("beforeChange",n))return!1},_triggerChange:function(){var n={isChecked:this._isChecked,checkState:this.checkState(),isInteraction:!1};this._trigger("change",n)},_setModel:function(i){var r,u,f;for(r in i)switch(r){case"checked":n(this.maindiv).removeClass("e-material-animate");this.model.beforeChange&&this._triggerBeforeChange();this.checked()instanceof Array?(u=t.util.getVal(i[r]),f=u[u.length-1],this.model.value==f&&(this._isChecked=!0)):(this._isChecked=t.util.getVal(i[r]),this.checked(this._isChecked));this._isChecked?this._checked():this._unChecked();this.model.change&&this._triggerChange();break;case"enableTriState":i[r]&&(this.model.enableTriState=i[r],this._indeterminateState=i[r]);break;case"checkState":this.model.enableTriState&&(this.model.beforeChange&&this._triggerBeforeChange(),this._isChecked=t.util.getVal(i[r]),this.checkState(this._isChecked),this._changeState(this._isChecked),this._setCheckBoxState(),this.checked(this._isChecked),this.model.checkState=="indeterminate"&&this._setIndeterminate(this._indeterminateState),this.checked()instanceof Array?this._updateCheckedItem():i[r]=="check"?this._hiddenInput.removeAttribute("name"):this._hiddenInput.setAttribute("name",this.model.name),this.model.change&&(this.checked()instanceof Array||(this._isChecked=this.checkState()=="uncheck"?!1:!0),this._triggerChange()));break;case"cssClass":this._changeSkin(i[r]);break;case"enableRTL":i[r]?this._setRTL():n(this.maindiv).removeClass("e-rtl");break;case"text":this._setText(i[r]);break;case"validationRules":this.model.validationRules!=null&&(this.wrapper.find("input").rules("remove"),this.model.validationMessages=null);this.model.validationRules=i[r];this.model.validationRules!=null&&(this._initValidator(),this._setValidation());break;case"validationMessage":this.model.validationMessages=i[r];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"validationMessages":this.model.validationMessages=i[r];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"id":this._setIdAttr(i[r]);break;case"name":this.element.attr("name",i[r]);(!this._isChecked||this.spanImg.hasClass("e-chk-indeter"))&&this._hiddenInput.setAttribute("name",i[r]);this.model.name=i[r];break;case"value":this.element.attr("value",i[r]);break;case"size":this._setSize(i[r]);break;case"showRoundedCorner":this._setRoundedCorner(i[r]);break;case"enabled":this._setEnabled(i[r]);break;case"htmlAttributes":this._addAttr(i[r])}},_destroy:function(){this.element.removeClass("e-checkbox e-input");!this._cloneElement.attr("name")&&this.element.attr("name")&&this.element.removeAttr("name");!this._cloneElement.attr("value")&&this.element.attr("value")&&this.element.removeAttr("value");this.element.insertBefore(this.wrapper);this.wrapper.remove()},_changeSkin:function(t){this.model.cssClass!=t&&(this.wrapper.removeClass(this.model.cssClass).addClass(t),n("#"+this.model.idPrefix+this.model.id+"_wrapper").removeClass(this.model.cssClass).addClass(t))},_setValue:function(){this._indeterminateState=!1;this._isChecked=!1;var i=this.element[0].getAttribute("id"),r=this.element[0].getAttribute("name"),n=this.element[0].getAttribute("value");t.isNullOrUndefined(i)||(this.model.id=i);t.isNullOrUndefined(r)||(this.model.name=r);t.isNullOrUndefined(n)||n==""||(this.model.value=n);this.checked()||t.isNullOrUndefined(this.element.attr("checked"))||(this._isChecked=!0);t.isNullOrUndefined(this.model.name)&&(this.model.name=this.model.id);this.model.enabled=this.model.enabled&&!this.element.attr("disabled")},_setSize:function(i){i==t.CheckboxSize.Medium?(n(this.innerdiv).removeClass("e-chkbox-small").addClass("e-chkbox-medium"),n(this.maindiv).removeClass("e-check-small").addClass("e-check-medium")):(n(this.innerdiv).removeClass("e-chkbox-medium").addClass("e-chkbox-small"),n(this.maindiv).removeClass("e-check-medium").addClass("e-check-small"))},_setRoundedCorner:function(n){n?this.span.addClass("e-corner"):this.span.removeClass("e-corner")},_setEnabled:function(n){n?this.enable():this.disable()},_setCheckBoxState:function(){this.model.enableTriState?this.checkState()=="indeterminate"?this._indeterminateState=!0:this.checkState()=="check"?this._isChecked=!0:this.checkState()=="uncheck"&&(this._isChecked=!1):this.checkState()=="indeterminate"&&this.checkState("uncheck")},_createElement:function(n,t){var i=document.createElement(n);return this._setAttributes(i,t),i},_setAttributes:function(n,t){for(var i in t)n.setAttribute(i,t[i])},_renderControl:function(){this._setCheckBoxState();this.maindiv=this._createElement("span",{"class":"e-chkbox-wrap e-widget "+this.model.cssClass,role:"checkbox",tabindex:0});this._isValid(this.model.id)&&(this.maindiv.setAttribute("id",this.model.idPrefix+this.model.id),this.element[0].setAttribute("id",this.model.id));this.innerdiv=document.createElement("div");this._setSize(this.model.size);this.span=document.createElement("span");this.span=n(this.span);this.spanImg=this._createElement("span",{"class":"e-chk-image e-icon",role:"presentation"});this.spanImg=n(this.spanImg);this.element.addClass("e-input");this.model.name=t.isNullOrUndefined(this.model.name)?this.model.id:this.model.name;this.model.value=t.isNullOrUndefined(this.model.value)?!0:this.model.value;this._setAttributes(this.element[0],{name:this.model.name,value:this.model.value});var i=n("#"+this._id+"_hidden");this._hiddenInput=i.length?i[0]:this._createElement("input",{type:"checkbox",value:!1,style:"display:none"});this.element.attr("data-type")=="hidden"&&this._hiddenInput.setAttribute("type","hidden");this._isValid(this.model.name)&&this._hiddenInput.setAttribute("id",this.model.name+"_hidden");this._setRoundedCorner(this.model.showRoundedCorner);this.checked()&&this._setCheckedItem(this.checked());this._isChecked?(this.spanImg.addClass("e-checkmark"),this.span.addClass("e-chk-act"),this.maindiv.setAttribute("aria-checked",!0),this.element.attr("checked","checked")):(this.span.addClass("e-chk-inact"),this.maindiv.setAttribute("aria-checked",!1),this._hiddenInput.setAttribute("name",this.model.name));this.checked()instanceof Array||this.checked(this._isChecked);this.span[0].appendChild(this.spanImg[0]);this.innerdiv.appendChild(this.span[0]);this.element[0].parentNode&&this.element[0].parentNode.insertBefore(this.maindiv,this.element[0]);this.maindiv.appendChild(this.element[0]);this.maindiv.appendChild(this._hiddenInput);this.maindiv.appendChild(this.innerdiv);this.wrapper=n(this.maindiv);this._setTextWrapper(this.model.text);this.chkbx=this.element;this.model.enableTriState==!0&&this._indeterminateState==!0&&this._setIndeterminate(this._indeterminateState);this.checked()instanceof Array&&this._updateCheckedItem()},_changeState:function(n){n=="indeterminate"?(this.spanImg.removeClass("e-checkmark").addClass("e-stop"),this.span.removeClass("e-chk-act e-chk-inact").addClass("e-chk-indeter"),this.wrapper[0].setAttribute("aria-checked","mixed"),this.wrapper.find("input").prop("enableTriState",!0),this.checked()instanceof Array||this.checked(null)):n=="check"?(this.spanImg.removeClass("e-stop").addClass("e-checkmark"),this.span.removeClass("e-chk-act e-chk-inact e-chk-indeter").addClass("e-chk-act"),this.wrapper[0].setAttribute("aria-checked",!0)):n=="uncheck"&&(this.spanImg.removeClass("e-checkmark e-stop"),this.span.removeClass("e-chk-act e-chk-indeter").addClass("e-chk-inact"),this.wrapper[0].setAttribute("aria-checked",!1))},_setIndeterminate:function(n){n?(this.spanImg.removeClass("e-checkmark").addClass("e-stop"),this.span.removeClass("e-chk-act e-chk-inact").addClass("e-chk-indeter"),this.wrapper[0].setAttribute("aria-checked","mixed"),this.wrapper.find("input").prop("enableTriState",!0),this.checkState("indeterminate"),this.checked()instanceof Array||this.checked(null),this._hiddenInput.setAttribute("name",this.model.name)):(this.span.removeClass("e-chk-indeter"),this.spanImg.removeClass("e-stop"),this.wrapper.find("input").removeAttr("enableTriState"),this.wrapper.find("input").prop("enableTriState",!1),this.checked()?this._checked():this._unChecked())},_setTextWrapper:function(n){n!=""&&(this.txtSpan=t.buildTag("div.e-text",n),this.wrapper.append(this.txtSpan),this.model.enableRTL&&this._setRTL())},_setText:function(n){this.model.text==""&&n!=""?this._setTextWrapper(n):this.txtSpan.html(n)},_setIdAttr:function(t){n("#"+this.model.idPrefix+this.model.id+"_wrapper").attr("id",this.model.idPrefix+t+"_wrapper");this.element[0].setAttribute("id",t)},_isValid:function(n){return!t.isNullOrUndefined(n)&&n!=""?!0:!1},_wireEvents:function(){this._on(this.wrapper,"click",this._checkedHandler);this._isIE8&&this._isValid(this.model.id)&&this._on(n("label[for="+this.model.id+"]"),"click",function(){this.wrapper.click()});this._on(this.wrapper,"focus",this._focusIn);this._on(this.wrapper,"focusout",this._focusOut)},_unWireEvents:function(){this._off(this.wrapper,this._isDevice&&n.isFunction(n.fn.tap)?"tap":"click");this._isIE8&&this._isValid(this.model.id)&&this._off(n("label[for="+this.model.id+"]"),"click");this._off(this.wrapper,"focus");this._off(this.wrapper,"focusout")},_focusIn:function(){n(this.wrapper).addClass("e-focus");n(this.wrapper).on("keydown",n.proxy(this._checkUnCheck,this))},_focusOut:function(){n(this.wrapper).removeClass("e-focus");n(this.wrapper).off("keydown",n.proxy(this._checkUnCheck,this))},_checkUnCheck:function(n){n.keyCode==32&&(n.preventDefault(),this._checkedHandler())},_checkedHandler:function(t){var i={isChecked:this._isChecked,isInteraction:!0,event:t};return!0==this._trigger("beforeChange",i)?!1:(this.span.hasClass("e-chk-inact")?(this._checked(),this.checked()instanceof Array||this.checked(!0),this.model.enableTriState&&(this._indeterminateState=!0,this.checkState("check"))):this.span.hasClass("e-chk-act")?this.model.enableTriState==!0&&this.model.checkState=="check"&&this.model.checked==!0?(this._setIndeterminate(!0),this.checked()instanceof Array||(this.checked(!0),this.checkState("indeterminate"))):(this._unChecked(),this.checked()instanceof Array||(this.checked(!1),this.checkState("uncheck"))):this.span.hasClass("e-chk-indeter")&&(this.checked()instanceof Array?this._isChecked=!1:this.checked(!1),this._setIndeterminate(!1),this._indeterminateState=!1),this.checked()instanceof Array?this._updateCheckedItem():this._isChecked=this.checked(),n(this.maindiv).addClass("e-material-animate"),i={isChecked:this._isChecked,checkState:this.checkState(),isInteraction:!0,event:t},this._trigger("change",i),!0)},_checked:function(){this.span.removeClass("e-chk-inact").addClass("e-chk-act");this.spanImg.removeClass("e-stop").addClass("e-checkmark");this.wrapper[0].setAttribute("aria-checked",!0);this.wrapper.find("input[type=checkbox]").prop("checked",!0);this.checkState("check");this._hiddenInput.removeAttribute("name")},_unChecked:function(){this.span.removeClass("e-chk-act e-chk-indeter").addClass("e-chk-inact");this.wrapper[0].setAttribute("aria-checked",!1);this.spanImg.removeClass("e-checkmark e-stop");this.wrapper.find("input[type=checkbox]").prop("checked",!1);this.checkState("uncheck");this._hiddenInput.setAttribute("name",this.model.name)},_setCheckedItem:function(n){if(typeof n!="boolean"||n instanceof Array){if(n instanceof Array&&!t.isNullOrUndefined(this.model.value)&&this.model.value!="")for(var i=0;i<n.length;i++)n[i]==this.model.value&&(this._isChecked=!0)}else this._isChecked=!0},_updateCheckedItem:function(){var r=this.model.checked.splice===i?this.model.checked():this.model.checked;t.isNullOrUndefined(this.model.value)||this.model.value==""||this.wrapper.find("span:first").hasClass("e-chk-indeter")||(n.inArray(this.model.value,this.checked())<0&&this.wrapper.find("span:first").hasClass("e-chk-act")?(r.push(this.model.value),this._isChecked=!0,this._hiddenInput.removeAttribute("name")):n.inArray(this.model.value,this.checked())>-1&&this.wrapper.find("span:first").hasClass("e-chk-inact")&&(this._isChecked=!1,r.splice(n.inArray(this.model.value,this.model.checked()),1),this._hiddenInput.setAttribute("name",this.model.name)))},disable:function(){this.wrapper.hasClass("e-disable")||(this.wrapper.addClass("e-disable"),this.wrapper[0].setAttribute("aria-disabled",!0),this.element[0].setAttribute("disabled","disabled"),this._isIE8&&this.span.addClass("e-disable"),this._unWireEvents(),this.model.enabled=!1)},enable:function(){this.wrapper.hasClass("e-disable")&&(this.wrapper.removeClass("e-disable"),this.wrapper[0].setAttribute("aria-disabled",!1),this.element.prop("disabled",!1),this._isIE8&&this.span.removeClass("e-disable"),this._wireEvents(),this.model.enabled=!0)},isChecked:function(){if(this._isChecked!=null&&this._isChecked!=i)return this._isChecked}});t.CheckboxSize={Small:"small",Medium:"medium"};t.CheckState={Check:"check",Uncheck:"uncheck",Indeterminate:"indeterminate"}}(jQuery,Syncfusion),function(n,t){t.widget("ejToolbar","ej.Toolbar",{element:null,model:null,validTags:["div","span"],_setFirst:!1,_rootCSS:"e-toolbar",angular:{terminal:!1},defaults:{height:"",width:"",enabled:!0,hide:!1,disabledItemIndices:[],enabledItemIndices:[],enableSeparator:!1,orientation:"horizontal",enableRTL:!1,isResponsive:!1,showRoundedCorner:!1,htmlAttributes:{},dataSource:null,Items:{id:"id",tooltipText:"tooltipText",imageUrl:"imageUrl",text:"text",imageAttributes:"imageAttributes",spriteCssClass:"spriteCssClass",htmlAttributes:"htmlAttributes",group:"group",template:"template",overflow:"overflow"},query:null,responsiveType:"popup",fields:{id:"id",tooltipText:"tooltipText",imageUrl:"imageUrl",text:"text",imageAttributes:"imageAttributes",spriteCssClass:"spriteCssClass",htmlAttributes:"htmlAttributes",group:"group",template:"template",overflow:"overflow"},tooltipSettings:{associate:"mouseenter",showShadow:!0,position:{stem:{horizontal:"left",vertical:"top"}},tip:{size:{width:5,height:5},adjust:{xValue:17,yValue:17}},isBalloon:!1},cssClass:"",targetID:null,create:null,click:null,itemHover:null,itemLeave:null,overflowOpen:null,overflowClose:null,destroy:null},dataTypes:{enabled:"boolean",hide:"boolean",enableSeparator:"boolean",disabledItemIndices:"data",enabledItemIndices:"data",orientation:"enum",enableRTL:"boolean",showRoundedCorner:"boolean",isResponsive:"boolean",dataSource:"data",query:"data",fields:"data",cssClass:"string",htmlAttributes:"data",targetID:"string",responsiveType:"enum"},hide:function(){if(!this.model.enabled&&this.element.css("display")=="none")return!1;this.element.css("display","none");this.model.hide=!0},show:function(){if(!this.model.enabled&&this.element.css("display")!="none")return!1;this.element.css("display","block");this.model.hide=!1},_init:function(){this.model.targetID!=null&&this.element.html(n("#"+this.model.targetID).find("ul,ol"));this._cloneElement=n(this.element).clone();this._localDataSource=null;this.model.dataSource!=null?this._generateTemplate():this.model.Items!=null&&this._generateTemplate();this.model.dataSource instanceof t.DataManager||this._initialize();this._renderTooltip(this.model.tooltipSettings)},_setModel:function(t){var i,r;for(i in t)switch(i){case"height":this._setHeight(t[i]);break;case"width":this.model.width=t[i];this._setWidth();this._bindUnbindWidth();break;case"enabled":this._controlStatus(t[i]);break;case"disabledItemIndices":this._disableItemByIndex(t[i]);t[i]=this.model.disabledItemIndices;break;case"enabledItemIndices":this._enableItemByIndex(t[i]);break;case"isResponsive":this.model.isResponsive=t[i];this.model.isResponsive?(this._responsiveLayout(),this._renderTooltip(this.model.tooltipSettings)):this._removeResponsive();break;case"hide":this._controlVisibleOptions(t[i]);break;case"orientation":this._setOrientation(t[i]);this.model.orientation=t[i];this._wireResizing();break;case"tooltipSettings":this.model.tooltipSettings=n.extend(!0,this.model.tooltipSettings,t[i]);this._renderTooltip(this.model.tooltipSettings);break;case"enableRTL":this._enableRTL(t[i]);break;case"showRoundedCorner":this._roundedCorner(t[i]);break;case"cssClass":this._setSkin(t[i]);break;case"htmlAttributes":this._addAttr(t[i]);break;case"enableSeparator":this.model.enableSeparator=t[i];this._renderToolbarSeparator();break;case"fields":n.extend(this.model.fields,t[i]);break;case"query":this.model.query=t[i];break;case"dataSource":for(r in t)r=="fields"&&n.extend(this.model.fields,t[r]),r=="query"&&(this.model.query=t[r]);this._refreshTagItems(i,t[i]);break;case"Items":n.extend(this.model.Items,t[i]);this._refreshTagItems(i,t[i]);break;case"targetID":this.model.targetID=t[i];this._setTargetID()}},_setTargetID:function(){this.element.removeAttr("role tabindex aria-disabled style");n(this._spantag).remove();n(this._liTemplte).remove();this._liTemplte=this._tipRes=null;this.element.removeClass("e-widget e-box e-toolbarspan e-rtl");this.element.find("ul,ol").removeClass("e-ul e-horizontal e-vertical e-separator e-comnrtl");this.element.find("li").removeClass("e-tooltxt e-comnrtl");this.element.find("li").removeAttr("aria-label");this._init()},_refreshTagItems:function(n,t){this.model[n]=t;this.element.empty();this._generateTemplate();this._initialize()},_setHeight:function(n){this.element.css("height",n)},_setWidth:function(){var t,u;if(this.model.width=="auto"){var r=parseFloat(this.element.css("border-left-width"))+parseFloat(this.element.css("border-right-width")),f=this.element.find("ul").children("li"),i=this.element.find("ul"),e;for(e=this.model.responsiveType=="inline"?this.element.find(".e-arrow-sans-down"):this.element.find(".e-toolbar-res-arrow"),t=0,u=i.length;t<u;t++)i[t]!=null&&n(i[t]).hasClass("e-separator")&&(r+=parseFloat(i.eq(t).css("border-right-width"))+parseFloat(i.eq(t).css("border-left-width")));for(e[0]!=null&&(r+=this.model.responsiveType=="inline"?Math.round(this.element.find(".e-arrow-sans-down").outerWidth())+8:Math.round(this.element.find(".e-toolbar-res-arrow").outerWidth())+8),t=0,u=f.length;t<u;t++)f[t]!=null&&(r+=Math.round(f.eq(t).outerWidth()));this.element.css("width",Math.ceil(r))}else this.element.css("width",this.model.width)},_bindUnbindWidth:function(){this.model.width!="auto"?this._off(n(window),"resize",this._widthHandler):this._on(n(window),"resize",this._widthHandler)},_widthHandler:function(){this._setWidth(this.model.width)},_setOrientation:function(n){n!=t.Orientation.Vertical?(this.element.removeClass(this.model.cssClass).addClass("e-toolbarspan "+this.model.cssClass),this.itemsContainer.removeClass("e-ul e-vertical").addClass("e-ul e-horizontal")):(this.element.removeClass("e-toolbarspan "+this.model.cssClass).addClass(this.model.cssClass),this.itemsContainer.removeClass("e-ul e-horizontal").addClass("e-ul e-vertical"));this.items.addClass("e-tooltxt")},_reSizeHandler:function(){var r,u,f,e,i,t;for(this._isResized&&this._liTemplte.children().length>0&&(r=this.element.children("ol.e-show, ul.e-show"),u=this._liTemplte.children("ol.e-show, ul.e-show"),r.length>0||u.length>0?n(this._liTemplte.children()).appendTo(this.element):n(this._liTemplte.children()).insertBefore(n(this.element).find("span.e-res-pos")),this._renderToolbarSeparator(),this.model.responsiveType!="inline"&&this._liTemplte.addClass("e-display-none"),this._contstatus=!1),this._elementWidth=typeof getComputedStyle=="function"?parseFloat(window.getComputedStyle(this.element[0]).width):this.element.width()-1,this._liWidth=this._spanWidth,f=this.element.children("ol.e-show:visible, ul.e-show:visible"),e=this.element.children("ol:visible:not(.e-show), ul:visible:not(.e-show)"),this._spantag.removeClass("e-display-block").addClass("e-display-none"),this._ensureOverflow(f),i=0,t=0;t<this.itemsContainer.length;t++)i+=n(this.itemsContainer[t]).outerWidth(!0);i>this.element.width()&&this._ensureOverflow(e);this.model.responsiveType=="inline"&&(this._liTemplte.removeClass("e-normal"),this._liTemplte.css("width",this.element.width()));this._isResized=!0},_ensureOverflow:function(t){for(var r,i=0;i<t.length;i++)this._liWidth+=n(t[i]).outerWidth(!0)+8,this._liWidth>=this.element.width()&&(this._spantag.hasClass("e-display-block")||this._spantag.removeClass("e-display-none").addClass("e-display-block"),this._spantag.addClass("e-res-pos"),this._liTemplte.addClass("e-normal"),this._spantag.outerWidth(!0)!=this._spanOuterWidth&&(r=this._spantag.outerWidth(!0)-this._spantag.outerWidth(),this._liWidth-(n(t[i]).outerWidth(!0)+8)+r>=this._elementWidth&&this._liTemplte.append(t[i-1])),this._liTemplte.append(t[i]))},_getZindexPartial:function(){return t.util.getZindexPartial(this.element,this.popup)},_getOffset:function(n){return t.util.getOffset(n)},_btnMouseClick:function(i){var u,f,r,h,o=1,a=this.element.outerWidth(),v=this.element.outerHeight(),s=n(this._liTemplte).outerWidth(),c=n(window).width(),e=n(window).scrollLeft(),l;n(i.currentTarget).hasClass("e-disable")||(l=this._getZindexPartial(),f=this._getOffset(this.element),r=this.model.enableRTL?f.left:f.left+a-s,h=f.top+v-o+2,r=r<e?e+o:r+s>c+e?c-s+e-o:r,this._contstatus?(this._liTemplte.addClass("e-display-none"),this.model.responsiveType=="inline"&&this._spantag.removeClass("e-active"),this._contstatus=!1,u={currentTarget:i.currentTarget,clientX:i.clientX,clientY:i.clientY,cancel:i.cancellable},this._trigger("overflowClose",u)):(this._liTemplte.removeClass("e-display-none"),this.model.responsiveType!="inline"&&this._liTemplte.css({top:h+"px",left:r+"px","z-index":l}),this.model.responsiveType=="inline"&&this._spantag.addClass("e-active"),this._contstatus=!0,u={currentTarget:i.currentTarget,clientX:i.clientX,clientY:i.clientY,cancel:i.cancellable},this._trigger("overflowOpen",u),this.model.responsiveType!="inline"&&this._on(t.getScrollableParents(this.element),"scroll",this._hidecontext),this.element.bind("click",n.proxy(this._hidecontext,this))),this._contstatus&&this.model.responsiveType!="inline"&&this._on(n(document),"mouseup",this._documentClick),this._contstatus||this._off(n(document),"mouseup",this._documentClick),this._removeListHover())},_hidecontext:function(i){n(i.target).is(n("#"+this.element[0].id+"_target"))||this.model.responsiveType=="inline"||(this._liTemplte.addClass("e-display-none"),this._contstatus=!1,this.element.unbind("click",n.proxy(this._hidecontext,this)),this._off(t.getScrollableParents(this.element),"scroll",this._hidecontext),this._off(n(document),"mouseup",this._documentClick))},_documentClick:function(t){if(!n(t.target).is(n("#"+this.element[0].id+"_target"))&&!(n(t.target).closest("div#"+this.element[0].id+"_hiddenlist").length!=0||n(t.target).parents().hasClass("e-ddl-popup"))){this._liTemplte.addClass("e-display-none");this._contstatus=!1;var i={currentTarget:t.currentTarget,clientX:t.clientX,clientY:t.clientY,cancel:t.cancellable};this._trigger("overflowClose",i);this._off(n(document),"mouseup",this._documentClick)}},_setSkin:function(n){this.element.removeClass(this.model.cssClass).addClass(n);var t="e-toolbarTooltip "+n;this._subControlsSetModel("cssClass",t)},_subControlsSetModel:function(i,r){t.isNullOrUndefined(this._tipToolbar)||n(this.target).ejTooltip("option",i,r);t.isNullOrUndefined(this._tipRes)||n(this._liTemplte).ejTooltip("option",i,r)},_destroy:function(){this.element.html("");t.isNullOrUndefined(this._tipToolbar)||n(this.target).ejTooltip("destroy");t.isNullOrUndefined(this._tipRes)||n(this._liTemplte).ejTooltip("destroy");this._cloneElement.removeClass("e-toolbar e-js");this.element.replaceWith(this._cloneElement);this._liTemplte&&this._liTemplte.remove();this._unWireResizing()},_initialize:function(){this.element.attr({role:"toolbar",tabindex:"0"});var n=this.element.children().find("li");this._focusEnable=!0;this._renderControl();this._responsiveLayout();this._wireEvents()},_responsiveLayout:function(){var r,i;if(this._roundedCorner(this.model.showRoundedCorner),this.model.isResponsive&&this.model.orientation=="horizontal"){for(t.isNullOrUndefined(this._liTemplte)||(t.isNullOrUndefined(this._tipRes)||this._tipRes.destroy(),n(this._liTemplte).remove()),this._spantag=n("<span id='"+this.element[0].id+"_target' class='e-icon e-toolbar-res-arrow e-rel-position e-display-block' unselectable='on'><\/span>"),this.model.responsiveType=="inline"&&this._spantag.removeClass("e-toolbar-res-arrow").addClass("e-inlinearrow e-arrow-sans-down"),r=this.element.children("ol.e-show, ul.e-show"),r.length>0?this.element[0].insertBefore(this._spantag[0],this.element[0].childNodes[0]):this._spantag.appendTo(this.element),this._liTemplte=n("<div id='"+this.element[0].id+"_hiddenlist' class='e-responsive-toolbar e-display-none e-abs-position "+n(this.element)[0].className+"'><\/div>"),this.model.responsiveType=="inline"&&this._liTemplte.removeClass("e-abs-position").addClass("e-inline"),this._spanWidth=this._spantag.outerWidth(!0)+8,this.model.enableRTL&&this._liTemplte.addClass("e-rtl"),this._isResized=!1,this._elementWidth=typeof getComputedStyle=="function"?parseFloat(window.getComputedStyle(this.element[0]).width):this.element.width()-1,this._liWidth=this._spanWidth,i=0;i<this.itemsContainer.length;i++)this._liWidth+=n(this.itemsContainer[i]).outerWidth(!0);this._liWidth>this._elementWidth?this._reSizeHandler():this._spantag.removeClass("e-display-block").addClass("e-display-none");this.model.responsiveType=="inline"?n(this.element[0]).append(this._liTemplte):n("body").append(this._liTemplte);this._renderTooltip(this.model.tooltipSettings)}this._on(n("#"+this.element[0].id+"_target"),"mousedown",this._btnMouseClick);this._wireResizing();this._controlVisibleOptions(this.model.hide);this._enableRTL(this.model.enableRTL);this._disabledItems=this.model.disabledItemIndices;this._controlStatus(this.model.enabled);this.model.disabledItemIndices=this._disabledItems;this.model.disabledItemIndices.length!=0&&this._disableItemByIndex(this.model.disabledItemIndices);this.model.enabledItemIndices.length!=0&&this._enableItemByIndex(this.model.enabledItemIndices);this._setWidth()},_removeResponsive:function(){n(this._spantag).remove();t.isNullOrUndefined(this._tipRes)||n(this._liTemplte).ejTooltip("destroy");var i=n(this._liTemplte).children("ul");n(this._liTemplte).detach();n(this.element).append(i);this.itemsContainer=this.element.children("ol,ul");this.items=this.itemsContainer.children("li");this._off(this.items,"mouseup");this._off(this.items,"mousedown");this._off(this.element,"mousedown");this._wireEvents();this._wireResizing();this._setWidth()},_controlVisibleOptions:function(n){n!=!1?this.hide():this.show()},_controlStatus:function(n){n!=!0?this.disable():this.enable()},_roundedCorner:function(n){n?(this.element.addClass("e-corner"),this._liTemplte&&this._liTemplte.addClass("e-corner")):(this.element.removeClass("e-corner"),this._liTemplte&&this._liTemplte.removeClass("e-corner"));this._subControlsSetModel("showRoundedCorner",n)},_generateTemplate:function(){var n=this,i;this.element.css("visibility","hidden");this.model.dataSource instanceof t.DataManager?(i=this.model.dataSource.executeQuery(this.model.query),i.done(function(t){n._generateGroup(t.result);n._initialize();n.element.css("visibility","")})):this.model.dataSource!=null?(n._generateGroup(n.model.dataSource),n.element.css("visibility","")):(n._generateGroup(n.model.Items),n.element.css("visibility",""))},_generateGroup:function(n){var r=this,f,u,t,e,i;for(this._localDataSource=n,f=-1,u=[],t=0;t<n.length;t++)if(this._isNewGroup(n[t][this.model.fields.group],u)){for(u[++f]=n[t][this.model.fields.group],e=-1,r.itemsSource=[],i=t;i<n.length;i++)n[t][this.model.fields.group]==n[i][this.model.fields.group]&&(r.itemsSource[++e]=n[i]);r.element.append(r._generateTagitems())}},_isNewGroup:function(n,t){if(!t)return!0;for(var i=0;i<t.length;i++)if(n==t[i])return!1;return!0},_renderControl:function(){this.element.addClass("e-widget e-box");this._renderToolbarItems();this._addAttr(this.model.htmlAttributes);this._setOrientation(this.model.orientation);this._renderToolbarSeparator();this._setHeight(this.model.height);this._bindUnbindWidth()},_renderToolbarItems:function(){var i;for(this.target=this.element[0],this.itemsContainer=this.element.children("ol,ul"),i=0;i<this.itemsContainer.length;i++)n(this.itemsContainer[i]).attr("role","list");for(this.itemsContainer.children("ol,ul").remove(),this.items=this.itemsContainer.children("li"),i=0;i<this.items.length;i++)n(this.items[i]).attr("tabindex","-1"),n(this.items[i]).attr("role","listitem"),t.isNullOrUndefined(n(this.items[i]).attr("title"))&&t.isNullOrUndefined(n(this.items[i]).attr("aria-label"))&&n(this.items[i]).attr("aria-label",this.items[i].id);this._liCount=this.items.length},_generateTagitems:function(){var i,n;for(i=this.itemsSource,this.ultag=t.buildTag("ul"),this.ultag.attr("role","list"),n=0;n<i.length;n++)i[n][this.model.fields.overflow]=="show"&&this.ultag.addClass("e-show"),this.ultag.append(this._generateLi(i[n]));return this.ultag},_generateLi:function(n){var i,u,r;return i=t.buildTag("li"),n[this.model.fields.id]?i.attr("id",n[this.model.fields.id]):n[this.model.fields.text]&&i.attr("id",n[this.model.fields.text]),n[this.model.fields.tooltipText]&&i.attr("title",n[this.model.fields.tooltipText]),n[this.model.fields.imageUrl]&&n[this.model.fields.imageUrl]!=""&&(u=t.buildTag("img.e-align","",{},{src:n[this.model.fields.imageUrl],alt:n[this.model.fields.text]}),n[this.model.fields.imageAttributes]&&this._setAttributes(n[this.model.fields.imageAttributes],u),i.append(u)),n[this.model.fields.spriteCssClass]&&n[this.model.fields.spriteCssClass]!=""&&(r=t.buildTag("div.e-align "+n[this.model.fields.spriteCssClass]+" e-spriteimg"),i.append(r)),n[this.model.fields.text]&&n[this.model.fields.text]!=""&&i.append(n[this.model.fields.text]),n[this.model.fields.htmlAttributes]&&this._setAttributes(n[this.model.fields.htmlAttributes],i),n[this.model.fields.template]&&(r=t.buildTag("div .e-align",n[this.model.fields.template]),i.append(r)),i},_setAttributes:function(t,i){for(var r in t)n(i).attr(r,t[r])},_renderToolbarSeparator:function(){var t,i;if(this.model.enableSeparator){for(t=0,i=this.itemsContainer.length-1;t<i;t++)n(this.itemsContainer[t]).addClass("e-separator");if(this.itemsContainer.length==1)for(t=0,i=this.itemsContainer[0].children.length;t<i;t++)t==i-1?n(this.itemsContainer[0].children[t]).removeClass("e-separator"):n(this.itemsContainer[0].children[t]).addClass("e-separator")}else this.itemsContainer.removeClass("e-separator").find(".e-separator").removeClass("e-separator");this._setWidth()},_addAttr:function(t){var i=this;n.map(t,function(n,t){t=="class"?i.element.addClass(n):t=="disabled"&&n=="disabled"?i.disable():i.element.attr(t,n)})},_enableRTL:function(n){n?(this.element.addClass("e-rtl"),this.items.addClass("e-comnrtl"),this.model.orientation==t.Orientation.Horizontal&&this.itemsContainer.addClass("e-comnrtl"),this._liTemplte&&this._liTemplte.addClass("e-rtl")):(this.element.removeClass("e-rtl"),this.items.removeClass("e-comnrtl"),this.model.orientation==t.Orientation.Horizontal&&this.itemsContainer.removeClass("e-comnrtl"),this._liTemplte&&this._liTemplte.removeClass("e-rtl"));this.model.enableRTL=n;this._subControlsSetModel("enableRTL",n);this._renderToolbarSeparator()},_renderTooltip:function(i){var r=n.extend(!0,{},i);r.cssClass=t.isNullOrUndefined(r.cssClass)?"e-toolbarTooltip "+this.model.cssClass:r.cssClass+" e-toolbarTooltip "+this.model.cssClass;r.enableRTL=this.model.enableRTL;r.showRoundedCorner=this.model.showRoundedCorner;r.target="li[data-content], li[title]";r.beforeOpen=this._showTooltip;this._tipToolbar=n(this.target).ejTooltip(r).data("ejTooltip");this.model.isResponsive&&!t.isNullOrUndefined(this._liTemplte)&&(this._tipRes=n(this._liTemplte).ejTooltip(r).data("ejTooltip"))},_showTooltip:function(t){var i=n(t.event.currentTarget),r=t.event.target;i.hasClass("e-disable")&&(t.cancel=!0)},_hideTooltip:function(){t.isNullOrUndefined(this._tipToolbar)||(this._tipToolbar.hide(),this._tipToolbar._isHidden=!1);t.isNullOrUndefined(this._tipRes)||(this._tipRes.hide(),this._tipRes._isHidden=!1)},_addOverlay:function(i){for(var u,r=0;r<i.length;r++)n(i[r]).hasClass("e-disable")||(n(i[r]).addClass("e-disable"),u=t.buildTag("div.e-item-overlay"),n(i[r]).append(u))},_removeOverlay:function(t){for(var i=0;i<t.length;i++)n(t[i]).children(".e-item-overlay").remove()},disableItem:function(t){var i=n(t);i==null||i.length<=0||(i.hasClass("e-disable")||(i.attr("aria-disabled",!0).removeAttr("aria-label"),this._addOverlay(i)),i.removeClass("e-hover e-active").attr("data-aria-selected",!1))},enableItem:function(t){var i=n(t);i==null||i.length<=0||(i.removeClass("e-disable").attr("aria-disabled",!1).removeClass("e-disable"),this._removeOverlay(i))},disableItemByID:function(n){var t=this.itemsContainer.find("li#"+n);t==null||t.length<=0||this.disableItem(t)},enableItemByID:function(n){var t=this.itemsContainer.find("li#"+n);t==null||t.length<=0||this.enableItem(t)},_enableItemByIndex:function(t){var r,i;if(!this.model.enabled)return!1;if(t.length!=0)for(i=0;i<t.length;i++)n.inArray(t[i],this.model.disabledItemIndices)>-1&&(r=n.inArray(t[i],this.model.disabledItemIndices),this.enableItem(this.items[this.model.disabledItemIndices[r]]),this.model.disabledItemIndices.splice(r,1))},_disableItemByIndex:function(t){var i;if(!this.model.enabled)return!1;for(this._disabledItems=this.model.disabledItemIndices,i=0;i<t.length;i++)n.inArray(t[i],this.model.disabledItemIndices)<0&&this._disabledItems.push(parseInt(t[i]));for(i=0;i<this.items.length;i++)n.inArray(i,this.model.disabledItemIndices)>-1&&this.disableItem(this.items[i]);this.model.disabledItemIndices=this._disabledItems},disable:function(){if(this.element.attr("aria-disabled")=="true")return!1;this.element.attr("aria-disabled",!0).removeAttr("aria-label");this._addOverlay(this.items);this.model.isResponsive&&this.model.orientation=="horizontal"&&this._spantag.addClass("e-disable");this.model.enabled=!1;this._subControlsSetModel("enabled",!1)},enable:function(){if(this.model.disabledItemIndices=[],this.element.attr("aria-disabled")=="false")return!1;this.items.removeClass("e-disable");this._removeOverlay(this.items);this.element.attr("aria-disabled",!1);this.model.isResponsive&&this.model.orientation=="horizontal"&&this._spantag.removeClass("e-disable");this.model.enabled=!0;this._subControlsSetModel("enabled",!0)},refresh:function(){this._reSizeHandler()},selectItem:function(t){var i=n(t);i==null||i.length<=0||(i.addClass("e-active").attr("data-aria-selected",!0),this._activeItem=n(this.items).index(i))},deselectItem:function(t){var i=n(t);i==null||i.length<=0||i.removeClass("e-active").attr("data-aria-selected",!1)},selectItemByID:function(n){var t=this.itemsContainer.find("li#"+n);t==null||t.length<=0||this.selectItem(t)},deselectItemByID:function(n){var t=this.itemsContainer.find("li#"+n);t==null||t.length<=0||this.deselectItem(t)},removeItem:function(t){var r,u,i;if(this.model.disabledItemIndices=[],r=n(t),u=0,r!=null&&!(r.length<=0))for(r.remove(),this.items=this.itemsContainer.children("li"),i=0;i<this.items.length;i++)n(this.items[i]).hasClass("e-disable")&&(this.model.disabledItemIndices[u++]=i)},removeItemByID:function(n){var t=this.itemsContainer.find("li#"+n);t==null||t.length<=0||this.removeItem(t)},_wireResizing:function(){this.model.isResponsive&&this.model.orientation=="horizontal"?n(window).bind("resize",n.proxy(this._reSizeHandler,this)):this._unWireResizing()},_unWireResizing:function(){n(window).unbind("resize",n.proxy(this._reSizeHandler,this))},_wireEvents:function(){this._on(this.element,"mousedown",this._clickEventHandler);this._on(this.element,"focus",this._focusElement);this._on(this.element,"blur",this._targetBlur);this._on(this.items,"mouseenter",this._onItemHover);this._on(this.items,"mouseleave",this._onItemLeave);this._on(this.items,"mousedown",this._onItemClick);this._on(this.items,"mouseup",this._onItemClick)},_onItemHover:function(t){var i=n(t.currentTarget),u=t.target,r;i.hasClass("e-disable")?clearTimeout(this._tipToolbar.mouseTimer):(this.items.removeClass("e-hover"),i.addClass("e-hover").focus(),r={currentTarget:i,target:u,status:this.model.enabled},this._trigger("itemHover",r))},_onItemClick:function(i){var r,u,f;if(n(i.currentTarget).hasClass("e-disable")||i.which!=1)return!1;r=i.currentTarget;u=i.target;t.isDevice()||this._hideTooltip();i.type=="mousedown"?(this._focusEnable=!1,n(r).addClass("e-active"),this._focusedItem=this._currentItem=n(r)):i.type=="mouseup"&&n(r).hasClass("e-active")&&(this._removeSelection(),n(r).hasClass("e-disable")||(f={currentTarget:r,text:n(r).attr("data-content"),target:u,status:this.model.enabled,event:i},this._activeItem=this.model.isResponsive&&this._contstatus&&n(r).closest(".e-responsive-toolbar").length>0?this._liTemplte.find(".e-tooltxt").index(r):n(this.items).index(r),this._trigger("click",f)))},_onItemLeave:function(t){var i=n(t.currentTarget),u=t.target,r;i.hasClass("e-disable")||(this._removeSelection(),i.removeClass("e-hover"),r={currentTarget:i,target:u,status:this.model.enabled},this._trigger("itemLeave",r))},_onKeyPress:function(i){var u,r,f,e,o;if(u=i.keyCode?i.keyCode:i.which?i.which:i.charCode,this.model.isResponsive&&this._liTemplte.find(".e-tooltxt").length>0?(this._keyPressed=!0,this._items=this._contstatus?this._liTemplte.find(".e-tooltxt"):this.element.find(".e-tooltxt"),r=this._items.filter(".e-tooltxt:visible:not(.e-hidden, .e-disable)")):(this._keyPressed=!1,r=this.items.filter(".e-tooltxt:visible:not(.e-hidden, .e-disable)")),this._focusedItem?(f=this._focusedItem,this._focusedItem=null):f=r.filter(".e-hover"),i.type=="keydown")u==9&&i.shiftKey&&n(r[r.index(f)-1]).length>0?(i.preventDefault(),e=n(r[r.index(f)-1])):u==9&&n(r[r.index(f)+1]).length>0&&!i.shiftKey?(i.preventDefault(),e=n(r[r.index(f)+1])):(u==38||u==39)&&this.model.orientation!=t.Orientation.Vertical||(u==39||u==40)&&this.model.orientation==t.Orientation.Vertical?(i.preventDefault(),e=n(r[r.index(f)+1]).length>0?n(r[r.index(f)+1]):r.first()):(u==37||u==40)&&this.model.orientation!=t.Orientation.Vertical||(u==37||u==38)&&this.model.orientation==t.Orientation.Vertical?(i.preventDefault(),e=n(r[r.index(f)-1]).length>0?n(r[r.index(f)-1]):r.last()):u==33||u==36?(i.preventDefault(),e=r.first()):(u==34||u==35)&&(i.preventDefault(),e=r.last()),e&&(this._removeListHover(),e[0].focus(),e.addClass("e-hover"));else switch(u){case 13:case 32:if(i.preventDefault(),!f[0])break;o={currentTarget:f[0],target:n(f)[0],status:this.model.enabled,event:i};this._trigger("click",o);break;case 27:i.preventDefault();this.element.blur()}},_removeListHover:function(){n(this.items).removeClass("e-hover")},_addListHover:function(){var n=this._getActiveItem();n.hasClass("e-disable")||n.addClass("e-hover").focus()},_getActiveItem:function(){return this.model.isResponsive&&this._keyPressed?n(this._items[this._activeItem]):n(this.items[this._activeItem])},_targetBlur:function(){this.element.focusout().removeClass("e-focus");this._removeListHover();this._off(this.element,"keyup",this._onKeyPress)._off(this.element,"keydown",this._onKeyPress);this._trigger("focusOut")},_clickEventHandler:function(){this._clicked=!0},_removeSelection:function(){this._currentItem&&this._currentItem.attr("data-aria-selected")!="true"&&this._currentItem.removeClass("e-active")},_focusElement:function(){if(!this.element.hasClass("e-focus")&&(this.element.addClass("e-focus"),this._on(this.element,"keyup",this._onKeyPress)._on(this.element,"keydown",this._onKeyPress),!this._focusEnable)){this._focusEnable=!0;return}this._removeListHover();this._activeItem=this._clicked?-1:0;(this._getActiveItem().hasClass("e-disable")||this._getActiveItem().is(":hidden"))&&(this._activeItem=n(this.items).filter('li:not([class*="e-disable"])').first().index());this._addListHover()}});t.Toolbar.ResponsiveType={Popup:"popup",Inline:"inline"}}(jQuery,Syncfusion);"use strict";var n=this&&this.__extends||function(n,t){function r(){this.constructor=n}for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i]);n.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)};(function(t){var i=function(i){function r(n,r){return i.call(this),this._rootCSS="e-tooltip",this._setFirst=!1,this.PluginName="ejTooltip",this.id="null",this.model=null,this.defaults={height:"auto",width:"auto",enabled:!0,content:null,containment:"body",target:null,title:null,closeMode:"none",autoCloseTimeout:4e3,position:{stem:{horizontal:"center",vertical:"bottom"},target:{horizontal:"center",vertical:"top"}},associate:"target",collision:"flipfit",showShadow:!1,cssClass:null,animation:{effect:"none",speed:0},isBalloon:!0,showRoundedCorner:!1,enableRTL:!1,allowKeyboardNavigation:!0,tip:{size:{width:20,height:10},adjust:{xValue:0,yValue:0}},trigger:"hover",create:null,click:null,destroy:null,hover:null,tracking:null,beforeOpen:null,beforeClose:null,open:null,close:null},this.dataTypes={enabled:"boolean",closeMode:"enum",autoCloseTimeout:"number",trigger:"enum",position:{stem:"data",target:"data"},associate:"enum",collision:"enum",showShadow:"boolean",animation:{effect:"enum",speed:"number"},isBalloon:"boolean",showRoundedCorner:"boolean",enableRTL:"boolean",allowKeyboardNavigation:"boolean",tip:{size:{width:"number",height:"number"},adjust:{xValue:"number",yValue:"number"}}},this.isTrack=!0,this._isCancel=!1,this._isHidden=!0,this.arrowValue={left:0,top:0,width:0,height:0,display:null},this.tooltipPos={width:0,height:0,left:0,top:0,bottom:0,right:0,position:"absolute"},this.targetPos={width:0,height:0,left:0,top:0,bottom:0,right:0,position:"absolute"},this.mouseTimer=null,this.positionTarget=null,this.positionTooltip=null,this.containerSize=null,this._createTitle=function(){this.tooltipTitle=ej.buildTag("div.e-def e-header"," ",{},{});this.tooltipHeader=ej.buildTag("div"," ",{},{});t(this.tooltipTitle).html(this.model.title).appendTo(this.tooltipHeader)},n&&(n.jquery||(n=t("#"+n)),n.length)?t(n).ejTooltip(r).data(this.PluginName):void 0}return n(r,i),r.prototype.setModel=function(n,t){this.setModel(n,t)},r.prototype.option=function(n,t){this.option(n,t)},r.prototype.triggerEvents=function(n,t){var i,r,u,f,e,o,s;switch(n){case"click":r=t;i=this._trigger(n,r);break;case"hover":u=t;i=this._trigger(n,u);break;case"tracking":f=t;i=this._trigger(n,f);break;case"beforeOpen":e=t;i=this._trigger(n,e);break;case"open":o=t;i=this._trigger(n,o);break;case"beforeClose":case"close":s=t;i=this._trigger(n,s)}return i},r.prototype.enable=function(){this.tooltip.hasClass("e-disable")&&(this.model.enabled=!0,this.tooltip.removeClass("e-disable"))},r.prototype.disable=function(){this.tooltip.hasClass("e-disable")||(this.model.enabled=!1,this.tooltip.addClass("e-disable"))},r.prototype.show=function(n,i){if(this.model.enabled){if(ej.isNullOrUndefined(n)){var r=this.model.target==null?this.element:t(this.element).find(this.model.target+":first");this._positionElement(r)}else this._positionElement(n);ej.isNullOrUndefined(i)?this._showTooltip():typeof i=="string"?t(this.tooltip).show(i):typeof i=="function"&&i.call.apply(this.tooltip)}},r.prototype.hide=function(n){this.model.enabled&&(ej.isNullOrUndefined(n)?this._hideTooltip():typeof n=="string"?t(this.tooltip).hide(n):typeof n=="function"&&n.call.apply(this.tooltip))},r.prototype._destroy=function(){this.mouseTimer&&clearTimeout(this.mouseTimer);this.timer&&clearTimeout(this.timer);t(this.tooltip).remove();this.tooltip=null},r.prototype._setModel=function(n){var i,r;for(i in n)switch(i){case"height":this._setHeight(n[i]);break;case"width":this._setWidth(n[i]);break;case"enabled":this._enabled(n[i]);break;case"content":this._setContent(n[i]);break;case"title":this.model.title=n[i];this.model.title==null?(t(this.tooltipHeader).remove(),this.tooltipHeader=null,this.tooltipTitle=null,this.model.closeMode===ej.Tooltip.CloseMode.Sticky&&this._iconRender()):ej.isNullOrUndefined(this.tooltipHeader)?this._createHeader():t(this.tooltipTitle).html(this.model.title);this.tooltipPos.height=t(this.tooltip).outerHeight();break;case"associate":this.model.associate=n[i];this._wireMouseEvents(!1);this._wireMouseEvents(!0);break;case"position":this._setPosition(n[i]);break;case"collision":this.model.collision=n[i];break;case"closeMode":typeof n[i]!="undefined"&&(this.model.closeMode=n[i],this.model.closeMode==ej.Tooltip.CloseMode.Sticky?this._iconRender():(t(this.tooltipClose).remove(),this.tooltipClose=null),this.tooltipPos.height=t(this.tooltip).outerHeight());break;case"cssClass":this._setSkin(n[i]);break;case"showShadow":this._shadowEffect(n[i],this.model.position);break;case"isBalloon":ej.isNullOrUndefined(n[i])||(this.model.isBalloon=n[i],this.model.isBalloon?this._renderArrow():(t(this.tip).remove(),this.tip=null));break;case"animation":r=n[i];this.model.animation=t.extend(!0,this.model.animation,r);this.model.animation.effect!=ej.Tooltip.Effect.None?(this._off(t(this.tooltip),"mouseenter",this._onTooltipMouseEnter),this._off(t(this.tooltip),"mouseleave",this._onTooltipMouseLeave)):this.model.animation.effect==ej.Tooltip.Effect.None&&(this._on(t(this.tooltip),"mouseenter",this._onTooltipMouseEnter),this._on(t(this.tooltip),"mouseleave",this._onTooltipMouseLeave));break;case"enableRTL":this._setRTL(n[i]);break;case"target":this._wireTriggerEvents(!1);this.model.target=n[i];this._wireTriggerEvents(!0);this._renderTarget();break;case"trigger":this._setTrigger(n[i]);break;case"showRoundedCorner":this.model.showRoundedCorner=n[i];this._roundedCorner(n[i]);break;case"allowKeyboardNavigation":this.model.allowKeyboardNavigation=n[i];this.model.allowKeyboardNavigation?this._on(t(window),"keydown",this._keyDown):this._off(t(window),"keydown",this._keyDown)}},r.prototype._enabled=function(n){n?this.enable(n):this.disable(n);this.model.enabled=n},r.prototype._shadowEffect=function(n,i){this.model.showShadow=n;var r=null;if(t(this.tooltip).removeClass("e-tooltipShadowLeft e-tooltipShadowRight"),this.model.showShadow){if(this.model.isBalloon)switch(i.stem.horizontal){case"center":r=i.stem.vertical=="top"?"e-tooltipShadowLeft":i.stem.vertical=="bottom"?"e-tooltipShadowRight":"e-tooltipShadowLeft";break;case"right":r=i.target.horizontal=="center"&&i.stem.vertical=="top"?"e-tooltipShadowLeft":"e-tooltipShadowRight";break;case"left":r=i.target.horizontal=="center"&&i.stem.vertical=="bottom"?"e-tooltipShadowRight":"e-tooltipShadowLeft"}else r="e-tooltipShadowLeft";t(this.tooltip).addClass(r)}},r.prototype._setContent=function(n){this.model.content=n;t(this.tooltipContent).html(this.model.content);this.tooltipPos.height=t(this.tooltip).outerHeight();this.tooltipPos.width=t(this.tooltip).outerWidth()},r.prototype._setPosition=function(n){this.model.position.stem=t.extend(!0,this.model.position.stem,n.stem);this.model.position.target=t.extend(!0,this.model.position.target,n.target)},r.prototype._setTrigger=function(n){this._wireTriggerEvents(!1);this.model.trigger=n;this._wireTriggerEvents(!0)},r.prototype._init=function(){this.id=this.element[0].id;this.positionTarget=t.extend(!0,{},this.model.position.target);this.positionTooltip=t.extend(!0,{},this.model.position.stem);this.tipSize=t.extend(!0,{},this.model.tip.size);this._initialize();this._render();this.enable(this.model.enabled);this._wireEvents(!0)},r.prototype._initialize=function(){ej.isNullOrUndefined(this.model.target)?ej.isNullOrUndefined(this.model.content)&&!ej.isNullOrUndefined(this.element.attr("title"))&&(this.model.content=this.element.attr("title"),this.element.attr("data-content",this.model.content),this.element.removeAttr("title")):this._renderTarget()},r.prototype._wireEvents=function(n){var i=n?"_on":"_off";this._wireTriggerEvents(n);this.model.allowKeyboardNavigation&&this[i](t(window),"keydown",this._keyDown);this.model.target!=null?this[i](this.element,"scroll",this.model.target,this._hideTooltip):this[i](this.element,"scroll",this._hideTooltip);this[i](t(this.tooltip),"mouseenter",this._onTooltipMouseEnter);this[i](t(this.tooltip),"mouseleave",this._onTooltipMouseLeave);this[i](t(window),"resize",this._hideTooltip);this[i](t(window),"touchend",this._docTouchEndHandler)},r.prototype._wireTriggerEvents=function(n){var t=n?"_on":"_off",i;this.model.trigger==ej.Tooltip.Trigger.Focus?this.model.target!=null?this[t](this.element,"blur",this.model.target,this._hideTooltip):this[t](this.element,"blur",this._hideTooltip):this.model.target!=null?this[t](this.element,ej.isDevice()?"touchstart":"mouseleave",this.model.target,this._onMouseOut):this[t](this.element,ej.isDevice()?"touchstart":"mouseleave",this._onMouseOut);this._wireMouseEvents(n);i=this.model.trigger==ej.Tooltip.Trigger.Click?ej.isDevice()?"touchstart":"click":this.model.trigger==ej.Tooltip.Trigger.Focus?ej.isDevice()?"touchstart":"focus":ej.isDevice()?"touchstart":"mouseenter";this.model.target!=null?this[t](this.element,i,this.model.target,this._targetHover):this[t](this.element,i,this._targetHover)},r.prototype._wireMouseEvents=function(n){var t=n?"_on":"_off";(this.model.associate==ej.Tooltip.Associate.MouseEnter||this.model.associate==ej.Tooltip.Associate.MouseFollow)&&(this.model.target!=null?this[t](this.element,ej.isDevice()?"touchstart":"mousemove",this.model.target,this._tooltipMove):this[t](this.element,ej.isDevice()?"touchstart":"mousemove",this._tooltipMove))},r.prototype._render=function(){this.tooltip=ej.buildTag("div.e-tooltip-wrap e-widget","",{},{role:"tooltip","aria-readonly":"true","aria-hidden":"true","aria-describedby":this.id+"_content",id:this.id+"_Main"});this.tooltipInter=ej.buildTag("div.e-tipContainer","",{},{});this.tooltip.append(this.tooltipInter);this.model.isBalloon&&this._renderArrow();t(this.model.containment).append(this.tooltip);this._setHeight(this.model.height);this._setWidth(this.model.width);this._createHeader();this._tooltipContent();this.model.cssClass&&this.tooltip.addClass(this.model.cssClass);this.model.showRoundedCorner&&this._roundedCorner(this.model.showRoundedCorner);this.model.enableRTL&&this._setRTL(this.model.enableRTL);t(this.tooltip).css({top:"auto",left:"auto"});this.tooltipPos={width:t(this.tooltip).outerWidth(),height:t(this.tooltip).outerHeight(),left:t(this.tooltip).offset().left,top:t(this.tooltip).offset().top,position:"absolute"};ej.isNullOrUndefined(this.model.target)&&(this._containerCalc(this.element),this._positionElement(this.element))},r.prototype._containerCalc=function(n){ej.isNullOrUndefined(n)&&(n=this.element);var i=t(n).offset();this.containerSize={height:this.model.containment=="body"?t(window).innerHeight()||document.documentElement.clientHeight||document.body.clientHeight:t(this.model.containment).innerHeight(),width:this.model.containment=="body"?t(window).innerWidth()||document.documentElement.clientWidth||document.body.clientWidth:t(this.model.containment).innerWidth()};this.containerSize.left=this.model.containment!="body"?t(this.model.containment).css("position")=="static"?t(this.model.containment).offset().left-t(this.model.containment).offsetParent().offset().left:0:0;this.containerSize.top=this.model.containment!="body"?t(this.model.containment).css("position")=="static"?t(this.model.containment).offset().top-t(this.model.containment).offsetParent().offset().top:0:0;i.left-=this.model.containment!="body"?t(this.model.containment).css("position")=="static"?t(this.model.containment).offsetParent().offset().left:t(this.model.containment).offset().left:0;i.top-=this.model.containment!="body"?t(this.model.containment).css("position")=="static"?t(this.model.containment).offsetParent().offset().top:t(this.model.containment).offset().top:0;this.targetPos.left=i.left;this.targetPos.top=i.top},r.prototype._setHeight=function(n){this.model.height=n;!isNaN(+n)&&isFinite(n)?t(this.tooltip).css("height",n+"px"):t(this.tooltip).css("height",n);this.tooltipPos.height=t(this.tooltip).outerHeight()},r.prototype._setWidth=function(n){this.model.width=n;this.model.width!="auto"&&(n=!isNaN(+n)&&isFinite(n)?n+"px":n,t(this.tooltip).css("max-width",n),t(this.tooltip).css("min-width","0px"));t(this.tooltip).css("width",n);this.tooltipPos.height=t(this.tooltip).outerHeight()},r.prototype._setRTL=function(n){this.model.enableRTL=n;n?this.tooltip.addClass("e-rtl"):this.tooltip.removeClass("e-rtl")},r.prototype._setSkin=function(n){this.model.cssClass!=n&&(this.tooltip.removeClass(this.model.cssClass).addClass(n),this.model.cssClass=n)},r.prototype._roundedCorner=function(){this.model.showRoundedCorner?this.tooltip.addClass("e-corner"):this.tooltip.removeClass("e-corner")},r.prototype._renderArrow=function(){ej.isNullOrUndefined(this.tip)&&(this.tip=ej.buildTag("div.e-arrowTip"," ",{id:this.id+"_eTip"},{}),t(this.tip).append("<div class='e-arrowTipOuter'><\/div>").append("<div class='e-arrowTipInner'><\/div>"),t(this.tip).insertBefore(this.tooltipInter))},r.prototype._adjustArrow=function(n){var u,f,e=t(this.tooltip).width(),r=t(this.tooltip).height(),i=n.stem,s=n.target,o={tipHeight:0,tipWidth:0};s.horizontal=="right"||s.horizontal=="left"?(u=i.horizontal=="left"?-this.model.tip.size.height:i.horizontal=="right"?e:e/2-this.tipSize.width/2,f=i.horizontal!="center"?i.vertical=="top"?5:i.vertical=="center"?r/2-this.tipSize.width/2:r-5-this.tipSize.width:i.vertical=="top"?-this.tipSize.height:i.vertical=="bottom"?r:this.tooltipPos.height/2-this.tipSize.width/2,o=this._arrowBinding(n,"horizontal")):(f=i.vertical=="top"?-this.tipSize.height:i.vertical=="bottom"?r:r/2-this.tipSize.width/2,u=i.vertical=="center"?i.horizontal=="left"?-this.model.tip.size.height:e:i.horizontal=="left"?10:i.horizontal=="center"?this.tooltipPos.width/2-this.tipSize.width/2:e-10-this.tipSize.width,o=this._arrowBinding(n,"vertical"));this.arrowValue.left=u;this.arrowValue.top=f;t(this.tip).css({height:o.tipHeight+"px",width:o.tipWidth+"px",left:u+"px",top:f+"px",display:i.horizontal=="center"&&i.vertical=="center"?"none":"block"})},r.prototype._arrowBinding=function(n,i){var e=n.stem,l=i=="horizontal"?e.horizontal!="center":e.vertical=="center",u,f,o=t(this.tooltip).css("border-top-color"),s=t(this.tooltip).css("background-color"),h=this.model.tip.size.height,c=this.model.tip.size.height-1,r={"border-top":"none","border-bottom":"none","border-right":"none","border-left":"none"};return l?(u=this.model.tip.size.height,f=this.model.tip.size.width,t(this.tip).find(".e-arrowTipOuter").css(this._arrow(n,h,o,r,"horizontal")),t(this.tip).find(".e-arrowTipInner").css(this._arrow(n,c,s,r,"horizontal"))):(u=this.model.tip.size.width,f=this.model.tip.size.height,t(this.tip).find(".e-arrowTipOuter").css(this._arrow(n,h,o,r,"vertical")),t(this.tip).find(".e-arrowTipInner").css(this._arrow(n,c,s,r,"vertical"))),{tipHeight:f,tipWidth:u}},r.prototype._arrow=function(n,t,i,r,u){var f=n.stem,e=u=="horizontal"?f.horizontal=="right"?"0px":"1px":"1px",o=u=="horizontal"?"1px":f.vertical=="bottom"?"0px":"1px";return r["border-top"]=u=="horizontal"?t+"px solid transparent":f.vertical=="bottom"?t+"px solid "+i:"none",r["border-bottom"]=u=="horizontal"?t+"px solid transparent":f.vertical=="top"?t+"px solid "+i:"none",r["border-right"]=u=="horizontal"?f.horizontal=="left"?t+"px solid "+i:"none":t+"px solid transparent",r["border-left"]=u=="horizontal"?f.horizontal=="right"?t+"px solid "+i:"none":t+"px solid transparent",t==this.model.tip.size.height-1&&(r.left=e,r.top=o),r},r.prototype._iconRender=function(){this.model.closeMode==ej.Tooltip.CloseMode.Sticky&&(ej.isNullOrUndefined(this.tooltipClose)||t(this.tooltipClose).remove(),this.tooltipClose=ej.buildTag("div .e-icon"," ",{},{id:"_closeIcon"}),this.model.title!=null?t(this.tooltipClose).insertAfter(this.tooltipTitle).addClass("e-close"):t(this.tooltipClose).insertBefore(this.tooltipInter).addClass("e-cross-circle"),this._on(t(this.tooltipClose),"click",this._hideTooltip))},r.prototype._renderTarget=function(){this.targetElement=t(this.element).find(this.model.target);for(var n=0;n<this.targetElement.length;n++)ej.isNullOrUndefined(t(this.targetElement[n]).attr("title"))||(this.targetElement[n].setAttribute("data-content",this.targetElement[n].title),this.targetElement[n].removeAttribute("title"))},r.prototype._tooltipContent=function(){this.tooltipContent=ej.buildTag("div.e-tipcontent e-def","",{},{id:this.id+"_content"});t(this.tooltipContent).html(this.model.content).addClass("e-def");this.model.title!=null?t(this.tooltipContent).insertAfter(this.tooltipHeader):t(this.tooltipContent).appendTo(this.tooltipInter)},r.prototype._positionElement=function(n){this.tooltipPos.width=t(this.tooltip).outerWidth();this.tooltipPos.height=t(this.tooltip).outerHeight();this.targetPos.width=t(n).outerWidth();this.targetPos.height=t(n).outerHeight();this._containerCalc(n);this.model.associate==ej.Tooltip.Associate.Window?this._browserPosition():this.model.associate==ej.Tooltip.Associate.Axis?this._axisPosition():this.model.associate==ej.Tooltip.Associate.Target&&this._tooltipPosition(this.model.position);this.model.collision!=ej.Tooltip.Collision.None&&this.model.associate==ej.Tooltip.Associate.Target&&this._calcCollision(this.model.position,n)},r.prototype._browserPosition=function(){if(this.model.containment=="body"){this.containerSize={height:t(window).innerHeight()||document.documentElement.clientHeight||document.body.clientHeight,width:t(window).innerWidth()||document.documentElement.clientWidth||document.body.clientWidth};var i=t.extend(!0,{},this.model.position),n={position:"absolute",left:"auto",top:"auto",bottom:"auto",right:"auto"};ej.isNullOrUndefined(this.tip)||t(this.tip).css({display:"none"});this.model.position.target.horizontal=="right"?n.right=0:n.left=this.model.position.target.horizontal=="left"?0:this.containerSize.width/2-this.tooltipPos.width/2;this.model.position.target.vertical=="top"?n.top=0:this.model.position.target.vertical=="center"?n.top=this.containerSize.height/2-this.tooltipPos.height/2:n.bottom=0;this.model.showShadow&&this._shadowEffect(this.model.showShadow,i);t(this.tooltip).css(n)}},r.prototype._tooltipMove=function(n){if(this.model.closeMode==ej.Tooltip.CloseMode.None&&this.model.enabled){var t=this;if(this._isCancel)return;this.model.associate==ej.Tooltip.Associate.MouseFollow?this._mousePosition(n):this.model.associate==ej.Tooltip.Associate.MouseEnter&&(clearTimeout(this.mouseTimer),this.mouseTimer=setTimeout(function(){t.isTrack&&t._mousePosition(n)},300))}},r.prototype._mousePosition=function(n){var u,f,b,c;n.type=="touchstart"?(n.preventDefault(),u=n.touches[0].pageX,f=n.touches[0].pageY):n.type=="mousemove"&&(u=n.pageX,f=n.pageY);this.isCollision=!0;this._containerCalc(n.currentTarget);var l=0,a=0,e=0,i=t.extend(!0,{},this.model.position.stem),o=t.extend(!0,{},this.model.position),s={left:0,top:0},r={left:u,top:f},h={left:u,top:f},v=this.containerSize.left,y=this.containerSize.top,p=this.model.containment!="body"?u-t(this.model.containment).offset().left:u,w=this.model.containment!="body"?f-t(this.model.containment).offset().top:f;for(o.target.horizontal=o.target.vertical="center",this.model.containment!="body"&&(s=t(this.model.containment).css("position")=="static"?t(this.model.containment).offsetParent().offset():t(this.model.containment).offset()),h.left-=s.left,h.top-=s.top;this.isCollision;)if(r=t.extend(!0,{},h),b=this.model.isBalloon?i.vertical=="top"||i.vertical=="bottom"?5+this.tipSize.height/2:0:0,c=this.model.isBalloon?i.horizontal=="right"||i.horizontal=="left"?10+this.tipSize.width/2:0:0,l=this.model.tip.adjust.xValue!=0?this.model.tip.adjust.xValue:7,a=this.model.tip.adjust.yValue!=0?this.model.tip.adjust.yValue:10,e=this.model.isBalloon?i.horizontal!="center"?this.model.tip.size.height:i.vertical!="center"?this.model.tip.size.height:0:2,r.left+=i.horizontal=="right"?-this.tooltipPos.width:i.horizontal=="left"?0:-(this.tooltipPos.width/2),r.top+=i.vertical=="bottom"?-this.tooltipPos.height:i.vertical=="top"?0:-(this.tooltipPos.height/2),r.left+=i.vertical!="center"?i.horizontal=="right"?c:i.horizontal=="left"?-c:0:0,r.left+=i.vertical=="center"?i.horizontal=="right"?-e:i.horizontal=="left"?+(e+l):0:0,r.top+=i.vertical=="top"?+(e+a):i.vertical=="bottom"?-e:0,this.targetElement!=n.currentTarget&&(this.targetElement=n.currentTarget,(r.left<v||r.left+this.tooltipPos.width>v+this.containerSize.width)&&(this.positionTooltip.horizontal=p>=this.tooltipPos.width?"right":this.containerSize.width-p>=this.tooltipPos.width?"left":"center"),(r.top<y||r.top+this.tooltipPos.height>this.containerSize.height+y)&&(this.positionTooltip.vertical=w>=this.tooltipPos.height?"bottom":this.containerSize.height-w>=this.tooltipPos.height?"top":"center")),this.positionTooltip.horizontal!=i.horizontal||this.positionTooltip.vertical!=i.vertical)this.isCollision=!0,i=t.extend(!0,{},this.positionTooltip);else if(this.isCollision=!1,t(this.tooltip).css({top:r.top+"px",left:r.left+"px",position:"absolute",right:"auto",bottom:"auto"}),o.stem=t.extend(!0,{},this.positionTooltip),this.model.showShadow&&this._shadowEffect(this.model.showShadow,o),this.model.isBalloon&&this._adjustArrow(o),this._showTooltip(),this.model.associate==ej.Tooltip.Associate.MouseEnter&&(this.isTrack=!1),this.model.associate==ej.Tooltip.Associate.MouseFollow&&this.triggerEvents("tracking",{position:this.model.position,event:n}))return},r.prototype._axisPosition=function(){var r=t.extend(!0,{},this.model.position),u,f,n,i;typeof this.model.position.target.horizontal=="number"&&(u=this.model.position.target.horizontal.toString());typeof this.model.position.target.vertical=="number"&&(f=this.model.position.target.vertical.toString());n=parseInt(u);i=parseInt(f);ej.isNullOrUndefined(this.tip)||t(this.tip).css({display:"none"});this.model.showShadow&&this._shadowEffect(this.model.showShadow,r);this.model.isBalloon&&this._adjustArrow(r);isFinite(n)&&isFinite(i)&&t(this.tooltip).css({top:i,left:n,position:"absolute"})},r.prototype._tooltipPosition=function(n){var f=0,i=t.extend(!0,{},n.stem),u=t.extend(!0,{},n.target),r=t.extend(!0,{},this.targetPos),s=i.vertical==="top"||i.vertical==="bottom"?5+this.tipSize.width/2:0,h=i.horizontal==="right"||i.horizontal==="left"?10+this.tipSize.width/2:0,f=this.model.isBalloon?i.horizontal!=="center"?this.model.tip.size.height:i.vertical!=="center"?this.model.tip.size.height:0:0,e=this.model.tip.adjust.xValue!=0?this.model.tip.adjust.xValue:this.model.isBalloon?0:2,o=this.model.tip.adjust.yValue!=0?this.model.tip.adjust.yValue:this.model.isBalloon?0:2;r.left+=u.horizontal==="right"?this.targetPos.width:u.horizontal==="left"?0:this.targetPos.width/2;r.top+=u.vertical==="bottom"?this.targetPos.height:u.vertical==="top"?0:this.targetPos.height/2;r.left+=i.horizontal==="right"?-this.tooltipPos.width:i.horizontal==="left"?0:-(this.tooltipPos.width/2);r.top+=i.vertical==="bottom"?-this.tooltipPos.height:i.vertical==="top"?0:-(this.tooltipPos.height/2);r.left+=u.horizontal!=="center"?i.horizontal==="right"?-f:i.horizontal==="left"?f:0:i.vertical==="center"?i.horizontal==="right"?-f:i.horizontal==="left"?f:0:0;r.top+=u.horizontal==="center"?i.vertical==="bottom"?-f:i.vertical==="top"?f:0:i.horizontal==="center"?i.vertical==="bottom"?-f:i.vertical==="top"?f:0:0;r.left+=u.horizontal==="center"&&i.vertical!=="center"?i.horizontal==="right"?h:i.horizontal==="left"?-h:0:0;r.top+=u.horizontal!=="center"&&i.horizontal!=="center"?i.vertical==="top"?-s:i.vertical==="bottom"?s:0:0;r.left+=u.horizontal!=="center"?i.horizontal==="right"?-e:i.horizontal==="left"?e:0:i.vertical==="center"?i.horizontal==="right"?-e:i.horizontal==="left"?e:0:0;r.top+=u.horizontal==="center"?i.vertical==="bottom"?-o:i.vertical==="top"?o:0:i.horizontal==="center"?i.vertical==="bottom"?-o:i.vertical==="top"?o:0:0;this.tooltipPos.left=r.left;this.tooltipPos.top=r.top;this.model.collision===ej.Tooltip.Collision.None&&(this.model.isBalloon&&this._adjustArrow(n),this._shadowEffect(this.model.showShadow,n),t(this.tooltip).css({top:r.top+"px",left:r.left+"px",position:"absolute"}))},r.prototype._calcCollision=function(n,i){var n=t.extend(!0,{},n),r=t.extend(!0,{},n),s=this.model.tip.size.height,e=!0,u=this.model.containment!="body"?t(i).offset().left-t(this.model.containment).offset().left:t(i).offset().left,f=this.model.containment!="body"?t(i).offset().top-t(this.model.containment).offset().top:t(i).offset().top,o={topSpace:f,rightSpace:this.containerSize.width-(u+this.targetPos.width),bottomSpace:this.containerSize.height-(f+this.targetPos.height),leftSpace:u,centerRight:this.containerSize.width-(u+this.targetPos.width/2),centerLeft:u+this.targetPos.width/2,centerTop:f+this.targetPos.height/2,centerBottom:this.containerSize.height-(f+this.targetPos.height/2),tooltipWidth:this.tooltipPos.width+s,tooltipHeight:this.tooltipPos.height+s};if(this.model.collision===ej.Tooltip.Collision.Fit)this._collisionFit(n,o);else{while(e)r=this._collisionFlip(r,o),r.target.horizontal!=n.target.horizontal||r.target.vertical!=n.target.vertical||r.stem.horizontal!=n.stem.horizontal||r.stem.vertical!=n.stem.vertical?(this._tooltipPosition(r),n=t.extend(!0,{},r)):e=!1;e||(this.model.collision==ej.Tooltip.Collision.FlipFit?this._collisionFit(r,o):(this._adjustArrow(r),this._shadowEffect(this.model.showShadow,r),t(this.tooltip).css({top:this.tooltipPos.top+"px",left:this.tooltipPos.left+"px",position:"absolute"})))}},r.prototype._collisionFlip=function(n,i){var u=t.extend(!0,{},this.tooltipPos),r=t.extend(!0,{},n),o=t(this.model.containment).scrollLeft(),s=t(this.model.containment).scrollTop(),f=this.containerSize.left,e=this.containerSize.top;return(u.left+u.width>f+this.containerSize.width+o||u.left<f)&&(n.target.horizontal!="center"?r.target.horizontal=i.leftSpace>=i.tooltipWidth?"left":i.rightSpace>=i.tooltipWidth?"right":"center":r.stem.horizontal=i.centerLeft>=i.tooltipWidth?"right":i.centerRight>=i.tooltipWidth?"left":"center"),u.top<e&&(r.target.vertical=i.bottomSpace>=i.tooltipHeight?"bottom":"center"),u.top+u.height>this.containerSize.height+s+e&&(r.target.vertical=i.topSpace>=i.tooltipHeight?"top":"center"),(r.target.horizontal!=n.target.horizontal||r.target.vertical!=n.target.vertical)&&(r.stem.horizontal=r.target.horizontal=="center"?i.centerLeft>=i.tooltipWidth?"right":i.centerRight>=i.tooltipWidth?"left":"center":r.target.horizontal=="right"?"left":"right"),(r.target.vertical!=n.target.vertical||r.target.horizontal!=n.target.horizontal)&&(r.stem.vertical=r.target.vertical=="center"?i.centerTop>=i.tooltipHeight?"bottom":i.centerBottom>=i.tooltipHeight?"top":i.centerTop>i.centerBottom?"bottom":"top":r.target.vertical=="top"?"bottom":"top"),r},r.prototype._collisionFit=function(n,i){var r=t.extend(!0,{},this.tooltipPos),s=!1,h=!1,e=1,o=1,l=null,a=t(this.model.containment).scrollLeft(),c,u,f,v,y;c=this.model.containment=="body"?document.documentElement.scrollTop||document.body.scrollTop:t(this.model.containment).scrollTop();u=this.containerSize.left;f=this.containerSize.top;(r.left<u||r.left+r.width>this.containerSize.width+a+u)&&(e=r.left<u?u:r.left+r.width>this.containerSize.width+a+u?r.left-(r.left+r.width-(this.containerSize.width+u)):1,s=!0);(r.top<f||r.top+r.height>this.containerSize.height+c+f)&&(o=r.top<f?f:r.top+r.height>this.containerSize.height+c+f?r.top-(r.top+r.height-(this.containerSize.height+f)):1,h=!0);t(this.tooltip).css({top:o!=1?o+"px":r.top+"px",left:e!=1?e+"px":r.left+"px",position:"absolute"});this._adjustArrow(n);l={left:this.arrowValue.left,top:this.arrowValue.top,height:this.model.tip.size.height,width:this.model.tip.size.width,display:t(this.tip).css("display")};this.tooltipPos.top=o=o!=1?o:r.top;this.tooltipPos.left=e=e!=1?e:r.left;v=t(this.tooltip).width();y=t(this.tooltip).height();(s||h&&l.display!="none")&&(this.model.isBalloon&&(s&&(this.arrowValue.left=this._horizontalAdjustment(n,i)),h&&(this.arrowValue.top=this._verticalAdjustment(n,i))),this.arrowValue.left==-this.model.tip.size.height||this.arrowValue.left==v?t(this.tip).css({left:this.arrowValue.left+"px",top:this.arrowValue.top+"px",display:"block"}):this.arrowValue.top==-this.model.tip.size.height||this.arrowValue.top==y?t(this.tip).css({left:this.arrowValue.left+"px",top:this.arrowValue.top+"px",display:"block"}):t(this.tip).css({left:this.arrowValue.left+"px",top:this.arrowValue.top+"px",display:"none"}));this._shadowEffect(this.model.showShadow,n)},r.prototype._horizontalAdjustment=function(n,i){var u={left:this.arrowValue.left,top:this.arrowValue.top},f,r;return t(this.tooltip).css({display:"block"}),f=n.target.horizontal!="center"?this.model.tip.size.height:this.model.tip.size.height,r=n.target.horizontal!="center"&&n.stem.horizontal=="left"?t(this.tip).offset().left:n.target.horizontal!="center"&&n.stem.horizontal=="right"?t(this.tip).offset().left+f:t(this.tip).offset().left,t(this.tooltip).css({display:"none"}),r>i.leftSpace&&r+f<i.leftSpace+this.targetPos.width?u.left:((r>i.leftSpace+this.targetPos.width||r<i.leftSpace)&&(u.left=i.leftSpace+this.targetPos.width/2-parseInt(this.tooltipPos.left.toString())),u.left)},r.prototype._verticalAdjustment=function(n,i){var u={left:this.arrowValue.left,top:this.arrowValue.top,height:this.model.tip.size.height,width:this.model.tip.size.width,display:this.arrowValue.display},f,r;return t(this.tooltip).css({display:"block"}),f=n.target.horizontal!="center"?this.model.tip.size.height:this.model.tip.size.height,r=n.target.horizontal=="center"&&n.stem.vertical=="top"?t(this.tip).offset().top:t(this.tip).offset().top+f,t(this.tooltip).css({display:"none"}),r>i.topSpace&&r<i.topSpace+this.targetPos.height?u.top:((r<i.topSpace||r+f>i.topSpace+this.targetPos.height)&&(u.top=i.topSpace+this.targetPos.height/2-parseInt(this.tooltipPos.top.toString())),u.top)},r.prototype._createHeader=function(){this.model.title!=null&&(ej.isNullOrUndefined(this.tooltipTitle)&&this._createTitle(),ej.isNullOrUndefined(this.tooltipContent)?t(this.tooltipHeader).appendTo(this.tooltipInter).addClass("e-tooltipHeader"):t(this.tooltipHeader).insertBefore(this.tooltipContent).addClass("e-tooltipHeader"));this.model.closeMode==ej.Tooltip.CloseMode.Sticky&&this._iconRender()},r.prototype._hideTooltip=function(){var n;if(this._isHidden=!0,n=this.model.animation.speed!=0?this.model.animation.speed:this.model.animation.effect==ej.Tooltip.Effect.Slide?200:this.model.animation.effect==ej.Tooltip.Effect.Fade?800:0,this.model.enabled==!0&&t(this.tooltip).css("display")=="block"){if(this.triggerEvents("beforeClose",{}))return;if(this.model.animation.effect==ej.Tooltip.Effect.Fade?t(this.tooltip).fadeOut(n):this.model.animation.effect==ej.Tooltip.Effect.Slide?t(this.tooltip).slideUp(n):t(this.tooltip).css({display:"none"}),t(this.tooltip).css("display")=="none"&&t(this.tooltip).attr("aria-hidden","true").removeClass("e-customAnimation"),this.triggerEvents("close",{}))return}},r.prototype._showTooltip=function(){var r,i,u,f,n,e;this._isHidden&&(r=this.model.animation.speed!=0?this.model.animation.speed:this.model.animation.effect==ej.Tooltip.Effect.Slide?200:this.model.animation.effect==ej.Tooltip.Effect.Fade?800:0,this._isHidden=!1,t(this.tooltip).css("display")=="none"&&this.model.enabled==!0&&(this.model.animation.effect==ej.Tooltip.Effect.Fade?t(this.tooltip).fadeIn(r):this.model.animation.effect==ej.Tooltip.Effect.Slide?t(this.tooltip).slideDown(r):t(this.tooltip).css({display:"block"}),t(this.tooltip).css("display")=="block"&&(i=t(this.tooltip[0]).parents(),u=t("body").children(),t(u).each(function(n,t){i.push(t)}),f=t(this.model.target).parents(),t(f).each(function(n,t){i.push(t)}),n=Math.max.apply(n,t.map(i,function(n){if(t(n).css("position")!="static")return parseInt(t(n).css("z-index"))||1})),!n||n<1e4?n=1e4:n+=1,t(this.tooltip).attr("aria-hidden","false").css({zIndex:n}),this.model.animation.effect==ej.Tooltip.Effect.None&&t(this.tooltip).addClass("e-customAnimation"),e=this._getScrollableParents(),this._on(e,"scroll",this._hideTooltip)),this.triggerEvents("open",{})))},r.prototype._getScrollableParents=function(){return t(this.element).parentsUntil("html").filter(function(){return t(this).css("overflow")!="visible"}).add(t(window))},r.prototype._tooltipAuto=function(){var n=this;this.timer=setTimeout(function(){n._hideTooltip()},n.model.autoCloseTimeout)},r.prototype._beforeOpenTooltip=function(n){this.positionTooltip=t.extend(!0,{},this.model.position.stem);this.positionTarget=t.extend(!0,{},this.model.position.target);this.targetElement=this.element;ej.isNullOrUndefined(this.model.target)||ej.isNullOrUndefined(t(n.currentTarget).attr("data-content"))||(this.model.content=t(n.currentTarget).attr("data-content"),this._setContent(this.model.content))},r.prototype._targetHover=function(n){if(this.isTrack=!0,this.model.enabled)if(this._isHidden||(ej.browserInfo().name=="msie"||ej.browserInfo().name=="edge")&&this.model.associate==ej.Tooltip.Associate.MouseFollow){if(this.tooltip.stop(!0,!0),this.triggerEvents("beforeOpen",{event:n})){this._isCancel=!0;return}this._isCancel=!1;this._beforeOpenTooltip(n);this.model.associate!=ej.Tooltip.Associate.MouseEnter&&this.model.associate!=ej.Tooltip.Associate.MouseFollow?(ej.isNullOrUndefined(this.model.target)?this._positionElement(this.element):this._positionElement(n.currentTarget),clearTimeout(this.timer),this._showTooltip(),this.model.closeMode==ej.Tooltip.CloseMode.Auto&&this._tooltipAuto(),n.type=="click"?this.triggerEvents("click",{event:n}):this.triggerEvents("hover",{event:n})):this.isTrack=!0}else ej.isNullOrUndefined(this.model.target)||this._positionElement(n.currentTarget)},r.prototype._onMouseOut=function(){this.model.enabled&&!this._isHidden&&(this.model.closeMode==ej.Tooltip.CloseMode.None&&this._hideTooltip(),clearTimeout(this.mouseTimer));this.isTrack=!1},r.prototype._onTooltipMouseEnter=function(){var n=this;this.model.enabled&&this.model.animation.effect==ej.Tooltip.Effect.None&&t(n.tooltip).css({display:"block"})},r.prototype._onTooltipMouseLeave=function(){var n=this;this.model.enabled&&this.model.animation.effect==ej.Tooltip.Effect.None&&n.model.closeMode==ej.Tooltip.CloseMode.None&&t(n.tooltip).css({display:"none"})},r.prototype._docTouchEndHandler=function(n){t(n.target).closest(".e-tooltip").length||this.model.closeMode!=ej.Tooltip.CloseMode.None||this._hideTooltip()},r.prototype._keyDown=function(n){var t=n.keyCode?n.keyCode:n.which?n.which:n.charCode;if(this.model.enabled)switch(t){case 27:n.preventDefault();this._hideTooltip()}},r}(ej.WidgetBase);window.ej.widget("ejTooltip","ej.Tooltip",new i);window.ejTooltip=null})(jQuery);ej.Tooltip.CloseMode={Auto:"auto",None:"none",Sticky:"sticky"};ej.Tooltip.Effect={Slide:"slide",Fade:"fade",None:"none"};ej.Tooltip.Trigger={Hover:"hover",Click:"click",Focus:"focus"};ej.Tooltip.Collision={Flip:"flip",FlipFit:"flipfit",None:"none",Fit:"fit"};ej.Tooltip.Associate={Window:"window",MouseFollow:"mousefollow",MouseEnter:"mouseenter",Target:"target",Axis:"axis"},function(n,t,i){t.widget("ejTreeView","ej.TreeView",{_rootCSS:"e-treeview",element:null,model:null,validTags:["ul","div"],_addToPersist:["expandedNodes","checkedNodes","selectedNodes"],_setFirst:!1,_requiresID:!0,defaults:{allowMultiSelection:!1,showCheckbox:!1,enableAnimation:!0,allowDragAndDrop:!1,htmlAttributes:{},allowDropChild:!0,allowDropSibling:!0,allowDragAndDropAcrossControl:!0,allowEditing:!1,allowKeyboardNavigation:!0,items:null,fields:{dataSource:null,query:null,tableName:null,child:null,id:"id",parentId:"parentId",text:"text",spriteCssClass:"spriteCssClass",expanded:"expanded",hasChild:"hasChild",selected:"selected",linkAttribute:"linkAttribute",imageAttribute:"imageAttribute",htmlAttribute:"htmlAttribute",imageUrl:"imageUrl",isChecked:"isChecked"},autoCheckParentNode:!1,loadOnDemand:!1,cssClass:"",template:null,enableRTL:!1,expandOn:"dblclick",enablePersistence:!1,enabled:!0,expandedNodes:[],checkedNodes:[],selectedNode:-1,selectedNodes:[],width:null,height:null,autoCheck:!0,enableMultipleExpand:!0,fullRowSelect:!1,sortSettings:{allowSorting:!1,sortOrder:"ascending"},nodeClick:null,beforeExpand:null,nodeExpand:null,beforeCollapse:null,nodeCollapse:null,beforeSelect:null,nodeSelect:null,nodeUnselect:null,nodeCheck:null,nodeUncheck:null,inlineEditValidation:null,beforeEdit:null,nodeEdit:null,keyPress:null,nodeDragStart:null,nodeDrag:null,nodeDragStop:null,nodeDropped:null,beforeAdd:null,nodeAdd:null,beforeDelete:null,nodeDelete:null,beforeCut:null,nodeCut:null,beforePaste:null,nodePaste:null,beforeLoad:null,loadSuccess:null,loadError:null,ready:null,create:null,destroy:null},dataTypes:{allowMultiSelection:"boolean",cssClass:"string",showCheckbox:"boolean",enableAnimation:"boolean",allowDragAndDrop:"boolean",allowDropChild:"boolean",allowDragAndDropAcrossControl:"boolean",allowEditing:"boolean",allowKeyboardNavigation:"boolean",autoCheckParentNode:"boolean",loadOnDemand:"boolean",enableRTL:"boolean",expandOn:"string",enablePersistence:"boolean",enableMultipleExpand:"boolean",fullRowSelect:"boolean",items:"data",fields:{dataSource:"data",query:"data",child:"data"},expandedNodes:"array",checkedNodes:"array",selectedNode:"number",selectedNodes:"array",htmlAttributes:"data",sortSettings:{allowSorting:"boolean",sortOrder:"enum"}},observables:["fields.dataSource"],dataSource:t.util.valueFunction("fields.dataSource"),_setModel:function(i){var r,l,s,h,c,e,f,u,o,a;for(r in i)switch(r){case"allowMultiSelection":this.model.allowMultiSelection=i[r];this.model.allowMultiSelection||(l=n(this._liList[this.model.selectedNodes[0]]),this._unselectAll(),this._isRender=!1,this._nodeSelectionAction(l),this._isRender=!0);break;case"cssClass":this._changeSkin(i[r]);break;case"fields":if(this._deepWatch&&!t.isNullOrUndefined(i[r].dataSource)&&JSON.stringify(this._oldDataSource)==JSON.stringify(typeof i[r].dataSource=="function"?i[r].dataSource():i[r].dataSource))return;this._unWireEvents();h=this.element.hasClass("e-js")?!1:!0;c=h?this.element.children("ul"):this.element;c.empty();this.model.fields==null||i[r]==null?this.model.fields=i[r]:this._extendFields(this.model.fields,i[r]);this.model.expandedNodes=[];this.model.checkedNodes=[];this.model.selectedNodes=[];this.model.selectedNode=-1;this._persistValues(this.model.expandedNodes,"expandedNodes");this._persistValues(this.model.checkedNodes,"checkedNodes");this._persistValues(this.model.selectedNodes,"selectedNodes");this._newDataSource=this.dataSource();!t.isNullOrUndefined(this.model.fields)&&this.dataSource()!=null?this._checkDataBinding():this._initialize();h&&(s=this.element.children(".e-treeview-ul"),c.append(s.children()),s.remove());break;case"allowDragAndDropAcrossControl":this.model.allowDragAndDropAcrossControl=i[r];this._enableDragDrop();break;case"enabled":this._enabledAction(i[r]);break;case"showCheckbox":i[r]?(this.model.showCheckbox=i[r],this._showCheckBox(),this.model.enabled||this.element.find(".nodecheckbox").ejCheckBox("disable")):(this.element.find(".e-item > div > .e-chkbox-wrap").remove(),this._updateCheckedNodes());break;case"autoCheck":this.model.autoCheck=i[r];break;case"autoCheckParentNode":this.model.autoCheckParentNode=i[r];break;case"expandedNodes":if(u=i[r].length,e=JSON.parse(JSON.stringify(this.model.expandedNodes)),u>0)for(this._expandNodes(i[r]),f=0,u=e.length;f<u;f++)i[r].indexOf(e[f])==-1&&this._collapseNode(n(this._liList[e[f]]));else u==0&&this._collapseAll();i[r]=this.model.expandedNodes;break;case"checkedNodes":if(this.model.showCheckbox)if(u=i[r].length,e=JSON.parse(JSON.stringify(this.model.checkedNodes)),u>0)for(this._checkedNodes(i[r]),f=0,u=e.length;f<u;f++)i[r].indexOf(e[f])==-1&&this._nodeUncheck(n(this._liList[e[f]]).find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0]);else u==0&&this._uncheckAll();i[r]=this.model.checkedNodes;break;case"expandOn":this._off(this.element,this._isDevice&&n.isFunction(n.fn.tap)?this._touchExpandOn:this.model.expandOn,this._expandEventHandler);this._assignTouchExpandOn(i[r]);this._on(this.element,this._isDevice&&n.isFunction(n.fn.tap)?this._touchExpandOn:i[r],this._expandEventHandler);break;case"allowEditing":this._preventEditable();i[r]&&this._allowEditable();break;case"allowKeyboardNavigation":o=i[r]?"_on":"_off";this[o](this.element,"keydown",this._KeyPress);break;case"allowDragAndDrop":this.model.allowDragAndDrop=i[r];i[r]?this._addDragableClass():this._preventDraggable();break;case"allowDropChild":this.model.allowDropChild=i[r];i[r]?this._addDragableClass():this._preventDropChild();break;case"allowDropSibling":this.model.allowDropSibling=i[r];i[r]?this._addDragableClass():this._preventDropSibling();break;case"enableRTL":this.model.enableRTL=i[r];a=this.element.is("UL")?this.element.parent(".e-treeview-wrap"):this.element;o=this.model.enableRTL?"addClass":"removeClass";a[o]("e-rtl");break;case"height":this.element.is("ul")?this.element.parent().height(i[r]):this.element.height(i[r]);break;case"width":this.element.is("ul")?this.element.parent().width(i[r]):this.element.width(i[r]);break;case"selectedNode":case"selectedNodes":this.model.selectedNodes=r=="selectedNode"?[i[r]]:i[r];this.element.find("a.e-text.e-active").removeClass("e-node-focus e-active").closest("li").attr("aria-selected",!1);this._doSelectNodes(this.model.selectedNodes,!1);r!="selectedNode"&&(i[r]=this.model.selectedNodes);break;case"htmlAttributes":this._addAttr(i[r]);break;case"enableMultipleExpand":i[r]||this.collapseAll();this.model.enableMultipleExpand=i[r];break;case"sortSettings":n.extend(this.model.sortSettings,i[r]);t.isNullOrUndefined(this.model.fields)||this.dataSource()==null||(this.model.expandedNodes=[],this.model.checkedNodes=[],this.model.selectedNodes=[],this._checkDataBinding());break;case"fullRowSelect":this._wholeRowEvents("_off");this.model.fullRowSelect=i[r];this.model.fullRowSelect?this._addWholeRowWrap():this._removeWholeRowWrap();this._doWholeRowAction();this._wholeRowEvents("_on")}},_destroy:function(){this.element.html("");this._cloneElement.removeClass("e-treeview e-js e-treeview-wrap");var t=this.element.is("UL")?this.element.parent(".e-treeview-wrap"):this.element;t.replaceWith(this._cloneElement);n("#"+this._id+"_WaitingPopup").remove();window.localStorage?(window.localStorage.removeItem(this._id+"_childNodes"),window.localStorage.removeItem(this._id+"_persistedValues")):window.cookie&&(document.cookie=this._id+"_childNodes=; expires=Thu, 01 Jan 1970 00:00:00 UTC",document.cookie=this._id+"_persistedValues=; expires=Thu, 01 Jan 1970 00:00:00 UTC")},_init:function(){var i,r,n;this._cloneElement=this.element.clone();this._dataSource=[];this._fragment=[];this._templateType="";this._indexID=0;this._newDataSource=this.dataSource();this._id=this.element.prop("id");this._treeList=[];this._isTextbox=!1;this._isDevice=this._checkDevice();this._deepWatch=this.element.attr("e-deepwatch")==="true"&&!(this.dataSource()instanceof t.DataManager)?!0:!1;i=t.browserInfo();this._isIE8=i.name=="msie"&&i.version=="8.0"?!0:!1;this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this.dataSource())));this._assignTouchExpandOn(this.model.expandOn);this.model.enablePersistence&&(r=this._getCookies("_persistedValues"),r||(n={selectedNodes:[],expandedNodes:[],checkedNodes:[]},n=this._updatePersistAttr(n),this._setCookies("_persistedValues",JSON.stringify(n))));t.isNullOrUndefined(this.model.fields)||this.dataSource()==null?(this._initialize(),this._completeRendering()):this._checkDataBinding()},_initialize:function(){this._cutNode=null;this._beforeEditText=null;this._CurrenctSelectedNodes=[];this._isLoaded=!1;this._renderMultiTouchDialog();this.element.is("ul")?this._createWrapper():(this.element.addClass("e-treeview-wrap e-widget").attr("tabindex",0).children("ul:first").addClass("e-ul e-box").attr("role","tree"),this.model.width!=null&&this.element.width(this.model.width),this.model.height!=null&&this.element.height(this.model.height),this.model.enableRTL&&this.element.addClass("e-rtl"),this.model.cssClass!=null&&this.element.addClass(this.model.cssClass),this._addAttr(this.model.htmlAttributes));this._elementSettings();this._beforeBaseClass();this.dataSource()==null&&(this._addBaseClass(),this._controlRender());this._addWholeRowWrap();this._isIE8&&(this.element.is("UL")?this.element.parent(".e-treeview-wrap").addClass("e-ie8"):this.element.addClass("e-ie8"));this._finalize()},_completeRendering:function(){this._treeList.length!=0||this._isLoaded||(this._finalizeNode(),this._enabledAction(this.model.enabled),this._triggerEvent("ready",{element:this.element[0]}),this._isLoaded=!0)},_addWholeRowWrap:function(){this.model.fullRowSelect&&(this.element.is("UL")?this.element.parent(".e-treeview-wrap").addClass("e-fullrow-wrap"):this.element.addClass("e-fullrow-wrap"))},_removeWholeRowWrap:function(){this.element.is("UL")?this.element.parent(".e-treeview-wrap").removeClass("e-fullrow-wrap"):this.element.removeClass("e-fullrow-wrap")},_doWholeRowAction:function(){var t,r,i,u;if(this.model.fullRowSelect)for(t=0,r=this._liList.length;t<r;t++)i=n(this._liList[t]),i[0]!=null&&(u=i.find("> .e-text-wrap"),this._renderWholeRow(i,u));else this.element.find(".e-fullrow").remove()},_renderWholeRow:function(t,i){if(t&&this.model.fullRowSelect){var r=document.createElement("div");r.setAttribute("class","e-fullrow");i?n(r).insertAfter(i):t[0].appendChild(r)}},_extendFields:function(t,i){if(t==null||i==null)t=i;else if(t.child==null||i.child==null)n.extend(t,i);else{this._extendFields(t.child,i.child);var r=t.child;n.extend(t,i);n.extend(t.child,r)}},_checkDevice:function(){return t.isDevice()&&t.isTouchDevice()},_assignTouchExpandOn:function(n){this._touchExpandOn=n=="dblclick"?"doubletap":n=="click"?"tap":n},_renderMultiTouchDialog:function(){var i,r,u;this._customPop=t.buildTag("div.e-fe-popup","",{display:"none"});i=t.buildTag("div.e-content");r=t.buildTag("div.e-downtail e-tail");this.model.allowMultiSelection&&(u=t.buildTag("span.e-rowselect e-icon"),i.append(u));this._customPop.append(i);this._customPop.append(r);this.element.is("ul")||this.element.append(this._customPop);this._on(i,this._isDevice&&n.isFunction(n.fn.tap)?"touchstart":"mousedown",this._popupClick)},_popupClick:function(){var n=this._customPop.find(".e-rowselect");n.hasClass("e-spanclicked")?this._hidePopup():(this._isPopup=!0,n.addClass("e-spanclicked"))},_hidePopup:function(){this._customPop!=null&&this._customPop.is(":visible")&&(this._customPop.find(".e-rowselect").removeClass("e-spanclicked"),this._customPop.hide(),this._isPopup=!1)},_elementSettings:function(){var n=this.element.is("UL")?this.element.parent(".e-treeview-wrap"):this.element;this.element.is("ul")&&n.attr("role","tree")},_beforeBaseClass:function(){var t=this.element.is("UL")?this.element.parent(".e-treeview-wrap")[0]:this.element[0];this._ulList=n(t.querySelectorAll("ul"));this._liList=n(t.querySelectorAll("li"))},_createWrapper:function(){var n=this.wrapper=t.buildTag("div.e-treeview-wrap e-widget "+this.model.cssClass,"","",{tabindex:0});this.model.width!=null&&n.width(this.model.width);this.model.height!=null&&n.height(this.model.height);this.model.enableRTL&&n.addClass("e-rtl");n.insertAfter(this.element);n.append(this.element.addClass("e-ul e-box").attr("tabindex",0));this.element.is("ul")&&n.append(this._customPop);this._addAttr(this.model.htmlAttributes)},_addAttr:function(t){var i=this;n.map(t,function(n,t){t=="class"?i.element.addClass(n):t=="disabled"&&n=="disabled"?i._enabledAction(!1):i.element.attr(t,n)})},_changeSkin:function(n){if(this.model.cssClass!=n){var t=this.element.is("UL")?this.element.parent(".e-treeview-wrap"):this.element;t.removeClass(this.model.cssClass).addClass(n);t.find(".e-item > div > .e-chkbox-wrap").removeClass(this.model.cssClass).addClass(n);this._waitingPopup&&this._waitingPopup.option("cssClass",n)}},_enabledAction:function(n){this.model.enabled=n;n?(this.element.removeClass("e-disable"),this._wireEvents()):(this.element.addClass("e-disable"),this._unWireEvents())},_checkDataBinding:function(){this.dataSource()instanceof t.DataManager?this._initDataSource():(this._ensureDataSource(this.dataSource()),this._initialize(),this._completeRendering())},_initDataSource:function(){this.element.ejWaitingPopup({cssClass:this.model.cssClass});this._waitingPopup=this.element.ejWaitingPopup("instance");this._waitingPopup.maindiv.addClass("e-tree-popup");var n=this,t,r;this.element.ejWaitingPopup("refresh");this.element.ejWaitingPopup("show");this.dataSource().ready!=i?this.dataSource().ready.done(function(t){n._initAfterDataSource(t)}):(r=this._columnToSelect(this.model.fields),t=this.dataSource().executeQuery(r),t.done(function(t){n._initAfterDataSource(t)}))},_initAfterDataSource:function(n){var i=this;i.element.ejWaitingPopup("hide");i.retriveData=n.xhr&&n.xhr.responseJSON&&n.xhr.responseJSON.d?n.xhr.responseJSON.d:n.result?n.result:[];i._typeOfFieldId=i.retriveData[0]?(typeof t.getObject(i.model.fields.id,i.retriveData[0])).toLowerCase():"";i._ensureDataSource(i.retriveData);i._newDataSource=JSON.parse(JSON.stringify(i.retriveData));i._initialize();i.dataSource().dataSource.offline||!i.model.loadOnDemand&&t.isNullOrUndefined(i.model.fields.child)||(i._templateType=2);(i.model.loadOnDemand||t.isNullOrUndefined(i.model.fields.child))&&i._completeRendering()},_columnToSelect:function(n){var u=[],r=t.Query(),i;if(n.query||t.isNullOrUndefined(n.tableName))r=n.query?n.query.clone():r;else{for(i in n)i!=="tableName"&&i!=="child"&&i!=="dataSource"&&n[i]&&u.push(n[i]);u.length>0&&r.select(u);this.dataSource().dataSource.url.match(n.tableName+"$")||t.isNullOrUndefined(n.tableName)||r.from(n.tableName)}return r},_ensureDataSource:function(n){n=this._getSortAndFilterList(this.model.fields,n);this.currentSelectedData=n;this._renderTemplate(n);this.element.is("ul")?this.element.html(this._fragment.firstChild.children):this.element.html(this._fragment)},_getTemplateType:function(n,r){for(var u=0,f=n.length;u<f;u++){if(t.getObject(r.parentId,n[u])!==i||t.getObject(r.hasChild,n[u])!==i)return 1;if(n[u].hasOwnProperty("child"))return 2}return 1},_groupingObjects:function(n,t){for(var u,r={},f=[],i=0,e=n.length;i<e;i++)u=JSON.stringify(t(n[i])),r[u]=r[u]||[],r[u].push(n[i]);for(i in r)f.push(r[i]);return f},_renderTemplate:function(n){this._onlineData=!1;this._loadOnDemandNodes=!1;var i=this;this._templateType=this._getTemplateType(n,this.model.fields);this._dataSource=this._templateType==1?this._groupingObjects(n,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(i.model.fields.parentId,n)].toString()]}):n;this._templateNodeCreation(n,this.model.fields)},_templateNodeCreation:function(i,r){var o,u,f,s,e;if(this._fragment=document.createDocumentFragment(),o=document.createElement("ul"),this._fragment.appendChild(o),u=this._fragment.firstChild,(this._onlineData||this._loadOnDemandNodes)&&(u.className="e-treeview-ul",u.setAttribute("role","group"),n(u).attr("style","display:none")),this.dataSource()!=null){for(f=0,s=i.length;f<s;f++)i[f]&&(e=t.getObject(this.model.fields.parentId,i[f]),(t.isNullOrUndefined(e)||e==0||this._loadOnDemandNodes)&&u.appendChild(this._genTemplate(i[f],r)));n(u).find(".e-item:first-child:not(:last-child)").addClass("first");n(u).find(".e-item:last-child").addClass("last")}},_onlineDataSource:function(t,i,r){this._loadOnDemandNodes=!0;this._templateNodeCreation(t,r);var u=this.element.find(".e-item#"+i);u[0]!=null&&(n(u[0]).append(this._fragment),u.children().find("> div:first").addClass("e-icon e-plus"),this._finalizeLoadOnDemand(u));this._onlineData=!1},_genTemplate:function(i,r){var nt=document.createDocumentFragment(),u,tt,e,o,s,l,a,v,y,p,h,w,f,it,rt,b,k,d,g,c,ut;if(tt=document.createElement("li"),nt.appendChild(tt),u=nt.firstChild,u.id=t.getObject(r.id,i),u.id&&u.id!="undefined"||(u.id=""),u.setAttribute("role","treeitem"),l=t.getObject(r.htmlAttribute,i),l&&this._setAttributes(l,u),u.className+=" e-item",o=document.createElement("a"),a=t.getObject(r.imageUrl,i),v=t.getObject(r.spriteCssClass,i),a?(e=document.createElement("img"),e.className="e-align",e.src=a,y=t.getObject(r.imageAttribute,i),y&&this._setAttributes(y,e)):v&&(e=document.createElement("span"),e.className=v),this.model.template){if(e&&o.appendChild(e),typeof n.fn.render!="function")throw"Error : JsRender dependecy script missing";o.innerHTML+=this._renderEjTemplate(this.model.template,i)}else p=t.getObject(r.text,i),p?n(o).text(p):n(o).text("undefined"),e&&o.insertBefore(e,o.lastChild);if(h=t.getObject(r.linkAttribute,i),h&&(typeof h=="object"?this._setAttributes(h,o):o.href=h),u.appendChild(o),t.getObject(r.expanded,i)&&(u.className+=" expanded"),t.getObject(r.selected,i)&&(u.className+=" selected"),w=t.getObject(r.isChecked,i),t.isNullOrUndefined(w)||(u.className+=w?" checked":" unchecked"),u.setAttribute("aria-selected",!1),u.setAttribute("aria-expanded",!1),this.dataSource()instanceof t.DataManager)this._updateElement(u,!0),this.model.showCheckbox&&this._checkboxOnTemplate(u.children[0]),this.model.loadOnDemand?(t.getObject(r.hasChild,i)||i.hasOwnProperty("child"))&&(u.children[0].firstChild.className="e-icon e-plus"):!t.isNullOrUndefined(r.child)&&r.child.dataSource instanceof t.DataManager?(f=this,rt=r.child.parentId?r.child.parentId:f.model.fields.parentId,b,b=r.id?r.id:this.model.fields.id,this._treeList.push("false"),k=t.getObject(b,i),it=this._executeDataQuery(r.child,rt,this._typeOfFieldId=="number"?parseInt(k):k),it.done(function(n){if(f._treeList.pop(),s=n.xhr&&n.xhr.responseJSON&&n.xhr.responseJSON.d?n.xhr.responseJSON.d:n.result?n.result:[],s=f._getSortAndFilterList(r.child,s),s&&s.length>0){f._onlineData=!0;var t=s[0][r.child.parentId];f._updateRemoteData(f._newDataSource,t,s,f.model.fields);f._onlineDataSource(s,t,r.child)}f._treeList.length==0&&f._completeRendering()})):t.isNullOrUndefined(this.model.fields.child)&&this._childNodeCreation(i,u,r);else if(this.model.loadOnDemand){if(this._updateElement(u,!0),(t.getObject(r.hasChild,i)||i.hasOwnProperty("child"))&&(u.children[0].firstChild.className="e-icon e-plus"),this.model.showCheckbox&&this._checkboxOnTemplate(u.children[0]),t.getObject(r.expanded,i)&&this._childNodeCreation(i,u,r),this.model.enablePersistence&&(d=this._getCookies("_childNodes"),d))for(g=JSON.parse(d),c=0,ut=g.length;c<ut;c++)if(g[c].toString()==t.getObject(r.id,i).toString()){this._childNodeCreation(i,u,r);break}}else this._onlineData||(this._updateElement(u,!0),this.model.showCheckbox&&this._checkboxOnTemplate(u.children[0]),this._childNodeCreation(i,u,r));return u},_childNodeCreation:function(i,r,u){var f,s,h,o,e,c;if(f=this._templateType==2?!t.isNullOrUndefined(i.child)&&i.child.length>0&&i.child:this._getChildNodes(this._dataSource,{id:t.getObject(u.id,i)}),!t.isNullOrUndefined(f)&&f.length>0){for(r.children[0].firstChild.className="e-icon e-plus",s=document.createDocumentFragment(),h=document.createElement("ul"),s.appendChild(h),o=s.firstChild,o.className="e-treeview-ul",o.setAttribute("role","group"),n(o).attr("style","display:none"),e=0,c=f.length;e<c;e++)f[e]&&t.getObject(this.model.fields.parentId,[f[e]])!=0&&o.appendChild(this._genTemplate(f[e],u));r.appendChild(h)}},_checkboxOnTemplate:function(n){n.parentElement.id==""&&(n.parentElement.id=this._id+"_"+this._indexID,this._indexID++);var t=document.createElement("input");t.setAttribute("type","checkbox");t.setAttribute("class","nodecheckbox");t.setAttribute("name",this._id+"_Checkbox_"+n.parentElement.id);t.setAttribute("value",n.parentElement.id);n.insertBefore(t,n.children[1])},_updateElement:function(t,r){var f,o,u,s,h=t.firstChild,c,l,a,e;h&&(c=h.nodeName,c=="SPAN"||c=="IMG"?(s=h,u=t.lastChild):u=t.lastChild,u&&(a=u.lastChild!=null?u.lastChild.nodeValue:"",l=n.trim(u.innerHTML),e=n(u).clone()[0],n(u).remove(),e.className+=" e-text CanSelect",e.innerHTML=l,t.innerHTML=""),f=document.createElement("div"),f.setAttribute("class","e-text-wrap"),f.setAttribute("role","presentation"),r&&(o=document.createElement("div"),o.setAttribute("role","presentation"),f.appendChild(o)),s&&f.appendChild(s),f.appendChild(e),n(t).prop("name")==i&&n(t).prop("name",n.trim(a)),t.appendChild(f),this._renderWholeRow(n(t)))},_setAttributes:function(t,i){for(var r in t)n(i).attr(r,t[r])},_addDragableClass:function(){this.model.allowDragAndDrop&&(this._anchors=this._liList.map(function(){return n("a.e-text",this)[0]}),this._anchors.addClass("e-draggable e-droppable"),this._enableDragDrop(),this._on(this.element,"mouseup touchstart pointerdown MSPointerDown",this._anchors,this._focusElement),this._on(this.element,"focusout",this._anchors,this._blurElement))},_addBaseClass:function(){this._ulList.addClass("e-treeview-ul").attr("role","group");this._liList.addClass("e-item").attr("role","treeitem");this.element.is("ul")||this.element.find("ul:first").removeClass("e-treeview-ul").addClass("e-ul")},_controlRender:function(){var s=this.element,h,e,r,f,c,l,a,o,y,v,u,p;if(s!=null){for(h=s.find(".e-item"),e=0;e<h.length;e++)r=n(h[e]),a=r.children("ul.e-treeview-ul")[0],a&&n(r.children("ul.e-treeview-ul")[0]).remove(),o=r.children("a")[0],o?(l=n.trim(n(o).text()),f=n(o).clone(),n(o).remove(),c=r.clone(),n(f).prepend(c.children()),n(f).addClass("e-text CanSelect"),r.html("")):(l=n.trim(this._getText(r)),c=r.clone(),r.html(""),f=t.buildTag("a.e-text CanSelect","","",""),f.append(c.children()),f[0].innerHTML+=l),y=t.buildTag("div","",{},{role:"presentation"}),v=t.buildTag("div.e-text-wrap","",{},{role:"presentation"}),n(v).append(y).append(f),r.prepend(v),this._renderWholeRow(r),a&&r.append(a),r.prop("name")==i&&r.prop("name",l),this.model.showCheckbox&&this._checkboxOnTemplate(h[e].children[0]);this.model.showCheckbox&&s.find(".nodecheckbox").ejCheckBox({cssClass:this.model.cssClass,change:this._checkedChange})}u=s.find(".e-item");u.find(">ul").hide();p=u.find(".e-text");u.filter(".e-item:last-child").addClass("last");n(u[0]).addClass("first");n(u[0]).hasClass("first")&&n(u[0]).hasClass("last")&&n(u[0]).removeClass("first");n(u.filter(":has(ul)")).each(function(){n(this).attr("aria-expanded",!1).attr("aria-selected",!1);var t=n(this).children("ul:first");n(t).is(":hidden")?n(this).find("> div > div:first").removeClass("e-icon e-minus").addClass("e-icon e-plus"):n(this.childNodes[1]).removeClass("e-icon e-plus").addClass("e-icon e-minus")})},_getText:function(t){return n(t).clone().children().remove().end().text()},_expandNodes:function(i,r){for(var e,o=i.length,u=[],f=0;f<o;f++)(u=r?this._getNodeByID(i[f]):n(this._liList[i[f]]),t.isNullOrUndefined(u))||!this.model.enableMultipleExpand&&(e=u.siblings().find(">div>.e-minus").closest(".e-item"),e.length>0)||this.isExpanded(u)||(!this.model.loadOnDemand||this.dataSource()instanceof t.DataManager?this._expandNode(u):this._createChildNodesWhenExpand(u))},_checkedNodes:function(t){var r,i,u;for(t.length>0&&this._removeField(this._newDataSource,this.model.fields,"isChecked"),i=0,u=t.length;i<u;i++)r=n(this._liList[t[i]]),r[0]!=null&&this._nodeCheck(r.find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0])},_finalize:function(){this.model.showCheckbox&&this.element.find(".e-item > div .nodecheckbox").ejCheckBox({cssClass:this.model.cssClass,change:this._checkedChange});this.model.allowEditing&&this._allowEditable()},_finalizeNode:function(){var a,h,r,o,c,y;this._isRender=!1;this._allowOnDemand=!0;var v=this.element,f=this._getCookies("_persistedValues"),i=[],u=[],l,e,s;if(!(this.model.expandedNodes instanceof Array&&this.model.expandedNodes.length>0))for(l=v.find("li.expanded"),o=l.length,r=0;r<o;r++)(a=n(l[r]),!this.model.enableMultipleExpand&&(h=a.siblings().find(">div>.e-minus").closest(".e-item"),h.length>0))||this._expandNode(a);if(f&&(e=JSON.parse(f),i=e.expandedNodes,u=[]),i&&i.length>0&&!t.isNullOrUndefined(this.model.fields)&&this.dataSource()!=null){for(r=0,o=i.length;r<o;r++)if(u=this.element.find(".e-item#"+i[r]),u[0]!=null){if(!this.model.enableMultipleExpand&&(h=u.siblings().find(">div>.e-minus").closest(".e-item"),h.length>0))continue;!this.model.loadOnDemand||this.dataSource()instanceof t.DataManager?this._expandNode(u):this._createChildNodesWhenExpand(u)}}else s=JSON.parse(JSON.stringify(this.model.expandedNodes)),this._expandNodes(s);if(this.model.showCheckbox)if(f&&(e=JSON.parse(f),i=e.checkedNodes,u=[]),i&&i.length>0&&!t.isNullOrUndefined(this.model.fields)&&this.dataSource()!=null)for(this._removeField(this._newDataSource,this.model.fields,"isChecked"),r=0,o=i.length;r<o;r++)u=this.element.find(".e-item#"+i[r]),u[0]!=null&&this._nodeCheck(u.find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0]);else s=JSON.parse(JSON.stringify(this.model.checkedNodes)),this._checkedNodes(s);this.model.checkedNodes instanceof Array&&this.model.checkedNodes.length>0||this.model.showCheckbox&&this._isCheckedAction();c=!1;f&&(e=JSON.parse(f),i=e.selectedNodes,c=!0);(!f||i&&i.length==0)&&(i=this.model.selectedNodes.length>0?this.model.selectedNodes:this.model.selectedNode==-1?[]:[this.model.selectedNode],c=!1);y={ctrlKey:!0};i&&i.length>0?this._doSelectNodes(i,c):this._isSelectedAction(y);this._isRender=!0;this._allowOnDemand=!1;v.find(".e-item.checked, .e-item.expanded, .e-item.selected").removeClass("checked expanded selected")},_doSelectNodes:function(t,i){for(var u,f={ctrlKey:!0},r=0,e=t.length;r<e;r++)if(u=i?this._getNodeByID(t[r]):n(this._liList[t[r]]),u[0]!=null&&this._nodeSelectionAction(u,f),!this.model.allowMultiSelection)break},_doUnselectNodes:function(n){for(var i,t=0,r=n.length;t<r;t++)if(i=this._getNodeByID(n[t]),i[0]!=null&&this._nodeUnSelectionAction(i),!this.model.allowMultiSelection)break},_updateSelectedNode:function(){var t=n(this._liList).find(".e-text.e-active").closest(".e-item"),r,u,f;if(this.model.selectedNodes=[],this.model.allowMultiSelection||(this.model.selectedNode=null),t[0]==i||t.length<=0){this._persistValues(this.model.selectedNodes,"selectedNodes");return}if(this.model.allowMultiSelection){for(r=0,u=t.length;r<u;r++)f=n(this._liList).index(t[r]),this.model.selectedNodes.push(f);this._persistValues(this.model.selectedNodes,"selectedNodes")}else this._isRender=!1,this._nodeSelectionAction(n(t[0])),this._isRender=!0},_setCookies:function(n,i){window.localStorage?window.localStorage.setItem(this._id+n,i):document.cookie&&t.cookie.set(this._id+n,i)},_getCookies:function(n){return window.localStorage?window.localStorage.getItem(this._id+n):window.cookie?t.cookie.get(this._id+n):void 0},_updateCheckedNodes:function(){for(var r=[],t=this.element.find(".e-item > div > .e-chkbox-wrap > .nodecheckbox.checked").closest(".e-item"),i=0;i<t.length;i++)r.push(n(this._liList).index(t[i]));(r.length>0||t.length==0)&&(this.model.checkedNodes=r);t.length==0&&this.model.checkedNodes.push(-1);this._persistValues(this.model.checkedNodes,"checkedNodes")},_updateExpandedNodes:function(){var t,r=[],i,u;for(t=this.element.find(".e-item > div > .e-minus").closest(".e-item").addClass("e-collapse"),i=0,u=t.length;i<u;i++)r.push(n(this._liList).index(t[i]));(r.length>0||t.length==0)&&(this.model.expandedNodes=r);t.length==0&&this.model.expandedNodes.push(-1);this._persistValues(this.model.expandedNodes,"expandedNodes")},_isCheckedAction:function(){for(var r,u,f,i=this.element.find(".e-item.checked"),t=0;t<i.length;t++)if(r=n(i[t]).find(".e-item"),u=n(i[t]).find(".e-item.unchecked"),r.length==0||!(r.length>0&&u.length==r.length)||!this.model.autoCheck)for(this._nodeCheck(n(i[t]).find("> div > .e-chkbox-wrap > input.nodecheckbox:first")[0]),f=0;f<u.length;f++)this._nodeUncheck(n(u[f]).find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0]);this.element.find(".e-item.checked, .e-item.unchecked").removeClass("checked unchecked")},_isExpandedAction:function(){for(var i,u,r=this.element.find("li.expanded"),f=r.length,t=0;t<f;t++)(i=n(r[t]),!this.model.enableMultipleExpand&&(u=i.siblings().find(" > div > .e-minus").closest(".e-item"),u.length>0))||this._expandNode(i);this.element.find(".e-item.expanded").removeClass("expanded")},_isSelectedAction:function(t){for(var r=this.element.find(".e-item.selected"),i=0,u=r.length;i<u;i++)if(r[i]!=null&&this._nodeSelectionAction(n(r[i]),t),!this.model.allowMultiSelection)break;this.element.find(".e-item.selected").removeClass("selected")},_checkedChange:function(t){if(t.isInteraction){var i=this.element.closest(".e-treeview.e-js").data("ejTreeView"),r=t.isChecked?"_nodeCheck":"_nodeUncheck";i[r](n(this.element)[0],t)}},_doClickAnimation:function(t){var r=n(t.target);r!=i&&t.type!=i&&(r.addClass("e-animate"),r.is("A")&&r.hasClass("e-text")&&r.closest(".e-text-wrap").addClass("e-animate"))},_ClickEventHandler:function(i){var y=this,u,r=n(i.target),h=r.closest(".e-item").find("> div > div:first"),c,l,e,f,o,a,s,v;if(this._isPopup=!1,h&&!h.hasClass("e-process")&&(u=r.closest(".e-item"),!u.hasClass("e-node-disable"))){if(this.element.find(".e-animate").removeClass("e-animate"),this._doClickAnimation(i),c=u[0]!=null?u[0].getAttribute("id"):"",this._triggerEvent("nodeClick",{event:i,currentElement:r[0],id:c,parentId:u.closest("ul").closest(".e-item").attr("id")}),!t.isNullOrUndefined(r)&&r.is("DIV"))if(r.hasClass("e-plus")||r.hasClass("e-minus"))if(l=null,r.is("SPAN")&&(r=r.parent("div").find("div:first")),l=u.children("ul:first"),o=this.isChildLoaded(u),!o&&this.model.loadOnDemand){if(r.removeClass("e-plus").addClass("e-load"),this._checkboxChecked=r.parent().find(".nodecheckbox").hasClass("checked"),f=this._getNodeDetails(u),e={currentElement:u,targetElement:r[0],id:f.id,value:f.text,parentId:f.parentId,isChildLoaded:o,hasParent:!0,async:!0},this._isEventTriggered=!0,this._triggerEvent("beforeExpand",e))return!1;this._loadOnDemand(e,r[0])}else r.hasClass("e-plus")?this._expandNode(u):this._collapseNode(u);else this.model.fullRowSelect&&(r.hasClass("e-fullrow")||r.hasClass("e-text-wrap"))&&(r=r.closest(".e-item").find("> .e-text-wrap .e-text"));r.is("A")||r.hasClass("input-text")||(r=r.closest(".e-text"));!t.isNullOrUndefined(r)&&r.is("A")&&r.hasClass("CanSelect")&&(i&&i.pointerType=="touch"&&this._customPop!=null&&this.model.allowMultiSelection?(a=n(i.target),this._customPop.is(":visible")||this._customPop.show(),this._customPop.is(":visible")&&!this._customPop.find(".e-rowselect").hasClass("e-spanclicked")?(s=a.offset(),this._customPop.offset({left:s.left,top:s.top-40})):i.ctrlKey=!0):this._hidePopup(),r.hasClass("e-active")?this.model.allowMultiSelection&&this._nodeUnSelectionAction(r.closest(".e-item"),i):this._nodeSelectionAction(r.closest(".e-item"),i))}v=["INPUT","BUTTON","TEXTAREA","SELECT"];i.target&&v.indexOf(i.target.tagName)<0&&this.element.focus()},_getChildTables:function(n,i,r){if(!t.isNullOrUndefined(n.child))return i==r?n.child:this._getChildTables(n.child,i,r+1)},_loadOnDemand:function(i){var r,e,u,f=this,o;if(this.dataSource()instanceof t.DataManager){if(e=i.currentElement.parents("ul.e-treeview-ul").length,u=this._getChildTables(f.model.fields,e,1),t.isNullOrUndefined(u)&&t.isNullOrUndefined(this.model.fields.child)&&(u=this.model.fields),!u){n(i.targetElement).hasClass("e-load")&&n(i.targetElement).removeClass(n(i.targetElement).hasClass("e-plus")||n(i.targetElement).hasClass("e-minus")?"e-load":"e-icon e-load");return}o=this._executeDataQuery(u,u.parentId,this._typeOfFieldId=="number"?parseInt(i.currentElement[0].id):i.currentElement[0].id);o.done(function(e){if(r=e.xhr&&e.xhr.responseJSON&&e.xhr.responseJSON.d?e.xhr.responseJSON.d:e.result?e.result:[],r=f._getSortAndFilterList(u,r),r.length>0){f._onlineData=!0;var o=t.getObject(u.parentId,r[0]);f._updateRemoteData(f._newDataSource,o,r,f.model.fields);f._loadChildNodeWhenOnDemand(r,i,u)}else n(i.targetElement).hasClass("e-load")&&n(i.targetElement).removeClass(n(i.targetElement).hasClass("e-plus")||n(i.targetElement).hasClass("e-minus")?"e-load":"e-icon e-load")})}else r=this._getChildNodes(this._dataSource,i),!t.isNullOrUndefined(r)&&r.length>0?setTimeout(function(){f._createSubNodesWhenLoadOnDemand(r,i.targetElement,f.model.fields)},400):n(i.targetElement).hasClass("e-load")&&n(i.targetElement).removeClass(n(i.targetElement).hasClass("e-plus")||n(i.targetElement).hasClass("e-minus")?"e-load":"e-icon e-load")},_loadChildNodeWhenOnDemand:function(n,i,r){var u=this;!t.isNullOrUndefined(n)&&n.length>0&&setTimeout(function(){u._createSubNodesWhenLoadOnDemand(n,i.targetElement,r)},100)},_createSubNodesWhenLoadOnDemand:function(t,i,r){this._loadOnDemandNodes=!0;this._templateNodeCreation(t,r);n(this._fragment.firstChild).attr("style","display:none");this._fragment.firstChild.className="e-treeview-ul";this._fragment.firstChild.setAttribute("role","group");i.parentNode.parentNode.appendChild(this._fragment);var u=n(i).closest(".e-item");u.attr({"aria-expanded":!1,"aria-expanded":!0});n(i).removeClass("e-load").addClass("e-plus");this._expandNode(u);this._finalizeLoadOnDemand(u)},_finalizeLoadOnDemand:function(n){var r,u,i,f;this._beforeBaseClass();this._isRender=!1;this.model.showCheckbox&&(n.children("ul").find("li > div > input.nodecheckbox").ejCheckBox({cssClass:this.model.cssClass,change:this._checkedChange}),r=n.children("ul").find(".e-item"),u=n.children("ul").find(".e-item.unchecked"),u.length>=0&&u.length!=r.length&&this._checkboxChecked&&this.model.autoCheck?r.not(".unchecked").addClass("checked"):u.length==r.length&&this.isNodeChecked(n)&&this._nodeUncheck(n.find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0]),this._isLoaded&&(this._isCheckedAction(),this._updateCheckedNodes()));this._isRender=!0;this._addDragableClass();this._preventEditable();this.model.allowEditing&&this._allowEditable();this._isLoaded&&(this._isSelectedAction(),this._updateSelectedNode(),this._allowOnDemand=!0,this._isExpandedAction(),this._updateExpandedNodes(),this._allowOnDemand=!1);!this.model.loadOnDemand||!this.model.enablePersistence||this.dataSource()instanceof t.DataManager||(f=this._getCookies("_childNodes"),f&&(i=JSON.parse(f)),!t.isNullOrUndefined(i)&&i.indexOf(n[0].id)==-1?i.push(n[0].id):i=[n[0].id],this._setCookies("_childNodes",JSON.stringify(i)))},_getChildNodes:function(n,i){var u=[],e,r,f;if(this._templateType==1){for(r=0,f=n.length;r<f;r++)if(e=t.getObject(this.model.fields.parentId,n[r][0]),!t.isNullOrUndefined(n[r][0])&&!t.isNullOrUndefined(e)&&e!=0&&e==i.id)return n[r]}else{for(r=0,f=n.length;r<f;r++){if(t.getObject(this.model.fields.id,n[r])==i.id&&t.getObject(this.model.fields.parentId,n[r])!=0)return n[r].child;if(n[r].hasOwnProperty("child")&&(u=this._getChildNodes(n[r].child,i),!t.isNullOrUndefined(u)&&u.length>0))break}return u}},_getPath:function(n){for(var i=n.prop("name"),t=n.parents(".e-item:first");t[0]!=null&&t[0].parentNode.id!=this._id;)i=t.prop("name")+"/"+i,t=t.parents(".e-item:first");return this._id+"/"+i},_nodeSelectionAction:function(t,i){var v,o,r,c,l;if(t[0]!=null||t.length!=0){var u=n(t.find("> div > .e-text")[0]),a=!1,y=this.model.selectedNodes.slice(),s=this._liList.index(t[0]);if(this._currNode=t,!this._triggerEvent("beforeSelect",{target:t,nodeDetails:this._getNodeDetails(t)})){if(this.model.allowMultiSelection&&i&&(!i||i.ctrlKey)||(this.element.find("a.e-text.e-active").removeClass("e-node-focus e-active"),this.element.find("[aria-selected=true]").attr("aria-selected",!1),this.element.find(".e-li-active").removeClass("e-li-active"),this.model.fullRowSelect&&(this.element.find(".e-li-focus").removeClass("e-li-focus"),this.element.find(".e-node-focus").removeClass("e-node-focus")),this.element.find("#"+this._id+"_active").removeAttr("id"),this.model.selectedNodes=[],this._deepWatch&&this._removeField(this._newDataSource,this.model.fields,"selected")),this.model.allowMultiSelection&&i&&i.shiftKey){this._startNode||(this._startNode=this._currNode);var h=this.getVisibleNodes(),f=h.index(this._startNode),e=h.index(t[0]);for(f>e&&(v=f,f=e,e=v),o=f;o<=e;o++)r=n(h.get(o)),c=this._liList.index(r[0]),n.inArray(c,this.model.selectedNodes)==-1&&(this.model.selectedNodes.push(c),l=r.find("> div > a.e-text"),l.removeClass("e-node-focus"),r.attr("aria-selected",!0),r.addClass("e-li-active"),l.addClass("e-active"),a=!0,this._deepWatch&&this._updateField(this._newDataSource,r.attr("id"),this.model.fields,"selected",!0))}else this._startNode=t;this.model.allowMultiSelection||(this.model.selectedNode=s);a||(this.element.find("a.e-text.e-node-focus").removeClass("e-node-focus"),t.attr("aria-selected",!0),t.addClass("e-li-active"),u.addClass("e-active"),this.model.allowMultiSelection||(u.closest(".e-item")[0].id!=null&&u.closest(".e-item")[0].id!=""?this.element.attr("aria-activedescendant",u.closest(".e-item")[0].id):u.closest(".e-item").attr("id",this._id+"_active")),n.inArray(s,this.model.selectedNodes)==-1&&this.model.selectedNodes.push(s),this._deepWatch&&this._updateField(this._newDataSource,t.attr("id"),this.model.fields,"selected",!0));this.model.enablePersistence&&this._persistValues(this.model.selectedNodes,"selectedNodes");this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource));this._triggerGivenEvent("nodeSelect",t)}}},_nodeUnSelectionAction:function(n,t){if(this.model.allowMultiSelection&&t&&!t.ctrlKey){this._nodeSelectionAction(n,t);return}n.removeClass("e-li-active");n.attr("aria-selected",!1).find("> div > .e-text").removeClass("e-active").attr("id","");this._updateUnselectModel(n[0]);this._deepWatch&&(this._updateField(this._newDataSource,n.attr("id"),this.model.fields,"selected",!1),this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource));this._triggerGivenEvent("nodeUnselect",n)},_updateUnselectModel:function(t){var r=this._liList.index(t),u=this.model.selectedNodes,i;this.model.allowMultiSelection||(this.model.selectedNode=null);i=n.inArray(r,u);i>-1&&this.model.selectedNodes.splice(i,1);this._persistValues(this.model.selectedNodes,"selectedNodes")},_triggerGivenEvent:function(n,t){if(this._isRender){var i={currentElement:t,value:t.find("> div > a.e-text").eq(0).text(),id:t[0].getAttribute("id"),parentId:t.closest("ul").closest(".e-item").attr("id"),selectedNodes:this.model.selectedNodes};this._triggerEvent(n,i)}},_getNodesIndex:function(n){for(var i=[],t=0,r=n.length;t<r;t++)i.push(this._liList.index(n[t]));return i},_nodeEnableAction:function(n){var t=this.getParent(n);t[0]!=null&&t.hasClass("e-node-disable")||(this.model.showCheckbox&&n.find("div > .e-chkbox-wrap > .nodecheckbox").ejCheckBox("enable").prop("disabled",!1),n.find(".e-text").removeClass("e-node-disable").closest(".e-item").removeClass("e-node-disable").removeProp("disabled"))},_nodeDisableAction:function(n){var i,t,r;for(this._collapseNode(n),this.model.showCheckbox&&n.find("div > .e-chkbox-wrap > .nodecheckbox").ejCheckBox("disable").prop("disabled",!0),i=n.find(".e-text.e-active").closest(".e-item"),n.find(".e-text").addClass("e-node-disable").removeClass("e-active").attr("id","").closest(".e-item").addClass("e-node-disable").prop("disabled",!0),t=0,r=i.length;t<r;t++)this._updateUnselectModel(i[t])},_getNodeDetails:function(n){var t,i,r,f,e,o,s,h,c,u;return n[0]!=null&&n.is("LI")&&n.hasClass("e-item")?(t=n[0].getAttribute("id"),i=n.children("div").find(".e-text:first").text(),this.model.template!=null&&(u=this._getNodeObject(t,!0),u.length>0&&(i=u[0])),r=n.closest("ul").closest(".e-item").attr("id"),f=n.parentsUntil(".e-treeview-wrap","ul").length,e=n.find(".e-item").length,o=this._isNodeExpanded(n),s=this._isChecked(n),h=n.find("> div > .e-text").hasClass("e-active"),c=this._liList.index(n),{id:t,text:i,parentId:r?r:"",level:f,count:e,expanded:o,checked:s,selected:h,index:c}):{id:"",text:"",parentId:"",level:"",count:"",expanded:"",checked:"",selected:"",index:""}},_denyMultipleExpand:function(t){for(var r=t.siblings().find(">div>.e-minus").closest(".e-item"),i=0,u=r.length;i<u;i++)this._collapseNode(n(r[i]))},_expandCollapseAction:function(t){var f,s,i,r,u,e,o;if(t&&!t.hasClass("e-process")&&(s=this,i=t.closest(".e-item"),t.is("SPAN")&&(t=n(t).parent("div").find("div:first")),f=i.children("ul:first"),f.find("> .e-item").length>0)){if(this.model.enableAnimation&&t.addClass("e-process"),o=n(t).closest(".e-treeview.e-js").data("ejTreeView"),r=o._getNodeDetails(i),e=this.isChildLoaded(i),u={currentElement:i,value:r.text,isChildLoaded:e,id:r.id,parentId:r.parentId,async:!1},!this._isNodeExpanded(i)&&e){if(!this._isEventTriggered&&this._triggerEvent("beforeExpand",u))return!1;this._isEventTriggered=!1;i.attr("aria-expanded",!0);this._addExpandedNodes(this._liList.index(i));n(t).removeClass("e-icon e-plus").addClass("e-icon e-minus");i.addClass("e-collapse");this._deepWatch&&this._updateField(this._newDataSource,r.id,this.model.fields,"expanded",!0);this._doAnimation(f,t,"nodeExpand",u,350)}else{if(this.element.find(".e-material-animate").removeClass("e-material-animate"),i.attr("aria-expanded",!1),this._triggerEvent("beforeCollapse",u)===!0)return!1;this._removeExpandedNodes(this._liList.index(u.currentElement));n(t).removeClass("e-icon e-minus").addClass("e-icon e-plus");i.removeClass("e-collapse");this._deepWatch&&this._updateField(this._newDataSource,r.id,this.model.fields,"expanded",!1);this._doAnimation(f,t,"nodeCollapse",u,200)}this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource))}},_doAnimation:function(n,i,r,u,f){var e=this;this.model.enableAnimation?n.animate({height:"toggle"},f,"linear",function(){t.isNullOrUndefined(e.model)||e._doAnimateAction(i,r,u)}):(n.css("display",f==200?"none":"block"),this._doAnimateAction(i,r,u))},_doAnimateAction:function(n,t,i){n.removeClass("e-process");this._triggerEvent(t,i)},_isChecked:function(n){return n.find("> div > .e-chkbox-wrap:first").attr("aria-checked")==="true"?!0:!1},_doRecursiveCheck:function(t,i){var o,r,f,t,u,s,e;u=this._getChildUl(t);o=u?u.querySelectorAll('.e-chkbox-wrap[aria-checked="true"]').length:0;s=u?u.querySelectorAll(".e-item > div > .e-chkbox-wrap > .nodecheckbox"):[];r=t.firstChild.querySelector(".nodecheckbox");r&&r.nodeName.toUpperCase()=="INPUT"&&(e=n(r).data("ejCheckBox"),o==s.length||this.model.autoCheckParentNode?(e.setModel({enableTriState:!1,checked:!0}),r.className+=" checked",f=t.firstChild.getElementsByTagName("a")[0].innerHTML,i.push({id:t.id,text:f}),this._deepWatch&&!this.model.autoCheckParentNode&&this._updateField(this._newDataSource,t.id,this.model.fields,"isChecked",!0),this._addHiddenInputElement(r,f),this._addCheckNodes(this._liList.index(t))):e.setModel({enableTriState:!0,checkState:"indeterminate"}),t=t.parentNode.parentNode,t.nodeName.toUpperCase()=="LI"&&this._doRecursiveCheck(t,i))},_nodeCheck:function(t,i){var s,r,u,h,e,o,c,f,l;if(n(t)[0]!=null){if(this._CurrenctSelectedNodes=[],this._checkedArray=[],t.className+=" checked",s=n(t).data("ejCheckBox"),s){if(s.setModel({enableTriState:!1,checked:!0}),r=t.parentNode.parentNode.parentNode,u=r.firstChild.getElementsByTagName("a")[0].lastChild.nodeValue,this._checkedArray.push({id:r.id,text:u}),this._deepWatch&&this._updateField(this._newDataSource,r.id,this.model.fields,"isChecked",!0),this._addHiddenInputElement(t,u),this._addCheckNodes(this._liList.index(r)),this.model.autoCheck){for(c=this._getChildUl(r),e=c?c.querySelectorAll(".e-item > div > .e-chkbox-wrap > .nodecheckbox"):[],f=0,l=e.length;f<l;f++)n(e[f]).ejCheckBox({checked:!0,enableTriState:!1})[0].className+=" checked",o=e[f].parentNode.parentNode.parentNode,u=o.firstChild.getElementsByTagName("a")[0].lastChild.nodeValue,this._checkedArray.push({id:o.id,text:u}),this._deepWatch&&this._updateField(this._newDataSource,o.id,this.model.fields,"isChecked",!0),this._addHiddenInputElement(e[f],u),this._addCheckNodes(this._liList.index(o));h=r.parentNode.parentNode;h.nodeName.toUpperCase()=="LI"&&this._doRecursiveCheck(h,this._checkedArray)}i&&(i.checknode=this._checkedArray);this._onChecked(n(t),i)}this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource));this._persistValues(this.model.checkedNodes,"checkedNodes")}},_addHiddenInputElement:function(n,t){if(n.firstChild==null){var i=document.createElement("input");i.setAttribute("type","hidden");i.setAttribute("name",this._id+"_Checkbox_"+n.value+"_Text");i.setAttribute("value",t);try{n.appendChild(i)}catch(r){}}},_doRecursiveUncheck:function(t,i){var e,r,o,t,u,s,f;u=this._getChildUl(t);e=u?u.querySelectorAll('.e-chkbox-wrap[aria-checked="true"]').length:0;s=u?u.querySelectorAll(".e-item > div > .e-chkbox-wrap > .nodecheckbox"):[];r=t.firstChild.querySelector(".nodecheckbox");r&&r.nodeName.toUpperCase()=="INPUT"&&(f=n(r).data("ejCheckBox"),e<=0&&(f.setModel({enableTriState:!1,checked:!1}),n(r).removeClass("checked").removeClass("checked").children().remove(),o=t.firstChild.getElementsByTagName("a")[0].innerHTML,this._removeCheckNodes(this._liList.index(t)),i.push({id:t.id,text:o}),this._deepWatch&&this._updateField(this._newDataSource,t.id,this.model.fields,"isChecked",!1)),e>0&&this.model.autoCheckParentNode?(f.setModel({checked:!0}),r.className+=" checked",o=t.firstChild.getElementsByTagName("a")[0].innerHTML,this._addHiddenInputElement(t,o),this._deepWatch&&this._updateField(this._newDataSource,t.id,this.model.fields,"isChecked",!1)):e>0&&!this.model.autoCheckParentNode&&(s.length>1?f.setModel({enableTriState:!0,checkState:"indeterminate"}):f.setModel({checked:!1}),n(r).removeClass("checked").removeClass("checked").children().remove(),this._removeCheckNodes(this._liList.index(t)),this._deepWatch&&this._updateField(this._newDataSource,t.id,this.model.fields,"isChecked",!1)),t=t.parentNode.parentNode,t.nodeName.toUpperCase()=="LI"&&this._doRecursiveUncheck(t,i))},_nodeUncheck:function(t,i){var a,r,s,e,h,o,u,l,f,c;if(n(t)[0]!=null){if(a=this,this._uncheckedArray=[],r=t.parentNode.parentNode.parentNode,n(r).find("div > .e-chkbox-wrap > .nodecheckbox").removeClass("checked").children().remove(),s=n(t).data("ejCheckBox"),this._removeCheckNodes(this._liList.index(r)),s){if(s.setModel({enableTriState:!1,checked:!1}),e=r.firstChild.getElementsByTagName("a")[0].lastChild.nodeValue,this._uncheckedArray.push({id:r.id,text:e}),this._deepWatch&&this._updateField(this._newDataSource,r.id,this.model.fields,"isChecked",!1),this.model.autoCheck){for(h=this._getChildUl(r),o=h?h.querySelectorAll(".e-item > div > .e-chkbox-wrap > .nodecheckbox"):[],u=0,l=o.length;u<l;u++)n(o[u]).ejCheckBox({enableTriState:!1,checked:!1}),f=o[u].parentNode.parentNode.parentNode,e=f.firstChild.getElementsByTagName("a")[0].lastChild.nodeValue,this._uncheckedArray.push({id:f.id,text:e}),this._deepWatch&&this._updateField(this._newDataSource,f.id,this.model.fields,"isChecked",!1),this._removeCheckNodes(this._liList.index(f));c=r.parentNode.parentNode;c.nodeName.toUpperCase()=="LI"&&this._doRecursiveUncheck(c,this._uncheckedArray)}i&&(i.unchecknode=this._uncheckedArray);this._onUnChecked(n(t),i)}this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource));this._persistValues(this.model.checkedNodes,"checkedNodes")}},_executeDataQuery:function(i,r,u){var f,o,e;if(f=t.Query(),f=this._columnToSelect(i),!t.isNullOrUndefined(r)&&r!=""){for(o=n.extend(!0,[],f._params),f._params=[],f.addParams(r,u),e=0;e<o.length;e++)o[e].key!=r&&f.addParams(o[e].key,o[e].value);f.where(r,t.FilterOperators.equal,u)}return i.dataSource.executeQuery(f)},_createChildNodesWhenExpand:function(i,r,u,f,e,o){var a,v,c,y,p,h,s,w,l;if(i.length>0&&i.find("ul .e-item").length==0){if(a=i.attr("id"),v=i.children("div").find(".e-text:first").text(),y=i.children("div").find("div.e-plus:first"),c={currentElement:i,targetElement:y[0],id:a,value:v,isChildLoaded:!1,hasParent:!0,async:!1},s=this,this._isEventTriggered=!0,this._triggerEvent("beforeExpand",c))return!1;if(this.dataSource()instanceof t.DataManager){if(p=c.currentElement.parents("ul.e-treeview-ul").length,h=this._getChildTables(this.model.fields,p,1),t.isNullOrUndefined(h)&&t.isNullOrUndefined(this.model.fields.child)&&(h=this.model.fields),!h){n(c.targetElement).hasClass("e-load")&&n(c.targetElement).removeClass(n(c.targetElement).hasClass("e-plus")||n(c.targetElement).hasClass("e-minus")?"e-load":"e-icon e-load");return}h.query&&h.query.queries.length>0&&(h.query.queries=[]);this._treeList.push("false");w=this._executeDataQuery(h,h.parentId,this._typeOfFieldId=="number"?parseInt(c.currentElement[0].id):c.currentElement[0].id);w.done(function(c){if(s._treeList.pop(),l=c.xhr&&c.xhr.responseJSON&&c.xhr.responseJSON.d?c.xhr.responseJSON.d:c.result?c.result:[],l=s._getSortAndFilterList(h,l),l.length>0){var a=t.getObject(h.parentId,l[0]);s._updateRemoteData(s._newDataSource,a,l,s.model.fields)}s._appendChild(l,i,h,r,u,f);u&&s._expandByLevel(i.find("> ul"),u-1,f);s._treeList.length==0&&(e&&s._doAfterExpand(i,e,o),s._completeRendering());s._parentLevelDropChecking.find("ul .e-item").length==0&&n(s._parentLevelDropChecking).find("> div > .e-icon").remove()})}else l=this._getChildNodes(this._dataSource,{id:i[0].id}),this._appendChild(l,i,this.model.fields,r,u,f)}else this._expandNode(i)},_appendChild:function(i,r,u,f,e,o){var h,s,c;if(!t.isNullOrUndefined(i)&&i.length>0){if(this._checkboxChecked=r.find("> div > .e-chkbox-wrap > .nodecheckbox").hasClass("checked"),this._loadOnDemandNodes=!0,r.find("ul .e-item").length==0&&(this._templateNodeCreation(i,u),r.append(this._fragment)),this._finalizeLoadOnDemand(r),this._expandNode(r),f&&!e&&!o)for(h=r.find(".e-item > div > .e-plus").closest(".e-item"),s=0,c=h.length;s<c;s++)this._createChildNodesWhenExpand(n(h[s]),!0,null,o)}else f&&r.find("> div > .e-plus").removeClass("e-plus e-icon")},_getSortAndFilterList:function(n,i){var r,u;return!i||!i.length||i.length<1?r=[]:this.model.sortSettings.allowSorting?(u=t.Query(),this._addSortingQuery(u,n),r=t.DataManager(i).executeLocal(u)):r=i,r},_addSortingQuery:function(n,i){var r=i&&i.text?i.text:"text",u=this.model.sortSettings.sortOrder==t.sortOrder.Descending?!0:!1;n.sortBy(r,u)},_expandNode:function(n){var t,i;return n[0]!=null&&n.length>0&&(t=n.find("> div > div:first"),this.model.loadOnDemand&&!this.model.enablePersistence?n.find("> ul > .e-item").length>0&&t.hasClass("e-plus")?(this.model.enableMultipleExpand||this._denyMultipleExpand(n),this._expandCollapseAction(n.find("> div > div.e-plus:first"))):t.hasClass("e-icon")&&!t.hasClass("e-minus")&&this._allowOnDemand&&this._createChildNodesWhenExpand(n):t.hasClass("e-plus")&&(i=n.find("> ul > .e-item").length>0?!0:!1,i&&(this.model.enableMultipleExpand||this._denyMultipleExpand(n),this._expandCollapseAction(t)))),!0},_collapseNode:function(n){if(n[0]!=null&&n.length>0&&n.find("> ul > .e-item").length>0){var t=n.find("> div > div:first");t.hasClass("e-minus")&&this._expandCollapseAction(t)}},_getElement:function(){return this.element.is("UL")?this.element:this.element.find("> ul")},_getImmediateChild:function(n,t){return t?n.find("> .e-item:not(:hidden)"):n.find("> .e-item")},_expandByLevel:function(n,t,i){t>0&&this._expandByNode(this._getImmediateChild(n,i),t,i)},_expandByNode:function(t,i,r){for(var u=0,f=t.length;u<f;u++)n(t[u]).find("> div > div").hasClass("e-plus")&&(this.model.loadOnDemand?this._createChildNodesWhenExpand(n(t[u]),!0,i,r):this._expandNode(n(t[u]))),this._expandByLevel(n(t[u]).find("> ul"),i-1,r)},_expandAll:function(t){var f=this.element,i,u,r;if(r=f.find(t?".e-item > div > .e-plus:not(:hidden)":".e-item > div > .e-plus").closest(".e-item"),this.model.loadOnDemand)for(i=0,u=r.length;i<u;i++)this._createChildNodesWhenExpand(n(r[i]),!0,null,t);else for(i=0,u=r.length;i<u;i++)this._expandNode(n(r[i]))},_collapseByLevel:function(n,t,i){t>0&&this._collapseByNode(this._getImmediateChild(n,i),t,i)},_collapseByNode:function(t,i,r){for(var u=0,f=t.length;u<f;u++)n(t[u]).find("> div > div").hasClass("e-minus")&&this._collapseNode(n(t[u])),this._collapseByLevel(n(t[u]).find("> ul"),i-1,r)},_collapseAll:function(t){var f=this.element,i,r,u;if(r=f.find(t?".e-item > div > .e-minus:not(:hidden)":".e-item > div > .e-minus").closest(".e-item"),r.length>0)for(i=0,u=r.length;i<u;i++)this._collapseNode(n(r[i]))},_checkAll:function(){var r,t,i,u;for(this._CurrenctSelectedNodes=[],r=this.element,t=r.find(".e-item > div > .e-chkbox-wrap > .nodecheckbox"),t.addClass("checked"),i=0,u=t.length;i<u;i++)n(t[i]).ejCheckBox("setModel",{checked:!0}),this._addHiddenInputElement(t[i],n(t[i]).parent().siblings(".e-text")[0].lastChild.nodeValue);this.model.checkedNodes=this.getCheckedNodesIndex()},_uncheckAll:function(){var u=this.element,t,i,r;for(t=u.find(".e-item > div > .e-chkbox-wrap > .nodecheckbox"),t.removeClass("checked").children().remove(),i=0,r=t.length;i<r;i++)n(t[i]).ejCheckBox("setModel",{checked:!1});this.model.checkedNodes=[];this.model.checkedNodes.push(-1)},_selectAll:function(){var r,t,u,i;for(this._isRender=!1,r={ctrlKey:!0},t=0,u=this._liList.length;t<u;t++)if(i=n(this._liList[t]),i[0]!=null&&this._nodeSelectionAction(i,r),!this.model.allowMultiSelection)break;this._isRender=!0},_unselectAll:function(){this.element.find("a.e-text.e-active").removeClass("e-node-focus e-active");this.element.find("[aria-selected=true]").attr("aria-selected",!1);this.element.find(".e-li-active").removeClass("e-li-active");this.element.find(".e-li-focus").removeClass("e-li-focus");this.element.find(".e-node-focus").removeClass("e-node-focus");this.model.selectedNodes=[];this.model.enablePersistence&&this._persistValues(this.model.selectedNodes,"selectedNodes")},_isNodeExpanded:function(n){if(n[0]!=null)return n.children("ul:first").length>0&&n.find("> div > div.e-minus").length>0},_showCheckBox:function(){for(var t=this.element,i=t.find("li"),n=0;n<i.length;n++)this._checkboxOnTemplate(i[n].children[0]);t.find(".e-item > div > .nodecheckbox").ejCheckBox({cssClass:this.model.cssClass,change:this._checkedChange});t.find(".e-item.e-node-disable > div > .e-chkbox-wrap > .nodecheckbox").ejCheckBox("disable")},_drag:function(){var i,u=!1,o=t.browserInfo(),r=null,s=null,f=null,e;e=o.name=="msie"&&o.version=="8.0"?!0:!1;this.element.is("ul")?(this._treeView=this.element.parent(),this.model.allowDragAndDropAcrossControl||(f=this.element.parent())):(this._treeView=this.element,this.model.allowDragAndDropAcrossControl||(f=this.element));n(this._treeView).find("ul li div a").not(".e-js").ejDraggable({autoScroll:!0,dragArea:f,clone:!0,dragStart:function(u){if(!i||t.isNullOrUndefined(u.target)||n(u.target).hasClass("e-node-disable")||i.element.find(".e-item > div > .e-text.e-editable").length!=0||(u.element.attr("aria-grabbed",!0),i.element.closest(".e-treeview-wrap").addClass("e-dragging"),n(u.target).is("A")&&!n(u.target).hasClass("e-draggable")))return!1;e&&(document.ondragstart=function(){return!1});var f={target:n(u.target).closest(".e-item"),targetElementData:i._getNodeDetails(n(u.target).closest(".e-item")),dragTarget:u.target,parentElement:n(u.target).closest("ul").closest(".e-item"),parentElementData:i._getNodeDetails(n(u.target).closest("ul").closest(".e-item")),event:u.event};if(i._triggerEvent("nodeDragStart",f))return u.cancel=!0,r&&r.remove(),!1},drag:function(f){var e,s,l,o,h,c,a;return u=!1,n(f.target).hasClass("e-sibling")&&(f.target=f.target.parentElement),n(".e-sibling").remove(),e=f.target,s=i._findTarget(n(e)),n(e).closest(".e-treeview-wrap").addClass("e-dragging"),o=n(e).closest(".e-treeview.e-js").data("ejTreeView"),o=o?o:i,n(r).css({"margin-top":f.event.clientY-20<0?"0px":"10px"}),n(e).closest(".e-treeview.e-js")!=null&&(h=n(e).closest(".e-treeview.e-js").data("ejTreeView")),l=h?{draggedElement:n(f.element).closest(".e-item"),draggedElementData:i._getNodeDetails(n(f.element).closest(".e-item")),dragTarget:e,target:s,targetElementData:h._getNodeDetails(s),event:f.event}:{draggedElement:n(f.element).closest(".e-item"),draggedElementData:i._getNodeDetails(n(f.element).closest(".e-item")),dragTarget:e,target:s,targetElementData:i._getNodeDetails(s),event:f.event},(n(f.element).parent().parent().has(n(e)).length==0||i.model.allowMultiSelection&&i.model.selectedNodes.length>1)&&(n(e).hasClass("e-droppable")||n(e).parent().hasClass("e-droppable"))&&n(e).hasClass("e-dropchild")&&!n(e).hasClass("e-node-disable")&&(i.model.allowDragAndDropAcrossControl||!i.model.allowDragAndDropAcrossControl&&n(e).parents(".e-treeview").is(i.element))?(document.body.style.cursor="",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-plus"),n(e).addClass("allowDrop")):o.model.allowDropChild&&o.model.allowDropSibling&&(n(e).hasClass("e-droppable")&&!n(e).hasClass("e-item")&&!n(e).hasClass("e-text")||n(e).is("UL")&&n(e).hasClass("e-ul")&&n(e).find(".e-item").length==0&&n(e).parent(".e-treeview-wrap").length>0)?(document.body.style.cursor="",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-plus")):(n(e).hasClass("e-sibling")||n(e).find("a").hasClass("e-text"))&&(n(e).hasClass("e-sibling")||n(e).parent().parent().hasClass("e-item")||n(e).parent().hasClass("e-item")||n(e).hasClass("e-item")||n(e).hasClass("e-text"))&&(e.nodeName.toUpperCase()!="LI"&&(e.parentElement===null||e.parentElement.nodeName.toUpperCase()!="LI")||o.model.allowDropSibling)&&(i.model.allowDragAndDropAcrossControl||n(e).parents(".e-treeview").is(i.element))||(document.body.style.cursor="not-allowed",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-minus"),n(e).removeClass("showline-hover"),n(e).removeClass("noline-hover")),e.nodeName!="A"&&(n(f.element).parent().parent().has(n(e)).length==0||i.model.allowMultiSelection&&i.model.selectedNodes.length>1)&&n(f.element).parent().parent()[0]!=n(e)[0]?(e.nodeName=="UL"&&n(e).children()[0]!=null&&(e=n(e).children()[0],u=!0),e.nodeName!="LI"&&(e=n(e).closest(".e-droppable")[0]||n(e).parent()),e.nodeName=="LI"&&n(e).hasClass("e-droppable")&&n(e).hasClass("e-dropsibling")&&(i.model.allowDragAndDropAcrossControl||!i.model.allowDragAndDropAcrossControl&&n(e).parents(".e-treeview").is(i.element))?(c=t.buildTag("div.e-sibling"),a=n(e).offset().top+n(e).find("a").height()||-1,u=f.event.pageY>a?!1:!0,u?c.insertBefore(n(e).find("> div > a").parent()):c.insertAfter(n(e).find("> div > a").parent()),n(e).parents().hasClass("e-rtl")?(document.body.style.cursor="",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-insertInbetween-rtl")):(document.body.style.cursor="",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-insertInbetween"))):e.nodeName=="A"&&n(e)&&n(e).hasClass("e-droppable")&&n(e).hasClass("e-dropchild")?(document.body.style.cursor="",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-plus"),n(e).addClass("allowDrop")):!n(e).hasClass("e-droppable")||n(e).hasClass("e-item")||n(e).hasClass("e-text")||(document.body.style.cursor="",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-plus"))):((n(f.element).parent().parent().has(n(e)).length==1||n(f.element).parent().parent().is(n(e)))&&(!i.model.allowMultiSelection||i.model.allowMultiSelection&&i.model.selectedNodes.length<=1)&&(document.body.style.cursor="not-allowed",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-minus")),n(".e-sibling").remove()),i._triggerEvent("nodeDrag",l)?!1:void 0},dragStop:function(t){var f,o,c,s,h,v,a,l,y;if((e&&(document.ondragstart=function(){return!0}),t.element.dropped||(r&&r.remove(),document.body.style.cursor=""),f=t.target,n(f).closest(".e-treeview-wrap").removeClass("e-dragging"),i.element.closest(".e-treeview-wrap").removeClass("e-dragging"),f.className=="e-sibling"&&(f=n(f).closest(".e-item")[0]),n(".e-sibling").remove(),n(f).hasClass("e-node-disable"))||(o=u?"Before":"After",s=i._findTarget(n(f)),o=f.nodeName=="A"?"Over":o,n(f).closest(".e-treeview.e-js")!=null&&(h=n(f).closest(".e-treeview.e-js").data("ejTreeView")),c=h?{draggedElementData:i._getNodeDetails(n(t.element).closest(".e-item")),draggedElement:n(t.element).closest(".e-item"),dropTarget:n(f),target:s,targetElementData:h._getNodeDetails(s),position:o,event:t.event,preventTargetExpand:!1}:{draggedElementData:i._getNodeDetails(n(t.element).closest(".e-item")),draggedElement:n(t.element).closest(".e-item"),dropTarget:n(f),target:s,targetElementData:i._getNodeDetails(s),position:o,event:t.event,preventTargetExpand:!1},i._triggerEvent("nodeDragStop",c)))return!1;if(v=i._isParentExpand(f),i.model.allowMultiSelection&&n(t.element).hasClass("e-active"))for(a=i.element.find(".e-item > div > .e-active"),l=0,y=a.length;l<y;l++)t.element=a[l],o=i._dropNode(f,t,o,u),o=="After"&&n(f).closest(".e-treeview.e-js").length&&(f=f.nodeName.toUpperCase()=="LI"?f.nextElementSibling:f.closest("li").nextElementSibling);else o=i._dropNode(f,t,o,u);if(c.preventTargetExpand&&!v&&i._preventParentNode(f),n(".allowDrop").removeClass("allowDrop"),n(t.element).attr("aria-grabbed",!1),n(f).hasClass("e-dropchild")||r&&r.remove(),s=i._findTarget(n(f)),c=h?{droppedElementData:h._getNodeDetails(n(t.element).closest(".e-item")),droppedElement:n(t.element).closest(".e-item"),dropTarget:n(f),target:s,targetElementData:h._getNodeDetails(s),position:o,event:t.event}:{droppedElementData:i._getNodeDetails(n(t.element).closest(".e-item")),droppedElement:n(t.element).closest(".e-item"),dropTarget:n(f),target:s,targetElementData:i._getNodeDetails(s),position:o,event:t.event},i._triggerEvent("nodeDropped",c))return!1;document.body.style.cursor=""},helper:function(u){var e,o,f,h;if(!t.isNullOrUndefined(u.element)&&!n(u.element).hasClass("e-node-disable")&&n(u.element).hasClass("e-draggable")&&(i=n(u.element).closest(".e-treeview.e-js").data("ejTreeView"),i))return r=t.buildTag("div.e-dragedNode e-widget"),e=t.util.getZindexPartial(i.element),r.css({"z-index":e}),r.addClass(i.model.cssClass+(i.model.enableRTL?" e-rtl":"")),o=i.element.find(".e-item > div > .e-active"),f=o.length,s=n(u.element).clone().addClass("dragClone"),this.spanEle=t.buildTag("span.e-icon e-plus e-dropedStatus"),r.append(this.spanEle),r.append(s),h=t.buildTag("span.e-drop-count",f),f>1&&i.model.allowMultiSelection&&n(u.element).hasClass("e-active")&&r.append(h),r.appendTo(n("body"))}})},_isParentExpand:function(t){var i=n(t).closest(".e-item"),r=!1;return i.length>0&&i[0].getAttribute("aria-expanded")=="true"&&(r=!0),r},_preventParentNode:function(t){var i=n(t).closest(".e-item"),u=n(i[0]).find(".e-treeview-ul"),r;n(u).css("display","none");i.length>0&&(i[0].setAttribute("aria-expanded",!1),r=n(i).find(".e-minus"),n(r).removeClass("e-minus").addClass("e-plus"))},_dropNode:function(t,i,r,u){var f=n(t).closest(".e-treeview.e-js").data("ejTreeView");return t.nodeName=="A"&&n(t).hasClass("e-dropchild")&&n(t).hasClass("e-droppable")||t.nodeName=="UL"&&n(t).children().length==0?(r="Over",n(t).is("UL")&&n(t).hasClass("e-ul")&&n(t).find(".e-item").length==0&&n(t).parent(".e-treeview-wrap").length>0&&f.model.allowDropChild?this._dropAsChildNode(n(t),n(i.element),i.event):f.model.allowDropChild&&n(i.element).parent().parent().has(n(t)).length==0&&(n(t).parent().parent().has(n(i.element)).length==0||this._isDescendant(n(t).parents("li:last").find(">ul>li"),n(i.element).parents("li:first")[0]))&&(this.model.allowDragAndDropAcrossControl||!this.model.allowDragAndDropAcrossControl&&n(t).parents(".e-treeview").is(this.element))&&this._dropAsChildNode(n(t).closest(".e-item"),n(i.element),i.event)):(t.nodeName=="UL"&&(t=n(t).children()[0]),t.nodeName!="LI"&&(t=n(t).closest(".e-droppable")[0]||n(t).parent()),t.nodeName=="LI"&&n(t).hasClass("e-dropsibling")&&n(t).hasClass("e-droppable")?f.model.allowDropSibling&&n(i.element).parent().parent().has(n(t)).length<1&&n(i.element).parent().parent()[0]!=n(t)[0]&&(this.model.allowDragAndDropAcrossControl||!this.model.allowDragAndDropAcrossControl&&n(t).parents(".e-treeview").is(this.element))&&this._dropAsSiblingNode(n(t),n(i.element),u,i.event):t.nodeName=="A"&&n(t).hasClass("e-dropchild")&&n(t).hasClass("e-droppable")&&(r="Over",f.model.allowDropChild&&n(i.element).parent().parent().has(n(t)).length==0&&(n(t).parent().parent().has(n(i.element)).length==0||this._isDescendant(n(t).parents("li:last").find(">ul>li"),n(i.element).parents("li:first")[0]))&&this._dropAsChildNode(n(t).closest(".e-item"),n(i.element),i.event))),r},_findTarget:function(n){return n.hasClass("e-text")||n.parents("a").hasClass("e-text")?n.closest(".e-item"):n.closest("ul").closest(".e-item").length>0?n.closest("ul").closest(".e-item"):this.element.find(n).length>0&&!this.model.template?n.parents("ul").first():this.element.find(n).length>0&&this.model.template?n.closest(".e-text").length>0?n.closest(".e-item"):n.parents("ul").first():n},_isDescendant:function(t,i){var r=!0;return n(t).each(function(n,t){if(t==i)return r=!1,!1;r=!0}),r},_childDrop:function(){n(this._treeView).find("ul .e-item div .e-text").ejDroppable({accept:n(this._treeView).find("ul .e-item div .e-text").addClass("e-dropchild"),drop:function(t,i){n(i.helper).hide()}})},_siblingDrop:function(){n(this._treeView).find("ul .e-item").addClass("e-dropsibling").ejDroppable({drop:function(t,i){n(i.helper).hide()}})},_dropAsSiblingNode:function(i,r,u){var f=r.parent().parent(),f=n(f),e;e=n(r.parents(".e-item")[1]);t.isNullOrUndefined(this.model.fields)||this.dataSource()==null||this.dataSource()instanceof t.DataManager||this._updateDataSource(r.parents(".e-item:first"),n(i),u,this);u?f.insertBefore(i):f.insertAfter(i);this.model.template||this._autoGenerateNodes(r.parents(".e-item:first"));this._modifyCss(e);this._isRender=!1;this._updateCheckState(f);this._updateCheckState(e);this._isRender=!0;f.find("> div > .e-minus").length>0&&!this.model.enableMultipleExpand&&this._denyMultipleExpand(f);this._updateChanges(n(i))},_dropAsChildNode:function(i,r){var u=r.parent().parent(),u=n(u),f;f=this._parentLevelDropChecking=n(r.parents(".e-item")[1]);n(i).is("UL")?n(i).append(u):this._appendNode(i,u);t.isNullOrUndefined(this.model.fields)||this.dataSource()==null||this.dataSource()instanceof t.DataManager||this._updateDataSource(r.parents(".e-item:first"),n(i).find("> div > .e-text").first(),"",this);this.model.template||this._autoGenerateNodes(r.parents(".e-item:first"));this._modifyCss(f);this._isRender=!1;this._updateCheckState(u);this._updateCheckState(f);this._isRender=!0;i.find("> div > .e-icon.e-plus:first").length>0&&this._expandNode(i);this._updateChanges(n(i))},_updateChanges:function(t){if(n(t)[0]!=null){var i=this,r=0;do i._updateNodes(),r==1&&i._updateTarget(this),r++,i=t.closest(".e-treeview.e-js").data("ejTreeView");while(i&&this._id!=i._id&&r==1)}},_updateTarget:function(n){this.model.allowDropChild!=n.model.allowDropChild&&(this.model.allowDropChild?this._childDrop():this._preventDropChild());this.model.allowDropSibling!=n.model.allowDropSibling&&(this.model.allowDropSibling?this._siblingDrop():this._preventDropSibling())},_updatePersistProb:function(){var f,t,s,e,i,o,u,r;for(this._removeField(this._newDataSource,this.model.fields,"selected"),this._removeField(this._newDataSource,this.model.fields,"expanded"),this._removeField(this._newDataSource,this.model.fields,"isChecked"),f=this.getSelectedNodes(),t=0,s=f.length;t<s;t++)this._updateField(this._newDataSource,n(f[t]).attr("id"),this.model.fields,"selected",!0);for(e=this.getExpandedNodes(),i=0,r=e.length;i<r;i++)this._updateField(this._newDataSource,n(e[i]).attr("id"),this.model.fields,"expanded",!0);if(this.model.showCheckbox)for(o=this.getCheckedNodes(),u=0,r=o.length;u<r;u++)this._updateField(this._newDataSource,n(o[u]).attr("id"),this.model.fields,"isChecked",!0)},_orderDataSource:function(){var f,r,u,e,i,o;if(this._beforeBaseClass(),this._updatePersistProb(),f=[],r=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource()instanceof t.DataManager&&this._templateType==2)return this._newDataSource;for(u=0,e=this._liList.length;u<e;u++)for(i=0,o=r.length;i<o;i++)n(document.getElementById(t.getObject(this.model.fields.id,r[i]))).length>0&&!t.isNullOrUndefined(r[i])&&!t.isNullOrUndefined(r[i][this.model.fields.id])&&r[i][this.model.fields.id].toString()==n(this._liList[u]).attr("id")&&(n(document.getElementById(t.getObject(this.model.fields.id,r[i]))).find("> ul .e-item").length==0?(this._deepPropertyDelete(this.model.fields.hasChild,r[i]),this._templateType==2&&delete r[i].child):this._templateType==1?t.createObject(this.model.fields.hasChild,!0,r[i]):this._updateChildData(r[i].child,this.model.fields),f.push(r[i]));return f},_updateDataSource:function(i,r,u,f){var o,e,c,s,l,h,a;n(i)[0]!=null&&n(r)[0]!=null&&(o=f,e=r.closest(".e-treeview.e-js").data("ejTreeView"),!o||!e||t.isNullOrUndefined(e.model.fields)||e.dataSource()==null||e.dataSource()instanceof t.DataManager||(r.is("A")?(c=r.closest(".e-item").attr("id"),l=r.closest(".e-item").find("> ul > .e-item"),s=l.length>0?l.length:r.closest(".e-item").index()):(c=r.parents(".e-item:first").attr("id"),h=r.next(".e-item"),a=r.prev(".e-item"),s=h.length>0?s=a.length>0?h.index()-1:u?r.index():h.index():u?r.index():r.index()+1),e&&o._findAndUpdate(i.attr("id"),c,o._newDataSource,s,e,r,u)))},_removeObject:function(n,i,r){for(var u=0,f=n.length;u<f;u++)if(!t.isNullOrUndefined(n[u])&&!t.isNullOrUndefined(n[u][r])&&n[u][r].toString()==i){n.splice(u,1);break}},_getObjectPosition:function(n,i,r){for(var f,u=0,e=n.length;u<e;u++){if(!t.isNullOrUndefined(n[u])&&!t.isNullOrUndefined(n[u][r])&&n[u][r].toString()==i)return u;if(n[u].hasOwnProperty("child")&&(f=this._getObjectPosition(n[u].child,i,r),f>=0))return f}return-1},_convertDataSourceTypes:function(n,i){for(var r=0;r<n.child.length;r++)t.createObject(this.model.fields.parentId,t.getObject(this.model.fields.id,n),n.child[r]),i.push(n.child[r]),n.child[r].hasOwnProperty("child")&&n.child[r].child.length>0&&this._convertDataSourceTypes(n.child[r],i);return n.child&&(delete n.child,t.createObject(this.model.fields.hasChild,!0,n)),i},_childObjectCollection:function(n,i,r,u){for(var e,f=0,o=n.length;f<o;f++)e=this._getChildNodes(i,{id:t.getObject(this.model.fields.id,n[f])}),e&&(u==2?(r[f].hasOwnProperty("child")||(r[f].child=[]),r[f].child=this._childObjectCollection(e,i,e,u)):(r=r.concat(e),r=this._childObjectCollection(e,i,r,u)));return r},_updateCopyData:function(t,r,u){var s=r.model.fields,o=u,f=JSON.parse(JSON.stringify(u[t])),e=this,h;return n.each(this.model.fields,function(n){(n!=="dataSource"||n!=="query")&&o[t][e.model.fields[n]]!==i&&(delete f[e.model.fields[n]],f[s[n]]=o[t][e.model.fields[n]])}),n.extend(h,f,!1)},_updateDataFields:function(n,i,r,u,f){for(var o=[],e=0,s=i.length;e<s;e++)f==1&&(this._removeObject(n,r,this.model.fields.parentId),this._deepPropertyDelete(this.model.fields.parentId,i[e]),this._deepPropertyDelete(this.model.fields.hasChild,i[e])),i[e].hasOwnProperty("child")&&(i[e].child=this._updateDataFields(n,i[e].child,t.getObject(this.model.fields.id,i[e]),u,f)),o.push(this._updateCopyData(e,u,i));return o},_deepPropertyDelete:function(n,r){if(!r||t.isNullOrUndefined(n))return i;var u=n.split(".");u.length>1?deepDelete(u.slice(1).join("."),r[u[0]]):delete r[n]},_findAndUpdate:function(n,i,r,u,f,e,o){var k,a,w,d,b,it,y,nt,c,p,s,v,h;if(!t.isNullOrUndefined(r))if(this._templateType==1){for(c=0,p=r.length;c<p;c++)if(k=t.getObject(this.model.fields.id,r[c]),!t.isNullOrUndefined(r[c])&&!t.isNullOrUndefined(k)&&k.toString()==n){if(this._id==f._id)t.isNullOrUndefined(i)?this._deepPropertyDelete(this.model.fields.parentId,r[c]):t.createObject(this.model.fields.parentId,i,r[c]),a=this.dataSource(),w=this,this._deepWatch&&(d=r.splice(c,1),h=this._getObjectPosition(a,e.attr("id"),this.model.fields.id),h>=0&&!e.is("A")?r.splice(o?h:h+1,0,d[0]):r.push(d[0]),this._oldDataSource=JSON.parse(JSON.stringify(r)),this.dataSource(r)),this._templateType=this._getTemplateType(a,this.model.fields),this._dataSource=this._templateType==1?this._groupingObjects(a,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(w.model.fields.parentId,n)].toString()]}):a;else{var s=[],l,w=this,g,v=[],tt=[];if(g=this._groupingObjects(r,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(w.model.fields.parentId,n)].toString()]}),tt=r.splice(c,1),s.push(this._updateCopyData(0,f,tt)),l=this._getChildNodes(g,{id:n}),l&&l.length>0&&(l=this._childObjectCollection(l,g,l,f._templateType)),f._templateType==2)l&&l.length>0&&(y=this._updateDataFields(r,l,n,f,this._templateType),s[0].hasOwnProperty("child")||(s[0].child=[]),s[0].child=y),this._deepPropertyDelete(f.model.fields.parentId,s[0]),this._deepPropertyDelete(f.model.fields.hasChild,s[0]),f._deepWatch?(h=this._getObjectPosition(f._newDataSource,e.attr("id"),f.model.fields.id),h=h>=0&&!e.is("A")?o?h:h+1:u,i?f._changeObjectPos(i,s,f._newDataSource,h):f._newDataSource.splice(h,0,s[0])):i?f._changeObjectPos(i,s,f._newDataSource,u):f._newDataSource.splice(u,0,s[0]);else{if(l&&l.length>0){for(b=0,it=l.length;b<it;b++)this._removeObject(r,t.getObject(this.model.fields.id,l[b]),this.model.fields.id);this._dataSource=this._templateType==1?this._groupingObjects(r,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(w.model.fields.parentId,n)].toString()]}):r}if(i?t.createObject(f.model.fields.parentId,i,s[0]):this._deepPropertyDelete(f.model.fields.parentId,s[0]),f._deepWatch?(h=this._getObjectPosition(f._newDataSource,e.attr("id"),f.model.fields.id),h>=0&&!e.is("A")?f._newDataSource.splice(o?h:h+1,0,s[0]):f._newDataSource.push(s[0])):f._newDataSource.push(s[0]),y=[],l&&l.length>0){if(!(this.dataSource()instanceof t.DataManager)){for(c=0;c<l.length;c++)y.push(this._updateCopyData(c,f,l));l=y}nt=f._newDataSource=f._newDataSource.concat(l);f._dataSource=f._templateType==1?f._groupingObjects(nt,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(f.model.fields.parentId,n)].toString()]}):nt}}f._deepWatch&&(f.dataSource(f._newDataSource),f._oldDataSource=JSON.parse(JSON.stringify(f._newDataSource)));this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource))}break}}else for(c=0,p=r.length;c<p;c++){if(t.getObject(this.model.fields.id,r[c]).toString()==n)return s=r.splice(c,1),this._id==f._id?this._deepWatch?(h=this._getObjectPosition(this._newDataSource,e.attr("id"),this.model.fields.id),h=h>=0&&!e.is("A")?o?h:h+1:u,i?this._changeObjectPos(i,s,this._newDataSource,h):this._newDataSource.splice(h,0,s[0]),this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource)):i?this._changeObjectPos(i,s,this._newDataSource,u):this._newDataSource.splice(u,0,s[0]):(s=this._updateDataFields(r,s,n,f,this._templateType),f._templateType==1?(v=[],s[0].hasOwnProperty("child")?(v=f._convertDataSourceTypes(s[0],v),s[0]=s.concat(v)):s[0]=s.concat(),i?t.createObject(f.model.fields.parentId,i,s[0][0]):this._deepPropertyDelete(f.model.fields.parentId,s[0][0]),f._deepWatch?(h=this._getObjectPosition(f._newDataSource,e.attr("id"),f.model.fields.id),h>=0&&!e.is("A")?f._newDataSource.splice(o?h:h+1,0,s[0][0]):f._newDataSource.push(s[0][0]),f._newDataSource=f._newDataSource.concat(v)):f._newDataSource=f._newDataSource.concat(s[0])):f._deepWatch?(h=this._getObjectPosition(f._newDataSource,e.attr("id"),f.model.fields.id),h=h>=0&&!e.is("A")?o?h:h+1:u,i?f._changeObjectPos(i,s,f._newDataSource,h):f._newDataSource.splice(h,0,s[0])):i?f._changeObjectPos(i,s,f._newDataSource,u):f._newDataSource.splice(u,0,s[0]),f._deepWatch&&(f.dataSource(f._newDataSource),f._oldDataSource=JSON.parse(JSON.stringify(f._newDataSource))),this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource))),!0;if(r[c].hasOwnProperty("child")&&this._findAndUpdate(n,i,r[c].child,u,f,e,o))break}},_changeObjectPos:function(n,i,r,u){for(var f=0,e=r.length;f<e;f++){if(t.getObject(this.model.fields.id,r[f]).toString()==n)return r[f].hasOwnProperty("child")?r[f].child.splice(u,0,i[0]):(r[f].child=[],r[f].child.push(i[0])),!0;if(r[f].hasOwnProperty("child")&&this._changeObjectPos(n,i,r[f].child,u))break}},_finalizeEditing:function(t){if(n(t)[0]!=null){var i=t.closest(".e-treeview.e-js").data("ejTreeView");i&&(i._preventEditable(),i.model.allowEditing&&i._allowEditable())}},_updateCheckState:function(n){var t,i,r;this._isTreeElement(n)&&(t=n.closest(".e-treeview.e-js").data("ejTreeView"),t&&t.model.showCheckbox&&(i=n.children("ul").find(".e-item > div > .e-chkbox-wrap > .checked").closest(".e-item").addClass("checked"),i.length>0?t._isCheckedAction():(r=t.isNodeChecked(n)?"_nodeCheck":"_nodeUncheck",t[r](n.find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0]))))},_autoGenerateNodes:function(t){var i,u,r,f;if(n(t)[0]!=null)if(i=t.closest(".e-treeview.e-js").data("ejTreeView"),i&&i.model.showCheckbox){if(t.find(".e-chkbox-wrap").length==0){for(this._checkboxOnTemplate(t[0].children[0]),u=t.find(".e-item"),r=0,f=u.length;r<f;r++)this._checkboxOnTemplate(u[r].children[0]);t.find(".nodecheckbox").ejCheckBox({cssClass:i.model.cssClass,change:i._checkedChange})}}else t.find(".e-chkbox-wrap").remove()},_appendNode:function(i,r){var u,o,f,s,e;for(this._isTreeElement(i)?(i.find("ul.e-treeview-ul")[0]==null?(u=i.closest(".e-treeview.e-js").data("ejTreeView"),u&&(s=this._isNodeExpanded(i),!s&&u.model.loadOnDemand&&i.find("> div > div").first().hasClass("e-plus")&&u._createChildNodesWhenExpand(i,null,null,null,r,u)),this.dataSource()instanceof t.DataManager&&u.model.loadOnDemand&&i.find("> div > div").first().hasClass("e-plus")||this._doAfterExpand(i,r,u),this._deepWatch&&this._templateType==1&&(this._updateField(this._newDataSource,i.attr("id"),this.model.fields,"hasChild",!0),this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource))):n(i.find("ul.e-treeview-ul")[0]).append(r),this.isDisabled(i)||this._expandNode(i)):this.element.is("UL")?this.element.append(r):this.element.children("ul:first").length>0?this.element.children("ul:first").append(r):(o=t.buildTag("ul.e-treeview-ul","",{},{role:"group"}),o.append(r),this.element.append(o)),f=this.element.find(".e-item.expanded"),e=0;e<f.length;e++)this.model.loadOnDemand&&!(this.dataSource()instanceof t.DataManager)?this._createChildNodesWhenExpand(n(f[e])):this._expandNode(n(f[e]));f.removeClass("expanded");this.model.showCheckbox&&this._isCheckedAction()},_doAfterExpand:function(i,r,u){var e=t.buildTag("ul.e-treeview-ul","",{},{role:"group",style:"display:none"}),f;n(e).append(n(r));n(i.find("div")[1]).length==0?(f=document.createElement("div"),f.setAttribute("role","presentation"),f.className="e-icon e-minus",n(i.find("div")).append(n(f))):n(i.find("div")[1]).hasClass("e-minus")||n(i.find("div")[1]).addClass("e-icon e-plus");u&&u.model.loadOnDemand&&i.find("ul.e-treeview-ul").length>0?i.children("ul.e-treeview-ul").append(n(r)):i.append(n(e))},_modifyCss:function(t){t=n(t);t[0]!=null&&t.find(".e-item").length==0&&(t.removeClass("e-collapse").attr("aria-expanded",!1).find("> div > .e-icon").removeClass("e-icon e-minus").closest(".e-item").find("ul").remove(),this._deepWatch&&(this._updateField(this._newDataSource,t.attr("id"),this.model.fields,"expanded",!1),this._templateType==1&&this._updateField(this._newDataSource,t.attr("id"),this.model.fields,"hasChild",!1),this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource)))},_applyFirstLastChildClass:function(){n(this._liList).removeClass("first last").filter(":first-child:not(:last-child)").addClass("first");n(this._liList).filter(":last-child").addClass("last")},_expandEventHandler:function(t){var i=n(t.target),r,u;i.hasClass("e-icon")||i.closest(".e-item").hasClass("e-node-disable")||t.type==="dblclick"&&this.model.allowEditing||(t.preventDefault(),r=i.is("A")?n(i.siblings("div")):n(i.parents(".e-text-wrap").find("div")),this.model.fullRowSelect&&(i.is("div.e-text-wrap")||i.is("div.e-fullrow"))&&(r=i.closest(".e-item").find("> .e-text-wrap > div")),u=i.closest(".e-item"),r.hasClass("e-minus")?this._collapseNode(u):this.model.loadOnDemand&&r.find(".e-item").length==0?this._ClickEventHandler({target:r[0]}):this._expandNode(u))},_inlineEdit:function(t){t.preventDefault();var i=n(t.target);return i.hasClass("input-text")||i.hasClass("e-node-disable")||(i.is("A")||(i=i.closest(".e-text")),i.is("A")&&!i.hasClass("e-node-disable")&&this._inlineEditAction(i)),!1},_inlineEditAction:function(n){var t=this.element.find(".e-item > div > .e-text > #Edit_Input");t[0]==null&&this._createEditTextBox(n)},_createEditTextBox:function(r){var s={currentElement:r},u,h,f,o,e;return this._triggerEvent("beforeEdit",s)?!1:(u=this.element.find(".e-item > div > .e-text > #Edit_Input"),u[0]==null&&(f=t.buildTag("Input.input-text#Edit_Input","","",{type:"text",value:n.trim(r.text()).replace(/\n\s+/g," "),name:"inplace_value"}),n(f).css("width",r.outerWidth()+5+"px"),n(f).css("height",r.outerHeight()+"px"),f.addClass("e-tree-input e-textbox"),this._beforeEditText=r.text(),r[0].lastChild.nodeValue="",this.model.template&&(o=r.closest("li")["0"].id,e=this._getNodeObject(o,!0),r["0"].innerHTML=" ",e&&e.length!=0&&(f["0"].value=e["0"]!=i?e["0"]:"",n(f).css("width",r.outerWidth()+80+"px"),n(f).css("height",r.outerHeight()+10+"px"))),r.addClass("e-editable").append(f),u=f,h=u.val().length==""?3:r.outerWidth()+20,this._mousePositionAtEnd(u),this._currentEditableNode=r,this._on(u,"keypress",this._editTextBoxKeyPress)._on(u,"keydown",this,this._pressEscKey)._on(u,"mousedown pointerdown MSPointerDown",this,this._preventPropagation)._on(u,this.model.expandOn,this,this._preventPropagation)._on(u,"blur",this._focusout)),u)},_preventPropagation:function(n){n.stopImmediatePropagation();this._isTextbox=!0},_editTextBoxKeyPress:function(n){n.target.size=n.target.value.length+1},_mousePositionAtEnd:function(n){return n.focus&&n.focus(),n.select&&n.select(),!0},_focusElement:function(t){var r,i;this._isTextbox||(t&&(t.type=="touchstart"||t.type=="pointerdown"||t.type=="MSPointerDown")&&(r=n(t.currentTarget),r.hasClass("e-text")&&this.selectNode(r.closest(".e-item"))),this.model.template?(i=n(t.target).closest(".e-text")[0],i=i?i:t.target,this._focusNode(i)):this._focusNode(t.target))},_blurElement:function(t){n(t.target).hasClass("e-text")&&t.target.removeAttribute("tabindex")},_focusout:function(t){var i=n(t.currentTarget),r;this._isTextbox=!1;r={id:i.closest(".e-item").attr("id"),oldText:this._beforeEditText,newText:i.val()};this._triggerEvent("inlineEditValidation",r)?this._cancelAction(i):this._saveAction(i,t)},_pressEscKey:function(i){var r,f,u,e;i.cancelBubble=!0;i.returnValue=!1;r=n(i.currentTarget);r[0]!=null&&(f=r.closest(".e-text")[0],i.keyCode==13&&(i.stopPropagation(),this._focusout(i)),i.keyCode==27&&this._cancelAction(r),(i.keyCode==13||i.keyCode==27)&&(u=t.browserInfo(),e=u.name=="msie"&&u.version=="8.0"?!0:!1,e&&this._focusNode(f)))},_onFocusHandler:function(n){n.preventDefault()},_onKeyDown:function(n,t){var u=this.element.find("#"+this._id+"_active"),r,i;u.removeAttr("id");r=n.find("> div > .e-text:first");i=t.find("> div > .e-text:first");r.removeClass("e-node-focus");i.addClass("e-node-focus");this.element.removeAttr("aria-activedescendant");i.closest(".e-item")[0].id!=null&&i.closest(".e-item")[0].id!=""?this.element.attr("aria-activedescendant",i.closest(".e-item")[0].id):(i.closest(".e-item").attr("id",this._id+"_active"),this.element.attr("aria-activedescendant",this._id+"_active"));this.model.fullRowSelect&&(n.removeClass("e-li-focus"),t.addClass("e-li-focus"))},_KeyPress:function(t){var f,r=this,s,e,i,p,h,w,l,a,v,k,b,o,y,u,c,d;if(c=this.element.is("ul")?this.element:this.element.find("> ul"),f=t.keyCode?t.keyCode:t.which?t.which:t.charCode,r.model.allowKeyboardNavigation&&r.element.find("#Edit_Input").length<1&&r.element.find(".e-chkbox-wrap.e-focus").length<1)if(this.element.find(".e-animate").removeClass("e-animate"),s=n(c.find(".e-item > div > .e-text.e-active").closest(".e-item")[0]),e=c.find(".e-item:visible"),r._focusedNode?(i=r._focusedNode,r._focusedNode=null):i=c.find(".e-text.e-node-focus").closest(".e-item"),f==113&&(t.preventDefault(),c=i.length>0?i:s,c.length>0&&r.model.allowEditing&&!this.model.template&&(t.target=c.find("> div > .e-text:first"),r._inlineEdit(t))),f!=40||t.altKey)if(f!=38||t.altKey)if((f!=39||this.model.enableRTL||t.altKey)&&(f!=37||!this.model.enableRTL))if((f!=37||this.model.enableRTL||t.altKey)&&(f!=39||!this.model.enableRTL)){if(f!=36||t.altKey){if(f!=35||t.altKey){if(f==13)t.preventDefault(),u=i.length>0?i:s,k=u.find("> div > .e-text"),k.removeClass("e-node-focus"),this.model.fullRowSelect&&u.removeClass("e-li-focus"),k.hasClass("e-active")?r.model.allowMultiSelection&&r._nodeUnSelectionAction(u,event):r._nodeSelectionAction(u,t),r._focusedNode=u;else if(f==32)t.preventDefault(),u=i.length>0?i:s,u.length>0&&this.model.showCheckbox&&(b=u.find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0],b.checked?this._nodeUncheck(b):this._nodeCheck(b),r._focusedNode=u);else if(f==46)t.preventDefault(),u=i.length>0?i:this.model.allowMultiSelection?c.find(".e-item > div > .e-text.e-active").closest(".e-item"):s,u.length>0&&(this._removeNode(u,t),o=n(e[0]).find("> div > .e-text:first"),this._focusNode(o[0]));else if(t&&t.ctrlKey==!0)if(f==88&&this.model.allowDragAndDrop&&this.model.allowDropChild){if(t.preventDefault(),u=i.length>0?i:s,u.length>0){if(y=u.parents(".e-item:first"),this._triggerEvent("beforeCut",{target:u,nodeDetails:this._getNodeDetails(u),keyCode:f,event:t}))return;this._cutNode=n(e[e.index(u)]).detach();n(this._cutNode)[0]!=null&&(this._isRender=!1,this.unselectNode(u),y.find("> ul > .e-item").length==0&&(this.collapseNode(y),this._modifyCss(y)),this._isRender=!0,this._triggerEvent("nodeCut",{parentElement:y,parentDetails:this._getNodeDetails(y),keyCode:f,event:t}))}}else if(f==86&&this._cutNode!=null&&this.model.allowDragAndDrop&&this.model.allowDropChild){if(t.preventDefault(),u=i.length>0?i:s,u=n(e[e.index(u)]),u.length===0&&(u=this.element),c=this._cutNode.find(" > div > .e-text").first(),n(e).length>0){if(this._triggerEvent("beforePaste",{target:u,nodeDetails:this._getNodeDetails(u),keyCode:f,event:t}))return;this._isRender=!1;this._dropAsChildNode(u,c,t);this._isRender=!0;this._cutNode=null;d=c.closest(".e-item");this._triggerEvent("nodePaste",{target:d,nodeDetails:this._getNodeDetails(d),keyCode:f,event:t})}}else r.model.allowMultiSelection&&(r._focusedNode=i)}else if(t.preventDefault(),v=i.length>0?i:s,a=n(e).last(),(a.hasClass("e-node-disable")||a.hasClass("hidden"))&&(a=this._getPrevEle(e,a)),s.length>0&&i.length==0&&s[0]!=a[0]||i.length>0&&i[0]!=a[0]){if(r._KeyPressEventHandler(a,r,f,t))return;r._onKeyDown(v,a)}}else if(t.preventDefault(),v=i.length>0?i:s,l=n(e).first(),(l.hasClass("e-node-disable")||l.hasClass("hidden"))&&(l=this._getNextEle(e,l)),s.length>0&&i.length==0&&s[0]!=l[0]||i.length>0&&i[0]!=l[0]){if(r._KeyPressEventHandler(l,r,f,t))return;r._onKeyDown(v,l)}}else if(t.preventDefault(),w=i.length>0?i.find("> div > div").first():s.find("> div > div").first(),h=w.closest(".e-item"),w.hasClass("e-minus"))this._collapseNode(n(e[e.index(w.closest(".e-item"))]));else{if(h=n(e[e.index(h)]).closest("ul").closest(".e-item"),r._KeyPressEventHandler(h.length>0?h:"",r,f,t))return;h.length>0&&r._onKeyDown(i,h)}else if(t.preventDefault(),p=i.length>0?i.find("> div > div").first():s.find("> div > div").first(),o=p.closest(".e-item"),p.hasClass("e-plus"))this.model.loadOnDemand&&o.find("> ul .e-item").length==0?this._ClickEventHandler({target:p[0]}):this._expandNode(n(e[e.index(o)]));else{if(o=this._getNextEle(e,o),r._KeyPressEventHandler(o.length>0?o:"",r,f,t))return;(o.length>0&&o[0]==p.closest(".e-item").find("ul > .e-item:first")[0]||o.find("ul > .e-item").first().hasClass("e-node-disable"))&&r._onKeyDown(i,o)}else{if(t.preventDefault(),v=i.length>0?i:s,h=this._getPrevEle(e,v),r._KeyPressEventHandler(h.length>0?h:null,r,f,t))return;h.length>0&&r._onKeyDown(i,h)}else{if(t.preventDefault(),v=i.length>0?i:s,o=this._getNextEle(e,v),r._KeyPressEventHandler(o.length>0?o:null,r,f,t))return;o.length>0&&r._onKeyDown(i,o)}},_getNextEle:function(t,i){var u=t.index(i),r;do u++,r=n(t[u]);while(r.hasClass("e-node-disable")||r.hasClass("hidden"));return r},_getPrevEle:function(t,i){var u=t.index(i),r;do u--,r=n(t[u]);while(r.hasClass("e-node-disable")||r.hasClass("hidden"));return r},_removeChildNodes:function(n,i,r){for(var e,f,o,s=0,h,u=0;u<i.length;u++)if(e=t.getObject(this.model.fields.parentId,i[u][0]),!t.isNullOrUndefined(e)&&e.toString()==r){s=i[u].length;break}for(u=0;u<s;u++)for(f=0;f<n.length;f++)if(o=t.getObject(this.model.fields.parentId,n[f]),!t.isNullOrUndefined(o)&&o.toString()==r){t.isNullOrUndefined(n[f])||(h=t.getObject(this.model.fields.id,n[f]).toString());n.splice(f,1);this._removeChildNodes(n,i,h);break}},_removeNode:function(i,r){var u,s,o,e,f;if(i[0]!=null&&i[0]!=null&&i.length>0){if(e=this,u=n(i[0]).closest("ul").closest(".e-item"),s=n(i[0]),o=n(i).closest(".e-treeview.e-js").data("ejTreeView"),o._triggerEvent("beforeDelete",{target:s,nodeDetails:o._getNodeDetails(s),parentElement:u[0]!=null?u:null,parentDetails:o._getNodeDetails(u),event:r,removedNodes:i}))return;if(this._isRender=!1,this.dataSource()instanceof t.DataManager?(f=this._newDataSource,this._removeData(i,f)):!t.isNullOrUndefined(this.dataSource())&&this.dataSource().length>0&&(f=this.dataSource(),this._removeData(i,f),this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(f)),this.dataSource(f))),i.remove(),this._modifyCss(u),this._updateNodes(),this._updateCheckState(u),this._isRender=!0,o._triggerEvent("nodeDelete",{parentElement:u[0]!=null?u:null,parentDetails:o._getNodeDetails(u),event:r,removedNodes:i}))return;e=this;f=this.dataSource();setTimeout(function(){e.dataSource()==null||e.dataSource()instanceof t.DataManager||(e._dataSource=e._groupingObjects(f,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(e.model.fields.parentId,n)].toString()]}))},300)}},_removeData:function(t,i){for(var r=0,u=t.length;r<u;r++)this._templateType==2?this._removeRemoteData(i,n(t[r]),this.model.fields):this._removeLocalData(i,n(t[r]))},_removeLocalData:function(n,i){for(var u,f,e,o=this,r=0;r<n.length;r++)if(u=i.attr("id"),f=t.getObject(this.model.fields.id,n[r]),f&&f.toString()==u){e=this._groupingObjects(n,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(o.model.fields.parentId,n)].toString()]});n.splice(r,1);this._removeChildNodes(n,e,u);break}},_removeRemoteData:function(n,i,r){for(var e,f,u=0;u<n.length;u++){if(e=i.attr("id"),f=t.getObject(r.id,n[u]),f&&f.toString()==e){n.splice(u,1);break}n[u].hasOwnProperty("child")&&this._removeRemoteData(n[u].child,i,r.child?r.child:r)}},_updateNodes:function(){this._beforeBaseClass();this._applyFirstLastChildClass();this._updateExpandedNodes();this._updateCheckedNodes();this._updateSelectedNode()},_updateField:function(n,i,r,u,f){var c,e,s,l,o,h;if(!t.isNullOrUndefined(r)&&this.dataSource()!=null&&!t.isNullOrUndefined(n)&&!t.isNullOrUndefined(i)&&!t.isNullOrUndefined(u))if(this._templateType==1){for(e=0,s=n.length;e<s;e++)if(c=t.getObject(r.id,n[e]),!t.isNullOrUndefined(n[e])&&!t.isNullOrUndefined(c)&&c.toString()==i){o=r[u]?r[u]:u;n[e][o]=f;f==!1&&delete n[e][o];h=n[e];n.splice(e,1,h);break}}else for(e=0,s=n.length;e<s;e++){if(l=t.getObject(r.id,n[e]),!t.isNullOrUndefined(n[e])&&!t.isNullOrUndefined(l)&&l.toString()==i){o=r[u]?r[u]:u;n[e][o]=f;f==!1&&delete n[e][o];h=n[e];n.splice(e,1,h);break}n[e].hasOwnProperty("child")&&this._updateField(n[e].child,i,r.child?r.child:r,u,f)}},_removeField:function(n,r,u){if(!t.isNullOrUndefined(r)&&this.dataSource()!=null&&!t.isNullOrUndefined(n))for(var f=0;f<n.length;f++)n[f][r[u]]!=i&&delete n[f][r[u]],n[f].hasOwnProperty("child")&&this._removeField(n[f].child,r.child?r.child:r,u)},_KeyPressEventHandler:function(t,i,r,u){var f,e,o,s;return n(t)[0]!=null?(s=this._isNodeExpanded(t),f=this._getNodeDetails(t),o=i._getPath(t),e={keyCode:r,currentElement:t,value:f.text,isExpanded:s,path:o,event:u,id:f.id,parentId:f.parentId}):e={keyCode:r,currentElement:t,value:"",isExpanded:"",path:"",event:u,id:"",parentId:""},this._triggerEvent("keyPress",e)},_documentClick:function(t){var i,e,u,f;if(t.target.id!="Edit_Input"&&(i=n("#Edit_Input")[0]),i!=null){var e=n(i).closest(".e-text")[0],u=i.value,r=n(i).closest(".e-item");n(i).remove();e.lastChild.nodeValue=u;n(e).removeClass("e-editable").removeAttr("style");this._updateField(this._newDataSource,r.attr("id"),this.model.fields,"text",u);this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource));this._triggerEvent("nodeEdit",{id:r.attr("id"),oldText:this._beforeEditText,newText:u,target:r,nodeDetails:this._getNodeDetails(r),event:t})}this.element.find(t.target).length==0?(f=this.element.find(".e-item > div > .e-text.e-node-focus"),this._focusedNode=f.closest(".e-item"),f.removeClass("e-node-focus")):n(t.target).hasClass("e-active")&&(this._focusedNode=this.element.find(t.target).closest(".e-item"))},_saveAction:function(t,i){var e=t.val(),r=t.closest(".e-item"),u=t.closest(".e-text")[0],o=t.closest("li")["0"].id,f;t.remove();u!=null&&(u.lastChild.nodeValue=e,n(u).removeClass("e-editable"),this._updateField(this._newDataSource,r.attr("id"),this.model.fields,"text",e),this.model.template&&(f=this._getNodeObject(o),f&&f.length!=0&&(u.innerHTML=this._renderEjTemplate(this.model.template,f["0"]))),this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource)),this._triggerEvent("nodeEdit",{id:r.attr("id"),oldText:this._beforeEditText,newText:e,target:r,nodeDetails:this._getNodeDetails(r),event:i}),this.element.focus(),this._focusedNode=r)},_cancelAction:function(t){var i=t.closest(".e-text")[0];t.remove();i.lastChild.nodeValue=this._beforeEditText;n(i).removeClass("e-node-hover e-editable");this.element.focus()},_focusNode:function(t){n(t).hasClass("e-text")&&t.setAttribute("tabindex","0");t.focus()},_mouseEnterEvent:function(t){this.element.find(".e-node-hover").removeClass("e-node-hover");n(t.currentTarget).hasClass("e-text")&&!n(t.currentTarget).hasClass("e-node-disable")&&n(t.currentTarget).addClass("e-node-hover")},_mouseLeaveEvent:function(t){n(t.currentTarget).removeClass("e-node-hover")},_liMouseEnterEvent:function(t){this.element.find(".e-node-hover").removeClass("e-node-hover");this.element.find(".e-li-hover").removeClass("e-li-hover");var r=n(t.currentTarget).closest(".e-item"),i=r.find("> div .e-text");i.length>0&&!i.hasClass("e-node-disable")&&(i.addClass("e-node-hover"),r.addClass("e-li-hover"))},_liMouseLeaveEvent:function(t){var i=n(t.currentTarget).closest(".e-item");i.find("> div .e-text").removeClass("e-node-hover");i.removeClass("e-li-hover")},_onFocusOutHandler:function(){this._isPopup||this._hidePopup();this._isPopup=!1},_createObjectByText:function(i,r){if(typeof i=="string"){var u={};return t.createObject(this.model.fields.text,i,u),n(r)[0]!=null&&t.createObject(this.model.fields.parentId,r[0].getAttribute("id"),u),u}},_addNodesWhenObject:function(i,r){var l=JSON.stringify(this._dataSource),e=this.dataSource(),f,h,u,s,o,c;if(this._dataSource=[],this.dataSource()!=null&&this.dataSource()instanceof t.DataManager&&(e=[]),r[0]!=null&&r.length>0&&(f=r[0].getAttribute("id")),t.isNullOrUndefined(i.length))this._dataSource.push(i),t.isNullOrUndefined(this.dataSource())||(this._setNodeId(i,this.model.fields),t.isNullOrUndefined(f)||t.createObject(this.model.fields.parentId,f,i),e.push(i));else if(this._dataSource=i,!t.isNullOrUndefined(this.dataSource()))for(u=0;u<i.length;u++)this._setNodeId(i[u],this.model.fields),f?t.createObject(this.model.fields.parentId,f,i[u]):this._deepPropertyDelete(this.model.fields.parentId,i[u]),e.push(i[u]);for(h=this._templateType,this._templateType=2,this._liList||(this._liList=n("li",this.element)),s=document.createDocumentFragment(),o=0,c=this._dataSource.length;o<c;o++)s.appendChild(this._genTemplate(this._dataSource[o],this.model.fields)),this._liList.push(n(s).children()[0]),this.dataSource()instanceof t.DataManager&&this._addRemoteData(this._newDataSource,f,this._dataSource[o],this.model.fields);return this._templateType=h,this.dataSource()==null||this.dataSource()instanceof t.DataManager||(this._dataSource=JSON.parse(l),this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(e)),this.dataSource(e))),s},_setNodeId:function(n,i){var u=i&&i.id?i.id:this.model.fields.id,f,r,e;if((t.isNullOrUndefined(n[u])||n[u]=="")&&(n[u]=this._id+"_"+this._indexID,this._indexID++),n.hasOwnProperty("child"))for(f=n.child,r=0,e=f.length;r<e;r++)this._setNodeId(f[r],i.child)},_addExpandedNodes:function(t){var i=this.model.expandedNodes;this._removeNullInArray(i);n.inArray(t,i)==-1&&this.model.expandedNodes.push(t);this._persistValues(this.model.expandedNodes,"expandedNodes")},_removeExpandedNodes:function(t){var i=this.model.expandedNodes;n.inArray(t,i)>-1&&(this.model.expandedNodes.splice(n.inArray(t,i),1),i.length==0&&i.push(-1));this._persistValues(this.model.expandedNodes,"expandedNodes")},_persistValues:function(i,r){var f,o,c,s,u,l,h,e;if(!t.isNullOrUndefined(this.model.fields)&&this.dataSource()!=null){for(f=i,o=[],u=0,l=f.length;u<l;u++)!t.isNullOrUndefined(f[u])&&f[u]>=0&&(c=this._liList[f[u]],s=n(c).attr("id"),s&&o.push(s));h=this._getCookies("_persistedValues");h&&(e=JSON.parse(h),e[r]=o,e=this._updatePersistAttr(e),this._setCookies("_persistedValues",JSON.stringify(e)))}},_updatePersistAttr:function(i){return t.isNullOrUndefined(this._ignoreOnPersist)?(n.inArray("selectedNodes",this._addToPersist)==-1&&delete i.selectedNodes,n.inArray("expandedNodes",this._addToPersist)==-1&&delete i.expandedNodes,n.inArray("checkedNodes",this._addToPersist)==-1&&delete i.checkedNodes):(n.inArray("selectedNodes",this._ignoreOnPersist)>-1&&delete i.selectedNodes,n.inArray("expandedNodes",this._ignoreOnPersist)>-1&&delete i.expandedNodes,n.inArray("checkedNodes",this._ignoreOnPersist)>-1&&delete i.checkedNodes),i},_onChecked:function(n,i){var u=n.closest(".e-item"),f,e,o,r=this._getNodeDetails(u);this._CurrenctSelectedNodes.push(r.text);f=this._isChecked(u);e=t.isNullOrUndefined(i)?"":t.isNullOrUndefined(i.event)?"":i.event;o={currentElement:u,id:r.id,parentId:r.parentId,value:r.text,currentNode:this._CurrenctSelectedNodes,currentCheckedNodes:this._checkedArray,isChecked:f,event:e};this._isRender&&this._triggerEvent("nodeCheck",o)},_onUnChecked:function(n,i){var u=n.closest(".e-item"),f,e,o,r=this._getNodeDetails(u);this._CurrenctSelectedNodes.push(r.text);f=this._isChecked(u);e=t.isNullOrUndefined(i)?"":t.isNullOrUndefined(i.event)?"":i.event;o={currentElement:u,id:r.id,parentId:r.parentId,value:r.text,currentNode:r.text,currentUncheckedNodes:this._uncheckedArray,isChecked:f,event:e};this._triggerEvent("nodeUncheck",o)},_addCheckNodes:function(n){var t=this.model.checkedNodes;this._removeNullInArray(t);!t instanceof Array&&(t=[]);t.indexOf(n)==-1&&t.push(n)},_removeCheckNodes:function(n){var t=this.model.checkedNodes,i;!t instanceof Array&&(t=[]);i=t.indexOf(n);i!=-1&&(t.splice(i,1),t.length==0&&t.push(-1))},_removeNullInArray:function(n){var t=n.indexOf(-1);t!=-1&&n.splice(t,1)},_afterInsertingNode:function(n){this._addDragableClass();this._finalizeEditing(n);var t=n.closest("ul").closest(".e-item");this._modifyCss(t);this._updateCheckState(t);this._isSelectedAction();t.length>0&&t.hasClass("e-node-disable")&&this._nodeDisableAction(t);this._updateSelectedNode()},_insertBeforeOrAfter:function(i,r,u){var f,o,e,s;if(r=this._getNodeByID(r),r[0]!=null&&r.is("LI")&&r.hasClass("e-item")){if(this._triggerEvent("beforeAdd",{data:i,targetParent:r[0]!=null?r:null,parentDetails:this._getNodeDetails(r)}))return;if(this._isRender=!1,typeof i!="object"&&(i=this._createObjectByText(i)),typeof i!="object")return;t.getObject(this.model.parentId,i)&&this._deepPropertyDelete(this.model.parentId,i);f=this._addNodesWhenObject(i,r);o=document.createElement("ul");n(o).append(f);f=n(o.children);this.model.showCheckbox&&f.children().find(".nodecheckbox").ejCheckBox({cssClass:this.model.cssClass,change:this._checkedChange});r.parents(".e-item:first").length>0?r.parents(".e-item:first").append(f):this.element.append(f);this.model.showCheckbox&&this._isCheckedAction();this._dropAsSiblingNode(r,f.find("> div > .e-text"),u,"");this._afterInsertingNode(f);this._isRender=!0;this._triggerEvent("nodeAdd",{data:i,nodes:f,parentElement:r[0]!=null?r:null,parentDetails:this._getNodeDetails(r)});e=this;s=this.dataSource();setTimeout(function(){e.dataSource()==null||e.dataSource()instanceof t.DataManager||(e._dataSource=e._groupingObjects(s,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(e.model.fields.parentId,n)].toString()]}))},300)}},_getNodeByID:function(t){return typeof t!="object"&&t!=""&&t!=i?this.element.find(this._checkValidId(t.toString())):(t=n(t),t.is("A")&&t.hasClass("e-text")&&(t=t.closest(".e-item")),t)},_checkValidId:function(n){return n[0]=="#"?n.replace(/(:|\.|\[|\]|,)/g,"\\$1"):"#"+n.replace(/(:|\.|\[|\]|,)/g,"\\$1")},_isTreeElement:function(t){return n(t)[0]!=null&&t.is("LI")&&t.hasClass("e-item")},_isUrl:function(n){return/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/.test(n)},_getChildUl:function(n){return this.model.fullRowSelect?n.children[2]:n.children[1]},_sendAjaxOptions:function(n,t){var r=this,i,u;i=this._getNodeDetails(t);i.mapper=this.model.fields;i.model=this.model;u={url:n,data:i,type:"POST",async:!0,crossDomain:!0,dataType:"JSON",contentType:"application/json; charset=utf-8",success:function(n){try{r._ajaxSuccessHandler(n,t)}catch(i){}},error:function(n){try{r._ajaxErrorHandler(n)}catch(t){}}};this._sendAjaxRequest(u)},_sendAjaxRequest:function(t){var i=JSON.parse(JSON.stringify(t));(delete i.success,delete i.error,this._triggerEvent("beforeLoad",{ajaxOptions:i}))||(delete i.success,delete i.error,n.extend(t,i),n.ajax({type:t.type,url:t.url,dataType:t.dataType,data:t.data,async:t.async,contentType:t.contentType,crossDomain:t.crossDomain,success:t.success,error:t.error}))},_ajaxSuccessHandler:function(n,t){this._isRender=!1;typeof n=="object"&&this.addNode(n,t);this._isRender=!0;this._triggerEvent("loadSuccess",{data:n,targetParent:t,parentDetails:this._getNodeDetails(t)})},_ajaxErrorHandler:function(n){this._triggerEvent("loadError",{error:n})},_wireEvents:function(){this._isDevice&&n.isFunction(n.fn.tap)?this._on(this.element.find("li"),"tap",this._ClickEventHandler):this._on(this.element,"click",this._ClickEventHandler);this._on(this.element,this._isDevice&&n.isFunction(n.fn.tap)?this._touchExpandOn:this.model.expandOn,this._expandEventHandler)._on(this.element,"focus",this._onFocusHandler)._on(this.element,"blur",this._onFocusOutHandler);this._wholeRowEvents("_on");this.model.allowEditing&&this._allowEditable();this.model.allowDragAndDrop&&this._addDragableClass();this.model.showCheckbox&&this.element.find(".nodecheckbox").ejCheckBox("enable");this.model.allowKeyboardNavigation&&this._on(this.element,"keydown",this._KeyPress)},_unWireEvents:function(){this._isDevice&&n.isFunction(n.fn.tap)?this._off(this.element.find("li"),"tap"):this._off(this.element,"click");this._off(this.element,this._isDevice&&n.isFunction(n.fn.tap)?this._touchExpandOn:this.model.expandOn)._off(this.element,"focus")._off(this.element,"blur");this._wholeRowEvents("_off");this._preventEditable();this._preventDraggable();this.model.allowKeyboardNavigation&&this._off(this.element,"keydown");this.model.showCheckbox&&this.element.find(".nodecheckbox").ejCheckBox("disable")},_wholeRowEvents:function(t){this.model.fullRowSelect?(this[t](this.element,this._isDevice&&n.isFunction(n.fn.touchstart)?"touchstart":"mouseenter",".e-text-wrap",this._liMouseEnterEvent),this[t](this.element,this._isDevice&&n.isFunction(n.fn.touchend)?"touchend":"mouseleave",".e-text-wrap",this._liMouseLeaveEvent),this[t](this.element,this._isDevice&&n.isFunction(n.fn.touchstart)?"touchstart":"mouseenter",".e-fullrow",this._liMouseEnterEvent),this[t](this.element,this._isDevice&&n.isFunction(n.fn.touchend)?"touchend":"mouseleave",".e-fullrow",this._liMouseLeaveEvent)):(this[t](this.element,this._isDevice&&n.isFunction(n.fn.touchstart)?"touchstart":"mouseenter",".e-text",this._mouseEnterEvent),this[t](this.element,this._isDevice&&n.isFunction(n.fn.touchend)?"touchend":"mouseleave",".e-text",this._mouseLeaveEvent))},_enableDragDrop:function(){this.model.allowDragAndDrop&&(this._drag(),this.model.allowDropChild&&this._childDrop(),this.model.allowDropSibling&&this._siblingDrop())},_allowEditable:function(){this.element.find(".e-item").addClass("AllowEdit");this._on(n(document),"click",this._documentClick)._on(this.element,this._isDevice&&n.isFunction(n.fn.tap)?"doubletap":"dblclick","a.e-text",this._inlineEdit)},_preventEditable:function(){this.element.find(".e-item").removeClass("AllowEdit");this._off(n(document),"click",this._documentClick)._off(this.element,this._isDevice&&n.isFunction(n.fn.tap)?"doubletap":"dblclick","a.e-text")},_preventDraggable:function(){this.element.find(".e-draggable, .e-droppable").removeClass("e-draggable e-droppable");this._preventDropSibling();this._preventDropChild();this._off(this.element,"mouseup touchstart pointerdown MSPointerDown",this._anchors,this._focusElement);this._off(this.element,"focusout",this._anchors,this._blurElement)},_preventDropSibling:function(){this.element.find(".e-dropsibling").removeClass("e-dropsibling")},_preventDropChild:function(){this.element.find(".e-item > div > .e-dropchild").removeClass("e-dropchild")},_getNodeObject:function(n,r){if(!t.isNullOrUndefined(this.model.fields)&&this.dataSource()!=null&&n!=i){if(this._templateType===1){var f=t.Query().where(this.model.fields.id,"equal",n,!1),u=t.DataManager(this._newDataSource).executeLocal(f);return u.length>0&&r?[u[0][this.model.fields.text]]:u}return this._getRemoteNode(this._newDataSource,this.model.fields,n,r)}return[]},_getChildMapper:function(n){return typeof n.child=="string"||t.isNullOrUndefined(n.child)?n:n.child},_getNodeData:function(r){var f,y,p,e,w,s;if(!t.isNullOrUndefined(this.model.fields)&&this.dataSource()!=null&&r!=i){this._updatePersistProb();var u=[],h=[],c=this._orderDataSource().length,l=null;for(f=0;f<c;f++)this._orderDataSource()[f][this.model.fields.id]==r&&(l=r,f=c);if(l){if(this.dataSource()instanceof t.DataManager&&this._templateType==2)return this._getRemoteNode(this._newDataSource,this.model.fields,r);if(this._templateType==2)u=JSON.parse(JSON.stringify(this._getRemoteNode(this._newDataSource,this.model.fields,r)));else{var a=[],o=this._orderDataSource(),b=t.Query().where(this.model.fields.id,"equal",r,!1),k=t.DataManager(o).executeLocal(b),v=this._getFilterItems(k[0],o);for(f=0,y=v.length;f<y;f++)a.push(new t.Predicate(this.model.fields.id,"equal",v[f],!1));p=t.Query().where(t.Predicate.or(a));u=JSON.parse(JSON.stringify(t.DataManager(o).executeLocal(p)))}for(e=0,w=u.length;e<w;e++)s=t.getObject(this.model.fields.id,u[e]),n(document.getElementById(s)).length>0&&(n(document.getElementById(s)).find("> ul .e-item").length==0?(this._deepPropertyDelete(this.model.fields.hasChild,u[e]),this._templateType==2&&delete u[e].child):this._templateType==1?t.createObject(this.model.fields.hasChild,!0,u[e]):this._updateChildData(u[e].child,this.model.fields),h.push(u[e]));return h}}},_updateChildData:function(r,u){var f,o,e;if(r!=i)for(f=0,o=r.length;f<o;f++)e=t.getObject(u.id,r[f]),n(document.getElementById(e)).length>0&&(n(document.getElementById(e)).find("> ul .e-item").length==0?(this._deepPropertyDelete(u.hasChild,r[f]),delete r[f].child):this._updateChildData(r[f].child,u.child?u.child:u))},_getFilterItems:function(n,r){var u=[],o,c,s,f,l,h,e,a;if(n==i)return u;for(o=t.getObject(this.model.fields.id,n),u.push(o),c=t.Query().where(this.model.fields.parentId,"equal",o,!1),s=t.DataManager(r).executeLocal(c),f=0,l=s.length;f<l;f++)for(h=this._getFilterItems(s[f],r),e=0,a=h.length;e<a;e++)u.push(h[e]);return u},_getRemoteNode:function(n,i,r,u){for(var o,f=[],e=0,s=n.length;e<s;e++){if(o=t.getObject(i.id,n[e]),o&&o.toString()==r)return u?f.push(n[e][i.text]):f.push(n[e]),f;if(n[e].hasOwnProperty("child")&&(f=this._getRemoteNode(n[e].child,this._getChildMapper(i),r,u),f.length>0))return f}return f},_updateRemoteData:function(n,i,r,u){var f,o,e,s;if(this.dataSource()==null||!this.dataSource().dataSource.offline)for(f=0,o=n.length;f<o;f++){if(e=t.getObject(u.id,n[f]),e&&e.toString()==i){n[f].child=r;s=n[f];n.splice(f,1,s);break}n[f].hasOwnProperty("child")&&this._updateRemoteData(n[f].child,i,r,u.child?u.child:u)}},_addRemoteData:function(n,i,r,u){var f,o,e,s;if(this.dataSource()==null||!this.dataSource().dataSource.offline)if(t.isNullOrUndefined(i))n.push(r);else for(f=0,o=n.length;f<o;f++){if(e=t.getObject(u.id,n[f]),e&&e.toString()==i){t.isNullOrUndefined(n[f].child)?(n[f].child=[r],s=n[f],n.splice(f,1,s)):n[f].child.push(r);break}n[f].hasOwnProperty("child")&&this._addRemoteData(n[f].child,i,r,u.child?u.child:u)}},refresh:function(){this._unWireEvents();this.element.html("");this._init()},expandAll:function(n,t){this.model.enableMultipleExpand&&(n>0?this._expandByLevel(this._getElement(),n,t):this._expandAll(t))},collapseAll:function(n,t){this.model.enableMultipleExpand&&(n>0?this._collapseByLevel(this._getElement(),n,t):this._collapseAll(t))},checkAll:function(){this.model.showCheckbox&&this._checkAll()},unCheckAll:function(){this.model.showCheckbox&&this._uncheckAll()},selectNode:function(n){n&&typeof n=="object"&&n.length>0?(this._unselectAll(),this._doSelectNodes(n,!0)):(n=this._getNodeByID(n),this._isTreeElement(n)&&this._nodeSelectionAction(n))},unselectNode:function(n){n&&typeof n=="object"&&n.length>0?this._doUnselectNodes(n):(n=this._getNodeByID(n),this._isTreeElement(n)&&this._nodeUnSelectionAction(n))},selectAll:function(){this.model.allowMultiSelection&&this._selectAll()},unselectAll:function(){this.model.allowMultiSelection&&this._unselectAll()},enableNode:function(n){var t,i;if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.enableNode(n[t]);else i=this._getNodeByID(n),this._isTreeElement(i)&&this._nodeEnableAction(i)},disableNode:function(n){var t,i;if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.disableNode(n[t]);else i=this._getNodeByID(n),this._isTreeElement(i)&&this._nodeDisableAction(i)},addNodes:function(n,t,r){if(n&&typeof n=="object"&&t==i&&n.length>0)for(var u=0;u<n.length;u++)this.addNode(n[u],t,r);else this.addNode(n,t,r)},addNode:function(i,r,u){var e,y,c,h,f,l,a,s,o,v;t.isNullOrUndefined(i)||(e=null,y=null,f=r?this._getNodeByID(r):this.model.allowMultiSelection?this.getSelectedNodes():this.getSelectedNode(),typeof i=="object"&&t.isNullOrUndefined(r)&&(l=t.getObject(this.model.fields.parentId,i),t.isNullOrUndefined(i.length)&&!t.isNullOrUndefined(l)?h=l:t.isNullOrUndefined(i.length)||i.length!=1||(h=t.getObject(this.model.fields.parentId,i[0])),h&&(f=this._getNodeByID(h))),f=this._isTreeElement(f)?n(f[0]):[],a=this._isParentExpand(f),this._triggerEvent("beforeAdd",{data:i,targetParent:f[0]!=null?f:null,parentDetails:this._getNodeDetails(f)}))||(f.length==0||f.hasClass("e-node-disable")||this._expandNode(f),typeof i!="object"&&(i=this._createObjectByText(i,f)),typeof i!="object"||t.isNullOrUndefined(i.length)&&i.length==0)||(e=this._addNodesWhenObject(i,f),c=document.createElement("ul"),n(c).append(e),e=n(c.children),this.model.showCheckbox&&e.children().find(".nodecheckbox").ejCheckBox({cssClass:this.model.cssClass,change:this._checkedChange}),this._appendNode(f,e),f[0]!=null&&(s=n(f[0].childNodes[0].childNodes[0]),s.hasClass("e-plus")||s.hasClass("e-minus")?s.removeClass("e-load"):s.removeClass("e-icon e-load")),f[0]!=null&&f.find("> div > .e-minus").length>0&&!this.model.enableMultipleExpand&&this._denyMultipleExpand(f),this._updateNodes(),this._afterInsertingNode(e),this._isDevice&&n.isFunction(n.fn.tap)&&f[0]==null&&this._on(e,"tap",this._ClickEventHandler),u&&!a&&this._preventParentNode(f),this._triggerEvent("nodeAdd",{data:i,nodes:e,parentElement:f[0]!=null?f:null,parentDetails:this._getNodeDetails(f)}),o=this,v=this.dataSource(),setTimeout(function(){o.dataSource()==null||o.dataSource()instanceof t.DataManager||(o._dataSource=o._groupingObjects(v,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(o.model.fields.parentId,n)].toString()]}))},300))},removeNode:function(n){var t,i;if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.removeNode(n[t]);else i=n?this._getNodeByID(n):this.model.allowMultiSelection?this.getSelectedNodes():this.getSelectedNode(),this._isTreeElement(i)&&this._removeNode(i)},removeAll:function(){this._liList.remove();this._updateNodes()},checkNode:function(n){var t,i;if(this.model.showCheckbox)if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.checkNode(n[t]);else i=this._getNodeByID(n),this._isTreeElement(i)&&this._nodeCheck(i.find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0])},uncheckNode:function(n){var t,i;if(this.model.showCheckbox)if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.uncheckNode(n[t]);else i=this._getNodeByID(n),this._isTreeElement(i)&&this._nodeUncheck(i.find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0])},expandNode:function(n){n&&typeof n=="object"&&n.length>0?(this._allowOnDemand=!0,this._expandNodes(n,!0),this._allowOnDemand=!1):(n=this._getNodeByID(n),this._isTreeElement(n)&&(this._allowOnDemand=!0,this._expandNode(n),this._allowOnDemand=!1))},collapseNode:function(n){var t,i;if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.collapseNode(n[t]);else i=this._getNodeByID(n),this._isTreeElement(i)&&this._collapseNode(i)},showNode:function(n){var t,i;if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.showNode(n[t]);else i=this._getNodeByID(n),this._isTreeElement(i)&&i.css("visibility","").removeClass("hidden")},hideNode:function(n){var t,i;if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.hideNode(n[t]);else i=this._getNodeByID(n),this._isTreeElement(i)&&i.css("visibility","hidden").addClass("hidden")},show:function(){this.element.css("visibility","").find(".e-item").removeClass("hidden")},hide:function(){this.element.css("visibility","hidden").find(".e-item").addClass("hidden")},hasChildNode:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)?n.find("> ul > .e-item").length>0?!0:!1:void 0},isChildLoaded:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)&&n.find("ul > .e-item").length>0?!0:!1},isNodeChecked:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)?this._isChecked(n):void 0},isExpanded:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)?this._isNodeExpanded(n):void 0},isVisible:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)&&n.css("visibility")!="hidden"?!0:!1},isExist:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)&&this._liList.index(n)!=-1?!0:!1},isSelected:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)?n.find("> div > .e-text").hasClass("e-active"):void 0},isDisabled:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)&&n.hasClass("e-node-disable")?!0:!1},getTreeData:function(n){return n!=i?this._getNodeData(n):!t.isNullOrUndefined(this.model.fields)&&this.dataSource()!=null?this._orderDataSource():void 0},getText:function(t){return t=this._getNodeByID(t),this._isTreeElement(t)?n.trim(this.element.find(t).find("> div > .e-text").text()):void 0},getSelectedNode:function(){return this.model.allowMultiSelection?null:this.element.find(".e-item > div > .e-active").closest(".e-item")},getSelectedNodes:function(){return this.element.find(".e-item > div > .e-active").closest(".e-item")},getCheckedNodes:function(){if(this.model.showCheckbox)return this._liList.find('> div > .e-chkbox-wrap[aria-checked="true"]').closest(".e-item")},getExpandedNodes:function(){return this.element.find(".e-item > div > .e-minus").closest(".e-item")},getExpandedNodesIndex:function(){return this._getNodesIndex(this.getExpandedNodes())},getCheckedNodesIndex:function(){return this._getNodesIndex(this.getCheckedNodes())},getSelectedNodeIndex:function(){return this.model.allowMultiSelection?null:this._getNodesIndex(this.getSelectedNode())},getSelectedNodesIndex:function(){return this._getNodesIndex(this.getSelectedNodes())},getVisibleNodes:function(){return this.element.find(".e-item:visible:not(.hidden, .e-node-disable)")},getNodeCount:function(){return this.element.find(".e-item").length},getNode:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)?this._getNodeDetails(n):null},getNodeIndex:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)?this._liList.index(n):void 0},getNodeByIndex:function(t){if(typeof t=="number")return n(this._liList[t])},getParent:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)?n.parents(".e-item:first"):void 0},getChildren:function(n,t){return n=this._getNodeByID(n),this._isTreeElement(n)?t?n.find(".e-item"):n.find("> ul > .e-item"):void 0},updateText:function(i,r){var u,e,o,s,f;if(i=this._getNodeByID(i),this._isTreeElement(i)&&!t.isNullOrUndefined(r)){if(u=this.element.find(i).children("div").find("> .e-text")[0],s=i.closest("li")["0"].id,u!=null){if(o={currentElement:n(u)},this._triggerEvent("beforeEdit",o))return!1;e=u.lastChild.nodeValue}u.lastChild.nodeValue=r;this._updateField(this._newDataSource,i.attr("id"),this.model.fields,"text",r);this.model.template&&(f=this._getNodeObject(s),f&&f.length!=0?u.innerHTML=this._renderEjTemplate(this.model.template,f["0"]):u.innerText=r);this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource));this._triggerEvent("nodeEdit",{id:i.attr("id"),oldText:e,newText:r,target:i,nodeDetails:this._getNodeDetails(i),event:null})}},insertAfter:function(n,t){this._insertBeforeOrAfter(n,t,!1)},insertBefore:function(n,t){this._insertBeforeOrAfter(n,t,!0)},moveNode:function(n,i,r){if(n=this._getNodeByID(n),i=this._getNodeByID(i),this._isTreeElement(n)){if(n.parents(".e-item")[0]==i[0]&&t.isNullOrUndefined(r)||i.find(n).index()==r||i[0]==null&&this._liList.index(n)==r)return;var u=i[0]!=null&&r>=0?i.find("> ul > .e-item").eq(r):this.getNodeByIndex(r);this._isRender=!1;this._isTreeElement(u)?u.parents(".e-item:first")[0]==n.parents(".e-item:first")[0]&&u.next(".e-item")[0]==null?this._dropAsSiblingNode(u,n.find(" > div > .e-text"),!1,""):this._dropAsSiblingNode(u,n.find(" > div > .e-text"),!0,""):this._dropAsChildNode(i,n.find(" > div > .e-text"),"");i.length>0&&i.hasClass("e-node-disable")&&this._nodeDisableAction(i);this._isRender=!0}},loadData:function(n,t){t=this._getNodeByID(t);this._isUrl(n)&&(t[0]==null||this._isTreeElement(t))&&this._sendAjaxOptions(n,t)},ensureVisible:function(t){var r,u,i,f;if(t=this._getNodeByID(t),this._isTreeElement(t)&&!this.isDisabled(t)&&this.isVisible(t)){for(r=t.parents(".e-item"),i=0,f=r.length;i<f;i++)this._expandNode(n(r[i]));return u=t.offset(),t.animate({scrollTop:u.top},this.model.enableAnimation?350:0,"linear",function(){t.find("> div > a.e-text")[0].scrollIntoView(!1)}),!0}return!1},_triggerEvent:function(n,t){if(this._isRender)return this._trigger(n,t)}})}(jQuery,Syncfusion),function(n,t,i){t.widget("ejSplitter","ej.Splitter",{element:null,model:null,validTags:["div","span"],_rootCSS:"e-splitter",_setFirst:!1,angular:{terminal:!1},defaults:{cssClass:"",orientation:"horizontal",enableAnimation:!0,properties:[],height:null,width:null,enableAutoResize:!1,isResponsive:!1,enableRTL:!1,allowKeyboardNavigation:!0,htmlAttributes:{},expanderTemplate:null,animationSpeed:300,beforeExpandCollapse:null,clickOnExpander:null,expandCollapse:null,resize:null,create:null,destroy:null},dataTypes:{cssClass:"string",orientation:"enum",properties:"data",enableAutoResize:"boolean",expanderTemplate:"string",isResponsive:"boolean",enableRTL:"boolean",allowKeyboardNavigation:"boolean",animationSpeed:"number",enableAnimation:"boolean",htmlAttributes:"data"},_init:function(){this._initialize();this._render();this.model.isResponsive||this.model.enableAutoResize?this._wireEvents(!0):this._wireEvents(!1)},_setModel:function(n){for(var t in n)switch(t){case"cssClass":this._changeSkin(n[t]);break;case"enableAutoResize":this._windowResizing(n[t]);break;case"isResponsive":this._windowResizing(n[t]);break;case"enableRTL":this._rtl(n[t]);break;case"htmlAttributes":this._addAttr(n[t]);break;case"orientation":this._refreshSplitter("orientation",n[t]);break;case"properties":this._refreshSplitter("properties",n[t]);break;case"width":this.model.width=n[t];this._setHeightWidth();break;case"height":this.model.height=n[t];this._setHeightWidth()}},refresh:function(){this._setPanesSize();this._getPanesPercent()},collapse:function(n){this._clickArrow(n,!0,!0)},expand:function(n){this._clickArrow(n,!1,!0)},_clickArrow:function(i,r,u){if(this._inMovement||i<0||i>this.panes.length||this.panes.length<=1)return!1;var f,o=r?"e-collapse":"e-expand",e=this.element.children(".e-splitbar:not(.e-shadowbar)");if(t.isNullOrUndefined(this.model.expanderTemplate)?f=i==e.length?this._clickArrow(i-1,!r,!1):n(e[i]).children("."+o):(f=n(e[i]).children(".e-splitter-"+this.model.orientation.substr(0,1)+"-template"),r?this._collapseArrowClick(this.templateargs):this._expandArrowClick(this.templateargs)),t.isNullOrUndefined(this.model.expanderTemplate)||this._templateIconPositioning(!0),u)f.css("display")=="none"&&t.isNullOrUndefined(this.model.expanderTemplate)||f.mouseup();else return f},addItem:function(i,r,u){var e=this.panes.length,d,r,f,g,a,k,it;if(u=this._getNumber(u),d=this.element[this.containerCss](),t.isNullOrUndefined(u)&&(u=e),u<0||u>e)return"";r=this._getPaneProperty(r);r=this._checkMinMaxSize(r);f=t.buildTag("div.e-pane e-"+this.model.orientation.substr(0,1)+"-pane");this.element.append(f[this.containerCss](r.paneSize));g=r.paneSize=f[this.containerCss]();e==0&&this.panes.push(f);f.remove();var v=u,nt=e>0?e:this.panes.length,o,y,p,w,s={},c=0,l=!1;for(a=g+this._bar,y=0;y<2;y++){for(o=v;o<nt;o++){var tt=n(this.panes[o])[this.containerCss](),b=t.isNullOrUndefined(this.model.properties[o])?r.minSize:this.model.properties[o].minSize,h=tt-b;if(h>=a-c){s[o]=tt-(a-c);l=!0;break}else e==0&&h>=0?(s[o]=b,c+=h,l=!0):h>0&&(s[o]=b,c+=h)}if(l)break;else nt=v,v=0}if(!l)return"";for(k in s)n(this.panes[k])[this.containerCss](s[k]);return e<=0?f.append(n(this.panes[u])):u==e?(p="insertBefore",w=1,f.insertAfter(n(this.panes[u-1]))):(p="insertAfter",w=0,f.insertBefore(n(this.panes[u]))),this.model.properties.splice(u,0,r),e==0&&this.element.append(f[this.containerCss](d)),e>0&&(this.panes.splice(u,0,f),it=this._createSplitBar(u-w),it[p](f)),f.append(i),this._updateModel(),f},removeItem:function(i){var r=this.panes.length-1,f,u,e,o;if(i=this._getNumber(i),t.isNullOrUndefined(i)&&(i=r),i<0||i>r||r<0)return null;f=n(this.panes[i]);o=f[this.containerCss]()+this._bar;f.remove();e=this.element.children(".e-splitbar:not(.e-shadowbar)");i==r?(u=n(this.panes[i-1]),n(e[i-1]).remove()):(u=n(this.panes[i+1]),n(e[i]).remove());u[this.containerCss](u[this.containerCss]()+o);this._removeArrays(i);this._updateModel()},_checkMinMaxSize:function(n){return!t.isNullOrUndefined(n.minSize)&&n.paneSize<n.minSize&&(n.paneSize=n.minSize),!t.isNullOrUndefined(n.maxSize)&&n.paneSize>n.maxSize&&(n.paneSize=n.maxSize),n},_removeArrays:function(n){this.model.properties.splice(n,1);this.panes.splice(n,1);this.oldPaneSize.splice(n,1);this.oldPanePercent.splice(n,1);this._sizePercent.splice(n,1)},_getNumber:function(n){return n=parseFloat(n),isNaN(n)?null:n},_updateModel:function(){for(var t=0;t<this.panes.length;t++)this.model.properties[t].paneSize=n(this.panes[t])[this.containerCss]();this._getPanesPercent()},_getPaneProperty:function(t){return n.extend({paneSize:10,minSize:10,maxSize:null,collapsible:!0,resizable:!0,expandable:!0},t)},_changeSkin:function(n){this.element.removeClass(this.model.cssClass).addClass(n)},_windowResizing:function(n){n?this._wireEvents(n):this._unWireEvents()},_refreshSplitter:function(n,t){this._unWireEvents();this._refreshDestroy();this.model[n]=t;this._init()},_destroy:function(){this.element.removeClass("e-splitter");this._refreshDestroy();this._unWireEvents()},_refreshDestroy:function(){this.element.removeClass("e-widget e-box e-rtl"+this.model.cssClass+" e-"+this.model.orientation);this.element.children(".e-splitbar").remove();this.element.children(".e-pane").removeClass("e-pane e-"+this.model.orientation.substr(0,1)+"-pane").height("").width("")},_initialize:function(){this.panes=[];this.oldPaneSize=[];this.oldPanePercent=[];this._initialPropertiesValue=[];this._updateHeightWidth=!1;this.shadowBar=null;this._inMovement=!1;this.containerCss=this.model.orientation=="horizontal"?"width":"height";this.displayCss=this.model.orientation=="horizontal"?"left":"top";this.borderCss=this.model.orientation=="horizontal"?"right":"bottom";this._bar=9},_render:function(){this.element.addClass("e-widget e-box "+this.model.cssClass+" e-"+this.model.orientation).attr("data-role","splitter");for(var r=this.element[0],i=0,u=0;i<r.children.length;i++)n(r.children[i]).addClass("e-pane"),this.panes.push(r.children[i]);this._setPanesProperty();this._insertSplitBar();this._setDimentions();t.isNullOrUndefined(this.model.expanderTemplate)||this.element.find(".e-splitter-"+this.model.orientation.substr(0,1)+"-template").css("z-index",t.getMaxZindex()+1);this._setPanesSize();this._getPanesPercent();this._addAttr(this.model.htmlAttributes);this._checkProperties();this.element.find(".e-pane").addClass("e-"+this.model.orientation.substr(0,1)+"-pane");this.model.isResponsive&&(isNaN(this.model.height)&&this.model.height.indexOf("%")>0&&this.element.css("height",this.model.height),isNaN(this.model.width)&&this.model.width.indexOf("%")>0&&this.element.css("width",this.model.width))},_templateClick:function(t){var i=this.templateargs={cancel:!1,targetElement:n(t.target),event:t.type,model:this.model,currentTarget:n(t.currentTarget)};this._trigger("clickOnExpander",i)},_templateIconPositioning:function(n){var i=this;t.browserInfo().name=="webkit"&&n&&(i.element.find(".e-splitter-"+i.model.orientation.substr(0,1)+"-template").css("display","none"),setTimeout(function(){i.element.find(".e-splitter-"+i.model.orientation.substr(0,1)+"-template").css("display","block")},i._isMouseMove?10:i.model.animationSpeed),i._isMouseMove=!1);n||setTimeout(function(){i.element.find(".e-splitter-"+i.model.orientation.substr(0,1)+"-template").css("display","inline-block")},100)},_setPanesProperty:function(){for(var n=0;n<this.panes.length;n++)this.model.properties[n]!=i?(this.model.properties[n].paneSize=this.model.properties[n].paneSize==i?"0px":this.model.properties[n].paneSize,this.model.properties[n].minSize=isNaN(parseFloat(this.model.properties[n].minSize))?10:parseFloat(this.model.properties[n].minSize),this.model.properties[n].maxSize=isNaN(parseFloat(this.model.properties[n].maxSize))?null:parseFloat(this.model.properties[n].maxSize),this.model.properties[n].collapsible=this.model.properties[n].collapsible!=!1?!0:!1,this.model.properties[n].resizable=this.model.properties[n].resizable!=!1?!0:!1,this.model.properties[n].expandable=this.model.properties[n].expandable!=!1?!0:!1):this.model.properties.push({paneSize:"0px",minSize:10,maxSize:null,collapsible:!0,resizable:!0,expandable:!0}),this._initialPropertiesValue[n]=this.model.properties[n].paneSize},_addAttr:function(t){var i=this;n.map(t,function(n,t){t=="class"?i.element.addClass(n):i.element.attr(t,n)})},_insertSplitBar:function(){if(this.panes.length>1)for(var t,n=0;n<this.panes.length-1;n++)t=this._createSplitBar(n),t.insertAfter(this.panes[n])},_createSplitBar:function(i){var u=this.model.orientation.substr(0,1),o,f,s,r,h=!1,c,e;if(r=t.buildTag("span.e-box e-splitbar e-split-divider e-"+u+"-bar").attr("aria-expanded",!0),t.browserInfo().name=="msie"&&r.addClass("e-pinch"),t.isNullOrUndefined(this.model.expanderTemplate))o=t.buildTag("span.e-icon e-collapse e-"+u+"-arrow "+(u=="h"?"e-arrow-sans-left":"e-arrow-sans-up")),r.append(o),s=t.buildTag("span.e-activebar e-"+u+"-arrow "),r.append(s),f=t.buildTag("span.e-icon e-expand e-"+u+"-arrow "+(u=="h"?"e-arrow-sans-right":"e-arrow-sans-down")),r.append(f),h=!0,this._on(o,t.isDevice()?"tap":"mouseup",this._collapseArrowClick),this._on(f,t.isDevice()?"tap":"mouseup",this._expandArrowClick),this.model.properties[i].collapsible||o.css("display","none"),this.model.properties[i].expandable||f.css("display","none"),this.model.properties[i+1].collapsible&&f.css("display","block");else{c=document.getElementsByClassName("e-split-divider")[0];e=document.createElement("span");n(e).append(this.model.expanderTemplate);n(e).attr("class","e-splitter-"+this.model.orientation.substr(0,1)+"-template e-resize");n(e).on(t.isTouchDevice()?"tap":"click",n.proxy(this._templateClick,this));r.append(e);this._templateIconPositioning(!1)}return this.model.properties[i].resizable&&this.model.properties[i+1].resizable&&(r.addClass("e-resize").removeClass("e-icon-hide"),h=!0,this._on(r,t.eventType.mouseDown,this._mouseDownOnDivider),t.isNullOrUndefined(this.model.expanderTemplate)&&this._on(s,t.eventType.mouseDown,this._mouseDownOnDivider)),h?(r.attr({role:"separator",tabindex:"0"}),this._on(r,"focus focusout",this._focusOnDivider)):r.attr({role:"presentation"}),r},_getTemplatedString:function(){for(var n=this.model.expanderTemplate,t=n.indexOf("${"),i=n.indexOf("}"),r;t!=-1&&i!=-1;)r=n.substring(t,i+1);return r},_getPanesPercent:function(){this._sizePercent=[];for(var r=this.element[this.containerCss](),i=r-(this.panes.length-1)*this._bar,t=0;t<this.panes.length;t++)n(this.panes[t]).hasClass("collapsed")||(this.oldPaneSize[t]=n(this.panes[t])[this.containerCss]()),this.oldPanePercent[t]=this._convertToPercent(i,this.oldPaneSize[t]),this._sizePercent.push(this._convertToPercent(i,n(this.panes[t])[this.containerCss]()))},_setDimentions:function(){var i=this._getParentObj(),n=parseInt(this.model.width),t=parseInt(this.model.height);isNaN(this.model.width)&&this.model.width.indexOf("%")>0&&(n=this.model.isResponsive?this._convertToPixel(i.innerWidth(),n):this.model.width);isNaN(this.model.height)&&this.model.height.indexOf("%")>0&&(t=this.model.isResponsive?this._convertToPixel(i.innerHeight(),t):this.model.height);this.model.height&&this.element.css("height",t);this.model.width&&this.element.css("width",n)},_setHeightWidth:function(){this._updateHeightWidth=!0;this._setDimentions();this._setPanesSize();this._getPanesPercent()},_getParentObj:function(){return this.element.parent()},_checkProperties:function(){this.model.enableRTL&&this._rtl(this.model.enableRTL);this._prevSize=this.element[this.containerCss]()},_getExactInnerWidth:function(){var i=t.browserInfo();return i.name=="msie"?i.version==8||i.version==9?n(this.element)[this.containerCss]():parseFloat(window.getComputedStyle(this.element[0])[this.containerCss]):parseFloat(window.getComputedStyle(this.element[0])[this.containerCss])-(parseFloat(this.element.css("border-"+this.displayCss+"-width"))+parseFloat(this.element.css("border-"+this.borderCss+"-width"))+parseFloat(this.element.css("padding-"+this.displayCss))+parseFloat(this.element.css("padding-"+this.borderCss)))},_rtl:function(n){n?this.element.addClass("e-rtl"):this.element.removeClass("e-rtl")},_setPanesSize:function(){var r=this.containerCss,v=0,u=0,o=this.element[r](),b=!1,s=this._bar=n(this.element).find(">.e-splitbar").length>0?parseFloat(n(this.element).find(">.e-splitbar").css(r)):this._bar,p=[],e,i,f=this.panes.length,y,k,c,h,l,w,a;if(f>1)for(i=0;i<f;i++)n(this.panes[i]).css(r,this._updateHeightWidth==!0?this._initialPropertiesValue[i]:this.model.properties[i].paneSize),this._updateHeightWidth=!1,s=i==f-1?0:s,e=parseFloat(n(this.panes[i])[r]()),t.isNullOrUndefined(this.model.properties[i].maxSize)||(e=e>this.model.properties[i].maxSize?this.model.properties[i].maxSize:e),n(this.panes[i]).css(r,e),e<=0?(v++,p.push(i),u+=s):b?(n(this.panes[i]).css(r,0),u+=e+s,this.model.properties[i].paneSize=0):(u+=e+s,u>o&&(y=u-o+s,k=f-i-1,y+=k*s,n(this.panes[i]).css(r,y),b=!0,u+=y+s),this.model.properties[i].paneSize=e);else f==1&&(n(this.panes[0]).css(r,"100%"),u=o);if(f>1&&u!=o)if(h=n(this.panes[f-1]),u>o)c=u-o,h.css(r,c);else if(u<o)if(c=o-u,v>0)for(w=parseFloat(c/v),l=0;l<v;l++)n(this.panes[p[l]]).css(r,w),this.model.properties[p[l]].paneSize=w;else{for(a=f;a>0;a--)if(t.isNullOrUndefined(this.model.properties[a-1].maxSize)){h=n(this.panes[a-1]);break}h.css(r,parseFloat(h[r]()+c));this.model.properties[f-1].paneSize=h[r]()}f>1&&this._checkPaneSize()},_getUnit:function(n){return n=="px"?"px":n=="pt"?"pt":n.substr(1)=="%"?"%":"px"},_getNormalValue:function(n){var i,t,r,u;return this.model.orientation=="vertical"?(i=n.y-this.element.offset().top,t=i/this.element.outerHeight(),r=this.element.height()):(i=n.x-this.element.offset().left,t=i/this.element.outerWidth(),r=this.element.width()),t>1&&(t=1),t<0&&(t=0),u=t*r,this._trimValue(u)},_trimValue:function(n){var t,i,r;return t=1,i=n%t,r=n-i,Math.abs(i)*2>=t&&(r+=i>0?t:-t),parseFloat(r.toFixed(5))},_getSplitbarIndex:function(){return this.element.children(".e-splitbar:not(.e-shadowbar)").index(this.currentSplitBar)},_paneResize:function(){var t,i,r,u,f,e,o,s;if(this.shadowBar==null)return!1;this.currentSplitBar=this.shadowBar.next();e=this._getSplitbarIndex();i=this.shadowBar.prev();r=this.currentSplitBar.next();u=e;f=e+1;t=this.shadowBar.offset()[this.displayCss];t=t-this.currentSplitBar.offset()[this.displayCss];n(i).css(this.containerCss,t+n(i)[this.containerCss]()+"px");n(r).css(this.containerCss,n(r)[this.containerCss]()-t+"px");this.oldPaneSize[u]=n(i)[this.containerCss]();this.oldPaneSize[f]=n(r)[this.containerCss]();this.shadowBar.remove();this._checkPaneSize();o={item:i,index:u,size:this.oldPaneSize[u]};s={item:r,index:f,size:this.oldPaneSize[f]};this._updateModelValue(o,s);this._trigger("resize",{prevPane:o,nextPane:s,splitbarIndex:e})},_checkPaneSize:function(){for(var r=0,o,f,u=this.panes.length,e,i,t=0;t<u;t++)o=this.containerCss=="width"?n(this.panes[t]).outerWidth():n(this.panes[t]).outerHeight(),r+=o+this._bar;if(r-=this._bar,f=this._getExactInnerWidth(),r!=f)if(e=f-r,i=n(this.panes[u-1])[this.containerCss](),i==0){for(t=u-1;t>=0;t--)if(n(this.panes[t]).hasClass("expanded")&&!n(this.panes[t]).hasClass("collapsed")){i=n(this.panes[t])[this.containerCss]();n(this.panes[t]).css(this.containerCss,parseFloat(i+e));break}}else n(this.panes[u-1]).css(this.containerCss,parseFloat(i+e))},_maxminDraggableRange:function(n){var l,a,v,y,o,r,u,f,e,t,i,s,h,c;l=this.shadowBar.prev();this.currentSplitBar=this.shadowBar.next();a=this.currentSplitBar.next();v=l[this.containerCss]();y=a[this.containerCss]();o=this.displayCss=="left"?this.currentSplitBar[0].offsetLeft:this.currentSplitBar[0].offsetTop;r=o-v;u=y+o;c=this._getSplitbarIndex();f=c;e=c+1;t=this.model.properties[f].maxSize;i=this.model.properties[e].maxSize;t=t!=null?parseInt(t,10):null;i=i!=null?parseInt(i,10):null;this.model.properties[f].minSize=parseInt(this.model.properties[f].minSize,10);this.model.properties[e].minSize=parseInt(this.model.properties[e].minSize,10);s=this.model.properties[f].minSize;h=this.model.properties[e].minSize;this.shadowBar.removeClass("e-end-indicaton");n>u-h?(this.resizedPosition=u-h,this.shadowBar.addClass("e-end-indicaton")):n<r+s&&(this.resizedPosition=r+s,this.shadowBar.addClass("e-end-indicaton"));t!=null?n>r+t&&(this.resizedPosition=r+t,this.shadowBar.addClass("e-end-indicaton")):i!=null&&n<u-i&&(this.resizedPosition=u-i,this.shadowBar.addClass("e-end-indicaton"))},_collapseArrowClick:function(i){var r,s,u,f,h,o,c,p,e,b,w,a,v,y,l;if(this.shadowBar==null){if(r=t.isNullOrUndefined(i.target)?n(i.currentTarget):n(i.target),this._inMovement=!0,this.currentSplitBar=r.parent(),e={},b=this.panes.length,s=this._getSplitbarIndex(),u=this.currentSplitBar.prev(),f=this.currentSplitBar.next(),h=s,o=s+1,c=u[this.containerCss](),p=f[this.containerCss](),w=this,a={item:u,index:h,size:c},v={item:f,index:o,size:p},this._raiseEvent("beforeExpandCollapse",a,v,s,"beforeCollapse"))return!1;if(f.hasClass("collapsed")){if(c<this.oldPaneSize[o]){r.addClass("e-end-indicaton");this._inMovement=!1;n(document).on("mouseup",n.proxy(this._mouseUpOnArrow,this));return!1}u.removeClass("expanded");f.removeClass("collapsed");r.parent().addClass("e-resize").removeClass("e-icon-hide");n(r.siblings()).not(".e-activebar").css("display","block");this.model.properties[h].collapsible||r.css("display","none");o!=b-1&&(l=f.next(),this.model.properties[o+1].collapsible||l.find(".e-expand").css("display","none"),l.find(".e-collapse").css("display","block"),l.next().hasClass("collapsed")||(l.addClass("e-resize").removeClass("e-icon-hide"),l.attr("aria-expanded",!0)));e[this.containerCss]=this.oldPaneSize[o];f.animate(e,this.model.enableAnimation?this.model.animationSpeed:0);e[this.containerCss]=c-this.oldPaneSize[o];u.animate(e,this.model.enableAnimation?this.model.animationSpeed:0,function(){w._raiseEvent("expandCollapse",a,v,s,"collapsed")})}else this.oldPaneSize[h]=c,u.addClass("collapsed"),f.addClass("expanded"),this.currentSplitBar.attr("aria-expanded",!1),r.parent().removeClass("e-resize").addClass("e-icon-hide"),t.isNullOrUndefined(this.model.expanderTemplate)&&r.css("display","none"),this.model.properties[o].collapsible||n(r.siblings()).not(".e-activebar").css("display","block"),h!=0&&(y=u.prev(),y.find(".e-expand").css("display","none"),!this.model.properties[h-1].collapsible&&n(u.prev().prev()[0]).hasClass("expanded")&&y.find(".e-collapse").css("display","block"),y.removeClass("e-resize").addClass("e-icon-hide")),e[this.containerCss]=0,u.animate(e,this.model.enableAnimation?this.model.animationSpeed:0),e[this.containerCss]=c+p,f.animate(e,this.model.enableAnimation?this.model.animationSpeed:0,function(){w._raiseEvent("expandCollapse",a,v,s,"collapsed")})}},_expandArrowClick:function(i){var r,o,u,f,s,h,p,c,e,b,w,v,y,l,a;if(this.shadowBar==null){if(r=t.isNullOrUndefined(i.target)?n(i.currentTarget):n(i.target),this._inMovement=!0,this.currentSplitBar=r.parent(),e={},b=this.panes.length,o=this._getSplitbarIndex(),u=this.currentSplitBar.prev(),f=this.currentSplitBar.next(),s=o,h=o+1,p=u[this.containerCss](),c=f[this.containerCss](),w=this,v={item:f,index:h,size:c},y={item:u,index:s,size:p},this._raiseEvent("beforeExpandCollapse",v,y,o,"beforeExpand"))return!1;if(u.hasClass("collapsed")){if(c<this.oldPaneSize[s]){r.addClass("e-end-indicaton");this._inMovement=!1;n(document).on("mouseup",n.proxy(this._mouseUpOnArrow,this));return!1}u.removeClass("collapsed");f.removeClass("expanded");this.currentSplitBar.attr("aria-expanded",!0);r.parent().addClass("e-resize").removeClass("e-icon-hide");n(r.siblings()).not(".e-activebar").css("display","block");this.model.properties[h].collapsible||r.css("display","none");s!=0&&(a=u.prev(),this.model.properties[o-1].collapsible||a.find(".e-collapse").css("display","none"),a.find(".e-expand").css("display","block"),a.prev().hasClass("collapsed")||a.addClass("e-resize").removeClass("e-icon-hide"));e[this.containerCss]=this.oldPaneSize[s];u.animate(e,this.model.enableAnimation?this.model.animationSpeed:0);e[this.containerCss]=c-this.oldPaneSize[s];f.animate(e,this.model.enableAnimation?this.model.animationSpeed:0,function(){w._raiseEvent("expandCollapse",v,y,o,"expanded")})}else this.oldPaneSize[h]=c,u.addClass("expanded"),f.addClass("collapsed"),r.parent().removeClass("e-resize").addClass("e-icon-hide"),t.isNullOrUndefined(this.model.expanderTemplate)&&r.css("display","none"),this.model.properties[s].collapsible||n(r.siblings()).not(".e-activebar").css("display","block"),h!=b-1&&(l=f.next(),l.find(".e-collapse").css("display","none"),!this.model.properties[h+1].collapsible&&n(f.next().next()[0]).hasClass("collapsed")&&l.find(".e-expand").css("display","block"),l.removeClass("e-resize").addClass("e-icon-hide"),l.attr("aria-expanded",!1)),e[this.containerCss]=p+c,u.animate(e,this.model.enableAnimation?this.model.animationSpeed:0),e[this.containerCss]=0,f.animate(e,this.model.enableAnimation?this.model.animationSpeed:0,function(){w._raiseEvent("expandCollapse",v,y,o,"expanded")})}},_raiseEvent:function(n,t,i,r,u){return n=="expandCollapse"&&(this._inMovement=!1,this._updateModelValue(t,i)),this._trigger(n,{collapsed:t,expanded:i,splitbarIndex:r,action:u})},_updateModelValue:function(n,t){this.model.properties[n.index].paneSize=n.item[this.containerCss]();this.model.properties[t.index].paneSize=t.item[this.containerCss]();this._getPanesPercent()},_mouseUpOnArrow:function(){this.element.find(".e-end-indicaton").removeClass("e-end-indicaton");n(document).off("mouseup",n.proxy(this._mouseUpOnArrow,this))},_keydownOnDivider:function(t){var i=t.keyCode,u,r;if(i==37||i==38||i==39||i==40){if(t.preventDefault(),u=n(t.data.target),t.ctrlKey)this.shadowBar==null&&(this.currentSplitBar=u,r=this._getSplitbarIndex(),this.model.orientation=="vertical"?t.keyCode==38?this.collapse(r):t.keyCode==40&&this.expand(r):t.keyCode==37?this.collapse(r):t.keyCode==39&&this.expand(r));else if(u.hasClass("e-resize")){var e=this.shadowBar!=null?this.shadowBar:u,f=e.offset(),o={pageX:f.left,pageY:f.top};n.extend(!0,t,o);(this.model.orientation=="vertical"&&(t.keyCode==38||t.keyCode==40)||this.model.orientation=="horizontal"&&(t.keyCode==37||t.keyCode==39))&&(t.keyCode==38?t.pageY-=5:t.keyCode==40?t.pageY+=5:t.keyCode==37?t.pageX-=5:t.keyCode==39&&(t.pageX+=5),this._mouseMoveOnDivider(t))}}else i==13?(t.preventDefault(),this._mouseUpOnDivider()):i==27&&(t.preventDefault(),this.shadowBar!=null&&this.shadowBar.remove(),this.shadowBar=null,this._mouseUpOnDivider(),this.element.children(".e-splitbar.e-hover").focusout())},_focusOnDivider:function(t){if(t.type=="focus"){if(!n(t.target).hasClass("e-hover")&&(n(t.target).addClass("e-hover"),this.model.allowKeyboardNavigation))n(document).on("keydown",{target:t.target},n.proxy(this._keydownOnDivider,this))}else this.element.children(".e-splitbar.e-hover").removeClass("e-hover"),this._mouseUpOnDivider(),n(document).off("keydown",n.proxy(this._keydownOnDivider,this))},_mouseDownOnDivider:function(i){i.preventDefault();var r;if(r=n(i.target).hasClass("e-activebar")?n(i.target.parentElement):!t.isNullOrUndefined(this.model.expanderTemplate)&&n(i.target).parents(".e-splitbar").length>0?n(i.target).parents(".e-splitbar"):n(i.target),r.hasClass("e-splitbar")&&r.hasClass("e-resize")){this._overlayElement=t.buildTag("div.e-pane-overlay");r.hasClass("e-hover")||r.focus();this.element.find(".e-pane").not(".e-splitter").append(this._overlayElement);n(document).on(t.eventType.mouseMove,{target:n(i.target).hasClass("e-activebar")?i.target.parentElement:i.target},n.proxy(this._mouseMoveOnDivider,this));n(document).on(t.eventType.mouseUp,n.proxy(this._mouseUpOnDivider,this));n(document).on("mouseleave",n.proxy(this._mouseUpOnDivider,this))}else(r.hasClass("e-expand")||r.hasClass("e-collapse"))&&r.parent().focus()},_mouseMoveOnDivider:function(i){var r=i.data,f,u;i=i.type=="touchmove"?i.originalEvent.changedTouches[0]:i;this._isMouseMove=!0;f={x:i.pageX,y:i.pageY};this.resizedPosition=this._getNormalValue(f);this.shadowBar==null&&(u=n(r.target).hasClass("e-activebar")?n(r.target.parentElement):!t.isNullOrUndefined(this.model.expanderTemplate)&&n(i.target).parents(".e-splitbar").length>0?n(r.target).parents(".e-splitbar"):n(r.target),this.shadowBar=u.clone().addClass("e-shadowbar").removeClass("e-hover").removeClass("e-split-divider").insertBefore(u),this.shadowBar.children().remove());this._maxminDraggableRange(this.resizedPosition);this.shadowBar.css(this.displayCss,this.resizedPosition)},_mouseUpOnDivider:function(){this._paneResize();t.isNullOrUndefined(this.model.expanderTemplate)||this._templateIconPositioning(!0);this.element.find(".e-pane").not(".e-splitter").find(".e-pane-overlay").remove();n(document).off(t.eventType.mouseMove,n.proxy(this._mouseMoveOnDivider,this));n(document).off(t.eventType.mouseUp,n.proxy(this._mouseUpOnDivider,this));n(document).off("mouseleave",n.proxy(this._mouseUpOnDivider,this));this.shadowBar=null},_windowResized:function(){var i=this._getExactInnerWidth(),r,u,t,f,e;if(this._prevSize==i)return!1;for(r=this.panes.length,u=i-(r-1)*this._bar,this._prevSize=i,t=0;t<r;t++)f=this._convertToPixel(u,this._sizePercent[t]),n(this.panes[t]).css(this.containerCss,f+"px");for(t=0;t<this.oldPaneSize.length;t++)this.oldPaneSize[t]=this._convertToPixel(u,this.oldPanePercent[t]);e=n(this.panes[this.panes.length-1])[this.containerCss]();e==0&&this._checkPaneSize()},_convertToPercent:function(n,t){return t*100/n},_convertToPixel:function(n,t){return parseFloat(n*t/100)},_wireEvents:function(t){if(t)n(window).on("resize",n.proxy(this._windowResized,this))},_unWireEvents:function(){n(window).off("resize",n.proxy(this._windowResized,this))}})}(jQuery,Syncfusion),function(n,t){t.widget("ejWaitingPopup","ej.WaitingPopup",{element:null,model:null,validTags:["div","span"],_setFirst:!1,_requiresID:!0,_rootCSS:"e-waitingpopup",defaults:{showOnInit:!1,target:null,appendTo:null,showImage:!0,htmlAttributes:{},cssClass:"",text:null,template:null,create:null,destroy:null},dataTypes:{showOnInit:"boolean",showImage:"boolean",cssClass:"string"},_isTargetVisible:function(){return this.element.css("display")!="none"},show:function(){this._isTargetVisible()&&(this._refreshPanel(),this.maindiv.css("display","block"),this.model.showOnInit=!0)},hide:function(){this.maindiv.css("display","none");this.model.showOnInit=!1},refresh:function(){this._isTargetVisible()&&this._refreshPanel()},_setText:function(n){n?this.popupText?this.popupText.html(n):(this._generateTextTag(n),this._setContentPosition()):this.popupText&&(this.popupText.remove(),this.popupText=null)},_showImage:function(n){n?(this.popupImage=t.buildTag("span.e-image"),this.popupText?this.popupImage.insertBefore(this.popupText):this.maindiv.append(this.popupImage)):this.popupImage&&(this.popupImage.remove(),this.popupImage=null)},_setTemplate:function(){var i=this.model.template;typeof i=="string"&&(i=n(i));this.templateObj=typeof i=="object"&&typeof i.css=="function"?i:t.buildTag("div","",{"text-align":"center"}).append(i);this.templateObj.css({visibility:"visible",display:"block"});this.maindiv.append(this.templateObj)},_setTheme:function(n){this.maindiv.removeClass(this.model.cssClass).addClass(n)},_init:function(){this._initialize();this._render();this._wireEvents()},_wireEvents:function(){n(window).on("resize",n.proxy(this._resizeHandler,this))},_unwireEvents:function(){n(window).off("resize",n.proxy(this._resizeHandler,this))},_resizeHandler:function(){this.refresh()},_setModel:function(i){for(var r in i)switch(r){case"text":this._setText(i[r]);break;case"cssClass":this._setTheme(i[r]);break;case"htmlAttributes ":this._addAttr(i[r]);break;case"showOnInit":this._setVisibility(i[r]);break;case"showImage":this._showImage(i[r]);this._setContentPosition();break;case"target":this.model.target=i[r];this._setTarget();this.refresh();break;case"appendTo":this.model.appendTo=i[r];this._setTarget();t.isNullOrUndefined(this.model.appendTo)||this.model.appendTo=="document"||this.model.appendTo=="window"?n("body").append(this.maindiv):this.maindiv.appendTo(n(this.model.appendTo));this.refresh();break;case"template":this.maindiv.empty();i[r]?(this.model.template=i[r],this._setTemplate()):(this.model.template=i[r]=null,this._showImage(this.model.showImage),this.model.text&&this._generateTextTag(this.model.text));this._setContentPosition()}},_setTarget:function(){this.targetElement=this.model.target=="document"?n(document):this.model.target=="window"?n(window):this.model.target?n(this.model.target):this.element},_destroy:function(){this.maindiv.remove();this._unwireEvents()},_initialize:function(){this.maindiv=null;this.popupText=null;this.popupImage=null;this.templateObj=null;this.targetElement=null},_render:function(){this._setTarget();var i=n("#"+this.element[0].id+"_WaitingPopup").get(0);i&&n(i).remove();this.maindiv=t.buildTag("div.e-waitpopup-pane e-widget "+this.model.cssClass+"#"+this.element[0].id+"_WaitingPopup");this.model.template?this._setTemplate():(this._showImage(this.model.showImage),this.model.text&&this._generateTextTag(this.model.text));t.isNullOrUndefined(this.model.appendTo)||this.model.appendTo=="document"||this.model.appendTo=="window"?n("body").append(this.maindiv):this.maindiv.appendTo(n(this.model.appendTo));this._setVisibility(this.model.showOnInit);this._addAttr(this.model.htmlAttributes)},_refreshPanel:function(){this.maindiv.width(this.targetElement.outerWidth());this.maindiv.height(this.targetElement.outerHeight());this._setPanelPosition();this._setContentPosition()},_addAttr:function(t){var i=this;n.map(t,function(n,t){t=="class"?i.maindiv.addClass(n):i.maindiv.attr(t,n)})},_setPanelPosition:function(){var i=t.util.getOffset(this.targetElement);this.model.appendTo!=null&&n(this.model.appendTo).length>0&&((this.targetElement.css("position")=="relative"||this.targetElement.css("position")=="absolute")&&this.targetElement[0]===n(this.model.appendTo)[0]?i={left:0,top:0}:(i.left-=this.targetElement.offsetParent().offset().left,i.top-=this.targetElement.offsetParent().offset().top));this.maindiv.css({position:"absolute",left:Math.ceil(i.left)+"px",top:Math.ceil(i.top)+"px","z-index":this._maxZindex()+1})},_setContentPosition:function(){if(this.model.template==null){var t=0,r=0,i,n=null;i=this.targetElement.outerHeight();this.popupText&&(t=this.popupText.outerHeight());this.popupImage&&(r=this.popupImage.outerHeight());this.popupImage&&(n=Math.ceil((i-(r+t))/2),this.popupImage.css("top",n+"px"));this.popupText&&(n||(n=Math.ceil((i-t)/2)),this.popupText.css("top",n+"px"))}else this.templateObj.css({position:"relative",left:Math.ceil((this.targetElement.outerWidth()-this.templateObj.outerWidth())/2),top:Math.ceil((this.targetElement.outerHeight()-this.templateObj.outerHeight())/2)})},_generateTextTag:function(n){this.popupText=t.buildTag("div.e-text",n);this.maindiv.append(this.popupText)},_setVisibility:function(n){n&&this._isTargetVisible()?this.show():this.hide()},_maxZindex:function(){return t.util.getZindexPartial(this.element)}})}(jQuery,Syncfusion),function(n,t){t.widget("ejRadioButton","ej.RadioButton",{_rootCSS:"e-radiobtn",element:null,_requiresID:!0,model:null,validTags:["input"],_addToPersist:["checked"],_setFirst:!1,angular:{require:["?ngModel","^?form","^?ngModelOptions"]},defaults:{id:null,name:null,value:null,checked:!1,cssClass:"",text:"",enableRTL:!1,htmlAttributes:{},enablePersistence:!1,idPrefix:"ej",size:"small",enabled:!0,validationRules:null,validationMessage:null,validationMessages:null,beforeChange:null,change:null,create:null,destroy:null},dataTypes:{id:"string",name:"string",enablePersistence:"boolean",size:"enum",enabled:"boolean",idPrefix:"string",validationRules:"data",validationMessage:"data",validationMessages:"data",htmlAttributes:"data"},observables:["checked"],checked:t.util.valueFunction("checked"),_init:function(n){var i=t.browserInfo();this._cloneElement=this.element.clone();this._isIE8=i.name=="msie"&&i.version=="8.0"?!0:!1;this._setValue();this._renderControl();this.isChecked&&this._checkedHandler();t.isNullOrUndefined(this.radbtn.attr("disabled"))||(this.model.enabled=!1);this._setEnabled(this.model.enabled);this._addAttr(this.model.htmlAttributes);t.isNullOrUndefined(n)||t.isNullOrUndefined(n.validationMessage)||(this.model.validationMessages=this.model.validationMessage);this.model.validationRules!=null&&(this._initValidator(),this._setValidation());this._wireEvents();this.initialRender=!1},_addAttr:function(t){var i=this;n.map(t,function(n,t){t=="class"?i.div.addClass(n):t=="name"?i.radbtn.attr(t,n):t=="required"?i.radbtn.attr(t,n):t=="disabled"&&n=="disabled"?i.disable():t=="checked"&&n=="checked"?i._checkedChange(!0,!0):i.div.attr(t,n)})},_initValidator:function(){this.element.closest("form").data("validator")||this.element.closest("form").validate()},_setValidation:function(){var r,f,i,u,e;this.element.find("input").rules("add",this.model.validationRules);r=this.element.closest("form").data("validator");r=r?r:this.element.closest("form").validate();f=this.element.find("input").attr("name");r.settings.messages[f]={};for(i in this.model.validationRules)if(u=null,!t.isNullOrUndefined(this.model.validationRules[i])){if(t.isNullOrUndefined(this.model.validationRules.messages&&this.model.validationRules.messages[i])){r.settings.messages[f][i]=n.validator.messages[i];for(e in this.model.validationMessages)i==e?u=this.model.validationMessages[i]:""}else u=this.model.validationRules.messages[i];r.settings.messages[f][i]=u!=null?u:n.validator.messages[i]}},_setModel:function(t){for(var i in t)switch(i){case"cssClass":this._changeSkin(t[i]);break;case"enableRTL":this.model.text?t[i]?this.div.addClass("e-rtl"):this.div.removeClass("e-rtl")&&this.element.closest(".e-radiobtn-wrap").hasClass("e-rtl")?this.element.closest(".e-radiobtn-wrap").removeClass("e-rtl"):"":t[i]?this.element.closest(".e-radiobtn-wrap").addClass("e-rtl"):this.element.closest(".e-radiobtn-wrap").removeClass("e-rtl");break;case"text":this._setText(t[i]);break;case"size":this._setSize(t[i]);break;case"validationRules":this.model.validationRules!=null&&(this.element.find("input").rules("remove"),this.model.validationMessages=null);this.model.validationRules=t[i];this.model.validationRules!=null&&(this._initValidator(),this._setValidation());break;case"validationMessage":this.model.validationMessages=t[i];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"validationMessages":this.model.validationMessages=t[i];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"checked":n(this.div).removeClass("e-material-animate");typeof this.checked()=="boolean"?(this.model.checked=t[i],this._checkedChange(this.model.checked)):t[i]()!=null&&t[i]()==this.element.find(".e-input").attr("value")&&this._checkedChange(t[i]());break;case"enabled":this._setEnabled(t[i]);break;case"id":this._setIdAttr(t[i]);break;case"name":this.radbtn.attr("name",t[i]);break;case"value":this.radbtn.attr("value",t[i]);break;case"htmlAttributes":this._addAttr(t[i])}},_destroy:function(){this.radbtn.remove();this._cloneElement.removeClass("e-js e-input e-radiobtn");this._cloneElement.insertBefore(this.element);this.element.remove()},_changeSkin:function(n){this.model.cssClass!=n&&(this.element.removeClass(this.model.cssClass).addClass(n),this.div.removeClass(this.model.cssClass).addClass(n))},_setValue:function(){t.isNullOrUndefined(this.element.attr("type"))&&this.element.attr("type","radio");t.isNullOrUndefined(this.element.attr("id"))||(this.model.id=this.element.attr("id"));t.isNullOrUndefined(this.element.attr("name"))||(this.model.name=this.element.attr("name"));t.isNullOrUndefined(this.element.attr("value"))||(this.model.value=this.element.attr("value"));this.element.attr({id:this.model.id,name:this.model.name,value:this.model.value});typeof this.checked()=="boolean"?this.model.checked=this.isChecked=this.model.checked||this.element.attr("checked")=="checked":this.isChecked=this.element.attr("value")==this.checked();this.isChecked&&this.element.attr("checked","checked");this._hiddenValue=this.element.attr("value");this._isUI=!1},_setIdAttr:function(t){n("#"+this.model.idPrefix+this.model.id+"_wrapper").attr("id",this.model.idPrefix+t+"_wrapper");n("#"+this.model.idPrefix+this.model.id).attr("id",this.model.idPrefix+t);this.radbtn.attr("id",t)},_setSize:function(n){n==t.RadioButtonSize.Medium?(this.span.removeClass("e-radsmaller").addClass("e-radmedium"),this.div.removeClass("e-radsmall").addClass("e-radmed")):(this.span.removeClass("e-radmedium").addClass("e-radsmaller"),this.div.removeClass("e-radmed").addClass("e-radsmall"))},_setEnabled:function(n){n?this.enable():this.disable()},_renderControl:function(){this.initialRender=!0;var i=t.browserInfo();this.div=i.name=="msie"&&i.version=="8.0"?n('<div class="e-radiobtn-wrap e-widget e-rad-outer e-ie8" ><\/div>'):n('<div class="e-radiobtn-wrap e-widget" ><\/div>');this.div.attr({id:this.model.idPrefix+this.model.id,role:"radio",tabindex:0,"aria-checked":!1});this.span=n("<span><\/span>");this.span.addClass("e-spanicon");this._setSize(this.model.size);this.spanImg=n('<span class="e-rad-icon e-icon e-rad-select"><\/span>',"",{},{role:"presentation"});this.element.addClass("e-input");this.div.addClass(this.model.cssClass);this.span.append(this.spanImg);this.div.insertBefore(this.element);this.div.append(this.element);this.div.append(this.span);this._setTextWrapper(this.model.text);this.radbtn=this.element;this.element=this.div},_setTextWrapper:function(n){n!=""?(this.txtSpan=t.buildTag("div.e-text",n),this.div.append(this.txtSpan),this.model.enableRTL&&this.div.addClass("e-rtl")):this.model.enableRTL&&this.element.closest(".e-radiobtn-wrap").addClass("e-rtl")},_setText:function(n){this.model.text==""&&n!=""?this._setTextWrapper(n):this.txtSpan.html(n)},_wireEvents:function(){this._on(this.element,"click",function(n){this._isUI=!0;this._checkedHandler(n)});this._on(this.element,"focus",this._focusIn);this._on(this.element,"focusout",this._focusOut)},_focusIn:function(){n(this.element).addClass("e-focus");n(this.element).on("keydown",n.proxy(this._checkUnCheck,this))},_focusOut:function(){n(this.element).removeClass("e-focus");n(this.element).off("keydown",n.proxy(this._checkUnCheck,this))},_checkUnCheck:function(n){(n.keyCode==32||n.keyCode==37||n.keyCode==38||n.keyCode==39||n.keyCode==40)&&(n.preventDefault(),this._checkedHandler())},_checkedHandler:function(t){t&&(this._interacted=!0);this.element.hasClass("e-disable")||(this.isChecked=typeof this.checked()=="boolean"?this.radbtn.attr("checked")=="checked"?!0:!1:this.checked()==this.radbtn.attr("value"),n(this.element).find(".e-rad-icon").hasClass("e-circle_01")||this._changeEvent(!0),t&&n(this.div).addClass("e-material-animate"))},_checkedChange:function(n,t){this.isChecked=n;this._changeEvent(t)},_changeEvent:function(i){var u={isChecked:this.isChecked,isInteraction:!!i};if(!this.initialRender&&!0==this._trigger("beforeChange",u))return!1;if(n(this.element).find(".e-rad-icon").hasClass("e-circle_01"))this.spanImg.removeClass("e-circle_01").addClass("e-rad-select"),this.span.removeClass("e-rad-active"),this.div.attr({tabindex:0,"aria-checked":!1}),this.radbtn.removeAttr("checked");else{var f=this.element.find(".e-input").attr("name"),e=n('input.e-radiobtn[name="'+f+'"]:radio'),o=this,s=this.element.find(".e-input"),r=n(s).data("ejRadioButton");u.isChecked&&(this.spanImg.addClass("e-circle_01").removeClass("e-rad-select"),this.span.addClass("e-rad-active"),this.div.attr({tabindex:0,"aria-checked":!0}),this.radbtn.attr("checked","checked"));n.each(e,function(i,r){o._interacted&&n(n(r).closest(".e-widget")).find("span.e-spanicon").hasClass("e-rad-active")&&n(r).closest(".e-radiobtn-wrap").addClass("e-material-animate");n(r).closest(".e-radiobtn-wrap").find(".e-rad-icon").removeClass("e-circle_01").addClass("e-rad-select");n(r).closest(".e-radiobtn-wrap").find(".e-spanicon").removeClass("e-rad-active");n(r).closest(".e-radiobtn-wrap").attr({tabindex:0,"aria-checked":!1});var u=n(r).data("ejRadioButton");t.isNullOrUndefined(u)||u.checked()==null||typeof u.checked()!="boolean"||(u.model.checked=!1,u.isChecked=!1,u.radbtn.removeAttr("checked"))});r!=null&&r.checked()!=null&&typeof r.checked()=="boolean"?r.model.checked=!0:r.checked(r.radbtn.attr("value"));this.element.find(".e-rad-icon").addClass("e-circle_01").removeClass("e-rad-select");this.span.addClass("e-rad-active");this.div.attr({tabindex:0,"aria-checked":!0});this._isUI&&this.element.find(".e-input").click();this.isChecked=!0;this.isChecked==!0?this.radbtn.attr("checked","checked"):this.radbtn.removeAttr("checked")}u={isChecked:this.isChecked,isInteraction:!!i};this.initialRender||this._trigger("change",u);i&&this._trigger("_change",{value:this._hiddenValue})},disable:function(){this.element.hasClass("e-disable")||(this.element.addClass("e-disable"),this.radbtn.attr("disabled","disabled"));this._isIE8&&this.span.addClass("e-disable");this.div.attr("aria-disabled",!0);this.model.enabled=!1},enable:function(){this.element.hasClass("e-disable")&&(this.element.removeClass("e-disable"),this.radbtn.prop("disabled",!1));this._isIE8&&this.span.removeClass("e-disable");this.div.attr("aria-disabled",!1);this.model.enabled=!0}});t.RadioButtonSize={Small:"small",Medium:"medium"}}(jQuery,Syncfusion),function(n,t,i){t.widget("ejDatePicker","ej.DatePicker",{element:null,_rootCss:"e-datepicker",model:null,validTags:["input","div","span"],_setFirst:!1,_addToPersist:["value"],_cancelValue:!1,type:"editor",angular:{require:["?ngModel","^?form","^?ngModelOptions"],requireFormatters:!0},defaults:{dayHeaderFormat:"min",showPopupButton:!0,enableAnimation:!0,showFooter:!0,displayInline:!1,htmlAttributes:{},dateFormat:"",watermarkText:"Select date",value:null,minDate:new Date("01/01/1900"),maxDate:new Date("12/31/2099"),startLevel:"month",depthLevel:"",cssClass:"",startDay:-1,stepMonths:1,locale:"en-US",showOtherMonths:!0,enableStrictMode:!1,enablePersistence:!1,enabled:!0,width:"",height:"",enableRTL:!1,showRoundedCorner:!1,headerFormat:"MMMM yyyy",buttonText:"Today",readOnly:!1,specialDates:null,fields:{date:"date",tooltip:"tooltip",iconClass:"iconClass",cssClass:"cssClass"},showTooltip:!0,showDisabledRange:!0,highlightSection:"none",highlightWeekend:!1,validationRules:null,validationMessage:null,validationMessages:null,allowEdit:!0,tooltipFormat:"ddd MMM dd yyyy",allowDrillDown:!0,blackoutDates:[],beforeDateCreate:null,open:null,close:null,select:null,change:null,focusIn:null,focusOut:null,beforeOpen:null,beforeClose:null,navigate:null,create:null,destroy:null,weekNumber:!1,timeZone:!0},dataTypes:{startDay:"number",stepMonths:"number",showOtherMonths:"boolean",enableStrictMode:"boolean",showRoundedCorner:"boolean",enableRTL:"boolean",displayInline:"boolean",showPopupButton:"boolean",locale:"string",readOnly:"boolean",cssClass:"string",dateFormat:"string",watermarkText:"string",headerFormat:"string",buttonText:"string",specialDates:"data",showTooltip:"boolean",highlightSection:"enum",highlightWeekend:"boolean",enableAnimation:"boolean",validationRules:"data",validationMessage:"data",validationMessages:"data",htmlAttributes:"data",tooltipFormat:"string",allowEdit:"boolean",allowDrillDown:"boolean",weekNumber:"boolean"},_renderPopup:function(){this.sfCalendar=t.buildTag("div.e-datepicker e-popup e-widget "+this.model.cssClass+" e-calendar "+(this.model.specialDates?this.model.specialDates[0][this._mapField._icon]?"e-icons ":"":""),"",{},{id:this._id?"e-"+this._id:""}).attr({"aria-hidden":"true"}).attr(this._isIE8?{unselectable:"on"}:{}).insertBefore(this.element);this.model.displayInline&&!this.element.is("input")&&this.sfCalendar.addClass("e-inline");this.popup=this.sfCalendar;t.isTouchDevice()||this.sfCalendar.addClass("e-ntouch");this._setRestrictDateState(this.model.showDisabledRange);this._createCalender();this._setDisplayInline(this.model.displayInline);this._resizeCalender();this._setRTL(this.model.enableRTL);this._setRoundedCorner(this.model.showRoundedCorner);this._wireCalendarEvents()},_setModel:function(i){var u=!1,f=!1,e=!1,r,o;for(r in i){r!="showPopupButton"&&r!="width"&&r!="dateFormat"&&r!="height"&&r!="readOnly"&&r!="allowEdit"&&r!="enabled"&&r!="watermarkText"&&r!="htmlAttributes"&&r!="validationMessages"&&r!="validationRules"&&t.isNullOrUndefined(this.sfCalendar)&&this._renderPopup();switch(r){case"dayHeaderFormat":this.model.dayHeaderFormat=i[r];u=f=!0;break;case"weekNumber":this.model.weekNumber=i[r];this._refreshDatepicker();break;case"showPopupButton":this._renderDateIcon(i[r],!0);break;case"displayInline":if(i[r]||this._bindDateButton(),this._setDisplayInline(i[r]),!this.model.allowEdit&&!i[r]&&this._isInputBox)this.element.on("mousedown",n.proxy(this._showDatePopUp,this));break;case"value":t.isPlainObject(i[r])&&(i[r]=null);t.isNullOrUndefined(i.minDate)&&t.isNullOrUndefined(i.maxDate)?(this._setDateValue(i[r]),this._specificFormat()&&(this._stopRefresh=!0),i[r]=this.model.value):this._updateDateValue(i[r]);e=u=f=!0;break;case"specialDates":this.model.specialDates=i[r];this._createSpecialDateObject();u=f=!0;break;case"fields":this.model.fields=i[r];this._mapField=this._getMapper();u=f=!0;break;case"showTooltip":this.model.showTooltip=i[r];u=f=!0;break;case"highlightWeekend":this.model.highlightWeekend=i[r];u=f=!0;break;case"highlightSection":this.model.highlightSection=i[r];u=f=!0;break;case"dateFormat":this.model.dateFormat=i[r];this._ensureValue();break;case"minDate":this._setMinDate(i[r]);i[r]=this.model.minDate;this._ensureValue();e=u=f=!0;break;case"maxDate":this._setMaxDate(i[r]);i[r]=this.model.maxDate;this._ensureValue();e=u=f=!0;break;case"locale":this.model.locale=i[r];this.model.startDay=t.isNullOrUndefined(this._options.startDay)&&this.model.startDay===this.culture.calendar.firstDay?-1:this._options.startDay===this.defaults.startDay?-1:this.model.startDay;this.model.dateFormat=t.isNullOrUndefined(this._options.dateFormat)&&this.model.dateFormat===this.culture.calendar.patterns.d?"":this.model.dateFormat;this._setCulture(i[r]);this.model.value&&this._setDateValue(this.model.value);i[r]=this.model.locale;u=f=!0;break;case"showOtherMonths":this.model.showOtherMonths=i[r];this._otherMonthsVisibility();break;case"enableStrictMode":this.model.enableStrictMode=i[r];e=u=f=!0;break;case"validationRules":this.model.validationRules!=null&&(this.element.rules("remove"),this.model.validationMessages=null);this.model.validationRules=i[r];this.model.validationRules!=null&&(this._initValidator(),this._setValidation());break;case"validationMessages":this.model.validationMessages=i[r];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"validationMessage":this.model.validationMessages=i[r];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"readOnly":this.model.readOnly=i[r];this._disbleMaualInput();break;case"width":this._setWidth(i[r]);break;case"height":this._setHeight(i[r]);break;case"cssClass":this._setSkin(i[r]);break;case"enableRTL":this._setRTL(i[r]);break;case"showRoundedCorner":this._setRoundedCorner(i[r]);break;case"enabled":i[r]?this.enable():this.disable();break;case"buttonText":t.isNullOrUndefined(this._options)&&(this._options={});this._options.buttonText=this.model.buttonText=i[r];this._localizedLabels.buttonText=this.model.buttonText;this._setFooterText(i[r]);break;case"showFooter":this._enableFooter(i[r]);break;case"watermarkText":t.isNullOrUndefined(this._options)&&(this._options={});this._options.watermarkText=this.model.watermarkText=i[r];this._localizedLabels.watermarkText=this.model.watermarkText;this._setWaterMark();break;case"startDay":o=i[r];(parseInt(i[r])<0||parseInt(i[r])>6)&&(i[r]=this.culture.calendar.firstDay,o=-1);this.model.startDay=i[r];t.isNullOrUndefined(this._options)&&(this._options={});this._options.startDay=o;u=f=!0;break;case"startLevel":this.model.startLevel=i[r];u=f=!0;break;case"headerFormat":this.model.headerFormat=i[r];u=f=!0;break;case"depthLevel":this.model.depthLevel=i[r];u=f=!0;break;case"htmlAttributes":this._addAttr(i[r]);break;case"allowEdit":this._changeEditable(i[r]);break;case"tooltipFormat":this.model.tooltipFormat=i[r];u=f=!0;break;case"allowDrillDown":this._allowQuickPick(i[r]);u=f=!0;break;case"showDisabledRange":this._setRestrictDateState(i[r]);break;case"blackoutDates":this.model.blackoutDates=i[r];this._initDisableObj(this.model.blackoutDates);u=f=!0}}e&&(this._validateMinMaxDate(),i.value=this.model.value,i.maxDate=this.model.maxDate,i.minDate=this.model.minDate);this._setWaterMark();u&&(this.isValidState||this.model.displayInline)&&this._refreshDatepicker();f&&!this._startNavigate&&this._startLevel(this.model.startLevel);this._triggerChangeEvent();this._checkErrorClass()},observables:["value"],_destroy:function(){this.model.displayInline&&n(window).off("resize",n.proxy(this._OnWindowResize,this));this._isOpen&&this.hide();this.sfCalendar&&this.sfCalendar.remove();this.wrapper&&(this.element.insertAfter(this.wrapper),this.wrapper.remove());this.element.removeClass("e-datepicker e-input");this.element.removeAttr("aria-atomic aria-live aria-activedescendant aria-expanded role placeholder tabindex");this._cloneElement.hasAttribute("name")||this.element.removeAttr("name")},_init:function(n){this._options=n;this._cloneElement=this.element.clone();this._dt_drilldown=!1;this._ISORegex();this._initDisableObj(this.model.blackoutDates);this.animation={open:{duration:200},close:{duration:100}};this._animating=!1;this._isInputBox=this._isInputBox();this._startNavigate=!1;this._keyboardInteraction=!1;this._isSupport=document.createElement("input").placeholder==i?!1:!0;this._checkAttribute();this._setValues();this._createDatePicker();t.isNullOrUndefined(n)||t.isNullOrUndefined(n.validationMessage)||(this.model.validationMessages=this.model.validationMessage);this.model.validationRules!=null&&(this._initValidator(),this._setValidation());n&&n.value!=i&&n.value!=this.element.val()&&this._trigger("_change",{value:this.element.val()})},_ISORegex:function(){this._tokens=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;this._extISORegex=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/;this._basicISORegex=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/;this._isISODate=/[T]/;this._numberRegex={2:/\d\d?/,4:/^\d{4}/,z:/Z|[+-]\d\d(?::?\d\d)?/gi,t:/T/,"-":/\-/,":":/:/};this._zeroRegex=/Z|[+-]\d\d(?::?\d\d)?/;this._dates=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]];this._times=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]]},_initValidator:function(){this.element.closest("form").data("validator")||this.element.closest("form").validate()},_setValidation:function(){var r,f,i,u,e;this.element.rules("add",this.model.validationRules);r=this.element.closest("form").data("validator");r=r?r:this.element.closest("form").validate();f=this.element.attr("name");r.settings.messages[f]={};for(i in this.model.validationRules)if(u=null,!t.isNullOrUndefined(this.model.validationRules[i])){if(t.isNullOrUndefined(this.model.validationRules.messages&&this.model.validationRules.messages[i])){r.settings.messages[f][i]=n.validator.messages[i];for(e in this.model.validationMessages)i==e?u=this.model.validationMessages[i]:""}else u=this.model.validationRules.messages[i];r.settings.messages[f][i]=u!=null?u:n.validator.messages[i]}},setValue:function(n){typeof n=="string"&&(n=new Date(n));var t=this.model.value;this._setDateValue(n);this._checkErrorClass();t!=this.model.value&&this._triggerChangeEvent()},_checkAttribute:function(){for(var u=["min","max","readonly","disabled"],f=["minDate","maxDate","readOnly","enabled"],i,n,r=0;r<u.length;r++)i=this.element.attr(u[r]),n=f[r],t.isNullOrUndefined(i)||(t.isNullOrUndefined(this._options)?this.model[n]=n!="enabled"&&n!="readOnly"?new Date(i):n=="readOnly"?this.element.is("[readonly]"):!this.element.is("[disabled]"):t.isNullOrUndefined(this._options[n])&&(this.model[n]=n!="enabled"&&n!="readOnly"?new Date(i):n=="readOnly"?this.element.is("[readonly]"):!this.element.is("[disabled]")))},_updateDateValue:function(n){var t=this._checkDateObject(n);t!=null?(this.isValidState=!0,t==""?(this.element.val(""),this.model.value=null):(this.model.value=t,this._preTxtValue=this.element.val(this._formatter(this.model.value,this.model.dateFormat)))):(typeof t=="string"&&this.model.enableStrictMode?this.element.val(n):this.element.val(""),this.model.value=null,this.isValidState=this.element.val()==""?!0:!1);this._removeWatermark()},_ensureValue:function(){var n=this._parseDate(this.element.val(),this.model.dateFormat);this.model.value?this._setDateValue(this.model.value):n&&this._setDateValue(n)},_changeEditable:function(t){var i=t?"_on":"_off";if(this.element.is(":input")){if(t)this.model.readOnly||this.element.attr("readonly",!1),this.element.off("mousedown",n.proxy(this._showDatePopUp,this));else if(this.model.readOnly||this.element.attr("readonly","readonly"),!this.model.displayInline)this.element.on("mousedown",n.proxy(this._showDatePopUp,this));this[i](this.element,"blur",this._onFocusOut);this[i](this.element,"focus",this._onFocusIn);this[i](this.element,"keydown",this._onKeyDown)}},_allowQuickPick:function(t){n(".e-datepicker-headertext",this.sfCalendar)[t?"on":"off"]("click",n.proxy(this._forwardNavHandler,this))},_setRestrictDateState:function(n){var t=n?"addClass":"removeClass";this.sfCalendar[t]("e-dp-restrict-show")},_setValues:function(){this.Date=new Date;this._id=this.element[0].id;this.isValidState=!0;this._setCulture(this.model.locale);this._setMinDate(this.model.minDate);this._setMaxDate(this.model.maxDate);this._calendarDate=this._zeroTime(new Date);(this.model.startDay<0||this.model.startDay>6)&&(this.model.startDay=0);this.Date.firstDayOfWeek=this.model.startDay;this.Date.fullYearStart="20";this._showHeader=!0;t.isNullOrUndefined(this.model.value)&&this.element[0].value!=""&&(this.model.value=this.element[0].value);this._validateMinMaxDate();this._dateValue=new Date(this._calendarDate.toString());this._isIE7=this._checkIE7();this._isIE8=t.browserInfo().name=="msie"&&t.browserInfo().version=="8.0"?!0:!1;this._isIE9=t.browserInfo().name=="msie"&&t.browserInfo().version=="9.0"?!0:!1;this._getInternalEvents=!1;this._flag=!0;this._ejHLWeekEnd=!1;this._isOpen=!1;this._prevDate=null;this._preValue=null;this._isFocused=!1},_addAttr:function(i){var r=this;n.map(i,function(n,i){var u=i.toLowerCase();u=="class"?r.wrapper.addClass(n):u=="disabled"?r.disable():u=="readOnly"?r.model.readOnly=!0:u=="style"?r.wrapper.attr(i,n):u=="id"?(r.wrapper.attr(i,n+"_wrapper"),r.element.attr(i,n)):t.isValidAttr(r.element[0],i)?r.element.attr(i,n):r.wrapper.attr(i,n)})},_createDatePicker:function(){this._createWrapper();this._wireEvents();this.model.displayInline&&this.show();this.model.enableRTL&&this._setRTL(!0);this.model.showRoundedCorner&&this._setRoundedCorner(!0)},_checkNameAttr:function(){!this.element.attr("name")&&this._isInputBox&&this.element.attr("name",this.element[0].id);this.model.displayInline&&!this._isInputBox&&this._hiddenInput.attr("name",this.element[0].id)},_createWrapper:function(){if(this._getMapper(),this.model.specialDates&&this._createSpecialDateObject(),this.element[0].hasAttribute("tabindex")||this.element.attr("tabindex","0"),this._isInputBox&&(this.element.addClass("e-input").attr({"aria-atomic":"true","aria-live":"assertive","aria-expanded":"false",role:"combobox"}),this.wrapper=t.buildTag("span.e-datewidget e-widget "+this.model.cssClass),this.wrapper.attr("style",this.element.attr("style")),this.element.removeAttr("style"),t.isTouchDevice()||this.wrapper.addClass("e-ntouch"),this.innerWrapper=t.buildTag("span.e-in-wrap e-box e-padding"),this.wrapper.append(this.innerWrapper).insertBefore(this.element),this.innerWrapper.append(this.element),this.dateIcon=t.buildTag("span.e-select#"+this._id+"-img","",{},this._isIE8?{unselectable:"on"}:{}).append(t.buildTag("span.e-icon e-calendar","",{},{"aria-label":"Select"}).attr(this._isIE8?{unselectable:"on"}:{})).insertAfter(this.element)),!this._isSupport||this.model.displayInline&&!this._isInputBox){this._hiddenInput=t.buildTag("input.e-input e-placeholder ","",{},{type:"text"}).insertAfter(this.element);this._isInputBox&&this._hiddenInput.val(this._localizedLabels.watermarkText);this._hiddenInput.css("display","block");var i=this;n(this._hiddenInput).focus(function(){i.element.focus()})}this._checkNameAttr();this.model.height||(this.model.height=this.element.attr("height"));this.model.width||(this.model.width=this.element.attr("width"));this._setHeight(this.model.height);this._setWidth(this.model.width);this._id&&n("#e-"+this._id).remove();this._setDateValue(this.model.value);this._preValue=this._parseDate(this.element.val(),this.model.dateFormat);this._setWaterMark();this._dateValue=new Date(this._calendarDate.toString());this.model.displayInline?this._renderPopup():this._isInputBox&&this._renderDateIcon(this.model.showPopupButton,!1);this.model.readOnly&&this._disbleMaualInput();this.model.enabled?this.model.enabled&&n(this.element).hasClass("e-disable")&&this.enable():this.disable();this._layoutChanged();this._checkErrorClass();this._addAttr(this.model.htmlAttributes)},_isInputBox:function(){return this.element.is("input[type=date]")&&this.element.attr("type","text"),this.element.is("input")&&(this.element.is("input[type=text]")||!this.element.attr("type"))},_renderDateIcon:function(n,t){t&&this.model.showPopupButton==n||(!n&&this.dateIcon?(this._bindInputEvent(),this.dateIcon.css("display","none"),this.innerWrapper.removeClass("e-padding")):(this.innerWrapper&&(this.innerWrapper.addClass("e-padding"),this.dateIcon.css("display","block")),this.model.displayInline||this._bindDateButton()),this.model.showPopupButton=n)},_resizeCalender:function(){this.model.dayHeaderFormat=="short"||this.model.dayHeaderFormat=="min"||this.model.dayHeaderFormat=="none"?this.sfCalendar.removeClass("e-headerlong"):this.model.dayHeaderFormat=="long"&&this.sfCalendar.addClass("e-headerlong")},_setWidth:function(n){n?this.wrapper?this.wrapper.width(n):this.element.width(n):this.model.width=this.wrapper?this.wrapper.outerWidth():this.element.width()},_setHeight:function(n){n?this.wrapper?this.wrapper.height(n):this.element.height(n):this.model.height=this.wrapper?this.wrapper.outerHeight():this.element.height();this._isIE7&&this.element.height(this.innerWrapper.height())},_setRTL:function(n){n?(this.wrapper&&this.wrapper.addClass("e-rtl"),this.sfCalendar&&this.sfCalendar.addClass("e-rtl")):(this.wrapper&&this.wrapper.removeClass("e-rtl"),this.sfCalendar&&this.sfCalendar.removeClass("e-rtl"))},_setRoundedCorner:function(n){n?(this.innerWrapper&&this.innerWrapper.addClass("e-corner"),this.sfCalendar&&this.sfCalendar.addClass("e-corner")):(this.innerWrapper&&this.innerWrapper.removeClass("e-corner"),this.sfCalendar&&this.sfCalendar.removeClass("e-corner"))},_refreshDatepicker:function(){var r,f,u,t;if(this._stopRefresh){this._stopRefresh=!1;return}if(r=this.element.val(),f=!1,this.model.navigate!==null&&this.sfCalendar.find("table")[0]!==i)if(u=this.sfCalendar.find("table")[0].className,u==="e-dp-viewdays"&&+this._dateValue!=+this._calendarDate)this._calendarDate=this._dateValue,f=!0;else if(u!=="e-dp-viewdays"){(u==="e-dp-viewmonths"||u==="e-dp-viewyears"||u==="e-dp-viewallyears")&&(this._startNavigate=!0);return}t=this._specificFormat()&&this._formatter(this._preValue,this.model.dateFormat,this.model.locale)!=r?this._parseDate(r,!0):this._parseDate(r);t=this._validateYearValue(t);this.model.navigate!==null&&t!==null&&t!==this._calendarDate&&(t=this._calendarDate);this._setDateValue(t);this._specificFormat()&&this._compareDate(this.model.value,this._calendarDate)&&this.element.val(r);n(".e-datepicker-headertext",this.sfCalendar).text(this._formatter(this._calendarDate,this.model.headerFormat));this._resizeCalender();this._dateValue=new Date(this._calendarDate.toString());this._hoverDate=this._calendarDate.getDate()-1;this._renderCalendar(this,this._dateValue);f&&r===""&&this._addFocus("day",this._hoverDate);this._setFooterText(this._localizedLabels.buttonText);this._enableFooter(this.model.showFooter);this._layoutChanged()},_removeCurrentMonthFromHideDate:function(){for(var u,i,r,f=this.sfCalendar.find("tbody.e-datepicker-days tr").length,t=0;t<f;t++)for(u=this.sfCalendar.find("tbody.e-datepicker-days tr")[t].cells.length,i=0;i<u;i++)r=n(this.sfCalendar.find("tbody.e-datepicker-days tr")[t].cells[i]),r.hasClass("e-hidedate")&&r.hasClass("current-month")&&r.removeClass("current-month")},_validateYearValue:function(n){if(n!=null){var i=t.preferredCulture(this.model.locale).calendars.standard.twoDigitYearMax;i=typeof i=="string"?(new Date).getFullYear()%100+parseInt(i,10):i;this._calendarDate.getFullYear()-n.getFullYear()==100&&this._calendarDate.getFullYear()>i&&n.setFullYear(this._calendarDate.getFullYear())}return n},_setFooterText:function(t){n(".e-footer-text",this.sfCalendar).html(t)},_setSkin:function(n){this.wrapper?(this.wrapper.removeClass(this.model.cssClass),this.wrapper.addClass(n)):(this.element.removeClass(this.model.cssClass),this.element.addClass(n));this.sfCalendar.removeClass(this.model.cssClass);this.sfCalendar.addClass(n)},_setDisplayInline:function(t){this.model.displayInline=t;t&&this._isInputBox?(this.sfCalendar.insertAfter(this.wrapper),this._setDatePickerPosition()):t?(this.element.append(this.sfCalendar),this._isSupport&&this._isInputBox||this._hiddenInput.css("display","none")):(this.sfCalendar.css("display","none"),n("body").append(this.sfCalendar),this._isOpen=!1);t&&(this.show(),this._off(this.dateIcon,"mousedown",this._showDatePopUp),this.element.off("mousedown",n.proxy(this._showDatePopUp,this)))},_disbleMaualInput:function(){this.model.readOnly?(n(this.element).attr("readonly","readonly"),this.model.displayInline||this.hide()):this.model.allowEdit&&n(this.element).prop("readonly",!1)},_checkDateObject:function(n,t){var t;if(n&&(typeof JSON!="object"||JSON.stringify(n)!=="{}"))n instanceof Date||(t=this._specificFormat()?this._parseDate(n,!0):this._parseDate(n,t),n=t?t:(t=this._checkJSONString(n))?t:null);else return null;return!isNaN(Date.parse(n))&&(this._dateValue=this._calendarDate=this._zeroTime(n),this._validateDate(n))?this._dateValue:null},_checkJSONString:function(n){if(isNaN(Date.parse(n))){if(this.model.enableStrictMode&&t.parseDate(n,this.model.value,this.model.locale)==null)return null;if(this._extISORegex.exec(n)||this._basicISORegex.exec(n))return this._dateFromISO(n)}else if(new Date(n).toJSON()===n||new Date(n).toDateString()===n||new Date(n).toGMTString()===n||new Date(n).toISOString()===n||new Date(n).toLocaleString()===n||new Date(n).toString()===n||new Date(n).toUTCString()===n){if(this.model.timeZone)return new Date(new Date(n).getTime()+t.serverTimezoneOffset*36e5);if(n.match(/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(\.\d+)?(([+-]\d\d:\d\d)|Z)?$/i)&&n.match(/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(\.\d+)?(([+-]\d\d:\d\d)|Z)?$/i).length>0)return n=n.split("T"),n=n[0],t.parseDate(n,"yyyy-MM-dd",this.model.locale)}else if(typeof n=="string")return this._dateFromISO(n)},_dateFromISO:function(n){var i=this._isISODate.test(n)&&(this._extISORegex.exec(n)||this._basicISORegex.exec(n)),c="",l="",a="",v,e,o,f,r,t,s,u,h,y;if(i){for(e=0;e<this._dates.length;e++)if(this._dates[e][1].exec(i[1])){c=this._dates[e][0];break}if(i[3])for(o=0;o<this._times.length;o++)if(this._times[o][1].exec(i[3])){l=(i[2]||" ")+this._times[o][0];break}for(i[4]&&this._zeroRegex.exec(i[4])&&(a="Z"),v=c+l+a,f=v.match(this._tokens),t=[],u=0;u<f.length;u++)h=f[u],s=this._checkLiteral(f[u]),y=this._numberRegex[s?f[u].toLowerCase():h.length]||new RegExp("^\\d{1,"+h.length+"}"),r=n.match(y),r&&(n.substr(0,n.indexOf(r))>=0&&!s&&(f[u].indexOf("M")>=0?t.push(parseInt(r[0])-1):t.push(parseInt(r[0]))),n=n.slice(n.indexOf(r[0])+r[0].length));return i[4]=="Z"?new Date(Date.UTC.apply(null,t)):new Date(t[0],t[1],t[2],t[3],t[4],t[5])}return new Date(n+"")},_checkLiteral:function(n){var t=n.toLowerCase();return t=="t"||t=="z"||t==":"||t=="-"?!0:!1},_checkInstanceType:function(n){if(n=this._stringToObject(n),n)n instanceof Date||(n=this._parseDate(n));else return null;return isNaN(Date.parse(n))?null:this._zeroTime(n)},_stringToObject:function(n){if(typeof n=="string"){var i=t.parseDate(n,this.model.dateFormat,this.model.locale);n=i!=null?i:new Date(n)}return n},_validateMinMaxDate:function(){var n=!1,t=!1;this.model.maxDate<this.model.minDate&&(this.model.minDate=this.model.maxDate);this.model.enableStrictMode?this.model.value?this.model.value<this.model.minDate?(this._calendarDate=this.model.minDate,this.isValidState=!1,t=!0):this.model.value>this.model.maxDate?(this._calendarDate=this.model.maxDate,this.isValidState=!1,t=!0):this.isValidState=!0:this._calendarDate<this.model.minDate?this._calendarDate=this.model.minDate:this._calendarDate>this.model.maxDate&&(this._calendarDate=this.model.maxDate):(this.model.value?this.model.value<this.model.minDate?(this._calendarDate=this.model.value=this.model.minDate,n=!0):this.model.value>this.model.maxDate&&(this._calendarDate=this.model.value=this.model.maxDate,n=!0):(this.element.val(""),this._calendarDate<this.model.minDate?this._calendarDate=this.model.minDate:this._calendarDate>this.model.maxDate&&(this._calendarDate=this.model.maxDate)),this.isValidState=!0);n&&this.element.val(this._formatter(this.model.value,this.model.dateFormat));t&&this._getInternalEvents&&this._trigger("outOfRange")},_setCulture:function(n){this.culture=t.preferredCulture(n);this.culture&&(this.model.locale=this.culture.name=="en"?"en-US":this.culture.name,this.Date.dayNames=this.culture.calendar.days.names,this.Date.dayNamesMin=this.culture.calendar.days.namesShort,this.Date.abbrDayNames=this.culture.calendar.days.namesAbbr,this.Date.monthNames=this.culture.calendar.months.names,this.Date.abbrMonthNames=this.culture.calendar.months.namesAbbr,this.Date.format=this.culture.calendar.patterns.d,this.model.dateFormat==""&&(this.model.dateFormat=this.culture.calendar.patterns.d),this.model.startDay==-1&&(this.model.startDay=this.culture.calendar.firstDay));this._separator=this._getSeparator();this._localizedLabels=this._getLocalizedLabels();t.isNullOrUndefined(this._options)||(t.isNullOrUndefined(this._options.watermarkText)||(this._localizedLabels.watermarkText=this._options.watermarkText),t.isNullOrUndefined(this._options.buttonText)||(this._localizedLabels.buttonText=this._options.buttonText));this._localizedLabelToModel()},_localizedLabelToModel:function(){this.model.watermarkText=this._localizedLabels.watermarkText;this.model.buttonText=this._localizedLabels.buttonText},_setWaterMark:function(){if(this.element!=null&&this.element.hasClass("e-input"))return this._localizedLabels.watermarkText&&this.element.val()==""&&(this.isValidState=!0,this._checkErrorClass()),this._isSupport||this.element.val()!=""?n(this.element).attr("placeholder",this._localizedLabels.watermarkText):this._hiddenInput.css("display","block").val(this._localizedLabels.watermarkText),!0},_setDatePickerPosition:function(){if(!this.model.displayInline||this._isInputBox){var i=this.element.is("input")?this.wrapper:this.element,r=this._getOffset(i),o,s,l=n(document).scrollTop()+n(window).height()-(r.top+n(i).outerHeight()),a=r.top-n(document).scrollTop(),f=this.sfCalendar.outerHeight(),e=this.sfCalendar.outerWidth(),u=r.left,h=i.outerHeight(),p=(h-i.height())/2,v=this._getZindexPartial(),c=3,y=f<l||f>a?r.top+h+c:r.top-f-c;o=n(document).scrollLeft()+n(window).width()-u;s=n(document).scrollLeft()+u+i.width();(this.model.enableRTL||e>o&&e<u+i.outerWidth()&&!t.isNullOrUndefined(this.wrapper))&&(u+=this.wrapper.width()-this.sfCalendar.width());e>s&&(u=r.left);this.sfCalendar.css({left:u+"px",top:y+"px","z-index":v})}},_getOffset:function(n){return t.util.getOffset(n)},_getZindexPartial:function(){return t.util.getZindexPartial(this.element,this.sfCalendar)},_setMinDate:function(n){this.model.minDate=this._checkInstanceType(n);this.model.minDate||(this.model.minDate=new Date("11/31/1899"))},_setMaxDate:function(n){this.model.maxDate=this._checkInstanceType(n);this.model.maxDate||(this.model.maxDate=new Date("12/31/2099"))},_setDateValue:function(n,i){var r=this._checkDateObject(n,i);r!=null?(this.isValidState=!0,this.model.value=new Date(r),this.model.displayInline||this.wrapper.addClass("e-valid"),this._validateMinMaxDate(),this._preTxtValue=this.element.val(this._formatter(this.model.value,this.model.dateFormat))):(n instanceof Date&&(this._validateMinMaxDate(),n=this._formatter(n,this.model.dateFormat)),this.model.enableStrictMode?this.element.val(n):this.element.val(null),this.model.value=null,this.model.displayInline||this.wrapper.removeClass("e-valid"),this._triggerChangeEvent(),this.isValidState=this.element.val()==""||t.isNullOrUndefined(this.element.val())?!0:!1);this._removeWatermark()},_updateInputVal:function(){var n=this._validateValue();(n!=null||!this.model.enableStrictMode)&&this.sfCalendar&&this.sfCalendar.find(".e-datepicker-days").is(":visible")&&this._refreshDatepicker()},_validateInputVal:function(){var n=this._validateValue();n!=null&&(this.model.enableStrictMode||(n<=this.model.maxDate&&n>=this.model.minDate?this.isValidState=!0:(this.model.value=null,this.isValidState=!0)))},_validateValue:function(){var n;return n=this._specificFormat()&&this.element.val()!=this._formatter(this._preValue,this.model.dateFormat,this.model.locale)?this._parseDate(this.element.val(),!0):this._parseDate(this.element.val()),this._validateYearValue(n)},_getSeparator:function(){var t,i,n;for(t=this.culture?this.culture.calendar.patterns.d:this.model.dateFormat,i=new RegExp("^[a-zA-Z0-9]+$"),n=0;n<t.length;n++)if(!i.test(t[n]))return t[n]},_checkIE7:function(){if(navigator.appName=="Microsoft Internet Explorer"){var t=new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})"),n=-1;if(t.exec(navigator.userAgent)!=null&&(n=parseFloat(RegExp.$1)),n>=7&&n<8)return!0}return!1},_isValidDate:function(n){return n&&typeof n.getTime=="function"&&isFinite(n.getTime())},_formatter:function(n,i){var r=this._checkFormat(i);return t.format(n,r,this.model.locale)},_parseDate:function(n,r){var f=this._checkFormat(this.model.dateFormat),u=n;return!this._specificFormat()||u==i||n==""||r==!0||t.format(t.parseDate(u,f,this.model.locale),this.model.dateFormat,this.model.locale)==u?t.parseDate(n,f,this.model.locale):this._dateValue},_checkFormat:function(n){var i=this,r=this._regExp();return n.replace(r,function(n){return n==="/"?t.preferredCulture(i.model.locale).calendars.standard["/"]!=="/"?"'/'":n:n})},_regExp:function(){return/\/dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|HH|H|hh|h|mm|m|fff|ff|f|tt|ss|s|zzz|zz|z|gg|g|"[^"]*"|'[^']*'|[/]/g},isLeapYear:function(n){return n%4==0&&n%100!=0||n%400==0},_zeroTime:function(n){var t=typeof n=="string"?this._parseDate(n):new Date(n);return t.setMilliseconds(0),t.setSeconds(0),t.setMinutes(0),t.setHours(0),t},_getDaysInMonth:function(n){return[31,this.isLeapYear(n)?29:28,31,30,31,30,31,31,30,31,30,31][n.getMonth()]},_addDays:function(n,t){return n.setDate(n.getDate()+t),n},_addYears:function(n,t){return n.setFullYear(n.getFullYear()+t),n},_addMonths:function(n,t){var i=n.getDate();return n.setMonth(n.getMonth()+t),i>n.getDate()&&this._addDays(n,-n.getDate()),n},_isWeekend:function(n){return n.getDay()==0||n.getDay()==6},_isSpecialDates:function(n){if(this.model.specialDates)for(var t=0;t<this.model.specialDates.length;t++)if(this.model.specialDates[t]&&this.model.specialDates[t][this._mapField._date]&&n.getDate()==this.model.specialDates[t][this._mapField._date].getDate()&&n.getMonth()==this.model.specialDates[t][this._mapField._date].getMonth()&&n.getFullYear()==this.model.specialDates[t][this._mapField._date].getFullYear())return this._getIndex=t,!0;return!1},_getMapper:function(){var n=this.model.fields;this._mapField={};this._mapField._date=n&&n.date?n.date:"date";this._mapField._tooltip=n&&n.tooltip?n.tooltip:"tooltip";this._mapField._icon=n&&n.iconClass?n.iconClass:"iconClass";this._mapField._custom=n&&n.cssClass?n.cssClass:"cssClass"},_createSpecialDateObject:function(){for(var n=0;n<this.model.specialDates.length;n++)this.model.specialDates[n][this._mapField._date]=this._checkInstanceType(this.model.specialDates[n][this._mapField._date])},_getMonthName:function(n,t){return n?this.Date.abbrMonthNames[t.getMonth()]:this.Date.monthNames[t.getMonth()]},_displayNewMonth:function(n,t){return this._setDisplayedMonth(this.displayedMonth+n,this.displayedYear+t,!0),!1},_setDisplayedMonth:function(n,t,r){var f,e,u,s,h,o;this.model.minDate!=i&&this.model.maxDate!=i&&(f=new Date(this.model.minDate.getTime()),f.setDate(1),e=new Date(this.model.maxDate.getTime()),e.setDate(1),!n&&!t||isNaN(n)&&isNaN(t)?(u=this._zeroTime(new Date),u.setDate(1)):u=isNaN(n)?new Date(t,this.displayedMonth,1):isNaN(t)?new Date(this.displayedYear,n,1):new Date(t,n,1),u.getTime()<f.getTime()?u=f:u.getTime()>e.getTime()&&(u=e),s=this.displayedMonth,h=this.displayedYear,this.displayedMonth=u.getMonth(),this.displayedYear=u.getFullYear(),o=u,r&&(this.displayedMonth!=s||this.displayedYear!=h)&&(this._renderCalendar(this,o),this._dateValue=o,this._trigger("monthChanged",[this.displayedMonth,this.displayedYear])))},_clearSelected:function(){this.numSelected=0;t.isNullOrUndefined(this.sfCalendar)||(this.model.highlightSection=="week"?n("td.e-active",this.sfCalendar).removeClass("e-active").addClass("e-state-hover").attr("aria-selected",!1).parent().removeClass("e-selected-week"):this.model.highlightSection=="month"?n("td.e-active",this.sfCalendar).removeClass("e-active").addClass("e-state-hover").attr("aria-selected",!1).parent().parent().removeClass("e-selected-month"):this.model.highlightSection=="workdays"?n("td.e-active",this.sfCalendar).removeClass("e-active").addClass("e-state-hover").attr("aria-selected",!1).parent().removeClass("e-work-week"):n("td.e-active",this.sfCalendar).removeClass("e-active").addClass("e-state-hover").attr("aria-selected",!1))},_addSelected:function(){this.model.highlightSection=="week"?n("td.e-active",this.sfCalendar).parent().addClass("e-selected-week"):this.model.highlightSection=="month"?n("td.e-active, this.sfCalendar").parent().parent().addClass("e-selected-month"):this.model.highlightSection=="workdays"&&n("td.e-active",this.sfCalendar).parent().addClass("e-work-week")},_hideOtherMonths:function(t){n("td.other-month",t).css("visibility","hidden")},_showOtherMonths:function(t){n("td.other-month",t).css({visibility:"visible"})},_otherMonthsVisibility:function(){this.model.showOtherMonths?this._showOtherMonths(this.sfCalendar):this._hideOtherMonths(this.sfCalendar)},_createCalender:function(){t.buildTag("div.e-header").attr(this._isIE8?{unselectable:"on"}:{}).append(t.buildTag("span.e-prev").append(t.buildTag("a.e-icon e-arrow-sans-left").attr({role:"button"}).attr(this._isIE8?{unselectable:"on"}:{}))).append(t.buildTag("span.e-text").append(t.buildTag("span.e-datepicker-headertext").text(this._formatter(this._calendarDate,this.model.headerFormat)).attr({"aria-atomic":"true","aria-live":"assertive",role:"heading"}).attr(this._isIE8?{unselectable:"on"}:{}))).append(t.buildTag("span.e-next").append(t.buildTag("a.e-icon e-arrow-sans-right").attr({role:"button"}).attr(this._isIE8?{unselectable:"on"}:{}))).appendTo(this.sfCalendar);this._enableHeader(this._showHeader);var i=t.buildTag("table.e-dp-viewdays","",{}).data("e-table","data").attr({role:"grid"}).attr(this._isIE8?{unselectable:"on"}:{});this.sfCalendar.append(i);this._renderCalendar(this);this._startLevel(this.model.startLevel);t.buildTag("div.e-footer").append(t.buildTag("span.e-footer-icon")).append(t.buildTag("span.e-footer-text")).appendTo(this.sfCalendar);n(".e-footer-text",this.sfCalendar).html(this._localizedLabels.buttonText);this._enableFooter(this.model.showFooter)},_enableHeader:function(t){t?n(".e-header",this.sfCalendar).show():n(".e-header",this.sfCalendar).hide()},_enableFooter:function(t){t?n(".e-footer",this.sfCalendar).show():n(".e-footer",this.sfCalendar).hide();this._todayBtnDisable()},_todayBtnDisable:function(){var t=new Date((new Date).getFullYear(),(new Date).getMonth(),(new Date).getDate(),0,0,0);+this.model.minDate<=+t&&+this.model.maxDate>=+t?n(".e-footer",this.sfCalendar).removeClass("e-footer-disable"):n(".e-footer",this.sfCalendar).addClass("e-footer-disable")},_checkArrows:function(n,t){this._preArrowCondition(n,this.model.minDate.getFullYear());this._nextArrowCondition(t,this.model.maxDate.getFullYear())},_checkDateArrows:function(){this._preArrowCondition(this._tempMinDate,this.model.minDate);this._nextArrowCondition(this._tempMaxDate,this.model.maxDate)},_preArrowCondition:function(n,t){n<=t?this.sfCalendar.find(".e-prev").addClass("e-disable").attr({"aria-disabled":!0}):this.sfCalendar.find(".e-prev").removeClass("e-disable").attr({"aria-disabled":!1})},_nextArrowCondition:function(n,t){n>=t?this.sfCalendar.find(".e-next").addClass("e-disable").attr({"aria-disabled":!0}):this.sfCalendar.find(".e-next").removeClass("e-disable").attr({"aria-disabled":!1})},_previousNextHandler:function(t){var r,u,f,e,o,s,i;if(this.model.readOnly||!this.model.enabled||n(t.target).hasClass("e-disable")||n(t.currentTarget).hasClass("e-disable"))return!1;t.preventDefault();this._keyboardInteraction=!1;r=n("table",this.sfCalendar);u=this._navigateFrom(r);f=n(t.target).is("a")?n(t.target.parentNode):n(t.target);e=f.hasClass("e-prev")?!0:!1;this._processNextPrevDate(e);o=n("table",this.sfCalendar);s=o.get(0).className;switch(s){case"e-dp-viewdays":i="month";break;case"e-dp-viewmonths":i="year";break;case"e-dp-viewyears":i="decade";break;case"e-dp-viewallyears":i="century"}this._trigger("navigate",{date:this._dateValue,value:this._formatter(this._dateValue,this.model.dateFormat),navigateTo:i,navigateFrom:u})},_processNextPrevDate:function(t){var c,i,u,l,s,h,f,e,o,r;if((this._DRPdisableFade&&(c=new Date(this.sfCalendar.find("td.current-month").attr("data-date")),this._dateValue=c),t&&this.sfCalendar.find(".e-arrow-sans-left").hasClass("e-disable"))||!t&&this.sfCalendar.find(".e-arrow-sans-right").hasClass("e-disable"))return!1;i=n("table",this.sfCalendar);l=i.get(0).className;switch(l){case"e-dp-viewdays":if(s=this.model.stepMonths,t){if(this._dateValue<=this.model.minDate)return this._flag=!1,!1}else if(this._dateValue>=this.model.maxDate)return this._flag=!1,!1;this._flag=!0;this._addMonths(this._dateValue,t?-s:s);this._clickedDate&&(this._calendarDate=this._clickedDate);this._dateValue=this._dateValue<this.model.minDate?new Date(this.model.minDate.toString()):this._dateValue;this._dateValue=this._dateValue>this.model.maxDate?new Date(this.model.maxDate.toString()):this._dateValue;this._renderCalendar(this,this._dateValue);this._keyboardInteraction&&(this._trigger("navigate",{date:this._dateValue,value:this._formatter(this._dateValue,this.model.dateFormat)}),this._removeCurrentMonthFromHideDate(),this._keyboardInteraction=!1);n(".e-datepicker-headertext",this.sfCalendar).text(this._formatter(this._dateValue,this.model.headerFormat));this._addFocus("day",this._hoverDate);h=this._findFirstLastDay(new Date(this._dateValue.toString()));this._preArrowCondition(h.firstDay,this.model.minDate);this._nextArrowCondition(h.lastDay,this.model.maxDate);break;case"e-dp-viewmonths":if(f=this._dateValue,f.setFullYear(n(".e-datepicker-headertext",this.sfCalendar).text()),t){if(f.getFullYear()<=this.model.minDate.getFullYear())return this._flag=!1,!1}else if(f.getFullYear()>=this.model.maxDate.getFullYear())return this._flag=!1,!1;this._flag=!0;this._addYears(f,t?-1:1);this._renderCalendar(this,f);u=f.getFullYear();n(".e-datepicker-headertext",this.sfCalendar).text(u);n("tbody,tr.e-week-header",i).not(".e-datepicker-months").hide();n(n(i).find(".e-datepicker-months")).show();this._addFocus("month",this._hoverMonth);this._checkArrows(u,u);break;case"e-dp-viewyears":if(e=this._dateValue,e.setFullYear(n(i).find(".e-state-hover").text()),t){if(parseInt(this.popup.find("td.e-year-first:first").text())<=this.model.minDate.getFullYear())return this._flag=!1,!1}else if(parseInt(n("td.e-year-last:first").prev().text())>=this.model.maxDate.getFullYear())return this._flag=!1,!1;this._flag=!0;n(i).find(".e-state-hover").hasClass("e-year-first")&&t||n(i).find(".e-state-hover").hasClass("e-year-last")&&!t?this._dateValue.setFullYear(e.getFullYear()):n(i).find(".e-state-hover").hasClass("e-year-first")&&!t?this._dateValue.setFullYear(e.getFullYear()+11):n(i).find(".e-state-hover").hasClass("e-year-last")&&t?this._dateValue.setFullYear(e.getFullYear()-11):this._dateValue.setFullYear(e.getFullYear()+(t?-10:10));this._renderCalendar(this,this._dateValue);r=parseInt(this._dateValue.getFullYear())-(parseInt(this._dateValue.getFullYear())%10+1);n(".e-datepicker-headertext",this.sfCalendar).text(r+1+" - "+(r+10));n("tbody,tr.e-week-header",i).not(".e-datepicker-years").hide();n(n(i).find(".e-datepicker-years")).show();this._addFocus("year",this._hoverYear+(n(".e-year-first.e-hidedate").length?-1:0));this._checkArrows(r+1,r+10);break;case"e-dp-viewallyears":if(t){if(o=parseFloat(n("td.e-allyear-first",i.get(0)).text().split("-")[1]),o<=this.model.minDate.getFullYear())return this._flag=!1,!1;this._flag=!0}else{if(o=parseFloat(n("td.e-allyear-last",i.get(0)).prev().text().split("-")[1]),o>=this.model.maxDate.getFullYear())return this._flag=!1,!1;this._flag=!0}this._dateValue.setFullYear((this._lastHoveredYear?this._lastHoveredYear:this._dateValue.getFullYear())+(t?-100:100));this._lastHoveredYear=this._dateValue.getFullYear();this._renderCalendar(this,this._dateValue);r=parseInt(this._dateValue.getFullYear())-(parseInt(this._dateValue.getFullYear())%100+1);u=parseFloat(n("td.e-allyear-last",i.get(0)).prev().text().split("-")[1]);n(".e-datepicker-headertext",this.sfCalendar).text(r+1+" - "+u);n("tbody,tr.e-week-header",i).not(".e-datepicker-allyears").hide();n(n(i).find(".e-datepicker-allyears")).show();this._addFocus("allyear",this._hoverAllYear+(n(".e-allyear-first.e-hidedate").length?-1:0));this._checkArrows(r+1,u)}this._layoutChanged()},_addFocus:function(t,i){var f="e-current-"+t,u,r;return t=="day"&&(f="current-month"),u=this.sfCalendar.find("tbody tr td."+f),t=="month"&&n(u).each(function(t,r){if(parseInt(n(r).attr("data-index"))==parseInt(i)){i=t;return}}),r=u[i],r||(r=u.last()),this.sfCalendar.find("table td").removeClass("e-state-hover"),n(r).hasClass("e-hidedate")||n(r).addClass("e-state-hover"),this._setActiveState(t),i},_setActiveState:function(t){var e,f,o;if(this.model.value instanceof Date){var i=this.sfCalendar.find("tbody tr td.e-current-"+t),r,s=this,u=-1;switch(t){case"month":this.model.value.getFullYear()===parseInt(n(".e-text",this.sfCalendar).text())&&n(i).each(function(t,i){if(parseInt(n(i).attr("data-index"))==parseInt(s.model.value.getMonth())){u=t;return}});break;case"year":e=this.model.value.getFullYear();n(i).each(function(n,t){if(parseInt(t.innerHTML)==parseInt(e)){u=n;return}});break;case"allyear":f=parseInt(this.model.value.getFullYear())-(parseInt(this.model.value.getFullYear())%10+1);o=f+1+" - "+(f+10);n(i).each(function(n,t){if(parseInt(t.innerHTML)==parseInt(o)){u=n;return}})}r=i[u];r&&(this.sfCalendar.find("table td").removeClass("e-active"),n(r).hasClass("e-hidedate")||n(r).addClass("e-active"))}},_setFocusByName:function(t,i){var u=this.sfCalendar.find("tbody tr td.e-current-"+t),f,r;return n(u).each(function(n,t){if(parseInt(t.innerHTML)==parseInt(i)){f=n;return}}),r=u[f],r||(r=u.last()),this.sfCalendar.find("table td").removeClass("e-state-hover"),n(r).addClass("e-state-hover"),this._setActiveState(t),f},_getHeaderTxt:function(){return this.sfCalendar.find(".e-datepicker-headertext").text()},_findFirstLastDay:function(n){var t=n.getFullYear(),i=n.getMonth(),r=new Date(t,i,1),u=new Date(t,i+1,0);return{firstDay:r,lastDay:u}},_forwardNavHandler:function(t){if(this.model.readOnly||!this.model.enabled)return!1;t&&t.preventDefault();var u=n("table",this.sfCalendar),e=n("table",this.sfCalendar).get(0).className,o=this,i,r,f=this._navigateFrom(u);switch(e){case"e-dp-viewdays":this._hoverMonth=this._getDateObj(u.find(".e-state-hover")).getMonth()||this._getDateObj(u.find(".e-active")).getMonth()||0;this._DRPdisableFade&&(this._renderCalendar(this,this._calendarDate),n(".e-datepicker-headertext",this.sfCalendar).text(this._formatter(this._dateValue,this.model.headerFormat)));this._startLevel("year");r="year";this._addFocus("month",this._hoverMonth);break;case"e-dp-viewmonths":i=this._getHeaderTxt();this._startLevel("decade");r="decade";this._hoverYear=this._setFocusByName("year",i);break;case"e-dp-viewyears":i=this._getHeaderTxt();this._startLevel("century");r="century";this._hoverAllYear=this._setFocusByName("allyear",i)}f!="century"&&this._trigger("navigate",{date:this._dateValue,value:this._formatter(this._dateValue,this.model.dateFormat),navigateTo:r,navigateFrom:f});this._layoutChanged()},_cellSelection:function(){var u=n("table",this.sfCalendar),r=n("table",this.sfCalendar).get(0).className,t,i;switch(r){case"e-dp-viewmonths":this._hoverMonth=this._addFocus("month",this._dateValue.getMonth());break;case"e-dp-viewyears":t=new Date(this._dateValue.toString());this._navigationToPrevNext("year");this._dateValue=t;this._hoverYear=this._setFocusByName("year",this._dateValue.getFullYear());break;case"e-dp-viewallyears":t=new Date(this._dateValue.toString());this._navigationToPrevNext("allyear");this._dateValue=t;i=parseInt(this._dateValue.getFullYear())-(parseInt(this._dateValue.getFullYear())%10+1);this._hoverAllYear=this._setFocusByName("allyear",i+1+" - "+i+10)}this._layoutChanged()},_navigationToPrevNext:function(t){var r=this.sfCalendar.find("tbody tr td.e-current-"+t),u,i,f=this._dateValue.getFullYear();n(r).each(function(n,t){if(parseInt(t.innerHTML)==parseInt(f)){u=n;return}});i=r[u];i&&(n(i).hasClass("e-"+t+"-last")?this._processNextPrevDate(!1):n(i).hasClass("e-"+t+"-first")&&this._processNextPrevDate(!0))},_navigateFrom:function(n){var i=n.get(0).className,t;switch(i){case"e-dp-viewdays":t="month";break;case"e-dp-viewmonths":t="year";break;case"e-dp-viewyears":t="decade";break;case"e-dp-viewallyears":t="century"}return t},_backwardNavHandler:function(i){var u,r;if(this._animating=!0,this.model.readOnly||!this.model.enabled)return!1;i.type?(i.preventDefault(),u=n(i.currentTarget)):u=i;var f=n("table",this.sfCalendar),o,c=n("table",this.sfCalendar).get(0).className,e=this,s,h=this._navigateFrom(f);switch(c){case"e-dp-viewmonths":f.removeClass("e-dp-viewmonths").addClass("e-dp-viewdays");this._lastHoveredMonth=parseInt(n(u).attr("data-index"));this._dateValue=new Date(this._dateValue.getFullYear(),this._lastHoveredMonth,1);this._DRPdisableFade&&this._trigger("_month_Loaded",{currentTarget:i.currentTarget});this._renderCalendar(this,this._dateValue);n("tbody",f).not(".e-datepicker-days,.e-week-header").hide();n(n(f).find(".e-datepicker-days,.e-week-header")).fadeIn("fast",function(){e._addFocus("day",e._hoverDate||0);e._animating=!1});n(".e-datepicker-headertext",this.sfCalendar).text(this._formatter(this._dateValue,this.model.headerFormat));s="month";break;case"e-dp-viewyears":f.removeClass("e-dp-viewyears").addClass("e-dp-viewmonths");this._lastHoveredYear=parseInt(u.text());this._dateValue.setFullYear(this._lastHoveredYear);this._renderCalendar(this,this._dateValue);n("tbody,tr.e-week-header",f).not(".e-datepicker-months").hide();t.isNullOrUndefined(this._hoverMonth)&&!t.isNullOrUndefined(this._dateValue)&&(this._hoverMonth=this._dateValue.getMonth());n(n(f).find(".e-datepicker-months")).fadeIn("fast",function(){e._addFocus("month",e._hoverMonth||0);e._animating=!1});o=u.text();n(".e-datepicker-headertext",this.sfCalendar).text(o);this._checkArrows(o,o);s="year";break;case"e-dp-viewallyears":r=u.text().split("-");f.removeClass("e-dp-viewallyears").addClass("e-dp-viewyears");r[0]<this.model.minDate.getFullYear()?r[0]=this.model.minDate.getFullYear().toString():r[0]>this.model.maxDate.getFullYear()&&(r[0]=this.model.maxDate.getFullYear().toString());this._renderCalendar(this,new Date(r[0],0,1));n("tbody,tr.e-week-header",f).not(".e-datepicker-years").hide();n(n(f).find(".e-datepicker-years")).fadeIn("fast",function(){e._addFocus("year",e._hoverYear||0);e._animating=!1});n(".e-datepicker-headertext",this.sfCalendar).text(r[0]+" - "+r[1]);this._checkArrows(r[0],r[1]);s="decade";this._dateValue=new Date(this._dateValue.setFullYear(parseInt(n.trim(r[0]))+(this._lastHoveredYear?this._lastHoveredYear%10:this._dateValue.getFullYear()%10)));break;default:this._clearSelected();this.sfCalendar.find("table td").removeClass("e-state-hover");u.not("td.e-hidedate").addClass("e-active").attr("aria-selected",!0);this._addSelected();this._hoverDate=this._getDateObj(u).getDate()-1;this._dateValue=new Date(u.attr("data-date"));this._clickedDate=new Date(u.attr("data-date"));this._animating=!1}h!="month"&&this._trigger("navigate",{date:this._dateValue,value:this._formatter(this._dateValue,this.model.dateFormat),navigateTo:s,navigateFrom:h});this._layoutChanged()},_startLevel:function(t){var i=n("table",this.sfCalendar),o=n(".e-datepicker-headertext",this.sfCalendar),r,f,u=this._dateValue,s,e;switch(t){case"decade":i.removeClass("e-dp-viewallyears e-dp-viewmonths e-dp-viewdays").addClass("e-dp-viewyears");n("tbody,tr.e-week-header",i).not(".e-datepicker-years").hide();n(n(i).find(".e-datepicker-years")).show();u=this.model.enableStrictMode&&this._calendarDate<this._dateValue?this._calendarDate:u;e=parseInt(u.getFullYear())-(parseInt(u.getFullYear())%10+1);r=e+1;f=e+10;o.text(r+" - "+f);this._checkArrows(r,f);this._hoverYear=this._setFocusByName("year",u.getFullYear());break;case"century":this._calendarDate<this._dateValue||this._renderCalendar(this,u);i.removeClass("e-dp-viewyears e-dp-viewdays e-dp-viewmonths").addClass("e-dp-viewallyears");n("tbody,tr.e-week-header",i).not(".e-datepicker-allyears").hide();n(n(i).find(".e-datepicker-allyears")).show();r=parseFloat(n("td.e-allyear-first",i.get(0)).text().split("-")[1])+1;f=parseFloat(n("td.e-allyear-last",i.get(0)).prev().text().split("-")[1]);s=r+" - "+f;o.text(s);this._checkArrows(r,f);e=parseInt(u.getFullYear())-(parseInt(u.getFullYear())%10+1);this._hoverAllYear=this._setFocusByName("allyear",e+1+" - "+(e+10));break;case"year":i.removeClass("e-dp-viewyears e-dp-viewallyears e-dp-viewdays").addClass("e-dp-viewmonths");n("tbody,tr.e-week-header",i).hide();n(n(i).find(".e-datepicker-months")).show();r=this.model.enableStrictMode&&this._calendarDate<this._dateValue?this._calendarDate.getFullYear():u.getFullYear();o.text(r);this._checkArrows(r,r);this._hoverMonth=u.getMonth();this._addFocus("month",this._hoverMonth);break;case"month":i.removeClass("e-dp-viewyears e-dp-viewallyears e-dp-viewmonths").addClass("e-dp-viewdays ")}},_depthLevel:function(t){var i=this.sfCalendar;switch(t){case"year":n(i.find(".e-current-year,.e-current-allyear")).on("click",n.proxy(this._backwardNavHandler,this));this._on(n(".e-current-month",this.sfCalendar),"click",n.proxy(this._onDepthSelectHandler,this));break;case"decade":n(i.find(".e-current-allyear")).on("click",n.proxy(this._backwardNavHandler,this));n(".e-current-year",this.sfCalendar).on("click",n.proxy(this._onDepthSelectHandler,this));break;case"century":n(i.find(".e-current-allyear")).on("click",n.proxy(this._onDepthSelectHandler,this));break;case"month":this._on(i.find(".current-month,.other-month,.e-current-month,.e-current-year,.e-current-allyear"),"click",n.proxy(this._backwardNavHandler,this));this._on(i.find(".current-month , .other-month"),"click",n.proxy(this._onSetCancelDateHandler,this))}},_onDepthSelectHandler:function(t){if(this.model.readOnly||!this.model.enabled)return!1;n(t.target).hasClass("e-current-month")?this._dateValue=new Date(this._dateValue.setMonth(parseInt(t.target.attributes["data-index"].value))):n(t.target).hasClass("e-current-year")?this._dateValue=new Date(this._dateValue.setFullYear(parseInt(t.target.innerHTML))):n(t.target).hasClass("e-current-allyear")&&(this._dateValue=new Date(this._dateValue.setFullYear(parseInt(t.target.innerHTML))));this._onSetCancelDateHandler(t)},_datepickerMonths:function(t,i,r){for(var e,o,u,s,h=function(n){return document.createElement(n)},f=0,c=0;c<3;c++){for(e=n(h("tr")),o=0;o<4;o++)u=n(h("td")).addClass("e-current-month e-state-default").attr({"data-index":f}).attr(this._isIE8?{unselectable:"on"}:{}).html(this.Date.abbrMonthNames[f++]),r.getFullYear()<this.model.minDate.getFullYear()||r.getFullYear()>this.model.maxDate.getFullYear()?(u.addClass("e-hidedate"),u.removeClass("e-current-month")):(r.getFullYear()<=this.model.minDate.getFullYear()&&f<this.model.minDate.getMonth()+1||r.getFullYear()>=this.model.maxDate.getFullYear()&&f>this.model.maxDate.getMonth()+1)&&(u.addClass("e-hidedate"),u.removeClass("e-current-month")),e.append(u);t.append(e)}i.append(t);s=r.getFullYear();this._checkArrows(s,s)},_datepickerYears:function(t,i,r){for(var o,s,h,u,c=function(n){return document.createElement(n)},l=parseInt(r)-(parseInt(r)%10+1),f=[],e=0;e<12;e++)f.push(l+e);for(o=0,s=0;s<3;s++){for(h=n(c("tr")),e=0;e<4;e++)u=n(c("td")),u.attr(this._isIE8?{unselectable:"on"}:{}),o==0?u.addClass("e-year-first e-current-year "):o==11?u.addClass("e-year-last e-current-year "):u.addClass("e-current-year e-state-default"),(f[o]<this.model.minDate.getFullYear()||f[o]>this.model.maxDate.getFullYear())&&(u.addClass("e-hidedate"),u.removeClass("e-current-year")),u.html(f[o++]),h.append(u);t.append(h)}i.append(t);this._checkArrows(f[0],f[f.length])},_datepickerAllYears:function(t,i,r){for(var f,h,c,u,e=parseInt(r)-(parseInt(r)%100+10),a=e,s=[],l=this._isIE8||this._isIE9?"":"\n",o=0;o<12;o++)s.push(parseInt(e)+" -"+l+parseInt(e+9)),e=e+10;for(f=0,h=0;h<3;h++){for(c=n(document.createElement("tr")),o=0;o<4;o++)u=n(document.createElement("td")),u.attr(this._isIE8?{unselectable:"on"}:{}),f==0?u.addClass("e-allyear-first e-current-allyear "):f==11?u.addClass("e-allyear-last e-current-allyear "):u.addClass("e-current-allyear e-state-default"),(parseInt(s[f].split("-\n")[1])<this.model.minDate.getFullYear()||parseInt(s[f].split("-\n")[0])>this.model.maxDate.getFullYear())&&(u.addClass("e-hidedate"),u.removeClass("e-current-allyear")),u.html(s[f++]),c.append(u);t.append(c)}i.append(t)},_renderHeader:function(i){var a=n(document.createElement("thead")),h=t.preferredCulture(this.model.locale).calendars.standard.days,f,e,c,s,u,r,o,l;if(i.model.dayHeaderFormat!="none")for(f=t.buildTag("tr.e-week-header").attr({role:"row"}).attr(this._isIE8?{unselectable:"on"}:{}),this.model.weekNumber==!0&&(e=t.preferredCulture(this.model.locale).calendars.standard.week,r=e.name,o=i.model.dayHeaderFormat=="short"?e.nameAbbr:i.model.dayHeaderFormat=="long"?week:e.nameShort,c=t.buildTag("th","",{},{scope:"col",abbr:r,"data-date":r,title:this._formatter(r,"dddd")}).attr(this._isIE8?{unselectable:"on"}:{}).html(o),f.append(c)),s=this.Date.firstDayOfWeek;s<this.Date.firstDayOfWeek+7;s++)u=s%7,r=h.names[u],o=i.model.dayHeaderFormat=="short"?h.namesAbbr[u]:i.model.dayHeaderFormat=="long"?r:h.namesShort[u],l=t.buildTag("th","",{},{scope:"col",abbr:r,"data-date":r,title:this._formatter(r,"dddd"),"class":u==0||u==6?"e-week-end":"e-week-day"}).attr(this._isIE8?{unselectable:"on"}:{}).html(o),f.append(l);return a.append(f)},_renderCalendar:function(r,u){var d=this,h,s,e,nt,tt,it,c,v,b,k;r=n.extend({},t.DatePicker.prototype.defaults,r);this.Date.firstDayOfWeek=this.model.startDay;h=u?u:this._calendarDate?this._calendarDate:d._zeroTime(new Date);s=n("table",this.sfCalendar);s.empty();s.append(this._renderHeader(r));e=t.buildTag("tbody.e-datepicker-allyears","",{display:"none"}).attr(this._isIE8?{unselectable:"on"}:{});this._datepickerAllYears(e,s,h.getFullYear());e=t.buildTag("tbody.e-datepicker-years","",{display:"none"}).attr(this._isIE8?{unselectable:"on"}:{});this._datepickerYears(e,s,h.getFullYear());var g=r.model.month==i?h.getMonth():r.model.month,ut=r.model.year||h.getFullYear(),f=new Date(ut,g,1,0,0,0),a=this.Date.firstDayOfWeek-f.getDay()+1;a>1&&(a-=7);nt=Math.ceil((-1*a+1+this._getDaysInMonth(f))/7);this._addDays(f,a-1);tt=d._zeroTime(new Date);it=this._calendarDate;e=t.buildTag("tbody.e-datepicker-months","",{display:"none"}).attr(this._isIE8?{unselectable:"on"}:{});this._datepickerMonths(e,s,h);e=t.buildTag("tbody.e-datepicker-days","",{display:"none"}).attr(this._isIE8?{unselectable:"on"}:{});for(var ft=0,rt=!0,w=!0;ft++<nt;){for(c=jQuery(document.createElement("tr")).attr({role:"row"}),this.model.weekNumber==!0&&(v=this._weekDate(f),v=n(document.createElement("td")).attr({}).addClass("e-weeknumber").html(v),c.append(v)),b=0;b<7;b++){var y=f.getMonth()==g,p=this._isSpecialDates(f),et=this._checkDisableRange(f),l=this._getIndex,o=n(document.createElement("td")).html(p?"<span><\/span>"+f.getDate():f.getDate()+"").attr({"data-date":f.toDateString(),title:this.model.showTooltip?p&&this.model.specialDates[l][this._mapField._tooltip]?this.model.specialDates[l][this._mapField._tooltip]:this._formatter(f,this.model.tooltipFormat):"","aria-selected":!1,role:"gridcell",id:this._formatter(f,"yyyyddMM")}).attr(this._isIE8?{unselectable:"on"}:{}).addClass((y?"current-month e-state-default ":"other-month e-state-default ")+(this._isWeekend(f)?this._ejHLWeekEnd?"e-dp-weekend e-week-end ":this.model.highlightWeekend?"e-week-end ":"":"e-week-day ")+(y&&f.getTime()==tt.getTime()?"today ":""));o.find("span:first-of-type").addClass(p?this.model.specialDates[l][this._mapField._icon]?"e-special-date-icon "+this.model.specialDates[l][this._mapField._icon]+" ":"e-special-day":"");o.addClass(p?this.model.specialDates[l][this._mapField._custom]?this.model.specialDates[l][this._mapField._custom]:"":"");et&&this._disableDates({date:f,element:o});it.getTime()==f.getTime()&&y&&(o.hasClass("e-hidedate")||(this.model.value?(o.addClass("e-active").attr({"aria-selected":!0}),this.model.highlightSection=="week"&&c.addClass("e-selected-week"),this.model.highlightSection=="month"&&e.addClass("e-selected-month"),this.model.highlightSection=="workdays"&&c.addClass("e-work-week")):this.model.value!=null&&o.addClass("e-state-hover").attr({"aria-selected":!1})),this._hoverDate||(o.hasClass("e-hidedate")||o.addClass("e-state-hover"),this._hoverDate=f.getDate()-1));k=!0;(f<this.model.minDate||f>this.model.maxDate)&&(o.addClass("e-hidedate"),o.removeClass("current-month"),this.model.showOtherMonths&&o.removeClass("other-month"),k=w=!1);y&&(k&&rt&&(this._tempMinDate=f,rt=!1,w=!0),w&&(this._tempMaxDate=f));this._trigger("beforeDateCreate",{date:f,value:this._formatter(f,this.model.dateFormat),element:o});c.append(o);f=new Date(f.getFullYear(),f.getMonth(),f.getDate()+1,0,0,0)}e.append(c)}s.append(e);this._DRPdisableFade?(n(e).css("display","block"),n(e).css({display:"table-row-group","vertical-align":"middle","border-color":"inherit"})):this._isIE8||this._isIE7?n(e).css("display","table-row-group"):n(e).fadeIn("fast");this.model.startLevel===this.model.depthLevel?this._depthLevel(this.model.depthLevel):this.model.depthLevel!="month"&&this.model.depthLevel!=""?this.model.startLevel=="century"?this._depthLevel(this.model.depthLevel):this.model.startLevel=="decade"&&this.model.depthLevel!="century"?this._depthLevel(this.model.depthLevel):this.model.startLevel=="year"&&this.model.depthLevel!="decade"&&this.model.depthLevel!="century"?this._depthLevel(this.model.depthLevel):(this._on(s.find(".current-month,.other-month,.e-current-month,.e-current-year,.e-current-allyear"),"click",n.proxy(this._backwardNavHandler,this)),this._on(s.find(".current-month , .other-month"),"click",n.proxy(this._onSetCancelDateHandler,this))):(this._on(s.find(".current-month,.other-month,.e-current-month,.e-current-year,.e-current-allyear"),"click",n.proxy(this._backwardNavHandler,this)),this._on(s.find(".current-month , .other-month"),"click",n.proxy(this._onSetCancelDateHandler,this)));this._otherMonthsVisibility();this._checkDateArrows()},_checkDisableRange:function(n){return!t.isNullOrUndefined(this._disableCollection[n.getFullYear()])&&jQuery.inArray(n.getMonth(),this._disableCollection[n.getFullYear()])!==-1?!0:!1},_initDisableObj:function(){var i,r,n,u;for(this._disableCollection={},i=0;i<this.model.blackoutDates.length;i++)r=this._checkInstanceType(this.model.blackoutDates[i]),r&&(n=r.getFullYear(),u=r.getMonth(),t.isNullOrUndefined(this._disableCollection[n])&&(this._disableCollection[n]=[]),jQuery.inArray(u,this._disableCollection[n])==-1&&this._disableCollection[n].push(u))},_disableDates:function(n){for(var i,t=0;t<this.model.blackoutDates.length;t++)i=this._checkInstanceType(this.model.blackoutDates[t]),i&&+n.date==+i&&n.element.addClass("e-hidedate")},_keyboardNavigation:function(n){var t;if(this._keyboardInteraction=!0,this._animating)return!1;if(this._isOpen&&(n.keyCode==37||n.keyCode==38||n.keyCode==39||n.keyCode==40||n.keyCode==13||n.keyCode==36||n.keyCode==35)){if(n.preventDefault&&n.preventDefault(),n.altKey)return n.keyCode==13?(this._setCurrDate(n),!1):void 0;t={row:null,col:null};t.col=this.sfCalendar.find("tbody tr td.e-state-hover").index();t.row=this.sfCalendar.find("tbody tr td.e-state-hover").parent().index();t.col=t.col!=-1?t.col+1:this.sfCalendar.find("tbody tr td.e-active").index()+1;t.row=t.row!=-1?t.row+1:this.sfCalendar.find("tbody tr td.e-active").parent().index()+1;var f=this.sfCalendar.find("table")[0].className,i,r=3,u=4;switch(f){case"e-dp-viewallyears":i=this._changeRowCol(t,n.keyCode,r,u,"yearall",n.ctrlKey);n.ctrlKey||(this._hoverAllYear=this.sfCalendar.find("tbody.e-datepicker-allyears tr td").index(i));break;case"e-dp-viewyears":i=this._changeRowCol(t,n.keyCode,r,u,"year",n.ctrlKey);n.ctrlKey||(this._hoverYear=this.sfCalendar.find("tbody.e-datepicker-years tr td").index(i));break;case"e-dp-viewmonths":i=this._changeRowCol(t,n.keyCode,r,u,"month",n.ctrlKey);n.ctrlKey||(this._hoverMonth=this.sfCalendar.find("tbody.e-datepicker-months tr td").index(i));break;case"e-dp-viewdays":r=this.sfCalendar.find("tbody.e-datepicker-days tr").length;u=7;i=this._changeRowCol(t,n.keyCode,r,u,"day",n.ctrlKey);n.ctrlKey||(this._hoverDate=this._getDateObj(i).getDate()-1)}n.ctrlKey||(this.sfCalendar.find("table td").removeClass("e-state-hover"),i.addClass("e-state-hover"),this._setAriaAttributes(i))}else if(this.model.displayInline||n.keyCode!=27&&n.keyCode!=9){if(n.altKey&&n.keyCode==40)return this.show(),!1}else this.hide()},_setAriaAttributes:function(t){this._popupOpen&&(this.sfCalendar.find("[aria-selected=true]").attr("aria-selected",!1),this.sfCalendar.find("[aria-label]").removeAttr("aria-label"),n(this.element).attr("aria-activedescendant",t.attr("id")),n(t).attr("aria-selected",!0),n(t).attr("aria-label","The current focused date is "+this._formatter(this._getDateObj(t),"dddd, dd MMMM, yyyy")))},_changeRowCol:function(t,i,r,u,f,e){var h,s={parent:null,child:null},o,v,l,c,a;switch(f){case"day":h="tbody.e-datepicker-days tr td.current-month";s.parent=".e-datepicker-days";s.child=".current-month";break;case"month":h="tbody.e-datepicker-months tr td.e-current-month";s.parent=".e-datepicker-months";s.child=".e-current-month";break;case"year":h="tbody.e-datepicker-years tr td.e-current-year";s.parent=".e-datepicker-years";s.child=".e-current-year";break;case"yearall":h="tbody.e-datepicker-allyears tr td.e-current-allyear";s.parent=".e-datepicker-allyears";s.child=".e-current-allyear"}if(t.row<=0&&t.col<=0)return this._removeCurrentMonthFromHideDate(),this.sfCalendar.find(h+":first");v=this;switch(i){case 36:return this.sfCalendar.find(h+":first");case 35:return this.sfCalendar.find(h+":last");case 38:if(e&&this.model.allowDrillDown)this._forwardNavHandler();else if(t.row>1)t.row-=1;else return this._processNextPrevDate(!0),this.sfCalendar.find(h+":nth-child("+t.col+"):last");if(o=this._getCell(t,s),o.length<=1){if(o=this._findVisible(t,s,"up"),o!==null)return o;this._processNextPrevDate(!0);o=this.sfCalendar.find(h+":nth-child("+t.col+"):last")}return o;case 37:if(e)return this._processNextPrevDate(!0),this.sfCalendar.find("tbody tr td.e-state-hover");if(t.col>1)t.col-=1;else if(t.row>1)t={row:t.row-1,col:u};else return this._processNextPrevDate(!0),this.sfCalendar.find(h+":last");if(o=this._getCell(t,s),o.length<=1){if(o=this._findVisible(t,s,"left"),o!==null)return o;this._processNextPrevDate(!0);o=this.sfCalendar.find(h+":last")}return o;case 39:if(e)return this._processNextPrevDate(!1),this.sfCalendar.find("tbody tr td.e-state-hover");if(t.col<u)t.col+=1;else if(t.row<r)t={row:t.row+1,col:1};else return this._processNextPrevDate(!1),this.sfCalendar.find(h+":first");if(o=this._getCell(t,s),o.length<=1){if(o=this._findVisible(t,s,"right"),o!==null)return o;this._processNextPrevDate(!1);o=this.sfCalendar.find(h+":first")}return o;case 40:if(!e){if(t.row<r)t.row+=1;else return this._processNextPrevDate(!1),this.sfCalendar.find(h+":nth-child("+t.col+"):first");if(o=this._getCell(t,s),o.length<=1){if(o=this._findVisible(t,s,"down"),o!==null)return o;this._processNextPrevDate(!1);o=this.sfCalendar.find(h+":nth-child("+t.col+"):first")}return o}case 13:l=n("table",this.sfCalendar).get(0).className;c=this._getCell(t,s);a=n(c)[0];l=="e-dp-viewmonths"&&this.model.startLevel=="year"&&this.model.depthLevel=="year"?(this._dateValue=new Date(this._dateValue.setMonth(parseInt(a.attributes["data-index"].value))),this._onSetCancelDateHandler({type:null,target:c})):l=="e-dp-viewyears"&&this.model.startLevel=="decade"&&this.model.depthLevel=="decade"||l=="e-dp-viewallyears"&&this.model.startLevel=="century"&&this.model.depthLevel=="century"?(this._dateValue=new Date(this._dateValue.setFullYear(parseInt(a.innerHTML))),this._onSetCancelDateHandler({type:null,target:c})):l=="e-dp-viewdays"?(this._backwardNavHandler(c),this._onSetCancelDateHandler({type:null,target:c})):this._backwardNavHandler(c)}return this._getCell(t,s)},_findVisible:function(n,t,i){for(var f,u=n.col,r=n.row,o=t.child.slice(1,t.child.length),e=0;e>=0;e++){if(f=this.sfCalendar.find("tbody"+t.parent+" tr:nth-child("+r+") td:nth-child("+u+")"),f.length<=0)return null;if(f.hasClass("e-hidedate")||!f.is(":visible")){if((i=="right"||i=="left"?i=="right"?u++:u--:i=="down"?r++:r--,r<=0||r>this.sfCalendar.find("tbody"+t.parent+" tr").length)||(u>this.sfCalendar.find("tbody"+t.parent+" tr:nth-child("+r+") td").length&&(r++,u=1),u<=0&&(r--,u=this.sfCalendar.find("tbody"+t.parent+" tr:nth-child("+r+") td").length),r<=0||r>this.sfCalendar.find("tbody"+t.parent+" tr").length))return null}else{if(f.hasClass("other-month"))return null;if(f.hasClass(o))return n.col=u,n.row=r,f}}},_getCell:function(n,t){return this.sfCalendar.find("tbody"+t.parent+" tr:nth-child("+n.row+") td"+t.child+":nth-child("+n.col+")")},_getDateObj:function(n){return new Date(n.attr("data-date"))},_touchCalendar:function(n){var t=this.sfCalendar.find("table")[0].className;switch(n.type){case"pinchin":t!="e-dp-viewdays"&&this._keyboardNavigation({keyCode:13});break;case"pinchout":t!="e-dp-viewallyears"&&this.model.allowDrillDown&&this._forwardNavHandler();break;case"swipeleft":this._processNextPrevDate(!1);break;case"swiperight":this._processNextPrevDate(!0)}},show:function(i){var r,u;if(t.isNullOrUndefined(this.sfCalendar)&&this._renderPopup(),this._isOpen)return!1;if(r=this,this._popupOpen=!0,n(this.element).attr("aria-expanded",!0),u=this._preValue!=null?new Date(this._preValue.toString()):this._preValue,this.model.enabled){if(this.model.displayInline||this._setDatePickerPosition(),this._trigger("beforeOpen",{element:this.sfCalendar,events:i}))return!1;this.sfCalendar.attr({"aria-hidden":"false"});r._isOpen=!0;this.sfCalendar.slideDown(this.model.enableAnimation?this.animation.open.duration:0,function(){if(r.model&&!r.model.displayInline)n(document).on("mousedown",n.proxy(r._onDocumentClick,r))});this._isIE8?this.element.val()&&this._compareDate(new Date(this.element.val()),u)&&this._updateInputVal():this._updateInputVal();this._refreshLevel(u);this._trigger("open",{prevDate:u,date:this.model.value,value:this._formatter(this.model.value,this.model.dateFormat)});n(window).on("resize",n.proxy(this._OnWindowResize,this));this.model.displayInline||(this._on(t.getScrollableParents(this.wrapper),"scroll",this.hide),this._on(t.getScrollableParents(this.wrapper),"touchmove",this.hide));this._isInputBox&&this.wrapper.addClass("e-active");this.model.value!=null?n(this.element).attr("aria-activedescendant",n(this.sfCalendar.find(".e-active")).attr("id")):n(this.element).attr("aria-activedescendant",n(this.sfCalendar.find(".today")).attr("id"))}},hide:function(r){if(!this._isOpen||this._getInternalEvents||this._trigger("beforeClose",{element:this.sfCalendar,events:r}))return!1;var u=this;(this._popupOpen=!1,n(this.element).attr("aria-expanded",!1),this.sfCalendar.attr({"aria-hidden":"true"}),this._popClose&&r!=i&&r.type!="click")||(this.sfCalendar.slideUp(this.model.enableAnimation?this.animation.close.duration:0,function(){u._isOpen=!1;n(document).off("mousedown",n.proxy(u._onDocumentClick,u));u._setWaterMark()}),this.element.val()!=""&&this._validateInputVal(),this._trigger("close",{prevDate:this._prevDate,date:this.model.value,value:this._formatter(this.model.value,this.model.dateFormat)}),n(window).off("resize",n.proxy(this._OnWindowResize,this)),this._off(t.getScrollableParents(this.wrapper),"scroll",this.hide),this._off(t.getScrollableParents(this.wrapper),"touchmove",this.hide),this._isInputBox&&this.wrapper.removeClass("e-active"),this.model.value?n(this.element).attr("aria-activedescendant",n(this.sfCalendar.find(".e-active")).attr("id")):n(this.element).removeAttr("aria-activedescendant"))},enable:function(){this.model.enabled=!0;this.wrapper&&this.wrapper.removeClass("e-disable");this.element.removeClass("e-disable").attr({"aria-disabled":!1});this.element.prop("disabled",!1);this.dateIcon&&this.dateIcon.removeClass("e-disable").attr({"aria-disabled":!1});this._isIE8&&this.dateIcon&&this.dateIcon.children().removeClass("e-disable");this.element.prop("disabled",!1);this._isSupport||this._hiddenInput.prop("disabled",!1);this.sfCalendar&&this.sfCalendar.removeClass("e-disable").attr({"aria-disabled":!1})},disable:function(){this.model.enabled=!1;this.wrapper&&this.wrapper.addClass("e-disable");this.element.addClass("e-disable").attr({"aria-disabled":!0});this.element.attr("disabled","disabled");this.dateIcon&&this.dateIcon.addClass("e-disable").attr({"aria-disabled":!0});this._isIE8&&this.dateIcon&&this.dateIcon.children().addClass("e-disable");this.element.attr("disabled","disabled");this._isSupport||this._hiddenInput.attr("disabled","disabled");this.sfCalendar&&this.sfCalendar.addClass("e-disable").attr({"aria-disabled":!0});this._isOpen&&(this.element.is(":input")&&this.element.blur(),this.model.displayInline||this.hide())},getValue:function(){return this._formatter(this.model.value,this.model.dateFormat)},_wireCalendarEvents:function(){if(this._allowQuickPick(this.model.allowDrillDown),this._on(n(".e-next",this.sfCalendar),"click",n.proxy(this._previousNextHandler,this)),this._on(n(".e-prev",this.sfCalendar),"click",n.proxy(this._previousNextHandler,this)),!this.model.displayInline){this.sfCalendar.on("mouseenter touchstart",n.proxy(function(){this._popClose=!0},this));this.sfCalendar.on("mouseleave touchend",n.proxy(function(){this._popClose=!1},this))}this.model.showFooter&&this._on(n(".e-footer",this.sfCalendar),"click",this._setCurrDate);this.sfCalendar&&this._on(this.sfCalendar,"pinchin pinchout swipeleft swiperight",n.proxy(this._touchCalendar,this))},_wireEvents:function(){if(this.element.is(":input")&&this.model.allowEdit&&(this._on(this.element,"blur",this._onFocusOut),this._on(this.element,"focus",this._onFocusIn),this._on(this.element,"keydown",this._onKeyDown)),!this.model.allowEdit){this.element.attr("readonly","readonly");this.element.on("mousedown",n.proxy(this._showDatePopUp,this))}},_bindDateButton:function(){this._on(this.dateIcon,"mousedown",this._showDatePopUp);this.model.allowEdit&&this.element.off("mousedown",n.proxy(this._showDatePopUp,this))},_bindInputEvent:function(){this._off(this.dateIcon,"mousedown",this._showDatePopUp)},_specificFormat:function(){var i=t.globalize._getDateParseRegExp(t.globalize.findCulture(this.model.locale).calendar,this.model.dateFormat);return n.inArray("dddd",i.groups)>-1||n.inArray("ddd",i.groups)>-1},_onFocusOut:function(i){var f,r,u,e;if(this._isFocused=!1,f=this._preValue!=null?new Date(this._preValue.toString()):this._preValue,this.model.enableStrictMode&&this.element.val()&&!isNaN(+new Date(this.element.val())))for(this._formatArray=this.model.dateFormat.split(this._getSeparator()),this._valArray=this.element.val().split(this._getSeparator()),r=0;r<this._formatArray.length;r++)this._formatArray[r].startsWith("y")&&this._valArray.length>1&&(this._formatArray[r].length==4&&this._valArray[r].length==2||this._formatArray[r].length==2&&this._valArray[r].length==2)&&(this._valArray[r]=(parseInt(this._valArray[r])+2e3).toString(),this.element.val(this._valArray.join(this._getSeparator())));this._validateOnFocusOut(this._validateValue(),i);this.wrapper.removeClass("e-focus");t.isNullOrUndefined(this.model.value)?this.wrapper.removeClass("e-valid"):this.wrapper.addClass("e-valid");this._isOpen&&!this.model.displayInline||this._setWaterMark()||this._compareDate(this._preValue,this._parseDate(this.element.val(),this.model.dateFormat))||this._updateInputVal();(!this._isOpen||this.model.displayInline)&&this._refreshLevel(f);this.element.val()!=""&&(!this._isOpen||this.model.displayInline)&&this._validateInputVal();this.element.off("keydown",n.proxy(this._keyboardNavigation,this));this.model.showPopupButton||this._off(this.element,"click",this._elementClick);u=this.element.val();e={prevDate:this._prevDate,value:u};this._specificFormat()?this._prevDate!=u&&this._setDateValue(u,!0):this._setDateValue(u);this.model.value||this._clearSelected();this._trigger("focusOut",e);this._checkErrorClass()},_onFocusIn:function(t){if(this._isSupport&&(t.preventDefault(),this._isFocused=!0),this.wrapper.removeClass("e-error"),this.isValidState=!0,this.wrapper.addClass("e-focus"),this.wrapper.addClass("e-valid"),!this.model.readOnly){this._isSupport||this._hiddenInput.css("display","none");this.element.on("keydown",n.proxy(this._keyboardNavigation,this));this.model.showPopupButton||this.model.readOnly||this.show(t);this.model.showPopupButton||this._on(this.element,"click",this._elementClick);this._trigger("focusIn",{date:this.model.value,value:this._formatter(this.model.value,this.model.dateFormat)})}},_elementClick:function(n){this._popupOpen||this.show(n)},_removeWatermark:function(){this.element.val()==""||this._isSupport||this._hiddenInput.css("display","none")},_refreshPopup:function(){this._refreshDatepicker();this._startLevel(this.model.startLevel)},_weekDate:function(n){var i,t=new Date(n.getTime());return t.setDate(t.getDate()+4-(t.getDay()||7)),i=t.getTime(),t.setMonth(0),t.setDate(1),Math.floor(Math.round((i-t)/864e5)/7)+1},_refreshLevel:function(n){if(this.model.startLevel==this.model.depthLevel&&this.model.startLevel!="month"){var t=this._stringToObject(this.element.val());t=this._validateYearValue(t);t&&(this._compareDate(n,t)||this._refreshPopup())}},_validateOnFocusOut:function(n,i){var f=this._preValue!=null?this._calendarDate:this._preValue,e=this._formatter(f,this.model.dateFormat),o,s,h,r,u;this._prevDate=this._formatter(this._preValue,this.model.dateFormat);o=e;s={prevDate:this._prevDate,value:o,isInteraction:!!i};this._specificFormat()&&n>this.model.minDate&&n<this.model.maxDate?n==null?this.model.value=f:(this.model.value=n,h=this._formatter(n,this.model.dateFormat,this.model.locale)):h=this._formatter(this._parseDate(this._formatter(new Date,"MM/dd/yyyy")),this.model.dateFormat);r=!1;u=!1;n==null||this.model.enableStrictMode?n!=null||this.model.enableStrictMode?n?(n<this.model.minDate||n>this.model.maxDate?(this.isValidState=!1,u=!0,this._calendarDate=n<this.model.minDate?this.model.minDate:this.model.maxDate):this.isValidState=!0,this._triggerChangeEvent(i),u&&this._getInternalEvents&&this._trigger("outOfRange")):(this.isValidState=!1,this._calendarDate<this.model.minDate?this._calendarDate=this.model.minDate:this._calendarDate>this.model.maxDate&&(this._calendarDate=this.model.maxDate)):(this._preTxtValue==null||this.element.val()==""?(this.element.val(""),this._isSupport||this._hiddenInput.css("display","block")):this.element.val(e),this._triggerChangeEvent(i),this.model.value!=null&&this._trigger("change",s)):(t.isNullOrUndefined(this.model.value)&&(this.model.value=this._parseDate(this.element.val())),this.model.maxDate<this.model.minDate&&(this.model.minDate=this.model.maxDate),this.model.enableStrictMode||(n?(n<this.model.minDate||n>this.model.maxDate)&&(r=!0,this._calendarDate=n=n<this.model.minDate?this.model.minDate:this.model.maxDate):(this.element.val(""),this._calendarDate<this.model.minDate?this._calendarDate=this.model.minDate:this._calendarDate>this.model.maxDate&&(this._calendarDate=this.model.maxDate)),this.isValidState=!0),r&&this.element.val(this._formatter(n,this.model.dateFormat)),this._compareDate(this._preValue,this._parseDate(this.element.val(),!0))||this._triggerChangeEvent(i))},_onKeyDown:function(n){if(n.keyCode===13){var t=this._preValue!=null?new Date(this._preValue.toString()):this._preValue;this._validateOnFocusOut(this._validateValue(),n);this._isOpen&&!this.model.displayInline||this._setWaterMark()||this._compareDate(this._preValue,this._parseDate(this.element.val(),this.model.dateFormat))||this._updateInputVal();(!this._isOpen||this.model.displayInline)&&this._refreshLevel(t);this.element.val()!=""&&(!this._isOpen||this.model.displayInline)&&this._validateInputVal();this._checkErrorClass()}},_showhidePopup:function(n){if(!this.model.enabled)return!1;this._isOpen?(this._isFocused||!this.element.is(":input")||t.isTouchDevice()||this.element.focus(),this._cancelValue||this.hide(n)):(this._isFocused||!this.element.is(":input")||t.isTouchDevice()||this.element.focus(),this.show(n))},_compareDate:function(n,t){return+n==+t?!0:!1},_validateDate:function(n){var i=!0,t,r;if(n!=null){for(t=0;t<this.model.blackoutDates.length;t++)r=this._checkInstanceType(this.model.blackoutDates[t]),r&&+n==+r&&(i=!1);(n<this.model.minDate||n>this.model.maxDate)&&this.model.enableStrictMode&&(i=!1,this.isValidState=!1)}return i},_triggerChangeEvent:function(n){var r,u=this.element.val()==""?null:this.element.val(),t;this._prevDate=this._formatter(this._preValue,this.model.dateFormat);t={prevDate:this._prevDate,value:u,isInteraction:!!n};r=this._specificFormat()&&n!=i&&n.type=="keydown"&&this._formatter(this._preValue,this.model.dateFormat,this.model.locale)!=this.element.val()?this._parseDate(this.element.val(),!0):this._specificFormat()&&n!=i&&n.type=="blur"?this.model.value:this._parseDate(u);r=this._validateYearValue(r);this._validateDate(r)||(r=null);this._compareDate(this._preValue,r)?this.element.val()==""&&this._prevDate==null||this.element.val()==this._prevDate||(t.value=this.element.val(),this._trigger("_change",t)):(this._preValue=this.model.value=r,t.value=this._formatter(this.model.value,this.model.dateFormat),this.model.value&&(this._clickedDate=this._calendarDate=this.model.value),this.model.displayInline&&!this._isInputBox&&this._hiddenInput.attr("value",u),this.model.value||this.model.enableStrictMode||this._setDateValue(this.model.value),t.value=u,this._trigger("_change",t),t.value=this._formatter(this.model.value,this.model.dateFormat),this._trigger("change",t),this._checkErrorClass())},_triggerSelectEvent:function(){var i=this.element.val(),t;this._parseDate(i)&&(t={prevDate:this._prevDate,date:this.model.value,value:i,isSpecialDay:this._isSpecialDates(this.model.value)},this._prevDate!=i&&this._parseDate(t.value)&&this.model.value>=this.model.minDate&&this.model.value<=this.model.maxDate&&(this._cancelValue=this._trigger("select",t)),this._dt_drilldown&&this._trigger("dt_drilldown",t));this.model.value&&n(this.element).attr("aria-activedescendant",n(this.sfCalendar.find(".e-active")).attr("id"))},_onDocumentClick:function(t){this.model&&(n(t.target).is(this.popup)||n(t.target).parents(".e-popup").is(this.popup)||n(t.target).is(this.wrapper)||n(t.target).parents(".e-datewidget").is(this.wrapper)?(n(t.target).is(this.popup)||n(t.target).parents(".e-popup").is(this.popup))&&t.preventDefault():this.hide(t))},_OnWindowResize:function(){this.sfCalendar&&this._setDatePickerPosition()},_showDatePopUp:function(n){var t=!1;if((n.button?t=n.button==2:n.which&&(t=n.which==3),!t)&&(this._isSupport||this.model.showPopupButton||(n.preventDefault(),this._onFocusIn()),!this.model.readOnly)){if(n.preventDefault(),!this.model.enabled&&this.model.displayInline)return!1;this._showhidePopup(n)}},_layoutChanged:function(){this._getInternalEvents&&this._trigger("layoutChange")},_setCurrDate:function(n){if(this.model.readOnly||!this.model.enabled)return!1;n&&n.preventDefault();var t=this;this._prevDate=this._formatter(this.model.value,this.model.dateFormat);this._dateValue=this._zeroTime(new Date);this.model.value=this._calendarDate=new Date(this._dateValue.toString());this._setDateValue(this.model.value);this._triggerSelectEvent(n);this._triggerChangeEvent(n);this._refreshDatepicker();this._changeDayClass();this._startLevel(this.model.startLevel);this._onSetCancelDateHandler(n);this._layoutChanged()},_changeDayClass:function(){var n=this.popup.children("table")[0].className;n!="e-dp-viewdays"&&this.popup.children("table").removeClass(n).addClass("e-dp-viewdays")},_onSetCancelDateHandler:function(t){if(this.model.readOnly||!this.model.enabled||t&&(n(t.target).hasClass("e-disable")||n(t.target).hasClass("e-hidedate")))return!1;t&&t.type&&t.preventDefault();this._specificFormat()?this._prevDate=this.element.val():this.model.value=this._parseDate(this.element.val());this._prevDate=this._formatter(this.model.value,this.model.dateFormat);this._setDateValue(this._dateValue);this._triggerSelectEvent(t);this._triggerChangeEvent(t);this._dateValue=this.model.value==null?null:new Date(this.model.value.toString());this.element.is(":input")&&!this.model.displayInline&&this._showhidePopup(t);t&&n(t.currentTarget).hasClass("other-month")&&this._refreshDatepicker();this._cellSelection()},_closeCalendar:function(n){n&&n!=this.element||this.sfCalendar.empty().remove()},_checkErrorClass:function(){this.wrapper&&(this.isValidState?this.wrapper.removeClass("e-error"):this.wrapper.addClass("e-error"))},_getLocalizedLabels:function(){return t.getLocalizedConstants(this.sfType,this.model.locale)}});t.DatePicker.Locale=t.DatePicker.Locale||{};t.DatePicker.Locale["default"]=t.DatePicker.Locale["en-US"]={watermarkText:"Select date",buttonText:"Today"};t.DatePicker.Header={None:"none",Short:"short",Min:"min",Long:"long"};t.DatePicker.HighlightSection={Month:"month",Week:"week",WorkDays:"workdays",None:"none"};t.DatePicker.Level={Month:"month",Year:"year",Decade:"decade",Century:"century"}}(jQuery,Syncfusion),function(n,t,i){t.widget("ejTimePicker","ej.TimePicker",{element:null,model:null,validTags:["input"],_addToPersist:["value"],_rootCSS:"e-timepicker",_setFirst:!1,type:"editor",angular:{require:["?ngModel","^?form","^?ngModelOptions"],requireFormatters:!0},_requiresID:!0,defaults:{cssClass:"",timeFormat:"",value:null,enableAnimation:!0,locale:"en-US",htmlAttributes:{},readOnly:!1,showPopupButton:!0,enableStrictMode:!1,interval:30,hourInterval:1,minutesInterval:1,secondsInterval:1,height:"",width:"",minTime:"12:00 AM",maxTime:"11:59 PM",showRoundedCorner:!1,enableRTL:!1,popupHeight:"191px",popupWidth:"auto",enabled:!0,enablePersistence:!1,disableTimeRanges:null,validationRules:null,validationMessages:null,focusIn:null,focusOut:null,beforeChange:null,change:null,select:null,create:null,destroy:null,beforeOpen:null,beforeClose:null,open:null,close:null,watermarkText:"select a time"},dataTypes:{timeFormat:"string",minTime:"string",maxTime:"string",readOnly:"boolean",interval:"number",showPopupButton:"boolean",locale:"string",hourInterval:"number",minutesInterval:"number",secondsInterval:"number",enabled:"boolean",enablePersistence:"boolean",enableAnimation:"boolean",enableStrictMode:"boolean",disableTimeRanges:"data",htmlAttributes:"data",validationRules:"data",validationMessages:"data",watermarkText:"string"},observables:["value"],enable:function(){this.model.enabled||(this.element[0].disabled=!1,this.element.prop("disabled",!1),this.model.enabled=!0,this.wrapper.removeClass("e-disable"),this.element.removeClass("e-disable").attr("aria-disabled",!1),this.model.showPopupButton&&(this.timeIcon.removeClass("e-disable").attr("aria-disabled",!1),this.popupList&&this.popupList.removeClass("e-disable").attr("aria-disabled",!1)),this._isIE8&&this.timeIcon.children().removeClass("e-disable"))},disable:function(){this.model.enabled&&(this.element[0].disabled=!0,this.model.enabled=!1,this.element.attr("disabled","disabled"),this.wrapper.addClass("e-disable"),this.element.addClass("e-disable").attr("aria-disabled",!0),this.model.showPopupButton&&(this.timeIcon.addClass("e-disable").attr("aria-disabled",!0),this.popupList&&this.popupList.addClass("e-disable").attr("aria-disabled",!0)),this._isIE8&&this.timeIcon.children().addClass("e-disable"),this._hideResult())},getValue:function(){return this.element.val()},setCurrentTime:function(){this.model.readOnly||this._setMask()},setValue:function(n){var i=this.model.value,r;this.model.value=t.format(this._createObject(n,!0),this.model.timeFormat,this.model.locale);this._ensureValue();this._enableMask();this.model.enableStrictMode&&!this._isValid(n,!0)&&(r=this._isValid(this.model.value)?this._localizeTime(this.model.value):this.model.value,this.element.val(r));i!=this.model.value&&this._raiseChangeEvent(i,!0);this._checkErrorClass()},show:function(){this.showDropdown||this._getInternalEvents||this._showResult()},hide:function(){this.showDropdown&&this._hideResult()},_ISORegex:function(){this._tokens=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;this._extISORegex=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/;this._basicISORegex=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/;this._numberRegex={2:/\d\d?/,4:/^\d{4}/,z:/Z|[+-]\d\d(?::?\d\d)?/gi,t:/T/,"-":/\-/,":":/:/};this._zeroRegex=/Z|[+-]\d\d(?::?\d\d)?/;this._dates=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]];this._times=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]]},_timeFormat:function(n){var r,i;return n||(n=t.preferredCulture(this.model.locale).calendars.standard.patterns.t),r=this._validateTimeFormat(n),r&&(this.model.timeFormat=r,this.model.minTime=t.format(this._createObject(this._minTimeObj),this.model.timeFormat,this.model.locale),this.model.maxTime=t.format(this._createObject(this._maxTimeObj),this.model.timeFormat,this.model.locale),this.model.value?(this._setModelOption=!0,this.model.value=this._localizeTime(this.model.value),this.element.val(this.model.value)):(this._setModelOption=!1,i=this._localizeTime(this.element.val()),i&&this._checkMinMax(i)&&(this.model.value=i,this.element.val(i)))),r},_getTimeFormat:function(){this._prevTimeFormat&&(this.model.timeFormat=t.preferredCulture(this.model.locale).calendar.patterns.t||"h:mm tt");this.seperator=this._getSeperator()},_changeSkin:function(n){this.wrapper.removeClass(this.model.cssClass).addClass(n);this.popupList&&this.popupList.removeClass(this.model.cssClass).addClass(n)},_localize:function(n){var i=this._createObject(this.model.value,!0);this.model.locale=n;this._getTimeFormat();this.model.minTime=t.format(this._createObject(this._minTimeObj),this.model.timeFormat,this.model.locale);this.model.maxTime=t.format(this._createObject(this._maxTimeObj),this.model.timeFormat,this.model.locale);t.isNullOrUndefined(this._options)||t.isNullOrUndefined(this._options.watermarkText)||(this._localizedLabels.watermarkText=this._options.watermarkText);i?(this.model.value=this._localizeTime(i),this.element.val(this.model.value)):(i=this._localizeTime(this.element.val()),i&&this._checkMinMax(i)&&(this.model.value=i,this.element.val(i)));this._getAmPm()},_setWaterMark:function(){if(this.element!=null&&this.element.hasClass("e-input"))return this._localizedLabels.watermarkText&&this.element.val()==""&&(this.isValidState=!0,this._checkErrorClass()),this._isSupport||this.element.val()!=""?n(this.element).attr("placeholder",this._localizedLabels.watermarkText):this._hiddenInput.css("display","block").val(this._localizedLabels.watermarkText),!0},_localizedLabelToModel:function(){this.model.watermarkText=this._localizedLabels.watermarkText;this.model.buttonText=this._localizedLabels.buttonText},_setLocalize:function(n){var n=t.preferredCulture(n);n&&(this.model.locale=n.name=="en"?"en-US":n.name,t.isNullOrUndefined(this._options)||!t.isNullOrUndefined(this._options.timeFormat)&&this._options.timeFormat||(this.model.timeFormat=t.preferredCulture(this.model.locale).calendars.standard.patterns.t),this._prevTimeFormat=t.isNullOrUndefined(this._options.timeFormat)||this._options.timeFormat==""?!0:!1)},_updateInput:function(){if(!t.isNullOrUndefined(this._options)){var n=this._localizeTime(this._options.value);t.isNullOrUndefined(n)||typeof n=="string"&&this.model.enableStrictMode&&!this.model.value&&(this.element.val(this._options.value),this.isValidState=this.element.val()==""?!0:!1,this._checkErrorClass())}},_createMinMaxObj:function(){this._minTimeObj=this._createObject(this.model.minTime);this._minTimeObj||(this.model.minTime=t.format(this._createObject((new Date).setHours(0,0,0,0)),this.model.timeFormat,this.model.locale));this._maxTimeObj=this._createObject(this.model.maxTime);this._maxTimeObj||(this.model.maxTime=t.format(this._createObject((new Date).setHours(23,59,59,59)),this.model.timeFormat,this.model.locale))},_setMinMax:function(){var n=(new Date).setHours(0,0,0,0),i=(new Date).setHours(23,59,59,59);!t.isNullOrUndefined(this._options)&&t.isNullOrUndefined(this._options.minTime)&&(this.model.minTime=t.format(this._createObject(n),this.model.timeFormat,this.model.locale));!t.isNullOrUndefined(this._options)&&t.isNullOrUndefined(this._options.maxTime)&&(this.model.maxTime=t.format(this._createObject(i),this.model.timeFormat,this.model.locale));this._createMinMaxObj()},_init:function(n){if(this._options=n,this._cloneElement=this.element.clone(),this._ISORegex(),this._isSupport=document.createElement("input").placeholder==i?!1:!0,!this.element.is("input")||this.element.attr("type")&&this.element.attr("type")!="text")return!1;this._initialize();this._render();this._wireEvents();n&&n.value!=i&&n.value!=this.element.val()&&this._trigger("_change",{value:this.element.val()});this._updateInput();this._updateTextbox();this.model.validationRules!=null&&(this._initTimeValidator(),this._setTimeValidation())},_updateTextbox:function(){var t,n;if(this._options.disableTimeRanges){for(t=!0,n=0;n<this._options.disableTimeRanges.length;n++)if((this.model.minTime>=this._options.disableTimeRanges[n].startTime||this.model.minTime<=this._options.disableTimeRanges[n].endTime)&&this._options.disableTimeRanges[n].startTime==this.model.minTime){t=!1;break}(this._options===i||this._options.value===i&&!this.model.value&&t)&&this._setTime(this._localizeTime(this.model.minTime))}else this._options!==i&&(this._options.value!==i||this.model.value)||this._setTime(this._localizeTime(this.model.minTime))},_setMinMaxTime:function(i,r){!t.isNullOrUndefined(r.minTime)&&n.trim(r.minTime)&&this._isValid(r.minTime)&&(this.model.minTime=r.minTime,this._minTimeObj=this._createObject(this.model.minTime),this._validateTimes());!t.isNullOrUndefined(r.maxTime)&&n.trim(r.maxTime)&&this._isValid(r.maxTime)&&(this.model.maxTime=r.maxTime,this._maxTimeObj=this._createObject(this.model.maxTime),this._validateTimes());this._validateMinMax();this._createMinMaxObj();t.isNullOrUndefined(r.minTime)||(r.minTime=this.model.minTime);t.isNullOrUndefined(r.maxTime)||(r.maxTime=this.model.maxTime);this._checkMinMax(this.model.value)||(this.model.enableStrictMode?(this.isValidState=!1,this.model.value=null):(this.model.minTime&&!this._compareTime(this.model.value,this.model.minTime,!0)&&(this.model.value=this.model.minTime),this.model.maxTime&&!this._compareTime(this.model.maxTime,this.model.value,!0)&&(this.model.value=this.model.maxTime)));i!==this.model.value&&this._isValid(this.model.value,!0)&&this.element.val(this.model.value)},_setModel:function(n){var r=!1,o=this.model.value,i,e,u,f,s;for(i in n){i!="height"&&i!="width"&&i!="htmlAttributes"&&i!="watermarkText"&&i!="enabled"&&i!="validationRules"&&i!="validationMessages"&&t.isNullOrUndefined(this.popupList)&&this._renderDropdown();switch(i){case"timeFormat":u=this._createObject(this.model.value);this._preTimeformat=this.model.timeFormat;e=this._timeFormat(n[i]);n[i]=this.model.timeFormat;e&&(this.seperator=this._getSeperator());f=this._createObject(this.model.value);r=+u==+f?!1:!0;break;case"locale":u=this._createObject(this.model.value);this._localize(n[i]);this.model.minTime=t.format(this._createObject(this._minTimeObj),this.model.timeFormat,this.model.locale);this.model.maxTime=t.format(this._createObject(this._maxTimeObj),this.model.timeFormat,this.model.locale);f=this._createObject(this.model.value);r=+u==+f?!1:!0;break;case"interval":this.model.interval=n[i];break;case"cssClass":this._changeSkin(n[i]);break;case"showRoundedCorner":this._setRoundedCorner(n[i]);break;case"enableRTL":this._setRtl(n[i]);break;case"height":this._setHeight(n[i]);break;case"width":this.wrapper.width(n[i]);this._setListWidth();break;case"value":t.isPlainObject(n[i])&&(n[i]=null);this.model.value=t.format(this._createObject(n[i],!0),this.model.timeFormat,this.model.locale);this._ensureValue();this._enableMask();this.model.enableStrictMode&&!this._isValid(n[i],!0)&&(s=this._isValid(n[i])?this._localizeTime(n[i]):n[i],this.element.val(s));n[i]=this.model.value;r=!0;break;case"enableStrictMode":this.model.enableStrictMode=n[i];break;case"validationRules":this.model.validationRules!=null&&(this.element.rules("remove"),this.model.validationMessages=null);this.model.validationRules=n[i];this.model.validationRules!=null&&(this._initTimeValidator(),this._setTimeValidation());break;case"validationMessages":this.model.validationMessages=n[i];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initTimeValidator(),this._setTimeValidation());break;case"popupHeight":this.model.popupHeight=n[i];this._setListHeight();break;case"popupWidth":this.model.popupWidth=n[i];this._setListWidth();break;case"enabled":n[i]?this.enable():this.disable();break;case"htmlAttributes":this._addAttr(n[i]);break;case"disableTimeRanges":this.model.disableTimeRanges=n[i];this._initStartEnd();this.model.value=t.format(this._createObject(this.element.val(),!0),this.model.timeFormat,this.model.locale);this._ensureValue();this._enableMask();this.model.enableStrictMode&&!this._isValid(this.element.val(),!0)&&this.element.val(this.element.val());r=!0;break;case"watermarkText":t.isNullOrUndefined(this._options)&&(this._options={});this._options[i]=this.model.watermarkText=n[i];this._localizedLabels.watermarkText=this.model.watermarkText;this._setWaterMark()}}t.isNullOrUndefined(n.minTime)&&t.isNullOrUndefined(n.maxTime)||(this._setMinMaxTime(o,n),r=!0);t.isNullOrUndefined(n.showPopupButton)?!this.model.showPopupButton||!e&&t.isNullOrUndefined(n.minTime)&&t.isNullOrUndefined(n.maxTime)&&t.isNullOrUndefined(n.locale)&&t.isNullOrUndefined(n.interval)&&t.isNullOrUndefined(n.disableTimeRanges)||this._reRenderDropdown():this._showButton(n[i]);r&&(this._raiseChangeEvent(o,!0),n.value=this.model.value);this._checkErrorClass()},_destroy:function(){this.element.insertAfter(this.wrapper);this.wrapper.remove();this.element.removeClass("e-input").removeAttr("ondragstart draggable aria-atomic aria-live aria-readonly").val(this.element.attr("value"));this._cloneElement.attr("name")||this.element.removeAttr("name");this.popupList&&this.popupList.remove()},_initialize:function(){this.target=this.element[0];this.timeIcon=null;this._disabledItems=[];this.popupList=null;this.focused=!1;this.start=0;this.end=0;this.min=null;this.max=null;this.incomplete=!1;this.downPosition=0;this._setLocalize(this.model.locale);this._setMinMax();this._getAmPm();this.showDropdown=!1;this._activeItem=0;this.isValidState=!0;this._manualFocus=!1;this._isIE7=this._checkIE7();this._initStartEnd();this._localizedLabels=this._getLocalizedLabels();t.isNullOrUndefined(this._options)||t.isNullOrUndefined(this._options.watermarkText)||(this._localizedLabels.watermarkText=this._options.watermarkText);t.isNullOrUndefined(this.model.value)&&this.element[0].value!=""&&(this.model.value=this.element[0].value);this._isIE8=t.browserInfo().name=="msie"&&t.browserInfo().version=="8.0"?!0:!1;this._getInternalEvents=!1;this._dateTimeInternal=!1;this.model.timeFormat?this.seperator=this._getSeperator():this._getTimeFormat()},_render:function(){this._renderWrapper();this._setDimentions();this._renderTimeIcon();this._validateTimes();this._createMinMaxObj();this._addAttr(this.model.htmlAttributes);this._checkProperties();this._enableMask();this._checkErrorClass();this.element.attr({"aria-atomic":"true","aria-live":"assertive","aria-readonly":this.model.readOnly,value:this.model.value});t.isNullOrUndefined(this.model.value)?this.wrapper.addClass("e-valid"):this.wrapper.removeClass("e-valid")},_renderWrapper:function(){if(this.element.addClass("e-input").attr({tabindex:"0",role:"combobox","aria-expanded":"false"}),this.wrapper=t.buildTag("span.e-timewidget e-widget "+this.model.cssClass+"#"+this.target.id+"_timewidget").insertAfter(this.element),this.wrapper.attr("style",this.element.attr("style")),this.element.removeAttr("style"),t.isTouchDevice()||this.wrapper.addClass("e-ntouch"),this.container=t.buildTag("span.e-in-wrap e-box").append(this.element),this.wrapper.append(this.container),!this._isSupport){this._hiddenInput=t.buildTag("input.e-input e-placeholder ","",{},{type:"text"}).insertAfter(this.element);this._hiddenInput.val(this._localizedLabels.watermarkText);this._hiddenInput.css("display","block");var i=this;n(this._hiddenInput).focus(function(){i.element.focus()})}},_addAttr:function(i){var r=this;n.map(i,function(n,i){var u=i.toLowerCase();u=="class"?r.wrapper.addClass(n):u=="disabled"&&n=="disabled"?r.disable():u=="readOnly"&&n=="readOnly"?r.model.readOnly=!0:u=="style"?r.wrapper.attr(i,n):u=="id"?(r.wrapper.attr(i,n+"_wrapper"),r.element.attr(i,n)):t.isValidAttr(r.element[0],i)?r.element.attr(i,n):r.wrapper.attr(i,n)})},_initTimeValidator:function(){this.element.closest("form").data("validator")||this.element.closest("form").validate()},_setTimeValidation:function(){var r,f,i,u,e;this.element.rules("add",this.model.validationRules);r=this.element.closest("form").data("validator");r=r?r:this.element.closest("form").validate();f=this.element.attr("name");r.settings.messages[f]={};for(i in this.model.validationRules)if(u=null,!t.isNullOrUndefined(this.model.validationRules[i])){if(t.isNullOrUndefined(this.model.validationRules.messages&&this.model.validationRules.messages[i])){r.settings.messages[f][i]=n.validator.messages[i];for(e in this.model.validationMessages)i==e?u=this.model.validationMessages[i]:""}else u=this.model.validationRules.messages[i];r.settings.messages[f][i]=u!=null?u:n.validator.messages[i]}},_renderTimeIcon:function(){if(this.model.showPopupButton){this.timeIcon=t.buildTag("span.e-select").attr({role:"button","aria-label":"select"});var n=t.buildTag("span.e-icon e-clock").attr("role","presentation");this._isIE8&&(this.timeIcon.attr("unselectable","on"),n.attr("unselectable","on"));this.timeIcon.append(n);this.container.append(this.timeIcon).addClass("e-padding");this._on(this.timeIcon,"mousedown",this._timeIconClick)}},_elementClick:function(){this.showDropdown||this._showResult()},_renderDropdown:function(){var i=n("#"+this.element[0].id+"_popup").get(0),r;if(i&&n(i).remove(),this.popupList)return!1;this.popupList=t.buildTag("div.e-time-popup e-popup e-widget e-box "+this.model.cssClass+"#"+this.target.id+"_popup","",{},{tabindex:0,role:"listbox"});t.isTouchDevice()||this.popupList.addClass("e-ntouch");this.popup=this.popupList;this.ul=t.buildTag("ul.e-ul");this._isIE8&&this.ul.attr("unselectable","on");r=t.buildTag("div").append(this.ul);n("body").append(this.popupList.append(r));this._renderLiTags();this._setListHeight();this._setListWidth();this.popupList.ejScroller({height:this.popupList.height(),width:0,scrollerSize:20});this.scrollerObj=this.popupList.ejScroller("instance");this.popupList.css("display","none");this._listSize=this.ul.find("li").length},_renderLiTags:function(){var r,o,f,s,h,e,i,u;for(this._disabledItems=[],s=this.model.interval*6e4,h=!t.isNullOrUndefined(this.model.disableTimeRanges)&&this.model.disableTimeRanges.length>0?!0:!1,r=this._minTimeObj,o=this._maxTimeObj,e=0;this._compareTime(o,r,!0);)f=this._localizeTime(r),i=n(document.createElement("li")),i[0].appendChild(document.createTextNode(f)),this._isIE8&&i.attr("unselectable","on"),h&&(this._ensureTimeRange(f)?(i.addClass("e-disable"),this._disabledItems.push(e)):i.removeClass("e-disable")),this.ul[0].appendChild(i[0]),r=new Date(r).getTime()+s,e++;u=this.ul.find("li");t.isTouchDevice()||(this._on(u,"mouseenter",n.proxy(this._OnMouseEnter,this)),this._on(u,"mouseleave",n.proxy(this._OnMouseLeave,this)));this._on(u,"click",n.proxy(this._OnMouseClick,this));(this.model.showPopupButton||!t.isNullOrUndefined(this.popupList))&&this.ul.find("li").attr({tabindex:-1,"aria-selected":!1,role:"option"})},_ensureTimeRange:function(n){var r,i;if(!t.isNullOrUndefined(this.model.disableTimeRanges))for(r=this._makeDateTimeObj(n),i=0;i<this.model.disableTimeRanges.length;i++)if(+r>=+this._makeDateTimeObj(this.model.disableTimeRanges[i].startTime)&&+r<=+this._makeDateTimeObj(this.model.disableTimeRanges[i].endTime))return!0;return!1},_initStartEnd:function(){if(this._startTime=[],this._endTime=[],!t.isNullOrUndefined(this.model.disableTimeRanges))for(var n=0;n<this.model.disableTimeRanges.length;n++)this._startTime[n]=this._makeDateTimeObj(this.model.disableTimeRanges[n].startTime),this._endTime[n]=this._makeDateTimeObj(this.model.disableTimeRanges[n].endTime)},_makeDateTimeObj:function(n){var u;if(typeof n=="string"){var r=t.preferredCulture(this.model.locale).calendar.patterns.d,f=t.format(new Date("1/1/2000"),r,this.model.locale),i=t.parseDate(f+" "+n,r+" "+this.model.timeFormat,this.model.locale);if(!i)if(u=new Date(n),isNaN(Date.parse(u))||t.isNullOrUndefined(n))i=new Date("1/1/2000 "+n);else return this._setEmptyDate(n);return i}return n instanceof Date?this._setEmptyDate(n):null},_reRenderDropdown:function(){this.ul.empty();this._renderLiTags();this._refreshScroller();this._changeActiveEle()},_refreshScroller:function(){var t=this.popupList.css("display")=="none"?!0:!1;this.popupList.css("height","auto");this.popupList.find(".e-content, .e-vscroll").removeAttr("style");this.popupList.find(".e-vscroll div").removeAttr("style");t&&this.popupList.css("display","block");this.scrollerObj.model.height=this.popupList.height();this.scrollerObj.model.scrollTop=0;this.scrollerObj.refresh();this._isIE8&&(n("#"+this.scrollerObj._id).children(".e-vscroll").children().attr("unselectable","on"),n("#"+this.scrollerObj._id).find(".e-vhandle").attr("unselectable","on"));t&&this.popupList.css("display","none")},_removeWatermark:function(){this.element.val()==""||this._isSupport||this._hiddenInput.css("display","none")},_setListWidth:function(){if(this.popupList){var n=this.model.popupWidth,t;t=typeof n=="string"&&n.indexOf("%")!=-1||typeof n=="string"?parseInt(n)>0?n:"auto"&&(this.model.popupWidth="auto"):n>0?n:"auto"&&(this.model.popupWidth="auto");t&&t!="auto"?this.popupList.css({width:t}):this.popupList.css({width:this.wrapper.width()})}this.scrollerObj&&(this._refreshScroller(),this._updateScrollTop())},_setListHeight:function(){this.popupList&&this.popupList.css({"max-height":this.model.popupHeight||"191px"});this.scrollerObj&&(this._refreshScroller(),this._updateScrollTop())},_updateScrollTop:function(){this.scrollerObj.setModel({scrollTop:this._calcScrollTop()})},_refreshPopup:function(){this.model.popupWidth=="auto"&&this.popupList.css({width:this.wrapper.width()});this._setListPosition();this._refreshScroller()},_setListPosition:function(){var t=this.wrapper,i=this._getOffset(t),f,h=n(document).scrollTop()+n(window).height()-(i.top+n(t).outerHeight()),c=i.top-n(document).scrollTop(),u=this.popupList.outerHeight(),e=this.popupList.outerWidth(),r=i.left,o=t.outerHeight(),l=(o-t.height())/2,a=this._getZindexPartial(),s=3,v=(u<h||u>c?i.top+o+s:i.top-u-s)-l;f=n(document).scrollLeft()+n(window).width()-r;(this.model.enableRTL||e>f&&e<r+t.outerWidth())&&(r-=this.popupList.outerWidth()-t.outerWidth());this.popupList.css({left:r+"px",top:v+"px","z-index":a})},_getOffset:function(n){return t.util.getOffset(n)},_getZindexPartial:function(){return t.util.getZindexPartial(this.element,this.popupList)},_enableMask:function(){this.isValidState=this.model.minTime&&this._compareTime(this.model.minTime,this.model.value)||this.model.maxTime&&this._compareTime(this.model.value,this.model.maxTime)?!1:!0;this._setTime(this.model.value);t.isNullOrUndefined(this.model.value)?this.wrapper.removeClass("e-valid"):this.wrapper.addClass("e-valid");this._getInternalEvents&&!this.isValidState&&this._trigger("outOfRange");this._changeActiveEle();this._preVal=this.element.val()},_setTime:function(n){var t=this._localizeTime(n);this.element.val(t);this.model.value=this.model.enableStrictMode?this._compareTime(this.model.value,this.model.minTime,!0)&&this._compareTime(this.model.maxTime,this.model.value,!0)?t:null:t;this._setWaterMark()},_timeFromISO:function(n){var i=this._extISORegex.exec(n)||this._basicISORegex.exec(n),c="",l="",a="",v,e,o,f,r,t,s,u,h,y;if(i){for(e=0;e<this._dates.length;e++)if(this._dates[e][1].exec(i[1])){c=this._dates[e][0];break}if(i[3])for(o=0;o<this._times.length;o++)if(this._times[o][1].exec(i[3])){l=(i[2]||" ")+this._times[o][0];break}for(i[4]&&this._zeroRegex.exec(i[4])&&(a="Z"),v=c+l+a,f=v.match(this._tokens),t=[],u=0;u<f.length;u++)h=f[u],s=this._checkLiteral(f[u]),y=this._numberRegex[s?f[u].toLowerCase():h.length]||new RegExp("^\\d{1,"+h.length+"}"),r=n.match(y),r&&(n.substr(0,n.indexOf(r))>=0&&!s&&(f[u].indexOf("M")>=0?t.push(parseInt(r[0])-1):t.push(parseInt(r[0]))),n=n.slice(n.indexOf(r[0])+r[0].length));return i[4]=="Z"?new Date(Date.UTC.apply(null,t)):new Date(t[0],t[1],t[2],t[3],t[4],t[5])}return new Date(n+"")},_checkLiteral:function(n){var t=n.toLowerCase();return t=="t"||t=="z"||t==":"||t=="-"?!0:!1},_setMask:function(){this.model.value=new Date;this._enableMask()},_validateTimes:function(){var n=this._validateTimeFormat(this.model.timeFormat);this.model.timeFormat=n?n:"h:mm tt";this._isValid(this.model.minTime)||(this.model.minTime="12:00 AM");this._isValid(this.model.maxTime)||(this.model.maxTime="11:59 PM");this._isValid(this.model.value,!0)||(this.model.value=null);this._checkMinMax(this.model.value)||this.model.enableStrictMode||(this.model.minTime&&!this._compareTime(this.model.value,this.model.minTime,!0)&&(this.model.value=this.model.minTime),this.model.maxTime&&!this._compareTime(this.model.maxTime,this.model.value,!0)&&(this.model.value=this.model.maxTime));this._validateMinMax()},_ensureValue:function(){!this._checkMinMax(this.model.value)&&this._isValid(this.model.value,!0)&&(this.model.enableStrictMode?this.isValidState=!1:(this.model.minTime&&!this._compareTime(this.model.value,this.model.minTime,!0)&&(this.model.value=this.model.minTime),this.model.maxTime&&!this._compareTime(this.model.maxTime,this.model.value,!0)&&(this.model.value=this.model.maxTime)))},_validateMinMax:function(){this.model.minTime&&this.model.maxTime&&this._compareTime(this.model.minTime,this.model.maxTime)&&(this.model.minTime=this.model.maxTime)},_checkProperties:function(){this.model.enabled?this.model.enabled&&this.element.hasClass("e-disable")&&(this.model.enabled=!1,this.enable()):(this.model.enabled=!0,this.disable());this._addProperty();this._checkAttributes()},_addProperty:function(){this._setRtl(this.model.enableRTL);this._setRoundedCorner(this.model.showRoundedCorner)},_setRtl:function(n){n?(this.wrapper.addClass("e-rtl"),this.popupList&&this.popupList.addClass("e-rtl")):(this.wrapper.removeClass("e-rtl"),this.popupList&&this.popupList.removeClass("e-rtl"))},_setRoundedCorner:function(n){n?(this.container.addClass("e-corner"),this.popupList&&this.popupList.addClass("e-corner")):(this.container.removeClass("e-corner"),this.popupList&&this.popupList.removeClass("e-corner"))},_showButton:function(t){this.model.showPopupButton=t;t?(this.container.addClass("e-padding"),this._renderTimeIcon(),this._renderDropdown(),this._addProperty()):(this.container.removeClass("e-padding"),this.timeIcon.remove(),this.popupList.remove(),this.timeIcon=this.popupList=null,n(document).off("mousedown",n.proxy(this._OnDocumentClick,this)))},_checkAttributes:function(){this.element.attr("name")||this.element.attr({name:this.element[0].id});"ondragstart"in document.createElement("input")&&this.element.attr({ondragstart:"return false"});"draggable"in document.createElement("input")&&this.element.attr({draggable:"false"})},_getAmPm:function(){var t=new Date;t.setHours(0);this.ttAM=n.trim(this._localizeMeridian(t));t.setHours(23);this.ttPM=n.trim(this._localizeMeridian(t))},_setDimentions:function(){this.model.height||(this.model.height=this.element.attr("height"));this.model.width||(this.model.width=this.element.attr("width"));this._setHeight(this.model.height);this.model.width&&this.wrapper.width(this.model.width)},_setHeight:function(n){n&&this.wrapper.height(n);this._isIE7&&this.element.height(this.container.height())},_validateTimeFormat:function(t){var i=t.split(" "),r="";return i.length==1||i.length==2?(n(i).each(function(t,i){r+=n.trim(i)+" "}),n.trim(r)):null},_getSeperator:function(){for(var i=this._getElePlace(),t=this._formatparts[i.time],r=new RegExp("^[a-zA-Z0-9]+$"),n=0;n<t.length;n++)if(!r.test(t.charAt(n)))return t.charAt(n)},_checkInComplete:function(){var i=this._getCaretSelection(),r=this._getStartEnd(i),u="00",t=this._getSelectedValue(r),n=this._getCategory(r);i.end-i.start==this.element.val().length&&this._checkAll();n&&n!="tt"&&(this._findCategoryPosition(n),t=="__"?((n=="h"||n=="hh")&&(u="12"),this._changeToDefault(u)):n.length!=1&&t.length==1&&(t=this._changeWhole(t),this.element.val(this._replaceAt(this.target.value,this.start,this.end,t))))},_checkAll:function(){for(var r=this._getElePlace(),i=this._formatparts[r.time].split(this.seperator),t,n=0;n<i.length;n++)this._findCategoryPosition(i[n]),t=this._getSelectedValue({start:this.start,end:this.end}),i[n].length!=1&&t.length==1&&(t=this._changeWhole(t),this.element.val(this._replaceAt(this.element.val(),this.start,this.end,t)))},_changeToDefault:function(n){var i,t;this.incomplete=!0;i=this.element[0].value;this.element[0].value=this._replaceAt(this.target.value,this.start,this.end,n);t=this._checkExceedRange(this.target.value);!t||this._setTime(this.model[t]);this._setSelection(this.start,this.end);this._raiseChangeEvent(i)},_setSelection:function(n,t){var i=this.element[0];i.setSelectionRange?i.setSelectionRange(n,t):i.createTextRange&&(i=i.createTextRange(),i.collapse(!0),i.moveEnd("character",t),i.moveStart("character",n),i.select())},_getSelectedValue:function(n){return this.target.value.substring(n.start,n.end)},_getMinMax:function(n,t){n=="hh"||n=="h"?(this.min=1,this.max=11,t&&(this.max=12)):n=="HH"||n=="H"?(this.min=0,this.max=23):(n=="mm"||n=="m"||n=="ss"||n=="s")&&(this.min=0,this.max=59)},_focusElement:function(){this._manualFocus=!0;this.element.focus()},_targetFocus:function(t){this._clearRange();t.preventDefault();this.focused=!0;this.element.on("mousewheel DOMMouseScroll",n.proxy(this._mouseWheel,this));this.wrapper.addClass("e-focus").removeClass("e-error").attr("aria-invalid","false");this._getExactPostions();this._manualFocus||(this._findCategoryPosition(this._getLeast(!1)),this._setSelection(this.start,this.end));this._manualFocus=!1;this._prevTimeVal=this.element.val();this._raiseEvent("focusIn");this.wrapper.addClass("e-valid");this.model.showPopupButton||this._showResult();this.model.showPopupButton||this._on(this.element,"click",this._elementClick)},_targetBlur:function(){this.focused=!1;this.element.off("mousewheel DOMMouseScroll",n.proxy(this._mouseWheel,this));this.model.showPopupButton||this._off(this.element,"click",this._elementClick);this.wrapper.removeClass("e-focus");this.model.enableStrictMode||this.target.value.indexOf("_")>-1&&this.element.val("");!this._checkMinMax(this.target.value)&&this._isValid(this.target.value,!0)?this.model.enableStrictMode?this.isValidState=!1:(this.model.minTime&&!this._compareTime(this._createObject(this.target.value),this.model.minTime,!0)&&this.element.val(this.model.minTime),this.model.maxTime&&!this._compareTime(this.model.maxTime,this._createObject(this.target.value),!0)&&this.element.val(this.model.maxTime),this._isValid(this.model.value,!0)||this.element.val(null),this.isValidState=!0,t.isNullOrUndefined(this.model.value)?this.wrapper.removeClass("e-valid"):this.wrapper.addClass("e-valid")):this.isValidState=!0;this._ensureValue();this._raiseChangeEvent();this._checkErrorClass();this._raiseEvent("focusOut");this.model.enableStrictMode||this._checkInComplete();t.isNullOrUndefined(this.model.value)?this.wrapper.removeClass("e-valid"):this.wrapper.addClass("e-valid")},_clearRange:function(){var n=this.element[0];isNaN(n.selectionStart)||(n.selectionStart=0,n.selectionEnd=0)},_checkErrorClass:function(){this.isValidState?this.wrapper.removeClass("e-error").attr("aria-invalid","false"):this.wrapper.addClass("e-error").attr("aria-invalid","true")},_getExactPostions:function(){var t=this.model.timeFormat,r=this.model.timeFormat.split(" "),n;this._formatparts=[];this._valueparts=[];this._amPMPosition=t.match("([t][t]+)")?t.match("([t][t]+)").index:null;this._amPMPosition==i?(this._formatparts=this.model.timeFormat.split(" "),this._valueparts=this.element.val().split(" "),this._noTT=!0):(this._amPMPosition==this.model.timeFormat.length-2?(this._ttAtEnd=!0,this._isSpace=this.model.timeFormat[this.model.timeFormat.split("").indexOf("t")-1]==" "):(this._ttAtEnd=!1,this._isSpace=this.model.timeFormat[this.model.timeFormat.split("").indexOf("t")+2]==" "),this._ttAtEnd==!0?(this._ttStartPostion=this.model.timeFormat.match("([t]?[t]+)").index,this._ttEndPosition=this.model.timeFormat.length,this._formatStartPosition=0,n=0,this.element&&this.element.val()&&(n=this.element.val().length-this.model.timeFormat.length),this._updatedttStartPosition=this._ttStartPostion+n,this._formatEndPostion=this.model.timeFormat.match("([t][t]+)").index,this._formatparts[0]=this.model.timeFormat.substr(this._formatStartPosition,this._formatEndPostion).trim(),this._formatparts[1]=this.model.timeFormat.substr(this._ttStartPostion,this._ttEndPosition).trim(),this._valueparts[0]=this.element.val().substr(this._formatStartPosition,this._formatEndPostion+n).trim(),this._valueparts[1]=this.element.val().substr(this._ttStartPostion+n,this._ttEndPosition).trim()):(this._ttStartPostion=0,this._ttEndPosition=this.model.timeFormat.match("([t]?[t]+)")?this._ttStartPostion+this.model.timeFormat.match("([t]?[t]+)")[0].length:0,this._formatStartPosition=this._isSpace?this._ttEndPosition+1:this._ttEndPosition,this._formatEndPostion=this.model.timeFormat.length,this._formatparts[1]=this.model.timeFormat.substr(this._formatStartPosition,this._formatEndPostion).trim(),this._formatparts[0]=this.model.timeFormat.substr(this._ttStartPostion,this._ttEndPosition).trim(),this._valueparts[1]=this.element.val().substr(this._formatStartPosition,this._formatEndPostion).trim(),this._valueparts[0]=this.element.val().substr(this._ttStartPostion,this._ttEndPosition).trim()))},_getCaretSelection:function(){var n=this.element[0],u=0,f=0,e,t,i,r,o;return isNaN(n.selectionStart)?(e=document.selection.createRange().getBookmark(),t=n.createTextRange(),t.moveToBookmark(e),i=n.createTextRange(),i.collapse(!0),i.setEndPoint("EndToStart",t),r=i.text.length,o=t.text.length,{start:r,end:r+o}):(u=n.selectionStart,f=n.selectionEnd,{start:Math.abs(u),end:Math.abs(f)})},_mouseDownOnInput:function(){this.focused||t.isTouchDevice()||this._focusElement();this._getExactPostions();this.downPosition=this._getCaretSelection();n(document).on("mouseup",n.proxy(this._mouseUpOnInput,this))},_mouseUpOnInput:function(t){t.preventDefault();n(document).off("mouseup",n.proxy(this._mouseUpOnInput,this));var i=this._getCaretSelection();this.incomplete&&(this.incomplete=!1,i=this.downPosition);this.target.value!=this._getSelectedText()&&(i=this._getStartEnd(i),this._setSelection(i.start,i.end))},_getCategoryPosition:function(n){var t=0,i=0,u=this._getTimeParts(),r=this._getElePlace(),h=this.seperator,e=!1,o=this._getFormatParts()[r.time].split(h),c=u[r.time].split(h),s,f;if(o.length>c.length)return{start:t,end:i,isValid:e};if(n=="tt")(u[r.tt]==this.ttAM||u[r.tt]==this.ttPM)&&(t=r.tt==0?0:u[r.time].length+1,i=t+u[r.tt].length,!this._isSpace&&this._ttAtEnd&&(t=t-1,i=i-1),e=!0);else if(t=r.time==0?0:u[r.tt].length+1,s=o.indexOf(n),s!=-1){for(f=0;f<o.length;f++)if(i=c[f].length+1,f==s)break;else t+=i;i+=t-1;this._noTT||this._isSpace||this._ttAtEnd||(t=t-1,i=i-1);e=!0}return{start:t,end:i,isValid:e}},_getCategory:function(n){var t=this._getFormatParts(),r=this.seperator,i=this._getElePlace();return n.isTT?t[i.tt]:t[i.time].split(r)[n.index]},_getTimeParts:function(){var n;return this.model.timeFormat=="h:mm tt"||this.model.timeFormat=="h:m tt"||this.model.timeFormat=="hh:m tt"||this.model.timeFormat=="hh:mm:s tt"?this.element.val().split(" "):this._valueparts},_getFormatParts:function(){var n;return this.model.timeFormat=="h:mm tt"||this.model.timeFormat=="h:m tt"||this.model.timeFormat=="hh:m tt"||this.model.timeFormat=="hh:mm:s tt"?this.model.timeFormat.split(" "):this._formatparts},_getStartEnd:function(n){this._getExactPostions();for(var e,h=this.seperator,a=this.element.val(),r=this._valueparts,t=0,u=0,o=e=null,f,i=0;i<r.length;i++)if(r[i]!=this.ttAM&&r[i]!=this.ttPM){var s=r[i].split(h),c=t,l=t+s[0].length;for(f=0;f<s.length;f++){if(u=s[f].length+t,!this._isSpace&&this._ttAtEnd&&n.start>=this._updatedttStartPosition&&n.end<=this._ttEndPosition&&this._formatparts[0].split(this._getSeperator())[1].length==this._valueparts[0].split(this._getSeperator())[1].length){t+=s[f].length+1;continue}if(n.start<=u){o=f;e=!1;i=r.length;break}else t+=s[f].length+1}}else{if(!this._isSpace&&!this._ttAtEnd?n.start<t+r[i].length:n.start<=t+r[i].length){u=r[i].length+t;o=0;e=!0;i=r.length;!this._isSpace&&this._ttAtEnd&&(t=t-1,u=u-1);break}else t+=r[i].length+1;this._isSpace||this._ttAtEnd||(t=t-1)}return o==null&&(t=c,u=l,o=0,e=!1),{start:t,end:u,index:o,isTT:e}},_modifyValue:function(n){var i,t,r,u;this._isValid(this.target.value)&&(this.model.enableStrictMode||this._checkInComplete(),i=this._getCaretSelection(),i.start==i.end?(r=this._getLeast(!0),u=this._getCategoryPosition(r),t=this._getStartEnd(u)):t=this._getStartEnd(i),this.start=t.start,this.end=t.end,this._changeValue(t,n))},_keyUpOnInput:function(n){var r,u;n.preventDefault();this._preVal!=this.element.val()&&(this._preVal=this.element.val());var e=this,t=this._getCaretSelection(),f=this._getStartEnd(t),i=this._getCategory(f);e=this;r=this._getSelectedValue(f);u=this.element.val();u.split(":");u[0]<3&&(this._poschange=isNaN(u[0]+u[1])==!0&&u[0]<10?!0:!1);i=="h"&&t.start==2&&t.end==2&&r>9&&r<13||i=="H"&&r>9&&r<24||i=="H"&&r<9&&t.start==2&&t.end==2||i=="mm"&&this._poschange==!0&&t.start==4&&t.end==4||i=="ss"&&t.start==8&&t.end==8||i=="ss"&&this._poschange==!0&&t.start==7&&t.end==7||i=="mm"&&t.start==5&&t.end==5?i=="mm"&&(this.model.timeFormat=="HH:mm"||this.model.timeFormat=="hh:mm"||this.model.timeFormat=="H:mm"||this.model.timeFormat=="h:mm")||i=="ss"&&(this.model.timeFormat=="HH:mm:ss"||this.model.timeFormat=="hh:mm:ss"||this.model.timeFormat=="H:mm:ss"||this.model.timeFormat=="h:mm:ss")||this._movePosition(t,null):(i=="hh"||i=="HH")&&t.start&&t.end==2&&r<24&&this._movePosition(t,null)},_getNextCategory:function(t,i){var r=[],e=this.seperator,o=this._getFormatParts(),u,f;return(n(o).each(function(n,t){if(t=="tt")r.push(t);else{var i=t.split(e);r=i.concat(r)}}),u=r.indexOf(t),u!=-1)?(f=i?u==0?r.length-1:u-1:u==r.length-1?0:u+1,r[f]):t},_getElePlace:function(){this._getExactPostions();var i=this._getFormatParts(),n,t;return i[0]=="tt"?(n=1,t=0):(n=0,t=1),{time:n,tt:t}},_movePosition:function(n,t){var i=this._getStartEnd(n),r=this._getCategory(i),u;r||(r=this._getLeast(t));u=this._getNextCategory(r,t);i=this._getCategoryPosition(u);i.isValid&&this._setSelection(i.start,i.end)},_findActiveIndex:function(){var t=this.ul.find("li"),i=this.element.val(),r=t.first().html(),n;n=(this._parse(i)-this._parse(r))/(this.model.interval*6e4);n=Math.round(n);this._activeItem=n==t.length?n:n+1;(this._activeItem<0||this._activeItem>t.length||isNaN(this._activeItem))&&(this._activeItem=0)},_keyDownOnInput:function(n){var t,u,i,y,f,d,c,g,l,o,p,w,nt,a,s,tt,v,b,e,k,h,r;if(this.model.readOnly&&!this._readOnlyKeys(n)||(i=n.keyCode,this._getInternalEvents&&i!=38&&i!=40&&i!=36&&i!=35&&i!=9))return!1;if(!this.model.enableStrictMode){if(this.showDropdown&&i!=38&&i!=40&&i!=27&&!this._readOnlyKeys(n))return!1;this.showDropdown&&(i==37||i==39)&&(n.keyCode=i==37?38:40)}t=this._getCaretSelection();r=this._getStartEnd(t);u=this._getCategory(r);switch(n.keyCode){case 38:n.preventDefault();this.showDropdown?this.showDropdown&&(n.preventDefault(),this._findActiveIndex(),f=this._activeItem,this._activeItem=this._disableItemSelectUp(this._activeItem-1),this._activeItem==0&&(this._activeItem=f),this._addListHover(),y=this._getActiveItem(),y.length&&this._selectTimeItem(y)):this._isValid(this.target.value)&&this._modifyValue(!0);break;case 40:n.preventDefault();n.altKey&&this.model.showPopupButton?this._showhidePopup():this.showDropdown?this.showDropdown&&(n.preventDefault(),this._findActiveIndex(),f=this._activeItem,this._activeItem=this._disableItemSelectDown(this._activeItem),this._activeItem<this._listSize?this._activeItem+=1:this._activeItem=f,this._addListHover(),this._selectTimeItem(this._getActiveItem())):this._isValid(this.target.value)&&this._modifyValue(!1);break;case 37:n.preventDefault();t.start==t.end?this._setSelection(t.start-1,t.start-1):this._movePosition(t,!0);break;case 39:n.preventDefault();t.start==t.end?this._setSelection(t.start+1,t.start+1):this._movePosition(t,!1);break;case 36:n.preventDefault();this.showDropdown?(this._activeItem=0,f=this._activeItem,this._activeItem=this._disableItemSelectDown(this._activeItem),this._activeItem<this._listSize?this._activeItem+=1:this._activeItem=f,this._addListHover(),this._selectTimeItem(this._getActiveItem())):(d=this._firstlastVal(!0),c=this._getCategoryPosition(d),c.isValid&&this._setSelection(c.start,c.end));break;case 35:n.preventDefault();this.showDropdown?(this._activeItem=this._listSize+1,f=this._activeItem,this._activeItem=this._disableItemSelectUp(this._activeItem-1),this._activeItem==0&&(this._activeItem=f),this._addListHover(),this._selectTimeItem(this._getActiveItem())):(g=this._firstlastVal(!1),l=this._getCategoryPosition(g),l.isValid&&this._setSelection(l.start,l.end));break;case 9:if(this._getInternalEvents)break;this._hideResult();o=null;n.shiftKey&&t.start>0?o=!0:!n.shiftKey&&t.end<this.element.val().length&&(o=!1);o!=null&&(n.preventDefault(),this._checkInComplete(),this._movePosition(t,o));break;case 13:if(!this.showDropdown){this._raiseChangeEvent();break}case 27:n.preventDefault();this._hideResult();break;case 8:case 46:if(this.model.enableStrictMode)return;this.target.value!=this._getSelectedText()&&(n.preventDefault(),u&&u!="tt"&&(this._findCategoryPosition(u),p=i==8&&t.start!=this.start,w=i==46&&t.end!=this.end,nt=this.end-this.start,(t.start!=t.end||nt==1)&&(p||w||t.start!=t.end)?(a=this.start,s=this.end,this.element[0].value=this._replaceAt(this.target.value,a,s,"__"),tt=s-a!=2?s+1:s,this._setSelection(a,tt)):p?(this.element[0].value=this._replaceAt(this.target.value,t.start-1,t.start,""),this._setSelection(t.start-1,t.start-1)):w&&(this.element[0].value=this._replaceAt(this.target.value,t.end,t.end+1,""),this._setSelection(t.end,t.end))))}v=this._getSelectedValue(r);b=n.keyCode?n.keyCode:n.charCode;n.keyCode>47&&n.keyCode<58?e=String.fromCharCode(b):n.keyCode>95&&n.keyCode<106&&(e=String.fromCharCode(b-48));u=="tt"&&(!n.shiftKey&&!n.ctrlKey&&!n.altKey&&n.keyCode>64&&n.keyCode<91||n.keyCode>47&&n.keyCode<58||n.keyCode>95&&n.keyCode<106)&&(n.preventDefault(),k=this._getCategoryPosition(u),this.start=k.start,this.end=k.end,this._changeAmPm(v),this._raiseChangeEvent());this.target.value!=this._getSelectedText()||n.shiftKey||n.ctrlKey||n.altKey||(n.keyCode>64&&n.keyCode<91&&!this.model.enableStrictMode&&n.preventDefault(),(n.keyCode>47&&n.keyCode<58||n.keyCode>95&&n.keyCode<106)&&(r=this._getStartEnd(t),this._setSelection(r.start,r.end)));!n.shiftKey&&!n.ctrlKey&&!n.altKey&&n.keyCode>47&&n.keyCode<58||n.keyCode>95&&n.keyCode<106?u!="tt"&&(this._getMinMax(u,!0),t.start==t.end?(this._findCategoryPosition(u),t.start==this.start?(h=e+v,this.model.enableStrictMode==!1&&(this._validateTimes(),this._targetBlur()),this.model.value==null&&this.element.val(this.model.minTime),r=this._getStartEnd(t),this._setSelection(r.start,r.end)):h=v+e,(h.length>2||!(Number(h)>=this.min&&this.max>=Number(h)))&&(this.model.enableStrictMode||n.preventDefault())):Number(e)>=this.min&&this.max>=Number(e)||this.model.enableStrictMode||n.preventDefault()):this._allowKeyCodes(n)||(this.model.enableStrictMode?n.stopPropagation():n.keyCode==8||n.keyCode==46?n.stopPropagation():n.preventDefault())},_getSelectedText:function(){if(window.getSelection){var t=n("#"+this.element[0].id).get(0);return t.value.substring(t.selectionStart,t.selectionEnd)}return document.selection.createRange().text},_allowKeyCodes:function(n){return n.ctrlKey&&(n.keyCode==65||n.keyCode==67||n.keyCode==90||n.keyCode==89)||n.keyCode==9||n.keyCode==116||n.keyCode==13?!0:!1},_readOnlyKeys:function(n){return n.keyCode==35||n.keyCode==36||n.keyCode==37||n.keyCode==39||this._allowKeyCodes(n)?!0:!1},_firstlastVal:function(n){var t=this._getFormatParts(),r=this.seperator,i;return n?t[0]!="tt"?t[0].split(r)[0]:"tt":t[0]!="tt"?"tt":t[1]?(i=t[1].split(r),i.length?i[i.length-1]:"tt"):"tt"},_mouseWheel:function(n){if(n.preventDefault(),this.model.readOnly)return!1;var t,i=n.originalEvent;i.wheelDelta?t=i.wheelDelta/120:i.detail&&(t=-i.detail/3);t>0?this._modifyValue(!0):t<0&&this._modifyValue(!1)},_addListHover:function(){this._addSelected();this._updateScrollTop()},_addSelected:function(){this.ul.find("li").removeClass("e-active e-hover");var n=this._getActiveItem();n.length&&!n.hasClass("e-disable")&&n.addClass("e-active")},_disableItemSelectDown:function(t){return(t==null||t<0)&&(t=0),t<this._listSize?n.inArray(t,this._disabledItems)<0?t:this._disableItemSelectDown(t+1):this._listSize},_disableItemSelectUp:function(t){if(t=t-1,(t==null||t<0)&&(t=0),t<this._listSize){if(n.inArray(t,this._disabledItems)<0)return t+1;if(t>0)return this._disableItemSelectUp(t)}return 0},_getActiveItem:function(){return n(this.ul.find("li")[this._activeItem-1])},_timeIconClick:function(n){var i,r;if(t.isNullOrUndefined(this.popupList)&&(this._renderDropdown(),this._addProperty()),i=!1,n.button?i=n.button==2:n.which&&(i=n.which==3),!i){if(n.preventDefault(),!this.model.enabled||this.model.readOnly||this.ul.find("li").length<1)return!1;this._showhidePopup();r=this.element.val().length;t.isTouchDevice()||this._setSelection(r,r)}},_showhidePopup:function(){if(this._getInternalEvents)return!1;this.showDropdown?this._hideResult():this._showResult()},_showResult:function(){if(this.popupList==null&&this._renderDropdown(),this._raiseEvent("beforeOpen"))return!1;this.focused||t.isTouchDevice()||this._focusElement();this.model.value?this._changeActiveEle():this.ul.find("li").removeClass("e-active");var i=this,r=this._visibleAndCalculateTop();this.popupList.slideDown(this.model.enableAnimation?200:0,function(){n(document).on("mousedown",n.proxy(i._OnDocumentClick,i))});this.scrollerObj.setModel({scrollTop:r});this.showDropdown=!0;this._listSize=this.ul.find("li").length;n(window).on("resize",n.proxy(this._OnWindowResize,this));this._on(t.getScrollableParents(this.wrapper),"scroll",this._hideResult);this._on(t.getScrollableParents(this.wrapper),"touchmove",this._hideResult);this._raiseEvent("open");this.wrapper.addClass("e-active")},_hideResult:function(i){if(this._raiseEvent("beforeClose"))return!1;i&&(i.type=="touchmove"||i.type=="scroll")&&n(i.target).parents("#"+this.popupList[0].id).length>0||this.showDropdown&&!this._getInternalEvents&&(this.showDropdown=!1,this.popupList.slideUp(this.model.enableAnimation?100:0),n(document).off("mousedown",n.proxy(this._OnDocumentClick,this)),n(window).off("resize",n.proxy(this._OnWindowResize,this)),this._off(t.getScrollableParents(this.wrapper),"scroll",this._hideResult),this._off(t.getScrollableParents(this.wrapper),"touchmove",this._hideResult),this._raiseEvent("close"),this.wrapper.removeClass("e-active"))},_visibleAndCalculateTop:function(){this.popupList.css({display:"block"});var n=this._calcScrollTop();return this._refreshPopup(),this.popupList.css({display:"none"}),n},_calcScrollTop:function(){var i=this.ul.outerHeight(),n=this.ul.find("li").outerHeight(),t;return t=this.ul.find("li.e-active").index(),n*t-(this.popupList.outerHeight()-n)/2},_changeActiveEle:function(){if(!this.popupList)return!1;var t=this.ul.find("li"),i=this.element.val(),r=t.first().html(),n;n=(this._parse(i)-this._parse(r))/(this.model.interval*6e4);n=Math.round(n);this._activeItem=n==t.length?n:n+1;(this._activeItem<0||this._activeItem>t.length||isNaN(this._activeItem)||this._ensureTimeRange(i))&&(this._activeItem=0);this._addListHover()},_OnDocumentClick:function(t){n(t.target).is(this.popupList)||n(t.target).parents(".e-time-popup").is(this.popupList)||n(t.target).is(this.wrapper)||n(t.target).parents(".e-timewidget").is(this.wrapper)?(n(t.target).is(this.popupList)||n(t.target).parents(".e-time-popup").is(this.popupList))&&t.preventDefault():this._hideResult()},_OnWindowResize:function(){this._refreshPopup()},_OnMouseEnter:function(t){var i=t.target;this.ul.find("li").removeClass("e-hover");n(i).hasClass("e-disable")||n(i).addClass("e-hover")},_OnMouseLeave:function(){(!this._dateTimeInternal||this.model.value)&&this.ul.find("li").removeClass("e-hover")},_OnMouseClick:function(t){(t.preventDefault(),n(t.target).hasClass("e-disable"))||(this.model.enabled&&!this.model.readOnly&&(this._activeItem=n(t.target).index()+1,this.ul.find("li").attr({tabindex:-1,"aria-selected":!1}),n(t.target).attr({"aria-selected":!0,tabindex:0}),this._addSelected(),this._selectTimeItem(n(t.target))),this._showhidePopup())},_selectTimeItem:function(n){this._beforeChange(n);var t=this._raiseChangeEvent();t&&this._trigger("select",{value:this.model.value,prevTime:this._previousValue})},_findCategoryPosition:function(n){n=="least"&&(n=this._getLeast(!0));var t=this._getCategoryPosition(n);this.start=t.start;this.end=t.end},_getLeast:function(t){var r=this._getFormatParts(),u=this.seperator,i=null;return n(r).each(function(n,r){if(r!="tt"){var f=r.split(u);i=t?f[f.length-1]:f[0]}}),i},_changeValue:function(n,i){var l=this.target.value,r,u=this._getCategory(n),f,o;if(!u)return!1;if(this._setSelection(this.start,this.end),r=this.target.value.substring(this.start,this.end),this._checkMinMax(this.target.value))if(r!=this.ttAM&&r!=this.ttPM){if(r=this._changeCurrentValue(r,u,i),u.length!=1&&(r=this._changeWhole(r)),this._findCategoryPosition(u),this.element.val(this._replaceAt(this.target.value,this.start,this.end,r)),this.end=this.start+r.toString().length,this._setSelection(this.start,this.end),this._ensureTimeRange(this.target.value)&&this._checkMinMax(this.target.value)){var e=this._createObject(this.target.value),s=e.getHours(),h=i?this._startTime:this._endTime,c=i?this._endTime:this._startTime;if(!t.isNullOrUndefined(this.model.disableTimeRanges))for(f=0;f<this.model.disableTimeRanges.length;f++)(h[f].getHours()===s||+e>=+this._startTime[f]&&+e<=+this._endTime[f])&&(this.target.value=this._localizeTime(c[f]),this._findCategoryPosition(u),this._setSelection(this.start,this.end),this._changeValue(n,i))}}else this._changeAmPm(r);else o=this._checkExceedRange(this.target.value),this._setTime(this.model[o]),this._findCategoryPosition(u),this._setSelection(this.start,this.end);this._checkMinMax(this.target.value)?this._raiseChangeEvent():(this.element.val(this.model.value),this._findCategoryPosition(u),this._setSelection(this.start,this.end))},_checkMinMax:function(n){var t=this._checkExceedRange(n);return t==null&&(t=!1),!t},_checkExceedRange:function(n){if(n){if(this.model.minTime&&!this._compareTime(n,this.model.minTime,!0))return"minTime";if(this.model.maxTime&&!this._compareTime(this.model.maxTime,n,!0))return"maxTime"}return null},_changeWhole:function(n){return n>9?""+n:"0"+n},_changeAmPm:function(n){n=n==this.ttAM?this.ttPM:this.ttAM;this.element.val(this._replaceAt(this.target.value,this.start,this.end,n));this._setSelection(this.start,this.end)},_changeMinute:function(n){var i=this._getExactFormat(["mm","m"]),t;i&&(this._findCategoryPosition(i),t=Number(this.target.value.substring(this.start,this.end)),this._getMinMax(i),n?t==this.max?(t=this.min,this._changeHour(n)):t+=1:t==this.min?(t=this.max,this._changeHour(n)):t-=1,this._findCategoryPosition(i),i.length!=1&&(t=this._changeWhole(t)),this.element.val(this._replaceAt(this.target.value,this.start,this.end,t)))},_changeHour:function(n){var i=this._getExactFormat(["hh","h","HH","H"]),t;i&&(this._findCategoryPosition(i),t=Number(this.target.value.substring(this.start,this.end)),this._getMinMax(i),n?t==this.max?(t+=1,this._changeMeridian()):t>this.max?t=this.min:t+=1:t==this.min?t=this.max+1:t>this.max?(t=this.max,this._changeMeridian()):t-=1,this._findCategoryPosition(i),i.length!=1&&(t=this._changeWhole(t)),this.element.val(this._replaceAt(this.target.value,this.start,this.end,t)))},_getExactFormat:function(n){for(var i=this.model.timeFormat,t=0;t<n.length;t++)if(i.indexOf(n[t])!=-1)return n[t];return null},_changeMeridian:function(){var t=this.model.timeFormat.indexOf("tt"),n;t!=-1&&(this._findCategoryPosition("tt"),n=this.target.value.substring(this.start,this.end),n=n==this.ttAM?this.ttPM:this.ttAM,this.element.val(this._replaceAt(this.target.value,this.start,this.end,n)))},_changeCurrentValue:function(n,t,i){n=Number(n);var r=t,u=1,f=!0;return(this._getMinMax(r),r=="hh"||r=="h"||r=="HH"||r=="H"?u=this.model.hourInterval:r=="mm"||r=="m"?u=this.model.minutesInterval:(r=="ss"||r=="s")&&(u=this.model.secondsInterval),u<=0)?n:(i?((r=="hh"||r=="h")&&n>this.max?n=this.min-1+u:n<this.max?n+=u:(f=!1,r!="hh"&&r!="h"?n=this.min-1+u:n+=u,this._changeAdjacent(r,i)),(r=="hh"||r=="h")&&n==this.max+1?f&&this._changeAdjacent(r,i):n>this.max+1&&(n=n-(this.max+1),f&&this._changeAdjacent(r,i)),r!="hh"&&r!="h"&&n==this.max+1&&(n=this.min,f&&this._changeAdjacent(r,i))):(r!="hh"&&r!="h"&&n>this.min?n-=u:(r=="hh"||r=="h")&&n>this.min&&n<=this.max?n-=u:(r=="hh"||r=="h")&&n==this.min?n=this.max+2-u:(f=!1,n=this.max+1-u,this._changeAdjacent(r,i)),n<this.min&&(n=n+(this.max+1),f&&this._changeAdjacent(r,i))),n)},_changeAdjacent:function(n,t){n=="ss"||n=="s"?this._changeMinute(t):n=="mm"||n=="m"?this._changeHour(t):(n=="hh"||n=="h"||n=="HH"||n=="H")&&this._changeMeridian()},_valueChange:function(){this._raiseChangeEvent()},_beforeChange:function(n){return this._raiseEvent("beforeChange")||this.element.val(n.text()),!0},_raiseChangeEvent:function(n,t){n=n===i?this.model.value:n;this._previousValue=n;var r=this.target.value?this.target.value:null;return n==r?!1:(this.isValidState=this._checkMinMax(this.target.value)&&this._isValid(this.target.value,this.model.enableStrictMode)||!this.target.value?!0:!1,this.model.value=this._isValid(this.target.value,!0)&&this._checkMinMax(this.target.value)?this.target.value:null,this.model.value||this.model.enableStrictMode||this._setTime(this.model.value),this.model.value==this._previousValue)?!1:(this._raiseEvent("change",t),this._raiseEvent("_change",t),!0)},_raiseEvent:function(n,t){var i={value:this.model.value,prevTime:this._previousValue};return n=="change"&&(i.isInteraction=!t),this._trigger(n,i)},_checkIE7:function(){if(navigator.appName=="Microsoft Internet Explorer"){var t=new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})"),n=-1;if(t.exec(navigator.userAgent)!=null&&(n=parseFloat(RegExp.$1)),n>=7&&n<8)return!0}return!1},_replaceAt:function(n,t,i,r){return n.substring(0,t)+r+n.substring(i)},_localizeTime:function(i){return i?n.trim(t.format(this._createObject(i),this.model.timeFormat,this.model.locale)):null},_localizeMeridian:function(i){return n.trim(t.format(i,"tt",this.model.locale))},_compareTime:function(n,t,i){return i=i?!0:!1,i?this._parse(n)>=this._parse(t):this._parse(n)>this._parse(t)},_isValid:function(n,t){return n=this._createObject(n,t),n&&typeof n.getTime=="function"&&isFinite(n.getTime())},_parse:function(n){return Date.parse(this._createObject(n))},_setEmptyDate:function(n){var t=new Date(n);return t.setDate(1),t.setMonth(0),t.setFullYear(2e3),t},_createObject:function(n,i){var r=null,f,e;if(typeof n=="string"){var o=this._setModelOption?this._preTimeformat:this.model.timeFormat,u=t.preferredCulture(this.model.locale).calendar.patterns.d,s=t.format(new Date("1/1/2000"),u,this.model.locale);r=t.parseDate(s+" "+n,u+" "+o,this.model.locale);(this._extISORegex.exec(n)||this._basicISORegex.exec(n))&&(this.model.value=r=this._timeFromISO(n));this._setModelOption=!1;r||(f=new Date(n),r=isNaN(Date.parse(f))||t.isNullOrUndefined(n)?!this._dateTimeInternal||n==""?null:new Date("1/1/2000 "+n):this._setEmptyDate(n))}else typeof n=="number"?r=new Date(n):n instanceof Date&&(r=this._setEmptyDate(n));return r&&!this._dateTimeInternal&&i&&(e=this._localizeTime(r),this._ensureTimeRange(e)&&(r=null)),r},_getLocalizedLabels:function(){return t.getLocalizedConstants(this.sfType,this.model.locale)},_wireEvents:function(){this._on(this.element,"focus",this._targetFocus);this._on(this.element,"blur",this._targetBlur);this._on(this.element,"mousedown",this._mouseDownOnInput);this._on(this.element,"keydown",this._keyDownOnInput);this._on(this.element,"keyup",this._keyUpOnInput)}});t.TimePicker.Locale=t.TimePicker.Locale||{};t.TimePicker.Locale["default"]=t.TimePicker.Locale["en-US"]={watermarkText:"select a time"}}(jQuery,Syncfusion),function(n,t,i){t.widget("ejDateTimePicker","ej.DateTimePicker",{element:null,model:null,validTags:["input"],_addToPersist:["value"],_setFirst:!1,_rootCSS:"e-datetimepicker",type:"editor",angular:{require:["?ngModel","^?form","^?ngModelOptions"],requireFormatters:!0},_requiresID:!0,defaults:{cssClass:"",locale:"en-US",readOnly:!1,showRoundedCorner:!1,enableRTL:!1,htmlAttributes:{},allowEdit:!0,enabled:!0,value:"",name:null,minDateTime:new Date("1/1/1900 12:00:00 AM"),maxDateTime:new Date("12/31/2099 11:59:59 PM"),height:"",width:"",dateTimeFormat:"",showPopupButton:!0,enableStrictMode:!1,buttonText:{today:"Today",timeNow:"Time Now",done:"Done",timeTitle:"Time"},watermarkText:"Select datetime",enablePersistence:!1,interval:30,timeDisplayFormat:"",timePopupWidth:105,popupPosition:"bottom",dayHeaderFormat:"short",startLevel:"month",depthLevel:"",startDay:-1,stepMonths:1,showOtherMonths:!0,specialDates:null,highlightWeekend:!1,enableAnimation:!0,headerFormat:"MMMM yyyy",validationRules:null,validationMessage:null,validationMessages:null,timeDrillDown:{enabled:!1,interval:5,showMeridian:!1,autoClose:!0,showFooter:!0},beforeOpen:null,beforeClose:null,open:null,close:null,change:null,create:null,destroy:null,focusIn:null,focusOut:null,disableDateTimeRanges:null,timeZone:!0,disableTimeRanges:null},dataTypes:{allowEdit:"boolean",cssClass:"string",locale:"string",readOnly:"boolean",showRoundedCorner:"boolean",enableRTL:"boolean",enabled:"boolean",enableAnimation:"boolean",dateTimeFormat:"string",showPopupButton:"boolean",buttonText:"data",watermarkText:"string",enablePersistence:"boolean",enableStrictMode:"boolean",interval:"number",timeDrillDown:"data",timeDisplayFormat:"string",dayHeaderFormat:"string",startLevel:"string",depthLevel:"string",startDay:"number",stepMonths:"number",showOtherMonths:"boolean",highlightWeekend:"boolean",specialDates:"data",headerFormat:"string",validationRules:"data",validationMessage:"data",validationMessages:"data",htmlAttributes:"data",disableDateTimeRanges:"data",disableTimeRanges:"data"},_setModel:function(i){var r,e=!1,o,u,s,f;for(r in i){r!="allowEdit"&&r!="readOnly"&&r!="enabled"&&r!="validationRules"&&r!="validationMessages"&&r!="enableStrictMode"&&r!="height"&&r!="width"&&r!="showPopupButton"&&r!="dateTimeFormat"&&r!="watermarkText"&&r!="htmlAttributes"&&(this.popup||this._renderDropdown());switch(r){case"allowEdit":this._changeEditable(i[r]);break;case"cssClass":this._changeSkin(i[r]);break;case"locale":this._localize(i[r]);break;case"readOnly":this._readOnly(i[r]);break;case"showRoundedCorner":this._setRoundedCorner(i[r]);break;case"enableRTL":this._setRtl(i[r]);break;case"enabled":this._enabled(i[r]);break;case"validationRules":this.model.validationRules!=null&&(this.element.rules("remove"),this.model.validationMessages=null);this.model.validationRules=i[r];this.model.validationRules!=null&&(this._initValidator(),this._setValidation());break;case"validationMessage":this.model.validationMessages=i[r];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"validationMessages":this.model.validationMessages=i[r];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"value":i[r]=this._setValue(i[r]);this._specificFormat()&&(this._stopRefresh=!0);e=!0;this._prevDateTime=this._prevDateTimeVal||this._preVal;break;case"enableStrictMode":this.model.enableStrictMode=i[r];e=!0;break;case"minDateTime":u=this._stringToObject(i[r]);o=this._getFormat(u,this.timePicker.model.timeFormat);this._isValidDate(u)?(this.datePicker.option("minDate",u),this.datePicker.model.value&&this.datePicker.model.value.toDateString()==this.datePicker.model.minDate.toDateString()&&this.timePicker.option("minTime",o),i[r]=u,this.model.minDateTime=u):i[r]=this.model[r];e=!0;break;case"maxDateTime":u=this._stringToObject(i[r]);s=this._getFormat(i[r],this.timePicker.model.timeFormat);this._isValidDate(u)?(this.datePicker.option("maxDate",u),this.datePicker.model.value&&this.datePicker.model.value.toDateString()==this.datePicker.model.maxDate.toDateString()&&this.timePicker.option("maxTime",s),i[r]=u,this.model.maxDateTime=u):i[r]=this.model[r];e=!0;break;case"height":this.wrapper.height(i[r]);break;case"width":this.wrapper.width(i[r]);break;case"dateTimeFormat":this.model.dateTimeFormat=i[r];this.isValidState&&this._setValue(this.model.value);break;case"showPopupButton":this._showButton(i[r]);break;case"watermarkText":t.isNullOrUndefined(this._options)&&(this._options={});this._options[r]=this.model.watermarkText=i[r];this._localizedLabels.watermarkText=this.model.watermarkText;this._setWaterMark();break;case"buttonText":t.isNullOrUndefined(this._options)||(this._options.buttonText=this.model.buttonText=i[r]);this._localizedLabels.buttonText=this.model.buttonText;this._buttonText(i[r]);break;case"interval":this._updateTimeHeight();this.timePicker.option("interval",i[r]);break;case"timeDisplayFormat":this._updateTimeHeight();this.timePicker.option("timeFormat",i[r]);break;case"disableDateTimeRanges":this._disabledDate&&(this._disabledDates=!1);this.model.disableDateTimeRanges=i[r];this._setValue(this.model.value);break;case"disableTimeRanges":this.model.disableTimeRanges=i[r];this.timePicker.option("disableTimeRanges",this.model.disableTimeRanges);break;case"timePopupWidth":this._updateTimeHeight();f=i[r];i[r]=typeof f=="string"&&f.indexOf("%")!=-1||typeof f=="string"?parseInt(f)>0?f:105:f>0?f:105;this.timePicker.option("popupWidth",i[r]);break;case"dayHeaderFormat":this.datePicker.option("dayHeaderFormat",i[r]);break;case"startLevel":this.datePicker.option("startLevel",i[r]);break;case"depthLevel":this.datePicker.option("depthLevel",i[r]);break;case"startDay":this.datePicker.option("startDay",i[r]);this.model.startDay=this.datePicker.model.startDay;i[r]=this.model.startDay;break;case"stepMonths":this.datePicker.option("stepMonths",i[r]);break;case"showOtherMonths":this.datePicker.option("showOtherMonths",i[r]);break;case"highlightWeekend":this.datePicker.option("highlightWeekend",i[r]);break;case"specialDates":this.datePicker.option("specialDates",i[r]);this.model.specialDates=this.datePicker.model.specialDates;break;case"headerFormat":this.datePicker.option("headerFormat",i[r]);break;case"htmlAttributes":this._addAttr(i[r]);break;case"popupPosition":this.model.popupPosition=i[r];this._setListPosition();break;case"timeDrillDown":t.isNullOrUndefined(i[r].enabled)||(this.model.timeDrillDown.enabled=i[r].enabled,this._changeDesign());t.isNullOrUndefined(i[r].interval)||(this.model.timeDrillDown.interval=i[r].interval,this._generateMins(n.trim(t.format(this.timePicker._createObject(this._datetimeValue),"HH:00",this.model.locale))));t.isNullOrUndefined(i[r].showMeridian)||(this.model.timeDrillDown.showMeridian=i[r].showMeridian,this._sfTimeHour.empty(),this._renderHourTable());t.isNullOrUndefined(i[r].showFooter)||(this.model.timeDrillDown.showFooter=i[r].showFooter,this._changeDesign())}}e&&this._validateMinMax();this._valueChange(!0);r=="value"&&(i[r]=this.model.value);this.popup&&this._updateTimeHeight();this._checkErrorClass()},observables:["value"],_destroy:function(){this.isPopupOpen&&this._hideResult();this.wrapper&&(this.element.insertAfter(this.wrapper),this.wrapper.remove());this.element.removeClass("e-js e-input").removeClass(t.util.getNameSpace(this.sfType));this.element.removeAttr(" type aria-atomic aria-live tabindex aria-expanded aria-disabled placeholder role");this._cloneElement[0].hasAttribute("name")||this.element.removeAttr("name");t.isNullOrUndefined(this.datePicker)||this.datePicker.destroy();t.isNullOrUndefined(this.timePicker)||this.timePicker.destroy();this.popup&&this.popup.remove()},_initDisableTimeRanges:function(n){for(var e,o,h,c,f,u,r,s=this._getDateObj(n,this.datePicker.model.dateFormat),i=0;i<this.model.disableDateTimeRanges.length;i++)if(t.isNullOrUndefined(this.model.disableDateTimeRanges[i].endDateTime)&&(this.model.disableDateTimeRanges[i].endDateTime=this.model.disableDateTimeRanges[i].startDateTime),this.model.disableDateTimeRanges[i].startDateTime instanceof Date||this.model.disableDateTimeRanges[i].endDateTime instanceof Date?(e=this._getFormat(this.model.disableDateTimeRanges[i].startDateTime,this.datePicker.model.dateFormat),o=this._getFormat(this.model.disableDateTimeRanges[i].endDateTime,this.datePicker.model.dateFormat)):(e=this.model.disableDateTimeRanges[i].startDateTime.split(" ")[0],o=this.model.disableDateTimeRanges[i].endDateTime.split(" ")[0]),h=new Date(this.model.disableDateTimeRanges[i].startDateTime),c=new Date(this.model.disableDateTimeRanges[i].endDateTime),e==o){if(this._compare(s,this._setEmptyTime(this.model.disableDateTimeRanges[i].startDateTime))){var u=this._getFormat(h,this.timePicker.model.timeFormat),r=this._getFormat(c,this.timePicker.model.timeFormat),f=[];f.push({startTime:u,endTime:r});this.timePicker.option("disableTimeRanges",f);return}this.timePicker.option("disableTimeRanges",this._defaultMinVal());this._disabledDates||this.model.disableDateTimeRanges[i].endDateTime!=this.model.disableDateTimeRanges[i].startDateTime||this.model.disableDateTimeRanges[i].endDateTime instanceof Date==!1&&this._getFormat(this.model.disableDateTimeRanges[i].endDateTime,this.model.dateTimeFormat)==this._getFormat(this.model.disableDateTimeRanges[i].endDateTime,this.model.dateFormat)&&t.isNullOrUndefined(this.model.disableDateTimeRanges[i].endDateTime.split(" ")[1])&&this._between.push(new Date(this.model.disableDateTimeRanges[i].endDateTime))}else if(e!=o){if(this._compare(s,this._setEmptyTime(this.model.disableDateTimeRanges[i].startDateTime))||this._compare(s,this._setEmptyTime(this.model.disableDateTimeRanges[i].endDateTime))){u=this.timePicker.model.minTime;r=this.timePicker.model.maxTime;this.datePicker.model.value.toDateString()==new Date(this.model.disableDateTimeRanges[i].startDateTime).toDateString()&&(u=this._getFormat(new Date(this.model.disableDateTimeRanges[i].startDateTime),this.timePicker.model.timeFormat));this.datePicker.model.value.toDateString()==new Date(this.model.disableDateTimeRanges[i].endDateTime).toDateString()&&(r=this._getFormat(new Date(this.model.disableDateTimeRanges[i].endDateTime),this.timePicker.model.timeFormat));f=[];f.push({startTime:u,endTime:r});this.timePicker.option("disableTimeRanges",f);return}this._disabledDates||(u=this._getFormat(new Date(this.model.disableDateTimeRanges[i].startDateTime),this.timePicker.model.timeFormat),r=this._getFormat(new Date(this.model.disableDateTimeRanges[i].endDateTime),this.timePicker.model.timeFormat),u==this.timePicker.model.minTime&&this._between.push(new Date(this.model.disableDateTimeRanges[i].startDateTime)),this.model.disableDateTimeRanges[i].endDateTime instanceof Date==!1&&this._getFormat(this.model.disableDateTimeRanges[i].endDateTime,this.model.dateTimeFormat)==this._getFormat(new Date(this.model.disableDateTimeRanges[i].endDateTime),this.datePicker.model.dateFormat)&&(r=this.timePicker.model.maxTime),r==this.timePicker.model.maxTime&&this._between.push(new Date(this.model.disableDateTimeRanges[i].endDateTime)))}},_disableBetweenDates:function(){for(var n=0;n<this.model.disableDateTimeRanges.length;n++)for(var r=this.model.disableDateTimeRanges[n].startDateTime,t=this._setEmptyTime(r),f=this._getFormat(new Date(this.model.disableDateTimeRanges[n].startDateTime),this.timePicker.model.timeFormat),e=this._getFormat(new Date(this.model.disableDateTimeRanges[n].endDateTime),this.timePicker.model.timeFormat),u=this.model.disableDateTimeRanges[n].endDateTime,i=this._setEmptyTime(u);t<i;)t.setDate(t.getDate()+1),new Date(t)<i&&this._between.push(new Date(t));this._datesDisabled=!0},_init:function(n){if(this._cloneElement=this.element.clone(),!this.element.is("input")||this.element.attr("type")&&this.element.attr("type")!="text")return!1;this._options=n;this._ISORegex();this._isSupport=document.createElement("input").placeholder==i?!1:!0;this._validateMeridian();this._checkAttribute();this._initialize();this._initial=!0;this._interval=60;this._render();this._wireEvents();this._addAttr(this.model.htmlAttributes);t.isNullOrUndefined(n)||t.isNullOrUndefined(n.validationMessage)||(this.model.validationMessages=this.model.validationMessage);this.model.validationRules!=null&&(this._initValidator(),this._setValidation());this._removeWatermark();n&&n.value!=i&&n.value!=this.element.val()&&this._trigger("_change",{value:this.element.val()})},_ISORegex:function(){this._tokens=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;this._extISORegex=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/;this._basicISORegex=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/;this._numberRegex={2:/\d\d?/,4:/^\d{4}/,z:/Z|[+-]\d\d(?::?\d\d)?/gi,t:/T/,"-":/\-/,":":/:/};this._zeroRegex=/Z|[+-]\d\d(?::?\d\d)?/;this._dates=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]];this._times=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]]},_changeDesign:function(){if(this.model.timeDrillDown.enabled){var t=this.model.timeDrillDown.showFooter?"block":"none";this.popup.addClass("e-drill-down");this._timeContainer.css("display","none");this._buttonContainer.css("display","none");this.datePicker.option("showFooter",this.model.timeDrillDown.showFooter);n(".e-footer",this._sfTimeHour).css("display",t);n(".e-footer",this._sfTimeMins).css("display",t)}else this.popup.removeClass("e-drill-down"),this._sfTimeHour.hide(),this._sfTimeMins.hide(),this._updateTimeHeight(),this._dateContainer.show(),this._timeContainer.show(),this._buttonContainer.show(),this.datePicker.option("showFooter",!1),this.timePicker._refreshScroller(),this.timePicker._changeActiveEle()},_initValidator:function(){this.element.closest("form").data("validator")||this.element.closest("form").validate()},_checkAttribute:function(){this.model.value=this.model.value===""?this.element[0].value:this.model.value;this._options.minDateTime||(this.model.minDateTime=this.element[0].min);this._options.maxDateTime||(this.model.maxDateTime=this.element[0].max);t.isNullOrUndefined(this._options.readOnly)&&(this.model.readOnly=this.element.is("[readonly]"));t.isNullOrUndefined(this._options.enabled)&&(this.model.enabled=!this.element.is("[disabled]"))},_setValidation:function(){var r,f,i,u,e;this.element.rules("add",this.model.validationRules);r=this.element.closest("form").data("validator");r=r?r:this.element.closest("form").validate();f=this.element.attr("name");r.settings.messages[f]={};for(i in this.model.validationRules)if(u=null,!t.isNullOrUndefined(this.model.validationRules[i])){if(t.isNullOrUndefined(this.model.validationRules.messages&&this.model.validationRules.messages[i])){r.settings.messages[f][i]=n.validator.messages[i];for(e in this.model.validationMessages)i==e?u=this.model.validationMessages[i]:""}else u=this.model.validationRules.messages[i];r.settings.messages[f][i]=u!=null?u:n.validator.messages[i]}},_validateDisableRanges:function(){for(var t,n=0;n<this.model.disableDateTimeRanges.length;n++)t=this.model.value,new Date(this.model.value).getTime()>=new Date(this.model.disableDateTimeRanges[n].startDateTime).getTime()&&new Date(this.model.value).getTime()<=new Date(this.model.disableDateTimeRanges[n].endDateTime).getTime()&&(this.model.value=null),this.model.value==null&&t!=null&&this.model.enableStrictMode&&(this.isValidState=!1),this.isValidState&&this.element.val(this._getFormat(this.model.value,this.model.dateTimeFormat))},_addAttr:function(i){var r=this;n.map(i,function(n,i){var u=i.toLowerCase();u=="class"?r.wrapper.addClass(n):u=="disabled"?r._enabled(!1):u=="readOnly"?r._readOnly(!0):u=="style"?r.wrapper.attr(i,n):u=="id"?(r.wrapper.attr(i,n+"_wrapper"),r.element.attr(i,n)):t.isValidAttr(r.element[0],u)?r.element.attr(u,n):r.wrapper.attr(u,n)})},_validateMeridian:function(){var n=t.preferredCulture(this.model.locale);n&&(this.model.locale=n.name=="en"?"en-US":n.name);t.isNullOrUndefined(this._options)?this.model.timeDrillDown.showMeridian=t.isNullOrUndefined(t.preferredCulture(this.model.locale).calendars.standard.AM)?!1:!0:t.isNullOrUndefined(this._options.timeDrillDown)?this.model.timeDrillDown.showMeridian=t.isNullOrUndefined(t.preferredCulture(this.model.locale).calendars.standard.AM)?!1:!0:t.isNullOrUndefined(this._options.timeDrillDown.showMeridian)&&(this.model.timeDrillDown.showMeridian=t.isNullOrUndefined(t.preferredCulture(this.model.locale).calendars.standard.AM)?!1:!0)},_initialize:function(){var i,r,u,f;this.popup=null;this.isPopupOpen=!1;this.isValidState=!0;this._localizedLabels=this._getLocalizedLabels();t.isNullOrUndefined(this._options)||(t.isNullOrUndefined(this._options.buttonText)||n.extend(this._localizedLabels.buttonText,this._options.buttonText),t.isNullOrUndefined(this._options.watermarkText)||(this._localizedLabels.watermarkText=this._options.watermarkText));this._localizedLabelToModel();this.model.startDay==-1&&(this.model.startDay=t.preferredCulture(this.model.locale).calendar.firstDay);this._isIE8=t.browserInfo().name=="msie"&&t.browserInfo().version=="8.0"?!0:!1;this._isIE9=t.browserInfo().name=="msie"&&t.browserInfo().version=="9.0"?!0:!1;this.model.dateTimeFormat&&this.model.timeDisplayFormat||this._getDateTimeFormat();this.model.value&&(typeof JSON!="object"||JSON.stringify(this.model.value)!=="{}")?this.model.value instanceof Date?i=this.model.value:(r=t.parseDate(this.model.value,this.model.dateTimeFormat,this.model.locale),i=r?r:(r=this._checkJSONString(this.model.value))?r:null):i=null;i&&(this.model.value=i);u=this.model.minDateTime=this._stringToObject(this.model.minDateTime);u&&this._isValidDate(u)||(this.model.minDateTime=this.defaults.minDateTime);f=this.model.maxDateTime=this._stringToObject(this.model.maxDateTime);f&&this._isValidDate(f)||(this.model.maxDateTime=this.defaults.maxDateTime)},_checkJSONString:function(n){var i=new Date(n),r;if(isNaN(Date.parse(i))){if(this._extISORegex.exec(n)||this._basicISORegex.exec(n))return this._dateFromISO(n)}else if(i.toJSON()===this.model.value||i.toGMTString()===this.model.value||i.toISOString()===this.model.value||i.toLocaleString()===this.model.value||i.toString()===this.model.value||i.toUTCString()===this.model.value){if(this.model.timeZone)return new Date(new Date(i).getTime()+t.serverTimezoneOffset*36e5);if(n.match(/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(\.\d+)?(([+-]\d\d:\d\d)|Z)?$/i)&&n.match(/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(\.\d+)?(([+-]\d\d:\d\d)|Z)?$/i).length>0)return r=n.split("Z"),r=r[0],new Date(r)}else if(typeof n=="string")return this._dateFromISO(n)},_render:function(){this._renderWrapper();this._renderIcon();this._setDimentions();this._checkProperties()},_renderWrapper:function(){if(this.element.addClass("e-input").attr({"aria-atomic":"true","aria-live":"assertive",tabindex:"0",role:"combobox","aria-expanded":"false"}),this.wrapper=t.buildTag("span.e-datetime-wrap e-widget "+this.model.cssClass+"#"+this.element[0].id+"_wrapper").insertAfter(this.element),this._setValue(this.model.value),this.wrapper.attr("style",this.element.attr("style")),this.element.removeAttr("style"),t.isTouchDevice()||this.wrapper.addClass("e-ntouch"),this.container=t.buildTag("span.e-in-wrap e-box").append(this.element),this.wrapper.append(this.container),!this._isSupport){this._hiddenInput=t.buildTag("input.e-input e-placeholder ","",{},{type:"text"}).insertAfter(this.element);this._hiddenInput.val(this._localizedLabels.watermarkText);this._hiddenInput.css("display","block");var i=this;n(this._hiddenInput).focus(function(){i.element.focus()})}},_removeWatermark:function(){this.element.val()!=""&&!this._isSupport&&this._hiddenInput&&this._hiddenInput.css("display","none")},_renderIcon:function(){if(!this.model.showPopupButton)return!1;this.datetimeIcon=t.buildTag("span.e-select","",{}).attr(this._isIE8?{unselectable:"on"}:{});var n=t.buildTag("span.e-icon e-datetime","",{},{"aria-label":"select"}).attr(this._isIE8?{unselectable:"on"}:{});this.datetimeIcon.append(n);this.container.append(this.datetimeIcon).addClass("e-padding");this._on(this.datetimeIcon,"click",this._iconClick);this._on(this.datetimeIcon,"mousedown",function(n){n.preventDefault()})},_setDimentions:function(){this.model.height||(this.model.height=this.element.attr("height"));this.model.width||(this.model.width=this.element.attr("width"));this.wrapper.height(this.model.height);this.wrapper.width(this.model.width)},_renderDropdown:function(){var f=n("#"+this.element[0].id+"_popup").get(0),e,o,i,r,u;f&&n(f).remove();this.popup=t.buildTag("div.e-datetime-popup e-popup e-widget e-box "+this.model.cssClass+"#"+this.element[0].id+"_popup").css("visibility","hidden");t.isTouchDevice()||this.popup.addClass("e-ntouch");n("body").append(this.popup);this._renderControls();e=t.buildTag("div.e-header",this._localizedLabels.buttonText.timeTitle).attr(this._isIE8?{unselectable:"on"}:{});this._dateContainer=t.buildTag("div.e-datecontainer").append(this.datePicker.popup).attr(this._isIE8?{unselectable:"on"}:{});this._timeContainer=t.buildTag("div.e-timecontainer").append(e,this.timePicker.popup).attr(this._isIE8?{unselectable:"on"}:{});this._drillDownContainer=t.buildTag("div.e-drillDowncontainer").append().attr(this._isIE8?{unselectable:"on"}:{});o=t.buildTag("div.e-popup-container").append(this._dateContainer,this._timeContainer,this._drillDownContainer).attr(this._isIE8?{unselectable:"on"}:{});i=t.buildTag("div.e-dt-button e-dt-today e-btn e-select e-flat",this._localizedLabels.buttonText.today).attr(this._isIE8?{unselectable:"on"}:{});r=t.buildTag("div.e-dt-button e-dt-now e-btn e-select e-flat",this._localizedLabels.buttonText.timeNow).attr(this._isIE8?{unselectable:"on"}:{});u=t.buildTag("div.e-dt-button e-dt-done e-btn e-select e-flat",this._localizedLabels.buttonText.done).attr(this._isIE8?{unselectable:"on"}:{});this._buttonContainer=t.buildTag("div.e-button-container").append(i,r,u).attr(this._isIE8?{unselectable:"on"}:{});this._renderDrillDown();this.popup.append(o,this._buttonContainer);this._checkForResponsive();this._updateTimeHeight();this._bindOperations();this._updateValues();this.popup.css({visibility:"visible",display:"none"});this._on(i,"click",this._todayClick);this._on(r,"click",this._nowClick);this._on(u,"click",this._doneClick);this.popup.on("mouseenter touchstart",n.proxy(function(){this._popClose=!0},this));this.popup.on("mouseleave touchend",n.proxy(function(){this._popClose=!1},this));this._changeDesign()},_renderControls:function(){this._renderDateControl();this._renderTimeControl();var n=t.buildTag("span").append(this.datePicker.wrapper,this.timePicker.wrapper);n.find("span").css("display","none");this.popup.append(n)},_renderDrillDown:function(){this._renderHourPopup();this._renderMinsPopup()},_renderHourPopup:function(){this._sfTimeHour=t.buildTag("div.e-timepicker e-popup e-widget "+this.model.cssClass+" e-time-hours ","",{},{id:this._id?"e-hours-"+this._id:""}).attr({"aria-hidden":"true"}).attr(this._isIE8?{unselectable:"on"}:{});t.isTouchDevice()||this._sfTimeHour.addClass("e-ntouch");this._drillDownContainer.append(this._sfTimeHour);this._renderHourTable()},_renderHourTable:function(){var i,o,a,v,s,u,y,p,r,w,l,e;if(t.buildTag("div.e-header").attr(this._isIE8?{unselectable:"on"}:{}).append(t.buildTag("span.e-prev").append(t.buildTag("a.e-icon e-arrow-sans-left").attr({role:"button"}).attr(this._isIE8?{unselectable:"on"}:{}))).append(t.buildTag("span.e-text").append(t.buildTag("span.e-hours-headertext").text("October 2015").attr({"aria-atomic":"true","aria-live":"assertive",role:"heading"}).attr(this._isIE8?{unselectable:"on"}:{}))).append(t.buildTag("span.e-next").append(t.buildTag("a.e-icon e-arrow-sans-right").attr({role:"button"}).attr(this._isIE8?{unselectable:"on"}:{}))).appendTo(this._sfTimeHour),this._interval<1)return!1;y=this._interval*6e4;p=this.model.timeDrillDown.showMeridian?2:1;v=this.model.timeDrillDown.showMeridian?6:4;var b=this.model.timeDrillDown.showMeridian?"hh":"HH:00",h=["AM","PM"],c=0,f="";for(i=this.timePicker._createObject("12:00:00 AM"),o=this.model.timeDrillDown.showMeridian?this.timePicker._createObject("11:59:59 AM"):this.timePicker._createObject("11:59:59 PM"),r=0;r<p;r++){for(this.model.timeDrillDown.showMeridian&&(f=h[r].toLowerCase(),w=t.isNullOrUndefined(t.preferredCulture(this.model.locale).calendars.standard[h[r]])?"":t.preferredCulture(this.model.locale).calendars.standard[h[r]][0],t.buildTag("div.e-header-"+f).attr(this._isIE8?{unselectable:"on"}:{}).append(t.buildTag("span.e-text").append(t.buildTag("span.e-hours-meridiantxt-"+f).text(w).attr({"aria-atomic":"true","aria-live":"assertive",role:"heading"}).attr(this._isIE8?{unselectable:"on"}:{}))).appendTo(this._sfTimeHour)),s=t.buildTag("table.e-dp-viewhours","",{}).data("e-table","data").attr({role:"grid"}).attr(this._isIE8?{unselectable:"on"}:{}),this._sfTimeHour.append(s),l=t.buildTag("tbody.e-timepicker-hours").attr(this._isIE8?{unselectable:"on"}:{}),u=t.buildTag("tr","").attr(this._isIE8?{unselectable:"on"}:{});this.timePicker._compareTime(o,i,!0);)a=this._localizeTime(i,b),e=t.buildTag("td.e-hour e-state-default",a),this.model.timeDrillDown.showMeridian&&e.addClass("e-hour-"+f),this._isIE8&&e.attr("unselectable","on"),u.append(e),c++,c>=v&&(c=0,l.append(u),u=t.buildTag("tr","").attr(this._isIE8?{unselectable:"on"}:{})),i=this.timePicker._createObject(i).getTime()+y;s.append(l);this.model.timeDrillDown.showMeridian&&(i=this.timePicker._createObject("12:00:00 PM"),o=this.timePicker._createObject("11:59:59 PM"))}t.buildTag("div.e-footer").append(t.buildTag("span.e-footer-icon")).append(t.buildTag("span.e-footer-text")).appendTo(this._sfTimeHour);n(".e-footer-text",this._sfTimeHour).html(this._localizedLabels.buttonText.timeNow);n(".e-hours-headertext",this._sfTimeHour).text(t.format(this.datePicker.model.value,"dd MMM yyyy"));this._on(this._sfTimeHour.find(".e-hour"),"click",n.proxy(this._hourNavHandler,this));this._on(n(".e-next",this._sfTimeHour),"click",n.proxy(this._prevNextHourHandler,this));this._on(n(".e-prev",this._sfTimeHour),"click",n.proxy(this._prevNextHourHandler,this));this._on(n(".e-footer",this._sfTimeHour),"click",this._todayBtn);n(".e-hours-headertext",this._sfTimeHour).on("click",n.proxy(this._forwardNavHandler,this));this._sfTimeHour.hide()},_localizeTime:function(i,r){return n.trim(t.format(this.timePicker._createObject(i),r,this.model.locale))},_renderMinsPopup:function(){var r,e,i,s,h,c,u,f,o;if(this._sfTimeMins=t.buildTag("div.e-timepicker e-popup e-widget "+this.model.cssClass+" e-time-minitues ","",{},{id:this._id?"e-time-minitues-"+this._id:""}).attr({"aria-hidden":"true"}).attr(this._isIE8?{unselectable:"on"}:{}),t.isTouchDevice()||this._sfTimeMins.addClass("e-ntouch"),this._drillDownContainer.append(this._sfTimeMins),t.buildTag("div.e-header").attr(this._isIE8?{unselectable:"on"}:{}).append(t.buildTag("span.e-prev").append(t.buildTag("a.e-icon e-arrow-sans-left").attr({role:"button"}).attr(this._isIE8?{unselectable:"on"}:{}))).append(t.buildTag("span.e-text").append(t.buildTag("span.e-minitues-headertext").attr({"aria-atomic":"true","aria-live":"assertive",role:"heading"}).attr(this._isIE8?{unselectable:"on"}:{}))).append(t.buildTag("span.e-next").append(t.buildTag("a.e-icon e-arrow-sans-right").attr({role:"button"}).attr(this._isIE8?{unselectable:"on"}:{}))).appendTo(this._sfTimeMins),t.buildTag("div.e-mins-header").attr(this._isIE8?{unselectable:"on"}:{}).append(t.buildTag("span.e-text").append(t.buildTag("span.e-minitues-meridiantxt").text("AM").attr({"aria-atomic":"true","aria-live":"assertive",role:"heading"}).attr(this._isIE8?{unselectable:"on"}:{}))).appendTo(this._sfTimeMins),r=t.buildTag("table.e-dp-viewmins","",{}).data("e-table","data").attr({role:"grid"}).attr(this._isIE8?{unselectable:"on"}:{}),this._sfTimeMins.append(r),e=t.buildTag("tbody.e-timepicker-mins").attr(this._isIE8?{unselectable:"on"}:{}),this._intervall<1)return!1;for(c=this._interval*6e4,i=this.timePicker._createObject("12:00:00 AM"),s=this.timePicker._createObject("11:59:59 PM"),u=t.buildTag("tr","").attr(this._isIE8?{unselectable:"on"}:{}),f=0;this.timePicker._compareTime(s,i,!0);)h=this._localizeTime(i,"HH:00"),o=t.buildTag("td.e-mins e-state-default",h),this._isIE8&&o.attr("unselectable","on"),u.append(o),f++,f>=4&&(f=0,e.append(u),u=t.buildTag("tr","").attr(this._isIE8?{unselectable:"on"}:{})),i=this.timePicker._createObject(i).getTime()+c;r.append(e);n(".e-minitues-headertext",this._sfTimeMins).text(n(".e-hours-headertext",this._sfTimeHour).text());t.buildTag("div.e-footer").append(t.buildTag("span.e-footer-icon")).append(t.buildTag("span.e-footer-text")).appendTo(this._sfTimeMins);n(".e-footer-text",this._sfTimeMins).html(this._localizedLabels.buttonText.timeNow);n(".e-minitues-headertext",this._sfTimeMins).text(t.format(this.datePicker.model.value,"dd MMM yyyy"));this.model.timeDrillDown.showMeridian||n(".e-mins-header",this._sfTimeMins).css("display","none");this._on(r.find(".e-mins"),"click",n.proxy(this._minsNavHandler,this));this._on(n(".e-next",this._sfTimeMins),"click",n.proxy(this._prevNextMinsHandler,this));this._on(n(".e-prev",this._sfTimeMins),"click",n.proxy(this._prevNextMinsHandler,this));this._on(n(".e-footer",this._sfTimeMins),"click",this._todayBtn);n(".e-minitues-headertext",this._sfTimeMins).on("click",n.proxy(this._forwardNavHandler,this));this._sfTimeMins.hide()},_todayBtn:function(){this._nowClick();this._hideResult()},_hourNavHandler:function(i){var r,f;if(this.model.readOnly||!this.model.enabled||i&&n(i.target).hasClass("e-disable"))return!1;i&&i.type&&i.preventDefault();n("table",this._sfTimeHour).find("td").removeClass("e-active");n(i.target).addClass("e-active");this._sfTimeHour.hide();this._sfTimeMins.show();this._addFocus(this._sfTimeMins);this.model.timeDrillDown.showMeridian?(f=n(i.target).hasClass("e-hour-am")?"AM":"PM",r=n(i.target).text()+":00 "+f):r=n(i.target).text();this._generateMins(r);var e=new Date(this._datetimeValue.toString()).setMinutes(this.model.value.getMinutes()),o=n.trim(t.format(this.timePicker._createObject(e),"HH:mm",this.model.locale)),s=n.trim(t.format(this.timePicker._createObject(e),"HH:00",this.model.locale)),u=(this.timePicker._parse(o)-this.timePicker._parse(s))/(this.model.timeDrillDown.interval*6e4);u=Math.ceil(u);this._hoverMins=this._setFocusByIndex("mins",u,this._sfTimeMins)},_minsNavHandler:function(i){if(this.model.readOnly||!this.model.enabled||i&&n(i.target).hasClass("e-disable"))return!1;if(i&&i.type&&i.preventDefault(),n("table",this._sfTimeMins).find("td").removeClass("e-active").removeClass("e-state-hover"),n(i.target).addClass("e-active"),this.model.timeDrillDown.showMeridian){var r=n(i.target).text()+" "+t.format(this._datetimeValue,"tt","en-US");r=this.timePicker._localizeTime(r)}else r=n(i.target).text();this.timePicker.option("value",r);this.datePicker.option("value",this._datetimeValue);this._datetimeValue=new Date(this.model.value.toString());this._updateInput();this.model.timeDrillDown.autoClose&&this._hideResult(i)},_generateMins:function(i){var f=n("table",this._sfTimeMins),h,s;f.empty();this.model.timeDrillDown.showMeridian?n(".e-mins-header",this._sfTimeMins).show():n(".e-mins-header",this._sfTimeMins).hide();h=this.model.timeDrillDown.showMeridian?"hh:mm":"HH:mm";n(".e-minitues-headertext",this._sfTimeMins).text(n(".e-hours-headertext",this._sfTimeHour).text());var e=t.buildTag("tbody.e-timepicker-mins").attr(this._isIE8?{unselectable:"on"}:{}),r,u,c,l,o=0,a=this.model.timeDrillDown.interval*6e4;for(r=this.timePicker._createObject(i),this._datetimeValue.setHours(r.getHours()),c=this.timePicker._createObject(r).getTime()+354e4,u=t.buildTag("tr","").attr(this._isIE8?{unselectable:"on"}:{}),e.append(u);this.timePicker._compareTime(c,r,!0);)o>=4&&(o=0,u=t.buildTag("tr","").attr(this._isIE8?{unselectable:"on"}:{}),e.append(u)),l=this._localizeTime(r,h),s=t.buildTag("td.e-mins e-state-default",l),this._isIE8&&s.attr("unselectable","on"),u.append(s),o++,r=this.timePicker._createObject(r).getTime()+a;f.append(e);n(".e-mins-header",this._sfTimeMins).find(".e-minitues-meridiantxt").text(t.format(this._datetimeValue,"tt",this.model.locale));this._disableRange("mins");this._on(f.find(".e-mins"),"click",n.proxy(this._minsNavHandler,this))},_prevNextHourHandler:function(t){if(this.model.readOnly||!this.model.enabled)return!1;t.preventDefault();var i=n(t.target).is("a")?n(t.target.parentNode):n(t.target),r=i.hasClass("e-prev")?!0:!1;this._processNextPrev(r,this._sfTimeHour)},_prevNextMinsHandler:function(t){if(this.model.readOnly||!this.model.enabled)return!1;t.preventDefault();var i=n(t.target).is("a")?n(t.target.parentNode):n(t.target),r=i.hasClass("e-prev")?!0:!1;this._processNextPrev(r,this._sfTimeMins)},_processNextPrev:function(i,r){var e,o,u,s;if(i&&r.find(".e-arrow-sans-left").hasClass("e-disable")||!i&&r.find(".e-arrow-sans-right").hasClass("e-disable"))return!1;e=n("table",r);s=e.get(0).className;switch(s){case"e-dp-viewhours":u=i?-1:1;this._datetimeValue.setDate(this._datetimeValue.getDate()+u);this._disableRange("hour");this._hoverHour=this._setFocusByIndex("hour",this._hoverHour,this._sfTimeHour);n(".e-hours-headertext",this._sfTimeHour).text(t.format(this._datetimeValue,"dd MMM yyyy"));n(".e-minitues-headertext",this._sfTimeMins).text(t.format(this._datetimeValue,"dd MMM yyyy"));break;case"e-dp-viewmins":u=i?-1:1;this._datetimeValue.setHours(this._datetimeValue.getHours()+u);this._generateMins(n.trim(t.format(this.timePicker._createObject(this._datetimeValue),"HH:00",this.model.locale)));var o=new Date(this._datetimeValue.toString()).setMinutes(this.model.value.getMinutes()),h=n.trim(t.format(this.timePicker._createObject(o),"HH:mm",this.model.locale)),c=n.trim(t.format(this.timePicker._createObject(o),"HH:00",this.model.locale)),f=(this.timePicker._parse(h)-this.timePicker._parse(c))/(this.model.timeDrillDown.interval*6e4);f=Math.ceil(f);this._disableRange("mins");this._hoverMins=this._setFocusByIndex("mins",f,this._sfTimeMins);n(".e-hours-headertext",this._sfTimeHour).text(t.format(this._datetimeValue,"dd MMM yyyy"));n(".e-minitues-headertext",this._sfTimeMins).text(t.format(this._datetimeValue,"dd MMM yyyy"))}},_forwardNavHandler:function(i,r){var f,e;if(this.model.readOnly||!this.model.enabled)return!1;e=this;i&&i.preventDefault();f=i?n(i.currentTarget).get(0).className:r.find(".e-text>span").get(0).className;switch(f){case"e-hours-headertext":this._sfTimeHour.css("display","none");this._dateContainer.css("display","block");this._addFocus(this._dateContainer.find(".e-datepicker"));break;case"e-minitues-headertext":this._sfTimeMins.css("display","none");this._disableRange("hour");var o=this._localizeTime(this.timePicker._createObject("12:00:00 AM"),"HH:00"),s=n.trim(t.format(this.timePicker._createObject(this._datetimeValue),"HH:00",this.model.locale)),u=(this.timePicker._parse(s)-this.timePicker._parse(o))/(this._interval*6e4);u=Math.floor(u);this._hoverHour=this._setFocusByIndex("hour",u,this._sfTimeHour);n(".e-hours-headertext",this._sfTimeHour).text(t.format(this._datetimeValue,"dd MMM yyyy"));n(".e-minitues-headertext",this._sfTimeMins).text(t.format(this._datetimeValue,"dd MMM yyyy"));this._sfTimeHour.css("display","block");this._addFocus(this._sfTimeHour)}},_renderDateControl:function(){var n=t.buildTag("input#"+this.element[0].id+"_date","",{},{type:"text"});this.popup.append(n);n.ejDatePicker({height:"0px",width:"0px",displayInline:!0,showDateIcon:!1,showFooter:this.model.timeDrillDown.enabled?this.model.timeDrillDown.showFooter:!1,enableStrictMode:!0,buttonText:this._localizedLabels.buttonText.today,minDate:this._stringToObject(this.model.minDateTime),maxDate:this._stringToObject(this.model.maxDateTime),dayHeaderFormat:this.model.dayHeaderFormat,startLevel:this.model.startLevel,depthLevel:this.model.depthLevel,startDay:this.model.startDay,stepMonths:this.model.stepMonths,showOtherMonths:this.model.showOtherMonths,specialDates:this.model.specialDates,highlightWeekend:this.model.highlightWeekend,headerFormat:this.model.headerFormat,enabled:this.model.enabled,enableRTL:this.model.enableRTL,showRoundedCorner:this.model.showRoundedCorner,readOnly:this.model.readOnly,cssClass:this.model.cssClass,locale:this.model.locale});t.isNullOrUndefined(this.model.value)||(this._datetimeValue=new Date(this.model.value.toString()));this.datePicker=n.data("ejDatePicker");this._datetimeValue=new Date(this.datePicker._dateValue.toString());this.model.startDay=this.datePicker.model.startDay;this.datePicker._getInternalEvents=!0;this.datePicker._dt_drilldown=!0;this.datePicker.popup.css({position:"static",display:"block"})},_renderTimeControl:function(){var i=t.buildTag("input#"+this.element[0].id+"_time","",{},{type:"text"}),n,r,u,f;this.popup.append(i);n=this.model.timePopupWidth;r=typeof n=="string"&&n.indexOf("%")!=-1||typeof n=="string"?parseInt(n)>0?n:105&&(this.model.timePopupWidth=105):n>0?n:105&&(this.model.timePopupWidth=105);i.ejTimePicker({height:"0px",width:"0px",interval:this.model.interval,timeFormat:this.model.timeDisplayFormat,popupWidth:r,enabled:this.model.enabled,enableRTL:this.model.enableRTL,showRoundedCorner:this.model.showRoundedCorner,readOnly:this.model.readOnly,cssClass:this.model.cssClass,locale:this.model.locale,disableTimeRanges:this.model.disableTimeRanges});this.timePicker=i.data("ejTimePicker");this.timePicker._renderDropdown();this.timePicker.popup.css({position:"static",display:"block"});this.timePicker._getInternalEvents=!0;this.timePicker.showDropdown=!0;this.timePicker._dateTimeInternal=!0;u=this.model.minDateTime?this._stringToObject(this.model.minDateTime):this.defaults.minDateTime;f=this.model.maxDateTime?this._stringToObject(this.model.maxDateTime):this.defaults.maxDateTime},_updateTimeHeight:function(){var n=this.popup.find(".e-timecontainer .e-header").is(":visible")?this.datePicker.popup.height()-this.popup.find(".e-header").height():this.datePicker.popup.height();n=this.popup.hasClass("e-dt-responsive")?"98px":n;this.timePicker.option("popupHeight",n)},_bindOperations:function(){var n=this;this.datePicker.option("layoutChange",function(){n._updateTimeHeight()});this.datePicker.option("outOfRange",function(){n.isValidState=!1});this.timePicker.option("outOfRange",function(){n.isValidState=!1});this.datePicker.option("change",function(t){n._refreshTimes(t)});this.datePicker.option("select",function(t){n._updateInput(t)});this.datePicker.option("dt_drilldown",function(t){n.model.timeDrillDown.enabled&&(n._updateInput(t),n._switchToDrilDown(t))});this.timePicker.option("select",function(){n._updateInput()})},_switchToDrilDown:function(){var r;this._dateContainer.hide();this._sfTimeHour.show();this._addFocus(this._sfTimeHour);r=new Date(this.model.value.toString());this._datetimeValue=new Date(r.setHours(this._datetimeValue.getHours(),this._datetimeValue.getMinutes(),this._datetimeValue.getSeconds(),this._datetimeValue.getMilliseconds()));this._disableRange("hour");var u=this._localizeTime(this.timePicker._createObject("12:00:00 AM"),"HH:00"),f=n.trim(t.format(this.timePicker._createObject(this._datetimeValue),"HH:00",this.model.locale)),i=(this.timePicker._parse(f)-this.timePicker._parse(u))/(this._interval*6e4);i=Math.floor(i);this._hoverHour=this._setFocusByIndex("hour",i,this._sfTimeHour);n(".e-hours-headertext",this._sfTimeHour).text(t.format(this._datetimeValue,"dd MMM yyyy"));n(".e-minitues-headertext",this._sfTimeMins).text(t.format(this._datetimeValue,"dd MMM yyyy"))},_disableRange:function(i){var l=i=="hour"?this._interval:this.model.timeDrillDown.interval,u=i=="hour"?this._sfTimeHour:this._sfTimeMins,h=i=="hour"?"e-hide-hour e-disable":"e-hide-mins e-disable",c,e,r,a,f,o,s;if(u.find("tbody tr td.e-"+i).removeClass(h),u.find(".e-arrow-sans-left").removeClass("e-disable"),u.find(".e-arrow-sans-right").removeClass("e-disable"),c=i=="hour"?this._localizeTime(this.timePicker._createObject("12:00:00 AM"),"HH:00"):this._localizeTime(n.trim(t.format(this.timePicker._createObject(this._datetimeValue),"HH:00",this.model.locale)),"HH:00"),this._compareDate(this.model.minDateTime,this._datetimeValue)){if(i=="mins"&&!(this.model.minDateTime.getHours()===this._datetimeValue.getHours()))return!1;for(e=n.trim(t.format(this.timePicker._createObject(this.model.minDateTime),"HH:mm",this.model.locale)),r=(this.timePicker._parse(e)-this.timePicker._parse(c))/(l*6e4),r=i=="hour"?Math.floor(r):Math.ceil(r),f=0;f<r;f++)o=u.find("tbody tr td.e-"+i),s=o[f],n(s).addClass(h);u.find(".e-arrow-sans-left").addClass("e-disable")}if(this._compareDate(this.model.maxDateTime,this._datetimeValue)){if(i=="mins"&&!(this.model.maxDateTime.getHours()===this._datetimeValue.getHours()))return!1;for(e=n.trim(t.format(this.timePicker._createObject(this.model.maxDateTime),"HH:mm",this.model.locale)),r=(this.timePicker._parse(e)-this.timePicker._parse(c))/(l*6e4),r=Math.floor(r)+1,a=u.find("tbody tr td.e-"+i).length,f=r;f<a;f++)o=u.find("tbody tr td.e-"+i),s=o[f],n(s).addClass(h);u.find(".e-arrow-sans-right").addClass("e-disable")}},_setFocusByName:function(t,i,r){var f=r.find("tbody tr td.e-"+t),e,u;return n(f).each(function(n,t){if(t.innerHTML==i){e=n;return}}),u=f[e],u||(u=f.last()),r.find("table td").removeClass("e-state-hover").removeClass("e-active"),n(u).hasClass("e-hide-"+t)||n(u).addClass("e-state-hover"),this._setActiveState(t,r),e},_setFocusByIndex:function(t,i,r){var f=r.find("tbody tr td.e-"+t),u;return u=f[i],u||(u=f.last()),r.find("table td").removeClass("e-state-hover").removeClass("e-active"),n(u).hasClass("e-hide-"+t)||n(u).addClass("e-state-hover"),this._setActiveState(t,r),i},_setActiveState:function(i,r){var h=r.find("tbody tr td.e-"+i),f,l=this,u=-1,o,e;switch(i){case"hour":this._compareDate(this.model.value,this._datetimeValue)&&(o=this._localizeTime(this.timePicker._createObject("12:00:00 AM"),"HH:00"),e=n.trim(t.format(this.timePicker._createObject(this.model.value),"HH:00",this.model.locale)),u=(this.timePicker._parse(e)-this.timePicker._parse(o))/(this._interval*6e4),u=Math.floor(u));break;case"mins":if(this._compareDate(this.model.value,this._datetimeValue)&&this.model.value.getHours()===this._datetimeValue.getHours()){var s=new Date(this._datetimeValue.toString()).setMinutes(this.model.value.getMinutes()),e=n.trim(t.format(this.timePicker._createObject(s),"HH:mm",this.model.locale)),c=n.trim(t.format(this.timePicker._createObject(s),"HH:00",this.model.locale));u=(this.timePicker._parse(e)-this.timePicker._parse(c))/(this.model.timeDrillDown.interval*6e4);u=Math.ceil(u)}}f=h[u];f&&(r.find("table td").removeClass("e-active"),n(f).removeClass("e-state-hover").addClass("e-active"))},_compareDate:function(n,t){var i=new Date(n.toString()).setHours(0,0,0,0),r=new Date(t.toString()).setHours(0,0,0,0);return+i==+r?!0:!1},_updateInput:function(n){var r=+new Date<+this.model.minDateTime||+new Date>+this.model.maxDateTime?this.model.minDateTime:(new Date).setHours(0,0,0,0),t=this._getDate()||new Date(r),i=this._getTime()||this.timePicker._createObject(r);this.model.value=new Date(t.getFullYear(),t.getMonth(),t.getDate(),i.getHours(),i.getMinutes(),i.getSeconds());this._updateDateTime();this._raiseChangeEvent();this._updateModel(n,!0);n&&(n.cancel=!0)},_updateDateTime:function(){this.isValidState=!0;var n=this._objectToString(this.model.value);this.element.val(n);this._removeWatermark()},_refreshTimes:function(n){var i=this._getDateObj(n.value,this.datePicker.model.dateFormat),r,f,u;if(!i)return!1;this.isValidState=!0;this._compare(i,this._setEmptyTime(this.model.minDateTime))?(r=this._getFormat(this.model.minDateTime,this.timePicker.model.timeFormat),u=this._getTime(),this.timePicker.option("minTime",r),this.model.enableStrictMode||this._updateInput()):this.timePicker.option("minTime",this._defaultMinVal());this._compare(i,this._setEmptyTime(this.model.maxDateTime))?(f=this._getFormat(this.model.maxDateTime,this.timePicker.model.timeFormat),u=this._getTime(),this.timePicker.option("maxTime",f),this.model.enableStrictMode||this._updateInput()):this.timePicker.option("maxTime",this._defaultMaxVal());this.timePicker._changeActiveEle();t.isNullOrUndefined(this.model.disableDateTimeRanges)||this._setDisabledTimeRanges(n)},_setDisabledTimeRanges:function(n){var t=n?n.value:this._setEmptyTime(this.model.value);this._between=[];this._initDisableTimeRanges(t);this._datesDisabled||(this._disableBetweenDates(),this.datePicker.option("blackoutDates",this._between))},_defaultMinVal:function(){var n=(new Date).setHours(0,0,0,0);return t.format(this.timePicker._createObject(n),this.timePicker.model.timeFormat,this.timePicker.model.locale)},_defaultMaxVal:function(){var n=(new Date).setHours(23,59,59,59);return t.format(this.timePicker._createObject(n),this.timePicker.model.timeFormat,this.timePicker.model.locale)},_updateValues:function(){var n=this.model.enableStrictMode&&this.model.value==null?this.element.val():this.model.value;this.model.value!=null&&(this.datePicker.option("value",this.model.value),this.timePicker.option("value",this.model.value));this._setValue(n);this._validateMinMax();this._preVal=this.element.val();this._checkErrorClass()},_specificFormat:function(){var i=t.globalize._getDateParseRegExp(t.globalize.findCulture(this.model.locale).calendar,this.model.dateTimeFormat);return n.inArray("dddd",i.groups)>-1||n.inArray("ddd",i.groups)>-1},_changeEditable:function(t){var i=t?"_on":"_off";if(this.element.is(":input")){if(t)this.model.readOnly||this.element.attr("readonly",!1),this.element.off("mousedown",n.proxy(this._showhidePopup,this));else{this.model.readOnly||this.element.attr("readonly","readonly");this.element.on("mousedown",n.proxy(this._showhidePopup,this))}this[i](this.element,"blur",this._targetBlur);this[i](this.element,"focus",this._targetFocus);this[i](this.element,"keydown",this._keyDownOnInput)}this._change("allowEdit",t)},_setValue:function(n){return n&&(typeof JSON!="object"||JSON.stringify(n)!=="{}")?typeof n=="string"?this._extISORegex.exec(n)||this._basicISORegex.exec(n)?this._checkObject(this._dateFromISO(n)):(this.element.val(n),this._updateModel(),this._validateMinMax(),this._checkStrictMode(),this.wrapper.addClass("e-valid")):n instanceof Date&&this._isValidDate(n)&&this._checkObject(n):(this.element.val(""),this.model.value=null,this.isValidState=!0,this.wrapper.removeClass("e-valid")),t.isNullOrUndefined(this.model.disableDateTimeRanges)||this._validateDisableRanges(),this._checkErrorClass(),this.model.value},_checkObject:function(n){n instanceof Date&&this._isValidDate(n)&&(this.model.value=n,this._updateDateTime(),this._validateMinMax(),this._checkStrictMode())},_dateFromISO:function(n){var i=this._extISORegex.exec(n)||this._basicISORegex.exec(n),c="",l="",a="",v,e,o,f,r,t,s,u,h,y;if(i){for(e=0;e<this._dates.length;e++)if(this._dates[e][1].exec(i[1])){c=this._dates[e][0];break}if(i[3])for(o=0;o<this._times.length;o++)if(this._times[o][1].exec(i[3])){l=(i[2]||" ")+this._times[o][0];break}for(i[4]&&this._zeroRegex.exec(i[4])&&(a="Z"),v=c+l+a,f=v.match(this._tokens),t=[],u=0;u<f.length;u++)h=f[u],s=this._checkLiteral(f[u]),y=this._numberRegex[s?f[u].toLowerCase():h.length]||new RegExp("^\\d{1,"+h.length+"}"),r=n.match(y),r&&(n.substr(0,n.indexOf(r))>=0&&!s&&(f[u].indexOf("M")>=0?t.push(parseInt(r[0])-1):t.push(parseInt(r[0]))),n=n.slice(n.indexOf(r[0])+r[0].length));return i[4]=="Z"?new Date(Date.UTC.apply(null,t)):new Date(t[0],t[1],t[2],t[3],t[4],t[5])}return new Date(n+"")},_checkLiteral:function(n){var t=n.toLowerCase();return t=="t"||t=="z"||t==":"||t=="-"?!0:!1},_validateValue:function(n){var r=t.parseDate(n,this.model.dateTimeFormat,this.model.locale),u=null;this.timePicker!=i&&(u=this._getFormat(r,this.timePicker.model.timeFormat));!r||r<this.model.minDateTime||r>this.model.maxDateTime||!t.isNullOrUndefined(this.timePicker)&&this.timePicker._ensureTimeRange(u)?(this.model.value=null,this._change("value",this.model.value),this.isValidState=!1):(this._change("value",this.model.value),this.isValidState=!0)},_validateMinMax:function(){var i,n,t;if(i=this.model.value?this._stringToObject(this.model.value):null,n=this.model.minDateTime?this._stringToObject(this.model.minDateTime):this.defaults.minDateTime,t=this.model.maxDateTime?this._stringToObject(this.model.maxDateTime):this.defaults.maxDateTime,!i||!n||!t)return!1;n>t&&(this.model.minDateTime=this.model.maxDateTime);i<n&&(this.model.enableStrictMode?this.model.enableStrictMode&&(this.popup&&(this.datePicker.option("minDate",this._getFormat(n,this.datePicker.model.dateFormat)),this.timePicker.option("minTime",this._getFormat(n,this.timePicker.model.timeFormat))),this.isValidState=!1):(this._setValue(n),this.isValidState=!0));i>t&&(this.model.enableStrictMode?this.model.enableStrictMode&&(this.popup&&(this.datePicker.option("maxDate",this._getFormat(t,this.datePicker.model.dateFormat)),this.timePicker.option("maxTime",this._getFormat(t,this.timePicker.model.timeFormat))),this.isValidState=!1):(this._setValue(t),this.isValidState=!0));i<n||i>t||(this.isValidState=!0)},_checkProperties:function(){this.model.readOnly&&this._readOnly(!0);this.model.showRoundedCorner&&this._setRoundedCorner(!0);this.model.enableRTL&&this._setRtl(!0);this.model.enabled&&this._enabled(!0);this.model.enabled?this.model.enabled&&this.element.hasClass("e-disable")&&this._enabled(!0):this._enabled(!1);this.model.name=this._options.name?this.model.name:this.element.attr("name")?this.element.attr("name"):this.element[0].id;this.element.attr("name",this.model.name);this._checkStrictMode();this._checkErrorClass();this._setWaterMark()},_checkStrictMode:function(){this.model.enableStrictMode?this.model.enableStrictMode&&(this.isValidState||(this.model.value=null,this.isValidState=!1)):this.isValidState||(this.model.value<this.model.minDateTime?(this.element.val(this._objectToString(this.model.minDateTime)),this.model.value=this.model.minDateTime,this.isValidState=!0):this.model.value>this.model.maxDateTime?(this.element.val(this._objectToString(this.model.maxDateTime)),this.model.value=this.model.maxDateTime,this.isValidState=!0):(this.model.value="",this.element.val(""),this.isValidState=!0))},_targetFocus:function(n){n.preventDefault();this.isFocused=!0;this.wrapper.addClass("e-focus");this.wrapper.removeClass("e-error");this._isSupport||this._hiddenInput.css("display","none");this._prevDateTimeVal=this.element.val();this.model.showPopupButton||this.model.readOnly||this._showResult();this.model.showPopupButton||this._on(this.element,"click",this._elementClick);!this.model.showPopupButton&&this.model.readOnly&&this._off(this.element,"click",this._elementClick);this._trigger("focusIn",{value:this.model.value});this.wrapper.addClass("e-valid")},_targetBlur:function(){var n,i;this.isFocused=!1;this.wrapper.removeClass("e-focus");this.model.showPopupButton||this._hideResult();n=t.parseDate(this.element.val(),this.model.dateTimeFormat,this.model.locale);n&&!this.model.enableStrictMode&&(n<this.model.minDateTime||n>this.model.maxDateTime)&&(n=n<this.model.minDateTime?this.model.minDateTime:this.model.maxDateTime,this.element.val(this._objectToString(n)));i=t.parseDate(this.element.val(),this.model.dateTimeFormat,this.model.locale);i!=null||this.model.enableStrictMode||(this._prevDateTimeVal==null||this.element.val()==""?this.element.val(""):this.element.val(this._preVal));this._valueChange();this.model.enableStrictMode?this.element.val()!=""&&this._validateValue(this.element.val()):this.isValidState?this._prevDateTimeVal=this.element.val():(this.element.val(this._prevDateTimeVal),this._preVal=this._prevDateTimeVal,this.model.value=this._stringToObject(this._prevDateTimeVal),this.isValidState=!0);this._isSupport||this.element.val()!=""||this._hiddenInput.css("display","block");this._checkErrorClass();this.model.showPopupButton||this._off(this.element,"click",this._elementClick);this._trigger("focusOut",{value:this.model.value});t.isNullOrUndefined(this.model.value)?this.wrapper.removeClass("e-valid"):this.wrapper.addClass("e-valid");this._previousDateUpdate()},_previousDateUpdate:function(){var n=t.parseDate(this._prevDateTime,this.model.dateTimeFormat),i=t.parseDate(this.element.val(),this.model.dateTimeFormat);return+n==+i||(this._preValString=this._prevDateTime,this._prevDateTime=this.element.val()),this._preValString},_elementClick:function(){this.isPopupOpen||this._showResult()},_keyDownOnInput:function(n){switch(n.keyCode){case 40:n.altKey&&this._showhidePopup();break;case 37:case 39:this.model.timeDrillDown.enabled||n.altKey&&this.isPopupOpen&&(n.preventDefault(),this._addPrevNextFocus(n.keyCode==37));break;case 27:n.preventDefault();case 9:this._hideResult();break;case 13:var i=t.parseDate(this.element.val(),this.model.dateTimeFormat);if(i!=null||this.model.enableStrictMode||(this._prevDateTimeVal==null||this.element.val()==""?this.element.val(""):this.element.val(this._preVal)),this._valueChange(),!this.model.timeDrillDown.enabled){this._valueChange();this.model.enableStrictMode&&this._checkErrorClass();break}}},_addFocus:function(t){if(!t.hasClass("e-focus"))if(this._removeFocus(),t.addClass("e-focus"),t.hasClass("e-datepicker e-popup"))n(document).on("keydown",n.proxy(this.datePicker._keyboardNavigation,this.datePicker));else if(t.hasClass("e-timecontainer"))n(document).on("keydown",n.proxy(this.timePicker._keyDownOnInput,this.timePicker));else if(t.hasClass("e-time-hours"))n(document).on("keydown",n.proxy(this._keyDownOnHours,this));else if(t.hasClass("e-time-minitues"))n(document).on("keydown",n.proxy(this._keyDownOnMinutes,this));else if(t.hasClass("e-dt-button"))n(document).on("keydown",n.proxy(this._buttonClick,this))},_removeFocus:function(){var t=this._getFocusedElement();t.length>0&&(t.removeClass("e-focus"),t.hasClass("e-datepicker e-popup")?n(document).off("keydown",n.proxy(this.datePicker._keyboardNavigation,this.datePicker)):t.hasClass("e-timecontainer")?n(document).off("keydown",n.proxy(this.timePicker._keyDownOnInput,this.timePicker)):t.hasClass("e-time-hours")?n(document).off("keydown",n.proxy(this._keyDownOnHours,this)):t.hasClass("e-time-minitues")?n(document).off("keydown",n.proxy(this._keyDownOnMinutes,this)):t.hasClass("e-dt-button")&&n(document).off("keydown",n.proxy(this._buttonClick,this)))},_addPrevNextFocus:function(n){var i=this._getFocusedElement(),t;i.length>0?i.hasClass("e-datepicker e-popup")?t=n?this.popup.find(".e-dt-done"):this.popup.find(".e-timecontainer"):i.hasClass("e-timecontainer")?t=n?this.popup.find(".e-datecontainer >.e-datepicker.e-popup"):this.popup.find(".e-dt-today"):i.hasClass("e-dt-today")?t=n?this.popup.find(".e-timecontainer"):this.popup.find(".e-dt-now"):i.hasClass("e-dt-now")?t=n?this.popup.find(".e-dt-today"):this.popup.find(".e-dt-done"):i.hasClass("e-dt-done")&&(t=n?this.popup.find(".e-dt-now"):this.popup.find(".e-datecontainer >.e-datepicker.e-popup")):t=n?this.popup.find(".e-dt-done"):this.popup.find(".e-datecontainer >.e-datepicker.e-popup");this._addFocus(t)},_getFocusedElement:function(){return this.popup.children("div").find("div.e-focus")},_keyDownOnHours:function(n){var t;if(n.keyCode==37||n.keyCode==38||n.keyCode==39||n.keyCode==40||n.keyCode==13||n.keyCode==36||n.keyCode==35){n.preventDefault&&n.preventDefault();t={row:null,col:null};t.col=this._sfTimeHour.find("tbody tr td.e-state-hover").index();t.row=this._sfTimeHour.find("tbody tr td.e-state-hover").parent().index();t.col=t.col!=-1?t.col+1:this._sfTimeHour.find("tbody tr td.e-active").index()+1;t.row!=-1?(t.row=t.row+1,this.model.timeDrillDown.showMeridian&&this._sfTimeHour.find("tbody tr td.e-state-hover").hasClass("e-hour-pm")&&(t.row=t.row+2)):(t.row=this._sfTimeHour.find("tbody tr td.e-active").parent().index()+1,this.model.timeDrillDown.showMeridian&&this._sfTimeHour.find("tbody tr td.e-active").hasClass("e-hour-pm")&&(t.row=t.row+2));var f=this._sfTimeHour.find("table")[0].className,i,r=this._sfTimeHour.find("tbody.e-timepicker-hours tr").length,u=this.model.timeDrillDown.showMeridian?6:4;i=this._changeRowCol(t,n.keyCode,r,u,"hours",n.ctrlKey);n.ctrlKey||(this._hoverHour=this._sfTimeHour.find("tbody.e-timepicker-hours tr td").index(i));n.ctrlKey||(this._sfTimeHour.find("table td").removeClass("e-state-hover"),i.addClass("e-state-hover"))}},_changeRowCol:function(t,i,r,u,f,e){var c,o,l,h={parent:null,child:null},s,y,a,v,p;switch(f){case"hours":c="tbody.e-timepicker-hours tr td.e-hour";h.parent=".e-timepicker-hours";h.child=".e-hour";l=".e-hide-hour";o=this._sfTimeHour;break;case"mins":c="tbody.e-timepicker-mins tr td.e-mins";h.parent=".e-timepicker-mins";h.child=".e-mins";l=".e-hide-mins";o=this._sfTimeMins;u=o.find("tbody"+h.parent+" tr:nth-child("+t.row+") td"+h.child).length}if(t.row<=0&&t.col<=0)return o.find(c+":not(.e-disable):first");y=this;switch(i){case 36:return o.find(c+":not(.e-disable):first");case 35:return o.find(c+":not(.e-disable):last");case 38:if(e)this._forwardNavHandler(null,o);else if(t.row>1)t.row-=1;else return this._processNextPrev(!0,o),o.find(c+":nth-child("+t.col+"):last");if(s=this._getCell(t,h,o).not(l),s.length<=0){if(s=this._findVisible(t,h,"up",o),s!==null)return s;this._processNextPrev(!0,o);s=o.find(c+":nth-child("+t.col+"):last")}return s;case 37:if(e)return this._processNextPrev(!0,o),o.find("tbody tr td.e-state-hover");if(t.col>1)t.col-=1;else if(t.row>1)t={row:t.row-1,col:u},f=="mins"&&(t.col=u=o.find("tbody"+h.parent+" tr:nth-child("+t.row+") td"+h.child).length);else return this._processNextPrev(!0,o),o.find(c+":not(.e-disable):last");if(s=this._getCell(t,h,o).not(l),s.length<=0){if(s=this._findVisible(t,h,"left",o),s!==null)return s;this._processNextPrev(!0,o);s=o.find(c+":not(.e-disable):last")}return s;case 39:if(e)return this._processNextPrev(!1,o),o.find("tbody tr td.e-state-hover");if(t.col<u)t.col+=1;else if(t.row<r)t={row:t.row+1,col:1};else return this._processNextPrev(!1,o),o.find(c+":not(.e-disable):first");if(s=this._getCell(t,h,o).not(l),s.length<=0){if(s=this._findVisible(t,h,"right",o),s!==null)return s;this._processNextPrev(!1,o);s=o.find(c+":not(.e-disable):first")}return s;case 40:if(!e){if(t.row<r)t.row+=1;else return this._processNextPrev(!1,o),o.find(c+":nth-child("+t.col+"):first");if(s=this._getCell(t,h,o).not(l),s.length<=0){if(s=this._findVisible(t,h,"down",o),s!==null)return s;this._processNextPrev(!1,o);s=o.find(c+":nth-child("+t.col+"):first")}return s}case 13:a=this._getCell(t,h,o);p=n(a)[0];v={type:null,target:a};f=="hours"&&this._hourNavHandler(v);f=="mins"&&this._minsNavHandler(v)}return this._getCell(t,h,o).not(l)},_getCell:function(t,i,r){var f=t.row,u;return this.model.timeDrillDown.showMeridian&&t.row>2&&r.hasClass("e-time-hours")&&(f=f-2),u=r.find("tbody"+i.parent+" tr:nth-child("+f+") td"+i.child+":nth-child("+t.col+")"),this.model.timeDrillDown.showMeridian&&u.length>0&&r.hasClass("e-time-hours")&&(u=t.row<=2?n(u[0]):n(u[1])),u},_findVisible:function(n,t,i,r){for(var e,f=n.col,u=n.row,s=t.child.slice(1,t.child.length),o=0;o>=0;o++){if(e=this._getCell({row:u,col:f},t,r),e.length<=0)return null;if(e.hasClass("e-disable")||!e.is(":visible")){if((i=="right"||i=="left"?i=="right"?f++:f--:i=="down"?u++:u--,u<=0||u>r.find("tbody"+t.parent+" tr").length)||(f>r.find("tbody"+t.parent+" tr:nth-child("+u+") td").length&&(u++,f=1),f<=0&&(u--,f=r.find("tbody"+t.parent+" tr:nth-child("+u+") td").length),u<=0||u>r.find("tbody"+t.parent+" tr").length))return null}else if(e.hasClass(s))return n.col=f,n.row=u,this._getCell(n,t,r)}},_keyDownOnMinutes:function(n){var t;if(n.keyCode==37||n.keyCode==38||n.keyCode==39||n.keyCode==40||n.keyCode==13||n.keyCode==36||n.keyCode==35){n.preventDefault&&n.preventDefault();t={row:null,col:null};t.col=this._sfTimeMins.find("tbody tr td.e-state-hover").index();t.row=this._sfTimeMins.find("tbody tr td.e-state-hover").parent().index();t.col=t.col!=-1?t.col+1:this._sfTimeMins.find("tbody tr td.e-active").index()+1;t.row=t.row!=-1?t.row+1:this._sfTimeMins.find("tbody tr td.e-active").parent().index()+1;var u=this._sfTimeMins.find("table")[0].className,i,r=this._sfTimeMins.find("tbody.e-timepicker-mins tr").length;i=this._changeRowCol(t,n.keyCode,r,4,"mins",n.ctrlKey);n.ctrlKey||(this._hoverHour=this._sfTimeMins.find("tbody.e-timepicker-mins tr td").index(i));n.ctrlKey||(this._sfTimeMins.find("table td").removeClass("e-state-hover"),i.addClass("e-state-hover"))}},_valueChange:function(n){this.model.enableStrictMode?this.model.enableStrictMode&&(this._preVal!=this.element.val()||this.model.value<this.model.minDateTime||this.model.value>this.model.maxDateTime)&&(this._updateModel(),this._raiseChangeEvent(n)):(this._preVal!=this.element.val()&&(this._preVal=this.element.val(),this._updateModel(),this._validateMinMax(),this._raiseChangeEvent(n)),this._setWaterMark())},_updateModel:function(n,r){var u,f;if(this._stopRefresh){this._stopRefresh=!1;return}u=this.element.val();u==""?(this.model.value=null,this._change("value",this.model.value),this.isValidState=!0):(f=n!=i&&n.type=="select"||this._prevDateTimeVal==this.element.val()?this.model.value:t.parseDate(u,this.model.dateTimeFormat,this.model.locale),f?(this.model.value=f,this.isValidState=!0,this._refreshPopup(r),this._specificFormat()&&this._prevDateTimeVal!=this.element.val()&&this.element.val(this._objectToString(this.model.value))):(this.model.value=null,this._change("value",this.model.value),this.isValidState=!1,this.model.enableStrictMode||this.element.val(this._objectToString(this.model.value))))},_refreshPopup:function(n){if(this.isValidState&&this.isPopupOpen){var t=this._setEmptyTime(this.model.value),i=this._setEmptyDate(this.model.value),r=this._getDate(),u=this._getTime();r&&this._compare(r,t)||this.datePicker.option("value",t);u&&this._compare(u,i)||n||this.timePicker.option("value",i)}},_buttonClick:function(n){if(n.keyCode==13){n.preventDefault();var t=this._getFocusedElement();t.hasClass("e-dt-today")?this._todayClick():t.hasClass("e-dt-now")?this._nowClick():t.hasClass("e-dt-done")&&this._doneClick()}},_todayClick:function(){if(!this.model.enabled||this.model.readOnly)return!1;this.datePicker.popup.find(".today").hasClass("e-active")&&this.datePicker.popup.children("table").hasClass("e-dp-viewdays")&&this.element.val()!=""&&this.isValidState||(this.datePicker._setCurrDate(),this._updateInput())},_nowClick:function(){var r;if(!this.model.enabled||this.model.readOnly)return!1;this.timePicker.setCurrentTime();var u=this.model.minDateTime,f=this.model.maxDateTime,n=this.datePicker.model.value,i=new Date;n=t.isNullOrUndefined(n)?new Date:n;r=new Date(n.getFullYear(),n.getMonth(),n.getDate(),i.getHours(),i.getMinutes(),i.getSeconds());r<u?this.timePicker.option("value",this.timePicker._localizeTime(u)):r>f&&this.timePicker.option("value",this.timePicker._localizeTime(f));this._updateInput()},_doneClick:function(){this._hideResult()},_iconClick:function(n){n.preventDefault();this.isFocused||t.isTouchDevice()||this.element.focus();this._showhidePopup();this.model.disableDateTimeRanges&&t.isNullOrUndefined(this.model.value)&&this._setDisabledTimeRanges(this.datePicker.model.value);this._isIE9&&this.popup.find(".e-popup-container").css("display","inline-block")},_setInitialSelection:function(){var r=this.timePicker.ul.find("li"),u,f,e,t,i,o;if(r.hasClass("e-hover")){this._calcScrollTop();return}u=this.timePicker._setEmptyDate(new Date);f=u;this.timePicker.minTime&&!this._compareTime(this._createObject(u),this.timePicker.minTime,!0)&&(f=this.timePicker.minTime);this.timePicker.maxTime&&!this._compareTime(this.timePicker.maxTime,this._createObject(u),!0)&&(f=this.timePicker.maxTime);e=r.first().html();t=(this.timePicker._parse(f)-this.timePicker._parse(e))/(this.timePicker.model.interval*6e4);t=Math.round(t);i=t==r.length?t:t+1;(i<0||i>r.length||isNaN(i))&&(i=1);o=n(this.timePicker.ul.find("li")[i-1]);o.addClass("e-hover");this._calcScrollTop()},_calcScrollTop:function(){var r=this.timePicker.ul.outerHeight(),n=this.timePicker.ul.find("li").outerHeight(),t,i;t=this.timePicker.ul.find("li.e-hover").index();i=n*t-(this.timePicker.popupList.outerHeight()-n)/2;this.timePicker.scrollerObj.setModel({scrollTop:i})},_showhidePopup:function(){if(this.model.readOnly)return!1;this.isPopupOpen?this._hideResult():this._showResult()},_showResult:function(){if((this.popup||this._renderDropdown(),this.isPopupOpen||!this.model.enabled)||(this._setRtl(this.model.enableRTL),this._setRoundedCorner(this.model.showRoundedCorner),this._trigger("beforeOpen",{element:this.popup})))return!1;this.isPopupOpen=!0;this.element.attr({"aria-expanded":"true"});this._setListPosition();this._checkForResponsive();var i=this;this.popup.slideDown(this.model.enableAnimation?200:0,function(){i._on(n(document),"mousedown",i._OnDocumentClick);i.model.timeDrillDown.enabled&&i._addFocus(i._dateContainer.find(".e-datepicker"));i.timePicker.model.value||i._setInitialSelection()});this._updateModel();this._updateTimeHeight();this._validateMinMax();this._on(n(window),"resize",this._OnWindowResize);this._on(t.getScrollableParents(this.wrapper),"scroll",this._hideResult);this._on(t.getScrollableParents(this.wrapper),"touchmove",this._hideResult);this._raiseEvent("open");this._initial&&(this.timePicker._refreshScroller(),this.timePicker._changeActiveEle(),this._initial=!1);this.wrapper.addClass("e-active")},_hideResult:function(i){if(!i||i.type!="touchmove"&&i.type!="scroll"||!(n(i.target).parents("#"+this.popup[0].id).length>0)){var r=this;if(!this.isPopupOpen||this._trigger("beforeClose",{element:this.popup}))return!1;if(this.isPopupOpen=!1,this.element.attr({"aria-expanded":"false"}),this._removeFocus(),this._popClose&&i&&i.type!="click"){this.isPopupOpen=!0;return}this.popup.slideUp(this.model.enableAnimation?100:0,function(){r.model&&(r.model.timeDrillDown.enabled&&(r._sfTimeHour.hide(),r._sfTimeMins.hide(),r._dateContainer.show()),t.isNullOrUndefined(r.model.value)||(r._datetimeValue=new Date(r.model.value.toString())))});this._raiseEvent("close");this._off(n(document),"mousedown",this._OnDocumentClick);this._off(n(window),"resize",this._OnWindowResize);this._off(t.getScrollableParents(this.wrapper),"scroll",this._hideResult);this._off(t.getScrollableParents(this.wrapper),"touchmove",this._hideResult);this.wrapper.removeClass("e-active")}},_setListPosition:function(){var r=this.wrapper,i=this._getOffset(r),s,v=n(document).scrollTop()+n(window).height()-(i.top+n(r).outerHeight()),h=i.top-n(document).scrollTop(),u=this.popup.outerHeight(),c=this.popup.outerWidth(),f=i.left,o=r.outerHeight(),l=(o-r.height())/2,y=this._getZindexPartial(),e=3,p=this.model.popupPosition,a;a=this.model.popupPosition==t.PopupPosition.Bottom?(u<v||u>h?i.top+o+e:i.top-u-e)-l:(u>h?i.top+o+e:i.top-u-e)-l;s=n(document).scrollLeft()+n(window).width()-f;(this.model.enableRTL||c>s&&c<f+r.outerWidth())&&(f-=this.popup.outerWidth()-r.outerWidth());this.popup.css({left:f+"px",top:a+"px","z-index":y})},_getOffset:function(n){return t.util.getOffset(n)},_OnDocumentClick:function(t){this.model&&(n(t.target).is(this.popup)||n(t.target).parents(".e-datetime-popup").is(this.popup)||n(t.target).is(this.wrapper)||n(t.target).parents(".e-datetime-wrap").is(this.wrapper)?(n(t.target).is(this.popup)||n(t.target).parents(".e-datetime-popup").is(this.popup))&&(t.preventDefault(),n(t.target).parents(".e-datepicker").length>0?this._addFocus(n(t.target).parents(".e-datepicker")):n(t.target).parents(".e-timecontainer").length>0?this._addFocus(n(t.target).parents(".e-timecontainer")):n(t.target).hasClass("e-dt-button")?this._addFocus(n(t.target)):n(t.target).parents(".e-time-hours").length>0?this._addFocus(n(t.target).parents(".e-time-hours")):n(t.target).parents(".e-time-minitues").length>0?this._addFocus(n(t.target).parents(".e-time-minitues")):this._removeFocus()):this._hideResult())},_OnWindowResize:function(){this._setListPosition();this._checkForResponsive();this._updateTimeHeight()},_raiseChangeEvent:function(i){var e=t.parseDate(this._prevDateTimeVal,this.model.dateTimeFormat),u=t.parseDate(this.element.val(),this.model.dateTimeFormat),f,r;+e==+u?this._prevDateTimeVal!=this.element.val()&&(r={prevDateTime:this._prevDateTimeVal,value:this.element.val(),isValidState:this.isValidState},this._prevDateTimeVal=this.element.val(),this._trigger("_change",r)):(this._preVal=this.element.val(),r={prevDateTime:this._prevDateTimeVal,value:this.element.val(),isInteraction:!i,isValidState:this.isValidState},this.timePicker&&this.timePicker.model?(f=this._getFormat(u,this.timePicker.model.timeFormat),this.timePicker._ensureTimeRange(f)?(this._prevDateTimeVal="",this.model.value=null,this.isValidState=!1):this._prevDateTimeVal=this.element.val()):this._prevDateTimeVal=this.element.val(),this._trigger("_change",r),r.value=n.trim(this.element.val())==""?null:this.element.val(),r.value=this._formatter(this.model.value,this.model.dateTimeFormat),this._trigger("change",r))},_formatter:function(n,i){var r=this._checkFormat(i);return t.format(n,r,this.model.locale)},_raiseEvent:function(n){var i=this._previousDateUpdate();return this.element!=null&&this.model[n]?this._trigger(n,{prevDateTime:t.isNullOrUndefined(i||this._preValString)?"":i||this._preValString,value:this.element.val()}):!1},_getDateTimeFormat:function(){var n=t.preferredCulture(this.model.locale).calendar.patterns;this.model.dateTimeFormat||(this.model.dateTimeFormat=n.d+" "+n.t);this.model.timeDisplayFormat||(this.model.timeDisplayFormat=n.t)},_getZindexPartial:function(){return t.util.getZindexPartial(this.element,this.popup)},_checkErrorClass:function(){this.isValidState?this.wrapper.removeClass("e-error"):this.wrapper.addClass("e-error")},_getDate:function(){return this.datePicker.model.value},_getTime:function(){return this._getDateObj(this.timePicker.model.value,this.timePicker.model.timeFormat)},_setEmptyTime:function(n){var t=new Date(n);return t.setMilliseconds(0),t.setSeconds(0),t.setMinutes(0),t.setHours(0),t},_setEmptyDate:function(n){var t=new Date(n);return t.setDate(1),t.setMonth(0),t.setFullYear(2e3),t},_objectToString:function(n){return this._getFormat(n,this.model.dateTimeFormat)},_stringToObject:function(n){return this._getDateObj(n,this.model.dateTimeFormat)},_getFormat:function(n,i){if(n instanceof Date){var r=this._checkFormat(i);return t.format(n,r,this.model.locale)}return n},_checkFormat:function(n){var i=this,r=this._regExp();return n.replace(r,function(n){return n==="/"?t.preferredCulture(i.model.locale).calendars.standard["/"]!=="/"?"'/'":n:n})},_regExp:function(){return/\/dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|HH|H|hh|h|mm|m|fff|ff|f|tt|ss|s|zzz|zz|z|gg|g|"[^"]*"|'[^']*'|[/]/g},_getDateObj:function(n,i){var o,f;if(typeof n=="string"){if(o=this._checkFormat(i),f=t.parseDate(n,o,this.model.locale),f!=null)return f;if(n!=""&&n!=null){var e,r=/^\s*(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d):(\d\d).*Z\s*$/.exec(n),u=new Date;if(r&&(u=new Date,e=+r[2],u.setUTCFullYear(r[1],e-1,r[3]),u.setUTCHours(r[4],r[5],r[6]),e!=u.getUTCMonth()+1&&u.setTime()),this._isValidDate(u))return u}else return null}else return n},_compare:function(n,t){return n&&t&&n.getTime()==t.getTime()},_isValidDate:function(n){return n&&typeof n.getTime=="function"&&isFinite(n.getTime())},_change:function(n,t){this.popup&&(this.datePicker.option(n,t),this.timePicker.option(n,t))},_changeSkin:function(n){this.wrapper.removeClass(this.model.cssClass).addClass(n);this.popup.removeClass(this.model.cssClass).addClass(n);this._change("cssClass",n)},_localize:function(i){var u,r,f;if(this.model.locale=i,t.isNullOrUndefined(this._options.timeDisplayFormat)&&(this.model.timeDisplayFormat=""),t.isNullOrUndefined(this._options.dateTimeFormat)&&(this.model.dateTimeFormat=""),u=["AM","PM"],this._getDateTimeFormat(),this.timePicker.option("timeFormat",this.model.timeDisplayFormat),this._localizedLabels=this._getLocalizedLabels(),t.isNullOrUndefined(this._options)||(t.isNullOrUndefined(this._options.buttonText)||n.extend(this._localizedLabels.buttonText,this._options.buttonText),t.isNullOrUndefined(this._options.watermarkText)||(this._localizedLabels.watermarkText=this._options.watermarkText)),this._localizedLabelToModel(),this._buttonText(this._localizedLabels.buttonText),(this.isValidState||this.model.value instanceof Date&&this._isValidDate(this.model.value))&&this.element.val(this._objectToString(this.model.value)),this._preVal=this.element.val(),this._change("locale",i),this.model.startDay=this.datePicker.model.startDay,this._validateMeridian(),this._sfTimeHour.empty(),this._renderHourTable(),this.model.timeDrillDown.showMeridian)for(r=0;r<2;r++)f=t.isNullOrUndefined(t.preferredCulture(this.model.locale).calendars.standard[u[r]])?"":t.preferredCulture(this.model.locale).calendars.standard[u[r]][0],n("span.e-hours-meridiantxt-"+u[r].toLowerCase(),this._sfTimeHour).text(f)},_setWaterMark:function(){if(this.element!=null&&this.element.hasClass("e-input"))return this._localizedLabels.watermarkText&&this.element.val()==""&&(this.isValidState=!0,this._checkErrorClass()),this._isSupport||this.element.val()!=""?n(this.element).attr("placeholder",this._localizedLabels.watermarkText):this._hiddenInput.css("display","block").val(this._localizedLabels.watermarkText),!0},_localizedLabelToModel:function(){this.model.watermarkText=this._localizedLabels.watermarkText;this.model.buttonText=this._localizedLabels.buttonText},_readOnly:function(n){this.model.readOnly=n;n?this.element.attr("readonly","readonly"):this.element.prop("readonly",!1);this._change("readOnly",n)},_setRoundedCorner:function(n){n?(this.container.addClass("e-corner"),this.popup&&this.popup.addClass("e-corner")):(this.container.removeClass("e-corner"),this.popup&&this.popup.removeClass("e-corner"));t.isNullOrUndefined(this.datePicker)||this.datePicker.option("showRoundedCorner",n);t.isNullOrUndefined(this.timePicker)||this.timePicker.option("showRoundedCorner",n)},_setRtl:function(n){n?(this.wrapper.addClass("e-rtl"),this.popup&&this.popup.addClass("e-rtl")):(this.wrapper.removeClass("e-rtl"),this.popup&&this.popup.removeClass("e-rtl"));this._change("enableRTL",n)},_enabled:function(n){n?(this.model.enabled=!1,this.enable()):(this.model.enabled=!0,this.disable())},_showButton:function(n){this.model.showPopupButton=n;n?(this.container.addClass("e-padding"),this._renderIcon()):(this.container.removeClass("e-padding"),this.datetimeIcon.remove(),this.datetimeIcon=null)},_buttonText:function(t){n.extend(this.model.buttonText,t);this.popup.find(".e-dt-today").html(this.model.buttonText.today);this.popup.find(".e-dt-now").html(this.model.buttonText.timeNow);this.popup.find(".e-dt-done").html(this.model.buttonText.done);this.popup.find(".e-timecontainer").find(".e-header").html(this.model.buttonText.timeTitle)},_checkForResponsive:function(){if(n(window).outerWidth()>200&&n(window).outerWidth()<=500)this.popup.hasClass("e-dt-responsive")||(this.popup.addClass("e-dt-responsive"),this.timePicker.option("popupWidth",this.datePicker.popup.outerWidth()),this.timePicker.option("popupHeight",98),this.timePicker._refreshScroller(),this.timePicker._changeActiveEle());else if(this.popup.hasClass("e-dt-responsive")){this.popup.removeClass("e-dt-responsive");this.timePicker.option("popupWidth",this.model.timePopupWidth);var t=this.datePicker.popup.height()-this.popup.find(".e-header").height();this.timePicker.option("popupHeight",t);this.timePicker._refreshScroller();this.timePicker._changeActiveEle()}},enable:function(){this.model.enabled||(this.element[0].disabled=!1,this.model.enabled=!0,this.element.prop("disabled",!1),this.wrapper.removeClass("e-disable"),this.element.removeClass("e-disable").attr("aria-disabled",!1),this._isSupport||this._hiddenInput.prop("disabled",!1),this.datetimeIcon&&this.datetimeIcon.removeClass("e-disable").attr("aria-disabled",!1),this._isIE8&&this.datetimeIcon&&this.datetimeIcon.children().removeClass("e-disable"),this.popup&&(this.popup.children("div").removeClass("e-disable").attr("aria-disabled",!1),this._change("enabled",!0)))},disable:function(){this.model.enabled&&(this.element[0].disabled=!0,this.model.enabled=!1,this.wrapper.addClass("e-disable"),this.element.addClass("e-disable").attr("aria-disabled",!0),this.element.attr("disabled","disabled"),this._isSupport||this._hiddenInput.attr("disabled","disabled"),this.datetimeIcon&&this.datetimeIcon.addClass("e-disable").attr("aria-disabled",!0),this._isIE8&&this.datetimeIcon&&this.datetimeIcon.children().addClass("e-disable"),this._hideResult(),this._change("enabled",!1),this.popup&&(this.popup.children("div").addClass("e-disable").attr("aria-disabled",!0),this.datePicker.popup.removeClass("e-disable").attr("aria-disabled",!1),this.timePicker.popup.removeClass("e-disable").attr("aria-disabled",!1)))},getValue:function(){return this._objectToString(this.model.value)},setCurrentDateTime:function(){this.model.readOnly||this._setValue(new Date)},show:function(){this._showResult()},hide:function(){this._hideResult()},_wireEvents:function(){if(this.model.allowEdit&&(this._on(this.element,"focus",this._targetFocus),this._on(this.element,"blur",this._targetBlur),this._on(this.element,"keydown",this._keyDownOnInput)),!this.model.allowEdit){this.element.attr("readonly","readonly");this.element.on("mousedown",n.proxy(this._showhidePopup,this))}},_getLocalizedLabels:function(){return t.getLocalizedConstants(this.sfType,this.model.locale)}});t.DateTimePicker.Locale=t.DateTimePicker.Locale||{};t.DateTimePicker.Locale["default"]=t.DateTimePicker.Locale["en-US"]={watermarkText:"Select datetime",buttonText:{today:"Today",timeNow:"Time Now",done:"Done",timeTitle:"Time"}};t.PopupPosition={Bottom:"bottom",Top:"top"}}(jQuery,Syncfusion),function(n,t,i){t.widget("ejDropDownList","ej.DropDownList",{element:null,model:null,validTags:["select","input"],_addToPersist:["value","text","selectedIndex","selectedItemIndex","selectedItems","selectedIndices","popupWidth","popupHeight","itemValue"],_setFirst:!1,_rootCSS:"e-dropdownlist",angular:{require:["?ngModel","^?form","^?ngModelOptions"]},_requiresID:!0,defaults:{cssClass:"",value:null,htmlAttributes:{},text:null,itemValue:"",itemsCount:0,dataSource:null,delimiterChar:",",query:null,fields:{id:null,text:null,value:null,category:null,groupBy:null,imageUrl:null,imageAttributes:null,spriteCssClass:null,htmlAttributes:null,selected:null,tableName:null},locale:"en-US",watermarkText:null,height:"",loadOnDemand:!1,width:"",popupHeight:"152px",popupWidth:"auto",popupTarget:"body",maxPopupHeight:null,minPopupHeight:"20",maxPopupWidth:null,minPopupWidth:"0",targetID:null,template:null,headerTemplate:null,selectedItemIndex:-1,selectedIndex:-1,disableItemsByIndex:null,enableItemsByIndex:null,selectedItems:[],selectedIndices:[],cascadeTo:null,enablePopupResize:!1,allowVirtualScrolling:!1,virtualScrollMode:"normal",showRoundedCorner:!1,showPopupOnLoad:!1,enableRTL:!1,enabled:!0,filterType:"contains",sortOrder:"ascending",caseSensitiveSearch:!1,showCheckbox:!1,checkAll:!1,uncheckAll:!1,enablePersistence:!1,enableFilterSearch:!1,enableServerFiltering:!1,enableIncrementalSearch:!0,incrementalSearchDelay:500,readOnly:!1,enableAnimation:!1,multiSelectMode:"none",allowGrouping:!1,enableSorting:!1,validationRules:null,validationMessage:null,actionBegin:null,actionComplete:null,actionFailure:null,actionSuccess:null,create:null,popupHide:null,popupShown:null,beforePopupShown:null,beforePopupHide:null,popupResizeStart:null,popupResize:null,popupResizeStop:null,change:null,select:null,dataBound:null,search:null,checkChange:null,cascade:null,destroy:null},dataTypes:{cssClass:"string",itemsCount:"number",watermarkText:"string",template:"string",disableItemsByIndex:"string",enableItemsByIndex:"string",enableIncrementalSearch:"boolean",incrementalSearchDelay:"number",cascadeTo:"string",delimiterChar:"string",showRoundedCorner:"boolean",showPopupOnLoad:"boolean",enableRTL:"boolean",enablePersistence:"boolean",allowVirtualScrolling:"boolean",virtualScrollMode:"enum",enabled:"boolean",readOnly:"boolean",multiSelectMode:"enum",dataSource:"data",query:"data",fields:"data",selectedItems:"array",selectedIndices:"array",enableAnimation:"boolean",allowGrouping:"boolean",enableSorting:"boolean",validationRules:"data",validationMessage:"data",htmlAttributes:"data",locale:"string"},observables:["value","selectedItemIndex","selectedIndex","dataSource"],value:t.util.valueFunction("value"),selectedItemIndex:t.util.valueFunction("selectedItemIndex"),selectedIndex:t.util.valueFunction("selectedIndex"),_dataSource:t.util.valueFunction("dataSource"),enable:function(){if(this._visibleInput.hasClass("e-disable")){this.target.disabled=!1;this.model.enabled=!0;this.container.removeClass("e-disable");this._visibleInput.removeClass("e-disable");this.dropdownbutton.removeClass("e-disable");t.isNullOrUndefined(this.popupListWrapper)||this.popupListWrapper.removeClass("e-disable");this._isIE8&&this.drpbtnspan.removeClass("e-disable");this.container.on("mousedown",n.proxy(this._OnDropdownClick,this));this.model.multiSelectMode=="visualmode"&&this._ulBox.removeClass("e-disable")}this._wireEvents();this.wrapper.attr("tabindex",0)},disable:function(){this._visibleInput.hasClass("e-disable")||(this.target.disabled=!0,this.model.enabled=!1,this.container.addClass("e-disable"),this._visibleInput.addClass("e-disable"),t.isNullOrUndefined(this.popupListWrapper)||this.popupListWrapper.addClass("e-disable"),this.dropdownbutton.addClass("e-disable"),this._isIE8&&this.drpbtnspan.addClass("e-disable"),this.model.multiSelectMode=="visualmode"&&this._ulBox.addClass("e-disable"),this.container.off("mousedown",n.proxy(this._OnDropdownClick,this)),this._unwireEvents(),this.wrapper.removeAttr("tabindex"),this._isPopupShown()&&this._hideResult())},getValue:function(){return this._visibleInput.val()},_setValue:function(n,i){t.isNullOrUndefined(n)||(this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),this.ultag.children().length!=0&&this._setDynamicSelectByVal(this,n,i))},_setDynamicSelectByVal:function(n,i,r){n._raiseEvents=!1;t.isNullOrUndefined(n.model.text)||n.unselectItemByText(n.model.text,r);n._raiseEvents=!0;n.model.allowVirtualScrolling&&n._addValue(i);n.selectItemByValue(i)},_addValue:function(n){var i,h,r,f,o,e,s,u;if(this.model.itemsCount>0&&n!=""&&(this._checkValue=!0,i=typeof n=="object"?n:typeof n=="number"?[n]:n.split(this.model.delimiterChar),t.isNullOrUndefined(this._mapFields())||this._mapFields(),h=this.mapFld._value,t.isNullOrUndefined(this._rawList)||this._addListItems(i,this._rawList,"local"),this._checkValue))if(r=this._dataSource(),t.DataManager&&r instanceof t.DataManager)if(r.dataSource.offline&&r.dataSource.json&&r.dataSource.json.length>0)this._addListItems(i,r.dataSource.json,"remote");else if(f=this,o=n,e=this.model.fields.value?this.model.fields.value:this.model.fields.text,this._isSingleSelect())r.executeQuery(t.Query().select(e,this.model.fields.text).where(e,"equal",o,!1)).done(function(n){f._addListItems(i,n.result,"remote");f.selectItemByValue(o)});else for(u=0;u<i.length;u++)r.executeQuery(t.Query().select(e,this.model.fields.text).where(e,"equal",i[u],!1)).done(function(n){s=n.result.slice(0,u);u==i.length&&(f._addListItems(i,s,"remote"),f.selectItemByValue(o))});else this._addListItems(i,r,"remote")},_addListItems:function(n,t,i){for(var r,f=this.mapFld._value==this.model.fields.value?this.mapFld._value:this.model.fields.text,u=0;u<n.length;u++)for(r=0;r<t.length;r++)i=="local"&&t[r][f]==n[u]&&(this._checkValue=!1),i=="remote"&&t[r][f]==n[u]&&this.addItem(t[r])},_setText:function(n){t.isNullOrUndefined(n)||(this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),this._raiseEvents=!1,this.unselectItemByText(this.model.text),this._raiseEvents=!0,this.selectItemByText(n))},_setItemValue:function(n){this.model.itemValue=n},_changeWatermark:function(n){if(!this.model.enabled)return!1;this._isWatermark?this._visibleInput.attr("placeholder",n):this._hiddenSpan.text(n)},hidePopup:function(){if(!this.model.enabled)return!1;this.ultag.find("li").length>0&&this._hideResult()},showPopup:function(){if(!this.model.enabled)return!1;var n=t.isNullOrUndefined(this.ultag)?this.model.loadOnDemand?!0:!1:this.ultag.find("li").length>0;n&&this._showResult()},clearText:function(){this._clearTextboxValue();this._isWatermark||this._setWatermark()},addItem:function(i){var u,r,f,o,e,s;if((this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),!this.model.enabled||!i)||(this._mapFields(),u=n.isArray(i)?i:[i],u.length<1))return!1;for(r=this.mapFld,f={_id:null,_imageUrl:null,_imageAttributes:null,_spriteCSS:null,_text:null,_value:null,_htmlAttributes:null,_selected:null,_category:null},f._id=u[0][r._id]?r._id:"id",f._imageUrl=u[0][r._imageUrl]?r._imageUrl:"imageUrl",f._imageAttributes=u[0][r._imageAttributes]?r._imageAttributes:"imageAttributes",f._spriteCSS=u[0][r._spriteCSS]?r._spriteCSS:"spriteCssClass",f._text=u[0][r._text]?r._text:"text",f._value=u[0][r._value]?r._value:"value",f._htmlAttributes=u[0][r._htmlAttributes]?r._htmlAttributes:"htmlAttributes",f._selected=u[0][r._selected]?r._selected:"selected",f._category=u[0][r._category]?r._category:"groupBy",this._generateLi(u,f),o=this.dummyUl,e=0;e<u.length;e++)this._listItem(u[e],"add");this.model.showCheckbox?this._appendCheckbox(o,!0):this._isSingleSelect()||this._multiItemSelection(o,!0);this._virtualUl.append(n(this.dummyUl).clone(!0));this.ultag.append(this.dummyUl);this._isPopupShown()&&(s=this.scrollerObj?this.scrollerObj.scrollTop():0,this._refreshScroller(),this.scrollerObj&&this.scrollerObj.option("scrollTop",s))},_toArray:function(i,r){var u;return typeof i=="function"&&(i=t.util.getVal(i)),n.isArray(i)?u=i:typeof i=="string"?r&&(this.model.multiSelectMode=="visualmode"||this.model.multiSelectMode=="delimiter"||this.model.showCheckbox)?(u=this._getUpdatedListData(i),u.length==0&&(u=[i])):r?u=[i]:(u=this._getUpdatedListData(i),u.length==0&&(u=[i])):u=[i],u},_trim:function(t){return typeof t=="string"?n.trim(t):t},selectItemByIndex:function(n){this._selectItemByIndex(n)},selectItemsByIndices:function(n){this._selectItemByIndex(n)},_selectItemByIndex:function(i){var e,r,f,u;if(this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),this.listitems=this._getLi(),this._selectedIndices=n.map(this._selectedIndices,function(n){return parseInt(n)}),this.model.selectedItems=this.model.selectedIndices=this._selectedIndices,parseInt(i)==-1&&this.model.selectedItems.length>0)this._clearTextboxValue(),this._trigger("change",{text:this._visibleInput[0].value,selectedText:"",selectedValue:"",value:""});else for(e=this._toArray(i,!0),f=0;f<e.length;f++)if(r=parseInt(e[f]),r!=null&&r>=0){if(n.inArray(r,this._selectedIndices)==-1)for(u=0;u<this.listitems.length;u++)n(this.listitems[u]).hasClass("e-disable")||u==r&&(this.selectedIndexValue=u,this._activeItem=r,this._enterTextBoxValue())}else!this.model.showCheckbox&&this.model.multiSelectMode=="none"&&this.model.selectedItems.length>0&&(this._clearTextboxValue(),this._trigger("change",{text:this._visibleInput[0].value,selectedText:"",selectedValue:"",value:""}))},unselectItemsByIndices:function(n){this._unselectItemByIndex(n)},unselectItemByIndex:function(n){this._unselectItemByIndex(n)},_unselectItemByIndex:function(i){var r,f,e,u;for(this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),this._selectedIndices=n.map(this._selectedIndices,function(n){return parseInt(n)}),this.model.selectedItems=this.model.selectedIndices=this._selectedIndices,f=this._toArray(i,!0),this.listitems=this._getLi(),u=0;u<f.length;u++)for(e=parseInt(f[u]),r=0;r<this.listitems.length;r++)r==e&&(this.selectedIndexValue=r,this._activeItem=e,this._activeItem==this._aselectedItem&&(this._aselectedItem=null),this._removeTextBoxValue())},setSelectedValue:function(n){this.selectItemByValue(n)},selectItemByValue:function(i){var r,f,u;if(this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),this.listitems=this._getLi(),this.inputSearch&&this.inputSearch.val()!=""&&this.model.enableServerFiltering&&!t.isNullOrUndefined(this._searchresult)){for(f=this.model.fields&&this.model.fields.value?this.model.fields.value:"value",r=0;r<this._searchresult.length;r++)for(u=0;u<this.listitems.length;u++)n(this.listitems[u]).attr("data-value")==this._searchresult[r][f]&&(this._searchresult=null);this.addItem(this._searchresult)}t.isNullOrUndefined(i)?this._clearTextboxValue():(this._unselectText&&(this._unselectText=!1),this._selectUnSelectValue(i,"selectValue"))},_selectUnSelectValue:function(i,r,u,f){for(var e,h,s=this._toArray(i,!0),o=0;o<s.length;o++)for(e=0;e<this.listitems.length;e++)if(n(this.listitems[e]).hasClass("e-disable")||r!="selectValue"&&r!="selectText"){if(this._getAttributeValue(this.listitems[e])&&(r=="unselectValue"&&(this._selectedValue=this._getAttributeValue(this.listitems[e]),this._selectedValue=this._selectedValue==s[o]),r=="unselectText"&&(this.unselectedTextValue=this._isPlainType(this.popupListItems)?this.popupListItems[e]:this._getField(this.popupListItems[e],this.mapFld._text),this._selectedValue=this.unselectedTextValue==s[o]||f&&this.unselectedTextValue.toString().toLowerCase()==s[o].toString().toLowerCase(),this._selectedValue&&this._boxValue&&this.model.showCheckbox&&this.model.enableFilterSearch&&(this._activeItem=e,this._selectedValue=this._boxValue.indexOf(n(this._getActiveItem(this._activeItem)).attr("data-value"))==-1?!1:this._selectedValue)),this._selectedValue)){this._activeItem=e;this._activeItem==this._aselectedItem&&(this._aselectedItem=null);(this._visibleInput.val()!=this._checkedValues||u&&u.type=="keyup"||this.model.enablePersistence)&&this._removeTextBoxValue();break}}else if(r=="selectValue"&&(h=t.isNullOrUndefined(this._getAttributeValue(this.listitems[e]))?n(this.listitems[e]).text():this._getAttributeValue(this.listitems[e]),this._selectedValue=h==s[o]),r=="selectText"&&(this.selectedTextValue=this._isPlainType(this.popupListItems)?this.popupListItems[e]:this._getField(this.popupListItems[e],this.mapFld._text),this._selectedValue=this.selectedTextValue==s[o]||f&&this.selectedTextValue.toString().toLowerCase()==s[o].toString().toLowerCase()),this._selectedValue){this._activeItem=e;this._aselectedItem=this._activeItem;this._enterTextBoxValue();break}},unselectItemByValue:function(n){this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList();this.listitems=this._getLi();this._selectUnSelectValue(n,"unselectValue")},setSelectedText:function(n){this.selectItemByText(n)},selectItemByText:function(n,i){this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList();this.listitems=this._getLi();this._mapFields();t.isNullOrUndefined(n)?this._clearTextboxValue():this._selectUnSelectValue(n,"selectText",i)},unselectItemByText:function(n,t,i){this.listitems=this._getLi();this._mapFields();this._unselectText=!0;this._selectUnSelectValue(n,"unselectText",t,i)},getSelectedValue:function(){return this.element.val()},getSelectedItem:function(){var n,t=[];for(this.listitems=this._getLi(),n=0;n<this._selectedIndices.length;n++)t.push(this.listitems[this._selectedIndices[n]]);return t},getItemDataByValue:function(n){var r=this._toArray(n,!1),u=this.model.enableServerFiltering?t.isNullOrUndefined(this.resultList)?this._rawList:this._rawList.concat(this.resultList):this._rawList,i,f,o=[],e=this.model.fields&&this.model.fields.value?this.model.fields.value:"value",s;if(r.length>0&&(u.indexOf(r[0])>-1||u.indexOf(Number(r[0]))>-1))for(i=0;i<r.length&&(u.indexOf(r[i])>-1||u.indexOf(Number(r[i]))>-1);i++)o.push({text:r[i],value:r[i]});else for(u.length>0&&t.isNullOrUndefined(u[0][e])&&(s=this.model.fields&&this.model.fields.text?this.model.fields.text:"text",t.isNullOrUndefined(u[0][s])||(e=s)),i=0;i<r.length;i++)for(f=0;f<u.length;f++)(u[f][e]==r[i]||u[f][e]==Number(r[i]))&&o.push(u[f]);return o},getListData:function(){return this._rawList},getSelectedItemsID:function(){return this._selectedItemsID},disableItemsByIndices:function(n){this._getLi().length>0&&this._disableItemByIndex(n)},disableItemByIndex:function(n){this._getLi().length>0&&this._disableItemByIndex(n,!0)},_disableItemByIndex:function(i){var r,f,u;if(t.isNullOrUndefined(i)||typeof i!="string"&&typeof i!="number"||(i=i.toString().split(",")),this._isInteralCall||(this._initDisabledItems=i),!this.model.enabled)return!1;for(this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),r=this._toArray(i,!1),u=0;u<r.length;u++)r[u]==null||isNaN(parseInt(r[u]))||r.length>0&&!(n.inArray(parseInt(r[u]),this._disabledItems)>-1)&&(f=n.inArray(r[u],this._disabledItems),this._setClass(this._getLi()[parseInt(r[u])],"e-disable"),this._disabledItems.push(parseInt(r[u])),this.model.disableItemsByIndex=String(this._disabledItems.join(",")));this._prevDisabledItems=this._disabledItems},enableItemsByIndices:function(n){this._enableItemByIndex(n)},enableItemByIndex:function(n){this._enableItemByIndex(n)},_enableItemByIndex:function(i){var r,f,u;for(t.isNullOrUndefined(i)||typeof i!="string"&&typeof i!="number"||(i=i.toString().split(",")),this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),r=this._toArray(i,!1),this.model.enableItemsByIndex=i,u=0;u<r.length;u++)r.length>0&&n.inArray(parseInt(r[u]),this._disabledItems)>-1&&!isNaN(parseInt(r[u]))&&(f=n.inArray(parseInt(r[u]),this._disabledItems),this._removeClass(this._getLi()[parseInt(r[u])],"e-disable"),this._disabledItems.splice(f,1));this.model.enableItemsByIndex=null;this.model.disableItemsByIndex=this._disabledItems.join(this.model.delimiterChar)},_validateDelimiter:function(n){if(this._trim(n).length==1)if(!/^[a-zA-Z0-9]+$/.test(n))return n;return","},_removeText:function(i){var f,e,r,u;this.removeVal=(this.checkChange||this.delIconClick)&&(this.model.fields.text||this.model.fields.value||this.mapFld._text||this.mapFld._value)?!1:!0;this._unselectText&&(this.removeVal=!1,this._unselectText=!1);f=this._getUpdatedListData(this.element[0].value,!0);this.removeVal=(this.checkChange||this.delIconClick)&&(this.model.fields.text||this.model.fields.value);this._unselectText||(this._unselectText=!0);e=this._getUpdatedListData(this._visibleInput[0].value,this.model.selectedIndices.length===this._visibleInput[0].value.split(this.model.delimiterChar).length?!0:!1);this._unselectText=!1;r=this.getItemDataByValue(i)[0];u=this.model.fields&&this.model.fields.text?this.model.fields.text:"text";n.inArray(i,f)>=0&&f.splice(n.inArray(i,f),1);!t.isNullOrUndefined(r[u])&&n.inArray(this._decode(r[u]).toString(),e)>=0&&e.splice(n.inArray(this._decode(r[u]).toString(),e),1);n.inArray(i,this._valueContainer)>=0&&this._valueContainer.splice(n.inArray(i,this._valueContainer),1);!t.isNullOrUndefined(r[u])&&n.inArray(r[u].toString(),this._textContainer)>=0&&this._textContainer.splice(n.inArray(r[u].toString(),this._textContainer),1);this.element[0].value=f.join(this.model.delimiterChar);this._visibleInput[0].value=e.join(this.model.delimiterChar);this.removeVal=!1},_getUpdatedListData:function(n,i){var e,u=this.getListData(),o;if(i)if(e=[],this.model.fields.value||this.mapFld._value)e=n.split(this.model.delimiterChar);else for(o=0;o<this.model.selectedIndices.length;o++)e.push(u[this.model.selectedIndices[o]][this.model.fields.text?this.model.fields.text:"text"]);else e=n.split(this.model.delimiterChar);var f,r=0,h=0,c=[],l=[],s="";if(this.model.fields.value||this.model.fields.text?(f=this.model.fields.text,this.removeVal||this._unselectText||(f=this.model.fields.value?this.model.fields.value:f)):(this.mapFld._text||this.mapFld._value)&&(f=this.mapFld._text,this.removeVal||this._unselectText||(f=this.mapFld._value?this.mapFld._value:f)),!t.isNullOrUndefined(u))while(r<u.length){if(s=i?f?this._decode(u[r][f]):this._decode(u[r].text?u[r].text:u[r]):f?this._decode(u[r][f]):this._decode(u[r].value?u[r].value:u[r]),e.indexOf(s)!==-1)i&&(e[e.indexOf(s)]=h),c.push(s),h++;else if(!i&&e==="")break;r++}for(r=0;r<h;)i?l[e.indexOf(r)]=c[r]:l[r]=c[r],r++;return l},_addText:function(t){var o,r,u,i,e,s,h,c,f;if(this._checkContains(this._hiddenValue)||this.value()&&(o=this.value().split(","),o.indexOf(t)>0))return!1;for(r=["element","_visibleInput"],i=0;i<r.length;i++)u=r[i]=="element"?this._hiddenValue:t,e=r[i]=="element"?this._valueContainer:this._textContainer,this[r[i]][0].value&&this[r[i]][0].value!=""?(f=this[r[i]][0].value.split(this.model.delimiterChar),r[i]=="element"&&n.inArray(u,f)===-1?f.push(u):r[i]=="_visibleInput"&&(s=this.model.fields.text?this.model.fields.text:"text",n.inArray(u,f)!=-1?(h=this.popupListItems.filter(function(n){return n[s]==u}),c=f.filter(function(n){return n==u}),h.length>c.length&&f.push(u)):f.push(u)),this[r[i]][0].value=f.join(this.model.delimiterChar)):u==""?this[r[i]][0].value=u:u!=""&&this[r[i]][0].value==""&&(n.inArray("",e)!=-1?(f=this[r[i]][0].value.split(this.model.delimiterChar),f.push(u),this[r[i]][0].value=f.join(this.model.delimiterChar)):this[r[i]][0].value=u),e.push(u)},_checkContains:function(n){if(this.contains=!1,this._rawList!==i&&(this.model.dataSource!==null||this.selectOptions!==i||this.model.targetID!==null))for(var t=0;t<this._valueContainer.length;t++)if(this._parseValue(this._valueContainer[t])===this._parseValue(n)){this.contains=!0;break}return this.contains},_parseValue:function(n){return isNaN(parseInt(n))||this.mapFld&&typeof this._rawList[0][this.mapFld._value]=="string"?n:parseInt(n)},_updateLocalConstant:function(){this._localizedLabels=t.getLocalizedConstants("ej.DropDownList",this.model.locale)},_init:function(){var i=t.browserInfo();this._updateLocalConstant();this._isIE8=i.name=="msie"&&i.version=="8.0";this._textContent=this._isIE8?"innerText":"textContent";(this.element.is("input")&&(this.element.is("input[type=text]")||!this.element.attr("type"))||this.element.is("select"))&&(this._isWatermark="placeholder"in n(document.createElement("input")).attr("placeholder","")[0],this._id=this.element[0].id,this._initialize(),this._render(),this._addAttr(this.model.htmlAttributes),this._enabled(this.model.enabled),this._initValue=!1,this._checkboxValue=!1,this._unselectText=!1,this.model.validationRules!=null&&(this._initValidator(),this._setValidation()))},_initValidator:function(){this.element.closest("form").data("validator")||this.element.closest("form").validate()},_setValidation:function(){var r,f,i,u,e;if(this.element.closest("form").length!=0){this.element.rules("add",this.model.validationRules);r=this.element.closest("form").data("validator");r||(r=this.element.closest("form").validate());f=this.element.attr("name");r.settings.messages[f]={};for(i in this.model.validationRules)if(u=null,!t.isNullOrUndefined(this.model.validationRules[i])){if(t.isNullOrUndefined(this.model.validationRules.messages&&this.model.validationRules.messages[i])){r.settings.messages[f][i]=n.validator.messages[i];for(e in this.model.validationMessage)i==e?u=this.model.validationMessage[i]:""}else u=this.model.validationRules.messages[i];r.settings.messages[f][i]=u!=null?u:n.validator.messages[i]}}},_setInitialPopup:function(n){this.model.enabled&&!this.model.readOnly&&(n==!1?this._hideResult():this._showResult())},_changeSkin:function(n){this.wrapper.removeClass(this.model.cssClass).addClass(n);t.isNullOrUndefined(this.popupListWrapper)||this.popupListWrapper.removeClass(this.model.cssClass).addClass(n)},_setRTL:function(n){this.model.enableRTL!=n&&(this.model.enableRTL=n,this._RightToLeft(),t.isNullOrUndefined(this.popupListWrapper)||this._dropbtnRTL())},_changeHeight:function(n){this.wrapper.height(n);this._setListHeight()},_changeWidth:function(n){this.wrapper.width(n);this._setListWidth()},_setModel:function(r){var u,o,s,e,f;for(u in r)switch(u){case"dataSource":if(!this._isEqualDataSource(t.util.getVal(r[u]))){this.model.loadOnDemand&&(o=n("#"+this.element[0].id+"_popup_wrapper").get(0),o&&n(o).remove(),this.popupListWrapper=i,this.inputSearch=i);this._checkModelDataBinding(t.util.getVal(r[u]),this.model.query);this._refreshScroller();break}case"query":this._checkModelDataBinding(this._dataSource(),r[u]);break;case"fields":this.model.fields=n.extend(this.model.fields,r[u]);this._checkModelDataBinding(this._dataSource(),this.model.query);break;case"itemsCount":this.model.itemsCount=r[u];this._checkModelDataBinding(this._dataSource(),this.model.query);break;case"template":this.model.template=r[u];this._checkModelDataBinding(this._dataSource(),this.model.query);break;case"value":this._optionValue=t.util.getVal(r[u]);(t.isNullOrUndefined(this._optionValue)||this._optionValue==="")&&this._clearTextboxValue();t.isNullOrUndefined(this._optionValue)||this._optionValue===""?this._clearTextboxValue():(this._checkedValues.push(r.value),this._setValue(t.util.getVal(r[u])),r[u]=this.model.value);break;case"incrementalSearchDelay":this.model.incrementalSearchDelay=r[u];break;case"delimiterChar":s=this.model.delimiterChar;r[u]=this._validateDelimiter(r[u]);this.model.delimiterChar=r[u];this._isSingleSelect()||(this.model.text&&(this.model.text=this.model.text.split(s).join(this.model.delimiterChar),this._visibleInput.val(this.model.text)),t.isNullOrUndefined(this.value())||(this.value(this.value().split(s).join(this.model.delimiterChar)),this.element.val(this.value())));break;case"text":t.isNullOrUndefined(r[u])||r[u]===""?this._clearTextboxValue():(this._setText(r[u]),r[u]=this.model.text);break;case"itemValue":this._setItemValue(r[u]);break;case"enableRTL":this._setRTL(r[u]);break;case"enabled":this._enabled(r[u]);break;case"height":this._changeHeight(r[u]);break;case"width":this._changeWidth(r[u]);break;case"popupHeight":this.model.popupHeight=r[u];this._setListHeight(r[u]);break;case"popupWidth":this.model.popupWidth=r[u];this._setListWidth();break;case"minPopupHeight":this.model.minPopupHeight=r[u];this._setListHeight(r[u]);break;case"minPopupWidth":this.model.minPopupWidth=r[u];this._setListWidth();break;case"maxPopupHeight":this.model.maxPopupHeight=r[u];this._setListHeight(r[u]);break;case"maxPopupWidth":this.model.maxPopupWidth=r[u];this._setListWidth();break;case"popupTarget":this.model.popupTarget=r[u];this._renderPopupPanelWrapper();break;case"cssClass":this._changeSkin(r[u]);break;case"showCheckbox":this.model.showCheckbox=r[u];e=this.model.text;f=this.model.text?this.model.text.split(this.model.delimiterChar):this.model.text;this._raiseEvents=!1;this._clearTextboxValue();this._raiseEvents=!0;this._checkboxHideShow(r[u]);this.model.showCheckbox||this.model.multiSelectMode!="none"?(this.model.multiSelectMode=="visualmode"&&this._renderBoxModel(),this._setText(e)):f&&f.length&&this._setText(f[0]);this._isPopupShown()&&this._setListPosition();break;case"checkAll":return this._setCheckAll(r[u]),!1;case"uncheckAll":return this._setUncheckAll(r[u]),!1;case"watermarkText":this._changeWatermark(r[u]);break;case"validationRules":this.element.closest("form").length!=0&&(this.model.validationRules!=null&&(this.element.rules("remove"),this.model.validationMessage=null),this.model.validationRules=r[u],this.model.validationRules!=null&&(this._initValidator(),this._setValidation()));break;case"locale":this.model.locale=r[u];this._updateLocalConstant();break;case"validationMessage":this.element.closest("form").length!=0&&(this.model.validationMessage=r[u],this.model.validationRules!=null&&this.model.validationMessage!=null&&(this._initValidator(),this._setValidation()));break;case"showRoundedCorner":this._roundedCorner(r[u]);this.model.showRoundedCorner=r[u];break;case"showPopupOnLoad":this._setInitialPopup(r[u]);break;case"targetID":this.model.targetID=r[u];this._showFullList();break;case"selectedItemIndex":case"selectedIndex":this._selectItemByIndex(r[u]);this.model.selectedItemIndex=this.model.selectedIndex=r[u];break;case"unselectItemByIndex":this._unselectItemByIndex(r[u]);break;case"disableItemsByIndex":this._disableItemByIndex(r[u]);break;case"enableItemsByIndex":this._enableItemByIndex(r[u]);break;case"selectedItems":case"selectedIndices":this._selectCheckedItem(r[u]);r[u]=this.model.selectedItems=this.model.selectedIndices=this._selectedIndices;break;case"multiSelectMode":this.model.multiSelectMode=="visualmode"&&(this._swapUlandInput(!1),this._ulBox.remove(),this._ulBox=null);this.model.multiSelectMode=r[u];e=this.model.text;f=this.model.text?this.model.text.split(this.model.delimiterChar):this.model.text;this._raiseEvents=!1;this._clearTextboxValue();this._raiseEvents=!0;this.model.showCheckbox||this.model.multiSelectMode!="none"?(this.model.multiSelectMode=="visualmode"&&this._renderBoxModel(),this._setText(e)):(this._setText(f[0]),this.wrapper.find("input[name="+this._name+"]").remove());this._isPopupShown()&&this._setListPosition();break;case"allowGrouping":this._setGroupingAndSorting("allowGrouping",r[u]);break;case"enableSorting":this._setGroupingAndSorting("enableSorting",r[u]);break;case"htmlAttributes":this._addAttr(r[u]);break;case"enablePopupResize":this.model.enablePopupResize=r[u];r[u]?this._enablePopupResize():this.popupListWrapper.removeClass("e-resizable").find(".e-resizebar").remove()&&this._hideResult();break;case"enableFilterSearch":if(r[u]){this.model.enableFilterSearch=!0;this._enableSearch();break}else this._removeSearch();case"enableServerFiltering":this._enableSearch()}},_clearTextboxValue:function(){this.element.val("");this._visibleInput.val("");this._updateValue("");this._valueContainer=[];this._boxValue=[];this._textContainer=[];this.selectedTextValue=this._selectedValue=this._hiddenValue=this.model.itemValue="";this._updateText();this.selectedIndexValue=this._hiddenDelimiterIndex=this._activeItem=-1;this._selectedItemsID=[];this._selectedIndices=[];this.model.selectedItems=[];this.model.selectedIndices=[];this.selectedIndex(null);t.isNullOrUndefined(this.ultag)||(this.ultag.children("li").removeClass("e-hover").removeClass("e-active"),this.model.showCheckbox&&this._resetCheck());this.wrapper.find("ul.e-ul.e-boxes").length!=0&&(this._ulBox.children("li").remove(),this._name===""?this.wrapper.find("input:hidden[id^='#']").remove():this.wrapper.find("input:hidden[id^='#'][name="+this._name+"]").remove(),n(this.element).attr("name",this._name))},_destroy:function(){this.selectOptions?(!this._dataSource()&&this.docbdy?this.docbdy.append(this.selectOptions.removeClass("e-dropdownlist e-js").show()).show():this.selectOptions.insertAfter(this.wrapper).removeClass("e-dropdownlist e-js").show(),this.element.remove()):(this.element.insertAfter(this.wrapper),this.element.width(this.element.width()+this.dropdownbutton.outerWidth()),this._visibleInput.removeClass("e-input "),this._setAttr(this.element[0],{accesskey:this.wrapper.attr("accesskey"),type:"text"}),this._isWatermark&&this._visibleInput.removeAttr("placeholder"),this.element[0].value="",this.element.removeAttr("aria-expanded aria-autocomplete aria-haspopup aria-owns accesskey role").css({width:"",display:"block"}),!this._dataSource()&&this.docbdy&&this.ultag.find("li").removeClass("e-active")&&this.docbdy.append(this.ultag.html()).show());this.wrapper.remove();this.container.off("mousedown",n.proxy(this._OnDropdownClick,this));this._hideResult();this.popupPanelWrapper.remove();this._unwireEvents()},_finalize:function(){this.value()==""&&this._visibleInput[0].value!==""&&this._updateValue(this.element[0].value);(t.isNullOrUndefined(this.value())||this.value()!="")&&this.value()===this.element.val()||this._setValue(this.value());(t.isNullOrUndefined(this.model.text)||this.model.text!="")&&this.model.text==this._visibleInput.val()||this._setText(this.model.text);this.selectedIndex(this.selectedIndex()!=-1?this.selectedIndex():this.selectedItemIndex());this.selectedIndex()!=-1?this._selectItemByIndex(this.selectedIndex()):this._selectedIndices.length>0&&this._selectCheckedItem(this._selectedIndices);this.model.disableItemsByIndex!=null&&this._disableItemByIndex(this.model.disableItemsByIndex);this.model.enableItemsByIndex!=null&&this._enableItemByIndex(this.model.enableItemsByIndex)},_initialize:function(){this._selectedIndices=this.model.selectedIndices.length>0?this.model.selectedIndices:this.model.selectedItems;this.model.selectedItems=this.model.selectedIndices=this._selectedIndices;this.model.selectedIndex=this.model.selectedIndex!=-1?this.model.selectedIndex:this.model.selectedItemIndex;this.element.is("select")&&(this.selectelement=!0,this._renderSelectToDropdown());this._initDisabledItems=[];this._isInteralCall=!1;this._prevSearchValue="";this._selectedItemsID=[];this._hiddenInputElement=[];this._boxValue=[];this._valueContainer=[];this._textContainer=[];this._checkedValues=[];this.target=this.element[0];this._disabledItems=[];this._queryString=null;this.suggLen=0;this._itemId=null;this.checkedStatus=!1;this._incqueryString="";this._activeItem=null;this.ddWidth=0;this._initValue=!0;this._virtualCount=0;this._raiseEvents=!0;this.popUpShow=!1;this._matchedListItems=[];this._prevQueryString=""},_renderSelectToDropdown:function(){var i,f,u,r;if(this.inputElement=t.buildTag("input.e-dropdownlist#"+this._id+"_input","",{},{type:"text","data-role":"none"}),this.inputElement.insertAfter(this.element),this.element.attr("name")&&(this.inputElement.attr("name",this.element.attr("name")),this.element.removeAttr("name")),this.selectOptions=this.element,this.selectOptions.attr("id",this._id),this._dataSource()==null){for(this.optionDiv=t.buildTag("div#"+this._id+"_list"),this.optionDiv.insertAfter(this.inputElement),this.optionUl=t.buildTag("ul"),this.optionDiv.append(this.optionUl),this.selectOptionItems=this.element.children("option"),f=this.selectOptionItems.length,this.optionDummyUl=n(),i=0;i<f;i++)r=this.selectOptionItems[i],u=n(r).attr("label")?n(r).attr("label"):r.innerHTML,u!=null&&(this.optionLi=t.buildTag("li",u,{},{"data-value":r.value,unselectable:"on"}),this.optionDummyUl.push(this.optionLi[0]),n(r).attr("selected")&&this.model.showCheckbox&&(n.inArray(i,this._selectedIndices)==-1?(this._selectedIndices.push(i),this.model.selectedItems=this.model.selectedIndices=this._selectedIndices):t.isNullOrUndefined(this.selectedIndex())&&this.selectedIndex(i)));this.optionUl.append(this.optionDummyUl)}this.element.css("display","none");this.element=this.inputElement},_render:function(){var r,i,u;this._renderDropdown();this._setWatermark();this.model.loadOnDemand&&(!this._dataSource()||this._dataSource().length!==0&&this._dataSource().length<1)&&(r=this.element.parents().last(),this.docbdy=this.model.targetID?r.find("#"+this.model.targetID):this.optionDiv?this.optionDiv:null,this.itemsContainer=this.docbdy[0].nodeName=="UL"?this.docbdy:this.docbdy.children("ol,ul"),this.itemsContainer.css("display","none"));this.model.loadOnDemand||(this._renderPopupPanelWrapper(),this._showFullList());this._roundedCorner(this.model.showRoundedCorner);i=this._dataSource();t.DataManager&&i instanceof t.DataManager?i.dataSource.offline&&i.dataSource.json&&i.dataSource.json.length>0&&(u=this,u._finalize()):this._finalize();t.DataManager&&this._dataSource()instanceof t.DataManager||this._finalize();this.model.loadOnDemand&&t.DataManager&&this._dataSource()instanceof t.DataManager&&!this._dataSource().dataSource.offline&&this._finalize();this._setCheckAll(this.model.checkAll);(this.element.attr("disabled")||n(this.selectOptions).attr("disabled"))&&this.disable();this.model.loadOnDemand&&this.model.showPopupOnLoad&&this._showResult()},_isEqualDataSource:function(n){var r,i,u;if(!this._dataSource()||!n||this._rawList&&!(this._rawList.length===n.length)||t.DataManager&&n instanceof t.DataManager||t.isNullOrUndefined(this._rawList)||this._dataSource().length===0)return!1;for(r=!0,i=0,u=this._dataSource().length;i<u;i++)if(this._dataSource()[i]!==n[i]){r=!1;break}return r},_checkModelDataBinding:function(n,i){this.element.val("");this._visibleInput.val("");this.value()!==null&&this.value()!==""&&this._updateValue("");this.selectedTextValue=this._selectedValue=this._hiddenValue="";this._updateText();this.selectedIndexValue=this._hiddenDelimiterIndex=this._activeItem=-1;this._selectedItemsID=[];this._textContainer=[];this._valueContainer=[];t.isNullOrUndefined(n)&&t.isNullOrUndefined(this.model.query)&&t.isNullOrUndefined(this.model.template)&&this.model.itemsCount==0&&(this._rawList=[],this.popupListItems=[],this.listitems=[],this.ultag=this.popupListWrapper.find(".e-ul"));this.model.selectedItems=this.model.selectedIndices=this._selectedIndices=[];this.model.selectedIndex=this.model.selectedItemIndex=-1;this.model.multiSelectMode=="visualmode"&&this._destroyBoxModel();JSON.stringify(this._dataSource())!=JSON.stringify(n)&&this._dataSource(n);this.model.query=i;t.isNullOrUndefined(this.ultag)||this.ultag.empty();this._showFullList()},_initDataSource:function(n){var i=this,r;t.DataManager&&n instanceof t.DataManager&&(i._addLoadingClass(),i._trigger("actionBegin",{requestFrom:"default"})||(r=n.executeQuery(this._getQuery()),r.done(function(n){i._trigger("actionSuccess",{e:n,requestFrom:"default"});i._totalCount=n.count;i._listItem(n.result);i._removeLoadingClass();i._renderPopupList();i._finalize();i._setDynamicSelectByVal(i,i._optionValue,n);this._optionValue=null}).fail(function(n){i._dataSource(null);i._addLoadingClass();i._trigger("actionFailure",{e:n,requestFrom:"default"})}).always(function(n){i._trigger("actionComplete",{e:n,requestFrom:"default"})})))},_listItem:function(t,i){i=="add"?(this.popupListItems.push(t),this._rawList.push(t)):n.isArray(t)&&(this.popupListItems=t.slice(0),this._rawList=t.slice(0))},_getQuery:function(n){var i,r=this.model.fields,u=t.Query(),f,e;if(!t.isNullOrUndefined(this.model.query)||this.model.template||n)this.model.query&&(u=this.model.query.clone());else{f=[];for(e in r)e!=="tableName"&&r[e]&&f.push(r[e]);f.length>0&&u.select(f)}return this.model.allowVirtualScrolling&&u.requiresCount(),this.model.itemsCount>0&&u.take(this.model.itemsCount),i=this._dataSource().dataSource,r&&(i&&i.url&&!i.url.match(r.tableName+"$")||i&&!i.url||!i)&&(t.isNullOrUndefined(r.tableName)||u.from(r.tableName)),u},_addLoadingClass:function(){this._isPopupShown()?this.popupListWrapper.addClass("e-load"):(this.dropdownbutton.addClass("e-load"),this.drpbtnspan.removeClass("e-icon e-arrow-sans-down"));this._readOnly=!0},_removeLoadingClass:function(){this.dropdownbutton.removeClass("e-load");this.drpbtnspan.addClass("e-icon e-arrow-sans-down");this._readOnly=!1;t.isNullOrUndefined(this.popupListWrapper)||this.popupListWrapper.removeClass("e-load")},_renderDropdown:function(){if(this.wrapper=t.buildTag("span.e-ddl e-widget "+this.model.cssClass+"#"+this._id+"_wrapper","",{},{accesskey:this.element.attr("accesskey"),role:"listbox","aria-expanded":!1,"aria-haspopup":!0,"aria-owns":this._id+"_popup",tabIndex:"0"}),this.container=t.buildTag("span.e-in-wrap e-box #"+this._id+"_container"),this.element.removeAttr("accesskey"),this.model.value==null&&this.element.attr("value")!=null&&(this.model.value=this.element.attr("value")),this.element.attr("value","").val(""),this._isIE8?this._setAttr(this.element[0],{unselectable:"on"}).element.hide():this._setAttr(this.element[0],{type:"hidden",unselectable:"on"}).element.hide(),this.drpbtnspan=t.buildTag("span.e-icon e-arrow-sans-down","",{},{"aria-label":"select",unselectable:"on"}),this.dropdownbutton=t.buildTag("span.e-select#"+this._id+"_dropdown","",{},{role:"button",unselectable:"on"}).append(this.drpbtnspan),this.container.insertAfter(this.element),this.container.append(this.element),this.container.append(this.dropdownbutton),this.wrapper.insertBefore(this.container),this.wrapper.append(this.container),this.selectelement&&this.selectOptions.insertBefore(this.element),this._visibleInput=t.buildTag("input#"+this._id+"_hidden","",{}).insertAfter(this.element),this._visibleInput.addClass("e-input "),this._setAttr(this._visibleInput[0],{readonly:"readonly",tabindex:"-1","data-role":"textbox"}),!this._isWatermark){var i=this.model.watermarkText!=null?this.model.watermarkText:this._localizedLabels.watermarkText;this._hiddenSpan=t.buildTag("span.e-input e-placeholder ").insertAfter(this.element);this._hiddenSpan.text(i);this._hiddenSpan.css("display","none");this._hiddenSpan.on("mousedown",n.proxy(this._OnDropdownClick,this))}this._checkNameAttr();this._setDimentions();this._RightToLeft();this.ddWidth=this.dropdownbutton.outerWidth()>0?this.dropdownbutton.outerWidth():24;this.container.on("mousedown",n.proxy(this._OnDropdownClick,this))},_checkNameAttr:function(){this._name=t.isNullOrUndefined(this.element.attr("name"))?this._id:this.element.attr("name");this.element.attr("name",this._name)},_addAttr:function(i){var r=this;n.map(i,function(i,u){var f=u.toLowerCase();f=="class"?r.wrapper.addClass(i):f=="disabled"&&i=="disabled"?r.disable():f=="readOnly"&&i=="readOnly"?r.model.readOnly=!0:f=="style"?r.wrapper.attr(u,i):f=="name"?n(r.element).attr(u,i):t.isValidAttr(r._visibleInput[0],u)?n(r._visibleInput).attr(u,i):r.wrapper.attr(u,i)})},_renderBoxModel:function(){if(!t.isNullOrUndefined(this._ulBox)||this.model.multiSelectMode!="visualmode")return!1;this._ulBox=t.buildTag("ul.e-ul e-boxes");this.container.prepend(this._ulBox);this._ulBox.css("min-height","30px");this._ulBox.css("display","none");this._on(this.container,"click",function(t){if(!this.model.enabled)return!1;var i=n(t.target);i.hasClass("e-options")&&(!t.ctrlKey&&i.siblings().hasClass("e-active")&&this._removeActive(),i.hasClass("e-active")?i.removeClass("e-active"):i.addClass("e-active"));!t.ctrlKey&&i.hasClass("e-boxes")&&this._removeActive()})},_renderPopupPanelWrapper:function(){var i=n("#"+this.element[0].id+"_popup_wrapper").get(0);i&&n(i).remove();this.popupPanelWrapper=t.buildTag("div#"+this._id+"_popup_wrapper");n(this.model.popupTarget).append(this.popupPanelWrapper);this.popupListWrapper=t.buildTag("div.e-ddl-popup e-box e-widget e-popup#"+this._id+"_popup_list_wrapper","",{display:"none",overflow:"hidden"});this._setAttr(this.popupListWrapper[0],{"data-role":"popup","aria-hidden":!0});this.popupList=t.buildTag("div",{tabIndex:0});this.popupListWrapper.addClass(this.model.cssClass);this.popup=this.popupList;this.popupScroller=t.buildTag("div");t.isNullOrUndefined(this.ultag)&&(this.ultag=t.buildTag("ul.e-ul","",{},{role:"listbox"}));this._setAttr(this.ultag[0],{id:this._id+"_popup","aria-hidden":!0,unselectable:"on"});this.popupScroller.append(this.ultag);this.popupList.append(this.popupScroller);this.model.headerTemplate&&(this.headerTemplate=n("<div>").append(this.model.headerTemplate),this.popupListWrapper.append(this.headerTemplate));this.popupListWrapper.append(this.popupList);this.popupPanelWrapper.append(this.popupListWrapper);this.ultag.on({mouseenter:n.proxy(this._OnMouseEnter,this),mouseleave:n.proxy(this._OnMouseLeave,this),click:n.proxy(this._OnMouseClick,this)},"li:not('.e-category')");if(t.isTouchDevice())this.ultag.on({tap:n.proxy(this._OnMouseEnter,this)},"li:not('.e-category')");n(window).on("resize",n.proxy(this._OnWindowResize,this))},_updateText:function(){var n=this._visibleInput.val();this.model.text=n==""?this._textContainer.length==0?null:"":n},_updateValue:function(n){this.value(n==""?this._valueContainer.length==0?null:"":n)},_setGroupingAndSorting:function(n,t){var i,u,r;if(this.model[n]=t,i=this.model.text,this._updateValue(""),this._selectedIndices=[],this.ultag.empty(),this._showFullList(),this.model.showCheckbox&&i)for(u=i.split(this.model.delimiterChar),r=0;r<u.length;r++)this.selectItemByText(u[r]);else this.selectItemByText(i)},_setSortingList:function(){var t=document.createElement("ul"),r,i;if(n(t).append(this.itemsContainer.children()),this.model.allowGrouping||n(t).find(">.e-category").length>0)for(this.popupListWrapper.addClass("e-atc-popup"),r=0;r<n(t).find(">.e-category").length;r++)i=n(t).find(">.e-category").eq(0).first().nextUntil(".e-category").get(),this._setSortList(t,i);else n(t).children(">.e-category").remove(),i=n(t).children("li").get(),this._setSortList(t,i);this.itemsContainer=n(t)},_setSortList:function(t,i){i.sort(function(t,i){var r=n(t).text().toUpperCase(),u=n(i).text().toUpperCase();return r<u?-1:r>u?1:0});this.model.sortOrder=="descending"&&i.reverse();(this.model.allowGrouping||n(t).find(">.e-category").length>0)&&(n(t).append(n("<li>").text(n(t).find(">.e-category").eq(0).text()).addClass("e-category")),n(t).find(">.e-category").eq(0).remove());n.each(i,function(i,r){n(t).append(r)})},_renderPopupList:function(){this._doDataBind();this.model.loadOnDemand&&t.DataManager&&this._dataSource()instanceof t.DataManager&&!this._dataSource().dataSource.offline&&this.model.showCheckbox&&this._checkboxHideShow(this.model.showCheckbox);(t.isNullOrUndefined(this.scrollerObj)||this._ulBox==null)&&this._renderRemaining();this.model.loadOnDemand&&this.popUpShow&&t.DataManager&&this._dataSource()instanceof t.DataManager&&!this._dataSource().dataSource.offline&&(this._refreshPopup(),this._refreshScroller())},_renderRemaining:function(){var i=this;t.isNullOrUndefined(this.popupListWrapper)||this._dropbtnRTL();this.model.enableFilterSearch&&this._enableSearch();this.model.enablePopupResize&&this._enablePopupResize();this.model.allowVirtualScrolling&&this.model.virtualScrollMode=="normal"&&this._totalCount&&this._totalCount>0&&(this._totalHeight=this._totalCount*29,this._totalPages=this._totalCount/(this.model.itemsCount*29),this._loadedItemHeight=this._getLi().length*29,this._getLi().attr("page",0),this._virtualPages=[0],this.ultag.append(n("<span>").addClass("e-virtual").css({height:this._totalHeight-this._loadedItemHeight,display:"block"})));this._virtualUl=this.ultag.clone(!0);t.isNullOrUndefined(this.popupListWrapper)||(this._setListWidth(),this._setListHeight());this._isSingleSelect()||(this.model.showCheckbox?this._checkboxHideShow(this.model.showCheckbox):this._multiItemSelection(this._getLi()));this._setUncheckAll(this.model.uncheckAll);t.isNullOrUndefined(this.popupListWrapper)||(this.popupScroller.css({height:"",width:""}),this.popupList.ejScroller({height:this._getPopupHeight(),width:0,scrollerSize:20,scroll:function(n){i.model.allowVirtualScrolling&&i._onScroll(n)},preventDefault:!0}),this.scrollerObj=this.popupList.ejScroller("instance"),this.popupList.find("div.e-scrollbar div").attr("unselectable","on"),this._setListPosition(),this.popUpShow||this.popupListWrapper.css({display:"none",visibility:"visible"}),this._changeSkin(this.model.cssClass));this.model.loadOnDemand||this.model.showPopupOnLoad&&this._showResult()},_enableSearch:function(){if(this.model.enableFilterSearch&&!t.isNullOrUndefined(this.popupListWrapper)&&!this.inputSearch){this.inputSearch=t.buildTag("input#"+this._id+"_inputSearch.e-input","",{},{type:"text","data-role":"none"});this.popupListWrapper.prepend(n("<span>").addClass("e-atc e-search").append(n("<span>").addClass("e-in-wrap ").append(this.inputSearch).append(n("<span>").addClass(" e-icon e-search"))));var i=this.model.enableServerFiltering?this._debounce(this._OnSearchEnter,200):this._OnSearchEnter;this._on(this.inputSearch,"keyup",i)._on(this.inputSearch,"keydown",function(n){var t=n.keyCode||n.which;t==9&&(n.preventDefault(),this.wrapper.focus(),this._hideResult())})}},_removeSearch:function(){this.model.enableFilterSearch=!1;this.popupListWrapper.find(".e-atc.e-search").remove();this._isPopupShown()&&this.hidePopup();this.inputSearch=null},_OnSearchEnter:function(i){var u,f,r;(this._prevSearchValue==""||this._prevSearchValue!=this.inputSearch.val())&&((this._prevSearchValue=this.inputSearch.val(),t.isNullOrUndefined(this._rawList))||(i.keyCode==8&&this.model.enableFilterSearch&&(this._disabledItems=this._initDisabledItems,this._prevDisabledItems=this._disabledItems),u=this,n.inArray(i.keyCode,[38,40,13])!=-1&&this.ultag.find("li.e-nosuggestion").length<=0?i.keyCode==13?this._OnKeyUp(i):this._OnKeyDown(i):(this._activeItem=-1,this._queryString=this.inputSearch.val(),this._queryString==""&&this._virtualUl?(r={searchString:this._queryString,searchQuery:null,items:this._rawList},this._trigger("search",r),this._resetList(i),this._updateSelectedIndexByValue(this.value()),this._refreshScroller(),this._setListPosition(),this._prevDisabledItems&&this._prevDisabledItems.length>0&&(this._disabledItems=[],this._isInteralCall=!0,this.disableItemsByIndices(this._prevDisabledItems),this._isInteralCall=!1,this._prevDisabledItems=this._disabledItems)):(this._mapFields(),f=this._addSearchQuery(t.Query(),!this._isPlainType(this._rawList)),r={searchString:this._queryString,items:this._rawList,searchQuery:f},this.popupListWrapper.find(".e-atc.e-search .e-search").addClass("e-cross-circle").removeClass("e-search"),this._on(this.popupListWrapper.find(".e-atc.e-search .e-cross-circle"),"mousedown",this._refreshSearch),this._trigger("search",r)||u._onActionComplete(r)))))},_debounce:function(n,t){var i,r=this;return function(){var u=arguments,f=function(){return i=null,n.apply(r,u)};clearTimeout(i);i=setTimeout(f,t)}},_onActionComplete:function(n){var r=this,n,i,u;this._queryString=this.inputSearch.val();i=this._addSearchQuery(t.Query(),!this._isPlainType(this._rawList));n={searchString:this._queryString,items:this._rawList,searchQuery:i};t.DataManager&&this._dataSource()instanceof t.DataManager&&this.model.enableServerFiltering&&(window.getSelection().type=="Caret"||t.browserInfo().name=="msie")?(i=n.searchQuery.clone(),u=r._dataSource().executeQuery(i),u.done(function(t){r._filterSearch(n.searchQuery,t)})):r._filterSearch(i,n)},_refreshSearch:function(){this._resetSearch();this._refreshPopup();this._initDisabledItems&&this._initDisabledItems.length>0&&(this._disabledItems=[],this.disableItemsByIndices(this._initDisabledItems),this._prevDisabledItems=this._disabledItems)},_filterSearch:function(n,i){var o=!1,u,f,r,e,s;this.resultList=i.result?i.result:t.DataManager(this._rawList).executeLocal(n);this.resultList.length==0&&(o=!0,this.resultList.push(this._getLocalizedLabels("emptyResultText")));u=[];this._initDisabledItems.forEach(function(n){this._rawList.forEach(function(t){this._rawList.indexOf(t)==n&&u.push(t)},this)},this);f=[];u.length>0&&this.resultList.forEach(function(n){u.indexOf(n)>=0&&f.push(this.resultList.indexOf(n))},this);this.popupListItems=this.resultList;this.ultag.empty();this._isPlainType(this.popupListItems)?this._plainArrayTypeBinding(this.resultList):this._objectArrayTypeBinding(this.resultList,"search");o&&this.ultag.find("li").length==1&&this.ultag.find("li").eq(0).addClass("e-nosuggestion");this.model.showCheckbox&&!o&&this._appendCheckbox(this._getLi());this._onSearch=!0;r=this.value();e=this._visibleInput[0].value;this._setValue(this.value());s=typeof this.model.value=="function"?this.model.value():this.model.value;s!=r&&(this.element[0].value=r,this._visibleInput[0].value=e,this.model.text=e==""?null:e,this.value()==r||this.value()==null&&r==""||this._updateValue(r));this._onSearch=!1;this._updateSelectedIndexByValue(this.value());this._refreshScroller();this._setListPosition();this._prevDisabledItems=this._disabledItems;this._disabledItems=[];f.length>0&&(this._isInteralCall=!0,this.disableItemsByIndices(f),this._isInteralCall=!1)},_updateSelectedIndexByValue:function(t){var u,r,i;if(t&&this.model.enableFilterSearch){for(this._selectedIndices=this.model.selectedItems=this.model.selectedIndices=[],this._virtualList=this._virtualUl.children("li:not('.e-category')"),u=this._toArray(t),r=0;r<u.length;r++)for(i=0;i<this._virtualList.length;i++)if(u[r]==this._getIndexedValue(this._virtualList[i])){n.inArray(i,this._selectedIndices)==-1&&this._selectedIndices.push(i);break}this.model.selectedItems=this.model.selectedIndices=this._selectedIndices;this.model.selectedIndices.length==1&&(this.model.selectedIndex=this.selectedIndexValue=this.model.selectedIndices[0])}},_getIndexedValue:function(n){return this._getAttributeValue(n)?this._getAttributeValue(n):n.innerText},_resetSearch:function(){this.inputSearch&&this.model&&this.model.enableFilterSearch&&this.inputSearch.val()!=""&&this._virtualUl&&(this.inputSearch.val(""),this._prevSearchValue="",this._resetList())},_resetList:function(n){var r,i,u;if(this.popupListWrapper.find(".e-atc.e-search .e-cross-circle").length==1&&(this.popupListWrapper.find(".e-atc.e-search .e-cross-circle").addClass("e-search").removeClass("e-cross-circle"),this._off(this.popupListWrapper.find(".e-atc.e-search .e-cross-circle"),"mousedown",this._refreshSearch)),this.model.enableServerFiltering){for(r=this.model.fields&&this.model.fields.value?this.model.fields.value:"value",i=0;i<this._rawList.length;i++)this._rawList[i][r]==this._selectedValue&&(this._searchresult=null);t.isNullOrUndefined(this._searchresult)||this.model.allowVirtualScrolling&&this.model.virtualScrollMode=="normal"||this.addItem(this._searchresult)}this._listItem(this._rawList);this.model.enableSorting&&(u=t.Query().sortBy(this.mapFld._text,this.model.sortOrder,!0),this._rawList=t.DataManager(this._rawList).executeLocal(u),this.popupListItems=this._rawList);this.ultag.empty().append(this._virtualUl.children().clone(!0));this._onSearch=!0;this._setValue(this.value(),n);this._onSearch=!1;this._searchresult=[];this._initDisabledItems&&this._initDisabledItems.length>0&&(this._disabledItems=[],this.disableItemsByIndices(this._initDisabledItems),this._prevDisabledItems=this._disabledItems)},_addSearchQuery:function(n,t){var r="",i;return t&&(i=this.model.fields,r=i&&i.text?i.text:"text"),this._queryString&&n.where(r,this.model.filterType,this._queryString,!this.model.caseSensitiveSearch),this.model.itemsCount>0&&n.take(this.model.itemsCount),n},_targetElementBinding:function(){var e=this.element.parents().last(),r,f,t,u,i;if(this.docbdy=this.model.targetID?e.find("#"+this.model.targetID):this.optionDiv?this.optionDiv:null,!this.docbdy)return!1;if(this.itemsContainer=this.docbdy[0].nodeName=="UL"?this.docbdy:this.docbdy.children("ol,ul"),(this.model.allowGrouping||this.itemsContainer.find(">.e-category").length>0)&&!this.model.enableSorting)for(this.popupListWrapper.addClass("e-atc-popup"),r=0;r<this.itemsContainer.find(">.e-category").length;r++)f=this.itemsContainer.find(">.e-category").eq(r),f.replaceWith(n("<li>").text(f.text()).addClass("e-category"));else this.model.enableSorting&&this._setSortingList();for(this.itemsContainer.children("ol,ul").remove(),this.items=this.model.loadOnDemand?this.itemsContainer.children().length>0?this.itemsContainer.children("li"):this.items:this.itemsContainer.children("li"),this.items.children("img,div").addClass("e-align"),this._listItem([]),t=0;t<this.items.length;t++)u=n(this.items[t]).text(),i=this._getAttributeValue(this.items[t]),this.items[t].getAttribute("id")&&this.items[t].getAttribute("id")!=""||n(this.items[t]).attr("id",this._id+"_"+t+"_popup_option"),n(this.items[t]).attr("data-value")||n(this.items[t]).attr("data-value",i?i:u),this._listItem({text:u,value:i?i:u},"add");this.model.loadOnDemand?this.ultag.empty().append(this.items):this.ultag.empty().append(this.itemsContainer.children());this.ultag.children("li").attr("role","option").attr("unselectable","on").attr("aria-selected","false").attr("tabindex","-1");this.docbdy.css({display:"none"}).children("ol,ul").remove()},_plainArrayTypeBinding:function(i){var r,u;if(this.dummyUl=n(),this.model.enableSorting&&(i.sort(),this.model.sortOrder=="descending"&&i.reverse()),i.length>0){for(r=0;r<i.length;r++)t.isNullOrUndefined(i[r])||(u=t.buildTag("li",i[r],{},{"data-value":i[r],unselectable:"on"}),this.dummyUl.push(u[0]));this.ultag.append(this.dummyUl);this._trigger("dataBound",{data:i})}},_mapFields:function(){this.model.fields.groupBy=this.model.fields.groupBy?this.model.fields.groupBy:this.model.fields.category;var n=this.model.fields;this.mapFld={_id:null,_imageUrl:null,_imageAttributes:null,_spriteCSS:null,_text:null,_value:null,_htmlAttributes:null,_selected:null};this.mapFld._id=n&&n.id?n.id:"id";this.mapFld._imageUrl=n&&n.imageUrl?n.imageUrl:"imageUrl";this.mapFld._imageAttributes=n&&n.imageAttributes?n.imageAttributes:"imageAttributes";this.mapFld._spriteCSS=n&&n.spriteCssClass?n.spriteCssClass:"spriteCssClass";this.mapFld._text=n&&n.text?n.text:"text";this.mapFld._value=n&&n.value?n.value:"value";this.mapFld._htmlAttributes=n&&n.htmlAttributes?n.htmlAttributes:"htmlAttributes";this.mapFld._selected=n&&n.selected?n.selected:"selected";this.mapFld._category=n&&n.groupBy?n.groupBy:"groupBy"},_doDataBind:function(){var t=this._dataSource(),n=this.popupListItems;!t||!n||!n.length||n.length<1?this._targetElementBinding():this._isPlainType(n)?this._plainArrayTypeBinding(n):this._objectArrayTypeBinding(n)},_isPlainType:function(n){return typeof n[0]!="object"},_objectArrayTypeBinding:function(i,r){var s,h,u,o,f,e;if(this.dummyUl=n(),this._mapFields(),this.model.enableSorting&&(s=t.Query().sortBy(this.mapFld._text,this.model.sortOrder,!0),i=t.DataManager(i).executeLocal(s),this.popupListItems=i),this.model.allowGrouping||this.model.fields.groupBy)for(t.isNullOrUndefined(this.popupListWrapper)||this.popupListWrapper.addClass("e-atc-popup"),h=this.mapFld._category,o=t.Query().group(h),this.model.enableSorting||o.queries.splice(0,1),u=t.DataManager(i).executeLocal(o),this._swapUnCategorized(u),r=="search"?this.popupListItems=[]:this._listItem([]),f=0;f<u.length;f++)for(u[f].key&&this.ultag.append(t.buildTag("li.e-category",u[f].key).attr("role","option")[0]),this._generateLi(u[f].items,this.mapFld),this.ultag.append(this.dummyUl),e=0;e<u[f].items.length;e++)r=="search"?this.popupListItems.push(u[f].items[e]):this._listItem(u[f].items[e],"add");else this._generateLi(i,this.mapFld),this.ultag.append(this.dummyUl);this._trigger("dataBound",{data:i})},_onScroll:function(i){var e,o,f;if(i.scrollTop){var s=i.scrollTop,r=this,u=this._dataSource();r.model.allowVirtualScrolling&&r.model.virtualScrollMode=="continuous"?(f=t.Query().skip(r._rawList.length).take(r.model.itemsCount).clone(),s>=Math.round(n(r.popupList).find("ul,ol").height()-n(r.popupList).height())&&r._rawList.length<r._totalCount&&(r._addLoadingClass(),t.DataManager&&r._dataSource()instanceof t.DataManager&&!t.isNullOrUndefined(r._dataSource().dataSource.url)?(f=r.inputSearch&&r.inputSearch.val()!=""&&this.model.enableServerFiltering?r._addSearchQuery(t.Query(),!r._isPlainType(r._rawList)).skip(r._getLi().length).clone():r._getQuery().skip(r._rawList.length).take(r.model.itemsCount).clone(),r._trigger("actionBegin",{requestFrom:"scroll"})||(o=r._dataSource().executeQuery(f),o.done(function(n){!t.isNullOrUndefined(r.model.value)&&r.model.enableServerFiltering&&(n.result=r._removeSelectedValue(n.result));r.addItem(n.result);r._removeLoadingClass();r._trigger("actionSuccess",{e:n,requestFrom:"scroll"})}).fail(function(){r._dataSource(null);r._removeLoadingClass();r._trigger("actionFailure",{e:i,requestFrom:"scroll"})}).always(function(n){r._trigger("actionComplete",{e:n,requestFrom:"scroll"})}))):t.DataManager&&u instanceof t.DataManager&&u.dataSource.offline&&u.dataSource.json&&u.dataSource.json.length>0?(r.addItem(this._localDataVirtualScroll()),window.setTimeout(function(){r._removeLoadingClass()},100)):(e=t.DataManager(r._dataSource()).executeLocal(f),r.addItem(r._removeSelectedValue(e)),r._removeLoadingClass()))):r.model.allowVirtualScrolling&&r.model.virtualScrollMode=="normal"&&window.setTimeout(function(){r._virtualCount==0&&r._loadList()},300)}},_localDataVirtualScroll:function(){var n=this,i=t.isNullOrUndefined(n.value())?0:typeof n.value()=="number"?1:n.value().split(n.model.delimiterChar).length,r=n._checkValue?n._rawList.length-i:n._rawList.length,u=t.DataManager(n._dataSource().dataSource.json).executeLocal(t.Query().skip(r).take(n.model.itemsCount).clone());return n._removeSelectedValue(u)},_removeSelectedValue:function(n){var u,r,i;if(t.isNullOrUndefined(this.value()))return n;for(u=typeof this.value()=="number"?this.value():this.value().split(this.model.delimiterChar),r=0;r<u.length;r++)for(i=0;i<n.length;i++)n[i][this.mapFld._value]==u[r]&&n.splice(n.indexOf(n[i]),1);return n},_loadList:function(){var r,h,c,l,a,u;this._virtualCount++;var e=this._dataSource(),v=this.scrollerObj.scrollTop(),i=this,o=0,f,s=null;if(this._currentPage=Math.round(v/(29*this.model.itemsCount)),this._virtualPages){if(n.inArray(this._currentPage,this._virtualPages.sort(function(n,t){return n-t}))!=-1)if(this._currentPage==0){if(n.inArray(this._currentPage+1,this._virtualPages)!=-1)return this._virtualCount--,!1;this._currentPage=this._currentPage+1}else if(n.inArray(this._currentPage-1,this._virtualPages)!=-1){if(n.inArray(this._currentPage+1,this._virtualPages)!=-1)return this._virtualCount--,!1;this._currentPage=this._currentPage+1}else this._currentPage=this._currentPage-1;for(f=!(n.inArray(this._currentPage-1,this._virtualPages)!=-1),this._addLoadingClass(),r=this._virtualPages.length-1;r>=0;r--)if(this._virtualPages[r]<this._currentPage){o=this._virtualPages[r];r+1==this._virtualPages.length||(s=this._virtualPages[r+1]);break}}if(h=f?(this._currentPage-1)*this.model.itemsCount:this._currentPage*this.model.itemsCount,u=t.Query().range(h,this._currentPage*this.model.itemsCount+this.model.itemsCount),t.DataManager&&i._dataSource()instanceof t.DataManager&&!t.isNullOrUndefined(i._dataSource().dataSource.url)){if(a=f?(this._currentPage-1)*this.model.itemsCount:this._currentPage*this.model.itemsCount,u=this._getQuery().skip(a),f){for(r=0;r<u.queries.length;r++)if(u.queries[r].fn=="onTake"){u.queries.splice(r,1);break}u.take(2*this.model.itemsCount)}i._trigger("actionBegin",{requestFrom:"scroll"})||(i.inputSearch&&i.inputSearch.val()!=""&&this.model.enableServerFiltering&&(u=i._addSearchQuery(t.Query(),!i._isPlainType(i._rawList)).skip(i._getLi().length).clone()),c=i._dataSource().executeQuery(u),c.done(function(n){n.result=i._removeSelectedValue(n.result);i._appendVirtualList(n.result,o,i._currentPage,s,f);i._removeLoadingClass();i._trigger("actionSuccess",{e:n,requestFrom:"scroll"})}).fail(function(n){i._virtualCount--;i._removeLoadingClass();i._trigger("actionFailure",{e:n,requestFrom:"scroll"})}).always(function(n){i._trigger("actionComplete",{e:n,requestFrom:"scroll"})}))}else t.DataManager&&e instanceof t.DataManager&&e.dataSource.offline&&e.dataSource.json&&e.dataSource.json.length>0?(i._appendVirtualList(this._localDataVirtualScroll(),o,i._currentPage,s,f),window.setTimeout(function(){i._removeLoadingClass()},100)):(l=t.DataManager(i._dataSource()).executeLocal(u),i._appendVirtualList(i._removeSelectedValue(l),o,i._currentPage,s,f),i._removeLoadingClass())},_appendVirtualList:function(i,r,u,f,e){var o,h,l,s,a,c;if(this._virtualPages){if(this._virtualCount--,this.ultag.find("span.e-virtual").remove(),t.isNullOrUndefined(this.activeItem)||this.activeItem.attr("page","0"),n.inArray(u,this._virtualPages.sort(function(n,t){return n-t}))!=-1)return!1;for(e&&n.inArray(u-1,this._virtualPages.sort())!=-1&&(i.splice(0,this.model.itemsCount),e=!1),o=this.model.itemsCount,h=n("<ul>"),l=e?(u-1)*o*29-(r*o+o)*29:u*o*29-(r*o+o)*29,l!=0&&h.append(n("<span>").addClass("e-virtual").css({display:"block",height:l})),this._mapFields(),this._generateLi(i,this.mapFld),n(this.dummyUl).attr("page",u),e&&n(this.dummyUl).slice(0,o).attr("page",u-1),this.model.showCheckbox&&this._appendCheckbox(this.dummyUl),h.append(this.dummyUl),s=(u*o+o)*29,s=f!=null?f*o*29-s:this.ultag.height()-s,s!=0&&h.append(n("<span>").addClass("e-virtual").css({display:"block",height:s})),a=this.model.itemsCount>0&&this.value()!=""&&this._dataSource()instanceof t.DataManager&&this._dataSource().dataSource.offline?this.ultag.find("li").last():this.ultag.find("li[page="+r+"]").last(),a.next().remove(),h.children().insertAfter(a),this._virtualPages.push(u),e&&this._virtualPages.push(u-1),c=0;c<i.length;c++)this._listItem(i[c],"add");this._virtualUl=this.ultag.clone(!0);this._renderBoxModel()}},_generateLi:function(i,r){var u,s,p,c;if(this.mapFld=r,this.dummyUl=[],!i||!i.length||i.length<1)return!1;for(u=0;u<i.length;u++){var e=this._getField(i[u],this.mapFld._id),l=this._getField(i[u],this.mapFld._imageUrl),a=this._getField(i[u],this.mapFld._imageAttributes),v=this._getField(i[u],this.mapFld._spriteCSS),o=this._getField(i[u],this.mapFld._text),h=this._getField(i[u],this.mapFld._value),y=this._getField(i[u],this.mapFld._htmlAttributes),w=this._getField(i[u],this.mapFld._selected),f=document.createElement("li");f.setAttribute("data-uid",Math.random().toString(36).substr(2,4));t.isNullOrUndefined(h)?f.setAttribute("data-value",o):f.setAttribute("data-value",typeof h=="object"?JSON.stringify(h):h);t.isNullOrUndefined(e)||e===""&&e==0||f.setAttribute("id",e);t.isNullOrUndefined(y)||y==""||this._setAttr(f,y);(t.isNullOrUndefined(e)||e==""&&e!=0)&&this._setAttr(f,{id:this._id+"_"+u+"_popup_option","aria-selected":!1,tabindex:-1});this.model.template?n(f).append(this._getTemplatedString(i[u])):(t.isNullOrUndefined(l)||l==""||(s=document.createElement("img"),this._setClass(s,"e-align")._setAttr(s,{src:l,alt:o}),a&&a!=""&&this._setAttr(s,a),f.appendChild(s)),t.isNullOrUndefined(v)||v==""||(p=document.createElement("div"),this._setClass(p,"div.e-align "+v+" sprite-image"),f.appendChild(p)),w&&this._setClass(f,"chkselect"),t.isNullOrUndefined(o)&&(o=String(o)),c=document.createElement("span"),c.appendChild(document.createTextNode(o)),this._setClass(c,"e-ddltxt"),f.appendChild(c));this._setAttr(f,{role:"option",unselectable:"on"});this.dummyUl.push(f)}},_setAttr:function(t,i){var u,r,f;if(typeof i=="string")u=i.replace(/['"]/g,"").split("="),u.length==2&&(t.hasAttribute(u[0])&&u[0]=="class"?n(t).addClass(u[1]):t.setAttribute(u[0],u[1]));else for(r in i)if((r=="styles"||r=="style")&&typeof i[r]=="object")for(f in i[r])t.style[f]=i[r][f];else t.setAttribute(r,i[r]);return this},_setClass:function(n,t){return n.className+=" "+t,this},_removeClass:function(n,t){var i=n.className.indexOf(t);return i>=0&&(n.className=i!=0&&n.className[i-1]===" "?n.className.replace(" "+t,""):n.className.replace(t,"")),this},_hasClass:function(n,t){return n.className.indexOf(t)>=0},_swapUnCategorized:function(t){n(t).each(function(n,i){if(!i.key){for(var r=n;r>0;r--)t[r]=t[r-1];return t[r]=i,!1}})},_getField:function(n,i){return t.pvt.getObject(i,n)},_getTemplatedString:function(n){for(var t=this.model.template,i=t.indexOf("${"),r=t.indexOf("}"),u,f;i!=-1&&r!=-1;)u=t.substring(i,r+1),f=u.replace("${","").replace("}",""),t=t.replace(u,this._getField(n,f)),i=t.indexOf("${"),r=t.indexOf("}");return t},_setWatermark:function(){if(this.element.val()==""&&this._trim(this._visibleInput.val())==""){var n=this.model.watermarkText!=null?this.model.watermarkText:this._localizedLabels.watermarkText;this._isWatermark?this._visibleInput.attr("placeholder",n):this._hiddenSpan.css("display","block").text(n);this.model.multiSelectMode=="visualmode"&&this._ulBox&&this._ulBox.find("li").length==0&&this._swapUlandInput(!1)}},_checkboxHideShow:function(n){if(!t.isNullOrUndefined(this.ultag)){if(n){this.listitems=this._getLi();var i=this.listitems.find("input[type=checkbox]");i.length==0&&this._appendCheckbox(this.listitems)}else this._removeCheck(this.popupList);this.model.showCheckbox=n;this._virtualUl=this.ultag.clone(!0)}},_setCheckAll:function(n){!this._isSingleSelect()&&n?this.checkAll():this.model.checkAll=!1},_setUncheckAll:function(n){!this._isSingleSelect()&&n?this.uncheckAll():this.model.uncheckAll=!1},checkAll:function(){var f,r,i,u,e;if(this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),f=this._selectedIndices,r=!1,this._mapFields(),this.listitems=this._getLi(),this._isWatermark||this._hiddenSpan.css("display","none"),!this._isSingleSelect()){for(i=0;i<this.listitems.length;i++)this._currentText=this._isPlainType(this.popupListItems)?this.popupListItems[i]:this._decode(this._getField(this.popupListItems[i],this.mapFld._text)),this._hiddenValue=this._getAttributeValue(this.listitems[i])||this._currentText,this._checkContains(this._hiddenValue)?r=!0:this.model.showCheckbox?(u=n(this.listitems[i]).children(".e-checkwrap")[0],u&&!this._isChecked(u)?(this._setClass(u,"e-check-act"),this._setAttr(u,{"aria-checked":!0}),u.firstChild.checked=!0,r=!1):r=!0):(r=!1,n(this.listitems[i]).addClass("e-active")),r||(this.checkedStatus=!0,this._itemID=n(this.listitems[i]).attr("id"),t.isNullOrUndefined(this._itemID)||this._itemID==""&&this._itemID!=0||this._selectedItemsID.push(this._itemID),this._createListHidden(this._hiddenValue),this.model.multiSelectMode=="visualmode"&&(this._ulBox.append(this._createBox(this._currentText,this._hiddenValue)),this._isPopupShown()&&this._setListPosition()),this._addText(this._currentText),n.inArray(i,f)==-1&&(this._selectedIndices.push(i),this.model.selectedItems=this.model.selectedIndices=this._selectedIndices),this._selectedValue=this._getAttributeValue(this.listitems[i])||"",this._initValue||this._trigger("checkChange",{isChecked:this.checkedStatus,data:this.model}),e={text:this._visibleInput[0].value,selectedText:this._currentText,itemId:i,selectedValue:this._selectedValue,value:this._selectedValue,isChecked:this.checkedStatus},this._updateValue(this.element.val()),this._updateText(),this._initValue||this._trigger("change",e),this._activeItem=i,this.activeItem=this._getActiveItem(),this._cascadeAction());this.model.itemValue=this._selectedValue;this.model.uncheckAll=!1;this.model.checkAll=!0;this._activeItem=-1;this._setWatermark()}},_createListHidden:function(t){var i=document.createElement("input"),r=/'/;r.test(t)&&(t=t.replace(r,"'"));this._setAttr(i,{type:"hidden",name:this._name,value:t,id:"#"+t});n.inArray(i.value,this._hiddenInputElement)==-1&&(this._hiddenInputElement.push(i.value),this._boxValue.push(i.value),this.container.append(i),n(this.element).attr("name","hiddenEle"))},_removeListHidden:function(t){var u=/'/,i,r;u.test(t)&&(t=t.replace(u,"'"));i=this.container.find("[id='#"+t+"']");this._hiddenInputElement.splice(n.inArray(i.value,this._hiddenInputElement),1);r=this._boxValue.indexOf(t);r!=-1&&this._boxValue.splice(r,1);n(i).remove();this._isSingleSelect()||this.element.val()!=""||this.element.attr("name",this._name)},_getAttributeValue:function(n){if(!t.isNullOrUndefined(n))var i=t.isNullOrUndefined(n.getAttribute("data-value"))?n.getAttribute("value"):n.getAttribute("data-value");return n?i:null},_selectCheckedItem:function(n){this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList();for(var i=0;i<n.length;i++)this._activeItem=n[i],this.ultag.children()[this._activeItem]&&this._enterTextBoxValue()},unCheckAll:function(){this.uncheckAll()},uncheckAll:function(){var u=!1,i,r,f,e;if(this.listitems=this._getLi(),this._mapFields(),!this._isSingleSelect()){for(i=0;i<this.listitems.length;i++)this._currentText=this._isPlainType(this.popupListItems)?this.popupListItems[i]:this._getField(this.popupListItems[i],this.mapFld._text),this._hiddenValue=this._getAttributeValue(this.listitems[i])||this._currentText,this._checkContains(this._hiddenValue)?this.model.showCheckbox?(r=n(this.listitems[i]).children(".e-checkwrap")[0],r&&this._isChecked(r)?(this._removeClass(r,"e-check-act"),this._setAttr(r,{"aria-checked":!1}),r.firstChild.checked=!1,u=!0):u=!1):(n(this.listitems[i]).removeClass("e-active"),u=!0):u=!1,u&&(this.checkedStatus=!1,this._activeItem=i,this.activeItem=this._getActiveItem(),this._removeText(this._hiddenValue),this._removeListHidden(this._hiddenValue),f=this._selectedIndices,n.inArray(i,f)>-1&&(this._selectedIndices.splice(n.inArray(i,f),1),this.model.selectedItems=this.model.selectedIndices=this._selectedIndices),this._selectedValue=this._getAttributeValue(this.listitems[i])||"",this._itemID=n(this.listitems[i]).attr("id"),t.isNullOrUndefined(this._itemID)||this._itemID==""&&this._itemID!=0||this._removeSelectedItemsID(),this._initValue||this._trigger("checkChange",{isChecked:this.checkedStatus,data:this.model}),e={text:this._visibleInput[0].value,selectedText:this._currentText,itemId:i,selectedValue:this._selectedValue,value:this._selectedValue,isChecked:this.checkedStatus},this._updateValue(this.element.val()),this._updateText(),this._initValue||this._trigger("change",e),this._cascadeAction(),this.model.multiSelectMode=="visualmode"&&(this._deleteBoxCheck(this._hiddenValue),this._isPopupShown()&&this._setListPosition()));this.model.itemValue=this._selectedValue;this.model.checkAll=!1;this.model.uncheckAll=!0;this._setWatermark();this._activeItem=-1;this._clearTextboxValue()}},_removeSelectedItemsID:function(){var n;n=this._selectedItemsID.indexOf(this._itemID);this._selectedItemsID.splice(n,1);this._itemID=""},_refreshScroller:function(){if(!t.isNullOrUndefined(this.popupListWrapper)){this.model.enablePopupResize||(this.popupList.css("height","auto"),this.popupListWrapper.css("height","auto"));this.popupList.find(".e-content, .e-vhandle").removeAttr("style");this.popupList.find(".e-vhandle div").removeAttr("style");this.popupList.children(".e-content").removeClass("e-content");var n=this._isPopupShown();this.popupListWrapper.css("display","block");this.popupList.css({display:"block"});this.scrollerObj.model.height=Math.ceil(this._getPopupHeight());this.scrollerObj.refresh();this.model.enablePopupResize||(this.popupList.css("height","auto"),this.popupListWrapper.css("height","auto"));this.scrollerObj.option("scrollTop",0);n||this.popupListWrapper.css("display","none")}},_enablePopupResize:function(){this.model.enablePopupResize&&!t.isNullOrUndefined(this.popupListWrapper)&&(this.popupListWrapper.addClass("e-resizable").append(t.buildTag("div.e-resizebar").append(t.buildTag("div.e-icon e-resize-handle"))).find(".e-resize-handle").addClass(this.model.enableRTL?"e-rtl-resize":""),this._resizePopup())},_resizePopup:function(){var t=this,i=!1;this.popupListWrapper.find("div.e-resize-handle").ejResizable({minHeight:t._validatePixelData(t.model.minPopupHeight),minWidth:t._validatePixelData(t.model.minPopupWidth),maxHeight:t._validatePixelData(t.model.maxPopupHeight),maxWidth:t._validatePixelData(t.model.maxPopupWidth),handle:"e-ddl-popup",resizeStart:function(n){if(!t.model.enabled)return!1;i||t._trigger("popupResizeStart",{event:n});i=!0},resize:function(i){var r=n(i.element).parents("div.e-ddl-popup");t._refreshPopupOnResize(n(r).outerHeight(),n(r).outerWidth());t._trigger("popupResize",{event:i})},resizeStop:function(n){i&&(t._refreshPopupOnResize(t.model.popupHeight,t.model.popupWidth),i&&t._trigger("popupResizeStop",{event:n}),i=!1)},helper:function(i){var r=n(i.element).parents("div.e-ddl-popup");return t._refreshPopupOnResize(n(r).outerHeight(),n(r).outerWidth()),n(t.popupListWrapper)}})},_refreshPopupOnResize:function(n,t){n&&(this.model.popupHeight=n);t&&(this.model.popupWidth=t);this.popupListWrapper.css({height:this._validatePixelData(this.model.popupHeight),"min-height":this._validatePixelData(this.model.minPopupHeight),"max-height":this._validatePixelData(this.model.maxPopupHeight)});this._setListWidth();this._refreshScroller()},_setListWidth:function(){if(!t.isNullOrUndefined(this.popupListWrapper)){var n=this.model.popupWidth;n!="auto"?this.popupListWrapper.css({width:n}):this.popupListWrapper.css({"min-width":this._validatePixelData(this.model.minPopupWidth)});this.popupListWrapper.css({"max-width":this._validatePixelData(this.model.maxPopupWidth)})}},_setListHeight:function(){t.isNullOrUndefined(this.popupListWrapper)||(this.model.enablePopupResize&&this.model.enableFilterSearch&&this.model.minPopupHeight&&this.model.minPopupHeight.toString().indexOf("%")<0&&this._validatePixelData(this.model.minPopupHeight)==20&&(this.model.minPopupHeight="65"),this.model.enablePopupResize?this.popupListWrapper.css({"min-height":this._validatePixelData(this.model.minPopupHeight),"max-height":this._validatePixelData(this.model.maxPopupHeight),height:this._validatePixelData(this.model.popupHeight)}):this.popupListWrapper.css({"max-height":this._validatePixelData(this.model.popupHeight),"min-height":this._validatePixelData(this.model.minPopupHeight)}))},_validatePixelData:function(n){return n&&!isNaN(n)?Number(n):n},_getPopupHeight:function(){var n=this.popupListWrapper.height(),t;return this.model.enablePopupResize&&(n-=this.popupListWrapper.find(">div.e-resizebar").height()),this.model.headerTemplate&&this.headerTemplate&&(n-=this.headerTemplate.height()),this.model.enableFilterSearch&&this.inputSearch&&(t=this.inputSearch.parent(".e-in-wrap"),n-=parseInt(t.css("height"))+parseInt(t.css("margin-top"))+parseInt(t.css("margin-bottom"))),n},_refreshPopup:function(){this.model.popupWidth!="auto"||this._validatePixelData(this.model.minPopupWidth)?this._validatePixelData(this.model.minPopupWidth)&&this.popupListWrapper.css({"min-width":this._validatePixelData(this.model.minPopupWidth)}):this.popupListWrapper.css({"min-width":this.wrapper.width()});this.scrollerObj!=i&&this._refreshScroller();this._setListPosition()},_setListPosition:function(){var t=this.wrapper,i=this._getOffset(t),f,h=n(document).scrollTop()+n(window).height()-(i.top+n(t).outerHeight()),c=i.top-n(document).scrollTop(),u=this.popupListWrapper.outerHeight(),e=this.popupListWrapper.outerWidth(),r=i.left,o=t.outerHeight(),l=(o-t.height())/2,a=this._getZindexPartial(),s=3,v=(u<h||u>c?i.top+o+s:i.top-u-s)-l;f=n(document).scrollLeft()+n(window).width()-r;(this.model.enableRTL||e>f&&e<r+t.outerWidth())&&(r-=this.popupListWrapper.outerWidth()-t.outerWidth());this.popupListWrapper.css({left:r+"px",top:v+"px","z-index":a})},_getOffset:function(n){return t.util.getOffset(n)},_getZindexPartial:function(){return t.util.getZindexPartial(this.element,this.popupListWrapper)},_showResult:function(){var i=this,r;(this.popUpShow=!0,this.model.loadOnDemand&&(t.isNullOrUndefined(this.popupListWrapper)&&this._renderPopupPanelWrapper(),(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),this._renderRemaining()),(this.model.allowGrouping||this.model.fields.groupBy)&&this.popupListWrapper.addClass("e-atc-popup"),r={text:this._visibleInput[0].value,value:this._selectedValue,refreshPopup:!0},this._trigger("beforePopupShown",r))||(r.refreshPopup&&this._refreshPopup(),n(this.popupListWrapper).slideDown(this.model.enableAnimation?200:1,function(){n(document).on("mousedown",n.proxy(i._OnDocumentClick,i));t.isDevice()||i._on(t.getScrollableParents(i.wrapper),"scroll",i._hideResult)}),this._setAttr(this.wrapper[0],{"aria-expanded":!0}),this._setAttr(this.popupListWrapper[0],{"aria-hidden":!1}),this._setAttr(this.ultag[0],{"aria-hidden":!1}),this._listSize=this._getLi().length,this.wrapper.addClass("e-popactive"),this._trigger("popupShown",{text:this._visibleInput[0].value,value:this._selectedValue}),this.scrollerObj.setModel({scrollTop:this._calcScrollTop("active")}))},_OnWindowResize:function(){!t.isNullOrUndefined(this.model)&&this._isPopupShown()&&this._refreshPopup()},_hideResult:function(i){if(this.model&&this._isPopupShown()){if(!t.isNullOrUndefined(i)&&!t.isNullOrUndefined(this.inputSearch)&&n(this.inputSearch).is(":focus")&&i.type=="scroll"&&t.isTouchDevice())return!1;var r=this;if(this._trigger("beforePopupHide",{text:this._visibleInput[0].value,value:this._selectedValue}))return;n(this.popupListWrapper).slideUp(this.model.enableAnimation?100:0,function(){n(document).off("mousedown",n.proxy(r._OnDocumentClick,r))});this.element!=null&&this._setAttr(this.wrapper[0],{"aria-expanded":!1});this.popupListWrapper[0]&&this._setAttr(this.popupListWrapper[0],{"aria-hidden":!0});this.ultag[0]&&this._setAttr(this.ultag[0],{"aria-hidden":!0});t.isDevice()||this._off(t.getScrollableParents(this.wrapper),"scroll",this._hideResult);this._visibleInput!=null&&this.wrapper.removeClass("e-popactive");this.popUpShow=!1;this._trigger("popupHide",{text:this._visibleInput[0].value,value:this._selectedValue});setTimeout(function(){r._resetSearch()},100);this._getLi().find(".e-ddl-anim").removeClass("e-ddl-anim")}},_isPopupShown:function(){if(!t.isNullOrUndefined(this.popupListWrapper))return this.popupListWrapper.css("display")=="block"},_enterTextBoxValue:function(t){var u,f=!0,i,r;if(this.removeID=!1,this.checkedStatus=!1,this._isWatermark||this._hiddenSpan.css("display","none"),this._chooseSelectionType(),(this._activeItem>=0||this._activeItem!=null)&&(this.model.showCheckbox?(i=this.activeItem.find(".e-checkwrap")[0],n(i).removeClass("e-check-inact"),this.checkedStatus=this._isChecked(i)):this.checkedStatus=this.activeItem.hasClass("e-active")),u={text:this._currentText,selectedText:this._currentText,itemId:this.selectedIndexValue,value:this._selectedValue,isChecked:this.checkedStatus,isInteraction:!!this._uiInteract},!this._initValue&&!this._onSearch&&this._raiseEvents&&this._trigger("select",u)){this._setWatermark();return}(this._activeItem>=0||this._activeItem!=null)&&(!this._isSingleSelect()&&(!this._checkContains(this._selectedValue)||this._checkedValues.length>0)?(this.model.showCheckbox?(i=this.activeItem.find(".e-checkwrap")[0],this._isChecked(i)||(this._removeClass(i,"e-ddl-anim"),this._setClass(i,"e-check-act e-ddl-anim"),this._setAttr(i,{"aria-checked":!0}),n(i).find(".e-check-input")[0].checked=!0)):this.activeItem.addClass("e-active"),this.model.multiSelectMode=="visualmode"&&(r=this._createBox(this._currentText,this._selectedValue),(this._ulBox.children()&&this._ulBox.children().length>0?this._checkForDuplicates(r):!0)&&this._ulBox.append(r),this._isPopupShown()&&this._setListPosition()),this._maintainHiddenValue(),this._addText(this._currentText),this._isSingleSelect()||JSON.stringify(this._boxValue)==JSON.stringify(this._valueContainer)||this._createListHidden(this._hiddenValue),n.inArray(this.selectedIndexValue,this._selectedIndices)==-1&&(this._selectedIndices.push(this.selectedIndexValue),this.model.selectedItems=this.model.selectedIndices=this._selectedIndices)):this._isSingleSelect()?(this.ultag.children("li").removeClass("e-hover").removeClass("e-active"),this.activeItem.addClass("e-active"),this._maintainHiddenValue(),this._visibleInput.val(this._currentText),this.element.val(this._hiddenValue),this.selectedItemIndex(this.selectedIndexValue),this.selectedIndex(this.selectedIndexValue),this._selectedIndices[0]=this.selectedIndexValue):f=!1,f&&(this.checkedStatus=!0,t&&this._checkedValues.push(this.activeItem.text()),this._onValueChange(),this._cascadeAction(),this.selectelement&&n("#"+this._id).children().length>this.selectedIndexValue&&(n("#"+this._id).children()[this.selectedIndexValue].selected=!0)));this.model.uncheckAll=!1;this._setWatermark();this._uiInteract=!1},_checkForDuplicates:function(t){var i=!0,r=this._ulBox.children().toArray();return r.forEach(function(r){if(t.attr("data-value")==n(r).attr("data-value"))return i=!1,!1},this),i},_onValueChange:function(){if(this.model.itemValue=this._selectedValue,this._updateText(),this._isSingleSelect()||JSON.stringify(this._boxValue)==JSON.stringify(this._valueContainer)||(this._valueContainer=this._boxValue),this._visibleInput.val()==""&&this.element.val()&&this.element.val(""),this.value()!=this.element.val()||this.value()==null&&n.inArray("",this._valueContainer)!=-1){t.isNullOrUndefined(n(this.getSelectedItem()).last()[0])||(this.model.enableFilterSearch&&this.model.enableServerFiltering?this._updateSelectedIndex(this.element.val(),n(this.getSelectedItem()).last().attr("data-uid")):this._updateSelectedIndexByValue(this.element.val()));this._isSingleSelect()?this._updateValue(this.element.val()):this._updateValue(this._valueContainer.toString());this.selectedTextValue=this.model.text;this.model.showCheckbox||this.model.multiSelectMode!="none"||this.model.value!=null&&this.model.value!=""||(this.model.itemValue="");var i={text:this._visibleInput[0].value,selectedText:this._currentText,itemId:this.selectedIndexValue,selectedValue:this._selectedValue,value:this._selectedValue,isChecked:this.checkedStatus,isInteraction:!!this._uiInteract};this._initValue||this._onSearch||!this._raiseEvents||(typeof this.model._change=="function"&&this._trigger("_change",{isChecked:this.checkedStatus,text:this._visibleInput.val(),itemId:this.selectedIndexValue,selectedText:this._currentText,selectedValue:this._selectedValue,value:this.value(),data:this.model,isInteraction:!!this._uiInteract}),this._trigger("change",i),this.model.showCheckbox&&this._trigger("checkChange",{isChecked:this.checkedStatus,text:this._visibleInput.val(),itemId:this.selectedIndexValue,selectedText:this._currentText,selectedValue:this._selectedValue,value:this._selectedValue,data:this.model}));this._uiInteract=!1;this.model.enableFilterSearch&&this.model.enableServerFiltering&&(this._searchresult=[],this._searchresult=this.getItemDataByValue(this.value()))}},_updateSelectedIndex:function(t,i){var f,u,r;if(t){for(this._selectedIndices=this.model.selectedItems=this.model.selectedIndices=[],this._virtualList=this._virtualUl.children("li:not('.e-category')"),f=this._toArray(t),u=0;u<f.length;u++)for(r=0;r<this._virtualList.length;r++)if(f[u]==this._getIndexedValue(this._virtualList[r])&&i==n(this._virtualList[r]).attr("data-uid")){this._selectedIndices.push(r);break}this.model.selectedItems=this.model.selectedIndices=this._selectedIndices}},_decode:function(t){return n("<span>").html(t).text()},_chooseSelectionType:function(){this.activeItem=this._getActiveItem();this.selectedIndexValue=this._activeItem;this._mapFields();var i=/([^"]*)\&[gl]t;([^"]*)/g;this._dataSource()==null||this._isPlainType(this._dataSource())&&this._isPlainType(this.popupListItems)?(this._currentText=this.activeItem.text(),this._getAttributeValue(this.activeItem[0])?this._selectedValue=this._getAttributeValue(this.activeItem[0]):this._currentText!=null?(t.isNullOrUndefined(this.activeItem[0])||this.activeItem[0].setAttribute("value",this._currentText),this._selectedValue=this._currentText):this._selectedValue="",this._itemID=n(this.activeItem).attr("id")):(this._currentText=this.model.enableFilterSearch&&this.ultag.children()[this._activeItem].textContent==this.activeItem.text()?i.test(this.ultag.children()[this._activeItem].textContent)?this._decode(this.ultag.children()[this._activeItem].textContent):this.ultag.children()[this._activeItem].textContent:i.test(this._getField(this.popupListItems[this._activeItem],this.mapFld._text))?this._decode(this._getField(this.popupListItems[this._activeItem],this.mapFld._text)):this._getField(this.popupListItems[this._activeItem],this.mapFld._text),this._currentText=this._currentText===""||this._currentText==null?this.activeItem.text():this._currentText,this._selectedValue=this._getField(this.popupListItems[this._activeItem],this.mapFld._value),this._selectedValue=this._selectedValue!=null?this._selectedValue:this._currentText,this._itemID=this._getField(this.popupListItems[this._activeItem],this.mapFld._id));t.isNullOrUndefined(this._itemID)||this._itemID==""&&this._itemID!=0||(this.model.showCheckbox?this.removeID?this._removeSelectedItemsID():this._selectedItemsID.push(this._itemID):(this._selectedItemsID=[],this.removeID||this._selectedItemsID.push(this._itemID)));this.selectedTextValue=this._currentText},_maintainHiddenValue:function(){var n=this._getAttributeValue(this.activeItem[0]);this._hiddenValue=t.isNullOrUndefined(n)?this._currentText:n},_removeTextBoxValue:function(i){var u,f,r;if(this._uiInteract=!0,this.removeID=!0,this.checkedStatus=!0,this._isFilterInput())for(u=0;u<this._getLi().length;u++)n(this._getLi()[u]).attr("data-value")==i&&(this._activeItem=u);if(this._chooseSelectionType(),(this._activeItem>=0||this._activeItem!=null)&&(this.model.showCheckbox?(r=this.activeItem.find(".e-checkwrap")[0],n(r).removeClass("e-ddl-anim").addClass("e-check-inact e-ddl-anim"),this.checkedStatus=this._isChecked(r)):this.checkedStatus=this.activeItem.hasClass("e-active")),f={text:this._currentText,selectedText:this._currentText,itemId:this.selectedIndexValue,value:this._selectedValue,isChecked:this.checkedStatus},!this._initValue&&!this._onSearch&&this._raiseEvents&&this._trigger("select",f)){this._setWatermark();return}this._maintainHiddenValue();this._hiddenValue=this._isFilterInput()&&!t.isNullOrUndefined(i)?i:this._hiddenValue;this._removeText(this._hiddenValue);this._isSingleSelect()||JSON.stringify(this._boxValue)==JSON.stringify(this._valueContainer)||this._removeListHidden(this._hiddenValue);this._isFilterInput()&&!this.activeItem.attr("data-value")==i&&this.activeItem.removeClass("e-active");this._isSingleSelect()||(this.model.showCheckbox?(r=this.activeItem.find(".e-checkwrap")[0],this._isChecked(r)&&(this._removeClass(r,"e-check-act"),this._setAttr(r,{"aria-checked":!1}),n(r).find(".e-check-input")[0].checked=!0)):this.activeItem.removeClass("e-active"),n.inArray(this.selectedIndexValue,this._selectedIndices)>-1&&(this._selectedIndices.splice(n.inArray(this.selectedIndexValue,this._selectedIndices),1),this.model.selectedItems=this.model.selectedIndices=this._selectedIndices),this.model.multiSelectMode=="visualmode"&&(this._deleteBoxCheck(this._hiddenValue),this._isPopupShown()&&this._setListPosition()));this.checkedStatus=!1;this._onValueChange();this.model.cascadeTo==null||this._isSingleSelect()||this._initValue||this._cascadeAction();this.model.checkAll=!1;this._setWatermark()},_createBox:function(i,r){if(!this._checkContains(r)||this._checkedValues.length>0){this._ulBox.css("display")=="none"&&this._visibleInput.css("display")!="none"&&this._swapUlandInput(!0);var u=t.buildTag("span.e-icon e-close","",{},{unselectable:"on"}),f=t.buildTag("li.e-options").text(i).attr("data-value",r).append(u);return this._on(u,"click",function(t){if(!this.model.enabled)return!1;this.delIconClick=!0;this._deleteBox(n(t.target).parent());this.delIconClick=!1}),f}},_deleteBoxCheck:function(t){for(var r=this._ulBox.children("li"),i=0;i<r.length;i++)n(r[i]).attr("data-value")==t&&(n(r[i]).remove(),this._checkedValues.splice(i,1))},_deleteLastBox:function(){var t=this._ulBox.children("li:not(.e-search-box)"),n=t.last();n.hasClass("e-active")?this._deleteBox(n):(this._removeActive(),n.addClass("e-active"))},_deleteBox:function(t){for(var f,r,o,e,i,u=0;u<t.length;u++)if(f=n(t[u]).attr("data-value"),this._isFilterInput()){for(r=this.getListData(),i=0;i<r.length;i++)if(o=this._getField(r[i],this.mapFld._value)?this._getField(r[i],this.mapFld._value):this._getField(r[i],this.mapFld._text),o==f){this._removeTextBoxValue(f);break}this._resetSearch()}else for(e=this._getLi(),i=0;i<e.length;i++)if(n(e[i]).attr("data-value")==f){this._activeItem=i;this._removeTextBoxValue();break}this._isFocused||this._isPopupShown()||this._setWatermark()},_isFilterInput:function(){if(this.model.enableFilterSearch&&this.inputSearch){if(!this.inputSearch.val()=="")return!0}else return!1},_swapUlandInput:function(n){n?(this._visibleInput.css("display","none"),this._ulBox.css("display","block"),this.wrapper.css({height:"auto"})):(this._visibleInput.css("display","block"),this._ulBox.css("display","none"),this.wrapper.css({height:this.model.height}))},_removeActive:function(){this._ulBox.children("li").removeClass("e-active")},_adjustWidth:function(){var n=t.buildTag("span",this._visibleInput.val());this.container.append(n);this._visibleInput.width(n.width()+30);n.remove()},_destroyBoxModel:function(){this._visibleInput.css("display","block");this.wrapper.height(this.model.height);this._ulBox.remove();this._ulBox=null;this._off(this.container,"click")},_removeListHover:function(){this.ultag.children("li").removeClass("e-hover")},_addListHover:function(){var n=this._getActiveItem();this._setAttr(n[0],{"aria-selected":!0});this._setAttr(this.wrapper[0],{"aria-activedescendant":n[0].id.toString(),"aria-labelledby":n[0].id.toString()});n.addClass("e-hover");this.scrollerObj.setModel({scrollTop:this._calcScrollTop("hover")})},_getLi:function(){if(this.ultag)return this.ultag.children("li:not('.e-category'):not('.e-nosuggestion')")},_calcScrollTop:function(t){var s=this.ultag.outerHeight(),u=this.ultag.find("li"),o=0,i,f,r,e;for(this._selectedIndices&&this._selectedIndices.length>0&&t=="active"?(e=this._getLi(),i=this._selectedIndices.length==e.length?0:this._selectedIndices[this._selectedIndices.length-1],(this.model.fields.groupBy!=null||this.ultag.find("li.e-category").length>0)&&(i=n.inArray(e.eq(i)[0],u))):i=this.ultag.find("li.e-"+t).index(),r=0;r<i;r++)o+=u.eq(r).outerHeight(!0);return f=o-(this.popupList.outerHeight()-u.eq(i).outerHeight(!0))/2,f<0?0:f},_getActiveItem:function(){return this._getLi().eq(this._activeItem)},_setDimentions:function(){this.model.height&&this.wrapper.height(this.model.height);this.model.width&&this.wrapper.width(this.model.width)},_roundedCorner:function(n){n?(this.container.addClass("e-corner"),t.isNullOrUndefined(this.popupListWrapper)||this.popupListWrapper.addClass("e-corner"),this.inputSearch&&this.inputSearch.parent(".e-in-wrap").addClass("e-corner")):(this.container.removeClass("e-corner"),t.isNullOrUndefined(this.popupListWrapper)||this.popupListWrapper.removeClass("e-corner"),this.inputSearch&&this.inputSearch.parent(".e-in-wrap").removeClass("e-corner"))},_enabled:function(n){n?this.enable():this.disable()},_RightToLeft:function(){this.model.enableRTL?this.wrapper.addClass("e-rtl"):this.wrapper.removeClass("e-rtl")},_dropbtnRTL:function(){this.model.enableRTL?(this.popupListWrapper.addClass("e-rtl").find(".e-resize-handle").addClass("e-rtl-resize"),this.popupList.addClass("e-rtl")):(this.popupListWrapper.removeClass("e-rtl").find(".e-resize-handle").removeClass("e-rtl-resize"),this.popupList.removeClass("e-rtl"))},_OnDropdownClick:function(i){if((this._preventDefaultAction(i),n(i.target).is("li")&&n(i.target).parent().hasClass("e-boxes")||n(i.target).parents("ul").hasClass("e-boxes")&&n(i.target).hasClass("e-icon e-close"))||this.model.readOnly||this._readOnly)return!1;var r=t.isNullOrUndefined(this.ultag)?this.model.loadOnDemand&&!t.isNullOrUndefined(this.model.dataSource)?!0:!1:this.ultag.find("li").length>0;r&&(i.which&&i.which==1||i.button&&i.button==0)&&this._OnPopupHideShow()},_OnPopupHideShow:function(){if(this._isPopupShown())this._hideResult();else if(this._showResult(),this.model.enableFilterSearch){if(this.getSelectedItem().length==0)this.ultag.find("li:first").addClass("e-hover");else{var t=this.getSelectedItem().length;n(this.getSelectedItem()[t-1]).addClass("e-hover")}n(this.inputSearch).focus()}else this.wrapper.focus()},_showFullList:function(){var n=this._dataSource(),i;t.isNullOrUndefined(this.ultag)&&(this.ultag=t.buildTag("ul.e-ul","",{},{role:"listbox"}));t.DataManager&&n instanceof t.DataManager?n.dataSource.offline||n.dataSource.json&&n.dataSource.json.length>0?this._getFilteredList(n.dataSource.json):(i=this,i._initDataSource(n)):this._getFilteredList(n)},_getFilteredList:function(n){if(!n||!n.length||n.length<1)this._targetElementBinding(),this._renderRemaining();else{var i=t.DataManager(n).executeLocal(this._isPlainType(n)?t.Query():this._getQuery(!0));this._totalCount=i.count;this._listItem(i.result?i.result:i);this._renderPopupList();this._rawList=this.popupListItems.slice()}},_cascadeAction:function(){if(this.model.cascadeTo)for(var r=this.model.cascadeTo.split(","),i=0;i<r.length;i++)if(n("#"+r[i]).hasClass("e-dropdownlist"))this._doCascadeAction(r[i],this,this.checkedStatus);else n("#"+r[i]).on("ejDropDownListcreate",{Obj:this,status:this.checkedStatus},function(n){t.isNullOrUndefined(n.data.Obj.getValue())||n.data.Obj.getValue()==""||n.data.Obj._doCascadeAction(this.id,n.data.Obj,n.data.status)})},_doCascadeAction:function(i,r,u){r._currentValue=r._getField(r.popupListItems[r._activeItem],r.mapFld._value);r.selectDropObj=n("#"+i).ejDropDownList("instance");var f={cascadeModel:r.selectDropObj.model,cascadeValue:r._currentValue,setCascadeModel:{},requiresDefaultFilter:!0};this._trigger("cascade",f);r.selectDropObj._setCascadeModel=f.setCascadeModel;t.isNullOrUndefined(r[i])&&(r[i]=r.selectDropObj._dataSource());t.DataManager&&r[i]instanceof t.DataManager?r._cascadeOdataInit(r[i],f.requiresDefaultFilter,u,f.cascadeQuery):r._cascadeJsonInit(r.selectDropObj,r[i],r.mapFld._value,f.requiresDefaultFilter,u,f.cascadeQuery)},_cascadeOdataInit:function(n,t,i,r){var u=this,e,f;u._dQuery=this.selectDropObj._getQuery().clone();f=u._dQuery.clone();t?f.where(u.mapFld._value,"equal",u._currentValue):f=r;u.selectDropObj._addLoadingClass();u._trigger("actionBegin",{requestFrom:"cascade"})||(e=n.executeQuery(f),e.fail(function(n){u._changedSource=null;u.selectDropObj.setModel({dataSource:u._changedSource,enabled:!1});u._trigger("actionFailure",{e:n,requestFrom:"cascade"})}).done(function(n){u._trigger("actionSuccess",{e:n,requestFrom:"cascade"});u._cascadeDataBind(u.selectDropObj,n.result,i);u.selectDropObj._removeLoadingClass()}).always(function(n){u._trigger("actionComplete",{e:n,requestFrom:"cascade"})}))},_cascadeJsonInit:function(n,i,r,u,f,e){var o=u?t.Query().where(r,"==",this._currentValue):e,s=t.DataManager(i).executeLocal(o);this._cascadeDataBind(n,s,f)},_cascadeDataBind:function(i,r,u){var l=i.value(),f,e,h,c,s,o;if(this.model.showCheckbox&&u||this.model.multiSelectMode!="none"&&this.activeItem.hasClass("e-active"))this._changedSource=t.isNullOrUndefined(this._changedSource)?r:this._changedSource.concat(r);else if(this.model.showCheckbox||this.model.multiSelectMode!="none"){for(f=0;f<r.length;f++)if(this._isPlainType(r)&&this._isPlainType(this._changedSource))this._changedSource.splice(this._changedSource.indexOf(r[f]),1);else for(e=0;e<this._changedSource.length;e++)JSON.stringify(this._changedSource[e])==JSON.stringify(r[f])&&this._changedSource.splice(e,1);i.setModel({dataSource:null})}else this._changedSource=r;if(h=i.model.value,c=JSON.parse(JSON.stringify(i.model)),i.setModel({dataSource:this._changedSource,enabled:this._changedSource.length>0}),this._isSingleSelect()||i.selectItemByValue(l),(i.model.showCheckbox||i.model.multiSelectMode!="none")&&n("input:hidden[id^='#'][name="+i._id+"]").remove(),i._setSelectedItem)i.setModel(i._setCascadeModel);else{for(s=["value","text","selectedIndex","selectedIndices"],o=0;o<s.length;o++)i.model[s[o]]=c[s[o]];i.model.value=h;i._finalize()}i._setSelectedItem=!0},_OnMouseEnter:function(t){var i,r;if(!this.model.enabled||this.model.readOnly)return!1;this.ultag.children("li").removeClass("e-hover");n(t.target).is("li:not('.e-category')")&&n(t.target).addClass("e-hover");n(t.target).hasClass("e-disable")?n(t.target).removeClass("e-hover"):t.target.tagName!="li"&&(i=n(t.target).parents("li:not('.e-category')"),n(i).addClass("e-hover"));this.ultag.children("li:not('.e-category')").each(function(t){if(n(this).hasClass("e-hover"))return r=t,!1});this._activeItem=r},_OnMouseLeave:function(){if(!this.model.enabled||this.model.readOnly||this._readOnly)return!1;this.ultag.children("li").removeClass("e-hover")},_OnMouseClick:function(t){var r,u,i;if((this._uiInteract=!0,!this.model.enabled||this.model.readOnly||this._readOnly)||this.model.enableFilterSearch&&n(t.target).is("li")&&n(t.target).hasClass("e-nosuggestion"))return!1;(!n(t.target).is("li")||n(t.target).hasClass("e-disable"))&&(n(t.target).is("li")||n(t.target).closest("li").hasClass("e-disable"))||(this._isSingleSelect()?(this._enterTextBoxValue(),this._hideResult()):this.model.showCheckbox?(r=t.target.nodeName==="LI"?t.target:n(t.target).parents("li.e-hover"),u=n(r).find(".e-checkwrap")[0],this._onCheckChange({target:u})):(i=n(t.target).is("li")?t.target:n(t.target).closest("li")[0],this._activeItem=n.inArray(i,this._getLi()),n(i).hasClass("e-active")?this._removeTextBoxValue():this._enterTextBoxValue()))},_OnDocumentClick:function(t){if(this.model&&(!this.model.enabled||this.model.readOnly||this._readOnly))return!1;n(t.target).is(this.popupList)||n(t.target).parents(".e-ddl-popup").is(this.popupListWrapper)||n(t.target).is(this._visibleInput)||n(t.target).parents(".e-ddl").is(this.wrapper)?n(t.target).is(this.inputSearch)?this.inputSearch.focus():(n(t.target).is(this.popupList)||n(t.target).parents(".e-ddl-popup").is(this.popupListWrapper))&&this._preventDefaultAction(t):this._hideResult()},_OnKeyPress:function(n){this.model.enableIncrementalSearch&&n.keyCode!=13&&this._OnTextEnter(t.browserInfo().name=="mozilla"?n.charCode:n.keyCode);n.keyCode==32&&this._preventDefaultAction(n)},_OnTextEnter:function(i){var l=this,s,h,r,v,e;this._incqueryString+=String.fromCharCode(i);this._incqueryString.length>0&&setTimeout(function(){l._incqueryString=""},this.model.incrementalSearchDelay);var u=this._getLi(),r,o=null,c=this.model.caseSensitiveSearch,f=this._incqueryString,a=this._incqueryString.length;if(c||(f=f.toLowerCase()),this._prevQueryString==f){for(r=0;r<this._matchedListItems.length;r++)if(n(this._matchedListItems[r]).hasClass("e-active")||this.model.showCheckbox&&n(this._matchedListItems[r]).hasClass("e-hover")){o=r==this._matchedListItems.length-1?this._matchedListItems[0]:this._matchedListItems[r+1];break}}else if(!t.isNullOrUndefined(u)){for(this._matchedListItems=[],s=this.selectedIndex(),r=0;r<u.length;r++)r!=s&&((r==u.length||r==-1)&&(r=-1),s==-1&&(s=u.length,r=0),h=r==-1?0:r,v=u[h],e=n(u[h]).text(),e=c?e:e.toLowerCase(),e.substr(0,a)==f&&this._matchedListItems.push(u[h]));this._prevQueryString=f;o=this._matchedListItems[0]}t.isNullOrUndefined(o)||(this._activeItem=n.inArray(o,u),this._isSingleSelect()&&!t.isNullOrUndefined(this.scrollerObj)?(this._enterTextBoxValue(),this.scrollerObj.setModel({scrollTop:this._calcScrollTop("active")})):this._isPopupShown()&&(this._removeListHover(),this._addListHover()))},_selectItem:function(n){this._isSingle||this._clearTextboxValue();this.activeItem&&this._setAttr(this.activeItem[0],{"aria-selected":!1});this._activeItem=n;this._addListHover();this.wrapper.focus();this._enterTextBoxValue()},_focusItem:function(n){this._removeListHover();this._activeItem=n;this._addListHover()},_selectFocusedItem:function(n){this._focusItem(n);this._enterTextBoxValue()},_selectShiftDown:function(t,i,r){r||this._clearTextboxValue();for(var u=t;u<=i;u++)n.inArray(u,this._disabledItems)<0&&n.inArray(u,this.model.selectedIndices)<0&&this._selectFocusedItem(u)},_selectShiftUp:function(t,i,r){r||this._clearTextboxValue();for(var u=i;u>=t;u--)n.inArray(u,this._disabledItems)<0&&n.inArray(u,this.model.selectedIndices)<0&&this._selectFocusedItem(u)},_selectShiftHome:function(t,i,r){if(r||this._clearTextboxValue(),t>=0&&t<=this._listSize-1){if(t==0)this._clearTextboxValue();else for(var u=t;u>=i;u--)n.inArray(u,this._disabledItems)<0&&n.inArray(u,this.model.selectedIndices)<0&&(this._activeItem=u,this._enterTextBoxValue());this._activeItem=t;t==0&&this._enterTextBoxValue();this.scrollerObj.setModel({scrollTop:0})}},_selectShiftEnd:function(t,i,r){if(r||this._clearTextboxValue(),t<=this._listSize-1){if(t==i)this._clearTextboxValue();else for(var u=t;u<=i;u++)n.inArray(u,this._disabledItems)<0&&n.inArray(u,this.model.selectedIndices)<0&&(this._activeItem=u,this._enterTextBoxValue());this._activeItem=t;t==i&&this._enterTextBoxValue();this.scrollerObj.setModel({scrollTop:this.ultag.outerHeight()})}},_getLastFocusedLi:function(){return this._selectedIndices&&this._selectedIndices.length>0?this._selectedIndices[this._selectedIndices.length-1]:null},_getLastShiftFocusedLi:function(t,i){var r=i?t-1:t+1;return n.inArray(r,this._selectedIndices)<0?t:this._getLastShiftFocusedLi(r,i)},_shiftUp:function(n,t,i){var u,r,f;if(n==null||n<0)this._checkDisableStep(0,t,!1,!1,!0);else if(n>0&&n<=this._listSize-1&&(u=this._disableItemSelectUp(n-t),u!=null))if(this._getLastFocusedLi()!=null)if(this._selectedIndices.length>1&&n-1==this._selectedIndices[this._selectedIndices.length-2])for(r=1;r<=t;r++)if(n-r==this._selectedIndices[this._selectedIndices.length-2])this._activeItem=n+1-r,this._removeTextBoxValue(),this._focusItem(n-r);else break;else f=this._getLastShiftFocusedLi(this._getLastFocusedLi(),!1),this._selectShiftUp(u,f,i);else this._moveUp(n,t,!1)},_shiftDown:function(n,t,i){var u,r,f;if(n==null||n<0)this._checkDisableStep(-1,t,!0,!1,!0);else if(n<this._listSize-1&&(u=this._disableItemSelectDown(n+t),u!=null))if(this._getLastFocusedLi()!=null)if(this._selectedIndices.length>1&&n+1==this._selectedIndices[this._selectedIndices.length-2])for(r=1;r<=t;r++)if(n+r==this._selectedIndices[this._selectedIndices.length-2])this._activeItem=n-1+r,this._removeTextBoxValue(),this._focusItem(n+r);else break;else f=this._getLastShiftFocusedLi(this._getLastFocusedLi(),!0),this._selectShiftDown(f,u,i);else this._moveDown(n,t,!1)},_moveUp:function(n,t,i){n==null||n<=0?this._checkDisableStep(0,t,!1,i):n>this._listSize-1?this._checkDisableStep(this._listSize-1,t,!1,i):n>0&&n<=this._listSize-1&&this._checkDisableStep(n,t,!1,i)},_moveDown:function(n,t,i){n==null||n<0?this._checkDisableStep(-1,t,!0,i):n==0?this._checkDisableStep(0,t,!0,i):n>=this._listSize-1?this._checkDisableStep(this._listSize-1,t,!0,i):n<this._listSize-1&&this._checkDisableStep(n,t,!0,i)},_checkDisableStep:function(n,t,i,r,u){var s=i?"_disableItemSelectDown":"_disableItemSelectUp",o=i?n+t:n-t,f=this[s](o),e;if(f==null)for(e=t;e>=0;e--)if(o=i?n+e:n-e,f=this[s](o),f!=null)break;f!=null&&(r?this._focusItem(f):this._selectItem(f),u&&r&&this._enterTextBoxValue())},_disableItemSelectDown:function(t){return(t==null||t<0)&&(t=0),t<this._listSize?n.inArray(t,this._disabledItems)<0?t:this._disableItemSelectDown(t+1):this._listSize-1},_disableItemSelectUp:function(t){if((t==null||t<0)&&(t=0),t<this._listSize){if(n.inArray(t,this._disabledItems)<0)return t;if(t>0)return this._disableItemSelectUp(t-1)}},_preventDefaultAction:function(n,t){n.preventDefault?n.preventDefault():n.returnValue=!1;t&&(n.stopPropagation?n.stopPropagation():n.cancelBubble=!0)},_OnKeyDown:function(n){var e,u,f,r,i;if(this._uiInteract=!0,this.model.enabled&&!t.isNullOrUndefined(this.popupListWrapper))if(this._itemId=null,e=this._getLi(),this._listSize=e.length,f=this.popupList.height(),u=this.ultag.children("li").outerHeight(),r=Math.round(f/u)!=0?Math.round(f/u):5,this._isSingle=this._isSingleSelect(),this._isSingle)switch(n.keyCode){case 38:if(n.altKey){this.ultag.find("li").length>0&&this._hideResult();break}case 33:i=n.keyCode==33?r:1;this._moveUp(this._activeItem,i);this._preventDefaultAction(n,!0);break;case 8:this._preventDefaultAction(n);break;case 40:if(n.altKey){this.ultag.find("li").length>0&&this._showResult();break}case 34:i=n.keyCode==34?r:1;this._moveDown(this._activeItem,i);this._preventDefaultAction(n,!0);break;case 37:this.model.enableRTL?this._moveDown(this._activeItem,1):this._moveUp(this._activeItem,1);this._preventDefaultAction(n);break;case 39:this.model.enableRTL?this._moveUp(this._activeItem,1):this._moveDown(this._activeItem,1);this._preventDefaultAction(n);break;case 9:case 27:this._isPopupShown()&&this._hideResult();break;case 35:this._moveDown(this._listSize-1,0);this._preventDefaultAction(n);break;case 36:i=this._activeItem!=null?this._activeItem:this._listSize-1;this._moveUp(i,i);this._preventDefaultAction(n)}else switch(n.keyCode){case 38:n.altKey?this.ultag.find("li").length>0&&this._hideResult():n.shiftKey?this._shiftUp(this._activeItem,1,n.ctrlKey):this._moveUp(this._activeItem,1,n.ctrlKey);this._preventDefaultAction(n);break;case 33:n.shiftKey?this._shiftUp(this._activeItem,r,n.ctrlKey):this._moveUp(this._activeItem,r,n.ctrlKey);this._preventDefaultAction(n);break;case 8:this._preventDefaultAction(n);break;case 40:n.altKey?this.ultag.find("li").length>0&&this._showResult():n.shiftKey?this._shiftDown(this._activeItem,1,n.ctrlKey):this._moveDown(this._activeItem,1,n.ctrlKey);this._preventDefaultAction(n);break;case 34:n.shiftKey?this._shiftDown(this._activeItem,r,n.ctrlKey):this._moveDown(this._activeItem,r,n.ctrlKey);this._preventDefaultAction(n);break;case 37:this.model.enableRTL?this._moveDown(this._activeItem,1,!1):this._moveUp(this._activeItem,1,!1);this._preventDefaultAction(n);break;case 39:this.model.enableRTL?this._moveUp(this._activeItem,1,!1):this._moveDown(this._activeItem,1,!1);this._preventDefaultAction(n);break;case 9:case 27:this._isPopupShown()&&this._hideResult();break;case 35:n.shiftKey?this._selectShiftEnd(this._activeItem,this._listSize-1,n.ctrlKey):this._moveDown(this._activeItem,this._listSize,n.ctrlKey);this._preventDefaultAction(n);break;case 36:i=this._activeItem!=null?this._activeItem:this._listSize-1;n.shiftKey?this._selectShiftHome(this._activeItem,0,n.ctrlKey):this._moveUp(this._activeItem,i,n.ctrlKey);this._preventDefaultAction(n)}},_OnKeyUp:function(i){var u,r;if(this.model.enabled&&!t.isNullOrUndefined(this.popupListWrapper)){if(this._preventDefaultAction(i),u=i.target,this._activeItem==null&&(this._activeItem=this._getLi().index(this.popupList.find("ol,ul").children("li.e-hover"))),this._trim(this._visibleInput.val())==""&&i.keyCode==38&&i.keyCode==40)return this._hideResult(),!1;switch(i.keyCode){case 13:!this._isSingle&&this._isPopupShown()&&(i.ctrlKey||i.shiftKey)&&this._activeItem>=0?this._selectAndUnselect():!this._isPopupShown()||i.ctrlKey||i.shiftKey?this._isPopupShown()&&this._hideResult():(t.isNullOrUndefined(this.inputSearch)||(this.getSelectedItem().length==0||!this.listitems[0].classList.contains("e-active")&&this._activeItem>=0?(this.selectItemByIndex(this._activeItem),n(this.listitems[this._activeItem]).removeClass("e-hover")):(r=this._getLastFocusedLi(),(this.model.multiSelectMode!="none"||this.model.showCheckbox)&&(this.unselectItemByIndex(r),n(this.listitems[r]).removeClass("e-hover")))),this._hideResult());this._preventDefaultAction(i);break;case 32:this._isPopupShown()&&this._isSingle&&this._hideResult();!this._isSingle&&this._isPopupShown()&&this._activeItem>=0&&this._selectAndUnselect();this._preventDefaultAction(i);break;case 8:this.model.multiSelectMode=="visualmode"&&this._deleteLastBox();this._preventDefaultAction(i);break;case 46:if(this.model.multiSelectMode=="visualmode"||this.model.showCheckbox){this._deleteBox(this._ulBox.children("li.e-active"));break}}}},_isSingleSelect:function(){return!this.model.showCheckbox&&this.model.multiSelectMode=="none"},_selectAndUnselect:function(){this.model.showCheckbox?this._isChecked(this._getActiveItem().find(".e-checkwrap")[0])?this._removeTextBoxValue():this._enterTextBoxValue():this.model.MultiSelectMode!="none"&&(this._getActiveItem().hasClass("e-active")?this._removeTextBoxValue():this._enterTextBoxValue())},_targetFocus:function(){this.model.enabled&&!this._isFocused&&(this._isWatermark||this._hiddenSpan.css("display","none"),this.wrapper.addClass("e-focus e-popactive"),this._isFocused=!0,this._trigger("focusIn"))},_targetBlur:function(){this.model.enabled&&(this._isFocused=!1,this.wrapper.removeClass("e-focus e-popactive"),this._setWatermark(),this._trigger("focusOut"))},_getLocalizedLabels:function(n){return this._localizedLabels[n]===i?t.DropDownList.Locale["en-US"][n]:this._localizedLabels[n]},_wireEvents:function(){this._on(this.wrapper,"focus",this._targetFocus);this._on(this.wrapper,"blur",this._targetBlur);this._on(this.wrapper,"keydown",this._OnKeyDown);t.isNullOrUndefined(this.popupList)||this._on(this.popupList,"keydown",this._OnKeyDown);t.isNullOrUndefined(this.popupList)||this._on(this.popupList,"keyup",this._OnKeyUp);this._on(this.wrapper,"keyup",this._OnKeyUp);t.isNullOrUndefined(this.popupList)||this._on(this.popupList,"keypress",this._OnKeyPress);this._on(this.wrapper,"keypress",this._OnKeyPress)},_unwireEvents:function(){this._off(this.wrapper,"focus",this._targetFocus);this._off(this.wrapper,"blur",this._targetBlur);this._off(this.wrapper,"keydown",this._OnKeyDown);t.isNullOrUndefined(this.popupList)||this._off(this.popupList,"keydown",this._OnKeyDown);t.isNullOrUndefined(this.popupList)||this._off(this.popupList,"keyup",this._OnKeyUp);this._off(this.wrapper,"keyup",this._OnKeyUp);t.isNullOrUndefined(this.popupList)||this._off(this.popupList,"keypress",this._OnKeyPress);this._off(this.wrapper,"keypress",this._OnKeyPress);n(window).off("resize",n.proxy(this._OnWindowResize,this))},_multiItemSelection:function(n,t){var i,r;for(this._ulBox||this.model.multiSelectMode!="visualmode"||this._renderBoxModel(),i=0;i<n.length;i++)r=t?this._rawList.length-(n.length-i):i,this._hasClass(n[i],"chkselect")&&(this._activeItem=r,this._enterTextBoxValue(),this._removeClass(n[i],"chkselect"));this._setWatermark()},_appendCheckbox:function(n,t){var i;for(this._ulBox||this.model.multiSelectMode!="visualmode"||this._renderBoxModel(),i=0;i<n.length;i++){var r=t?this._rawList.length-(n.length-i):i,f=document.createElement("input"),u=document.createElement("span");this._setAttr(f,{type:"checkbox",name:"list"+r,"data-role":"none",id:this._id+"_check"+r})._setClass(f,"e-check-input")._setAttr(u,{name:"list"+r+"_wrap","data-role":"none",id:this._id+"_check"+r+"wrap",unselectable:"on","aria-checked":!1})._setClass(u,"e-checkwrap e-icon ");u.appendChild(f);n[i].insertBefore(u,n[i].childNodes[0]);this._hasClass(n[i],"chkselect")&&(this._activeItem=r,this._enterTextBoxValue(),this._removeClass(n[i],"chkselect"))}this._setWatermark()},_onCheckChange:function(t){this.checkChange=!0;var i=t.target.nodeName==="INPUT"?t.target.parentElement:t.target;this._activeItem=n.inArray(n(i).parents("li")[0],this._getLi());this._hasClass(i,"e-check-act")?this._removeTextBoxValue():this._enterTextBoxValue(!0);this.checkChange=!1},_isChecked:function(t){return this._hasClass(t,"e-check-act")&&n(t).children(".e-check-input")[0].checked==!0},_removeCheck:function(){this._getLi().find(".e-checkwrap").remove()},_resetCheck:function(){var i=this._getLi(),t,n;for(i.find(".e-check-act").removeClass("e-check-act").attr("aria-checked",!1),t=i.find(".e-check-input:checked"),n=0;n<t.length;n++)t[n].checked=!1}});t.DropDownList.Locale=t.DropDownList.Locale||{};t.DropDownList.Locale["default"]=t.DropDownList.Locale["en-US"]={emptyResultText:"No suggestions",watermarkText:""};t.MultiSelectMode={None:"none",Delimiter:"delimiter",VisualMode:"visualmode"};t.VirtualScrollMode={Normal:"normal",Continuous:"continuous"}}(jQuery,Syncfusion),function(n,t,i){t.widget("ejDialog","ej.Dialog",{_rootCSS:"e-dialog",element:null,_ignoreOnPersist:["drag","dragStart","dragStop","resizeStop","resizeStart","resize","beforeClose","beforeOpen","collapse","expand","close","open","destroy","create","ajaxSuccess","ajaxError","contentLoad","actionButtonClick","enableResize"],model:null,validTags:["div","span"],_setFirst:!1,angular:{terminal:!1},defaults:{showOnInit:!0,closeOnEscape:!0,closeIconTooltip:"close",enableAnimation:!0,allowDraggable:!0,backgroundScroll:!0,height:"auto",minHeight:120,minWidth:200,maxHeight:null,maxWidth:null,enableModal:!1,position:{X:"",Y:""},containment:null,enableResize:!0,htmlAttributes:{},showHeader:!0,showFooter:!1,contentType:null,contentUrl:null,ajaxSettings:{type:"GET",cache:!1,data:{},dataType:"html",contentType:"html",async:!0},title:"",width:400,zIndex:1e3,cssClass:"",enableRTL:!1,allowKeyboardNavigation:!0,showRoundedCorner:!1,actionButtons:["close"],animation:{show:{effect:"fade",duration:400},hide:{effect:"fade",duration:400}},tooltip:{close:"Close",collapse:"Collapse",restore:"Restore",maximize:"Maximize",minimize:"Minimize",expand:"Expand",unPin:"UnPin",pin:"Pin"},footerTemplateId:null,locale:"en-US",faviconCSS:null,content:null,target:null,enablePersistence:!1,enabled:!0,isResponsive:!1,actionButtonClick:null,beforeClose:null,close:null,expand:null,collapse:null,beforeOpen:null,open:null,drag:null,dragStart:null,dragStop:null,resize:null,resizeStart:null,resizeStop:null,contentLoad:null,ajaxSuccess:null,ajaxError:null,create:null,destroy:null,Close:null},dataTypes:{showOnInit:"boolean",closeOnEscape:"boolean",enableAnimation:"boolean",backgroundScroll:"boolean",position:"data",animation:"data",closeIconTooltip:"string",tooltip:"data",allowDraggable:"boolean",enableModal:"boolean",enableResize:"boolean",isResponsive:"boolean",showHeader:"boolean",showFooter:"boolean",title:"string",faviconCSS:"string",zIndex:"number",cssClass:"string",enablePersistence:"boolean",contentUrl:"string",contentType:"string",enableRTL:"boolean",enabled:"boolean",allowKeyboardNavigation:"boolean",showRoundedCorner:"boolean",locale:"string",htmlAttributes:"data",ajaxSettings:"data",actionButtons:"array",footerTemplateId:"string"},_setModel:function(i){var r,u;for(r in i)switch(r){case"closeIconTooltip":this._dialogClose.attr("title",i[r]);break;case"tooltip":this._tooltipText(i[r]);break;case"title":this.model.title=i[r];this._ejDialog.find("span.e-title").length<=0?this._addTitleText():this._ejDialog.find("span.e-title").html(i[r]);this._updateCaptionWidth();break;case"width":this.model.width=i[r];this._changeSize();this._updateCaptionWidth();i[r]=this.model.width;break;case"height":this.model.height=i[r];this._changeSize();i[r]=this.model.height;break;case"position":this.model.position=i[r];this._dialogPosition();break;case"cssClass":this._changeSkin(i[r]);break;case"showRoundedCorner":this.model.showRoundedCorner=i[r];this._roundedCorner(i[r]);break;case"contentType":this.model.contentType=i[r];this._appendContent(i[r]);break;case"enabled":this.model.enabled=i[r];this._enabledAction(i[r]);break;case"contentUrl":this.model.contentUrl=i[r];this._appendContent(this.model.contentType);break;case"backgroundScroll":this.model.backgroundScroll=i[r];!this.model.backgroundScroll&&this.model.enableModal?n("body").addClass("e-dialog-modal"):n("body").removeClass("e-dialog-modal");break;case"content":case"target":this._ejDialog.appendTo(n(i[r]));this.model.target=this.model.content=i[r];this._dialogPosition();break;case"containment":this._setDragArea(i[r]);t.isNullOrUndefined(this._target)?this._ejDialog.appendTo(document.body):this._ejDialog.appendTo(this._target);this.model.position.X=this.model.position.Y="";this._dialogPosition();this.model.containment=i[r]=this._target;this.model.enableModal&&this._createOverlay();this._dialogTitlebar.ejDraggable({dragArea:this._target});break;case"locale":this.model.locale=i[r];this.localizedLabels=this._getLocalizedLabels();this._setLocaleCulture(this.localizedLabels,!0);this._tooltipText(this.model.tooltip);this._ejDialog.find("span.e-title").length<=0?this._addTitleText():this._ejDialog.find("span.e-title").html(this.model.title);this._updateCaptionWidth();break;case"minHeight":this.model.minHeight=i[r];this._ejDialog.css("minHeight",i[r]);this._minMaxValidation();this._resetScroller();this._resizeDialog();break;case"minWidth":this.model.minWidth=i[r];this._ejDialog.css("minWidth",i[r]);this._minMaxValidation();this._resetScroller();this._resizeDialog();break;case"maxHeight":this.model.maxHeight=i[r];this._ejDialog.css("maxHeight",i[r]);this._minMaxValidation();this._resetScroller();this._resizeDialog();break;case"maxWidth":this.model.maxWidth=i[r];this._ejDialog.css("maxWidth",i[r]);this._minMaxValidation();this._resetScroller();this._resizeDialog();break;case"zIndex":this._ejDialog.css("z-index",i[r]);break;case"faviconCSS":this.model.faviconCSS=i[r];this._favIcon();this._updateCaptionWidth();break;case"isResponsive":this.model.isResponsive=i[r];this.model.isResponsive?this._ejDialog.addClass("e-dialog-resize"):this._ejDialog.removeClass("e-dialog-resize");this._wireResizing();break;case"allowDraggable":this.model.allowDraggable=i[r];i[r]?this._enableDrag():this._dialogTitlebar.removeClass("e-draggable");break;case"enableResize":this.model.enableResize=i[r];i[r]?this._enableResize():(this._ejDialog.removeClass("e-resizable"),this._ejDialog.find(".e-resize-handle").remove());this._reRenderScroller();break;case"showHeader":this.model.showHeader=i[r];i[r]?(this._renderTitleBar(),this._iconsRender(this.model.actionButtons),this.model.faviconCSS&&(this._dialogFavIcon=!1,this._favIcon()),this._enableDrag(),this._maximize||this._updateScroller(t.isNullOrUndefined(this.contentDiv)?this._ejDialog.outerHeight(!0)-1-this._dialogTitlebar.outerHeight(!0):this.contentDiv.css("border-width")=="0px",t.isNullOrUndefined(this.contentDiv)?this._ejDialog.width()-2:this.contentDiv.css("border-width")=="0px")):(this._ejDialog.find(".e-titlebar").remove(),this._maximize?this.refresh():this._updateScroller(t.isNullOrUndefined(this.contentDiv)?this._ejDialog.outerHeight(!0)-1:this.contentDiv.css("border-width")=="0px",t.isNullOrUndefined(this.contentDiv)?this._ejDialog.width()-2:this.contentDiv.css("border-width")=="0px"));this._roundedCorner(this.model.showRoundedCorner);this.model.showFooter&&this._setContainerSize()._resetScroller();break;case"showFooter":this.model.showFooter=i[r];i[r]?(this._appendContent(),this._ejDialog.find(".e-resizable").remove()):this._ejDialog.find(".e-footerbar").remove();this._enableResize()._enableDrag()._sizeInPercent();this._reRenderScroller();this._setContainerSize()._resetScroller();this._roundedCorner(this.model.showRoundedCorner);break;case"footerTemplateId":this.model.footerTemplateId=i[r];this.model.showFooter&&(this._ejDialog.find(".e-footerbar").empty(),u=n("body").find("#"+this.model.footerTemplateId).html(),this._dialogFooterbar.append(u),this._enableResize());break;case"enableRTL":this.model.enableRTL=i[r];this.model.faviconCSS&&this._favIcon();i[r]?(this._ejDialog.addClass("e-rtl"),this.iframe&&this.iframe.contents().find("body").css("direction","rtl"),this.scroller&&this._resetScroller()):(this._ejDialog.removeClass("e-rtl"),this.iframe&&this.iframe.contents().find("body").css("direction","ltr"),this.scroller&&this._resetScroller());break;case"actionButtons":t.isNullOrUndefined(this._dialogTitlebar)||(this._removeAllIcons(),this._iconsRender(i[r]));this.model.actionButtons=i[r];this._updateCaptionWidth();break;case"enableModal":this._enableModal(i[r]);break;case"htmlAttributes":this._addAttr(i[r])}},_destroy:function(){this._overLay&&this._overLay.remove();this._cloneElement.appendTo(this._ejDialog.parent());this._ejDialog.remove();this.model.enableAnimation&&this._ejDialog.stop();this._cloneElement.removeClass("e-dialog");this.element=this._cloneElement;this._isOpen=!1;n(window).off("resize",n.proxy(this._reSizeHandler,this))},keyConfigs:[37,38,39,40],_init:function(){this._init=!0;this._widthPercent=null;this._heightPercent=null;this._windowSize={outerWidth:n(window).outerWidth(),outerHeight:n(window).outerHeight()};this._initSize={width:this.model.width,height:this.model.height};this._sizeType={width:isNaN(this.model.width)?this.model.width.match(/px|%|auto/g)[0]:null,height:isNaN(this.model.height)?this.model.height.match(/px|%|auto/g)[0]:null};this._isOpen=this._maximize=this._minimize=!1;this.localizedLabels=this._getLocalizedLabels();this._setLocaleCulture(this.localizedLabels);this._setDimension();this.model.close||(this.model.close=this.model.Close);this.model.target||(this.model.target=this.model.content);this._responsive();this._renderControl();this._wireEvents();this.scrObj=this._ejDialog.closest(".e-dialog.e-js").data("ejDialog");this.scrObj&&this.scrObj._resetScroller();this.hidden=!1;this._init=!1;this._keyNavigation=!1},_responsive:function(){this.width=this.model.width;n(this.element).width(this.width);this.height=this.model.height;n(this.element).height(this.height);n(window).on("resize",n.proxy(this._resizeHandler,this))},_resizeHandler:function(){this._maximize&&(this.width=n(this._dialogTitlebar).outerWidth(),n(this.contentDiv).width(this.width),n(this.contentDiv).children().width(this.width),this.model.height=this.height=n(window).height(),this._ejDialog.css({height:this.height}),this.contentDiv.height(this._ejDialog.height()-n(this._dialogTitlebar).outerHeight()-n(this._dialogFooterbar).outerHeight()),this.element.height(this.contentDiv.height()));t.isNullOrUndefined(this.element)||this._collapsible||this._resetScroller()},_setLocaleCulture:function(n,t){this.defaults.closeIconTooltip===this.model.closeIconTooltip&&(this.model.closeIconTooltip=n.closeIconTooltip);t&&(this.model.tooltip=this.localizedLabels.tooltip,this.model.title=this.localizedLabels.title);JSON.stringify(this.model.tooltip)===JSON.stringify(this.defaults.tooltip)&&(this.model.tooltip=n.tooltip);this.model.title===this.defaults.title&&(this.model.title=n.title)},_setDragArea:function(i){t.isNullOrUndefined(i)?this._target=null:typeof i=="string"?(i=="parent"&&(this._target=n(this.element).parent()),i.toLowerCase()=="document"&&(this._target=n(document)),i.toLowerCase()=="window"?this._target=n(window):n(i).length>0&&(this._target=n(i))):typeof i=="object"?i.length>0&&(this._target=i):this._target=null},_addAttr:function(t){var i=this;n.map(t,function(n,t){if(t=="class")i._ejDialog.addClass(n);else if(t=="disabled"&&n=="disabled")i.model.enabled=!1,i._enabledAction(!1);else if(i._ejDialog[0].hasAttribute("style")){var r=i._ejDialog[0].getAttribute("style")+n;i._ejDialog.attr(t,r)}})},_tooltipText:function(i){n.extend(this.model.tooltip,i);!t.isNullOrUndefined(this._dialogClose)&&this._dialogClose.hasClass("e-close")&&this._dialogClose.attr("title",this.model.tooltip.close);!t.isNullOrUndefined(this._dialogCollapsible)&&(i.collapse||i.expand)&&(this._dialogCollapsible.hasClass("e-arrowhead-up")&&this._dialogCollapsible.attr("title",this.model.tooltip.collapse),this._dialogCollapsible.hasClass("e-arrowhead-down")&&this._dialogCollapsible.attr("title",this.model.tooltip.expand));!t.isNullOrUndefined(this._dialogMaximize)&&(i.maximize||i.restore)&&(this._dialogMaximize.hasClass("e-maximize")&&this._dialogMaximize.attr("title",this.model.tooltip.maximize),this._dialogMaximize.hasClass("e-restore")&&this._dialogMaximize.attr("title",this.model.tooltip.restore));!t.isNullOrUndefined(this._dialogMinimize)&&(i.minimize||i.restore)&&(this._dialogMinimize.hasClass("e-minus")&&this._dialogMinimize.attr("title",this.model.tooltip.minimize),this._dialogMinimize.hasClass("e-restore")&&this._dialogMinimize.attr("title",this.model.tooltip.restore));!t.isNullOrUndefined(this._dialogPin)&&(i.pin||i.unPin)&&(this._dialogPin.hasClass("e-unpin")&&this._dialogPin.attr("title",this.model.tooltip.pin),this._dialogPin.hasClass("e-pin")&&this._dialogPin.attr("title",this.model.tooltip.unPin))},_renderControl:function(){var i,r,u;this._cloneElement=this.element.clone();this.element.attr("tabindex",0).attr({role:"dialog","aria-labelledby":this.element.prop("id")+"_title"});this._ejDialog=t.buildTag("div.e-dialog e-widget e-box "+this.model.cssClass+" e-dialog-wrap e-shadow#"+(this.element.prop("id")==""?"":this.element.prop("id")+"_wrapper"),"",{display:"none",zIndex:this.model.zIndex},{tabindex:0});this.model.isResponsive&&this._ejDialog.addClass("e-dialog-resize");this.wrapper=this._ejDialog;this._addAttr(this.model.htmlAttributes);this._setDragArea(this.model.containment);t.isNullOrUndefined(this.model.containment)||t.isNullOrUndefined(this._target)?t.isNullOrUndefined(this.model.target)||(i=this.model.target):i=this._target;r=t.isNullOrUndefined(i)?document.body:i;u=n(r).find("#"+this._id+"_wrapper").get(0);u&&n(u).remove();this._ejDialog.appendTo(r);this.model.enableRTL&&this._ejDialog.addClass("e-rtl");this.model.showHeader&&(this._renderTitleBar(),this._iconsRender(this.model.actionButtons),this.model.faviconCSS&&this._favIcon());this._appendContent(this.model.contentType);this._enableResize()._enableDrag()._setSize();this.model.height!="auto"&&this._sizeInPercent();this.model.contentType!="ajax"&&(this.model.showOnInit&&this.open()?this._setContainerSize()._resetScroller():this._setHiddenDialogSize());this._roundedCorner(this.model.showRoundedCorner);this._enabledAction(this.model.enabled);this._sizeType.width=="auto"&&(this._maxWidth=this.model.width);this._sizeType.height=="auto"&&(this._maxHeight=this.model.height)},_setContainerSize:function(){if(this.model.height!="auto"){var t=this._ejDialog.outerHeight()-(this.model.showHeader?n(this._ejDialog.find("div.e-titlebar")).outerHeight(!0):0)+(this.model.showFooter?n(this._ejDialog.find("div.e-footerbar")).outerHeight(!0):0)-1;this.contentDiv.height(t);this.element.outerHeight(t)}return this},_changeSize:function(){this._initSize={width:this.model.width,height:this.model.height};this._sizeType.width=isNaN(this.model.width)?this.model.width.match(/px|%|auto/g):null;this._sizeType.height=isNaN(this.model.height)?this.model.height.match(/px|%|auto/g):null;this._setSize()._sizeInPercent()._setContainerSize()._resetScroller()},_enableDrag:function(){return this.model.allowDraggable&&this.model.showHeader&&(this._dialogTitlebar.addClass("e-draggable"),this._dragDialog()),this},_enableResize:function(){if(this.model.enableResize){this._ejDialog.addClass("e-resizable");var n=t.buildTag("div.e-icon e-resize-handle");this.model.showFooter?n.appendTo(this._dialogFooterbar):n.appendTo(this._ejDialog);this._resizeDialog()}return this},_changeSkin:function(n){this.model.cssClass!=n&&this._ejDialog.removeClass(this.model.cssClass).addClass(n)},_enableModal:function(n){n?this._isOpen&&this._createOverlay():this._overLay&&this._overLay.remove()},_enabledAction:function(n){n?(this._ejDialog.removeClass("e-disable"),this.wrapper.children(".e-disable-overlay").remove(),t.isNullOrUndefined(this.scroller)||this.scroller.enable()):(this._ejDialog.addClass("e-disable"),t.buildTag("div.e-disable-overlay").appendTo(this.wrapper),t.isNullOrUndefined(this.scroller)||this.scroller.disable())},_renderTitleBar:function(){this._elementTitle=this.element.attr("title");typeof this._elementTitle!="string"&&(this._elementTitle="");this.model.title=this.model.title||this._elementTitle;this._dialogTitlebar=t.buildTag("div#"+this.element.prop("id")+"_title.e-titlebar e-header").prependTo(this._ejDialog);this._addTitleText()},_renderFooterBar:function(){this._dialogFooterbar=t.buildTag("div#"+this.element.prop("id")+"_foot.e-footerbar e-js").appendTo(this._ejDialog)},_addTitleText:function(){return this.model.title&&(this._titleText=t.buildTag("span.e-title",this.model.title).prependTo(this._dialogTitlebar)),this},_updateCaptionWidth:function(){var n=this.model.faviconCSS&&!t.isNullOrUndefined(this._dialogFavIcon)?this._dialogFavIcon.outerWidth():0;return this._titleText&&!t.isNullOrUndefined(this._dialogTitlebar)&&this._titleText.css("max-width",this._dialogTitlebar.width()-20-this._dialogTitlebar.find(".e-dialog-icon").width()*this._dialogTitlebar.find(".e-dialog-icon").length-n),this},_iconsRender:function(i){for(var r=0;r<i.length;r++)switch(t.browserInfo().name=="msie"&&t.browserInfo().version<=8?n.trim(i[r]):i[r].trim()){case"close":this._closeIcon();break;case"collapse":case"collapsible":this._collapsibleIcon();break;case"maximize":this._maximizeIcon();break;case"minimize":this._minimizeIcon();break;case"pin":this._pinIcon();break;default:this._customIconsRender(i[r])}},_customIconsRender:function(n){this._customIcon=t.util.buildTag("div#"+this.element[0].id+"_"+n+"button.e-dialog-icon e-icon e-"+n,null,null).attr("tabIndex","0").attr("title",n);this._customIcon.appendTo(this._dialogTitlebar);this._on(this._customIcon,"touchstart click",this._iconClick)},_iconClick:function(t){if(!this.element.hasClass("e-disable")){var i={cancel:!1,buttonID:n(t.target).attr("id"),event:t.type,model:this.model,currentTarget:t.currentTarget.title};this._trigger("actionButtonClick",i)}},_removeAllIcons:function(){this._dialogTitlebar.find("div.e-dialog-icon").remove()},_appendContent:function(i){var f,e,u,r,o;if(this.contentDiv=t.isNullOrUndefined(this.contentDiv)?t.buildTag("div.e-dialog-scroller"):this.contentDiv,this.element.removeAttr("title").addClass("e-widget-content e-box"),f=this,t.isNullOrUndefined(this.model.contentUrl)||t.isNullOrUndefined(i))this.dialogIframeContent=this.element.children().find("iframe").contents()[0],t.isNullOrUndefined(this.dialogIframeContent)?this.element.show().appendTo(this.contentDiv):this.element.show().appendTo(this.contentDiv).find("iframe").append(this.dialogIframeContent.lastChild);else if(i=="ajax")this.model.ajaxSettings.url=this.model.contentUrl,this._sendAjaxOptions(this.element,this.model.ajaxSettings.url);else if(i=="iframe")this.element.children(".e-iframe").length>0?(this.iframe=this.element.find("iframe.e-iframe"),this.iframe.attr("src",this.model.contentUrl)):(this.iframe=t.buildTag("iframe.e-iframe","",{width:"100%",height:"100%"},{scrolling:"auto",frameborder:0,src:this.model.contentUrl}),this.element.appendTo(this.contentDiv).append(this.iframe).show()),this.model.enableRTL&&n(this.iframe).load(function(){f.iframe.contents().find("body").css("direction","rtl")}),this._trigger("contentLoad",{contentType:i,url:this.model.contentUrl});else if(i=="image"){e=t.buildTag("img.e-images","","",{src:this.model.contentUrl});this.element.append(e).show().appendTo(this.contentDiv);n(e).on("load",function(){f._dialogPosition()});this._trigger("contentLoad",{contentType:i,url:this.model.contentUrl})}else this.element.show().appendTo(this.contentDiv);this._ejDialog.find("div.e-resize-handle").length>0?this._ejDialog.find(".e-footerbar").length==0&&this.contentDiv.insertBefore(this._ejDialog.find("div.e-resize-handle")):(u=this.element.children().find("iframe").contents()[0],t.isNullOrUndefined(u)?this._ejDialog.find(".e-footerbar").length==0?this.contentDiv.appendTo(this._ejDialog):this.contentDiv.insertBefore(this._dialogFooterbar):(this.contentDiv.appendTo(this._ejDialog),r=n("#"+this.contentDiv.find("iframe").attr("id")),n(r[0].contentDocument.lastChild).remove(),r[0].contentDocument.appendChild(u),t.browserInfo().name=="mozilla"&&setTimeout(function(){n(r[0].contentDocument.lastChild).remove();r[0].contentDocument.appendChild(u)},500)));this.model.showFooter&&this._ejDialog.find(".e-footerbar").length==0&&(this._renderFooterBar(),this.model.footerTemplateId!=null&&(o=n("body").find("#"+this.model.footerTemplateId).html(),this._dialogFooterbar.append(o)))},_roundedCorner:function(n){this._ejDialog[n?"addClass":"removeClass"]("e-corner");this.contentDiv.removeClass("e-dialog-top e-dialog-bottom e-dialog-content");this.model.showRoundedCorner&&(this.model.showHeader&&!this.model.showFooter?this.contentDiv.addClass("e-dialog-bottom"):!this.model.showHeader&&this.model.showFooter?this.contentDiv.addClass("e-dialog-top"):!this.model.showHeader&&!this.model.showFooter?this.contentDiv.addClass("e-dialog-content"):!0)},_reRenderScroller:function(){if(this.scroller!=i&&(this.scroller.refresh(!0),!this.model.enableRTL)){if(this.scroller._vScrollbar&&this.scroller._vScrollbar._scrollData&&this.model.enableResize){if(this.model.showFooter)var r=this.scroller._vScrollbar.element.find("> div.e-vscroll").height(),t=0,n=0;else var r=this.scroller._vScrollbar.element.find("> div.e-vscroll").height(),t=2,n=this._ejDialog.find("div.e-resize-handle").outerHeight();Math.floor(this.contentDiv.outerHeight())===Math.floor(this.scroller._vScrollbar.model.height+1)&&(this.scroller._vScrollbar.model.height-=n+t,this.scroller._vScrollbar._scrollData.handle-=n,this.scroller._vScrollbar._scrollData.handleSpace-=n+t,this.scroller._vScrollbar._updateLayout(this.scroller._vScrollbar._scrollData),this.scroller._vScrollbar.element.find("> div.e-vscroll").height(r-n-t))}if(!(this.scroller._vScrollbar&&this.scroller._vScrollbar._scrollData)&&this.scroller._hScrollbar&&this.scroller._hScrollbar._scrollData&&this.model.enableResize){if(this.model.showFooter)var u=this.scroller._hScrollbar.element.find("> div.e-hscroll").width(),t=0,n=0;else var u=this.scroller._hScrollbar.element.find("> div.e-hscroll").width(),t=2,n=this._ejDialog.find("div.e-resize-handle").outerWidth();this.scroller._hScrollbar.model.width-=n+t;this.scroller._hScrollbar._scrollData.handle-=n+t;this.scroller._hScrollbar._scrollData.handleSpace-=n+t;this.scroller._hScrollbar._updateLayout(this.scroller._hScrollbar._scrollData);this.scroller._hScrollbar.element.find("> div.e-hscroll").width(u-n-t)}}},_dialogMaxZindex:function(){var i=this.element.parents(),r,u,t;return r=n("body").children(),n(r).each(function(n,t){i.push(t)}),u=n(this.model.target).children(),n(u).each(function(n,t){i.push(t)}),t=Math.max.apply(t,n.map(i,function(t){if(n(t).css("position")!="static")return parseInt(n(t).css("z-index"))||1})),!t||t<1e4?t=1e4:t+=1,t},_setZindex:function(){var n=this._dialogMaxZindex();this.model.zIndex<=n&&this._ejDialog.css({zIndex:n+1})},_createOverlay:function(){var u=this._ejDialog.css("zIndex"),i,r;t.isNullOrUndefined(this._overLay)||this._overLay.remove();this.model.backgroundScroll||n("body").addClass("e-dialog-modal");this._overLay=t.buildTag("div#"+this.element.attr("id")+"_overLay.e-overlay","",{zIndex:u-1});n(this._overLay).addClass("e-widget");t.isNullOrUndefined(this.model.containment)||t.isNullOrUndefined(this._target)?t.isNullOrUndefined(this.model.target)||(i=this.model.target):i=this._target;this._overLay.appendTo(t.isNullOrUndefined(i)?document.body:i);var r=!t.isNullOrUndefined(this.model.containment)&&!t.isNullOrUndefined(this._target)?"absolute":"fixed",f=t.isNullOrUndefined(i)||r=="fixed"?0:n(i).css("position").toLowerCase()!="static"?0:n(i).offset().left,e=t.isNullOrUndefined(i)||r=="fixed"?0:n(i).css("position").toLowerCase()!="static"?0:n(i).offset().top;this._overLay.css({top:e,left:f,position:r})},_sendAjaxOptions:function(t,i){t.addClass("e-load");var r=this,u=this.model.title,e=i,f={success:function(n){try{r._ajaxSuccessHandler(n,t,i,u)}catch(f){}},error:function(n){try{r._ajaxErrorHandler({status:n.status,responseText:n.responseText,statusText:n.statusText},t,i,u)}catch(n){}},complete:function(){try{r._setContainerSize();r._resetScroller();r.model.showOnInit||r._setHiddenDialogSize()}catch(n){}}};n.extend(!0,f,this.model.ajaxSettings);this._sendAjaxRequest(f)},_setHiddenDialogSize:function(){this._isOpen||(this._ejDialog.css({display:"block",visibility:"hidden"}),this._setContainerSize()._resetScroller(),this._ejDialog.css({display:"none",visibility:""}))},_sendAjaxRequest:function(t){n.ajax({type:t.type,cache:t.cache,url:t.url,dataType:t.dataType,data:t.data,contentType:t.contentType,async:t.async,success:t.success,error:t.error,beforeSend:t.beforeSend,complete:t.complete})},_ajaxSuccessHandler:function(n,t,i){t.removeClass("e-load");t.html(n).addClass("e-dialog-loaded").appendTo(this._ejDialog);t.appendTo(this.contentDiv);this._dialogPosition();this.model.showOnInit&&this.open();this._trigger("ajaxSuccess",{data:n,url:i})},_ajaxErrorHandler:function(n,t,i){t.addClass("e-dialog-loaded").appendTo(this.contentDiv);this._dialogPosition().open();this._trigger("ajaxError",{data:n,url:i})},_closeIcon:function(){this._dialogClose=t.util.buildTag("div#"+this.element[0].id+"_closebutton.e-dialog-icon e-icon e-close",null,null).attr("tabIndex","0");this.model.closeIconTooltip=="close"&&this.model.tooltip.close=="Close"?this._dialogClose.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.close):this.model.closeIconTooltip!="close"&&this.model.tooltip.close=="Close"?this._dialogClose.appendTo(this._dialogTitlebar).attr("title",this.model.closeIconTooltip):this.model.closeIconTooltip=="close"&&this.model.tooltip.close!="Close"?this._dialogClose.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.close):this._dialogClose.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.close);this._on(this._dialogClose,"touchstart click",this._closeClick)},_collapsibleIcon:function(){this._dialogCollapsible=t.util.buildTag("div#"+this.element[0].id+"_collapsbutton.e-dialog-icon e-icon",null,null).attr("tabIndex","0");this._collapsible?this._dialogCollapsible.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.expand).addClass("e-arrowhead-down").removeClass("e-arrowhead-up"):this._dialogCollapsible.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.collapse).addClass("e-arrowhead-up").removeClass("e-arrowhead-down");this._on(this._dialogCollapsible,"touchstart click",this._collapsibleClick)},_maximizeIcon:function(){this._dialogMaximize=t.util.buildTag("div#"+this.element[0].id+"_maximizebutton.e-dialog-icon e-icon",null,null).attr("tabIndex","0");this._maximize?this._dialogMaximize.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.restore).addClass("e-restore").removeClass("e-maximize"):this._dialogMaximize.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.maximize).addClass("e-maximize").removeClass("e-restore");this._on(this._dialogMaximize,"touchstart click",this._maximizeClick)},_minimizeIcon:function(){this._dialogMinimize=t.util.buildTag("div#"+this.element[0].id+"_minimizebutton.e-dialog-icon e-icon",null,null).attr("tabIndex","0");this._minimize?this._dialogMinimize.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.restore).addClass("e-restore").removeClass("e-minus"):this._dialogMinimize.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.minimize).addClass("e-minus").removeClass("e-restore");this._on(this._dialogMinimize,"touchstart click",this._minimizeClick)},_pinIcon:function(){this._dialogPin=t.util.buildTag("div#"+this.element[0].id+"_pinbutton.e-dialog-icon e-icon",null,null).attr("tabIndex","0");this._dialogPin.appendTo(this._dialogTitlebar).attr("title",this.dialogPin?this.model.tooltip.unPin:this.model.tooltip.pin).addClass(this.dialogPin?"e-pin":"e-unpin").removeClass(this.dialogPin?"e-unpin":"e-pin");this._on(this._dialogPin,"touchstart click",this._pinClick)},_favIcon:function(){if(this._dialogFavIcon)n=this._dialogFavIcon.find("span").removeClass().addClass("e-dialog-custom");else{this._dialogFavIcon=t.util.buildTag("div.e-dialog-favicon","",{},{style:"float:"+(this.model.enableRTL?"right":"left")});var n=t.util.buildTag("span.e-dialog-custom","",{},{role:"presentation"});n.appendTo(this._dialogFavIcon);this._dialogFavIcon.appendTo(this._dialogTitlebar)}this.model.faviconCSS?n.addClass(this.model.faviconCSS):this._dialogFavIcon.remove();this._dialogFavIcon.css("float",this.model.enableRTL?"right":"left")},_minMaxValidation:function(){var r=parseInt(this.model.minWidth),u=parseInt(this.model.minHeight),n=parseInt(this.model.maxWidth),t=parseInt(this.model.maxHeight),f=parseInt(this.model.width),e=parseInt(this.model.height),i=this._getParentObj();isNaN(this.model.minWidth)&&this.model.minWidth.indexOf("%")>0&&(r=this._convertPercentageToPixel(i.outerWidth(),r));isNaN(this.model.minHeight)&&this.model.minHeight.indexOf("%")>0&&(u=this._convertPercentageToPixel(i.outerHeight(),u));isNaN(this.model.maxWidth)&&this.model.maxWidth.indexOf("%")>0&&(n=this._convertPercentageToPixel(i.innerWidth(),n));isNaN(this.model.maxHeight)&&this.model.maxHeight.indexOf("%")>0&&(t=this._convertPercentageToPixel(i.innerHeight(),t));isNaN(this.model.width)&&this.model.width.indexOf("%")>0&&(f=this._convertPercentageToPixel(i.innerWidth(),f));isNaN(this.model.height)&&this.model.height.indexOf("%")>0&&(e=this._convertPercentageToPixel(i.innerHeight(),e));(n&&f>n||r&&f<r)&&(this.model.width=f>n?n:r);(t&&e>t||u&&e<u)&&(this.model.height=e>t?t:u)},_setSize:function(){var n=this.model;return this._minMaxValidation(),this._ejDialog.css({width:n.width,minWidth:n.minWidth,maxWidth:n.maxWidth}),this._ejDialog.css({height:n.height,minHeight:n.minHeight,maxHeight:n.maxHeight}),this._dialogPosition(),this},_resetScroller:function(){this.element.css({height:"auto","max-width":"","max-height":"",width:""});var r=this._ejDialog.outerHeight(!0)-(this.model.showHeader?n(this._ejDialog.find("div.e-titlebar")).outerHeight(!0):0)-(this.model.showFooter?n(this._ejDialog.find("div.e-footerbar")).outerHeight(!0):0),u,i={width:this.contentDiv.css("border-width")=="0px"||this.contentDiv.css("border-left-width")=="0px"?Math.round(this._ejDialog.width()):Math.round(this._ejDialog.width()-2),enableRTL:this.model.enableRTL,height:this.contentDiv.css("border-width")=="0px"?r:r-1,enableTouchScroll:!1};this.model.height=="auto"&&(this.element.height()<this.model.maxHeight||!this.model.maxHeight)&&!this._maximize&&(i.height="auto");this.model.width!="auto"||this._maximize||(i.width=this.model.width);this.contentDiv.ejScroller(i);this.scroller=this.contentDiv.data("ejScroller");this._reRenderScroller();this._padding=parseInt(n(this.element).css("padding-top"))+parseInt(n(this.element).css("padding-bottom"));n(this._ejDialog).css("display")=="none"&&(this.hidden=!0,this._ejDialog.css({display:"block"}));!t.isNullOrUndefined(this.contentDiv.height())&&this.contentDiv.height()>0&&(u=t.isNullOrUndefined(this.scroller)?this.contentDiv.outerHeight()-this._padding:!this.scroller._hScrollbar&&this.scroller._vScrollbar?this.contentDiv.outerHeight():this.scroller._hScrollbar?this.contentDiv.outerHeight()-this.scroller.model.buttonSize:this.contentDiv.outerHeight(),this.model.height!="auto"&&this.model.height!="100%"?this.element.css({height:u-1}):this.element.css("height",this.model.height),this.model.height!="auto"&&this.model.height!="100%"||this.scroller._vScrollbar||this.element.css({"min-height":this.model.minHeight-(this.model.showHeader?n(this._ejDialog.find("div.e-titlebar")).outerHeight(!0):0)}),this.scroller._vScrollbar||this.model.width=="auto"||this.model.width=="100%"?this.scroller._vScrollbar||this.element.css("width",this.model.width):this.element.outerWidth(this.contentDiv.css("border-width")=="0px"||this.contentDiv.css("border-left-width")=="0px"?this._ejDialog.width():this._ejDialog.width()-2),this.element.css({"max-width":this.model.maxWidth,"max-height":this.model.maxHeight}));this.hidden&&this._ejDialog.css({display:"none"});this.hidden=!1},_updateScroller:function(n,t){this.contentDiv.ejScroller({width:t,height:n,enableRTL:this.model.enableRTL,enableTouchScroll:!1});this.scroller=this.contentDiv.data("ejScroller");this._reRenderScroller();this._changeSize()},_dragDialog:function(){var i=this,r=this._ejDialog.parents(".e-dialog-scroller");return this._dialogTitlebar.ejDraggable({handle:".e-titlebar",cursorAt:{top:0,left:0},dragArea:i._target,dragStart:function(n){return(n.element.attr("aria-grabbed",!0),i._clickHandler(),i.dialogPin||!i.model.allowDraggable||!i.model.enabled)?(n.cancel=!0,!1):i._trigger("dragStart",{event:n})?(n.cancel=!0,!1):void 0},drag:function(n){i._trigger("drag",{event:n})},dragStop:function(r){var u,f;i._ejDialog.focus();r.element.attr("aria-grabbed",!1);i.element.find("> .e-draggable.e-titlebar")&&(u=n("#"+i.element.find("> .e-draggable.e-titlebar").attr("id")).data("ejDraggable"),u&&u.option("cursorAt",i.element.offset()));f=this.helper.offsetParent().offset();i._trigger("dragStop",{event:r});i.model.position.X=t.isNullOrUndefined(this.position.left)?parseInt(this.helper.css("left")):this.position.left-[f.left+parseFloat(this.helper.offsetParent().css("border-left-width"))];i.model.position.Y=t.isNullOrUndefined(this.position.top)?parseInt(this.helper.css("top")):this.position.top-[f.top+parseFloat(this.helper.offsetParent().css("border-top-width"))];i._positionChanged=!0;i.dlgresized=!0},helper:function(){return n(i._ejDialog).addClass("dragClone")}}),this},_resizeDialog:function(){if(this.model.enableResize){var t=this,r=!1,i,u=parseInt(this.model.minWidth),f=parseInt(this.model.minHeight),e=parseInt(this.model.maxWidth),o=parseInt(this.model.maxHeight);return i=this._getParentObj(),isNaN(this.model.minWidth)&&this.model.minWidth.indexOf("%")>0&&(u=this._convertPercentageToPixel(i.outerWidth(),u)),isNaN(this.model.minHeight)&&this.model.minHeight.indexOf("%")>0&&(f=this._convertPercentageToPixel(i.outerHeight(),f)),isNaN(this.model.maxWidth)&&this.model.maxWidth.indexOf("%")>0&&(e=this._convertPercentageToPixel(i.innerWidth(),e)),isNaN(this.model.maxHeight)&&this.model.maxHeight.indexOf("%")>0&&(o=this._convertPercentageToPixel(i.innerHeight(),o)),this._ejDialog.find("div.e-resize-handle").ejResizable({minHeight:f,minWidth:u,maxHeight:o,maxWidth:e,handle:"e-widget-content",resizeStart:function(n){if(t.dlgresized=!0,!t.model.enabled)return!1;r||t._trigger("resizeStart",{event:n});r=!0;t.model.position={X:t._ejDialog.css("left"),Y:t._ejDialog.css("top")};t._dialogPosition()},resize:function(i){t.dlgresized=!0;var r=n(i.element).parents("div.e-dialog-wrap");t.model.height=n(r).outerHeight();t.model.width=n(r).outerWidth();t._setSize();t._setContainerSize();t._resetScroller();t._updateCaptionWidth();t._trigger("resize",{event:i});t._sizeType={width:"px",height:"px"};this.scrObj&&this.scrObj._resetScroller()},resizeStop:function(i){t.dlgresized=!0;t._ejDialog.focus();t._sizeInPercent();var u=n(i.element).parents("div.e-dialog-wrap");t.model.height=n(u).outerHeight();t.model.width=n(u).outerWidth();t._setSize();t._setContainerSize();t._resetScroller();r&&t._trigger("resizeStop",{event:i});r=!1;t._setDimension()},helper:function(){return n(t._ejDialog)}}),this}},_dialogPosition:function(){if(this._ejDialog.parents("form").length>0&&t.isNullOrUndefined(this.model.containment)&&t.isNullOrUndefined(this.model.target)&&this._ejDialog.appendTo(this._ejDialog.parents("form")),this.model.position.X!=""||this.model.position.Y!="")if(this._ejDialog.css("position","absolute"),t.isNullOrUndefined(this.model.target)&&t.isNullOrUndefined(this.model.containment))this._ejDialog.css("left",this.model.position.X),this._ejDialog.css("top",this.model.position.Y);else{var i=t.isNullOrUndefined(this.model.containment)?this.model.target:this.model.containment;this.dlgresized||this._keyNavigation?(this._ejDialog.css("left",this.model.position.X),this._ejDialog.css("top",this.model.position.Y)):(this._ejDialog.css("left",n(i).offset().left+parseInt(this.model.position.X)),this._ejDialog.css("top",n(i).offset().top+parseInt(this.model.position.Y)))}else this._centerPosition();return this},_centerPosition:function(){var r=0,u=0,i,f,e,o;t.isNullOrUndefined(this.model.target)&&(t.isNullOrUndefined(this._target)||n(this._target).is(n(document))||n(this._target).is(n(window)))?(o=document.documentElement,r=(n(window).outerWidth()>this._ejDialog.width()?(n(window).outerWidth()-this._ejDialog.outerWidth())/2:0)+(window.pageXOffset||o.scrollLeft),u=(n(window).outerHeight()>this._ejDialog.height()?(n(window).outerHeight()-this._ejDialog.outerHeight())/2:0)+(window.pageYOffset||o.scrollTop)):(i=t.isNullOrUndefined(this._target)?n(this.model.target):n(this._target),i.css("position")=="static"&&(f=i.offsetParent().offset(),e=i.offset(),r=e.left-f.left,u=e.top-f.top),i.outerWidth()>this._ejDialog.width()&&(r+=(i.outerWidth()-this._ejDialog.width())/2),i.outerHeight()>this._ejDialog.height()&&(u+=(i.outerHeight()-this._ejDialog.height())/2));this._ejDialog.css({top:u,left:r});this._ejDialog.css("position","absolute")},_closeClick:function(n){n.type=="touchstart"&&n.preventDefault();this.model.enabled&&(n.stopPropagation(),this.close(n))},_collapsibleClick:function(t){this.model.enabled&&(n(t.target).hasClass("e-arrowhead-up")?this._actionCollapse(t):n(t.target).hasClass("e-arrowhead-down")&&this._actionExpand(t))},_actionCollapse:function(n){this._minimize||(this._dialogCollapsible&&this._dialogCollapsible.removeClass("e-arrowhead-up").addClass("e-arrowhead-down"),this._dialogCollapsible&&this._dialogCollapsible.attr("title",this.model.tooltip.expand),this._ejDialog.find("div.e-resize-handle").hide(),this._ejDialog.find(".e-widget-content").parent().slideUp("fast"),this.model.showFooter&&this._dialogFooterbar.slideUp("fast"),this._ejDialog.removeClass("e-shadow"),this._ejDialog.css("minHeight","0"),this._ejDialog.height("auto"),this._trigger("collapse",{isInteraction:n?!0:!1}),this._collapsible=!0)},_actionExpand:function(n){this._minimize||(this._dialogCollapsible&&this._dialogCollapsible.removeClass("e-arrowhead-down").addClass("e-arrowhead-up"),this._dialogCollapsible&&this._dialogCollapsible.attr("title",this.model.tooltip.collapse),this._ejDialog.addClass("e-shadow"),this._ejDialog.find(".e-widget-content").parent().slideDown("fast"),this.model.showFooter&&this._dialogFooterbar.slideDown("fast"),this._maximize?(this._ejDialog.css({width:"100%",height:"100%"}),this.element.css({width:"100%",height:"100%"}),this.contentDiv.css({width:"100%",height:"100%"})):this._ejDialog.height(this.model.height),this._ejDialog.find("div.e-resize-handle").show(),this._trigger("expand",{isInteraction:n?!0:!1}),this._collapsible=!1)},_maximizeClick:function(i){if(this.model.enabled){var r=n(i.target),u=this._dialogMaximize;r.hasClass("e-maximize")?(this._actionMaximize(),this._dialogTitlebar&&(this._dialogTitlebar.find(".e-restore").removeClass("e-restore").addClass("e-minus"),this._dialogMinimize&&this._dialogMinimize.attr("title",this.model.tooltip.minimize)),r.removeClass("e-maximize").addClass("e-restore"),this._dialogMaximize.attr("title",this.model.tooltip.restore),this._hideIcon(!0)):r.hasClass("e-restore")&&(this._actionRestore(),r.removeClass("e-restore").addClass("e-maximize"),this._dialogMaximize.attr("title",this.model.tooltip.maximize),!t.isNullOrUndefined(u)&&n(u).hasClass("e-arrowhead-down")&&(n(u).removeClass("e-arrowhead-down").addClass("e-arrowhead-up"),this._dialogMaximize.attr("title",this.model.tooltip.collapse)),this._hideIcon(!0))}this._resetScroller()},_actionMaximize:function(){this._ejDialog.css("top","0px").css("left","0px").css("overflow","hidden").css("position",this.model.containment?"absolute":this.model.target?"absolute":"fixed");this._ejDialog.css({width:"100%",height:"100%"});this.element.css({width:"100%",height:"100%"});this.contentDiv.css({width:"100%",height:"100%"});this._maximize=!0;this._minimize=!1;var i=this;this._dialogCollapsible&&!t.isNullOrUndefined(this._dialogCollapsible.hasClass("e-arrowhead-down"))&&(this._dialogCollapsible.removeClass("e-arrowhead-down").addClass("e-arrowhead-up"),this._dialogCollapsible.attr("title",this.model.tooltip.collapse),this._collapseValue=!0);this._collapseValue==!0&&this._ejDialog.find(".e-widget-content").parent().slideDown("fast",function(){i.refresh();i._reRenderScroller()});this._resetScroller();n(this.contentDiv).is(":hidden")&&this.contentDiv.show()},_actionRestore:function(){this.element.height("").width("");this.contentDiv.height("").width("");this._restoreDialog();this._maximize=this._minimize=!1},_minimizeClick:function(i){if(this.model.enabled){var r=n(i.target),u=this._dialogMinimize.hasClass("e-icon")&&this._dialogMinimize;r.hasClass("e-minus")?(this._maximize&&this._setSize(),this._actionMinimize()):r.hasClass("e-restore")&&(this._actionRestore(),r.removeClass("e-restore").addClass("e-minus"),this._dialogMinimize.attr("title",this.model.tooltip.minimize),!t.isNullOrUndefined(u)&&n(u).hasClass("e-arrowhead-down")&&(n(u).removeClass("e-arrowhead-down").addClass("e-arrowhead-up"),this._dialogMinimize.attr("title",this.model.tooltip.collapse)),this._hideIcon(!0))}},_actionMinimize:function(){var i=n(window).height()-this._ejDialog.height()+this.element.height()+14,t;this._ejDialog.css("top","").css("bottom","0").css("left","0").css("position",this.model.containment?"absolute":this.model.target?"absolute":"fixed");this._ejDialog.css("minHeight","0");this._dialogTitlebar?(this._dialogTitlebar.find(".e-restore").removeClass("e-restore").addClass("e-maximize"),this._dialogMaximize&&this._dialogMaximize.attr("title",this.model.tooltip.maximize),this._dialogTitlebar.find(".e-minus").removeClass("e-minus").addClass("e-restore"),this._dialogMinimize&&this._dialogMinimize.attr("title",this.model.tooltip.restore),this._isOpen?t=this._dialogTitlebar.outerHeight():(this._ejDialog.css({display:"block",visibility:"hidden"}),t=this._dialogTitlebar.outerHeight(),this._ejDialog.css({display:"none",visibility:""})),this._ejDialog.css("height",t+2),this._hideIcon(!1)):this._ejDialog.css("height","");this.contentDiv.hide();this.model.showFooter&&this._dialogFooterbar.hide();this._maximize=!1;this._minimize=!0},_hideIcon:function(i){var r=this._dialogCollapsible?this._dialogCollapsible:null;i?(t.isNullOrUndefined(r)||n(r).parent(".e-dialog-icon").show(),this._ejDialog.find("div.e-resize-handle").show()):(t.isNullOrUndefined(r)||n(r).parent(".e-dialog-icon").hide(),this._ejDialog.find("div.e-resize-handle").hide())},_pinClick:function(t){if(this.model.enabled){var i=n(t.target);i.hasClass("e-unpin")?(this.dialogPin=!0,i.removeClass("e-unpin").addClass("e-pin"),this._dialogPin.attr("title",this.model.tooltip.unPin)):i.hasClass("e-pin")&&(this.dialogPin=!1,i.removeClass("e-pin").addClass("e-unpin"),this._dialogPin.attr("title",this.model.tooltip.pin))}},_restoreDialog:function(){this.contentDiv.show();this.model.showFooter&&this._dialogFooterbar.show();this._ejDialog.css({position:"absolute",bottom:""}).addClass("e-shadow");this._setSize()._resetScroller();this._dialogTitlebar&&(this._dialogTitlebar.find(".e-minus").parent().show(),this._dialogCollapsible&&(this._dialogCollapsible.removeClass("e-arrowhead-down").addClass("e-arrowhead-up"),this._dialogCollapsible.attr("title",this.model.tooltip.collapse)))},_clickHandler:function(){var n=this._dialogMaxZindex();parseInt(this._ejDialog.css("zIndex"))<n&&this._ejDialog.css({zIndex:n+1})},_mouseClick:function(t){t.currentTarget==this._id&&(n(t.target).hasClass("e-dialog")||n(t.target).hasClass("e-icon e-resize-handle"))&&(this._setZindex(),n(t.target).closest(".e-dialog.e-widget").focus())},_keyDown:function(t){var i;i=t.keyCode?t.keyCode:t.which?t.which:t.charCode;this.model.allowKeyboardNavigation&&this.model.enabled&&n(t.target).hasClass("e-dialog")&&n.inArray(i,this.keyConfigs)>-1&&this.model.allowDraggable&&!this.dialogPin&&(this._keyPressed(i,t.ctrlKey),t.preventDefault());this.model.closeOnEscape&&i===27&&this.model.enabled&&(this.element.find(".e-js.e-dialog").first().is(":visible")||(this.close(t),t.preventDefault()));i===13&&this.model.enabled&&(n(t.target).hasClass("e-close")?this.close(t):(n(t.target).hasClass("e-arrowhead-up")||n(t.target).hasClass("e-arrowhead-down"))&&this._collapsibleClick(t),n(t.target).hasClass("e-maximize")||n(t.target).hasClass("e-restore")&&n(t.target).is(this._dialogMaximize)?this._maximizeClick(t):(n(t.target).hasClass("e-minus")||n(t.target).hasClass("e-restore")&&n(t.target).is(this._dialogMinimize))&&this._minimizeClick(t),(n(t.target).hasClass("e-pin")||n(t.target).hasClass("e-unpin"))&&this._pinClick(t));i==9&&this.model.enableModal&&this._focusOnTab(t)},_focusOnTab:function(t){var i=this._ejDialog.find("a, button, :input, select, [tabindex]:not('-1')");i=n(i).find("a, button, :input, select, [tabindex]:not('')");t.shiftKey?i[i.index(t.target)-1]||(t.preventDefault(),i.last().focus()):i[i.index(t.target)+1]||(t.preventDefault(),i[0].focus())},_keyPressed:function(n,t){this._keyNavigation=!0;switch(n){case 40:t?this._resizing("height",this._ejDialog.outerHeight()+3):this.option("position",{X:this._ejDialog.position().left,Y:this._ejDialog.position().top+3});break;case 39:t?this._resizing("width",this._ejDialog.outerWidth()+3):this.option("position",{X:this._ejDialog.position().left+3,Y:this._ejDialog.position().top});break;case 38:t?this._resizing("height",this._ejDialog.outerHeight()-3):this.option("position",{X:this._ejDialog.position().left==0?0:this._ejDialog.position().left,Y:this._ejDialog.position().top>3?this._ejDialog.position().top-3:0});break;case 37:t?this._resizing("width",this._ejDialog.outerWidth()-3):this.option("position",{X:this._ejDialog.position().left>3?this._ejDialog.position().left-3:0,Y:this._ejDialog.position().top==0?0:this._ejDialog.position().top})}},_resizing:function(n,t){this.model.enableResize&&this.option(n,t)},_sizeInPercent:function(){if(!this._enableWindowResize())return this;var n=this._getParentObj();return this._widthPercent=this._sizeType.width=="%"?parseFloat(this.model.width):this._convertPixelToPercentage(n.outerWidth(),this._ejDialog.outerWidth()),this._heightPercent=this._sizeType.height=="%"?parseFloat(this.model.height):this._convertPixelToPercentage(n.outerHeight(),this._ejDialog.outerHeight()),this._widthPercent>=100&&(this._widthPercent=100,this._ejDialog.outerWidth(n.outerWidth()),this.model.width=this._ejDialog.width()),this._heightPercent>=100&&(this._heightPercent=100,this._ejDialog.outerHeight(n.outerHeight()),this.model.height=this._ejDialog.height()),this},_getParentObj:function(){return t.isNullOrUndefined(this.model.containment)?t.isNullOrUndefined(this.model.target)?n(document):n(this.model.target):n(this.model.containment)},_convertPercentageToPixel:function(n,t){return Math.round(t*n/100)},_convertPixelToPercentage:function(n,t){return Math.round(t/n*100)},_reSizeHandler:function(){var t;if(this._maximize){this._resetScroller();return}this.model.position.X!=""&&(this.model.position.Y!=""||this._minimize)||this._centerPosition();t=this._getParentObj();this._change=!1;this._windowSize.outerWidth!=n(window).outerWidth()?this._sizeType.width=="%"?this._percentageWidthDimension(t):this._pixelsWidthDimension(t):this._windowSize.outerHeight!=n(window).outerHeight()&&(this._sizeType.height=="%"?this._percentageHeightDimension(t):this._pixelsHeightDimension(t));this._change&&this._resizeContainer(t);this._windowSize={outerWidth:n(window).outerWidth(),outerHeight:n(window).outerHeight()};this._centerPosition()},_setDimension:function(){t.isNullOrUndefined(this.model.maxWidth)?t.isNullOrUndefined(this._sizeType.width)?this._maxWidth=+this.model.width:(this._sizeType.width=="px"||this._sizeType.width=="auto")&&(this._maxWidth=this.model.width):this._maxWidth=this.model.maxWidth;t.isNullOrUndefined(this.model.maxHeight)?t.isNullOrUndefined(this._sizeType.height)?this._maxHeight=+this.model.height:(this._sizeType.height=="px"||this._sizeType.height=="auto")&&(this._maxHeight=this.model.height):this._maxHeight=this.model.maxHeight},_percentageWidthDimension:function(n){this._ejDialog.outerWidth(this._convertPercentageToPixel(n.outerWidth(),this._widthPercent));this._change=!0},_percentageHeightDimension:function(n){this._ejDialog.outerHeight(this._convertPercentageToPixel(n.outerHeight(),this._heightPercent));this._change=!0},_pixelsWidthDimension:function(t){n(t).outerWidth()<=this._ejDialog.outerWidth()&&this._setWidth(t);n(t).outerHeight()<=this._ejDialog.outerHeight()&&!this.model.isResponsive&&this._setHeight(t);parseInt(this._ejDialog.css("width"))<parseInt(this._maxWidth)&&(parseInt(this._maxWidth)<n(t).outerWidth()?this._ejDialog.outerWidth(parseInt(this._maxWidth)):this._ejDialog.outerWidth(t.outerWidth()),this._change=!0)},_pixelsHeightDimension:function(t){n(t).outerHeight()<=this._ejDialog.outerHeight()&&!this.model.isResponsive&&this._setHeight(t);n(t).outerWidth()<=this._ejDialog.outerWidth()&&this._setWidth(t);parseInt(this._ejDialog.css("height"))<parseInt(this._maxHeight)&&(parseInt(this._maxHeight)<n(t).outerHeight()?this._ejDialog.outerWidth(parseInt(this._maxHeight)):this._ejDialog.outerHeight(t.outerHeight()),this._change=!0)},_setWidth:function(n){this._ejDialog.outerWidth(n.outerWidth());this._change=!0},_setHeight:function(n){this._ejDialog.outerHeight(n.outerHeight());this._change=!0},_resizeContainer:function(){this.contentDiv.width(this._ejDialog.width());this.element.outerWidth(this.contentDiv.width());var i=this._ejDialog.height()-(this.model.showHeader?n(this._ejDialog.find("div.e-titlebar")).outerHeight(!0):0);this.contentDiv.height(t.isNullOrUndefined(this.contentDiv)?i-1:this.contentDiv.css("border-width")=="0px");this.element.outerHeight(t.isNullOrUndefined(this.contentDiv)?i-1:this.contentDiv.css("border-width")=="0px");this.scroller=this.contentDiv.ejScroller({width:t.isNullOrUndefined(this.contentDiv)?!1:this.contentDiv.css("border-width")=="0px"?this._ejDialog.width():this._ejDialog.width()-2,height:t.isNullOrUndefined(this.contentDiv)?!1:this.contentDiv.css("border-width")=="0px"?this.element.outerHeight():this.element.outerHeight()-2,rtl:this.model.rtl,enableTouchScroll:!1});this.scroller=this.contentDiv.data("ejScroller");this._reRenderScroller();this.model.position.X==""||this.model.position.Y==""&&!this._minimize||this._positionChanged?this._centerPosition():this._ejDialog.css("height",this._dialogTitlebar.outerHeight());this._updateCaptionWidth();this._change=!1},_getLocalizedLabels:function(){return t.getLocalizedConstants(this.sfType,this.model.locale)},_enableWindowResize:function(){return this.model.isResponsive||isNaN(this.model.width)&&this.model.width.indexOf("%")>0&&isNaN(this.model.height)&&this.model.height.indexOf("%")>0&&this.model.height!="auto"?!0:!1},_wireResizing:function(){n(window)[this._enableWindowResize()?"on":"off"]("resize",n.proxy(this._reSizeHandler,this))},_wireEvents:function(){this._on(this._ejDialog,"keydown",this._keyDown);this._on(this._ejDialog,"click",this._mouseClick);this._wireResizing()},refresh:function(){this._resetScroller()},open:function(){var i,r,u,e,f;return this._isOpen?!0:!0==this._trigger("beforeOpen")?!1:(this.element.css("display","block"),this._setZindex(),this._minimize||this._maximize||this._init||this._dialogPosition(),i=this,r={},this._ejDialog.show(),this.model.enableAnimation&&(this._ejDialog.css({opacity:0}),this.model.animation.show.effect=="slide"?(e=this._ejDialog.css("left"),this._ejDialog.css({left:-this._ejDialog.width()}),r={left:e,opacity:1}):r={opacity:1}),this._ejDialog.animate(r,this.model.enableAnimation?Number(this.model.animation.show.duration):0,function(){i.model&&(i._ejDialog.css("display")=="none"&&i._ejDialog.show(),i._ejDialog.eq(0).focus(),i._ejDialog.css({opacity:""}),i.contentDiv.find("a:visible:enabled, button:visible:enabled, :input:visible:enabled, select:visible:enabled, .e-input").first().focus(),i._trigger("open"),i._updateCaptionWidth(),i.model.enableModal&&!i.model.backgroundScroll&&(i._ejDialog.height()>n(window).height()&&i._ejDialog.css("height",n(window).height()),i.model.height=n(window).height(),i._overLay.css("position","fixed"),i.scroller.refresh(!0),i.refresh()),(i.model.maxHeight||i.model.maxWidth)&&(u=i._ejDialog.outerHeight(!0)-(i._dialogTitlebar?i._dialogTitlebar.outerHeight(!0):0),(i.model.height=="auto"||i.model.height=="100%")&&(u=i.model.height),i._updateScroller(t.isNullOrUndefined(this.contentDiv)?u-2:this.contentDiv.css("border-width")=="0px",t.isNullOrUndefined(this.contentDiv)?i._ejDialog.width()-2:this.contentDiv.css("border-width")=="0px"),i.scroller.refresh()))}),this.model.enableModal==!0&&this._createOverlay(),this._isOpen=!0,this.element.find("> .e-draggable.e-titlebar")&&(f=n("#"+this.element.find("> .e-draggable.e-titlebar").attr("id")).data("ejDraggable"),f&&f.option("cursorAt",this.element.offset())),this)},close:function(t){var i,r,u;return!this._isOpen||!this.model.enabled?!0:(i=t?!0:!1,!0==this._trigger("beforeClose",{event:t,isInteraction:i}))?!1:(this._isOpen=!1,r=this,u={},this.model.enableAnimation&&(u=this.model.animation.hide.effect=="slide"?{left:-this._ejDialog.width(),opacity:0}:{opacity:0}),this._ejDialog.animate(u,this.model.enableAnimation?Number(this.model.animation.hide.duration):0,function(){r._trigger("close",{event:t,isInteraction:i});r._ejDialog.hide()}),this.model.enableModal&&(this._overLay&&this._overLay.remove(),this.model.backgroundScroll||n("body").removeClass("e-dialog-modal")),this)},isOpened:function(){return this.isOpen()},isOpen:function(){return this._isOpen},setTitle:function(n){return this.model.title=n,this._titleText.text(n),this._updateCaptionWidth(),this},setContent:function(n){return this.model.enabled?(this.element.html(n),this._resetScroller(),this):!1},focus:function(){return this._setZindex(),this.element.focus(),this},minimize:function(){if(this.model.showHeader)return this._actionMinimize(),n(this.wrapper.find(".e-minus")[0]).parent().hide(),this},maximize:function(){if(this.model.showHeader)return this._actionMaximize(),n(this.wrapper.find(".e-maximize")[0]).removeClass("e-maximize").addClass("e-restore"),n(this.wrapper.find(".e-restore")[1]).removeClass("e-restore").addClass("e-minus"),this._dialogMaximize&&this._dialogMaximize.attr("title",this.model.tooltip.restore),this._dialogTitlebar&&this._dialogTitlebar.find(".e-minus").parent().show(),this._hideIcon(!0),this},restore:function(){if(this.model.showHeader){var t=this._minimize;return this._actionRestore(),n(this.wrapper.find(".e-restore")[0]).removeClass("e-restore").addClass(t?"e-minus":"e-maximize"),this._dialogMaximize&&this._dialogMaximize.attr("title",this.model.tooltip.maximize),this._hideIcon(!0),this}},pin:function(){if(this.model.showHeader)return this.dialogPin=!0,n(this.wrapper.find(".e-unpin")[0]).removeClass("e-unpin").addClass("e-pin"),this._dialogPin&&this._dialogPin.attr("title",this.model.tooltip.unPin),this},unpin:function(){if(this.model.showHeader)return this.dialogPin=!1,n(this.wrapper.find(".e-pin")[0]).removeClass("e-pin").addClass("e-unpin"),this._dialogPin&&this._dialogPin.attr("title",this.model.tooltip.pin),this},collapse:function(){if(this.model.showHeader)return this._actionCollapse(),this._collapseValue=!0,this},expand:function(){if(this.model.showHeader)return this._actionExpand(),this}});t.Dialog.Locale=t.Dialog.Locale||{};t.Dialog.Locale["default"]=t.Dialog.Locale["en-US"]={tooltip:{close:"Close",collapse:"Collapse",restore:"Restore",maximize:"Maximize",minimize:"Minimize",expand:"Expand",unPin:"UnPin",pin:"Pin"},title:"",closeIconTooltip:"close"}}(jQuery,Syncfusion),function(n,t,i){t.widget("ejMaskEdit","ej.MaskEdit",{element:null,model:null,validTags:["input"],_addToPersist:["value"],_setFirst:!1,type:"editor",angular:{require:["?ngModel","^?form","^?ngModelOptions"],requireFormatters:!0},defaults:{maskFormat:"",value:null,watermarkText:"",name:null,height:"",width:"",showError:!1,htmlAttributes:{},cssClass:"",customCharacter:null,inputMode:"text",readOnly:!1,textAlign:t.TextAlign.Left,hidePromptOnLeave:!1,showRoundedCorner:!1,enablePersistence:!1,enabled:!0,locale:"en-US",showPromptChar:!0,validationRules:null,validationMessage:null,keydown:null,keyup:null,keyPress:null,change:null,mouseover:null,mouseout:null,focusIn:null,focusOut:null,create:null,destroy:null},dataTypes:{maskFormat:"string",showError:"boolean",enabled:"boolean",customCharacter:"string",cssClass:"string",watermarkText:"string",showRoundedCorner:"boolean",showPromptChar:"boolean",inputMode:"enum",textAlign:"enum",hidePromptOnLeave:"boolean",readOnly:"boolean",validationRules:"data",validationMessage:"data",htmlAttributes:"data"},_setModel:function(n){for(var i in n)switch(i){case"value":this.temp_index=0;this.indexValue=[];t.isPlainObject(n[i])&&(n[i]=null);this._setValue(n[i]);this._initObjects();n[i]=this.get_UnstrippedValue();this._raiseEvents("change",!0);break;case"width":this._setWidth(n[i]);break;case"height":this._setHeight(n[i]);break;case"watermarkText":this.model.watermarkText=n[i];this._changeWatermark(n[i]);break;case"showRoundedCorner":this._roundedCorner(n[i]);break;case"showPromptChar":this._setShowPrompt(n[i]);break;case"validationRules":this.model.validationRules!=null&&(this._hiddenInput.rules("remove"),this.model.validationMessage=null);this.model.validationRules=n[i];this.model.validationRules!=null&&(this._initValidator(),this._setValidation());break;case"validationMessage":this.model.validationMessage=n[i];this.model.validationRules!=null&&this.model.validationMessage!=null&&(this._initValidator(),this._setValidation());break;case"textAlign":this._setTextAlign(n[i]);break;case"inputMode":this._setInputMode(n[i]);break;case"maskFormat":this.model.maskFormat=n[i];this._valueMapper();this._maskModel=this.model.maskFormat;this._setMask(n[i]);this._initObjects();n[i]=this.model.maskFormat;break;case"locale":this.model.value=this.get_StrippedValue();this.model.locale=n[i];this._setValue(this.model.value);this._initObjects();break;case"cssClass":this._setSkin(n[i]);break;case"readOnly":this._setReadOnly(n[i]);break;case"enabled":this.model.enabled=n[i];this._controlStatus(n[i]);break;case"htmlAttributes":this._addAttr(n[i]);break;case"hidePromptOnLeave":this.model.hidePromptOnLeave=n[i];this._textbox.value!=""&&(this.model.hidePromptOnLeave?(this._unStrippedMask=this._textbox.value,this._textbox.value=this.get_UnstrippedValue()):this._textbox.value=this._textbox.value.replace(/[ ]/g,"_"),this.model.value=this._textbox.value)}},observables:["value"],_destroy:function(){t.isNullOrUndefined(this._hiddenInput)||this.element.attr("name",this._hiddenInput.attr("name"));this._isWatermark&&this.element.removeAttr("placeholder");this.element.insertAfter(this.wrapper);t.isNullOrUndefined(this.wrapper)||this.wrapper.remove();this.model.textAlign&&this.element.css("text-align","");this.element.val("").removeClass(" e-mask e-input e-disable").empty();this.element.removeAttr("aria-invalid aria-disabled")},_init:function(n){if(this.indexValue=[],this.temp_index=0,this._options=n,this._tempMask=this.model.maskFormat,this._keyFlag=!1,this._keyupFlag=!0,this._checkMask=!1,this._isAndroid=/android/i.test(navigator.userAgent.toLowerCase()),this.element.is("input")&&(this.element.is("input[type=text]")||this.element.is("input[type=password]")||!this.element.attr("type")))this.element.attr("autocomplete","off"),this._isWatermark="placeholder"in document.createElement("input"),this._setValues(),this._valueMapper(),this._renderControl(),this._initObjects(),this._wireEvents(),this._addAttr(this.model.htmlAttributes),this.model.validationRules!=null&&(this._initValidator(),this._setValidation());else return this._destroy(),!1;n&&n.value!=i&&this.model.value!==n.value&&this._trigger("_change",{value:this.get_UnstrippedValue(),unmaskedValue:this.get_StrippedValue()})},_initValidator:function(){this.element.closest("form").data("validator")||this.element.closest("form").validate()},_addAttr:function(i){var r=this;n.map(i,function(n,i){var u=i.toLowerCase();u=="class"?r.wrapper.addClass(n):u=="name"?r._hiddenInput.attr(i,n):u=="disabled"&&n=="disabled"?r.disable():u=="readonly"&&n=="readOnly"?r._setReadOnly(!0):u=="style"||u=="id"?r.wrapper.attr(i,n):t.isValidAttr(r.element[0],i)?r.element.attr(i,n):r.wrapper.attr(i,n)})},_setValidation:function(){var r,f,i,u,e;this._hiddenInput.rules("add",this.model.validationRules);r=this.element.closest("form").data("validator");r=r?r:this.element.closest("form").validate();f=this._hiddenInput.attr("name");r.settings.messages[f]={};for(i in this.model.validationRules)if(u=null,!t.isNullOrUndefined(this.model.validationRules[i])){if(t.isNullOrUndefined(this.model.validationRules.messages&&this.model.validationRules.messages[i])){r.settings.messages[f][i]=n.validator.messages[i];for(e in this.model.validationMessage)i==e?u=this.model.validationMessage[i]:""}else u=this.model.validationRules.messages[i];r.settings.messages[f][i]=u!=null?u:n.validator.messages[i]}},_setShowPrompt:function(n){this.model.showPromptChar=n;this._textbox.value=this.model.showPromptChar?this._unStrippedMask:this.get_UnstrippedValue()},_controlStatus:function(n){n!=!0?this.disable():this.enable()},_setValues:function(){this._unStrippedMask=null;this._charMap={"9":"[0-9 ]",a:"[A-Za-z0-9 ]",A:"[A-Za-z0-9]",N:"[0-9]","#":"[0-9]","&":"[^]+","<":"",">":"",C:this.model.customCharacter!=null?"["+this.model.customCharacter+"]":"[A-Za-z ]","?":"[A-Za-z]"}},_renderControl:function(){if(this.model.name=this.element.attr("name")!=null?this.element.attr("name"):this.model.name!=null?this.model.name:this.element[0].id,this.element.attr("name")!=null&&this.element.removeAttr("name"),this.wrapper=t.buildTag("span.e-mask e-widget "+this.model.cssClass),this.innerWrapper=t.buildTag("span.e-in-wrap e-box"),this.wrapper.append(this.innerWrapper).insertBefore(this.element),this.innerWrapper.append(this.element),this._hiddenInput=t.buildTag("input#"+this._id+"_hidden","",{},{type:"hidden"}).insertBefore(this.element),this._isWatermark||this.model.inputMode=="password"||(this._hiddenSpan=t.buildTag("span.e-input e-placeholder ").insertAfter(this.element),this._hiddenSpan.text(this.model.watermarkText),this._hiddenSpan.css("display","none"),this._hiddenSpan.bind("mousedown",n.proxy(this._OnFocusHandler,this))),t.isNullOrUndefined(this.model.value)&&this.element[0].value!=""&&(this.model.value=this.element[0].value),t.isNullOrUndefined(this.model.value)||(this.wrapper.addClass("e-valid"),typeof this.model.value=="number"&&(this.model.value=this.model.value.toString())),this._hiddenInput.attr({name:this.model.name,value:this.model.value}),this.element.attr({"aria-invalid":!1}).addClass("e-input"),this.model.maskFormat==""&&this.model.value==null){var i=this;setTimeout(function(){i.element.val()!=""&&(i.option("value",i.element.val()),i.previousValue=i.model.value,i._initObjects())},500)}else this.element.attr({value:this.model.value});t.isNullOrUndefined(this._options.inputMode)&&!t.isNullOrUndefined(this.element.attr("type"))?this.model.inputMode=this.element.attr("type"):this._setInputMode(this.model.inputMode);this._setWidth(this.model.width);this._setHeight(this.model.height);this._roundedCorner(this.model.showRoundedCorner);this._setTextAlign(this.model.textAlign);this._setReadOnly(this.model.readOnly);this._controlStatus(this.model.enabled);this.previousValue=this.model.value},_initObjects:function(){var i,t,n;if(this._textbox=this.element[0],this._keypressFlag=0,this._selectedTextKeyDown=0,this._keydownFlag=0,this.model.maskFormat.indexOf("\\")>=0){for(i=0,t=0;t<this.model.maskFormat.length;t++)this.model.maskFormat[t]=="\\"&&(i+=1);this._maskLength=this.model.maskFormat.length-i}else this._maskLength=this.model.maskFormat.length;if(this.model.maskFormat.indexOf("\\")>=0)if(this.model.value)for(this._maskModel="",n=0;n<this.model.maskFormat.length;++n)this.model.maskFormat[n]=="\\"?this._maskModel+=this.model.maskFormat[++n]:this.model.maskFormat[n]=="\\"||(this._maskModel+=this.model.maskFormat[n].replace(/[9?CANa#&]/g,"_"));else this._maskModel=this._emptyMask;else this._maskModel=this.model.maskFormat.replace(/[9?CANa#&]/g,"_");this._changeMask(this.model.locale);(this._maskModel.indexOf("<")>=0||this._maskModel.indexOf(">")>=0)&&(this._maskModel=this._maskModel.replace(/[<>]/g,""),this.model.maskFormat=this.model.maskFormat.replace(/[<>]/g,""),this._valueMapper());this._validatedValue=this._maskModel;this.model.inputMode!="password"&&(this._setValue(this.model.value),this._setWaterMark());this.model.showError&&this.element.addClass("e-error").attr("aria-invalid","true");this._prevValue=this.model.watermarkText?this._textbox.value?this._textbox.value:this._maskModel:this._textbox.value},_setWidth:function(n){this.wrapper.width(n)},_setHeight:function(n){this.wrapper.height(n)},_roundedCorner:function(n){n&&!this.innerWrapper.hasClass("e-corner")?this.innerWrapper.addClass("e-corner"):this.innerWrapper.hasClass("e-corner")&&this.innerWrapper.removeClass("e-corner")},_setTextAlign:function(n){n=="right"?(this.element.css("text-align",""),this.wrapper.addClass("e-rtl")):(this.wrapper.removeClass("e-rtl"),this.element.css("text-align",n))},_setInputMode:function(n){this.element.attr("type",n)},_setReadOnly:function(n){this.model.readOnly=n;n?this.element.attr("readonly",!0):this.element.removeAttr("readonly")},_setSkin:function(n){this.wrapper.removeClass(this.model.cssClass);this.wrapper.addClass(n)},_setWaterMark:function(){var i=this.model.showPromptChar?this._maskModel:this._maskModel!=""&&this._maskModel!=null?this._maskModel.replace(/[_]/g," "):this._maskModel;this._maskModel=this.model.maskFormat.indexOf("\\")>=0?this.model.maskFormat===""?null:i:n.trim(this.model.maskFormat.replace(/[9?CANa#&]/g,"_"))===""?null:this.model.maskFormat.replace(/[9?CANa#&]/g,"_");(this._maskModel!=""&&this._maskModel!=null&&this._textbox.value==i||i==""&&this._textbox.value==""&&this.model.inputMode!="password")&&(this._textbox.value="");this.model.watermarkText.length!=0||t.isNullOrUndefined(this.element.attr("placeholder"))||(this.model.watermarkText=this.element.attr("placeholder"));this.model.watermarkText&&(this._isWatermark?this.element.attr("placeholder",this.model.watermarkText):this._textbox.value?this._hiddenSpan.css("display","none").text(this.model.watermarkText):this._hiddenSpan.css("display","block").text(this.model.watermarkText));this.model.watermarkText||this._textbox.value||!this.model.maskFormat||(this.model.hidePromptOnLeave?(this._unStrippedMask=this._maskModel,this._textbox.value=this.get_UnstrippedValue()):this._textbox.value=i)},_changeWatermark:function(t){if(!this.model.enabled)return!1;var i=this.model.showPromptChar?this._maskModel:this._maskModel!=""&&this._maskModel!=null?this._maskModel.replace(/[_]/g," "):this._maskModel;(this._textbox.value==i||this._textbox.value==""||n.trim(this.get_StrippedValue())=="")&&this.model.inputMode!="password"&&(this._textbox.value="");this._isWatermark?this.element.attr("placeholder",t):this._hiddenSpan.text(t);!this.model.watermarkText&&n.trim(this.get_StrippedValue())==""&&this.model.maskFormat&&(this.model.hidePromptOnLeave?(this._unStrippedMask=this._maskModel,this._textbox.value=this.get_UnstrippedValue()):this._textbox.value=i)},_showAlert:function(){var t=this;this.element.addClass("e-error").attr("aria-invalid","true").animate({Opacity:1},700,null,function(){n(t._textbox).removeClass("e-error").attr("aria-invalid","false")})},_unMask:function(){for(var s,y,l,h="",a=0,n=0,u=0,e,v="_",c,t=this.model.value.toString(),o="",f=this._rules.slice(),r=0;r<this._rules.length;r++){for(s=0;s<t.length;s++)if(f[r].rule&&t[s].match(f[r].rule)||f[r].rule===i){o+=f[r].rule?t.charAt(s):f[r];t=f[r].rule?t.slice(s+1,t.length):f[r]===t[s]?t.slice(s+1,t.length):t;a=1;break}a===0&&t.length>0&&(o+=f[r].rule===i?f[r]:"");a=0}while(n<this._rules.length){if(e=o[u],c=this._rules[n],e==i)break;if(e===c||e===v?(h+=e===v?v:e,u+=1,n+=1):c.rule===i?(h+=c,n+=1):this._rules[n].rule!=i&&e.match(this._rules[n].rule)?(l=o.charCodeAt(u),y=n,(this._rules["0"]===">"||this._rules["0"]==="<")&&(y=n-1),this._validateChars(l,y)?(h+=o.charAt(u),n++,u++):n++):typeof c!="string"?e.match(this._rules[n].rule)?(l=o.charCodeAt(u),this._validateChars(l,n)&&(h+=o.charAt(u),n++,u++)):(u++,n++):n++,u>o.length)break}return h},_validateValue:function(){var d,a,y,s,e,k,p,h,u,f,w;if(!t.isNullOrUndefined(this.model.value)){var c=this.model.value,r=this._maskModel,n=f=0,o,v="_",b,l=this._unMask();if(this._isWatermark||this.model.inputMode=="password"||this._hiddenSpan.css("display","none"),this._maskLength==0)return this._textbox.value=c,this._setWaterMark(),!0;for(d=this.model.value.toString(),c=this.model.maskFormat.indexOf("\\")>=0||this.model.customCharacter!=null?this.model.value:this.model.value=d;n<this._rules.length;){if(o=l[f],o==="_"&&this._rules[n].rule==="[^]+"&&(this.indexValue[this.temp_index]=n,this.temp_index++),b=this._rules[n],o==i)break;o===b||o===v?(o===v?v:"",s=r.substring(0,n),e=r.substring(n),r=s+o+e.substr(1,e.length),f+=1,n+=1):this._rules[n].rule!=i?(y=l.charCodeAt(f),a=n,(this._rules["0"]===">"||this._rules["0"]==="<")&&(a=n-1),this._validateChars(y,a)?(s=r.substring(0,a),e=r.substring(a),r=s+l.charAt(f)+e.substr(1,e.length),n++,f++):n++):typeof b!="string"?o.match(this._rules[n].rule)?(y=l.charCodeAt(f),this._validateChars(y,n)?(s=r.substring(0,n),e=r.substring(n),r=s+l.charAt(f)+e.substr(1,e.length),n++,f++):n++):(s=r.substring(0,n),e=r.substring(n),r=s+v+e.substr(1,e.length),f++,n++):n++}if(this.model.value)if(this._textbox.value=r,this.model.value=this.get_UnstrippedValue(),this.model.value===null&&(this.model.value=r),this.model.maskFormat.indexOf("\\")>=0){for(this._textbox.value="",k=0,p=0;p<this.model.maskFormat.length;p++)this.model.maskFormat[p]=="\\"&&(k+=1);if(h=0,this.model.value.length==r.length-k)for(u=0;u<this.model.maskFormat.length;++u)this.model.maskFormat[u]=="\\"?h=h+1:this.model.maskFormat[u-1]=="\\"?this._textbox.value+=c[u-h]:this.model.maskFormat[u]=="\\"||(this._textbox.value+=c.length<=u-h?r[u].replace(/[9?CANa#&]/g,"_"):c[u-h].replace(/[9?CANa#&]/g,"_"));else this._textbox.value=r}else this.model.hidePromptOnLeave?(this._unStrippedMask=r.replace(/[ ]/g,"_"),this._textbox.value=r):this._textbox.value=r;else if(this.model.maskFormat.indexOf("\\")>=0)for(u=0;u<this.model.maskFormat.length;++u)this.model.maskFormat[u-1]=="\\"?this._textbox.value+=this.model.maskFormat[u]:this.model.maskFormat[u]=="\\"||(this._textbox.value+=this.model.maskFormat[u].replace(/[9?CANa#&]/g,"_"));else this._textbox.value=this.model.maskFormat.replace(/[9?CANa#&]/g,"_");if(this._textbox.value!=i&&this.model.hidePromptOnLeave&&(this._unStrippedMask=this._textbox.value.replace(/[ ]/g,"_"),this._textbox.value=this.get_UnstrippedValue()),this._maskModel!=null&&(this._textbox.value.indexOf(">")>=0||this._textbox.value.indexOf("<")>=0)&&(this._textbox.value=this._textbox.value.replace(/[<>]/g,""),this._tempMask=this.model.maskFormat,this.model.maskFormat=this.model.maskFormat.replace(/[<>]/g,"")),this.model.showPromptChar||(this._textbox.value=this._getUnstrippedValue(!0)),this._tempMask!=null)for(f=0;f<this._textbox.value.length;f++)w=this._updateCasing(this._textbox.value[f],f),t.isNullOrUndefined(w)||(this._textbox.value=this._textbox.value.substring(0,f)+w+this._textbox.value.substring(f+w.length));this._setWaterMark()}},_selectionText:function(n,i){var r=t.isNullOrUndefined(this._maskModel)?"":this._maskModel.substring(n,i);return(this._textbox.value=this._textbox.value.substring(0,n)+r+this._textbox.value.substring(i),this._keydownFlag==1)?(this._setCaretPosition(n),n):this._keydownFlag==2?(this._setCaretPosition(i),i):n},_caretPosition:function(n){var t=0,i,r;return document.selection?(i=document.selection.createRange(),r=i.text.length,i.moveStart("character",-n.value.length),t=i.text.length-r,r!=0&&(t=this._selectionText(t,i.text.length),this._selectedTextKeyDown=1)):(n.selectionStart||n.selectionStart=="0")&&(t=n.selectionStart,n.selectionStart!=n.selectionEnd&&(this._keydownFlag&&(t=this._selectionText(n.selectionStart,n.selectionEnd)),this._selectedTextKeyDown=1)),t},_setCaretPosition:function(n){var t=this._textbox,i;window.navigator.appName=="Microsoft Internet Explorer"?t.createTextRange&&(i=t.createTextRange(),i.move("character",n),i.select()):t.selectionStart||t.selectionStart=="0"?(t.focus(),this._isAndroid?setTimeout(function(){t.setSelectionRange(n,n)},0):t.setSelectionRange(n,n)):t.focus()},_validateChars:function(t,i){var s=this._charMap,u=!1,e,f,r,o;return this.model.maskFormat.indexOf("\\")>=0?(e=this._getCunrrentPos(i),f=this.model.maskFormat.substr(i+e,1)):f=this.model.maskFormat.substr(i,1),r=this.model.customCharacter,o=String.fromCharCode(t),n.each(s,function(n,t){f==n&&(r!=null&&(n=="C"?t="["+r+"]":(n=="A"||n=="N"||n=="#")&&(t=t.replace("]","")+r+"]")),u=o.match(new RegExp(t))?!0:!1)}),u},_seekNext:function(n,t){for(var f=this._caretPosition(this._textbox),i=n?t?f-t-1:f-1:f,e=i,o=!0,r,u;o;){if(i>=0&&i<this._maskLength){for(r=0,u=0;u<=i;u++)this.model.maskFormat[u]=="\\"&&(r+=1);if(this.model.maskFormat.charAt(i)!="C"&&(this.model.maskFormat.indexOf("\\")>=0?this.model.maskFormat.charAt(i+r)!="\\"&&this.model.maskFormat.charAt(i+r-1)!="\\"?this._charMap[this.model.maskFormat.charAt(i+r)]||i++:this.model.maskFormat.charAt(i+r)!="\\"&&this.model.maskFormat.charAt(i+r-1)=="\\"&&++i:this._charMap[this.model.maskFormat.charAt(i)]||i++,i!=e)){e=i;continue}}o=!1}return i},_seekBefore:function(n){var f=this._caretPosition(this._textbox),t=n?f+1:f,e=--t,u=!0,i,r;for(this._selectedTextKeyDown==1&&(u=!1);u;){if(t>=0&&t<this._maskLength){for(i=0,r=0;r<=t;r++)this.model.maskFormat[r]=="\\"&&(i+=1);if(this.model.maskFormat.charAt(t)!="C"&&(this.model.maskFormat.indexOf("\\")>=0?this.model.maskFormat.charAt(t+i)!="\\"&&this.model.maskFormat.charAt(t+i-1)!="\\"?this._charMap[this.model.maskFormat.charAt(t+i)]||this._setCaretPosition(--t):this.model.maskFormat.charAt(t+i-1)=="\\"&&this._setCaretPosition(--t+i):this._charMap[this.model.maskFormat.charAt(t)]||this._setCaretPosition(--t)),t!=e){e=t;continue}}u=!1}return t},_writeBuffer:function(n,t,r){var e,s,o,f,h,u;if(t<=this._maskLength){if(e=this._textbox.value,this.indexValue!=null&&r.keyCode!="95")for(u=0;u<this.indexValue.length;u++)this.indexValue[u]==t&&(n!="_"||r.keyCode=="8")&&(this.indexValue[u]="");if(r.keyCode=="95"&&(this.indexValue[this.temp_index]=t,this.temp_index++),this._tempMask!=null&&(s=this._updateCasing(n,t)),n=s==i?n:s,o=e.substring(0,t),f=e.substring(t),this.model.maskFormat.indexOf("\\")>=0){for(h=0,u=0;u<=t;u++)this.model.maskFormat[u].indexOf("\\")>=0&&t!=0&&(h+=1);this._textbox.value=this.model.maskFormat[t+h].indexOf("\\")>=0?o+e[t]+f.substr(1,f.length):o+n+f.substr(1,f.length)}else this._textbox.value=o+n+f.substr(1,f.length);this._setCaretPosition(t+1)}},_updateCasing:function(n,t){for(var r,i=0;i<t+1;i++)(this._tempMask.substr(i,1)=="<"||this._tempMask.substr(i,1)==">")&&t++;for(r=t;r>-1;r--){if(this._tempMask.substr(r,1)=="<")return n.toLowerCase();if(this._tempMask.substr(r,1)==">")return n.toUpperCase()}},_getStrippedValue:function(t){var f,s=this.model.maskFormat,e=t?"":null,o,r,i,u;if(f=this._textbox.value==""&&this.model.inputMode!="password"?this._maskModel:this._textbox.value,s.length==0)return f;for(o=0,r=0;r<s.length;r++)e=t?e:n.trim(e),this.model.maskFormat.indexOf("\\")>=0?this.model.maskFormat[r]=="\\"?o+=1:this.model.maskFormat[r-1]=="\\"?e+=this._textbox.value[r-o]:(i=s[r],u=null,"9?$a*".indexOf(i)!=-1?u=this._charMap[i]:i=="A"||i=="N"||i=="#"?u=this._charMap[i].replace("]","")+this.model.customCharacter+"]":i=="C"?u="["+this.model.customCharacter+"]":i=="&"&&(e+=f[r-o]),u&&f[r-o]&&f[r-o].match(new RegExp(u))&&(e+=f[r-o])):(i=s[r],u=null,"9?$a*".indexOf(i)!=-1?u=this._charMap[i]:i=="A"||i=="N"||i=="#"?u=this._charMap[i].replace("]","")+this.model.customCharacter+"]":i=="C"?u="["+this.model.customCharacter+"]":i=="&"&&(e+=f[r-o]),u&&f[r]&&f[r].match(new RegExp(u))&&(e+=f[r]));return e},_getUnstrippedValue:function(t){var u=0,f=this._textbox.value==""&&this.model.inputMode!="password"?this._maskModel:this._textbox.value,r=null;if(this.model.maskFormat.length==0)return f;if(f!=i&&(r=n.trim(f.replace(/[_]/g," "))==""?null:f.replace(/[_]/g," ")),this.model.customCharacter=="_"&&r==null&&(r=""),r==null&&this.indexValue[u]!=null&&(r=""),f!=i&&this.indexValue[u]!=null&&r!=null)for(;u<this.indexValue.length;u++)(this.indexValue[u]!=""||this.indexValue[u]=="0")&&(r=r.substr(0,this.indexValue[u])+"_"+r.substr(this.indexValue[u]+1));return r==null&&t?"":r},get_StrippedValue:function(){return this._getStrippedValue()},get_UnstrippedValue:function(){return this._getUnstrippedValue()},_setValue:function(i){(t.isNullOrUndefined(i)||n.trim(i)=="")&&(i=null);this.model.value=i;this._isWatermark||this.model.inputMode=="password"||this._hiddenSpan.css("display","none");t.isNullOrUndefined(this.model.maskFormat)||this.model.maskFormat==""?(this._textbox.value=t.isNullOrUndefined(i)?"":i,this._unStrippedMask=this._textbox.value):(this._validateValue(),t.isNullOrUndefined(this.model.value)&&(this._textbox.value=t.isNullOrUndefined(i)?"":i,this._unStrippedMask=this._maskModel));this._setWaterMark();this._prevValue=this._textbox.value;this._prevPosition=this.element[0].selectionStart},_valueMapper:function(){for(var f=[],r=0,o=this.model.maskFormat||"",s=o.split(""),t=0,n,h=0,u="",e,c=this._charMap,i;t<o.length;t++)if(n=s[t],e=c[n],e)f[r]={rule:e},u+="_",r+=1;else for(n==="\\"&&(h=t+1,t++,n=s[h]),n=n.split(""),i=0;i<n.length;i++)f[r]=n[i],u+=n[i],r+=1;this._rules=f;this._emptyMask=u;this._maskLength=u.length},_changeMask:function(n){var r,f,e,o,u,i;if(this._maskModel.length!=0){for(r=t.preferredCulture(n),u="",f=r.numberFormat[","],e=r.numberFormat.currency.symbol,o=r.numberFormat["."],i=0;i<this._maskModel.length;i++)u+=this._maskModel[i]==","?f:this._maskModel[i]=="."?o:this._maskModel[i]=="$"?e:this._maskModel[i];this._maskModel=u}},_setMask:function(i){if(this._maskLength=i.length,this.model.maskFormat=i,this._tempMask=this.model.maskFormat,this._maskModel=i.replace(/[9?CANa]/g,"_"),(this._maskModel.indexOf("<")>=0||this._maskModel.indexOf(">")>=0)&&(this._maskModel=this._maskModel.replace(/[<>]/g,""),this.model.maskFormat=this.model.maskFormat.replace(/[<>]/g,"")),t.isNullOrUndefined(this.model.maskFormat)||this.model.maskFormat==""){if(!this.model.watermarkText&&this._textbox.value!=this._maskModel)if(this.model.maskFormat)this.model.hidePromptOnLeave?(this._textbox.value=this._maskModel,this._unStrippedMask=this._textbox.value,this._textbox.value=this.get_UnstrippedValue()):this._textbox.value=this._maskModel;else{var r=this._unStrippedMask.replace(/[_]/g," ");this._textbox.value=this.model.customCharacter==null?n.trim(r.replace(/[\(\)-]/g,"")):n.trim(r);this._unStrippedMask=this._textbox.value}}else this._validateValue()},enable:function(){this.element.disabled=!1;this.element.removeAttr("disabled").removeClass("e-disable").attr({"aria-disabled":!1});this.wrapper.find(".e-placeholder").length>0&&this.wrapper.find(".e-placeholder").removeAttr("disabled","disabled");this.wrapper.removeClass("e-disable-wrap");this.model.enabled=!0},disable:function(){this.element.disabled=!0;this.element.attr("disabled","disabled").addClass("e-disable").attr({"aria-disabled":!0});this.wrapper.find(".e-placeholder").length>0&&this.wrapper.find(".e-placeholder").attr("disabled","disabled");this.wrapper.addClass("e-disable-wrap");this.model.enabled=!1},clear:function(){this._textbox.value=this.model.maskFormat.replace(/[9?aCAN]/g,"_");this.model.value=this.get_StrippedValue()},_wireEvents:function(){this._on(this.element,"focus",this._OnFocusHandler);this._on(this.element,"blur",this._OnBlurHandler);this._on(this.element,"keydown",this._OnKeyDownHandler);this._on(this.element,"input",this._OnInputHandler);this._on(this.element,"keypress",this._OnKeyPressHandler);this._on(this.element,"keyup",this._OnKeyUpHandler);this._on(this.element,"mouseover",this._OnMouseOverHandler);this._on(this.element,"mouseout",this._OnMouseOutHandler);this._on(this.element,"paste",this._OnPasteHandler);this._on(this.element,"cut",this._OnCutHandler)},_OnCutHandler:function(){var i=t.isNullOrUndefined(this._maskModel)?"":this._maskModel.substring(this._textbox.selectionStart,this._textbox.selectionEnd),r=this._textbox.value.substring(0,this._textbox.selectionStart),u=this._textbox.value.substring(this._textbox.selectionEnd),f=this._textbox.selectionStart,n=this;setTimeout(function(){n._textbox.value=r+i+u;n._setCaretPosition(f);n._prevValue=n._textbox.value;n._prevPosition=n.element[0].selectionStart;n._raiseEvents("change")},0)},_OnPasteHandler:function(){var t=this;return this._keyFlag=!0,setTimeout(function(){var i=n(t._textbox).val();t._setValue(i);t._raiseEvents("change")},0),!0},_OnFocusHandler:function(){var i,r;(this.wrapper.addClass("e-focus"),i=this.model.showPromptChar?this._maskModel:this._maskModel!=""&&this._maskModel!=null?this._maskModel.replace(/[_]/g," "):this._maskModel,this.model.readOnly)||(this._focusValue=this.model.value,this._isWatermark||this.model.inputMode=="password"||this._hiddenSpan.css("display","none"),this._textbox.value==""&&this._maskModel!=""&&this.model.inputMode!="password"&&(this._textbox.value=this.model.maskFormat.indexOf("\\")>=0?i:t.isNullOrUndefined(this._maskModel)?"":i),this._maskModel!=null&&(this._textbox.value.indexOf("<")>=0||this._textbox.value.indexOf(">")>=0)&&(this._textbox.value=this._textbox.value.replace(/[<>]/g,""),this._maskModel=this._textbox.value,this._tempMask=this.model.maskFormat,this.model.maskFormat=this.model.maskFormat.replace(/[<>]/g,"")),this._textbox.value!=i&&this._unStrippedMask!=null&&this.model.hidePromptOnLeave&&(this._textbox.value=this._unStrippedMask),this.model.showPromptChar||(this._textbox.value=this._getUnstrippedValue(!0)),n.fn.selectRange=function(n,t){return this.each(function(){if(this.setSelectionRange)this.focus(),this.setSelectionRange(n,t);else if(this.createTextRange){var i=this.createTextRange();i.collapse(!0);i.moveEnd("character",t);i.moveStart("character",n);i.select()}})},this.model.maskFormat&&n(this.element).selectRange(0,0),r=this,setTimeout(function(){r._prevPosition=r.element[0].selectionStart},0),this._raiseEvents("focusIn"))},_OnBlurHandler:function(){var f,r,n,u;if(this.wrapper.removeClass("e-focus"),this.model.value=this.get_StrippedValue(),f=[],r=[],(this._textbox.value.indexOf("_")!=-1||this._textbox.value.indexOf(" ")!=-1)&&!t.isNullOrUndefined(this.model.value)){for(n=0;n<this.model.maskFormat.length;n++)this.model.maskFormat[n]=="A"||this.model.maskFormat[n]=="?"?f.push(n):(this.model.maskFormat[n]=="9"||this.model.maskFormat[n]=="a"||this.model.maskFormat[n]=="C")&&r.push(n);for(n=0;n<f.length;n++)this._textbox.value[f[n]]==="_"&&(this._showAlert(),this.model.value=this._textbox.value);for(n=0;n<r.length;n++)if(this.model.value[r[n]]=="_"||this.model.value[r[n]]==" ")for(this.model.value=this.model.value.substr(0,r[n])+this.model.value.substr(r[n]+1,this.model.value.length),u=n;u<r.length;u++)r[u]=r[u]-1}this.model.value=this.model.value!=null?this.model.value.replace(/\s+/g,""):this.model.value;this._textbox.value!=i&&(this.model.watermarkText==""||this.model.watermarkText!=""&&this.model.value!="")&&(this.model.hidePromptOnLeave?(this._unStrippedMask=this._textbox.value,this._textbox.value=this.get_UnstrippedValue()):this._unStrippedMask=this._textbox.value);this.model.inputMode!="password"&&this._setWaterMark();this._raiseEvents("change");this._raiseEvents("focusOut")},_OnKeyDownHandler:function(n){var e,o,r,u,i,h;if(!this.model.readOnly){if(this._keyFlag=!0,this._checkMask&&(r=this.element[0].selectionStart,e=this._getStrippedValue(!0),this._setValue(e),this._setCaretPosition(r),this._checkMask=!1),this._keypressFlag=0,this._keyupFlag=!0,u=t.browserInfo().name,o=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,t.isDevice()&&t.isTouchDevice()&&!o&&(n.keyCode==229||u=="mozilla"&&n.keyCode==0&&n.charCode==0||u=="edge"||u=="msie")&&(this._keyupFlag=!1),this._raiseEvents("onKeyDown",null,{keyCode:n.keyCode,altKey:n.altKey,shiftKey:n.shiftKey,ctrlKey:n.ctrlKey,originalArgs:n}),this._raiseEvents("keyDown",null,{keyCode:n.keyCode,altKey:n.altKey,shiftKey:n.shiftKey,ctrlKey:n.ctrlKey,originalArgs:n}),this.element.removeClass("error"),this._maskLength==0)return!0;var f=n.keyCode?n.keyCode:n.charCode,c=String.fromCharCode(f),i=this._seekNext(),s=this.model.showPromptChar?"_":" ",u=t.browserInfo().name;if(u=="msie"&&this._textbox.value==""){if(this.model.maskFormat.indexOf("\\")>=0)for(r=0;r<this.model.maskFormat.length;++r)this.model.maskFormat[r-1]=="\\"?this._textbox.value+=this.model.maskFormat[r]:this.model.maskFormat[r]=="\\"||(this._textbox.value+=this.model.maskFormat[r].replace(/[9?CANa#&]/g,"_"));else this._textbox.value=this.model.maskFormat.replace(/[9?CANa#&]/g,"_");this._setCaretPosition(i)}if(f>=35&&f<=41&&(window.navigator.appCodeName=="Mozilla"||window.navigator.appCodeName=="opera")&&(this._keypressFlag=1),n.shiftKey&&(n.keyCode==35||n.keyCode==36||n.keyCode==37||n.keyCode==39||n.keyCode==46||n.keyCode==127)||n.ctrlKey&&(n.keyCode==86||n.keyCode==65||n.keyCode==67||n.keyCode==88)){this._keypressFlag=1;return}return f==8?this.model.inputMode!="password"?(this._keydownFlag=1,i=this._seekBefore(),this._selectedTextKeyDown?!this.model.showPromptChar&&this._selectedTextKeyDown&&(n.keyCode==8&&i=="-1"&&this.indexValue!=null&&(this.indexValue=[],this.temp_index=0),this._textbox.value=this.get_UnstrippedValue(),this._setCaretPosition(i+1)):(i>=0&&i<this._maskLength&&this._writeBuffer(s,i,n),i<0&&(i=0),this._setCaretPosition(i)),this._keydownFlag=0,this._selectedTextKeyDown=0,n.keyCode==8&&i=="-1"&&this.indexValue!=null&&(this.indexValue=[],this.temp_index=0),n.preventDefault(),this._prevValue=this._textbox.value,this._prevPosition=this.element[0].selectionStart,this._keyFlag=!1,!1):(this._keypressFlag=1,!0):n.keyCode==46||n.keyCode==127?this.model.inputMode!="password"?(this._keydownFlag=2,i=this._seekNext(),this._selectedTextKeyDown?!this.model.showPromptChar&&this._selectedTextKeyDown&&(this._textbox.value=this.get_UnstrippedValue(),this._setCaretPosition(i)):i>=0&&i<this._maskLength&&(h=this._getCunrrentPos(i),this.model.maskFormat[i+h]=="&"||this._writeBuffer(s,i,n)),this._keydownFlag=0,this._selectedTextKeyDown=0,n.preventDefault(),!1):(this._keypressFlag=1,!0):void 0}},_ErrorHandler:function(n){var t=this.model.showPromptChar?"_":" ";this._textbox.value==""&&(this._textbox.value=this.model.maskFormat.replace(/[9?$CANa*]/g,t));this._setCaretPosition(n);this._showAlert()},_getCunrrentPos:function(n){for(var t=0,i=0;i<=n+t;i++)this.model.maskFormat[i]=="\\"&&(t+=1);return t},_OnKeyPressHandler:function(n){var f;if(!this.model.readOnly){if(this._keyFlag=!1,this._raiseEvents("keyPress",null,{keyCode:n.keyCode,altKey:n.altKey,shiftKey:n.shiftKey,ctrlKey:n.ctrlKey,originalArgs:n}),this._maskLength==0)return!0;var r=n.keyCode?n.keyCode:n.charCode,e=String.fromCharCode(r),o=this.model.showPromptChar?"_":" ",i=this._seekNext(),u=t.browserInfo().name,s=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream;if(t.isDevice()&&t.isTouchDevice()&&!s&&(u=="edge"||u=="msie"))return!0;if(this._validateChars(r,i)?((u=="mozilla"||u=="opera")&&(n.keyCode==35||n.keyCode==36||n.keyCode==37||n.keyCode==39)||(u=="mozilla"||u=="opera")&&n.ctrlKey&&(r==97||r==99||r==118||r==120)||(this._textbox.value==""&&(this._textbox.value=this.model.maskFormat.replace(/[9?$CANa&*]/g,o)),this.model.maskFormat.indexOf("\\")>=0?i<this._maskLength&&this._writeBuffer(e,i,n):this._writeBuffer(e,i,n)),this._prevValue=this._textbox.value):(u=="mozilla"||u=="opera")&&(n.keyCode==35||n.keyCode==36||n.keyCode==37||n.keyCode==39)||(u=="mozilla"||u=="opera")&&n.ctrlKey&&(r==97||r==99||r==118||r==120)||(this.model.maskFormat.indexOf("&")>=0||this.model.maskFormat.indexOf("\\")>=0?(f=this._getCunrrentPos(i),this.model.maskFormat[i+f]=="&"&&r==127||(this.model.maskFormat.indexOf("\\")>=0?i<this._maskLength&&(this._validateChars(r,i+f)||this.model.maskFormat[i+f-1]=="\\"?this._writeBuffer(e,i,n):this._ErrorHandler(i)):this._validateChars(r,i+f)?this._writeBuffer(e,i,n):this._ErrorHandler(i))):this._ErrorHandler(i)),!this._keypressFlag&&r!=9)return this._keypressFlag=0,n.preventDefault(),!1;this._keypressFlag=0}},_OnInputHandler:function(n){var c=t.browserInfo().name,l=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream&&!this._keyFlag,y=this._keyupFlag&&(c=="edge"||c=="msie"),a,s,i,u,f;if(this._maskLength==0)return!0;if(t.isDevice()&&t.isTouchDevice()&&(l||y)){var h=this._textbox.value.length-this._prevValue.length,i=h==1?this._seekNext(!0):this._seekNext(!0,h-1),r,e=this._textbox.value[this.element[0].selectionStart-1];r=e.charCodeAt(0);this._validateChars(r,i)?(this._textbox.value=this._prevValue,u=String.fromCharCode(r),this._writeBuffer(u,i,n)):(this._textbox.value=this._prevValue,this._setCaretPosition(i),this._ErrorHandler(i));this._prevValue=this._textbox.value;this._prevPosition=this.element[0].selectionStart;this._checkMask=!0}if(t.isDevice()&&t.isTouchDevice()&&!l&&!this._keyupFlag){a=this.element[0].selectionStart;s=this.element[0].selectionEnd;a!=s&&this._textbox.setSelectionRange(s,s);var p=this.model.showPromptChar?"_":" ",h=this._textbox.value.length-this._prevValue.length,v=h<=0?!0:!1,o=v?this._seekBefore(!0):this._seekNext(!0),r,e=this._textbox.value[this.element[0].selectionStart-1],a=0;if(this.element[0].selectionStart>0&&(r=e.charCodeAt(0)),this._tempMask.length>this._textbox.value.length)t.isNullOrUndefined(e)&&this._emptyMask.slice(1,this._emptyMask.length)==this._textbox.value?this._textbox.value=this._emptyMask:v?(this._textbox.value=this._prevValue,this._writeBuffer(p,o,n)):(i=o,this._validateChars(r,i)?(this._textbox.value=this._prevValue,u=String.fromCharCode(r),this._writeBuffer(u,i,n)):(this._textbox.value=this._prevValue,this._setCaretPosition(i),this._ErrorHandler(i))),this._setCaretPosition(o);else if(i=o,this._validateChars(r,i))for(this._textbox.value=this._prevValue,u=String.fromCharCode(r),this._writeBuffer(u,i,n),f=0;f<this._emptyMask.length;f++)this._emptyMask[f]==" "&&this._textbox.value[f]!=" "&&e==this._textbox.value[f]&&(this._textbox.value=this._textbox.value.substring(0,startPos-1)+" "+e+this._textbox.value.substring(endPos,this._textbox.value.length),this._setCaretPosition(o+1));else this._textbox.value=this._prevValue,this._setCaretPosition(i),this._ErrorHandler(i);this._prevValue=this._textbox.value;this._prevPosition=this.element[0].selectionStart;this._keyupFlag=!0}this._keyFlag=!1},_OnKeyUpHandler:function(n){this._maskLength==0&&this._raiseEvents("change");this._raiseEvents("keyUp",null,{keyCode:n.keyCode,altKey:n.altKey,shiftKey:n.shiftKey,ctrlKey:n.ctrlKey,originalArgs:n});t.isNullOrUndefined(this.model.validationRules)||this._hiddenInput.valid()},_OnMouseOverHandler:function(){this._raiseEvents("mouseOver")},_OnMouseOutHandler:function(){this._raiseEvents("mouseOut")},_raiseEvents:function(i,r,u){var f,o=this.get_StrippedValue(),e=this.get_UnstrippedValue();if(this.model.value=e!==null?this.model.customCharacter==null&&n.trim(e.replace(/[\(\)-]/g,""))==""?null:e:null,i=="change")if(this.previousValue!=this.model.value)this.previousValue=this.model.value;else if(this._focusValue==this.model.value)return!1;f={value:e,unmaskedValue:o};i=="change"&&(f.isInteraction=!r);i=="change"&&(this._trigger("_change",f),t.isNullOrUndefined(this.model.value)?this.wrapper.removeClass("e-valid"):this.wrapper.addClass("e-valid"));u&&n.extend(!0,f,u);this._hiddenInput.val(o);this._trigger(i,f)},_OnValueChange:function(){this._textbox.value==""&&this._maskModel!=""&&(this._textbox.value=this._maskModel);this._setValue(this._textbox.value)}});t.InputMode={Password:"password",Text:"text"}}(jQuery,Syncfusion)});
|
|
10
|
+
(function(n){typeof define=="function"&&define.amd?define(["./bold.reports.common.min"],n):n()})(function(){(function(n,t,i){t.widget({ejNumericTextbox:["ej.NumericTextbox","e-numerictextbox"],ejPercentageTextbox:["ej.PercentageTextbox","e-percentagetextbox"],ejCurrencyTextbox:["ej.CurrencyTextbox","e-currencytextbox"]},{element:null,model:null,validTags:["input"],_addToPersist:["value"],_setFirst:!1,type:"editor",angular:{require:["?ngModel","^?form","^?ngModelOptions"],requireFormatters:!0,requireParser:!0},defaults:{width:"",height:"",value:null,name:null,htmlAttributes:{},minValue:-Number.MAX_VALUE,maxValue:Number.MAX_VALUE,incrementStep:1,decimalPlaces:0,validateOnType:!1,cssClass:"",enablePersistence:!1,showSpinButton:!0,locale:"en-US",enableStrictMode:!1,showRoundedCorner:!1,readOnly:!1,enabled:!0,enableRTL:!1,watermarkText:"Enter value",validationRules:null,validationMessage:null,groupSeparator:null,groupSize:null,positivePattern:null,currencySymbol:null,negativePattern:null,change:null,focusIn:null,focusOut:null,create:null,destroy:null},dataTypes:{minValue:"number",maxValue:"number",incrementStep:"number",decimalPlaces:"number",showSpinButton:"boolean",enableStrictMode:"boolean",showRoundedCorner:"boolean",enableRTL:"boolean",locale:"string",watermarkText:"string",cssClass:"string",readOnly:"boolean",enabled:"boolean",validationRules:"data",validationMessage:"data",htmlAttributes:"data",validateOnType:"boolean",groupSeparator:"string"},observables:["value"],_setModel:function(n){var r=!1;for(var i in n)switch(i){case"value":t.isNullOrUndefined(n.minValue)&&t.isNullOrUndefined(n.maxValue)?(this._setValue(n[i],!0),n[i]=this.model.value):(this.model.value=this._checkNumValue(n[i]),this._localizedFormat(),this._raiseChangeEvent(!0),r=!0);break;case"enableRTL":this._enableRTL(n[i]);break;case"width":this._setWidth(n[i]);break;case"height":this._setHeight(n[i]);break;case"validationRules":this.model.validationRules!=null&&(this.element.rules("remove"),this.model.validationMessage=null);this.model.validationRules=n[i];this.model.validationRules!=null&&(this._initValidator(),this._setValidation());break;case"validationMessage":this.model.validationMessage=n[i];this.model.validationRules!=null&&this.model.validationMessage!=null&&(this._initValidator(),this._setValidation());break;case"minValue":if(isNaN(n[i]))return;this.model.minValue=this.model.decimalPlaces==-1?n[i]:parseFloat(n[i].toFixed(this.model.decimalPlaces));this._updateValueAttributes(this.model.minValue,this.model.maxValue,this.model.value);r=!0;break;case"maxValue":if(isNaN(n[i]))return;this.model.maxValue=this.model.decimalPlaces==-1?n[i]:parseFloat(n[i].toFixed(this.model.decimalPlaces));this._updateValueAttributes(this.model.minValue,this.model.maxValue,this.model.value);r=!0;break;case"incrementStep":if(isNaN(n[i]))return;this.model.incrementStep=this.model.decimalPlaces==-1?n[i]:parseFloat(n[i].toFixed(this.model.decimalPlaces));break;case"enableStrictMode":this.model.enableStrictMode=n[i];r=!0;break;case"showSpinButton":this._showSpin(n[i]);break;case"showRoundedCorner":this._roundedCorner(n[i]);break;case"locale":this.model.decimalPlaces=t.isNullOrUndefined(this._options.decimalPlaces)&&this.model.decimalPlaces===this.culture.numberFormat.decimals?-1:this._options.decimalPlaces===-1?-1:this.model.decimalPlaces;this._setLocalize(n[i]);this._options.decimalPlaces=this.model.decimalPlaces;n[i]=this.model.locale;break;case"decimalPlaces":this._setDecimal(n[i]);t.isNullOrUndefined(this._options)&&(this._options={});this._options.decimalPlaces=n[i];break;case"cssClass":this._setSkin(n[i]);break;case"readOnly":this._setReadOnly(n[i]);break;case"enabled":n[i]?this.enable():this.disable();break;case"watermarkText":t.isNullOrUndefined(this._options)||(this._options=[]);this._options.watermarkText=this.model.watermarkText=n[i];this._localizedLabels.watermarkText=this.model.watermarkText;this._changeWatermark(n[i]);break;case"htmlAttributes":this._addAttr(n[i]);break;case"groupSeparator":this._checkSeparator(n[i]);n[i]=this.model.groupSeparator;break;case"positivePattern":case"negativePattern":case"groupSize":case"currencySymbol":this.model[i]=n[i];this._options[i]=n[i];this._initCustomValue();n[i]=this.model[i];this._setValue(this.model.value,!0)}r&&(this._validateMinMaxValue(!0,!0),n.value=this.model.value,n.maxValue=this.model.maxValue,n.minValue=this.model.minValue,this.model.minValue!=-Number.MAX_VALUE&&(this._startValue=this.model.minValue),this._updateValueAttributes(this.model.minValue,this.model.maxValue,this.model.value));this._checkSeparator(this.model.groupSeparator);this.element.val(this._removeSeparator(this.model.value));this._updateSeparator();this._checkErrorClass()},_destroy:function(){this.wrapper&&(this.element.insertBefore(this.wrapper),this.wrapper.remove());this._isWatermark&&this.element.removeAttr("placeholder");this.element.val("").removeClass("e-input e-disable e-no-spin").empty();this.element.removeAttr("disabled aria-disabled");this.wrapper.removeAttr("aria-valuemin aria-valuemax aria-valuenow aria-live");this._cloneElement.attr("role")||this.element.removeAttr("role");this.element.css("display","block")},_init:function(n){if(this._cloneElement=this.element.clone(),this._options=t.isNullOrUndefined(n)?{}:n,this.element.is("input")&&(this.element.is("input[type=text]")||this.element.is("input[type=number]")||!this.element.attr("type")))this.model.decimalPlaces>0&&(this.element[0].type=this.element.is("input[type=number]")?"tel":"text"),this.element.is("input[type=number]")&&this.element.addClass("e-no-spin"),this._isWatermark="placeholder"in document.createElement("input"),this.model.locale=t.preferredCulture(this.model.locale).name=="en"?"en-US":t.preferredCulture(this.model.locale).name,this._localizedLabels=this._getLocalizedLabels(),this.culture=t.preferredCulture(this.model.locale),this._browsername=t.browserInfo().name,this._initCustomValue(),this._prevSeparator=null,this._checkSeparator(this.model.groupSeparator),this._checkAttribute(),this._renderControl(),this._setValues(),this._wireEvents(),this._initObjects(),this._addAttr(this.model.htmlAttributes),this.model.validationRules!=null&&(this._initValidator(),this._setValidation()),this._updateSeparator(),n&&n.value!=i&&this._trigger("_change",{value:this.model.value});else return this._destroy(),!1},_checkAttribute:function(){for(var u=["min","max","step","readonly","disabled","placeholder"],f=["minValue","maxValue","incrementStep","readOnly","enabled","watermarkText"],i,n,r=0;r<u.length;r++)i=this.element.attr(u[r]),n=f[r],t.isNullOrUndefined(i)||t.isNullOrUndefined(this._options)||!t.isNullOrUndefined(this._options[n])||(n=="watermarkText"?this._options[n]=i:this.model[n]=n!="disabled"&&n!="readOnly"?t.parseFloat(i,this.model.locale):n=="readOnly"?this.element.is("[readonly]"):!this.element.is("[disabled]"))},_addAttr:function(i){var r=this;n.map(i,function(n,i){var u=i.toLowerCase();u=="class"?r.wrapper.addClass(n):u=="accesskey"?r._hiddenInput.attr(i,n):u=="disabled"&&n=="disabled"?r.disable():u=="readonly"&&n=="readOnly"?r._setReadOnly(!0):u=="tabindex"?(r._hiddenInput.attr(i,n),r.element.attr(i,n)):u=="style"||u=="id"?r.wrapper.attr(i,n):u=="aria-label"?r.element.attr(i,n):t.isValidAttr(r.element[0],i)?r.element.attr(i,n):r.wrapper.attr(i,n)})},_setValues:function(){this._id=this.element[0].id;this._textBox=this._hiddenInput[0];this._error=!1;this._timeout=null;this.isValidState=!0;this._allowkeyboard=!0;this._validateOnType=!1;this._focused=!1;this._startValue=0;this.sfType==="ej.CurrencyTextbox"&&this.model.minValue==-Number.MAX_VALUE&&(this.model.minValue=0);t.isNullOrUndefined(this.model.decimalPlaces)&&(this.model.decimalPlaces=this.sfType==="ej.CurrencyTextbox"?t.preferredCulture(this.model.locale).numberFormat.currency.decimals:t.preferredCulture(this.model.locale).numberFormat.decimals);this.model.decimalPlaces>=0&&(this.model.minValue=parseFloat(this.model.minValue.toFixed(this.model.decimalPlaces)),this.model.maxValue=parseFloat(this.model.maxValue.toFixed(this.model.decimalPlaces)));this.model.minValue!=-Number.MAX_VALUE&&(this._startValue=this.model.minValue);t.isNullOrUndefined(this._options)||t.isNullOrUndefined(this._options.watermarkText)||(this._localizedLabels.watermarkText=this._options.watermarkText);this._localizedLabelToModel();this._localizedFormat();this._validateMinMaxValue(!0);this._updateSymbol(this.model.locale);var n;t.isNullOrUndefined(this.model.value)?(n=this.model.value,this.wrapper.removeClass("e-valid")):(n=this.model.value.toString().indexOf("e")==-1?this._removeSeparator(this.model.value):this._convertToExponetial(this.model.value).unformattedValue,this.wrapper.addClass("e-valid"));this.element.val(n)},_initValidator:function(){this.element.closest("form").data("validator")||this.element.closest("form").validate()},_setValidation:function(){var u=this.model.validationRules,r,e,i,f,o;this.element.rules("add",u);r=this.element.closest("form").data("validator");r=r?r:this.element.closest("form").validate();e=this.element.attr("name");r.settings.messages[e]={};for(i in u)if(f=null,!t.isNullOrUndefined(u[i])){if(t.isNullOrUndefined(u.messages&&u.messages[i])){r.settings.messages[e][i]=n.validator.messages[i];for(o in this.model.validationMessage)i==o?f=this.model.validationMessage[i]:""}else f=u.messages[i];r.settings.messages[e][i]=f!=null?f:n.validator.messages[i]}},_updateValueAttributes:function(n,t,i){n&&n!=-Number.MAX_VALUE&&this.wrapper.attr({"aria-valuemin":n});t&&t!=Number.MAX_VALUE&&this.wrapper.attr({"aria-valuemax":t});i&&this.wrapper.attr({"aria-valuenow":i})},_renderControl:function(){this.wrapper=t.buildTag("span.e-widget e-pinch");this.innerWrap=t.buildTag("span.e-in-wrap e-box ");this.wrapper.attr("style",this.element.attr("style"));this.sfType==="ej.NumericTextbox"?this.wrapper.addClass("e-numeric"):this.sfType==="ej.PercentageTextbox"?this.wrapper.addClass("e-percent"):this.sfType==="ej.CurrencyTextbox"&&this.wrapper.addClass("e-currency");this.wrapper.append(this.innerWrap).insertAfter(this.element);this.innerWrap.append(this.element);this._hiddenInput=t.buildTag("input","",{},{type:"text"}).insertBefore(this.element);this._hiddenInput.attr("data-role","none");this._hiddenInput[0].tabIndex=this.element[0].tabIndex;this._hiddenInput.attr("accesskey",this.element[0].accessKey);this.element[0].accessKey="";this._hiddenInput.css("display","block");this.element.css("display","none");this._isWatermark||(this._hiddenSpan=t.buildTag("span.e-input e-placeholder ").insertAfter(this.element),this._hiddenSpan.text(this._localizedLabels.watermarkText),this._hiddenSpan.css("display","none"),this._on(this._hiddenSpan,"mousedown",this._focusIn),this._on(this._hiddenSpan,"mousewheel",this._mouseWheel),this._on(this._hiddenSpan,"DOMMouseScroll",this._mouseWheel));this.model.name=this.element.attr("name")!=null?this.element.attr("name"):this.model.name!=null?this.model.name:this.element[0].id;this.element.attr("name")==null?this.element.attr("name",this.model.name):"";this.element.addClass("e-input");t.isNullOrUndefined(this.model.value)&&this.element[0].value!=""?(t.preferredCulture(this.model.locale).numberFormat[","]=="."&&(this.element[0].value=this.element[0].value.replace(".",",")),this.model.value=this._checkNumValue(this.element[0].value)):(typeof this.model.value=="string"&&t.preferredCulture(this.model.locale).numberFormat[","]=="."&&(this.model.value=this.model.value.replace(".",",")),this.model.value=this._checkNumValue(this.model.value));this._hiddenInput.attr({value:this.model.value}).addClass("e-input");this.wrapper.attr({role:"spinbutton"});this._updateValueAttributes(this._options.minValue,this._options.maxVal,this.model.value);this.element.attr({"aria-live":"assertive",value:this.model.value});var i=n('<span class="e-select"><span class="e-spin e-spin-up " role="button" aria-label="Increase Value" unselectable="on"><\/span><span class="e-spin e-spin-down" role="button" aria-label="Decrease Value" unselectable="on"><\/span><\/span>');i.find(".e-spin-up").append(t.buildTag("span.e-icon e-arrow e-arrow-sans-up").attr({role:"presentation",unselectable:"on"}));i.find(".e-spin-down").append(t.buildTag("span.e-icon e-arrow e-arrow-sans-down").attr({role:"presentation",unselectable:"on"}));this.innerWrap.append(i);this.spin=this.wrapper.find(".e-select");this.spinUp=this.wrapper.find(".e-spin-up");this.spinDown=this.wrapper.find(".e-spin-down");this._setWidth(this.model.width);this._setHeight(this.model.height);this.model.cssClass!=""&&this._setSkin(this.model.cssClass);this._showSpin(this.model.showSpinButton);this.model.showRoundedCorner&&this._roundedCorner(this.model.showRoundedCorner);this.model.enableRTL&&this._enableRTL(this.model.enableRTL);this.model.readOnly&&this._setReadOnly(this.model.readOnly);this.model.enabled?this.model.enabled&&this.element.hasClass("e-disable")&&this.enable():this.disable()},_initObjects:function(){this._preVal=this.model.value;this.model.value===null?(this.isValidState=!0,this._hiddenInput.val(null)):(this.model.value<this.model.minValue||this.model.value>this.model.maxValue)&&(this.isValidState=!1);this._checkErrorClass();this._setWaterMark()},_showSpin:function(n){n?(this.spin&&(this.spin.show(),this.innerWrap.addClass("e-padding")),this._spinEvents("_on")):(this.spin&&(this.spin.hide(),this.innerWrap.removeClass("e-padding")),this._spinEvents("_off"))},_roundedCorner:function(n){n&&!this.innerWrap.hasClass("e-corner")?this.innerWrap.addClass("e-corner"):this.innerWrap.hasClass("e-corner")&&this.innerWrap.removeClass("e-corner")},_enableRTL:function(n){n?this.spin?this.wrapper.addClass("e-rtl"):this.element.addClass("e-rtl"):this.spin?this.wrapper.removeClass("e-rtl"):this.element.removeClass("e-rtl")},_setWidth:function(n){n!=""?this.wrapper.width(n):this.model.width=this.wrapper.outerWidth()},_setHeight:function(n){n!=""?this.wrapper.height(n):this.model.height=this.wrapper.outerHeight()},_setSkin:function(n){this.wrapper.removeClass(this.model.cssClass);this.wrapper.addClass(n)},_setValue:function(n,t){this._isWatermark||this._hiddenSpan.css("display","none");this.model.value=this._checkNumValue(n);this._validateMinMaxValue(!1);this._checkErrorClass();this._localizedFormat();this._raiseChangeEvent(t);this._setWaterMark()},_setLocalize:function(n){var r=t.preferredCulture(this.model.locale).numberFormat[","],i;this.model.locale=t.preferredCulture(n).name=="en"?"en-US":t.preferredCulture(n).name;this.model.groupSeparator=t.isNullOrUndefined(this._options.groupSeparator)&&r===this.model.groupSeparator?t.preferredCulture(this.model.locale).numberFormat[","]:this.model.groupSeparator;this._localizedLabels=this._getLocalizedLabels();t.isNullOrUndefined(this._options)||t.isNullOrUndefined(this._options.watermarkText)||(this._localizedLabels.watermarkText=this._options.watermarkText);this._localizedLabelToModel();this.culture=t.preferredCulture(this.model.locale);this._initCustomValue();this._updateSymbol(this.model.locale);this._localizedFormat();this._changeWatermark(this.model.watermarkText);i=t.isNullOrUndefined(this.model.value)?this.model.value:this.model.value.toString().indexOf("e")==-1?this._formatValue(this.model.value,"n",!0):this._convertToExponetial(this.model.value).unformattedValue;this.element.val(i)},_localizedLabelToModel:function(){this.model.watermarkText=this._localizedLabels.watermarkText},_updateSymbol:function(n){this._percentSymbol=t.preferredCulture(n).numberFormat.percent.symbol;this._currencySymbol=t.preferredCulture(n).numberFormat.currency.symbol},_setDecimal:function(n){this.model.decimalPlaces=n;this._localizedFormat()},_validateMinMaxValue:function(n,i){var u=!1,r;this.model.minValue>this.model.maxValue&&(this.model.minValue=this.model.maxValue);!t.isNullOrUndefined(this.model.value)&&this.model.minValue>this.model.value?(this.model.enableStrictMode!=!0?(this.isValidState=!0,this._startValue=this.model.value=this.model.minValue):this.isValidState=!1,u=!0):!t.isNullOrUndefined(this.model.value)&&this.model.maxValue<this.model.value?(this.model.enableStrictMode!=!0?(this.isValidState=!0,this.model.value=this.model.maxValue):this.isValidState=!1,u=!0):this.isValidState=!0;this.model.minValue==this.model.maxValue&&(this._startValue=this.model.minValue);u&&n&&(r=this._formatValue(this.model.value,"n",!0),this._hiddenInput.val(r),r=t.isNullOrUndefined(this.model.value)?this.model.value:this.model.value.toString().indexOf("e")==-1?this._formatValue(this.model.value,"n",!0):this._convertToExponetial(this.model.value).unformattedValue,this.element.val(r),this._localizedFormat(),this._raiseChangeEvent(i))},_convertToExponetial:function(n){var h="",u,i,c,e,r=n<0?!0:!1,o,s,f;for(n=n.toString(),i=t.preferredCulture(this.model.locale).numberFormat,n=n.replace(".",i["."]),c=n,s=null,this.sfType==="ej.NumericTextbox"?(u=r?i.pattern[0]:t.isNullOrUndefined(i.pattern[1])?"n":i.pattern[1],n=r?n.replace("-",""):n,e=""):this.sfType==="ej.PercentageTextbox"?(u=r?i.percent.pattern[0]:i.percent.pattern[1],n=r?n.replace("-",""):n,e=i.percent.symbol):this.sfType==="ej.CurrencyTextbox"&&(u=r?i.currency.pattern[0]:i.currency.pattern[1],n=r?n.replace("-",""):n,e=i.currency.symbol),o=0,s=u.length;o<s;o++)f=u.charAt(o),h+=f==="n"?n:f==="$"||f==="%"?e:f;return{formattedValue:h,unformattedValue:c}},_localizedFormat:function(){var i,r,n,u;if(this.culture=t.preferredCulture(this.model.locale),this._decimalSep=t.preferredCulture(this.model.locale).numberFormat["."],t.isNullOrUndefined(this.model.value)){this._textBox.value="";return}this.model.value.toString().indexOf("e")==-1?(this._textBox.value=this._removeSeparator(this.model.value),this._focused||this._textBox.value==""?(u=this._convertToExponetial(this.model.value),this._textBox.value=u.unformattedValue,this._focused||this._textBox.value==""||(this._textBox.value=u.formattedValue)):(this._textBox.value=this._formatValue(this.model.value,"n",!0),this.sfType==="ej.PercentageTextbox"?this._appendPercentSymbol(this._textBox.value):this.sfType==="ej.CurrencyTextbox"&&this._appendCurrencySymbol(this._textBox.value),i=this.sfType==="ej.CurrencyTextbox"?this._textBox.value.indexOf(this._currencySymbol):this.sfType==="ej.PercentageTextbox"?this._textBox.value.indexOf(this._percentSymbol):-1,this.model.decimalPlaces==-1&&this._afterDec!=0&&(this._textBox.value=this._textBox.value.substr(0,this._textBox.value.lastIndexOf(this._decimalSep)),i>1&&(t.isNullOrUndefined(this._afterDec)||this._afterDec=="")&&(this.sfType==="ej.CurrencyTextbox"&&(this._textBox.value=this._textBox.value+" "+this._currencySymbol),this.sfType==="ej.PercentageTextbox"&&(this._textBox.value=this._textBox.value+" "+this._percentSymbol)),this.model.decimalPlaces!=-1||t.isNullOrUndefined(this._afterDec)||this._afterDec==""||(r=this._textBox.value.lastIndexOf(this._decimalSep),r>=0&&(this._textBox.value=this._textBox.value.substr(0,r)),n=this._afterDec,i>1&&(this.sfType==="ej.CurrencyTextbox"&&(n=n+" "+this._currencySymbol),this.sfType==="ej.PercentageTextbox"&&(n=n+" "+this._percentSymbol)),this._textBox.value=this._textBox.value+this._decimalSep+n)))):this._textBox.value=this.model.value.toString()},_checkNumValue:function(n){return typeof n=="string"&&(n=this._changeSeparator?this._replaceSeparator(n,this.model.groupSeparator,t.preferredCulture(this.model.locale).numberFormat[","]):n),typeof n!="string"||isNaN(this._parseValue(n))?typeof n!="number"||isNaN(n)?null:n:(n=this._parseValue(n),parseFloat(n))},_setReadOnly:function(n){this.model.readOnly=n;n?(this.element.attr("readonly",!0),this._hiddenInput.attr("readonly",!0)):(this.element.prop("readonly",!1),this._hiddenInput.prop("readonly",!1))},_setWaterMark:function(){this._localizedLabels.watermarkText!=null&&this._textBox.value===""&&n.trim(this._hiddenInput.val())===""&&(this._isWatermark?(this._hiddenInput.attr("placeholder",this._localizedLabels.watermarkText),this.element.attr("placeholder",this._localizedLabels.watermarkText)):this._hiddenSpan.css("display","block").text(this._localizedLabels.watermarkText))},_changeWatermark:function(n){if(!this.model.enabled)return!1;this._isWatermark?(this._hiddenInput.attr("placeholder",n),this.element.attr("placeholder",n)):this._hiddenSpan.text(n)},_setSelectionRange:function(n,t){function f(i){i.collapse(!0);i.moveEnd("character",t);i.moveStart("character",n);i.select()}var i=this._textBox,r,u;try{i.setSelectionRange?this._browsername=="edge"?setTimeout(function(){i.setSelectionRange(n,t)}):i.setSelectionRange(n,t):i.createTextRange&&(r=i.createTextRange(),f(r))}catch(e){u=this;window.setTimeout(function(){if(document.body.focus(),u._textBox.select(),document.selection){var n=document.selection.createRange();f(n)}},1)}},_getSelection:function(n){if(this._textBox.type!="number"){var t=null;return document.selection?(t=document.selection.createRange(),t.text===""?t.text:this._removeFormats(t.text)):n==null?this.model.value:this._removeFormats(n.substring(this._textBox.selectionStart,this._textBox.selectionEnd))}},_caretPosition:function(){var n=this._textBox,t=0,i;if(n.type!="number")return document.selection?(n.focus(),i=document.selection.createRange(),i.moveStart("character",-n.value.length),t=i.text.length):(n.selectionStart||n.selectionStart=="0")&&(t=n.selectionEnd),t},_appendPercentSymbol:function(n){this._percentSymbol&&(n=n.replace(this._percentSymbol,""));n.indexOf(t.preferredCulture(this.model.locale).numberFormat.percent.symbol)<0&&(this._textBox.value=this._formatValue(this._parseValue(n)/100,"p",!0));this._percentSymbol=t.preferredCulture(this.model.locale).numberFormat.percent.symbol},_appendCurrencySymbol:function(n){this._currencySymbol&&(n=n.replace(this._currencySymbol,""));n.indexOf(t.preferredCulture(this.model.locale).numberFormat.currency.symbol)<0&&(this._textBox.value=this._formatValue(this._parseValue(n),"c",!0));this._currencySymbol=t.preferredCulture(this.model.locale).numberFormat.currency.symbol},_removeFormats:function(n){var i=t.preferredCulture(this.model.locale).numberFormat[","];return n!=null?i=="."?n.toString().replace(/["."]/g,""):n.toString().match(new RegExp(i,"g"))?n.toString().replace(new RegExp(i,"g"),""):n:null},_checkErrorClass:function(){this.isValidState?this.wrapper.removeClass("e-error"):this.wrapper.addClass("e-error")},enable:function(){this.model.enabled=!0;this.element[0].disabled=!1;this.element.prop("disabled",!1);this._hiddenInput.prop("disabled",!1);this.element.removeClass("e-disable").attr({"aria-disabled":!1});this._hiddenInput.removeClass("e-disable").attr({"aria-disabled":!1});this.wrapper.find(".e-select").removeClass("e-disable").attr({"aria-disabled":!1});this.wrapper.find(".e-select span.e-icon.e-arrow").removeClass("e-disable");this.wrapper.removeClass("e-disable-wrap")},disable:function(){this.model.enabled=!1;this.element[0].disabled=!0;this.element.attr("disabled","disabled");this._hiddenInput.attr("disabled","disabled");this.element.addClass("e-disable").attr({"aria-disabled":!0});this._hiddenInput.addClass("e-disable").attr({"aria-disabled":!0});this.wrapper.find(".e-select").addClass("e-disable").attr({"aria-disabled":!0});this.wrapper.find(".e-select span.e-icon.e-arrow").addClass("e-disable");this.wrapper.addClass("e-disable-wrap")},getValue:function(){return this.model.value},_wireEvents:function(){this._on(this._hiddenInput,"focus",this._focusIn);this._on(this.element,"paste",this._paste);this._on(this.element,"blur",this._focusOut);this._on(this.element,"keydown",this._keyDown);this._on(this.element,"keypress",this._keyPress);this._on(this.element,"mousewheel",this._mouseWheel);this._on(this.element,"DOMMouseScroll",this._mouseWheel)},_spinEvents:function(n){this[n](this.spinUp,"mousedown mouseup touchstart touchend",this._spinUpClick);this[n](this.spinDown,"mousedown mouseup touchstart touchend",this._spinDownClick)},_isIE8:function(){var n=!1,i=t.browserInfo();return i.name=="msie"&&i.version=="8.0"&&(n=!0),n},_spinUpClick:function(t){var i=!1,r;(t.button?i=this._isIE8()?t.button!=1:t.button!=0:t.which&&(i=t.which==3),i)||(r=this,t.preventDefault(),clearTimeout(this._timeout),this.model.enabled&&!this.model.readOnly)&&(this.wrapper.find(".e-animate").removeClass("e-animate"),this.spinUp.addClass("e-animate"),this._on(this.spinUp,"mouseleave",this._mouseUpClick),this.spinUp.addClass("e-active"),r=this,t.type=="mouseup"||t.type=="touchend"?(this._updateInputField("increment"),this.spinUp.removeClass("e-active"),this._off(n(document),"mouseup",this._mouseUpClick)):(t.type=="mousedown"||t.type=="touchstart")&&(this._focused||this._hiddenInput[0].focus(),this._timeout=setInterval(function(){r._updateInputField("increment")},150),this._on(n(document),"mouseup",this._mouseUpClick)))},_spinDownClick:function(t){var i=!1,r;(t.button?i=this._isIE8()?t.button!=1:t.button!=0:t.which&&(i=t.which==3),i)||(r=this,t.preventDefault(),clearTimeout(this._timeout),this.model.enabled&&!this.model.readOnly)&&(this.wrapper.find(".e-animate").removeClass("e-animate"),this.spinDown.addClass("e-animate"),this._on(this.spinDown,"mouseleave",this._mouseUpClick),this.spinDown.addClass("e-active"),t.type=="mouseup"||t.type=="touchend"?(this._updateInputField("decrement"),this.spinDown.removeClass("e-active"),this._off(n(document),"mouseup",this._mouseUpClick)):(t.type=="mousedown"||t.type=="touchstart")&&(this._focused||this._hiddenInput[0].focus(),this._timeout=setInterval(function(){r._updateInputField("decrement")},150),this._on(n(document),"mouseup",this._mouseUpClick)))},_mouseUpClick:function(n){n.stopPropagation();clearTimeout(this._timeout);this._off(this.spinUp,"mouseleave",this._mouseUpClick);this._off(this.spinDown,"mouseleave",this._mouseUpClick);this.spinDown.removeClass("e-active");this.spinUp.removeClass("e-active")},_mouseWheel:function(n){if(n.preventDefault(),this._focused||this.element[0].focus(),this.model.enabled&&!this.model.readOnly){var t,i=n.originalEvent;i.wheelDelta?t=i.wheelDelta/120:i.detail&&(t=-i.detail/3);t>0?this._updateInputField("increment"):t<0&&this._updateInputField("decrement");this._cancelEvent(n)}},_numberValue:function(){var n=this._textBox.value;return this.sfType==="ej.NumericTextbox"&&(n=this._formatValue(this.model.value,"n",!0)),this.sfType==="ej.PercentageTextbox"?n=this._formatValue(this.model.value,"n",!0):this.sfType==="ej.CurrencyTextbox"&&(n=this._formatValue(this.model.value,"n",!0)),typeof n=="string"&&!isNaN(this._parseValue(n))?n:""},_formatValue:function(n,i,r){r&&this._updateCultureInfo();var n;return n=this.model.decimalPlaces!=-1||this.model.decimalPlaces==-1&&this.model.value==null?t.format(n,i+this.model.decimalPlaces,this.model.locale):t.format(n,i+this._afterDec.length,this.model.locale),r&&this._restCultureInfo(),n},_parseValue:function(n){this._updateCultureInfo();var n=t.parseFloat(n,this.model.locale);return this._restCultureInfo(),n},_initCustomValue:function(){var n,i=this.sfType=="ej.PercentageTextbox"?"percent":this.sfType=="ej.CurrencyTextbox"?"currency":"numeric";switch(i){case"percent":case"currency":n=this.culture.numberFormat[i];t.isNullOrUndefined(this._options.negativePattern)&&(this.model.negativePattern=n.pattern[0]);t.isNullOrUndefined(this._options.positivePattern)&&(this.model.positivePattern=n.pattern[1]);t.isNullOrUndefined(this._options.currencySymbol)&&i=="currency"&&(this.model.currencySymbol=n.symbol);t.isNullOrUndefined(this._options.groupSize)&&(this.model.groupSize=n.groupSizes[0]);break;case"numeric":n=this.culture.numberFormat;t.isNullOrUndefined(this._options.negativePattern)&&(this.model.negativePattern=n.pattern[0]);t.isNullOrUndefined(this._options.positivePattern)&&(this.model.positivePattern=t.isNullOrUndefined(n.pattern[1])?"n":n.pattern[1]);t.isNullOrUndefined(this._options.groupSize)&&(this.model.groupSize=n.groupSizes[0])}},_updateCultureInfo:function(){var n,t=this.sfType=="ej.PercentageTextbox"?"percent":this.sfType=="ej.CurrencyTextbox"?"currency":"numeric";n=t=="numeric"?this.culture.numberFormat:this.culture.numberFormat[t];this._oldNegativePattern=n.pattern[0];this._oldGroupSize=n.groupSizes[0];n.pattern[0]=this.model.negativePattern;n.groupSizes[0]=this.model.groupSize;this._oldPositivePattern=n.pattern[1];n.pattern[1]=this.model.positivePattern;t=="currency"&&(this._oldcurrencySymbol=n.symbol,n.symbol=this.model.currencySymbol)},_restCultureInfo:function(){var n,t=this.sfType=="ej.PercentageTextbox"?"percent":this.sfType=="ej.CurrencyTextbox"?"currency":"numeric";n=t=="numeric"?this.culture.numberFormat:this.culture.numberFormat[t];n.pattern[0]=this._oldNegativePattern;n.groupSizes[0]=this._oldGroupSize;n.pattern[1]=this._oldPositivePattern;t=="currency"&&(n.symbol=this._oldcurrencySymbol)},_toggleTextbox:function(n){var t=this;t._hiddenInput.toggle(n);t.element.toggle(!n)},_paste:function(n){var i,r;window.clipboardData&&window.clipboardData.getData?i=window.clipboardData.getData("Text"):n.originalEvent.clipboardData&&n.originalEvent.clipboardData.getData&&(i=n.originalEvent.clipboardData.getData("text/plain"));r=t.parseFloat(i,this.model.locale);isNaN(r)&&i&&this._cancelEvent(n)},_focusIn:function(){if(!this.model.readOnly){if(this._focused=!0,t.isNullOrUndefined(this.model.value)||this.element.val(this._removeSeparator(this.model.value)),this._toggleTextbox(!1),this._textBox=this.element[0],this.element[0].focus(),this._preVal=this.model.value,this._isWatermark||this._hiddenSpan.css("display","none"),this.wrapper.addClass("e-focus"),this.wrapper.removeClass("e-error"),!this._error){if(this._textBox.value!=""){var n=this._formatValue(this._textBox.value,"n",!0);this.model.decimalPlaces==-1&&(this._separateValue(this._textBox.value.toString(),!0,!0),t.isNullOrUndefined(this._afterDec)||this._afterDec==""||(n=this._beforeDec+this._decimalSep+this._afterDec));this._textBox.value=n;this._hiddenInput.val(n)}this._setSelectionRange(0,this._textBox.value.length)}this._trigger("focusIn",{value:this.model.value})}},_separateValue:function(n,t,i){var r=t?n.lastIndexOf(this._decimalSep):n.lastIndexOf(".");this._beforeDec=r>=0?n.substr(0,r):n;!t&&i&&(this._afterDec=r>=0?n.substr(r+1):"")},_focusOut:function(){var n;this._focused=!1;this.wrapper.removeClass("e-focus");this._separateValue(this._textBox.value,!1,!0);this._error||(this._textBox.value!=""?(n=t.parseFloat(this._textBox.value,this.model.locale),n<this.model.minValue?this.model.enableStrictMode?this.isValidState=!1:this._textBox.value=this._formatValue(this.model.minValue,"n",!1):n>this.model.maxValue&&(this.model.enableStrictMode?this.isValidState=!1:this._textBox.value=this._formatValue(this.model.maxValue,"n",!1)),this.model.value=this.model.decimalPlaces==-1&&!t.isNullOrUndefined(this._afterDec)&&this._textBox.value.lastIndexOf(this._decimalSep)==-1&&n.toString().indexOf("e")==-1?t.parseFloat(this._textBox.value+this._decimalSep+this._afterDec,this.model.locale):t.parseFloat(this._textBox.value,this.model.locale),isNaN(this.model.value)&&!this.model.value&&(this.model.value=null,this.isValidState=!1),this._toggleTextbox(!0),this._textBox=this._hiddenInput[0],this._localizedFormat(),this._checkErrorClass()):(n=this._textBox.value==""?null:this._textBox.value,this.model.value=n,this._hiddenInput.val(n),this._toggleTextbox(!0),this._textBox=this._hiddenInput[0]),this.model.value===null||this.model.value>=this.model.minValue&&this.model.value<=this.model.maxValue?this.isValidState=!0:this.model.enableStrictMode&&(this.isValidState=!1),this._raiseChangeEvent(),this._setWaterMark(),n=t.isNullOrUndefined(this.model.value)?this.model.value:this.model.value.toString().indexOf("e")==-1?this._removeSeparator(this.model.value):this._convertToExponetial(this.model.value).unformattedValue,this.element.val(n),this._updateSeparator(),this._trigger("focusOut",{value:this.model.value}));this._checkErrorClass();this._afterDec=""},_cancelEvent:function(n){return n.cancelBubble=!0,n.returnValue=!1,n.stopPropagation(),n.preventDefault(),!1},_updateInputField:function(r){var e,o,f,u;this.isValidState=!0;this._focused||n(this._hiddenInput[0]).focus();e=this.model.incrementStep;o=this.model.value;this._textBox.value===""?(this._textBox.value=this._formatValue(this._startValue,"n",!0),e=0):this._textBox.value.indexOf(" ")>=0&&(this._textBox.value=this._textBox.value.replace(" ",""));this.sfType==="ej.PercentageTextbox"||this.sfType==="ej.CurrencyTextbox"?(f=this._textBox.value,u=f,f.indexOf(t.preferredCulture(this.model.locale).numberFormat.percent.symbol)>-1&&(u=f.substring(0,f.length-1)),this.model.value=this._parseValue(u)):this.sfType=="ej.NumericTextbox"&&(this.model.value=t.parseFloat(this._textBox.value,this.model.locale));isNaN(this.model.value)&&!this.model.value&&(this.model.value=this._startValue);this.model.value>=this.model.minValue&&this.model.value>this.model.maxValue?(this.model.value=this.model.maxValue,this._setValue(this.model.value)):this.model.value<this.model.minValue&&this.model.value<=this.model.maxValue?(this.model.value=this.model.minValue,this._setValue(this.model.value)):this.model.value>=this.model.minValue&&this.model.value<=this.model.maxValue&&(u=r=="increment"?this.model.value+e:this.model.value-e,this.model.decimalPlaces==-1&&(this.value==i&&this._setValue(this.model.value),u=this.model.value.toString().indexOf("e")==-1?parseFloat(u.toFixed(this._afterDec.length)):parseFloat(u)),u>=this.model.minValue&&u<=this.model.maxValue&&this._setValue(u));this._checkErrorClass()},_validateDecimal:function(n){var i=String.fromCharCode(n.keyCode);return(i=n.keyCode==188?",":n.keyCode==190?".":n.keyCode==110?t.preferredCulture(this.model.locale).numberFormat["."]:i,t.preferredCulture(this.model.locale).numberFormat["."].charCodeAt(0)==i.charCodeAt(0))?!0:!1},_allowKeyCodes:function(n){for(var i=[38,40,35,36,109,189,46,8,127,37,39,190,9,13,16,17,18,20,110,173,86,88,67],t=0;t<i.length;t++)if(n.keyCode==i[t]||this._validateDecimal(n)&&this.model.decimalPlaces!=0)return!0;return!1},_raiseChangeEvent:function(n){var r=this.model.value,i;this._checkNumValue(this._preVal)!==this._checkNumValue(r)&&(this._preVal=r,this.model.value=this.model.decimalPlaces==-1&&!t.isNullOrUndefined(this.model.value)?parseFloat(this.model.value):this._checkNumValue(this._formatValue(this._preVal,"n",!1)),this._updateHiddenField(),t.isNullOrUndefined(this.model.value)?(i=this.model.value,this.wrapper.removeClass("e-valid")):(i=this.model.value.toString().indexOf("e")==-1?this._removeSeparator(this.model.value):this._convertToExponetial(this.model.value).unformattedValue,this.model.decimalPlaces==-1&&(this._separateValue(this.model.value.toString(),!1,!0),t.isNullOrUndefined(this._afterDec)||this._afterDec==""||(i=this._beforeDec+this._decimalSep+this._afterDec)),this.wrapper.addClass("e-valid")),this.element.val(i),this.wrapper.attr("aria-valuenow",i),this._updateSeparator(),this.element.trigger("change"),this._trigger("_change",{value:this.model.value,isInteraction:!n}),this._trigger("change",{value:this.model.value,isInteraction:!n}))},_updateHiddenField:function(){var n=this._textBox;this._textBox=this._hiddenInput[0];this._localizedFormat();this._textBox=n},_removeSeparator:function(n){if(!t.isNullOrUndefined(n)){var i,r;return this.model.decimalPlaces==-1&&this._separateValue(n.toString(),!1,!0),n.toString().indexOf("e")==-1&&(n=this._checkNumValue(this._formatValue(n,"n",!1))),i=n.toString(),r=t.preferredCulture(this.model.locale).numberFormat,i.replace(".",r["."])}},_updateSeparator:function(){var n,r,u,f,i;this._changeSeparator&&this.model.value&&(this.sfType==="ej.NumericTextbox"?n=this._formatValue(this.model.value,"n",!0):this.sfType==="ej.PercentageTextbox"?n=this._formatValue(this.model.value/100,"p",!0):this.sfType==="ej.CurrencyTextbox"&&(n=this._formatValue(this.model.value,"c",!0)),this.model.decimalPlaces==-1&&(r=n.lastIndexOf(this._decimalSep),u=n.substr(r+1),this._separateValue(n,!0,!1),f=this.sfType==="ej.CurrencyTextbox"?n.indexOf(this._currencySymbol):this.sfType==="ej.PercentageTextbox"?this._textBox.value.indexOf(this._percentSymbol):-1,i=this._afterDec,f>1&&(this.sfType==="ej.CurrencyTextbox"&&(i=i+" "+this._currencySymbol),this.sfType==="ej.PercentageTextbox"&&(i=i+" "+this._percentSymbol)),t.isNullOrUndefined(this._afterDec)||this._afterDec==""||(n=this._beforeDec+this._decimalSep+i),t.isNullOrUndefined(this._afterDec)||this._afterDec!=""||(n=this._beforeDec+this._decimalSep+u)),this._hiddenInput.val(this._replaceSeparator(n,t.preferredCulture(this.model.locale).numberFormat[","],this.model.groupSeparator)))},_replaceSeparator:function(n,i,r){var u,f,o,e;return(this._decimalSep=t.preferredCulture(this.model.locale).numberFormat["."],u=i===""?new RegExp("\\s","g"):new RegExp("\\"+i,"g"),this.model.groupSeparator==t.preferredCulture(this.model.locale).numberFormat["."])?(f=this.model.decimalPlaces,this.model.decimalPlaces==-1&&(o=n.lastIndexOf(this._decimalSep),f=n.substr(o+1).length),e=n.length-f-1,n.substring(0,e).replace(u,r)+n.substring(e,n.length)):n.replace(u,r)},_checkSeparator:function(n){this.model.groupSeparator=n!=null?this._validateSeparator(n):t.preferredCulture(this.model.locale).numberFormat[","];this._changeSeparator=t.preferredCulture(this.model.locale).numberFormat[","]!=this.model.groupSeparator?!0:!1;this._prevSeparator=this.model.groupSeparator},_validateSeparator:function(n){var i=n.toString(),r=new RegExp("[a-zA-Z0-9]");return i=i.length>1?i[0]:i,r.test(i)?this._prevSeparator!=null?this._prevSeparator:t.preferredCulture(this.model.locale).numberFormat[","]:i},_keyPress:function(n){var c,i;if(n.which!==0&&!n.metaKey&&!n.ctrlKey&&n.keyCode!==8&&n.keyCode!==13){var l=this,u=null,f=".",r,e,o,s,h;return r=this._caretPosition(),e=this._textBox.value.toString().substring(0,r),o=this._textBox.value.toString().substring(r),s=t.preferredCulture(this.model.locale).numberFormat,c=String.fromCharCode(n.which),h=e+c+o,i=s[f],i=i===f?"\\"+i:i,u=l.model.decimalPlaces===0?new RegExp("^((-)?(\\d*)(-)?)?$"):new RegExp("^(-)?(((\\d+("+i+"\\d*)?)|("+i+"\\d*)))?((-)?)$"),u.test(h)?void 0:!1}},_validateDecimalOnType:function(n){var r,e,s,h,o,u,i,f;return r=this._caretPosition(),s=this._textBox.value.toString().substring(0,r),h=this._textBox.value.toString().substring(r),o=this._getSelection(this._textBox.value),i=t.preferredCulture(this.model.locale).numberFormat["."],u=t.isNullOrUndefined(this.model.value)?"":this.model.value.toString(),this.model.decimalPlaces!=0?(f=this._textBox.value.split(i)[1],e=u.indexOf(i)>0?u.substring(u.indexOf(i)+1,u.length).length>this.model.decimalPlaces?!0:o.length==0&&r>this._textBox.value.indexOf(i)&&f&&f.length>=this.model.decimalPlaces?!0:!1:o.length==0&&r>this._textBox.value.indexOf(i)&&f&&f.length>=this.model.decimalPlaces?!0:!1):e=!1,e?(this._keypressFlag=!1,this._cancelEvent(n),!1):void 0},_keyDown:function(r){var s,v,k,d,y,p,tt,b;if(!this.model.readOnly)if(this._CurrentCultureInfo=JSON.parse(JSON.stringify(t.preferredCulture())),r.keyCode>=48&&r.keyCode<=57||r.keyCode>=96&&r.keyCode<=105||this._allowKeyCodes(r)){if(r.shiftKey&&(r.keyCode==35||r.keyCode==36||r.keyCode==37||r.keyCode==39||r.keyCode==46||r.keyCode==127)||r.ctrlKey&&(r.keyCode==86||r.keyCode==118||r.keyCode==67||r.keyCode==88))return!0;if(r.ctrlKey==!0&&r.keyCode!=9&&r.keyCode!=17&&r.keyCode!=86&&r.keyCode!=67||r.keyCode==67||r.keyCode==86||r.keyCode==88)return this._keypressFlag=!1,this._cancelEvent(r),!1;if((r.keyCode>=48&&r.keyCode<=57||r.keyCode>=96&&r.keyCode<=105||r.keyCode==110)&&(s=this._caretPosition(),k=this._textBox.value.toString().substring(0,s),d=this._textBox.value.toString().substring(s),y=this._getSelection(this._textBox.value),r.keyCode>=96&&r.keyCode<=105&&(r.keyCode-=48),this.model.validateOnType&&this.model.decimalPlaces!=-1&&this._validateDecimalOnType(r),this._validateOnType)){var u=t.preferredCulture(this.model.locale).numberFormat["."],f=this.model.value.toString(),it=f.indexOf(u),g=this.model.value,e=this.model.decimalPlaces==-1?this.model.minValue:this.model.minValue.toFixed(this.model.decimalPlaces),o=this.model.decimalPlaces==-1?this.model.maxValue:this.model.maxValue.toFixed(this.model.decimalPlaces),w=!1;if((e.toString().indexOf("e")>0||o.toString().indexOf("e")>0)&&(w=!0),w)this.model.decimalPlaces!=0?(p=this._textBox.value.split(".")[1],v=f.indexOf(u)>0||Number(f)<Number(e)||Number(f)>Number(o)?f.substring(f.indexOf(u)+1,f.length).length>this.model.decimalPlaces?!0:y.length==0&&s>this._textBox.value.indexOf(u)&&p&&p.length>=this.model.decimalPlaces?!0:!1:y.length==0&&s>this._textBox.value.indexOf(u)&&p&&p.length>=this.model.decimalPlaces?!0:!1):v=!1;else if(u!="."&&(f=this._textBox.value.toString(),this.model.minValue.toString().match(new RegExp(".","g"))&&(e=this.model.minValue.toString().replace(/["."]/g,u)),this.model.maxValue.toString().match(new RegExp(".","g"))&&(o=this.model.maxValue.toString().replace(/["."]/g,u))),h=e.toString().indexOf(u)>0?Number(e.toString().substring(0,e.toString().indexOf(u))):this.model.minValue,c=o.toString().indexOf(u)>0?Number(o.toString().toString().substring(0,o.toString().indexOf(u))):this.model.maxValue,it>0){g=Number(f.substring(f.indexOf(u)+1,f.toString().length));h=e.toString().indexOf(u)>0?Number(e.toString().substring(e.toString().indexOf(u)+1,e.toString().length)):0;c=o.toString().indexOf(u)>0?Number(o.toString().substring(o.toString().indexOf(u)+1,o.toString().length)):0;var rt=Number(f.substring(0,f.indexOf(u))),ut=Number(e.toString().substring(0,e.toString().indexOf(u))),ft=Number(o.toString().substring(0,o.toString().indexOf(u)));v=this._validateValue(g,h,c,!0,rt,ut,ft)?!1:!0}else v=this._validateValue(g,h,c,!1)?!1:!0;if(v)return this._keypressFlag=!1,this._cancelEvent(r),!1}if(r.keyCode==38&&this._allowkeyboard&&(this._updateInputField("increment"),this._cancelEvent(r)),r.keyCode==40&&this._allowkeyboard&&(this._updateInputField("decrement"),this._cancelEvent(r)),r.keyCode==8&&(s=this._caretPosition(),k=this._textBox.value.substring(0,s),d=this._textBox.value.substring(s),y=this._getSelection(this._textBox.value)),(r.keyCode==46||r.keyCode==127)&&(s=this._caretPosition(),k=this._textBox.value.substring(0,s),d=this._textBox.value.substring(s),y=this._getSelection(this._textBox.value)),this._validateDecimal(r)&&this.model.decimalPlaces!=0&&r.keyCode!=46){var l=t.preferredCulture(this.model.locale).numberFormat["."],h,c,nt=this._textBox.value.split(l),a=this._caretPosition();if(this._textBox.selectionEnd-this._textBox.selectionStart==this._textBox.value.length)return this._textBox.value=l,this._setSelectionRange(a+1,a+1),this._keypressFlag=!1,this._cancelEvent(r),!1;if(nt[1]==i){if(tt=nt[0].substring(0,a),b=nt[0].substring(a),(this.model.minValue.toString().indexOf("e")>0||this.model.maxValue.toString().indexOf("e")>0)&&(w=!0),this.model.decimalPlaces!=-1&&b.length>this.model.decimalPlaces&&this.model.validateOnType==!0)return this._keypressFlag=!1,this._cancelEvent(r),!1;if(this._validateOnType&&!w)if(this.model.minValue.toString().match(new RegExp(".","g"))&&(h=this.model.minValue.toString().replace(/["."]/g,l)),this.model.maxValue.toString().match(new RegExp(".","g"))&&(c=this.model.maxValue.toString().replace(/["."]/g,l)),h=h.indexOf(l)>0?Number(h.substring(0,h.indexOf(l))):Number(h),c=c.indexOf(l)>0?Number(c.substring(0,c.indexOf(l))):Number(c),this._validateValue(this.model.value,h,c,"DecimalKeyPressed"))this._textBox.value=tt+l+b;else return this._keypressFlag=!1,this._cancelEvent(r),!1;else this._textBox.value=tt+l+b;this._setSelectionRange(a+1,a+1)}this._cancelEvent(r)}else(r.keyCode==190||r.keyCode==110)&&this._cancelEvent(r);(r.keyCode==109||r.keyCode==189||r.keyCode==173)&&((this.model.value===this._preVal||this.model.value===null)&&(this.model.value=this._textBox.value),this._caretPosition()!=0&&this._getSelection(this._removeFormats(this._textBox.value))!=this.model.value||this.model.minValue>=0&&!this.model.enableStrictMode||this._textBox.value.toString().match(new RegExp("-","g"))&&this._getSelection(this._textBox.value)===""?(this._preVal=this.model.value,this.model.value=this._textBox.value,this._cancelEvent(r)):this._getSelection()==this.model.value&&(this._preVal=this.model.value,this.model.value=null));r.keyCode==13&&this._checkNumValue(this._preVal)!==this._checkNumValue(this._textBox.value)&&this._setValue(this._textBox.value)}else(r.keyCode!=27&&!r.ctrlKey||r.ctrlKey&&r.keyCode==90&&n.trim(this._textBox.value)==="")&&(this._keypressFlag=!1,this._cancelEvent(r))},_getLocalizedLabels:function(){return t.getLocalizedConstants(this.sfType,this.model.locale)}});t.NumericTextbox.Locale=t.NumericTextbox.Locale||{};t.NumericTextbox.Locale["default"]=t.NumericTextbox.Locale["en-US"]={watermarkText:"Enter value"};t.PercentageTextbox.Locale=t.PercentageTextbox.Locale||{};t.PercentageTextbox.Locale["default"]=t.PercentageTextbox.Locale["en-US"]={watermarkText:"Enter value"};t.CurrencyTextbox.Locale=t.CurrencyTextbox.Locale||{};t.CurrencyTextbox.Locale["default"]=t.CurrencyTextbox.Locale["en-US"]={watermarkText:"Enter value"}})(jQuery,Syncfusion),function(n,t){t.widget("ejButton","ej.Button",{element:null,model:null,validTags:["button","input"],_setFirst:!1,_rootCSS:"e-button",_requiresID:!0,defaults:{size:"normal",type:"submit",height:"",width:"",enabled:!0,htmlAttributes:{},text:null,contentType:"textonly",imagePosition:"imageleft",showRoundedCorner:!1,cssClass:"",prefixIcon:null,suffixIcon:null,enableRTL:!1,repeatButton:!1,timeInterval:"150",create:null,click:null,destroy:null},dataTypes:{size:"enum",enabled:"boolean",type:"enum",showRoundedCorner:"boolean",text:"string",contentType:"enum",imagePosition:"enum",prefixIcon:"string",suffixIcon:"string",cssClass:"string",repeatButton:"boolean",enableRTL:"boolean",timeInterval:"string",htmlAttributes:"data"},disable:function(){this.element.addClass("e-disable").attr("aria-disabled",!0);this.model.enabled=!1},enable:function(){this.element.removeClass("e-disable").attr("aria-disabled",!1);this.model.enabled=!0},_init:function(){this._cloneElement=this.element.clone();this._initialize();this._render();this._controlStatus(this.model.enabled);this._wireEvents(this.model.repeatButton);this._addAttr(this.model.htmlAttributes)},_addAttr:function(t){var i=this;n.map(t,function(n,t){t=="class"?i.element.addClass(n):i.element.attr(t,n);t=="disabled"&&n=="disabled"&&i.disable()})},_destroy:function(){this._off(this.element,"blur",this._btnBlur);this.element.removeClass(this.model.cssClass+"e-ntouch e-btn e-txt e-select e-disable e-corner e-widget").removeAttr("role aria-describedby aria-disabled");!this._cloneElement.attr("type")&&this.element.attr("type")&&this.element.removeAttr("type");this.element.removeClass("e-btn-"+this.model.size);this.model.contentType&&this.model.contentType!="textonly"?this.element.append(this._cloneElement.text())&&this.imgtxtwrap[0].remove():""},_setModel:function(n){for(var t in n)switch(t){case"size":this._setSize(n[t]);break;case"height":this._setHeight(n[t]);break;case"width":this._setWidth(n[t]);break;case"contentType":this._setContentType(n[t]);break;case"imagePosition":this._setImagePosition(n[t]);break;case"text":this._setText(n[t]);break;case"prefixIcon":this.element.is("input")||this._setMajorIcon(n[t]);break;case"suffixIcon":this.element.is("input")||this._setMinorIcon(n[t]);break;case"enabled":this._controlStatus(n[t]);break;case"showRoundedCorner":this._roundedCorner(n[t]);break;case"cssClass":this._setSkin(n[t]);break;case"enableRTL":this._setRTL(n[t]);break;case"timeInterval":this.model.timeInterval=n[t];break;case"htmlAttributes":this._addAttr(n[t])}},_setSize:function(n){this.element.removeClass("e-btn-mini e-btn-medium e-btn-small e-btn-large e-btn-normal");this.element.addClass("e-btn-"+n)},_setType:function(n){this.element.prop({type:n})},_setHeight:function(n){this.element.css("height",n)},_setWidth:function(n){this.element.css("width",n)},_setText:function(n){this.buttonType=="inputButton"?this.element.val(n):this.model.contentType==t.ContentType.TextOnly?this.element.html(n):this.textspan.html(n);this.model.text=n},_setMajorIcon:function(n){this.majorimgtag.removeClass(this.model.prefixIcon);this.majorimgtag.addClass(n);this.model.prefixIcon=n},_setMinorIcon:function(n){this.minorimgtag.removeClass(this.model.suffixIcon);this.minorimgtag.addClass(n);this.model.suffixIcon=n},_setContentType:function(n){n!=this.model.contentType&&(this.element.empty(),this.model.contentType=n,this.element.is("input")||this._renderButtonNormal())},_setImagePosition:function(n){this.model.contentType==t.ContentType.TextAndImage&&n!=this.model.imagePosition&&(this.element.empty(),this.model.imagePosition=n,this.element.is("input")||this._renderButtonNormal())},_setRTL:function(n){n?this.element.addClass("e-rtl"):this.element.removeClass("e-rtl")},_controlStatus:function(n){n?this.enable():this.disable()},_setSkin:function(n){this.model.cssClass!=n&&(this.element.removeClass(this.model.cssClass),this.element.addClass(n))},_initialize:function(){t.isTouchDevice()||this.element.addClass("e-ntouch");this.element.is("input")?this.buttonType="inputButton":this.element.is("a")||this.element.is("button")?this.buttonType="tagButton":this.element.removeClass("e-button");this.element.attr("type")?this.model.type=this.element.attr("type"):this._setType(this.model.type);this._timeout=null},_render:function(){this._setSize(this.model.size);this._setHeight(this.model.height);this._setWidth(this.model.width);this._setRTL(this.model.enableRTL);this.element.addClass(this.model.cssClass+" e-btn e-select e-widget").attr("role","button");this.buttonType=="inputButton"?(this.element.addClass("e-txt"),this.model.text!=null&&this.model.text!=""?this.element.val(this.model.text):this.model.text=this.element.val()):this._renderButtonNormal();this._roundedCorner(this.model.showRoundedCorner);this.element[0].id&&this.element.attr("aria-describedby",this.element[0].id)},_renderButtonNormal:function(){if((this.model.text==null||this.model.text=="")&&(this.model.text=this.element.html()),this.element.empty(),this.textspan=t.buildTag("span.e-btntxt",this.model.text),this.model.contentType.indexOf("image")>-1&&(this.majorimgtag=t.buildTag("span").addClass(this.model.prefixIcon),this.minorimgtag=t.buildTag("span").addClass(this.model.suffixIcon),this.imgtxtwrap=t.buildTag("span").addClass("e-btn-span")),this.model.contentType==t.ContentType.TextAndImage){switch(this.model.imagePosition){case t.ImagePosition.ImageRight:this.imgtxtwrap.append(this.textspan,this.majorimgtag);break;case t.ImagePosition.ImageLeft:this.imgtxtwrap.append(this.majorimgtag,this.textspan);break;case t.ImagePosition.ImageBottom:this.majorimgtag.attr("style","display:inherit");this.imgtxtwrap.append(this.textspan,this.majorimgtag);break;case t.ImagePosition.ImageTop:this.majorimgtag.attr("style","display:inherit");this.imgtxtwrap.append(this.majorimgtag,this.textspan)}this.element.append(this.imgtxtwrap)}else this.model.contentType==t.ContentType.ImageTextImage?(this.imgtxtwrap.append(this.majorimgtag,this.textspan,this.minorimgtag),this.element.append(this.imgtxtwrap)):this.model.contentType==t.ContentType.ImageBoth?(this.imgtxtwrap.append(this.majorimgtag,this.minorimgtag),this.element.append(this.imgtxtwrap)):this.model.contentType==t.ContentType.ImageOnly?(this.imgtxtwrap.append(this.majorimgtag),this.element.append(this.imgtxtwrap)):(this.element.addClass("e-txt"),this.element.html(this.model.text))},_roundedCorner:function(n){n==!0?this.element.addClass("e-corner"):this.element.removeClass("e-corner")},_wireEvents:function(t){t&&(this._on(this.element,"mousedown",this._btnRepatMouseClickEvent),this._on(n(document),"mouseup",this._mouseUpClick),this._on(this.element,"keyup",this._btnRepatKeyUpEvent),this._on(n(document),"keypress",this._btnRepatKeyDownEvent));this._on(this.element,"click",this._btnMouseClickEvent);this._on(this.element,"blur",this._btnBlur)},_btnBlur:function(){this.element.removeClass("e-animate")},_btnMouseClickEvent:function(n){var t=this,i;if(this.element.addClass("e-animate"),!t.model.enabled)return!1;t.element.hasClass("e-disable")||(i={target:n.currentTarget,e:n,status:t.model.enabled},t._trigger("_click",i),t._trigger("click",i))},_btnRepatMouseClickEvent:function(n){var t=this,i;if(!t.model.enabled)return!1;t.element.hasClass("e-disable")||(i={status:t.model.enabled},(n.button==0||n.which==1)&&(t._timeout=setInterval(function(){t._trigger("click",{target:n.currentTarget,status:t.model.enabled})},this.model.timeInterval)))},_mouseUpClick:function(){clearTimeout(this._timeout)},_btnRepatKeyDownEvent:function(n){var t=this,i;t.element.hasClass("e-disable")||(i={status:t.model.enabled},(n.keyCode==32||n.keyCode==13)&&t._trigger("click",i))},_btnRepatKeyUpEvent:function(n){(n.keyCode==32||n.keyCode==13)&&clearTimeout(this._timeout)}});t.ContentType={TextOnly:"textonly",ImageOnly:"imageonly",ImageBoth:"imageboth",TextAndImage:"textandimage",ImageTextImage:"imagetextimage"};t.ImagePosition={ImageRight:"imageright",ImageLeft:"imageleft",ImageTop:"imagetop",ImageBottom:"imagebottom"};t.ButtonSize={Normal:"normal",Mini:"mini",Small:"small",Medium:"medium",Large:"large"};t.ButtonType={Button:"button",Reset:"reset",Submit:"submit"}}(jQuery,Syncfusion),function(n,t,i){t.widget("ejCheckBox","ej.CheckBox",{_rootCSS:"e-checkbox",element:null,model:null,validTags:["input"],_addToPersist:["checked","checkState"],_setFirst:!1,angular:{require:["?ngModel","^?form","^?ngModelOptions"]},defaults:{id:null,name:null,value:null,htmlAttributes:{},checked:!1,enabled:!0,enableTriState:!1,showRoundedCorner:!1,enablePersistence:!1,cssClass:"",text:"",enableRTL:!1,idPrefix:"ej",size:"small",checkState:"uncheck",validationRules:null,validationMessage:null,validationMessages:null,beforeChange:null,change:null,create:null,destroy:null},dataTypes:{id:"string",name:"string",enablePersistence:"boolean",enableTriState:"boolean",size:"enum",enabled:"boolean",idPrefix:"string",validationRules:"data",validationMessage:"data",validationMessages:"data",htmlAttributes:"data"},observables:["checked","checkState"],checked:t.util.valueFunction("checked"),checkState:t.util.valueFunction("checkState"),_init:function(n){this._cloneElement=this.element.clone();var i=t.browserInfo();this._isIE8=i.name=="msie"&&i.version=="8.0"?!0:!1;this._isIE9=i.name=="msie"&&i.version=="9.0"?!0:!1;this._isDevice=this._checkDevice();this._setValue();this._renderControl();this.model.enableRTL&&this._setRTL();this.model.enabled&&this._wireEvents();this._setEnabled(this.model.enabled);t.isNullOrUndefined(n)||t.isNullOrUndefined(n.validationMessage)||(this.model.validationMessages=this.model.validationMessage);this.model.validationRules!=null&&(this._initValidator(),this._setValidation());this._addAttr(this.model.htmlAttributes);(this._isIE9||this._isIE8)&&this.wrapper.addClass("e-tb-cell")},_checkDevice:function(){return t.isDevice()&&t.isTouchDevice()},_setRTL:function(){n(this.maindiv).addClass("e-rtl")},_initValidator:function(){this.wrapper.closest("form").data("validator")||this.wrapper.closest("form").validate()},_setValidation:function(){var r,f,i,u,e;this.wrapper.find("input").rules("add",this.model.validationRules);r=this.wrapper.closest("form").data("validator");r=r?r:this.wrapper.closest("form").validate();f=this.wrapper.find("input").attr("name");r.settings.messages[f]={};for(i in this.model.validationRules)if(u=null,!t.isNullOrUndefined(this.model.validationRules[i])){if(t.isNullOrUndefined(this.model.validationRules.messages&&this.model.validationRules.messages[i])){r.settings.messages[f][i]=n.validator.messages[i];for(e in this.model.validationMessages)i==e?u=this.model.validationMessages[i]:""}else u=this.model.validationRules.messages[i];r.settings.messages[f][i]=u!=null?u:n.validator.messages[i]}},_addAttr:function(t){var i=this;n.map(t,function(n,t){t=="class"?i.wrapper.addClass(n):t=="name"?i.element.attr(t,n):t=="required"?i.element.attr(t,n):t=="disabled"&&n=="disabled"?i._setEnabled(!1):t=="checked"&&n=="checked"?i.checked()instanceof Array?i._updateCheckedItem():i._checked(!0):i.wrapper.attr(t,n)})},_triggerBeforeChange:function(){var n={isChecked:this._isChecked,isInteraction:!1};if(!0==this._trigger("beforeChange",n))return!1},_triggerChange:function(){var n={isChecked:this._isChecked,checkState:this.checkState(),isInteraction:!1};this._trigger("change",n)},_setModel:function(i){var r,u,f;for(r in i)switch(r){case"checked":n(this.maindiv).removeClass("e-material-animate");this.model.beforeChange&&this._triggerBeforeChange();this.checked()instanceof Array?(u=t.util.getVal(i[r]),f=u[u.length-1],this.model.value==f&&(this._isChecked=!0)):(this._isChecked=t.util.getVal(i[r]),this.checked(this._isChecked));this._isChecked?this._checked():this._unChecked();this.model.change&&this._triggerChange();break;case"enableTriState":i[r]&&(this.model.enableTriState=i[r],this._indeterminateState=i[r]);break;case"checkState":this.model.enableTriState&&(this.model.beforeChange&&this._triggerBeforeChange(),this._isChecked=t.util.getVal(i[r]),this.checkState(this._isChecked),this._changeState(this._isChecked),this._setCheckBoxState(),this.checked(this._isChecked),this.model.checkState=="indeterminate"&&this._setIndeterminate(this._indeterminateState),this.checked()instanceof Array?this._updateCheckedItem():i[r]=="check"?this._hiddenInput.removeAttribute("name"):this._hiddenInput.setAttribute("name",this.model.name),this.model.change&&(this.checked()instanceof Array||(this._isChecked=this.checkState()=="uncheck"?!1:!0),this._triggerChange()));break;case"cssClass":this._changeSkin(i[r]);break;case"enableRTL":i[r]?this._setRTL():n(this.maindiv).removeClass("e-rtl");break;case"text":this._setText(i[r]);break;case"validationRules":this.model.validationRules!=null&&(this.wrapper.find("input").rules("remove"),this.model.validationMessages=null);this.model.validationRules=i[r];this.model.validationRules!=null&&(this._initValidator(),this._setValidation());break;case"validationMessage":this.model.validationMessages=i[r];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"validationMessages":this.model.validationMessages=i[r];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"id":this._setIdAttr(i[r]);break;case"name":this.element.attr("name",i[r]);(!this._isChecked||this.spanImg.hasClass("e-chk-indeter"))&&this._hiddenInput.setAttribute("name",i[r]);this.model.name=i[r];break;case"value":this.element.attr("value",i[r]);break;case"size":this._setSize(i[r]);break;case"showRoundedCorner":this._setRoundedCorner(i[r]);break;case"enabled":this._setEnabled(i[r]);break;case"htmlAttributes":this._addAttr(i[r])}},_destroy:function(){this.element.removeClass("e-checkbox e-input");!this._cloneElement.attr("name")&&this.element.attr("name")&&this.element.removeAttr("name");!this._cloneElement.attr("value")&&this.element.attr("value")&&this.element.removeAttr("value");this.element.insertBefore(this.wrapper);this.wrapper.remove()},_changeSkin:function(t){this.model.cssClass!=t&&(this.wrapper.removeClass(this.model.cssClass).addClass(t),n("#"+this.model.idPrefix+this.model.id+"_wrapper").removeClass(this.model.cssClass).addClass(t))},_setValue:function(){this._indeterminateState=!1;this._isChecked=!1;var i=this.element[0].getAttribute("id"),r=this.element[0].getAttribute("name"),n=this.element[0].getAttribute("value");t.isNullOrUndefined(i)||(this.model.id=i);t.isNullOrUndefined(r)||(this.model.name=r);t.isNullOrUndefined(n)||n==""||(this.model.value=n);this.checked()||t.isNullOrUndefined(this.element.attr("checked"))||(this._isChecked=!0);t.isNullOrUndefined(this.model.name)&&(this.model.name=this.model.id);this.model.enabled=this.model.enabled&&!this.element.attr("disabled")},_setSize:function(i){i==t.CheckboxSize.Medium?(n(this.innerdiv).removeClass("e-chkbox-small").addClass("e-chkbox-medium"),n(this.maindiv).removeClass("e-check-small").addClass("e-check-medium")):(n(this.innerdiv).removeClass("e-chkbox-medium").addClass("e-chkbox-small"),n(this.maindiv).removeClass("e-check-medium").addClass("e-check-small"))},_setRoundedCorner:function(n){n?this.span.addClass("e-corner"):this.span.removeClass("e-corner")},_setEnabled:function(n){n?this.enable():this.disable()},_setCheckBoxState:function(){this.model.enableTriState?this.checkState()=="indeterminate"?this._indeterminateState=!0:this.checkState()=="check"?this._isChecked=!0:this.checkState()=="uncheck"&&(this._isChecked=!1):this.checkState()=="indeterminate"&&this.checkState("uncheck")},_createElement:function(n,t){var i=document.createElement(n);return this._setAttributes(i,t),i},_setAttributes:function(n,t){for(var i in t)n.setAttribute(i,t[i])},_renderControl:function(){this._setCheckBoxState();this.maindiv=this._createElement("span",{"class":"e-chkbox-wrap e-widget "+this.model.cssClass,role:"checkbox",tabindex:0});this._isValid(this.model.id)&&(this.maindiv.setAttribute("id",this.model.idPrefix+this.model.id),this.element[0].setAttribute("id",this.model.id));this.innerdiv=document.createElement("div");this._setSize(this.model.size);this.span=document.createElement("span");this.span=n(this.span);this.spanImg=this._createElement("span",{"class":"e-chk-image e-icon",role:"presentation"});this.spanImg=n(this.spanImg);this.element.addClass("e-input");this.model.name=t.isNullOrUndefined(this.model.name)?this.model.id:this.model.name;this.model.value=t.isNullOrUndefined(this.model.value)?!0:this.model.value;this._setAttributes(this.element[0],{name:this.model.name,value:this.model.value});var i=n("#"+this._id+"_hidden");this._hiddenInput=i.length?i[0]:this._createElement("input",{type:"checkbox",value:!1,style:"display:none"});this.element.attr("data-type")=="hidden"&&this._hiddenInput.setAttribute("type","hidden");this._isValid(this.model.name)&&this._hiddenInput.setAttribute("id",this.model.name+"_hidden");this._setRoundedCorner(this.model.showRoundedCorner);this.checked()&&this._setCheckedItem(this.checked());this._isChecked?(this.spanImg.addClass("e-checkmark"),this.span.addClass("e-chk-act"),this.maindiv.setAttribute("aria-checked",!0),this.element.attr("checked","checked")):(this.span.addClass("e-chk-inact"),this.maindiv.setAttribute("aria-checked",!1),this._hiddenInput.setAttribute("name",this.model.name));this.checked()instanceof Array||this.checked(this._isChecked);this.span[0].appendChild(this.spanImg[0]);this.innerdiv.appendChild(this.span[0]);this.element[0].parentNode&&this.element[0].parentNode.insertBefore(this.maindiv,this.element[0]);this.maindiv.appendChild(this.element[0]);this.maindiv.appendChild(this._hiddenInput);this.maindiv.appendChild(this.innerdiv);this.wrapper=n(this.maindiv);this._setTextWrapper(this.model.text);this.chkbx=this.element;this.model.enableTriState==!0&&this._indeterminateState==!0&&this._setIndeterminate(this._indeterminateState);this.checked()instanceof Array&&this._updateCheckedItem()},_changeState:function(n){n=="indeterminate"?(this.spanImg.removeClass("e-checkmark").addClass("e-stop"),this.span.removeClass("e-chk-act e-chk-inact").addClass("e-chk-indeter"),this.wrapper[0].setAttribute("aria-checked","mixed"),this.wrapper.find("input").prop("enableTriState",!0),this.checked()instanceof Array||this.checked(null)):n=="check"?(this.spanImg.removeClass("e-stop").addClass("e-checkmark"),this.span.removeClass("e-chk-act e-chk-inact e-chk-indeter").addClass("e-chk-act"),this.wrapper[0].setAttribute("aria-checked",!0)):n=="uncheck"&&(this.spanImg.removeClass("e-checkmark e-stop"),this.span.removeClass("e-chk-act e-chk-indeter").addClass("e-chk-inact"),this.wrapper[0].setAttribute("aria-checked",!1))},_setIndeterminate:function(n){n?(this.spanImg.removeClass("e-checkmark").addClass("e-stop"),this.span.removeClass("e-chk-act e-chk-inact").addClass("e-chk-indeter"),this.wrapper[0].setAttribute("aria-checked","mixed"),this.wrapper.find("input").prop("enableTriState",!0),this.checkState("indeterminate"),this.checked()instanceof Array||this.checked(null),this._hiddenInput.setAttribute("name",this.model.name)):(this.span.removeClass("e-chk-indeter"),this.spanImg.removeClass("e-stop"),this.wrapper.find("input").removeAttr("enableTriState"),this.wrapper.find("input").prop("enableTriState",!1),this.checked()?this._checked():this._unChecked())},_setTextWrapper:function(n){n!=""&&(this.txtSpan=t.buildTag("div.e-text",n),this.wrapper.append(this.txtSpan),this.model.enableRTL&&this._setRTL())},_setText:function(n){this.model.text==""&&n!=""?this._setTextWrapper(n):this.txtSpan.html(n)},_setIdAttr:function(t){n("#"+this.model.idPrefix+this.model.id+"_wrapper").attr("id",this.model.idPrefix+t+"_wrapper");this.element[0].setAttribute("id",t)},_isValid:function(n){return!t.isNullOrUndefined(n)&&n!=""?!0:!1},_wireEvents:function(){this._on(this.wrapper,"click",this._checkedHandler);this._isIE8&&this._isValid(this.model.id)&&this._on(n("label[for="+this.model.id+"]"),"click",function(){this.wrapper.click()});this._on(this.wrapper,"focus",this._focusIn);this._on(this.wrapper,"focusout",this._focusOut)},_unWireEvents:function(){this._off(this.wrapper,this._isDevice&&n.isFunction(n.fn.tap)?"tap":"click");this._isIE8&&this._isValid(this.model.id)&&this._off(n("label[for="+this.model.id+"]"),"click");this._off(this.wrapper,"focus");this._off(this.wrapper,"focusout")},_focusIn:function(){n(this.wrapper).addClass("e-focus");n(this.wrapper).on("keydown",n.proxy(this._checkUnCheck,this))},_focusOut:function(){n(this.wrapper).removeClass("e-focus");n(this.wrapper).off("keydown",n.proxy(this._checkUnCheck,this))},_checkUnCheck:function(n){n.keyCode==32&&(n.preventDefault(),this._checkedHandler())},_checkedHandler:function(t){var i={isChecked:this._isChecked,isInteraction:!0,event:t};return!0==this._trigger("beforeChange",i)?!1:(this.span.hasClass("e-chk-inact")?(this._checked(),this.checked()instanceof Array||this.checked(!0),this.model.enableTriState&&(this._indeterminateState=!0,this.checkState("check"))):this.span.hasClass("e-chk-act")?this.model.enableTriState==!0&&this.model.checkState=="check"&&this.model.checked==!0?(this._setIndeterminate(!0),this.checked()instanceof Array||(this.checked(!0),this.checkState("indeterminate"))):(this._unChecked(),this.checked()instanceof Array||(this.checked(!1),this.checkState("uncheck"))):this.span.hasClass("e-chk-indeter")&&(this.checked()instanceof Array?this._isChecked=!1:this.checked(!1),this._setIndeterminate(!1),this._indeterminateState=!1),this.checked()instanceof Array?this._updateCheckedItem():this._isChecked=this.checked(),n(this.maindiv).addClass("e-material-animate"),i={isChecked:this._isChecked,checkState:this.checkState(),isInteraction:!0,event:t},this._trigger("change",i),!0)},_checked:function(){this.span.removeClass("e-chk-inact").addClass("e-chk-act");this.spanImg.removeClass("e-stop").addClass("e-checkmark");this.wrapper[0].setAttribute("aria-checked",!0);this.wrapper.find("input[type=checkbox]").prop("checked",!0);this.checkState("check");this._hiddenInput.removeAttribute("name")},_unChecked:function(){this.span.removeClass("e-chk-act e-chk-indeter").addClass("e-chk-inact");this.wrapper[0].setAttribute("aria-checked",!1);this.spanImg.removeClass("e-checkmark e-stop");this.wrapper.find("input[type=checkbox]").prop("checked",!1);this.checkState("uncheck");this._hiddenInput.setAttribute("name",this.model.name)},_setCheckedItem:function(n){if(typeof n!="boolean"||n instanceof Array){if(n instanceof Array&&!t.isNullOrUndefined(this.model.value)&&this.model.value!="")for(var i=0;i<n.length;i++)n[i]==this.model.value&&(this._isChecked=!0)}else this._isChecked=!0},_updateCheckedItem:function(){var r=this.model.checked.splice===i?this.model.checked():this.model.checked;t.isNullOrUndefined(this.model.value)||this.model.value==""||this.wrapper.find("span:first").hasClass("e-chk-indeter")||(n.inArray(this.model.value,this.checked())<0&&this.wrapper.find("span:first").hasClass("e-chk-act")?(r.push(this.model.value),this._isChecked=!0,this._hiddenInput.removeAttribute("name")):n.inArray(this.model.value,this.checked())>-1&&this.wrapper.find("span:first").hasClass("e-chk-inact")&&(this._isChecked=!1,r.splice(n.inArray(this.model.value,this.model.checked()),1),this._hiddenInput.setAttribute("name",this.model.name)))},disable:function(){this.wrapper.hasClass("e-disable")||(this.wrapper.addClass("e-disable"),this.wrapper[0].setAttribute("aria-disabled",!0),this.element[0].setAttribute("disabled","disabled"),this._isIE8&&this.span.addClass("e-disable"),this._unWireEvents(),this.model.enabled=!1)},enable:function(){this.wrapper.hasClass("e-disable")&&(this.wrapper.removeClass("e-disable"),this.wrapper[0].setAttribute("aria-disabled",!1),this.element.prop("disabled",!1),this._isIE8&&this.span.removeClass("e-disable"),this._wireEvents(),this.model.enabled=!0)},isChecked:function(){if(this._isChecked!=null&&this._isChecked!=i)return this._isChecked}});t.CheckboxSize={Small:"small",Medium:"medium"};t.CheckState={Check:"check",Uncheck:"uncheck",Indeterminate:"indeterminate"}}(jQuery,Syncfusion),function(n,t){t.widget("ejToolbar","ej.Toolbar",{element:null,model:null,validTags:["div","span"],_setFirst:!1,_rootCSS:"e-toolbar",angular:{terminal:!1},defaults:{height:"",width:"",enabled:!0,hide:!1,disabledItemIndices:[],enabledItemIndices:[],enableSeparator:!1,orientation:"horizontal",enableRTL:!1,isResponsive:!1,showRoundedCorner:!1,htmlAttributes:{},dataSource:null,Items:{id:"id",tooltipText:"tooltipText",imageUrl:"imageUrl",text:"text",imageAttributes:"imageAttributes",spriteCssClass:"spriteCssClass",htmlAttributes:"htmlAttributes",group:"group",template:"template",overflow:"overflow"},query:null,responsiveType:"popup",fields:{id:"id",tooltipText:"tooltipText",imageUrl:"imageUrl",text:"text",imageAttributes:"imageAttributes",spriteCssClass:"spriteCssClass",htmlAttributes:"htmlAttributes",group:"group",template:"template",overflow:"overflow"},tooltipSettings:{associate:"mouseenter",showShadow:!0,position:{stem:{horizontal:"left",vertical:"top"}},tip:{size:{width:5,height:5},adjust:{xValue:17,yValue:17}},isBalloon:!1},cssClass:"",targetID:null,create:null,click:null,itemHover:null,itemLeave:null,overflowOpen:null,overflowClose:null,destroy:null},dataTypes:{enabled:"boolean",hide:"boolean",enableSeparator:"boolean",disabledItemIndices:"data",enabledItemIndices:"data",orientation:"enum",enableRTL:"boolean",showRoundedCorner:"boolean",isResponsive:"boolean",dataSource:"data",query:"data",fields:"data",cssClass:"string",htmlAttributes:"data",targetID:"string",responsiveType:"enum"},hide:function(){if(!this.model.enabled&&this.element.css("display")=="none")return!1;this.element.css("display","none");this.model.hide=!0},show:function(){if(!this.model.enabled&&this.element.css("display")!="none")return!1;this.element.css("display","block");this.model.hide=!1},_init:function(){this.model.targetID!=null&&this.element.html(n("#"+this.model.targetID).find("ul,ol"));this._cloneElement=n(this.element).clone();this._localDataSource=null;this.model.dataSource!=null?this._generateTemplate():this.model.Items!=null&&this._generateTemplate();this.model.dataSource instanceof t.DataManager||this._initialize();this._renderTooltip(this.model.tooltipSettings)},_setModel:function(t){var i,r;for(i in t)switch(i){case"height":this._setHeight(t[i]);break;case"width":this.model.width=t[i];this._setWidth();this._bindUnbindWidth();break;case"enabled":this._controlStatus(t[i]);break;case"disabledItemIndices":this._disableItemByIndex(t[i]);t[i]=this.model.disabledItemIndices;break;case"enabledItemIndices":this._enableItemByIndex(t[i]);break;case"isResponsive":this.model.isResponsive=t[i];this.model.isResponsive?(this._responsiveLayout(),this._renderTooltip(this.model.tooltipSettings)):this._removeResponsive();break;case"hide":this._controlVisibleOptions(t[i]);break;case"orientation":this._setOrientation(t[i]);this.model.orientation=t[i];this._wireResizing();break;case"tooltipSettings":this.model.tooltipSettings=n.extend(!0,this.model.tooltipSettings,t[i]);this._renderTooltip(this.model.tooltipSettings);break;case"enableRTL":this._enableRTL(t[i]);break;case"showRoundedCorner":this._roundedCorner(t[i]);break;case"cssClass":this._setSkin(t[i]);break;case"htmlAttributes":this._addAttr(t[i]);break;case"enableSeparator":this.model.enableSeparator=t[i];this._renderToolbarSeparator();break;case"fields":n.extend(this.model.fields,t[i]);break;case"query":this.model.query=t[i];break;case"dataSource":for(r in t)r=="fields"&&n.extend(this.model.fields,t[r]),r=="query"&&(this.model.query=t[r]);this._refreshTagItems(i,t[i]);break;case"Items":n.extend(this.model.Items,t[i]);this._refreshTagItems(i,t[i]);break;case"targetID":this.model.targetID=t[i];this._setTargetID()}},_setTargetID:function(){this.element.removeAttr("role tabindex aria-disabled style");n(this._spantag).remove();n(this._liTemplte).remove();this._liTemplte=this._tipRes=null;this.element.removeClass("e-widget e-box e-toolbarspan e-rtl");this.element.find("ul,ol").removeClass("e-ul e-horizontal e-vertical e-separator e-comnrtl");this.element.find("li").removeClass("e-tooltxt e-comnrtl");this.element.find("li").removeAttr("aria-label");this._init()},_refreshTagItems:function(n,t){this.model[n]=t;this.element.empty();this._generateTemplate();this._initialize()},_setHeight:function(n){this.element.css("height",n)},_setWidth:function(){var t,u;if(this.model.width=="auto"){var r=parseFloat(this.element.css("border-left-width"))+parseFloat(this.element.css("border-right-width")),f=this.element.find("ul").children("li"),i=this.element.find("ul"),e;for(e=this.model.responsiveType=="inline"?this.element.find(".e-arrow-sans-down"):this.element.find(".e-toolbar-res-arrow"),t=0,u=i.length;t<u;t++)i[t]!=null&&n(i[t]).hasClass("e-separator")&&(r+=parseFloat(i.eq(t).css("border-right-width"))+parseFloat(i.eq(t).css("border-left-width")));for(e[0]!=null&&(r+=this.model.responsiveType=="inline"?Math.round(this.element.find(".e-arrow-sans-down").outerWidth())+8:Math.round(this.element.find(".e-toolbar-res-arrow").outerWidth())+8),t=0,u=f.length;t<u;t++)f[t]!=null&&(r+=Math.round(f.eq(t).outerWidth()));this.element.css("width",Math.ceil(r))}else this.element.css("width",this.model.width)},_bindUnbindWidth:function(){this.model.width!="auto"?this._off(n(window),"resize",this._widthHandler):this._on(n(window),"resize",this._widthHandler)},_widthHandler:function(){this._setWidth(this.model.width)},_setOrientation:function(n){n!=t.Orientation.Vertical?(this.element.removeClass(this.model.cssClass).addClass("e-toolbarspan "+this.model.cssClass),this.itemsContainer.removeClass("e-ul e-vertical").addClass("e-ul e-horizontal")):(this.element.removeClass("e-toolbarspan "+this.model.cssClass).addClass(this.model.cssClass),this.itemsContainer.removeClass("e-ul e-horizontal").addClass("e-ul e-vertical"));this.items.addClass("e-tooltxt")},_reSizeHandler:function(){var r,u,f,e,i,t;for(this._isResized&&this._liTemplte.children().length>0&&(r=this.element.children("ol.e-show, ul.e-show"),u=this._liTemplte.children("ol.e-show, ul.e-show"),r.length>0||u.length>0?n(this._liTemplte.children()).appendTo(this.element):n(this._liTemplte.children()).insertBefore(n(this.element).find("span.e-res-pos")),this._renderToolbarSeparator(),this.model.responsiveType!="inline"&&this._liTemplte.addClass("e-display-none"),this._contstatus=!1),this._elementWidth=typeof getComputedStyle=="function"?parseFloat(window.getComputedStyle(this.element[0]).width):this.element.width()-1,this._liWidth=this._spanWidth,f=this.element.children("ol.e-show:visible, ul.e-show:visible"),e=this.element.children("ol:visible:not(.e-show), ul:visible:not(.e-show)"),this._spantag.removeClass("e-display-block").addClass("e-display-none"),this._ensureOverflow(f),i=0,t=0;t<this.itemsContainer.length;t++)i+=n(this.itemsContainer[t]).outerWidth(!0);i>this.element.width()&&this._ensureOverflow(e);this.model.responsiveType=="inline"&&(this._liTemplte.removeClass("e-normal"),this._liTemplte.css("width",this.element.width()));this._isResized=!0},_ensureOverflow:function(t){for(var r,i=0;i<t.length;i++)this._liWidth+=n(t[i]).outerWidth(!0)+8,this._liWidth>=this.element.width()&&(this._spantag.hasClass("e-display-block")||this._spantag.removeClass("e-display-none").addClass("e-display-block"),this._spantag.addClass("e-res-pos"),this._liTemplte.addClass("e-normal"),this._spantag.outerWidth(!0)!=this._spanOuterWidth&&(r=this._spantag.outerWidth(!0)-this._spantag.outerWidth(),this._liWidth-(n(t[i]).outerWidth(!0)+8)+r>=this._elementWidth&&this._liTemplte.append(t[i-1])),this._liTemplte.append(t[i]))},_getZindexPartial:function(){return t.util.getZindexPartial(this.element,this.popup)},_getOffset:function(n){return t.util.getOffset(n)},_btnMouseClick:function(i){var u,f,r,h,o=1,a=this.element.outerWidth(),v=this.element.outerHeight(),s=n(this._liTemplte).outerWidth(),c=n(window).width(),e=n(window).scrollLeft(),l;n(i.currentTarget).hasClass("e-disable")||(l=this._getZindexPartial(),f=this._getOffset(this.element),r=this.model.enableRTL?f.left:f.left+a-s,h=f.top+v-o+2,r=r<e?e+o:r+s>c+e?c-s+e-o:r,this._contstatus?(this._liTemplte.addClass("e-display-none"),this.model.responsiveType=="inline"&&this._spantag.removeClass("e-active"),this._contstatus=!1,u={currentTarget:i.currentTarget,clientX:i.clientX,clientY:i.clientY,cancel:i.cancellable},this._trigger("overflowClose",u)):(this._liTemplte.removeClass("e-display-none"),this.model.responsiveType!="inline"&&this._liTemplte.css({top:h+"px",left:r+"px","z-index":l}),this.model.responsiveType=="inline"&&this._spantag.addClass("e-active"),this._contstatus=!0,u={currentTarget:i.currentTarget,clientX:i.clientX,clientY:i.clientY,cancel:i.cancellable},this._trigger("overflowOpen",u),this.model.responsiveType!="inline"&&this._on(t.getScrollableParents(this.element),"scroll",this._hidecontext),this.element.bind("click",n.proxy(this._hidecontext,this))),this._contstatus&&this.model.responsiveType!="inline"&&this._on(n(document),"mouseup",this._documentClick),this._contstatus||this._off(n(document),"mouseup",this._documentClick),this._removeListHover())},_hidecontext:function(i){n(i.target).is(n("#"+this.element[0].id+"_target"))||this.model.responsiveType=="inline"||(this._liTemplte.addClass("e-display-none"),this._contstatus=!1,this.element.unbind("click",n.proxy(this._hidecontext,this)),this._off(t.getScrollableParents(this.element),"scroll",this._hidecontext),this._off(n(document),"mouseup",this._documentClick))},_documentClick:function(t){if(!n(t.target).is(n("#"+this.element[0].id+"_target"))&&!(n(t.target).closest("div#"+this.element[0].id+"_hiddenlist").length!=0||n(t.target).parents().hasClass("e-ddl-popup"))){this._liTemplte.addClass("e-display-none");this._contstatus=!1;var i={currentTarget:t.currentTarget,clientX:t.clientX,clientY:t.clientY,cancel:t.cancellable};this._trigger("overflowClose",i);this._off(n(document),"mouseup",this._documentClick)}},_setSkin:function(n){this.element.removeClass(this.model.cssClass).addClass(n);var t="e-toolbarTooltip "+n;this._subControlsSetModel("cssClass",t)},_subControlsSetModel:function(i,r){t.isNullOrUndefined(this._tipToolbar)||n(this.target).ejTooltip("option",i,r);t.isNullOrUndefined(this._tipRes)||n(this._liTemplte).ejTooltip("option",i,r)},_destroy:function(){this.element.html("");t.isNullOrUndefined(this._tipToolbar)||n(this.target).ejTooltip("destroy");t.isNullOrUndefined(this._tipRes)||n(this._liTemplte).ejTooltip("destroy");this._cloneElement.removeClass("e-toolbar e-js");this.element.replaceWith(this._cloneElement);this._liTemplte&&this._liTemplte.remove();this._unWireResizing()},_initialize:function(){this.element.attr({role:"toolbar",tabindex:"0"});var n=this.element.children().find("li");this._focusEnable=!0;this._renderControl();this._responsiveLayout();this._wireEvents()},_responsiveLayout:function(){var r,i;if(this._roundedCorner(this.model.showRoundedCorner),this.model.isResponsive&&this.model.orientation=="horizontal"){for(t.isNullOrUndefined(this._liTemplte)||(t.isNullOrUndefined(this._tipRes)||this._tipRes.destroy(),n(this._liTemplte).remove()),this._spantag=n("<span id='"+this.element[0].id+"_target' class='e-icon e-toolbar-res-arrow e-rel-position e-display-block' unselectable='on'><\/span>"),this.model.responsiveType=="inline"&&this._spantag.removeClass("e-toolbar-res-arrow").addClass("e-inlinearrow e-arrow-sans-down"),r=this.element.children("ol.e-show, ul.e-show"),r.length>0?this.element[0].insertBefore(this._spantag[0],this.element[0].childNodes[0]):this._spantag.appendTo(this.element),this._liTemplte=n("<div id='"+this.element[0].id+"_hiddenlist' class='e-responsive-toolbar e-display-none e-abs-position "+n(this.element)[0].className+"'><\/div>"),this.model.responsiveType=="inline"&&this._liTemplte.removeClass("e-abs-position").addClass("e-inline"),this._spanWidth=this._spantag.outerWidth(!0)+8,this.model.enableRTL&&this._liTemplte.addClass("e-rtl"),this._isResized=!1,this._elementWidth=typeof getComputedStyle=="function"?parseFloat(window.getComputedStyle(this.element[0]).width):this.element.width()-1,this._liWidth=this._spanWidth,i=0;i<this.itemsContainer.length;i++)this._liWidth+=n(this.itemsContainer[i]).outerWidth(!0);this._liWidth>this._elementWidth?this._reSizeHandler():this._spantag.removeClass("e-display-block").addClass("e-display-none");this.model.responsiveType=="inline"?n(this.element[0]).append(this._liTemplte):n("body").append(this._liTemplte);this._renderTooltip(this.model.tooltipSettings)}this._on(n("#"+this.element[0].id+"_target"),"mousedown",this._btnMouseClick);this._wireResizing();this._controlVisibleOptions(this.model.hide);this._enableRTL(this.model.enableRTL);this._disabledItems=this.model.disabledItemIndices;this._controlStatus(this.model.enabled);this.model.disabledItemIndices=this._disabledItems;this.model.disabledItemIndices.length!=0&&this._disableItemByIndex(this.model.disabledItemIndices);this.model.enabledItemIndices.length!=0&&this._enableItemByIndex(this.model.enabledItemIndices);this._setWidth()},_removeResponsive:function(){n(this._spantag).remove();t.isNullOrUndefined(this._tipRes)||n(this._liTemplte).ejTooltip("destroy");var i=n(this._liTemplte).children("ul");n(this._liTemplte).detach();n(this.element).append(i);this.itemsContainer=this.element.children("ol,ul");this.items=this.itemsContainer.children("li");this._off(this.items,"mouseup");this._off(this.items,"mousedown");this._off(this.element,"mousedown");this._wireEvents();this._wireResizing();this._setWidth()},_controlVisibleOptions:function(n){n!=!1?this.hide():this.show()},_controlStatus:function(n){n!=!0?this.disable():this.enable()},_roundedCorner:function(n){n?(this.element.addClass("e-corner"),this._liTemplte&&this._liTemplte.addClass("e-corner")):(this.element.removeClass("e-corner"),this._liTemplte&&this._liTemplte.removeClass("e-corner"));this._subControlsSetModel("showRoundedCorner",n)},_generateTemplate:function(){var n=this,i;this.element.css("visibility","hidden");this.model.dataSource instanceof t.DataManager?(i=this.model.dataSource.executeQuery(this.model.query),i.done(function(t){n._generateGroup(t.result);n._initialize();n.element.css("visibility","")})):this.model.dataSource!=null?(n._generateGroup(n.model.dataSource),n.element.css("visibility","")):(n._generateGroup(n.model.Items),n.element.css("visibility",""))},_generateGroup:function(n){var r=this,f,u,t,e,i;for(this._localDataSource=n,f=-1,u=[],t=0;t<n.length;t++)if(this._isNewGroup(n[t][this.model.fields.group],u)){for(u[++f]=n[t][this.model.fields.group],e=-1,r.itemsSource=[],i=t;i<n.length;i++)n[t][this.model.fields.group]==n[i][this.model.fields.group]&&(r.itemsSource[++e]=n[i]);r.element.append(r._generateTagitems())}},_isNewGroup:function(n,t){if(!t)return!0;for(var i=0;i<t.length;i++)if(n==t[i])return!1;return!0},_renderControl:function(){this.element.addClass("e-widget e-box");this._renderToolbarItems();this._addAttr(this.model.htmlAttributes);this._setOrientation(this.model.orientation);this._renderToolbarSeparator();this._setHeight(this.model.height);this._bindUnbindWidth()},_renderToolbarItems:function(){var i;for(this.target=this.element[0],this.itemsContainer=this.element.children("ol,ul"),i=0;i<this.itemsContainer.length;i++)n(this.itemsContainer[i]).attr("role","list");for(this.itemsContainer.children("ol,ul").remove(),this.items=this.itemsContainer.children("li"),i=0;i<this.items.length;i++)n(this.items[i]).attr("tabindex","-1"),n(this.items[i]).attr("role","listitem"),t.isNullOrUndefined(n(this.items[i]).attr("title"))&&t.isNullOrUndefined(n(this.items[i]).attr("aria-label"))&&n(this.items[i]).attr("aria-label",this.items[i].id);this._liCount=this.items.length},_generateTagitems:function(){var i,n;for(i=this.itemsSource,this.ultag=t.buildTag("ul"),this.ultag.attr("role","list"),n=0;n<i.length;n++)i[n][this.model.fields.overflow]=="show"&&this.ultag.addClass("e-show"),this.ultag.append(this._generateLi(i[n]));return this.ultag},_generateLi:function(n){var i,u,r;return i=t.buildTag("li"),n[this.model.fields.id]?i.attr("id",n[this.model.fields.id]):n[this.model.fields.text]&&i.attr("id",n[this.model.fields.text]),n[this.model.fields.tooltipText]&&i.attr("title",n[this.model.fields.tooltipText]),n[this.model.fields.imageUrl]&&n[this.model.fields.imageUrl]!=""&&(u=t.buildTag("img.e-align","",{},{src:n[this.model.fields.imageUrl],alt:n[this.model.fields.text]}),n[this.model.fields.imageAttributes]&&this._setAttributes(n[this.model.fields.imageAttributes],u),i.append(u)),n[this.model.fields.spriteCssClass]&&n[this.model.fields.spriteCssClass]!=""&&(r=t.buildTag("div.e-align "+n[this.model.fields.spriteCssClass]+" e-spriteimg"),i.append(r)),n[this.model.fields.text]&&n[this.model.fields.text]!=""&&i.append(n[this.model.fields.text]),n[this.model.fields.htmlAttributes]&&this._setAttributes(n[this.model.fields.htmlAttributes],i),n[this.model.fields.template]&&(r=t.buildTag("div .e-align",n[this.model.fields.template]),i.append(r)),i},_setAttributes:function(t,i){for(var r in t)n(i).attr(r,t[r])},_renderToolbarSeparator:function(){var t,i;if(this.model.enableSeparator){for(t=0,i=this.itemsContainer.length-1;t<i;t++)n(this.itemsContainer[t]).addClass("e-separator");if(this.itemsContainer.length==1)for(t=0,i=this.itemsContainer[0].children.length;t<i;t++)t==i-1?n(this.itemsContainer[0].children[t]).removeClass("e-separator"):n(this.itemsContainer[0].children[t]).addClass("e-separator")}else this.itemsContainer.removeClass("e-separator").find(".e-separator").removeClass("e-separator");this._setWidth()},_addAttr:function(t){var i=this;n.map(t,function(n,t){t=="class"?i.element.addClass(n):t=="disabled"&&n=="disabled"?i.disable():i.element.attr(t,n)})},_enableRTL:function(n){n?(this.element.addClass("e-rtl"),this.items.addClass("e-comnrtl"),this.model.orientation==t.Orientation.Horizontal&&this.itemsContainer.addClass("e-comnrtl"),this._liTemplte&&this._liTemplte.addClass("e-rtl")):(this.element.removeClass("e-rtl"),this.items.removeClass("e-comnrtl"),this.model.orientation==t.Orientation.Horizontal&&this.itemsContainer.removeClass("e-comnrtl"),this._liTemplte&&this._liTemplte.removeClass("e-rtl"));this.model.enableRTL=n;this._subControlsSetModel("enableRTL",n);this._renderToolbarSeparator()},_renderTooltip:function(i){var r=n.extend(!0,{},i);r.cssClass=t.isNullOrUndefined(r.cssClass)?"e-toolbarTooltip "+this.model.cssClass:r.cssClass+" e-toolbarTooltip "+this.model.cssClass;r.enableRTL=this.model.enableRTL;r.showRoundedCorner=this.model.showRoundedCorner;r.target="li[data-content], li[title]";r.beforeOpen=this._showTooltip;this._tipToolbar=n(this.target).ejTooltip(r).data("ejTooltip");this.model.isResponsive&&!t.isNullOrUndefined(this._liTemplte)&&(this._tipRes=n(this._liTemplte).ejTooltip(r).data("ejTooltip"))},_showTooltip:function(t){var i=n(t.event.currentTarget),r=t.event.target;i.hasClass("e-disable")&&(t.cancel=!0)},_hideTooltip:function(){t.isNullOrUndefined(this._tipToolbar)||(this._tipToolbar.hide(),this._tipToolbar._isHidden=!1);t.isNullOrUndefined(this._tipRes)||(this._tipRes.hide(),this._tipRes._isHidden=!1)},_addOverlay:function(i){for(var u,r=0;r<i.length;r++)n(i[r]).hasClass("e-disable")||(n(i[r]).addClass("e-disable"),u=t.buildTag("div.e-item-overlay"),n(i[r]).append(u))},_removeOverlay:function(t){for(var i=0;i<t.length;i++)n(t[i]).children(".e-item-overlay").remove()},disableItem:function(t){var i=n(t);i==null||i.length<=0||(i.hasClass("e-disable")||(i.attr("aria-disabled",!0).removeAttr("aria-label"),this._addOverlay(i)),i.removeClass("e-hover e-active").attr("data-aria-selected",!1))},enableItem:function(t){var i=n(t);i==null||i.length<=0||(i.removeClass("e-disable").attr("aria-disabled",!1).removeClass("e-disable"),this._removeOverlay(i))},disableItemByID:function(n){var t=this.itemsContainer.find("li#"+n);t==null||t.length<=0||this.disableItem(t)},enableItemByID:function(n){var t=this.itemsContainer.find("li#"+n);t==null||t.length<=0||this.enableItem(t)},_enableItemByIndex:function(t){var r,i;if(!this.model.enabled)return!1;if(t.length!=0)for(i=0;i<t.length;i++)n.inArray(t[i],this.model.disabledItemIndices)>-1&&(r=n.inArray(t[i],this.model.disabledItemIndices),this.enableItem(this.items[this.model.disabledItemIndices[r]]),this.model.disabledItemIndices.splice(r,1))},_disableItemByIndex:function(t){var i;if(!this.model.enabled)return!1;for(this._disabledItems=this.model.disabledItemIndices,i=0;i<t.length;i++)n.inArray(t[i],this.model.disabledItemIndices)<0&&this._disabledItems.push(parseInt(t[i]));for(i=0;i<this.items.length;i++)n.inArray(i,this.model.disabledItemIndices)>-1&&this.disableItem(this.items[i]);this.model.disabledItemIndices=this._disabledItems},disable:function(){if(this.element.attr("aria-disabled")=="true")return!1;this.element.attr("aria-disabled",!0).removeAttr("aria-label");this._addOverlay(this.items);this.model.isResponsive&&this.model.orientation=="horizontal"&&this._spantag.addClass("e-disable");this.model.enabled=!1;this._subControlsSetModel("enabled",!1)},enable:function(){if(this.model.disabledItemIndices=[],this.element.attr("aria-disabled")=="false")return!1;this.items.removeClass("e-disable");this._removeOverlay(this.items);this.element.attr("aria-disabled",!1);this.model.isResponsive&&this.model.orientation=="horizontal"&&this._spantag.removeClass("e-disable");this.model.enabled=!0;this._subControlsSetModel("enabled",!0)},refresh:function(){this._reSizeHandler()},selectItem:function(t){var i=n(t);i==null||i.length<=0||(i.addClass("e-active").attr("data-aria-selected",!0),this._activeItem=n(this.items).index(i))},deselectItem:function(t){var i=n(t);i==null||i.length<=0||i.removeClass("e-active").attr("data-aria-selected",!1)},selectItemByID:function(n){var t=this.itemsContainer.find("li#"+n);t==null||t.length<=0||this.selectItem(t)},deselectItemByID:function(n){var t=this.itemsContainer.find("li#"+n);t==null||t.length<=0||this.deselectItem(t)},removeItem:function(t){var r,u,i;if(this.model.disabledItemIndices=[],r=n(t),u=0,r!=null&&!(r.length<=0))for(r.remove(),this.items=this.itemsContainer.children("li"),i=0;i<this.items.length;i++)n(this.items[i]).hasClass("e-disable")&&(this.model.disabledItemIndices[u++]=i)},removeItemByID:function(n){var t=this.itemsContainer.find("li#"+n);t==null||t.length<=0||this.removeItem(t)},_wireResizing:function(){this.model.isResponsive&&this.model.orientation=="horizontal"?n(window).bind("resize",n.proxy(this._reSizeHandler,this)):this._unWireResizing()},_unWireResizing:function(){n(window).unbind("resize",n.proxy(this._reSizeHandler,this))},_wireEvents:function(){this._on(this.element,"mousedown",this._clickEventHandler);this._on(this.element,"focus",this._focusElement);this._on(this.element,"blur",this._targetBlur);this._on(this.items,"mouseenter",this._onItemHover);this._on(this.items,"mouseleave",this._onItemLeave);this._on(this.items,"mousedown",this._onItemClick);this._on(this.items,"mouseup",this._onItemClick)},_onItemHover:function(t){var i=n(t.currentTarget),u=t.target,r;i.hasClass("e-disable")?clearTimeout(this._tipToolbar.mouseTimer):(this.items.removeClass("e-hover"),i.addClass("e-hover").focus(),r={currentTarget:i,target:u,status:this.model.enabled},this._trigger("itemHover",r))},_onItemClick:function(i){var r,u,f;if(n(i.currentTarget).hasClass("e-disable")||i.which!=1)return!1;r=i.currentTarget;u=i.target;t.isDevice()||this._hideTooltip();i.type=="mousedown"?(this._focusEnable=!1,n(r).addClass("e-active"),this._focusedItem=this._currentItem=n(r)):i.type=="mouseup"&&n(r).hasClass("e-active")&&(this._removeSelection(),n(r).hasClass("e-disable")||(f={currentTarget:r,text:n(r).attr("data-content"),target:u,status:this.model.enabled,event:i},this._activeItem=this.model.isResponsive&&this._contstatus&&n(r).closest(".e-responsive-toolbar").length>0?this._liTemplte.find(".e-tooltxt").index(r):n(this.items).index(r),this._trigger("click",f)))},_onItemLeave:function(t){var i=n(t.currentTarget),u=t.target,r;i.hasClass("e-disable")||(this._removeSelection(),i.removeClass("e-hover"),r={currentTarget:i,target:u,status:this.model.enabled},this._trigger("itemLeave",r))},_onKeyPress:function(i){var u,r,f,e,o;if(u=i.keyCode?i.keyCode:i.which?i.which:i.charCode,this.model.isResponsive&&this._liTemplte.find(".e-tooltxt").length>0?(this._keyPressed=!0,this._items=this._contstatus?this._liTemplte.find(".e-tooltxt"):this.element.find(".e-tooltxt"),r=this._items.filter(".e-tooltxt:visible:not(.e-hidden, .e-disable)")):(this._keyPressed=!1,r=this.items.filter(".e-tooltxt:visible:not(.e-hidden, .e-disable)")),this._focusedItem?(f=this._focusedItem,this._focusedItem=null):f=r.filter(".e-hover"),i.type=="keydown")u==9&&i.shiftKey&&n(r[r.index(f)-1]).length>0?(i.preventDefault(),e=n(r[r.index(f)-1])):u==9&&n(r[r.index(f)+1]).length>0&&!i.shiftKey?(i.preventDefault(),e=n(r[r.index(f)+1])):(u==38||u==39)&&this.model.orientation!=t.Orientation.Vertical||(u==39||u==40)&&this.model.orientation==t.Orientation.Vertical?(i.preventDefault(),e=n(r[r.index(f)+1]).length>0?n(r[r.index(f)+1]):r.first()):(u==37||u==40)&&this.model.orientation!=t.Orientation.Vertical||(u==37||u==38)&&this.model.orientation==t.Orientation.Vertical?(i.preventDefault(),e=n(r[r.index(f)-1]).length>0?n(r[r.index(f)-1]):r.last()):u==33||u==36?(i.preventDefault(),e=r.first()):(u==34||u==35)&&(i.preventDefault(),e=r.last()),e&&(this._removeListHover(),e[0].focus(),e.addClass("e-hover"));else switch(u){case 13:case 32:if(i.preventDefault(),!f[0])break;o={currentTarget:f[0],target:n(f)[0],status:this.model.enabled,event:i};this._trigger("click",o);break;case 27:i.preventDefault();this.element.blur()}},_removeListHover:function(){n(this.items).removeClass("e-hover")},_addListHover:function(){var n=this._getActiveItem();n.hasClass("e-disable")||n.addClass("e-hover").focus()},_getActiveItem:function(){return this.model.isResponsive&&this._keyPressed?n(this._items[this._activeItem]):n(this.items[this._activeItem])},_targetBlur:function(){this.element.focusout().removeClass("e-focus");this._removeListHover();this._off(this.element,"keyup",this._onKeyPress)._off(this.element,"keydown",this._onKeyPress);this._trigger("focusOut")},_clickEventHandler:function(){this._clicked=!0},_removeSelection:function(){this._currentItem&&this._currentItem.attr("data-aria-selected")!="true"&&this._currentItem.removeClass("e-active")},_focusElement:function(){if(!this.element.hasClass("e-focus")&&(this.element.addClass("e-focus"),this._on(this.element,"keyup",this._onKeyPress)._on(this.element,"keydown",this._onKeyPress),!this._focusEnable)){this._focusEnable=!0;return}this._removeListHover();this._activeItem=this._clicked?-1:0;(this._getActiveItem().hasClass("e-disable")||this._getActiveItem().is(":hidden"))&&(this._activeItem=n(this.items).filter('li:not([class*="e-disable"])').first().index());this._addListHover()}});t.Toolbar.ResponsiveType={Popup:"popup",Inline:"inline"}}(jQuery,Syncfusion);"use strict";var n=this&&this.__extends||function(n,t){function r(){this.constructor=n}for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i]);n.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)};(function(t){var i=function(i){function r(n,r){return i.call(this),this._rootCSS="e-tooltip",this._setFirst=!1,this.PluginName="ejTooltip",this.id="null",this.model=null,this.defaults={height:"auto",width:"auto",enabled:!0,content:null,containment:"body",target:null,title:null,closeMode:"none",autoCloseTimeout:4e3,position:{stem:{horizontal:"center",vertical:"bottom"},target:{horizontal:"center",vertical:"top"}},associate:"target",collision:"flipfit",showShadow:!1,cssClass:null,animation:{effect:"none",speed:0},isBalloon:!0,showRoundedCorner:!1,enableRTL:!1,allowKeyboardNavigation:!0,tip:{size:{width:20,height:10},adjust:{xValue:0,yValue:0}},trigger:"hover",create:null,click:null,destroy:null,hover:null,tracking:null,beforeOpen:null,beforeClose:null,open:null,close:null},this.dataTypes={enabled:"boolean",closeMode:"enum",autoCloseTimeout:"number",trigger:"enum",position:{stem:"data",target:"data"},associate:"enum",collision:"enum",showShadow:"boolean",animation:{effect:"enum",speed:"number"},isBalloon:"boolean",showRoundedCorner:"boolean",enableRTL:"boolean",allowKeyboardNavigation:"boolean",tip:{size:{width:"number",height:"number"},adjust:{xValue:"number",yValue:"number"}}},this.isTrack=!0,this._isCancel=!1,this._isHidden=!0,this.arrowValue={left:0,top:0,width:0,height:0,display:null},this.tooltipPos={width:0,height:0,left:0,top:0,bottom:0,right:0,position:"absolute"},this.targetPos={width:0,height:0,left:0,top:0,bottom:0,right:0,position:"absolute"},this.mouseTimer=null,this.positionTarget=null,this.positionTooltip=null,this.containerSize=null,this._createTitle=function(){this.tooltipTitle=ej.buildTag("div.e-def e-header"," ",{},{});this.tooltipHeader=ej.buildTag("div"," ",{},{});t(this.tooltipTitle).html(this.model.title).appendTo(this.tooltipHeader)},n&&(n.jquery||(n=t("#"+n)),n.length)?t(n).ejTooltip(r).data(this.PluginName):void 0}return n(r,i),r.prototype.setModel=function(n,t){this.setModel(n,t)},r.prototype.option=function(n,t){this.option(n,t)},r.prototype.triggerEvents=function(n,t){var i,r,u,f,e,o,s;switch(n){case"click":r=t;i=this._trigger(n,r);break;case"hover":u=t;i=this._trigger(n,u);break;case"tracking":f=t;i=this._trigger(n,f);break;case"beforeOpen":e=t;i=this._trigger(n,e);break;case"open":o=t;i=this._trigger(n,o);break;case"beforeClose":case"close":s=t;i=this._trigger(n,s)}return i},r.prototype.enable=function(){this.tooltip.hasClass("e-disable")&&(this.model.enabled=!0,this.tooltip.removeClass("e-disable"))},r.prototype.disable=function(){this.tooltip.hasClass("e-disable")||(this.model.enabled=!1,this.tooltip.addClass("e-disable"))},r.prototype.show=function(n,i){if(this.model.enabled){if(ej.isNullOrUndefined(n)){var r=this.model.target==null?this.element:t(this.element).find(this.model.target+":first");this._positionElement(r)}else this._positionElement(n);ej.isNullOrUndefined(i)?this._showTooltip():typeof i=="string"?t(this.tooltip).show(i):typeof i=="function"&&i.call.apply(this.tooltip)}},r.prototype.hide=function(n){this.model.enabled&&(ej.isNullOrUndefined(n)?this._hideTooltip():typeof n=="string"?t(this.tooltip).hide(n):typeof n=="function"&&n.call.apply(this.tooltip))},r.prototype._destroy=function(){this.mouseTimer&&clearTimeout(this.mouseTimer);this.timer&&clearTimeout(this.timer);t(this.tooltip).remove();this.tooltip=null},r.prototype._setModel=function(n){var i,r;for(i in n)switch(i){case"height":this._setHeight(n[i]);break;case"width":this._setWidth(n[i]);break;case"enabled":this._enabled(n[i]);break;case"content":this._setContent(n[i]);break;case"title":this.model.title=n[i];this.model.title==null?(t(this.tooltipHeader).remove(),this.tooltipHeader=null,this.tooltipTitle=null,this.model.closeMode===ej.Tooltip.CloseMode.Sticky&&this._iconRender()):ej.isNullOrUndefined(this.tooltipHeader)?this._createHeader():t(this.tooltipTitle).html(this.model.title);this.tooltipPos.height=t(this.tooltip).outerHeight();break;case"associate":this.model.associate=n[i];this._wireMouseEvents(!1);this._wireMouseEvents(!0);break;case"position":this._setPosition(n[i]);break;case"collision":this.model.collision=n[i];break;case"closeMode":typeof n[i]!="undefined"&&(this.model.closeMode=n[i],this.model.closeMode==ej.Tooltip.CloseMode.Sticky?this._iconRender():(t(this.tooltipClose).remove(),this.tooltipClose=null),this.tooltipPos.height=t(this.tooltip).outerHeight());break;case"cssClass":this._setSkin(n[i]);break;case"showShadow":this._shadowEffect(n[i],this.model.position);break;case"isBalloon":ej.isNullOrUndefined(n[i])||(this.model.isBalloon=n[i],this.model.isBalloon?this._renderArrow():(t(this.tip).remove(),this.tip=null));break;case"animation":r=n[i];this.model.animation=t.extend(!0,this.model.animation,r);this.model.animation.effect!=ej.Tooltip.Effect.None?(this._off(t(this.tooltip),"mouseenter",this._onTooltipMouseEnter),this._off(t(this.tooltip),"mouseleave",this._onTooltipMouseLeave)):this.model.animation.effect==ej.Tooltip.Effect.None&&(this._on(t(this.tooltip),"mouseenter",this._onTooltipMouseEnter),this._on(t(this.tooltip),"mouseleave",this._onTooltipMouseLeave));break;case"enableRTL":this._setRTL(n[i]);break;case"target":this._wireTriggerEvents(!1);this.model.target=n[i];this._wireTriggerEvents(!0);this._renderTarget();break;case"trigger":this._setTrigger(n[i]);break;case"showRoundedCorner":this.model.showRoundedCorner=n[i];this._roundedCorner(n[i]);break;case"allowKeyboardNavigation":this.model.allowKeyboardNavigation=n[i];this.model.allowKeyboardNavigation?this._on(t(window),"keydown",this._keyDown):this._off(t(window),"keydown",this._keyDown)}},r.prototype._enabled=function(n){n?this.enable(n):this.disable(n);this.model.enabled=n},r.prototype._shadowEffect=function(n,i){this.model.showShadow=n;var r=null;if(t(this.tooltip).removeClass("e-tooltipShadowLeft e-tooltipShadowRight"),this.model.showShadow){if(this.model.isBalloon)switch(i.stem.horizontal){case"center":r=i.stem.vertical=="top"?"e-tooltipShadowLeft":i.stem.vertical=="bottom"?"e-tooltipShadowRight":"e-tooltipShadowLeft";break;case"right":r=i.target.horizontal=="center"&&i.stem.vertical=="top"?"e-tooltipShadowLeft":"e-tooltipShadowRight";break;case"left":r=i.target.horizontal=="center"&&i.stem.vertical=="bottom"?"e-tooltipShadowRight":"e-tooltipShadowLeft"}else r="e-tooltipShadowLeft";t(this.tooltip).addClass(r)}},r.prototype._setContent=function(n){this.model.content=n;t(this.tooltipContent).html(this.model.content);this.tooltipPos.height=t(this.tooltip).outerHeight();this.tooltipPos.width=t(this.tooltip).outerWidth()},r.prototype._setPosition=function(n){this.model.position.stem=t.extend(!0,this.model.position.stem,n.stem);this.model.position.target=t.extend(!0,this.model.position.target,n.target)},r.prototype._setTrigger=function(n){this._wireTriggerEvents(!1);this.model.trigger=n;this._wireTriggerEvents(!0)},r.prototype._init=function(){this.id=this.element[0].id;this.positionTarget=t.extend(!0,{},this.model.position.target);this.positionTooltip=t.extend(!0,{},this.model.position.stem);this.tipSize=t.extend(!0,{},this.model.tip.size);this._initialize();this._render();this.enable(this.model.enabled);this._wireEvents(!0)},r.prototype._initialize=function(){ej.isNullOrUndefined(this.model.target)?ej.isNullOrUndefined(this.model.content)&&!ej.isNullOrUndefined(this.element.attr("title"))&&(this.model.content=this.element.attr("title"),this.element.attr("data-content",this.model.content),this.element.removeAttr("title")):this._renderTarget()},r.prototype._wireEvents=function(n){var i=n?"_on":"_off";this._wireTriggerEvents(n);this.model.allowKeyboardNavigation&&this[i](t(window),"keydown",this._keyDown);this.model.target!=null?this[i](this.element,"scroll",this.model.target,this._hideTooltip):this[i](this.element,"scroll",this._hideTooltip);this[i](t(this.tooltip),"mouseenter",this._onTooltipMouseEnter);this[i](t(this.tooltip),"mouseleave",this._onTooltipMouseLeave);this[i](t(window),"resize",this._hideTooltip);this[i](t(window),"touchend",this._docTouchEndHandler)},r.prototype._wireTriggerEvents=function(n){var t=n?"_on":"_off",i;this.model.trigger==ej.Tooltip.Trigger.Focus?this.model.target!=null?this[t](this.element,"blur",this.model.target,this._hideTooltip):this[t](this.element,"blur",this._hideTooltip):this.model.target!=null?this[t](this.element,ej.isDevice()?"touchstart":"mouseleave",this.model.target,this._onMouseOut):this[t](this.element,ej.isDevice()?"touchstart":"mouseleave",this._onMouseOut);this._wireMouseEvents(n);i=this.model.trigger==ej.Tooltip.Trigger.Click?ej.isDevice()?"touchstart":"click":this.model.trigger==ej.Tooltip.Trigger.Focus?ej.isDevice()?"touchstart":"focus":ej.isDevice()?"touchstart":"mouseenter";this.model.target!=null?this[t](this.element,i,this.model.target,this._targetHover):this[t](this.element,i,this._targetHover)},r.prototype._wireMouseEvents=function(n){var t=n?"_on":"_off";(this.model.associate==ej.Tooltip.Associate.MouseEnter||this.model.associate==ej.Tooltip.Associate.MouseFollow)&&(this.model.target!=null?this[t](this.element,ej.isDevice()?"touchstart":"mousemove",this.model.target,this._tooltipMove):this[t](this.element,ej.isDevice()?"touchstart":"mousemove",this._tooltipMove))},r.prototype._render=function(){this.tooltip=ej.buildTag("div.e-tooltip-wrap e-widget","",{},{role:"tooltip","aria-readonly":"true","aria-hidden":"true","aria-describedby":this.id+"_content",id:this.id+"_Main"});this.tooltipInter=ej.buildTag("div.e-tipContainer","",{},{});this.tooltip.append(this.tooltipInter);this.model.isBalloon&&this._renderArrow();t(this.model.containment).append(this.tooltip);this._setHeight(this.model.height);this._setWidth(this.model.width);this._createHeader();this._tooltipContent();this.model.cssClass&&this.tooltip.addClass(this.model.cssClass);this.model.showRoundedCorner&&this._roundedCorner(this.model.showRoundedCorner);this.model.enableRTL&&this._setRTL(this.model.enableRTL);t(this.tooltip).css({top:"auto",left:"auto"});this.tooltipPos={width:t(this.tooltip).outerWidth(),height:t(this.tooltip).outerHeight(),left:t(this.tooltip).offset().left,top:t(this.tooltip).offset().top,position:"absolute"};ej.isNullOrUndefined(this.model.target)&&(this._containerCalc(this.element),this._positionElement(this.element))},r.prototype._containerCalc=function(n){ej.isNullOrUndefined(n)&&(n=this.element);var i=t(n).offset();this.containerSize={height:this.model.containment=="body"?t(window).innerHeight()||document.documentElement.clientHeight||document.body.clientHeight:t(this.model.containment).innerHeight(),width:this.model.containment=="body"?t(window).innerWidth()||document.documentElement.clientWidth||document.body.clientWidth:t(this.model.containment).innerWidth()};this.containerSize.left=this.model.containment!="body"?t(this.model.containment).css("position")=="static"?t(this.model.containment).offset().left-t(this.model.containment).offsetParent().offset().left:0:0;this.containerSize.top=this.model.containment!="body"?t(this.model.containment).css("position")=="static"?t(this.model.containment).offset().top-t(this.model.containment).offsetParent().offset().top:0:0;i.left-=this.model.containment!="body"?t(this.model.containment).css("position")=="static"?t(this.model.containment).offsetParent().offset().left:t(this.model.containment).offset().left:0;i.top-=this.model.containment!="body"?t(this.model.containment).css("position")=="static"?t(this.model.containment).offsetParent().offset().top:t(this.model.containment).offset().top:0;this.targetPos.left=i.left;this.targetPos.top=i.top},r.prototype._setHeight=function(n){this.model.height=n;!isNaN(+n)&&isFinite(n)?t(this.tooltip).css("height",n+"px"):t(this.tooltip).css("height",n);this.tooltipPos.height=t(this.tooltip).outerHeight()},r.prototype._setWidth=function(n){this.model.width=n;this.model.width!="auto"&&(n=!isNaN(+n)&&isFinite(n)?n+"px":n,t(this.tooltip).css("max-width",n),t(this.tooltip).css("min-width","0px"));t(this.tooltip).css("width",n);this.tooltipPos.height=t(this.tooltip).outerHeight()},r.prototype._setRTL=function(n){this.model.enableRTL=n;n?this.tooltip.addClass("e-rtl"):this.tooltip.removeClass("e-rtl")},r.prototype._setSkin=function(n){this.model.cssClass!=n&&(this.tooltip.removeClass(this.model.cssClass).addClass(n),this.model.cssClass=n)},r.prototype._roundedCorner=function(){this.model.showRoundedCorner?this.tooltip.addClass("e-corner"):this.tooltip.removeClass("e-corner")},r.prototype._renderArrow=function(){ej.isNullOrUndefined(this.tip)&&(this.tip=ej.buildTag("div.e-arrowTip"," ",{id:this.id+"_eTip"},{}),t(this.tip).append("<div class='e-arrowTipOuter'><\/div>").append("<div class='e-arrowTipInner'><\/div>"),t(this.tip).insertBefore(this.tooltipInter))},r.prototype._adjustArrow=function(n){var u,f,e=t(this.tooltip).width(),r=t(this.tooltip).height(),i=n.stem,s=n.target,o={tipHeight:0,tipWidth:0};s.horizontal=="right"||s.horizontal=="left"?(u=i.horizontal=="left"?-this.model.tip.size.height:i.horizontal=="right"?e:e/2-this.tipSize.width/2,f=i.horizontal!="center"?i.vertical=="top"?5:i.vertical=="center"?r/2-this.tipSize.width/2:r-5-this.tipSize.width:i.vertical=="top"?-this.tipSize.height:i.vertical=="bottom"?r:this.tooltipPos.height/2-this.tipSize.width/2,o=this._arrowBinding(n,"horizontal")):(f=i.vertical=="top"?-this.tipSize.height:i.vertical=="bottom"?r:r/2-this.tipSize.width/2,u=i.vertical=="center"?i.horizontal=="left"?-this.model.tip.size.height:e:i.horizontal=="left"?10:i.horizontal=="center"?this.tooltipPos.width/2-this.tipSize.width/2:e-10-this.tipSize.width,o=this._arrowBinding(n,"vertical"));this.arrowValue.left=u;this.arrowValue.top=f;t(this.tip).css({height:o.tipHeight+"px",width:o.tipWidth+"px",left:u+"px",top:f+"px",display:i.horizontal=="center"&&i.vertical=="center"?"none":"block"})},r.prototype._arrowBinding=function(n,i){var e=n.stem,l=i=="horizontal"?e.horizontal!="center":e.vertical=="center",u,f,o=t(this.tooltip).css("border-top-color"),s=t(this.tooltip).css("background-color"),h=this.model.tip.size.height,c=this.model.tip.size.height-1,r={"border-top":"none","border-bottom":"none","border-right":"none","border-left":"none"};return l?(u=this.model.tip.size.height,f=this.model.tip.size.width,t(this.tip).find(".e-arrowTipOuter").css(this._arrow(n,h,o,r,"horizontal")),t(this.tip).find(".e-arrowTipInner").css(this._arrow(n,c,s,r,"horizontal"))):(u=this.model.tip.size.width,f=this.model.tip.size.height,t(this.tip).find(".e-arrowTipOuter").css(this._arrow(n,h,o,r,"vertical")),t(this.tip).find(".e-arrowTipInner").css(this._arrow(n,c,s,r,"vertical"))),{tipHeight:f,tipWidth:u}},r.prototype._arrow=function(n,t,i,r,u){var f=n.stem,e=u=="horizontal"?f.horizontal=="right"?"0px":"1px":"1px",o=u=="horizontal"?"1px":f.vertical=="bottom"?"0px":"1px";return r["border-top"]=u=="horizontal"?t+"px solid transparent":f.vertical=="bottom"?t+"px solid "+i:"none",r["border-bottom"]=u=="horizontal"?t+"px solid transparent":f.vertical=="top"?t+"px solid "+i:"none",r["border-right"]=u=="horizontal"?f.horizontal=="left"?t+"px solid "+i:"none":t+"px solid transparent",r["border-left"]=u=="horizontal"?f.horizontal=="right"?t+"px solid "+i:"none":t+"px solid transparent",t==this.model.tip.size.height-1&&(r.left=e,r.top=o),r},r.prototype._iconRender=function(){this.model.closeMode==ej.Tooltip.CloseMode.Sticky&&(ej.isNullOrUndefined(this.tooltipClose)||t(this.tooltipClose).remove(),this.tooltipClose=ej.buildTag("div .e-icon"," ",{},{id:"_closeIcon"}),this.model.title!=null?t(this.tooltipClose).insertAfter(this.tooltipTitle).addClass("e-close"):t(this.tooltipClose).insertBefore(this.tooltipInter).addClass("e-cross-circle"),this._on(t(this.tooltipClose),"click",this._hideTooltip))},r.prototype._renderTarget=function(){this.targetElement=t(this.element).find(this.model.target);for(var n=0;n<this.targetElement.length;n++)ej.isNullOrUndefined(t(this.targetElement[n]).attr("title"))||(this.targetElement[n].setAttribute("data-content",this.targetElement[n].title),this.targetElement[n].removeAttribute("title"))},r.prototype._tooltipContent=function(){this.tooltipContent=ej.buildTag("div.e-tipcontent e-def","",{},{id:this.id+"_content"});t(this.tooltipContent).html(this.model.content).addClass("e-def");this.model.title!=null?t(this.tooltipContent).insertAfter(this.tooltipHeader):t(this.tooltipContent).appendTo(this.tooltipInter)},r.prototype._positionElement=function(n){this.tooltipPos.width=t(this.tooltip).outerWidth();this.tooltipPos.height=t(this.tooltip).outerHeight();this.targetPos.width=t(n).outerWidth();this.targetPos.height=t(n).outerHeight();this._containerCalc(n);this.model.associate==ej.Tooltip.Associate.Window?this._browserPosition():this.model.associate==ej.Tooltip.Associate.Axis?this._axisPosition():this.model.associate==ej.Tooltip.Associate.Target&&this._tooltipPosition(this.model.position);this.model.collision!=ej.Tooltip.Collision.None&&this.model.associate==ej.Tooltip.Associate.Target&&this._calcCollision(this.model.position,n)},r.prototype._browserPosition=function(){if(this.model.containment=="body"){this.containerSize={height:t(window).innerHeight()||document.documentElement.clientHeight||document.body.clientHeight,width:t(window).innerWidth()||document.documentElement.clientWidth||document.body.clientWidth};var i=t.extend(!0,{},this.model.position),n={position:"absolute",left:"auto",top:"auto",bottom:"auto",right:"auto"};ej.isNullOrUndefined(this.tip)||t(this.tip).css({display:"none"});this.model.position.target.horizontal=="right"?n.right=0:n.left=this.model.position.target.horizontal=="left"?0:this.containerSize.width/2-this.tooltipPos.width/2;this.model.position.target.vertical=="top"?n.top=0:this.model.position.target.vertical=="center"?n.top=this.containerSize.height/2-this.tooltipPos.height/2:n.bottom=0;this.model.showShadow&&this._shadowEffect(this.model.showShadow,i);t(this.tooltip).css(n)}},r.prototype._tooltipMove=function(n){if(this.model.closeMode==ej.Tooltip.CloseMode.None&&this.model.enabled){var t=this;if(this._isCancel)return;this.model.associate==ej.Tooltip.Associate.MouseFollow?this._mousePosition(n):this.model.associate==ej.Tooltip.Associate.MouseEnter&&(clearTimeout(this.mouseTimer),this.mouseTimer=setTimeout(function(){t.isTrack&&t._mousePosition(n)},300))}},r.prototype._mousePosition=function(n){var u,f,b,c;n.type=="touchstart"?(n.preventDefault(),u=n.touches[0].pageX,f=n.touches[0].pageY):n.type=="mousemove"&&(u=n.pageX,f=n.pageY);this.isCollision=!0;this._containerCalc(n.currentTarget);var l=0,a=0,e=0,i=t.extend(!0,{},this.model.position.stem),o=t.extend(!0,{},this.model.position),s={left:0,top:0},r={left:u,top:f},h={left:u,top:f},v=this.containerSize.left,y=this.containerSize.top,p=this.model.containment!="body"?u-t(this.model.containment).offset().left:u,w=this.model.containment!="body"?f-t(this.model.containment).offset().top:f;for(o.target.horizontal=o.target.vertical="center",this.model.containment!="body"&&(s=t(this.model.containment).css("position")=="static"?t(this.model.containment).offsetParent().offset():t(this.model.containment).offset()),h.left-=s.left,h.top-=s.top;this.isCollision;)if(r=t.extend(!0,{},h),b=this.model.isBalloon?i.vertical=="top"||i.vertical=="bottom"?5+this.tipSize.height/2:0:0,c=this.model.isBalloon?i.horizontal=="right"||i.horizontal=="left"?10+this.tipSize.width/2:0:0,l=this.model.tip.adjust.xValue!=0?this.model.tip.adjust.xValue:7,a=this.model.tip.adjust.yValue!=0?this.model.tip.adjust.yValue:10,e=this.model.isBalloon?i.horizontal!="center"?this.model.tip.size.height:i.vertical!="center"?this.model.tip.size.height:0:2,r.left+=i.horizontal=="right"?-this.tooltipPos.width:i.horizontal=="left"?0:-(this.tooltipPos.width/2),r.top+=i.vertical=="bottom"?-this.tooltipPos.height:i.vertical=="top"?0:-(this.tooltipPos.height/2),r.left+=i.vertical!="center"?i.horizontal=="right"?c:i.horizontal=="left"?-c:0:0,r.left+=i.vertical=="center"?i.horizontal=="right"?-e:i.horizontal=="left"?+(e+l):0:0,r.top+=i.vertical=="top"?+(e+a):i.vertical=="bottom"?-e:0,this.targetElement!=n.currentTarget&&(this.targetElement=n.currentTarget,(r.left<v||r.left+this.tooltipPos.width>v+this.containerSize.width)&&(this.positionTooltip.horizontal=p>=this.tooltipPos.width?"right":this.containerSize.width-p>=this.tooltipPos.width?"left":"center"),(r.top<y||r.top+this.tooltipPos.height>this.containerSize.height+y)&&(this.positionTooltip.vertical=w>=this.tooltipPos.height?"bottom":this.containerSize.height-w>=this.tooltipPos.height?"top":"center")),this.positionTooltip.horizontal!=i.horizontal||this.positionTooltip.vertical!=i.vertical)this.isCollision=!0,i=t.extend(!0,{},this.positionTooltip);else if(this.isCollision=!1,t(this.tooltip).css({top:r.top+"px",left:r.left+"px",position:"absolute",right:"auto",bottom:"auto"}),o.stem=t.extend(!0,{},this.positionTooltip),this.model.showShadow&&this._shadowEffect(this.model.showShadow,o),this.model.isBalloon&&this._adjustArrow(o),this._showTooltip(),this.model.associate==ej.Tooltip.Associate.MouseEnter&&(this.isTrack=!1),this.model.associate==ej.Tooltip.Associate.MouseFollow&&this.triggerEvents("tracking",{position:this.model.position,event:n}))return},r.prototype._axisPosition=function(){var r=t.extend(!0,{},this.model.position),u,f,n,i;typeof this.model.position.target.horizontal=="number"&&(u=this.model.position.target.horizontal.toString());typeof this.model.position.target.vertical=="number"&&(f=this.model.position.target.vertical.toString());n=parseInt(u);i=parseInt(f);ej.isNullOrUndefined(this.tip)||t(this.tip).css({display:"none"});this.model.showShadow&&this._shadowEffect(this.model.showShadow,r);this.model.isBalloon&&this._adjustArrow(r);isFinite(n)&&isFinite(i)&&t(this.tooltip).css({top:i,left:n,position:"absolute"})},r.prototype._tooltipPosition=function(n){var f=0,i=t.extend(!0,{},n.stem),u=t.extend(!0,{},n.target),r=t.extend(!0,{},this.targetPos),s=i.vertical==="top"||i.vertical==="bottom"?5+this.tipSize.width/2:0,h=i.horizontal==="right"||i.horizontal==="left"?10+this.tipSize.width/2:0,f=this.model.isBalloon?i.horizontal!=="center"?this.model.tip.size.height:i.vertical!=="center"?this.model.tip.size.height:0:0,e=this.model.tip.adjust.xValue!=0?this.model.tip.adjust.xValue:this.model.isBalloon?0:2,o=this.model.tip.adjust.yValue!=0?this.model.tip.adjust.yValue:this.model.isBalloon?0:2;r.left+=u.horizontal==="right"?this.targetPos.width:u.horizontal==="left"?0:this.targetPos.width/2;r.top+=u.vertical==="bottom"?this.targetPos.height:u.vertical==="top"?0:this.targetPos.height/2;r.left+=i.horizontal==="right"?-this.tooltipPos.width:i.horizontal==="left"?0:-(this.tooltipPos.width/2);r.top+=i.vertical==="bottom"?-this.tooltipPos.height:i.vertical==="top"?0:-(this.tooltipPos.height/2);r.left+=u.horizontal!=="center"?i.horizontal==="right"?-f:i.horizontal==="left"?f:0:i.vertical==="center"?i.horizontal==="right"?-f:i.horizontal==="left"?f:0:0;r.top+=u.horizontal==="center"?i.vertical==="bottom"?-f:i.vertical==="top"?f:0:i.horizontal==="center"?i.vertical==="bottom"?-f:i.vertical==="top"?f:0:0;r.left+=u.horizontal==="center"&&i.vertical!=="center"?i.horizontal==="right"?h:i.horizontal==="left"?-h:0:0;r.top+=u.horizontal!=="center"&&i.horizontal!=="center"?i.vertical==="top"?-s:i.vertical==="bottom"?s:0:0;r.left+=u.horizontal!=="center"?i.horizontal==="right"?-e:i.horizontal==="left"?e:0:i.vertical==="center"?i.horizontal==="right"?-e:i.horizontal==="left"?e:0:0;r.top+=u.horizontal==="center"?i.vertical==="bottom"?-o:i.vertical==="top"?o:0:i.horizontal==="center"?i.vertical==="bottom"?-o:i.vertical==="top"?o:0:0;this.tooltipPos.left=r.left;this.tooltipPos.top=r.top;this.model.collision===ej.Tooltip.Collision.None&&(this.model.isBalloon&&this._adjustArrow(n),this._shadowEffect(this.model.showShadow,n),t(this.tooltip).css({top:r.top+"px",left:r.left+"px",position:"absolute"}))},r.prototype._calcCollision=function(n,i){var n=t.extend(!0,{},n),r=t.extend(!0,{},n),s=this.model.tip.size.height,e=!0,u=this.model.containment!="body"?t(i).offset().left-t(this.model.containment).offset().left:t(i).offset().left,f=this.model.containment!="body"?t(i).offset().top-t(this.model.containment).offset().top:t(i).offset().top,o={topSpace:f,rightSpace:this.containerSize.width-(u+this.targetPos.width),bottomSpace:this.containerSize.height-(f+this.targetPos.height),leftSpace:u,centerRight:this.containerSize.width-(u+this.targetPos.width/2),centerLeft:u+this.targetPos.width/2,centerTop:f+this.targetPos.height/2,centerBottom:this.containerSize.height-(f+this.targetPos.height/2),tooltipWidth:this.tooltipPos.width+s,tooltipHeight:this.tooltipPos.height+s};if(this.model.collision===ej.Tooltip.Collision.Fit)this._collisionFit(n,o);else{while(e)r=this._collisionFlip(r,o),r.target.horizontal!=n.target.horizontal||r.target.vertical!=n.target.vertical||r.stem.horizontal!=n.stem.horizontal||r.stem.vertical!=n.stem.vertical?(this._tooltipPosition(r),n=t.extend(!0,{},r)):e=!1;e||(this.model.collision==ej.Tooltip.Collision.FlipFit?this._collisionFit(r,o):(this._adjustArrow(r),this._shadowEffect(this.model.showShadow,r),t(this.tooltip).css({top:this.tooltipPos.top+"px",left:this.tooltipPos.left+"px",position:"absolute"})))}},r.prototype._collisionFlip=function(n,i){var u=t.extend(!0,{},this.tooltipPos),r=t.extend(!0,{},n),o=t(this.model.containment).scrollLeft(),s=t(this.model.containment).scrollTop(),f=this.containerSize.left,e=this.containerSize.top;return(u.left+u.width>f+this.containerSize.width+o||u.left<f)&&(n.target.horizontal!="center"?r.target.horizontal=i.leftSpace>=i.tooltipWidth?"left":i.rightSpace>=i.tooltipWidth?"right":"center":r.stem.horizontal=i.centerLeft>=i.tooltipWidth?"right":i.centerRight>=i.tooltipWidth?"left":"center"),u.top<e&&(r.target.vertical=i.bottomSpace>=i.tooltipHeight?"bottom":"center"),u.top+u.height>this.containerSize.height+s+e&&(r.target.vertical=i.topSpace>=i.tooltipHeight?"top":"center"),(r.target.horizontal!=n.target.horizontal||r.target.vertical!=n.target.vertical)&&(r.stem.horizontal=r.target.horizontal=="center"?i.centerLeft>=i.tooltipWidth?"right":i.centerRight>=i.tooltipWidth?"left":"center":r.target.horizontal=="right"?"left":"right"),(r.target.vertical!=n.target.vertical||r.target.horizontal!=n.target.horizontal)&&(r.stem.vertical=r.target.vertical=="center"?i.centerTop>=i.tooltipHeight?"bottom":i.centerBottom>=i.tooltipHeight?"top":i.centerTop>i.centerBottom?"bottom":"top":r.target.vertical=="top"?"bottom":"top"),r},r.prototype._collisionFit=function(n,i){var r=t.extend(!0,{},this.tooltipPos),s=!1,h=!1,e=1,o=1,l=null,a=t(this.model.containment).scrollLeft(),c,u,f,v,y;c=this.model.containment=="body"?document.documentElement.scrollTop||document.body.scrollTop:t(this.model.containment).scrollTop();u=this.containerSize.left;f=this.containerSize.top;(r.left<u||r.left+r.width>this.containerSize.width+a+u)&&(e=r.left<u?u:r.left+r.width>this.containerSize.width+a+u?r.left-(r.left+r.width-(this.containerSize.width+u)):1,s=!0);(r.top<f||r.top+r.height>this.containerSize.height+c+f)&&(o=r.top<f?f:r.top+r.height>this.containerSize.height+c+f?r.top-(r.top+r.height-(this.containerSize.height+f)):1,h=!0);t(this.tooltip).css({top:o!=1?o+"px":r.top+"px",left:e!=1?e+"px":r.left+"px",position:"absolute"});this._adjustArrow(n);l={left:this.arrowValue.left,top:this.arrowValue.top,height:this.model.tip.size.height,width:this.model.tip.size.width,display:t(this.tip).css("display")};this.tooltipPos.top=o=o!=1?o:r.top;this.tooltipPos.left=e=e!=1?e:r.left;v=t(this.tooltip).width();y=t(this.tooltip).height();(s||h&&l.display!="none")&&(this.model.isBalloon&&(s&&(this.arrowValue.left=this._horizontalAdjustment(n,i)),h&&(this.arrowValue.top=this._verticalAdjustment(n,i))),this.arrowValue.left==-this.model.tip.size.height||this.arrowValue.left==v?t(this.tip).css({left:this.arrowValue.left+"px",top:this.arrowValue.top+"px",display:"block"}):this.arrowValue.top==-this.model.tip.size.height||this.arrowValue.top==y?t(this.tip).css({left:this.arrowValue.left+"px",top:this.arrowValue.top+"px",display:"block"}):t(this.tip).css({left:this.arrowValue.left+"px",top:this.arrowValue.top+"px",display:"none"}));this._shadowEffect(this.model.showShadow,n)},r.prototype._horizontalAdjustment=function(n,i){var u={left:this.arrowValue.left,top:this.arrowValue.top},f,r;return t(this.tooltip).css({display:"block"}),f=n.target.horizontal!="center"?this.model.tip.size.height:this.model.tip.size.height,r=n.target.horizontal!="center"&&n.stem.horizontal=="left"?t(this.tip).offset().left:n.target.horizontal!="center"&&n.stem.horizontal=="right"?t(this.tip).offset().left+f:t(this.tip).offset().left,t(this.tooltip).css({display:"none"}),r>i.leftSpace&&r+f<i.leftSpace+this.targetPos.width?u.left:((r>i.leftSpace+this.targetPos.width||r<i.leftSpace)&&(u.left=i.leftSpace+this.targetPos.width/2-parseInt(this.tooltipPos.left.toString())),u.left)},r.prototype._verticalAdjustment=function(n,i){var u={left:this.arrowValue.left,top:this.arrowValue.top,height:this.model.tip.size.height,width:this.model.tip.size.width,display:this.arrowValue.display},f,r;return t(this.tooltip).css({display:"block"}),f=n.target.horizontal!="center"?this.model.tip.size.height:this.model.tip.size.height,r=n.target.horizontal=="center"&&n.stem.vertical=="top"?t(this.tip).offset().top:t(this.tip).offset().top+f,t(this.tooltip).css({display:"none"}),r>i.topSpace&&r<i.topSpace+this.targetPos.height?u.top:((r<i.topSpace||r+f>i.topSpace+this.targetPos.height)&&(u.top=i.topSpace+this.targetPos.height/2-parseInt(this.tooltipPos.top.toString())),u.top)},r.prototype._createHeader=function(){this.model.title!=null&&(ej.isNullOrUndefined(this.tooltipTitle)&&this._createTitle(),ej.isNullOrUndefined(this.tooltipContent)?t(this.tooltipHeader).appendTo(this.tooltipInter).addClass("e-tooltipHeader"):t(this.tooltipHeader).insertBefore(this.tooltipContent).addClass("e-tooltipHeader"));this.model.closeMode==ej.Tooltip.CloseMode.Sticky&&this._iconRender()},r.prototype._hideTooltip=function(){var n;if(this._isHidden=!0,n=this.model.animation.speed!=0?this.model.animation.speed:this.model.animation.effect==ej.Tooltip.Effect.Slide?200:this.model.animation.effect==ej.Tooltip.Effect.Fade?800:0,this.model.enabled==!0&&t(this.tooltip).css("display")=="block"){if(this.triggerEvents("beforeClose",{}))return;if(this.model.animation.effect==ej.Tooltip.Effect.Fade?t(this.tooltip).fadeOut(n):this.model.animation.effect==ej.Tooltip.Effect.Slide?t(this.tooltip).slideUp(n):t(this.tooltip).css({display:"none"}),t(this.tooltip).css("display")=="none"&&t(this.tooltip).attr("aria-hidden","true").removeClass("e-customAnimation"),this.triggerEvents("close",{}))return}},r.prototype._showTooltip=function(){var r,i,u,f,n,e;this._isHidden&&(r=this.model.animation.speed!=0?this.model.animation.speed:this.model.animation.effect==ej.Tooltip.Effect.Slide?200:this.model.animation.effect==ej.Tooltip.Effect.Fade?800:0,this._isHidden=!1,t(this.tooltip).css("display")=="none"&&this.model.enabled==!0&&(this.model.animation.effect==ej.Tooltip.Effect.Fade?t(this.tooltip).fadeIn(r):this.model.animation.effect==ej.Tooltip.Effect.Slide?t(this.tooltip).slideDown(r):t(this.tooltip).css({display:"block"}),t(this.tooltip).css("display")=="block"&&(i=t(this.tooltip[0]).parents(),u=t("body").children(),t(u).each(function(n,t){i.push(t)}),f=t(this.model.target).parents(),t(f).each(function(n,t){i.push(t)}),n=Math.max.apply(n,t.map(i,function(n){if(t(n).css("position")!="static")return parseInt(t(n).css("z-index"))||1})),!n||n<1e4?n=1e4:n+=1,t(this.tooltip).attr("aria-hidden","false").css({zIndex:n}),this.model.animation.effect==ej.Tooltip.Effect.None&&t(this.tooltip).addClass("e-customAnimation"),e=this._getScrollableParents(),this._on(e,"scroll",this._hideTooltip)),this.triggerEvents("open",{})))},r.prototype._getScrollableParents=function(){return t(this.element).parentsUntil("html").filter(function(){return t(this).css("overflow")!="visible"}).add(t(window))},r.prototype._tooltipAuto=function(){var n=this;this.timer=setTimeout(function(){n._hideTooltip()},n.model.autoCloseTimeout)},r.prototype._beforeOpenTooltip=function(n){this.positionTooltip=t.extend(!0,{},this.model.position.stem);this.positionTarget=t.extend(!0,{},this.model.position.target);this.targetElement=this.element;ej.isNullOrUndefined(this.model.target)||ej.isNullOrUndefined(t(n.currentTarget).attr("data-content"))||(this.model.content=t(n.currentTarget).attr("data-content"),this._setContent(this.model.content))},r.prototype._targetHover=function(n){if(this.isTrack=!0,this.model.enabled)if(this._isHidden||(ej.browserInfo().name=="msie"||ej.browserInfo().name=="edge")&&this.model.associate==ej.Tooltip.Associate.MouseFollow){if(this.tooltip.stop(!0,!0),this.triggerEvents("beforeOpen",{event:n})){this._isCancel=!0;return}this._isCancel=!1;this._beforeOpenTooltip(n);this.model.associate!=ej.Tooltip.Associate.MouseEnter&&this.model.associate!=ej.Tooltip.Associate.MouseFollow?(ej.isNullOrUndefined(this.model.target)?this._positionElement(this.element):this._positionElement(n.currentTarget),clearTimeout(this.timer),this._showTooltip(),this.model.closeMode==ej.Tooltip.CloseMode.Auto&&this._tooltipAuto(),n.type=="click"?this.triggerEvents("click",{event:n}):this.triggerEvents("hover",{event:n})):this.isTrack=!0}else ej.isNullOrUndefined(this.model.target)||this._positionElement(n.currentTarget)},r.prototype._onMouseOut=function(){this.model.enabled&&!this._isHidden&&(this.model.closeMode==ej.Tooltip.CloseMode.None&&this._hideTooltip(),clearTimeout(this.mouseTimer));this.isTrack=!1},r.prototype._onTooltipMouseEnter=function(){var n=this;this.model.enabled&&this.model.animation.effect==ej.Tooltip.Effect.None&&t(n.tooltip).css({display:"block"})},r.prototype._onTooltipMouseLeave=function(){var n=this;this.model.enabled&&this.model.animation.effect==ej.Tooltip.Effect.None&&n.model.closeMode==ej.Tooltip.CloseMode.None&&t(n.tooltip).css({display:"none"})},r.prototype._docTouchEndHandler=function(n){t(n.target).closest(".e-tooltip").length||this.model.closeMode!=ej.Tooltip.CloseMode.None||this._hideTooltip()},r.prototype._keyDown=function(n){var t=n.keyCode?n.keyCode:n.which?n.which:n.charCode;if(this.model.enabled)switch(t){case 27:n.preventDefault();this._hideTooltip()}},r}(ej.WidgetBase);window.ej.widget("ejTooltip","ej.Tooltip",new i);window.ejTooltip=null})(jQuery);ej.Tooltip.CloseMode={Auto:"auto",None:"none",Sticky:"sticky"};ej.Tooltip.Effect={Slide:"slide",Fade:"fade",None:"none"};ej.Tooltip.Trigger={Hover:"hover",Click:"click",Focus:"focus"};ej.Tooltip.Collision={Flip:"flip",FlipFit:"flipfit",None:"none",Fit:"fit"};ej.Tooltip.Associate={Window:"window",MouseFollow:"mousefollow",MouseEnter:"mouseenter",Target:"target",Axis:"axis"},function(n,t,i){t.widget("ejTreeView","ej.TreeView",{_rootCSS:"e-treeview",element:null,model:null,validTags:["ul","div"],_addToPersist:["expandedNodes","checkedNodes","selectedNodes"],_setFirst:!1,_requiresID:!0,defaults:{allowMultiSelection:!1,showCheckbox:!1,enableAnimation:!0,allowDragAndDrop:!1,htmlAttributes:{},allowDropChild:!0,allowDropSibling:!0,allowDragAndDropAcrossControl:!0,allowEditing:!1,allowKeyboardNavigation:!0,items:null,fields:{dataSource:null,query:null,tableName:null,child:null,id:"id",parentId:"parentId",text:"text",spriteCssClass:"spriteCssClass",expanded:"expanded",hasChild:"hasChild",selected:"selected",linkAttribute:"linkAttribute",imageAttribute:"imageAttribute",htmlAttribute:"htmlAttribute",imageUrl:"imageUrl",isChecked:"isChecked"},autoCheckParentNode:!1,loadOnDemand:!1,cssClass:"",template:null,enableRTL:!1,expandOn:"dblclick",enablePersistence:!1,enabled:!0,expandedNodes:[],checkedNodes:[],selectedNode:-1,selectedNodes:[],width:null,height:null,autoCheck:!0,enableMultipleExpand:!0,fullRowSelect:!1,sortSettings:{allowSorting:!1,sortOrder:"ascending"},nodeClick:null,beforeExpand:null,nodeExpand:null,beforeCollapse:null,nodeCollapse:null,beforeSelect:null,nodeSelect:null,nodeUnselect:null,nodeCheck:null,nodeUncheck:null,inlineEditValidation:null,beforeEdit:null,nodeEdit:null,keyPress:null,nodeDragStart:null,nodeDrag:null,nodeDragStop:null,nodeDropped:null,beforeAdd:null,nodeAdd:null,beforeDelete:null,nodeDelete:null,beforeCut:null,nodeCut:null,beforePaste:null,nodePaste:null,beforeLoad:null,loadSuccess:null,loadError:null,ready:null,create:null,destroy:null},dataTypes:{allowMultiSelection:"boolean",cssClass:"string",showCheckbox:"boolean",enableAnimation:"boolean",allowDragAndDrop:"boolean",allowDropChild:"boolean",allowDragAndDropAcrossControl:"boolean",allowEditing:"boolean",allowKeyboardNavigation:"boolean",autoCheckParentNode:"boolean",loadOnDemand:"boolean",enableRTL:"boolean",expandOn:"string",enablePersistence:"boolean",enableMultipleExpand:"boolean",fullRowSelect:"boolean",items:"data",fields:{dataSource:"data",query:"data",child:"data"},expandedNodes:"array",checkedNodes:"array",selectedNode:"number",selectedNodes:"array",htmlAttributes:"data",sortSettings:{allowSorting:"boolean",sortOrder:"enum"}},observables:["fields.dataSource"],dataSource:t.util.valueFunction("fields.dataSource"),_setModel:function(i){var r,l,s,h,c,e,f,u,o,a;for(r in i)switch(r){case"allowMultiSelection":this.model.allowMultiSelection=i[r];this.model.allowMultiSelection||(l=n(this._liList[this.model.selectedNodes[0]]),this._unselectAll(),this._isRender=!1,this._nodeSelectionAction(l),this._isRender=!0);break;case"cssClass":this._changeSkin(i[r]);break;case"fields":if(this._deepWatch&&!t.isNullOrUndefined(i[r].dataSource)&&JSON.stringify(this._oldDataSource)==JSON.stringify(typeof i[r].dataSource=="function"?i[r].dataSource():i[r].dataSource))return;this._unWireEvents();h=this.element.hasClass("e-js")?!1:!0;c=h?this.element.children("ul"):this.element;c.empty();this.model.fields==null||i[r]==null?this.model.fields=i[r]:this._extendFields(this.model.fields,i[r]);this.model.expandedNodes=[];this.model.checkedNodes=[];this.model.selectedNodes=[];this.model.selectedNode=-1;this._persistValues(this.model.expandedNodes,"expandedNodes");this._persistValues(this.model.checkedNodes,"checkedNodes");this._persistValues(this.model.selectedNodes,"selectedNodes");this._newDataSource=this.dataSource();!t.isNullOrUndefined(this.model.fields)&&this.dataSource()!=null?this._checkDataBinding():this._initialize();h&&(s=this.element.children(".e-treeview-ul"),c.append(s.children()),s.remove());break;case"allowDragAndDropAcrossControl":this.model.allowDragAndDropAcrossControl=i[r];this._enableDragDrop();break;case"enabled":this._enabledAction(i[r]);break;case"showCheckbox":i[r]?(this.model.showCheckbox=i[r],this._showCheckBox(),this.model.enabled||this.element.find(".nodecheckbox").ejCheckBox("disable")):(this.element.find(".e-item > div > .e-chkbox-wrap").remove(),this._updateCheckedNodes());break;case"autoCheck":this.model.autoCheck=i[r];break;case"autoCheckParentNode":this.model.autoCheckParentNode=i[r];break;case"expandedNodes":if(u=i[r].length,e=JSON.parse(JSON.stringify(this.model.expandedNodes)),u>0)for(this._expandNodes(i[r]),f=0,u=e.length;f<u;f++)i[r].indexOf(e[f])==-1&&this._collapseNode(n(this._liList[e[f]]));else u==0&&this._collapseAll();i[r]=this.model.expandedNodes;break;case"checkedNodes":if(this.model.showCheckbox)if(u=i[r].length,e=JSON.parse(JSON.stringify(this.model.checkedNodes)),u>0)for(this._checkedNodes(i[r]),f=0,u=e.length;f<u;f++)i[r].indexOf(e[f])==-1&&this._nodeUncheck(n(this._liList[e[f]]).find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0]);else u==0&&this._uncheckAll();i[r]=this.model.checkedNodes;break;case"expandOn":this._off(this.element,this._isDevice&&n.isFunction(n.fn.tap)?this._touchExpandOn:this.model.expandOn,this._expandEventHandler);this._assignTouchExpandOn(i[r]);this._on(this.element,this._isDevice&&n.isFunction(n.fn.tap)?this._touchExpandOn:i[r],this._expandEventHandler);break;case"allowEditing":this._preventEditable();i[r]&&this._allowEditable();break;case"allowKeyboardNavigation":o=i[r]?"_on":"_off";this[o](this.element,"keydown",this._KeyPress);break;case"allowDragAndDrop":this.model.allowDragAndDrop=i[r];i[r]?this._addDragableClass():this._preventDraggable();break;case"allowDropChild":this.model.allowDropChild=i[r];i[r]?this._addDragableClass():this._preventDropChild();break;case"allowDropSibling":this.model.allowDropSibling=i[r];i[r]?this._addDragableClass():this._preventDropSibling();break;case"enableRTL":this.model.enableRTL=i[r];a=this.element.is("UL")?this.element.parent(".e-treeview-wrap"):this.element;o=this.model.enableRTL?"addClass":"removeClass";a[o]("e-rtl");break;case"height":this.element.is("ul")?this.element.parent().height(i[r]):this.element.height(i[r]);break;case"width":this.element.is("ul")?this.element.parent().width(i[r]):this.element.width(i[r]);break;case"selectedNode":case"selectedNodes":this.model.selectedNodes=r=="selectedNode"?[i[r]]:i[r];this.element.find("a.e-text.e-active").removeClass("e-node-focus e-active").closest("li").attr("aria-selected",!1);this._doSelectNodes(this.model.selectedNodes,!1);r!="selectedNode"&&(i[r]=this.model.selectedNodes);break;case"htmlAttributes":this._addAttr(i[r]);break;case"enableMultipleExpand":i[r]||this.collapseAll();this.model.enableMultipleExpand=i[r];break;case"sortSettings":n.extend(this.model.sortSettings,i[r]);t.isNullOrUndefined(this.model.fields)||this.dataSource()==null||(this.model.expandedNodes=[],this.model.checkedNodes=[],this.model.selectedNodes=[],this._checkDataBinding());break;case"fullRowSelect":this._wholeRowEvents("_off");this.model.fullRowSelect=i[r];this.model.fullRowSelect?this._addWholeRowWrap():this._removeWholeRowWrap();this._doWholeRowAction();this._wholeRowEvents("_on")}},_destroy:function(){this.element.html("");this._cloneElement.removeClass("e-treeview e-js e-treeview-wrap");var t=this.element.is("UL")?this.element.parent(".e-treeview-wrap"):this.element;t.replaceWith(this._cloneElement);n("#"+this._id+"_WaitingPopup").remove();window.localStorage?(window.localStorage.removeItem(this._id+"_childNodes"),window.localStorage.removeItem(this._id+"_persistedValues")):window.cookie&&(document.cookie=this._id+"_childNodes=; expires=Thu, 01 Jan 1970 00:00:00 UTC",document.cookie=this._id+"_persistedValues=; expires=Thu, 01 Jan 1970 00:00:00 UTC")},_init:function(){var i,r,n;this._cloneElement=this.element.clone();this._dataSource=[];this._fragment=[];this._templateType="";this._indexID=0;this._newDataSource=this.dataSource();this._id=this.element.prop("id");this._treeList=[];this._isTextbox=!1;this._isDevice=this._checkDevice();this._deepWatch=this.element.attr("e-deepwatch")==="true"&&!(this.dataSource()instanceof t.DataManager)?!0:!1;i=t.browserInfo();this._isIE8=i.name=="msie"&&i.version=="8.0"?!0:!1;this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this.dataSource())));this._assignTouchExpandOn(this.model.expandOn);this.model.enablePersistence&&(r=this._getCookies("_persistedValues"),r||(n={selectedNodes:[],expandedNodes:[],checkedNodes:[]},n=this._updatePersistAttr(n),this._setCookies("_persistedValues",JSON.stringify(n))));t.isNullOrUndefined(this.model.fields)||this.dataSource()==null?(this._initialize(),this._completeRendering()):this._checkDataBinding()},_initialize:function(){this._cutNode=null;this._beforeEditText=null;this._CurrenctSelectedNodes=[];this._isLoaded=!1;this._renderMultiTouchDialog();this.element.is("ul")?this._createWrapper():(this.element.addClass("e-treeview-wrap e-widget").attr("tabindex",0).children("ul:first").addClass("e-ul e-box").attr("role","tree"),this.model.width!=null&&this.element.width(this.model.width),this.model.height!=null&&this.element.height(this.model.height),this.model.enableRTL&&this.element.addClass("e-rtl"),this.model.cssClass!=null&&this.element.addClass(this.model.cssClass),this._addAttr(this.model.htmlAttributes));this._elementSettings();this._beforeBaseClass();this.dataSource()==null&&(this._addBaseClass(),this._controlRender());this._addWholeRowWrap();this._isIE8&&(this.element.is("UL")?this.element.parent(".e-treeview-wrap").addClass("e-ie8"):this.element.addClass("e-ie8"));this._finalize()},_completeRendering:function(){this._treeList.length!=0||this._isLoaded||(this._finalizeNode(),this._enabledAction(this.model.enabled),this._triggerEvent("ready",{element:this.element[0]}),this._isLoaded=!0)},_addWholeRowWrap:function(){this.model.fullRowSelect&&(this.element.is("UL")?this.element.parent(".e-treeview-wrap").addClass("e-fullrow-wrap"):this.element.addClass("e-fullrow-wrap"))},_removeWholeRowWrap:function(){this.element.is("UL")?this.element.parent(".e-treeview-wrap").removeClass("e-fullrow-wrap"):this.element.removeClass("e-fullrow-wrap")},_doWholeRowAction:function(){var t,r,i,u;if(this.model.fullRowSelect)for(t=0,r=this._liList.length;t<r;t++)i=n(this._liList[t]),i[0]!=null&&(u=i.find("> .e-text-wrap"),this._renderWholeRow(i,u));else this.element.find(".e-fullrow").remove()},_renderWholeRow:function(t,i){if(t&&this.model.fullRowSelect){var r=document.createElement("div");r.setAttribute("class","e-fullrow");i?n(r).insertAfter(i):t[0].appendChild(r)}},_extendFields:function(t,i){if(t==null||i==null)t=i;else if(t.child==null||i.child==null)n.extend(t,i);else{this._extendFields(t.child,i.child);var r=t.child;n.extend(t,i);n.extend(t.child,r)}},_checkDevice:function(){return t.isDevice()&&t.isTouchDevice()},_assignTouchExpandOn:function(n){this._touchExpandOn=n=="dblclick"?"doubletap":n=="click"?"tap":n},_renderMultiTouchDialog:function(){var i,r,u;this._customPop=t.buildTag("div.e-fe-popup","",{display:"none"});i=t.buildTag("div.e-content");r=t.buildTag("div.e-downtail e-tail");this.model.allowMultiSelection&&(u=t.buildTag("span.e-rowselect e-icon"),i.append(u));this._customPop.append(i);this._customPop.append(r);this.element.is("ul")||this.element.append(this._customPop);this._on(i,this._isDevice&&n.isFunction(n.fn.tap)?"touchstart":"mousedown",this._popupClick)},_popupClick:function(){var n=this._customPop.find(".e-rowselect");n.hasClass("e-spanclicked")?this._hidePopup():(this._isPopup=!0,n.addClass("e-spanclicked"))},_hidePopup:function(){this._customPop!=null&&this._customPop.is(":visible")&&(this._customPop.find(".e-rowselect").removeClass("e-spanclicked"),this._customPop.hide(),this._isPopup=!1)},_elementSettings:function(){var n=this.element.is("UL")?this.element.parent(".e-treeview-wrap"):this.element;this.element.is("ul")&&n.attr("role","tree")},_beforeBaseClass:function(){var t=this.element.is("UL")?this.element.parent(".e-treeview-wrap")[0]:this.element[0];this._ulList=n(t.querySelectorAll("ul"));this._liList=n(t.querySelectorAll("li"))},_createWrapper:function(){var n=this.wrapper=t.buildTag("div.e-treeview-wrap e-widget "+this.model.cssClass,"","",{tabindex:0});this.model.width!=null&&n.width(this.model.width);this.model.height!=null&&n.height(this.model.height);this.model.enableRTL&&n.addClass("e-rtl");n.insertAfter(this.element);n.append(this.element.addClass("e-ul e-box").attr("tabindex",0));this.element.is("ul")&&n.append(this._customPop);this._addAttr(this.model.htmlAttributes)},_addAttr:function(t){var i=this;n.map(t,function(n,t){t=="class"?i.element.addClass(n):t=="disabled"&&n=="disabled"?i._enabledAction(!1):i.element.attr(t,n)})},_changeSkin:function(n){if(this.model.cssClass!=n){var t=this.element.is("UL")?this.element.parent(".e-treeview-wrap"):this.element;t.removeClass(this.model.cssClass).addClass(n);t.find(".e-item > div > .e-chkbox-wrap").removeClass(this.model.cssClass).addClass(n);this._waitingPopup&&this._waitingPopup.option("cssClass",n)}},_enabledAction:function(n){this.model.enabled=n;n?(this.element.removeClass("e-disable"),this._wireEvents()):(this.element.addClass("e-disable"),this._unWireEvents())},_checkDataBinding:function(){this.dataSource()instanceof t.DataManager?this._initDataSource():(this._ensureDataSource(this.dataSource()),this._initialize(),this._completeRendering())},_initDataSource:function(){this.element.ejWaitingPopup({cssClass:this.model.cssClass});this._waitingPopup=this.element.ejWaitingPopup("instance");this._waitingPopup.maindiv.addClass("e-tree-popup");var n=this,t,r;this.element.ejWaitingPopup("refresh");this.element.ejWaitingPopup("show");this.dataSource().ready!=i?this.dataSource().ready.done(function(t){n._initAfterDataSource(t)}):(r=this._columnToSelect(this.model.fields),t=this.dataSource().executeQuery(r),t.done(function(t){n._initAfterDataSource(t)}))},_initAfterDataSource:function(n){var i=this;i.element.ejWaitingPopup("hide");i.retriveData=n.xhr&&n.xhr.responseJSON&&n.xhr.responseJSON.d?n.xhr.responseJSON.d:n.result?n.result:[];i._typeOfFieldId=i.retriveData[0]?(typeof t.getObject(i.model.fields.id,i.retriveData[0])).toLowerCase():"";i._ensureDataSource(i.retriveData);i._newDataSource=JSON.parse(JSON.stringify(i.retriveData));i._initialize();i.dataSource().dataSource.offline||!i.model.loadOnDemand&&t.isNullOrUndefined(i.model.fields.child)||(i._templateType=2);(i.model.loadOnDemand||t.isNullOrUndefined(i.model.fields.child))&&i._completeRendering()},_columnToSelect:function(n){var u=[],r=t.Query(),i;if(n.query||t.isNullOrUndefined(n.tableName))r=n.query?n.query.clone():r;else{for(i in n)i!=="tableName"&&i!=="child"&&i!=="dataSource"&&n[i]&&u.push(n[i]);u.length>0&&r.select(u);this.dataSource().dataSource.url.match(n.tableName+"$")||t.isNullOrUndefined(n.tableName)||r.from(n.tableName)}return r},_ensureDataSource:function(n){n=this._getSortAndFilterList(this.model.fields,n);this.currentSelectedData=n;this._renderTemplate(n);this.element.is("ul")?this.element.html(this._fragment.firstChild.children):this.element.html(this._fragment)},_getTemplateType:function(n,r){for(var u=0,f=n.length;u<f;u++){if(t.getObject(r.parentId,n[u])!==i||t.getObject(r.hasChild,n[u])!==i)return 1;if(n[u].hasOwnProperty("child"))return 2}return 1},_groupingObjects:function(n,t){for(var u,r={},f=[],i=0,e=n.length;i<e;i++)u=JSON.stringify(t(n[i])),r[u]=r[u]||[],r[u].push(n[i]);for(i in r)f.push(r[i]);return f},_renderTemplate:function(n){this._onlineData=!1;this._loadOnDemandNodes=!1;var i=this;this._templateType=this._getTemplateType(n,this.model.fields);this._dataSource=this._templateType==1?this._groupingObjects(n,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(i.model.fields.parentId,n)].toString()]}):n;this._templateNodeCreation(n,this.model.fields)},_templateNodeCreation:function(i,r){var o,u,f,s,e;if(this._fragment=document.createDocumentFragment(),o=document.createElement("ul"),this._fragment.appendChild(o),u=this._fragment.firstChild,(this._onlineData||this._loadOnDemandNodes)&&(u.className="e-treeview-ul",u.setAttribute("role","group"),n(u).attr("style","display:none")),this.dataSource()!=null){for(f=0,s=i.length;f<s;f++)i[f]&&(e=t.getObject(this.model.fields.parentId,i[f]),(t.isNullOrUndefined(e)||e==0||this._loadOnDemandNodes)&&u.appendChild(this._genTemplate(i[f],r)));n(u).find(".e-item:first-child:not(:last-child)").addClass("first");n(u).find(".e-item:last-child").addClass("last")}},_onlineDataSource:function(t,i,r){this._loadOnDemandNodes=!0;this._templateNodeCreation(t,r);var u=this.element.find(".e-item#"+i);u[0]!=null&&(n(u[0]).append(this._fragment),u.children().find("> div:first").addClass("e-icon e-plus"),this._finalizeLoadOnDemand(u));this._onlineData=!1},_genTemplate:function(i,r){var nt=document.createDocumentFragment(),u,tt,e,o,s,l,a,v,y,p,h,w,f,it,rt,b,k,d,g,c,ut;if(tt=document.createElement("li"),nt.appendChild(tt),u=nt.firstChild,u.id=t.getObject(r.id,i),u.id&&u.id!="undefined"||(u.id=""),u.setAttribute("role","treeitem"),l=t.getObject(r.htmlAttribute,i),l&&this._setAttributes(l,u),u.className+=" e-item",o=document.createElement("a"),a=t.getObject(r.imageUrl,i),v=t.getObject(r.spriteCssClass,i),a?(e=document.createElement("img"),e.className="e-align",e.src=a,y=t.getObject(r.imageAttribute,i),y&&this._setAttributes(y,e)):v&&(e=document.createElement("span"),e.className=v),this.model.template){if(e&&o.appendChild(e),typeof n.fn.render!="function")throw"Error : JsRender dependecy script missing";o.innerHTML+=this._renderEjTemplate(this.model.template,i)}else p=t.getObject(r.text,i),p?n(o).text(p):n(o).text("undefined"),e&&o.insertBefore(e,o.lastChild);if(h=t.getObject(r.linkAttribute,i),h&&(typeof h=="object"?this._setAttributes(h,o):o.href=h),u.appendChild(o),t.getObject(r.expanded,i)&&(u.className+=" expanded"),t.getObject(r.selected,i)&&(u.className+=" selected"),w=t.getObject(r.isChecked,i),t.isNullOrUndefined(w)||(u.className+=w?" checked":" unchecked"),u.setAttribute("aria-selected",!1),u.setAttribute("aria-expanded",!1),this.dataSource()instanceof t.DataManager)this._updateElement(u,!0),this.model.showCheckbox&&this._checkboxOnTemplate(u.children[0]),this.model.loadOnDemand?(t.getObject(r.hasChild,i)||i.hasOwnProperty("child"))&&(u.children[0].firstChild.className="e-icon e-plus"):!t.isNullOrUndefined(r.child)&&r.child.dataSource instanceof t.DataManager?(f=this,rt=r.child.parentId?r.child.parentId:f.model.fields.parentId,b,b=r.id?r.id:this.model.fields.id,this._treeList.push("false"),k=t.getObject(b,i),it=this._executeDataQuery(r.child,rt,this._typeOfFieldId=="number"?parseInt(k):k),it.done(function(n){if(f._treeList.pop(),s=n.xhr&&n.xhr.responseJSON&&n.xhr.responseJSON.d?n.xhr.responseJSON.d:n.result?n.result:[],s=f._getSortAndFilterList(r.child,s),s&&s.length>0){f._onlineData=!0;var t=s[0][r.child.parentId];f._updateRemoteData(f._newDataSource,t,s,f.model.fields);f._onlineDataSource(s,t,r.child)}f._treeList.length==0&&f._completeRendering()})):t.isNullOrUndefined(this.model.fields.child)&&this._childNodeCreation(i,u,r);else if(this.model.loadOnDemand){if(this._updateElement(u,!0),(t.getObject(r.hasChild,i)||i.hasOwnProperty("child"))&&(u.children[0].firstChild.className="e-icon e-plus"),this.model.showCheckbox&&this._checkboxOnTemplate(u.children[0]),t.getObject(r.expanded,i)&&this._childNodeCreation(i,u,r),this.model.enablePersistence&&(d=this._getCookies("_childNodes"),d))for(g=JSON.parse(d),c=0,ut=g.length;c<ut;c++)if(g[c].toString()==t.getObject(r.id,i).toString()){this._childNodeCreation(i,u,r);break}}else this._onlineData||(this._updateElement(u,!0),this.model.showCheckbox&&this._checkboxOnTemplate(u.children[0]),this._childNodeCreation(i,u,r));return u},_childNodeCreation:function(i,r,u){var f,s,h,o,e,c;if(f=this._templateType==2?!t.isNullOrUndefined(i.child)&&i.child.length>0&&i.child:this._getChildNodes(this._dataSource,{id:t.getObject(u.id,i)}),!t.isNullOrUndefined(f)&&f.length>0){for(r.children[0].firstChild.className="e-icon e-plus",s=document.createDocumentFragment(),h=document.createElement("ul"),s.appendChild(h),o=s.firstChild,o.className="e-treeview-ul",o.setAttribute("role","group"),n(o).attr("style","display:none"),e=0,c=f.length;e<c;e++)f[e]&&t.getObject(this.model.fields.parentId,[f[e]])!=0&&o.appendChild(this._genTemplate(f[e],u));r.appendChild(h)}},_checkboxOnTemplate:function(n){n.parentElement.id==""&&(n.parentElement.id=this._id+"_"+this._indexID,this._indexID++);var t=document.createElement("input");t.setAttribute("type","checkbox");t.setAttribute("class","nodecheckbox");t.setAttribute("name",this._id+"_Checkbox_"+n.parentElement.id);t.setAttribute("value",n.parentElement.id);n.insertBefore(t,n.children[1])},_updateElement:function(t,r){var f,o,u,s,h=t.firstChild,c,l,a,e;h&&(c=h.nodeName,c=="SPAN"||c=="IMG"?(s=h,u=t.lastChild):u=t.lastChild,u&&(a=u.lastChild!=null?u.lastChild.nodeValue:"",l=n.trim(u.innerHTML),e=n(u).clone()[0],n(u).remove(),e.className+=" e-text CanSelect",e.innerHTML=l,t.innerHTML=""),f=document.createElement("div"),f.setAttribute("class","e-text-wrap"),f.setAttribute("role","presentation"),r&&(o=document.createElement("div"),o.setAttribute("role","presentation"),f.appendChild(o)),s&&f.appendChild(s),f.appendChild(e),n(t).prop("name")==i&&n(t).prop("name",n.trim(a)),t.appendChild(f),this._renderWholeRow(n(t)))},_setAttributes:function(t,i){for(var r in t)n(i).attr(r,t[r])},_addDragableClass:function(){this.model.allowDragAndDrop&&(this._anchors=this._liList.map(function(){return n("a.e-text",this)[0]}),this._anchors.addClass("e-draggable e-droppable"),this._enableDragDrop(),this._on(this.element,"mouseup touchstart pointerdown MSPointerDown",this._anchors,this._focusElement),this._on(this.element,"focusout",this._anchors,this._blurElement))},_addBaseClass:function(){this._ulList.addClass("e-treeview-ul").attr("role","group");this._liList.addClass("e-item").attr("role","treeitem");this.element.is("ul")||this.element.find("ul:first").removeClass("e-treeview-ul").addClass("e-ul")},_controlRender:function(){var s=this.element,h,e,r,f,c,l,a,o,y,v,u,p;if(s!=null){for(h=s.find(".e-item"),e=0;e<h.length;e++)r=n(h[e]),a=r.children("ul.e-treeview-ul")[0],a&&n(r.children("ul.e-treeview-ul")[0]).remove(),o=r.children("a")[0],o?(l=n.trim(n(o).text()),f=n(o).clone(),n(o).remove(),c=r.clone(),n(f).prepend(c.children()),n(f).addClass("e-text CanSelect"),r.html("")):(l=n.trim(this._getText(r)),c=r.clone(),r.html(""),f=t.buildTag("a.e-text CanSelect","","",""),f.append(c.children()),f[0].innerHTML+=l),y=t.buildTag("div","",{},{role:"presentation"}),v=t.buildTag("div.e-text-wrap","",{},{role:"presentation"}),n(v).append(y).append(f),r.prepend(v),this._renderWholeRow(r),a&&r.append(a),r.prop("name")==i&&r.prop("name",l),this.model.showCheckbox&&this._checkboxOnTemplate(h[e].children[0]);this.model.showCheckbox&&s.find(".nodecheckbox").ejCheckBox({cssClass:this.model.cssClass,change:this._checkedChange})}u=s.find(".e-item");u.find(">ul").hide();p=u.find(".e-text");u.filter(".e-item:last-child").addClass("last");n(u[0]).addClass("first");n(u[0]).hasClass("first")&&n(u[0]).hasClass("last")&&n(u[0]).removeClass("first");n(u.filter(":has(ul)")).each(function(){n(this).attr("aria-expanded",!1).attr("aria-selected",!1);var t=n(this).children("ul:first");n(t).is(":hidden")?n(this).find("> div > div:first").removeClass("e-icon e-minus").addClass("e-icon e-plus"):n(this.childNodes[1]).removeClass("e-icon e-plus").addClass("e-icon e-minus")})},_getText:function(t){return n(t).clone().children().remove().end().text()},_expandNodes:function(i,r){for(var e,o=i.length,u=[],f=0;f<o;f++)(u=r?this._getNodeByID(i[f]):n(this._liList[i[f]]),t.isNullOrUndefined(u))||!this.model.enableMultipleExpand&&(e=u.siblings().find(">div>.e-minus").closest(".e-item"),e.length>0)||this.isExpanded(u)||(!this.model.loadOnDemand||this.dataSource()instanceof t.DataManager?this._expandNode(u):this._createChildNodesWhenExpand(u))},_checkedNodes:function(t){var r,i,u;for(t.length>0&&this._removeField(this._newDataSource,this.model.fields,"isChecked"),i=0,u=t.length;i<u;i++)r=n(this._liList[t[i]]),r[0]!=null&&this._nodeCheck(r.find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0])},_finalize:function(){this.model.showCheckbox&&this.element.find(".e-item > div .nodecheckbox").ejCheckBox({cssClass:this.model.cssClass,change:this._checkedChange});this.model.allowEditing&&this._allowEditable()},_finalizeNode:function(){var a,h,r,o,c,y;this._isRender=!1;this._allowOnDemand=!0;var v=this.element,f=this._getCookies("_persistedValues"),i=[],u=[],l,e,s;if(!(this.model.expandedNodes instanceof Array&&this.model.expandedNodes.length>0))for(l=v.find("li.expanded"),o=l.length,r=0;r<o;r++)(a=n(l[r]),!this.model.enableMultipleExpand&&(h=a.siblings().find(">div>.e-minus").closest(".e-item"),h.length>0))||this._expandNode(a);if(f&&(e=JSON.parse(f),i=e.expandedNodes,u=[]),i&&i.length>0&&!t.isNullOrUndefined(this.model.fields)&&this.dataSource()!=null){for(r=0,o=i.length;r<o;r++)if(u=this.element.find(".e-item#"+i[r]),u[0]!=null){if(!this.model.enableMultipleExpand&&(h=u.siblings().find(">div>.e-minus").closest(".e-item"),h.length>0))continue;!this.model.loadOnDemand||this.dataSource()instanceof t.DataManager?this._expandNode(u):this._createChildNodesWhenExpand(u)}}else s=JSON.parse(JSON.stringify(this.model.expandedNodes)),this._expandNodes(s);if(this.model.showCheckbox)if(f&&(e=JSON.parse(f),i=e.checkedNodes,u=[]),i&&i.length>0&&!t.isNullOrUndefined(this.model.fields)&&this.dataSource()!=null)for(this._removeField(this._newDataSource,this.model.fields,"isChecked"),r=0,o=i.length;r<o;r++)u=this.element.find(".e-item#"+i[r]),u[0]!=null&&this._nodeCheck(u.find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0]);else s=JSON.parse(JSON.stringify(this.model.checkedNodes)),this._checkedNodes(s);this.model.checkedNodes instanceof Array&&this.model.checkedNodes.length>0||this.model.showCheckbox&&this._isCheckedAction();c=!1;f&&(e=JSON.parse(f),i=e.selectedNodes,c=!0);(!f||i&&i.length==0)&&(i=this.model.selectedNodes.length>0?this.model.selectedNodes:this.model.selectedNode==-1?[]:[this.model.selectedNode],c=!1);y={ctrlKey:!0};i&&i.length>0?this._doSelectNodes(i,c):this._isSelectedAction(y);this._isRender=!0;this._allowOnDemand=!1;v.find(".e-item.checked, .e-item.expanded, .e-item.selected").removeClass("checked expanded selected")},_doSelectNodes:function(t,i){for(var u,f={ctrlKey:!0},r=0,e=t.length;r<e;r++)if(u=i?this._getNodeByID(t[r]):n(this._liList[t[r]]),u[0]!=null&&this._nodeSelectionAction(u,f),!this.model.allowMultiSelection)break},_doUnselectNodes:function(n){for(var i,t=0,r=n.length;t<r;t++)if(i=this._getNodeByID(n[t]),i[0]!=null&&this._nodeUnSelectionAction(i),!this.model.allowMultiSelection)break},_updateSelectedNode:function(){var t=n(this._liList).find(".e-text.e-active").closest(".e-item"),r,u,f;if(this.model.selectedNodes=[],this.model.allowMultiSelection||(this.model.selectedNode=null),t[0]==i||t.length<=0){this._persistValues(this.model.selectedNodes,"selectedNodes");return}if(this.model.allowMultiSelection){for(r=0,u=t.length;r<u;r++)f=n(this._liList).index(t[r]),this.model.selectedNodes.push(f);this._persistValues(this.model.selectedNodes,"selectedNodes")}else this._isRender=!1,this._nodeSelectionAction(n(t[0])),this._isRender=!0},_setCookies:function(n,i){window.localStorage?window.localStorage.setItem(this._id+n,i):document.cookie&&t.cookie.set(this._id+n,i)},_getCookies:function(n){return window.localStorage?window.localStorage.getItem(this._id+n):window.cookie?t.cookie.get(this._id+n):void 0},_updateCheckedNodes:function(){for(var r=[],t=this.element.find(".e-item > div > .e-chkbox-wrap > .nodecheckbox.checked").closest(".e-item"),i=0;i<t.length;i++)r.push(n(this._liList).index(t[i]));(r.length>0||t.length==0)&&(this.model.checkedNodes=r);t.length==0&&this.model.checkedNodes.push(-1);this._persistValues(this.model.checkedNodes,"checkedNodes")},_updateExpandedNodes:function(){var t,r=[],i,u;for(t=this.element.find(".e-item > div > .e-minus").closest(".e-item").addClass("e-collapse"),i=0,u=t.length;i<u;i++)r.push(n(this._liList).index(t[i]));(r.length>0||t.length==0)&&(this.model.expandedNodes=r);t.length==0&&this.model.expandedNodes.push(-1);this._persistValues(this.model.expandedNodes,"expandedNodes")},_isCheckedAction:function(){for(var r,u,f,i=this.element.find(".e-item.checked"),t=0;t<i.length;t++)if(r=n(i[t]).find(".e-item"),u=n(i[t]).find(".e-item.unchecked"),r.length==0||!(r.length>0&&u.length==r.length)||!this.model.autoCheck)for(this._nodeCheck(n(i[t]).find("> div > .e-chkbox-wrap > input.nodecheckbox:first")[0]),f=0;f<u.length;f++)this._nodeUncheck(n(u[f]).find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0]);this.element.find(".e-item.checked, .e-item.unchecked").removeClass("checked unchecked")},_isExpandedAction:function(){for(var i,u,r=this.element.find("li.expanded"),f=r.length,t=0;t<f;t++)(i=n(r[t]),!this.model.enableMultipleExpand&&(u=i.siblings().find(" > div > .e-minus").closest(".e-item"),u.length>0))||this._expandNode(i);this.element.find(".e-item.expanded").removeClass("expanded")},_isSelectedAction:function(t){for(var r=this.element.find(".e-item.selected"),i=0,u=r.length;i<u;i++)if(r[i]!=null&&this._nodeSelectionAction(n(r[i]),t),!this.model.allowMultiSelection)break;this.element.find(".e-item.selected").removeClass("selected")},_checkedChange:function(t){if(t.isInteraction){var i=this.element.closest(".e-treeview.e-js").data("ejTreeView"),r=t.isChecked?"_nodeCheck":"_nodeUncheck";i[r](n(this.element)[0],t)}},_doClickAnimation:function(t){var r=n(t.target);r!=i&&t.type!=i&&(r.addClass("e-animate"),r.is("A")&&r.hasClass("e-text")&&r.closest(".e-text-wrap").addClass("e-animate"))},_ClickEventHandler:function(i){var y=this,u,r=n(i.target),h=r.closest(".e-item").find("> div > div:first"),c,l,e,f,o,a,s,v;if(this._isPopup=!1,h&&!h.hasClass("e-process")&&(u=r.closest(".e-item"),!u.hasClass("e-node-disable"))){if(this.element.find(".e-animate").removeClass("e-animate"),this._doClickAnimation(i),c=u[0]!=null?u[0].getAttribute("id"):"",this._triggerEvent("nodeClick",{event:i,currentElement:r[0],id:c,parentId:u.closest("ul").closest(".e-item").attr("id")}),!t.isNullOrUndefined(r)&&r.is("DIV"))if(r.hasClass("e-plus")||r.hasClass("e-minus"))if(l=null,r.is("SPAN")&&(r=r.parent("div").find("div:first")),l=u.children("ul:first"),o=this.isChildLoaded(u),!o&&this.model.loadOnDemand){if(r.removeClass("e-plus").addClass("e-load"),this._checkboxChecked=r.parent().find(".nodecheckbox").hasClass("checked"),f=this._getNodeDetails(u),e={currentElement:u,targetElement:r[0],id:f.id,value:f.text,parentId:f.parentId,isChildLoaded:o,hasParent:!0,async:!0},this._isEventTriggered=!0,this._triggerEvent("beforeExpand",e))return!1;this._loadOnDemand(e,r[0])}else r.hasClass("e-plus")?this._expandNode(u):this._collapseNode(u);else this.model.fullRowSelect&&(r.hasClass("e-fullrow")||r.hasClass("e-text-wrap"))&&(r=r.closest(".e-item").find("> .e-text-wrap .e-text"));r.is("A")||r.hasClass("input-text")||(r=r.closest(".e-text"));!t.isNullOrUndefined(r)&&r.is("A")&&r.hasClass("CanSelect")&&(i&&i.pointerType=="touch"&&this._customPop!=null&&this.model.allowMultiSelection?(a=n(i.target),this._customPop.is(":visible")||this._customPop.show(),this._customPop.is(":visible")&&!this._customPop.find(".e-rowselect").hasClass("e-spanclicked")?(s=a.offset(),this._customPop.offset({left:s.left,top:s.top-40})):i.ctrlKey=!0):this._hidePopup(),r.hasClass("e-active")?this.model.allowMultiSelection&&this._nodeUnSelectionAction(r.closest(".e-item"),i):this._nodeSelectionAction(r.closest(".e-item"),i))}v=["INPUT","BUTTON","TEXTAREA","SELECT"];i.target&&v.indexOf(i.target.tagName)<0&&this.element.focus()},_getChildTables:function(n,i,r){if(!t.isNullOrUndefined(n.child))return i==r?n.child:this._getChildTables(n.child,i,r+1)},_loadOnDemand:function(i){var r,e,u,f=this,o;if(this.dataSource()instanceof t.DataManager){if(e=i.currentElement.parents("ul.e-treeview-ul").length,u=this._getChildTables(f.model.fields,e,1),t.isNullOrUndefined(u)&&t.isNullOrUndefined(this.model.fields.child)&&(u=this.model.fields),!u){n(i.targetElement).hasClass("e-load")&&n(i.targetElement).removeClass(n(i.targetElement).hasClass("e-plus")||n(i.targetElement).hasClass("e-minus")?"e-load":"e-icon e-load");return}o=this._executeDataQuery(u,u.parentId,this._typeOfFieldId=="number"?parseInt(i.currentElement[0].id):i.currentElement[0].id);o.done(function(e){if(r=e.xhr&&e.xhr.responseJSON&&e.xhr.responseJSON.d?e.xhr.responseJSON.d:e.result?e.result:[],r=f._getSortAndFilterList(u,r),r.length>0){f._onlineData=!0;var o=t.getObject(u.parentId,r[0]);f._updateRemoteData(f._newDataSource,o,r,f.model.fields);f._loadChildNodeWhenOnDemand(r,i,u)}else n(i.targetElement).hasClass("e-load")&&n(i.targetElement).removeClass(n(i.targetElement).hasClass("e-plus")||n(i.targetElement).hasClass("e-minus")?"e-load":"e-icon e-load")})}else r=this._getChildNodes(this._dataSource,i),!t.isNullOrUndefined(r)&&r.length>0?setTimeout(function(){f._createSubNodesWhenLoadOnDemand(r,i.targetElement,f.model.fields)},400):n(i.targetElement).hasClass("e-load")&&n(i.targetElement).removeClass(n(i.targetElement).hasClass("e-plus")||n(i.targetElement).hasClass("e-minus")?"e-load":"e-icon e-load")},_loadChildNodeWhenOnDemand:function(n,i,r){var u=this;!t.isNullOrUndefined(n)&&n.length>0&&setTimeout(function(){u._createSubNodesWhenLoadOnDemand(n,i.targetElement,r)},100)},_createSubNodesWhenLoadOnDemand:function(t,i,r){this._loadOnDemandNodes=!0;this._templateNodeCreation(t,r);n(this._fragment.firstChild).attr("style","display:none");this._fragment.firstChild.className="e-treeview-ul";this._fragment.firstChild.setAttribute("role","group");i.parentNode.parentNode.appendChild(this._fragment);var u=n(i).closest(".e-item");u.attr({"aria-expanded":!1,"aria-expanded":!0});n(i).removeClass("e-load").addClass("e-plus");this._expandNode(u);this._finalizeLoadOnDemand(u)},_finalizeLoadOnDemand:function(n){var r,u,i,f;this._beforeBaseClass();this._isRender=!1;this.model.showCheckbox&&(n.children("ul").find("li > div > input.nodecheckbox").ejCheckBox({cssClass:this.model.cssClass,change:this._checkedChange}),r=n.children("ul").find(".e-item"),u=n.children("ul").find(".e-item.unchecked"),u.length>=0&&u.length!=r.length&&this._checkboxChecked&&this.model.autoCheck?r.not(".unchecked").addClass("checked"):u.length==r.length&&this.isNodeChecked(n)&&this._nodeUncheck(n.find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0]),this._isLoaded&&(this._isCheckedAction(),this._updateCheckedNodes()));this._isRender=!0;this._addDragableClass();this._preventEditable();this.model.allowEditing&&this._allowEditable();this._isLoaded&&(this._isSelectedAction(),this._updateSelectedNode(),this._allowOnDemand=!0,this._isExpandedAction(),this._updateExpandedNodes(),this._allowOnDemand=!1);!this.model.loadOnDemand||!this.model.enablePersistence||this.dataSource()instanceof t.DataManager||(f=this._getCookies("_childNodes"),f&&(i=JSON.parse(f)),!t.isNullOrUndefined(i)&&i.indexOf(n[0].id)==-1?i.push(n[0].id):i=[n[0].id],this._setCookies("_childNodes",JSON.stringify(i)))},_getChildNodes:function(n,i){var u=[],e,r,f;if(this._templateType==1){for(r=0,f=n.length;r<f;r++)if(e=t.getObject(this.model.fields.parentId,n[r][0]),!t.isNullOrUndefined(n[r][0])&&!t.isNullOrUndefined(e)&&e!=0&&e==i.id)return n[r]}else{for(r=0,f=n.length;r<f;r++){if(t.getObject(this.model.fields.id,n[r])==i.id&&t.getObject(this.model.fields.parentId,n[r])!=0)return n[r].child;if(n[r].hasOwnProperty("child")&&(u=this._getChildNodes(n[r].child,i),!t.isNullOrUndefined(u)&&u.length>0))break}return u}},_getPath:function(n){for(var i=n.prop("name"),t=n.parents(".e-item:first");t[0]!=null&&t[0].parentNode.id!=this._id;)i=t.prop("name")+"/"+i,t=t.parents(".e-item:first");return this._id+"/"+i},_nodeSelectionAction:function(t,i){var v,o,r,c,l;if(t[0]!=null||t.length!=0){var u=n(t.find("> div > .e-text")[0]),a=!1,y=this.model.selectedNodes.slice(),s=this._liList.index(t[0]);if(this._currNode=t,!this._triggerEvent("beforeSelect",{target:t,nodeDetails:this._getNodeDetails(t)})){if(this.model.allowMultiSelection&&i&&(!i||i.ctrlKey)||(this.element.find("a.e-text.e-active").removeClass("e-node-focus e-active"),this.element.find("[aria-selected=true]").attr("aria-selected",!1),this.element.find(".e-li-active").removeClass("e-li-active"),this.model.fullRowSelect&&(this.element.find(".e-li-focus").removeClass("e-li-focus"),this.element.find(".e-node-focus").removeClass("e-node-focus")),this.element.find("#"+this._id+"_active").removeAttr("id"),this.model.selectedNodes=[],this._deepWatch&&this._removeField(this._newDataSource,this.model.fields,"selected")),this.model.allowMultiSelection&&i&&i.shiftKey){this._startNode||(this._startNode=this._currNode);var h=this.getVisibleNodes(),f=h.index(this._startNode),e=h.index(t[0]);for(f>e&&(v=f,f=e,e=v),o=f;o<=e;o++)r=n(h.get(o)),c=this._liList.index(r[0]),n.inArray(c,this.model.selectedNodes)==-1&&(this.model.selectedNodes.push(c),l=r.find("> div > a.e-text"),l.removeClass("e-node-focus"),r.attr("aria-selected",!0),r.addClass("e-li-active"),l.addClass("e-active"),a=!0,this._deepWatch&&this._updateField(this._newDataSource,r.attr("id"),this.model.fields,"selected",!0))}else this._startNode=t;this.model.allowMultiSelection||(this.model.selectedNode=s);a||(this.element.find("a.e-text.e-node-focus").removeClass("e-node-focus"),t.attr("aria-selected",!0),t.addClass("e-li-active"),u.addClass("e-active"),this.model.allowMultiSelection||(u.closest(".e-item")[0].id!=null&&u.closest(".e-item")[0].id!=""?this.element.attr("aria-activedescendant",u.closest(".e-item")[0].id):u.closest(".e-item").attr("id",this._id+"_active")),n.inArray(s,this.model.selectedNodes)==-1&&this.model.selectedNodes.push(s),this._deepWatch&&this._updateField(this._newDataSource,t.attr("id"),this.model.fields,"selected",!0));this.model.enablePersistence&&this._persistValues(this.model.selectedNodes,"selectedNodes");this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource));this._triggerGivenEvent("nodeSelect",t)}}},_nodeUnSelectionAction:function(n,t){if(this.model.allowMultiSelection&&t&&!t.ctrlKey){this._nodeSelectionAction(n,t);return}n.removeClass("e-li-active");n.attr("aria-selected",!1).find("> div > .e-text").removeClass("e-active").attr("id","");this._updateUnselectModel(n[0]);this._deepWatch&&(this._updateField(this._newDataSource,n.attr("id"),this.model.fields,"selected",!1),this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource));this._triggerGivenEvent("nodeUnselect",n)},_updateUnselectModel:function(t){var r=this._liList.index(t),u=this.model.selectedNodes,i;this.model.allowMultiSelection||(this.model.selectedNode=null);i=n.inArray(r,u);i>-1&&this.model.selectedNodes.splice(i,1);this._persistValues(this.model.selectedNodes,"selectedNodes")},_triggerGivenEvent:function(n,t){if(this._isRender){var i={currentElement:t,value:t.find("> div > a.e-text").eq(0).text(),id:t[0].getAttribute("id"),parentId:t.closest("ul").closest(".e-item").attr("id"),selectedNodes:this.model.selectedNodes};this._triggerEvent(n,i)}},_getNodesIndex:function(n){for(var i=[],t=0,r=n.length;t<r;t++)i.push(this._liList.index(n[t]));return i},_nodeEnableAction:function(n){var t=this.getParent(n);t[0]!=null&&t.hasClass("e-node-disable")||(this.model.showCheckbox&&n.find("div > .e-chkbox-wrap > .nodecheckbox").ejCheckBox("enable").prop("disabled",!1),n.find(".e-text").removeClass("e-node-disable").closest(".e-item").removeClass("e-node-disable").removeProp("disabled"))},_nodeDisableAction:function(n){var i,t,r;for(this._collapseNode(n),this.model.showCheckbox&&n.find("div > .e-chkbox-wrap > .nodecheckbox").ejCheckBox("disable").prop("disabled",!0),i=n.find(".e-text.e-active").closest(".e-item"),n.find(".e-text").addClass("e-node-disable").removeClass("e-active").attr("id","").closest(".e-item").addClass("e-node-disable").prop("disabled",!0),t=0,r=i.length;t<r;t++)this._updateUnselectModel(i[t])},_getNodeDetails:function(n){var t,i,r,f,e,o,s,h,c,u;return n[0]!=null&&n.is("LI")&&n.hasClass("e-item")?(t=n[0].getAttribute("id"),i=n.children("div").find(".e-text:first").text(),this.model.template!=null&&(u=this._getNodeObject(t,!0),u.length>0&&(i=u[0])),r=n.closest("ul").closest(".e-item").attr("id"),f=n.parentsUntil(".e-treeview-wrap","ul").length,e=n.find(".e-item").length,o=this._isNodeExpanded(n),s=this._isChecked(n),h=n.find("> div > .e-text").hasClass("e-active"),c=this._liList.index(n),{id:t,text:i,parentId:r?r:"",level:f,count:e,expanded:o,checked:s,selected:h,index:c}):{id:"",text:"",parentId:"",level:"",count:"",expanded:"",checked:"",selected:"",index:""}},_denyMultipleExpand:function(t){for(var r=t.siblings().find(">div>.e-minus").closest(".e-item"),i=0,u=r.length;i<u;i++)this._collapseNode(n(r[i]))},_expandCollapseAction:function(t){var f,s,i,r,u,e,o;if(t&&!t.hasClass("e-process")&&(s=this,i=t.closest(".e-item"),t.is("SPAN")&&(t=n(t).parent("div").find("div:first")),f=i.children("ul:first"),f.find("> .e-item").length>0)){if(this.model.enableAnimation&&t.addClass("e-process"),o=n(t).closest(".e-treeview.e-js").data("ejTreeView"),r=o._getNodeDetails(i),e=this.isChildLoaded(i),u={currentElement:i,value:r.text,isChildLoaded:e,id:r.id,parentId:r.parentId,async:!1},!this._isNodeExpanded(i)&&e){if(!this._isEventTriggered&&this._triggerEvent("beforeExpand",u))return!1;this._isEventTriggered=!1;i.attr("aria-expanded",!0);this._addExpandedNodes(this._liList.index(i));n(t).removeClass("e-icon e-plus").addClass("e-icon e-minus");i.addClass("e-collapse");this._deepWatch&&this._updateField(this._newDataSource,r.id,this.model.fields,"expanded",!0);this._doAnimation(f,t,"nodeExpand",u,350)}else{if(this.element.find(".e-material-animate").removeClass("e-material-animate"),i.attr("aria-expanded",!1),this._triggerEvent("beforeCollapse",u)===!0)return!1;this._removeExpandedNodes(this._liList.index(u.currentElement));n(t).removeClass("e-icon e-minus").addClass("e-icon e-plus");i.removeClass("e-collapse");this._deepWatch&&this._updateField(this._newDataSource,r.id,this.model.fields,"expanded",!1);this._doAnimation(f,t,"nodeCollapse",u,200)}this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource))}},_doAnimation:function(n,i,r,u,f){var e=this;this.model.enableAnimation?n.animate({height:"toggle"},f,"linear",function(){t.isNullOrUndefined(e.model)||e._doAnimateAction(i,r,u)}):(n.css("display",f==200?"none":"block"),this._doAnimateAction(i,r,u))},_doAnimateAction:function(n,t,i){n.removeClass("e-process");this._triggerEvent(t,i)},_isChecked:function(n){return n.find("> div > .e-chkbox-wrap:first").attr("aria-checked")==="true"?!0:!1},_doRecursiveCheck:function(t,i){var o,r,f,t,u,s,e;u=this._getChildUl(t);o=u?u.querySelectorAll('.e-chkbox-wrap[aria-checked="true"]').length:0;s=u?u.querySelectorAll(".e-item > div > .e-chkbox-wrap > .nodecheckbox"):[];r=t.firstChild.querySelector(".nodecheckbox");r&&r.nodeName.toUpperCase()=="INPUT"&&(e=n(r).data("ejCheckBox"),o==s.length||this.model.autoCheckParentNode?(e.setModel({enableTriState:!1,checked:!0}),r.className+=" checked",f=t.firstChild.getElementsByTagName("a")[0].innerHTML,i.push({id:t.id,text:f}),this._deepWatch&&!this.model.autoCheckParentNode&&this._updateField(this._newDataSource,t.id,this.model.fields,"isChecked",!0),this._addHiddenInputElement(r,f),this._addCheckNodes(this._liList.index(t))):e.setModel({enableTriState:!0,checkState:"indeterminate"}),t=t.parentNode.parentNode,t.nodeName.toUpperCase()=="LI"&&this._doRecursiveCheck(t,i))},_nodeCheck:function(t,i){var s,r,u,h,e,o,c,f,l;if(n(t)[0]!=null){if(this._CurrenctSelectedNodes=[],this._checkedArray=[],t.className+=" checked",s=n(t).data("ejCheckBox"),s){if(s.setModel({enableTriState:!1,checked:!0}),r=t.parentNode.parentNode.parentNode,u=r.firstChild.getElementsByTagName("a")[0].lastChild.nodeValue,this._checkedArray.push({id:r.id,text:u}),this._deepWatch&&this._updateField(this._newDataSource,r.id,this.model.fields,"isChecked",!0),this._addHiddenInputElement(t,u),this._addCheckNodes(this._liList.index(r)),this.model.autoCheck){for(c=this._getChildUl(r),e=c?c.querySelectorAll(".e-item > div > .e-chkbox-wrap > .nodecheckbox"):[],f=0,l=e.length;f<l;f++)n(e[f]).ejCheckBox({checked:!0,enableTriState:!1})[0].className+=" checked",o=e[f].parentNode.parentNode.parentNode,u=o.firstChild.getElementsByTagName("a")[0].lastChild.nodeValue,this._checkedArray.push({id:o.id,text:u}),this._deepWatch&&this._updateField(this._newDataSource,o.id,this.model.fields,"isChecked",!0),this._addHiddenInputElement(e[f],u),this._addCheckNodes(this._liList.index(o));h=r.parentNode.parentNode;h.nodeName.toUpperCase()=="LI"&&this._doRecursiveCheck(h,this._checkedArray)}i&&(i.checknode=this._checkedArray);this._onChecked(n(t),i)}this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource));this._persistValues(this.model.checkedNodes,"checkedNodes")}},_addHiddenInputElement:function(n,t){if(n.firstChild==null){var i=document.createElement("input");i.setAttribute("type","hidden");i.setAttribute("name",this._id+"_Checkbox_"+n.value+"_Text");i.setAttribute("value",t);try{n.appendChild(i)}catch(r){}}},_doRecursiveUncheck:function(t,i){var e,r,o,t,u,s,f;u=this._getChildUl(t);e=u?u.querySelectorAll('.e-chkbox-wrap[aria-checked="true"]').length:0;s=u?u.querySelectorAll(".e-item > div > .e-chkbox-wrap > .nodecheckbox"):[];r=t.firstChild.querySelector(".nodecheckbox");r&&r.nodeName.toUpperCase()=="INPUT"&&(f=n(r).data("ejCheckBox"),e<=0&&(f.setModel({enableTriState:!1,checked:!1}),n(r).removeClass("checked").removeClass("checked").children().remove(),o=t.firstChild.getElementsByTagName("a")[0].innerHTML,this._removeCheckNodes(this._liList.index(t)),i.push({id:t.id,text:o}),this._deepWatch&&this._updateField(this._newDataSource,t.id,this.model.fields,"isChecked",!1)),e>0&&this.model.autoCheckParentNode?(f.setModel({checked:!0}),r.className+=" checked",o=t.firstChild.getElementsByTagName("a")[0].innerHTML,this._addHiddenInputElement(t,o),this._deepWatch&&this._updateField(this._newDataSource,t.id,this.model.fields,"isChecked",!1)):e>0&&!this.model.autoCheckParentNode&&(s.length>1?f.setModel({enableTriState:!0,checkState:"indeterminate"}):f.setModel({checked:!1}),n(r).removeClass("checked").removeClass("checked").children().remove(),this._removeCheckNodes(this._liList.index(t)),this._deepWatch&&this._updateField(this._newDataSource,t.id,this.model.fields,"isChecked",!1)),t=t.parentNode.parentNode,t.nodeName.toUpperCase()=="LI"&&this._doRecursiveUncheck(t,i))},_nodeUncheck:function(t,i){var a,r,s,e,h,o,u,l,f,c;if(n(t)[0]!=null){if(a=this,this._uncheckedArray=[],r=t.parentNode.parentNode.parentNode,n(r).find("div > .e-chkbox-wrap > .nodecheckbox").removeClass("checked").children().remove(),s=n(t).data("ejCheckBox"),this._removeCheckNodes(this._liList.index(r)),s){if(s.setModel({enableTriState:!1,checked:!1}),e=r.firstChild.getElementsByTagName("a")[0].lastChild.nodeValue,this._uncheckedArray.push({id:r.id,text:e}),this._deepWatch&&this._updateField(this._newDataSource,r.id,this.model.fields,"isChecked",!1),this.model.autoCheck){for(h=this._getChildUl(r),o=h?h.querySelectorAll(".e-item > div > .e-chkbox-wrap > .nodecheckbox"):[],u=0,l=o.length;u<l;u++)n(o[u]).ejCheckBox({enableTriState:!1,checked:!1}),f=o[u].parentNode.parentNode.parentNode,e=f.firstChild.getElementsByTagName("a")[0].lastChild.nodeValue,this._uncheckedArray.push({id:f.id,text:e}),this._deepWatch&&this._updateField(this._newDataSource,f.id,this.model.fields,"isChecked",!1),this._removeCheckNodes(this._liList.index(f));c=r.parentNode.parentNode;c.nodeName.toUpperCase()=="LI"&&this._doRecursiveUncheck(c,this._uncheckedArray)}i&&(i.unchecknode=this._uncheckedArray);this._onUnChecked(n(t),i)}this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource));this._persistValues(this.model.checkedNodes,"checkedNodes")}},_executeDataQuery:function(i,r,u){var f,o,e;if(f=t.Query(),f=this._columnToSelect(i),!t.isNullOrUndefined(r)&&r!=""){for(o=n.extend(!0,[],f._params),f._params=[],f.addParams(r,u),e=0;e<o.length;e++)o[e].key!=r&&f.addParams(o[e].key,o[e].value);f.where(r,t.FilterOperators.equal,u)}return i.dataSource.executeQuery(f)},_createChildNodesWhenExpand:function(i,r,u,f,e,o){var a,v,c,y,p,h,s,w,l;if(i.length>0&&i.find("ul .e-item").length==0){if(a=i.attr("id"),v=i.children("div").find(".e-text:first").text(),y=i.children("div").find("div.e-plus:first"),c={currentElement:i,targetElement:y[0],id:a,value:v,isChildLoaded:!1,hasParent:!0,async:!1},s=this,this._isEventTriggered=!0,this._triggerEvent("beforeExpand",c))return!1;if(this.dataSource()instanceof t.DataManager){if(p=c.currentElement.parents("ul.e-treeview-ul").length,h=this._getChildTables(this.model.fields,p,1),t.isNullOrUndefined(h)&&t.isNullOrUndefined(this.model.fields.child)&&(h=this.model.fields),!h){n(c.targetElement).hasClass("e-load")&&n(c.targetElement).removeClass(n(c.targetElement).hasClass("e-plus")||n(c.targetElement).hasClass("e-minus")?"e-load":"e-icon e-load");return}h.query&&h.query.queries.length>0&&(h.query.queries=[]);this._treeList.push("false");w=this._executeDataQuery(h,h.parentId,this._typeOfFieldId=="number"?parseInt(c.currentElement[0].id):c.currentElement[0].id);w.done(function(c){if(s._treeList.pop(),l=c.xhr&&c.xhr.responseJSON&&c.xhr.responseJSON.d?c.xhr.responseJSON.d:c.result?c.result:[],l=s._getSortAndFilterList(h,l),l.length>0){var a=t.getObject(h.parentId,l[0]);s._updateRemoteData(s._newDataSource,a,l,s.model.fields)}s._appendChild(l,i,h,r,u,f);u&&s._expandByLevel(i.find("> ul"),u-1,f);s._treeList.length==0&&(e&&s._doAfterExpand(i,e,o),s._completeRendering());s._parentLevelDropChecking.find("ul .e-item").length==0&&n(s._parentLevelDropChecking).find("> div > .e-icon").remove()})}else l=this._getChildNodes(this._dataSource,{id:i[0].id}),this._appendChild(l,i,this.model.fields,r,u,f)}else this._expandNode(i)},_appendChild:function(i,r,u,f,e,o){var h,s,c;if(!t.isNullOrUndefined(i)&&i.length>0){if(this._checkboxChecked=r.find("> div > .e-chkbox-wrap > .nodecheckbox").hasClass("checked"),this._loadOnDemandNodes=!0,r.find("ul .e-item").length==0&&(this._templateNodeCreation(i,u),r.append(this._fragment)),this._finalizeLoadOnDemand(r),this._expandNode(r),f&&!e&&!o)for(h=r.find(".e-item > div > .e-plus").closest(".e-item"),s=0,c=h.length;s<c;s++)this._createChildNodesWhenExpand(n(h[s]),!0,null,o)}else f&&r.find("> div > .e-plus").removeClass("e-plus e-icon")},_getSortAndFilterList:function(n,i){var r,u;return!i||!i.length||i.length<1?r=[]:this.model.sortSettings.allowSorting?(u=t.Query(),this._addSortingQuery(u,n),r=t.DataManager(i).executeLocal(u)):r=i,r},_addSortingQuery:function(n,i){var r=i&&i.text?i.text:"text",u=this.model.sortSettings.sortOrder==t.sortOrder.Descending?!0:!1;n.sortBy(r,u)},_expandNode:function(n){var t,i;return n[0]!=null&&n.length>0&&(t=n.find("> div > div:first"),this.model.loadOnDemand&&!this.model.enablePersistence?n.find("> ul > .e-item").length>0&&t.hasClass("e-plus")?(this.model.enableMultipleExpand||this._denyMultipleExpand(n),this._expandCollapseAction(n.find("> div > div.e-plus:first"))):t.hasClass("e-icon")&&!t.hasClass("e-minus")&&this._allowOnDemand&&this._createChildNodesWhenExpand(n):t.hasClass("e-plus")&&(i=n.find("> ul > .e-item").length>0?!0:!1,i&&(this.model.enableMultipleExpand||this._denyMultipleExpand(n),this._expandCollapseAction(t)))),!0},_collapseNode:function(n){if(n[0]!=null&&n.length>0&&n.find("> ul > .e-item").length>0){var t=n.find("> div > div:first");t.hasClass("e-minus")&&this._expandCollapseAction(t)}},_getElement:function(){return this.element.is("UL")?this.element:this.element.find("> ul")},_getImmediateChild:function(n,t){return t?n.find("> .e-item:not(:hidden)"):n.find("> .e-item")},_expandByLevel:function(n,t,i){t>0&&this._expandByNode(this._getImmediateChild(n,i),t,i)},_expandByNode:function(t,i,r){for(var u=0,f=t.length;u<f;u++)n(t[u]).find("> div > div").hasClass("e-plus")&&(this.model.loadOnDemand?this._createChildNodesWhenExpand(n(t[u]),!0,i,r):this._expandNode(n(t[u]))),this._expandByLevel(n(t[u]).find("> ul"),i-1,r)},_expandAll:function(t){var f=this.element,i,u,r;if(r=f.find(t?".e-item > div > .e-plus:not(:hidden)":".e-item > div > .e-plus").closest(".e-item"),this.model.loadOnDemand)for(i=0,u=r.length;i<u;i++)this._createChildNodesWhenExpand(n(r[i]),!0,null,t);else for(i=0,u=r.length;i<u;i++)this._expandNode(n(r[i]))},_collapseByLevel:function(n,t,i){t>0&&this._collapseByNode(this._getImmediateChild(n,i),t,i)},_collapseByNode:function(t,i,r){for(var u=0,f=t.length;u<f;u++)n(t[u]).find("> div > div").hasClass("e-minus")&&this._collapseNode(n(t[u])),this._collapseByLevel(n(t[u]).find("> ul"),i-1,r)},_collapseAll:function(t){var f=this.element,i,r,u;if(r=f.find(t?".e-item > div > .e-minus:not(:hidden)":".e-item > div > .e-minus").closest(".e-item"),r.length>0)for(i=0,u=r.length;i<u;i++)this._collapseNode(n(r[i]))},_checkAll:function(){var r,t,i,u;for(this._CurrenctSelectedNodes=[],r=this.element,t=r.find(".e-item > div > .e-chkbox-wrap > .nodecheckbox"),t.addClass("checked"),i=0,u=t.length;i<u;i++)n(t[i]).ejCheckBox("setModel",{checked:!0}),this._addHiddenInputElement(t[i],n(t[i]).parent().siblings(".e-text")[0].lastChild.nodeValue);this.model.checkedNodes=this.getCheckedNodesIndex()},_uncheckAll:function(){var u=this.element,t,i,r;for(t=u.find(".e-item > div > .e-chkbox-wrap > .nodecheckbox"),t.removeClass("checked").children().remove(),i=0,r=t.length;i<r;i++)n(t[i]).ejCheckBox("setModel",{checked:!1});this.model.checkedNodes=[];this.model.checkedNodes.push(-1)},_selectAll:function(){var r,t,u,i;for(this._isRender=!1,r={ctrlKey:!0},t=0,u=this._liList.length;t<u;t++)if(i=n(this._liList[t]),i[0]!=null&&this._nodeSelectionAction(i,r),!this.model.allowMultiSelection)break;this._isRender=!0},_unselectAll:function(){this.element.find("a.e-text.e-active").removeClass("e-node-focus e-active");this.element.find("[aria-selected=true]").attr("aria-selected",!1);this.element.find(".e-li-active").removeClass("e-li-active");this.element.find(".e-li-focus").removeClass("e-li-focus");this.element.find(".e-node-focus").removeClass("e-node-focus");this.model.selectedNodes=[];this.model.enablePersistence&&this._persistValues(this.model.selectedNodes,"selectedNodes")},_isNodeExpanded:function(n){if(n[0]!=null)return n.children("ul:first").length>0&&n.find("> div > div.e-minus").length>0},_showCheckBox:function(){for(var t=this.element,i=t.find("li"),n=0;n<i.length;n++)this._checkboxOnTemplate(i[n].children[0]);t.find(".e-item > div > .nodecheckbox").ejCheckBox({cssClass:this.model.cssClass,change:this._checkedChange});t.find(".e-item.e-node-disable > div > .e-chkbox-wrap > .nodecheckbox").ejCheckBox("disable")},_drag:function(){var i,u=!1,o=t.browserInfo(),r=null,s=null,f=null,e;e=o.name=="msie"&&o.version=="8.0"?!0:!1;this.element.is("ul")?(this._treeView=this.element.parent(),this.model.allowDragAndDropAcrossControl||(f=this.element.parent())):(this._treeView=this.element,this.model.allowDragAndDropAcrossControl||(f=this.element));n(this._treeView).find("ul li div a").not(".e-js").ejDraggable({autoScroll:!0,dragArea:f,clone:!0,dragStart:function(u){if(!i||t.isNullOrUndefined(u.target)||n(u.target).hasClass("e-node-disable")||i.element.find(".e-item > div > .e-text.e-editable").length!=0||(u.element.attr("aria-grabbed",!0),i.element.closest(".e-treeview-wrap").addClass("e-dragging"),n(u.target).is("A")&&!n(u.target).hasClass("e-draggable")))return!1;e&&(document.ondragstart=function(){return!1});var f={target:n(u.target).closest(".e-item"),targetElementData:i._getNodeDetails(n(u.target).closest(".e-item")),dragTarget:u.target,parentElement:n(u.target).closest("ul").closest(".e-item"),parentElementData:i._getNodeDetails(n(u.target).closest("ul").closest(".e-item")),event:u.event};if(i._triggerEvent("nodeDragStart",f))return u.cancel=!0,r&&r.remove(),!1},drag:function(f){var e,s,l,o,h,c,a;return u=!1,n(f.target).hasClass("e-sibling")&&(f.target=f.target.parentElement),n(".e-sibling").remove(),e=f.target,s=i._findTarget(n(e)),n(e).closest(".e-treeview-wrap").addClass("e-dragging"),o=n(e).closest(".e-treeview.e-js").data("ejTreeView"),o=o?o:i,n(r).css({"margin-top":f.event.clientY-20<0?"0px":"10px"}),n(e).closest(".e-treeview.e-js")!=null&&(h=n(e).closest(".e-treeview.e-js").data("ejTreeView")),l=h?{draggedElement:n(f.element).closest(".e-item"),draggedElementData:i._getNodeDetails(n(f.element).closest(".e-item")),dragTarget:e,target:s,targetElementData:h._getNodeDetails(s),event:f.event}:{draggedElement:n(f.element).closest(".e-item"),draggedElementData:i._getNodeDetails(n(f.element).closest(".e-item")),dragTarget:e,target:s,targetElementData:i._getNodeDetails(s),event:f.event},(n(f.element).parent().parent().has(n(e)).length==0||i.model.allowMultiSelection&&i.model.selectedNodes.length>1)&&(n(e).hasClass("e-droppable")||n(e).parent().hasClass("e-droppable"))&&n(e).hasClass("e-dropchild")&&!n(e).hasClass("e-node-disable")&&(i.model.allowDragAndDropAcrossControl||!i.model.allowDragAndDropAcrossControl&&n(e).parents(".e-treeview").is(i.element))?(document.body.style.cursor="",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-plus"),n(e).addClass("allowDrop")):o.model.allowDropChild&&o.model.allowDropSibling&&(n(e).hasClass("e-droppable")&&!n(e).hasClass("e-item")&&!n(e).hasClass("e-text")||n(e).is("UL")&&n(e).hasClass("e-ul")&&n(e).find(".e-item").length==0&&n(e).parent(".e-treeview-wrap").length>0)?(document.body.style.cursor="",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-plus")):(n(e).hasClass("e-sibling")||n(e).find("a").hasClass("e-text"))&&(n(e).hasClass("e-sibling")||n(e).parent().parent().hasClass("e-item")||n(e).parent().hasClass("e-item")||n(e).hasClass("e-item")||n(e).hasClass("e-text"))&&(e.nodeName.toUpperCase()!="LI"&&(e.parentElement===null||e.parentElement.nodeName.toUpperCase()!="LI")||o.model.allowDropSibling)&&(i.model.allowDragAndDropAcrossControl||n(e).parents(".e-treeview").is(i.element))||(document.body.style.cursor="not-allowed",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-minus"),n(e).removeClass("showline-hover"),n(e).removeClass("noline-hover")),e.nodeName!="A"&&(n(f.element).parent().parent().has(n(e)).length==0||i.model.allowMultiSelection&&i.model.selectedNodes.length>1)&&n(f.element).parent().parent()[0]!=n(e)[0]?(e.nodeName=="UL"&&n(e).children()[0]!=null&&(e=n(e).children()[0],u=!0),e.nodeName!="LI"&&(e=n(e).closest(".e-droppable")[0]||n(e).parent()),e.nodeName=="LI"&&n(e).hasClass("e-droppable")&&n(e).hasClass("e-dropsibling")&&(i.model.allowDragAndDropAcrossControl||!i.model.allowDragAndDropAcrossControl&&n(e).parents(".e-treeview").is(i.element))?(c=t.buildTag("div.e-sibling"),a=n(e).offset().top+n(e).find("a").height()||-1,u=f.event.pageY>a?!1:!0,u?c.insertBefore(n(e).find("> div > a").parent()):c.insertAfter(n(e).find("> div > a").parent()),n(e).parents().hasClass("e-rtl")?(document.body.style.cursor="",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-insertInbetween-rtl")):(document.body.style.cursor="",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-insertInbetween"))):e.nodeName=="A"&&n(e)&&n(e).hasClass("e-droppable")&&n(e).hasClass("e-dropchild")?(document.body.style.cursor="",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-plus"),n(e).addClass("allowDrop")):!n(e).hasClass("e-droppable")||n(e).hasClass("e-item")||n(e).hasClass("e-text")||(document.body.style.cursor="",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-plus"))):((n(f.element).parent().parent().has(n(e)).length==1||n(f.element).parent().parent().is(n(e)))&&(!i.model.allowMultiSelection||i.model.allowMultiSelection&&i.model.selectedNodes.length<=1)&&(document.body.style.cursor="not-allowed",n(r).find("span.e-dropedStatus").removeClass().addClass("e-dropedStatus e-icon e-minus")),n(".e-sibling").remove()),i._triggerEvent("nodeDrag",l)?!1:void 0},dragStop:function(t){var f,o,c,s,h,v,a,l,y;if((e&&(document.ondragstart=function(){return!0}),t.element.dropped||(r&&r.remove(),document.body.style.cursor=""),f=t.target,n(f).closest(".e-treeview-wrap").removeClass("e-dragging"),i.element.closest(".e-treeview-wrap").removeClass("e-dragging"),f.className=="e-sibling"&&(f=n(f).closest(".e-item")[0]),n(".e-sibling").remove(),n(f).hasClass("e-node-disable"))||(o=u?"Before":"After",s=i._findTarget(n(f)),o=f.nodeName=="A"?"Over":o,n(f).closest(".e-treeview.e-js")!=null&&(h=n(f).closest(".e-treeview.e-js").data("ejTreeView")),c=h?{draggedElementData:i._getNodeDetails(n(t.element).closest(".e-item")),draggedElement:n(t.element).closest(".e-item"),dropTarget:n(f),target:s,targetElementData:h._getNodeDetails(s),position:o,event:t.event,preventTargetExpand:!1}:{draggedElementData:i._getNodeDetails(n(t.element).closest(".e-item")),draggedElement:n(t.element).closest(".e-item"),dropTarget:n(f),target:s,targetElementData:i._getNodeDetails(s),position:o,event:t.event,preventTargetExpand:!1},i._triggerEvent("nodeDragStop",c)))return!1;if(v=i._isParentExpand(f),i.model.allowMultiSelection&&n(t.element).hasClass("e-active"))for(a=i.element.find(".e-item > div > .e-active"),l=0,y=a.length;l<y;l++)t.element=a[l],o=i._dropNode(f,t,o,u),o=="After"&&n(f).closest(".e-treeview.e-js").length&&(f=f.nodeName.toUpperCase()=="LI"?f.nextElementSibling:f.closest("li").nextElementSibling);else o=i._dropNode(f,t,o,u);if(c.preventTargetExpand&&!v&&i._preventParentNode(f),n(".allowDrop").removeClass("allowDrop"),n(t.element).attr("aria-grabbed",!1),n(f).hasClass("e-dropchild")||r&&r.remove(),s=i._findTarget(n(f)),c=h?{droppedElementData:h._getNodeDetails(n(t.element).closest(".e-item")),droppedElement:n(t.element).closest(".e-item"),dropTarget:n(f),target:s,targetElementData:h._getNodeDetails(s),position:o,event:t.event}:{droppedElementData:i._getNodeDetails(n(t.element).closest(".e-item")),droppedElement:n(t.element).closest(".e-item"),dropTarget:n(f),target:s,targetElementData:i._getNodeDetails(s),position:o,event:t.event},i._triggerEvent("nodeDropped",c))return!1;document.body.style.cursor=""},helper:function(u){var e,o,f,h;if(!t.isNullOrUndefined(u.element)&&!n(u.element).hasClass("e-node-disable")&&n(u.element).hasClass("e-draggable")&&(i=n(u.element).closest(".e-treeview.e-js").data("ejTreeView"),i))return r=t.buildTag("div.e-dragedNode e-widget"),e=t.util.getZindexPartial(i.element),r.css({"z-index":e}),r.addClass(i.model.cssClass+(i.model.enableRTL?" e-rtl":"")),o=i.element.find(".e-item > div > .e-active"),f=o.length,s=n(u.element).clone().addClass("dragClone"),this.spanEle=t.buildTag("span.e-icon e-plus e-dropedStatus"),r.append(this.spanEle),r.append(s),h=t.buildTag("span.e-drop-count",f),f>1&&i.model.allowMultiSelection&&n(u.element).hasClass("e-active")&&r.append(h),r.appendTo(n("body"))}})},_isParentExpand:function(t){var i=n(t).closest(".e-item"),r=!1;return i.length>0&&i[0].getAttribute("aria-expanded")=="true"&&(r=!0),r},_preventParentNode:function(t){var i=n(t).closest(".e-item"),u=n(i[0]).find(".e-treeview-ul"),r;n(u).css("display","none");i.length>0&&(i[0].setAttribute("aria-expanded",!1),r=n(i).find(".e-minus"),n(r).removeClass("e-minus").addClass("e-plus"))},_dropNode:function(t,i,r,u){var f=n(t).closest(".e-treeview.e-js").data("ejTreeView");return t.nodeName=="A"&&n(t).hasClass("e-dropchild")&&n(t).hasClass("e-droppable")||t.nodeName=="UL"&&n(t).children().length==0?(r="Over",n(t).is("UL")&&n(t).hasClass("e-ul")&&n(t).find(".e-item").length==0&&n(t).parent(".e-treeview-wrap").length>0&&f.model.allowDropChild?this._dropAsChildNode(n(t),n(i.element),i.event):f.model.allowDropChild&&n(i.element).parent().parent().has(n(t)).length==0&&(n(t).parent().parent().has(n(i.element)).length==0||this._isDescendant(n(t).parents("li:last").find(">ul>li"),n(i.element).parents("li:first")[0]))&&(this.model.allowDragAndDropAcrossControl||!this.model.allowDragAndDropAcrossControl&&n(t).parents(".e-treeview").is(this.element))&&this._dropAsChildNode(n(t).closest(".e-item"),n(i.element),i.event)):(t.nodeName=="UL"&&(t=n(t).children()[0]),t.nodeName!="LI"&&(t=n(t).closest(".e-droppable")[0]||n(t).parent()),t.nodeName=="LI"&&n(t).hasClass("e-dropsibling")&&n(t).hasClass("e-droppable")?f.model.allowDropSibling&&n(i.element).parent().parent().has(n(t)).length<1&&n(i.element).parent().parent()[0]!=n(t)[0]&&(this.model.allowDragAndDropAcrossControl||!this.model.allowDragAndDropAcrossControl&&n(t).parents(".e-treeview").is(this.element))&&this._dropAsSiblingNode(n(t),n(i.element),u,i.event):t.nodeName=="A"&&n(t).hasClass("e-dropchild")&&n(t).hasClass("e-droppable")&&(r="Over",f.model.allowDropChild&&n(i.element).parent().parent().has(n(t)).length==0&&(n(t).parent().parent().has(n(i.element)).length==0||this._isDescendant(n(t).parents("li:last").find(">ul>li"),n(i.element).parents("li:first")[0]))&&this._dropAsChildNode(n(t).closest(".e-item"),n(i.element),i.event))),r},_findTarget:function(n){return n.hasClass("e-text")||n.parents("a").hasClass("e-text")?n.closest(".e-item"):n.closest("ul").closest(".e-item").length>0?n.closest("ul").closest(".e-item"):this.element.find(n).length>0&&!this.model.template?n.parents("ul").first():this.element.find(n).length>0&&this.model.template?n.closest(".e-text").length>0?n.closest(".e-item"):n.parents("ul").first():n},_isDescendant:function(t,i){var r=!0;return n(t).each(function(n,t){if(t==i)return r=!1,!1;r=!0}),r},_childDrop:function(){n(this._treeView).find("ul .e-item div .e-text").ejDroppable({accept:n(this._treeView).find("ul .e-item div .e-text").addClass("e-dropchild"),drop:function(t,i){n(i.helper).hide()}})},_siblingDrop:function(){n(this._treeView).find("ul .e-item").addClass("e-dropsibling").ejDroppable({drop:function(t,i){n(i.helper).hide()}})},_dropAsSiblingNode:function(i,r,u){var f=r.parent().parent(),f=n(f),e;e=n(r.parents(".e-item")[1]);t.isNullOrUndefined(this.model.fields)||this.dataSource()==null||this.dataSource()instanceof t.DataManager||this._updateDataSource(r.parents(".e-item:first"),n(i),u,this);u?f.insertBefore(i):f.insertAfter(i);this.model.template||this._autoGenerateNodes(r.parents(".e-item:first"));this._modifyCss(e);this._isRender=!1;this._updateCheckState(f);this._updateCheckState(e);this._isRender=!0;f.find("> div > .e-minus").length>0&&!this.model.enableMultipleExpand&&this._denyMultipleExpand(f);this._updateChanges(n(i))},_dropAsChildNode:function(i,r){var u=r.parent().parent(),u=n(u),f;f=this._parentLevelDropChecking=n(r.parents(".e-item")[1]);n(i).is("UL")?n(i).append(u):this._appendNode(i,u);t.isNullOrUndefined(this.model.fields)||this.dataSource()==null||this.dataSource()instanceof t.DataManager||this._updateDataSource(r.parents(".e-item:first"),n(i).find("> div > .e-text").first(),"",this);this.model.template||this._autoGenerateNodes(r.parents(".e-item:first"));this._modifyCss(f);this._isRender=!1;this._updateCheckState(u);this._updateCheckState(f);this._isRender=!0;i.find("> div > .e-icon.e-plus:first").length>0&&this._expandNode(i);this._updateChanges(n(i))},_updateChanges:function(t){if(n(t)[0]!=null){var i=this,r=0;do i._updateNodes(),r==1&&i._updateTarget(this),r++,i=t.closest(".e-treeview.e-js").data("ejTreeView");while(i&&this._id!=i._id&&r==1)}},_updateTarget:function(n){this.model.allowDropChild!=n.model.allowDropChild&&(this.model.allowDropChild?this._childDrop():this._preventDropChild());this.model.allowDropSibling!=n.model.allowDropSibling&&(this.model.allowDropSibling?this._siblingDrop():this._preventDropSibling())},_updatePersistProb:function(){var f,t,s,e,i,o,u,r;for(this._removeField(this._newDataSource,this.model.fields,"selected"),this._removeField(this._newDataSource,this.model.fields,"expanded"),this._removeField(this._newDataSource,this.model.fields,"isChecked"),f=this.getSelectedNodes(),t=0,s=f.length;t<s;t++)this._updateField(this._newDataSource,n(f[t]).attr("id"),this.model.fields,"selected",!0);for(e=this.getExpandedNodes(),i=0,r=e.length;i<r;i++)this._updateField(this._newDataSource,n(e[i]).attr("id"),this.model.fields,"expanded",!0);if(this.model.showCheckbox)for(o=this.getCheckedNodes(),u=0,r=o.length;u<r;u++)this._updateField(this._newDataSource,n(o[u]).attr("id"),this.model.fields,"isChecked",!0)},_orderDataSource:function(){var f,r,u,e,i,o;if(this._beforeBaseClass(),this._updatePersistProb(),f=[],r=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource()instanceof t.DataManager&&this._templateType==2)return this._newDataSource;for(u=0,e=this._liList.length;u<e;u++)for(i=0,o=r.length;i<o;i++)n(document.getElementById(t.getObject(this.model.fields.id,r[i]))).length>0&&!t.isNullOrUndefined(r[i])&&!t.isNullOrUndefined(r[i][this.model.fields.id])&&r[i][this.model.fields.id].toString()==n(this._liList[u]).attr("id")&&(n(document.getElementById(t.getObject(this.model.fields.id,r[i]))).find("> ul .e-item").length==0?(this._deepPropertyDelete(this.model.fields.hasChild,r[i]),this._templateType==2&&delete r[i].child):this._templateType==1?t.createObject(this.model.fields.hasChild,!0,r[i]):this._updateChildData(r[i].child,this.model.fields),f.push(r[i]));return f},_updateDataSource:function(i,r,u,f){var o,e,c,s,l,h,a;n(i)[0]!=null&&n(r)[0]!=null&&(o=f,e=r.closest(".e-treeview.e-js").data("ejTreeView"),!o||!e||t.isNullOrUndefined(e.model.fields)||e.dataSource()==null||e.dataSource()instanceof t.DataManager||(r.is("A")?(c=r.closest(".e-item").attr("id"),l=r.closest(".e-item").find("> ul > .e-item"),s=l.length>0?l.length:r.closest(".e-item").index()):(c=r.parents(".e-item:first").attr("id"),h=r.next(".e-item"),a=r.prev(".e-item"),s=h.length>0?s=a.length>0?h.index()-1:u?r.index():h.index():u?r.index():r.index()+1),e&&o._findAndUpdate(i.attr("id"),c,o._newDataSource,s,e,r,u)))},_removeObject:function(n,i,r){for(var u=0,f=n.length;u<f;u++)if(!t.isNullOrUndefined(n[u])&&!t.isNullOrUndefined(n[u][r])&&n[u][r].toString()==i){n.splice(u,1);break}},_getObjectPosition:function(n,i,r){for(var f,u=0,e=n.length;u<e;u++){if(!t.isNullOrUndefined(n[u])&&!t.isNullOrUndefined(n[u][r])&&n[u][r].toString()==i)return u;if(n[u].hasOwnProperty("child")&&(f=this._getObjectPosition(n[u].child,i,r),f>=0))return f}return-1},_convertDataSourceTypes:function(n,i){for(var r=0;r<n.child.length;r++)t.createObject(this.model.fields.parentId,t.getObject(this.model.fields.id,n),n.child[r]),i.push(n.child[r]),n.child[r].hasOwnProperty("child")&&n.child[r].child.length>0&&this._convertDataSourceTypes(n.child[r],i);return n.child&&(delete n.child,t.createObject(this.model.fields.hasChild,!0,n)),i},_childObjectCollection:function(n,i,r,u){for(var e,f=0,o=n.length;f<o;f++)e=this._getChildNodes(i,{id:t.getObject(this.model.fields.id,n[f])}),e&&(u==2?(r[f].hasOwnProperty("child")||(r[f].child=[]),r[f].child=this._childObjectCollection(e,i,e,u)):(r=r.concat(e),r=this._childObjectCollection(e,i,r,u)));return r},_updateCopyData:function(t,r,u){var s=r.model.fields,o=u,f=JSON.parse(JSON.stringify(u[t])),e=this,h;return n.each(this.model.fields,function(n){(n!=="dataSource"||n!=="query")&&o[t][e.model.fields[n]]!==i&&(delete f[e.model.fields[n]],f[s[n]]=o[t][e.model.fields[n]])}),n.extend(h,f,!1)},_updateDataFields:function(n,i,r,u,f){for(var o=[],e=0,s=i.length;e<s;e++)f==1&&(this._removeObject(n,r,this.model.fields.parentId),this._deepPropertyDelete(this.model.fields.parentId,i[e]),this._deepPropertyDelete(this.model.fields.hasChild,i[e])),i[e].hasOwnProperty("child")&&(i[e].child=this._updateDataFields(n,i[e].child,t.getObject(this.model.fields.id,i[e]),u,f)),o.push(this._updateCopyData(e,u,i));return o},_deepPropertyDelete:function(n,r){if(!r||t.isNullOrUndefined(n))return i;var u=n.split(".");u.length>1?deepDelete(u.slice(1).join("."),r[u[0]]):delete r[n]},_findAndUpdate:function(n,i,r,u,f,e,o){var k,a,w,d,b,it,y,nt,c,p,s,v,h;if(!t.isNullOrUndefined(r))if(this._templateType==1){for(c=0,p=r.length;c<p;c++)if(k=t.getObject(this.model.fields.id,r[c]),!t.isNullOrUndefined(r[c])&&!t.isNullOrUndefined(k)&&k.toString()==n){if(this._id==f._id)t.isNullOrUndefined(i)?this._deepPropertyDelete(this.model.fields.parentId,r[c]):t.createObject(this.model.fields.parentId,i,r[c]),a=this.dataSource(),w=this,this._deepWatch&&(d=r.splice(c,1),h=this._getObjectPosition(a,e.attr("id"),this.model.fields.id),h>=0&&!e.is("A")?r.splice(o?h:h+1,0,d[0]):r.push(d[0]),this._oldDataSource=JSON.parse(JSON.stringify(r)),this.dataSource(r)),this._templateType=this._getTemplateType(a,this.model.fields),this._dataSource=this._templateType==1?this._groupingObjects(a,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(w.model.fields.parentId,n)].toString()]}):a;else{var s=[],l,w=this,g,v=[],tt=[];if(g=this._groupingObjects(r,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(w.model.fields.parentId,n)].toString()]}),tt=r.splice(c,1),s.push(this._updateCopyData(0,f,tt)),l=this._getChildNodes(g,{id:n}),l&&l.length>0&&(l=this._childObjectCollection(l,g,l,f._templateType)),f._templateType==2)l&&l.length>0&&(y=this._updateDataFields(r,l,n,f,this._templateType),s[0].hasOwnProperty("child")||(s[0].child=[]),s[0].child=y),this._deepPropertyDelete(f.model.fields.parentId,s[0]),this._deepPropertyDelete(f.model.fields.hasChild,s[0]),f._deepWatch?(h=this._getObjectPosition(f._newDataSource,e.attr("id"),f.model.fields.id),h=h>=0&&!e.is("A")?o?h:h+1:u,i?f._changeObjectPos(i,s,f._newDataSource,h):f._newDataSource.splice(h,0,s[0])):i?f._changeObjectPos(i,s,f._newDataSource,u):f._newDataSource.splice(u,0,s[0]);else{if(l&&l.length>0){for(b=0,it=l.length;b<it;b++)this._removeObject(r,t.getObject(this.model.fields.id,l[b]),this.model.fields.id);this._dataSource=this._templateType==1?this._groupingObjects(r,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(w.model.fields.parentId,n)].toString()]}):r}if(i?t.createObject(f.model.fields.parentId,i,s[0]):this._deepPropertyDelete(f.model.fields.parentId,s[0]),f._deepWatch?(h=this._getObjectPosition(f._newDataSource,e.attr("id"),f.model.fields.id),h>=0&&!e.is("A")?f._newDataSource.splice(o?h:h+1,0,s[0]):f._newDataSource.push(s[0])):f._newDataSource.push(s[0]),y=[],l&&l.length>0){if(!(this.dataSource()instanceof t.DataManager)){for(c=0;c<l.length;c++)y.push(this._updateCopyData(c,f,l));l=y}nt=f._newDataSource=f._newDataSource.concat(l);f._dataSource=f._templateType==1?f._groupingObjects(nt,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(f.model.fields.parentId,n)].toString()]}):nt}}f._deepWatch&&(f.dataSource(f._newDataSource),f._oldDataSource=JSON.parse(JSON.stringify(f._newDataSource)));this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource))}break}}else for(c=0,p=r.length;c<p;c++){if(t.getObject(this.model.fields.id,r[c]).toString()==n)return s=r.splice(c,1),this._id==f._id?this._deepWatch?(h=this._getObjectPosition(this._newDataSource,e.attr("id"),this.model.fields.id),h=h>=0&&!e.is("A")?o?h:h+1:u,i?this._changeObjectPos(i,s,this._newDataSource,h):this._newDataSource.splice(h,0,s[0]),this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource)):i?this._changeObjectPos(i,s,this._newDataSource,u):this._newDataSource.splice(u,0,s[0]):(s=this._updateDataFields(r,s,n,f,this._templateType),f._templateType==1?(v=[],s[0].hasOwnProperty("child")?(v=f._convertDataSourceTypes(s[0],v),s[0]=s.concat(v)):s[0]=s.concat(),i?t.createObject(f.model.fields.parentId,i,s[0][0]):this._deepPropertyDelete(f.model.fields.parentId,s[0][0]),f._deepWatch?(h=this._getObjectPosition(f._newDataSource,e.attr("id"),f.model.fields.id),h>=0&&!e.is("A")?f._newDataSource.splice(o?h:h+1,0,s[0][0]):f._newDataSource.push(s[0][0]),f._newDataSource=f._newDataSource.concat(v)):f._newDataSource=f._newDataSource.concat(s[0])):f._deepWatch?(h=this._getObjectPosition(f._newDataSource,e.attr("id"),f.model.fields.id),h=h>=0&&!e.is("A")?o?h:h+1:u,i?f._changeObjectPos(i,s,f._newDataSource,h):f._newDataSource.splice(h,0,s[0])):i?f._changeObjectPos(i,s,f._newDataSource,u):f._newDataSource.splice(u,0,s[0]),f._deepWatch&&(f.dataSource(f._newDataSource),f._oldDataSource=JSON.parse(JSON.stringify(f._newDataSource))),this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource))),!0;if(r[c].hasOwnProperty("child")&&this._findAndUpdate(n,i,r[c].child,u,f,e,o))break}},_changeObjectPos:function(n,i,r,u){for(var f=0,e=r.length;f<e;f++){if(t.getObject(this.model.fields.id,r[f]).toString()==n)return r[f].hasOwnProperty("child")?r[f].child.splice(u,0,i[0]):(r[f].child=[],r[f].child.push(i[0])),!0;if(r[f].hasOwnProperty("child")&&this._changeObjectPos(n,i,r[f].child,u))break}},_finalizeEditing:function(t){if(n(t)[0]!=null){var i=t.closest(".e-treeview.e-js").data("ejTreeView");i&&(i._preventEditable(),i.model.allowEditing&&i._allowEditable())}},_updateCheckState:function(n){var t,i,r;this._isTreeElement(n)&&(t=n.closest(".e-treeview.e-js").data("ejTreeView"),t&&t.model.showCheckbox&&(i=n.children("ul").find(".e-item > div > .e-chkbox-wrap > .checked").closest(".e-item").addClass("checked"),i.length>0?t._isCheckedAction():(r=t.isNodeChecked(n)?"_nodeCheck":"_nodeUncheck",t[r](n.find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0]))))},_autoGenerateNodes:function(t){var i,u,r,f;if(n(t)[0]!=null)if(i=t.closest(".e-treeview.e-js").data("ejTreeView"),i&&i.model.showCheckbox){if(t.find(".e-chkbox-wrap").length==0){for(this._checkboxOnTemplate(t[0].children[0]),u=t.find(".e-item"),r=0,f=u.length;r<f;r++)this._checkboxOnTemplate(u[r].children[0]);t.find(".nodecheckbox").ejCheckBox({cssClass:i.model.cssClass,change:i._checkedChange})}}else t.find(".e-chkbox-wrap").remove()},_appendNode:function(i,r){var u,o,f,s,e;for(this._isTreeElement(i)?(i.find("ul.e-treeview-ul")[0]==null?(u=i.closest(".e-treeview.e-js").data("ejTreeView"),u&&(s=this._isNodeExpanded(i),!s&&u.model.loadOnDemand&&i.find("> div > div").first().hasClass("e-plus")&&u._createChildNodesWhenExpand(i,null,null,null,r,u)),this.dataSource()instanceof t.DataManager&&u.model.loadOnDemand&&i.find("> div > div").first().hasClass("e-plus")||this._doAfterExpand(i,r,u),this._deepWatch&&this._templateType==1&&(this._updateField(this._newDataSource,i.attr("id"),this.model.fields,"hasChild",!0),this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource))):n(i.find("ul.e-treeview-ul")[0]).append(r),this.isDisabled(i)||this._expandNode(i)):this.element.is("UL")?this.element.append(r):this.element.children("ul:first").length>0?this.element.children("ul:first").append(r):(o=t.buildTag("ul.e-treeview-ul","",{},{role:"group"}),o.append(r),this.element.append(o)),f=this.element.find(".e-item.expanded"),e=0;e<f.length;e++)this.model.loadOnDemand&&!(this.dataSource()instanceof t.DataManager)?this._createChildNodesWhenExpand(n(f[e])):this._expandNode(n(f[e]));f.removeClass("expanded");this.model.showCheckbox&&this._isCheckedAction()},_doAfterExpand:function(i,r,u){var e=t.buildTag("ul.e-treeview-ul","",{},{role:"group",style:"display:none"}),f;n(e).append(n(r));n(i.find("div")[1]).length==0?(f=document.createElement("div"),f.setAttribute("role","presentation"),f.className="e-icon e-minus",n(i.find("div")).append(n(f))):n(i.find("div")[1]).hasClass("e-minus")||n(i.find("div")[1]).addClass("e-icon e-plus");u&&u.model.loadOnDemand&&i.find("ul.e-treeview-ul").length>0?i.children("ul.e-treeview-ul").append(n(r)):i.append(n(e))},_modifyCss:function(t){t=n(t);t[0]!=null&&t.find(".e-item").length==0&&(t.removeClass("e-collapse").attr("aria-expanded",!1).find("> div > .e-icon").removeClass("e-icon e-minus").closest(".e-item").find("ul").remove(),this._deepWatch&&(this._updateField(this._newDataSource,t.attr("id"),this.model.fields,"expanded",!1),this._templateType==1&&this._updateField(this._newDataSource,t.attr("id"),this.model.fields,"hasChild",!1),this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource)))},_applyFirstLastChildClass:function(){n(this._liList).removeClass("first last").filter(":first-child:not(:last-child)").addClass("first");n(this._liList).filter(":last-child").addClass("last")},_expandEventHandler:function(t){var i=n(t.target),r,u;i.hasClass("e-icon")||i.closest(".e-item").hasClass("e-node-disable")||t.type==="dblclick"&&this.model.allowEditing||(t.preventDefault(),r=i.is("A")?n(i.siblings("div")):n(i.parents(".e-text-wrap").find("div")),this.model.fullRowSelect&&(i.is("div.e-text-wrap")||i.is("div.e-fullrow"))&&(r=i.closest(".e-item").find("> .e-text-wrap > div")),u=i.closest(".e-item"),r.hasClass("e-minus")?this._collapseNode(u):this.model.loadOnDemand&&r.find(".e-item").length==0?this._ClickEventHandler({target:r[0]}):this._expandNode(u))},_inlineEdit:function(t){t.preventDefault();var i=n(t.target);return i.hasClass("input-text")||i.hasClass("e-node-disable")||(i.is("A")||(i=i.closest(".e-text")),i.is("A")&&!i.hasClass("e-node-disable")&&this._inlineEditAction(i)),!1},_inlineEditAction:function(n){var t=this.element.find(".e-item > div > .e-text > #Edit_Input");t[0]==null&&this._createEditTextBox(n)},_createEditTextBox:function(r){var s={currentElement:r},u,h,f,o,e;return this._triggerEvent("beforeEdit",s)?!1:(u=this.element.find(".e-item > div > .e-text > #Edit_Input"),u[0]==null&&(f=t.buildTag("Input.input-text#Edit_Input","","",{type:"text",value:n.trim(r.text()).replace(/\n\s+/g," "),name:"inplace_value"}),n(f).css("width",r.outerWidth()+5+"px"),n(f).css("height",r.outerHeight()+"px"),f.addClass("e-tree-input e-textbox"),this._beforeEditText=r.text(),r[0].lastChild.nodeValue="",this.model.template&&(o=r.closest("li")["0"].id,e=this._getNodeObject(o,!0),r["0"].innerHTML=" ",e&&e.length!=0&&(f["0"].value=e["0"]!=i?e["0"]:"",n(f).css("width",r.outerWidth()+80+"px"),n(f).css("height",r.outerHeight()+10+"px"))),r.addClass("e-editable").append(f),u=f,h=u.val().length==""?3:r.outerWidth()+20,this._mousePositionAtEnd(u),this._currentEditableNode=r,this._on(u,"keypress",this._editTextBoxKeyPress)._on(u,"keydown",this,this._pressEscKey)._on(u,"mousedown pointerdown MSPointerDown",this,this._preventPropagation)._on(u,this.model.expandOn,this,this._preventPropagation)._on(u,"blur",this._focusout)),u)},_preventPropagation:function(n){n.stopImmediatePropagation();this._isTextbox=!0},_editTextBoxKeyPress:function(n){n.target.size=n.target.value.length+1},_mousePositionAtEnd:function(n){return n.focus&&n.focus(),n.select&&n.select(),!0},_focusElement:function(t){var r,i;this._isTextbox||(t&&(t.type=="touchstart"||t.type=="pointerdown"||t.type=="MSPointerDown")&&(r=n(t.currentTarget),r.hasClass("e-text")&&this.selectNode(r.closest(".e-item"))),this.model.template?(i=n(t.target).closest(".e-text")[0],i=i?i:t.target,this._focusNode(i)):this._focusNode(t.target))},_blurElement:function(t){n(t.target).hasClass("e-text")&&t.target.removeAttribute("tabindex")},_focusout:function(t){var i=n(t.currentTarget),r;this._isTextbox=!1;r={id:i.closest(".e-item").attr("id"),oldText:this._beforeEditText,newText:i.val()};this._triggerEvent("inlineEditValidation",r)?this._cancelAction(i):this._saveAction(i,t)},_pressEscKey:function(i){var r,f,u,e;i.cancelBubble=!0;i.returnValue=!1;r=n(i.currentTarget);r[0]!=null&&(f=r.closest(".e-text")[0],i.keyCode==13&&(i.stopPropagation(),this._focusout(i)),i.keyCode==27&&this._cancelAction(r),(i.keyCode==13||i.keyCode==27)&&(u=t.browserInfo(),e=u.name=="msie"&&u.version=="8.0"?!0:!1,e&&this._focusNode(f)))},_onFocusHandler:function(n){n.preventDefault()},_onKeyDown:function(n,t){var u=this.element.find("#"+this._id+"_active"),r,i;u.removeAttr("id");r=n.find("> div > .e-text:first");i=t.find("> div > .e-text:first");r.removeClass("e-node-focus");i.addClass("e-node-focus");this.element.removeAttr("aria-activedescendant");i.closest(".e-item")[0].id!=null&&i.closest(".e-item")[0].id!=""?this.element.attr("aria-activedescendant",i.closest(".e-item")[0].id):(i.closest(".e-item").attr("id",this._id+"_active"),this.element.attr("aria-activedescendant",this._id+"_active"));this.model.fullRowSelect&&(n.removeClass("e-li-focus"),t.addClass("e-li-focus"))},_KeyPress:function(t){var f,r=this,s,e,i,p,h,w,l,a,v,k,b,o,y,u,c,d;if(c=this.element.is("ul")?this.element:this.element.find("> ul"),f=t.keyCode?t.keyCode:t.which?t.which:t.charCode,r.model.allowKeyboardNavigation&&r.element.find("#Edit_Input").length<1&&r.element.find(".e-chkbox-wrap.e-focus").length<1)if(this.element.find(".e-animate").removeClass("e-animate"),s=n(c.find(".e-item > div > .e-text.e-active").closest(".e-item")[0]),e=c.find(".e-item:visible"),r._focusedNode?(i=r._focusedNode,r._focusedNode=null):i=c.find(".e-text.e-node-focus").closest(".e-item"),f==113&&(t.preventDefault(),c=i.length>0?i:s,c.length>0&&r.model.allowEditing&&!this.model.template&&(t.target=c.find("> div > .e-text:first"),r._inlineEdit(t))),f!=40||t.altKey)if(f!=38||t.altKey)if((f!=39||this.model.enableRTL||t.altKey)&&(f!=37||!this.model.enableRTL))if((f!=37||this.model.enableRTL||t.altKey)&&(f!=39||!this.model.enableRTL)){if(f!=36||t.altKey){if(f!=35||t.altKey){if(f==13)t.preventDefault(),u=i.length>0?i:s,k=u.find("> div > .e-text"),k.removeClass("e-node-focus"),this.model.fullRowSelect&&u.removeClass("e-li-focus"),k.hasClass("e-active")?r.model.allowMultiSelection&&r._nodeUnSelectionAction(u,event):r._nodeSelectionAction(u,t),r._focusedNode=u;else if(f==32)t.preventDefault(),u=i.length>0?i:s,u.length>0&&this.model.showCheckbox&&(b=u.find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0],b.checked?this._nodeUncheck(b):this._nodeCheck(b),r._focusedNode=u);else if(f==46)t.preventDefault(),u=i.length>0?i:this.model.allowMultiSelection?c.find(".e-item > div > .e-text.e-active").closest(".e-item"):s,u.length>0&&(this._removeNode(u,t),o=n(e[0]).find("> div > .e-text:first"),this._focusNode(o[0]));else if(t&&t.ctrlKey==!0)if(f==88&&this.model.allowDragAndDrop&&this.model.allowDropChild){if(t.preventDefault(),u=i.length>0?i:s,u.length>0){if(y=u.parents(".e-item:first"),this._triggerEvent("beforeCut",{target:u,nodeDetails:this._getNodeDetails(u),keyCode:f,event:t}))return;this._cutNode=n(e[e.index(u)]).detach();n(this._cutNode)[0]!=null&&(this._isRender=!1,this.unselectNode(u),y.find("> ul > .e-item").length==0&&(this.collapseNode(y),this._modifyCss(y)),this._isRender=!0,this._triggerEvent("nodeCut",{parentElement:y,parentDetails:this._getNodeDetails(y),keyCode:f,event:t}))}}else if(f==86&&this._cutNode!=null&&this.model.allowDragAndDrop&&this.model.allowDropChild){if(t.preventDefault(),u=i.length>0?i:s,u=n(e[e.index(u)]),u.length===0&&(u=this.element),c=this._cutNode.find(" > div > .e-text").first(),n(e).length>0){if(this._triggerEvent("beforePaste",{target:u,nodeDetails:this._getNodeDetails(u),keyCode:f,event:t}))return;this._isRender=!1;this._dropAsChildNode(u,c,t);this._isRender=!0;this._cutNode=null;d=c.closest(".e-item");this._triggerEvent("nodePaste",{target:d,nodeDetails:this._getNodeDetails(d),keyCode:f,event:t})}}else r.model.allowMultiSelection&&(r._focusedNode=i)}else if(t.preventDefault(),v=i.length>0?i:s,a=n(e).last(),(a.hasClass("e-node-disable")||a.hasClass("hidden"))&&(a=this._getPrevEle(e,a)),s.length>0&&i.length==0&&s[0]!=a[0]||i.length>0&&i[0]!=a[0]){if(r._KeyPressEventHandler(a,r,f,t))return;r._onKeyDown(v,a)}}else if(t.preventDefault(),v=i.length>0?i:s,l=n(e).first(),(l.hasClass("e-node-disable")||l.hasClass("hidden"))&&(l=this._getNextEle(e,l)),s.length>0&&i.length==0&&s[0]!=l[0]||i.length>0&&i[0]!=l[0]){if(r._KeyPressEventHandler(l,r,f,t))return;r._onKeyDown(v,l)}}else if(t.preventDefault(),w=i.length>0?i.find("> div > div").first():s.find("> div > div").first(),h=w.closest(".e-item"),w.hasClass("e-minus"))this._collapseNode(n(e[e.index(w.closest(".e-item"))]));else{if(h=n(e[e.index(h)]).closest("ul").closest(".e-item"),r._KeyPressEventHandler(h.length>0?h:"",r,f,t))return;h.length>0&&r._onKeyDown(i,h)}else if(t.preventDefault(),p=i.length>0?i.find("> div > div").first():s.find("> div > div").first(),o=p.closest(".e-item"),p.hasClass("e-plus"))this.model.loadOnDemand&&o.find("> ul .e-item").length==0?this._ClickEventHandler({target:p[0]}):this._expandNode(n(e[e.index(o)]));else{if(o=this._getNextEle(e,o),r._KeyPressEventHandler(o.length>0?o:"",r,f,t))return;(o.length>0&&o[0]==p.closest(".e-item").find("ul > .e-item:first")[0]||o.find("ul > .e-item").first().hasClass("e-node-disable"))&&r._onKeyDown(i,o)}else{if(t.preventDefault(),v=i.length>0?i:s,h=this._getPrevEle(e,v),r._KeyPressEventHandler(h.length>0?h:null,r,f,t))return;h.length>0&&r._onKeyDown(i,h)}else{if(t.preventDefault(),v=i.length>0?i:s,o=this._getNextEle(e,v),r._KeyPressEventHandler(o.length>0?o:null,r,f,t))return;o.length>0&&r._onKeyDown(i,o)}},_getNextEle:function(t,i){var u=t.index(i),r;do u++,r=n(t[u]);while(r.hasClass("e-node-disable")||r.hasClass("hidden"));return r},_getPrevEle:function(t,i){var u=t.index(i),r;do u--,r=n(t[u]);while(r.hasClass("e-node-disable")||r.hasClass("hidden"));return r},_removeChildNodes:function(n,i,r){for(var e,f,o,s=0,h,u=0;u<i.length;u++)if(e=t.getObject(this.model.fields.parentId,i[u][0]),!t.isNullOrUndefined(e)&&e.toString()==r){s=i[u].length;break}for(u=0;u<s;u++)for(f=0;f<n.length;f++)if(o=t.getObject(this.model.fields.parentId,n[f]),!t.isNullOrUndefined(o)&&o.toString()==r){t.isNullOrUndefined(n[f])||(h=t.getObject(this.model.fields.id,n[f]).toString());n.splice(f,1);this._removeChildNodes(n,i,h);break}},_removeNode:function(i,r){var u,s,o,e,f;if(i[0]!=null&&i[0]!=null&&i.length>0){if(e=this,u=n(i[0]).closest("ul").closest(".e-item"),s=n(i[0]),o=n(i).closest(".e-treeview.e-js").data("ejTreeView"),o._triggerEvent("beforeDelete",{target:s,nodeDetails:o._getNodeDetails(s),parentElement:u[0]!=null?u:null,parentDetails:o._getNodeDetails(u),event:r,removedNodes:i}))return;if(this._isRender=!1,this.dataSource()instanceof t.DataManager?(f=this._newDataSource,this._removeData(i,f)):!t.isNullOrUndefined(this.dataSource())&&this.dataSource().length>0&&(f=this.dataSource(),this._removeData(i,f),this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(f)),this.dataSource(f))),i.remove(),this._modifyCss(u),this._updateNodes(),this._updateCheckState(u),this._isRender=!0,o._triggerEvent("nodeDelete",{parentElement:u[0]!=null?u:null,parentDetails:o._getNodeDetails(u),event:r,removedNodes:i}))return;e=this;f=this.dataSource();setTimeout(function(){e.dataSource()==null||e.dataSource()instanceof t.DataManager||(e._dataSource=e._groupingObjects(f,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(e.model.fields.parentId,n)].toString()]}))},300)}},_removeData:function(t,i){for(var r=0,u=t.length;r<u;r++)this._templateType==2?this._removeRemoteData(i,n(t[r]),this.model.fields):this._removeLocalData(i,n(t[r]))},_removeLocalData:function(n,i){for(var u,f,e,o=this,r=0;r<n.length;r++)if(u=i.attr("id"),f=t.getObject(this.model.fields.id,n[r]),f&&f.toString()==u){e=this._groupingObjects(n,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(o.model.fields.parentId,n)].toString()]});n.splice(r,1);this._removeChildNodes(n,e,u);break}},_removeRemoteData:function(n,i,r){for(var e,f,u=0;u<n.length;u++){if(e=i.attr("id"),f=t.getObject(r.id,n[u]),f&&f.toString()==e){n.splice(u,1);break}n[u].hasOwnProperty("child")&&this._removeRemoteData(n[u].child,i,r.child?r.child:r)}},_updateNodes:function(){this._beforeBaseClass();this._applyFirstLastChildClass();this._updateExpandedNodes();this._updateCheckedNodes();this._updateSelectedNode()},_updateField:function(n,i,r,u,f){var c,e,s,l,o,h;if(!t.isNullOrUndefined(r)&&this.dataSource()!=null&&!t.isNullOrUndefined(n)&&!t.isNullOrUndefined(i)&&!t.isNullOrUndefined(u))if(this._templateType==1){for(e=0,s=n.length;e<s;e++)if(c=t.getObject(r.id,n[e]),!t.isNullOrUndefined(n[e])&&!t.isNullOrUndefined(c)&&c.toString()==i){o=r[u]?r[u]:u;n[e][o]=f;f==!1&&delete n[e][o];h=n[e];n.splice(e,1,h);break}}else for(e=0,s=n.length;e<s;e++){if(l=t.getObject(r.id,n[e]),!t.isNullOrUndefined(n[e])&&!t.isNullOrUndefined(l)&&l.toString()==i){o=r[u]?r[u]:u;n[e][o]=f;f==!1&&delete n[e][o];h=n[e];n.splice(e,1,h);break}n[e].hasOwnProperty("child")&&this._updateField(n[e].child,i,r.child?r.child:r,u,f)}},_removeField:function(n,r,u){if(!t.isNullOrUndefined(r)&&this.dataSource()!=null&&!t.isNullOrUndefined(n))for(var f=0;f<n.length;f++)n[f][r[u]]!=i&&delete n[f][r[u]],n[f].hasOwnProperty("child")&&this._removeField(n[f].child,r.child?r.child:r,u)},_KeyPressEventHandler:function(t,i,r,u){var f,e,o,s;return n(t)[0]!=null?(s=this._isNodeExpanded(t),f=this._getNodeDetails(t),o=i._getPath(t),e={keyCode:r,currentElement:t,value:f.text,isExpanded:s,path:o,event:u,id:f.id,parentId:f.parentId}):e={keyCode:r,currentElement:t,value:"",isExpanded:"",path:"",event:u,id:"",parentId:""},this._triggerEvent("keyPress",e)},_documentClick:function(t){var i,e,u,f;if(t.target.id!="Edit_Input"&&(i=n("#Edit_Input")[0]),i!=null){var e=n(i).closest(".e-text")[0],u=i.value,r=n(i).closest(".e-item");n(i).remove();e.lastChild.nodeValue=u;n(e).removeClass("e-editable").removeAttr("style");this._updateField(this._newDataSource,r.attr("id"),this.model.fields,"text",u);this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource));this._triggerEvent("nodeEdit",{id:r.attr("id"),oldText:this._beforeEditText,newText:u,target:r,nodeDetails:this._getNodeDetails(r),event:t})}this.element.find(t.target).length==0?(f=this.element.find(".e-item > div > .e-text.e-node-focus"),this._focusedNode=f.closest(".e-item"),f.removeClass("e-node-focus")):n(t.target).hasClass("e-active")&&(this._focusedNode=this.element.find(t.target).closest(".e-item"))},_saveAction:function(t,i){var e=t.val(),r=t.closest(".e-item"),u=t.closest(".e-text")[0],o=t.closest("li")["0"].id,f;t.remove();u!=null&&(u.lastChild.nodeValue=e,n(u).removeClass("e-editable"),this._updateField(this._newDataSource,r.attr("id"),this.model.fields,"text",e),this.model.template&&(f=this._getNodeObject(o),f&&f.length!=0&&(u.innerHTML=this._renderEjTemplate(this.model.template,f["0"]))),this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource)),this._triggerEvent("nodeEdit",{id:r.attr("id"),oldText:this._beforeEditText,newText:e,target:r,nodeDetails:this._getNodeDetails(r),event:i}),this.element.focus(),this._focusedNode=r)},_cancelAction:function(t){var i=t.closest(".e-text")[0];t.remove();i.lastChild.nodeValue=this._beforeEditText;n(i).removeClass("e-node-hover e-editable");this.element.focus()},_focusNode:function(t){n(t).hasClass("e-text")&&t.setAttribute("tabindex","0");t.focus()},_mouseEnterEvent:function(t){this.element.find(".e-node-hover").removeClass("e-node-hover");n(t.currentTarget).hasClass("e-text")&&!n(t.currentTarget).hasClass("e-node-disable")&&n(t.currentTarget).addClass("e-node-hover")},_mouseLeaveEvent:function(t){n(t.currentTarget).removeClass("e-node-hover")},_liMouseEnterEvent:function(t){this.element.find(".e-node-hover").removeClass("e-node-hover");this.element.find(".e-li-hover").removeClass("e-li-hover");var r=n(t.currentTarget).closest(".e-item"),i=r.find("> div .e-text");i.length>0&&!i.hasClass("e-node-disable")&&(i.addClass("e-node-hover"),r.addClass("e-li-hover"))},_liMouseLeaveEvent:function(t){var i=n(t.currentTarget).closest(".e-item");i.find("> div .e-text").removeClass("e-node-hover");i.removeClass("e-li-hover")},_onFocusOutHandler:function(){this._isPopup||this._hidePopup();this._isPopup=!1},_createObjectByText:function(i,r){if(typeof i=="string"){var u={};return t.createObject(this.model.fields.text,i,u),n(r)[0]!=null&&t.createObject(this.model.fields.parentId,r[0].getAttribute("id"),u),u}},_addNodesWhenObject:function(i,r){var l=JSON.stringify(this._dataSource),e=this.dataSource(),f,h,u,s,o,c;if(this._dataSource=[],this.dataSource()!=null&&this.dataSource()instanceof t.DataManager&&(e=[]),r[0]!=null&&r.length>0&&(f=r[0].getAttribute("id")),t.isNullOrUndefined(i.length))this._dataSource.push(i),t.isNullOrUndefined(this.dataSource())||(this._setNodeId(i,this.model.fields),t.isNullOrUndefined(f)||t.createObject(this.model.fields.parentId,f,i),e.push(i));else if(this._dataSource=i,!t.isNullOrUndefined(this.dataSource()))for(u=0;u<i.length;u++)this._setNodeId(i[u],this.model.fields),f?t.createObject(this.model.fields.parentId,f,i[u]):this._deepPropertyDelete(this.model.fields.parentId,i[u]),e.push(i[u]);for(h=this._templateType,this._templateType=2,this._liList||(this._liList=n("li",this.element)),s=document.createDocumentFragment(),o=0,c=this._dataSource.length;o<c;o++)s.appendChild(this._genTemplate(this._dataSource[o],this.model.fields)),this._liList.push(n(s).children()[0]),this.dataSource()instanceof t.DataManager&&this._addRemoteData(this._newDataSource,f,this._dataSource[o],this.model.fields);return this._templateType=h,this.dataSource()==null||this.dataSource()instanceof t.DataManager||(this._dataSource=JSON.parse(l),this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(e)),this.dataSource(e))),s},_setNodeId:function(n,i){var u=i&&i.id?i.id:this.model.fields.id,f,r,e;if((t.isNullOrUndefined(n[u])||n[u]=="")&&(n[u]=this._id+"_"+this._indexID,this._indexID++),n.hasOwnProperty("child"))for(f=n.child,r=0,e=f.length;r<e;r++)this._setNodeId(f[r],i.child)},_addExpandedNodes:function(t){var i=this.model.expandedNodes;this._removeNullInArray(i);n.inArray(t,i)==-1&&this.model.expandedNodes.push(t);this._persistValues(this.model.expandedNodes,"expandedNodes")},_removeExpandedNodes:function(t){var i=this.model.expandedNodes;n.inArray(t,i)>-1&&(this.model.expandedNodes.splice(n.inArray(t,i),1),i.length==0&&i.push(-1));this._persistValues(this.model.expandedNodes,"expandedNodes")},_persistValues:function(i,r){var f,o,c,s,u,l,h,e;if(!t.isNullOrUndefined(this.model.fields)&&this.dataSource()!=null){for(f=i,o=[],u=0,l=f.length;u<l;u++)!t.isNullOrUndefined(f[u])&&f[u]>=0&&(c=this._liList[f[u]],s=n(c).attr("id"),s&&o.push(s));h=this._getCookies("_persistedValues");h&&(e=JSON.parse(h),e[r]=o,e=this._updatePersistAttr(e),this._setCookies("_persistedValues",JSON.stringify(e)))}},_updatePersistAttr:function(i){return t.isNullOrUndefined(this._ignoreOnPersist)?(n.inArray("selectedNodes",this._addToPersist)==-1&&delete i.selectedNodes,n.inArray("expandedNodes",this._addToPersist)==-1&&delete i.expandedNodes,n.inArray("checkedNodes",this._addToPersist)==-1&&delete i.checkedNodes):(n.inArray("selectedNodes",this._ignoreOnPersist)>-1&&delete i.selectedNodes,n.inArray("expandedNodes",this._ignoreOnPersist)>-1&&delete i.expandedNodes,n.inArray("checkedNodes",this._ignoreOnPersist)>-1&&delete i.checkedNodes),i},_onChecked:function(n,i){var u=n.closest(".e-item"),f,e,o,r=this._getNodeDetails(u);this._CurrenctSelectedNodes.push(r.text);f=this._isChecked(u);e=t.isNullOrUndefined(i)?"":t.isNullOrUndefined(i.event)?"":i.event;o={currentElement:u,id:r.id,parentId:r.parentId,value:r.text,currentNode:this._CurrenctSelectedNodes,currentCheckedNodes:this._checkedArray,isChecked:f,event:e};this._isRender&&this._triggerEvent("nodeCheck",o)},_onUnChecked:function(n,i){var u=n.closest(".e-item"),f,e,o,r=this._getNodeDetails(u);this._CurrenctSelectedNodes.push(r.text);f=this._isChecked(u);e=t.isNullOrUndefined(i)?"":t.isNullOrUndefined(i.event)?"":i.event;o={currentElement:u,id:r.id,parentId:r.parentId,value:r.text,currentNode:r.text,currentUncheckedNodes:this._uncheckedArray,isChecked:f,event:e};this._triggerEvent("nodeUncheck",o)},_addCheckNodes:function(n){var t=this.model.checkedNodes;this._removeNullInArray(t);!t instanceof Array&&(t=[]);t.indexOf(n)==-1&&t.push(n)},_removeCheckNodes:function(n){var t=this.model.checkedNodes,i;!t instanceof Array&&(t=[]);i=t.indexOf(n);i!=-1&&(t.splice(i,1),t.length==0&&t.push(-1))},_removeNullInArray:function(n){var t=n.indexOf(-1);t!=-1&&n.splice(t,1)},_afterInsertingNode:function(n){this._addDragableClass();this._finalizeEditing(n);var t=n.closest("ul").closest(".e-item");this._modifyCss(t);this._updateCheckState(t);this._isSelectedAction();t.length>0&&t.hasClass("e-node-disable")&&this._nodeDisableAction(t);this._updateSelectedNode()},_insertBeforeOrAfter:function(i,r,u){var f,o,e,s;if(r=this._getNodeByID(r),r[0]!=null&&r.is("LI")&&r.hasClass("e-item")){if(this._triggerEvent("beforeAdd",{data:i,targetParent:r[0]!=null?r:null,parentDetails:this._getNodeDetails(r)}))return;if(this._isRender=!1,typeof i!="object"&&(i=this._createObjectByText(i)),typeof i!="object")return;t.getObject(this.model.parentId,i)&&this._deepPropertyDelete(this.model.parentId,i);f=this._addNodesWhenObject(i,r);o=document.createElement("ul");n(o).append(f);f=n(o.children);this.model.showCheckbox&&f.children().find(".nodecheckbox").ejCheckBox({cssClass:this.model.cssClass,change:this._checkedChange});r.parents(".e-item:first").length>0?r.parents(".e-item:first").append(f):this.element.append(f);this.model.showCheckbox&&this._isCheckedAction();this._dropAsSiblingNode(r,f.find("> div > .e-text"),u,"");this._afterInsertingNode(f);this._isRender=!0;this._triggerEvent("nodeAdd",{data:i,nodes:f,parentElement:r[0]!=null?r:null,parentDetails:this._getNodeDetails(r)});e=this;s=this.dataSource();setTimeout(function(){e.dataSource()==null||e.dataSource()instanceof t.DataManager||(e._dataSource=e._groupingObjects(s,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(e.model.fields.parentId,n)].toString()]}))},300)}},_getNodeByID:function(t){return typeof t!="object"&&t!=""&&t!=i?this.element.find(this._checkValidId(t.toString())):(t=n(t),t.is("A")&&t.hasClass("e-text")&&(t=t.closest(".e-item")),t)},_checkValidId:function(n){return n[0]=="#"?n.replace(/(:|\.|\[|\]|,)/g,"\\$1"):"#"+n.replace(/(:|\.|\[|\]|,)/g,"\\$1")},_isTreeElement:function(t){return n(t)[0]!=null&&t.is("LI")&&t.hasClass("e-item")},_isUrl:function(n){return/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/.test(n)},_getChildUl:function(n){return this.model.fullRowSelect?n.children[2]:n.children[1]},_sendAjaxOptions:function(n,t){var r=this,i,u;i=this._getNodeDetails(t);i.mapper=this.model.fields;i.model=this.model;u={url:n,data:i,type:"POST",async:!0,crossDomain:!0,dataType:"JSON",contentType:"application/json; charset=utf-8",success:function(n){try{r._ajaxSuccessHandler(n,t)}catch(i){}},error:function(n){try{r._ajaxErrorHandler(n)}catch(t){}}};this._sendAjaxRequest(u)},_sendAjaxRequest:function(t){var i=JSON.parse(JSON.stringify(t));(delete i.success,delete i.error,this._triggerEvent("beforeLoad",{ajaxOptions:i}))||(delete i.success,delete i.error,n.extend(t,i),n.ajax({type:t.type,url:t.url,dataType:t.dataType,data:t.data,async:t.async,contentType:t.contentType,crossDomain:t.crossDomain,success:t.success,error:t.error}))},_ajaxSuccessHandler:function(n,t){this._isRender=!1;typeof n=="object"&&this.addNode(n,t);this._isRender=!0;this._triggerEvent("loadSuccess",{data:n,targetParent:t,parentDetails:this._getNodeDetails(t)})},_ajaxErrorHandler:function(n){this._triggerEvent("loadError",{error:n})},_wireEvents:function(){this._isDevice&&n.isFunction(n.fn.tap)?this._on(this.element.find("li"),"tap",this._ClickEventHandler):this._on(this.element,"click",this._ClickEventHandler);this._on(this.element,this._isDevice&&n.isFunction(n.fn.tap)?this._touchExpandOn:this.model.expandOn,this._expandEventHandler)._on(this.element,"focus",this._onFocusHandler)._on(this.element,"blur",this._onFocusOutHandler);this._wholeRowEvents("_on");this.model.allowEditing&&this._allowEditable();this.model.allowDragAndDrop&&this._addDragableClass();this.model.showCheckbox&&this.element.find(".nodecheckbox").ejCheckBox("enable");this.model.allowKeyboardNavigation&&this._on(this.element,"keydown",this._KeyPress)},_unWireEvents:function(){this._isDevice&&n.isFunction(n.fn.tap)?this._off(this.element.find("li"),"tap"):this._off(this.element,"click");this._off(this.element,this._isDevice&&n.isFunction(n.fn.tap)?this._touchExpandOn:this.model.expandOn)._off(this.element,"focus")._off(this.element,"blur");this._wholeRowEvents("_off");this._preventEditable();this._preventDraggable();this.model.allowKeyboardNavigation&&this._off(this.element,"keydown");this.model.showCheckbox&&this.element.find(".nodecheckbox").ejCheckBox("disable")},_wholeRowEvents:function(t){this.model.fullRowSelect?(this[t](this.element,this._isDevice&&n.isFunction(n.fn.touchstart)?"touchstart":"mouseenter",".e-text-wrap",this._liMouseEnterEvent),this[t](this.element,this._isDevice&&n.isFunction(n.fn.touchend)?"touchend":"mouseleave",".e-text-wrap",this._liMouseLeaveEvent),this[t](this.element,this._isDevice&&n.isFunction(n.fn.touchstart)?"touchstart":"mouseenter",".e-fullrow",this._liMouseEnterEvent),this[t](this.element,this._isDevice&&n.isFunction(n.fn.touchend)?"touchend":"mouseleave",".e-fullrow",this._liMouseLeaveEvent)):(this[t](this.element,this._isDevice&&n.isFunction(n.fn.touchstart)?"touchstart":"mouseenter",".e-text",this._mouseEnterEvent),this[t](this.element,this._isDevice&&n.isFunction(n.fn.touchend)?"touchend":"mouseleave",".e-text",this._mouseLeaveEvent))},_enableDragDrop:function(){this.model.allowDragAndDrop&&(this._drag(),this.model.allowDropChild&&this._childDrop(),this.model.allowDropSibling&&this._siblingDrop())},_allowEditable:function(){this.element.find(".e-item").addClass("AllowEdit");this._on(n(document),"click",this._documentClick)._on(this.element,this._isDevice&&n.isFunction(n.fn.tap)?"doubletap":"dblclick","a.e-text",this._inlineEdit)},_preventEditable:function(){this.element.find(".e-item").removeClass("AllowEdit");this._off(n(document),"click",this._documentClick)._off(this.element,this._isDevice&&n.isFunction(n.fn.tap)?"doubletap":"dblclick","a.e-text")},_preventDraggable:function(){this.element.find(".e-draggable, .e-droppable").removeClass("e-draggable e-droppable");this._preventDropSibling();this._preventDropChild();this._off(this.element,"mouseup touchstart pointerdown MSPointerDown",this._anchors,this._focusElement);this._off(this.element,"focusout",this._anchors,this._blurElement)},_preventDropSibling:function(){this.element.find(".e-dropsibling").removeClass("e-dropsibling")},_preventDropChild:function(){this.element.find(".e-item > div > .e-dropchild").removeClass("e-dropchild")},_getNodeObject:function(n,r){if(!t.isNullOrUndefined(this.model.fields)&&this.dataSource()!=null&&n!=i){if(this._templateType===1){var f=t.Query().where(this.model.fields.id,"equal",n,!1),u=t.DataManager(this._newDataSource).executeLocal(f);return u.length>0&&r?[u[0][this.model.fields.text]]:u}return this._getRemoteNode(this._newDataSource,this.model.fields,n,r)}return[]},_getChildMapper:function(n){return typeof n.child=="string"||t.isNullOrUndefined(n.child)?n:n.child},_getNodeData:function(r){var f,y,p,e,w,s;if(!t.isNullOrUndefined(this.model.fields)&&this.dataSource()!=null&&r!=i){this._updatePersistProb();var u=[],h=[],c=this._orderDataSource().length,l=null;for(f=0;f<c;f++)this._orderDataSource()[f][this.model.fields.id]==r&&(l=r,f=c);if(l){if(this.dataSource()instanceof t.DataManager&&this._templateType==2)return this._getRemoteNode(this._newDataSource,this.model.fields,r);if(this._templateType==2)u=JSON.parse(JSON.stringify(this._getRemoteNode(this._newDataSource,this.model.fields,r)));else{var a=[],o=this._orderDataSource(),b=t.Query().where(this.model.fields.id,"equal",r,!1),k=t.DataManager(o).executeLocal(b),v=this._getFilterItems(k[0],o);for(f=0,y=v.length;f<y;f++)a.push(new t.Predicate(this.model.fields.id,"equal",v[f],!1));p=t.Query().where(t.Predicate.or(a));u=JSON.parse(JSON.stringify(t.DataManager(o).executeLocal(p)))}for(e=0,w=u.length;e<w;e++)s=t.getObject(this.model.fields.id,u[e]),n(document.getElementById(s)).length>0&&(n(document.getElementById(s)).find("> ul .e-item").length==0?(this._deepPropertyDelete(this.model.fields.hasChild,u[e]),this._templateType==2&&delete u[e].child):this._templateType==1?t.createObject(this.model.fields.hasChild,!0,u[e]):this._updateChildData(u[e].child,this.model.fields),h.push(u[e]));return h}}},_updateChildData:function(r,u){var f,o,e;if(r!=i)for(f=0,o=r.length;f<o;f++)e=t.getObject(u.id,r[f]),n(document.getElementById(e)).length>0&&(n(document.getElementById(e)).find("> ul .e-item").length==0?(this._deepPropertyDelete(u.hasChild,r[f]),delete r[f].child):this._updateChildData(r[f].child,u.child?u.child:u))},_getFilterItems:function(n,r){var u=[],o,c,s,f,l,h,e,a;if(n==i)return u;for(o=t.getObject(this.model.fields.id,n),u.push(o),c=t.Query().where(this.model.fields.parentId,"equal",o,!1),s=t.DataManager(r).executeLocal(c),f=0,l=s.length;f<l;f++)for(h=this._getFilterItems(s[f],r),e=0,a=h.length;e<a;e++)u.push(h[e]);return u},_getRemoteNode:function(n,i,r,u){for(var o,f=[],e=0,s=n.length;e<s;e++){if(o=t.getObject(i.id,n[e]),o&&o.toString()==r)return u?f.push(n[e][i.text]):f.push(n[e]),f;if(n[e].hasOwnProperty("child")&&(f=this._getRemoteNode(n[e].child,this._getChildMapper(i),r,u),f.length>0))return f}return f},_updateRemoteData:function(n,i,r,u){var f,o,e,s;if(this.dataSource()==null||!this.dataSource().dataSource.offline)for(f=0,o=n.length;f<o;f++){if(e=t.getObject(u.id,n[f]),e&&e.toString()==i){n[f].child=r;s=n[f];n.splice(f,1,s);break}n[f].hasOwnProperty("child")&&this._updateRemoteData(n[f].child,i,r,u.child?u.child:u)}},_addRemoteData:function(n,i,r,u){var f,o,e,s;if(this.dataSource()==null||!this.dataSource().dataSource.offline)if(t.isNullOrUndefined(i))n.push(r);else for(f=0,o=n.length;f<o;f++){if(e=t.getObject(u.id,n[f]),e&&e.toString()==i){t.isNullOrUndefined(n[f].child)?(n[f].child=[r],s=n[f],n.splice(f,1,s)):n[f].child.push(r);break}n[f].hasOwnProperty("child")&&this._addRemoteData(n[f].child,i,r,u.child?u.child:u)}},refresh:function(){this._unWireEvents();this.element.html("");this._init()},expandAll:function(n,t){this.model.enableMultipleExpand&&(n>0?this._expandByLevel(this._getElement(),n,t):this._expandAll(t))},collapseAll:function(n,t){this.model.enableMultipleExpand&&(n>0?this._collapseByLevel(this._getElement(),n,t):this._collapseAll(t))},checkAll:function(){this.model.showCheckbox&&this._checkAll()},unCheckAll:function(){this.model.showCheckbox&&this._uncheckAll()},selectNode:function(n){n&&typeof n=="object"&&n.length>0?(this._unselectAll(),this._doSelectNodes(n,!0)):(n=this._getNodeByID(n),this._isTreeElement(n)&&this._nodeSelectionAction(n))},unselectNode:function(n){n&&typeof n=="object"&&n.length>0?this._doUnselectNodes(n):(n=this._getNodeByID(n),this._isTreeElement(n)&&this._nodeUnSelectionAction(n))},selectAll:function(){this.model.allowMultiSelection&&this._selectAll()},unselectAll:function(){this.model.allowMultiSelection&&this._unselectAll()},enableNode:function(n){var t,i;if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.enableNode(n[t]);else i=this._getNodeByID(n),this._isTreeElement(i)&&this._nodeEnableAction(i)},disableNode:function(n){var t,i;if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.disableNode(n[t]);else i=this._getNodeByID(n),this._isTreeElement(i)&&this._nodeDisableAction(i)},addNodes:function(n,t,r){if(n&&typeof n=="object"&&t==i&&n.length>0)for(var u=0;u<n.length;u++)this.addNode(n[u],t,r);else this.addNode(n,t,r)},addNode:function(i,r,u){var e,y,c,h,f,l,a,s,o,v;t.isNullOrUndefined(i)||(e=null,y=null,f=r?this._getNodeByID(r):this.model.allowMultiSelection?this.getSelectedNodes():this.getSelectedNode(),typeof i=="object"&&t.isNullOrUndefined(r)&&(l=t.getObject(this.model.fields.parentId,i),t.isNullOrUndefined(i.length)&&!t.isNullOrUndefined(l)?h=l:t.isNullOrUndefined(i.length)||i.length!=1||(h=t.getObject(this.model.fields.parentId,i[0])),h&&(f=this._getNodeByID(h))),f=this._isTreeElement(f)?n(f[0]):[],a=this._isParentExpand(f),this._triggerEvent("beforeAdd",{data:i,targetParent:f[0]!=null?f:null,parentDetails:this._getNodeDetails(f)}))||(f.length==0||f.hasClass("e-node-disable")||this._expandNode(f),typeof i!="object"&&(i=this._createObjectByText(i,f)),typeof i!="object"||t.isNullOrUndefined(i.length)&&i.length==0)||(e=this._addNodesWhenObject(i,f),c=document.createElement("ul"),n(c).append(e),e=n(c.children),this.model.showCheckbox&&e.children().find(".nodecheckbox").ejCheckBox({cssClass:this.model.cssClass,change:this._checkedChange}),this._appendNode(f,e),f[0]!=null&&(s=n(f[0].childNodes[0].childNodes[0]),s.hasClass("e-plus")||s.hasClass("e-minus")?s.removeClass("e-load"):s.removeClass("e-icon e-load")),f[0]!=null&&f.find("> div > .e-minus").length>0&&!this.model.enableMultipleExpand&&this._denyMultipleExpand(f),this._updateNodes(),this._afterInsertingNode(e),this._isDevice&&n.isFunction(n.fn.tap)&&f[0]==null&&this._on(e,"tap",this._ClickEventHandler),u&&!a&&this._preventParentNode(f),this._triggerEvent("nodeAdd",{data:i,nodes:e,parentElement:f[0]!=null?f:null,parentDetails:this._getNodeDetails(f)}),o=this,v=this.dataSource(),setTimeout(function(){o.dataSource()==null||o.dataSource()instanceof t.DataManager||(o._dataSource=o._groupingObjects(v,function(n){return[!t.isNullOrUndefined(n)&&[t.getObject(o.model.fields.parentId,n)].toString()]}))},300))},removeNode:function(n){var t,i;if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.removeNode(n[t]);else i=n?this._getNodeByID(n):this.model.allowMultiSelection?this.getSelectedNodes():this.getSelectedNode(),this._isTreeElement(i)&&this._removeNode(i)},removeAll:function(){this._liList.remove();this._updateNodes()},checkNode:function(n){var t,i;if(this.model.showCheckbox)if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.checkNode(n[t]);else i=this._getNodeByID(n),this._isTreeElement(i)&&this._nodeCheck(i.find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0])},uncheckNode:function(n){var t,i;if(this.model.showCheckbox)if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.uncheckNode(n[t]);else i=this._getNodeByID(n),this._isTreeElement(i)&&this._nodeUncheck(i.find("> div > .e-chkbox-wrap > .nodecheckbox:first")[0])},expandNode:function(n){n&&typeof n=="object"&&n.length>0?(this._allowOnDemand=!0,this._expandNodes(n,!0),this._allowOnDemand=!1):(n=this._getNodeByID(n),this._isTreeElement(n)&&(this._allowOnDemand=!0,this._expandNode(n),this._allowOnDemand=!1))},collapseNode:function(n){var t,i;if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.collapseNode(n[t]);else i=this._getNodeByID(n),this._isTreeElement(i)&&this._collapseNode(i)},showNode:function(n){var t,i;if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.showNode(n[t]);else i=this._getNodeByID(n),this._isTreeElement(i)&&i.css("visibility","").removeClass("hidden")},hideNode:function(n){var t,i;if(n&&typeof n=="object"&&n.length>0)for(t=0;t<n.length;t++)this.hideNode(n[t]);else i=this._getNodeByID(n),this._isTreeElement(i)&&i.css("visibility","hidden").addClass("hidden")},show:function(){this.element.css("visibility","").find(".e-item").removeClass("hidden")},hide:function(){this.element.css("visibility","hidden").find(".e-item").addClass("hidden")},hasChildNode:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)?n.find("> ul > .e-item").length>0?!0:!1:void 0},isChildLoaded:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)&&n.find("ul > .e-item").length>0?!0:!1},isNodeChecked:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)?this._isChecked(n):void 0},isExpanded:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)?this._isNodeExpanded(n):void 0},isVisible:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)&&n.css("visibility")!="hidden"?!0:!1},isExist:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)&&this._liList.index(n)!=-1?!0:!1},isSelected:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)?n.find("> div > .e-text").hasClass("e-active"):void 0},isDisabled:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)&&n.hasClass("e-node-disable")?!0:!1},getTreeData:function(n){return n!=i?this._getNodeData(n):!t.isNullOrUndefined(this.model.fields)&&this.dataSource()!=null?this._orderDataSource():void 0},getText:function(t){return t=this._getNodeByID(t),this._isTreeElement(t)?n.trim(this.element.find(t).find("> div > .e-text").text()):void 0},getSelectedNode:function(){return this.model.allowMultiSelection?null:this.element.find(".e-item > div > .e-active").closest(".e-item")},getSelectedNodes:function(){return this.element.find(".e-item > div > .e-active").closest(".e-item")},getCheckedNodes:function(){if(this.model.showCheckbox)return this._liList.find('> div > .e-chkbox-wrap[aria-checked="true"]').closest(".e-item")},getExpandedNodes:function(){return this.element.find(".e-item > div > .e-minus").closest(".e-item")},getExpandedNodesIndex:function(){return this._getNodesIndex(this.getExpandedNodes())},getCheckedNodesIndex:function(){return this._getNodesIndex(this.getCheckedNodes())},getSelectedNodeIndex:function(){return this.model.allowMultiSelection?null:this._getNodesIndex(this.getSelectedNode())},getSelectedNodesIndex:function(){return this._getNodesIndex(this.getSelectedNodes())},getVisibleNodes:function(){return this.element.find(".e-item:visible:not(.hidden, .e-node-disable)")},getNodeCount:function(){return this.element.find(".e-item").length},getNode:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)?this._getNodeDetails(n):null},getNodeIndex:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)?this._liList.index(n):void 0},getNodeByIndex:function(t){if(typeof t=="number")return n(this._liList[t])},getParent:function(n){return n=this._getNodeByID(n),this._isTreeElement(n)?n.parents(".e-item:first"):void 0},getChildren:function(n,t){return n=this._getNodeByID(n),this._isTreeElement(n)?t?n.find(".e-item"):n.find("> ul > .e-item"):void 0},updateText:function(i,r){var u,e,o,s,f;if(i=this._getNodeByID(i),this._isTreeElement(i)&&!t.isNullOrUndefined(r)){if(u=this.element.find(i).children("div").find("> .e-text")[0],s=i.closest("li")["0"].id,u!=null){if(o={currentElement:n(u)},this._triggerEvent("beforeEdit",o))return!1;e=u.lastChild.nodeValue}u.lastChild.nodeValue=r;this._updateField(this._newDataSource,i.attr("id"),this.model.fields,"text",r);this.model.template&&(f=this._getNodeObject(s),f&&f.length!=0?u.innerHTML=this._renderEjTemplate(this.model.template,f["0"]):u.innerText=r);this._deepWatch&&(this._oldDataSource=JSON.parse(JSON.stringify(this._newDataSource)),this.dataSource(this._newDataSource));this._triggerEvent("nodeEdit",{id:i.attr("id"),oldText:e,newText:r,target:i,nodeDetails:this._getNodeDetails(i),event:null})}},insertAfter:function(n,t){this._insertBeforeOrAfter(n,t,!1)},insertBefore:function(n,t){this._insertBeforeOrAfter(n,t,!0)},moveNode:function(n,i,r){if(n=this._getNodeByID(n),i=this._getNodeByID(i),this._isTreeElement(n)){if(n.parents(".e-item")[0]==i[0]&&t.isNullOrUndefined(r)||i.find(n).index()==r||i[0]==null&&this._liList.index(n)==r)return;var u=i[0]!=null&&r>=0?i.find("> ul > .e-item").eq(r):this.getNodeByIndex(r);this._isRender=!1;this._isTreeElement(u)?u.parents(".e-item:first")[0]==n.parents(".e-item:first")[0]&&u.next(".e-item")[0]==null?this._dropAsSiblingNode(u,n.find(" > div > .e-text"),!1,""):this._dropAsSiblingNode(u,n.find(" > div > .e-text"),!0,""):this._dropAsChildNode(i,n.find(" > div > .e-text"),"");i.length>0&&i.hasClass("e-node-disable")&&this._nodeDisableAction(i);this._isRender=!0}},loadData:function(n,t){t=this._getNodeByID(t);this._isUrl(n)&&(t[0]==null||this._isTreeElement(t))&&this._sendAjaxOptions(n,t)},ensureVisible:function(t){var r,u,i,f;if(t=this._getNodeByID(t),this._isTreeElement(t)&&!this.isDisabled(t)&&this.isVisible(t)){for(r=t.parents(".e-item"),i=0,f=r.length;i<f;i++)this._expandNode(n(r[i]));return u=t.offset(),t.animate({scrollTop:u.top},this.model.enableAnimation?350:0,"linear",function(){t.find("> div > a.e-text")[0].scrollIntoView(!1)}),!0}return!1},_triggerEvent:function(n,t){if(this._isRender)return this._trigger(n,t)}})}(jQuery,Syncfusion),function(n,t,i){t.widget("ejSplitter","ej.Splitter",{element:null,model:null,validTags:["div","span"],_rootCSS:"e-splitter",_setFirst:!1,angular:{terminal:!1},defaults:{cssClass:"",orientation:"horizontal",enableAnimation:!0,properties:[],height:null,width:null,enableAutoResize:!1,isResponsive:!1,enableRTL:!1,allowKeyboardNavigation:!0,htmlAttributes:{},expanderTemplate:null,animationSpeed:300,beforeExpandCollapse:null,clickOnExpander:null,expandCollapse:null,resize:null,create:null,destroy:null},dataTypes:{cssClass:"string",orientation:"enum",properties:"data",enableAutoResize:"boolean",expanderTemplate:"string",isResponsive:"boolean",enableRTL:"boolean",allowKeyboardNavigation:"boolean",animationSpeed:"number",enableAnimation:"boolean",htmlAttributes:"data"},_init:function(){this._initialize();this._render();this.model.isResponsive||this.model.enableAutoResize?this._wireEvents(!0):this._wireEvents(!1)},_setModel:function(n){for(var t in n)switch(t){case"cssClass":this._changeSkin(n[t]);break;case"enableAutoResize":this._windowResizing(n[t]);break;case"isResponsive":this._windowResizing(n[t]);break;case"enableRTL":this._rtl(n[t]);break;case"htmlAttributes":this._addAttr(n[t]);break;case"orientation":this._refreshSplitter("orientation",n[t]);break;case"properties":this._refreshSplitter("properties",n[t]);break;case"width":this.model.width=n[t];this._setHeightWidth();break;case"height":this.model.height=n[t];this._setHeightWidth()}},refresh:function(){this._setPanesSize();this._getPanesPercent()},collapse:function(n){this._clickArrow(n,!0,!0)},expand:function(n){this._clickArrow(n,!1,!0)},_clickArrow:function(i,r,u){if(this._inMovement||i<0||i>this.panes.length||this.panes.length<=1)return!1;var f,o=r?"e-collapse":"e-expand",e=this.element.children(".e-splitbar:not(.e-shadowbar)");if(t.isNullOrUndefined(this.model.expanderTemplate)?f=i==e.length?this._clickArrow(i-1,!r,!1):n(e[i]).children("."+o):(f=n(e[i]).children(".e-splitter-"+this.model.orientation.substr(0,1)+"-template"),r?this._collapseArrowClick(this.templateargs):this._expandArrowClick(this.templateargs)),t.isNullOrUndefined(this.model.expanderTemplate)||this._templateIconPositioning(!0),u)f.css("display")=="none"&&t.isNullOrUndefined(this.model.expanderTemplate)||f.mouseup();else return f},addItem:function(i,r,u){var e=this.panes.length,d,r,f,g,a,k,it;if(u=this._getNumber(u),d=this.element[this.containerCss](),t.isNullOrUndefined(u)&&(u=e),u<0||u>e)return"";r=this._getPaneProperty(r);r=this._checkMinMaxSize(r);f=t.buildTag("div.e-pane e-"+this.model.orientation.substr(0,1)+"-pane");this.element.append(f[this.containerCss](r.paneSize));g=r.paneSize=f[this.containerCss]();e==0&&this.panes.push(f);f.remove();var v=u,nt=e>0?e:this.panes.length,o,y,p,w,s={},c=0,l=!1;for(a=g+this._bar,y=0;y<2;y++){for(o=v;o<nt;o++){var tt=n(this.panes[o])[this.containerCss](),b=t.isNullOrUndefined(this.model.properties[o])?r.minSize:this.model.properties[o].minSize,h=tt-b;if(h>=a-c){s[o]=tt-(a-c);l=!0;break}else e==0&&h>=0?(s[o]=b,c+=h,l=!0):h>0&&(s[o]=b,c+=h)}if(l)break;else nt=v,v=0}if(!l)return"";for(k in s)n(this.panes[k])[this.containerCss](s[k]);return e<=0?f.append(n(this.panes[u])):u==e?(p="insertBefore",w=1,f.insertAfter(n(this.panes[u-1]))):(p="insertAfter",w=0,f.insertBefore(n(this.panes[u]))),this.model.properties.splice(u,0,r),e==0&&this.element.append(f[this.containerCss](d)),e>0&&(this.panes.splice(u,0,f),it=this._createSplitBar(u-w),it[p](f)),f.append(i),this._updateModel(),f},removeItem:function(i){var r=this.panes.length-1,f,u,e,o;if(i=this._getNumber(i),t.isNullOrUndefined(i)&&(i=r),i<0||i>r||r<0)return null;f=n(this.panes[i]);o=f[this.containerCss]()+this._bar;f.remove();e=this.element.children(".e-splitbar:not(.e-shadowbar)");i==r?(u=n(this.panes[i-1]),n(e[i-1]).remove()):(u=n(this.panes[i+1]),n(e[i]).remove());u[this.containerCss](u[this.containerCss]()+o);this._removeArrays(i);this._updateModel()},_checkMinMaxSize:function(n){return!t.isNullOrUndefined(n.minSize)&&n.paneSize<n.minSize&&(n.paneSize=n.minSize),!t.isNullOrUndefined(n.maxSize)&&n.paneSize>n.maxSize&&(n.paneSize=n.maxSize),n},_removeArrays:function(n){this.model.properties.splice(n,1);this.panes.splice(n,1);this.oldPaneSize.splice(n,1);this.oldPanePercent.splice(n,1);this._sizePercent.splice(n,1)},_getNumber:function(n){return n=parseFloat(n),isNaN(n)?null:n},_updateModel:function(){for(var t=0;t<this.panes.length;t++)this.model.properties[t].paneSize=n(this.panes[t])[this.containerCss]();this._getPanesPercent()},_getPaneProperty:function(t){return n.extend({paneSize:10,minSize:10,maxSize:null,collapsible:!0,resizable:!0,expandable:!0},t)},_changeSkin:function(n){this.element.removeClass(this.model.cssClass).addClass(n)},_windowResizing:function(n){n?this._wireEvents(n):this._unWireEvents()},_refreshSplitter:function(n,t){this._unWireEvents();this._refreshDestroy();this.model[n]=t;this._init()},_destroy:function(){this.element.removeClass("e-splitter");this._refreshDestroy();this._unWireEvents()},_refreshDestroy:function(){this.element.removeClass("e-widget e-box e-rtl"+this.model.cssClass+" e-"+this.model.orientation);this.element.children(".e-splitbar").remove();this.element.children(".e-pane").removeClass("e-pane e-"+this.model.orientation.substr(0,1)+"-pane").height("").width("")},_initialize:function(){this.panes=[];this.oldPaneSize=[];this.oldPanePercent=[];this._initialPropertiesValue=[];this._updateHeightWidth=!1;this.shadowBar=null;this._inMovement=!1;this.containerCss=this.model.orientation=="horizontal"?"width":"height";this.displayCss=this.model.orientation=="horizontal"?"left":"top";this.borderCss=this.model.orientation=="horizontal"?"right":"bottom";this._bar=9},_render:function(){this.element.addClass("e-widget e-box "+this.model.cssClass+" e-"+this.model.orientation).attr("data-role","splitter");for(var r=this.element[0],i=0,u=0;i<r.children.length;i++)n(r.children[i]).addClass("e-pane"),this.panes.push(r.children[i]);this._setPanesProperty();this._insertSplitBar();this._setDimentions();t.isNullOrUndefined(this.model.expanderTemplate)||this.element.find(".e-splitter-"+this.model.orientation.substr(0,1)+"-template").css("z-index",t.getMaxZindex()+1);this._setPanesSize();this._getPanesPercent();this._addAttr(this.model.htmlAttributes);this._checkProperties();this.element.find(".e-pane").addClass("e-"+this.model.orientation.substr(0,1)+"-pane");this.model.isResponsive&&(isNaN(this.model.height)&&this.model.height.indexOf("%")>0&&this.element.css("height",this.model.height),isNaN(this.model.width)&&this.model.width.indexOf("%")>0&&this.element.css("width",this.model.width))},_templateClick:function(t){var i=this.templateargs={cancel:!1,targetElement:n(t.target),event:t.type,model:this.model,currentTarget:n(t.currentTarget)};this._trigger("clickOnExpander",i)},_templateIconPositioning:function(n){var i=this;t.browserInfo().name=="webkit"&&n&&(i.element.find(".e-splitter-"+i.model.orientation.substr(0,1)+"-template").css("display","none"),setTimeout(function(){i.element.find(".e-splitter-"+i.model.orientation.substr(0,1)+"-template").css("display","block")},i._isMouseMove?10:i.model.animationSpeed),i._isMouseMove=!1);n||setTimeout(function(){i.element.find(".e-splitter-"+i.model.orientation.substr(0,1)+"-template").css("display","inline-block")},100)},_setPanesProperty:function(){for(var n=0;n<this.panes.length;n++)this.model.properties[n]!=i?(this.model.properties[n].paneSize=this.model.properties[n].paneSize==i?"0px":this.model.properties[n].paneSize,this.model.properties[n].minSize=isNaN(parseFloat(this.model.properties[n].minSize))?10:parseFloat(this.model.properties[n].minSize),this.model.properties[n].maxSize=isNaN(parseFloat(this.model.properties[n].maxSize))?null:parseFloat(this.model.properties[n].maxSize),this.model.properties[n].collapsible=this.model.properties[n].collapsible!=!1?!0:!1,this.model.properties[n].resizable=this.model.properties[n].resizable!=!1?!0:!1,this.model.properties[n].expandable=this.model.properties[n].expandable!=!1?!0:!1):this.model.properties.push({paneSize:"0px",minSize:10,maxSize:null,collapsible:!0,resizable:!0,expandable:!0}),this._initialPropertiesValue[n]=this.model.properties[n].paneSize},_addAttr:function(t){var i=this;n.map(t,function(n,t){t=="class"?i.element.addClass(n):i.element.attr(t,n)})},_insertSplitBar:function(){if(this.panes.length>1)for(var t,n=0;n<this.panes.length-1;n++)t=this._createSplitBar(n),t.insertAfter(this.panes[n])},_createSplitBar:function(i){var u=this.model.orientation.substr(0,1),o,f,s,r,h=!1,c,e;if(r=t.buildTag("span.e-box e-splitbar e-split-divider e-"+u+"-bar").attr("aria-expanded",!0),t.browserInfo().name=="msie"&&r.addClass("e-pinch"),t.isNullOrUndefined(this.model.expanderTemplate))o=t.buildTag("span.e-icon e-collapse e-"+u+"-arrow "+(u=="h"?"e-arrow-sans-left":"e-arrow-sans-up")),r.append(o),s=t.buildTag("span.e-activebar e-"+u+"-arrow "),r.append(s),f=t.buildTag("span.e-icon e-expand e-"+u+"-arrow "+(u=="h"?"e-arrow-sans-right":"e-arrow-sans-down")),r.append(f),h=!0,this._on(o,t.isDevice()?"tap":"mouseup",this._collapseArrowClick),this._on(f,t.isDevice()?"tap":"mouseup",this._expandArrowClick),this.model.properties[i].collapsible||o.css("display","none"),this.model.properties[i].expandable||f.css("display","none"),this.model.properties[i+1].collapsible&&f.css("display","block");else{c=document.getElementsByClassName("e-split-divider")[0];e=document.createElement("span");n(e).append(this.model.expanderTemplate);n(e).attr("class","e-splitter-"+this.model.orientation.substr(0,1)+"-template e-resize");n(e).on(t.isTouchDevice()?"tap":"click",n.proxy(this._templateClick,this));r.append(e);this._templateIconPositioning(!1)}return this.model.properties[i].resizable&&this.model.properties[i+1].resizable&&(r.addClass("e-resize").removeClass("e-icon-hide"),h=!0,this._on(r,t.eventType.mouseDown,this._mouseDownOnDivider),t.isNullOrUndefined(this.model.expanderTemplate)&&this._on(s,t.eventType.mouseDown,this._mouseDownOnDivider)),h?(r.attr({role:"separator",tabindex:"0"}),this._on(r,"focus focusout",this._focusOnDivider)):r.attr({role:"presentation"}),r},_getTemplatedString:function(){for(var n=this.model.expanderTemplate,t=n.indexOf("${"),i=n.indexOf("}"),r;t!=-1&&i!=-1;)r=n.substring(t,i+1);return r},_getPanesPercent:function(){this._sizePercent=[];for(var r=this.element[this.containerCss](),i=r-(this.panes.length-1)*this._bar,t=0;t<this.panes.length;t++)n(this.panes[t]).hasClass("collapsed")||(this.oldPaneSize[t]=n(this.panes[t])[this.containerCss]()),this.oldPanePercent[t]=this._convertToPercent(i,this.oldPaneSize[t]),this._sizePercent.push(this._convertToPercent(i,n(this.panes[t])[this.containerCss]()))},_setDimentions:function(){var i=this._getParentObj(),n=parseInt(this.model.width),t=parseInt(this.model.height);isNaN(this.model.width)&&this.model.width.indexOf("%")>0&&(n=this.model.isResponsive?this._convertToPixel(i.innerWidth(),n):this.model.width);isNaN(this.model.height)&&this.model.height.indexOf("%")>0&&(t=this.model.isResponsive?this._convertToPixel(i.innerHeight(),t):this.model.height);this.model.height&&this.element.css("height",t);this.model.width&&this.element.css("width",n)},_setHeightWidth:function(){this._updateHeightWidth=!0;this._setDimentions();this._setPanesSize();this._getPanesPercent()},_getParentObj:function(){return this.element.parent()},_checkProperties:function(){this.model.enableRTL&&this._rtl(this.model.enableRTL);this._prevSize=this.element[this.containerCss]()},_getExactInnerWidth:function(){var i=t.browserInfo();return i.name=="msie"?i.version==8||i.version==9?n(this.element)[this.containerCss]():parseFloat(window.getComputedStyle(this.element[0])[this.containerCss]):parseFloat(window.getComputedStyle(this.element[0])[this.containerCss])-(parseFloat(this.element.css("border-"+this.displayCss+"-width"))+parseFloat(this.element.css("border-"+this.borderCss+"-width"))+parseFloat(this.element.css("padding-"+this.displayCss))+parseFloat(this.element.css("padding-"+this.borderCss)))},_rtl:function(n){n?this.element.addClass("e-rtl"):this.element.removeClass("e-rtl")},_setPanesSize:function(){var r=this.containerCss,v=0,u=0,o=this.element[r](),b=!1,s=this._bar=n(this.element).find(">.e-splitbar").length>0?parseFloat(n(this.element).find(">.e-splitbar").css(r)):this._bar,p=[],e,i,f=this.panes.length,y,k,c,h,l,w,a;if(f>1)for(i=0;i<f;i++)n(this.panes[i]).css(r,this._updateHeightWidth==!0?this._initialPropertiesValue[i]:this.model.properties[i].paneSize),this._updateHeightWidth=!1,s=i==f-1?0:s,e=parseFloat(n(this.panes[i])[r]()),t.isNullOrUndefined(this.model.properties[i].maxSize)||(e=e>this.model.properties[i].maxSize?this.model.properties[i].maxSize:e),n(this.panes[i]).css(r,e),e<=0?(v++,p.push(i),u+=s):b?(n(this.panes[i]).css(r,0),u+=e+s,this.model.properties[i].paneSize=0):(u+=e+s,u>o&&(y=u-o+s,k=f-i-1,y+=k*s,n(this.panes[i]).css(r,y),b=!0,u+=y+s),this.model.properties[i].paneSize=e);else f==1&&(n(this.panes[0]).css(r,"100%"),u=o);if(f>1&&u!=o)if(h=n(this.panes[f-1]),u>o)c=u-o,h.css(r,c);else if(u<o)if(c=o-u,v>0)for(w=parseFloat(c/v),l=0;l<v;l++)n(this.panes[p[l]]).css(r,w),this.model.properties[p[l]].paneSize=w;else{for(a=f;a>0;a--)if(t.isNullOrUndefined(this.model.properties[a-1].maxSize)){h=n(this.panes[a-1]);break}h.css(r,parseFloat(h[r]()+c));this.model.properties[f-1].paneSize=h[r]()}f>1&&this._checkPaneSize()},_getUnit:function(n){return n=="px"?"px":n=="pt"?"pt":n.substr(1)=="%"?"%":"px"},_getNormalValue:function(n){var i,t,r,u;return this.model.orientation=="vertical"?(i=n.y-this.element.offset().top,t=i/this.element.outerHeight(),r=this.element.height()):(i=n.x-this.element.offset().left,t=i/this.element.outerWidth(),r=this.element.width()),t>1&&(t=1),t<0&&(t=0),u=t*r,this._trimValue(u)},_trimValue:function(n){var t,i,r;return t=1,i=n%t,r=n-i,Math.abs(i)*2>=t&&(r+=i>0?t:-t),parseFloat(r.toFixed(5))},_getSplitbarIndex:function(){return this.element.children(".e-splitbar:not(.e-shadowbar)").index(this.currentSplitBar)},_paneResize:function(){var t,i,r,u,f,e,o,s;if(this.shadowBar==null)return!1;this.currentSplitBar=this.shadowBar.next();e=this._getSplitbarIndex();i=this.shadowBar.prev();r=this.currentSplitBar.next();u=e;f=e+1;t=this.shadowBar.offset()[this.displayCss];t=t-this.currentSplitBar.offset()[this.displayCss];n(i).css(this.containerCss,t+n(i)[this.containerCss]()+"px");n(r).css(this.containerCss,n(r)[this.containerCss]()-t+"px");this.oldPaneSize[u]=n(i)[this.containerCss]();this.oldPaneSize[f]=n(r)[this.containerCss]();this.shadowBar.remove();this._checkPaneSize();o={item:i,index:u,size:this.oldPaneSize[u]};s={item:r,index:f,size:this.oldPaneSize[f]};this._updateModelValue(o,s);this._trigger("resize",{prevPane:o,nextPane:s,splitbarIndex:e})},_checkPaneSize:function(){for(var r=0,o,f,u=this.panes.length,e,i,t=0;t<u;t++)o=this.containerCss=="width"?n(this.panes[t]).outerWidth():n(this.panes[t]).outerHeight(),r+=o+this._bar;if(r-=this._bar,f=this._getExactInnerWidth(),r!=f)if(e=f-r,i=n(this.panes[u-1])[this.containerCss](),i==0){for(t=u-1;t>=0;t--)if(n(this.panes[t]).hasClass("expanded")&&!n(this.panes[t]).hasClass("collapsed")){i=n(this.panes[t])[this.containerCss]();n(this.panes[t]).css(this.containerCss,parseFloat(i+e));break}}else n(this.panes[u-1]).css(this.containerCss,parseFloat(i+e))},_maxminDraggableRange:function(n){var l,a,v,y,o,r,u,f,e,t,i,s,h,c;l=this.shadowBar.prev();this.currentSplitBar=this.shadowBar.next();a=this.currentSplitBar.next();v=l[this.containerCss]();y=a[this.containerCss]();o=this.displayCss=="left"?this.currentSplitBar[0].offsetLeft:this.currentSplitBar[0].offsetTop;r=o-v;u=y+o;c=this._getSplitbarIndex();f=c;e=c+1;t=this.model.properties[f].maxSize;i=this.model.properties[e].maxSize;t=t!=null?parseInt(t,10):null;i=i!=null?parseInt(i,10):null;this.model.properties[f].minSize=parseInt(this.model.properties[f].minSize,10);this.model.properties[e].minSize=parseInt(this.model.properties[e].minSize,10);s=this.model.properties[f].minSize;h=this.model.properties[e].minSize;this.shadowBar.removeClass("e-end-indicaton");n>u-h?(this.resizedPosition=u-h,this.shadowBar.addClass("e-end-indicaton")):n<r+s&&(this.resizedPosition=r+s,this.shadowBar.addClass("e-end-indicaton"));t!=null?n>r+t&&(this.resizedPosition=r+t,this.shadowBar.addClass("e-end-indicaton")):i!=null&&n<u-i&&(this.resizedPosition=u-i,this.shadowBar.addClass("e-end-indicaton"))},_collapseArrowClick:function(i){var r,s,u,f,h,o,c,p,e,b,w,a,v,y,l;if(this.shadowBar==null){if(r=t.isNullOrUndefined(i.target)?n(i.currentTarget):n(i.target),this._inMovement=!0,this.currentSplitBar=r.parent(),e={},b=this.panes.length,s=this._getSplitbarIndex(),u=this.currentSplitBar.prev(),f=this.currentSplitBar.next(),h=s,o=s+1,c=u[this.containerCss](),p=f[this.containerCss](),w=this,a={item:u,index:h,size:c},v={item:f,index:o,size:p},this._raiseEvent("beforeExpandCollapse",a,v,s,"beforeCollapse"))return!1;if(f.hasClass("collapsed")){if(c<this.oldPaneSize[o]){r.addClass("e-end-indicaton");this._inMovement=!1;n(document).on("mouseup",n.proxy(this._mouseUpOnArrow,this));return!1}u.removeClass("expanded");f.removeClass("collapsed");r.parent().addClass("e-resize").removeClass("e-icon-hide");n(r.siblings()).not(".e-activebar").css("display","block");this.model.properties[h].collapsible||r.css("display","none");o!=b-1&&(l=f.next(),this.model.properties[o+1].collapsible||l.find(".e-expand").css("display","none"),l.find(".e-collapse").css("display","block"),l.next().hasClass("collapsed")||(l.addClass("e-resize").removeClass("e-icon-hide"),l.attr("aria-expanded",!0)));e[this.containerCss]=this.oldPaneSize[o];f.animate(e,this.model.enableAnimation?this.model.animationSpeed:0);e[this.containerCss]=c-this.oldPaneSize[o];u.animate(e,this.model.enableAnimation?this.model.animationSpeed:0,function(){w._raiseEvent("expandCollapse",a,v,s,"collapsed")})}else this.oldPaneSize[h]=c,u.addClass("collapsed"),f.addClass("expanded"),this.currentSplitBar.attr("aria-expanded",!1),r.parent().removeClass("e-resize").addClass("e-icon-hide"),t.isNullOrUndefined(this.model.expanderTemplate)&&r.css("display","none"),this.model.properties[o].collapsible||n(r.siblings()).not(".e-activebar").css("display","block"),h!=0&&(y=u.prev(),y.find(".e-expand").css("display","none"),!this.model.properties[h-1].collapsible&&n(u.prev().prev()[0]).hasClass("expanded")&&y.find(".e-collapse").css("display","block"),y.removeClass("e-resize").addClass("e-icon-hide")),e[this.containerCss]=0,u.animate(e,this.model.enableAnimation?this.model.animationSpeed:0),e[this.containerCss]=c+p,f.animate(e,this.model.enableAnimation?this.model.animationSpeed:0,function(){w._raiseEvent("expandCollapse",a,v,s,"collapsed")})}},_expandArrowClick:function(i){var r,o,u,f,s,h,p,c,e,b,w,v,y,l,a;if(this.shadowBar==null){if(r=t.isNullOrUndefined(i.target)?n(i.currentTarget):n(i.target),this._inMovement=!0,this.currentSplitBar=r.parent(),e={},b=this.panes.length,o=this._getSplitbarIndex(),u=this.currentSplitBar.prev(),f=this.currentSplitBar.next(),s=o,h=o+1,p=u[this.containerCss](),c=f[this.containerCss](),w=this,v={item:f,index:h,size:c},y={item:u,index:s,size:p},this._raiseEvent("beforeExpandCollapse",v,y,o,"beforeExpand"))return!1;if(u.hasClass("collapsed")){if(c<this.oldPaneSize[s]){r.addClass("e-end-indicaton");this._inMovement=!1;n(document).on("mouseup",n.proxy(this._mouseUpOnArrow,this));return!1}u.removeClass("collapsed");f.removeClass("expanded");this.currentSplitBar.attr("aria-expanded",!0);r.parent().addClass("e-resize").removeClass("e-icon-hide");n(r.siblings()).not(".e-activebar").css("display","block");this.model.properties[h].collapsible||r.css("display","none");s!=0&&(a=u.prev(),this.model.properties[o-1].collapsible||a.find(".e-collapse").css("display","none"),a.find(".e-expand").css("display","block"),a.prev().hasClass("collapsed")||a.addClass("e-resize").removeClass("e-icon-hide"));e[this.containerCss]=this.oldPaneSize[s];u.animate(e,this.model.enableAnimation?this.model.animationSpeed:0);e[this.containerCss]=c-this.oldPaneSize[s];f.animate(e,this.model.enableAnimation?this.model.animationSpeed:0,function(){w._raiseEvent("expandCollapse",v,y,o,"expanded")})}else this.oldPaneSize[h]=c,u.addClass("expanded"),f.addClass("collapsed"),r.parent().removeClass("e-resize").addClass("e-icon-hide"),t.isNullOrUndefined(this.model.expanderTemplate)&&r.css("display","none"),this.model.properties[s].collapsible||n(r.siblings()).not(".e-activebar").css("display","block"),h!=b-1&&(l=f.next(),l.find(".e-collapse").css("display","none"),!this.model.properties[h+1].collapsible&&n(f.next().next()[0]).hasClass("collapsed")&&l.find(".e-expand").css("display","block"),l.removeClass("e-resize").addClass("e-icon-hide"),l.attr("aria-expanded",!1)),e[this.containerCss]=p+c,u.animate(e,this.model.enableAnimation?this.model.animationSpeed:0),e[this.containerCss]=0,f.animate(e,this.model.enableAnimation?this.model.animationSpeed:0,function(){w._raiseEvent("expandCollapse",v,y,o,"expanded")})}},_raiseEvent:function(n,t,i,r,u){return n=="expandCollapse"&&(this._inMovement=!1,this._updateModelValue(t,i)),this._trigger(n,{collapsed:t,expanded:i,splitbarIndex:r,action:u})},_updateModelValue:function(n,t){this.model.properties[n.index].paneSize=n.item[this.containerCss]();this.model.properties[t.index].paneSize=t.item[this.containerCss]();this._getPanesPercent()},_mouseUpOnArrow:function(){this.element.find(".e-end-indicaton").removeClass("e-end-indicaton");n(document).off("mouseup",n.proxy(this._mouseUpOnArrow,this))},_keydownOnDivider:function(t){var i=t.keyCode,u,r;if(i==37||i==38||i==39||i==40){if(t.preventDefault(),u=n(t.data.target),t.ctrlKey)this.shadowBar==null&&(this.currentSplitBar=u,r=this._getSplitbarIndex(),this.model.orientation=="vertical"?t.keyCode==38?this.collapse(r):t.keyCode==40&&this.expand(r):t.keyCode==37?this.collapse(r):t.keyCode==39&&this.expand(r));else if(u.hasClass("e-resize")){var e=this.shadowBar!=null?this.shadowBar:u,f=e.offset(),o={pageX:f.left,pageY:f.top};n.extend(!0,t,o);(this.model.orientation=="vertical"&&(t.keyCode==38||t.keyCode==40)||this.model.orientation=="horizontal"&&(t.keyCode==37||t.keyCode==39))&&(t.keyCode==38?t.pageY-=5:t.keyCode==40?t.pageY+=5:t.keyCode==37?t.pageX-=5:t.keyCode==39&&(t.pageX+=5),this._mouseMoveOnDivider(t))}}else i==13?(t.preventDefault(),this._mouseUpOnDivider()):i==27&&(t.preventDefault(),this.shadowBar!=null&&this.shadowBar.remove(),this.shadowBar=null,this._mouseUpOnDivider(),this.element.children(".e-splitbar.e-hover").focusout())},_focusOnDivider:function(t){if(t.type=="focus"){if(!n(t.target).hasClass("e-hover")&&(n(t.target).addClass("e-hover"),this.model.allowKeyboardNavigation))n(document).on("keydown",{target:t.target},n.proxy(this._keydownOnDivider,this))}else this.element.children(".e-splitbar.e-hover").removeClass("e-hover"),this._mouseUpOnDivider(),n(document).off("keydown",n.proxy(this._keydownOnDivider,this))},_mouseDownOnDivider:function(i){i.preventDefault();var r;if(r=n(i.target).hasClass("e-activebar")?n(i.target.parentElement):!t.isNullOrUndefined(this.model.expanderTemplate)&&n(i.target).parents(".e-splitbar").length>0?n(i.target).parents(".e-splitbar"):n(i.target),r.hasClass("e-splitbar")&&r.hasClass("e-resize")){this._overlayElement=t.buildTag("div.e-pane-overlay");r.hasClass("e-hover")||r.focus();this.element.find(".e-pane").not(".e-splitter").append(this._overlayElement);n(document).on(t.eventType.mouseMove,{target:n(i.target).hasClass("e-activebar")?i.target.parentElement:i.target},n.proxy(this._mouseMoveOnDivider,this));n(document).on(t.eventType.mouseUp,n.proxy(this._mouseUpOnDivider,this));n(document).on("mouseleave",n.proxy(this._mouseUpOnDivider,this))}else(r.hasClass("e-expand")||r.hasClass("e-collapse"))&&r.parent().focus()},_mouseMoveOnDivider:function(i){var r=i.data,f,u;i=i.type=="touchmove"?i.originalEvent.changedTouches[0]:i;this._isMouseMove=!0;f={x:i.pageX,y:i.pageY};this.resizedPosition=this._getNormalValue(f);this.shadowBar==null&&(u=n(r.target).hasClass("e-activebar")?n(r.target.parentElement):!t.isNullOrUndefined(this.model.expanderTemplate)&&n(i.target).parents(".e-splitbar").length>0?n(r.target).parents(".e-splitbar"):n(r.target),this.shadowBar=u.clone().addClass("e-shadowbar").removeClass("e-hover").removeClass("e-split-divider").insertBefore(u),this.shadowBar.children().remove());this._maxminDraggableRange(this.resizedPosition);this.shadowBar.css(this.displayCss,this.resizedPosition)},_mouseUpOnDivider:function(){this._paneResize();t.isNullOrUndefined(this.model.expanderTemplate)||this._templateIconPositioning(!0);this.element.find(".e-pane").not(".e-splitter").find(".e-pane-overlay").remove();n(document).off(t.eventType.mouseMove,n.proxy(this._mouseMoveOnDivider,this));n(document).off(t.eventType.mouseUp,n.proxy(this._mouseUpOnDivider,this));n(document).off("mouseleave",n.proxy(this._mouseUpOnDivider,this));this.shadowBar=null},_windowResized:function(){var i=this._getExactInnerWidth(),r,u,t,f,e;if(this._prevSize==i)return!1;for(r=this.panes.length,u=i-(r-1)*this._bar,this._prevSize=i,t=0;t<r;t++)f=this._convertToPixel(u,this._sizePercent[t]),n(this.panes[t]).css(this.containerCss,f+"px");for(t=0;t<this.oldPaneSize.length;t++)this.oldPaneSize[t]=this._convertToPixel(u,this.oldPanePercent[t]);e=n(this.panes[this.panes.length-1])[this.containerCss]();e==0&&this._checkPaneSize()},_convertToPercent:function(n,t){return t*100/n},_convertToPixel:function(n,t){return parseFloat(n*t/100)},_wireEvents:function(t){if(t)n(window).on("resize",n.proxy(this._windowResized,this))},_unWireEvents:function(){n(window).off("resize",n.proxy(this._windowResized,this))}})}(jQuery,Syncfusion),function(n,t){t.widget("ejWaitingPopup","ej.WaitingPopup",{element:null,model:null,validTags:["div","span"],_setFirst:!1,_requiresID:!0,_rootCSS:"e-waitingpopup",defaults:{showOnInit:!1,target:null,appendTo:null,showImage:!0,htmlAttributes:{},cssClass:"",text:null,template:null,create:null,destroy:null},dataTypes:{showOnInit:"boolean",showImage:"boolean",cssClass:"string"},_isTargetVisible:function(){return this.element.css("display")!="none"},show:function(){this._isTargetVisible()&&(this._refreshPanel(),this.maindiv.css("display","block"),this.model.showOnInit=!0)},hide:function(){this.maindiv.css("display","none");this.model.showOnInit=!1},refresh:function(){this._isTargetVisible()&&this._refreshPanel()},_setText:function(n){n?this.popupText?this.popupText.html(n):(this._generateTextTag(n),this._setContentPosition()):this.popupText&&(this.popupText.remove(),this.popupText=null)},_showImage:function(n){n?(this.popupImage=t.buildTag("span.e-image"),this.popupText?this.popupImage.insertBefore(this.popupText):this.maindiv.append(this.popupImage)):this.popupImage&&(this.popupImage.remove(),this.popupImage=null)},_setTemplate:function(){var i=this.model.template;typeof i=="string"&&(i=n(i));this.templateObj=typeof i=="object"&&typeof i.css=="function"?i:t.buildTag("div","",{"text-align":"center"}).append(i);this.templateObj.css({visibility:"visible",display:"block"});this.maindiv.append(this.templateObj)},_setTheme:function(n){this.maindiv.removeClass(this.model.cssClass).addClass(n)},_init:function(){this._initialize();this._render();this._wireEvents()},_wireEvents:function(){n(window).on("resize",n.proxy(this._resizeHandler,this))},_unwireEvents:function(){n(window).off("resize",n.proxy(this._resizeHandler,this))},_resizeHandler:function(){this.refresh()},_setModel:function(i){for(var r in i)switch(r){case"text":this._setText(i[r]);break;case"cssClass":this._setTheme(i[r]);break;case"htmlAttributes ":this._addAttr(i[r]);break;case"showOnInit":this._setVisibility(i[r]);break;case"showImage":this._showImage(i[r]);this._setContentPosition();break;case"target":this.model.target=i[r];this._setTarget();this.refresh();break;case"appendTo":this.model.appendTo=i[r];this._setTarget();t.isNullOrUndefined(this.model.appendTo)||this.model.appendTo=="document"||this.model.appendTo=="window"?n("body").append(this.maindiv):this.maindiv.appendTo(n(this.model.appendTo));this.refresh();break;case"template":this.maindiv.empty();i[r]?(this.model.template=i[r],this._setTemplate()):(this.model.template=i[r]=null,this._showImage(this.model.showImage),this.model.text&&this._generateTextTag(this.model.text));this._setContentPosition()}},_setTarget:function(){this.targetElement=this.model.target=="document"?n(document):this.model.target=="window"?n(window):this.model.target?n(this.model.target):this.element},_destroy:function(){this.maindiv.remove();this._unwireEvents()},_initialize:function(){this.maindiv=null;this.popupText=null;this.popupImage=null;this.templateObj=null;this.targetElement=null},_render:function(){this._setTarget();var i=n("#"+this.element[0].id+"_WaitingPopup").get(0);i&&n(i).remove();this.maindiv=t.buildTag("div.e-waitpopup-pane e-widget "+this.model.cssClass+"#"+this.element[0].id+"_WaitingPopup");this.model.template?this._setTemplate():(this._showImage(this.model.showImage),this.model.text&&this._generateTextTag(this.model.text));t.isNullOrUndefined(this.model.appendTo)||this.model.appendTo=="document"||this.model.appendTo=="window"?n("body").append(this.maindiv):this.maindiv.appendTo(n(this.model.appendTo));this._setVisibility(this.model.showOnInit);this._addAttr(this.model.htmlAttributes)},_refreshPanel:function(){this.maindiv.width(this.targetElement.outerWidth());this.maindiv.height(this.targetElement.outerHeight());this._setPanelPosition();this._setContentPosition()},_addAttr:function(t){var i=this;n.map(t,function(n,t){t=="class"?i.maindiv.addClass(n):i.maindiv.attr(t,n)})},_setPanelPosition:function(){var i=t.util.getOffset(this.targetElement);this.model.appendTo!=null&&n(this.model.appendTo).length>0&&((this.targetElement.css("position")=="relative"||this.targetElement.css("position")=="absolute")&&this.targetElement[0]===n(this.model.appendTo)[0]?i={left:0,top:0}:(i.left-=this.targetElement.offsetParent().offset().left,i.top-=this.targetElement.offsetParent().offset().top));this.maindiv.css({position:"absolute",left:Math.ceil(i.left)+"px",top:Math.ceil(i.top)+"px","z-index":this._maxZindex()+1})},_setContentPosition:function(){if(this.model.template==null){var t=0,r=0,i,n=null;i=this.targetElement.outerHeight();this.popupText&&(t=this.popupText.outerHeight());this.popupImage&&(r=this.popupImage.outerHeight());this.popupImage&&(n=Math.ceil((i-(r+t))/2),this.popupImage.css("top",n+"px"));this.popupText&&(n||(n=Math.ceil((i-t)/2)),this.popupText.css("top",n+"px"))}else this.templateObj.css({position:"relative",left:Math.ceil((this.targetElement.outerWidth()-this.templateObj.outerWidth())/2),top:Math.ceil((this.targetElement.outerHeight()-this.templateObj.outerHeight())/2)})},_generateTextTag:function(n){this.popupText=t.buildTag("div.e-text",n);this.maindiv.append(this.popupText)},_setVisibility:function(n){n&&this._isTargetVisible()?this.show():this.hide()},_maxZindex:function(){return t.util.getZindexPartial(this.element)}})}(jQuery,Syncfusion),function(n,t){t.widget("ejRadioButton","ej.RadioButton",{_rootCSS:"e-radiobtn",element:null,_requiresID:!0,model:null,validTags:["input"],_addToPersist:["checked"],_setFirst:!1,angular:{require:["?ngModel","^?form","^?ngModelOptions"]},defaults:{id:null,name:null,value:null,checked:!1,cssClass:"",text:"",enableRTL:!1,htmlAttributes:{},enablePersistence:!1,idPrefix:"ej",size:"small",enabled:!0,validationRules:null,validationMessage:null,validationMessages:null,beforeChange:null,change:null,create:null,destroy:null},dataTypes:{id:"string",name:"string",enablePersistence:"boolean",size:"enum",enabled:"boolean",idPrefix:"string",validationRules:"data",validationMessage:"data",validationMessages:"data",htmlAttributes:"data"},observables:["checked"],checked:t.util.valueFunction("checked"),_init:function(n){var i=t.browserInfo();this._cloneElement=this.element.clone();this._isIE8=i.name=="msie"&&i.version=="8.0"?!0:!1;this._setValue();this._renderControl();this.isChecked&&this._checkedHandler();t.isNullOrUndefined(this.radbtn.attr("disabled"))||(this.model.enabled=!1);this._setEnabled(this.model.enabled);this._addAttr(this.model.htmlAttributes);t.isNullOrUndefined(n)||t.isNullOrUndefined(n.validationMessage)||(this.model.validationMessages=this.model.validationMessage);this.model.validationRules!=null&&(this._initValidator(),this._setValidation());this._wireEvents();this.initialRender=!1},_addAttr:function(t){var i=this;n.map(t,function(n,t){t=="class"?i.div.addClass(n):t=="name"?i.radbtn.attr(t,n):t=="required"?i.radbtn.attr(t,n):t=="disabled"&&n=="disabled"?i.disable():t=="checked"&&n=="checked"?i._checkedChange(!0,!0):i.div.attr(t,n)})},_initValidator:function(){this.element.closest("form").data("validator")||this.element.closest("form").validate()},_setValidation:function(){var r,f,i,u,e;this.element.find("input").rules("add",this.model.validationRules);r=this.element.closest("form").data("validator");r=r?r:this.element.closest("form").validate();f=this.element.find("input").attr("name");r.settings.messages[f]={};for(i in this.model.validationRules)if(u=null,!t.isNullOrUndefined(this.model.validationRules[i])){if(t.isNullOrUndefined(this.model.validationRules.messages&&this.model.validationRules.messages[i])){r.settings.messages[f][i]=n.validator.messages[i];for(e in this.model.validationMessages)i==e?u=this.model.validationMessages[i]:""}else u=this.model.validationRules.messages[i];r.settings.messages[f][i]=u!=null?u:n.validator.messages[i]}},_setModel:function(t){for(var i in t)switch(i){case"cssClass":this._changeSkin(t[i]);break;case"enableRTL":this.model.text?t[i]?this.div.addClass("e-rtl"):this.div.removeClass("e-rtl")&&this.element.closest(".e-radiobtn-wrap").hasClass("e-rtl")?this.element.closest(".e-radiobtn-wrap").removeClass("e-rtl"):"":t[i]?this.element.closest(".e-radiobtn-wrap").addClass("e-rtl"):this.element.closest(".e-radiobtn-wrap").removeClass("e-rtl");break;case"text":this._setText(t[i]);break;case"size":this._setSize(t[i]);break;case"validationRules":this.model.validationRules!=null&&(this.element.find("input").rules("remove"),this.model.validationMessages=null);this.model.validationRules=t[i];this.model.validationRules!=null&&(this._initValidator(),this._setValidation());break;case"validationMessage":this.model.validationMessages=t[i];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"validationMessages":this.model.validationMessages=t[i];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"checked":n(this.div).removeClass("e-material-animate");typeof this.checked()=="boolean"?(this.model.checked=t[i],this._checkedChange(this.model.checked)):t[i]()!=null&&t[i]()==this.element.find(".e-input").attr("value")&&this._checkedChange(t[i]());break;case"enabled":this._setEnabled(t[i]);break;case"id":this._setIdAttr(t[i]);break;case"name":this.radbtn.attr("name",t[i]);break;case"value":this.radbtn.attr("value",t[i]);break;case"htmlAttributes":this._addAttr(t[i])}},_destroy:function(){this.radbtn.remove();this._cloneElement.removeClass("e-js e-input e-radiobtn");this._cloneElement.insertBefore(this.element);this.element.remove()},_changeSkin:function(n){this.model.cssClass!=n&&(this.element.removeClass(this.model.cssClass).addClass(n),this.div.removeClass(this.model.cssClass).addClass(n))},_setValue:function(){t.isNullOrUndefined(this.element.attr("type"))&&this.element.attr("type","radio");t.isNullOrUndefined(this.element.attr("id"))||(this.model.id=this.element.attr("id"));t.isNullOrUndefined(this.element.attr("name"))||(this.model.name=this.element.attr("name"));t.isNullOrUndefined(this.element.attr("value"))||(this.model.value=this.element.attr("value"));this.element.attr({id:this.model.id,name:this.model.name,value:this.model.value});typeof this.checked()=="boolean"?this.model.checked=this.isChecked=this.model.checked||this.element.attr("checked")=="checked":this.isChecked=this.element.attr("value")==this.checked();this.isChecked&&this.element.attr("checked","checked");this._hiddenValue=this.element.attr("value");this._isUI=!1},_setIdAttr:function(t){n("#"+this.model.idPrefix+this.model.id+"_wrapper").attr("id",this.model.idPrefix+t+"_wrapper");n("#"+this.model.idPrefix+this.model.id).attr("id",this.model.idPrefix+t);this.radbtn.attr("id",t)},_setSize:function(n){n==t.RadioButtonSize.Medium?(this.span.removeClass("e-radsmaller").addClass("e-radmedium"),this.div.removeClass("e-radsmall").addClass("e-radmed")):(this.span.removeClass("e-radmedium").addClass("e-radsmaller"),this.div.removeClass("e-radmed").addClass("e-radsmall"))},_setEnabled:function(n){n?this.enable():this.disable()},_renderControl:function(){this.initialRender=!0;var i=t.browserInfo();this.div=i.name=="msie"&&i.version=="8.0"?n('<div class="e-radiobtn-wrap e-widget e-rad-outer e-ie8" ><\/div>'):n('<div class="e-radiobtn-wrap e-widget" ><\/div>');this.div.attr({id:this.model.idPrefix+this.model.id,role:"radio",tabindex:0,"aria-checked":!1});this.span=n("<span><\/span>");this.span.addClass("e-spanicon");this._setSize(this.model.size);this.spanImg=n('<span class="e-rad-icon e-icon e-rad-select"><\/span>',"",{},{role:"presentation"});this.element.addClass("e-input");this.div.addClass(this.model.cssClass);this.span.append(this.spanImg);this.div.insertBefore(this.element);this.div.append(this.element);this.div.append(this.span);this._setTextWrapper(this.model.text);this.radbtn=this.element;this.element=this.div},_setTextWrapper:function(n){n!=""?(this.txtSpan=t.buildTag("div.e-text",n),this.div.append(this.txtSpan),this.model.enableRTL&&this.div.addClass("e-rtl")):this.model.enableRTL&&this.element.closest(".e-radiobtn-wrap").addClass("e-rtl")},_setText:function(n){this.model.text==""&&n!=""?this._setTextWrapper(n):this.txtSpan.html(n)},_wireEvents:function(){this._on(this.element,"click",function(n){this._isUI=!0;this._checkedHandler(n)});this._on(this.element,"focus",this._focusIn);this._on(this.element,"focusout",this._focusOut)},_focusIn:function(){n(this.element).addClass("e-focus");n(this.element).on("keydown",n.proxy(this._checkUnCheck,this))},_focusOut:function(){n(this.element).removeClass("e-focus");n(this.element).off("keydown",n.proxy(this._checkUnCheck,this))},_checkUnCheck:function(n){(n.keyCode==32||n.keyCode==37||n.keyCode==38||n.keyCode==39||n.keyCode==40)&&(n.preventDefault(),this._checkedHandler())},_checkedHandler:function(t){t&&(this._interacted=!0);this.element.hasClass("e-disable")||(this.isChecked=typeof this.checked()=="boolean"?this.radbtn.attr("checked")=="checked"?!0:!1:this.checked()==this.radbtn.attr("value"),n(this.element).find(".e-rad-icon").hasClass("e-circle_01")||this._changeEvent(!0),t&&n(this.div).addClass("e-material-animate"))},_checkedChange:function(n,t){this.isChecked=n;this._changeEvent(t)},_changeEvent:function(i){var u={isChecked:this.isChecked,isInteraction:!!i};if(!this.initialRender&&!0==this._trigger("beforeChange",u))return!1;if(n(this.element).find(".e-rad-icon").hasClass("e-circle_01"))this.spanImg.removeClass("e-circle_01").addClass("e-rad-select"),this.span.removeClass("e-rad-active"),this.div.attr({tabindex:0,"aria-checked":!1}),this.radbtn.removeAttr("checked");else{var f=this.element.find(".e-input").attr("name"),e=n('input.e-radiobtn[name="'+f+'"]:radio'),o=this,s=this.element.find(".e-input"),r=n(s).data("ejRadioButton");u.isChecked&&(this.spanImg.addClass("e-circle_01").removeClass("e-rad-select"),this.span.addClass("e-rad-active"),this.div.attr({tabindex:0,"aria-checked":!0}),this.radbtn.attr("checked","checked"));n.each(e,function(i,r){o._interacted&&n(n(r).closest(".e-widget")).find("span.e-spanicon").hasClass("e-rad-active")&&n(r).closest(".e-radiobtn-wrap").addClass("e-material-animate");n(r).closest(".e-radiobtn-wrap").find(".e-rad-icon").removeClass("e-circle_01").addClass("e-rad-select");n(r).closest(".e-radiobtn-wrap").find(".e-spanicon").removeClass("e-rad-active");n(r).closest(".e-radiobtn-wrap").attr({tabindex:0,"aria-checked":!1});var u=n(r).data("ejRadioButton");t.isNullOrUndefined(u)||u.checked()==null||typeof u.checked()!="boolean"||(u.model.checked=!1,u.isChecked=!1,u.radbtn.removeAttr("checked"))});r!=null&&r.checked()!=null&&typeof r.checked()=="boolean"?r.model.checked=!0:r.checked(r.radbtn.attr("value"));this.element.find(".e-rad-icon").addClass("e-circle_01").removeClass("e-rad-select");this.span.addClass("e-rad-active");this.div.attr({tabindex:0,"aria-checked":!0});this._isUI&&this.element.find(".e-input").click();this.isChecked=!0;this.isChecked==!0?this.radbtn.attr("checked","checked"):this.radbtn.removeAttr("checked")}u={isChecked:this.isChecked,isInteraction:!!i};this.initialRender||this._trigger("change",u);i&&this._trigger("_change",{value:this._hiddenValue})},disable:function(){this.element.hasClass("e-disable")||(this.element.addClass("e-disable"),this.radbtn.attr("disabled","disabled"));this._isIE8&&this.span.addClass("e-disable");this.div.attr("aria-disabled",!0);this.model.enabled=!1},enable:function(){this.element.hasClass("e-disable")&&(this.element.removeClass("e-disable"),this.radbtn.prop("disabled",!1));this._isIE8&&this.span.removeClass("e-disable");this.div.attr("aria-disabled",!1);this.model.enabled=!0}});t.RadioButtonSize={Small:"small",Medium:"medium"}}(jQuery,Syncfusion),function(n,t,i){t.widget("ejDatePicker","ej.DatePicker",{element:null,_rootCss:"e-datepicker",model:null,validTags:["input","div","span"],_setFirst:!1,_addToPersist:["value"],_cancelValue:!1,type:"editor",angular:{require:["?ngModel","^?form","^?ngModelOptions"],requireFormatters:!0},defaults:{dayHeaderFormat:"min",showPopupButton:!0,enableAnimation:!0,showFooter:!0,displayInline:!1,htmlAttributes:{},dateFormat:"",watermarkText:"Select date",value:null,minDate:new Date("01/01/1900"),maxDate:new Date("12/31/2099"),startLevel:"month",depthLevel:"",cssClass:"",startDay:-1,stepMonths:1,locale:"en-US",showOtherMonths:!0,enableStrictMode:!1,enablePersistence:!1,enabled:!0,width:"",height:"",enableRTL:!1,showRoundedCorner:!1,headerFormat:"MMMM yyyy",buttonText:"Today",readOnly:!1,specialDates:null,fields:{date:"date",tooltip:"tooltip",iconClass:"iconClass",cssClass:"cssClass"},showTooltip:!0,showDisabledRange:!0,highlightSection:"none",highlightWeekend:!1,validationRules:null,validationMessage:null,validationMessages:null,allowEdit:!0,tooltipFormat:"ddd MMM dd yyyy",allowDrillDown:!0,blackoutDates:[],beforeDateCreate:null,open:null,close:null,select:null,change:null,focusIn:null,focusOut:null,beforeOpen:null,beforeClose:null,navigate:null,create:null,destroy:null,weekNumber:!1,timeZone:!0},dataTypes:{startDay:"number",stepMonths:"number",showOtherMonths:"boolean",enableStrictMode:"boolean",showRoundedCorner:"boolean",enableRTL:"boolean",displayInline:"boolean",showPopupButton:"boolean",locale:"string",readOnly:"boolean",cssClass:"string",dateFormat:"string",watermarkText:"string",headerFormat:"string",buttonText:"string",specialDates:"data",showTooltip:"boolean",highlightSection:"enum",highlightWeekend:"boolean",enableAnimation:"boolean",validationRules:"data",validationMessage:"data",validationMessages:"data",htmlAttributes:"data",tooltipFormat:"string",allowEdit:"boolean",allowDrillDown:"boolean",weekNumber:"boolean"},_renderPopup:function(){this.sfCalendar=t.buildTag("div.e-datepicker e-popup e-widget "+this.model.cssClass+" e-calendar "+(this.model.specialDates?this.model.specialDates[0][this._mapField._icon]?"e-icons ":"":""),"",{},{id:this._id?"e-"+this._id:""}).attr({"aria-hidden":"true"}).attr(this._isIE8?{unselectable:"on"}:{}).insertBefore(this.element);this.model.displayInline&&!this.element.is("input")&&this.sfCalendar.addClass("e-inline");this.popup=this.sfCalendar;t.isTouchDevice()||this.sfCalendar.addClass("e-ntouch");this._setRestrictDateState(this.model.showDisabledRange);this._createCalender();this._setDisplayInline(this.model.displayInline);this._resizeCalender();this._setRTL(this.model.enableRTL);this._setRoundedCorner(this.model.showRoundedCorner);this._wireCalendarEvents()},_setModel:function(i){var u=!1,f=!1,e=!1,r,o;for(r in i){r!="showPopupButton"&&r!="width"&&r!="dateFormat"&&r!="height"&&r!="readOnly"&&r!="allowEdit"&&r!="enabled"&&r!="watermarkText"&&r!="htmlAttributes"&&r!="validationMessages"&&r!="validationRules"&&t.isNullOrUndefined(this.sfCalendar)&&this._renderPopup();switch(r){case"dayHeaderFormat":this.model.dayHeaderFormat=i[r];u=f=!0;break;case"weekNumber":this.model.weekNumber=i[r];this._refreshDatepicker();break;case"showPopupButton":this._renderDateIcon(i[r],!0);break;case"displayInline":if(i[r]||this._bindDateButton(),this._setDisplayInline(i[r]),!this.model.allowEdit&&!i[r]&&this._isInputBox)this.element.on("mousedown",n.proxy(this._showDatePopUp,this));break;case"value":t.isPlainObject(i[r])&&(i[r]=null);t.isNullOrUndefined(i.minDate)&&t.isNullOrUndefined(i.maxDate)?(this._setDateValue(i[r]),this._specificFormat()&&(this._stopRefresh=!0),i[r]=this.model.value):this._updateDateValue(i[r]);e=u=f=!0;break;case"specialDates":this.model.specialDates=i[r];this._createSpecialDateObject();u=f=!0;break;case"fields":this.model.fields=i[r];this._mapField=this._getMapper();u=f=!0;break;case"showTooltip":this.model.showTooltip=i[r];u=f=!0;break;case"highlightWeekend":this.model.highlightWeekend=i[r];u=f=!0;break;case"highlightSection":this.model.highlightSection=i[r];u=f=!0;break;case"dateFormat":this.model.dateFormat=i[r];this._ensureValue();break;case"minDate":this._setMinDate(i[r]);i[r]=this.model.minDate;this._ensureValue();e=u=f=!0;break;case"maxDate":this._setMaxDate(i[r]);i[r]=this.model.maxDate;this._ensureValue();e=u=f=!0;break;case"locale":this.model.locale=i[r];this.model.startDay=t.isNullOrUndefined(this._options.startDay)&&this.model.startDay===this.culture.calendar.firstDay?-1:this._options.startDay===this.defaults.startDay?-1:this.model.startDay;this.model.dateFormat=t.isNullOrUndefined(this._options.dateFormat)&&this.model.dateFormat===this.culture.calendar.patterns.d?"":this.model.dateFormat;this._setCulture(i[r]);this.model.value&&this._setDateValue(this.model.value);i[r]=this.model.locale;u=f=!0;break;case"showOtherMonths":this.model.showOtherMonths=i[r];this._otherMonthsVisibility();break;case"enableStrictMode":this.model.enableStrictMode=i[r];e=u=f=!0;break;case"validationRules":this.model.validationRules!=null&&(this.element.rules("remove"),this.model.validationMessages=null);this.model.validationRules=i[r];this.model.validationRules!=null&&(this._initValidator(),this._setValidation());break;case"validationMessages":this.model.validationMessages=i[r];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"validationMessage":this.model.validationMessages=i[r];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"readOnly":this.model.readOnly=i[r];this._disbleMaualInput();break;case"width":this._setWidth(i[r]);break;case"height":this._setHeight(i[r]);break;case"cssClass":this._setSkin(i[r]);break;case"enableRTL":this._setRTL(i[r]);break;case"showRoundedCorner":this._setRoundedCorner(i[r]);break;case"enabled":i[r]?this.enable():this.disable();break;case"buttonText":t.isNullOrUndefined(this._options)&&(this._options={});this._options.buttonText=this.model.buttonText=i[r];this._localizedLabels.buttonText=this.model.buttonText;this._setFooterText(i[r]);break;case"showFooter":this._enableFooter(i[r]);break;case"watermarkText":t.isNullOrUndefined(this._options)&&(this._options={});this._options.watermarkText=this.model.watermarkText=i[r];this._localizedLabels.watermarkText=this.model.watermarkText;this._setWaterMark();break;case"startDay":o=i[r];(parseInt(i[r])<0||parseInt(i[r])>6)&&(i[r]=this.culture.calendar.firstDay,o=-1);this.model.startDay=i[r];t.isNullOrUndefined(this._options)&&(this._options={});this._options.startDay=o;u=f=!0;break;case"startLevel":this.model.startLevel=i[r];u=f=!0;break;case"headerFormat":this.model.headerFormat=i[r];u=f=!0;break;case"depthLevel":this.model.depthLevel=i[r];u=f=!0;break;case"htmlAttributes":this._addAttr(i[r]);break;case"allowEdit":this._changeEditable(i[r]);break;case"tooltipFormat":this.model.tooltipFormat=i[r];u=f=!0;break;case"allowDrillDown":this._allowQuickPick(i[r]);u=f=!0;break;case"showDisabledRange":this._setRestrictDateState(i[r]);break;case"blackoutDates":this.model.blackoutDates=i[r];this._initDisableObj(this.model.blackoutDates);u=f=!0}}e&&(this._validateMinMaxDate(),i.value=this.model.value,i.maxDate=this.model.maxDate,i.minDate=this.model.minDate);this._setWaterMark();u&&(this.isValidState||this.model.displayInline)&&this._refreshDatepicker();f&&!this._startNavigate&&this._startLevel(this.model.startLevel);this._triggerChangeEvent();this._checkErrorClass()},observables:["value"],_destroy:function(){this.model.displayInline&&n(window).off("resize",n.proxy(this._OnWindowResize,this));this._isOpen&&this.hide();this.sfCalendar&&this.sfCalendar.remove();this.wrapper&&(this.element.insertAfter(this.wrapper),this.wrapper.remove());this.element.removeClass("e-datepicker e-input");this.element.removeAttr("aria-atomic aria-live aria-activedescendant aria-expanded role placeholder tabindex");this._cloneElement.hasAttribute("name")||this.element.removeAttr("name")},_init:function(n){this._options=n;this._cloneElement=this.element.clone();this._dt_drilldown=!1;this._ISORegex();this._initDisableObj(this.model.blackoutDates);this.animation={open:{duration:200},close:{duration:100}};this._animating=!1;this._isInputBox=this._isInputBox();this._startNavigate=!1;this._keyboardInteraction=!1;this._isSupport=document.createElement("input").placeholder==i?!1:!0;this._checkAttribute();this._setValues();this._createDatePicker();t.isNullOrUndefined(n)||t.isNullOrUndefined(n.validationMessage)||(this.model.validationMessages=this.model.validationMessage);this.model.validationRules!=null&&(this._initValidator(),this._setValidation());n&&n.value!=i&&n.value!=this.element.val()&&this._trigger("_change",{value:this.element.val()})},_ISORegex:function(){this._tokens=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;this._extISORegex=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/;this._basicISORegex=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/;this._isISODate=/[T]/;this._numberRegex={2:/\d\d?/,4:/^\d{4}/,z:/Z|[+-]\d\d(?::?\d\d)?/gi,t:/T/,"-":/\-/,":":/:/};this._zeroRegex=/Z|[+-]\d\d(?::?\d\d)?/;this._dates=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]];this._times=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]]},_initValidator:function(){this.element.closest("form").data("validator")||this.element.closest("form").validate()},_setValidation:function(){var r,f,i,u,e;this.element.rules("add",this.model.validationRules);r=this.element.closest("form").data("validator");r=r?r:this.element.closest("form").validate();f=this.element.attr("name");r.settings.messages[f]={};for(i in this.model.validationRules)if(u=null,!t.isNullOrUndefined(this.model.validationRules[i])){if(t.isNullOrUndefined(this.model.validationRules.messages&&this.model.validationRules.messages[i])){r.settings.messages[f][i]=n.validator.messages[i];for(e in this.model.validationMessages)i==e?u=this.model.validationMessages[i]:""}else u=this.model.validationRules.messages[i];r.settings.messages[f][i]=u!=null?u:n.validator.messages[i]}},setValue:function(n){typeof n=="string"&&(n=new Date(n));var t=this.model.value;this._setDateValue(n);this._checkErrorClass();t!=this.model.value&&this._triggerChangeEvent()},_checkAttribute:function(){for(var u=["min","max","readonly","disabled"],f=["minDate","maxDate","readOnly","enabled"],i,n,r=0;r<u.length;r++)i=this.element.attr(u[r]),n=f[r],t.isNullOrUndefined(i)||(t.isNullOrUndefined(this._options)?this.model[n]=n!="enabled"&&n!="readOnly"?new Date(i):n=="readOnly"?this.element.is("[readonly]"):!this.element.is("[disabled]"):t.isNullOrUndefined(this._options[n])&&(this.model[n]=n!="enabled"&&n!="readOnly"?new Date(i):n=="readOnly"?this.element.is("[readonly]"):!this.element.is("[disabled]")))},_updateDateValue:function(n){var t=this._checkDateObject(n);t!=null?(this.isValidState=!0,t==""?(this.element.val(""),this.model.value=null):(this.model.value=t,this._preTxtValue=this.element.val(this._formatter(this.model.value,this.model.dateFormat)))):(typeof t=="string"&&this.model.enableStrictMode?this.element.val(n):this.element.val(""),this.model.value=null,this.isValidState=this.element.val()==""?!0:!1);this._removeWatermark()},_ensureValue:function(){var n=this._parseDate(this.element.val(),this.model.dateFormat);this.model.value?this._setDateValue(this.model.value):n&&this._setDateValue(n)},_changeEditable:function(t){var i=t?"_on":"_off";if(this.element.is(":input")){if(t)this.model.readOnly||this.element.attr("readonly",!1),this.element.off("mousedown",n.proxy(this._showDatePopUp,this));else if(this.model.readOnly||this.element.attr("readonly","readonly"),!this.model.displayInline)this.element.on("mousedown",n.proxy(this._showDatePopUp,this));this[i](this.element,"blur",this._onFocusOut);this[i](this.element,"focus",this._onFocusIn);this[i](this.element,"keydown",this._onKeyDown)}},_allowQuickPick:function(t){n(".e-datepicker-headertext",this.sfCalendar)[t?"on":"off"]("click",n.proxy(this._forwardNavHandler,this))},_setRestrictDateState:function(n){var t=n?"addClass":"removeClass";this.sfCalendar[t]("e-dp-restrict-show")},_setValues:function(){this.Date=new Date;this._id=this.element[0].id;this.isValidState=!0;this._setCulture(this.model.locale);this._setMinDate(this.model.minDate);this._setMaxDate(this.model.maxDate);this._calendarDate=this._zeroTime(new Date);(this.model.startDay<0||this.model.startDay>6)&&(this.model.startDay=0);this.Date.firstDayOfWeek=this.model.startDay;this.Date.fullYearStart="20";this._showHeader=!0;t.isNullOrUndefined(this.model.value)&&this.element[0].value!=""&&(this.model.value=this.element[0].value);this._validateMinMaxDate();this._dateValue=new Date(this._calendarDate.toString());this._isIE7=this._checkIE7();this._isIE8=t.browserInfo().name=="msie"&&t.browserInfo().version=="8.0"?!0:!1;this._isIE9=t.browserInfo().name=="msie"&&t.browserInfo().version=="9.0"?!0:!1;this._getInternalEvents=!1;this._flag=!0;this._ejHLWeekEnd=!1;this._isOpen=!1;this._prevDate=null;this._preValue=null;this._isFocused=!1},_addAttr:function(i){var r=this;n.map(i,function(n,i){var u=i.toLowerCase();u=="class"?r.wrapper.addClass(n):u=="disabled"?r.disable():u=="readOnly"?r.model.readOnly=!0:u=="style"?r.wrapper.attr(i,n):u=="id"?(r.wrapper.attr(i,n+"_wrapper"),r.element.attr(i,n)):t.isValidAttr(r.element[0],i)?r.element.attr(i,n):r.wrapper.attr(i,n)})},_createDatePicker:function(){this._createWrapper();this._wireEvents();this.model.displayInline&&this.show();this.model.enableRTL&&this._setRTL(!0);this.model.showRoundedCorner&&this._setRoundedCorner(!0)},_checkNameAttr:function(){!this.element.attr("name")&&this._isInputBox&&this.element.attr("name",this.element[0].id);this.model.displayInline&&!this._isInputBox&&this._hiddenInput.attr("name",this.element[0].id)},_createWrapper:function(){if(this._getMapper(),this.model.specialDates&&this._createSpecialDateObject(),this.element[0].hasAttribute("tabindex")||this.element.attr("tabindex","0"),this._isInputBox&&(this.element.addClass("e-input").attr({"aria-atomic":"true","aria-live":"assertive","aria-expanded":"false",role:"combobox"}),this.wrapper=t.buildTag("span.e-datewidget e-widget "+this.model.cssClass),this.wrapper.attr("style",this.element.attr("style")),this.element.removeAttr("style"),t.isTouchDevice()||this.wrapper.addClass("e-ntouch"),this.innerWrapper=t.buildTag("span.e-in-wrap e-box e-padding"),this.wrapper.append(this.innerWrapper).insertBefore(this.element),this.innerWrapper.append(this.element),this.dateIcon=t.buildTag("span.e-select#"+this._id+"-img","",{},this._isIE8?{unselectable:"on"}:{}).append(t.buildTag("span.e-icon e-calendar","",{},{"aria-label":"Select"}).attr(this._isIE8?{unselectable:"on"}:{})).insertAfter(this.element)),!this._isSupport||this.model.displayInline&&!this._isInputBox){this._hiddenInput=t.buildTag("input.e-input e-placeholder ","",{},{type:"text"}).insertAfter(this.element);this._isInputBox&&this._hiddenInput.val(this._localizedLabels.watermarkText);this._hiddenInput.css("display","block");var i=this;n(this._hiddenInput).focus(function(){i.element.focus()})}this._checkNameAttr();this.model.height||(this.model.height=this.element.attr("height"));this.model.width||(this.model.width=this.element.attr("width"));this._setHeight(this.model.height);this._setWidth(this.model.width);this._id&&n("#e-"+this._id).remove();this._setDateValue(this.model.value);this._preValue=this._parseDate(this.element.val(),this.model.dateFormat);this._setWaterMark();this._dateValue=new Date(this._calendarDate.toString());this.model.displayInline?this._renderPopup():this._isInputBox&&this._renderDateIcon(this.model.showPopupButton,!1);this.model.readOnly&&this._disbleMaualInput();this.model.enabled?this.model.enabled&&n(this.element).hasClass("e-disable")&&this.enable():this.disable();this._layoutChanged();this._checkErrorClass();this._addAttr(this.model.htmlAttributes)},_isInputBox:function(){return this.element.is("input[type=date]")&&this.element.attr("type","text"),this.element.is("input")&&(this.element.is("input[type=text]")||!this.element.attr("type"))},_renderDateIcon:function(n,t){t&&this.model.showPopupButton==n||(!n&&this.dateIcon?(this._bindInputEvent(),this.dateIcon.css("display","none"),this.innerWrapper.removeClass("e-padding")):(this.innerWrapper&&(this.innerWrapper.addClass("e-padding"),this.dateIcon.css("display","block")),this.model.displayInline||this._bindDateButton()),this.model.showPopupButton=n)},_resizeCalender:function(){this.model.dayHeaderFormat=="short"||this.model.dayHeaderFormat=="min"||this.model.dayHeaderFormat=="none"?this.sfCalendar.removeClass("e-headerlong"):this.model.dayHeaderFormat=="long"&&this.sfCalendar.addClass("e-headerlong")},_setWidth:function(n){n?this.wrapper?this.wrapper.width(n):this.element.width(n):this.model.width=this.wrapper?this.wrapper.outerWidth():this.element.width()},_setHeight:function(n){n?this.wrapper?this.wrapper.height(n):this.element.height(n):this.model.height=this.wrapper?this.wrapper.outerHeight():this.element.height();this._isIE7&&this.element.height(this.innerWrapper.height())},_setRTL:function(n){n?(this.wrapper&&this.wrapper.addClass("e-rtl"),this.sfCalendar&&this.sfCalendar.addClass("e-rtl")):(this.wrapper&&this.wrapper.removeClass("e-rtl"),this.sfCalendar&&this.sfCalendar.removeClass("e-rtl"))},_setRoundedCorner:function(n){n?(this.innerWrapper&&this.innerWrapper.addClass("e-corner"),this.sfCalendar&&this.sfCalendar.addClass("e-corner")):(this.innerWrapper&&this.innerWrapper.removeClass("e-corner"),this.sfCalendar&&this.sfCalendar.removeClass("e-corner"))},_refreshDatepicker:function(){var r,f,u,t;if(this._stopRefresh){this._stopRefresh=!1;return}if(r=this.element.val(),f=!1,this.model.navigate!==null&&this.sfCalendar.find("table")[0]!==i)if(u=this.sfCalendar.find("table")[0].className,u==="e-dp-viewdays"&&+this._dateValue!=+this._calendarDate)this._calendarDate=this._dateValue,f=!0;else if(u!=="e-dp-viewdays"){(u==="e-dp-viewmonths"||u==="e-dp-viewyears"||u==="e-dp-viewallyears")&&(this._startNavigate=!0);return}t=this._specificFormat()&&this._formatter(this._preValue,this.model.dateFormat,this.model.locale)!=r?this._parseDate(r,!0):this._parseDate(r);t=this._validateYearValue(t);this.model.navigate!==null&&t!==null&&t!==this._calendarDate&&(t=this._calendarDate);this._setDateValue(t);this._specificFormat()&&this._compareDate(this.model.value,this._calendarDate)&&this.element.val(r);n(".e-datepicker-headertext",this.sfCalendar).text(this._formatter(this._calendarDate,this.model.headerFormat));this._resizeCalender();this._dateValue=new Date(this._calendarDate.toString());this._hoverDate=this._calendarDate.getDate()-1;this._renderCalendar(this,this._dateValue);f&&r===""&&this._addFocus("day",this._hoverDate);this._setFooterText(this._localizedLabels.buttonText);this._enableFooter(this.model.showFooter);this._layoutChanged()},_removeCurrentMonthFromHideDate:function(){for(var u,i,r,f=this.sfCalendar.find("tbody.e-datepicker-days tr").length,t=0;t<f;t++)for(u=this.sfCalendar.find("tbody.e-datepicker-days tr")[t].cells.length,i=0;i<u;i++)r=n(this.sfCalendar.find("tbody.e-datepicker-days tr")[t].cells[i]),r.hasClass("e-hidedate")&&r.hasClass("current-month")&&r.removeClass("current-month")},_validateYearValue:function(n){if(n!=null){var i=t.preferredCulture(this.model.locale).calendars.standard.twoDigitYearMax;i=typeof i=="string"?(new Date).getFullYear()%100+parseInt(i,10):i;this._calendarDate.getFullYear()-n.getFullYear()==100&&this._calendarDate.getFullYear()>i&&n.setFullYear(this._calendarDate.getFullYear())}return n},_setFooterText:function(t){n(".e-footer-text",this.sfCalendar).html(t)},_setSkin:function(n){this.wrapper?(this.wrapper.removeClass(this.model.cssClass),this.wrapper.addClass(n)):(this.element.removeClass(this.model.cssClass),this.element.addClass(n));this.sfCalendar.removeClass(this.model.cssClass);this.sfCalendar.addClass(n)},_setDisplayInline:function(t){this.model.displayInline=t;t&&this._isInputBox?(this.sfCalendar.insertAfter(this.wrapper),this._setDatePickerPosition()):t?(this.element.append(this.sfCalendar),this._isSupport&&this._isInputBox||this._hiddenInput.css("display","none")):(this.sfCalendar.css("display","none"),n("body").append(this.sfCalendar),this._isOpen=!1);t&&(this.show(),this._off(this.dateIcon,"mousedown",this._showDatePopUp),this.element.off("mousedown",n.proxy(this._showDatePopUp,this)))},_disbleMaualInput:function(){this.model.readOnly?(n(this.element).attr("readonly","readonly"),this.model.displayInline||this.hide()):this.model.allowEdit&&n(this.element).prop("readonly",!1)},_checkDateObject:function(n,t){var t;if(n&&(typeof JSON!="object"||JSON.stringify(n)!=="{}"))n instanceof Date||(t=this._specificFormat()?this._parseDate(n,!0):this._parseDate(n,t),n=t?t:(t=this._checkJSONString(n))?t:null);else return null;return!isNaN(Date.parse(n))&&(this._dateValue=this._calendarDate=this._zeroTime(n),this._validateDate(n))?this._dateValue:null},_checkJSONString:function(n){if(isNaN(Date.parse(n))){if(this.model.enableStrictMode&&t.parseDate(n,this.model.value,this.model.locale)==null)return null;if(this._extISORegex.exec(n)||this._basicISORegex.exec(n))return this._dateFromISO(n)}else if(new Date(n).toJSON()===n||new Date(n).toDateString()===n||new Date(n).toGMTString()===n||new Date(n).toISOString()===n||new Date(n).toLocaleString()===n||new Date(n).toString()===n||new Date(n).toUTCString()===n){if(this.model.timeZone)return new Date(new Date(n).getTime()+t.serverTimezoneOffset*36e5);if(n.match(/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(\.\d+)?(([+-]\d\d:\d\d)|Z)?$/i)&&n.match(/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(\.\d+)?(([+-]\d\d:\d\d)|Z)?$/i).length>0)return n=n.split("T"),n=n[0],t.parseDate(n,"yyyy-MM-dd",this.model.locale)}else if(typeof n=="string")return this._dateFromISO(n)},_dateFromISO:function(n){var i=this._isISODate.test(n)&&(this._extISORegex.exec(n)||this._basicISORegex.exec(n)),c="",l="",a="",v,e,o,f,r,t,s,u,h,y;if(i){for(e=0;e<this._dates.length;e++)if(this._dates[e][1].exec(i[1])){c=this._dates[e][0];break}if(i[3])for(o=0;o<this._times.length;o++)if(this._times[o][1].exec(i[3])){l=(i[2]||" ")+this._times[o][0];break}for(i[4]&&this._zeroRegex.exec(i[4])&&(a="Z"),v=c+l+a,f=v.match(this._tokens),t=[],u=0;u<f.length;u++)h=f[u],s=this._checkLiteral(f[u]),y=this._numberRegex[s?f[u].toLowerCase():h.length]||new RegExp("^\\d{1,"+h.length+"}"),r=n.match(y),r&&(n.substr(0,n.indexOf(r))>=0&&!s&&(f[u].indexOf("M")>=0?t.push(parseInt(r[0])-1):t.push(parseInt(r[0]))),n=n.slice(n.indexOf(r[0])+r[0].length));return i[4]=="Z"?new Date(Date.UTC.apply(null,t)):new Date(t[0],t[1],t[2],t[3],t[4],t[5])}return new Date(n+"")},_checkLiteral:function(n){var t=n.toLowerCase();return t=="t"||t=="z"||t==":"||t=="-"?!0:!1},_checkInstanceType:function(n){if(n=this._stringToObject(n),n)n instanceof Date||(n=this._parseDate(n));else return null;return isNaN(Date.parse(n))?null:this._zeroTime(n)},_stringToObject:function(n){if(typeof n=="string"){var i=t.parseDate(n,this.model.dateFormat,this.model.locale);n=i!=null?i:new Date(n)}return n},_validateMinMaxDate:function(){var n=!1,t=!1;this.model.maxDate<this.model.minDate&&(this.model.minDate=this.model.maxDate);this.model.enableStrictMode?this.model.value?this.model.value<this.model.minDate?(this._calendarDate=this.model.minDate,this.isValidState=!1,t=!0):this.model.value>this.model.maxDate?(this._calendarDate=this.model.maxDate,this.isValidState=!1,t=!0):this.isValidState=!0:this._calendarDate<this.model.minDate?this._calendarDate=this.model.minDate:this._calendarDate>this.model.maxDate&&(this._calendarDate=this.model.maxDate):(this.model.value?this.model.value<this.model.minDate?(this._calendarDate=this.model.value=this.model.minDate,n=!0):this.model.value>this.model.maxDate&&(this._calendarDate=this.model.value=this.model.maxDate,n=!0):(this.element.val(""),this._calendarDate<this.model.minDate?this._calendarDate=this.model.minDate:this._calendarDate>this.model.maxDate&&(this._calendarDate=this.model.maxDate)),this.isValidState=!0);n&&this.element.val(this._formatter(this.model.value,this.model.dateFormat));t&&this._getInternalEvents&&this._trigger("outOfRange")},_setCulture:function(n){this.culture=t.preferredCulture(n);this.culture&&(this.model.locale=this.culture.name=="en"?"en-US":this.culture.name,this.Date.dayNames=this.culture.calendar.days.names,this.Date.dayNamesMin=this.culture.calendar.days.namesShort,this.Date.abbrDayNames=this.culture.calendar.days.namesAbbr,this.Date.monthNames=this.culture.calendar.months.names,this.Date.abbrMonthNames=this.culture.calendar.months.namesAbbr,this.Date.format=this.culture.calendar.patterns.d,this.model.dateFormat==""&&(this.model.dateFormat=this.culture.calendar.patterns.d),this.model.startDay==-1&&(this.model.startDay=this.culture.calendar.firstDay));this._separator=this._getSeparator();this._localizedLabels=this._getLocalizedLabels();t.isNullOrUndefined(this._options)||(t.isNullOrUndefined(this._options.watermarkText)||(this._localizedLabels.watermarkText=this._options.watermarkText),t.isNullOrUndefined(this._options.buttonText)||(this._localizedLabels.buttonText=this._options.buttonText));this._localizedLabelToModel()},_localizedLabelToModel:function(){this.model.watermarkText=this._localizedLabels.watermarkText;this.model.buttonText=this._localizedLabels.buttonText},_setWaterMark:function(){if(this.element!=null&&this.element.hasClass("e-input"))return this._localizedLabels.watermarkText&&this.element.val()==""&&(this.isValidState=!0,this._checkErrorClass()),this._isSupport||this.element.val()!=""?n(this.element).attr("placeholder",this._localizedLabels.watermarkText):this._hiddenInput.css("display","block").val(this._localizedLabels.watermarkText),!0},_setDatePickerPosition:function(){if(!this.model.displayInline||this._isInputBox){var i=this.element.is("input")?this.wrapper:this.element,r=this._getOffset(i),o,s,l=n(document).scrollTop()+n(window).height()-(r.top+n(i).outerHeight()),a=r.top-n(document).scrollTop(),f=this.sfCalendar.outerHeight(),e=this.sfCalendar.outerWidth(),u=r.left,h=i.outerHeight(),p=(h-i.height())/2,v=this._getZindexPartial(),c=3,y=f<l||f>a?r.top+h+c:r.top-f-c;o=n(document).scrollLeft()+n(window).width()-u;s=n(document).scrollLeft()+u+i.width();(this.model.enableRTL||e>o&&e<u+i.outerWidth()&&!t.isNullOrUndefined(this.wrapper))&&(u+=this.wrapper.width()-this.sfCalendar.width());e>s&&(u=r.left);this.sfCalendar.css({left:u+"px",top:y+"px","z-index":v})}},_getOffset:function(n){return t.util.getOffset(n)},_getZindexPartial:function(){return t.util.getZindexPartial(this.element,this.sfCalendar)},_setMinDate:function(n){this.model.minDate=this._checkInstanceType(n);this.model.minDate||(this.model.minDate=new Date("11/31/1899"))},_setMaxDate:function(n){this.model.maxDate=this._checkInstanceType(n);this.model.maxDate||(this.model.maxDate=new Date("12/31/2099"))},_setDateValue:function(n,i){var r=this._checkDateObject(n,i);r!=null?(this.isValidState=!0,this.model.value=new Date(r),this.model.displayInline||this.wrapper.addClass("e-valid"),this._validateMinMaxDate(),this._preTxtValue=this.element.val(this._formatter(this.model.value,this.model.dateFormat))):(n instanceof Date&&(this._validateMinMaxDate(),n=this._formatter(n,this.model.dateFormat)),this.model.enableStrictMode?this.element.val(n):this.element.val(null),this.model.value=null,this.model.displayInline||this.wrapper.removeClass("e-valid"),this._triggerChangeEvent(),this.isValidState=this.element.val()==""||t.isNullOrUndefined(this.element.val())?!0:!1);this._removeWatermark()},_updateInputVal:function(){var n=this._validateValue();(n!=null||!this.model.enableStrictMode)&&this.sfCalendar&&this.sfCalendar.find(".e-datepicker-days").is(":visible")&&this._refreshDatepicker()},_validateInputVal:function(){var n=this._validateValue();n!=null&&(this.model.enableStrictMode||(n<=this.model.maxDate&&n>=this.model.minDate?this.isValidState=!0:(this.model.value=null,this.isValidState=!0)))},_validateValue:function(){var n;return n=this._specificFormat()&&this.element.val()!=this._formatter(this._preValue,this.model.dateFormat,this.model.locale)?this._parseDate(this.element.val(),!0):this._parseDate(this.element.val()),this._validateYearValue(n)},_getSeparator:function(){var t,i,n;for(t=this.culture?this.culture.calendar.patterns.d:this.model.dateFormat,i=new RegExp("^[a-zA-Z0-9]+$"),n=0;n<t.length;n++)if(!i.test(t[n]))return t[n]},_checkIE7:function(){if(navigator.appName=="Microsoft Internet Explorer"){var t=new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})"),n=-1;if(t.exec(navigator.userAgent)!=null&&(n=parseFloat(RegExp.$1)),n>=7&&n<8)return!0}return!1},_isValidDate:function(n){return n&&typeof n.getTime=="function"&&isFinite(n.getTime())},_formatter:function(n,i){var r=this._checkFormat(i);return t.format(n,r,this.model.locale)},_parseDate:function(n,r){var f=this._checkFormat(this.model.dateFormat),u=n;return!this._specificFormat()||u==i||n==""||r==!0||t.format(t.parseDate(u,f,this.model.locale),this.model.dateFormat,this.model.locale)==u?t.parseDate(n,f,this.model.locale):this._dateValue},_checkFormat:function(n){var i=this,r=this._regExp();return n.replace(r,function(n){return n==="/"?t.preferredCulture(i.model.locale).calendars.standard["/"]!=="/"?"'/'":n:n})},_regExp:function(){return/\/dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|HH|H|hh|h|mm|m|fff|ff|f|tt|ss|s|zzz|zz|z|gg|g|"[^"]*"|'[^']*'|[/]/g},isLeapYear:function(n){return n%4==0&&n%100!=0||n%400==0},_zeroTime:function(n){var t=typeof n=="string"?this._parseDate(n):new Date(n);return t.setMilliseconds(0),t.setSeconds(0),t.setMinutes(0),t.setHours(0),t},_getDaysInMonth:function(n){return[31,this.isLeapYear(n)?29:28,31,30,31,30,31,31,30,31,30,31][n.getMonth()]},_addDays:function(n,t){return n.setDate(n.getDate()+t),n},_addYears:function(n,t){return n.setFullYear(n.getFullYear()+t),n},_addMonths:function(n,t){var i=n.getDate();return n.setMonth(n.getMonth()+t),i>n.getDate()&&this._addDays(n,-n.getDate()),n},_isWeekend:function(n){return n.getDay()==0||n.getDay()==6},_isSpecialDates:function(n){if(this.model.specialDates)for(var t=0;t<this.model.specialDates.length;t++)if(this.model.specialDates[t]&&this.model.specialDates[t][this._mapField._date]&&n.getDate()==this.model.specialDates[t][this._mapField._date].getDate()&&n.getMonth()==this.model.specialDates[t][this._mapField._date].getMonth()&&n.getFullYear()==this.model.specialDates[t][this._mapField._date].getFullYear())return this._getIndex=t,!0;return!1},_getMapper:function(){var n=this.model.fields;this._mapField={};this._mapField._date=n&&n.date?n.date:"date";this._mapField._tooltip=n&&n.tooltip?n.tooltip:"tooltip";this._mapField._icon=n&&n.iconClass?n.iconClass:"iconClass";this._mapField._custom=n&&n.cssClass?n.cssClass:"cssClass"},_createSpecialDateObject:function(){for(var n=0;n<this.model.specialDates.length;n++)this.model.specialDates[n][this._mapField._date]=this._checkInstanceType(this.model.specialDates[n][this._mapField._date])},_getMonthName:function(n,t){return n?this.Date.abbrMonthNames[t.getMonth()]:this.Date.monthNames[t.getMonth()]},_displayNewMonth:function(n,t){return this._setDisplayedMonth(this.displayedMonth+n,this.displayedYear+t,!0),!1},_setDisplayedMonth:function(n,t,r){var f,e,u,s,h,o;this.model.minDate!=i&&this.model.maxDate!=i&&(f=new Date(this.model.minDate.getTime()),f.setDate(1),e=new Date(this.model.maxDate.getTime()),e.setDate(1),!n&&!t||isNaN(n)&&isNaN(t)?(u=this._zeroTime(new Date),u.setDate(1)):u=isNaN(n)?new Date(t,this.displayedMonth,1):isNaN(t)?new Date(this.displayedYear,n,1):new Date(t,n,1),u.getTime()<f.getTime()?u=f:u.getTime()>e.getTime()&&(u=e),s=this.displayedMonth,h=this.displayedYear,this.displayedMonth=u.getMonth(),this.displayedYear=u.getFullYear(),o=u,r&&(this.displayedMonth!=s||this.displayedYear!=h)&&(this._renderCalendar(this,o),this._dateValue=o,this._trigger("monthChanged",[this.displayedMonth,this.displayedYear])))},_clearSelected:function(){this.numSelected=0;t.isNullOrUndefined(this.sfCalendar)||(this.model.highlightSection=="week"?n("td.e-active",this.sfCalendar).removeClass("e-active").addClass("e-state-hover").attr("aria-selected",!1).parent().removeClass("e-selected-week"):this.model.highlightSection=="month"?n("td.e-active",this.sfCalendar).removeClass("e-active").addClass("e-state-hover").attr("aria-selected",!1).parent().parent().removeClass("e-selected-month"):this.model.highlightSection=="workdays"?n("td.e-active",this.sfCalendar).removeClass("e-active").addClass("e-state-hover").attr("aria-selected",!1).parent().removeClass("e-work-week"):n("td.e-active",this.sfCalendar).removeClass("e-active").addClass("e-state-hover").attr("aria-selected",!1))},_addSelected:function(){this.model.highlightSection=="week"?n("td.e-active",this.sfCalendar).parent().addClass("e-selected-week"):this.model.highlightSection=="month"?n("td.e-active, this.sfCalendar").parent().parent().addClass("e-selected-month"):this.model.highlightSection=="workdays"&&n("td.e-active",this.sfCalendar).parent().addClass("e-work-week")},_hideOtherMonths:function(t){n("td.other-month",t).css("visibility","hidden")},_showOtherMonths:function(t){n("td.other-month",t).css({visibility:"visible"})},_otherMonthsVisibility:function(){this.model.showOtherMonths?this._showOtherMonths(this.sfCalendar):this._hideOtherMonths(this.sfCalendar)},_createCalender:function(){t.buildTag("div.e-header").attr(this._isIE8?{unselectable:"on"}:{}).append(t.buildTag("span.e-prev").append(t.buildTag("a.e-icon e-arrow-sans-left").attr({role:"button"}).attr(this._isIE8?{unselectable:"on"}:{}))).append(t.buildTag("span.e-text").append(t.buildTag("span.e-datepicker-headertext").text(this._formatter(this._calendarDate,this.model.headerFormat)).attr({"aria-atomic":"true","aria-live":"assertive",role:"heading"}).attr(this._isIE8?{unselectable:"on"}:{}))).append(t.buildTag("span.e-next").append(t.buildTag("a.e-icon e-arrow-sans-right").attr({role:"button"}).attr(this._isIE8?{unselectable:"on"}:{}))).appendTo(this.sfCalendar);this._enableHeader(this._showHeader);var i=t.buildTag("table.e-dp-viewdays","",{}).data("e-table","data").attr({role:"grid"}).attr(this._isIE8?{unselectable:"on"}:{});this.sfCalendar.append(i);this._renderCalendar(this);this._startLevel(this.model.startLevel);t.buildTag("div.e-footer").append(t.buildTag("span.e-footer-icon")).append(t.buildTag("span.e-footer-text")).appendTo(this.sfCalendar);n(".e-footer-text",this.sfCalendar).html(this._localizedLabels.buttonText);this._enableFooter(this.model.showFooter)},_enableHeader:function(t){t?n(".e-header",this.sfCalendar).show():n(".e-header",this.sfCalendar).hide()},_enableFooter:function(t){t?n(".e-footer",this.sfCalendar).show():n(".e-footer",this.sfCalendar).hide();this._todayBtnDisable()},_todayBtnDisable:function(){var t=new Date((new Date).getFullYear(),(new Date).getMonth(),(new Date).getDate(),0,0,0);+this.model.minDate<=+t&&+this.model.maxDate>=+t?n(".e-footer",this.sfCalendar).removeClass("e-footer-disable"):n(".e-footer",this.sfCalendar).addClass("e-footer-disable")},_checkArrows:function(n,t){this._preArrowCondition(n,this.model.minDate.getFullYear());this._nextArrowCondition(t,this.model.maxDate.getFullYear())},_checkDateArrows:function(){this._preArrowCondition(this._tempMinDate,this.model.minDate);this._nextArrowCondition(this._tempMaxDate,this.model.maxDate)},_preArrowCondition:function(n,t){n<=t?this.sfCalendar.find(".e-prev").addClass("e-disable").attr({"aria-disabled":!0}):this.sfCalendar.find(".e-prev").removeClass("e-disable").attr({"aria-disabled":!1})},_nextArrowCondition:function(n,t){n>=t?this.sfCalendar.find(".e-next").addClass("e-disable").attr({"aria-disabled":!0}):this.sfCalendar.find(".e-next").removeClass("e-disable").attr({"aria-disabled":!1})},_previousNextHandler:function(t){var r,u,f,e,o,s,i;if(this.model.readOnly||!this.model.enabled||n(t.target).hasClass("e-disable")||n(t.currentTarget).hasClass("e-disable"))return!1;t.preventDefault();this._keyboardInteraction=!1;r=n("table",this.sfCalendar);u=this._navigateFrom(r);f=n(t.target).is("a")?n(t.target.parentNode):n(t.target);e=f.hasClass("e-prev")?!0:!1;this._processNextPrevDate(e);o=n("table",this.sfCalendar);s=o.get(0).className;switch(s){case"e-dp-viewdays":i="month";break;case"e-dp-viewmonths":i="year";break;case"e-dp-viewyears":i="decade";break;case"e-dp-viewallyears":i="century"}this._trigger("navigate",{date:this._dateValue,value:this._formatter(this._dateValue,this.model.dateFormat),navigateTo:i,navigateFrom:u})},_processNextPrevDate:function(t){var c,i,u,l,s,h,f,e,o,r;if((this._DRPdisableFade&&(c=new Date(this.sfCalendar.find("td.current-month").attr("data-date")),this._dateValue=c),t&&this.sfCalendar.find(".e-arrow-sans-left").hasClass("e-disable"))||!t&&this.sfCalendar.find(".e-arrow-sans-right").hasClass("e-disable"))return!1;i=n("table",this.sfCalendar);l=i.get(0).className;switch(l){case"e-dp-viewdays":if(s=this.model.stepMonths,t){if(this._dateValue<=this.model.minDate)return this._flag=!1,!1}else if(this._dateValue>=this.model.maxDate)return this._flag=!1,!1;this._flag=!0;this._addMonths(this._dateValue,t?-s:s);this._clickedDate&&(this._calendarDate=this._clickedDate);this._dateValue=this._dateValue<this.model.minDate?new Date(this.model.minDate.toString()):this._dateValue;this._dateValue=this._dateValue>this.model.maxDate?new Date(this.model.maxDate.toString()):this._dateValue;this._renderCalendar(this,this._dateValue);this._keyboardInteraction&&(this._trigger("navigate",{date:this._dateValue,value:this._formatter(this._dateValue,this.model.dateFormat)}),this._removeCurrentMonthFromHideDate(),this._keyboardInteraction=!1);n(".e-datepicker-headertext",this.sfCalendar).text(this._formatter(this._dateValue,this.model.headerFormat));this._addFocus("day",this._hoverDate);h=this._findFirstLastDay(new Date(this._dateValue.toString()));this._preArrowCondition(h.firstDay,this.model.minDate);this._nextArrowCondition(h.lastDay,this.model.maxDate);break;case"e-dp-viewmonths":if(f=this._dateValue,f.setFullYear(n(".e-datepicker-headertext",this.sfCalendar).text()),t){if(f.getFullYear()<=this.model.minDate.getFullYear())return this._flag=!1,!1}else if(f.getFullYear()>=this.model.maxDate.getFullYear())return this._flag=!1,!1;this._flag=!0;this._addYears(f,t?-1:1);this._renderCalendar(this,f);u=f.getFullYear();n(".e-datepicker-headertext",this.sfCalendar).text(u);n("tbody,tr.e-week-header",i).not(".e-datepicker-months").hide();n(n(i).find(".e-datepicker-months")).show();this._addFocus("month",this._hoverMonth);this._checkArrows(u,u);break;case"e-dp-viewyears":if(e=this._dateValue,e.setFullYear(n(i).find(".e-state-hover").text()),t){if(parseInt(this.popup.find("td.e-year-first:first").text())<=this.model.minDate.getFullYear())return this._flag=!1,!1}else if(parseInt(n("td.e-year-last:first").prev().text())>=this.model.maxDate.getFullYear())return this._flag=!1,!1;this._flag=!0;n(i).find(".e-state-hover").hasClass("e-year-first")&&t||n(i).find(".e-state-hover").hasClass("e-year-last")&&!t?this._dateValue.setFullYear(e.getFullYear()):n(i).find(".e-state-hover").hasClass("e-year-first")&&!t?this._dateValue.setFullYear(e.getFullYear()+11):n(i).find(".e-state-hover").hasClass("e-year-last")&&t?this._dateValue.setFullYear(e.getFullYear()-11):this._dateValue.setFullYear(e.getFullYear()+(t?-10:10));this._renderCalendar(this,this._dateValue);r=parseInt(this._dateValue.getFullYear())-(parseInt(this._dateValue.getFullYear())%10+1);n(".e-datepicker-headertext",this.sfCalendar).text(r+1+" - "+(r+10));n("tbody,tr.e-week-header",i).not(".e-datepicker-years").hide();n(n(i).find(".e-datepicker-years")).show();this._addFocus("year",this._hoverYear+(n(".e-year-first.e-hidedate").length?-1:0));this._checkArrows(r+1,r+10);break;case"e-dp-viewallyears":if(t){if(o=parseFloat(n("td.e-allyear-first",i.get(0)).text().split("-")[1]),o<=this.model.minDate.getFullYear())return this._flag=!1,!1;this._flag=!0}else{if(o=parseFloat(n("td.e-allyear-last",i.get(0)).prev().text().split("-")[1]),o>=this.model.maxDate.getFullYear())return this._flag=!1,!1;this._flag=!0}this._dateValue.setFullYear((this._lastHoveredYear?this._lastHoveredYear:this._dateValue.getFullYear())+(t?-100:100));this._lastHoveredYear=this._dateValue.getFullYear();this._renderCalendar(this,this._dateValue);r=parseInt(this._dateValue.getFullYear())-(parseInt(this._dateValue.getFullYear())%100+1);u=parseFloat(n("td.e-allyear-last",i.get(0)).prev().text().split("-")[1]);n(".e-datepicker-headertext",this.sfCalendar).text(r+1+" - "+u);n("tbody,tr.e-week-header",i).not(".e-datepicker-allyears").hide();n(n(i).find(".e-datepicker-allyears")).show();this._addFocus("allyear",this._hoverAllYear+(n(".e-allyear-first.e-hidedate").length?-1:0));this._checkArrows(r+1,u)}this._layoutChanged()},_addFocus:function(t,i){var f="e-current-"+t,u,r;return t=="day"&&(f="current-month"),u=this.sfCalendar.find("tbody tr td."+f),t=="month"&&n(u).each(function(t,r){if(parseInt(n(r).attr("data-index"))==parseInt(i)){i=t;return}}),r=u[i],r||(r=u.last()),this.sfCalendar.find("table td").removeClass("e-state-hover"),n(r).hasClass("e-hidedate")||n(r).addClass("e-state-hover"),this._setActiveState(t),i},_setActiveState:function(t){var e,f,o;if(this.model.value instanceof Date){var i=this.sfCalendar.find("tbody tr td.e-current-"+t),r,s=this,u=-1;switch(t){case"month":this.model.value.getFullYear()===parseInt(n(".e-text",this.sfCalendar).text())&&n(i).each(function(t,i){if(parseInt(n(i).attr("data-index"))==parseInt(s.model.value.getMonth())){u=t;return}});break;case"year":e=this.model.value.getFullYear();n(i).each(function(n,t){if(parseInt(t.innerHTML)==parseInt(e)){u=n;return}});break;case"allyear":f=parseInt(this.model.value.getFullYear())-(parseInt(this.model.value.getFullYear())%10+1);o=f+1+" - "+(f+10);n(i).each(function(n,t){if(parseInt(t.innerHTML)==parseInt(o)){u=n;return}})}r=i[u];r&&(this.sfCalendar.find("table td").removeClass("e-active"),n(r).hasClass("e-hidedate")||n(r).addClass("e-active"))}},_setFocusByName:function(t,i){var u=this.sfCalendar.find("tbody tr td.e-current-"+t),f,r;return n(u).each(function(n,t){if(parseInt(t.innerHTML)==parseInt(i)){f=n;return}}),r=u[f],r||(r=u.last()),this.sfCalendar.find("table td").removeClass("e-state-hover"),n(r).addClass("e-state-hover"),this._setActiveState(t),f},_getHeaderTxt:function(){return this.sfCalendar.find(".e-datepicker-headertext").text()},_findFirstLastDay:function(n){var t=n.getFullYear(),i=n.getMonth(),r=new Date(t,i,1),u=new Date(t,i+1,0);return{firstDay:r,lastDay:u}},_forwardNavHandler:function(t){if(this.model.readOnly||!this.model.enabled)return!1;t&&t.preventDefault();var u=n("table",this.sfCalendar),e=n("table",this.sfCalendar).get(0).className,o=this,i,r,f=this._navigateFrom(u);switch(e){case"e-dp-viewdays":this._hoverMonth=this._getDateObj(u.find(".e-state-hover")).getMonth()||this._getDateObj(u.find(".e-active")).getMonth()||0;this._DRPdisableFade&&(this._renderCalendar(this,this._calendarDate),n(".e-datepicker-headertext",this.sfCalendar).text(this._formatter(this._dateValue,this.model.headerFormat)));this._startLevel("year");r="year";this._addFocus("month",this._hoverMonth);break;case"e-dp-viewmonths":i=this._getHeaderTxt();this._startLevel("decade");r="decade";this._hoverYear=this._setFocusByName("year",i);break;case"e-dp-viewyears":i=this._getHeaderTxt();this._startLevel("century");r="century";this._hoverAllYear=this._setFocusByName("allyear",i)}f!="century"&&this._trigger("navigate",{date:this._dateValue,value:this._formatter(this._dateValue,this.model.dateFormat),navigateTo:r,navigateFrom:f});this._layoutChanged()},_cellSelection:function(){var u=n("table",this.sfCalendar),r=n("table",this.sfCalendar).get(0).className,t,i;switch(r){case"e-dp-viewmonths":this._hoverMonth=this._addFocus("month",this._dateValue.getMonth());break;case"e-dp-viewyears":t=new Date(this._dateValue.toString());this._navigationToPrevNext("year");this._dateValue=t;this._hoverYear=this._setFocusByName("year",this._dateValue.getFullYear());break;case"e-dp-viewallyears":t=new Date(this._dateValue.toString());this._navigationToPrevNext("allyear");this._dateValue=t;i=parseInt(this._dateValue.getFullYear())-(parseInt(this._dateValue.getFullYear())%10+1);this._hoverAllYear=this._setFocusByName("allyear",i+1+" - "+i+10)}this._layoutChanged()},_navigationToPrevNext:function(t){var r=this.sfCalendar.find("tbody tr td.e-current-"+t),u,i,f=this._dateValue.getFullYear();n(r).each(function(n,t){if(parseInt(t.innerHTML)==parseInt(f)){u=n;return}});i=r[u];i&&(n(i).hasClass("e-"+t+"-last")?this._processNextPrevDate(!1):n(i).hasClass("e-"+t+"-first")&&this._processNextPrevDate(!0))},_navigateFrom:function(n){var i=n.get(0).className,t;switch(i){case"e-dp-viewdays":t="month";break;case"e-dp-viewmonths":t="year";break;case"e-dp-viewyears":t="decade";break;case"e-dp-viewallyears":t="century"}return t},_backwardNavHandler:function(i){var u,r;if(this._animating=!0,this.model.readOnly||!this.model.enabled)return!1;i.type?(i.preventDefault(),u=n(i.currentTarget)):u=i;var f=n("table",this.sfCalendar),o,c=n("table",this.sfCalendar).get(0).className,e=this,s,h=this._navigateFrom(f);switch(c){case"e-dp-viewmonths":f.removeClass("e-dp-viewmonths").addClass("e-dp-viewdays");this._lastHoveredMonth=parseInt(n(u).attr("data-index"));this._dateValue=new Date(this._dateValue.getFullYear(),this._lastHoveredMonth,1);this._DRPdisableFade&&this._trigger("_month_Loaded",{currentTarget:i.currentTarget});this._renderCalendar(this,this._dateValue);n("tbody",f).not(".e-datepicker-days,.e-week-header").hide();n(n(f).find(".e-datepicker-days,.e-week-header")).fadeIn("fast",function(){e._addFocus("day",e._hoverDate||0);e._animating=!1});n(".e-datepicker-headertext",this.sfCalendar).text(this._formatter(this._dateValue,this.model.headerFormat));s="month";break;case"e-dp-viewyears":f.removeClass("e-dp-viewyears").addClass("e-dp-viewmonths");this._lastHoveredYear=parseInt(u.text());this._dateValue.setFullYear(this._lastHoveredYear);this._renderCalendar(this,this._dateValue);n("tbody,tr.e-week-header",f).not(".e-datepicker-months").hide();t.isNullOrUndefined(this._hoverMonth)&&!t.isNullOrUndefined(this._dateValue)&&(this._hoverMonth=this._dateValue.getMonth());n(n(f).find(".e-datepicker-months")).fadeIn("fast",function(){e._addFocus("month",e._hoverMonth||0);e._animating=!1});o=u.text();n(".e-datepicker-headertext",this.sfCalendar).text(o);this._checkArrows(o,o);s="year";break;case"e-dp-viewallyears":r=u.text().split("-");f.removeClass("e-dp-viewallyears").addClass("e-dp-viewyears");r[0]<this.model.minDate.getFullYear()?r[0]=this.model.minDate.getFullYear().toString():r[0]>this.model.maxDate.getFullYear()&&(r[0]=this.model.maxDate.getFullYear().toString());this._renderCalendar(this,new Date(r[0],0,1));n("tbody,tr.e-week-header",f).not(".e-datepicker-years").hide();n(n(f).find(".e-datepicker-years")).fadeIn("fast",function(){e._addFocus("year",e._hoverYear||0);e._animating=!1});n(".e-datepicker-headertext",this.sfCalendar).text(r[0]+" - "+r[1]);this._checkArrows(r[0],r[1]);s="decade";this._dateValue=new Date(this._dateValue.setFullYear(parseInt(n.trim(r[0]))+(this._lastHoveredYear?this._lastHoveredYear%10:this._dateValue.getFullYear()%10)));break;default:this._clearSelected();this.sfCalendar.find("table td").removeClass("e-state-hover");u.not("td.e-hidedate").addClass("e-active").attr("aria-selected",!0);this._addSelected();this._hoverDate=this._getDateObj(u).getDate()-1;this._dateValue=new Date(u.attr("data-date"));this._clickedDate=new Date(u.attr("data-date"));this._animating=!1}h!="month"&&this._trigger("navigate",{date:this._dateValue,value:this._formatter(this._dateValue,this.model.dateFormat),navigateTo:s,navigateFrom:h});this._layoutChanged()},_startLevel:function(t){var i=n("table",this.sfCalendar),o=n(".e-datepicker-headertext",this.sfCalendar),r,f,u=this._dateValue,s,e;switch(t){case"decade":i.removeClass("e-dp-viewallyears e-dp-viewmonths e-dp-viewdays").addClass("e-dp-viewyears");n("tbody,tr.e-week-header",i).not(".e-datepicker-years").hide();n(n(i).find(".e-datepicker-years")).show();u=this.model.enableStrictMode&&this._calendarDate<this._dateValue?this._calendarDate:u;e=parseInt(u.getFullYear())-(parseInt(u.getFullYear())%10+1);r=e+1;f=e+10;o.text(r+" - "+f);this._checkArrows(r,f);this._hoverYear=this._setFocusByName("year",u.getFullYear());break;case"century":this._calendarDate<this._dateValue||this._renderCalendar(this,u);i.removeClass("e-dp-viewyears e-dp-viewdays e-dp-viewmonths").addClass("e-dp-viewallyears");n("tbody,tr.e-week-header",i).not(".e-datepicker-allyears").hide();n(n(i).find(".e-datepicker-allyears")).show();r=parseFloat(n("td.e-allyear-first",i.get(0)).text().split("-")[1])+1;f=parseFloat(n("td.e-allyear-last",i.get(0)).prev().text().split("-")[1]);s=r+" - "+f;o.text(s);this._checkArrows(r,f);e=parseInt(u.getFullYear())-(parseInt(u.getFullYear())%10+1);this._hoverAllYear=this._setFocusByName("allyear",e+1+" - "+(e+10));break;case"year":i.removeClass("e-dp-viewyears e-dp-viewallyears e-dp-viewdays").addClass("e-dp-viewmonths");n("tbody,tr.e-week-header",i).hide();n(n(i).find(".e-datepicker-months")).show();r=this.model.enableStrictMode&&this._calendarDate<this._dateValue?this._calendarDate.getFullYear():u.getFullYear();o.text(r);this._checkArrows(r,r);this._hoverMonth=u.getMonth();this._addFocus("month",this._hoverMonth);break;case"month":i.removeClass("e-dp-viewyears e-dp-viewallyears e-dp-viewmonths").addClass("e-dp-viewdays ")}},_depthLevel:function(t){var i=this.sfCalendar;switch(t){case"year":n(i.find(".e-current-year,.e-current-allyear")).on("click",n.proxy(this._backwardNavHandler,this));this._on(n(".e-current-month",this.sfCalendar),"click",n.proxy(this._onDepthSelectHandler,this));break;case"decade":n(i.find(".e-current-allyear")).on("click",n.proxy(this._backwardNavHandler,this));n(".e-current-year",this.sfCalendar).on("click",n.proxy(this._onDepthSelectHandler,this));break;case"century":n(i.find(".e-current-allyear")).on("click",n.proxy(this._onDepthSelectHandler,this));break;case"month":this._on(i.find(".current-month,.other-month,.e-current-month,.e-current-year,.e-current-allyear"),"click",n.proxy(this._backwardNavHandler,this));this._on(i.find(".current-month , .other-month"),"click",n.proxy(this._onSetCancelDateHandler,this))}},_onDepthSelectHandler:function(t){if(this.model.readOnly||!this.model.enabled)return!1;n(t.target).hasClass("e-current-month")?this._dateValue=new Date(this._dateValue.setMonth(parseInt(t.target.attributes["data-index"].value))):n(t.target).hasClass("e-current-year")?this._dateValue=new Date(this._dateValue.setFullYear(parseInt(t.target.innerHTML))):n(t.target).hasClass("e-current-allyear")&&(this._dateValue=new Date(this._dateValue.setFullYear(parseInt(t.target.innerHTML))));this._onSetCancelDateHandler(t)},_datepickerMonths:function(t,i,r){for(var e,o,u,s,h=function(n){return document.createElement(n)},f=0,c=0;c<3;c++){for(e=n(h("tr")),o=0;o<4;o++)u=n(h("td")).addClass("e-current-month e-state-default").attr({"data-index":f}).attr(this._isIE8?{unselectable:"on"}:{}).html(this.Date.abbrMonthNames[f++]),r.getFullYear()<this.model.minDate.getFullYear()||r.getFullYear()>this.model.maxDate.getFullYear()?(u.addClass("e-hidedate"),u.removeClass("e-current-month")):(r.getFullYear()<=this.model.minDate.getFullYear()&&f<this.model.minDate.getMonth()+1||r.getFullYear()>=this.model.maxDate.getFullYear()&&f>this.model.maxDate.getMonth()+1)&&(u.addClass("e-hidedate"),u.removeClass("e-current-month")),e.append(u);t.append(e)}i.append(t);s=r.getFullYear();this._checkArrows(s,s)},_datepickerYears:function(t,i,r){for(var o,s,h,u,c=function(n){return document.createElement(n)},l=parseInt(r)-(parseInt(r)%10+1),f=[],e=0;e<12;e++)f.push(l+e);for(o=0,s=0;s<3;s++){for(h=n(c("tr")),e=0;e<4;e++)u=n(c("td")),u.attr(this._isIE8?{unselectable:"on"}:{}),o==0?u.addClass("e-year-first e-current-year "):o==11?u.addClass("e-year-last e-current-year "):u.addClass("e-current-year e-state-default"),(f[o]<this.model.minDate.getFullYear()||f[o]>this.model.maxDate.getFullYear())&&(u.addClass("e-hidedate"),u.removeClass("e-current-year")),u.html(f[o++]),h.append(u);t.append(h)}i.append(t);this._checkArrows(f[0],f[f.length])},_datepickerAllYears:function(t,i,r){for(var f,h,c,u,e=parseInt(r)-(parseInt(r)%100+10),a=e,s=[],l=this._isIE8||this._isIE9?"":"\n",o=0;o<12;o++)s.push(parseInt(e)+" -"+l+parseInt(e+9)),e=e+10;for(f=0,h=0;h<3;h++){for(c=n(document.createElement("tr")),o=0;o<4;o++)u=n(document.createElement("td")),u.attr(this._isIE8?{unselectable:"on"}:{}),f==0?u.addClass("e-allyear-first e-current-allyear "):f==11?u.addClass("e-allyear-last e-current-allyear "):u.addClass("e-current-allyear e-state-default"),(parseInt(s[f].split("-\n")[1])<this.model.minDate.getFullYear()||parseInt(s[f].split("-\n")[0])>this.model.maxDate.getFullYear())&&(u.addClass("e-hidedate"),u.removeClass("e-current-allyear")),u.html(s[f++]),c.append(u);t.append(c)}i.append(t)},_renderHeader:function(i){var a=n(document.createElement("thead")),h=t.preferredCulture(this.model.locale).calendars.standard.days,f,e,c,s,u,r,o,l;if(i.model.dayHeaderFormat!="none")for(f=t.buildTag("tr.e-week-header").attr({role:"row"}).attr(this._isIE8?{unselectable:"on"}:{}),this.model.weekNumber==!0&&(e=t.preferredCulture(this.model.locale).calendars.standard.week,r=e.name,o=i.model.dayHeaderFormat=="short"?e.nameAbbr:i.model.dayHeaderFormat=="long"?week:e.nameShort,c=t.buildTag("th","",{},{scope:"col",abbr:r,"data-date":r,title:this._formatter(r,"dddd")}).attr(this._isIE8?{unselectable:"on"}:{}).html(o),f.append(c)),s=this.Date.firstDayOfWeek;s<this.Date.firstDayOfWeek+7;s++)u=s%7,r=h.names[u],o=i.model.dayHeaderFormat=="short"?h.namesAbbr[u]:i.model.dayHeaderFormat=="long"?r:h.namesShort[u],l=t.buildTag("th","",{},{scope:"col",abbr:r,"data-date":r,title:this._formatter(r,"dddd"),"class":u==0||u==6?"e-week-end":"e-week-day"}).attr(this._isIE8?{unselectable:"on"}:{}).html(o),f.append(l);return a.append(f)},_renderCalendar:function(r,u){var d=this,h,s,e,nt,tt,it,c,v,b,k;r=n.extend({},t.DatePicker.prototype.defaults,r);this.Date.firstDayOfWeek=this.model.startDay;h=u?u:this._calendarDate?this._calendarDate:d._zeroTime(new Date);s=n("table",this.sfCalendar);s.empty();s.append(this._renderHeader(r));e=t.buildTag("tbody.e-datepicker-allyears","",{display:"none"}).attr(this._isIE8?{unselectable:"on"}:{});this._datepickerAllYears(e,s,h.getFullYear());e=t.buildTag("tbody.e-datepicker-years","",{display:"none"}).attr(this._isIE8?{unselectable:"on"}:{});this._datepickerYears(e,s,h.getFullYear());var g=r.model.month==i?h.getMonth():r.model.month,ut=r.model.year||h.getFullYear(),f=new Date(ut,g,1,0,0,0),a=this.Date.firstDayOfWeek-f.getDay()+1;a>1&&(a-=7);nt=Math.ceil((-1*a+1+this._getDaysInMonth(f))/7);this._addDays(f,a-1);tt=d._zeroTime(new Date);it=this._calendarDate;e=t.buildTag("tbody.e-datepicker-months","",{display:"none"}).attr(this._isIE8?{unselectable:"on"}:{});this._datepickerMonths(e,s,h);e=t.buildTag("tbody.e-datepicker-days","",{display:"none"}).attr(this._isIE8?{unselectable:"on"}:{});for(var ft=0,rt=!0,w=!0;ft++<nt;){for(c=jQuery(document.createElement("tr")).attr({role:"row"}),this.model.weekNumber==!0&&(v=this._weekDate(f),v=n(document.createElement("td")).attr({}).addClass("e-weeknumber").html(v),c.append(v)),b=0;b<7;b++){var y=f.getMonth()==g,p=this._isSpecialDates(f),et=this._checkDisableRange(f),l=this._getIndex,o=n(document.createElement("td")).html(p?"<span><\/span>"+f.getDate():f.getDate()+"").attr({"data-date":f.toDateString(),title:this.model.showTooltip?p&&this.model.specialDates[l][this._mapField._tooltip]?this.model.specialDates[l][this._mapField._tooltip]:this._formatter(f,this.model.tooltipFormat):"","aria-selected":!1,role:"gridcell",id:this._formatter(f,"yyyyddMM")}).attr(this._isIE8?{unselectable:"on"}:{}).addClass((y?"current-month e-state-default ":"other-month e-state-default ")+(this._isWeekend(f)?this._ejHLWeekEnd?"e-dp-weekend e-week-end ":this.model.highlightWeekend?"e-week-end ":"":"e-week-day ")+(y&&f.getTime()==tt.getTime()?"today ":""));o.find("span:first-of-type").addClass(p?this.model.specialDates[l][this._mapField._icon]?"e-special-date-icon "+this.model.specialDates[l][this._mapField._icon]+" ":"e-special-day":"");o.addClass(p?this.model.specialDates[l][this._mapField._custom]?this.model.specialDates[l][this._mapField._custom]:"":"");et&&this._disableDates({date:f,element:o});it.getTime()==f.getTime()&&y&&(o.hasClass("e-hidedate")||(this.model.value?(o.addClass("e-active").attr({"aria-selected":!0}),this.model.highlightSection=="week"&&c.addClass("e-selected-week"),this.model.highlightSection=="month"&&e.addClass("e-selected-month"),this.model.highlightSection=="workdays"&&c.addClass("e-work-week")):this.model.value!=null&&o.addClass("e-state-hover").attr({"aria-selected":!1})),this._hoverDate||(o.hasClass("e-hidedate")||o.addClass("e-state-hover"),this._hoverDate=f.getDate()-1));k=!0;(f<this.model.minDate||f>this.model.maxDate)&&(o.addClass("e-hidedate"),o.removeClass("current-month"),this.model.showOtherMonths&&o.removeClass("other-month"),k=w=!1);y&&(k&&rt&&(this._tempMinDate=f,rt=!1,w=!0),w&&(this._tempMaxDate=f));this._trigger("beforeDateCreate",{date:f,value:this._formatter(f,this.model.dateFormat),element:o});c.append(o);f=new Date(f.getFullYear(),f.getMonth(),f.getDate()+1,0,0,0)}e.append(c)}s.append(e);this._DRPdisableFade?(n(e).css("display","block"),n(e).css({display:"table-row-group","vertical-align":"middle","border-color":"inherit"})):this._isIE8||this._isIE7?n(e).css("display","table-row-group"):n(e).fadeIn("fast");this.model.startLevel===this.model.depthLevel?this._depthLevel(this.model.depthLevel):this.model.depthLevel!="month"&&this.model.depthLevel!=""?this.model.startLevel=="century"?this._depthLevel(this.model.depthLevel):this.model.startLevel=="decade"&&this.model.depthLevel!="century"?this._depthLevel(this.model.depthLevel):this.model.startLevel=="year"&&this.model.depthLevel!="decade"&&this.model.depthLevel!="century"?this._depthLevel(this.model.depthLevel):(this._on(s.find(".current-month,.other-month,.e-current-month,.e-current-year,.e-current-allyear"),"click",n.proxy(this._backwardNavHandler,this)),this._on(s.find(".current-month , .other-month"),"click",n.proxy(this._onSetCancelDateHandler,this))):(this._on(s.find(".current-month,.other-month,.e-current-month,.e-current-year,.e-current-allyear"),"click",n.proxy(this._backwardNavHandler,this)),this._on(s.find(".current-month , .other-month"),"click",n.proxy(this._onSetCancelDateHandler,this)));this._otherMonthsVisibility();this._checkDateArrows()},_checkDisableRange:function(n){return!t.isNullOrUndefined(this._disableCollection[n.getFullYear()])&&jQuery.inArray(n.getMonth(),this._disableCollection[n.getFullYear()])!==-1?!0:!1},_initDisableObj:function(){var i,r,n,u;for(this._disableCollection={},i=0;i<this.model.blackoutDates.length;i++)r=this._checkInstanceType(this.model.blackoutDates[i]),r&&(n=r.getFullYear(),u=r.getMonth(),t.isNullOrUndefined(this._disableCollection[n])&&(this._disableCollection[n]=[]),jQuery.inArray(u,this._disableCollection[n])==-1&&this._disableCollection[n].push(u))},_disableDates:function(n){for(var i,t=0;t<this.model.blackoutDates.length;t++)i=this._checkInstanceType(this.model.blackoutDates[t]),i&&+n.date==+i&&n.element.addClass("e-hidedate")},_keyboardNavigation:function(n){var t;if(this._keyboardInteraction=!0,this._animating)return!1;if(this._isOpen&&(n.keyCode==37||n.keyCode==38||n.keyCode==39||n.keyCode==40||n.keyCode==13||n.keyCode==36||n.keyCode==35)){if(n.preventDefault&&n.preventDefault(),n.altKey)return n.keyCode==13?(this._setCurrDate(n),!1):void 0;t={row:null,col:null};t.col=this.sfCalendar.find("tbody tr td.e-state-hover").index();t.row=this.sfCalendar.find("tbody tr td.e-state-hover").parent().index();t.col=t.col!=-1?t.col+1:this.sfCalendar.find("tbody tr td.e-active").index()+1;t.row=t.row!=-1?t.row+1:this.sfCalendar.find("tbody tr td.e-active").parent().index()+1;var f=this.sfCalendar.find("table")[0].className,i,r=3,u=4;switch(f){case"e-dp-viewallyears":i=this._changeRowCol(t,n.keyCode,r,u,"yearall",n.ctrlKey);n.ctrlKey||(this._hoverAllYear=this.sfCalendar.find("tbody.e-datepicker-allyears tr td").index(i));break;case"e-dp-viewyears":i=this._changeRowCol(t,n.keyCode,r,u,"year",n.ctrlKey);n.ctrlKey||(this._hoverYear=this.sfCalendar.find("tbody.e-datepicker-years tr td").index(i));break;case"e-dp-viewmonths":i=this._changeRowCol(t,n.keyCode,r,u,"month",n.ctrlKey);n.ctrlKey||(this._hoverMonth=this.sfCalendar.find("tbody.e-datepicker-months tr td").index(i));break;case"e-dp-viewdays":r=this.sfCalendar.find("tbody.e-datepicker-days tr").length;u=7;i=this._changeRowCol(t,n.keyCode,r,u,"day",n.ctrlKey);n.ctrlKey||(this._hoverDate=this._getDateObj(i).getDate()-1)}n.ctrlKey||(this.sfCalendar.find("table td").removeClass("e-state-hover"),i.addClass("e-state-hover"),this._setAriaAttributes(i))}else if(this.model.displayInline||n.keyCode!=27&&n.keyCode!=9){if(n.altKey&&n.keyCode==40)return this.show(),!1}else this.hide()},_setAriaAttributes:function(t){this._popupOpen&&(this.sfCalendar.find("[aria-selected=true]").attr("aria-selected",!1),this.sfCalendar.find("[aria-label]").removeAttr("aria-label"),n(this.element).attr("aria-activedescendant",t.attr("id")),n(t).attr("aria-selected",!0),n(t).attr("aria-label","The current focused date is "+this._formatter(this._getDateObj(t),"dddd, dd MMMM, yyyy")))},_changeRowCol:function(t,i,r,u,f,e){var h,s={parent:null,child:null},o,v,l,c,a;switch(f){case"day":h="tbody.e-datepicker-days tr td.current-month";s.parent=".e-datepicker-days";s.child=".current-month";break;case"month":h="tbody.e-datepicker-months tr td.e-current-month";s.parent=".e-datepicker-months";s.child=".e-current-month";break;case"year":h="tbody.e-datepicker-years tr td.e-current-year";s.parent=".e-datepicker-years";s.child=".e-current-year";break;case"yearall":h="tbody.e-datepicker-allyears tr td.e-current-allyear";s.parent=".e-datepicker-allyears";s.child=".e-current-allyear"}if(t.row<=0&&t.col<=0)return this._removeCurrentMonthFromHideDate(),this.sfCalendar.find(h+":first");v=this;switch(i){case 36:return this.sfCalendar.find(h+":first");case 35:return this.sfCalendar.find(h+":last");case 38:if(e&&this.model.allowDrillDown)this._forwardNavHandler();else if(t.row>1)t.row-=1;else return this._processNextPrevDate(!0),this.sfCalendar.find(h+":nth-child("+t.col+"):last");if(o=this._getCell(t,s),o.length<=1){if(o=this._findVisible(t,s,"up"),o!==null)return o;this._processNextPrevDate(!0);o=this.sfCalendar.find(h+":nth-child("+t.col+"):last")}return o;case 37:if(e)return this._processNextPrevDate(!0),this.sfCalendar.find("tbody tr td.e-state-hover");if(t.col>1)t.col-=1;else if(t.row>1)t={row:t.row-1,col:u};else return this._processNextPrevDate(!0),this.sfCalendar.find(h+":last");if(o=this._getCell(t,s),o.length<=1){if(o=this._findVisible(t,s,"left"),o!==null)return o;this._processNextPrevDate(!0);o=this.sfCalendar.find(h+":last")}return o;case 39:if(e)return this._processNextPrevDate(!1),this.sfCalendar.find("tbody tr td.e-state-hover");if(t.col<u)t.col+=1;else if(t.row<r)t={row:t.row+1,col:1};else return this._processNextPrevDate(!1),this.sfCalendar.find(h+":first");if(o=this._getCell(t,s),o.length<=1){if(o=this._findVisible(t,s,"right"),o!==null)return o;this._processNextPrevDate(!1);o=this.sfCalendar.find(h+":first")}return o;case 40:if(!e){if(t.row<r)t.row+=1;else return this._processNextPrevDate(!1),this.sfCalendar.find(h+":nth-child("+t.col+"):first");if(o=this._getCell(t,s),o.length<=1){if(o=this._findVisible(t,s,"down"),o!==null)return o;this._processNextPrevDate(!1);o=this.sfCalendar.find(h+":nth-child("+t.col+"):first")}return o}case 13:l=n("table",this.sfCalendar).get(0).className;c=this._getCell(t,s);a=n(c)[0];l=="e-dp-viewmonths"&&this.model.startLevel=="year"&&this.model.depthLevel=="year"?(this._dateValue=new Date(this._dateValue.setMonth(parseInt(a.attributes["data-index"].value))),this._onSetCancelDateHandler({type:null,target:c})):l=="e-dp-viewyears"&&this.model.startLevel=="decade"&&this.model.depthLevel=="decade"||l=="e-dp-viewallyears"&&this.model.startLevel=="century"&&this.model.depthLevel=="century"?(this._dateValue=new Date(this._dateValue.setFullYear(parseInt(a.innerHTML))),this._onSetCancelDateHandler({type:null,target:c})):l=="e-dp-viewdays"?(this._backwardNavHandler(c),this._onSetCancelDateHandler({type:null,target:c})):this._backwardNavHandler(c)}return this._getCell(t,s)},_findVisible:function(n,t,i){for(var f,u=n.col,r=n.row,o=t.child.slice(1,t.child.length),e=0;e>=0;e++){if(f=this.sfCalendar.find("tbody"+t.parent+" tr:nth-child("+r+") td:nth-child("+u+")"),f.length<=0)return null;if(f.hasClass("e-hidedate")||!f.is(":visible")){if((i=="right"||i=="left"?i=="right"?u++:u--:i=="down"?r++:r--,r<=0||r>this.sfCalendar.find("tbody"+t.parent+" tr").length)||(u>this.sfCalendar.find("tbody"+t.parent+" tr:nth-child("+r+") td").length&&(r++,u=1),u<=0&&(r--,u=this.sfCalendar.find("tbody"+t.parent+" tr:nth-child("+r+") td").length),r<=0||r>this.sfCalendar.find("tbody"+t.parent+" tr").length))return null}else{if(f.hasClass("other-month"))return null;if(f.hasClass(o))return n.col=u,n.row=r,f}}},_getCell:function(n,t){return this.sfCalendar.find("tbody"+t.parent+" tr:nth-child("+n.row+") td"+t.child+":nth-child("+n.col+")")},_getDateObj:function(n){return new Date(n.attr("data-date"))},_touchCalendar:function(n){var t=this.sfCalendar.find("table")[0].className;switch(n.type){case"pinchin":t!="e-dp-viewdays"&&this._keyboardNavigation({keyCode:13});break;case"pinchout":t!="e-dp-viewallyears"&&this.model.allowDrillDown&&this._forwardNavHandler();break;case"swipeleft":this._processNextPrevDate(!1);break;case"swiperight":this._processNextPrevDate(!0)}},show:function(i){var r,u;if(t.isNullOrUndefined(this.sfCalendar)&&this._renderPopup(),this._isOpen)return!1;if(r=this,this._popupOpen=!0,n(this.element).attr("aria-expanded",!0),u=this._preValue!=null?new Date(this._preValue.toString()):this._preValue,this.model.enabled){if(this.model.displayInline||this._setDatePickerPosition(),this._trigger("beforeOpen",{element:this.sfCalendar,events:i}))return!1;this.sfCalendar.attr({"aria-hidden":"false"});r._isOpen=!0;this.sfCalendar.slideDown(this.model.enableAnimation?this.animation.open.duration:0,function(){if(r.model&&!r.model.displayInline)n(document).on("mousedown",n.proxy(r._onDocumentClick,r))});this._isIE8?this.element.val()&&this._compareDate(new Date(this.element.val()),u)&&this._updateInputVal():this._updateInputVal();this._refreshLevel(u);this._trigger("open",{prevDate:u,date:this.model.value,value:this._formatter(this.model.value,this.model.dateFormat)});n(window).on("resize",n.proxy(this._OnWindowResize,this));this.model.displayInline||(this._on(t.getScrollableParents(this.wrapper),"scroll",this.hide),this._on(t.getScrollableParents(this.wrapper),"touchmove",this.hide));this._isInputBox&&this.wrapper.addClass("e-active");this.model.value!=null?n(this.element).attr("aria-activedescendant",n(this.sfCalendar.find(".e-active")).attr("id")):n(this.element).attr("aria-activedescendant",n(this.sfCalendar.find(".today")).attr("id"))}},hide:function(r){if(!this._isOpen||this._getInternalEvents||this._trigger("beforeClose",{element:this.sfCalendar,events:r}))return!1;var u=this;(this._popupOpen=!1,n(this.element).attr("aria-expanded",!1),this.sfCalendar.attr({"aria-hidden":"true"}),this._popClose&&r!=i&&r.type!="click")||(this.sfCalendar.slideUp(this.model.enableAnimation?this.animation.close.duration:0,function(){u._isOpen=!1;n(document).off("mousedown",n.proxy(u._onDocumentClick,u));u._setWaterMark()}),this.element.val()!=""&&this._validateInputVal(),this._trigger("close",{prevDate:this._prevDate,date:this.model.value,value:this._formatter(this.model.value,this.model.dateFormat)}),n(window).off("resize",n.proxy(this._OnWindowResize,this)),this._off(t.getScrollableParents(this.wrapper),"scroll",this.hide),this._off(t.getScrollableParents(this.wrapper),"touchmove",this.hide),this._isInputBox&&this.wrapper.removeClass("e-active"),this.model.value?n(this.element).attr("aria-activedescendant",n(this.sfCalendar.find(".e-active")).attr("id")):n(this.element).removeAttr("aria-activedescendant"))},enable:function(){this.model.enabled=!0;this.wrapper&&this.wrapper.removeClass("e-disable");this.element.removeClass("e-disable").attr({"aria-disabled":!1});this.element.prop("disabled",!1);this.dateIcon&&this.dateIcon.removeClass("e-disable").attr({"aria-disabled":!1});this._isIE8&&this.dateIcon&&this.dateIcon.children().removeClass("e-disable");this.element.prop("disabled",!1);this._isSupport||this._hiddenInput.prop("disabled",!1);this.sfCalendar&&this.sfCalendar.removeClass("e-disable").attr({"aria-disabled":!1})},disable:function(){this.model.enabled=!1;this.wrapper&&this.wrapper.addClass("e-disable");this.element.addClass("e-disable").attr({"aria-disabled":!0});this.element.attr("disabled","disabled");this.dateIcon&&this.dateIcon.addClass("e-disable").attr({"aria-disabled":!0});this._isIE8&&this.dateIcon&&this.dateIcon.children().addClass("e-disable");this.element.attr("disabled","disabled");this._isSupport||this._hiddenInput.attr("disabled","disabled");this.sfCalendar&&this.sfCalendar.addClass("e-disable").attr({"aria-disabled":!0});this._isOpen&&(this.element.is(":input")&&this.element.blur(),this.model.displayInline||this.hide())},getValue:function(){return this._formatter(this.model.value,this.model.dateFormat)},_wireCalendarEvents:function(){if(this._allowQuickPick(this.model.allowDrillDown),this._on(n(".e-next",this.sfCalendar),"click",n.proxy(this._previousNextHandler,this)),this._on(n(".e-prev",this.sfCalendar),"click",n.proxy(this._previousNextHandler,this)),!this.model.displayInline){this.sfCalendar.on("mouseenter touchstart",n.proxy(function(){this._popClose=!0},this));this.sfCalendar.on("mouseleave touchend",n.proxy(function(){this._popClose=!1},this))}this.model.showFooter&&this._on(n(".e-footer",this.sfCalendar),"click",this._setCurrDate);this.sfCalendar&&this._on(this.sfCalendar,"pinchin pinchout swipeleft swiperight",n.proxy(this._touchCalendar,this))},_wireEvents:function(){if(this.element.is(":input")&&this.model.allowEdit&&(this._on(this.element,"blur",this._onFocusOut),this._on(this.element,"focus",this._onFocusIn),this._on(this.element,"keydown",this._onKeyDown)),!this.model.allowEdit){this.element.attr("readonly","readonly");this.element.on("mousedown",n.proxy(this._showDatePopUp,this))}},_bindDateButton:function(){this._on(this.dateIcon,"mousedown",this._showDatePopUp);this.model.allowEdit&&this.element.off("mousedown",n.proxy(this._showDatePopUp,this))},_bindInputEvent:function(){this._off(this.dateIcon,"mousedown",this._showDatePopUp)},_specificFormat:function(){var i=t.globalize._getDateParseRegExp(t.globalize.findCulture(this.model.locale).calendar,this.model.dateFormat);return n.inArray("dddd",i.groups)>-1||n.inArray("ddd",i.groups)>-1},_onFocusOut:function(i){var f,r,u,e;if(this._isFocused=!1,f=this._preValue!=null?new Date(this._preValue.toString()):this._preValue,this.model.enableStrictMode&&this.element.val()&&!isNaN(+new Date(this.element.val())))for(this._formatArray=this.model.dateFormat.split(this._getSeparator()),this._valArray=this.element.val().split(this._getSeparator()),r=0;r<this._formatArray.length;r++)this._formatArray[r].startsWith("y")&&this._valArray.length>1&&(this._formatArray[r].length==4&&this._valArray[r].length==2||this._formatArray[r].length==2&&this._valArray[r].length==2)&&(this._valArray[r]=(parseInt(this._valArray[r])+2e3).toString(),this.element.val(this._valArray.join(this._getSeparator())));this._validateOnFocusOut(this._validateValue(),i);this.wrapper.removeClass("e-focus");t.isNullOrUndefined(this.model.value)?this.wrapper.removeClass("e-valid"):this.wrapper.addClass("e-valid");this._isOpen&&!this.model.displayInline||this._setWaterMark()||this._compareDate(this._preValue,this._parseDate(this.element.val(),this.model.dateFormat))||this._updateInputVal();(!this._isOpen||this.model.displayInline)&&this._refreshLevel(f);this.element.val()!=""&&(!this._isOpen||this.model.displayInline)&&this._validateInputVal();this.element.off("keydown",n.proxy(this._keyboardNavigation,this));this.model.showPopupButton||this._off(this.element,"click",this._elementClick);u=this.element.val();e={prevDate:this._prevDate,value:u};this._specificFormat()?this._prevDate!=u&&this._setDateValue(u,!0):this._setDateValue(u);this.model.value||this._clearSelected();this._trigger("focusOut",e);this._checkErrorClass()},_onFocusIn:function(t){if(this._isSupport&&(t.preventDefault(),this._isFocused=!0),this.wrapper.removeClass("e-error"),this.isValidState=!0,this.wrapper.addClass("e-focus"),this.wrapper.addClass("e-valid"),!this.model.readOnly){this._isSupport||this._hiddenInput.css("display","none");this.element.on("keydown",n.proxy(this._keyboardNavigation,this));this.model.showPopupButton||this.model.readOnly||this.show(t);this.model.showPopupButton||this._on(this.element,"click",this._elementClick);this._trigger("focusIn",{date:this.model.value,value:this._formatter(this.model.value,this.model.dateFormat)})}},_elementClick:function(n){this._popupOpen||this.show(n)},_removeWatermark:function(){this.element.val()==""||this._isSupport||this._hiddenInput.css("display","none")},_refreshPopup:function(){this._refreshDatepicker();this._startLevel(this.model.startLevel)},_weekDate:function(n){var i,t=new Date(n.getTime());return t.setDate(t.getDate()+4-(t.getDay()||7)),i=t.getTime(),t.setMonth(0),t.setDate(1),Math.floor(Math.round((i-t)/864e5)/7)+1},_refreshLevel:function(n){if(this.model.startLevel==this.model.depthLevel&&this.model.startLevel!="month"){var t=this._stringToObject(this.element.val());t=this._validateYearValue(t);t&&(this._compareDate(n,t)||this._refreshPopup())}},_validateOnFocusOut:function(n,i){var f=this._preValue!=null?this._calendarDate:this._preValue,e=this._formatter(f,this.model.dateFormat),o,s,h,r,u;this._prevDate=this._formatter(this._preValue,this.model.dateFormat);o=e;s={prevDate:this._prevDate,value:o,isInteraction:!!i};this._specificFormat()&&n>this.model.minDate&&n<this.model.maxDate?n==null?this.model.value=f:(this.model.value=n,h=this._formatter(n,this.model.dateFormat,this.model.locale)):h=this._formatter(this._parseDate(this._formatter(new Date,"MM/dd/yyyy")),this.model.dateFormat);r=!1;u=!1;n==null||this.model.enableStrictMode?n!=null||this.model.enableStrictMode?n?(n<this.model.minDate||n>this.model.maxDate?(this.isValidState=!1,u=!0,this._calendarDate=n<this.model.minDate?this.model.minDate:this.model.maxDate):this.isValidState=!0,this._triggerChangeEvent(i),u&&this._getInternalEvents&&this._trigger("outOfRange")):(this.isValidState=!1,this._calendarDate<this.model.minDate?this._calendarDate=this.model.minDate:this._calendarDate>this.model.maxDate&&(this._calendarDate=this.model.maxDate)):(this._preTxtValue==null||this.element.val()==""?(this.element.val(""),this._isSupport||this._hiddenInput.css("display","block")):this.element.val(e),this._triggerChangeEvent(i),this.model.value!=null&&this._trigger("change",s)):(t.isNullOrUndefined(this.model.value)&&(this.model.value=this._parseDate(this.element.val())),this.model.maxDate<this.model.minDate&&(this.model.minDate=this.model.maxDate),this.model.enableStrictMode||(n?(n<this.model.minDate||n>this.model.maxDate)&&(r=!0,this._calendarDate=n=n<this.model.minDate?this.model.minDate:this.model.maxDate):(this.element.val(""),this._calendarDate<this.model.minDate?this._calendarDate=this.model.minDate:this._calendarDate>this.model.maxDate&&(this._calendarDate=this.model.maxDate)),this.isValidState=!0),r&&this.element.val(this._formatter(n,this.model.dateFormat)),this._compareDate(this._preValue,this._parseDate(this.element.val(),!0))||this._triggerChangeEvent(i))},_onKeyDown:function(n){if(n.keyCode===13){var t=this._preValue!=null?new Date(this._preValue.toString()):this._preValue;this._validateOnFocusOut(this._validateValue(),n);this._isOpen&&!this.model.displayInline||this._setWaterMark()||this._compareDate(this._preValue,this._parseDate(this.element.val(),this.model.dateFormat))||this._updateInputVal();(!this._isOpen||this.model.displayInline)&&this._refreshLevel(t);this.element.val()!=""&&(!this._isOpen||this.model.displayInline)&&this._validateInputVal();this._checkErrorClass()}},_showhidePopup:function(n){if(!this.model.enabled)return!1;this._isOpen?(this._isFocused||!this.element.is(":input")||t.isTouchDevice()||this.element.focus(),this._cancelValue||this.hide(n)):(this._isFocused||!this.element.is(":input")||t.isTouchDevice()||this.element.focus(),this.show(n))},_compareDate:function(n,t){return+n==+t?!0:!1},_validateDate:function(n){var i=!0,t,r;if(n!=null){for(t=0;t<this.model.blackoutDates.length;t++)r=this._checkInstanceType(this.model.blackoutDates[t]),r&&+n==+r&&(i=!1);(n<this.model.minDate||n>this.model.maxDate)&&this.model.enableStrictMode&&(i=!1,this.isValidState=!1)}return i},_triggerChangeEvent:function(n){var r,u=this.element.val()==""?null:this.element.val(),t;this._prevDate=this._formatter(this._preValue,this.model.dateFormat);t={prevDate:this._prevDate,value:u,isInteraction:!!n};r=this._specificFormat()&&n!=i&&n.type=="keydown"&&this._formatter(this._preValue,this.model.dateFormat,this.model.locale)!=this.element.val()?this._parseDate(this.element.val(),!0):this._specificFormat()&&n!=i&&n.type=="blur"?this.model.value:this._parseDate(u);r=this._validateYearValue(r);this._validateDate(r)||(r=null);this._compareDate(this._preValue,r)?this.element.val()==""&&this._prevDate==null||this.element.val()==this._prevDate||(t.value=this.element.val(),this._trigger("_change",t)):(this._preValue=this.model.value=r,t.value=this._formatter(this.model.value,this.model.dateFormat),this.model.value&&(this._clickedDate=this._calendarDate=this.model.value),this.model.displayInline&&!this._isInputBox&&this._hiddenInput.attr("value",u),this.model.value||this.model.enableStrictMode||this._setDateValue(this.model.value),t.value=u,this._trigger("_change",t),t.value=this._formatter(this.model.value,this.model.dateFormat),this._trigger("change",t),this._checkErrorClass())},_triggerSelectEvent:function(){var i=this.element.val(),t;this._parseDate(i)&&(t={prevDate:this._prevDate,date:this.model.value,value:i,isSpecialDay:this._isSpecialDates(this.model.value)},this._prevDate!=i&&this._parseDate(t.value)&&this.model.value>=this.model.minDate&&this.model.value<=this.model.maxDate&&(this._cancelValue=this._trigger("select",t)),this._dt_drilldown&&this._trigger("dt_drilldown",t));this.model.value&&n(this.element).attr("aria-activedescendant",n(this.sfCalendar.find(".e-active")).attr("id"))},_onDocumentClick:function(t){this.model&&(n(t.target).is(this.popup)||n(t.target).parents(".e-popup").is(this.popup)||n(t.target).is(this.wrapper)||n(t.target).parents(".e-datewidget").is(this.wrapper)?(n(t.target).is(this.popup)||n(t.target).parents(".e-popup").is(this.popup))&&t.preventDefault():this.hide(t))},_OnWindowResize:function(){this.sfCalendar&&this._setDatePickerPosition()},_showDatePopUp:function(n){var t=!1;if((n.button?t=n.button==2:n.which&&(t=n.which==3),!t)&&(this._isSupport||this.model.showPopupButton||(n.preventDefault(),this._onFocusIn()),!this.model.readOnly)){if(n.preventDefault(),!this.model.enabled&&this.model.displayInline)return!1;this._showhidePopup(n)}},_layoutChanged:function(){this._getInternalEvents&&this._trigger("layoutChange")},_setCurrDate:function(n){if(this.model.readOnly||!this.model.enabled)return!1;n&&n.preventDefault();var t=this;this._prevDate=this._formatter(this.model.value,this.model.dateFormat);this._dateValue=this._zeroTime(new Date);this.model.value=this._calendarDate=new Date(this._dateValue.toString());this._setDateValue(this.model.value);this._triggerSelectEvent(n);this._triggerChangeEvent(n);this._refreshDatepicker();this._changeDayClass();this._startLevel(this.model.startLevel);this._onSetCancelDateHandler(n);this._layoutChanged()},_changeDayClass:function(){var n=this.popup.children("table")[0].className;n!="e-dp-viewdays"&&this.popup.children("table").removeClass(n).addClass("e-dp-viewdays")},_onSetCancelDateHandler:function(t){if(this.model.readOnly||!this.model.enabled||t&&(n(t.target).hasClass("e-disable")||n(t.target).hasClass("e-hidedate")))return!1;t&&t.type&&t.preventDefault();this._specificFormat()?this._prevDate=this.element.val():this.model.value=this._parseDate(this.element.val());this._prevDate=this._formatter(this.model.value,this.model.dateFormat);this._setDateValue(this._dateValue);this._triggerSelectEvent(t);this._triggerChangeEvent(t);this._dateValue=this.model.value==null?null:new Date(this.model.value.toString());this.element.is(":input")&&!this.model.displayInline&&this._showhidePopup(t);t&&n(t.currentTarget).hasClass("other-month")&&this._refreshDatepicker();this._cellSelection()},_closeCalendar:function(n){n&&n!=this.element||this.sfCalendar.empty().remove()},_checkErrorClass:function(){this.wrapper&&(this.isValidState?this.wrapper.removeClass("e-error"):this.wrapper.addClass("e-error"))},_getLocalizedLabels:function(){return t.getLocalizedConstants(this.sfType,this.model.locale)}});t.DatePicker.Locale=t.DatePicker.Locale||{};t.DatePicker.Locale["default"]=t.DatePicker.Locale["en-US"]={watermarkText:"Select date",buttonText:"Today"};t.DatePicker.Header={None:"none",Short:"short",Min:"min",Long:"long"};t.DatePicker.HighlightSection={Month:"month",Week:"week",WorkDays:"workdays",None:"none"};t.DatePicker.Level={Month:"month",Year:"year",Decade:"decade",Century:"century"}}(jQuery,Syncfusion),function(n,t,i){t.widget("ejTimePicker","ej.TimePicker",{element:null,model:null,validTags:["input"],_addToPersist:["value"],_rootCSS:"e-timepicker",_setFirst:!1,type:"editor",angular:{require:["?ngModel","^?form","^?ngModelOptions"],requireFormatters:!0},_requiresID:!0,defaults:{cssClass:"",timeFormat:"",value:null,enableAnimation:!0,locale:"en-US",htmlAttributes:{},readOnly:!1,showPopupButton:!0,enableStrictMode:!1,interval:30,hourInterval:1,minutesInterval:1,secondsInterval:1,height:"",width:"",minTime:"12:00 AM",maxTime:"11:59 PM",showRoundedCorner:!1,enableRTL:!1,popupHeight:"191px",popupWidth:"auto",enabled:!0,enablePersistence:!1,disableTimeRanges:null,validationRules:null,validationMessages:null,focusIn:null,focusOut:null,beforeChange:null,change:null,select:null,create:null,destroy:null,beforeOpen:null,beforeClose:null,open:null,close:null,watermarkText:"select a time"},dataTypes:{timeFormat:"string",minTime:"string",maxTime:"string",readOnly:"boolean",interval:"number",showPopupButton:"boolean",locale:"string",hourInterval:"number",minutesInterval:"number",secondsInterval:"number",enabled:"boolean",enablePersistence:"boolean",enableAnimation:"boolean",enableStrictMode:"boolean",disableTimeRanges:"data",htmlAttributes:"data",validationRules:"data",validationMessages:"data",watermarkText:"string"},observables:["value"],enable:function(){this.model.enabled||(this.element[0].disabled=!1,this.element.prop("disabled",!1),this.model.enabled=!0,this.wrapper.removeClass("e-disable"),this.element.removeClass("e-disable").attr("aria-disabled",!1),this.model.showPopupButton&&(this.timeIcon.removeClass("e-disable").attr("aria-disabled",!1),this.popupList&&this.popupList.removeClass("e-disable").attr("aria-disabled",!1)),this._isIE8&&this.timeIcon.children().removeClass("e-disable"))},disable:function(){this.model.enabled&&(this.element[0].disabled=!0,this.model.enabled=!1,this.element.attr("disabled","disabled"),this.wrapper.addClass("e-disable"),this.element.addClass("e-disable").attr("aria-disabled",!0),this.model.showPopupButton&&(this.timeIcon.addClass("e-disable").attr("aria-disabled",!0),this.popupList&&this.popupList.addClass("e-disable").attr("aria-disabled",!0)),this._isIE8&&this.timeIcon.children().addClass("e-disable"),this._hideResult())},getValue:function(){return this.element.val()},setCurrentTime:function(){this.model.readOnly||this._setMask()},setValue:function(n){var i=this.model.value,r;this.model.value=t.format(this._createObject(n,!0),this.model.timeFormat,this.model.locale);this._ensureValue();this._enableMask();this.model.enableStrictMode&&!this._isValid(n,!0)&&(r=this._isValid(this.model.value)?this._localizeTime(this.model.value):this.model.value,this.element.val(r));i!=this.model.value&&this._raiseChangeEvent(i,!0);this._checkErrorClass()},show:function(){this.showDropdown||this._getInternalEvents||this._showResult()},hide:function(){this.showDropdown&&this._hideResult()},_ISORegex:function(){this._tokens=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;this._extISORegex=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/;this._basicISORegex=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/;this._numberRegex={2:/\d\d?/,4:/^\d{4}/,z:/Z|[+-]\d\d(?::?\d\d)?/gi,t:/T/,"-":/\-/,":":/:/};this._zeroRegex=/Z|[+-]\d\d(?::?\d\d)?/;this._dates=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]];this._times=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]]},_timeFormat:function(n){var r,i;return n||(n=t.preferredCulture(this.model.locale).calendars.standard.patterns.t),r=this._validateTimeFormat(n),r&&(this.model.timeFormat=r,this.model.minTime=t.format(this._createObject(this._minTimeObj),this.model.timeFormat,this.model.locale),this.model.maxTime=t.format(this._createObject(this._maxTimeObj),this.model.timeFormat,this.model.locale),this.model.value?(this._setModelOption=!0,this.model.value=this._localizeTime(this.model.value),this.element.val(this.model.value)):(this._setModelOption=!1,i=this._localizeTime(this.element.val()),i&&this._checkMinMax(i)&&(this.model.value=i,this.element.val(i)))),r},_getTimeFormat:function(){this._prevTimeFormat&&(this.model.timeFormat=t.preferredCulture(this.model.locale).calendar.patterns.t||"h:mm tt");this.seperator=this._getSeperator()},_changeSkin:function(n){this.wrapper.removeClass(this.model.cssClass).addClass(n);this.popupList&&this.popupList.removeClass(this.model.cssClass).addClass(n)},_localize:function(n){var i=this._createObject(this.model.value,!0);this.model.locale=n;this._getTimeFormat();this.model.minTime=t.format(this._createObject(this._minTimeObj),this.model.timeFormat,this.model.locale);this.model.maxTime=t.format(this._createObject(this._maxTimeObj),this.model.timeFormat,this.model.locale);t.isNullOrUndefined(this._options)||t.isNullOrUndefined(this._options.watermarkText)||(this._localizedLabels.watermarkText=this._options.watermarkText);i?(this.model.value=this._localizeTime(i),this.element.val(this.model.value)):(i=this._localizeTime(this.element.val()),i&&this._checkMinMax(i)&&(this.model.value=i,this.element.val(i)));this._getAmPm()},_setWaterMark:function(){if(this.element!=null&&this.element.hasClass("e-input"))return this._localizedLabels.watermarkText&&this.element.val()==""&&(this.isValidState=!0,this._checkErrorClass()),this._isSupport||this.element.val()!=""?n(this.element).attr("placeholder",this._localizedLabels.watermarkText):this._hiddenInput.css("display","block").val(this._localizedLabels.watermarkText),!0},_localizedLabelToModel:function(){this.model.watermarkText=this._localizedLabels.watermarkText;this.model.buttonText=this._localizedLabels.buttonText},_setLocalize:function(n){var n=t.preferredCulture(n);n&&(this.model.locale=n.name=="en"?"en-US":n.name,t.isNullOrUndefined(this._options)||!t.isNullOrUndefined(this._options.timeFormat)&&this._options.timeFormat||(this.model.timeFormat=t.preferredCulture(this.model.locale).calendars.standard.patterns.t),this._prevTimeFormat=t.isNullOrUndefined(this._options.timeFormat)||this._options.timeFormat==""?!0:!1)},_updateInput:function(){if(!t.isNullOrUndefined(this._options)){var n=this._localizeTime(this._options.value);t.isNullOrUndefined(n)||typeof n=="string"&&this.model.enableStrictMode&&!this.model.value&&(this.element.val(this._options.value),this.isValidState=this.element.val()==""?!0:!1,this._checkErrorClass())}},_createMinMaxObj:function(){this._minTimeObj=this._createObject(this.model.minTime);this._minTimeObj||(this.model.minTime=t.format(this._createObject((new Date).setHours(0,0,0,0)),this.model.timeFormat,this.model.locale));this._maxTimeObj=this._createObject(this.model.maxTime);this._maxTimeObj||(this.model.maxTime=t.format(this._createObject((new Date).setHours(23,59,59,59)),this.model.timeFormat,this.model.locale))},_setMinMax:function(){var n=(new Date).setHours(0,0,0,0),i=(new Date).setHours(23,59,59,59);!t.isNullOrUndefined(this._options)&&t.isNullOrUndefined(this._options.minTime)&&(this.model.minTime=t.format(this._createObject(n),this.model.timeFormat,this.model.locale));!t.isNullOrUndefined(this._options)&&t.isNullOrUndefined(this._options.maxTime)&&(this.model.maxTime=t.format(this._createObject(i),this.model.timeFormat,this.model.locale));this._createMinMaxObj()},_init:function(n){if(this._options=n,this._cloneElement=this.element.clone(),this._ISORegex(),this._isSupport=document.createElement("input").placeholder==i?!1:!0,!this.element.is("input")||this.element.attr("type")&&this.element.attr("type")!="text")return!1;this._initialize();this._render();this._wireEvents();n&&n.value!=i&&n.value!=this.element.val()&&this._trigger("_change",{value:this.element.val()});this._updateInput();this._updateTextbox();this.model.validationRules!=null&&(this._initTimeValidator(),this._setTimeValidation())},_updateTextbox:function(){var t,n;if(this._options.disableTimeRanges){for(t=!0,n=0;n<this._options.disableTimeRanges.length;n++)if((this.model.minTime>=this._options.disableTimeRanges[n].startTime||this.model.minTime<=this._options.disableTimeRanges[n].endTime)&&this._options.disableTimeRanges[n].startTime==this.model.minTime){t=!1;break}(this._options===i||this._options.value===i&&!this.model.value&&t)&&this._setTime(this._localizeTime(this.model.minTime))}else this._options!==i&&(this._options.value!==i||this.model.value)||this._setTime(this._localizeTime(this.model.minTime))},_setMinMaxTime:function(i,r){!t.isNullOrUndefined(r.minTime)&&n.trim(r.minTime)&&this._isValid(r.minTime)&&(this.model.minTime=r.minTime,this._minTimeObj=this._createObject(this.model.minTime),this._validateTimes());!t.isNullOrUndefined(r.maxTime)&&n.trim(r.maxTime)&&this._isValid(r.maxTime)&&(this.model.maxTime=r.maxTime,this._maxTimeObj=this._createObject(this.model.maxTime),this._validateTimes());this._validateMinMax();this._createMinMaxObj();t.isNullOrUndefined(r.minTime)||(r.minTime=this.model.minTime);t.isNullOrUndefined(r.maxTime)||(r.maxTime=this.model.maxTime);this._checkMinMax(this.model.value)||(this.model.enableStrictMode?(this.isValidState=!1,this.model.value=null):(this.model.minTime&&!this._compareTime(this.model.value,this.model.minTime,!0)&&(this.model.value=this.model.minTime),this.model.maxTime&&!this._compareTime(this.model.maxTime,this.model.value,!0)&&(this.model.value=this.model.maxTime)));i!==this.model.value&&this._isValid(this.model.value,!0)&&this.element.val(this.model.value)},_setModel:function(n){var r=!1,o=this.model.value,i,e,u,f,s;for(i in n){i!="height"&&i!="width"&&i!="htmlAttributes"&&i!="watermarkText"&&i!="enabled"&&i!="validationRules"&&i!="validationMessages"&&t.isNullOrUndefined(this.popupList)&&this._renderDropdown();switch(i){case"timeFormat":u=this._createObject(this.model.value);this._preTimeformat=this.model.timeFormat;e=this._timeFormat(n[i]);n[i]=this.model.timeFormat;e&&(this.seperator=this._getSeperator());f=this._createObject(this.model.value);r=+u==+f?!1:!0;break;case"locale":u=this._createObject(this.model.value);this._localize(n[i]);this.model.minTime=t.format(this._createObject(this._minTimeObj),this.model.timeFormat,this.model.locale);this.model.maxTime=t.format(this._createObject(this._maxTimeObj),this.model.timeFormat,this.model.locale);f=this._createObject(this.model.value);r=+u==+f?!1:!0;break;case"interval":this.model.interval=n[i];break;case"cssClass":this._changeSkin(n[i]);break;case"showRoundedCorner":this._setRoundedCorner(n[i]);break;case"enableRTL":this._setRtl(n[i]);break;case"height":this._setHeight(n[i]);break;case"width":this.wrapper.width(n[i]);this._setListWidth();break;case"value":t.isPlainObject(n[i])&&(n[i]=null);this.model.value=t.format(this._createObject(n[i],!0),this.model.timeFormat,this.model.locale);this._ensureValue();this._enableMask();this.model.enableStrictMode&&!this._isValid(n[i],!0)&&(s=this._isValid(n[i])?this._localizeTime(n[i]):n[i],this.element.val(s));n[i]=this.model.value;r=!0;break;case"enableStrictMode":this.model.enableStrictMode=n[i];break;case"validationRules":this.model.validationRules!=null&&(this.element.rules("remove"),this.model.validationMessages=null);this.model.validationRules=n[i];this.model.validationRules!=null&&(this._initTimeValidator(),this._setTimeValidation());break;case"validationMessages":this.model.validationMessages=n[i];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initTimeValidator(),this._setTimeValidation());break;case"popupHeight":this.model.popupHeight=n[i];this._setListHeight();break;case"popupWidth":this.model.popupWidth=n[i];this._setListWidth();break;case"enabled":n[i]?this.enable():this.disable();break;case"htmlAttributes":this._addAttr(n[i]);break;case"disableTimeRanges":this.model.disableTimeRanges=n[i];this._initStartEnd();this.model.value=t.format(this._createObject(this.element.val(),!0),this.model.timeFormat,this.model.locale);this._ensureValue();this._enableMask();this.model.enableStrictMode&&!this._isValid(this.element.val(),!0)&&this.element.val(this.element.val());r=!0;break;case"watermarkText":t.isNullOrUndefined(this._options)&&(this._options={});this._options[i]=this.model.watermarkText=n[i];this._localizedLabels.watermarkText=this.model.watermarkText;this._setWaterMark()}}t.isNullOrUndefined(n.minTime)&&t.isNullOrUndefined(n.maxTime)||(this._setMinMaxTime(o,n),r=!0);t.isNullOrUndefined(n.showPopupButton)?!this.model.showPopupButton||!e&&t.isNullOrUndefined(n.minTime)&&t.isNullOrUndefined(n.maxTime)&&t.isNullOrUndefined(n.locale)&&t.isNullOrUndefined(n.interval)&&t.isNullOrUndefined(n.disableTimeRanges)||this._reRenderDropdown():this._showButton(n[i]);r&&(this._raiseChangeEvent(o,!0),n.value=this.model.value);this._checkErrorClass()},_destroy:function(){this.element.insertAfter(this.wrapper);this.wrapper.remove();this.element.removeClass("e-input").removeAttr("ondragstart draggable aria-atomic aria-live aria-readonly").val(this.element.attr("value"));this._cloneElement.attr("name")||this.element.removeAttr("name");this.popupList&&this.popupList.remove()},_initialize:function(){this.target=this.element[0];this.timeIcon=null;this._disabledItems=[];this.popupList=null;this.focused=!1;this.start=0;this.end=0;this.min=null;this.max=null;this.incomplete=!1;this.downPosition=0;this._setLocalize(this.model.locale);this._setMinMax();this._getAmPm();this.showDropdown=!1;this._activeItem=0;this.isValidState=!0;this._manualFocus=!1;this._isIE7=this._checkIE7();this._initStartEnd();this._localizedLabels=this._getLocalizedLabels();t.isNullOrUndefined(this._options)||t.isNullOrUndefined(this._options.watermarkText)||(this._localizedLabels.watermarkText=this._options.watermarkText);t.isNullOrUndefined(this.model.value)&&this.element[0].value!=""&&(this.model.value=this.element[0].value);this._isIE8=t.browserInfo().name=="msie"&&t.browserInfo().version=="8.0"?!0:!1;this._getInternalEvents=!1;this._dateTimeInternal=!1;this.model.timeFormat?this.seperator=this._getSeperator():this._getTimeFormat()},_render:function(){this._renderWrapper();this._setDimentions();this._renderTimeIcon();this._validateTimes();this._createMinMaxObj();this._addAttr(this.model.htmlAttributes);this._checkProperties();this._enableMask();this._checkErrorClass();this.element.attr({"aria-atomic":"true","aria-live":"assertive","aria-readonly":this.model.readOnly,value:this.model.value});t.isNullOrUndefined(this.model.value)?this.wrapper.addClass("e-valid"):this.wrapper.removeClass("e-valid")},_renderWrapper:function(){if(this.element.addClass("e-input").attr({tabindex:"0",role:"combobox","aria-expanded":"false"}),this.wrapper=t.buildTag("span.e-timewidget e-widget "+this.model.cssClass+"#"+this.target.id+"_timewidget").insertAfter(this.element),this.wrapper.attr("style",this.element.attr("style")),this.element.removeAttr("style"),t.isTouchDevice()||this.wrapper.addClass("e-ntouch"),this.container=t.buildTag("span.e-in-wrap e-box").append(this.element),this.wrapper.append(this.container),!this._isSupport){this._hiddenInput=t.buildTag("input.e-input e-placeholder ","",{},{type:"text"}).insertAfter(this.element);this._hiddenInput.val(this._localizedLabels.watermarkText);this._hiddenInput.css("display","block");var i=this;n(this._hiddenInput).focus(function(){i.element.focus()})}},_addAttr:function(i){var r=this;n.map(i,function(n,i){var u=i.toLowerCase();u=="class"?r.wrapper.addClass(n):u=="disabled"&&n=="disabled"?r.disable():u=="readOnly"&&n=="readOnly"?r.model.readOnly=!0:u=="style"?r.wrapper.attr(i,n):u=="id"?(r.wrapper.attr(i,n+"_wrapper"),r.element.attr(i,n)):t.isValidAttr(r.element[0],i)?r.element.attr(i,n):r.wrapper.attr(i,n)})},_initTimeValidator:function(){this.element.closest("form").data("validator")||this.element.closest("form").validate()},_setTimeValidation:function(){var r,f,i,u,e;this.element.rules("add",this.model.validationRules);r=this.element.closest("form").data("validator");r=r?r:this.element.closest("form").validate();f=this.element.attr("name");r.settings.messages[f]={};for(i in this.model.validationRules)if(u=null,!t.isNullOrUndefined(this.model.validationRules[i])){if(t.isNullOrUndefined(this.model.validationRules.messages&&this.model.validationRules.messages[i])){r.settings.messages[f][i]=n.validator.messages[i];for(e in this.model.validationMessages)i==e?u=this.model.validationMessages[i]:""}else u=this.model.validationRules.messages[i];r.settings.messages[f][i]=u!=null?u:n.validator.messages[i]}},_renderTimeIcon:function(){if(this.model.showPopupButton){this.timeIcon=t.buildTag("span.e-select").attr({role:"button","aria-label":"select"});var n=t.buildTag("span.e-icon e-clock").attr("role","presentation");this._isIE8&&(this.timeIcon.attr("unselectable","on"),n.attr("unselectable","on"));this.timeIcon.append(n);this.container.append(this.timeIcon).addClass("e-padding");this._on(this.timeIcon,"mousedown",this._timeIconClick)}},_elementClick:function(){this.showDropdown||this._showResult()},_renderDropdown:function(){var i=n("#"+this.element[0].id+"_popup").get(0),r;if(i&&n(i).remove(),this.popupList)return!1;this.popupList=t.buildTag("div.e-time-popup e-popup e-widget e-box "+this.model.cssClass+"#"+this.target.id+"_popup","",{},{tabindex:0,role:"listbox"});t.isTouchDevice()||this.popupList.addClass("e-ntouch");this.popup=this.popupList;this.ul=t.buildTag("ul.e-ul");this._isIE8&&this.ul.attr("unselectable","on");r=t.buildTag("div").append(this.ul);n("body").append(this.popupList.append(r));this._renderLiTags();this._setListHeight();this._setListWidth();this.popupList.ejScroller({height:this.popupList.height(),width:0,scrollerSize:20});this.scrollerObj=this.popupList.ejScroller("instance");this.popupList.css("display","none");this._listSize=this.ul.find("li").length},_renderLiTags:function(){var r,o,f,s,h,e,i,u;for(this._disabledItems=[],s=this.model.interval*6e4,h=!t.isNullOrUndefined(this.model.disableTimeRanges)&&this.model.disableTimeRanges.length>0?!0:!1,r=this._minTimeObj,o=this._maxTimeObj,e=0;this._compareTime(o,r,!0);)f=this._localizeTime(r),i=n(document.createElement("li")),i[0].appendChild(document.createTextNode(f)),this._isIE8&&i.attr("unselectable","on"),h&&(this._ensureTimeRange(f)?(i.addClass("e-disable"),this._disabledItems.push(e)):i.removeClass("e-disable")),this.ul[0].appendChild(i[0]),r=new Date(r).getTime()+s,e++;u=this.ul.find("li");t.isTouchDevice()||(this._on(u,"mouseenter",n.proxy(this._OnMouseEnter,this)),this._on(u,"mouseleave",n.proxy(this._OnMouseLeave,this)));this._on(u,"click",n.proxy(this._OnMouseClick,this));(this.model.showPopupButton||!t.isNullOrUndefined(this.popupList))&&this.ul.find("li").attr({tabindex:-1,"aria-selected":!1,role:"option"})},_ensureTimeRange:function(n){var r,i;if(!t.isNullOrUndefined(this.model.disableTimeRanges))for(r=this._makeDateTimeObj(n),i=0;i<this.model.disableTimeRanges.length;i++)if(+r>=+this._makeDateTimeObj(this.model.disableTimeRanges[i].startTime)&&+r<=+this._makeDateTimeObj(this.model.disableTimeRanges[i].endTime))return!0;return!1},_initStartEnd:function(){if(this._startTime=[],this._endTime=[],!t.isNullOrUndefined(this.model.disableTimeRanges))for(var n=0;n<this.model.disableTimeRanges.length;n++)this._startTime[n]=this._makeDateTimeObj(this.model.disableTimeRanges[n].startTime),this._endTime[n]=this._makeDateTimeObj(this.model.disableTimeRanges[n].endTime)},_makeDateTimeObj:function(n){var u;if(typeof n=="string"){var r=t.preferredCulture(this.model.locale).calendar.patterns.d,f=t.format(new Date("1/1/2000"),r,this.model.locale),i=t.parseDate(f+" "+n,r+" "+this.model.timeFormat,this.model.locale);if(!i)if(u=new Date(n),isNaN(Date.parse(u))||t.isNullOrUndefined(n))i=new Date("1/1/2000 "+n);else return this._setEmptyDate(n);return i}return n instanceof Date?this._setEmptyDate(n):null},_reRenderDropdown:function(){this.ul.empty();this._renderLiTags();this._refreshScroller();this._changeActiveEle()},_refreshScroller:function(){var t=this.popupList.css("display")=="none"?!0:!1;this.popupList.css("height","auto");this.popupList.find(".e-content, .e-vscroll").removeAttr("style");this.popupList.find(".e-vscroll div").removeAttr("style");t&&this.popupList.css("display","block");this.scrollerObj.model.height=this.popupList.height();this.scrollerObj.model.scrollTop=0;this.scrollerObj.refresh();this._isIE8&&(n("#"+this.scrollerObj._id).children(".e-vscroll").children().attr("unselectable","on"),n("#"+this.scrollerObj._id).find(".e-vhandle").attr("unselectable","on"));t&&this.popupList.css("display","none")},_removeWatermark:function(){this.element.val()==""||this._isSupport||this._hiddenInput.css("display","none")},_setListWidth:function(){if(this.popupList){var n=this.model.popupWidth,t;t=typeof n=="string"&&n.indexOf("%")!=-1||typeof n=="string"?parseInt(n)>0?n:"auto"&&(this.model.popupWidth="auto"):n>0?n:"auto"&&(this.model.popupWidth="auto");t&&t!="auto"?this.popupList.css({width:t}):this.popupList.css({width:this.wrapper.width()})}this.scrollerObj&&(this._refreshScroller(),this._updateScrollTop())},_setListHeight:function(){this.popupList&&this.popupList.css({"max-height":this.model.popupHeight||"191px"});this.scrollerObj&&(this._refreshScroller(),this._updateScrollTop())},_updateScrollTop:function(){this.scrollerObj.setModel({scrollTop:this._calcScrollTop()})},_refreshPopup:function(){this.model.popupWidth=="auto"&&this.popupList.css({width:this.wrapper.width()});this._setListPosition();this._refreshScroller()},_setListPosition:function(){var t=this.wrapper,i=this._getOffset(t),f,h=n(document).scrollTop()+n(window).height()-(i.top+n(t).outerHeight()),c=i.top-n(document).scrollTop(),u=this.popupList.outerHeight(),e=this.popupList.outerWidth(),r=i.left,o=t.outerHeight(),l=(o-t.height())/2,a=this._getZindexPartial(),s=3,v=(u<h||u>c?i.top+o+s:i.top-u-s)-l;f=n(document).scrollLeft()+n(window).width()-r;(this.model.enableRTL||e>f&&e<r+t.outerWidth())&&(r-=this.popupList.outerWidth()-t.outerWidth());this.popupList.css({left:r+"px",top:v+"px","z-index":a})},_getOffset:function(n){return t.util.getOffset(n)},_getZindexPartial:function(){return t.util.getZindexPartial(this.element,this.popupList)},_enableMask:function(){this.isValidState=this.model.minTime&&this._compareTime(this.model.minTime,this.model.value)||this.model.maxTime&&this._compareTime(this.model.value,this.model.maxTime)?!1:!0;this._setTime(this.model.value);t.isNullOrUndefined(this.model.value)?this.wrapper.removeClass("e-valid"):this.wrapper.addClass("e-valid");this._getInternalEvents&&!this.isValidState&&this._trigger("outOfRange");this._changeActiveEle();this._preVal=this.element.val()},_setTime:function(n){var t=this._localizeTime(n);this.element.val(t);this.model.value=this.model.enableStrictMode?this._compareTime(this.model.value,this.model.minTime,!0)&&this._compareTime(this.model.maxTime,this.model.value,!0)?t:null:t;this._setWaterMark()},_timeFromISO:function(n){var i=this._extISORegex.exec(n)||this._basicISORegex.exec(n),c="",l="",a="",v,e,o,f,r,t,s,u,h,y;if(i){for(e=0;e<this._dates.length;e++)if(this._dates[e][1].exec(i[1])){c=this._dates[e][0];break}if(i[3])for(o=0;o<this._times.length;o++)if(this._times[o][1].exec(i[3])){l=(i[2]||" ")+this._times[o][0];break}for(i[4]&&this._zeroRegex.exec(i[4])&&(a="Z"),v=c+l+a,f=v.match(this._tokens),t=[],u=0;u<f.length;u++)h=f[u],s=this._checkLiteral(f[u]),y=this._numberRegex[s?f[u].toLowerCase():h.length]||new RegExp("^\\d{1,"+h.length+"}"),r=n.match(y),r&&(n.substr(0,n.indexOf(r))>=0&&!s&&(f[u].indexOf("M")>=0?t.push(parseInt(r[0])-1):t.push(parseInt(r[0]))),n=n.slice(n.indexOf(r[0])+r[0].length));return i[4]=="Z"?new Date(Date.UTC.apply(null,t)):new Date(t[0],t[1],t[2],t[3],t[4],t[5])}return new Date(n+"")},_checkLiteral:function(n){var t=n.toLowerCase();return t=="t"||t=="z"||t==":"||t=="-"?!0:!1},_setMask:function(){this.model.value=new Date;this._enableMask()},_validateTimes:function(){var n=this._validateTimeFormat(this.model.timeFormat);this.model.timeFormat=n?n:"h:mm tt";this._isValid(this.model.minTime)||(this.model.minTime="12:00 AM");this._isValid(this.model.maxTime)||(this.model.maxTime="11:59 PM");this._isValid(this.model.value,!0)||(this.model.value=null);this._checkMinMax(this.model.value)||this.model.enableStrictMode||(this.model.minTime&&!this._compareTime(this.model.value,this.model.minTime,!0)&&(this.model.value=this.model.minTime),this.model.maxTime&&!this._compareTime(this.model.maxTime,this.model.value,!0)&&(this.model.value=this.model.maxTime));this._validateMinMax()},_ensureValue:function(){!this._checkMinMax(this.model.value)&&this._isValid(this.model.value,!0)&&(this.model.enableStrictMode?this.isValidState=!1:(this.model.minTime&&!this._compareTime(this.model.value,this.model.minTime,!0)&&(this.model.value=this.model.minTime),this.model.maxTime&&!this._compareTime(this.model.maxTime,this.model.value,!0)&&(this.model.value=this.model.maxTime)))},_validateMinMax:function(){this.model.minTime&&this.model.maxTime&&this._compareTime(this.model.minTime,this.model.maxTime)&&(this.model.minTime=this.model.maxTime)},_checkProperties:function(){this.model.enabled?this.model.enabled&&this.element.hasClass("e-disable")&&(this.model.enabled=!1,this.enable()):(this.model.enabled=!0,this.disable());this._addProperty();this._checkAttributes()},_addProperty:function(){this._setRtl(this.model.enableRTL);this._setRoundedCorner(this.model.showRoundedCorner)},_setRtl:function(n){n?(this.wrapper.addClass("e-rtl"),this.popupList&&this.popupList.addClass("e-rtl")):(this.wrapper.removeClass("e-rtl"),this.popupList&&this.popupList.removeClass("e-rtl"))},_setRoundedCorner:function(n){n?(this.container.addClass("e-corner"),this.popupList&&this.popupList.addClass("e-corner")):(this.container.removeClass("e-corner"),this.popupList&&this.popupList.removeClass("e-corner"))},_showButton:function(t){this.model.showPopupButton=t;t?(this.container.addClass("e-padding"),this._renderTimeIcon(),this._renderDropdown(),this._addProperty()):(this.container.removeClass("e-padding"),this.timeIcon.remove(),this.popupList.remove(),this.timeIcon=this.popupList=null,n(document).off("mousedown",n.proxy(this._OnDocumentClick,this)))},_checkAttributes:function(){this.element.attr("name")||this.element.attr({name:this.element[0].id});"ondragstart"in document.createElement("input")&&this.element.attr({ondragstart:"return false"});"draggable"in document.createElement("input")&&this.element.attr({draggable:"false"})},_getAmPm:function(){var t=new Date;t.setHours(0);this.ttAM=n.trim(this._localizeMeridian(t));t.setHours(23);this.ttPM=n.trim(this._localizeMeridian(t))},_setDimentions:function(){this.model.height||(this.model.height=this.element.attr("height"));this.model.width||(this.model.width=this.element.attr("width"));this._setHeight(this.model.height);this.model.width&&this.wrapper.width(this.model.width)},_setHeight:function(n){n&&this.wrapper.height(n);this._isIE7&&this.element.height(this.container.height())},_validateTimeFormat:function(t){var i=t.split(" "),r="";return i.length==1||i.length==2?(n(i).each(function(t,i){r+=n.trim(i)+" "}),n.trim(r)):null},_getSeperator:function(){for(var i=this._getElePlace(),t=this._formatparts[i.time],r=new RegExp("^[a-zA-Z0-9]+$"),n=0;n<t.length;n++)if(!r.test(t.charAt(n)))return t.charAt(n)},_checkInComplete:function(){var i=this._getCaretSelection(),r=this._getStartEnd(i),u="00",t=this._getSelectedValue(r),n=this._getCategory(r);i.end-i.start==this.element.val().length&&this._checkAll();n&&n!="tt"&&(this._findCategoryPosition(n),t=="__"?((n=="h"||n=="hh")&&(u="12"),this._changeToDefault(u)):n.length!=1&&t.length==1&&(t=this._changeWhole(t),this.element.val(this._replaceAt(this.target.value,this.start,this.end,t))))},_checkAll:function(){for(var r=this._getElePlace(),i=this._formatparts[r.time].split(this.seperator),t,n=0;n<i.length;n++)this._findCategoryPosition(i[n]),t=this._getSelectedValue({start:this.start,end:this.end}),i[n].length!=1&&t.length==1&&(t=this._changeWhole(t),this.element.val(this._replaceAt(this.element.val(),this.start,this.end,t)))},_changeToDefault:function(n){var i,t;this.incomplete=!0;i=this.element[0].value;this.element[0].value=this._replaceAt(this.target.value,this.start,this.end,n);t=this._checkExceedRange(this.target.value);!t||this._setTime(this.model[t]);this._setSelection(this.start,this.end);this._raiseChangeEvent(i)},_setSelection:function(n,t){var i=this.element[0];i.setSelectionRange?i.setSelectionRange(n,t):i.createTextRange&&(i=i.createTextRange(),i.collapse(!0),i.moveEnd("character",t),i.moveStart("character",n),i.select())},_getSelectedValue:function(n){return this.target.value.substring(n.start,n.end)},_getMinMax:function(n,t){n=="hh"||n=="h"?(this.min=1,this.max=11,t&&(this.max=12)):n=="HH"||n=="H"?(this.min=0,this.max=23):(n=="mm"||n=="m"||n=="ss"||n=="s")&&(this.min=0,this.max=59)},_focusElement:function(){this._manualFocus=!0;this.element.focus()},_targetFocus:function(t){this._clearRange();t.preventDefault();this.focused=!0;this.element.on("mousewheel DOMMouseScroll",n.proxy(this._mouseWheel,this));this.wrapper.addClass("e-focus").removeClass("e-error").attr("aria-invalid","false");this._getExactPostions();this._manualFocus||(this._findCategoryPosition(this._getLeast(!1)),this._setSelection(this.start,this.end));this._manualFocus=!1;this._prevTimeVal=this.element.val();this._raiseEvent("focusIn");this.wrapper.addClass("e-valid");this.model.showPopupButton||this._showResult();this.model.showPopupButton||this._on(this.element,"click",this._elementClick)},_targetBlur:function(){this.focused=!1;this.element.off("mousewheel DOMMouseScroll",n.proxy(this._mouseWheel,this));this.model.showPopupButton||this._off(this.element,"click",this._elementClick);this.wrapper.removeClass("e-focus");this.model.enableStrictMode||this.target.value.indexOf("_")>-1&&this.element.val("");!this._checkMinMax(this.target.value)&&this._isValid(this.target.value,!0)?this.model.enableStrictMode?this.isValidState=!1:(this.model.minTime&&!this._compareTime(this._createObject(this.target.value),this.model.minTime,!0)&&this.element.val(this.model.minTime),this.model.maxTime&&!this._compareTime(this.model.maxTime,this._createObject(this.target.value),!0)&&this.element.val(this.model.maxTime),this._isValid(this.model.value,!0)||this.element.val(null),this.isValidState=!0,t.isNullOrUndefined(this.model.value)?this.wrapper.removeClass("e-valid"):this.wrapper.addClass("e-valid")):this.isValidState=!0;this._ensureValue();this._raiseChangeEvent();this._checkErrorClass();this._raiseEvent("focusOut");this.model.enableStrictMode||this._checkInComplete();t.isNullOrUndefined(this.model.value)?this.wrapper.removeClass("e-valid"):this.wrapper.addClass("e-valid")},_clearRange:function(){var n=this.element[0];isNaN(n.selectionStart)||(n.selectionStart=0,n.selectionEnd=0)},_checkErrorClass:function(){this.isValidState?this.wrapper.removeClass("e-error").attr("aria-invalid","false"):this.wrapper.addClass("e-error").attr("aria-invalid","true")},_getExactPostions:function(){var t=this.model.timeFormat,r=this.model.timeFormat.split(" "),n;this._formatparts=[];this._valueparts=[];this._amPMPosition=t.match("([t][t]+)")?t.match("([t][t]+)").index:null;this._amPMPosition==i?(this._formatparts=this.model.timeFormat.split(" "),this._valueparts=this.element.val().split(" "),this._noTT=!0):(this._amPMPosition==this.model.timeFormat.length-2?(this._ttAtEnd=!0,this._isSpace=this.model.timeFormat[this.model.timeFormat.split("").indexOf("t")-1]==" "):(this._ttAtEnd=!1,this._isSpace=this.model.timeFormat[this.model.timeFormat.split("").indexOf("t")+2]==" "),this._ttAtEnd==!0?(this._ttStartPostion=this.model.timeFormat.match("([t]?[t]+)").index,this._ttEndPosition=this.model.timeFormat.length,this._formatStartPosition=0,n=0,this.element&&this.element.val()&&(n=this.element.val().length-this.model.timeFormat.length),this._updatedttStartPosition=this._ttStartPostion+n,this._formatEndPostion=this.model.timeFormat.match("([t][t]+)").index,this._formatparts[0]=this.model.timeFormat.substr(this._formatStartPosition,this._formatEndPostion).trim(),this._formatparts[1]=this.model.timeFormat.substr(this._ttStartPostion,this._ttEndPosition).trim(),this._valueparts[0]=this.element.val().substr(this._formatStartPosition,this._formatEndPostion+n).trim(),this._valueparts[1]=this.element.val().substr(this._ttStartPostion+n,this._ttEndPosition).trim()):(this._ttStartPostion=0,this._ttEndPosition=this.model.timeFormat.match("([t]?[t]+)")?this._ttStartPostion+this.model.timeFormat.match("([t]?[t]+)")[0].length:0,this._formatStartPosition=this._isSpace?this._ttEndPosition+1:this._ttEndPosition,this._formatEndPostion=this.model.timeFormat.length,this._formatparts[1]=this.model.timeFormat.substr(this._formatStartPosition,this._formatEndPostion).trim(),this._formatparts[0]=this.model.timeFormat.substr(this._ttStartPostion,this._ttEndPosition).trim(),this._valueparts[1]=this.element.val().substr(this._formatStartPosition,this._formatEndPostion).trim(),this._valueparts[0]=this.element.val().substr(this._ttStartPostion,this._ttEndPosition).trim()))},_getCaretSelection:function(){var n=this.element[0],u=0,f=0,e,t,i,r,o;return isNaN(n.selectionStart)?(e=document.selection.createRange().getBookmark(),t=n.createTextRange(),t.moveToBookmark(e),i=n.createTextRange(),i.collapse(!0),i.setEndPoint("EndToStart",t),r=i.text.length,o=t.text.length,{start:r,end:r+o}):(u=n.selectionStart,f=n.selectionEnd,{start:Math.abs(u),end:Math.abs(f)})},_mouseDownOnInput:function(){this.focused||t.isTouchDevice()||this._focusElement();this._getExactPostions();this.downPosition=this._getCaretSelection();n(document).on("mouseup",n.proxy(this._mouseUpOnInput,this))},_mouseUpOnInput:function(t){t.preventDefault();n(document).off("mouseup",n.proxy(this._mouseUpOnInput,this));var i=this._getCaretSelection();this.incomplete&&(this.incomplete=!1,i=this.downPosition);this.target.value!=this._getSelectedText()&&(i=this._getStartEnd(i),this._setSelection(i.start,i.end))},_getCategoryPosition:function(n){var t=0,i=0,u=this._getTimeParts(),r=this._getElePlace(),h=this.seperator,e=!1,o=this._getFormatParts()[r.time].split(h),c=u[r.time].split(h),s,f;if(o.length>c.length)return{start:t,end:i,isValid:e};if(n=="tt")(u[r.tt]==this.ttAM||u[r.tt]==this.ttPM)&&(t=r.tt==0?0:u[r.time].length+1,i=t+u[r.tt].length,!this._isSpace&&this._ttAtEnd&&(t=t-1,i=i-1),e=!0);else if(t=r.time==0?0:u[r.tt].length+1,s=o.indexOf(n),s!=-1){for(f=0;f<o.length;f++)if(i=c[f].length+1,f==s)break;else t+=i;i+=t-1;this._noTT||this._isSpace||this._ttAtEnd||(t=t-1,i=i-1);e=!0}return{start:t,end:i,isValid:e}},_getCategory:function(n){var t=this._getFormatParts(),r=this.seperator,i=this._getElePlace();return n.isTT?t[i.tt]:t[i.time].split(r)[n.index]},_getTimeParts:function(){var n;return this.model.timeFormat=="h:mm tt"||this.model.timeFormat=="h:m tt"||this.model.timeFormat=="hh:m tt"||this.model.timeFormat=="hh:mm:s tt"?this.element.val().split(" "):this._valueparts},_getFormatParts:function(){var n;return this.model.timeFormat=="h:mm tt"||this.model.timeFormat=="h:m tt"||this.model.timeFormat=="hh:m tt"||this.model.timeFormat=="hh:mm:s tt"?this.model.timeFormat.split(" "):this._formatparts},_getStartEnd:function(n){this._getExactPostions();for(var e,h=this.seperator,a=this.element.val(),r=this._valueparts,t=0,u=0,o=e=null,f,i=0;i<r.length;i++)if(r[i]!=this.ttAM&&r[i]!=this.ttPM){var s=r[i].split(h),c=t,l=t+s[0].length;for(f=0;f<s.length;f++){if(u=s[f].length+t,!this._isSpace&&this._ttAtEnd&&n.start>=this._updatedttStartPosition&&n.end<=this._ttEndPosition&&this._formatparts[0].split(this._getSeperator())[1].length==this._valueparts[0].split(this._getSeperator())[1].length){t+=s[f].length+1;continue}if(n.start<=u){o=f;e=!1;i=r.length;break}else t+=s[f].length+1}}else{if(!this._isSpace&&!this._ttAtEnd?n.start<t+r[i].length:n.start<=t+r[i].length){u=r[i].length+t;o=0;e=!0;i=r.length;!this._isSpace&&this._ttAtEnd&&(t=t-1,u=u-1);break}else t+=r[i].length+1;this._isSpace||this._ttAtEnd||(t=t-1)}return o==null&&(t=c,u=l,o=0,e=!1),{start:t,end:u,index:o,isTT:e}},_modifyValue:function(n){var i,t,r,u;this._isValid(this.target.value)&&(this.model.enableStrictMode||this._checkInComplete(),i=this._getCaretSelection(),i.start==i.end?(r=this._getLeast(!0),u=this._getCategoryPosition(r),t=this._getStartEnd(u)):t=this._getStartEnd(i),this.start=t.start,this.end=t.end,this._changeValue(t,n))},_keyUpOnInput:function(n){var r,u;n.preventDefault();this._preVal!=this.element.val()&&(this._preVal=this.element.val());var e=this,t=this._getCaretSelection(),f=this._getStartEnd(t),i=this._getCategory(f);e=this;r=this._getSelectedValue(f);u=this.element.val();u.split(":");u[0]<3&&(this._poschange=isNaN(u[0]+u[1])==!0&&u[0]<10?!0:!1);i=="h"&&t.start==2&&t.end==2&&r>9&&r<13||i=="H"&&r>9&&r<24||i=="H"&&r<9&&t.start==2&&t.end==2||i=="mm"&&this._poschange==!0&&t.start==4&&t.end==4||i=="ss"&&t.start==8&&t.end==8||i=="ss"&&this._poschange==!0&&t.start==7&&t.end==7||i=="mm"&&t.start==5&&t.end==5?i=="mm"&&(this.model.timeFormat=="HH:mm"||this.model.timeFormat=="hh:mm"||this.model.timeFormat=="H:mm"||this.model.timeFormat=="h:mm")||i=="ss"&&(this.model.timeFormat=="HH:mm:ss"||this.model.timeFormat=="hh:mm:ss"||this.model.timeFormat=="H:mm:ss"||this.model.timeFormat=="h:mm:ss")||this._movePosition(t,null):(i=="hh"||i=="HH")&&t.start&&t.end==2&&r<24&&this._movePosition(t,null)},_getNextCategory:function(t,i){var r=[],e=this.seperator,o=this._getFormatParts(),u,f;return(n(o).each(function(n,t){if(t=="tt")r.push(t);else{var i=t.split(e);r=i.concat(r)}}),u=r.indexOf(t),u!=-1)?(f=i?u==0?r.length-1:u-1:u==r.length-1?0:u+1,r[f]):t},_getElePlace:function(){this._getExactPostions();var i=this._getFormatParts(),n,t;return i[0]=="tt"?(n=1,t=0):(n=0,t=1),{time:n,tt:t}},_movePosition:function(n,t){var i=this._getStartEnd(n),r=this._getCategory(i),u;r||(r=this._getLeast(t));u=this._getNextCategory(r,t);i=this._getCategoryPosition(u);i.isValid&&this._setSelection(i.start,i.end)},_findActiveIndex:function(){var t=this.ul.find("li"),i=this.element.val(),r=t.first().html(),n;n=(this._parse(i)-this._parse(r))/(this.model.interval*6e4);n=Math.round(n);this._activeItem=n==t.length?n:n+1;(this._activeItem<0||this._activeItem>t.length||isNaN(this._activeItem))&&(this._activeItem=0)},_keyDownOnInput:function(n){var t,u,i,y,f,d,c,g,l,o,p,w,nt,a,s,tt,v,b,e,k,h,r;if(this.model.readOnly&&!this._readOnlyKeys(n)||(i=n.keyCode,this._getInternalEvents&&i!=38&&i!=40&&i!=36&&i!=35&&i!=9))return!1;if(!this.model.enableStrictMode){if(this.showDropdown&&i!=38&&i!=40&&i!=27&&!this._readOnlyKeys(n))return!1;this.showDropdown&&(i==37||i==39)&&(n.keyCode=i==37?38:40)}t=this._getCaretSelection();r=this._getStartEnd(t);u=this._getCategory(r);switch(n.keyCode){case 38:n.preventDefault();this.showDropdown?this.showDropdown&&(n.preventDefault(),this._findActiveIndex(),f=this._activeItem,this._activeItem=this._disableItemSelectUp(this._activeItem-1),this._activeItem==0&&(this._activeItem=f),this._addListHover(),y=this._getActiveItem(),y.length&&this._selectTimeItem(y)):this._isValid(this.target.value)&&this._modifyValue(!0);break;case 40:n.preventDefault();n.altKey&&this.model.showPopupButton?this._showhidePopup():this.showDropdown?this.showDropdown&&(n.preventDefault(),this._findActiveIndex(),f=this._activeItem,this._activeItem=this._disableItemSelectDown(this._activeItem),this._activeItem<this._listSize?this._activeItem+=1:this._activeItem=f,this._addListHover(),this._selectTimeItem(this._getActiveItem())):this._isValid(this.target.value)&&this._modifyValue(!1);break;case 37:n.preventDefault();t.start==t.end?this._setSelection(t.start-1,t.start-1):this._movePosition(t,!0);break;case 39:n.preventDefault();t.start==t.end?this._setSelection(t.start+1,t.start+1):this._movePosition(t,!1);break;case 36:n.preventDefault();this.showDropdown?(this._activeItem=0,f=this._activeItem,this._activeItem=this._disableItemSelectDown(this._activeItem),this._activeItem<this._listSize?this._activeItem+=1:this._activeItem=f,this._addListHover(),this._selectTimeItem(this._getActiveItem())):(d=this._firstlastVal(!0),c=this._getCategoryPosition(d),c.isValid&&this._setSelection(c.start,c.end));break;case 35:n.preventDefault();this.showDropdown?(this._activeItem=this._listSize+1,f=this._activeItem,this._activeItem=this._disableItemSelectUp(this._activeItem-1),this._activeItem==0&&(this._activeItem=f),this._addListHover(),this._selectTimeItem(this._getActiveItem())):(g=this._firstlastVal(!1),l=this._getCategoryPosition(g),l.isValid&&this._setSelection(l.start,l.end));break;case 9:if(this._getInternalEvents)break;this._hideResult();o=null;n.shiftKey&&t.start>0?o=!0:!n.shiftKey&&t.end<this.element.val().length&&(o=!1);o!=null&&(n.preventDefault(),this._checkInComplete(),this._movePosition(t,o));break;case 13:if(!this.showDropdown){this._raiseChangeEvent();break}case 27:n.preventDefault();this._hideResult();break;case 8:case 46:if(this.model.enableStrictMode)return;this.target.value!=this._getSelectedText()&&(n.preventDefault(),u&&u!="tt"&&(this._findCategoryPosition(u),p=i==8&&t.start!=this.start,w=i==46&&t.end!=this.end,nt=this.end-this.start,(t.start!=t.end||nt==1)&&(p||w||t.start!=t.end)?(a=this.start,s=this.end,this.element[0].value=this._replaceAt(this.target.value,a,s,"__"),tt=s-a!=2?s+1:s,this._setSelection(a,tt)):p?(this.element[0].value=this._replaceAt(this.target.value,t.start-1,t.start,""),this._setSelection(t.start-1,t.start-1)):w&&(this.element[0].value=this._replaceAt(this.target.value,t.end,t.end+1,""),this._setSelection(t.end,t.end))))}v=this._getSelectedValue(r);b=n.keyCode?n.keyCode:n.charCode;n.keyCode>47&&n.keyCode<58?e=String.fromCharCode(b):n.keyCode>95&&n.keyCode<106&&(e=String.fromCharCode(b-48));u=="tt"&&(!n.shiftKey&&!n.ctrlKey&&!n.altKey&&n.keyCode>64&&n.keyCode<91||n.keyCode>47&&n.keyCode<58||n.keyCode>95&&n.keyCode<106)&&(n.preventDefault(),k=this._getCategoryPosition(u),this.start=k.start,this.end=k.end,this._changeAmPm(v),this._raiseChangeEvent());this.target.value!=this._getSelectedText()||n.shiftKey||n.ctrlKey||n.altKey||(n.keyCode>64&&n.keyCode<91&&!this.model.enableStrictMode&&n.preventDefault(),(n.keyCode>47&&n.keyCode<58||n.keyCode>95&&n.keyCode<106)&&(r=this._getStartEnd(t),this._setSelection(r.start,r.end)));!n.shiftKey&&!n.ctrlKey&&!n.altKey&&n.keyCode>47&&n.keyCode<58||n.keyCode>95&&n.keyCode<106?u!="tt"&&(this._getMinMax(u,!0),t.start==t.end?(this._findCategoryPosition(u),t.start==this.start?(h=e+v,this.model.enableStrictMode==!1&&(this._validateTimes(),this._targetBlur()),this.model.value==null&&this.element.val(this.model.minTime),r=this._getStartEnd(t),this._setSelection(r.start,r.end)):h=v+e,(h.length>2||!(Number(h)>=this.min&&this.max>=Number(h)))&&(this.model.enableStrictMode||n.preventDefault())):Number(e)>=this.min&&this.max>=Number(e)||this.model.enableStrictMode||n.preventDefault()):this._allowKeyCodes(n)||(this.model.enableStrictMode?n.stopPropagation():n.keyCode==8||n.keyCode==46?n.stopPropagation():n.preventDefault())},_getSelectedText:function(){if(window.getSelection){var t=n("#"+this.element[0].id).get(0);return t.value.substring(t.selectionStart,t.selectionEnd)}return document.selection.createRange().text},_allowKeyCodes:function(n){return n.ctrlKey&&(n.keyCode==65||n.keyCode==67||n.keyCode==90||n.keyCode==89)||n.keyCode==9||n.keyCode==116||n.keyCode==13?!0:!1},_readOnlyKeys:function(n){return n.keyCode==35||n.keyCode==36||n.keyCode==37||n.keyCode==39||this._allowKeyCodes(n)?!0:!1},_firstlastVal:function(n){var t=this._getFormatParts(),r=this.seperator,i;return n?t[0]!="tt"?t[0].split(r)[0]:"tt":t[0]!="tt"?"tt":t[1]?(i=t[1].split(r),i.length?i[i.length-1]:"tt"):"tt"},_mouseWheel:function(n){if(n.preventDefault(),this.model.readOnly)return!1;var t,i=n.originalEvent;i.wheelDelta?t=i.wheelDelta/120:i.detail&&(t=-i.detail/3);t>0?this._modifyValue(!0):t<0&&this._modifyValue(!1)},_addListHover:function(){this._addSelected();this._updateScrollTop()},_addSelected:function(){this.ul.find("li").removeClass("e-active e-hover");var n=this._getActiveItem();n.length&&!n.hasClass("e-disable")&&n.addClass("e-active")},_disableItemSelectDown:function(t){return(t==null||t<0)&&(t=0),t<this._listSize?n.inArray(t,this._disabledItems)<0?t:this._disableItemSelectDown(t+1):this._listSize},_disableItemSelectUp:function(t){if(t=t-1,(t==null||t<0)&&(t=0),t<this._listSize){if(n.inArray(t,this._disabledItems)<0)return t+1;if(t>0)return this._disableItemSelectUp(t)}return 0},_getActiveItem:function(){return n(this.ul.find("li")[this._activeItem-1])},_timeIconClick:function(n){var i,r;if(t.isNullOrUndefined(this.popupList)&&(this._renderDropdown(),this._addProperty()),i=!1,n.button?i=n.button==2:n.which&&(i=n.which==3),!i){if(n.preventDefault(),!this.model.enabled||this.model.readOnly||this.ul.find("li").length<1)return!1;this._showhidePopup();r=this.element.val().length;t.isTouchDevice()||this._setSelection(r,r)}},_showhidePopup:function(){if(this._getInternalEvents)return!1;this.showDropdown?this._hideResult():this._showResult()},_showResult:function(){if(this.popupList==null&&this._renderDropdown(),this._raiseEvent("beforeOpen"))return!1;this.focused||t.isTouchDevice()||this._focusElement();this.model.value?this._changeActiveEle():this.ul.find("li").removeClass("e-active");var i=this,r=this._visibleAndCalculateTop();this.popupList.slideDown(this.model.enableAnimation?200:0,function(){n(document).on("mousedown",n.proxy(i._OnDocumentClick,i))});this.scrollerObj.setModel({scrollTop:r});this.showDropdown=!0;this._listSize=this.ul.find("li").length;n(window).on("resize",n.proxy(this._OnWindowResize,this));this._on(t.getScrollableParents(this.wrapper),"scroll",this._hideResult);this._on(t.getScrollableParents(this.wrapper),"touchmove",this._hideResult);this._raiseEvent("open");this.wrapper.addClass("e-active")},_hideResult:function(i){if(this._raiseEvent("beforeClose"))return!1;i&&(i.type=="touchmove"||i.type=="scroll")&&n(i.target).parents("#"+this.popupList[0].id).length>0||this.showDropdown&&!this._getInternalEvents&&(this.showDropdown=!1,this.popupList.slideUp(this.model.enableAnimation?100:0),n(document).off("mousedown",n.proxy(this._OnDocumentClick,this)),n(window).off("resize",n.proxy(this._OnWindowResize,this)),this._off(t.getScrollableParents(this.wrapper),"scroll",this._hideResult),this._off(t.getScrollableParents(this.wrapper),"touchmove",this._hideResult),this._raiseEvent("close"),this.wrapper.removeClass("e-active"))},_visibleAndCalculateTop:function(){this.popupList.css({display:"block"});var n=this._calcScrollTop();return this._refreshPopup(),this.popupList.css({display:"none"}),n},_calcScrollTop:function(){var i=this.ul.outerHeight(),n=this.ul.find("li").outerHeight(),t;return t=this.ul.find("li.e-active").index(),n*t-(this.popupList.outerHeight()-n)/2},_changeActiveEle:function(){if(!this.popupList)return!1;var t=this.ul.find("li"),i=this.element.val(),r=t.first().html(),n;n=(this._parse(i)-this._parse(r))/(this.model.interval*6e4);n=Math.round(n);this._activeItem=n==t.length?n:n+1;(this._activeItem<0||this._activeItem>t.length||isNaN(this._activeItem)||this._ensureTimeRange(i))&&(this._activeItem=0);this._addListHover()},_OnDocumentClick:function(t){n(t.target).is(this.popupList)||n(t.target).parents(".e-time-popup").is(this.popupList)||n(t.target).is(this.wrapper)||n(t.target).parents(".e-timewidget").is(this.wrapper)?(n(t.target).is(this.popupList)||n(t.target).parents(".e-time-popup").is(this.popupList))&&t.preventDefault():this._hideResult()},_OnWindowResize:function(){this._refreshPopup()},_OnMouseEnter:function(t){var i=t.target;this.ul.find("li").removeClass("e-hover");n(i).hasClass("e-disable")||n(i).addClass("e-hover")},_OnMouseLeave:function(){(!this._dateTimeInternal||this.model.value)&&this.ul.find("li").removeClass("e-hover")},_OnMouseClick:function(t){(t.preventDefault(),n(t.target).hasClass("e-disable"))||(this.model.enabled&&!this.model.readOnly&&(this._activeItem=n(t.target).index()+1,this.ul.find("li").attr({tabindex:-1,"aria-selected":!1}),n(t.target).attr({"aria-selected":!0,tabindex:0}),this._addSelected(),this._selectTimeItem(n(t.target))),this._showhidePopup())},_selectTimeItem:function(n){this._beforeChange(n);var t=this._raiseChangeEvent();t&&this._trigger("select",{value:this.model.value,prevTime:this._previousValue})},_findCategoryPosition:function(n){n=="least"&&(n=this._getLeast(!0));var t=this._getCategoryPosition(n);this.start=t.start;this.end=t.end},_getLeast:function(t){var r=this._getFormatParts(),u=this.seperator,i=null;return n(r).each(function(n,r){if(r!="tt"){var f=r.split(u);i=t?f[f.length-1]:f[0]}}),i},_changeValue:function(n,i){var l=this.target.value,r,u=this._getCategory(n),f,o;if(!u)return!1;if(this._setSelection(this.start,this.end),r=this.target.value.substring(this.start,this.end),this._checkMinMax(this.target.value))if(r!=this.ttAM&&r!=this.ttPM){if(r=this._changeCurrentValue(r,u,i),u.length!=1&&(r=this._changeWhole(r)),this._findCategoryPosition(u),this.element.val(this._replaceAt(this.target.value,this.start,this.end,r)),this.end=this.start+r.toString().length,this._setSelection(this.start,this.end),this._ensureTimeRange(this.target.value)&&this._checkMinMax(this.target.value)){var e=this._createObject(this.target.value),s=e.getHours(),h=i?this._startTime:this._endTime,c=i?this._endTime:this._startTime;if(!t.isNullOrUndefined(this.model.disableTimeRanges))for(f=0;f<this.model.disableTimeRanges.length;f++)(h[f].getHours()===s||+e>=+this._startTime[f]&&+e<=+this._endTime[f])&&(this.target.value=this._localizeTime(c[f]),this._findCategoryPosition(u),this._setSelection(this.start,this.end),this._changeValue(n,i))}}else this._changeAmPm(r);else o=this._checkExceedRange(this.target.value),this._setTime(this.model[o]),this._findCategoryPosition(u),this._setSelection(this.start,this.end);this._checkMinMax(this.target.value)?this._raiseChangeEvent():(this.element.val(this.model.value),this._findCategoryPosition(u),this._setSelection(this.start,this.end))},_checkMinMax:function(n){var t=this._checkExceedRange(n);return t==null&&(t=!1),!t},_checkExceedRange:function(n){if(n){if(this.model.minTime&&!this._compareTime(n,this.model.minTime,!0))return"minTime";if(this.model.maxTime&&!this._compareTime(this.model.maxTime,n,!0))return"maxTime"}return null},_changeWhole:function(n){return n>9?""+n:"0"+n},_changeAmPm:function(n){n=n==this.ttAM?this.ttPM:this.ttAM;this.element.val(this._replaceAt(this.target.value,this.start,this.end,n));this._setSelection(this.start,this.end)},_changeMinute:function(n){var i=this._getExactFormat(["mm","m"]),t;i&&(this._findCategoryPosition(i),t=Number(this.target.value.substring(this.start,this.end)),this._getMinMax(i),n?t==this.max?(t=this.min,this._changeHour(n)):t+=1:t==this.min?(t=this.max,this._changeHour(n)):t-=1,this._findCategoryPosition(i),i.length!=1&&(t=this._changeWhole(t)),this.element.val(this._replaceAt(this.target.value,this.start,this.end,t)))},_changeHour:function(n){var i=this._getExactFormat(["hh","h","HH","H"]),t;i&&(this._findCategoryPosition(i),t=Number(this.target.value.substring(this.start,this.end)),this._getMinMax(i),n?t==this.max?(t+=1,this._changeMeridian()):t>this.max?t=this.min:t+=1:t==this.min?t=this.max+1:t>this.max?(t=this.max,this._changeMeridian()):t-=1,this._findCategoryPosition(i),i.length!=1&&(t=this._changeWhole(t)),this.element.val(this._replaceAt(this.target.value,this.start,this.end,t)))},_getExactFormat:function(n){for(var i=this.model.timeFormat,t=0;t<n.length;t++)if(i.indexOf(n[t])!=-1)return n[t];return null},_changeMeridian:function(){var t=this.model.timeFormat.indexOf("tt"),n;t!=-1&&(this._findCategoryPosition("tt"),n=this.target.value.substring(this.start,this.end),n=n==this.ttAM?this.ttPM:this.ttAM,this.element.val(this._replaceAt(this.target.value,this.start,this.end,n)))},_changeCurrentValue:function(n,t,i){n=Number(n);var r=t,u=1,f=!0;return(this._getMinMax(r),r=="hh"||r=="h"||r=="HH"||r=="H"?u=this.model.hourInterval:r=="mm"||r=="m"?u=this.model.minutesInterval:(r=="ss"||r=="s")&&(u=this.model.secondsInterval),u<=0)?n:(i?((r=="hh"||r=="h")&&n>this.max?n=this.min-1+u:n<this.max?n+=u:(f=!1,r!="hh"&&r!="h"?n=this.min-1+u:n+=u,this._changeAdjacent(r,i)),(r=="hh"||r=="h")&&n==this.max+1?f&&this._changeAdjacent(r,i):n>this.max+1&&(n=n-(this.max+1),f&&this._changeAdjacent(r,i)),r!="hh"&&r!="h"&&n==this.max+1&&(n=this.min,f&&this._changeAdjacent(r,i))):(r!="hh"&&r!="h"&&n>this.min?n-=u:(r=="hh"||r=="h")&&n>this.min&&n<=this.max?n-=u:(r=="hh"||r=="h")&&n==this.min?n=this.max+2-u:(f=!1,n=this.max+1-u,this._changeAdjacent(r,i)),n<this.min&&(n=n+(this.max+1),f&&this._changeAdjacent(r,i))),n)},_changeAdjacent:function(n,t){n=="ss"||n=="s"?this._changeMinute(t):n=="mm"||n=="m"?this._changeHour(t):(n=="hh"||n=="h"||n=="HH"||n=="H")&&this._changeMeridian()},_valueChange:function(){this._raiseChangeEvent()},_beforeChange:function(n){return this._raiseEvent("beforeChange")||this.element.val(n.text()),!0},_raiseChangeEvent:function(n,t){n=n===i?this.model.value:n;this._previousValue=n;var r=this.target.value?this.target.value:null;return n==r?!1:(this.isValidState=this._checkMinMax(this.target.value)&&this._isValid(this.target.value,this.model.enableStrictMode)||!this.target.value?!0:!1,this.model.value=this._isValid(this.target.value,!0)&&this._checkMinMax(this.target.value)?this.target.value:null,this.model.value||this.model.enableStrictMode||this._setTime(this.model.value),this.model.value==this._previousValue)?!1:(this._raiseEvent("change",t),this._raiseEvent("_change",t),!0)},_raiseEvent:function(n,t){var i={value:this.model.value,prevTime:this._previousValue};return n=="change"&&(i.isInteraction=!t),this._trigger(n,i)},_checkIE7:function(){if(navigator.appName=="Microsoft Internet Explorer"){var t=new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})"),n=-1;if(t.exec(navigator.userAgent)!=null&&(n=parseFloat(RegExp.$1)),n>=7&&n<8)return!0}return!1},_replaceAt:function(n,t,i,r){return n.substring(0,t)+r+n.substring(i)},_localizeTime:function(i){return i?n.trim(t.format(this._createObject(i),this.model.timeFormat,this.model.locale)):null},_localizeMeridian:function(i){return n.trim(t.format(i,"tt",this.model.locale))},_compareTime:function(n,t,i){return i=i?!0:!1,i?this._parse(n)>=this._parse(t):this._parse(n)>this._parse(t)},_isValid:function(n,t){return n=this._createObject(n,t),n&&typeof n.getTime=="function"&&isFinite(n.getTime())},_parse:function(n){return Date.parse(this._createObject(n))},_setEmptyDate:function(n){var t=new Date(n);return t.setDate(1),t.setMonth(0),t.setFullYear(2e3),t},_createObject:function(n,i){var r=null,f,e;if(typeof n=="string"){var o=this._setModelOption?this._preTimeformat:this.model.timeFormat,u=t.preferredCulture(this.model.locale).calendar.patterns.d,s=t.format(new Date("1/1/2000"),u,this.model.locale);r=t.parseDate(s+" "+n,u+" "+o,this.model.locale);(this._extISORegex.exec(n)||this._basicISORegex.exec(n))&&(this.model.value=r=this._timeFromISO(n));this._setModelOption=!1;r||(f=new Date(n),r=isNaN(Date.parse(f))||t.isNullOrUndefined(n)?!this._dateTimeInternal||n==""?null:new Date("1/1/2000 "+n):this._setEmptyDate(n))}else typeof n=="number"?r=new Date(n):n instanceof Date&&(r=this._setEmptyDate(n));return r&&!this._dateTimeInternal&&i&&(e=this._localizeTime(r),this._ensureTimeRange(e)&&(r=null)),r},_getLocalizedLabels:function(){return t.getLocalizedConstants(this.sfType,this.model.locale)},_wireEvents:function(){this._on(this.element,"focus",this._targetFocus);this._on(this.element,"blur",this._targetBlur);this._on(this.element,"mousedown",this._mouseDownOnInput);this._on(this.element,"keydown",this._keyDownOnInput);this._on(this.element,"keyup",this._keyUpOnInput)}});t.TimePicker.Locale=t.TimePicker.Locale||{};t.TimePicker.Locale["default"]=t.TimePicker.Locale["en-US"]={watermarkText:"select a time"}}(jQuery,Syncfusion),function(n,t,i){t.widget("ejDateTimePicker","ej.DateTimePicker",{element:null,model:null,validTags:["input"],_addToPersist:["value"],_setFirst:!1,_rootCSS:"e-datetimepicker",type:"editor",angular:{require:["?ngModel","^?form","^?ngModelOptions"],requireFormatters:!0},_requiresID:!0,defaults:{cssClass:"",locale:"en-US",readOnly:!1,showRoundedCorner:!1,enableRTL:!1,htmlAttributes:{},allowEdit:!0,enabled:!0,value:"",name:null,minDateTime:new Date("1/1/1900 12:00:00 AM"),maxDateTime:new Date("12/31/2099 11:59:59 PM"),height:"",width:"",dateTimeFormat:"",showPopupButton:!0,enableStrictMode:!1,buttonText:{today:"Today",timeNow:"Time Now",done:"Done",timeTitle:"Time"},watermarkText:"Select datetime",enablePersistence:!1,interval:30,timeDisplayFormat:"",timePopupWidth:105,popupPosition:"bottom",dayHeaderFormat:"short",startLevel:"month",depthLevel:"",startDay:-1,stepMonths:1,showOtherMonths:!0,specialDates:null,highlightWeekend:!1,enableAnimation:!0,headerFormat:"MMMM yyyy",validationRules:null,validationMessage:null,validationMessages:null,timeDrillDown:{enabled:!1,interval:5,showMeridian:!1,autoClose:!0,showFooter:!0},beforeOpen:null,beforeClose:null,open:null,close:null,change:null,create:null,destroy:null,focusIn:null,focusOut:null,disableDateTimeRanges:null,timeZone:!0,disableTimeRanges:null},dataTypes:{allowEdit:"boolean",cssClass:"string",locale:"string",readOnly:"boolean",showRoundedCorner:"boolean",enableRTL:"boolean",enabled:"boolean",enableAnimation:"boolean",dateTimeFormat:"string",showPopupButton:"boolean",buttonText:"data",watermarkText:"string",enablePersistence:"boolean",enableStrictMode:"boolean",interval:"number",timeDrillDown:"data",timeDisplayFormat:"string",dayHeaderFormat:"string",startLevel:"string",depthLevel:"string",startDay:"number",stepMonths:"number",showOtherMonths:"boolean",highlightWeekend:"boolean",specialDates:"data",headerFormat:"string",validationRules:"data",validationMessage:"data",validationMessages:"data",htmlAttributes:"data",disableDateTimeRanges:"data",disableTimeRanges:"data"},_setModel:function(i){var r,e=!1,o,u,s,f;for(r in i){r!="allowEdit"&&r!="readOnly"&&r!="enabled"&&r!="validationRules"&&r!="validationMessages"&&r!="enableStrictMode"&&r!="height"&&r!="width"&&r!="showPopupButton"&&r!="dateTimeFormat"&&r!="watermarkText"&&r!="htmlAttributes"&&(this.popup||this._renderDropdown());switch(r){case"allowEdit":this._changeEditable(i[r]);break;case"cssClass":this._changeSkin(i[r]);break;case"locale":this._localize(i[r]);break;case"readOnly":this._readOnly(i[r]);break;case"showRoundedCorner":this._setRoundedCorner(i[r]);break;case"enableRTL":this._setRtl(i[r]);break;case"enabled":this._enabled(i[r]);break;case"validationRules":this.model.validationRules!=null&&(this.element.rules("remove"),this.model.validationMessages=null);this.model.validationRules=i[r];this.model.validationRules!=null&&(this._initValidator(),this._setValidation());break;case"validationMessage":this.model.validationMessages=i[r];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"validationMessages":this.model.validationMessages=i[r];this.model.validationRules!=null&&this.model.validationMessages!=null&&(this._initValidator(),this._setValidation());break;case"value":i[r]=this._setValue(i[r]);this._specificFormat()&&(this._stopRefresh=!0);e=!0;this._prevDateTime=this._prevDateTimeVal||this._preVal;break;case"enableStrictMode":this.model.enableStrictMode=i[r];e=!0;break;case"minDateTime":u=this._stringToObject(i[r]);o=this._getFormat(u,this.timePicker.model.timeFormat);this._isValidDate(u)?(this.datePicker.option("minDate",u),this.datePicker.model.value&&this.datePicker.model.value.toDateString()==this.datePicker.model.minDate.toDateString()&&this.timePicker.option("minTime",o),i[r]=u,this.model.minDateTime=u):i[r]=this.model[r];e=!0;break;case"maxDateTime":u=this._stringToObject(i[r]);s=this._getFormat(i[r],this.timePicker.model.timeFormat);this._isValidDate(u)?(this.datePicker.option("maxDate",u),this.datePicker.model.value&&this.datePicker.model.value.toDateString()==this.datePicker.model.maxDate.toDateString()&&this.timePicker.option("maxTime",s),i[r]=u,this.model.maxDateTime=u):i[r]=this.model[r];e=!0;break;case"height":this.wrapper.height(i[r]);break;case"width":this.wrapper.width(i[r]);break;case"dateTimeFormat":this.model.dateTimeFormat=i[r];this.isValidState&&this._setValue(this.model.value);break;case"showPopupButton":this._showButton(i[r]);break;case"watermarkText":t.isNullOrUndefined(this._options)&&(this._options={});this._options[r]=this.model.watermarkText=i[r];this._localizedLabels.watermarkText=this.model.watermarkText;this._setWaterMark();break;case"buttonText":t.isNullOrUndefined(this._options)||(this._options.buttonText=this.model.buttonText=i[r]);this._localizedLabels.buttonText=this.model.buttonText;this._buttonText(i[r]);break;case"interval":this._updateTimeHeight();this.timePicker.option("interval",i[r]);break;case"timeDisplayFormat":this._updateTimeHeight();this.timePicker.option("timeFormat",i[r]);break;case"disableDateTimeRanges":this._disabledDate&&(this._disabledDates=!1);this.model.disableDateTimeRanges=i[r];this._setValue(this.model.value);break;case"disableTimeRanges":this.model.disableTimeRanges=i[r];this.timePicker.option("disableTimeRanges",this.model.disableTimeRanges);break;case"timePopupWidth":this._updateTimeHeight();f=i[r];i[r]=typeof f=="string"&&f.indexOf("%")!=-1||typeof f=="string"?parseInt(f)>0?f:105:f>0?f:105;this.timePicker.option("popupWidth",i[r]);break;case"dayHeaderFormat":this.datePicker.option("dayHeaderFormat",i[r]);break;case"startLevel":this.datePicker.option("startLevel",i[r]);break;case"depthLevel":this.datePicker.option("depthLevel",i[r]);break;case"startDay":this.datePicker.option("startDay",i[r]);this.model.startDay=this.datePicker.model.startDay;i[r]=this.model.startDay;break;case"stepMonths":this.datePicker.option("stepMonths",i[r]);break;case"showOtherMonths":this.datePicker.option("showOtherMonths",i[r]);break;case"highlightWeekend":this.datePicker.option("highlightWeekend",i[r]);break;case"specialDates":this.datePicker.option("specialDates",i[r]);this.model.specialDates=this.datePicker.model.specialDates;break;case"headerFormat":this.datePicker.option("headerFormat",i[r]);break;case"htmlAttributes":this._addAttr(i[r]);break;case"popupPosition":this.model.popupPosition=i[r];this._setListPosition();break;case"timeDrillDown":t.isNullOrUndefined(i[r].enabled)||(this.model.timeDrillDown.enabled=i[r].enabled,this._changeDesign());t.isNullOrUndefined(i[r].interval)||(this.model.timeDrillDown.interval=i[r].interval,this._generateMins(n.trim(t.format(this.timePicker._createObject(this._datetimeValue),"HH:00",this.model.locale))));t.isNullOrUndefined(i[r].showMeridian)||(this.model.timeDrillDown.showMeridian=i[r].showMeridian,this._sfTimeHour.empty(),this._renderHourTable());t.isNullOrUndefined(i[r].showFooter)||(this.model.timeDrillDown.showFooter=i[r].showFooter,this._changeDesign())}}e&&this._validateMinMax();this._valueChange(!0);r=="value"&&(i[r]=this.model.value);this.popup&&this._updateTimeHeight();this._checkErrorClass()},observables:["value"],_destroy:function(){this.isPopupOpen&&this._hideResult();this.wrapper&&(this.element.insertAfter(this.wrapper),this.wrapper.remove());this.element.removeClass("e-js e-input").removeClass(t.util.getNameSpace(this.sfType));this.element.removeAttr(" type aria-atomic aria-live tabindex aria-expanded aria-disabled placeholder role");this._cloneElement[0].hasAttribute("name")||this.element.removeAttr("name");t.isNullOrUndefined(this.datePicker)||this.datePicker.destroy();t.isNullOrUndefined(this.timePicker)||this.timePicker.destroy();this.popup&&this.popup.remove()},_initDisableTimeRanges:function(n){for(var e,o,h,c,f,u,r,s=this._getDateObj(n,this.datePicker.model.dateFormat),i=0;i<this.model.disableDateTimeRanges.length;i++)if(t.isNullOrUndefined(this.model.disableDateTimeRanges[i].endDateTime)&&(this.model.disableDateTimeRanges[i].endDateTime=this.model.disableDateTimeRanges[i].startDateTime),this.model.disableDateTimeRanges[i].startDateTime instanceof Date||this.model.disableDateTimeRanges[i].endDateTime instanceof Date?(e=this._getFormat(this.model.disableDateTimeRanges[i].startDateTime,this.datePicker.model.dateFormat),o=this._getFormat(this.model.disableDateTimeRanges[i].endDateTime,this.datePicker.model.dateFormat)):(e=this.model.disableDateTimeRanges[i].startDateTime.split(" ")[0],o=this.model.disableDateTimeRanges[i].endDateTime.split(" ")[0]),h=new Date(this.model.disableDateTimeRanges[i].startDateTime),c=new Date(this.model.disableDateTimeRanges[i].endDateTime),e==o){if(this._compare(s,this._setEmptyTime(this.model.disableDateTimeRanges[i].startDateTime))){var u=this._getFormat(h,this.timePicker.model.timeFormat),r=this._getFormat(c,this.timePicker.model.timeFormat),f=[];f.push({startTime:u,endTime:r});this.timePicker.option("disableTimeRanges",f);return}this.timePicker.option("disableTimeRanges",this._defaultMinVal());this._disabledDates||this.model.disableDateTimeRanges[i].endDateTime!=this.model.disableDateTimeRanges[i].startDateTime||this.model.disableDateTimeRanges[i].endDateTime instanceof Date==!1&&this._getFormat(this.model.disableDateTimeRanges[i].endDateTime,this.model.dateTimeFormat)==this._getFormat(this.model.disableDateTimeRanges[i].endDateTime,this.model.dateFormat)&&t.isNullOrUndefined(this.model.disableDateTimeRanges[i].endDateTime.split(" ")[1])&&this._between.push(new Date(this.model.disableDateTimeRanges[i].endDateTime))}else if(e!=o){if(this._compare(s,this._setEmptyTime(this.model.disableDateTimeRanges[i].startDateTime))||this._compare(s,this._setEmptyTime(this.model.disableDateTimeRanges[i].endDateTime))){u=this.timePicker.model.minTime;r=this.timePicker.model.maxTime;this.datePicker.model.value.toDateString()==new Date(this.model.disableDateTimeRanges[i].startDateTime).toDateString()&&(u=this._getFormat(new Date(this.model.disableDateTimeRanges[i].startDateTime),this.timePicker.model.timeFormat));this.datePicker.model.value.toDateString()==new Date(this.model.disableDateTimeRanges[i].endDateTime).toDateString()&&(r=this._getFormat(new Date(this.model.disableDateTimeRanges[i].endDateTime),this.timePicker.model.timeFormat));f=[];f.push({startTime:u,endTime:r});this.timePicker.option("disableTimeRanges",f);return}this._disabledDates||(u=this._getFormat(new Date(this.model.disableDateTimeRanges[i].startDateTime),this.timePicker.model.timeFormat),r=this._getFormat(new Date(this.model.disableDateTimeRanges[i].endDateTime),this.timePicker.model.timeFormat),u==this.timePicker.model.minTime&&this._between.push(new Date(this.model.disableDateTimeRanges[i].startDateTime)),this.model.disableDateTimeRanges[i].endDateTime instanceof Date==!1&&this._getFormat(this.model.disableDateTimeRanges[i].endDateTime,this.model.dateTimeFormat)==this._getFormat(new Date(this.model.disableDateTimeRanges[i].endDateTime),this.datePicker.model.dateFormat)&&(r=this.timePicker.model.maxTime),r==this.timePicker.model.maxTime&&this._between.push(new Date(this.model.disableDateTimeRanges[i].endDateTime)))}},_disableBetweenDates:function(){for(var n=0;n<this.model.disableDateTimeRanges.length;n++)for(var r=this.model.disableDateTimeRanges[n].startDateTime,t=this._setEmptyTime(r),f=this._getFormat(new Date(this.model.disableDateTimeRanges[n].startDateTime),this.timePicker.model.timeFormat),e=this._getFormat(new Date(this.model.disableDateTimeRanges[n].endDateTime),this.timePicker.model.timeFormat),u=this.model.disableDateTimeRanges[n].endDateTime,i=this._setEmptyTime(u);t<i;)t.setDate(t.getDate()+1),new Date(t)<i&&this._between.push(new Date(t));this._datesDisabled=!0},_init:function(n){if(this._cloneElement=this.element.clone(),!this.element.is("input")||this.element.attr("type")&&this.element.attr("type")!="text")return!1;this._options=n;this._ISORegex();this._isSupport=document.createElement("input").placeholder==i?!1:!0;this._validateMeridian();this._checkAttribute();this._initialize();this._initial=!0;this._interval=60;this._render();this._wireEvents();this._addAttr(this.model.htmlAttributes);t.isNullOrUndefined(n)||t.isNullOrUndefined(n.validationMessage)||(this.model.validationMessages=this.model.validationMessage);this.model.validationRules!=null&&(this._initValidator(),this._setValidation());this._removeWatermark();n&&n.value!=i&&n.value!=this.element.val()&&this._trigger("_change",{value:this.element.val()})},_ISORegex:function(){this._tokens=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;this._extISORegex=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/;this._basicISORegex=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/;this._numberRegex={2:/\d\d?/,4:/^\d{4}/,z:/Z|[+-]\d\d(?::?\d\d)?/gi,t:/T/,"-":/\-/,":":/:/};this._zeroRegex=/Z|[+-]\d\d(?::?\d\d)?/;this._dates=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]];this._times=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]]},_changeDesign:function(){if(this.model.timeDrillDown.enabled){var t=this.model.timeDrillDown.showFooter?"block":"none";this.popup.addClass("e-drill-down");this._timeContainer.css("display","none");this._buttonContainer.css("display","none");this.datePicker.option("showFooter",this.model.timeDrillDown.showFooter);n(".e-footer",this._sfTimeHour).css("display",t);n(".e-footer",this._sfTimeMins).css("display",t)}else this.popup.removeClass("e-drill-down"),this._sfTimeHour.hide(),this._sfTimeMins.hide(),this._updateTimeHeight(),this._dateContainer.show(),this._timeContainer.show(),this._buttonContainer.show(),this.datePicker.option("showFooter",!1),this.timePicker._refreshScroller(),this.timePicker._changeActiveEle()},_initValidator:function(){this.element.closest("form").data("validator")||this.element.closest("form").validate()},_checkAttribute:function(){this.model.value=this.model.value===""?this.element[0].value:this.model.value;this._options.minDateTime||(this.model.minDateTime=this.element[0].min);this._options.maxDateTime||(this.model.maxDateTime=this.element[0].max);t.isNullOrUndefined(this._options.readOnly)&&(this.model.readOnly=this.element.is("[readonly]"));t.isNullOrUndefined(this._options.enabled)&&(this.model.enabled=!this.element.is("[disabled]"))},_setValidation:function(){var r,f,i,u,e;this.element.rules("add",this.model.validationRules);r=this.element.closest("form").data("validator");r=r?r:this.element.closest("form").validate();f=this.element.attr("name");r.settings.messages[f]={};for(i in this.model.validationRules)if(u=null,!t.isNullOrUndefined(this.model.validationRules[i])){if(t.isNullOrUndefined(this.model.validationRules.messages&&this.model.validationRules.messages[i])){r.settings.messages[f][i]=n.validator.messages[i];for(e in this.model.validationMessages)i==e?u=this.model.validationMessages[i]:""}else u=this.model.validationRules.messages[i];r.settings.messages[f][i]=u!=null?u:n.validator.messages[i]}},_validateDisableRanges:function(){for(var t,n=0;n<this.model.disableDateTimeRanges.length;n++)t=this.model.value,new Date(this.model.value).getTime()>=new Date(this.model.disableDateTimeRanges[n].startDateTime).getTime()&&new Date(this.model.value).getTime()<=new Date(this.model.disableDateTimeRanges[n].endDateTime).getTime()&&(this.model.value=null),this.model.value==null&&t!=null&&this.model.enableStrictMode&&(this.isValidState=!1),this.isValidState&&this.element.val(this._getFormat(this.model.value,this.model.dateTimeFormat))},_addAttr:function(i){var r=this;n.map(i,function(n,i){var u=i.toLowerCase();u=="class"?r.wrapper.addClass(n):u=="disabled"?r._enabled(!1):u=="readOnly"?r._readOnly(!0):u=="style"?r.wrapper.attr(i,n):u=="id"?(r.wrapper.attr(i,n+"_wrapper"),r.element.attr(i,n)):t.isValidAttr(r.element[0],u)?r.element.attr(u,n):r.wrapper.attr(u,n)})},_validateMeridian:function(){var n=t.preferredCulture(this.model.locale);n&&(this.model.locale=n.name=="en"?"en-US":n.name);t.isNullOrUndefined(this._options)?this.model.timeDrillDown.showMeridian=t.isNullOrUndefined(t.preferredCulture(this.model.locale).calendars.standard.AM)?!1:!0:t.isNullOrUndefined(this._options.timeDrillDown)?this.model.timeDrillDown.showMeridian=t.isNullOrUndefined(t.preferredCulture(this.model.locale).calendars.standard.AM)?!1:!0:t.isNullOrUndefined(this._options.timeDrillDown.showMeridian)&&(this.model.timeDrillDown.showMeridian=t.isNullOrUndefined(t.preferredCulture(this.model.locale).calendars.standard.AM)?!1:!0)},_initialize:function(){var i,r,u,f;this.popup=null;this.isPopupOpen=!1;this.isValidState=!0;this._localizedLabels=this._getLocalizedLabels();t.isNullOrUndefined(this._options)||(t.isNullOrUndefined(this._options.buttonText)||n.extend(this._localizedLabels.buttonText,this._options.buttonText),t.isNullOrUndefined(this._options.watermarkText)||(this._localizedLabels.watermarkText=this._options.watermarkText));this._localizedLabelToModel();this.model.startDay==-1&&(this.model.startDay=t.preferredCulture(this.model.locale).calendar.firstDay);this._isIE8=t.browserInfo().name=="msie"&&t.browserInfo().version=="8.0"?!0:!1;this._isIE9=t.browserInfo().name=="msie"&&t.browserInfo().version=="9.0"?!0:!1;this.model.dateTimeFormat&&this.model.timeDisplayFormat||this._getDateTimeFormat();this.model.value&&(typeof JSON!="object"||JSON.stringify(this.model.value)!=="{}")?this.model.value instanceof Date?i=this.model.value:(r=t.parseDate(this.model.value,this.model.dateTimeFormat,this.model.locale),i=r?r:(r=this._checkJSONString(this.model.value))?r:null):i=null;i&&(this.model.value=i);u=this.model.minDateTime=this._stringToObject(this.model.minDateTime);u&&this._isValidDate(u)||(this.model.minDateTime=this.defaults.minDateTime);f=this.model.maxDateTime=this._stringToObject(this.model.maxDateTime);f&&this._isValidDate(f)||(this.model.maxDateTime=this.defaults.maxDateTime)},_checkJSONString:function(n){var i=new Date(n),r;if(isNaN(Date.parse(i))){if(this._extISORegex.exec(n)||this._basicISORegex.exec(n))return this._dateFromISO(n)}else if(i.toJSON()===this.model.value||i.toGMTString()===this.model.value||i.toISOString()===this.model.value||i.toLocaleString()===this.model.value||i.toString()===this.model.value||i.toUTCString()===this.model.value){if(this.model.timeZone)return new Date(new Date(i).getTime()+t.serverTimezoneOffset*36e5);if(n.match(/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(\.\d+)?(([+-]\d\d:\d\d)|Z)?$/i)&&n.match(/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(\.\d+)?(([+-]\d\d:\d\d)|Z)?$/i).length>0)return r=n.split("Z"),r=r[0],new Date(r)}else if(typeof n=="string")return this._dateFromISO(n)},_render:function(){this._renderWrapper();this._renderIcon();this._setDimentions();this._checkProperties()},_renderWrapper:function(){if(this.element.addClass("e-input").attr({"aria-atomic":"true","aria-live":"assertive",tabindex:"0",role:"combobox","aria-expanded":"false"}),this.wrapper=t.buildTag("span.e-datetime-wrap e-widget "+this.model.cssClass+"#"+this.element[0].id+"_wrapper").insertAfter(this.element),this._setValue(this.model.value),this.wrapper.attr("style",this.element.attr("style")),this.element.removeAttr("style"),t.isTouchDevice()||this.wrapper.addClass("e-ntouch"),this.container=t.buildTag("span.e-in-wrap e-box").append(this.element),this.wrapper.append(this.container),!this._isSupport){this._hiddenInput=t.buildTag("input.e-input e-placeholder ","",{},{type:"text"}).insertAfter(this.element);this._hiddenInput.val(this._localizedLabels.watermarkText);this._hiddenInput.css("display","block");var i=this;n(this._hiddenInput).focus(function(){i.element.focus()})}},_removeWatermark:function(){this.element.val()!=""&&!this._isSupport&&this._hiddenInput&&this._hiddenInput.css("display","none")},_renderIcon:function(){if(!this.model.showPopupButton)return!1;this.datetimeIcon=t.buildTag("span.e-select","",{}).attr(this._isIE8?{unselectable:"on"}:{});var n=t.buildTag("span.e-icon e-datetime","",{},{"aria-label":"select"}).attr(this._isIE8?{unselectable:"on"}:{});this.datetimeIcon.append(n);this.container.append(this.datetimeIcon).addClass("e-padding");this._on(this.datetimeIcon,"click",this._iconClick);this._on(this.datetimeIcon,"mousedown",function(n){n.preventDefault()})},_setDimentions:function(){this.model.height||(this.model.height=this.element.attr("height"));this.model.width||(this.model.width=this.element.attr("width"));this.wrapper.height(this.model.height);this.wrapper.width(this.model.width)},_renderDropdown:function(){var f=n("#"+this.element[0].id+"_popup").get(0),e,o,i,r,u;f&&n(f).remove();this.popup=t.buildTag("div.e-datetime-popup e-popup e-widget e-box "+this.model.cssClass+"#"+this.element[0].id+"_popup").css("visibility","hidden");t.isTouchDevice()||this.popup.addClass("e-ntouch");n("body").append(this.popup);this._renderControls();e=t.buildTag("div.e-header",this._localizedLabels.buttonText.timeTitle).attr(this._isIE8?{unselectable:"on"}:{});this._dateContainer=t.buildTag("div.e-datecontainer").append(this.datePicker.popup).attr(this._isIE8?{unselectable:"on"}:{});this._timeContainer=t.buildTag("div.e-timecontainer").append(e,this.timePicker.popup).attr(this._isIE8?{unselectable:"on"}:{});this._drillDownContainer=t.buildTag("div.e-drillDowncontainer").append().attr(this._isIE8?{unselectable:"on"}:{});o=t.buildTag("div.e-popup-container").append(this._dateContainer,this._timeContainer,this._drillDownContainer).attr(this._isIE8?{unselectable:"on"}:{});i=t.buildTag("div.e-dt-button e-dt-today e-btn e-select e-flat",this._localizedLabels.buttonText.today).attr(this._isIE8?{unselectable:"on"}:{});r=t.buildTag("div.e-dt-button e-dt-now e-btn e-select e-flat",this._localizedLabels.buttonText.timeNow).attr(this._isIE8?{unselectable:"on"}:{});u=t.buildTag("div.e-dt-button e-dt-done e-btn e-select e-flat",this._localizedLabels.buttonText.done).attr(this._isIE8?{unselectable:"on"}:{});this._buttonContainer=t.buildTag("div.e-button-container").append(i,r,u).attr(this._isIE8?{unselectable:"on"}:{});this._renderDrillDown();this.popup.append(o,this._buttonContainer);this._checkForResponsive();this._updateTimeHeight();this._bindOperations();this._updateValues();this.popup.css({visibility:"visible",display:"none"});this._on(i,"click",this._todayClick);this._on(r,"click",this._nowClick);this._on(u,"click",this._doneClick);this.popup.on("mouseenter touchstart",n.proxy(function(){this._popClose=!0},this));this.popup.on("mouseleave touchend",n.proxy(function(){this._popClose=!1},this));this._changeDesign()},_renderControls:function(){this._renderDateControl();this._renderTimeControl();var n=t.buildTag("span").append(this.datePicker.wrapper,this.timePicker.wrapper);n.find("span").css("display","none");this.popup.append(n)},_renderDrillDown:function(){this._renderHourPopup();this._renderMinsPopup()},_renderHourPopup:function(){this._sfTimeHour=t.buildTag("div.e-timepicker e-popup e-widget "+this.model.cssClass+" e-time-hours ","",{},{id:this._id?"e-hours-"+this._id:""}).attr({"aria-hidden":"true"}).attr(this._isIE8?{unselectable:"on"}:{});t.isTouchDevice()||this._sfTimeHour.addClass("e-ntouch");this._drillDownContainer.append(this._sfTimeHour);this._renderHourTable()},_renderHourTable:function(){var i,o,a,v,s,u,y,p,r,w,l,e;if(t.buildTag("div.e-header").attr(this._isIE8?{unselectable:"on"}:{}).append(t.buildTag("span.e-prev").append(t.buildTag("a.e-icon e-arrow-sans-left").attr({role:"button"}).attr(this._isIE8?{unselectable:"on"}:{}))).append(t.buildTag("span.e-text").append(t.buildTag("span.e-hours-headertext").text("October 2015").attr({"aria-atomic":"true","aria-live":"assertive",role:"heading"}).attr(this._isIE8?{unselectable:"on"}:{}))).append(t.buildTag("span.e-next").append(t.buildTag("a.e-icon e-arrow-sans-right").attr({role:"button"}).attr(this._isIE8?{unselectable:"on"}:{}))).appendTo(this._sfTimeHour),this._interval<1)return!1;y=this._interval*6e4;p=this.model.timeDrillDown.showMeridian?2:1;v=this.model.timeDrillDown.showMeridian?6:4;var b=this.model.timeDrillDown.showMeridian?"hh":"HH:00",h=["AM","PM"],c=0,f="";for(i=this.timePicker._createObject("12:00:00 AM"),o=this.model.timeDrillDown.showMeridian?this.timePicker._createObject("11:59:59 AM"):this.timePicker._createObject("11:59:59 PM"),r=0;r<p;r++){for(this.model.timeDrillDown.showMeridian&&(f=h[r].toLowerCase(),w=t.isNullOrUndefined(t.preferredCulture(this.model.locale).calendars.standard[h[r]])?"":t.preferredCulture(this.model.locale).calendars.standard[h[r]][0],t.buildTag("div.e-header-"+f).attr(this._isIE8?{unselectable:"on"}:{}).append(t.buildTag("span.e-text").append(t.buildTag("span.e-hours-meridiantxt-"+f).text(w).attr({"aria-atomic":"true","aria-live":"assertive",role:"heading"}).attr(this._isIE8?{unselectable:"on"}:{}))).appendTo(this._sfTimeHour)),s=t.buildTag("table.e-dp-viewhours","",{}).data("e-table","data").attr({role:"grid"}).attr(this._isIE8?{unselectable:"on"}:{}),this._sfTimeHour.append(s),l=t.buildTag("tbody.e-timepicker-hours").attr(this._isIE8?{unselectable:"on"}:{}),u=t.buildTag("tr","").attr(this._isIE8?{unselectable:"on"}:{});this.timePicker._compareTime(o,i,!0);)a=this._localizeTime(i,b),e=t.buildTag("td.e-hour e-state-default",a),this.model.timeDrillDown.showMeridian&&e.addClass("e-hour-"+f),this._isIE8&&e.attr("unselectable","on"),u.append(e),c++,c>=v&&(c=0,l.append(u),u=t.buildTag("tr","").attr(this._isIE8?{unselectable:"on"}:{})),i=this.timePicker._createObject(i).getTime()+y;s.append(l);this.model.timeDrillDown.showMeridian&&(i=this.timePicker._createObject("12:00:00 PM"),o=this.timePicker._createObject("11:59:59 PM"))}t.buildTag("div.e-footer").append(t.buildTag("span.e-footer-icon")).append(t.buildTag("span.e-footer-text")).appendTo(this._sfTimeHour);n(".e-footer-text",this._sfTimeHour).html(this._localizedLabels.buttonText.timeNow);n(".e-hours-headertext",this._sfTimeHour).text(t.format(this.datePicker.model.value,"dd MMM yyyy"));this._on(this._sfTimeHour.find(".e-hour"),"click",n.proxy(this._hourNavHandler,this));this._on(n(".e-next",this._sfTimeHour),"click",n.proxy(this._prevNextHourHandler,this));this._on(n(".e-prev",this._sfTimeHour),"click",n.proxy(this._prevNextHourHandler,this));this._on(n(".e-footer",this._sfTimeHour),"click",this._todayBtn);n(".e-hours-headertext",this._sfTimeHour).on("click",n.proxy(this._forwardNavHandler,this));this._sfTimeHour.hide()},_localizeTime:function(i,r){return n.trim(t.format(this.timePicker._createObject(i),r,this.model.locale))},_renderMinsPopup:function(){var r,e,i,s,h,c,u,f,o;if(this._sfTimeMins=t.buildTag("div.e-timepicker e-popup e-widget "+this.model.cssClass+" e-time-minitues ","",{},{id:this._id?"e-time-minitues-"+this._id:""}).attr({"aria-hidden":"true"}).attr(this._isIE8?{unselectable:"on"}:{}),t.isTouchDevice()||this._sfTimeMins.addClass("e-ntouch"),this._drillDownContainer.append(this._sfTimeMins),t.buildTag("div.e-header").attr(this._isIE8?{unselectable:"on"}:{}).append(t.buildTag("span.e-prev").append(t.buildTag("a.e-icon e-arrow-sans-left").attr({role:"button"}).attr(this._isIE8?{unselectable:"on"}:{}))).append(t.buildTag("span.e-text").append(t.buildTag("span.e-minitues-headertext").attr({"aria-atomic":"true","aria-live":"assertive",role:"heading"}).attr(this._isIE8?{unselectable:"on"}:{}))).append(t.buildTag("span.e-next").append(t.buildTag("a.e-icon e-arrow-sans-right").attr({role:"button"}).attr(this._isIE8?{unselectable:"on"}:{}))).appendTo(this._sfTimeMins),t.buildTag("div.e-mins-header").attr(this._isIE8?{unselectable:"on"}:{}).append(t.buildTag("span.e-text").append(t.buildTag("span.e-minitues-meridiantxt").text("AM").attr({"aria-atomic":"true","aria-live":"assertive",role:"heading"}).attr(this._isIE8?{unselectable:"on"}:{}))).appendTo(this._sfTimeMins),r=t.buildTag("table.e-dp-viewmins","",{}).data("e-table","data").attr({role:"grid"}).attr(this._isIE8?{unselectable:"on"}:{}),this._sfTimeMins.append(r),e=t.buildTag("tbody.e-timepicker-mins").attr(this._isIE8?{unselectable:"on"}:{}),this._intervall<1)return!1;for(c=this._interval*6e4,i=this.timePicker._createObject("12:00:00 AM"),s=this.timePicker._createObject("11:59:59 PM"),u=t.buildTag("tr","").attr(this._isIE8?{unselectable:"on"}:{}),f=0;this.timePicker._compareTime(s,i,!0);)h=this._localizeTime(i,"HH:00"),o=t.buildTag("td.e-mins e-state-default",h),this._isIE8&&o.attr("unselectable","on"),u.append(o),f++,f>=4&&(f=0,e.append(u),u=t.buildTag("tr","").attr(this._isIE8?{unselectable:"on"}:{})),i=this.timePicker._createObject(i).getTime()+c;r.append(e);n(".e-minitues-headertext",this._sfTimeMins).text(n(".e-hours-headertext",this._sfTimeHour).text());t.buildTag("div.e-footer").append(t.buildTag("span.e-footer-icon")).append(t.buildTag("span.e-footer-text")).appendTo(this._sfTimeMins);n(".e-footer-text",this._sfTimeMins).html(this._localizedLabels.buttonText.timeNow);n(".e-minitues-headertext",this._sfTimeMins).text(t.format(this.datePicker.model.value,"dd MMM yyyy"));this.model.timeDrillDown.showMeridian||n(".e-mins-header",this._sfTimeMins).css("display","none");this._on(r.find(".e-mins"),"click",n.proxy(this._minsNavHandler,this));this._on(n(".e-next",this._sfTimeMins),"click",n.proxy(this._prevNextMinsHandler,this));this._on(n(".e-prev",this._sfTimeMins),"click",n.proxy(this._prevNextMinsHandler,this));this._on(n(".e-footer",this._sfTimeMins),"click",this._todayBtn);n(".e-minitues-headertext",this._sfTimeMins).on("click",n.proxy(this._forwardNavHandler,this));this._sfTimeMins.hide()},_todayBtn:function(){this._nowClick();this._hideResult()},_hourNavHandler:function(i){var r,f;if(this.model.readOnly||!this.model.enabled||i&&n(i.target).hasClass("e-disable"))return!1;i&&i.type&&i.preventDefault();n("table",this._sfTimeHour).find("td").removeClass("e-active");n(i.target).addClass("e-active");this._sfTimeHour.hide();this._sfTimeMins.show();this._addFocus(this._sfTimeMins);this.model.timeDrillDown.showMeridian?(f=n(i.target).hasClass("e-hour-am")?"AM":"PM",r=n(i.target).text()+":00 "+f):r=n(i.target).text();this._generateMins(r);var e=new Date(this._datetimeValue.toString()).setMinutes(this.model.value.getMinutes()),o=n.trim(t.format(this.timePicker._createObject(e),"HH:mm",this.model.locale)),s=n.trim(t.format(this.timePicker._createObject(e),"HH:00",this.model.locale)),u=(this.timePicker._parse(o)-this.timePicker._parse(s))/(this.model.timeDrillDown.interval*6e4);u=Math.ceil(u);this._hoverMins=this._setFocusByIndex("mins",u,this._sfTimeMins)},_minsNavHandler:function(i){if(this.model.readOnly||!this.model.enabled||i&&n(i.target).hasClass("e-disable"))return!1;if(i&&i.type&&i.preventDefault(),n("table",this._sfTimeMins).find("td").removeClass("e-active").removeClass("e-state-hover"),n(i.target).addClass("e-active"),this.model.timeDrillDown.showMeridian){var r=n(i.target).text()+" "+t.format(this._datetimeValue,"tt","en-US");r=this.timePicker._localizeTime(r)}else r=n(i.target).text();this.timePicker.option("value",r);this.datePicker.option("value",this._datetimeValue);this._datetimeValue=new Date(this.model.value.toString());this._updateInput();this.model.timeDrillDown.autoClose&&this._hideResult(i)},_generateMins:function(i){var f=n("table",this._sfTimeMins),h,s;f.empty();this.model.timeDrillDown.showMeridian?n(".e-mins-header",this._sfTimeMins).show():n(".e-mins-header",this._sfTimeMins).hide();h=this.model.timeDrillDown.showMeridian?"hh:mm":"HH:mm";n(".e-minitues-headertext",this._sfTimeMins).text(n(".e-hours-headertext",this._sfTimeHour).text());var e=t.buildTag("tbody.e-timepicker-mins").attr(this._isIE8?{unselectable:"on"}:{}),r,u,c,l,o=0,a=this.model.timeDrillDown.interval*6e4;for(r=this.timePicker._createObject(i),this._datetimeValue.setHours(r.getHours()),c=this.timePicker._createObject(r).getTime()+354e4,u=t.buildTag("tr","").attr(this._isIE8?{unselectable:"on"}:{}),e.append(u);this.timePicker._compareTime(c,r,!0);)o>=4&&(o=0,u=t.buildTag("tr","").attr(this._isIE8?{unselectable:"on"}:{}),e.append(u)),l=this._localizeTime(r,h),s=t.buildTag("td.e-mins e-state-default",l),this._isIE8&&s.attr("unselectable","on"),u.append(s),o++,r=this.timePicker._createObject(r).getTime()+a;f.append(e);n(".e-mins-header",this._sfTimeMins).find(".e-minitues-meridiantxt").text(t.format(this._datetimeValue,"tt",this.model.locale));this._disableRange("mins");this._on(f.find(".e-mins"),"click",n.proxy(this._minsNavHandler,this))},_prevNextHourHandler:function(t){if(this.model.readOnly||!this.model.enabled)return!1;t.preventDefault();var i=n(t.target).is("a")?n(t.target.parentNode):n(t.target),r=i.hasClass("e-prev")?!0:!1;this._processNextPrev(r,this._sfTimeHour)},_prevNextMinsHandler:function(t){if(this.model.readOnly||!this.model.enabled)return!1;t.preventDefault();var i=n(t.target).is("a")?n(t.target.parentNode):n(t.target),r=i.hasClass("e-prev")?!0:!1;this._processNextPrev(r,this._sfTimeMins)},_processNextPrev:function(i,r){var e,o,u,s;if(i&&r.find(".e-arrow-sans-left").hasClass("e-disable")||!i&&r.find(".e-arrow-sans-right").hasClass("e-disable"))return!1;e=n("table",r);s=e.get(0).className;switch(s){case"e-dp-viewhours":u=i?-1:1;this._datetimeValue.setDate(this._datetimeValue.getDate()+u);this._disableRange("hour");this._hoverHour=this._setFocusByIndex("hour",this._hoverHour,this._sfTimeHour);n(".e-hours-headertext",this._sfTimeHour).text(t.format(this._datetimeValue,"dd MMM yyyy"));n(".e-minitues-headertext",this._sfTimeMins).text(t.format(this._datetimeValue,"dd MMM yyyy"));break;case"e-dp-viewmins":u=i?-1:1;this._datetimeValue.setHours(this._datetimeValue.getHours()+u);this._generateMins(n.trim(t.format(this.timePicker._createObject(this._datetimeValue),"HH:00",this.model.locale)));var o=new Date(this._datetimeValue.toString()).setMinutes(this.model.value.getMinutes()),h=n.trim(t.format(this.timePicker._createObject(o),"HH:mm",this.model.locale)),c=n.trim(t.format(this.timePicker._createObject(o),"HH:00",this.model.locale)),f=(this.timePicker._parse(h)-this.timePicker._parse(c))/(this.model.timeDrillDown.interval*6e4);f=Math.ceil(f);this._disableRange("mins");this._hoverMins=this._setFocusByIndex("mins",f,this._sfTimeMins);n(".e-hours-headertext",this._sfTimeHour).text(t.format(this._datetimeValue,"dd MMM yyyy"));n(".e-minitues-headertext",this._sfTimeMins).text(t.format(this._datetimeValue,"dd MMM yyyy"))}},_forwardNavHandler:function(i,r){var f,e;if(this.model.readOnly||!this.model.enabled)return!1;e=this;i&&i.preventDefault();f=i?n(i.currentTarget).get(0).className:r.find(".e-text>span").get(0).className;switch(f){case"e-hours-headertext":this._sfTimeHour.css("display","none");this._dateContainer.css("display","block");this._addFocus(this._dateContainer.find(".e-datepicker"));break;case"e-minitues-headertext":this._sfTimeMins.css("display","none");this._disableRange("hour");var o=this._localizeTime(this.timePicker._createObject("12:00:00 AM"),"HH:00"),s=n.trim(t.format(this.timePicker._createObject(this._datetimeValue),"HH:00",this.model.locale)),u=(this.timePicker._parse(s)-this.timePicker._parse(o))/(this._interval*6e4);u=Math.floor(u);this._hoverHour=this._setFocusByIndex("hour",u,this._sfTimeHour);n(".e-hours-headertext",this._sfTimeHour).text(t.format(this._datetimeValue,"dd MMM yyyy"));n(".e-minitues-headertext",this._sfTimeMins).text(t.format(this._datetimeValue,"dd MMM yyyy"));this._sfTimeHour.css("display","block");this._addFocus(this._sfTimeHour)}},_renderDateControl:function(){var n=t.buildTag("input#"+this.element[0].id+"_date","",{},{type:"text"});this.popup.append(n);n.ejDatePicker({height:"0px",width:"0px",displayInline:!0,showDateIcon:!1,showFooter:this.model.timeDrillDown.enabled?this.model.timeDrillDown.showFooter:!1,enableStrictMode:!0,buttonText:this._localizedLabels.buttonText.today,minDate:this._stringToObject(this.model.minDateTime),maxDate:this._stringToObject(this.model.maxDateTime),dayHeaderFormat:this.model.dayHeaderFormat,startLevel:this.model.startLevel,depthLevel:this.model.depthLevel,startDay:this.model.startDay,stepMonths:this.model.stepMonths,showOtherMonths:this.model.showOtherMonths,specialDates:this.model.specialDates,highlightWeekend:this.model.highlightWeekend,headerFormat:this.model.headerFormat,enabled:this.model.enabled,enableRTL:this.model.enableRTL,showRoundedCorner:this.model.showRoundedCorner,readOnly:this.model.readOnly,cssClass:this.model.cssClass,locale:this.model.locale});t.isNullOrUndefined(this.model.value)||(this._datetimeValue=new Date(this.model.value.toString()));this.datePicker=n.data("ejDatePicker");this._datetimeValue=new Date(this.datePicker._dateValue.toString());this.model.startDay=this.datePicker.model.startDay;this.datePicker._getInternalEvents=!0;this.datePicker._dt_drilldown=!0;this.datePicker.popup.css({position:"static",display:"block"})},_renderTimeControl:function(){var i=t.buildTag("input#"+this.element[0].id+"_time","",{},{type:"text"}),n,r,u,f;this.popup.append(i);n=this.model.timePopupWidth;r=typeof n=="string"&&n.indexOf("%")!=-1||typeof n=="string"?parseInt(n)>0?n:105&&(this.model.timePopupWidth=105):n>0?n:105&&(this.model.timePopupWidth=105);i.ejTimePicker({height:"0px",width:"0px",interval:this.model.interval,timeFormat:this.model.timeDisplayFormat,popupWidth:r,enabled:this.model.enabled,enableRTL:this.model.enableRTL,showRoundedCorner:this.model.showRoundedCorner,readOnly:this.model.readOnly,cssClass:this.model.cssClass,locale:this.model.locale,disableTimeRanges:this.model.disableTimeRanges});this.timePicker=i.data("ejTimePicker");this.timePicker._renderDropdown();this.timePicker.popup.css({position:"static",display:"block"});this.timePicker._getInternalEvents=!0;this.timePicker.showDropdown=!0;this.timePicker._dateTimeInternal=!0;u=this.model.minDateTime?this._stringToObject(this.model.minDateTime):this.defaults.minDateTime;f=this.model.maxDateTime?this._stringToObject(this.model.maxDateTime):this.defaults.maxDateTime},_updateTimeHeight:function(){var n=this.popup.find(".e-timecontainer .e-header").is(":visible")?this.datePicker.popup.height()-this.popup.find(".e-header").height():this.datePicker.popup.height();n=this.popup.hasClass("e-dt-responsive")?"98px":n;this.timePicker.option("popupHeight",n)},_bindOperations:function(){var n=this;this.datePicker.option("layoutChange",function(){n._updateTimeHeight()});this.datePicker.option("outOfRange",function(){n.isValidState=!1});this.timePicker.option("outOfRange",function(){n.isValidState=!1});this.datePicker.option("change",function(t){n._refreshTimes(t)});this.datePicker.option("select",function(t){n._updateInput(t)});this.datePicker.option("dt_drilldown",function(t){n.model.timeDrillDown.enabled&&(n._updateInput(t),n._switchToDrilDown(t))});this.timePicker.option("select",function(){n._updateInput()})},_switchToDrilDown:function(){var r;this._dateContainer.hide();this._sfTimeHour.show();this._addFocus(this._sfTimeHour);r=new Date(this.model.value.toString());this._datetimeValue=new Date(r.setHours(this._datetimeValue.getHours(),this._datetimeValue.getMinutes(),this._datetimeValue.getSeconds(),this._datetimeValue.getMilliseconds()));this._disableRange("hour");var u=this._localizeTime(this.timePicker._createObject("12:00:00 AM"),"HH:00"),f=n.trim(t.format(this.timePicker._createObject(this._datetimeValue),"HH:00",this.model.locale)),i=(this.timePicker._parse(f)-this.timePicker._parse(u))/(this._interval*6e4);i=Math.floor(i);this._hoverHour=this._setFocusByIndex("hour",i,this._sfTimeHour);n(".e-hours-headertext",this._sfTimeHour).text(t.format(this._datetimeValue,"dd MMM yyyy"));n(".e-minitues-headertext",this._sfTimeMins).text(t.format(this._datetimeValue,"dd MMM yyyy"))},_disableRange:function(i){var l=i=="hour"?this._interval:this.model.timeDrillDown.interval,u=i=="hour"?this._sfTimeHour:this._sfTimeMins,h=i=="hour"?"e-hide-hour e-disable":"e-hide-mins e-disable",c,e,r,a,f,o,s;if(u.find("tbody tr td.e-"+i).removeClass(h),u.find(".e-arrow-sans-left").removeClass("e-disable"),u.find(".e-arrow-sans-right").removeClass("e-disable"),c=i=="hour"?this._localizeTime(this.timePicker._createObject("12:00:00 AM"),"HH:00"):this._localizeTime(n.trim(t.format(this.timePicker._createObject(this._datetimeValue),"HH:00",this.model.locale)),"HH:00"),this._compareDate(this.model.minDateTime,this._datetimeValue)){if(i=="mins"&&!(this.model.minDateTime.getHours()===this._datetimeValue.getHours()))return!1;for(e=n.trim(t.format(this.timePicker._createObject(this.model.minDateTime),"HH:mm",this.model.locale)),r=(this.timePicker._parse(e)-this.timePicker._parse(c))/(l*6e4),r=i=="hour"?Math.floor(r):Math.ceil(r),f=0;f<r;f++)o=u.find("tbody tr td.e-"+i),s=o[f],n(s).addClass(h);u.find(".e-arrow-sans-left").addClass("e-disable")}if(this._compareDate(this.model.maxDateTime,this._datetimeValue)){if(i=="mins"&&!(this.model.maxDateTime.getHours()===this._datetimeValue.getHours()))return!1;for(e=n.trim(t.format(this.timePicker._createObject(this.model.maxDateTime),"HH:mm",this.model.locale)),r=(this.timePicker._parse(e)-this.timePicker._parse(c))/(l*6e4),r=Math.floor(r)+1,a=u.find("tbody tr td.e-"+i).length,f=r;f<a;f++)o=u.find("tbody tr td.e-"+i),s=o[f],n(s).addClass(h);u.find(".e-arrow-sans-right").addClass("e-disable")}},_setFocusByName:function(t,i,r){var f=r.find("tbody tr td.e-"+t),e,u;return n(f).each(function(n,t){if(t.innerHTML==i){e=n;return}}),u=f[e],u||(u=f.last()),r.find("table td").removeClass("e-state-hover").removeClass("e-active"),n(u).hasClass("e-hide-"+t)||n(u).addClass("e-state-hover"),this._setActiveState(t,r),e},_setFocusByIndex:function(t,i,r){var f=r.find("tbody tr td.e-"+t),u;return u=f[i],u||(u=f.last()),r.find("table td").removeClass("e-state-hover").removeClass("e-active"),n(u).hasClass("e-hide-"+t)||n(u).addClass("e-state-hover"),this._setActiveState(t,r),i},_setActiveState:function(i,r){var h=r.find("tbody tr td.e-"+i),f,l=this,u=-1,o,e;switch(i){case"hour":this._compareDate(this.model.value,this._datetimeValue)&&(o=this._localizeTime(this.timePicker._createObject("12:00:00 AM"),"HH:00"),e=n.trim(t.format(this.timePicker._createObject(this.model.value),"HH:00",this.model.locale)),u=(this.timePicker._parse(e)-this.timePicker._parse(o))/(this._interval*6e4),u=Math.floor(u));break;case"mins":if(this._compareDate(this.model.value,this._datetimeValue)&&this.model.value.getHours()===this._datetimeValue.getHours()){var s=new Date(this._datetimeValue.toString()).setMinutes(this.model.value.getMinutes()),e=n.trim(t.format(this.timePicker._createObject(s),"HH:mm",this.model.locale)),c=n.trim(t.format(this.timePicker._createObject(s),"HH:00",this.model.locale));u=(this.timePicker._parse(e)-this.timePicker._parse(c))/(this.model.timeDrillDown.interval*6e4);u=Math.ceil(u)}}f=h[u];f&&(r.find("table td").removeClass("e-active"),n(f).removeClass("e-state-hover").addClass("e-active"))},_compareDate:function(n,t){var i=new Date(n.toString()).setHours(0,0,0,0),r=new Date(t.toString()).setHours(0,0,0,0);return+i==+r?!0:!1},_updateInput:function(n){var r=+new Date<+this.model.minDateTime||+new Date>+this.model.maxDateTime?this.model.minDateTime:(new Date).setHours(0,0,0,0),t=this._getDate()||new Date(r),i=this._getTime()||this.timePicker._createObject(r);this.model.value=new Date(t.getFullYear(),t.getMonth(),t.getDate(),i.getHours(),i.getMinutes(),i.getSeconds());this._updateDateTime();this._raiseChangeEvent();this._updateModel(n,!0);n&&(n.cancel=!0)},_updateDateTime:function(){this.isValidState=!0;var n=this._objectToString(this.model.value);this.element.val(n);this._removeWatermark()},_refreshTimes:function(n){var i=this._getDateObj(n.value,this.datePicker.model.dateFormat),r,f,u;if(!i)return!1;this.isValidState=!0;this._compare(i,this._setEmptyTime(this.model.minDateTime))?(r=this._getFormat(this.model.minDateTime,this.timePicker.model.timeFormat),u=this._getTime(),this.timePicker.option("minTime",r),this.model.enableStrictMode||this._updateInput()):this.timePicker.option("minTime",this._defaultMinVal());this._compare(i,this._setEmptyTime(this.model.maxDateTime))?(f=this._getFormat(this.model.maxDateTime,this.timePicker.model.timeFormat),u=this._getTime(),this.timePicker.option("maxTime",f),this.model.enableStrictMode||this._updateInput()):this.timePicker.option("maxTime",this._defaultMaxVal());this.timePicker._changeActiveEle();t.isNullOrUndefined(this.model.disableDateTimeRanges)||this._setDisabledTimeRanges(n)},_setDisabledTimeRanges:function(n){var t=n?n.value:this._setEmptyTime(this.model.value);this._between=[];this._initDisableTimeRanges(t);this._datesDisabled||(this._disableBetweenDates(),this.datePicker.option("blackoutDates",this._between))},_defaultMinVal:function(){var n=(new Date).setHours(0,0,0,0);return t.format(this.timePicker._createObject(n),this.timePicker.model.timeFormat,this.timePicker.model.locale)},_defaultMaxVal:function(){var n=(new Date).setHours(23,59,59,59);return t.format(this.timePicker._createObject(n),this.timePicker.model.timeFormat,this.timePicker.model.locale)},_updateValues:function(){var n=this.model.enableStrictMode&&this.model.value==null?this.element.val():this.model.value;this.model.value!=null&&(this.datePicker.option("value",this.model.value),this.timePicker.option("value",this.model.value));this._setValue(n);this._validateMinMax();this._preVal=this.element.val();this._checkErrorClass()},_specificFormat:function(){var i=t.globalize._getDateParseRegExp(t.globalize.findCulture(this.model.locale).calendar,this.model.dateTimeFormat);return n.inArray("dddd",i.groups)>-1||n.inArray("ddd",i.groups)>-1},_changeEditable:function(t){var i=t?"_on":"_off";if(this.element.is(":input")){if(t)this.model.readOnly||this.element.attr("readonly",!1),this.element.off("mousedown",n.proxy(this._showhidePopup,this));else{this.model.readOnly||this.element.attr("readonly","readonly");this.element.on("mousedown",n.proxy(this._showhidePopup,this))}this[i](this.element,"blur",this._targetBlur);this[i](this.element,"focus",this._targetFocus);this[i](this.element,"keydown",this._keyDownOnInput)}this._change("allowEdit",t)},_setValue:function(n){return n&&(typeof JSON!="object"||JSON.stringify(n)!=="{}")?typeof n=="string"?this._extISORegex.exec(n)||this._basicISORegex.exec(n)?this._checkObject(this._dateFromISO(n)):(this.element.val(n),this._updateModel(),this._validateMinMax(),this._checkStrictMode(),this.wrapper.addClass("e-valid")):n instanceof Date&&this._isValidDate(n)&&this._checkObject(n):(this.element.val(""),this.model.value=null,this.isValidState=!0,this.wrapper.removeClass("e-valid")),t.isNullOrUndefined(this.model.disableDateTimeRanges)||this._validateDisableRanges(),this._checkErrorClass(),this.model.value},_checkObject:function(n){n instanceof Date&&this._isValidDate(n)&&(this.model.value=n,this._updateDateTime(),this._validateMinMax(),this._checkStrictMode())},_dateFromISO:function(n){var i=this._extISORegex.exec(n)||this._basicISORegex.exec(n),c="",l="",a="",v,e,o,f,r,t,s,u,h,y;if(i){for(e=0;e<this._dates.length;e++)if(this._dates[e][1].exec(i[1])){c=this._dates[e][0];break}if(i[3])for(o=0;o<this._times.length;o++)if(this._times[o][1].exec(i[3])){l=(i[2]||" ")+this._times[o][0];break}for(i[4]&&this._zeroRegex.exec(i[4])&&(a="Z"),v=c+l+a,f=v.match(this._tokens),t=[],u=0;u<f.length;u++)h=f[u],s=this._checkLiteral(f[u]),y=this._numberRegex[s?f[u].toLowerCase():h.length]||new RegExp("^\\d{1,"+h.length+"}"),r=n.match(y),r&&(n.substr(0,n.indexOf(r))>=0&&!s&&(f[u].indexOf("M")>=0?t.push(parseInt(r[0])-1):t.push(parseInt(r[0]))),n=n.slice(n.indexOf(r[0])+r[0].length));return i[4]=="Z"?new Date(Date.UTC.apply(null,t)):new Date(t[0],t[1],t[2],t[3],t[4],t[5])}return new Date(n+"")},_checkLiteral:function(n){var t=n.toLowerCase();return t=="t"||t=="z"||t==":"||t=="-"?!0:!1},_validateValue:function(n){var r=t.parseDate(n,this.model.dateTimeFormat,this.model.locale),u=null;this.timePicker!=i&&(u=this._getFormat(r,this.timePicker.model.timeFormat));!r||r<this.model.minDateTime||r>this.model.maxDateTime||!t.isNullOrUndefined(this.timePicker)&&this.timePicker._ensureTimeRange(u)?(this.model.value=null,this._change("value",this.model.value),this.isValidState=!1):(this._change("value",this.model.value),this.isValidState=!0)},_validateMinMax:function(){var i,n,t;if(i=this.model.value?this._stringToObject(this.model.value):null,n=this.model.minDateTime?this._stringToObject(this.model.minDateTime):this.defaults.minDateTime,t=this.model.maxDateTime?this._stringToObject(this.model.maxDateTime):this.defaults.maxDateTime,!i||!n||!t)return!1;n>t&&(this.model.minDateTime=this.model.maxDateTime);i<n&&(this.model.enableStrictMode?this.model.enableStrictMode&&(this.popup&&(this.datePicker.option("minDate",this._getFormat(n,this.datePicker.model.dateFormat)),this.timePicker.option("minTime",this._getFormat(n,this.timePicker.model.timeFormat))),this.isValidState=!1):(this._setValue(n),this.isValidState=!0));i>t&&(this.model.enableStrictMode?this.model.enableStrictMode&&(this.popup&&(this.datePicker.option("maxDate",this._getFormat(t,this.datePicker.model.dateFormat)),this.timePicker.option("maxTime",this._getFormat(t,this.timePicker.model.timeFormat))),this.isValidState=!1):(this._setValue(t),this.isValidState=!0));i<n||i>t||(this.isValidState=!0)},_checkProperties:function(){this.model.readOnly&&this._readOnly(!0);this.model.showRoundedCorner&&this._setRoundedCorner(!0);this.model.enableRTL&&this._setRtl(!0);this.model.enabled&&this._enabled(!0);this.model.enabled?this.model.enabled&&this.element.hasClass("e-disable")&&this._enabled(!0):this._enabled(!1);this.model.name=this._options.name?this.model.name:this.element.attr("name")?this.element.attr("name"):this.element[0].id;this.element.attr("name",this.model.name);this._checkStrictMode();this._checkErrorClass();this._setWaterMark()},_checkStrictMode:function(){this.model.enableStrictMode?this.model.enableStrictMode&&(this.isValidState||(this.model.value=null,this.isValidState=!1)):this.isValidState||(this.model.value<this.model.minDateTime?(this.element.val(this._objectToString(this.model.minDateTime)),this.model.value=this.model.minDateTime,this.isValidState=!0):this.model.value>this.model.maxDateTime?(this.element.val(this._objectToString(this.model.maxDateTime)),this.model.value=this.model.maxDateTime,this.isValidState=!0):(this.model.value="",this.element.val(""),this.isValidState=!0))},_targetFocus:function(n){n.preventDefault();this.isFocused=!0;this.wrapper.addClass("e-focus");this.wrapper.removeClass("e-error");this._isSupport||this._hiddenInput.css("display","none");this._prevDateTimeVal=this.element.val();this.model.showPopupButton||this.model.readOnly||this._showResult();this.model.showPopupButton||this._on(this.element,"click",this._elementClick);!this.model.showPopupButton&&this.model.readOnly&&this._off(this.element,"click",this._elementClick);this._trigger("focusIn",{value:this.model.value});this.wrapper.addClass("e-valid")},_targetBlur:function(){var n,i;this.isFocused=!1;this.wrapper.removeClass("e-focus");this.model.showPopupButton||this._hideResult();n=t.parseDate(this.element.val(),this.model.dateTimeFormat,this.model.locale);n&&!this.model.enableStrictMode&&(n<this.model.minDateTime||n>this.model.maxDateTime)&&(n=n<this.model.minDateTime?this.model.minDateTime:this.model.maxDateTime,this.element.val(this._objectToString(n)));i=t.parseDate(this.element.val(),this.model.dateTimeFormat,this.model.locale);i!=null||this.model.enableStrictMode||(this._prevDateTimeVal==null||this.element.val()==""?this.element.val(""):this.element.val(this._preVal));this._valueChange();this.model.enableStrictMode?this.element.val()!=""&&this._validateValue(this.element.val()):this.isValidState?this._prevDateTimeVal=this.element.val():(this.element.val(this._prevDateTimeVal),this._preVal=this._prevDateTimeVal,this.model.value=this._stringToObject(this._prevDateTimeVal),this.isValidState=!0);this._isSupport||this.element.val()!=""||this._hiddenInput.css("display","block");this._checkErrorClass();this.model.showPopupButton||this._off(this.element,"click",this._elementClick);this._trigger("focusOut",{value:this.model.value});t.isNullOrUndefined(this.model.value)?this.wrapper.removeClass("e-valid"):this.wrapper.addClass("e-valid");this._previousDateUpdate()},_previousDateUpdate:function(){var n=t.parseDate(this._prevDateTime,this.model.dateTimeFormat),i=t.parseDate(this.element.val(),this.model.dateTimeFormat);return+n==+i||(this._preValString=this._prevDateTime,this._prevDateTime=this.element.val()),this._preValString},_elementClick:function(){this.isPopupOpen||this._showResult()},_keyDownOnInput:function(n){switch(n.keyCode){case 40:n.altKey&&this._showhidePopup();break;case 37:case 39:this.model.timeDrillDown.enabled||n.altKey&&this.isPopupOpen&&(n.preventDefault(),this._addPrevNextFocus(n.keyCode==37));break;case 27:n.preventDefault();case 9:this._hideResult();break;case 13:var i=t.parseDate(this.element.val(),this.model.dateTimeFormat);if(i!=null||this.model.enableStrictMode||(this._prevDateTimeVal==null||this.element.val()==""?this.element.val(""):this.element.val(this._preVal)),this._valueChange(),!this.model.timeDrillDown.enabled){this._valueChange();this.model.enableStrictMode&&this._checkErrorClass();break}}},_addFocus:function(t){if(!t.hasClass("e-focus"))if(this._removeFocus(),t.addClass("e-focus"),t.hasClass("e-datepicker e-popup"))n(document).on("keydown",n.proxy(this.datePicker._keyboardNavigation,this.datePicker));else if(t.hasClass("e-timecontainer"))n(document).on("keydown",n.proxy(this.timePicker._keyDownOnInput,this.timePicker));else if(t.hasClass("e-time-hours"))n(document).on("keydown",n.proxy(this._keyDownOnHours,this));else if(t.hasClass("e-time-minitues"))n(document).on("keydown",n.proxy(this._keyDownOnMinutes,this));else if(t.hasClass("e-dt-button"))n(document).on("keydown",n.proxy(this._buttonClick,this))},_removeFocus:function(){var t=this._getFocusedElement();t.length>0&&(t.removeClass("e-focus"),t.hasClass("e-datepicker e-popup")?n(document).off("keydown",n.proxy(this.datePicker._keyboardNavigation,this.datePicker)):t.hasClass("e-timecontainer")?n(document).off("keydown",n.proxy(this.timePicker._keyDownOnInput,this.timePicker)):t.hasClass("e-time-hours")?n(document).off("keydown",n.proxy(this._keyDownOnHours,this)):t.hasClass("e-time-minitues")?n(document).off("keydown",n.proxy(this._keyDownOnMinutes,this)):t.hasClass("e-dt-button")&&n(document).off("keydown",n.proxy(this._buttonClick,this)))},_addPrevNextFocus:function(n){var i=this._getFocusedElement(),t;i.length>0?i.hasClass("e-datepicker e-popup")?t=n?this.popup.find(".e-dt-done"):this.popup.find(".e-timecontainer"):i.hasClass("e-timecontainer")?t=n?this.popup.find(".e-datecontainer >.e-datepicker.e-popup"):this.popup.find(".e-dt-today"):i.hasClass("e-dt-today")?t=n?this.popup.find(".e-timecontainer"):this.popup.find(".e-dt-now"):i.hasClass("e-dt-now")?t=n?this.popup.find(".e-dt-today"):this.popup.find(".e-dt-done"):i.hasClass("e-dt-done")&&(t=n?this.popup.find(".e-dt-now"):this.popup.find(".e-datecontainer >.e-datepicker.e-popup")):t=n?this.popup.find(".e-dt-done"):this.popup.find(".e-datecontainer >.e-datepicker.e-popup");this._addFocus(t)},_getFocusedElement:function(){return this.popup.children("div").find("div.e-focus")},_keyDownOnHours:function(n){var t;if(n.keyCode==37||n.keyCode==38||n.keyCode==39||n.keyCode==40||n.keyCode==13||n.keyCode==36||n.keyCode==35){n.preventDefault&&n.preventDefault();t={row:null,col:null};t.col=this._sfTimeHour.find("tbody tr td.e-state-hover").index();t.row=this._sfTimeHour.find("tbody tr td.e-state-hover").parent().index();t.col=t.col!=-1?t.col+1:this._sfTimeHour.find("tbody tr td.e-active").index()+1;t.row!=-1?(t.row=t.row+1,this.model.timeDrillDown.showMeridian&&this._sfTimeHour.find("tbody tr td.e-state-hover").hasClass("e-hour-pm")&&(t.row=t.row+2)):(t.row=this._sfTimeHour.find("tbody tr td.e-active").parent().index()+1,this.model.timeDrillDown.showMeridian&&this._sfTimeHour.find("tbody tr td.e-active").hasClass("e-hour-pm")&&(t.row=t.row+2));var f=this._sfTimeHour.find("table")[0].className,i,r=this._sfTimeHour.find("tbody.e-timepicker-hours tr").length,u=this.model.timeDrillDown.showMeridian?6:4;i=this._changeRowCol(t,n.keyCode,r,u,"hours",n.ctrlKey);n.ctrlKey||(this._hoverHour=this._sfTimeHour.find("tbody.e-timepicker-hours tr td").index(i));n.ctrlKey||(this._sfTimeHour.find("table td").removeClass("e-state-hover"),i.addClass("e-state-hover"))}},_changeRowCol:function(t,i,r,u,f,e){var c,o,l,h={parent:null,child:null},s,y,a,v,p;switch(f){case"hours":c="tbody.e-timepicker-hours tr td.e-hour";h.parent=".e-timepicker-hours";h.child=".e-hour";l=".e-hide-hour";o=this._sfTimeHour;break;case"mins":c="tbody.e-timepicker-mins tr td.e-mins";h.parent=".e-timepicker-mins";h.child=".e-mins";l=".e-hide-mins";o=this._sfTimeMins;u=o.find("tbody"+h.parent+" tr:nth-child("+t.row+") td"+h.child).length}if(t.row<=0&&t.col<=0)return o.find(c+":not(.e-disable):first");y=this;switch(i){case 36:return o.find(c+":not(.e-disable):first");case 35:return o.find(c+":not(.e-disable):last");case 38:if(e)this._forwardNavHandler(null,o);else if(t.row>1)t.row-=1;else return this._processNextPrev(!0,o),o.find(c+":nth-child("+t.col+"):last");if(s=this._getCell(t,h,o).not(l),s.length<=0){if(s=this._findVisible(t,h,"up",o),s!==null)return s;this._processNextPrev(!0,o);s=o.find(c+":nth-child("+t.col+"):last")}return s;case 37:if(e)return this._processNextPrev(!0,o),o.find("tbody tr td.e-state-hover");if(t.col>1)t.col-=1;else if(t.row>1)t={row:t.row-1,col:u},f=="mins"&&(t.col=u=o.find("tbody"+h.parent+" tr:nth-child("+t.row+") td"+h.child).length);else return this._processNextPrev(!0,o),o.find(c+":not(.e-disable):last");if(s=this._getCell(t,h,o).not(l),s.length<=0){if(s=this._findVisible(t,h,"left",o),s!==null)return s;this._processNextPrev(!0,o);s=o.find(c+":not(.e-disable):last")}return s;case 39:if(e)return this._processNextPrev(!1,o),o.find("tbody tr td.e-state-hover");if(t.col<u)t.col+=1;else if(t.row<r)t={row:t.row+1,col:1};else return this._processNextPrev(!1,o),o.find(c+":not(.e-disable):first");if(s=this._getCell(t,h,o).not(l),s.length<=0){if(s=this._findVisible(t,h,"right",o),s!==null)return s;this._processNextPrev(!1,o);s=o.find(c+":not(.e-disable):first")}return s;case 40:if(!e){if(t.row<r)t.row+=1;else return this._processNextPrev(!1,o),o.find(c+":nth-child("+t.col+"):first");if(s=this._getCell(t,h,o).not(l),s.length<=0){if(s=this._findVisible(t,h,"down",o),s!==null)return s;this._processNextPrev(!1,o);s=o.find(c+":nth-child("+t.col+"):first")}return s}case 13:a=this._getCell(t,h,o);p=n(a)[0];v={type:null,target:a};f=="hours"&&this._hourNavHandler(v);f=="mins"&&this._minsNavHandler(v)}return this._getCell(t,h,o).not(l)},_getCell:function(t,i,r){var f=t.row,u;return this.model.timeDrillDown.showMeridian&&t.row>2&&r.hasClass("e-time-hours")&&(f=f-2),u=r.find("tbody"+i.parent+" tr:nth-child("+f+") td"+i.child+":nth-child("+t.col+")"),this.model.timeDrillDown.showMeridian&&u.length>0&&r.hasClass("e-time-hours")&&(u=t.row<=2?n(u[0]):n(u[1])),u},_findVisible:function(n,t,i,r){for(var e,f=n.col,u=n.row,s=t.child.slice(1,t.child.length),o=0;o>=0;o++){if(e=this._getCell({row:u,col:f},t,r),e.length<=0)return null;if(e.hasClass("e-disable")||!e.is(":visible")){if((i=="right"||i=="left"?i=="right"?f++:f--:i=="down"?u++:u--,u<=0||u>r.find("tbody"+t.parent+" tr").length)||(f>r.find("tbody"+t.parent+" tr:nth-child("+u+") td").length&&(u++,f=1),f<=0&&(u--,f=r.find("tbody"+t.parent+" tr:nth-child("+u+") td").length),u<=0||u>r.find("tbody"+t.parent+" tr").length))return null}else if(e.hasClass(s))return n.col=f,n.row=u,this._getCell(n,t,r)}},_keyDownOnMinutes:function(n){var t;if(n.keyCode==37||n.keyCode==38||n.keyCode==39||n.keyCode==40||n.keyCode==13||n.keyCode==36||n.keyCode==35){n.preventDefault&&n.preventDefault();t={row:null,col:null};t.col=this._sfTimeMins.find("tbody tr td.e-state-hover").index();t.row=this._sfTimeMins.find("tbody tr td.e-state-hover").parent().index();t.col=t.col!=-1?t.col+1:this._sfTimeMins.find("tbody tr td.e-active").index()+1;t.row=t.row!=-1?t.row+1:this._sfTimeMins.find("tbody tr td.e-active").parent().index()+1;var u=this._sfTimeMins.find("table")[0].className,i,r=this._sfTimeMins.find("tbody.e-timepicker-mins tr").length;i=this._changeRowCol(t,n.keyCode,r,4,"mins",n.ctrlKey);n.ctrlKey||(this._hoverHour=this._sfTimeMins.find("tbody.e-timepicker-mins tr td").index(i));n.ctrlKey||(this._sfTimeMins.find("table td").removeClass("e-state-hover"),i.addClass("e-state-hover"))}},_valueChange:function(n){this.model.enableStrictMode?this.model.enableStrictMode&&(this._preVal!=this.element.val()||this.model.value<this.model.minDateTime||this.model.value>this.model.maxDateTime)&&(this._updateModel(),this._raiseChangeEvent(n)):(this._preVal!=this.element.val()&&(this._preVal=this.element.val(),this._updateModel(),this._validateMinMax(),this._raiseChangeEvent(n)),this._setWaterMark())},_updateModel:function(n,r){var u,f;if(this._stopRefresh){this._stopRefresh=!1;return}u=this.element.val();u==""?(this.model.value=null,this._change("value",this.model.value),this.isValidState=!0):(f=n!=i&&n.type=="select"||this._prevDateTimeVal==this.element.val()?this.model.value:t.parseDate(u,this.model.dateTimeFormat,this.model.locale),f?(this.model.value=f,this.isValidState=!0,this._refreshPopup(r),this._specificFormat()&&this._prevDateTimeVal!=this.element.val()&&this.element.val(this._objectToString(this.model.value))):(this.model.value=null,this._change("value",this.model.value),this.isValidState=!1,this.model.enableStrictMode||this.element.val(this._objectToString(this.model.value))))},_refreshPopup:function(n){if(this.isValidState&&this.isPopupOpen){var t=this._setEmptyTime(this.model.value),i=this._setEmptyDate(this.model.value),r=this._getDate(),u=this._getTime();r&&this._compare(r,t)||this.datePicker.option("value",t);u&&this._compare(u,i)||n||this.timePicker.option("value",i)}},_buttonClick:function(n){if(n.keyCode==13){n.preventDefault();var t=this._getFocusedElement();t.hasClass("e-dt-today")?this._todayClick():t.hasClass("e-dt-now")?this._nowClick():t.hasClass("e-dt-done")&&this._doneClick()}},_todayClick:function(){if(!this.model.enabled||this.model.readOnly)return!1;this.datePicker.popup.find(".today").hasClass("e-active")&&this.datePicker.popup.children("table").hasClass("e-dp-viewdays")&&this.element.val()!=""&&this.isValidState||(this.datePicker._setCurrDate(),this._updateInput())},_nowClick:function(){var r;if(!this.model.enabled||this.model.readOnly)return!1;this.timePicker.setCurrentTime();var u=this.model.minDateTime,f=this.model.maxDateTime,n=this.datePicker.model.value,i=new Date;n=t.isNullOrUndefined(n)?new Date:n;r=new Date(n.getFullYear(),n.getMonth(),n.getDate(),i.getHours(),i.getMinutes(),i.getSeconds());r<u?this.timePicker.option("value",this.timePicker._localizeTime(u)):r>f&&this.timePicker.option("value",this.timePicker._localizeTime(f));this._updateInput()},_doneClick:function(){this._hideResult()},_iconClick:function(n){n.preventDefault();this.isFocused||t.isTouchDevice()||this.element.focus();this._showhidePopup();this.model.disableDateTimeRanges&&t.isNullOrUndefined(this.model.value)&&this._setDisabledTimeRanges(this.datePicker.model.value);this._isIE9&&this.popup.find(".e-popup-container").css("display","inline-block")},_setInitialSelection:function(){var r=this.timePicker.ul.find("li"),u,f,e,t,i,o;if(r.hasClass("e-hover")){this._calcScrollTop();return}u=this.timePicker._setEmptyDate(new Date);f=u;this.timePicker.minTime&&!this._compareTime(this._createObject(u),this.timePicker.minTime,!0)&&(f=this.timePicker.minTime);this.timePicker.maxTime&&!this._compareTime(this.timePicker.maxTime,this._createObject(u),!0)&&(f=this.timePicker.maxTime);e=r.first().html();t=(this.timePicker._parse(f)-this.timePicker._parse(e))/(this.timePicker.model.interval*6e4);t=Math.round(t);i=t==r.length?t:t+1;(i<0||i>r.length||isNaN(i))&&(i=1);o=n(this.timePicker.ul.find("li")[i-1]);o.addClass("e-hover");this._calcScrollTop()},_calcScrollTop:function(){var r=this.timePicker.ul.outerHeight(),n=this.timePicker.ul.find("li").outerHeight(),t,i;t=this.timePicker.ul.find("li.e-hover").index();i=n*t-(this.timePicker.popupList.outerHeight()-n)/2;this.timePicker.scrollerObj.setModel({scrollTop:i})},_showhidePopup:function(){if(this.model.readOnly)return!1;this.isPopupOpen?this._hideResult():this._showResult()},_showResult:function(){if((this.popup||this._renderDropdown(),this.isPopupOpen||!this.model.enabled)||(this._setRtl(this.model.enableRTL),this._setRoundedCorner(this.model.showRoundedCorner),this._trigger("beforeOpen",{element:this.popup})))return!1;this.isPopupOpen=!0;this.element.attr({"aria-expanded":"true"});this._setListPosition();this._checkForResponsive();var i=this;this.popup.slideDown(this.model.enableAnimation?200:0,function(){i._on(n(document),"mousedown",i._OnDocumentClick);i.model.timeDrillDown.enabled&&i._addFocus(i._dateContainer.find(".e-datepicker"));i.timePicker.model.value||i._setInitialSelection()});this._updateModel();this._updateTimeHeight();this._validateMinMax();this._on(n(window),"resize",this._OnWindowResize);this._on(t.getScrollableParents(this.wrapper),"scroll",this._hideResult);this._on(t.getScrollableParents(this.wrapper),"touchmove",this._hideResult);this._raiseEvent("open");this._initial&&(this.timePicker._refreshScroller(),this.timePicker._changeActiveEle(),this._initial=!1);this.wrapper.addClass("e-active")},_hideResult:function(i){if(!i||i.type!="touchmove"&&i.type!="scroll"||!(n(i.target).parents("#"+this.popup[0].id).length>0)){var r=this;if(!this.isPopupOpen||this._trigger("beforeClose",{element:this.popup}))return!1;if(this.isPopupOpen=!1,this.element.attr({"aria-expanded":"false"}),this._removeFocus(),this._popClose&&i&&i.type!="click"){this.isPopupOpen=!0;return}this.popup.slideUp(this.model.enableAnimation?100:0,function(){r.model&&(r.model.timeDrillDown.enabled&&(r._sfTimeHour.hide(),r._sfTimeMins.hide(),r._dateContainer.show()),t.isNullOrUndefined(r.model.value)||(r._datetimeValue=new Date(r.model.value.toString())))});this._raiseEvent("close");this._off(n(document),"mousedown",this._OnDocumentClick);this._off(n(window),"resize",this._OnWindowResize);this._off(t.getScrollableParents(this.wrapper),"scroll",this._hideResult);this._off(t.getScrollableParents(this.wrapper),"touchmove",this._hideResult);this.wrapper.removeClass("e-active")}},_setListPosition:function(){var r=this.wrapper,i=this._getOffset(r),s,v=n(document).scrollTop()+n(window).height()-(i.top+n(r).outerHeight()),h=i.top-n(document).scrollTop(),u=this.popup.outerHeight(),c=this.popup.outerWidth(),f=i.left,o=r.outerHeight(),l=(o-r.height())/2,y=this._getZindexPartial(),e=3,p=this.model.popupPosition,a;a=this.model.popupPosition==t.PopupPosition.Bottom?(u<v||u>h?i.top+o+e:i.top-u-e)-l:(u>h?i.top+o+e:i.top-u-e)-l;s=n(document).scrollLeft()+n(window).width()-f;(this.model.enableRTL||c>s&&c<f+r.outerWidth())&&(f-=this.popup.outerWidth()-r.outerWidth());this.popup.css({left:f+"px",top:a+"px","z-index":y})},_getOffset:function(n){return t.util.getOffset(n)},_OnDocumentClick:function(t){this.model&&(n(t.target).is(this.popup)||n(t.target).parents(".e-datetime-popup").is(this.popup)||n(t.target).is(this.wrapper)||n(t.target).parents(".e-datetime-wrap").is(this.wrapper)?(n(t.target).is(this.popup)||n(t.target).parents(".e-datetime-popup").is(this.popup))&&(t.preventDefault(),n(t.target).parents(".e-datepicker").length>0?this._addFocus(n(t.target).parents(".e-datepicker")):n(t.target).parents(".e-timecontainer").length>0?this._addFocus(n(t.target).parents(".e-timecontainer")):n(t.target).hasClass("e-dt-button")?this._addFocus(n(t.target)):n(t.target).parents(".e-time-hours").length>0?this._addFocus(n(t.target).parents(".e-time-hours")):n(t.target).parents(".e-time-minitues").length>0?this._addFocus(n(t.target).parents(".e-time-minitues")):this._removeFocus()):this._hideResult())},_OnWindowResize:function(){this._setListPosition();this._checkForResponsive();this._updateTimeHeight()},_raiseChangeEvent:function(i){var e=t.parseDate(this._prevDateTimeVal,this.model.dateTimeFormat),u=t.parseDate(this.element.val(),this.model.dateTimeFormat),f,r;+e==+u?this._prevDateTimeVal!=this.element.val()&&(r={prevDateTime:this._prevDateTimeVal,value:this.element.val(),isValidState:this.isValidState},this._prevDateTimeVal=this.element.val(),this._trigger("_change",r)):(this._preVal=this.element.val(),r={prevDateTime:this._prevDateTimeVal,value:this.element.val(),isInteraction:!i,isValidState:this.isValidState},this.timePicker&&this.timePicker.model?(f=this._getFormat(u,this.timePicker.model.timeFormat),this.timePicker._ensureTimeRange(f)?(this._prevDateTimeVal="",this.model.value=null,this.isValidState=!1):this._prevDateTimeVal=this.element.val()):this._prevDateTimeVal=this.element.val(),this._trigger("_change",r),r.value=n.trim(this.element.val())==""?null:this.element.val(),r.value=this._formatter(this.model.value,this.model.dateTimeFormat),this._trigger("change",r))},_formatter:function(n,i){var r=this._checkFormat(i);return t.format(n,r,this.model.locale)},_raiseEvent:function(n){var i=this._previousDateUpdate();return this.element!=null&&this.model[n]?this._trigger(n,{prevDateTime:t.isNullOrUndefined(i||this._preValString)?"":i||this._preValString,value:this.element.val()}):!1},_getDateTimeFormat:function(){var n=t.preferredCulture(this.model.locale).calendar.patterns;this.model.dateTimeFormat||(this.model.dateTimeFormat=n.d+" "+n.t);this.model.timeDisplayFormat||(this.model.timeDisplayFormat=n.t)},_getZindexPartial:function(){return t.util.getZindexPartial(this.element,this.popup)},_checkErrorClass:function(){this.isValidState?this.wrapper.removeClass("e-error"):this.wrapper.addClass("e-error")},_getDate:function(){return this.datePicker.model.value},_getTime:function(){return this._getDateObj(this.timePicker.model.value,this.timePicker.model.timeFormat)},_setEmptyTime:function(n){var t=new Date(n);return t.setMilliseconds(0),t.setSeconds(0),t.setMinutes(0),t.setHours(0),t},_setEmptyDate:function(n){var t=new Date(n);return t.setDate(1),t.setMonth(0),t.setFullYear(2e3),t},_objectToString:function(n){return this._getFormat(n,this.model.dateTimeFormat)},_stringToObject:function(n){return this._getDateObj(n,this.model.dateTimeFormat)},_getFormat:function(n,i){if(n instanceof Date){var r=this._checkFormat(i);return t.format(n,r,this.model.locale)}return n},_checkFormat:function(n){var i=this,r=this._regExp();return n.replace(r,function(n){return n==="/"?t.preferredCulture(i.model.locale).calendars.standard["/"]!=="/"?"'/'":n:n})},_regExp:function(){return/\/dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|HH|H|hh|h|mm|m|fff|ff|f|tt|ss|s|zzz|zz|z|gg|g|"[^"]*"|'[^']*'|[/]/g},_getDateObj:function(n,i){var o,f;if(typeof n=="string"){if(o=this._checkFormat(i),f=t.parseDate(n,o,this.model.locale),f!=null)return f;if(n!=""&&n!=null){var e,r=/^\s*(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d):(\d\d).*Z\s*$/.exec(n),u=new Date;if(r&&(u=new Date,e=+r[2],u.setUTCFullYear(r[1],e-1,r[3]),u.setUTCHours(r[4],r[5],r[6]),e!=u.getUTCMonth()+1&&u.setTime()),this._isValidDate(u))return u}else return null}else return n},_compare:function(n,t){return n&&t&&n.getTime()==t.getTime()},_isValidDate:function(n){return n&&typeof n.getTime=="function"&&isFinite(n.getTime())},_change:function(n,t){this.popup&&(this.datePicker.option(n,t),this.timePicker.option(n,t))},_changeSkin:function(n){this.wrapper.removeClass(this.model.cssClass).addClass(n);this.popup.removeClass(this.model.cssClass).addClass(n);this._change("cssClass",n)},_localize:function(i){var u,r,f;if(this.model.locale=i,t.isNullOrUndefined(this._options.timeDisplayFormat)&&(this.model.timeDisplayFormat=""),t.isNullOrUndefined(this._options.dateTimeFormat)&&(this.model.dateTimeFormat=""),u=["AM","PM"],this._getDateTimeFormat(),this.timePicker.option("timeFormat",this.model.timeDisplayFormat),this._localizedLabels=this._getLocalizedLabels(),t.isNullOrUndefined(this._options)||(t.isNullOrUndefined(this._options.buttonText)||n.extend(this._localizedLabels.buttonText,this._options.buttonText),t.isNullOrUndefined(this._options.watermarkText)||(this._localizedLabels.watermarkText=this._options.watermarkText)),this._localizedLabelToModel(),this._buttonText(this._localizedLabels.buttonText),(this.isValidState||this.model.value instanceof Date&&this._isValidDate(this.model.value))&&this.element.val(this._objectToString(this.model.value)),this._preVal=this.element.val(),this._change("locale",i),this.model.startDay=this.datePicker.model.startDay,this._validateMeridian(),this._sfTimeHour.empty(),this._renderHourTable(),this.model.timeDrillDown.showMeridian)for(r=0;r<2;r++)f=t.isNullOrUndefined(t.preferredCulture(this.model.locale).calendars.standard[u[r]])?"":t.preferredCulture(this.model.locale).calendars.standard[u[r]][0],n("span.e-hours-meridiantxt-"+u[r].toLowerCase(),this._sfTimeHour).text(f)},_setWaterMark:function(){if(this.element!=null&&this.element.hasClass("e-input"))return this._localizedLabels.watermarkText&&this.element.val()==""&&(this.isValidState=!0,this._checkErrorClass()),this._isSupport||this.element.val()!=""?n(this.element).attr("placeholder",this._localizedLabels.watermarkText):this._hiddenInput.css("display","block").val(this._localizedLabels.watermarkText),!0},_localizedLabelToModel:function(){this.model.watermarkText=this._localizedLabels.watermarkText;this.model.buttonText=this._localizedLabels.buttonText},_readOnly:function(n){this.model.readOnly=n;n?this.element.attr("readonly","readonly"):this.element.prop("readonly",!1);this._change("readOnly",n)},_setRoundedCorner:function(n){n?(this.container.addClass("e-corner"),this.popup&&this.popup.addClass("e-corner")):(this.container.removeClass("e-corner"),this.popup&&this.popup.removeClass("e-corner"));t.isNullOrUndefined(this.datePicker)||this.datePicker.option("showRoundedCorner",n);t.isNullOrUndefined(this.timePicker)||this.timePicker.option("showRoundedCorner",n)},_setRtl:function(n){n?(this.wrapper.addClass("e-rtl"),this.popup&&this.popup.addClass("e-rtl")):(this.wrapper.removeClass("e-rtl"),this.popup&&this.popup.removeClass("e-rtl"));this._change("enableRTL",n)},_enabled:function(n){n?(this.model.enabled=!1,this.enable()):(this.model.enabled=!0,this.disable())},_showButton:function(n){this.model.showPopupButton=n;n?(this.container.addClass("e-padding"),this._renderIcon()):(this.container.removeClass("e-padding"),this.datetimeIcon.remove(),this.datetimeIcon=null)},_buttonText:function(t){n.extend(this.model.buttonText,t);this.popup.find(".e-dt-today").html(this.model.buttonText.today);this.popup.find(".e-dt-now").html(this.model.buttonText.timeNow);this.popup.find(".e-dt-done").html(this.model.buttonText.done);this.popup.find(".e-timecontainer").find(".e-header").html(this.model.buttonText.timeTitle)},_checkForResponsive:function(){if(n(window).outerWidth()>200&&n(window).outerWidth()<=500)this.popup.hasClass("e-dt-responsive")||(this.popup.addClass("e-dt-responsive"),this.timePicker.option("popupWidth",this.datePicker.popup.outerWidth()),this.timePicker.option("popupHeight",98),this.timePicker._refreshScroller(),this.timePicker._changeActiveEle());else if(this.popup.hasClass("e-dt-responsive")){this.popup.removeClass("e-dt-responsive");this.timePicker.option("popupWidth",this.model.timePopupWidth);var t=this.datePicker.popup.height()-this.popup.find(".e-header").height();this.timePicker.option("popupHeight",t);this.timePicker._refreshScroller();this.timePicker._changeActiveEle()}},enable:function(){this.model.enabled||(this.element[0].disabled=!1,this.model.enabled=!0,this.element.prop("disabled",!1),this.wrapper.removeClass("e-disable"),this.element.removeClass("e-disable").attr("aria-disabled",!1),this._isSupport||this._hiddenInput.prop("disabled",!1),this.datetimeIcon&&this.datetimeIcon.removeClass("e-disable").attr("aria-disabled",!1),this._isIE8&&this.datetimeIcon&&this.datetimeIcon.children().removeClass("e-disable"),this.popup&&(this.popup.children("div").removeClass("e-disable").attr("aria-disabled",!1),this._change("enabled",!0)))},disable:function(){this.model.enabled&&(this.element[0].disabled=!0,this.model.enabled=!1,this.wrapper.addClass("e-disable"),this.element.addClass("e-disable").attr("aria-disabled",!0),this.element.attr("disabled","disabled"),this._isSupport||this._hiddenInput.attr("disabled","disabled"),this.datetimeIcon&&this.datetimeIcon.addClass("e-disable").attr("aria-disabled",!0),this._isIE8&&this.datetimeIcon&&this.datetimeIcon.children().addClass("e-disable"),this._hideResult(),this._change("enabled",!1),this.popup&&(this.popup.children("div").addClass("e-disable").attr("aria-disabled",!0),this.datePicker.popup.removeClass("e-disable").attr("aria-disabled",!1),this.timePicker.popup.removeClass("e-disable").attr("aria-disabled",!1)))},getValue:function(){return this._objectToString(this.model.value)},setCurrentDateTime:function(){this.model.readOnly||this._setValue(new Date)},show:function(){this._showResult()},hide:function(){this._hideResult()},_wireEvents:function(){if(this.model.allowEdit&&(this._on(this.element,"focus",this._targetFocus),this._on(this.element,"blur",this._targetBlur),this._on(this.element,"keydown",this._keyDownOnInput)),!this.model.allowEdit){this.element.attr("readonly","readonly");this.element.on("mousedown",n.proxy(this._showhidePopup,this))}},_getLocalizedLabels:function(){return t.getLocalizedConstants(this.sfType,this.model.locale)}});t.DateTimePicker.Locale=t.DateTimePicker.Locale||{};t.DateTimePicker.Locale["default"]=t.DateTimePicker.Locale["en-US"]={watermarkText:"Select datetime",buttonText:{today:"Today",timeNow:"Time Now",done:"Done",timeTitle:"Time"}};t.PopupPosition={Bottom:"bottom",Top:"top"}}(jQuery,Syncfusion),function(n,t,i){t.widget("ejDropDownList","ej.DropDownList",{element:null,model:null,validTags:["select","input"],_addToPersist:["value","text","selectedIndex","selectedItemIndex","selectedItems","selectedIndices","popupWidth","popupHeight","itemValue"],_setFirst:!1,_rootCSS:"e-dropdownlist",angular:{require:["?ngModel","^?form","^?ngModelOptions"]},_requiresID:!0,defaults:{cssClass:"",value:null,htmlAttributes:{},text:null,itemValue:"",itemsCount:0,dataSource:null,delimiterChar:",",query:null,fields:{id:null,text:null,value:null,category:null,groupBy:null,imageUrl:null,imageAttributes:null,spriteCssClass:null,htmlAttributes:null,selected:null,tableName:null},locale:"en-US",watermarkText:null,height:"",loadOnDemand:!1,width:"",popupHeight:"152px",popupWidth:"auto",popupTarget:"body",maxPopupHeight:null,minPopupHeight:"20",maxPopupWidth:null,minPopupWidth:"0",targetID:null,template:null,headerTemplate:null,selectedItemIndex:-1,selectedIndex:-1,disableItemsByIndex:null,enableItemsByIndex:null,selectedItems:[],selectedIndices:[],cascadeTo:null,enablePopupResize:!1,allowVirtualScrolling:!1,virtualScrollMode:"normal",showRoundedCorner:!1,showPopupOnLoad:!1,enableRTL:!1,enabled:!0,filterType:"contains",sortOrder:"ascending",caseSensitiveSearch:!1,showCheckbox:!1,checkAll:!1,uncheckAll:!1,enablePersistence:!1,enableFilterSearch:!1,enableServerFiltering:!1,enableIncrementalSearch:!0,incrementalSearchDelay:500,readOnly:!1,enableAnimation:!1,multiSelectMode:"none",allowGrouping:!1,enableSorting:!1,validationRules:null,validationMessage:null,actionBegin:null,actionComplete:null,actionFailure:null,actionSuccess:null,create:null,popupHide:null,popupShown:null,beforePopupShown:null,beforePopupHide:null,popupResizeStart:null,popupResize:null,popupResizeStop:null,change:null,select:null,dataBound:null,search:null,checkChange:null,cascade:null,destroy:null},dataTypes:{cssClass:"string",itemsCount:"number",watermarkText:"string",template:"string",disableItemsByIndex:"string",enableItemsByIndex:"string",enableIncrementalSearch:"boolean",incrementalSearchDelay:"number",cascadeTo:"string",delimiterChar:"string",showRoundedCorner:"boolean",showPopupOnLoad:"boolean",enableRTL:"boolean",enablePersistence:"boolean",allowVirtualScrolling:"boolean",virtualScrollMode:"enum",enabled:"boolean",readOnly:"boolean",multiSelectMode:"enum",dataSource:"data",query:"data",fields:"data",selectedItems:"array",selectedIndices:"array",enableAnimation:"boolean",allowGrouping:"boolean",enableSorting:"boolean",validationRules:"data",validationMessage:"data",htmlAttributes:"data",locale:"string"},observables:["value","selectedItemIndex","selectedIndex","dataSource"],value:t.util.valueFunction("value"),selectedItemIndex:t.util.valueFunction("selectedItemIndex"),selectedIndex:t.util.valueFunction("selectedIndex"),_dataSource:t.util.valueFunction("dataSource"),enable:function(){if(this._visibleInput.hasClass("e-disable")){this.target.disabled=!1;this.model.enabled=!0;this.container.removeClass("e-disable");this._visibleInput.removeClass("e-disable");this.dropdownbutton.removeClass("e-disable");t.isNullOrUndefined(this.popupListWrapper)||this.popupListWrapper.removeClass("e-disable");this._isIE8&&this.drpbtnspan.removeClass("e-disable");this.container.on("mousedown",n.proxy(this._OnDropdownClick,this));this.model.multiSelectMode=="visualmode"&&this._ulBox.removeClass("e-disable")}this._wireEvents();this.wrapper.attr("tabindex",0)},disable:function(){this._visibleInput.hasClass("e-disable")||(this.target.disabled=!0,this.model.enabled=!1,this.container.addClass("e-disable"),this._visibleInput.addClass("e-disable"),t.isNullOrUndefined(this.popupListWrapper)||this.popupListWrapper.addClass("e-disable"),this.dropdownbutton.addClass("e-disable"),this._isIE8&&this.drpbtnspan.addClass("e-disable"),this.model.multiSelectMode=="visualmode"&&this._ulBox.addClass("e-disable"),this.container.off("mousedown",n.proxy(this._OnDropdownClick,this)),this._unwireEvents(),this.wrapper.removeAttr("tabindex"),this._isPopupShown()&&this._hideResult())},getValue:function(){return this._visibleInput.val()},_setValue:function(n,i){t.isNullOrUndefined(n)||(this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),this.ultag.children().length!=0&&this._setDynamicSelectByVal(this,n,i))},_setDynamicSelectByVal:function(n,i,r){n._raiseEvents=!1;t.isNullOrUndefined(n.model.text)||n.unselectItemByText(n.model.text,r);n._raiseEvents=!0;n.model.allowVirtualScrolling&&n._addValue(i);n.selectItemByValue(i)},_addValue:function(n){var i,h,r,f,o,e,s,u;if(this.model.itemsCount>0&&n!=""&&(this._checkValue=!0,i=typeof n=="object"?n:typeof n=="number"?[n]:n.split(this.model.delimiterChar),t.isNullOrUndefined(this._mapFields())||this._mapFields(),h=this.mapFld._value,t.isNullOrUndefined(this._rawList)||this._addListItems(i,this._rawList,"local"),this._checkValue))if(r=this._dataSource(),t.DataManager&&r instanceof t.DataManager)if(r.dataSource.offline&&r.dataSource.json&&r.dataSource.json.length>0)this._addListItems(i,r.dataSource.json,"remote");else if(f=this,o=n,e=this.model.fields.value?this.model.fields.value:this.model.fields.text,this._isSingleSelect())r.executeQuery(t.Query().select(e,this.model.fields.text).where(e,"equal",o,!1)).done(function(n){f._addListItems(i,n.result,"remote");f.selectItemByValue(o)});else for(u=0;u<i.length;u++)r.executeQuery(t.Query().select(e,this.model.fields.text).where(e,"equal",i[u],!1)).done(function(n){s=n.result.slice(0,u);u==i.length&&(f._addListItems(i,s,"remote"),f.selectItemByValue(o))});else this._addListItems(i,r,"remote")},_addListItems:function(n,t,i){for(var r,f=this.mapFld._value==this.model.fields.value?this.mapFld._value:this.model.fields.text,u=0;u<n.length;u++)for(r=0;r<t.length;r++)i=="local"&&t[r][f]==n[u]&&(this._checkValue=!1),i=="remote"&&t[r][f]==n[u]&&this.addItem(t[r])},_setText:function(n){t.isNullOrUndefined(n)||(this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),this._raiseEvents=!1,this.unselectItemByText(this.model.text),this._raiseEvents=!0,this.selectItemByText(n))},_setItemValue:function(n){this.model.itemValue=n},_changeWatermark:function(n){if(!this.model.enabled)return!1;this._isWatermark?this._visibleInput.attr("placeholder",n):this._hiddenSpan.text(n)},hidePopup:function(){if(!this.model.enabled)return!1;this.ultag.find("li").length>0&&this._hideResult()},showPopup:function(){if(!this.model.enabled)return!1;var n=t.isNullOrUndefined(this.ultag)?this.model.loadOnDemand?!0:!1:this.ultag.find("li").length>0;n&&this._showResult()},clearText:function(){this._clearTextboxValue();this._isWatermark||this._setWatermark()},addItem:function(i){var u,r,f,o,e,s;if((this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),!this.model.enabled||!i)||(this._mapFields(),u=n.isArray(i)?i:[i],u.length<1))return!1;for(r=this.mapFld,f={_id:null,_imageUrl:null,_imageAttributes:null,_spriteCSS:null,_text:null,_value:null,_htmlAttributes:null,_selected:null,_category:null},f._id=u[0][r._id]?r._id:"id",f._imageUrl=u[0][r._imageUrl]?r._imageUrl:"imageUrl",f._imageAttributes=u[0][r._imageAttributes]?r._imageAttributes:"imageAttributes",f._spriteCSS=u[0][r._spriteCSS]?r._spriteCSS:"spriteCssClass",f._text=u[0][r._text]?r._text:"text",f._value=u[0][r._value]?r._value:"value",f._htmlAttributes=u[0][r._htmlAttributes]?r._htmlAttributes:"htmlAttributes",f._selected=u[0][r._selected]?r._selected:"selected",f._category=u[0][r._category]?r._category:"groupBy",this._generateLi(u,f),o=this.dummyUl,e=0;e<u.length;e++)this._listItem(u[e],"add");this.model.showCheckbox?this._appendCheckbox(o,!0):this._isSingleSelect()||this._multiItemSelection(o,!0);this._virtualUl.append(n(this.dummyUl).clone(!0));this.ultag.append(this.dummyUl);this._isPopupShown()&&(s=this.scrollerObj?this.scrollerObj.scrollTop():0,this._refreshScroller(),this.scrollerObj&&this.scrollerObj.option("scrollTop",s))},_toArray:function(i,r){var u;return typeof i=="function"&&(i=t.util.getVal(i)),n.isArray(i)?u=i:typeof i=="string"?r&&(this.model.multiSelectMode=="visualmode"||this.model.multiSelectMode=="delimiter"||this.model.showCheckbox)?(u=this._getUpdatedListData(i),u.length==0&&(u=[i])):r?u=[i]:(u=this._getUpdatedListData(i),u.length==0&&(u=[i])):u=[i],u},_trim:function(t){return typeof t=="string"?n.trim(t):t},selectItemByIndex:function(n){this._selectItemByIndex(n)},selectItemsByIndices:function(n){this._selectItemByIndex(n)},_selectItemByIndex:function(i){var e,r,f,u;if(this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),this.listitems=this._getLi(),this._selectedIndices=n.map(this._selectedIndices,function(n){return parseInt(n)}),this.model.selectedItems=this.model.selectedIndices=this._selectedIndices,parseInt(i)==-1&&this.model.selectedItems.length>0)this._clearTextboxValue(),this._trigger("change",{text:this._visibleInput[0].value,selectedText:"",selectedValue:"",value:""});else for(e=this._toArray(i,!0),f=0;f<e.length;f++)if(r=parseInt(e[f]),r!=null&&r>=0){if(n.inArray(r,this._selectedIndices)==-1)for(u=0;u<this.listitems.length;u++)n(this.listitems[u]).hasClass("e-disable")||u==r&&(this.selectedIndexValue=u,this._activeItem=r,this._enterTextBoxValue())}else!this.model.showCheckbox&&this.model.multiSelectMode=="none"&&this.model.selectedItems.length>0&&(this._clearTextboxValue(),this._trigger("change",{text:this._visibleInput[0].value,selectedText:"",selectedValue:"",value:""}))},unselectItemsByIndices:function(n){this._unselectItemByIndex(n)},unselectItemByIndex:function(n){this._unselectItemByIndex(n)},_unselectItemByIndex:function(i){var r,f,e,u;for(this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),this._selectedIndices=n.map(this._selectedIndices,function(n){return parseInt(n)}),this.model.selectedItems=this.model.selectedIndices=this._selectedIndices,f=this._toArray(i,!0),this.listitems=this._getLi(),u=0;u<f.length;u++)for(e=parseInt(f[u]),r=0;r<this.listitems.length;r++)r==e&&(this.selectedIndexValue=r,this._activeItem=e,this._activeItem==this._aselectedItem&&(this._aselectedItem=null),this._removeTextBoxValue())},setSelectedValue:function(n){this.selectItemByValue(n)},selectItemByValue:function(i){var r,f,u;if(this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),this.listitems=this._getLi(),this.inputSearch&&this.inputSearch.val()!=""&&this.model.enableServerFiltering&&!t.isNullOrUndefined(this._searchresult)){for(f=this.model.fields&&this.model.fields.value?this.model.fields.value:"value",r=0;r<this._searchresult.length;r++)for(u=0;u<this.listitems.length;u++)n(this.listitems[u]).attr("data-value")==this._searchresult[r][f]&&(this._searchresult=null);this.addItem(this._searchresult)}t.isNullOrUndefined(i)?this._clearTextboxValue():(this._unselectText&&(this._unselectText=!1),this._selectUnSelectValue(i,"selectValue"))},_selectUnSelectValue:function(i,r,u,f){for(var e,h,s=this._toArray(i,!0),o=0;o<s.length;o++)for(e=0;e<this.listitems.length;e++)if(n(this.listitems[e]).hasClass("e-disable")||r!="selectValue"&&r!="selectText"){if(this._getAttributeValue(this.listitems[e])&&(r=="unselectValue"&&(this._selectedValue=this._getAttributeValue(this.listitems[e]),this._selectedValue=this._selectedValue==s[o]),r=="unselectText"&&(this.unselectedTextValue=this._isPlainType(this.popupListItems)?this.popupListItems[e]:this._getField(this.popupListItems[e],this.mapFld._text),this._selectedValue=this.unselectedTextValue==s[o]||f&&this.unselectedTextValue.toString().toLowerCase()==s[o].toString().toLowerCase(),this._selectedValue&&this._boxValue&&this.model.showCheckbox&&this.model.enableFilterSearch&&(this._activeItem=e,this._selectedValue=this._boxValue.indexOf(n(this._getActiveItem(this._activeItem)).attr("data-value"))==-1?!1:this._selectedValue)),this._selectedValue)){this._activeItem=e;this._activeItem==this._aselectedItem&&(this._aselectedItem=null);(this._visibleInput.val()!=this._checkedValues||u&&u.type=="keyup"||this.model.enablePersistence)&&this._removeTextBoxValue();break}}else if(r=="selectValue"&&(h=t.isNullOrUndefined(this._getAttributeValue(this.listitems[e]))?n(this.listitems[e]).text():this._getAttributeValue(this.listitems[e]),this._selectedValue=h==s[o]),r=="selectText"&&(this.selectedTextValue=this._isPlainType(this.popupListItems)?this.popupListItems[e]:this._getField(this.popupListItems[e],this.mapFld._text),this._selectedValue=this.selectedTextValue==s[o]||f&&this.selectedTextValue.toString().toLowerCase()==s[o].toString().toLowerCase()),this._selectedValue){this._activeItem=e;this._aselectedItem=this._activeItem;this._enterTextBoxValue();break}},unselectItemByValue:function(n){this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList();this.listitems=this._getLi();this._selectUnSelectValue(n,"unselectValue")},setSelectedText:function(n){this.selectItemByText(n)},selectItemByText:function(n,i){this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList();this.listitems=this._getLi();this._mapFields();t.isNullOrUndefined(n)?this._clearTextboxValue():this._selectUnSelectValue(n,"selectText",i)},unselectItemByText:function(n,t,i){this.listitems=this._getLi();this._mapFields();this._unselectText=!0;this._selectUnSelectValue(n,"unselectText",t,i)},getSelectedValue:function(){return this.element.val()},getSelectedItem:function(){var n,t=[];for(this.listitems=this._getLi(),n=0;n<this._selectedIndices.length;n++)t.push(this.listitems[this._selectedIndices[n]]);return t},getItemDataByValue:function(n){var r=this._toArray(n,!1),u=this.model.enableServerFiltering?t.isNullOrUndefined(this.resultList)?this._rawList:this._rawList.concat(this.resultList):this._rawList,i,f,o=[],e=this.model.fields&&this.model.fields.value?this.model.fields.value:"value",s;if(r.length>0&&(u.indexOf(r[0])>-1||u.indexOf(Number(r[0]))>-1))for(i=0;i<r.length&&(u.indexOf(r[i])>-1||u.indexOf(Number(r[i]))>-1);i++)o.push({text:r[i],value:r[i]});else for(u.length>0&&t.isNullOrUndefined(u[0][e])&&(s=this.model.fields&&this.model.fields.text?this.model.fields.text:"text",t.isNullOrUndefined(u[0][s])||(e=s)),i=0;i<r.length;i++)for(f=0;f<u.length;f++)(u[f][e]==r[i]||u[f][e]==Number(r[i]))&&o.push(u[f]);return o},getListData:function(){return this._rawList},getSelectedItemsID:function(){return this._selectedItemsID},disableItemsByIndices:function(n){this._getLi().length>0&&this._disableItemByIndex(n)},disableItemByIndex:function(n){this._getLi().length>0&&this._disableItemByIndex(n,!0)},_disableItemByIndex:function(i){var r,f,u;if(t.isNullOrUndefined(i)||typeof i!="string"&&typeof i!="number"||(i=i.toString().split(",")),this._isInteralCall||(this._initDisabledItems=i),!this.model.enabled)return!1;for(this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),r=this._toArray(i,!1),u=0;u<r.length;u++)r[u]==null||isNaN(parseInt(r[u]))||r.length>0&&!(n.inArray(parseInt(r[u]),this._disabledItems)>-1)&&(f=n.inArray(r[u],this._disabledItems),this._setClass(this._getLi()[parseInt(r[u])],"e-disable"),this._disabledItems.push(parseInt(r[u])),this.model.disableItemsByIndex=String(this._disabledItems.join(",")));this._prevDisabledItems=this._disabledItems},enableItemsByIndices:function(n){this._enableItemByIndex(n)},enableItemByIndex:function(n){this._enableItemByIndex(n)},_enableItemByIndex:function(i){var r,f,u;for(t.isNullOrUndefined(i)||typeof i!="string"&&typeof i!="number"||(i=i.toString().split(",")),this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),r=this._toArray(i,!1),this.model.enableItemsByIndex=i,u=0;u<r.length;u++)r.length>0&&n.inArray(parseInt(r[u]),this._disabledItems)>-1&&!isNaN(parseInt(r[u]))&&(f=n.inArray(parseInt(r[u]),this._disabledItems),this._removeClass(this._getLi()[parseInt(r[u])],"e-disable"),this._disabledItems.splice(f,1));this.model.enableItemsByIndex=null;this.model.disableItemsByIndex=this._disabledItems.join(this.model.delimiterChar)},_validateDelimiter:function(n){if(this._trim(n).length==1)if(!/^[a-zA-Z0-9]+$/.test(n))return n;return","},_removeText:function(i){var f,e,r,u;this.removeVal=(this.checkChange||this.delIconClick)&&(this.model.fields.text||this.model.fields.value||this.mapFld._text||this.mapFld._value)?!1:!0;this._unselectText&&(this.removeVal=!1,this._unselectText=!1);f=this._getUpdatedListData(this.element[0].value,!0);this.removeVal=(this.checkChange||this.delIconClick)&&(this.model.fields.text||this.model.fields.value);this._unselectText||(this._unselectText=!0);e=this._getUpdatedListData(this._visibleInput[0].value,this.model.selectedIndices.length===this._visibleInput[0].value.split(this.model.delimiterChar).length?!0:!1);this._unselectText=!1;r=this.getItemDataByValue(i)[0];u=this.model.fields&&this.model.fields.text?this.model.fields.text:"text";n.inArray(i,f)>=0&&f.splice(n.inArray(i,f),1);!t.isNullOrUndefined(r[u])&&n.inArray(this._decode(r[u]).toString(),e)>=0&&e.splice(n.inArray(this._decode(r[u]).toString(),e),1);n.inArray(i,this._valueContainer)>=0&&this._valueContainer.splice(n.inArray(i,this._valueContainer),1);!t.isNullOrUndefined(r[u])&&n.inArray(r[u].toString(),this._textContainer)>=0&&this._textContainer.splice(n.inArray(r[u].toString(),this._textContainer),1);this.element[0].value=f.join(this.model.delimiterChar);this._visibleInput[0].value=e.join(this.model.delimiterChar);this.removeVal=!1},_getUpdatedListData:function(n,i){var e,u=this.getListData(),o;if(i)if(e=[],this.model.fields.value||this.mapFld._value)e=n.split(this.model.delimiterChar);else for(o=0;o<this.model.selectedIndices.length;o++)e.push(u[this.model.selectedIndices[o]][this.model.fields.text?this.model.fields.text:"text"]);else e=n.split(this.model.delimiterChar);var f,r=0,h=0,c=[],l=[],s="";if(this.model.fields.value||this.model.fields.text?(f=this.model.fields.text,this.removeVal||this._unselectText||(f=this.model.fields.value?this.model.fields.value:f)):(this.mapFld._text||this.mapFld._value)&&(f=this.mapFld._text,this.removeVal||this._unselectText||(f=this.mapFld._value?this.mapFld._value:f)),!t.isNullOrUndefined(u))while(r<u.length){if(s=i?f?this._decode(u[r][f]):this._decode(u[r].text?u[r].text:u[r]):f?this._decode(u[r][f]):this._decode(u[r].value?u[r].value:u[r]),e.indexOf(s)!==-1)i&&(e[e.indexOf(s)]=h),c.push(s),h++;else if(!i&&e==="")break;r++}for(r=0;r<h;)i?l[e.indexOf(r)]=c[r]:l[r]=c[r],r++;return l},_addText:function(t){var o,r,u,i,e,s,h,c,f;if(this._checkContains(this._hiddenValue)||this.value()&&(o=this.value().split(","),o.indexOf(t)>0))return!1;for(r=["element","_visibleInput"],i=0;i<r.length;i++)u=r[i]=="element"?this._hiddenValue:t,e=r[i]=="element"?this._valueContainer:this._textContainer,this[r[i]][0].value&&this[r[i]][0].value!=""?(f=this[r[i]][0].value.split(this.model.delimiterChar),r[i]=="element"&&n.inArray(u,f)===-1?f.push(u):r[i]=="_visibleInput"&&(s=this.model.fields.text?this.model.fields.text:"text",n.inArray(u,f)!=-1?(h=this.popupListItems.filter(function(n){return n[s]==u}),c=f.filter(function(n){return n==u}),h.length>c.length&&f.push(u)):f.push(u)),this[r[i]][0].value=f.join(this.model.delimiterChar)):u==""?this[r[i]][0].value=u:u!=""&&this[r[i]][0].value==""&&(n.inArray("",e)!=-1?(f=this[r[i]][0].value.split(this.model.delimiterChar),f.push(u),this[r[i]][0].value=f.join(this.model.delimiterChar)):this[r[i]][0].value=u),e.push(u)},_checkContains:function(n){if(this.contains=!1,this._rawList!==i&&(this.model.dataSource!==null||this.selectOptions!==i||this.model.targetID!==null))for(var t=0;t<this._valueContainer.length;t++)if(this._parseValue(this._valueContainer[t])===this._parseValue(n)){this.contains=!0;break}return this.contains},_parseValue:function(n){return isNaN(parseInt(n))||this.mapFld&&typeof this._rawList[0][this.mapFld._value]=="string"?n:parseInt(n)},_updateLocalConstant:function(){this._localizedLabels=t.getLocalizedConstants("ej.DropDownList",this.model.locale)},_init:function(){var i=t.browserInfo();this._updateLocalConstant();this._isIE8=i.name=="msie"&&i.version=="8.0";this._textContent=this._isIE8?"innerText":"textContent";(this.element.is("input")&&(this.element.is("input[type=text]")||!this.element.attr("type"))||this.element.is("select"))&&(this._isWatermark="placeholder"in n(document.createElement("input")).attr("placeholder","")[0],this._id=this.element[0].id,this._initialize(),this._render(),this._addAttr(this.model.htmlAttributes),this._enabled(this.model.enabled),this._initValue=!1,this._checkboxValue=!1,this._unselectText=!1,this.model.validationRules!=null&&(this._initValidator(),this._setValidation()))},_initValidator:function(){this.element.closest("form").data("validator")||this.element.closest("form").validate()},_setValidation:function(){var r,f,i,u,e;if(this.element.closest("form").length!=0){this.element.rules("add",this.model.validationRules);r=this.element.closest("form").data("validator");r||(r=this.element.closest("form").validate());f=this.element.attr("name");r.settings.messages[f]={};for(i in this.model.validationRules)if(u=null,!t.isNullOrUndefined(this.model.validationRules[i])){if(t.isNullOrUndefined(this.model.validationRules.messages&&this.model.validationRules.messages[i])){r.settings.messages[f][i]=n.validator.messages[i];for(e in this.model.validationMessage)i==e?u=this.model.validationMessage[i]:""}else u=this.model.validationRules.messages[i];r.settings.messages[f][i]=u!=null?u:n.validator.messages[i]}}},_setInitialPopup:function(n){this.model.enabled&&!this.model.readOnly&&(n==!1?this._hideResult():this._showResult())},_changeSkin:function(n){this.wrapper.removeClass(this.model.cssClass).addClass(n);t.isNullOrUndefined(this.popupListWrapper)||this.popupListWrapper.removeClass(this.model.cssClass).addClass(n)},_setRTL:function(n){this.model.enableRTL!=n&&(this.model.enableRTL=n,this._RightToLeft(),t.isNullOrUndefined(this.popupListWrapper)||this._dropbtnRTL())},_changeHeight:function(n){this.wrapper.height(n);this._setListHeight()},_changeWidth:function(n){this.wrapper.width(n);this._setListWidth()},_setModel:function(r){var u,o,s,e,f;for(u in r)switch(u){case"dataSource":if(!this._isEqualDataSource(t.util.getVal(r[u]))){this.model.loadOnDemand&&(o=n("#"+this.element[0].id+"_popup_wrapper").get(0),o&&n(o).remove(),this.popupListWrapper=i,this.inputSearch=i);this._checkModelDataBinding(t.util.getVal(r[u]),this.model.query);this._refreshScroller();break}case"query":this._checkModelDataBinding(this._dataSource(),r[u]);break;case"fields":this.model.fields=n.extend(this.model.fields,r[u]);this._checkModelDataBinding(this._dataSource(),this.model.query);break;case"itemsCount":this.model.itemsCount=r[u];this._checkModelDataBinding(this._dataSource(),this.model.query);break;case"template":this.model.template=r[u];this._checkModelDataBinding(this._dataSource(),this.model.query);break;case"value":this._optionValue=t.util.getVal(r[u]);(t.isNullOrUndefined(this._optionValue)||this._optionValue==="")&&this._clearTextboxValue();t.isNullOrUndefined(this._optionValue)||this._optionValue===""?this._clearTextboxValue():(this._checkedValues.push(r.value),this._setValue(t.util.getVal(r[u])),r[u]=this.model.value);break;case"incrementalSearchDelay":this.model.incrementalSearchDelay=r[u];break;case"delimiterChar":s=this.model.delimiterChar;r[u]=this._validateDelimiter(r[u]);this.model.delimiterChar=r[u];this._isSingleSelect()||(this.model.text&&(this.model.text=this.model.text.split(s).join(this.model.delimiterChar),this._visibleInput.val(this.model.text)),t.isNullOrUndefined(this.value())||(this.value(this.value().split(s).join(this.model.delimiterChar)),this.element.val(this.value())));break;case"text":t.isNullOrUndefined(r[u])||r[u]===""?this._clearTextboxValue():(this._setText(r[u]),r[u]=this.model.text);break;case"itemValue":this._setItemValue(r[u]);break;case"enableRTL":this._setRTL(r[u]);break;case"enabled":this._enabled(r[u]);break;case"height":this._changeHeight(r[u]);break;case"width":this._changeWidth(r[u]);break;case"popupHeight":this.model.popupHeight=r[u];this._setListHeight(r[u]);break;case"popupWidth":this.model.popupWidth=r[u];this._setListWidth();break;case"minPopupHeight":this.model.minPopupHeight=r[u];this._setListHeight(r[u]);break;case"minPopupWidth":this.model.minPopupWidth=r[u];this._setListWidth();break;case"maxPopupHeight":this.model.maxPopupHeight=r[u];this._setListHeight(r[u]);break;case"maxPopupWidth":this.model.maxPopupWidth=r[u];this._setListWidth();break;case"popupTarget":this.model.popupTarget=r[u];this._renderPopupPanelWrapper();break;case"cssClass":this._changeSkin(r[u]);break;case"showCheckbox":this.model.showCheckbox=r[u];e=this.model.text;f=this.model.text?this.model.text.split(this.model.delimiterChar):this.model.text;this._raiseEvents=!1;this._clearTextboxValue();this._raiseEvents=!0;this._checkboxHideShow(r[u]);this.model.showCheckbox||this.model.multiSelectMode!="none"?(this.model.multiSelectMode=="visualmode"&&this._renderBoxModel(),this._setText(e)):f&&f.length&&this._setText(f[0]);this._isPopupShown()&&this._setListPosition();break;case"checkAll":return this._setCheckAll(r[u]),!1;case"uncheckAll":return this._setUncheckAll(r[u]),!1;case"watermarkText":this._changeWatermark(r[u]);break;case"validationRules":this.element.closest("form").length!=0&&(this.model.validationRules!=null&&(this.element.rules("remove"),this.model.validationMessage=null),this.model.validationRules=r[u],this.model.validationRules!=null&&(this._initValidator(),this._setValidation()));break;case"locale":this.model.locale=r[u];this._updateLocalConstant();break;case"validationMessage":this.element.closest("form").length!=0&&(this.model.validationMessage=r[u],this.model.validationRules!=null&&this.model.validationMessage!=null&&(this._initValidator(),this._setValidation()));break;case"showRoundedCorner":this._roundedCorner(r[u]);this.model.showRoundedCorner=r[u];break;case"showPopupOnLoad":this._setInitialPopup(r[u]);break;case"targetID":this.model.targetID=r[u];this._showFullList();break;case"selectedItemIndex":case"selectedIndex":this._selectItemByIndex(r[u]);this.model.selectedItemIndex=this.model.selectedIndex=r[u];break;case"unselectItemByIndex":this._unselectItemByIndex(r[u]);break;case"disableItemsByIndex":this._disableItemByIndex(r[u]);break;case"enableItemsByIndex":this._enableItemByIndex(r[u]);break;case"selectedItems":case"selectedIndices":this._selectCheckedItem(r[u]);r[u]=this.model.selectedItems=this.model.selectedIndices=this._selectedIndices;break;case"multiSelectMode":this.model.multiSelectMode=="visualmode"&&(this._swapUlandInput(!1),this._ulBox.remove(),this._ulBox=null);this.model.multiSelectMode=r[u];e=this.model.text;f=this.model.text?this.model.text.split(this.model.delimiterChar):this.model.text;this._raiseEvents=!1;this._clearTextboxValue();this._raiseEvents=!0;this.model.showCheckbox||this.model.multiSelectMode!="none"?(this.model.multiSelectMode=="visualmode"&&this._renderBoxModel(),this._setText(e)):(this._setText(f[0]),this.wrapper.find("input[name="+this._name+"]").remove());this._isPopupShown()&&this._setListPosition();break;case"allowGrouping":this._setGroupingAndSorting("allowGrouping",r[u]);break;case"enableSorting":this._setGroupingAndSorting("enableSorting",r[u]);break;case"htmlAttributes":this._addAttr(r[u]);break;case"enablePopupResize":this.model.enablePopupResize=r[u];r[u]?this._enablePopupResize():this.popupListWrapper.removeClass("e-resizable").find(".e-resizebar").remove()&&this._hideResult();break;case"enableFilterSearch":if(r[u]){this.model.enableFilterSearch=!0;this._enableSearch();break}else this._removeSearch();case"enableServerFiltering":this._enableSearch()}},_clearTextboxValue:function(){this.element.val("");this._visibleInput.val("");this._updateValue("");this._valueContainer=[];this._boxValue=[];this._textContainer=[];this.selectedTextValue=this._selectedValue=this._hiddenValue=this.model.itemValue="";this._updateText();this.selectedIndexValue=this._hiddenDelimiterIndex=this._activeItem=-1;this._selectedItemsID=[];this._selectedIndices=[];this.model.selectedItems=[];this.model.selectedIndices=[];this.selectedIndex(null);t.isNullOrUndefined(this.ultag)||(this.ultag.children("li").removeClass("e-hover").removeClass("e-active"),this.model.showCheckbox&&this._resetCheck());this.wrapper.find("ul.e-ul.e-boxes").length!=0&&(this._ulBox.children("li").remove(),this._name===""?this.wrapper.find("input:hidden[id^='#']").remove():this.wrapper.find("input:hidden[id^='#'][name="+this._name+"]").remove(),n(this.element).attr("name",this._name))},_destroy:function(){this.selectOptions?(!this._dataSource()&&this.docbdy?this.docbdy.append(this.selectOptions.removeClass("e-dropdownlist e-js").show()).show():this.selectOptions.insertAfter(this.wrapper).removeClass("e-dropdownlist e-js").show(),this.element.remove()):(this.element.insertAfter(this.wrapper),this.element.width(this.element.width()+this.dropdownbutton.outerWidth()),this._visibleInput.removeClass("e-input "),this._setAttr(this.element[0],{accesskey:this.wrapper.attr("accesskey"),type:"text"}),this._isWatermark&&this._visibleInput.removeAttr("placeholder"),this.element[0].value="",this.element.removeAttr("aria-expanded aria-autocomplete aria-haspopup aria-owns accesskey role").css({width:"",display:"block"}),!this._dataSource()&&this.docbdy&&this.ultag.find("li").removeClass("e-active")&&this.docbdy.append(this.ultag.html()).show());this.wrapper.remove();this.container.off("mousedown",n.proxy(this._OnDropdownClick,this));this._hideResult();this.popupPanelWrapper.remove();this._unwireEvents()},_finalize:function(){this.value()==""&&this._visibleInput[0].value!==""&&this._updateValue(this.element[0].value);(t.isNullOrUndefined(this.value())||this.value()!="")&&this.value()===this.element.val()||this._setValue(this.value());(t.isNullOrUndefined(this.model.text)||this.model.text!="")&&this.model.text==this._visibleInput.val()||this._setText(this.model.text);this.selectedIndex(this.selectedIndex()!=-1?this.selectedIndex():this.selectedItemIndex());this.selectedIndex()!=-1?this._selectItemByIndex(this.selectedIndex()):this._selectedIndices.length>0&&this._selectCheckedItem(this._selectedIndices);this.model.disableItemsByIndex!=null&&this._disableItemByIndex(this.model.disableItemsByIndex);this.model.enableItemsByIndex!=null&&this._enableItemByIndex(this.model.enableItemsByIndex)},_initialize:function(){this._selectedIndices=this.model.selectedIndices.length>0?this.model.selectedIndices:this.model.selectedItems;this.model.selectedItems=this.model.selectedIndices=this._selectedIndices;this.model.selectedIndex=this.model.selectedIndex!=-1?this.model.selectedIndex:this.model.selectedItemIndex;this.element.is("select")&&(this.selectelement=!0,this._renderSelectToDropdown());this._initDisabledItems=[];this._isInteralCall=!1;this._prevSearchValue="";this._selectedItemsID=[];this._hiddenInputElement=[];this._boxValue=[];this._valueContainer=[];this._textContainer=[];this._checkedValues=[];this.target=this.element[0];this._disabledItems=[];this._queryString=null;this.suggLen=0;this._itemId=null;this.checkedStatus=!1;this._incqueryString="";this._activeItem=null;this.ddWidth=0;this._initValue=!0;this._virtualCount=0;this._raiseEvents=!0;this.popUpShow=!1;this._matchedListItems=[];this._prevQueryString=""},_renderSelectToDropdown:function(){var i,f,u,r;if(this.inputElement=t.buildTag("input.e-dropdownlist#"+this._id+"_input","",{},{type:"text","data-role":"none"}),this.inputElement.insertAfter(this.element),this.element.attr("name")&&(this.inputElement.attr("name",this.element.attr("name")),this.element.removeAttr("name")),this.selectOptions=this.element,this.selectOptions.attr("id",this._id),this._dataSource()==null){for(this.optionDiv=t.buildTag("div#"+this._id+"_list"),this.optionDiv.insertAfter(this.inputElement),this.optionUl=t.buildTag("ul"),this.optionDiv.append(this.optionUl),this.selectOptionItems=this.element.children("option"),f=this.selectOptionItems.length,this.optionDummyUl=n(),i=0;i<f;i++)r=this.selectOptionItems[i],u=n(r).attr("label")?n(r).attr("label"):r.innerHTML,u!=null&&(this.optionLi=t.buildTag("li",u,{},{"data-value":r.value,unselectable:"on"}),this.optionDummyUl.push(this.optionLi[0]),n(r).attr("selected")&&this.model.showCheckbox&&(n.inArray(i,this._selectedIndices)==-1?(this._selectedIndices.push(i),this.model.selectedItems=this.model.selectedIndices=this._selectedIndices):t.isNullOrUndefined(this.selectedIndex())&&this.selectedIndex(i)));this.optionUl.append(this.optionDummyUl)}this.element.css("display","none");this.element=this.inputElement},_render:function(){var r,i,u;this._renderDropdown();this._setWatermark();this.model.loadOnDemand&&(!this._dataSource()||this._dataSource().length!==0&&this._dataSource().length<1)&&(r=this.element.parents().last(),this.docbdy=this.model.targetID?r.find("#"+this.model.targetID):this.optionDiv?this.optionDiv:null,this.itemsContainer=this.docbdy[0].nodeName=="UL"?this.docbdy:this.docbdy.children("ol,ul"),this.itemsContainer.css("display","none"));this.model.loadOnDemand||(this._renderPopupPanelWrapper(),this._showFullList());this._roundedCorner(this.model.showRoundedCorner);i=this._dataSource();t.DataManager&&i instanceof t.DataManager?i.dataSource.offline&&i.dataSource.json&&i.dataSource.json.length>0&&(u=this,u._finalize()):this._finalize();t.DataManager&&this._dataSource()instanceof t.DataManager||this._finalize();this.model.loadOnDemand&&t.DataManager&&this._dataSource()instanceof t.DataManager&&!this._dataSource().dataSource.offline&&this._finalize();this._setCheckAll(this.model.checkAll);(this.element.attr("disabled")||n(this.selectOptions).attr("disabled"))&&this.disable();this.model.loadOnDemand&&this.model.showPopupOnLoad&&this._showResult()},_isEqualDataSource:function(n){var r,i,u;if(!this._dataSource()||!n||this._rawList&&!(this._rawList.length===n.length)||t.DataManager&&n instanceof t.DataManager||t.isNullOrUndefined(this._rawList)||this._dataSource().length===0)return!1;for(r=!0,i=0,u=this._dataSource().length;i<u;i++)if(this._dataSource()[i]!==n[i]){r=!1;break}return r},_checkModelDataBinding:function(n,i){this.element.val("");this._visibleInput.val("");this.value()!==null&&this.value()!==""&&this._updateValue("");this.selectedTextValue=this._selectedValue=this._hiddenValue="";this._updateText();this.selectedIndexValue=this._hiddenDelimiterIndex=this._activeItem=-1;this._selectedItemsID=[];this._textContainer=[];this._valueContainer=[];t.isNullOrUndefined(n)&&t.isNullOrUndefined(this.model.query)&&t.isNullOrUndefined(this.model.template)&&this.model.itemsCount==0&&(this._rawList=[],this.popupListItems=[],this.listitems=[],this.ultag=this.popupListWrapper.find(".e-ul"));this.model.selectedItems=this.model.selectedIndices=this._selectedIndices=[];this.model.selectedIndex=this.model.selectedItemIndex=-1;this.model.multiSelectMode=="visualmode"&&this._destroyBoxModel();JSON.stringify(this._dataSource())!=JSON.stringify(n)&&this._dataSource(n);this.model.query=i;t.isNullOrUndefined(this.ultag)||this.ultag.empty();this._showFullList()},_initDataSource:function(n){var i=this,r;t.DataManager&&n instanceof t.DataManager&&(i._addLoadingClass(),i._trigger("actionBegin",{requestFrom:"default"})||(r=n.executeQuery(this._getQuery()),r.done(function(n){i._trigger("actionSuccess",{e:n,requestFrom:"default"});i._totalCount=n.count;i._listItem(n.result);i._removeLoadingClass();i._renderPopupList();i._finalize();i._setDynamicSelectByVal(i,i._optionValue,n);this._optionValue=null}).fail(function(n){i._dataSource(null);i._addLoadingClass();i._trigger("actionFailure",{e:n,requestFrom:"default"})}).always(function(n){i._trigger("actionComplete",{e:n,requestFrom:"default"})})))},_listItem:function(t,i){i=="add"?(this.popupListItems.push(t),this._rawList.push(t)):n.isArray(t)&&(this.popupListItems=t.slice(0),this._rawList=t.slice(0))},_getQuery:function(n){var i,r=this.model.fields,u=t.Query(),f,e;if(!t.isNullOrUndefined(this.model.query)||this.model.template||n)this.model.query&&(u=this.model.query.clone());else{f=[];for(e in r)e!=="tableName"&&r[e]&&f.push(r[e]);f.length>0&&u.select(f)}return this.model.allowVirtualScrolling&&u.requiresCount(),this.model.itemsCount>0&&u.take(this.model.itemsCount),i=this._dataSource().dataSource,r&&(i&&i.url&&!i.url.match(r.tableName+"$")||i&&!i.url||!i)&&(t.isNullOrUndefined(r.tableName)||u.from(r.tableName)),u},_addLoadingClass:function(){this._isPopupShown()?this.popupListWrapper.addClass("e-load"):(this.dropdownbutton.addClass("e-load"),this.drpbtnspan.removeClass("e-icon e-arrow-sans-down"));this._readOnly=!0},_removeLoadingClass:function(){this.dropdownbutton.removeClass("e-load");this.drpbtnspan.addClass("e-icon e-arrow-sans-down");this._readOnly=!1;t.isNullOrUndefined(this.popupListWrapper)||this.popupListWrapper.removeClass("e-load")},_renderDropdown:function(){if(this.wrapper=t.buildTag("span.e-ddl e-widget "+this.model.cssClass+"#"+this._id+"_wrapper","",{},{accesskey:this.element.attr("accesskey"),role:"listbox","aria-expanded":!1,"aria-haspopup":!0,"aria-owns":this._id+"_popup",tabIndex:"0"}),this.container=t.buildTag("span.e-in-wrap e-box #"+this._id+"_container"),this.element.removeAttr("accesskey"),this.model.value==null&&this.element.attr("value")!=null&&(this.model.value=this.element.attr("value")),this.element.attr("value","").val(""),this._isIE8?this._setAttr(this.element[0],{unselectable:"on"}).element.hide():this._setAttr(this.element[0],{type:"hidden",unselectable:"on"}).element.hide(),this.drpbtnspan=t.buildTag("span.e-icon e-arrow-sans-down","",{},{"aria-label":"select",unselectable:"on"}),this.dropdownbutton=t.buildTag("span.e-select#"+this._id+"_dropdown","",{},{role:"button",unselectable:"on"}).append(this.drpbtnspan),this.container.insertAfter(this.element),this.container.append(this.element),this.container.append(this.dropdownbutton),this.wrapper.insertBefore(this.container),this.wrapper.append(this.container),this.selectelement&&this.selectOptions.insertBefore(this.element),this._visibleInput=t.buildTag("input#"+this._id+"_hidden","",{}).insertAfter(this.element),this._visibleInput.addClass("e-input "),this._setAttr(this._visibleInput[0],{readonly:"readonly",tabindex:"-1","data-role":"textbox"}),!this._isWatermark){var i=this.model.watermarkText!=null?this.model.watermarkText:this._localizedLabels.watermarkText;this._hiddenSpan=t.buildTag("span.e-input e-placeholder ").insertAfter(this.element);this._hiddenSpan.text(i);this._hiddenSpan.css("display","none");this._hiddenSpan.on("mousedown",n.proxy(this._OnDropdownClick,this))}this._checkNameAttr();this._setDimentions();this._RightToLeft();this.ddWidth=this.dropdownbutton.outerWidth()>0?this.dropdownbutton.outerWidth():24;this.container.on("mousedown",n.proxy(this._OnDropdownClick,this))},_checkNameAttr:function(){this._name=t.isNullOrUndefined(this.element.attr("name"))?this._id:this.element.attr("name");this.element.attr("name",this._name)},_addAttr:function(i){var r=this;n.map(i,function(i,u){var f=u.toLowerCase();f=="class"?r.wrapper.addClass(i):f=="disabled"&&i=="disabled"?r.disable():f=="readOnly"&&i=="readOnly"?r.model.readOnly=!0:f=="style"?r.wrapper.attr(u,i):f=="name"?n(r.element).attr(u,i):t.isValidAttr(r._visibleInput[0],u)?n(r._visibleInput).attr(u,i):r.wrapper.attr(u,i)})},_renderBoxModel:function(){if(!t.isNullOrUndefined(this._ulBox)||this.model.multiSelectMode!="visualmode")return!1;this._ulBox=t.buildTag("ul.e-ul e-boxes");this.container.prepend(this._ulBox);this._ulBox.css("min-height","30px");this._ulBox.css("display","none");this._on(this.container,"click",function(t){if(!this.model.enabled)return!1;var i=n(t.target);i.hasClass("e-options")&&(!t.ctrlKey&&i.siblings().hasClass("e-active")&&this._removeActive(),i.hasClass("e-active")?i.removeClass("e-active"):i.addClass("e-active"));!t.ctrlKey&&i.hasClass("e-boxes")&&this._removeActive()})},_renderPopupPanelWrapper:function(){var i=n("#"+this.element[0].id+"_popup_wrapper").get(0);i&&n(i).remove();this.popupPanelWrapper=t.buildTag("div#"+this._id+"_popup_wrapper");n(this.model.popupTarget).append(this.popupPanelWrapper);this.popupListWrapper=t.buildTag("div.e-ddl-popup e-box e-widget e-popup#"+this._id+"_popup_list_wrapper","",{display:"none",overflow:"hidden"});this._setAttr(this.popupListWrapper[0],{"data-role":"popup","aria-hidden":!0});this.popupList=t.buildTag("div",{tabIndex:0});this.popupListWrapper.addClass(this.model.cssClass);this.popup=this.popupList;this.popupScroller=t.buildTag("div");t.isNullOrUndefined(this.ultag)&&(this.ultag=t.buildTag("ul.e-ul","",{},{role:"listbox"}));this._setAttr(this.ultag[0],{id:this._id+"_popup","aria-hidden":!0,unselectable:"on"});this.popupScroller.append(this.ultag);this.popupList.append(this.popupScroller);this.model.headerTemplate&&(this.headerTemplate=n("<div>").append(this.model.headerTemplate),this.popupListWrapper.append(this.headerTemplate));this.popupListWrapper.append(this.popupList);this.popupPanelWrapper.append(this.popupListWrapper);this.ultag.on({mouseenter:n.proxy(this._OnMouseEnter,this),mouseleave:n.proxy(this._OnMouseLeave,this),click:n.proxy(this._OnMouseClick,this)},"li:not('.e-category')");if(t.isTouchDevice())this.ultag.on({tap:n.proxy(this._OnMouseEnter,this)},"li:not('.e-category')");n(window).on("resize",n.proxy(this._OnWindowResize,this))},_updateText:function(){var n=this._visibleInput.val();this.model.text=n==""?this._textContainer.length==0?null:"":n},_updateValue:function(n){this.value(n==""?this._valueContainer.length==0?null:"":n)},_setGroupingAndSorting:function(n,t){var i,u,r;if(this.model[n]=t,i=this.model.text,this._updateValue(""),this._selectedIndices=[],this.ultag.empty(),this._showFullList(),this.model.showCheckbox&&i)for(u=i.split(this.model.delimiterChar),r=0;r<u.length;r++)this.selectItemByText(u[r]);else this.selectItemByText(i)},_setSortingList:function(){var t=document.createElement("ul"),r,i;if(n(t).append(this.itemsContainer.children()),this.model.allowGrouping||n(t).find(">.e-category").length>0)for(this.popupListWrapper.addClass("e-atc-popup"),r=0;r<n(t).find(">.e-category").length;r++)i=n(t).find(">.e-category").eq(0).first().nextUntil(".e-category").get(),this._setSortList(t,i);else n(t).children(">.e-category").remove(),i=n(t).children("li").get(),this._setSortList(t,i);this.itemsContainer=n(t)},_setSortList:function(t,i){i.sort(function(t,i){var r=n(t).text().toUpperCase(),u=n(i).text().toUpperCase();return r<u?-1:r>u?1:0});this.model.sortOrder=="descending"&&i.reverse();(this.model.allowGrouping||n(t).find(">.e-category").length>0)&&(n(t).append(n("<li>").text(n(t).find(">.e-category").eq(0).text()).addClass("e-category")),n(t).find(">.e-category").eq(0).remove());n.each(i,function(i,r){n(t).append(r)})},_renderPopupList:function(){this._doDataBind();this.model.loadOnDemand&&t.DataManager&&this._dataSource()instanceof t.DataManager&&!this._dataSource().dataSource.offline&&this.model.showCheckbox&&this._checkboxHideShow(this.model.showCheckbox);(t.isNullOrUndefined(this.scrollerObj)||this._ulBox==null)&&this._renderRemaining();this.model.loadOnDemand&&this.popUpShow&&t.DataManager&&this._dataSource()instanceof t.DataManager&&!this._dataSource().dataSource.offline&&(this._refreshPopup(),this._refreshScroller())},_renderRemaining:function(){var i=this;t.isNullOrUndefined(this.popupListWrapper)||this._dropbtnRTL();this.model.enableFilterSearch&&this._enableSearch();this.model.enablePopupResize&&this._enablePopupResize();this.model.allowVirtualScrolling&&this.model.virtualScrollMode=="normal"&&this._totalCount&&this._totalCount>0&&(this._totalHeight=this._totalCount*29,this._totalPages=this._totalCount/(this.model.itemsCount*29),this._loadedItemHeight=this._getLi().length*29,this._getLi().attr("page",0),this._virtualPages=[0],this.ultag.append(n("<span>").addClass("e-virtual").css({height:this._totalHeight-this._loadedItemHeight,display:"block"})));this._virtualUl=this.ultag.clone(!0);t.isNullOrUndefined(this.popupListWrapper)||(this._setListWidth(),this._setListHeight());this._isSingleSelect()||(this.model.showCheckbox?this._checkboxHideShow(this.model.showCheckbox):this._multiItemSelection(this._getLi()));this._setUncheckAll(this.model.uncheckAll);t.isNullOrUndefined(this.popupListWrapper)||(this.popupScroller.css({height:"",width:""}),this.popupList.ejScroller({height:this._getPopupHeight(),width:0,scrollerSize:20,scroll:function(n){i.model.allowVirtualScrolling&&i._onScroll(n)},preventDefault:!0}),this.scrollerObj=this.popupList.ejScroller("instance"),this.popupList.find("div.e-scrollbar div").attr("unselectable","on"),this._setListPosition(),this.popUpShow||this.popupListWrapper.css({display:"none",visibility:"visible"}),this._changeSkin(this.model.cssClass));this.model.loadOnDemand||this.model.showPopupOnLoad&&this._showResult()},_enableSearch:function(){if(this.model.enableFilterSearch&&!t.isNullOrUndefined(this.popupListWrapper)&&!this.inputSearch){this.inputSearch=t.buildTag("input#"+this._id+"_inputSearch.e-input","",{},{type:"text","data-role":"none"});this.popupListWrapper.prepend(n("<span>").addClass("e-atc e-search").append(n("<span>").addClass("e-in-wrap ").append(this.inputSearch).append(n("<span>").addClass(" e-icon e-search"))));var i=this.model.enableServerFiltering?this._debounce(this._OnSearchEnter,200):this._OnSearchEnter;this._on(this.inputSearch,"keyup",i)._on(this.inputSearch,"keydown",function(n){var t=n.keyCode||n.which;t==9&&(n.preventDefault(),this.wrapper.focus(),this._hideResult())})}},_removeSearch:function(){this.model.enableFilterSearch=!1;this.popupListWrapper.find(".e-atc.e-search").remove();this._isPopupShown()&&this.hidePopup();this.inputSearch=null},_OnSearchEnter:function(i){var u,f,r;(this._prevSearchValue==""||this._prevSearchValue!=this.inputSearch.val())&&((this._prevSearchValue=this.inputSearch.val(),t.isNullOrUndefined(this._rawList))||(i.keyCode==8&&this.model.enableFilterSearch&&(this._disabledItems=this._initDisabledItems,this._prevDisabledItems=this._disabledItems),u=this,n.inArray(i.keyCode,[38,40,13])!=-1&&this.ultag.find("li.e-nosuggestion").length<=0?i.keyCode==13?this._OnKeyUp(i):this._OnKeyDown(i):(this._activeItem=-1,this._queryString=this.inputSearch.val(),this._queryString==""&&this._virtualUl?(r={searchString:this._queryString,searchQuery:null,items:this._rawList},this._trigger("search",r),this._resetList(i),this._updateSelectedIndexByValue(this.value()),this._refreshScroller(),this._setListPosition(),this._prevDisabledItems&&this._prevDisabledItems.length>0&&(this._disabledItems=[],this._isInteralCall=!0,this.disableItemsByIndices(this._prevDisabledItems),this._isInteralCall=!1,this._prevDisabledItems=this._disabledItems)):(this._mapFields(),f=this._addSearchQuery(t.Query(),!this._isPlainType(this._rawList)),r={searchString:this._queryString,items:this._rawList,searchQuery:f},this.popupListWrapper.find(".e-atc.e-search .e-search").addClass("e-cross-circle").removeClass("e-search"),this._on(this.popupListWrapper.find(".e-atc.e-search .e-cross-circle"),"mousedown",this._refreshSearch),this._trigger("search",r)||u._onActionComplete(r)))))},_debounce:function(n,t){var i,r=this;return function(){var u=arguments,f=function(){return i=null,n.apply(r,u)};clearTimeout(i);i=setTimeout(f,t)}},_onActionComplete:function(n){var r=this,n,i,u;this._queryString=this.inputSearch.val();i=this._addSearchQuery(t.Query(),!this._isPlainType(this._rawList));n={searchString:this._queryString,items:this._rawList,searchQuery:i};t.DataManager&&this._dataSource()instanceof t.DataManager&&this.model.enableServerFiltering&&(window.getSelection().type=="Caret"||t.browserInfo().name=="msie")?(i=n.searchQuery.clone(),u=r._dataSource().executeQuery(i),u.done(function(t){r._filterSearch(n.searchQuery,t)})):r._filterSearch(i,n)},_refreshSearch:function(){this._resetSearch();this._refreshPopup();this._initDisabledItems&&this._initDisabledItems.length>0&&(this._disabledItems=[],this.disableItemsByIndices(this._initDisabledItems),this._prevDisabledItems=this._disabledItems)},_filterSearch:function(n,i){var o=!1,u,f,r,e,s;this.resultList=i.result?i.result:t.DataManager(this._rawList).executeLocal(n);this.resultList.length==0&&(o=!0,this.resultList.push(this._getLocalizedLabels("emptyResultText")));u=[];this._initDisabledItems.forEach(function(n){this._rawList.forEach(function(t){this._rawList.indexOf(t)==n&&u.push(t)},this)},this);f=[];u.length>0&&this.resultList.forEach(function(n){u.indexOf(n)>=0&&f.push(this.resultList.indexOf(n))},this);this.popupListItems=this.resultList;this.ultag.empty();this._isPlainType(this.popupListItems)?this._plainArrayTypeBinding(this.resultList):this._objectArrayTypeBinding(this.resultList,"search");o&&this.ultag.find("li").length==1&&this.ultag.find("li").eq(0).addClass("e-nosuggestion");this.model.showCheckbox&&!o&&this._appendCheckbox(this._getLi());this._onSearch=!0;r=this.value();e=this._visibleInput[0].value;this._setValue(this.value());s=typeof this.model.value=="function"?this.model.value():this.model.value;s!=r&&(this.element[0].value=r,this._visibleInput[0].value=e,this.model.text=e==""?null:e,this.value()==r||this.value()==null&&r==""||this._updateValue(r));this._onSearch=!1;this._updateSelectedIndexByValue(this.value());this._refreshScroller();this._setListPosition();this._prevDisabledItems=this._disabledItems;this._disabledItems=[];f.length>0&&(this._isInteralCall=!0,this.disableItemsByIndices(f),this._isInteralCall=!1)},_updateSelectedIndexByValue:function(t){var u,r,i;if(t&&this.model.enableFilterSearch){for(this._selectedIndices=this.model.selectedItems=this.model.selectedIndices=[],this._virtualList=this._virtualUl.children("li:not('.e-category')"),u=this._toArray(t),r=0;r<u.length;r++)for(i=0;i<this._virtualList.length;i++)if(u[r]==this._getIndexedValue(this._virtualList[i])){n.inArray(i,this._selectedIndices)==-1&&this._selectedIndices.push(i);break}this.model.selectedItems=this.model.selectedIndices=this._selectedIndices;this.model.selectedIndices.length==1&&(this.model.selectedIndex=this.selectedIndexValue=this.model.selectedIndices[0])}},_getIndexedValue:function(n){return this._getAttributeValue(n)?this._getAttributeValue(n):n.innerText},_resetSearch:function(){this.inputSearch&&this.model&&this.model.enableFilterSearch&&this.inputSearch.val()!=""&&this._virtualUl&&(this.inputSearch.val(""),this._prevSearchValue="",this._resetList())},_resetList:function(n){var r,i,u;if(this.popupListWrapper.find(".e-atc.e-search .e-cross-circle").length==1&&(this.popupListWrapper.find(".e-atc.e-search .e-cross-circle").addClass("e-search").removeClass("e-cross-circle"),this._off(this.popupListWrapper.find(".e-atc.e-search .e-cross-circle"),"mousedown",this._refreshSearch)),this.model.enableServerFiltering){for(r=this.model.fields&&this.model.fields.value?this.model.fields.value:"value",i=0;i<this._rawList.length;i++)this._rawList[i][r]==this._selectedValue&&(this._searchresult=null);t.isNullOrUndefined(this._searchresult)||this.model.allowVirtualScrolling&&this.model.virtualScrollMode=="normal"||this.addItem(this._searchresult)}this._listItem(this._rawList);this.model.enableSorting&&(u=t.Query().sortBy(this.mapFld._text,this.model.sortOrder,!0),this._rawList=t.DataManager(this._rawList).executeLocal(u),this.popupListItems=this._rawList);this.ultag.empty().append(this._virtualUl.children().clone(!0));this._onSearch=!0;this._setValue(this.value(),n);this._onSearch=!1;this._searchresult=[];this._initDisabledItems&&this._initDisabledItems.length>0&&(this._disabledItems=[],this.disableItemsByIndices(this._initDisabledItems),this._prevDisabledItems=this._disabledItems)},_addSearchQuery:function(n,t){var r="",i;return t&&(i=this.model.fields,r=i&&i.text?i.text:"text"),this._queryString&&n.where(r,this.model.filterType,this._queryString,!this.model.caseSensitiveSearch),this.model.itemsCount>0&&n.take(this.model.itemsCount),n},_targetElementBinding:function(){var e=this.element.parents().last(),r,f,t,u,i;if(this.docbdy=this.model.targetID?e.find("#"+this.model.targetID):this.optionDiv?this.optionDiv:null,!this.docbdy)return!1;if(this.itemsContainer=this.docbdy[0].nodeName=="UL"?this.docbdy:this.docbdy.children("ol,ul"),(this.model.allowGrouping||this.itemsContainer.find(">.e-category").length>0)&&!this.model.enableSorting)for(this.popupListWrapper.addClass("e-atc-popup"),r=0;r<this.itemsContainer.find(">.e-category").length;r++)f=this.itemsContainer.find(">.e-category").eq(r),f.replaceWith(n("<li>").text(f.text()).addClass("e-category"));else this.model.enableSorting&&this._setSortingList();for(this.itemsContainer.children("ol,ul").remove(),this.items=this.model.loadOnDemand?this.itemsContainer.children().length>0?this.itemsContainer.children("li"):this.items:this.itemsContainer.children("li"),this.items.children("img,div").addClass("e-align"),this._listItem([]),t=0;t<this.items.length;t++)u=n(this.items[t]).text(),i=this._getAttributeValue(this.items[t]),this.items[t].getAttribute("id")&&this.items[t].getAttribute("id")!=""||n(this.items[t]).attr("id",this._id+"_"+t+"_popup_option"),n(this.items[t]).attr("data-value")||n(this.items[t]).attr("data-value",i?i:u),this._listItem({text:u,value:i?i:u},"add");this.model.loadOnDemand?this.ultag.empty().append(this.items):this.ultag.empty().append(this.itemsContainer.children());this.ultag.children("li").attr("role","option").attr("unselectable","on").attr("aria-selected","false").attr("tabindex","-1");this.docbdy.css({display:"none"}).children("ol,ul").remove()},_plainArrayTypeBinding:function(i){var r,u;if(this.dummyUl=n(),this.model.enableSorting&&(i.sort(),this.model.sortOrder=="descending"&&i.reverse()),i.length>0){for(r=0;r<i.length;r++)t.isNullOrUndefined(i[r])||(u=t.buildTag("li",i[r],{},{"data-value":i[r],unselectable:"on"}),this.dummyUl.push(u[0]));this.ultag.append(this.dummyUl);this._trigger("dataBound",{data:i})}},_mapFields:function(){this.model.fields.groupBy=this.model.fields.groupBy?this.model.fields.groupBy:this.model.fields.category;var n=this.model.fields;this.mapFld={_id:null,_imageUrl:null,_imageAttributes:null,_spriteCSS:null,_text:null,_value:null,_htmlAttributes:null,_selected:null};this.mapFld._id=n&&n.id?n.id:"id";this.mapFld._imageUrl=n&&n.imageUrl?n.imageUrl:"imageUrl";this.mapFld._imageAttributes=n&&n.imageAttributes?n.imageAttributes:"imageAttributes";this.mapFld._spriteCSS=n&&n.spriteCssClass?n.spriteCssClass:"spriteCssClass";this.mapFld._text=n&&n.text?n.text:"text";this.mapFld._value=n&&n.value?n.value:"value";this.mapFld._htmlAttributes=n&&n.htmlAttributes?n.htmlAttributes:"htmlAttributes";this.mapFld._selected=n&&n.selected?n.selected:"selected";this.mapFld._category=n&&n.groupBy?n.groupBy:"groupBy"},_doDataBind:function(){var t=this._dataSource(),n=this.popupListItems;!t||!n||!n.length||n.length<1?this._targetElementBinding():this._isPlainType(n)?this._plainArrayTypeBinding(n):this._objectArrayTypeBinding(n)},_isPlainType:function(n){return typeof n[0]!="object"},_objectArrayTypeBinding:function(i,r){var s,h,u,o,f,e;if(this.dummyUl=n(),this._mapFields(),this.model.enableSorting&&(s=t.Query().sortBy(this.mapFld._text,this.model.sortOrder,!0),i=t.DataManager(i).executeLocal(s),this.popupListItems=i),this.model.allowGrouping||this.model.fields.groupBy)for(t.isNullOrUndefined(this.popupListWrapper)||this.popupListWrapper.addClass("e-atc-popup"),h=this.mapFld._category,o=t.Query().group(h),this.model.enableSorting||o.queries.splice(0,1),u=t.DataManager(i).executeLocal(o),this._swapUnCategorized(u),r=="search"?this.popupListItems=[]:this._listItem([]),f=0;f<u.length;f++)for(u[f].key&&this.ultag.append(t.buildTag("li.e-category",u[f].key).attr("role","option")[0]),this._generateLi(u[f].items,this.mapFld),this.ultag.append(this.dummyUl),e=0;e<u[f].items.length;e++)r=="search"?this.popupListItems.push(u[f].items[e]):this._listItem(u[f].items[e],"add");else this._generateLi(i,this.mapFld),this.ultag.append(this.dummyUl);this._trigger("dataBound",{data:i})},_onScroll:function(i){var e,o,f;if(i.scrollTop){var s=i.scrollTop,r=this,u=this._dataSource();r.model.allowVirtualScrolling&&r.model.virtualScrollMode=="continuous"?(f=t.Query().skip(r._rawList.length).take(r.model.itemsCount).clone(),s>=Math.round(n(r.popupList).find("ul,ol").height()-n(r.popupList).height())&&r._rawList.length<r._totalCount&&(r._addLoadingClass(),t.DataManager&&r._dataSource()instanceof t.DataManager&&!t.isNullOrUndefined(r._dataSource().dataSource.url)?(f=r.inputSearch&&r.inputSearch.val()!=""&&this.model.enableServerFiltering?r._addSearchQuery(t.Query(),!r._isPlainType(r._rawList)).skip(r._getLi().length).clone():r._getQuery().skip(r._rawList.length).take(r.model.itemsCount).clone(),r._trigger("actionBegin",{requestFrom:"scroll"})||(o=r._dataSource().executeQuery(f),o.done(function(n){!t.isNullOrUndefined(r.model.value)&&r.model.enableServerFiltering&&(n.result=r._removeSelectedValue(n.result));r.addItem(n.result);r._removeLoadingClass();r._trigger("actionSuccess",{e:n,requestFrom:"scroll"})}).fail(function(){r._dataSource(null);r._removeLoadingClass();r._trigger("actionFailure",{e:i,requestFrom:"scroll"})}).always(function(n){r._trigger("actionComplete",{e:n,requestFrom:"scroll"})}))):t.DataManager&&u instanceof t.DataManager&&u.dataSource.offline&&u.dataSource.json&&u.dataSource.json.length>0?(r.addItem(this._localDataVirtualScroll()),window.setTimeout(function(){r._removeLoadingClass()},100)):(e=t.DataManager(r._dataSource()).executeLocal(f),r.addItem(r._removeSelectedValue(e)),r._removeLoadingClass()))):r.model.allowVirtualScrolling&&r.model.virtualScrollMode=="normal"&&window.setTimeout(function(){r._virtualCount==0&&r._loadList()},300)}},_localDataVirtualScroll:function(){var n=this,i=t.isNullOrUndefined(n.value())?0:typeof n.value()=="number"?1:n.value().split(n.model.delimiterChar).length,r=n._checkValue?n._rawList.length-i:n._rawList.length,u=t.DataManager(n._dataSource().dataSource.json).executeLocal(t.Query().skip(r).take(n.model.itemsCount).clone());return n._removeSelectedValue(u)},_removeSelectedValue:function(n){var u,r,i;if(t.isNullOrUndefined(this.value()))return n;for(u=typeof this.value()=="number"?this.value():this.value().split(this.model.delimiterChar),r=0;r<u.length;r++)for(i=0;i<n.length;i++)n[i][this.mapFld._value]==u[r]&&n.splice(n.indexOf(n[i]),1);return n},_loadList:function(){var r,h,c,l,a,u;this._virtualCount++;var e=this._dataSource(),v=this.scrollerObj.scrollTop(),i=this,o=0,f,s=null;if(this._currentPage=Math.round(v/(29*this.model.itemsCount)),this._virtualPages){if(n.inArray(this._currentPage,this._virtualPages.sort(function(n,t){return n-t}))!=-1)if(this._currentPage==0){if(n.inArray(this._currentPage+1,this._virtualPages)!=-1)return this._virtualCount--,!1;this._currentPage=this._currentPage+1}else if(n.inArray(this._currentPage-1,this._virtualPages)!=-1){if(n.inArray(this._currentPage+1,this._virtualPages)!=-1)return this._virtualCount--,!1;this._currentPage=this._currentPage+1}else this._currentPage=this._currentPage-1;for(f=!(n.inArray(this._currentPage-1,this._virtualPages)!=-1),this._addLoadingClass(),r=this._virtualPages.length-1;r>=0;r--)if(this._virtualPages[r]<this._currentPage){o=this._virtualPages[r];r+1==this._virtualPages.length||(s=this._virtualPages[r+1]);break}}if(h=f?(this._currentPage-1)*this.model.itemsCount:this._currentPage*this.model.itemsCount,u=t.Query().range(h,this._currentPage*this.model.itemsCount+this.model.itemsCount),t.DataManager&&i._dataSource()instanceof t.DataManager&&!t.isNullOrUndefined(i._dataSource().dataSource.url)){if(a=f?(this._currentPage-1)*this.model.itemsCount:this._currentPage*this.model.itemsCount,u=this._getQuery().skip(a),f){for(r=0;r<u.queries.length;r++)if(u.queries[r].fn=="onTake"){u.queries.splice(r,1);break}u.take(2*this.model.itemsCount)}i._trigger("actionBegin",{requestFrom:"scroll"})||(i.inputSearch&&i.inputSearch.val()!=""&&this.model.enableServerFiltering&&(u=i._addSearchQuery(t.Query(),!i._isPlainType(i._rawList)).skip(i._getLi().length).clone()),c=i._dataSource().executeQuery(u),c.done(function(n){n.result=i._removeSelectedValue(n.result);i._appendVirtualList(n.result,o,i._currentPage,s,f);i._removeLoadingClass();i._trigger("actionSuccess",{e:n,requestFrom:"scroll"})}).fail(function(n){i._virtualCount--;i._removeLoadingClass();i._trigger("actionFailure",{e:n,requestFrom:"scroll"})}).always(function(n){i._trigger("actionComplete",{e:n,requestFrom:"scroll"})}))}else t.DataManager&&e instanceof t.DataManager&&e.dataSource.offline&&e.dataSource.json&&e.dataSource.json.length>0?(i._appendVirtualList(this._localDataVirtualScroll(),o,i._currentPage,s,f),window.setTimeout(function(){i._removeLoadingClass()},100)):(l=t.DataManager(i._dataSource()).executeLocal(u),i._appendVirtualList(i._removeSelectedValue(l),o,i._currentPage,s,f),i._removeLoadingClass())},_appendVirtualList:function(i,r,u,f,e){var o,h,l,s,a,c;if(this._virtualPages){if(this._virtualCount--,this.ultag.find("span.e-virtual").remove(),t.isNullOrUndefined(this.activeItem)||this.activeItem.attr("page","0"),n.inArray(u,this._virtualPages.sort(function(n,t){return n-t}))!=-1)return!1;for(e&&n.inArray(u-1,this._virtualPages.sort())!=-1&&(i.splice(0,this.model.itemsCount),e=!1),o=this.model.itemsCount,h=n("<ul>"),l=e?(u-1)*o*29-(r*o+o)*29:u*o*29-(r*o+o)*29,l!=0&&h.append(n("<span>").addClass("e-virtual").css({display:"block",height:l})),this._mapFields(),this._generateLi(i,this.mapFld),n(this.dummyUl).attr("page",u),e&&n(this.dummyUl).slice(0,o).attr("page",u-1),this.model.showCheckbox&&this._appendCheckbox(this.dummyUl),h.append(this.dummyUl),s=(u*o+o)*29,s=f!=null?f*o*29-s:this.ultag.height()-s,s!=0&&h.append(n("<span>").addClass("e-virtual").css({display:"block",height:s})),a=this.model.itemsCount>0&&this.value()!=""&&this._dataSource()instanceof t.DataManager&&this._dataSource().dataSource.offline?this.ultag.find("li").last():this.ultag.find("li[page="+r+"]").last(),a.next().remove(),h.children().insertAfter(a),this._virtualPages.push(u),e&&this._virtualPages.push(u-1),c=0;c<i.length;c++)this._listItem(i[c],"add");this._virtualUl=this.ultag.clone(!0);this._renderBoxModel()}},_generateLi:function(i,r){var u,s,p,c;if(this.mapFld=r,this.dummyUl=[],!i||!i.length||i.length<1)return!1;for(u=0;u<i.length;u++){var e=this._getField(i[u],this.mapFld._id),l=this._getField(i[u],this.mapFld._imageUrl),a=this._getField(i[u],this.mapFld._imageAttributes),v=this._getField(i[u],this.mapFld._spriteCSS),o=this._getField(i[u],this.mapFld._text),h=this._getField(i[u],this.mapFld._value),y=this._getField(i[u],this.mapFld._htmlAttributes),w=this._getField(i[u],this.mapFld._selected),f=document.createElement("li");f.setAttribute("data-uid",Math.random().toString(36).substr(2,4));t.isNullOrUndefined(h)?f.setAttribute("data-value",o):f.setAttribute("data-value",typeof h=="object"?JSON.stringify(h):h);t.isNullOrUndefined(e)||e===""&&e==0||f.setAttribute("id",e);t.isNullOrUndefined(y)||y==""||this._setAttr(f,y);(t.isNullOrUndefined(e)||e==""&&e!=0)&&this._setAttr(f,{id:this._id+"_"+u+"_popup_option","aria-selected":!1,tabindex:-1});this.model.template?n(f).append(this._getTemplatedString(i[u])):(t.isNullOrUndefined(l)||l==""||(s=document.createElement("img"),this._setClass(s,"e-align")._setAttr(s,{src:l,alt:o}),a&&a!=""&&this._setAttr(s,a),f.appendChild(s)),t.isNullOrUndefined(v)||v==""||(p=document.createElement("div"),this._setClass(p,"div.e-align "+v+" sprite-image"),f.appendChild(p)),w&&this._setClass(f,"chkselect"),t.isNullOrUndefined(o)&&(o=String(o)),c=document.createElement("span"),c.appendChild(document.createTextNode(o)),this._setClass(c,"e-ddltxt"),f.appendChild(c));this._setAttr(f,{role:"option",unselectable:"on"});this.dummyUl.push(f)}},_setAttr:function(t,i){var u,r,f;if(typeof i=="string")u=i.replace(/['"]/g,"").split("="),u.length==2&&(t.hasAttribute(u[0])&&u[0]=="class"?n(t).addClass(u[1]):t.setAttribute(u[0],u[1]));else for(r in i)if((r=="styles"||r=="style")&&typeof i[r]=="object")for(f in i[r])t.style[f]=i[r][f];else t.setAttribute(r,i[r]);return this},_setClass:function(n,t){return n.className+=" "+t,this},_removeClass:function(n,t){var i=n.className.indexOf(t);return i>=0&&(n.className=i!=0&&n.className[i-1]===" "?n.className.replace(" "+t,""):n.className.replace(t,"")),this},_hasClass:function(n,t){return n.className.indexOf(t)>=0},_swapUnCategorized:function(t){n(t).each(function(n,i){if(!i.key){for(var r=n;r>0;r--)t[r]=t[r-1];return t[r]=i,!1}})},_getField:function(n,i){return t.pvt.getObject(i,n)},_getTemplatedString:function(n){for(var t=this.model.template,i=t.indexOf("${"),r=t.indexOf("}"),u,f;i!=-1&&r!=-1;)u=t.substring(i,r+1),f=u.replace("${","").replace("}",""),t=t.replace(u,this._getField(n,f)),i=t.indexOf("${"),r=t.indexOf("}");return t},_setWatermark:function(){if(this.element.val()==""&&this._trim(this._visibleInput.val())==""){var n=this.model.watermarkText!=null?this.model.watermarkText:this._localizedLabels.watermarkText;this._isWatermark?this._visibleInput.attr("placeholder",n):this._hiddenSpan.css("display","block").text(n);this.model.multiSelectMode=="visualmode"&&this._ulBox&&this._ulBox.find("li").length==0&&this._swapUlandInput(!1)}},_checkboxHideShow:function(n){if(!t.isNullOrUndefined(this.ultag)){if(n){this.listitems=this._getLi();var i=this.listitems.find("input[type=checkbox]");i.length==0&&this._appendCheckbox(this.listitems)}else this._removeCheck(this.popupList);this.model.showCheckbox=n;this._virtualUl=this.ultag.clone(!0)}},_setCheckAll:function(n){!this._isSingleSelect()&&n?this.checkAll():this.model.checkAll=!1},_setUncheckAll:function(n){!this._isSingleSelect()&&n?this.uncheckAll():this.model.uncheckAll=!1},checkAll:function(){var f,u,i,r,e;if(this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),f=this._selectedIndices,u=!1,this._mapFields(),this.listitems=this._getLi(),this._isWatermark||this._hiddenSpan.css("display","none"),!this._isSingleSelect()){for(i=0;i<this.listitems.length;i++)this._currentText=this._isPlainType(this.popupListItems)?this.popupListItems[i]:this._decode(this._getField(this.popupListItems[i],this.mapFld._text)),this._hiddenValue=this._getAttributeValue(this.listitems[i])||this._currentText,this._checkContains(this._hiddenValue)?u=!0:this.model.showCheckbox?(r=n(this.listitems[i]).children(".e-checkwrap")[0],r&&!this._isChecked(r)?(this._setClass(r,"e-check-act"),n(r).hasClass("e-check-inact")&&n(r).removeClass("e-check-inact"),this._setAttr(r,{"aria-checked":!0}),r.firstChild.checked=!0,u=!1):u=!0):(u=!1,n(this.listitems[i]).addClass("e-active")),u||(this.checkedStatus=!0,this._itemID=n(this.listitems[i]).attr("id"),t.isNullOrUndefined(this._itemID)||this._itemID==""&&this._itemID!=0||this._selectedItemsID.push(this._itemID),this._createListHidden(this._hiddenValue),this.model.multiSelectMode=="visualmode"&&(this._ulBox.append(this._createBox(this._currentText,this._hiddenValue)),this._isPopupShown()&&this._setListPosition()),this._addText(this._currentText),n.inArray(i,f)==-1&&(this._selectedIndices.push(i),this.model.selectedItems=this.model.selectedIndices=this._selectedIndices),this._selectedValue=this._getAttributeValue(this.listitems[i])||"",this._initValue||this._trigger("checkChange",{isChecked:this.checkedStatus,data:this.model}),e={text:this._visibleInput[0].value,selectedText:this._currentText,itemId:i,selectedValue:this._selectedValue,value:this._selectedValue,isChecked:this.checkedStatus},this._updateValue(this.element.val()),this._updateText(),this._initValue||this._trigger("change",e),this._activeItem=i,this.activeItem=this._getActiveItem(),this._cascadeAction());this.model.itemValue=this._selectedValue;this.model.uncheckAll=!1;this.model.checkAll=!0;this._activeItem=-1;this._setWatermark()}},_createListHidden:function(t){var i=document.createElement("input"),r=/'/;r.test(t)&&(t=t.replace(r,"'"));this._setAttr(i,{type:"hidden",name:this._name,value:t,id:"#"+t});n.inArray(i.value,this._hiddenInputElement)==-1&&(this._hiddenInputElement.push(i.value),this._boxValue.push(i.value),this.container.append(i),n(this.element).attr("name","hiddenEle"))},_removeListHidden:function(t){var u=/'/,i,r;u.test(t)&&(t=t.replace(u,"'"));i=this.container.find("[id='#"+t+"']");this._hiddenInputElement.splice(n.inArray(i.value,this._hiddenInputElement),1);r=this._boxValue.indexOf(t);r!=-1&&this._boxValue.splice(r,1);n(i).remove();this._isSingleSelect()||this.element.val()!=""||this.element.attr("name",this._name)},_getAttributeValue:function(n){if(!t.isNullOrUndefined(n))var i=t.isNullOrUndefined(n.getAttribute("data-value"))?n.getAttribute("value"):n.getAttribute("data-value");return n?i:null},_selectCheckedItem:function(n){this.model.loadOnDemand&&(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList();for(var i=0;i<n.length;i++)this._activeItem=n[i],this.ultag.children()[this._activeItem]&&this._enterTextBoxValue()},unCheckAll:function(){this.uncheckAll()},uncheckAll:function(){var u=!1,i,r,f,e;if(this.listitems=this._getLi(),this._mapFields(),!this._isSingleSelect()){for(i=0;i<this.listitems.length;i++)this._currentText=this._isPlainType(this.popupListItems)?this.popupListItems[i]:this._getField(this.popupListItems[i],this.mapFld._text),this._hiddenValue=this._getAttributeValue(this.listitems[i])||this._currentText,this._checkContains(this._hiddenValue)?this.model.showCheckbox?(r=n(this.listitems[i]).children(".e-checkwrap")[0],r&&this._isChecked(r)?(this._removeClass(r,"e-check-act"),this._setAttr(r,{"aria-checked":!1}),r.firstChild.checked=!1,u=!0):u=!1):(n(this.listitems[i]).removeClass("e-active"),u=!0):u=!1,u&&(this.checkedStatus=!1,this._activeItem=i,this.activeItem=this._getActiveItem(),this._removeText(this._hiddenValue),this._removeListHidden(this._hiddenValue),f=this._selectedIndices,n.inArray(i,f)>-1&&(this._selectedIndices.splice(n.inArray(i,f),1),this.model.selectedItems=this.model.selectedIndices=this._selectedIndices),this._selectedValue=this._getAttributeValue(this.listitems[i])||"",this._itemID=n(this.listitems[i]).attr("id"),t.isNullOrUndefined(this._itemID)||this._itemID==""&&this._itemID!=0||this._removeSelectedItemsID(),this._initValue||this._trigger("checkChange",{isChecked:this.checkedStatus,data:this.model}),e={text:this._visibleInput[0].value,selectedText:this._currentText,itemId:i,selectedValue:this._selectedValue,value:this._selectedValue,isChecked:this.checkedStatus},this._updateValue(this.element.val()),this._updateText(),this._initValue||this._trigger("change",e),this._cascadeAction(),this.model.multiSelectMode=="visualmode"&&(this._deleteBoxCheck(this._hiddenValue),this._isPopupShown()&&this._setListPosition()));this.model.itemValue=this._selectedValue;this.model.checkAll=!1;this.model.uncheckAll=!0;this._setWatermark();this._activeItem=-1;this._clearTextboxValue()}},_removeSelectedItemsID:function(){var n;n=this._selectedItemsID.indexOf(this._itemID);this._selectedItemsID.splice(n,1);this._itemID=""},_refreshScroller:function(){if(!t.isNullOrUndefined(this.popupListWrapper)){this.model.enablePopupResize||(this.popupList.css("height","auto"),this.popupListWrapper.css("height","auto"));this.popupList.find(".e-content, .e-vhandle").removeAttr("style");this.popupList.find(".e-vhandle div").removeAttr("style");this.popupList.children(".e-content").removeClass("e-content");var n=this._isPopupShown();this.popupListWrapper.css("display","block");this.popupList.css({display:"block"});this.scrollerObj.model.height=Math.ceil(this._getPopupHeight());this.scrollerObj.refresh();this.model.enablePopupResize||(this.popupList.css("height","auto"),this.popupListWrapper.css("height","auto"));this.scrollerObj.option("scrollTop",0);n||this.popupListWrapper.css("display","none")}},_enablePopupResize:function(){this.model.enablePopupResize&&!t.isNullOrUndefined(this.popupListWrapper)&&(this.popupListWrapper.addClass("e-resizable").append(t.buildTag("div.e-resizebar").append(t.buildTag("div.e-icon e-resize-handle"))).find(".e-resize-handle").addClass(this.model.enableRTL?"e-rtl-resize":""),this._resizePopup())},_resizePopup:function(){var t=this,i=!1;this.popupListWrapper.find("div.e-resize-handle").ejResizable({minHeight:t._validatePixelData(t.model.minPopupHeight),minWidth:t._validatePixelData(t.model.minPopupWidth),maxHeight:t._validatePixelData(t.model.maxPopupHeight),maxWidth:t._validatePixelData(t.model.maxPopupWidth),handle:"e-ddl-popup",resizeStart:function(n){if(!t.model.enabled)return!1;i||t._trigger("popupResizeStart",{event:n});i=!0},resize:function(i){var r=n(i.element).parents("div.e-ddl-popup");t._refreshPopupOnResize(n(r).outerHeight(),n(r).outerWidth());t._trigger("popupResize",{event:i})},resizeStop:function(n){i&&(t._refreshPopupOnResize(t.model.popupHeight,t.model.popupWidth),i&&t._trigger("popupResizeStop",{event:n}),i=!1)},helper:function(i){var r=n(i.element).parents("div.e-ddl-popup");return t._refreshPopupOnResize(n(r).outerHeight(),n(r).outerWidth()),n(t.popupListWrapper)}})},_refreshPopupOnResize:function(n,t){n&&(this.model.popupHeight=n);t&&(this.model.popupWidth=t);this.popupListWrapper.css({height:this._validatePixelData(this.model.popupHeight),"min-height":this._validatePixelData(this.model.minPopupHeight),"max-height":this._validatePixelData(this.model.maxPopupHeight)});this._setListWidth();this._refreshScroller()},_setListWidth:function(){if(!t.isNullOrUndefined(this.popupListWrapper)){var n=this.model.popupWidth;n!="auto"?this.popupListWrapper.css({width:n}):this.popupListWrapper.css({"min-width":this._validatePixelData(this.model.minPopupWidth)});this.popupListWrapper.css({"max-width":this._validatePixelData(this.model.maxPopupWidth)})}},_setListHeight:function(){t.isNullOrUndefined(this.popupListWrapper)||(this.model.enablePopupResize&&this.model.enableFilterSearch&&this.model.minPopupHeight&&this.model.minPopupHeight.toString().indexOf("%")<0&&this._validatePixelData(this.model.minPopupHeight)==20&&(this.model.minPopupHeight="65"),this.model.enablePopupResize?this.popupListWrapper.css({"min-height":this._validatePixelData(this.model.minPopupHeight),"max-height":this._validatePixelData(this.model.maxPopupHeight),height:this._validatePixelData(this.model.popupHeight)}):this.popupListWrapper.css({"max-height":this._validatePixelData(this.model.popupHeight),"min-height":this._validatePixelData(this.model.minPopupHeight)}))},_validatePixelData:function(n){return n&&!isNaN(n)?Number(n):n},_getPopupHeight:function(){var n=this.popupListWrapper.height(),t;return this.model.enablePopupResize&&(n-=this.popupListWrapper.find(">div.e-resizebar").height()),this.model.headerTemplate&&this.headerTemplate&&(n-=this.headerTemplate.height()),this.model.enableFilterSearch&&this.inputSearch&&(t=this.inputSearch.parent(".e-in-wrap"),n-=parseInt(t.css("height"))+parseInt(t.css("margin-top"))+parseInt(t.css("margin-bottom"))),n},_refreshPopup:function(){this.model.popupWidth!="auto"||this._validatePixelData(this.model.minPopupWidth)?this._validatePixelData(this.model.minPopupWidth)&&this.popupListWrapper.css({"min-width":this._validatePixelData(this.model.minPopupWidth)}):this.popupListWrapper.css({"min-width":this.wrapper.width()});this.scrollerObj!=i&&this._refreshScroller();this._setListPosition()},_setListPosition:function(){var t=this.wrapper,i=this._getOffset(t),f,h=n(document).scrollTop()+n(window).height()-(i.top+n(t).outerHeight()),c=i.top-n(document).scrollTop(),u=this.popupListWrapper.outerHeight(),e=this.popupListWrapper.outerWidth(),r=i.left,o=t.outerHeight(),l=(o-t.height())/2,a=this._getZindexPartial(),s=3,v=(u<h||u>c?i.top+o+s:i.top-u-s)-l;f=n(document).scrollLeft()+n(window).width()-r;(this.model.enableRTL||e>f&&e<r+t.outerWidth())&&(r-=this.popupListWrapper.outerWidth()-t.outerWidth());this.popupListWrapper.css({left:r+"px",top:v+"px","z-index":a})},_getOffset:function(n){return t.util.getOffset(n)},_getZindexPartial:function(){return t.util.getZindexPartial(this.element,this.popupListWrapper)},_showResult:function(){var i=this,r;(this.popUpShow=!0,this.model.loadOnDemand&&(t.isNullOrUndefined(this.popupListWrapper)&&this._renderPopupPanelWrapper(),(t.isNullOrUndefined(this.ultag)||this.ultag.children().length==0)&&this._showFullList(),this._renderRemaining()),(this.model.allowGrouping||this.model.fields.groupBy)&&this.popupListWrapper.addClass("e-atc-popup"),r={text:this._visibleInput[0].value,value:this._selectedValue,refreshPopup:!0},this._trigger("beforePopupShown",r))||(r.refreshPopup&&this._refreshPopup(),n(this.popupListWrapper).slideDown(this.model.enableAnimation?200:1,function(){n(document).on("mousedown",n.proxy(i._OnDocumentClick,i));t.isDevice()||i._on(t.getScrollableParents(i.wrapper),"scroll",i._hideResult)}),this._setAttr(this.wrapper[0],{"aria-expanded":!0}),this._setAttr(this.popupListWrapper[0],{"aria-hidden":!1}),this._setAttr(this.ultag[0],{"aria-hidden":!1}),this._listSize=this._getLi().length,this.wrapper.addClass("e-popactive"),this._trigger("popupShown",{text:this._visibleInput[0].value,value:this._selectedValue}),this.scrollerObj.setModel({scrollTop:this._calcScrollTop("active")}))},_OnWindowResize:function(){!t.isNullOrUndefined(this.model)&&this._isPopupShown()&&this._refreshPopup()},_hideResult:function(i){if(this.model&&this._isPopupShown()){if(!t.isNullOrUndefined(i)&&!t.isNullOrUndefined(this.inputSearch)&&n(this.inputSearch).is(":focus")&&i.type=="scroll"&&t.isTouchDevice())return!1;var r=this;if(this._trigger("beforePopupHide",{text:this._visibleInput[0].value,value:this._selectedValue}))return;n(this.popupListWrapper).slideUp(this.model.enableAnimation?100:0,function(){n(document).off("mousedown",n.proxy(r._OnDocumentClick,r))});this.element!=null&&this._setAttr(this.wrapper[0],{"aria-expanded":!1});this.popupListWrapper[0]&&this._setAttr(this.popupListWrapper[0],{"aria-hidden":!0});this.ultag[0]&&this._setAttr(this.ultag[0],{"aria-hidden":!0});t.isDevice()||this._off(t.getScrollableParents(this.wrapper),"scroll",this._hideResult);this._visibleInput!=null&&this.wrapper.removeClass("e-popactive");this.popUpShow=!1;this._trigger("popupHide",{text:this._visibleInput[0].value,value:this._selectedValue});setTimeout(function(){r._resetSearch()},100);this._getLi().find(".e-ddl-anim").removeClass("e-ddl-anim")}},_isPopupShown:function(){if(!t.isNullOrUndefined(this.popupListWrapper))return this.popupListWrapper.css("display")=="block"},_enterTextBoxValue:function(t){var u,f=!0,i,r;if(this.removeID=!1,this.checkedStatus=!1,this._isWatermark||this._hiddenSpan.css("display","none"),this._chooseSelectionType(),(this._activeItem>=0||this._activeItem!=null)&&(this.model.showCheckbox?(i=this.activeItem.find(".e-checkwrap")[0],n(i).removeClass("e-check-inact"),this.checkedStatus=this._isChecked(i)):this.checkedStatus=this.activeItem.hasClass("e-active")),u={text:this._currentText,selectedText:this._currentText,itemId:this.selectedIndexValue,value:this._selectedValue,isChecked:this.checkedStatus,isInteraction:!!this._uiInteract},!this._initValue&&!this._onSearch&&this._raiseEvents&&this._trigger("select",u)){this._setWatermark();return}(this._activeItem>=0||this._activeItem!=null)&&(!this._isSingleSelect()&&(!this._checkContains(this._selectedValue)||this._checkedValues.length>0)?(this.model.showCheckbox?(i=this.activeItem.find(".e-checkwrap")[0],this._isChecked(i)||(this._removeClass(i,"e-ddl-anim"),this._setClass(i,"e-check-act e-ddl-anim"),this._setAttr(i,{"aria-checked":!0}),n(i).find(".e-check-input")[0].checked=!0)):this.activeItem.addClass("e-active"),this.model.multiSelectMode=="visualmode"&&(r=this._createBox(this._currentText,this._selectedValue),(this._ulBox.children()&&this._ulBox.children().length>0?this._checkForDuplicates(r):!0)&&this._ulBox.append(r),this._isPopupShown()&&this._setListPosition()),this._maintainHiddenValue(),this._addText(this._currentText),this._isSingleSelect()||JSON.stringify(this._boxValue)==JSON.stringify(this._valueContainer)||this._createListHidden(this._hiddenValue),n.inArray(this.selectedIndexValue,this._selectedIndices)==-1&&(this._selectedIndices.push(this.selectedIndexValue),this.model.selectedItems=this.model.selectedIndices=this._selectedIndices)):this._isSingleSelect()?(this.ultag.children("li").removeClass("e-hover").removeClass("e-active"),this.activeItem.addClass("e-active"),this._maintainHiddenValue(),this._visibleInput.val(this._currentText),this.element.val(this._hiddenValue),this.selectedItemIndex(this.selectedIndexValue),this.selectedIndex(this.selectedIndexValue),this._selectedIndices[0]=this.selectedIndexValue):f=!1,f&&(this.checkedStatus=!0,t&&this._checkedValues.push(this.activeItem.text()),this._onValueChange(),this._cascadeAction(),this.selectelement&&n("#"+this._id).children().length>this.selectedIndexValue&&(n("#"+this._id).children()[this.selectedIndexValue].selected=!0)));this.model.uncheckAll=!1;this._setWatermark();this._uiInteract=!1},_checkForDuplicates:function(t){var i=!0,r=this._ulBox.children().toArray();return r.forEach(function(r){if(t.attr("data-value")==n(r).attr("data-value"))return i=!1,!1},this),i},_onValueChange:function(){if(this.model.itemValue=this._selectedValue,this._updateText(),this._isSingleSelect()||JSON.stringify(this._boxValue)==JSON.stringify(this._valueContainer)||(this._valueContainer=this._boxValue),this._visibleInput.val()==""&&this.element.val()&&this.element.val(""),this.value()!=this.element.val()||this.value()==null&&n.inArray("",this._valueContainer)!=-1){t.isNullOrUndefined(n(this.getSelectedItem()).last()[0])||(this.model.enableFilterSearch&&this.model.enableServerFiltering?this._updateSelectedIndex(this.element.val(),n(this.getSelectedItem()).last().attr("data-uid")):this._updateSelectedIndexByValue(this.element.val()));this._isSingleSelect()?this._updateValue(this.element.val()):this._updateValue(this._valueContainer.toString());this.selectedTextValue=this.model.text;this.model.showCheckbox||this.model.multiSelectMode!="none"||this.model.value!=null&&this.model.value!=""||(this.model.itemValue="");var i={text:this._visibleInput[0].value,selectedText:this._currentText,itemId:this.selectedIndexValue,selectedValue:this._selectedValue,value:this._selectedValue,isChecked:this.checkedStatus,isInteraction:!!this._uiInteract};this._initValue||this._onSearch||!this._raiseEvents||(typeof this.model._change=="function"&&this._trigger("_change",{isChecked:this.checkedStatus,text:this._visibleInput.val(),itemId:this.selectedIndexValue,selectedText:this._currentText,selectedValue:this._selectedValue,value:this.value(),data:this.model,isInteraction:!!this._uiInteract}),this._trigger("change",i),this.model.showCheckbox&&this._trigger("checkChange",{isChecked:this.checkedStatus,text:this._visibleInput.val(),itemId:this.selectedIndexValue,selectedText:this._currentText,selectedValue:this._selectedValue,value:this._selectedValue,data:this.model}));this._uiInteract=!1;this.model.enableFilterSearch&&this.model.enableServerFiltering&&(this._searchresult=[],this._searchresult=this.getItemDataByValue(this.value()))}},_updateSelectedIndex:function(t,i){var f,u,r;if(t){for(this._selectedIndices=this.model.selectedItems=this.model.selectedIndices=[],this._virtualList=this._virtualUl.children("li:not('.e-category')"),f=this._toArray(t),u=0;u<f.length;u++)for(r=0;r<this._virtualList.length;r++)if(f[u]==this._getIndexedValue(this._virtualList[r])&&i==n(this._virtualList[r]).attr("data-uid")){this._selectedIndices.push(r);break}this.model.selectedItems=this.model.selectedIndices=this._selectedIndices}},_decode:function(t){return n("<span>").html(t).text()},_chooseSelectionType:function(){this.activeItem=this._getActiveItem();this.selectedIndexValue=this._activeItem;this._mapFields();var i=/([^"]*)\&[gl]t;([^"]*)/g;this._dataSource()==null||this._isPlainType(this._dataSource())&&this._isPlainType(this.popupListItems)?(this._currentText=this.activeItem.text(),this._getAttributeValue(this.activeItem[0])?this._selectedValue=this._getAttributeValue(this.activeItem[0]):this._currentText!=null?(t.isNullOrUndefined(this.activeItem[0])||this.activeItem[0].setAttribute("value",this._currentText),this._selectedValue=this._currentText):this._selectedValue="",this._itemID=n(this.activeItem).attr("id")):(this._currentText=this.model.enableFilterSearch&&this.ultag.children()[this._activeItem].textContent==this.activeItem.text()?i.test(this.ultag.children()[this._activeItem].textContent)?this._decode(this.ultag.children()[this._activeItem].textContent):this.ultag.children()[this._activeItem].textContent:i.test(this._getField(this.popupListItems[this._activeItem],this.mapFld._text))?this._decode(this._getField(this.popupListItems[this._activeItem],this.mapFld._text)):this._getField(this.popupListItems[this._activeItem],this.mapFld._text),this._currentText=this._currentText===""||this._currentText==null?this.activeItem.text():this._currentText,this._selectedValue=this._getField(this.popupListItems[this._activeItem],this.mapFld._value),this._selectedValue=this._selectedValue!=null?this._selectedValue:this._currentText,this._itemID=this._getField(this.popupListItems[this._activeItem],this.mapFld._id));t.isNullOrUndefined(this._itemID)||this._itemID==""&&this._itemID!=0||(this.model.showCheckbox?this.removeID?this._removeSelectedItemsID():this._selectedItemsID.push(this._itemID):(this._selectedItemsID=[],this.removeID||this._selectedItemsID.push(this._itemID)));this.selectedTextValue=this._currentText},_maintainHiddenValue:function(){var n=this._getAttributeValue(this.activeItem[0]);this._hiddenValue=t.isNullOrUndefined(n)?this._currentText:n},_removeTextBoxValue:function(i){var u,f,r;if(this._uiInteract=!0,this.removeID=!0,this.checkedStatus=!0,this._isFilterInput())for(u=0;u<this._getLi().length;u++)n(this._getLi()[u]).attr("data-value")==i&&(this._activeItem=u);if(this._chooseSelectionType(),(this._activeItem>=0||this._activeItem!=null)&&(this.model.showCheckbox?(r=this.activeItem.find(".e-checkwrap")[0],n(r).removeClass("e-ddl-anim").addClass("e-check-inact e-ddl-anim"),this.checkedStatus=this._isChecked(r)):this.checkedStatus=this.activeItem.hasClass("e-active")),f={text:this._currentText,selectedText:this._currentText,itemId:this.selectedIndexValue,value:this._selectedValue,isChecked:this.checkedStatus},!this._initValue&&!this._onSearch&&this._raiseEvents&&this._trigger("select",f)){this._setWatermark();return}this._maintainHiddenValue();this._hiddenValue=this._isFilterInput()&&!t.isNullOrUndefined(i)?i:this._hiddenValue;this._removeText(this._hiddenValue);this._isSingleSelect()||JSON.stringify(this._boxValue)==JSON.stringify(this._valueContainer)||this._removeListHidden(this._hiddenValue);this._isFilterInput()&&!this.activeItem.attr("data-value")==i&&this.activeItem.removeClass("e-active");this._isSingleSelect()||(this.model.showCheckbox?(r=this.activeItem.find(".e-checkwrap")[0],this._isChecked(r)&&(this._removeClass(r,"e-check-act"),this._setAttr(r,{"aria-checked":!1}),n(r).find(".e-check-input")[0].checked=!0)):this.activeItem.removeClass("e-active"),n.inArray(this.selectedIndexValue,this._selectedIndices)>-1&&(this._selectedIndices.splice(n.inArray(this.selectedIndexValue,this._selectedIndices),1),this.model.selectedItems=this.model.selectedIndices=this._selectedIndices),this.model.multiSelectMode=="visualmode"&&(this._deleteBoxCheck(this._hiddenValue),this._isPopupShown()&&this._setListPosition()));this.checkedStatus=!1;this._onValueChange();this.model.cascadeTo==null||this._isSingleSelect()||this._initValue||this._cascadeAction();this.model.checkAll=!1;this._setWatermark()},_createBox:function(i,r){if(!this._checkContains(r)||this._checkedValues.length>0){this._ulBox.css("display")=="none"&&this._visibleInput.css("display")!="none"&&this._swapUlandInput(!0);var u=t.buildTag("span.e-icon e-close","",{},{unselectable:"on"}),f=t.buildTag("li.e-options").text(i).attr("data-value",r).append(u);return this._on(u,"click",function(t){if(!this.model.enabled)return!1;this.delIconClick=!0;this._deleteBox(n(t.target).parent());this.delIconClick=!1}),f}},_deleteBoxCheck:function(t){for(var r=this._ulBox.children("li"),i=0;i<r.length;i++)n(r[i]).attr("data-value")==t&&(n(r[i]).remove(),this._checkedValues.splice(i,1))},_deleteLastBox:function(){var t=this._ulBox.children("li:not(.e-search-box)"),n=t.last();n.hasClass("e-active")?this._deleteBox(n):(this._removeActive(),n.addClass("e-active"))},_deleteBox:function(t){for(var f,r,o,e,i,u=0;u<t.length;u++)if(f=n(t[u]).attr("data-value"),this._isFilterInput()){for(r=this.getListData(),i=0;i<r.length;i++)if(o=this._getField(r[i],this.mapFld._value)?this._getField(r[i],this.mapFld._value):this._getField(r[i],this.mapFld._text),o==f){this._removeTextBoxValue(f);break}this._resetSearch()}else for(e=this._getLi(),i=0;i<e.length;i++)if(n(e[i]).attr("data-value")==f){this._activeItem=i;this._removeTextBoxValue();break}this._isFocused||this._isPopupShown()||this._setWatermark()},_isFilterInput:function(){if(this.model.enableFilterSearch&&this.inputSearch){if(!this.inputSearch.val()=="")return!0}else return!1},_swapUlandInput:function(n){n?(this._visibleInput.css("display","none"),this._ulBox.css("display","block"),this.wrapper.css({height:"auto"})):(this._visibleInput.css("display","block"),this._ulBox.css("display","none"),this.wrapper.css({height:this.model.height}))},_removeActive:function(){this._ulBox.children("li").removeClass("e-active")},_adjustWidth:function(){var n=t.buildTag("span",this._visibleInput.val());this.container.append(n);this._visibleInput.width(n.width()+30);n.remove()},_destroyBoxModel:function(){this._visibleInput.css("display","block");this.wrapper.height(this.model.height);this._ulBox.remove();this._ulBox=null;this._off(this.container,"click")},_removeListHover:function(){this.ultag.children("li").removeClass("e-hover")},_addListHover:function(){var n=this._getActiveItem();this._setAttr(n[0],{"aria-selected":!0});this._setAttr(this.wrapper[0],{"aria-activedescendant":n[0].id.toString(),"aria-labelledby":n[0].id.toString()});n.addClass("e-hover");this.scrollerObj.setModel({scrollTop:this._calcScrollTop("hover")})},_getLi:function(){if(this.ultag)return this.ultag.children("li:not('.e-category'):not('.e-nosuggestion')")},_calcScrollTop:function(t){var s=this.ultag.outerHeight(),u=this.ultag.find("li"),o=0,i,f,r,e;for(this._selectedIndices&&this._selectedIndices.length>0&&t=="active"?(e=this._getLi(),i=this._selectedIndices.length==e.length?0:this._selectedIndices[this._selectedIndices.length-1],(this.model.fields.groupBy!=null||this.ultag.find("li.e-category").length>0)&&(i=n.inArray(e.eq(i)[0],u))):i=this.ultag.find("li.e-"+t).index(),r=0;r<i;r++)o+=u.eq(r).outerHeight(!0);return f=o-(this.popupList.outerHeight()-u.eq(i).outerHeight(!0))/2,f<0?0:f},_getActiveItem:function(){return this._getLi().eq(this._activeItem)},_setDimentions:function(){this.model.height&&this.wrapper.height(this.model.height);this.model.width&&this.wrapper.width(this.model.width)},_roundedCorner:function(n){n?(this.container.addClass("e-corner"),t.isNullOrUndefined(this.popupListWrapper)||this.popupListWrapper.addClass("e-corner"),this.inputSearch&&this.inputSearch.parent(".e-in-wrap").addClass("e-corner")):(this.container.removeClass("e-corner"),t.isNullOrUndefined(this.popupListWrapper)||this.popupListWrapper.removeClass("e-corner"),this.inputSearch&&this.inputSearch.parent(".e-in-wrap").removeClass("e-corner"))},_enabled:function(n){n?this.enable():this.disable()},_RightToLeft:function(){this.model.enableRTL?this.wrapper.addClass("e-rtl"):this.wrapper.removeClass("e-rtl")},_dropbtnRTL:function(){this.model.enableRTL?(this.popupListWrapper.addClass("e-rtl").find(".e-resize-handle").addClass("e-rtl-resize"),this.popupList.addClass("e-rtl")):(this.popupListWrapper.removeClass("e-rtl").find(".e-resize-handle").removeClass("e-rtl-resize"),this.popupList.removeClass("e-rtl"))},_OnDropdownClick:function(i){if((this._preventDefaultAction(i),n(i.target).is("li")&&n(i.target).parent().hasClass("e-boxes")||n(i.target).parents("ul").hasClass("e-boxes")&&n(i.target).hasClass("e-icon e-close"))||this.model.readOnly||this._readOnly)return!1;var r=t.isNullOrUndefined(this.ultag)?this.model.loadOnDemand&&!t.isNullOrUndefined(this.model.dataSource)?!0:!1:this.ultag.find("li").length>0;r&&(i.which&&i.which==1||i.button&&i.button==0)&&this._OnPopupHideShow()},_OnPopupHideShow:function(){if(this._isPopupShown())this._hideResult();else if(this._showResult(),this.model.enableFilterSearch){if(this.getSelectedItem().length==0)this.ultag.find("li:first").addClass("e-hover");else{var t=this.getSelectedItem().length;n(this.getSelectedItem()[t-1]).addClass("e-hover")}n(this.inputSearch).focus()}else this.wrapper.focus()},_showFullList:function(){var n=this._dataSource(),i;t.isNullOrUndefined(this.ultag)&&(this.ultag=t.buildTag("ul.e-ul","",{},{role:"listbox"}));t.DataManager&&n instanceof t.DataManager?n.dataSource.offline||n.dataSource.json&&n.dataSource.json.length>0?this._getFilteredList(n.dataSource.json):(i=this,i._initDataSource(n)):this._getFilteredList(n)},_getFilteredList:function(n){if(!n||!n.length||n.length<1)this._targetElementBinding(),this._renderRemaining();else{var i=t.DataManager(n).executeLocal(this._isPlainType(n)?t.Query():this._getQuery(!0));this._totalCount=i.count;this._listItem(i.result?i.result:i);this._renderPopupList();this._rawList=this.popupListItems.slice()}},_cascadeAction:function(){if(this.model.cascadeTo)for(var r=this.model.cascadeTo.split(","),i=0;i<r.length;i++)if(n("#"+r[i]).hasClass("e-dropdownlist"))this._doCascadeAction(r[i],this,this.checkedStatus);else n("#"+r[i]).on("ejDropDownListcreate",{Obj:this,status:this.checkedStatus},function(n){t.isNullOrUndefined(n.data.Obj.getValue())||n.data.Obj.getValue()==""||n.data.Obj._doCascadeAction(this.id,n.data.Obj,n.data.status)})},_doCascadeAction:function(i,r,u){r._currentValue=r._getField(r.popupListItems[r._activeItem],r.mapFld._value);r.selectDropObj=n("#"+i).ejDropDownList("instance");var f={cascadeModel:r.selectDropObj.model,cascadeValue:r._currentValue,setCascadeModel:{},requiresDefaultFilter:!0};this._trigger("cascade",f);r.selectDropObj._setCascadeModel=f.setCascadeModel;t.isNullOrUndefined(r[i])&&(r[i]=r.selectDropObj._dataSource());t.DataManager&&r[i]instanceof t.DataManager?r._cascadeOdataInit(r[i],f.requiresDefaultFilter,u,f.cascadeQuery):r._cascadeJsonInit(r.selectDropObj,r[i],r.mapFld._value,f.requiresDefaultFilter,u,f.cascadeQuery)},_cascadeOdataInit:function(n,t,i,r){var u=this,e,f;u._dQuery=this.selectDropObj._getQuery().clone();f=u._dQuery.clone();t?f.where(u.mapFld._value,"equal",u._currentValue):f=r;u.selectDropObj._addLoadingClass();u._trigger("actionBegin",{requestFrom:"cascade"})||(e=n.executeQuery(f),e.fail(function(n){u._changedSource=null;u.selectDropObj.setModel({dataSource:u._changedSource,enabled:!1});u._trigger("actionFailure",{e:n,requestFrom:"cascade"})}).done(function(n){u._trigger("actionSuccess",{e:n,requestFrom:"cascade"});u._cascadeDataBind(u.selectDropObj,n.result,i);u.selectDropObj._removeLoadingClass()}).always(function(n){u._trigger("actionComplete",{e:n,requestFrom:"cascade"})}))},_cascadeJsonInit:function(n,i,r,u,f,e){var o=u?t.Query().where(r,"==",this._currentValue):e,s=t.DataManager(i).executeLocal(o);this._cascadeDataBind(n,s,f)},_cascadeDataBind:function(i,r,u){var l=i.value(),f,e,h,c,s,o;if(this.model.showCheckbox&&u||this.model.multiSelectMode!="none"&&this.activeItem.hasClass("e-active"))this._changedSource=t.isNullOrUndefined(this._changedSource)?r:this._changedSource.concat(r);else if(this.model.showCheckbox||this.model.multiSelectMode!="none"){for(f=0;f<r.length;f++)if(this._isPlainType(r)&&this._isPlainType(this._changedSource))this._changedSource.splice(this._changedSource.indexOf(r[f]),1);else for(e=0;e<this._changedSource.length;e++)JSON.stringify(this._changedSource[e])==JSON.stringify(r[f])&&this._changedSource.splice(e,1);i.setModel({dataSource:null})}else this._changedSource=r;if(h=i.model.value,c=JSON.parse(JSON.stringify(i.model)),i.setModel({dataSource:this._changedSource,enabled:this._changedSource.length>0}),this._isSingleSelect()||i.selectItemByValue(l),(i.model.showCheckbox||i.model.multiSelectMode!="none")&&n("input:hidden[id^='#'][name="+i._id+"]").remove(),i._setSelectedItem)i.setModel(i._setCascadeModel);else{for(s=["value","text","selectedIndex","selectedIndices"],o=0;o<s.length;o++)i.model[s[o]]=c[s[o]];i.model.value=h;i._finalize()}i._setSelectedItem=!0},_OnMouseEnter:function(t){var i,r;if(!this.model.enabled||this.model.readOnly)return!1;this.ultag.children("li").removeClass("e-hover");n(t.target).is("li:not('.e-category')")&&n(t.target).addClass("e-hover");n(t.target).hasClass("e-disable")?n(t.target).removeClass("e-hover"):t.target.tagName!="li"&&(i=n(t.target).parents("li:not('.e-category')"),n(i).addClass("e-hover"));this.ultag.children("li:not('.e-category')").each(function(t){if(n(this).hasClass("e-hover"))return r=t,!1});this._activeItem=r},_OnMouseLeave:function(){if(!this.model.enabled||this.model.readOnly||this._readOnly)return!1;this.ultag.children("li").removeClass("e-hover")},_OnMouseClick:function(t){var r,u,i;if((this._uiInteract=!0,!this.model.enabled||this.model.readOnly||this._readOnly)||this.model.enableFilterSearch&&n(t.target).is("li")&&n(t.target).hasClass("e-nosuggestion"))return!1;(!n(t.target).is("li")||n(t.target).hasClass("e-disable"))&&(n(t.target).is("li")||n(t.target).closest("li").hasClass("e-disable"))||(this._isSingleSelect()?(this._enterTextBoxValue(),this._hideResult()):this.model.showCheckbox?(r=t.target.nodeName==="LI"?t.target:n(t.target).parents("li.e-hover"),u=n(r).find(".e-checkwrap")[0],this._onCheckChange({target:u})):(i=n(t.target).is("li")?t.target:n(t.target).closest("li")[0],this._activeItem=n.inArray(i,this._getLi()),n(i).hasClass("e-active")?this._removeTextBoxValue():this._enterTextBoxValue()))},_OnDocumentClick:function(t){if(this.model&&(!this.model.enabled||this.model.readOnly||this._readOnly))return!1;n(t.target).is(this.popupList)||n(t.target).parents(".e-ddl-popup").is(this.popupListWrapper)||n(t.target).is(this._visibleInput)||n(t.target).parents(".e-ddl").is(this.wrapper)?n(t.target).is(this.inputSearch)?this.inputSearch.focus():(n(t.target).is(this.popupList)||n(t.target).parents(".e-ddl-popup").is(this.popupListWrapper))&&this._preventDefaultAction(t):this._hideResult()},_OnKeyPress:function(n){this.model.enableIncrementalSearch&&n.keyCode!=13&&this._OnTextEnter(t.browserInfo().name=="mozilla"?n.charCode:n.keyCode);n.keyCode==32&&this._preventDefaultAction(n)},_OnTextEnter:function(i){var l=this,s,h,r,v,e;this._incqueryString+=String.fromCharCode(i);this._incqueryString.length>0&&setTimeout(function(){l._incqueryString=""},this.model.incrementalSearchDelay);var u=this._getLi(),r,o=null,c=this.model.caseSensitiveSearch,f=this._incqueryString,a=this._incqueryString.length;if(c||(f=f.toLowerCase()),this._prevQueryString==f){for(r=0;r<this._matchedListItems.length;r++)if(n(this._matchedListItems[r]).hasClass("e-active")||this.model.showCheckbox&&n(this._matchedListItems[r]).hasClass("e-hover")){o=r==this._matchedListItems.length-1?this._matchedListItems[0]:this._matchedListItems[r+1];break}}else if(!t.isNullOrUndefined(u)){for(this._matchedListItems=[],s=this.selectedIndex(),r=0;r<u.length;r++)r!=s&&((r==u.length||r==-1)&&(r=-1),s==-1&&(s=u.length,r=0),h=r==-1?0:r,v=u[h],e=n(u[h]).text(),e=c?e:e.toLowerCase(),e.substr(0,a)==f&&this._matchedListItems.push(u[h]));this._prevQueryString=f;o=this._matchedListItems[0]}t.isNullOrUndefined(o)||(this._activeItem=n.inArray(o,u),this._isSingleSelect()&&!t.isNullOrUndefined(this.scrollerObj)?(this._enterTextBoxValue(),this.scrollerObj.setModel({scrollTop:this._calcScrollTop("active")})):this._isPopupShown()&&(this._removeListHover(),this._addListHover()))},_selectItem:function(n){this._isSingle||this._clearTextboxValue();this.activeItem&&this._setAttr(this.activeItem[0],{"aria-selected":!1});this._activeItem=n;this._addListHover();this.wrapper.focus();this._enterTextBoxValue()},_focusItem:function(n){this._removeListHover();this._activeItem=n;this._addListHover()},_selectFocusedItem:function(n){this._focusItem(n);this._enterTextBoxValue()},_selectShiftDown:function(t,i,r){r||this._clearTextboxValue();for(var u=t;u<=i;u++)n.inArray(u,this._disabledItems)<0&&n.inArray(u,this.model.selectedIndices)<0&&this._selectFocusedItem(u)},_selectShiftUp:function(t,i,r){r||this._clearTextboxValue();for(var u=i;u>=t;u--)n.inArray(u,this._disabledItems)<0&&n.inArray(u,this.model.selectedIndices)<0&&this._selectFocusedItem(u)},_selectShiftHome:function(t,i,r){if(r||this._clearTextboxValue(),t>=0&&t<=this._listSize-1){if(t==0)this._clearTextboxValue();else for(var u=t;u>=i;u--)n.inArray(u,this._disabledItems)<0&&n.inArray(u,this.model.selectedIndices)<0&&(this._activeItem=u,this._enterTextBoxValue());this._activeItem=t;t==0&&this._enterTextBoxValue();this.scrollerObj.setModel({scrollTop:0})}},_selectShiftEnd:function(t,i,r){if(r||this._clearTextboxValue(),t<=this._listSize-1){if(t==i)this._clearTextboxValue();else for(var u=t;u<=i;u++)n.inArray(u,this._disabledItems)<0&&n.inArray(u,this.model.selectedIndices)<0&&(this._activeItem=u,this._enterTextBoxValue());this._activeItem=t;t==i&&this._enterTextBoxValue();this.scrollerObj.setModel({scrollTop:this.ultag.outerHeight()})}},_getLastFocusedLi:function(){return this._selectedIndices&&this._selectedIndices.length>0?this._selectedIndices[this._selectedIndices.length-1]:null},_getLastShiftFocusedLi:function(t,i){var r=i?t-1:t+1;return n.inArray(r,this._selectedIndices)<0?t:this._getLastShiftFocusedLi(r,i)},_shiftUp:function(n,t,i){var u,r,f;if(n==null||n<0)this._checkDisableStep(0,t,!1,!1,!0);else if(n>0&&n<=this._listSize-1&&(u=this._disableItemSelectUp(n-t),u!=null))if(this._getLastFocusedLi()!=null)if(this._selectedIndices.length>1&&n-1==this._selectedIndices[this._selectedIndices.length-2])for(r=1;r<=t;r++)if(n-r==this._selectedIndices[this._selectedIndices.length-2])this._activeItem=n+1-r,this._removeTextBoxValue(),this._focusItem(n-r);else break;else f=this._getLastShiftFocusedLi(this._getLastFocusedLi(),!1),this._selectShiftUp(u,f,i);else this._moveUp(n,t,!1)},_shiftDown:function(n,t,i){var u,r,f;if(n==null||n<0)this._checkDisableStep(-1,t,!0,!1,!0);else if(n<this._listSize-1&&(u=this._disableItemSelectDown(n+t),u!=null))if(this._getLastFocusedLi()!=null)if(this._selectedIndices.length>1&&n+1==this._selectedIndices[this._selectedIndices.length-2])for(r=1;r<=t;r++)if(n+r==this._selectedIndices[this._selectedIndices.length-2])this._activeItem=n-1+r,this._removeTextBoxValue(),this._focusItem(n+r);else break;else f=this._getLastShiftFocusedLi(this._getLastFocusedLi(),!0),this._selectShiftDown(f,u,i);else this._moveDown(n,t,!1)},_moveUp:function(n,t,i){n==null||n<=0?this._checkDisableStep(0,t,!1,i):n>this._listSize-1?this._checkDisableStep(this._listSize-1,t,!1,i):n>0&&n<=this._listSize-1&&this._checkDisableStep(n,t,!1,i)},_moveDown:function(n,t,i){n==null||n<0?this._checkDisableStep(-1,t,!0,i):n==0?this._checkDisableStep(0,t,!0,i):n>=this._listSize-1?this._checkDisableStep(this._listSize-1,t,!0,i):n<this._listSize-1&&this._checkDisableStep(n,t,!0,i)},_checkDisableStep:function(n,t,i,r,u){var s=i?"_disableItemSelectDown":"_disableItemSelectUp",o=i?n+t:n-t,f=this[s](o),e;if(f==null)for(e=t;e>=0;e--)if(o=i?n+e:n-e,f=this[s](o),f!=null)break;f!=null&&(r?this._focusItem(f):this._selectItem(f),u&&r&&this._enterTextBoxValue())},_disableItemSelectDown:function(t){return(t==null||t<0)&&(t=0),t<this._listSize?n.inArray(t,this._disabledItems)<0?t:this._disableItemSelectDown(t+1):this._listSize-1},_disableItemSelectUp:function(t){if((t==null||t<0)&&(t=0),t<this._listSize){if(n.inArray(t,this._disabledItems)<0)return t;if(t>0)return this._disableItemSelectUp(t-1)}},_preventDefaultAction:function(n,t){n.preventDefault?n.preventDefault():n.returnValue=!1;t&&(n.stopPropagation?n.stopPropagation():n.cancelBubble=!0)},_OnKeyDown:function(n){var e,u,f,r,i;if(this._uiInteract=!0,this.model.enabled&&!t.isNullOrUndefined(this.popupListWrapper))if(this._itemId=null,e=this._getLi(),this._listSize=e.length,f=this.popupList.height(),u=this.ultag.children("li").outerHeight(),r=Math.round(f/u)!=0?Math.round(f/u):5,this._isSingle=this._isSingleSelect(),this._isSingle)switch(n.keyCode){case 38:if(n.altKey){this.ultag.find("li").length>0&&this._hideResult();break}case 33:i=n.keyCode==33?r:1;this._moveUp(this._activeItem,i);this._preventDefaultAction(n,!0);break;case 8:this._preventDefaultAction(n);break;case 40:if(n.altKey){this.ultag.find("li").length>0&&this._showResult();break}case 34:i=n.keyCode==34?r:1;this._moveDown(this._activeItem,i);this._preventDefaultAction(n,!0);break;case 37:this.model.enableRTL?this._moveDown(this._activeItem,1):this._moveUp(this._activeItem,1);this._preventDefaultAction(n);break;case 39:this.model.enableRTL?this._moveUp(this._activeItem,1):this._moveDown(this._activeItem,1);this._preventDefaultAction(n);break;case 9:case 27:this._isPopupShown()&&this._hideResult();break;case 35:this._moveDown(this._listSize-1,0);this._preventDefaultAction(n);break;case 36:i=this._activeItem!=null?this._activeItem:this._listSize-1;this._moveUp(i,i);this._preventDefaultAction(n)}else switch(n.keyCode){case 38:n.altKey?this.ultag.find("li").length>0&&this._hideResult():n.shiftKey?this._shiftUp(this._activeItem,1,n.ctrlKey):this._moveUp(this._activeItem,1,n.ctrlKey);this._preventDefaultAction(n);break;case 33:n.shiftKey?this._shiftUp(this._activeItem,r,n.ctrlKey):this._moveUp(this._activeItem,r,n.ctrlKey);this._preventDefaultAction(n);break;case 8:this._preventDefaultAction(n);break;case 40:n.altKey?this.ultag.find("li").length>0&&this._showResult():n.shiftKey?this._shiftDown(this._activeItem,1,n.ctrlKey):this._moveDown(this._activeItem,1,n.ctrlKey);this._preventDefaultAction(n);break;case 34:n.shiftKey?this._shiftDown(this._activeItem,r,n.ctrlKey):this._moveDown(this._activeItem,r,n.ctrlKey);this._preventDefaultAction(n);break;case 37:this.model.enableRTL?this._moveDown(this._activeItem,1,!1):this._moveUp(this._activeItem,1,!1);this._preventDefaultAction(n);break;case 39:this.model.enableRTL?this._moveUp(this._activeItem,1,!1):this._moveDown(this._activeItem,1,!1);this._preventDefaultAction(n);break;case 9:case 27:this._isPopupShown()&&this._hideResult();break;case 35:n.shiftKey?this._selectShiftEnd(this._activeItem,this._listSize-1,n.ctrlKey):this._moveDown(this._activeItem,this._listSize,n.ctrlKey);this._preventDefaultAction(n);break;case 36:i=this._activeItem!=null?this._activeItem:this._listSize-1;n.shiftKey?this._selectShiftHome(this._activeItem,0,n.ctrlKey):this._moveUp(this._activeItem,i,n.ctrlKey);this._preventDefaultAction(n)}},_OnKeyUp:function(i){var u,r;if(this.model.enabled&&!t.isNullOrUndefined(this.popupListWrapper)){if(this._preventDefaultAction(i),u=i.target,this._activeItem==null&&(this._activeItem=this._getLi().index(this.popupList.find("ol,ul").children("li.e-hover"))),this._trim(this._visibleInput.val())==""&&i.keyCode==38&&i.keyCode==40)return this._hideResult(),!1;switch(i.keyCode){case 13:!this._isSingle&&this._isPopupShown()&&(i.ctrlKey||i.shiftKey)&&this._activeItem>=0?this._selectAndUnselect():!this._isPopupShown()||i.ctrlKey||i.shiftKey?this._isPopupShown()&&this._hideResult():(t.isNullOrUndefined(this.inputSearch)||(this.getSelectedItem().length==0||!this.listitems[0].classList.contains("e-active")&&this._activeItem>=0?(this.selectItemByIndex(this._activeItem),n(this.listitems[this._activeItem]).removeClass("e-hover")):(r=this._getLastFocusedLi(),(this.model.multiSelectMode!="none"||this.model.showCheckbox)&&(this.unselectItemByIndex(r),n(this.listitems[r]).removeClass("e-hover")))),this._hideResult());this._preventDefaultAction(i);break;case 32:this._isPopupShown()&&this._isSingle&&this._hideResult();!this._isSingle&&this._isPopupShown()&&this._activeItem>=0&&this._selectAndUnselect();this._preventDefaultAction(i);break;case 8:this.model.multiSelectMode=="visualmode"&&this._deleteLastBox();this._preventDefaultAction(i);break;case 46:if(this.model.multiSelectMode=="visualmode"||this.model.showCheckbox){this._deleteBox(this._ulBox.children("li.e-active"));break}}}},_isSingleSelect:function(){return!this.model.showCheckbox&&this.model.multiSelectMode=="none"},_selectAndUnselect:function(){this.model.showCheckbox?this._isChecked(this._getActiveItem().find(".e-checkwrap")[0])?this._removeTextBoxValue():this._enterTextBoxValue():this.model.MultiSelectMode!="none"&&(this._getActiveItem().hasClass("e-active")?this._removeTextBoxValue():this._enterTextBoxValue())},_targetFocus:function(){this.model.enabled&&!this._isFocused&&(this._isWatermark||this._hiddenSpan.css("display","none"),this.wrapper.addClass("e-focus e-popactive"),this._isFocused=!0,this._trigger("focusIn"))},_targetBlur:function(){this.model.enabled&&(this._isFocused=!1,this.wrapper.removeClass("e-focus e-popactive"),this._setWatermark(),this._trigger("focusOut"))},_getLocalizedLabels:function(n){return this._localizedLabels[n]===i?t.DropDownList.Locale["en-US"][n]:this._localizedLabels[n]},_wireEvents:function(){this._on(this.wrapper,"focus",this._targetFocus);this._on(this.wrapper,"blur",this._targetBlur);this._on(this.wrapper,"keydown",this._OnKeyDown);t.isNullOrUndefined(this.popupList)||this._on(this.popupList,"keydown",this._OnKeyDown);t.isNullOrUndefined(this.popupList)||this._on(this.popupList,"keyup",this._OnKeyUp);this._on(this.wrapper,"keyup",this._OnKeyUp);t.isNullOrUndefined(this.popupList)||this._on(this.popupList,"keypress",this._OnKeyPress);this._on(this.wrapper,"keypress",this._OnKeyPress)},_unwireEvents:function(){this._off(this.wrapper,"focus",this._targetFocus);this._off(this.wrapper,"blur",this._targetBlur);this._off(this.wrapper,"keydown",this._OnKeyDown);t.isNullOrUndefined(this.popupList)||this._off(this.popupList,"keydown",this._OnKeyDown);t.isNullOrUndefined(this.popupList)||this._off(this.popupList,"keyup",this._OnKeyUp);this._off(this.wrapper,"keyup",this._OnKeyUp);t.isNullOrUndefined(this.popupList)||this._off(this.popupList,"keypress",this._OnKeyPress);this._off(this.wrapper,"keypress",this._OnKeyPress);n(window).off("resize",n.proxy(this._OnWindowResize,this))},_multiItemSelection:function(n,t){var i,r;for(this._ulBox||this.model.multiSelectMode!="visualmode"||this._renderBoxModel(),i=0;i<n.length;i++)r=t?this._rawList.length-(n.length-i):i,this._hasClass(n[i],"chkselect")&&(this._activeItem=r,this._enterTextBoxValue(),this._removeClass(n[i],"chkselect"));this._setWatermark()},_appendCheckbox:function(n,t){var i;for(this._ulBox||this.model.multiSelectMode!="visualmode"||this._renderBoxModel(),i=0;i<n.length;i++){var r=t?this._rawList.length-(n.length-i):i,f=document.createElement("input"),u=document.createElement("span");this._setAttr(f,{type:"checkbox",name:"list"+r,"data-role":"none",id:this._id+"_check"+r})._setClass(f,"e-check-input")._setAttr(u,{name:"list"+r+"_wrap","data-role":"none",id:this._id+"_check"+r+"wrap",unselectable:"on","aria-checked":!1})._setClass(u,"e-checkwrap e-icon ");u.appendChild(f);n[i].insertBefore(u,n[i].childNodes[0]);this._hasClass(n[i],"chkselect")&&(this._activeItem=r,this._enterTextBoxValue(),this._removeClass(n[i],"chkselect"))}this._setWatermark()},_onCheckChange:function(t){this.checkChange=!0;var i=t.target.nodeName==="INPUT"?t.target.parentElement:t.target;this._activeItem=n.inArray(n(i).parents("li")[0],this._getLi());this._hasClass(i,"e-check-act")?this._removeTextBoxValue():this._enterTextBoxValue(!0);this.checkChange=!1},_isChecked:function(t){return this._hasClass(t,"e-check-act")&&n(t).children(".e-check-input")[0].checked==!0},_removeCheck:function(){this._getLi().find(".e-checkwrap").remove()},_resetCheck:function(){var i=this._getLi(),t,n;for(i.find(".e-check-act").removeClass("e-check-act").attr("aria-checked",!1),t=i.find(".e-check-input:checked"),n=0;n<t.length;n++)t[n].checked=!1}});t.DropDownList.Locale=t.DropDownList.Locale||{};t.DropDownList.Locale["default"]=t.DropDownList.Locale["en-US"]={emptyResultText:"No suggestions",watermarkText:""};t.MultiSelectMode={None:"none",Delimiter:"delimiter",VisualMode:"visualmode"};t.VirtualScrollMode={Normal:"normal",Continuous:"continuous"}}(jQuery,Syncfusion),function(n,t,i){t.widget("ejDialog","ej.Dialog",{_rootCSS:"e-dialog",element:null,_ignoreOnPersist:["drag","dragStart","dragStop","resizeStop","resizeStart","resize","beforeClose","beforeOpen","collapse","expand","close","open","destroy","create","ajaxSuccess","ajaxError","contentLoad","actionButtonClick","enableResize"],model:null,validTags:["div","span"],_setFirst:!1,angular:{terminal:!1},defaults:{showOnInit:!0,closeOnEscape:!0,closeIconTooltip:"close",enableAnimation:!0,allowDraggable:!0,backgroundScroll:!0,height:"auto",minHeight:120,minWidth:200,maxHeight:null,maxWidth:null,enableModal:!1,position:{X:"",Y:""},containment:null,enableResize:!0,htmlAttributes:{},showHeader:!0,showFooter:!1,contentType:null,contentUrl:null,ajaxSettings:{type:"GET",cache:!1,data:{},dataType:"html",contentType:"html",async:!0},title:"",width:400,zIndex:1e3,cssClass:"",enableRTL:!1,allowKeyboardNavigation:!0,showRoundedCorner:!1,actionButtons:["close"],animation:{show:{effect:"fade",duration:400},hide:{effect:"fade",duration:400}},tooltip:{close:"Close",collapse:"Collapse",restore:"Restore",maximize:"Maximize",minimize:"Minimize",expand:"Expand",unPin:"UnPin",pin:"Pin"},footerTemplateId:null,locale:"en-US",faviconCSS:null,content:null,target:null,enablePersistence:!1,enabled:!0,isResponsive:!1,actionButtonClick:null,beforeClose:null,close:null,expand:null,collapse:null,beforeOpen:null,open:null,drag:null,dragStart:null,dragStop:null,resize:null,resizeStart:null,resizeStop:null,contentLoad:null,ajaxSuccess:null,ajaxError:null,create:null,destroy:null,Close:null},dataTypes:{showOnInit:"boolean",closeOnEscape:"boolean",enableAnimation:"boolean",backgroundScroll:"boolean",position:"data",animation:"data",closeIconTooltip:"string",tooltip:"data",allowDraggable:"boolean",enableModal:"boolean",enableResize:"boolean",isResponsive:"boolean",showHeader:"boolean",showFooter:"boolean",title:"string",faviconCSS:"string",zIndex:"number",cssClass:"string",enablePersistence:"boolean",contentUrl:"string",contentType:"string",enableRTL:"boolean",enabled:"boolean",allowKeyboardNavigation:"boolean",showRoundedCorner:"boolean",locale:"string",htmlAttributes:"data",ajaxSettings:"data",actionButtons:"array",footerTemplateId:"string"},_setModel:function(i){var r,u;for(r in i)switch(r){case"closeIconTooltip":this._dialogClose.attr("title",i[r]);break;case"tooltip":this._tooltipText(i[r]);break;case"title":this.model.title=i[r];this._ejDialog.find("span.e-title").length<=0?this._addTitleText():this._ejDialog.find("span.e-title").html(i[r]);this._updateCaptionWidth();break;case"width":this.model.width=i[r];this._changeSize();this._updateCaptionWidth();i[r]=this.model.width;break;case"height":this.model.height=i[r];this._changeSize();i[r]=this.model.height;break;case"position":this.model.position=i[r];this._dialogPosition();break;case"cssClass":this._changeSkin(i[r]);break;case"showRoundedCorner":this.model.showRoundedCorner=i[r];this._roundedCorner(i[r]);break;case"contentType":this.model.contentType=i[r];this._appendContent(i[r]);break;case"enabled":this.model.enabled=i[r];this._enabledAction(i[r]);break;case"contentUrl":this.model.contentUrl=i[r];this._appendContent(this.model.contentType);break;case"backgroundScroll":this.model.backgroundScroll=i[r];!this.model.backgroundScroll&&this.model.enableModal?n("body").addClass("e-dialog-modal"):n("body").removeClass("e-dialog-modal");break;case"content":case"target":this._ejDialog.appendTo(n(i[r]));this.model.target=this.model.content=i[r];this._dialogPosition();break;case"containment":this._setDragArea(i[r]);t.isNullOrUndefined(this._target)?this._ejDialog.appendTo(document.body):this._ejDialog.appendTo(this._target);this.model.position.X=this.model.position.Y="";this._dialogPosition();this.model.containment=i[r]=this._target;this.model.enableModal&&this._createOverlay();this._dialogTitlebar.ejDraggable({dragArea:this._target});break;case"locale":this.model.locale=i[r];this.localizedLabels=this._getLocalizedLabels();this._setLocaleCulture(this.localizedLabels,!0);this._tooltipText(this.model.tooltip);this._ejDialog.find("span.e-title").length<=0?this._addTitleText():this._ejDialog.find("span.e-title").html(this.model.title);this._updateCaptionWidth();break;case"minHeight":this.model.minHeight=i[r];this._ejDialog.css("minHeight",i[r]);this._minMaxValidation();this._resetScroller();this._resizeDialog();break;case"minWidth":this.model.minWidth=i[r];this._ejDialog.css("minWidth",i[r]);this._minMaxValidation();this._resetScroller();this._resizeDialog();break;case"maxHeight":this.model.maxHeight=i[r];this._ejDialog.css("maxHeight",i[r]);this._minMaxValidation();this._resetScroller();this._resizeDialog();break;case"maxWidth":this.model.maxWidth=i[r];this._ejDialog.css("maxWidth",i[r]);this._minMaxValidation();this._resetScroller();this._resizeDialog();break;case"zIndex":this._ejDialog.css("z-index",i[r]);break;case"faviconCSS":this.model.faviconCSS=i[r];this._favIcon();this._updateCaptionWidth();break;case"isResponsive":this.model.isResponsive=i[r];this.model.isResponsive?this._ejDialog.addClass("e-dialog-resize"):this._ejDialog.removeClass("e-dialog-resize");this._wireResizing();break;case"allowDraggable":this.model.allowDraggable=i[r];i[r]?this._enableDrag():this._dialogTitlebar.removeClass("e-draggable");break;case"enableResize":this.model.enableResize=i[r];i[r]?this._enableResize():(this._ejDialog.removeClass("e-resizable"),this._ejDialog.find(".e-resize-handle").remove());this._reRenderScroller();break;case"showHeader":this.model.showHeader=i[r];i[r]?(this._renderTitleBar(),this._iconsRender(this.model.actionButtons),this.model.faviconCSS&&(this._dialogFavIcon=!1,this._favIcon()),this._enableDrag(),this._maximize||this._updateScroller(t.isNullOrUndefined(this.contentDiv)?this._ejDialog.outerHeight(!0)-1-this._dialogTitlebar.outerHeight(!0):this.contentDiv.css("border-width")=="0px",t.isNullOrUndefined(this.contentDiv)?this._ejDialog.width()-2:this.contentDiv.css("border-width")=="0px")):(this._ejDialog.find(".e-titlebar").remove(),this._maximize?this.refresh():this._updateScroller(t.isNullOrUndefined(this.contentDiv)?this._ejDialog.outerHeight(!0)-1:this.contentDiv.css("border-width")=="0px",t.isNullOrUndefined(this.contentDiv)?this._ejDialog.width()-2:this.contentDiv.css("border-width")=="0px"));this._roundedCorner(this.model.showRoundedCorner);this.model.showFooter&&this._setContainerSize()._resetScroller();break;case"showFooter":this.model.showFooter=i[r];i[r]?(this._appendContent(),this._ejDialog.find(".e-resizable").remove()):this._ejDialog.find(".e-footerbar").remove();this._enableResize()._enableDrag()._sizeInPercent();this._reRenderScroller();this._setContainerSize()._resetScroller();this._roundedCorner(this.model.showRoundedCorner);break;case"footerTemplateId":this.model.footerTemplateId=i[r];this.model.showFooter&&(this._ejDialog.find(".e-footerbar").empty(),u=n("body").find("#"+this.model.footerTemplateId).html(),this._dialogFooterbar.append(u),this._enableResize());break;case"enableRTL":this.model.enableRTL=i[r];this.model.faviconCSS&&this._favIcon();i[r]?(this._ejDialog.addClass("e-rtl"),this.iframe&&this.iframe.contents().find("body").css("direction","rtl"),this.scroller&&this._resetScroller()):(this._ejDialog.removeClass("e-rtl"),this.iframe&&this.iframe.contents().find("body").css("direction","ltr"),this.scroller&&this._resetScroller());break;case"actionButtons":t.isNullOrUndefined(this._dialogTitlebar)||(this._removeAllIcons(),this._iconsRender(i[r]));this.model.actionButtons=i[r];this._updateCaptionWidth();break;case"enableModal":this._enableModal(i[r]);break;case"htmlAttributes":this._addAttr(i[r])}},_destroy:function(){this._overLay&&this._overLay.remove();this._cloneElement.appendTo(this._ejDialog.parent());this._ejDialog.remove();this.model.enableAnimation&&this._ejDialog.stop();this._cloneElement.removeClass("e-dialog");this.element=this._cloneElement;this._isOpen=!1;n(window).off("resize",n.proxy(this._reSizeHandler,this))},keyConfigs:[37,38,39,40],_init:function(){this._init=!0;this._widthPercent=null;this._heightPercent=null;this._windowSize={outerWidth:n(window).outerWidth(),outerHeight:n(window).outerHeight()};this._initSize={width:this.model.width,height:this.model.height};this._sizeType={width:isNaN(this.model.width)?this.model.width.match(/px|%|auto/g)[0]:null,height:isNaN(this.model.height)?this.model.height.match(/px|%|auto/g)[0]:null};this._isOpen=this._maximize=this._minimize=!1;this.localizedLabels=this._getLocalizedLabels();this._setLocaleCulture(this.localizedLabels);this._setDimension();this.model.close||(this.model.close=this.model.Close);this.model.target||(this.model.target=this.model.content);this._responsive();this._renderControl();this._wireEvents();this.scrObj=this._ejDialog.closest(".e-dialog.e-js").data("ejDialog");this.scrObj&&this.scrObj._resetScroller();this.hidden=!1;this._init=!1;this._keyNavigation=!1},_responsive:function(){this.width=this.model.width;n(this.element).width(this.width);this.height=this.model.height;n(this.element).height(this.height);n(window).on("resize",n.proxy(this._resizeHandler,this))},_resizeHandler:function(){this._maximize&&(this.width=n(this._dialogTitlebar).outerWidth(),n(this.contentDiv).width(this.width),n(this.contentDiv).children().width(this.width),this.model.height=this.height=n(window).height(),this._ejDialog.css({height:this.height}),this.contentDiv.height(this._ejDialog.height()-n(this._dialogTitlebar).outerHeight()-n(this._dialogFooterbar).outerHeight()),this.element.height(this.contentDiv.height()));t.isNullOrUndefined(this.element)||this._collapsible||this._resetScroller()},_setLocaleCulture:function(n,t){this.defaults.closeIconTooltip===this.model.closeIconTooltip&&(this.model.closeIconTooltip=n.closeIconTooltip);t&&(this.model.tooltip=this.localizedLabels.tooltip,this.model.title=this.localizedLabels.title);JSON.stringify(this.model.tooltip)===JSON.stringify(this.defaults.tooltip)&&(this.model.tooltip=n.tooltip);this.model.title===this.defaults.title&&(this.model.title=n.title)},_setDragArea:function(i){t.isNullOrUndefined(i)?this._target=null:typeof i=="string"?(i=="parent"&&(this._target=n(this.element).parent()),i.toLowerCase()=="document"&&(this._target=n(document)),i.toLowerCase()=="window"?this._target=n(window):n(i).length>0&&(this._target=n(i))):typeof i=="object"?i.length>0&&(this._target=i):this._target=null},_addAttr:function(t){var i=this;n.map(t,function(n,t){if(t=="class")i._ejDialog.addClass(n);else if(t=="disabled"&&n=="disabled")i.model.enabled=!1,i._enabledAction(!1);else if(i._ejDialog[0].hasAttribute("style")){var r=i._ejDialog[0].getAttribute("style")+n;i._ejDialog.attr(t,r)}})},_tooltipText:function(i){n.extend(this.model.tooltip,i);!t.isNullOrUndefined(this._dialogClose)&&this._dialogClose.hasClass("e-close")&&this._dialogClose.attr("title",this.model.tooltip.close);!t.isNullOrUndefined(this._dialogCollapsible)&&(i.collapse||i.expand)&&(this._dialogCollapsible.hasClass("e-arrowhead-up")&&this._dialogCollapsible.attr("title",this.model.tooltip.collapse),this._dialogCollapsible.hasClass("e-arrowhead-down")&&this._dialogCollapsible.attr("title",this.model.tooltip.expand));!t.isNullOrUndefined(this._dialogMaximize)&&(i.maximize||i.restore)&&(this._dialogMaximize.hasClass("e-maximize")&&this._dialogMaximize.attr("title",this.model.tooltip.maximize),this._dialogMaximize.hasClass("e-restore")&&this._dialogMaximize.attr("title",this.model.tooltip.restore));!t.isNullOrUndefined(this._dialogMinimize)&&(i.minimize||i.restore)&&(this._dialogMinimize.hasClass("e-minus")&&this._dialogMinimize.attr("title",this.model.tooltip.minimize),this._dialogMinimize.hasClass("e-restore")&&this._dialogMinimize.attr("title",this.model.tooltip.restore));!t.isNullOrUndefined(this._dialogPin)&&(i.pin||i.unPin)&&(this._dialogPin.hasClass("e-unpin")&&this._dialogPin.attr("title",this.model.tooltip.pin),this._dialogPin.hasClass("e-pin")&&this._dialogPin.attr("title",this.model.tooltip.unPin))},_renderControl:function(){var i,r,u;this._cloneElement=this.element.clone();this.element.attr("tabindex",0).attr({role:"dialog","aria-labelledby":this.element.prop("id")+"_title"});this._ejDialog=t.buildTag("div.e-dialog e-widget e-box "+this.model.cssClass+" e-dialog-wrap e-shadow#"+(this.element.prop("id")==""?"":this.element.prop("id")+"_wrapper"),"",{display:"none",zIndex:this.model.zIndex},{tabindex:0});this.model.isResponsive&&this._ejDialog.addClass("e-dialog-resize");this.wrapper=this._ejDialog;this._addAttr(this.model.htmlAttributes);this._setDragArea(this.model.containment);t.isNullOrUndefined(this.model.containment)||t.isNullOrUndefined(this._target)?t.isNullOrUndefined(this.model.target)||(i=this.model.target):i=this._target;r=t.isNullOrUndefined(i)?document.body:i;u=n(r).find("#"+this._id+"_wrapper").get(0);u&&n(u).remove();this._ejDialog.appendTo(r);this.model.enableRTL&&this._ejDialog.addClass("e-rtl");this.model.showHeader&&(this._renderTitleBar(),this._iconsRender(this.model.actionButtons),this.model.faviconCSS&&this._favIcon());this._appendContent(this.model.contentType);this._enableResize()._enableDrag()._setSize();this.model.height!="auto"&&this._sizeInPercent();this.model.contentType!="ajax"&&(this.model.showOnInit&&this.open()?this._setContainerSize()._resetScroller():this._setHiddenDialogSize());this._roundedCorner(this.model.showRoundedCorner);this._enabledAction(this.model.enabled);this._sizeType.width=="auto"&&(this._maxWidth=this.model.width);this._sizeType.height=="auto"&&(this._maxHeight=this.model.height)},_setContainerSize:function(){if(this.model.height!="auto"){var t=this._ejDialog.outerHeight()-(this.model.showHeader?n(this._ejDialog.find("div.e-titlebar")).outerHeight(!0):0)+(this.model.showFooter?n(this._ejDialog.find("div.e-footerbar")).outerHeight(!0):0)-1;this.contentDiv.height(t);this.element.outerHeight(t)}return this},_changeSize:function(){this._initSize={width:this.model.width,height:this.model.height};this._sizeType.width=isNaN(this.model.width)?this.model.width.match(/px|%|auto/g):null;this._sizeType.height=isNaN(this.model.height)?this.model.height.match(/px|%|auto/g):null;this._setSize()._sizeInPercent()._setContainerSize()._resetScroller()},_enableDrag:function(){return this.model.allowDraggable&&this.model.showHeader&&(this._dialogTitlebar.addClass("e-draggable"),this._dragDialog()),this},_enableResize:function(){if(this.model.enableResize){this._ejDialog.addClass("e-resizable");var n=t.buildTag("div.e-icon e-resize-handle");this.model.showFooter?n.appendTo(this._dialogFooterbar):n.appendTo(this._ejDialog);this._resizeDialog()}return this},_changeSkin:function(n){this.model.cssClass!=n&&this._ejDialog.removeClass(this.model.cssClass).addClass(n)},_enableModal:function(n){n?this._isOpen&&this._createOverlay():this._overLay&&this._overLay.remove()},_enabledAction:function(n){n?(this._ejDialog.removeClass("e-disable"),this.wrapper.children(".e-disable-overlay").remove(),t.isNullOrUndefined(this.scroller)||this.scroller.enable()):(this._ejDialog.addClass("e-disable"),t.buildTag("div.e-disable-overlay").appendTo(this.wrapper),t.isNullOrUndefined(this.scroller)||this.scroller.disable())},_renderTitleBar:function(){this._elementTitle=this.element.attr("title");typeof this._elementTitle!="string"&&(this._elementTitle="");this.model.title=this.model.title||this._elementTitle;this._dialogTitlebar=t.buildTag("div#"+this.element.prop("id")+"_title.e-titlebar e-header").prependTo(this._ejDialog);this._addTitleText()},_renderFooterBar:function(){this._dialogFooterbar=t.buildTag("div#"+this.element.prop("id")+"_foot.e-footerbar e-js").appendTo(this._ejDialog)},_addTitleText:function(){return this.model.title&&(this._titleText=t.buildTag("span.e-title",this.model.title).prependTo(this._dialogTitlebar)),this},_updateCaptionWidth:function(){var n=this.model.faviconCSS&&!t.isNullOrUndefined(this._dialogFavIcon)?this._dialogFavIcon.outerWidth():0;return this._titleText&&!t.isNullOrUndefined(this._dialogTitlebar)&&this._titleText.css("max-width",this._dialogTitlebar.width()-20-this._dialogTitlebar.find(".e-dialog-icon").width()*this._dialogTitlebar.find(".e-dialog-icon").length-n),this},_iconsRender:function(i){for(var r=0;r<i.length;r++)switch(t.browserInfo().name=="msie"&&t.browserInfo().version<=8?n.trim(i[r]):i[r].trim()){case"close":this._closeIcon();break;case"collapse":case"collapsible":this._collapsibleIcon();break;case"maximize":this._maximizeIcon();break;case"minimize":this._minimizeIcon();break;case"pin":this._pinIcon();break;default:this._customIconsRender(i[r])}},_customIconsRender:function(n){this._customIcon=t.util.buildTag("div#"+this.element[0].id+"_"+n+"button.e-dialog-icon e-icon e-"+n,null,null).attr("tabIndex","0").attr("title",n);this._customIcon.appendTo(this._dialogTitlebar);this._on(this._customIcon,"touchstart click",this._iconClick)},_iconClick:function(t){if(!this.element.hasClass("e-disable")){var i={cancel:!1,buttonID:n(t.target).attr("id"),event:t.type,model:this.model,currentTarget:t.currentTarget.title};this._trigger("actionButtonClick",i)}},_removeAllIcons:function(){this._dialogTitlebar.find("div.e-dialog-icon").remove()},_appendContent:function(i){var f,e,u,r,o;if(this.contentDiv=t.isNullOrUndefined(this.contentDiv)?t.buildTag("div.e-dialog-scroller"):this.contentDiv,this.element.removeAttr("title").addClass("e-widget-content e-box"),f=this,t.isNullOrUndefined(this.model.contentUrl)||t.isNullOrUndefined(i))this.dialogIframeContent=this.element.children().find("iframe").contents()[0],t.isNullOrUndefined(this.dialogIframeContent)?this.element.show().appendTo(this.contentDiv):this.element.show().appendTo(this.contentDiv).find("iframe").append(this.dialogIframeContent.lastChild);else if(i=="ajax")this.model.ajaxSettings.url=this.model.contentUrl,this._sendAjaxOptions(this.element,this.model.ajaxSettings.url);else if(i=="iframe")this.element.children(".e-iframe").length>0?(this.iframe=this.element.find("iframe.e-iframe"),this.iframe.attr("src",this.model.contentUrl)):(this.iframe=t.buildTag("iframe.e-iframe","",{width:"100%",height:"100%"},{scrolling:"auto",frameborder:0,src:this.model.contentUrl}),this.element.appendTo(this.contentDiv).append(this.iframe).show()),this.model.enableRTL&&n(this.iframe).load(function(){f.iframe.contents().find("body").css("direction","rtl")}),this._trigger("contentLoad",{contentType:i,url:this.model.contentUrl});else if(i=="image"){e=t.buildTag("img.e-images","","",{src:this.model.contentUrl});this.element.append(e).show().appendTo(this.contentDiv);n(e).on("load",function(){f._dialogPosition()});this._trigger("contentLoad",{contentType:i,url:this.model.contentUrl})}else this.element.show().appendTo(this.contentDiv);this._ejDialog.find("div.e-resize-handle").length>0?this._ejDialog.find(".e-footerbar").length==0&&this.contentDiv.insertBefore(this._ejDialog.find("div.e-resize-handle")):(u=this.element.children().find("iframe").contents()[0],t.isNullOrUndefined(u)?this._ejDialog.find(".e-footerbar").length==0?this.contentDiv.appendTo(this._ejDialog):this.contentDiv.insertBefore(this._dialogFooterbar):(this.contentDiv.appendTo(this._ejDialog),r=n("#"+this.contentDiv.find("iframe").attr("id")),n(r[0].contentDocument.lastChild).remove(),r[0].contentDocument.appendChild(u),t.browserInfo().name=="mozilla"&&setTimeout(function(){n(r[0].contentDocument.lastChild).remove();r[0].contentDocument.appendChild(u)},500)));this.model.showFooter&&this._ejDialog.find(".e-footerbar").length==0&&(this._renderFooterBar(),this.model.footerTemplateId!=null&&(o=n("body").find("#"+this.model.footerTemplateId).html(),this._dialogFooterbar.append(o)))},_roundedCorner:function(n){this._ejDialog[n?"addClass":"removeClass"]("e-corner");this.contentDiv.removeClass("e-dialog-top e-dialog-bottom e-dialog-content");this.model.showRoundedCorner&&(this.model.showHeader&&!this.model.showFooter?this.contentDiv.addClass("e-dialog-bottom"):!this.model.showHeader&&this.model.showFooter?this.contentDiv.addClass("e-dialog-top"):!this.model.showHeader&&!this.model.showFooter?this.contentDiv.addClass("e-dialog-content"):!0)},_reRenderScroller:function(){if(this.scroller!=i&&(this.scroller.refresh(!0),!this.model.enableRTL)){if(this.scroller._vScrollbar&&this.scroller._vScrollbar._scrollData&&this.model.enableResize){if(this.model.showFooter)var r=this.scroller._vScrollbar.element.find("> div.e-vscroll").height(),t=0,n=0;else var r=this.scroller._vScrollbar.element.find("> div.e-vscroll").height(),t=2,n=this._ejDialog.find("div.e-resize-handle").outerHeight();Math.floor(this.contentDiv.outerHeight())===Math.floor(this.scroller._vScrollbar.model.height+1)&&(this.scroller._vScrollbar.model.height-=n+t,this.scroller._vScrollbar._scrollData.handle-=n,this.scroller._vScrollbar._scrollData.handleSpace-=n+t,this.scroller._vScrollbar._updateLayout(this.scroller._vScrollbar._scrollData),this.scroller._vScrollbar.element.find("> div.e-vscroll").height(r-n-t))}if(!(this.scroller._vScrollbar&&this.scroller._vScrollbar._scrollData)&&this.scroller._hScrollbar&&this.scroller._hScrollbar._scrollData&&this.model.enableResize){if(this.model.showFooter)var u=this.scroller._hScrollbar.element.find("> div.e-hscroll").width(),t=0,n=0;else var u=this.scroller._hScrollbar.element.find("> div.e-hscroll").width(),t=2,n=this._ejDialog.find("div.e-resize-handle").outerWidth();this.scroller._hScrollbar.model.width-=n+t;this.scroller._hScrollbar._scrollData.handle-=n+t;this.scroller._hScrollbar._scrollData.handleSpace-=n+t;this.scroller._hScrollbar._updateLayout(this.scroller._hScrollbar._scrollData);this.scroller._hScrollbar.element.find("> div.e-hscroll").width(u-n-t)}}},_dialogMaxZindex:function(){var i=this.element.parents(),r,u,t;return r=n("body").children(),n(r).each(function(n,t){i.push(t)}),u=n(this.model.target).children(),n(u).each(function(n,t){i.push(t)}),t=Math.max.apply(t,n.map(i,function(t){if(n(t).css("position")!="static")return parseInt(n(t).css("z-index"))||1})),!t||t<1e4?t=1e4:t+=1,t},_setZindex:function(){var n=this._dialogMaxZindex();this.model.zIndex<=n&&this._ejDialog.css({zIndex:n+1})},_createOverlay:function(){var u=this._ejDialog.css("zIndex"),i,r;t.isNullOrUndefined(this._overLay)||this._overLay.remove();this.model.backgroundScroll||n("body").addClass("e-dialog-modal");this._overLay=t.buildTag("div#"+this.element.attr("id")+"_overLay.e-overlay","",{zIndex:u-1});n(this._overLay).addClass("e-widget");t.isNullOrUndefined(this.model.containment)||t.isNullOrUndefined(this._target)?t.isNullOrUndefined(this.model.target)||(i=this.model.target):i=this._target;this._overLay.appendTo(t.isNullOrUndefined(i)?document.body:i);var r=!t.isNullOrUndefined(this.model.containment)&&!t.isNullOrUndefined(this._target)?"absolute":"fixed",f=t.isNullOrUndefined(i)||r=="fixed"?0:n(i).css("position").toLowerCase()!="static"?0:n(i).offset().left,e=t.isNullOrUndefined(i)||r=="fixed"?0:n(i).css("position").toLowerCase()!="static"?0:n(i).offset().top;this._overLay.css({top:e,left:f,position:r})},_sendAjaxOptions:function(t,i){t.addClass("e-load");var r=this,u=this.model.title,e=i,f={success:function(n){try{r._ajaxSuccessHandler(n,t,i,u)}catch(f){}},error:function(n){try{r._ajaxErrorHandler({status:n.status,responseText:n.responseText,statusText:n.statusText},t,i,u)}catch(n){}},complete:function(){try{r._setContainerSize();r._resetScroller();r.model.showOnInit||r._setHiddenDialogSize()}catch(n){}}};n.extend(!0,f,this.model.ajaxSettings);this._sendAjaxRequest(f)},_setHiddenDialogSize:function(){this._isOpen||(this._ejDialog.css({display:"block",visibility:"hidden"}),this._setContainerSize()._resetScroller(),this._ejDialog.css({display:"none",visibility:""}))},_sendAjaxRequest:function(t){n.ajax({type:t.type,cache:t.cache,url:t.url,dataType:t.dataType,data:t.data,contentType:t.contentType,async:t.async,success:t.success,error:t.error,beforeSend:t.beforeSend,complete:t.complete})},_ajaxSuccessHandler:function(n,t,i){t.removeClass("e-load");t.html(n).addClass("e-dialog-loaded").appendTo(this._ejDialog);t.appendTo(this.contentDiv);this._dialogPosition();this.model.showOnInit&&this.open();this._trigger("ajaxSuccess",{data:n,url:i})},_ajaxErrorHandler:function(n,t,i){t.addClass("e-dialog-loaded").appendTo(this.contentDiv);this._dialogPosition().open();this._trigger("ajaxError",{data:n,url:i})},_closeIcon:function(){this._dialogClose=t.util.buildTag("div#"+this.element[0].id+"_closebutton.e-dialog-icon e-icon e-close",null,null).attr("tabIndex","0");this.model.closeIconTooltip=="close"&&this.model.tooltip.close=="Close"?this._dialogClose.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.close):this.model.closeIconTooltip!="close"&&this.model.tooltip.close=="Close"?this._dialogClose.appendTo(this._dialogTitlebar).attr("title",this.model.closeIconTooltip):this.model.closeIconTooltip=="close"&&this.model.tooltip.close!="Close"?this._dialogClose.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.close):this._dialogClose.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.close);this._on(this._dialogClose,"touchstart click",this._closeClick)},_collapsibleIcon:function(){this._dialogCollapsible=t.util.buildTag("div#"+this.element[0].id+"_collapsbutton.e-dialog-icon e-icon",null,null).attr("tabIndex","0");this._collapsible?this._dialogCollapsible.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.expand).addClass("e-arrowhead-down").removeClass("e-arrowhead-up"):this._dialogCollapsible.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.collapse).addClass("e-arrowhead-up").removeClass("e-arrowhead-down");this._on(this._dialogCollapsible,"touchstart click",this._collapsibleClick)},_maximizeIcon:function(){this._dialogMaximize=t.util.buildTag("div#"+this.element[0].id+"_maximizebutton.e-dialog-icon e-icon",null,null).attr("tabIndex","0");this._maximize?this._dialogMaximize.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.restore).addClass("e-restore").removeClass("e-maximize"):this._dialogMaximize.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.maximize).addClass("e-maximize").removeClass("e-restore");this._on(this._dialogMaximize,"touchstart click",this._maximizeClick)},_minimizeIcon:function(){this._dialogMinimize=t.util.buildTag("div#"+this.element[0].id+"_minimizebutton.e-dialog-icon e-icon",null,null).attr("tabIndex","0");this._minimize?this._dialogMinimize.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.restore).addClass("e-restore").removeClass("e-minus"):this._dialogMinimize.appendTo(this._dialogTitlebar).attr("title",this.model.tooltip.minimize).addClass("e-minus").removeClass("e-restore");this._on(this._dialogMinimize,"touchstart click",this._minimizeClick)},_pinIcon:function(){this._dialogPin=t.util.buildTag("div#"+this.element[0].id+"_pinbutton.e-dialog-icon e-icon",null,null).attr("tabIndex","0");this._dialogPin.appendTo(this._dialogTitlebar).attr("title",this.dialogPin?this.model.tooltip.unPin:this.model.tooltip.pin).addClass(this.dialogPin?"e-pin":"e-unpin").removeClass(this.dialogPin?"e-unpin":"e-pin");this._on(this._dialogPin,"touchstart click",this._pinClick)},_favIcon:function(){if(this._dialogFavIcon)n=this._dialogFavIcon.find("span").removeClass().addClass("e-dialog-custom");else{this._dialogFavIcon=t.util.buildTag("div.e-dialog-favicon","",{},{style:"float:"+(this.model.enableRTL?"right":"left")});var n=t.util.buildTag("span.e-dialog-custom","",{},{role:"presentation"});n.appendTo(this._dialogFavIcon);this._dialogFavIcon.appendTo(this._dialogTitlebar)}this.model.faviconCSS?n.addClass(this.model.faviconCSS):this._dialogFavIcon.remove();this._dialogFavIcon.css("float",this.model.enableRTL?"right":"left")},_minMaxValidation:function(){var r=parseInt(this.model.minWidth),u=parseInt(this.model.minHeight),n=parseInt(this.model.maxWidth),t=parseInt(this.model.maxHeight),f=parseInt(this.model.width),e=parseInt(this.model.height),i=this._getParentObj();isNaN(this.model.minWidth)&&this.model.minWidth.indexOf("%")>0&&(r=this._convertPercentageToPixel(i.outerWidth(),r));isNaN(this.model.minHeight)&&this.model.minHeight.indexOf("%")>0&&(u=this._convertPercentageToPixel(i.outerHeight(),u));isNaN(this.model.maxWidth)&&this.model.maxWidth.indexOf("%")>0&&(n=this._convertPercentageToPixel(i.innerWidth(),n));isNaN(this.model.maxHeight)&&this.model.maxHeight.indexOf("%")>0&&(t=this._convertPercentageToPixel(i.innerHeight(),t));isNaN(this.model.width)&&this.model.width.indexOf("%")>0&&(f=this._convertPercentageToPixel(i.innerWidth(),f));isNaN(this.model.height)&&this.model.height.indexOf("%")>0&&(e=this._convertPercentageToPixel(i.innerHeight(),e));(n&&f>n||r&&f<r)&&(this.model.width=f>n?n:r);(t&&e>t||u&&e<u)&&(this.model.height=e>t?t:u)},_setSize:function(){var n=this.model;return this._minMaxValidation(),this._ejDialog.css({width:n.width,minWidth:n.minWidth,maxWidth:n.maxWidth}),this._ejDialog.css({height:n.height,minHeight:n.minHeight,maxHeight:n.maxHeight}),this._dialogPosition(),this},_resetScroller:function(){this.element.css({height:"auto","max-width":"","max-height":"",width:""});var r=this._ejDialog.outerHeight(!0)-(this.model.showHeader?n(this._ejDialog.find("div.e-titlebar")).outerHeight(!0):0)-(this.model.showFooter?n(this._ejDialog.find("div.e-footerbar")).outerHeight(!0):0),u,i={width:this.contentDiv.css("border-width")=="0px"||this.contentDiv.css("border-left-width")=="0px"?Math.round(this._ejDialog.width()):Math.round(this._ejDialog.width()-2),enableRTL:this.model.enableRTL,height:this.contentDiv.css("border-width")=="0px"?r:r-1,enableTouchScroll:!1};this.model.height=="auto"&&(this.element.height()<this.model.maxHeight||!this.model.maxHeight)&&!this._maximize&&(i.height="auto");this.model.width!="auto"||this._maximize||(i.width=this.model.width);this.contentDiv.ejScroller(i);this.scroller=this.contentDiv.data("ejScroller");this._reRenderScroller();this._padding=parseInt(n(this.element).css("padding-top"))+parseInt(n(this.element).css("padding-bottom"));n(this._ejDialog).css("display")=="none"&&(this.hidden=!0,this._ejDialog.css({display:"block"}));!t.isNullOrUndefined(this.contentDiv.height())&&this.contentDiv.height()>0&&(u=t.isNullOrUndefined(this.scroller)?this.contentDiv.outerHeight()-this._padding:!this.scroller._hScrollbar&&this.scroller._vScrollbar?this.contentDiv.outerHeight():this.scroller._hScrollbar?this.contentDiv.outerHeight()-this.scroller.model.buttonSize:this.contentDiv.outerHeight(),this.model.height!="auto"&&this.model.height!="100%"?this.element.css({height:u-1}):this.element.css("height",this.model.height),this.model.height!="auto"&&this.model.height!="100%"||this.scroller._vScrollbar||this.element.css({"min-height":this.model.minHeight-(this.model.showHeader?n(this._ejDialog.find("div.e-titlebar")).outerHeight(!0):0)}),this.scroller._vScrollbar||this.model.width=="auto"||this.model.width=="100%"?this.scroller._vScrollbar||this.element.css("width",this.model.width):this.element.outerWidth(this.contentDiv.css("border-width")=="0px"||this.contentDiv.css("border-left-width")=="0px"?this._ejDialog.width():this._ejDialog.width()-2),this.element.css({"max-width":this.model.maxWidth,"max-height":this.model.maxHeight}));this.hidden&&this._ejDialog.css({display:"none"});this.hidden=!1},_updateScroller:function(n,t){this.contentDiv.ejScroller({width:t,height:n,enableRTL:this.model.enableRTL,enableTouchScroll:!1});this.scroller=this.contentDiv.data("ejScroller");this._reRenderScroller();this._changeSize()},_dragDialog:function(){var i=this,r=this._ejDialog.parents(".e-dialog-scroller");return this._dialogTitlebar.ejDraggable({handle:".e-titlebar",cursorAt:{top:0,left:0},dragArea:i._target,dragStart:function(n){return(n.element.attr("aria-grabbed",!0),i._clickHandler(),i.dialogPin||!i.model.allowDraggable||!i.model.enabled)?(n.cancel=!0,!1):i._trigger("dragStart",{event:n})?(n.cancel=!0,!1):void 0},drag:function(n){i._trigger("drag",{event:n})},dragStop:function(r){var u,f;i._ejDialog.focus();r.element.attr("aria-grabbed",!1);i.element.find("> .e-draggable.e-titlebar")&&(u=n("#"+i.element.find("> .e-draggable.e-titlebar").attr("id")).data("ejDraggable"),u&&u.option("cursorAt",i.element.offset()));f=this.helper.offsetParent().offset();i._trigger("dragStop",{event:r});i.model.position.X=t.isNullOrUndefined(this.position.left)?parseInt(this.helper.css("left")):this.position.left-[f.left+parseFloat(this.helper.offsetParent().css("border-left-width"))];i.model.position.Y=t.isNullOrUndefined(this.position.top)?parseInt(this.helper.css("top")):this.position.top-[f.top+parseFloat(this.helper.offsetParent().css("border-top-width"))];i._positionChanged=!0;i.dlgresized=!0},helper:function(){return n(i._ejDialog).addClass("dragClone")}}),this},_resizeDialog:function(){if(this.model.enableResize){var t=this,r=!1,i,u=parseInt(this.model.minWidth),f=parseInt(this.model.minHeight),e=parseInt(this.model.maxWidth),o=parseInt(this.model.maxHeight);return i=this._getParentObj(),isNaN(this.model.minWidth)&&this.model.minWidth.indexOf("%")>0&&(u=this._convertPercentageToPixel(i.outerWidth(),u)),isNaN(this.model.minHeight)&&this.model.minHeight.indexOf("%")>0&&(f=this._convertPercentageToPixel(i.outerHeight(),f)),isNaN(this.model.maxWidth)&&this.model.maxWidth.indexOf("%")>0&&(e=this._convertPercentageToPixel(i.innerWidth(),e)),isNaN(this.model.maxHeight)&&this.model.maxHeight.indexOf("%")>0&&(o=this._convertPercentageToPixel(i.innerHeight(),o)),this._ejDialog.find("div.e-resize-handle").ejResizable({minHeight:f,minWidth:u,maxHeight:o,maxWidth:e,handle:"e-widget-content",resizeStart:function(n){if(t.dlgresized=!0,!t.model.enabled)return!1;r||t._trigger("resizeStart",{event:n});r=!0;t.model.position={X:t._ejDialog.css("left"),Y:t._ejDialog.css("top")};t._dialogPosition()},resize:function(i){t.dlgresized=!0;var r=n(i.element).parents("div.e-dialog-wrap");t.model.height=n(r).outerHeight();t.model.width=n(r).outerWidth();t._setSize();t._setContainerSize();t._resetScroller();t._updateCaptionWidth();t._trigger("resize",{event:i});t._sizeType={width:"px",height:"px"};this.scrObj&&this.scrObj._resetScroller()},resizeStop:function(i){t.dlgresized=!0;t._ejDialog.focus();t._sizeInPercent();var u=n(i.element).parents("div.e-dialog-wrap");t.model.height=n(u).outerHeight();t.model.width=n(u).outerWidth();t._setSize();t._setContainerSize();t._resetScroller();r&&t._trigger("resizeStop",{event:i});r=!1;t._setDimension()},helper:function(){return n(t._ejDialog)}}),this}},_dialogPosition:function(){if(this._ejDialog.parents("form").length>0&&t.isNullOrUndefined(this.model.containment)&&t.isNullOrUndefined(this.model.target)&&this._ejDialog.appendTo(this._ejDialog.parents("form")),this.model.position.X!=""||this.model.position.Y!="")if(this._ejDialog.css("position","absolute"),t.isNullOrUndefined(this.model.target)&&t.isNullOrUndefined(this.model.containment))this._ejDialog.css("left",this.model.position.X),this._ejDialog.css("top",this.model.position.Y);else{var i=t.isNullOrUndefined(this.model.containment)?this.model.target:this.model.containment;this.dlgresized||this._keyNavigation?(this._ejDialog.css("left",this.model.position.X),this._ejDialog.css("top",this.model.position.Y)):(this._ejDialog.css("left",n(i).offset().left+parseInt(this.model.position.X)),this._ejDialog.css("top",n(i).offset().top+parseInt(this.model.position.Y)))}else this._centerPosition();return this},_centerPosition:function(){var r=0,u=0,i,f,e,o;t.isNullOrUndefined(this.model.target)&&(t.isNullOrUndefined(this._target)||n(this._target).is(n(document))||n(this._target).is(n(window)))?(o=document.documentElement,r=(n(window).outerWidth()>this._ejDialog.width()?(n(window).outerWidth()-this._ejDialog.outerWidth())/2:0)+(window.pageXOffset||o.scrollLeft),u=(n(window).outerHeight()>this._ejDialog.height()?(n(window).outerHeight()-this._ejDialog.outerHeight())/2:0)+(window.pageYOffset||o.scrollTop)):(i=t.isNullOrUndefined(this._target)?n(this.model.target):n(this._target),i.css("position")=="static"&&(f=i.offsetParent().offset(),e=i.offset(),r=e.left-f.left,u=e.top-f.top),i.outerWidth()>this._ejDialog.width()&&(r+=(i.outerWidth()-this._ejDialog.width())/2),i.outerHeight()>this._ejDialog.height()&&(u+=(i.outerHeight()-this._ejDialog.height())/2));this._ejDialog.css({top:u,left:r});this._ejDialog.css("position","absolute")},_closeClick:function(n){n.type=="touchstart"&&n.preventDefault();this.model.enabled&&(n.stopPropagation(),this.close(n))},_collapsibleClick:function(t){this.model.enabled&&(n(t.target).hasClass("e-arrowhead-up")?this._actionCollapse(t):n(t.target).hasClass("e-arrowhead-down")&&this._actionExpand(t))},_actionCollapse:function(n){this._minimize||(this._dialogCollapsible&&this._dialogCollapsible.removeClass("e-arrowhead-up").addClass("e-arrowhead-down"),this._dialogCollapsible&&this._dialogCollapsible.attr("title",this.model.tooltip.expand),this._ejDialog.find("div.e-resize-handle").hide(),this._ejDialog.find(".e-widget-content").parent().slideUp("fast"),this.model.showFooter&&this._dialogFooterbar.slideUp("fast"),this._ejDialog.removeClass("e-shadow"),this._ejDialog.css("minHeight","0"),this._ejDialog.height("auto"),this._trigger("collapse",{isInteraction:n?!0:!1}),this._collapsible=!0)},_actionExpand:function(n){this._minimize||(this._dialogCollapsible&&this._dialogCollapsible.removeClass("e-arrowhead-down").addClass("e-arrowhead-up"),this._dialogCollapsible&&this._dialogCollapsible.attr("title",this.model.tooltip.collapse),this._ejDialog.addClass("e-shadow"),this._ejDialog.find(".e-widget-content").parent().slideDown("fast"),this.model.showFooter&&this._dialogFooterbar.slideDown("fast"),this._maximize?(this._ejDialog.css({width:"100%",height:"100%"}),this.element.css({width:"100%",height:"100%"}),this.contentDiv.css({width:"100%",height:"100%"})):this._ejDialog.height(this.model.height),this._ejDialog.find("div.e-resize-handle").show(),this._trigger("expand",{isInteraction:n?!0:!1}),this._collapsible=!1)},_maximizeClick:function(i){if(this.model.enabled){var r=n(i.target),u=this._dialogMaximize;r.hasClass("e-maximize")?(this._actionMaximize(),this._dialogTitlebar&&(this._dialogTitlebar.find(".e-restore").removeClass("e-restore").addClass("e-minus"),this._dialogMinimize&&this._dialogMinimize.attr("title",this.model.tooltip.minimize)),r.removeClass("e-maximize").addClass("e-restore"),this._dialogMaximize.attr("title",this.model.tooltip.restore),this._hideIcon(!0)):r.hasClass("e-restore")&&(this._actionRestore(),r.removeClass("e-restore").addClass("e-maximize"),this._dialogMaximize.attr("title",this.model.tooltip.maximize),!t.isNullOrUndefined(u)&&n(u).hasClass("e-arrowhead-down")&&(n(u).removeClass("e-arrowhead-down").addClass("e-arrowhead-up"),this._dialogMaximize.attr("title",this.model.tooltip.collapse)),this._hideIcon(!0))}this._resetScroller()},_actionMaximize:function(){this._ejDialog.css("top","0px").css("left","0px").css("overflow","hidden").css("position",this.model.containment?"absolute":this.model.target?"absolute":"fixed");this._ejDialog.css({width:"100%",height:"100%"});this.element.css({width:"100%",height:"100%"});this.contentDiv.css({width:"100%",height:"100%"});this._maximize=!0;this._minimize=!1;var i=this;this._dialogCollapsible&&!t.isNullOrUndefined(this._dialogCollapsible.hasClass("e-arrowhead-down"))&&(this._dialogCollapsible.removeClass("e-arrowhead-down").addClass("e-arrowhead-up"),this._dialogCollapsible.attr("title",this.model.tooltip.collapse),this._collapseValue=!0);this._collapseValue==!0&&this._ejDialog.find(".e-widget-content").parent().slideDown("fast",function(){i.refresh();i._reRenderScroller()});this._resetScroller();n(this.contentDiv).is(":hidden")&&this.contentDiv.show()},_actionRestore:function(){this.element.height("").width("");this.contentDiv.height("").width("");this._restoreDialog();this._maximize=this._minimize=!1},_minimizeClick:function(i){if(this.model.enabled){var r=n(i.target),u=this._dialogMinimize.hasClass("e-icon")&&this._dialogMinimize;r.hasClass("e-minus")?(this._maximize&&this._setSize(),this._actionMinimize()):r.hasClass("e-restore")&&(this._actionRestore(),r.removeClass("e-restore").addClass("e-minus"),this._dialogMinimize.attr("title",this.model.tooltip.minimize),!t.isNullOrUndefined(u)&&n(u).hasClass("e-arrowhead-down")&&(n(u).removeClass("e-arrowhead-down").addClass("e-arrowhead-up"),this._dialogMinimize.attr("title",this.model.tooltip.collapse)),this._hideIcon(!0))}},_actionMinimize:function(){var i=n(window).height()-this._ejDialog.height()+this.element.height()+14,t;this._ejDialog.css("top","").css("bottom","0").css("left","0").css("position",this.model.containment?"absolute":this.model.target?"absolute":"fixed");this._ejDialog.css("minHeight","0");this._dialogTitlebar?(this._dialogTitlebar.find(".e-restore").removeClass("e-restore").addClass("e-maximize"),this._dialogMaximize&&this._dialogMaximize.attr("title",this.model.tooltip.maximize),this._dialogTitlebar.find(".e-minus").removeClass("e-minus").addClass("e-restore"),this._dialogMinimize&&this._dialogMinimize.attr("title",this.model.tooltip.restore),this._isOpen?t=this._dialogTitlebar.outerHeight():(this._ejDialog.css({display:"block",visibility:"hidden"}),t=this._dialogTitlebar.outerHeight(),this._ejDialog.css({display:"none",visibility:""})),this._ejDialog.css("height",t+2),this._hideIcon(!1)):this._ejDialog.css("height","");this.contentDiv.hide();this.model.showFooter&&this._dialogFooterbar.hide();this._maximize=!1;this._minimize=!0},_hideIcon:function(i){var r=this._dialogCollapsible?this._dialogCollapsible:null;i?(t.isNullOrUndefined(r)||n(r).parent(".e-dialog-icon").show(),this._ejDialog.find("div.e-resize-handle").show()):(t.isNullOrUndefined(r)||n(r).parent(".e-dialog-icon").hide(),this._ejDialog.find("div.e-resize-handle").hide())},_pinClick:function(t){if(this.model.enabled){var i=n(t.target);i.hasClass("e-unpin")?(this.dialogPin=!0,i.removeClass("e-unpin").addClass("e-pin"),this._dialogPin.attr("title",this.model.tooltip.unPin)):i.hasClass("e-pin")&&(this.dialogPin=!1,i.removeClass("e-pin").addClass("e-unpin"),this._dialogPin.attr("title",this.model.tooltip.pin))}},_restoreDialog:function(){this.contentDiv.show();this.model.showFooter&&this._dialogFooterbar.show();this._ejDialog.css({position:"absolute",bottom:""}).addClass("e-shadow");this._setSize()._resetScroller();this._dialogTitlebar&&(this._dialogTitlebar.find(".e-minus").parent().show(),this._dialogCollapsible&&(this._dialogCollapsible.removeClass("e-arrowhead-down").addClass("e-arrowhead-up"),this._dialogCollapsible.attr("title",this.model.tooltip.collapse)))},_clickHandler:function(){var n=this._dialogMaxZindex();parseInt(this._ejDialog.css("zIndex"))<n&&this._ejDialog.css({zIndex:n+1})},_mouseClick:function(t){t.currentTarget==this._id&&(n(t.target).hasClass("e-dialog")||n(t.target).hasClass("e-icon e-resize-handle"))&&(this._setZindex(),n(t.target).closest(".e-dialog.e-widget").focus())},_keyDown:function(t){var i;i=t.keyCode?t.keyCode:t.which?t.which:t.charCode;this.model.allowKeyboardNavigation&&this.model.enabled&&n(t.target).hasClass("e-dialog")&&n.inArray(i,this.keyConfigs)>-1&&this.model.allowDraggable&&!this.dialogPin&&(this._keyPressed(i,t.ctrlKey),t.preventDefault());this.model.closeOnEscape&&i===27&&this.model.enabled&&(this.element.find(".e-js.e-dialog").first().is(":visible")||(this.close(t),t.preventDefault()));i===13&&this.model.enabled&&(n(t.target).hasClass("e-close")?this.close(t):(n(t.target).hasClass("e-arrowhead-up")||n(t.target).hasClass("e-arrowhead-down"))&&this._collapsibleClick(t),n(t.target).hasClass("e-maximize")||n(t.target).hasClass("e-restore")&&n(t.target).is(this._dialogMaximize)?this._maximizeClick(t):(n(t.target).hasClass("e-minus")||n(t.target).hasClass("e-restore")&&n(t.target).is(this._dialogMinimize))&&this._minimizeClick(t),(n(t.target).hasClass("e-pin")||n(t.target).hasClass("e-unpin"))&&this._pinClick(t));i==9&&this.model.enableModal&&this._focusOnTab(t)},_focusOnTab:function(t){var i=this._ejDialog.find("a, button, :input, select, [tabindex]:not('-1')");i=n(i).find("a, button, :input, select, [tabindex]:not('')");t.shiftKey?i[i.index(t.target)-1]||(t.preventDefault(),i.last().focus()):i[i.index(t.target)+1]||(t.preventDefault(),i[0].focus())},_keyPressed:function(n,t){this._keyNavigation=!0;switch(n){case 40:t?this._resizing("height",this._ejDialog.outerHeight()+3):this.option("position",{X:this._ejDialog.position().left,Y:this._ejDialog.position().top+3});break;case 39:t?this._resizing("width",this._ejDialog.outerWidth()+3):this.option("position",{X:this._ejDialog.position().left+3,Y:this._ejDialog.position().top});break;case 38:t?this._resizing("height",this._ejDialog.outerHeight()-3):this.option("position",{X:this._ejDialog.position().left==0?0:this._ejDialog.position().left,Y:this._ejDialog.position().top>3?this._ejDialog.position().top-3:0});break;case 37:t?this._resizing("width",this._ejDialog.outerWidth()-3):this.option("position",{X:this._ejDialog.position().left>3?this._ejDialog.position().left-3:0,Y:this._ejDialog.position().top==0?0:this._ejDialog.position().top})}},_resizing:function(n,t){this.model.enableResize&&this.option(n,t)},_sizeInPercent:function(){if(!this._enableWindowResize())return this;var n=this._getParentObj();return this._widthPercent=this._sizeType.width=="%"?parseFloat(this.model.width):this._convertPixelToPercentage(n.outerWidth(),this._ejDialog.outerWidth()),this._heightPercent=this._sizeType.height=="%"?parseFloat(this.model.height):this._convertPixelToPercentage(n.outerHeight(),this._ejDialog.outerHeight()),this._widthPercent>=100&&(this._widthPercent=100,this._ejDialog.outerWidth(n.outerWidth()),this.model.width=this._ejDialog.width()),this._heightPercent>=100&&(this._heightPercent=100,this._ejDialog.outerHeight(n.outerHeight()),this.model.height=this._ejDialog.height()),this},_getParentObj:function(){return t.isNullOrUndefined(this.model.containment)?t.isNullOrUndefined(this.model.target)?n(document):n(this.model.target):n(this.model.containment)},_convertPercentageToPixel:function(n,t){return Math.round(t*n/100)},_convertPixelToPercentage:function(n,t){return Math.round(t/n*100)},_reSizeHandler:function(){var t;if(this._maximize){this._resetScroller();return}this.model.position.X!=""&&(this.model.position.Y!=""||this._minimize)||this._centerPosition();t=this._getParentObj();this._change=!1;this._windowSize.outerWidth!=n(window).outerWidth()?this._sizeType.width=="%"?this._percentageWidthDimension(t):this._pixelsWidthDimension(t):this._windowSize.outerHeight!=n(window).outerHeight()&&(this._sizeType.height=="%"?this._percentageHeightDimension(t):this._pixelsHeightDimension(t));this._change&&this._resizeContainer(t);this._windowSize={outerWidth:n(window).outerWidth(),outerHeight:n(window).outerHeight()};this._centerPosition()},_setDimension:function(){t.isNullOrUndefined(this.model.maxWidth)?t.isNullOrUndefined(this._sizeType.width)?this._maxWidth=+this.model.width:(this._sizeType.width=="px"||this._sizeType.width=="auto")&&(this._maxWidth=this.model.width):this._maxWidth=this.model.maxWidth;t.isNullOrUndefined(this.model.maxHeight)?t.isNullOrUndefined(this._sizeType.height)?this._maxHeight=+this.model.height:(this._sizeType.height=="px"||this._sizeType.height=="auto")&&(this._maxHeight=this.model.height):this._maxHeight=this.model.maxHeight},_percentageWidthDimension:function(n){this._ejDialog.outerWidth(this._convertPercentageToPixel(n.outerWidth(),this._widthPercent));this._change=!0},_percentageHeightDimension:function(n){this._ejDialog.outerHeight(this._convertPercentageToPixel(n.outerHeight(),this._heightPercent));this._change=!0},_pixelsWidthDimension:function(t){n(t).outerWidth()<=this._ejDialog.outerWidth()&&this._setWidth(t);n(t).outerHeight()<=this._ejDialog.outerHeight()&&!this.model.isResponsive&&this._setHeight(t);parseInt(this._ejDialog.css("width"))<parseInt(this._maxWidth)&&(parseInt(this._maxWidth)<n(t).outerWidth()?this._ejDialog.outerWidth(parseInt(this._maxWidth)):this._ejDialog.outerWidth(t.outerWidth()),this._change=!0)},_pixelsHeightDimension:function(t){n(t).outerHeight()<=this._ejDialog.outerHeight()&&!this.model.isResponsive&&this._setHeight(t);n(t).outerWidth()<=this._ejDialog.outerWidth()&&this._setWidth(t);parseInt(this._ejDialog.css("height"))<parseInt(this._maxHeight)&&(parseInt(this._maxHeight)<n(t).outerHeight()?this._ejDialog.outerWidth(parseInt(this._maxHeight)):this._ejDialog.outerHeight(t.outerHeight()),this._change=!0)},_setWidth:function(n){this._ejDialog.outerWidth(n.outerWidth());this._change=!0},_setHeight:function(n){this._ejDialog.outerHeight(n.outerHeight());this._change=!0},_resizeContainer:function(){this.contentDiv.width(this._ejDialog.width());this.element.outerWidth(this.contentDiv.width());var i=this._ejDialog.height()-(this.model.showHeader?n(this._ejDialog.find("div.e-titlebar")).outerHeight(!0):0);this.contentDiv.height(t.isNullOrUndefined(this.contentDiv)?i-1:this.contentDiv.css("border-width")=="0px");this.element.outerHeight(t.isNullOrUndefined(this.contentDiv)?i-1:this.contentDiv.css("border-width")=="0px");this.scroller=this.contentDiv.ejScroller({width:t.isNullOrUndefined(this.contentDiv)?!1:this.contentDiv.css("border-width")=="0px"?this._ejDialog.width():this._ejDialog.width()-2,height:t.isNullOrUndefined(this.contentDiv)?!1:this.contentDiv.css("border-width")=="0px"?this.element.outerHeight():this.element.outerHeight()-2,rtl:this.model.rtl,enableTouchScroll:!1});this.scroller=this.contentDiv.data("ejScroller");this._reRenderScroller();this.model.position.X==""||this.model.position.Y==""&&!this._minimize||this._positionChanged?this._centerPosition():this._ejDialog.css("height",this._dialogTitlebar.outerHeight());this._updateCaptionWidth();this._change=!1},_getLocalizedLabels:function(){return t.getLocalizedConstants(this.sfType,this.model.locale)},_enableWindowResize:function(){return this.model.isResponsive||isNaN(this.model.width)&&this.model.width.indexOf("%")>0&&isNaN(this.model.height)&&this.model.height.indexOf("%")>0&&this.model.height!="auto"?!0:!1},_wireResizing:function(){n(window)[this._enableWindowResize()?"on":"off"]("resize",n.proxy(this._reSizeHandler,this))},_wireEvents:function(){this._on(this._ejDialog,"keydown",this._keyDown);this._on(this._ejDialog,"click",this._mouseClick);this._wireResizing()},refresh:function(){this._resetScroller()},open:function(){var i,r,u,e,f;return this._isOpen?!0:!0==this._trigger("beforeOpen")?!1:(this.element.css("display","block"),this._setZindex(),this._minimize||this._maximize||this._init||this._dialogPosition(),i=this,r={},this._ejDialog.show(),this.model.enableAnimation&&(this._ejDialog.css({opacity:0}),this.model.animation.show.effect=="slide"?(e=this._ejDialog.css("left"),this._ejDialog.css({left:-this._ejDialog.width()}),r={left:e,opacity:1}):r={opacity:1}),this._ejDialog.animate(r,this.model.enableAnimation?Number(this.model.animation.show.duration):0,function(){i.model&&(i._ejDialog.css("display")=="none"&&i._ejDialog.show(),i._ejDialog.eq(0).focus(),i._ejDialog.css({opacity:""}),i.contentDiv.find("a:visible:enabled, button:visible:enabled, :input:visible:enabled, select:visible:enabled, .e-input").first().focus(),i._trigger("open"),i._updateCaptionWidth(),i.model.enableModal&&!i.model.backgroundScroll&&(i._ejDialog.height()>n(window).height()&&i._ejDialog.css("height",n(window).height()),i.model.height=n(window).height(),i._overLay.css("position","fixed"),i.scroller.refresh(!0),i.refresh()),(i.model.maxHeight||i.model.maxWidth)&&(u=i._ejDialog.outerHeight(!0)-(i._dialogTitlebar?i._dialogTitlebar.outerHeight(!0):0),(i.model.height=="auto"||i.model.height=="100%")&&(u=i.model.height),i._updateScroller(t.isNullOrUndefined(this.contentDiv)?u-2:this.contentDiv.css("border-width")=="0px",t.isNullOrUndefined(this.contentDiv)?i._ejDialog.width()-2:this.contentDiv.css("border-width")=="0px"),i.scroller.refresh()))}),this.model.enableModal==!0&&this._createOverlay(),this._isOpen=!0,this.element.find("> .e-draggable.e-titlebar")&&(f=n("#"+this.element.find("> .e-draggable.e-titlebar").attr("id")).data("ejDraggable"),f&&f.option("cursorAt",this.element.offset())),this)},close:function(t){var i,r,u;return!this._isOpen||!this.model.enabled?!0:(i=t?!0:!1,!0==this._trigger("beforeClose",{event:t,isInteraction:i}))?!1:(this._isOpen=!1,r=this,u={},this.model.enableAnimation&&(u=this.model.animation.hide.effect=="slide"?{left:-this._ejDialog.width(),opacity:0}:{opacity:0}),this._ejDialog.animate(u,this.model.enableAnimation?Number(this.model.animation.hide.duration):0,function(){r._trigger("close",{event:t,isInteraction:i});r._ejDialog.hide()}),this.model.enableModal&&(this._overLay&&this._overLay.remove(),this.model.backgroundScroll||n("body").removeClass("e-dialog-modal")),this)},isOpened:function(){return this.isOpen()},isOpen:function(){return this._isOpen},setTitle:function(n){return this.model.title=n,this._titleText.text(n),this._updateCaptionWidth(),this},setContent:function(n){return this.model.enabled?(this.element.html(n),this._resetScroller(),this):!1},focus:function(){return this._setZindex(),this.element.focus(),this},minimize:function(){if(this.model.showHeader)return this._actionMinimize(),n(this.wrapper.find(".e-minus")[0]).parent().hide(),this},maximize:function(){if(this.model.showHeader)return this._actionMaximize(),n(this.wrapper.find(".e-maximize")[0]).removeClass("e-maximize").addClass("e-restore"),n(this.wrapper.find(".e-restore")[1]).removeClass("e-restore").addClass("e-minus"),this._dialogMaximize&&this._dialogMaximize.attr("title",this.model.tooltip.restore),this._dialogTitlebar&&this._dialogTitlebar.find(".e-minus").parent().show(),this._hideIcon(!0),this},restore:function(){if(this.model.showHeader){var t=this._minimize;return this._actionRestore(),n(this.wrapper.find(".e-restore")[0]).removeClass("e-restore").addClass(t?"e-minus":"e-maximize"),this._dialogMaximize&&this._dialogMaximize.attr("title",this.model.tooltip.maximize),this._hideIcon(!0),this}},pin:function(){if(this.model.showHeader)return this.dialogPin=!0,n(this.wrapper.find(".e-unpin")[0]).removeClass("e-unpin").addClass("e-pin"),this._dialogPin&&this._dialogPin.attr("title",this.model.tooltip.unPin),this},unpin:function(){if(this.model.showHeader)return this.dialogPin=!1,n(this.wrapper.find(".e-pin")[0]).removeClass("e-pin").addClass("e-unpin"),this._dialogPin&&this._dialogPin.attr("title",this.model.tooltip.pin),this},collapse:function(){if(this.model.showHeader)return this._actionCollapse(),this._collapseValue=!0,this},expand:function(){if(this.model.showHeader)return this._actionExpand(),this}});t.Dialog.Locale=t.Dialog.Locale||{};t.Dialog.Locale["default"]=t.Dialog.Locale["en-US"]={tooltip:{close:"Close",collapse:"Collapse",restore:"Restore",maximize:"Maximize",minimize:"Minimize",expand:"Expand",unPin:"UnPin",pin:"Pin"},title:"",closeIconTooltip:"close"}}(jQuery,Syncfusion),function(n,t,i){t.widget("ejMaskEdit","ej.MaskEdit",{element:null,model:null,validTags:["input"],_addToPersist:["value"],_setFirst:!1,type:"editor",angular:{require:["?ngModel","^?form","^?ngModelOptions"],requireFormatters:!0},defaults:{maskFormat:"",value:null,watermarkText:"",name:null,height:"",width:"",showError:!1,htmlAttributes:{},cssClass:"",customCharacter:null,inputMode:"text",readOnly:!1,textAlign:t.TextAlign.Left,hidePromptOnLeave:!1,showRoundedCorner:!1,enablePersistence:!1,enabled:!0,locale:"en-US",showPromptChar:!0,validationRules:null,validationMessage:null,keydown:null,keyup:null,keyPress:null,change:null,mouseover:null,mouseout:null,focusIn:null,focusOut:null,create:null,destroy:null},dataTypes:{maskFormat:"string",showError:"boolean",enabled:"boolean",customCharacter:"string",cssClass:"string",watermarkText:"string",showRoundedCorner:"boolean",showPromptChar:"boolean",inputMode:"enum",textAlign:"enum",hidePromptOnLeave:"boolean",readOnly:"boolean",validationRules:"data",validationMessage:"data",htmlAttributes:"data"},_setModel:function(n){for(var i in n)switch(i){case"value":this.temp_index=0;this.indexValue=[];t.isPlainObject(n[i])&&(n[i]=null);this._setValue(n[i]);this._initObjects();n[i]=this.get_UnstrippedValue();this._raiseEvents("change",!0);break;case"width":this._setWidth(n[i]);break;case"height":this._setHeight(n[i]);break;case"watermarkText":this.model.watermarkText=n[i];this._changeWatermark(n[i]);break;case"showRoundedCorner":this._roundedCorner(n[i]);break;case"showPromptChar":this._setShowPrompt(n[i]);break;case"validationRules":this.model.validationRules!=null&&(this._hiddenInput.rules("remove"),this.model.validationMessage=null);this.model.validationRules=n[i];this.model.validationRules!=null&&(this._initValidator(),this._setValidation());break;case"validationMessage":this.model.validationMessage=n[i];this.model.validationRules!=null&&this.model.validationMessage!=null&&(this._initValidator(),this._setValidation());break;case"textAlign":this._setTextAlign(n[i]);break;case"inputMode":this._setInputMode(n[i]);break;case"maskFormat":this.model.maskFormat=n[i];this._valueMapper();this._maskModel=this.model.maskFormat;this._setMask(n[i]);this._initObjects();n[i]=this.model.maskFormat;break;case"locale":this.model.value=this.get_StrippedValue();this.model.locale=n[i];this._setValue(this.model.value);this._initObjects();break;case"cssClass":this._setSkin(n[i]);break;case"readOnly":this._setReadOnly(n[i]);break;case"enabled":this.model.enabled=n[i];this._controlStatus(n[i]);break;case"htmlAttributes":this._addAttr(n[i]);break;case"hidePromptOnLeave":this.model.hidePromptOnLeave=n[i];this._textbox.value!=""&&(this.model.hidePromptOnLeave?(this._unStrippedMask=this._textbox.value,this._textbox.value=this.get_UnstrippedValue()):this._textbox.value=this._textbox.value.replace(/[ ]/g,"_"),this.model.value=this._textbox.value)}},observables:["value"],_destroy:function(){t.isNullOrUndefined(this._hiddenInput)||this.element.attr("name",this._hiddenInput.attr("name"));this._isWatermark&&this.element.removeAttr("placeholder");this.element.insertAfter(this.wrapper);t.isNullOrUndefined(this.wrapper)||this.wrapper.remove();this.model.textAlign&&this.element.css("text-align","");this.element.val("").removeClass(" e-mask e-input e-disable").empty();this.element.removeAttr("aria-invalid aria-disabled")},_init:function(n){if(this.indexValue=[],this.temp_index=0,this._options=n,this._tempMask=this.model.maskFormat,this._keyFlag=!1,this._keyupFlag=!0,this._checkMask=!1,this._isAndroid=/android/i.test(navigator.userAgent.toLowerCase()),this.element.is("input")&&(this.element.is("input[type=text]")||this.element.is("input[type=password]")||!this.element.attr("type")))this.element.attr("autocomplete","off"),this._isWatermark="placeholder"in document.createElement("input"),this._setValues(),this._valueMapper(),this._renderControl(),this._initObjects(),this._wireEvents(),this._addAttr(this.model.htmlAttributes),this.model.validationRules!=null&&(this._initValidator(),this._setValidation());else return this._destroy(),!1;n&&n.value!=i&&this.model.value!==n.value&&this._trigger("_change",{value:this.get_UnstrippedValue(),unmaskedValue:this.get_StrippedValue()})},_initValidator:function(){this.element.closest("form").data("validator")||this.element.closest("form").validate()},_addAttr:function(i){var r=this;n.map(i,function(n,i){var u=i.toLowerCase();u=="class"?r.wrapper.addClass(n):u=="name"?r._hiddenInput.attr(i,n):u=="disabled"&&n=="disabled"?r.disable():u=="readonly"&&n=="readOnly"?r._setReadOnly(!0):u=="style"||u=="id"?r.wrapper.attr(i,n):t.isValidAttr(r.element[0],i)?r.element.attr(i,n):r.wrapper.attr(i,n)})},_setValidation:function(){var r,f,i,u,e;this._hiddenInput.rules("add",this.model.validationRules);r=this.element.closest("form").data("validator");r=r?r:this.element.closest("form").validate();f=this._hiddenInput.attr("name");r.settings.messages[f]={};for(i in this.model.validationRules)if(u=null,!t.isNullOrUndefined(this.model.validationRules[i])){if(t.isNullOrUndefined(this.model.validationRules.messages&&this.model.validationRules.messages[i])){r.settings.messages[f][i]=n.validator.messages[i];for(e in this.model.validationMessage)i==e?u=this.model.validationMessage[i]:""}else u=this.model.validationRules.messages[i];r.settings.messages[f][i]=u!=null?u:n.validator.messages[i]}},_setShowPrompt:function(n){this.model.showPromptChar=n;this._textbox.value=this.model.showPromptChar?this._unStrippedMask:this.get_UnstrippedValue()},_controlStatus:function(n){n!=!0?this.disable():this.enable()},_setValues:function(){this._unStrippedMask=null;this._charMap={"9":"[0-9 ]",a:"[A-Za-z0-9 ]",A:"[A-Za-z0-9]",N:"[0-9]","#":"[0-9]","&":"[^]+","<":"",">":"",C:this.model.customCharacter!=null?"["+this.model.customCharacter+"]":"[A-Za-z ]","?":"[A-Za-z]"}},_renderControl:function(){if(this.model.name=this.element.attr("name")!=null?this.element.attr("name"):this.model.name!=null?this.model.name:this.element[0].id,this.element.attr("name")!=null&&this.element.removeAttr("name"),this.wrapper=t.buildTag("span.e-mask e-widget "+this.model.cssClass),this.innerWrapper=t.buildTag("span.e-in-wrap e-box"),this.wrapper.append(this.innerWrapper).insertBefore(this.element),this.innerWrapper.append(this.element),this._hiddenInput=t.buildTag("input#"+this._id+"_hidden","",{},{type:"hidden"}).insertBefore(this.element),this._isWatermark||this.model.inputMode=="password"||(this._hiddenSpan=t.buildTag("span.e-input e-placeholder ").insertAfter(this.element),this._hiddenSpan.text(this.model.watermarkText),this._hiddenSpan.css("display","none"),this._hiddenSpan.bind("mousedown",n.proxy(this._OnFocusHandler,this))),t.isNullOrUndefined(this.model.value)&&this.element[0].value!=""&&(this.model.value=this.element[0].value),t.isNullOrUndefined(this.model.value)||(this.wrapper.addClass("e-valid"),typeof this.model.value=="number"&&(this.model.value=this.model.value.toString())),this._hiddenInput.attr({name:this.model.name,value:this.model.value}),this.element.attr({"aria-invalid":!1}).addClass("e-input"),this.model.maskFormat==""&&this.model.value==null){var i=this;setTimeout(function(){i.element.val()!=""&&(i.option("value",i.element.val()),i.previousValue=i.model.value,i._initObjects())},500)}else this.element.attr({value:this.model.value});t.isNullOrUndefined(this._options.inputMode)&&!t.isNullOrUndefined(this.element.attr("type"))?this.model.inputMode=this.element.attr("type"):this._setInputMode(this.model.inputMode);this._setWidth(this.model.width);this._setHeight(this.model.height);this._roundedCorner(this.model.showRoundedCorner);this._setTextAlign(this.model.textAlign);this._setReadOnly(this.model.readOnly);this._controlStatus(this.model.enabled);this.previousValue=this.model.value},_initObjects:function(){var i,t,n;if(this._textbox=this.element[0],this._keypressFlag=0,this._selectedTextKeyDown=0,this._keydownFlag=0,this.model.maskFormat.indexOf("\\")>=0){for(i=0,t=0;t<this.model.maskFormat.length;t++)this.model.maskFormat[t]=="\\"&&(i+=1);this._maskLength=this.model.maskFormat.length-i}else this._maskLength=this.model.maskFormat.length;if(this.model.maskFormat.indexOf("\\")>=0)if(this.model.value)for(this._maskModel="",n=0;n<this.model.maskFormat.length;++n)this.model.maskFormat[n]=="\\"?this._maskModel+=this.model.maskFormat[++n]:this.model.maskFormat[n]=="\\"||(this._maskModel+=this.model.maskFormat[n].replace(/[9?CANa#&]/g,"_"));else this._maskModel=this._emptyMask;else this._maskModel=this.model.maskFormat.replace(/[9?CANa#&]/g,"_");this._changeMask(this.model.locale);(this._maskModel.indexOf("<")>=0||this._maskModel.indexOf(">")>=0)&&(this._maskModel=this._maskModel.replace(/[<>]/g,""),this.model.maskFormat=this.model.maskFormat.replace(/[<>]/g,""),this._valueMapper());this._validatedValue=this._maskModel;this.model.inputMode!="password"&&(this._setValue(this.model.value),this._setWaterMark());this.model.showError&&this.element.addClass("e-error").attr("aria-invalid","true");this._prevValue=this.model.watermarkText?this._textbox.value?this._textbox.value:this._maskModel:this._textbox.value},_setWidth:function(n){this.wrapper.width(n)},_setHeight:function(n){this.wrapper.height(n)},_roundedCorner:function(n){n&&!this.innerWrapper.hasClass("e-corner")?this.innerWrapper.addClass("e-corner"):this.innerWrapper.hasClass("e-corner")&&this.innerWrapper.removeClass("e-corner")},_setTextAlign:function(n){n=="right"?(this.element.css("text-align",""),this.wrapper.addClass("e-rtl")):(this.wrapper.removeClass("e-rtl"),this.element.css("text-align",n))},_setInputMode:function(n){this.element.attr("type",n)},_setReadOnly:function(n){this.model.readOnly=n;n?this.element.attr("readonly",!0):this.element.removeAttr("readonly")},_setSkin:function(n){this.wrapper.removeClass(this.model.cssClass);this.wrapper.addClass(n)},_setWaterMark:function(){var i=this.model.showPromptChar?this._maskModel:this._maskModel!=""&&this._maskModel!=null?this._maskModel.replace(/[_]/g," "):this._maskModel;this._maskModel=this.model.maskFormat.indexOf("\\")>=0?this.model.maskFormat===""?null:i:n.trim(this.model.maskFormat.replace(/[9?CANa#&]/g,"_"))===""?null:this.model.maskFormat.replace(/[9?CANa#&]/g,"_");(this._maskModel!=""&&this._maskModel!=null&&this._textbox.value==i||i==""&&this._textbox.value==""&&this.model.inputMode!="password")&&(this._textbox.value="");this.model.watermarkText.length!=0||t.isNullOrUndefined(this.element.attr("placeholder"))||(this.model.watermarkText=this.element.attr("placeholder"));this.model.watermarkText&&(this._isWatermark?this.element.attr("placeholder",this.model.watermarkText):this._textbox.value?this._hiddenSpan.css("display","none").text(this.model.watermarkText):this._hiddenSpan.css("display","block").text(this.model.watermarkText));this.model.watermarkText||this._textbox.value||!this.model.maskFormat||(this.model.hidePromptOnLeave?(this._unStrippedMask=this._maskModel,this._textbox.value=this.get_UnstrippedValue()):this._textbox.value=i)},_changeWatermark:function(t){if(!this.model.enabled)return!1;var i=this.model.showPromptChar?this._maskModel:this._maskModel!=""&&this._maskModel!=null?this._maskModel.replace(/[_]/g," "):this._maskModel;(this._textbox.value==i||this._textbox.value==""||n.trim(this.get_StrippedValue())=="")&&this.model.inputMode!="password"&&(this._textbox.value="");this._isWatermark?this.element.attr("placeholder",t):this._hiddenSpan.text(t);!this.model.watermarkText&&n.trim(this.get_StrippedValue())==""&&this.model.maskFormat&&(this.model.hidePromptOnLeave?(this._unStrippedMask=this._maskModel,this._textbox.value=this.get_UnstrippedValue()):this._textbox.value=i)},_showAlert:function(){var t=this;this.element.addClass("e-error").attr("aria-invalid","true").animate({Opacity:1},700,null,function(){n(t._textbox).removeClass("e-error").attr("aria-invalid","false")})},_unMask:function(){for(var s,y,l,h="",a=0,n=0,u=0,e,v="_",c,t=this.model.value.toString(),o="",f=this._rules.slice(),r=0;r<this._rules.length;r++){for(s=0;s<t.length;s++)if(f[r].rule&&t[s].match(f[r].rule)||f[r].rule===i){o+=f[r].rule?t.charAt(s):f[r];t=f[r].rule?t.slice(s+1,t.length):f[r]===t[s]?t.slice(s+1,t.length):t;a=1;break}a===0&&t.length>0&&(o+=f[r].rule===i?f[r]:"");a=0}while(n<this._rules.length){if(e=o[u],c=this._rules[n],e==i)break;if(e===c||e===v?(h+=e===v?v:e,u+=1,n+=1):c.rule===i?(h+=c,n+=1):this._rules[n].rule!=i&&e.match(this._rules[n].rule)?(l=o.charCodeAt(u),y=n,(this._rules["0"]===">"||this._rules["0"]==="<")&&(y=n-1),this._validateChars(l,y)?(h+=o.charAt(u),n++,u++):n++):typeof c!="string"?e.match(this._rules[n].rule)?(l=o.charCodeAt(u),this._validateChars(l,n)&&(h+=o.charAt(u),n++,u++)):(u++,n++):n++,u>o.length)break}return h},_validateValue:function(){var d,a,y,s,e,k,p,h,u,f,w;if(!t.isNullOrUndefined(this.model.value)){var c=this.model.value,r=this._maskModel,n=f=0,o,v="_",b,l=this._unMask();if(this._isWatermark||this.model.inputMode=="password"||this._hiddenSpan.css("display","none"),this._maskLength==0)return this._textbox.value=c,this._setWaterMark(),!0;for(d=this.model.value.toString(),c=this.model.maskFormat.indexOf("\\")>=0||this.model.customCharacter!=null?this.model.value:this.model.value=d;n<this._rules.length;){if(o=l[f],o==="_"&&this._rules[n].rule==="[^]+"&&(this.indexValue[this.temp_index]=n,this.temp_index++),b=this._rules[n],o==i)break;o===b||o===v?(o===v?v:"",s=r.substring(0,n),e=r.substring(n),r=s+o+e.substr(1,e.length),f+=1,n+=1):this._rules[n].rule!=i?(y=l.charCodeAt(f),a=n,(this._rules["0"]===">"||this._rules["0"]==="<")&&(a=n-1),this._validateChars(y,a)?(s=r.substring(0,a),e=r.substring(a),r=s+l.charAt(f)+e.substr(1,e.length),n++,f++):n++):typeof b!="string"?o.match(this._rules[n].rule)?(y=l.charCodeAt(f),this._validateChars(y,n)?(s=r.substring(0,n),e=r.substring(n),r=s+l.charAt(f)+e.substr(1,e.length),n++,f++):n++):(s=r.substring(0,n),e=r.substring(n),r=s+v+e.substr(1,e.length),f++,n++):n++}if(this.model.value)if(this._textbox.value=r,this.model.value=this.get_UnstrippedValue(),this.model.value===null&&(this.model.value=r),this.model.maskFormat.indexOf("\\")>=0){for(this._textbox.value="",k=0,p=0;p<this.model.maskFormat.length;p++)this.model.maskFormat[p]=="\\"&&(k+=1);if(h=0,this.model.value.length==r.length-k)for(u=0;u<this.model.maskFormat.length;++u)this.model.maskFormat[u]=="\\"?h=h+1:this.model.maskFormat[u-1]=="\\"?this._textbox.value+=c[u-h]:this.model.maskFormat[u]=="\\"||(this._textbox.value+=c.length<=u-h?r[u].replace(/[9?CANa#&]/g,"_"):c[u-h].replace(/[9?CANa#&]/g,"_"));else this._textbox.value=r}else this.model.hidePromptOnLeave?(this._unStrippedMask=r.replace(/[ ]/g,"_"),this._textbox.value=r):this._textbox.value=r;else if(this.model.maskFormat.indexOf("\\")>=0)for(u=0;u<this.model.maskFormat.length;++u)this.model.maskFormat[u-1]=="\\"?this._textbox.value+=this.model.maskFormat[u]:this.model.maskFormat[u]=="\\"||(this._textbox.value+=this.model.maskFormat[u].replace(/[9?CANa#&]/g,"_"));else this._textbox.value=this.model.maskFormat.replace(/[9?CANa#&]/g,"_");if(this._textbox.value!=i&&this.model.hidePromptOnLeave&&(this._unStrippedMask=this._textbox.value.replace(/[ ]/g,"_"),this._textbox.value=this.get_UnstrippedValue()),this._maskModel!=null&&(this._textbox.value.indexOf(">")>=0||this._textbox.value.indexOf("<")>=0)&&(this._textbox.value=this._textbox.value.replace(/[<>]/g,""),this._tempMask=this.model.maskFormat,this.model.maskFormat=this.model.maskFormat.replace(/[<>]/g,"")),this.model.showPromptChar||(this._textbox.value=this._getUnstrippedValue(!0)),this._tempMask!=null)for(f=0;f<this._textbox.value.length;f++)w=this._updateCasing(this._textbox.value[f],f),t.isNullOrUndefined(w)||(this._textbox.value=this._textbox.value.substring(0,f)+w+this._textbox.value.substring(f+w.length));this._setWaterMark()}},_selectionText:function(n,i){var r=t.isNullOrUndefined(this._maskModel)?"":this._maskModel.substring(n,i);return(this._textbox.value=this._textbox.value.substring(0,n)+r+this._textbox.value.substring(i),this._keydownFlag==1)?(this._setCaretPosition(n),n):this._keydownFlag==2?(this._setCaretPosition(i),i):n},_caretPosition:function(n){var t=0,i,r;return document.selection?(i=document.selection.createRange(),r=i.text.length,i.moveStart("character",-n.value.length),t=i.text.length-r,r!=0&&(t=this._selectionText(t,i.text.length),this._selectedTextKeyDown=1)):(n.selectionStart||n.selectionStart=="0")&&(t=n.selectionStart,n.selectionStart!=n.selectionEnd&&(this._keydownFlag&&(t=this._selectionText(n.selectionStart,n.selectionEnd)),this._selectedTextKeyDown=1)),t},_setCaretPosition:function(n){var t=this._textbox,i;window.navigator.appName=="Microsoft Internet Explorer"?t.createTextRange&&(i=t.createTextRange(),i.move("character",n),i.select()):t.selectionStart||t.selectionStart=="0"?(t.focus(),this._isAndroid?setTimeout(function(){t.setSelectionRange(n,n)},0):t.setSelectionRange(n,n)):t.focus()},_validateChars:function(t,i){var s=this._charMap,u=!1,e,f,r,o;return this.model.maskFormat.indexOf("\\")>=0?(e=this._getCunrrentPos(i),f=this.model.maskFormat.substr(i+e,1)):f=this.model.maskFormat.substr(i,1),r=this.model.customCharacter,o=String.fromCharCode(t),n.each(s,function(n,t){f==n&&(r!=null&&(n=="C"?t="["+r+"]":(n=="A"||n=="N"||n=="#")&&(t=t.replace("]","")+r+"]")),u=o.match(new RegExp(t))?!0:!1)}),u},_seekNext:function(n,t){for(var f=this._caretPosition(this._textbox),i=n?t?f-t-1:f-1:f,e=i,o=!0,r,u;o;){if(i>=0&&i<this._maskLength){for(r=0,u=0;u<=i;u++)this.model.maskFormat[u]=="\\"&&(r+=1);if(this.model.maskFormat.charAt(i)!="C"&&(this.model.maskFormat.indexOf("\\")>=0?this.model.maskFormat.charAt(i+r)!="\\"&&this.model.maskFormat.charAt(i+r-1)!="\\"?this._charMap[this.model.maskFormat.charAt(i+r)]||i++:this.model.maskFormat.charAt(i+r)!="\\"&&this.model.maskFormat.charAt(i+r-1)=="\\"&&++i:this._charMap[this.model.maskFormat.charAt(i)]||i++,i!=e)){e=i;continue}}o=!1}return i},_seekBefore:function(n){var f=this._caretPosition(this._textbox),t=n?f+1:f,e=--t,u=!0,i,r;for(this._selectedTextKeyDown==1&&(u=!1);u;){if(t>=0&&t<this._maskLength){for(i=0,r=0;r<=t;r++)this.model.maskFormat[r]=="\\"&&(i+=1);if(this.model.maskFormat.charAt(t)!="C"&&(this.model.maskFormat.indexOf("\\")>=0?this.model.maskFormat.charAt(t+i)!="\\"&&this.model.maskFormat.charAt(t+i-1)!="\\"?this._charMap[this.model.maskFormat.charAt(t+i)]||this._setCaretPosition(--t):this.model.maskFormat.charAt(t+i-1)=="\\"&&this._setCaretPosition(--t+i):this._charMap[this.model.maskFormat.charAt(t)]||this._setCaretPosition(--t)),t!=e){e=t;continue}}u=!1}return t},_writeBuffer:function(n,t,r){var e,s,o,f,h,u;if(t<=this._maskLength){if(e=this._textbox.value,this.indexValue!=null&&r.keyCode!="95")for(u=0;u<this.indexValue.length;u++)this.indexValue[u]==t&&(n!="_"||r.keyCode=="8")&&(this.indexValue[u]="");if(r.keyCode=="95"&&(this.indexValue[this.temp_index]=t,this.temp_index++),this._tempMask!=null&&(s=this._updateCasing(n,t)),n=s==i?n:s,o=e.substring(0,t),f=e.substring(t),this.model.maskFormat.indexOf("\\")>=0){for(h=0,u=0;u<=t;u++)this.model.maskFormat[u].indexOf("\\")>=0&&t!=0&&(h+=1);this._textbox.value=this.model.maskFormat[t+h].indexOf("\\")>=0?o+e[t]+f.substr(1,f.length):o+n+f.substr(1,f.length)}else this._textbox.value=o+n+f.substr(1,f.length);this._setCaretPosition(t+1)}},_updateCasing:function(n,t){for(var r,i=0;i<t+1;i++)(this._tempMask.substr(i,1)=="<"||this._tempMask.substr(i,1)==">")&&t++;for(r=t;r>-1;r--){if(this._tempMask.substr(r,1)=="<")return n.toLowerCase();if(this._tempMask.substr(r,1)==">")return n.toUpperCase()}},_getStrippedValue:function(t){var f,s=this.model.maskFormat,e=t?"":null,o,r,i,u;if(f=this._textbox.value==""&&this.model.inputMode!="password"?this._maskModel:this._textbox.value,s.length==0)return f;for(o=0,r=0;r<s.length;r++)e=t?e:n.trim(e),this.model.maskFormat.indexOf("\\")>=0?this.model.maskFormat[r]=="\\"?o+=1:this.model.maskFormat[r-1]=="\\"?e+=this._textbox.value[r-o]:(i=s[r],u=null,"9?$a*".indexOf(i)!=-1?u=this._charMap[i]:i=="A"||i=="N"||i=="#"?u=this._charMap[i].replace("]","")+this.model.customCharacter+"]":i=="C"?u="["+this.model.customCharacter+"]":i=="&"&&(e+=f[r-o]),u&&f[r-o]&&f[r-o].match(new RegExp(u))&&(e+=f[r-o])):(i=s[r],u=null,"9?$a*".indexOf(i)!=-1?u=this._charMap[i]:i=="A"||i=="N"||i=="#"?u=this._charMap[i].replace("]","")+this.model.customCharacter+"]":i=="C"?u="["+this.model.customCharacter+"]":i=="&"&&(e+=f[r-o]),u&&f[r]&&f[r].match(new RegExp(u))&&(e+=f[r]));return e},_getUnstrippedValue:function(t){var u=0,f=this._textbox.value==""&&this.model.inputMode!="password"?this._maskModel:this._textbox.value,r=null;if(this.model.maskFormat.length==0)return f;if(f!=i&&(r=n.trim(f.replace(/[_]/g," "))==""?null:f.replace(/[_]/g," ")),this.model.customCharacter=="_"&&r==null&&(r=""),r==null&&this.indexValue[u]!=null&&(r=""),f!=i&&this.indexValue[u]!=null&&r!=null)for(;u<this.indexValue.length;u++)(this.indexValue[u]!=""||this.indexValue[u]=="0")&&(r=r.substr(0,this.indexValue[u])+"_"+r.substr(this.indexValue[u]+1));return r==null&&t?"":r},get_StrippedValue:function(){return this._getStrippedValue()},get_UnstrippedValue:function(){return this._getUnstrippedValue()},_setValue:function(i){(t.isNullOrUndefined(i)||n.trim(i)=="")&&(i=null);this.model.value=i;this._isWatermark||this.model.inputMode=="password"||this._hiddenSpan.css("display","none");t.isNullOrUndefined(this.model.maskFormat)||this.model.maskFormat==""?(this._textbox.value=t.isNullOrUndefined(i)?"":i,this._unStrippedMask=this._textbox.value):(this._validateValue(),t.isNullOrUndefined(this.model.value)&&(this._textbox.value=t.isNullOrUndefined(i)?"":i,this._unStrippedMask=this._maskModel));this._setWaterMark();this._prevValue=this._textbox.value;this._prevPosition=this.element[0].selectionStart},_valueMapper:function(){for(var f=[],r=0,o=this.model.maskFormat||"",s=o.split(""),t=0,n,h=0,u="",e,c=this._charMap,i;t<o.length;t++)if(n=s[t],e=c[n],e)f[r]={rule:e},u+="_",r+=1;else for(n==="\\"&&(h=t+1,t++,n=s[h]),n=n.split(""),i=0;i<n.length;i++)f[r]=n[i],u+=n[i],r+=1;this._rules=f;this._emptyMask=u;this._maskLength=u.length},_changeMask:function(n){var r,f,e,o,u,i;if(this._maskModel.length!=0){for(r=t.preferredCulture(n),u="",f=r.numberFormat[","],e=r.numberFormat.currency.symbol,o=r.numberFormat["."],i=0;i<this._maskModel.length;i++)u+=this._maskModel[i]==","?f:this._maskModel[i]=="."?o:this._maskModel[i]=="$"?e:this._maskModel[i];this._maskModel=u}},_setMask:function(i){if(this._maskLength=i.length,this.model.maskFormat=i,this._tempMask=this.model.maskFormat,this._maskModel=i.replace(/[9?CANa]/g,"_"),(this._maskModel.indexOf("<")>=0||this._maskModel.indexOf(">")>=0)&&(this._maskModel=this._maskModel.replace(/[<>]/g,""),this.model.maskFormat=this.model.maskFormat.replace(/[<>]/g,"")),t.isNullOrUndefined(this.model.maskFormat)||this.model.maskFormat==""){if(!this.model.watermarkText&&this._textbox.value!=this._maskModel)if(this.model.maskFormat)this.model.hidePromptOnLeave?(this._textbox.value=this._maskModel,this._unStrippedMask=this._textbox.value,this._textbox.value=this.get_UnstrippedValue()):this._textbox.value=this._maskModel;else{var r=this._unStrippedMask.replace(/[_]/g," ");this._textbox.value=this.model.customCharacter==null?n.trim(r.replace(/[\(\)-]/g,"")):n.trim(r);this._unStrippedMask=this._textbox.value}}else this._validateValue()},enable:function(){this.element.disabled=!1;this.element.removeAttr("disabled").removeClass("e-disable").attr({"aria-disabled":!1});this.wrapper.find(".e-placeholder").length>0&&this.wrapper.find(".e-placeholder").removeAttr("disabled","disabled");this.wrapper.removeClass("e-disable-wrap");this.model.enabled=!0},disable:function(){this.element.disabled=!0;this.element.attr("disabled","disabled").addClass("e-disable").attr({"aria-disabled":!0});this.wrapper.find(".e-placeholder").length>0&&this.wrapper.find(".e-placeholder").attr("disabled","disabled");this.wrapper.addClass("e-disable-wrap");this.model.enabled=!1},clear:function(){this._textbox.value=this.model.maskFormat.replace(/[9?aCAN]/g,"_");this.model.value=this.get_StrippedValue()},_wireEvents:function(){this._on(this.element,"focus",this._OnFocusHandler);this._on(this.element,"blur",this._OnBlurHandler);this._on(this.element,"keydown",this._OnKeyDownHandler);this._on(this.element,"input",this._OnInputHandler);this._on(this.element,"keypress",this._OnKeyPressHandler);this._on(this.element,"keyup",this._OnKeyUpHandler);this._on(this.element,"mouseover",this._OnMouseOverHandler);this._on(this.element,"mouseout",this._OnMouseOutHandler);this._on(this.element,"paste",this._OnPasteHandler);this._on(this.element,"cut",this._OnCutHandler)},_OnCutHandler:function(){var i=t.isNullOrUndefined(this._maskModel)?"":this._maskModel.substring(this._textbox.selectionStart,this._textbox.selectionEnd),r=this._textbox.value.substring(0,this._textbox.selectionStart),u=this._textbox.value.substring(this._textbox.selectionEnd),f=this._textbox.selectionStart,n=this;setTimeout(function(){n._textbox.value=r+i+u;n._setCaretPosition(f);n._prevValue=n._textbox.value;n._prevPosition=n.element[0].selectionStart;n._raiseEvents("change")},0)},_OnPasteHandler:function(){var t=this;return this._keyFlag=!0,setTimeout(function(){var i=n(t._textbox).val();t._setValue(i);t._raiseEvents("change")},0),!0},_OnFocusHandler:function(){var i,r;(this.wrapper.addClass("e-focus"),i=this.model.showPromptChar?this._maskModel:this._maskModel!=""&&this._maskModel!=null?this._maskModel.replace(/[_]/g," "):this._maskModel,this.model.readOnly)||(this._focusValue=this.model.value,this._isWatermark||this.model.inputMode=="password"||this._hiddenSpan.css("display","none"),this._textbox.value==""&&this._maskModel!=""&&this.model.inputMode!="password"&&(this._textbox.value=this.model.maskFormat.indexOf("\\")>=0?i:t.isNullOrUndefined(this._maskModel)?"":i),this._maskModel!=null&&(this._textbox.value.indexOf("<")>=0||this._textbox.value.indexOf(">")>=0)&&(this._textbox.value=this._textbox.value.replace(/[<>]/g,""),this._maskModel=this._textbox.value,this._tempMask=this.model.maskFormat,this.model.maskFormat=this.model.maskFormat.replace(/[<>]/g,"")),this._textbox.value!=i&&this._unStrippedMask!=null&&this.model.hidePromptOnLeave&&(this._textbox.value=this._unStrippedMask),this.model.showPromptChar||(this._textbox.value=this._getUnstrippedValue(!0)),n.fn.selectRange=function(n,t){return this.each(function(){if(this.setSelectionRange)this.focus(),this.setSelectionRange(n,t);else if(this.createTextRange){var i=this.createTextRange();i.collapse(!0);i.moveEnd("character",t);i.moveStart("character",n);i.select()}})},this.model.maskFormat&&n(this.element).selectRange(0,0),r=this,setTimeout(function(){r._prevPosition=r.element[0].selectionStart},0),this._raiseEvents("focusIn"))},_OnBlurHandler:function(){var f,r,n,u;if(this.wrapper.removeClass("e-focus"),this.model.value=this.get_StrippedValue(),f=[],r=[],(this._textbox.value.indexOf("_")!=-1||this._textbox.value.indexOf(" ")!=-1)&&!t.isNullOrUndefined(this.model.value)){for(n=0;n<this.model.maskFormat.length;n++)this.model.maskFormat[n]=="A"||this.model.maskFormat[n]=="?"?f.push(n):(this.model.maskFormat[n]=="9"||this.model.maskFormat[n]=="a"||this.model.maskFormat[n]=="C")&&r.push(n);for(n=0;n<f.length;n++)this._textbox.value[f[n]]==="_"&&(this._showAlert(),this.model.value=this._textbox.value);for(n=0;n<r.length;n++)if(this.model.value[r[n]]=="_"||this.model.value[r[n]]==" ")for(this.model.value=this.model.value.substr(0,r[n])+this.model.value.substr(r[n]+1,this.model.value.length),u=n;u<r.length;u++)r[u]=r[u]-1}this.model.value=this.model.value!=null?this.model.value.replace(/\s+/g,""):this.model.value;this._textbox.value!=i&&(this.model.watermarkText==""||this.model.watermarkText!=""&&this.model.value!="")&&(this.model.hidePromptOnLeave?(this._unStrippedMask=this._textbox.value,this._textbox.value=this.get_UnstrippedValue()):this._unStrippedMask=this._textbox.value);this.model.inputMode!="password"&&this._setWaterMark();this._raiseEvents("change");this._raiseEvents("focusOut")},_OnKeyDownHandler:function(n){var e,o,r,u,i,h;if(!this.model.readOnly){if(this._keyFlag=!0,this._checkMask&&(r=this.element[0].selectionStart,e=this._getStrippedValue(!0),this._setValue(e),this._setCaretPosition(r),this._checkMask=!1),this._keypressFlag=0,this._keyupFlag=!0,u=t.browserInfo().name,o=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream,t.isDevice()&&t.isTouchDevice()&&!o&&(n.keyCode==229||u=="mozilla"&&n.keyCode==0&&n.charCode==0||u=="edge"||u=="msie")&&(this._keyupFlag=!1),this._raiseEvents("onKeyDown",null,{keyCode:n.keyCode,altKey:n.altKey,shiftKey:n.shiftKey,ctrlKey:n.ctrlKey,originalArgs:n}),this._raiseEvents("keyDown",null,{keyCode:n.keyCode,altKey:n.altKey,shiftKey:n.shiftKey,ctrlKey:n.ctrlKey,originalArgs:n}),this.element.removeClass("error"),this._maskLength==0)return!0;var f=n.keyCode?n.keyCode:n.charCode,c=String.fromCharCode(f),i=this._seekNext(),s=this.model.showPromptChar?"_":" ",u=t.browserInfo().name;if(u=="msie"&&this._textbox.value==""){if(this.model.maskFormat.indexOf("\\")>=0)for(r=0;r<this.model.maskFormat.length;++r)this.model.maskFormat[r-1]=="\\"?this._textbox.value+=this.model.maskFormat[r]:this.model.maskFormat[r]=="\\"||(this._textbox.value+=this.model.maskFormat[r].replace(/[9?CANa#&]/g,"_"));else this._textbox.value=this.model.maskFormat.replace(/[9?CANa#&]/g,"_");this._setCaretPosition(i)}if(f>=35&&f<=41&&(window.navigator.appCodeName=="Mozilla"||window.navigator.appCodeName=="opera")&&(this._keypressFlag=1),n.shiftKey&&(n.keyCode==35||n.keyCode==36||n.keyCode==37||n.keyCode==39||n.keyCode==46||n.keyCode==127)||n.ctrlKey&&(n.keyCode==86||n.keyCode==65||n.keyCode==67||n.keyCode==88)){this._keypressFlag=1;return}return f==8?this.model.inputMode!="password"?(this._keydownFlag=1,i=this._seekBefore(),this._selectedTextKeyDown?!this.model.showPromptChar&&this._selectedTextKeyDown&&(n.keyCode==8&&i=="-1"&&this.indexValue!=null&&(this.indexValue=[],this.temp_index=0),this._textbox.value=this.get_UnstrippedValue(),this._setCaretPosition(i+1)):(i>=0&&i<this._maskLength&&this._writeBuffer(s,i,n),i<0&&(i=0),this._setCaretPosition(i)),this._keydownFlag=0,this._selectedTextKeyDown=0,n.keyCode==8&&i=="-1"&&this.indexValue!=null&&(this.indexValue=[],this.temp_index=0),n.preventDefault(),this._prevValue=this._textbox.value,this._prevPosition=this.element[0].selectionStart,this._keyFlag=!1,!1):(this._keypressFlag=1,!0):n.keyCode==46||n.keyCode==127?this.model.inputMode!="password"?(this._keydownFlag=2,i=this._seekNext(),this._selectedTextKeyDown?!this.model.showPromptChar&&this._selectedTextKeyDown&&(this._textbox.value=this.get_UnstrippedValue(),this._setCaretPosition(i)):i>=0&&i<this._maskLength&&(h=this._getCunrrentPos(i),this.model.maskFormat[i+h]=="&"||this._writeBuffer(s,i,n)),this._keydownFlag=0,this._selectedTextKeyDown=0,n.preventDefault(),!1):(this._keypressFlag=1,!0):void 0}},_ErrorHandler:function(n){var t=this.model.showPromptChar?"_":" ";this._textbox.value==""&&(this._textbox.value=this.model.maskFormat.replace(/[9?$CANa*]/g,t));this._setCaretPosition(n);this._showAlert()},_getCunrrentPos:function(n){for(var t=0,i=0;i<=n+t;i++)this.model.maskFormat[i]=="\\"&&(t+=1);return t},_OnKeyPressHandler:function(n){var f;if(!this.model.readOnly){if(this._keyFlag=!1,this._raiseEvents("keyPress",null,{keyCode:n.keyCode,altKey:n.altKey,shiftKey:n.shiftKey,ctrlKey:n.ctrlKey,originalArgs:n}),this._maskLength==0)return!0;var r=n.keyCode?n.keyCode:n.charCode,e=String.fromCharCode(r),o=this.model.showPromptChar?"_":" ",i=this._seekNext(),u=t.browserInfo().name,s=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream;if(t.isDevice()&&t.isTouchDevice()&&!s&&(u=="edge"||u=="msie"))return!0;if(this._validateChars(r,i)?((u=="mozilla"||u=="opera")&&(n.keyCode==35||n.keyCode==36||n.keyCode==37||n.keyCode==39)||(u=="mozilla"||u=="opera")&&n.ctrlKey&&(r==97||r==99||r==118||r==120)||(this._textbox.value==""&&(this._textbox.value=this.model.maskFormat.replace(/[9?$CANa&*]/g,o)),this.model.maskFormat.indexOf("\\")>=0?i<this._maskLength&&this._writeBuffer(e,i,n):this._writeBuffer(e,i,n)),this._prevValue=this._textbox.value):(u=="mozilla"||u=="opera")&&(n.keyCode==35||n.keyCode==36||n.keyCode==37||n.keyCode==39)||(u=="mozilla"||u=="opera")&&n.ctrlKey&&(r==97||r==99||r==118||r==120)||(this.model.maskFormat.indexOf("&")>=0||this.model.maskFormat.indexOf("\\")>=0?(f=this._getCunrrentPos(i),this.model.maskFormat[i+f]=="&"&&r==127||(this.model.maskFormat.indexOf("\\")>=0?i<this._maskLength&&(this._validateChars(r,i+f)||this.model.maskFormat[i+f-1]=="\\"?this._writeBuffer(e,i,n):this._ErrorHandler(i)):this._validateChars(r,i+f)?this._writeBuffer(e,i,n):this._ErrorHandler(i))):this._ErrorHandler(i)),!this._keypressFlag&&r!=9)return this._keypressFlag=0,n.preventDefault(),!1;this._keypressFlag=0}},_OnInputHandler:function(n){var c=t.browserInfo().name,l=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream&&!this._keyFlag,y=this._keyupFlag&&(c=="edge"||c=="msie"),a,s,i,u,f;if(this._maskLength==0)return!0;if(t.isDevice()&&t.isTouchDevice()&&(l||y)){var h=this._textbox.value.length-this._prevValue.length,i=h==1?this._seekNext(!0):this._seekNext(!0,h-1),r,e=this._textbox.value[this.element[0].selectionStart-1];r=e.charCodeAt(0);this._validateChars(r,i)?(this._textbox.value=this._prevValue,u=String.fromCharCode(r),this._writeBuffer(u,i,n)):(this._textbox.value=this._prevValue,this._setCaretPosition(i),this._ErrorHandler(i));this._prevValue=this._textbox.value;this._prevPosition=this.element[0].selectionStart;this._checkMask=!0}if(t.isDevice()&&t.isTouchDevice()&&!l&&!this._keyupFlag){a=this.element[0].selectionStart;s=this.element[0].selectionEnd;a!=s&&this._textbox.setSelectionRange(s,s);var p=this.model.showPromptChar?"_":" ",h=this._textbox.value.length-this._prevValue.length,v=h<=0?!0:!1,o=v?this._seekBefore(!0):this._seekNext(!0),r,e=this._textbox.value[this.element[0].selectionStart-1],a=0;if(this.element[0].selectionStart>0&&(r=e.charCodeAt(0)),this._tempMask.length>this._textbox.value.length)t.isNullOrUndefined(e)&&this._emptyMask.slice(1,this._emptyMask.length)==this._textbox.value?this._textbox.value=this._emptyMask:v?(this._textbox.value=this._prevValue,this._writeBuffer(p,o,n)):(i=o,this._validateChars(r,i)?(this._textbox.value=this._prevValue,u=String.fromCharCode(r),this._writeBuffer(u,i,n)):(this._textbox.value=this._prevValue,this._setCaretPosition(i),this._ErrorHandler(i))),this._setCaretPosition(o);else if(i=o,this._validateChars(r,i))for(this._textbox.value=this._prevValue,u=String.fromCharCode(r),this._writeBuffer(u,i,n),f=0;f<this._emptyMask.length;f++)this._emptyMask[f]==" "&&this._textbox.value[f]!=" "&&e==this._textbox.value[f]&&(this._textbox.value=this._textbox.value.substring(0,startPos-1)+" "+e+this._textbox.value.substring(endPos,this._textbox.value.length),this._setCaretPosition(o+1));else this._textbox.value=this._prevValue,this._setCaretPosition(i),this._ErrorHandler(i);this._prevValue=this._textbox.value;this._prevPosition=this.element[0].selectionStart;this._keyupFlag=!0}this._keyFlag=!1},_OnKeyUpHandler:function(n){this._maskLength==0&&this._raiseEvents("change");this._raiseEvents("keyUp",null,{keyCode:n.keyCode,altKey:n.altKey,shiftKey:n.shiftKey,ctrlKey:n.ctrlKey,originalArgs:n});t.isNullOrUndefined(this.model.validationRules)||this._hiddenInput.valid()},_OnMouseOverHandler:function(){this._raiseEvents("mouseOver")},_OnMouseOutHandler:function(){this._raiseEvents("mouseOut")},_raiseEvents:function(i,r,u){var f,o=this.get_StrippedValue(),e=this.get_UnstrippedValue();if(this.model.value=e!==null?this.model.customCharacter==null&&n.trim(e.replace(/[\(\)-]/g,""))==""?null:e:null,i=="change")if(this.previousValue!=this.model.value)this.previousValue=this.model.value;else if(this._focusValue==this.model.value)return!1;f={value:e,unmaskedValue:o};i=="change"&&(f.isInteraction=!r);i=="change"&&(this._trigger("_change",f),t.isNullOrUndefined(this.model.value)?this.wrapper.removeClass("e-valid"):this.wrapper.addClass("e-valid"));u&&n.extend(!0,f,u);this._hiddenInput.val(o);this._trigger(i,f)},_OnValueChange:function(){this._textbox.value==""&&this._maskModel!=""&&(this._textbox.value=this._maskModel);this._setValue(this._textbox.value)}});t.InputMode={Password:"password",Text:"text"}}(jQuery,Syncfusion)});
|