123456789101112131415161718192021222324252627282930313233343536373839404142 |
- {#
- Copyright 2022 Jo-Philipp Wich <jo@mein.io>
- Licensed to the public under the Apache License 2.0.
- -#}
- {% const rollback = dispatcher.rollback_pending() %}
- {% if (rollback || trigger_apply || trigger_revert): %}
- <script>
- document.addEventListener("luci-loaded", function() {
- {% if (trigger_apply): %}
- L.ui.changes.apply(true);
- {% elif (trigger_revert): %}
- L.ui.changes.revert();
- {% else %}
- L.ui.changes.confirm(true, Date.now() + {{rollback.remaining * 1000}}, {{sprintf('%J', rollback.token)}});
- {% endif %}
- });
- </script>
- {% endif %}
- {% if (media_error): %}
- <script>
- L.require('ui').then(function(ui) {
- ui.showIndicator('media_error', _('Theme fallback'), function(ev) {
- ui.showModal(_('Error loading theme'), [
- E('p', [
- _('A fallback is used since the configured theme failed to load with the error below.')
- ]),
- E('hr'),
- E('div', { 'style': 'white-space:pre-line' }, {{ sprintf('%J', trim(media_error)) }}),
- E('div', { 'class': 'right' }, [
- E('button', { 'class': 'btn cbi-button', 'click': ui.hideModal }, _('Dismiss'))
- ])
- ]);
- });
- });
- </script>
- {% endif %}
- {% include(`themes/${theme}/footer`) %}
- <!-- Lua compatibility mode active: {{ lua_active ? 'yes' : 'no' }} -->
|