diff --git a/app/controllers/resources/admin.php b/app/controllers/resources/admin.php index 0ce8d41fc2072913ddc1e4e2273b8361401f4455..80a6c26e8fbbd0dfd0c94b9cdb057169d0c23924 100644 --- a/app/controllers/resources/admin.php +++ b/app/controllers/resources/admin.php @@ -1209,6 +1209,10 @@ class Resources_AdminController extends AuthenticatedController 'RESOURCES_BOOKING_PLAN_END_HOUR', $this->resources_booking_plan_end_hour ); + $this->config->store( + 'RESOURCES_ADDITIONAL_TEXT_ROOM_EXPORT', + Studip\Markup::purifyHtml(Request::get('additional_text')) + ); $this->config->store( 'RESOURCES_EXPORT_BOOKINGTYPES_DEFAULT', diff --git a/app/controllers/resources/print.php b/app/controllers/resources/print.php index a21db5e847ff5700a9585fefda93f2ce5807dbec..292f8b80814cf38f811a5769bcf1a778b7db579c 100644 --- a/app/controllers/resources/print.php +++ b/app/controllers/resources/print.php @@ -142,6 +142,10 @@ class Resources_PrintController extends AuthenticatedController 2 => _('Sperrbuchung'), 3 => _('Planungsbuchung') ]; + + // Get additional text to print + $this->additional_text = Config::get()->RESOURCES_ADDITIONAL_TEXT_ROOM_EXPORT; + if (!$this->clipboard_selected && !$this->print_schedules) { //We have to load all selectable clipboards of the current user: $this->available_clipboards = Clipboard::getClipboardsForUser( diff --git a/app/views/resources/admin/configuration.php b/app/views/resources/admin/configuration.php index 62c1d886bbc089373ff14974e5c08e41349c624c..23ade8d19c03634dadcc6bbbe3b8b9eb9d56d239 100644 --- a/app/views/resources/admin/configuration.php +++ b/app/views/resources/admin/configuration.php @@ -128,6 +128,12 @@ <? endforeach ?> </select> </label> + <label> + <?= _('Zusatztext, der beim Seriendruck unter jedem Raumplan angezeigt werden soll') ?> + <textarea class="add_toolbar wysiwyg" name="additional_text" cols="75" rows="4"> + <?= wysiwygReady($config->RESOURCES_ADDITIONAL_TEXT_ROOM_EXPORT) ?> + </textarea> + </label> </fieldset> <?= \Studip\Button::create(_('Speichern'), 'save') ?> </form> diff --git a/app/views/resources/print/clipboard_rooms.php b/app/views/resources/print/clipboard_rooms.php index 0cba520d95d5913edec34a8124edcd352de4f33c..320280905e694d1ed14a0615f86312f2a5097dbc 100644 --- a/app/views/resources/print/clipboard_rooms.php +++ b/app/views/resources/print/clipboard_rooms.php @@ -177,6 +177,12 @@ ], ['class' => 'resource-plan'] ) ?> + <? if ($additional_text != '') : ?> + <div> + <br> + <?= formatReady($additional_text) ?> + </div> + <? endif ?> </section> <? endforeach ?> <? endif ?> diff --git a/db/migrations/20210421_freetext_in_room_export.php b/db/migrations/20210421_freetext_in_room_export.php new file mode 100644 index 0000000000000000000000000000000000000000..f978a237fba0d7f015891446bed56307de575360 --- /dev/null +++ b/db/migrations/20210421_freetext_in_room_export.php @@ -0,0 +1,27 @@ +<?php +class FreetextInRoomExport extends Migration +{ + public function description() + { + return 'Adds a global freetext for placing in room exports'; + } + + protected function up() + { + $query = "INSERT IGNORE INTO `config` ( + `field`, `value`, `type`, `range`, `section`, `mkdate`, `chdate`, `description` + ) VALUES ( + 'RESOURCES_ADDITIONAL_TEXT_ROOM_EXPORT', '', 'string', 'global', 'resources', UNIX_TIMESTAMP(), + UNIX_TIMESTAMP(), 'Zusatztext, der beim Seriendruck unter jedem Raumplan angezeigt werden soll' + )"; + DBManager::get()->exec($query); + } + + protected function down() + { + $query = "DELETE FROM `config` WHERE `field` = 'RESOURCES_ADDITIONAL_TEXT_ROOM_EXPORT'"; + DBManager::get()->exec($query); + $query = "DELETE FROM `config_values` WHERE `field` = 'RESOURCES_ADDITIONAL_TEXT_ROOM_EXPORT'"; + DBManager::get()->exec($query); + } +}