rename 'top-menu-apps-order' with 'apps-order'

This commit is contained in:
Simon Vieille 2022-10-27 21:51:58 +02:00
parent d42593d203
commit 07c7221ca2
Signed by: deblan
GPG key ID: 579388D585F70417
6 changed files with 24 additions and 24 deletions

View file

@ -162,10 +162,10 @@ class JsController extends Controller
'side-with-categories' => $this->config->getAppValueBool('side-with-categories', '0'), 'side-with-categories' => $this->config->getAppValueBool('side-with-categories', '0'),
'big-menu' => $this->config->getAppValueBool('big-menu', '0'), 'big-menu' => $this->config->getAppValueBool('big-menu', '0'),
'big-menu-hidden-apps' => $this->config->getAppValueArray('big-menu-hidden-apps', '[]'), 'big-menu-hidden-apps' => $this->config->getAppValueArray('big-menu-hidden-apps', '[]'),
'apps-order' => $this->config->getAppValueArray('apps-order', '[]'),
'avatar' => $avatar, 'avatar' => $avatar,
'top-menu-apps' => $topMenuApps, 'top-menu-apps' => $topMenuApps,
'top-side-menu-apps' => $topSideMenuApps, 'top-side-menu-apps' => $topSideMenuApps,
'top-menu-apps-order' => $topMenuAppsOrder,
'target-blank-apps' => $targetBlankApps, 'target-blank-apps' => $targetBlankApps,
'settings' => $settings, 'settings' => $settings,
'logo' => $this->themingDefaults->getLogo(), 'logo' => $this->themingDefaults->getLogo(),

View file

