aboutsummaryrefslogtreecommitdiff
path: root/app/views/admin/statusgroups/_group.php
blob: 443b18df57b54b632f145698e2b1a0e1635652fd (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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<?php
/**
 * @var Admin_StatusgroupsController $controller
 * @var Statusgruppen $group
 * @var array $membersOfInstitute
 * @var array $not_assigned
 * @var string $tutor
 * @var string $searchType
 * @var bool $addQuickfilter
 */
?>
<a name="group-<?= $group->id ?>"></a>
<form method="post">
    <?= CSRFProtection::tokenTag() ?>
    <table id="<?= $group->id ?>" class="default movable">
        <colgroup>
            <col width="1">
            <col width="1">
            <col width="10">
            <col>
            <col width="10%">
        </colgroup>
        <caption>
            <?= htmlReady($group->name) ?>
            <? if ($tutor): ?>
            <span class="actions">
                <? $menu = ActionMenu::get()->setContext($group->name) ?>
                <? $menu->addLink($controller->url_for("admin/statusgroups/editGroup/{$group->id}"),
                        _('Gruppe bearbeiten'), Icon::create('edit'), ['data-dialog' => 'size=auto']) ?>
                <? $search = MultiPersonSearch::get("add_statusgroup" . $group->id)
                        ->setLinkText(_('Personen hinzufügen'))
                        ->setDefaultSelectedUser($group->members->pluck('user_id'))
                        ->setExecuteURL($controller->url_for("admin/statusgroups/memberAdd/{$group->id}"))
                        ->setSearchObject($searchType)
                ?>
                <? if ($addQuickfilter): ?>
                    <? $search->addQuickfilter(_("aktuelle Einrichtung"), $membersOfInstitute)
                              ->addQuickfilter(_('Nicht zugeordnet'), $not_assigned) ?>
                <? endif ?>
                <? $menu->addMultiPersonSearch($search) ?>
                <? $menu->addButton(
                    'delete',
                    _('Gruppe löschen'),
                    Icon::create('trash'),
                    [
                        'data-dialog' => 'size=auto',
                        'formaction'  => $controller->url_for("admin/statusgroups/deleteGroup/{$group->id}"),

                    ]
                ) ?>
                <? $menu->addButton(
                    'sort',
                    _('Gruppe alphabetisch sortieren'),
                    Icon::create('arr_2down'),
                    [
                        'data-dialog' => 'size=auto',
                        'formaction'  => $controller->url_for("admin/statusgroups/sortAlphabetic/{$group->id}"),

                    ]
                ) ?>
                <? if ($group->children): ?>
                    <? $menu->addLink($controller->link_for("admin/statusgroups/sortGroupsAlphabetical/{$group->id}"),
                            _('Untergruppen alphabetisch sortieren'), Icon::create('filter2'),
                            ['data-confirm' => _('Sollen die Untergruppen dieser Gruppe alphabetisch sortiert werden?')]) ?>
                <? endif ?>
                <?= $menu->render() ?>
            </span>
            <? endif; ?>
        </caption>
        <thead>
            <tr>
                <th colspan="4">
                    <?= sprintf(ngettext('%u Mitglied', '%u Mitglieder', count($group->members)),
                                count($group->members)) ?>
                </th>
                <th class="actions"></th>
            </tr>
        </thead>
        <tbody>
            <?= $this->render_partial('admin/statusgroups/_members.php', ['group' => $group]) ?>
        </tbody>
    </table>
</form>

<? if ($group->children): ?>
<ul class='tree-seperator'>
    <li>
    <? foreach ($group->children as $child): ?>
        <?= $this->render_partial('admin/statusgroups/_group.php', ['group' => $child]) ?>
    <? endforeach ?>
    </li>
</ul>
<? endif; ?>