1 CREATE OR REPLACE FUNCTION update_forum_thread_posts() RETURNS trigger
5 IF TG_OP = 'INSERT' THEN
6 UPDATE forum_threads SET posts = posts + 1, mtime = GREATEST(NEW.time,mtime)
8 ELSIF TG_OP = 'DELETE' THEN
9 UPDATE forum_threads SET posts = posts - 1 WHERE ftid = OLD.ftid;
10 ELSIF TG_OP = 'UPDATE' AND NEW.ftid <> OLD.ftid THEN
11 UPDATE forum_threads SET posts = posts - 1 WHERE ftid = OLD.ftid;
12 UPDATE forum_threads SET posts = posts + 1, mtime = GREATEST(NEW.time,mtime)
13 WHERE ftid = NEW.ftid;