From 11c2a65b5adb455ebc64ad93d8a4d5d770586f24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Wed, 24 Oct 2018 10:33:30 -0400 Subject: [PATCH] fix config values not showing client side if they were set to 0 --- public/src/admin/settings.js | 32 +++++++------------------------- 1 file changed, 7 insertions(+), 25 deletions(-) diff --git a/public/src/admin/settings.js b/public/src/admin/settings.js index f42584e6d0..89fa99edc3 100644 --- a/public/src/admin/settings.js +++ b/public/src/admin/settings.js @@ -42,35 +42,17 @@ define('admin/settings', ['uploader'], function (uploader) { app.flags = app.flags || {}; app.flags._unsaved = true; }); - + var defaultInputs = ['text', 'hidden', 'password', 'textarea', 'number']; for (x = 0; x < numFields; x += 1) { field = fields.eq(x); key = field.attr('data-field'); inputType = field.attr('type'); - if (field.is('input')) { - if (app.config[key]) { - switch (inputType) { - case 'text': - case 'hidden': - case 'password': - case 'textarea': - case 'number': - field.val(app.config[key]); - break; - - case 'checkbox': - var checked = parseInt(app.config[key], 10) === 1; - field.prop('checked', checked); - field.parents('.mdl-switch').toggleClass('is-checked', checked); - break; - } - } - } else if (field.is('textarea')) { - if (app.config.hasOwnProperty(key)) { - field.val(app.config[key]); - } - } else if (field.is('select')) { - if (app.config.hasOwnProperty(key)) { + if (app.config.hasOwnProperty(key)) { + if (field.is('input') && inputType === 'checkbox') { + var checked = parseInt(app.config[key], 10) === 1; + field.prop('checked', checked); + field.parents('.mdl-switch').toggleClass('is-checked', checked); + } else if (field.is('textarea') || field.is('select') || (field.is('input') && defaultInputs.indexOf(inputType) !== -1)) { field.val(app.config[key]); } }