From 84f5d916f0d48cda47e244ee7bb4a6ef56fd6609 Mon Sep 17 00:00:00 2001 From: Jonathan Miller Date: Sun, 21 Jun 2026 18:20:02 -0500 Subject: [PATCH] feat: add default templates for all 36 service types (#130) Added INSERT rows for 16 missing service types (activitypub, blogger, constantcontact, convertkit, devto, ghost, googlebusiness, googlechat, hashnode, matrix, nostr, tiktok, tumblr, whatsapp, mokosuitecalendar, mokosuitegallery) with platform-appropriate formats (HTML for email, markdown for blog platforms, plain text for social/chat). Also added 01.05.00.sql update migration with INSERT IGNORE for existing installations. Closes #130 --- CHANGELOG.md | 3 +++ .../com_mokosuitecross/sql/install.mysql.sql | 18 +++++++++++++++- .../sql/updates/mysql/01.05.00.sql | 21 +++++++++++++++++++ 3 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 source/packages/com_mokosuitecross/sql/updates/mysql/01.05.00.sql diff --git a/CHANGELOG.md b/CHANGELOG.md index ad89537c..ec1ca9b9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,9 @@ - **Bluesky**: Replaced `md5()` with `hash('sha256', ...)` for cache key generation - **XML namespaces**: Fixed 9 plugin manifests with `${CLASS_NAME}` placeholder instead of actual namespace (Discord, Facebook, LinkedIn, Mailchimp, Mastodon, Slack, Telegram, Twitter, Bluesky) +### Added +- **Default templates**: Added missing default message templates for 16 service types (activitypub, blogger, constantcontact, convertkit, devto, ghost, googlebusiness, googlechat, hashnode, matrix, nostr, tiktok, tumblr, whatsapp, mokosuitecalendar, mokosuitegallery) — all 36 services now have defaults + ## [01.04.00] --- 2026-06-21 ### Fixed diff --git a/source/packages/com_mokosuitecross/sql/install.mysql.sql b/source/packages/com_mokosuitecross/sql/install.mysql.sql index c89f0a9a..b566010e 100644 --- a/source/packages/com_mokosuitecross/sql/install.mysql.sql +++ b/source/packages/com_mokosuitecross/sql/install.mysql.sql @@ -92,7 +92,23 @@ INSERT INTO `#__mokosuitecross_templates` (`service_type`, `title`, `template_bo ('brevo', 'Brevo Default', '

{title}

\n

{introtext}

\n

Read more

', 1, 17, NOW()), ('ntfy', 'Ntfy Default', '{title}: {introtext}', 1, 18, NOW()), ('reddit', 'Reddit Default', '{title}', 1, 19, NOW()), -('pinterest', 'Pinterest Default', '{title} - {introtext}', 1, 20, NOW()); +('pinterest', 'Pinterest Default', '{title} - {introtext}', 1, 20, NOW()), +('activitypub', 'ActivityPub Default', '{title}\n\n{introtext}\n\n{url}', 1, 21, NOW()), +('blogger', 'Blogger Default', '

{title}

\n

{introtext}

\n

Read more

', 1, 22, NOW()), +('constantcontact', 'Constant Contact Default', '

{title}

\n

{introtext}

\n

Read more

', 1, 23, NOW()), +('convertkit', 'ConvertKit Default', '

{title}

\n

{introtext}

\n

Read more

', 1, 24, NOW()), +('devto', 'Dev.to Default', '# {title}\n\n{introtext}\n\n[Read more]({url})', 1, 25, NOW()), +('ghost', 'Ghost Default', '

{title}

\n

{introtext}

\n

Read more

', 1, 26, NOW()), +('googlebusiness', 'Google Business Default', '{title} - {introtext}\n\n{url}', 1, 27, NOW()), +('googlechat', 'Google Chat Default', '*{title}*\n\n{introtext}\n\n{url}', 1, 28, NOW()), +('hashnode', 'Hashnode Default', '# {title}\n\n{introtext}\n\n[Read more]({url})', 1, 29, NOW()), +('matrix', 'Matrix Default', '{title}\n\n{introtext}\n\n{url}', 1, 30, NOW()), +('nostr', 'Nostr Default', '{title}\n\n{url}', 1, 31, NOW()), +('tiktok', 'TikTok Default', '{title} #{category}', 1, 32, NOW()), +('tumblr', 'Tumblr Default', '

{title}

\n

{introtext}

\n

Read more

', 1, 33, NOW()), +('whatsapp', 'WhatsApp Default', '*{title}*\n\n{introtext}\n\n{url}', 1, 34, NOW()), +('mokosuitecalendar', 'MokoSuite Calendar Default', '{title}\n\n{introtext}\n\n{url}', 1, 35, NOW()), +('mokosuitegallery', 'MokoSuite Gallery Default', '{title}\n\n{introtext}\n\n{url}', 1, 36, NOW()); CREATE TABLE IF NOT EXISTS `#__mokosuitecross_category_rules` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, diff --git a/source/packages/com_mokosuitecross/sql/updates/mysql/01.05.00.sql b/source/packages/com_mokosuitecross/sql/updates/mysql/01.05.00.sql new file mode 100644 index 00000000..c00b2803 --- /dev/null +++ b/source/packages/com_mokosuitecross/sql/updates/mysql/01.05.00.sql @@ -0,0 +1,21 @@ +-- MokoSuiteCross 01.05.00 — Add missing default templates for 16 service types (#130) +-- Copyright (C) 2026 Moko Consulting. All rights reserved. +-- SPDX-License-Identifier: GPL-3.0-or-later + +INSERT IGNORE INTO `#__mokosuitecross_templates` (`service_type`, `title`, `template_body`, `published`, `ordering`, `created`) VALUES +('activitypub', 'ActivityPub Default', '{title}\n\n{introtext}\n\n{url}', 1, 21, NOW()), +('blogger', 'Blogger Default', '

{title}

\n

{introtext}

\n

Read more

', 1, 22, NOW()), +('constantcontact', 'Constant Contact Default', '

{title}

\n

{introtext}

\n

Read more

', 1, 23, NOW()), +('convertkit', 'ConvertKit Default', '

{title}

\n

{introtext}

\n

Read more

', 1, 24, NOW()), +('devto', 'Dev.to Default', '# {title}\n\n{introtext}\n\n[Read more]({url})', 1, 25, NOW()), +('ghost', 'Ghost Default', '

{title}

\n

{introtext}

\n

Read more

', 1, 26, NOW()), +('googlebusiness', 'Google Business Default', '{title} - {introtext}\n\n{url}', 1, 27, NOW()), +('googlechat', 'Google Chat Default', '*{title}*\n\n{introtext}\n\n{url}', 1, 28, NOW()), +('hashnode', 'Hashnode Default', '# {title}\n\n{introtext}\n\n[Read more]({url})', 1, 29, NOW()), +('matrix', 'Matrix Default', '{title}\n\n{introtext}\n\n{url}', 1, 30, NOW()), +('nostr', 'Nostr Default', '{title}\n\n{url}', 1, 31, NOW()), +('tiktok', 'TikTok Default', '{title} #{category}', 1, 32, NOW()), +('tumblr', 'Tumblr Default', '

{title}

\n

{introtext}

\n

Read more

', 1, 33, NOW()), +('whatsapp', 'WhatsApp Default', '*{title}*\n\n{introtext}\n\n{url}', 1, 34, NOW()), +('mokosuitecalendar', 'MokoSuite Calendar Default', '{title}\n\n{introtext}\n\n{url}', 1, 35, NOW()), +('mokosuitegallery', 'MokoSuite Gallery Default', '{title}\n\n{introtext}\n\n{url}', 1, 36, NOW());