Projekt

Obecné

Profil

Stáhnout (11 KB) Statistiky
| Větev: | Revize:
1
<html xmlns:th="http://www.thymeleaf.org"
2
      xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
3
      layout:decorator="~{/layouts/layout}">
4

    
5
    <div layout:fragment="content">
6

    
7
      <select class="hidden" id="allParametersHiddenSelect">
8
        <option th:each="parameterType : ${allParameterTypes}" th:value="${parameterType.id}" th:text="${parameterType.name}"></option>
9
      </select>
10

    
11

    
12
      <select class="hidden" id="allFunctionsHiddenSelect">
13
        <option th:each="function : ${allFunctions}" th:value="${{function.id}}" th:text="${function.name}"></option>
14
      </select>
15

    
16

    
17
      <select class="hidden" id="allOperatorsHiddenSelect">
18
        <option th:each="operator : ${allOperators}" th:value="${{operator.id}}" th:text="${operator.name}"></option>
19
      </select>
20

    
21
      <div class="container">
22
        <h1 th:text="${title}"></h1>
23
        <a href="/" class="btn btn-success mb-2">Zpět</a>
24
      </div>
25

    
26

    
27
      <form th:object="${assembly}" th:action="${assembly.id} != null ? @{/assembly_edit(assemblyID=${assembly.id})} : @{/assembly_new}" method="post">
28
        <input type="hidden" th:field="*{id}" th:value="*{id}" />
29
        <div class="container box">
30
          <div class="col-md-12">
31
              <div class="form-group row">
32
                <label for="name" class="col-sm-2 col-form-label">Název sestavy:</label>
33
                <div class="col-sm-10">
34
                  <input type="text" class="form-control" name="assemblyName" id="assemblyName" th:field="*{name}" th:value="*{name}" required>
35
                </div>
36
              </div>
37
              <div class="form-group row">
38
                <label for="assemblySQLQuery" class="col-sm-2 col-form-label">SQL dotaz:</label>
39
                <div class="col-sm-10">
40
                  <textarea class="form-control" name="assemblySQLQuery" id="assemblySQLQuery" rows="6" th:field="*{SQLQuery}" th:text="*{SQLQuery}" required></textarea>
41
                </div>
42
              </div>
43
              <div class="form-group row">
44
                <label class="form-check-label col-sm-2" for="checkboxPublic">Veřejný:</label>
45
                <div class="col-sm-10">
46
                  <div class="form-check">
47
                    <input class="form-check-input" type="checkbox"  th:checked="*{isPublic} == 1" name="checkboxPublic" id="checkboxPublic">
48
                  </div>
49
                </div>
50
              </div>
51
          </div>
52
        </div>
53

    
54

    
55
        <div class="container box">
56
          <div class="col-md-12">
57
          <div class="box-header">
58
            <h3 class="box-title">Parametry</h3>
59
            <span class="btn btn-success" id="add-param-button"><i class="fas fa-plus"></i> Přidat parametr</span>
60
          </div>
61

    
62
          <div id="accordion" class="panel-wrapper">
63
            <div th:each="parameter, i : *{parameters}" class="panel-group parameter">
64
              <input type="hidden" th:field="*{parameters[__${i.index}__]}" th:value="*{parameters[__${i.index}__].id}" />
65
              <input type="hidden" class="parametr-order" th:field="*{parameters[__${i.index}__].parameterOrder}" th:value="*{parameters[__${i.index}__].parameterOrder}" />
66
              <div class="panel panel-default">
67
                <div class="panel-heading">
68
                  <span class="panel-title">
69
                    <a data-toggle="collapse" data-parent="#accordion" th:attr="href='#collapse' + ${i.index}">
70
                      <i class="fas fa-angle-right"></i> <span th:text="*{parameters[__${i.index}__].name}"></span>
71
                    </a>
72
                    <span class="align-right collapse-actions">
73
                      <span class="action-padding input-action-margin-collapse sort-icon">
74
                        <i class="fas fa-sort"></i>
75
                      </span>
76
                      <span class="action-padding action-button input-action-margin-collapse">
77
                        <span href=# class="action-link far fa-trash-alt" onclick="removePanel(this);"></span>
78
                      </span>
79
                    </span>
80
                  </span>
81
                </div>
82
                <div th:id="'collapse' + ${i.index}" class="panel-collapse collapse">
83
                  <div class="panel-body">
84
                    <div class="form-group row">
85
                      <label th:for="'parameterName' + ${i.index}" class="col-sm-2 col-form-label">Název:</label>
86
                      <div class="col-sm-10">
87
                        <input type="text" class="form-control" th:name="'parameterName' + ${i.index}" th:id="'parameterName' + ${i.index}" th:field="*{parameters[__${i.index}__].name}" th:value="*{parameters[__${i.index}__].name}" required>
88
                      </div>
89
                    </div>
90
                    <div class="form-group row">
91
                      <label th:for="'parameterSQLName' + ${i.index}" class="col-sm-2 col-form-label">V&nbsp;SQL:</label>
92
                      <div class="col-sm-10">
93
                        <input type="text" class="form-control" th:name="'parameterSQLName' + ${i.index}" th:id="'parameterSQLName' + ${i.index}" th:field="*{parameters[__${i.index}__].nameOfSelect}" th:value="*{parameters[__${i.index}__].nameOfSelect}" required>
94
                      </div>
