Initial Write Config Support (#230)

* Initial JSON Write

* Initial Write Config Support

* .
This commit is contained in:
b1rdhous3 2016-09-09 10:15:35 +02:00 committed by redPanther
parent 0e941795d5
commit 4649786f68
3 changed files with 67 additions and 50 deletions

View File

@ -25,19 +25,19 @@ $(hyperion).one("cmd-config-getschema", function(event) {
//removeAdvanced(parsedConfSchemaJSON, []); // not working atm //removeAdvanced(parsedConfSchemaJSON, []); // not working atm
//console.log(JSON.stringify(parsedConfSchemaJSON)); //console.log(JSON.stringify(parsedConfSchemaJSON));
schema = parsedConfSchemaJSON.properties; schema = parsedConfSchemaJSON.properties;
schema_blackborderdetector = schema.blackborderdetector; blackborderdetector = schema.blackborderdetector;
schema_color = schema.color; color = schema.color;
schema_effects = schema.effects; effects = schema.effects;
schema_forwarder = schema.forwarder; forwarder = schema.forwarder;
schema_initialEffect = schema.initialEffect; initialEffect = schema.initialEffect;
schema_kodiVideoChecker = schema.kodiVideoChecker; kodiVideoChecker = schema.kodiVideoChecker;
schema_smoothing = schema.smoothing; smoothing = schema.smoothing;
schema_logger = schema.logger; logger = schema.logger;
schema_jsonServer = schema.jsonServer; jsonServer = schema.jsonServer;
schema_protoServer = schema.protoServer; protoServer = schema.protoServer;
schema_boblightServer = schema.boblightServer; boblightServer = schema.boblightServer;
schema_udpListener = schema.udpListener; udpListener = schema.udpListener;
schema_webConfig = schema.webConfig; webConfig = schema.webConfig;
var element = document.getElementById('editor_holder'); var element = document.getElementById('editor_holder');
//JSONEditor.defaults.options.theme = 'bootstrap3'; //JSONEditor.defaults.options.theme = 'bootstrap3';
@ -52,32 +52,42 @@ $(hyperion).one("cmd-config-getschema", function(event) {
schema: { schema: {
title:' ', title:' ',
properties: { properties: {
schema_blackborderdetector, /*blackborderdetector,
schema_color, color,
schema_effects, effects,
schema_forwarder, forwarder,
schema_initialEffect, initialEffect,
schema_kodiVideoChecker, kodiVideoChecker,
schema_smoothing, smoothing,*/
schema_logger, logger//,
schema_jsonServer, /*jsonServer,
schema_protoServer, protoServer,
schema_boblightServer, boblightServer,
schema_udpListener, udpListener,
schema_webConfig webConfig*/
} }
} }
}); });
});
//Called everytime a Input Field is changed = No need for save button
general_conf_editor.on('change',function() {
console.log(JSON.stringify(general_conf_editor.getValue()));
requestWriteConfig(general_conf_editor.getValue());
});
//Alternative Function with submit button to get Values
document.getElementById('submit').addEventListener('click',function() {
console.log(general_conf_editor.getValue());
});
$(hyperion).on("cmd-config-setconfig",function(event){
parsedServerInfoJSON = event.response;
console.log(parsedServerInfoJSON);
});
});
$(document).ready( function() { $(document).ready( function() {
requestServerConfigSchema(); requestServerConfigSchema();
document.getElementById('submit').addEventListener('click',function() {
// Get the value from the editor
//console.log(general_conf_editor.getValue());
});
//$("[type='checkbox']").bootstrapSwitch(); //$("[type='checkbox']").bootstrapSwitch();
}); });

View File

@ -191,3 +191,9 @@ function requestSetSource( prio )
websocket.send('{"command":"sourceselect", "tan":'+wsTan+', "priority" : '+prio+'}'); websocket.send('{"command":"sourceselect", "tan":'+wsTan+', "priority" : '+prio+'}');
} }
function requestWriteConfig(config, create, overwrite)
{
var create = (typeof create !== 'undefined') ? create : false;
var overwrite = (typeof overwrite !== 'undefined') ? overwrite : false;
websocket.send('{"command":"config","subcommand":"setconfig", "tan":'+wsTan+', "config":'+JSON.stringify(config)+',"create":'+create+', "overwrite":'+overwrite+'}');
}

View File

@ -33,6 +33,7 @@
"main_menu_input_selection_token" : "Eingabeauswahl", "main_menu_input_selection_token" : "Eingabeauswahl",
"main_menu_general_conf_token" : "Allgemein", "main_menu_general_conf_token" : "Allgemein",
"main_menu_leds_conf_token" : "LEDs", "main_menu_leds_conf_token" : "LEDs",
"main_menu_grabber_conf_token" : "Aufnahme Hardware",
"remote_colors_label_color" : "Farbe: ", "remote_colors_label_color" : "Farbe: ",
"remote_colors_button_reset" : "Farbe zurücksetzen", "remote_colors_button_reset" : "Farbe zurücksetzen",
"remote_effects_intro" : "Die Effekt-Fernbedienung ermöglicht es dir Effekte zu starten für Demonstrations- oder Testzwecke. Vergessse nicht den Effekt wieder zu stoppen, wenn du fertig bist.", "remote_effects_intro" : "Die Effekt-Fernbedienung ermöglicht es dir Effekte zu starten für Demonstrations- oder Testzwecke. Vergessse nicht den Effekt wieder zu stoppen, wenn du fertig bist.",