From 8a53b7a2c3ac4768566b4a29a1cde67a1b12f447 Mon Sep 17 00:00:00 2001 From: Usama Bin Nadeem <32700508+usamabinnadeem-10@users.noreply.github.com> Date: Fri, 27 Sep 2024 17:14:57 +0500 Subject: [PATCH] allow cred admins to schedule exam within maintenance window --- webapp/shop/cred/views.py | 4 +++- webapp/shop/decorators.py | 5 +++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/webapp/shop/cred/views.py b/webapp/shop/cred/views.py index f74f3002190..1d230caabb0 100644 --- a/webapp/shop/cred/views.py +++ b/webapp/shop/cred/views.py @@ -237,6 +237,7 @@ def cred_schedule( cred_is_in_maintenance, cred_maintenance_start, cred_maintenance_end, + is_cred_admin, trueability_api, **_, ): @@ -295,7 +296,8 @@ def cred_schedule( parse(cred_maintenance_end) if cred_maintenance_end else None ) if ( - show_cred_maintenance_alert + not is_cred_admin + and show_cred_maintenance_alert and cred_maintenance_start and cred_maintenance_end and (cred_maintenance_start <= starts_at <= cred_maintenance_end) diff --git a/webapp/shop/decorators.py b/webapp/shop/decorators.py index 88993557aeb..5bd47c48793 100644 --- a/webapp/shop/decorators.py +++ b/webapp/shop/decorators.py @@ -154,10 +154,14 @@ def decorated_function(*args, **kwargs): ) advantage_mapper = AdvantageMapper(ua_contracts_api) is_community_member = False + is_cred_admin = False if user_info(flask.session): is_community_member = user_info(flask.session).get( "is_community_member", False ) + is_cred_admin = user_info(flask.session).get( + "is_credentials_admin", False + ) return func( badgr_issuer=os.getenv( @@ -177,6 +181,7 @@ def decorated_function(*args, **kwargs): is_community_member=is_community_member, show_cred_maintenance_alert=bool(cred_maintenance), cred_is_in_maintenance=cred_is_in_maintenance, + is_cred_admin=is_cred_admin, cred_maintenance_start=cred_maintenance_start, cred_maintenance_end=cred_maintenance_end, *args,