CREATE OR REPLACE FUNCTION with the new function definition.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
--- /dev/null
+CREATE OR REPLACE FUNCTION asset.acp_status_changed()
+RETURNS TRIGGER AS $$
+BEGIN
+ IF NEW.status <> OLD.status AND NOT (NEW.status = 0 AND OLD.status = 7) THEN
+ NEW.status_changed_time := now();
+ IF NEW.active_date IS NULL AND NEW.status IN (SELECT id FROM config.copy_status WHERE copy_active = true) THEN
+ NEW.active_date := now();
+ END IF;
+ END IF;
+ IF NEW.deleted <> OLD.deleted AND NEW.deleted = TRUE THEN
+ IF NEW.status IN (SELECT id FROM config.copy_status WHERE restrict_copy_delete = TRUE) THEN
+ NEW.deleted := FALSE;
+ END IF;
+ END IF;
+ RETURN NEW;
+END;
+$$ LANGUAGE plpgsql;
+
BEGIN;
ALTER TABLE config.copy_status
- ADD COLUMN restrict_copy_delete BOOL NOT NULL DEFAULT FALSE;
+ ADD COLUMN restrict_copy_delete BOOL NOT NULL DEFAULT FALSE;
UPDATE config.copy_status
SET restrict_copy_delete = TRUE