95
                    </div>
96
                    <div class="form-group row">
97
                      <label for="exampleFormControlSelect1" class="col-sm-2">Typ:</label>
98
                      <div class="col-sm-10">
99
                        <select th:field="*{parameters[__${i.index}__].parameterType}" class="form-control type-select" id="exampleFormControlSelect1">
100
                          <option th:each="parameterType : ${allParameterTypes}" th:value="${parameterType.id}" th:text="${parameterType.name}"></option>
101
                        </select>
102
                      </div>
103
                    </div>
104

    
105
                    <div th:classappend="!(*{parameters[__${i.index}__].parameterType.name.equals('Výčet')}) ? hidden" class="enum_box">
106
                      Hodnoty:
107
                      <div class="enum_values col-md-8">
108
                        <div class="enum-wrapper">
109
                          <input type="hidden" class="enum-index" th:value="${i.index}">
110
                          <div th:each="parameterValue, j : *{parameters[__${i.index}__].parameterValues}" class="input-action-box input-border-bottom enum-row">
111
                            <input type="text" readonly class="form-control-plaintext" th:field="*{parameters[__${i.index}__].parameterValues[__${j.index}__].value}" th:value="*{parameters[__${i.index}__].parameterValues[__${j.index}__].value}">
112

    
113
                            <span class="action-padding input-action-margin sort-icon">
114
                              <i class="fas fa-sort"></i>
115
                            </span>
116
                            <span class="action-padding action-button input-action-margin">
117
                              <span class="action-link far fa-trash-alt" onclick="removeEnum(this)"></span>
118
                            </span>
119
                          </div>
120
                        </div>
121

    
122
                        <div class="form-group row form-add-item">
123
                          <div class="col-md-9">
124
                            <input type="text" class="form-control enum-add-input">
125
                          </div>
126
                          <span class="btn btn-primary mb-2 enum-add-button">Přidat</span>
127
                        </div>
128
                      </div>
129
                    </div>
130

    
131
                    <div th:name="'parameterLocations' + ${i.index}" class="form-group row">
132
                      <label for="exampleFormControlSelect1" class="col-sm-2">Umístění:</label>
133
                      <div class="col-sm-10">
134
                        <div th:each="location, j : ${allLocations}" class="form-check form-check-inline">
135
                          <input class="form-check-input" th:field="*{parameters[__${i.index}__].locations}" type="checkbox" th:value="${location.id}" >
136
                          <label class="form-check-label" th:for="${location.name}" th:text="${location.name}"></label>
137
                        </div>
138
                      </div>
139
                    </div>
140
                    <div class="form-group row">
141
                        <label for="exampleFormControlSelect1" class="col-sm-2">Funkce:</label>
142
                        <div class="col-sm-10">
143
                          <select th:field="*{parameters[__${i.index}__].functions}" class="mbSelect selectpicker" multiple data-live-search="true">
144
                            <option th:each="function : ${allFunctions}" th:value="${{function.id}}" th:text="${function.name}"></option>
145
                          </select>
146
                        </div>
147
                    </div>
148
                    <div class="form-group row">
149
                        <label for="exampleFormControlSelect1" class="col-sm-2">Operátory:</label>
150
                        <div class="col-sm-10">
151
                          <select th:field="*{parameters[__${i.index}__].operators}" class="mbSelect selectpicker" multiple data-live-search="true">
152
                            <option th:each="operator : ${allOperators}" th:value="${{operator.id}}" th:text="${operator.name}"></option>
153
                          </select>
154
                        </div>
155
                    </div>
156
                  </div>
157
                </div>
158
              </div>
159
            </div>
160
          </div>
161
        </div>
162
      </div>
163

    
164
        <div class="container box">
165
          <div class="col-md-4">
166
            <div class="box-header">
167
              <h3 class="box-title">Oprávnění</h3>
168
            </div>
169
            <div id ="permission-wrapper">
170
              <div th:each="roleWithAccess, i : ${assembly.roles}" class="input-action-box input-border-bottom permission-row">
171
                <input type="hidden" class="permission-role" th:field="${assembly.roles[__${i.index}__].id}" th:value="${roleWithAccess.id}">
172
                <input type="text" readonly class="form-control-plaintext permission-title" th:field="${assembly.roles[__${i.index}__].name}" th:value="${roleWithAccess.name}">
173

    
174

    
175
                <span class="action-padding action-button input-action-margin">
176
                  <span class="action-link far fa-trash-alt" onclick="removeRole(this);"></span>
177
                </span>
178
              </div>
179
            </div>
180

    
181
            <div class="form-group row form-add-item">
182
              <div class="col-md-9">
183
                <select class="form-control " id="permission-select" name="permission-select">
184
                  <option th:each="role : ${allRoles}" th:value="${role.id}" th:text="${role.name}"></option>
185
                </select>
186
              </div>
187
              <span class="btn btn-primary mb-2" id="permission-button">Přidat</span>
188
            </div>
189
          </div>
190
        </div>
191

    
192
        <div class="submit_center_button">
193
            <button type="submit" class="btn btn-success mb-2">Uložit</button>
194
        </div>
195

    
196
      </form>
197

    
198

    
199
    </div>
200

    
201
    <div layout:fragment="scripts">
202
      <script type="text/javascript" src="js/assemblyManageScripts.js"></script>
203
    </div>
204

    
205
</html>
(2-2/4)