CRM-14798 - crmApi - Allow batching
authorTim Otten <totten@civicrm.org>
Thu, 3 Jul 2014 02:38:31 +0000 (19:38 -0700)
committerTim Otten <totten@civicrm.org>
Thu, 3 Jul 2014 03:08:49 +0000 (20:08 -0700)
templates/CRM/Core/Page/Angular.tpl

index 1ff32b35d9e520b73fe2baf7d739d92c34227e02..eb7b4421ee353a3aee73985f2b7ff09b1a6a5de9 100644 (file)
@@ -4,7 +4,7 @@
 </div>
 
 <script type="text/javascript">
-  (function() {
+  (function(angular, _) {
     var crmApp = angular.module('crmApp', CRM.angular.modules);
     crmApp.config(['$routeProvider',
       function($routeProvider) {
     crmApp.factory('crmApi', function(){
       return function(entity, action, params, message) {
         // JSON serialization in CRM.api3 is not aware of Angular metadata like $$hash
-        return CRM.api3(entity, action, eval('('+angular.toJson(params)+')'), message);
+        if (_.isObject(entity)) {
+          return CRM.api3(eval('('+angular.toJson(entity)+')'), message);
+        } else {
+          return CRM.api3(entity, action, eval('('+angular.toJson(params)+')'), message);
+        }
       };
     });
-  })();
+  })(angular, CRM._);
 </script>
 
 {/literal}
\ No newline at end of file