From ef4aeb29abec47eaa4fa2c3cfa0238a2a39cedc8 Mon Sep 17 00:00:00 2001 From: Declan Ramsay Date: Wed, 11 Jan 2017 08:04:34 +1300 Subject: [PATCH] Fixes task left in odd setting when cancelling editing with ESC / Escape Key; add click outside to close modal #8308 #8321 (#8382) * Remove backdrop property from open modal call to allow click-outside to close, call cancelTaskEdit function on dismissal of edit modal via ESC or click-outside * Remove commented out code, change catch function to normal (non-arrow) * Modify task services test mock openModal function, to handle new use of subsequent promise resolution functionality * Tidy old edit controls away --- test/client-old/spec/services/taskServicesSpec.js | 9 ++++++++- website/client-old/js/services/taskServices.js | 5 ++++- website/views/shared/tasks/meta_controls.jade | 13 ++----------- 3 files changed, 14 insertions(+), 13 deletions(-) diff --git a/test/client-old/spec/services/taskServicesSpec.js b/test/client-old/spec/services/taskServicesSpec.js index 3c51ab1da9..aef024cda4 100644 --- a/test/client-old/spec/services/taskServicesSpec.js +++ b/test/client-old/spec/services/taskServicesSpec.js @@ -17,7 +17,14 @@ describe('Tasks Service', function() { tasks = Tasks; }); - rootScope.openModal = function () {}; + rootScope.openModal = function() { + return { + result: { + then: function() {}, + catch: function() {}, + }, + }; + }; }); it('calls get user tasks endpoint', function() { diff --git a/website/client-old/js/services/taskServices.js b/website/client-old/js/services/taskServices.js index 52d131fea8..7b61ad223b 100644 --- a/website/client-old/js/services/taskServices.js +++ b/website/client-old/js/services/taskServices.js @@ -271,7 +271,10 @@ angular.module('habitrpg') } modalScope.cancelTaskEdit = cancelTaskEdit; - $rootScope.openModal('task-edit', {scope: modalScope, backdrop: 'static'}); + $rootScope.openModal('task-edit', {scope: modalScope }) + .result.catch(function() { + cancelTaskEdit(task); + }); } function cancelTaskEdit(task) { diff --git a/website/views/shared/tasks/meta_controls.jade b/website/views/shared/tasks/meta_controls.jade index 20dc360416..96e0f5caca 100644 --- a/website/views/shared/tasks/meta_controls.jade +++ b/website/views/shared/tasks/meta_controls.jade @@ -33,18 +33,9 @@ span.glyphicon.glyphicon-tags(tooltip='{{Shared.appliedTags(user.tags, task.tags)}}', ng-hide='Shared.noTags(task.tags)') // edit - a(ng-hide='task._editing || (checkGroupAccess && !checkGroupAccess(obj))', ng-click='editTask(task, user, Shared.taskClasses(task, user.filters, user.preferences.dayStart, user.lastCron, list.showCompleted, main))', tooltip=env.t('edit')) + a(ng-hide='checkGroupAccess && !checkGroupAccess(obj)', ng-click='editTask(task, user, Shared.taskClasses(task, user.filters, user.preferences.dayStart, user.lastCron, list.showCompleted, main))', tooltip=env.t('edit')) |   - span.glyphicon.glyphicon-pencil(ng-hide='task._editing') - |   - - a(ng-hide='!task._editing', ng-click='cancelTaskEdit(task)', tooltip=env.t('cancel')) - span.glyphicon.glyphicon-remove(ng-hide='!task._editing') - |   - - // save - a(ng-hide='!task._editing', ng-click='saveTask(task)', tooltip=env.t('save')) - span.glyphicon.glyphicon-ok(ng-hide='!task._editing') + span.glyphicon.glyphicon-pencil |   //challenges