Start implementation of branches, new form element tabledropdown, model improvements
This commit is contained in:
@@ -2,7 +2,7 @@ import { sequelize } from '../utils/sequelize.js';
|
||||
|
||||
export async function createTriggers() {
|
||||
const createTriggerFunction = `
|
||||
CREATE OR REPLACE FUNCTION create_user_param_visibility_trigger()
|
||||
CREATE OR REPLACE FUNCTION community.create_user_param_visibility_trigger()
|
||||
RETURNS TRIGGER AS $$
|
||||
BEGIN
|
||||
-- Check if UserParamVisibility already exists for this UserParam
|
||||
@@ -32,7 +32,7 @@ export async function createTriggers() {
|
||||
AFTER INSERT ON community.user_param
|
||||
FOR EACH ROW
|
||||
WHEN (NEW.id IS NOT NULL)
|
||||
EXECUTE FUNCTION create_user_param_visibility_trigger();
|
||||
EXECUTE FUNCTION community.create_user_param_visibility_trigger();
|
||||
`;
|
||||
|
||||
const createUpdateTrigger = `
|
||||
@@ -40,11 +40,11 @@ export async function createTriggers() {
|
||||
AFTER UPDATE ON community.user_param
|
||||
FOR EACH ROW
|
||||
WHEN (NEW.id IS NOT NULL)
|
||||
EXECUTE FUNCTION create_user_param_visibility_trigger();
|
||||
EXECUTE FUNCTION community.create_user_param_visibility_trigger();
|
||||
`;
|
||||
|
||||
const createDiaryHistoryTriggerFunction = `
|
||||
CREATE OR REPLACE FUNCTION insert_diary_history()
|
||||
CREATE OR REPLACE FUNCTION community.insert_diary_history()
|
||||
RETURNS TRIGGER AS $$
|
||||
BEGIN
|
||||
INSERT INTO community.diary_history (diary_id, user_id, old_text, old_created_at, old_updated_at)
|
||||
@@ -65,11 +65,11 @@ export async function createTriggers() {
|
||||
BEFORE UPDATE ON community.diary
|
||||
FOR EACH ROW
|
||||
WHEN (OLD.id IS NOT NULL)
|
||||
EXECUTE FUNCTION insert_diary_history();
|
||||
EXECUTE FUNCTION community.insert_diary_history();
|
||||
`;
|
||||
|
||||
const createTitleHistoryTriggerFunction = `
|
||||
CREATE OR REPLACE FUNCTION insert_title_history()
|
||||
CREATE OR REPLACE FUNCTION forum.insert_title_history()
|
||||
RETURNS TRIGGER AS $$
|
||||
BEGIN
|
||||
INSERT INTO forum.title_history (title_id, old_title, changed_by, old_updated_at)
|
||||
@@ -84,7 +84,44 @@ export async function createTriggers() {
|
||||
BEFORE UPDATE ON forum.title
|
||||
FOR EACH ROW
|
||||
WHEN (OLD.id IS NOT NULL)
|
||||
EXECUTE FUNCTION insert_title_history();
|
||||
EXECUTE FUNCTION forum.insert_title_history();
|
||||
`;
|
||||
|
||||
const createCharacterCreationTriggerMethod = `
|
||||
CREATE OR REPLACE FUNCTION falukant_data.create_character_creation_trigger()
|
||||
RETURNS TRIGGER AS $$
|
||||
BEGIN
|
||||
INSERT INTO falukant_data.knowledge (product_id, character_id)
|
||||
SELECT id, NEW.id FROM falukant_type.product;
|
||||
RETURN NEW;
|
||||
END;
|
||||
$$ LANGUAGE plpgsql;
|
||||
`;
|
||||
|
||||
const createCharacterCreationTrigger = `
|
||||
CREATE OR REPLACE TRIGGER character_creation_trigger
|
||||
AFTER INSERT ON falukant_data.character
|
||||
FOR EACH ROW
|
||||
WHEN (NEW.id IS NOT NULL)
|
||||
EXECUTE FUNCTION falukant_data.create_character_creation_trigger();
|
||||
`;
|
||||
|
||||
const createKnowledgeTriggerMethod = `
|
||||
CREATE OR REPLACE FUNCTION falukant_data.create_knowledge_trigger()
|
||||
RETURNS TRIGGER AS $$
|
||||
BEGIN
|
||||
NEW.knowledge = random() * 61 + 20;
|
||||
RETURN NEW;
|
||||
END;
|
||||
$$ LANGUAGE plpgsql;
|
||||
`;
|
||||
|
||||
const createKnowledgeTrigger = `
|
||||
CREATE OR REPLACE TRIGGER knowledge_trigger
|
||||
BEFORE INSERT ON falukant_data.knowledge
|
||||
FOR EACH ROW
|
||||
WHEN (NEW.id IS NOT NULL)
|
||||
EXECUTE FUNCTION falukant_data.create_knowledge_trigger();
|
||||
`;
|
||||
|
||||
try {
|
||||
@@ -95,10 +132,14 @@ export async function createTriggers() {
|
||||
await sequelize.query(createDiaryHistoryTrigger);
|
||||
await sequelize.query(createTitleHistoryTriggerFunction);
|
||||
await sequelize.query(createTitleHistoryTrigger);
|
||||
await sequelize.query(createCharacterCreationTriggerMethod);
|
||||
await sequelize.query(createCharacterCreationTrigger);
|
||||
await sequelize.query(createKnowledgeTriggerMethod);
|
||||
await sequelize.query(createKnowledgeTrigger);
|
||||
|
||||
console.log('Triggers created successfully');
|
||||
} catch (error) {
|
||||
console.error('Error creating triggers:', error);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user