Files
FreshRSS/app/layout/aside_configure.phtml
Inverle d55f017ccd Implement button for toggling sidebar on all views (#8201)
* Implement button for toggling sidebar on all views

Closes https://github.com/FreshRSS/FreshRSS/issues/7673, https://github.com/FreshRSS/FreshRSS/issues/7100, https://github.com/FreshRSS/FreshRSS/issues/6119, https://github.com/FreshRSS/FreshRSS/issues/5338, https://github.com/FreshRSS/FreshRSS/issues/2792, https://github.com/FreshRSS/FreshRSS/issues/4224, https://github.com/FreshRSS/FreshRSS/issues/4136

https://github.com/user-attachments/assets/0629e465-6450-440e-b38b-430e9ff73ef9

Keyboard shortcut for doing the same: <kbd>t</kbd>

* Partially fix other views

Repartition page looks broken on Swage

* Correction

`close-aside` wasn't meant to be removed

* i18n(conf): fr

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

* make fix-all

* Fix settings slider not opening in reader view

* make readme

---------

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2025-12-04 08:48:03 +01:00

120 lines
5.3 KiB
PHTML

<?php
declare(strict_types=1);
?>
<nav class="nav nav-list aside" id="aside_feed">
<form id="post-csrf" method="post">
<input type="hidden" name="_csrf" value="<?= FreshRSS_Auth::csrfToken() ?>" />
</form>
<a class="toggle_aside" href="#close"><?= _i('close') ?></a>
<ul>
<li class="item nav-section">
<ul>
<li class="item">
<a href="<?= _url('index', 'index') ?>"><?= _t('gen.action.back_to_rss_feeds') ?></a>
</li>
</ul>
</li>
<li class="item nav-section">
<div class="item nav-header"><?= _t('gen.menu.account') ?>: <?= htmlspecialchars(Minz_User::name() ?? '', ENT_NOQUOTES, 'UTF-8') ?></div>
<ul>
<li class="item<?= Minz_Request::controllerName() === 'user' && Minz_Request::actionName() === 'profile' ? ' active' : '' ?>">
<a href="<?= _url('user', 'profile') ?>"><?= _t('gen.menu.user_profile') ?></a>
</li>
<li class="item">
<button class="as-link signout" form="post-csrf" formaction="<?=
FreshRSS_auth_Controller::getLogoutUrl() ?>"><?= _t('gen.auth.logout'); ?><?= _i('logout') ?></button>
</li>
</ul>
</li>
<li class="item nav-section">
<div class="item nav-header"><?= _t('gen.menu.configuration') ?></div>
<ul>
<li class="item<?= Minz_Request::actionName() === 'display' ? ' active' : '' ?>">
<a href="<?= _url('configure', 'display') ?>"><?= _t('gen.menu.display') ?></a>
</li>
<li class="item<?= Minz_Request::actionName() === 'reading' ? ' active' : '' ?>">
<a href="<?= _url('configure', 'reading') ?>"><?= _t('gen.menu.reading') ?></a>
</li>
<li class="item<?= Minz_Request::actionName() === 'archiving' ? ' active' : '' ?>">
<a href="<?= _url('configure', 'archiving') ?>"><?= _t('gen.menu.archiving') ?></a>
</li>
<li class="item<?= Minz_Request::actionName() === 'integration' ? ' active' : '' ?>">
<a href="<?= _url('configure', 'integration') ?>"><?= _t('gen.menu.sharing') ?></a>
</li>
<li class="item<?= Minz_Request::actionName() === 'shortcut' ? ' active' : '' ?>">
<a href="<?= _url('configure', 'shortcut') ?>"><?= _t('gen.menu.shortcuts') ?></a>
</li>
<li class="item<?= in_array(Minz_Request::actionName(), ['queries', 'query'], true) ? ' active' : '' ?>">
<a href="<?= _url('configure', 'queries') ?>"><?= _t('gen.menu.queries') ?></a>
</li>
<li class="item<?= Minz_Request::controllerName() === 'extension' ? ' active' : '' ?>">
<a href="<?= _url('extension', 'index') ?>"><?= _t('gen.menu.extensions') ?></a>
</li>
<li class="item<?= Minz_Request::actionName() === 'privacy' ? ' active' : '' ?>">
<a href="<?= _url('configure', 'privacy') ?>"><?= _t('gen.menu.privacy') ?></a>
</li>
<?php if (!FreshRSS_Auth::hasAccess('admin')) { ?>
<li class="item<?= Minz_Request::actionName() === 'logs' ? ' active' : '' ?>">
<a href="<?= _url('index', 'logs') ?>"><?= _t('gen.menu.logs') ?></a>
</li>
<?php } ?>
<?= Minz_ExtensionManager::callHookString(Minz_HookType::MenuConfigurationEntry) ?>
</ul>
</li>
<?php if (FreshRSS_Auth::hasAccess('admin')) { ?>
<li class="item nav-section">
<div class="item nav-header"><?= _t('gen.menu.admin') ?></div>
<ul>
<li class="item<?= Minz_Request::actionName() === 'system' ? ' active' : '' ?>">
<a href="<?= _url('configure', 'system') ?>"><?= _t('gen.menu.system') ?></a>
</li>
<li class="item<?= Minz_Request::controllerName() === 'user' && in_array(Minz_Request::actionName(), ['manage', 'details'], true) ? ' active' : '' ?>">
<a href="<?= _url('user', 'manage') ?>"><?= _t('gen.menu.user_management') ?></a>
</li>
<li class="item<?= Minz_Request::controllerName() === 'auth' ? ' active' : '' ?>">
<a href="<?= _url('auth', 'index') ?>"><?= _t('gen.menu.authentication') ?></a>
</li>
<li class="item<?= Minz_Request::controllerName() === 'update' && Minz_Request::actionName() === 'checkInstall' ? ' active' : '' ?>">
<a href="<?= _url('update', 'checkInstall') ?>"><?= _t('gen.menu.check_install') ?></a>
</li>
<?php if (!FreshRSS_Context::systemConf()->disable_update) { ?>
<li class="item<?= Minz_Request::controllerName() === 'update' && Minz_Request::actionName() === 'index' ? ' active' : '' ?>">
<a href="<?= _url('update', 'index') ?>"><?= _t('gen.menu.update') ?></a>
</li>
<?php } ?>
<li class="item<?= Minz_Request::actionName() === 'logs' ? ' active' : '' ?>">
<a href="<?= _url('index', 'logs') ?>"><?= _t('gen.menu.logs') ?></a>
</li>
<?= Minz_ExtensionManager::callHookString(Minz_HookType::MenuAdminEntry) ?>
</ul>
</li>
<?php } ?>
<li class="item nav-section">
<div class="item nav-header"><!-- empty headline --></div>
<ul>
<li class="item<?= Minz_Request::actionName() === 'about' ? ' active' : '' ?>">
<a href="<?= _url('index', 'about') ?>"><?= _t('gen.menu.about') ?></a>
</li>
<?php if (file_exists(TOS_FILENAME)) { ?>
<li class="item<?= Minz_Request::actionName() === 'tos' ? ' active' : '' ?>">
<a href="<?= _url('index', 'tos') ?>"><?= _t('index.tos.title')?></a>
</li>
<?php } ?>
</ul>
</li>
</ul>
</nav>
<a class="close-aside" href="#close"></a>
<nav class="nav_menu nav_mobile">
<div id="nav_menu_toggle_aside" class="group">
<button class="btn" title="<?= _t('conf.shortcut.toggle_aside') ?>">
<?= _i('category') ?>
</button>
</div>
</nav>