Files @ b61824e61e68
Branch filter:

Location: kallithea/rhodecode/templates/shortlog/shortlog_data.html

Marcin Kuzminski
Don't cache dulwich Repos, in pararell multithreaded evniroment dulwich pack file openers
can break badly. We need to create Repo() objects always for each call, even when it's
taken from cache.
Fixed issue with dulwich filedescriptor leak ref #573
## -*- coding: utf-8 -*-
%if c.repo_changesets:
<table class="table_disp">
	<tr>
	    <th class="left">${_('revision')}</th>
        <th class="left">${_('commit message')}</th>
		<th class="left">${_('age')}</th>
		<th class="left">${_('author')}</th>
		<th class="left">${_('branch')}</th>
		<th class="left">${_('tags')}</th>
	</tr>
%for cnt,cs in enumerate(c.repo_changesets):
	<tr class="parity${cnt%2}">
        <td>
          <div>
            <div class="changeset-status-container">
              %if c.statuses.get(cs.raw_id):
                <div class="changeset-status-ico">
                %if c.statuses.get(cs.raw_id)[2]:
                  <a class="tooltip" title="${_('Click to open associated pull request')}" href="${h.url('pullrequest_show',repo_name=c.statuses.get(cs.raw_id)[3],pull_request_id=c.statuses.get(cs.raw_id)[2])}">
                    <img src="${h.url('/images/icons/flag_status_%s.png' % c.statuses.get(cs.raw_id)[0])}" />
                  </a>
                %else:
                  <img src="${h.url('/images/icons/flag_status_%s.png' % c.statuses.get(cs.raw_id)[0])}" />
                %endif
                </div>
              %endif
            </div>
            <pre><a href="${h.url('files_home',repo_name=c.repo_name,revision=cs.raw_id)}">r${cs.revision}:${h.short_id(cs.raw_id)}</a></pre>
         </div>
        </td>
        <td>
            ${h.urlify_commit(h.truncate(cs.message,50),c.repo_name, h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}
        </td>
        <td><span class="tooltip" title="${h.tooltip(h.fmt_date(cs.date))}">
                      ${h.age(cs.date)}</span>
        </td>
		<td title="${cs.author}">${h.person(cs.author)}</td>
		<td>
			<span class="logtags">
                %if cs.branch:
				<span class="branchtag">
                    ${cs.branch}
                </span>
                %endif
			</span>
		</td>
		<td>
			<span class="logtags">
				%for tag in cs.tags:
					<span class="tagtag">${tag}</span>
				%endfor
			</span>
		</td>
	</tr>
%endfor

</table>

<script type="text/javascript">
  YUE.onDOMReady(function(){
    YUE.delegate("shortlog_data","click",function(e, matchedEl, container){
        ypjax(e.target.href,"shortlog_data",function(){tooltip_activate();});
        YUE.preventDefault(e);
    },'.pager_link');
  });
</script>

<div class="pagination-wh pagination-left">
${c.repo_changesets.pager('$link_previous ~2~ $link_next')}
</div>
%else:

%if h.HasRepoPermissionAny('repository.write','repository.admin')(c.repo_name):
<h4>${_('Add or upload files directly via RhodeCode')}</h4>
<div style="margin: 20px 30px;">
  <div id="add_node_id" class="add_node">
      <a class="ui-btn" href="${h.url('files_add_home',repo_name=c.repo_name,revision=0,f_path='')}">${_('add new file')}</a>
  </div>
</div>
%endif


<h4>${_('Push new repo')}</h4>
<pre>
    ${c.rhodecode_repo.alias} clone ${c.clone_repo_url}
    ${c.rhodecode_repo.alias} add README # add first file
    ${c.rhodecode_repo.alias} commit -m "Initial" # commit with message
    ${c.rhodecode_repo.alias} push ${'origin master' if h.is_git(c.rhodecode_repo) else ''} # push changes back
</pre>

<h4>${_('Existing repository?')}</h4>
<pre>
%if h.is_git(c.rhodecode_repo):
    git remote add origin ${c.clone_repo_url}
    git push -u origin master
%else:
    hg push ${c.clone_repo_url}
%endif
</pre>
%endif