Skip to content

Commit

Permalink
Merge pull request #99 from FriendsOfREDAXO/skerbis-patch-1
Browse files Browse the repository at this point in the history
YRewriteDomainliste nur zeigen wenn welche vorhanden
  • Loading branch information
skerbis authored Jul 9, 2024
2 parents 3c06339 + 9bc8714 commit 6236869
Showing 1 changed file with 44 additions and 52 deletions.
96 changes: 44 additions & 52 deletions pages/frontend.php
Original file line number Diff line number Diff line change
Expand Up @@ -58,29 +58,6 @@
$select->addOption($addon->i18n('maintenance_http_response_code_503'), '503');
$select->addOption($addon->i18n('maintenance_http_response_code_403'), '403');

// Wartungsfenster-Ankündigung

$form->addFieldset($addon->i18n('maintenance_announcement_title'));

// Benachrichtigungstext
$field = $form->addTextAreaField('announcement');
$field->setLabel($addon->i18n('maintenance_announcement_label'));
$field->setNotice($addon->i18n('maintenance_announcement_notice'));
if(strval(rex_config::get('maintenance', 'editor')) !== '') { // @phpstan-ignore-line
$field->setAttribute('class', '###maintenance-settings-editor###');
}

// Start- und Endzeitpunkt der Wartungsankündigung
$field = $form->addTextField('announcement_start_date');
$field->setLabel($addon->i18n('maintenance_announcement_start_date_label'));
$field->setNotice($addon->i18n('maintenance_announcement_start_date_notice', date('Y-m-d H:i:s')));
$field->setAttribute('type', 'datetime-local');

$field = $form->addTextField('announcement_end_date');
$field->setLabel($addon->i18n('maintenance_announcement_end_date_label'));
$field->setNotice($addon->i18n('maintenance_announcement_end_date_notice', date('Y-m-d H:i:s')));
$field->setAttribute('type', 'datetime-local');

// Ausnahmeregeln

$form->addFieldset($addon->i18n('maintenance_allowed_access_title'));
Expand All @@ -95,27 +72,19 @@


// Wenn YRewrite installiert, dann erlaubte YRewrite-Domains auswählen
if (\rex_addon::get('yrewrite')->isAvailable()) {
if (\rex_addon::get('yrewrite')->isAvailable() && count(\rex_yrewrite::getDomains()) > 1) {
$field = $form->addSelectField('allowed_yrewrite_domains');
$field->setAttribute('multiple', 'multiple');

$field->setAttribute('size', count(\rex_yrewrite::getDomains()));
$field->setAttribute('class', 'form-control selectpicker');
$field->setAttribute('data-live-search', 'true');
$field->setLabel($addon->i18n('maintenance_allowed_yrewrite_domains_label'));
$field->setNotice($addon->i18n('maintenance_allowed_yrewrite_domains_notice'));
$select = $field->getSelect();
foreach (\rex_yrewrite::getDomains() as $key => $domain) {
$select->addOption($key, $key);
}
} else {
$field = $form->addSelectField('allowed_yrewrite_domains');

$field->setAttribute('disabled', 'disabled');
$field->setLabel($addon->i18n('maintenance_allowed_yrewrite_domains_label'));
$field->setNotice($addon->i18n('maintenance_allowed_yrewrite_domains_notice'));
$select = $field->getSelect();
$select->addOption($addon->i18n('maintenance_yrewrite_not_installed'), '');
}

// Erlaubte Domains
$field = $form->addTextField('allowed_domains');
$field->setLabel($addon->i18n('maintenance_allowed_domains_label'));
Expand All @@ -124,6 +93,29 @@
$field->setAttribute('data-maintenance', 'tokenfield');
$field->setAttribute('data-beautify', 'false');

// Wartungsfenster-Ankündigung

$form->addFieldset($addon->i18n('maintenance_announcement_title'));

// Benachrichtigungstext
$field = $form->addTextAreaField('announcement');
$field->setLabel($addon->i18n('maintenance_announcement_label'));
$field->setNotice($addon->i18n('maintenance_announcement_notice'));
if (strval(rex_config::get('maintenance', 'editor')) !== '') { // @phpstan-ignore-line
$field->setAttribute('class', '###maintenance-settings-editor###');
}

// Start- und Endzeitpunkt der Wartungsankündigung
$field = $form->addTextField('announcement_start_date');
$field->setLabel($addon->i18n('maintenance_announcement_start_date_label'));
$field->setNotice($addon->i18n('maintenance_announcement_start_date_notice', date('Y-m-d H:i:s')));
$field->setAttribute('type', 'datetime-local');

$field = $form->addTextField('announcement_end_date');
$field->setLabel($addon->i18n('maintenance_announcement_end_date_label'));
$field->setNotice($addon->i18n('maintenance_announcement_end_date_notice', date('Y-m-d H:i:s')));
$field->setAttribute('type', 'datetime-local');


$fragment = new rex_fragment();
$fragment->setVar('class', 'edit');
Expand All @@ -132,26 +124,26 @@
?>

<div class="row">
<div class="col-lg-8">
<?= $fragment->parse('core/page/section.php') ?>
</div>
<div class="col-lg-4">
<?php

$copy = '';
$url = '' . rex::getServer() . '?maintenance_secret=' . rex_config::get('maintenance', 'maintenance_secret');
$copy .= '<div class="hidden" id="maintenance-mode-url"><code>'.$url.'</code></div>';
$copy .= '
<div class="col-lg-8">
<?= $fragment->parse('core/page/section.php') ?>
</div>
<div class="col-lg-4">
<?php

$copy = '';
$url = '' . rex::getServer() . '?maintenance_secret=' . rex_config::get('maintenance', 'maintenance_secret');
$copy .= '<div class="hidden" id="maintenance-mode-url"><code>' . $url . '</code></div>';
$copy .= '
<clipboard-copy for="maintenance-mode-url" class="input-group">
<input type="text" value="' .$url .'" readonly class="form-control">
<input type="text" value="' . $url . '" readonly class="form-control">
<span class="input-group-addon"><i class="rex-icon fa-clone"></i></span>
</clipboad-copy>';

$fragment = new rex_fragment();
$fragment->setVar('class', 'info', false);
$fragment->setVar('title', rex_i18n::msg('maintenance_copy_url_title'), false);
$fragment->setVar('body', $copy, false);
echo $fragment->parse('core/page/section.php');
?>
</div>
$fragment = new rex_fragment();
$fragment->setVar('class', 'info', false);
$fragment->setVar('title', rex_i18n::msg('maintenance_copy_url_title'), false);
$fragment->setVar('body', $copy, false);
echo $fragment->parse('core/page/section.php');
?>
</div>
</div>

0 comments on commit 6236869

Please sign in to comment.