aboutsummaryrefslogtreecommitdiff
path: root/acl.go
diff options
context:
space:
mode:
Diffstat (limited to 'acl.go')
-rw-r--r--acl.go8
1 files changed, 5 insertions, 3 deletions
diff --git a/acl.go b/acl.go
index 7ad48fb..414e102 100644
--- a/acl.go
+++ b/acl.go
@@ -6,16 +6,18 @@ import (
// get_path_perm_by_group_repo_key returns the filesystem path and direct
// access permission for a given repo and a provided ssh public key.
-func get_path_perm_by_group_repo_key(ctx context.Context, group_name, repo_name, ssh_pubkey string) (filesystem_path string, access bool, contrib_requirements string, user_type string, err error) {
+func get_path_perm_by_group_repo_key(ctx context.Context, group_name, repo_name, ssh_pubkey string) (repo_id int, filesystem_path string, access bool, contrib_requirements string, user_type string, user_id int, err error) {
err = database.QueryRow(ctx,
`SELECT
+ r.id,
r.filesystem_path,
CASE
WHEN ugr.user_id IS NOT NULL THEN TRUE
ELSE FALSE
END AS has_role_in_group,
r.contrib_requirements,
- COALESCE(u.type, '')
+ COALESCE(u.type, ''),
+ COALESCE(u.id, 0)
FROM
groups g
JOIN
@@ -30,6 +32,6 @@ func get_path_perm_by_group_repo_key(ctx context.Context, group_name, repo_name,
g.name = $1
AND r.name = $2;`,
group_name, repo_name, ssh_pubkey,
- ).Scan(&filesystem_path, &access, &contrib_requirements, &user_type)
+ ).Scan(&repo_id, &filesystem_path, &access, &contrib_requirements, &user_type, &user_id)
return
}