summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--applications/luci-app-adblock/htdocs/luci-static/resources/view/adblock/logread.js41
-rw-r--r--applications/luci-app-banip/htdocs/luci-static/resources/view/banip/processing_log.js41
-rw-r--r--applications/luci-app-nextdns/htdocs/luci-static/resources/view/nextdns/logread.js45
-rw-r--r--applications/luci-app-nextdns/root/usr/share/luci/menu.d/luci-app-nextdns.json2
-rw-r--r--applications/luci-app-travelmate/htdocs/luci-static/resources/view/travelmate/logread.js42
-rw-r--r--modules/luci-base/htdocs/luci-static/resources/tools/views.js45
6 files changed, 54 insertions, 162 deletions
diff --git a/applications/luci-app-adblock/htdocs/luci-static/resources/view/adblock/logread.js b/applications/luci-app-adblock/htdocs/luci-static/resources/view/adblock/logread.js
index 4dc2a2e533..89b8b393f7 100644
--- a/applications/luci-app-adblock/htdocs/luci-static/resources/view/adblock/logread.js
+++ b/applications/luci-app-adblock/htdocs/luci-static/resources/view/adblock/logread.js
@@ -1,41 +1,4 @@
'use strict';
-'require view';
-'require poll';
-'require fs';
+'require tools.views as views';
-return view.extend({
- load: function() {
- return Promise.all([
- L.resolveDefault(fs.stat('/sbin/logread'), null),
- L.resolveDefault(fs.stat('/usr/sbin/logread'), null)
- ]);
- },
- render: function(stat) {
- var logger = stat[0] ? stat[0].path : stat[1] ? stat[1].path : null;
- poll.add(function() {
- return L.resolveDefault(fs.exec_direct(logger, ['-e', 'adblock-'])).then(function(res) {
- var log = document.getElementById("logfile");
- if (res) {
- log.value = res.trim();
- } else {
- log.value = _('No adblock related logs yet!');
- }
- log.scrollTop = log.scrollHeight;
- });
- });
- return E('div', { class: 'cbi-map' },
- E('div', { class: 'cbi-section' }, [
- E('div', { class: 'cbi-section-descr' }, _('The syslog output, pre-filtered for adblock related messages only.')),
- E('textarea', {
- 'id': 'logfile',
- 'style': 'width: 100% !important; padding: 5px; font-family: monospace',
- 'readonly': 'readonly',
- 'wrap': 'off',
- 'rows': 25
- })
- ]));
- },
- handleSaveApply: null,
- handleSave: null,
- handleReset: null
-});
+return views.LogreadBox("adblock-", "adblock"); \ No newline at end of file
diff --git a/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/processing_log.js b/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/processing_log.js
index b6aaabe9f9..9d2e1654d7 100644
--- a/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/processing_log.js
+++ b/applications/luci-app-banip/htdocs/luci-static/resources/view/banip/processing_log.js
@@ -1,41 +1,4 @@
'use strict';
-'require view';
-'require poll';
-'require fs';
+'require tools.views as views';
-return view.extend({
- load: function () {
- return Promise.all([
- L.resolveDefault(fs.stat('/sbin/logread'), null),
- L.resolveDefault(fs.stat('/usr/sbin/logread'), null)
- ]);
- },
- render: function (stat) {
- var logger = stat[0] ? stat[0].path : stat[1] ? stat[1].path : null;
- poll.add(function () {
- return L.resolveDefault(fs.exec_direct(logger, ['-e', 'banIP-'])).then(function (res) {
- var log = document.getElementById("logfile");
- if (res) {
- log.value = res.trim();
- } else {
- log.value = _('No banIP related processing logs yet!');
- }
- log.scrollTop = log.scrollHeight;
- });
- });
- return E('div', { class: 'cbi-map' },
- E('div', { class: 'cbi-section' }, [
- E('div', { class: 'cbi-section-descr' }, _('The syslog output, prefiltered for banIP-related processing log entries only.')),
- E('textarea', {
- 'id': 'logfile',
- 'style': 'width: 100% !important; padding: 5px; font-family: monospace',
- 'readonly': 'readonly',
- 'wrap': 'off',
- 'rows': 25
- })
- ]));
- },
- handleSaveApply: null,
- handleSave: null,
- handleReset: null
-});
+return views.LogreadBox("banIP-", "banIP");
diff --git a/applications/luci-app-nextdns/htdocs/luci-static/resources/view/nextdns/logread.js b/applications/luci-app-nextdns/htdocs/luci-static/resources/view/nextdns/logread.js
index 0ad4a79825..13b22476f7 100644
--- a/applications/luci-app-nextdns/htdocs/luci-static/resources/view/nextdns/logread.js
+++ b/applications/luci-app-nextdns/htdocs/luci-static/resources/view/nextdns/logread.js
@@ -1,45 +1,4 @@
'use strict';
-'require view';
-'require poll';
-'require fs';
+'require tools.views as views';
-return view.extend({
- render: function() {
- poll.add(function() {
- return L.resolveDefault(fs.exec('/sbin/logread', ['-e', 'nextdns']), { code: 1 })
- .then(function(res) {
- var content;
- if (res.code === 0)
- content = res.stdout.trim();
- if (!content)
- content = _('No nextdns related logs yet!');
- var view = document.getElementById("view_id");
- view.value = content;
- view.scrollTop = view.scrollHeight;
- });
- });
- return E('div', { class: 'cbi-map' },
- E('div', { class: 'cbi-section' }, [
- E('div', { class: 'cbi-section-descr' },
- _('The syslog output, pre-filtered for nextdns related messages only.')),
- E('textarea', {
- id: 'view_id',
- readonly: 'readonly',
- wrap: 'off',
- style: 'width: 100% !important;\
- height: 450px !important;\
- border: 1px solid #cccccc;\
- padding: 5px;\
- font-size: 12px;\
- font-family: monospace;\
- resize: none;\
- pointer-events: auto;\
- cursor: auto;'
- })
- ])
- );
- },
- handleSaveApply: null,
- handleSave: null,
- handleReset: null
-});
+return views.LogreadBox("nextdns", "nextdns");
diff --git a/applications/luci-app-nextdns/root/usr/share/luci/menu.d/luci-app-nextdns.json b/applications/luci-app-nextdns/root/usr/share/luci/menu.d/luci-app-nextdns.json
index fb9cb7e3fb..a27de0c075 100644
--- a/applications/luci-app-nextdns/root/usr/share/luci/menu.d/luci-app-nextdns.json
+++ b/applications/luci-app-nextdns/root/usr/share/luci/menu.d/luci-app-nextdns.json
@@ -21,7 +21,7 @@
},
"admin/services/nextdns/log": {
- "title": "Configuration",
+ "title": "Logs",
"order": 2,
"action": {
"type": "view",
diff --git a/applications/luci-app-travelmate/htdocs/luci-static/resources/view/travelmate/logread.js b/applications/luci-app-travelmate/htdocs/luci-static/resources/view/travelmate/logread.js
index d004ed4d2f..fc9323aa14 100644
--- a/applications/luci-app-travelmate/htdocs/luci-static/resources/view/travelmate/logread.js
+++ b/applications/luci-app-travelmate/htdocs/luci-static/resources/view/travelmate/logread.js
@@ -1,42 +1,4 @@
'use strict';
-'require view';
-'require poll';
-'require fs';
+'require tools.views as views';
-return view.extend({
- load: function() {
- return Promise.all([
- L.resolveDefault(fs.stat('/sbin/logread'), null),
- L.resolveDefault(fs.stat('/usr/sbin/logread'), null)
- ]);
- },
- render: function(stat) {
- var logger = stat[0] ? stat[0].path : stat[1] ? stat[1].path : null;
- poll.add(function() {
- return L.resolveDefault(fs.exec_direct(logger, ['-e', 'trm-'])).then(function(res) {
- var log = document.getElementById("logfile");
- if (res) {
- log.value = res.trim();
- }
- else {
- log.value = _('No travelmate related logs yet!');
- }
- log.scrollTop = log.scrollHeight;
- });
- });
- return E('div', { class: 'cbi-map' },
- E('div', { class: 'cbi-section' }, [
- E('div', { class: 'cbi-section-descr' }, _('The syslog output, pre-filtered for travelmate related messages only.')),
- E('textarea', {
- 'id': 'logfile',
- 'style': 'width: 100% !important; padding: 5px; font-family: monospace',
- 'readonly': 'readonly',
- 'wrap': 'off',
- 'rows': 25
- })
- ]));
- },
- handleSaveApply: null,
- handleSave: null,
- handleReset: null
-});
+return views.LogreadBox("trm-", "travelmate");
diff --git a/modules/luci-base/htdocs/luci-static/resources/tools/views.js b/modules/luci-base/htdocs/luci-static/resources/tools/views.js
new file mode 100644
index 0000000000..f851f61dff
--- /dev/null
+++ b/modules/luci-base/htdocs/luci-static/resources/tools/views.js
@@ -0,0 +1,45 @@
+'use strict';
+'require fs';
+
+var CBILogreadBox = function(logtag, name) {
+ return L.view.extend({
+ load: function() {
+ return Promise.all([
+ L.resolveDefault(fs.stat('/sbin/logread'), null),
+ L.resolveDefault(fs.stat('/usr/sbin/logread'), null)
+ ]);
+ },
+ render: function(stat) {
+ var logger = stat[0] ? stat[0].path : stat[1] ? stat[1].path : null;
+ L.Poll.add(function() {
+ return L.resolveDefault(fs.exec_direct(logger, ['-e', logtag])).then(function(res) {
+ var log = document.getElementById("logfile");
+ if (res) {
+ log.value = res.trim();
+ } else {
+ log.value = _('No related logs yet!');
+ }
+ log.scrollTop = log.scrollHeight;
+ });
+ });
+ return E('div', { class: 'cbi-map' },
+ E('div', { class: 'cbi-section' }, [
+ E('div', { class: 'cbi-section-descr' }, _('The syslog output, pre-filtered for messages related to: ' + name)),
+ E('textarea', {
+ 'id': 'logfile',
+ 'style': 'width: 100% !important; padding: 5px; font-family: monospace',
+ 'readonly': 'readonly',
+ 'wrap': 'off',
+ 'rows': 25
+ })
+ ]));
+ },
+ handleSaveApply: null,
+ handleSave: null,
+ handleReset: null
+ });
+};
+
+return L.Class.extend({
+ LogreadBox: CBILogreadBox,
+});