##// END OF EJS Templates
Share common getter functions in base model, and remove duplicated functions from other models
Share common getter functions in base model, and remove duplicated functions from other models

File last commit:

r2430:9f372811 merge codereview
r2432:d3ac7491 codereview
Show More
changeset_file_comment.html
142 lines | 6.0 KiB | text/html | HtmlLexer
## -*- coding: utf-8 -*-
## usage:
## <%namespace name="comment" file="/changeset/changeset_file_comment.html"/>
## ${comment.comment_block(co)}
##
<%def name="comment_block(co)">
<div class="comment" id="comment-${co.comment_id}" line="${co.line_no}">
<div class="comment-wrapp">
<div class="meta">
<div style="float:left"> <img src="${h.gravatar_url(co.author.email, 20)}" /> </div>
<div class="user">
${co.author.username}
</div>
<div class="date">
${h.age(co.modified_at)}
</div>
%if co.status_change:
<div style="float:left" class="changeset-status-container">
<div style="float:left;padding:0px 2px 0px 2px"><span style="font-size: 18px;">&rsaquo;</span></div>
<div title="${_('Changeset status')}" class="changeset-status-lbl"> ${co.status_change.status_lbl}</div>
<div class="changeset-status-ico"><img src="${h.url(str('/images/icons/flag_status_%s.png' % co.status_change.status))}" /></div>
</div>
%endif
%if h.HasPermissionAny('hg.admin', 'repository.admin')() or co.author.user_id == c.rhodecode_user.user_id:
<div class="buttons">
<span onClick="deleteComment(${co.comment_id})" class="delete-comment ui-btn">${_('Delete')}</span>
</div>
%endif
</div>
<div class="text">
${h.rst_w_mentions(co.text)|n}
</div>
</div>
</div>
</%def>
<%def name="comment_inline_form(changeset)">
<div id='comment-inline-form-template' style="display:none">
<div class="comment-inline-form ac">
%if c.rhodecode_user.username != 'default':
<div class="overlay"><div class="overlay-text">${_('Submitting...')}</div></div>
${h.form(h.url('changeset_comment', repo_name=c.repo_name, revision=changeset.raw_id),class_='inline-form')}
<div class="clearfix">
<div class="comment-help">${_('Commenting on line {1}.')}
${(_('Comments parsed using %s syntax with %s support.') % (
('<a href="%s">RST</a>' % h.url('rst_help')),
('<span style="color:#003367" class="tooltip" title="%s">@mention</span>' % _('Use @username inside this text to send notification to this RhodeCode user'))
)
)|n
}
</div>
<div class="mentions-container" id="mentions_container_{1}"></div>
<textarea id="text_{1}" name="text" class="yui-ac-input"></textarea>
</div>
<div class="comment-button">
<input type="hidden" name="f_path" value="{0}">
<input type="hidden" name="line" value="{1}">
${h.submit('save', _('Comment'), class_='ui-btn save-inline-form')}
${h.reset('hide-inline-form', _('Hide'), class_='ui-btn hide-inline-form')}
</div>
${h.end_form()}
%else:
${h.form('')}
<div class="clearfix">
<div class="comment-help">
${_('You need to be logged in to comment.')} <a href="${h.url('login_home',came_from=h.url.current())}">${_('Login now')}</a>
</div>
</div>
<div class="comment-button">
${h.reset('hide-inline-form', _('Hide'), class_='ui-btn hide-inline-form')}
</div>
${h.end_form()}
%endif
</div>
</div>
</%def>
<%def name="inlines(changeset)">
<div class="comments-number">${ungettext("%d comment", "%d comments", len(c.comments)) % len(c.comments)} ${ungettext("(%d inline)", "(%d inline)", c.inline_cnt) % c.inline_cnt}</div>
%for path, lines in c.inline_comments:
% for line,comments in lines.iteritems():
<div style="display:none" class="inline-comment-placeholder" path="${path}" target_id="${h.safeid(h.safe_unicode(path))}">
%for co in comments:
${comment_block(co)}
%endfor
</div>
%endfor
%endfor
</%def>
## MAIN COMMENT FORM
<%def name="comments(changeset)">
<div class="comments">
<div id="inline-comments-container">
${inlines(changeset)}
</div>
%for co in c.comments:
<div id="comment-tr-${co.comment_id}">
${comment_block(co)}
</div>
%endfor
%if c.rhodecode_user.username != 'default':
<div class="comment-form ac">
${h.form(h.url('changeset_comment', repo_name=c.repo_name, revision=changeset.raw_id))}
<strong>${_('Leave a comment')}</strong>
<div class="clearfix">
<div class="comment-help">
${(_('Comments parsed using %s syntax with %s support.') % (('<a href="%s">RST</a>' % h.url('rst_help')),
'<span style="color:#003367" class="tooltip" title="%s">@mention</span>' %
_('Use @username inside this text to send notification to this RhodeCode user')))|n}
| <span class="tooltip" title="${_('Check this to change current status of code-review for this changeset')}"> ${_('change status')}
<input style="vertical-align: bottom;margin-bottom:-2px" id="show_changeset_status_box" type="checkbox" name="change_changeset_status" />
</span>
</div>
<div id="status_block_container" class="status-block" style="display:none">
%for status,lbl in c.changeset_statuses:
<div class="">
<img src="${h.url('/images/icons/flag_status_%s.png' % status)}" /> <input ${'checked="checked"' if status == h.changeset_status(c.rhodecode_db_repo, c.changeset.raw_id) else ''}" type="radio" name="changeset_status" value="${status}"> <label>${lbl}</label>
</div>
%endfor
</div>
<div class="mentions-container" id="mentions_container"></div>
${h.textarea('text')}
</div>
<div class="comment-button">
${h.submit('save', _('Comment'), class_='ui-button')}
</div>
${h.end_form()}
</div>
%endif
</div>
<script>
YUE.onDOMReady(function () {
MentionsAutoComplete('text', 'mentions_container', _USERS_AC_DATA, _GROUPS_AC_DATA);
});
</script>
</%def>