mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-02-05 02:42:26 -05:00
40 lines
1.3 KiB
Python
40 lines
1.3 KiB
Python
from flask import (abort, render_template, session)
|
|
from flask_login import login_required
|
|
from app.main import main
|
|
from app.main.dao.services_dao import get_service_by_id
|
|
from app.main.dao import templates_dao
|
|
from notifications_python_client.errors import HTTPError
|
|
from app import job_api_client
|
|
|
|
from app.utils import user_has_permissions
|
|
|
|
|
|
@main.route("/services/<service_id>/dashboard")
|
|
@login_required
|
|
def service_dashboard(service_id):
|
|
try:
|
|
templates = templates_dao.get_service_templates(service_id)['data']
|
|
jobs = job_api_client.get_job(service_id)['data']
|
|
except HTTPError as e:
|
|
if e.status_code == 404:
|
|
abort(404)
|
|
else:
|
|
raise e
|
|
try:
|
|
service = get_service_by_id(service_id)
|
|
session['service_name'] = service['data']['name']
|
|
session['service_id'] = service['data']['id']
|
|
except HTTPError as e:
|
|
if e.status_code == 404:
|
|
abort(404)
|
|
else:
|
|
raise e
|
|
return render_template(
|
|
'views/service_dashboard.html',
|
|
jobs=list(reversed(jobs))[:5],
|
|
more_jobs_to_show=(len(jobs) > 5),
|
|
free_text_messages_remaining='250,000',
|
|
spent_this_month='0.00',
|
|
template_count=len(templates),
|
|
service_id=str(service_id))
|