mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-07-10 11:24:10 -04:00
Add a dashboard for broadcast services
This is just a placeholder for now
This commit is contained in:
@@ -8,6 +8,15 @@ from app.main.forms import BroadcastAreaForm, SearchByNameForm
|
||||
from app.utils import service_has_permission, user_has_permissions
|
||||
|
||||
|
||||
@main.route('/services/<uuid:service_id>/broadcast-dashboard')
|
||||
@user_has_permissions()
|
||||
@service_has_permission('broadcast')
|
||||
def broadcast_dashboard(service_id):
|
||||
return render_template(
|
||||
'views/broadcast/dashboard.html',
|
||||
)
|
||||
|
||||
|
||||
@main.route('/services/<uuid:service_id>/broadcast')
|
||||
@user_has_permissions('send_messages')
|
||||
@service_has_permission('broadcast')
|
||||
|
||||
@@ -351,6 +351,7 @@ class HeaderNavigation(Navigation):
|
||||
'old_guest_list',
|
||||
'who_can_use_notify',
|
||||
'who_its_for',
|
||||
'broadcast_dashboard',
|
||||
'broadcast',
|
||||
'preview_broadcast_areas',
|
||||
'choose_broadcast_library',
|
||||
@@ -368,6 +369,7 @@ class MainNavigation(Navigation):
|
||||
|
||||
mapping = {
|
||||
'dashboard': {
|
||||
'broadcast_dashboard',
|
||||
'conversation',
|
||||
'inbox',
|
||||
'monthly',
|
||||
@@ -687,6 +689,9 @@ class MainNavigation(Navigation):
|
||||
class CaseworkNavigation(Navigation):
|
||||
|
||||
mapping = {
|
||||
'dashboard': {
|
||||
'broadcast_dashboard',
|
||||
},
|
||||
'send-one-off': {
|
||||
'choose_from_contact_list',
|
||||
'choose_template',
|
||||
@@ -1306,6 +1311,7 @@ class OrgNavigation(Navigation):
|
||||
'old_guest_list',
|
||||
'who_can_use_notify',
|
||||
'who_its_for',
|
||||
'broadcast_dashboard',
|
||||
'broadcast',
|
||||
'preview_broadcast_areas',
|
||||
'choose_broadcast_library',
|
||||
|
||||
@@ -4,7 +4,9 @@
|
||||
<nav class="navigation">
|
||||
<ul>
|
||||
{% if current_user.has_permissions() %}
|
||||
{% if current_user.has_permissions('view_activity') %}
|
||||
{% if current_service.has_permission('broadcast') %}
|
||||
<li><a class="govuk-link govuk-link--no-visited-state{{ main_navigation.is_selected('dashboard') }}" href="{{ url_for('.broadcast_dashboard', service_id=current_service.id) }}">Dashboard</a></li>
|
||||
{% elif current_user.has_permissions('view_activity') %}
|
||||
<li><a class="govuk-link govuk-link--no-visited-state{{ main_navigation.is_selected('dashboard') }}" href="{{ url_for('.service_dashboard', service_id=current_service.id) }}">Dashboard</a></li>
|
||||
{% endif %}
|
||||
<li><a class="govuk-link govuk-link--no-visited-state{{ main_navigation.is_selected('templates') }}" href="{{ url_for('.choose_template', service_id=current_service.id) }}">Templates</a></li>
|
||||
|
||||
15
app/templates/views/broadcast/dashboard.html
Normal file
15
app/templates/views/broadcast/dashboard.html
Normal file
@@ -0,0 +1,15 @@
|
||||
{% extends "withnav_template.html" %}
|
||||
|
||||
{% block service_page_title %}
|
||||
Dashboard
|
||||
{% endblock %}
|
||||
|
||||
{% block maincolumn_content %}
|
||||
|
||||
<h1 class="govuk-visually-hidden">Dashboard</h1>
|
||||
|
||||
<p class="govuk-body">
|
||||
Broadcasts here
|
||||
</p>
|
||||
|
||||
{% endblock %}
|
||||
@@ -5,6 +5,7 @@ from tests.conftest import SERVICE_ONE_ID
|
||||
|
||||
|
||||
@pytest.mark.parametrize('endpoint, extra_args', (
|
||||
('.broadcast_dashboard', {}),
|
||||
('.broadcast', {}),
|
||||
('.preview_broadcast_areas', {}),
|
||||
('.choose_broadcast_library', {}),
|
||||
@@ -25,6 +26,17 @@ def test_broadcast_pages_403_without_permission(
|
||||
)
|
||||
|
||||
|
||||
def test_broadcast_dashboard(
|
||||
client_request,
|
||||
service_one,
|
||||
):
|
||||
service_one['permissions'] += ['broadcast']
|
||||
client_request.get(
|
||||
'.broadcast_dashboard',
|
||||
service_id=SERVICE_ONE_ID,
|
||||
),
|
||||
|
||||
|
||||
def test_broadcast_page(
|
||||
client_request,
|
||||
service_one,
|
||||
|
||||
Reference in New Issue
Block a user