3 SELECT evergreen.upgrade_deps_block_check('0623', :eg_version);
6 CREATE TABLE config.org_unit_setting_type_log (
7 id BIGSERIAL PRIMARY KEY,
8 date_applied TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT NOW(),
9 org INT REFERENCES actor.org_unit (id),
12 field_name TEXT REFERENCES config.org_unit_setting_type (name)
15 -- Log each change in oust to oustl, so admins can see what they messed up if someting stops working.
16 CREATE OR REPLACE FUNCTION ous_change_log() RETURNS TRIGGER AS $ous_change_log$
20 -- Check for which setting is being updated, and log it.
21 SELECT INTO original value FROM actor.org_unit_setting WHERE name = NEW.name AND org_unit = NEW.org_unit;
23 INSERT INTO config.org_unit_setting_type_log (org,original_value,new_value,field_name) VALUES (NEW.org_unit, original, NEW.value, NEW.name);
27 $ous_change_log$ LANGUAGE plpgsql;
29 CREATE TRIGGER log_ous_change
30 BEFORE INSERT OR UPDATE ON actor.org_unit_setting
31 FOR EACH ROW EXECUTE PROCEDURE ous_change_log();
33 CREATE OR REPLACE FUNCTION ous_delete_log() RETURNS TRIGGER AS $ous_delete_log$
37 -- Check for which setting is being updated, and log it.
38 SELECT INTO original value FROM actor.org_unit_setting WHERE name = OLD.name AND org_unit = OLD.org_unit;
40 INSERT INTO config.org_unit_setting_type_log (org,original_value,new_value,field_name) VALUES (OLD.org_unit, original, 'null', OLD.name);
44 $ous_delete_log$ LANGUAGE plpgsql;
46 CREATE TRIGGER log_ous_del
47 BEFORE DELETE ON actor.org_unit_setting
48 FOR EACH ROW EXECUTE PROCEDURE ous_delete_log();