diff --git a/app/modules/home/duties/duty.directive.coffee b/app/modules/home/duties/duty.directive.coffee index bfda7866..0cb45456 100644 --- a/app/modules/home/duties/duty.directive.coffee +++ b/app/modules/home/duties/duty.directive.coffee @@ -22,4 +22,10 @@ DutyDirective = (navurls, projectsService, $translate) -> return directive -angular.module("taigaHome").directive("tgDuty", ["$tgNavUrls", "tgProjectsService", "$translate", DutyDirective]) +DutyDirective.$inject = [ + "$tgNavUrls", + "tgProjectsService", + "$translate" +] + +angular.module("taigaHome").directive("tgDuty", DutyDirective) diff --git a/app/modules/home/home.service.coffee b/app/modules/home/home.service.coffee index f0d6c5a4..0d1615ba 100644 --- a/app/modules/home/home.service.coffee +++ b/app/modules/home/home.service.coffee @@ -17,8 +17,9 @@ class HomeService extends taiga.Service project: project.slug ref: duty.ref } - Object.defineProperty(duty, "url", {get: () => @navurls.resolve("project-#{duty._name}-detail", ctx)}) - Object.defineProperty(duty, "projectName", {get: () => project.name}) + duty.url = @navurls.resolve("project-#{duty._name}-detail", ctx) + duty.projectName = project.name + return duty @._workInProgress = Immutable.fromJS({ assignedTo: { diff --git a/app/modules/home/home.service.spec.coffee b/app/modules/home/home.service.spec.coffee index 5d7c1cc8..3803a6b4 100644 --- a/app/modules/home/home.service.spec.coffee +++ b/app/modules/home/home.service.spec.coffee @@ -132,3 +132,52 @@ describe "tgHome", -> expect(homeService._inProgress).to.be.true timeout.flush() expect(homeService._inProgress).to.be.false + + it "project info filled", () -> + duty = { + id: 66 + _name: "userstories" + ref: 123 + project: 1 + } + mocks.thenStubAssignedToUserstories.callArg(0, [duty]) + mocks.thenStubAssignedToTasks.callArg(0) + mocks.thenStubAssignedToIssues.callArg(0) + mocks.thenStubWatchingUserstories.callArg(0) + mocks.thenStubWatchingTasks.callArg(0) + mocks.thenStubWatchingIssues.callArg(0) + timeout.flush() + + projectsById = { + get: () -> { + name: "Testing project" + slug: "testing-project" + } + } + + mocks.tgNavUrls.resolve + .withArgs("project-userstories-detail", {project: "testing-project", ref: 123}) + .returns("/testing-project/us/123") + + homeService.attachProjectInfoToWorkInProgress(projectsById) + expect(homeService.workInProgress.toJS()).to.be.eql({ + assignedTo: { + userStories: [ + { + id: 66 + _name: "userstories" + ref: 123 + project: 1 + url: "/testing-project/us/123" + projectName: "Testing project" + } + ] + tasks: [] + issues: [] + } + watching: { + userStories: [] + tasks: [] + issues: [] + } + }) diff --git a/app/modules/home/projects/home-project-list-directive.spec.coffee b/app/modules/home/projects/home-project-list-directive.spec.coffee index 1ee02cbe..2ad8b7b6 100644 --- a/app/modules/home/projects/home-project-list-directive.spec.coffee +++ b/app/modules/home/projects/home-project-list-directive.spec.coffee @@ -11,7 +11,7 @@ describe "homeProjectListDirective", () -> _mockTgProjectsService = () -> mockTgProjectsService = { newProject: sinon.stub() - projects: { + currentUserProjects: { get: sinon.stub() } } @@ -49,7 +49,7 @@ describe "homeProjectListDirective", () -> ]) it "home project list directive scope content", () -> - mockTgProjectsService.projects.get + mockTgProjectsService.currentUserProjects.get .withArgs("recents") .returns(recents) diff --git a/app/modules/home/projects/home-project-list.directive.coffee b/app/modules/home/projects/home-project-list.directive.coffee index 3bcbe7d9..17947490 100644 --- a/app/modules/home/projects/home-project-list.directive.coffee +++ b/app/modules/home/projects/home-project-list.directive.coffee @@ -2,7 +2,7 @@ HomeProjectListDirective = (projectsService) -> link = (scope, el, attrs, ctrl) -> scope.vm = {} - taiga.defineImmutableProperty(scope.vm, "projects", () -> projectsService.projects.get("recents")) + taiga.defineImmutableProperty(scope.vm, "projects", () -> projectsService.currentUserProjects.get("recents")) scope.vm.newProject = -> projectsService.newProject() @@ -15,4 +15,6 @@ HomeProjectListDirective = (projectsService) -> return directive -angular.module("taigaHome").directive("tgHomeProjectList", ["tgProjectsService", HomeProjectListDirective]) +HomeProjectListDirective.$inject = ["tgProjectsService"] + +angular.module("taigaHome").directive("tgHomeProjectList", HomeProjectListDirective) diff --git a/app/modules/navigation-bar/dropdown-project-list/dropdown-project-list.directive.coffee b/app/modules/navigation-bar/dropdown-project-list/dropdown-project-list.directive.coffee index 8ffe96c8..be019c11 100644 --- a/app/modules/navigation-bar/dropdown-project-list/dropdown-project-list.directive.coffee +++ b/app/modules/navigation-bar/dropdown-project-list/dropdown-project-list.directive.coffee @@ -2,7 +2,7 @@ DropdownProjectListDirective = (projectsService) -> link = (scope, el, attrs, ctrl) -> scope.vm = {} - taiga.defineImmutableProperty(scope.vm, "projects", () -> projectsService.projects.get("recents")) + taiga.defineImmutableProperty(scope.vm, "projects", () -> projectsService.currentUserProjects.get("recents")) scope.vm.newProject = -> projectsService.newProject() @@ -15,6 +15,8 @@ DropdownProjectListDirective = (projectsService) -> return directive +DropdownProjectListDirective.$inject = [ + "tgProjectsService" +] -angular.module("taigaNavigationBar").directive("tgDropdownProjectList", - ["tgProjectsService", DropdownProjectListDirective]) +angular.module("taigaNavigationBar").directive("tgDropdownProjectList", DropdownProjectListDirective) diff --git a/app/modules/navigation-bar/dropdown-project-list/dropdown-project-list.directive.spec.coffee b/app/modules/navigation-bar/dropdown-project-list/dropdown-project-list.directive.spec.coffee index 90420887..46fe9b75 100644 --- a/app/modules/navigation-bar/dropdown-project-list/dropdown-project-list.directive.spec.coffee +++ b/app/modules/navigation-bar/dropdown-project-list/dropdown-project-list.directive.spec.coffee @@ -11,7 +11,7 @@ describe "dropdownProjectListDirective", () -> _mockTgProjectsService = () -> mockTgProjectsService = { newProject: sinon.stub() - projects: { + currentUserProjects: { get: sinon.stub() } } @@ -49,7 +49,7 @@ describe "dropdownProjectListDirective", () -> ]) it "dropdown project list directive scope content", () -> - mockTgProjectsService.projects.get + mockTgProjectsService.currentUserProjects.get .withArgs("recents") .returns(recents) diff --git a/app/modules/navigation-bar/dropdown-user/dropdown-user.directive.coffee b/app/modules/navigation-bar/dropdown-user/dropdown-user.directive.coffee index 018bd433..18f46138 100644 --- a/app/modules/navigation-bar/dropdown-user/dropdown-user.directive.coffee +++ b/app/modules/navigation-bar/dropdown-user/dropdown-user.directive.coffee @@ -21,6 +21,12 @@ DropdownUserDirective = (authService, configService, locationService, return directive -angular.module("taigaNavigationBar").directive("tgDropdownUser", - ["$tgAuth", "$tgConfig", "$tgLocation", "$tgNavUrls", "tgFeedbackService", - DropdownUserDirective]) +DropdownUserDirective.$inject = [ + "$tgAuth", + "$tgConfig", + "$tgLocation", + "$tgNavUrls", + "tgFeedbackService" +] + +angular.module("taigaNavigationBar").directive("tgDropdownUser", DropdownUserDirective) diff --git a/app/modules/navigation-bar/navigation-bar.directive.coffee b/app/modules/navigation-bar/navigation-bar.directive.coffee index 9c23259c..cdda7d28 100644 --- a/app/modules/navigation-bar/navigation-bar.directive.coffee +++ b/app/modules/navigation-bar/navigation-bar.directive.coffee @@ -2,7 +2,7 @@ NavigationBarDirective = (projectsService) -> link = (scope, el, attrs, ctrl) -> scope.vm = {} - taiga.defineImmutableProperty(scope.vm, "projects", () -> projectsService.projects.get("recents")) + taiga.defineImmutableProperty(scope.vm, "projects", () -> projectsService.currentUserProjects.get("recents")) directive = { templateUrl: "navigation-bar/navigation-bar.html" @@ -12,6 +12,8 @@ NavigationBarDirective = (projectsService) -> return directive +NavigationBarDirective.$inject = [ + "tgProjectsService" +] -angular.module("taigaNavigationBar").directive("tgNavigationBar", - ["tgProjectsService", NavigationBarDirective]) +angular.module("taigaNavigationBar").directive("tgNavigationBar", NavigationBarDirective) diff --git a/app/modules/navigation-bar/navigation-bar.directive.spec.coffee b/app/modules/navigation-bar/navigation-bar.directive.spec.coffee index 8e909f54..31f2b13e 100644 --- a/app/modules/navigation-bar/navigation-bar.directive.spec.coffee +++ b/app/modules/navigation-bar/navigation-bar.directive.spec.coffee @@ -11,7 +11,7 @@ describe "navigationBarDirective", () -> _mockTgProjectsService = () -> mockTgProjectsService = { newProject: sinon.stub() - projects: { + currentUserProjects: { get: sinon.stub() } } @@ -57,7 +57,7 @@ describe "navigationBarDirective", () -> ]) it "navigation bar directive scope content", () -> - mockTgProjectsService.projects.get + mockTgProjectsService.currentUserProjects.get .withArgs("recents") .returns(recents) diff --git a/app/modules/profile/profile-projects/profile-projects.directive.coffee b/app/modules/profile/profile-projects/profile-projects.directive.coffee index d58ea85c..bb9c2f71 100644 --- a/app/modules/profile/profile-projects/profile-projects.directive.coffee +++ b/app/modules/profile/profile-projects/profile-projects.directive.coffee @@ -1,7 +1,7 @@ ProfileProjectsDirective = (projectsService) -> link = (scope, el, attrs, ctrl) -> scope.vm = {} - taiga.defineImmutableProperty(scope.vm, "projects", () -> projectsService.projects.get("all")) + taiga.defineImmutableProperty(scope.vm, "projects", () -> projectsService.currentUserProjects.get("all")) directive = { templateUrl: "profile/profile-projects/profile-projects.html" diff --git a/app/modules/projects/listing/projects-listing.directive.coffee b/app/modules/projects/listing/projects-listing.directive.coffee index b88e72cd..1ae889f8 100644 --- a/app/modules/projects/listing/projects-listing.directive.coffee +++ b/app/modules/projects/listing/projects-listing.directive.coffee @@ -26,7 +26,7 @@ ProjectsListingDirective = (projectsService) -> projectsService.bulkUpdateProjectsOrder(sortData) - taiga.defineImmutableProperty(scope.vm, "projects", () -> projectsService.projects.get("all")) + taiga.defineImmutableProperty(scope.vm, "projects", () -> projectsService.currentUserProjects.get("all")) scope.vm.newProject = -> projectsService.newProject()