Skip to content

Commit 12e984f

Browse files
committed
Update cookiegroup.php
1 parent 468d9a9 commit 12e984f

File tree

1 file changed

+41
-15
lines changed

1 file changed

+41
-15
lines changed

pages/cookiegroup.php

Lines changed: 41 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,8 @@
107107
$domains = $db->getArray();
108108

109109
if ($clang_id === rex_clang::getStartId() || !$form->isEditMode()) {
110+
$form->addFieldset(rex_i18n::msg('consent_manager_general'));
111+
110112
$field = $form->addTextField('uid');
111113
$field->setLabel(rex_i18n::msg('consent_manager_uid'));
112114
$field->getValidator()->add('notEmpty', rex_i18n::msg('consent_manager_uid_empty_msg'));
@@ -115,19 +117,22 @@
115117
$field = $form->addCheckboxField('required');
116118
$field->addOption(rex_i18n::msg('consent_manager_cookiegroup_required'), 1);
117119

120+
$field = $form->addPrioField('prio');
121+
$field->setWhereCondition('clang_id = ' . $clang_id);
122+
$field->setLabel(rex_i18n::msg('consent_manager_prio'));
123+
$field->setLabelField('uid');
124+
118125
if (count($domains) > 0) {
126+
$form->addFieldset(rex_i18n::msg('consent_manager_domain'));
119127
$field = $form->addCheckboxField('domain');
120128
$field->setLabel(rex_i18n::msg('consent_manager_domain'));
121129
foreach ($domains as $v) {
122130
$field->addOption((string) $v['uid'], (int) $v['id']);
123131
}
124132
}
125-
126-
$field = $form->addPrioField('prio');
127-
$field->setWhereCondition('clang_id = ' . $clang_id);
128-
$field->setLabel(rex_i18n::msg('consent_manager_prio'));
129-
$field->setLabelField('uid');
130133
} else {
134+
$form->addFieldset(rex_i18n::msg('consent_manager_general'));
135+
131136
$form->addRawField(RexFormSupport::getFakeText(rex_i18n::msg('consent_manager_uid'), (string) $form->getSql()->getValue('uid')));
132137
$form->addRawField(RexFormSupport::getFakeCheckbox('', [[$form->getSql()->getValue('required'), rex_i18n::msg('consent_manager_cookiegroup_required')]])); /** @phpstan-ignore-line */
133138

@@ -140,9 +145,15 @@
140145
$checkboxes[] = [$checked, $v['uid']];
141146
}
142147
if (count($checkboxes) > 0) {
148+
$form->addFieldset(rex_i18n::msg('consent_manager_domain'));
143149
$form->addRawField(RexFormSupport::getFakeCheckbox(rex_i18n::msg('consent_manager_domain'), $checkboxes)); /** @phpstan-ignore-line */
144150
}
145151
}
152+
153+
if ($form->isEditMode() && $clang_id !== rex_clang::getStartId()) {
154+
$form->addFieldset(rex_i18n::msg('consent_manager_general'));
155+
}
156+
146157
$field = $form->addTextField('name');
147158
$field->setLabel(rex_i18n::msg('consent_manager_name'));
148159
$field->getValidator()->add('notEmpty', rex_i18n::msg('consent_manager_uid_empty_msg'));
@@ -157,22 +168,21 @@
157168
$db->select('DISTINCT pid, uid, service_name, variant');
158169
$cookies = $db->getArray();
159170

160-
$cookieLinks = [];
161-
foreach ($cookies as $c) {
162-
$cookieLinks[$c['uid']] = rex_url::backendPage('consent_manager/cookie', ['func' => 'edit', 'pid' => $c['pid']]);
163-
}
164-
165171
if ($clang_id === rex_clang::getStartId() || true !== $form->isEditMode()) {
166172
if ([] !== $cookies) {
173+
$form->addFieldset(rex_i18n::msg('consent_manager_cookies'));
174+
167175
// Styling und Buttons
168-
$html = '<div id="cm-cookie-toolbar" class="input-group input-group-xs" style="margin-bottom: 5px;">';
176+
$html = '<div style="display: flex; justify-content: center; margin-bottom: 5px;">';
177+
$html .= '<div id="cm-cookie-toolbar" class="input-group input-group-xs" style="width: auto;">';
169178
$html .= '<span class="input-group-btn">';
170179
$html .= '<button type="button" class="btn btn-info cm-select-all"><i class="fa fa-check-square-o"></i> Alle auswählen</button>';
171180
$html .= '<button type="button" class="btn btn-default cm-deselect-all"><i class="fa fa-square-o"></i> Alle abwählen</button>';
172181
$html .= '</span>';
173-
$html .= '<input type="text" id="cm-cookie-search" class="form-control" placeholder="Suche...">';
182+
$html .= '<input type="text" id="cm-cookie-search" class="form-control" placeholder="Suche..." style="width: 200px;">';
174183
$html .= '<span class="input-group-addon"><i class="rex-icon rex-icon-search"></i></span>';
175184
$html .= '</div>';
185+
$html .= '</div>';
176186

177187
$html .= '<script nonce="' . rex_response::getNonce() . '">
178188
jQuery(function($) {
@@ -184,12 +194,16 @@
184194
$checkboxes.first().closest(".rex-form-group").addClass("consent-manager-cookie-list");
185195
}
186196
187-
// Toolbar Wrapper
197+
// Toolbar Wrapper finden
188198
var $toolbar = $("#cm-cookie-toolbar");
189199
190-
// Optional: Label des Button-Containers leeren, falls vorhanden
191-
$toolbar.closest(".rex-form-group").find("dt").html("&nbsp;");
200+
// Den zugehörigen Form-Group Container des Toolbars finden
201+
var $toolbarGroup = $toolbar.closest(".rex-form-group");
192202
203+
// Label (dt) des Toolbars entfernen/verstecken für Full-Width Look
204+
$toolbarGroup.addClass("cm-toolbar-group");
205+
$toolbarGroup.find("dt").html("&nbsp;");
206+
193207
// Select All Handler
194208
$toolbar.on("click", ".cm-select-all", function() {
195209
$checkboxes.filter(":visible").prop("checked", true);
@@ -219,6 +233,16 @@
219233
</script>';
220234

221235
$html .= '<style nonce="' . rex_response::getNonce() . '">
236+
/* Toolbar Row Styling */
237+
.cm-toolbar-group {
238+
margin-bottom: 0 !important;
239+
border-bottom: 0 !important;
240+
}
241+
.cm-toolbar-group dd {
242+
padding-bottom: 5px;
243+
}
244+
245+
/* Cookie List Styling */
222246
.consent-manager-cookie-list .checkbox {
223247
display: inline-block;
224248
width: 49%;
@@ -252,6 +276,8 @@
252276
}
253277
} else {
254278
if ([] !== $cookies) {
279+
$form->addFieldset(rex_i18n::msg('consent_manager_cookies'));
280+
255281
$checkboxes = [];
256282
if (null !== $form->getSql()->getValue('cookie')) {
257283
$checkedBoxes = array_filter(explode('|', (string) $form->getSql()->getValue('cookie')), static function ($value) {

0 commit comments

Comments
 (0)