aboutsummaryrefslogtreecommitdiff
path: root/lib/plugins/core/StudIPPlugin.class.php
diff options
context:
space:
mode:
authorRasmus Fuhse <fuhse@data-quest.de>2023-07-13 13:14:56 +0000
committerRasmus Fuhse <fuhse@data-quest.de>2023-07-13 13:14:56 +0000
commit74603117e50e764dfb0233d49cb99ffafaccac54 (patch)
tree6dda9ee2c02a06a275d76aa05619eb6402176f18 /lib/plugins/core/StudIPPlugin.class.php
parent578284e2ee4d8c8f2901b26abcb3efd440b9ad7f (diff)
Resolve "Restrukturierung der Veranstaltungsverwaltung inklusive Mehr-Seite"
Closes #2440 Merge request studip/studip!1695
Diffstat (limited to 'lib/plugins/core/StudIPPlugin.class.php')
-rw-r--r--lib/plugins/core/StudIPPlugin.class.php39
1 files changed, 39 insertions, 0 deletions
diff --git a/lib/plugins/core/StudIPPlugin.class.php b/lib/plugins/core/StudIPPlugin.class.php
index fafd583..a3dacb6 100644
--- a/lib/plugins/core/StudIPPlugin.class.php
+++ b/lib/plugins/core/StudIPPlugin.class.php
@@ -81,6 +81,45 @@ abstract class StudIPPlugin
}
/**
+ * Returns the description of the plugin either from plugins-table or from the manifest's descriptionlong
+ * or description attribute.
+ * @return string|null
+ */
+ public function getPluginDescription()
+ {
+ $metadata = $this->getMetadata();
+ $language = getUserLanguage(User::findCurrent()->id);
+ if ($metadata['descriptionlong_' . $language]) {
+ return $metadata['descriptionlong_' . $language];
+ }
+ if ($metadata['description_' . $language]) {
+ return $metadata['description_' . $language];
+ }
+ $description = $metadata['descriptionlong'] ?? $metadata['description'];
+
+ if ($this->plugin_info['description_mode'] === 'override_description') {
+ return $this->plugin_info['description'];
+ } else {
+ return $description . $this->plugin_info['description'];
+ }
+ }
+
+ public function getDescriptionMode()
+ {
+ return $this->plugin_info['description_mode'];
+ }
+
+ public function isHighlighted()
+ {
+ return $this->plugin_info['highlight_until'] > time();
+ }
+
+ public function getHighlightText()
+ {
+ return $this->plugin_info['highlight_text'];
+ }
+
+ /**
* Returns the version of this plugin as defined in manifest.
* @return string
*/