Files
podkop/luci-app-podkop/htdocs/luci-static/resources/view/podkop/podkop.js
2025-05-18 15:58:59 +03:00

59 lines
2.1 KiB
JavaScript

'use strict';
'require view';
'require form';
'require network';
'require view.podkop.configSection as configSection';
'require view.podkop.diagnosticTab as diagnosticTab';
'require view.podkop.additionalTab as additionalTab';
return view.extend({
async render() {
document.head.insertAdjacentHTML('beforeend', `
<style>
.cbi-value {
margin-bottom: 10px !important;
}
#diagnostics-status .table > div {
background: var(--background-color-primary);
border: 1px solid var(--border-color-medium);
border-radius: var(--border-radius);
}
#diagnostics-status .table > div pre,
#diagnostics-status .table > div div[style*="monospace"] {
color: var(--color-text-primary);
}
#diagnostics-status .alert-message {
background: var(--background-color-primary);
border-color: var(--border-color-medium);
}
</style>
`);
const m = new form.Map('podkop', _(''), null, ['main', 'extra']);
// Main Section
const mainSection = m.section(form.TypedSection, 'main');
mainSection.anonymous = true;
configSection.createConfigSection(mainSection, m, network);
// Additional Settings Tab (main section)
additionalTab.createAdditionalSection(mainSection, network);
// Diagnostics Tab (main section)
diagnosticTab.createDiagnosticsSection(mainSection);
const map_promise = m.render().then(node => diagnosticTab.setupDiagnosticsEventHandlers(node));
// Extra Section
const extraSection = m.section(form.TypedSection, 'extra', _('Extra configurations'));
extraSection.anonymous = false;
extraSection.addremove = true;
extraSection.addbtntitle = _('Add Section');
extraSection.multiple = true;
configSection.createConfigSection(extraSection, m, network);
return map_promise;
}
});