diff --git a/CHANGELOG.md b/CHANGELOG.md index 1084887..a0404a2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,13 @@ Format mengikuti [Keep a Changelog](https://keepachangelog.com/) dan [Semantic Versioning](https://semver.org/). +## [0.6.8] — 2026-11-06 — "isolir-url-setting" + +### Ditambahkan +- Pengaturan **URL Halaman Isolir** (`isolir_portal_url`) dan **Port Redirector Isolir** (`isolir_redirect_port`) di Info Aplikasi. +- Redirector isolir membaca URL dari pengaturan **setiap request**, jadi perubahan URL langsung berlaku tanpa restart. +- Generator script cloud memakai URL halaman isolir dari pengaturan tersebut. + ## [0.6.7] — 2026-11-06 — "isolir-cloud" ### Ditambahkan diff --git a/README.md b/README.md index ad6edcb..e21b903 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@
-
+
diff --git a/isolir-redirect-server.js b/isolir-redirect-server.js
index fcdbb35..c26b258 100644
--- a/isolir-redirect-server.js
+++ b/isolir-redirect-server.js
@@ -10,18 +10,19 @@
const http = require('http');
const PORT = parseInt(process.env.ISOLIR_REDIRECT_PORT || '8099', 10);
-let TARGET = process.env.ISOLIR_REDIRECT_URL || '';
-// Coba ambil target dari settings.json bila tersedia
-try {
- const { getSetting } = require('./config/settingsManager');
- const s = getSetting('isolir_portal_url', '') || '';
- if (s) TARGET = s;
-} catch (_) { /* abaikan */ }
-
-if (!TARGET) TARGET = 'http://localhost:3001/isolated';
+// Target dibaca ulang dari settings (bisa diubah dari dashboard tanpa restart).
+function currentTarget() {
+ try {
+ const { getSetting } = require('./config/settingsManager');
+ const s = String(getSetting('isolir_portal_url', '') || '').trim();
+ if (s) return s;
+ } catch (_) {}
+ return String(process.env.ISOLIR_REDIRECT_URL || '').trim() || 'http://localhost:3001/isolated';
+}
const server = http.createServer((req, res) => {
+ const TARGET = currentTarget();
// Jangan cache supaya pelanggan selalu diarahkan ke portal terbaru
res.writeHead(302, {
Location: TARGET,
@@ -40,7 +41,7 @@ const server = http.createServer((req, res) => {
server.on('error', (e) => console.error('[isolir-redirect] listen error:', e.message));
server.listen(PORT, '0.0.0.0', () => {
- console.log(`[isolir-redirect] listening on 0.0.0.0:${PORT} -> ${TARGET}`);
+ console.log(`[isolir-redirect] listening on 0.0.0.0:${PORT} -> ${currentTarget()}`);
});
process.on('SIGTERM', () => { server.close(() => process.exit(0)); });
diff --git a/package.json b/package.json
index bae36e6..57441df 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "open-isp",
- "version": "0.6.7",
+ "version": "0.6.8",
"description": "OPEN-ISP \u2014 sistem billing & manajemen ISP open-source (PWA pelanggan, multi-OLT, RADIUS, WhatsApp, QRIS)",
"main": "app-customer.js",
"scripts": {
diff --git a/version.txt b/version.txt
index 8b707c6..bc8443e 100644
--- a/version.txt
+++ b/version.txt
@@ -1 +1 @@
-0.6.7
\ No newline at end of file
+0.6.8
\ No newline at end of file
diff --git a/views/admin/settings.ejs b/views/admin/settings.ejs
index 88fee71..f9cdde4 100644
--- a/views/admin/settings.ejs
+++ b/views/admin/settings.ejs
@@ -283,6 +283,16 @@