Skip to content

Commit 9f8ad04

Browse files
committed
2 parents 8f0f046 + c28a7eb commit 9f8ad04

File tree

6 files changed

+115
-132
lines changed

6 files changed

+115
-132
lines changed

assets/js/bootstrap-tab.min.js

Lines changed: 0 additions & 11 deletions
This file was deleted.

blocks/pure_cookies_notice/controller.php

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -240,16 +240,25 @@ public function on_start()
240240

241241
public function add()
242242
{
243+
$this->set('title', '');
244+
$this->set('agreeText', '');
243245
$this->set('position', 'bottom');
246+
$this->set('textColor', '');
247+
$this->set('linkColor', '');
248+
$this->set('backgroundColor', '');
249+
$this->set('sitewideCookie', false);
250+
$this->set('onlyForEU', false);
251+
$this->set('interactionImpliesOk', false);
252+
$this->set('sitewideCookie', true);
244253
$this->edit();
245254
}
246255

247256
public function edit()
248257
{
258+
$this->set('ui', $this->app->make('helper/concrete/ui'));
249259
$this->set('geolocationSupported', $this->geolocationSupported());
250260
$this->set('color', $this->app->make('helper/form/color'));
251261
$this->requireAsset('css', 'pure_cookies_notice/edit');
252-
$this->requireAsset('javascript', 'bootstrap/tab');
253262
$this->set('positions', [
254263
'top' => t('Top'),
255264
'bottom' => t('Bottom'),
@@ -271,10 +280,10 @@ public function validate($data)
271280
$e = $this->app->make('error');
272281

273282
if (empty($data['content'])) {
274-
$e->add(t('%s is required', 'Content'));
283+
$e->add(t('Field "Content" is required'));
275284
}
276285
if (empty($data['position'])) {
277-
$e->add(t('%s is required', 'Position'));
286+
$e->add(t('Field "Position" is required'));
278287
}
279288

280289
return $e;

blocks/pure_cookies_notice/form.css

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
.pure-cookies-notice-edit-container #pure-cookies-notice-edit-tabs {
2-
margin-bottom: 20px;
3-
}
4-
.pure-cookies-notice-edit-container #pure-cookies-notice-edit-tabs li:after {
5-
content: none;
6-
}
71
.pure-cookies-notice-edit-container .form-group.has-counter {
82
position: relative;
93
}

blocks/pure_cookies_notice/form.less

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,5 @@
11
.pure-cookies-notice-edit-container {
22

3-
#pure-cookies-notice-edit-tabs {
4-
margin-bottom: 20px;
5-
6-
li {
7-
&:after {
8-
content: none;
9-
}
10-
}
11-
}
12-
133
.form-group {
144
&.has-counter {
155
position: relative;

blocks/pure_cookies_notice/form.php

Lines changed: 103 additions & 93 deletions
Original file line numberDiff line numberDiff line change
@@ -7,126 +7,136 @@
77
*/
88
defined('C5_EXECUTE') or die('Access Denied.');
99

10+
/* @var Concrete\Core\Application\Service\UserInterface $ui */
1011
/* @var Concrete\Core\Form\Service\Widget\Color $color */
1112
/* @var Concrete\Package\PureCookiesNotice\Block\PureCookiesNotice\Controller $controller */
1213
/* @var Concrete\Core\Form\Service\Form $form */
1314
/* @var Concrete\Core\Block\View\BlockView $this */
1415
/* @var Concrete\Core\Block\View\BlockView $view */
16+
17+
/* @var string $title */
18+
/* @var string $agreeText */
19+
/* @var string $textColor */
20+
/* @var string $linkColor */
21+
/* @var string $backgroundColor */
22+
/* @var array $positions */
23+
/* @var string $position */
24+
/* @var bool $geolocationSupported */
25+
/* @var bool|string $onlyForEU */
26+
/* @var bool|string $interactionImpliesOk */
27+
/* @var bool|string $sitewideCookie */
1528
?>
1629
<div class="pure-cookies-notice-edit-container">
17-
<ul id="pure-cookies-notice-edit-tabs" class="nav nav-tabs" role="tablist">
18-
<li role="presentation" class="active"><a href="#pure-cookies-notice-edit-basics" aria-controls="pure-cookies-notice-edit-basics" role="tab" data-toggle="tab"><?php echo t('Basics')?></a></li>
19-
<li role="presentation"><a href="#pure-cookies-notice-edit-colors" aria-controls="pure-cookies-notice-edit-colors" role="tab" data-toggle="tab"><?php echo t('Colors')?></a></li>
20-
<li role="presentation"><a href="#pure-cookies-notice-edit-advanced" aria-controls="pure-cookies-notice-edit-advanced" role="tab" data-toggle="tab"><?php echo t('Advanced')?></a></li>
21-
</ul>
2230

23-
<div class="tab-content">
24-
<div role="tabpanel" class="tab-pane fade in active" id="pure-cookies-notice-edit-basics">
25-
<fieldset>
26-
<div class="form-group">
27-
<?= $form->label('title', t('Title')) ?>
28-
<?= $form->text('title', $title, ['placeholder' => t('Optional'), 'maxlength' => 255]) ?>
29-
</div>
31+
<?= $ui->tabs([
32+
['pure-cookies-notice-edit-basics', t('Basics'), true],
33+
['pure-cookies-notice-edit-colors', t('Colors')],
34+
['pure-cookies-notice-edit-advanced', t('Advanced')],
35+
]) ?>
3036

31-
<div class="form-group">
32-
<?= $form->label('content', t('Content')) ?>
33-
<?php
34-
$editor = Core::make('editor');
35-
/* @var Concrete\Core\Editor\CkeditorEditor $editor */
36-
echo $editor->outputStandardEditor('content', $controller->getContentEditMode());
37-
?>
38-
</div>
37+
<div class="ccm-tab-content" id="ccm-tab-content-pure-cookies-notice-edit-basics">
38+
<fieldset>
39+
<div class="form-group">
40+
<?= $form->label('title', t('Title')) ?>
41+
<?= $form->text('title', $title, ['placeholder' => t('Optional'), 'maxlength' => 255]) ?>
42+
</div>
3943

40-
<div class="form-group">
41-
<?= $form->label('agreeText', t('Consent text')) ?>
42-
<?= $form->text('agreeText', $agreeText, ['placeholder' => t('Optional. \'Ok\' by default'), 'maxlength' => 255]) ?>
43-
</div>
44-
</fieldset>
45-
</div>
46-
<div role="tabpanel" class="tab-pane fade" id="pure-cookies-notice-edit-colors">
47-
<fieldset>
48-
<div class="form-group">
49-
<?= $form->label('textColor', t('Text color')) ?>
50-
<?php $color->output('textColor', $textColor, ['appendTo' => 'body']) ?>
51-
<div class="help-block"><?= t('Optional. Leave empty to use the default color from styles.') ?></div>
52-
</div>
44+
<div class="form-group">
45+
<?= $form->label('content', t('Content')) ?>
46+
<?php
47+
$editor = Core::make('editor');
48+
/* @var Concrete\Core\Editor\CkeditorEditor $editor */
49+
echo $editor->outputStandardEditor('content', $controller->getContentEditMode());
50+
?>
51+
</div>
5352

54-
<div class="form-group">
55-
<?= $form->label('linkColor', t('Link color')) ?>
56-
<?php $color->output('linkColor', $linkColor, ['appendTo' => 'body']) ?>
57-
<div class="help-block"><?= t('Optional. Leave empty to use the text color.') ?></div>
58-
</div>
53+
<div class="form-group">
54+
<?= $form->label('agreeText', t('Consent text')) ?>
55+
<?= $form->text('agreeText', $agreeText, ['placeholder' => t('Optional. \'Ok\' by default'), 'maxlength' => 255]) ?>
56+
</div>
57+
</fieldset>
58+
</div>
5959

60-
<div class="form-group">
61-
<?= $form->label('backgroundColor', t('Background color')) ?>
62-
<?php $color->output('backgroundColor', $backgroundColor, ['appendTo' => 'body', 'showAlpha' => true]) ?>
63-
<div class="help-block"><?= t('Optional. Leave empty to use the default color from styles.') ?></div>
64-
</div>
65-
</fieldset>
66-
</div>
67-
<div role="tabpanel" class="tab-pane fade" id="pure-cookies-notice-edit-advanced">
68-
<fieldset>
69-
<div class="form-group">
70-
<?= $form->label('position', t('Position')) ?>
71-
<?= $form->select('position', $positions, $position, ['placeholder' => t('Optional. \'Ok\' by default')]) ?>
72-
</div>
60+
<div class="ccm-tab-content" id="ccm-tab-content-pure-cookies-notice-edit-colors">
61+
<fieldset>
62+
<div class="form-group">
63+
<?= $form->label('textColor', t('Text color')) ?>
64+
<?php $color->output('textColor', $textColor, ['appendTo' => 'body']) ?>
65+
<div class="help-block"><?= t('Optional. Leave empty to use the default color from styles.') ?></div>
66+
</div>
7367

74-
<?php
75-
if ($geolocationSupported) {
76-
?>
77-
<div class="form-group">
78-
<?= $form->label('onlyForEU', t('Target visitors')) ?>
79-
<?= $form->select(
80-
'onlyForEU',
81-
[
82-
'1' => t('Show only for site visitors from the European Union'),
83-
'0' => t('Show for every site visitor'),
84-
],
85-
$onlyForEU ? '1' : '0',
86-
['required' => 'required']
87-
) ?>
88-
</div>
89-
<?php
90-
}
91-
?>
68+
<div class="form-group">
69+
<?= $form->label('linkColor', t('Link color')) ?>
70+
<?php $color->output('linkColor', $linkColor, ['appendTo' => 'body']) ?>
71+
<div class="help-block"><?= t('Optional. Leave empty to use the text color.') ?></div>
72+
</div>
9273

93-
<div class="form-group">
94-
<?= $form->label('interactionImpliesOk', t('Closing triggers')) ?>
95-
<?= $form->select(
96-
'interactionImpliesOk',
97-
[
98-
'0' => t('Close on click button only'),
99-
'1' => t('Close on any clicks (anywhere) and scrolls'),
100-
],
101-
empty($interactionImpliesOk) ? '0' : '1',
102-
['required' => 'required']
103-
) ?>
104-
</div>
74+
<div class="form-group">
75+
<?= $form->label('backgroundColor', t('Background color')) ?>
76+
<?php $color->output('backgroundColor', $backgroundColor, ['appendTo' => 'body', 'showAlpha' => true]) ?>
77+
<div class="help-block"><?= t('Optional. Leave empty to use the default color from styles.') ?></div>
78+
</div>
79+
</fieldset>
80+
</div>
81+
82+
<div class="ccm-tab-content" id="ccm-tab-content-pure-cookies-notice-edit-advanced">
83+
<fieldset>
84+
<div class="form-group">
85+
<?= $form->label('position', t('Position')) ?>
86+
<?= $form->select('position', $positions, $position, ['placeholder' => t('Optional. \'Ok\' by default')]) ?>
87+
</div>
10588

89+
<?php
90+
if ($geolocationSupported) {
91+
?>
10692
<div class="form-group">
107-
<?= $form->label('sitewideCookie', t('Block instances')) ?>
93+
<?= $form->label('onlyForEU', t('Target visitors')) ?>
10894
<?= $form->select(
109-
'sitewideCookie',
95+
'onlyForEU',
11096
[
111-
'1' => t('Site visitors have to accept the warning of a single block instance'),
112-
'0' => t('Site visitors must accept the warning for every block instance'),
97+
'1' => t('Show only for site visitors from the European Union'),
98+
'0' => t('Show for every site visitor'),
11399
],
114-
empty($sitewideCookie) ? '0' : '1',
100+
$onlyForEU ? '1' : '0',
115101
['required' => 'required']
116102
) ?>
117103
</div>
118-
</fieldset>
119-
</div>
104+
<?php
105+
}
106+
?>
107+
108+
<div class="form-group">
109+
<?= $form->label('interactionImpliesOk', t('Closing triggers')) ?>
110+
<?= $form->select(
111+
'interactionImpliesOk',
112+
[
113+
'0' => t('Close on click button only'),
114+
'1' => t('Close on any clicks (anywhere) and scrolls'),
115+
],
116+
empty($interactionImpliesOk) ? '0' : '1',
117+
['required' => 'required']
118+
) ?>
119+
</div>
120+
121+
<div class="form-group">
122+
<?= $form->label('sitewideCookie', t('Block instances')) ?>
123+
<?= $form->select(
124+
'sitewideCookie',
125+
[
126+
'1' => t('Site visitors have to accept the warning of a single block instance'),
127+
'0' => t('Site visitors must accept the warning for every block instance'),
128+
],
129+
empty($sitewideCookie) ? '0' : '1',
130+
['required' => 'required']
131+
) ?>
132+
</div>
133+
</fieldset>
120134
</div>
135+
121136
</div>
122137

123138
<script>
124139
$(function() {
125140
$().pureInputLengthCounter($('.pure-cookies-notice-edit-container input[maxlength]'));
126-
127-
$('#pure-cookies-notice-edit-tabs a').click(function (e) {
128-
e.preventDefault();
129-
$(this).tab('show');
130-
})
131141
});
132142
</script>

controller.php

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,6 @@ public function on_start()
4242
[],
4343
'pure_cookies_notice' //from package
4444
);
45-
46-
//JS
47-
$al->register(
48-
'javascript', //asset type
49-
'bootstrap/tab', //asset name
50-
'assets/js/bootstrap-tab.min.js', //path
51-
['minify' => false],
52-
'pure_cookies_notice' //from package
53-
);
5445
//********************
5546
}
5647

0 commit comments

Comments
 (0)