mirror of https://gitlab.com/tildes/tildes.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
21 lines
632 B
21 lines
632 B
-- Copyright (c) 2018 Tildes contributors <code@tildes.net>
|
|
-- SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
|
-- set comment.deleted_time when is_deleted changes
|
|
CREATE OR REPLACE FUNCTION set_comment_deleted_time() RETURNS TRIGGER AS $$
|
|
BEGIN
|
|
IF (NEW.is_deleted = TRUE) THEN
|
|
NEW.deleted_time := current_timestamp;
|
|
ELSE
|
|
NEW.deleted_time := NULL;
|
|
END IF;
|
|
|
|
RETURN NEW;
|
|
END;
|
|
$$ LANGUAGE plpgsql;
|
|
|
|
CREATE TRIGGER delete_comment_set_deleted_time_update
|
|
BEFORE UPDATE ON comments
|
|
FOR EACH ROW
|
|
WHEN (OLD.is_deleted IS DISTINCT FROM NEW.is_deleted)
|
|
EXECUTE PROCEDURE set_comment_deleted_time();
|