Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 31 additions & 8 deletions views/046_permission_subjects.sql
Original file line number Diff line number Diff line change
@@ -1,17 +1,21 @@
CREATE OR REPLACE VIEW permission_subjects AS
SELECT
t.id::text AS id,
t.id::TEXT AS id,
t.name,
'team'::text AS type
'team' AS type,
NULL AS "email",
NULL AS "owner"
FROM teams t
WHERE t.deleted_at IS NULL

UNION ALL

SELECT
pg.id::text AS id,
pg.id::TEXT AS id,
pg.name,
'permission_subject_group'::text AS type
'permission_subject_group' AS type,
NULL AS "email",
NULL AS "owner"
FROM permission_groups pg
WHERE pg.deleted_at IS NULL
AND pg.name IS NOT NULL
Expand All @@ -20,9 +24,26 @@ WHERE pg.deleted_at IS NULL
UNION ALL

SELECT
p.id::text AS id,
p.id::TEXT AS id,
access_tokens.name,
'access_token_person' AS type,
NULL AS "email",
access_tokens.created_by::TEXT AS "owner"
FROM people p
INNER JOIN access_tokens
ON p.id = access_tokens.person_id
WHERE p.deleted_at IS NULL
AND p.type = 'access_token'
AND p.email IS NOT NULL

UNION ALL

SELECT
p.id::TEXT AS id,
p.name,
'person'::text AS type
'person' AS type,
p.email,
NULL AS "owner"
FROM people p
WHERE p.deleted_at IS NULL
AND p.type IS NULL
Expand All @@ -31,9 +52,11 @@ WHERE p.deleted_at IS NULL
UNION ALL

SELECT
r.name AS id,
r.name::TEXT AS id,
r.name,
'role'::text AS type
'role' AS type,
NULL AS "email",
NULL AS "owner"
FROM (
VALUES
('everyone'),
Expand Down
Loading