about summary refs log tree commit diff
diff options
context:
space:
mode:
authorFrederick Muriuki Muriithi2024-06-17 15:45:39 -0500
committerAlexander_Kabui2024-08-28 15:02:45 +0300
commit1484101101bbc3d1388fc351f44c494cb1b72540 (patch)
tree47fcf0852ace85c2a638d256dda4d8661be1dc76
parent7ed51c24678d2b880081f81ad4439e7ebcb0d19d (diff)
downloadgenenetwork2-1484101101bbc3d1388fc351f44c494cb1b72540.tar.gz
Fetch the active user's roles on a particular resource.
-rw-r--r--gn2/wqflask/oauth2/resources.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/gn2/wqflask/oauth2/resources.py b/gn2/wqflask/oauth2/resources.py
index cf600b51..0befac85 100644
--- a/gn2/wqflask/oauth2/resources.py
+++ b/gn2/wqflask/oauth2/resources.py
@@ -4,6 +4,7 @@ from flask import (
     flash, request, url_for, redirect, Response, Blueprint)
 
 from . import client
+from . import session
 from .ui import render_ui as _render_ui
 from .checks import require_oauth2
 from .client import oauth2_get, oauth2_post
@@ -408,9 +409,12 @@ def create_resource_role(resource_id: UUID):
         return render_ui("oauth2/create-role.html", **kwargs)
 
     def __fetch_resource_roles__(resource):
-        return oauth2_get(f"auth/resource/{resource_id}/roles").either(
             lambda error: __render__(resource_role_error=error),
-            lambda roles: {"resource": resource, "roles": roles})
+        user = session.session_info()["user"]
+        return oauth2_get(
+            f"auth/resource/{resource_id}/users/{user['user_id']}"
+            "/roles").either(
+                lambda roles: {"resource": resource, "roles": roles})
 
     if request.method == "GET":
         return oauth2_get(f"auth/resource/view/{resource_id}").map(