1044
by wagrant
userdb: Properly verify that the group name is unique only within the |
1 |
CREATE OR REPLACE FUNCTION check_group_namespacing_insertupdate() |
2 |
RETURNS trigger AS ' |
|
3 |
DECLARE
|
|
4 |
oid INTEGER;
|
|
5 |
BEGIN
|
|
6 |
SELECT offeringid INTO oid FROM project_set WHERE project_set.projectsetid = NEW.projectsetid;
|
|
7 |
PERFORM 1 FROM project_group, project_set WHERE project_set.offeringid = oid AND project_group.projectsetid = project_set.projectsetid AND project_group.groupnm = NEW.groupnm;
|
|
8 |
IF found THEN
|
|
9 |
RAISE EXCEPTION ''a project group named % already exists in offering ID %'', NEW.groupnm, oid;
|
|
10 |
END IF;
|
|
11 |
RETURN NEW;
|
|
12 |
END;
|
|
13 |
' LANGUAGE 'plpgsql'; |