From 50918ab022691ec090d7eb861ba1a9eac70a6fd5 Mon Sep 17 00:00:00 2001 From: Tim Otten Date: Thu, 3 Aug 2023 01:47:39 -0700 Subject: [PATCH] Smarty SQL - Add helper {crmUpgradeSnapshot} --- .../plugins/block.crmUpgradeSnapshot.php | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 CRM/Core/Smarty/plugins/block.crmUpgradeSnapshot.php diff --git a/CRM/Core/Smarty/plugins/block.crmUpgradeSnapshot.php b/CRM/Core/Smarty/plugins/block.crmUpgradeSnapshot.php new file mode 100644 index 0000000000..9e95233751 --- /dev/null +++ b/CRM/Core/Smarty/plugins/block.crmUpgradeSnapshot.php @@ -0,0 +1,57 @@ +get_template_vars('upgradeRev'))) { + throw new \CRM_Core_Exception('Failed to process {crmUpgradeSnapshot}: Upgrade context required. $upgradeRev missing.'); + } + if (!preg_match(';^\s*select\s;i', $text)) { + throw new \CRM_Core_Exception('Failed to process {crmUpgradeSnapshot}: Query does not look valid'); + } + + $owner = $params['owner'] ?? 'civicrm'; + $revParts = explode('.', $smarty->get_template_vars('upgradeRev')); + $queries = CRM_Upgrade_Snapshot::createSingleTask($owner, $revParts[0] . '.' . $revParts[1], $params['name'], $text); + return $queries ? (implode(";\n", $queries) . ";\n") : ""; +} -- 2.25.1