Search ext: misc cleanup & fixes
[civicrm-core.git] / ext / search / ang / search / crmSearchActions.component.js
index 6711ea135ba7cb5494b54f62ab49820ba9677d1d..212b8d914f85b8acf26638da53fe8501cc756f49 100644 (file)
@@ -4,18 +4,16 @@
   angular.module('search').component('crmSearchActions', {
     bindings: {
       entity: '<',
+      refresh: '&',
       ids: '<'
     },
-    require: {
-      search: '^crmSearch'
-    },
     templateUrl: '~/search/crmSearchActions.html',
     controller: function($scope, crmApi4, dialogService, searchMeta) {
       var ts = $scope.ts = CRM.ts(),
-        entityTitle = searchMeta.getEntity(this.entity).titlePlural,
         ctrl = this;
 
-      this.init = function() {
+      this.$onInit = function() {
+        var entityTitle = searchMeta.getEntity(ctrl.entity).titlePlural;
         if (!ctrl.actions) {
           var actions = _.transform(_.cloneDeep(CRM.vars.search.actions), function (actions, action) {
             if (_.includes(action.entities, ctrl.entity)) {
@@ -44,7 +42,7 @@
           var path = $scope.$eval(action.crmPopup.path, data),
             query = action.crmPopup.query && $scope.$eval(action.crmPopup.query, data);
           CRM.loadForm(CRM.url(path, query))
-            .on('crmFormSuccess', ctrl.search.refreshPage);
+            .on('crmFormSuccess', ctrl.refresh);
         }
         // If action uses dialogService
         else if (action.uiDialog) {
@@ -53,7 +51,7 @@
             title: action.title
           });
           dialogService.open('crmSearchAction', action.uiDialog.templateUrl, data, options)
-            .then(ctrl.search.refreshPage);
+            .then(ctrl.refresh);
         }
       };
     }