aboutsummaryrefslogtreecommitdiff
path: root/gn2/wqflask/oauth2/collections.py
diff options
context:
space:
mode:
authorArun Isaac2023-12-29 18:55:37 +0000
committerArun Isaac2023-12-29 19:01:46 +0000
commit204a308be0f741726b9a620d88fbc22b22124c81 (patch)
treeb3cf66906674020b530c844c2bb4982c8a0e2d39 /gn2/wqflask/oauth2/collections.py
parent83062c75442160427b50420161bfcae2c5c34c84 (diff)
downloadgenenetwork2-204a308be0f741726b9a620d88fbc22b22124c81.tar.gz
Namespace all modules under gn2.
We move all modules under a gn2 directory. This is important for "correct" packaging and deployment as a Guix service.
Diffstat (limited to 'gn2/wqflask/oauth2/collections.py')
-rw-r--r--gn2/wqflask/oauth2/collections.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/gn2/wqflask/oauth2/collections.py b/gn2/wqflask/oauth2/collections.py
new file mode 100644
index 00000000..63bf206e
--- /dev/null
+++ b/gn2/wqflask/oauth2/collections.py
@@ -0,0 +1,16 @@
+"""Functions for collections."""
+from .session import session_info
+from .checks import user_logged_in
+from .client import oauth2_get, no_token_get
+
+def num_collections() -> int:
+ """Compute the number of collections available for the current session."""
+ anon_id = session_info()["anon_id"]
+ all_collections = no_token_get(
+ f"auth/user/collections/{anon_id}/list").either(
+ lambda _err: [], lambda colls: colls)
+ if user_logged_in():
+ all_collections = all_collections + oauth2_get(
+ "auth/user/collections/list").either(
+ lambda _err: [], lambda colls: colls)
+ return len(all_collections)