CRM-15855 - crmMailing - After explicitly saving a draft, leave.
authorTim Otten <totten@civicrm.org>
Wed, 28 Jan 2015 05:52:45 +0000 (21:52 -0800)
committerTim Otten <totten@civicrm.org>
Wed, 28 Jan 2015 06:37:51 +0000 (22:37 -0800)
js/angular-crm-util.js
js/angular-crmMailing.js
partials/crmMailing/edit-unified.html
partials/crmMailing/edit-unified2.html
partials/crmMailing/edit-wizard.html
partials/crmMailing/edit.html

index f122c9c8e48735d8d09756e0d1302fb2e031a473..2d840e2d9b5d08b161ba4b7c57d0afcd91b51143 100644 (file)
@@ -43,7 +43,7 @@
       var blocks = 0;
       var result = function(promise) {
         blocks++;
-        promise.finally(function() {
+        return promise.finally(function() {
           blocks--;
         });
       };
index 668cf554be35f20e89e6b2e1db99e8c8c32f081c..5bad720dd3b534dcb48753fde1a725cdaa9673db 100644 (file)
             return crmMailingMgr.submit($scope.mailing);
           })
           .then(function () {
-            leave('scheduled');
+            $scope.leave('scheduled');
           })
         ;
       return block(crmStatus({start: ts('Submitting...'), success: ts('Submitted')}, promise));
       return block(crmStatus({start: ts('Deleting...'), success: ts('Deleted')},
         crmMailingMgr.delete($scope.mailing)
           .then(function () {
-            leave('unscheduled');
+            $scope.leave('unscheduled');
           })
       ));
     };
 
     // @param string listingScreen 'archive', 'scheduled', 'unscheduled'
-    function leave(listingScreen) {
+    $scope.leave = function leave(listingScreen) {
       switch (listingScreen) {
         case 'archive':
           window.location = CRM.url('civicrm/mailing/browse/archived', {
             scheduled: 'false'
           });
       }
-    }
+    };
   });
 
   // Controller for the edit-recipients fields (
index 24e497c67b560ca1943e1d3d95f69bc2ce20a298..f423a098a92da56b10852e1ec9ccbad9af83d7c6 100644 (file)
@@ -46,7 +46,7 @@
     </div>
 
     <button ng-disabled="block.check() || crmMailing.$invalid" ng-click="submit()">{{ts('Submit Mailing')}}</button>
-    <button ng-disabled="block.check()" ng-click="save()">{{ts('Save Draft')}}</button>
+    <button ng-disabled="block.check()" ng-click="save().then(leave)">{{ts('Save Draft')}}</button>
     <button ng-disabled="block.check()" crm-confirm="{title:ts('Delete Draft?'), message:ts('Are you sure you want to delete the draft mailing?')}" on-yes="delete()">{{ts('Delete Draft')}}</button>
   </div>
 </form>
index 1d1916086c52678c3b1d725407fcce6967e833c0..6ccc6999c9b1e8d083708770b87b51a80cf7c88c 100644 (file)
@@ -42,7 +42,7 @@
     </div>
 
     <button ng-disabled="block.check() || crmMailing.$invalid" ng-click="submit()">{{ts('Submit Mailing')}}</button>
-    <button ng-disabled="block.check()" ng-click="save()">{{ts('Save Draft')}}</button>
+    <button ng-disabled="block.check()" ng-click="save().then(leave)">{{ts('Save Draft')}}</button>
     <button ng-disabled="block.check()" crm-confirm="{title:ts('Delete Draft?'), message:ts('Are you sure you want to delete the draft mailing?')}" on-yes="delete()">{{ts('Delete Draft')}}</button>
   </div>
 </form>
index 7bda0d62c84e16392711da464aa95fbfa7698aaf..50d0f44e97f3e335f950f53629e42901b729088e 100644 (file)
@@ -64,7 +64,7 @@
 
       <span crm-ui-wizard-buttons style="float:right;">
         <button ng-disabled="block.check()" crm-confirm="{title:ts('Delete Draft?'), message:ts('Are you sure you want to delete the draft mailing?')}" on-yes="delete()">{{ts('Delete Draft')}}</button>
-        <button ng-disabled="block.check()" ng-click="save()">{{ts('Save Draft')}}</button>
+        <button ng-disabled="block.check()" ng-click="save().then(leave)">{{ts('Save Draft')}}</button>
       </span>
     </div>
   </div>
index 6c33c71554e82d4fee3911a20b17ab018ca89353..4cf76b6abe0f3def53a93490d41727a309cfbe09 100644 (file)
@@ -61,7 +61,7 @@
 
       <span crm-ui-wizard-buttons style="float:right;">
         <button ng-disabled="block.check()" crm-confirm="{title:ts('Delete Draft?'), message:ts('Are you sure you want to delete the draft mailing?')}" on-yes="delete()">{{ts('Delete Draft')}}</button>
-        <button ng-disabled="block.check()" ng-click="save()">{{ts('Save Draft')}}</button>
+        <button ng-disabled="block.check()" ng-click="save().then(leave)">{{ts('Save Draft')}}</button>
       </span>
     </div>
   </div>