diff --git a/assets/webconfig/js/content_generalconf.js b/assets/webconfig/js/content_generalconf.js index c957d451..c3af938a 100644 --- a/assets/webconfig/js/content_generalconf.js +++ b/assets/webconfig/js/content_generalconf.js @@ -25,23 +25,23 @@ $(hyperion).one("cmd-config-getschema", function(event) { //removeAdvanced(parsedConfSchemaJSON, []); // not working atm //console.log(JSON.stringify(parsedConfSchemaJSON)); schema = parsedConfSchemaJSON.properties; - schema_blackborderdetector = schema.blackborderdetector; - schema_color = schema.color; - schema_effects = schema.effects; - schema_forwarder = schema.forwarder; - schema_initialEffect = schema.initialEffect; - schema_kodiVideoChecker = schema.kodiVideoChecker; - schema_smoothing = schema.smoothing; - schema_logger = schema.logger; - schema_jsonServer = schema.jsonServer; - schema_protoServer = schema.protoServer; - schema_boblightServer = schema.boblightServer; - schema_udpListener = schema.udpListener; - schema_webConfig = schema.webConfig; + blackborderdetector = schema.blackborderdetector; + color = schema.color; + effects = schema.effects; + forwarder = schema.forwarder; + initialEffect = schema.initialEffect; + kodiVideoChecker = schema.kodiVideoChecker; + smoothing = schema.smoothing; + logger = schema.logger; + jsonServer = schema.jsonServer; + protoServer = schema.protoServer; + boblightServer = schema.boblightServer; + udpListener = schema.udpListener; + webConfig = schema.webConfig; var element = document.getElementById('editor_holder'); //JSONEditor.defaults.options.theme = 'bootstrap3'; - + var general_conf_editor = new JSONEditor(element,{ theme: 'bootstrap3', disable_collapse: 'true', @@ -52,32 +52,42 @@ $(hyperion).one("cmd-config-getschema", function(event) { schema: { title:' ', properties: { - schema_blackborderdetector, - schema_color, - schema_effects, - schema_forwarder, - schema_initialEffect, - schema_kodiVideoChecker, - schema_smoothing, - schema_logger, - schema_jsonServer, - schema_protoServer, - schema_boblightServer, - schema_udpListener, - schema_webConfig + /*blackborderdetector, + color, + effects, + forwarder, + initialEffect, + kodiVideoChecker, + smoothing,*/ + logger//, + /*jsonServer, + protoServer, + boblightServer, + udpListener, + 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() { 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(); }); - diff --git a/assets/webconfig/js/hyperion.js b/assets/webconfig/js/hyperion.js index 7048a00c..129bb578 100644 --- a/assets/webconfig/js/hyperion.js +++ b/assets/webconfig/js/hyperion.js @@ -38,7 +38,7 @@ var cronId = 0; var ledStreamActive=false; var watchdog = 0; -// +// function cron() { if ( watchdog > 3) @@ -67,7 +67,7 @@ function initWebSocket() websocket.onopen = function (event) { $(hyperion).trigger({type:"open"}); - + $(hyperion).on("cmd-serverinfo", function(event) { watchdog = 0; }); @@ -183,7 +183,7 @@ function requestSetComponentState(comp, state){ console.log(comp+' state: '+state_str); } -function requestSetSource( prio ) +function requestSetSource(prio) { if ( prio == "auto" ) websocket.send('{"command":"sourceselect", "tan":'+wsTan+', "auto" : true}'); @@ -191,3 +191,9 @@ function requestSetSource( 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+'}'); +} diff --git a/assets/webconfig/lang/de.json b/assets/webconfig/lang/de.json index 57735fac..0e4f46ee 100644 --- a/assets/webconfig/lang/de.json +++ b/assets/webconfig/lang/de.json @@ -31,20 +31,21 @@ "main_menu_update_token" : "Update", "main_menu_system_token" : "System", "main_menu_input_selection_token" : "Eingabeauswahl", - "main_menu_general_conf_token":"Allgemein", - "main_menu_leds_conf_token":"LEDs", - "remote_colors_label_color":"Farbe: ", - "remote_colors_button_reset":"Farbe zurücksetzen", + "main_menu_general_conf_token" : "Allgemein", + "main_menu_leds_conf_token" : "LEDs", + "main_menu_grabber_conf_token" : "Aufnahme Hardware", + "remote_colors_label_color" : "Farbe: ", + "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_label_effects":"Effekte", - "remote_effects_label_stopeffect":"Stoppe Effekte", + "remote_effects_label_effects" : "Effekte", + "remote_effects_label_stopeffect" : "Stoppe Effekte", "remote_components_intro" : "Die Komponenten-Fenbedienung ermöglicht es dir Komponenten von Hyperion zu starten und stoppen. Beachte: Dies ist nur temporär und geht nach einem Neustart verloren. Möchtest du dauerhaft Komponenten aktivieren/deaktivieren benutze die Konfigurationsseiten.", - "hue_button_create_user_token":"Benutzer anlegen", - "hue_press_link_modal":"Bitte Link Taste auf der Hue Bridge drücken.", - "hue_failure_connection_token":"Connection Timeout. Bitte drücke die Taste rechtzeitig.", - "hue_button_pair":"Verbinden", - "hue_failure_ip_token":"Bitte überprüfe deine IP Adresse.", - "hue_label_username":"Benutzername:", + "hue_button_create_user_token" : "Benutzer anlegen", + "hue_press_link_modal" : "Bitte Link Taste auf der Hue Bridge drücken.", + "hue_failure_connection_token" : "Connection Timeout. Bitte drücke die Taste rechtzeitig.", + "hue_button_pair" : "Verbinden", + "hue_failure_ip_token" : "Bitte überprüfe deine IP Adresse.", + "hue_label_username" : "Benutzername:", "conf_kodi_label_title" : "Kodi Überwachung", "conf_kodi_label_intro" : "Die Kodi Überwachung ermöglicht es dir abhängig von dem Kodi Status dein ambient light an oder abzuschalten. Dies ist nicht limitiert auf das selbe Gerät. Du kannst jedes Kodi in deinem lokalen Netzwerk überwachen lassen.", "support_label_title" : "Unterstütze Hyperion",