# permissions.py from rest_framework.permissions import BasePermission class IsGithubLinked(BasePermission): def has_permission(self, request, view): user = request.user if token_obj := getattr(user, 'github_token', None): if token := getattr(token_obj, 'access_token', None): return True return False class IsPasswordResetToken(BasePermission): message = "Password reset token required." def has_permission(self, request, view): token = getattr(request, "auth", None) if not token: return False return token.get("purpose") == "password_reset"