PluginProbe
AcyMailing – An Ultimate Newsletter Plugin and Marketing Automation Solution for WordPress / 11.1.1
AcyMailing – An Ultimate Newsletter Plugin and Marketing Automation Solution for WordPress v11.1.1
11.1.1 11.1.0 11.0.5 11.0.4 11.0.3 11.0.2 11.0.1 11.0.0 10.11.1 10.11.0 10.10.2 10.10.1 10.10.0 10.9.1 trunk 10.0.0 10.0.1 10.1.0 10.1.1 10.1.2 10.1.3 10.1.4 10.2.0 10.2.1 10.2.2 All 62 releases
← All changes | back/Views/Configuration/tmpl/security.php +0 -685 11.1.0 → 11.1.1 View file →
@@ -1,685 +1,0 @@
1 -<?php
2 -// phpcs:disable WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound -- View file, its variables are local to the include scope, not true globals.
3 -defined('ABSPATH') || die('Restricted Access');
4 -?>
5 -<div class="acym__content acym_area padding-vertical-1 padding-horizontal-2 margin-bottom-2">
6 - <?php if (acym_level(ACYM_ESSENTIAL)) { ?>
7 - <div class="margin-bottom-2 acym__configuration__rest_api cell grid-x">
8 - <div class="acym__title acym__title__secondary grid-x">
9 - <?php echo esc_html(acym_translation('ACYM_REST_API')); ?>
10 - <?php acym_externalLink(
11 - 'ACYM_DOCUMENTATION',
12 - ACYM_DOCUMENTATION.'v/rest-api/',
13 - true,
14 - true,
15 - ['margin-left-1 margin-right-1']
16 - ); ?>
17 - </div>
18 - <div class="cell grid-x acym_vcenter">
19 - <label class="cell large-3" for="php_overrides">
20 - <?php echo esc_html(acym_translation('ACYM_ACTIVATE_REST_API'));
21 - acym_info(['textShownInTooltip' => 'ACYM_ACTIVATE_REST_API_DESC']); ?>
22 - </label>
23 - <div class="cell grid-x large-9">
24 - <?php
25 - acym_switch([
26 - 'name' => 'config[rest_api]',
27 - 'value' => $this->config->get('rest_api', 0),
28 - ]);
29 - ?>
30 - </div>
31 - </div>
32 - <div class="cell grid-x acym_vcenter margin-top-1">
33 - <label class="cell large-3" for="api_key">
34 - <?php echo esc_html(acym_translation('ACYM_API_KEY'));
35 - acym_info(['textShownInTooltip' => 'ACYM_API_KEY_DESC']); ?>
36 - </label>
37 - <input class="cell large-9"
38 - id="api_key"
39 - type="text"
40 - name="config[api_key]"
41 - value="<?php echo esc_attr($this->config->get('api_key')); ?>" />
42 - </div>
43 - </div>
44 - <?php } ?>
45 -
46 - <?php if (isset($data['level']) && isset($data['captchaOptions'])) { ?>
47 - <div class="margin-bottom-2 cell margin-y acym__configuration__security__captcha">
48 - <div class="acym__title acym__title__secondary">
49 - <?php echo esc_html(acym_translation('ACYM_CONFIGURATION_CAPTCHA')); ?>
50 - <?php
51 - if (!acym_level(ACYM_ESSENTIAL)) {
52 - echo esc_html(' '.acym_translation('ACYM_PRO_VERSION_ONLY'));
53 - }
54 - ?>
55 - </div>
56 - <div class="grid-x grid-margin-x margin-y">
57 - <div class="cell medium-6 grid-x">
58 - <label class="cell large-3" for="security_key">
59 - <?php echo esc_html(acym_translation('ACYM_CONFIGURATION_CAPTCHA'));
60 - acym_info(['textShownInTooltip' => 'ACYM_CAPTCHA_DESC']); ?>
61 - </label>
62 - <div class="cell large-9">
63 - <?php
64 - $attribs = [
65 - 'class' => 'acym__select',
66 - 'data-toggle-select' => '{"acym_ireCaptcha":".acym__config__captcha__recaptcha","acym_reCaptcha_v3":".acym__config__captcha__recaptcha, .acym__config__captcha__recaptcha_v3","acym_hcaptcha":".acym__config__captcha__hcaptcha" }',
67 - ];
68 - // To disable Captcha dropdown
69 - if (!$data['level']) {
70 - $attribs['disabled'] = '';
71 - }
72 -
73 - acym_select(
74 - $data['captchaOptions'],
75 - 'config[captcha]',
76 - $this->config->get('captcha', 'none'),
77 - $attribs,
78 - 'value',
79 - 'text',
80 - null,
81 - false,
82 - true
83 - );
84 - ?>
85 - </div>
86 - </div>
87 - <?php if ($data['level']) { ?>
88 - <div class="cell medium-6 grid-x">
89 - <label class="cell large-3" for="security_key">
90 - <?php echo esc_html(acym_translation('ACYM_SECURITY_KEY'));
91 - acym_info(['textShownInTooltip' => 'ACYM_SECURITY_KEY_DESC']); ?>
92 - </label>
93 - <input class="cell large-9"
94 - id="security_key"
95 - type="text"
96 - name="config[security_key]"
97 - value="<?php echo esc_attr($this->config->get('security_key')); ?>" />
98 - </div>
99 - <div class="cell medium-6 grid-x acym__config__captcha__hcaptcha">
100 - <label class="cell large-3" for="hcaptcha_sitekey">
101 - <?php
102 - echo esc_html(acym_translation('ACYM_GENERAL_SITE_KEY'));
103 - acym_tooltip(
104 - [
105 - 'hoveredText' => '<span class="acym__tooltip__info__container"><i class="acym__tooltip__info__icon acymicon-info-circle"></i></span>',
106 - 'textShownInTooltip' => acym_translation('ACYM_CLICK_HERE_TO_CREATE'),
107 - 'classContainer' => 'acym__tooltip__info',
108 - 'link' => 'https://dashboard.hcaptcha.com/sites/new',
109 - ]
110 - );
111 - ?>
112 - </label>
113 - <input class="cell large-9"
114 - id="hcaptcha_sitekey"
115 - type="text"
116 - name="config[hcaptcha_sitekey]"
117 - value="<?php echo esc_attr($this->config->get('hcaptcha_sitekey')); ?>" />
118 - </div>
119 - <div class="cell medium-6 grid-x acym__config__captcha__hcaptcha">
120 - <label class="cell large-3" for="hcaptcha_secretkey">
121 - <?php
122 - echo esc_html(acym_translation('ACYM_GENERAL_SECRET_KEY'));
123 - acym_tooltip(
124 - [
125 - 'hoveredText' => '<span class="acym__tooltip__info__container"><i class="acym__tooltip__info__icon acymicon-info-circle"></i></span>',
126 - 'textShownInTooltip' => acym_translation('ACYM_CLICK_HERE_TO_CREATE'),
127 - 'classContainer' => 'acym__tooltip__info',
128 - 'link' => 'https://dashboard.hcaptcha.com/sites/new',
129 - ]
130 - );
131 - ?>
132 - </label>
133 - <input class="cell large-9"
134 - id="hcaptcha_secretkey"
135 - type="text"
136 - name="config[hcaptcha_secretkey]"
137 - value="<?php echo esc_attr($this->config->get('hcaptcha_secretkey')); ?>" />
138 - </div>
139 -
140 - <div class="cell medium-6 grid-x acym__config__captcha__recaptcha">
141 - <label class="cell large-3" for="recaptcha_sitekey">
142 - <?php
143 - echo esc_html(acym_translation('ACYM_SITE_KEY'));
144 - acym_tooltip(
145 - [
146 - 'hoveredText' => '<span class="acym__tooltip__info__container"><i class="acym__tooltip__info__icon acymicon-info-circle"></i></span>',
147 - 'textShownInTooltip' => acym_translation('ACYM_CLICK_HERE_TO_CREATE'),
148 - 'classContainer' => 'acym__tooltip__info',
149 - 'link' => 'https://www.google.com/recaptcha/admin',
150 - ]
151 - );
152 - ?>
153 - </label>
154 - <input class="cell large-9"
155 - id="recaptcha_sitekey"
156 - type="text"
157 - name="config[recaptcha_sitekey]"
158 - value="<?php echo esc_attr($this->config->get('recaptcha_sitekey')); ?>" />
159 - </div>
160 - <div class="cell medium-6 grid-x acym__config__captcha__recaptcha">
161 - <label class="cell large-3" for="recaptcha_secretkey">
162 - <?php
163 - echo esc_html(acym_translation('ACYM_SECRET_KEY'));
164 - acym_tooltip(
165 - [
166 - 'hoveredText' => '<span class="acym__tooltip__info__container"><i class="acym__tooltip__info__icon acymicon-info-circle"></i></span>',
167 - 'textShownInTooltip' => acym_translation('ACYM_CLICK_HERE_TO_CREATE'),
168 - 'classContainer' => 'acym__tooltip__info',
169 - 'link' => 'https://www.google.com/recaptcha/admin',
170 - ]
171 - );
172 - ?>
173 - </label>
174 - <input class="cell large-9"
175 - id="recaptcha_secretkey"
176 - type="text"
177 - name="config[recaptcha_secretkey]"
178 - value="<?php echo esc_attr($this->config->get('recaptcha_secretkey')); ?>" />
179 - </div>
180 - <div class="cell medium-6 grid-x acym__config__captcha__recaptcha_v3">
181 - <label class="cell large-3" for="recaptcha_score">
182 - <?php
183 - echo esc_html(acym_translation('ACYM_CAPTCHA_SCORE'));
184 - acym_tooltip(
185 - [
186 - 'hoveredText' => '<span class="acym__tooltip__info__container"><i class="acym__tooltip__info__icon acymicon-info-circle"></i></span>',
187 - 'textShownInTooltip' => acym_translation('ACYM_CAPTCHA_SCORE_DESC'),
188 - 'classContainer' => 'acym__tooltip__info',
189 - 'link' => 'https://developers.google.com/recaptcha/docs/v3',
190 - ]
191 - );
192 - ?>
193 - </label>
194 - <input class="cell large-9"
195 - id="recaptcha_score"
196 - type="number"
197 - name="config[recaptcha_score]"
198 - min="0"
199 - max="1"
200 - step="0.1"
201 - onKeyDown="return false"
202 - value="<?php echo esc_attr($this->config->get('recaptcha_score', 0.5)); ?>" />
203 - </div>
204 - <?php } ?>
205 - </div>
206 - </div>
207 - <?php } ?>
208 -
209 - <div class="acym__configuration__security__email cell grid-x">
210 - <div class="acym__title acym__title__secondary grid-x">
211 - <?php echo esc_html(acym_translation('ACYM_EMAIL_VERIFICATION')); ?>
212 - <div class="margin-left-1">
213 - <?php
214 - $score = 100;
215 - $tooltip = [];
216 - if ($this->config->get('email_checkdomain') == 0) {
217 - $score -= 10;
218 - $tooltip[] = acym_translation('ACYM_EMAIL_VERIFICATION_SCORE_DESC_DOMAIN_VERIFICATION');
219 - }
220 - if (empty($this->config->get('require_confirmation', 1))) {
221 - $score -= 30;
222 - $tooltip[] = acym_translation('ACYM_EMAIL_VERIFICATION_SCORE_DESC_DOUBLE_OPT_IN');
223 - }
224 - if ($this->config->get('email_spellcheck') == 0) {
225 - $score -= 10;
226 - $tooltip[] = acym_translation('ACYM_EMAIL_VERIFICATION_SCORE_DESC_TYPO');
227 - }
228 -
229 - if (!acym_isAcyCheckerInstalled()) {
230 - $score -= 50;
231 - $tooltip[] = acym_translation('ACYM_EMAIL_VERIFICATION_SCORE_DESC_CHECKER');
232 - } else {
233 - if ($this->config->get('email_verification') == 0) {
234 - $score -= 50;
235 - $tooltip[] = acym_translation('ACYM_EMAIL_VERIFICATION_SCORE_DESC_CHECKER');
236 - }
237 -
238 - $oneEnabled = false;
239 -
240 - if ($this->config->get('email_verification', 0) != 0) {
241 - $verificationOptions = [
242 - 'email_verification_non_existing',
243 - 'email_verification_disposable',
244 - 'email_verification_free',
245 - 'email_verification_role',
246 - 'email_verification_acceptall',
247 - ];
248 -
249 - foreach ($verificationOptions as $verificationOption) {
250 - if ($this->config->get($verificationOption, 0) == 0) continue;
251 -
252 - $oneEnabled = true;
253 - break;
254 - }
255 - }
256 -
257 - if (!$oneEnabled) $tooltip[] = acym_translation('ACYM_YOU_SHOULD_ENABLE_CHECK');
258 - }
259 -
260 - echo '('.esc_html(acym_translationSprintf('ACYM_EMAIL_VERIFICATION_SCORE', $score)).')';
261 - if (!empty($tooltip)) {
262 - acym_info(
263 - [
264 - 'textShownInTooltip' => implode('<br />', $tooltip),
265 - ]
266 - );
267 - }
268 - ?>
269 - </div>
270 - </div>
271 - <div class="grid-x margin-y">
272 - <div class="cell medium-6 grid-x">
273 - <?php
274 - acym_switch([
275 - 'name' => 'config[email_checkdomain]',
276 - 'value' => $this->config->get('email_checkdomain'),
277 - 'label' => acym_translation('ACYM_CHECK_DOMAIN_EXISTS'),
278 - 'labelClass' => 'xlarge-9 large-6 small-9',
279 - ]);
280 - ?>
281 - </div>
282 - <div class="cell medium-6 grid-x">
283 - <?php
284 - acym_switch([
285 - 'name' => 'config[email_spellcheck]',
286 - 'value' => $this->config->get('email_spellcheck'),
287 - 'label' => acym_translation('ACYM_SPELLCHECK_SUGGESTIONS'),
288 - 'tip' => ['textShownInTooltip' => 'ACYM_SPELLCHECK_SUGGESTIONS_DESC'],
289 - 'labelClass' => 'xlarge-9 large-6 small-9',
290 - ]);
291 - ?>
292 - </div>
293 - <div class="cell medium-6 grid-x">
294 - <?php
295 - acym_switch([
296 - 'name' => 'config[email_confirmation]',
297 - 'value' => $this->config->get('email_confirmation'),
298 - 'label' => acym_translation('ACYM_ENABLE_EMAIL_CONFIRMATION_FOR_SUBSCRIPTION_FORM'),
299 - 'tip' => ['textShownInTooltip' => 'ACYM_ENABLE_EMAIL_CONFIRMATION_FOR_SUBSCRIPTION_FORM_DESC'],
300 - 'labelClass' => 'xlarge-9 large-6 small-9',
301 - ]);
302 - ?>
303 - </div>
304 - <div class="cell grid-x acychecker_ad">
305 - <div class="cell ">
306 - <h6>
307 - <?php echo esc_html(acym_translation('ACYM_ACYCHECKER_CONFIG_AD_TITLE')); ?>
308 - <img class="acychecker_logo" alt="logo AcyChecker" src="<?php echo esc_url(ACYM_IMAGES.'icons/logo_acychecker.png'); ?>" />
309 - </h6>
310 - </div>
311 - <div class="cell xlarge-6 grid-x">
312 - <?php
313 - acym_switch([
314 - 'name' => 'config[email_verification]',
315 - 'value' => $this->config->get('email_verification'),
316 - 'label' => acym_translation('ACYM_ACYCHECKER_CHECK_SUBSCRIPTION'),
317 - 'labelClass' => 'xlarge-9 large-6 small-9',
318 - 'toggle' => $data['acychecker_installed'] ? 'email_verification' : null,
319 - 'disabled' => !$data['acychecker_installed'],
320 - ]);
321 - ?>
322 - </div>
323 - <div id="email_verification" class="cell grid-x">
324 - <label class="cell margin-top-1">
325 - <?php echo esc_html(acym_translation('ACYM_ACYCHECKER_CHECK_SUBSCRIPTION_BLOCK')); ?>
326 - </label>
327 - <div class="cell large-6 grid-x">
328 - <?php
329 - $verificationOptions = [
330 - 'email_verification_non_existing' => ['ACYM_ACYCHECKER_CHECK_SUBSCRIPTION_BLOCK_NON_EXISTING', ''],
331 - 'email_verification_disposable' => [
332 - 'ACYM_ACYCHECKER_CHECK_SUBSCRIPTION_BLOCK_DISPOSABLE',
333 - 'ACYM_ACYCHECKER_CHECK_SUBSCRIPTION_BLOCK_DISPOSABLE_DESC',
334 - ],
335 - 'email_verification_free' => ['ACYM_ACYCHECKER_CHECK_SUBSCRIPTION_BLOCK_FREE', 'ACYM_ACYCHECKER_CHECK_SUBSCRIPTION_BLOCK_FREE_DESC'],
336 - 'email_verification_role' => ['ACYM_ACYCHECKER_CHECK_SUBSCRIPTION_BLOCK_ROLE', 'ACYM_ACYCHECKER_CHECK_SUBSCRIPTION_BLOCK_ROLE_DESC'],
337 - 'email_verification_acceptall' => [
338 - 'ACYM_ACYCHECKER_CHECK_SUBSCRIPTION_BLOCK_ACCEPT_ALL',
339 - 'ACYM_ACYCHECKER_CHECK_SUBSCRIPTION_BLOCK_ACCEPT_ALL_DESC',
340 - ],
341 - ];
342 -
343 - foreach ($verificationOptions as $option => $label) {
344 - echo '<div class="cell grid-x margin-bottom-1">';
345 - $switchOptions = [
346 - 'name' => 'config['.$option.']',
347 - 'value' => $this->config->get($option),
348 - 'label' => acym_translation($label[0]),
349 - 'labelClass' => 'small-9',
350 - 'disabled' => !$data['acychecker_installed'],
351 - ];
352 - if (!empty($label[1])) {
353 - $switchOptions['tip'] = ['textShownInTooltip' => $label[1]];
354 - }
355 - acym_switch($switchOptions);
356 - echo '</div>';
357 - }
358 - ?>
359 - </div>
360 - <?php if (!$data['acychecker_installed']) { ?>
361 - <div class="cell large-6 grid-x align-center">
362 - <div class="cell large-6 grid-x align-center text-center">
363 - <?php echo esc_html(acym_translation('ACYM_ACYCHECKER_CONFIG_AD')); ?>
364 - <a target="_blank" class="cell shrink button button-secondary" href="<?php echo esc_url($data['acychecker_get_link']); ?>">
365 - <?php echo esc_html(acym_translation('ACYM_ACYCHECKER_CONFIG_AD_BUTTON')); ?>
366 - </a>
367 - </div>
368 - </div>
369 - <?php } ?>
370 - </div>
371 - </div>
372 - </div>
373 - </div>
374 -</div>
375 -
376 -<div class="acym__content acym_area padding-horizontal-2 acym__configuration__advanced">
377 - <div class="cell grid-x acym__configuration__showmore-head">
378 - <div class="acym__title acym__title__secondary cell auto margin-bottom-0"><?php echo esc_html(acym_translation('ACYM_CONFIGURATION_ADVANCED')); ?></div>
379 - <div class="cell shrink">
380 - <?php acym_showMore('acym__configuration__security__advanced__content'); ?>
381 - </div>
382 - </div>
383 - <div id="acym__configuration__security__advanced__content" style="display:none;">
384 - <?php if ($data['adminPermissions']) { ?>
385 - <div class="margin-bottom-2">
386 - <div class="acym__title acym__title__secondary"><?php echo esc_html(acym_translation('ACYM_PERMISSIONS')); ?></div>
387 - <div class="grid-x grid-margin-x margin-y">
388 - <?php acym_cmsPermission(); ?>
389 - <div class="cell grid-x">
390 - <label class="cell large-3 medium-5 small-9">
391 - <?php echo esc_html(acym_translation('ACYM_ADVANCED_ACL'));
392 - acym_info(['textShownInTooltip' => 'ACYM_ADVANCED_ACL_DESC']); ?>
393 - </label>
394 - <div class="cell auto">
395 - <button type="button" class="button button-secondary" id="acym__configuration__acl__toggle"><?php echo esc_html(
396 - acym_translation('ACYM_SHOW_HIDE')
397 - ); ?></button>
398 - </div>
399 - </div>
400 - </div>
401 - <div class="grid-x grid-margin-x" id="acym__configuration__acl__zone">
402 - <input type="hidden" name="json_acl" id="json_acl" />
403 - <?php foreach ($data['acl_advanced'] as $page => $title) { ?>
404 - <div class="cell grid-x acym__configuration__acl__row">
405 - <div class="cell large-3 margin-left-1">
406 - <?php echo esc_html(acym_translation($title)); ?>
407 - </div>
408 - <div class="cell auto">
409 - <?php $data['aclType']->display($page); ?>
410 - </div>
411 - </div>
412 - <?php } ?>
413 - </div>
414 - </div>
415 - <?php } ?>
416 - <?php if ('joomla' === ACYM_CMS) {
417 - if (acym_level(ACYM_ENTERPRISE)) { ?>
418 - <div class="margin-bottom-2">
419 - <div class="acym__title acym__title__secondary"><?php echo esc_html(acym_translation('ACYM_FRONTEND_EDITION')); ?></div>
420 - <div class="grid-x grid-margin-x grid-margin-y">
421 - <div class="cell large-3 small-12"><?php echo esc_html(acym_translation('ACYM_FRONT_DELETE_BUTTON'));
422 - acym_info(
423 - ['textShownInTooltip' => 'ACYM_FRONT_DELETE_BUTTON_DESC']
424 - ); ?></div>
425 - <div class="cell auto">
426 - <?php
427 - acym_radio(
428 - [
429 - 'delete' => acym_translation('ACYM_DELETE_THE_SUBSCRIBER'),
430 - 'removesub' => acym_translation('ACYM_REMOVE_USER_SUBSCRIPTION'),
431 - ],
432 - 'config[frontend_delete_button]',
433 - $this->config->get('frontend_delete_button', 'delete')
434 - );
435 - ?>
436 - </div>
437 - </div>
438 - <div class="grid-x grid-margin-x grid-margin-y">
439 - <div class="cell large-3"><?php echo esc_html(acym_translation('ACYM_FRONT_FILTER_CAMPAIGNS')); ?></div>
440 - <div class="cell large-9">
441 - <?php
442 - acym_select(
443 - [
444 - 'own' => acym_translation('ACYM_FRONT_ONLY_CREATED_CAMPAIGNS'),
445 - 'allowed' => acym_translation('ACYM_FRONT_SENT_TO_ALLOWED_LISTS'),
446 - ],
447 - 'config[front_campaigns_filter]',
448 - $this->config->get('front_campaigns_filter', 'own'),
449 - [
450 - 'class' => 'acym__select',
451 - ],
452 - 'value',
453 - 'text',
454 - null,
455 - false,
456 - true
457 - );
458 - ?>
459 - </div>
460 - </div>
461 - </div>
462 - <?php // __END__enterprise_
463 - }
464 - } ?>
465 - <div class="margin-bottom-2">
466 - <div class="acym__title acym__title__secondary"><?php echo esc_html(acym_translation('ACYM_FILES')); ?></div>
467 - <div class="grid-x grid-margin-y margin-y">
468 -
469 - <label class="cell large-3" for="allowed_files">
470 - <?php echo esc_html(acym_translation('ACYM_ALLOWED_FILES'));
471 - acym_info(['textShownInTooltip' => 'ACYM_ALLOWED_FILES_DESC']); ?>
472 - </label>
473 - <input class="cell auto"
474 - id="allowed_files"
475 - type="text"
476 - name="config[allowed_files]"
477 - value="<?php echo esc_attr($this->config->get('allowed_files')); ?>" />
478 - </div>
479 - <div class="grid-x grid-margin-y margin-y">
480 - <label class="cell large-3" for="uploadfolder">
481 - <?php echo esc_html(acym_translation('ACYM_UPLOAD_FOLDER'));
482 - acym_info(['textShownInTooltip' => 'ACYM_UPLOAD_FOLDER_DESC']); ?>
483 - </label>
484 - <input class="cell large-9" id="uploadfolder" type="text" name="config[uploadfolder]" value="<?php echo esc_attr($this->config->get('uploadfolder')); ?>" />
485 - </div>
486 - <?php
487 - ?>
488 - <div class="cell grid-x grid-margin-y margin-y acym_vcenter">
489 - <label class="cell large-3" for="php_overrides">
490 - <?php echo esc_html(acym_translation('ACYM_ALLOW_PHP_OVERRIDES'));
491 - acym_info(['textShownInTooltip' => 'ACYM_ALLOW_PHP_OVERRIDES_DESC']); ?>
492 - </label>
493 - <div class="cell grid-x large-9">
494 - <?php
495 - acym_switch([
496 - 'name' => 'config[php_overrides]',
497 - 'value' => $this->config->get('php_overrides', 0),
498 - ]);
499 - ?>
500 - </div>
501 - </div>
502 - </div>
503 - <div class="acym__configuration__check-database margin-bottom-2">
504 - <div class="acym__title acym__title__secondary"><?php echo esc_html(acym_translation('ACYM_REDIRECTIONS')); ?></div>
505 - <div class="grid-x grid-margin-x margin-y">
506 - <div class="cell grid-x acym_vcenter">
507 - <label class="cell large-3" for="allowed_files">
508 - <?php echo esc_html(acym_translation('ACYM_ALLOWED_HOSTS'));
509 - acym_info(['textShownInTooltip' => 'ACYM_ALLOWED_HOSTS_DESC']); ?>
510 - </label>
511 - <div class="cell grid-x large-9">
512 - <?php
513 - $allowedHosts = $this->config->get('allowed_hosts', '');
514 - if (empty($allowedHosts)) {
515 - $allowedHosts = [];
516 - } else {
517 - $allowedHosts = explode(',', $allowedHosts);
518 - }
519 - $allowedHostsFormatted = [];
520 - if (!empty($allowedHosts)) {
521 - foreach ($allowedHosts as $host) {
522 - $allowedHostsFormatted[$host] = $host;
523 - }
524 - }
525 - acym_selectMultiple(
526 - $allowedHostsFormatted,
527 - 'config[allowed_hosts]',
528 - $allowedHosts,
529 - ['class' => 'acym__allowed__hosts__select', 'placeholder' => acym_translation('ACYM_ENTER_NEW_DOMAIN')],
530 - 'value',
531 - 'text',
532 - true
533 - );
534 - ?>
535 - </div>
536 - </div>
537 - <div class="cell grid-x acym_vcenter">
538 - <label class="cell large-3" for="allowed_files">
539 - <?php
540 - echo esc_html(acym_translation('ACYM_ACTIVATE_AUTOLOGIN_URLS'));
541 - acym_info(['textShownInTooltip' => 'ACYM_ACTIVATE_AUTOLOGIN_URLS_DESCRIPTION']);
542 - ?>
543 - </label>
544 - <div class="cell grid-x large-9">
545 - <?php
546 - acym_switch([
547 - 'name' => 'config[autologin_urls]',
548 - 'value' => $this->config->get('autologin_urls', 0),
549 - 'toggle' => 'autologin_urls_duration',
550 - ]);
551 - ?>
552 - </div>
553 - </div>
554 - <div class="cell grid-x acym_vcenter" id="autologin_urls_duration">
555 - <label class="cell large-3">
556 - <?php echo esc_html(acym_translation('ACYM_AUTOLOGIN_TOKEN_DURATION'));
557 - acym_info(['textShownInTooltip' => 'ACYM_AUTOLOGIN_TOKEN_DURATION_DESC']); ?>
558 - </label>
559 - <div class="cell large-9">
560 - <input type="number"
561 - name="config[autologin_token_duration]"
562 - value="<?php echo intval($this->config->get('autologin_token_duration', 48)); ?>"
563 - min="1"
564 - class="intext_input" />
565 - </div>
566 - </div>
567 - </div>
568 - </div>
569 - <div class="margin-bottom-2">
570 - <div class="acym__title acym__title__secondary"><?php echo esc_html(acym_translation('ACYM_CRON')); ?></div>
571 - <div class="grid-x grid-margin-x margin-y">
572 - <div class="cell grid-x acym_vcenter">
573 - <label class="cell large-3" for="cron_security">
574 - <?php echo esc_html(acym_translation('ACYM_ADD_SECURITY_KEY_CRON')); ?>
575 - </label>
576 - <div class="cell grid-x large-9">
577 - <?php
578 - acym_switch([
579 - 'name' => 'config[cron_security]',
580 - 'value' => $this->config->get('cron_security', 0),
581 - ]);
582 - ?>
583 - </div>
584 - </div>
585 - </div>
586 - <div class="grid-x grid-margin-y margin-y">
587 - <label class="cell large-3" for="cron_key">
588 - <?php echo esc_html(acym_translation('ACYM_CRON_KEY'));
589 - acym_info(['textShownInTooltip' => 'ACYM_CRON_KEY_DESC']); ?>
590 - </label>
591 - <input class="cell large-9"
592 - id="cron_key"
593 - type="text"
594 - name="config[cron_key]"
595 - value="<?php echo esc_attr($this->config->get('cron_key', $this->config->get('security_key', ''))); ?>" />
596 - </div>
597 - </div>
598 -
599 - <div class="margin-bottom-2">
600 - <div class="acym__title acym__title__secondary"><?php echo esc_html(acym_translation('ACYM_URL')); ?></div>
601 - <div class="grid-x grid-margin-x margin-y">
602 - <div class="cell grid-x acym_vcenter">
603 - <label class="cell large-3" for="different_admin_url_toggle">
604 - <?php echo esc_html(acym_translation('ACYM_FRONT_BACK_URL')); ?>
605 - </label>
606 - <div class="cell grid-x large-9">
607 - <?php
608 - acym_switch([
609 - 'name' => 'config[different_admin_url_toggle]',
610 - 'value' => $this->config->get('different_admin_url_toggle', 0),
611 - 'toggle' => 'cron_security_config',
612 - ]);
613 - ?>
614 - </div>
615 - </div>
616 - </div>
617 - <div class="grid-x grid-margin-y margin-y" id="cron_security_config">
618 - <div class="cell grid-x acym_vcenter">
619 - <label class="cell large-3" for="different_admin_url_value">
620 - <?php echo esc_html(acym_translation('ACYM_BACKEND_URL')); ?>
621 - </label>
622 - <?php $differentUrl = $this->config->get('different_admin_url_value'); ?>
623 - <input class="cell large-9"
624 - id="different_admin_url_value"
625 - type="text"
626 - name="config[different_admin_url_value]"
627 - placeholder="<?php echo esc_attr(rtrim(ACYM_LIVE, '/')); ?>"
628 - value="<?php echo esc_attr($differentUrl); ?>" />
629 - </div>
630 - </div>
631 - </div>
632 -
633 - <div class="acym__configuration__check-database margin-bottom-2">
634 - <div class="acym__title acym__title__secondary"><?php echo esc_html(acym_translation('ACYM_CONFIGURATION_DB_MAINTENANCE')); ?></div>
635 - <div class="grid-x grid-margin-x margin-y">
636 - <div class="cell grid-x">
637 - <?php
638 - acym_tooltip(
639 - [
640 - 'hoveredText' => '<button type="button" class="cell medium-shrink button button-secondary" id="checkdb_button">'.acym_translation(
641 - 'ACYM_CHECK_DB'
642 - ).'</button>',
643 - 'textShownInTooltip' => acym_translation('ACYM_INTRO_CHECK_DATABASE'),
644 - 'classContainer' => 'cell medium-shrink',
645 - ]
646 - );
647 - ?>
648 - <div class="cell auto padding-left-1" id="checkdb_report"></div>
649 - </div>
650 - <?php if (acym_existsAcyMailing59()) { ?>
651 - <div class="cell grid-x">
652 - <button type="submit" data-task="redomigration" class="cell medium-shrink button button-secondary acy_button_submit">
653 - <?php echo esc_html(acym_translation('ACYM_REDO_MIGRATION')); ?>
654 - </button>
655 - </div>
656 - <?php } ?>
657 - </div>
658 - </div>
659 -
660 - <?php if (acym_isLogFileErrorExist()) { ?>
661 - <div class="acym__configuration__log">
662 - <div class="acym__title acym__title__secondary"><?php echo esc_html(acym_translation('ACYM_LOG_FILE')); ?></div>
663 - <div class="grid-x grid-margin-x margin-y">
664 - <div class="cell grid-x">
665 - <div class="cell grid-x">
666 - <?php
667 - acym_modal(
668 - acym_translation('ACYM_REPORT_SEE'),
669 - '',
670 - null,
671 - [],
672 - [
673 - 'class' => 'button button-secondary',
674 - 'data-ajax' => 'true',
675 - 'data-iframe' => '&ctrl=configuration&task=seeLogs&filename='.acym_getErrorLogFilename(),
676 - ]
677 - );
678 - ?>
679 - </div>
680 - </div>
681 - </div>
682 - </div>
683 - <?php } ?>
684 - </div>
685 -</div>