mirror of
https://github.com/lumapu/ahoy.git
synced 2025-06-09 22:21:39 +02:00
solve dependencies of hidden display parameters
This commit is contained in:
parent
c3a2ad0a97
commit
e59978dc9c
2 changed files with 26 additions and 14 deletions
|
@ -1130,8 +1130,7 @@
|
|||
|
||||
function hideDispPins(pins, dispType) {
|
||||
// create pin map for each display type.
|
||||
// It depends on fix pin array (see var pins)
|
||||
// var pins = [['clock', 'disp_clk'], ['data', 'disp_data'], ['cs', 'disp_cs'], ['dc', 'disp_dc'], ['reset', 'disp_rst']];
|
||||
// It depends on fix pin array, see var pins: ['clock', 'data', 'cs', 'dc', 'reset', 'busy']
|
||||
const pinMap = new Map([
|
||||
[0, [0,0,0,0,0,0]], //none
|
||||
[1, [1,1,0,0,0,0]], //SSD1306_128X64
|
||||
|
|
|
@ -596,19 +596,32 @@ class Web {
|
|||
|
||||
// display
|
||||
mConfig->plugin.display.pwrSaveAtIvOffline = (request->arg("disp_pwr") == "on");
|
||||
mConfig->plugin.display.screenSaver = request->arg("disp_screensaver").toInt();
|
||||
mConfig->plugin.display.graph_ratio = request->arg("disp_graph_ratio").toInt();
|
||||
mConfig->plugin.display.graph_size = request->arg("disp_graph_size").toInt();
|
||||
mConfig->plugin.display.rot = request->arg("disp_rot").toInt();
|
||||
mConfig->plugin.display.type = request->arg("disp_typ").toInt();
|
||||
mConfig->plugin.display.contrast = (mConfig->plugin.display.type == 0) ? 60 : request->arg("disp_cont").toInt();
|
||||
mConfig->plugin.display.contrast = (mConfig->plugin.display.type == 0) || // contrast available only according optionsMap in setup.html, otherwise default value
|
||||
(mConfig->plugin.display.type == 10) ? 60 : request->arg("disp_cont").toInt();
|
||||
mConfig->plugin.display.screenSaver = ((mConfig->plugin.display.type == 1) || // screensaver available only according optionsMap in setup.html, otherwise default value
|
||||
(mConfig->plugin.display.type == 2) ||
|
||||
(mConfig->plugin.display.type == 4) ||
|
||||
(mConfig->plugin.display.type == 5) ||
|
||||
(mConfig->plugin.display.type == 6)) ? request->arg("disp_screensaver").toInt() : 1;
|
||||
mConfig->plugin.display.graph_ratio = ((mConfig->plugin.display.type == 1) || // display graph available only according optionsMap in setup.html, otherwise has to be 0
|
||||
(mConfig->plugin.display.type == 2) ||
|
||||
(mConfig->plugin.display.type == 3) ||
|
||||
(mConfig->plugin.display.type == 6)) ? request->arg("disp_graph_ratio").toInt() : 0;
|
||||
|
||||
// available pins according pinMap in setup.html, otherwise default value
|
||||
mConfig->plugin.display.disp_data = (mConfig->plugin.display.type == 0) ? DEF_PIN_OFF : request->arg("disp_data").toInt();
|
||||
mConfig->plugin.display.disp_clk = (mConfig->plugin.display.type == 0) ? DEF_PIN_OFF : request->arg("disp_clk").toInt();
|
||||
mConfig->plugin.display.disp_cs = (mConfig->plugin.display.type < 3) ? DEF_PIN_OFF : request->arg("disp_cs").toInt();
|
||||
mConfig->plugin.display.disp_reset = (mConfig->plugin.display.type < 3) ? DEF_PIN_OFF : request->arg("disp_rst").toInt();
|
||||
mConfig->plugin.display.disp_dc = (mConfig->plugin.display.type < 3) ? DEF_PIN_OFF : request->arg("disp_dc").toInt();
|
||||
mConfig->plugin.display.disp_busy = (mConfig->plugin.display.type < 10) ? DEF_PIN_OFF : request->arg("disp_bsy").toInt();
|
||||
mConfig->plugin.display.pirPin = request->arg("pir_pin").toInt();
|
||||
mConfig->plugin.display.disp_cs = (mConfig->plugin.display.type != 3) &&
|
||||
(mConfig->plugin.display.type != 10) ? DEF_PIN_OFF : request->arg("disp_cs").toInt();
|
||||
mConfig->plugin.display.disp_dc = (mConfig->plugin.display.type != 3) &&
|
||||
(mConfig->plugin.display.type != 10) ? DEF_PIN_OFF : request->arg("disp_dc").toInt();
|
||||
mConfig->plugin.display.disp_reset = (mConfig->plugin.display.type != 10) ? DEF_PIN_OFF : request->arg("disp_rst").toInt();
|
||||
mConfig->plugin.display.disp_busy = (mConfig->plugin.display.type != 10) ? DEF_PIN_OFF : request->arg("disp_bsy").toInt();
|
||||
mConfig->plugin.display.pirPin = (mConfig->plugin.display.screenSaver != 2) ? DEF_PIN_OFF : request->arg("pir_pin").toInt(); // pir pin only for motion screensaver
|
||||
// otherweise default value
|
||||
|
||||
mApp->saveSettings((request->arg("reboot") == "on"));
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue