@**
* Yona, 21st Century Project Hosting SW
*
* Copyright Yona & Yobi Authors & NAVER Corp. & NAVER LABS Corp.
* https://yona.io
**@
@import models.enumeration.ResourceType
@(posting:AbstractPosting, currentComment: Comment, resourceType:ResourceType)
@import utils.Markdown
@import utils.AccessControl._
@import utils.TemplateHelper._
@import utils.JodaDateUtil
@avatarByLoginId(loginId: String, loginName: String, sameTypeAsPrevious: Boolean = false) = {
}
@linkToUser(loginId: String, loginName: String, showAvatar: Boolean = true) = {
@loginId match {
case (loginId: String) => {
@if(showAvatar) {
@avatarByLoginId(loginId, loginName)
}
@loginName
}
case _ => { Anonymous }
}
}
@getDeleteUrl(comment:Comment) = @{
if(currentComment.getParent.isInstanceOf[Issue]) {
routes.IssueApp.deleteComment(posting.project.owner, posting.project.name, posting.getNumber, comment.id)
} else {
routes.BoardApp.deleteComment(posting.project.owner, posting.project.name, posting.getNumber, comment.id)
}
}
@getNewCommentUrl() = @{
if(currentComment.getParent.isInstanceOf[Issue]) {
routes.IssueApp.newComment(posting.project.owner, posting.project.name, posting.getNumber).toString()
} else {
routes.BoardApp.newComment(posting.project.owner, posting.project.name, posting.getNumber).toString()
}
}
@additionalConetents(comment:Comment) = {
@utils.TemplateHelper.agoOrDateString(comment.createdDate)
@if(isAllowed(UserApp.currentUser(), comment.asResource(), Operation.DELETE)) {
x
}
}
@getAuthor(authorId:Long) = @{
User.find.byId(authorId)
}