add personal settings page to enabled (or not) the side menu

This commit is contained in:
Simon Vieille
2020-05-11 22:51:27 +02:00
parent 375ed7d2f1
commit 7ac19c7bec
13 changed files with 429 additions and 72 deletions
+26 -22
View File
@@ -15,37 +15,33 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
const elements = [
'side-menu-background-color',
'side-menu-background-color-to',
'side-menu-current-app-background-color',
'side-menu-text-color',
'side-menu-force-light-icon',
'side-menu-opener',
'side-menu-opener-position',
'side-menu-opener-hover',
'side-menu-opener-only',
'side-menu-display-logo',
'side-menu-hide-when-no-apps',
'side-menu-size-icon',
'side-menu-size-text',
'side-menu-cache',
'side-menu-external-sites-in-top-menu',
];
let elements = []
const selector = '#side-menu-message';
const userConfig = (name, value, callbacks) => {
const url = OC.generateUrl('/apps/side_menu/personalSetting/valueSet')
$.post(url, {name: name, value: value}, callbacks.success)
.fail(callbacks.error)
}
const appConfig = (name, value, callbacks) => {
OCP.AppConfig.setValue('side_menu', name, value, callbacks)
}
const saveSettings = (key) => {
const element = elements[key]
const name = $('#' + element).attr('name')
let value = $('#' + element).val()
const element = elements.get(key)
const name = $(element).attr('name')
let value = $(element).val()
const size = elements.length
if (element === 'side-menu-cache') {
value++
}
OCP.AppConfig.setValue('side_menu', name, value, {
const callbacks = {
success: () => {
OC.msg.finishedSuccess(
selector,
@@ -61,10 +57,18 @@ const saveSettings = (key) => {
error: () => {
OC.msg.finishedError(selector, t('side_menu', 'Error while saving "' + element + '"'))
}
});
}
if ($(element).is('[data-personal]')) {
userConfig(name, value, callbacks)
} else {
appConfig(name, value, callbacks)
}
}
$(document).ready(() => {
elements = $('.side-menu-setting')
$('#side-menu-save').on('click', (event) => {
event.preventDefault()
OC.msg.startSaving(selector)