Reload kanban data only if last action is related to selected filters

stable
Daniel García 2018-02-27 12:00:57 +01:00
parent b3535ae3f2
commit 28bdedf0b5
2 changed files with 22 additions and 5 deletions

View File

@ -208,6 +208,16 @@ class UsFiltersMixin
@filterRemoteStorageService.storeFilters(@scope.projectId, userFilters, @.storeCustomFiltersName).then(@.generateFilters)
@.generateFilters()
isFilterDataTypeSelected: (filterDataType) ->
if (@.selectedFilters.length == 0)
return false
for filter in @.selectedFilters
if (filter['dataType'] == filterDataType)
return true
return false
generateFilters: (milestone) ->
@.storeFilters(@params.pslug, @location.search(), @.storeFiltersName)

View File

@ -200,7 +200,8 @@ class KanbanController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.Fi
@kanbanUserstoriesService.replaceModel(usModel)
@repo.save(usModel).then =>
@.filtersReloadContent()
if @.isFilterDataTypeSelected('assigned_to')
@.filtersReloadContent()
refreshTagsColors: ->
return @rs.projects.tagsColors(@scope.projectId).then (tags_colors) =>
@ -301,14 +302,14 @@ class KanbanController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.Fi
moveUs: (ctx, usList, newStatusId, index) ->
@.cleanSelectedUss()
usList = _.map usList, (us) =>
usList = _.map usList, (us) =>
return @kanbanUserstoriesService.getUsModel(us.id)
data = @kanbanUserstoriesService.move(usList, newStatusId, index)
promise = @rs.userstories.bulkUpdateKanbanOrder(@scope.projectId, data.bulkOrders)
promise.then () =>
promise.then () =>
# saving
# drag single or different status
options = {
@ -322,7 +323,7 @@ class KanbanController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.Fi
include_tasks: true
}
promises = _.map usList, (us) =>
promises = _.map usList, (us) =>
@repo.save(us, true, params, options, true)
promise = @q.all(promises)
@ -333,7 +334,13 @@ class KanbanController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.Fi
if headers && headers['taiga-info-order-updated']
order = JSON.parse(headers['taiga-info-order-updated'])
@kanbanUserstoriesService.assignOrders(order)
@scope.$broadcast("redraw:wip")
@scope.$broadcast("redraw:wip")
if @.isFilterDataTypeSelected('status')
@.filtersReloadContent()
return promise
module.controller("KanbanController", KanbanController)