diff --git a/app/assets/stylesheets/components/big-number.scss b/app/assets/stylesheets/components/big-number.scss index d2e47ea53..8585a4ce6 100644 --- a/app/assets/stylesheets/components/big-number.scss +++ b/app/assets/stylesheets/components/big-number.scss @@ -45,7 +45,8 @@ .big-number { padding: $gutter-half; position: relative; - cursor: pointer; + background: $black; + color: $white; } .big-number-label { @@ -69,7 +70,13 @@ margin-bottom: 5px; &:hover { + color: $light-blue-25; + + .big-number { + color: $light-blue-25; + } + } &:active, @@ -77,6 +84,10 @@ outline: 3px solid $yellow; } + .big-number { + background: transparent; + } + .big-number-label { text-decoration: underline; } diff --git a/app/main/views/platform_admin.py b/app/main/views/platform_admin.py index f179831ce..4a19d6948 100644 --- a/app/main/views/platform_admin.py +++ b/app/main/views/platform_admin.py @@ -42,7 +42,8 @@ def format_stats_by_service(all_stats, services): (stats['emails_requested'] - stats['emails_delivered'] - stats['emails_failed']) ), 'delivered': stats['sms_delivered'] + stats['emails_delivered'], - 'failed': stats['sms_failed'] + stats['emails_failed'] + 'failed': stats['sms_failed'] + stats['emails_failed'], + 'restricted': services[stats['service']]['restricted'] } for stats in all_stats ] diff --git a/app/templates/views/platform-admin.html b/app/templates/views/platform-admin.html index 33cceb61c..a7e8d63e4 100644 --- a/app/templates/views/platform-admin.html +++ b/app/templates/views/platform-admin.html @@ -2,7 +2,7 @@ {% from "components/big-number.html" import big_number, big_number_with_status %} {% from "components/message-count-label.html" import message_count_label %} {% from "components/browse-list.html" import browse_list %} -{% from "components/table.html" import list_table, field, right_aligned_field_heading %} +{% from "components/table.html" import list_table, field, right_aligned_field_heading, hidden_field_heading %} {% block page_title %} Platform admin – GOV.UK Notify @@ -22,8 +22,8 @@ ]) }} -

Today's statistics

-
+

Today

+
{{ big_number_with_status( global_stats.emails_delivered, @@ -44,13 +44,14 @@
-

Services

+

Services

{% call(item, row_number) list_table( service_stats, caption="All services", caption_visible=False, field_headings=[ 'Service', + hidden_field_heading('Status'), right_aligned_field_heading('Sending'), right_aligned_field_heading('Delivered'), right_aligned_field_heading('Failed') @@ -62,6 +63,11 @@ {{ item['name'] }}
{% endcall %} + {% call field(status='error') %} + + {{ '' if item['restricted'] else 'Live' }} + + {% endcall %} {% call field(align='right') %} {{ big_number(item['sending'], smaller=True) }} {% endcall %} diff --git a/tests/app/main/views/test_platform_admin.py b/tests/app/main/views/test_platform_admin.py index 9d9f9199c..175c5791f 100644 --- a/tests/app/main/views/test_platform_admin.py +++ b/tests/app/main/views/test_platform_admin.py @@ -43,7 +43,7 @@ def test_should_render_platform_admin_page( assert response.status_code == 200 resp_data = response.get_data(as_text=True) assert 'Platform admin' in resp_data - assert 'Today\'s statistics' in resp_data + assert 'Today' in resp_data assert 'Services' in resp_data @@ -87,8 +87,8 @@ def create_stats( def test_format_stats_by_service_gets_correct_stats_for_each_service(): services = [ - {'name': 'a', 'id': 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'}, - {'name': 'b', 'id': 'bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb'} + {'name': 'a', 'id': 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa', 'restricted': False}, + {'name': 'b', 'id': 'bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb', 'restricted': True} ] all_stats = [ create_stats('aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa', emails_requested=1), @@ -102,16 +102,18 @@ def test_format_stats_by_service_gets_correct_stats_for_each_service(): assert ret[0]['sending'] == 1 assert ret[0]['delivered'] == 0 assert ret[0]['failed'] == 0 + assert ret[0]['restricted'] is False assert ret[1]['name'] == 'b' assert ret[1]['sending'] == 2 assert ret[1]['delivered'] == 0 assert ret[1]['failed'] == 0 + assert ret[1]['restricted'] is True def test_format_stats_by_service_sums_values_for_sending(): services = [ - {'name': 'a', 'id': 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'}, + {'name': 'a', 'id': 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa', 'restricted': False}, ] all_stats = [ create_stats(