From cfc8ecf834beaacda8e52d67907fdf027996b465 Mon Sep 17 00:00:00 2001 From: David Siegfried <david.siegfried@uni-vechta.de> Date: Sat, 15 Jul 2023 11:44:08 +0000 Subject: [PATCH] fixes #2863 Closes #2863 Merge request studip/studip!1940 --- app/views/course/lvgselector/index.php | 167 +++++++++--------- app/views/course/study_areas/show.php | 21 +-- .../course/wizard/steps/studyareas/index.php | 94 +++++----- 3 files changed, 140 insertions(+), 142 deletions(-) diff --git a/app/views/course/lvgselector/index.php b/app/views/course/lvgselector/index.php index 925c1c4844e..6946f26cd59 100644 --- a/app/views/course/lvgselector/index.php +++ b/app/views/course/lvgselector/index.php @@ -1,98 +1,99 @@ <? if (!$locked) : ?> - <form action="<?= $controller->link_for('course/lvgselector/index/' . $course_id, $url_params ?? []) ?>" - <?= Request::isDialog() ? 'data-dialog' : '' ?> - method="post"> -<? endif ?> -<h1><?= _('Lehrveranstaltungsgruppen') ?></h1> -<div id="assigned" data-ajax-url="<?= $ajax_url ?>" data-forward-url="<?= $no_js_url ?>"> - <h2> +<form action="<?= $controller->link_for('course/lvgselector/index/' . $course_id, $url_params ?? []) ?>" + <?= Request::isDialog() ? 'data-dialog' : '' ?> + method="post" class="default"> + <? endif ?> + <fieldset> + <legend><?= _('Lehrveranstaltungsgruppen') ?></legend> + <div id="assigned" data-ajax-url="<?= $ajax_url ?>" data-forward-url="<?= $no_js_url ?>"> + <h2> <span class="required"> <?= _('Bereits zugewiesen') ?> </span> - </h2> - <ul class="css-tree"> - <li class="lvgroup-tree-assigned-root keep-node" data-id="root"> - <ul id="lvgroup-tree-assigned-selected"> - <? foreach ($selection->getAreas() as $area) : ?> - <?= $this->render_partial('course/wizard/steps/lvgroups/lvgroup_entry', compact('area')) ?> - <? endforeach ?> + </h2> + <ul class="css-tree"> + <li class="lvgroup-tree-assigned-root keep-node" data-id="root"> + <ul id="lvgroup-tree-assigned-selected"> + <? foreach ($selection->getAreas() as $area) : ?> + <?= $this->render_partial('course/wizard/steps/lvgroups/lvgroup_entry', compact('area')) ?> + <? endforeach ?> + </ul> + </li> </ul> - </li> - </ul> - <? if (!$locked) : ?> - <div data-dialog-button class="hidden-no-js"> - <?= Studip\Button::createAccept(_('Speichern'), 'save') ?> - </div> - <? endif ?> -</div> -<? if (!$locked) : ?> - <div id="lvgroup-tree-open-nodes"> - <? foreach ($open_lvg_nodes as $opennode): ?> - <input type="hidden" name="open_lvg_nodes[]" value="<?= htmlReady($opennode) ?>"> - <? endforeach; ?> - </div> - <div id="studyareas" data-ajax-url="<?= $ajax_url ?>" - data-forward-url="<?= $no_js_url ?>" data-no-search-result="<?=_('Es wurde kein Suchergebnis gefunden.') ?>"> - <h2><?= _('Lehrveranstaltungsgruppen Suche') ?></h2> - <div> - <input type="text" style="width: auto;" size="40" name="search" id="lvgroup-tree-search"> - <span id="lvgroup-tree-search-start"> + </div> + <? if (!$locked) : ?> + <div id="lvgroup-tree-open-nodes"> + <? foreach ($open_lvg_nodes as $opennode): ?> + <input type="hidden" name="open_lvg_nodes[]" value="<?= htmlReady($opennode) ?>"> + <? endforeach ?> + </div> + <div id="studyareas" data-ajax-url="<?= $ajax_url ?>" + data-forward-url="<?= $no_js_url ?>" + data-no-search-result="<?= _('Es wurde kein Suchergebnis gefunden.') ?>"> + <h2><?= _('Lehrveranstaltungsgruppen Suche') ?></h2> + <div> + <input type="text" style="width: auto;" size="40" name="search" id="lvgroup-tree-search"> + <span id="lvgroup-tree-search-start"> <?= Icon::create('search')->asInput([ 'name' => 'start_search', 'onclick' => 'return STUDIP.MVV.CourseWizard.searchTree()', ]) ?> </span> - </div> + </div> - <div id="lvgsearchresults" style="display: none;"> - <h2><?= _('Suchergebnisse') ?></h2> - <ul class="collapsable css-tree"> + <div id="lvgsearchresults" style="display: none;"> + <h2><?= _('Suchergebnisse') ?></h2> + <ul class="collapsable css-tree"> - </ul> - </div> - <h2><?= _('Alle Lehrveranstaltungsgruppen') ?></h2> - <ul class="collapsable css-tree"> - <li class="lvgroup-tree-root tree-loaded keep-node"> - <input type="checkbox" id="root" checked="checked"/> - <label for="root" class="undecorated"> - <?= htmlReady(Config::get()->UNI_NAME_CLEAN) ?> - </label> - <ul> - <? $pos_id = 1; ?> - <? foreach ((array) $tree as $node) : ?> - <? $children = $node->getChildren(); ?> - <? if (count($children) || $node->isAssignable()) : ?> - <?= $this->render_partial('course/wizard/steps/lvgroups/_node', [ - 'node' => $node, 'pos_id' => $pos_id++, - 'open_nodes' => $open_lvg_nodes ?? [], - 'children' => $children, - ]) ?> - <? endif; ?> - <? endforeach; ?> + </ul> + </div> + <h2><?= _('Alle Lehrveranstaltungsgruppen') ?></h2> + <ul class="collapsable css-tree"> + <li class="lvgroup-tree-root tree-loaded keep-node"> + <input type="checkbox" id="root" checked="checked"/> + <label for="root" class="undecorated"> + <?= htmlReady(Config::get()->UNI_NAME_CLEAN) ?> + </label> + <ul> + <? $pos_id = 1; ?> + <? foreach ((array)$tree as $node) : ?> + <? $children = $node->getChildren(); ?> + <? if (count($children) || $node->isAssignable()) : ?> + <?= $this->render_partial('course/wizard/steps/lvgroups/_node', [ + 'node' => $node, 'pos_id' => $pos_id++, + 'open_nodes' => $open_lvg_nodes ?? [], + 'children' => $children, + ]) ?> + <? endif ?> + <? endforeach ?> + </ul> + </li> </ul> - </li> - </ul> - </div> - <? if ($open_lvg_nodes) : ?> - <input type="hidden" name="open_nodes" value="<?= json_encode($open_lvg_nodes) ?>"> - <? endif ?> - <script> - //<!-- - $(function() { - var element = $('#lvgroup-tree-search'); - element.on('keypress', function(e) { - if (e.keyCode == 13) { - if (element.val() != '') { - return STUDIP.MVV.CourseWizard.searchTree(); - } else { - return STUDIP.MVV.CourseWizard.resetSearch(); - } - } - }); - }); - //--> - </script> -<? endif ?> -<? if(!$locked) : ?> + </div> + <? if ($open_lvg_nodes) : ?> + <input type="hidden" name="open_nodes" value="<?= json_encode($open_lvg_nodes) ?>"> + <? endif ?> + <script> + //<!-- + $(function () { + let element = $('#lvgroup-tree-search'); + element.on('keypress', function (e) { + if (e.keyCode === 13) { + if (element.val() !== '') { + return STUDIP.MVV.CourseWizard.searchTree(); + } else { + return STUDIP.MVV.CourseWizard.resetSearch(); + } + } + }); + }); + //--> + </script> + <? endif ?> + </fieldset> + <? if (!$locked) : ?> + <footer data-dialog-button class="hidden-no-js"> + <?= Studip\Button::createAccept(_('Speichern'), 'save') ?> + </footer> </form> <? endif ?> diff --git a/app/views/course/study_areas/show.php b/app/views/course/study_areas/show.php index 5bf7a5af046..a80a569c120 100644 --- a/app/views/course/study_areas/show.php +++ b/app/views/course/study_areas/show.php @@ -1,18 +1,9 @@ <? if (!$locked) : ?> - <form action="<?= $controller->link_for('course/study_areas/save/' . $course->id, $url_params) ?>" - <?= Request::isDialog() ? 'data-dialog' : '' ?> - method="post"> -<? endif?> - <?= $tree ?> - <div style="text-align: center;"> - <? if ($is_activated) : ?> - <? if ($is_required) : ?> - <?= _("Die Veranstaltung muss <b>mindestens einen</b> Studienbereich haben.") ?> - <? endif ?> - <? else : ?> - <?= _("Die Veranstaltung darf <b>keine</b> Studienbereiche haben.") ?> +<form action="<?= $controller->link_for('course/study_areas/save/' . $course->id, $url_params) ?>" + <?= Request::isDialog() ? 'data-dialog' : '' ?> + method="post" class="default"> <? endif ?> - </div> -<? if(!$locked) : ?> - </form> + <?= $tree ?> + <? if (!$locked) : ?> +</form> <? endif ?> diff --git a/app/views/course/wizard/steps/studyareas/index.php b/app/views/course/wizard/steps/studyareas/index.php index 5246d3fc688..9f54268fb95 100644 --- a/app/views/course/wizard/steps/studyareas/index.php +++ b/app/views/course/wizard/steps/studyareas/index.php @@ -1,33 +1,30 @@ -<legend> - <?= _('Studienbereiche') ?> -</legend> -<div id="assigned"> - <h2> +<? if (!$stepnumber) : ?> + <fieldset> +<? endif ?> + <legend><?= _('Studienbereiche') ?></legend> + <div id="assigned"> + <h2> <span class="required"> <?= _('Bereits zugewiesen') ?> </span> - </h2> - <ul class="css-tree"> - <li class="sem-tree-assigned-root keep-node" data-id="root"<?= - $assigned ? ' class="hidden-no-js hidden-js"' : '' ?>> - <?= htmlReady(Config::get()->UNI_NAME_CLEAN) ?> - <ul> - <?php foreach ($assigned as $element) : ?> - <?= $this->render_partial('studyareas/_assigned_node', - ['element' => $element, 'studyareas' => $values['studyareas']]) ?> - <?php endforeach ?> - </ul> - </li> - </ul> - <? if (!$stepnumber && empty($values['locked'])) : ?> - <div data-dialog-button class="hidden-no-js"> - <?= Studip\Button::createAccept(_('Speichern'), 'save') ?> - </div> - <? endif ?> -</div> -<? if (empty($values['locked'])) : ?> + </h2> + <ul class="css-tree"> + <li class="sem-tree-assigned-root keep-node" data-id="root"<?= + $assigned ? ' class="hidden-no-js hidden-js"' : '' ?>> + <?= htmlReady(Config::get()->UNI_NAME_CLEAN) ?> + <ul> + <?php foreach ($assigned as $element) : ?> + <?= $this->render_partial('studyareas/_assigned_node', + ['element' => $element, 'studyareas' => $values['studyareas']]) ?> + <?php endforeach ?> + </ul> + </li> + </ul> + </div> + <? if (empty($values['locked'])) : ?> <div id="studyareas" data-ajax-url="<?= $ajax_url ?>" - data-forward-url="<?= $no_js_url ?>" data-no-search-result="<?=_('Es wurde kein Suchergebnis gefunden.') ?>"> + data-forward-url="<?= $no_js_url ?>" + data-no-search-result="<?= _('Es wurde kein Suchergebnis gefunden.') ?>"> <h2><?= _('Alle Studienbereiche') ?></h2> <div> <input style="width:auto" type="text" size="40" name="search" id="sem-tree-search"> @@ -40,7 +37,7 @@ </div> <div id="sem-tree-assign-all" class="hidden-js hidden-no-js"> <a href="" onclick="return STUDIP.CourseWizard.assignAllNodes()"> - <?= Icon::create('arr_2left', 'sort')->asImg() ?> + <?= Icon::create('arr_2left', Icon::ROLE_SORT) ?> <?= _('Alle Suchergebnisse zuweisen') ?> </a> </div> @@ -51,29 +48,38 @@ <?= htmlReady(Config::get()->UNI_NAME_CLEAN) ?> </label> <ul> - <?php foreach ($tree as $node) : ?> - <?= $this->render_partial('studyareas/_node',[ - 'node' => $node, - 'stepnumber' => $stepnumber, - 'temp_id' => $temp_id, - 'values' => $values, - 'open_nodes' => $open_nodes ?? [], - ]) ?> - <?php endforeach ?> + <?php foreach ($tree as $node) : ?> + <?= $this->render_partial('studyareas/_node', [ + 'node' => $node, + 'stepnumber' => $stepnumber, + 'temp_id' => $temp_id, + 'values' => $values, + 'open_nodes' => $open_nodes ?? [], + ]) ?> + <?php endforeach ?> </ul> </li> </ul> </div> <?php if (!empty($values['open_node'])) : ?> - <input type="hidden" name="open_node" value="<?= $values['open_node'] ?>"/> + <input type="hidden" name="open_node" value="<?= $values['open_node'] ?>"/> <?php endif ?> - <script> + <div class="clear"></div> +<? if (!$stepnumber) : ?> + </fieldset> +<? endif ?> +<? if (!$stepnumber && empty($values['locked'])) : ?> + <footer data-dialog-button class="hidden-no-js"> + <?= Studip\Button::createAccept(_('Speichern'), 'save') ?> + </footer> +<? endif ?> +<script> //<!-- - $(function() { - var element = $('#sem-tree-search'); - element.on('keypress', function(e) { - if (e.keyCode == 13) { - if (element.val() != '') { + $(function () { + let element = $('#sem-tree-search'); + element.on('keypress', function (e) { + if (e.keyCode === 13) { + if (element.val() !== '') { return STUDIP.CourseWizard.searchTree(); } else { return STUDIP.CourseWizard.resetSearch(); @@ -82,5 +88,5 @@ }); }); //--> - </script> +</script> <? endif ?> -- GitLab