##// END OF EJS Templates
vcs: do an early detection of vcs-type request....
vcs: do an early detection of vcs-type request. We we to know to detect vcs type request as early as possible. IF we know we're handling an VCS request, we can skip some of the pylons stack initialization. - This fixes issues with leaking sessions and other object from pylons into a purely VCS type request.

File last commit:

r1283:cebaf5cb default
r1297:de699d5e default
Show More
source.mako
66 lines | 2.2 KiB | application/x-mako | MakoHtmlLexer
<%def name="render_line(line_num, tokens,
annotation=None,
bgcolor=None)">
<%
from rhodecode.lib.codeblocks import render_tokenstream
# avoid module lookup for performance
html_escape = h.html_escape
%>
<tr class="cb-line cb-line-fresh"
%if annotation:
data-revision="${annotation.revision}"
%endif
>
<td class="cb-lineno" id="L${line_num}">
<a data-line-no="${line_num}" href="#L${line_num}"></a>
</td>
<td class="cb-content cb-content-fresh"
%if bgcolor:
style="background: ${bgcolor}"
%endif
>
## newline at end is necessary for highlight to work when line is empty
## and for copy pasting code to work as expected
<span class="cb-code">${render_tokenstream(tokens)|n}${'\n'}</span>
</td>
</tr>
</%def>
<%def name="render_annotation_lines(annotation, lines, color_hasher)">
<%
rowspan = len(lines) + 1 # span the line's <tr> and annotation <tr>
%>
%if not annotation:
<tr class="cb-annotate">
<td class="cb-annotate-message" rowspan="${rowspan}"></td>
<td class="cb-annotate-revision" rowspan="${rowspan}"></td>
</tr>
%else:
<tr class="cb-annotate">
<td class="cb-annotate-info tooltip"
rowspan="${rowspan}"
title="Author: ${annotation.author | entity}<br>Date: ${annotation.date}<br>Message: ${annotation.message | entity}"
>
${h.gravatar_with_user(annotation.author, 16) | n}
<strong class="cb-annotate-message">${h.truncate(annotation.message, len(lines) * 30)}</strong>
</td>
<td
class="cb-annotate-revision"
rowspan="${rowspan}"
data-revision="${annotation.revision}"
onclick="$('[data-revision=${annotation.revision}]').toggleClass('cb-line-fresh')"
style="background: ${color_hasher(annotation.raw_id)}">
<a href="${h.url('changeset_home',repo_name=c.repo_name,revision=annotation.raw_id)}">
r${annotation.revision}
</a>
</td>
</tr>
%endif
%for line_num, tokens in lines:
${render_line(line_num, tokens,
bgcolor=color_hasher(annotation and annotation.raw_id or ''),
annotation=annotation,
)}
%endfor
</%def>