From 22174846483671716f970267ba86929f534bdd60 Mon Sep 17 00:00:00 2001 From: KabundiNjuki Date: Thu, 24 Sep 2026 00:05:12 +0300 Subject: [PATCH] Initial LuKenya Marathon application --- lukenya_marathon/build.json | 8 + lukenya_marathon/hooks.py | 39 + .../lukenya_marathon/analytics.py | 1052 +++++++++++++ lukenya_marathon/lukenya_marathon/api.py | 1186 +++++++++++++++ lukenya_marathon/lukenya_marathon/api.py.bak | 1180 +++++++++++++++ lukenya_marathon/lukenya_marathon/bibs.py | 35 + .../lukenya_marathon/dashboard.py | 106 ++ .../doctype/bib_allocation/__init__.py | 0 .../bib_allocation/bib_allocation.json | 109 ++ .../bib_allocation/bib_allocation.json.bak | 79 + .../doctype/bib_allocation/bib_allocation.py | 62 + .../doctype/check_in/__init__.py | 0 .../doctype/check_in/check_in.json | 105 ++ .../doctype/check_in/check_in.json.bak | 88 ++ .../doctype/check_in/check_in.py | 5 + .../doctype/event_edition/event_edition.json | 233 +-- .../event_edition/event_edition.json.bak | 108 ++ .../doctype/event_edition/event_edition.py | 21 + .../doctype/lukenya_settings/__init__.py | 0 .../lukenya_settings/lukenya_settings.json | 70 + .../lukenya_settings/lukenya_settings.py | 9 + .../doctype/participant/participant.json | 310 ++-- .../doctype/participant/participant.json.bak | 168 +++ .../doctype/participant/participant.py | 36 + .../doctype/payment_transaction/__init__.py | 0 .../payment_transaction.json | 124 ++ .../payment_transaction.json.bak | 115 ++ .../payment_transaction.py | 5 + .../doctype/prize_award/__init__.py | 0 .../doctype/prize_award/prize_award.json | 125 ++ .../doctype/prize_award/prize_award.json.bak | 94 ++ .../doctype/prize_award/prize_award.py | 5 + .../doctype/prize_rule/__init__.py | 0 .../doctype/prize_rule/prize_rule.json | 106 ++ .../doctype/prize_rule/prize_rule.json.bak | 95 ++ .../doctype/prize_rule/prize_rule.py | 5 + .../doctype/race_category/race_category.json | 275 ++-- .../race_category/race_category.json.bak | 132 ++ .../doctype/race_category/race_category.py | 6 + .../doctype/race_pack_issue/__init__.py | 0 .../race_pack_issue/race_pack_issue.json | 117 ++ .../race_pack_issue/race_pack_issue.json.bak | 104 ++ .../race_pack_issue/race_pack_issue.py | 5 + .../doctype/registration/registration.json | 319 ++-- .../registration/registration.json.bak | 152 ++ .../doctype/registration/registration.py | 79 + .../doctype/timing_result/__init__.py | 0 .../doctype/timing_result/timing_result.json | 166 +++ .../timing_result/timing_result.json.bak | 131 ++ .../doctype/timing_result/timing_result.py | 5 + .../doctype/tree_impact_record/__init__.py | 0 .../tree_impact_record.json | 107 ++ .../tree_impact_record.json.bak | 101 ++ .../tree_impact_record/tree_impact_record.py | 5 + .../doctype/volunteer/__init__.py | 0 .../doctype/volunteer/volunteer.json | 107 ++ .../doctype/volunteer/volunteer.json.bak | 100 ++ .../doctype/volunteer/volunteer.py | 5 + .../doctype/volunteer_shift/__init__.py | 0 .../volunteer_shift/volunteer_shift.json | 106 ++ .../volunteer_shift/volunteer_shift.json.bak | 95 ++ .../volunteer_shift/volunteer_shift.py | 5 + .../lukenya_marathon/events_management.py | 90 ++ lukenya_marathon/lukenya_marathon/holds.py | 74 + .../lukenya_marathon/page/__init__.py | 0 .../page/lukenya_dashboard/__init__.py | 0 .../lukenya_dashboard/lukenya_dashboard.css | 522 +++++++ .../lukenya_dashboard/lukenya_dashboard.js | 303 ++++ .../lukenya_dashboard/lukenya_dashboard.json | 20 + .../page/lukenya_events/__init__.py | 0 .../page/lukenya_events/lukenya_events.css | 237 +++ .../page/lukenya_events/lukenya_events.js | 351 +++++ .../page/lukenya_events/lukenya_events.json | 20 + .../page/lukenya_participants/__init__.py | 0 .../lukenya_participants.css | 1309 +++++++++++++++++ .../lukenya_participants.js | 920 ++++++++++++ .../lukenya_participants.json | 20 + .../page/lukenya_payments/__init__.py | 0 .../lukenya_payments/lukenya_payments.css | 271 ++++ .../page/lukenya_payments/lukenya_payments.js | 595 ++++++++ .../lukenya_payments/lukenya_payments.json | 20 + .../page/lukenya_race_management/__init__.py | 0 .../lukenya_race_management.css | 275 ++++ .../lukenya_race_management.js | 170 +++ .../lukenya_race_management.json | 21 + .../page/lukenya_reports/__init__.py | 0 .../page/lukenya_reports/lukenya_reports.css | 836 +++++++++++ .../page/lukenya_reports/lukenya_reports.js | 464 ++++++ .../page/lukenya_reports/lukenya_reports.json | 20 + .../lukenya_marathon/participant_utils.py | 94 ++ .../lukenya_marathon/participants.py | 820 +++++++++++ .../lukenya_marathon/payments_management.py | 448 ++++++ .../public/css/lukenya_navigation.css | 61 + .../public/js/lukenya_navigation.js | 191 +++ .../lukenya_marathon/race_management.py | 123 ++ .../lukenya_marathon/race_sync.py | 95 ++ .../lukenya_marathon/registration_rules.py | 172 +++ .../lukenya_marathon/report/__init__.py | 0 .../report/payment_reconciliation/__init__.py | 0 .../payment_reconciliation.js | 30 + .../payment_reconciliation.json | 27 + .../payment_reconciliation.py | 22 + .../report/registration_summary/__init__.py | 0 .../registration_summary.js | 30 + .../registration_summary.json | 27 + .../registration_summary.py | 39 + .../report/unpaid_registrations/__init__.py | 0 .../unpaid_registrations.js | 30 + .../unpaid_registrations.json | 27 + .../unpaid_registrations.py | 26 + lukenya_marathon/lukenya_marathon/results.py | 274 ++++ lukenya_marathon/lukenya_marathon/settings.py | 26 + .../lukenya_marathon/lukenya_marathon.json | 279 ++++ lukenya_marathon/modules.txt | 2 +- lukenya_marathon/patches.txt | 6 +- .../patches/backfill_bib_edition.py | 12 + lukenya_marathon/patches/create_race_roles.py | 11 + .../patches/normalize_participants.py | 30 + .../patches/sync_registration_race_status.py | 8 + .../public/css/lukenya_navigation.css | 175 +++ .../public/images/lukenya-logo.png | Bin 0 -> 1387196 bytes .../public/js/lukenya_navigation.js | 70 + 122 files changed, 16980 insertions(+), 518 deletions(-) create mode 100644 lukenya_marathon/build.json create mode 100644 lukenya_marathon/lukenya_marathon/analytics.py create mode 100644 lukenya_marathon/lukenya_marathon/api.py create mode 100644 lukenya_marathon/lukenya_marathon/api.py.bak create mode 100644 lukenya_marathon/lukenya_marathon/bibs.py create mode 100644 lukenya_marathon/lukenya_marathon/dashboard.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/bib_allocation/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/bib_allocation/bib_allocation.json create mode 100644 lukenya_marathon/lukenya_marathon/doctype/bib_allocation/bib_allocation.json.bak create mode 100644 lukenya_marathon/lukenya_marathon/doctype/bib_allocation/bib_allocation.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/check_in/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/check_in/check_in.json create mode 100644 lukenya_marathon/lukenya_marathon/doctype/check_in/check_in.json.bak create mode 100644 lukenya_marathon/lukenya_marathon/doctype/check_in/check_in.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/event_edition/event_edition.json.bak create mode 100644 lukenya_marathon/lukenya_marathon/doctype/event_edition/event_edition.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/lukenya_settings/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/lukenya_settings/lukenya_settings.json create mode 100644 lukenya_marathon/lukenya_marathon/doctype/lukenya_settings/lukenya_settings.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/participant/participant.json.bak create mode 100644 lukenya_marathon/lukenya_marathon/doctype/participant/participant.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/payment_transaction/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/payment_transaction/payment_transaction.json create mode 100644 lukenya_marathon/lukenya_marathon/doctype/payment_transaction/payment_transaction.json.bak create mode 100644 lukenya_marathon/lukenya_marathon/doctype/payment_transaction/payment_transaction.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/prize_award/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/prize_award/prize_award.json create mode 100644 lukenya_marathon/lukenya_marathon/doctype/prize_award/prize_award.json.bak create mode 100644 lukenya_marathon/lukenya_marathon/doctype/prize_award/prize_award.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/prize_rule/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/prize_rule/prize_rule.json create mode 100644 lukenya_marathon/lukenya_marathon/doctype/prize_rule/prize_rule.json.bak create mode 100644 lukenya_marathon/lukenya_marathon/doctype/prize_rule/prize_rule.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/race_category/race_category.json.bak create mode 100644 lukenya_marathon/lukenya_marathon/doctype/race_category/race_category.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/race_pack_issue/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/race_pack_issue/race_pack_issue.json create mode 100644 lukenya_marathon/lukenya_marathon/doctype/race_pack_issue/race_pack_issue.json.bak create mode 100644 lukenya_marathon/lukenya_marathon/doctype/race_pack_issue/race_pack_issue.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/registration/registration.json.bak create mode 100644 lukenya_marathon/lukenya_marathon/doctype/registration/registration.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/timing_result/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/timing_result/timing_result.json create mode 100644 lukenya_marathon/lukenya_marathon/doctype/timing_result/timing_result.json.bak create mode 100644 lukenya_marathon/lukenya_marathon/doctype/timing_result/timing_result.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/tree_impact_record/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/tree_impact_record/tree_impact_record.json create mode 100644 lukenya_marathon/lukenya_marathon/doctype/tree_impact_record/tree_impact_record.json.bak create mode 100644 lukenya_marathon/lukenya_marathon/doctype/tree_impact_record/tree_impact_record.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/volunteer/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/volunteer/volunteer.json create mode 100644 lukenya_marathon/lukenya_marathon/doctype/volunteer/volunteer.json.bak create mode 100644 lukenya_marathon/lukenya_marathon/doctype/volunteer/volunteer.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/volunteer_shift/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/doctype/volunteer_shift/volunteer_shift.json create mode 100644 lukenya_marathon/lukenya_marathon/doctype/volunteer_shift/volunteer_shift.json.bak create mode 100644 lukenya_marathon/lukenya_marathon/doctype/volunteer_shift/volunteer_shift.py create mode 100644 lukenya_marathon/lukenya_marathon/events_management.py create mode 100644 lukenya_marathon/lukenya_marathon/holds.py create mode 100644 lukenya_marathon/lukenya_marathon/page/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_dashboard/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_dashboard/lukenya_dashboard.css create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_dashboard/lukenya_dashboard.js create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_dashboard/lukenya_dashboard.json create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_events/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_events/lukenya_events.css create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_events/lukenya_events.js create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_events/lukenya_events.json create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_participants/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_participants/lukenya_participants.css create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_participants/lukenya_participants.js create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_participants/lukenya_participants.json create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_payments/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_payments/lukenya_payments.css create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_payments/lukenya_payments.js create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_payments/lukenya_payments.json create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_race_management/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_race_management/lukenya_race_management.css create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_race_management/lukenya_race_management.js create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_race_management/lukenya_race_management.json create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_reports/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_reports/lukenya_reports.css create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_reports/lukenya_reports.js create mode 100644 lukenya_marathon/lukenya_marathon/page/lukenya_reports/lukenya_reports.json create mode 100644 lukenya_marathon/lukenya_marathon/participant_utils.py create mode 100644 lukenya_marathon/lukenya_marathon/participants.py create mode 100644 lukenya_marathon/lukenya_marathon/payments_management.py create mode 100644 lukenya_marathon/lukenya_marathon/public/css/lukenya_navigation.css create mode 100644 lukenya_marathon/lukenya_marathon/public/js/lukenya_navigation.js create mode 100644 lukenya_marathon/lukenya_marathon/race_management.py create mode 100644 lukenya_marathon/lukenya_marathon/race_sync.py create mode 100644 lukenya_marathon/lukenya_marathon/registration_rules.py create mode 100644 lukenya_marathon/lukenya_marathon/report/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/report/payment_reconciliation/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/report/payment_reconciliation/payment_reconciliation.js create mode 100644 lukenya_marathon/lukenya_marathon/report/payment_reconciliation/payment_reconciliation.json create mode 100644 lukenya_marathon/lukenya_marathon/report/payment_reconciliation/payment_reconciliation.py create mode 100644 lukenya_marathon/lukenya_marathon/report/registration_summary/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/report/registration_summary/registration_summary.js create mode 100644 lukenya_marathon/lukenya_marathon/report/registration_summary/registration_summary.json create mode 100644 lukenya_marathon/lukenya_marathon/report/registration_summary/registration_summary.py create mode 100644 lukenya_marathon/lukenya_marathon/report/unpaid_registrations/__init__.py create mode 100644 lukenya_marathon/lukenya_marathon/report/unpaid_registrations/unpaid_registrations.js create mode 100644 lukenya_marathon/lukenya_marathon/report/unpaid_registrations/unpaid_registrations.json create mode 100644 lukenya_marathon/lukenya_marathon/report/unpaid_registrations/unpaid_registrations.py create mode 100644 lukenya_marathon/lukenya_marathon/results.py create mode 100644 lukenya_marathon/lukenya_marathon/settings.py create mode 100644 lukenya_marathon/lukenya_marathon/workspace/lukenya_marathon/lukenya_marathon.json create mode 100644 lukenya_marathon/patches/backfill_bib_edition.py create mode 100644 lukenya_marathon/patches/create_race_roles.py create mode 100644 lukenya_marathon/patches/normalize_participants.py create mode 100644 lukenya_marathon/patches/sync_registration_race_status.py create mode 100644 lukenya_marathon/public/css/lukenya_navigation.css create mode 100644 lukenya_marathon/public/images/lukenya-logo.png create mode 100644 lukenya_marathon/public/js/lukenya_navigation.js diff --git a/lukenya_marathon/build.json b/lukenya_marathon/build.json new file mode 100644 index 0000000..8b6e2b4 --- /dev/null +++ b/lukenya_marathon/build.json @@ -0,0 +1,8 @@ +{ + "lukenya_marathon.bundle.js": [ + "public/js/lukenya_navigation.js" + ], + "lukenya_marathon.bundle.css": [ + "public/css/lukenya_navigation.css" + ] +} diff --git a/lukenya_marathon/hooks.py b/lukenya_marathon/hooks.py index 87a849a..bb3ac7f 100644 --- a/lukenya_marathon/hooks.py +++ b/lukenya_marathon/hooks.py @@ -247,3 +247,42 @@ app_license = "mit" # List of apps whose translatable strings should be excluded from this app's translations. # ignore_translatable_strings_from = [] +# --- Race management foundations (added by apply_foundations.py) --- + +doc_events = { + "Bib Allocation": { + "on_update": "lukenya_marathon.lukenya_marathon.race_sync.on_bib_change", + "on_trash": "lukenya_marathon.lukenya_marathon.race_sync.on_trash", + }, + "Race Pack Issue": { + "on_update": "lukenya_marathon.lukenya_marathon.race_sync.on_pack_change", + "on_trash": "lukenya_marathon.lukenya_marathon.race_sync.on_trash", + }, + "Check-in": { + "on_update": "lukenya_marathon.lukenya_marathon.race_sync.on_checkin_change", + "on_trash": "lukenya_marathon.lukenya_marathon.race_sync.on_trash", + }, + "Timing Result": { + "on_update": "lukenya_marathon.lukenya_marathon.race_sync.on_result_change", + "on_trash": "lukenya_marathon.lukenya_marathon.race_sync.on_trash", + }, +} + +scheduler_events = { + "hourly": [ + "lukenya_marathon.lukenya_marathon.holds.hourly", + ], +} + + + +app_include_js = [ + "/assets/lukenya_marathon/js/lukenya_navigation.js" +] + +# Replaces the default Frappe navbar logo (top-left) for this app. +app_logo_url = "/assets/lukenya_marathon/images/lukenya-logo.png" + +app_include_css = [ + "/assets/lukenya_marathon/css/lukenya_navigation.css" +] diff --git a/lukenya_marathon/lukenya_marathon/analytics.py b/lukenya_marathon/lukenya_marathon/analytics.py new file mode 100644 index 0000000..f31ee8a --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/analytics.py @@ -0,0 +1,1052 @@ +"""Analytics behind the Reports & Analytics page and the standard script reports. + +One place for the queries so the page, the charts and the downloadable reports always agree. + +Definitions used throughout +- An "entry" is a Registration that is not Cancelled, Transferred or Refunded. +- Revenue is the sum of Payment Transactions with status Paid or Reconciled. +- Outstanding is what active entries still owe: amount due minus revenue received, never below zero. +- Date range filters entries by registration date. On the Payments tab it filters payments by + payment date, and on the Volunteers tab it filters shifts by shift date. +""" + +import frappe +from frappe import _ +from frappe.utils import add_days, cint, flt, getdate, nowdate + +CURRENCY = "KES" + +PAID = ("Paid", "Reconciled") +INACTIVE = ("Cancelled", "Transferred", "Refunded") +CONFIRMED = ("Confirmed", "Completed") +UNSETTLED = ("Unpaid", "Pending", "Partially Paid", "Failed") +BIB_LIVE = ("Allocated", "Printed", "Issued", "Replaced") +PACK_OUT = ("Issued", "Collected") +ACTIVE_VOLUNTEER = ("Approved", "Briefed", "Active") + +AGE_BANDS = [ + (0, 17, "Under 18"), + (18, 24, "18-24"), + (25, 34, "25-34"), + (35, 44, "35-44"), + (45, 54, "45-54"), + (55, 120, "55+"), +] + +UNPAID_ALERT_DAYS = 3 +NEAR_CAPACITY_PERCENT = 90 + +# (paid amount per registration) used by several queries +PAID_BY_REG = ( + "(select registration, sum(amount) as paid from `tabPayment Transaction` " + "where status in %(paid)s group by registration)" +) + + +# ---- small helpers ----------------------------------------------------------------------- + + +def _f(filters): + return frappe._dict(filters or {}) + + +def _rows(sql, params=None): + return frappe.db.sql(sql, params or {}, as_dict=True) + + +def _one(sql, params=None): + rows = _rows(sql, params) + return rows[0] if rows else frappe._dict() + + +def _has(doctype): + return frappe.db.table_exists(doctype) + + +def _pct(part, whole): + return round(flt(part) / flt(whole) * 100, 1) if flt(whole) else None + + +def _reg_scope(filters, alias="r", active=True, dates=True): + """WHERE clause and params for queries over Registration rows.""" + f = _f(filters) + where = ["1 = 1"] + params = {"paid": PAID, "inactive": INACTIVE} + if active: + where.append(f"{alias}.registration_status not in %(inactive)s") + if f.event_edition: + where.append(f"{alias}.event_edition = %(event_edition)s") + params["event_edition"] = f.event_edition + if f.race_category: + where.append(f"{alias}.race_category = %(race_category)s") + params["race_category"] = f.race_category + if dates and f.from_date: + where.append(f"date({alias}.registration_date) >= %(from_date)s") + params["from_date"] = getdate(f.from_date) + if dates and f.to_date: + where.append(f"date({alias}.registration_date) <= %(to_date)s") + params["to_date"] = getdate(f.to_date) + return " and ".join(where), params + + +def _fmt_duration(seconds): + if seconds is None: + return "" + total = int(round(flt(seconds))) + return f"{total // 3600}:{(total % 3600) // 60:02d}:{total % 60:02d}" + + +def _age(dob, ref): + dob, ref = getdate(dob), getdate(ref) + age = ref.year - dob.year - ((ref.month, ref.day) < (dob.month, dob.day)) + return age if 0 <= age <= 120 else None + + +def _band(age): + if age is None: + return _("Not given") + for low, high, label in AGE_BANDS: + if low <= age <= high: + return label + return _("Not given") + + +# ---- payload builders -------------------------------------------------------------------- + + +def _kpi(label, value, fmt="int", hint=None): + return {"label": label, "value": value, "format": fmt, "hint": hint} + + +def _chart(cid, title, ctype, labels, datasets, fmt=None, wide=False, report=None): + return { + "id": cid, + "title": title, + "type": ctype, + "labels": labels, + "datasets": datasets, + "format": fmt, + "wide": wide, + "report": report, + } + + +def _series(rows, name, label="label", value="value", blank=None): + blank = blank or _("Not given") + return ( + [str(r[label]) if r[label] not in (None, "") else blank for r in rows], + [{"name": name, "values": [flt(r[value]) for r in rows]}], + ) + + +def _table(tid, title, columns, rows, report=None, empty=None): + return { + "id": tid, + "title": title, + "columns": columns, + "rows": rows, + "report": report, + "empty": empty or _("Nothing to show yet."), + } + + +def _attention(text, count, report=None, doctype=None, filters=None): + return {"text": text, "count": count, "report": report, "doctype": doctype, "filters": filters or {}} + + +def _payload(kpis=None, charts=None, tables=None, attention=None): + return { + "kpis": kpis or [], + "charts": charts or [], + "tables": tables or [], + "attention": [a for a in (attention or []) if a["count"]], + } + + +# ---- shared datasets --------------------------------------------------------------------- + + +def registration_summary(filters=None): + """One row per active race category with registrations, payments and capacity use.""" + f = _f(filters) + params = {"paid": PAID, "inactive": INACTIVE} + cat_where = ["c.active = 1"] + join_extra = "" + rev_extra = "" + if f.event_edition: + cat_where.append("c.event_edition = %(event_edition)s") + params["event_edition"] = f.event_edition + if f.race_category: + cat_where.append("c.name = %(race_category)s") + params["race_category"] = f.race_category + if f.from_date: + join_extra += " and date(r.registration_date) >= %(from_date)s" + rev_extra += " and date(r2.registration_date) >= %(from_date)s" + params["from_date"] = getdate(f.from_date) + if f.to_date: + join_extra += " and date(r.registration_date) <= %(to_date)s" + rev_extra += " and date(r2.registration_date) <= %(to_date)s" + params["to_date"] = getdate(f.to_date) + + rows = _rows( + f""" + select c.name as race_category, c.category_name, c.event_edition, + coalesce(c.capacity, 0) as capacity, + count(r.name) as registered, + coalesce(sum(r.registration_status in ('Confirmed', 'Completed')), 0) as confirmed, + coalesce(sum(r.payment_status = 'Paid'), 0) as paid_entries, + coalesce(sum(r.amount_due), 0) as billed, + coalesce(max(rev.revenue), 0) as revenue + from `tabRace Category` c + left join `tabRegistration` r + on r.race_category = c.name and r.registration_status not in %(inactive)s {join_extra} + left join ( + select r2.race_category, sum(p2.paid) as revenue + from `tabRegistration` r2 + join {PAID_BY_REG} p2 on p2.registration = r2.name + where 1 = 1 {rev_extra} + group by r2.race_category + ) rev on rev.race_category = c.name + where {" and ".join(cat_where)} + group by c.name, c.category_name, c.event_edition, c.capacity, c.distance_km + order by c.event_edition desc, c.distance_km desc + """, + params, + ) + for row in rows: + row.capacity = cint(row.capacity) + row.registered = cint(row.registered) + row.confirmed = cint(row.confirmed) + row.paid_entries = cint(row.paid_entries) + row.billed = flt(row.billed) + row.revenue = flt(row.revenue) + row.fill_percent = _pct(row.registered, row.capacity) + return rows + + +def unpaid_registrations(filters=None, limit=None): + """Active entries that still owe money, oldest first.""" + where, params = _reg_scope(filters) + params["unsettled"] = UNSETTLED + limit_sql = f"limit {int(limit)}" if limit else "" + rows = _rows( + f""" + select r.name as registration, + concat_ws(' ', pa.first_name, pa.last_name) as participant_name, + r.race_category, c.category_name, r.registration_date, r.payment_status, + r.amount_due, coalesce(p.paid, 0) as paid, + greatest(r.amount_due - coalesce(p.paid, 0), 0) as balance, + datediff(curdate(), date(r.registration_date)) as days_open + from `tabRegistration` r + join `tabParticipant` pa on pa.name = r.participant + left join `tabRace Category` c on c.name = r.race_category + left join {PAID_BY_REG} p on p.registration = r.name + where {where} + and r.payment_status in %(unsettled)s + and coalesce(r.price_tier, '') != 'Complimentary' + and greatest(r.amount_due - coalesce(p.paid, 0), 0) > 0 + order by days_open desc, r.registration_date + {limit_sql} + """, + params, + ) + for row in rows: + row.amount_due = flt(row.amount_due) + row.paid = flt(row.paid) + row.balance = flt(row.balance) + row.days_open = cint(row.days_open) + return rows + + +def payment_reconciliation(filters=None, limit=None): + """Entries whose payment status and recorded payments disagree.""" + where, params = _reg_scope(filters, active=False) + limit_sql = f"limit {int(limit)}" if limit else "" + rows = _rows( + f""" + select * from ( + select r.name as registration, + concat_ws(' ', pa.first_name, pa.last_name) as participant_name, + r.race_category, r.registration_date, r.payment_status, + r.amount_due, coalesce(p.paid, 0) as paid, + coalesce(p.paid, 0) - r.amount_due as difference, + case + when r.registration_status in ('Cancelled', 'Refunded') and coalesce(p.paid, 0) > 0 + then 'Cancelled or refunded, payment still on record' + when r.registration_status in %(inactive)s then null + when r.payment_status = 'Paid' and r.amount_due > 0 and coalesce(p.paid, 0) = 0 + then 'Marked paid, no payment recorded' + when r.payment_status = 'Paid' and abs(coalesce(p.paid, 0) - r.amount_due) > 0.5 + then 'Amount paid differs from amount due' + when r.payment_status in ('Unpaid', 'Pending', 'Failed') and coalesce(p.paid, 0) > 0 + then 'Payment recorded, entry not marked paid' + end as issue + from `tabRegistration` r + join `tabParticipant` pa on pa.name = r.participant + left join {PAID_BY_REG} p on p.registration = r.name + where {where} + ) x + where x.issue is not null + order by x.registration_date + {limit_sql} + """, + params, + ) + for row in rows: + row.amount_due = flt(row.amount_due) + row.paid = flt(row.paid) + row.difference = flt(row.difference) + return rows + + +# ---- tab: overview ----------------------------------------------------------------------- + + +def _totals(filters): + where, params = _reg_scope(filters) + row = _one( + f""" + select count(r.name) as total, + coalesce(sum(r.registration_status in ('Confirmed', 'Completed')), 0) as confirmed, + coalesce(sum(r.payment_status = 'Paid'), 0) as paid_entries, + coalesce(sum(greatest(r.amount_due - coalesce(p.paid, 0), 0)), 0) as outstanding + from `tabRegistration` r + left join {PAID_BY_REG} p on p.registration = r.name + where {where} + """, + params, + ) + # Revenue counts money received on any entry, including ones since cancelled or transferred. + any_where, any_params = _reg_scope(filters, active=False) + row["revenue"] = _one( + f""" + select coalesce(sum(p.paid), 0) as revenue + from `tabRegistration` r + join {PAID_BY_REG} p on p.registration = r.name + where {any_where} + """, + any_params, + ).revenue + return row + + +def _per_day(filters, days=60): + where, params = _reg_scope(filters) + rows = _rows( + f""" + select date(r.registration_date) as day, count(*) as value + from `tabRegistration` r + where {where} and r.registration_date is not null + group by date(r.registration_date) + order by day desc + limit {int(days)} + """, + params, + ) + rows.reverse() + for row in rows: + row["label"] = getdate(row["day"]).strftime("%d %b") + return rows + + +def _editions_compare(): + return _rows( + f""" + select e.edition_name as label, count(r.name) as registrations, + coalesce(sum(p.paid), 0) as revenue + from `tabEvent Edition` e + left join `tabRegistration` r + on r.event_edition = e.name and r.registration_status not in %(inactive)s + left join {PAID_BY_REG} p on p.registration = r.name + group by e.name, e.edition_name, e.event_date + order by e.event_date + """, + {"paid": PAID, "inactive": INACTIVE}, + ) + + +def _returning_runners(): + row = _one( + """ + select count(*) as n from ( + select participant from `tabRegistration` + where registration_status not in %(inactive)s + group by participant + having count(distinct event_edition) > 1 + ) x + """, + {"inactive": INACTIVE}, + ) + return cint(row.n) + + +def _category_columns(): + return [ + {"label": _("Category"), "field": "category_name", "type": "text"}, + {"label": _("Capacity"), "field": "capacity", "type": "int"}, + {"label": _("Registered"), "field": "registered", "type": "int"}, + {"label": _("Confirmed"), "field": "confirmed", "type": "int"}, + {"label": _("Paid"), "field": "paid_entries", "type": "int"}, + {"label": _("Filled"), "field": "fill_percent", "type": "percent"}, + {"label": _("Revenue"), "field": "revenue", "type": "currency"}, + ] + + +def _overview(filters): + f = _f(filters) + totals = _totals(f) + summary = registration_summary(f) + unpaid = unpaid_registrations(f) + recon = payment_reconciliation(f) + + limited = [r for r in summary if r.capacity] + capacity_total = sum(r.capacity for r in limited) + fill = _pct(sum(r.registered for r in limited), capacity_total) + multi_edition = len({r.event_edition for r in summary}) > 1 + + def cat_label(row): + return f"{row.category_name} ({row.event_edition})" if multi_edition else row.category_name + + kpis = [ + _kpi(_("Entries"), cint(totals.total)), + _kpi(_("Confirmed"), cint(totals.confirmed), hint=_("{0}% of entries").format(_pct(totals.confirmed, totals.total) or 0)), + _kpi(_("Revenue"), flt(totals.revenue), "currency", hint=_("From paid and reconciled payments")), + _kpi(_("Outstanding"), flt(totals.outstanding), "currency", hint=_("Amount due minus payments received")), + _kpi(_("Paid entries"), _pct(totals.paid_entries, totals.total), "percent", hint=_("{0} of {1} entries").format(cint(totals.paid_entries), cint(totals.total))), + _kpi(_("Capacity filled"), fill, "percent", hint=_("Categories with a capacity set")), + ] + + editions = _editions_compare() + show_trend = len(editions) > 1 and not f.event_edition + if show_trend: + kpis.append(_kpi(_("Returning runners"), _returning_runners(), hint=_("Entered more than one edition"))) + + per_day = _per_day(f) + charts = [ + _chart( + "per_day", + _("Entries per day"), + "line", + [r["label"] for r in per_day], + [{"name": _("Entries"), "values": [flt(r["value"]) for r in per_day]}], + wide=True, + ), + _chart( + "capacity", + _("Entries against capacity"), + "bar", + [cat_label(r) for r in summary], + [ + {"name": _("Registered"), "values": [r.registered for r in summary]}, + {"name": _("Capacity"), "values": [r.capacity for r in summary]}, + ], + report={"name": "Registration Summary"}, + ), + ] + if show_trend: + charts.append( + _chart( + "edition_entries", + _("Entries by edition"), + "bar", + [e["label"] for e in editions], + [{"name": _("Entries"), "values": [cint(e["registrations"]) for e in editions]}], + ) + ) + charts.append( + _chart( + "edition_revenue", + _("Revenue by edition"), + "bar", + [e["label"] for e in editions], + [{"name": _("Revenue"), "values": [flt(e["revenue"]) for e in editions]}], + fmt="currency", + ) + ) + + near_full = [r for r in limited if r.fill_percent is not None and r.fill_percent >= NEAR_CAPACITY_PERCENT] + attention = [ + _attention( + _("entries unpaid for more than {0} days").format(UNPAID_ALERT_DAYS), + len([u for u in unpaid if u.days_open > UNPAID_ALERT_DAYS]), + report="Unpaid Registrations", + ), + _attention(_("payments where the records disagree"), len(recon), report="Payment Reconciliation"), + _attention(_("categories at {0}% capacity or more").format(NEAR_CAPACITY_PERCENT), len(near_full), report="Registration Summary"), + ] + + return _payload( + kpis, + charts, + [_table("categories", _("Entries by category"), _category_columns(), summary, report={"name": "Registration Summary"})], + attention, + ) + + +# ---- tab: registrations ------------------------------------------------------------------ + + +def _group(sql_field, joins, filters, active=True, alias="r", order="value desc", limit=None): + where, params = _reg_scope(filters, alias=alias, active=active) + limit_sql = f"limit {int(limit)}" if limit else "" + return _rows( + f""" + select {sql_field} as label, count(*) as value + from `tabRegistration` {alias} + {joins} + where {where} + group by {sql_field} + order by {order} + {limit_sql} + """, + params, + ) + + +def _registrations(filters): + f = _f(filters) + totals = _totals(f) + all_where, all_params = _reg_scope(f, active=False) + status_counts = _rows( + f""" + select r.registration_status as label, count(*) as value + from `tabRegistration` r + where {all_where} + group by r.registration_status + """, + all_params, + ) + order = ["Pending", "Confirmed", "Completed", "Cancelled", "Transferred", "Refunded"] + status_counts.sort(key=lambda r: order.index(r.label) if r.label in order else 99) + dropped = sum(cint(r.value) for r in status_counts if r.label in INACTIVE) + + join_p = "join `tabParticipant` p on p.name = r.participant" + gender = _group("coalesce(nullif(p.gender, ''), 'Not given')", join_p, f) + nationality = _group("coalesce(nullif(trim(p.nationality), ''), 'Not given')", join_p, f, limit=8) + shirts = _group("coalesce(nullif(p.shirt_size, ''), 'Not given')", join_p, f, order="(label = 'Not given'), field(label, 'XS','S','M','L','XL','XXL'), label") + tiers = _group("coalesce(nullif(r.price_tier, ''), 'Not given')", "", f) + + where, params = _reg_scope(f) + ages = _rows( + f""" + select p.date_of_birth as dob, e.event_date + from `tabRegistration` r + join `tabParticipant` p on p.name = r.participant + left join `tabEvent Edition` e on e.name = r.event_edition + where {where} + """, + params, + ) + counts = {} + for row in ages: + if not row.dob: + label = _("Not given") + else: + label = _band(_age(row.dob, row.event_date or nowdate())) + counts[label] = counts.get(label, 0) + 1 + band_order = [b[2] for b in AGE_BANDS] + [_("Not given")] + age_rows = [{"label": b, "value": counts[b]} for b in band_order if b in counts] + + non_resident = next((cint(r.value) for r in tiers if r.label == "Non-resident"), 0) + + kpis = [ + _kpi(_("Entries"), cint(totals.total)), + _kpi(_("Confirmed"), cint(totals.confirmed)), + _kpi(_("Cancelled or refunded"), dropped, hint=_("Not counted as entries")), + _kpi(_("Non-resident entries"), non_resident), + ] + + def chart(cid, title, ctype, rows, name=None, wide=False): + labels, datasets = _series(rows, name or _("Entries")) + return _chart(cid, title, ctype, labels, datasets, wide=wide) + + charts = [ + chart("status", _("Entry status"), "bar", status_counts), + chart("gender", _("Gender"), "donut", gender), + chart("age", _("Age group on race day"), "bar", age_rows), + chart("tier", _("Price tier"), "bar", tiers), + chart("nationality", _("Top nationalities"), "bar", nationality), + chart("shirts", _("Shirt sizes"), "bar", shirts), + ] + return _payload(kpis, charts, [_table("categories", _("Entries by category"), _category_columns(), registration_summary(f), report={"name": "Registration Summary"})]) + + +# ---- tab: payments ----------------------------------------------------------------------- + + +def _pay_scope(filters): + f = _f(filters) + where = ["1 = 1"] + params = {"paid": PAID} + if f.event_edition: + where.append("r.event_edition = %(event_edition)s") + params["event_edition"] = f.event_edition + if f.race_category: + where.append("r.race_category = %(race_category)s") + params["race_category"] = f.race_category + when = "date(coalesce(pt.payment_date, pt.creation))" + if f.from_date: + where.append(f"{when} >= %(from_date)s") + params["from_date"] = getdate(f.from_date) + if f.to_date: + where.append(f"{when} <= %(to_date)s") + params["to_date"] = getdate(f.to_date) + return " and ".join(where), params + + +def _payments(filters): + f = _f(filters) + where, params = _pay_scope(f) + base = "from `tabPayment Transaction` pt join `tabRegistration` r on r.name = pt.registration" + + total = _one(f"select coalesce(sum(pt.amount), 0) as revenue, count(*) as n {base} where {where} and pt.status in %(paid)s", params) + failed = _one(f"select count(*) as n {base} where {where} and pt.status = 'Failed'", params) + by_gateway = _rows(f"select coalesce(nullif(pt.gateway, ''), 'Other') as label, sum(pt.amount) as value {base} where {where} and pt.status in %(paid)s group by label order by value desc", params) + by_category = _rows(f"select coalesce(c.category_name, r.race_category) as label, sum(pt.amount) as value {base} left join `tabRace Category` c on c.name = r.race_category where {where} and pt.status in %(paid)s group by label order by value desc", params) + daily = _rows(f"select date(coalesce(pt.payment_date, pt.creation)) as day, sum(pt.amount) as value {base} where {where} and pt.status in %(paid)s group by day order by day desc limit 60", params) + daily.reverse() + reasons = _rows(f"select coalesce(nullif(trim(pt.failure_reason), ''), 'No reason given') as label, count(*) as value {base} where {where} and pt.status = 'Failed' group by label order by value desc limit 8", params) + + totals = _totals(f) + unpaid = unpaid_registrations(f) + recon = payment_reconciliation(f) + + kpis = [ + _kpi(_("Revenue"), flt(total.revenue), "currency", hint=_("{0} successful payments").format(cint(total.n))), + _kpi(_("Outstanding"), flt(totals.outstanding), "currency", hint=_("Amount due minus payments received")), + _kpi(_("Failed payments"), cint(failed.n)), + _kpi(_("Records that disagree"), len(recon), hint=_("See reconciliation below")), + ] + + def chart(cid, title, ctype, rows, name, fmt=None, wide=False): + labels, datasets = _series(rows, name) + return _chart(cid, title, ctype, labels, datasets, fmt=fmt, wide=wide) + + daily_rows = [{"label": getdate(r["day"]).strftime("%d %b"), "value": r["value"]} for r in daily] + charts = [ + chart("daily", _("Revenue per day"), "line", daily_rows, _("Revenue"), fmt="currency", wide=True), + chart("gateway", _("Revenue by payment method"), "donut", by_gateway, _("Revenue"), fmt="currency"), + chart("category", _("Revenue by category"), "bar", by_category, _("Revenue"), fmt="currency"), + chart("reasons", _("Why payments failed"), "bar", reasons, _("Payments")), + ] + + unpaid_cols = [ + {"label": _("Entry"), "field": "registration", "type": "link", "doctype": "Registration"}, + {"label": _("Runner"), "field": "participant_name", "type": "text"}, + {"label": _("Category"), "field": "category_name", "type": "text"}, + {"label": _("Status"), "field": "payment_status", "type": "text"}, + {"label": _("Due"), "field": "amount_due", "type": "currency"}, + {"label": _("Paid"), "field": "paid", "type": "currency"}, + {"label": _("Balance"), "field": "balance", "type": "currency"}, + {"label": _("Days open"), "field": "days_open", "type": "int"}, + ] + recon_cols = [ + {"label": _("Entry"), "field": "registration", "type": "link", "doctype": "Registration"}, + {"label": _("Runner"), "field": "participant_name", "type": "text"}, + {"label": _("Issue"), "field": "issue", "type": "text"}, + {"label": _("Due"), "field": "amount_due", "type": "currency"}, + {"label": _("Paid"), "field": "paid", "type": "currency"}, + {"label": _("Difference"), "field": "difference", "type": "currency"}, + ] + tables = [ + _table("unpaid", _("Unpaid entries, oldest first"), unpaid_cols, unpaid[:15], report={"name": "Unpaid Registrations"}, empty=_("No unpaid entries.")), + _table("recon", _("Payment reconciliation"), recon_cols, recon[:15], report={"name": "Payment Reconciliation"}, empty=_("Payments and entries agree.")), + ] + attention = [ + _attention( + _("payments failed"), + cint(failed.n), + doctype="Payment Transaction", + filters={"status": "Failed"}, + ), + _attention(_("entries unpaid for more than {0} days").format(UNPAID_ALERT_DAYS), len([u for u in unpaid if u.days_open > UNPAID_ALERT_DAYS]), report="Unpaid Registrations"), + ] + return _payload(kpis, charts, tables, attention) + + +# ---- tab: race day ----------------------------------------------------------------------- + + +def _race_day(filters): + f = _f(filters) + where, params = _reg_scope(f) + params.update(bib_live=BIB_LIVE, pack_out=PACK_OUT) + has_checkin = _has("Check-in") + + confirmed = cint( + _one(f"select count(*) as n from `tabRegistration` r where {where} and r.registration_status in ('Confirmed', 'Completed')", params).n + ) + bibs = cint( + _one( + f"""select count(distinct b.registration) as n from `tabBib Allocation` b + join `tabRegistration` r on r.name = b.registration where {where} and b.status in %(bib_live)s""", + params, + ).n + ) + packs = cint( + _one( + f"""select count(distinct i.registration) as n from `tabRace Pack Issue` i + join `tabRegistration` r on r.name = i.registration where {where} and i.issue_status in %(pack_out)s""", + params, + ).n + ) + checked_in = did_not_start = 0 + if has_checkin: + checked_in = cint( + _one( + f"""select count(distinct ci.registration) as n from `tabCheck-in` ci + join `tabRegistration` r on r.name = ci.registration where {where} and ci.status = 'Checked In'""", + params, + ).n + ) + did_not_start = cint( + _one( + f"""select count(distinct ci.registration) as n from `tabCheck-in` ci + join `tabRegistration` r on r.name = ci.registration where {where} and ci.status = 'Did Not Start'""", + params, + ).n + ) + + bib_status = _rows(f"select b.status as label, count(*) as value from `tabBib Allocation` b join `tabRegistration` r on r.name = b.registration where {where} group by b.status order by value desc", params) + pack_status = _rows(f"select i.issue_status as label, count(*) as value from `tabRace Pack Issue` i join `tabRegistration` r on r.name = i.registration where {where} group by i.issue_status order by value desc", params) + methods = [] + if has_checkin: + methods = _rows(f"select ci.check_in_method as label, count(*) as value from `tabCheck-in` ci join `tabRegistration` r on r.name = ci.registration where {where} and ci.status = 'Checked In' group by ci.check_in_method order by value desc", params) + + checkin_join = ( + "left join (select distinct registration from `tabCheck-in` where status = 'Checked In') ci on ci.registration = r.name" + if has_checkin + else "left join (select null as registration limit 0) ci on ci.registration = r.name" + ) + progress = _rows( + f""" + select c.category_name as label, + coalesce(sum(r.registration_status in ('Confirmed', 'Completed')), 0) as confirmed, + count(ci.registration) as checked_in + from `tabRace Category` c + join `tabRegistration` r on r.race_category = c.name + {checkin_join} + where {where} + group by c.name, c.category_name, c.distance_km + order by c.distance_km desc + """, + params, + ) + + no_bib = cint( + _one( + f"""select count(*) as n from `tabRegistration` r + where {where} and r.registration_status in ('Confirmed', 'Completed') and r.payment_status = 'Paid' + and not exists (select 1 from `tabBib Allocation` b where b.registration = r.name and b.status in %(bib_live)s)""", + params, + ).n + ) + uncollected = cint( + _one( + f"""select count(distinct i.registration) as n from `tabRace Pack Issue` i + join `tabRegistration` r on r.name = i.registration where {where} and i.issue_status = 'Uncollected'""", + params, + ).n + ) + + def chart(cid, title, ctype, rows, name): + labels, datasets = _series(rows, name) + return _chart(cid, title, ctype, labels, datasets) + + kpis = [ + _kpi(_("Confirmed entries"), confirmed), + _kpi(_("Bibs allocated"), bibs, hint=_("{0}% of confirmed").format(_pct(bibs, confirmed) or 0)), + _kpi(_("Race packs out"), packs, hint=_("Issued or collected")), + _kpi(_("Checked in"), checked_in, hint=_("{0}% of confirmed").format(_pct(checked_in, confirmed) or 0)), + _kpi(_("Did not start"), did_not_start), + ] + charts = [ + _chart( + "progress", + _("Check-in progress by category"), + "bar", + [r.label for r in progress], + [ + {"name": _("Confirmed"), "values": [cint(r.confirmed) for r in progress]}, + {"name": _("Checked in"), "values": [cint(r.checked_in) for r in progress]}, + ], + wide=True, + ), + chart("bibs", _("Bib allocations"), "bar", bib_status, _("Bibs")), + chart("packs", _("Race packs"), "donut", pack_status, _("Packs")), + chart("methods", _("How runners checked in"), "bar", methods, _("Check-ins")), + ] + attention = [ + _attention(_("paid entries have no bib yet"), no_bib), + _attention( + _("race packs marked uncollected"), + uncollected, + doctype="Race Pack Issue", + filters={"issue_status": "Uncollected"}, + ), + ] + return _payload(kpis, charts, [], attention) + + +# ---- tab: results and prizes ------------------------------------------------------------- + +_TIME = "coalesce(nullif(t.chip_time, 0), nullif(t.gun_time, 0))" # a zero time means no time + + +def _result_scope(filters): + f = _f(filters) + where, params = ["1 = 1"], {} + if f.event_edition: + where.append("t.event_edition = %(event_edition)s") + params["event_edition"] = f.event_edition + if f.race_category: + where.append("t.race_category = %(race_category)s") + params["race_category"] = f.race_category + return " and ".join(where), params + + +def _top_ten(gender, where, params): + rows = _rows( + f""" + select t.name as result, t.overall_rank, t.bib_number, + concat_ws(' ', p.first_name, p.last_name) as runner, + c.category_name, {_TIME} as seconds, t.approved + from `tabTiming Result` t + join `tabRegistration` r on r.name = t.registration + join `tabParticipant` p on p.name = r.participant + left join `tabRace Category` c on c.name = t.race_category + where {where} and t.finish_status = 'Finished' and p.gender = %(gender)s and {_TIME} is not null + order by seconds asc + limit 10 + """, + dict(params, gender=gender), + ) + for i, row in enumerate(rows, start=1): + row["place"] = i + row["time"] = _fmt_duration(row.seconds) + row["approved"] = _("Yes") if cint(row.approved) else _("No") + return rows + + +def _results(filters): + f = _f(filters) + where, params = _result_scope(f) + status = _rows(f"select t.finish_status as label, count(*) as value from `tabTiming Result` t where {where} group by t.finish_status order by value desc", params) + counts = {r.label: cint(r.value) for r in status} + finished, dnf = counts.get("Finished", 0), counts.get("Did Not Finish", 0) + awaiting = cint( + _one(f"select count(*) as n from `tabTiming Result` t where {where} and t.approved = 0 and t.finish_status in ('Finished', 'Pending Review')", params).n + ) + by_category = _rows( + f""" + select c.category_name, count(*) as finishers, + avg({_TIME}) as average_seconds, min({_TIME}) as best_seconds + from `tabTiming Result` t + join `tabRace Category` c on c.name = t.race_category + where {where} and t.finish_status = 'Finished' and {_TIME} is not null + group by c.name, c.category_name, c.distance_km + order by c.distance_km desc + """, + params, + ) + for row in by_category: + row["average"] = _fmt_duration(row.average_seconds) + row["best"] = _fmt_duration(row.best_seconds) + + prizes = _rows( + f""" + select a.approval_status as label, count(*) as value, coalesce(sum(pr.amount), 0) as amount + from `tabPrize Award` a + join `tabTiming Result` t on t.name = a.timing_result + left join `tabPrize Rule` pr on pr.name = a.prize_rule + where {where} + group by a.approval_status + """, + params, + ) + prize_count = {r.label: cint(r.value) for r in prizes} + prize_amount = {r.label: flt(r.amount) for r in prizes} + + kpis = [ + _kpi(_("Finishers"), finished), + _kpi(_("Finish rate"), _pct(finished, finished + dnf), "percent", hint=_("Finished out of started")), + _kpi(_("Results awaiting approval"), awaiting), + _kpi(_("Prizes approved"), prize_count.get("Approved", 0) + prize_count.get("Paid", 0)), + _kpi(_("Prize money paid"), prize_amount.get("Paid", 0), "currency", hint=_("{0} approved, not yet paid").format(format_amount(prize_amount.get("Approved", 0)))), + ] + + def chart(cid, title, ctype, rows, name, wide=False): + labels, datasets = _series(rows, name) + return _chart(cid, title, ctype, labels, datasets, wide=wide) + + finishers_by_cat = [{"label": r.category_name, "value": r.finishers} for r in by_category] + charts = [ + chart("status", _("Result status"), "donut", status, _("Results")), + chart("finishers", _("Finishers by category"), "bar", finishers_by_cat, _("Finishers")), + chart("prizes", _("Prize awards by status"), "bar", prizes, _("Awards")), + ] + + time_cols = [ + {"label": _("Category"), "field": "category_name", "type": "text"}, + {"label": _("Finishers"), "field": "finishers", "type": "int"}, + {"label": _("Fastest"), "field": "best", "type": "text"}, + {"label": _("Average"), "field": "average", "type": "text"}, + ] + top_cols = [ + {"label": _("#"), "field": "place", "type": "int"}, + {"label": _("Runner"), "field": "runner", "type": "text"}, + {"label": _("Bib"), "field": "bib_number", "type": "text"}, + {"label": _("Category"), "field": "category_name", "type": "text"}, + {"label": _("Time"), "field": "time", "type": "text"}, + {"label": _("Approved"), "field": "approved", "type": "text"}, + ] + tables = [ + _table("times", _("Times by category"), time_cols, by_category, empty=_("No finish times recorded yet.")), + _table("men", _("Fastest 10 men"), top_cols, _top_ten("Male", where, params), empty=_("No finish times recorded yet.")), + _table("women", _("Fastest 10 women"), top_cols, _top_ten("Female", where, params), empty=_("No finish times recorded yet.")), + ] + attention = [ + _attention( + _("results need approval"), + awaiting, + doctype="Timing Result", + filters=dict({"approved": 0}, **({"event_edition": f.event_edition} if f.event_edition else {}), **({"race_category": f.race_category} if f.race_category else {})), + ), + _attention( + _("prize awards waiting for approval"), + prize_count.get("Pending", 0), + doctype="Prize Award", + filters={"approval_status": "Pending"}, + ), + ] + return _payload(kpis, charts, tables, attention) + + +def format_amount(value): + return f"{CURRENCY} {flt(value):,.0f}" + + +# ---- tab: volunteers and impact ---------------------------------------------------------- + + +def _volunteers(filters): + f = _f(filters) + where, params = ["1 = 1"], {} + if f.event_edition: + where.append("s.event_edition = %(event_edition)s") + params["event_edition"] = f.event_edition + if f.from_date: + where.append("s.shift_date >= %(from_date)s") + params["from_date"] = getdate(f.from_date) + if f.to_date: + where.append("s.shift_date <= %(to_date)s") + params["to_date"] = getdate(f.to_date) + where = " and ".join(where) + + shifts = _one( + f""" + select count(*) as total, + coalesce(sum(s.attendance_status = 'Present'), 0) as present, + coalesce(sum(s.attendance_status = 'Absent'), 0) as absent, + coalesce(sum(case when s.attendance_status = 'Present' then + (case when s.end_time >= s.start_time + then time_to_sec(s.end_time) - time_to_sec(s.start_time) + else time_to_sec(s.end_time) - time_to_sec(s.start_time) + 86400 end) + else 0 end), 0) / 3600 as hours + from `tabVolunteer Shift` s where {where} + """, + params, + ) + by_area = _rows(f"select s.work_area as label, count(*) as value from `tabVolunteer Shift` s where {where} group by s.work_area order by value desc", params) + attendance = _rows(f"select s.attendance_status as label, count(*) as value from `tabVolunteer Shift` s where {where} group by s.attendance_status order by value desc", params) + active = cint( + _one("select count(*) as n from `tabVolunteer` where status in %(active)s", {"active": ACTIVE_VOLUNTEER}).n + ) + + tree_where, tree_params = ["1 = 1"], {} + if f.event_edition: + tree_where.append("tr.event_edition = %(event_edition)s") + tree_params["event_edition"] = f.event_edition + trees = _one( + f""" + select coalesce(sum(tr.trees_committed), 0) as committed, + coalesce(sum(tr.trees_planted), 0) as planted, + coalesce(sum(case when tr.verification_status = 'Verified' then tr.trees_planted else 0 end), 0) as verified + from `tabTree Impact Record` tr where {" and ".join(tree_where)} + """, + tree_params, + ) + exp_where, exp_params = _reg_scope({"event_edition": f.event_edition, "race_category": f.race_category}, dates=False) + expected = cint( + _one( + f""" + select coalesce(sum(e.trees_commitment_per_entry), 0) as n + from `tabRegistration` r join `tabEvent Edition` e on e.name = r.event_edition + where {exp_where} and r.registration_status in ('Confirmed', 'Completed') + """, + exp_params, + ).n + ) + + kpis = [ + _kpi(_("Active volunteers"), active, hint=_("Approved, briefed or active")), + _kpi(_("Shifts"), cint(shifts.total)), + _kpi(_("Attendance"), _pct(shifts.present, cint(shifts.present) + cint(shifts.absent)), "percent", hint=_("Present out of present and absent")), + _kpi(_("Volunteer hours"), round(flt(shifts.hours), 1), hint=_("From shifts marked present")), + _kpi(_("Trees planted"), cint(trees.planted), hint=_("{0} verified").format(cint(trees.verified))), + ] + + def chart(cid, title, ctype, rows, name): + labels, datasets = _series(rows, name) + return _chart(cid, title, ctype, labels, datasets) + + charts = [ + chart("areas", _("Shifts by work area"), "bar", by_area, _("Shifts")), + chart("attendance", _("Shift attendance"), "donut", attendance, _("Shifts")), + _chart( + "trees", + _("Tree planting progress"), + "bar", + [_("Expected from entries"), _("Committed"), _("Planted"), _("Verified")], + [{"name": _("Trees"), "values": [expected, cint(trees.committed), cint(trees.planted), cint(trees.verified)]}], + wide=True, + ), + ] + return _payload(kpis, charts, [], []) + + +# ---- endpoints --------------------------------------------------------------------------- + +TABS = { + "overview": _overview, + "registrations": _registrations, + "payments": _payments, + "race_day": _race_day, + "results": _results, + "volunteers": _volunteers, +} + + +@frappe.whitelist() +def get_filter_options(): + frappe.only_for("System Manager") + editions = _rows("select name, edition_name, event_date, status from `tabEvent Edition` order by event_date desc") + categories = _rows("select name, category_name, event_edition from `tabRace Category` where active = 1 order by distance_km desc") + default = next((e.name for e in editions if e.status == "Open"), editions[0].name if editions else None) + return {"editions": editions, "categories": categories, "default_edition": default} + + +@frappe.whitelist() +def get_analytics(tab="overview", event_edition=None, race_category=None, from_date=None, to_date=None): + frappe.only_for("System Manager") + if tab not in TABS: + frappe.throw(_("Unknown report tab: {0}").format(tab)) + filters = frappe._dict( + event_edition=event_edition or None, + race_category=race_category or None, + from_date=from_date or None, + to_date=to_date or None, + ) + data = TABS[tab](filters) + data["currency"] = CURRENCY + return data diff --git a/lukenya_marathon/lukenya_marathon/api.py b/lukenya_marathon/lukenya_marathon/api.py new file mode 100644 index 0000000..cca58a2 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/api.py @@ -0,0 +1,1186 @@ +import frappe +from frappe import _ +from frappe.utils import now_datetime, getdate, flt + +from lukenya_marathon.lukenya_marathon import registration_rules + + +def _clean(value): + return (value or "").strip() + + +def _get_price(category, price_tier, nationality): + nationality = _clean(nationality).lower() + + if price_tier == "Early Bird" and flt(category.early_bird_price) > 0: + return flt(category.early_bird_price) + + if price_tier == "Non-resident" or nationality not in ("kenya", "kenyan"): + if flt(category.non_resident_price) > 0: + return flt(category.non_resident_price) + + return flt(category.kenyan_price) + + +def _find_existing_participant(id_number, email): + if id_number: + existing = frappe.db.get_value( + "Participant", + {"id_number": id_number}, + "name", + ) + if existing: + return existing + + if email: + existing = frappe.db.get_value( + "Participant", + {"email": email}, + "name", + ) + if existing: + return existing + + return None + + +@frappe.whitelist(allow_guest=True) +def get_event_categories(event_edition=None): + filters = {"active": 1} + + if event_edition: + filters["event_edition"] = event_edition + + return frappe.get_all( + "Race Category", + filters=filters, + fields=[ + "name", + "category_code", + "category_name", + "event_edition", + "discipline", + "distance_km", + "start_time", + "cutoff_hours", + "eligibility", + "kenyan_price", + "non_resident_price", + "early_bird_price", + "capacity", + "prize_eligible", + "inclusions", + ], + order_by="category_name asc", + ) + + +@frappe.whitelist(allow_guest=True) +def create_registration(payload=None): + if isinstance(payload, str): + payload = frappe.parse_json(payload) + + if not isinstance(payload, dict): + frappe.throw(_("Registration payload must be a JSON object.")) + + required = [ + "event_edition", + "race_category", + "first_name", + "last_name", + "phone", + "indemnity_accepted", + ] + + missing = [ + field + for field in required + if payload.get(field) in (None, "", False) + ] + + if missing: + frappe.throw( + _("Missing required fields: {0}").format(", ".join(missing)) + ) + + edition = frappe.get_doc("Event Edition", payload["event_edition"]) + category = frappe.get_doc("Race Category", payload["race_category"]) + + if category.event_edition != edition.name: + frappe.throw( + _("The selected race category does not belong to this event edition.") + ) + + if not category.active: + frappe.throw(_("The selected race category is not active.")) + + if edition.status != "Open": + frappe.throw( + _("Registration is not open for this event edition.") + ) + + registration_rules.check_window(edition) + + capacity = int(category.capacity or 0) + + if capacity > 0: + active_count = frappe.db.count( + "Registration", + { + "race_category": category.name, + "registration_status": ["in", ["Pending", "Confirmed"]], + }, + ) + + if active_count >= capacity: + frappe.throw(_("This race category is full.")) + + first_name = _clean(payload.get("first_name")) + last_name = _clean(payload.get("last_name")) + id_number = _clean(payload.get("id_number")) + email = _clean(payload.get("email")).lower() + phone = _clean(payload.get("phone")) + nationality = _clean(payload.get("nationality")) or "Kenya" + price_tier = registration_rules.resolve_price_tier( + edition, category, payload.get("price_tier"), nationality + ) + + existing_participant = _find_existing_participant(id_number, email) + + if existing_participant: + participant_name = existing_participant + participant = frappe.get_doc("Participant", participant_name) + + participant.first_name = first_name + participant.last_name = last_name + participant.phone = phone + participant.whatsapp = _clean(payload.get("whatsapp")) + participant.shirt_size = _clean(payload.get("shirt_size")) + participant.emergency_contact_name = _clean( + payload.get("emergency_contact_name") + ) + participant.emergency_contact_phone = _clean( + payload.get("emergency_contact_phone") + ) + participant.communication_consent = int( + bool(payload.get("communication_consent")) + ) + participant.save(ignore_permissions=True) + else: + participant = frappe.get_doc( + { + "doctype": "Participant", + "participant_code": frappe.generate_hash(length=10).upper(), + "first_name": first_name, + "last_name": last_name, + "id_number": id_number, + "date_of_birth": payload.get("date_of_birth"), + "gender": payload.get("gender"), + "nationality": nationality, + "email": email, + "phone": phone, + "whatsapp": _clean(payload.get("whatsapp")), + "shirt_size": _clean(payload.get("shirt_size")), + "emergency_contact_name": _clean( + payload.get("emergency_contact_name") + ), + "emergency_contact_phone": _clean( + payload.get("emergency_contact_phone") + ), + "communication_consent": int( + bool(payload.get("communication_consent")) + ), + } + ) + participant.insert(ignore_permissions=True) + + duplicate = frappe.db.exists( + "Registration", + { + "participant": participant.name, + "event_edition": edition.name, + "registration_status": ["not in", ["Cancelled", "Refunded"]], + }, + ) + + if duplicate: + frappe.throw( + _("This participant already has an active registration for this edition.") + ) + + amount_due = _get_price(category, price_tier, nationality) + + registration = frappe.get_doc( + { + "doctype": "Registration", + "participant": participant.name, + "event_edition": edition.name, + "race_category": category.name, + "registration_status": "Pending", + "registration_date": now_datetime(), + "price_tier": price_tier, + "amount_due": amount_due, + "payment_status": "Unpaid", + "indemnity_accepted": 1, + "consent_timestamp": now_datetime(), + } + ) + + registration.insert(ignore_permissions=True) + + return { + "success": True, + "registration": registration.name, + "participant": participant.name, + "event_edition": edition.name, + "race_category": category.name, + "amount_due": amount_due, + "currency": "KES", + "payment_status": registration.payment_status, + "registration_status": registration.registration_status, + } + + +@frappe.whitelist() +def seed_demo_data(): + """Create development event data for the Lukenya Marathon site.""" + edition_code = "LUKENYA-2026" + + if frappe.db.exists("Event Edition", edition_code): + edition = frappe.get_doc("Event Edition", edition_code) + else: + edition = frappe.get_doc( + { + "doctype": "Event Edition", + "edition_code": edition_code, + "edition_name": "Lukenya University Marathon 2026", + "event_date": "2026-03-28", + "status": "Open", + "venue": "Lukenya University Main Campus", + "county": "Machakos County", + "description": ( + "Annual Lukenya University Marathon at Lukenya Hills." + ), + "registration_capacity": 1000, + "trees_commitment_per_entry": 1, + } + ) + edition.insert(ignore_permissions=True) + + categories = [ + { + "code": "42KM", + "name": "Full Marathon", + "discipline": "Running", + "distance": 42.2, + "start": "06:00:00", + "cutoff": 6, + "kenyan": 2500, + "non_resident": 50, + "early": 2000, + "capacity": 300, + "prize": 1, + }, + { + "code": "21KM", + "name": "Half Marathon", + "discipline": "Running", + "distance": 21.1, + "start": "06:00:00", + "cutoff": 3.5, + "kenyan": 1800, + "non_resident": 40, + "early": 1500, + "capacity": 300, + "prize": 0, + }, + { + "code": "15KM", + "name": "Community Run", + "discipline": "Running", + "distance": 15, + "start": "06:30:00", + "cutoff": 2.5, + "kenyan": 1200, + "non_resident": 30, + "early": 1000, + "capacity": 150, + "prize": 0, + }, + { + "code": "10KM", + "name": "Local Race", + "discipline": "Running", + "distance": 10, + "start": "06:30:00", + "cutoff": 2, + "kenyan": 1000, + "non_resident": 25, + "early": 800, + "capacity": 150, + "prize": 0, + }, + { + "code": "5KM", + "name": "Fun Run", + "discipline": "Running", + "distance": 5, + "start": "07:00:00", + "cutoff": 1.5, + "kenyan": 500, + "non_resident": 15, + "early": 400, + "capacity": 100, + "prize": 0, + }, + { + "code": "50KM-CYCLE", + "name": "Black Mamba Cycle", + "discipline": "Cycling", + "distance": 50, + "start": "06:00:00", + "cutoff": 6, + "kenyan": 2500, + "non_resident": 50, + "early": 2000, + "capacity": 100, + "prize": 0, + }, + { + "code": "VIRTUAL", + "name": "Virtual Run", + "discipline": "Virtual", + "distance": 0, + "start": "00:00:00", + "cutoff": 0, + "kenyan": 800, + "non_resident": 20, + "early": 600, + "capacity": 1000, + "prize": 0, + }, + ] + + created = [] + + for item in categories: + if frappe.db.exists("Race Category", item["code"]): + category = frappe.get_doc("Race Category", item["code"]) + category.category_name = item["name"] + category.event_edition = edition.name + category.discipline = item["discipline"] + category.distance_km = item["distance"] + category.start_time = item["start"] + category.cutoff_hours = item["cutoff"] + category.kenyan_price = item["kenyan"] + category.non_resident_price = item["non_resident"] + category.early_bird_price = item["early"] + category.capacity = item["capacity"] + category.active = 1 + category.prize_eligible = item["prize"] + category.inclusions = ( + "Race bib, chip timing, finisher medal, event T-shirt" + ) + category.save(ignore_permissions=True) + else: + category = frappe.get_doc( + { + "doctype": "Race Category", + "category_code": item["code"], + "category_name": item["name"], + "event_edition": edition.name, + "discipline": item["discipline"], + "distance_km": item["distance"], + "start_time": item["start"], + "cutoff_hours": item["cutoff"], + "kenyan_price": item["kenyan"], + "non_resident_price": item["non_resident"], + "early_bird_price": item["early"], + "capacity": item["capacity"], + "active": 1, + "prize_eligible": item["prize"], + "inclusions": ( + "Race bib, chip timing, finisher medal, event T-shirt" + ), + } + ) + category.insert(ignore_permissions=True) + + created.append(category.name) + + frappe.db.commit() + + return { + "success": True, + "event_edition": edition.name, + "categories": created, + } + + +@frappe.whitelist() +def setup_lukenya_workspace(): + workspace_name = "Lukenya Marathon" + + shortcut_definitions = [ + ("Event Edition", "Event Editions", "Calendar"), + ("Race Category", "Race Categories", "List"), + ("Participant", "Participants", "List"), + ("Registration", "Registrations", "List"), + ("Payment Transaction", "Payment Transactions", "List"), + ("Bib Allocation", "Bib Allocations", "List"), + ("Race Pack Issue", "Race Pack Issues", "List"), + ("Timing Result", "Timing Results", "List"), + ("Prize Rule", "Prize Rules", "List"), + ("Prize Award", "Prize Awards", "List"), + ("Tree Impact Record", "Tree Impact Records", "List"), + ("Volunteer", "Volunteers", "List"), + ("Volunteer Shift", "Volunteer Shifts", "List"), + ] + + existing = frappe.db.exists("Workspace", workspace_name) + + if existing: + workspace = frappe.get_doc("Workspace", workspace_name) + workspace.shortcuts = [] + else: + workspace = frappe.get_doc( + { + "doctype": "Workspace", + "name": workspace_name, + "title": workspace_name, + "label": workspace_name, + "module": "Lukenya Marathon", + "public": 1, + "is_hidden": 0, + } + ) + + added = [] + + for doctype, label, doc_view in shortcut_definitions: + if not frappe.db.exists("DocType", doctype): + continue + + workspace.append( + "shortcuts", + { + "type": "DocType", + "link_to": doctype, + "label": label, + "doc_view": doc_view, + "icon": "list", + }, + ) + added.append(doctype) + + if existing: + workspace.save(ignore_permissions=True) + else: + workspace.insert(ignore_permissions=True) + frappe.db.commit() + + return { + "success": True, + "workspace": workspace.name, + "shortcuts_added": added, + "shortcut_count": len(added), + } + + +@frappe.whitelist() +def repair_lukenya_workspace_content(): + import json + + workspace_name = "Lukenya Marathon" + + shortcuts = [ + ("Event Edition", "Event Editions"), + ("Race Category", "Race Categories"), + ("Participant", "Participants"), + ("Registration", "Registrations"), + ("Payment Transaction", "Payment Transactions"), + ("Bib Allocation", "Bib Allocations"), + ("Race Pack Issue", "Race Pack Issues"), + ("Timing Result", "Timing Results"), + ("Prize Rule", "Prize Rules"), + ("Prize Award", "Prize Awards"), + ("Tree Impact Record", "Tree Impact Records"), + ("Volunteer", "Volunteers"), + ("Volunteer Shift", "Volunteer Shifts"), + ] + + content = [ + { + "id": "lukenya-marathon-header", + "type": "header", + "data": { + "text": "Marathon Operations", + "col": 12, + }, + } + ] + + for index, (doctype, label) in enumerate(shortcuts, start=1): + if frappe.db.exists("DocType", doctype): + content.append( + { + "id": f"lukenya-shortcut-{index}", + "type": "shortcut", + "data": { + "shortcut_name": doctype, + "label": label, + "col": 3, + }, + } + ) + + frappe.db.set_value( + "Workspace", + workspace_name, + "content", + json.dumps(content), + update_modified=True, + ) + + frappe.db.commit() + + return { + "success": True, + "workspace": workspace_name, + "content_blocks": len(content), + "shortcuts_rendered": len(content) - 1, + } + + +@frappe.whitelist() +def repair_lukenya_workspace_shortcuts(): + import json + + workspace_name = "Lukenya Marathon" + + shortcut_rows = frappe.get_all( + "Workspace Shortcut", + filters={ + "parent": workspace_name, + "parenttype": "Workspace", + "parentfield": "shortcuts", + }, + fields=["name", "label"], + order_by="idx asc", + ) + + content = [ + { + "id": "lukenya-marathon-header", + "type": "header", + "data": { + "text": "Marathon Operations", + "col": 12, + }, + } + ] + + for index, shortcut in enumerate(shortcut_rows, start=1): + content.append( + { + "id": f"lukenya-shortcut-{index}", + "type": "shortcut", + "data": { + "shortcut_name": shortcut.name, + "col": 3, + }, + } + ) + + frappe.db.set_value( + "Workspace", + workspace_name, + "content", + json.dumps(content), + update_modified=True, + ) + + frappe.db.commit() + + return { + "success": True, + "workspace": workspace_name, + "shortcuts_found": len(shortcut_rows), + "content_blocks": len(content), + "shortcut_record_names": [row.name for row in shortcut_rows], + } + + +@frappe.whitelist() +def finalize_lukenya_workspace(): + import json + + workspace_name = "Lukenya Marathon" + + doctype_shortcuts = [ + ("Event Edition", "Event Editions"), + ("Race Category", "Race Categories"), + ("Participant", "Participants"), + ("Registration", "Registrations"), + ("Payment Transaction", "Payment Transactions"), + ("Bib Allocation", "Bib Allocations"), + ("Race Pack Issue", "Race Pack Issues"), + ("Timing Result", "Timing Results"), + ("Prize Rule", "Prize Rules"), + ("Prize Award", "Prize Awards"), + ("Tree Impact Record", "Tree Impact Records"), + ("Volunteer", "Volunteers"), + ("Volunteer Shift", "Volunteer Shifts"), + ] + + content = [ + { + "id": "lukenya-marathon-header", + "type": "header", + "data": { + "text": "Marathon Operations", + "col": 12, + }, + } + ] + + for index, (doctype, label) in enumerate(doctype_shortcuts, start=1): + if frappe.db.exists("DocType", doctype): + content.append( + { + "id": f"lukenya-shortcut-{index}", + "type": "shortcut", + "data": { + "shortcut_name": doctype, + "label": label, + "col": 3, + }, + } + ) + + frappe.db.set_value( + "Workspace", + workspace_name, + "content", + json.dumps(content), + update_modified=True, + ) + + frappe.db.commit() + + return { + "success": True, + "workspace": workspace_name, + "shortcuts_rendered": len(content) - 1, + "shortcuts": [item[0] for item in doctype_shortcuts], + } + + +@frappe.whitelist() +def set_minimal_lukenya_workspace_content(): + import json + + workspace_name = "Lukenya Marathon" + + doctypes = [ + "Event Edition", + "Race Category", + "Participant", + "Registration", + "Payment Transaction", + "Bib Allocation", + "Race Pack Issue", + "Timing Result", + "Prize Rule", + "Prize Award", + "Tree Impact Record", + "Volunteer", + "Volunteer Shift", + ] + + content = [ + { + "id": "lukenya-header", + "type": "header", + "data": { + "text": "Marathon Operations", + "col": 12, + }, + } + ] + + for index, doctype in enumerate(doctypes, start=1): + if frappe.db.exists("DocType", doctype): + content.append( + { + "id": f"lukenya-shortcut-{index}", + "type": "shortcut", + "data": { + "shortcut_name": doctype, + "col": 3, + }, + } + ) + + frappe.db.set_value( + "Workspace", + workspace_name, + "content", + json.dumps(content, separators=(",", ":")), + update_modified=True, + ) + + frappe.db.commit() + + return { + "success": True, + "workspace": workspace_name, + "shortcuts": len(content) - 1, + } + + +@frappe.whitelist() +def diagnose_lukenya_workspace(): + import json + + workspace_name = "Lukenya Marathon" + report = { + "workspace": workspace_name, + "current_user": frappe.session.user, + "workspace_exists": False, + "workspace_fields": {}, + "content_parse_ok": False, + "content_blocks": [], + "shortcut_diagnostics": [], + "child_shortcuts": [], + "errors": [], + "warnings": [], + } + + if not frappe.db.exists("Workspace", workspace_name): + report["errors"].append("Workspace does not exist.") + return report + + report["workspace_exists"] = True + + workspace = frappe.get_doc("Workspace", workspace_name) + + report["workspace_fields"] = { + "name": workspace.name, + "title": workspace.title, + "label": workspace.label, + "module": workspace.module, + "public": workspace.public, + "is_hidden": workspace.is_hidden, + "hide_custom": workspace.hide_custom, + "for_user": workspace.for_user, + "restrict_to_domain": workspace.restrict_to_domain, + "content_length": len(workspace.content or ""), + } + + if workspace.is_hidden: + report["errors"].append("Workspace is marked as hidden.") + + if workspace.for_user and workspace.for_user != frappe.session.user: + report["errors"].append( + "Workspace is restricted to another user: " + + str(workspace.for_user) + ) + + try: + content = json.loads(workspace.content or "[]") + report["content_parse_ok"] = True + except Exception as exc: + report["errors"].append( + "Workspace content is invalid JSON: " + repr(exc) + ) + return report + + if not isinstance(content, list): + report["errors"].append("Workspace content is not a JSON list.") + return report + + report["content_blocks"] = content + + child_shortcuts = frappe.get_all( + "Workspace Shortcut", + filters={ + "parent": workspace_name, + "parenttype": "Workspace", + "parentfield": "shortcuts", + }, + fields=[ + "name", + "idx", + "type", + "link_to", + "label", + "doc_view", + ], + order_by="idx asc", + ) + + report["child_shortcuts"] = child_shortcuts + + child_by_link = { + row.link_to: row + for row in child_shortcuts + if row.link_to + } + + for index, block in enumerate(content, start=1): + if not isinstance(block, dict): + report["errors"].append( + f"Content block {index} is not an object." + ) + continue + + block_type = block.get("type") + data = block.get("data") or {} + + if block_type != "shortcut": + continue + + shortcut_name = data.get("shortcut_name") + + diagnostic = { + "content_index": index, + "shortcut_name": shortcut_name, + "doctype_exists": False, + "child_shortcut_exists": False, + "read_permission": False, + "doctype_meta": {}, + "errors": [], + "warnings": [], + } + + if not shortcut_name: + diagnostic["errors"].append( + "Shortcut has no data.shortcut_name value." + ) + report["shortcut_diagnostics"].append(diagnostic) + continue + + doctype_exists = frappe.db.exists("DocType", shortcut_name) + diagnostic["doctype_exists"] = bool(doctype_exists) + + if not doctype_exists: + diagnostic["errors"].append( + "No DocType exists with this exact name." + ) + else: + try: + meta = frappe.get_meta(shortcut_name) + + diagnostic["doctype_meta"] = { + "name": meta.name, + "module": meta.module, + "istable": meta.istable, + "issingle": meta.issingle, + "is_virtual": getattr(meta, "is_virtual", False), + "read_only": getattr(meta, "read_only", False), + } + + diagnostic["read_permission"] = bool( + frappe.has_permission( + shortcut_name, + ptype="read", + user=frappe.session.user, + ) + ) + + if not diagnostic["read_permission"]: + diagnostic["errors"].append( + "Current user has no read permission." + ) + + if meta.istable: + diagnostic["errors"].append( + "Target DocType is a child table, not a desk list DocType." + ) + + if meta.issingle: + diagnostic["warnings"].append( + "Target DocType is single; it may not render as a list shortcut." + ) + + except Exception as exc: + diagnostic["errors"].append( + "Could not inspect DocType metadata: " + repr(exc) + ) + + if shortcut_name not in child_by_link: + diagnostic["warnings"].append( + "No Workspace Shortcut child row has link_to equal to this target." + ) + else: + diagnostic["child_shortcut_exists"] = True + + report["shortcut_diagnostics"].append(diagnostic) + + if not report["shortcut_diagnostics"]: + report["errors"].append( + "Workspace content contains no shortcut blocks." + ) + + if report["content_parse_ok"] and not report["errors"]: + report["warnings"].append( + "Backend validation found no shortcut data errors. " + "If shortcuts remain invisible, inspect the browser Network response " + "for get_desktop_page and the loaded frontend asset version." + ) + + return report + + +@frappe.whitelist() +def setup_lukenya_card_dashboard(): + import json + + workspace_name = "Lukenya Marathon" + + cards = [ + { + "label": "Event Setup", + "links": [ + ("Event Editions", "Event Edition"), + ("Race Categories", "Race Category"), + ], + }, + { + "label": "Registration Management", + "links": [ + ("Participants", "Participant"), + ("Registrations", "Registration"), + ("Payment Transactions", "Payment Transaction"), + ], + }, + { + "label": "Race-Day Operations", + "links": [ + ("Bib Allocations", "Bib Allocation"), + ("Race Pack Issues", "Race Pack Issue"), + ("Volunteer Shifts", "Volunteer Shift"), + ], + }, + { + "label": "Results and Awards", + "links": [ + ("Timing Results", "Timing Result"), + ("Prize Rules", "Prize Rule"), + ("Prize Awards", "Prize Award"), + ], + }, + { + "label": "People and Impact", + "links": [ + ("Volunteers", "Volunteer"), + ("Tree Impact Records", "Tree Impact Record"), + ], + }, + ] + + workspace = frappe.get_doc("Workspace", workspace_name) + + # Remove old link rows and rebuild only this workspace's links. + workspace.set("links", []) + + workspace_content = [ + { + "id": "lukenya-dashboard-header", + "type": "header", + "data": { + "text": "Marathon Operations", + "col": 12, + }, + } + ] + + created_links = [] + + for card_index, card in enumerate(cards, start=1): + workspace.append( + "links", + { + "type": "Card Break", + "label": card["label"], + "hidden": 0, + }, + ) + + workspace_content.append( + { + "id": f"lukenya-card-{card_index}", + "type": "card", + "data": { + "card_name": card["label"], + "col": 4, + }, + } + ) + + for label, doctype in card["links"]: + if not frappe.db.exists("DocType", doctype): + continue + + workspace.append( + "links", + { + "type": "Link", + "label": label, + "link_type": "DocType", + "link_to": doctype, + "hidden": 0, + "dependencies": "", + }, + ) + + created_links.append(doctype) + + # Remove shortcut blocks. Cards and links will be the dashboard interface. + frappe.db.set_value( + "Workspace", + workspace_name, + "content", + json.dumps(workspace_content, separators=(",", ":")), + update_modified=False, + ) + + workspace.save(ignore_permissions=True) + frappe.db.commit() + + return { + "success": True, + "workspace": workspace_name, + "cards_created": len(cards), + "links_created": len(created_links), + "links": created_links, + } + + +@frappe.whitelist() +def finalize_lukenya_card_dashboard(): + import json + + workspace_name = "Lukenya Marathon" + + cards = [ + { + "label": "Event Setup", + "links": [ + ("Event Editions", "Event Edition"), + ("Race Categories", "Race Category"), + ], + }, + { + "label": "Registration Management", + "links": [ + ("Participants", "Participant"), + ("Registrations", "Registration"), + ("Payment Transactions", "Payment Transaction"), + ], + }, + { + "label": "Race-Day Operations", + "links": [ + ("Bib Allocations", "Bib Allocation"), + ("Race Pack Issues", "Race Pack Issue"), + ("Volunteer Shifts", "Volunteer Shift"), + ], + }, + { + "label": "Results and Awards", + "links": [ + ("Timing Results", "Timing Result"), + ("Prize Rules", "Prize Rule"), + ("Prize Awards", "Prize Award"), + ], + }, + { + "label": "People and Impact", + "links": [ + ("Volunteers", "Volunteer"), + ("Tree Impact Records", "Tree Impact Record"), + ], + }, + ] + + workspace = frappe.get_doc("Workspace", workspace_name) + workspace.set("shortcuts", []) + workspace.set("links", []) + + created_links = [] + + for card in cards: + workspace.append( + "links", + { + "type": "Card Break", + "label": card["label"], + "hidden": 0, + }, + ) + + for label, doctype in card["links"]: + if not frappe.db.exists("DocType", doctype): + continue + + workspace.append( + "links", + { + "type": "Link", + "label": label, + "link_type": "DocType", + "link_to": doctype, + "hidden": 0, + "dependencies": "", + }, + ) + created_links.append(doctype) + + # Save the Workspace Links first. + workspace.save(ignore_permissions=True) + + # Frappe 15 renders Card Break groups from content. + content = [ + { + "id": "lukenya-header", + "type": "header", + "data": { + "text": "Marathon Operations", + "col": 12, + }, + } + ] + + for index, card in enumerate(cards, start=1): + content.append( + { + "id": f"lukenya-card-{index}", + "type": "card", + "data": { + "card_name": card["label"], + "col": 4, + }, + } + ) + + # Write content after save so workspace.save cannot overwrite it. + frappe.db.set_value( + "Workspace", + workspace_name, + "content", + json.dumps(content, separators=(",", ":")), + update_modified=True, + ) + + frappe.db.commit() + + return { + "success": True, + "workspace": workspace_name, + "cards_created": len(cards), + "links_created": len(created_links), + "links": created_links, + "content": content, + } diff --git a/lukenya_marathon/lukenya_marathon/api.py.bak b/lukenya_marathon/lukenya_marathon/api.py.bak new file mode 100644 index 0000000..abb9f52 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/api.py.bak @@ -0,0 +1,1180 @@ +import frappe +from frappe import _ +from frappe.utils import now_datetime, getdate, flt + + +def _clean(value): + return (value or "").strip() + + +def _get_price(category, price_tier, nationality): + nationality = _clean(nationality).lower() + + if price_tier == "Early Bird" and flt(category.early_bird_price) > 0: + return flt(category.early_bird_price) + + if price_tier == "Non-resident" or nationality not in ("kenya", "kenyan"): + if flt(category.non_resident_price) > 0: + return flt(category.non_resident_price) + + return flt(category.kenyan_price) + + +def _find_existing_participant(id_number, email): + if id_number: + existing = frappe.db.get_value( + "Participant", + {"id_number": id_number}, + "name", + ) + if existing: + return existing + + if email: + existing = frappe.db.get_value( + "Participant", + {"email": email}, + "name", + ) + if existing: + return existing + + return None + + +@frappe.whitelist(allow_guest=True) +def get_event_categories(event_edition=None): + filters = {"active": 1} + + if event_edition: + filters["event_edition"] = event_edition + + return frappe.get_all( + "Race Category", + filters=filters, + fields=[ + "name", + "category_code", + "category_name", + "event_edition", + "discipline", + "distance_km", + "start_time", + "cutoff_hours", + "eligibility", + "kenyan_price", + "non_resident_price", + "early_bird_price", + "capacity", + "prize_eligible", + "inclusions", + ], + order_by="category_name asc", + ) + + +@frappe.whitelist(allow_guest=True) +def create_registration(payload=None): + if isinstance(payload, str): + payload = frappe.parse_json(payload) + + if not isinstance(payload, dict): + frappe.throw(_("Registration payload must be a JSON object.")) + + required = [ + "event_edition", + "race_category", + "first_name", + "last_name", + "phone", + "indemnity_accepted", + ] + + missing = [ + field + for field in required + if payload.get(field) in (None, "", False) + ] + + if missing: + frappe.throw( + _("Missing required fields: {0}").format(", ".join(missing)) + ) + + edition = frappe.get_doc("Event Edition", payload["event_edition"]) + category = frappe.get_doc("Race Category", payload["race_category"]) + + if category.event_edition != edition.name: + frappe.throw( + _("The selected race category does not belong to this event edition.") + ) + + if not category.active: + frappe.throw(_("The selected race category is not active.")) + + if edition.status != "Open": + frappe.throw( + _("Registration is not open for this event edition.") + ) + + capacity = int(category.capacity or 0) + + if capacity > 0: + active_count = frappe.db.count( + "Registration", + { + "race_category": category.name, + "registration_status": ["in", ["Pending", "Confirmed"]], + }, + ) + + if active_count >= capacity: + frappe.throw(_("This race category is full.")) + + first_name = _clean(payload.get("first_name")) + last_name = _clean(payload.get("last_name")) + id_number = _clean(payload.get("id_number")) + email = _clean(payload.get("email")).lower() + phone = _clean(payload.get("phone")) + nationality = _clean(payload.get("nationality")) or "Kenya" + price_tier = _clean(payload.get("price_tier")) or "Standard" + + existing_participant = _find_existing_participant(id_number, email) + + if existing_participant: + participant_name = existing_participant + participant = frappe.get_doc("Participant", participant_name) + + participant.first_name = first_name + participant.last_name = last_name + participant.phone = phone + participant.whatsapp = _clean(payload.get("whatsapp")) + participant.shirt_size = _clean(payload.get("shirt_size")) + participant.emergency_contact_name = _clean( + payload.get("emergency_contact_name") + ) + participant.emergency_contact_phone = _clean( + payload.get("emergency_contact_phone") + ) + participant.communication_consent = int( + bool(payload.get("communication_consent")) + ) + participant.save(ignore_permissions=True) + else: + participant = frappe.get_doc( + { + "doctype": "Participant", + "participant_code": frappe.generate_hash(length=10).upper(), + "first_name": first_name, + "last_name": last_name, + "id_number": id_number, + "date_of_birth": payload.get("date_of_birth"), + "gender": payload.get("gender"), + "nationality": nationality, + "email": email, + "phone": phone, + "whatsapp": _clean(payload.get("whatsapp")), + "shirt_size": _clean(payload.get("shirt_size")), + "emergency_contact_name": _clean( + payload.get("emergency_contact_name") + ), + "emergency_contact_phone": _clean( + payload.get("emergency_contact_phone") + ), + "communication_consent": int( + bool(payload.get("communication_consent")) + ), + } + ) + participant.insert(ignore_permissions=True) + + duplicate = frappe.db.exists( + "Registration", + { + "participant": participant.name, + "event_edition": edition.name, + "registration_status": ["not in", ["Cancelled", "Refunded"]], + }, + ) + + if duplicate: + frappe.throw( + _("This participant already has an active registration for this edition.") + ) + + amount_due = _get_price(category, price_tier, nationality) + + registration = frappe.get_doc( + { + "doctype": "Registration", + "participant": participant.name, + "event_edition": edition.name, + "race_category": category.name, + "registration_status": "Pending", + "registration_date": now_datetime(), + "price_tier": price_tier, + "amount_due": amount_due, + "payment_status": "Unpaid", + "indemnity_accepted": 1, + "consent_timestamp": now_datetime(), + } + ) + + registration.insert(ignore_permissions=True) + + return { + "success": True, + "registration": registration.name, + "participant": participant.name, + "event_edition": edition.name, + "race_category": category.name, + "amount_due": amount_due, + "currency": "KES", + "payment_status": registration.payment_status, + "registration_status": registration.registration_status, + } + + +@frappe.whitelist() +def seed_demo_data(): + """Create development event data for the Lukenya Marathon site.""" + edition_code = "LUKENYA-2026" + + if frappe.db.exists("Event Edition", edition_code): + edition = frappe.get_doc("Event Edition", edition_code) + else: + edition = frappe.get_doc( + { + "doctype": "Event Edition", + "edition_code": edition_code, + "edition_name": "Lukenya University Marathon 2026", + "event_date": "2026-03-28", + "status": "Open", + "venue": "Lukenya University Main Campus", + "county": "Machakos County", + "description": ( + "Annual Lukenya University Marathon at Lukenya Hills." + ), + "registration_capacity": 1000, + "trees_commitment_per_entry": 1, + } + ) + edition.insert(ignore_permissions=True) + + categories = [ + { + "code": "42KM", + "name": "Full Marathon", + "discipline": "Running", + "distance": 42.2, + "start": "06:00:00", + "cutoff": 6, + "kenyan": 2500, + "non_resident": 50, + "early": 2000, + "capacity": 300, + "prize": 1, + }, + { + "code": "21KM", + "name": "Half Marathon", + "discipline": "Running", + "distance": 21.1, + "start": "06:00:00", + "cutoff": 3.5, + "kenyan": 1800, + "non_resident": 40, + "early": 1500, + "capacity": 300, + "prize": 0, + }, + { + "code": "15KM", + "name": "Community Run", + "discipline": "Running", + "distance": 15, + "start": "06:30:00", + "cutoff": 2.5, + "kenyan": 1200, + "non_resident": 30, + "early": 1000, + "capacity": 150, + "prize": 0, + }, + { + "code": "10KM", + "name": "Local Race", + "discipline": "Running", + "distance": 10, + "start": "06:30:00", + "cutoff": 2, + "kenyan": 1000, + "non_resident": 25, + "early": 800, + "capacity": 150, + "prize": 0, + }, + { + "code": "5KM", + "name": "Fun Run", + "discipline": "Running", + "distance": 5, + "start": "07:00:00", + "cutoff": 1.5, + "kenyan": 500, + "non_resident": 15, + "early": 400, + "capacity": 100, + "prize": 0, + }, + { + "code": "50KM-CYCLE", + "name": "Black Mamba Cycle", + "discipline": "Cycling", + "distance": 50, + "start": "06:00:00", + "cutoff": 6, + "kenyan": 2500, + "non_resident": 50, + "early": 2000, + "capacity": 100, + "prize": 0, + }, + { + "code": "VIRTUAL", + "name": "Virtual Run", + "discipline": "Virtual", + "distance": 0, + "start": "00:00:00", + "cutoff": 0, + "kenyan": 800, + "non_resident": 20, + "early": 600, + "capacity": 1000, + "prize": 0, + }, + ] + + created = [] + + for item in categories: + if frappe.db.exists("Race Category", item["code"]): + category = frappe.get_doc("Race Category", item["code"]) + category.category_name = item["name"] + category.event_edition = edition.name + category.discipline = item["discipline"] + category.distance_km = item["distance"] + category.start_time = item["start"] + category.cutoff_hours = item["cutoff"] + category.kenyan_price = item["kenyan"] + category.non_resident_price = item["non_resident"] + category.early_bird_price = item["early"] + category.capacity = item["capacity"] + category.active = 1 + category.prize_eligible = item["prize"] + category.inclusions = ( + "Race bib, chip timing, finisher medal, event T-shirt" + ) + category.save(ignore_permissions=True) + else: + category = frappe.get_doc( + { + "doctype": "Race Category", + "category_code": item["code"], + "category_name": item["name"], + "event_edition": edition.name, + "discipline": item["discipline"], + "distance_km": item["distance"], + "start_time": item["start"], + "cutoff_hours": item["cutoff"], + "kenyan_price": item["kenyan"], + "non_resident_price": item["non_resident"], + "early_bird_price": item["early"], + "capacity": item["capacity"], + "active": 1, + "prize_eligible": item["prize"], + "inclusions": ( + "Race bib, chip timing, finisher medal, event T-shirt" + ), + } + ) + category.insert(ignore_permissions=True) + + created.append(category.name) + + frappe.db.commit() + + return { + "success": True, + "event_edition": edition.name, + "categories": created, + } + + +@frappe.whitelist() +def setup_lukenya_workspace(): + workspace_name = "Lukenya Marathon" + + shortcut_definitions = [ + ("Event Edition", "Event Editions", "Calendar"), + ("Race Category", "Race Categories", "List"), + ("Participant", "Participants", "List"), + ("Registration", "Registrations", "List"), + ("Payment Transaction", "Payment Transactions", "List"), + ("Bib Allocation", "Bib Allocations", "List"), + ("Race Pack Issue", "Race Pack Issues", "List"), + ("Timing Result", "Timing Results", "List"), + ("Prize Rule", "Prize Rules", "List"), + ("Prize Award", "Prize Awards", "List"), + ("Tree Impact Record", "Tree Impact Records", "List"), + ("Volunteer", "Volunteers", "List"), + ("Volunteer Shift", "Volunteer Shifts", "List"), + ] + + existing = frappe.db.exists("Workspace", workspace_name) + + if existing: + workspace = frappe.get_doc("Workspace", workspace_name) + workspace.shortcuts = [] + else: + workspace = frappe.get_doc( + { + "doctype": "Workspace", + "name": workspace_name, + "title": workspace_name, + "label": workspace_name, + "module": "Lukenya Marathon", + "public": 1, + "is_hidden": 0, + } + ) + + added = [] + + for doctype, label, doc_view in shortcut_definitions: + if not frappe.db.exists("DocType", doctype): + continue + + workspace.append( + "shortcuts", + { + "type": "DocType", + "link_to": doctype, + "label": label, + "doc_view": doc_view, + "icon": "list", + }, + ) + added.append(doctype) + + if existing: + workspace.save(ignore_permissions=True) + else: + workspace.insert(ignore_permissions=True) + frappe.db.commit() + + return { + "success": True, + "workspace": workspace.name, + "shortcuts_added": added, + "shortcut_count": len(added), + } + + +@frappe.whitelist() +def repair_lukenya_workspace_content(): + import json + + workspace_name = "Lukenya Marathon" + + shortcuts = [ + ("Event Edition", "Event Editions"), + ("Race Category", "Race Categories"), + ("Participant", "Participants"), + ("Registration", "Registrations"), + ("Payment Transaction", "Payment Transactions"), + ("Bib Allocation", "Bib Allocations"), + ("Race Pack Issue", "Race Pack Issues"), + ("Timing Result", "Timing Results"), + ("Prize Rule", "Prize Rules"), + ("Prize Award", "Prize Awards"), + ("Tree Impact Record", "Tree Impact Records"), + ("Volunteer", "Volunteers"), + ("Volunteer Shift", "Volunteer Shifts"), + ] + + content = [ + { + "id": "lukenya-marathon-header", + "type": "header", + "data": { + "text": "Marathon Operations", + "col": 12, + }, + } + ] + + for index, (doctype, label) in enumerate(shortcuts, start=1): + if frappe.db.exists("DocType", doctype): + content.append( + { + "id": f"lukenya-shortcut-{index}", + "type": "shortcut", + "data": { + "shortcut_name": doctype, + "label": label, + "col": 3, + }, + } + ) + + frappe.db.set_value( + "Workspace", + workspace_name, + "content", + json.dumps(content), + update_modified=True, + ) + + frappe.db.commit() + + return { + "success": True, + "workspace": workspace_name, + "content_blocks": len(content), + "shortcuts_rendered": len(content) - 1, + } + + +@frappe.whitelist() +def repair_lukenya_workspace_shortcuts(): + import json + + workspace_name = "Lukenya Marathon" + + shortcut_rows = frappe.get_all( + "Workspace Shortcut", + filters={ + "parent": workspace_name, + "parenttype": "Workspace", + "parentfield": "shortcuts", + }, + fields=["name", "label"], + order_by="idx asc", + ) + + content = [ + { + "id": "lukenya-marathon-header", + "type": "header", + "data": { + "text": "Marathon Operations", + "col": 12, + }, + } + ] + + for index, shortcut in enumerate(shortcut_rows, start=1): + content.append( + { + "id": f"lukenya-shortcut-{index}", + "type": "shortcut", + "data": { + "shortcut_name": shortcut.name, + "col": 3, + }, + } + ) + + frappe.db.set_value( + "Workspace", + workspace_name, + "content", + json.dumps(content), + update_modified=True, + ) + + frappe.db.commit() + + return { + "success": True, + "workspace": workspace_name, + "shortcuts_found": len(shortcut_rows), + "content_blocks": len(content), + "shortcut_record_names": [row.name for row in shortcut_rows], + } + + +@frappe.whitelist() +def finalize_lukenya_workspace(): + import json + + workspace_name = "Lukenya Marathon" + + doctype_shortcuts = [ + ("Event Edition", "Event Editions"), + ("Race Category", "Race Categories"), + ("Participant", "Participants"), + ("Registration", "Registrations"), + ("Payment Transaction", "Payment Transactions"), + ("Bib Allocation", "Bib Allocations"), + ("Race Pack Issue", "Race Pack Issues"), + ("Timing Result", "Timing Results"), + ("Prize Rule", "Prize Rules"), + ("Prize Award", "Prize Awards"), + ("Tree Impact Record", "Tree Impact Records"), + ("Volunteer", "Volunteers"), + ("Volunteer Shift", "Volunteer Shifts"), + ] + + content = [ + { + "id": "lukenya-marathon-header", + "type": "header", + "data": { + "text": "Marathon Operations", + "col": 12, + }, + } + ] + + for index, (doctype, label) in enumerate(doctype_shortcuts, start=1): + if frappe.db.exists("DocType", doctype): + content.append( + { + "id": f"lukenya-shortcut-{index}", + "type": "shortcut", + "data": { + "shortcut_name": doctype, + "label": label, + "col": 3, + }, + } + ) + + frappe.db.set_value( + "Workspace", + workspace_name, + "content", + json.dumps(content), + update_modified=True, + ) + + frappe.db.commit() + + return { + "success": True, + "workspace": workspace_name, + "shortcuts_rendered": len(content) - 1, + "shortcuts": [item[0] for item in doctype_shortcuts], + } + + +@frappe.whitelist() +def set_minimal_lukenya_workspace_content(): + import json + + workspace_name = "Lukenya Marathon" + + doctypes = [ + "Event Edition", + "Race Category", + "Participant", + "Registration", + "Payment Transaction", + "Bib Allocation", + "Race Pack Issue", + "Timing Result", + "Prize Rule", + "Prize Award", + "Tree Impact Record", + "Volunteer", + "Volunteer Shift", + ] + + content = [ + { + "id": "lukenya-header", + "type": "header", + "data": { + "text": "Marathon Operations", + "col": 12, + }, + } + ] + + for index, doctype in enumerate(doctypes, start=1): + if frappe.db.exists("DocType", doctype): + content.append( + { + "id": f"lukenya-shortcut-{index}", + "type": "shortcut", + "data": { + "shortcut_name": doctype, + "col": 3, + }, + } + ) + + frappe.db.set_value( + "Workspace", + workspace_name, + "content", + json.dumps(content, separators=(",", ":")), + update_modified=True, + ) + + frappe.db.commit() + + return { + "success": True, + "workspace": workspace_name, + "shortcuts": len(content) - 1, + } + + +@frappe.whitelist() +def diagnose_lukenya_workspace(): + import json + + workspace_name = "Lukenya Marathon" + report = { + "workspace": workspace_name, + "current_user": frappe.session.user, + "workspace_exists": False, + "workspace_fields": {}, + "content_parse_ok": False, + "content_blocks": [], + "shortcut_diagnostics": [], + "child_shortcuts": [], + "errors": [], + "warnings": [], + } + + if not frappe.db.exists("Workspace", workspace_name): + report["errors"].append("Workspace does not exist.") + return report + + report["workspace_exists"] = True + + workspace = frappe.get_doc("Workspace", workspace_name) + + report["workspace_fields"] = { + "name": workspace.name, + "title": workspace.title, + "label": workspace.label, + "module": workspace.module, + "public": workspace.public, + "is_hidden": workspace.is_hidden, + "hide_custom": workspace.hide_custom, + "for_user": workspace.for_user, + "restrict_to_domain": workspace.restrict_to_domain, + "content_length": len(workspace.content or ""), + } + + if workspace.is_hidden: + report["errors"].append("Workspace is marked as hidden.") + + if workspace.for_user and workspace.for_user != frappe.session.user: + report["errors"].append( + "Workspace is restricted to another user: " + + str(workspace.for_user) + ) + + try: + content = json.loads(workspace.content or "[]") + report["content_parse_ok"] = True + except Exception as exc: + report["errors"].append( + "Workspace content is invalid JSON: " + repr(exc) + ) + return report + + if not isinstance(content, list): + report["errors"].append("Workspace content is not a JSON list.") + return report + + report["content_blocks"] = content + + child_shortcuts = frappe.get_all( + "Workspace Shortcut", + filters={ + "parent": workspace_name, + "parenttype": "Workspace", + "parentfield": "shortcuts", + }, + fields=[ + "name", + "idx", + "type", + "link_to", + "label", + "doc_view", + ], + order_by="idx asc", + ) + + report["child_shortcuts"] = child_shortcuts + + child_by_link = { + row.link_to: row + for row in child_shortcuts + if row.link_to + } + + for index, block in enumerate(content, start=1): + if not isinstance(block, dict): + report["errors"].append( + f"Content block {index} is not an object." + ) + continue + + block_type = block.get("type") + data = block.get("data") or {} + + if block_type != "shortcut": + continue + + shortcut_name = data.get("shortcut_name") + + diagnostic = { + "content_index": index, + "shortcut_name": shortcut_name, + "doctype_exists": False, + "child_shortcut_exists": False, + "read_permission": False, + "doctype_meta": {}, + "errors": [], + "warnings": [], + } + + if not shortcut_name: + diagnostic["errors"].append( + "Shortcut has no data.shortcut_name value." + ) + report["shortcut_diagnostics"].append(diagnostic) + continue + + doctype_exists = frappe.db.exists("DocType", shortcut_name) + diagnostic["doctype_exists"] = bool(doctype_exists) + + if not doctype_exists: + diagnostic["errors"].append( + "No DocType exists with this exact name." + ) + else: + try: + meta = frappe.get_meta(shortcut_name) + + diagnostic["doctype_meta"] = { + "name": meta.name, + "module": meta.module, + "istable": meta.istable, + "issingle": meta.issingle, + "is_virtual": getattr(meta, "is_virtual", False), + "read_only": getattr(meta, "read_only", False), + } + + diagnostic["read_permission"] = bool( + frappe.has_permission( + shortcut_name, + ptype="read", + user=frappe.session.user, + ) + ) + + if not diagnostic["read_permission"]: + diagnostic["errors"].append( + "Current user has no read permission." + ) + + if meta.istable: + diagnostic["errors"].append( + "Target DocType is a child table, not a desk list DocType." + ) + + if meta.issingle: + diagnostic["warnings"].append( + "Target DocType is single; it may not render as a list shortcut." + ) + + except Exception as exc: + diagnostic["errors"].append( + "Could not inspect DocType metadata: " + repr(exc) + ) + + if shortcut_name not in child_by_link: + diagnostic["warnings"].append( + "No Workspace Shortcut child row has link_to equal to this target." + ) + else: + diagnostic["child_shortcut_exists"] = True + + report["shortcut_diagnostics"].append(diagnostic) + + if not report["shortcut_diagnostics"]: + report["errors"].append( + "Workspace content contains no shortcut blocks." + ) + + if report["content_parse_ok"] and not report["errors"]: + report["warnings"].append( + "Backend validation found no shortcut data errors. " + "If shortcuts remain invisible, inspect the browser Network response " + "for get_desktop_page and the loaded frontend asset version." + ) + + return report + + +@frappe.whitelist() +def setup_lukenya_card_dashboard(): + import json + + workspace_name = "Lukenya Marathon" + + cards = [ + { + "label": "Event Setup", + "links": [ + ("Event Editions", "Event Edition"), + ("Race Categories", "Race Category"), + ], + }, + { + "label": "Registration Management", + "links": [ + ("Participants", "Participant"), + ("Registrations", "Registration"), + ("Payment Transactions", "Payment Transaction"), + ], + }, + { + "label": "Race-Day Operations", + "links": [ + ("Bib Allocations", "Bib Allocation"), + ("Race Pack Issues", "Race Pack Issue"), + ("Volunteer Shifts", "Volunteer Shift"), + ], + }, + { + "label": "Results and Awards", + "links": [ + ("Timing Results", "Timing Result"), + ("Prize Rules", "Prize Rule"), + ("Prize Awards", "Prize Award"), + ], + }, + { + "label": "People and Impact", + "links": [ + ("Volunteers", "Volunteer"), + ("Tree Impact Records", "Tree Impact Record"), + ], + }, + ] + + workspace = frappe.get_doc("Workspace", workspace_name) + + # Remove old link rows and rebuild only this workspace's links. + workspace.set("links", []) + + workspace_content = [ + { + "id": "lukenya-dashboard-header", + "type": "header", + "data": { + "text": "Marathon Operations", + "col": 12, + }, + } + ] + + created_links = [] + + for card_index, card in enumerate(cards, start=1): + workspace.append( + "links", + { + "type": "Card Break", + "label": card["label"], + "hidden": 0, + }, + ) + + workspace_content.append( + { + "id": f"lukenya-card-{card_index}", + "type": "card", + "data": { + "card_name": card["label"], + "col": 4, + }, + } + ) + + for label, doctype in card["links"]: + if not frappe.db.exists("DocType", doctype): + continue + + workspace.append( + "links", + { + "type": "Link", + "label": label, + "link_type": "DocType", + "link_to": doctype, + "hidden": 0, + "dependencies": "", + }, + ) + + created_links.append(doctype) + + # Remove shortcut blocks. Cards and links will be the dashboard interface. + frappe.db.set_value( + "Workspace", + workspace_name, + "content", + json.dumps(workspace_content, separators=(",", ":")), + update_modified=False, + ) + + workspace.save(ignore_permissions=True) + frappe.db.commit() + + return { + "success": True, + "workspace": workspace_name, + "cards_created": len(cards), + "links_created": len(created_links), + "links": created_links, + } + + +@frappe.whitelist() +def finalize_lukenya_card_dashboard(): + import json + + workspace_name = "Lukenya Marathon" + + cards = [ + { + "label": "Event Setup", + "links": [ + ("Event Editions", "Event Edition"), + ("Race Categories", "Race Category"), + ], + }, + { + "label": "Registration Management", + "links": [ + ("Participants", "Participant"), + ("Registrations", "Registration"), + ("Payment Transactions", "Payment Transaction"), + ], + }, + { + "label": "Race-Day Operations", + "links": [ + ("Bib Allocations", "Bib Allocation"), + ("Race Pack Issues", "Race Pack Issue"), + ("Volunteer Shifts", "Volunteer Shift"), + ], + }, + { + "label": "Results and Awards", + "links": [ + ("Timing Results", "Timing Result"), + ("Prize Rules", "Prize Rule"), + ("Prize Awards", "Prize Award"), + ], + }, + { + "label": "People and Impact", + "links": [ + ("Volunteers", "Volunteer"), + ("Tree Impact Records", "Tree Impact Record"), + ], + }, + ] + + workspace = frappe.get_doc("Workspace", workspace_name) + workspace.set("shortcuts", []) + workspace.set("links", []) + + created_links = [] + + for card in cards: + workspace.append( + "links", + { + "type": "Card Break", + "label": card["label"], + "hidden": 0, + }, + ) + + for label, doctype in card["links"]: + if not frappe.db.exists("DocType", doctype): + continue + + workspace.append( + "links", + { + "type": "Link", + "label": label, + "link_type": "DocType", + "link_to": doctype, + "hidden": 0, + "dependencies": "", + }, + ) + created_links.append(doctype) + + # Save the Workspace Links first. + workspace.save(ignore_permissions=True) + + # Frappe 15 renders Card Break groups from content. + content = [ + { + "id": "lukenya-header", + "type": "header", + "data": { + "text": "Marathon Operations", + "col": 12, + }, + } + ] + + for index, card in enumerate(cards, start=1): + content.append( + { + "id": f"lukenya-card-{index}", + "type": "card", + "data": { + "card_name": card["label"], + "col": 4, + }, + } + ) + + # Write content after save so workspace.save cannot overwrite it. + frappe.db.set_value( + "Workspace", + workspace_name, + "content", + json.dumps(content, separators=(",", ":")), + update_modified=True, + ) + + frappe.db.commit() + + return { + "success": True, + "workspace": workspace_name, + "cards_created": len(cards), + "links_created": len(created_links), + "links": created_links, + "content": content, + } diff --git a/lukenya_marathon/lukenya_marathon/bibs.py b/lukenya_marathon/lukenya_marathon/bibs.py new file mode 100644 index 0000000..86440fb --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/bibs.py @@ -0,0 +1,35 @@ +"""Bib operations that need more than one record to change together.""" + +import frappe +from frappe import _ + +from lukenya_marathon.lukenya_marathon.doctype.bib_allocation.bib_allocation import LIVE + +ROLES = ("System Manager", "Race Director", "Registration Desk") + + +@frappe.whitelist() +def replace_bib(registration, new_bib, chip_number=None, reason=None): + """Retire an entry's current bib (kept as Replaced, so the number isn't reused) and issue a new one.""" + frappe.only_for(ROLES) + new_bib = (new_bib or "").strip().upper() + current = frappe.db.get_value( + "Bib Allocation", {"registration": registration, "status": ["in", list(LIVE)]}, ["name", "bib_number"], as_dict=True + ) + if not current: + frappe.throw(_("This entry has no bib to replace.")) + if new_bib == current.bib_number: + frappe.throw(_("The new bib is the same as the current one.")) + + note = _("Replaced by {0}.").format(new_bib) + (" " + reason if reason else "") + frappe.db.set_value("Bib Allocation", current.name, {"status": "Replaced", "notes": note}) + doc = frappe.get_doc({ + "doctype": "Bib Allocation", + "registration": registration, + "bib_number": new_bib, + "chip_number": chip_number or "", + "status": "Allocated", + "notes": _("Replaces {0}.").format(current.bib_number) + (" " + reason if reason else ""), + }) + doc.insert() + return {"bib": new_bib, "replaced": current.bib_number} diff --git a/lukenya_marathon/lukenya_marathon/dashboard.py b/lukenya_marathon/lukenya_marathon/dashboard.py new file mode 100644 index 0000000..41cb796 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/dashboard.py @@ -0,0 +1,106 @@ +"""Server-side data for the Lukenya Marathon dashboard page.""" + +import frappe +from frappe.utils import add_days, flt, getdate, nowdate + +CURRENCY = "KES" +PAID_STATUSES = ("Paid", "Reconciled") + + +def _count(doctype, filters=None): + if not frappe.db.exists("DocType", doctype): + return 0 + return frappe.db.count(doctype, filters or {}) + + +def _created_between(doctype, start, end): + return _count(doctype, {"creation": ["between", [start, end]]}) + + +def _revenue(start=None, end=None): + """Sum of paid/reconciled payments, optionally limited to a date window.""" + if not frappe.db.exists("DocType", "Payment Transaction"): + return 0.0 + + values = {"paid": PAID_STATUSES} + window = "" + if start and end: + window = "and date(coalesce(payment_date, creation)) between %(start)s and %(end)s" + values.update(start=start, end=end) + + result = frappe.db.sql( + f""" + select coalesce(sum(amount), 0) + from `tabPayment Transaction` + where status in %(paid)s {window} + """, + values, + ) + return flt(result[0][0]) + + +def _trend(current, previous): + """Percent change against the previous period, or None if there is nothing to compare.""" + if not previous: + return None + return round((flt(current) - flt(previous)) / flt(previous) * 100) + + +def _current_edition(): + fields = ["name", "edition_name", "event_date", "status"] + edition = frappe.db.get_value( + "Event Edition", {"status": "Open"}, fields, as_dict=True, order_by="event_date desc" + ) + return edition or frappe.db.get_value( + "Event Edition", {}, fields, as_dict=True, order_by="event_date desc" + ) + + +@frappe.whitelist() +def get_dashboard_stats(): + frappe.only_for("System Manager") + + today = getdate(nowdate()) + recent_start, recent_end = add_days(today, -29), today + prior_start, prior_end = add_days(today, -59), add_days(today, -30) + + participants_recent = _created_between("Participant", recent_start, recent_end) + participants_prior = _created_between("Participant", prior_start, prior_end) + + editions_recent = _created_between("Event Edition", recent_start, recent_end) + editions_prior = _created_between("Event Edition", prior_start, prior_end) + + revenue_recent = _revenue(recent_start, recent_end) + revenue_prior = _revenue(prior_start, prior_end) + + return { + "currency": CURRENCY, + "edition": _current_edition(), + "kpis": { + "participants": { + "value": _count("Participant"), + "trend": _trend(participants_recent, participants_prior), + }, + "editions": { + "value": _count("Event Edition"), + "trend": _trend(editions_recent, editions_prior), + }, + "revenue": { + "value": _revenue(), + "trend": _trend(revenue_recent, revenue_prior), + }, + "categories": { + "value": _count("Race Category", {"active": 1}), + "trend": None, + }, + }, + "tiles": { + "event_setup": _count("Event Edition"), + "race_categories": _count("Race Category"), + "registrations": _count("Registration"), + "payments": _count("Payment Transaction"), + "race_day": _count("Bib Allocation"), + "prizes": _count("Prize Award"), + "volunteers": _count("Volunteer"), + }, + } diff --git a/lukenya_marathon/lukenya_marathon/doctype/bib_allocation/__init__.py b/lukenya_marathon/lukenya_marathon/doctype/bib_allocation/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/doctype/bib_allocation/bib_allocation.json b/lukenya_marathon/lukenya_marathon/doctype/bib_allocation/bib_allocation.json new file mode 100644 index 0000000..c7c3e9d --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/bib_allocation/bib_allocation.json @@ -0,0 +1,109 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:BIB-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "registration", + "event_edition", + "bib_number", + "chip_number", + "status", + "allocated_on", + "notes" + ], + "fields": [ + { + "fieldname": "registration", + "fieldtype": "Link", + "label": "Registration", + "reqd": 1, + "options": "Registration" + }, + { + "fieldname": "event_edition", + "fieldtype": "Link", + "options": "Event Edition", + "label": "Event Edition", + "read_only": 1, + "in_list_view": 1, + "in_standard_filter": 1 + }, + { + "fieldname": "bib_number", + "fieldtype": "Data", + "label": "Bib Number", + "reqd": 1 + }, + { + "fieldname": "chip_number", + "fieldtype": "Data", + "label": "Chip Number", + "reqd": 0 + }, + { + "fieldname": "status", + "fieldtype": "Select", + "label": "Status", + "reqd": 1, + "options": "Allocated\nPrinted\nIssued\nReplaced\nCancelled" + }, + { + "fieldname": "allocated_on", + "fieldtype": "Datetime", + "label": "Allocated On", + "reqd": 0 + }, + { + "fieldname": "notes", + "fieldtype": "Small Text", + "label": "Notes", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Bib Allocation", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + }, + { + "role": "Registration Desk", + "read": 1, + "write": 1, + "create": 1 + }, + { + "role": "Timing Officer", + "read": 1 + }, + { + "role": "Race Director", + "read": 1, + "write": 1, + "create": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1, + "title_field": "bib_number", + "show_title_field_in_link": 1, + "search_fields": "bib_number,registration", + "modified": "2026-09-21 23:14:17.826333" +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/bib_allocation/bib_allocation.json.bak b/lukenya_marathon/lukenya_marathon/doctype/bib_allocation/bib_allocation.json.bak new file mode 100644 index 0000000..50d70e7 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/bib_allocation/bib_allocation.json.bak @@ -0,0 +1,79 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "field:bib_number", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "registration", + "bib_number", + "chip_number", + "status", + "allocated_on", + "notes" + ], + "fields": [ + { + "fieldname": "registration", + "fieldtype": "Link", + "label": "Registration", + "reqd": 1, + "options": "Registration" + }, + { + "fieldname": "bib_number", + "fieldtype": "Data", + "label": "Bib Number", + "reqd": 1 + }, + { + "fieldname": "chip_number", + "fieldtype": "Data", + "label": "Chip Number", + "reqd": 0 + }, + { + "fieldname": "status", + "fieldtype": "Select", + "label": "Status", + "reqd": 1, + "options": "Allocated\nPrinted\nIssued\nReplaced\nCancelled" + }, + { + "fieldname": "allocated_on", + "fieldtype": "Datetime", + "label": "Allocated On", + "reqd": 0 + }, + { + "fieldname": "notes", + "fieldtype": "Small Text", + "label": "Notes", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Bib Allocation", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1 +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/bib_allocation/bib_allocation.py b/lukenya_marathon/lukenya_marathon/doctype/bib_allocation/bib_allocation.py new file mode 100644 index 0000000..48b746d --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/bib_allocation/bib_allocation.py @@ -0,0 +1,62 @@ +import frappe +from frappe import _ +from frappe.model.document import Document +from frappe.utils import now_datetime + +from lukenya_marathon.lukenya_marathon import settings + +LIVE = ("Allocated", "Printed", "Issued") + + +class BibAllocation(Document): + def validate(self): + reg = frappe.db.get_value( + "Registration", self.registration, + ["event_edition", "registration_status", "payment_status", "price_tier"], as_dict=True, + ) + if not reg: + frappe.throw(_("Registration {0} was not found.").format(self.registration)) + + self.event_edition = reg.event_edition + self.bib_number = (self.bib_number or "").strip().upper() + self.chip_number = (self.chip_number or "").strip() + if not self.bib_number: + frappe.throw(_("Bib number is required.")) + if not self.allocated_on: + self.allocated_on = now_datetime() + + self.validate_unique_in_edition() + if self.status in LIVE: + self.validate_one_live_bib() + if self.is_new(): + self.validate_eligible(reg) + + def validate_unique_in_edition(self): + """A bib number belongs to one runner per edition. Cancelled bibs free the number.""" + clash = frappe.db.get_value( + "Bib Allocation", + { + "event_edition": self.event_edition, + "bib_number": self.bib_number, + "status": ["!=", "Cancelled"], + "name": ["!=", self.name or ""], + }, + "name", + ) + if clash and self.status != "Cancelled": + frappe.throw(_("Bib {0} is already used in this edition.").format(self.bib_number)) + + def validate_one_live_bib(self): + other = frappe.db.get_value( + "Bib Allocation", + {"registration": self.registration, "status": ["in", list(LIVE)], "name": ["!=", self.name or ""]}, + "bib_number", + ) + if other: + frappe.throw(_("This entry already has bib {0}. Use Replace bib, or cancel that bib first.").format(other)) + + def validate_eligible(self, reg): + if reg.registration_status not in ("Confirmed", "Completed"): + frappe.throw(_("Only confirmed entries can be given a bib.")) + if settings.get("bibs_require_payment") and reg.payment_status != "Paid" and reg.price_tier != "Complimentary": + frappe.throw(_("This entry hasn't been paid for, so it can't be given a bib.")) diff --git a/lukenya_marathon/lukenya_marathon/doctype/check_in/__init__.py b/lukenya_marathon/lukenya_marathon/doctype/check_in/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/doctype/check_in/check_in.json b/lukenya_marathon/lukenya_marathon/doctype/check_in/check_in.json new file mode 100644 index 0000000..50fa545 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/check_in/check_in.json @@ -0,0 +1,105 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:CHK-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "registration", + "bib_number", + "check_in_time", + "check_in_method", + "status", + "staff_member", + "notes" + ], + "fields": [ + { + "fieldname": "registration", + "fieldtype": "Link", + "label": "Registration", + "reqd": 1, + "options": "Registration" + }, + { + "fieldname": "bib_number", + "fieldtype": "Data", + "label": "Bib Number", + "reqd": 0 + }, + { + "fieldname": "check_in_time", + "fieldtype": "Datetime", + "label": "Check-in Time", + "reqd": 1 + }, + { + "fieldname": "check_in_method", + "fieldtype": "Select", + "label": "Check-in Method", + "reqd": 1, + "options": "Desk\nQR Code\nManual\nMobile" + }, + { + "fieldname": "status", + "fieldtype": "Select", + "label": "Status", + "reqd": 1, + "options": "Checked In\nDid Not Start\nWithdrawn" + }, + { + "fieldname": "staff_member", + "fieldtype": "Link", + "label": "Staff Member", + "reqd": 0, + "options": "User" + }, + { + "fieldname": "notes", + "fieldtype": "Small Text", + "label": "Notes", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Check-in", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + }, + { + "role": "Registration Desk", + "read": 1, + "write": 1, + "create": 1 + }, + { + "role": "Timing Officer", + "read": 1 + }, + { + "role": "Race Director", + "read": 1, + "write": 1, + "create": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1, + "modified": "2026-09-21 23:14:17.845575" +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/check_in/check_in.json.bak b/lukenya_marathon/lukenya_marathon/doctype/check_in/check_in.json.bak new file mode 100644 index 0000000..1cd0c67 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/check_in/check_in.json.bak @@ -0,0 +1,88 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:CHK-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "registration", + "bib_number", + "check_in_time", + "check_in_method", + "status", + "staff_member", + "notes" + ], + "fields": [ + { + "fieldname": "registration", + "fieldtype": "Link", + "label": "Registration", + "reqd": 1, + "options": "Registration" + }, + { + "fieldname": "bib_number", + "fieldtype": "Data", + "label": "Bib Number", + "reqd": 0 + }, + { + "fieldname": "check_in_time", + "fieldtype": "Datetime", + "label": "Check-in Time", + "reqd": 1 + }, + { + "fieldname": "check_in_method", + "fieldtype": "Select", + "label": "Check-in Method", + "reqd": 1, + "options": "Desk\nQR Code\nManual\nMobile" + }, + { + "fieldname": "status", + "fieldtype": "Select", + "label": "Status", + "reqd": 1, + "options": "Checked In\nDid Not Start\nWithdrawn" + }, + { + "fieldname": "staff_member", + "fieldtype": "Link", + "label": "Staff Member", + "reqd": 0, + "options": "User" + }, + { + "fieldname": "notes", + "fieldtype": "Small Text", + "label": "Notes", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Check-in", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1 +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/check_in/check_in.py b/lukenya_marathon/lukenya_marathon/doctype/check_in/check_in.py new file mode 100644 index 0000000..397108d --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/check_in/check_in.py @@ -0,0 +1,5 @@ +from frappe.model.document import Document + + +class CheckIn(Document): + pass diff --git a/lukenya_marathon/lukenya_marathon/doctype/event_edition/event_edition.json b/lukenya_marathon/lukenya_marathon/doctype/event_edition/event_edition.json index 6113220..560a776 100644 --- a/lukenya_marathon/lukenya_marathon/doctype/event_edition/event_edition.json +++ b/lukenya_marathon/lukenya_marathon/doctype/event_edition/event_edition.json @@ -1,108 +1,129 @@ { - "actions": [], - "allow_rename": 1, - "autoname": "field:edition_code", - "doctype": "DocType", - "editable_grid": 1, - "engine": "InnoDB", - "field_order": [ - "edition_code", - "edition_name", - "event_date", - "registration_open", - "registration_close", - "status", - "venue", - "county", - "description", - "registration_capacity", - "trees_commitment_per_entry" - ], - "fields": [ - { - "fieldname": "edition_code", - "fieldtype": "Data", - "label": "Edition Code", - "reqd": 1, - "unique": 1 - }, - { - "fieldname": "edition_name", - "fieldtype": "Data", - "label": "Edition Name", - "reqd": 1 - }, - { - "fieldname": "event_date", - "fieldtype": "Date", - "label": "Event Date", - "reqd": 1 - }, - { - "fieldname": "registration_open", - "fieldtype": "Datetime", - "label": "Registration Open" - }, - { - "fieldname": "registration_close", - "fieldtype": "Datetime", - "label": "Registration Close" - }, - { - "default": "Draft", - "fieldname": "status", - "fieldtype": "Select", - "label": "Status", - "options": "Draft\nOpen\nClosed\nCompleted\nCancelled", - "reqd": 1 - }, - { - "fieldname": "venue", - "fieldtype": "Data", - "label": "Venue", - "reqd": 1 - }, - { - "fieldname": "county", - "fieldtype": "Data", - "label": "County" - }, - { - "fieldname": "description", - "fieldtype": "Text Editor", - "label": "Public Description" - }, - { - "fieldname": "registration_capacity", - "fieldtype": "Int", - "label": "Registration Capacity" - }, - { - "default": "1", - "fieldname": "trees_commitment_per_entry", - "fieldtype": "Int", - "label": "Trees per Eligible Entry", - "reqd": 1 - } - ], - "links": [], - "module": "Lukenya Marathon", - "name": "Event Edition", - "permissions": [ - { - "create": 1, - "delete": 1, - "email": 1, - "export": 1, - "print": 1, - "read": 1, - "report": 1, - "role": "System Manager", - "share": 1, - "write": 1 - } - ], - "sort_field": "modified", - "sort_order": "DESC", - "track_changes": 1 + "actions": [], + "allow_rename": 1, + "autoname": "field:edition_code", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "edition_code", + "edition_name", + "event_date", + "registration_open", + "registration_close", + "early_bird_ends", + "status", + "venue", + "county", + "description", + "registration_capacity", + "trees_commitment_per_entry" + ], + "fields": [ + { + "fieldname": "edition_code", + "fieldtype": "Data", + "label": "Edition Code", + "reqd": 1, + "unique": 1 + }, + { + "fieldname": "edition_name", + "fieldtype": "Data", + "label": "Edition Name", + "reqd": 1 + }, + { + "fieldname": "event_date", + "fieldtype": "Date", + "label": "Event Date", + "reqd": 1 + }, + { + "fieldname": "registration_open", + "fieldtype": "Datetime", + "label": "Registration Open" + }, + { + "fieldname": "registration_close", + "fieldtype": "Datetime", + "label": "Registration Close" + }, + { + "fieldname": "early_bird_ends", + "fieldtype": "Datetime", + "label": "Early-bird Ends", + "description": "Early-bird prices apply to residents until this time. Leave empty to never offer them." + }, + { + "default": "Draft", + "fieldname": "status", + "fieldtype": "Select", + "label": "Status", + "options": "Draft\nOpen\nClosed\nCompleted\nCancelled", + "reqd": 1 + }, + { + "fieldname": "venue", + "fieldtype": "Data", + "label": "Venue", + "reqd": 1 + }, + { + "fieldname": "county", + "fieldtype": "Data", + "label": "County" + }, + { + "fieldname": "description", + "fieldtype": "Text Editor", + "label": "Public Description" + }, + { + "fieldname": "registration_capacity", + "fieldtype": "Int", + "label": "Registration Capacity" + }, + { + "default": "1", + "fieldname": "trees_commitment_per_entry", + "fieldtype": "Int", + "label": "Trees per Eligible Entry", + "reqd": 1 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Event Edition", + "permissions": [ + { + "create": 1, + "delete": 1, + "email": 1, + "export": 1, + "print": 1, + "read": 1, + "report": 1, + "role": "System Manager", + "share": 1, + "write": 1 + }, + { + "role": "Registration Desk", + "read": 1 + }, + { + "role": "Timing Officer", + "read": 1 + }, + { + "role": "Race Director", + "read": 1, + "write": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1, + "modified": "2026-09-21 23:14:17.828343" } diff --git a/lukenya_marathon/lukenya_marathon/doctype/event_edition/event_edition.json.bak b/lukenya_marathon/lukenya_marathon/doctype/event_edition/event_edition.json.bak new file mode 100644 index 0000000..6113220 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/event_edition/event_edition.json.bak @@ -0,0 +1,108 @@ +{ + "actions": [], + "allow_rename": 1, + "autoname": "field:edition_code", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "edition_code", + "edition_name", + "event_date", + "registration_open", + "registration_close", + "status", + "venue", + "county", + "description", + "registration_capacity", + "trees_commitment_per_entry" + ], + "fields": [ + { + "fieldname": "edition_code", + "fieldtype": "Data", + "label": "Edition Code", + "reqd": 1, + "unique": 1 + }, + { + "fieldname": "edition_name", + "fieldtype": "Data", + "label": "Edition Name", + "reqd": 1 + }, + { + "fieldname": "event_date", + "fieldtype": "Date", + "label": "Event Date", + "reqd": 1 + }, + { + "fieldname": "registration_open", + "fieldtype": "Datetime", + "label": "Registration Open" + }, + { + "fieldname": "registration_close", + "fieldtype": "Datetime", + "label": "Registration Close" + }, + { + "default": "Draft", + "fieldname": "status", + "fieldtype": "Select", + "label": "Status", + "options": "Draft\nOpen\nClosed\nCompleted\nCancelled", + "reqd": 1 + }, + { + "fieldname": "venue", + "fieldtype": "Data", + "label": "Venue", + "reqd": 1 + }, + { + "fieldname": "county", + "fieldtype": "Data", + "label": "County" + }, + { + "fieldname": "description", + "fieldtype": "Text Editor", + "label": "Public Description" + }, + { + "fieldname": "registration_capacity", + "fieldtype": "Int", + "label": "Registration Capacity" + }, + { + "default": "1", + "fieldname": "trees_commitment_per_entry", + "fieldtype": "Int", + "label": "Trees per Eligible Entry", + "reqd": 1 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Event Edition", + "permissions": [ + { + "create": 1, + "delete": 1, + "email": 1, + "export": 1, + "print": 1, + "read": 1, + "report": 1, + "role": "System Manager", + "share": 1, + "write": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1 +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/event_edition/event_edition.py b/lukenya_marathon/lukenya_marathon/doctype/event_edition/event_edition.py new file mode 100644 index 0000000..3a91a28 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/event_edition/event_edition.py @@ -0,0 +1,21 @@ +import frappe +from frappe import _ +from frappe.model.document import Document + +from lukenya_marathon.lukenya_marathon.registration_rules import blockers, check_dates, edition_readiness + + +class EventEdition(Document): + def validate(self): + problems = check_dates(self) + if problems: + frappe.throw("
".join(problems)) + + # Moving a saved edition to Open needs the basics in place. (A brand new edition can't have + # categories yet, so creating one as Open is left alone.) + before = self.get_doc_before_save() + if self.status == "Open" and before and before.status != "Open": + problems = [c for c in blockers(edition_readiness(self)) if c["key"] != "dates"] + if problems: + lines = [c["label"] + (f" ({c['detail']})" if c["detail"] else "") for c in problems] + frappe.throw(_("This edition can't open registration yet:") + "
" + "
".join(lines)) diff --git a/lukenya_marathon/lukenya_marathon/doctype/lukenya_settings/__init__.py b/lukenya_marathon/lukenya_marathon/doctype/lukenya_settings/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/doctype/lukenya_settings/lukenya_settings.json b/lukenya_marathon/lukenya_marathon/doctype/lukenya_settings/lukenya_settings.json new file mode 100644 index 0000000..ff4d276 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/lukenya_settings/lukenya_settings.json @@ -0,0 +1,70 @@ +{ + "actions": [], + "creation": "2026-09-21 00:00:00.000000", + "doctype": "DocType", + "engine": "InnoDB", + "field_order": [ + "registration_section", + "hold_expiry_days", + "auto_close_registration", + "race_day_section", + "bibs_require_payment" + ], + "fields": [ + { + "fieldname": "registration_section", + "fieldtype": "Section Break", + "label": "Registration" + }, + { + "default": "0", + "description": "Cancel a pending entry that is still unpaid after this many days, freeing its place. 0 means never. Entries with a payment in progress are left alone.", + "fieldname": "hold_expiry_days", + "fieldtype": "Int", + "label": "Release unpaid entries after (days)" + }, + { + "default": "1", + "description": "Close an edition automatically once its registration close time has passed.", + "fieldname": "auto_close_registration", + "fieldtype": "Check", + "label": "Close registration automatically" + }, + { + "fieldname": "race_day_section", + "fieldtype": "Section Break", + "label": "Race day" + }, + { + "default": "1", + "description": "When on, a bib can only go to a confirmed entry that is paid or complimentary.", + "fieldname": "bibs_require_payment", + "fieldtype": "Check", + "label": "Bibs require payment" + } + ], + "index_web_pages_for_search": 1, + "issingle": 1, + "links": [], + "modified": "2026-09-21 00:00:00.000000", + "modified_by": "Administrator", + "module": "Lukenya Marathon", + "name": "Lukenya Settings", + "owner": "Administrator", + "permissions": [ + { + "create": 1, + "delete": 1, + "email": 1, + "print": 1, + "read": 1, + "role": "System Manager", + "share": 1, + "write": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "states": [], + "track_changes": 1 +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/lukenya_settings/lukenya_settings.py b/lukenya_marathon/lukenya_marathon/doctype/lukenya_settings/lukenya_settings.py new file mode 100644 index 0000000..7914294 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/lukenya_settings/lukenya_settings.py @@ -0,0 +1,9 @@ +import frappe +from frappe import _ +from frappe.model.document import Document + + +class LukenyaSettings(Document): + def validate(self): + if (self.hold_expiry_days or 0) < 0: + frappe.throw(_("Release unpaid entries after: days cannot be negative.")) diff --git a/lukenya_marathon/lukenya_marathon/doctype/participant/participant.json b/lukenya_marathon/lukenya_marathon/doctype/participant/participant.json index cc15b8a..d5d615a 100644 --- a/lukenya_marathon/lukenya_marathon/doctype/participant/participant.json +++ b/lukenya_marathon/lukenya_marathon/doctype/participant/participant.json @@ -1,133 +1,181 @@ { - "actions": [], - "allow_rename": 1, - "autoname": "field:participant_code", - "doctype": "DocType", - "editable_grid": 1, - "engine": "InnoDB", - "field_order": [ - "participant_code", - "first_name", - "last_name", - "id_number", - "date_of_birth", - "gender", - "nationality", - "email", - "phone", - "whatsapp", - "shirt_size", - "emergency_contact_name", - "emergency_contact_phone", - "medical_notes", - "communication_consent" - ], - "fields": [ - { - "fieldname": "participant_code", - "fieldtype": "Data", - "label": "Participant Code", - "reqd": 1, - "unique": 1 - }, - { - "fieldname": "first_name", - "fieldtype": "Data", - "label": "First Name", - "reqd": 1 - }, - { - "fieldname": "last_name", - "fieldtype": "Data", - "label": "Last Name", - "reqd": 1 - }, - { - "fieldname": "id_number", - "fieldtype": "Data", - "label": "ID / Passport Number", - "unique": 1 - }, - { - "fieldname": "date_of_birth", - "fieldtype": "Date", - "label": "Date of Birth" - }, - { - "fieldname": "gender", - "fieldtype": "Select", - "label": "Gender", - "options": "Male\nFemale\nOther\nPrefer not to say" - }, - { - "default": "Kenya", - "fieldname": "nationality", - "fieldtype": "Data", - "label": "Nationality" - }, - { - "fieldname": "email", - "fieldtype": "Data", - "label": "Email", - "options": "Email" - }, - { - "fieldname": "phone", - "fieldtype": "Data", - "label": "Phone", - "reqd": 1 - }, - { - "fieldname": "whatsapp", - "fieldtype": "Data", - "label": "WhatsApp" - }, - { - "fieldname": "shirt_size", - "fieldtype": "Select", - "label": "Shirt Size", - "options": "XS\nS\nM\nL\nXL\nXXL" - }, - { - "fieldname": "emergency_contact_name", - "fieldtype": "Data", - "label": "Emergency Contact Name" - }, - { - "fieldname": "emergency_contact_phone", - "fieldtype": "Data", - "label": "Emergency Contact Phone" - }, - { - "fieldname": "medical_notes", - "fieldtype": "Small Text", - "label": "Medical / Accessibility Notes", - "permlevel": 1 - }, - { - "fieldname": "communication_consent", - "fieldtype": "Check", - "label": "Communication Consent" - } - ], - "links": [], - "module": "Lukenya Marathon", - "name": "Participant", - "permissions": [ - { - "create": 1, - "delete": 1, - "email": 1, - "export": 1, - "print": 1, - "read": 1, - "report": 1, - "role": "System Manager", - "share": 1, - "write": 1 - } - ], - "sort_field": "modified", - "sort_order": "DESC", - "track_changes": 1 + "actions": [], + "allow_rename": 1, + "autoname": "field:participant_code", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "participant_code", + "first_name", + "last_name", + "full_name", + "id_number", + "date_of_birth", + "gender", + "nationality", + "email", + "phone", + "whatsapp", + "shirt_size", + "emergency_contact_name", + "emergency_contact_phone", + "guardian_name", + "guardian_phone", + "medical_notes", + "communication_consent" + ], + "fields": [ + { + "fieldname": "participant_code", + "fieldtype": "Data", + "label": "Participant Code", + "reqd": 0, + "unique": 1, + "description": "Generated automatically when left empty" + }, + { + "fieldname": "first_name", + "fieldtype": "Data", + "label": "First Name", + "reqd": 1 + }, + { + "fieldname": "last_name", + "fieldtype": "Data", + "label": "Last Name", + "reqd": 1 + }, + { + "fieldname": "full_name", + "fieldtype": "Data", + "label": "Full Name", + "read_only": 1, + "in_list_view": 1, + "bold": 1, + "no_copy": 1 + }, + { + "fieldname": "id_number", + "fieldtype": "Data", + "label": "ID / Passport Number", + "unique": 1, + "permlevel": 1 + }, + { + "fieldname": "date_of_birth", + "fieldtype": "Date", + "label": "Date of Birth" + }, + { + "fieldname": "gender", + "fieldtype": "Select", + "label": "Gender", + "options": "Male\nFemale\nOther\nPrefer not to say" + }, + { + "default": "Kenya", + "fieldname": "nationality", + "fieldtype": "Data", + "label": "Nationality" + }, + { + "fieldname": "email", + "fieldtype": "Data", + "label": "Email", + "options": "Email" + }, + { + "fieldname": "phone", + "fieldtype": "Data", + "label": "Phone", + "reqd": 1 + }, + { + "fieldname": "whatsapp", + "fieldtype": "Data", + "label": "WhatsApp" + }, + { + "fieldname": "shirt_size", + "fieldtype": "Select", + "label": "Shirt Size", + "options": "XS\nS\nM\nL\nXL\nXXL" + }, + { + "fieldname": "emergency_contact_name", + "fieldtype": "Data", + "label": "Emergency Contact Name" + }, + { + "fieldname": "emergency_contact_phone", + "fieldtype": "Data", + "label": "Emergency Contact Phone" + }, + { + "fieldname": "guardian_name", + "fieldtype": "Data", + "label": "Guardian Name", + "description": "For runners under 18" + }, + { + "fieldname": "guardian_phone", + "fieldtype": "Data", + "label": "Guardian Phone" + }, + { + "fieldname": "medical_notes", + "fieldtype": "Small Text", + "label": "Medical / Accessibility Notes", + "permlevel": 1 + }, + { + "fieldname": "communication_consent", + "fieldtype": "Check", + "label": "Communication Consent" + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Participant", + "permissions": [ + { + "create": 1, + "delete": 1, + "email": 1, + "export": 1, + "print": 1, + "read": 1, + "report": 1, + "role": "System Manager", + "share": 1, + "write": 1 + }, + { + "role": "System Manager", + "permlevel": 1, + "read": 1, + "write": 1 + }, + { + "role": "Registration Desk", + "read": 1, + "write": 1 + }, + { + "role": "Timing Officer", + "read": 1 + }, + { + "role": "Race Director", + "read": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1, + "title_field": "full_name", + "search_fields": "participant_code,full_name,id_number,phone,email", + "show_title_field_in_link": 1, + "modified": "2026-09-21 23:14:17.840063" } diff --git a/lukenya_marathon/lukenya_marathon/doctype/participant/participant.json.bak b/lukenya_marathon/lukenya_marathon/doctype/participant/participant.json.bak new file mode 100644 index 0000000..0d4450b --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/participant/participant.json.bak @@ -0,0 +1,168 @@ +{ + "actions": [], + "allow_rename": 1, + "autoname": "field:participant_code", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "participant_code", + "first_name", + "last_name", + "full_name", + "id_number", + "date_of_birth", + "gender", + "nationality", + "email", + "phone", + "whatsapp", + "shirt_size", + "emergency_contact_name", + "emergency_contact_phone", + "guardian_name", + "guardian_phone", + "medical_notes", + "communication_consent" + ], + "fields": [ + { + "fieldname": "participant_code", + "fieldtype": "Data", + "label": "Participant Code", + "reqd": 0, + "unique": 1, + "description": "Generated automatically when left empty" + }, + { + "fieldname": "first_name", + "fieldtype": "Data", + "label": "First Name", + "reqd": 1 + }, + { + "fieldname": "last_name", + "fieldtype": "Data", + "label": "Last Name", + "reqd": 1 + }, + { + "fieldname": "full_name", + "fieldtype": "Data", + "label": "Full Name", + "read_only": 1, + "in_list_view": 1, + "bold": 1, + "no_copy": 1 + }, + { + "fieldname": "id_number", + "fieldtype": "Data", + "label": "ID / Passport Number", + "unique": 1, + "permlevel": 1 + }, + { + "fieldname": "date_of_birth", + "fieldtype": "Date", + "label": "Date of Birth" + }, + { + "fieldname": "gender", + "fieldtype": "Select", + "label": "Gender", + "options": "Male\nFemale\nOther\nPrefer not to say" + }, + { + "default": "Kenya", + "fieldname": "nationality", + "fieldtype": "Data", + "label": "Nationality" + }, + { + "fieldname": "email", + "fieldtype": "Data", + "label": "Email", + "options": "Email" + }, + { + "fieldname": "phone", + "fieldtype": "Data", + "label": "Phone", + "reqd": 1 + }, + { + "fieldname": "whatsapp", + "fieldtype": "Data", + "label": "WhatsApp" + }, + { + "fieldname": "shirt_size", + "fieldtype": "Select", + "label": "Shirt Size", + "options": "XS\nS\nM\nL\nXL\nXXL" + }, + { + "fieldname": "emergency_contact_name", + "fieldtype": "Data", + "label": "Emergency Contact Name" + }, + { + "fieldname": "emergency_contact_phone", + "fieldtype": "Data", + "label": "Emergency Contact Phone" + }, + { + "fieldname": "guardian_name", + "fieldtype": "Data", + "label": "Guardian Name", + "description": "For runners under 18" + }, + { + "fieldname": "guardian_phone", + "fieldtype": "Data", + "label": "Guardian Phone" + }, + { + "fieldname": "medical_notes", + "fieldtype": "Small Text", + "label": "Medical / Accessibility Notes", + "permlevel": 1 + }, + { + "fieldname": "communication_consent", + "fieldtype": "Check", + "label": "Communication Consent" + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Participant", + "permissions": [ + { + "create": 1, + "delete": 1, + "email": 1, + "export": 1, + "print": 1, + "read": 1, + "report": 1, + "role": "System Manager", + "share": 1, + "write": 1 + }, + { + "role": "System Manager", + "permlevel": 1, + "read": 1, + "write": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1, + "title_field": "full_name", + "search_fields": "participant_code,full_name,id_number,phone,email", + "show_title_field_in_link": 1, + "modified": "2026-09-21 12:21:14.234614" +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/participant/participant.py b/lukenya_marathon/lukenya_marathon/doctype/participant/participant.py new file mode 100644 index 0000000..9390c12 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/participant/participant.py @@ -0,0 +1,36 @@ +import frappe +from frappe import _ +from frappe.model.document import Document +from frappe.utils import getdate, nowdate + +from lukenya_marathon.lukenya_marathon.participant_utils import ( + build_full_name, + clean_name, + normalize_nationality, + normalize_phone, + phone_is_valid, +) + + +class Participant(Document): + def before_naming(self): + # Staff creating a runner by hand should not have to invent a code. + if not self.participant_code: + self.participant_code = frappe.generate_hash(length=10).upper() + + def validate(self): + self.first_name = clean_name(self.first_name) + self.last_name = clean_name(self.last_name) + self.full_name = build_full_name(self.first_name, self.last_name) + self.email = (self.email or "").strip().lower() + self.id_number = (self.id_number or "").strip() or None + self.nationality = normalize_nationality(self.nationality) + + for field in ("phone", "whatsapp", "emergency_contact_phone", "guardian_phone"): + setattr(self, field, normalize_phone(self.get(field))) + + if self.phone and not phone_is_valid(self.phone): + frappe.throw(_("The phone number doesn't look valid: {0}").format(self.phone)) + + if self.date_of_birth and getdate(self.date_of_birth) > getdate(nowdate()): + frappe.throw(_("Date of birth cannot be in the future.")) diff --git a/lukenya_marathon/lukenya_marathon/doctype/payment_transaction/__init__.py b/lukenya_marathon/lukenya_marathon/doctype/payment_transaction/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/doctype/payment_transaction/payment_transaction.json b/lukenya_marathon/lukenya_marathon/doctype/payment_transaction/payment_transaction.json new file mode 100644 index 0000000..6b2c7fa --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/payment_transaction/payment_transaction.json @@ -0,0 +1,124 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "field:gateway_transaction_id", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "registration", + "gateway", + "gateway_transaction_id", + "merchant_request_id", + "checkout_request_id", + "amount", + "currency", + "status", + "payment_date", + "failure_reason", + "callback_payload" + ], + "fields": [ + { + "fieldname": "registration", + "fieldtype": "Link", + "label": "Registration", + "reqd": 1, + "options": "Registration" + }, + { + "fieldname": "gateway", + "fieldtype": "Select", + "label": "Gateway", + "reqd": 1, + "options": "M-Pesa\nCard\nBank\nCash\nOther" + }, + { + "fieldname": "gateway_transaction_id", + "fieldtype": "Data", + "label": "Gateway Transaction ID", + "reqd": 1 + }, + { + "fieldname": "merchant_request_id", + "fieldtype": "Data", + "label": "Merchant Request ID", + "reqd": 0 + }, + { + "fieldname": "checkout_request_id", + "fieldtype": "Data", + "label": "Checkout Request ID", + "reqd": 0 + }, + { + "fieldname": "amount", + "fieldtype": "Currency", + "label": "Amount", + "reqd": 1 + }, + { + "fieldname": "currency", + "fieldtype": "Data", + "label": "Currency", + "reqd": 1 + }, + { + "fieldname": "status", + "fieldtype": "Select", + "label": "Status", + "reqd": 1, + "options": "Initiated\nPending\nPaid\nFailed\nRefunded\nReconciled" + }, + { + "fieldname": "payment_date", + "fieldtype": "Datetime", + "label": "Payment Date", + "reqd": 0 + }, + { + "fieldname": "failure_reason", + "fieldtype": "Small Text", + "label": "Failure Reason", + "reqd": 0 + }, + { + "fieldname": "callback_payload", + "fieldtype": "Long Text", + "label": "Callback Payload", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Payment Transaction", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + }, + { + "role": "Registration Desk", + "read": 1 + }, + { + "role": "Race Director", + "read": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1, + "modified": "2026-09-21 23:14:17.841919" +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/payment_transaction/payment_transaction.json.bak b/lukenya_marathon/lukenya_marathon/doctype/payment_transaction/payment_transaction.json.bak new file mode 100644 index 0000000..dd708f2 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/payment_transaction/payment_transaction.json.bak @@ -0,0 +1,115 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "field:gateway_transaction_id", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "registration", + "gateway", + "gateway_transaction_id", + "merchant_request_id", + "checkout_request_id", + "amount", + "currency", + "status", + "payment_date", + "failure_reason", + "callback_payload" + ], + "fields": [ + { + "fieldname": "registration", + "fieldtype": "Link", + "label": "Registration", + "reqd": 1, + "options": "Registration" + }, + { + "fieldname": "gateway", + "fieldtype": "Select", + "label": "Gateway", + "reqd": 1, + "options": "M-Pesa\nCard\nBank\nCash\nOther" + }, + { + "fieldname": "gateway_transaction_id", + "fieldtype": "Data", + "label": "Gateway Transaction ID", + "reqd": 1 + }, + { + "fieldname": "merchant_request_id", + "fieldtype": "Data", + "label": "Merchant Request ID", + "reqd": 0 + }, + { + "fieldname": "checkout_request_id", + "fieldtype": "Data", + "label": "Checkout Request ID", + "reqd": 0 + }, + { + "fieldname": "amount", + "fieldtype": "Currency", + "label": "Amount", + "reqd": 1 + }, + { + "fieldname": "currency", + "fieldtype": "Data", + "label": "Currency", + "reqd": 1 + }, + { + "fieldname": "status", + "fieldtype": "Select", + "label": "Status", + "reqd": 1, + "options": "Initiated\nPending\nPaid\nFailed\nRefunded\nReconciled" + }, + { + "fieldname": "payment_date", + "fieldtype": "Datetime", + "label": "Payment Date", + "reqd": 0 + }, + { + "fieldname": "failure_reason", + "fieldtype": "Small Text", + "label": "Failure Reason", + "reqd": 0 + }, + { + "fieldname": "callback_payload", + "fieldtype": "Long Text", + "label": "Callback Payload", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Payment Transaction", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1 +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/payment_transaction/payment_transaction.py b/lukenya_marathon/lukenya_marathon/doctype/payment_transaction/payment_transaction.py new file mode 100644 index 0000000..bd7cb7f --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/payment_transaction/payment_transaction.py @@ -0,0 +1,5 @@ +from frappe.model.document import Document + + +class PaymentTransaction(Document): + pass diff --git a/lukenya_marathon/lukenya_marathon/doctype/prize_award/__init__.py b/lukenya_marathon/lukenya_marathon/doctype/prize_award/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/doctype/prize_award/prize_award.json b/lukenya_marathon/lukenya_marathon/doctype/prize_award/prize_award.json new file mode 100644 index 0000000..c1f49d3 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/prize_award/prize_award.json @@ -0,0 +1,125 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:AWD-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "timing_result", + "prize_rule", + "winner_name", + "id_number", + "approval_status", + "payment_reference", + "paid_on", + "notes" + ], + "fields": [ + { + "fieldname": "timing_result", + "fieldtype": "Link", + "label": "Timing Result", + "reqd": 1, + "options": "Timing Result" + }, + { + "fieldname": "prize_rule", + "fieldtype": "Link", + "label": "Prize Rule", + "reqd": 1, + "options": "Prize Rule" + }, + { + "fieldname": "winner_name", + "fieldtype": "Data", + "label": "Winner Name", + "reqd": 1 + }, + { + "fieldname": "id_number", + "fieldtype": "Data", + "label": "ID / Passport Number", + "reqd": 0 + }, + { + "fieldname": "approval_status", + "fieldtype": "Select", + "label": "Approval Status", + "reqd": 1, + "options": "Pending\nApproved\nRejected\nPaid", + "permlevel": 1 + }, + { + "fieldname": "payment_reference", + "fieldtype": "Data", + "label": "Payment Reference", + "reqd": 0, + "permlevel": 1 + }, + { + "fieldname": "paid_on", + "fieldtype": "Date", + "label": "Paid On", + "reqd": 0, + "permlevel": 1 + }, + { + "fieldname": "notes", + "fieldtype": "Small Text", + "label": "Notes", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Prize Award", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + }, + { + "role": "System Manager", + "permlevel": 1, + "read": 1, + "write": 1 + }, + { + "role": "Race Director", + "permlevel": 1, + "read": 1, + "write": 1 + }, + { + "role": "Timing Officer", + "permlevel": 1, + "read": 1 + }, + { + "role": "Timing Officer", + "read": 1 + }, + { + "role": "Race Director", + "read": 1, + "write": 1, + "create": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1, + "modified": "2026-09-21 23:14:17.835354" +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/prize_award/prize_award.json.bak b/lukenya_marathon/lukenya_marathon/doctype/prize_award/prize_award.json.bak new file mode 100644 index 0000000..d3cb6ab --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/prize_award/prize_award.json.bak @@ -0,0 +1,94 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:AWD-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "timing_result", + "prize_rule", + "winner_name", + "id_number", + "approval_status", + "payment_reference", + "paid_on", + "notes" + ], + "fields": [ + { + "fieldname": "timing_result", + "fieldtype": "Link", + "label": "Timing Result", + "reqd": 1, + "options": "Timing Result" + }, + { + "fieldname": "prize_rule", + "fieldtype": "Link", + "label": "Prize Rule", + "reqd": 1, + "options": "Prize Rule" + }, + { + "fieldname": "winner_name", + "fieldtype": "Data", + "label": "Winner Name", + "reqd": 1 + }, + { + "fieldname": "id_number", + "fieldtype": "Data", + "label": "ID / Passport Number", + "reqd": 0 + }, + { + "fieldname": "approval_status", + "fieldtype": "Select", + "label": "Approval Status", + "reqd": 1, + "options": "Pending\nApproved\nRejected\nPaid" + }, + { + "fieldname": "payment_reference", + "fieldtype": "Data", + "label": "Payment Reference", + "reqd": 0 + }, + { + "fieldname": "paid_on", + "fieldtype": "Date", + "label": "Paid On", + "reqd": 0 + }, + { + "fieldname": "notes", + "fieldtype": "Small Text", + "label": "Notes", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Prize Award", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1 +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/prize_award/prize_award.py b/lukenya_marathon/lukenya_marathon/doctype/prize_award/prize_award.py new file mode 100644 index 0000000..04c37b7 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/prize_award/prize_award.py @@ -0,0 +1,5 @@ +from frappe.model.document import Document + + +class PrizeAward(Document): + pass diff --git a/lukenya_marathon/lukenya_marathon/doctype/prize_rule/__init__.py b/lukenya_marathon/lukenya_marathon/doctype/prize_rule/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/doctype/prize_rule/prize_rule.json b/lukenya_marathon/lukenya_marathon/doctype/prize_rule/prize_rule.json new file mode 100644 index 0000000..956a42d --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/prize_rule/prize_rule.json @@ -0,0 +1,106 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:PR-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "event_edition", + "race_category", + "division", + "position", + "age_group", + "amount", + "currency", + "active" + ], + "fields": [ + { + "fieldname": "event_edition", + "fieldtype": "Link", + "label": "Event Edition", + "reqd": 1, + "options": "Event Edition" + }, + { + "fieldname": "race_category", + "fieldtype": "Link", + "label": "Race Category", + "reqd": 1, + "options": "Race Category" + }, + { + "fieldname": "division", + "fieldtype": "Select", + "label": "Division", + "reqd": 1, + "options": "Overall\nMen\nWomen\nWheelchair\nCorporate Relay\nAge Group" + }, + { + "fieldname": "position", + "fieldtype": "Int", + "label": "Position", + "reqd": 1 + }, + { + "fieldname": "age_group", + "fieldtype": "Data", + "label": "Age Group", + "reqd": 0 + }, + { + "fieldname": "amount", + "fieldtype": "Currency", + "label": "Amount", + "reqd": 1 + }, + { + "fieldname": "currency", + "fieldtype": "Data", + "label": "Currency", + "reqd": 1 + }, + { + "fieldname": "active", + "fieldtype": "Check", + "label": "Active", + "reqd": 0, + "default": "0" + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Prize Rule", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + }, + { + "role": "Timing Officer", + "read": 1 + }, + { + "role": "Race Director", + "read": 1, + "write": 1, + "create": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1, + "modified": "2026-09-21 23:14:17.847326" +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/prize_rule/prize_rule.json.bak b/lukenya_marathon/lukenya_marathon/doctype/prize_rule/prize_rule.json.bak new file mode 100644 index 0000000..76bbae0 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/prize_rule/prize_rule.json.bak @@ -0,0 +1,95 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:PR-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "event_edition", + "race_category", + "division", + "position", + "age_group", + "amount", + "currency", + "active" + ], + "fields": [ + { + "fieldname": "event_edition", + "fieldtype": "Link", + "label": "Event Edition", + "reqd": 1, + "options": "Event Edition" + }, + { + "fieldname": "race_category", + "fieldtype": "Link", + "label": "Race Category", + "reqd": 1, + "options": "Race Category" + }, + { + "fieldname": "division", + "fieldtype": "Select", + "label": "Division", + "reqd": 1, + "options": "Overall\nMen\nWomen\nWheelchair\nCorporate Relay\nAge Group" + }, + { + "fieldname": "position", + "fieldtype": "Int", + "label": "Position", + "reqd": 1 + }, + { + "fieldname": "age_group", + "fieldtype": "Data", + "label": "Age Group", + "reqd": 0 + }, + { + "fieldname": "amount", + "fieldtype": "Currency", + "label": "Amount", + "reqd": 1 + }, + { + "fieldname": "currency", + "fieldtype": "Data", + "label": "Currency", + "reqd": 1 + }, + { + "fieldname": "active", + "fieldtype": "Check", + "label": "Active", + "reqd": 0, + "default": "0" + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Prize Rule", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1 +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/prize_rule/prize_rule.py b/lukenya_marathon/lukenya_marathon/doctype/prize_rule/prize_rule.py new file mode 100644 index 0000000..8314716 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/prize_rule/prize_rule.py @@ -0,0 +1,5 @@ +from frappe.model.document import Document + + +class PrizeRule(Document): + pass diff --git a/lukenya_marathon/lukenya_marathon/doctype/race_category/race_category.json b/lukenya_marathon/lukenya_marathon/doctype/race_category/race_category.json index 7ef2c9f..8ad0ed7 100644 --- a/lukenya_marathon/lukenya_marathon/doctype/race_category/race_category.json +++ b/lukenya_marathon/lukenya_marathon/doctype/race_category/race_category.json @@ -1,132 +1,147 @@ { - "actions": [], - "allow_rename": 1, - "autoname": "field:category_code", - "doctype": "DocType", - "editable_grid": 1, - "engine": "InnoDB", - "field_order": [ - "category_code", - "category_name", - "event_edition", - "discipline", - "distance_km", - "start_time", - "cutoff_hours", - "eligibility", - "kenyan_price", - "non_resident_price", - "early_bird_price", - "capacity", - "active", - "prize_eligible", - "inclusions" - ], - "fields": [ - { - "fieldname": "category_code", - "fieldtype": "Data", - "label": "Category Code", - "reqd": 1, - "unique": 1 - }, - { - "fieldname": "category_name", - "fieldtype": "Data", - "label": "Category Name", - "reqd": 1 - }, - { - "fieldname": "event_edition", - "fieldtype": "Link", - "label": "Event Edition", - "options": "Event Edition", - "reqd": 1 - }, - { - "default": "Running", - "fieldname": "discipline", - "fieldtype": "Select", - "label": "Discipline", - "options": "Running\nCycling\nVirtual\nRelay", - "reqd": 1 - }, - { - "fieldname": "distance_km", - "fieldtype": "Float", - "label": "Distance (KM)" - }, - { - "fieldname": "start_time", - "fieldtype": "Time", - "label": "Start Time" - }, - { - "fieldname": "cutoff_hours", - "fieldtype": "Float", - "label": "Cut-off (Hours)" - }, - { - "fieldname": "eligibility", - "fieldtype": "Small Text", - "label": "Eligibility Rules" - }, - { - "fieldname": "kenyan_price", - "fieldtype": "Currency", - "label": "Kenyan Price", - "reqd": 1 - }, - { - "fieldname": "non_resident_price", - "fieldtype": "Currency", - "label": "Non-resident Price" - }, - { - "fieldname": "early_bird_price", - "fieldtype": "Currency", - "label": "Early Bird Price" - }, - { - "fieldname": "capacity", - "fieldtype": "Int", - "label": "Capacity" - }, - { - "default": "1", - "fieldname": "active", - "fieldtype": "Check", - "label": "Active" - }, - { - "fieldname": "prize_eligible", - "fieldtype": "Check", - "label": "Prize Eligible" - }, - { - "fieldname": "inclusions", - "fieldtype": "Small Text", - "label": "Inclusions" - } - ], - "links": [], - "module": "Lukenya Marathon", - "name": "Race Category", - "permissions": [ - { - "create": 1, - "delete": 1, - "email": 1, - "export": 1, - "print": 1, - "read": 1, - "report": 1, - "role": "System Manager", - "share": 1, - "write": 1 - } - ], - "sort_field": "modified", - "sort_order": "DESC", - "track_changes": 1 + "actions": [], + "allow_rename": 1, + "autoname": "field:category_code", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "category_code", + "category_name", + "event_edition", + "discipline", + "distance_km", + "start_time", + "cutoff_hours", + "eligibility", + "kenyan_price", + "non_resident_price", + "early_bird_price", + "capacity", + "active", + "prize_eligible", + "inclusions" + ], + "fields": [ + { + "fieldname": "category_code", + "fieldtype": "Data", + "label": "Category Code", + "reqd": 1, + "unique": 1 + }, + { + "fieldname": "category_name", + "fieldtype": "Data", + "label": "Category Name", + "reqd": 1 + }, + { + "fieldname": "event_edition", + "fieldtype": "Link", + "label": "Event Edition", + "options": "Event Edition", + "reqd": 1 + }, + { + "default": "Running", + "fieldname": "discipline", + "fieldtype": "Select", + "label": "Discipline", + "options": "Running\nCycling\nVirtual\nRelay", + "reqd": 1 + }, + { + "fieldname": "distance_km", + "fieldtype": "Float", + "label": "Distance (KM)" + }, + { + "fieldname": "start_time", + "fieldtype": "Time", + "label": "Start Time" + }, + { + "fieldname": "cutoff_hours", + "fieldtype": "Float", + "label": "Cut-off (Hours)" + }, + { + "fieldname": "eligibility", + "fieldtype": "Small Text", + "label": "Eligibility Rules" + }, + { + "fieldname": "kenyan_price", + "fieldtype": "Currency", + "label": "Kenyan Price", + "reqd": 1 + }, + { + "fieldname": "non_resident_price", + "fieldtype": "Currency", + "label": "Non-resident Price" + }, + { + "fieldname": "early_bird_price", + "fieldtype": "Currency", + "label": "Early Bird Price" + }, + { + "fieldname": "capacity", + "fieldtype": "Int", + "label": "Capacity" + }, + { + "default": "1", + "fieldname": "active", + "fieldtype": "Check", + "label": "Active" + }, + { + "fieldname": "prize_eligible", + "fieldtype": "Check", + "label": "Prize Eligible" + }, + { + "fieldname": "inclusions", + "fieldtype": "Small Text", + "label": "Inclusions" + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Race Category", + "permissions": [ + { + "create": 1, + "delete": 1, + "email": 1, + "export": 1, + "print": 1, + "read": 1, + "report": 1, + "role": "System Manager", + "share": 1, + "write": 1 + }, + { + "role": "Registration Desk", + "read": 1 + }, + { + "role": "Timing Officer", + "read": 1 + }, + { + "role": "Race Director", + "read": 1, + "write": 1, + "create": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1, + "modified": "2026-09-21 23:14:17.837728" } diff --git a/lukenya_marathon/lukenya_marathon/doctype/race_category/race_category.json.bak b/lukenya_marathon/lukenya_marathon/doctype/race_category/race_category.json.bak new file mode 100644 index 0000000..7ef2c9f --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/race_category/race_category.json.bak @@ -0,0 +1,132 @@ +{ + "actions": [], + "allow_rename": 1, + "autoname": "field:category_code", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "category_code", + "category_name", + "event_edition", + "discipline", + "distance_km", + "start_time", + "cutoff_hours", + "eligibility", + "kenyan_price", + "non_resident_price", + "early_bird_price", + "capacity", + "active", + "prize_eligible", + "inclusions" + ], + "fields": [ + { + "fieldname": "category_code", + "fieldtype": "Data", + "label": "Category Code", + "reqd": 1, + "unique": 1 + }, + { + "fieldname": "category_name", + "fieldtype": "Data", + "label": "Category Name", + "reqd": 1 + }, + { + "fieldname": "event_edition", + "fieldtype": "Link", + "label": "Event Edition", + "options": "Event Edition", + "reqd": 1 + }, + { + "default": "Running", + "fieldname": "discipline", + "fieldtype": "Select", + "label": "Discipline", + "options": "Running\nCycling\nVirtual\nRelay", + "reqd": 1 + }, + { + "fieldname": "distance_km", + "fieldtype": "Float", + "label": "Distance (KM)" + }, + { + "fieldname": "start_time", + "fieldtype": "Time", + "label": "Start Time" + }, + { + "fieldname": "cutoff_hours", + "fieldtype": "Float", + "label": "Cut-off (Hours)" + }, + { + "fieldname": "eligibility", + "fieldtype": "Small Text", + "label": "Eligibility Rules" + }, + { + "fieldname": "kenyan_price", + "fieldtype": "Currency", + "label": "Kenyan Price", + "reqd": 1 + }, + { + "fieldname": "non_resident_price", + "fieldtype": "Currency", + "label": "Non-resident Price" + }, + { + "fieldname": "early_bird_price", + "fieldtype": "Currency", + "label": "Early Bird Price" + }, + { + "fieldname": "capacity", + "fieldtype": "Int", + "label": "Capacity" + }, + { + "default": "1", + "fieldname": "active", + "fieldtype": "Check", + "label": "Active" + }, + { + "fieldname": "prize_eligible", + "fieldtype": "Check", + "label": "Prize Eligible" + }, + { + "fieldname": "inclusions", + "fieldtype": "Small Text", + "label": "Inclusions" + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Race Category", + "permissions": [ + { + "create": 1, + "delete": 1, + "email": 1, + "export": 1, + "print": 1, + "read": 1, + "report": 1, + "role": "System Manager", + "share": 1, + "write": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1 +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/race_category/race_category.py b/lukenya_marathon/lukenya_marathon/doctype/race_category/race_category.py new file mode 100644 index 0000000..c7fcd73 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/race_category/race_category.py @@ -0,0 +1,6 @@ +import frappe +from frappe.model.document import Document + + +class RaceCategory(Document): + pass diff --git a/lukenya_marathon/lukenya_marathon/doctype/race_pack_issue/__init__.py b/lukenya_marathon/lukenya_marathon/doctype/race_pack_issue/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/doctype/race_pack_issue/race_pack_issue.json b/lukenya_marathon/lukenya_marathon/doctype/race_pack_issue/race_pack_issue.json new file mode 100644 index 0000000..0539a53 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/race_pack_issue/race_pack_issue.json @@ -0,0 +1,117 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:RPI-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "registration", + "bib_allocation", + "issue_status", + "issued_on", + "issued_by", + "shirt_size", + "medal_issued", + "certificate_issued", + "notes" + ], + "fields": [ + { + "fieldname": "registration", + "fieldtype": "Link", + "label": "Registration", + "reqd": 1, + "options": "Registration" + }, + { + "fieldname": "bib_allocation", + "fieldtype": "Link", + "label": "Bib Allocation", + "reqd": 1, + "options": "Bib Allocation" + }, + { + "fieldname": "issue_status", + "fieldtype": "Select", + "label": "Issue Status", + "reqd": 1, + "options": "Ready\nIssued\nCollected\nUncollected\nCancelled" + }, + { + "fieldname": "issued_on", + "fieldtype": "Datetime", + "label": "Issued On", + "reqd": 0 + }, + { + "fieldname": "issued_by", + "fieldtype": "Link", + "label": "Issued By", + "reqd": 0, + "options": "User" + }, + { + "fieldname": "shirt_size", + "fieldtype": "Data", + "label": "Shirt Size", + "reqd": 0 + }, + { + "fieldname": "medal_issued", + "fieldtype": "Check", + "label": "Medal Issued", + "reqd": 0, + "default": "0" + }, + { + "fieldname": "certificate_issued", + "fieldtype": "Check", + "label": "Certificate Issued", + "reqd": 0, + "default": "0" + }, + { + "fieldname": "notes", + "fieldtype": "Small Text", + "label": "Notes", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Race Pack Issue", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + }, + { + "role": "Registration Desk", + "read": 1, + "write": 1, + "create": 1 + }, + { + "role": "Race Director", + "read": 1, + "write": 1, + "create": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1, + "modified": "2026-09-21 23:14:17.843801" +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/race_pack_issue/race_pack_issue.json.bak b/lukenya_marathon/lukenya_marathon/doctype/race_pack_issue/race_pack_issue.json.bak new file mode 100644 index 0000000..d85d60e --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/race_pack_issue/race_pack_issue.json.bak @@ -0,0 +1,104 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:RPI-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "registration", + "bib_allocation", + "issue_status", + "issued_on", + "issued_by", + "shirt_size", + "medal_issued", + "certificate_issued", + "notes" + ], + "fields": [ + { + "fieldname": "registration", + "fieldtype": "Link", + "label": "Registration", + "reqd": 1, + "options": "Registration" + }, + { + "fieldname": "bib_allocation", + "fieldtype": "Link", + "label": "Bib Allocation", + "reqd": 1, + "options": "Bib Allocation" + }, + { + "fieldname": "issue_status", + "fieldtype": "Select", + "label": "Issue Status", + "reqd": 1, + "options": "Ready\nIssued\nCollected\nUncollected\nCancelled" + }, + { + "fieldname": "issued_on", + "fieldtype": "Datetime", + "label": "Issued On", + "reqd": 0 + }, + { + "fieldname": "issued_by", + "fieldtype": "Link", + "label": "Issued By", + "reqd": 0, + "options": "User" + }, + { + "fieldname": "shirt_size", + "fieldtype": "Data", + "label": "Shirt Size", + "reqd": 0 + }, + { + "fieldname": "medal_issued", + "fieldtype": "Check", + "label": "Medal Issued", + "reqd": 0, + "default": "0" + }, + { + "fieldname": "certificate_issued", + "fieldtype": "Check", + "label": "Certificate Issued", + "reqd": 0, + "default": "0" + }, + { + "fieldname": "notes", + "fieldtype": "Small Text", + "label": "Notes", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Race Pack Issue", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1 +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/race_pack_issue/race_pack_issue.py b/lukenya_marathon/lukenya_marathon/doctype/race_pack_issue/race_pack_issue.py new file mode 100644 index 0000000..c7a1339 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/race_pack_issue/race_pack_issue.py @@ -0,0 +1,5 @@ +from frappe.model.document import Document + + +class RacePackIssue(Document): + pass diff --git a/lukenya_marathon/lukenya_marathon/doctype/registration/registration.json b/lukenya_marathon/lukenya_marathon/doctype/registration/registration.json index 429483d..aef3a2d 100644 --- a/lukenya_marathon/lukenya_marathon/doctype/registration/registration.json +++ b/lukenya_marathon/lukenya_marathon/doctype/registration/registration.json @@ -1,151 +1,172 @@ { - "actions": [], - "allow_rename": 0, - "autoname": "format:REG-{####}", - "doctype": "DocType", - "editable_grid": 1, - "engine": "InnoDB", - "field_order": [ - "participant", - "event_edition", - "race_category", - "registration_status", - "registration_date", - "price_tier", - "amount_due", - "payment_status", - "payment_reference", - "bib_number", - "chip_number", - "race_pack_status", - "check_in_status", - "indemnity_accepted", - "consent_timestamp", - "transfer_notes" - ], - "fields": [ - { - "fieldname": "participant", - "fieldtype": "Link", - "label": "Participant", - "options": "Participant", - "reqd": 1 - }, - { - "fieldname": "event_edition", - "fieldtype": "Link", - "label": "Event Edition", - "options": "Event Edition", - "reqd": 1 - }, - { - "fieldname": "race_category", - "fieldtype": "Link", - "label": "Race Category", - "options": "Race Category", - "reqd": 1 - }, - { - "default": "Pending", - "fieldname": "registration_status", - "fieldtype": "Select", - "label": "Registration Status", - "options": "Pending\nConfirmed\nCancelled\nTransferred\nRefunded\nCompleted", - "reqd": 1 - }, - { - "fieldname": "registration_date", - "fieldtype": "Datetime", - "label": "Registration Date", - "default": "Now" - }, - { - "default": "Standard", - "fieldname": "price_tier", - "fieldtype": "Select", - "label": "Price Tier", - "options": "Early Bird\nStandard\nNon-resident\nCorporate\nComplimentary" - }, - { - "fieldname": "amount_due", - "fieldtype": "Currency", - "label": "Amount Due", - "reqd": 1 - }, - { - "default": "Unpaid", - "fieldname": "payment_status", - "fieldtype": "Select", - "label": "Payment Status", - "options": "Unpaid\nPending\nPaid\nFailed\nPartially Paid\nRefunded", - "reqd": 1 - }, - { - "fieldname": "payment_reference", - "fieldtype": "Data", - "label": "Payment Reference" - }, - { - "fieldname": "bib_number", - "fieldtype": "Data", - "label": "Bib Number", - "unique": 1 - }, - { - "fieldname": "chip_number", - "fieldtype": "Data", - "label": "Chip Number", - "unique": 1 - }, - { - "default": "Not Issued", - "fieldname": "race_pack_status", - "fieldtype": "Select", - "label": "Race Pack Status", - "options": "Not Issued\nReady\nIssued\nCollected\nUncollected" - }, - { - "default": "Not Checked In", - "fieldname": "check_in_status", - "fieldtype": "Select", - "label": "Check-in Status", - "options": "Not Checked In\nChecked In\nDid Not Start\nFinished" - }, - { - "fieldname": "indemnity_accepted", - "fieldtype": "Check", - "label": "Indemnity Accepted", - "reqd": 1 - }, - { - "fieldname": "consent_timestamp", - "fieldtype": "Datetime", - "label": "Consent Timestamp" - }, - { - "fieldname": "transfer_notes", - "fieldtype": "Small Text", - "label": "Transfer / Admin Notes" - } - ], - "links": [], - "module": "Lukenya Marathon", - "name": "Registration", - "permissions": [ - { - "create": 1, - "delete": 1, - "email": 1, - "export": 1, - "print": 1, - "read": 1, - "report": 1, - "role": "System Manager", - "share": 1, - "write": 1 - } - ], - "sort_field": "modified", - "sort_order": "DESC", - "track_changes": 1 + "actions": [], + "allow_rename": 0, + "autoname": "format:REG-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "participant", + "event_edition", + "race_category", + "registration_status", + "registration_date", + "price_tier", + "amount_due", + "payment_status", + "payment_reference", + "bib_number", + "chip_number", + "race_pack_status", + "check_in_status", + "indemnity_accepted", + "consent_timestamp", + "transfer_notes" + ], + "fields": [ + { + "fieldname": "participant", + "fieldtype": "Link", + "label": "Participant", + "options": "Participant", + "reqd": 1 + }, + { + "fieldname": "event_edition", + "fieldtype": "Link", + "label": "Event Edition", + "options": "Event Edition", + "reqd": 1 + }, + { + "fieldname": "race_category", + "fieldtype": "Link", + "label": "Race Category", + "options": "Race Category", + "reqd": 1 + }, + { + "default": "Pending", + "fieldname": "registration_status", + "fieldtype": "Select", + "label": "Registration Status", + "options": "Pending\nConfirmed\nCancelled\nTransferred\nRefunded\nCompleted", + "reqd": 1 + }, + { + "fieldname": "registration_date", + "fieldtype": "Datetime", + "label": "Registration Date", + "default": "Now" + }, + { + "default": "Standard", + "fieldname": "price_tier", + "fieldtype": "Select", + "label": "Price Tier", + "options": "Early Bird\nStandard\nNon-resident\nCorporate\nComplimentary" + }, + { + "fieldname": "amount_due", + "fieldtype": "Currency", + "label": "Amount Due", + "reqd": 1, + "default": "0" + }, + { + "default": "Unpaid", + "fieldname": "payment_status", + "fieldtype": "Select", + "label": "Payment Status", + "options": "Unpaid\nPending\nPaid\nFailed\nPartially Paid\nRefunded", + "reqd": 1 + }, + { + "fieldname": "payment_reference", + "fieldtype": "Data", + "label": "Payment Reference" + }, + { + "fieldname": "bib_number", + "fieldtype": "Data", + "label": "Bib Number", + "unique": 1, + "read_only": 1 + }, + { + "fieldname": "chip_number", + "fieldtype": "Data", + "label": "Chip Number", + "unique": 1, + "read_only": 1 + }, + { + "default": "Not Issued", + "fieldname": "race_pack_status", + "fieldtype": "Select", + "label": "Race Pack Status", + "options": "Not Issued\nReady\nIssued\nCollected\nUncollected", + "read_only": 1 + }, + { + "default": "Not Checked In", + "fieldname": "check_in_status", + "fieldtype": "Select", + "label": "Check-in Status", + "options": "Not Checked In\nChecked In\nDid Not Start\nFinished", + "read_only": 1 + }, + { + "fieldname": "indemnity_accepted", + "fieldtype": "Check", + "label": "Indemnity Accepted", + "reqd": 1 + }, + { + "fieldname": "consent_timestamp", + "fieldtype": "Datetime", + "label": "Consent Timestamp" + }, + { + "fieldname": "transfer_notes", + "fieldtype": "Small Text", + "label": "Transfer / Admin Notes" + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Registration", + "permissions": [ + { + "create": 1, + "delete": 1, + "email": 1, + "export": 1, + "print": 1, + "read": 1, + "report": 1, + "role": "System Manager", + "share": 1, + "write": 1 + }, + { + "role": "Registration Desk", + "read": 1, + "write": 1, + "create": 1 + }, + { + "role": "Timing Officer", + "read": 1 + }, + { + "role": "Race Director", + "read": 1, + "write": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1, + "modified": "2026-09-21 23:14:17.830725" } diff --git a/lukenya_marathon/lukenya_marathon/doctype/registration/registration.json.bak b/lukenya_marathon/lukenya_marathon/doctype/registration/registration.json.bak new file mode 100644 index 0000000..13db5a4 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/registration/registration.json.bak @@ -0,0 +1,152 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:REG-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "participant", + "event_edition", + "race_category", + "registration_status", + "registration_date", + "price_tier", + "amount_due", + "payment_status", + "payment_reference", + "bib_number", + "chip_number", + "race_pack_status", + "check_in_status", + "indemnity_accepted", + "consent_timestamp", + "transfer_notes" + ], + "fields": [ + { + "fieldname": "participant", + "fieldtype": "Link", + "label": "Participant", + "options": "Participant", + "reqd": 1 + }, + { + "fieldname": "event_edition", + "fieldtype": "Link", + "label": "Event Edition", + "options": "Event Edition", + "reqd": 1 + }, + { + "fieldname": "race_category", + "fieldtype": "Link", + "label": "Race Category", + "options": "Race Category", + "reqd": 1 + }, + { + "default": "Pending", + "fieldname": "registration_status", + "fieldtype": "Select", + "label": "Registration Status", + "options": "Pending\nConfirmed\nCancelled\nTransferred\nRefunded\nCompleted", + "reqd": 1 + }, + { + "fieldname": "registration_date", + "fieldtype": "Datetime", + "label": "Registration Date", + "default": "Now" + }, + { + "default": "Standard", + "fieldname": "price_tier", + "fieldtype": "Select", + "label": "Price Tier", + "options": "Early Bird\nStandard\nNon-resident\nCorporate\nComplimentary" + }, + { + "fieldname": "amount_due", + "fieldtype": "Currency", + "label": "Amount Due", + "reqd": 1, + "default": "0" + }, + { + "default": "Unpaid", + "fieldname": "payment_status", + "fieldtype": "Select", + "label": "Payment Status", + "options": "Unpaid\nPending\nPaid\nFailed\nPartially Paid\nRefunded", + "reqd": 1 + }, + { + "fieldname": "payment_reference", + "fieldtype": "Data", + "label": "Payment Reference" + }, + { + "fieldname": "bib_number", + "fieldtype": "Data", + "label": "Bib Number", + "unique": 1 + }, + { + "fieldname": "chip_number", + "fieldtype": "Data", + "label": "Chip Number", + "unique": 1 + }, + { + "default": "Not Issued", + "fieldname": "race_pack_status", + "fieldtype": "Select", + "label": "Race Pack Status", + "options": "Not Issued\nReady\nIssued\nCollected\nUncollected" + }, + { + "default": "Not Checked In", + "fieldname": "check_in_status", + "fieldtype": "Select", + "label": "Check-in Status", + "options": "Not Checked In\nChecked In\nDid Not Start\nFinished" + }, + { + "fieldname": "indemnity_accepted", + "fieldtype": "Check", + "label": "Indemnity Accepted", + "reqd": 1 + }, + { + "fieldname": "consent_timestamp", + "fieldtype": "Datetime", + "label": "Consent Timestamp" + }, + { + "fieldname": "transfer_notes", + "fieldtype": "Small Text", + "label": "Transfer / Admin Notes" + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Registration", + "permissions": [ + { + "create": 1, + "delete": 1, + "email": 1, + "export": 1, + "print": 1, + "read": 1, + "report": 1, + "role": "System Manager", + "share": 1, + "write": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1 +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/registration/registration.py b/lukenya_marathon/lukenya_marathon/doctype/registration/registration.py new file mode 100644 index 0000000..bbbf349 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/registration/registration.py @@ -0,0 +1,79 @@ +import frappe +from frappe import _ +from frappe.model.document import Document +from frappe.utils import flt, now_datetime + +from lukenya_marathon.lukenya_marathon.registration_rules import HOLDING_STATUSES, check_edition_capacity + + +class Registration(Document): + def validate(self): + self.validate_category_belongs_to_edition() + self.validate_capacity() + self.validate_edition_capacity() + self.validate_amount() + self.validate_consent() + + def validate_category_belongs_to_edition(self): + if not self.event_edition or not self.race_category: + return + + category_edition = frappe.db.get_value( + "Race Category", + self.race_category, + "event_edition", + ) + + if category_edition != self.event_edition: + frappe.throw( + _("The selected race category does not belong to this event edition.") + ) + + def validate_capacity(self): + if self.registration_status in ("Cancelled", "Refunded"): + return + + capacity = frappe.db.get_value( + "Race Category", + self.race_category, + "capacity", + ) + + if not capacity: + return + + filters = { + "race_category": self.race_category, + "registration_status": ["in", ["Pending", "Confirmed"]], + } + + if not self.is_new(): + filters["name"] = ["!=", self.name] + + current_count = frappe.db.count("Registration", filters) + + if current_count >= int(capacity): + frappe.throw(_("This race category has reached capacity.")) + + def validate_edition_capacity(self): + """The edition-wide limit. Only checked when an entry starts taking a place, so editing an + entry that already holds one never fails because the edition filled up around it.""" + if self.registration_status not in HOLDING_STATUSES: + return + before = None if self.is_new() else self.get_doc_before_save() + if before and before.registration_status in HOLDING_STATUSES and before.event_edition == self.event_edition: + return + check_edition_capacity(self.event_edition, exclude=None if self.is_new() else self.name) + + def validate_amount(self): + if flt(self.amount_due) < 0: + frappe.throw(_("Amount Due cannot be negative.")) + + def validate_consent(self): + if self.indemnity_accepted and not self.consent_timestamp: + self.consent_timestamp = now_datetime() + + if self.registration_status == "Confirmed" and not self.indemnity_accepted: + frappe.throw( + _("Indemnity acceptance is required before confirmation.") + ) diff --git a/lukenya_marathon/lukenya_marathon/doctype/timing_result/__init__.py b/lukenya_marathon/lukenya_marathon/doctype/timing_result/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/doctype/timing_result/timing_result.json b/lukenya_marathon/lukenya_marathon/doctype/timing_result/timing_result.json new file mode 100644 index 0000000..7ec479c --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/timing_result/timing_result.json @@ -0,0 +1,166 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:RES-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "registration", + "bib_number", + "event_edition", + "race_category", + "gun_time", + "chip_time", + "finish_status", + "overall_rank", + "gender_rank", + "age_group_rank", + "source", + "approved", + "review_notes" + ], + "fields": [ + { + "fieldname": "registration", + "fieldtype": "Link", + "label": "Registration", + "reqd": 1, + "options": "Registration" + }, + { + "fieldname": "bib_number", + "fieldtype": "Data", + "label": "Bib Number", + "reqd": 1 + }, + { + "fieldname": "event_edition", + "fieldtype": "Link", + "label": "Event Edition", + "reqd": 1, + "options": "Event Edition" + }, + { + "fieldname": "race_category", + "fieldtype": "Link", + "label": "Race Category", + "reqd": 1, + "options": "Race Category" + }, + { + "fieldname": "gun_time", + "fieldtype": "Duration", + "label": "Gun Time", + "reqd": 0 + }, + { + "fieldname": "chip_time", + "fieldtype": "Duration", + "label": "Chip Time", + "reqd": 0 + }, + { + "fieldname": "finish_status", + "fieldtype": "Select", + "label": "Finish Status", + "reqd": 1, + "options": "Finished\nDid Not Finish\nDid Not Start\nDisqualified\nPending Review" + }, + { + "fieldname": "overall_rank", + "fieldtype": "Int", + "label": "Overall Rank", + "reqd": 0 + }, + { + "fieldname": "gender_rank", + "fieldtype": "Int", + "label": "Gender Rank", + "reqd": 0 + }, + { + "fieldname": "age_group_rank", + "fieldtype": "Int", + "label": "Age Group Rank", + "reqd": 0 + }, + { + "fieldname": "source", + "fieldtype": "Data", + "label": "Source", + "reqd": 0 + }, + { + "fieldname": "approved", + "fieldtype": "Check", + "label": "Approved", + "reqd": 0, + "default": "0", + "permlevel": 1 + }, + { + "fieldname": "review_notes", + "fieldtype": "Small Text", + "label": "Review Notes", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Timing Result", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + }, + { + "role": "System Manager", + "permlevel": 1, + "read": 1, + "write": 1 + }, + { + "role": "Race Director", + "permlevel": 1, + "read": 1, + "write": 1 + }, + { + "role": "Timing Officer", + "permlevel": 1, + "read": 1 + }, + { + "role": "Registration Desk", + "read": 1 + }, + { + "role": "Timing Officer", + "read": 1, + "write": 1, + "create": 1 + }, + { + "role": "Race Director", + "read": 1, + "write": 1, + "create": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1, + "modified": "2026-09-21 23:14:17.833126" +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/timing_result/timing_result.json.bak b/lukenya_marathon/lukenya_marathon/doctype/timing_result/timing_result.json.bak new file mode 100644 index 0000000..64408f2 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/timing_result/timing_result.json.bak @@ -0,0 +1,131 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:RES-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "registration", + "bib_number", + "event_edition", + "race_category", + "gun_time", + "chip_time", + "finish_status", + "overall_rank", + "gender_rank", + "age_group_rank", + "source", + "approved", + "review_notes" + ], + "fields": [ + { + "fieldname": "registration", + "fieldtype": "Link", + "label": "Registration", + "reqd": 1, + "options": "Registration" + }, + { + "fieldname": "bib_number", + "fieldtype": "Data", + "label": "Bib Number", + "reqd": 1 + }, + { + "fieldname": "event_edition", + "fieldtype": "Link", + "label": "Event Edition", + "reqd": 1, + "options": "Event Edition" + }, + { + "fieldname": "race_category", + "fieldtype": "Link", + "label": "Race Category", + "reqd": 1, + "options": "Race Category" + }, + { + "fieldname": "gun_time", + "fieldtype": "Duration", + "label": "Gun Time", + "reqd": 0 + }, + { + "fieldname": "chip_time", + "fieldtype": "Duration", + "label": "Chip Time", + "reqd": 0 + }, + { + "fieldname": "finish_status", + "fieldtype": "Select", + "label": "Finish Status", + "reqd": 1, + "options": "Finished\nDid Not Finish\nDid Not Start\nDisqualified\nPending Review" + }, + { + "fieldname": "overall_rank", + "fieldtype": "Int", + "label": "Overall Rank", + "reqd": 0 + }, + { + "fieldname": "gender_rank", + "fieldtype": "Int", + "label": "Gender Rank", + "reqd": 0 + }, + { + "fieldname": "age_group_rank", + "fieldtype": "Int", + "label": "Age Group Rank", + "reqd": 0 + }, + { + "fieldname": "source", + "fieldtype": "Data", + "label": "Source", + "reqd": 0 + }, + { + "fieldname": "approved", + "fieldtype": "Check", + "label": "Approved", + "reqd": 0, + "default": "0" + }, + { + "fieldname": "review_notes", + "fieldtype": "Small Text", + "label": "Review Notes", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Timing Result", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1 +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/timing_result/timing_result.py b/lukenya_marathon/lukenya_marathon/doctype/timing_result/timing_result.py new file mode 100644 index 0000000..cc618bb --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/timing_result/timing_result.py @@ -0,0 +1,5 @@ +from frappe.model.document import Document + + +class TimingResult(Document): + pass diff --git a/lukenya_marathon/lukenya_marathon/doctype/tree_impact_record/__init__.py b/lukenya_marathon/lukenya_marathon/doctype/tree_impact_record/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/doctype/tree_impact_record/tree_impact_record.json b/lukenya_marathon/lukenya_marathon/doctype/tree_impact_record/tree_impact_record.json new file mode 100644 index 0000000..5ded2a9 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/tree_impact_record/tree_impact_record.json @@ -0,0 +1,107 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:TREE-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "registration", + "event_edition", + "trees_committed", + "trees_planted", + "planting_batch", + "planting_date", + "location", + "verification_status", + "evidence_url" + ], + "fields": [ + { + "fieldname": "registration", + "fieldtype": "Link", + "label": "Registration", + "reqd": 1, + "options": "Registration" + }, + { + "fieldname": "event_edition", + "fieldtype": "Link", + "label": "Event Edition", + "reqd": 1, + "options": "Event Edition" + }, + { + "fieldname": "trees_committed", + "fieldtype": "Int", + "label": "Trees Committed", + "reqd": 1 + }, + { + "fieldname": "trees_planted", + "fieldtype": "Int", + "label": "Trees Planted", + "reqd": 0 + }, + { + "fieldname": "planting_batch", + "fieldtype": "Data", + "label": "Planting Batch", + "reqd": 0 + }, + { + "fieldname": "planting_date", + "fieldtype": "Date", + "label": "Planting Date", + "reqd": 0 + }, + { + "fieldname": "location", + "fieldtype": "Small Text", + "label": "Location / GPS", + "reqd": 0 + }, + { + "fieldname": "verification_status", + "fieldtype": "Select", + "label": "Verification Status", + "reqd": 1, + "options": "Pending\nVerified\nRejected" + }, + { + "fieldname": "evidence_url", + "fieldtype": "Data", + "label": "Evidence URL", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Tree Impact Record", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + }, + { + "role": "Race Director", + "read": 1, + "write": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1, + "modified": "2026-09-21 23:14:17.852836" +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/tree_impact_record/tree_impact_record.json.bak b/lukenya_marathon/lukenya_marathon/doctype/tree_impact_record/tree_impact_record.json.bak new file mode 100644 index 0000000..630e7e0 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/tree_impact_record/tree_impact_record.json.bak @@ -0,0 +1,101 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:TREE-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "registration", + "event_edition", + "trees_committed", + "trees_planted", + "planting_batch", + "planting_date", + "location", + "verification_status", + "evidence_url" + ], + "fields": [ + { + "fieldname": "registration", + "fieldtype": "Link", + "label": "Registration", + "reqd": 1, + "options": "Registration" + }, + { + "fieldname": "event_edition", + "fieldtype": "Link", + "label": "Event Edition", + "reqd": 1, + "options": "Event Edition" + }, + { + "fieldname": "trees_committed", + "fieldtype": "Int", + "label": "Trees Committed", + "reqd": 1 + }, + { + "fieldname": "trees_planted", + "fieldtype": "Int", + "label": "Trees Planted", + "reqd": 0 + }, + { + "fieldname": "planting_batch", + "fieldtype": "Data", + "label": "Planting Batch", + "reqd": 0 + }, + { + "fieldname": "planting_date", + "fieldtype": "Date", + "label": "Planting Date", + "reqd": 0 + }, + { + "fieldname": "location", + "fieldtype": "Small Text", + "label": "Location / GPS", + "reqd": 0 + }, + { + "fieldname": "verification_status", + "fieldtype": "Select", + "label": "Verification Status", + "reqd": 1, + "options": "Pending\nVerified\nRejected" + }, + { + "fieldname": "evidence_url", + "fieldtype": "Data", + "label": "Evidence URL", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Tree Impact Record", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1 +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/tree_impact_record/tree_impact_record.py b/lukenya_marathon/lukenya_marathon/doctype/tree_impact_record/tree_impact_record.py new file mode 100644 index 0000000..94d9ee7 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/tree_impact_record/tree_impact_record.py @@ -0,0 +1,5 @@ +from frappe.model.document import Document + + +class TreeImpactRecord(Document): + pass diff --git a/lukenya_marathon/lukenya_marathon/doctype/volunteer/__init__.py b/lukenya_marathon/lukenya_marathon/doctype/volunteer/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/doctype/volunteer/volunteer.json b/lukenya_marathon/lukenya_marathon/doctype/volunteer/volunteer.json new file mode 100644 index 0000000..ba4599a --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/volunteer/volunteer.json @@ -0,0 +1,107 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "field:volunteer_code", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "volunteer_code", + "first_name", + "last_name", + "email", + "phone", + "emergency_contact", + "skills", + "availability", + "status" + ], + "fields": [ + { + "fieldname": "volunteer_code", + "fieldtype": "Data", + "label": "Volunteer Code", + "reqd": 1 + }, + { + "fieldname": "first_name", + "fieldtype": "Data", + "label": "First Name", + "reqd": 1 + }, + { + "fieldname": "last_name", + "fieldtype": "Data", + "label": "Last Name", + "reqd": 1 + }, + { + "fieldname": "email", + "fieldtype": "Data", + "label": "Email", + "reqd": 0, + "options": "Email" + }, + { + "fieldname": "phone", + "fieldtype": "Data", + "label": "Phone", + "reqd": 1 + }, + { + "fieldname": "emergency_contact", + "fieldtype": "Data", + "label": "Emergency Contact", + "reqd": 0 + }, + { + "fieldname": "skills", + "fieldtype": "Small Text", + "label": "Skills", + "reqd": 0 + }, + { + "fieldname": "availability", + "fieldtype": "Small Text", + "label": "Availability", + "reqd": 0 + }, + { + "fieldname": "status", + "fieldtype": "Select", + "label": "Status", + "reqd": 1, + "options": "Applied\nApproved\nBriefed\nActive\nInactive" + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Volunteer", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + }, + { + "role": "Race Director", + "read": 1, + "write": 1, + "create": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1, + "modified": "2026-09-21 23:14:17.849196" +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/volunteer/volunteer.json.bak b/lukenya_marathon/lukenya_marathon/doctype/volunteer/volunteer.json.bak new file mode 100644 index 0000000..0e75dd9 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/volunteer/volunteer.json.bak @@ -0,0 +1,100 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "field:volunteer_code", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "volunteer_code", + "first_name", + "last_name", + "email", + "phone", + "emergency_contact", + "skills", + "availability", + "status" + ], + "fields": [ + { + "fieldname": "volunteer_code", + "fieldtype": "Data", + "label": "Volunteer Code", + "reqd": 1 + }, + { + "fieldname": "first_name", + "fieldtype": "Data", + "label": "First Name", + "reqd": 1 + }, + { + "fieldname": "last_name", + "fieldtype": "Data", + "label": "Last Name", + "reqd": 1 + }, + { + "fieldname": "email", + "fieldtype": "Data", + "label": "Email", + "reqd": 0, + "options": "Email" + }, + { + "fieldname": "phone", + "fieldtype": "Data", + "label": "Phone", + "reqd": 1 + }, + { + "fieldname": "emergency_contact", + "fieldtype": "Data", + "label": "Emergency Contact", + "reqd": 0 + }, + { + "fieldname": "skills", + "fieldtype": "Small Text", + "label": "Skills", + "reqd": 0 + }, + { + "fieldname": "availability", + "fieldtype": "Small Text", + "label": "Availability", + "reqd": 0 + }, + { + "fieldname": "status", + "fieldtype": "Select", + "label": "Status", + "reqd": 1, + "options": "Applied\nApproved\nBriefed\nActive\nInactive" + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Volunteer", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1 +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/volunteer/volunteer.py b/lukenya_marathon/lukenya_marathon/doctype/volunteer/volunteer.py new file mode 100644 index 0000000..5b241f7 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/volunteer/volunteer.py @@ -0,0 +1,5 @@ +from frappe.model.document import Document + + +class Volunteer(Document): + pass diff --git a/lukenya_marathon/lukenya_marathon/doctype/volunteer_shift/__init__.py b/lukenya_marathon/lukenya_marathon/doctype/volunteer_shift/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/doctype/volunteer_shift/volunteer_shift.json b/lukenya_marathon/lukenya_marathon/doctype/volunteer_shift/volunteer_shift.json new file mode 100644 index 0000000..dc41bf2 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/volunteer_shift/volunteer_shift.json @@ -0,0 +1,106 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:VSH-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "event_edition", + "volunteer", + "work_area", + "shift_date", + "start_time", + "end_time", + "attendance_status", + "notes" + ], + "fields": [ + { + "fieldname": "event_edition", + "fieldtype": "Link", + "label": "Event Edition", + "reqd": 1, + "options": "Event Edition" + }, + { + "fieldname": "volunteer", + "fieldtype": "Link", + "label": "Volunteer", + "reqd": 1, + "options": "Volunteer" + }, + { + "fieldname": "work_area", + "fieldtype": "Select", + "label": "Work Area", + "reqd": 1, + "options": "Registration\nRoute Marshal\nWater Station\nMedical\nParking\nResults\nRace Pack\nOther" + }, + { + "fieldname": "shift_date", + "fieldtype": "Date", + "label": "Shift Date", + "reqd": 1 + }, + { + "fieldname": "start_time", + "fieldtype": "Time", + "label": "Start Time", + "reqd": 1 + }, + { + "fieldname": "end_time", + "fieldtype": "Time", + "label": "End Time", + "reqd": 1 + }, + { + "fieldname": "attendance_status", + "fieldtype": "Select", + "label": "Attendance Status", + "reqd": 1, + "options": "Scheduled\nPresent\nAbsent\nCancelled" + }, + { + "fieldname": "notes", + "fieldtype": "Small Text", + "label": "Notes", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Volunteer Shift", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + }, + { + "role": "Registration Desk", + "read": 1 + }, + { + "role": "Race Director", + "read": 1, + "write": 1, + "create": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1, + "modified": "2026-09-21 23:14:17.851018" +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/volunteer_shift/volunteer_shift.json.bak b/lukenya_marathon/lukenya_marathon/doctype/volunteer_shift/volunteer_shift.json.bak new file mode 100644 index 0000000..446294b --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/volunteer_shift/volunteer_shift.json.bak @@ -0,0 +1,95 @@ +{ + "actions": [], + "allow_rename": 0, + "autoname": "format:VSH-{####}", + "doctype": "DocType", + "editable_grid": 1, + "engine": "InnoDB", + "field_order": [ + "event_edition", + "volunteer", + "work_area", + "shift_date", + "start_time", + "end_time", + "attendance_status", + "notes" + ], + "fields": [ + { + "fieldname": "event_edition", + "fieldtype": "Link", + "label": "Event Edition", + "reqd": 1, + "options": "Event Edition" + }, + { + "fieldname": "volunteer", + "fieldtype": "Link", + "label": "Volunteer", + "reqd": 1, + "options": "Volunteer" + }, + { + "fieldname": "work_area", + "fieldtype": "Select", + "label": "Work Area", + "reqd": 1, + "options": "Registration\nRoute Marshal\nWater Station\nMedical\nParking\nResults\nRace Pack\nOther" + }, + { + "fieldname": "shift_date", + "fieldtype": "Date", + "label": "Shift Date", + "reqd": 1 + }, + { + "fieldname": "start_time", + "fieldtype": "Time", + "label": "Start Time", + "reqd": 1 + }, + { + "fieldname": "end_time", + "fieldtype": "Time", + "label": "End Time", + "reqd": 1 + }, + { + "fieldname": "attendance_status", + "fieldtype": "Select", + "label": "Attendance Status", + "reqd": 1, + "options": "Scheduled\nPresent\nAbsent\nCancelled" + }, + { + "fieldname": "notes", + "fieldtype": "Small Text", + "label": "Notes", + "reqd": 0 + } + ], + "links": [], + "module": "Lukenya Marathon", + "name": "Volunteer Shift", + "permissions": [ + { + "role": "System Manager", + "read": 1, + "write": 1, + "create": 1, + "delete": 1, + "submit": 1, + "cancel": 1, + "amend": 1, + "print": 1, + "email": 1, + "export": 1, + "report": 1, + "share": 1 + } + ], + "sort_field": "modified", + "sort_order": "DESC", + "track_changes": 1 +} diff --git a/lukenya_marathon/lukenya_marathon/doctype/volunteer_shift/volunteer_shift.py b/lukenya_marathon/lukenya_marathon/doctype/volunteer_shift/volunteer_shift.py new file mode 100644 index 0000000..98f13af --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/doctype/volunteer_shift/volunteer_shift.py @@ -0,0 +1,5 @@ +from frappe.model.document import Document + + +class VolunteerShift(Document): + pass diff --git a/lukenya_marathon/lukenya_marathon/events_management.py b/lukenya_marathon/lukenya_marathon/events_management.py new file mode 100644 index 0000000..5bff006 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/events_management.py @@ -0,0 +1,90 @@ +import frappe +from frappe import _ + + +@frappe.whitelist() +def get_events_summary(): + """ + Return Event Editions with their Race Categories and registration totals. + """ + editions = frappe.get_all( + "Event Edition", + fields=[ + "name", + "edition_code", + "edition_name", + "event_date", + "registration_open", + "registration_close", + "early_bird_ends", + "status", + "venue", + "county", + "registration_capacity", + "trees_commitment_per_entry", + ], + order_by="event_date desc, modified desc", + limit_page_length=100, + ) + + for edition in editions: + edition["category_count"] = frappe.db.count( + "Race Category", + {"event_edition": edition.name}, + ) + + edition["registration_count"] = frappe.db.count( + "Registration", + { + "event_edition": edition.name, + "registration_status": ["not in", ["Cancelled", "Transferred", "Refunded"]], + }, + ) + + edition["paid_count"] = frappe.db.count( + "Registration", + { + "event_edition": edition.name, + "payment_status": "Paid", + "registration_status": ["not in", ["Cancelled", "Transferred", "Refunded"]], + }, + ) + + edition["categories"] = frappe.get_all( + "Race Category", + filters={"event_edition": edition.name}, + fields=[ + "name", + "category_code", + "category_name", + "discipline", + "distance_km", + "start_time", + "cutoff_hours", + "kenyan_price", + "non_resident_price", + "early_bird_price", + "capacity", + "active", + "prize_eligible", + ], + order_by="start_time asc, category_name asc", + limit_page_length=100, + ) + + return editions + + +@frappe.whitelist() +def get_event_metrics(): + """ + Return top-level Event Edition metrics. + """ + return { + "total": frappe.db.count("Event Edition"), + "open": frappe.db.count("Event Edition", {"status": "Open"}), + "draft": frappe.db.count("Event Edition", {"status": "Draft"}), + "completed": frappe.db.count("Event Edition", {"status": "Completed"}), + "cancelled": frappe.db.count("Event Edition", {"status": "Cancelled"}), + "categories": frappe.db.count("Race Category"), + } diff --git a/lukenya_marathon/lukenya_marathon/holds.py b/lukenya_marathon/lukenya_marathon/holds.py new file mode 100644 index 0000000..b56d1c1 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/holds.py @@ -0,0 +1,74 @@ +"""Releasing places held by entries that were never paid for, and the hourly job that runs it.""" + +import frappe +from frappe import _ +from frappe.utils import add_days, add_to_date, cint, now_datetime + +from lukenya_marathon.lukenya_marathon import registration_rules, settings + +RELEASABLE_PAYMENT = ("Unpaid", "Failed") +IN_PROGRESS = ("Initiated", "Pending") +IN_PROGRESS_HOURS = 24 + + +def expired_holds(days): + """Pending, unpaid entries older than `days` whose edition is still running, with no payment + in progress and no money received.""" + cutoff = add_days(now_datetime(), -cint(days)) + recent = add_to_date(now_datetime(), hours=-IN_PROGRESS_HOURS) + return frappe.db.sql( + """ + select r.name, r.event_edition, r.race_category, r.registration_date, r.payment_status, r.amount_due, + concat_ws(' ', p.first_name, p.last_name) as participant_name + from `tabRegistration` r + join `tabEvent Edition` e on e.name = r.event_edition + join `tabParticipant` p on p.name = r.participant + where r.registration_status = 'Pending' + and r.payment_status in %(releasable)s + and coalesce(r.price_tier, '') != 'Complimentary' + and r.registration_date < %(cutoff)s + and e.status in ('Draft', 'Open', 'Closed') + and not exists ( + select 1 from `tabPayment Transaction` t + where t.registration = r.name + and (t.status = 'Paid' or t.status = 'Reconciled' + or (t.status in %(in_progress)s and t.creation > %(recent)s)) + ) + order by r.registration_date + """, + {"releasable": RELEASABLE_PAYMENT, "cutoff": cutoff, "in_progress": IN_PROGRESS, "recent": recent}, + as_dict=True, + ) + + +@frappe.whitelist() +def preview_expired_holds(days=None): + """What the release job would cancel. Changes nothing. Defaults to the number of days in settings.""" + frappe.only_for(("System Manager", "Race Director")) + days = cint(days) or cint(settings.get("hold_expiry_days")) + if not days: + return {"days": 0, "count": 0, "entries": [], "note": _("Release is switched off. Set the number of days in Lukenya Settings, or pass days.")} + rows = expired_holds(days) + return {"days": days, "count": len(rows), "entries": rows} + + +def release_expired_holds(): + days = cint(settings.get("hold_expiry_days")) + if not days: + return [] + released = [] + for row in expired_holds(days): + try: + doc = frappe.get_doc("Registration", row.name) + doc.registration_status = "Cancelled" + doc.save(ignore_permissions=True) + doc.add_comment("Info", _("Released automatically: unpaid for {0} days.").format(days)) + released.append(row.name) + except Exception: + frappe.log_error(title=f"Could not release unpaid entry {row.name}") + return released + + +def hourly(): + registration_rules.close_expired_editions() + release_expired_holds() diff --git a/lukenya_marathon/lukenya_marathon/page/__init__.py b/lukenya_marathon/lukenya_marathon/page/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_dashboard/__init__.py b/lukenya_marathon/lukenya_marathon/page/lukenya_dashboard/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_dashboard/lukenya_dashboard.css b/lukenya_marathon/lukenya_marathon/page/lukenya_dashboard/lukenya_dashboard.css new file mode 100644 index 0000000..878c4ea --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_dashboard/lukenya_dashboard.css @@ -0,0 +1,522 @@ +/* Lukenya Marathon dashboard. + * Everything is scoped to #page-lukenya-dashboard so nothing leaks into the rest of Desk. + * Change the look from the tokens block below. + */ + +#page-lukenya-dashboard { + /* Tokens: surface */ + --lm-bg: #f3f6fb; + --lm-card: #ffffff; + --lm-line: #e5eaf3; + --lm-ink: #17233d; + --lm-muted: #66748f; + + /* Tokens: brand */ + --lm-primary: #2f6bff; + --lm-primary-ink: #ffffff; + + /* Tokens: shape */ + --lm-radius: 14px; + --lm-radius-sm: 10px; + --lm-shadow: 0 1px 2px rgba(23, 35, 61, 0.05), 0 6px 18px rgba(23, 35, 61, 0.05); + --lm-shadow-hover: 0 2px 4px rgba(23, 35, 61, 0.07), 0 10px 24px rgba(23, 35, 61, 0.09); + + /* Tokens: hero photo (drop a file at public/images/lukenya-hero.jpg to use it) */ + --lm-hero-image: url("/assets/lukenya_marathon/images/lukenya-hero.jpg"); + + background: var(--lm-bg); + color: var(--lm-ink); +} + +/* Remove Desk's own page header and width limits on this page only. */ +#page-lukenya-dashboard .page-head { + display: none; +} +#page-lukenya-dashboard .container, +#page-lukenya-dashboard .page-body { + max-width: none; + margin: 0; + padding: 0; +} +#page-lukenya-dashboard .layout-main { + margin: 0; +} +#page-lukenya-dashboard .layout-main-section-wrapper, +#page-lukenya-dashboard .layout-main-section { + padding: 0; +} + +/* ---- Shell ---------------------------------------------------------------- */ + +#page-lukenya-dashboard .lm-app { + display: grid; + grid-template-columns: 248px minmax(0, 1fr); + min-height: calc(100vh - var(--navbar-height, 48px)); +} + +#page-lukenya-dashboard .lm-app, +#page-lukenya-dashboard .lm-app * { + box-sizing: border-box; +} + +/* :where() keeps this reset weaker than the component classes below. */ +#page-lukenya-dashboard :where(.lm-app) button { + font: inherit; + color: inherit; + cursor: pointer; +} + +#page-lukenya-dashboard .lm-ico { + flex: none; +} + +#page-lukenya-dashboard .lm-main { + padding: 24px 28px 32px; + min-width: 0; +} + +/* ---- Sidebar --------------------------------------------------------------- + * Now shared across every lukenya-* page: public/css/lukenya_navigation.css + * ---------------------------------------------------------------------- */ + +/* ---- Hero ----------------------------------------------------------------- */ + +#page-lukenya-dashboard .lm-hero { + position: relative; + display: flex; + align-items: center; + min-height: 140px; + margin-bottom: 18px; + border-radius: var(--lm-radius); + overflow: hidden; + background: var(--lm-card); + border: 1px solid var(--lm-line); + box-shadow: var(--lm-shadow); +} +#page-lukenya-dashboard .lm-hero__text { + position: relative; + z-index: 1; + padding: 24px 28px; +} +#page-lukenya-dashboard .lm-hero__logo { + display: block; + height: 40px; + width: auto; + margin-bottom: 10px; +} +#page-lukenya-dashboard .lm-hero h1 { + margin: 0 0 6px; + font-size: 26px; + font-weight: 700; + line-height: 1.2; + color: var(--lm-ink); +} +#page-lukenya-dashboard .lm-hero p { + margin: 0; + font-size: 14px; + color: var(--lm-muted); +} +#page-lukenya-dashboard .lm-hero__art { + position: absolute; + inset: 0 0 0 42%; + background-image: + linear-gradient(90deg, var(--lm-card) 0%, rgba(255, 255, 255, 0) 45%), + var(--lm-hero-image), + linear-gradient(180deg, #cfe0f5 0%, #e9eef0 45%, #9fb590 46%, #6f8a63 100%); + background-size: cover; + background-position: center; +} +#page-lukenya-dashboard .lm-hero__tag { + position: absolute; + top: 22px; + right: 32px; + font-family: "Segoe Script", "Bradley Hand", "Snell Roundhand", cursive; + font-size: 20px; + line-height: 1.15; + text-align: right; + color: #0f2a55; + transform: rotate(-6deg); + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.7); +} + +/* ---- KPI row -------------------------------------------------------------- */ + +#page-lukenya-dashboard .lm-kpis { + display: grid; + grid-template-columns: repeat(4, minmax(0, 1fr)); + gap: 14px; + margin-bottom: 18px; +} +#page-lukenya-dashboard .lm-kpi { + position: relative; + display: flex; + align-items: center; + gap: 14px; + padding: 16px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: var(--lm-card); + box-shadow: var(--lm-shadow); + text-align: left; + transition: box-shadow 0.15s ease, border-color 0.15s ease; +} +#page-lukenya-dashboard .lm-kpi:hover { + box-shadow: var(--lm-shadow-hover); + border-color: #d3dcee; +} +#page-lukenya-dashboard .lm-kpi__body { + display: flex; + flex-direction: column; + gap: 2px; + min-width: 0; + flex: 1; +} +#page-lukenya-dashboard .lm-kpi__label { + font-size: 13px; + color: var(--lm-muted); +} +#page-lukenya-dashboard .lm-kpi__value { + font-size: 26px; + font-weight: 700; + line-height: 1.15; + color: var(--lm-ink); + white-space: nowrap; +} +#page-lukenya-dashboard .lm-kpi__go { + position: absolute; + top: 14px; + right: 14px; + color: var(--lm-muted); +} + +#page-lukenya-dashboard .lm-trend { + display: inline-flex; + align-items: center; + gap: 4px; + font-size: 12px; + font-weight: 600; +} +#page-lukenya-dashboard .lm-trend em { + font-style: normal; + font-weight: 400; + color: var(--lm-muted); +} +#page-lukenya-dashboard .lm-trend.is-up { + color: #1f9d5a; +} +#page-lukenya-dashboard .lm-trend.is-down { + color: #d0424b; +} +#page-lukenya-dashboard .lm-trend.is-flat { + color: var(--lm-muted); + font-weight: 400; +} + +/* ---- Icon chips and tones ------------------------------------------------- */ + +#page-lukenya-dashboard .lm-chip { + display: grid; + place-items: center; + flex: none; + width: 46px; + height: 46px; + border-radius: 999px; + background: var(--tone-bg, #e8f0ff); + color: var(--tone-ink, #2f6bff); +} +#page-lukenya-dashboard .lm-tone-blue { --tone-bg: #e5eeff; --tone-ink: #2f6bff; } +#page-lukenya-dashboard .lm-tone-green { --tone-bg: #e1f6ea; --tone-ink: #1f9d5a; } +#page-lukenya-dashboard .lm-tone-purple { --tone-bg: #ece6ff; --tone-ink: #7451e0; } +#page-lukenya-dashboard .lm-tone-rose { --tone-bg: #ffe6e8; --tone-ink: #dc4650; } +#page-lukenya-dashboard .lm-tone-amber { --tone-bg: #fff1d6; --tone-ink: #d98a0b; } +#page-lukenya-dashboard .lm-tone-teal { --tone-bg: #dcf5f4; --tone-ink: #12928f; } +#page-lukenya-dashboard .lm-tone-gold { --tone-bg: #fff0d1; --tone-ink: #e08a00; } +#page-lukenya-dashboard .lm-tone-peach { --tone-bg: #ffeadb; --tone-ink: #ec7a1f; } +#page-lukenya-dashboard .lm-tone-slate { --tone-bg: #e3ecfb; --tone-ink: #3563c9; } + +/* ---- Operations panel ----------------------------------------------------- */ + +#page-lukenya-dashboard .lm-ops { + padding: 20px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: var(--lm-card); + box-shadow: var(--lm-shadow); +} +#page-lukenya-dashboard .lm-ops__head { + display: flex; + align-items: center; + gap: 14px; + margin-bottom: 18px; +} +#page-lukenya-dashboard .lm-ops__head > div:not(.lm-menu) { + flex: 1; + min-width: 0; +} +#page-lukenya-dashboard .lm-ops__mark { + display: grid; + place-items: center; + width: 46px; + height: 46px; + border-radius: 12px; + background: #12417a; + color: #fff; +} +#page-lukenya-dashboard .lm-ops h2 { + margin: 0; + font-size: 18px; + font-weight: 700; + color: var(--lm-ink); +} +#page-lukenya-dashboard .lm-ops__head p { + margin: 2px 0 0; + font-size: 13px; + color: var(--lm-muted); +} + +#page-lukenya-dashboard .lm-menu { + position: relative; +} +#page-lukenya-dashboard .lm-quick { + display: inline-flex; + align-items: center; + gap: 8px; + padding: 9px 14px; + border: 1px solid #cfdcf7; + border-radius: var(--lm-radius-sm); + background: #eef3ff; + color: var(--lm-primary); + font-size: 13px; + font-weight: 600; + transition: background-color 0.15s ease; +} +#page-lukenya-dashboard .lm-quick:hover { + background: #e2ebff; +} +#page-lukenya-dashboard .lm-menu__list { + position: absolute; + right: 0; + top: calc(100% + 6px); + z-index: 5; + min-width: 200px; + padding: 6px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius-sm); + background: var(--lm-card); + box-shadow: var(--lm-shadow-hover); +} +#page-lukenya-dashboard .lm-menu__list[hidden] { + display: none; +} +#page-lukenya-dashboard .lm-menu__item { + display: block; + width: 100%; + padding: 9px 12px; + border: 0; + border-radius: 8px; + background: transparent; + font-size: 13px; + text-align: left; +} +#page-lukenya-dashboard .lm-menu__item:hover { + background: #f1f5fd; +} + +/* ---- Tiles ---------------------------------------------------------------- */ + +#page-lukenya-dashboard .lm-grid { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 14px; +} +#page-lukenya-dashboard .lm-tile { + position: relative; + display: flex; + align-items: flex-start; + gap: 14px; + padding: 16px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: var(--lm-card); + cursor: pointer; + transition: box-shadow 0.15s ease, border-color 0.15s ease; +} +#page-lukenya-dashboard .lm-tile:hover { + box-shadow: var(--lm-shadow-hover); + border-color: #d3dcee; +} +#page-lukenya-dashboard .lm-tile.is-soon { + cursor: default; + background: #fafbfe; +} +#page-lukenya-dashboard .lm-tile.is-soon:hover { + box-shadow: none; + border-color: var(--lm-line); +} +#page-lukenya-dashboard .lm-tile.is-soon .lm-chip { + filter: saturate(0.5); + opacity: 0.8; +} +#page-lukenya-dashboard .lm-tile__body { + flex: 1; + min-width: 0; +} +#page-lukenya-dashboard .lm-tile h3 { + margin: 0 0 4px; + font-size: 15px; + font-weight: 700; + color: var(--lm-ink); +} +#page-lukenya-dashboard .lm-tile p { + margin: 0 0 10px; + font-size: 12.5px; + line-height: 1.45; + color: var(--lm-muted); +} +#page-lukenya-dashboard .lm-tile__go { + color: var(--lm-muted); +} +#page-lukenya-dashboard .lm-tile__foot { + display: flex; + flex-wrap: wrap; + align-items: center; + gap: 6px; +} +#page-lukenya-dashboard .lm-count { + display: inline-block; + min-width: 28px; + padding: 2px 10px; + border-radius: 999px; + background: #e9f0ff; + color: #2a58c9; + font-size: 12px; + font-weight: 700; + text-align: center; +} +#page-lukenya-dashboard .lm-pill { + padding: 2px 10px; + border: 1px solid var(--lm-line); + border-radius: 999px; + background: #fff; + color: var(--lm-muted); + font-size: 12px; + transition: border-color 0.15s ease, color 0.15s ease; +} +#page-lukenya-dashboard .lm-pill:hover { + border-color: var(--lm-primary); + color: var(--lm-primary); +} +#page-lukenya-dashboard .lm-soon { + display: inline-block; + padding: 2px 10px; + border-radius: 999px; + background: #eef1f7; + color: var(--lm-muted); + font-size: 12px; +} + +/* ---- New event bar -------------------------------------------------------- */ + +#page-lukenya-dashboard .lm-newevent { + display: flex; + align-items: center; + gap: 14px; + margin-top: 16px; + padding: 14px 16px; + border-radius: var(--lm-radius); + background: #edf3ff; +} +#page-lukenya-dashboard .lm-newevent__icon { + color: var(--lm-primary); +} +#page-lukenya-dashboard .lm-newevent > div { + flex: 1; + display: flex; + flex-direction: column; + gap: 2px; + min-width: 0; +} +#page-lukenya-dashboard .lm-newevent strong { + font-size: 14px; + color: #1b3f8f; +} +#page-lukenya-dashboard .lm-newevent > div > span { + font-size: 12.5px; + color: var(--lm-muted); +} +#page-lukenya-dashboard .lm-cta { + display: inline-flex; + align-items: center; + gap: 8px; + padding: 10px 18px; + border: 0; + border-radius: var(--lm-radius-sm); + background: var(--lm-primary); + color: var(--lm-primary-ink); + font-size: 14px; + font-weight: 600; + box-shadow: 0 6px 14px rgba(47, 107, 255, 0.3); + transition: background-color 0.15s ease; +} +#page-lukenya-dashboard .lm-cta:hover { + background: #2459e0; +} + +#page-lukenya-dashboard .lm-notice { + margin-bottom: 18px; + padding: 14px 16px; + border: 1px solid #f3c9cd; + border-radius: var(--lm-radius-sm); + background: #fff1f2; + color: #a3303a; + font-size: 13px; +} + +/* ---- Focus and motion ----------------------------------------------------- */ + +#page-lukenya-dashboard .lm-app :is(button, .lm-tile):focus-visible { + outline: 2px solid var(--lm-primary); + outline-offset: 2px; +} + +@media (prefers-reduced-motion: reduce) { + #page-lukenya-dashboard .lm-app * { + transition: none !important; + } +} + +/* ---- Responsive ----------------------------------------------------------- */ + +@media (max-width: 1200px) { + #page-lukenya-dashboard .lm-kpis { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } + #page-lukenya-dashboard .lm-grid { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } +} + +@media (max-width: 900px) { + #page-lukenya-dashboard .lm-app { + grid-template-columns: minmax(0, 1fr); + } + #page-lukenya-dashboard .lm-main { + padding: 16px; + } +} + +@media (max-width: 640px) { + #page-lukenya-dashboard .lm-kpis, + #page-lukenya-dashboard .lm-grid { + grid-template-columns: minmax(0, 1fr); + } + #page-lukenya-dashboard .lm-hero__art { + display: none; + } + #page-lukenya-dashboard .lm-ops__head { + flex-wrap: wrap; + } + #page-lukenya-dashboard .lm-newevent { + flex-wrap: wrap; + } +} diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_dashboard/lukenya_dashboard.js b/lukenya_marathon/lukenya_marathon/page/lukenya_dashboard/lukenya_dashboard.js new file mode 100644 index 0000000..baeb1ac --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_dashboard/lukenya_dashboard.js @@ -0,0 +1,303 @@ +/* Lukenya Marathon - staff dashboard (Desk page). + * Layout and copy live here; colours, spacing and type live in lukenya_dashboard.css. + */ +(function () { + const PAGE = "lukenya-dashboard"; + const API = "lukenya_marathon.lukenya_marathon.dashboard.get_dashboard_stats"; + + // Feather-style line icons (inner SVG only). + const ICON = { + grid: '', + calendar: '', + users: '', + flag: '', + card: '', + chart: '', + sliders: '', + award: '', + run: '', + heart: '', + file: '', + right: '', + plus: '', + zap: '', + bulb: '', + tool: '', + up: '', + down: '', + }; + + const svg = (name, size) => + ``; + + const esc = (s) => frappe.utils.escape_html(s == null ? "" : String(s)); + + const canRead = (doctype) => { + const list = frappe.boot && frappe.boot.user && frappe.boot.user.can_read; + return Array.isArray(list) ? list.includes(doctype) : true; + }; + + // ---- Configuration ------------------------------------------------------- + + const KPIS = [ + { key: "participants", label: __("Total Participants"), icon: "users", tone: "blue", route: "lukenya-participants", doctype: "Participant", compare: __("vs prior 30 days") }, + { key: "editions", label: __("Event Editions"), icon: "calendar", tone: "green", doctype: "Event Edition", compare: __("vs prior 30 days") }, + { key: "revenue", label: __("Total Revenue"), icon: "card", tone: "purple", doctype: "Payment Transaction", compare: __("vs prior 30 days"), money: true }, + { key: "categories", label: __("Race Categories"), icon: "award", tone: "rose", doctype: "Race Category", compare: __("active categories") }, + ]; + + // `pills` are secondary lists that belong to the same area of work. + const TILES = [ + { id: "event_setup", title: __("Event Setup"), desc: __("Configure editions, dates, venues and status."), icon: "calendar", tone: "blue", route: "lukenya-events" }, + { id: "race_categories", title: __("Race Categories"), desc: __("Distances, prices and capacity for each race."), icon: "run", tone: "green", route: "lukenya-race-management" }, + { id: "registrations", title: __("Participants & Registration"), desc: __("View and manage entries and runner records."), icon: "users", tone: "purple", route: "lukenya-participants" }, + { id: "payments", title: __("Payments & Transactions"), desc: __("Track payments, refunds and reconciliation."), icon: "card", tone: "amber", route: "lukenya-payments" }, + { id: "race_day", title: __("Race Day"), desc: __("Bibs, race packs, check-in and timing."), icon: "flag", tone: "teal", doctype: "Bib Allocation", pills: ["Race Pack Issue", "Check-in", "Timing Result"] }, + { id: "prizes", title: __("Prizes & Awards"), desc: __("Set prize rules and approve winners."), icon: "award", tone: "gold", doctype: "Prize Award", pills: ["Prize Rule"] }, + { id: "volunteers", title: __("Volunteers & Impact"), desc: __("Volunteer shifts and tree planting records."), icon: "heart", tone: "peach", doctype: "Volunteer", pills: ["Volunteer Shift", "Tree Impact Record"] }, + { id: "reports", title: __("Reports & Analytics"), desc: __("Entries, revenue, race day, results and impact."), icon: "file", tone: "teal", route: "lukenya-reports", nocount: true }, + { id: "settings", title: __("Settings"), desc: __("Event preferences, notifications and system setup."), icon: "sliders", tone: "slate", soon: true }, + ]; + + const QUICK_ACTIONS = [ + { label: __("New registration"), doctype: "Registration" }, + { label: __("New participant"), doctype: "Participant" }, + { label: __("Record payment"), doctype: "Payment Transaction" }, + { label: __("Allocate bib"), doctype: "Bib Allocation" }, + { label: __("New event edition"), doctype: "Event Edition" }, + ]; + + // ---- Dashboard ----------------------------------------------------------- + + class LukenyaDashboard { + constructor(wrapper) { + this.wrapper = wrapper; + this.$root = $(wrapper).find(".layout-main-section"); + this.data = null; + this.error = false; + this.render(); + this.bind(); + } + + load() { + frappe.call({ + method: API, + callback: (r) => { + this.data = r.message || null; + this.error = !this.data; + this.render(); + }, + error: () => { + this.error = true; + this.render(); + }, + }); + } + + // -- rendering -- + + render() { + this.$root.html( + `
${this.sidebar()}
${this.hero()}${this.kpiRow()}${this.operations()}
` + ); + } + + sidebar() { + return lukenya.nav.render("lukenya-dashboard"); + } + + hero() { + const first = (frappe.session.user_fullname || frappe.session.user || "").split(" ")[0]; + const edition = this.data && this.data.edition && this.data.edition.edition_name; + return ` +
+
+ +

${esc(__("Welcome back, {0}", [first]))}

+

${esc(__("Here's what's happening with {0}", [edition || __("Lukenya Marathon")]))}

+
+ +
`; + } + + kpiRow() { + if (this.error) { + return ``; + } + const cards = KPIS.map((k) => { + const kpi = this.data && this.data.kpis[k.key]; + const valueHtml = kpi + ? esc(k.money ? this.money(kpi.value) : Number(kpi.value || 0).toLocaleString()) + : "–"; + return ` + `; + }).join(""); + return `
${cards}
`; + } + + trend(kpi, cfg) { + if (!kpi) return ` `; + if (kpi.trend == null) { + return `${esc(cfg.compare)}`; + } + if (kpi.trend === 0) { + return `${esc(__("No change"))} ${esc(cfg.compare)}`; + } + const up = kpi.trend > 0; + return `${svg(up ? "up" : "down", 12)}${Math.abs(kpi.trend)}% ${esc(cfg.compare)}`; + } + + operations() { + const counts = (this.data && this.data.tiles) || {}; + const tiles = TILES.map((t) => { + const pills = (t.pills || []) + .filter((pill) => typeof pill !== "string" || canRead(pill)) + .map((pill) => + typeof pill === "string" + ? `` + : `` + ) + .join(""); + const count = t.soon || t.nocount ? "" : `${counts[t.id] != null ? counts[t.id] : "–"}`; + const attrs = t.soon + ? 'class="lm-tile is-soon" aria-disabled="true"' + : t.route + ? `class="lm-tile" role="link" tabindex="0" data-route="${esc(t.route)}"` + : `class="lm-tile" role="link" tabindex="0" data-doctype="${esc(t.doctype)}"`; + return ` +
+ ${svg(t.icon, 22)} +
+

${esc(t.title)}

+

${esc(t.desc)}

+ ${t.soon ? `${esc(__("Coming soon"))}` : `
${count}${pills}
`} +
+ ${t.soon ? "" : `${svg("right", 16)}`} +
`; + }).join(""); + + const actions = QUICK_ACTIONS.filter((a) => canRead(a.doctype)) + .map((a) => ``) + .join(""); + + return ` +
+
+ ${svg("tool", 22)} +
+

${esc(__("Marathon Operations"))}

+

${esc(__("Manage all event-related activities from one place."))}

+
+
+ + +
+
+
${tiles}
+
+ ${svg("bulb", 20)} +
+ ${esc(__("Need to create a new event?"))} + ${esc(__("Set up a new edition, then add its race categories."))} +
+ +
+
`; + } + + money(value) { + const currency = (this.data && this.data.currency) || "KES"; + try { + return format_currency(value || 0, currency, 0); + } catch (e) { + return currency + " " + Number(value || 0).toLocaleString(); + } + } + + // -- interaction -- + + bind() { + const closeMenu = () => { + this.$root.find(".lm-menu__list").attr("hidden", true); + this.$root.find(".lm-quick").attr("aria-expanded", "false"); + }; + + this.$root.on("click", (e) => { + const target = e.target; + + const action = target.closest("[data-action]"); + if (action && action.dataset.action === "menu") { + const $list = this.$root.find(".lm-menu__list"); + const open = $list.attr("hidden") === undefined; + if (open) closeMenu(); + else { + $list.removeAttr("hidden"); + $(action).attr("aria-expanded", "true"); + } + return; + } + if (action && action.dataset.action === "workspace") { + frappe.set_route("Workspaces", "Lukenya Marathon"); + return; + } + + closeMenu(); + + const creator = target.closest("[data-new]"); + if (creator) { + frappe.new_doc(creator.dataset.new); + return; + } + + const route = target.closest("[data-route]"); + if (route) { + frappe.set_route(route.dataset.route); + return; + } + + const link = target.closest("[data-doctype]"); + if (link && !link.classList.contains("is-soon")) { + frappe.set_route("List", link.dataset.doctype); + } + }); + + this.$root.on("keydown", (e) => { + if (e.key === "Escape") closeMenu(); + if (e.key === "Enter" && e.target.classList.contains("lm-tile")) { + if (e.target.dataset.route) frappe.set_route(e.target.dataset.route); + else frappe.set_route("List", e.target.dataset.doctype); + } + }); + } + } + + // ---- Page hooks ---------------------------------------------------------- + + frappe.pages[PAGE].on_page_load = function (wrapper) { + frappe.ui.make_app_page({ + parent: wrapper, + title: __("Lukenya Marathon"), + single_column: true, + }); + wrapper.lm_dashboard = new LukenyaDashboard(wrapper); + }; + + frappe.pages[PAGE].on_page_show = function (wrapper) { + if (wrapper.lm_dashboard) wrapper.lm_dashboard.load(); + }; +})(); diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_dashboard/lukenya_dashboard.json b/lukenya_marathon/lukenya_marathon/page/lukenya_dashboard/lukenya_dashboard.json new file mode 100644 index 0000000..6594a63 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_dashboard/lukenya_dashboard.json @@ -0,0 +1,20 @@ +{ + "creation": "2026-09-20 00:00:00.000000", + "docstatus": 0, + "doctype": "Page", + "idx": 0, + "modified": "2026-09-20 00:00:00.000000", + "modified_by": "Administrator", + "module": "Lukenya Marathon", + "name": "lukenya-dashboard", + "owner": "Administrator", + "page_name": "lukenya-dashboard", + "roles": [ + { + "role": "System Manager" + } + ], + "standard": "Yes", + "system_page": 0, + "title": "Lukenya Dashboard" +} diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_events/__init__.py b/lukenya_marathon/lukenya_marathon/page/lukenya_events/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_events/lukenya_events.css b/lukenya_marathon/lukenya_marathon/page/lukenya_events/lukenya_events.css new file mode 100644 index 0000000..db105fc --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_events/lukenya_events.css @@ -0,0 +1,237 @@ +#page-lukenya-events, +#page-lukenya-events .page-body, +#page-lukenya-events .layout-main-section-wrapper, +#page-lukenya-events .layout-main-section { + width: 100% !important; + max-width: none !important; + margin: 0 !important; + padding-left: 0 !important; + padding-right: 0 !important; +} + +#page-lukenya-events .page-head { + display: none !important; +} + +#page-lukenya-events .lm-events-layout { + display: grid; + grid-template-columns: 248px minmax(0, 1fr); + width: 100%; + min-height: calc(100vh - var(--navbar-height, 48px)); + background: #f5f7fb; +} + +/* Sidebar is shared across every lukenya-* page: + public/css/lukenya_navigation.css */ + +#page-lukenya-events .lm-events-main { + width: 100%; + min-width: 0; + padding: 28px 34px 40px; + overflow-x: auto; +} + +#page-lukenya-events .lm-events-header, +#page-lukenya-events .lm-events-edition-header, +#page-lukenya-events .lm-events-section-title { + display: flex; + align-items: center; + justify-content: space-between; + gap: 20px; +} + +#page-lukenya-events .lm-events-header { + margin-bottom: 20px; +} + +#page-lukenya-events h1, +#page-lukenya-events h2, +#page-lukenya-events h3 { + margin: 0 0 6px; + color: #16233d; +} + +#page-lukenya-events h1 { + font-size: 28px; +} + +#page-lukenya-events h2 { + font-size: 20px; +} + +#page-lukenya-events h3 { + font-size: 16px; +} + +#page-lukenya-events .lm-events-eyebrow { + margin: 0 0 5px; + color: #2f6bff; + font-size: 12px; + font-weight: 700; + text-transform: uppercase; + letter-spacing: .08em; +} + +#page-lukenya-events .lm-events-muted { + margin: 0; + color: #75829a; + font-size: 13px; +} + +#page-lukenya-events .lm-events-actions, +#page-lukenya-events .lm-events-edition-actions { + display: flex; + align-items: center; + flex-wrap: wrap; + gap: 8px; +} + +#page-lukenya-events .lm-events-card { + border: 1px solid #e2e7f0; + border-radius: 12px; + background: #fff; + box-shadow: 0 5px 18px rgba(30, 48, 80, .05); +} + +#page-lukenya-events .lm-events-kpis { + display: grid; + grid-template-columns: repeat(5, minmax(0, 1fr)); + gap: 12px; + margin-bottom: 18px; +} + +#page-lukenya-events .lm-events-kpi { + min-height: 105px; + padding: 16px; +} + +#page-lukenya-events .lm-events-kpi span, +#page-lukenya-events .lm-events-stats span { + display: block; + color: #75829a; + font-size: 12px; +} + +#page-lukenya-events .lm-events-kpi strong { + display: block; + margin-top: 10px; + color: #16233d; + font-size: 28px; +} + +#page-lukenya-events .lm-events-edition { + margin-bottom: 18px; + padding: 20px; +} + +#page-lukenya-events .lm-events-status { + display: inline-block; + margin-bottom: 8px; + padding: 4px 8px; + border-radius: 20px; + background: #e8f7ed; + color: #198754; + font-size: 11px; + font-weight: 700; + text-transform: uppercase; +} + +#page-lukenya-events .lm-events-stats { + display: grid; + grid-template-columns: repeat(4, minmax(0, 1fr)); + gap: 12px; + margin: 20px 0; + padding: 14px 0; + border-top: 1px solid #edf0f5; + border-bottom: 1px solid #edf0f5; +} + +#page-lukenya-events .lm-events-stats strong { + display: block; + margin-top: 5px; + color: #16233d; + font-size: 20px; +} + +#page-lukenya-events .lm-events-section-title { + margin-bottom: 12px; +} + +#page-lukenya-events .lm-events-table { + width: 100%; + min-width: 820px; + margin-bottom: 0; +} + +#page-lukenya-events .lm-events-link { + border: 0; + padding: 0; + background: transparent; + color: #2f6bff; + font-weight: 600; +} + +#page-lukenya-events .lm-active, +#page-lukenya-events .lm-inactive { + display: inline-block; + padding: 4px 8px; + border-radius: 20px; + font-size: 11px; + font-weight: 700; +} + +#page-lukenya-events .lm-active { + background: #e8f7ed; + color: #198754; +} + +#page-lukenya-events .lm-inactive { + background: #f1f3f5; + color: #75829a; +} + +#page-lukenya-events .lm-events-loading, +#page-lukenya-events .lm-events-empty, +#page-lukenya-events .lm-events-error { + padding: 28px; +} + +#page-lukenya-events .lm-events-error { + color: #b42318; +} + +@media (max-width: 1100px) { + #page-lukenya-events .lm-events-kpis { + grid-template-columns: repeat(3, minmax(0, 1fr)); + } +} + +@media (max-width: 760px) { + #page-lukenya-events .lm-events-layout { + display: block; + } + + #page-lukenya-events .lm-side { + display: none; + } + + #page-lukenya-events .lm-events-main { + padding: 16px; + } + + #page-lukenya-events .lm-events-header, + #page-lukenya-events .lm-events-edition-header { + display: block; + } + + #page-lukenya-events .lm-events-actions, + #page-lukenya-events .lm-events-edition-actions { + margin-top: 14px; + } + + #page-lukenya-events .lm-events-kpis, + #page-lukenya-events .lm-events-stats { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } +} + diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_events/lukenya_events.js b/lukenya_marathon/lukenya_marathon/page/lukenya_events/lukenya_events.js new file mode 100644 index 0000000..ee9b8bf --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_events/lukenya_events.js @@ -0,0 +1,351 @@ +frappe.provide("lukenya.events"); + +(() => { + const PAGE = "lukenya-events"; + const API = "lukenya_marathon.lukenya_marathon.events_management."; + + const esc = (value) => + frappe.utils.escape_html(value == null ? "" : String(value)); + + const jsonFilters = (filters) => + esc(JSON.stringify(filters)); + + class EventsPage { + constructor(wrapper) { + this.wrapper = wrapper; + this.editions = []; + this.metrics = {}; + + this.$root = $(wrapper).find(".layout-main-section"); + + this.renderShell(); + this.bindEvents(); + } + + renderShell() { + this.$root.html(` +
+ ${lukenya.nav.render("lukenya-events")} + +
+
+
+

+ Event setup +

+ +

Events

+ +

+ Manage marathon editions, dates, venues, + race categories and registration capacity. +

+
+ +
+ + + + + +
+
+ +
+
+ Loading events... +
+
+
+
+ `); + } + + bindEvents() { + this.$root.on("click", "[data-action='refresh']", () => { + this.load(); + }); + + this.$root.on("click", "[data-new]", (event) => { + const doctype = event.currentTarget.dataset.new; + frappe.new_doc(doctype); + }); + + this.$root.on("click", "[data-route]", (event) => { + const route = event.currentTarget.dataset.route; + + if (route) { + frappe.set_route(route); + } + }); + + this.$root.on("click", "[data-doctype]", (event) => { + const doctype = event.currentTarget.dataset.doctype; + + if (doctype) { + frappe.set_route("List", doctype); + } + }); + + this.$root.on("click", "[data-open-doc]", (event) => { + const doctype = event.currentTarget.dataset.openDoc; + const name = event.currentTarget.dataset.name; + + frappe.set_route("Form", doctype, name); + }); + + this.$root.on("click", "[data-open-list]", (event) => { + const doctype = event.currentTarget.dataset.openList; + const filters = JSON.parse( + event.currentTarget.dataset.filters || "{}" + ); + + frappe.route_options = filters; + frappe.set_route("List", doctype); + }); + } + + show() { + this.load(); + } + + load() { + this.$root.find("[data-content]").html(` +
+ Loading events... +
+ `); + + frappe.call({ + method: API + "get_event_metrics", + callback: (metricsResponse) => { + this.metrics = metricsResponse.message || {}; + + frappe.call({ + method: API + "get_events_summary", + callback: (eventsResponse) => { + this.editions = eventsResponse.message || []; + this.render(); + }, + error: () => { + this.showError( + "Could not load Event Editions." + ); + } + }); + }, + error: () => { + this.showError("Could not load event metrics."); + } + }); + } + + render() { + const m = this.metrics || {}; + + const cards = [ + ["Total editions", m.total || 0], + ["Open", m.open || 0], + ["Draft", m.draft || 0], + ["Completed", m.completed || 0], + ["Race categories", m.categories || 0] + ]; + + const editionCards = this.editions.length + ? this.editions.map((edition) => + this.renderEdition(edition) + ).join("") + : ` +
+ No Event Editions found. + Create your first Event Edition to continue. +
+ `; + + this.$root.find("[data-content]").html(` +
+ ${cards.map((card) => ` +
+ ${esc(card[0])} + ${esc(card[1])} +
+ `).join("")} +
+ +
+ ${editionCards} +
+ `); + } + + renderEdition(edition) { + const categories = edition.categories || []; + + const categoryRows = categories.length + ? categories.map((category) => ` + + + + + ${esc(category.discipline || "-")} + ${esc(category.distance_km || "-")} km + ${esc(category.start_time || "-")} + ${esc(category.capacity || 0)} + ${esc(category.kenyan_price || 0)} + + + ${category.active ? "Active" : "Inactive"} + + + + `).join("") + : ` + + + No race categories configured. + + + `; + + return ` +
+
+
+
+ ${esc(edition.status || "")} +
+ +

+ ${esc( + edition.edition_name || + edition.name + )} +

+ +

+ Code: ${esc(edition.edition_code || "-")} + · Date: ${esc(edition.event_date || "-")} + · Venue: ${esc(edition.venue || "-")} +

+
+ +
+ + + +
+
+ +
+
+ Registrations + ${esc(edition.registration_count || 0)} +
+ +
+ Paid entries + ${esc(edition.paid_count || 0)} +
+ +
+ Categories + ${esc(edition.category_count || 0)} +
+ +
+ Capacity + ${esc(edition.registration_capacity || 0)} +
+
+ +
+
+

Race categories

+

+ Categories configured for this edition. +

+
+ + +
+ +
+ + + + + + + + + + + + + + + ${categoryRows} + +
CategoryDisciplineDistanceStartCapacityKenyan priceStatus
+
+
+ `; + } + + showError(message) { + this.$root.find("[data-content]").html(` +
+ ${esc(message)} +
+ `); + } + } + + frappe.pages[PAGE].on_page_load = (wrapper) => { + frappe.ui.make_app_page({ + parent: wrapper, + title: __("Events"), + single_column: true + }); + + wrapper.eventsPage = new EventsPage(wrapper); + }; + + frappe.pages[PAGE].on_page_show = (wrapper) => { + if (wrapper.eventsPage) { + wrapper.eventsPage.show(); + } + }; +})(); diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_events/lukenya_events.json b/lukenya_marathon/lukenya_marathon/page/lukenya_events/lukenya_events.json new file mode 100644 index 0000000..c6e9a35 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_events/lukenya_events.json @@ -0,0 +1,20 @@ +{ + "creation": "2026-09-22 00:00:00.000000", + "docstatus": 0, + "doctype": "Page", + "idx": 0, + "modified": "2026-09-22 00:00:00.000000", + "modified_by": "Administrator", + "module": "Lukenya Marathon", + "name": "lukenya-events", + "owner": "Administrator", + "page_name": "lukenya-events", + "roles": [ + {"role": "System Manager"}, + {"role": "Race Director"}, + {"role": "Registration Desk"} + ], + "standard": "Yes", + "system_page": 0, + "title": "Events" +} diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_participants/__init__.py b/lukenya_marathon/lukenya_marathon/page/lukenya_participants/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_participants/lukenya_participants.css b/lukenya_marathon/lukenya_marathon/page/lukenya_participants/lukenya_participants.css new file mode 100644 index 0000000..9a3f6c5 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_participants/lukenya_participants.css @@ -0,0 +1,1309 @@ +/* Lukenya Marathon participants page. Shares its shell (sidebar, tokens) with the dashboard. + * Everything is scoped to #page-lukenya-participants so nothing leaks into the rest of Desk. + * Change the look from the tokens block below. + */ + +#page-lukenya-participants { + /* Tokens: surface */ + --lm-bg: #f3f6fb; + --lm-card: #ffffff; + --lm-line: #e5eaf3; + --lm-ink: #17233d; + --lm-muted: #66748f; + + /* Tokens: brand */ + --lm-primary: #2f6bff; + --lm-primary-ink: #ffffff; + + /* Tokens: shape */ + --lm-radius: 14px; + --lm-radius-sm: 10px; + --lm-shadow: 0 1px 2px rgba(23, 35, 61, 0.05), 0 6px 18px rgba(23, 35, 61, 0.05); + --lm-shadow-hover: 0 2px 4px rgba(23, 35, 61, 0.07), 0 10px 24px rgba(23, 35, 61, 0.09); + + /* Tokens: hero photo (drop a file at public/images/lukenya-hero.jpg to use it) */ + --lm-hero-image: url("/assets/lukenya_marathon/images/lukenya-hero.jpg"); + + background: var(--lm-bg); + color: var(--lm-ink); +} + +/* Remove Desk's own page header and width limits on this page only. */ +#page-lukenya-participants .page-head { + display: none; +} +#page-lukenya-participants .container, +#page-lukenya-participants .page-body { + max-width: none; + margin: 0; + padding: 0; +} +#page-lukenya-participants .layout-main { + margin: 0; +} +#page-lukenya-participants .layout-main-section-wrapper, +#page-lukenya-participants .layout-main-section { + padding: 0; +} + +/* ---- Shell ---------------------------------------------------------------- */ + +#page-lukenya-participants .lm-app { + display: grid; + grid-template-columns: 248px minmax(0, 1fr); + min-height: calc(100vh - var(--navbar-height, 48px)); +} + +#page-lukenya-participants .lm-app, +#page-lukenya-participants .lm-app * { + box-sizing: border-box; +} + +/* :where() keeps this reset weaker than the component classes below. */ +#page-lukenya-participants :where(.lm-app) button { + font: inherit; + color: inherit; + cursor: pointer; +} + +#page-lukenya-participants .lm-ico { + flex: none; +} + +#page-lukenya-participants .lm-main { + padding: 24px 28px 32px; + min-width: 0; +} + +/* ---- Sidebar --------------------------------------------------------------- + * Now shared across every lukenya-* page: public/css/lukenya_navigation.css + * ---------------------------------------------------------------------- */ + +/* ---- Hero ----------------------------------------------------------------- */ + +#page-lukenya-participants .lm-hero { + position: relative; + display: flex; + align-items: center; + min-height: 140px; + margin-bottom: 18px; + border-radius: var(--lm-radius); + overflow: hidden; + background: var(--lm-card); + border: 1px solid var(--lm-line); + box-shadow: var(--lm-shadow); +} +#page-lukenya-participants .lm-hero__text { + position: relative; + z-index: 1; + padding: 24px 28px; +} +#page-lukenya-participants .lm-hero h1 { + margin: 0 0 6px; + font-size: 26px; + font-weight: 700; + line-height: 1.2; + color: var(--lm-ink); +} +#page-lukenya-participants .lm-hero p { + margin: 0; + font-size: 14px; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-hero__art { + position: absolute; + inset: 0 0 0 42%; + background-image: + linear-gradient(90deg, var(--lm-card) 0%, rgba(255, 255, 255, 0) 45%), + var(--lm-hero-image), + linear-gradient(180deg, #cfe0f5 0%, #e9eef0 45%, #9fb590 46%, #6f8a63 100%); + background-size: cover; + background-position: center; +} +#page-lukenya-participants .lm-hero__tag { + position: absolute; + top: 22px; + right: 32px; + font-family: "Segoe Script", "Bradley Hand", "Snell Roundhand", cursive; + font-size: 20px; + line-height: 1.15; + text-align: right; + color: #0f2a55; + transform: rotate(-6deg); + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.7); +} + +/* ---- KPI row -------------------------------------------------------------- */ + +#page-lukenya-participants .lm-kpis { + display: grid; + grid-template-columns: repeat(4, minmax(0, 1fr)); + gap: 14px; + margin-bottom: 18px; +} +#page-lukenya-participants .lm-kpi { + position: relative; + display: flex; + align-items: center; + gap: 14px; + padding: 16px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: var(--lm-card); + box-shadow: var(--lm-shadow); + text-align: left; + transition: box-shadow 0.15s ease, border-color 0.15s ease; +} +#page-lukenya-participants .lm-kpi:hover { + box-shadow: var(--lm-shadow-hover); + border-color: #d3dcee; +} +#page-lukenya-participants .lm-kpi__body { + display: flex; + flex-direction: column; + gap: 2px; + min-width: 0; + flex: 1; +} +#page-lukenya-participants .lm-kpi__label { + font-size: 13px; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-kpi__value { + font-size: 26px; + font-weight: 700; + line-height: 1.15; + color: var(--lm-ink); + white-space: nowrap; +} +#page-lukenya-participants .lm-kpi__go { + position: absolute; + top: 14px; + right: 14px; + color: var(--lm-muted); +} + +#page-lukenya-participants .lm-trend { + display: inline-flex; + align-items: center; + gap: 4px; + font-size: 12px; + font-weight: 600; +} +#page-lukenya-participants .lm-trend em { + font-style: normal; + font-weight: 400; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-trend.is-up { + color: #1f9d5a; +} +#page-lukenya-participants .lm-trend.is-down { + color: #d0424b; +} +#page-lukenya-participants .lm-trend.is-flat { + color: var(--lm-muted); + font-weight: 400; +} + +/* ---- Icon chips and tones ------------------------------------------------- */ + +#page-lukenya-participants .lm-chip { + display: grid; + place-items: center; + flex: none; + width: 46px; + height: 46px; + border-radius: 999px; + background: var(--tone-bg, #e8f0ff); + color: var(--tone-ink, #2f6bff); +} +#page-lukenya-participants .lm-tone-blue { --tone-bg: #e5eeff; --tone-ink: #2f6bff; } +#page-lukenya-participants .lm-tone-green { --tone-bg: #e1f6ea; --tone-ink: #1f9d5a; } +#page-lukenya-participants .lm-tone-purple { --tone-bg: #ece6ff; --tone-ink: #7451e0; } +#page-lukenya-participants .lm-tone-rose { --tone-bg: #ffe6e8; --tone-ink: #dc4650; } +#page-lukenya-participants .lm-tone-amber { --tone-bg: #fff1d6; --tone-ink: #d98a0b; } +#page-lukenya-participants .lm-tone-teal { --tone-bg: #dcf5f4; --tone-ink: #12928f; } +#page-lukenya-participants .lm-tone-gold { --tone-bg: #fff0d1; --tone-ink: #e08a00; } +#page-lukenya-participants .lm-tone-peach { --tone-bg: #ffeadb; --tone-ink: #ec7a1f; } +#page-lukenya-participants .lm-tone-slate { --tone-bg: #e3ecfb; --tone-ink: #3563c9; } + +/* ---- Operations panel ----------------------------------------------------- */ + +#page-lukenya-participants .lm-ops { + padding: 20px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: var(--lm-card); + box-shadow: var(--lm-shadow); +} +#page-lukenya-participants .lm-ops__head { + display: flex; + align-items: center; + gap: 14px; + margin-bottom: 18px; +} +#page-lukenya-participants .lm-ops__head > div:not(.lm-menu) { + flex: 1; + min-width: 0; +} +#page-lukenya-participants .lm-ops__mark { + display: grid; + place-items: center; + width: 46px; + height: 46px; + border-radius: 12px; + background: #12417a; + color: #fff; +} +#page-lukenya-participants .lm-ops h2 { + margin: 0; + font-size: 18px; + font-weight: 700; + color: var(--lm-ink); +} +#page-lukenya-participants .lm-ops__head p { + margin: 2px 0 0; + font-size: 13px; + color: var(--lm-muted); +} + +#page-lukenya-participants .lm-menu { + position: relative; +} +#page-lukenya-participants .lm-quick { + display: inline-flex; + align-items: center; + gap: 8px; + padding: 9px 14px; + border: 1px solid #cfdcf7; + border-radius: var(--lm-radius-sm); + background: #eef3ff; + color: var(--lm-primary); + font-size: 13px; + font-weight: 600; + transition: background-color 0.15s ease; +} +#page-lukenya-participants .lm-quick:hover { + background: #e2ebff; +} +#page-lukenya-participants .lm-menu__list { + position: absolute; + right: 0; + top: calc(100% + 6px); + z-index: 5; + min-width: 200px; + padding: 6px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius-sm); + background: var(--lm-card); + box-shadow: var(--lm-shadow-hover); +} +#page-lukenya-participants .lm-menu__list[hidden] { + display: none; +} +#page-lukenya-participants .lm-menu__item { + display: block; + width: 100%; + padding: 9px 12px; + border: 0; + border-radius: 8px; + background: transparent; + font-size: 13px; + text-align: left; +} +#page-lukenya-participants .lm-menu__item:hover { + background: #f1f5fd; +} + +/* ---- Tiles ---------------------------------------------------------------- */ + +#page-lukenya-participants .lm-grid { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 14px; +} +#page-lukenya-participants .lm-tile { + position: relative; + display: flex; + align-items: flex-start; + gap: 14px; + padding: 16px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: var(--lm-card); + cursor: pointer; + transition: box-shadow 0.15s ease, border-color 0.15s ease; +} +#page-lukenya-participants .lm-tile:hover { + box-shadow: var(--lm-shadow-hover); + border-color: #d3dcee; +} +#page-lukenya-participants .lm-tile.is-soon { + cursor: default; + background: #fafbfe; +} +#page-lukenya-participants .lm-tile.is-soon:hover { + box-shadow: none; + border-color: var(--lm-line); +} +#page-lukenya-participants .lm-tile.is-soon .lm-chip { + filter: saturate(0.5); + opacity: 0.8; +} +#page-lukenya-participants .lm-tile__body { + flex: 1; + min-width: 0; +} +#page-lukenya-participants .lm-tile h3 { + margin: 0 0 4px; + font-size: 15px; + font-weight: 700; + color: var(--lm-ink); +} +#page-lukenya-participants .lm-tile p { + margin: 0 0 10px; + font-size: 12.5px; + line-height: 1.45; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-tile__go { + color: var(--lm-muted); +} +#page-lukenya-participants .lm-tile__foot { + display: flex; + flex-wrap: wrap; + align-items: center; + gap: 6px; +} +#page-lukenya-participants .lm-count { + display: inline-block; + min-width: 28px; + padding: 2px 10px; + border-radius: 999px; + background: #e9f0ff; + color: #2a58c9; + font-size: 12px; + font-weight: 700; + text-align: center; +} +#page-lukenya-participants .lm-pill { + padding: 2px 10px; + border: 1px solid var(--lm-line); + border-radius: 999px; + background: #fff; + color: var(--lm-muted); + font-size: 12px; + transition: border-color 0.15s ease, color 0.15s ease; +} +#page-lukenya-participants .lm-pill:hover { + border-color: var(--lm-primary); + color: var(--lm-primary); +} +#page-lukenya-participants .lm-soon { + display: inline-block; + padding: 2px 10px; + border-radius: 999px; + background: #eef1f7; + color: var(--lm-muted); + font-size: 12px; +} + +/* ---- New event bar -------------------------------------------------------- */ + +#page-lukenya-participants .lm-newevent { + display: flex; + align-items: center; + gap: 14px; + margin-top: 16px; + padding: 14px 16px; + border-radius: var(--lm-radius); + background: #edf3ff; +} +#page-lukenya-participants .lm-newevent__icon { + color: var(--lm-primary); +} +#page-lukenya-participants .lm-newevent > div { + flex: 1; + display: flex; + flex-direction: column; + gap: 2px; + min-width: 0; +} +#page-lukenya-participants .lm-newevent strong { + font-size: 14px; + color: #1b3f8f; +} +#page-lukenya-participants .lm-newevent > div > span { + font-size: 12.5px; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-cta { + display: inline-flex; + align-items: center; + gap: 8px; + padding: 10px 18px; + border: 0; + border-radius: var(--lm-radius-sm); + background: var(--lm-primary); + color: var(--lm-primary-ink); + font-size: 14px; + font-weight: 600; + box-shadow: 0 6px 14px rgba(47, 107, 255, 0.3); + transition: background-color 0.15s ease; +} +#page-lukenya-participants .lm-cta:hover { + background: #2459e0; +} + +#page-lukenya-participants .lm-notice { + margin-bottom: 18px; + padding: 14px 16px; + border: 1px solid #f3c9cd; + border-radius: var(--lm-radius-sm); + background: #fff1f2; + color: #a3303a; + font-size: 13px; +} + +/* ---- Focus and motion ----------------------------------------------------- */ + +#page-lukenya-participants .lm-app :is(button, .lm-tile):focus-visible { + outline: 2px solid var(--lm-primary); + outline-offset: 2px; +} + +@media (prefers-reduced-motion: reduce) { + #page-lukenya-participants .lm-app * { + transition: none !important; + } +} + +/* ---- Responsive ----------------------------------------------------------- */ + +@media (max-width: 1200px) { + #page-lukenya-participants .lm-kpis { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } + #page-lukenya-participants .lm-grid { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } +} + +@media (max-width: 900px) { + #page-lukenya-participants .lm-app { + grid-template-columns: minmax(0, 1fr); + } + #page-lukenya-participants .lm-main { + padding: 16px; + } +} + +@media (max-width: 640px) { + #page-lukenya-participants .lm-kpis, + #page-lukenya-participants .lm-grid { + grid-template-columns: minmax(0, 1fr); + } + #page-lukenya-participants .lm-hero__art { + display: none; + } + #page-lukenya-participants .lm-ops__head { + flex-wrap: wrap; + } + #page-lukenya-participants .lm-newevent { + flex-wrap: wrap; + } +} + + +/* ==== Reports page ======================================================== */ + +#page-lukenya-participants .lm-rep { + display: flex; + flex-direction: column; + gap: 16px; +} +#page-lukenya-participants .lm-rep__head h1 { + margin: 0 0 4px; + font-size: 24px; + font-weight: 700; + color: var(--lm-ink); +} +#page-lukenya-participants .lm-rep__head p { + margin: 0; + font-size: 14px; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-rep__body { + display: flex; + flex-direction: column; + gap: 16px; + min-width: 0; +} + +/* Filters */ +#page-lukenya-participants .lm-filters { + display: flex; + flex-wrap: wrap; + align-items: flex-end; + gap: 12px; + padding: 14px 16px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: var(--lm-card); + box-shadow: var(--lm-shadow); +} +#page-lukenya-participants .lm-field { + display: flex; + flex-direction: column; + gap: 4px; + margin: 0; + font-size: 12px; + font-weight: 500; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-field select, +#page-lukenya-participants .lm-field input { + height: 36px; + min-width: 170px; + margin: 0; + padding: 0 10px; + border: 1px solid var(--lm-line); + border-radius: 8px; + background: #fff; + color: var(--lm-ink); + font-size: 13px; + box-shadow: none; +} +#page-lukenya-participants .lm-field select:focus, +#page-lukenya-participants .lm-field input:focus { + border-color: var(--lm-primary); + outline: 2px solid rgba(47, 107, 255, 0.2); +} +#page-lukenya-participants .lm-reset { + height: 36px; + padding: 0 14px; + border: 1px solid var(--lm-line); + border-radius: 8px; + background: #fff; + color: var(--lm-muted); + font-size: 13px; +} +#page-lukenya-participants .lm-reset:hover { + border-color: var(--lm-primary); + color: var(--lm-primary); +} +#page-lukenya-participants .lm-filters__note { + flex-basis: 100%; + margin: 0; + font-size: 12px; + color: var(--lm-muted); +} + +/* Tabs */ +#page-lukenya-participants .lm-tabs { + display: flex; + flex-wrap: wrap; + gap: 4px; + border-bottom: 1px solid var(--lm-line); +} +#page-lukenya-participants .lm-tab { + margin-bottom: -1px; + padding: 10px 14px; + border: 0; + border-bottom: 2px solid transparent; + background: transparent; + color: var(--lm-muted); + font-size: 14px; + font-weight: 600; + transition: color 0.15s ease; +} +#page-lukenya-participants .lm-tab:hover { + color: var(--lm-ink); +} +#page-lukenya-participants .lm-tab.is-active { + border-bottom-color: var(--lm-primary); + color: var(--lm-primary); +} + +/* KPI cards */ +#page-lukenya-participants .lm-stats { + display: grid; + grid-template-columns: repeat(var(--lm-cols, 4), minmax(0, 1fr)); + gap: 14px; +} +#page-lukenya-participants .lm-stat { + display: flex; + flex-direction: column; + gap: 2px; + padding: 16px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: var(--lm-card); + box-shadow: var(--lm-shadow); +} +#page-lukenya-participants .lm-stat__label { + font-size: 13px; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-stat__value { + font-size: 26px; + font-weight: 700; + line-height: 1.2; + white-space: nowrap; + color: var(--lm-ink); +} +#page-lukenya-participants .lm-stat__hint { + font-size: 12px; + color: var(--lm-muted); +} + +/* Needs attention */ +#page-lukenya-participants .lm-attn { + padding: 14px 16px; + border: 1px solid #f3dfb8; + border-radius: var(--lm-radius); + background: #fffaf0; +} +#page-lukenya-participants .lm-attn h2 { + margin: 0 0 8px; + font-size: 14px; + font-weight: 700; + color: #8a5a00; +} +#page-lukenya-participants .lm-attn ul { + display: flex; + flex-wrap: wrap; + gap: 8px; + margin: 0; + padding: 0; + list-style: none; +} +#page-lukenya-participants .lm-attn__item { + display: inline-flex; + align-items: center; + gap: 8px; + padding: 7px 12px; + border: 1px solid #f0d9a6; + border-radius: 999px; + background: #fff; + color: #6b4a00; + font-size: 13px; + transition: border-color 0.15s ease; +} +#page-lukenya-participants .lm-attn__item:hover { + border-color: #d99a1a; +} +#page-lukenya-participants .lm-attn__item.is-static { + cursor: default; +} +#page-lukenya-participants .lm-attn__item.is-static:hover { + border-color: #f0d9a6; +} + +/* Panels, charts and tables */ +#page-lukenya-participants .lm-charts { + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 14px; +} +#page-lukenya-participants .lm-panel { + min-width: 0; + padding: 16px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: var(--lm-card); + box-shadow: var(--lm-shadow); +} +#page-lukenya-participants .lm-panel.is-wide { + grid-column: 1 / -1; +} +#page-lukenya-participants .lm-panel > header { + display: flex; + align-items: center; + justify-content: space-between; + gap: 12px; + margin-bottom: 10px; +} +#page-lukenya-participants .lm-panel h3 { + margin: 0; + font-size: 15px; + font-weight: 700; + color: var(--lm-ink); +} +#page-lukenya-participants .lm-panel__actions { + display: flex; + gap: 14px; +} +#page-lukenya-participants .lm-linkbtn { + display: inline-flex; + align-items: center; + gap: 5px; + padding: 0; + border: 0; + background: transparent; + color: var(--lm-primary); + font-size: 12.5px; + font-weight: 600; +} +#page-lukenya-participants .lm-linkbtn:hover { + text-decoration: underline; +} +#page-lukenya-participants .lm-chart { + min-height: 200px; +} +#page-lukenya-participants .lm-empty { + margin: 0; + padding: 28px 0; + text-align: center; + font-size: 13px; + color: var(--lm-muted); +} + +#page-lukenya-participants .lm-tablewrap { + overflow-x: auto; +} +#page-lukenya-participants .lm-table { + width: 100%; + margin: 0; + border-collapse: collapse; + font-size: 13px; +} +#page-lukenya-participants .lm-table th { + padding: 8px 10px; + border-bottom: 1px solid var(--lm-line); + background: #f8fafd; + color: var(--lm-muted); + font-size: 12px; + font-weight: 600; + text-align: left; + white-space: nowrap; +} +#page-lukenya-participants .lm-table td { + padding: 9px 10px; + border-bottom: 1px solid #eef2f8; + color: var(--lm-ink); + white-space: nowrap; +} +#page-lukenya-participants .lm-table tr:last-child td { + border-bottom: 0; +} +#page-lukenya-participants .lm-table .is-int, +#page-lukenya-participants .lm-table .is-currency, +#page-lukenya-participants .lm-table .is-percent { + text-align: right; + font-variant-numeric: tabular-nums; +} +#page-lukenya-participants .lm-link { + color: var(--lm-primary); + font-weight: 600; +} + +#page-lukenya-participants .lm-loading { + padding: 60px 0; + text-align: center; + font-size: 14px; + color: var(--lm-muted); +} + +@media (max-width: 1100px) { + #page-lukenya-participants .lm-stats { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } +} + +@media (max-width: 560px) { + #page-lukenya-participants .lm-stats { + grid-template-columns: minmax(0, 1fr); + } +} + +@media (max-width: 900px) { + #page-lukenya-participants .lm-charts { + grid-template-columns: minmax(0, 1fr); + } + #page-lukenya-participants .lm-panel.is-wide { + grid-column: auto; + } + #page-lukenya-participants .lm-field { + flex: 1 1 140px; + } + #page-lukenya-participants .lm-field select, + #page-lukenya-participants .lm-field input { + width: 100%; + min-width: 0; + } +} + + +/* ==== Participants page =================================================== */ + +#page-lukenya-participants [hidden] { + display: none !important; +} + +#page-lukenya-participants .lm-pp { + position: relative; +} +#page-lukenya-participants .lm-pp__head { + display: flex; + flex-wrap: wrap; + align-items: flex-start; + justify-content: space-between; + gap: 14px; +} +#page-lukenya-participants .lm-pp__head h1 { + margin: 0 0 4px; + font-size: 24px; + font-weight: 700; + color: var(--lm-ink); +} +#page-lukenya-participants .lm-pp__head p { + margin: 0; + font-size: 14px; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-pp__actions { + display: flex; + flex-wrap: wrap; + gap: 8px; +} + +/* Buttons */ +#page-lukenya-participants .lm-btn, +#page-lukenya-participants a.lm-btn { + display: inline-flex; + align-items: center; + gap: 7px; + height: 36px; + padding: 0 14px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius-sm); + background: #fff; + color: var(--lm-ink); + font-size: 13px; + font-weight: 600; + text-decoration: none; + transition: border-color 0.15s ease, color 0.15s ease; +} +#page-lukenya-participants .lm-btn:hover:not(:disabled) { + border-color: var(--lm-primary); + color: var(--lm-primary); +} +#page-lukenya-participants .lm-btn:disabled, +#page-lukenya-participants .lm-cta:disabled { + opacity: 0.5; + cursor: not-allowed; +} +#page-lukenya-participants .lm-btn.is-on { + border-color: var(--lm-primary); + background: #eef3ff; + color: var(--lm-primary); +} +#page-lukenya-participants .lm-cta { + height: 36px; + padding: 0 16px; + font-size: 13px; +} +#page-lukenya-participants .lm-iconbtn { + display: grid; + place-items: center; + width: 34px; + height: 34px; + border: 0; + border-radius: 8px; + background: transparent; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-iconbtn:hover { + background: #eef2f8; + color: var(--lm-ink); +} + +/* Search */ +#page-lukenya-participants .lm-pp__search { + position: relative; + display: flex; + align-items: center; +} +#page-lukenya-participants .lm-pp__search .lm-ico { + position: absolute; + left: 14px; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-search { + width: 100%; + height: 46px; + margin: 0; + padding: 0 16px 0 44px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: #fff; + color: var(--lm-ink); + font-size: 15px; + box-shadow: var(--lm-shadow); +} +#page-lukenya-participants .lm-search:focus { + border-color: var(--lm-primary); + outline: 2px solid rgba(47, 107, 255, 0.2); +} + +/* Clickable stat cards */ +#page-lukenya-participants button.lm-stat { + text-align: left; + cursor: pointer; + transition: border-color 0.15s ease, box-shadow 0.15s ease; +} +#page-lukenya-participants button.lm-stat:hover { + border-color: #c9d6f0; + box-shadow: var(--lm-shadow-hover); +} +#page-lukenya-participants .lm-pp__stats .lm-stat__value { + font-size: 24px; +} + +/* Segment chips */ +#page-lukenya-participants .lm-chips { + display: flex; + flex-wrap: wrap; + gap: 8px; +} +#page-lukenya-participants .lm-chip2 { + padding: 6px 13px; + border: 1px solid var(--lm-line); + border-radius: 999px; + background: #fff; + color: var(--lm-muted); + font-size: 13px; + font-weight: 600; + transition: border-color 0.15s ease, color 0.15s ease; +} +#page-lukenya-participants .lm-chip2:hover:not(:disabled) { + border-color: var(--lm-primary); + color: var(--lm-primary); +} +#page-lukenya-participants .lm-chip2.is-active { + border-color: var(--lm-primary); + background: var(--lm-primary); + color: #fff; +} +#page-lukenya-participants .lm-chip2:disabled { + opacity: 0.45; + cursor: not-allowed; +} + +/* Directory table */ +#page-lukenya-participants .lm-pp__panel.is-loading { + opacity: 0.6; + transition: opacity 0.15s ease; +} +#page-lukenya-participants .lm-people th, +#page-lukenya-participants .lm-people td { + vertical-align: top; + white-space: normal; +} +#page-lukenya-participants .lm-row { + cursor: pointer; +} +#page-lukenya-participants .lm-row:hover td { + background: #f7f9fe; +} +#page-lukenya-participants .lm-row:focus-visible { + outline: 2px solid var(--lm-primary); + outline-offset: -2px; +} +#page-lukenya-participants .lm-person { + display: block; + font-weight: 600; + color: var(--lm-ink); +} +#page-lukenya-participants .lm-sub { + display: block; + font-size: 12px; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-flags { + max-width: 190px; +} +#page-lukenya-participants .lm-flags .lm-badge { + margin: 0 4px 4px 0; +} + +/* Badges */ +#page-lukenya-participants .lm-badge { + display: inline-block; + padding: 2px 9px; + border-radius: 999px; + font-size: 11.5px; + font-weight: 600; + line-height: 1.5; + white-space: nowrap; +} +#page-lukenya-participants .lm-badge--green { background: #e1f6ea; color: #17784a; } +#page-lukenya-participants .lm-badge--amber { background: #fff1d6; color: #9a6300; } +#page-lukenya-participants .lm-badge--red { background: #ffe6e8; color: #b3313b; } +#page-lukenya-participants .lm-badge--blue { background: #e5eeff; color: #2452c7; } +#page-lukenya-participants .lm-badge--grey { background: #eef1f7; color: #56637d; } + +/* Pager */ +#page-lukenya-participants .lm-pager { + display: flex; + flex-wrap: wrap; + align-items: center; + justify-content: space-between; + gap: 10px; + margin-top: 12px; + font-size: 13px; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-pager > div { + display: flex; + align-items: center; + gap: 10px; +} + +/* Profile drawer */ +#page-lukenya-participants .lm-scrim { + position: fixed; + inset: var(--navbar-height, 48px) 0 0 0; + z-index: 30; + background: rgba(13, 28, 57, 0.35); +} +#page-lukenya-participants .lm-drawer { + position: fixed; + top: var(--navbar-height, 48px); + right: 0; + bottom: 0; + z-index: 31; + width: min(460px, 100vw); + padding: 20px 22px 32px; + overflow-y: auto; + background: #fff; + box-shadow: -12px 0 32px rgba(23, 35, 61, 0.18); +} +#page-lukenya-participants .lm-drawer__head { + display: flex; + align-items: flex-start; + justify-content: space-between; + gap: 12px; + margin-bottom: 14px; +} +#page-lukenya-participants .lm-drawer h2 { + margin: 0 0 4px; + font-size: 20px; + font-weight: 700; + color: var(--lm-ink); +} +#page-lukenya-participants .lm-drawer__head p { + margin: 0 0 8px; + font-size: 13px; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-drawer__flags .lm-badge { + margin: 0 4px 4px 0; +} +#page-lukenya-participants .lm-drawer__actions { + display: flex; + flex-wrap: wrap; + gap: 8px; + margin-bottom: 8px; +} +#page-lukenya-participants .lm-sec { + padding: 16px 0; + border-top: 1px solid var(--lm-line); +} +#page-lukenya-participants .lm-sec h3 { + display: flex; + align-items: center; + gap: 6px; + margin: 0 0 10px; + font-size: 13px; + font-weight: 700; + letter-spacing: 0.02em; + text-transform: uppercase; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-sec dl { + margin: 0; +} +#page-lukenya-participants .lm-kv { + display: grid; + grid-template-columns: 130px minmax(0, 1fr); + gap: 10px; + padding: 4px 0; + font-size: 13.5px; +} +#page-lukenya-participants .lm-kv dt { + font-weight: 500; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-kv dd { + margin: 0; + color: var(--lm-ink); + overflow-wrap: anywhere; +} +#page-lukenya-participants .lm-note { + display: block; + padding: 8px 10px; + border-radius: 8px; + background: #fff8e8; + white-space: pre-wrap; +} +#page-lukenya-participants .lm-warn { + display: flex; + align-items: center; + gap: 6px; + margin: 8px 0 0; + font-size: 12.5px; + color: #a05a00; +} +#page-lukenya-participants .lm-empty--tight { + padding: 10px 0; + text-align: left; +} + +/* Entries */ +#page-lukenya-participants .lm-entry { + margin-bottom: 10px; + padding: 12px 14px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius-sm); + background: #fbfcff; +} +#page-lukenya-participants .lm-entry header { + display: flex; + align-items: center; + justify-content: space-between; + gap: 10px; + margin-bottom: 4px; +} +#page-lukenya-participants .lm-entry p { + margin: 0 0 4px; + font-size: 13px; +} +#page-lukenya-participants .lm-entry__result { + font-weight: 600; + color: #17784a; +} + +/* Register form */ +#page-lukenya-participants .lm-register { + display: flex; + flex-direction: column; + gap: 10px; + border-top: 1px solid var(--lm-line); + background: #f7faff; + margin: 0 -22px; + padding: 16px 22px; +} +#page-lukenya-participants .lm-register .lm-field select { + width: 100%; +} +#page-lukenya-participants .lm-price { + margin: 0; + font-size: 22px; + font-weight: 700; + color: var(--lm-ink); +} +#page-lukenya-participants .lm-check { + display: flex; + align-items: center; + gap: 8px; + margin: 0; + font-size: 13.5px; +} +#page-lukenya-participants .lm-register__actions { + display: flex; + gap: 8px; +} + +/* Duplicates */ +#page-lukenya-participants .lm-pp__dups { + display: flex; + flex-direction: column; + gap: 14px; +} +#page-lukenya-participants .lm-dups__head { + display: flex; + flex-wrap: wrap; + align-items: flex-start; + justify-content: space-between; + gap: 12px; +} +#page-lukenya-participants .lm-dups__head h2 { + margin: 0 0 4px; + font-size: 18px; +} +#page-lukenya-participants .lm-dups__head p { + margin: 0; + max-width: 620px; + font-size: 13px; + color: var(--lm-muted); +} +#page-lukenya-participants .lm-dups__members { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); + gap: 12px; +} +#page-lukenya-participants .lm-dup { + position: relative; + display: flex; + gap: 10px; + margin: 0; + padding: 12px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius-sm); + background: #fff; + cursor: pointer; +} +#page-lukenya-participants .lm-dup.is-keep { + border-color: var(--lm-primary); + background: #f3f7ff; +} +#page-lukenya-participants .lm-dup__body { + display: flex; + flex-direction: column; + gap: 2px; + min-width: 0; + font-size: 13px; +} +#page-lukenya-participants .lm-dup__tag { + position: absolute; + top: 10px; + right: 12px; + font-style: normal; + font-size: 11.5px; + font-weight: 700; + color: var(--lm-primary); +} +#page-lukenya-participants .lm-dupgroup__actions { + display: flex; + flex-wrap: wrap; + gap: 8px; + margin-top: 12px; +} +#page-lukenya-participants .lm-merge { + margin-top: 14px; + padding: 14px 16px; + border: 1px solid #f0d9a6; + border-radius: var(--lm-radius-sm); + background: #fffaf0; +} +#page-lukenya-participants .lm-merge h4 { + margin: 0 0 8px; + font-size: 14px; +} +#page-lukenya-participants .lm-merge ul { + margin: 0 0 8px; + padding-left: 18px; + font-size: 13px; +} + +@media (max-width: 900px) { + #page-lukenya-participants .lm-drawer { + width: 100vw; + } + #page-lukenya-participants .lm-kv { + grid-template-columns: 110px minmax(0, 1fr); + } +} diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_participants/lukenya_participants.js b/lukenya_marathon/lukenya_marathon/page/lukenya_participants/lukenya_participants.js new file mode 100644 index 0000000..4af38c0 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_participants/lukenya_participants.js @@ -0,0 +1,920 @@ +/* Lukenya Marathon - Participants (Desk page). + * Data comes from lukenya_marathon.lukenya_marathon.participants. Styling lives in lukenya_participants.css. + */ +(function () { + const PAGE = "lukenya-participants"; + const API = "lukenya_marathon.lukenya_marathon.participants."; + const PAGE_LENGTH = 25; + + // Feather-style line icons (inner SVG only). + const ICON = { + grid: '', + calendar: '', + users: '', + flag: '', + card: '', + chart: '', + sliders: '', + run: '', + right: '', + alert: '', + download: '', + external: '', + search: '', + x: '', + plus: '', + phone: '', + mail: '', + chat: '', + edit: '', + eye: '', + merge: '', + shield: '', + userplus: '', + }; + + const svg = (name, size) => + ``; + + const esc = (s) => frappe.utils.escape_html(s == null ? "" : String(s)); + + const fmtDate = (value) => { + if (!value) return ""; + const d = new Date(String(value).slice(0, 10) + "T00:00:00"); + return isNaN(d) ? esc(value) : d.toLocaleDateString(undefined, { day: "numeric", month: "short", year: "numeric" }); + }; + + // ---- Configuration ------------------------------------------------------- + + const CHIPS = [ + { key: "", label: __("Everyone") }, + { key: "entered", label: __("In this edition"), edition: true }, + { key: "returning", label: __("Returning") }, + { key: "first_timers", label: __("First-timers") }, + { key: "not_reentered", label: __("Not yet re-entered"), edition: true }, + { key: "unpaid", label: __("Unpaid") }, + { key: "no_bib", label: __("No bib") }, + { key: "minor", label: __("Under 18") }, + { key: "missing_info", label: __("Missing info") }, + { key: "non_resident", label: __("Non-resident") }, + { key: "consent", label: __("Agreed to contact") }, + ]; + + const STATUSES = ["Pending", "Confirmed", "Completed", "Cancelled", "Transferred", "Refunded"]; + const PAYMENTS = ["Unpaid", "Pending", "Paid", "Partially Paid", "Failed", "Refunded"]; + const GENDERS = ["Male", "Female", "Other", "Prefer not to say", "Not given"]; + + const STATUS_TONE = { Confirmed: "green", Completed: "green", Pending: "amber", Cancelled: "grey", Transferred: "grey", Refunded: "grey" }; + const PAYMENT_TONE = { Paid: "green", "Partially Paid": "amber", Unpaid: "amber", Pending: "amber", Failed: "red", Refunded: "grey" }; + const FLAG_LABEL = { minor: __("Under 18"), missing_info: __("Missing info"), no_consent: __("No contact consent"), returning: __("Returning") }; + const FLAG_TONE = { minor: "red", missing_info: "amber", no_consent: "grey", returning: "blue" }; + + const FIELD_LABEL = { + id_number: __("ID number"), date_of_birth: __("date of birth"), gender: __("gender"), nationality: __("nationality"), + email: __("email"), phone: __("phone"), whatsapp: __("WhatsApp"), shirt_size: __("shirt size"), + emergency_contact_name: __("emergency contact"), emergency_contact_phone: __("emergency contact phone"), + guardian_name: __("guardian"), guardian_phone: __("guardian phone"), medical_notes: __("medical notes"), + }; + const fieldLabels = (fields) => fields.map((f) => FIELD_LABEL[f] || f).join(", "); + const who = (p) => `${p.full_name} (${p.code})`; + + const badge = (text, tone) => `${esc(text)}`; + + // ---- Page ---------------------------------------------------------------- + + class LukenyaParticipants { + constructor(wrapper) { + this.wrapper = wrapper; + this.$root = $(wrapper).find(".layout-main-section"); + this.state = { + view: "directory", edition: null, query: "", chip: "", category: "", status: "", payment: "", + gender: "", age_group: "", nationality: "", sort: "recent", page: 1, + }; + this.options = null; + this.summary = null; + this.result = null; + this.loading = true; + this.error = false; + this.detail = null; // { profile, entries, open_edition } + this.detailLoading = false; + this.register = null; // inline register form state + this.dups = null; + this.merge = null; // { keep, remove, plan } + this.req = 0; + this.timer = null; + this.renderShell(); + this.bind(); + } + + show() { + const opts = frappe.route_options; + if (this.options) { + this.refresh(); + this.openFromRoute(opts); + return; + } + frappe.call({ + method: API + "get_options", + callback: (r) => { + this.options = r.message || { editions: [], categories: [], nationalities: [], age_groups: [], default_edition: null, price_tiers: [] }; + if (this.state.edition === null) this.state.edition = this.options.default_edition || ""; + this.renderFilters(); + this.renderChips(); + this.renderStats(); + this.refresh(); + this.openFromRoute(opts); + }, + error: () => this.fail(), + }); + } + + openFromRoute(opts) { + if (opts && opts.participant) { + frappe.route_options = null; + this.openProfile(opts.participant); + } + } + + refresh() { + this.loadSummary(); + this.loadList(); + if (this.state.view === "duplicates") this.loadDuplicates(); + } + + fail() { + this.loading = false; + this.error = true; + this.renderResults(); + } + + // -- data -- + + listArgs() { + const s = this.state; + return { + query: s.query || null, edition: s.edition || null, chip: s.chip || null, + race_category: s.category || null, status: s.status || null, payment: s.payment || null, + gender: s.gender || null, age_group: s.age_group || null, nationality: s.nationality || null, + }; + } + + loadList() { + const token = ++this.req; + this.loading = true; + this.error = false; + this.renderResults(); + frappe.call({ + method: API + "search_participants", + args: Object.assign(this.listArgs(), { sort: this.state.sort, page: this.state.page, page_length: PAGE_LENGTH }), + callback: (r) => { + if (token !== this.req) return; + this.result = r.message || null; + this.loading = false; + this.error = !this.result; + this.renderResults(); + }, + error: () => token === this.req && this.fail(), + }); + } + + loadSummary() { + frappe.call({ + method: API + "get_summary", + args: { edition: this.state.edition || null }, + callback: (r) => { + this.summary = r.message || null; + this.renderStats(); + this.renderDupButton(); + }, + }); + } + + loadDuplicates() { + frappe.call({ + method: API + "find_duplicates", + callback: (r) => { + this.dups = (r.message && r.message.groups) || []; + this.renderDuplicates(); + }, + }); + } + + openProfile(name, reveal) { + this.detailLoading = true; + this.register = null; + if (!reveal) this.detail = null; + this.renderDrawer(); + frappe.call({ + method: API + "get_profile", + args: { name, reveal: reveal ? 1 : 0 }, + callback: (r) => { + this.detail = r.message || null; + this.detailLoading = false; + this.renderDrawer(); + }, + error: () => { + this.detailLoading = false; + this.closeProfile(); + }, + }); + } + + closeProfile() { + this.detail = null; + this.detailLoading = false; + this.register = null; + this.renderDrawer(); + } + + // -- shell -- + + renderShell() { + this.$root.html(` +
+ ${lukenya.nav.render("lukenya-participants")} +
+
+
+

${esc(__("Participants"))}

+

${esc(__("Find a runner, see their history, and register them for a race."))}

+
+
+ + + +
+
+ +
+
+ +
+ +
+ + +
`); + this.renderStats(); + this.renderFilters(); + this.renderChips(); + this.renderResults(); + } + + // -- stats / filters / chips -- + + renderStats() { + const s = this.summary; + const ed = this.editionName(); + const cards = [ + { label: __("Participants"), value: s && s.total, hint: __("On record") }, + { label: ed ? __("In {0}", [ed]) : __("In an edition"), value: s && s.in_edition, hint: ed ? __("Active entries") : __("Choose an edition"), chip: "entered" }, + { label: __("Returning runners"), value: s && s.returning, hint: __("Entered more than one edition"), chip: "returning" }, + { label: __("Ran before, not yet entered"), value: s && s.ran_before, hint: ed ? __("Worth a nudge") : __("Choose an edition"), chip: "not_reentered" }, + { label: __("Missing details"), value: s && s.missing, hint: __("Birth date, gender, nationality or emergency contact"), chip: "missing_info" }, + { label: __("Under 18"), value: s && s.minors, hint: __("Need guardian details"), chip: "minor" }, + ]; + const html = cards.map((c) => { + const value = c.value === null || c.value === undefined ? "–" : esc(Number(c.value).toLocaleString()); + const tag = c.chip ? "button" : "div"; + return `<${tag}${c.chip ? ` type="button" data-chip="${c.chip}"` : ""} class="lm-stat${c.chip ? " is-link" : ""}"> + ${esc(c.label)} + ${value} + ${esc(c.hint)} + `; + }).join(""); + this.$root.find(".lm-pp__stats").html(html); + } + + renderDupButton() { + const n = this.summary ? this.summary.duplicates : null; + this.$root.find(".lm-dupbtn").text(n ? __("Possible duplicates ({0})", [n]) : __("Possible duplicates")); + } + + editionName() { + const e = this.options && this.options.editions.find((x) => x.name === this.state.edition); + return e ? e.edition_name || e.name : ""; + } + + select(key, label, values, current, blank) { + const opts = [``] + .concat(values.map((v) => { + const value = typeof v === "string" ? v : v.value; + const text = typeof v === "string" ? v : v.label; + return ``; + })) + .join(""); + return ``; + } + + renderFilters() { + const o = this.options || { editions: [], categories: [], nationalities: [], age_groups: [] }; + const s = this.state; + const cats = o.categories.filter((c) => !s.edition || c.event_edition === s.edition).map((c) => ({ value: c.name, label: c.category_name })); + this.$root.find(".lm-filters").html( + this.select("edition", __("Edition"), o.editions.map((e) => ({ value: e.name, label: e.edition_name || e.name })), s.edition || "", __("All editions")) + + this.select("category", __("Race category"), cats, s.category, __("All categories")) + + this.select("status", __("Entry status"), STATUSES, s.status, __("Any status")) + + this.select("payment", __("Payment"), PAYMENTS, s.payment, __("Any payment")) + + this.select("gender", __("Gender"), GENDERS, s.gender, __("Any gender")) + + this.select("age_group", __("Age group"), o.age_groups, s.age_group, __("Any age")) + + this.select("nationality", __("Nationality"), o.nationalities.concat([__("Not given")]), s.nationality, __("Any nationality")) + + this.select("sort", __("Sort by"), [{ value: "name", label: __("Name A to Z") }], s.sort === "recent" ? "" : s.sort, __("Recently updated")) + + `` + ); + } + + renderChips() { + const s = this.state; + this.$root.find(".lm-chips").html( + CHIPS.map((c) => { + const off = c.edition && !s.edition; + return ``; + }).join("") + ); + } + + // -- results -- + + renderResults() { + const $box = this.$root.find(".lm-pp__results"); + if (this.state.view === "duplicates") { + $box.attr("hidden", true); + return; + } + $box.removeAttr("hidden"); + if (this.loading && !this.result) { + $box.html(`
${esc(__("Loading participants..."))}
`); + return; + } + if (this.error || !this.result) { + $box.html(``); + return; + } + const r = this.result; + const rows = r.rows.map((p) => this.row(p)).join(""); + const from = r.total ? (r.page - 1) * r.page_length + 1 : 0; + const to = Math.min(r.page * r.page_length, r.total); + const pages = Math.max(Math.ceil(r.total / r.page_length), 1); + $box.html(` +
+ ${ + r.rows.length + ? `
+ + ${rows}
${esc(__("Runner"))}${esc(__("Age / gender"))}${esc(__("Nationality"))}${esc(__("Contact"))}${esc(__("Latest entry"))}${esc(__("Status"))}${esc(__("Bib"))}${esc(__("Flags"))}
` + : `

${esc(__("No participants match these filters."))}

` + } +
+ ${esc(__("{0} to {1} of {2}", [from, to, r.total.toLocaleString()]))} +
+ + ${esc(__("Page {0} of {1}", [r.page, pages]))} + +
+
+
`); + } + + row(p) { + const e = p.entry; + const flags = p.flags + .map((f) => badge(f === "missing_info" ? `${FLAG_LABEL[f]} (${p.missing.length})` : FLAG_LABEL[f], FLAG_TONE[f])) + .join(" "); + const age = p.age === null || p.age === undefined ? "–" : esc(p.age); + return ` + + ${esc(p.full_name)}${esc(p.code)} + ${age}${p.gender ? " · " + esc(p.gender) : ""} + ${esc(p.nationality) || "–"} + ${esc(p.phone) || "–"}${esc(p.email)} + ${e ? `${esc(e.category || "")}${esc(e.edition)}` : `${esc(__("No entry"))}`} + ${e ? badge(e.status, STATUS_TONE[e.status]) + " " + badge(e.payment, PAYMENT_TONE[e.payment]) : ""} + ${e && e.bib ? esc(e.bib) : "–"} + ${flags} + `; + } + + // -- profile drawer -- + + renderDrawer() { + const $d = this.$root.find(".lm-drawer"); + const $scrim = this.$root.find(".lm-scrim"); + if (!this.detail && !this.detailLoading) { + $d.attr("hidden", true).empty(); + $scrim.attr("hidden", true); + return; + } + $d.removeAttr("hidden"); + $scrim.removeAttr("hidden"); + if (!this.detail) { + $d.html(`
${esc(__("Loading profile..."))}
`); + return; + } + const { profile: p, entries, open_edition } = this.detail; + const ageText = p.age === null || p.age === undefined ? "" : __("{0} years", [p.age]); + const meta = [p.code, ageText, p.gender, p.nationality].filter(Boolean).map(esc).join(" · "); + const digits = (p.whatsapp || p.phone || "").replace(/\D/g, ""); + const flags = []; + if (p.minor) flags.push(badge(__("Under 18"), "red")); + if (entries.filter((e) => !["Cancelled", "Refunded", "Transferred"].includes(e.status)).length > 1) flags.push(badge(__("Returning"), "blue")); + flags.push(p.consent ? badge(__("Agreed to be contacted"), "green") : badge(__("No contact consent"), "grey")); + + const line = (label, value, icon) => + `
${esc(label)}
${value || '–'}
`; + const link = (href, text) => (text ? `${esc(text)}` : ""); + + const guardian = p.minor || p.guardian_name || p.guardian_phone + ? `

${esc(__("Guardian"))}

${line(__("Name"), esc(p.guardian_name))}${line(__("Phone"), link("tel:" + p.guardian_phone, p.guardian_phone))}
+ ${p.minor && !p.guardian_name ? `

${svg("alert", 14)} ${esc(__("No guardian details on file for this runner under 18."))}

` : ""}
` + : ""; + + const sensitive = ` +
+

${svg("shield", 15)} ${esc(__("Restricted details"))}

+
+ ${line(__("ID / passport"), p.id_number ? esc(p.id_number) : "")} + ${line(__("Medical notes"), p.revealed ? (p.medical_notes ? `${esc(p.medical_notes)}` : esc(__("None on file"))) : p.has_medical_notes ? esc(__("On file")) : esc(__("None on file")))} +
+ ${ + p.revealed + ? `

${esc(__("Viewing these details was recorded on the runner's timeline."))}

` + : `` + } +
`; + + const entryCards = entries.length + ? entries.map((e) => this.entryCard(e)).join("") + : `

${esc(__("No entries yet."))}

`; + + const canRegister = !!(this.state.edition || open_edition); + $d.html(` +
+
+

${esc(p.full_name)}

+

${meta}

+
${flags.join(" ")}
+
+ +
+
+ + ${canRegister ? `` : ""} + ${p.phone ? `${svg("phone", 15)}${esc(__("Call"))}` : ""} + ${digits ? `${svg("chat", 15)}${esc(__("WhatsApp"))}` : ""} +
+ ${this.registerForm()} +

${esc(__("Contact"))}

+ ${line(__("Phone"), link("tel:" + p.phone, p.phone))} + ${line(__("WhatsApp"), link("tel:" + p.whatsapp, p.whatsapp))} + ${line(__("Email"), link("mailto:" + p.email, p.email))} + ${line(__("Emergency contact"), esc([p.emergency_contact_name, p.emergency_contact_phone].filter(Boolean).join(" \u00b7 ")))} +
+ ${guardian} +

${esc(__("Details"))}

+ ${line(__("Date of birth"), esc(fmtDate(p.date_of_birth)))} + ${line(__("Shirt size"), esc(p.shirt_size))} + ${line(__("On record since"), esc(fmtDate(p.since)))} +
+ ${sensitive} +

${esc(__("Entries"))}

${entryCards}
`); + } + + entryCard(e) { + const money = (v) => { + try { + return format_currency(v || 0, "KES", 0); + } catch (err) { + return "KES " + Number(v || 0).toLocaleString(); + } + }; + const bits = []; + if (e.bib) bits.push(`${esc(__("Bib"))} ${esc(e.bib)}`); + if (e.pack) bits.push(`${esc(__("Pack"))}: ${esc(e.pack)}`); + if (e.check_in) bits.push(`${esc(__("Check-in"))}: ${esc(e.check_in)}`); + const result = e.result + ? `

${esc(e.result.status)}${e.result.time ? " · " + esc(e.result.time) : ""}${e.result.rank ? " · " + esc(__("Overall {0}", [e.result.rank])) : ""}

` + : ""; + return ` +
+
+ ${esc(e.edition)} + ${badge(e.status, STATUS_TONE[e.status])} ${badge(e.payment, PAYMENT_TONE[e.payment])} +
+

${esc(e.category)}${e.tier ? " · " + esc(e.tier) : ""}

+

${esc(money(e.paid))} ${esc(__("paid of"))} ${esc(money(e.amount_due))}${e.balance ? " · " + esc(__("balance")) + " " + esc(money(e.balance)) : ""}

+ ${bits.length ? `

${bits.join(" · ")}

` : ""} + ${result} + +
`; + } + + registerForm() { + const r = this.register; + if (!r) return ""; + const cats = r.categories + .map((c) => { + const full = c.spots_left !== null && c.spots_left <= 0; + const note = c.spots_left === null ? "" : full ? ` (${__("full")})` : ` (${__("{0} left", [c.spots_left])})`; + return ``; + }) + .join(""); + const tiers = this.options.price_tiers + .map((t) => ``) + .join(""); + const p = r.preview; + const price = p ? `

${esc(this.money(p.amount))}${p.already_entered ? ` ${esc(__("Already entered in this edition"))}` : ""}

` : `

 

`; + const disabled = !r.category || !r.indemnity || r.busy || (p && p.already_entered) ? " disabled" : ""; + return ` +
+

${esc(__("Register for {0}", [r.editionName]))}

+ + + ${price} + +
+ + +
+

${esc(__("Creates a pending, unpaid entry. Record payment and confirm it from the registration."))}

+
`; + } + + money(value) { + try { + return format_currency(value || 0, "KES", 0); + } catch (e) { + return "KES " + Number(value || 0).toLocaleString(); + } + } + + startRegister() { + const edition = this.state.edition || (this.detail && this.detail.open_edition); + if (!edition) return; + const name = (this.options.editions.find((e) => e.name === edition) || {}).edition_name || edition; + this.register = { edition, editionName: name, categories: [], category: "", tier: "Standard", indemnity: false, preview: null, busy: false }; + this.renderDrawer(); + frappe.call({ + method: API + "get_edition_categories", + args: { edition }, + callback: (r) => { + if (!this.register) return; + this.register.categories = r.message || []; + this.renderDrawer(); + }, + }); + } + + refreshPreview() { + const r = this.register; + if (!r || !r.category) { + if (r) r.preview = null; + return this.renderDrawer(); + } + frappe.call({ + method: API + "preview_price", + args: { participant: this.detail.profile.name, race_category: r.category, price_tier: r.tier }, + callback: (res) => { + if (!this.register) return; + this.register.preview = res.message || null; + this.renderDrawer(); + }, + }); + } + + confirmRegister() { + const r = this.register; + if (!r || r.busy) return; + r.busy = true; + this.renderDrawer(); + frappe.call({ + method: API + "register_for_edition", + args: { participant: this.detail.profile.name, race_category: r.category, price_tier: r.tier, indemnity_accepted: r.indemnity ? 1 : 0 }, + callback: (res) => { + const out = res.message; + this.register = null; + frappe.show_alert({ message: __("Entry {0} created for {1}", [out.registration, this.money(out.amount_due)]), indicator: "green" }); + this.openProfile(this.detail.profile.name, this.detail.profile.revealed); + this.refresh(); + }, + error: () => { + if (this.register) this.register.busy = false; + this.renderDrawer(); + }, + }); + } + + // -- duplicates -- + + showDuplicates(on) { + this.state.view = on ? "duplicates" : "directory"; + this.merge = null; + this.$root.find(".lm-pp__dups").attr("hidden", !on); + this.$root.find(".lm-pp__search, .lm-pp__stats, .lm-filters, .lm-chips, .lm-pp__results").attr("hidden", on); + this.$root.find(".lm-dupbtn").closest("button").toggleClass("is-on", on); + if (on) { + this.dups = null; + this.renderDuplicates(); + this.loadDuplicates(); + } else { + this.renderResults(); + } + } + + renderDuplicates() { + const $box = this.$root.find(".lm-pp__dups"); + if (this.state.view !== "duplicates") return; + if (!this.dups) { + $box.html(`
${esc(__("Looking for duplicates..."))}
`); + return; + } + const head = `

${esc(__("Possible duplicates"))}

${esc(__("Runners who share a name with a phone number, email or date of birth. Choose which record to keep, preview, then merge."))}

+
`; + if (!this.dups.length) { + $box.html(head + `

${esc(__("No likely duplicates found."))}

`); + return; + } + const groups = this.dups.map((g, gi) => this.dupGroup(g, gi)).join(""); + $box.html(head + groups); + } + + bestKeep(group) { + return group.members.slice().sort((a, b) => b.entries - a.entries || a.name.localeCompare(b.name))[0].name; + } + + dupGroup(g, gi) { + const keep = g.keep || (g.keep = this.bestKeep(g)); + const members = g.members + .map( + (m) => ` + ` + ) + .join(""); + const others = g.members.filter((m) => m.name !== keep); + const buttons = others + .map((m) => ``) + .join(" "); + const m = this.merge && this.merge.group === gi ? this.mergePreview() : ""; + return `
+

${g.reasons.map((r) => esc(r)).join(" · ")}

+
${members}
+
${buttons}
+ ${m} +
`; + } + + mergePreview() { + const { plan } = this.merge; + const fills = Object.keys(plan.fill); + const moves = Object.entries(plan.moves).map(([k, n]) => `${n} ${k.split(".")[0]}`).join(", ") || __("nothing"); + const conflicts = plan.conflicts.length + ? `

${svg("alert", 14)} ${esc(__("Both runners have an active entry in {0}. Cancel one entry first, then merge.", [plan.conflicts.map((c) => c.edition).join(", ")]))}

` + : ""; + return `
+

${esc(__("Merging {0} into {1}", [who(plan.remove), who(plan.keep)]))}

+
    +
  • ${esc(__("Moves: {0}", [moves]))}
  • +
  • ${esc(__("Fills empty fields on the kept record: {0}", [fills.length ? fieldLabels(fills) : __("none")]))}.${plan.medical_notes_merged ? " " + esc(__("Medical notes will be combined.")) : ""}
  • + ${plan.kept_values.length ? `
  • ${esc(__("Different values stay as on the kept record: {0}", [fieldLabels(plan.kept_values.map((k) => k.field))]))}
  • ` : ""} +
  • ${esc(__("The other record is deleted. Frappe keeps deleted documents, so an administrator can restore it."))}
  • +
+ ${conflicts} +
+ + +
+
`; + } + + previewMerge(gi, remove) { + const g = this.dups[gi]; + frappe.call({ + method: API + "merge_participants", + args: { keep: g.keep, remove, dry_run: 1 }, + callback: (r) => { + this.merge = { group: gi, keep: g.keep, remove, plan: r.message }; + this.renderDuplicates(); + }, + }); + } + + runMerge() { + const m = this.merge; + if (!m) return; + frappe.confirm(__("Merge {0} into {1}? This can't be undone from this page.", [who(m.plan.remove), who(m.plan.keep)]), () => { + frappe.call({ + method: API + "merge_participants", + args: { keep: m.keep, remove: m.remove, dry_run: 0 }, + callback: () => { + frappe.show_alert({ message: __("Merged"), indicator: "green" }); + this.merge = null; + this.loadDuplicates(); + this.loadSummary(); + this.loadList(); + }, + }); + }); + } + + // -- export -- + + exportCsv() { + frappe.call({ + method: API + "export_participants", + args: this.listArgs(), + callback: (r) => { + const out = r.message; + if (!out || !out.rows.length) return frappe.show_alert({ message: __("Nothing to export."), indicator: "orange" }); + const cols = [ + ["code", __("Code")], ["name", __("Name")], ["gender", __("Gender")], ["age_group", __("Age group")], + ["nationality", __("Nationality")], ["phone", __("Phone")], ["email", __("Email")], + ["contact_consent", __("Agreed to be contacted")], ["edition", __("Edition")], ["category", __("Category")], + ["entry_status", __("Entry status")], ["payment_status", __("Payment status")], ["bib", __("Bib")], + ]; + const cell = (v) => { + if (v === null || v === undefined) return '""'; + if (typeof v === "number") return String(v); + let text = String(v); + if (/^[=+\-@]/.test(text)) text = "'" + text; // stop spreadsheet formula injection + return '"' + text.replace(/"/g, '""') + '"'; + }; + const lines = [cols.map((c) => cell(c[1])).join(",")].concat(out.rows.map((row) => cols.map((c) => cell(row[c[0]])).join(","))); + const blob = new Blob(["\ufeff" + lines.join("\n")], { type: "text/csv;charset=utf-8" }); + const a = document.createElement("a"); + a.href = URL.createObjectURL(blob); + a.download = "lukenya-participants.csv"; + document.body.appendChild(a); + a.click(); + a.remove(); + URL.revokeObjectURL(a.href); + frappe.show_alert({ + message: out.truncated ? __("Exported the first {0} of {1}. Narrow the filters to export the rest.", [out.rows.length, out.total]) : __("Exported {0} people. Contacts are only included for people who agreed to be contacted.", [out.rows.length]), + indicator: out.truncated ? "orange" : "green", + }); + }, + }); + } + + // -- interaction -- + + reset() { + const edition = (this.options && this.options.default_edition) || ""; + Object.assign(this.state, { edition, query: "", chip: "", category: "", status: "", payment: "", gender: "", age_group: "", nationality: "", sort: "recent", page: 1 }); + this.$root.find("[data-search]").val(""); + this.renderFilters(); + this.renderChips(); + this.refresh(); + } + + setChip(key) { + const needsEdition = (CHIPS.find((c) => c.key === key) || {}).edition; + if (needsEdition && !this.state.edition) { + return frappe.show_alert({ message: __("Choose an edition first."), indicator: "orange" }); + } + if (this.state.view === "duplicates") this.showDuplicates(false); + this.state.chip = this.state.chip === key ? "" : key; + this.state.page = 1; + this.renderChips(); + this.loadList(); + } + + bind() { + const $r = this.$root; + + $r.on("input", "[data-search]", (e) => { + const value = e.target.value; + clearTimeout(this.timer); + this.timer = setTimeout(() => { + this.state.query = value.trim(); + this.state.page = 1; + this.loadList(); + }, 250); + }); + + $r.on("change", "[data-filter]", (e) => { + const key = e.target.dataset.filter; + this.state[key] = e.target.value || (key === "sort" ? "recent" : ""); + this.state.page = 1; + if (key === "edition") { + this.state.category = ""; + if (!this.state.edition && ["entered", "not_reentered"].includes(this.state.chip)) this.state.chip = ""; + this.renderFilters(); + this.renderChips(); + this.loadSummary(); + } + this.loadList(); + }); + + $r.on("change", "[data-reg]", (e) => { + const r = this.register; + if (!r) return; + const key = e.target.dataset.reg; + if (key === "indemnity") { + r.indemnity = e.target.checked; + return this.renderDrawer(); + } + r[key] = e.target.value; + r.preview = null; + this.refreshPreview(); + }); + + $r.on("change", "[data-keep]", (e) => { + const gi = Number(e.target.dataset.keep); + this.dups[gi].keep = e.target.value; + this.merge = null; + this.renderDuplicates(); + }); + + $r.on("click", (e) => { + const t = e.target; + + const action = t.closest("[data-action]"); + if (action) { + const a = action.dataset.action; + if (a === "close") return this.closeProfile(); + if (a === "workspace") return frappe.set_route("Workspaces", "Lukenya Marathon"); + if (a === "reset") return this.reset(); + if (a === "new") return frappe.new_doc("Participant"); + if (a === "export") return this.exportCsv(); + if (a === "duplicates") return this.showDuplicates(this.state.view !== "duplicates"); + if (a === "back") return this.showDuplicates(false); + if (a === "edit" && this.detail) return frappe.set_route("Form", "Participant", this.detail.profile.name); + if (a === "reveal" && this.detail) return this.openProfile(this.detail.profile.name, true); + if (a === "register") return this.startRegister(); + if (a === "cancel-register") { + this.register = null; + return this.renderDrawer(); + } + if (a === "confirm-register") return this.confirmRegister(); + if (a === "cancel-merge") { + this.merge = null; + return this.renderDuplicates(); + } + if (a === "confirm-merge") return this.runMerge(); + return; + } + + const page = t.closest("[data-page]"); + if (page && !page.disabled) { + this.state.page = Math.max(this.state.page + Number(page.dataset.page), 1); + return this.loadList(); + } + + const chip = t.closest("[data-chip]"); + if (chip && !chip.disabled) return this.setChip(chip.dataset.chip); + + const merge = t.closest("[data-merge]"); + if (merge) return this.previewMerge(Number(merge.dataset.merge), merge.dataset.remove); + + const doc = t.closest("[data-doc]"); + if (doc) return frappe.set_route("Form", doc.dataset.doc, doc.dataset.name); + + const open = t.closest("[data-open]"); + if (open) { + e.preventDefault(); + return this.openProfile(open.dataset.open); + } + + const nav = t.closest("[data-route]"); + if (nav) return frappe.set_route(nav.dataset.route); + + const list = t.closest("[data-doctype]"); + if (list && !list.classList.contains("is-soon")) frappe.set_route("List", list.dataset.doctype); + }); + + $r.on("keydown", (e) => { + if (e.key === "Enter" && e.target.classList && e.target.classList.contains("lm-row")) this.openProfile(e.target.dataset.open); + }); + + // Escape closes the profile even when focus has dropped to the page body. + $(document).on("keydown.lmparticipants", (e) => { + if (e.key === "Escape" && (this.detail || this.detailLoading) && $(this.wrapper).is(":visible")) this.closeProfile(); + }); + } + } + + // ---- Page hooks ---------------------------------------------------------- + + frappe.pages[PAGE].on_page_load = function (wrapper) { + frappe.ui.make_app_page({ parent: wrapper, title: __("Participants"), single_column: true }); + wrapper.lm_participants = new LukenyaParticipants(wrapper); + }; + + frappe.pages[PAGE].on_page_show = function (wrapper) { + if (wrapper.lm_participants) wrapper.lm_participants.show(); + }; +})(); diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_participants/lukenya_participants.json b/lukenya_marathon/lukenya_marathon/page/lukenya_participants/lukenya_participants.json new file mode 100644 index 0000000..8db981f --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_participants/lukenya_participants.json @@ -0,0 +1,20 @@ +{ + "creation": "2026-09-21 00:00:00.000000", + "docstatus": 0, + "doctype": "Page", + "idx": 0, + "modified": "2026-09-21 00:00:00.000000", + "modified_by": "Administrator", + "module": "Lukenya Marathon", + "name": "lukenya-participants", + "owner": "Administrator", + "page_name": "lukenya-participants", + "roles": [ + { + "role": "System Manager" + } + ], + "standard": "Yes", + "system_page": 0, + "title": "Lukenya Participants" +} \ No newline at end of file diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_payments/__init__.py b/lukenya_marathon/lukenya_marathon/page/lukenya_payments/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_payments/lukenya_payments.css b/lukenya_marathon/lukenya_marathon/page/lukenya_payments/lukenya_payments.css new file mode 100644 index 0000000..b3f1894 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_payments/lukenya_payments.css @@ -0,0 +1,271 @@ +#page-lukenya-payments, +#page-lukenya-payments .page-body, +#page-lukenya-payments .layout-main-section-wrapper, +#page-lukenya-payments .layout-main-section { + width: 100% !important; + max-width: none !important; + margin: 0 !important; + padding-left: 0 !important; + padding-right: 0 !important; +} + +#page-lukenya-payments .page-head { + display: none !important; +} + +#page-lukenya-payments .lm-payments-layout { + display: grid; + grid-template-columns: 248px minmax(0, 1fr); + width: 100%; + min-height: calc(100vh - var(--navbar-height, 48px)); + background: #f5f7fb; +} + +/* Sidebar is shared across every lukenya-* page: + public/css/lukenya_navigation.css */ + +#page-lukenya-payments .lm-payments-main { + width: 100%; + min-width: 0; + padding: 28px 34px 40px; + overflow-x: auto; +} + +#page-lukenya-payments .lm-payments-header, +#page-lukenya-payments .lm-payments-section-title { + display: flex; + align-items: center; + justify-content: space-between; + gap: 20px; +} + +#page-lukenya-payments .lm-payments-header { + margin-bottom: 20px; +} + +#page-lukenya-payments h1, +#page-lukenya-payments h2 { + margin: 0 0 6px; + color: #16233d; +} + +#page-lukenya-payments h1 { + font-size: 28px; +} + +#page-lukenya-payments h2 { + font-size: 18px; +} + +#page-lukenya-payments .lm-payments-eyebrow { + margin: 0 0 5px; + color: #2f6bff; + font-size: 12px; + font-weight: 700; + text-transform: uppercase; + letter-spacing: .08em; +} + +#page-lukenya-payments .lm-payments-muted, +#page-lukenya-payments .lm-payments-section-title p { + margin: 0; + color: #75829a; + font-size: 13px; +} + +#page-lukenya-payments .lm-payments-actions { + display: flex; + align-items: center; + flex-wrap: wrap; + gap: 8px; +} + +#page-lukenya-payments .lm-payments-card { + border: 1px solid #e2e7f0; + border-radius: 12px; + background: #fff; + box-shadow: 0 5px 18px rgba(30, 48, 80, .05); +} + +#page-lukenya-payments .lm-payments-filters { + display: grid; + grid-template-columns: 1.4fr 1fr 1fr 2fr; + gap: 12px; + margin-bottom: 18px; + padding: 16px; +} + +#page-lukenya-payments .lm-payments-filters label { + display: grid; + gap: 6px; +} + +#page-lukenya-payments .lm-payments-filters label span { + color: #75829a; + font-size: 12px; + font-weight: 600; +} + +#page-lukenya-payments .lm-payments-filters select, +#page-lukenya-payments .lm-payments-filters input { + width: 100%; + height: 34px; + border: 1px solid #d8dfec; + border-radius: 6px; + background: #fff; + padding: 0 10px; +} + +#page-lukenya-payments .lm-payments-kpis { + display: grid; + grid-template-columns: repeat(8, minmax(0, 1fr)); + gap: 12px; + margin-bottom: 18px; +} + +#page-lukenya-payments .lm-payments-kpi { + min-height: 105px; + padding: 15px; +} + +#page-lukenya-payments .lm-payments-kpi span { + display: block; + color: #75829a; + font-size: 12px; +} + +#page-lukenya-payments .lm-payments-kpi strong { + display: block; + margin-top: 10px; + color: #16233d; + font-size: 20px; +} + +#page-lukenya-payments .lm-payments-grid { + display: grid; + grid-template-columns: 1fr 1.4fr; + gap: 16px; + margin-bottom: 18px; +} + +#page-lukenya-payments .lm-payments-panel { + margin-bottom: 18px; + padding: 20px; +} + +#page-lukenya-payments .lm-payments-section-title { + margin-bottom: 14px; +} + +#page-lukenya-payments .lm-payments-table { + width: 100%; + min-width: 760px; + margin-bottom: 0; +} + +#page-lukenya-payments .lm-payments-table td small { + display: block; + color: #75829a; + font-size: 11px; +} + +#page-lukenya-payments .lm-payments-link { + border: 0; + padding: 0; + background: transparent; + color: #2f6bff; + font-weight: 600; +} + +#page-lukenya-payments .lm-payment-status { + display: inline-block; + border-radius: 20px; + padding: 4px 8px; + font-size: 11px; + font-weight: 700; +} + +#page-lukenya-payments .lm-status-paid, +#page-lukenya-payments .lm-status-reconciled { + background: #e8f7ed; + color: #198754; +} + +#page-lukenya-payments .lm-status-pending, +#page-lukenya-payments .lm-status-initiated { + background: #fff4d6; + color: #946200; +} + +#page-lukenya-payments .lm-status-failed { + background: #fde8e8; + color: #b42318; +} + +#page-lukenya-payments .lm-status-refunded { + background: #eee8ff; + color: #6941c6; +} + +#page-lukenya-payments .lm-balance-due { + color: #b42318; + font-weight: 700; +} + +#page-lukenya-payments .lm-credit { + color: #198754; + font-weight: 700; +} + +#page-lukenya-payments .lm-payments-loading, +#page-lukenya-payments .lm-payments-error { + padding: 28px; +} + +#page-lukenya-payments .lm-payments-error { + color: #b42318; +} + +@media (max-width: 1400px) { + #page-lukenya-payments .lm-payments-kpis { + grid-template-columns: repeat(4, minmax(0, 1fr)); + } +} + +@media (max-width: 1050px) { + #page-lukenya-payments .lm-payments-filters { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } + + #page-lukenya-payments .lm-payments-grid { + grid-template-columns: 1fr; + } +} + +@media (max-width: 760px) { + #page-lukenya-payments .lm-payments-layout { + display: block; + } + + #page-lukenya-payments .lm-side { + display: none; + } + + #page-lukenya-payments .lm-payments-main { + padding: 16px; + } + + #page-lukenya-payments .lm-payments-header { + display: block; + } + + #page-lukenya-payments .lm-payments-actions { + margin-top: 14px; + } + + #page-lukenya-payments .lm-payments-filters, + #page-lukenya-payments .lm-payments-kpis { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } +} + diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_payments/lukenya_payments.js b/lukenya_marathon/lukenya_marathon/page/lukenya_payments/lukenya_payments.js new file mode 100644 index 0000000..46a1861 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_payments/lukenya_payments.js @@ -0,0 +1,595 @@ +frappe.provide("lukenya.payments"); + +(() => { + const PAGE = "lukenya-payments"; + const API = "lukenya_marathon.lukenya_marathon.payments_management."; + + const esc = (value) => + frappe.utils.escape_html(value == null ? "" : String(value)); + + const money = (value, currency = "KES") => + `${currency} ${Number(value || 0).toLocaleString( + undefined, + { + minimumFractionDigits: 2, + maximumFractionDigits: 2 + } + )}`; + + const filtersJson = (filters) => + esc(JSON.stringify(filters)); + + class PaymentsPage { + constructor(wrapper) { + this.wrapper = wrapper; + this.editions = []; + this.edition = ""; + this.filters = { + gateway: "", + status: "", + search: "" + }; + this.metrics = {}; + this.breakdown = { + statuses: [], + gateways: [] + }; + this.transactions = []; + this.exceptions = []; + + this.$root = $(wrapper).find(".layout-main-section"); + + this.renderShell(); + this.bindEvents(); + } + + renderShell() { + this.$root.html(` +
+ ${lukenya.nav.render("lukenya-payments")} + +
+
+
+

+ Financial operations +

+ +

Payments

+ +

+ Monitor collections, outstanding balances, + payment failures and reconciliation. +

+
+ +
+ + + +
+
+ +
+ + + + + + + +
+ +
+
+ Loading payment data... +
+
+
+
+ `); + } + + bindEvents() { + this.$root.on("click", "[data-action='refresh']", () => { + this.loadAll(); + }); + + this.$root.on("click", "[data-new]", (event) => { + frappe.new_doc(event.currentTarget.dataset.new); + }); + + this.$root.on("change", "[data-filter]", (event) => { + const key = event.currentTarget.dataset.filter; + const value = event.currentTarget.value || ""; + + if (key === "edition") { + this.edition = value; + } else { + this.filters[key] = value; + } + + this.loadAll(); + }); + + this.$root.on("keyup", "[data-filter='search']", (event) => { + clearTimeout(this.searchTimer); + + this.searchTimer = setTimeout(() => { + this.filters.search = event.currentTarget.value || ""; + this.loadAll(); + }, 350); + }); + + this.$root.on("click", "[data-route]", (event) => { + const route = event.currentTarget.dataset.route; + + if (route) { + frappe.set_route(route); + } + }); + + this.$root.on("click", "[data-list]", (event) => { + const doctype = event.currentTarget.dataset.list; + const filters = JSON.parse( + event.currentTarget.dataset.filters || "{}" + ); + + frappe.route_options = filters; + frappe.set_route("List", doctype); + }); + + this.$root.on("click", "[data-form]", (event) => { + frappe.set_route( + "Form", + event.currentTarget.dataset.form, + event.currentTarget.dataset.name + ); + }); + } + + show() { + this.loadEditions(); + } + + loadEditions() { + frappe.call({ + method: API + "get_payment_editions", + + callback: (response) => { + this.editions = response.message || []; + + if (!this.edition) { + const open = this.editions.find( + (edition) => edition.status === "Open" + ); + + this.edition = + (open || this.editions[0] || {}).name || ""; + } + + this.renderEditionOptions(); + this.loadAll(); + }, + + error: () => { + this.showError("Unable to load Event Editions."); + } + }); + } + + renderEditionOptions() { + const options = [ + ``, + ...this.editions.map( + (edition) => ` + + ` + ) + ].join(""); + + this.$root.find("[data-filter='edition']").html(options); + } + + loadAll() { + const args = { + event_edition: this.edition || null, + gateway: this.filters.gateway || null, + status: this.filters.status || null, + search: this.filters.search || null, + page: 1, + page_length: 25 + }; + + this.$root.find("[data-content]").html(` +
+ Loading payment data... +
+ `); + + frappe.call({ + method: API + "get_payment_metrics", + args, + callback: (metricsResponse) => { + this.metrics = metricsResponse.message || {}; + + frappe.call({ + method: API + "get_payment_breakdown", + args, + callback: (breakdownResponse) => { + this.breakdown = + breakdownResponse.message || {}; + + frappe.call({ + method: API + "get_payment_transactions", + args, + callback: (transactionResponse) => { + const result = + transactionResponse.message || {}; + + this.transactions = + result.rows || []; + + frappe.call({ + method: API + "get_payment_exceptions", + args: { + event_edition: this.edition || null, + page: 1, + page_length: 10 + }, + callback: (exceptionResponse) => { + this.exceptions = + exceptionResponse.message || []; + + this.render(); + }, + error: () => { + this.exceptions = []; + this.render(); + } + }); + }, + error: () => { + this.showError( + "Unable to load payment transactions." + ); + } + }); + }, + error: () => { + this.showError( + "Unable to load payment breakdown." + ); + } + }); + }, + error: () => { + this.showError("Unable to load payment metrics."); + } + }); + } + + render() { + const m = this.metrics || {}; + const b = this.breakdown || {}; + + const cards = [ + ["Total billed", money(m.total_billed)], + ["Total received", money(m.total_received)], + ["Outstanding", money(m.outstanding)], + ["Net received", money(m.net_received)], + ["Paid registrations", m.paid_registrations || 0], + ["Unpaid registrations", m.unpaid_registrations || 0], + ["Failed payments", m.failed_transactions || 0], + ["Reconciliation issues", m.reconciliation_exceptions || 0] + ]; + + const statusRows = (b.statuses || []).length + ? b.statuses.map((row) => ` + + ${esc(row.status || "-")} + ${esc(row.transaction_count || 0)} + ${money(row.amount, "KES")} + + `).join("") + : ` + + No payment statuses found. + + `; + + const gatewayRows = (b.gateways || []).length + ? b.gateways.map((row) => ` + + ${esc(row.gateway || "-")} + ${esc(row.transaction_count || 0)} + ${money(row.amount, "KES")} + ${esc(row.paid_count || 0)} + ${esc(row.pending_count || 0)} + ${esc(row.failed_count || 0)} + + `).join("") + : ` + + No gateway activity found. + + `; + + const transactionRows = this.transactions.length + ? this.transactions.map((row) => ` + + ${esc(row.payment_date || "-")} + + + + + + ${esc(row.participant_name || "")} + + ${esc(row.edition_name || "-")} + ${esc(row.gateway || "-")} + ${money(row.amount, row.currency || "KES")} + + + ${esc(row.status || "-")} + + + ${esc(row.gateway_transaction_id || "-")} + + `).join("") + : ` + + + No payment transactions found. + + + `; + + const exceptionRows = this.exceptions.length + ? this.exceptions.map((row) => ` + + + + ${esc(row.participant_name || "")} + + ${money(row.amount_due)} + ${money(row.paid)} + + ${money(row.difference)} + + ${esc(row.payment_status || "-")} + + `).join("") + : ` + + + No reconciliation exceptions found. + + + `; + + this.$root.find("[data-content]").html(` +
+ ${cards.map((card) => ` +
+ ${esc(card[0])} + ${esc(card[1])} +
+ `).join("")} +
+ +
+
+
+
+

Payment status summary

+

Transaction totals by status.

+
+
+ +
+ + + + + + + + + + ${statusRows} + +
StatusTransactionsAmount
+
+
+ +
+
+
+

Gateway summary

+

Collections by payment channel.

+
+
+ +
+ + + + + + + + + + + + + ${gatewayRows} + +
GatewayTransactionsAmountPaidPendingFailed
+
+
+
+ +
+
+
+

Payment transactions

+

Recent payment activity for the selected scope.

+
+ + +
+ +
+ + + + + + + + + + + + + + + ${transactionRows} + +
DateTransactionRegistrationEditionGatewayAmountStatusReference
+
+
+ +
+
+
+

Reconciliation exceptions

+

+ Registrations where amount due does not match + confirmed payment transactions. +

+
+ + +
+ +
+ + + + + + + + + + + + ${exceptionRows} + +
RegistrationAmount duePaidDifferenceRegistration payment status
+
+
+ `); + } + + showError(message) { + this.$root.find("[data-content]").html(` +
+ ${esc(message)} +
+ `); + } + } + + frappe.pages[PAGE].on_page_load = (wrapper) => { + frappe.ui.make_app_page({ + parent: wrapper, + title: __("Payments"), + single_column: true + }); + + wrapper.paymentsPage = new PaymentsPage(wrapper); + }; + + frappe.pages[PAGE].on_page_show = (wrapper) => { + if (wrapper.paymentsPage) { + wrapper.paymentsPage.show(); + } + }; +})(); diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_payments/lukenya_payments.json b/lukenya_marathon/lukenya_marathon/page/lukenya_payments/lukenya_payments.json new file mode 100644 index 0000000..dae8df8 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_payments/lukenya_payments.json @@ -0,0 +1,20 @@ +{ + "creation": "2026-09-22 00:00:00.000000", + "docstatus": 0, + "doctype": "Page", + "idx": 0, + "modified": "2026-09-22 00:00:00.000000", + "modified_by": "Administrator", + "module": "Lukenya Marathon", + "name": "lukenya-payments", + "owner": "Administrator", + "page_name": "lukenya-payments", + "roles": [ + {"role": "System Manager"}, + {"role": "Race Director"}, + {"role": "Registration Desk"} + ], + "standard": "Yes", + "system_page": 0, + "title": "Payments" +} diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_race_management/__init__.py b/lukenya_marathon/lukenya_marathon/page/lukenya_race_management/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_race_management/lukenya_race_management.css b/lukenya_marathon/lukenya_marathon/page/lukenya_race_management/lukenya_race_management.css new file mode 100644 index 0000000..f2b3a3d --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_race_management/lukenya_race_management.css @@ -0,0 +1,275 @@ +/* -------------------------------------------------------------------------- */ +/* Full-width Frappe page container */ +/* -------------------------------------------------------------------------- */ + +#page-lukenya-race-management, +#page-lukenya-race-management .page-body, +#page-lukenya-race-management .layout-main-section-wrapper, +#page-lukenya-race-management .layout-main-section { + width: 100% !important; + max-width: none !important; + margin: 0 !important; + padding-left: 0 !important; + padding-right: 0 !important; +} + +#page-lukenya-race-management .page-body { + min-height: calc(100vh - var(--navbar-height, 48px)); +} + +#page-lukenya-race-management .layout-main-section { + min-height: calc(100vh - var(--navbar-height, 48px)); +} + +/* Remove any Frappe horizontal gutters around the custom page */ +#page-lukenya-race-management .container, +#page-lukenya-race-management .container-fluid { + width: 100% !important; + max-width: none !important; + padding-left: 0 !important; + padding-right: 0 !important; +} + +/* -------------------------------------------------------------------------- */ +/* Race Management layout */ +/* -------------------------------------------------------------------------- */ + +#page-lukenya-race-management .page-head { + display: none !important; +} + +#page-lukenya-race-management .lm-rm-layout { + display: grid; + grid-template-columns: 248px minmax(0, 1fr); + width: 100%; + min-height: calc(100vh - var(--navbar-height, 48px)); + background: #f5f7fb; +} + +/* -------------------------------------------------------------------------- */ +/* Sidebar — shared across every lukenya-* page: */ +/* public/css/lukenya_navigation.css */ +/* -------------------------------------------------------------------------- */ +/* Main content */ +/* -------------------------------------------------------------------------- */ + +#page-lukenya-race-management .lm-rm-main { + width: 100%; + min-width: 0; + padding: 28px 34px 40px; + overflow-x: auto; +} + +#page-lukenya-race-management .lm-rm-header, +#page-lukenya-race-management .lm-rm-edition, +#page-lukenya-race-management .lm-rm-section-title { + display: flex; + align-items: center; + justify-content: space-between; + gap: 20px; +} + +#page-lukenya-race-management .lm-rm-header { + margin-bottom: 20px; +} + +#page-lukenya-race-management h1, +#page-lukenya-race-management h2 { + margin: 0 0 5px; + color: #16233d; +} + +#page-lukenya-race-management h1 { + font-size: 28px; +} + +#page-lukenya-race-management h2 { + font-size: 18px; +} + +#page-lukenya-race-management .lm-rm-eyebrow { + margin: 0 0 5px; + color: #2f6bff; + font-size: 12px; + font-weight: 700; + text-transform: uppercase; + letter-spacing: .08em; +} + +#page-lukenya-race-management .lm-rm-muted, +#page-lukenya-race-management .lm-rm-edition p, +#page-lukenya-race-management .lm-rm-section-title p { + margin: 0; + color: #75829a; + font-size: 13px; +} + +#page-lukenya-race-management .lm-rm-controls { + display: flex; + align-items: center; + gap: 8px; +} + +#page-lukenya-race-management .lm-rm-controls select { + min-width: 240px; + height: 34px; + border: 1px solid #d8dfec; + border-radius: 6px; + background: #fff; + padding: 0 10px; +} + +/* -------------------------------------------------------------------------- */ +/* Cards */ +/* -------------------------------------------------------------------------- */ + +#page-lukenya-race-management .lm-rm-card { + border: 1px solid #e2e7f0; + border-radius: 12px; + background: #fff; + box-shadow: 0 5px 18px rgba(30, 48, 80, .05); +} + +#page-lukenya-race-management .lm-rm-edition { + padding: 18px 20px; + margin-bottom: 16px; +} + +#page-lukenya-race-management .lm-rm-status { + display: inline-block; + margin-bottom: 7px; + padding: 4px 8px; + border-radius: 20px; + background: #e8f7ed; + color: #198754; + font-size: 11px; + font-weight: 700; + text-transform: uppercase; +} + +#page-lukenya-race-management .lm-rm-kpis { + display: grid; + grid-template-columns: repeat(6, minmax(0, 1fr)); + gap: 12px; + margin-bottom: 16px; +} + +#page-lukenya-race-management .lm-rm-kpi { + min-height: 112px; + padding: 16px; + text-align: left; + cursor: pointer; +} + +#page-lukenya-race-management .lm-rm-kpi:hover, +#page-lukenya-race-management .lm-rm-shortcut:hover { + border-color: #2f6bff; + transform: translateY(-1px); +} + +#page-lukenya-race-management .lm-rm-kpi span, +#page-lukenya-race-management .lm-rm-kpi small { + display: block; + color: #75829a; + font-size: 12px; +} + +#page-lukenya-race-management .lm-rm-kpi strong { + display: block; + margin: 9px 0 3px; + color: #16233d; + font-size: 26px; +} + +#page-lukenya-race-management .lm-rm-panel { + padding: 20px; +} + +#page-lukenya-race-management .lm-rm-section-title { + margin-bottom: 15px; +} + +#page-lukenya-race-management .lm-rm-table { + width: 100%; + min-width: 820px; + margin: 0; +} + +#page-lukenya-race-management .lm-rm-table td small { + display: block; + color: #75829a; + font-size: 11px; +} + +#page-lukenya-race-management .lm-rm-shortcuts { + display: grid; + grid-template-columns: repeat(5, minmax(0, 1fr)); + gap: 12px; + margin-top: 16px; +} + +#page-lukenya-race-management .lm-rm-shortcut { + display: grid; + gap: 10px; + padding: 16px; + border: 0; + text-align: left; + cursor: pointer; +} + +#page-lukenya-race-management .lm-rm-shortcut span { + color: #2f6bff; + font-size: 12px; +} + +#page-lukenya-race-management .lm-rm-loading, +#page-lukenya-race-management .lm-rm-empty, +#page-lukenya-race-management .lm-rm-error { + padding: 28px; +} + +#page-lukenya-race-management .lm-rm-error { + color: #b42318; +} + +/* -------------------------------------------------------------------------- */ +/* Responsive behavior */ +/* -------------------------------------------------------------------------- */ + +@media (max-width: 1250px) { + #page-lukenya-race-management .lm-rm-kpis { + grid-template-columns: repeat(3, minmax(0, 1fr)); + } + + #page-lukenya-race-management .lm-rm-shortcuts { + grid-template-columns: repeat(3, minmax(0, 1fr)); + } +} + +@media (max-width: 760px) { + #page-lukenya-race-management .lm-rm-layout { + display: block; + } + + #page-lukenya-race-management .lm-side { + display: none; + } + + #page-lukenya-race-management .lm-rm-main { + padding: 16px; + } + + #page-lukenya-race-management .lm-rm-header { + display: block; + } + + #page-lukenya-race-management .lm-rm-controls { + margin-top: 14px; + } + + #page-lukenya-race-management .lm-rm-kpis, + #page-lukenya-race-management .lm-rm-shortcuts { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } +} + diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_race_management/lukenya_race_management.js b/lukenya_marathon/lukenya_marathon/page/lukenya_race_management/lukenya_race_management.js new file mode 100644 index 0000000..9c184b6 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_race_management/lukenya_race_management.js @@ -0,0 +1,170 @@ +frappe.provide("lukenya.race_management"); + +(() => { + const PAGE = "lukenya-race-management"; + const API = "lukenya_marathon.lukenya_marathon.race_management."; + const esc = (value) => frappe.utils.escape_html(value == null ? "" : String(value)); + const pct = (value) => `${Number(value || 0).toFixed(1)}%`; + + class RaceManagement { + constructor(wrapper) { + this.wrapper = wrapper; + this.state = { editions: [], edition: null, summary: null, loading: false }; + this.renderShell(); + this.bind(); + } + + renderShell() { + this.$root = $(this.wrapper).find(".layout-main-section"); + this.$root.html(` +
+ ${lukenya.nav.render("lukenya-race-management")} +
+
+
+

${esc(__("Race day operations"))}

+

${esc(__("Race Management"))}

+

${esc(__("Monitor registration readiness, bibs, race packs, check-in and results."))}

+
+
+ + +
+
+
+
+
+ `); + } + + bind() { + this.$root.on("click", "[data-action=refresh]", () => this.refresh()); + this.$root.on("change", "[data-edition]", (event) => { + this.state.edition = event.target.value || null; + this.refresh(); + }); + this.$root.on("click", "[data-route]", (event) => { + const route = event.currentTarget.dataset.route; + const doctype = event.currentTarget.dataset.doctype; + if (route) frappe.set_route(route); + else if (doctype) frappe.set_route("List", doctype); + }); + this.$root.on("click", "[data-list]", (event) => { + const doctype = event.currentTarget.dataset.list; + const filters = event.currentTarget.dataset.filters || "{}"; + frappe.route_options = JSON.parse(filters); + frappe.set_route("List", doctype); + }); + } + + show() { + this.loadEditions(); + } + + loadEditions() { + frappe.call({ + method: API + "get_event_editions", + callback: (r) => { + this.state.editions = r.message || []; + if (!this.state.edition) { + const open = this.state.editions.find((item) => item.status === "Open"); + this.state.edition = (open || this.state.editions[0] || {}).name || null; + } + this.renderEditionOptions(); + this.refresh(); + }, + error: () => this.showError(__("Unable to load event editions.")), + }); + } + + renderEditionOptions() { + const options = this.state.editions.map((item) => + `` + ).join(""); + this.$root.find("[data-edition]").html(options || ``); + } + + refresh() { + if (!this.state.edition) { + this.renderEmpty(__("Create an Event Edition before using Race Management.")); + return; + } + this.state.loading = true; + this.renderLoading(); + frappe.call({ + method: API + "get_race_management_summary", + args: { event_edition: this.state.edition }, + callback: (r) => { + this.state.loading = false; + this.state.summary = r.message || {}; + this.renderSummary(); + }, + error: () => { + this.state.loading = false; + this.showError(__("Unable to load race management data.")); + }, + }); + } + + renderLoading() { + this.$root.find("[data-content]").html(`
${esc(__("Loading race management data…"))}
`); + } + + renderEmpty(message) { + this.$root.find("[data-content]").html(`
${esc(message)}
`); + } + + showError(message) { + this.$root.find("[data-content]").html(`
${esc(message)}
`); + } + + renderSummary() { + const data = this.state.summary; + const edition = data.edition; + if (!edition) return this.renderEmpty(__("No Event Edition data found.")); + const k = data.kpis || {}; + const filters = JSON.stringify({ event_edition: edition.name }); + const cards = [ + [__("Registrations"), k.registrations, ""], + [__("Paid entries"), k.paid, pct(k.paid_percent)], + [__("Bibs allocated"), k.bibs, pct(k.bibs_percent)], + [__("Packs collected"), k.packs, pct(k.packs_percent)], + [__("Checked in"), k.checked_in, pct(k.checked_in_percent)], + [__("Finishers"), k.finishers, pct(k.finishers_percent)], + ]; + const rows = (data.categories || []).map((row) => ` + + ${esc(row.category_name || row.name)}${esc(row.distance_km || "")} km + ${esc(row.start_time || "—")} + ${esc(row.capacity || "—")} + ${esc(row.registered || 0)} + ${esc(row.paid || 0)} + ${esc(row.bibs || 0)} + ${esc(row.checked_in || 0)} + ${esc(row.finishers || 0)} + + + `).join(""); + this.$root.find("[data-content]").html(` +
+
${esc(edition.status || "")}

${esc(edition.edition_name || edition.name)}

${esc(edition.event_date || "")} · ${esc(edition.venue || "")}

+ +
+
${cards.map((card) => ``).join("")}
+
+

${esc(__("Race categories"))}

${esc(__("Operational progress by category."))}

+
${rows || ``}
${esc(__("Category"))}${esc(__("Start"))}${esc(__("Capacity"))}${esc(__("Registered"))}${esc(__("Paid"))}${esc(__("Bibs"))}${esc(__("Checked in"))}${esc(__("Finished"))}
${esc(__("No race categories found for this edition."))}
+
+
+ ${[["Bib Allocation", __("Bib allocations")], ["Race Pack Issue", __("Race packs")], ["Check-in", __("Check-in")], ["Timing Result", __("Timing results")], ["Payment Transaction", __("Payments")]].map((item) => ``).join("")} +
+ `); + } + } + + frappe.pages[PAGE].on_page_load = (wrapper) => { + frappe.ui.make_app_page({ parent: wrapper, title: __("Race Management"), single_column: true }); + wrapper.race_management = new RaceManagement(wrapper); + }; + frappe.pages[PAGE].on_page_show = (wrapper) => wrapper.race_management && wrapper.race_management.show(); +})(); diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_race_management/lukenya_race_management.json b/lukenya_marathon/lukenya_marathon/page/lukenya_race_management/lukenya_race_management.json new file mode 100644 index 0000000..63d9f40 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_race_management/lukenya_race_management.json @@ -0,0 +1,21 @@ +{ + "creation": "2026-09-22 00:00:00.000000", + "docstatus": 0, + "doctype": "Page", + "idx": 0, + "modified": "2026-09-22 00:00:00.000000", + "modified_by": "Administrator", + "module": "Lukenya Marathon", + "name": "lukenya-race-management", + "owner": "Administrator", + "page_name": "lukenya-race-management", + "roles": [ + {"role": "System Manager"}, + {"role": "Race Director"}, + {"role": "Registration Desk"}, + {"role": "Timing Officer"} + ], + "standard": "Yes", + "system_page": 0, + "title": "Race Management" +} diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_reports/__init__.py b/lukenya_marathon/lukenya_marathon/page/lukenya_reports/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_reports/lukenya_reports.css b/lukenya_marathon/lukenya_marathon/page/lukenya_reports/lukenya_reports.css new file mode 100644 index 0000000..d736b51 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_reports/lukenya_reports.css @@ -0,0 +1,836 @@ +/* Lukenya Marathon reports page. Shares its shell (sidebar, tokens) with the dashboard. + * Everything is scoped to #page-lukenya-reports so nothing leaks into the rest of Desk. + * Change the look from the tokens block below. + */ + +#page-lukenya-reports { + /* Tokens: surface */ + --lm-bg: #f3f6fb; + --lm-card: #ffffff; + --lm-line: #e5eaf3; + --lm-ink: #17233d; + --lm-muted: #66748f; + + /* Tokens: brand */ + --lm-primary: #2f6bff; + --lm-primary-ink: #ffffff; + + /* Tokens: shape */ + --lm-radius: 14px; + --lm-radius-sm: 10px; + --lm-shadow: 0 1px 2px rgba(23, 35, 61, 0.05), 0 6px 18px rgba(23, 35, 61, 0.05); + --lm-shadow-hover: 0 2px 4px rgba(23, 35, 61, 0.07), 0 10px 24px rgba(23, 35, 61, 0.09); + + /* Tokens: hero photo (drop a file at public/images/lukenya-hero.jpg to use it) */ + --lm-hero-image: url("/assets/lukenya_marathon/images/lukenya-hero.jpg"); + + background: var(--lm-bg); + color: var(--lm-ink); +} + +/* Remove Desk's own page header and width limits on this page only. */ +#page-lukenya-reports .page-head { + display: none; +} +#page-lukenya-reports .container, +#page-lukenya-reports .page-body { + max-width: none; + margin: 0; + padding: 0; +} +#page-lukenya-reports .layout-main { + margin: 0; +} +#page-lukenya-reports .layout-main-section-wrapper, +#page-lukenya-reports .layout-main-section { + padding: 0; +} + +/* ---- Shell ---------------------------------------------------------------- */ + +#page-lukenya-reports .lm-app { + display: grid; + grid-template-columns: 248px minmax(0, 1fr); + min-height: calc(100vh - var(--navbar-height, 48px)); +} + +#page-lukenya-reports .lm-app, +#page-lukenya-reports .lm-app * { + box-sizing: border-box; +} + +/* :where() keeps this reset weaker than the component classes below. */ +#page-lukenya-reports :where(.lm-app) button { + font: inherit; + color: inherit; + cursor: pointer; +} + +#page-lukenya-reports .lm-ico { + flex: none; +} + +#page-lukenya-reports .lm-main { + padding: 24px 28px 32px; + min-width: 0; +} + +/* ---- Sidebar --------------------------------------------------------------- + * Now shared across every lukenya-* page: public/css/lukenya_navigation.css + * ---------------------------------------------------------------------- */ + +/* ---- Hero ----------------------------------------------------------------- */ + +#page-lukenya-reports .lm-hero { + position: relative; + display: flex; + align-items: center; + min-height: 140px; + margin-bottom: 18px; + border-radius: var(--lm-radius); + overflow: hidden; + background: var(--lm-card); + border: 1px solid var(--lm-line); + box-shadow: var(--lm-shadow); +} +#page-lukenya-reports .lm-hero__text { + position: relative; + z-index: 1; + padding: 24px 28px; +} +#page-lukenya-reports .lm-hero h1 { + margin: 0 0 6px; + font-size: 26px; + font-weight: 700; + line-height: 1.2; + color: var(--lm-ink); +} +#page-lukenya-reports .lm-hero p { + margin: 0; + font-size: 14px; + color: var(--lm-muted); +} +#page-lukenya-reports .lm-hero__art { + position: absolute; + inset: 0 0 0 42%; + background-image: + linear-gradient(90deg, var(--lm-card) 0%, rgba(255, 255, 255, 0) 45%), + var(--lm-hero-image), + linear-gradient(180deg, #cfe0f5 0%, #e9eef0 45%, #9fb590 46%, #6f8a63 100%); + background-size: cover; + background-position: center; +} +#page-lukenya-reports .lm-hero__tag { + position: absolute; + top: 22px; + right: 32px; + font-family: "Segoe Script", "Bradley Hand", "Snell Roundhand", cursive; + font-size: 20px; + line-height: 1.15; + text-align: right; + color: #0f2a55; + transform: rotate(-6deg); + text-shadow: 0 1px 0 rgba(255, 255, 255, 0.7); +} + +/* ---- KPI row -------------------------------------------------------------- */ + +#page-lukenya-reports .lm-kpis { + display: grid; + grid-template-columns: repeat(4, minmax(0, 1fr)); + gap: 14px; + margin-bottom: 18px; +} +#page-lukenya-reports .lm-kpi { + position: relative; + display: flex; + align-items: center; + gap: 14px; + padding: 16px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: var(--lm-card); + box-shadow: var(--lm-shadow); + text-align: left; + transition: box-shadow 0.15s ease, border-color 0.15s ease; +} +#page-lukenya-reports .lm-kpi:hover { + box-shadow: var(--lm-shadow-hover); + border-color: #d3dcee; +} +#page-lukenya-reports .lm-kpi__body { + display: flex; + flex-direction: column; + gap: 2px; + min-width: 0; + flex: 1; +} +#page-lukenya-reports .lm-kpi__label { + font-size: 13px; + color: var(--lm-muted); +} +#page-lukenya-reports .lm-kpi__value { + font-size: 26px; + font-weight: 700; + line-height: 1.15; + color: var(--lm-ink); + white-space: nowrap; +} +#page-lukenya-reports .lm-kpi__go { + position: absolute; + top: 14px; + right: 14px; + color: var(--lm-muted); +} + +#page-lukenya-reports .lm-trend { + display: inline-flex; + align-items: center; + gap: 4px; + font-size: 12px; + font-weight: 600; +} +#page-lukenya-reports .lm-trend em { + font-style: normal; + font-weight: 400; + color: var(--lm-muted); +} +#page-lukenya-reports .lm-trend.is-up { + color: #1f9d5a; +} +#page-lukenya-reports .lm-trend.is-down { + color: #d0424b; +} +#page-lukenya-reports .lm-trend.is-flat { + color: var(--lm-muted); + font-weight: 400; +} + +/* ---- Icon chips and tones ------------------------------------------------- */ + +#page-lukenya-reports .lm-chip { + display: grid; + place-items: center; + flex: none; + width: 46px; + height: 46px; + border-radius: 999px; + background: var(--tone-bg, #e8f0ff); + color: var(--tone-ink, #2f6bff); +} +#page-lukenya-reports .lm-tone-blue { --tone-bg: #e5eeff; --tone-ink: #2f6bff; } +#page-lukenya-reports .lm-tone-green { --tone-bg: #e1f6ea; --tone-ink: #1f9d5a; } +#page-lukenya-reports .lm-tone-purple { --tone-bg: #ece6ff; --tone-ink: #7451e0; } +#page-lukenya-reports .lm-tone-rose { --tone-bg: #ffe6e8; --tone-ink: #dc4650; } +#page-lukenya-reports .lm-tone-amber { --tone-bg: #fff1d6; --tone-ink: #d98a0b; } +#page-lukenya-reports .lm-tone-teal { --tone-bg: #dcf5f4; --tone-ink: #12928f; } +#page-lukenya-reports .lm-tone-gold { --tone-bg: #fff0d1; --tone-ink: #e08a00; } +#page-lukenya-reports .lm-tone-peach { --tone-bg: #ffeadb; --tone-ink: #ec7a1f; } +#page-lukenya-reports .lm-tone-slate { --tone-bg: #e3ecfb; --tone-ink: #3563c9; } + +/* ---- Operations panel ----------------------------------------------------- */ + +#page-lukenya-reports .lm-ops { + padding: 20px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: var(--lm-card); + box-shadow: var(--lm-shadow); +} +#page-lukenya-reports .lm-ops__head { + display: flex; + align-items: center; + gap: 14px; + margin-bottom: 18px; +} +#page-lukenya-reports .lm-ops__head > div:not(.lm-menu) { + flex: 1; + min-width: 0; +} +#page-lukenya-reports .lm-ops__mark { + display: grid; + place-items: center; + width: 46px; + height: 46px; + border-radius: 12px; + background: #12417a; + color: #fff; +} +#page-lukenya-reports .lm-ops h2 { + margin: 0; + font-size: 18px; + font-weight: 700; + color: var(--lm-ink); +} +#page-lukenya-reports .lm-ops__head p { + margin: 2px 0 0; + font-size: 13px; + color: var(--lm-muted); +} + +#page-lukenya-reports .lm-menu { + position: relative; +} +#page-lukenya-reports .lm-quick { + display: inline-flex; + align-items: center; + gap: 8px; + padding: 9px 14px; + border: 1px solid #cfdcf7; + border-radius: var(--lm-radius-sm); + background: #eef3ff; + color: var(--lm-primary); + font-size: 13px; + font-weight: 600; + transition: background-color 0.15s ease; +} +#page-lukenya-reports .lm-quick:hover { + background: #e2ebff; +} +#page-lukenya-reports .lm-menu__list { + position: absolute; + right: 0; + top: calc(100% + 6px); + z-index: 5; + min-width: 200px; + padding: 6px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius-sm); + background: var(--lm-card); + box-shadow: var(--lm-shadow-hover); +} +#page-lukenya-reports .lm-menu__list[hidden] { + display: none; +} +#page-lukenya-reports .lm-menu__item { + display: block; + width: 100%; + padding: 9px 12px; + border: 0; + border-radius: 8px; + background: transparent; + font-size: 13px; + text-align: left; +} +#page-lukenya-reports .lm-menu__item:hover { + background: #f1f5fd; +} + +/* ---- Tiles ---------------------------------------------------------------- */ + +#page-lukenya-reports .lm-grid { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 14px; +} +#page-lukenya-reports .lm-tile { + position: relative; + display: flex; + align-items: flex-start; + gap: 14px; + padding: 16px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: var(--lm-card); + cursor: pointer; + transition: box-shadow 0.15s ease, border-color 0.15s ease; +} +#page-lukenya-reports .lm-tile:hover { + box-shadow: var(--lm-shadow-hover); + border-color: #d3dcee; +} +#page-lukenya-reports .lm-tile.is-soon { + cursor: default; + background: #fafbfe; +} +#page-lukenya-reports .lm-tile.is-soon:hover { + box-shadow: none; + border-color: var(--lm-line); +} +#page-lukenya-reports .lm-tile.is-soon .lm-chip { + filter: saturate(0.5); + opacity: 0.8; +} +#page-lukenya-reports .lm-tile__body { + flex: 1; + min-width: 0; +} +#page-lukenya-reports .lm-tile h3 { + margin: 0 0 4px; + font-size: 15px; + font-weight: 700; + color: var(--lm-ink); +} +#page-lukenya-reports .lm-tile p { + margin: 0 0 10px; + font-size: 12.5px; + line-height: 1.45; + color: var(--lm-muted); +} +#page-lukenya-reports .lm-tile__go { + color: var(--lm-muted); +} +#page-lukenya-reports .lm-tile__foot { + display: flex; + flex-wrap: wrap; + align-items: center; + gap: 6px; +} +#page-lukenya-reports .lm-count { + display: inline-block; + min-width: 28px; + padding: 2px 10px; + border-radius: 999px; + background: #e9f0ff; + color: #2a58c9; + font-size: 12px; + font-weight: 700; + text-align: center; +} +#page-lukenya-reports .lm-pill { + padding: 2px 10px; + border: 1px solid var(--lm-line); + border-radius: 999px; + background: #fff; + color: var(--lm-muted); + font-size: 12px; + transition: border-color 0.15s ease, color 0.15s ease; +} +#page-lukenya-reports .lm-pill:hover { + border-color: var(--lm-primary); + color: var(--lm-primary); +} +#page-lukenya-reports .lm-soon { + display: inline-block; + padding: 2px 10px; + border-radius: 999px; + background: #eef1f7; + color: var(--lm-muted); + font-size: 12px; +} + +/* ---- New event bar -------------------------------------------------------- */ + +#page-lukenya-reports .lm-newevent { + display: flex; + align-items: center; + gap: 14px; + margin-top: 16px; + padding: 14px 16px; + border-radius: var(--lm-radius); + background: #edf3ff; +} +#page-lukenya-reports .lm-newevent__icon { + color: var(--lm-primary); +} +#page-lukenya-reports .lm-newevent > div { + flex: 1; + display: flex; + flex-direction: column; + gap: 2px; + min-width: 0; +} +#page-lukenya-reports .lm-newevent strong { + font-size: 14px; + color: #1b3f8f; +} +#page-lukenya-reports .lm-newevent > div > span { + font-size: 12.5px; + color: var(--lm-muted); +} +#page-lukenya-reports .lm-cta { + display: inline-flex; + align-items: center; + gap: 8px; + padding: 10px 18px; + border: 0; + border-radius: var(--lm-radius-sm); + background: var(--lm-primary); + color: var(--lm-primary-ink); + font-size: 14px; + font-weight: 600; + box-shadow: 0 6px 14px rgba(47, 107, 255, 0.3); + transition: background-color 0.15s ease; +} +#page-lukenya-reports .lm-cta:hover { + background: #2459e0; +} + +#page-lukenya-reports .lm-notice { + margin-bottom: 18px; + padding: 14px 16px; + border: 1px solid #f3c9cd; + border-radius: var(--lm-radius-sm); + background: #fff1f2; + color: #a3303a; + font-size: 13px; +} + +/* ---- Focus and motion ----------------------------------------------------- */ + +#page-lukenya-reports .lm-app :is(button, .lm-tile):focus-visible { + outline: 2px solid var(--lm-primary); + outline-offset: 2px; +} + +@media (prefers-reduced-motion: reduce) { + #page-lukenya-reports .lm-app * { + transition: none !important; + } +} + +/* ---- Responsive ----------------------------------------------------------- */ + +@media (max-width: 1200px) { + #page-lukenya-reports .lm-kpis { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } + #page-lukenya-reports .lm-grid { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } +} + +@media (max-width: 900px) { + #page-lukenya-reports .lm-app { + grid-template-columns: minmax(0, 1fr); + } + #page-lukenya-reports .lm-main { + padding: 16px; + } +} + +@media (max-width: 640px) { + #page-lukenya-reports .lm-kpis, + #page-lukenya-reports .lm-grid { + grid-template-columns: minmax(0, 1fr); + } + #page-lukenya-reports .lm-hero__art { + display: none; + } + #page-lukenya-reports .lm-ops__head { + flex-wrap: wrap; + } + #page-lukenya-reports .lm-newevent { + flex-wrap: wrap; + } +} + + +/* ==== Reports page ======================================================== */ + +#page-lukenya-reports .lm-rep { + display: flex; + flex-direction: column; + gap: 16px; +} +#page-lukenya-reports .lm-rep__head h1 { + margin: 0 0 4px; + font-size: 24px; + font-weight: 700; + color: var(--lm-ink); +} +#page-lukenya-reports .lm-rep__head p { + margin: 0; + font-size: 14px; + color: var(--lm-muted); +} +#page-lukenya-reports .lm-rep__body { + display: flex; + flex-direction: column; + gap: 16px; + min-width: 0; +} + +/* Filters */ +#page-lukenya-reports .lm-filters { + display: flex; + flex-wrap: wrap; + align-items: flex-end; + gap: 12px; + padding: 14px 16px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: var(--lm-card); + box-shadow: var(--lm-shadow); +} +#page-lukenya-reports .lm-field { + display: flex; + flex-direction: column; + gap: 4px; + margin: 0; + font-size: 12px; + font-weight: 500; + color: var(--lm-muted); +} +#page-lukenya-reports .lm-field select, +#page-lukenya-reports .lm-field input { + height: 36px; + min-width: 170px; + margin: 0; + padding: 0 10px; + border: 1px solid var(--lm-line); + border-radius: 8px; + background: #fff; + color: var(--lm-ink); + font-size: 13px; + box-shadow: none; +} +#page-lukenya-reports .lm-field select:focus, +#page-lukenya-reports .lm-field input:focus { + border-color: var(--lm-primary); + outline: 2px solid rgba(47, 107, 255, 0.2); +} +#page-lukenya-reports .lm-reset { + height: 36px; + padding: 0 14px; + border: 1px solid var(--lm-line); + border-radius: 8px; + background: #fff; + color: var(--lm-muted); + font-size: 13px; +} +#page-lukenya-reports .lm-reset:hover { + border-color: var(--lm-primary); + color: var(--lm-primary); +} +#page-lukenya-reports .lm-filters__note { + flex-basis: 100%; + margin: 0; + font-size: 12px; + color: var(--lm-muted); +} + +/* Tabs */ +#page-lukenya-reports .lm-tabs { + display: flex; + flex-wrap: wrap; + gap: 4px; + border-bottom: 1px solid var(--lm-line); +} +#page-lukenya-reports .lm-tab { + margin-bottom: -1px; + padding: 10px 14px; + border: 0; + border-bottom: 2px solid transparent; + background: transparent; + color: var(--lm-muted); + font-size: 14px; + font-weight: 600; + transition: color 0.15s ease; +} +#page-lukenya-reports .lm-tab:hover { + color: var(--lm-ink); +} +#page-lukenya-reports .lm-tab.is-active { + border-bottom-color: var(--lm-primary); + color: var(--lm-primary); +} + +/* KPI cards */ +#page-lukenya-reports .lm-stats { + display: grid; + grid-template-columns: repeat(var(--lm-cols, 4), minmax(0, 1fr)); + gap: 14px; +} +#page-lukenya-reports .lm-stat { + display: flex; + flex-direction: column; + gap: 2px; + padding: 16px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: var(--lm-card); + box-shadow: var(--lm-shadow); +} +#page-lukenya-reports .lm-stat__label { + font-size: 13px; + color: var(--lm-muted); +} +#page-lukenya-reports .lm-stat__value { + font-size: 26px; + font-weight: 700; + line-height: 1.2; + white-space: nowrap; + color: var(--lm-ink); +} +#page-lukenya-reports .lm-stat__hint { + font-size: 12px; + color: var(--lm-muted); +} + +/* Needs attention */ +#page-lukenya-reports .lm-attn { + padding: 14px 16px; + border: 1px solid #f3dfb8; + border-radius: var(--lm-radius); + background: #fffaf0; +} +#page-lukenya-reports .lm-attn h2 { + margin: 0 0 8px; + font-size: 14px; + font-weight: 700; + color: #8a5a00; +} +#page-lukenya-reports .lm-attn ul { + display: flex; + flex-wrap: wrap; + gap: 8px; + margin: 0; + padding: 0; + list-style: none; +} +#page-lukenya-reports .lm-attn__item { + display: inline-flex; + align-items: center; + gap: 8px; + padding: 7px 12px; + border: 1px solid #f0d9a6; + border-radius: 999px; + background: #fff; + color: #6b4a00; + font-size: 13px; + transition: border-color 0.15s ease; +} +#page-lukenya-reports .lm-attn__item:hover { + border-color: #d99a1a; +} +#page-lukenya-reports .lm-attn__item.is-static { + cursor: default; +} +#page-lukenya-reports .lm-attn__item.is-static:hover { + border-color: #f0d9a6; +} + +/* Panels, charts and tables */ +#page-lukenya-reports .lm-charts { + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 14px; +} +#page-lukenya-reports .lm-panel { + min-width: 0; + padding: 16px; + border: 1px solid var(--lm-line); + border-radius: var(--lm-radius); + background: var(--lm-card); + box-shadow: var(--lm-shadow); +} +#page-lukenya-reports .lm-panel.is-wide { + grid-column: 1 / -1; +} +#page-lukenya-reports .lm-panel > header { + display: flex; + align-items: center; + justify-content: space-between; + gap: 12px; + margin-bottom: 10px; +} +#page-lukenya-reports .lm-panel h3 { + margin: 0; + font-size: 15px; + font-weight: 700; + color: var(--lm-ink); +} +#page-lukenya-reports .lm-panel__actions { + display: flex; + gap: 14px; +} +#page-lukenya-reports .lm-linkbtn { + display: inline-flex; + align-items: center; + gap: 5px; + padding: 0; + border: 0; + background: transparent; + color: var(--lm-primary); + font-size: 12.5px; + font-weight: 600; +} +#page-lukenya-reports .lm-linkbtn:hover { + text-decoration: underline; +} +#page-lukenya-reports .lm-chart { + min-height: 200px; +} +#page-lukenya-reports .lm-empty { + margin: 0; + padding: 28px 0; + text-align: center; + font-size: 13px; + color: var(--lm-muted); +} + +#page-lukenya-reports .lm-tablewrap { + overflow-x: auto; +} +#page-lukenya-reports .lm-table { + width: 100%; + margin: 0; + border-collapse: collapse; + font-size: 13px; +} +#page-lukenya-reports .lm-table th { + padding: 8px 10px; + border-bottom: 1px solid var(--lm-line); + background: #f8fafd; + color: var(--lm-muted); + font-size: 12px; + font-weight: 600; + text-align: left; + white-space: nowrap; +} +#page-lukenya-reports .lm-table td { + padding: 9px 10px; + border-bottom: 1px solid #eef2f8; + color: var(--lm-ink); + white-space: nowrap; +} +#page-lukenya-reports .lm-table tr:last-child td { + border-bottom: 0; +} +#page-lukenya-reports .lm-table .is-int, +#page-lukenya-reports .lm-table .is-currency, +#page-lukenya-reports .lm-table .is-percent { + text-align: right; + font-variant-numeric: tabular-nums; +} +#page-lukenya-reports .lm-link { + color: var(--lm-primary); + font-weight: 600; +} + +#page-lukenya-reports .lm-loading { + padding: 60px 0; + text-align: center; + font-size: 14px; + color: var(--lm-muted); +} + +@media (max-width: 1100px) { + #page-lukenya-reports .lm-stats { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } +} + +@media (max-width: 560px) { + #page-lukenya-reports .lm-stats { + grid-template-columns: minmax(0, 1fr); + } +} + +@media (max-width: 900px) { + #page-lukenya-reports .lm-charts { + grid-template-columns: minmax(0, 1fr); + } + #page-lukenya-reports .lm-panel.is-wide { + grid-column: auto; + } + #page-lukenya-reports .lm-field { + flex: 1 1 140px; + } + #page-lukenya-reports .lm-field select, + #page-lukenya-reports .lm-field input { + width: 100%; + min-width: 0; + } +} diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_reports/lukenya_reports.js b/lukenya_marathon/lukenya_marathon/page/lukenya_reports/lukenya_reports.js new file mode 100644 index 0000000..659d76d --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_reports/lukenya_reports.js @@ -0,0 +1,464 @@ +/* Lukenya Marathon - Reports & Analytics (Desk page). + * Data comes from lukenya_marathon.lukenya_marathon.analytics. Styling lives in lukenya_reports.css. + */ +(function () { + const PAGE = "lukenya-reports"; + const API = "lukenya_marathon.lukenya_marathon.analytics."; + const PALETTE = ["#2f6bff", "#1f9d5a", "#e08a00", "#7451e0", "#12928f", "#dc4650", "#ec7a1f", "#3563c9"]; + + // Feather-style line icons (inner SVG only). + const ICON = { + grid: '', + calendar: '', + users: '', + flag: '', + card: '', + chart: '', + sliders: '', + run: '', + right: '', + alert: '', + download: '', + external: '', + }; + + const svg = (name, size) => + ``; + + const esc = (s) => frappe.utils.escape_html(s == null ? "" : String(s)); + + // ---- Configuration ------------------------------------------------------- + + const TABS = [ + { key: "overview", label: __("Overview") }, + { key: "registrations", label: __("Registrations") }, + { key: "payments", label: __("Payments") }, + { key: "race_day", label: __("Race Day") }, + { key: "results", label: __("Results & Prizes") }, + { key: "volunteers", label: __("Volunteers & Impact") }, + ]; + + // What the filters do on each tab. + const NOTES = { + overview: __("Dates filter entries by registration date."), + registrations: __("Dates filter entries by registration date."), + payments: __("Dates filter payments by payment date."), + race_day: __("Dates filter entries by registration date."), + results: __("Results follow the edition and category. Dates are not used here."), + volunteers: __("Dates filter shifts by shift date. Race category is not used here."), + }; + + // ---- Page ---------------------------------------------------------------- + + class LukenyaReports { + constructor(wrapper) { + this.wrapper = wrapper; + this.$root = $(wrapper).find(".layout-main-section"); + this.state = { tab: "overview", edition: null, category: "", from: "", to: "" }; + this.options = null; + this.data = null; + this.error = false; + this.loading = true; + this.req = 0; + this.charts = []; + this.renderShell(); + this.bind(); + } + + show() { + if (this.options) return this.load(); + frappe.call({ + method: API + "get_filter_options", + callback: (r) => { + this.options = r.message || { editions: [], categories: [], default_edition: null }; + if (this.state.edition === null) this.state.edition = this.options.default_edition || ""; + this.renderFilters(); + this.load(); + }, + error: () => this.fail(), + }); + } + + load() { + const token = ++this.req; + this.loading = true; + this.error = false; + this.renderTabs(); + this.renderBody(); + const s = this.state; + frappe.call({ + method: API + "get_analytics", + args: { + tab: s.tab, + event_edition: s.edition || null, + race_category: s.category || null, + from_date: s.from || null, + to_date: s.to || null, + }, + callback: (r) => { + if (token !== this.req) return; // a newer request replaced this one + this.data = r.message || null; + this.loading = false; + this.error = !this.data; + this.renderBody(); + }, + error: () => token === this.req && this.fail(), + }); + } + + fail() { + this.loading = false; + this.error = true; + this.renderBody(); + } + + // -- formatting -- + + money(value) { + const currency = (this.data && this.data.currency) || "KES"; + try { + return format_currency(value || 0, currency, 0); + } catch (e) { + return currency + " " + Number(value || 0).toLocaleString(); + } + } + + format(value, type) { + if (value === null || value === undefined || value === "") return "–"; + if (type === "currency") return esc(this.money(value)); + if (type === "percent") return esc(Number(value).toLocaleString(undefined, { maximumFractionDigits: 1 }) + "%"); + if (type === "int") return esc(Number(value).toLocaleString(undefined, { maximumFractionDigits: 1 })); + return esc(value); + } + + // -- rendering -- + + renderShell() { + this.$root.html(` +
+ ${lukenya.nav.render("lukenya-reports")} +
+
+
+

${esc(__("Reports & Analytics"))}

+

${esc(__("Numbers for entries, money, race day and impact, one edition at a time."))}

+
+
+
+ +
+
+
`); + this.renderFilters(); + this.renderTabs(); + this.renderBody(); + } + + renderFilters() { + const o = this.options || { editions: [], categories: [] }; + const s = this.state; + const editions = [``] + .concat(o.editions.map((e) => ``)) + .join(""); + const cats = [``] + .concat( + o.categories + .filter((c) => !s.edition || c.event_edition === s.edition) + .map((c) => ``) + ) + .join(""); + + this.$root.find(".lm-filters").html(` + + + + + +

${esc(NOTES[s.tab])}

`); + } + + renderTabs() { + const tabs = TABS.map( + (t) => + `` + ).join(""); + this.$root.find(".lm-tabs").html(tabs); + this.$root.find(".lm-filters__note").text(NOTES[this.state.tab]); + } + + renderBody() { + this.destroyCharts(); + const $body = this.$root.find(".lm-rep__body"); + + if (this.loading) { + $body.html(`
${esc(__("Loading figures..."))}
`); + return; + } + if (this.error || !this.data) { + $body.html(``); + return; + } + + const d = this.data; + $body.html(this.kpis(d) + this.attention(d) + this.chartGrid(d) + this.tables(d)); + this.drawCharts(); + } + + kpis(d) { + if (!d.kpis.length) return ""; + const cards = d.kpis + .map( + (k) => ` +
+ ${esc(k.label)} + ${this.format(k.value, k.format)} + ${k.hint ? esc(k.hint) : " "} +
` + ) + .join(""); + const n = d.kpis.length; + const cols = n <= 5 ? n : n === 6 ? 3 : 4; + return `
${cards}
`; + } + + attention(d) { + if (!d.attention.length) return ""; + const items = d.attention + .map((a, i) => { + const actionable = a.report || a.doctype; + return `
  • `; + }) + .join(""); + return `

    ${esc(__("Needs attention"))}

      ${items}
    `; + } + + chartGrid(d) { + if (!d.charts.length) return ""; + let col = 0; + const wide = d.charts.map((c) => { + if (c.wide) { + col = 0; + return true; + } + col = (col + 1) % 2; + return false; + }); + if (col === 1) wide[wide.length - 1] = true; + + const panels = d.charts + .map( + (c, i) => ` +
    +
    +

    ${esc(c.title)}

    + ${c.report ? `` : ""} +
    +
    +
    ` + ) + .join(""); + return `
    ${panels}
    `; + } + + tables(d) { + return d.tables + .map((t) => { + const head = t.columns.map((c) => `${esc(c.label)}`).join(""); + const body = t.rows + .map( + (r) => + "" + + t.columns + .map((c) => { + const v = r[c.field]; + if (c.type === "link" && v) { + return `${esc(v)}`; + } + return `${this.format(v, c.type)}`; + }) + .join("") + + "" + ) + .join(""); + const actions = + `${t.report ? `` : ""}` + + (t.rows.length ? `` : ""); + return ` +
    +

    ${esc(t.title)}

    ${actions}
    + ${ + t.rows.length + ? `
    ${head}${body}
    ` + : `

    ${esc(t.empty)}

    ` + } +
    `; + }) + .join(""); + } + + // -- charts -- + + destroyCharts() { + // Charts listen for window resizes; unbind them before their containers are replaced. + this.charts.forEach((chart) => { + try { + if (chart && typeof chart.destroy === "function") chart.destroy(); + } catch (e) { + /* already gone */ + } + }); + this.charts = []; + } + + drawCharts() { + (this.data.charts || []).forEach((c, i) => { + const el = document.getElementById("lm-chart-" + i); + if (!el) return; + const total = (c.datasets || []).reduce((n, ds) => n + ds.values.reduce((a, b) => a + Math.abs(b || 0), 0), 0); + if (!c.labels.length || !total) { + el.innerHTML = `

    ${esc(__("No data yet."))}

    `; + return; + } + const options = { + data: { labels: c.labels, datasets: c.datasets }, + type: c.type, + height: c.type === "donut" ? 230 : 250, + colors: PALETTE, + barOptions: { spaceRatio: 0.45 }, + lineOptions: { regionFill: 1, hideDots: c.labels.length > 25 ? 1 : 0 }, + axisOptions: { xIsSeries: c.type === "line" ? 1 : 0 }, + }; + if (c.format === "currency") { + options.tooltipOptions = { formatTooltipY: (v) => this.money(v) }; + } + try { + this.charts.push(new frappe.Chart(el, options)); + } catch (e) { + el.innerHTML = `

    ${esc(__("This chart couldn't be drawn."))}

    `; + } + }); + } + + // -- interaction -- + + reportFilters() { + const s = this.state; + const filters = {}; + if (s.edition) filters.event_edition = s.edition; + if (s.category) filters.race_category = s.category; + if (s.from) filters.from_date = s.from; + if (s.to) filters.to_date = s.to; + return filters; + } + + openReport(name) { + frappe.route_options = this.reportFilters(); + frappe.set_route("query-report", name); + } + + exportCsv(id) { + const t = (this.data.tables || []).find((x) => x.id === id); + if (!t) return; + const cell = (v) => { + if (v === null || v === undefined) return '""'; + if (typeof v === "number") return String(v); + let text = String(v); + if (/^[=+\-@]/.test(text)) text = "'" + text; // stop spreadsheet formula injection + return '"' + text.replace(/"/g, '""') + '"'; + }; + const lines = [t.columns.map((c) => cell(c.label)).join(",")].concat( + t.rows.map((r) => t.columns.map((c) => cell(r[c.field])).join(",")) + ); + const blob = new Blob(["\ufeff" + lines.join("\n")], { type: "text/csv;charset=utf-8" }); + const a = document.createElement("a"); + a.href = URL.createObjectURL(blob); + a.download = "lukenya-" + t.id + ".csv"; + document.body.appendChild(a); + a.click(); + a.remove(); + URL.revokeObjectURL(a.href); + } + + bind() { + this.$root.on("change", "[data-filter]", (e) => { + const key = e.target.dataset.filter; + this.state[key] = e.target.value; + if (key === "edition") { + this.state.category = ""; + this.renderFilters(); + } + this.load(); + }); + + this.$root.on("click", (e) => { + const t = e.target; + + const tab = t.closest("[data-tab]"); + if (tab) { + this.state.tab = tab.dataset.tab; + this.load(); + return; + } + + const action = t.closest("[data-action]"); + if (action) { + if (action.dataset.action === "workspace") frappe.set_route("Workspaces", "Lukenya Marathon"); + if (action.dataset.action === "reset") { + this.state = { tab: this.state.tab, edition: (this.options && this.options.default_edition) || "", category: "", from: "", to: "" }; + this.renderFilters(); + this.load(); + } + return; + } + + const attn = t.closest("[data-attn]"); + if (attn && this.data) { + const item = this.data.attention[Number(attn.dataset.attn)]; + if (item && item.report) this.openReport(item.report); + else if (item && item.doctype) { + frappe.route_options = item.filters || {}; + frappe.set_route("List", item.doctype); + } + return; + } + + const report = t.closest("[data-report]"); + if (report) return this.openReport(report.dataset.report); + + const exp = t.closest("[data-export]"); + if (exp) return this.exportCsv(exp.dataset.export); + + const doc = t.closest("[data-doc]"); + if (doc) { + e.preventDefault(); + frappe.set_route("Form", doc.dataset.doc, doc.dataset.name); + return; + } + + const nav = t.closest("[data-route]"); + if (nav) return frappe.set_route(nav.dataset.route); + + const list = t.closest("[data-doctype]"); + if (list && !list.classList.contains("is-soon")) frappe.set_route("List", list.dataset.doctype); + }); + } + } + + // ---- Page hooks ---------------------------------------------------------- + + frappe.pages[PAGE].on_page_load = function (wrapper) { + frappe.ui.make_app_page({ + parent: wrapper, + title: __("Reports & Analytics"), + single_column: true, + }); + wrapper.lm_reports = new LukenyaReports(wrapper); + }; + + frappe.pages[PAGE].on_page_show = function (wrapper) { + if (wrapper.lm_reports) wrapper.lm_reports.show(); + }; +})(); diff --git a/lukenya_marathon/lukenya_marathon/page/lukenya_reports/lukenya_reports.json b/lukenya_marathon/lukenya_marathon/page/lukenya_reports/lukenya_reports.json new file mode 100644 index 0000000..598389b --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/page/lukenya_reports/lukenya_reports.json @@ -0,0 +1,20 @@ +{ + "creation": "2026-09-20 00:00:00.000000", + "docstatus": 0, + "doctype": "Page", + "idx": 0, + "modified": "2026-09-20 00:00:00.000000", + "modified_by": "Administrator", + "module": "Lukenya Marathon", + "name": "lukenya-reports", + "owner": "Administrator", + "page_name": "lukenya-reports", + "roles": [ + { + "role": "System Manager" + } + ], + "standard": "Yes", + "system_page": 0, + "title": "Lukenya Reports" +} diff --git a/lukenya_marathon/lukenya_marathon/participant_utils.py b/lukenya_marathon/lukenya_marathon/participant_utils.py new file mode 100644 index 0000000..41046d2 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/participant_utils.py @@ -0,0 +1,94 @@ +"""Small helpers that keep participant records tidy. Used by the Participant controller and the +one-off patch that cleans existing records, so both apply exactly the same rules.""" + +import re + +from frappe.utils import getdate + +# Demonyms and common spellings mapped to one country name, so reports group people correctly. +# "Kenya" must stay "Kenya": the registration pricing treats "kenya" and "kenyan" as resident. +NATIONALITIES = { + "kenyan": "Kenya", "kenya": "Kenya", "ke": "Kenya", + "ugandan": "Uganda", "uganda": "Uganda", + "tanzanian": "Tanzania", "tanzania": "Tanzania", + "rwandan": "Rwanda", "rwanda": "Rwanda", + "burundian": "Burundi", "burundi": "Burundi", + "ethiopian": "Ethiopia", "ethiopia": "Ethiopia", + "somali": "Somalia", "somalia": "Somalia", + "sudanese": "Sudan", "sudan": "Sudan", + "south sudanese": "South Sudan", "south sudan": "South Sudan", + "nigerian": "Nigeria", "nigeria": "Nigeria", + "ghanaian": "Ghana", "ghana": "Ghana", + "south african": "South Africa", "south africa": "South Africa", + "british": "United Kingdom", "uk": "United Kingdom", "united kingdom": "United Kingdom", "english": "United Kingdom", + "american": "United States", "usa": "United States", "us": "United States", "united states": "United States", + "canadian": "Canada", "canada": "Canada", + "australian": "Australia", "australia": "Australia", + "indian": "India", "india": "India", + "chinese": "China", "china": "China", + "german": "Germany", "germany": "Germany", + "french": "France", "france": "France", + "italian": "Italy", "italy": "Italy", + "dutch": "Netherlands", "netherlands": "Netherlands", +} + +MIN_PHONE_DIGITS = 9 +MAX_PHONE_DIGITS = 15 + + +def clean_name(value): + """Trim, collapse spaces, and fix names typed entirely in capitals or lower case.""" + text = re.sub(r"\s+", " ", (value or "").strip()) + return text.title() if text and (text.isupper() or text.islower()) else text + + +def build_full_name(first_name, last_name): + return " ".join(part for part in (clean_name(first_name), clean_name(last_name)) if part) + + +def normalize_nationality(value): + text = re.sub(r"\s+", " ", (value or "").strip()) + if not text: + return "" + return NATIONALITIES.get(text.lower(), text.title() if text.isupper() or text.islower() else text) + + +def normalize_phone(value): + """Kenyan numbers become +254..., other numbers are only tidied. Odd input is left alone.""" + text = (value or "").strip() + if not text: + return "" + digits = re.sub(r"\D", "", text) + if not digits: + return text + if text.startswith("+"): + return "+" + digits + if digits.startswith("00"): + return "+" + digits[2:] + if digits.startswith("254") and len(digits) == 12: + return "+" + digits + if len(digits) == 10 and digits[0] == "0" and digits[1] in "71": + return "+254" + digits[1:] + if len(digits) == 9 and digits[0] in "71": + return "+254" + digits + return digits + + +def phone_is_valid(value): + digits = re.sub(r"\D", "", value or "") + return MIN_PHONE_DIGITS <= len(digits) <= MAX_PHONE_DIGITS + + +def phone_key(value): + """Last nine digits, so 0712 345 678 and +254712345678 count as the same number.""" + digits = re.sub(r"\D", "", value or "") + return digits[-9:] if len(digits) >= 9 else "" + + +def age_on(dob, reference): + """Whole years on the reference date, or None when the date of birth is missing or absurd.""" + if not dob: + return None + dob, reference = getdate(dob), getdate(reference) + age = reference.year - dob.year - ((reference.month, reference.day) < (dob.month, dob.day)) + return age if 0 <= age <= 120 else None diff --git a/lukenya_marathon/lukenya_marathon/participants.py b/lukenya_marathon/lukenya_marathon/participants.py new file mode 100644 index 0000000..941f8c3 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/participants.py @@ -0,0 +1,820 @@ +"""Server side of the Participants page: search, profile, registering, duplicates and merging. + +Rules used here +- An "entry" is a Registration that is not Cancelled, Transferred or Refunded (same as the reports). +- The selected edition is context: it decides which entry shows as the runner's latest entry and what + "not yet re-entered" means. It does not hide runners who have no entry in that edition. +- Sensitive details (full ID number, medical notes) are only returned when the caller asks to reveal + them, and every reveal is written to the participant's timeline. +""" + +import re + +import frappe +from frappe import _ +from frappe.utils import cint, flt, getdate, now_datetime, nowdate + +from lukenya_marathon.lukenya_marathon import analytics as an +from lukenya_marathon.lukenya_marathon.api import _get_price +from lukenya_marathon.lukenya_marathon.participant_utils import age_on, normalize_phone, phone_key + +INACTIVE = an.INACTIVE +UNSETTLED = an.UNSETTLED +CONFIRMED = an.CONFIRMED +BIB_LIVE = an.BIB_LIVE +AGE_BANDS = an.AGE_BANDS +NOT_GIVEN = "Not given" + +PRICE_TIERS = ["Standard", "Early Bird", "Non-resident", "Corporate", "Complimentary"] +CLOSED_EDITIONS = ("Completed", "Cancelled") +MAX_EXPORT_ROWS = 5000 +MAX_PAGE_LENGTH = 100 + +# Chips that only make sense against a chosen edition. +EDITION_CHIPS = ("entered", "not_reentered") +CHIPS = ( + "entered", "returning", "first_timers", "not_reentered", "unpaid", "no_bib", + "minor", "missing_info", "non_resident", "consent", +) + +MISSING_LABELS = { + "date_of_birth": "Date of birth", + "gender": "Gender", + "nationality": "Nationality", + "emergency_contact_name": "Emergency contact", + "emergency_contact_phone": "Emergency contact phone", +} + +# Fields copied from the removed record into the kept one when the kept one is empty. +MERGE_FIELDS = ( + "id_number", "date_of_birth", "gender", "nationality", "email", "phone", "whatsapp", "shirt_size", + "emergency_contact_name", "emergency_contact_phone", "guardian_name", "guardian_phone", +) + + +# ---- helpers ------------------------------------------------------------------------------- + + +def _guard(): + frappe.only_for("System Manager") + + +def _rows(sql, params=None): + return frappe.db.sql(sql, params or {}, as_dict=True) + + +def _one(sql, params=None): + rows = _rows(sql, params) + return rows[0] if rows else frappe._dict() + + +def _mask(value): + value = (value or "").strip() + if not value: + return "" + return "\u2022" * max(len(value) - 3, 3) + value[-3:] + + +def _like(text): + return "%" + re.sub(r"([\\%_])", r"\\\1", text) + "%" + + +def _edition_date(edition): + if not edition: + return getdate(nowdate()) + value = frappe.db.get_value("Event Edition", edition, "event_date") + return getdate(value) if value else getdate(nowdate()) + + +def _band_for(age): + if age is None: + return NOT_GIVEN + for low, high, label in AGE_BANDS: + if low <= age <= high: + return label + return NOT_GIVEN + + +def _band_range(label): + return next(((low, high) for low, high, name in AGE_BANDS if name == label), None) + + +# ---- search -------------------------------------------------------------------------------- + + +def _scope(f): + """WHERE clause and params for participant queries, from the page's filters.""" + f = frappe._dict(f) + where, params = ["1 = 1"], { + "inactive": INACTIVE, + "unsettled": UNSETTLED, + "confirmed": CONFIRMED, + "bib_live": BIB_LIVE, + "age_ref": _edition_date(f.edition), + } + entered_any = "select count(distinct rc.event_edition) from `tabRegistration` rc where rc.participant = p.name and rc.registration_status not in %(inactive)s" + + def exists(extra=None, entry_only=True): + conds = ["rr.participant = p.name"] + if entry_only: + conds.append("rr.registration_status not in %(inactive)s") + if f.edition: + conds.append("rr.event_edition = %(edition)s") + conds += extra or [] + return "exists (select 1 from `tabRegistration` rr where " + " and ".join(conds) + ")" + + if f.edition: + params["edition"] = f.edition + + # text search: every word must be in the name; or the whole text matches a code, contact or bib + query = (f.query or "").strip() + if query: + tokens = query.split()[:5] + name_clause = " and ".join(f"p.full_name like %(t{i})s" for i in range(len(tokens))) + for i, token in enumerate(tokens): + params[f"t{i}"] = _like(token) + params["q_like"] = _like(query) + params["q_exact"] = query + other = [ + "p.participant_code like %(q_like)s", "p.id_number like %(q_like)s", "p.email like %(q_like)s", + "p.phone like %(q_like)s", + "exists (select 1 from `tabBib Allocation` b join `tabRegistration` rb on rb.name = b.registration" + " where rb.participant = p.name and b.bib_number = %(q_exact)s)", + "exists (select 1 from `tabRegistration` rb where rb.participant = p.name and rb.bib_number = %(q_exact)s)", + ] + digits = re.sub(r"\D", "", query) + if len(digits) >= 4: + params["digits_like"] = "%" + digits[-9:] + "%" + other.append("regexp_replace(coalesce(p.phone, ''), '[^0-9]', '') like %(digits_like)s") + other.append("regexp_replace(coalesce(p.whatsapp, ''), '[^0-9]', '') like %(digits_like)s") + where.append("((" + name_clause + ") or " + " or ".join(other) + ")") + + if f.gender: + if f.gender == NOT_GIVEN: + where.append("coalesce(p.gender, '') = ''") + else: + where.append("p.gender = %(gender)s") + params["gender"] = f.gender + + if f.nationality: + if f.nationality == NOT_GIVEN: + where.append("coalesce(p.nationality, '') = ''") + else: + where.append("p.nationality = %(nationality)s") + params["nationality"] = f.nationality + + if f.age_group: + if f.age_group == NOT_GIVEN: + where.append("p.date_of_birth is null") + elif _band_range(f.age_group): + low, high = _band_range(f.age_group) + where.append("p.date_of_birth is not null and timestampdiff(year, p.date_of_birth, %(age_ref)s) between %(age_low)s and %(age_high)s") + params.update(age_low=low, age_high=high) + + # entry filters look at the chosen edition, or any edition when none is chosen + entry_conds = [] + if f.race_category: + entry_conds.append("rr.race_category = %(race_category)s") + params["race_category"] = f.race_category + if f.status: + entry_conds.append("rr.registration_status = %(status)s") + params["status"] = f.status + if f.payment: + entry_conds.append("rr.payment_status = %(payment)s") + params["payment"] = f.payment + if entry_conds: + where.append(exists(entry_conds, entry_only=not f.status)) + + chip = f.chip + if chip in EDITION_CHIPS and not f.edition: + frappe.throw(_("Choose an edition to use this segment.")) + + if chip == "entered": + where.append(exists()) + elif chip == "returning": + where.append(f"({entered_any}) > 1") + elif chip == "first_timers": + where.append(f"({entered_any}) = 1") + elif chip == "not_reentered": + where.append(f"({entered_any}) >= 1 and not " + exists()) + elif chip == "unpaid": + where.append(exists(["rr.payment_status in %(unsettled)s", "coalesce(rr.price_tier, '') != 'Complimentary'"])) + elif chip == "no_bib": + where.append(exists([ + "rr.registration_status in %(confirmed)s", + "not exists (select 1 from `tabBib Allocation` bb where bb.registration = rr.name and bb.status in %(bib_live)s)", + ])) + elif chip == "minor": + where.append("p.date_of_birth is not null and timestampdiff(year, p.date_of_birth, %(age_ref)s) < 18") + elif chip == "missing_info": + where.append(_missing_sql()) + elif chip == "non_resident": + where.append("coalesce(p.nationality, '') != '' and lower(p.nationality) not in ('kenya', 'kenyan')") + elif chip == "consent": + where.append("p.communication_consent = 1") + + return " and ".join(where), params + + +def _missing_sql(): + return ( + "(p.date_of_birth is null or coalesce(p.gender, '') = '' or coalesce(p.nationality, '') = ''" + " or coalesce(p.emergency_contact_name, '') = '' or coalesce(p.emergency_contact_phone, '') = '')" + ) + + +def _latest_entries(names, edition): + """Most recent entry for each participant (in the chosen edition when one is chosen).""" + if not names: + return {} + params = {"names": tuple(names), "inactive": INACTIVE, "bib_live": BIB_LIVE} + edition_sql = "" + if edition: + edition_sql = "and r.event_edition = %(edition)s" + params["edition"] = edition + rows = _rows( + f""" + select r.participant, r.name as registration, r.event_edition, e.edition_name, e.event_date, + r.race_category, c.category_name, r.registration_status, r.payment_status, r.registration_date, + coalesce( + (select b.bib_number from `tabBib Allocation` b + where b.registration = r.name and b.status in %(bib_live)s order by b.creation desc limit 1), + r.bib_number + ) as bib + from `tabRegistration` r + join `tabEvent Edition` e on e.name = r.event_edition + left join `tabRace Category` c on c.name = r.race_category + where r.participant in %(names)s and r.registration_status not in %(inactive)s {edition_sql} + order by e.event_date desc, r.registration_date desc + """, + params, + ) + latest = {} + for row in rows: + latest.setdefault(row.participant, row) + return latest + + +def _decorate(row, latest, ref): + age = age_on(row.date_of_birth, ref) + missing = [ + label for key, label in MISSING_LABELS.items() + if (row.date_of_birth is None if key == "date_of_birth" else not (row.get(key) or "").strip()) + ] + flags = [] + if age is not None and age < 18: + flags.append("minor") + if missing: + flags.append("missing_info") + if not cint(row.communication_consent): + flags.append("no_consent") + if cint(row.editions_entered) > 1: + flags.append("returning") + entry = latest.get(row.name) + return { + "name": row.name, + "code": row.participant_code, + "full_name": row.full_name or row.name, + "gender": row.gender or "", + "age": age, + "age_group": _band_for(age), + "nationality": row.nationality or "", + "phone": row.phone or "", + "email": row.email or "", + "consent": cint(row.communication_consent), + "editions_entered": cint(row.editions_entered), + "missing": missing, + "flags": flags, + "entry": entry and { + "registration": entry.registration, + "edition": entry.edition_name, + "category": entry.category_name, + "status": entry.registration_status, + "payment": entry.payment_status, + "bib": entry.bib or "", + }, + } + + +_ROW_SQL = """ + select p.name, p.participant_code, p.full_name, p.gender, p.date_of_birth, p.nationality, p.phone, + p.email, p.communication_consent, p.emergency_contact_name, p.emergency_contact_phone, + (select count(distinct rc.event_edition) from `tabRegistration` rc + where rc.participant = p.name and rc.registration_status not in %(inactive)s) as editions_entered + from `tabParticipant` p +""" + + +def _search(f, page, page_length): + where, params = _scope(f) + order = "p.full_name asc" if f.sort == "name" else "p.modified desc" + total = cint(_one(f"select count(*) as n from `tabParticipant` p where {where}", params).n) + offset = (max(page, 1) - 1) * page_length + rows = _rows(f"{_ROW_SQL} where {where} order by {order} limit {int(page_length)} offset {int(offset)}", params) + latest = _latest_entries([r.name for r in rows], f.edition) + ref = params["age_ref"] + return total, [_decorate(r, latest, ref) for r in rows] + + +def _filters(**kw): + return frappe._dict({k: (v or None) for k, v in kw.items()}) + + +@frappe.whitelist() +def get_options(): + _guard() + editions = _rows("select name, edition_name, event_date, status from `tabEvent Edition` order by event_date desc") + categories = _rows("select name, category_name, event_edition from `tabRace Category` where active = 1 order by distance_km desc") + nationalities = [ + r.label for r in _rows( + "select nationality as label, count(*) as n from `tabParticipant` " + "where coalesce(nationality, '') != '' group by nationality order by n desc limit 40" + ) + ] + default = next((e.name for e in editions if e.status == "Open"), editions[0].name if editions else None) + return { + "editions": editions, + "categories": categories, + "nationalities": nationalities, + "age_groups": [b[2] for b in AGE_BANDS] + [NOT_GIVEN], + "default_edition": default, + "price_tiers": PRICE_TIERS, + } + + +@frappe.whitelist() +def search_participants( + query=None, edition=None, chip=None, race_category=None, status=None, payment=None, + gender=None, age_group=None, nationality=None, sort="recent", page=1, page_length=25, +): + _guard() + if chip and chip not in CHIPS: + frappe.throw(_("Unknown segment: {0}").format(chip)) + f = _filters( + query=query, edition=edition, chip=chip, race_category=race_category, status=status, + payment=payment, gender=gender, age_group=age_group, nationality=nationality, sort=sort, + ) + page_length = min(max(cint(page_length) or 25, 1), MAX_PAGE_LENGTH) + total, rows = _search(f, cint(page) or 1, page_length) + return {"total": total, "rows": rows, "page": cint(page) or 1, "page_length": page_length} + + +@frappe.whitelist() +def get_summary(edition=None): + _guard() + edition = edition or None + ref = _edition_date(edition) + params = {"inactive": INACTIVE, "edition": edition, "age_ref": ref} + total = cint(_one("select count(*) as n from `tabParticipant`").n) + in_edition = ran_before = None + if edition: + in_edition = cint(_one( + "select count(distinct participant) as n from `tabRegistration` where event_edition = %(edition)s and registration_status not in %(inactive)s", + params, + ).n) + ran_before = cint(_one( + """select count(*) as n from ( + select participant from `tabRegistration` where registration_status not in %(inactive)s + group by participant + having sum(event_edition = %(edition)s) = 0 + ) x""", + params, + ).n) + missing = cint(_one(f"select count(*) as n from `tabParticipant` p where {_missing_sql()}").n) + minors = cint(_one("select count(*) as n from `tabParticipant` p where p.date_of_birth is not null and timestampdiff(year, p.date_of_birth, %(age_ref)s) < 18", params).n) + return { + "total": total, + "in_edition": in_edition, + "returning": an._returning_runners(), + "ran_before": ran_before, + "missing": missing, + "minors": minors, + "duplicates": len(_duplicate_groups()), + } + + +# ---- profile ------------------------------------------------------------------------------- + + +@frappe.whitelist() +def get_profile(name, reveal=0): + _guard() + p = frappe.db.get_value( + "Participant", name, + ["name", "participant_code", "full_name", "first_name", "last_name", "id_number", "date_of_birth", "gender", + "nationality", "email", "phone", "whatsapp", "shirt_size", "emergency_contact_name", + "emergency_contact_phone", "guardian_name", "guardian_phone", "medical_notes", "communication_consent", "creation"], + as_dict=True, + ) + if not p: + frappe.throw(_("Participant {0} was not found.").format(name)) + + revealed = bool(cint(reveal)) + if revealed: + frappe.get_doc("Participant", name).add_comment( + "Info", _("ID number and medical notes were viewed by {0}.").format(frappe.session.user) + ) + + entries = _entries(name) + next_edition = frappe.db.get_value("Event Edition", {"status": "Open"}, "name", order_by="event_date desc") + age = age_on(p.date_of_birth, nowdate()) + profile = { + "name": p.name, + "code": p.participant_code, + "full_name": p.full_name or p.name, + "gender": p.gender or "", + "date_of_birth": p.date_of_birth, + "age": age, + "minor": age is not None and age < 18, + "nationality": p.nationality or "", + "email": p.email or "", + "phone": p.phone or "", + "whatsapp": p.whatsapp or "", + "shirt_size": p.shirt_size or "", + "emergency_contact_name": p.emergency_contact_name or "", + "emergency_contact_phone": p.emergency_contact_phone or "", + "guardian_name": p.guardian_name or "", + "guardian_phone": p.guardian_phone or "", + "consent": cint(p.communication_consent), + "has_medical_notes": bool((p.medical_notes or "").strip()), + "revealed": revealed, + "id_number": (p.id_number or "") if revealed else _mask(p.id_number), + "medical_notes": (p.medical_notes or "") if revealed else "", + "since": p.creation, + } + return {"profile": profile, "entries": entries, "open_edition": next_edition} + + +def _entries(participant): + regs = _rows( + """ + select r.name as registration, r.event_edition, e.edition_name, e.event_date, r.race_category, + c.category_name, r.registration_status, r.payment_status, r.price_tier, r.amount_due, r.registration_date + from `tabRegistration` r + join `tabEvent Edition` e on e.name = r.event_edition + left join `tabRace Category` c on c.name = r.race_category + where r.participant = %(p)s + order by e.event_date desc, r.registration_date desc + """, + {"p": participant}, + ) + if not regs: + return [] + names = tuple(r.registration for r in regs) + params = {"names": names, "paid": an.PAID, "bib_live": BIB_LIVE} + paid = {r.registration: flt(r.paid) for r in _rows("select registration, sum(amount) as paid from `tabPayment Transaction` where registration in %(names)s and status in %(paid)s group by registration", params)} + bibs = {} + for r in _rows("select registration, bib_number from `tabBib Allocation` where registration in %(names)s and status in %(bib_live)s order by creation", params): + bibs[r.registration] = r.bib_number + packs = {r.registration: r.issue_status for r in _rows("select registration, issue_status from `tabRace Pack Issue` where registration in %(names)s order by creation", params)} + checkins = {} + if frappe.db.table_exists("Check-in"): + checkins = {r.registration: r.status for r in _rows("select registration, status from `tabCheck-in` where registration in %(names)s order by creation", params)} + results = { + r.registration: r + for r in _rows( + "select registration, finish_status, overall_rank, coalesce(nullif(chip_time, 0), nullif(gun_time, 0)) as seconds from `tabTiming Result` where registration in %(names)s", + params, + ) + } + out = [] + for r in regs: + result = results.get(r.registration) + out.append({ + "registration": r.registration, + "edition": r.edition_name, + "category": r.category_name or r.race_category, + "status": r.registration_status, + "payment": r.payment_status, + "tier": r.price_tier or "", + "amount_due": flt(r.amount_due), + "paid": paid.get(r.registration, 0.0), + "balance": max(flt(r.amount_due) - paid.get(r.registration, 0.0), 0.0), + "bib": bibs.get(r.registration, ""), + "pack": packs.get(r.registration, ""), + "check_in": checkins.get(r.registration, ""), + "result": result and { + "status": result.finish_status, + "rank": result.overall_rank, + "time": an._fmt_duration(result.seconds) if result.seconds else "", + }, + }) + return out + + +# ---- registering --------------------------------------------------------------------------- + + +def _pricing(participant, race_category, price_tier): + category = frappe.get_doc("Race Category", race_category) + nationality = frappe.db.get_value("Participant", participant, "nationality") or "Kenya" + tier = price_tier if price_tier in PRICE_TIERS else "Standard" + amount = 0.0 if tier == "Complimentary" else flt(_get_price(category, tier, nationality)) + capacity = cint(category.capacity) + taken = frappe.db.count("Registration", {"race_category": category.name, "registration_status": ["in", ["Pending", "Confirmed"]]}) if capacity else 0 + duplicate = frappe.db.exists("Registration", { + "participant": participant, "event_edition": category.event_edition, + "registration_status": ["not in", ["Cancelled", "Refunded"]], + }) + return category, tier, amount, (capacity - taken) if capacity else None, duplicate + + +@frappe.whitelist() +def preview_price(participant, race_category, price_tier="Standard"): + _guard() + category, tier, amount, spots_left, duplicate = _pricing(participant, race_category, price_tier) + return {"amount": amount, "currency": an.CURRENCY, "tier": tier, "spots_left": spots_left, "already_entered": bool(duplicate)} + + +@frappe.whitelist() +def register_for_edition(participant, race_category, price_tier="Standard", indemnity_accepted=0): + """Enter an existing runner in a race, the way the public form would.""" + _guard() + if not cint(indemnity_accepted): + frappe.throw(_("Confirm that the runner has accepted the indemnity.")) + + category, tier, amount, spots_left, duplicate = _pricing(participant, race_category, price_tier) + if not category.active: + frappe.throw(_("This race category is not active.")) + edition_status = frappe.db.get_value("Event Edition", category.event_edition, "status") + if edition_status in CLOSED_EDITIONS: + frappe.throw(_("This edition is {0}, so it can't take new entries.").format(edition_status)) + if duplicate: + frappe.throw(_("This runner already has an active entry for this edition.")) + if spots_left is not None and spots_left <= 0: + frappe.throw(_("This race category is full.")) + + registration = frappe.get_doc({ + "doctype": "Registration", + "participant": participant, + "event_edition": category.event_edition, + "race_category": category.name, + "registration_status": "Pending", + "registration_date": now_datetime(), + "price_tier": tier, + "amount_due": amount, + "payment_status": "Paid" if tier == "Complimentary" else "Unpaid", + "indemnity_accepted": 1, + "consent_timestamp": now_datetime(), + }) + registration.insert() + return {"registration": registration.name, "amount_due": amount, "currency": an.CURRENCY} + + +@frappe.whitelist() +def get_edition_categories(edition): + """Categories open for entry in an edition, with spots left.""" + _guard() + rows = _rows( + """ + select c.name, c.category_name, coalesce(c.capacity, 0) as capacity, + (select count(*) from `tabRegistration` r where r.race_category = c.name + and r.registration_status in ('Pending', 'Confirmed')) as taken + from `tabRace Category` c where c.event_edition = %(e)s and c.active = 1 order by c.distance_km desc + """, + {"e": edition}, + ) + for r in rows: + r["spots_left"] = (cint(r.capacity) - cint(r.taken)) if cint(r.capacity) else None + return rows + + +# ---- duplicates and merging ---------------------------------------------------------------- + + +def _duplicate_groups(): + rows = _rows("select name, participant_code, full_name, first_name, last_name, phone, email, date_of_birth from `tabParticipant`") + parent = {} + + def find(x): + while parent.setdefault(x, x) != x: + parent[x] = parent[parent[x]] + x = parent[x] + return x + + buckets = {} + reasons = {} + for r in rows: + key_name = " ".join(f"{r.first_name or ''} {r.last_name or ''}".lower().split()) + keys = [] + phone = phone_key(r.phone) + email = (r.email or "").strip().lower() + if key_name and phone: + keys.append(("Same name and phone", key_name, phone)) + if key_name and email: + keys.append(("Same name and email", key_name, email)) + if key_name and r.date_of_birth: + keys.append(("Same name and date of birth", key_name, str(r.date_of_birth))) + if phone and r.date_of_birth: + keys.append(("Same phone and date of birth", phone, str(r.date_of_birth))) + for reason, a, b in keys: + buckets.setdefault((reason, a, b), []).append(r.name) + + for (reason, _a, _b), members in buckets.items(): + if len(members) < 2: + continue + for other in members[1:]: + parent[find(other)] = find(members[0]) + for m in members: + reasons.setdefault(m, set()).add(reason) + + groups = {} + for r in rows: + if r.name in reasons: + groups.setdefault(find(r.name), []).append(r) + if not groups: + return [] + + counts = { + r.participant: r + for r in _rows( + "select participant, count(*) as entries, count(distinct event_edition) as editions from `tabRegistration` " + "where registration_status not in %(inactive)s group by participant", + {"inactive": INACTIVE}, + ) + } + out = [] + for members in groups.values(): + names = {m.name for m in members} + out.append({ + "reasons": sorted({reason for m in members for reason in reasons[m.name]}), + "members": [ + { + "name": m.name, + "code": m.participant_code, + "full_name": m.full_name or m.name, + "phone": m.phone or "", + "email": m.email or "", + "date_of_birth": m.date_of_birth, + "entries": cint(counts[m.name].entries) if m.name in counts else 0, + "editions": cint(counts[m.name].editions) if m.name in counts else 0, + } + for m in sorted(members, key=lambda x: x.name) + ], + "names": sorted(names), + }) + out.sort(key=lambda g: (-len(g["members"]), g["members"][0]["full_name"])) + return out + + +@frappe.whitelist() +def find_duplicates(): + _guard() + return {"groups": _duplicate_groups()} + + +def _participant_links(): + """Every (DocType, field) that links to Participant, including custom fields.""" + links = set() + for table in ("tabDocField", "tabCustom Field"): + parent_col = "parent" if table == "tabDocField" else "dt" + for r in _rows(f"select `{parent_col}` as doctype, fieldname from `{table}` where fieldtype = 'Link' and options = 'Participant'"): + links.add((r.doctype, r.fieldname)) + return sorted(links) + + +def _merge_plan(keep, remove): + if keep == remove: + frappe.throw(_("Choose two different participants.")) + fields = ", ".join(f"`{f}`" for f in ("name", "participant_code", "full_name", "medical_notes", *MERGE_FIELDS)) + docs = {r.name: r for r in _rows(f"select {fields} from `tabParticipant` where name in %(n)s", {"n": (keep, remove)})} + if keep not in docs or remove not in docs: + frappe.throw(_("One of these participants no longer exists.")) + k, r = docs[keep], docs[remove] + + fill, kept = {}, [] + for f in MERGE_FIELDS: + kv, rv = k.get(f), r.get(f) + empty_k = kv in (None, "") + if empty_k and rv not in (None, ""): + fill[f] = rv + elif not empty_k and rv not in (None, "") and str(kv).strip().lower() != str(rv).strip().lower(): + kept.append({"field": f, "kept": kv, "dropped": rv}) + notes_k, notes_r = (k.medical_notes or "").strip(), (r.medical_notes or "").strip() + if notes_r and not notes_k: + fill["medical_notes"] = notes_r + elif notes_r and notes_r != notes_k: + fill["medical_notes"] = f"{notes_k}\n\n(From {r.participant_code}) {notes_r}" + + moving = {} + for doctype, fieldname in _participant_links(): + n = cint(_one(f"select count(*) as n from `tab{doctype}` where `{fieldname}` = %(r)s", {"r": remove}).n) + if n: + moving[f"{doctype}.{fieldname}"] = n + + keep_editions = { + x.event_edition for x in _rows( + "select event_edition from `tabRegistration` where participant = %(k)s and registration_status not in ('Cancelled', 'Refunded')", {"k": keep} + ) + } + conflicts = [ + {"edition": x.edition_name, "registration": x.name} + for x in _rows( + """select r.name, e.edition_name, r.event_edition from `tabRegistration` r + join `tabEvent Edition` e on e.name = r.event_edition + where r.participant = %(r)s and r.registration_status not in ('Cancelled', 'Refunded')""", + {"r": remove}, + ) + if x.event_edition in keep_editions + ] + return { + "keep": {"name": k.name, "code": k.participant_code, "full_name": k.full_name}, + "remove": {"name": r.name, "code": r.participant_code, "full_name": r.full_name}, + "fill": {f: v for f, v in fill.items() if f != "medical_notes"}, + "medical_notes_merged": "medical_notes" in fill, + "kept_values": [{"field": x["field"]} for x in kept], # values are not echoed; they may be sensitive + "moves": moving, + "conflicts": conflicts, + "_fill_full": fill, + } + + +@frappe.whitelist() +def merge_participants(keep, remove, dry_run=1): + """Fold one participant into another. Always preview first (dry_run=1); the real merge refuses + when both have an active entry in the same edition.""" + _guard() + plan = _merge_plan(keep, remove) + full_fill = plan.pop("_fill_full") + if cint(dry_run): + plan["dry_run"] = True + return plan + if plan["conflicts"]: + frappe.throw(_("Both runners have an active entry in the same edition. Cancel one entry first, then merge.")) + + for key in plan["moves"]: + doctype, fieldname = key.split(".", 1) + frappe.db.sql(f"update `tab{doctype}` set `{fieldname}` = %(k)s where `{fieldname}` = %(r)s", {"k": keep, "r": remove}) + + # delete first so a unique ID number can move across + frappe.delete_doc("Participant", remove, force=True) + if full_fill: + frappe.db.set_value("Participant", keep, full_fill) + + moved = sum(plan["moves"].values()) + frappe.get_doc("Participant", keep).add_comment( + "Info", + _("Merged in {0} ({1}) by {2}. Moved {3} linked record(s); filled: {4}.").format( + plan["remove"]["full_name"], plan["remove"]["code"], frappe.session.user, moved, + ", ".join(sorted(full_fill)) or _("nothing"), + ), + ) + plan["dry_run"] = False + plan["merged"] = True + return plan + + +# ---- export -------------------------------------------------------------------------------- + + +@frappe.whitelist() +def export_participants( + query=None, edition=None, chip=None, race_category=None, status=None, payment=None, + gender=None, age_group=None, nationality=None, +): + """Rows for a CSV. Contact details are only included for people who agreed to be contacted; + ID numbers, medical notes and emergency contacts are never included.""" + _guard() + if chip and chip not in CHIPS: + frappe.throw(_("Unknown segment: {0}").format(chip)) + f = _filters( + query=query, edition=edition, chip=chip, race_category=race_category, status=status, + payment=payment, gender=gender, age_group=age_group, nationality=nationality, sort="name", + ) + total, rows = _search(f, 1, MAX_EXPORT_ROWS) + out = [] + for r in rows: + entry = r["entry"] or {} + out.append({ + "code": r["code"], + "name": r["full_name"], + "gender": r["gender"], + "age_group": r["age_group"], + "nationality": r["nationality"], + "phone": r["phone"] if r["consent"] else "", + "email": r["email"] if r["consent"] else "", + "contact_consent": _("Yes") if r["consent"] else _("No"), + "edition": entry.get("edition", ""), + "category": entry.get("category", ""), + "entry_status": entry.get("status", ""), + "payment_status": entry.get("payment", ""), + "bib": entry.get("bib", ""), + }) + _log_export(f, len(out)) + return {"rows": out, "total": total, "truncated": total > len(out)} + + +def _log_export(filters, count): + """Leave a trace of who exported personal data. A failure here must not block the export.""" + try: + frappe.get_doc({ + "doctype": "Access Log", + "user": frappe.session.user, + "export_from": "Participant", + "file_type": "CSV", + "method": "Export", + "filters": frappe.as_json({k: v for k, v in filters.items() if v}), + "columns": str(count) + " rows", + }).insert(ignore_permissions=True) + except Exception: + frappe.log_error(title="Participant export was not logged") diff --git a/lukenya_marathon/lukenya_marathon/payments_management.py b/lukenya_marathon/lukenya_marathon/payments_management.py new file mode 100644 index 0000000..dea85c0 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/payments_management.py @@ -0,0 +1,448 @@ +import frappe +from frappe import _ +from frappe.utils import flt + + +INACTIVE_REGISTRATION_STATUSES = ( + "Cancelled", + "Transferred", + "Refunded", +) + +CONFIRMED_PAYMENT_STATUSES = ( + "Paid", + "Reconciled", +) + +REFUND_STATUS = "Refunded" + + +def _edition_filter(alias, event_edition): + if event_edition: + return f" and {alias}.event_edition = %(event_edition)s" + return "" + + +def _date_filter(alias, from_date=None, to_date=None): + filters = "" + + if from_date: + filters += f" and date({alias}.payment_date) >= %(from_date)s" + + if to_date: + filters += f" and date({alias}.payment_date) <= %(to_date)s" + + return filters + + +def _payment_params(event_edition=None, from_date=None, to_date=None): + return { + "event_edition": event_edition, + "from_date": from_date, + "to_date": to_date, + "inactive": INACTIVE_REGISTRATION_STATUSES, + "confirmed": CONFIRMED_PAYMENT_STATUSES, + } + + +def _single_value(sql, params): + rows = frappe.db.sql(sql, params, as_dict=True) + if not rows: + return 0 + + return rows[0].value or 0 + + +@frappe.whitelist() +def get_payment_editions(): + return frappe.get_all( + "Event Edition", + fields=[ + "name", + "edition_name", + "edition_code", + "event_date", + "status", + ], + order_by="event_date desc, modified desc", + limit_page_length=100, + ) + + +@frappe.whitelist() +def get_payment_metrics( + event_edition=None, + from_date=None, + to_date=None, + gateway=None, + status=None, +): + params = _payment_params(event_edition, from_date, to_date) + + registration_scope = """ + r.registration_status not in %(inactive)s + """ + + if event_edition: + registration_scope += " and r.event_edition = %(event_edition)s" + + billed = _single_value( + f""" + select coalesce(sum(r.amount_due), 0) as value + from `tabRegistration` r + where {registration_scope} + """, + params, + ) + + transaction_scope = """ + r.registration_status not in %(inactive)s + """ + + if event_edition: + transaction_scope += " and r.event_edition = %(event_edition)s" + + transaction_scope += _date_filter("p", from_date, to_date) + + if gateway: + transaction_scope += " and p.gateway = %(gateway)s" + params["gateway"] = gateway + + if status: + transaction_scope += " and p.status = %(status)s" + params["status"] = status + + received = _single_value( + f""" + select coalesce(sum(p.amount), 0) as value + from `tabPayment Transaction` p + join `tabRegistration` r on r.name = p.registration + where {transaction_scope} + and p.status in %(confirmed)s + """, + params, + ) + + refunded = _single_value( + f""" + select coalesce(sum(p.amount), 0) as value + from `tabPayment Transaction` p + join `tabRegistration` r on r.name = p.registration + where {transaction_scope} + and p.status = 'Refunded' + """, + params, + ) + + paid_registrations = _single_value( + f""" + select count(*) as value + from `tabRegistration` r + where {registration_scope} + and r.payment_status = 'Paid' + """, + params, + ) + + unpaid_registrations = _single_value( + f""" + select count(*) as value + from `tabRegistration` r + where {registration_scope} + and r.payment_status in ( + 'Unpaid', + 'Pending', + 'Partially Paid', + 'Failed' + ) + """, + params, + ) + + pending_transactions = _single_value( + f""" + select count(*) as value + from `tabPayment Transaction` p + join `tabRegistration` r on r.name = p.registration + where {transaction_scope} + and p.status = 'Pending' + """, + params, + ) + + failed_transactions = _single_value( + f""" + select count(*) as value + from `tabPayment Transaction` p + join `tabRegistration` r on r.name = p.registration + where {transaction_scope} + and p.status = 'Failed' + """, + params, + ) + + refunded_transactions = _single_value( + f""" + select count(*) as value + from `tabPayment Transaction` p + join `tabRegistration` r on r.name = p.registration + where {transaction_scope} + and p.status = 'Refunded' + """, + params, + ) + + reconciliation_exceptions = _single_value( + f""" + select count(*) as value + from `tabRegistration` r + left join ( + select registration, sum(amount) as paid + from `tabPayment Transaction` + where status in %(confirmed)s + group by registration + ) p on p.registration = r.name + where {registration_scope} + and abs(coalesce(r.amount_due, 0) - coalesce(p.paid, 0)) > 0.01 + """, + params, + ) + + total_received = flt(received) + total_refunded = flt(refunded) + + return { + "total_billed": flt(billed), + "total_received": total_received, + "refunded_amount": total_refunded, + "net_received": total_received - total_refunded, + "outstanding": max(flt(billed) - total_received, 0), + "paid_registrations": int(paid_registrations), + "unpaid_registrations": int(unpaid_registrations), + "pending_transactions": int(pending_transactions), + "failed_transactions": int(failed_transactions), + "refunded_transactions": int(refunded_transactions), + "reconciliation_exceptions": int(reconciliation_exceptions), + } + + +@frappe.whitelist() +def get_payment_breakdown( + event_edition=None, + from_date=None, + to_date=None, +): + params = _payment_params(event_edition, from_date, to_date) + + edition_sql = "" + if event_edition: + edition_sql = " and r.event_edition = %(event_edition)s" + + date_sql = _date_filter("p", from_date, to_date) + + statuses = frappe.db.sql( + f""" + select + p.status, + count(*) as transaction_count, + coalesce(sum(p.amount), 0) as amount + from `tabPayment Transaction` p + join `tabRegistration` r on r.name = p.registration + where r.registration_status not in %(inactive)s + {edition_sql} + {date_sql} + group by p.status + order by p.status + """, + params, + as_dict=True, + ) + + gateways = frappe.db.sql( + f""" + select + p.gateway, + count(*) as transaction_count, + coalesce(sum(p.amount), 0) as amount, + sum(case when p.status in %(confirmed)s then 1 else 0 end) as paid_count, + sum(case when p.status = 'Pending' then 1 else 0 end) as pending_count, + sum(case when p.status = 'Failed' then 1 else 0 end) as failed_count + from `tabPayment Transaction` p + join `tabRegistration` r on r.name = p.registration + where r.registration_status not in %(inactive)s + {edition_sql} + {date_sql} + group by p.gateway + order by amount desc + """, + params, + as_dict=True, + ) + + return { + "statuses": statuses, + "gateways": gateways, + } + + +@frappe.whitelist() +def get_payment_transactions( + event_edition=None, + from_date=None, + to_date=None, + gateway=None, + status=None, + search=None, + page=1, + page_length=25, +): + page = max(int(page or 1), 1) + page_length = min(max(int(page_length or 25), 1), 100) + offset = (page - 1) * page_length + + params = _payment_params(event_edition, from_date, to_date) + + conditions = [ + "r.registration_status not in %(inactive)s", + ] + + if event_edition: + conditions.append("r.event_edition = %(event_edition)s") + + if from_date: + conditions.append("date(p.payment_date) >= %(from_date)s") + + if to_date: + conditions.append("date(p.payment_date) <= %(to_date)s") + + if gateway: + conditions.append("p.gateway = %(gateway)s") + params["gateway"] = gateway + + if status: + conditions.append("p.status = %(status)s") + params["status"] = status + + if search: + conditions.append( + """ + ( + p.name like %(search)s + or p.gateway_transaction_id like %(search)s + or p.registration like %(search)s + or part.full_name like %(search)s + ) + """ + ) + params["search"] = f"%{search}%" + + where_sql = " and ".join(conditions) + + rows = frappe.db.sql( + f""" + select + p.name, + p.registration, + p.gateway, + p.gateway_transaction_id, + p.amount, + p.currency, + p.status, + p.payment_date, + p.failure_reason, + r.event_edition, + r.race_category, + r.amount_due, + r.payment_status, + part.full_name as participant_name, + e.edition_name, + c.category_name + from `tabPayment Transaction` p + join `tabRegistration` r on r.name = p.registration + left join `tabParticipant` part on part.name = r.participant + left join `tabEvent Edition` e on e.name = r.event_edition + left join `tabRace Category` c on c.name = r.race_category + where {where_sql} + order by p.payment_date desc, p.modified desc + limit %(limit)s offset %(offset)s + """, + { + **params, + "limit": page_length, + "offset": offset, + }, + as_dict=True, + ) + + total = _single_value( + f""" + select count(*) as value + from `tabPayment Transaction` p + join `tabRegistration` r on r.name = p.registration + left join `tabParticipant` part on part.name = r.participant + where {where_sql} + """, + params, + ) + + return { + "rows": rows, + "total": int(total), + "page": page, + "page_length": page_length, + } + + +@frappe.whitelist() +def get_payment_exceptions( + event_edition=None, + page=1, + page_length=25, +): + page = max(int(page or 1), 1) + page_length = min(max(int(page_length or 25), 1), 100) + offset = (page - 1) * page_length + + params = { + "event_edition": event_edition, + "inactive": INACTIVE_REGISTRATION_STATUSES, + "confirmed": CONFIRMED_PAYMENT_STATUSES, + "limit": page_length, + "offset": offset, + } + + edition_sql = "" + if event_edition: + edition_sql = " and r.event_edition = %(event_edition)s" + + rows = frappe.db.sql( + f""" + select + r.name as registration, + r.event_edition, + r.amount_due, + coalesce(pay.paid, 0) as paid, + (coalesce(r.amount_due, 0) - coalesce(pay.paid, 0)) as difference, + r.payment_status, + part.full_name as participant_name, + e.edition_name + from `tabRegistration` r + left join ( + select registration, sum(amount) as paid + from `tabPayment Transaction` + where status in %(confirmed)s + group by registration + ) pay on pay.registration = r.name + left join `tabParticipant` part on part.name = r.participant + left join `tabEvent Edition` e on e.name = r.event_edition + where r.registration_status not in %(inactive)s + {edition_sql} + and abs(coalesce(r.amount_due, 0) - coalesce(pay.paid, 0)) > 0.01 + order by abs(coalesce(r.amount_due, 0) - coalesce(pay.paid, 0)) desc + limit %(limit)s offset %(offset)s + """, + params, + as_dict=True, + ) + + return rows diff --git a/lukenya_marathon/lukenya_marathon/public/css/lukenya_navigation.css b/lukenya_marathon/lukenya_marathon/public/css/lukenya_navigation.css new file mode 100644 index 0000000..29203e8 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/public/css/lukenya_navigation.css @@ -0,0 +1,61 @@ +.lm-shared-nav { + display: flex !important; + flex-direction: column !important; + gap: 4px !important; +} + +.lm-shared-nav__item { + display: flex !important; + align-items: center !important; + width: 100% !important; + min-height: 42px !important; + gap: 11px !important; + padding: 10px 12px !important; + border: 0 !important; + border-radius: 8px !important; + background: transparent !important; + color: inherit !important; + font: inherit !important; + font-size: 14px !important; + font-weight: 500 !important; + line-height: 1.2 !important; + text-align: left !important; + cursor: pointer !important; +} + +.lm-shared-nav__item:hover { + background: rgba(255, 255, 255, .08) !important; + color: #fff !important; +} + +.lm-shared-nav__item.is-active { + background: #2f6bff !important; + color: #fff !important; + box-shadow: 0 6px 16px rgba(47, 107, 255, .30) !important; +} + +.lm-shared-nav__icon { + display: inline-flex !important; + align-items: center !important; + justify-content: center !important; + width: 18px !important; + height: 18px !important; + flex: 0 0 18px !important; +} + +.lm-shared-nav__icon svg { + display: block !important; + width: 18px !important; + height: 18px !important; + fill: none !important; + stroke: currentColor !important; + stroke-width: 1.8 !important; + stroke-linecap: round !important; + stroke-linejoin: round !important; +} + +.lm-shared-nav__label { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} diff --git a/lukenya_marathon/lukenya_marathon/public/js/lukenya_navigation.js b/lukenya_marathon/lukenya_marathon/public/js/lukenya_navigation.js new file mode 100644 index 0000000..7418310 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/public/js/lukenya_navigation.js @@ -0,0 +1,191 @@ +frappe.provide("lukenya.navigation"); + +(() => { + const ITEMS = [ + { + key: "dashboard", + label: __("Dashboard"), + icon: "grid", + route: "lukenya-dashboard" + }, + { + key: "events", + label: __("Events"), + icon: "calendar", + route: "lukenya-events" + }, + { + key: "participants", + label: __("Participants"), + icon: "users", + route: "lukenya-participants" + }, + { + key: "race-management", + label: __("Race Management"), + icon: "flag", + route: "lukenya-race-management" + }, + { + key: "payments", + label: __("Payments"), + icon: "card", + route: "lukenya-payments" + }, + { + key: "reports", + label: __("Reports"), + icon: "chart", + route: "lukenya-reports" + } + ]; + + const ICONS = { + grid: ` + + + + + + + `, + + calendar: ` + + + + + + + `, + + users: ` + + + + + + + `, + + flag: ` + + + + + + `, + + card: ` + + + + + + `, + + chart: ` + + + + + + + ` + }; + + function getActivePage() { + const url = window.location.href; + + if (url.includes("lukenya-events")) { + return "events"; + } + + if (url.includes("lukenya-participants")) { + return "participants"; + } + + if (url.includes("lukenya-race-management")) { + return "race-management"; + } + + if (url.includes("lukenya-payments")) { + return "payments"; + } + + if (url.includes("lukenya-reports")) { + return "reports"; + } + + return "dashboard"; + } + + function getNavigationContainer() { + return document.querySelector( + "#page-lukenya-events .lm-events-nav, " + + "#page-lukenya-race-management .lm-rm-nav, " + + "#page-lukenya-payments .lm-payments-nav, " + + "#page-lukenya-participants .lm-nav, " + + "#page-lukenya-dashboard .lm-nav, " + + "#page-lukenya-reports .lm-nav" + ); + } + + function mount() { + const container = getNavigationContainer(); + + if (!container) { + return; + } + + const active = getActivePage(); + + container.classList.add("lm-shared-nav"); + container.innerHTML = ""; + + ITEMS.forEach((item) => { + const button = document.createElement("button"); + + button.type = "button"; + button.className = "lm-shared-nav__item"; + + if (item.key === active) { + button.classList.add("is-active"); + } + + button.innerHTML = ` + + ${ICONS[item.icon]} + + + ${item.label} + + `; + + button.addEventListener("click", () => { + frappe.set_route(item.route); + }); + + container.appendChild(button); + }); + } + + frappe.navigation = { + mount: mount + }; + + $(document).on("page-change", () => { + setTimeout(mount, 100); + }); + + const observer = new MutationObserver(() => { + setTimeout(mount, 20); + }); + + observer.observe(document.body, { + childList: true, + subtree: true + }); + + setTimeout(mount, 300); +})(); diff --git a/lukenya_marathon/lukenya_marathon/race_management.py b/lukenya_marathon/lukenya_marathon/race_management.py new file mode 100644 index 0000000..d40f8c0 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/race_management.py @@ -0,0 +1,123 @@ +import frappe +from frappe import _ +from frappe.utils import flt + +INACTIVE_REGISTRATION_STATUSES = ("Cancelled", "Transferred", "Refunded") + + +def _count(sql, params): + row = frappe.db.sql(sql, params, as_dict=True) + return int(row[0].value or 0) if row else 0 + + +def _pct(value, total): + return round((flt(value) / flt(total)) * 100, 1) if total else 0 + + +@frappe.whitelist() +def get_event_editions(): + """Return editions visible to the current user, newest first.""" + return frappe.get_all( + "Event Edition", + fields=["name", "edition_name", "edition_code", "event_date", "venue", "status"], + order_by="event_date desc, modified desc", + limit_page_length=100, + ) + + +@frappe.whitelist() +def get_race_management_summary(event_edition=None): + """Return the operational dashboard summary for one event edition.""" + if not event_edition: + event_edition = frappe.db.get_value( + "Event Edition", {"status": "Open"}, "name", order_by="event_date desc" + ) + if not event_edition: + event_edition = frappe.db.get_value("Event Edition", {}, "name", order_by="event_date desc") + if not event_edition: + return {"edition": None, "kpis": {}, "categories": []} + + edition = frappe.db.get_value( + "Event Edition", + event_edition, + ["name", "edition_name", "edition_code", "event_date", "venue", "status", "registration_capacity"], + as_dict=True, + ) + if not edition: + frappe.throw(_("Event Edition not found.")) + + params = {"edition": event_edition, "inactive": INACTIVE_REGISTRATION_STATUSES} + active = "r.event_edition = %(edition)s and r.registration_status not in %(inactive)s" + + registrations = _count(f"select count(*) value from `tabRegistration` r where {active}", params) + paid = _count( + f"select count(*) value from `tabRegistration` r where {active} and r.payment_status = 'Paid'", + params, + ) + confirmed = _count( + f"select count(*) value from `tabRegistration` r where {active} and r.registration_status in ('Confirmed', 'Completed')", + params, + ) + bibs = _count( + f"select count(*) value from `tabRegistration` r where {active} and ifnull(r.bib_number, '') != ''", + params, + ) + packs = _count( + f"select count(*) value from `tabRegistration` r where {active} and r.race_pack_status = 'Collected'", + params, + ) + checked_in = _count( + f"select count(*) value from `tabRegistration` r where {active} and r.check_in_status = 'Checked In'", + params, + ) + finishers = _count( + """select count(distinct t.registration) value + from `tabTiming Result` t + join `tabRegistration` r on r.name = t.registration + where t.event_edition = %(edition)s + and t.finish_status = 'Finished' + and r.registration_status not in %(inactive)s""", + params, + ) + + categories = frappe.db.sql( + f""" + select c.name, c.category_code, c.category_name, c.distance_km, c.start_time, + c.capacity, c.active, + count(r.name) as registered, + sum(case when r.payment_status = 'Paid' then 1 else 0 end) as paid, + sum(case when ifnull(r.bib_number, '') != '' then 1 else 0 end) as bibs, + sum(case when r.check_in_status = 'Checked In' then 1 else 0 end) as checked_in, + count(distinct case when t.finish_status = 'Finished' then t.registration end) as finishers + from `tabRace Category` c + left join `tabRegistration` r + on r.race_category = c.name + and r.event_edition = %(edition)s + and r.registration_status not in %(inactive)s + left join `tabTiming Result` t on t.registration = r.name + where c.event_edition = %(edition)s + group by c.name, c.category_code, c.category_name, c.distance_km, c.start_time, c.capacity, c.active + order by c.start_time asc, c.category_name asc + """, + params, + as_dict=True, + ) + + return { + "edition": edition, + "kpis": { + "registrations": registrations, + "paid": paid, + "confirmed": confirmed, + "bibs": bibs, + "packs": packs, + "checked_in": checked_in, + "finishers": finishers, + "paid_percent": _pct(paid, registrations), + "bibs_percent": _pct(bibs, registrations), + "packs_percent": _pct(packs, registrations), + "checked_in_percent": _pct(checked_in, registrations), + "finishers_percent": _pct(finishers, registrations), + }, + "categories": categories, + } diff --git a/lukenya_marathon/lukenya_marathon/race_sync.py b/lukenya_marathon/lukenya_marathon/race_sync.py new file mode 100644 index 0000000..6c82a33 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/race_sync.py @@ -0,0 +1,95 @@ +"""Keeps the copies of race-day status on Registration in step with the records that own them. + +Registration shows bib, chip, race pack and check-in status so lists and reports stay simple, but the +Bib Allocation, Race Pack Issue, Check-in and Timing Result records are the source of truth. Each +change re-derives only its own group of fields, so unrelated data is never overwritten. +""" + +import frappe + +from lukenya_marathon.lukenya_marathon.doctype.bib_allocation.bib_allocation import LIVE + +PACK_STATUS = {"Ready": "Ready", "Issued": "Issued", "Collected": "Collected", "Uncollected": "Uncollected", "Cancelled": "Not Issued"} +CHECKIN_STATUS = {"Checked In": "Checked In", "Did Not Start": "Did Not Start", "Withdrawn": "Did Not Start"} + + +def _set(registration, values): + if registration and frappe.db.exists("Registration", registration): + frappe.db.set_value("Registration", registration, values, update_modified=False) + + +def sync_bib(registration, exclude=None): + rows = frappe.db.sql( + """select bib_number, chip_number from `tabBib Allocation` + where registration = %(r)s and status in %(live)s and name != %(x)s + order by allocated_on desc, creation desc limit 1""", + {"r": registration, "live": LIVE, "x": exclude or ""}, as_dict=True, + ) + _set(registration, {"bib_number": rows[0].bib_number if rows else "", "chip_number": (rows[0].chip_number or "") if rows else ""}) + + +def sync_pack(registration, exclude=None): + rows = frappe.db.sql( + "select issue_status from `tabRace Pack Issue` where registration = %(r)s and name != %(x)s order by creation desc limit 1", + {"r": registration, "x": exclude or ""}, as_dict=True, + ) + _set(registration, {"race_pack_status": PACK_STATUS.get(rows[0].issue_status, "Not Issued") if rows else "Not Issued"}) + + +def sync_checkin(registration, exclude=None): + if frappe.db.sql( + "select 1 from `tabTiming Result` where registration = %(r)s and finish_status = 'Finished' and name != %(x)s limit 1", + {"r": registration, "x": exclude or ""}, + ): + return _set(registration, {"check_in_status": "Finished"}) + rows = frappe.db.sql( + "select status from `tabCheck-in` where registration = %(r)s and name != %(x)s order by check_in_time desc, creation desc limit 1", + {"r": registration, "x": exclude or ""}, as_dict=True, + ) + _set(registration, {"check_in_status": CHECKIN_STATUS.get(rows[0].status, "Not Checked In") if rows else "Not Checked In"}) + + +# ---- hook entry points (registered in hooks.py) ----------------------------------------------- + + +def _both(doc, sync): + """Resync the entry the record points at now and the one it pointed at before, if it moved.""" + sync(doc.registration) + before = doc.get_doc_before_save() + if before and before.registration and before.registration != doc.registration: + sync(before.registration) + + +def on_bib_change(doc, method=None): + _both(doc, sync_bib) + + +def on_pack_change(doc, method=None): + _both(doc, sync_pack) + + +def on_checkin_change(doc, method=None): + _both(doc, sync_checkin) + + +def on_result_change(doc, method=None): + _both(doc, sync_checkin) + + +def on_trash(doc, method=None): + """Deleting a record: derive from everything except the record going away.""" + sync = {"Bib Allocation": sync_bib, "Race Pack Issue": sync_pack, "Check-in": sync_checkin, "Timing Result": sync_checkin}[doc.doctype] + sync(doc.registration, exclude=doc.name) + + +def resync_all(): + """Backfill: derive each group only for entries that have records of that kind.""" + counts = {"bib": 0, "pack": 0, "checkin": 0} + for table, key, fn in ( + ("Bib Allocation", "bib", sync_bib), ("Race Pack Issue", "pack", sync_pack), + ("Check-in", "checkin", sync_checkin), ("Timing Result", "checkin", sync_checkin), + ): + for row in frappe.db.sql(f"select distinct registration from `tab{table}`", as_dict=True): + fn(row.registration) + counts[key] += 1 + return counts diff --git a/lukenya_marathon/lukenya_marathon/registration_rules.py b/lukenya_marathon/lukenya_marathon/registration_rules.py new file mode 100644 index 0000000..8dd1d2d --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/registration_rules.py @@ -0,0 +1,172 @@ +"""Rules about who may register, when, and at what price. One place, used by the public sign-up, +the Registration controller and the Event Edition controller.""" + +import frappe +from frappe import _ +from frappe.utils import cint, flt, get_datetime, getdate, now_datetime + +from lukenya_marathon.lukenya_marathon import settings + +RESIDENT_NATIONALITIES = ("kenya", "kenyan") +PUBLIC_TIERS = ("Standard", "Early Bird", "Non-resident") +HOLDING_STATUSES = ("Pending", "Confirmed") + + +def is_resident(nationality): + return (nationality or "").strip().lower() in RESIDENT_NATIONALITIES + + +# ---- the public registration window and price ---------------------------------------------- + + +def check_window(edition, now=None): + """Refuse online registration before it opens or after it closes.""" + now = get_datetime(now or now_datetime()) + opens, closes = edition.get("registration_open"), edition.get("registration_close") + if opens and now < get_datetime(opens): + frappe.throw(_("Registration for this edition opens on {0}.").format(get_datetime(opens).strftime("%d %b %Y, %H:%M"))) + if closes and now > get_datetime(closes): + frappe.throw(_("Registration for this edition closed on {0}.").format(get_datetime(closes).strftime("%d %b %Y, %H:%M"))) + + +def early_bird_active(edition, category, now=None): + ends = edition.get("early_bird_ends") + if not ends or flt(category.get("early_bird_price")) <= 0: + return False + return get_datetime(now or now_datetime()) <= get_datetime(ends) + + +def resolve_price_tier(edition, category, requested, nationality, now=None): + """The tier the runner actually gets, decided here rather than by their browser. + + - Only Standard, Early Bird and Non-resident can be chosen online. Corporate and complimentary + entries are created by staff. + - Non-residents always get the non-resident price. + - Early bird applies to residents while the edition's early-bird window is open, and is then + applied automatically. Asking for it after it ends is refused. + """ + requested = (requested or "").strip() or "Standard" + if requested not in PUBLIC_TIERS: + frappe.throw(_("That price option isn't available for online registration.")) + if not is_resident(nationality): + return "Non-resident" + if early_bird_active(edition, category, now): + return "Early Bird" + if requested == "Early Bird": + frappe.throw(_("Early bird pricing is no longer available.")) + return "Standard" + + +# ---- capacity -------------------------------------------------------------------------------- + + +def edition_entries(edition, exclude=None): + filters = {"event_edition": edition, "registration_status": ["in", list(HOLDING_STATUSES)]} + if exclude: + filters["name"] = ["!=", exclude] + return frappe.db.count("Registration", filters) + + +def check_edition_capacity(edition, exclude=None): + capacity = cint(frappe.db.get_value("Event Edition", edition, "registration_capacity")) + if capacity and edition_entries(edition, exclude) >= capacity: + frappe.throw(_("This event edition is full.")) + + +# ---- readiness (used before opening registration, and by the Events page) -------------------- + + +def check_dates(edition): + """Problems with an edition's dates, as readable sentences. Empty when they make sense.""" + problems = [] + opens, closes, early = edition.get("registration_open"), edition.get("registration_close"), edition.get("early_bird_ends") + event_date = edition.get("event_date") + if opens and closes and get_datetime(opens) >= get_datetime(closes): + problems.append(_("Registration must open before it closes.")) + if closes and event_date and getdate(closes) > getdate(event_date): + problems.append(_("Registration cannot close after the event date.")) + if early: + if opens and get_datetime(early) < get_datetime(opens): + problems.append(_("The early-bird end can't be before registration opens.")) + if closes and get_datetime(early) > get_datetime(closes): + problems.append(_("The early-bird end can't be after registration closes.")) + return problems + + +def _check(key, label, ok, level, detail=None): + return {"key": key, "label": label, "ok": bool(ok), "level": level, "detail": detail or ""} + + +def edition_readiness(edition): + """Checklist for an edition: `block` items stop it opening, `warn` items are worth a look.""" + if isinstance(edition, str): + edition = frappe.db.get_value( + "Event Edition", edition, + ["name", "event_date", "registration_open", "registration_close", "early_bird_ends", "venue"], as_dict=True, + ) + cats = frappe.db.sql( + """select name, category_name, kenyan_price, early_bird_price, capacity, start_time, prize_eligible + from `tabRace Category` where event_edition = %(e)s and active = 1""", + {"e": edition.get("name")}, as_dict=True, + ) + unpriced = [c.category_name for c in cats if flt(c.kenyan_price) <= 0] + no_capacity = [c.category_name for c in cats if not cint(c.capacity)] + no_start = [c.category_name for c in cats if not c.start_time] + early_priced = [c for c in cats if flt(c.early_bird_price) > 0] + prize_cats = [c for c in cats if cint(c.prize_eligible)] + with_rules = set() + if prize_cats: + with_rules = { + r.race_category + for r in frappe.db.sql( + "select distinct race_category from `tabPrize Rule` where event_edition = %(e)s and active = 1", + {"e": edition.get("name")}, as_dict=True, + ) + } + no_rules = [c.category_name for c in prize_cats if c.name not in with_rules] + dates = check_dates(edition) + + return { + "checks": [ + _check("dates", _("Dates make sense"), not dates, "block", " ".join(dates)), + _check("categories", _("At least one active race category"), bool(cats), "block"), + _check("prices", _("Every category has a price"), not unpriced, "block", ", ".join(unpriced)), + _check("window", _("Registration open and close times are set"), edition.get("registration_open") and edition.get("registration_close"), "warn"), + _check("early_bird", _("Early-bird prices have an end date"), not early_priced or edition.get("early_bird_ends"), "warn", + _("An early-bird price is set but no end date, so it will never be offered.") if early_priced and not edition.get("early_bird_ends") else ""), + _check("capacity", _("Every category has a capacity"), not no_capacity, "warn", ", ".join(no_capacity)), + _check("start_times", _("Every category has a start time"), not no_start, "warn", ", ".join(no_start)), + _check("prizes", _("Prize-eligible categories have prize rules"), not no_rules, "warn", ", ".join(no_rules)), + ], + } + + +def blockers(readiness): + return [c for c in readiness["checks"] if not c["ok"] and c["level"] == "block"] + + +@frappe.whitelist() +def get_readiness(edition): + frappe.only_for(("System Manager", "Race Director")) + result = edition_readiness(edition) + result["ready"] = not blockers(result) + return result + + +# ---- closing registration on time ------------------------------------------------------------ + + +def close_expired_editions(): + """Close editions whose registration close time has passed. Returns the ones it closed.""" + if not cint(settings.get("auto_close_registration")): + return [] + rows = frappe.db.sql( + "select name from `tabEvent Edition` where status = 'Open' and registration_close is not null and registration_close < %(now)s", + {"now": now_datetime()}, as_dict=True, + ) + closed = [] + for row in rows: + frappe.db.set_value("Event Edition", row.name, "status", "Closed") + frappe.get_doc("Event Edition", row.name).add_comment("Info", _("Registration closed automatically: the close time passed.")) + closed.append(row.name) + return closed diff --git a/lukenya_marathon/lukenya_marathon/report/__init__.py b/lukenya_marathon/lukenya_marathon/report/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/report/payment_reconciliation/__init__.py b/lukenya_marathon/lukenya_marathon/report/payment_reconciliation/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/report/payment_reconciliation/payment_reconciliation.js b/lukenya_marathon/lukenya_marathon/report/payment_reconciliation/payment_reconciliation.js new file mode 100644 index 0000000..228d373 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/report/payment_reconciliation/payment_reconciliation.js @@ -0,0 +1,30 @@ +frappe.query_reports["Payment Reconciliation"] = { + filters: [ + { + fieldname: "event_edition", + label: __("Event Edition"), + fieldtype: "Link", + options: "Event Edition", + }, + { + fieldname: "race_category", + label: __("Race Category"), + fieldtype: "Link", + options: "Race Category", + get_query: () => { + const edition = frappe.query_report.get_filter_value("event_edition"); + return { filters: edition ? { event_edition: edition } : {} }; + }, + }, + { + fieldname: "from_date", + label: __("Registered From"), + fieldtype: "Date", + }, + { + fieldname: "to_date", + label: __("Registered To"), + fieldtype: "Date", + }, + ], +}; diff --git a/lukenya_marathon/lukenya_marathon/report/payment_reconciliation/payment_reconciliation.json b/lukenya_marathon/lukenya_marathon/report/payment_reconciliation/payment_reconciliation.json new file mode 100644 index 0000000..49d5297 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/report/payment_reconciliation/payment_reconciliation.json @@ -0,0 +1,27 @@ +{ + "add_total_row": 0, + "columns": [], + "creation": "2026-09-20 00:00:00.000000", + "disable_prepared_report": 0, + "disabled": 0, + "docstatus": 0, + "doctype": "Report", + "filters": [], + "idx": 0, + "is_standard": "Yes", + "letterhead": null, + "modified": "2026-09-20 00:00:00.000000", + "modified_by": "Administrator", + "module": "Lukenya Marathon", + "name": "Payment Reconciliation", + "owner": "Administrator", + "prepared_report": 0, + "ref_doctype": "Registration", + "report_name": "Payment Reconciliation", + "report_type": "Script Report", + "roles": [ + { + "role": "System Manager" + } + ] +} \ No newline at end of file diff --git a/lukenya_marathon/lukenya_marathon/report/payment_reconciliation/payment_reconciliation.py b/lukenya_marathon/lukenya_marathon/report/payment_reconciliation/payment_reconciliation.py new file mode 100644 index 0000000..96db693 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/report/payment_reconciliation/payment_reconciliation.py @@ -0,0 +1,22 @@ +import frappe +from frappe import _ + +from lukenya_marathon.lukenya_marathon import analytics + + +def execute(filters=None): + rows = analytics.payment_reconciliation(filters) + + columns = [ + {"label": _("Registration"), "fieldname": "registration", "fieldtype": "Link", "options": "Registration", "width": 140}, + {"label": _("Runner"), "fieldname": "participant_name", "fieldtype": "Data", "width": 180}, + {"label": _("Issue"), "fieldname": "issue", "fieldtype": "Data", "width": 300}, + {"label": _("Payment Status"), "fieldname": "payment_status", "fieldtype": "Data", "width": 120}, + {"label": _("Amount Due"), "fieldname": "amount_due", "fieldtype": "Currency", "width": 120}, + {"label": _("Paid"), "fieldname": "paid", "fieldtype": "Currency", "width": 110}, + {"label": _("Difference"), "fieldname": "difference", "fieldtype": "Currency", "width": 120}, + ] + + message = None if rows else _("Payments and registrations agree.") + summary = [{"value": len(rows), "label": _("Records that disagree"), "datatype": "Int", "indicator": "Red" if rows else "Green"}] + return columns, rows, message, None, summary diff --git a/lukenya_marathon/lukenya_marathon/report/registration_summary/__init__.py b/lukenya_marathon/lukenya_marathon/report/registration_summary/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/report/registration_summary/registration_summary.js b/lukenya_marathon/lukenya_marathon/report/registration_summary/registration_summary.js new file mode 100644 index 0000000..329d6a2 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/report/registration_summary/registration_summary.js @@ -0,0 +1,30 @@ +frappe.query_reports["Registration Summary"] = { + filters: [ + { + fieldname: "event_edition", + label: __("Event Edition"), + fieldtype: "Link", + options: "Event Edition", + }, + { + fieldname: "race_category", + label: __("Race Category"), + fieldtype: "Link", + options: "Race Category", + get_query: () => { + const edition = frappe.query_report.get_filter_value("event_edition"); + return { filters: edition ? { event_edition: edition } : {} }; + }, + }, + { + fieldname: "from_date", + label: __("Registered From"), + fieldtype: "Date", + }, + { + fieldname: "to_date", + label: __("Registered To"), + fieldtype: "Date", + }, + ], +}; diff --git a/lukenya_marathon/lukenya_marathon/report/registration_summary/registration_summary.json b/lukenya_marathon/lukenya_marathon/report/registration_summary/registration_summary.json new file mode 100644 index 0000000..977ed69 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/report/registration_summary/registration_summary.json @@ -0,0 +1,27 @@ +{ + "add_total_row": 0, + "columns": [], + "creation": "2026-09-20 00:00:00.000000", + "disable_prepared_report": 0, + "disabled": 0, + "docstatus": 0, + "doctype": "Report", + "filters": [], + "idx": 0, + "is_standard": "Yes", + "letterhead": null, + "modified": "2026-09-20 00:00:00.000000", + "modified_by": "Administrator", + "module": "Lukenya Marathon", + "name": "Registration Summary", + "owner": "Administrator", + "prepared_report": 0, + "ref_doctype": "Registration", + "report_name": "Registration Summary", + "report_type": "Script Report", + "roles": [ + { + "role": "System Manager" + } + ] +} \ No newline at end of file diff --git a/lukenya_marathon/lukenya_marathon/report/registration_summary/registration_summary.py b/lukenya_marathon/lukenya_marathon/report/registration_summary/registration_summary.py new file mode 100644 index 0000000..01a3ba7 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/report/registration_summary/registration_summary.py @@ -0,0 +1,39 @@ +import frappe +from frappe import _ + +from lukenya_marathon.lukenya_marathon import analytics + + +def execute(filters=None): + rows = analytics.registration_summary(filters) + + columns = [ + {"label": _("Race Category"), "fieldname": "race_category", "fieldtype": "Link", "options": "Race Category", "width": 170}, + {"label": _("Name"), "fieldname": "category_name", "fieldtype": "Data", "width": 200}, + {"label": _("Edition"), "fieldname": "event_edition", "fieldtype": "Link", "options": "Event Edition", "width": 130}, + {"label": _("Capacity"), "fieldname": "capacity", "fieldtype": "Int", "width": 90}, + {"label": _("Registered"), "fieldname": "registered", "fieldtype": "Int", "width": 100}, + {"label": _("Confirmed"), "fieldname": "confirmed", "fieldtype": "Int", "width": 100}, + {"label": _("Paid Entries"), "fieldname": "paid_entries", "fieldtype": "Int", "width": 110}, + {"label": _("Filled %"), "fieldname": "fill_percent", "fieldtype": "Percent", "width": 90}, + {"label": _("Billed"), "fieldname": "billed", "fieldtype": "Currency", "width": 120}, + {"label": _("Revenue"), "fieldname": "revenue", "fieldtype": "Currency", "width": 120}, + ] + + chart = { + "data": { + "labels": [r.category_name for r in rows], + "datasets": [ + {"name": _("Registered"), "values": [r.registered for r in rows]}, + {"name": _("Capacity"), "values": [r.capacity for r in rows]}, + ], + }, + "type": "bar", + } + + summary = [ + {"value": sum(r.registered for r in rows), "label": _("Registered"), "datatype": "Int"}, + {"value": sum(r.confirmed for r in rows), "label": _("Confirmed"), "datatype": "Int"}, + {"value": sum(r.revenue for r in rows), "label": _("Revenue"), "datatype": "Currency", "indicator": "Green"}, + ] + return columns, rows, None, chart, summary diff --git a/lukenya_marathon/lukenya_marathon/report/unpaid_registrations/__init__.py b/lukenya_marathon/lukenya_marathon/report/unpaid_registrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lukenya_marathon/lukenya_marathon/report/unpaid_registrations/unpaid_registrations.js b/lukenya_marathon/lukenya_marathon/report/unpaid_registrations/unpaid_registrations.js new file mode 100644 index 0000000..7703020 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/report/unpaid_registrations/unpaid_registrations.js @@ -0,0 +1,30 @@ +frappe.query_reports["Unpaid Registrations"] = { + filters: [ + { + fieldname: "event_edition", + label: __("Event Edition"), + fieldtype: "Link", + options: "Event Edition", + }, + { + fieldname: "race_category", + label: __("Race Category"), + fieldtype: "Link", + options: "Race Category", + get_query: () => { + const edition = frappe.query_report.get_filter_value("event_edition"); + return { filters: edition ? { event_edition: edition } : {} }; + }, + }, + { + fieldname: "from_date", + label: __("Registered From"), + fieldtype: "Date", + }, + { + fieldname: "to_date", + label: __("Registered To"), + fieldtype: "Date", + }, + ], +}; diff --git a/lukenya_marathon/lukenya_marathon/report/unpaid_registrations/unpaid_registrations.json b/lukenya_marathon/lukenya_marathon/report/unpaid_registrations/unpaid_registrations.json new file mode 100644 index 0000000..a5347e0 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/report/unpaid_registrations/unpaid_registrations.json @@ -0,0 +1,27 @@ +{ + "add_total_row": 0, + "columns": [], + "creation": "2026-09-20 00:00:00.000000", + "disable_prepared_report": 0, + "disabled": 0, + "docstatus": 0, + "doctype": "Report", + "filters": [], + "idx": 0, + "is_standard": "Yes", + "letterhead": null, + "modified": "2026-09-20 00:00:00.000000", + "modified_by": "Administrator", + "module": "Lukenya Marathon", + "name": "Unpaid Registrations", + "owner": "Administrator", + "prepared_report": 0, + "ref_doctype": "Registration", + "report_name": "Unpaid Registrations", + "report_type": "Script Report", + "roles": [ + { + "role": "System Manager" + } + ] +} \ No newline at end of file diff --git a/lukenya_marathon/lukenya_marathon/report/unpaid_registrations/unpaid_registrations.py b/lukenya_marathon/lukenya_marathon/report/unpaid_registrations/unpaid_registrations.py new file mode 100644 index 0000000..04b7fbf --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/report/unpaid_registrations/unpaid_registrations.py @@ -0,0 +1,26 @@ +import frappe +from frappe import _ + +from lukenya_marathon.lukenya_marathon import analytics + + +def execute(filters=None): + rows = analytics.unpaid_registrations(filters) + + columns = [ + {"label": _("Registration"), "fieldname": "registration", "fieldtype": "Link", "options": "Registration", "width": 140}, + {"label": _("Runner"), "fieldname": "participant_name", "fieldtype": "Data", "width": 180}, + {"label": _("Category"), "fieldname": "category_name", "fieldtype": "Data", "width": 170}, + {"label": _("Registered On"), "fieldname": "registration_date", "fieldtype": "Datetime", "width": 160}, + {"label": _("Payment Status"), "fieldname": "payment_status", "fieldtype": "Data", "width": 120}, + {"label": _("Amount Due"), "fieldname": "amount_due", "fieldtype": "Currency", "width": 120}, + {"label": _("Paid"), "fieldname": "paid", "fieldtype": "Currency", "width": 110}, + {"label": _("Balance"), "fieldname": "balance", "fieldtype": "Currency", "width": 120}, + {"label": _("Days Open"), "fieldname": "days_open", "fieldtype": "Int", "width": 90}, + ] + + summary = [ + {"value": len(rows), "label": _("Entries owing"), "datatype": "Int", "indicator": "Red" if rows else "Green"}, + {"value": sum(r.balance for r in rows), "label": _("Total balance"), "datatype": "Currency", "indicator": "Red" if rows else "Green"}, + ] + return columns, rows, None, None, summary diff --git a/lukenya_marathon/lukenya_marathon/results.py b/lukenya_marathon/lukenya_marathon/results.py new file mode 100644 index 0000000..687f516 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/results.py @@ -0,0 +1,274 @@ +"""Importing finish times and working out ranks.""" + +import csv +import io +import re + +import frappe +from frappe import _ +from frappe.utils import cint, flt, getdate + +ROLES = ("System Manager", "Race Director", "Timing Officer") +LIVE_OR_REPLACED = ("Allocated", "Printed", "Issued", "Replaced") + +# Age groups used for ranking. Prize rules should use the same labels. +RANK_AGE_BANDS = [ + (0, 17, "Under 18"), (18, 34, "18-34"), (35, 39, "35-39"), (40, 44, "40-44"), (45, 49, "45-49"), + (50, 54, "50-54"), (55, 59, "55-59"), (60, 64, "60-64"), (65, 120, "65+"), +] + +STATUS_WORDS = { + "finished": "Finished", "fin": "Finished", "ok": "Finished", "finisher": "Finished", + "dnf": "Did Not Finish", "did not finish": "Did Not Finish", + "dns": "Did Not Start", "did not start": "Did Not Start", + "dsq": "Disqualified", "dq": "Disqualified", "disqualified": "Disqualified", + "pending review": "Pending Review", "review": "Pending Review", +} + +COLUMN_ALIASES = { + "bib": ("bib", "bib number", "bib_number", "bibno", "bib no", "number"), + "chip_time": ("chip time", "chip_time", "chip", "net time", "net", "nettime"), + "gun_time": ("gun time", "gun_time", "gun", "clock time", "clock", "guntime"), + "status": ("status", "finish status", "finish_status", "result status"), +} + + +def age_group_for(date_of_birth, reference): + if not date_of_birth: + return None + dob, ref = getdate(date_of_birth), getdate(reference) + age = ref.year - dob.year - ((ref.month, ref.day) < (dob.month, dob.day)) + for low, high, label in RANK_AGE_BANDS: + if low <= age <= high: + return label + return None + + +# ---- parsing ------------------------------------------------------------------------------- + + +def parse_duration(text): + """'1:23:45', '1:23:45.6', '23:45' or '45.5' to seconds. Raises ValueError on anything else.""" + text = (text or "").strip() + if not text: + return None + if not re.fullmatch(r"\d+(:\d{1,2}){0,2}(\.\d+)?", text): + raise ValueError(text) + parts = [float(p) for p in text.split(":")] + seconds = 0.0 + for p in parts: + seconds = seconds * 60 + p + if len(parts) > 1 and any(p >= 60 for p in parts[1:]): + raise ValueError(text) + return seconds + + +def _read_rows(csv_text): + sample = csv_text[:2048] + try: + dialect = csv.Sniffer().sniff(sample, delimiters=",;\t") + except csv.Error: + dialect = csv.excel + reader = csv.reader(io.StringIO(csv_text.lstrip("\ufeff")), dialect) + rows = [r for r in reader if any((c or "").strip() for c in r)] + if not rows: + frappe.throw(_("The file is empty.")) + header = [re.sub(r"\s+", " ", (h or "").strip().lower()) for h in rows[0]] + index = {} + for key, aliases in COLUMN_ALIASES.items(): + for i, name in enumerate(header): + if name in aliases: + index[key] = i + break + if "bib" not in index: + frappe.throw(_("The file needs a Bib column.")) + if "chip_time" not in index and "gun_time" not in index: + frappe.throw(_("The file needs a Chip Time or Gun Time column.")) + return index, rows[1:] + + +# ---- import -------------------------------------------------------------------------------- + + +def _plan(event_edition, csv_text, overwrite): + index, rows = _read_rows(csv_text) + errors, warnings, plan, seen = [], [], [], set() + + bibs = { + r.bib_number: r + for r in frappe.db.sql( + """select b.bib_number, b.registration, r.race_category from `tabBib Allocation` b + join `tabRegistration` r on r.name = b.registration + where b.event_edition = %(e)s and b.status in %(s)s + order by field(b.status, 'Replaced', 'Allocated', 'Printed', 'Issued')""", + {"e": event_edition, "s": LIVE_OR_REPLACED}, as_dict=True, + ) + } + existing = { + r.registration: r + for r in frappe.db.sql("select name, registration, approved from `tabTiming Result` where event_edition = %(e)s", {"e": event_edition}, as_dict=True) + } + + def cell(row, key): + i = index.get(key) + return row[i].strip() if i is not None and i < len(row) else "" + + for n, row in enumerate(rows, start=2): + bib = cell(row, "bib").upper() + if not bib: + errors.append({"row": n, "bib": "", "message": _("No bib number.")}) + continue + if bib in seen: + errors.append({"row": n, "bib": bib, "message": _("This bib appears more than once in the file.")}) + continue + seen.add(bib) + alloc = bibs.get(bib) + if not alloc: + errors.append({"row": n, "bib": bib, "message": _("Bib {0} has not been allocated in this edition.").format(bib)}) + continue + try: + chip, gun = parse_duration(cell(row, "chip_time")), parse_duration(cell(row, "gun_time")) + except ValueError as e: + errors.append({"row": n, "bib": bib, "message": _("Can't read the time '{0}'.").format(e)}) + continue + + word = cell(row, "status").lower() + if word and word not in STATUS_WORDS: + errors.append({"row": n, "bib": bib, "message": _("Unknown status '{0}'.").format(cell(row, "status"))}) + continue + status = STATUS_WORDS.get(word) or ("Finished" if (chip or gun) else "Pending Review") + if status == "Finished" and not (chip or gun): + errors.append({"row": n, "bib": bib, "message": _("Marked finished but has no time.")}) + continue + if not word and status == "Pending Review": + warnings.append({"row": n, "bib": bib, "message": _("No time and no status, so it was set to Pending Review.")}) + + found = existing.get(alloc.registration) + action = "create" + if found: + if cint(found.approved) and not cint(overwrite): + warnings.append({"row": n, "bib": bib, "message": _("Already approved, so it was skipped. Turn on overwrite to replace it.")}) + action = "skip" + else: + action = "update" + plan.append({ + "row": n, "bib": bib, "registration": alloc.registration, "race_category": alloc.race_category, + "chip_time": chip, "gun_time": gun, "finish_status": status, "action": action, + "result": found.name if found else None, + }) + return plan, errors, warnings + + +@frappe.whitelist() +def import_results(event_edition, csv_text=None, file_url=None, dry_run=1, overwrite=0, source=None): + """Load finish times from the timing company's CSV. Preview first (dry_run=1); a real import only + goes ahead when the file has no errors, so a bad file never half-loads.""" + frappe.only_for(ROLES) + if not csv_text and file_url: + csv_text = frappe.get_doc("File", {"file_url": file_url}).get_content() + if isinstance(csv_text, bytes): + csv_text = csv_text.decode("utf-8-sig") + if not csv_text: + frappe.throw(_("Provide the CSV text or an uploaded file.")) + + plan, errors, warnings = _plan(event_edition, csv_text, cint(overwrite)) + summary = { + "dry_run": bool(cint(dry_run)), + "rows": len(plan) + len(errors), + "will_create": sum(1 for p in plan if p["action"] == "create"), + "will_update": sum(1 for p in plan if p["action"] == "update"), + "skipped": sum(1 for p in plan if p["action"] == "skip"), + "errors": errors, + "warnings": warnings, + "sample": plan[:10], + } + if cint(dry_run): + return summary + if errors: + frappe.throw(_("Fix the {0} problem(s) in the file first. Nothing was imported.").format(len(errors))) + + label = source or _("Import") + for p in plan: + if p["action"] == "skip": + continue + values = { + "gun_time": p["gun_time"], "chip_time": p["chip_time"], "finish_status": p["finish_status"], + "source": label, "approved": 0, + } + if p["action"] == "update": + doc = frappe.get_doc("Timing Result", p["result"]) + doc.update(values) + doc.save(ignore_permissions=True) + else: + frappe.get_doc(dict(values, doctype="Timing Result", registration=p["registration"], bib_number=p["bib"], + event_edition=event_edition, race_category=p["race_category"])).insert(ignore_permissions=True) + summary["dry_run"] = False + summary["imported"] = summary["will_create"] + summary["will_update"] + return summary + + +# ---- ranks --------------------------------------------------------------------------------- + + +def _rank(items, key): + """Competition ranking: equal times share a rank and the next rank skips (1, 2, 2, 4).""" + ranks, previous, position = {}, None, 0 + for i, item in enumerate(sorted(items, key=key), start=1): + if key(item) != previous: + position, previous = i, key(item) + ranks[item["name"]] = position + return ranks + + +@frappe.whitelist() +def compute_ranks(event_edition, race_category=None): + """Set overall, gender and age-group ranks from finish times. Ranks are by chip time (gun time if + there is none) among finishers. Everyone else has their ranks cleared.""" + frappe.only_for(ROLES) + params = {"e": event_edition} + cat_sql = "" + if race_category: + cat_sql = "and t.race_category = %(c)s" + params["c"] = race_category + rows = frappe.db.sql( + f""" + select t.name, t.race_category, t.finish_status, + coalesce(nullif(t.chip_time, 0), nullif(t.gun_time, 0)) as seconds, + t.overall_rank, t.gender_rank, t.age_group_rank, p.gender, p.date_of_birth, e.event_date + from `tabTiming Result` t + join `tabRegistration` r on r.name = t.registration + join `tabParticipant` p on p.name = r.participant + join `tabEvent Edition` e on e.name = t.event_edition + where t.event_edition = %(e)s {cat_sql} + """, + params, as_dict=True, + ) + # Int columns can't hold NULL, so "not ranked" is 0 + wanted = {r.name: {"overall_rank": 0, "gender_rank": 0, "age_group_rank": 0} for r in rows} + finishers = [r for r in rows if r.finish_status == "Finished" and r.seconds is not None and flt(r.seconds) > 0] + + by_cat = {} + for r in finishers: + by_cat.setdefault(r.race_category, []).append(r) + for members in by_cat.values(): + for name, rank in _rank(members, lambda r: flt(r.seconds)).items(): + wanted[name]["overall_rank"] = rank + groups = {} + for r in members: + if r.gender in ("Male", "Female"): + groups.setdefault(("g", r.gender), []).append(r) + band = age_group_for(r.date_of_birth, r.event_date) + if band: + groups.setdefault(("a", r.gender, band), []).append(r) + for key, group in groups.items(): + field = "gender_rank" if key[0] == "g" else "age_group_rank" + for name, rank in _rank(group, lambda r: flt(r.seconds)).items(): + wanted[name][field] = rank + + changed = 0 + for r in rows: + new = wanted[r.name] + if (cint(r.overall_rank), cint(r.gender_rank), cint(r.age_group_rank)) != (new["overall_rank"], new["gender_rank"], new["age_group_rank"]): + frappe.db.set_value("Timing Result", r.name, new, update_modified=False) + changed += 1 + return {"results": len(rows), "ranked": len(finishers), "changed": changed} diff --git a/lukenya_marathon/lukenya_marathon/settings.py b/lukenya_marathon/lukenya_marathon/settings.py new file mode 100644 index 0000000..2c4d726 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/settings.py @@ -0,0 +1,26 @@ +"""Site-wide switches, read from the Lukenya Settings page with safe defaults. + +The defaults apply until someone saves the settings form, and whenever the setting can't be read. +""" + +import frappe + +DEFAULTS = { + "hold_expiry_days": 0, # 0 = unpaid entries hold their place forever + "auto_close_registration": 1, # close an edition when its registration close time passes + "bibs_require_payment": 1, # only paid (or complimentary) confirmed entries can get a bib +} + + +def get(name): + default = DEFAULTS[name] + try: + value = frappe.db.get_single_value("Lukenya Settings", name) + except Exception: + return default + if value in (None, ""): + return default + try: + return int(float(value)) # single values can come back as text + except (TypeError, ValueError): + return default diff --git a/lukenya_marathon/lukenya_marathon/workspace/lukenya_marathon/lukenya_marathon.json b/lukenya_marathon/lukenya_marathon/workspace/lukenya_marathon/lukenya_marathon.json new file mode 100644 index 0000000..121faf9 --- /dev/null +++ b/lukenya_marathon/lukenya_marathon/workspace/lukenya_marathon/lukenya_marathon.json @@ -0,0 +1,279 @@ +{ + "charts": [], + "content": "[{\"id\": \"lukenya-header\", \"type\": \"header\", \"data\": {\"text\": \"Marathon Operations\", \"col\": 12}}, {\"id\": \"e597e3e053\", \"type\": \"header\", \"data\": {\"text\": \"Portal\", \"col\": 12}}, {\"id\": \"bcd51cd267\", \"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Marathon Portal\", \"col\": 4}}, {\"id\": \"0126d714e2\", \"type\": \"spacer\", \"data\": {\"col\": 12}}, {\"id\": \"cat-0\", \"type\": \"header\", \"data\": {\"text\": \"Event Setup\", \"col\": 12}}, {\"id\": \"sc-0-0\", \"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Event Editions\", \"col\": 4}}, {\"id\": \"sc-0-1\", \"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Race Categories\", \"col\": 4}}, {\"id\": \"sp-0\", \"type\": \"spacer\", \"data\": {\"col\": 12}}, {\"id\": \"cat-1\", \"type\": \"header\", \"data\": {\"text\": \"Participants & Registration\", \"col\": 12}}, {\"id\": \"sc-1-0\", \"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Participants\", \"col\": 4}}, {\"id\": \"sc-1-1\", \"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Registrations\", \"col\": 4}}, {\"id\": \"sc-1-2\", \"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Payment Transactions\", \"col\": 4}}, {\"id\": \"sp-1\", \"type\": \"spacer\", \"data\": {\"col\": 12}}, {\"id\": \"cat-2\", \"type\": \"header\", \"data\": {\"text\": \"Race Day\", \"col\": 12}}, {\"id\": \"sc-2-0\", \"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Bib Allocations\", \"col\": 4}}, {\"id\": \"sc-2-1\", \"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Race Pack Issues\", \"col\": 4}}, {\"id\": \"sc-2-2\", \"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Timing Results\", \"col\": 4}}, {\"id\": \"sp-2\", \"type\": \"spacer\", \"data\": {\"col\": 12}}, {\"id\": \"cat-3\", \"type\": \"header\", \"data\": {\"text\": \"Prizes\", \"col\": 12}}, {\"id\": \"sc-3-0\", \"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Prize Rules\", \"col\": 4}}, {\"id\": \"sc-3-1\", \"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Prize Awards\", \"col\": 4}}, {\"id\": \"sp-3\", \"type\": \"spacer\", \"data\": {\"col\": 12}}, {\"id\": \"cat-4\", \"type\": \"header\", \"data\": {\"text\": \"Volunteers & Impact\", \"col\": 12}}, {\"id\": \"sc-4-0\", \"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Volunteers\", \"col\": 4}}, {\"id\": \"sc-4-1\", \"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Volunteer Shifts\", \"col\": 4}}, {\"id\": \"sc-4-2\", \"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Tree Impact Records\", \"col\": 4}}, {\"id\": \"sp-4\", \"type\": \"spacer\", \"data\": {\"col\": 12}}]", + "creation": "2026-09-18 01:39:00.213779", + "custom_blocks": [ + { + "custom_block_name": "" + } + ], + "docstatus": 0, + "doctype": "Workspace", + "hide_custom": 0, + "idx": 0, + "indicator_color": "green", + "is_hidden": 0, + "label": "Lukenya Marathon", + "links": [ + { + "dependencies": "", + "hidden": 0, + "is_query_report": 0, + "label": "Event Editions", + "link_count": 0, + "link_to": "Event Edition", + "link_type": "DocType", + "onboard": 0, + "type": "Link" + }, + { + "dependencies": "", + "hidden": 0, + "is_query_report": 0, + "label": "Race Categories", + "link_count": 0, + "link_to": "Race Category", + "link_type": "DocType", + "onboard": 0, + "type": "Link" + }, + { + "dependencies": "", + "hidden": 0, + "is_query_report": 0, + "label": "Participants", + "link_count": 0, + "link_to": "Participant", + "link_type": "DocType", + "onboard": 0, + "type": "Link" + }, + { + "dependencies": "", + "hidden": 0, + "is_query_report": 0, + "label": "Registrations", + "link_count": 0, + "link_to": "Registration", + "link_type": "DocType", + "onboard": 0, + "type": "Link" + }, + { + "dependencies": "", + "hidden": 0, + "is_query_report": 0, + "label": "Payment Transactions", + "link_count": 0, + "link_to": "Payment Transaction", + "link_type": "DocType", + "onboard": 0, + "type": "Link" + }, + { + "dependencies": "", + "hidden": 0, + "is_query_report": 0, + "label": "Bib Allocations", + "link_count": 0, + "link_to": "Bib Allocation", + "link_type": "DocType", + "onboard": 0, + "type": "Link" + }, + { + "dependencies": "", + "hidden": 0, + "is_query_report": 0, + "label": "Race Pack Issues", + "link_count": 0, + "link_to": "Race Pack Issue", + "link_type": "DocType", + "onboard": 0, + "type": "Link" + }, + { + "dependencies": "", + "hidden": 0, + "is_query_report": 0, + "label": "Volunteer Shifts", + "link_count": 0, + "link_to": "Volunteer Shift", + "link_type": "DocType", + "onboard": 0, + "type": "Link" + }, + { + "dependencies": "", + "hidden": 0, + "is_query_report": 0, + "label": "Timing Results", + "link_count": 0, + "link_to": "Timing Result", + "link_type": "DocType", + "onboard": 0, + "type": "Link" + }, + { + "dependencies": "", + "hidden": 0, + "is_query_report": 0, + "label": "Prize Rules", + "link_count": 0, + "link_to": "Prize Rule", + "link_type": "DocType", + "onboard": 0, + "type": "Link" + }, + { + "dependencies": "", + "hidden": 0, + "is_query_report": 0, + "label": "Prize Awards", + "link_count": 0, + "link_to": "Prize Award", + "link_type": "DocType", + "onboard": 0, + "type": "Link" + }, + { + "dependencies": "", + "hidden": 0, + "is_query_report": 0, + "label": "Volunteers", + "link_count": 0, + "link_to": "Volunteer", + "link_type": "DocType", + "onboard": 0, + "type": "Link" + }, + { + "dependencies": "", + "hidden": 0, + "is_query_report": 0, + "label": "Tree Impact Records", + "link_count": 0, + "link_to": "Tree Impact Record", + "link_type": "DocType", + "onboard": 0, + "type": "Link" + } + ], + "modified": "2026-09-23 22:46:53.280750", + "modified_by": "Administrator", + "module": "Lukenya Marathon", + "name": "Lukenya Marathon", + "number_cards": [], + "owner": "Administrator", + "public": 1, + "quick_lists": [ + { + "document_type": "Event Edition", + "label": "event editions", + "quick_list_filter": "test" + } + ], + "roles": [], + "sequence_id": 0.0, + "shortcuts": [ + { + "color": "Yellow", + "doc_view": "", + "label": "Marathon Portal", + "link_to": "lukenya-dashboard", + "type": "Page" + }, + { + "color": "Blue", + "doc_view": "List", + "label": "Event Editions", + "link_to": "Event Edition", + "type": "DocType" + }, + { + "color": "Blue", + "doc_view": "List", + "label": "Race Categories", + "link_to": "Race Category", + "type": "DocType" + }, + { + "color": "Green", + "doc_view": "List", + "label": "Participants", + "link_to": "Participant", + "type": "DocType" + }, + { + "color": "Green", + "doc_view": "List", + "label": "Registrations", + "link_to": "Registration", + "type": "DocType" + }, + { + "color": "Green", + "doc_view": "List", + "label": "Payment Transactions", + "link_to": "Payment Transaction", + "type": "DocType" + }, + { + "color": "Orange", + "doc_view": "List", + "label": "Bib Allocations", + "link_to": "Bib Allocation", + "type": "DocType" + }, + { + "color": "Orange", + "doc_view": "List", + "label": "Race Pack Issues", + "link_to": "Race Pack Issue", + "type": "DocType" + }, + { + "color": "Orange", + "doc_view": "List", + "label": "Timing Results", + "link_to": "Timing Result", + "type": "DocType" + }, + { + "color": "Pink", + "doc_view": "List", + "label": "Prize Rules", + "link_to": "Prize Rule", + "type": "DocType" + }, + { + "color": "Pink", + "doc_view": "List", + "label": "Prize Awards", + "link_to": "Prize Award", + "type": "DocType" + }, + { + "color": "Cyan", + "doc_view": "List", + "label": "Volunteers", + "link_to": "Volunteer", + "type": "DocType" + }, + { + "color": "Cyan", + "doc_view": "List", + "label": "Volunteer Shifts", + "link_to": "Volunteer Shift", + "type": "DocType" + }, + { + "color": "Cyan", + "doc_view": "List", + "label": "Tree Impact Records", + "link_to": "Tree Impact Record", + "type": "DocType" + } + ], + "title": "Lukenya Marathon" +} \ No newline at end of file diff --git a/lukenya_marathon/modules.txt b/lukenya_marathon/modules.txt index d9c8863..ac83229 100644 --- a/lukenya_marathon/modules.txt +++ b/lukenya_marathon/modules.txt @@ -1 +1 @@ -Lukenya Marathon \ No newline at end of file +Lukenya Marathon diff --git a/lukenya_marathon/patches.txt b/lukenya_marathon/patches.txt index f15c3a9..67682c2 100644 --- a/lukenya_marathon/patches.txt +++ b/lukenya_marathon/patches.txt @@ -1,6 +1,10 @@ [pre_model_sync] # Patches added in this section will be executed before doctypes are migrated # Read docs to understand patches: https://frappeframework.com/docs/v14/user/en/database-migrations +lukenya_marathon.patches.create_race_roles [post_model_sync] -# Patches added in this section will be executed after doctypes are migrated \ No newline at end of file +# Patches added in this section will be executed after doctypes are migrated +lukenya_marathon.patches.normalize_participants +lukenya_marathon.patches.backfill_bib_edition +lukenya_marathon.patches.sync_registration_race_status diff --git a/lukenya_marathon/patches/backfill_bib_edition.py b/lukenya_marathon/patches/backfill_bib_edition.py new file mode 100644 index 0000000..9c4cf78 --- /dev/null +++ b/lukenya_marathon/patches/backfill_bib_edition.py @@ -0,0 +1,12 @@ +"""Give existing bib allocations their edition, so bib numbers are checked per edition.""" + +import frappe + + +def execute(): + frappe.db.sql( + """update `tabBib Allocation` b + join `tabRegistration` r on r.name = b.registration + set b.event_edition = r.event_edition + where b.event_edition is null or b.event_edition = ''""" + ) diff --git a/lukenya_marathon/patches/create_race_roles.py b/lukenya_marathon/patches/create_race_roles.py new file mode 100644 index 0000000..48a592e --- /dev/null +++ b/lukenya_marathon/patches/create_race_roles.py @@ -0,0 +1,11 @@ +"""Create the roles used by race-day staff. Runs before doctypes sync so permission rows can name them.""" + +import frappe + +ROLES = ("Registration Desk", "Timing Officer", "Race Director") + + +def execute(): + for name in ROLES: + if not frappe.db.exists("Role", name): + frappe.get_doc({"doctype": "Role", "role_name": name, "desk_access": 1}).insert(ignore_permissions=True) diff --git a/lukenya_marathon/patches/normalize_participants.py b/lukenya_marathon/patches/normalize_participants.py new file mode 100644 index 0000000..f402030 --- /dev/null +++ b/lukenya_marathon/patches/normalize_participants.py @@ -0,0 +1,30 @@ +"""Fill in full names and tidy phone numbers, emails and nationalities on existing participants.""" + +import frappe + +from lukenya_marathon.lukenya_marathon.participant_utils import ( + build_full_name, + normalize_nationality, + normalize_phone, +) + + +def execute(): + rows = frappe.db.sql( + """select name, first_name, last_name, full_name, nationality, phone, whatsapp, + emergency_contact_phone, email, id_number from `tabParticipant`""", + as_dict=True, + ) + for row in rows: + wanted = { + "full_name": build_full_name(row.first_name, row.last_name), + "nationality": normalize_nationality(row.nationality), + "phone": normalize_phone(row.phone), + "whatsapp": normalize_phone(row.whatsapp), + "emergency_contact_phone": normalize_phone(row.emergency_contact_phone), + "email": (row.email or "").strip().lower(), + "id_number": (row.id_number or "").strip() or None, + } + changes = {key: value for key, value in wanted.items() if (row.get(key) or None) != (value or None)} + if changes: + frappe.db.set_value("Participant", row.name, changes, update_modified=False) diff --git a/lukenya_marathon/patches/sync_registration_race_status.py b/lukenya_marathon/patches/sync_registration_race_status.py new file mode 100644 index 0000000..1b47684 --- /dev/null +++ b/lukenya_marathon/patches/sync_registration_race_status.py @@ -0,0 +1,8 @@ +"""Fill Registration's bib, chip, race pack and check-in status from the records that own them. +Only entries that already have such records are touched, so nothing typed by hand is wiped.""" + +from lukenya_marathon.lukenya_marathon.race_sync import resync_all + + +def execute(): + resync_all() diff --git a/lukenya_marathon/public/css/lukenya_navigation.css b/lukenya_marathon/public/css/lukenya_navigation.css new file mode 100644 index 0000000..88628b3 --- /dev/null +++ b/lukenya_marathon/public/css/lukenya_navigation.css @@ -0,0 +1,175 @@ +/* Lukenya Marathon — shared left sidebar. + * Loaded once on every Desk page (see hooks.py: app_include_css). + * Matches the markup from public/js/lukenya_navigation.js (lukenya.nav.render). + * Do not copy these rules into individual page .css files — if the sidebar + * needs to change, change it here and every page picks it up. + */ + +.lm-side, +.lm-side * { + box-sizing: border-box; +} +.lm-side :where(button) { + font: inherit; + color: inherit; + cursor: pointer; +} +.lm-side .lm-ico { + flex: none; +} + +.lm-side { + --lm-primary: #0f9818; + --lm-primary-ink: #ffffff; + --lm-side-top: #06381c; + --lm-side-bottom: #0a5c2a; + --lm-side-ink: #c9d4ea; + --lm-radius: 14px; + --lm-radius-sm: 10px; + + position: sticky; + top: var(--navbar-height, 48px); + height: calc(100vh - var(--navbar-height, 48px)); + width: 248px; + flex: none; + display: flex; + flex-direction: column; + gap: 8px; + padding: 20px 14px; + background: linear-gradient(180deg, var(--lm-side-top), var(--lm-side-bottom)); + color: var(--lm-side-ink); +} + +.lm-brand { + display: flex; + align-items: center; + gap: 10px; + padding: 0 8px 18px; + color: #fff; +} +.lm-brand__mark { + display: grid; + place-items: center; + width: 38px; + height: 38px; + border-radius: 10px; + background: transparent; + color: #fff; +} +.lm-brand__mark img { + width: 100%; + height: 100%; + object-fit: contain; +} +.lm-brand__name { + font-size: 15px; + white-space: nowrap; + font-weight: 700; + letter-spacing: 0.1px; +} + +.lm-nav { + display: flex; + flex-direction: column; + gap: 4px; +} +.lm-nav__item { + display: flex; + align-items: center; + gap: 12px; + width: 100%; + padding: 11px 14px; + border: 0; + border-radius: var(--lm-radius-sm); + background: transparent; + color: var(--lm-side-ink); + font-size: 14px; + font-weight: 500; + text-align: left; + transition: background-color 0.15s ease, color 0.15s ease; +} +.lm-nav__item:hover { + background: rgba(255, 255, 255, 0.07); + color: #fff; +} +.lm-nav__item.is-active { + background: var(--lm-primary); + color: var(--lm-primary-ink); + box-shadow: 0 6px 16px rgba(15, 152, 24, 0.35); +} +.lm-nav__item.is-soon { + opacity: 0.55; + cursor: not-allowed; +} +.lm-nav__item.is-soon:hover { + background: transparent; + color: var(--lm-side-ink); +} + +.lm-side__workspace { + margin: auto 0 0; + padding: 9px 14px; + border: 1px solid rgba(255, 255, 255, 0.16); + border-radius: var(--lm-radius-sm); + background: transparent; + color: var(--lm-side-ink); + font-size: 13px; + transition: background-color 0.15s ease; +} +.lm-side__workspace:hover { + background: rgba(255, 255, 255, 0.07); +} + +.lm-side__promo { + display: flex; + align-items: flex-end; + min-height: 120px; + padding: 14px; + border-radius: var(--lm-radius); + background: + linear-gradient(180deg, rgba(6, 56, 28, 0) 30%, rgba(6, 56, 28, 0.9)), + linear-gradient(160deg, #1c7a3a 0%, #0a3d1e 100%); + color: #fff; +} +.lm-side__promo p { + margin: 0; + font-size: 14px; + font-weight: 700; + line-height: 1.3; + max-width: 9em; +} + +.lm-side :is(button):focus-visible { + outline: 2px solid #fff; + outline-offset: 2px; +} + +@media (max-width: 900px) { + .lm-side { + position: static; + height: auto; + width: 100%; + flex-direction: row; + flex-wrap: wrap; + align-items: center; + padding: 12px; + } + .lm-brand { + padding: 0 8px 0 0; + } + .lm-nav { + flex-direction: row; + flex-wrap: wrap; + } + .lm-nav__item span { + display: none; + } + .lm-nav__item { + width: auto; + padding: 10px; + } + .lm-side__workspace, + .lm-side__promo { + display: none; + } +} diff --git a/lukenya_marathon/public/images/lukenya-logo.png b/lukenya_marathon/public/images/lukenya-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..0ef0e1f1baf31a360ade36be76e3f5db8efa7b32 GIT binary patch literal 1387196 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

    EZQN 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%0DUrYUN8+oPz{Ptp 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 z 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%0DGh+KhR7O4b;3}>>?CH0b^%w9G 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 )HHFQtWLFXsdQIlEMS ztBDt>C*P9`!Qr9kU!nV{kn4_bGY4`gq+S3QIwYiK&v`hF564pZ{}fR=Y3!ZIZQDVWux()v zy3qiC_|S*&y&w8syzPenhBX|;@@N^YblP$ct4u=W(I=X^`2qa9G~6axjuOQ7Z$aObb7{lqs?cl-Ac*8dz- zFGHqGy8Zc(ZF?MYAN)&T{dOn@kjWG*$cfq616&ch;{XI$-Os#wJF%%ru*9m$(2k+R z+QR7CJ*I9C))kG%(0T}}hQz}GLk)D1QSBgQRlhx$pwOKItNZE(Xq}5IoQj;y7t$wU z#!ClEG#=;O!O4!R{RXBna} zEdI^5nn0LV_0s z1s!-}2;fw(F$u^*Ax5M&OfY70!vGtHYInX3)kI7L zHMIF9GOM2=w8u%ib*F>OcJje13{|KIbyf+OLYw2n!<~SxgY1+b9aNxt=66C*`9{Lx zMPNAqeeg$to8JV!=WQ^D{)}k-i$cQzR0gp1uFmd!y>9BhX}fu1Lz<1oO1B}fQ;2q? z+DIqDkd7RDXjeOnfl#dwSuY=tRFMDZT}FR7#Jdm%sOS}2X4;dGYe9V9qC5_g~^h0 zR%VvdT*O6HT#ldip7+MrCmQx^8Q#EoVh%?tly9FnfH3=V9WGfI{d|JnlK)WL@yLNrvN(F zFRMUjozb8c!EeIi9Y6%sO3=v!*IaQBKm3Zv@rLId!;^M*Q0r;N5F|K9qrH;B67^of zAZ3P5-$wQFz8K4RAH6z4J(Ag5#AurV+Vv@3aoIt@Mi!WYOmSPR zB^#rhl5=t0Bk#a##RStWj8I-Ej(=`;%ud4H3yvqLge`AAn0=X}ioLuEaw6EX0C}Fy z+vv5b^S&op0{AI21(B1)JR*#xqc+Z!v+_}H~#tk-2jDE@WMApg7 z_L))Vy`qUXvwxY$$YT@o2wgWP&{$WYV>9;D;K;~vA1`lrWRAP&1&Tsv|w}0qK^g6QV;k;rw@?Ua0^;Xx%KK3yJfP)*W zhbP_i0B3Hu;BQ>67xAR!v!Ig(Y(1{LP$@+}&E6|$IE`a;Di?fTE<2Ln6P)YQP+Pt@ zPxE*ut6JluOcoc~DCw}M%ZQ5S#T8|J|Kox7WkLj8;K5iQxj+RcXG>j^nMxXYk6jFE zd@TwSikK+u^o&<>6_U%&AWs8NC~_P-eV^Db&39r0S!xa?KhN^KlB|ayV=@FF)f+&i z_)Yz{)K0O^k`G}NnQ1X;u7fZjJsU{nOtWZ)JIxBm@ynER7(>b{29hNcdmW+Adl!wp zgdnfa{aAQe9KF;8sJ3XEDJnC>c-tP_y74I9`pN%>@BQ$9z$Xv>0~Uu1sJKF7-9a;c zoQ+k>t!<~{dSUVG9cR4mC1*Y79k(61<$IQY;gapIxZoAj>#n(u-}SC{)jzI3UapyD z#@s)r^KoYG2LP};Mb$YUH#PvMRSZ~A4g8*BSSYNLc2H@ccEb?XF+DoP$_pDh{iQ-? zV8x2qu7i$;YH0y-;CA4)Ur~Ja2SEFO0c_Sl<7WZOmja8G;_xBh$Y%gEbtigs2_#~2 zQ_*@6=#E3X4PaA94u6!`K0;==2x(4`P7X1;hM`PYzpLWSTMQE$#-Ju}&0N)_odL$I zv`o&(@fxB9R#>oa*m`3<69IAcW)3w+MxcVA-LrgW2W1>j5cUQgdDAewE3P>UH;3p1 zu%hl95mE1Cgp0Zqfc%WFfJ&3m5E&;E)N?6;bIBAwo+|>ZhA=RUnvCm;xCl(`)JJg< zGz4V=Xob)TAP@*kGInziazg?Pmq;qkd=OSqB2dBltr%(;!VC-)R0&|%&%wt40RR9=L_t(1@)HU_F6hA&oQDeJ6UD9U>|le6|1ewZ99s-)s8Z(r)LLQo z`BweFF&NBdU^Xh8_-xIsumQ+`m`nwt3FFw`0_*n^nl+g20jL}z)QbRuzY(y?uwo$A zdO=x3j@?g~tO8;oOBaAo{Z|AiNT*i1rlSs2$ttF1@5;6#gQ`Ai@@38t&Isg^I?*Q* z`Fn#-;|qmx(6_YnDo-vKGx{Kl3#6Iz^5PEj>Bz@sw$1fsBHVNYhua1K_{8fBVjT< z7nV6EkM^&*19pG46jq-v2lSCRr~Pc)yk(Pe-9_tf7Ur27?vrx7<)8ctz|Xs% zzdIjV1dDuL^C-4M&aI{J$M!g}v}&{O*?4D`Y^pHlt+2YQy#P^vNnt&o47l<@pP8ES zG#N9prYMLMKG++R=-qLvl7=m^n?0x+SQj?r!k zzV`CNc*iw|an3@E$-1H)SNN0Lw&Sz+ZpUav(Y5aAK(cTKlK|Qgh&nKL09haUZ=u9! znij9RYy2D|!-|>(H5A5+FU<#V4yDXqvw1{IN>j}6#H>IqpQfLC9sc ztHfyT43|Acki>x+qiT$(F{(@exCJ$T0+)R}BO2xq=wLA(EZ_~7e;uuu z0Xm(6!UU2O;2@F%&u3LVA-$F(xs++S*xmBoFQel6;(X>4(CD3pMd()6_7hXlREk*4 zDy+Hn%roL<3T_3#Y+0InKiDvt1131<6#x-zYr#7Pxck^0c>5QB4JX=F49y5u1y(Gq zScuPn(XQv6zjV&4-tvLBEL?#r#X@e`ruezTEHo>&)RC1K9lS3MDoYzi?SfO!b$>5zWCTbYcH^)dt9$b`>OCb=8p;mzAzz+mCd+%je*ol)I zjsd}aLFqrSP4}CW;zFSNXP~5L+bOzMu(-Sn)A10$fA0tI#t(fT-ge_JPssZTsQMF=?h$y!Zp0Hw_SvJwM7N>r5 ztGk||00~4?T7^|W#v>IN!lU;pZvLOpd)@{#`@v_v9=f#4nFf!1066+#V%tQ4X2^wy zLWs=hOrUE?r$Xfz-}O{i*88bC)3 zUL;YFimD3Gbc_`e>>0XkQXyQNgC#{l5TVD28lO8aycXpPx4eJDIT{t>xA=e<9Z`Hu z)y)?~fmZ#bT>ufyoQyyWEm0Ivm`ONMPp(zs?0E8x+s->d zE!sKCZS#F~xx0}NFRR+J6Obvqu3=9oAZ;4jMZJ#y_ zFe{8dI|#&XE0sZiuIm400>s0wn&CHma@1v&FagR6VSyowT|)tCFEohVN+AtY%{iXp zgg}-_iI}J|-Muw7?;wCG01ROk8W>FOAsqiZMzg76rzD&A0?os!SP1J}3JVhJwh2kw z0c=R@qofD_9?(@1nZlg=dXU+G-1G0jclf2 zYjhO)D8Ufb>I^)1sn@fDi}3VJkmov8kwrDS_hweu=V{ttNUO$4cRCI(Zhl}0k_yLG8)!Rq>lXq547c|_3`EJ5X}A?2j=bSeo8)gA z!i+Bc*o4&A&aObp!>7)cAOm!51-shdm6sgB|G4H5&RgiPdYmvC6Yf2SKo6EyQZleH2MmP~wC$bCF4v zosppeRglC(h+G@$RuZOvsE{K7lN;xdMXH|@B`iRDGtscYYO{vdo&PFaa{8rYt%X8B zF=?*17Xm-@^=3Y1xqOYo=(K-1yvc!?5K1Y^Fr%A92~kbYDBrX*AQ>&%Yc^t@fZRP8 zO}oB<(7!S}AtIzV#*{fU{festDI057MT$Hs1NL*7>_?Jk8EtsENYs;^MZ;lE?8i4@!rIPZQo{#o_2{*VIqNi6kx zRX9V7GGQD7Dtuf>xF4(V9S(Xg(r*r&28`##;});M7OD+wyNThT#`5;{A#IMi^3!rfY)ZkrY~qDtBGiEbzj%(^gLXmajbPE8cnQ;oE=s>fisi zGq0p8+pBT4dCRSDsWVjJpVQF@01UfORw#>}5?WPlRYwz1trcn&s8s8bKuMsLMQ5$5 zv`|a|JAvv{yNyn((>t8?ZHmRy6e^;kDynKbMW>2($gopDzw}3Hzwo^v98ubLIbl!( z#~)C+=QklI9#%{41nPkijA*LWSV7yKLfmWs)8o);M7nmI?7>ekL5O%jL>&mi3}v!P zG{*u65#9=6jM&kx>=1AND1f}SRizg1Mg9p}2ggnwN@-LN*W?}z9)umYz$`5(bnsX+(jwE45 zUXQTHi@=91ItOFt{;Gw`livl0sfK-b9$pvG;X0|w;E5tEAu@Enkd-F<^-&TA05gOb zAi%K8iO1}^>YR@3k~sSQs?VvVE>xqZjY8XV1c5rdhsaF_5+#ev$#GN$*t6)%DEu}- zQRX46IR~s_nV^Q4!8O>}%B+2%!epIMIr0^Z7-ore?FPu&Bh<9YT?ce)M@TmxW*VHL zsGJ@kf*KZ7M#1d{LDy9t`D5_$+riQ)?YaPF$N6aQ`B~6Izl&qHw7+dyp7igs$zb`5o1rB+lFENv|{hf+_}8hkFhf+f`K$b?e{#>!i+I=sA{3Y zXjeOY%?0cD@2`Fg=ZsEZa-v362`bZpIh!nJgfU|ZMY7Ohi)6o7WygDeXPkp4sbc2A z?4|RbolFE|CRPC(=}88yzi=}P%?#hsJlxEIaehvYEv~p1B$L^_x_uSFC&Y8cH7{4j zga1U_I zu~?tD`IXm}Loy$R;+-Hz!sC3|z|$B|I?=b(5nHK_tqrOeINzUtWv1KQsS_nO*KkaC zW(pL`AM;qO6iG9%f4NOY^E*R`ixx9-KhIB$`SSvA*YwrI)*4FZl1ZN`bNjZG_;Z2q zI7A4gX+P0??Ea4pueOholo7sG70 z%A(WpsDHE#Zg1>RAycnsr*MbERDKT-EC?OcPQ_{iYg-~}wOO-Rd1k9m`WBUioe=5V zG((|XYqV)WEeL8s^zf%)zwom#-Q$XJ4cmeA@SSSAW6noGz+hl7kPdvtR{$#)0c*Fq zt<+|qO3Tm#A0$0~J<+zO6NYYMLM|5z2#%1UEe0yP5?K1U%PRZtKN!PM0d2P(7i1;d>hv=&e?IzAt$mkFz1BAs?* zEvT_fGHsx%_khPwf(*C2ZDTNCWpHDOheO4&kAWU|H%J;1!!V~m56uI=33~VsQKJH? zApk#q1SnU)bVGG;rpl?`)lNqj+sgh z9^F{q*t@d)NL8CnQTW}|?jY=(TGNVk;Fpxg#BoDL6O@Laq;HCYk#Zs@#tS){f^F~q zYEPMEsy(crrQt^6OhT5uBPwW(Kziko=V6KpNyDQUwc%D0gQXo-@ZgoUk46BMe$B}D z38Eei&bglpq2A=cS1!yDR!{|W(+Zz@XpG}R7z~^Pqj(1a#)PvX8ZAQFQJ0m=v(&R|Sp#vjNMqH++Tc|x?Frh1U&IrHs?$U}yY?4z_} zq{KT#x)XAf-4K14ukZ8?tdLU;p$yU7e2nEaU#SqN7uk_VdWI4``4#}mqH0QqU>c)n z%Xx=$8KLFz1qFNIo{Q+%RDcUv1ZB4RJtOzC_Ch5QmpLgb;`pQpNB1}KzV>t=kkL~3 zKShl?T1dGr!+Qxo?yt25qBZQA!4*$FieJ3?Af!1CYb&>i7#9xRc1w{Cq#de(U{JL% z)Bw`C?JtlF<4ILJ-X~OGbn6rR>#x|4U;5^Q`1a==1veWwe!NCKW(*evrdFt0Kn27C zsw|9g3xkFT0|GEqy!L6wapA5LXeJ7y&e^D{k$&?DqFa!Vn9a+jSWMA7&bh;Ij#x&I zgnVZ_hqGVY$nB6?KwP0YQQ`c3tN7(_JcM(%H8^;505%4;s_^N%mhtP?@5RCp&^By0 zAfJ~pqiS`b{(yyuL9^Q7stbc_oHyRUi9=%$2+S5$)w=E0(3smW^*tK|Bw3el z84l5}Nuq^!C>BbrMMZr+u}hTu1&v0T5SSpZ2#Fa(eQ~Iq42nD-bzwNbC4bf%qfFdJ zfm@8BYeYh~vWOD#Z8`i=5*KY#Nf07 zM9rcl^V@0HNr+wweRd!blyY2AvZVsx6rO~L*-)DYg1iN%v*=IJa0x@XdQJf*8f~wf zdEG&81iRT`yki$`dFV6vwVQq$>+L!QW`JPR0stkYP6QYcZBH5R{rZc}zw9MMge!1w z^q~hQVE_8xo%lbI^1dzC_UmAqc6#@un?6q9%37-exE*6wuybiAp1$X)kc|z5^9(}f zt;BoU`J;c(| z4&1qVAAaJ~KZiH|<@e)*5C1KehKm^R5EDB^XFCXlnA|dS)3wdejK*gypKW!a&V>Rp9`lnq^-)_sI8-vqP8eI)t*P%iO3TXw} z3bYd#cL*M!osv#Lm;jg(QNskQR$JQhDof|RPIxpF))qwKypy)lc1qfSAQh`U@Bo_o zzktqmu!hxIf*J!XEPw_IQww<8Hmc70PKd1`$8PZo%m9N0;^{*whyH}P+Dq8|d=e&t zb_ByrW;?4cGLfNru#IT2jTJ)%FA`O!5t$WLa*>6tb%b%|HpTXlMbiO9ap`>Sm5j^m z6AZO1;c+nor0iuyMv&pQmR#j`T&2SOi{{@iq-)tm0e|5CP(Dlm`UMqnJ4uus;-W#^ zcc&c0AB-Gla(;VtNL(KyG9{TnbCBqqia8(*z$7@`WQ7rSeg#y!NYyk1# z+=QpsTm(VAAXa}!P=kEq9*RD7yP#_T=lQnI@G;wzs(os7%7zUC1_Mm% zdU8XB$-{*4vgvdgojHx@^w+zs*(YwHkcP`D!?r{?_F3g>59yv)xxTcPELp<#a}>)L zLhk!t#On`2YXx@fqVDhwz{7t|6$pTF8@R0ppDUQjDr9h;>RCUi?b26wO$Q-N8q#)M zNhTuNSnw1;YlR!NXd#_d*iK0-*-pBq?UcDa)S%h1ZTvvR<~S4ge6rqT%q+V^=skif zwTI3W%k7zB0R1=0?&J=OT=w@`?OP(nbIR|OZ${HyGcN7ZN(uIia+zCq)NsCJZt3UQ z*a2@C1jU{iDs$k_-Y47>wcy&|BM&a&u{8r2Z+eJo1P#2noB zoF!??Xx=XclQ;(}7~KiRw>|R&e&E^1(HxyZQ8{OQaM%kVWH4!KtnD{Aab$p|t6^CI zwLPvt!JN)v!sx)b?~uW+v4V_S4A>M#J00TK#t7@v%5C$mD^NX#qQ?5hA|{goUh$Np zxa_nI0F0w+f)ks*dht=0I>(jH0%D-C1FWq9?M4UE3Svx&;dufjdsvbfAu57OU<_en zy}~Ig6TI!~4&&mz6Fh#jLR|?KD#fGgBmC^&@5YJMF=$|6J8`LK9Dp%RO16p$wKduk zz;m9oiC=#GemrUW8rF^zD&ve0hJ}H^6g1JNAzxST5s(%W$|1|`yxhRp!o~r-7%x$! zxviHoAOOytT$=L?^OOwJHW9Bm0eV5J%LUKpWe{r#Ky%g$KxRV%vIV!V47-u;<(;q&`%02{a9 zV%4Rv5Q&pWB^b71yQRV6u6;|pzwNId{_7_Zz0O{ZtG_JvzMKOwY@z;g^#H)N*>>%4 zNX(Ju-~;RJ+Fej0BC?^Y6KSwxw1Q`zaw(wV?2e$X`(memZDrcbE6@{@l;7{!D6=+V zCK6{V^OsA-??%_3N~dW{;S6M@NT>M!Jn2?+GmuN(c3)K>^)FYQ{a*F#W0a1=S$#6E z6En7X4>kF|Ez0h=E~LW6YjMM2X|*_~9`*RL2T%cwzgq~HS)!sGx%2AuiaGo63Iq#N#lkbwCN+i}otYB%l16&!r|Gq!R zn?C$K__6E%KOC@!ux+%0)^`3NVujamRVQ8Bc5S)avh6xk51USzZCiKd^zUGnW5l<=hq{fP-QI)S*533&8FMb?tu@0PPqtX`*Wbj?*=AE!Kg@8NlArhfpF+UDtoUcbJlCs z9{n`*@D~9#gr!SaR-Q>2rV%{v*z0@ecDsmn>FDD5<7QIvg$w>8PF zhA0rX$&v!f8BfP~g~mQvUsybfLLM#?swXO=DYD!Nab`PLj%DK-o{I-6jH|-sgY=IV zjnb(@t4#xtgg8(o=AD*!NEJ4@<3YvsSO$~NSJmoAj7&C2mY=FP%CUr*S$1-2cK?s_(`^GRgy`xW5CV=j_&TtmAKa`Z+b zW))Nra?!eAa@+E!N7ODpO>y3js$G0e*LG_lG#wz;ZqZKindvE|XCa@CTO{*1Ln6HS8X<_d(&6c)r>b;BN zWNx9#&LO`sz|;!<^UIIo<^zlPtJ@YaSgJtXG)8bs+hO~H!3F!)aO@y(*Tyo)3^AxW zh!s#pP&h}P0`BB$a(M2n#b9BG-~H@%T>aDyy!ffdv9bgBp09iie|7s5H3*mNTgTZu z41VeQQ}MaG7O=ED#j7qqfJ=6-;T2C>#aVkAJpOo%-@9Qi?m4_2)uM%1brXE`PRAHF zrXXT86N7!jRebw%4+7l~zjfn2?C)xq>n?=4d6^waJYy6_nQ|cNcvg@hY@A^1tk>|< zuRVxYU$TlrhYTtRxN6Z32!HX}AwGKRGR6xHnzjWhpV%StEc=OukD9b2w3~`&U9gUK zzHUD*+`fsm;}r%&3xb95x%vWc18x^YPPa+6WMtAaSz?qU^%jhr!s^jlUV+BQUP;g0 zR4LO(NhZv&Mn;ci)skz6;1J2=5c`vr^Sd&isD~mhL`mzH*COBh}sl#QD?4=tgl`l<#JlWapkOF6-NVc;i7{~e;pWI z3B?%B5idw9HmRa~F-+7+<+Wx5SD*I^{NA2F!e2c0QFN6h7T?<$`~WT@HHffOw+h83 z!W$u#L5MVhk4nzep{r5}F#(^>w3uXPMnjSOGUI`wT=hKXK??6GAK`GRqB9ijA;!R3=E7C_)k(oO{<7=hIA*cQPRb&8Dj;joZ;j4NL%mlS9>ZJu7 zIrb=i{>FFXse3QNDTAF@?>61;DrFerXnhf(YP)v2d$|1trw`Bk`fvN_xBcQ3xT5_$ zK5zD8zr{(ef3B^K*ZTaBc_if@@Bib2-@p8WH-q#lQc_U?5mBcW+Xl+uT)>W(cJ} zsAmWyNj^{Jrlx!Jk@YF%GcN0ji;i;^3}UI7N2!yP6^mwx=H+skoH1Sz?BwN41U7#= z9}Y_Qv+n_X%Inl#T@+#=yj+SVRIX^KlvP;^DMd+^UXHY|aOY^n;wm7H@(GE=B<-rp zP?NpY<9#@h6-5v-5utr}JW&-BJuMN~Z?F(Yehj=_9xSU6YZ7IE0#GF-(XO4saD~N{ z-FRqyKYr>T{u{pd$QSW_&-re==+x(qYSia!4 z$8Y~-`XTyl{5;lo-nnzAiiU|)Gd%obE~jaa_+Mum!A{?IX*_Ri3dTcqTdJ*M&I=SBctOS3sW6c`Bi30AD&h{L zv<|scGcXZ?tN`bIFXWUL!)+;D1j|v7Y^HqVDj=#r&7&-b-VZx@n0e(qXuV8S?;=@w z2I=55(D9EG9{5?pk-s9tmcS!boJ!26x`PqHAYyGSVRzNy?1d@9ig_*<)1}4tVjDx) zdQd1PD)>FtLA`>$TiO30z#meR-JAoB`xFAeiQo`pJ|{P!FHqP{b4f}Ot;4WohQcqE zjOl!IqbS4z)M<=tES8yb`zI<9B*Tbv+#sfs3UX`a^3jaYv(}p=4|Y2IiH$i&=a>2%y!jn&jvmDhf$sXpJ1`1a{MkR5u^e@th#p0 zF`IR<90~(;Mlo53v=i7}FM&MeC$(96j<&LCi6+8i8#IsxfU{+i7c0=&r?u#|E`|xMJ$Owu)w782T^{Ma)xJ-s%r@ZXYVL0JKak z1Y4swRxyM>e#&7)fFt{avSEuspBB=>8(~g`vD!Q>Kxs0}d#^|HAymKUkH=v#f$*5k zo2RT!ugNIh&bKrLd{c}(Yyql?n>a{DJ{hA!URGU6}?XucdNtD3E&bd1h>-%D84 zn9?ugb~LO$H?6vfvR_6IJJv#d@eqfUM5<^vq#n=!V;;`vKMt2Z9R-snr==#j?Flt* zK`)pELG&WuTBfrKagLLNqT?XqDC6^jdcp)J%J-6|gBlD6z@$10bR(c5W0={}K}|ux z)PcBziiK5zHo($w6+i#lhw+qC*3hj1Wa@Zwr%|AtY~Wj7zJ_#weKLOZ@%I?o1 zI*K!vH}UIdW zo_`c4ChE^sQ!EY@_Z}SJZ6Du(fiOf`h*$`x2(cuG)h|v~=%$3HpEtp~zwselw(B@f z9Ai|h01LS4z~mN9${c`R{$_SiQW9W9wZYgk$GQ=mKvikm&4Uxbm*(jcoRQ#SjEa2HJcODvzeOJn^P9CLaGxpgb=l zIj7^eUd9hT=R0ura38v63hkvBC~OnVPUm`ac)zpp2~7K<6Hei_{CVk1l!^G%{}6GW z*B$%T*9kdrGXO``lbL6Uq2h2571i}jz1Z<6&b2hdiV*!AIXN9Wdqcq?06z8Kb8@mg zedPrmpEQCj=pqHk9ROsf4HozA#-DxZPw?S;Ka3WwcaG%J(ElT1fyJ;IR;MlPd&8Ta z`n}H~BD>>#JLooCd@_UMU*x*@s*6=s=^cOhjDCv|h&Ie;({@$$rgV}=xy+)J z>j(KKY!gmR_bl}Q)u5Ga}-hp~J#{2JiKi>3L-;bZW>FrpfBNz|HXr)6;Spgy54~Td*+6yS4}q30gxFOu9S70WZ=aR0ZbyU))EodF z`~%?ePco@xWdkgq3xP0>ev+!AA0;~SVdCk-FlGdzB`}{tj`-b_rW3-hO6aVG4lt@< zhE$ve8#&W@p_Eg09(qxzZGT6TQqPqo0dAr}ZuORZjzZ2Eqij63Fpot0EjvQ>262(= zurxRj1ajYCCAi6wKiGv4WQ4N>Dqm%YL<~`d1oF;CiTj)5%sEQsOp170WyZHUS7CYF z_$6-5wrFR14+wY!frIzBXfPQ_rP3(WMj>R9GRmOx%x_GGGnZ9sW1*tnVQoQ%6=oMy zD^e`-U||Q-@qegs;xmS5qzWb+eu&$H9|OTM>l&&Pp9iTWmoq|%!^!Lx#La$?J%Mh$ zBeQU}a{D;+o?ie>rv40q0qjOcY6%2ZuptrvlQr1sD%$Zy&?o<}(#1ccviqgb!9c2o z1@Lg>POo9K#M~)J)oP~-t6YgdItF!Q)smW4NvupKDrD`NXlH3)w%65>o#Tc325cHt zVHX0GT_NRGf%eh>4dsGDrA&v+(n5d2Rcg4oYTMKKtie-`dr20v1X;`#oF%DoHd^Yz zNKlf2c;NULTxE>e z6E=N^UNk;3=M(ZWd3%MZbU(^%ZwaKV$P>IYYWv_Un^$DM^mG!rA0-)#!9Hw7R3qk0 zigS4r%$0d7+fl&Gxg@n!b|7&KlXF1MyR=W{{e~&8DQ`AKh9Zjwh+~5E(kv!>1D8DX zCv`Z2Qp9NZ9qA$yx${mFEm(KXmD6gXiGE>1nM-7zT=7oyVC+G_)S~7FRVC;)6c?Xz z3~ztk0c;y@pxvxNTsi$WFxb!~yyqX5@Z^0%{HK>6#f4`!uoH$-?c`V(?67iX6=Vf$ z1v+gpV8$QaRN<~i8E6=7TVu}{*tei)ZH0ECc>OaE;@AH5UHE|)Jc4}##nH7ProuRU zobZ8LmT~Arg(0^`N6F#_8X7VHH7`uPX&-7i0ZZc1PQs;b5E&|*~xzxEF+xc`9_ z)PoL~S~q#oJsCvl|DKh! z1(VH1S&}ZZsU&(YXdmy|Yf5KciTQS8|9UxpL%ASBOT~z=njIIag#px1JwfQ+2SVq| zhMC^{D+kLEVWXMgtIxd>XYM#PTP!Z6Pu{IyeLm1MMqehRSk?X6&y5D;eM}sfTiSvajU-OW$YfnSI%FO`eKs zhKDk2<<4Azj}D$QL5Od;4vHwGGB88nXFl^Qxck_BSQw7o0bu#^mWv)IL&mh$Hp`=> zi_Tcw_r?$1^`SFg|GL*V*W7xMx%S#?X{+3g|6EsyYP=TL>NU7V-i>!xcq`;Y+upL; ztlh(0)gTBH!+>Es(NmZ9;l*b@AGT@SR`Fsk7d3N1KLMMwHZC_N1n4?;(|R?5Cn3uq7`@D6yOv zFY+w`!M8RKh~N;NwFUFG^V_*?m+Z(H2^Qr`Pu&HTlMsXqamnYGhb4x-#Hhh}*U2Xf z8Kst`%P>py5WGcQK8i6XhGe9o;D-!3g+>JdbDhg2<(9M2^f&A_Rkz&(wrgOj3Zosn zarf#y`0-EtfB1KQ{p0xDksGlv7=vJ7#rdIJV3rzD%ObWJRio|a>^SSq-~Y@vzT>xV zyzVPsM^9_6#kKrTji_eqm}>kS9TIe^*tVcYW04b3Z5898s<`+%)mn8#tqLrdT0@wE z>;!7piMuu8X0thb!@4~3XPedJGn<5a8X4?q&6)qP8(jX2c69M8?P%|kt?N#Q+Ul^i zT8m(~B&ddhs_9?`q}VtJee^xx<BL_*m@W2i4SXi;sa7W^e&;JpO}IH z;cBX|4JkT-wnS=4tOao=#1^$$kXl%^To1aYRT&vbwOG;W=8^TiOUw6;*_?piq3i70 zr20#Hwm(zL^9|*t3erd>Z^+jXpE+YUu3&0NfE;SgEa3TU?FTnC7M-4MI7)b9C~SB? z5Qj!s`UY{38`0LHvb_jvm;|yWUY>IWrLI7lM8rM>#xL=nn}p)q65C-g0B(Jx!VQls zqBAv6CA%^@yfX2X&=t+^*j*o?=z2GY^%S|DjUC8VpVKG0R72FGCVy_eKob2lNKUG` zllqg2f?1Pm3+S^02xcoR9J0Oo`v=#sYPJRxsXfc_;yy*+Qn4A}HCrReeOFPo2HFaP zP*}^E@bqCI;lLCiiPIFV*#GpLuqdb4l-D!oinz@9BSa_k!d(2p6Rxm${%7?cR+ym$jV(TQ`xw7{{VohgfLQNg6o73Pw=$4l03`s8Fvi=ac>8M) zIu;-0yZzw=17 z{*`1xx{8R#u-KP7sDgaUghJdyqrr)o4yKBS$P}VI(*u4m%V_2~GTp_MBF6?<0_y;@ z`5r*N1QX8-PL@e7y7F-dB6VN}_}rtn;o#;GpsL+sH`puna`7+Z`U*qq=F%=KvEZhj zDG}N$=$gkbmeWoL+^b z#{~)izyF0leqf{BxZV(hm@I*mnPIiV%5Vi&o&7?rjCQ){DDtDENfQEr1hR4Pax@)| zs4=}>pPO=fIPS&{m1ZVN6q$q+L72(K8B;oV9<^UdWdDpj5)mtqgl2@15Dv5K%ekO3 zoEehQc|PY3Fz3u(@J3j?3pTFzAZYB$%$3j_kb*ev$;+oW`Y&?@+$UR$^1!Ne;9l8x z-|?QRpt9mE8cflLe)pDFkoovKJVx&Z!T=Whs|kiU)cJGjwd&_-v3pR&d$AsMILPE! zYA?~812G7lFn-C_h&agPV0foMkAPG>(Fzf{J;CLG284w%7X~R2h#^)WonpMO8-OvL-GB9c_`Q36A6?a8WQOR(I!C1nRFwo;b++qRNX}e7^J~8P+^>AcpWXez*AP($ zfZw8T`A0`MR)+u_JvyWv-r;zZhP3ktuv!mj2LQD@g$SfF5t2&O!jiTOWvPwntY~K| zX$fcnY*^c^n%dMP$Ak`k1UPcEf;*UqZHD1}t6yHA_(2Bs%e1+0_7I!5E$*Dwc^q=N2jn zL^$NvxfM#>CYbYOo!ohY7?`wLlGh(r$~L<0&0ecZRiOjzmug z{)Qsvrx znn})$1mkpVwAt8)WCkB?+DR}6W-2>PL0CmezjZ%}s0g7C7GHo(LxgCsDHP6VFtY|v z@Cj|%R`JUV5mG?NnU4;Ix@0V#zOw~dg^#6FW(CZcv^pQ)G1Y?;(1RZ`)%12H9TO%U zp(RMQL}usZ+O0oIGQFLE)?+cKH44sXC{+*{pxS-8c564Ix%+oeH3SR^Mmx}+XMsOifvE}j8S}SP8 z%7j!m$w)_n2Be*8rzEhQsI}aQ!dfM| zwf6|7tjs+ZP)3#o(u1FJ-r)32@A)NiyCZ*PhNrR-|ME5W0njhQlNn9-V3=Q}U*5~6 z8()s)=fbQrU!sC!zd|UUSwt0FDRiCjw|6h&MNeJFp3x?{Nv6|06mH9N*)S0m5tyXd z%G;KKLq#vfciz*n8O4Od^diWgnFjK8>P39T_Ou+R{=KtautH?*CbxiX9R<6F1k zm6uO(-m=BIU-YY>Uh2{xdVGM2)#o=>mmJczxEisO$AF&HRBEXLaucN`qyr~hsr)|y2Oms{AWLfP>( z2|zwfO(7t|n6`|eHuz63I*wOg@;EjQ84QfmoeY`H`?&=zN$xqBiF7DbQvc3LPm-4& z-vwfgR$0`B!B{CPixiz(ZK|bU)HyE{Fi=*k56`UZU`?6HOCZ9Jps}N6S;CylfnG~n zG+6*YYX*4yY!w+E$94{0f^0y-L$3frV(@q{Bn<$)2ds~0z*6x_xWu~Xl0b1vKxGu~ zyx|XV@5ZC3hP5+$INGdbC&R56mbJxB$^s$f?^!%~V$ss!sJU#*l=aMT^pr!c0cP^% zDUy!pjgR)f>+Jn#5caw@FDO6MQTXTm+fLY*x8)Q(-HK4Y(19KDx5Nx9u zudLuVKKHwL$?4C<*PQoaXd|%fPgwU$i~eOJD&4ReE$my^`=+1x>Yu)u&ZZB4?sK23 z|K@#vL%0Spr{cBQfiC}CS6=6B_!U)ECZg3hAN{6(n4hKw);@2q2g&P_WIwlxHYKLbMs$Hu1bFds|tp;E@uC%!Zsuu}RQoBlw zH5EGnc%U$+6PX=qy2nANV8s%Man?$Qrz~&cAC9hQH6qf+I-!(B=V^Ze?U_Y0=83|^ zb4^r-qJA|dEj`5CW5{THC_MVQ9{RN0B z7lzVV5LD3_C0=CWA*3T>suVCF6=LR)Ld0!cuPTTv!YuE`^zQdUP8=Y+Krj&Hl_$fT z|7NmF&jKyH3Pb{|oC>uaaO59Acm15|vFizRH>$RSERFdxoMwABsUZfpq2 zhJ~Fh89PFR6WV@*Xf>Io$9R!HodbWd8{Ppf+<0vgLa zh^bR@^n2%T?GdZGKvpQ8Vx*>AWd8z+Vzva%yAOnbzLH_*OD-C?J+2x(9RGQ zm|=y#xo?2)I#%PLi3^QO{67d3;VVD9O zfmUX5N4}i;askINf+=G`$;u|9uH>hJur)+Srhb*|-q@w>)2HW|2sS0X(TLb?(X0@xke zGaL``nFqJwi}xSHlP}-ENZnRXqlB>PW>{fWz${oES={{C7@xj#3~4G1hS>s+IGhkm zRG!R=%}Iw#&u;LvQzw8`H0z8#CjpUdeVWW#dahfNCmRj&Ewi4@6=5Nr|fS*+V0)Ns8q~G%8LTtoI@&d8UZnyA=(B6 z?K;qCjN|J^@C%=RCoVeWLY%#H2G*tCS~+=byQJ+IPL{bMLzS ziYu;o=$g?rHRhRE|3cSAxJcjq`F9%t?Ssw!FYah|-n4JH>lKadCIK;R*I?h`9=zuK zSK@E)|9cQII7H(V1DR}tG>n<|Tq&LH6GaxFUSUyOi-neF< zW#&n!UWqiSbtn*XPlQ2_swBOvS;fJIiC`4GlVoJ!Gfm`E))O8F`~@2$o={1dY)!mV z8f~+cB_1txMStf}vd5Cd2vj4EBljEdEh)Sfav%(@nQ|fa0Zt}<^{TgL-rUQd0fv69kMHFKFHSx$S z5$062t4GyJ3ns?m$}Svkj^meZ`c-`K$ZdG@Gv18Xoc=O2ZA()-g&{+L!oV0yRtRMG zE$lgu>7t+cn+HBx5z%j{YV}sU6?p6ao@{bra>q2&MN?%nq~K@-0F}cE9jWdzf=xgL zR;3dttV-J%v5f*7VBIvVYXq#@w%X8L&!6Cwmrg-DJ21DH9B#WuKWn?&f4!40{=3e8 z{=1>K{Ab8L{{uMqcdFAnNxK8U(hG^6^ad5IK&uh-;9Zc%Zy>@@RhJOMM#F>(0t~l- zhi3u{7ZL`$NTmg-Dw!HY6+t_Igqb#g_Ay0wlmNi;8KitF0D)n5fG;fQjD?miUT&0H z7dux(=LI@*`llfHl3IF~X7V@~S%DTa`k}rPGY%9Xr=;TQ-wHyhCnJ&o%)pw*G~sWU z`D*$tT5hWV6O12{m}k;A{3e7qQ#JvG?4cAV8<9ZbwSa#21Kl+1}-FHhhp#~GSq^OeS~QG0K-;{rU9e{ zK+L>G-5u|wdb|U)c!{c6B#nKU(A=&BOIX#dc6IM%xC}=1DOOejQKqS>N*K90?KYq=Olm4soYdQHmW(k7YH$NxWX ze;#k!an%Rn-&M8u8SeDneS@Ax%bG381GYSZjqPB}JOq#!LPo-nK$ zlIGWBXhOO}Lj%DU7@Qcev5m##0o!0>OV%t|v-IYB@44rky?3qEf7G;U?{lA>4(TnO zchA|ocGap?YpPYNR$=%cZr2d?qJmM|TBM)#Yzn zfCX^`W|IS>R~j>_-j)4Rz$uaD&!q^Q=hI0<0l(tii{CnE6a{}D?$1rh6iF@WCN;#L8xQ4`V2X92_nk7w zACyy5R?!xsrl4UtARQ{iDg29i?dP|KmG>CGZ`7@T1x2x_Wb-ew2DUR`*Wt&%_Az|h ztM;)x-vD+3!;I;s#bal-@Z-O;jU#Ko%deinbPmF{r>rBdNKmQ-Qv$zg^F@U90g!6Ro+U_1$XrDIa&Udjg}0GMH!(9K7<@x(6v`YTQW z&H$ajT8FW5pqlW3yAR<%{>d?n$HwnMAV93~YSe@iA4CxMXE$?;OAqbipMTA1jIaPN zY8VrC1oUT6tK@IswYZRBQtpbZQ6l{sQ7hYi) zW>S_z1x;U$Gb!X4QlIwbCmy z1T%f{Tj2YI5Vz*UXAGDvn8`l{(-qzcKTz7)h>S4DExnbo_|^OVE1qedLuE&PRE?@W zy-kRV?*;ryeIDQj>s>wANZl*;8kC@GycBkQqHQ_gl|a=+yIIy!k8}=#_~7SR(o^q# z(Lnf_s8;j4a_YvUW<_W84*pn1bz{Yk;!0T%G>pceZCk7#+s6AIxC_5|-#f72IV!5* z3dc=&j|jqCfzh5=zvRnbebuYKn(iQjTj5ULb<&31ik}Yw{C8a^aZNIEY^H3bGUE% zl>EGkq_VzC`P){l%dL37JV;D6__?lBu6#K$rf6%iXfX3$u}>UXJZKmg-oqXDq=&Ma zgi8HY;#ZGJ@9XEh%CrlrzY1X~l2y__Wq0B29f|K1DlY=H!mtS8!@>;Lbr_GPsKzzk z``8EYLm&8`@vlDpZ?R8%*c@&6Q|1L=Fj&~IbL5=sE}33(<%^Hq`quY8{0HAmMBT?u ze$19e&*#3<9D;dE0N@yJiQ5`6ABu;=Gy)ugNGI6qM8=kdmyA)%kd9$pD`PAT+&+P3 zMzBM`jN9ct^K@n|{i+#nzjgsPZ7`a)Y&P1?tUK3`!|s!gp8XTSL;pAAGjAc>^FyEq z{*mx!{|)H)mqDKYSK*vbfR3krTc~{sQeO*^u^6xUgTdh->n|jXZXi=%DpYTSTq_`- zD@-^Yg-nncq5C1&ARgCQpwH*JrHW z_u)uHVW|j7t!`?;9G!MC4~&VcE4tE^2CI?_8o(s6e8JLqQKCc1A<~J#m=l4M#6;r( zC?XgePb)12kqIG6ePd5Ib@0_==M_wt6I%MM+%Pf6R*1ArI8*}{qav7mq)4b+uga95 zM);MtNRXY+&ezEfsD$bI!=SZV&~+Bfby)r%!Bp1^*`s8-CxmwHvY;^;I}$W4(D@8f zWEwKhya!l5MYQ=6!uWEDb})P%F*20}Mm4y)3TC`6?#W+7z5689HN;e#7`@>8$gEu{ z^7OwE^XQKPfA&3)k9{BLzW)=|`HzXk98yimRa0QP1`r9KIwy4G4qj}0X)|9ec8!}| zaL(;H#y&f@-w7`mvUJY10<@+=D_C|GrjypWWd~kV!oV78SXWP$)n&I<`$sm`ADmS6 zE*Lh6ZVE?<_R|jxC_|0ER~{>N6|La1NFtPZDre1zlL9FeQB*X=isQg8%=sF1>x8UI zhVi$Nza^1x)-|Ou-D@hLD8F4|r|-KQT&$leTo-a-^{WDei2X6%_s|BOnN=_raALry zyu&d8l4TgH#9|iy6Q(gfqDZ9J!e-%lwb-ItC{bi@Yl`sHlZMrXQ=DMy)y`yd3>o}@ zOR`xKEsaQyK9$zs4No7m!iLPmmU1#CLRIt_;nLAb$$^H1hSK3y;?5h|GBCEi3eZNl z^w8F)!jevMJ~D!ZDRQN;2snBd2Nq`(lM?3ZxeZgy0^;IM?tfZ7VDY+G!)FL&%5r62 zR{V_3N&X?lLl0lr=+^6ok_$syu(M);HaH!yD|u#=#^OsE`cFIq@yxoix^6T(ZMzr=L1#Bv@xPvFMu&<9SB z@X2QmgT@t5HxMHbOWq@;$%hHl2@C_gtN~Pb=}kL$wYpC(<$%fsFB=$cqA42)c%_=9c)IU$}!8UbVpPnK2mFr%5(Gs*|FJEXdO` z&*2I?W0e?>w2m?&uJ|IPoc|##nUrqOd7%gZ`9qy-kdNi2K|+yECMv*iJLQB*#VNg3 zY#CSbIVic(9$X~`6K|83*AhA452X0`-eh1&*zE;H&Ly6#B{GKgSLR7LU#!#CsljFJ@T6 zR235L<7LzbKz2!MT~E;n=z%JUEVQ+xv9MCRr9uIhA?KG!YNoVhR0C<9NP$q=G)fl- z+M$#)GJH^w>A}~khdp}FqC7@m20DxM+M_Kg-iq{;9un9?rlaMM=r_I52MTdDLAL_< zpp4PxI)3)g|4;n+bDzRwG|meEDLFyNHAiGxX?bn5zJ6qS93(lgMtVaQWMdr4@S#Cn>ZQ_53j$Itc*SSh+)DY}2_RAOLIRWnTRF(J z_&r4xX4@ww%1&KLItyMVnJ9Y|H%GZ%O8-or5#A^cygrc9387G|e7I$AW187VLZLS2bR>b;n& zF4_nWv@IVgobr#f+(b9;R4_*E}Cam!oo z{LFuS!^`RA?SJ_Af2daU_`qu*$eshh+{js+4UR?t@l(t}Gj|CCFl+4UFC<7y*#9tW`>cUI0d582 zgrsHiNrw$;L%^92L+WGT>5E9j3SeNYkg*Ix2idp{X6uF0oqZqS!MBSg0863z=C20N zpOoekKT2}{&p{si9m2EskXbH;>Jg+KgUv{|Wr(c_ZY1uxGr~t--|=OCf4Mj3ed^Ai z6K-eD@g8%#Cxm&|$kI922wdBCXxq+ptz) zKXUkCYpWfBm`v}Styqb%6mc-3;2dCDS-&MwmX3zOJLN}IRZ%u4I>?G83;6I~xK|QM zutt*MkX4cIRZi%f8l_+(M1{2iTtwrbzigf+n>_<+#g&T0exdAB(cbWF5DdgI>S=}d zK03hz&yM`|O)+q6f}^c81Crp;hFIhe-493+0bN2O=}!@%7t*wGLY>mE5+b>d+p0+r`bUx;;;Tz4_`~B=^QbtV9h8{xEku3V(WBx zBjcD>+>7@Krf0QgLkO$8l)6j7NL9}C^pO={4l9d}ivXUgI`Y%1_7x5H9Fu^jEv7K8 zlwZjsRQ4@xk(aQ9mgGgBfFm3C;wve)8#DV8d50qrU@f6rRJi=mIsBV%KaJxX=g~Db zq{3)0TCefzAKk!5ADiINI>CZbY)c?`+tCo%5ZHQ>ucm@iI}`l=Lx(Zv3bqok^CFf* zXsqjidTj8=kFVj=PfP(*!B~Irofv}<{D?FFA}}y$mxNnSEb!t>7r;V%pce^99H<6R z19v~Oflr65EZPib65CI~9n-1fxEj)7W3H;(czl3wm8BD4P zoHz)y!_ikJK;_uAN2f<${*ogv{rana;q?>T3U}9Ccm02ISWJwdybE^`0Q|;-|MlK8 zvvVKx>xv|RVMB&mZZWB*_^Ru_5?3C%8trTbvN00hBxJ4JnLv60rcdwE``e3b%|YFg zlnbI5(Y8^*Xj18U4wr)gdi0QJsYiUG?7?CJs2q_Ajy%VY`5JXA$)wO96%n1}fXLtz zyR6qDN|w_qYsjpc7cy_i0Ji)+k53^!l-lf%U)CL^VoiraDMd(HAtn(Wo=Kc@#d3g% z3|*_*DJuD%1brxdN35nv^l&lIiUo$Fno9ym!XU(1Z6;=mWvj zpec9@czQA_RJ&5<$0;i_!*znmWD85_@PB;jSLlb|^N;a|r~VjQ<4rW(G9+u}@P-&> z*BxIwa?=-GaobP)_{V?x>hHSkyWCskEoP;DUvU}WnEzsSC`LCLvqLwy%UHM(;dKEn zn z7O?3k?5rW_gov38G00osfa?Uj2eju6b!PxJ<%A@gB``>$}6vi_`Szc>;d-9vbg_ZmEJ!{Xlub)YX70AFHM&OZXsWN z8AD+^Q!;Usyfc8YfUyKJfVBXH5GRSDPKraa4K>7#HptUA$?RJ)6eV5fqe?=wWmquq ziEj<^sdAD(9PI<$StN$mVtm!b#9;C#a2}p^@~R_^ES3ZiNQ4E<5FCOV-v;3`F#C6r zvlW@O!;rmmWW}S!pFHKyP%-m+{C2pF7n9JG00Sc=#xh)W47lRELDa$B^UuV#dk_&Z z+s7fZGidMrIk;y(1~(&gT*K8hxURtBAgv?m7;Gzuv*MmP$Gr7gmg|0^ozwOncjtEr z&2A^M?}+Ctvd`k?mb$rXo29s}6|}9ubuF>8BkE*QyY-g1-ED=IGsYgUzYqNTQ}>wb zjvajjBG39GEs@jg`Oqsr#43Mg@r{(4qa<=M4EtoR6wOF#V?bFwE2~GD8cJ{Xgd0Pi?i+AJsP(Tr2PeQW#+GsVyv0W! zUdN)TVU2*DpUe~GMTY!-MnE~K3n!Zj72ELAR^k*1vtj^??U-3MCfg+}F6jA~4Q0KU zO0iJAtHgsobvQKMD;E0Z#c-;xzhXDo#vEy;ZxHwF+VYKqHqMc!ars~laoD6%N9iG_RyY3Qh`>w+(nNCd7J17>`DH`+bM;_|62d;m{ZMxMXHf1+)#}J)b^=CofD;j|5>Q z5b0#MP``;e$%3Bz;_J`jg-7?W-1kK1m>`Z&kAeB#7$16Y8$0s}su~F(r}4E{p2LL;HP{(6orST2`yScAPyfl47}qtp0wmanK8jUEh!_DXpzR1p zrVISjFFTJToBJ>wP>md{?R>;^8go*(Q?f})JEI)y)f}h`rJ^hCnEq^_Y$N`P`4r;; zGDWK?v6+8|6#bUGN13ri%iVqwn?(2}h=g9dv8-esQ8ZsTGza}fG1=-f$bpHTL`6OJ zbaA%-6zm68(z_A~_BuGs#~Dio-_GO?z+4W0`lR#p6z%f(>5&b?fnadTJ&Sie@E**h zK}{o=ey3M;L3smWH&xuyJS`zxL_h#0MY$ zBfvNaOL9001jbqr5iA)J2v4hNy*=6frhoVPAA89ibcehD4fkJ^4F0mOe~*7J5TT#? zS3h=sx7q!JdAFDwYb=Dt7$Za^VBqHCH{x%;=o_%y--oppJ=b7~n{bIX@cOjbe-&6s z2Kt3nC*FJh3HQ~4eO%P&zf#at6nU}!fkoY;2huO1h(gP((%VOv7*&S%4xl#APNWTV zls4rGnEZDoMZ&u=+F1P?TTWZErC(Ll13klshR*gB2&vICgtD;SE_O-32=)6N<&J(y z(l|;&0p)J!a$3J4>a2`2UxGqSO1h|eR)kHJ)@dIZf)oU%@0Ax7eMoStuBT=G{$dJ2 zEkG78_$W{DI>5Dz%1khw9>woH{bBjR_x%ul_sRF*(DV>GX}!x#99WnbLd@b$te<$z zw_o*j|Bz0SIf;{og)csU;VQOK8?!_4`)RX7aVs?dh&#%{6^l$nCKVGkB`Zk{7*8j2oGrErL3 z58#f>)(eCt+i})Q?54n#-$iEoRn$HBQ>e~9^)3(%Fg_BHW2^ z$iv0V5b@c@<@`Cpk(UBD{8+cd)m^jLofEaY>}X%e>0?>p>siTStmc1Rt4A(Ix6UIlMtno*mnV@NFuaiL_ z>!SsevJQAO#-M2orW?RZu32DhHE$y08$y$!QtjgFp=6!r;F4 z#e4XM+smXn3^em=gIfs{xc82AMOVqmapE)uB-xBMH~Jf39??xRRC(MW8g1D zy%B3AZ6qisNOqt^`6~)1S}$fi#VDiLc96n_4%0Ste+*(@0K*z9Aqo7_$S_BV1T6@ozu%i+FtYG^W)Q zt?PR8H2-2aET-Ka9lrJE?d!kl)o;Ij`d#=ghtGdq@4x%H1-HoCai_tZa1ZT0{;{WL z&)oyS5|IM{LqrWXn3^%Z^~SHmb(h@)x4(p~YEUsYiXN2=(?Q|N+{m^;BD7FA;#sow zlN+I4HVI`&h6kbuPiN!L%%nzKh7?sq+Jy%s>ir;JMCa3u^oz*KQrJ618jKjx(xX?s z9eb5Yt>^W5yHto*ByG$E4MVx-vET7e+!&N;JllB!$y4+=2a*ylU7zZK(mm8yCK(Yc z-qCuoUv-g^K|N27H~m&z6ba`M^<_emNByfnc+ktyPE@wNXyTLJyQJi%MBGVPEbxU7 z+sv{kj}jqo!^~Y8z?pu^01rg)3&6^Z-~@+&yABYM@#Z%E?9>DDL+}2F@;gtx9~xVwqV6P4+Ji)`z6^6CF`^Lwm=^*7r*(h05#duJ zJPmx)iLhmG%aGQAsTI@O;E0_-}#oq()} zv4WglU*I^*9vI+`APt1)#NCXf+lA0!(CB&ar{j5nFq;!Lt>C4{9Yh?YK~zMt(yA$} zhhWt7xw;?-Bug=#MrxArlcQ1$`A9*s5+*Hij95@rQg-$DdSwD>d}6B#oB zPJb3gs(g%PHu(V=0mLwq=K~wp!_S;7XnGAs&$~mKC;kiY@SQM*NJf>=HLrzx?n&6n z!5B)pFPH(xJ_4j|Ef^#a3)-8p9Dj-6mbXefzR@k4ora~`XR^CYG;<>64cRPA0%ooh_j?h{kxdob!6X{mPO=}785>o8u9zV+2#d46*`eQ0Fug4qX2 zB`K?u-f0`JXTv391W|ECqNTjxBhdipQINV-Ot`d$)DFY`6)VqX5%eUn>_D&W0Z~a> zXG}^`k_|<@w-tRxwSYi-8Z*eolJuMG!;}$R;y2+l-(_!Na0iS=1|NU2#=TFk0oI_d zThD8vvm1nQIWTOc*SP_+DScWMNAyyiBQkKmLF8uw1>{gAHy3%k5dP}@`@GA#Q z0_lMJJ+LF>l=0s;xccuDJ3y&lo|2f5;;p>NU=^$fUD{Etq7fftpOF0)7mnZAg}a*#<8b?zx;Dwedg{hCZz9F zeotblr1w-R*(^zSNhu9-odZ!zrJOAIC4JFKBH)L5blReAr_Lf>eic(JQ|PW{)k8rIu31jD~+QD=3T z988!vVD%MDwKR#3CSfqKQk6Of-^y;S+Tm3ch+q5R#sx5>5Kro!fFPAa)3n$)ehlw< z=>7QpN8b-;TGUjhs#ph^z>s5>k*%xk@%GpM%h&wSi;0NgeSDz7X;**w*GZg|yYIT2 z0N}s8RGPpDuvKW zzm$F{czX|6FCN^CbGH?Oq#(mQjbCM)`2vx@lClu>JF)a||CDAO&5nJL3KmO??^!pL z;;UyY>n};5Nr10JP9FxvIYpV_SpB~sK?QhU{C-~5uObNj!YVZAG4j6!L_+c4AA+QW z@s#fgAs-HuK9YSa7lX6t@Bz0jDth&(X!}LIa52Fc|3=?V5`fXj3sfqEcxHux0keZ^ z8jLr#aqr&a_=oTP0r}wR56k9c15PB(yV+Z%Qrmj_HCMdy2fycC|MT|AyH0{vC9scB zhi8Qi;G-KS1OP{POMtUrw+vgU0Z1#tbB1&xlO+SSh;^M9G%(x>(LxCG8nghpeaEub zIhk8i?~!z~t}}bM{9E_sd4Frp<4an0V1X4U6&d)`JdAj!3RpnnEy%MUBtHFd*qi?j zaMc^oHA`W31lIud7U+s^gqysGq?rM(C73lxHAdJ+1Q;L5B|cf7h;t;o6p=Zk-6gj? z3z!K@{XBry;18Z5ajnP63r;YuS#Po2XBbOhZ4OZ!yDWf)gcAu~RuB&g+KQ{RHSsbbzUVp5U<-UMh5Hoyu2G&TXUkEGvg5{&2dMw=S684vQ(IU^<31md*7!ixW zjK~~+18960(p6%NMfcc$BDwcpiERy-D$w)3l-%4xW~Y5GSzw4^!rn&~z&VRXDs-*} zxh3PWR{$^gNnX}3a?5tk%*~Qnb{)I@R@|(0JnuR;cZ?ZG=HPD8EwSXbZRhM7Biw?V zn>Wq@Q&0uouffZ1EC4X)%5507mAz?s;^^_ujBIrtf*Nr{5vBFQLMceZb}~*&;)vxU zU4(LyH(%vV3~2}@JF$wKL@NwY33QNG?xGc|NK3twqRj>qhRAY~MpZxcvO`xiG{a*1 z9;Rrhhi4HELM#F3z7DFMn)`247O1~ww zy_kFyNZ~J$>?}zj`6?Yl(@r#jMIWkm|nWy(2`WJb^ELZJ>35o>yQMs7wG z3;2T+TgiPim+E_=a>8M0kTg~njLNpCs|MCEWM*M7$G`r@XL0NC^N=0D@(9LQaP&^5 zRl`^g#Fu&6wT;m!X(haoaIAY`7Bco#B!MqH2K7QuX>|YtS?7IO5)p;Dj?z} zy(416h9(0M@_tmwlb>jjgqD>$%n`P(_A_cedKT%z1ielOUQURKq>#&@Sx z7y}ES@)0%_XS42L%%`bTv9fve&HOdbVxL-a`YD>!8$Iu>=H22$ zUOFH}=9T}Yc?YTQ3a-c%UKVJb6+uwEEV)koDdk<3-C73@BKm@0@vN=ltSEQg4?}K8 zZOcky{6)PcT96w zo{Mw4?Am=J-CWweJ?`v`F8k&^y5V~lvUOw2Z|+Bw1P0_}OC z?ktO&!4J0gSL1S++*5KkV?v6AQRG1I7k{7^SHadlZKiib&OX6M77zYw!i~ z)*MgSF-ou^z#4)H&c+n+u)@yrB$XLAHI^h5)U(Jq=;`i~fj|fj&p`C1@<2p^X-c_i zkPgg*t;lcH3ek<(lS(~TcQgX2gmVB=vW>iP6vL0>Y1u$XY+5QgojWdyqM@~bVm$h4 zCy6`?<(PaPMZebz$2S?TJ+i=T&s$W4&O5s8hG6tk;qC&VI}cDrxbS4C!%qzy0Eka* z4`YGRN=QiOtmxZf;Z|79#6+Iu9kFu#>~}W-oOSr$8_b9!w*=ZXAzcY5p$1d z8jC!i#vqI19KNWAEN8qY()WvD94g|K!!Do4_rkad)@rYC76<@NK(W8ndtD$Qp=3%T zo%N+M-d6|-)pjlx`nj*ZQ>(}cxdJa`#Elek!ox19PkDH<@sQGu7W65q ziWP(z9C<7I)Q8cJgAeG6)%E+=dxa08g^1r(btGn!8~{Mc_gq}raX$p!zo(R5pKlH% z&OU?ZTQdBSs`8>9o4`bX4{;f5gw5&JNBBbe`4 zTzBaO{OhlK3Ww@lv`Y&j8@4uQ{aCUDW#c&b#o0L+<1pJDi~4Yur(PM)_C1v0jdm^VzF_A@CDZ{Fs&WB&iK5`%n)W+Blz%RYxv_w z*I_Ngv0u@mxS1r(&4s*S>+KkWjxENM4zIjn4@VC%mUF_PDdU-ai=V#h2p)L)5XRFM zZr%Xsz%GR42LdqXR{K0!=f_=W|JdAy15Z zc96vWX20TY2FvqQ9rhZ-ip)noLY9Ep9(DG?CRO#VDc5I_u!z64a? zgcP@K!U27ekK<@kFyRtS3F>+zci#WI^6c_CsVXBupn8uvr74?_pkee-py1XX$MjVz zq1d;JDE^F&;ITg-JV<4V(esqyg3^jh7a=99`*M|5jJ7tVpwxyGkC7K#quHk%GND9t zkCt1qKc60yI;lTpD(?6FHVHa)C&~Qyf}j7m5-V1bXhbuO(#E-t_`*5sY2e%GHexh0=xygooNg9DJhMSUl^Mh4oic8s_ ztM11Nq)&*7R*{`Yg)Lmn75WPKaH{{3_K=)IQi)@hA`_+yVWya0v?l7zjI{1xAOC;6u-T z0zdZ0{|k(*AmB)P!K4-d7~OpArtkO{fBY{lza7Ba@%9iCv06SQX<*ERm=_YAj@tR? zHY-0z3C~&BvN&;4!+~2@jm!eftz%v^Omksc2xw-k%v{&*aog@l+st{fyCY3I zqr-3BH#hu1OILmcV?1Ri9Y99B2?!7vMi`bVsTa=(?)h24pNkdzrch6N#_`J4c{SjI<)IBVq`629h0u+ZQY^0PPOgTq!cTUYuiy5V08S zF9;_l4llj71uUcO1gN5^BLn)=ia!xY`V|OAw?{p ze0~(#>j}ANrmhePDo!G*YG1xcsN?^UNG${a76KET4ge$?Vp5y{jR3z1j>=*Z74k1d zu}VdI15lOWfkgPe6B5(u7Sf)yXs zQ44U}F_FtAEt&=}#8QD_3<33x5PJ!sJ;x+WaE)MgPP}uO;Znb%RxpI|36QPeniev; z8g%t{1IJzgUd~W4iycp3M-^43fqCvjGBPcI8f->js{H{7%F zrx7WswX_KIvrO^nF2!&HO=yvUrGK}myr?lsa7CWkkCoq+fpAb)u|G1_vr4^E{&%n( z7h0F$JK1)MfJuTqduDYHlzkj7@2>W1VZ?-LOgO(Y!tdR`jooGhYk;n;&^hZPfRfSX z`)y3GLQ&g#frJ|d(l#?m(FdV?_A}%@h(0~~;Oju=q>6Zo4x8-w)5ZmIf06|g$DiOe zm7o}uC_vO@$$vD;T@Owk*fNpse03^_TXaBoMuC!y#Uhfjwl0n?43hO`wgW^>_QNEj z$h}xJP||#i&7ugeh9lvZa$$WZg~Cu#EE=iFag81fnE}$h$Syeo4Qb5N{9|az0VHt! zgloFv{XR*gC&@1u6@@DT7y*GXsvP#u8GOl$_VB}B@(fJ7MB^$LV^u_c*<>MUf`gCP zfLn*r$l@IzpW?npMyL#7ye4?^w8ig#ViWWE2qVid+Iwn(gVDerzET-b<)fKjarGWv zcKIA&pdz2bg`KxU_GT6zymt+!E?Cr~4$PAHn4%6wIdLvqsK79#*1 z5#I5MExhy3k6~@Z;HHJ?Tyiv$6OaQa=y(I5Z48cW?BIJ}e+oy|mOx9WMvSU*{$QOj z5D{IgWV#-(n4>c-0QHIu?Wg>1a=d9dn`B+2q4-b#CiM#?(cjlNwTO8^xPFJz4B-{aktq^tp@VqCk{G(vNIX`YS2gsAWT0Dl3bY zSp1%OAnwyxRo;I$;^PV?8|(PrKk=XN@n=7Ys^Acy3@jiLW1}1x1_oCjz7*5R1mf5) zm}w#?kV1(seFV!&VhNHXWQ>-Gl_(?vzNEJeK73&*^^dQ*Py|Ukm+Sjpjt=aU0hU)N z{!pRLB+#!UN2aN_1J6tBKf-Jyiwwjq*#)PiNQFLZ-d@V4Ou0>5RGBys)PpyP1YKvW zr;lu{FNIdXlgsOsmQ*ke0;Q-;-;NsV;P1#?kz`ov+~t`T0&kPTae6aHwI*eun#rB- z3(Zxmmdiy-E4{J)o(>3z7|s#j;eP0n@`X!(*S3G3(06)jy$&EnI~F;BM8K52K}pvj z<1RiR2h?r^yE(;ge&#pu_J`h$Nj*X9x`3`6=D1aF-SD!@U-qSjj5~hUaS{{Th&ThPD3wcH`s0KzTB7S-RMl0G--r+_B?hGzj z-X&`7A>An}nT0^s-Z+P0hRHSOYpljgjjxzIV@VJCa8;W=5il-hIx)1edB*@mgD9Spl|GjiRy zmU*+z&ph)CPMr&ZUlR*3s%pIbfy21x)YLla`IfU-p0}t*ev#E$AK^)q7b6Q6EM$8an?!HAfZD7d zStAi)kEs>Ar-^E)gC%b%_H;nd!JmDgOz^s-NaJuXZpSxN%Bxl2=qu+BmE4ioF^aKA z7nfHtLbK3Usn(%PkMJd@DfvD`^K7_Cv`XXY8uOUsI*Ovy|2Eik(CeDfG$}z|vOt(2 z^~-?zw&2)qpqGYx-_#5)W!vzl3s33^-u2n{;PJi3P?7Zub|%a9)U(LD0z{8*w0*Uu zu?qJ7jbs~Wd7G5GcpeubNgutDf}mFTN(H3AjW`;})!|U)n^HcI*q)Y?X&7kujwrh( z{a2zOY6yg=)J!SmJGx6{9ePxT5sCx5D!$LqZjVyb4U|wE7lK zy=kLbs~kIy=A{Twlf|-~Pt2a%0c`n&<}g|BSL2-Tf2QQNHyH2;cPGFI)~LuKBqDTHVOKi(2u!^ z?|L&R<4Z?aMkz(`M^eUA2 zXd4cCd5~emKY)Hyh49FsApIKkxTN$~#UwPB^xL}?Qgj_Dl2j+BI)H3f7^tG2^&bzA z82c3FFWd@hjL_Cg{LDvw7JF_6V+e7JJd4ECgrn=WuY1!^eBdWG0N~C$@1*`BNOU}! zn4^(-k@7X_%a{rAbB#E6!moL5?lW)!>}rOLMcS$r*S3|DhRN>RnieAMz6j04$;`p* zh~Zs9wH^>{$YOVw`HF^5d@Jbs?`2&1)sT&=fXcD(9PF0pTnpDW-ZV4~ z^Y}QhaRR~wjMiXh4}d@M7U064qMB?#um%~Q0MQ82HE>MQw3e2gp{^t890+a+!d!@$ zMOdVp3p-&pw}9+bV#JBHf{GZ62Do{<#g|;OFVZ^HhG5l}ia2mYA@W00LxJ)Y8oc*3 zrccp^a?ICg$p4Lz2F6=)GV= z;F{p9Ux~izk_N9ox{uvm3xNf9#_#Mlo8a-Qgu8v_c1Caupgl*@F`SPeAmWfgDTaud z8dPlxU|}a)p#48Xd-sonp8Qi7OTw*1yLBtvpIPjE^B7>Y9={E16qXDVF>r z|5AKcEF8x4+6T9*da}~8`P{EkuZ&*J8U_URC4}_;hHs8B8VeqNdV~)?w26gO7}pMl z9Qpt;VuZ{P?D$Ff>@o-#3?20glw}G>;zbO{2$SF9s+78xI|E2HTp-uBu0J|bqeVigNOTnRodx>T-D2(& zQAkmXAj42Vox5RreeG%3669WY3Xy#gT1cTGy?4{#4Q4+xt{j*hM| z-cup4z|z86!vFFW&)~8n7vNfeVul;js{_amNAZz_6!e>82Rk0&mp`?IM^BC6<`ewx zy~nZFj8IJ&9P(SnoIOe5hrE!+0!=44daT1spFc-!8C_>VWFXFfje#ZLqmQoP-e=b^ zG7M=&IX)@N+4x<&bG2)M@tEqEjS4)y~9$nAKQ_JQv=NG|$Km$BSMOA$q1a2ods^cc#*? zNLI;ZTE7)d_tHn?%2G6w;$_uwlU6nTju%kKZ*6^w1FU}sU?%=uWqfOO#_E?LgUVQp zOoct3;kO=q4`yglSL2?@EfoW)F;DtgVjtqqvg7)9Ns~Q+NV%0*Ede^1sf=2T^;3}4 zN?xtJE+Tsc+3}F?4O&X|_nmyX&YrwaZ%IMprH)wDOi%YwiLLZqP}&6t8kk8&5aknX zhA;y~-{SIk)3%swAHh5Bc?aJ2*$<$y23GuB!Dl6l4o5(Ms&idCsz%psj@EDg^kbhs z0#EjqrJvm7FaNq7w+jJs+YMjx;^!Z}>MN(!$U64NML2O_VVKI|(Y?p;^Y{EZXl%W_ zmfVN_uoR437(PBSPH8pe{TG0l|nd0|WP%Y{x?aICCHvg|5fRIrvdL~2F{ z>!=955_d9uF@8x4TpE@YFcjSqXdQD9n`^{r`GI(dN)#-40CYNr@-JisYE?fa;-ZXB zRKQ5)FN%g`q0F+)rQ~T34Sw-j2}1O|m*M@a%U2OZuW}kb)nYW^4jKRDVoRRO3{|}z z->jDlK8WO(g^mASu1toWMZA@`*U~Fwg@Xg38`Zeyxj)055B)aQMpLl!N6h9(RAY~= zAA9MQTQ}bHhBv&yoxAp2%H4PpCsTyuNt~prkE4rS%u6w5pTu3lG&^nN$RXiw>1b?P zbk;1}){HAd1atx!!7e-Q#v_6VS<^wdV*o}>N1&R;9R*>I(ba1_y{R(CzD{WOULzMi zLbQ7~WBx30vqL1Ez)XlnM};o^S~BA`cAxqGLr&ifJJ|-E`BUP*_(!lW{og zmBgF>RrvHLAZAKk=K?a>`@UQ&kU7CPK%5XSSlSD4^_8&Ii^#SQ8e=*#M%cA5mu_`< z&9x1F={^?M0j4tG4kTeuOF(`&uqTicNeZcsyXS{jzi^eVC5^w4R%QEK%>Y^e9l#xVXJZGz0*(k(rvfdMp^=11gim^9qH{4>B4JG7@q
    kQ~OAiN7y0Ler!Itp1kA!g$y@bm_e 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

    0xLEts8 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%0Aj+F5q{VXsdBc-R|KtD9%M-v!`PKp#hF`%)gW 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

    Il1F?wFa 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 z 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%0Adhr}_QYBnRlo1WTQrV$}$H1~jRbK1}UTaLrwd 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

    +bhQS%Rf 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�|Fc%q{oi{SiH+|~K63v_!r@`#k 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�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 z zj&E1Clwu2&v|C(Q-RWpzG+K1p`?hIVB`1LbKlrHIpXOS~q$?#&v@M49>%`>wxc2~t zu?{u7vVVzH)DiT+DtE)&JwO0Bkk8j=nZTK(EcSX&UbdfBuzN|ZV$#R*cq?H-_+T*S?DHa|^=AftGK$sBu>ms5(vQ;UK9+vM$|ALc^zbpa-~a0VKiq=al1!?N5OcMsFk)u^yREe&`Q`j>E=?k_P6 zw6~qRbItq={V;H2f3W2h*P=(t5vM4cA(&5MpN9zF5m%khSh5f_RZOp=j;MA+)W7S_ zqO$ktq*n)D$O!NCk$z<``-W@LHw|hg(>qqu+IkJzhf^69jWivc(2lU?e1AKWD;z5rvdpyV%41^cMPYm`*N1ly9 zwiAi5kSkc^Y^Z7YBlb1k!LLovvPur1r@vP&AeLYdXi!bzgNF(bOA-Pr@U@8m?#vp2 zzzpU`R!jbad>8f48mGnPYq9>pMz9uYbTKQ)O3={~LZ1XpVQupvjh0Ec_NxjW+g_JG z%9dz7Gc_y@vRm=`U#|sLID%v+%dE-K`v(9-3_c7q+B+hdNyz29f(uV1}x?{}d! z-Pr9Upj|F513Ujs_OAMz@2S>F4}{9@g<^nC{bA@{W#`|bN_ zhySrq()%^7@$5oK6%`8!+i+jhR3H`D?RIpSjTRaZ(G!^5V>~kw(W=upFjcFw^U-~u z1WPa2j~OlYZy>J9B*ASxz?ny#5O~Cg)Tv^z zNW={G%=W&cSz@71>q*|9ImLr1pr)kN8CkG<2=F>uu6(EsZ@BZJ2iF4rweUdgM>lr& z7Y2_c#mHXq4F2=AvFkR&^=?M@2}G(wJj5joO**__As8Z1fLdZ#DN$lxxOkzHpFBx{ zYMoeR1G-~2NjO|Uzbe0hxw#Q=mSGoZ!ej>K`P9Z`c7BQ}VYBvim zFENg~0lNbA#KgEb1 zCD{;cFM2r6As|$SYdrCOrqDU+6MaE1ymu^YBaiAAxyY6~wo83wYjy|kT}m0Vbcz21 zGIa{}+;1Li%d}Z-7u%a#tnA3ub@A^CL`nHya0GFQZ&g{G%v}Aq#mGNWXV?@uGLL#c zyL9iFqt#*CHsL@IvU|(tyk5XQ-9St^b=f$GBe}cqg(?ho7!Uze-OOqrj#1Q7pb>^_ zk0{?p06%#S_cIqvp)vF&BkHJk|9oqAuW(N|nVYpJUw?5XjebR%F%#C?yC4G=luGnC zqyiL!0$F9b$`8?Q;x++ht8Z$HJ?J5pKS3t~=ayJoIb~09qIc=#b{ppTu)x2ZeWIUj zehmP`sqax>0m<#p|CYAOcGmT{gYWr_^-cSqI)a(

    eA@9d`cm2sbhT>1=q`J)MNU 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

    w- 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

    {9eorK5SbuwW$yiRuPKf!(3uTi^rsk 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 literal 0 HcmV?d00001 diff --git a/lukenya_marathon/public/js/lukenya_navigation.js b/lukenya_marathon/public/js/lukenya_navigation.js new file mode 100644 index 0000000..781ccd8 --- /dev/null +++ b/lukenya_marathon/public/js/lukenya_navigation.js @@ -0,0 +1,70 @@ +/* Lukenya Marathon — shared left sidebar. + * Loaded once on every Desk page (see hooks.py: app_include_js). + * Every lukenya-* page should render its sidebar by calling + * lukenya.nav.render(activeRoute) instead of building its own