<page_type>1</page_type>
<weight>14</weight>
</item>
- <item>
- <path>civicrm/contact/search/custom/list</path>
- <title>Custom Searches</title>
- <page_callback>CRM_Contact_Page_CustomSearch</page_callback>
- <page_type>1</page_type>
- <weight>16</weight>
- </item>
<item>
<path>civicrm/contact/add</path>
<title>New Contact</title>
</classloader>
<mixins>
<mixin>menu-xml@1.0.0</mixin>
+ <mixin>mgd-php@1.0.0</mixin>
</mixins>
<civix>
<namespace>CRM/Legacycustomsearches</namespace>
+ <format>22.05.2</format>
</civix>
</extension>
function legacycustomsearches_civicrm_entityTypes(&$entityTypes) {
_legacycustomsearches_civix_civicrm_entityTypes($entityTypes);
}
-
-// --- Functions below this ship commented out. Uncomment as required. ---
-
-/**
- * Implements hook_civicrm_preProcess().
- *
- * @link https://docs.civicrm.org/dev/en/latest/hooks/hook_civicrm_preProcess
- */
-//function legacycustomsearches_civicrm_preProcess($formName, &$form) {
-//
-//}
-
-/**
- * Implements hook_civicrm_navigationMenu().
- *
- * @link https://docs.civicrm.org/dev/en/latest/hooks/hook_civicrm_navigationMenu
- */
-//function legacycustomsearches_civicrm_navigationMenu(&$menu) {
-// _legacycustomsearches_civix_insert_navigation_menu($menu, 'Mailings', array(
-// 'label' => E::ts('New subliminal message'),
-// 'name' => 'mailing_subliminal_message',
-// 'url' => 'civicrm/mailing/subliminal',
-// 'permission' => 'access CiviMail',
-// 'operator' => 'OR',
-// 'separator' => 0,
-// ));
-// _legacycustomsearches_civix_navigationMenu($menu);
-//}
--- /dev/null
+<?php
+
+use Civi\Api4\Domain;
+use CRM_Legacycustomsearches_ExtensionUtil as E;
+
+$menuItems = [];
+$domains = Domain::get(FALSE)
+ ->addSelect('id')
+ ->execute();
+foreach ($domains as $domain) {
+ $menuItems[] = [
+ 'name' => 'Custom Searches' . $domain['id'],
+ 'entity' => 'Navigation',
+ 'cleanup' => 'always',
+ 'update' => 'unmodified',
+ 'params' => [
+ 'version' => 4,
+ 'values' => [
+ 'label' => E::ts('Custom Searches'),
+ 'name' => 'Custom Searches',
+ 'url' => 'civicrm/contact/search/custom/list?reset=1',
+ 'permission' => NULL,
+ 'permission_operator' => 'OR',
+ 'parent_id.name' => 'Search',
+ 'is_active' => TRUE,
+ 'has_separator' => 2,
+ 'weight' => 15,
+ 'domain_id' => $domain['id'],
+ ],
+ 'match' => ['domain_id', 'name'],
+ ],
+ ];
+ $menuItems[] = [
+ 'name' => 'Manage Custom Searches' . $domain['id'],
+ 'entity' => 'Navigation',
+ 'cleanup' => 'always',
+ 'update' => 'unmodified',
+ 'params' => [
+ 'version' => 4,
+ 'values' => [
+ 'label' => E::ts('Manage Custom Searches'),
+ 'name' => 'Manage Custom Searches',
+ 'url' => 'civicrm/admin/options/custom_search?reset=1',
+ 'permission' => 'administer CiviCRM',
+ 'permission_operator' => 'OR',
+ 'parent_id.name' => 'Customize Data and Screens',
+ 'is_active' => TRUE,
+ 'weight' => 15,
+ 'domain_id' => $domain['id'],
+ ],
+ 'match' => ['domain_id', 'name'],
+ ],
+ ];
+}
+return $menuItems;
<weight>10</weight>
<page_type>1</page_type>
</item>
+ <item>
+ <path>civicrm/contact/search/custom/list</path>
+ <title>Custom Searches</title>
+ <page_callback>CRM_Contact_Page_CustomSearch</page_callback>
+ <page_type>1</page_type>
+ <weight>16</weight>
+ </item>
</menu>
( @domainID, 'civicrm/pledge/search&reset=1', 'Find Pledges', 'Find Pledges', 'access CiviPledge', '', @searchlastID, '1', NULL, 10 ),
( @domainID, 'civicrm/activity/search&reset=1', 'Find Activities', 'Find Activities', NULL, '', @searchlastID, '1', '1', 11 );
-INSERT INTO civicrm_navigation
- ( domain_id, url, label, name, permission, permission_operator, parent_id, is_active, has_separator, weight )
-VALUES
- ( @domainID, 'civicrm/contact/search/custom/list&reset=1', 'Custom Searches', 'Custom Searches', NULL, '', @searchlastID, '1', NULL, 12 );
-
INSERT INTO civicrm_navigation
( domain_id, url, label, name, permission, permission_operator, parent_id, is_active, has_separator, weight )
VALUES
( @domainID, 'civicrm/admin/setting/preferences/display&reset=1', 'Display Preferences', 'Display Preferences', 'administer CiviCRM', '', @CustomizelastID, '1', NULL, 9 ),
( @domainID, 'civicrm/admin/setting/search&reset=1', 'Search Preferences', 'Search Preferences', 'administer CiviCRM', '', @CustomizelastID, '1', NULL, 10 ),
( @domainID, 'civicrm/admin/menu&reset=1', 'Navigation Menu', 'Navigation Menu', 'administer CiviCRM', '', @CustomizelastID, '1', NULL, 11 ),
- ( @domainID, 'civicrm/admin/options/wordreplacements&reset=1','Word Replacements','Word Replacements', 'administer CiviCRM', '', @CustomizelastID, '1', NULL, 12 ),
- ( @domainID, 'civicrm/admin/options/custom_search&reset=1&group=custom_search', 'Manage Custom Searches', 'Manage Custom Searches', 'administer CiviCRM', '', @CustomizelastID, '1', NULL, 13 );
+ ( @domainID, 'civicrm/admin/options/wordreplacements&reset=1','Word Replacements','Word Replacements', 'administer CiviCRM', '', @CustomizelastID, '1', NULL, 12 );
INSERT INTO civicrm_navigation
( domain_id, url, label, name, permission, permission_operator, parent_id, is_active, has_separator, weight )
( @domainID, 'civicrm/pledge/search?reset=1', '{ts escape="sql" skip="true"}Find Pledges{/ts}', 'Find Pledges', 'access CiviPledge', '', @searchlastID, '1', NULL, 10 ),
( @domainID, 'civicrm/activity/search?reset=1', '{ts escape="sql" skip="true"}Find Activities{/ts}', 'Find Activities', NULL, '', @searchlastID, '1', '1', 11 );
-INSERT INTO civicrm_navigation
- ( domain_id, url, label, name, permission, permission_operator, parent_id, is_active, has_separator, weight )
-VALUES
- ( @domainID, 'civicrm/contact/search/custom/list?reset=1', '{ts escape="sql" skip="true"}Custom Searches{/ts}', 'Custom Searches', NULL, '', @searchlastID, '1', NULL, 12 );
-
INSERT INTO civicrm_navigation
( domain_id, url, label, name, permission, permission_operator, parent_id, is_active, has_separator, weight, icon )
VALUES
( @domainID, 'civicrm/admin/setting/search?reset=1', '{ts escape="sql" skip="true"}Search Preferences{/ts}', 'Search Preferences', 'administer CiviCRM', '', @CustomizelastID, '1', NULL, 10 ),
( @domainID, 'civicrm/admin/setting/preferences/date?reset=1', '{ts escape="sql" skip="true"}Date Preferences{/ts}', 'Date Preferences', 'administer CiviCRM', '', @CustomizelastID, '1', NULL, 11 ),
( @domainID, 'civicrm/admin/menu?reset=1', '{ts escape="sql" skip="true"}Navigation Menu{/ts}', 'Navigation Menu', 'administer CiviCRM', '', @CustomizelastID, '1', NULL, 12 ),
- ( @domainID, 'civicrm/admin/options/wordreplacements?reset=1','{ts escape="sql" skip="true"}Word Replacements{/ts}','Word Replacements', 'administer CiviCRM', '', @CustomizelastID, '1', NULL, 13 ),
- ( @domainID, 'civicrm/admin/options/custom_search?reset=1', '{ts escape="sql" skip="true"}Manage Custom Searches{/ts}', 'Manage Custom Searches', 'administer CiviCRM', '', @CustomizelastID, '1', NULL, 14 );
+ ( @domainID, 'civicrm/admin/options/wordreplacements?reset=1','{ts escape="sql" skip="true"}Word Replacements{/ts}','Word Replacements', 'administer CiviCRM', '', @CustomizelastID, '1', NULL, 13 );
INSERT INTO civicrm_navigation
( domain_id, url, label, name, permission, permission_operator, parent_id, is_active, has_separator, weight )