diff --git a/twisted/twisted_site/hackatime.py b/twisted/twisted_site/hackatime.py index 91f49a6..7fb491e 100644 --- a/twisted/twisted_site/hackatime.py +++ b/twisted/twisted_site/hackatime.py @@ -1,4 +1,4 @@ -from datetime import datetime +from datetime import datetime, UTC import requests from dataclasses import dataclass @@ -48,7 +48,7 @@ def me(access_token) -> MeResponse: def projects( access_token, include_archived=False, - start: datetime | None = None, + start: datetime | None = datetime(2026, 9, 7, tzinfo=UTC), projects: list[str] | None = None, ) -> list[HackatimeProject]: """Returns the user's projects with time totals.""" diff --git a/twisted/twisted_site/templates/admin/user.html b/twisted/twisted_site/templates/admin/user.html index 36a99ab..d270d5d 100644 --- a/twisted/twisted_site/templates/admin/user.html +++ b/twisted/twisted_site/templates/admin/user.html @@ -22,6 +22,11 @@

{{ user.profile.ysws_eligible|yesno:"YSWS eligible,Not YSWS eligible" }} + {% if user.profile.referred_by %} + Referred by @{{ user.profile.referred_by.slack_username }} + {% endif %} {% endif %} @@ -61,6 +66,61 @@

{% endif %} +
+

Referrals

+ {% if user.profile.referrals.all %} + + + + + Referral + Time logged + Progress + YSWS eligible + + + + {% for referral in user.profile.referrals.all %} + + + + + @{{ referral.slack_username }} + + + {{ referral.time_logged|minutes_to_hours_minutes }} / 1h + + + + +
+ {% if referral.ysws_eligible %} + YSWS eligible + {% else %} + Not YSWS eligible + {% endif %} +
+ + + {% endfor %} + +
+
+ {% else %} + +

+ No referrals found :( +

+

+ This user hasn't referred anyone yet! +

+
+ {% endif %} +
{% if login_maybe %}
diff --git a/twisted/twisted_site/views/admin/audit_logs.py b/twisted/twisted_site/views/admin/audit_logs.py index d33890f..19e2f79 100644 --- a/twisted/twisted_site/views/admin/audit_logs.py +++ b/twisted/twisted_site/views/admin/audit_logs.py @@ -23,7 +23,7 @@ def get(self, request): Q(additional_context={}) ) - paginator = Paginator(auditlogs, 250, orphans=50) + paginator = Paginator(auditlogs, 100, orphans=50) context['logs'] = paginator.get_page(page_number) context['log_count'] = auditlogs.count() return TemplateResponse(request, "admin/logs.html", context=context)