From 090264e3b927d458fb8b4aaa29fcbd641f1be86d Mon Sep 17 00:00:00 2001 From: alekseybobkov Date: Sun, 11 Jan 2015 20:56:17 -0800 Subject: [PATCH] Minor fixes in the Inspector and Scrollbar classes. Minor updates in the Table widget. --- modules/backend/assets/css/october.css | 10 +++++++++- modules/backend/assets/js/october.controls.js | 5 ++++- modules/backend/assets/js/october.inspector.js | 15 ++++++++++++++- modules/backend/assets/js/october.scrollbar.js | 3 +++ .../backend/assets/less/controls/inspector.less | 7 ++++++- modules/backend/widgets/Table.php | 1 + modules/backend/widgets/table/README.md | 1 + .../backend/widgets/table/assets/js/table-min.js | 4 ++-- .../backend/widgets/table/assets/js/table-min.map | 2 +- modules/backend/widgets/table/assets/js/table.js | 9 +++++++-- modules/backend/widgets/table/partials/_table.htm | 1 + 11 files changed, 49 insertions(+), 9 deletions(-) diff --git a/modules/backend/assets/css/october.css b/modules/backend/assets/css/october.css index 3a1994367..3cc80e50d 100644 --- a/modules/backend/assets/css/october.css +++ b/modules/backend/assets/css/october.css @@ -13833,13 +13833,21 @@ html.cssanimations .fancy-layout .form-tabless-fields .loading-indicator-contain line-height: 29px; padding-left: 12px; padding-right: 3px; + -webkit-border-radius: 0 !important; + -moz-border-radius: 0 !important; + border-radius: 0 !important; } .inspector-fields div.custom-select.select2-container .select2-choice.select2-default { - font-weight: normal!Important; + font-weight: normal!important; } .inspector-fields div.custom-select.select2-container .loading-indicator > span { top: 15px; } +.inspector-fields div.custom-select.select2-container.select2-dropdown-open { + -webkit-border-radius: 0 !important; + -moz-border-radius: 0 !important; + border-radius: 0 !important; +} .inspector-fields div.custom-select.select2-container.select2-dropdown-open .select2-choice { background: white; } diff --git a/modules/backend/assets/js/october.controls.js b/modules/backend/assets/js/october.controls.js index cc25822aa..10bc21da9 100644 --- a/modules/backend/assets/js/october.controls.js +++ b/modules/backend/assets/js/october.controls.js @@ -46,7 +46,10 @@ return state.text } - $('select.custom-select').select2({ + $('select.custom-select:not([data-no-auto-update-on-render=true])').select2({ + // The data-no-auto-update-on-render attribute allows to disable the + // selec2 automatic initialization for edge cases. + formatResult: formatSelectOption, formatSelection: formatSelectOption, escapeMarkup: function(m) { return m; } diff --git a/modules/backend/assets/js/october.inspector.js b/modules/backend/assets/js/october.inspector.js index a238e1bf0..0c887eae9 100644 --- a/modules/backend/assets/js/october.inspector.js +++ b/modules/backend/assets/js/october.inspector.js @@ -166,7 +166,7 @@ Inspector.prototype.init = function() { // Exit if there are no properties - if (this.config.length == 0) + if (!this.config || this.config.length == 0) return var self = this, @@ -736,6 +736,13 @@ }) $('[data-toggle=tooltip]', this.$el.data('oc.popover').$container).tooltip('hide') + + if (!e.isDefaultPrevented()) { + $.each(this.editors, function() { + if (this.cleanup) + this.cleanup() + }) + } } Inspector.prototype.editorExternalPropertyEnabled = function(editor) { @@ -970,6 +977,8 @@ var value = this.inspector.readProperty(this.fieldDef.property), self = this + $(this.selector).attr('data-no-auto-update-on-render', 'true') + $(this.selector).val(value) if (!Modernizr.touch) { @@ -1083,6 +1092,10 @@ this.loadOptions(false) } + InspectorEditorDropdown.prototype.cleanup = function() { + $(this.selector).select2('destroy') + } + $.oc.inspector.editors.inspectorEditorDropdown = InspectorEditorDropdown; // INSPECTOR PLUGIN DEFINITION diff --git a/modules/backend/assets/js/october.scrollbar.js b/modules/backend/assets/js/october.scrollbar.js index de5130962..cbc95db3c 100644 --- a/modules/backend/assets/js/october.scrollbar.js +++ b/modules/backend/assets/js/october.scrollbar.js @@ -212,6 +212,9 @@ } Scrollbar.prototype.update = function() { + if (!this.$scrollbar) + return + this.$scrollbar.hide() this.setThumbSize() this.setThumbPosition() diff --git a/modules/backend/assets/less/controls/inspector.less b/modules/backend/assets/less/controls/inspector.less index a1df18c79..4b8a4cb2d 100644 --- a/modules/backend/assets/less/controls/inspector.less +++ b/modules/backend/assets/less/controls/inspector.less @@ -274,9 +274,10 @@ line-height: 29px; padding-left: 12px; padding-right: 3px; + .border-radius(0)!important; &.select2-default { - font-weight: normal!Important; + font-weight: normal!important; } } @@ -287,6 +288,8 @@ } &.select2-dropdown-open { + .border-radius(0)!important; + .select2-choice { background: white; } @@ -333,6 +336,8 @@ div.control-popover { td { font-weight: 400!important; } + + } } } diff --git a/modules/backend/widgets/Table.php b/modules/backend/widgets/Table.php index ef29b8c02..a54a7e78e 100644 --- a/modules/backend/widgets/Table.php +++ b/modules/backend/widgets/Table.php @@ -108,6 +108,7 @@ class Table extends WidgetBase $this->vars['deleting'] = $this->getConfig('deleting', true); $this->vars['toolbar'] = $this->getConfig('toolbar', true); $this->vars['height'] = $this->getConfig('height', false) ?: 'false'; + $this->vars['dynamicHeight'] = $this->getConfig('dynamicHeight', false) ?: 'false'; $isClientDataSource = $this->isClientDataSource(); diff --git a/modules/backend/widgets/table/README.md b/modules/backend/widgets/table/README.md index e874e68be..8e7387c4e 100644 --- a/modules/backend/widgets/table/README.md +++ b/modules/backend/widgets/table/README.md @@ -176,6 +176,7 @@ The widget is configured with YAML file. Required parameters: * `deleting` - indicates if record deleting is allowed, default is **true**. * `toolbar` - specifies if the toolbar should be visible, default is **true**. * `height` - specifies the data table height, in pixels. The default value is **false** - the height is not limited. +* `dynamicHeight` - determines if the `height` parameter should work as a max height. When this option is enabled and the table height is less than the `height` value, it won't be scrollable. The `dataSource` parameter can take aliases for some data source classes for the simpler configuration syntax. Known aliases are: diff --git a/modules/backend/widgets/table/assets/js/table-min.js b/modules/backend/widgets/table/assets/js/table-min.js index afaf1ba8d..b40631a62 100644 --- a/modules/backend/widgets/table/assets/js/table-min.js +++ b/modules/backend/widgets/table/assets/js/table-min.js @@ -1,3 +1,3 @@ -+function(t){"use strict";void 0===t.oc&&(t.oc={}),void 0===t.oc.table&&(t.oc.table={});var e=function(e,o){this.el=e,this.$el=t(e),this.options=o,this.dataSource=null,this.cellProcessors={},this.activeCellProcessor=null,this.activeCell=null,this.tableContainer=null,this.dataTableContainer=null,this.editedRowKey=null,this.dataTable=null,this.headerTable=null,this.toolbar=null,this.clickHandler=this.onClick.bind(this),this.keydownHandler=this.onKeydown.bind(this),this.documentClickHandler=this.onDocumentClick.bind(this),this.toolbarClickHandler=this.onToolbarClick.bind(this),this.options.postback&&"client"==this.options.clientDataSourceClass&&(this.formSubmitHandler=this.onFormSubmit.bind(this)),this.navigation=null,this.recordsAddedOrDeleted=0,this.init()};e.prototype.init=function(){this.createDataSource(),this.initCellProcessors(),this.navigation=new t.oc.table.helper.navigation(this),this.buildUi(),this.registerHandlers()},e.prototype.disposeCellProcessors=function(){for(var t=0,e=this.options.columns.length;e>t;t++){var o=this.options.columns[t].key;this.cellProcessors[o].dispose(),this.cellProcessors[o]=null}this.cellProcessors=null,this.activeCellProcessor=null},e.prototype.createDataSource=function(){var e=this.options.clientDataSourceClass;if(void 0===t.oc.table.datasource||void 0==t.oc.table.datasource[e])throw new Error('The table client-side data source class "'+e+'" is not found in the $.oc.table.datasource namespace.');this.dataSource=new t.oc.table.datasource[e](this)},e.prototype.registerHandlers=function(){this.el.addEventListener("click",this.clickHandler),this.el.addEventListener("keydown",this.keydownHandler),document.addEventListener("click",this.documentClickHandler),this.options.postback&&"client"==this.options.clientDataSourceClass&&this.$el.closest("form").bind("oc.beforeRequest",this.formSubmitHandler);var t=this.getToolbar();t&&t.addEventListener("click",this.toolbarClickHandler)},e.prototype.unregisterHandlers=function(){this.el.removeEventListener("click",this.clickHandler),document.removeEventListener("click",this.documentClickHandler),this.clickHandler=null,this.el.removeEventListener("keydown",this.keydownHandler),this.keydownHandler=null;var t=this.getToolbar();t&&t.removeEventListener("click",this.toolbarClickHandler),this.toolbarClickHandler=null,this.formSubmitHandler&&(this.$el.closest("form").unbind("oc.beforeRequest",this.formSubmitHandler),this.formSubmitHandler=null)},e.prototype.initCellProcessors=function(){for(var e=0,o=this.options.columns.length;o>e;e++){var i=this.options.columns[e],a=i.key,n=i.type;if(void 0===n&&(n="string",this.options.columns[e].type=n),void 0===t.oc.table.processor||void 0==t.oc.table.processor[n])throw new Error('The table cell processor for the column type "'+n+'" is not found in the $.oc.table.processor namespace.');this.cellProcessors[a]=new t.oc.table.processor[n](this,a,i)}},e.prototype.getCellProcessor=function(t){return this.cellProcessors[t]},e.prototype.buildUi=function(){this.tableContainer=document.createElement("div"),this.tableContainer.setAttribute("class","table-container"),this.options.toolbar&&this.buildToolbar(),this.tableContainer.appendChild(this.buildHeaderTable()),this.el.insertBefore(this.tableContainer,this.el.children[0]),this.dataTableContainer=this.options.height?this.buildScrollbar():this.tableContainer,this.updateDataTable()},e.prototype.buildToolbar=function(){if(this.options.adding||this.options.deleting){if(this.toolbar=document.createElement("div"),this.toolbar.setAttribute("class","toolbar"),this.options.adding){var t=document.createElement("a");if(t.setAttribute("class","btn add-table-row-below"),t.setAttribute("data-cmd","record-add-below"),this.toolbar.appendChild(t),this.navigation.paginationEnabled()||!this.options.rowSorting)t.textContent="Add row";else{t.textContent="Add row below";var e=document.createElement("a");e.setAttribute("class","btn add-table-row-above"),e.textContent="Add row above",e.setAttribute("data-cmd","record-add-above"),this.toolbar.appendChild(e)}}if(this.options.deleting){var o=document.createElement("a");o.setAttribute("class","btn delete-table-row"),o.textContent="Delete row",o.setAttribute("data-cmd","record-delete"),this.toolbar.appendChild(o)}this.tableContainer.appendChild(this.toolbar)}},e.prototype.buildScrollbar=function(){var e=document.createElement("div"),o=document.createElement("div");return e.setAttribute("class","control-scrollbar"),e.setAttribute("style","height: "+this.options.height+"px"),e.appendChild(o),this.tableContainer.appendChild(e),t(e).scrollbar({animation:!1}),o},e.prototype.buildHeaderTable=function(){var t=document.createElement("table"),e=document.createElement("tr");t.className="headers",t.appendChild(e);for(var o=0,i=this.options.columns.length;i>o;o++){var a=document.createElement("th");this.options.columns[o].width&&a.setAttribute("style","width: "+this.options.columns[o].width),void 0!==a.textContent?a.textContent=this.options.columns[o].title:a.innerText=this.options.columns[o].title,e.appendChild(a)}return this.headerTable=t,t},e.prototype.updateDataTable=function(t){var e=this;this.unfocusTable(),this.fetchRecords(function o(i,a){e.buildDataTable(i,a),t&&t(),0==a&&e.addRecord("above",!0),e=null})},e.prototype.updateColumnWidth=function(){for(var t=this.headerTable.querySelectorAll("th"),e=this.dataTable.querySelectorAll("tr:first-child td"),o=0,i=t.length;i>o;o++)e[o]&&e[o].setAttribute("style",t[o].getAttribute("style"))},e.prototype.buildDataTable=function(t,e){var o=document.createElement("table"),i=document.createElement("tbody"),a=this.options.keyColumn;o.setAttribute("class","data");for(var n=0,s=t.length;s>n;n++){var r=document.createElement("tr");if(void 0===t[n][a])throw new Error("The row attribute "+a+" is not set for the row #"+n);r.setAttribute("data-row",t[n][a]);for(var l=0,c=this.options.columns.length;c>l;l++){var d=document.createElement("td"),h=document.createElement("input"),u=document.createElement("div"),p=this.options.columns[l],b=p.key,v=this.getCellProcessor(b);d.setAttribute("data-column",b),d.setAttribute("data-column-type",p.type),h.setAttribute("type","hidden"),h.setAttribute("data-container","data-container"),h.value=void 0!==t[n][b]?t[n][b]:"",u.setAttribute("class","content-container"),d.appendChild(u),r.appendChild(d),d.appendChild(h),v.renderCell(t[n][b],u)}i.appendChild(r)}o.appendChild(i),null!==this.dataTable?this.dataTableContainer.replaceChild(o,this.dataTable):this.dataTableContainer.appendChild(o),this.dataTable=o,this.updateColumnWidth(),this.updateScrollbar(),this.navigation.buildPagination(e)},e.prototype.fetchRecords=function(t){this.dataSource.getRecords(this.navigation.getPageFirstRowOffset(),this.options.recordsPerPage,t)},e.prototype.updateScrollbar=function(){this.options.height&&t(this.dataTableContainer.parentNode).data("oc.scrollbar").update()},e.prototype.scrollCellIntoView=function(){this.options.height&&this.activeCell&&t(this.dataTableContainer.parentNode).data("oc.scrollbar").gotoElement(this.activeCell)},e.prototype.disposeScrollbar=function(){this.options.height&&(t(this.dataTableContainer.parentNode).data("oc.scrollbar").dispose(),t(this.dataTableContainer.parentNode).data("oc.scrollbar",null))},e.prototype.setActiveProcessor=function(t){this.activeCellProcessor&&this.activeCellProcessor.onUnfocus(),this.activeCellProcessor=t},e.prototype.commitEditedRow=function(){if(null!==this.editedRowKey){var t=this.dataTable.querySelector('tr[data-row="'+this.editedRowKey+'"]');if(t&&1==t.getAttribute("data-dirty")){for(var e=t.children,o={},i=0,a=e.length;a>i;i++){var n=e[i];o[n.getAttribute("data-column")]=this.getCellValue(n)}this.dataSource.updateRecord(this.editedRowKey,o),t.setAttribute("data-dirty",0)}}},e.prototype.unfocusTable=function(){this.elementRemoveClass(this.el,"active"),this.activeCellProcessor&&this.activeCellProcessor.onUnfocus(),this.commitEditedRow(),this.activeCellProcessor=null,this.activeCell&&this.activeCell.setAttribute("class",""),this.activeCell=null},e.prototype.focusTable=function(){this.elementAddClass(this.el,"active")},e.prototype.focusCell=function(t,e){var o=t.getAttribute("data-column");if(null!==o){this.focusTable();var i=this.getCellProcessor(o);if(!i)throw new Error("Cell processor not found for the column "+o);this.activeCell!==t&&(this.activeCell&&this.elementRemoveClass(this.activeCell,"active"),this.setActiveProcessor(i),this.activeCell=t,i.isCellFocusable()&&this.elementAddClass(this.activeCell,"active"));var a=this.getCellRowKey(t);null!==this.editedRowKey&&a!=this.editedRowKey&&this.commitEditedRow(),this.editedRowKey=a,i.onFocus(t,e),this.scrollCellIntoView()}},e.prototype.markCellRowDirty=function(t){t.parentNode.setAttribute("data-dirty",1)},e.prototype.addRecord=function(t,e){this.activeCell&&!this.navigation.paginationEnabled()&&this.options.rowSorting||(t="bottom");var o=null,i=null;if(("above"==t||"below"==t)&&(o=this.getCellRowKey(this.activeCell),i=this.getCellRowIndex(this.activeCell)),this.unfocusTable(),this.navigation.paginationEnabled()){var a=this.navigation.getNewRowPage(t,i);if(a!=this.navigation.pageIndex&&!this.validate())return;this.navigation.pageIndex=a}this.recordsAddedOrDeleted++;var n=this.options.keyColumn,s={},r=this;s[n]=-1*this.recordsAddedOrDeleted,this.dataSource.createRecord(s,t,o,this.navigation.getPageFirstRowOffset(),this.options.recordsPerPage,function l(t,o){r.buildDataTable(t,o);var i=r.findRowByKey(s[n]);if(!i)throw new Error("New row is not found in the updated table: "+s[n]);e||r.navigation.focusCell(i,0),r=null})},e.prototype.deleteRecord=function(){if(this.activeCell){var t=this.getCellRowIndex(this.activeCell),e=this.getCellRowKey(this.activeCell),o=this,i=this.navigation.paginationEnabled(),a=this.navigation.pageIndex,n=this.activeCell.cellIndex;i&&(this.navigation.pageIndex=this.navigation.getPageAfterDeletion(t)),this.recordsAddedOrDeleted++;var s=this.options.keyColumn,r={};r[s]=-1*this.recordsAddedOrDeleted,this.dataSource.deleteRecord(e,r,this.navigation.getPageFirstRowOffset(),this.options.recordsPerPage,function l(e,s){o.buildDataTable(e,s),i&&a!=o.navigation.pageIndex?o.navigation.focusCell("bottom",n):o.navigation.focusCellInReplacedRow(t,n),o=null})}},e.prototype.notifyRowProcessorsOnChange=function(t){for(var e=t.getAttribute("data-column"),o=t.parentNode,i=0,a=o.children.length;a>i;i++){var n=this.options.columns[i].key;this.cellProcessors[n].onRowValueChanged(e,o.children[i])}},e.prototype.getToolbar=function(){return this.tableContainer.querySelector("div.toolbar")},e.prototype.validate=function(){for(var e=this.dataTable.querySelectorAll("tbody tr[data-row]"),o=0,i=e.length;i>o;o++){var a=e[o];this.elementRemoveClass(a,"error")}for(var o=0,n=e.length;n>o;o++){for(var a=e[o],s=this.getRowData(a),r=0,l=a.children.length;l>r;r++)this.elementRemoveClass(a.children[r],"error");for(var c in s){var d=this.getCellProcessor(c),h=d.validate(s[c],s);if(void 0!==h){var u=a.querySelector('td[data-column="'+c+'"]'),p=this;return this.elementAddClass(a,"error"),this.elementAddClass(u,"error"),t.oc.flashMsg({text:h,"class":"error"}),window.setTimeout(function(){p.focusCell(u,!1),u=null,p=null,d=null},100),!1}}}return!0},e.prototype.onClick=function(t){if(this.focusTable(),this.navigation.onClick(t)!==!1){for(var e=0,o=this.options.columns.length;o>e;e++){var i=this.options.columns[e].key;this.cellProcessors[i].onClick(t)}var a=this.getEventTarget(t,"TD");a&&"TD"==a.tagName&&this.focusCell(a,!0)}},e.prototype.onKeydown=function(t){if(65==t.keyCode&&t.altKey&&this.options.adding)return this.addRecord(t.shiftKey?"above":"below"),void this.stopEvent(t);if(68==t.keyCode&&t.altKey&&this.options.deleting)return this.deleteRecord(),void this.stopEvent(t);for(var e=0,o=this.options.columns.length;o>e;e++){var i=this.options.columns[e].key;this.cellProcessors[i].onKeyDown(t)}this.navigation.onKeydown(t)===!1},e.prototype.onFormSubmit=function(t,e){if(e.handler==this.options.postbackHandlerName){if(this.unfocusTable(),!this.validate())return void t.preventDefault();var o=this.options.alias.indexOf("[")>-1?this.options.alias+"[TableData]":this.options.alias+"TableData";e.options.data[o]=this.dataSource.getAllData()}},e.prototype.onToolbarClick=function(t){var e=this.getEventTarget(t),o=e.getAttribute("data-cmd");switch(o){case"record-add-below":this.addRecord("below");break;case"record-add-above":this.addRecord("above");break;case"record-delete":this.deleteRecord()}this.stopEvent(t)},e.prototype.onDocumentClick=function(t){var e=this.getEventTarget(t);this.parentContainsElement(this.el,e)||this.activeCellProcessor&&this.activeCellProcessor.elementBelongsToProcessor(e)||this.unfocusTable()},e.prototype.dispose=function(){this.unfocusTable(),this.dataSource.dispose(),this.dataSource=null,this.unregisterHandlers(),this.dataTable=null,this.headerTable=null,this.toolbar=null,this.disposeCellProcessors(),this.navigation.dispose(),this.navigation=null,this.disposeScrollbar(),this.el=null,this.tableContainer=null,this.$el=null,this.dataTableContainer=null,this.activeCell=null},e.prototype.getElement=function(){return this.el},e.prototype.getAlias=function(){return this.options.alias},e.prototype.getTableContainer=function(){return this.tableContainer},e.prototype.getDataTableBody=function(){return this.dataTable.children[0]},e.prototype.getEventTarget=function(t,e){var o=t.target?t.target:t.srcElement;if(void 0===e)return o;for(var i=o.tagName;i!=e;){if(o=o.parentNode,!o)return null;i=o.tagName}return o},e.prototype.stopEvent=function(t){t.stopPropagation?t.stopPropagation():t.cancelBubble=!0,t.preventDefault?t.preventDefault():t.returnValue=!1},e.prototype.elementHasClass=function(t,e){return t.classList?t.classList.contains(e):new RegExp("(^| )"+e+"( |$)","gi").test(t.className)},e.prototype.elementAddClass=function(t,e){this.elementHasClass(t,e)||(t.classList?t.classList.add(e):t.className+=" "+e)},e.prototype.elementRemoveClass=function(t,e){t.classList?t.classList.remove(e):t.className=t.className.replace(new RegExp("(^|\\b)"+e.split(" ").join("|")+"(\\b|$)","gi")," ")},e.prototype.parentContainsElement=function(t,e){for(;e&&e!=t;)e=e.parentNode;return e?!0:!1},e.prototype.getCellValue=function(t){return t.querySelector("[data-container]").value},e.prototype.getCellRowKey=function(t){return parseInt(t.parentNode.getAttribute("data-row"))},e.prototype.findRowByKey=function(t){return this.dataTable.querySelector('tbody tr[data-row="'+t+'"]')},e.prototype.findRowByIndex=function(t){return this.getDataTableBody().children[t]},e.prototype.getCellRowIndex=function(t){return parseInt(t.parentNode.rowIndex)},e.prototype.getRowCellValueByColumnName=function(t,e){var o=t.querySelector('td[data-column="'+e+'"]');return o?this.getCellValue(o):o},e.prototype.getRowData=function(t){for(var e={},o=0,i=t.children.length;i>o;o++){var a=t.children[o];e[a.getAttribute("data-column")]=this.getCellValue(a)}return e},e.prototype.setCellValue=function(t,e){var o=t.querySelector("[data-container]");o.value!=e&&(o.value=e,this.markCellRowDirty(t),this.notifyRowProcessorsOnChange(t))},e.DEFAULTS={clientDataSourceClass:"client",keyColumn:"id",recordsPerPage:!1,data:null,postback:!0,postbackHandlerName:"onSave",adding:!0,deleting:!0,toolbar:!0,rowSorting:!1,height:!1};var o=t.fn.table;t.fn.table=function(o){var i=Array.prototype.slice.call(arguments,1),a=void 0;return this.each(function(){var n=t(this),s=n.data("oc.table"),r=t.extend({},e.DEFAULTS,n.data(),"object"==typeof o&&o);return s||n.data("oc.table",s=new e(this,r)),"string"==typeof o&&(a=s[o].apply(s,i)),"undefined"!=typeof a?!1:void 0}),a?a:this},t.fn.table.Constructor=e,t.oc.table.table=e,t.fn.table.noConflict=function(){return t.fn.table=o,this},t(document).on("render",function(){t("div[data-control=table]").table()})}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");void 0===t.oc.table.datasource&&(t.oc.table.datasource={});var e=function(t){this.tableObj=t};e.prototype.dispose=function(){this.tableObj=null},e.prototype.getRecords=function(t,e,o){o([])},e.prototype.createRecord=function(t,e,o,i,a,n){n([],0)},e.prototype.updateRecord=function(t,e){},e.prototype.deleteRecord=function(t,e,o,i,a){a([],0)},t.oc.table.datasource.base=e}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");void 0===t.oc.table.processor&&(t.oc.table.processor={});var e=function(t,e,o){this.tableObj=t,this.columnName=e,this.columnConfiguration=o,this.activeCell=null,this.validators=[],this.registerHandlers(),this.initValidators()};e.prototype.dispose=function(){this.unregisterHandlers(),this.tableObj=null,this.activeCell=null},e.prototype.renderCell=function(t,e){},e.prototype.registerHandlers=function(){},e.prototype.unregisterHandlers=function(){},e.prototype.onFocus=function(t,e){},e.prototype.onUnfocus=function(){},e.prototype.onKeyDown=function(t){},e.prototype.onClick=function(t){},e.prototype.onRowValueChanged=function(t,e){},e.prototype.keyNavigationAllowed=function(t,e){return!0},e.prototype.isCellFocusable=function(){return!0},e.prototype.getCellContentContainer=function(t){return t.querySelector(".content-container")},e.prototype.createViewContainer=function(t,e){var o=document.createElement("div");return o.setAttribute("data-view-container","data-view-container"),o.textContent=e,t.appendChild(o),o},e.prototype.getViewContainer=function(t){return t.querySelector("[data-view-container]")},e.prototype.showViewContainer=function(t){return this.getViewContainer(t).setAttribute("class","")},e.prototype.hideViewContainer=function(t){return this.getViewContainer(t).setAttribute("class","hide")},e.prototype.setViewContainerValue=function(t,e){return this.getViewContainer(t).textContent=e},e.prototype.elementBelongsToProcessor=function(t){return!1},e.prototype.initValidators=function(){if(void 0!==this.columnConfiguration.validation)for(var e in this.columnConfiguration.validation){if(void 0===t.oc.table.validator||void 0==t.oc.table.validator[e])throw new Error('The table cell validator "'+e+'" for the column "'+this.columnName+'" is not found in the $.oc.table.validator namespace.');var o=new t.oc.table.validator[e](this.columnConfiguration.validation[e]);this.validators.push(o)}},e.prototype.validate=function(t,e){for(var o=0,i=this.validators.length;i>o;o++){var a=this.validators[o].validate(t,e);if(void 0!==a)return a}},t.oc.table.processor.base=e}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");void 0===t.oc.table.helper&&(t.oc.table.helper={});var e=function(t){this.tableObj=t,this.pageIndex=0,this.pageCount=0,this.init()};e.prototype.init=function(){},e.prototype.dispose=function(){this.tableObj=null},e.prototype.paginationEnabled=function(){return null!=this.tableObj.options.recordsPerPage&&0!=this.tableObj.options.recordsPerPage},e.prototype.getPageFirstRowOffset=function(){return this.pageIndex*this.tableObj.options.recordsPerPage},e.prototype.buildPagination=function(t){if(this.paginationEnabled()){var e=this.tableObj.getElement().querySelector(".pagination"),o=!1,i=0;if(this.pageCount=this.calculatePageCount(t,this.tableObj.options.recordsPerPage),e?i=this.getRecordCount(e):(e=document.createElement("div"),e.setAttribute("class","pagination"),o=!0),o||i!=t){e.setAttribute("data-record-count",t);var a=this.buildPaginationLinkList(t,this.tableObj.options.recordsPerPage,this.pageIndex);o?(e.appendChild(a),this.tableObj.getElement().appendChild(e)):e.replaceChild(a,e.children[0])}else this.markActiveLinkItem(e,this.pageIndex)}},e.prototype.calculatePageCount=function(t,e){var o=Math.ceil(t/e);return o||(o=1),o},e.prototype.getRecordCount=function(t){var e=t?t:this.tableObj.getElement().querySelector(".pagination");return parseInt(e.getAttribute("data-record-count"))},e.prototype.buildPaginationLinkList=function(t,e,o){for(var i=this.calculatePageCount(t,e),a=document.createElement("ul"),n=0;i>n;n++){var s=document.createElement("li"),r=document.createElement("a");n==o&&s.setAttribute("class","active"),r.innerText=n+1,r.setAttribute("data-page-index",n),r.setAttribute("href","#"),s.appendChild(r),a.appendChild(s)}return a},e.prototype.markActiveLinkItem=function(t,e){var o=t.querySelector(".active"),i=t.children[0];o.setAttribute("class","");for(var a=0,n=i.children.length;n>a;a++)a==e&&i.children[a].setAttribute("class","active")},e.prototype.gotoPage=function(t,e){this.tableObj.unfocusTable(),this.tableObj.validate()&&(this.pageIndex=t,this.tableObj.updateDataTable(e))},e.prototype.getRowCountOnPage=function(t){return this.tableObj.getDataTableBody().children.length},e.prototype.getNewRowPage=function(t,e){var o=this.getRecordCount();return"bottom"===t?this.calculatePageCount(o+1,this.tableObj.options.recordsPerPage)-1:"above"==t?this.pageIndex:"below"==t&&e==this.tableObj.options.recordsPerPage-1?this.pageIndex+1:this.pageIndex},e.prototype.getPageAfterDeletion=function(t){return 0==t&&1==this.getRowCountOnPage()?0==this.pageIndex?0:this.pageIndex-1:this.pageIndex},e.prototype.navigateDown=function(t,e){if(this.tableObj.activeCell&&(!this.tableObj.activeCellProcessor||this.tableObj.activeCellProcessor.keyNavigationAllowed(t,"down"))){var o=this.tableObj.activeCell.parentNode,i=t.shiftKey?o.parentNode.children[o.parentNode.children.length-1]:o.nextElementSibling,a=void 0!==e?e:this.tableObj.activeCell.cellIndex;if(i){var n=i.children[a];n&&this.tableObj.focusCell(n)}else{if(!this.paginationEnabled())return;if(this.pageIndex0){var r=this;this.gotoPage(this.pageIndex-1,function l(){r.focusCell("bottom",n),r=null})}}}},e.prototype.navigateLeft=function(t,e){if(this.tableObj.activeCell&&(e||!this.tableObj.activeCellProcessor||this.tableObj.activeCellProcessor.keyNavigationAllowed(t,"left"))){var o=this.tableObj.activeCell.parentNode,i=!t.shiftKey||e?this.tableObj.activeCell.cellIndex-1:0,a=o.children[i];a?this.tableObj.focusCell(a):this.navigateUp(t,o.children.length-1,e)}},e.prototype.navigateRight=function(t,e){if(this.tableObj.activeCell&&(e||!this.tableObj.activeCellProcessor||this.tableObj.activeCellProcessor.keyNavigationAllowed(t,"right"))){var o=this.tableObj.activeCell.parentNode,i=t.shiftKey?o.children.length-1:this.tableObj.activeCell.cellIndex+1,a=o.children[i];a?this.tableObj.focusCell(a):this.navigateDown(t,0)}},e.prototype.navigateNext=function(t){this.tableObj.activeCell&&(!this.tableObj.activeCellProcessor||this.tableObj.activeCellProcessor.keyNavigationAllowed(t,"tab"))&&(t.shiftKey?this.navigateLeft(t,!0):this.navigateRight(t,!0),this.tableObj.stopEvent(t))},e.prototype.focusCell=function(t,e){var o=null,i=this.tableObj.getDataTableBody();if("object"==typeof t?o=t:"bottom"==t?o=i.children[i.children.length-1]:"top"==t&&(o=i.children[0]),o){var a=o.children[e];a&&this.tableObj.focusCell(a)}},e.prototype.focusCellInReplacedRow=function(t,e){if(0==t)this.focusCell("top",e);else{var o=this.tableObj.findRowByIndex(t);o||(o=this.tableObj.findRowByIndex(t-1)),o?this.focusCell(o,e):this.focusCell("top",e)}},e.prototype.onKeydown=function(t){return 40==t.keyCode?this.navigateDown(t):38==t.keyCode?this.navigateUp(t):37==t.keyCode?this.navigateLeft(t):39==t.keyCode?this.navigateRight(t):9==t.keyCode?this.navigateNext(t):void 0},e.prototype.onClick=function(t){var e=this.tableObj.getEventTarget(t,"A");if(e){var o=parseInt(e.getAttribute("data-page-index"));if(null!==o)return this.gotoPage(o),this.tableObj.stopEvent(t),!1}},t.oc.table.helper.navigation=e}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.datasource)throw new Error("The $.oc.table.datasource namespace is not defined. Make sure that the table.datasource.base.js script is loaded.");var e=t.oc.table.datasource.base,o=e.prototype,i=function(t){e.call(this,t);var o=t.getElement().getAttribute("data-data");if(null===o||void 0===o)throw new Error("The required data-data attribute is not found on the table control element.");this.data=JSON.parse(o)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.dispose=function(){o.dispose.call(this),this.data=null},i.prototype.getRecords=function(t,e,o){e?o(this.data.slice(t,t+e),this.data.length):o(this.data,this.data.length)},i.prototype.createRecord=function(t,e,o,i,a,n){if("bottom"===e)this.data.push(t);else if("above"==e||"below"==e){var s=this.getIndexOfKey(o);"below"==e&&s++,this.data.splice(s,0,t)}this.getRecords(i,a,n)},i.prototype.updateRecord=function(t,e){var o=this.getIndexOfKey(t);if(-1===o)throw new Error("Record with they key "+t+" is not found in the data set");e[this.tableObj.options.keyColumn]=t,this.data[o]=e},e.prototype.deleteRecord=function(t,e,o,i,a){var n=this.getIndexOfKey(t);if(-1===n)throw new Error("Record with they key "+t+" is not found in the data set");this.data.splice(n,1),0==this.data.length&&this.data.push(e),this.getRecords(o,i,a)},i.prototype.getIndexOfKey=function(t){var e=this.tableObj.options.keyColumn;return this.data.map(function(t){return t[e]+""}).indexOf(t+"")},i.prototype.getAllData=function(){return this.data},t.oc.table.datasource.client=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.processor)throw new Error("The $.oc.table.processor namespace is not defined. Make sure that the table.processor.base.js script is loaded.");var e=t.oc.table.processor.base,o=e.prototype,i=function(t,o,i){e.call(this,t,o,i)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.dispose=function(){o.dispose.call(this)},i.prototype.isCellFocusable=function(){return!1},i.prototype.renderCell=function(t,e){var o=document.createElement("div");o.setAttribute("data-checkbox-element","true"),o.setAttribute("tabindex","0"),t&&0!=t&&"false"!=t&&o.setAttribute("class","checked"),e.appendChild(o)},i.prototype.onFocus=function(t,e){t.querySelector("div[data-checkbox-element]").focus()},i.prototype.onKeyDown=function(t){32==t.keyCode&&this.onClick(t)},i.prototype.onClick=function(t){var e=this.tableObj.getEventTarget(t,"DIV");e.getAttribute("data-checkbox-element")&&this.changeState(e)},i.prototype.changeState=function(t){var e=t.parentNode.parentNode;"checked"==t.getAttribute("class")?(t.setAttribute("class",""),this.tableObj.setCellValue(e,0)):(t.setAttribute("class","checked"),this.tableObj.setCellValue(e,1))},t.oc.table.processor.checkbox=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.processor)throw new Error("The $.oc.table.processor namespace is not defined. Make sure that the table.processor.base.js script is loaded.");var e=t.oc.table.processor.base,o=e.prototype,i=function(t,o,i){this.itemListElement=null,this.cachedOptionPromises={},this.itemClickHandler=this.onItemClick.bind(this),this.itemKeyDownHandler=this.onItemKeyDown.bind(this),e.call(this,t,o,i)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.dispose=function(){this.unregisterListHandlers(),this.itemClickHandler=null,this.itemKeyDownHandler=null,this.itemListElement=null,this.cachedOptionPromises=null,o.dispose.call(this)},i.prototype.unregisterListHandlers=function(){this.itemListElement&&(this.itemListElement.removeEventListener("click",this.itemClickHandler),this.itemListElement.removeEventListener("keydown",this.itemKeyDownHandler))},i.prototype.renderCell=function(t,e){var o=this.createViewContainer(e,"...");this.fetchOptions(e.parentNode,function i(a){void 0!==a[t]&&(o.textContent=a[t]),e.setAttribute("tabindex",0)})},i.prototype.onFocus=function(t,e){if(this.activeCell===t)return void this.showDropdown();this.activeCell=t;var o=this.getCellContentContainer(t);this.buildEditor(t,o,e),e||o.focus()},i.prototype.onUnfocus=function(){this.activeCell&&(this.unregisterListHandlers(),this.hideDropdown(),this.itemListElement=null,this.activeCell=null)},i.prototype.buildEditor=function(t,e,o){var i=this.tableObj.getCellValue(t),a=this.getAbsolutePosition(e);self=this,this.itemListElement=document.createElement("div"),this.itemListElement.addEventListener("click",this.itemClickHandler),this.itemListElement.addEventListener("keydown",this.itemKeyDownHandler),this.itemListElement.setAttribute("class","table-control-dropdown-list"),this.itemListElement.style.width=e.offsetWidth+"px",this.itemListElement.style.left=a.left+"px",this.itemListElement.style.top=a.top-2+e.offsetHeight+"px",this.fetchOptions(t,function n(t){var e=document.createElement("ul");for(var a in t){var n=document.createElement("li");n.setAttribute("data-value",a),n.textContent=t[a],n.setAttribute("tabindex",0),a==i&&n.setAttribute("class","selected"),e.appendChild(n)}self.itemListElement.appendChild(e),o&&self.showDropdown(),self=null})},i.prototype.hideDropdown=function(){if(this.itemListElement&&this.activeCell&&this.itemListElement.parentNode){var t=this.getCellContentContainer(this.activeCell);t.setAttribute("data-dropdown-open","false"),this.itemListElement.parentNode.removeChild(this.itemListElement),t.focus()}},i.prototype.showDropdown=function(){if(this.itemListElement&&this.itemListElement.parentNode!==document.body){this.getCellContentContainer(this.activeCell).setAttribute("data-dropdown-open","true"),document.body.appendChild(this.itemListElement);var t=this.itemListElement.querySelector("ul li.selected");t||(t=this.itemListElement.querySelector("ul li:first-child"),t&&t.setAttribute("class","selected")),t&&window.setTimeout(function(){t.focus()},0)}},i.prototype.fetchOptions=function(t,e){if(this.columnConfiguration.options)e(this.columnConfiguration.options);else{var o=t.parentNode,i=this.createOptionsCachingKey(o),a=this.getViewContainer(t);if(a.setAttribute("class","loading"),!this.cachedOptionPromises[i]){var n={column:this.columnName,rowData:this.tableObj.getRowData(o)},s=this.tableObj.getAlias()+"::onGetDropdownOptions";this.cachedOptionPromises[i]=this.tableObj.$el.request(s,{data:n})}this.cachedOptionPromises[i].done(function r(t){e(t.options)}).always(function l(){a.setAttribute("class","")})}},i.prototype.createOptionsCachingKey=function(t){var e="non-dependent",o=this.columnConfiguration.dependsOn;if(o)if("object"==typeof o)for(var i=0,a=o.length;a>i;i++)e+=o[i]+this.tableObj.getRowCellValueByColumnName(t,o[i]);else e=o+this.tableObj.getRowCellValueByColumnName(t,o);return e},i.prototype.getAbsolutePosition=function(t){var e=document.body.scrollTop,o=0;do e+=t.offsetTop||0,e-=t.scrollTop||0,o+=t.offsetLeft||0,t=t.offsetParent;while(t);return{top:e,left:o}},i.prototype.updateCellFromSelectedItem=function(t){this.tableObj.setCellValue(this.activeCell,t.getAttribute("data-value")),this.setViewContainerValue(this.activeCell,t.textContent)},i.prototype.findSelectedItem=function(){return this.itemListElement?this.itemListElement.querySelector("ul li.selected"):null},i.prototype.onItemClick=function(t){var e=this.tableObj.getEventTarget(t); -if("LI"==e.tagName){this.updateCellFromSelectedItem(e);var o=this.findSelectedItem();o&&o.setAttribute("class",""),e.setAttribute("class","selected"),this.hideDropdown()}},i.prototype.onItemKeyDown=function(t){if(this.itemListElement){if(40==t.keyCode||38==t.keyCode){var e=this.findSelectedItem(),o=e.nextElementSibling;return 38==t.keyCode&&(o=e.previousElementSibling),void(o&&(e.setAttribute("class",""),o.setAttribute("class","selected"),o.focus()))}if(13==t.keyCode||32==t.keyCode)return this.updateCellFromSelectedItem(this.findSelectedItem()),void this.hideDropdown();9==t.keyCode&&(this.updateCellFromSelectedItem(this.findSelectedItem()),this.tableObj.navigation.navigateNext(t),this.tableObj.stopEvent(t)),27==t.keyCode&&this.hideDropdown()}},i.prototype.onKeyDown=function(t){32==t.keyCode&&this.showDropdown()},i.prototype.onRowValueChanged=function(t,e){if(this.columnConfiguration.dependsOn){var o=!1,i=this.columnConfiguration.dependsOn;if("object"==typeof i){for(var a=0,n=i.length;n>a;a++)if(i[a]==t){o=!0;break}}else o=i==t;if(o){var s=this.tableObj.getCellValue(e),r=this.getViewContainer(e);this.fetchOptions(e,function l(t){var e=void 0!==t[s]?t[s]:"...";r.textContent=e,r=null})}}},i.prototype.elementBelongsToProcessor=function(t){return this.itemListElement?this.tableObj.parentContainsElement(this.itemListElement,t):!1},t.oc.table.processor.dropdown=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.processor)throw new Error("The $.oc.table.processor namespace is not defined. Make sure that the table.processor.base.js script is loaded.");var e=t.oc.table.processor.base,o=e.prototype,i=function(t,o,i){this.focusTimeoutHandler=this.onFocusTimeout.bind(this),e.call(this,t,o,i)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.dispose=function(){o.dispose.call(this),this.focusTimeoutHandler=null},i.prototype.renderCell=function(t,e){this.createViewContainer(e,t)},i.prototype.onFocus=function(t,e){this.activeCell!==t&&(this.activeCell=t,this.buildEditor(t,this.getCellContentContainer(t)))},i.prototype.onUnfocus=function(){if(this.activeCell){var t=this.activeCell.querySelector(".string-input");t&&(this.tableObj.setCellValue(this.activeCell,t.value),this.setViewContainerValue(this.activeCell,t.value),t.parentNode.removeChild(t)),this.showViewContainer(this.activeCell),this.activeCell=null}},i.prototype.buildEditor=function(t,e){this.hideViewContainer(this.activeCell);var o=document.createElement("input");o.setAttribute("type","text"),o.setAttribute("class","string-input"),o.value=this.tableObj.getCellValue(t),e.appendChild(o),this.setCaretPosition(o,0),window.setTimeout(this.focusTimeoutHandler,0)},i.prototype.keyNavigationAllowed=function(t,e){if("left"!=e&&"right"!=e)return!0;if(!this.activeCell)return!0;var o=this.activeCell.querySelector(".string-input");if(!o)return!0;var i=this.getCaretPosition(o);return"left"==e?0==i:"right"==e?i==o.value.length:!0},i.prototype.onFocusTimeout=function(){if(this.activeCell){var t=this.activeCell.querySelector(".string-input");t&&(t.focus(),this.setCaretPosition(t,0))}},i.prototype.getCaretPosition=function(t){if(document.selection){var e=document.selection.createRange();return e.moveStart("character",-t.value.length),e.text.length}return void 0!==t.selectionStart?t.selectionStart:0},i.prototype.setCaretPosition=function(t,e){if(document.selection){var o=t.createTextRange();setTimeout(function(){o.collapse(!0),o.moveStart("character",e),o.moveEnd("character",0),o.select()},0)}return void 0!==t.selectionStart&&setTimeout(function(){t.selectionStart=e,t.selectionEnd=e},0),0},t.oc.table.processor.string=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");void 0===t.oc.table.validator&&(t.oc.table.validator={});var e=function(t){this.options=t};e.prototype.validate=function(t,e){return void 0===this.options.applyIfNotEmpty||this.rowHasValue(this.options.applyIfNotEmpty,e)?this.validateValue(t,e):void 0},e.prototype.validateValue=function(t,e){},e.prototype.trim=function(t){return String.prototype.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")},e.prototype.getMessage=function(t){return void 0!==this.options.message?this.options.message:t},e.prototype.rowHasValue=function(t,e){if(void 0===e[t])return!1;if("boolean"==typeof e[t])return e[t];var o=this.trim(String(e[t]));return o.length>0},t.oc.table.validator.base=e}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.validator)throw new Error("The $.oc.table.validator namespace is not defined. Make sure that the table.validator.base.js script is loaded.");var e=t.oc.table.validator.base,o=e.prototype,i=function(t){e.call(this,t)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.validateValue=function(t,e){return t=this.trim(t),0===t.length?this.getMessage("The value should not be empty."):void 0},t.oc.table.validator.required=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.validator)throw new Error("The $.oc.table.validator namespace is not defined. Make sure that the table.validator.base.js script is loaded.");var e=t.oc.table.validator.base,o=e.prototype,i=function(t){e.call(this,t)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.doCommonChecks=function(t){if(void 0!==this.options.min||void 0!==this.options.max){if(void 0!==this.options.min){if(void 0===this.options.min.value)throw new Error("The min.value parameter is not defined in the table validator configuration");if(tthis.options.max.value)return void 0!==this.options.max.message?this.options.max.message:"The value should not be more than "+this.options.max.value}}},t.oc.table.validator.baseNumber=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.validator)throw new Error("The $.oc.table.validator namespace is not defined. Make sure that the table.validator.base.js script is loaded.");if(void 0===t.oc.table.validator.baseNumber)throw new Error("The $.oc.table.validator.baseNumber namespace is not defined. Make sure that the table.validator.baseNumber.js script is loaded.");var e=t.oc.table.validator.baseNumber,o=e.prototype,i=function(t){e.call(this,t)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.validateValue=function(t,e){if(t=this.trim(t),0!=t.length){var o=this.options.allowNegative?/^\-?[0-9]*$/.test(t):/^[0-9]*$/.test(t);if(!o){var i=this.options.allowNegative?"The value should be an integer.":"The value should be a positive integer";return this.getMessage(i)}return this.doCommonChecks(parseInt(t))}},t.oc.table.validator.integer=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.validator)throw new Error("The $.oc.table.validator namespace is not defined. Make sure that the table.validator.base.js script is loaded.");if(void 0===t.oc.table.validator.baseNumber)throw new Error("The $.oc.table.validator.baseNumber namespace is not defined. Make sure that the table.validator.baseNumber.js script is loaded.");var e=t.oc.table.validator.baseNumber,o=e.prototype,i=function(t){e.call(this,t)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.validateValue=function(t,e){if(t=this.trim(t),0!=t.length){var o=this.options.allowNegative?/^[-]?([0-9]+\.[0-9]+|[0-9]+)$/.test(t):/^([0-9]+\.[0-9]+|[0-9]+)$/.test(t);if(!o){var i=this.options.allowNegative?"The value should be a floating point number.":"The value should be a positive floating point number";return this.getMessage(i)}return this.doCommonChecks(parseFloat(t))}},t.oc.table.validator.float=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.validator)throw new Error("The $.oc.table.validator namespace is not defined. Make sure that the table.validator.base.js script is loaded.");var e=t.oc.table.validator.base,o=e.prototype,i=function(t){e.call(this,t)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.validateValue=function(t,e){if(t=this.trim(t),0!=t.length&&(void 0!==this.options.min||void 0!==this.options.max)){if(void 0!==this.options.min){if(void 0===this.options.min.value)throw new Error("The min.value parameter is not defined in the Length table validator configuration");if(t.lengththis.options.max.value)return void 0!==this.options.max.message?this.options.max.message:"The string should not be longer than "+this.options.max.value}}},t.oc.table.validator.length=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.validator)throw new Error("The $.oc.table.validator namespace is not defined. Make sure that the table.validator.base.js script is loaded.");var e=t.oc.table.validator.base,o=e.prototype,i=function(t){e.call(this,t)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.validateValue=function(t,e){if(t=this.trim(t),0!=t.length){if(void 0===this.options.pattern)throw new Error("The pattern parameter is not defined in the Regex table validator configuration");var o=new RegExp(this.options.pattern,this.options.modifiers);return o.test(t)?void 0:this.getMessage("Invalid value format.")}},t.oc.table.validator.regex=i}(window.jQuery); ++function(t){"use strict";void 0===t.oc&&(t.oc={}),void 0===t.oc.table&&(t.oc.table={});var e=function(e,o){this.el=e,this.$el=t(e),this.options=o,this.dataSource=null,this.cellProcessors={},this.activeCellProcessor=null,this.activeCell=null,this.tableContainer=null,this.dataTableContainer=null,this.editedRowKey=null,this.dataTable=null,this.headerTable=null,this.toolbar=null,this.clickHandler=this.onClick.bind(this),this.keydownHandler=this.onKeydown.bind(this),this.documentClickHandler=this.onDocumentClick.bind(this),this.toolbarClickHandler=this.onToolbarClick.bind(this),this.options.postback&&"client"==this.options.clientDataSourceClass&&(this.formSubmitHandler=this.onFormSubmit.bind(this)),this.navigation=null,this.recordsAddedOrDeleted=0,this.init()};e.prototype.init=function(){this.createDataSource(),this.initCellProcessors(),this.navigation=new t.oc.table.helper.navigation(this),this.buildUi(),this.registerHandlers()},e.prototype.disposeCellProcessors=function(){for(var t=0,e=this.options.columns.length;e>t;t++){var o=this.options.columns[t].key;this.cellProcessors[o].dispose(),this.cellProcessors[o]=null}this.cellProcessors=null,this.activeCellProcessor=null},e.prototype.createDataSource=function(){var e=this.options.clientDataSourceClass;if(void 0===t.oc.table.datasource||void 0==t.oc.table.datasource[e])throw new Error('The table client-side data source class "'+e+'" is not found in the $.oc.table.datasource namespace.');this.dataSource=new t.oc.table.datasource[e](this)},e.prototype.registerHandlers=function(){this.el.addEventListener("click",this.clickHandler),this.el.addEventListener("keydown",this.keydownHandler),document.addEventListener("click",this.documentClickHandler),this.options.postback&&"client"==this.options.clientDataSourceClass&&this.$el.closest("form").bind("oc.beforeRequest",this.formSubmitHandler);var t=this.getToolbar();t&&t.addEventListener("click",this.toolbarClickHandler)},e.prototype.unregisterHandlers=function(){this.el.removeEventListener("click",this.clickHandler),document.removeEventListener("click",this.documentClickHandler),this.clickHandler=null,this.el.removeEventListener("keydown",this.keydownHandler),this.keydownHandler=null;var t=this.getToolbar();t&&t.removeEventListener("click",this.toolbarClickHandler),this.toolbarClickHandler=null,this.formSubmitHandler&&(this.$el.closest("form").unbind("oc.beforeRequest",this.formSubmitHandler),this.formSubmitHandler=null)},e.prototype.initCellProcessors=function(){for(var e=0,o=this.options.columns.length;o>e;e++){var i=this.options.columns[e],a=i.key,n=i.type;if(void 0===n&&(n="string",this.options.columns[e].type=n),void 0===t.oc.table.processor||void 0==t.oc.table.processor[n])throw new Error('The table cell processor for the column type "'+n+'" is not found in the $.oc.table.processor namespace.');this.cellProcessors[a]=new t.oc.table.processor[n](this,a,i)}},e.prototype.getCellProcessor=function(t){return this.cellProcessors[t]},e.prototype.buildUi=function(){this.tableContainer=document.createElement("div"),this.tableContainer.setAttribute("class","table-container"),this.options.toolbar&&this.buildToolbar(),this.tableContainer.appendChild(this.buildHeaderTable()),this.el.insertBefore(this.tableContainer,this.el.children[0]),this.dataTableContainer=this.options.height?this.buildScrollbar():this.tableContainer,this.updateDataTable()},e.prototype.buildToolbar=function(){if(this.options.adding||this.options.deleting){if(this.toolbar=document.createElement("div"),this.toolbar.setAttribute("class","toolbar"),this.options.adding){var t=document.createElement("a");if(t.setAttribute("class","btn add-table-row-below"),t.setAttribute("data-cmd","record-add-below"),this.toolbar.appendChild(t),this.navigation.paginationEnabled()||!this.options.rowSorting)t.textContent="Add row";else{t.textContent="Add row below";var e=document.createElement("a");e.setAttribute("class","btn add-table-row-above"),e.textContent="Add row above",e.setAttribute("data-cmd","record-add-above"),this.toolbar.appendChild(e)}}if(this.options.deleting){var o=document.createElement("a");o.setAttribute("class","btn delete-table-row"),o.textContent="Delete row",o.setAttribute("data-cmd","record-delete"),this.toolbar.appendChild(o)}this.tableContainer.appendChild(this.toolbar)}},e.prototype.buildScrollbar=function(){var e=document.createElement("div"),o=document.createElement("div");return e.setAttribute("class","control-scrollbar"),this.options.dynamicHeight?e.setAttribute("style","max-height: "+this.options.height+"px"):e.setAttribute("style","height: "+this.options.height+"px"),e.appendChild(o),this.tableContainer.appendChild(e),t(e).scrollbar({animation:!1}),o},e.prototype.buildHeaderTable=function(){var t=document.createElement("table"),e=document.createElement("tr");t.className="headers",t.appendChild(e);for(var o=0,i=this.options.columns.length;i>o;o++){var a=document.createElement("th");this.options.columns[o].width&&a.setAttribute("style","width: "+this.options.columns[o].width),void 0!==a.textContent?a.textContent=this.options.columns[o].title:a.innerText=this.options.columns[o].title,e.appendChild(a)}return this.headerTable=t,t},e.prototype.updateDataTable=function(t){var e=this;this.unfocusTable(),this.fetchRecords(function o(i,a){e.buildDataTable(i,a),t&&t(),0==a&&e.addRecord("above",!0),e=null})},e.prototype.updateColumnWidth=function(){for(var t=this.headerTable.querySelectorAll("th"),e=this.dataTable.querySelectorAll("tr:first-child td"),o=0,i=t.length;i>o;o++)e[o]&&e[o].setAttribute("style",t[o].getAttribute("style"))},e.prototype.buildDataTable=function(t,e){var o=document.createElement("table"),i=document.createElement("tbody"),a=this.options.keyColumn;o.setAttribute("class","data");for(var n=0,s=t.length;s>n;n++){var r=document.createElement("tr");if(void 0===t[n][a])throw new Error("The row attribute "+a+" is not set for the row #"+n);r.setAttribute("data-row",t[n][a]);for(var l=0,c=this.options.columns.length;c>l;l++){var d=document.createElement("td"),h=document.createElement("input"),u=document.createElement("div"),p=this.options.columns[l],b=p.key,v=this.getCellProcessor(b);d.setAttribute("data-column",b),d.setAttribute("data-column-type",p.type),h.setAttribute("type","hidden"),h.setAttribute("data-container","data-container"),h.value=void 0!==t[n][b]?t[n][b]:"",u.setAttribute("class","content-container"),d.appendChild(u),r.appendChild(d),d.appendChild(h),v.renderCell(t[n][b],u)}i.appendChild(r)}o.appendChild(i),null!==this.dataTable?this.dataTableContainer.replaceChild(o,this.dataTable):this.dataTableContainer.appendChild(o),this.dataTable=o,this.updateColumnWidth(),this.updateScrollbar(),this.navigation.buildPagination(e)},e.prototype.fetchRecords=function(t){this.dataSource.getRecords(this.navigation.getPageFirstRowOffset(),this.options.recordsPerPage,t)},e.prototype.updateScrollbar=function(){this.options.height&&t(this.dataTableContainer.parentNode).data("oc.scrollbar").update()},e.prototype.scrollCellIntoView=function(){this.options.height&&this.activeCell&&t(this.dataTableContainer.parentNode).data("oc.scrollbar").gotoElement(this.activeCell)},e.prototype.disposeScrollbar=function(){this.options.height&&(t(this.dataTableContainer.parentNode).data("oc.scrollbar").dispose(),t(this.dataTableContainer.parentNode).data("oc.scrollbar",null))},e.prototype.setActiveProcessor=function(t){this.activeCellProcessor&&this.activeCellProcessor.onUnfocus(),this.activeCellProcessor=t},e.prototype.commitEditedRow=function(){if(null!==this.editedRowKey){var t=this.dataTable.querySelector('tr[data-row="'+this.editedRowKey+'"]');if(t&&1==t.getAttribute("data-dirty")){for(var e=t.children,o={},i=0,a=e.length;a>i;i++){var n=e[i];o[n.getAttribute("data-column")]=this.getCellValue(n)}this.dataSource.updateRecord(this.editedRowKey,o),t.setAttribute("data-dirty",0)}}},e.prototype.unfocusTable=function(){this.elementRemoveClass(this.el,"active"),this.activeCellProcessor&&this.activeCellProcessor.onUnfocus(),this.commitEditedRow(),this.activeCellProcessor=null,this.activeCell&&this.activeCell.setAttribute("class",""),this.activeCell=null},e.prototype.focusTable=function(){this.elementAddClass(this.el,"active")},e.prototype.focusCell=function(t,e){var o=t.getAttribute("data-column");if(null!==o){this.focusTable();var i=this.getCellProcessor(o);if(!i)throw new Error("Cell processor not found for the column "+o);this.activeCell!==t&&(this.activeCell&&this.elementRemoveClass(this.activeCell,"active"),this.setActiveProcessor(i),this.activeCell=t,i.isCellFocusable()&&this.elementAddClass(this.activeCell,"active"));var a=this.getCellRowKey(t);null!==this.editedRowKey&&a!=this.editedRowKey&&this.commitEditedRow(),this.editedRowKey=a,i.onFocus(t,e),this.scrollCellIntoView()}},e.prototype.markCellRowDirty=function(t){t.parentNode.setAttribute("data-dirty",1)},e.prototype.addRecord=function(t,e){this.activeCell&&!this.navigation.paginationEnabled()&&this.options.rowSorting||(t="bottom");var o=null,i=null;if(("above"==t||"below"==t)&&(o=this.getCellRowKey(this.activeCell),i=this.getCellRowIndex(this.activeCell)),this.unfocusTable(),this.navigation.paginationEnabled()){var a=this.navigation.getNewRowPage(t,i);if(a!=this.navigation.pageIndex&&!this.validate())return;this.navigation.pageIndex=a}this.recordsAddedOrDeleted++;var n=this.options.keyColumn,s={},r=this;s[n]=-1*this.recordsAddedOrDeleted,this.dataSource.createRecord(s,t,o,this.navigation.getPageFirstRowOffset(),this.options.recordsPerPage,function l(t,o){r.buildDataTable(t,o);var i=r.findRowByKey(s[n]);if(!i)throw new Error("New row is not found in the updated table: "+s[n]);e||r.navigation.focusCell(i,0),r=null})},e.prototype.deleteRecord=function(){if(this.activeCell){var t=this.getCellRowIndex(this.activeCell),e=this.getCellRowKey(this.activeCell),o=this,i=this.navigation.paginationEnabled(),a=this.navigation.pageIndex,n=this.activeCell.cellIndex;i&&(this.navigation.pageIndex=this.navigation.getPageAfterDeletion(t)),this.recordsAddedOrDeleted++;var s=this.options.keyColumn,r={};r[s]=-1*this.recordsAddedOrDeleted,this.dataSource.deleteRecord(e,r,this.navigation.getPageFirstRowOffset(),this.options.recordsPerPage,function l(e,s){o.buildDataTable(e,s),i&&a!=o.navigation.pageIndex?o.navigation.focusCell("bottom",n):o.navigation.focusCellInReplacedRow(t,n),o=null})}},e.prototype.notifyRowProcessorsOnChange=function(t){for(var e=t.getAttribute("data-column"),o=t.parentNode,i=0,a=o.children.length;a>i;i++){var n=this.options.columns[i].key;this.cellProcessors[n].onRowValueChanged(e,o.children[i])}},e.prototype.getToolbar=function(){return this.tableContainer.querySelector("div.toolbar")},e.prototype.validate=function(){for(var e=this.dataTable.querySelectorAll("tbody tr[data-row]"),o=0,i=e.length;i>o;o++){var a=e[o];this.elementRemoveClass(a,"error")}for(var o=0,n=e.length;n>o;o++){for(var a=e[o],s=this.getRowData(a),r=0,l=a.children.length;l>r;r++)this.elementRemoveClass(a.children[r],"error");for(var c in s){var d=this.getCellProcessor(c),h=d.validate(s[c],s);if(void 0!==h){var u=a.querySelector('td[data-column="'+c+'"]'),p=this;return this.elementAddClass(a,"error"),this.elementAddClass(u,"error"),t.oc.flashMsg({text:h,"class":"error"}),window.setTimeout(function(){p.focusCell(u,!1),u=null,p=null,d=null},100),!1}}}return!0},e.prototype.onClick=function(t){if(this.focusTable(),this.navigation.onClick(t)!==!1){for(var e=0,o=this.options.columns.length;o>e;e++){var i=this.options.columns[e].key;this.cellProcessors[i].onClick(t)}var a=this.getEventTarget(t,"TD");a&&"TD"==a.tagName&&this.focusCell(a,!0)}},e.prototype.onKeydown=function(t){if(65==t.keyCode&&t.altKey&&this.options.adding)return this.addRecord(t.shiftKey?"above":"below"),void this.stopEvent(t);if(68==t.keyCode&&t.altKey&&this.options.deleting)return this.deleteRecord(),void this.stopEvent(t);for(var e=0,o=this.options.columns.length;o>e;e++){var i=this.options.columns[e].key;this.cellProcessors[i].onKeyDown(t)}this.navigation.onKeydown(t)===!1},e.prototype.onFormSubmit=function(t,e){if(e.handler==this.options.postbackHandlerName){if(this.unfocusTable(),!this.validate())return void t.preventDefault();var o=this.options.alias.indexOf("[")>-1?this.options.alias+"[TableData]":this.options.alias+"TableData";e.options.data[o]=this.dataSource.getAllData()}},e.prototype.onToolbarClick=function(t){var e=this.getEventTarget(t),o=e.getAttribute("data-cmd");switch(o){case"record-add-below":this.addRecord("below");break;case"record-add-above":this.addRecord("above");break;case"record-delete":this.deleteRecord()}this.stopEvent(t)},e.prototype.onDocumentClick=function(t){var e=this.getEventTarget(t);this.parentContainsElement(this.el,e)||this.activeCellProcessor&&this.activeCellProcessor.elementBelongsToProcessor(e)||this.unfocusTable()},e.prototype.dispose=function(){this.unfocusTable(),this.dataSource.dispose(),this.dataSource=null,this.unregisterHandlers(),this.dataTable=null,this.headerTable=null,this.toolbar=null,this.disposeCellProcessors(),this.navigation.dispose(),this.navigation=null,this.disposeScrollbar(),this.el=null,this.tableContainer=null,this.$el=null,this.dataTableContainer=null,this.activeCell=null},e.prototype.getElement=function(){return this.el},e.prototype.getAlias=function(){return this.options.alias},e.prototype.getTableContainer=function(){return this.tableContainer},e.prototype.getDataTableBody=function(){return this.dataTable.children[0]},e.prototype.getEventTarget=function(t,e){var o=t.target?t.target:t.srcElement;if(void 0===e)return o;for(var i=o.tagName;i!=e;){if(o=o.parentNode,!o)return null;i=o.tagName}return o},e.prototype.stopEvent=function(t){t.stopPropagation?t.stopPropagation():t.cancelBubble=!0,t.preventDefault?t.preventDefault():t.returnValue=!1},e.prototype.elementHasClass=function(t,e){return t.classList?t.classList.contains(e):new RegExp("(^| )"+e+"( |$)","gi").test(t.className)},e.prototype.elementAddClass=function(t,e){this.elementHasClass(t,e)||(t.classList?t.classList.add(e):t.className+=" "+e)},e.prototype.elementRemoveClass=function(t,e){t.classList?t.classList.remove(e):t.className=t.className.replace(new RegExp("(^|\\b)"+e.split(" ").join("|")+"(\\b|$)","gi")," ")},e.prototype.parentContainsElement=function(t,e){for(;e&&e!=t;)e=e.parentNode;return e?!0:!1},e.prototype.getCellValue=function(t){return t.querySelector("[data-container]").value},e.prototype.getCellRowKey=function(t){return parseInt(t.parentNode.getAttribute("data-row"))},e.prototype.findRowByKey=function(t){return this.dataTable.querySelector('tbody tr[data-row="'+t+'"]')},e.prototype.findRowByIndex=function(t){return this.getDataTableBody().children[t]},e.prototype.getCellRowIndex=function(t){return parseInt(t.parentNode.rowIndex)},e.prototype.getRowCellValueByColumnName=function(t,e){var o=t.querySelector('td[data-column="'+e+'"]');return o?this.getCellValue(o):o},e.prototype.getRowData=function(t){for(var e={},o=0,i=t.children.length;i>o;o++){var a=t.children[o];e[a.getAttribute("data-column")]=this.getCellValue(a)}return e},e.prototype.setCellValue=function(t,e){var o=t.querySelector("[data-container]");o.value!=e&&(o.value=e,this.markCellRowDirty(t),this.notifyRowProcessorsOnChange(t))},e.DEFAULTS={clientDataSourceClass:"client",keyColumn:"id",recordsPerPage:!1,data:null,postback:!0,postbackHandlerName:"onSave",adding:!0,deleting:!0,toolbar:!0,rowSorting:!1,height:!1,dynamicHeight:!1};var o=t.fn.table;t.fn.table=function(o){var i=Array.prototype.slice.call(arguments,1),a=void 0;return this.each(function(){var n=t(this),s=n.data("oc.table"),r=t.extend({},e.DEFAULTS,n.data(),"object"==typeof o&&o);return s||n.data("oc.table",s=new e(this,r)),"string"==typeof o&&(a=s[o].apply(s,i)),"undefined"!=typeof a?!1:void 0}),a?a:this},t.fn.table.Constructor=e,t.oc.table.table=e,t.fn.table.noConflict=function(){return t.fn.table=o,this},t(document).on("render",function(){t("div[data-control=table]").table()})}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");void 0===t.oc.table.datasource&&(t.oc.table.datasource={});var e=function(t){this.tableObj=t};e.prototype.dispose=function(){this.tableObj=null},e.prototype.getRecords=function(t,e,o){o([])},e.prototype.createRecord=function(t,e,o,i,a,n){n([],0)},e.prototype.updateRecord=function(t,e){},e.prototype.deleteRecord=function(t,e,o,i,a){a([],0)},t.oc.table.datasource.base=e}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");void 0===t.oc.table.processor&&(t.oc.table.processor={});var e=function(t,e,o){this.tableObj=t,this.columnName=e,this.columnConfiguration=o,this.activeCell=null,this.validators=[],this.registerHandlers(),this.initValidators()};e.prototype.dispose=function(){this.unregisterHandlers(),this.tableObj=null,this.activeCell=null},e.prototype.renderCell=function(t,e){},e.prototype.registerHandlers=function(){},e.prototype.unregisterHandlers=function(){},e.prototype.onFocus=function(t,e){},e.prototype.onUnfocus=function(){},e.prototype.onKeyDown=function(t){},e.prototype.onClick=function(t){},e.prototype.onRowValueChanged=function(t,e){},e.prototype.keyNavigationAllowed=function(t,e){return!0},e.prototype.isCellFocusable=function(){return!0},e.prototype.getCellContentContainer=function(t){return t.querySelector(".content-container")},e.prototype.createViewContainer=function(t,e){var o=document.createElement("div");return o.setAttribute("data-view-container","data-view-container"),o.textContent=e,t.appendChild(o),o},e.prototype.getViewContainer=function(t){return t.querySelector("[data-view-container]")},e.prototype.showViewContainer=function(t){return this.getViewContainer(t).setAttribute("class","")},e.prototype.hideViewContainer=function(t){return this.getViewContainer(t).setAttribute("class","hide")},e.prototype.setViewContainerValue=function(t,e){return this.getViewContainer(t).textContent=e},e.prototype.elementBelongsToProcessor=function(t){return!1},e.prototype.initValidators=function(){if(void 0!==this.columnConfiguration.validation)for(var e in this.columnConfiguration.validation){if(void 0===t.oc.table.validator||void 0==t.oc.table.validator[e])throw new Error('The table cell validator "'+e+'" for the column "'+this.columnName+'" is not found in the $.oc.table.validator namespace.');var o=new t.oc.table.validator[e](this.columnConfiguration.validation[e]);this.validators.push(o)}},e.prototype.validate=function(t,e){for(var o=0,i=this.validators.length;i>o;o++){var a=this.validators[o].validate(t,e);if(void 0!==a)return a}},t.oc.table.processor.base=e}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");void 0===t.oc.table.helper&&(t.oc.table.helper={});var e=function(t){this.tableObj=t,this.pageIndex=0,this.pageCount=0,this.init()};e.prototype.init=function(){},e.prototype.dispose=function(){this.tableObj=null},e.prototype.paginationEnabled=function(){return null!=this.tableObj.options.recordsPerPage&&0!=this.tableObj.options.recordsPerPage},e.prototype.getPageFirstRowOffset=function(){return this.pageIndex*this.tableObj.options.recordsPerPage},e.prototype.buildPagination=function(t){if(this.paginationEnabled()){var e=this.tableObj.getElement().querySelector(".pagination"),o=!1,i=0;if(this.pageCount=this.calculatePageCount(t,this.tableObj.options.recordsPerPage),e?i=this.getRecordCount(e):(e=document.createElement("div"),e.setAttribute("class","pagination"),o=!0),o||i!=t){e.setAttribute("data-record-count",t);var a=this.buildPaginationLinkList(t,this.tableObj.options.recordsPerPage,this.pageIndex);o?(e.appendChild(a),this.tableObj.getElement().appendChild(e)):e.replaceChild(a,e.children[0])}else this.markActiveLinkItem(e,this.pageIndex)}},e.prototype.calculatePageCount=function(t,e){var o=Math.ceil(t/e);return o||(o=1),o},e.prototype.getRecordCount=function(t){var e=t?t:this.tableObj.getElement().querySelector(".pagination");return parseInt(e.getAttribute("data-record-count"))},e.prototype.buildPaginationLinkList=function(t,e,o){for(var i=this.calculatePageCount(t,e),a=document.createElement("ul"),n=0;i>n;n++){var s=document.createElement("li"),r=document.createElement("a");n==o&&s.setAttribute("class","active"),r.innerText=n+1,r.setAttribute("data-page-index",n),r.setAttribute("href","#"),s.appendChild(r),a.appendChild(s)}return a},e.prototype.markActiveLinkItem=function(t,e){var o=t.querySelector(".active"),i=t.children[0];o.setAttribute("class","");for(var a=0,n=i.children.length;n>a;a++)a==e&&i.children[a].setAttribute("class","active")},e.prototype.gotoPage=function(t,e){this.tableObj.unfocusTable(),this.tableObj.validate()&&(this.pageIndex=t,this.tableObj.updateDataTable(e))},e.prototype.getRowCountOnPage=function(t){return this.tableObj.getDataTableBody().children.length},e.prototype.getNewRowPage=function(t,e){var o=this.getRecordCount();return"bottom"===t?this.calculatePageCount(o+1,this.tableObj.options.recordsPerPage)-1:"above"==t?this.pageIndex:"below"==t&&e==this.tableObj.options.recordsPerPage-1?this.pageIndex+1:this.pageIndex},e.prototype.getPageAfterDeletion=function(t){return 0==t&&1==this.getRowCountOnPage()?0==this.pageIndex?0:this.pageIndex-1:this.pageIndex},e.prototype.navigateDown=function(t,e){if(this.tableObj.activeCell&&(!this.tableObj.activeCellProcessor||this.tableObj.activeCellProcessor.keyNavigationAllowed(t,"down"))){var o=this.tableObj.activeCell.parentNode,i=t.shiftKey?o.parentNode.children[o.parentNode.children.length-1]:o.nextElementSibling,a=void 0!==e?e:this.tableObj.activeCell.cellIndex;if(i){var n=i.children[a];n&&this.tableObj.focusCell(n)}else{if(!this.paginationEnabled())return;if(this.pageIndex0){var r=this;this.gotoPage(this.pageIndex-1,function l(){r.focusCell("bottom",n),r=null})}}}},e.prototype.navigateLeft=function(t,e){if(this.tableObj.activeCell&&(e||!this.tableObj.activeCellProcessor||this.tableObj.activeCellProcessor.keyNavigationAllowed(t,"left"))){var o=this.tableObj.activeCell.parentNode,i=!t.shiftKey||e?this.tableObj.activeCell.cellIndex-1:0,a=o.children[i];a?this.tableObj.focusCell(a):this.navigateUp(t,o.children.length-1,e)}},e.prototype.navigateRight=function(t,e){if(this.tableObj.activeCell&&(e||!this.tableObj.activeCellProcessor||this.tableObj.activeCellProcessor.keyNavigationAllowed(t,"right"))){var o=this.tableObj.activeCell.parentNode,i=t.shiftKey?o.children.length-1:this.tableObj.activeCell.cellIndex+1,a=o.children[i];a?this.tableObj.focusCell(a):this.navigateDown(t,0)}},e.prototype.navigateNext=function(t){this.tableObj.activeCell&&(!this.tableObj.activeCellProcessor||this.tableObj.activeCellProcessor.keyNavigationAllowed(t,"tab"))&&(t.shiftKey?this.navigateLeft(t,!0):this.navigateRight(t,!0),this.tableObj.stopEvent(t))},e.prototype.focusCell=function(t,e){var o=null,i=this.tableObj.getDataTableBody();if("object"==typeof t?o=t:"bottom"==t?o=i.children[i.children.length-1]:"top"==t&&(o=i.children[0]),o){var a=o.children[e];a&&this.tableObj.focusCell(a)}},e.prototype.focusCellInReplacedRow=function(t,e){if(0==t)this.focusCell("top",e);else{var o=this.tableObj.findRowByIndex(t);o||(o=this.tableObj.findRowByIndex(t-1)),o?this.focusCell(o,e):this.focusCell("top",e)}},e.prototype.onKeydown=function(t){return 40==t.keyCode?this.navigateDown(t):38==t.keyCode?this.navigateUp(t):37==t.keyCode?this.navigateLeft(t):39==t.keyCode?this.navigateRight(t):9==t.keyCode?this.navigateNext(t):void 0},e.prototype.onClick=function(t){var e=this.tableObj.getEventTarget(t,"A");if(e){var o=parseInt(e.getAttribute("data-page-index"));if(null!==o)return this.gotoPage(o),this.tableObj.stopEvent(t),!1}},t.oc.table.helper.navigation=e}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.datasource)throw new Error("The $.oc.table.datasource namespace is not defined. Make sure that the table.datasource.base.js script is loaded.");var e=t.oc.table.datasource.base,o=e.prototype,i=function(t){e.call(this,t);var o=t.getElement().getAttribute("data-data");if(null===o||void 0===o)throw new Error("The required data-data attribute is not found on the table control element.");this.data=JSON.parse(o)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.dispose=function(){o.dispose.call(this),this.data=null},i.prototype.getRecords=function(t,e,o){e?o(this.data.slice(t,t+e),this.data.length):o(this.data,this.data.length)},i.prototype.createRecord=function(t,e,o,i,a,n){if("bottom"===e)this.data.push(t);else if("above"==e||"below"==e){var s=this.getIndexOfKey(o);"below"==e&&s++,this.data.splice(s,0,t)}this.getRecords(i,a,n)},i.prototype.updateRecord=function(t,e){var o=this.getIndexOfKey(t);if(-1===o)throw new Error("Record with they key "+t+" is not found in the data set");e[this.tableObj.options.keyColumn]=t,this.data[o]=e},e.prototype.deleteRecord=function(t,e,o,i,a){var n=this.getIndexOfKey(t);if(-1===n)throw new Error("Record with they key "+t+" is not found in the data set");this.data.splice(n,1),0==this.data.length&&this.data.push(e),this.getRecords(o,i,a)},i.prototype.getIndexOfKey=function(t){var e=this.tableObj.options.keyColumn;return this.data.map(function(t){return t[e]+""}).indexOf(t+"")},i.prototype.getAllData=function(){return this.data},t.oc.table.datasource.client=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.processor)throw new Error("The $.oc.table.processor namespace is not defined. Make sure that the table.processor.base.js script is loaded.");var e=t.oc.table.processor.base,o=e.prototype,i=function(t,o,i){e.call(this,t,o,i)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.dispose=function(){o.dispose.call(this)},i.prototype.isCellFocusable=function(){return!1},i.prototype.renderCell=function(t,e){var o=document.createElement("div");o.setAttribute("data-checkbox-element","true"),o.setAttribute("tabindex","0"),t&&0!=t&&"false"!=t&&o.setAttribute("class","checked"),e.appendChild(o)},i.prototype.onFocus=function(t,e){t.querySelector("div[data-checkbox-element]").focus()},i.prototype.onKeyDown=function(t){32==t.keyCode&&this.onClick(t)},i.prototype.onClick=function(t){var e=this.tableObj.getEventTarget(t,"DIV");e.getAttribute("data-checkbox-element")&&this.changeState(e)},i.prototype.changeState=function(t){var e=t.parentNode.parentNode;"checked"==t.getAttribute("class")?(t.setAttribute("class",""),this.tableObj.setCellValue(e,0)):(t.setAttribute("class","checked"),this.tableObj.setCellValue(e,1))},t.oc.table.processor.checkbox=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.processor)throw new Error("The $.oc.table.processor namespace is not defined. Make sure that the table.processor.base.js script is loaded.");var e=t.oc.table.processor.base,o=e.prototype,i=function(t,o,i){this.itemListElement=null,this.cachedOptionPromises={},this.itemClickHandler=this.onItemClick.bind(this),this.itemKeyDownHandler=this.onItemKeyDown.bind(this),e.call(this,t,o,i)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.dispose=function(){this.unregisterListHandlers(),this.itemClickHandler=null,this.itemKeyDownHandler=null,this.itemListElement=null,this.cachedOptionPromises=null,o.dispose.call(this)},i.prototype.unregisterListHandlers=function(){this.itemListElement&&(this.itemListElement.removeEventListener("click",this.itemClickHandler),this.itemListElement.removeEventListener("keydown",this.itemKeyDownHandler))},i.prototype.renderCell=function(t,e){var o=this.createViewContainer(e,"...");this.fetchOptions(e.parentNode,function i(a){void 0!==a[t]&&(o.textContent=a[t]),e.setAttribute("tabindex",0)})},i.prototype.onFocus=function(t,e){if(this.activeCell===t)return void this.showDropdown();this.activeCell=t;var o=this.getCellContentContainer(t);this.buildEditor(t,o,e),e||o.focus()},i.prototype.onUnfocus=function(){this.activeCell&&(this.unregisterListHandlers(),this.hideDropdown(),this.itemListElement=null,this.activeCell=null)},i.prototype.buildEditor=function(t,e,o){var i=this.tableObj.getCellValue(t),a=this.getAbsolutePosition(e);self=this,this.itemListElement=document.createElement("div"),this.itemListElement.addEventListener("click",this.itemClickHandler),this.itemListElement.addEventListener("keydown",this.itemKeyDownHandler),this.itemListElement.setAttribute("class","table-control-dropdown-list"),this.itemListElement.style.width=e.offsetWidth+"px",this.itemListElement.style.left=a.left+"px",this.itemListElement.style.top=a.top-2+e.offsetHeight+"px",this.fetchOptions(t,function n(t){var e=document.createElement("ul");for(var a in t){var n=document.createElement("li");n.setAttribute("data-value",a),n.textContent=t[a],n.setAttribute("tabindex",0),a==i&&n.setAttribute("class","selected"),e.appendChild(n)}self.itemListElement.appendChild(e),o&&self.showDropdown(),self=null})},i.prototype.hideDropdown=function(){if(this.itemListElement&&this.activeCell&&this.itemListElement.parentNode){var t=this.getCellContentContainer(this.activeCell);t.setAttribute("data-dropdown-open","false"),this.itemListElement.parentNode.removeChild(this.itemListElement),t.focus()}},i.prototype.showDropdown=function(){if(this.itemListElement&&this.itemListElement.parentNode!==document.body){this.getCellContentContainer(this.activeCell).setAttribute("data-dropdown-open","true"),document.body.appendChild(this.itemListElement);var t=this.itemListElement.querySelector("ul li.selected");t||(t=this.itemListElement.querySelector("ul li:first-child"),t&&t.setAttribute("class","selected")),t&&window.setTimeout(function(){t.focus()},0)}},i.prototype.fetchOptions=function(t,e){if(this.columnConfiguration.options)e(this.columnConfiguration.options);else{var o=t.parentNode,i=this.createOptionsCachingKey(o),a=this.getViewContainer(t);if(a.setAttribute("class","loading"),!this.cachedOptionPromises[i]){var n={column:this.columnName,rowData:this.tableObj.getRowData(o)},s=this.tableObj.getAlias()+"::onGetDropdownOptions";this.cachedOptionPromises[i]=this.tableObj.$el.request(s,{data:n})}this.cachedOptionPromises[i].done(function r(t){e(t.options)}).always(function l(){a.setAttribute("class","")})}},i.prototype.createOptionsCachingKey=function(t){var e="non-dependent",o=this.columnConfiguration.dependsOn;if(o)if("object"==typeof o)for(var i=0,a=o.length;a>i;i++)e+=o[i]+this.tableObj.getRowCellValueByColumnName(t,o[i]);else e=o+this.tableObj.getRowCellValueByColumnName(t,o);return e},i.prototype.getAbsolutePosition=function(t){var e=document.body.scrollTop,o=0;do e+=t.offsetTop||0,e-=t.scrollTop||0,o+=t.offsetLeft||0,t=t.offsetParent;while(t);return{top:e,left:o}},i.prototype.updateCellFromSelectedItem=function(t){this.tableObj.setCellValue(this.activeCell,t.getAttribute("data-value")),this.setViewContainerValue(this.activeCell,t.textContent)},i.prototype.findSelectedItem=function(){return this.itemListElement?this.itemListElement.querySelector("ul li.selected"):null +},i.prototype.onItemClick=function(t){var e=this.tableObj.getEventTarget(t);if("LI"==e.tagName){this.updateCellFromSelectedItem(e);var o=this.findSelectedItem();o&&o.setAttribute("class",""),e.setAttribute("class","selected"),this.hideDropdown()}},i.prototype.onItemKeyDown=function(t){if(this.itemListElement){if(40==t.keyCode||38==t.keyCode){var e=this.findSelectedItem(),o=e.nextElementSibling;return 38==t.keyCode&&(o=e.previousElementSibling),void(o&&(e.setAttribute("class",""),o.setAttribute("class","selected"),o.focus()))}if(13==t.keyCode||32==t.keyCode)return this.updateCellFromSelectedItem(this.findSelectedItem()),void this.hideDropdown();9==t.keyCode&&(this.updateCellFromSelectedItem(this.findSelectedItem()),this.tableObj.navigation.navigateNext(t),this.tableObj.stopEvent(t)),27==t.keyCode&&this.hideDropdown()}},i.prototype.onKeyDown=function(t){32==t.keyCode&&this.showDropdown()},i.prototype.onRowValueChanged=function(t,e){if(this.columnConfiguration.dependsOn){var o=!1,i=this.columnConfiguration.dependsOn;if("object"==typeof i){for(var a=0,n=i.length;n>a;a++)if(i[a]==t){o=!0;break}}else o=i==t;if(o){var s=this.tableObj.getCellValue(e),r=this.getViewContainer(e);this.fetchOptions(e,function l(t){var e=void 0!==t[s]?t[s]:"...";r.textContent=e,r=null})}}},i.prototype.elementBelongsToProcessor=function(t){return this.itemListElement?this.tableObj.parentContainsElement(this.itemListElement,t):!1},t.oc.table.processor.dropdown=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.processor)throw new Error("The $.oc.table.processor namespace is not defined. Make sure that the table.processor.base.js script is loaded.");var e=t.oc.table.processor.base,o=e.prototype,i=function(t,o,i){this.focusTimeoutHandler=this.onFocusTimeout.bind(this),e.call(this,t,o,i)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.dispose=function(){o.dispose.call(this),this.focusTimeoutHandler=null},i.prototype.renderCell=function(t,e){this.createViewContainer(e,t)},i.prototype.onFocus=function(t,e){this.activeCell!==t&&(this.activeCell=t,this.buildEditor(t,this.getCellContentContainer(t)))},i.prototype.onUnfocus=function(){if(this.activeCell){var t=this.activeCell.querySelector(".string-input");t&&(this.tableObj.setCellValue(this.activeCell,t.value),this.setViewContainerValue(this.activeCell,t.value),t.parentNode.removeChild(t)),this.showViewContainer(this.activeCell),this.activeCell=null}},i.prototype.buildEditor=function(t,e){this.hideViewContainer(this.activeCell);var o=document.createElement("input");o.setAttribute("type","text"),o.setAttribute("class","string-input"),o.value=this.tableObj.getCellValue(t),e.appendChild(o),this.setCaretPosition(o,0),window.setTimeout(this.focusTimeoutHandler,0)},i.prototype.keyNavigationAllowed=function(t,e){if("left"!=e&&"right"!=e)return!0;if(!this.activeCell)return!0;var o=this.activeCell.querySelector(".string-input");if(!o)return!0;var i=this.getCaretPosition(o);return"left"==e?0==i:"right"==e?i==o.value.length:!0},i.prototype.onFocusTimeout=function(){if(this.activeCell){var t=this.activeCell.querySelector(".string-input");t&&(t.focus(),this.setCaretPosition(t,0))}},i.prototype.getCaretPosition=function(t){if(document.selection){var e=document.selection.createRange();return e.moveStart("character",-t.value.length),e.text.length}return void 0!==t.selectionStart?t.selectionStart:0},i.prototype.setCaretPosition=function(t,e){if(document.selection){var o=t.createTextRange();setTimeout(function(){o.collapse(!0),o.moveStart("character",e),o.moveEnd("character",0),o.select()},0)}return void 0!==t.selectionStart&&setTimeout(function(){t.selectionStart=e,t.selectionEnd=e},0),0},t.oc.table.processor.string=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");void 0===t.oc.table.validator&&(t.oc.table.validator={});var e=function(t){this.options=t};e.prototype.validate=function(t,e){return void 0===this.options.applyIfNotEmpty||this.rowHasValue(this.options.applyIfNotEmpty,e)?this.validateValue(t,e):void 0},e.prototype.validateValue=function(t,e){},e.prototype.trim=function(t){return String.prototype.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")},e.prototype.getMessage=function(t){return void 0!==this.options.message?this.options.message:t},e.prototype.rowHasValue=function(t,e){if(void 0===e[t])return!1;if("boolean"==typeof e[t])return e[t];var o=this.trim(String(e[t]));return o.length>0},t.oc.table.validator.base=e}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.validator)throw new Error("The $.oc.table.validator namespace is not defined. Make sure that the table.validator.base.js script is loaded.");var e=t.oc.table.validator.base,o=e.prototype,i=function(t){e.call(this,t)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.validateValue=function(t,e){return t=this.trim(t),0===t.length?this.getMessage("The value should not be empty."):void 0},t.oc.table.validator.required=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.validator)throw new Error("The $.oc.table.validator namespace is not defined. Make sure that the table.validator.base.js script is loaded.");var e=t.oc.table.validator.base,o=e.prototype,i=function(t){e.call(this,t)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.doCommonChecks=function(t){if(void 0!==this.options.min||void 0!==this.options.max){if(void 0!==this.options.min){if(void 0===this.options.min.value)throw new Error("The min.value parameter is not defined in the table validator configuration");if(tthis.options.max.value)return void 0!==this.options.max.message?this.options.max.message:"The value should not be more than "+this.options.max.value}}},t.oc.table.validator.baseNumber=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.validator)throw new Error("The $.oc.table.validator namespace is not defined. Make sure that the table.validator.base.js script is loaded.");if(void 0===t.oc.table.validator.baseNumber)throw new Error("The $.oc.table.validator.baseNumber namespace is not defined. Make sure that the table.validator.baseNumber.js script is loaded.");var e=t.oc.table.validator.baseNumber,o=e.prototype,i=function(t){e.call(this,t)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.validateValue=function(t,e){if(t=this.trim(t),0!=t.length){var o=this.options.allowNegative?/^\-?[0-9]*$/.test(t):/^[0-9]*$/.test(t);if(!o){var i=this.options.allowNegative?"The value should be an integer.":"The value should be a positive integer";return this.getMessage(i)}return this.doCommonChecks(parseInt(t))}},t.oc.table.validator.integer=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.validator)throw new Error("The $.oc.table.validator namespace is not defined. Make sure that the table.validator.base.js script is loaded.");if(void 0===t.oc.table.validator.baseNumber)throw new Error("The $.oc.table.validator.baseNumber namespace is not defined. Make sure that the table.validator.baseNumber.js script is loaded.");var e=t.oc.table.validator.baseNumber,o=e.prototype,i=function(t){e.call(this,t)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.validateValue=function(t,e){if(t=this.trim(t),0!=t.length){var o=this.options.allowNegative?/^[-]?([0-9]+\.[0-9]+|[0-9]+)$/.test(t):/^([0-9]+\.[0-9]+|[0-9]+)$/.test(t);if(!o){var i=this.options.allowNegative?"The value should be a floating point number.":"The value should be a positive floating point number";return this.getMessage(i)}return this.doCommonChecks(parseFloat(t))}},t.oc.table.validator.float=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.validator)throw new Error("The $.oc.table.validator namespace is not defined. Make sure that the table.validator.base.js script is loaded.");var e=t.oc.table.validator.base,o=e.prototype,i=function(t){e.call(this,t)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.validateValue=function(t,e){if(t=this.trim(t),0!=t.length&&(void 0!==this.options.min||void 0!==this.options.max)){if(void 0!==this.options.min){if(void 0===this.options.min.value)throw new Error("The min.value parameter is not defined in the Length table validator configuration");if(t.lengththis.options.max.value)return void 0!==this.options.max.message?this.options.max.message:"The string should not be longer than "+this.options.max.value}}},t.oc.table.validator.length=i}(window.jQuery),+function(t){"use strict";if(void 0===t.oc.table)throw new Error("The $.oc.table namespace is not defined. Make sure that the table.js script is loaded.");if(void 0===t.oc.table.validator)throw new Error("The $.oc.table.validator namespace is not defined. Make sure that the table.validator.base.js script is loaded.");var e=t.oc.table.validator.base,o=e.prototype,i=function(t){e.call(this,t)};i.prototype=Object.create(o),i.prototype.constructor=i,i.prototype.validateValue=function(t,e){if(t=this.trim(t),0!=t.length){if(void 0===this.options.pattern)throw new Error("The pattern parameter is not defined in the Regex table validator configuration");var o=new RegExp(this.options.pattern,this.options.modifiers);return o.test(t)?void 0:this.getMessage("Invalid value format.")}},t.oc.table.validator.regex=i}(window.jQuery); //# sourceMappingURL=./table-min.map \ No newline at end of file diff --git a/modules/backend/widgets/table/assets/js/table-min.map b/modules/backend/widgets/table/assets/js/table-min.map index 9b807f450..f16839ac9 100644 --- a/modules/backend/widgets/table/assets/js/table-min.map +++ b/modules/backend/widgets/table/assets/js/table-min.map @@ -1 +1 @@ -{"version":3,"file":"/Users/elf/projects/new-cms/dev/modules/backend/widgets/table/assets/js/table-min.js","sources":["table.js","table.datasource.base.js","table.processor.base.js","table.helper.navigation.js","table.datasource.client.js","table.processor.checkbox.js","table.processor.dropdown.js","table.processor.string.js","table.validator.base.js","table.validator.required.js","table.validator.basenumber.js","table.validator.integer.js","table.validator.float.js","table.validator.length.js","table.validator.regex.js"],"names":["$","undefined","oc","table","Table","element","options","this","el","$el","dataSource","cellProcessors","activeCellProcessor","activeCell","tableContainer","dataTableContainer","editedRowKey","dataTable","headerTable","toolbar","clickHandler","onClick","bind","keydownHandler","onKeydown","documentClickHandler","onDocumentClick","toolbarClickHandler","onToolbarClick","postback","clientDataSourceClass","formSubmitHandler","onFormSubmit","navigation","recordsAddedOrDeleted","init","prototype","createDataSource","initCellProcessors","helper","buildUi","registerHandlers","disposeCellProcessors","i","len","columns","length","column","key","dispose","dataSourceClass","datasource","Error","addEventListener","document","closest","getToolbar","unregisterHandlers","removeEventListener","unbind","columnConfiguration","columnType","type","processor","getCellProcessor","columnName","createElement","setAttribute","buildToolbar","appendChild","buildHeaderTable","insertBefore","children","height","buildScrollbar","updateDataTable","adding","deleting","addBelowButton","paginationEnabled","rowSorting","textContent","addAboveButton","deleteButton","scrollbar","scrollbarContent","animation","headersTable","row","className","header","width","title","innerText","onSuccess","self","unfocusTable","fetchRecords","onUpdateDataTableSuccess","records","totalCount","buildDataTable","addRecord","updateColumnWidth","headerCells","querySelectorAll","dataCells","getAttribute","tbody","keyColumn","j","colsLen","cell","dataContainer","cellContentContainer","cellProcessor","value","renderCell","replaceChild","updateScrollbar","buildPagination","getRecords","getPageFirstRowOffset","recordsPerPage","parentNode","data","update","scrollCellIntoView","gotoElement","disposeScrollbar","setActiveProcessor","onUnfocus","commitEditedRow","editedRow","querySelector","cells","getCellValue","updateRecord","elementRemoveClass","focusTable","elementAddClass","focusCell","cellElement","isClick","isCellFocusable","rowKey","getCellRowKey","onFocus","markCellRowDirty","placement","noFocus","relativeToKey","currentRowIndex","getCellRowIndex","newPageIndex","getNewRowPage","pageIndex","validate","recordData","createRecord","onAddRecordDataTableSuccess","findRowByKey","deleteRecord","currentPageIndex","currentCellIndex","cellIndex","getPageAfterDeletion","newRecordData","onDeleteRecordDataTableSuccess","focusCellInReplacedRow","notifyRowProcessorsOnChange","onRowValueChanged","rows","rowsLen","rowData","getRowData","message","flashMsg","text","class","window","setTimeout","ev","target","getEventTarget","tagName","keyCode","altKey","shiftKey","stopEvent","onKeyDown","handler","postbackHandlerName","preventDefault","fieldName","alias","indexOf","getAllData","cmd","parentContainsElement","elementBelongsToProcessor","getElement","getAlias","getTableContainer","getDataTableBody","tag","srcElement","stopPropagation","cancelBubble","returnValue","elementHasClass","classList","contains","RegExp","test","add","remove","replace","split","join","parent","parseInt","findRowByIndex","index","rowIndex","getRowCellValueByColumnName","result","setCellValue","DEFAULTS","old","fn","option","args","Array","slice","call","arguments","each","$this","extend","apply","Constructor","noConflict","on","jQuery","Base","tableObj","offset","count","base","validators","initValidators","keyNavigationAllowed","direction","getCellContentContainer","createViewContainer","viewContainer","getViewContainer","showViewContainer","hideViewContainer","setViewContainerValue","validation","validatorName","validator","push","Navigation","pageCount","recordCount","paginationContainer","newPaginationContainer","curRecordCount","calculatePageCount","getRecordCount","pageList","buildPaginationLinkList","markActiveLinkItem","Math","ceil","container","item","link","activeItem","list","gotoPage","getRowCountOnPage","navigateDown","forceCellIndex","newRow","nextElementSibling","navDownPageSuccess","navigateUp","isTab","previousElementSibling","navUpPageSuccess","navigateLeft","newIndex","navigateRight","navigateNext","rowReference","focusRow","BaseProto","Client","dataString","JSON","parse","Object","create","constructor","recordIndex","getIndexOfKey","splice","map","record","client","CheckboxProcessor","checkbox","focus","changeState","divElement","DropdownProcessor","itemListElement","cachedOptionPromises","itemClickHandler","onItemClick","itemKeyDownHandler","onItemKeyDown","unregisterListHandlers","fetchOptions","renderCellFetchOptions","showDropdown","buildEditor","hideDropdown","currentValue","containerPosition","getAbsolutePosition","style","offsetWidth","left","top","offsetHeight","listElement","itemElement","removeChild","body","activeItemElement","cachingKey","createOptionsCachingKey","requestData","handlerName","request","done","onDropDownLoadOptionsSuccess","always","onDropDownLoadOptionsAlways","dependsOn","scrollTop","offsetTop","offsetLeft","offsetParent","updateCellFromSelectedItem","selectedItem","findSelectedItem","selected","newSelectedItem","dependsOnColumn","rowValueChangedFetchOptions","dropdown","StringProcessor","focusTimeoutHandler","onFocusTimeout","editor","input","setCaretPosition","caretPosition","getCaretPosition","selection","createRange","moveStart","selectionStart","position","range","createTextRange","collapse","moveEnd","select","selectionEnd","string","applyIfNotEmpty","rowHasValue","validateValue","trim","String","getMessage","defaultValue","Required","required","BaseNumber","doCommonChecks","min","max","baseNumber","Integer","testResult","allowNegative","defaultMessage","integer","Float","parseFloat","float","Length","Regex","pattern","regexObj","modifiers","regex"],"mappings":"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","sourceRoot":"./"} \ No newline at end of file +{"version":3,"file":"/Users/elf/projects/new-cms/dev/modules/backend/widgets/table/assets/js/table-min.js","sources":["table.js","table.datasource.base.js","table.processor.base.js","table.helper.navigation.js","table.datasource.client.js","table.processor.checkbox.js","table.processor.dropdown.js","table.processor.string.js","table.validator.base.js","table.validator.required.js","table.validator.basenumber.js","table.validator.integer.js","table.validator.float.js","table.validator.length.js","table.validator.regex.js"],"names":["$","undefined","oc","table","Table","element","options","this","el","$el","dataSource","cellProcessors","activeCellProcessor","activeCell","tableContainer","dataTableContainer","editedRowKey","dataTable","headerTable","toolbar","clickHandler","onClick","bind","keydownHandler","onKeydown","documentClickHandler","onDocumentClick","toolbarClickHandler","onToolbarClick","postback","clientDataSourceClass","formSubmitHandler","onFormSubmit","navigation","recordsAddedOrDeleted","init","prototype","createDataSource","initCellProcessors","helper","buildUi","registerHandlers","disposeCellProcessors","i","len","columns","length","column","key","dispose","dataSourceClass","datasource","Error","addEventListener","document","closest","getToolbar","unregisterHandlers","removeEventListener","unbind","columnConfiguration","columnType","type","processor","getCellProcessor","columnName","createElement","setAttribute","buildToolbar","appendChild","buildHeaderTable","insertBefore","children","height","buildScrollbar","updateDataTable","adding","deleting","addBelowButton","paginationEnabled","rowSorting","textContent","addAboveButton","deleteButton","scrollbar","scrollbarContent","dynamicHeight","animation","headersTable","row","className","header","width","title","innerText","onSuccess","self","unfocusTable","fetchRecords","onUpdateDataTableSuccess","records","totalCount","buildDataTable","addRecord","updateColumnWidth","headerCells","querySelectorAll","dataCells","getAttribute","tbody","keyColumn","j","colsLen","cell","dataContainer","cellContentContainer","cellProcessor","value","renderCell","replaceChild","updateScrollbar","buildPagination","getRecords","getPageFirstRowOffset","recordsPerPage","parentNode","data","update","scrollCellIntoView","gotoElement","disposeScrollbar","setActiveProcessor","onUnfocus","commitEditedRow","editedRow","querySelector","cells","getCellValue","updateRecord","elementRemoveClass","focusTable","elementAddClass","focusCell","cellElement","isClick","isCellFocusable","rowKey","getCellRowKey","onFocus","markCellRowDirty","placement","noFocus","relativeToKey","currentRowIndex","getCellRowIndex","newPageIndex","getNewRowPage","pageIndex","validate","recordData","createRecord","onAddRecordDataTableSuccess","findRowByKey","deleteRecord","currentPageIndex","currentCellIndex","cellIndex","getPageAfterDeletion","newRecordData","onDeleteRecordDataTableSuccess","focusCellInReplacedRow","notifyRowProcessorsOnChange","onRowValueChanged","rows","rowsLen","rowData","getRowData","message","flashMsg","text","class","window","setTimeout","ev","target","getEventTarget","tagName","keyCode","altKey","shiftKey","stopEvent","onKeyDown","handler","postbackHandlerName","preventDefault","fieldName","alias","indexOf","getAllData","cmd","parentContainsElement","elementBelongsToProcessor","getElement","getAlias","getTableContainer","getDataTableBody","tag","srcElement","stopPropagation","cancelBubble","returnValue","elementHasClass","classList","contains","RegExp","test","add","remove","replace","split","join","parent","parseInt","findRowByIndex","index","rowIndex","getRowCellValueByColumnName","result","setCellValue","DEFAULTS","old","fn","option","args","Array","slice","call","arguments","each","$this","extend","apply","Constructor","noConflict","on","jQuery","Base","tableObj","offset","count","base","validators","initValidators","keyNavigationAllowed","direction","getCellContentContainer","createViewContainer","viewContainer","getViewContainer","showViewContainer","hideViewContainer","setViewContainerValue","validation","validatorName","validator","push","Navigation","pageCount","recordCount","paginationContainer","newPaginationContainer","curRecordCount","calculatePageCount","getRecordCount","pageList","buildPaginationLinkList","markActiveLinkItem","Math","ceil","container","item","link","activeItem","list","gotoPage","getRowCountOnPage","navigateDown","forceCellIndex","newRow","nextElementSibling","navDownPageSuccess","navigateUp","isTab","previousElementSibling","navUpPageSuccess","navigateLeft","newIndex","navigateRight","navigateNext","rowReference","focusRow","BaseProto","Client","dataString","JSON","parse","Object","create","constructor","recordIndex","getIndexOfKey","splice","map","record","client","CheckboxProcessor","checkbox","focus","changeState","divElement","DropdownProcessor","itemListElement","cachedOptionPromises","itemClickHandler","onItemClick","itemKeyDownHandler","onItemKeyDown","unregisterListHandlers","fetchOptions","renderCellFetchOptions","showDropdown","buildEditor","hideDropdown","currentValue","containerPosition","getAbsolutePosition","style","offsetWidth","left","top","offsetHeight","listElement","itemElement","removeChild","body","activeItemElement","cachingKey","createOptionsCachingKey","requestData","handlerName","request","done","onDropDownLoadOptionsSuccess","always","onDropDownLoadOptionsAlways","dependsOn","scrollTop","offsetTop","offsetLeft","offsetParent","updateCellFromSelectedItem","selectedItem","findSelectedItem","selected","newSelectedItem","dependsOnColumn","rowValueChangedFetchOptions","dropdown","StringProcessor","focusTimeoutHandler","onFocusTimeout","editor","input","setCaretPosition","caretPosition","getCaretPosition","selection","createRange","moveStart","selectionStart","position","range","createTextRange","collapse","moveEnd","select","selectionEnd","string","applyIfNotEmpty","rowHasValue","validateValue","trim","String","getMessage","defaultValue","Required","required","BaseNumber","doCommonChecks","min","max","baseNumber","Integer","testResult","allowNegative","defaultMessage","integer","Float","parseFloat","float","Length","Regex","pattern","regexObj","modifiers","regex"],"mappings":"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","sourceRoot":"./"} \ No newline at end of file diff --git a/modules/backend/widgets/table/assets/js/table.js b/modules/backend/widgets/table/assets/js/table.js index 4073fdfab..89c200ab8 100644 --- a/modules/backend/widgets/table/assets/js/table.js +++ b/modules/backend/widgets/table/assets/js/table.js @@ -259,7 +259,11 @@ scrollbarContent = document.createElement('div') scrollbar.setAttribute('class', 'control-scrollbar') - scrollbar.setAttribute('style', 'height: ' + this.options.height + 'px') + + if (this.options.dynamicHeight) + scrollbar.setAttribute('style', 'max-height: ' + this.options.height + 'px') + else + scrollbar.setAttribute('style', 'height: ' + this.options.height + 'px') scrollbar.appendChild(scrollbarContent) this.tableContainer.appendChild(scrollbar) @@ -992,7 +996,8 @@ deleting: true, toolbar: true, rowSorting: false, - height: false + height: false, + dynamicHeight: false } // TABLE PLUGIN DEFINITION diff --git a/modules/backend/widgets/table/partials/_table.htm b/modules/backend/widgets/table/partials/_table.htm index 06f50d0f8..ee7fd9513 100644 --- a/modules/backend/widgets/table/partials/_table.htm +++ b/modules/backend/widgets/table/partials/_table.htm @@ -12,4 +12,5 @@ data-records-per-page="" data-key-column="" data-client-data-source-class="" + data-dynamic-height="" data-alias="alias) ?>"> \ No newline at end of file