4dc2a2e53313b624ac5a57ddaf40c9b70f5d98be
[project/luci.git] / applications / luci-app-adblock / htdocs / luci-static / resources / view / adblock / logread.js
1 'use strict';
2 'require view';
3 'require poll';
4 'require fs';
5
6 return view.extend({
7 load: function() {
8 return Promise.all([
9 L.resolveDefault(fs.stat('/sbin/logread'), null),
10 L.resolveDefault(fs.stat('/usr/sbin/logread'), null)
11 ]);
12 },
13 render: function(stat) {
14 var logger = stat[0] ? stat[0].path : stat[1] ? stat[1].path : null;
15 poll.add(function() {
16 return L.resolveDefault(fs.exec_direct(logger, ['-e', 'adblock-'])).then(function(res) {
17 var log = document.getElementById("logfile");
18 if (res) {
19 log.value = res.trim();
20 } else {
21 log.value = _('No adblock related logs yet!');
22 }
23 log.scrollTop = log.scrollHeight;
24 });
25 });
26 return E('div', { class: 'cbi-map' },
27 E('div', { class: 'cbi-section' }, [
28 E('div', { class: 'cbi-section-descr' }, _('The syslog output, pre-filtered for adblock related messages only.')),
29 E('textarea', {
30 'id': 'logfile',
31 'style': 'width: 100% !important; padding: 5px; font-family: monospace',
32 'readonly': 'readonly',
33 'wrap': 'off',
34 'rows': 25
35 })
36 ]));
37 },
38 handleSaveApply: null,
39 handleSave: null,
40 handleReset: null
41 });