From c4c439d3052491eacbdbc0cdd9e397f56fb2f2c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jes=C3=BAs=20Espino?= Date: Tue, 21 Oct 2014 09:36:14 +0200 Subject: [PATCH] Refactored the delete button --- app/coffee/modules/common/components.coffee | 15 +++++---------- app/partials/issues-detail.jade | 7 ++++--- app/partials/task-detail.jade | 7 ++++--- app/partials/us-detail.jade | 7 ++++--- 4 files changed, 17 insertions(+), 19 deletions(-) diff --git a/app/coffee/modules/common/components.coffee b/app/coffee/modules/common/components.coffee index 49945726..3e6e0f0a 100644 --- a/app/coffee/modules/common/components.coffee +++ b/app/coffee/modules/common/components.coffee @@ -395,18 +395,11 @@ module.directive("tgBlockButton", ["$rootScope", "$tgLoading", BlockButtonDirect ############################################################################# DeleteButtonDirective = ($repo, $confirm, $navurls, $location) -> - template = _.template(""" + template = """ Delete - """) + """ link = ($scope, $el, $attrs, $model) -> - render = _.once (item) -> - $el.html(template()) - - $scope.$watch $attrs.ngModel, (item) -> - return if not item - render(item) - $scope.$on "$destroy", -> $el.off() @@ -419,7 +412,8 @@ DeleteButtonDirective = ($repo, $confirm, $navurls, $location) -> promise = $repo.remove($model.$modelValue) promise.then => finish() - $location.path($navurls.resolve($attrs.onDeleteGoToUrl, {project: $attrs.projectSlug})) + url = $navurls.resolve($attrs.onDeleteGoToUrl, {project: $attrs.projectSlug}) + $location.path(url) promise.then null, => finish(false) $confirm.notify("error") @@ -428,6 +422,7 @@ DeleteButtonDirective = ($repo, $confirm, $navurls, $location) -> link: link restrict: "EA" require: "ngModel" + template: template } module.directive("tgDeleteButton", ["$tgRepo", "$tgConfirm", "$tgNavUrls", "$tgLocation", DeleteButtonDirective]) diff --git a/app/partials/issues-detail.jade b/app/partials/issues-detail.jade index 2d86cf23..54e39830 100644 --- a/app/partials/issues-detail.jade +++ b/app/partials/issues-detail.jade @@ -55,9 +55,10 @@ block content section.us-detail-settings tg-promote-issue-to-us-button(tg-check-permission="add_us", ng-model="issue") div(tg-check-permission="modify_issue", tg-block-button, ng-model="issue") - div(tg-check-permission="delete_issue", tg-delete-button, - on-delete-go-to-url="project-issues", - project-slug="{{ project.slug }}" ng-model="issue") + tg-delete-button(tg-check-permission="delete_issue", + on-delete-go-to-url="project-issues", + project-slug="{{ project.slug }}", + ng-model="issue") div.lightbox.lightbox-block.hidden(tg-lb-block, title="Blocking issue", ng-model="issue") div.lightbox.lightbox-select-user(tg-lb-assignedto) diff --git a/app/partials/task-detail.jade b/app/partials/task-detail.jade index ccaa46aa..45bb5fdc 100644 --- a/app/partials/task-detail.jade +++ b/app/partials/task-detail.jade @@ -54,9 +54,10 @@ block content section.us-detail-settings fieldset(tg-task-is-iocaine-button, tg-check-permission="modify_task", ng-model="task") div(tg-check-permission="modify_task", tg-block-button, ng-model="task") - div(tg-check-permission="delete_task", tg-delete-button, - on-delete-go-to-url="project-backlog", - project-slug="{{ project.slug }}" ng-model="task") + tg-delete-button(tg-check-permission="delete_task", + on-delete-go-to-url="project-backlog", + project-slug="{{ project.slug }}", + ng-model="task") div.lightbox.lightbox-block.hidden(tg-lb-block, title="Blocking task", ng-model="task") div.lightbox.lightbox-select-user(tg-lb-assignedto) diff --git a/app/partials/us-detail.jade b/app/partials/us-detail.jade index 90e7b600..2e530e76 100644 --- a/app/partials/us-detail.jade +++ b/app/partials/us-detail.jade @@ -61,9 +61,10 @@ block content tg-us-team-requirement-button(ng-model="us") tg-us-client-requirement-button(ng-model="us") div(tg-check-permission="modify_us", tg-block-button, ng-model="us") - div(tg-check-permission="delete_us", tg-delete-button, - on-delete-go-to-url="project-backlog", - project-slug="{{ project.slug }}" ng-model="us") + tg-delete-button(tg-check-permission="delete_us", + on-delete-go-to-url="project-backlog", + project-slug="{{ project.slug }}", + ng-model="us") div.lightbox.lightbox-block.hidden(tg-lb-block, title="Blocking us", ng-model="us") div.lightbox.lightbox-select-user.hidden(tg-lb-assignedto)