From 09737a50e7a5a0465ef780d20622421f0c109099 Mon Sep 17 00:00:00 2001 From: coderaiser Date: Thu, 17 Jul 2014 05:05:34 -0400 Subject: [PATCH] feature(config) unset diff on localStorage disabling --- lib/client/config.js | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/lib/client/config.js b/lib/client/config.js index 5b8e13f2..c9f5e930 100644 --- a/lib/client/config.js +++ b/lib/client/config.js @@ -13,6 +13,7 @@ var CloudCmd, Util, DOM; showLoad = Images.showLoad.bind(DOM, { top: true }), + Element, INPUT = 'INPUT', CONFIG, Template, @@ -61,9 +62,14 @@ var CloudCmd, Util, DOM; div = DOM.load({ name : 'div', className : 'config', - inner : data + inner : data, + attribute : { + 'data-name': 'js-config' + } }); + Element = div; + inputs = DOM.getByTag(INPUT, div); inputFirst = inputs[0]; @@ -119,6 +125,9 @@ var CloudCmd, Util, DOM; switch(type) { case 'checkbox': data = el.checked; + + if (el.id === 'localStorage') + onLocalStorageChange(data); break; case 'number': data = el.value - 0; @@ -142,6 +151,21 @@ var CloudCmd, Util, DOM; }); } + function onLocalStorageChange(checked) { + var element = DOM.getById('diff', Element), + msg = 'Diff would not working with no localStorage.\n' + + 'Use Zip to improve save spead in Edit.'; + + if (!checked && element.checked) { + alert(msg); + + element.checked = false; + onChange({ + target: element + }); + } + } + function onKey(event) { var keyCode = event.keyCode, ESC = Key.ESC;