diff --git a/oioioi/contests/controllers.py b/oioioi/contests/controllers.py index 20774b23c..f16f93d7a 100644 --- a/oioioi/contests/controllers.py +++ b/oioioi/contests/controllers.py @@ -58,6 +58,34 @@ def export_entries(registry, values): return result +STATUS_CLASSES = { + "OK100": "badge-success", + "OK": "badge-success", + "INI_OK": "badge-success", + "TESTRUN_OK": "badge-success", + "OK75": "badge-warning", + "OK50": "badge-warning", + "OK25": "badge-danger", + "OK0": "badge-danger", + "ERR": "badge-danger", + "WA": "badge-danger", + "TLE": "badge-danger", + "RE": "badge-danger", + "CE": "badge-danger", + "MLE": "badge-danger", + "OLE": "badge-danger", + "SE": "badge-danger", + "RV": "badge-danger", + "INI_ERR": "badge-danger", + "MSE": "badge-danger", + "MCE": "badge-danger", +} + + +def get_badge_class(display_type): + return STATUS_CLASSES.get(display_type, "badge-secondary") + + def submission_template_context(request, submission): pi = submission.problem_instance controller = pi.controller @@ -108,12 +136,15 @@ def submission_template_context(request, submission): else: display_type = submission.status + badge_class = get_badge_class(display_type) + return { "submission": submission, "can_see_status": can_see_status, "can_see_score": can_see_score, "can_see_comment": can_see_comment, "display_type": display_type, + "badge_class": badge_class, "message": message, "link": link, "valid_kinds_for_submission": valid_kinds_for_submission, diff --git a/oioioi/contests/templates/contests/problems_list.html b/oioioi/contests/templates/contests/problems_list.html index e81e7e343..95e6998a6 100644 --- a/oioioi/contests/templates/contests/problems_list.html +++ b/oioioi/contests/templates/contests/problems_list.html @@ -2,6 +2,7 @@ {% load i18n %} {% load pagination_tags %} {% load format_data_range %} +{% load humanize %} {% block styles %} {{ block.super }} @@ -80,7 +81,7 @@