Update for tags route.

This commit is contained in:
kunw 2017-04-28 11:04:45 +08:00
parent 0a8840ee06
commit ed488e683d
2 changed files with 21 additions and 11 deletions

View File

@ -94,6 +94,7 @@ const harborRoutes: Routes = [
{
path: 'tags/:id/:repo',
component: TagRepositoryComponent,
canActivate: [MemberGuard],
resolve: {
projectResolver: ProjectRoutingResolver
}

View File

@ -33,20 +33,29 @@ export class MemberGuard implements CanActivate, CanActivateChild {
let projectId = route.params['id'];
this.sessionService.setProjectMembers([]);
return new Promise((resolve, reject) => {
this.projectService.checkProjectMember(projectId)
.subscribe(
res=>{
this.sessionService.setProjectMembers(res);
return resolve(true)
},
error => {
//Add exception for repository in project detail router activation.
if(state.url.endsWith('repository')) {
if(!this.sessionService.getCurrentUser()) {
return resolve(true);
}
this.projectService.checkProjectMember(projectId)
.subscribe(
res=>{
this.sessionService.setProjectMembers(res);
return resolve(true)
},
error => {
//Add exception for repository in project detail router activation.
if(state.url.endsWith('repository')) {
return resolve(true);
}
this.projectService.getProject(projectId).subscribe(project=>{
if(project.public === 1) {
return resolve(true);
} else {
this.router.navigate([CommonRoutes.HARBOR_DEFAULT]);
return resolve(false);
}
this.router.navigate([CommonRoutes.HARBOR_DEFAULT]);
return resolve(false);
});
});
});
}