Search ext: update to plural entity titles
authorColeman Watts <coleman@civicrm.org>
Sun, 13 Sep 2020 17:21:16 +0000 (13:21 -0400)
committerColeman Watts <coleman@civicrm.org>
Sun, 13 Sep 2020 17:24:32 +0000 (13:24 -0400)
ext/search/CRM/Search/Page/Ang.php
ext/search/ang/search/crmSearch.component.js
ext/search/ang/search/crmSearch.html
ext/search/ang/search/crmSearchActions.component.js

index b6a03e2bbf76d216dfb430ace86f300d39785ff2..2549f622d5b0f6307c359e4126a85b87f7429aec 100644 (file)
@@ -83,9 +83,9 @@ class CRM_Search_Page_Ang extends CRM_Core_Page {
    */
   private function getSchema() {
     $schema = \Civi\Api4\Entity::get()
-      ->addSelect('name', 'title', 'description', 'icon')
+      ->addSelect('name', 'titlePlural', 'description', 'icon')
       ->addWhere('name', '!=', 'Entity')
-      ->addOrderBy('title')
+      ->addOrderBy('titlePlural')
       ->setChain([
         'get' => ['$name', 'getActions', ['where' => [['name', '=', 'get']]], ['params']],
       ])->execute();
index 51f2532bc49a8b4c7482a15692339d41a53f52ac..66a14f0f2c101c8e770519a7d3fbdba0b48a0dfb 100644 (file)
@@ -23,7 +23,7 @@
 
       $scope.controls = {};
       $scope.joinTypes = [{k: false, v: ts('Optional')}, {k: true, v: ts('Required')}];
-      $scope.entities = formatForSelect2(CRM.vars.search.schema, 'name', 'title', ['description', 'icon']);
+      $scope.entities = formatForSelect2(CRM.vars.search.schema, 'name', 'titlePlural', ['description', 'icon']);
       this.perm = {
         editGroups: CRM.checkPerm('edit groups')
       };
@@ -40,7 +40,7 @@
           if (entity) {
             joinEntities.push({
               id: link.entity + ' AS ' + link.alias,
-              text: entity.title,
+              text: entity.titlePlural,
               description: '(' + link.alias + ')',
               icon: entity.icon
             });
 
         var mainEntity = searchMeta.getEntity(ctrl.entity),
           result = [{
-            text: mainEntity.title,
+            text: mainEntity.titlePlural,
             icon: mainEntity.icon,
             children: formatFields(ctrl.entity, '')
           }];
           var joinName = join[0].split(' AS '),
             joinEntity = searchMeta.getEntity(joinName[0]);
           result.push({
-            text: joinEntity.title + ' (' + joinName[1] + ')',
+            text: joinEntity.titlePlural + ' (' + joinName[1] + ')',
             icon: joinEntity.icon,
             children: formatFields(joinEntity.name, joinName[1] + '.')
           });
       $scope.saveGroup = function() {
         var selectField = ctrl.entity === 'Contact' ? 'id' : 'contact_id';
         if (ctrl.entity !== 'Contact' && !searchMeta.getField('contact_id')) {
-          CRM.alert(ts('Cannot create smart group from %1.', {1: searchMeta.getEntity(true).title}), ts('Missing contact_id'), 'error', {expires: 5000});
+          CRM.alert(ts('Cannot create smart group from %1.', {1: searchMeta.getEntity(true).titlePlural}), ts('Missing contact_id'), 'error', {expires: 5000});
           return;
         }
         var model = {
index bd0feabcba10f045de80214f40fd56b556c5133d..3500ef31c7a8f7916aea9ef2ca2688172edb8c1f 100644 (file)
@@ -1,5 +1,5 @@
 <div id="bootstrap-theme" class="crm-search">
-  <h1 crm-page-title>{{:: ts('Create Search for %1', {1: $ctrl.getEntity($ctrl.entity).title}) }}</h1>
+  <h1 crm-page-title>{{:: ts('Create Search for %1', {1: $ctrl.getEntity($ctrl.entity).titlePlural}) }}</h1>
 
   <!--This warning will show if bootstrap is unavailable. Normally it will be hidden by the bootstrap .collapse class.-->
   <div class="messages warning no-popup collapse">
index 138cb089a9251a02a325c60ee5c8e6689fe34d96..6711ea135ba7cb5494b54f62ab49820ba9677d1d 100644 (file)
@@ -12,7 +12,7 @@
     templateUrl: '~/search/crmSearchActions.html',
     controller: function($scope, crmApi4, dialogService, searchMeta) {
       var ts = $scope.ts = CRM.ts(),
-        entityTitle = searchMeta.getEntity(this.entity).title,
+        entityTitle = searchMeta.getEntity(this.entity).titlePlural,
         ctrl = this;
 
       this.init = function() {