mirror of
https://github.com/freedombox/FreedomBox.git
synced 2026-08-26 12:46:08 +00:00
firewall: Show Run Diagnostics button in app
- Use AppView for firewall view so that diagnostics button shows up automatically. Consistency with the rest of the apps. Allow new features to AppView become useful. - A status section is automatically added but can be removed when all the other apps loose their status section. - Does not change anything else. Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org> Reviewed-by: Veiko Aasa <veiko17@disroot.org>
This commit is contained in:
parent
7cd5b11a49
commit
dfd4d40ed1
@ -23,5 +23,5 @@ from django.conf.urls import url
|
|||||||
from . import views
|
from . import views
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
url(r'^sys/firewall/$', views.index, name='index'),
|
url(r'^sys/firewall/$', views.FirewallAppView.as_view(), name='index'),
|
||||||
]
|
]
|
||||||
|
|||||||
@ -18,32 +18,34 @@
|
|||||||
FreedomBox app to configure a firewall.
|
FreedomBox app to configure a firewall.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from django.template.response import TemplateResponse
|
from plinth import views
|
||||||
|
|
||||||
from plinth.modules import firewall
|
from plinth.modules import firewall
|
||||||
|
|
||||||
from . import components
|
from . import components
|
||||||
|
|
||||||
|
|
||||||
def index(request):
|
class FirewallAppView(views.AppView):
|
||||||
"""Serve introduction page"""
|
"""Serve firewall index page."""
|
||||||
if not firewall.get_enabled_status():
|
name = firewall.name
|
||||||
return TemplateResponse(
|
description = firewall.description
|
||||||
request, 'firewall.html', {
|
app_id = 'firewall'
|
||||||
'name': firewall.name,
|
manual_page = firewall.manual_page
|
||||||
'description': firewall.description,
|
template_name = 'firewall.html'
|
||||||
'firewall_status': 'not_running'
|
|
||||||
})
|
|
||||||
|
|
||||||
internal_enabled_ports = firewall.get_enabled_services(zone='internal')
|
def get_context_data(self, *args, **kwargs):
|
||||||
external_enabled_ports = firewall.get_enabled_services(zone='external')
|
"""Add additional context data for the template."""
|
||||||
|
context = super().get_context_data(*args, **kwargs)
|
||||||
|
|
||||||
return TemplateResponse(
|
status = 'running' if firewall.get_enabled_status() else 'not_running'
|
||||||
request, 'firewall.html', {
|
context['firewall_status'] = status
|
||||||
'name': firewall.name,
|
|
||||||
'description': firewall.description,
|
if status == 'running':
|
||||||
'components': components.Firewall.list(),
|
context['components'] = components.Firewall.list()
|
||||||
'manual_page': firewall.manual_page,
|
internal_enabled_ports = firewall.get_enabled_services(
|
||||||
'internal_enabled_ports': internal_enabled_ports,
|
zone='internal')
|
||||||
'external_enabled_ports': external_enabled_ports
|
external_enabled_ports = firewall.get_enabled_services(
|
||||||
})
|
zone='external')
|
||||||
|
context['internal_enabled_ports'] = internal_enabled_ports
|
||||||
|
context['external_enabled_ports'] = external_enabled_ports
|
||||||
|
|
||||||
|
return context
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user