From 96cc878d927210ecdd490296d251220aa202c5ed Mon Sep 17 00:00:00 2001 From: Elmar Ludwig <elmar.ludwig@uni-osnabrueck.de> Date: Tue, 10 May 2022 19:09:09 +0000 Subject: [PATCH] add option ACTION_MENU_THRESHOLD, re #1033 Merge request studip/studip!600 --- .../5.2.3_add_action_menu_threshold.php | 31 +++++++++++++++++++ lib/classes/ActionMenu.php | 3 +- 2 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 db/migrations/5.2.3_add_action_menu_threshold.php diff --git a/db/migrations/5.2.3_add_action_menu_threshold.php b/db/migrations/5.2.3_add_action_menu_threshold.php new file mode 100644 index 00000000000..fd6c1ce881a --- /dev/null +++ b/db/migrations/5.2.3_add_action_menu_threshold.php @@ -0,0 +1,31 @@ +<?php + +class AddActionMenuThreshold extends Migration +{ + public function description() + { + return 'add option for when to render action menu as separate icons'; + } + + public function up() + { + $query = 'INSERT INTO `config` (`field`, `value`, `type`, `section`, `mkdate`, `chdate`, `description`) + VALUES (:name, :value, :type, :section, UNIX_TIMESTAMP(), UNIX_TIMESTAMP(), :description)'; + $statement = DBManager::get()->prepare($query); + $statement->execute([ + 'name' => 'ACTION_MENU_THRESHOLD', + 'description' => 'Obergrenze an Einträgen, bis zu der ein Aktionsmenü als Icons dargestellt wird', + 'section' => 'global', + 'type' => 'integer', + 'value' => '1' + ]); + } + + public function down() + { + $query = "DELETE `config`, `config_values` + FROM `config` LEFT JOIN `config_values` USING (`field`) + WHERE `field` = 'ACTION_MENU_THRESHOLD'"; + DBManager::get()->exec($query); + } +} diff --git a/lib/classes/ActionMenu.php b/lib/classes/ActionMenu.php index e90c77309c4..ed6b36a157a 100644 --- a/lib/classes/ActionMenu.php +++ b/lib/classes/ActionMenu.php @@ -8,7 +8,6 @@ */ class ActionMenu { - const THRESHOLD = 1; const TEMPLATE_FILE_SINGLE = 'shared/action-menu-single.php'; const TEMPLATE_FILE_MULTIPLE = 'shared/action-menu.php'; @@ -242,7 +241,7 @@ class ActionMenu return ''; } - $template_file = count($this->actions) <= self::THRESHOLD + $template_file = count($this->actions) <= Config::get()->ACTION_MENU_THRESHOLD ? self::TEMPLATE_FILE_SINGLE : self::TEMPLATE_FILE_MULTIPLE; -- GitLab