aboutsummaryrefslogtreecommitdiff
path: root/app/views/course/wizard/steps/lvgroups/_node.php
blob: 78db2f19092d256bec3666c075a78c65da002e31 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<? if (empty($search_result) || in_array($node->id, $search_result)) : ?>
<? $id = $node->id . '-' . $pos_id; ?>
    <? if (!count($children)) : ?>
        <li><?= _('Keine Module verfügbar') ?></li>
    <? else : ?>
        <li class="lvgroup-tree-<?= htmlReady($id) ?> keep-node" data-id="<?= $id ?>" data-type="<?= get_class($node) ?>">
            <? if ($node->isAssignable()) : ?>
                <?= Icon::create('arr_2left', 'sort')->asInput(["name" => 'assign[' . $node->id . ']', "onclick" => "return STUDIP.MVV.CourseWizard.assignNode('" . $node->id . "')", "style" => in_array($id, $selection->getLvGruppenIDs()) ? 'display: none;' : '']) ?>
                <?= htmlReady($node->getDisplayname()) ?>
            <? else : ?>
            <input type="checkbox" id="<?= htmlReady($id) ?>"<?= (in_array($id, $open_nodes)) ? ' checked="checked"' : '' ?>/>
            <label onclick="return STUDIP.MVV.CourseWizard.getTreeChildren('<?= htmlReady($id) ?>', true, '<?= htmlReady(get_class($node)) ?>')"
                   for="<?= htmlReady($id) ?>" class="undecorated">
                <a href="<?= URLHelper::getLink($no_js_url,
                    ['open_node' => $id, 'open_nodes' => json_encode($open_nodes)]) ?>">
                <?= htmlReady($node->getDisplayname()) ?>
                </a>
            </label>
            <input type="hidden" name="open_nodes[]" value="<?= $id; ?>">
            <ul>
                <? if (in_array($id, $open_nodes)) : ?>
                    <? $i = 1; ?>
                    <? if (!count($children)) : ?>
                        <li><?= _('Keine Module verfügbar') ?></li>
                    <? else : ?>
                        <? foreach ($children as $child) : ?>
                            <? $children = $child->getChildren(); ?>
                            <? if (count($children) || $child->isAssignable()) : ?>
                                <?= $this->render_partial('lvgroups/_node',
                                    ['node' => $child, 'stepnumber' => $stepnumber,
                                    'pos_id' => $pos_id . '_' . $i++, 'open_nodes' => $open_nodes ?: [],
                                    'search_result' => $search_result ?: [],
                                    'children' => $children]) ?>
                            <? endif; ?>
                        <? endforeach ?>
                    <? endif; ?>
                <? endif; ?>
            </ul>
            <? endif; ?>
        </li>
    <? endif ?>
<? endif ?>