@** * Yona, 21st Century Project Hosting SW * * Copyright Yona & Yobi Authors & NAVER Corp. * https://yona.io **@ @(from: Integer, size: Integer) @import utils.TemplateHelper._ @import utils.JodaDateUtil @import utils.HtmlUtil @notifycationIcon(notifytype: EventType, state: String) = @{ notifytype match { case EventType.NEW_COMMENT | EventType.NEW_REVIEW_COMMENT | EventType.REVIEW_THREAD_STATE_CHANGED => { "comment2"} case EventType.NEW_ISSUE | EventType.ISSUE_STATE_CHANGED => { if(state=="closed") "list-alt closed" else "list-alt" } case EventType.ISSUE_ASSIGNEE_CHANGED => { "friends changed" } case EventType.NEW_POSTING => { "edit2" } case EventType.NEW_PULL_REQUEST | EventType.PULL_REQUEST_COMMIT_CHANGED | EventType.PULL_REQUEST_STATE_CHANGED => { if(state=="closed") "merge closed" else if(state=="merged") "merge merged" else "merge" } case EventType.MEMBER_ENROLL_REQUEST => { if(state=="ACCEPT") "addfriend closed" else if (state=="CANCEL") "addfriend rejected" else "addfriend" } case EventType.NEW_COMMIT =>{"push"} case EventType.PULL_REQUEST_REVIEW_STATE_CHANGED => {"preview changed"} case EventType.ISSUE_BODY_CHANGED => {"ellipsis-horizontal"} case EventType.COMMENT_UPDATED => {"ellipsis-horizontal"} case _ => {"megaphone"} } } @defining(NotificationEvent.findByReceiver(UserApp.currentUser, from, size)){ notifications => @if(notifications.size == 0){
@Messages("notification.none")
} @for(noti <- notifications){
  • @defining(User.find.byId(noti.senderId)){ user => @if(noti.eventType.equals(EventType.ISSUE_BODY_CHANGED) || noti.eventType.equals(EventType.COMMENT_UPDATED) ){
    Edit
    } else {
    }
    @noti.getUrlToView match { case null => { @noti.title } case url => { @noti.title } }
    @Html(HtmlUtil.defaultSanitize(noti.getMessage.replaceAll("(?)\n", "
    \n")))
    @if(user != null){ } else {
    } @if(user != null) { @user.getDisplayName@@@user.loginId } @agoOrDateString(noti.created)
    }
  • } } @if(NotificationEvent.findByReceiver(UserApp.currentUser, from, size).size != 0) {
  • More
  • }