mirror of
https://github.com/thiloho/archtika.git
synced 2025-11-22 10:51:36 +01:00
Add postgres sql file formatting via pg_format
This commit is contained in:
@@ -1,72 +1,86 @@
|
||||
-- migrate:up
|
||||
CREATE FUNCTION internal.update_last_modified()
|
||||
RETURNS TRIGGER AS $$
|
||||
CREATE FUNCTION internal.update_last_modified ()
|
||||
RETURNS TRIGGER
|
||||
AS $$
|
||||
BEGIN
|
||||
NEW.last_modified_at = CLOCK_TIMESTAMP();
|
||||
NEW.last_modified_by = (current_setting('request.jwt.claims', true)::JSON->>'user_id')::UUID;
|
||||
|
||||
NEW.last_modified_by = (CURRENT_SETTING('request.jwt.claims', TRUE)::JSON ->> 'user_id')::UUID;
|
||||
IF TG_TABLE_NAME != 'website' THEN
|
||||
UPDATE internal.website
|
||||
SET
|
||||
UPDATE
|
||||
internal.website
|
||||
SET
|
||||
last_modified_at = NEW.last_modified_at,
|
||||
last_modified_by = NEW.last_modified_by
|
||||
WHERE id =
|
||||
CASE
|
||||
WHEN TG_TABLE_NAME = 'settings' THEN NEW.website_id
|
||||
WHEN TG_TABLE_NAME = 'header' THEN NEW.website_id
|
||||
WHEN TG_TABLE_NAME = 'home' THEN NEW.website_id
|
||||
WHEN TG_TABLE_NAME = 'article' THEN NEW.website_id
|
||||
WHEN TG_TABLE_NAME = 'footer' THEN NEW.website_id
|
||||
WHEN TG_TABLE_NAME = 'collab' THEN NEW.website_id
|
||||
WHERE
|
||||
id = CASE WHEN TG_TABLE_NAME = 'settings' THEN
|
||||
NEW.website_id
|
||||
WHEN TG_TABLE_NAME = 'header' THEN
|
||||
NEW.website_id
|
||||
WHEN TG_TABLE_NAME = 'home' THEN
|
||||
NEW.website_id
|
||||
WHEN TG_TABLE_NAME = 'article' THEN
|
||||
NEW.website_id
|
||||
WHEN TG_TABLE_NAME = 'footer' THEN
|
||||
NEW.website_id
|
||||
WHEN TG_TABLE_NAME = 'collab' THEN
|
||||
NEW.website_id
|
||||
END;
|
||||
END IF;
|
||||
|
||||
RETURN NEW;
|
||||
END;
|
||||
$$ LANGUAGE plpgsql SECURITY DEFINER;
|
||||
$$
|
||||
LANGUAGE plpgsql
|
||||
SECURITY DEFINER;
|
||||
|
||||
CREATE TRIGGER update_website_last_modified
|
||||
BEFORE UPDATE ON internal.website
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION internal.update_last_modified();
|
||||
BEFORE UPDATE ON internal.website
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION internal.update_last_modified ();
|
||||
|
||||
CREATE TRIGGER update_settings_last_modified
|
||||
BEFORE UPDATE ON internal.settings
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION internal.update_last_modified();
|
||||
BEFORE UPDATE ON internal.settings
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION internal.update_last_modified ();
|
||||
|
||||
CREATE TRIGGER update_header_last_modified
|
||||
BEFORE UPDATE ON internal.header
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION internal.update_last_modified();
|
||||
BEFORE UPDATE ON internal.header
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION internal.update_last_modified ();
|
||||
|
||||
CREATE TRIGGER update_home_last_modified
|
||||
BEFORE UPDATE ON internal.home
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION internal.update_last_modified();
|
||||
BEFORE UPDATE ON internal.home
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION internal.update_last_modified ();
|
||||
|
||||
CREATE TRIGGER update_article_last_modified
|
||||
BEFORE INSERT OR UPDATE OR DELETE ON internal.article
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION internal.update_last_modified();
|
||||
BEFORE INSERT OR UPDATE OR DELETE ON internal.article
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION internal.update_last_modified ();
|
||||
|
||||
CREATE TRIGGER update_footer_last_modified
|
||||
BEFORE UPDATE ON internal.footer
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION internal.update_last_modified();
|
||||
BEFORE UPDATE ON internal.footer
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION internal.update_last_modified ();
|
||||
|
||||
CREATE TRIGGER update_collab_last_modified
|
||||
BEFORE UPDATE ON internal.collab
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION internal.update_last_modified();
|
||||
BEFORE UPDATE ON internal.collab
|
||||
FOR EACH ROW
|
||||
EXECUTE FUNCTION internal.update_last_modified ();
|
||||
|
||||
-- migrate:down
|
||||
DROP TRIGGER update_website_last_modified ON internal.website;
|
||||
|
||||
DROP TRIGGER update_settings_last_modified ON internal.settings;
|
||||
|
||||
DROP TRIGGER update_header_last_modified ON internal.header;
|
||||
|
||||
DROP TRIGGER update_home_last_modified ON internal.home;
|
||||
|
||||
DROP TRIGGER update_article_last_modified ON internal.article;
|
||||
|
||||
DROP TRIGGER update_footer_last_modified ON internal.footer;
|
||||
|
||||
DROP TRIGGER update_collab_last_modified ON internal.collab;
|
||||
|
||||
DROP FUNCTION internal.update_last_modified();
|
||||
DROP FUNCTION internal.update_last_modified ();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user