Commit | Line | Data |
---|---|---|
44402a2e CW |
1 | (function(angular, $, _) { |
2 | "use strict"; | |
3 | ||
493f83d4 | 4 | angular.module('crmSearchAdmin').component('searchAdminDisplayTable', { |
44402a2e CW |
5 | bindings: { |
6 | display: '<', | |
7 | apiEntity: '<', | |
8 | apiParams: '<' | |
9 | }, | |
10 | require: { | |
03b55607 | 11 | crmSearchAdminDisplay: '^crmSearchAdminDisplay' |
44402a2e | 12 | }, |
493f83d4 | 13 | templateUrl: '~/crmSearchAdmin/displays/searchAdminDisplayTable.html', |
44402a2e CW |
14 | controller: function($scope, searchMeta) { |
15 | var ts = $scope.ts = CRM.ts(), | |
16 | ctrl = this; | |
03b55607 | 17 | this.getFieldLabel = searchMeta.getDefaultLabel; |
44402a2e CW |
18 | |
19 | this.sortableOptions = { | |
e35ea035 CW |
20 | connectWith: '.crm-search-admin-edit-columns', |
21 | containment: '.crm-search-admin-edit-columns-wrapper' | |
44402a2e CW |
22 | }; |
23 | ||
24 | this.removeCol = function(index) { | |
25 | ctrl.hiddenColumns.push(ctrl.display.settings.columns[index]); | |
26 | ctrl.display.settings.columns.splice(index, 1); | |
27 | }; | |
28 | ||
29 | this.restoreCol = function(index) { | |
30 | ctrl.display.settings.columns.push(ctrl.hiddenColumns[index]); | |
31 | ctrl.hiddenColumns.splice(index, 1); | |
32 | }; | |
33 | ||
34 | this.$onInit = function () { | |
f9cf8797 CW |
35 | if (!ctrl.display.settings) { |
36 | ctrl.display.settings = { | |
37 | limit: 20, | |
38 | pager: true | |
39 | }; | |
40 | } | |
03b55607 CW |
41 | ctrl.hiddenColumns = ctrl.crmSearchAdminDisplay.initColumns(); |
42 | ctrl.links = ctrl.crmSearchAdminDisplay.getLinks(); | |
44402a2e CW |
43 | }; |
44 | ||
45 | } | |
46 | }); | |
47 | ||
48 | })(angular, CRM.$, CRM._); |