mirror of
https://github.com/jokob-sk/NetAlertX.git
synced 2025-12-07 09:36:05 -08:00
🔃 Sync Hub v0.3
This commit is contained in:
@@ -74,16 +74,10 @@ function initDeviceSelectors() {
|
||||
}
|
||||
|
||||
}, 10);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// -----------------------------------------------------------------------------
|
||||
// Initiate dropdown
|
||||
function initSettingDropdown(settingKey, // Identifier for the setting
|
||||
@@ -95,29 +89,10 @@ function initSettingDropdown(settingKey, // Identifier for the setting
|
||||
{
|
||||
|
||||
var optionsHtml = ""
|
||||
|
||||
|
||||
if(settingKey == 'SYNC_plugins' || settingKey == 'VNDRPDT_WATCH')
|
||||
{
|
||||
console.log('getSettingOptions(settingKey)');
|
||||
console.log(getSettingOptions(settingKey));
|
||||
|
||||
}
|
||||
|
||||
|
||||
// NOTE {value} options to replace with a setting or SQL value are handled in the cacheSettings() function
|
||||
optionsArray = createArray(getSettingOptions(settingKey))
|
||||
|
||||
|
||||
if(settingKey == 'SYNC_plugins' || settingKey == 'VNDRPDT_WATCH')
|
||||
{
|
||||
console.log('settingKey');
|
||||
console.log(settingKey);
|
||||
console.log('valuesArray');
|
||||
console.log(valuesArray);
|
||||
console.log('optionsArray');
|
||||
console.log(optionsArray);
|
||||
}
|
||||
|
||||
// check if the result is a SQL query
|
||||
if(isSQLQuery(optionsArray[0]))
|
||||
{
|
||||
@@ -170,8 +145,6 @@ function hideUIelements(settingKey) {
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// -----------------------------------------------------------------------------
|
||||
// Data processors
|
||||
// -----------------------------------------------------------------------------
|
||||
@@ -235,7 +208,7 @@ function genListWithInputSet(data, valuesArray, targetField, nameTransformer) {
|
||||
|
||||
let selected = valuesArray.includes(item.id) ? 'selected' : '';
|
||||
|
||||
console.log(item);
|
||||
// console.log(item);
|
||||
|
||||
labelName = item.name
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"plugin_type": "system",
|
||||
"enabled": true,
|
||||
"data_source": "template",
|
||||
"show_ui": false,
|
||||
"show_ui": true,
|
||||
"localized": ["display_name", "description", "icon"],
|
||||
"display_name": [{
|
||||
"language_code": "en_us",
|
||||
@@ -330,7 +330,7 @@
|
||||
}]
|
||||
},
|
||||
{
|
||||
"function": "target_url",
|
||||
"function": "hub_url",
|
||||
"type": "text",
|
||||
"display_condition": {
|
||||
"type" : "setting",
|
||||
@@ -350,7 +350,7 @@
|
||||
"description": [
|
||||
{
|
||||
"language_code": "en_us",
|
||||
"string": "Target hub URL to send the data to."
|
||||
"string": "Target hub URL to send the data to without a trailig slash, for example <code>http://192.168.1.82:20211</code>"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
<?php
|
||||
|
||||
// External files
|
||||
require '/app/front/php/server/init.php';
|
||||
|
||||
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
||||
// Retrieve the authorization header
|
||||
$headers = apache_request_headers();
|
||||
@@ -10,6 +13,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
||||
if ($auth_header !== $expected_token) {
|
||||
http_response_code(403);
|
||||
echo 'Forbidden';
|
||||
write_notification("[Plugin: Sync hub API] Incorrect API Token", "alert");
|
||||
exit;
|
||||
}
|
||||
|
||||
@@ -24,6 +28,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
||||
// Create the storage directory if it doesn't exist
|
||||
if (!is_dir($storage_path)) {
|
||||
echo "Could not open folder: {$storage_path}";
|
||||
write_notification("[Plugin: Sync hub API] Could not open folder: {$storage_path}", "alert");
|
||||
http_response_code(500);
|
||||
exit;
|
||||
}
|
||||
@@ -43,5 +48,6 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
||||
} else {
|
||||
http_response_code(405);
|
||||
echo 'Method Not Allowed';
|
||||
write_notification("[Plugin: Sync hub API] Method Not Allowed", "alert");
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -5,15 +5,17 @@ import pathlib
|
||||
import sys
|
||||
import hashlib
|
||||
import requests
|
||||
from plugin_helper import Plugin_Object, Plugin_Objects, decodeBase64
|
||||
from plugin_utils import get_plugins_configs
|
||||
from logger import mylog
|
||||
from helper import get_setting_value
|
||||
|
||||
|
||||
# Define the installation path and extend the system path for plugin imports
|
||||
INSTALL_PATH = "/app"
|
||||
sys.path.extend([f"{INSTALL_PATH}/front/plugins", f"{INSTALL_PATH}/server"])
|
||||
|
||||
from plugin_helper import Plugin_Object, Plugin_Objects, decodeBase64
|
||||
from plugin_utils import get_plugins_configs
|
||||
from logger import mylog
|
||||
from helper import timeNowTZ, get_setting_value
|
||||
|
||||
# Define the current path and log file paths
|
||||
CUR_PATH = str(pathlib.Path(__file__).parent.resolve())
|
||||
LOG_FILE = os.path.join(CUR_PATH, 'script.log')
|
||||
@@ -43,6 +45,8 @@ def main():
|
||||
# Get all plugin configurations
|
||||
all_plugins = get_plugins_configs()
|
||||
|
||||
mylog('verbose', [f'[{pluginName}] DEBUG {len(all_plugins)}'])
|
||||
mylog('verbose', [f'[{pluginName}] plugins_to_sync {plugins_to_sync}'])
|
||||
|
||||
index = 0
|
||||
for plugin in all_plugins:
|
||||
|
||||
Reference in New Issue
Block a user