PluginProbe
AcyMailing – An Ultimate Newsletter Plugin and Marketing Automation Solution for WordPress / 10.1.4
AcyMailing – An Ultimate Newsletter Plugin and Marketing Automation Solution for WordPress v10.1.4
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
acymailing / back / Views / Configuration / tmpl / security.php

security.php in AcyMailing – An Ultimate Newsletter Plugin and Marketing Automation Solution for WordPress 10.1.4, at back/Views/Configuration/tmpl/security.php

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