Fix related userstories view for users without edit permission
parent
2389bf4785
commit
b7cc9e9c1e
|
@ -20,12 +20,18 @@
|
||||||
module = angular.module("taigaEpics")
|
module = angular.module("taigaEpics")
|
||||||
|
|
||||||
class RelatedUserStoriesController
|
class RelatedUserStoriesController
|
||||||
@.$inject = ["tgEpicsService"]
|
@.$inject = [
|
||||||
|
"tgProjectService",
|
||||||
|
"tgEpicsService"
|
||||||
|
]
|
||||||
|
|
||||||
constructor: (@epicsService) ->
|
constructor: (@projectService, @epicsService) ->
|
||||||
@.sectionName = "Epics"
|
@.sectionName = "Epics"
|
||||||
@.showCreateRelatedUserstoriesLightbox = false
|
@.showCreateRelatedUserstoriesLightbox = false
|
||||||
|
|
||||||
|
userCanSort: () ->
|
||||||
|
return @projectService.hasPermission("modify_epic")
|
||||||
|
|
||||||
loadRelatedUserstories: () ->
|
loadRelatedUserstories: () ->
|
||||||
@epicsService.listRelatedUserStories(@.epic)
|
@epicsService.listRelatedUserStories(@.epic)
|
||||||
.then (userstories) =>
|
.then (userstories) =>
|
||||||
|
|
|
@ -15,7 +15,7 @@ section.related-userstories
|
||||||
)
|
)
|
||||||
tg-related-userstory-row.row(
|
tg-related-userstory-row.row(
|
||||||
tg-repeat="us in vm.userstories track by us.get('id')"
|
tg-repeat="us in vm.userstories track by us.get('id')"
|
||||||
ng-class="{closed: us.get('is_closed'), blocked: us.get('is_blocked')}"
|
ng-class="{closed: us.get('is_closed'), blocked: us.get('is_blocked'), sortable: vm.userCanSort()}"
|
||||||
userstory="us"
|
userstory="us"
|
||||||
epic="vm.epic"
|
epic="vm.epic"
|
||||||
project="vm.project"
|
project="vm.project"
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
tg-svg.icon-drag(
|
tg-svg.icon-drag(
|
||||||
svg-icon="icon-drag"
|
svg-icon="icon-drag"
|
||||||
|
tg-check-permission="modify_epic"
|
||||||
)
|
)
|
||||||
|
|
||||||
.userstory-name
|
.userstory-name
|
||||||
|
@ -33,7 +34,9 @@ tg-svg.icon-drag(
|
||||||
)
|
)
|
||||||
|
|
||||||
.status
|
.status
|
||||||
span.userstory-status(ng-style="{'color': vm.userstory.getIn(['status_extra_info', 'color'])}") {{vm.userstory.getIn(['status_extra_info', 'name'])}}
|
span.userstory-status(
|
||||||
|
ng-style="{'color': vm.userstory.getIn(['status_extra_info', 'color'])}"
|
||||||
|
) {{vm.userstory.getIn(['status_extra_info', 'name'])}}
|
||||||
|
|
||||||
.assigned-to-column
|
.assigned-to-column
|
||||||
figure.avatar
|
figure.avatar
|
||||||
|
|
|
@ -2,26 +2,28 @@ tg-related-userstory-row {
|
||||||
@include font-size(small);
|
@include font-size(small);
|
||||||
align-items: center;
|
align-items: center;
|
||||||
border-bottom: 1px solid $whitish;
|
border-bottom: 1px solid $whitish;
|
||||||
cursor: move;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
padding: .5rem 0 .5rem .5rem;
|
padding: .5rem 0 .5rem .5rem;
|
||||||
&:hover {
|
&.sortable {
|
||||||
background: rgba($primary-light, .05);
|
cursor: move;
|
||||||
.userstory-settings {
|
&:hover {
|
||||||
opacity: 1;
|
background: rgba($primary-light, .05);
|
||||||
transition: all .2s ease-in;
|
.userstory-settings {
|
||||||
|
opacity: 1;
|
||||||
|
transition: all .2s ease-in;
|
||||||
|
}
|
||||||
|
.icon-drag {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
.icon-drag {
|
.icon-drag {
|
||||||
opacity: 1;
|
@include svg-size(.75rem);
|
||||||
|
cursor: move;
|
||||||
|
fill: $whitish;
|
||||||
|
opacity: 0;
|
||||||
|
transition: opacity .1s;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.icon-drag {
|
|
||||||
@include svg-size(.75rem);
|
|
||||||
cursor: move;
|
|
||||||
fill: $whitish;
|
|
||||||
opacity: 0;
|
|
||||||
transition: opacity .1s;
|
|
||||||
}
|
|
||||||
.status {
|
.status {
|
||||||
flex-shrink: 0;
|
flex-shrink: 0;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|
Loading…
Reference in New Issue