Merge branch 'MDL-75931' of https://github.com/paulholden/moodle
This commit is contained in:
@@ -18,10 +18,10 @@ declare(strict_types=1);
|
||||
|
||||
namespace core_reportbuilder\external;
|
||||
|
||||
use core_reportbuilder\form\card_view;
|
||||
use renderer_base;
|
||||
use core\external\exporter;
|
||||
use core_reportbuilder\local\report\base;
|
||||
use core_reportbuilder\datasource;
|
||||
use core_reportbuilder\form\card_view;
|
||||
|
||||
/**
|
||||
* Custom report card view exporter class
|
||||
@@ -39,7 +39,7 @@ class custom_report_card_view_exporter extends exporter {
|
||||
*/
|
||||
protected static function define_related(): array {
|
||||
return [
|
||||
'report' => base::class,
|
||||
'report' => datasource::class,
|
||||
];
|
||||
}
|
||||
|
||||
@@ -66,7 +66,7 @@ class custom_report_card_view_exporter extends exporter {
|
||||
* @return array
|
||||
*/
|
||||
protected function get_other_values(renderer_base $output): array {
|
||||
/** @var base $report */
|
||||
/** @var datasource $report */
|
||||
$report = $this->related['report'];
|
||||
|
||||
$reportid = $report->get_report_persistent()->get('id');
|
||||
|
||||
@@ -19,7 +19,7 @@ declare(strict_types=1);
|
||||
namespace core_reportbuilder\external;
|
||||
|
||||
use renderer_base;
|
||||
use core_reportbuilder\local\report\base;
|
||||
use core_reportbuilder\datasource;
|
||||
|
||||
/**
|
||||
* Custom report column cards exporter class
|
||||
@@ -37,7 +37,7 @@ class custom_report_column_cards_exporter extends custom_report_menu_cards_expor
|
||||
*/
|
||||
protected static function define_related(): array {
|
||||
return [
|
||||
'report' => base::class,
|
||||
'report' => datasource::class,
|
||||
];
|
||||
}
|
||||
|
||||
@@ -48,7 +48,7 @@ class custom_report_column_cards_exporter extends custom_report_menu_cards_expor
|
||||
* @return array
|
||||
*/
|
||||
protected function get_other_values(renderer_base $output): array {
|
||||
/** @var base $report */
|
||||
/** @var datasource $report */
|
||||
$report = $this->related['report'];
|
||||
|
||||
$menucards = [];
|
||||
|
||||
@@ -21,8 +21,8 @@ namespace core_reportbuilder\external;
|
||||
use pix_icon;
|
||||
use renderer_base;
|
||||
use core\external\exporter;
|
||||
use core_reportbuilder\datasource;
|
||||
use core_reportbuilder\local\models\column;
|
||||
use core_reportbuilder\local\report\base;
|
||||
|
||||
/**
|
||||
* Custom report columns sorting exporter class
|
||||
@@ -40,7 +40,7 @@ class custom_report_columns_sorting_exporter extends exporter {
|
||||
*/
|
||||
protected static function define_related(): array {
|
||||
return [
|
||||
'report' => base::class,
|
||||
'report' => datasource::class,
|
||||
];
|
||||
}
|
||||
|
||||
@@ -87,7 +87,7 @@ class custom_report_columns_sorting_exporter extends exporter {
|
||||
* @return array
|
||||
*/
|
||||
protected function get_other_values(renderer_base $output): array {
|
||||
/** @var base $report */
|
||||
/** @var datasource $report */
|
||||
$report = $this->related['report'];
|
||||
|
||||
$reportid = $report->get_report_persistent()->get('id');
|
||||
|
||||
@@ -20,8 +20,8 @@ namespace core_reportbuilder\external;
|
||||
|
||||
use renderer_base;
|
||||
use core\external\exporter;
|
||||
use core_reportbuilder\datasource;
|
||||
use core_reportbuilder\form\condition;
|
||||
use core_reportbuilder\local\report\base;
|
||||
use core_reportbuilder\local\models\filter;
|
||||
|
||||
/**
|
||||
@@ -40,7 +40,7 @@ class custom_report_conditions_exporter extends exporter {
|
||||
*/
|
||||
protected static function define_related(): array {
|
||||
return [
|
||||
'report' => base::class,
|
||||
'report' => datasource::class,
|
||||
];
|
||||
}
|
||||
|
||||
@@ -94,7 +94,7 @@ class custom_report_conditions_exporter extends exporter {
|
||||
* @return array
|
||||
*/
|
||||
protected function get_other_values(renderer_base $output): array {
|
||||
/** @var base $report */
|
||||
/** @var datasource $report */
|
||||
$report = $this->related['report'];
|
||||
$reportid = $report->get_report_persistent()->get('id');
|
||||
|
||||
|
||||
@@ -125,6 +125,9 @@ class custom_report_exporter extends persistent_exporter {
|
||||
* @return array
|
||||
*/
|
||||
protected function get_other_values(renderer_base $output): array {
|
||||
/** @var datasource $report */
|
||||
$report = manager::get_report_from_persistent($this->persistent);
|
||||
|
||||
$filterspresent = false;
|
||||
$filtersform = '';
|
||||
|
||||
@@ -140,18 +143,12 @@ class custom_report_exporter extends persistent_exporter {
|
||||
$table->set_filterset($filterset);
|
||||
|
||||
// Generate filters form if report contains any filters.
|
||||
$source = $this->persistent->get('source');
|
||||
/** @var datasource $datasource */
|
||||
$datasource = new $source($this->persistent);
|
||||
|
||||
$filterspresent = !empty($datasource->get_active_filters());
|
||||
$filterspresent = !empty($report->get_active_filters());
|
||||
if ($filterspresent) {
|
||||
$filtersform = $this->generate_filters_form()->render();
|
||||
}
|
||||
}
|
||||
|
||||
$report = manager::get_report_from_persistent($this->persistent);
|
||||
|
||||
// If we are editing we need all this information for the template.
|
||||
$editordata = [];
|
||||
if ($this->editmode) {
|
||||
|
||||
@@ -20,7 +20,7 @@ namespace core_reportbuilder\external;
|
||||
|
||||
use renderer_base;
|
||||
use core\external\exporter;
|
||||
use core_reportbuilder\local\report\base;
|
||||
use core_reportbuilder\datasource;
|
||||
use core_reportbuilder\local\models\filter;
|
||||
use core_reportbuilder\output\filter_heading_editable;
|
||||
|
||||
@@ -40,7 +40,7 @@ class custom_report_filters_exporter extends exporter {
|
||||
*/
|
||||
protected static function define_related(): array {
|
||||
return [
|
||||
'report' => base::class,
|
||||
'report' => datasource::class,
|
||||
];
|
||||
}
|
||||
|
||||
@@ -98,7 +98,7 @@ class custom_report_filters_exporter extends exporter {
|
||||
* @return array
|
||||
*/
|
||||
protected function get_other_values(renderer_base $output): array {
|
||||
/** @var base $report */
|
||||
/** @var datasource $report */
|
||||
$report = $this->related['report'];
|
||||
|
||||
// Current filters added to the report.
|
||||
|
||||
@@ -37,6 +37,7 @@ Information provided here is intended especially for developers.
|
||||
- `core_reportbuilder_columns_*`
|
||||
- `core_reportbuilder_conditions_*`
|
||||
- `core_reportbuilder_filters_*`
|
||||
* The `custom_report_*` exporters now accept only classes that extend datasource as part of their related data properties
|
||||
* The following permission methods now accept an optional `$context` parameter (default system context):
|
||||
- `[require_]can_view_reports_list`
|
||||
- `[require_]can_create_report`
|
||||
|
||||
Reference in New Issue
Block a user