replace the sortable jquery plugin with html5sortable
metroline continuous-integration/metroline Details
continuous-integration/drone/push Build is passing Details

This commit is contained in:
Simon Vieille 2021-11-05 20:19:08 +01:00
parent d978da2c72
commit db2220e745
4 changed files with 19 additions and 10 deletions

View File

@ -20,7 +20,7 @@
margin: 10px 0 10px 0; margin: 10px 0 10px 0;
} }
#side-menu-section input[type="checkbox"] { #-dropside-menu-section input[type="checkbox"] {
vertical-align: middle; vertical-align: middle;
} }
@ -81,6 +81,12 @@
cursor: pointer; cursor: pointer;
} }
.side-menu-setting-list-drop {
background: yellow;
border-color: yellow;
height: 34px;
}
.side-menu-setting.arrow { .side-menu-setting.arrow {
color: #ccc; color: #ccc;
padding-right: 5px; padding-right: 5px;

View File

@ -186,17 +186,17 @@ document.addEventListener('DOMContentLoaded', () => {
}) })
} }
jQuery("#categories-list .side-menu-setting-list").sortable({ sortable('#categories-list .side-menu-setting-list', {
forcePlaceholderSize: true, placeholderClass: 'side-menu-setting-list-drop'
placeholder: 'placeholder', })
stop: function (event, ui) {
let value = []
for (let item of document.querySelectorAll('#categories-list .side-menu-setting-list-item')) { sortable('#categories-list .side-menu-setting-list')[0].addEventListener('sortstop', (e) => {
value.push(item.getAttribute('data-id')) let value = []
}
document.querySelector('input[name="categories-order"]').value = JSON.stringify(value) for (let item of document.querySelectorAll('#categories-list .side-menu-setting-list-item')) {
value.push(item.getAttribute('data-id'))
} }
document.querySelector('input[name="categories-order"]').value = JSON.stringify(value)
}) })
}) })

View File

@ -20,6 +20,7 @@ use OCP\IURLGenerator;
use OCP\IConfig; use OCP\IConfig;
use OCA\SideMenu\AppInfo\Application; use OCA\SideMenu\AppInfo\Application;
vendor_script('side_menu', 'html5sortable.min');
script('side_menu', 'admin'); script('side_menu', 'admin');
style('side_menu', 'admin'); style('side_menu', 'admin');

2
vendor/html5sortable.min.js vendored Normal file

File diff suppressed because one or more lines are too long