-- Переносим текущее приветствие в последовательность `welcome`: -- 1) короткая подпись к фото, 2) остальной текст одним сообщением с кнопкой «Канал». INSERT INTO bot.message_sequences (key, title, description) VALUES ('welcome', 'Приветствие', 'Сообщения при входе участника в чат') ON CONFLICT (key) DO NOTHING; INSERT INTO bot.message_sequence_items (sequence_key, position, text, image_name) SELECT 'welcome', 0, split_part(t.text, E'\n', 1), 'welcome_image.jpg' FROM bot.message_templates AS t WHERE t.key = 'welcome.text' ON CONFLICT (sequence_key, position) DO NOTHING; INSERT INTO bot.message_sequence_items (sequence_key, position, text) SELECT 'welcome', 1, trim(both E'\n' from ( substr(src.text, strpos(src.text, E'\n') + 1) || E'\n\n' || coalesce(t2.text, '') || E'\n\n' || coalesce(t3.text, '') )) FROM bot.message_templates AS src LEFT JOIN bot.message_templates AS t2 ON t2.key = 'welcome.text2' LEFT JOIN bot.message_templates AS t3 ON t3.key = 'welcome.text3' WHERE src.key = 'welcome.text' ON CONFLICT (sequence_key, position) DO NOTHING; INSERT INTO bot.message_sequence_buttons (item_id, position, text, url) SELECT i.id, 0, 'Канал', 'https://t.me/+DQk8MyN2y6QzNTM6' FROM bot.message_sequence_items AS i WHERE i.sequence_key = 'welcome' AND i.position = 1 AND NOT EXISTS (SELECT 1 FROM bot.message_sequence_buttons AS b WHERE b.item_id = i.id); -- Старые шаблоны приветствия больше не редактируются: источник правды — последовательность. DELETE FROM bot.message_templates WHERE key IN ('welcome.text', 'welcome.text2', 'welcome.text3');