diff --git a/app/coffee/modules/nav.coffee b/app/coffee/modules/nav.coffee index b3d693d3..bea0cbbc 100644 --- a/app/coffee/modules/nav.coffee +++ b/app/coffee/modules/nav.coffee @@ -29,9 +29,9 @@ module = angular.module("taigaNavMenu", []) ## Projects Navigation ############################################################################# class ProjectsNavigationController extends taiga.Controller - @.$inject = ["$scope", "$tgResources"] + @.$inject = ["$scope", "$tgResources", "$tgNavUrls"] - constructor: (@scope, @rs) -> + constructor: (@scope, @rs, @navurls) -> promise = @.loadInitialData() promise.then null, -> console.log "FAIL" @@ -40,6 +40,19 @@ class ProjectsNavigationController extends taiga.Controller loadInitialData: -> return @rs.projects.list().then (projects) => @scope.projects = projects + for project in projects + if project.is_backlog_activated and project.my_permissions.indexOf("view_us")>-1 + url = @navurls.resolve("project-backlog") + else if project.is_kanban_activated and project.my_permissions.indexOf("view_us")>-1 + url = @navurls.resolve("project-kanban") + else if project.is_wiki_activated and project.my_permissions.indexOf("view_wiki_pages")>-1 + url = @navurls.resolve("project-wiki") + else if project.is_issues_activated and project.my_permissions.indexOf("view_issues")>-1 + url = @navurls.resolve("project-issues") + else + url = @navurls.resolve("project") + + project.url = @navurls.formatUrl(url, {'project': project.slug}) return projects diff --git a/app/partials/views/modules/projects-nav.jade b/app/partials/views/modules/projects-nav.jade index 5319f27a..470214da 100644 --- a/app/partials/views/modules/projects-nav.jade +++ b/app/partials/views/modules/projects-nav.jade @@ -20,5 +20,5 @@ nav.projects-nav(ng-controller="ProjectNavController as ctrl", tg-projects-nav) div.projects-pagination(tg-projects-pagination, active="projects.length && !projectsSearch.$.length") ul.projects-list li(ng-repeat="project in projects|filter:projectsSearch:strict track by project.id") - a(href="", tg-bo-bind="project.name", tg-nav="project:project=project.slug") + a(href="", tg-bo-bind="project.name", ng-href="{{ project.url }}") span.icon.icon-arrow-right