Files
FreshRSS/app/views/configure/system.phtml
rupak 85f14f92fd Message for closed registration (#8462)
* Add closed msg field

i18n

fix

* Display based on registration type

* Save as FreshRSS_Context::systemConf()->closed_registration_message instead

* Improve messages

* Revert unrelated changes

* make fix-all

* Minor whitespace

* Simplify logic

* Fix invalid use of empty() and sympler syntax

---------

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2026-01-24 15:31:43 +01:00

143 lines
6.6 KiB
PHTML

<?php
declare(strict_types=1);
/** @var FreshRSS_View $this */
$this->partial('aside_configure');
?>
<main class="post">
<h1><?= _t('admin.system') ?></h1>
<form method="post" action="<?= _url('configure', 'system') ?>" data-auto-leave-validation="1">
<input type="hidden" name="_csrf" value="<?= FreshRSS_Auth::csrfToken() ?>" />
<div class="form-group">
<label class="group-name" for="instance-name"><?= _t('admin.system.instance-name') ?></label>
<div class="group-controls">
<input type="text" id="instance-name" name="instance-name" value="<?= FreshRSS_Context::systemConf()->title ?>" />
</div>
</div>
<div class="form-group">
<label class="group-name" for="base-url"><?= _t('admin.system.base-url') ?></label>
<div class="group-controls">
<input type="text" id="base-url" name="base-url" value="<?= FreshRSS_Context::systemConf()->base_url ?>" readonly="readonly" />
<p class="help"><?= _i('help') ?> <?= _t('admin.system.base-url.recommendation', dirname(Minz_Request::guessBaseUrl())) ?></p>
<p class="help"><?= _i('help') ?> <?= _t('admin.system.sensitive-parameter') ?></p>
</div>
</div>
<div class="form-group">
<label class="group-name" for="websub"><?= _t('sub.feed.websub') ?></label>
<div class="group-controls">
<input type="checkbox" id="websub" name="websub" disabled="disabled" <?=
FreshRSS_Context::systemConf()->pubsubhubbub_enabled && Minz_Request::serverIsPublic(FreshRSS_Context::systemConf()->base_url) ? 'checked="checked"' : '' ?> />
<p class="help"><?= _i('help') ?> <?= _t('admin.system.websub.help') ?></p>
<p class="help"><?= _i('help') ?> <?= _t('admin.system.sensitive-parameter') ?></p>
</div>
</div>
<div class="form-group">
<label class="group-name" for="auto-update-url"><?= _t('admin.system.auto-update-url') ?></label>
<div class="group-controls">
<input type="text" id="auto-update-url" name="auto-update-url" disabled="disabled" value="<?= FreshRSS_Context::systemConf()->auto_update_url ?>" />
</div>
</div>
<div class="form-group">
<label class="group-name" for="max-feeds"><?= _t('admin.system.max-feeds') ?></label>
<div class="group-controls">
<input type="number" id="max-feeds" name="max-feeds" value="<?= FreshRSS_Context::systemConf()->limits['max_feeds'] ?>" min="1" />
</div>
</div>
<div class="form-group">
<label class="group-name" for="max-categories"><?= _t('admin.system.max-categories') ?></label>
<div class="group-controls">
<input type="number" id="max-categories" name="max-categories" value="<?= FreshRSS_Context::systemConf()->limits['max_categories'] ?>" min="1" />
</div>
</div>
<div class="form-group">
<label class="group-name" for="cookie-duration"><?= _t('admin.system.cookie-duration.number') ?></label>
<div class="group-controls">
<input type="number" id="cookie-duration" name="cookie-duration" value="<?= FreshRSS_Context::systemConf()->limits['cookie_duration'] ?>" min="0" />
<p class="help"><?= _i('help') ?> <?= _t('admin.system.cookie-duration.help') ?></p>
</div>
</div>
<h2><?= _t('admin.system.registration.title') ?></h2>
<div class="form-group">
<label class="group-name" for="max-registrations-select"><?= _t('admin.system.registration.select.label') ?></label>
<div class="group-controls">
<select class="select-input-changer" name="" data-name="max-registrations">
<option value="1" <?= FreshRSS_Context::systemConf()->limits['max_registrations'] == 1 ? 'selected = "selected"' : ''; ?> data-input-visible="false"><?= _t('admin.system.registration.select.option.noform') ?></option>
<option value="0" <?= FreshRSS_Context::systemConf()->limits['max_registrations'] == 0 ? 'selected = "selected"' : ''; ?> data-input-visible="false"><?= _t('admin.system.registration.select.option.nolimit') ?></option>
<option value="2" <?= FreshRSS_Context::systemConf()->limits['max_registrations'] > 1 ? 'selected = "selected"' : ''; ?> data-input-visible="true"><?= _t('admin.system.registration.select.option.setaccountsnumber') ?></option>
</select>
</div>
</div>
<div class="form-group" id="max-registrations-block">
<label class="group-name" for="max-registrations-input"><?= _t('admin.system.registration.number') ?></label>
<div class="group-controls">
<?php $number = count(FreshRSS_user_Controller::listUsers()); ?>
<input type="number" id="max-registrations-input" name="" value="<?= FreshRSS_Context::systemConf()->limits['max_registrations'] > 1 ? FreshRSS_Context::systemConf()->limits['max_registrations'] : $number + 1; ?>" min="2" data-number="<?= $number ?>"/>
<span id="max-registrations-status-disabled">(= <?= _t('admin.system.registration.status.disabled') ?>)</span><span id="max-registrations-status-enabled">(= <?= _t('admin.system.registration.status.enabled') ?>)</span>
</div>
</div>
<div class="form-group">
<div class="group-controls">
<?= ($number > 1 ? _t('admin.user.numbers', $number) : _t('admin.user.number', $number)); ?>
</div>
</div>
<div class="form-group">
<label class="group-name" for="closed_registration_message"><?= _t('admin.system.closed_registration_message') ?></label>
<div class="group-controls">
<textarea id="closed_registration_message" name="closed_registration_message" rows="4" cols="50"><?=
FreshRSS_Context::systemConf()->attributeString('closed_registration_message') ?:
_t('admin.system.default_closed_registration_message')
?></textarea>
</div>
</div>
<div class="form-group">
<label class="group-name"><?= _t('index.tos.title') ?></label>
<div class="group-controls">
<?php if (file_exists(TOS_FILENAME)) { ?>
<?= _t('admin.system.tos.enabled') ?>
<?php
} else { ?>
<?= _t('admin.system.tos.disabled') ?>
<p class="help"><?= _i('help') ?> <?= _t('admin.system.tos.help') ?></p>
<?php } ?>
</div>
</div>
<div class="form-group">
<div class="group-controls">
<label class="checkbox" for="force-email-validation">
<input
type="checkbox"
name="force-email-validation"
id="force-email-validation"
value="1"
<?= FreshRSS_Context::systemConf()->force_email_validation ? 'checked="checked"' : '' ?>
/>
<?= _t('admin.system.force_email_validation') ?>
</label>
</div>
</div>
<div class="form-group form-actions">
<div class="group-controls">
<button type="submit" class="btn btn-important"><?= _t('gen.action.submit') ?></button>
<button type="reset" class="btn"><?= _t('gen.action.cancel') ?></button>
</div>
</div>
</form>
</main>
<script src="../scripts/config.js?<?= @filemtime(PUBLIC_PATH . '/scripts/config.js') ?>"></script>