diff options
| author | Finn Schneider <schneider@data-quest.de> | 2025-10-09 13:51:33 +0000 |
|---|---|---|
| committer | Rasmus Fuhse <fuhse@data-quest.de> | 2025-10-09 13:51:33 +0000 |
| commit | 9b19d1b4c1f0eb3001fa4dbade7c0128bc4147f4 (patch) | |
| tree | 5e1c45eed2aa9ded7b1c5168938028caaef1f7d8 /app/controllers/course/wiki.php | |
| parent | 0e869b89310f91995998a2ac542fe93b83bd5175 (diff) | |
Resolve "Wiki: Erste Seite die angelegt wird muss Wiki-Startseite sein"
Closes #5271
Merge request studip/studip!4519
Diffstat (limited to 'app/controllers/course/wiki.php')
| -rw-r--r-- | app/controllers/course/wiki.php | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/app/controllers/course/wiki.php b/app/controllers/course/wiki.php index cf02e04..cd73b99 100644 --- a/app/controllers/course/wiki.php +++ b/app/controllers/course/wiki.php @@ -950,7 +950,6 @@ class Course_WikiController extends AuthenticatedController $page = new WikiPage(); $page->parent_id = $parent_id ?? $this->range->getConfiguration()->WIKI_STARTPAGE_ID; $parent_id = $parent_id ?? $this->range->getConfiguration()->WIKI_STARTPAGE_ID; - PageLayout::setTitle(_('Neue Wikiseite erstellen')); $options = [ '' => _('Keine') ]; @@ -961,6 +960,12 @@ class Course_WikiController extends AuthenticatedController 'range_id = ? ORDER BY name', [$this->range->id] ); + $is_start_page = count($options) <= 1; + if ($is_start_page) { + PageLayout::setTitle(_('Wiki-Startseite erstellen')); + } else { + PageLayout::setTitle(_('Neue Wikiseite erstellen')); + } $this->form = \Studip\Forms\Form::fromSORM( $page, [ @@ -975,8 +980,12 @@ class Course_WikiController extends AuthenticatedController 'mapper' => function () { return User::findCurrent()->id; } ], 'name' => [ - 'required' => true, + 'required' => !$is_start_page, 'label' => _('Name der Seite'), + 'type' => $is_start_page ? 'no' : 'text', + 'mapper' => function ($value) use ($is_start_page) { + return $is_start_page ? 'Wiki-Startseite' : $value; + }, 'validate' => function ($value, $input) { $name_count = WikiPage::countBySql('`name` = :name AND `range_id` = :range_id', [ 'name' => $value, |
