1 |
efrain |
1 |
// This file is part of Moodle - http://moodle.org/
|
|
|
2 |
//
|
|
|
3 |
// Moodle is free software: you can redistribute it and/or modify
|
|
|
4 |
// it under the terms of the GNU General Public License as published by
|
|
|
5 |
// the Free Software Foundation, either version 3 of the License, or
|
|
|
6 |
// (at your option) any later version.
|
|
|
7 |
//
|
|
|
8 |
// Moodle is distributed in the hope that it will be useful,
|
|
|
9 |
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
10 |
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
11 |
// GNU General Public License for more details.
|
|
|
12 |
//
|
|
|
13 |
// You should have received a copy of the GNU General Public License
|
|
|
14 |
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
|
|
15 |
|
|
|
16 |
/**
|
|
|
17 |
* Report builder selectors
|
|
|
18 |
*
|
|
|
19 |
* @module core_reportbuilder/local/selectors
|
|
|
20 |
* @copyright 2021 Paul Holden <paulh@moodle.com>
|
|
|
21 |
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
|
|
22 |
*/
|
|
|
23 |
|
|
|
24 |
/**
|
|
|
25 |
* Selectors for the Report builder subsystem
|
|
|
26 |
*
|
|
|
27 |
* @property {Object} regions
|
|
|
28 |
* @property {String} regions.systemReport System report page region
|
|
|
29 |
* @property {String} regions.filterButtonLabel Filters form toggle region
|
|
|
30 |
* @property {String} regions.filtersForm Filters form page region
|
|
|
31 |
*/
|
|
|
32 |
const SELECTORS = {
|
|
|
33 |
regions: {
|
|
|
34 |
report: '[data-region="core_reportbuilder/report"]',
|
|
|
35 |
reportTable: '[data-region="reportbuilder-table"]',
|
|
|
36 |
columnHeader: '[data-region="column-header"]',
|
|
|
37 |
filterButtonLabel: '[data-region="filter-button-label"]',
|
|
|
38 |
filtersForm: '[data-region="filters-form"]',
|
|
|
39 |
sidebarMenu: '[data-region="sidebar-menu"]',
|
|
|
40 |
sidebarCard: '[data-region="sidebar-card"]',
|
|
|
41 |
sidebarItem: '[data-region="sidebar-item"]',
|
|
|
42 |
settingsConditions: '[data-region="settings-conditions"]',
|
|
|
43 |
activeConditions: '[data-region="active-conditions"]',
|
|
|
44 |
activeCondition: '[data-region="active-condition"]',
|
|
|
45 |
settingsFilters: '[data-region="settings-filters"]',
|
|
|
46 |
activeFilters: '[data-region="active-filters"]',
|
|
|
47 |
activeFilter: '[data-region="active-filter"]',
|
|
|
48 |
settingsSorting: '[data-region="settings-sorting"]',
|
|
|
49 |
audiencesContainer: '[data-region="audiences"]',
|
|
|
50 |
audienceFormContainer: '[data-region="audience-form-container"]',
|
|
|
51 |
audienceCard: '[data-region="audience-card"]',
|
|
|
52 |
audienceHeading: '[data-region="audience-heading"]',
|
|
|
53 |
audienceForm: '[data-region="audience-form"]',
|
|
|
54 |
audienceEmptyMessage: '[data-region=no-instances-message]',
|
|
|
55 |
audienceDescription: '[data-region=audience-description]',
|
|
|
56 |
audienceNotSavedLabel: '[data-region=audience-not-saved]',
|
|
|
57 |
settingsCardView: '[data-region="settings-cardview"]',
|
|
|
58 |
},
|
|
|
59 |
actions: {
|
|
|
60 |
reportActionPopup: '[data-action="report-action-popup"]',
|
|
|
61 |
reportCreate: '[data-action="report-create"]',
|
|
|
62 |
reportEdit: '[data-action="report-edit"]',
|
|
|
63 |
reportDelete: '[data-action="report-delete"]',
|
|
|
64 |
reportAddColumn: '[data-action="report-add-column"]',
|
|
|
65 |
reportRemoveColumn: '[data-action="report-remove-column"]',
|
|
|
66 |
reportAddCondition: '[data-action="report-add-condition"]',
|
|
|
67 |
reportRemoveCondition: '[data-action="report-remove-condition"]',
|
|
|
68 |
reportAddFilter: '[data-action="report-add-filter"]',
|
|
|
69 |
reportRemoveFilter: '[data-action="report-remove-filter"]',
|
|
|
70 |
reportToggleColumnSort: '[data-action="report-toggle-column-sorting"]',
|
|
|
71 |
reportToggleColumnSortDirection: '[data-action="report-toggle-sort-direction"]',
|
|
|
72 |
sidebarSearch: '[data-action="sidebar-search"]',
|
|
|
73 |
toggleEditPreview: '[data-action="toggle-edit-preview"]',
|
|
|
74 |
audienceAdd: '[data-action="add-audience"]',
|
|
|
75 |
audienceEdit: '[data-action="edit-audience"]',
|
|
|
76 |
audienceDelete: '[data-action="delete-audience"]',
|
|
|
77 |
toggleCardView: '[data-action="toggle-card"]',
|
|
|
78 |
scheduleCreate: '[data-action="schedule-create"]',
|
|
|
79 |
scheduleToggle: '[data-action="schedule-toggle"]',
|
|
|
80 |
scheduleEdit: '[data-action="schedule-edit"]',
|
|
|
81 |
scheduleSend: '[data-action="schedule-send"]',
|
|
|
82 |
scheduleDelete: '[data-action="schedule-delete"]',
|
|
|
83 |
},
|
|
|
84 |
};
|
|
|
85 |
|
|
|
86 |
/**
|
|
|
87 |
* Selector for given report
|
|
|
88 |
*
|
|
|
89 |
* @method forReport
|
|
|
90 |
* @param {Number} reportId
|
|
|
91 |
* @return {String}
|
|
|
92 |
*/
|
|
|
93 |
SELECTORS.forReport = reportId => `${SELECTORS.regions.report}[data-report-id="${reportId}"]`;
|
|
|
94 |
|
|
|
95 |
export default SELECTORS;
|