MDL-74694 reportbuilder: standardize report exporter boolean values.

Specify boolean properties as such, avoid direct interpolation into
templates.
This commit is contained in:
Paul Holden
2022-06-12 19:46:39 +01:00
parent ca583bddaf
commit 07d4be70f8
8 changed files with 19 additions and 17 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -129,7 +129,7 @@ export const init = (initialized) => {
const pendingPromise = new Pending('core_reportbuilder/sorting:direction');
const reportElement = toggleSortDirection.closest(reportSelectors.regions.report);
const listElement = toggleSortDirection.closest('li');
const sortenabled = listElement.dataset.columnSortEnabled;
const toggleSorting = listElement.querySelector(reportSelectors.actions.reportToggleColumnSort);
let sortdirection = parseInt(listElement.dataset.columnSortDirection);
if (sortdirection === SORTORDER.ASCENDING) {
@@ -138,7 +138,7 @@ export const init = (initialized) => {
sortdirection = SORTORDER.ASCENDING;
}
updateSorting(reportElement, toggleSortDirection, sortenabled, sortdirection)
updateSorting(reportElement, toggleSortDirection, toggleSorting.checked, sortdirection)
.then(() => {
// Re-focus the toggle sort direction element after reloading the region.
const toggleSortDirectionElement = document.getElementById(toggleSortDirection.id);
@@ -61,7 +61,7 @@ class custom_report_columns_sorting_exporter extends exporter {
'title' => ['type' => PARAM_TEXT],
'heading' => ['type' => PARAM_TEXT],
'sortdirection' => ['type' => PARAM_INT],
'sortenabled' => ['type' => PARAM_INT],
'sortenabled' => ['type' => PARAM_BOOL],
'sortorder' => ['type' => PARAM_INT],
'sorticon' => [
'type' => [
@@ -120,7 +120,7 @@ class custom_report_columns_sorting_exporter extends exporter {
'title' => $columntitle,
'heading' => $columnheading !== '' ? $columnheading : $columntitle,
'sortdirection' => $persistent->get('sortdirection'),
'sortenabled' => (int)$persistent->get('sortenabled'),
'sortenabled' => $persistent->get('sortenabled'),
'sortorder' => $persistent->get('sortorder'),
'sorticon' => $sorticon->export_for_pix(),
'movetitle' => get_string('movesorting', 'core_reportbuilder', $columntitle),
+3 -6
View File
@@ -97,11 +97,8 @@ class custom_report_exporter extends persistent_exporter {
'cardview' => ['type' => custom_report_card_view_exporter::read_properties_definition()],
'filtersapplied' => ['type' => PARAM_INT],
'filterspresent' => ['type' => PARAM_BOOL],
'filtersform' => [
'type' => PARAM_RAW,
'optional' => true,
],
'editmode' => ['type' => PARAM_INT],
'filtersform' => ['type' => PARAM_RAW],
'editmode' => ['type' => PARAM_BOOL],
'javascript' => ['type' => PARAM_RAW],
];
}
@@ -164,7 +161,7 @@ class custom_report_exporter extends persistent_exporter {
'filtersapplied' => $report->get_applied_filter_count(),
'filterspresent' => $filterspresent,
'filtersform' => $filtersform,
'editmode' => (int)$this->editmode,
'editmode' => $this->editmode,
'javascript' => '',
];
}
@@ -104,8 +104,14 @@
<div class="{{#editmode}}p-2 border{{/editmode}}">
<div data-region="core_reportbuilder/report-header" class="dropdown d-flex justify-content-end">
{{! Preview/Edit button }}
<button data-action="toggle-edit-preview" data-edit-mode="{{editmode}}" class="btn btn-outline-secondary"
title="{{#editmode}}{{#str}} switchpreview, core_reportbuilder {{/str}}{{/editmode}}{{^editmode}}{{#str}} switchedit, core_reportbuilder {{/str}}{{/editmode}}">
<button data-action="toggle-edit-preview" class="btn btn-outline-secondary"
{{#editmode}}
data-edit-mode="1" title="{{#str}} switchpreview, core_reportbuilder {{/str}}"
{{/editmode}}
{{^editmode}}
data-edit-mode="0" title="{{#str}} switchedit, core_reportbuilder {{/str}}"
{{/editmode}}
>
{{#editmode}}
{{#pix}} i/preview, core {{/pix}}
{{#str}} preview, core {{/str}}
@@ -49,7 +49,6 @@
data-column-sort-id="{{id}}"
data-column-sort-name="{{title}}"
data-column-sort-direction="{{sortdirection}}"
data-column-sort-enabled="{{sortenabled}}"
data-column-sort-position="{{sortorder}}">
{{>core/drag_handle}}
{{#sorticon}}
+2 -2
View File
@@ -70,7 +70,7 @@ class get_test extends externallib_advanced_testcase {
$this->assertNotEmpty($result['javascript']);
$this->assertFalse($result['filterspresent']);
$this->assertEmpty($result['filtersform']);
$this->assertEquals(1, $result['editmode']);
$this->assertTrue($result['editmode']);
$this->assertTrue($result['filters']['hasavailablefilters']);
$this->assertNotEmpty($result['filters']['availablefilters']);
$this->assertTrue($result['filters']['hasactivefilters']);
@@ -108,7 +108,7 @@ class get_test extends externallib_advanced_testcase {
$this->assertNotEmpty($result['javascript']);
$this->assertTrue($result['filterspresent']);
$this->assertNotEmpty($result['filtersform']);
$this->assertEquals(0, $result['editmode']);
$this->assertFalse($result['editmode']);
$this->assertEmpty($result['filters']);
$this->assertEmpty($result['conditions']);
$this->assertEmpty($result['sorting']);