Fixing arrows error on hide/show sprints in backlog
parent
a4b10210a7
commit
bc064f8e50
|
@ -59,7 +59,6 @@ class BacklogController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.F
|
|||
@scope.sectionName = "Backlog"
|
||||
@showTags = false
|
||||
@activeFilters = false
|
||||
@excludeClosedSprints = true
|
||||
|
||||
@.initializeEventHandlers()
|
||||
|
||||
|
@ -111,7 +110,8 @@ class BacklogController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.F
|
|||
@scope.$on("sprint:us:moved", @.loadSprints)
|
||||
@scope.$on("sprint:us:moved", @.loadProjectStats)
|
||||
|
||||
@scope.$on("backlog:toggle-closed-sprints-visualization", @.toggleClosedSprintsVisualization)
|
||||
@scope.$on("backlog:load-closed-sprints", @.loadClosedSprints)
|
||||
@scope.$on("backlog:unload-closed-sprints", @.unloadClosedSprints)
|
||||
|
||||
initializeSubscription: ->
|
||||
routingKey1 = "changes.project.#{@scope.projectId}.userstories"
|
||||
|
@ -146,11 +146,23 @@ class BacklogController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.F
|
|||
return @rs.projects.tagsColors(@scope.projectId).then (tags_colors) =>
|
||||
@scope.project.tags_colors = tags_colors
|
||||
|
||||
loadSprints: ->
|
||||
params = {}
|
||||
if @excludeClosedSprints
|
||||
params["closed"] = false
|
||||
unloadClosedSprints: ->
|
||||
@scope.$apply =>
|
||||
@scope.closedSprints = []
|
||||
@rootscope.$broadcast("closed-sprints:reloaded", [])
|
||||
|
||||
loadClosedSprints: ->
|
||||
params = {closed: true}
|
||||
return @rs.sprints.list(@scope.projectId, params).then (sprints) =>
|
||||
# NOTE: Fix order of USs because the filter orderBy does not work propertly in partials files
|
||||
for sprint in sprints
|
||||
sprint.user_stories = _.sortBy(sprint.user_stories, "sprint_order")
|
||||
@scope.closedSprints = sprints
|
||||
@rootscope.$broadcast("closed-sprints:reloaded", sprints)
|
||||
return sprints
|
||||
|
||||
loadSprints: ->
|
||||
params = {closed: false}
|
||||
return @rs.sprints.list(@scope.projectId, params).then (sprints) =>
|
||||
# NOTE: Fix order of USs because the filter orderBy does not work propertly in partials files
|
||||
for sprint in sprints
|
||||
|
@ -158,10 +170,8 @@ class BacklogController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.F
|
|||
|
||||
@scope.sprints = sprints
|
||||
@scope.openSprints = _.filter(sprints, (sprint) => not sprint.closed).reverse()
|
||||
@scope.closedSprints = _.filter(sprints, (sprint) => sprint.closed)
|
||||
if not @excludeClosedSprints
|
||||
@scope.totalClosedMilestones = @scope.closedSprints.length
|
||||
|
||||
@scope.closedSprints = []
|
||||
|
||||
@scope.sprintsCounter = sprints.length
|
||||
@scope.sprintsById = groupBy(sprints, (x) -> x.id)
|
||||
@rootscope.$broadcast("sprints:loaded", sprints)
|
||||
|
@ -232,10 +242,6 @@ class BacklogController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.F
|
|||
|
||||
return promise.then(=> @.loadBacklog())
|
||||
|
||||
toggleClosedSprintsVisualization: ->
|
||||
@excludeClosedSprints = not @excludeClosedSprints
|
||||
@.loadSprints()
|
||||
|
||||
filterVisibleUserstories: ->
|
||||
@scope.visibleUserstories = []
|
||||
|
||||
|
|
|
@ -135,23 +135,27 @@ module.directive("tgBacklogSprintHeader", ["$tgNavUrls", "$tgTemplate", BacklogS
|
|||
#############################################################################
|
||||
|
||||
ToggleExcludeClosedSprintsVisualization = ($rootscope, $loading) ->
|
||||
excludeClosedSprints = false
|
||||
excludeClosedSprints = true
|
||||
|
||||
link = ($scope, $el, $attrs) ->
|
||||
# Event Handlers
|
||||
$el.on "click", "", (event) ->
|
||||
excludeClosedSprints = not excludeClosedSprints
|
||||
|
||||
$loading.start($el.parent().siblings('.loading-spinner'))
|
||||
$rootscope.$broadcast("backlog:toggle-closed-sprints-visualization")
|
||||
if excludeClosedSprints
|
||||
$rootscope.$broadcast("backlog:unload-closed-sprints")
|
||||
else
|
||||
$rootscope.$broadcast("backlog:load-closed-sprints")
|
||||
|
||||
$scope.$on "$destroy", ->
|
||||
$el.off()
|
||||
|
||||
$scope.$on "sprints:loaded", (ctx, sprints) =>
|
||||
closedSprints = _.filter(sprints, (sprint) -> sprint.closed)
|
||||
$scope.$on "closed-sprints:reloaded", (ctx, sprints) =>
|
||||
$loading.finish($el.parent().siblings('.loading-spinner'))
|
||||
|
||||
#TODO: i18n
|
||||
if closedSprints.length > 0
|
||||
if sprints.length > 0
|
||||
$el.text("Hide closed sprints")
|
||||
else
|
||||
$el.text("Show closed sprints")
|
||||
|
|
|
@ -17,7 +17,7 @@ section.sprints
|
|||
|
||||
a.filter-closed-sprints(href="", ng-show="totalClosedMilestones")
|
||||
span.icon.icon-archive
|
||||
span(tg-backlog-toggle-closed-sprints-visualization="ctrl.excludeClosedSprints") Show closed sprints
|
||||
span(tg-backlog-toggle-closed-sprints-visualization) Show closed sprints
|
||||
div.loading-spinner
|
||||
|
||||
div.sprint.sprint-closed(ng-repeat="sprint in closedSprints track by sprint.id" tg-backlog-sprint="sprint", tg-sprint-sortable)
|
||||
|
|
Loading…
Reference in New Issue