|
|
<div id="node_history" style="padding: 0px 0px 10px 0px">
|
|
|
<div>
|
|
|
<div style="float:left">
|
|
|
${h.form(h.url('files_diff_home',repo_name=c.repo_name,f_path=c.f_path),method='get')}
|
|
|
${h.hidden('diff2',c.file_changeset.raw_id)}
|
|
|
${h.hidden('diff1')}
|
|
|
${h.submit('diff',_('Diff to Revision'),class_="btn btn-small")}
|
|
|
${h.submit('show_rev',_('Show at Revision'),class_="btn btn-small")}
|
|
|
${h.hidden('annotate', c.annotate)}
|
|
|
${h.link_to(_('Show Full History'),h.url('changelog_file_home',repo_name=c.repo_name, revision=c.file_changeset.raw_id, f_path=c.f_path),class_="btn btn-small")}
|
|
|
${h.link_to(_('Show Authors'),'#',class_="btn btn-small" ,id="show_authors")}
|
|
|
|
|
|
${h.end_form()}
|
|
|
</div>
|
|
|
<div id="file_authors" class="file_author" style="clear:both; display: none"></div>
|
|
|
</div>
|
|
|
<div style="clear:both"></div>
|
|
|
</div>
|
|
|
|
|
|
|
|
|
<div id="body" class="codeblock">
|
|
|
<div class="code-header">
|
|
|
<div class="stats">
|
|
|
<div class="left img"><i class="icon-file"></i></div>
|
|
|
<div class="left item"><pre class="tooltip" title="${h.tooltip(h.fmt_date(c.file_changeset.date))}">${h.link_to("r%s:%s" % (c.file_changeset.revision,h.short_id(c.file_changeset.raw_id)),h.url('changeset_home',repo_name=c.repo_name,revision=c.file_changeset.raw_id))}</pre></div>
|
|
|
<div class="left item"><pre>${h.format_byte_size(c.file.size,binary=True)}</pre></div>
|
|
|
<div class="left item last"><pre>${c.file.mimetype}</pre></div>
|
|
|
<div class="buttons">
|
|
|
%if c.annotate:
|
|
|
${h.link_to(_('Show Source'), h.url('files_home', repo_name=c.repo_name,revision=c.file_changeset.raw_id,f_path=c.f_path),class_="btn btn-mini")}
|
|
|
%else:
|
|
|
${h.link_to(_('Show Annotation'),h.url('files_annotate_home',repo_name=c.repo_name,revision=c.file_changeset.raw_id,f_path=c.f_path),class_="btn btn-mini")}
|
|
|
%endif
|
|
|
${h.link_to(_('Show as Raw'),h.url('files_raw_home',repo_name=c.repo_name,revision=c.file_changeset.raw_id,f_path=c.f_path),class_="btn btn-mini")}
|
|
|
${h.link_to(_('Download as Raw'),h.url('files_rawfile_home',repo_name=c.repo_name,revision=c.file_changeset.raw_id,f_path=c.f_path),class_="btn btn-mini")}
|
|
|
% if h.HasRepoPermissionAny('repository.write','repository.admin')(c.repo_name):
|
|
|
%if c.on_branch_head and c.changeset.branch and not c.file.is_binary:
|
|
|
${h.link_to(_('Edit on Branch:%s') % c.changeset.branch, h.url('files_edit_home',repo_name=c.repo_name,revision=c.changeset.branch,f_path=c.f_path, anchor='edit'),class_="btn btn-mini")}
|
|
|
${h.link_to(_('Delete'), h.url('files_delete_home',repo_name=c.repo_name,revision=c.changeset.branch,f_path=c.f_path, anchor='edit'),class_="btn btn-mini btn-danger")}
|
|
|
%elif c.on_branch_head and c.changeset.branch and c.file.is_binary:
|
|
|
${h.link_to(_('Edit'), '#', class_="btn btn-mini disabled tooltip", title=_('Editing binary files not allowed'))}
|
|
|
${h.link_to(_('Delete'), h.url('files_delete_home',repo_name=c.repo_name,revision=c.changeset.branch,f_path=c.f_path, anchor='edit'),class_="btn btn-mini btn-danger")}
|
|
|
%else:
|
|
|
${h.link_to(_('Edit'), '#', class_="btn btn-mini disabled tooltip", title=_('Editing files allowed only when on branch head revision'))}
|
|
|
${h.link_to(_('Delete'), '#', class_="btn btn-mini btn-danger disabled tooltip", title=_('Deleting files allowed only when on branch head revision'))}
|
|
|
% endif
|
|
|
% endif
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="author">
|
|
|
<div class="gravatar">
|
|
|
<img alt="gravatar" src="${h.gravatar_url(h.email_or_none(c.file_changeset.author),16)}"/>
|
|
|
</div>
|
|
|
<div title="${c.file_changeset.author}" class="user">${h.person(c.file_changeset.author)}</div>
|
|
|
</div>
|
|
|
<div class="commit">${h.urlify_commit(c.file_changeset.message,c.repo_name)}</div>
|
|
|
</div>
|
|
|
<div class="code-body">
|
|
|
%if c.file.is_binary:
|
|
|
<div style="padding:5px">
|
|
|
${_('Binary file (%s)') % c.file.mimetype}
|
|
|
</div>
|
|
|
%else:
|
|
|
% if c.file.size < c.cut_off_limit:
|
|
|
%if c.annotate:
|
|
|
${h.pygmentize_annotation(c.repo_name,c.file,linenos=True,anchorlinenos=True,lineanchors='L',cssclass="code-highlight")}
|
|
|
%else:
|
|
|
${h.pygmentize(c.file,linenos=True,anchorlinenos=True,lineanchors='L',cssclass="code-highlight")}
|
|
|
%endif
|
|
|
%else:
|
|
|
${_('File is too big to display')} ${h.link_to(_('Show as raw'),
|
|
|
h.url('files_raw_home',repo_name=c.repo_name,revision=c.file_changeset.raw_id,f_path=c.f_path))}
|
|
|
%endif
|
|
|
%endif
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
<script>
|
|
|
$(document).ready(function(){
|
|
|
// fake html5 history state
|
|
|
var _State = {
|
|
|
url: "${h.url.current()}",
|
|
|
data: {
|
|
|
node_list_url: node_list_url.replace('__REV__',"${c.changeset.raw_id}").replace('__FPATH__', "${h.safe_unicode(c.file.path)}"),
|
|
|
url_base: url_base.replace('__REV__',"${c.changeset.raw_id}"),
|
|
|
rev:"${c.changeset.raw_id}",
|
|
|
f_path: "${h.safe_unicode(c.file.path)}"
|
|
|
}
|
|
|
}
|
|
|
callbacks(_State) // defined in files.html, main callbacks. Triggerd in pjax calls
|
|
|
})
|
|
|
</script>
|
|
|
|