Merge remote-tracking branch 'upstream/4.5' into 4.5-master-2015-03-09-21-44-34
[civicrm-core.git] / js / angular-crmCaseType.js
index ea2ca50d48740ca70393d3534a642bf7b76ba7be..cb5e5797a57d99f50ab29e697c22ec6d17b7e52c 100644 (file)
@@ -1,10 +1,6 @@
 (function(angular, $, _) {
 
-  var partialUrl = function(relPath) {
-    return CRM.resourceUrls['civicrm'] + '/partials/crmCaseType/' + relPath;
-  };
-
-  var crmCaseType = angular.module('crmCaseType', ['ngRoute', 'ui.utils', 'crmUi', 'unsavedChanges']);
+  var crmCaseType = angular.module('crmCaseType', ['ngRoute', 'ui.utils', 'crmUi', 'unsavedChanges', 'crmUtil']);
 
   // Note: This template will be passed to cloneDeep(), so don't put any funny stuff in here!
   var newCaseTypeTemplate = {
@@ -39,7 +35,7 @@
   crmCaseType.config(['$routeProvider',
     function($routeProvider) {
       $routeProvider.when('/caseType', {
-        templateUrl: partialUrl('list.html'),
+        templateUrl: '~/crmCaseType/list.html',
         controller: 'CaseTypeListCtrl',
         resolve: {
           caseTypes: function($route, crmApi) {
@@ -48,7 +44,7 @@
         }
       });
       $routeProvider.when('/caseType/:id', {
-        templateUrl: partialUrl('edit.html'),
+        templateUrl: '~/crmCaseType/edit.html',
         controller: 'CaseTypeCtrl',
         resolve: {
           apiCalls: function($route, crmApi) {
   });
 
   crmCaseType.controller('CaseTypeCtrl', function($scope, crmApi, apiCalls) {
-    $scope.partialUrl = partialUrl;
+    var ts = $scope.ts = CRM.ts(null);
 
     $scope.activityStatuses = _.values(apiCalls.actStatuses.values);
     $scope.activityTypes = apiCalls.actTypes.values;
     };
 
     $scope.isForkable = function() {
-      return !$scope.caseType.id || $scope.caseType.is_forkable
+      return !$scope.caseType.id || $scope.caseType.is_forkable;
     };
 
     $scope.isNewActivitySetAllowed = function(workflow) {
         case 'timeline':
           return true;
         case 'sequence':
-          return 0 == _.where($scope.caseType.definition.activitySets, {sequence: '1'}).length;
+          return 0 === _.where($scope.caseType.definition.activitySets, {sequence: '1'}).length;
         default:
-          if (console && console.log) console.log('Denied access to unrecognized workflow: (' + workflow + ')');
+          CRM.console('warn', 'Denied access to unrecognized workflow: (' + workflow + ')');
           return false;
       }
     };
      */
     $scope.activityTableTemplate = function(activitySet) {
       if (activitySet.timeline) {
-        return partialUrl('timelineTable.html');
+        return '~/crmCaseType/timelineTable.html';
       } else if (activitySet.sequence) {
-        return partialUrl('sequenceTable.html');
+        return '~/crmCaseType/sequenceTable.html';
       } else {
         return '';
       }
 
     $scope.save = function() {
       var result = crmApi('CaseType', 'create', $scope.caseType, true);
-      result.success(function(data) {
-        if (data.is_error == 0) {
+      result.then(function(data) {
+        if (data.is_error === 0 || data.is_error == '0') {
           $scope.caseType.id = data.id;
           window.location.href = '#/caseType';
         }
     $scope.toggleCaseType = function (caseType) {
       caseType.is_active = (caseType.is_active == '1') ? '0' : '1';
       crmApi('CaseType', 'create', caseType, true)
-        .then(function (data) {
-          if (data.is_error) {
-            caseType.is_active = (caseType.is_active == '1') ? '0' : '1'; // revert
-            $scope.$digest();
-          }
+        .catch(function (data) {
+          caseType.is_active = (caseType.is_active == '1') ? '0' : '1'; // revert
+          $scope.$digest();
         });
     };
     $scope.deleteCaseType = function (caseType) {
         }
       })
         .then(function (data) {
-          if (!data.is_error) {
-            delete caseTypes.values[caseType.id];
-            $scope.$digest();
-          }
+          delete caseTypes.values[caseType.id];
+          $scope.$digest();
         });
     };
     $scope.revertCaseType = function (caseType) {
       caseType.definition = 'null';
       caseType.is_forked = '0';
       crmApi('CaseType', 'create', caseType, true)
-        .then(function (data) {
-          if (data.is_error) {
-            caseType.is_forked = '1'; // restore
-            $scope.$digest();
-          }
+        .catch(function (data) {
+          caseType.is_forked = '1'; // restore
+          $scope.$digest();
         });
     };
   });
 
-})(angular, CRM.$, CRM._);
\ No newline at end of file
+})(angular, CRM.$, CRM._);