aboutsummaryrefslogtreecommitdiff
path: root/app/views/shared/contacts/details.php
blob: a4605ce915e4a2dda0b650ab41a9faa6712d2599 (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
<td colspan="10">
    <? if (count($relations) === 0) : ?>
        <?= _('Diese Person wurde noch nicht referenziert.') ?>
    <? else : ?>
        <? $object_types = ['Studiengang', 'StudiengangTeil', 'Modul'] ?>
        <? foreach ($object_types as $object_type) : ?>
            <? $object_relations = $relations[$object_type] ?? [] ?>
            <? if (!is_array($object_relations) || count($object_relations) === 0) : continue; endif; ?>
            <table class="default sortable-table" style="margin-top: 10px;" data-sortlist="[[0, 0]]">
                <colgroup>
                    <? if($object_type === 'Studiengang'): ?>
                        <col width="50%">
                        <col width="20%">
                    <? else: ?>
                        <col width="70%">
                    <? endif; ?>
                        <col width="20%">
                        <col width="5%">
                    </colgroup>
                <caption>
                    <?= htmlReady($object_type::getClassDisplayName()) ?>
                </caption>
                <thead>
                    <tr class="sortable">
                    <? if ($object_type === 'Studiengang') : ?>
                        <th data-sorter="text"><?= _('Name'); ?></th>
                        <th data-empty="top" data-sorter="text"><?= _('Ansprechpartnertyp'); ?></th>
                    <? else: ?>
                        <th data-sorter="text"><?= _('Name'); ?></th>
                    <? endif; ?>
                        <th data-sorter="text"><?= _('Kategorie'); ?></th>
                        <th data-sorter="false" style="width: 5%; text-align: right;"><?= _('Aktionen') ?></th>
                    </tr>
                </thead>
                <tbody>
                    <? foreach ($object_relations as $range_entries) : ?>
                        <? uasort($range_entries, function ($a, $b) { return strcmp($a->getDisplayName(), $b->getDisplayName()); }) ?>
                        <? foreach ($range_entries as $rel) : ?>
                            <? $object_name = htmlReady($object_type::find($rel['range_id'])->getDisplayName()); ?>
                                <tr>
                                    <td data-sort-value="<?= $object_name ?>">
                                        <a href="<?= $this->controller->url_for('shared/contacts/dispatch', mb_strtolower($object_type), $rel['range_id']) ?>">
                                            <?= $object_name ?>
                                        </a>
                                    </td>
                                    <? if ($object_type === 'Studiengang') : ?>
                                    <td>
                                        <?= htmlReady($GLOBALS['MVV_CONTACTS']['TYPE']['values'][$rel['type']]['name'] ?? ''); ?>
                                    </td>
                                    <? endif; ?>
                                    <td>
                                        <?= htmlReady($rel->getCategoryDisplayname()); ?>
                                    </td>
                                    <td class="actions">
                                    <?
                                        $actions = ActionMenu::get()->setContext($object_name);
                                        $actions->addLink(
                                            $controller->url_for('shared/contacts/edit_ansprechpartner', $rel['contact_range_id'], $origin),
                                            _('Ansprechpartner bearbeiten'),
                                            Icon::create('edit'),
                                            ['data-dialog' => 'size=auto']
                                        );
                                        $actions->addLink(
                                            $controller->url_for('shared/contacts/delete_range', $rel['contact_range_id']),
                                            _('Ansprechpartner-Zuordnung löschen'),
                                            Icon::create('trash'),
                                            [
                                                'data-confirm' => _('Wollen Sie die Zuordnung des Ansprechpartners wirklich entfernen?'),
                                                'data-dialog' => 'size=auto'
                                            ]
                                        );
                                        echo $actions;
                                    ?>
                                    </td>
                                </tr>
                        <? endforeach; ?>
                    <? endforeach; ?>
                </tbody>
            </table>
        <? endforeach; ?>
    <? endif; ?>
</td>