Fixing attachments permissions
parent
9a1bf4fef2
commit
3ed3eaf99d
|
@ -209,7 +209,7 @@ AttachmentDirective = ($log, $repo, $confirm) ->
|
||||||
$ctrl = $el.controller()
|
$ctrl = $el.controller()
|
||||||
|
|
||||||
render = (attachment, isEditable=false) ->
|
render = (attachment, isEditable=false) ->
|
||||||
modifyPermission = $scope.project.my_permissions.indexOf("modify_#{$attrs.ngModel}") > -1
|
modifyPermission = $scope.project.my_permissions.indexOf("modify_#{$attrs.permissionSuffix}") > -1
|
||||||
ctx = {
|
ctx = {
|
||||||
id: attachment.id
|
id: attachment.id
|
||||||
name: attachment.name
|
name: attachment.name
|
||||||
|
|
|
@ -44,7 +44,9 @@ WikiNavDirective = ($tgrepo, $log, $location, $confirm) ->
|
||||||
<li class="wiki-link" data-id="<%- index %>">
|
<li class="wiki-link" data-id="<%- index %>">
|
||||||
<a title="<%- link.title %>">
|
<a title="<%- link.title %>">
|
||||||
<span class="link-title"><%- link.title %></span>
|
<span class="link-title"><%- link.title %></span>
|
||||||
|
<% if (deleteWikiLinkPermission) { %>
|
||||||
<span class="icon icon-delete"></span>
|
<span class="icon icon-delete"></span>
|
||||||
|
<% } %>
|
||||||
</a>
|
</a>
|
||||||
<input type="text" placeholder="name" class="hidden" value="<%- link.title %>" />
|
<input type="text" placeholder="name" class="hidden" value="<%- link.title %>" />
|
||||||
</li>
|
</li>
|
||||||
|
@ -54,7 +56,9 @@ WikiNavDirective = ($tgrepo, $log, $location, $confirm) ->
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
<% if (addWikiLinkPermission) { %>
|
||||||
<a href="" title="Add link" class="add-button button button-gray">Add link</a>
|
<a href="" title="Add link" class="add-button button button-gray">Add link</a>
|
||||||
|
<% } %>
|
||||||
""")
|
""")
|
||||||
link = ($scope, $el, $attrs) ->
|
link = ($scope, $el, $attrs) ->
|
||||||
$ctrl = $el.controller()
|
$ctrl = $el.controller()
|
||||||
|
@ -63,7 +67,15 @@ WikiNavDirective = ($tgrepo, $log, $location, $confirm) ->
|
||||||
return $log.error "WikiNavDirective: no ng-model attr is defined"
|
return $log.error "WikiNavDirective: no ng-model attr is defined"
|
||||||
|
|
||||||
render = (wikiLinks) ->
|
render = (wikiLinks) ->
|
||||||
html = template({wikiLinks: wikiLinks, projectSlug: $scope.projectSlug})
|
addWikiLinkPermission = $scope.project.my_permissions.indexOf("add_wiki_link") > -1
|
||||||
|
deleteWikiLinkPermission = $scope.project.my_permissions.indexOf("delete_wiki_link") > -1
|
||||||
|
|
||||||
|
html = template({
|
||||||
|
wikiLinks: wikiLinks,
|
||||||
|
projectSlug: $scope.projectSlug
|
||||||
|
addWikiLinkPermission: addWikiLinkPermission
|
||||||
|
deleteWikiLinkPermission: deleteWikiLinkPermission
|
||||||
|
})
|
||||||
|
|
||||||
$el.off()
|
$el.off()
|
||||||
$el.html(html)
|
$el.html(html)
|
||||||
|
|
|
@ -25,6 +25,7 @@ block content
|
||||||
textarea(placeholder="Write a description of your issue", ng-model="issue.description", tg-markitup)
|
textarea(placeholder="Write a description of your issue", ng-model="issue.description", tg-markitup)
|
||||||
|
|
||||||
- var attachModel = "issue"
|
- var attachModel = "issue"
|
||||||
|
- var permissionSuffix = "issue"
|
||||||
include views/modules/attachments
|
include views/modules/attachments
|
||||||
|
|
||||||
textarea(ng-model="issue.comment", placeholder="Write here a new commet")
|
textarea(ng-model="issue.comment", placeholder="Write here a new commet")
|
||||||
|
|
|
@ -28,6 +28,7 @@ block content
|
||||||
section.us-content.wysiwyg(tg-bind-html="issue.description_html")
|
section.us-content.wysiwyg(tg-bind-html="issue.description_html")
|
||||||
|
|
||||||
- var attachModel = "issue"
|
- var attachModel = "issue"
|
||||||
|
- var permissionSuffix = "issue"
|
||||||
include views/modules/attachments
|
include views/modules/attachments
|
||||||
|
|
||||||
section.us-activity
|
section.us-activity
|
||||||
|
|
|
@ -25,6 +25,7 @@ block content
|
||||||
textarea(placeholder="Write a description of your task", ng-model="task.description", tg-markitup)
|
textarea(placeholder="Write a description of your task", ng-model="task.description", tg-markitup)
|
||||||
|
|
||||||
- var attachModel = "task"
|
- var attachModel = "task"
|
||||||
|
- var permissionSuffix = "task"
|
||||||
include views/modules/attachments
|
include views/modules/attachments
|
||||||
|
|
||||||
textarea(ng-model="task.comment", placeholder="Write here a new commet")
|
textarea(ng-model="task.comment", placeholder="Write here a new commet")
|
||||||
|
|
|
@ -28,6 +28,7 @@ block content
|
||||||
section.us-content.wysiwyg(tg-bind-html="task.description_html")
|
section.us-content.wysiwyg(tg-bind-html="task.description_html")
|
||||||
|
|
||||||
- var attachModel = "task"
|
- var attachModel = "task"
|
||||||
|
- var permissionSuffix = "task"
|
||||||
include views/modules/attachments
|
include views/modules/attachments
|
||||||
|
|
||||||
section.us-activity
|
section.us-activity
|
||||||
|
|
|
@ -25,6 +25,7 @@ block content
|
||||||
textarea(placeholder="Write a description of your user story", ng-model="us.description", tg-markitup)
|
textarea(placeholder="Write a description of your user story", ng-model="us.description", tg-markitup)
|
||||||
|
|
||||||
- var attachModel = "us"
|
- var attachModel = "us"
|
||||||
|
- var permissionSuffix = "us"
|
||||||
include views/modules/attachments
|
include views/modules/attachments
|
||||||
|
|
||||||
textarea(ng-model="us.comment", placeholder="Write here a new commet")
|
textarea(ng-model="us.comment", placeholder="Write here a new commet")
|
||||||
|
|
|
@ -30,6 +30,7 @@ block content
|
||||||
section.us-content.wysiwyg(tg-bind-html="us.description_html")
|
section.us-content.wysiwyg(tg-bind-html="us.description_html")
|
||||||
|
|
||||||
- var attachModel = "us"
|
- var attachModel = "us"
|
||||||
|
- var permissionSuffix = "us"
|
||||||
include views/modules/attachments
|
include views/modules/attachments
|
||||||
|
|
||||||
section.us-activity
|
section.us-activity
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
//- NOTE: You must to define 'var attachModel' with the object model
|
//- NOTE: You must to define 'var attachModel' 'var permissionSuffix' with the object model
|
||||||
//- that have attachments
|
//- that have attachments
|
||||||
|
|
||||||
section.attachments(tg-attachments, ng-model=attachModel, ng-if="#{attachModel}.id")
|
section.attachments(tg-attachments, ng-model=attachModel, ng-if="#{attachModel}.id")
|
||||||
|
@ -7,13 +7,13 @@ section.attachments(tg-attachments, ng-model=attachModel, ng-if="#{attachModel}.
|
||||||
span.icon.icon-attachments
|
span.icon.icon-attachments
|
||||||
span.attachments-num 0
|
span.attachments-num 0
|
||||||
span.attachments-text attachments
|
span.attachments-text attachments
|
||||||
a.button.button-gray.add-attach(tg-check-permission, permission="modify_"+attachModel, href="", title="Add new attachment")
|
a.button.button-gray.add-attach(tg-check-permission, permission="modify_"+permissionSuffix, href="", title="Add new attachment")
|
||||||
span +new file
|
span +new file
|
||||||
input.hidden.add-attach(type="file", multiple="multiple")
|
input.hidden.add-attach(type="file", multiple="multiple")
|
||||||
|
|
||||||
div.attachment-body.sortable
|
div.attachment-body.sortable
|
||||||
div.hidden.single-attachment(ng-repeat="attach in attachments",
|
div.hidden.single-attachment(ng-repeat="attach in attachments",
|
||||||
tg-attachment="attach", ng-model=attachModel)
|
tg-attachment="attach", permission-suffix=permissionSuffix)
|
||||||
|
|
||||||
//- See modules/common/attachments.coffee - AttachmentDirective
|
//- See modules/common/attachments.coffee - AttachmentDirective
|
||||||
|
|
||||||
|
|
|
@ -22,4 +22,5 @@ block content
|
||||||
textarea(placeholder="Write a your wiki page", ng-model="wiki.content", tg-markitup)
|
textarea(placeholder="Write a your wiki page", ng-model="wiki.content", tg-markitup)
|
||||||
|
|
||||||
- var attachModel = "wiki"
|
- var attachModel = "wiki"
|
||||||
|
- var permissionSuffix = "wiki_page"
|
||||||
include views/modules/attachments
|
include views/modules/attachments
|
||||||
|
|
|
@ -15,12 +15,16 @@ block content
|
||||||
span.green Wiki
|
span.green Wiki
|
||||||
span.wiki-title(tg-bo-bind='wiki.slug|unslugify')
|
span.wiki-title(tg-bo-bind='wiki.slug|unslugify')
|
||||||
.action-buttons
|
.action-buttons
|
||||||
a.button.button-red.delete-wiki(href="", title="Delete", ng-click="ctrl.delete()") Delete
|
a.button.button-red.delete-wiki(tg-check-permission, permission="delete_wiki_page",
|
||||||
a.button.button-green.edit-wiki(href="", title="Edit", ng-click="ctrl.edit()") Edit
|
href="", title="Delete", ng-click="ctrl.delete()") Delete
|
||||||
|
|
||||||
|
a.button.button-green.edit-wiki(tg-check-permission, permission="modify_wiki_page",
|
||||||
|
href="", title="Edit", ng-click="ctrl.edit()") Edit
|
||||||
|
|
||||||
include views/modules/wiki-summary
|
include views/modules/wiki-summary
|
||||||
|
|
||||||
section.wiki-content.wysiwyg(tg-bind-html="wiki.html")
|
section.wiki-content.wysiwyg(tg-bind-html="wiki.html")
|
||||||
|
|
||||||
- var attachModel = "wiki"
|
- var attachModel = "wiki"
|
||||||
|
- var permissionSuffix = "wiki_page"
|
||||||
include views/modules/attachments
|
include views/modules/attachments
|
||||||
|
|
Loading…
Reference in New Issue