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
|
<ul class="resource-tree">
<? foreach($resources as $resource): ?>
<? $selected = $resource->id == $selected_resource; ?>
<? $resource = $resource->getDerivedClassInstance() ?>
<? $resource_class = get_class($resource); ?>
<? $search_object = strtolower($resource_class) . '_' . $resource->id; ?>
<li <?= ((!$resource_path && $resource->level > $max_open_depth) || $hide) ? 'style="display: none;"' : ''; ?> >
<? if (count($resource->children)): ?>
<?= Icon::create('arr_1right')->asImg(
[
'class' => implode(
' ',
[
'resource-tree-node',
(
in_array($resource->id, $resource_path) || (!$resource_path && $resource->level < $max_open_depth)
? 'rotated'
: ''
)
]
),
'style' => implode(
'; ',
[
(
in_array($resource->id, $resource_path) || (!$resource_path && $resource->level < $max_open_depth)
? 'transform: rotate(90deg)'
: ''
),
'cursor: pointer;'
]
),
'onClick' => 'STUDIP.Resources.toggleTreeNode($(this).parent());'
]
) ?>
<? endif ?>
<span id="<?= $search_object; ?>" style="cursor: pointer;">
<?= $resource->getIcon()->asImg(
[
'class' => 'text-bottom'
]
) ?>
<?= htmlReady($resource->name) ?>
</span>
<script type="text/javascript">
jQuery(function ($) {
$('#<?= $search_object; ?>').on('click', function(event) {
$('input[name="special__building_location"]').val('<?= $search_object; ?>');
$('button[name="room_search"]').trigger('click');
});
});
</script>
<? if ($resource->children): ?>
<?= $this->render_partial(
'sidebar/room-search-tree-widget',
[
'resources' => $resource->children->orderBy('sort_position DESC, name'),
'selected_resource' => $selected_resource,
'resource_path' => $resource_path,
'hide' => ($resource_path && !in_array($resource->id, $resource_path))
]
) ?>
<? endif ?>
</a>
</li>
<? endforeach ?>
</ul>
|