From 1f99b601fac5ae3748bb7eaad0f79c0ffec12d92 Mon Sep 17 00:00:00 2001 From: Coleman Watts Date: Fri, 2 Oct 2015 16:04:15 -0400 Subject: [PATCH] CRM-16907 - Fix navigation upgrade script --- CRM/Upgrade/Incremental/sql/4.6.6.mysql.tpl | 33 ----------------- CRM/Upgrade/Incremental/sql/4.6.9.mysql.tpl | 41 +++++++++++++++++++++ 2 files changed, 41 insertions(+), 33 deletions(-) diff --git a/CRM/Upgrade/Incremental/sql/4.6.6.mysql.tpl b/CRM/Upgrade/Incremental/sql/4.6.6.mysql.tpl index 2e0516f0a1..3da4eb64e2 100644 --- a/CRM/Upgrade/Incremental/sql/4.6.6.mysql.tpl +++ b/CRM/Upgrade/Incremental/sql/4.6.6.mysql.tpl @@ -1,4 +1,3 @@ - {* file to handle db changes in 4.6.6 during upgrade *} -- CRM-16846 - This upgrade may have been previously skipped so moving it to 4.6.6 @@ -10,35 +9,3 @@ UPDATE `civicrm_navigation` SET `permission` = 'edit message templates' WHERE `parent_id` = @messages_menu_id AND name = 'Message Templates'; - --- CRM-16907 -SELECT @adminHelplastID := id FROM civicrm_navigation WHERE name = 'Help'; -UPDATE civicrm_navigation -SET name = 'Support', label = 'Support' -WHERE id = @adminHelplastID; - -DELETE FROM civicrm_navigation where parent_id = @adminHelplastID; - -INSERT INTO civicrm_navigation - ( domain_id, url, label, name, permission, permission_operator, parent_id, is_active, has_separator, weight ) - VALUES - ( {$domainID}, 'http://civicrm.org/get-started?src=iam', '{ts escape="sql" skip="true"}Get started{/ts}', 'Get started', NULL, 'AND', @adminHelplastID, '1', NULL, 1 ), - ( {$domainID}, 'http://civicrm.org/documentation?src=iam', '{ts escape="sql" skip="true"}Documentation{/ts}', 'Documentation', NULL, 'AND', @adminHelplastID, '1', NULL, 2 ), - ( {$domainID}, 'http://civicrm.org/ask-a-question?src=iam', '{ts escape="sql" skip="true"}Ask a question{/ts}', 'Ask a question', NULL, 'AND', @adminHelplastID, '1', NULL, 3 ), - ( {$domainID}, 'http://civicrm.org/experts?src=iam', '{ts escape="sql" skip="true"}Get expert help{/ts}', 'Get expert help', NULL, 'AND', @adminHelplastID, '1', NULL, 4 ), - ( {$domainID}, 'http://civicrm.org/about?src=iam', '{ts escape="sql" skip="true"}About CiviCRM{/ts}', 'About CiviCRM', NULL, 'AND', @adminHelplastID, '1', 1, 5 ), - ( {$domainID}, 'http://civicrm.org/register-your-site?src=iam', '{ts escape="sql" skip="true"}Register your site{/ts}', 'Register your site', NULL, 'AND', @adminHelplastID, '1', NULL, 6 ), - ( {$domainID}, 'http://civicrm.org/become-member?src=iam', '{ts escape="sql" skip="true"}Join CiviCRM{/ts}', 'Join CiviCRM', NULL, 'AND', @adminHelplastID, '1', NULL, 7 ); - -INSERT INTO civicrm_navigation - ( domain_id, url, label, name, permission, permission_operator, parent_id, is_active, has_separator, weight ) - VALUES - ( {$domainID}, NULL, '{ts escape="sql" skip="true"}Developer{/ts}', 'Developer', 'administer CiviCRM', '', @adminHelplastID, '1', 1, 8 ); - -SET @devellastID:=LAST_INSERT_ID(); -INSERT INTO civicrm_navigation - ( domain_id, url, label, name, permission, permission_operator, parent_id, is_active, has_separator, weight ) - VALUES - ( {$domainID}, 'civicrm/api', '{ts escape="sql" skip="true"}API Explorer{/ts}','API Explorer', 'administer CiviCRM', '', @devellastID, '1', NULL, 1 ), - ( {$domainID}, 'http://civicrm.org/developer-documentation?src=iam', '{ts escape="sql" skip="true"}Developer Docs{/ts}', 'Developer Docs', 'administer CiviCRM', '', @devellastID, '1', NULL, 3 ); - \ No newline at end of file diff --git a/CRM/Upgrade/Incremental/sql/4.6.9.mysql.tpl b/CRM/Upgrade/Incremental/sql/4.6.9.mysql.tpl index 991a0e96de..e195f325ea 100644 --- a/CRM/Upgrade/Incremental/sql/4.6.9.mysql.tpl +++ b/CRM/Upgrade/Incremental/sql/4.6.9.mysql.tpl @@ -13,3 +13,44 @@ ADD COLUMN `created_id` int(10) unsigned DEFAULT NULL COMMENT 'FK to contact tab ADD COLUMN `owner_id` int(10) unsigned DEFAULT NULL COMMENT 'FK to contact table.', ADD CONSTRAINT `FK_civicrm_report_instance_created_id` FOREIGN KEY (`created_id`) REFERENCES `civicrm_contact` (`id`) ON DELETE SET NULL, ADD CONSTRAINT `FK_civicrm_report_instance_owner_id` FOREIGN KEY (`owner_id`) REFERENCES `civicrm_contact` (`id`) ON DELETE SET NULL; + +-- CRM-16907 +SELECT @navMaxWeight := MAX(ROUND(weight)) from civicrm_navigation WHERE parent_id IS NULL; + +-- Add "support" menu if it's not there already +INSERT INTO civicrm_navigation (domain_id, label, name, is_active, weight) +SELECT * FROM (SELECT {$domainID} as domain_id, 'Support' as label, 'Help' as name, 1 as is_active, @navMaxWeight + 1 as weight) AS tmp +WHERE NOT EXISTS ( +SELECT name FROM civicrm_navigation WHERE name = 'Help' AND domain_id = {$domainID} +) LIMIT 1; + +SELECT @adminHelplastID := id FROM civicrm_navigation WHERE name = 'Help' AND domain_id = {$domainID}; + +UPDATE civicrm_navigation +SET name = 'Support', label = '{ts escape="sql" skip="true"}Support{/ts}' +WHERE id = @adminHelplastID; + +DELETE FROM civicrm_navigation where parent_id = @adminHelplastID; + +INSERT INTO civicrm_navigation +( domain_id, url, label, name, permission, permission_operator, parent_id, is_active, has_separator, weight ) +VALUES +( {$domainID}, 'http://civicrm.org/get-started?src=iam', '{ts escape="sql" skip="true"}Get started{/ts}', 'Get started', NULL, 'AND', @adminHelplastID, '1', NULL, 1 ), +( {$domainID}, 'http://civicrm.org/documentation?src=iam', '{ts escape="sql" skip="true"}Documentation{/ts}', 'Documentation', NULL, 'AND', @adminHelplastID, '1', NULL, 2 ), +( {$domainID}, 'http://civicrm.org/ask-a-question?src=iam', '{ts escape="sql" skip="true"}Ask a question{/ts}', 'Ask a question', NULL, 'AND', @adminHelplastID, '1', NULL, 3 ), +( {$domainID}, 'http://civicrm.org/experts?src=iam', '{ts escape="sql" skip="true"}Get expert help{/ts}', 'Get expert help', NULL, 'AND', @adminHelplastID, '1', NULL, 4 ), +( {$domainID}, 'http://civicrm.org/about?src=iam', '{ts escape="sql" skip="true"}About CiviCRM{/ts}', 'About CiviCRM', NULL, 'AND', @adminHelplastID, '1', 1, 5 ), +( {$domainID}, 'http://civicrm.org/register-your-site?src=iam', '{ts escape="sql" skip="true"}Register your site{/ts}', 'Register your site', NULL, 'AND', @adminHelplastID, '1', NULL, 6 ), +( {$domainID}, 'http://civicrm.org/become-member?src=iam', '{ts escape="sql" skip="true"}Join CiviCRM{/ts}', 'Join CiviCRM', NULL, 'AND', @adminHelplastID, '1', NULL, 7 ); + +INSERT INTO civicrm_navigation +( domain_id, url, label, name, permission, permission_operator, parent_id, is_active, has_separator, weight ) +VALUES +( {$domainID}, NULL, '{ts escape="sql" skip="true"}Developer{/ts}', 'Developer', 'administer CiviCRM', '', @adminHelplastID, '1', 1, 8 ); + +SET @devellastID:=LAST_INSERT_ID(); +INSERT INTO civicrm_navigation +( domain_id, url, label, name, permission, permission_operator, parent_id, is_active, has_separator, weight ) +VALUES +( {$domainID}, 'civicrm/api', '{ts escape="sql" skip="true"}API Explorer{/ts}','API Explorer', 'administer CiviCRM', '', @devellastID, '1', NULL, 1 ), +( {$domainID}, 'http://civicrm.org/developer-documentation?src=iam', '{ts escape="sql" skip="true"}Developer Docs{/ts}', 'Developer Docs', 'administer CiviCRM', '', @devellastID, '1', NULL, 3 ); -- 2.25.1