fix bulk projects update
parent
739b40603f
commit
680d46a40e
|
@ -1,4 +1,4 @@
|
||||||
SortProjectsDirective = (projectsService) ->
|
SortProjectsDirective = (currentUserService) ->
|
||||||
link = (scope, el, attrs, ctrl) ->
|
link = (scope, el, attrs, ctrl) ->
|
||||||
itemEl = null
|
itemEl = null
|
||||||
|
|
||||||
|
@ -8,6 +8,7 @@ SortProjectsDirective = (projectsService) ->
|
||||||
axis: "y"
|
axis: "y"
|
||||||
opacity: .95
|
opacity: .95
|
||||||
placeholder: 'placeholder'
|
placeholder: 'placeholder'
|
||||||
|
containment: $(".master")
|
||||||
})
|
})
|
||||||
|
|
||||||
el.on "sortstop", (event, ui) ->
|
el.on "sortstop", (event, ui) ->
|
||||||
|
@ -24,7 +25,7 @@ SortProjectsDirective = (projectsService) ->
|
||||||
for value, index in sorted_project_ids
|
for value, index in sorted_project_ids
|
||||||
sortData.push({"project_id": value, "order":index})
|
sortData.push({"project_id": value, "order":index})
|
||||||
|
|
||||||
projectsService.bulkUpdateProjectsOrder(sortData)
|
currentUserService.bulkUpdateProjectsOrder(sortData)
|
||||||
|
|
||||||
directive = {
|
directive = {
|
||||||
scope: {
|
scope: {
|
|
@ -41,7 +41,6 @@ class ProjectsService extends taiga.Service
|
||||||
})
|
})
|
||||||
|
|
||||||
bulkUpdateProjectsOrder: (sortData) ->
|
bulkUpdateProjectsOrder: (sortData) ->
|
||||||
@rs.projects.bulkUpdateOrder(sortData).then =>
|
return @rs.projects.bulkUpdateOrder(sortData)
|
||||||
@.fetchProjects()
|
|
||||||
|
|
||||||
angular.module("taigaProjects").service("tgProjectsService", ProjectsService)
|
angular.module("taigaProjects").service("tgProjectsService", ProjectsService)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
describe "tgProjects", ->
|
describe "tgProjectsService", ->
|
||||||
projectsService = provide = $rootScope = null
|
projectsService = provide = $rootScope = null
|
||||||
$q = null
|
$q = null
|
||||||
mocks = {}
|
mocks = {}
|
||||||
|
@ -79,21 +79,13 @@ describe "tgProjects", ->
|
||||||
{"id": 12},
|
{"id": 12},
|
||||||
]
|
]
|
||||||
|
|
||||||
thenStub = sinon.stub()
|
|
||||||
|
|
||||||
mocks.resources.projects = {}
|
mocks.resources.projects = {}
|
||||||
mocks.resources.projects.bulkUpdateOrder = sinon.stub()
|
mocks.resources.projects.bulkUpdateOrder = sinon.stub()
|
||||||
mocks.resources.projects.bulkUpdateOrder.withArgs(projects_order).returns({
|
mocks.resources.projects.bulkUpdateOrder.withArgs(projects_order).returns(true)
|
||||||
then: thenStub
|
|
||||||
})
|
|
||||||
|
|
||||||
projectsService.fetchProjects = sinon.stub()
|
result = projectsService.bulkUpdateProjectsOrder(projects_order)
|
||||||
|
|
||||||
projectsService.bulkUpdateProjectsOrder(projects_order)
|
expect(result).to.be.true
|
||||||
|
|
||||||
thenStub.callArg(0)
|
|
||||||
|
|
||||||
expect(projectsService.fetchProjects).to.have.been.calledOnce
|
|
||||||
|
|
||||||
it "getProjectBySlug", () ->
|
it "getProjectBySlug", () ->
|
||||||
projectSlug = "project-slug"
|
projectSlug = "project-slug"
|
||||||
|
|
|
@ -29,6 +29,10 @@ class CurrentUserService
|
||||||
|
|
||||||
return @._loadUserInfo()
|
return @._loadUserInfo()
|
||||||
|
|
||||||
|
bulkUpdateProjectsOrder: (sortData) ->
|
||||||
|
@projectsService.bulkUpdateProjectsOrder(sortData).then () =>
|
||||||
|
@._loadProjects()
|
||||||
|
|
||||||
_loadProjects: () ->
|
_loadProjects: () ->
|
||||||
return @projectsService.getProjectsByUserId(@._user.get("id"))
|
return @projectsService.getProjectsByUserId(@._user.get("id"))
|
||||||
.then (projects) =>
|
.then (projects) =>
|
||||||
|
|
|
@ -11,7 +11,8 @@ describe "tgCurrentUserService", ->
|
||||||
|
|
||||||
_mockProjectsService = () ->
|
_mockProjectsService = () ->
|
||||||
mocks.projectsService = {
|
mocks.projectsService = {
|
||||||
getProjectsByUserId: sinon.stub().promise()
|
getProjectsByUserId: sinon.stub().promise(),
|
||||||
|
bulkUpdateProjectsOrder: sinon.stub().promise()
|
||||||
}
|
}
|
||||||
|
|
||||||
provide.value "tgProjectsService", mocks.projectsService
|
provide.value "tgProjectsService", mocks.projectsService
|
||||||
|
@ -75,3 +76,15 @@ describe "tgCurrentUserService", ->
|
||||||
expect(currentUserService.projectsById.get("3").get("name")).to.be.equal("fake3")
|
expect(currentUserService.projectsById.get("3").get("name")).to.be.equal("fake3")
|
||||||
|
|
||||||
done()
|
done()
|
||||||
|
|
||||||
|
it "bulkUpdateProjectsOrder and reload projects", (done) ->
|
||||||
|
fakeData = [{id: 1, id: 2}]
|
||||||
|
|
||||||
|
currentUserService._loadProjects = sinon.spy()
|
||||||
|
|
||||||
|
mocks.projectsService.bulkUpdateProjectsOrder.withArgs(fakeData).resolve()
|
||||||
|
|
||||||
|
currentUserService.bulkUpdateProjectsOrder(fakeData).then () ->
|
||||||
|
expect(currentUserService._loadProjects).to.be.callOnce
|
||||||
|
|
||||||
|
done()
|
||||||
|
|
Loading…
Reference in New Issue