Changes for page CHOPlist

Last modified by Marco Weber on 2026/10/05 15:41

From version 32.1
edited by Marco Weber
on 2026/10/05 15:12
Change comment: There is no comment for this version
To version 21.1
edited by Marco Weber
on 2026/10/01 14:53
Change comment: Update LiveTable

Summary

Details

Page properties
Content
... ... @@ -1,201 +1,25 @@
1 -```text
2 -{{html clean="false"}}
3 -<style>
4 -
5 -/* =========================================================
6 - CHOP LiveData – Tabellenformatierung
7 - ========================================================= */
8 -
9 -/* Gesamte Tabelle */
10 -table.layout-table-root.responsive-table {
11 - width: 100%;
12 - border-collapse: collapse;
13 - table-layout: fixed;
14 -}
15 -
16 -/* =========================================================
17 - Kopfzeile
18 - ========================================================= */
19 -
20 -table.layout-table-root.responsive-table thead th {
21 - font-weight: bold;
22 - font-size: 1.1em;
23 - background-color: #f2f2f2;
24 - border: 1px solid #999;
25 - padding: 7px 6px;
26 - vertical-align: middle;
27 -}
28 -
29 -/* Eigentliche Spaltenbezeichnung */
30 -table.layout-table-root.responsive-table thead .property-name {
31 - font-weight: bold;
32 -}
33 -
34 -/* Sortier-Button nicht unnötig hervorheben */
35 -table.layout-table-root.responsive-table thead .handle {
36 - font-weight: bold;
37 -}
38 -
39 -/* =========================================================
40 - Filterzeile
41 - ========================================================= */
42 -
43 -table.layout-table-root.responsive-table thead tr.column-filters th {
44 - background-color: #fafafa;
45 - border: 1px solid #bbb;
46 - padding: 4px 5px;
47 -}
48 -
49 -/* Filter-Eingabefelder */
50 -table.layout-table-root.responsive-table .livedata-filter {
51 - width: 100%;
52 - box-sizing: border-box;
53 -}
54 -
55 -table.layout-table-root.responsive-table .filter-text,
56 -table.layout-table-root.responsive-table .filter-date {
57 - width: 100%;
58 - box-sizing: border-box;
59 - min-height: 28px;
60 -}
61 -
62 -/* Selectize-Filter */
63 -table.layout-table-root.responsive-table .selectize-control {
64 - width: 100%;
65 -}
66 -
67 -table.layout-table-root.responsive-table .selectize-input {
68 - min-height: 28px;
69 - padding: 4px 6px;
70 - box-sizing: border-box;
71 -}
72 -
73 -/* =========================================================
74 - Datenzellen
75 - ========================================================= */
76 -
77 -table.layout-table-root.responsive-table tbody td {
78 - border: 1px solid #bbb;
79 - padding: 6px 6px;
80 - vertical-align: top;
81 - overflow-wrap: break-word;
82 - word-wrap: break-word;
83 -}
84 -
85 -/* =========================================================
86 - Spaltenbreiten
87 - ========================================================= */
88 -
89 -/* Code */
90 -table.layout-table-root.responsive-table th[data-title="code"],
91 -table.layout-table-root.responsive-table td[data-title="code"] {
92 - width: 5%;
93 -}
94 -
95 -/* Deutsch */
96 -table.layout-table-root.responsive-table th[data-title="text_de"],
97 -table.layout-table-root.responsive-table td[data-title="text_de"] {
98 - width: 20%;
99 -}
100 -
101 -/* Französisch */
102 -table.layout-table-root.responsive-table th[data-title="text_fr"],
103 -table.layout-table-root.responsive-table td[data-title="text_fr"] {
104 - width: 20%;
105 -}
106 -
107 -/* Italienisch */
108 -table.layout-table-root.responsive-table th[data-title="text_it"],
109 -table.layout-table-root.responsive-table td[data-title="text_it"] {
110 - width: 20%;
111 -}
112 -
113 -/* Gültig ab */
114 -table.layout-table-root.responsive-table th[data-title="valid_start"],
115 -table.layout-table-root.responsive-table td[data-title="valid_start"] {
116 - width: 5%;
117 -}
118 -
119 -/* Gültig bis */
120 -table.layout-table-root.responsive-table th[data-title="valid_end"],
121 -table.layout-table-root.responsive-table td[data-title="valid_end"] {
122 - width: 5%;
123 -}
124 -
125 -/* CHOP-like */
126 -table.layout-table-root.responsive-table th[data-title="chop_like"],
127 -table.layout-table-root.responsive-table td[data-title="chop_like"] {
128 - width: 5%;
129 -}
130 -
131 -/* Behandlungskategorie */
132 -table.layout-table-root.responsive-table th[data-title="treat_cat"],
133 -table.layout-table-root.responsive-table td[data-title="treat_cat"] {
134 - width: 5%;
135 -}
136 -
137 -/* Topographie */
138 -table.layout-table-root.responsive-table th[data-title="topo_group"],
139 -table.layout-table-root.responsive-table td[data-title="topo_group"] {
140 - width: 7%;
141 -}
142 -
143 -/* ChCr only */
144 -table.layout-table-root.responsive-table th[data-title="chcr_only"],
145 -table.layout-table-root.responsive-table td[data-title="chcr_only"] {
146 - width: 5%;
147 -}
148 -
149 -/* =========================================================
150 - Ausrichtung
151 - ========================================================= */
152 -
153 -/* Code */
154 -table.layout-table-root.responsive-table td[data-title="code"] {
155 - text-align: center;
156 -}
157 -
158 -/* Datumsfelder */
159 -table.layout-table-root.responsive-table td[data-title="valid_start"],
160 -table.layout-table-root.responsive-table td[data-title="valid_end"] {
161 - text-align: center;
162 - white-space: nowrap;
163 -}
164 -
165 -/* Kleine Klassifikationsfelder */
166 -table.layout-table-root.responsive-table td[data-title="chop_like"],
167 -table.layout-table-root.responsive-table td[data-title="treat_cat"],
168 -table.layout-table-root.responsive-table td[data-title="topo_group"],
169 -table.layout-table-root.responsive-table td[data-title="chcr_only"] {
170 - text-align: center;
171 -}
172 -
173 -/* =========================================================
174 - Header-Ausrichtung
175 - ========================================================= */
176 -
177 -table.layout-table-root.responsive-table th[data-title="code"],
178 -table.layout-table-root.responsive-table th[data-title="valid_start"],
179 -table.layout-table-root.responsive-table th[data-title="valid_end"],
180 -table.layout-table-root.responsive-table th[data-title="chop_like"],
181 -table.layout-table-root.responsive-table th[data-title="treat_cat"],
182 -table.layout-table-root.responsive-table th[data-title="topo_group"],
183 -table.layout-table-root.responsive-table th[data-title="chcr_only"] {
184 - text-align: center;
185 -}
186 -
187 -</style>
188 -{{/html}}
189 -
190 -{{liveData
191 - id="choplist"
192 - properties="code,text_de,text_fr,text_it,valid_start,valid_end,chop_like,treat_cat,topo_group,chcr_only"
193 - source="liveTable"
194 - sourceParameters="className=CHOPlist.Code.CHOPlistClass&translationPrefix=choplist.livetable."
195 - sort="code:asc"
196 - limit="15"
197 - layouts="table"
198 - showPageSizeDropdown="true"
199 - pageSizes="15,25,50,100"
200 -}}
201 -
1 +{{velocity}}
2 +#set ($columnsProperties = {
3 + 'code': {},
4 + 'text_de': {},
5 + 'text_fr': {},
6 + 'text_it': {},
7 + 'valid_start': {"html":true},
8 + 'valid_end': {"html":true},
9 + 'chop_like': {},
10 + 'treat_cat': {},
11 + 'topo_group': {},
12 + 'chcr_only': {}
13 +})
14 +#set ($options = {
15 + 'className': 'CHOPlist.Code.CHOPlistClass',
16 + 'translationPrefix': 'choplist.livetable.',
17 + 'tagCloud': true,
18 + 'rowCount': 15,
19 + 'maxPages': 10,
20 + 'selectedColumn': 'code',
21 + 'defaultOrder': 'asc'
22 +})
23 +#set ($columns = ['code', 'text_de', 'text_fr', 'text_it', 'valid_start', 'valid_end', 'chop_like', 'treat_cat', 'topo_group', 'chcr_only'])
24 +#livetable('choplist' $columns $columnsProperties $options)
25 +{{/velocity}}