mirror of
https://github.com/hyperion-project/hyperion.ng.git
synced 2025-03-01 10:33:28 +00:00
Merge remote-tracking branch 'origin/master' into config
This commit is contained in:
@@ -159,8 +159,9 @@
|
||||
"conf_leds_note_layout_overwrite": "Achtung: Überschreiben erzeugt ein Standardlayout für {{plural:$1| eine LED| alle $1 LEDs}} gemäß der gegebenen Hardware LED-Anzahl",
|
||||
"conf_leds_optgroup_RPiGPIO": "RPi GPIO",
|
||||
"conf_leds_optgroup_RPiPWM": "RPi PWM",
|
||||
"conf_leds_optgroup_RPiSPI": "RPi SPI",
|
||||
"conf_leds_optgroup_SPI": "SPI",
|
||||
"conf_leds_optgroup_debug": "Debug",
|
||||
"conf_leds_optgroup_ftdi": "USB/Ftdi",
|
||||
"conf_leds_optgroup_network": "Netzwerk",
|
||||
"conf_leds_optgroup_other": "Andere",
|
||||
"conf_leds_optgroup_usb": "USB/Seriell",
|
||||
@@ -191,6 +192,7 @@
|
||||
"conf_network_tok_diaTitle": "Neues Token erstellt!",
|
||||
"conf_network_tok_grantMsg": "Eine App fordert Zugriff auf die Hyperion API durch ein Token. Möchtest du dies zulassen? Bitte überprüfe die angegebenen Informationen!",
|
||||
"conf_network_tok_grantT": "App Token angefordert",
|
||||
"conf_network_tok_idhead": "ID",
|
||||
"conf_network_tok_intro": "Hier kannst du Token zur API-Authentifizierung erstellen oder löschen. Neu erstellte Token werden einmalig angezeigt.",
|
||||
"conf_network_tok_lastuse": "Zuletzt genutzt",
|
||||
"conf_network_tok_title": "Token Management",
|
||||
@@ -611,6 +613,11 @@
|
||||
"edt_conf_webc_sslport_title": "HTTPS Port",
|
||||
"edt_dev_auth_key_title": "Autorisierungs-Token",
|
||||
"edt_dev_auth_key_title_info": "Autorisierungs-Token für den Zugriff auf das Gerät erforderlich",
|
||||
"edt_dev_enum_auto": "Auto",
|
||||
"edt_dev_enum_auto_accurate": "Auto genau",
|
||||
"edt_dev_enum_auto_max": "Auto maximal",
|
||||
"edt_dev_enum_cold_white": "Kaltweiß",
|
||||
"edt_dev_enum_neutral_white": "Neutralweiß",
|
||||
"edt_dev_enum_sub_min_cool_adjust": "Minimale Anpassung: cool",
|
||||
"edt_dev_enum_sub_min_warm_adjust": "Minimale Anpassung: warm",
|
||||
"edt_dev_enum_subtract_minimum": "Subtrahiere Minimum",
|
||||
@@ -735,7 +742,7 @@
|
||||
"edt_dev_spec_username_title": "Benutzername",
|
||||
"edt_dev_spec_verbose_title": "Protokollierung der HUE-Kommandos",
|
||||
"edt_dev_spec_vid_title": "VID",
|
||||
"edt_dev_spec_whiteLedAlgor_title": "Weiß Algorithmus",
|
||||
"edt_dev_spec_whiteLedAlgor_title": "Weißabgleich Algorithmus",
|
||||
"edt_dev_spec_whitepoint_title": "Weißpunkt",
|
||||
"edt_eff_alarmcolor": "Alarm Farbe",
|
||||
"edt_eff_backgroundColor": "Hintergrundfarbe",
|
||||
@@ -962,6 +969,7 @@
|
||||
"general_country_us": "Amerika",
|
||||
"general_disabled": "deaktiviert",
|
||||
"general_enabled": "aktiviert",
|
||||
"general_speech_bg": "Bulgarisch",
|
||||
"general_speech_ca": "Katalanisch",
|
||||
"general_speech_cs": "Tschechisch",
|
||||
"general_speech_da": "Dänisch",
|
||||
|
@@ -161,11 +161,12 @@
|
||||
"conf_leds_note_layout_overwrite": "Note: Overwrite creates a default layout for {{plural:$1| one LED| all $1 LEDs}} given by the hardware LED count",
|
||||
"conf_leds_optgroup_RPiGPIO": "RPi GPIO",
|
||||
"conf_leds_optgroup_RPiPWM": "RPi PWM",
|
||||
"conf_leds_optgroup_RPiSPI": "RPi SPI",
|
||||
"conf_leds_optgroup_SPI": "SPI",
|
||||
"conf_leds_optgroup_debug": "Debug",
|
||||
"conf_leds_optgroup_network": "Network",
|
||||
"conf_leds_optgroup_other": "Other",
|
||||
"conf_leds_optgroup_usb": "USB/Serial",
|
||||
"conf_leds_optgroup_ftdi": "USB/Ftdi",
|
||||
"conf_logging_btn_autoscroll": "Auto scrolling",
|
||||
"conf_logging_btn_clipboard": "Copy Log to Clipboard",
|
||||
"conf_logging_btn_pbupload": "Upload a report for support requests",
|
||||
@@ -619,6 +620,11 @@
|
||||
"edt_dev_enum_sub_min_cool_adjust": "Subtract cool white",
|
||||
"edt_dev_enum_sub_min_warm_adjust": "Subtract warm white",
|
||||
"edt_dev_enum_subtract_minimum": "Subtract minimum",
|
||||
"edt_dev_enum_cold_white": "Cold white",
|
||||
"edt_dev_enum_neutral_white": "Neutral white",
|
||||
"edt_dev_enum_auto": "Auto",
|
||||
"edt_dev_enum_auto_max": "Auto max",
|
||||
"edt_dev_enum_auto_accurate": "Auto accurate",
|
||||
"edt_dev_enum_white_off": "White off",
|
||||
"edt_dev_general_autostart_title": "Autostart",
|
||||
"edt_dev_general_autostart_title_info": "The LED device is switched-on during startup or not",
|
||||
@@ -700,6 +706,7 @@
|
||||
"edt_dev_spec_port_expl": "Service Port [1-65535]",
|
||||
"edt_dev_spec_port_title": "Port",
|
||||
"edt_dev_spec_printTimeStamp_title": "Add timestamp",
|
||||
"edt_dev_spec_skydimo_mode_title": "Skydimo Mode",
|
||||
"edt_dev_spec_stream_protocol_title": "Streaming protocol",
|
||||
"edt_dev_spec_pwmChannel_title": "PWM channel",
|
||||
"edt_dev_spec_razer_device_title": "Razer Chroma Device",
|
||||
|
@@ -159,8 +159,9 @@
|
||||
"conf_leds_note_layout_overwrite": "Varning: Åsidosättande skapar en standardlayout för {{plural:$1| en LED| varje $1 lysdioder}} enligt det givna antalet lysdioder för hårdvara",
|
||||
"conf_leds_optgroup_RPiGPIO": "RPi GPIO",
|
||||
"conf_leds_optgroup_RPiPWM": "RPi PWM",
|
||||
"conf_leds_optgroup_RPiSPI": "RPi SPI",
|
||||
"conf_leds_optgroup_SPI": "SPI",
|
||||
"conf_leds_optgroup_debug": "Felsöka",
|
||||
"conf_leds_optgroup_ftdi": "USB/Ftdi",
|
||||
"conf_leds_optgroup_network": "Nätverk",
|
||||
"conf_leds_optgroup_other": "Annat",
|
||||
"conf_leds_optgroup_usb": "USB/Seriell",
|
||||
@@ -612,6 +613,11 @@
|
||||
"edt_conf_webc_sslport_title": "HTTPS-Port",
|
||||
"edt_dev_auth_key_title": "Auktorisationsnyckel",
|
||||
"edt_dev_auth_key_title_info": "Auktorisationsnyckel krävs för att få åtkomst till enheten",
|
||||
"edt_dev_enum_auto": "Auto",
|
||||
"edt_dev_enum_auto_accurate": "Auto noggrann",
|
||||
"edt_dev_enum_auto_max": "Auto max",
|
||||
"edt_dev_enum_cold_white": "Kallvitt",
|
||||
"edt_dev_enum_neutral_white": "Neutralvitt",
|
||||
"edt_dev_enum_sub_min_cool_adjust": "Minsta justering: kall",
|
||||
"edt_dev_enum_sub_min_warm_adjust": "Minsta justering: varm",
|
||||
"edt_dev_enum_subtract_minimum": "Subtrahera minimum",
|
||||
@@ -963,6 +969,7 @@
|
||||
"general_country_us": "USA",
|
||||
"general_disabled": "Inaktiverad",
|
||||
"general_enabled": "Aktiverad",
|
||||
"general_speech_bg": "Bulgariska",
|
||||
"general_speech_ca": "Katalanska",
|
||||
"general_speech_cs": "Tjeckiska",
|
||||
"general_speech_da": "Danska",
|
||||
|
@@ -18,7 +18,8 @@ var bottomRight2bottomLeft = null;
|
||||
var bottomLeft2topLeft = null;
|
||||
var toggleKeystoneCorrectionArea = false;
|
||||
|
||||
var devRPiSPI = ['apa102', 'apa104', 'ws2801', 'lpd6803', 'lpd8806', 'p9813', 'sk6812spi', 'sk6822spi', 'sk9822', 'ws2812spi'];
|
||||
var devSPI = ['apa102', 'apa104', 'ws2801', 'lpd6803', 'lpd8806', 'p9813', 'sk6812spi', 'sk6822spi', 'sk9822', 'ws2812spi'];
|
||||
var devFTDI = ['apa102_ftdi', 'sk6812_ftdi', 'ws2812_ftdi'];
|
||||
var devRPiPWM = ['ws281x'];
|
||||
var devRPiGPIO = ['piblaster'];
|
||||
var devNET = ['atmoorb', 'cololight', 'fadecandy', 'philipshue', 'nanoleaf', 'razer', 'tinkerforge', 'tpm2net', 'udpe131', 'udpartnet', 'udpddp', 'udph801', 'udpraw', 'wled', 'yeelight'];
|
||||
@@ -1121,6 +1122,12 @@ $(document).ready(function () {
|
||||
case "karate":
|
||||
case "sedu":
|
||||
case "tpm2":
|
||||
|
||||
//FTDI devices
|
||||
case "apa102_ftdi":
|
||||
case "sk6812_ftdi":
|
||||
case "ws2812_ftdi":
|
||||
|
||||
if (storedAccess === 'expert') {
|
||||
filter.discoverAll = true;
|
||||
}
|
||||
@@ -1139,6 +1146,7 @@ $(document).ready(function () {
|
||||
.catch(error => {
|
||||
showNotification('danger', "Device discovery for " + ledType + " failed with error:" + error);
|
||||
});
|
||||
|
||||
break;
|
||||
|
||||
case "philipshue": {
|
||||
@@ -1441,6 +1449,9 @@ $(document).ready(function () {
|
||||
case "sk9822":
|
||||
case "ws2812spi":
|
||||
case "piblaster":
|
||||
case "apa102_ftdi":
|
||||
case "sk6812_ftdi":
|
||||
case "ws2812_ftdi":
|
||||
default:
|
||||
}
|
||||
|
||||
@@ -1657,9 +1668,10 @@ $(document).ready(function () {
|
||||
optArr[3] = [];
|
||||
optArr[4] = [];
|
||||
optArr[5] = [];
|
||||
optArr[6] = [];
|
||||
|
||||
for (var idx = 0; idx < ledDevices.length; idx++) {
|
||||
if ($.inArray(ledDevices[idx], devRPiSPI) != -1)
|
||||
if ($.inArray(ledDevices[idx], devSPI) != -1)
|
||||
optArr[0].push(ledDevices[idx]);
|
||||
else if ($.inArray(ledDevices[idx], devRPiPWM) != -1)
|
||||
optArr[1].push(ledDevices[idx]);
|
||||
@@ -1671,8 +1683,12 @@ $(document).ready(function () {
|
||||
optArr[4].push(ledDevices[idx]);
|
||||
else if ($.inArray(ledDevices[idx], devHID) != -1)
|
||||
optArr[4].push(ledDevices[idx]);
|
||||
else if (ledDevices[idx].endsWith("_ftdi")) {
|
||||
var title = ledDevices[idx].replace('_ftdi','');
|
||||
optArr[5].push(ledDevices[idx] + ":" + title);
|
||||
}
|
||||
else
|
||||
optArr[5].push(ledDevices[idx]);
|
||||
optArr[6].push(ledDevices[idx]);
|
||||
}
|
||||
|
||||
$("#leddevices").append(createSel(optArr[0], $.i18n('conf_leds_optgroup_RPiSPI')));
|
||||
@@ -1680,9 +1696,10 @@ $(document).ready(function () {
|
||||
$("#leddevices").append(createSel(optArr[2], $.i18n('conf_leds_optgroup_RPiGPIO')));
|
||||
$("#leddevices").append(createSel(optArr[3], $.i18n('conf_leds_optgroup_network')));
|
||||
$("#leddevices").append(createSel(optArr[4], $.i18n('conf_leds_optgroup_usb')));
|
||||
$("#leddevices").append(createSel(optArr[5], $.i18n('conf_leds_optgroup_ftdi'), true));
|
||||
|
||||
if (storedAccess === 'expert' || window.serverConfig.device.type === "file") {
|
||||
$("#leddevices").append(createSel(optArr[5], $.i18n('conf_leds_optgroup_other')));
|
||||
$("#leddevices").append(createSel(optArr[6], $.i18n('conf_leds_optgroup_other')));
|
||||
}
|
||||
|
||||
$("#leddevices").val(window.serverConfig.device.type);
|
||||
@@ -1886,6 +1903,9 @@ function saveLedConfig(genDefLayout = false) {
|
||||
case "sk9822":
|
||||
case "ws2812spi":
|
||||
case "piblaster":
|
||||
case "apa102_ftdi":
|
||||
case "sk6812_ftdi":
|
||||
case "ws2812_ftdi":
|
||||
default:
|
||||
if (genDefLayout === true) {
|
||||
ledConfig = {
|
||||
@@ -1938,8 +1958,10 @@ var updateOutputSelectList = function (ledType, discoveryInfo) {
|
||||
ledTypeGroup = "devNET";
|
||||
} else if ($.inArray(ledType, devSerial) != -1) {
|
||||
ledTypeGroup = "devSerial";
|
||||
} else if ($.inArray(ledType, devRPiSPI) != -1) {
|
||||
ledTypeGroup = "devRPiSPI";
|
||||
} else if ($.inArray(ledType, devSPI) != -1) {
|
||||
ledTypeGroup = "devSPI";
|
||||
} else if ($.inArray(ledType, devFTDI) != -1) {
|
||||
ledTypeGroup = "devFTDI";
|
||||
} else if ($.inArray(ledType, devRPiGPIO) != -1) {
|
||||
ledTypeGroup = "devRPiGPIO";
|
||||
} else if ($.inArray(ledType, devRPiPWM) != -1) {
|
||||
@@ -2062,7 +2084,63 @@ var updateOutputSelectList = function (ledType, discoveryInfo) {
|
||||
}
|
||||
}
|
||||
break;
|
||||
case "devRPiSPI":
|
||||
|
||||
case "devFTDI":
|
||||
key = "output";
|
||||
|
||||
if (discoveryInfo.devices.length == 0) {
|
||||
enumVals.push("NONE");
|
||||
enumTitleVals.push($.i18n('edt_dev_spec_devices_discovered_none'));
|
||||
$('#btn_submit_controller').prop('disabled', true);
|
||||
showAllDeviceInputOptions(key, false);
|
||||
}
|
||||
else {
|
||||
switch (ledType) {
|
||||
case "ws2812_ftdi":
|
||||
case "sk6812_ftdi":
|
||||
case "apa102_ftdi":
|
||||
for (const device of discoveryInfo.devices) {
|
||||
enumVals.push(device.ftdiOpenString);
|
||||
|
||||
var title = "FTDI";
|
||||
if (device.manufacturer) {
|
||||
title = device.manufacturer;
|
||||
}
|
||||
|
||||
if (device.serialNumber) {
|
||||
title += " - " + device.serialNumber;
|
||||
}
|
||||
title += " (" + device.vendorIdentifier + "|" + device.productIdentifier + ")";
|
||||
|
||||
if (device.description) {
|
||||
title += " " + device.description;
|
||||
}
|
||||
|
||||
enumTitleVals.push(title);
|
||||
}
|
||||
|
||||
// Select configured device
|
||||
var configuredDeviceType = window.serverConfig.device.type;
|
||||
var configuredOutput = window.serverConfig.device.output;
|
||||
if (ledType === configuredDeviceType) {
|
||||
if ($.inArray(configuredOutput, enumVals) != -1) {
|
||||
enumDefaultVal = configuredOutput;
|
||||
} else {
|
||||
enumVals.push(window.serverConfig.device.output);
|
||||
enumDefaultVal = configuredOutput;
|
||||
}
|
||||
}
|
||||
else {
|
||||
addSelect = true;
|
||||
}
|
||||
|
||||
break;
|
||||
default:
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case "devSPI":
|
||||
case "devRPiGPIO":
|
||||
key = "output";
|
||||
|
||||
@@ -2128,7 +2206,6 @@ var updateOutputSelectList = function (ledType, discoveryInfo) {
|
||||
async function discover_device(ledType, params) {
|
||||
|
||||
const result = await requestLedDeviceDiscovery(ledType, params);
|
||||
|
||||
var discoveryResult = {};
|
||||
if (result) {
|
||||
if (result.error) {
|
||||
|
@@ -502,7 +502,9 @@ const philipshueWizard = (() => {
|
||||
|
||||
let serviceID;
|
||||
if (isAPIv2Ready) {
|
||||
serviceID = lightLocation.service.rid;
|
||||
if (lightLocation) {
|
||||
serviceID = lightLocation.service.rid;
|
||||
}
|
||||
}
|
||||
|
||||
if (position.startsWith("entertainment")) {
|
||||
@@ -531,7 +533,7 @@ const philipshueWizard = (() => {
|
||||
// Layout per manual settings
|
||||
let maxSegments = 1;
|
||||
|
||||
if (isAPIv2Ready) {
|
||||
if (isAPIv2Ready && serviceID) {
|
||||
const service = hueEntertainmentServices.find(service => service.id === serviceID);
|
||||
maxSegments = service.segments.max_segments;
|
||||
}
|
||||
@@ -593,10 +595,10 @@ const philipshueWizard = (() => {
|
||||
d.enableAttempts = parseInt(conf_editor.getEditor("root.generalOptions.enableAttempts").getValue());
|
||||
d.enableAttemptsInterval = parseInt(conf_editor.getEditor("root.generalOptions.enableAttemptsInterval").getValue());
|
||||
|
||||
d.useEntertainmentAPI = isEntertainmentReady;
|
||||
d.useEntertainmentAPI = isEntertainmentReady && (d.groupId !== "");
|
||||
d.useAPIv2 = isAPIv2Ready;
|
||||
|
||||
if (isEntertainmentReady) {
|
||||
if (d.useEntertainmentAPI) {
|
||||
d.hardwareLedCount = channelNumber;
|
||||
if (window.serverConfig.device.type !== d.type) {
|
||||
//smoothing on, if new device
|
||||
@@ -803,12 +805,18 @@ const philipshueWizard = (() => {
|
||||
"lightPosBottomLeft112", "lightPosBottomLeftNewMid", "lightPosBottomLeft121"
|
||||
];
|
||||
|
||||
if (isEntertainmentReady) {
|
||||
if (isEntertainmentReady && hueEntertainmentConfigs.length > 0) {
|
||||
lightOptions.unshift("entertainment_center");
|
||||
lightOptions.unshift("entertainment");
|
||||
} else {
|
||||
lightOptions.unshift("disabled");
|
||||
groupLights = Object.keys(hueLights);
|
||||
if (isAPIv2Ready) {
|
||||
for (const light in hueLights) {
|
||||
groupLights.push(hueLights[light].id);
|
||||
}
|
||||
} else {
|
||||
groupLights = Object.keys(hueLights);
|
||||
}
|
||||
}
|
||||
|
||||
$('.lidsb').html("");
|
||||
|
Reference in New Issue
Block a user