diff options
| author | Marcus Eibrink-Lunzenauer <lunzenauer@elan-ev.de> | 2024-06-18 13:18:06 +0000 |
|---|---|---|
| committer | Marcus Eibrink-Lunzenauer <lunzenauer@elan-ev.de> | 2024-06-18 13:18:06 +0000 |
| commit | 33fd1358507b4a5abb3dcebe78d407d0567717c1 (patch) | |
| tree | 6bd8f6959da4c3fc1b8907c0bbc28eb9e10d4a5a /lib/plugins/core/AdminCourseWidgetPlugin.php | |
| parent | 42d46671c0309bddb71a91bbfdc5f2fa2e44384e (diff) | |
Deprecate `StudipAutoloader` and use composer's `autoload`
Closes #4282
Merge request studip/studip!3099
Diffstat (limited to 'lib/plugins/core/AdminCourseWidgetPlugin.php')
| -rw-r--r-- | lib/plugins/core/AdminCourseWidgetPlugin.php | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/lib/plugins/core/AdminCourseWidgetPlugin.php b/lib/plugins/core/AdminCourseWidgetPlugin.php new file mode 100644 index 0000000..c554626 --- /dev/null +++ b/lib/plugins/core/AdminCourseWidgetPlugin.php @@ -0,0 +1,42 @@ +<?php +/** + * This plugin interface is used to add functionality to the sidebar of the + * admin courses page. + * + * @see AdminCourseOptionsWidget + * @author Jan-Hendrik Willms <tleilax+studip@gmail.com> + * @since Stud.IP 5.4 + */ +interface AdminCourseWidgetPlugin +{ + /** + * Returns a list of widgets for the admin courses page. + * + * @return AdminCourseOptionsWidget[] + */ + public function getWidgets(): iterable; + + /** + * Return the filter values this widget provides. Return an associative + * array with filter names as indices and filter values as values. + * + * @return array + */ + public function getFilters(): array; + + /** + * Apply the set filters to the AdminCourseFilter query. + * + * @param AdminCourseFilter $filter + */ + public function applyFilters(AdminCourseFilter $filter): void; + + + /** + * Set filters from the admin course page. You will be given an associative + * array according to getFilters(). + * + * @param array $filters + */ + public function setFilters(array $filters): void; +} |
