diff --git a/app/coffee/modules/backlog/main.coffee b/app/coffee/modules/backlog/main.coffee index 529c5b27..0719ecf4 100644 --- a/app/coffee/modules/backlog/main.coffee +++ b/app/coffee/modules/backlog/main.coffee @@ -74,11 +74,12 @@ class BacklogController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.F @scope.$broadcast("showTags", @showTags) - tgLoader.pageLoaded() - # On Error promise.then null, @.onInitialDataError.bind(@) + # Finally + promise.finally tgLoader.pageLoaded + initializeEventHandlers: -> @scope.$on "usform:bulk:success", => @.loadUserstories() diff --git a/app/coffee/modules/issues/detail.coffee b/app/coffee/modules/issues/detail.coffee index bbe98b89..b0590326 100644 --- a/app/coffee/modules/issues/detail.coffee +++ b/app/coffee/modules/issues/detail.coffee @@ -62,11 +62,13 @@ class IssueDetailController extends mixOf(taiga.Controller, taiga.PageMixin) promise.then => @appTitle.set(@scope.issue.subject + " - " + @scope.project.name) @.initializeOnDeleteGoToUrl() - tgLoader.pageLoaded() # On Error promise.then null, @.onInitialDataError.bind(@) + # Finally + promise.finally tgLoader.pageLoaded + initializeEventHandlers: -> @scope.$on "attachment:create", => @rootscope.$broadcast("history:reload") diff --git a/app/coffee/modules/issues/list.coffee b/app/coffee/modules/issues/list.coffee index d85c1ace..1b186bf4 100644 --- a/app/coffee/modules/issues/list.coffee +++ b/app/coffee/modules/issues/list.coffee @@ -71,11 +71,13 @@ class IssuesController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.Fi # On Success promise.then => @appTitle.set("Issues - " + @scope.project.name) - tgLoader.pageLoaded() # On Error promise.then null, @.onInitialDataError.bind(@) + # Finally + promise.finally tgLoader.pageLoaded + @scope.$on "issueform:new:success", => @analytics.trackEvent("issue", "create", "create issue on issues list", 1) @.loadIssues() diff --git a/app/coffee/modules/kanban/main.coffee b/app/coffee/modules/kanban/main.coffee index a564e858..3e2dfbbd 100644 --- a/app/coffee/modules/kanban/main.coffee +++ b/app/coffee/modules/kanban/main.coffee @@ -78,11 +78,13 @@ class KanbanController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.Fi # On Success promise.then => @appTitle.set("Kanban - " + @scope.project.name) - tgLoader.pageLoaded() # On Error promise.then null, @.onInitialDataError.bind(@) + # Finally + promise.finally tgLoader.pageLoaded + initializeEventHandlers: -> @scope.$on "usform:new:success", => @.loadUserstories() diff --git a/app/coffee/modules/projects/main.coffee b/app/coffee/modules/projects/main.coffee index 8fc5658b..1cc49951 100644 --- a/app/coffee/modules/projects/main.coffee +++ b/app/coffee/modules/projects/main.coffee @@ -38,7 +38,7 @@ class ProjectsController extends taiga.Controller ] constructor: (@scope, @q, @rs, @rootscope, @navUrls, @auth, @location, @appTitle, @projectUrl, - @tgLoader) -> + tgLoader) -> @appTitle.set("Projects") if !@auth.isAuthenticated() @@ -51,10 +51,12 @@ class ProjectsController extends taiga.Controller promise.then () => @scope.$emit("projects:loaded") - @tgLoader.pageLoaded() promise.then null, @.onInitialDataError.bind(@) + # Finally + promise.finally tgLoader.pageLoaded + loadInitialData: -> return @rs.projects.list().then (projects) => @.projects = {'recents': projects.slice(0, 8), 'all': projects} diff --git a/app/coffee/modules/search.coffee b/app/coffee/modules/search.coffee index fc413738..69724468 100644 --- a/app/coffee/modules/search.coffee +++ b/app/coffee/modules/search.coffee @@ -88,9 +88,11 @@ class SearchController extends mixOf(taiga.Controller, taiga.PageMixin) loadSearchData: (term) -> promise = @rs.search.do(@scope.projectId, term).then (data) => @scope.searchResults = data - @tgLoader.pageLoaded() return data + promise.finally => + @tgLoader.pageLoaded() + return promise loadInitialData: -> diff --git a/app/coffee/modules/taskboard/main.coffee b/app/coffee/modules/taskboard/main.coffee index e578a06e..874c6beb 100644 --- a/app/coffee/modules/taskboard/main.coffee +++ b/app/coffee/modules/taskboard/main.coffee @@ -64,11 +64,13 @@ class TaskboardController extends mixOf(taiga.Controller, taiga.PageMixin) # On Success promise.then => @appTitle.set("Taskboard - " + @scope.project.name) - tgLoader.pageLoaded() # On Error promise.then null, @.onInitialDataError.bind(@) + # Finally + promise.finally tgLoader.pageLoaded + initializeEventHandlers: -> # TODO: Reload entire taskboard after create/edit tasks seems # a big overhead. It should be optimized in near future. diff --git a/app/coffee/modules/tasks/detail.coffee b/app/coffee/modules/tasks/detail.coffee index e315f060..0ca7fe84 100644 --- a/app/coffee/modules/tasks/detail.coffee +++ b/app/coffee/modules/tasks/detail.coffee @@ -58,10 +58,11 @@ class TaskDetailController extends mixOf(taiga.Controller, taiga.PageMixin) promise.then () => @appTitle.set(@scope.task.subject + " - " + @scope.project.name) @.initializeOnDeleteGoToUrl() - tgLoader.pageLoaded() promise.then null, @.onInitialDataError.bind(@) + promise.finally tgLoader.pageLoaded + initializeEventHandlers: -> @scope.$on "attachment:create", => @analytics.trackEvent("attachment", "create", "create attachment on task", 1) diff --git a/app/coffee/modules/team/main.coffee b/app/coffee/modules/team/main.coffee index a9bca4b2..3250e09a 100644 --- a/app/coffee/modules/team/main.coffee +++ b/app/coffee/modules/team/main.coffee @@ -53,11 +53,13 @@ class TeamController extends mixOf(taiga.Controller, taiga.PageMixin) promise.then => #TODO: i18n @appTitle.set("Team - " + @scope.project.name) - tgLoader.pageLoaded() # On Error promise.then null, @.onInitialDataError.bind(@) + # Finally + promise.finally tgLoader.pageLoaded + setRole: (role) -> if role @scope.filtersRole = role diff --git a/app/coffee/modules/userstories/detail.coffee b/app/coffee/modules/userstories/detail.coffee index 286e9258..b62adcae 100644 --- a/app/coffee/modules/userstories/detail.coffee +++ b/app/coffee/modules/userstories/detail.coffee @@ -60,10 +60,10 @@ class UserStoryDetailController extends mixOf(taiga.Controller, taiga.PageMixin) promise.then => @appTitle.set(@scope.us.subject + " - " + @scope.project.name) @.initializeOnDeleteGoToUrl() - tgLoader.pageLoaded() # On Error promise.then null, @.onInitialDataError.bind(@) + promise.finally tgLoader.pageLoaded initializeEventHandlers: -> @scope.$on "related-tasks:update", => diff --git a/app/coffee/modules/wiki/main.coffee b/app/coffee/modules/wiki/main.coffee index 8b25d446..05f2ae6a 100644 --- a/app/coffee/modules/wiki/main.coffee +++ b/app/coffee/modules/wiki/main.coffee @@ -63,10 +63,10 @@ class WikiDetailController extends mixOf(taiga.Controller, taiga.PageMixin) # On Success promise.then () => @appTitle.set("Wiki - " + @scope.project.name) - tgLoader.pageLoaded() # On Error promise.then null, @.onInitialDataError.bind(@) + promise.finally tgLoader.pageLoaded loadProject: -> return @rs.projects.getBySlug(@params.pslug).then (project) =>