diff options
-rw-r--r-- | bower.json | 2 | ||||
-rw-r--r-- | dev/jquery.jtable.header.txt | 2 | ||||
-rw-r--r-- | jTable.jquery.json | 4 | ||||
-rw-r--r-- | jquery.jtable.js | 2 | ||||
-rw-r--r-- | lib/jquery.jtable.js | 42 | ||||
-rw-r--r-- | lib/jquery.jtable.min.js | 142 | ||||
-rw-r--r-- | package.json | 2 |
7 files changed, 45 insertions, 151 deletions
@@ -3,7 +3,7 @@ "main": [ "lib/jquery.jtable.min.js" ], - "version": "2.4.1", + "version": "2.5.0", "authors": [ "Halil ibrahim Kalkan <hi_kalkan@yahoo.com>" ], diff --git a/dev/jquery.jtable.header.txt b/dev/jquery.jtable.header.txt index 35b3106..3e9c648 100644 --- a/dev/jquery.jtable.header.txt +++ b/dev/jquery.jtable.header.txt @@ -1,6 +1,6 @@ /* -jTable 2.4.0 +jTable 2.5.0 http://www.jtable.org --------------------------------------------------------------------------- diff --git a/jTable.jquery.json b/jTable.jquery.json index a3c8830..0dc56b4 100644 --- a/jTable.jquery.json +++ b/jTable.jquery.json @@ -11,7 +11,7 @@ "paging", "sorting" ], - "version": "2.4.1", + "version": "2.5.0", "author": { "name": "Halil ibrahim Kalkan", "email": "halil@jtable.org", @@ -20,7 +20,7 @@ "maintainers": [ { "name": "Halil ibrahim Kalkan", - "email": "halil@jtable.org", + "email": "hi_kalkan@yahoo.com", "url": "http://www.halilibrahimkalkan.com" } ], diff --git a/jquery.jtable.js b/jquery.jtable.js index 320a8a4..273205a 100644 --- a/jquery.jtable.js +++ b/jquery.jtable.js @@ -1,6 +1,6 @@ /* -jTable 2.4.0 +jTable 2.5.0 http://www.jtable.org --------------------------------------------------------------------------- diff --git a/lib/jquery.jtable.js b/lib/jquery.jtable.js index 0fc911c..273205a 100644 --- a/lib/jquery.jtable.js +++ b/lib/jquery.jtable.js @@ -1,6 +1,6 @@ /* -jTable 2.4.0 +jTable 2.5.0 http://www.jtable.org --------------------------------------------------------------------------- @@ -124,6 +124,8 @@ THE SOFTWARE. _cache: null, //General purpose cache dictionary (object) + _extraFieldTypes:[], + /************************************************************************ * CONSTRUCTOR AND INITIALIZATION METHODS * *************************************************************************/ @@ -167,6 +169,9 @@ THE SOFTWARE. if (props.inputClass == undefined) { props.inputClass = ''; } + if (props.placeholder == undefined) { + props.placeholder = ''; + } //Convert dependsOn to array if it's a comma seperated lists if (props.dependsOn && $.type(props.dependsOn) === 'string') { @@ -186,6 +191,7 @@ THE SOFTWARE. this._columnList = []; this._fieldList = []; this._cache = []; + this._extraFieldTypes = []; }, /* Fills _fieldList, _columnList arrays and sets _keyField variable. @@ -737,7 +743,11 @@ THE SOFTWARE. return field.display({ record: record }); } - if (field.type == 'date') { + var extraFieldType = this._findItemByProperty(this._extraFieldTypes, 'type', field.type); + if(extraFieldType && extraFieldType.creator){ + return extraFieldType.creator(record, field); + } + else if (field.type == 'date') { return this._getDisplayTextForDateRecordField(field, fieldValue); } else if (field.type == 'checkbox') { return this._getCheckBoxTextForFieldByValue(fieldName, fieldValue); @@ -772,13 +782,19 @@ THE SOFTWARE. /* Finds an option object by given value. *************************************************************************/ _findOptionByValue: function (options, value) { - for (var i = 0; i < options.length; i++) { - if (options[i].Value == value) { - return options[i]; + return this._findItemByProperty(options, 'Value', value); + }, + + /* Finds an option object by given value. + *************************************************************************/ + _findItemByProperty: function (items, key, value) { + for (var i = 0; i < items.length; i++) { + if (items[i][key] == value) { + return items[i]; } } - return {}; //no option found + return {}; //no item found }, /* Gets text for a date field. @@ -1608,7 +1624,7 @@ THE SOFTWARE. /* Creates a standart textbox for a field. *************************************************************************/ _createTextInputForField: function (field, fieldName, value) { - var $input = $('<input class="' + field.inputClass + '" id="Edit-' + fieldName + '" type="text" name="' + fieldName + '"></input>'); + var $input = $('<input class="' + field.inputClass + '" placeholder="' + field.placeholder + '" id="Edit-' + fieldName + '" type="text" name="' + fieldName + '"></input>'); if (value != undefined) { $input.val(value); } @@ -1621,7 +1637,7 @@ THE SOFTWARE. /* Creates a password input for a field. *************************************************************************/ _createPasswordInputForField: function (field, fieldName, value) { - var $input = $('<input class="' + field.inputClass + '" id="Edit-' + fieldName + '" type="password" name="' + fieldName + '"></input>'); + var $input = $('<input class="' + field.inputClass + '" placeholder="' + field.placeholder + '" id="Edit-' + fieldName + '" type="password" name="' + fieldName + '"></input>'); if (value != undefined) { $input.val(value); } @@ -2729,7 +2745,7 @@ THE SOFTWARE. var $columns = $tableRow.find('td'); for (var i = 0; i < this._columnList.length; i++) { var displayItem = this._getDisplayTextForRecordField(record, this._columnList[i]); - if ((displayItem != "") && (displayItem == 0)) displayItem = "0"; + if ((displayItem === 0)) displayItem = "0"; $columns.eq(this._firstDataColumnOffset + i).html(displayItem || ''); } @@ -4240,7 +4256,7 @@ THE SOFTWARE. _createHeaderCellForField: function (fieldName, field) { var $headerCell = base._createHeaderCellForField.apply(this, arguments); if (this.options.sorting && field.sorting) { - this._makeColumnSortable($headerCell, fieldName); + this._makeColumnSortable($headerCell, fieldName, field.initialSortingDirection); } return $headerCell; @@ -4287,7 +4303,7 @@ THE SOFTWARE. /* Makes a column sortable. *************************************************************************/ - _makeColumnSortable: function ($columnHeader, fieldName) { + _makeColumnSortable: function ($columnHeader, fieldName, initialSortingDirection) { var self = this; $columnHeader @@ -4302,6 +4318,10 @@ THE SOFTWARE. self._sortTableByColumn($columnHeader); }); + if(initialSortingDirection){ + $columnHeader.addClass('jtable-column-header-sorted-' + initialSortingDirection.toLowerCase()); + } + //Set default sorting $.each(this._lastSorting, function (sortIndex, sortField) { if (sortField.fieldName == fieldName) { diff --git a/lib/jquery.jtable.min.js b/lib/jquery.jtable.min.js index e010c83..f967ef2 100644 --- a/lib/jquery.jtable.min.js +++ b/lib/jquery.jtable.min.js @@ -1,7 +1,10 @@ /* -jTable 2.4.0 + +jTable 2.5.0 http://www.jtable.org + --------------------------------------------------------------------------- + Copyright (C) 2011-2014 by Halil İbrahim Kalkan (http://www.halilibrahimkalkan.com) Permission is hereby granted, free of charge, to any person obtaining a copy @@ -21,137 +24,8 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ -(function(c){var g;c(window).on("beforeunload",function(){g=!0});c(window).on("unload",function(){g=!1});c.widget("hik.jtable",{options:{actions:{},fields:{},animationsEnabled:!0,defaultDateFormat:"yy-mm-dd",dialogShowEffect:"fade",dialogHideEffect:"fade",showCloseButton:!1,loadingAnimationDelay:500,saveUserPreferences:!0,jqueryuiTheme:!1,unAuthorizedRequestRedirectUrl:null,ajaxSettings:{type:"POST",dataType:"json"},toolbar:{hoverAnimation:!0,hoverAnimationDuration:60,hoverAnimationEasing:void 0, -items:[]},closeRequested:function(a,b){},formCreated:function(a,b){},formSubmitting:function(a,b){},formClosed:function(a,b){},loadingRecords:function(a,b){},recordsLoaded:function(a,b){},rowInserted:function(a,b){},rowsRemoved:function(a,b){},messages:{serverCommunicationError:"An error occured while communicating to the server.",loadingMessage:"Loading records...",noDataAvailable:"No data available!",areYouSure:"Are you sure?",save:"Save",saving:"Saving",cancel:"Cancel",error:"Error",close:"Close", -cannotLoadOptionsFor:"Can not load options for field {0}"}},_$mainContainer:null,_$titleDiv:null,_$toolbarDiv:null,_$table:null,_$tableBody:null,_$tableRows:null,_$busyDiv:null,_$busyMessageDiv:null,_$errorDialogDiv:null,_columnList:null,_fieldList:null,_keyField:null,_firstDataColumnOffset:0,_lastPostData:null,_cache:null,_create:function(){this._normalizeFieldsOptions();this._initializeFields();this._createFieldAndColumnList();this._createMainContainer();this._createTableTitle();this._createToolBar(); -this._createTable();this._createBusyPanel();this._createErrorDialogDiv();this._addNoDataRow();this._cookieKeyPrefix=this._generateCookieKeyPrefix()},_normalizeFieldsOptions:function(){var a=this;c.each(a.options.fields,function(b,d){a._normalizeFieldOptions(b,d)})},_normalizeFieldOptions:function(a,b){void 0==b.listClass&&(b.listClass="");void 0==b.inputClass&&(b.inputClass="");if(b.dependsOn&&"string"===c.type(b.dependsOn)){var d=b.dependsOn.split(",");b.dependsOn=[];for(var f=0;f<d.length;f++)b.dependsOn.push(c.trim(d[f]))}}, -_initializeFields:function(){this._lastPostData={};this._$tableRows=[];this._columnList=[];this._fieldList=[];this._cache=[]},_createFieldAndColumnList:function(){var a=this;c.each(a.options.fields,function(b,d){a._fieldList.push(b);!0==d.key&&(a._keyField=b);!1!=d.list&&"hidden"!=d.type&&a._columnList.push(b)})},_createMainContainer:function(){this._$mainContainer=c("<div />").addClass("jtable-main-container").appendTo(this.element);this._jqueryuiThemeAddClass(this._$mainContainer,"ui-widget")}, -_createTableTitle:function(){var a=this;if(a.options.title){var b=c("<div />").addClass("jtable-title").appendTo(a._$mainContainer);a._jqueryuiThemeAddClass(b,"ui-widget-header");c("<div />").addClass("jtable-title-text").appendTo(b).append(a.options.title);if(a.options.showCloseButton){var d=c("<span />").html(a.options.messages.close);c("<button></button>").addClass("jtable-command-button jtable-close-button").attr("title",a.options.messages.close).append(d).appendTo(b).click(function(d){d.preventDefault(); -d.stopPropagation();a._onCloseRequested()})}a._$titleDiv=b}},_createTable:function(){this._$table=c("<table></table>").addClass("jtable").appendTo(this._$mainContainer);this.options.tableId&&this._$table.attr("id",this.options.tableId);this._jqueryuiThemeAddClass(this._$table,"ui-widget-content");this._createTableHead();this._createTableBody()},_createTableHead:function(){var a=c("<thead></thead>").appendTo(this._$table);this._addRowToTableHead(a)},_addRowToTableHead:function(a){a=c("<tr></tr>").appendTo(a); -this._addColumnsToHeaderRow(a)},_addColumnsToHeaderRow:function(a){for(var b=0;b<this._columnList.length;b++){var d=this._columnList[b];this._createHeaderCellForField(d,this.options.fields[d]).appendTo(a)}},_createHeaderCellForField:function(a,b){b.width=b.width||"10%";var d=c("<span />").addClass("jtable-column-header-text").html(b.title),d=c("<div />").addClass("jtable-column-header-container").append(d),d=c("<th></th>").addClass("jtable-column-header").addClass(b.listClass).css("width",b.width).data("fieldName", -a).append(d);this._jqueryuiThemeAddClass(d,"ui-state-default");return d},_createEmptyCommandHeader:function(){var a=c("<th></th>").addClass("jtable-command-column-header").css("width","1%");this._jqueryuiThemeAddClass(a,"ui-state-default");return a},_createTableBody:function(){this._$tableBody=c("<tbody></tbody>").appendTo(this._$table)},_createBusyPanel:function(){this._$busyMessageDiv=c("<div />").addClass("jtable-busy-message").prependTo(this._$mainContainer);this._$busyDiv=c("<div />").addClass("jtable-busy-panel-background").prependTo(this._$mainContainer); -this._jqueryuiThemeAddClass(this._$busyMessageDiv,"ui-widget-header");this._hideBusy()},_createErrorDialogDiv:function(){var a=this;a._$errorDialogDiv=c("<div></div>").appendTo(a._$mainContainer);a._$errorDialogDiv.dialog({autoOpen:!1,show:a.options.dialogShowEffect,hide:a.options.dialogHideEffect,modal:!0,title:a.options.messages.error,buttons:[{text:a.options.messages.close,click:function(){a._$errorDialogDiv.dialog("close")}}]})},load:function(a,b){this._lastPostData=a;this._reloadTable(b)},reload:function(a){this._reloadTable(a)}, -getRowByKey:function(a){for(var b=0;b<this._$tableRows.length;b++)if(a==this._getKeyValueOfRecord(this._$tableRows[b].data("record")))return this._$tableRows[b];return null},destroy:function(){this.element.empty();c.Widget.prototype.destroy.call(this)},_setOption:function(a,b){},_reloadTable:function(a){var b=this,d=function(d){b._hideBusy();"OK"!=d.Result?b._showError(d.Message):(b._removeAllRows("reloading"),b._addRecordsToTable(d.Records),b._onRecordsLoaded(d),a&&a())};b._showBusy(b.options.messages.loadingMessage, -b.options.loadingAnimationDelay);b._onLoadingRecords();if(c.isFunction(b.options.actions.listAction)){var f=b.options.actions.listAction(b._lastPostData,b._createJtParamsForLoading());b._isDeferredObject(f)?f.done(function(a){d(a)}).fail(function(){b._showError(b.options.messages.serverCommunicationError)}).always(function(){b._hideBusy()}):d(f)}else f=b._createRecordLoadUrl(),b._ajax({url:f,data:b._lastPostData,success:function(a){d(a)},error:function(){b._hideBusy();b._showError(b.options.messages.serverCommunicationError)}})}, -_createRecordLoadUrl:function(){return this.options.actions.listAction},_createJtParamsForLoading:function(){return{}},_createRowFromRecord:function(a){a=c("<tr></tr>").addClass("jtable-data-row").attr("data-record-key",this._getKeyValueOfRecord(a)).data("record",a);this._addCellsToRowUsingRecord(a);return a},_addCellsToRowUsingRecord:function(a){for(var b=a.data("record"),d=0;d<this._columnList.length;d++)this._createCellForRecordField(b,this._columnList[d]).appendTo(a)},_createCellForRecordField:function(a, -b){return c("<td></td>").addClass(this.options.fields[b].listClass).append(this._getDisplayTextForRecordField(a,b))},_addRecordsToTable:function(a){var b=this;c.each(a,function(a,f){b._addRow(b._createRowFromRecord(f))});b._refreshRowStyles()},_addRowToTable:function(a,b,d,f){b={index:this._normalizeNumber(b,0,this._$tableRows.length,this._$tableRows.length)};!0==d&&(b.isNewRow=!0);!1==f&&(b.animationsEnabled=!1);this._addRow(a,b)},_addRow:function(a,b){b=c.extend({index:this._$tableRows.length,isNewRow:!1, -animationsEnabled:!0},b);0>=this._$tableRows.length&&this._removeNoDataRow();b.index=this._normalizeNumber(b.index,0,this._$tableRows.length,this._$tableRows.length);b.index==this._$tableRows.length?(this._$tableBody.append(a),this._$tableRows.push(a)):0==b.index?(this._$tableBody.prepend(a),this._$tableRows.unshift(a)):(this._$tableRows[b.index-1].after(a),this._$tableRows.splice(b.index,0,a));this._onRowInserted(a,b.isNewRow);b.isNewRow&&(this._refreshRowStyles(),this.options.animationsEnabled&& -b.animationsEnabled&&this._showNewRowAnimation(a))},_showNewRowAnimation:function(a){var b="jtable-row-created";this.options.jqueryuiTheme&&(b+=" ui-state-highlight");a.addClass(b,"slow","",function(){a.removeClass(b,5E3)})},_removeRowsFromTable:function(a,b){var d=this;0>=a.length||(a.addClass("jtable-row-removed").remove(),a.each(function(){var a=d._findRowIndex(c(this));0<=a&&d._$tableRows.splice(a,1)}),d._onRowsRemoved(a,b),0==d._$tableRows.length&&d._addNoDataRow(),d._refreshRowStyles())},_findRowIndex:function(a){return this._findIndexInArray(a, -this._$tableRows,function(a,d){return a.data("record")==d.data("record")})},_removeAllRows:function(a){if(!(0>=this._$tableRows.length)){var b=this._$tableBody.find("tr.jtable-data-row");this._$tableBody.empty();this._$tableRows=[];this._onRowsRemoved(b,a);this._addNoDataRow()}},_addNoDataRow:function(){if(!(0<this._$tableBody.find(">tr.jtable-no-data-row").length)){var a=c("<tr></tr>").addClass("jtable-no-data-row").appendTo(this._$tableBody),b=this._$table.find("thead th").length;c("<td></td>").attr("colspan", -b).html(this.options.messages.noDataAvailable).appendTo(a)}},_removeNoDataRow:function(){this._$tableBody.find(".jtable-no-data-row").remove()},_refreshRowStyles:function(){for(var a=0;a<this._$tableRows.length;a++)0==a%2?this._$tableRows[a].addClass("jtable-row-even"):this._$tableRows[a].removeClass("jtable-row-even")},_getDisplayTextForRecordField:function(a,b){var d=this.options.fields[b],f=a[b];return d.display?d.display({record:a}):"date"==d.type?this._getDisplayTextForDateRecordField(d,f):"checkbox"== -d.type?this._getCheckBoxTextForFieldByValue(b,f):d.options?(d=this._getOptionsForField(b,{record:a,value:f,source:"list",dependedValues:this._createDependedValuesUsingRecord(a,d.dependsOn)}),this._findOptionByValue(d,f).DisplayText):f},_createDependedValuesUsingRecord:function(a,b){if(!b)return{};for(var d={},f=0;f<b.length;f++)d[b[f]]=a[b[f]];return d},_findOptionByValue:function(a,b){for(var d=0;d<a.length;d++)if(a[d].Value==b)return a[d];return{}},_getDisplayTextForDateRecordField:function(a,b){if(!b)return""; -var d=a.displayFormat||this.options.defaultDateFormat,f=this._parseDate(b);return c.datepicker.formatDate(d,f)},_getOptionsForField:function(a,b){var d=this.options.fields[a],f=d.options;c.isFunction(f)&&(b=c.extend(!0,{_cacheCleared:!1,dependedValues:{},clearCache:function(){this._cacheCleared=!0}},b),f=f(b));if("string"==typeof f){var e="options_"+a+"_"+f;b._cacheCleared||!this._cache[e]?(this._cache[e]=this._buildOptionsFromArray(this._downloadOptions(a,f)),this._sortFieldOptions(this._cache[e], -d.optionsSorting)):void 0!=b.value&&void 0==this._findOptionByValue(this._cache[e],b.value).DisplayText&&(this._cache[e]=this._buildOptionsFromArray(this._downloadOptions(a,f)),this._sortFieldOptions(this._cache[e],d.optionsSorting));f=this._cache[e]}else f=jQuery.isArray(f)?this._buildOptionsFromArray(f):this._buildOptionsArrayFromObject(f),this._sortFieldOptions(f,d.optionsSorting);return f},_downloadOptions:function(a,b){var d=this,f=[];d._ajax({url:b,async:!1,success:function(a){"OK"!=a.Result? -d._showError(a.Message):f=a.Options},error:function(){var b=d._formatString(d.options.messages.cannotLoadOptionsFor,a);d._showError(b)}});return f},_sortFieldOptions:function(a,b){if(a&&a.length&&b){var d;d=0==b.indexOf("value")?function(a){return a.Value}:function(a){return a.DisplayText};var f;f="string"==c.type(d(a[0]))?function(a,b){return d(a).localeCompare(d(b))}:function(a,b){return d(a)-d(b)};0<b.indexOf("desc")?a.sort(function(a,d){return f(d,a)}):a.sort(function(a,d){return f(a,d)})}},_buildOptionsArrayFromObject:function(a){var b= -[];c.each(a,function(a,f){b.push({Value:a,DisplayText:f})});return b},_buildOptionsFromArray:function(a){for(var b=[],d=0;d<a.length;d++)c.isPlainObject(a[d])?b.push(a[d]):b.push({Value:a[d],DisplayText:a[d]});return b},_parseDate:function(a){if(0<=a.indexOf("Date"))return new Date(parseInt(a.substr(6),10));if(10==a.length)return new Date(parseInt(a.substr(0,4),10),parseInt(a.substr(5,2),10)-1,parseInt(a.substr(8,2),10));if(19==a.length)return new Date(parseInt(a.substr(0,4),10),parseInt(a.substr(5, -2),10)-1,parseInt(a.substr(8,2,10)),parseInt(a.substr(11,2),10),parseInt(a.substr(14,2),10),parseInt(a.substr(17,2),10));this._logWarn("Given date is not properly formatted: "+a);return"format error!"},_createToolBar:function(){this._$toolbarDiv=c("<div />").addClass("jtable-toolbar").appendTo(this._$titleDiv);for(var a=0;a<this.options.toolbar.items.length;a++)this._addToolBarItem(this.options.toolbar.items[a])},_addToolBarItem:function(a){if(void 0==a||void 0==a.text&&void 0==a.icon)return this._logWarn("Can not add tool bar item since it is not valid!"), -this._logWarn(a),null;var b=c("<span></span>").addClass("jtable-toolbar-item").appendTo(this._$toolbarDiv);this._jqueryuiThemeAddClass(b,"ui-widget ui-state-default ui-corner-all","ui-state-hover");a.cssClass&&b.addClass(a.cssClass);a.tooltip&&b.attr("title",a.tooltip);if(a.icon){var d=c('<span class="jtable-toolbar-item-icon"></span>').appendTo(b);!0!==a.icon&&c.type("string"===a.icon)&&d.css("background",'url("'+a.icon+'")')}a.text&&c('<span class=""></span>').html(a.text).addClass("jtable-toolbar-item-text").appendTo(b); -a.click&&b.click(function(){a.click()});var f=void 0,e=void 0;this.options.toolbar.hoverAnimation&&(f=this.options.toolbar.hoverAnimationDuration,e=this.options.toolbar.hoverAnimationEasing);b.hover(function(){b.addClass("jtable-toolbar-item-hover",f,e)},function(){b.removeClass("jtable-toolbar-item-hover",f,e)});return b},_showError:function(a){this._$errorDialogDiv.html(a).dialog("open")},_setBusyTimer:null,_showBusy:function(a,b){var d=this;d._$busyDiv.width(d._$mainContainer.width()).height(d._$mainContainer.height()).addClass("jtable-busy-panel-background-invisible").show(); -var f=function(){d._$busyDiv.removeClass("jtable-busy-panel-background-invisible");d._$busyMessageDiv.html(a).show()};b?d._setBusyTimer||(d._setBusyTimer=setTimeout(f,b)):f()},_hideBusy:function(){clearTimeout(this._setBusyTimer);this._setBusyTimer=null;this._$busyDiv.hide();this._$busyMessageDiv.html("").hide()},_isBusy:function(){return this._$busyMessageDiv.is(":visible")},_jqueryuiThemeAddClass:function(a,b,d){this.options.jqueryuiTheme&&(a.addClass(b),d&&a.hover(function(){a.addClass(d)},function(){a.removeClass(d)}))}, -_performAjaxCall:function(a,b,d,f,e){this._ajax({url:a,data:b,async:d,success:f,error:e})},_unAuthorizedRequestHandler:function(){this.options.unAuthorizedRequestRedirectUrl?location.href=this.options.unAuthorizedRequestRedirectUrl:location.reload(!0)},_ajax:function(a){var b=this,d={statusCode:{401:function(){b._unAuthorizedRequestHandler()}}},d=c.extend(d,this.options.ajaxSettings,a);d.success=function(d){d&&!0==d.UnAuthorizedRequest&&b._unAuthorizedRequestHandler();a.success&&a.success(d)};d.error= -function(d,b,h){g?d.abort():a.error&&a.error(arguments)};d.complete=function(){a.complete&&a.complete()};c.ajax(d)},_getKeyValueOfRecord:function(a){return a[this._keyField]},_setCookie:function(a,b){a=this._cookieKeyPrefix+a;var d=new Date;d.setDate(d.getDate()+30);document.cookie=encodeURIComponent(a)+"="+encodeURIComponent(b)+"; expires="+d.toUTCString()},_getCookie:function(a){a=this._cookieKeyPrefix+a;for(var b=document.cookie.split("; "),d=0;d<b.length;d++)if(b[d]){var f=b[d].split("=");if(2== -f.length&&decodeURIComponent(f[0])===a)return decodeURIComponent(f[1]||"")}return null},_generateCookieKeyPrefix:function(){var a="";this.options.tableId&&(a=a+this.options.tableId+"#");a=a+this._columnList.join("$")+"#c"+this._$table.find("thead th").length;var b=0;if(0!=a.length)for(var d=0;d<a.length;d++)var f=a.charCodeAt(d),b=(b<<5)-b+f,b=b&b;return"jtable#"+b},_onLoadingRecords:function(){this._trigger("loadingRecords",null,{})},_onRecordsLoaded:function(a){this._trigger("recordsLoaded",null, -{records:a.Records,serverResponse:a})},_onRowInserted:function(a,b){this._trigger("rowInserted",null,{row:a,record:a.data("record"),isNewRow:b})},_onRowsRemoved:function(a,b){this._trigger("rowsRemoved",null,{rows:a,reason:b})},_onCloseRequested:function(){this._trigger("closeRequested",null,{})}})})(jQuery); -(function(c){c.extend(!0,c.hik.jtable.prototype,{_getPropertyOfObject:function(c,a){if(0>a.indexOf("."))return c[a];var b=a.substring(0,a.indexOf(".")),d=a.substring(a.indexOf(".")+1);return this._getPropertyOfObject(c[b],d)},_setPropertyOfObject:function(c,a,b){if(0>a.indexOf("."))c[a]=b;else{var d=a.substring(0,a.indexOf("."));a=a.substring(a.indexOf(".")+1);this._setPropertyOfObject(c[d],a,b)}},_insertToArrayIfDoesNotExists:function(g,a){0>c.inArray(a,g)&&g.push(a)},_findIndexInArray:function(c, -a,b){b||(b=function(a,d){return a==d});for(var d=0;d<a.length;d++)if(b(c,a[d]))return d;return-1},_normalizeNumber:function(c,a,b,d){return void 0==c||null==c||isNaN(c)?d:c<a?a:c>b?b:c},_formatString:function(){if(0==arguments.length)return null;for(var c=arguments[0],a=1;a<arguments.length;a++)c=c.replace("{"+(a-1)+"}",arguments[a]);return c},_isDeferredObject:function(c){return c.then&&c.done&&c.fail},_logDebug:function(c){window.console&&console.log("jTable DEBUG: "+c)},_logInfo:function(c){window.console&& -console.log("jTable INFO: "+c)},_logWarn:function(c){window.console&&console.log("jTable WARNING: "+c)},_logError:function(c){window.console&&console.log("jTable ERROR: "+c)}});Array.prototype.indexOf||(Array.prototype.indexOf=function(c,a){var b=this.length,d=Number(a)||0,d=0>d?Math.ceil(d):Math.floor(d);for(0>d&&(d+=b);d<b;d++)if(d in this&&this[d]===c)return d;return-1})})(jQuery); -(function(c){c.extend(!0,c.hik.jtable.prototype,{_submitFormUsingAjax:function(c,a,b,d){this._ajax({url:c,data:a,success:b,error:d})},_createInputLabelForRecordField:function(g){return c("<div />").addClass("jtable-input-label").html(this.options.fields[g].inputTitle||this.options.fields[g].title)},_createInputForRecordField:function(g){var a=g.fieldName,b=g.value,d=g.record,f=g.formType;g=g.form;var e=this.options.fields[a];if(void 0==b||null==b)b=e.defaultValue;return e.input?(b=c(e.input({value:b, -record:d,formType:f,form:g})),b.attr("id")||b.attr("id","Edit-"+a),c("<div />").addClass("jtable-input jtable-custom-input").append(b)):"date"==e.type?this._createDateInputForField(e,a,b):"textarea"==e.type?this._createTextAreaForField(e,a,b):"password"==e.type?this._createPasswordInputForField(e,a,b):"checkbox"==e.type?this._createCheckboxForField(e,a,b):e.options?"radiobutton"==e.type?this._createRadioButtonListForField(e,a,b,d,f):this._createDropDownListForField(e,a,b,d,f,g):this._createTextInputForField(e, -a,b)},_createInputForHidden:function(g,a){void 0==a&&(a="");return c('<input type="hidden" name="'+g+'" id="Edit-'+g+'"></input>').val(a)},_createDateInputForField:function(g,a,b){a=c('<input class="'+g.inputClass+'" id="Edit-'+a+'" type="text" name="'+a+'"></input>');void 0!=b&&a.val(b);a.datepicker({dateFormat:g.displayFormat||this.options.defaultDateFormat});return c("<div />").addClass("jtable-input jtable-date-input").append(a)},_createTextAreaForField:function(g,a,b){g=c('<textarea class="'+ -g.inputClass+'" id="Edit-'+a+'" name="'+a+'"></textarea>');void 0!=b&&g.val(b);return c("<div />").addClass("jtable-input jtable-textarea-input").append(g)},_createTextInputForField:function(g,a,b){g=c('<input class="'+g.inputClass+'" id="Edit-'+a+'" type="text" name="'+a+'"></input>');void 0!=b&&g.val(b);return c("<div />").addClass("jtable-input jtable-text-input").append(g)},_createPasswordInputForField:function(g,a,b){g=c('<input class="'+g.inputClass+'" id="Edit-'+a+'" type="password" name="'+ -a+'"></input>');void 0!=b&&g.val(b);return c("<div />").addClass("jtable-input jtable-password-input").append(g)},_createCheckboxForField:function(g,a,b){var d=this;void 0==b&&(b=d._getCheckBoxPropertiesForFieldByState(a,!1).Value);var f=c("<div />").addClass("jtable-input jtable-checkbox-input"),e=c('<input class="'+g.inputClass+'" id="Edit-'+a+'" type="checkbox" name="'+a+'" />').appendTo(f);void 0!=b&&e.val(b);var h=c("<span>"+(g.formText||d._getCheckBoxTextForFieldByValue(a,b))+"</span>").appendTo(f); -d._getIsCheckBoxSelectedForFieldByValue(a,b)&&e.attr("checked","checked");var k=function(){var b=d._getCheckBoxPropertiesForFieldByState(a,e.is(":checked"));e.attr("value",b.Value);h.html(g.formText||b.DisplayText)};e.click(function(){k()});!1!=g.setOnTextClick&&h.addClass("jtable-option-text-clickable").click(function(){e.is(":checked")?e.attr("checked",!1):e.attr("checked",!0);k()});return f},_createDropDownListForField:function(g,a,b,d,f,e){var h=c("<div />").addClass("jtable-input jtable-dropdown-input"), -k=c('<select class="'+g.inputClass+'" id="Edit-'+a+'" name="'+a+'"></select>').appendTo(h);g=this._getOptionsForField(a,{record:d,source:f,form:e,dependedValues:this._createDependedValuesUsingForm(e,g.dependsOn)});this._fillDropDownListWithOptions(k,g,b);return h},_fillDropDownListWithOptions:function(g,a,b){g.empty();for(var d=0;d<a.length;d++)c("<option"+(a[d].Value==b?' selected="selected"':"")+">"+a[d].DisplayText+"</option>").val(a[d].Value).appendTo(g)},_createDependedValuesUsingForm:function(c, -a){if(!a)return{};for(var b={},d=0;d<a.length;d++){var f=a[d],e=c.find("select[name="+f+"]");0>=e.length||(b[f]=e.val())}return b},_createRadioButtonListForField:function(g,a,b,d,f){var e=c("<div />").addClass("jtable-input jtable-radiobuttonlist-input");d=this._getOptionsForField(a,{record:d,source:f});c.each(d,function(d,f){var l=c('<div class=""></div>').addClass("jtable-radio-input").appendTo(e),m=c('<input type="radio" id="Edit-'+a+"-"+d+'" class="'+g.inputClass+'" name="'+a+'"'+(f.Value==b+ -""?' checked="true"':"")+" />").val(f.Value).appendTo(l),l=c("<span></span>").html(f.DisplayText).appendTo(l);!1!=g.setOnTextClick&&l.addClass("jtable-option-text-clickable").click(function(){m.is(":checked")||m.attr("checked",!0)})});return e},_getCheckBoxTextForFieldByValue:function(c,a){return this.options.fields[c].values[a]},_getIsCheckBoxSelectedForFieldByValue:function(c,a){return this._createCheckBoxStateArrayForFieldWithCaching(c)[1].Value.toString()==a.toString()},_getCheckBoxPropertiesForFieldByState:function(c, -a){return this._createCheckBoxStateArrayForFieldWithCaching(c)[a?1:0]},_createCheckBoxStateArrayForFieldWithCaching:function(c){var a="checkbox_"+c;this._cache[a]||(this._cache[a]=this._createCheckBoxStateArrayForField(c));return this._cache[a]},_createCheckBoxStateArrayForField:function(g){var a=[],b=0;c.each(this.options.fields[g].values,function(d,f){2>b++&&a.push({Value:d,DisplayText:f})});return a},_makeCascadeDropDowns:function(g,a,b){var d=this;g.find("select").each(function(){var f=c(this), -e=f.attr("name");if(e){var h=d.options.fields[e];h.dependsOn&&c.each(h.dependsOn,function(c,l){g.find("select[name="+l+"]").change(function(){var c={record:a,source:b,form:g,dependedValues:{}};c.dependedValues=d._createDependedValuesUsingForm(g,h.dependsOn);c=d._getOptionsForField(e,c);d._fillDropDownListWithOptions(f,c,void 0);f.change()})})}})},_updateRecordValuesFromForm:function(g,a){for(var b=0;b<this._fieldList.length;b++){var d=this._fieldList[b],f=this.options.fields[d];if(!1!=f.edit){var e= -a.find('[name="'+d+'"]');if(!(0>=e.length))if("date"==f.type)if(e=e.val()){f=f.displayFormat||this.options.defaultDateFormat;try{var h=c.datepicker.parseDate(f,e);g[d]="/Date("+h.getTime()+")/"}catch(k){this._logWarn("Date format is incorrect for field "+d+": "+e),g[d]=void 0}}else this._logDebug("Date is empty for "+d),g[d]=void 0;else f.options&&"radiobutton"==f.type?(f=e.filter(":checked"),g[d]=f.length?f.val():void 0):g[d]=e.val()}}},_setEnabledOfDialogButton:function(c,a,b){c&&(!1!=a?c.removeAttr("disabled").removeClass("ui-state-disabled"): -c.attr("disabled","disabled").addClass("ui-state-disabled"),b&&c.find("span").text(b))}})})(jQuery); -(function(c){var g=c.hik.jtable.prototype._create;c.extend(!0,c.hik.jtable.prototype,{options:{recordAdded:function(a,b){},messages:{addNewRecord:"Add new record"}},_$addRecordDiv:null,_create:function(){g.apply(this,arguments);this.options.actions.createAction&&this._createAddRecordDialogDiv()},_createAddRecordDialogDiv:function(){var a=this;a._$addRecordDiv=c("<div />").appendTo(a._$mainContainer);a._$addRecordDiv.dialog({autoOpen:!1,show:a.options.dialogShowEffect,hide:a.options.dialogHideEffect, -width:"auto",minWidth:"300",modal:!0,title:a.options.messages.addNewRecord,buttons:[{text:a.options.messages.cancel,click:function(){a._$addRecordDiv.dialog("close")}},{id:"AddRecordDialogSaveButton",text:a.options.messages.save,click:function(){a._onSaveClickedOnCreateForm()}}],close:function(){var b=a._$addRecordDiv.find("form").first(),d=a._$addRecordDiv.parent().find("#AddRecordDialogSaveButton");a._trigger("formClosed",null,{form:b,formType:"create"});a._setEnabledOfDialogButton(d,!0,a.options.messages.save); -b.remove()}});a.options.addRecordButton?a.options.addRecordButton.click(function(b){b.preventDefault();a._showAddRecordForm()}):a._addToolBarItem({icon:!0,cssClass:"jtable-toolbar-item-add-record",text:a.options.messages.addNewRecord,click:function(){a._showAddRecordForm()}})},_onSaveClickedOnCreateForm:function(){var a=this._$addRecordDiv.parent().find("#AddRecordDialogSaveButton"),b=this._$addRecordDiv.find("form");!1!=this._trigger("formSubmitting",null,{form:b,formType:"create"})&&(this._setEnabledOfDialogButton(a, -!1,this.options.messages.saving),this._saveAddRecordForm(b,a))},showCreateForm:function(){this._showAddRecordForm()},addRecord:function(a){var b=this;a=c.extend({clientOnly:!1,animationsEnabled:b.options.animationsEnabled,success:function(){},error:function(){}},a);if(a.record)if(a.clientOnly)b._addRow(b._createRowFromRecord(a.record),{isNewRow:!0,animationsEnabled:a.animationsEnabled}),a.success();else{var d=function(d){"OK"!=d.Result?(b._showError(d.Message),a.error(d)):d.Record?(b._onRecordAdded(d), -b._addRow(b._createRowFromRecord(d.Record),{isNewRow:!0,animationsEnabled:a.animationsEnabled}),a.success(d)):(b._logError("Server must return the created Record object."),a.error(d))};if(!a.url&&c.isFunction(b.options.actions.createAction)){var f=b.options.actions.createAction(c.param(a.record));b._isDeferredObject(f)?f.done(function(a){d(a)}).fail(function(){b._showError(b.options.messages.serverCommunicationError);a.error()}):d(f)}else b._submitFormUsingAjax(a.url||b.options.actions.createAction, -c.param(a.record),function(a){d(a)},function(){b._showError(b.options.messages.serverCommunicationError);a.error()})}else b._logWarn("options parameter in addRecord method must contain a record property.")},_showAddRecordForm:function(){for(var a=this,b=c('<form id="jtable-create-form" class="jtable-dialog-form jtable-create-form"></form>'),d=0;d<a._fieldList.length;d++){var f=a._fieldList[d],e=a.options.fields[f];!0==e.key&&!0!=e.create||!1==e.create||("hidden"==e.type?b.append(a._createInputForHidden(f, -e.defaultValue)):(e=c("<div />").addClass("jtable-input-field-container").appendTo(b),e.append(a._createInputLabelForRecordField(f)),e.append(a._createInputForRecordField({fieldName:f,formType:"create",form:b}))))}a._makeCascadeDropDowns(b,void 0,"create");b.submit(function(){a._onSaveClickedOnCreateForm();return!1});a._$addRecordDiv.append(b).dialog("open");a._trigger("formCreated",null,{form:b,formType:"create"})},_saveAddRecordForm:function(a,b){var d=this,f=function(a){"OK"!=a.Result?(d._showError(a.Message), -d._setEnabledOfDialogButton(b,!0,d.options.messages.save)):a.Record?(d._onRecordAdded(a),d._addRow(d._createRowFromRecord(a.Record),{isNewRow:!0}),d._$addRecordDiv.dialog("close")):(d._logError("Server must return the created Record object."),d._setEnabledOfDialogButton(b,!0,d.options.messages.save))};a.data("submitting",!0);if(c.isFunction(d.options.actions.createAction)){var e=d.options.actions.createAction(a.serialize());d._isDeferredObject(e)?e.done(function(a){f(a)}).fail(function(){d._showError(d.options.messages.serverCommunicationError); -d._setEnabledOfDialogButton(b,!0,d.options.messages.save)}):f(e)}else d._submitFormUsingAjax(d.options.actions.createAction,a.serialize(),function(a){f(a)},function(){d._showError(d.options.messages.serverCommunicationError);d._setEnabledOfDialogButton(b,!0,d.options.messages.save)})},_onRecordAdded:function(a){this._trigger("recordAdded",null,{record:a.Record,serverResponse:a})}})})(jQuery); -(function(c){var g=c.hik.jtable.prototype._create,a=c.hik.jtable.prototype._addColumnsToHeaderRow,b=c.hik.jtable.prototype._addCellsToRowUsingRecord;c.extend(!0,c.hik.jtable.prototype,{options:{recordUpdated:function(a,b){},rowUpdated:function(a,b){},messages:{editRecord:"Edit Record"}},_$editDiv:null,_$editingRow:null,_create:function(){g.apply(this,arguments);this.options.actions.updateAction&&this._createEditDialogDiv()},_createEditDialogDiv:function(){var a=this;a._$editDiv=c("<div></div>").appendTo(a._$mainContainer); -a._$editDiv.dialog({autoOpen:!1,show:a.options.dialogShowEffect,hide:a.options.dialogHideEffect,width:"auto",minWidth:"300",modal:!0,title:a.options.messages.editRecord,buttons:[{text:a.options.messages.cancel,click:function(){a._$editDiv.dialog("close")}},{id:"EditDialogSaveButton",text:a.options.messages.save,click:function(){a._onSaveClickedOnEditForm()}}],close:function(){var b=a._$editDiv.find("form:first"),c=a._$editDiv.parent().find("#EditDialogSaveButton");a._trigger("formClosed",null,{form:b, -formType:"edit",row:a._$editingRow});a._setEnabledOfDialogButton(c,!0,a.options.messages.save);b.remove()}})},_onSaveClickedOnEditForm:function(){if(this._$editingRow.hasClass("jtable-row-removed"))this._$editDiv.dialog("close");else{var a=this._$editDiv.parent().find("#EditDialogSaveButton"),b=this._$editDiv.find("form");!1!=this._trigger("formSubmitting",null,{form:b,formType:"edit",row:this._$editingRow})&&(this._setEnabledOfDialogButton(a,!1,this.options.messages.saving),this._saveEditForm(b, -a))}},updateRecord:function(a){var b=this;a=c.extend({clientOnly:!1,animationsEnabled:b.options.animationsEnabled,success:function(){},error:function(){}},a);if(a.record){var e=b._getKeyValueOfRecord(a.record);if(void 0==e||null==e)b._logWarn("options parameter in updateRecord method must contain a record that contains the key field property.");else{var h=b.getRowByKey(e);if(null==h)b._logWarn('Can not found any row by key "'+e+'" on the table. Updating row must be visible on the table.');else if(a.clientOnly)c.extend(h.data("record"), -a.record),b._updateRowTexts(h),b._onRecordUpdated(h,null),a.animationsEnabled&&b._showUpdateAnimationForRow(h),a.success();else{var k=function(e){"OK"!=e.Result?(b._showError(e.Message),a.error(e)):(c.extend(h.data("record"),a.record),b._updateRecordValuesFromServerResponse(h.data("record"),e),b._updateRowTexts(h),b._onRecordUpdated(h,e),a.animationsEnabled&&b._showUpdateAnimationForRow(h),a.success(e))};!a.url&&c.isFunction(b.options.actions.updateAction)?(e=b.options.actions.updateAction(c.param(a.record)), -b._isDeferredObject(e)?e.done(function(a){k(a)}).fail(function(){b._showError(b.options.messages.serverCommunicationError);a.error()}):k(e)):b._submitFormUsingAjax(a.url||b.options.actions.updateAction,c.param(a.record),function(a){k(a)},function(){b._showError(b.options.messages.serverCommunicationError);a.error()})}}}else b._logWarn("options parameter in updateRecord method must contain a record property.")},_addColumnsToHeaderRow:function(d){a.apply(this,arguments);void 0!=this.options.actions.updateAction&& -d.append(this._createEmptyCommandHeader())},_addCellsToRowUsingRecord:function(a){var f=this;b.apply(this,arguments);if(void 0!=f.options.actions.updateAction){var e=c("<span></span>").html(f.options.messages.editRecord),e=c('<button title="'+f.options.messages.editRecord+'"></button>').addClass("jtable-command-button jtable-edit-command-button").append(e).click(function(b){b.preventDefault();b.stopPropagation();f._showEditForm(a)});c("<td></td>").addClass("jtable-command-column").append(e).appendTo(a)}}, -_showEditForm:function(a){for(var b=this,e=a.data("record"),h=c('<form id="jtable-edit-form" class="jtable-dialog-form jtable-edit-form"></form>'),k=0;k<b._fieldList.length;k++){var l=b._fieldList[k],m=b.options.fields[l],n=e[l];if(!0==m.key)if(!0!=m.edit){h.append(b._createInputForHidden(l,n));continue}else h.append(b._createInputForHidden("jtRecordKey",n));!1!=m.edit&&("hidden"==m.type?h.append(b._createInputForHidden(l,n)):(m=c('<div class="jtable-input-field-container"></div>').appendTo(h),m.append(b._createInputLabelForRecordField(l)), -n=b._getValueForRecordField(e,l),m.append(b._createInputForRecordField({fieldName:l,value:n,record:e,formType:"edit",form:h}))))}b._makeCascadeDropDowns(h,e,"edit");h.submit(function(){b._onSaveClickedOnEditForm();return!1});b._$editingRow=a;b._$editDiv.append(h).dialog("open");b._trigger("formCreated",null,{form:h,formType:"edit",record:e,row:a})},_saveEditForm:function(a,b){var e=this,h=function(c){if("OK"!=c.Result)e._showError(c.Message),e._setEnabledOfDialogButton(b,!0,e.options.messages.save); -else{var h=e._$editingRow.data("record");e._updateRecordValuesFromForm(h,a);e._updateRecordValuesFromServerResponse(h,c);e._updateRowTexts(e._$editingRow);e._$editingRow.attr("data-record-key",e._getKeyValueOfRecord(h));e._onRecordUpdated(e._$editingRow,c);e.options.animationsEnabled&&e._showUpdateAnimationForRow(e._$editingRow);e._$editDiv.dialog("close")}};if(c.isFunction(e.options.actions.updateAction)){var k=e.options.actions.updateAction(a.serialize());e._isDeferredObject(k)?k.done(function(a){h(a)}).fail(function(){e._showError(e.options.messages.serverCommunicationError); -e._setEnabledOfDialogButton(b,!0,e.options.messages.save)}):h(k)}else e._submitFormUsingAjax(e.options.actions.updateAction,a.serialize(),function(a){h(a)},function(){e._showError(e.options.messages.serverCommunicationError);e._setEnabledOfDialogButton(b,!0,e.options.messages.save)})},_updateRecordValuesFromServerResponse:function(a,b){b&&b.Record&&c.extend(!0,a,b.Record)},_getValueForRecordField:function(a,b){var c=this.options.fields[b],h=a[b];return"date"==c.type?this._getDisplayTextForDateRecordField(c, -h):h},_updateRowTexts:function(a){for(var b=a.data("record"),c=a.find("td"),h=0;h<this._columnList.length;h++){var k=this._getDisplayTextForRecordField(b,this._columnList[h]);""!=k&&0==k&&(k="0");c.eq(this._firstDataColumnOffset+h).html(k||"")}this._onRowUpdated(a)},_showUpdateAnimationForRow:function(a){var b="jtable-row-updated";this.options.jqueryuiTheme&&(b+=" ui-state-highlight");a.stop(!0,!0).addClass(b,"slow","",function(){a.removeClass(b,5E3)})},_onRowUpdated:function(a){this._trigger("rowUpdated", -null,{row:a,record:a.data("record")})},_onRecordUpdated:function(a,b){this._trigger("recordUpdated",null,{record:a.data("record"),row:a,serverResponse:b})}})})(jQuery); -(function(c){var g=c.hik.jtable.prototype._create,a=c.hik.jtable.prototype._addColumnsToHeaderRow,b=c.hik.jtable.prototype._addCellsToRowUsingRecord;c.extend(!0,c.hik.jtable.prototype,{options:{deleteConfirmation:!0,recordDeleted:function(a,b){},messages:{deleteConfirmation:"This record will be deleted. Are you sure?",deleteText:"Delete",deleting:"Deleting",canNotDeletedRecords:"Can not delete {0} of {1} records!",deleteProggress:"Deleting {0} of {1} records, processing..."}},_$deleteRecordDiv:null, -_$deletingRow:null,_create:function(){g.apply(this,arguments);this._createDeleteDialogDiv()},_createDeleteDialogDiv:function(){var a=this;a.options.actions.deleteAction&&(a._$deleteRecordDiv=c('<div><p><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span><span class="jtable-delete-confirm-message"></span></p></div>').appendTo(a._$mainContainer),a._$deleteRecordDiv.dialog({autoOpen:!1,show:a.options.dialogShowEffect,hide:a.options.dialogHideEffect,modal:!0,title:a.options.messages.areYouSure, -buttons:[{text:a.options.messages.cancel,click:function(){a._$deleteRecordDiv.dialog("close")}},{id:"DeleteDialogButton",text:a.options.messages.deleteText,click:function(){if(a._$deletingRow.hasClass("jtable-row-removed"))a._$deleteRecordDiv.dialog("close");else{var b=a._$deleteRecordDiv.parent().find("#DeleteDialogButton");a._setEnabledOfDialogButton(b,!1,a.options.messages.deleting);a._deleteRecordFromServer(a._$deletingRow,function(){a._removeRowsFromTableWithAnimation(a._$deletingRow);a._$deleteRecordDiv.dialog("close")}, -function(c){a._showError(c);a._setEnabledOfDialogButton(b,!0,a.options.messages.deleteText)})}}}],close:function(){var b=a._$deleteRecordDiv.parent().find("#DeleteDialogButton");a._setEnabledOfDialogButton(b,!0,a.options.messages.deleteText)}}))},deleteRows:function(a){var b=this;if(0>=a.length)b._logWarn("No rows specified to jTable deleteRows method.");else if(b._isBusy())b._logWarn("Can not delete rows since jTable is busy!");else if(1==a.length)b._deleteRecordFromServer(a,function(){b._removeRowsFromTableWithAnimation(a)}, -function(a){b._showError(a)});else{b._showBusy(b._formatString(b.options.messages.deleteProggress,0,a.length));var e=0,h=function(){var c=a.filter(".jtable-row-ready-to-remove");c.length<a.length&&b._showError(b._formatString(b.options.messages.canNotDeletedRecords,a.length-c.length,a.length));0<c.length&&b._removeRowsFromTableWithAnimation(c);b._hideBusy()},k=0;a.each(function(){var g=c(this);b._deleteRecordFromServer(g,function(){++k;++e;g.addClass("jtable-row-ready-to-remove");b._showBusy(b._formatString(b.options.messages.deleteProggress, -k,a.length));e>=a.length&&h()},function(){++e;e>=a.length&&h()})})}},deleteRecord:function(a){var b=this;a=c.extend({clientOnly:!1,animationsEnabled:b.options.animationsEnabled,url:b.options.actions.deleteAction,success:function(){},error:function(){}},a);if(void 0==a.key)b._logWarn("options parameter in deleteRecord method must contain a key property.");else{var e=b.getRowByKey(a.key);null==e?b._logWarn("Can not found any row by key: "+a.key):a.clientOnly?(b._removeRowsFromTableWithAnimation(e,a.animationsEnabled), -a.success()):b._deleteRecordFromServer(e,function(c){b._removeRowsFromTableWithAnimation(e,a.animationsEnabled);a.success(c)},function(c){b._showError(c);a.error(c)},a.url)}},_addColumnsToHeaderRow:function(b){a.apply(this,arguments);void 0!=this.options.actions.deleteAction&&b.append(this._createEmptyCommandHeader())},_addCellsToRowUsingRecord:function(a){b.apply(this,arguments);var f=this;if(void 0!=f.options.actions.deleteAction){var e=c("<span></span>").html(f.options.messages.deleteText),e=c('<button title="'+ -f.options.messages.deleteText+'"></button>').addClass("jtable-command-button jtable-delete-command-button").append(e).click(function(b){b.preventDefault();b.stopPropagation();f._deleteButtonClickedForRow(a)});c("<td></td>").addClass("jtable-command-column").append(e).appendTo(a)}},_deleteButtonClickedForRow:function(a){var b=this,e,h=b.options.messages.deleteConfirmation;if(c.isFunction(b.options.deleteConfirmation)){e={row:a,record:a.data("record"),deleteConfirm:!0,deleteConfirmMessage:h,cancel:!1, -cancelMessage:null};b.options.deleteConfirmation(e);if(e.cancel){e.cancelMessage&&b._showError(e.cancelMessage);return}h=e.deleteConfirmMessage;e=e.deleteConfirm}else e=b.options.deleteConfirmation;!1!=e?(b._$deleteRecordDiv.find(".jtable-delete-confirm-message").html(h),b._showDeleteDialog(a)):b._deleteRecordFromServer(a,function(){b._removeRowsFromTableWithAnimation(a)},function(a){b._showError(a)})},_showDeleteDialog:function(a){this._$deletingRow=a;this._$deleteRecordDiv.dialog("open")},_deleteRecordFromServer:function(a, -b,e,h){var k=this,g=function(c){"OK"!=c.Result?(a.data("deleting",!1),e&&e(c.Message)):(k._trigger("recordDeleted",null,{record:a.data("record"),row:a,serverResponse:c}),b&&b(c))};if(!0!=a.data("deleting")){a.data("deleting",!0);var m={};m[k._keyField]=k._getKeyValueOfRecord(a.data("record"));!h&&c.isFunction(k.options.actions.deleteAction)?(h=k.options.actions.deleteAction(m),k._isDeferredObject(h)?h.done(function(a){g(a)}).fail(function(){a.data("deleting",!1);e&&e(k.options.messages.serverCommunicationError)}): -g(h)):this._ajax({url:h||k.options.actions.deleteAction,data:m,success:function(a){g(a)},error:function(){a.data("deleting",!1);e&&e(k.options.messages.serverCommunicationError)}})}},_removeRowsFromTableWithAnimation:function(a,b){var c=this;void 0==b&&(b=c.options.animationsEnabled);if(b){var h="jtable-row-deleting";this.options.jqueryuiTheme&&(h+=" ui-state-disabled");a.stop(!0,!0).addClass(h,"slow","").promise().done(function(){c._removeRowsFromTable(a,"deleted")})}else c._removeRowsFromTable(a, -"deleted")}})})(jQuery); -(function(c){var g=c.hik.jtable.prototype._create,a=c.hik.jtable.prototype._addColumnsToHeaderRow,b=c.hik.jtable.prototype._addCellsToRowUsingRecord,d=c.hik.jtable.prototype._onLoadingRecords,f=c.hik.jtable.prototype._onRecordsLoaded,e=c.hik.jtable.prototype._onRowsRemoved;c.extend(!0,c.hik.jtable.prototype,{options:{selecting:!1,multiselect:!1,selectingCheckboxes:!1,selectOnRowClick:!0,selectionChanged:function(a,b){}},_selectedRecordIdsBeforeLoad:null,_$selectAllCheckbox:null,_shiftKeyDown:!1,_create:function(){this.options.selecting&& -this.options.selectingCheckboxes&&(++this._firstDataColumnOffset,this._bindKeyboardEvents());g.apply(this,arguments)},_bindKeyboardEvents:function(){var a=this;c(document).keydown(function(b){switch(b.which){case 16:a._shiftKeyDown=!0}}).keyup(function(b){switch(b.which){case 16:a._shiftKeyDown=!1}})},selectedRows:function(){return this._getSelectedRows()},selectRows:function(a){this._selectRows(a);this._onSelectionChanged()},_addColumnsToHeaderRow:function(b){this.options.selecting&&this.options.selectingCheckboxes&& -(this.options.multiselect?b.append(this._createSelectAllHeader()):b.append(this._createEmptyCommandHeader()));a.apply(this,arguments)},_addCellsToRowUsingRecord:function(a){this.options.selecting&&this._makeRowSelectable(a);b.apply(this,arguments)},_onLoadingRecords:function(){this.options.selecting&&this._storeSelectionList();d.apply(this,arguments)},_onRecordsLoaded:function(){this.options.selecting&&this._restoreSelectionList();f.apply(this,arguments)},_onRowsRemoved:function(a,b){this.options.selecting&& -"reloading"!=b&&0<a.filter(".jtable-row-selected").length&&this._onSelectionChanged();e.apply(this,arguments)},_createSelectAllHeader:function(){var a=this,b=c('<th class=""></th>').addClass("jtable-command-column-header jtable-column-header-selecting");this._jqueryuiThemeAddClass(b,"ui-state-default");var d=c("<div />").addClass("jtable-column-header-container").appendTo(b);a._$selectAllCheckbox=c('<input type="checkbox" />').appendTo(d).click(function(){if(0>=a._$tableRows.length)a._$selectAllCheckbox.attr("checked", -!1);else{var b=a._$tableBody.find(">tr.jtable-data-row");a._$selectAllCheckbox.is(":checked")?a._selectRows(b):a._deselectRows(b);a._onSelectionChanged()}});return b},_storeSelectionList:function(){var a=this;a.options.selecting&&(a._selectedRecordIdsBeforeLoad=[],a._getSelectedRows().each(function(){a._selectedRecordIdsBeforeLoad.push(a._getKeyValueOfRecord(c(this).data("record")))}))},_restoreSelectionList:function(){if(this.options.selecting){for(var a=0,b=0;b<this._$tableRows.length;++b){var d= -this._getKeyValueOfRecord(this._$tableRows[b].data("record"));-1<c.inArray(d,this._selectedRecordIdsBeforeLoad)&&(this._selectRows(this._$tableRows[b]),++a)}0<this._selectedRecordIdsBeforeLoad.length&&this._selectedRecordIdsBeforeLoad.length!=a&&this._onSelectionChanged();this._selectedRecordIdsBeforeLoad=[];this._refreshSelectAllCheckboxState()}},_getSelectedRows:function(){return this._$tableBody.find(">tr.jtable-row-selected")},_makeRowSelectable:function(a){var b=this;b.options.selectOnRowClick&& -a.click(function(){b._invertRowSelection(a)});if(b.options.selectingCheckboxes){var d=c("<td></td>").addClass("jtable-selecting-column"),e=c('<input type="checkbox" />').appendTo(d);b.options.selectOnRowClick||e.click(function(){b._invertRowSelection(a)});a.append(d)}},_invertRowSelection:function(a){if(a.hasClass("jtable-row-selected"))this._deselectRows(a);else if(this._shiftKeyDown){var b=this._findRowIndex(a),c=this._findFirstSelectedRowIndexBeforeIndex(b)+1;0<c&&c<b?this._selectRows(this._$tableBody.find("tr").slice(c, -b+1)):(c=this._findFirstSelectedRowIndexAfterIndex(b)-1,c>b?this._selectRows(this._$tableBody.find("tr").slice(b,c+1)):this._selectRows(a))}else this._selectRows(a);this._onSelectionChanged()},_findFirstSelectedRowIndexBeforeIndex:function(a){for(a-=1;0<=a;--a)if(this._$tableRows[a].hasClass("jtable-row-selected"))return a;return-1},_findFirstSelectedRowIndexAfterIndex:function(a){for(a+=1;a<this._$tableRows.length;++a)if(this._$tableRows[a].hasClass("jtable-row-selected"))return a;return-1},_selectRows:function(a){this.options.multiselect|| -this._deselectRows(this._getSelectedRows());a.addClass("jtable-row-selected");this._jqueryuiThemeAddClass(a,"ui-state-highlight");this.options.selectingCheckboxes&&a.find(">td.jtable-selecting-column >input").prop("checked",!0);this._refreshSelectAllCheckboxState()},_deselectRows:function(a){a.removeClass("jtable-row-selected ui-state-highlight");this.options.selectingCheckboxes&&a.find(">td.jtable-selecting-column >input").prop("checked",!1);this._refreshSelectAllCheckboxState()},_refreshSelectAllCheckboxState:function(){if(this.options.selectingCheckboxes&& -this.options.multiselect){var a=this._$tableRows.length,b=this._getSelectedRows().length;0==b?(this._$selectAllCheckbox.prop("indeterminate",!1),this._$selectAllCheckbox.attr("checked",!1)):b==a?(this._$selectAllCheckbox.prop("indeterminate",!1),this._$selectAllCheckbox.attr("checked",!0)):(this._$selectAllCheckbox.attr("checked",!1),this._$selectAllCheckbox.prop("indeterminate",!0))}},_onSelectionChanged:function(){this._trigger("selectionChanged",null,{})}})})(jQuery); -(function(c){var g=c.hik.jtable.prototype.load,a=c.hik.jtable.prototype._create,b=c.hik.jtable.prototype._setOption,d=c.hik.jtable.prototype._createRecordLoadUrl,f=c.hik.jtable.prototype._createJtParamsForLoading,e=c.hik.jtable.prototype._addRowToTable,h=c.hik.jtable.prototype._addRow,k=c.hik.jtable.prototype._removeRowsFromTable,l=c.hik.jtable.prototype._onRecordsLoaded;c.extend(!0,c.hik.jtable.prototype,{options:{paging:!1,pageList:"normal",pageSize:10,pageSizes:[10,25,50,100,250,500],pageSizeChangeArea:!0, -gotoPageArea:"combobox",messages:{pagingInfo:"Showing {0}-{1} of {2}",pageSizeChangeLabel:"Row count",gotoPageLabel:"Go to page"}},_$bottomPanel:null,_$pagingListArea:null,_$pageSizeChangeArea:null,_$pageInfoSpan:null,_$gotoPageArea:null,_$gotoPageInput:null,_totalRecordCount:0,_currentPageNo:1,_create:function(){a.apply(this,arguments);this.options.paging&&(this._loadPagingSettings(),this._createBottomPanel(),this._createPageListArea(),this._createGotoPageInput(),this._createPageSizeSelection())}, -_loadPagingSettings:function(){if(this.options.saveUserPreferences){var a=this._getCookie("page-size");a&&(this.options.pageSize=this._normalizeNumber(a,1,1E6,this.options.pageSize))}},_createBottomPanel:function(){this._$bottomPanel=c("<div />").addClass("jtable-bottom-panel").insertAfter(this._$table);this._jqueryuiThemeAddClass(this._$bottomPanel,"ui-state-default");c("<div />").addClass("jtable-left-area").appendTo(this._$bottomPanel);c("<div />").addClass("jtable-right-area").appendTo(this._$bottomPanel)}, -_createPageListArea:function(){this._$pagingListArea=c("<span></span>").addClass("jtable-page-list").appendTo(this._$bottomPanel.find(".jtable-left-area"));this._$pageInfoSpan=c("<span></span>").addClass("jtable-page-info").appendTo(this._$bottomPanel.find(".jtable-right-area"))},_createPageSizeSelection:function(){var a=this;if(a.options.pageSizeChangeArea){0>a._findIndexInArray(a.options.pageSize,a.options.pageSizes)&&(a.options.pageSizes.push(parseInt(a.options.pageSize)),a.options.pageSizes.sort(function(a, -b){return a-b}));a._$pageSizeChangeArea=c("<span></span>").addClass("jtable-page-size-change").appendTo(a._$bottomPanel.find(".jtable-left-area"));a._$pageSizeChangeArea.append("<span>"+a.options.messages.pageSizeChangeLabel+": </span>");for(var b=c("<select></select>").appendTo(a._$pageSizeChangeArea),d=0;d<a.options.pageSizes.length;d++)b.append('<option value="'+a.options.pageSizes[d]+'">'+a.options.pageSizes[d]+"</option>");b.val(a.options.pageSize);b.change(function(){a._changePageSize(parseInt(c(this).val()))})}}, -_createGotoPageInput:function(){var a=this;a.options.gotoPageArea&&"none"!=a.options.gotoPageArea&&(this._$gotoPageArea=c("<span></span>").addClass("jtable-goto-page").appendTo(a._$bottomPanel.find(".jtable-left-area")),this._$gotoPageArea.append("<span>"+a.options.messages.gotoPageLabel+": </span>"),"combobox"==a.options.gotoPageArea?(a._$gotoPageInput=c("<select></select>").appendTo(this._$gotoPageArea).data("pageCount",1).change(function(){a._changePage(parseInt(c(this).val()))}),a._$gotoPageInput.append('<option value="1">1</option>')): -a._$gotoPageInput=c('<input type="text" maxlength="10" value="'+a._currentPageNo+'" />').appendTo(this._$gotoPageArea).keypress(function(b){13==b.which?(b.preventDefault(),a._changePage(parseInt(a._$gotoPageInput.val()))):43==b.which?(b.preventDefault(),a._changePage(parseInt(a._$gotoPageInput.val())+1)):45==b.which?(b.preventDefault(),a._changePage(parseInt(a._$gotoPageInput.val())-1)):47<b.keyCode&&58>b.keyCode&&!1==b.shiftKey&&!1==b.altKey||8==b.keyCode||9==b.keyCode||b.preventDefault()}))},_refreshGotoPageInput:function(){if(this.options.gotoPageArea&& -"none"!=this.options.gotoPageArea){0>=this._totalRecordCount?this._$gotoPageArea.hide():this._$gotoPageArea.show();if("combobox"==this.options.gotoPageArea){var a=this._$gotoPageInput.data("pageCount"),b=this._calculatePageCount();if(a!=b){this._$gotoPageInput.empty();a=1;1E4<b?a=100:5E3<b?a=10:2E3<b?a=5:1E3<b&&(a=2);for(var c=a;c<=b;c+=a)this._$gotoPageInput.append('<option value="'+c+'">'+c+"</option>");this._$gotoPageInput.data("pageCount",b)}}this._$gotoPageInput.val(this._currentPageNo)}},load:function(){this._currentPageNo= -1;g.apply(this,arguments)},_setOption:function(a,c){b.apply(this,arguments);"pageSize"==a&&this._changePageSize(parseInt(c))},_changePageSize:function(a){if(a!=this.options.pageSize){this.options.pageSize=a;var b=this._calculatePageCount();this._currentPageNo>b&&(this._currentPageNo=b);0>=this._currentPageNo&&(this._currentPageNo=1);b=this._$bottomPanel.find(".jtable-page-size-change select");0<b.length&&parseInt(b.val())!=a&&0<b.find("option[value="+a+"]").length&&b.val(a);this._savePagingSettings(); -this._reloadTable()}},_savePagingSettings:function(){this.options.saveUserPreferences&&this._setCookie("page-size",this.options.pageSize)},_createRecordLoadUrl:function(){var a=d.apply(this,arguments);return a=this._addPagingInfoToUrl(a,this._currentPageNo)},_createJtParamsForLoading:function(){var a=f.apply(this,arguments);this.options.paging&&(a.jtStartIndex=(this._currentPageNo-1)*this.options.pageSize,a.jtPageSize=this.options.pageSize);return a},_addRowToTable:function(a,b,c){c&&this.options.paging? -this._reloadTable():e.apply(this,arguments)},_addRow:function(a,b){b&&b.isNewRow&&this.options.paging?this._reloadTable():h.apply(this,arguments)},_removeRowsFromTable:function(a,b){k.apply(this,arguments);this.options.paging&&(0>=this._$tableRows.length&&1<this._currentPageNo&&--this._currentPageNo,this._reloadTable())},_onRecordsLoaded:function(a){this.options.paging&&(this._totalRecordCount=a.TotalRecordCount,this._createPagingList(),this._createPagingInfo(),this._refreshGotoPageInput());l.apply(this, -arguments)},_addPagingInfoToUrl:function(a,b){if(!this.options.paging)return a;var c=(b-1)*this.options.pageSize,d=this.options.pageSize;return a+(0>a.indexOf("?")?"?":"&")+"jtStartIndex="+c+"&jtPageSize="+d},_createPagingList:function(){if(!(0>=this.options.pageSize||(this._$pagingListArea.empty(),0>=this._totalRecordCount))){var a=this._calculatePageCount();this._createFirstAndPreviousPageButtons();"normal"==this.options.pageList&&this._createPageNumberButtons(this._calculatePageNumbers(a));this._createLastAndNextPageButtons(a); -this._bindClickEventsToPageNumberButtons()}},_createFirstAndPreviousPageButtons:function(){var a=c("<span></span>").addClass("jtable-page-number-first").html("<<").data("pageNumber",1).appendTo(this._$pagingListArea),b=c("<span></span>").addClass("jtable-page-number-previous").html("<").data("pageNumber",this._currentPageNo-1).appendTo(this._$pagingListArea);this._jqueryuiThemeAddClass(a,"ui-button ui-state-default","ui-state-hover");this._jqueryuiThemeAddClass(b,"ui-button ui-state-default", -"ui-state-hover");1>=this._currentPageNo&&(a.addClass("jtable-page-number-disabled"),b.addClass("jtable-page-number-disabled"),this._jqueryuiThemeAddClass(a,"ui-state-disabled"),this._jqueryuiThemeAddClass(b,"ui-state-disabled"))},_createLastAndNextPageButtons:function(a){var b=c("<span></span>").addClass("jtable-page-number-next").html(">").data("pageNumber",this._currentPageNo+1).appendTo(this._$pagingListArea),d=c("<span></span>").addClass("jtable-page-number-last").html(">>").data("pageNumber", -a).appendTo(this._$pagingListArea);this._jqueryuiThemeAddClass(b,"ui-button ui-state-default","ui-state-hover");this._jqueryuiThemeAddClass(d,"ui-button ui-state-default","ui-state-hover");this._currentPageNo>=a&&(b.addClass("jtable-page-number-disabled"),d.addClass("jtable-page-number-disabled"),this._jqueryuiThemeAddClass(b,"ui-state-disabled"),this._jqueryuiThemeAddClass(d,"ui-state-disabled"))},_createPageNumberButtons:function(a){for(var b=0,d=0;d<a.length;d++)1<a[d]-b&&c("<span></span>").addClass("jtable-page-number-space").html("...").appendTo(this._$pagingListArea), -this._createPageNumberButton(a[d]),b=a[d]},_createPageNumberButton:function(a){var b=c("<span></span>").addClass("jtable-page-number").html(a).data("pageNumber",a).appendTo(this._$pagingListArea);this._jqueryuiThemeAddClass(b,"ui-button ui-state-default","ui-state-hover");this._currentPageNo==a&&(b.addClass("jtable-page-number-active jtable-page-number-disabled"),this._jqueryuiThemeAddClass(b,"ui-state-active"))},_calculatePageCount:function(){var a=Math.floor(this._totalRecordCount/this.options.pageSize); -0!=this._totalRecordCount%this.options.pageSize&&++a;return a},_calculatePageNumbers:function(a){if(4>=a){for(var b=[],c=1;c<=a;++c)b.push(c);return b}b=[1,2,a-1,a];c=this._normalizeNumber(this._currentPageNo-1,1,a,1);a=this._normalizeNumber(this._currentPageNo+1,1,a,1);this._insertToArrayIfDoesNotExists(b,c);this._insertToArrayIfDoesNotExists(b,this._currentPageNo);this._insertToArrayIfDoesNotExists(b,a);b.sort(function(a,b){return a-b});return b},_createPagingInfo:function(){if(0>=this._totalRecordCount)this._$pageInfoSpan.empty(); -else{var a=(this._currentPageNo-1)*this.options.pageSize+1,b=this._currentPageNo*this.options.pageSize,b=this._normalizeNumber(b,a,this._totalRecordCount,0);b>=a&&(a=this._formatString(this.options.messages.pagingInfo,a,b,this._totalRecordCount),this._$pageInfoSpan.html(a))}},_bindClickEventsToPageNumberButtons:function(){var a=this;a._$pagingListArea.find(".jtable-page-number,.jtable-page-number-previous,.jtable-page-number-next,.jtable-page-number-first,.jtable-page-number-last").not(".jtable-page-number-disabled").click(function(b){b.preventDefault(); -a._changePage(c(this).data("pageNumber"))})},_changePage:function(a){a=this._normalizeNumber(a,1,this._calculatePageCount(),1);a==this._currentPageNo?this._refreshGotoPageInput():(this._currentPageNo=a,this._reloadTable())}})})(jQuery); -(function(c){var g=c.hik.jtable.prototype._initializeFields,a=c.hik.jtable.prototype._normalizeFieldOptions,b=c.hik.jtable.prototype._createHeaderCellForField,d=c.hik.jtable.prototype._createRecordLoadUrl,f=c.hik.jtable.prototype._createJtParamsForLoading;c.extend(!0,c.hik.jtable.prototype,{options:{sorting:!1,multiSorting:!1,defaultSorting:""},_lastSorting:null,_initializeFields:function(){g.apply(this,arguments);this._lastSorting=[];this.options.sorting&&this._buildDefaultSortingArray()},_normalizeFieldOptions:function(b, -c){a.apply(this,arguments);c.sorting=!1!=c.sorting},_createHeaderCellForField:function(a,c){var d=b.apply(this,arguments);this.options.sorting&&c.sorting&&this._makeColumnSortable(d,a);return d},_createRecordLoadUrl:function(){var a=d.apply(this,arguments);return a=this._addSortingInfoToUrl(a)},_buildDefaultSortingArray:function(){var a=this;c.each(a.options.defaultSorting.split(","),function(b,d){c.each(a.options.fields,function(b,c){if(c.sorting){var f=d.indexOf(b);-1<f&&(-1<d.toUpperCase().indexOf(" DESC", -f)?a._lastSorting.push({fieldName:b,sortOrder:"DESC"}):a._lastSorting.push({fieldName:b,sortOrder:"ASC"}))}})})},_makeColumnSortable:function(a,b){var d=this;a.addClass("jtable-column-header-sortable").click(function(b){b.preventDefault();d.options.multiSorting&&b.ctrlKey||(d._lastSorting=[]);d._sortTableByColumn(a)});c.each(this._lastSorting,function(c,d){d.fieldName==b&&("DESC"==d.sortOrder?a.addClass("jtable-column-header-sorted-desc"):a.addClass("jtable-column-header-sorted-asc"))})},_sortTableByColumn:function(a){0== -this._lastSorting.length&&a.siblings().removeClass("jtable-column-header-sorted-asc jtable-column-header-sorted-desc");for(var b=0;b<this._lastSorting.length;b++)this._lastSorting[b].fieldName==a.data("fieldName")&&this._lastSorting.splice(b--,1);a.hasClass("jtable-column-header-sorted-asc")?(a.removeClass("jtable-column-header-sorted-asc").addClass("jtable-column-header-sorted-desc"),this._lastSorting.push({fieldName:a.data("fieldName"),sortOrder:"DESC"})):(a.removeClass("jtable-column-header-sorted-desc").addClass("jtable-column-header-sorted-asc"), -this._lastSorting.push({fieldName:a.data("fieldName"),sortOrder:"ASC"}));this._reloadTable()},_addSortingInfoToUrl:function(a){if(!this.options.sorting||0==this._lastSorting.length)return a;var b=[];c.each(this._lastSorting,function(a,c){b.push(c.fieldName+" "+c.sortOrder)});return a+(0>a.indexOf("?")?"?":"&")+"jtSorting="+b.join(",")},_createJtParamsForLoading:function(){var a=f.apply(this,arguments);if(this.options.sorting&&this._lastSorting.length){var b=[];c.each(this._lastSorting,function(a, -c){b.push(c.fieldName+" "+c.sortOrder)});a.jtSorting=b.join(",")}return a}})})(jQuery); -(function(c){var g=c.hik.jtable.prototype._create,a=c.hik.jtable.prototype._normalizeFieldOptions,b=c.hik.jtable.prototype._createHeaderCellForField,d=c.hik.jtable.prototype._createCellForRecordField;c.extend(!0,c.hik.jtable.prototype,{options:{tableId:void 0,columnResizable:!0,columnSelectable:!0},_$columnSelectionDiv:null,_$columnResizeBar:null,_cookieKeyPrefix:null,_currentResizeArgs:null,_create:function(){g.apply(this,arguments);this._createColumnResizeBar();this._createColumnSelection();this.options.saveUserPreferences&& -this._loadColumnSettings();this._normalizeColumnWidths()},_normalizeFieldOptions:function(b,c){a.apply(this,arguments);this.options.columnResizable&&(c.columnResizable=!1!=c.columnResizable);c.visibility||(c.visibility="visible")},_createHeaderCellForField:function(a,c){var d=b.apply(this,arguments);this.options.columnResizable&&c.columnResizable&&a!=this._columnList[this._columnList.length-1]&&this._makeColumnResizable(d);"hidden"==c.visibility&&d.hide();return d},_createCellForRecordField:function(a, -b){var c=d.apply(this,arguments);"hidden"==this.options.fields[b].visibility&&c.hide();return c},changeColumnVisibility:function(a,b){this._changeColumnVisibilityInternal(a,b);this._normalizeColumnWidths();this.options.saveUserPreferences&&this._saveColumnSettings()},_changeColumnVisibilityInternal:function(a,b){var c=this._columnList.indexOf(a);if(0>c)this._logWarn('Column "'+a+'" does not exist in fields!');else if(0>["visible","hidden","fixed"].indexOf(b))this._logWarn('Visibility value is not valid: "'+ -b+'"! Options are: visible, hidden, fixed.');else{var d=this.options.fields[a];d.visibility!=b&&(c=this._firstDataColumnOffset+c+1,"hidden"!=d.visibility&&"hidden"==b?this._$table.find(">thead >tr >th:nth-child("+c+"),>tbody >tr >td:nth-child("+c+")").hide():"hidden"==d.visibility&&"hidden"!=b&&this._$table.find(">thead >tr >th:nth-child("+c+"),>tbody >tr >td:nth-child("+c+")").show().css("display","table-cell"),d.visibility=b)}},_createColumnSelection:function(){var a=this;this._$columnSelectionDiv= -c("<div />").addClass("jtable-column-selection-container").appendTo(a._$mainContainer);this._$table.children("thead").bind("contextmenu",function(b){if(a.options.columnSelectable){b.preventDefault();c("<div />").addClass("jtable-contextmenu-overlay").click(function(){c(this).remove();a._$columnSelectionDiv.hide()}).bind("contextmenu",function(){return!1}).appendTo(document.body);a._fillColumnSelection();var d=a._$mainContainer.offset(),g=b.pageY-d.top;b=b.pageX-d.left;d=a._$mainContainer.width(); -100<d&&b>d-100&&(b=d-100);a._$columnSelectionDiv.css({left:b,top:g,"min-width":"100px"}).show()}})},_fillColumnSelection:function(){for(var a=this,b=c("<ul></ul>").addClass("jtable-column-select-list"),d=0;d<this._columnList.length;d++){var g=this._columnList[d],l=this.options.fields[g],m=c("<li></li>").appendTo(b),m=c('<label for="'+g+'"></label>').append(c("<span>"+(l.title||g)+"</span>")).appendTo(m),g=c('<input type="checkbox" name="'+g+'">').prependTo(m).click(function(){var b=c(this),d=b.attr("name"); -"fixed"!=a.options.fields[d].visibility&&a.changeColumnVisibility(d,b.is(":checked")?"visible":"hidden")});"hidden"!=l.visibility&&g.attr("checked","checked");"fixed"==l.visibility&&g.attr("disabled","disabled")}this._$columnSelectionDiv.html(b)},_createColumnResizeBar:function(){this._$columnResizeBar=c("<div />").addClass("jtable-column-resize-bar").appendTo(this._$mainContainer).hide()},_makeColumnResizable:function(a){var b=this;c("<div />").addClass("jtable-column-resize-handler").appendTo(a.find(".jtable-column-header-container")).mousedown(function(d){d.preventDefault(); -d.stopPropagation();var g=b._$mainContainer.offset(),l=a.nextAll("th.jtable-column-header:visible:first");if(l.length){b._currentResizeArgs={currentColumnStartWidth:a.outerWidth(),minWidth:10,maxWidth:a.outerWidth()+l.outerWidth()-10,mouseStartX:d.pageX,minResizeX:function(){return this.mouseStartX-(this.currentColumnStartWidth-this.minWidth)},maxResizeX:function(){return this.mouseStartX+(this.maxWidth-this.currentColumnStartWidth)}};var m=function(a){b._currentResizeArgs&&(a=b._normalizeNumber(a.pageX, -b._currentResizeArgs.minResizeX(),b._currentResizeArgs.maxResizeX()),b._$columnResizeBar.css("left",a-g.left+"px"))},n=function(d){if(b._currentResizeArgs){c(document).unbind("mousemove",m);c(document).unbind("mouseup",n);b._$columnResizeBar.hide();d=b._normalizeNumber(b._currentResizeArgs.currentColumnStartWidth+(d.pageX-b._currentResizeArgs.mouseStartX),b._currentResizeArgs.minWidth,b._currentResizeArgs.maxWidth);var g=l.outerWidth()+(b._currentResizeArgs.currentColumnStartWidth-d),h=a.data("width-in-percent")/ -b._currentResizeArgs.currentColumnStartWidth;a.data("width-in-percent",d*h);l.data("width-in-percent",g*h);a.css("width",a.data("width-in-percent")+"%");l.css("width",l.data("width-in-percent")+"%");b._normalizeColumnWidths();b._currentResizeArgs=null;b.options.saveUserPreferences&&b._saveColumnSettings()}};b._$columnResizeBar.show().css({top:a.offset().top-g.top+"px",left:d.pageX-g.left+"px",height:b._$table.outerHeight()+"px"});c(document).bind("mousemove",m);c(document).bind("mouseup",n)}})},_normalizeColumnWidths:function(){var a= -this._$table.find(">thead th.jtable-command-column-header").data("width-in-percent",1).css("width","1%"),b=this._$table.find(">thead th.jtable-column-header"),d=0;b.each(function(){var a=c(this);a.is(":visible")&&(d+=a.outerWidth())});var g={},l=100-a.length;b.each(function(){var a=c(this);if(a.is(":visible")){var b=a.data("fieldName"),a=a.outerWidth()*l/d;g[b]=a}});b.each(function(){var a=c(this);if(a.is(":visible")){var b=a.data("fieldName");a.data("width-in-percent",g[b]).css("width",g[b]+"%")}})}, -_saveColumnSettings:function(){var a=this,b="";this._$table.find(">thead >tr >th.jtable-column-header").each(function(){var d=c(this),g=d.data("fieldName"),d=d.data("width-in-percent");b=b+(g+"="+a.options.fields[g].visibility+";"+d)+"|"});this._setCookie("column-settings",b.substr(0,b.length-1))},_loadColumnSettings:function(){var a=this,b=this._getCookie("column-settings");if(b){var d={};c.each(b.split("|"),function(a,b){var c=b.split("="),e=c[0],c=c[1].split(";");d[e]={columnVisibility:c[0],columnWidth:c[1]}}); -this._$table.find(">thead >tr >th.jtable-column-header").each(function(){var b=c(this),e=b.data("fieldName"),g=a.options.fields[e];d[e]&&("fixed"!=g.visibility&&a._changeColumnVisibilityInternal(e,d[e].columnVisibility),b.data("width-in-percent",d[e].columnWidth).css("width",d[e].columnWidth+"%"))})}}})})(jQuery); -(function(c){var g=c.hik.jtable.prototype._removeRowsFromTable;c.extend(!0,c.hik.jtable.prototype,{options:{openChildAsAccordion:!1},openChildTable:function(a,b,d){var f=this;void 0==b.jqueryuiTheme&&(b.jqueryuiTheme=f.options.jqueryuiTheme);b.showCloseButton=!1!=b.showCloseButton;b.showCloseButton&&!b.closeRequested&&(b.closeRequested=function(){f.closeChildTable(a)});f.options.openChildAsAccordion&&a.siblings(".jtable-data-row").each(function(){f.closeChildTable(c(this))});f.closeChildTable(a,function(){var e= -f.getChildRow(a).children("td").empty(),g=c("<div />").addClass("jtable-child-table-container").appendTo(e);e.data("childTable",g);g.jtable(b);f.openChildRow(a);g.hide().slideDown("fast",function(){d&&d({childTable:g})})})},closeChildTable:function(a,b){var c=this,f=this.getChildRow(a).children("td"),e=f.data("childTable");e?(f.data("childTable",null),e.slideUp("fast",function(){e.jtable("destroy");e.remove();c.closeChildRow(a);b&&b()})):b&&b()},isChildRowOpen:function(a){return this.getChildRow(a).is(":visible")}, -getChildRow:function(a){return a.data("childRow")||this._createChildRow(a)},openChildRow:function(a){a=this.getChildRow(a);a.is(":visible")||a.show();return a},closeChildRow:function(a){a=this.getChildRow(a);a.is(":visible")&&a.hide()},_removeRowsFromTable:function(a,b){"deleted"==b&&a.each(function(){var a=c(this).data("childRow");a&&a.remove()});g.apply(this,arguments)},_createChildRow:function(a){var b=this._$table.find("thead th").length,b=c("<tr></tr>").addClass("jtable-child-row").append('<td colspan="'+ -b+'"></td>');a.after(b);a.data("childRow",b);b.hide();return b}})})(jQuery);
\ No newline at end of file +!function(a){var b;a(window).on("beforeunload",function(){b=!0}),a(window).on("unload",function(){b=!1}),a.widget("hik.jtable",{options:{actions:{},fields:{},animationsEnabled:!0,defaultDateFormat:"yy-mm-dd",dialogShowEffect:"fade",dialogHideEffect:"fade",showCloseButton:!1,loadingAnimationDelay:500,saveUserPreferences:!0,jqueryuiTheme:!1,unAuthorizedRequestRedirectUrl:null,ajaxSettings:{type:"POST",dataType:"json"},toolbar:{hoverAnimation:!0,hoverAnimationDuration:60,hoverAnimationEasing:void 0,items:[]},closeRequested:function(a,b){},formCreated:function(a,b){},formSubmitting:function(a,b){},formClosed:function(a,b){},loadingRecords:function(a,b){},recordsLoaded:function(a,b){},rowInserted:function(a,b){},rowsRemoved:function(a,b){},messages:{serverCommunicationError:"An error occured while communicating to the server.",loadingMessage:"Loading records...",noDataAvailable:"No data available!",areYouSure:"Are you sure?",save:"Save",saving:"Saving",cancel:"Cancel",error:"Error",close:"Close",cannotLoadOptionsFor:"Can not load options for field {0}"}},_$mainContainer:null,_$titleDiv:null,_$toolbarDiv:null,_$table:null,_$tableBody:null,_$tableRows:null,_$busyDiv:null,_$busyMessageDiv:null,_$errorDialogDiv:null,_columnList:null,_fieldList:null,_keyField:null,_firstDataColumnOffset:0,_lastPostData:null,_cache:null,_extraFieldTypes:[],_create:function(){this._normalizeFieldsOptions(),this._initializeFields(),this._createFieldAndColumnList(),this._createMainContainer(),this._createTableTitle(),this._createToolBar(),this._createTable(),this._createBusyPanel(),this._createErrorDialogDiv(),this._addNoDataRow(),this._cookieKeyPrefix=this._generateCookieKeyPrefix()},_normalizeFieldsOptions:function(){var b=this;a.each(b.options.fields,function(a,c){b._normalizeFieldOptions(a,c)})},_normalizeFieldOptions:function(b,c){if(void 0==c.listClass&&(c.listClass=""),void 0==c.inputClass&&(c.inputClass=""),void 0==c.placeholder&&(c.placeholder=""),c.dependsOn&&"string"===a.type(c.dependsOn)){var d=c.dependsOn.split(",");c.dependsOn=[];for(var e=0;e<d.length;e++)c.dependsOn.push(a.trim(d[e]))}},_initializeFields:function(){this._lastPostData={},this._$tableRows=[],this._columnList=[],this._fieldList=[],this._cache=[],this._extraFieldTypes=[]},_createFieldAndColumnList:function(){var b=this;a.each(b.options.fields,function(a,c){b._fieldList.push(a),1==c.key&&(b._keyField=a),0!=c.list&&"hidden"!=c.type&&b._columnList.push(a)})},_createMainContainer:function(){this._$mainContainer=a("<div />").addClass("jtable-main-container").appendTo(this.element),this._jqueryuiThemeAddClass(this._$mainContainer,"ui-widget")},_createTableTitle:function(){var b=this;if(b.options.title){var c=a("<div />").addClass("jtable-title").appendTo(b._$mainContainer);if(b._jqueryuiThemeAddClass(c,"ui-widget-header"),a("<div />").addClass("jtable-title-text").appendTo(c).append(b.options.title),b.options.showCloseButton){var d=a("<span />").html(b.options.messages.close);a("<button></button>").addClass("jtable-command-button jtable-close-button").attr("title",b.options.messages.close).append(d).appendTo(c).click(function(a){a.preventDefault(),a.stopPropagation(),b._onCloseRequested()})}b._$titleDiv=c}},_createTable:function(){this._$table=a("<table></table>").addClass("jtable").appendTo(this._$mainContainer),this.options.tableId&&this._$table.attr("id",this.options.tableId),this._jqueryuiThemeAddClass(this._$table,"ui-widget-content"),this._createTableHead(),this._createTableBody()},_createTableHead:function(){var b=a("<thead></thead>").appendTo(this._$table);this._addRowToTableHead(b)},_addRowToTableHead:function(b){var c=a("<tr></tr>").appendTo(b);this._addColumnsToHeaderRow(c)},_addColumnsToHeaderRow:function(a){for(var b=0;b<this._columnList.length;b++){var c=this._columnList[b],d=this._createHeaderCellForField(c,this.options.fields[c]);d.appendTo(a)}},_createHeaderCellForField:function(b,c){c.width=c.width||"10%";var d=a("<span />").addClass("jtable-column-header-text").html(c.title),e=a("<div />").addClass("jtable-column-header-container").append(d),f=a("<th></th>").addClass("jtable-column-header").addClass(c.listClass).css("width",c.width).data("fieldName",b).append(e);return this._jqueryuiThemeAddClass(f,"ui-state-default"),f},_createEmptyCommandHeader:function(){var b=a("<th></th>").addClass("jtable-command-column-header").css("width","1%");return this._jqueryuiThemeAddClass(b,"ui-state-default"),b},_createTableBody:function(){this._$tableBody=a("<tbody></tbody>").appendTo(this._$table)},_createBusyPanel:function(){this._$busyMessageDiv=a("<div />").addClass("jtable-busy-message").prependTo(this._$mainContainer),this._$busyDiv=a("<div />").addClass("jtable-busy-panel-background").prependTo(this._$mainContainer),this._jqueryuiThemeAddClass(this._$busyMessageDiv,"ui-widget-header"),this._hideBusy()},_createErrorDialogDiv:function(){var b=this;b._$errorDialogDiv=a("<div></div>").appendTo(b._$mainContainer),b._$errorDialogDiv.dialog({autoOpen:!1,show:b.options.dialogShowEffect,hide:b.options.dialogHideEffect,modal:!0,title:b.options.messages.error,buttons:[{text:b.options.messages.close,click:function(){b._$errorDialogDiv.dialog("close")}}]})},load:function(a,b){this._lastPostData=a,this._reloadTable(b)},reload:function(a){this._reloadTable(a)},getRowByKey:function(a){for(var b=0;b<this._$tableRows.length;b++)if(a==this._getKeyValueOfRecord(this._$tableRows[b].data("record")))return this._$tableRows[b];return null},destroy:function(){this.element.empty(),a.Widget.prototype.destroy.call(this)},_setOption:function(a,b){},_reloadTable:function(b){var c=this,d=function(a){return c._hideBusy(),"OK"!=a.Result?void c._showError(a.Message):(c._removeAllRows("reloading"),c._addRecordsToTable(a.Records),c._onRecordsLoaded(a),void(b&&b()))};if(c._showBusy(c.options.messages.loadingMessage,c.options.loadingAnimationDelay),c._onLoadingRecords(),a.isFunction(c.options.actions.listAction)){var e=c.options.actions.listAction(c._lastPostData,c._createJtParamsForLoading());c._isDeferredObject(e)?e.done(function(a){d(a)}).fail(function(){c._showError(c.options.messages.serverCommunicationError)}).always(function(){c._hideBusy()}):d(e)}else{var f=c._createRecordLoadUrl();c._ajax({url:f,data:c._lastPostData,success:function(a){d(a)},error:function(){c._hideBusy(),c._showError(c.options.messages.serverCommunicationError)}})}},_createRecordLoadUrl:function(){return this.options.actions.listAction},_createJtParamsForLoading:function(){return{}},_createRowFromRecord:function(b){var c=a("<tr></tr>").addClass("jtable-data-row").attr("data-record-key",this._getKeyValueOfRecord(b)).data("record",b);return this._addCellsToRowUsingRecord(c),c},_addCellsToRowUsingRecord:function(a){for(var b=a.data("record"),c=0;c<this._columnList.length;c++)this._createCellForRecordField(b,this._columnList[c]).appendTo(a)},_createCellForRecordField:function(b,c){return a("<td></td>").addClass(this.options.fields[c].listClass).append(this._getDisplayTextForRecordField(b,c))},_addRecordsToTable:function(b){var c=this;a.each(b,function(a,b){c._addRow(c._createRowFromRecord(b))}),c._refreshRowStyles()},_addRowToTable:function(a,b,c,d){var e={index:this._normalizeNumber(b,0,this._$tableRows.length,this._$tableRows.length)};1==c&&(e.isNewRow=!0),0==d&&(e.animationsEnabled=!1),this._addRow(a,e)},_addRow:function(b,c){c=a.extend({index:this._$tableRows.length,isNewRow:!1,animationsEnabled:!0},c),this._$tableRows.length<=0&&this._removeNoDataRow(),c.index=this._normalizeNumber(c.index,0,this._$tableRows.length,this._$tableRows.length),c.index==this._$tableRows.length?(this._$tableBody.append(b),this._$tableRows.push(b)):0==c.index?(this._$tableBody.prepend(b),this._$tableRows.unshift(b)):(this._$tableRows[c.index-1].after(b),this._$tableRows.splice(c.index,0,b)),this._onRowInserted(b,c.isNewRow),c.isNewRow&&(this._refreshRowStyles(),this.options.animationsEnabled&&c.animationsEnabled&&this._showNewRowAnimation(b))},_showNewRowAnimation:function(a){var b="jtable-row-created";this.options.jqueryuiTheme&&(b+=" ui-state-highlight"),a.addClass(b,"slow","",function(){a.removeClass(b,5e3)})},_removeRowsFromTable:function(b,c){var d=this;b.length<=0||(b.addClass("jtable-row-removed").remove(),b.each(function(){var b=d._findRowIndex(a(this));b>=0&&d._$tableRows.splice(b,1)}),d._onRowsRemoved(b,c),0==d._$tableRows.length&&d._addNoDataRow(),d._refreshRowStyles())},_findRowIndex:function(a){return this._findIndexInArray(a,this._$tableRows,function(a,b){return a.data("record")==b.data("record")})},_removeAllRows:function(a){if(!(this._$tableRows.length<=0)){var b=this._$tableBody.find("tr.jtable-data-row");this._$tableBody.empty(),this._$tableRows=[],this._onRowsRemoved(b,a),this._addNoDataRow()}},_addNoDataRow:function(){if(!(this._$tableBody.find(">tr.jtable-no-data-row").length>0)){var b=a("<tr></tr>").addClass("jtable-no-data-row").appendTo(this._$tableBody),c=this._$table.find("thead th").length;a("<td></td>").attr("colspan",c).html(this.options.messages.noDataAvailable).appendTo(b)}},_removeNoDataRow:function(){this._$tableBody.find(".jtable-no-data-row").remove()},_refreshRowStyles:function(){for(var a=0;a<this._$tableRows.length;a++)a%2==0?this._$tableRows[a].addClass("jtable-row-even"):this._$tableRows[a].removeClass("jtable-row-even")},_getDisplayTextForRecordField:function(a,b){var c=this.options.fields[b],d=a[b];if(c.display)return c.display({record:a});var e=this._findItemByProperty(this._extraFieldTypes,"type",c.type);if(e&&e.creator)return e.creator(a,c);if("date"==c.type)return this._getDisplayTextForDateRecordField(c,d);if("checkbox"==c.type)return this._getCheckBoxTextForFieldByValue(b,d);if(c.options){var f=this._getOptionsForField(b,{record:a,value:d,source:"list",dependedValues:this._createDependedValuesUsingRecord(a,c.dependsOn)});return this._findOptionByValue(f,d).DisplayText}return d},_createDependedValuesUsingRecord:function(a,b){if(!b)return{};for(var c={},d=0;d<b.length;d++)c[b[d]]=a[b[d]];return c},_findOptionByValue:function(a,b){return this._findItemByProperty(a,"Value",b)},_findItemByProperty:function(a,b,c){for(var d=0;d<a.length;d++)if(a[d][b]==c)return a[d];return{}},_getDisplayTextForDateRecordField:function(b,c){if(!c)return"";var d=b.displayFormat||this.options.defaultDateFormat,e=this._parseDate(c);return a.datepicker.formatDate(d,e)},_getOptionsForField:function(b,c){var d=this.options.fields[b],e=d.options;a.isFunction(e)&&(c=a.extend(!0,{_cacheCleared:!1,dependedValues:{},clearCache:function(){this._cacheCleared=!0}},c),e=e(c));var f;if("string"==typeof e){var g="options_"+b+"_"+e;if(c._cacheCleared||!this._cache[g])this._cache[g]=this._buildOptionsFromArray(this._downloadOptions(b,e)),this._sortFieldOptions(this._cache[g],d.optionsSorting);else if(void 0!=c.value){var h=this._findOptionByValue(this._cache[g],c.value);void 0==h.DisplayText&&(this._cache[g]=this._buildOptionsFromArray(this._downloadOptions(b,e)),this._sortFieldOptions(this._cache[g],d.optionsSorting))}f=this._cache[g]}else jQuery.isArray(e)?(f=this._buildOptionsFromArray(e),this._sortFieldOptions(f,d.optionsSorting)):(f=this._buildOptionsArrayFromObject(e),this._sortFieldOptions(f,d.optionsSorting));return f},_downloadOptions:function(a,b){var c=this,d=[];return c._ajax({url:b,async:!1,success:function(a){return"OK"!=a.Result?void c._showError(a.Message):void(d=a.Options)},error:function(){var b=c._formatString(c.options.messages.cannotLoadOptionsFor,a);c._showError(b)}}),d},_sortFieldOptions:function(b,c){if(b&&b.length&&c){var d;d=0==c.indexOf("value")?function(a){return a.Value}:function(a){return a.DisplayText};var e;e="string"==a.type(d(b[0]))?function(a,b){return d(a).localeCompare(d(b))}:function(a,b){return d(a)-d(b)},c.indexOf("desc")>0?b.sort(function(a,b){return e(b,a)}):b.sort(function(a,b){return e(a,b)})}},_buildOptionsArrayFromObject:function(b){var c=[];return a.each(b,function(a,b){c.push({Value:a,DisplayText:b})}),c},_buildOptionsFromArray:function(b){for(var c=[],d=0;d<b.length;d++)a.isPlainObject(b[d])?c.push(b[d]):c.push({Value:b[d],DisplayText:b[d]});return c},_parseDate:function(a){return a.indexOf("Date")>=0?new Date(parseInt(a.substr(6),10)):10==a.length?new Date(parseInt(a.substr(0,4),10),parseInt(a.substr(5,2),10)-1,parseInt(a.substr(8,2),10)):19==a.length?new Date(parseInt(a.substr(0,4),10),parseInt(a.substr(5,2),10)-1,parseInt(a.substr(8,2),10),parseInt(a.substr(11,2),10),parseInt(a.substr(14,2),10),parseInt(a.substr(17,2),10)):(this._logWarn("Given date is not properly formatted: "+a),"format error!")},_createToolBar:function(){this._$toolbarDiv=a("<div />").addClass("jtable-toolbar").appendTo(this._$titleDiv);for(var b=0;b<this.options.toolbar.items.length;b++)this._addToolBarItem(this.options.toolbar.items[b])},_addToolBarItem:function(b){if(void 0==b||void 0==b.text&&void 0==b.icon)return this._logWarn("Can not add tool bar item since it is not valid!"),this._logWarn(b),null;var c=a("<span></span>").addClass("jtable-toolbar-item").appendTo(this._$toolbarDiv);if(this._jqueryuiThemeAddClass(c,"ui-widget ui-state-default ui-corner-all","ui-state-hover"),b.cssClass&&c.addClass(b.cssClass),b.tooltip&&c.attr("title",b.tooltip),b.icon){var d=a('<span class="jtable-toolbar-item-icon"></span>').appendTo(c);b.icon===!0||a.type("string"===b.icon)&&d.css("background",'url("'+b.icon+'")')}b.text&&a('<span class=""></span>').html(b.text).addClass("jtable-toolbar-item-text").appendTo(c),b.click&&c.click(function(){b.click()});var e=void 0,f=void 0;return this.options.toolbar.hoverAnimation&&(e=this.options.toolbar.hoverAnimationDuration,f=this.options.toolbar.hoverAnimationEasing),c.hover(function(){c.addClass("jtable-toolbar-item-hover",e,f)},function(){c.removeClass("jtable-toolbar-item-hover",e,f)}),c},_showError:function(a){this._$errorDialogDiv.html(a).dialog("open")},_setBusyTimer:null,_showBusy:function(a,b){var c=this;c._$busyDiv.width(c._$mainContainer.width()).height(c._$mainContainer.height()).addClass("jtable-busy-panel-background-invisible").show();var d=function(){c._$busyDiv.removeClass("jtable-busy-panel-background-invisible"),c._$busyMessageDiv.html(a).show()};if(b){if(c._setBusyTimer)return;c._setBusyTimer=setTimeout(d,b)}else d()},_hideBusy:function(){clearTimeout(this._setBusyTimer),this._setBusyTimer=null,this._$busyDiv.hide(),this._$busyMessageDiv.html("").hide()},_isBusy:function(){return this._$busyMessageDiv.is(":visible")},_jqueryuiThemeAddClass:function(a,b,c){this.options.jqueryuiTheme&&(a.addClass(b),c&&a.hover(function(){a.addClass(c)},function(){a.removeClass(c)}))},_performAjaxCall:function(a,b,c,d,e){this._ajax({url:a,data:b,async:c,success:d,error:e})},_unAuthorizedRequestHandler:function(){this.options.unAuthorizedRequestRedirectUrl?location.href=this.options.unAuthorizedRequestRedirectUrl:location.reload(!0)},_ajax:function(c){var d=this,e={statusCode:{401:function(){d._unAuthorizedRequestHandler()}}};e=a.extend(e,this.options.ajaxSettings,c),e.success=function(a){a&&1==a.UnAuthorizedRequest&&d._unAuthorizedRequestHandler(),c.success&&c.success(a)},e.error=function(a,d,e){return b?void a.abort():void(c.error&&c.error(arguments))},e.complete=function(){c.complete&&c.complete()},a.ajax(e)},_getKeyValueOfRecord:function(a){return a[this._keyField]},_setCookie:function(a,b){a=this._cookieKeyPrefix+a;var c=new Date;c.setDate(c.getDate()+30),document.cookie=encodeURIComponent(a)+"="+encodeURIComponent(b)+"; expires="+c.toUTCString()},_getCookie:function(a){a=this._cookieKeyPrefix+a;for(var b=document.cookie.split("; "),c=0;c<b.length;c++)if(b[c]){var d=b[c].split("=");if(2==d.length&&decodeURIComponent(d[0])===a)return decodeURIComponent(d[1]||"")}return null},_generateCookieKeyPrefix:function(){var a=function(a){var b=0;if(0==a.length)return b;for(var c=0;c<a.length;c++){var d=a.charCodeAt(c);b=(b<<5)-b+d,b&=b}return b},b="";return this.options.tableId&&(b=b+this.options.tableId+"#"),b=b+this._columnList.join("$")+"#c"+this._$table.find("thead th").length,"jtable#"+a(b)},_onLoadingRecords:function(){this._trigger("loadingRecords",null,{})},_onRecordsLoaded:function(a){this._trigger("recordsLoaded",null,{records:a.Records,serverResponse:a})},_onRowInserted:function(a,b){this._trigger("rowInserted",null,{row:a,record:a.data("record"),isNewRow:b})},_onRowsRemoved:function(a,b){this._trigger("rowsRemoved",null,{rows:a,reason:b})},_onCloseRequested:function(){this._trigger("closeRequested",null,{})}})}(jQuery),function(a){a.extend(!0,a.hik.jtable.prototype,{_getPropertyOfObject:function(a,b){if(b.indexOf(".")<0)return a[b];var c=b.substring(0,b.indexOf(".")),d=b.substring(b.indexOf(".")+1);return this._getPropertyOfObject(a[c],d)},_setPropertyOfObject:function(a,b,c){if(b.indexOf(".")<0)a[b]=c;else{var d=b.substring(0,b.indexOf(".")),e=b.substring(b.indexOf(".")+1);this._setPropertyOfObject(a[d],e,c)}},_insertToArrayIfDoesNotExists:function(b,c){a.inArray(c,b)<0&&b.push(c)},_findIndexInArray:function(a,b,c){c||(c=function(a,b){return a==b});for(var d=0;d<b.length;d++)if(c(a,b[d]))return d;return-1},_normalizeNumber:function(a,b,c,d){return void 0==a||null==a||isNaN(a)?d:a<b?b:a>c?c:a},_formatString:function(){if(0==arguments.length)return null;for(var a=arguments[0],b=1;b<arguments.length;b++){var c="{"+(b-1)+"}";a=a.replace(c,arguments[b])}return a},_isDeferredObject:function(a){return a.then&&a.done&&a.fail},_logDebug:function(a){window.console&&console.log("jTable DEBUG: "+a)},_logInfo:function(a){window.console&&console.log("jTable INFO: "+a)},_logWarn:function(a){window.console&&console.log("jTable WARNING: "+a)},_logError:function(a){window.console&&console.log("jTable ERROR: "+a)}}),Array.prototype.indexOf||(Array.prototype.indexOf=function(a){var b=this.length,c=Number(arguments[1])||0;for(c=c<0?Math.ceil(c):Math.floor(c),c<0&&(c+=b);c<b;c++)if(c in this&&this[c]===a)return c;return-1})}(jQuery),function(a){a.extend(!0,a.hik.jtable.prototype,{_submitFormUsingAjax:function(a,b,c,d){this._ajax({url:a,data:b,success:c,error:d})},_createInputLabelForRecordField:function(b){return a("<div />").addClass("jtable-input-label").html(this.options.fields[b].inputTitle||this.options.fields[b].title)},_createInputForRecordField:function(b){var c=b.fieldName,d=b.value,e=b.record,f=b.formType,g=b.form,h=this.options.fields[c];if(void 0!=d&&null!=d||(d=h.defaultValue),h.input){var i=a(h.input({value:d,record:e,formType:f,form:g}));return i.attr("id")||i.attr("id","Edit-"+c),a("<div />").addClass("jtable-input jtable-custom-input").append(i)}return"date"==h.type?this._createDateInputForField(h,c,d):"textarea"==h.type?this._createTextAreaForField(h,c,d):"password"==h.type?this._createPasswordInputForField(h,c,d):"checkbox"==h.type?this._createCheckboxForField(h,c,d):h.options?"radiobutton"==h.type?this._createRadioButtonListForField(h,c,d,e,f):this._createDropDownListForField(h,c,d,e,f,g):this._createTextInputForField(h,c,d)},_createInputForHidden:function(b,c){return void 0==c&&(c=""),a('<input type="hidden" name="'+b+'" id="Edit-'+b+'"></input>').val(c)},_createDateInputForField:function(b,c,d){var e=a('<input class="'+b.inputClass+'" id="Edit-'+c+'" type="text" name="'+c+'"></input>');void 0!=d&&e.val(d);var f=b.displayFormat||this.options.defaultDateFormat;return e.datepicker({dateFormat:f}),a("<div />").addClass("jtable-input jtable-date-input").append(e)},_createTextAreaForField:function(b,c,d){var e=a('<textarea class="'+b.inputClass+'" id="Edit-'+c+'" name="'+c+'"></textarea>');return void 0!=d&&e.val(d),a("<div />").addClass("jtable-input jtable-textarea-input").append(e)},_createTextInputForField:function(b,c,d){var e=a('<input class="'+b.inputClass+'" placeholder="'+b.placeholder+'" id="Edit-'+c+'" type="text" name="'+c+'"></input>');return void 0!=d&&e.val(d),a("<div />").addClass("jtable-input jtable-text-input").append(e)},_createPasswordInputForField:function(b,c,d){var e=a('<input class="'+b.inputClass+'" placeholder="'+b.placeholder+'" id="Edit-'+c+'" type="password" name="'+c+'"></input>');return void 0!=d&&e.val(d),a("<div />").addClass("jtable-input jtable-password-input").append(e)},_createCheckboxForField:function(b,c,d){var e=this;void 0==d&&(d=e._getCheckBoxPropertiesForFieldByState(c,!1).Value);var f=a("<div />").addClass("jtable-input jtable-checkbox-input"),g=a('<input class="'+b.inputClass+'" id="Edit-'+c+'" type="checkbox" name="'+c+'" />').appendTo(f);void 0!=d&&g.val(d);var h=a("<span>"+(b.formText||e._getCheckBoxTextForFieldByValue(c,d))+"</span>").appendTo(f);e._getIsCheckBoxSelectedForFieldByValue(c,d)&&g.attr("checked","checked");var i=function(){var a=e._getCheckBoxPropertiesForFieldByState(c,g.is(":checked"));g.attr("value",a.Value),h.html(b.formText||a.DisplayText)};return g.click(function(){i()}),0!=b.setOnTextClick&&h.addClass("jtable-option-text-clickable").click(function(){g.is(":checked")?g.attr("checked",!1):g.attr("checked",!0),i()}),f},_createDropDownListForField:function(b,c,d,e,f,g){var h=a("<div />").addClass("jtable-input jtable-dropdown-input"),i=a('<select class="'+b.inputClass+'" id="Edit-'+c+'" name="'+c+'"></select>').appendTo(h),j=this._getOptionsForField(c,{record:e,source:f,form:g,dependedValues:this._createDependedValuesUsingForm(g,b.dependsOn)});return this._fillDropDownListWithOptions(i,j,d),h},_fillDropDownListWithOptions:function(b,c,d){b.empty();for(var e=0;e<c.length;e++)a("<option"+(c[e].Value==d?' selected="selected"':"")+">"+c[e].DisplayText+"</option>").val(c[e].Value).appendTo(b)},_createDependedValuesUsingForm:function(a,b){if(!b)return{};for(var c={},d=0;d<b.length;d++){var e=b[d],f=a.find("select[name="+e+"]");f.length<=0||(c[e]=f.val())}return c},_createRadioButtonListForField:function(b,c,d,e,f){var g=a("<div />").addClass("jtable-input jtable-radiobuttonlist-input"),h=this._getOptionsForField(c,{record:e,source:f});return a.each(h,function(e,f){var h=a('<div class=""></div>').addClass("jtable-radio-input").appendTo(g),i=a('<input type="radio" id="Edit-'+c+"-"+e+'" class="'+b.inputClass+'" name="'+c+'"'+(f.Value==d+""?' checked="true"':"")+" />").val(f.Value).appendTo(h),j=a("<span></span>").html(f.DisplayText).appendTo(h);0!=b.setOnTextClick&&j.addClass("jtable-option-text-clickable").click(function(){i.is(":checked")||i.attr("checked",!0)})}),g},_getCheckBoxTextForFieldByValue:function(a,b){return this.options.fields[a].values[b]},_getIsCheckBoxSelectedForFieldByValue:function(a,b){return this._createCheckBoxStateArrayForFieldWithCaching(a)[1].Value.toString()==b.toString()},_getCheckBoxPropertiesForFieldByState:function(a,b){return this._createCheckBoxStateArrayForFieldWithCaching(a)[b?1:0]},_createCheckBoxStateArrayForFieldWithCaching:function(a){var b="checkbox_"+a;return this._cache[b]||(this._cache[b]=this._createCheckBoxStateArrayForField(a)),this._cache[b]},_createCheckBoxStateArrayForField:function(b){var c=[],d=0;return a.each(this.options.fields[b].values,function(a,b){d++<2&&c.push({Value:a,DisplayText:b})}),c},_makeCascadeDropDowns:function(b,c,d){var e=this;b.find("select").each(function(){var f=a(this),g=f.attr("name");if(g){var h=e.options.fields[g];h.dependsOn&&a.each(h.dependsOn,function(a,i){var j=b.find("select[name="+i+"]");j.change(function(){var a={record:c,source:d,form:b,dependedValues:{}};a.dependedValues=e._createDependedValuesUsingForm(b,h.dependsOn);var i=e._getOptionsForField(g,a);e._fillDropDownListWithOptions(f,i,void 0),f.change()})})}})},_updateRecordValuesFromForm:function(b,c){for(var d=0;d<this._fieldList.length;d++){var e=this._fieldList[d],f=this.options.fields[e];if(0!=f.edit){var g=c.find('[name="'+e+'"]');if(!(g.length<=0))if("date"==f.type){var h=g.val();if(h){var i=f.displayFormat||this.options.defaultDateFormat;try{var j=a.datepicker.parseDate(i,h);b[e]="/Date("+j.getTime()+")/"}catch(a){this._logWarn("Date format is incorrect for field "+e+": "+h),b[e]=void 0}}else this._logDebug("Date is empty for "+e),b[e]=void 0}else if(f.options&&"radiobutton"==f.type){var k=g.filter(":checked");k.length?b[e]=k.val():b[e]=void 0}else b[e]=g.val()}}},_setEnabledOfDialogButton:function(a,b,c){a&&(0!=b?a.removeAttr("disabled").removeClass("ui-state-disabled"):a.attr("disabled","disabled").addClass("ui-state-disabled"),c&&a.find("span").text(c))}})}(jQuery),function(a){var b={_create:a.hik.jtable.prototype._create};a.extend(!0,a.hik.jtable.prototype,{options:{recordAdded:function(a,b){},messages:{addNewRecord:"Add new record"}},_$addRecordDiv:null,_create:function(){b._create.apply(this,arguments),this.options.actions.createAction&&this._createAddRecordDialogDiv()},_createAddRecordDialogDiv:function(){var b=this;b._$addRecordDiv=a("<div />").appendTo(b._$mainContainer),b._$addRecordDiv.dialog({autoOpen:!1,show:b.options.dialogShowEffect,hide:b.options.dialogHideEffect,width:"auto",minWidth:"300",modal:!0,title:b.options.messages.addNewRecord,buttons:[{text:b.options.messages.cancel,click:function(){b._$addRecordDiv.dialog("close")}},{id:"AddRecordDialogSaveButton",text:b.options.messages.save,click:function(){b._onSaveClickedOnCreateForm()}}],close:function(){var a=b._$addRecordDiv.find("form").first(),c=b._$addRecordDiv.parent().find("#AddRecordDialogSaveButton");b._trigger("formClosed",null,{form:a,formType:"create"}),b._setEnabledOfDialogButton(c,!0,b.options.messages.save),a.remove()}}),b.options.addRecordButton?b.options.addRecordButton.click(function(a){a.preventDefault(),b._showAddRecordForm()}):b._addToolBarItem({icon:!0,cssClass:"jtable-toolbar-item-add-record",text:b.options.messages.addNewRecord,click:function(){b._showAddRecordForm()}})},_onSaveClickedOnCreateForm:function(){var a=this,b=a._$addRecordDiv.parent().find("#AddRecordDialogSaveButton"),c=a._$addRecordDiv.find("form");0!=a._trigger("formSubmitting",null,{form:c,formType:"create"})&&(a._setEnabledOfDialogButton(b,!1,a.options.messages.saving),a._saveAddRecordForm(c,b))},showCreateForm:function(){this._showAddRecordForm()},addRecord:function(b){var c=this;if(b=a.extend({clientOnly:!1,animationsEnabled:c.options.animationsEnabled,success:function(){},error:function(){}},b),!b.record)return void c._logWarn("options parameter in addRecord method must contain a record property.");if(b.clientOnly)return c._addRow(c._createRowFromRecord(b.record),{isNewRow:!0,animationsEnabled:b.animationsEnabled}),void b.success();var d=function(a){return"OK"!=a.Result?(c._showError(a.Message),void b.error(a)):a.Record?(c._onRecordAdded(a),c._addRow(c._createRowFromRecord(a.Record),{isNewRow:!0,animationsEnabled:b.animationsEnabled}),void b.success(a)):(c._logError("Server must return the created Record object."),void b.error(a))};if(!b.url&&a.isFunction(c.options.actions.createAction)){var e=c.options.actions.createAction(a.param(b.record));c._isDeferredObject(e)?e.done(function(a){d(a)}).fail(function(){c._showError(c.options.messages.serverCommunicationError),b.error()}):d(e)}else c._submitFormUsingAjax(b.url||c.options.actions.createAction,a.param(b.record),function(a){d(a)},function(){c._showError(c.options.messages.serverCommunicationError),b.error()})},_showAddRecordForm:function(){for(var b=this,c=a('<form id="jtable-create-form" class="jtable-dialog-form jtable-create-form"></form>'),d=0;d<b._fieldList.length;d++){var e=b._fieldList[d],f=b.options.fields[e];if((1!=f.key||1==f.create)&&0!=f.create)if("hidden"!=f.type){var g=a("<div />").addClass("jtable-input-field-container").appendTo(c);g.append(b._createInputLabelForRecordField(e)),g.append(b._createInputForRecordField({fieldName:e,formType:"create",form:c}))}else c.append(b._createInputForHidden(e,f.defaultValue))}b._makeCascadeDropDowns(c,void 0,"create"),c.submit(function(){return b._onSaveClickedOnCreateForm(),!1}),b._$addRecordDiv.append(c).dialog("open"),b._trigger("formCreated",null,{form:c,formType:"create"})},_saveAddRecordForm:function(b,c){var d=this,e=function(a){return"OK"!=a.Result?(d._showError(a.Message),void d._setEnabledOfDialogButton(c,!0,d.options.messages.save)):a.Record?(d._onRecordAdded(a),d._addRow(d._createRowFromRecord(a.Record),{isNewRow:!0}),void d._$addRecordDiv.dialog("close")):(d._logError("Server must return the created Record object."),void d._setEnabledOfDialogButton(c,!0,d.options.messages.save))};if(b.data("submitting",!0),a.isFunction(d.options.actions.createAction)){var f=d.options.actions.createAction(b.serialize());d._isDeferredObject(f)?f.done(function(a){e(a)}).fail(function(){d._showError(d.options.messages.serverCommunicationError),d._setEnabledOfDialogButton(c,!0,d.options.messages.save)}):e(f)}else d._submitFormUsingAjax(d.options.actions.createAction,b.serialize(),function(a){e(a)},function(){d._showError(d.options.messages.serverCommunicationError),d._setEnabledOfDialogButton(c,!0,d.options.messages.save)})},_onRecordAdded:function(a){this._trigger("recordAdded",null,{record:a.Record,serverResponse:a})}})}(jQuery),function(a){var b={_create:a.hik.jtable.prototype._create,_addColumnsToHeaderRow:a.hik.jtable.prototype._addColumnsToHeaderRow,_addCellsToRowUsingRecord:a.hik.jtable.prototype._addCellsToRowUsingRecord};a.extend(!0,a.hik.jtable.prototype,{options:{recordUpdated:function(a,b){},rowUpdated:function(a,b){},messages:{editRecord:"Edit Record"}},_$editDiv:null,_$editingRow:null,_create:function(){b._create.apply(this,arguments),this.options.actions.updateAction&&this._createEditDialogDiv()},_createEditDialogDiv:function(){var b=this;b._$editDiv=a("<div></div>").appendTo(b._$mainContainer),b._$editDiv.dialog({autoOpen:!1,show:b.options.dialogShowEffect,hide:b.options.dialogHideEffect,width:"auto",minWidth:"300",modal:!0,title:b.options.messages.editRecord,buttons:[{text:b.options.messages.cancel,click:function(){b._$editDiv.dialog("close")}},{id:"EditDialogSaveButton",text:b.options.messages.save,click:function(){b._onSaveClickedOnEditForm()}}],close:function(){var a=b._$editDiv.find("form:first"),c=b._$editDiv.parent().find("#EditDialogSaveButton");b._trigger("formClosed",null,{form:a,formType:"edit",row:b._$editingRow}),b._setEnabledOfDialogButton(c,!0,b.options.messages.save),a.remove()}})},_onSaveClickedOnEditForm:function(){var a=this;if(a._$editingRow.hasClass("jtable-row-removed"))return void a._$editDiv.dialog("close");var b=a._$editDiv.parent().find("#EditDialogSaveButton"),c=a._$editDiv.find("form");0!=a._trigger("formSubmitting",null,{form:c,formType:"edit",row:a._$editingRow})&&(a._setEnabledOfDialogButton(b,!1,a.options.messages.saving),a._saveEditForm(c,b))},updateRecord:function(b){var c=this;if(b=a.extend({clientOnly:!1,animationsEnabled:c.options.animationsEnabled,success:function(){},error:function(){}},b),!b.record)return void c._logWarn("options parameter in updateRecord method must contain a record property.");var d=c._getKeyValueOfRecord(b.record);if(void 0==d||null==d)return void c._logWarn("options parameter in updateRecord method must contain a record that contains the key field property.");var e=c.getRowByKey(d);if(null==e)return void c._logWarn('Can not found any row by key "'+d+'" on the table. Updating row must be visible on the table.');if(b.clientOnly)return a.extend(e.data("record"),b.record),c._updateRowTexts(e),c._onRecordUpdated(e,null),b.animationsEnabled&&c._showUpdateAnimationForRow(e),void b.success();var f=function(d){return"OK"!=d.Result?(c._showError(d.Message),void b.error(d)):(a.extend(e.data("record"),b.record),c._updateRecordValuesFromServerResponse(e.data("record"),d),c._updateRowTexts(e),c._onRecordUpdated(e,d),b.animationsEnabled&&c._showUpdateAnimationForRow(e),void b.success(d))};if(!b.url&&a.isFunction(c.options.actions.updateAction)){var g=c.options.actions.updateAction(a.param(b.record));c._isDeferredObject(g)?g.done(function(a){f(a)}).fail(function(){c._showError(c.options.messages.serverCommunicationError),b.error()}):f(g)}else c._submitFormUsingAjax(b.url||c.options.actions.updateAction,a.param(b.record),function(a){f(a)},function(){c._showError(c.options.messages.serverCommunicationError),b.error()})},_addColumnsToHeaderRow:function(a){ +b._addColumnsToHeaderRow.apply(this,arguments),void 0!=this.options.actions.updateAction&&a.append(this._createEmptyCommandHeader())},_addCellsToRowUsingRecord:function(c){var d=this;if(b._addCellsToRowUsingRecord.apply(this,arguments),void 0!=d.options.actions.updateAction){var e=a("<span></span>").html(d.options.messages.editRecord),f=a('<button title="'+d.options.messages.editRecord+'"></button>').addClass("jtable-command-button jtable-edit-command-button").append(e).click(function(a){a.preventDefault(),a.stopPropagation(),d._showEditForm(c)});a("<td></td>").addClass("jtable-command-column").append(f).appendTo(c)}},_showEditForm:function(b){for(var c=this,d=b.data("record"),e=a('<form id="jtable-edit-form" class="jtable-dialog-form jtable-edit-form"></form>'),f=0;f<c._fieldList.length;f++){var g=c._fieldList[f],h=c.options.fields[g],i=d[g];if(1==h.key){if(1!=h.edit){e.append(c._createInputForHidden(g,i));continue}e.append(c._createInputForHidden("jtRecordKey",i))}if(0!=h.edit)if("hidden"!=h.type){var j=a('<div class="jtable-input-field-container"></div>').appendTo(e);j.append(c._createInputLabelForRecordField(g));var k=c._getValueForRecordField(d,g);j.append(c._createInputForRecordField({fieldName:g,value:k,record:d,formType:"edit",form:e}))}else e.append(c._createInputForHidden(g,i))}c._makeCascadeDropDowns(e,d,"edit"),e.submit(function(){return c._onSaveClickedOnEditForm(),!1}),c._$editingRow=b,c._$editDiv.append(e).dialog("open"),c._trigger("formCreated",null,{form:e,formType:"edit",record:d,row:b})},_saveEditForm:function(b,c){var d=this,e=function(a){if("OK"!=a.Result)return d._showError(a.Message),void d._setEnabledOfDialogButton(c,!0,d.options.messages.save);var e=d._$editingRow.data("record");d._updateRecordValuesFromForm(e,b),d._updateRecordValuesFromServerResponse(e,a),d._updateRowTexts(d._$editingRow),d._$editingRow.attr("data-record-key",d._getKeyValueOfRecord(e)),d._onRecordUpdated(d._$editingRow,a),d.options.animationsEnabled&&d._showUpdateAnimationForRow(d._$editingRow),d._$editDiv.dialog("close")};if(a.isFunction(d.options.actions.updateAction)){var f=d.options.actions.updateAction(b.serialize());d._isDeferredObject(f)?f.done(function(a){e(a)}).fail(function(){d._showError(d.options.messages.serverCommunicationError),d._setEnabledOfDialogButton(c,!0,d.options.messages.save)}):e(f)}else d._submitFormUsingAjax(d.options.actions.updateAction,b.serialize(),function(a){e(a)},function(){d._showError(d.options.messages.serverCommunicationError),d._setEnabledOfDialogButton(c,!0,d.options.messages.save)})},_updateRecordValuesFromServerResponse:function(b,c){c&&c.Record&&a.extend(!0,b,c.Record)},_getValueForRecordField:function(a,b){var c=this.options.fields[b],d=a[b];return"date"==c.type?this._getDisplayTextForDateRecordField(c,d):d},_updateRowTexts:function(a){for(var b=a.data("record"),c=a.find("td"),d=0;d<this._columnList.length;d++){var e=this._getDisplayTextForRecordField(b,this._columnList[d]);0===e&&(e="0"),c.eq(this._firstDataColumnOffset+d).html(e||"")}this._onRowUpdated(a)},_showUpdateAnimationForRow:function(a){var b="jtable-row-updated";this.options.jqueryuiTheme&&(b+=" ui-state-highlight"),a.stop(!0,!0).addClass(b,"slow","",function(){a.removeClass(b,5e3)})},_onRowUpdated:function(a){this._trigger("rowUpdated",null,{row:a,record:a.data("record")})},_onRecordUpdated:function(a,b){this._trigger("recordUpdated",null,{record:a.data("record"),row:a,serverResponse:b})}})}(jQuery),function(a){var b={_create:a.hik.jtable.prototype._create,_addColumnsToHeaderRow:a.hik.jtable.prototype._addColumnsToHeaderRow,_addCellsToRowUsingRecord:a.hik.jtable.prototype._addCellsToRowUsingRecord};a.extend(!0,a.hik.jtable.prototype,{options:{deleteConfirmation:!0,recordDeleted:function(a,b){},messages:{deleteConfirmation:"This record will be deleted. Are you sure?",deleteText:"Delete",deleting:"Deleting",canNotDeletedRecords:"Can not delete {0} of {1} records!",deleteProggress:"Deleting {0} of {1} records, processing..."}},_$deleteRecordDiv:null,_$deletingRow:null,_create:function(){b._create.apply(this,arguments),this._createDeleteDialogDiv()},_createDeleteDialogDiv:function(){var b=this;b.options.actions.deleteAction&&(b._$deleteRecordDiv=a('<div><p><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;"></span><span class="jtable-delete-confirm-message"></span></p></div>').appendTo(b._$mainContainer),b._$deleteRecordDiv.dialog({autoOpen:!1,show:b.options.dialogShowEffect,hide:b.options.dialogHideEffect,modal:!0,title:b.options.messages.areYouSure,buttons:[{text:b.options.messages.cancel,click:function(){b._$deleteRecordDiv.dialog("close")}},{id:"DeleteDialogButton",text:b.options.messages.deleteText,click:function(){if(b._$deletingRow.hasClass("jtable-row-removed"))return void b._$deleteRecordDiv.dialog("close");var a=b._$deleteRecordDiv.parent().find("#DeleteDialogButton");b._setEnabledOfDialogButton(a,!1,b.options.messages.deleting),b._deleteRecordFromServer(b._$deletingRow,function(){b._removeRowsFromTableWithAnimation(b._$deletingRow),b._$deleteRecordDiv.dialog("close")},function(c){b._showError(c),b._setEnabledOfDialogButton(a,!0,b.options.messages.deleteText)})}}],close:function(){var a=b._$deleteRecordDiv.parent().find("#DeleteDialogButton");b._setEnabledOfDialogButton(a,!0,b.options.messages.deleteText)}}))},deleteRows:function(b){var c=this;if(b.length<=0)return void c._logWarn("No rows specified to jTable deleteRows method.");if(c._isBusy())return void c._logWarn("Can not delete rows since jTable is busy!");if(1==b.length)return void c._deleteRecordFromServer(b,function(){c._removeRowsFromTableWithAnimation(b)},function(a){c._showError(a)});c._showBusy(c._formatString(c.options.messages.deleteProggress,0,b.length));var d=0,e=function(){return d>=b.length},f=function(){var a=b.filter(".jtable-row-ready-to-remove");a.length<b.length&&c._showError(c._formatString(c.options.messages.canNotDeletedRecords,b.length-a.length,b.length)),a.length>0&&c._removeRowsFromTableWithAnimation(a),c._hideBusy()},g=0;b.each(function(){var h=a(this);c._deleteRecordFromServer(h,function(){++g,++d,h.addClass("jtable-row-ready-to-remove"),c._showBusy(c._formatString(c.options.messages.deleteProggress,g,b.length)),e()&&f()},function(){++d,e()&&f()})})},deleteRecord:function(b){var c=this;if(b=a.extend({clientOnly:!1,animationsEnabled:c.options.animationsEnabled,url:c.options.actions.deleteAction,success:function(){},error:function(){}},b),void 0==b.key)return void c._logWarn("options parameter in deleteRecord method must contain a key property.");var d=c.getRowByKey(b.key);return null==d?void c._logWarn("Can not found any row by key: "+b.key):b.clientOnly?(c._removeRowsFromTableWithAnimation(d,b.animationsEnabled),void b.success()):void c._deleteRecordFromServer(d,function(a){c._removeRowsFromTableWithAnimation(d,b.animationsEnabled),b.success(a)},function(a){c._showError(a),b.error(a)},b.url)},_addColumnsToHeaderRow:function(a){b._addColumnsToHeaderRow.apply(this,arguments),void 0!=this.options.actions.deleteAction&&a.append(this._createEmptyCommandHeader())},_addCellsToRowUsingRecord:function(c){b._addCellsToRowUsingRecord.apply(this,arguments);var d=this;if(void 0!=d.options.actions.deleteAction){var e=a("<span></span>").html(d.options.messages.deleteText),f=a('<button title="'+d.options.messages.deleteText+'"></button>').addClass("jtable-command-button jtable-delete-command-button").append(e).click(function(a){a.preventDefault(),a.stopPropagation(),d._deleteButtonClickedForRow(c)});a("<td></td>").addClass("jtable-command-column").append(f).appendTo(c)}},_deleteButtonClickedForRow:function(b){var d,c=this,e=c.options.messages.deleteConfirmation;if(a.isFunction(c.options.deleteConfirmation)){var f={row:b,record:b.data("record"),deleteConfirm:!0,deleteConfirmMessage:e,cancel:!1,cancelMessage:null};if(c.options.deleteConfirmation(f),f.cancel)return void(f.cancelMessage&&c._showError(f.cancelMessage));e=f.deleteConfirmMessage,d=f.deleteConfirm}else d=c.options.deleteConfirmation;0!=d?(c._$deleteRecordDiv.find(".jtable-delete-confirm-message").html(e),c._showDeleteDialog(b)):c._deleteRecordFromServer(b,function(){c._removeRowsFromTableWithAnimation(b)},function(a){c._showError(a)})},_showDeleteDialog:function(a){this._$deletingRow=a,this._$deleteRecordDiv.dialog("open")},_deleteRecordFromServer:function(b,c,d,e){var f=this,g=function(a){return"OK"!=a.Result?(b.data("deleting",!1),void(d&&d(a.Message))):(f._trigger("recordDeleted",null,{record:b.data("record"),row:b,serverResponse:a}),void(c&&c(a)))};if(1!=b.data("deleting")){b.data("deleting",!0);var h={};if(h[f._keyField]=f._getKeyValueOfRecord(b.data("record")),!e&&a.isFunction(f.options.actions.deleteAction)){var i=f.options.actions.deleteAction(h);f._isDeferredObject(i)?i.done(function(a){g(a)}).fail(function(){b.data("deleting",!1),d&&d(f.options.messages.serverCommunicationError)}):g(i)}else this._ajax({url:e||f.options.actions.deleteAction,data:h,success:function(a){g(a)},error:function(){b.data("deleting",!1),d&&d(f.options.messages.serverCommunicationError)}})}},_removeRowsFromTableWithAnimation:function(a,b){var c=this;if(void 0==b&&(b=c.options.animationsEnabled),b){var d="jtable-row-deleting";this.options.jqueryuiTheme&&(d+=" ui-state-disabled"),a.stop(!0,!0).addClass(d,"slow","").promise().done(function(){c._removeRowsFromTable(a,"deleted")})}else c._removeRowsFromTable(a,"deleted")}})}(jQuery),function(a){var b={_create:a.hik.jtable.prototype._create,_addColumnsToHeaderRow:a.hik.jtable.prototype._addColumnsToHeaderRow,_addCellsToRowUsingRecord:a.hik.jtable.prototype._addCellsToRowUsingRecord,_onLoadingRecords:a.hik.jtable.prototype._onLoadingRecords,_onRecordsLoaded:a.hik.jtable.prototype._onRecordsLoaded,_onRowsRemoved:a.hik.jtable.prototype._onRowsRemoved};a.extend(!0,a.hik.jtable.prototype,{options:{selecting:!1,multiselect:!1,selectingCheckboxes:!1,selectOnRowClick:!0,selectionChanged:function(a,b){}},_selectedRecordIdsBeforeLoad:null,_$selectAllCheckbox:null,_shiftKeyDown:!1,_create:function(){this.options.selecting&&this.options.selectingCheckboxes&&(++this._firstDataColumnOffset,this._bindKeyboardEvents()),b._create.apply(this,arguments)},_bindKeyboardEvents:function(){var b=this;a(document).keydown(function(a){switch(a.which){case 16:b._shiftKeyDown=!0}}).keyup(function(a){switch(a.which){case 16:b._shiftKeyDown=!1}})},selectedRows:function(){return this._getSelectedRows()},selectRows:function(a){this._selectRows(a),this._onSelectionChanged()},_addColumnsToHeaderRow:function(a){this.options.selecting&&this.options.selectingCheckboxes&&(this.options.multiselect?a.append(this._createSelectAllHeader()):a.append(this._createEmptyCommandHeader())),b._addColumnsToHeaderRow.apply(this,arguments)},_addCellsToRowUsingRecord:function(a){this.options.selecting&&this._makeRowSelectable(a),b._addCellsToRowUsingRecord.apply(this,arguments)},_onLoadingRecords:function(){this.options.selecting&&this._storeSelectionList(),b._onLoadingRecords.apply(this,arguments)},_onRecordsLoaded:function(){this.options.selecting&&this._restoreSelectionList(),b._onRecordsLoaded.apply(this,arguments)},_onRowsRemoved:function(a,c){this.options.selecting&&"reloading"!=c&&a.filter(".jtable-row-selected").length>0&&this._onSelectionChanged(),b._onRowsRemoved.apply(this,arguments)},_createSelectAllHeader:function(){var b=this,c=a('<th class=""></th>').addClass("jtable-command-column-header jtable-column-header-selecting");this._jqueryuiThemeAddClass(c,"ui-state-default");var d=a("<div />").addClass("jtable-column-header-container").appendTo(c);return b._$selectAllCheckbox=a('<input type="checkbox" />').appendTo(d).click(function(){if(b._$tableRows.length<=0)return void b._$selectAllCheckbox.attr("checked",!1);var a=b._$tableBody.find(">tr.jtable-data-row");b._$selectAllCheckbox.is(":checked")?b._selectRows(a):b._deselectRows(a),b._onSelectionChanged()}),c},_storeSelectionList:function(){var b=this;b.options.selecting&&(b._selectedRecordIdsBeforeLoad=[],b._getSelectedRows().each(function(){b._selectedRecordIdsBeforeLoad.push(b._getKeyValueOfRecord(a(this).data("record")))}))},_restoreSelectionList:function(){var b=this;if(b.options.selecting){for(var c=0,d=0;d<b._$tableRows.length;++d){var e=b._getKeyValueOfRecord(b._$tableRows[d].data("record"));a.inArray(e,b._selectedRecordIdsBeforeLoad)>-1&&(b._selectRows(b._$tableRows[d]),++c)}b._selectedRecordIdsBeforeLoad.length>0&&b._selectedRecordIdsBeforeLoad.length!=c&&b._onSelectionChanged(),b._selectedRecordIdsBeforeLoad=[],b._refreshSelectAllCheckboxState()}},_getSelectedRows:function(){return this._$tableBody.find(">tr.jtable-row-selected")},_makeRowSelectable:function(b){var c=this;if(c.options.selectOnRowClick&&b.click(function(){c._invertRowSelection(b)}),c.options.selectingCheckboxes){var d=a("<td></td>").addClass("jtable-selecting-column"),e=a('<input type="checkbox" />').appendTo(d);c.options.selectOnRowClick||e.click(function(){c._invertRowSelection(b)}),b.append(d)}},_invertRowSelection:function(a){if(a.hasClass("jtable-row-selected"))this._deselectRows(a);else if(this._shiftKeyDown){var b=this._findRowIndex(a),c=this._findFirstSelectedRowIndexBeforeIndex(b)+1;if(c>0&&c<b)this._selectRows(this._$tableBody.find("tr").slice(c,b+1));else{var d=this._findFirstSelectedRowIndexAfterIndex(b)-1;d>b?this._selectRows(this._$tableBody.find("tr").slice(b,d+1)):this._selectRows(a)}}else this._selectRows(a);this._onSelectionChanged()},_findFirstSelectedRowIndexBeforeIndex:function(a){for(var b=a-1;b>=0;--b)if(this._$tableRows[b].hasClass("jtable-row-selected"))return b;return-1},_findFirstSelectedRowIndexAfterIndex:function(a){for(var b=a+1;b<this._$tableRows.length;++b)if(this._$tableRows[b].hasClass("jtable-row-selected"))return b;return-1},_selectRows:function(a){this.options.multiselect||this._deselectRows(this._getSelectedRows()),a.addClass("jtable-row-selected"),this._jqueryuiThemeAddClass(a,"ui-state-highlight"),this.options.selectingCheckboxes&&a.find(">td.jtable-selecting-column >input").prop("checked",!0),this._refreshSelectAllCheckboxState()},_deselectRows:function(a){a.removeClass("jtable-row-selected ui-state-highlight"),this.options.selectingCheckboxes&&a.find(">td.jtable-selecting-column >input").prop("checked",!1),this._refreshSelectAllCheckboxState()},_refreshSelectAllCheckboxState:function(){if(this.options.selectingCheckboxes&&this.options.multiselect){var a=this._$tableRows.length,b=this._getSelectedRows().length;0==b?(this._$selectAllCheckbox.prop("indeterminate",!1),this._$selectAllCheckbox.attr("checked",!1)):b==a?(this._$selectAllCheckbox.prop("indeterminate",!1),this._$selectAllCheckbox.attr("checked",!0)):(this._$selectAllCheckbox.attr("checked",!1),this._$selectAllCheckbox.prop("indeterminate",!0))}},_onSelectionChanged:function(){this._trigger("selectionChanged",null,{})}})}(jQuery),function(a){var b={load:a.hik.jtable.prototype.load,_create:a.hik.jtable.prototype._create,_setOption:a.hik.jtable.prototype._setOption,_createRecordLoadUrl:a.hik.jtable.prototype._createRecordLoadUrl,_createJtParamsForLoading:a.hik.jtable.prototype._createJtParamsForLoading,_addRowToTable:a.hik.jtable.prototype._addRowToTable,_addRow:a.hik.jtable.prototype._addRow,_removeRowsFromTable:a.hik.jtable.prototype._removeRowsFromTable,_onRecordsLoaded:a.hik.jtable.prototype._onRecordsLoaded};a.extend(!0,a.hik.jtable.prototype,{options:{paging:!1,pageList:"normal",pageSize:10,pageSizes:[10,25,50,100,250,500],pageSizeChangeArea:!0,gotoPageArea:"combobox",messages:{pagingInfo:"Showing {0}-{1} of {2}",pageSizeChangeLabel:"Row count",gotoPageLabel:"Go to page"}},_$bottomPanel:null,_$pagingListArea:null,_$pageSizeChangeArea:null,_$pageInfoSpan:null,_$gotoPageArea:null,_$gotoPageInput:null,_totalRecordCount:0,_currentPageNo:1,_create:function(){b._create.apply(this,arguments),this.options.paging&&(this._loadPagingSettings(),this._createBottomPanel(),this._createPageListArea(),this._createGotoPageInput(),this._createPageSizeSelection())},_loadPagingSettings:function(){if(this.options.saveUserPreferences){var a=this._getCookie("page-size");a&&(this.options.pageSize=this._normalizeNumber(a,1,1e6,this.options.pageSize))}},_createBottomPanel:function(){this._$bottomPanel=a("<div />").addClass("jtable-bottom-panel").insertAfter(this._$table),this._jqueryuiThemeAddClass(this._$bottomPanel,"ui-state-default"),a("<div />").addClass("jtable-left-area").appendTo(this._$bottomPanel),a("<div />").addClass("jtable-right-area").appendTo(this._$bottomPanel)},_createPageListArea:function(){this._$pagingListArea=a("<span></span>").addClass("jtable-page-list").appendTo(this._$bottomPanel.find(".jtable-left-area")),this._$pageInfoSpan=a("<span></span>").addClass("jtable-page-info").appendTo(this._$bottomPanel.find(".jtable-right-area"))},_createPageSizeSelection:function(){var b=this;if(b.options.pageSizeChangeArea){b._findIndexInArray(b.options.pageSize,b.options.pageSizes)<0&&(b.options.pageSizes.push(parseInt(b.options.pageSize)),b.options.pageSizes.sort(function(a,b){return a-b})),b._$pageSizeChangeArea=a("<span></span>").addClass("jtable-page-size-change").appendTo(b._$bottomPanel.find(".jtable-left-area")),b._$pageSizeChangeArea.append("<span>"+b.options.messages.pageSizeChangeLabel+": </span>");for(var c=a("<select></select>").appendTo(b._$pageSizeChangeArea),d=0;d<b.options.pageSizes.length;d++)c.append('<option value="'+b.options.pageSizes[d]+'">'+b.options.pageSizes[d]+"</option>");c.val(b.options.pageSize),c.change(function(){b._changePageSize(parseInt(a(this).val()))})}},_createGotoPageInput:function(){var b=this;b.options.gotoPageArea&&"none"!=b.options.gotoPageArea&&(this._$gotoPageArea=a("<span></span>").addClass("jtable-goto-page").appendTo(b._$bottomPanel.find(".jtable-left-area")),this._$gotoPageArea.append("<span>"+b.options.messages.gotoPageLabel+": </span>"),"combobox"==b.options.gotoPageArea?(b._$gotoPageInput=a("<select></select>").appendTo(this._$gotoPageArea).data("pageCount",1).change(function(){b._changePage(parseInt(a(this).val()))}),b._$gotoPageInput.append('<option value="1">1</option>')):b._$gotoPageInput=a('<input type="text" maxlength="10" value="'+b._currentPageNo+'" />').appendTo(this._$gotoPageArea).keypress(function(a){if(13==a.which)a.preventDefault(),b._changePage(parseInt(b._$gotoPageInput.val()));else if(43==a.which)a.preventDefault(),b._changePage(parseInt(b._$gotoPageInput.val())+1);else if(45==a.which)a.preventDefault(),b._changePage(parseInt(b._$gotoPageInput.val())-1);else{var c=47<a.keyCode&&a.keyCode<58&&0==a.shiftKey&&0==a.altKey||8==a.keyCode||9==a.keyCode;c||a.preventDefault()}}))},_refreshGotoPageInput:function(){if(this.options.gotoPageArea&&"none"!=this.options.gotoPageArea){if(this._totalRecordCount<=0?this._$gotoPageArea.hide():this._$gotoPageArea.show(),"combobox"==this.options.gotoPageArea){var a=this._$gotoPageInput.data("pageCount"),b=this._calculatePageCount();if(a!=b){this._$gotoPageInput.empty();var c=1;b>1e4?c=100:b>5e3?c=10:b>2e3?c=5:b>1e3&&(c=2);for(var d=c;d<=b;d+=c)this._$gotoPageInput.append('<option value="'+d+'">'+d+"</option>");this._$gotoPageInput.data("pageCount",b)}}this._$gotoPageInput.val(this._currentPageNo)}},load:function(){this._currentPageNo=1,b.load.apply(this,arguments)},_setOption:function(a,c){b._setOption.apply(this,arguments),"pageSize"==a&&this._changePageSize(parseInt(c))},_changePageSize:function(a){if(a!=this.options.pageSize){this.options.pageSize=a;var b=this._calculatePageCount();this._currentPageNo>b&&(this._currentPageNo=b),this._currentPageNo<=0&&(this._currentPageNo=1);var c=this._$bottomPanel.find(".jtable-page-size-change select");if(c.length>0&&parseInt(c.val())!=a){var d=c.find("option[value="+a+"]");d.length>0&&c.val(a)}this._savePagingSettings(),this._reloadTable()}},_savePagingSettings:function(){this.options.saveUserPreferences&&this._setCookie("page-size",this.options.pageSize)},_createRecordLoadUrl:function(){var a=b._createRecordLoadUrl.apply(this,arguments);return a=this._addPagingInfoToUrl(a,this._currentPageNo)},_createJtParamsForLoading:function(){var a=b._createJtParamsForLoading.apply(this,arguments);return this.options.paging&&(a.jtStartIndex=(this._currentPageNo-1)*this.options.pageSize,a.jtPageSize=this.options.pageSize),a},_addRowToTable:function(a,c,d){return d&&this.options.paging?void this._reloadTable():void b._addRowToTable.apply(this,arguments)},_addRow:function(a,c){return c&&c.isNewRow&&this.options.paging?void this._reloadTable():void b._addRow.apply(this,arguments)},_removeRowsFromTable:function(a,c){b._removeRowsFromTable.apply(this,arguments),this.options.paging&&(this._$tableRows.length<=0&&this._currentPageNo>1&&--this._currentPageNo,this._reloadTable())},_onRecordsLoaded:function(a){this.options.paging&&(this._totalRecordCount=a.TotalRecordCount,this._createPagingList(),this._createPagingInfo(),this._refreshGotoPageInput()),b._onRecordsLoaded.apply(this,arguments)},_addPagingInfoToUrl:function(a,b){if(!this.options.paging)return a;var c=(b-1)*this.options.pageSize,d=this.options.pageSize;return a+(a.indexOf("?")<0?"?":"&")+"jtStartIndex="+c+"&jtPageSize="+d},_createPagingList:function(){if(!(this.options.pageSize<=0||(this._$pagingListArea.empty(),this._totalRecordCount<=0))){var a=this._calculatePageCount();this._createFirstAndPreviousPageButtons(),"normal"==this.options.pageList&&this._createPageNumberButtons(this._calculatePageNumbers(a)),this._createLastAndNextPageButtons(a),this._bindClickEventsToPageNumberButtons()}},_createFirstAndPreviousPageButtons:function(){var b=a("<span></span>").addClass("jtable-page-number-first").html("<<").data("pageNumber",1).appendTo(this._$pagingListArea),c=a("<span></span>").addClass("jtable-page-number-previous").html("<").data("pageNumber",this._currentPageNo-1).appendTo(this._$pagingListArea);this._jqueryuiThemeAddClass(b,"ui-button ui-state-default","ui-state-hover"),this._jqueryuiThemeAddClass(c,"ui-button ui-state-default","ui-state-hover"),this._currentPageNo<=1&&(b.addClass("jtable-page-number-disabled"),c.addClass("jtable-page-number-disabled"),this._jqueryuiThemeAddClass(b,"ui-state-disabled"),this._jqueryuiThemeAddClass(c,"ui-state-disabled"))},_createLastAndNextPageButtons:function(b){var c=a("<span></span>").addClass("jtable-page-number-next").html(">").data("pageNumber",this._currentPageNo+1).appendTo(this._$pagingListArea),d=a("<span></span>").addClass("jtable-page-number-last").html(">>").data("pageNumber",b).appendTo(this._$pagingListArea);this._jqueryuiThemeAddClass(c,"ui-button ui-state-default","ui-state-hover"),this._jqueryuiThemeAddClass(d,"ui-button ui-state-default","ui-state-hover"),this._currentPageNo>=b&&(c.addClass("jtable-page-number-disabled"),d.addClass("jtable-page-number-disabled"),this._jqueryuiThemeAddClass(c,"ui-state-disabled"),this._jqueryuiThemeAddClass(d,"ui-state-disabled"))},_createPageNumberButtons:function(b){for(var c=0,d=0;d<b.length;d++)b[d]-c>1&&a("<span></span>").addClass("jtable-page-number-space").html("...").appendTo(this._$pagingListArea),this._createPageNumberButton(b[d]),c=b[d]},_createPageNumberButton:function(b){var c=a("<span></span>").addClass("jtable-page-number").html(b).data("pageNumber",b).appendTo(this._$pagingListArea);this._jqueryuiThemeAddClass(c,"ui-button ui-state-default","ui-state-hover"),this._currentPageNo==b&&(c.addClass("jtable-page-number-active jtable-page-number-disabled"),this._jqueryuiThemeAddClass(c,"ui-state-active"))},_calculatePageCount:function(){var a=Math.floor(this._totalRecordCount/this.options.pageSize);return this._totalRecordCount%this.options.pageSize!=0&&++a,a},_calculatePageNumbers:function(a){if(a<=4){for(var b=[],c=1;c<=a;++c)b.push(c);return b}var d=[1,2,a-1,a],e=this._normalizeNumber(this._currentPageNo-1,1,a,1),f=this._normalizeNumber(this._currentPageNo+1,1,a,1);return this._insertToArrayIfDoesNotExists(d,e),this._insertToArrayIfDoesNotExists(d,this._currentPageNo),this._insertToArrayIfDoesNotExists(d,f),d.sort(function(a,b){return a-b}),d},_createPagingInfo:function(){if(this._totalRecordCount<=0)return void this._$pageInfoSpan.empty();var a=(this._currentPageNo-1)*this.options.pageSize+1,b=this._currentPageNo*this.options.pageSize;if(b=this._normalizeNumber(b,a,this._totalRecordCount,0),b>=a){var c=this._formatString(this.options.messages.pagingInfo,a,b,this._totalRecordCount);this._$pageInfoSpan.html(c)}},_bindClickEventsToPageNumberButtons:function(){var b=this;b._$pagingListArea.find(".jtable-page-number,.jtable-page-number-previous,.jtable-page-number-next,.jtable-page-number-first,.jtable-page-number-last").not(".jtable-page-number-disabled").click(function(c){c.preventDefault(),b._changePage(a(this).data("pageNumber"))})},_changePage:function(a){return a=this._normalizeNumber(a,1,this._calculatePageCount(),1),a==this._currentPageNo?void this._refreshGotoPageInput():(this._currentPageNo=a,void this._reloadTable())}})}(jQuery),function(a){var b={_initializeFields:a.hik.jtable.prototype._initializeFields,_normalizeFieldOptions:a.hik.jtable.prototype._normalizeFieldOptions,_createHeaderCellForField:a.hik.jtable.prototype._createHeaderCellForField,_createRecordLoadUrl:a.hik.jtable.prototype._createRecordLoadUrl,_createJtParamsForLoading:a.hik.jtable.prototype._createJtParamsForLoading};a.extend(!0,a.hik.jtable.prototype,{options:{sorting:!1,multiSorting:!1,defaultSorting:""},_lastSorting:null,_initializeFields:function(){b._initializeFields.apply(this,arguments),this._lastSorting=[],this.options.sorting&&this._buildDefaultSortingArray()},_normalizeFieldOptions:function(a,c){b._normalizeFieldOptions.apply(this,arguments),c.sorting=0!=c.sorting},_createHeaderCellForField:function(a,c){var d=b._createHeaderCellForField.apply(this,arguments);return this.options.sorting&&c.sorting&&this._makeColumnSortable(d,a,c.initialSortingDirection),d},_createRecordLoadUrl:function(){var a=b._createRecordLoadUrl.apply(this,arguments);return a=this._addSortingInfoToUrl(a)},_buildDefaultSortingArray:function(){var b=this;a.each(b.options.defaultSorting.split(","),function(c,d){a.each(b.options.fields,function(a,c){if(c.sorting){var e=d.indexOf(a);e>-1&&(d.toUpperCase().indexOf(" DESC",e)>-1?b._lastSorting.push({fieldName:a,sortOrder:"DESC"}):b._lastSorting.push({fieldName:a,sortOrder:"ASC"}))}})})},_makeColumnSortable:function(b,c,d){var e=this;b.addClass("jtable-column-header-sortable").click(function(a){a.preventDefault(),e.options.multiSorting&&a.ctrlKey||(e._lastSorting=[]),e._sortTableByColumn(b)}),d&&b.addClass("jtable-column-header-sorted-"+d.toLowerCase()),a.each(this._lastSorting,function(a,d){d.fieldName==c&&("DESC"==d.sortOrder?b.addClass("jtable-column-header-sorted-desc"):b.addClass("jtable-column-header-sorted-asc"))})},_sortTableByColumn:function(a){0==this._lastSorting.length&&a.siblings().removeClass("jtable-column-header-sorted-asc jtable-column-header-sorted-desc");for(var b=0;b<this._lastSorting.length;b++)this._lastSorting[b].fieldName==a.data("fieldName")&&this._lastSorting.splice(b--,1);a.hasClass("jtable-column-header-sorted-asc")?(a.removeClass("jtable-column-header-sorted-asc").addClass("jtable-column-header-sorted-desc"),this._lastSorting.push({fieldName:a.data("fieldName"),sortOrder:"DESC"})):(a.removeClass("jtable-column-header-sorted-desc").addClass("jtable-column-header-sorted-asc"),this._lastSorting.push({fieldName:a.data("fieldName"),sortOrder:"ASC"})),this._reloadTable()},_addSortingInfoToUrl:function(b){if(!this.options.sorting||0==this._lastSorting.length)return b;var c=[];return a.each(this._lastSorting,function(a,b){c.push(b.fieldName+" "+b.sortOrder)}),b+(b.indexOf("?")<0?"?":"&")+"jtSorting="+c.join(",")},_createJtParamsForLoading:function(){var c=b._createJtParamsForLoading.apply(this,arguments);if(this.options.sorting&&this._lastSorting.length){var d=[];a.each(this._lastSorting,function(a,b){d.push(b.fieldName+" "+b.sortOrder)}),c.jtSorting=d.join(",")}return c}})}(jQuery),function(a){var b={_create:a.hik.jtable.prototype._create,_normalizeFieldOptions:a.hik.jtable.prototype._normalizeFieldOptions,_createHeaderCellForField:a.hik.jtable.prototype._createHeaderCellForField,_createCellForRecordField:a.hik.jtable.prototype._createCellForRecordField};a.extend(!0,a.hik.jtable.prototype,{options:{tableId:void 0,columnResizable:!0,columnSelectable:!0},_$columnSelectionDiv:null,_$columnResizeBar:null,_cookieKeyPrefix:null,_currentResizeArgs:null,_create:function(){b._create.apply(this,arguments),this._createColumnResizeBar(),this._createColumnSelection(),this.options.saveUserPreferences&&this._loadColumnSettings(),this._normalizeColumnWidths()},_normalizeFieldOptions:function(a,c){b._normalizeFieldOptions.apply(this,arguments),this.options.columnResizable&&(c.columnResizable=0!=c.columnResizable),c.visibility||(c.visibility="visible")},_createHeaderCellForField:function(a,c){var d=b._createHeaderCellForField.apply(this,arguments);return this.options.columnResizable&&c.columnResizable&&a!=this._columnList[this._columnList.length-1]&&this._makeColumnResizable(d),"hidden"==c.visibility&&d.hide(),d},_createCellForRecordField:function(a,c){var d=b._createCellForRecordField.apply(this,arguments),e=this.options.fields[c];return"hidden"==e.visibility&&d.hide(),d},changeColumnVisibility:function(a,b){this._changeColumnVisibilityInternal(a,b),this._normalizeColumnWidths(),this.options.saveUserPreferences&&this._saveColumnSettings()},_changeColumnVisibilityInternal:function(a,b){var c=this._columnList.indexOf(a);if(c<0)return void this._logWarn('Column "'+a+'" does not exist in fields!');if(["visible","hidden","fixed"].indexOf(b)<0)return void this._logWarn('Visibility value is not valid: "'+b+'"! Options are: visible, hidden, fixed.');var d=this.options.fields[a];if(d.visibility!=b){var e=this._firstDataColumnOffset+c+1;"hidden"!=d.visibility&&"hidden"==b?this._$table.find(">thead >tr >th:nth-child("+e+"),>tbody >tr >td:nth-child("+e+")").hide():"hidden"==d.visibility&&"hidden"!=b&&this._$table.find(">thead >tr >th:nth-child("+e+"),>tbody >tr >td:nth-child("+e+")").show().css("display","table-cell"),d.visibility=b}},_createColumnSelection:function(){var b=this;this._$columnSelectionDiv=a("<div />").addClass("jtable-column-selection-container").appendTo(b._$mainContainer),this._$table.children("thead").bind("contextmenu",function(c){if(b.options.columnSelectable){c.preventDefault(),a("<div />").addClass("jtable-contextmenu-overlay").click(function(){a(this).remove(),b._$columnSelectionDiv.hide()}).bind("contextmenu",function(){return!1}).appendTo(document.body),b._fillColumnSelection();var d=b._$mainContainer.offset(),e=c.pageY-d.top,f=c.pageX-d.left,g=100,h=b._$mainContainer.width();h>g&&f>h-g&&(f=h-g),b._$columnSelectionDiv.css({left:f,top:e,"min-width":g+"px"}).show()}})},_fillColumnSelection:function(){for(var b=this,c=a("<ul></ul>").addClass("jtable-column-select-list"),d=0;d<this._columnList.length;d++){var e=this._columnList[d],f=this.options.fields[e],g=a("<li></li>").appendTo(c),h=a('<label for="'+e+'"></label>').append(a("<span>"+(f.title||e)+"</span>")).appendTo(g),i=a('<input type="checkbox" name="'+e+'">').prependTo(h).click(function(){var c=a(this),d=c.attr("name"),e=b.options.fields[d];"fixed"!=e.visibility&&b.changeColumnVisibility(d,c.is(":checked")?"visible":"hidden")});"hidden"!=f.visibility&&i.attr("checked","checked"),"fixed"==f.visibility&&i.attr("disabled","disabled")}this._$columnSelectionDiv.html(c)},_createColumnResizeBar:function(){this._$columnResizeBar=a("<div />").addClass("jtable-column-resize-bar").appendTo(this._$mainContainer).hide()},_makeColumnResizable:function(b){var c=this;a("<div />").addClass("jtable-column-resize-handler").appendTo(b.find(".jtable-column-header-container")).mousedown(function(d){d.preventDefault(),d.stopPropagation();var e=c._$mainContainer.offset(),f=b.nextAll("th.jtable-column-header:visible:first");if(f.length){var g=10;c._currentResizeArgs={currentColumnStartWidth:b.outerWidth(),minWidth:g, +maxWidth:b.outerWidth()+f.outerWidth()-g,mouseStartX:d.pageX,minResizeX:function(){return this.mouseStartX-(this.currentColumnStartWidth-this.minWidth)},maxResizeX:function(){return this.mouseStartX+(this.maxWidth-this.currentColumnStartWidth)}};var h=function(a){if(c._currentResizeArgs){var b=c._normalizeNumber(a.pageX,c._currentResizeArgs.minResizeX(),c._currentResizeArgs.maxResizeX());c._$columnResizeBar.css("left",b-e.left+"px")}},i=function(d){if(c._currentResizeArgs){a(document).unbind("mousemove",h),a(document).unbind("mouseup",i),c._$columnResizeBar.hide();var e=d.pageX-c._currentResizeArgs.mouseStartX,g=c._normalizeNumber(c._currentResizeArgs.currentColumnStartWidth+e,c._currentResizeArgs.minWidth,c._currentResizeArgs.maxWidth),j=f.outerWidth()+(c._currentResizeArgs.currentColumnStartWidth-g),k=b.data("width-in-percent")/c._currentResizeArgs.currentColumnStartWidth;b.data("width-in-percent",g*k),f.data("width-in-percent",j*k),b.css("width",b.data("width-in-percent")+"%"),f.css("width",f.data("width-in-percent")+"%"),c._normalizeColumnWidths(),c._currentResizeArgs=null,c.options.saveUserPreferences&&c._saveColumnSettings()}};c._$columnResizeBar.show().css({top:b.offset().top-e.top+"px",left:d.pageX-e.left+"px",height:c._$table.outerHeight()+"px"}),a(document).bind("mousemove",h),a(document).bind("mouseup",i)}})},_normalizeColumnWidths:function(){var b=this._$table.find(">thead th.jtable-command-column-header").data("width-in-percent",1).css("width","1%"),c=this._$table.find(">thead th.jtable-column-header"),d=0;c.each(function(){var b=a(this);b.is(":visible")&&(d+=b.outerWidth())});var e={},f=100-b.length;c.each(function(){var b=a(this);if(b.is(":visible")){var c=b.data("fieldName"),g=b.outerWidth()*f/d;e[c]=g}}),c.each(function(){var b=a(this);if(b.is(":visible")){var c=b.data("fieldName");b.data("width-in-percent",e[c]).css("width",e[c]+"%")}})},_saveColumnSettings:function(){var b=this,c="";this._$table.find(">thead >tr >th.jtable-column-header").each(function(){var d=a(this),e=d.data("fieldName"),f=d.data("width-in-percent"),g=b.options.fields[e].visibility,h=e+"="+g+";"+f;c=c+h+"|"}),this._setCookie("column-settings",c.substr(0,c.length-1))},_loadColumnSettings:function(){var b=this,c=this._getCookie("column-settings");if(c){var d={};a.each(c.split("|"),function(a,b){var c=b.split("="),e=c[0],f=c[1].split(";");d[e]={columnVisibility:f[0],columnWidth:f[1]}});var e=this._$table.find(">thead >tr >th.jtable-column-header");e.each(function(){var c=a(this),e=c.data("fieldName"),f=b.options.fields[e];d[e]&&("fixed"!=f.visibility&&b._changeColumnVisibilityInternal(e,d[e].columnVisibility),c.data("width-in-percent",d[e].columnWidth).css("width",d[e].columnWidth+"%"))})}}})}(jQuery),function(a){var b={_removeRowsFromTable:a.hik.jtable.prototype._removeRowsFromTable};a.extend(!0,a.hik.jtable.prototype,{options:{openChildAsAccordion:!1},openChildTable:function(b,c,d){var e=this;void 0==c.jqueryuiTheme&&(c.jqueryuiTheme=e.options.jqueryuiTheme),c.showCloseButton=0!=c.showCloseButton,c.showCloseButton&&!c.closeRequested&&(c.closeRequested=function(){e.closeChildTable(b)}),e.options.openChildAsAccordion&&b.siblings(".jtable-data-row").each(function(){e.closeChildTable(a(this))}),e.closeChildTable(b,function(){var f=e.getChildRow(b).children("td").empty(),g=a("<div />").addClass("jtable-child-table-container").appendTo(f);f.data("childTable",g),g.jtable(c),e.openChildRow(b),g.hide().slideDown("fast",function(){d&&d({childTable:g})})})},closeChildTable:function(a,b){var c=this,d=this.getChildRow(a).children("td"),e=d.data("childTable");return e?(d.data("childTable",null),void e.slideUp("fast",function(){e.jtable("destroy"),e.remove(),c.closeChildRow(a),b&&b()})):void(b&&b())},isChildRowOpen:function(a){return this.getChildRow(a).is(":visible")},getChildRow:function(a){return a.data("childRow")||this._createChildRow(a)},openChildRow:function(a){var b=this.getChildRow(a);return b.is(":visible")||b.show(),b},closeChildRow:function(a){var b=this.getChildRow(a);b.is(":visible")&&b.hide()},_removeRowsFromTable:function(c,d){"deleted"==d&&c.each(function(){var b=a(this),c=b.data("childRow");c&&c.remove()}),b._removeRowsFromTable.apply(this,arguments)},_createChildRow:function(b){var c=this._$table.find("thead th").length,d=a("<tr></tr>").addClass("jtable-child-row").append('<td colspan="'+c+'"></td>');return b.after(d),b.data("childRow",d),d.hide(),d}})}(jQuery);
\ No newline at end of file diff --git a/package.json b/package.json index bed60b9..8e044ad 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jtable", - "version": "2.4.1", + "version": "2.5.0", "description": "A JQuery plugin to create AJAX based CRUD tables.", "main": "lib/jquery.jtable.js", "scripts": { |