source: src/main/resources/templates/add_comitee.html@ ac151d1

main
Last change on this file since ac151d1 was ac151d1, checked in by David <darsov2@…>, 11 days ago

initial

  • Property mode set to 100644
File size: 4.5 KB
Line 
1<nav class="navbar bg-secondary bg-gradient container-fluid px-0">
2 <div class="container-fluid">
3 <span class="navbar-brand mb-0 h1">Податоци за комисии</span>
4 </div>
5</nav>
6
7<div class="container mt-5">
8 <h2>Додади комисија</h2>
9 <form th:action="@{/admin/committee}" th:object="${committeeForm}" method="post">
10 <div class="row">
11 <div class="col-md-6">
12 <div class="form-group">
13 <input type="hidden" th:field="*{id}">
14 <label for="realization">Реализација:</label>
15 <select class="form-control" id="realization" th:field="*{electionRealization}">
16 <option th:each="realization : ${realizations}" th:value="${realization?.id}" th:text="${realization.name}">Реализација</option>
17 </select>
18 </div>
19 </div>
20 <div class="col-md-6">
21 <div class="form-group">
22 <label for="municipality">Избирачко Место:</label>
23 <select class="form-control" id="municipality" th:field="*{pollingStation}">
24 <option th:each="station : ${pollingStations}" th:value="${station?.id}" th:text="${station.name}">Ибзирачко место</option>
25 </select>
26 </div>
27 </div>
28 </div>
29
30 <div class="container mt-5">
31 <div class="row">
32 <div class="col-md-5">
33 <label for="leftSelect">Сите членови</label>
34 <select id="leftSelect" class="form-control" size="10" multiple>
35 <option th:each="member : ${committeeMembers}" th:value="${member?.id}" th:text="${member?.name + ' ' + member?.surname}">Избери членови</option>
36 </select>
37 </div>
38 <div class="col-md-2 text-center">
39 <button id="moveRight" class="btn btn-primary mb-2">&gt;&gt;</button>
40 <button id="moveLeft" class="btn btn-primary mb-2">&lt;&lt;</button>
41 </div>
42 <div class="col-md-5">
43 <label for="rightSelect">Избрани членови</label>
44 <select id="rightSelect" class="form-control" size="10" name="membersId" multiple>
45 <!-- Options moved from left select will appear here -->
46 </select>
47 </div>
48 </div>
49 </div>
50 <button type="submit" class="btn btn-success mt-3">Поднеси</button>
51 </form>
52</div>
53
54<div class="container-fluid">
55 <table class="table table-striped table-hover">
56 <thead class="table-header">
57 <tr>
58 <th>#</th>
59 <th>Избирачко место</th>
60 <th>Реализација</th>
61 <th>Членови на комисија</th>
62 </tr>
63 </thead>
64 <tbody>
65 <tr th:onclick="|window.location.href='/edit/${committee.id}/committee';|" th:each="committee, iter : ${committees}">
66 <td th:text="${iter.count}"></td>
67 <td th:text="${committee?.pollingStation?.name}"></td>
68 <td th:text="${committee?.electionRealization?.name}"></td>
69 <td th:text="${committee?.getCommitteeMembers()}"></td>
70<!-- <td th:text="${#strings.arrayJoin(committee.members.stream().map(member -> member.name).toArray(), ', ')}"></td>-->
71 </tr>
72 </tbody>
73 </table>
74</div>
75
76<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
77<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js"></script>
78<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
79
80<script>
81 document.getElementById('moveRight').addEventListener('click', function(e) {
82 e.preventDefault();
83 moveSelectedOptions('leftSelect', 'rightSelect');
84 });
85
86 document.getElementById('moveLeft').addEventListener('click', function(e) {
87 e.preventDefault();
88 moveSelectedOptions('rightSelect', 'leftSelect');
89 });
90
91 function moveSelectedOptions(sourceId, destinationId) {
92 let sourceSelect = document.getElementById(sourceId);
93 let destinationSelect = document.getElementById(destinationId);
94
95 let selectedOptions = Array.from(sourceSelect.selectedOptions);
96 selectedOptions.forEach(option => {
97 destinationSelect.appendChild(option);
98 });
99 }
100</script>
Note: See TracBrowser for help on using the repository browser.