diff --git a/app/docker/components/container-quick-actions/containerQuickActions.html b/app/docker/components/container-quick-actions/containerQuickActions.html new file mode 100644 index 000000000..0befd7e8d --- /dev/null +++ b/app/docker/components/container-quick-actions/containerQuickActions.html @@ -0,0 +1,44 @@ +
\ No newline at end of file diff --git a/app/docker/components/container-quick-actions/containerQuickActions.js b/app/docker/components/container-quick-actions/containerQuickActions.js new file mode 100644 index 000000000..3fb616d7c --- /dev/null +++ b/app/docker/components/container-quick-actions/containerQuickActions.js @@ -0,0 +1,10 @@ +angular.module('portainer.docker').component('containerQuickActions', { + templateUrl: 'app/docker/components/container-quick-actions/containerQuickActions.html', + bindings: { + containerId: '<', + nodeName: '<', + status: '<', + state: '<', + taskId: '<' + } +}); diff --git a/app/docker/components/datatables/containers-datatable/containersDatatable.html b/app/docker/components/datatables/containers-datatable/containersDatatable.html index 5b30f1473..2ade1ff08 100644 --- a/app/docker/components/datatables/containers-datatable/containersDatatable.html +++ b/app/docker/components/datatables/containers-datatable/containersDatatable.html @@ -222,12 +222,7 @@ {{ item.Status }}- - Id - - - - | Status @@ -28,6 +21,14 @@ | ++ + Id + + + + | +Actions | Slot @@ -49,24 +50,22 @@ | -Actions | ||
---|---|---|---|---|---|---|---|
{{ item.Status.State }} | {{ item.ServiceName }}{{ item.Slot ? '.' + item.Slot : '' }}{{ '.' + item.Id }} {{ item.ServiceName }}{{ item.Slot ? '.' + item.Slot : '' }}{{ '.' + item.Id }} | -{{ item.Status.State }} | +
+ |
{{ item.Slot ? item.Slot : '-' }} | {{ item.NodeId | tasknodename: $ctrl.nodes }} | {{ item.Updated | getisodate }} | -- View logs - View logs - Console - |
Loading... | diff --git a/app/docker/components/datatables/tasks-datatable/tasksDatatable.js b/app/docker/components/datatables/tasks-datatable/tasksDatatable.js index 43e8237ac..f24e14446 100644 --- a/app/docker/components/datatables/tasks-datatable/tasksDatatable.js +++ b/app/docker/components/datatables/tasks-datatable/tasksDatatable.js @@ -1,6 +1,6 @@ angular.module('portainer.docker').component('tasksDatatable', { templateUrl: 'app/docker/components/datatables/tasks-datatable/tasksDatatable.html', - controller: 'GenericDatatableController', + controller: 'TasksDatatableController', bindings: { titleText: '@', titleIcon: '@', diff --git a/app/docker/components/datatables/tasks-datatable/tasksDatatableController.js b/app/docker/components/datatables/tasks-datatable/tasksDatatableController.js new file mode 100644 index 000000000..d23255869 --- /dev/null +++ b/app/docker/components/datatables/tasks-datatable/tasksDatatableController.js @@ -0,0 +1,61 @@ +angular.module('portainer.docker') +.controller('TasksDatatableController', ['PaginationService', 'DatatableService', +function (PaginationService, DatatableService) { + this.state = { + showQuickActionStats: true, + showQuickActionLogs: true, + showQuickActionConsole: true, + showQuickActionInspect: true, + selectAll: false, + orderBy: this.orderBy, + paginatedItemLimit: PaginationService.getPaginationLimit(this.tableKey), + displayTextFilter: false, + selectedItemCount: 0, + selectedItems: [] + }; + + this.changeOrderBy = function(orderField) { + this.state.reverseOrder = this.state.orderBy === orderField ? !this.state.reverseOrder : false; + this.state.orderBy = orderField; + DatatableService.setDataTableOrder(this.tableKey, orderField, this.state.reverseOrder); + }; + + this.selectItem = function(item) { + if (item.Checked) { + this.state.selectedItemCount++; + this.state.selectedItems.push(item); + } else { + this.state.selectedItems.splice(this.state.selectedItems.indexOf(item), 1); + this.state.selectedItemCount--; + } + }; + + this.selectAll = function() { + for (var i = 0; i < this.state.filteredDataSet.length; i++) { + var item = this.state.filteredDataSet[i]; + if (item.Checked !== this.state.selectAll) { + item.Checked = this.state.selectAll; + this.selectItem(item); + } + } + }; + + this.changePaginationLimit = function() { + PaginationService.setPaginationLimit(this.tableKey, this.state.paginatedItemLimit); + }; + + this.$onInit = function() { + setDefaults(this); + + var storedOrder = DatatableService.getDataTableOrder(this.tableKey); + if (storedOrder !== null) { + this.state.reverseOrder = storedOrder.reverse; + this.state.orderBy = storedOrder.orderBy; + } + }; + + function setDefaults(ctrl) { + ctrl.showTextFilter = ctrl.showTextFilter ? ctrl.showTextFilter : false; + ctrl.state.reverseOrder = ctrl.reverseOrder ? ctrl.reverseOrder : false; + } +}]);