Files
@ c40e567e4b82
Branch filter:
Location: kallithea/kallithea/templates/changeset/changeset_file_comment.html - annotation
c40e567e4b82
6.9 KiB
text/html
style: use Bootstrap compatible data-toggle="tooltip" markup
Based on work by Dominik Ruf and Andrew Shadura.
Based on work by Dominik Ruf and Andrew Shadura.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 | d1addaf7a91e d1addaf7a91e d1addaf7a91e d1addaf7a91e d1addaf7a91e d1addaf7a91e d1addaf7a91e 765fe407eda4 d1addaf7a91e d1addaf7a91e f287754980cc d1addaf7a91e 18fc1888455f d1addaf7a91e 5153c491a964 5153c491a964 d1addaf7a91e 5153c491a964 5153c491a964 5153c491a964 5153c491a964 5153c491a964 5153c491a964 b3299a079fa6 5153c491a964 d1addaf7a91e e99a33d7d7f5 b4b57beb4928 b7654d1675da b4b57beb4928 5153c491a964 5153c491a964 5153c491a964 d1addaf7a91e b60e58094fb7 5153c491a964 5153c491a964 5153c491a964 5153c491a964 d1addaf7a91e d1addaf7a91e 140f2811fc6f 4a9184804089 140f2811fc6f d1addaf7a91e d1addaf7a91e d1addaf7a91e d1addaf7a91e d1addaf7a91e d1addaf7a91e d1addaf7a91e d1addaf7a91e 5cc8e1d7ee21 d208416c84c6 a21668fe545b 872d05f3d7cc 12e7421e0469 c40e567e4b82 a21668fe545b 12e7421e0469 12e7421e0469 7834f845505a 7834f845505a 7834f845505a 7834f845505a 7834f845505a 7834f845505a 7834f845505a 7834f845505a 7834f845505a 6f4f39b21302 6f4f39b21302 6f4f39b21302 7834f845505a 7834f845505a 7834f845505a 68d3315c48d4 68d3315c48d4 7834f845505a 7834f845505a 7834f845505a 7834f845505a 7834f845505a e99a33d7d7f5 779d43be59c6 779d43be59c6 7834f845505a 7834f845505a 7834f845505a 7834f845505a 779d43be59c6 779d43be59c6 779d43be59c6 779d43be59c6 779d43be59c6 7834f845505a 7834f845505a 7834f845505a d1addaf7a91e d1addaf7a91e a21668fe545b b7654d1675da b7654d1675da d1addaf7a91e a21668fe545b d1addaf7a91e d1addaf7a91e d1addaf7a91e d1addaf7a91e b537babcf966 d1addaf7a91e d1addaf7a91e d1addaf7a91e b7654d1675da d1addaf7a91e d1addaf7a91e d1addaf7a91e d1addaf7a91e d1addaf7a91e d1addaf7a91e d1addaf7a91e d1addaf7a91e 051624cb5f3a 0ee5a36aaa99 051624cb5f3a 051624cb5f3a 051624cb5f3a 051624cb5f3a 051624cb5f3a 051624cb5f3a 0ee5a36aaa99 0ee5a36aaa99 d1addaf7a91e d1addaf7a91e 1721c30d9cbe 2ed9ddab042f 2ed9ddab042f e87baa8f1c5b e87baa8f1c5b e87baa8f1c5b e87baa8f1c5b e87baa8f1c5b e87baa8f1c5b e87baa8f1c5b e87baa8f1c5b e87baa8f1c5b e87baa8f1c5b 7834f845505a e87baa8f1c5b e87baa8f1c5b f9a581561184 e87baa8f1c5b d1addaf7a91e 2ed9ddab042f 2ed9ddab042f 2ed9ddab042f d1addaf7a91e d1addaf7a91e d1addaf7a91e 7834f845505a 7834f845505a 7834f845505a 7834f845505a d1addaf7a91e 7834f845505a 7834f845505a 7834f845505a 7834f845505a 7834f845505a d1addaf7a91e eac6c70e63e8 d1addaf7a91e d1addaf7a91e e271a8766951 d1addaf7a91e 749b5e8cead3 7834f845505a 7834f845505a 7834f845505a 749b5e8cead3 749b5e8cead3 749b5e8cead3 749b5e8cead3 749b5e8cead3 749b5e8cead3 d1addaf7a91e d1addaf7a91e d1addaf7a91e | ## -*- 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-prev-next-links"></div>
<div class="comment-wrapp">
<div class="meta">
${h.gravatar_div(co.author.email, size=20, div_style="float:left")}
<div class="user">
${co.author.full_name_and_username}
</div>
<span>
${h.age(co.modified_at)}
%if co.pull_request:
${_('on pull request')}
<a href="${co.pull_request.url()}">"${co.pull_request.title or _("No title")}"</a>
%else:
${_('on this changeset')}
%endif
<a class="permalink" href="${co.url()}">¶</a>
</span>
%if co.author_id == c.authuser.user_id or h.HasRepoPermissionAny('repository.admin')(c.repo_name):
%if co.deletable():
<div onClick="confirm('${_("Delete comment?")}') && deleteComment(${co.comment_id})" class="buttons delete-comment btn btn-default btn-xs" style="margin:0 5px">${_('Delete')}</div>
%endif
%endif
</div>
<div class="text">
%if co.status_change:
<div class="automatic-comment">
<p>
<span title="${_('Changeset status')}" class="changeset-status-lbl">${_("Status change")}: ${co.status_change[0].status_lbl}</span>
<span class="changeset-status-ico"><i class="icon-circle changeset-status-${co.status_change[0].status}"></i></span>
</p>
</div>
%endif
%if co.text:
${h.render_w_mentions(co.text, c.repo_name)|n}
%endif
</div>
</div>
</div>
</%def>
<%def name="comment_inline_form()">
<div id='comment-inline-form-template' style="display:none">
<div class="ac">
%if c.authuser.username != 'default':
${h.form('#', class_='inline-form')}
<div class="clearfix">
<div class="comment-help">${_('Commenting on line.')}
<span style="color:#577632">${_('Comments are in plain text. Use @username inside this text to notify another user.')|n}</span>
</div>
<div class="mentions-container"></div>
<textarea name="text" class="comment-block-ta yui-ac-input"></textarea>
<div id="status_block_container" class="status-block general-only hidden">
%if c.pull_request is None:
${_('Set changeset status')}:
%else:
${_('Vote for pull request status')}:
%endif
<span class="general-only cs-only">
</span>
<label>
<input type="radio" class="status_change_radio" name="changeset_status" id="changeset_status_unchanged" value="" checked="checked" />
${_('No change')}
</label>
%for status, lbl in c.changeset_statuses:
<label>
<input type="radio" class="status_change_radio" name="changeset_status" id="${status}" value="${status}">
${lbl}<i class="icon-circle changeset-status-${status}" /></i>
</label>
%endfor
%if c.pull_request is not None and ( \
h.HasPermissionAny('hg.admin')() or h.HasRepoPermissionAny('repository.admin')(c.repo_name) \
or c.pull_request.owner_id == c.authuser.user_id):
<div>
${_('Finish pull request')}:
<label>
<input id="save_close" type="checkbox" name="save_close">
${_("Close")}
</label>
<label>
<input id="save_delete" type="checkbox" name="save_delete" value="delete">
${_("Delete")}
</label>
</div>
%endif
</div>
</div>
<div class="comment-button">
<div class="submitting-overlay">${_('Submitting ...')}</div>
${h.submit('save', _('Comment'), class_='btn btn-default btn-sm save-inline-form')}
${h.reset('hide-inline-form', _('Cancel'), class_='btn btn-default btn-sm 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=request.path_qs)}">${_('Login now')}</a>
</div>
</div>
<div class="comment-button">
${h.reset('hide-inline-form', _('Hide'), class_='btn btn-default btn-sm hide-inline-form')}
</div>
${h.end_form()}
%endif
</div>
</div>
</%def>
## show comment count as "x comments (y inline, z general)"
<%def name="comment_count(inline_cnt, general_cnt)">
${'%s (%s, %s)' % (
ungettext("%d comment", "%d comments", inline_cnt + general_cnt) % (inline_cnt + general_cnt),
ungettext("%d inline", "%d inline", inline_cnt) % inline_cnt,
ungettext("%d general", "%d general", general_cnt) % general_cnt
)}
<span class="firstlink"></span>
</%def>
## generate inline comments and the main ones
<%def name="generate_comments()">
## original location of comments ... but the ones outside diff context remains here
<div class="comments inline-comments">
%for f_path, lines in c.inline_comments:
%for line_no, comments in lines.iteritems():
<div class="comments-list-chunk" data-f_path="${f_path}" data-line_no="${line_no}" data-target-id="${h.safeid(h.safe_unicode(f_path))}_${line_no}">
%for co in comments:
${comment_block(co)}
%endfor
</div>
%endfor
%endfor
<div class="comments-list-chunk" data-f_path="" data-line_no="" data-target-id="general-comments">
%for co in c.comments:
${comment_block(co)}
%endfor
</div>
</div>
<div class="comments-number">
${comment_count(c.inline_cnt, len(c.comments))}
</div>
</%def>
## MAIN COMMENT FORM
<%def name="comments(change_status=True)">
## global, shared for all edit boxes
<div class="mentions-container" id="mentions_container"></div>
<div class="inline-comments inline-comments-general
${'show-general-status' if change_status else ''}">
<div id="comments-general-comments" class="">
## comment_div for general comments
</div>
</div>
<script>
$(document).ready(function () {
$(window).on('beforeunload', function(){
var $textareas = $('.comment-inline-form textarea[name=text]');
if($textareas.size() > 1 ||
$textareas.val()) {
// this message will not be displayed on all browsers
// (e.g. some versions of Firefox), but the user will still be warned
return 'There are uncommitted comments.';
}
});
});
</script>
</%def>
|