##// END OF EJS Templates
pull-requests: overhaul of the UX by adding new sidebar...
pull-requests: overhaul of the UX by adding new sidebar - sidebar aggregates comments, todos, observers, referenced tickets, and reviewers - live components push now comments, reviewer presence, and todo live via channelstream - sidebar is collapsable, and stored in user session - simplified number of information on the pull request page - fixed and cleanup of the outdated comments and at version comments that in some cases reported wrong version assignment.

File last commit:

r4482:3b004b10 default
r4482:3b004b10 default
Show More
templates.html
185 lines | 5.4 KiB | text/html | HtmlLexer
<%text>
<div style="display: none">
<script>
var CG = new ColorGenerator();
</script>
<script id="ejs_gravatarWithUser" type="text/template" class="ejsTemplate">
<%
if (size > 16) {
var gravatar_class = 'gravatar gravatar-large';
} else {
var gravatar_class = 'gravatar';
}
if (tooltip) {
var gravatar_class = gravatar_class + ' tooltip-hovercard';
}
var data_hovercard_alt = username;
%>
<%
if (show_disabled) {
var user_cls = 'user user-disabled';
} else {
var user_cls = 'user';
}
var data_hovercard_url = pyroutes.url('hovercard_user', {"user_id": user_id})
%>
<div class="rc-user">
<img class="<%= gravatar_class %>" height="<%= size %>" width="<%= size %>" data-hovercard-url="<%= data_hovercard_url %>" data-hovercard-alt="<%= data_hovercard_alt %>" src="<%- gravatar_url -%>">
<span class="<%= user_cls %>"> <%- user_link -%> </span>
</div>
</script>
<script id="ejs_reviewMemberEntry" type="text/template" class="ejsTemplate">
<%
if (create) {
var edit_visibility = 'visible';
} else {
var edit_visibility = 'hidden';
}
if (member.user_group && member.user_group.vote_rule) {
var reviewGroup = '<i class="icon-user-group"></i>';
var reviewGroupColor = CG.asRGB(CG.getColor(member.user_group.vote_rule));
} else {
var reviewGroup = null;
var reviewGroupColor = 'transparent';
}
%>
<tr id="reviewer_<%= member.user_id %>" class="reviewer_entry" tooltip="Review Group" data-reviewer-user-id="<%= member.user_id %>">
<td style="width: 20px">
<div class="reviewer_status tooltip" title="<%= review_status_label %>">
<i class="icon-circle review-status-<%= review_status %>"></i>
</div>
</td>
<td>
<div id="reviewer_<%= member.user_id %>_name" class="reviewer_name">
<%-
renderTemplate('gravatarWithUser', {
'size': 16,
'show_disabled': false,
'tooltip': true,
'username': member.username,
'user_id': member.user_id,
'user_link': member.user_link,
'gravatar_url': member.gravatar_link
})
%>
<span class="tooltip presence-state" style="display: none" title="This users is currently at this page">
<i class="icon-eye" style="color: #0ac878"></i>
</span>
</div>
</td>
<td style="width: 10px">
<% if (reviewGroup !== null) { %>
<span class="tooltip" title="Member of review group from rule: `<%= member.user_group.name %>`" style="color: <%= reviewGroupColor %>">
<%- reviewGroup %>
</span>
<% } %>
</td>
<% if (mandatory) { %>
<td style="text-align: right;width: 10px;">
<div class="reviewer_member_mandatory tooltip" title="Mandatory reviewer">
<i class="icon-lock"></i>
</div>
</td>
<% } else { %>
<td>
<% if (allowed_to_update) { %>
<div class="reviewer_member_remove action_button" onclick="reviewersController.removeReviewMember(<%= member.user_id %>, true)" style="visibility: <%= edit_visibility %>;">
<i class="icon-remove"></i>
</div>
<% } %>
</td>
<% } %>
</tr>
<tr>
<td colspan="4" style="display: none" class="pr-user-rule-container">
<input type="hidden" name="__start__" value="reviewer:mapping">
<%if (member.user_group && member.user_group.vote_rule) { %>
<div class="reviewer_reason">
<%if (member.user_group.vote_rule == -1) {%>
- group votes required: ALL
<%} else {%>
- group votes required: <%= member.user_group.vote_rule %>
<%}%>
</div>
<%} %>
<input type="hidden" name="__start__" value="reasons:sequence">
<% for (var i = 0; i < reasons.length; i++) { %>
<% var reason = reasons[i] %>
<div class="reviewer_reason">- <%= reason %></div>
<input type="hidden" name="reason" value="<%= reason %>">
<% } %>
<input type="hidden" name="__end__" value="reasons:sequence">
<input type="hidden" name="__start__" value="rules:sequence">
<% for (var i = 0; i < member.rules.length; i++) { %>
<% var rule = member.rules[i] %>
<input type="hidden" name="rule_id" value="<%= rule %>">
<% } %>
<input type="hidden" name="__end__" value="rules:sequence">
<input id="reviewer_<%= member.user_id %>_input" type="hidden" value="<%= member.user_id %>" name="user_id" />
<input type="hidden" name="mandatory" value="<%= mandatory %>"/>
<input type="hidden" name="__end__" value="reviewer:mapping">
</td>
</tr>
</script>
<script id="ejs_commentVersion" type="text/template" class="ejsTemplate">
<%
if (size > 16) {
var gravatar_class = 'gravatar gravatar-large';
} else {
var gravatar_class = 'gravatar';
}
%>
<%
if (show_disabled) {
var user_cls = 'user user-disabled';
} else {
var user_cls = 'user';
}
%>
<div style='line-height: 20px'>
<img style="margin: -3px 0" class="<%= gravatar_class %>" height="<%= size %>" width="<%= size %>" src="<%- gravatar_url -%>">
<strong><%- user_name -%></strong>, <code>v<%- version -%></code> edited <%- timeago_component -%>
</div>
</script>
</div>
<script>
// registers the templates into global cache
registerTemplates();
</script>
</%text>