Implementing prev and next for backlog and taskboard
parent
86489c9c86
commit
f3e4bcbba2
|
@ -99,6 +99,8 @@ class BacklogController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.F
|
|||
for name, values of @scope.urlFilters
|
||||
@scope.httpParams[name] = values
|
||||
|
||||
@rs.userstories.storeQueryParams(@scope.projectId, @scope.httpParams)
|
||||
|
||||
return @rs.userstories.listUnassigned(@scope.projectId, @scope.httpParams).then (userstories) =>
|
||||
@scope.userstories = userstories
|
||||
|
||||
|
@ -164,6 +166,13 @@ class BacklogController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.F
|
|||
res = _.find(selectedStatuses, (x) -> x == taiga.toString(us.status))
|
||||
return not res
|
||||
|
||||
@rs.userstories.storeQueryParams(@scope.projectId, {
|
||||
"status": selectedStatuses,
|
||||
"tags": selectedTags,
|
||||
"project": @scope.projectId
|
||||
"milestone": "null"
|
||||
})
|
||||
|
||||
prepareBulkUpdateData: (uses) ->
|
||||
return _.map(uses, (x) -> {"us_id": x.id, "order": x.order})
|
||||
|
||||
|
|
|
@ -26,6 +26,7 @@ generateHash = taiga.generateHash
|
|||
|
||||
resourceProvider = ($repo, $http, $urls, $storage) ->
|
||||
service = {}
|
||||
hashSuffix = "issues-queryparams"
|
||||
|
||||
service.get = (projectId, issueId) ->
|
||||
params = service.getQueryParams(projectId)
|
||||
|
@ -54,15 +55,16 @@ resourceProvider = ($repo, $http, $urls, $storage) ->
|
|||
|
||||
service.listValues = (projectId, type) ->
|
||||
params = {"project": projectId}
|
||||
service.storeQueryParams(projectId, params)
|
||||
return $repo.queryMany(type, params)
|
||||
|
||||
service.storeQueryParams = (projectId, params) ->
|
||||
ns = "#{projectId}:issues-queryparams"
|
||||
ns = "#{projectId}:#{hashSuffix}"
|
||||
hash = generateHash([projectId, ns])
|
||||
$storage.set(hash, params)
|
||||
|
||||
service.getQueryParams = (projectId) ->
|
||||
ns = "#{projectId}:issues-queryparams"
|
||||
ns = "#{projectId}:#{hashSuffix}"
|
||||
hash = generateHash([projectId, ns])
|
||||
return $storage.get(hash) or {}
|
||||
|
||||
|
|
|
@ -21,11 +21,15 @@
|
|||
|
||||
taiga = @.taiga
|
||||
|
||||
resourceProvider = ($repo, $model) ->
|
||||
generateHash = taiga.generateHash
|
||||
|
||||
resourceProvider = ($repo, $model, $storage) ->
|
||||
service = {}
|
||||
hashSuffixUserstories = "userstories-queryparams"
|
||||
|
||||
service.get = (projectId, sprintId) ->
|
||||
return $repo.queryOne("milestones", sprintId).then (sprint) ->
|
||||
service.storeUserstoriesQueryParams(projectId, {"milestone": sprintId})
|
||||
uses = sprint.user_stories
|
||||
uses = _.map(uses, (u) -> $model.make_model("userstories", u))
|
||||
sprint._attrs.user_stories = uses
|
||||
|
@ -43,9 +47,13 @@ resourceProvider = ($repo, $model) ->
|
|||
m._attrs.user_stories = uses
|
||||
return milestones
|
||||
|
||||
service.storeUserstoriesQueryParams = (projectId, params) ->
|
||||
ns = "#{projectId}:#{hashSuffixUserstories}"
|
||||
hash = generateHash([projectId, ns])
|
||||
$storage.set(hash, params)
|
||||
|
||||
return (instance) ->
|
||||
instance.sprints = service
|
||||
|
||||
module = angular.module("taigaResources")
|
||||
module.factory("$tgSprintsResourcesProvider", ["$tgRepo", "$tgModel", resourceProvider])
|
||||
module.factory("$tgSprintsResourcesProvider", ["$tgRepo", "$tgModel", "$tgStorage", resourceProvider])
|
||||
|
|
|
@ -21,17 +21,21 @@
|
|||
|
||||
taiga = @.taiga
|
||||
|
||||
resourceProvider = ($repo, $http, $urls) ->
|
||||
generateHash = taiga.generateHash
|
||||
|
||||
resourceProvider = ($repo, $http, $urls, $storage) ->
|
||||
service = {}
|
||||
hashSuffix = "userstories-queryparams"
|
||||
|
||||
service.get = (projectId, usId) ->
|
||||
return $repo.queryOne("userstories", usId)
|
||||
params = service.getQueryParams(projectId)
|
||||
params.project = projectId
|
||||
return $repo.queryOne("userstories", usId, params)
|
||||
|
||||
service.listUnassigned = (projectId, filters) ->
|
||||
params = {"project": projectId, "milestone": "null"}
|
||||
|
||||
params = _.extend({}, params, filters or {})
|
||||
|
||||
service.storeQueryParams(projectId, params)
|
||||
return $repo.queryMany("userstories", params)
|
||||
|
||||
service.bulkCreate = (projectId, status, bulk) ->
|
||||
|
@ -55,10 +59,21 @@ resourceProvider = ($repo, $http, $urls) ->
|
|||
|
||||
service.listValues = (projectId, type) ->
|
||||
params = {"project": projectId}
|
||||
service.storeQueryParams(projectId, params)
|
||||
return $repo.queryMany(type, params)
|
||||
|
||||
service.storeQueryParams = (projectId, params) ->
|
||||
ns = "#{projectId}:#{hashSuffix}"
|
||||
hash = generateHash([projectId, ns])
|
||||
$storage.set(hash, params)
|
||||
|
||||
service.getQueryParams = (projectId) ->
|
||||
ns = "#{projectId}:#{hashSuffix}"
|
||||
hash = generateHash([projectId, ns])
|
||||
return $storage.get(hash) or {}
|
||||
|
||||
return (instance) ->
|
||||
instance.userstories = service
|
||||
|
||||
module = angular.module("taigaResources")
|
||||
module.factory("$tgUserstoriesResourcesProvider", ["$tgRepo", "$tgHttp", "$tgUrls", resourceProvider])
|
||||
module.factory("$tgUserstoriesResourcesProvider", ["$tgRepo", "$tgHttp", "$tgUrls", "$tgStorage", resourceProvider])
|
||||
|
|
Loading…
Reference in New Issue