Merge pull request #18999 from colemanw/searchStuff
[civicrm-core.git] / ext / search / ang / crmSearchAdmin / displays / searchAdminDisplayList.component.js
1 (function(angular, $, _) {
2 "use strict";
3
4 angular.module('crmSearchAdmin').component('searchAdminDisplayList', {
5 bindings: {
6 display: '<',
7 apiEntity: '<',
8 apiParams: '<'
9 },
10 require: {
11 crmSearchAdminDisplay: '^crmSearchAdminDisplay'
12 },
13 templateUrl: '~/crmSearchAdmin/displays/searchAdminDisplayList.html',
14 controller: function($scope, searchMeta) {
15 var ts = $scope.ts = CRM.ts(),
16 ctrl = this;
17 this.getFieldLabel = searchMeta.getDefaultLabel;
18
19 this.sortableOptions = {
20 connectWith: '.crm-search-admin-edit-columns',
21 containment: '.crm-search-admin-edit-columns-wrapper'
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.symbols = {
35 ul: [
36 {char: '', label: ts('Default')},
37 {char: 'none', label: ts('None ( )')},
38 {char: 'circle', label: ts('Circle')},
39 {char: 'square', label: ts('Square')},
40 ],
41 ol: [
42 {char: '', label: ts('Numbered (1. 2. 3.)')},
43 {char: 'none', label: ts('None ( )')},
44 {char: 'lower-latin', label: ts('Lowercase (a. b. c.)')},
45 {char: 'upper-latin', label: ts('Uppercase (A. B. C.)')},
46 {char: 'upper-roman', label: ts('Roman (I. II. III.)')},
47 ]
48 };
49
50 this.$onInit = function () {
51 if (!ctrl.display.settings) {
52 ctrl.display.settings = {
53 style: 'ul',
54 limit: 20,
55 pager: true
56 };
57 }
58 ctrl.hiddenColumns = ctrl.crmSearchAdminDisplay.initColumns();
59 ctrl.links = ctrl.crmSearchAdminDisplay.getLinks();
60 };
61
62 }
63 });
64
65 })(angular, CRM.$, CRM._);