@ -98,10 +98,6 @@ class AppRepository
} }
} }
usort($visibleApps, function ($a, $b) {
return ($a['name'] < $b['name']) ? -1 : 1;
});
return $visibleApps; return $visibleApps;
} }
@ -114,10 +110,10 @@ class AppRepository
); );
} }
public function getTopMenuOrderedApps() public function getOrderedApps()
{ {
$apps = $this->getVisibleApps(); $apps = $this->getVisibleApps();
$orders = $this->config->getAppValueArray('top-menu-apps-order', '[]'); $orders = $this->config->getAppValueArray('apps-order', '[]');
usort($apps, function ($a, $b) use ($orders) { usort($apps, function ($a, $b) use ($orders) {
$ak = array_keys($orders, $a['id'])[0] ?? null; $ak = array_keys($orders, $a['id'])[0] ?? null;

View file

@ -82,7 +82,7 @@ export default {
this.apps = {} this.apps = {}
let orders = {} let orders = {}
Array.from(window.topMenuAppsOrder).forEach((app, order) => { window.menuAppsOrder.forEach((app, order) => {
orders[app] = order + 1 orders[app] = order + 1
}) })

View file

@ -159,9 +159,15 @@ document.addEventListener('DOMContentLoaded', () => {
const target = event.target const target = event.target
const values = JSON.parse(target.getAttribute('data-reset')) const values = JSON.parse(target.getAttribute('data-reset'))
target.classList.toggle('btn-reset--progress', true)
for (let i in values) { for (let i in values) {
document.querySelector(`#${i}`).value = values[i] document.querySelector(`#${i}`).value = values[i]
} }
window.setTimeout(() => {
target.classList.toggle('btn-reset--progress', false)
}, 800)
}) })
} }
@ -249,7 +255,6 @@ document.addEventListener('DOMContentLoaded', () => {
let value = [] let value = []
for (let item of document.querySelectorAll('#categories-list .side-menu-setting-list-item')) { for (let item of document.querySelectorAll('#categories-list .side-menu-setting-list-item')) {
console.log(item.getAttribute('data-id'))
value.push(item.getAttribute('data-id')) value.push(item.getAttribute('data-id'))
} }
@ -258,20 +263,19 @@ document.addEventListener('DOMContentLoaded', () => {
} catch (e) { } catch (e) {
} }
sortable('#top-menu-apps-order-list .side-menu-setting-list', { sortable('#apps-order-list .side-menu-setting-list', {
placeholderClass: 'side-menu-setting-list-drop' placeholderClass: 'side-menu-setting-list-drop'
}) })
try { try {
sortable('#top-menu-apps-order-list .side-menu-setting-list')[0].addEventListener('sortstop', (e) => { sortable('#apps-order-list .side-menu-setting-list')[0].addEventListener('sortstop', (e) => {
let value = [] let value = []
for (let item of document.querySelectorAll('#top-menu-apps-order-list .side-menu-setting-list-item')) { for (let item of document.querySelectorAll('#apps-order-list .side-menu-setting-list-item')) {
console.log(item.getAttribute('data-id'))
value.push(item.getAttribute('data-id')) value.push(item.getAttribute('data-id'))
} }
document.querySelector('input[name="top-menu-apps-order"]').value = JSON.stringify(value) document.querySelector('input[name="apps-order"]').value = JSON.stringify(value)
}) })
} catch (e) { } catch (e) {
} }

View file

@ -25,8 +25,8 @@ if ($_['always-displayed']) {
const targetBlankApps = <?php echo json_encode($_['target-blank-apps']) ?> const targetBlankApps = <?php echo json_encode($_['target-blank-apps']) ?>
window.topMenuApps = <?php echo json_encode($_['top-menu-apps']), "\n"; ?> window.topMenuApps = <?php echo json_encode($_['top-menu-apps']), "\n"; ?>
window.topMenuAppsOrder = <?php echo json_encode($_['top-menu-apps-order']), "\n"; ?> window.topSideMenuApps = <?php echo json_encode($_['top-side-menu-apps'])."\n"; ?>
window.topSideMenuApps = <?php echo json_encode($_['top-side-menu-apps']); ?> window.menuAppsOrder = <?php echo json_encode($_['apps-order']), "\n"; ?>
<?php if ($display === 'big-menu'): ?> <?php if ($display === 'big-menu'): ?>
sideMenu.setAttribute('data-bigmenu', '1') sideMenu.setAttribute('data-bigmenu', '1')

View file

@ -839,19 +839,19 @@ $labelReset = 'Reset to default';
<div class="side-menu-setting-row"> <div class="side-menu-setting-row">
<div class="side-menu-setting-label"> <div class="side-menu-setting-label">
<?php p($l->t('Customize sorting')); ?> <?php p($l->t('Customize sorting')); ?>
<br>
<em>
<?php echo $l->t('This feature is not compatible with <code>big menu</code> and <code>with categories</code> displays.'); ?>
</em>
</div> </div>
<div class="side-menu-setting-form"> <div class="side-menu-setting-form">
<a class="side-menu-toggler" data-target="#top-menu-apps-order-list" href="#_"> <a class="side-menu-toggler" data-target="#apps-order-list" href="#_">
🖱️ <?php p($l->t($labelShowHideApps)); ?> 🖱️ <?php p($l->t($labelShowHideApps)); ?>
</a> </a>
<div id="top-menu-apps-order-list" style="display: none"> <div class="theme-undo icon icon-history btn-reset btn-reset--down" data-toggle="tooltip" data-original-title="<?php echo p($l->t($labelReset)); ?>" data-reset="<?php echo htmlentities(json_encode([
'side-menu-apps-order' => [],
])) ?>"></div>
<div id="apps-order-list" style="display: none">
<ul class="side-menu-setting-list"> <ul class="side-menu-setting-list">
<?php foreach ($_['top-menu-ordered-apps'] as $key => $app): ?> <?php foreach ($_['ordered-apps'] as $key => $app): ?>
<li data-id="<?php echo $app['id']; ?>" class="side-menu-setting-list-item"> <li data-id="<?php echo $app['id']; ?>" class="side-menu-setting-list-item">
<span class="arrow"> <span class="arrow">
@ -863,7 +863,7 @@ $labelReset = 'Reset to default';
</ul> </ul>
</div> </div>
<input type="hidden" value='<?php echo json_encode(array_keys($_['top-menu-apps-order'])) ?>' name="top-menu-apps-order" class="side-menu-setting"> <input type="hidden" value='<?php echo json_encode($_['apps-order']) ?>' name="apps-order" class="side-menu-setting" id="side-menu-apps-order">
</div> </div>
</div> </div>
</div> </div>