Files @ 32471bd1f4ee
Branch filter:

Location: kallithea/rhodecode/templates/changeset/changeset_range.html - annotation

Marcin Kuzminski
Implemented generation of changesets based
on whole diff instead of per file diff. That
can give a big speed improvement for large changesets in
repositories with large history.
- improved handling of binary files
- show renames of binary files
- implemented new diff limit functionality
- unify diff generation between hg and git
- Added binary indicators for changed files,
- added diff lib tests
d4a7b6c82efe
28524453bb76
28524453bb76
28524453bb76
76d156bef5a2
28524453bb76
28524453bb76
28524453bb76
79818f546538
28524453bb76
28524453bb76
28524453bb76
28524453bb76
28524453bb76
28524453bb76
28524453bb76
f91d3f9b7230
28524453bb76
28524453bb76
28524453bb76
28524453bb76
28524453bb76
28524453bb76
28524453bb76
28524453bb76
28524453bb76
28524453bb76
d4a7b6c82efe
f91d3f9b7230
82e604d3fc46
28524453bb76
28524453bb76
28524453bb76
28524453bb76
643e4a540ddd
28524453bb76
1915f02f6d62
87664e60bbc0
643e4a540ddd
c25cc1c7c65f
643e4a540ddd
643e4a540ddd
643e4a540ddd
87664e60bbc0
87664e60bbc0
9f37281195a2
87664e60bbc0
87664e60bbc0
f26acc1b27e2
643e4a540ddd
643e4a540ddd
643e4a540ddd
28524453bb76
643e4a540ddd
28524453bb76
28524453bb76
c4c36060d5f0
32471bd1f4ee
32471bd1f4ee
32471bd1f4ee
f91d3f9b7230
f91d3f9b7230
28524453bb76
f91d3f9b7230
28524453bb76
d4a7b6c82efe
d4a7b6c82efe
d4a7b6c82efe
f91d3f9b7230
d4a7b6c82efe
3555c56694b5
86c544532840
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
3555c56694b5
9937afa7f093
9937afa7f093
d5e42c00f3c1
d4a7b6c82efe
d4a7b6c82efe
d4a7b6c82efe
f91d3f9b7230
d4a7b6c82efe
d4a7b6c82efe
d4a7b6c82efe
f91d3f9b7230
d4a7b6c82efe
d4a7b6c82efe
f91d3f9b7230
d4a7b6c82efe
d4a7b6c82efe
d4a7b6c82efe
d4a7b6c82efe
d4a7b6c82efe
d4a7b6c82efe
d4a7b6c82efe
d4a7b6c82efe
d4a7b6c82efe
f91d3f9b7230
28524453bb76
f91d3f9b7230
## -*- coding: utf-8 -*-
<%inherit file="/base/base.html"/>

<%def name="title()">
    ${_('%s Changesets') % c.repo_name} - r${c.cs_ranges[0].revision}:${h.short_id(c.cs_ranges[0].raw_id)} -> r${c.cs_ranges[-1].revision}:${h.short_id(c.cs_ranges[-1].raw_id)} - ${c.rhodecode_name}
</%def>

<%def name="breadcrumbs_links()">
    ${h.link_to(_(u'Home'),h.url('/'))}
    &raquo;
    ${h.link_to(c.repo_name,h.url('summary_home',repo_name=c.repo_name))}
    &raquo;
    ${_('Changesets')} - r${c.cs_ranges[0].revision}:${h.short_id(c.cs_ranges[0].raw_id)} -> r${c.cs_ranges[-1].revision}:${h.short_id(c.cs_ranges[-1].raw_id)}
</%def>

<%def name="page_nav()">
    ${self.menu('changelog')}
</%def>

<%def name="main()">
<div class="box">
    <!-- box / title -->
    <div class="title">
        ${self.breadcrumbs()}
    </div>
    <div class="table">
		<div id="body" class="diffblock">
			<div class="code-header cv">
		        <h3 class="code-header-title">${_('Compare View')}</h3>
                <div>
				${_('Changesets')} - r${c.cs_ranges[0].revision}:${h.short_id(c.cs_ranges[0].raw_id)} -> r${c.cs_ranges[-1].revision}:${h.short_id(c.cs_ranges[-1].raw_id)}
				</div>
			</div>
		</div>
	    <div id="changeset_compare_view_content">
			<div class="container">
			<table class="compare_view_commits noborder">
            %for cnt,cs in enumerate(c.cs_ranges):
                <tr>
                <td><div class="gravatar"><img alt="gravatar" src="${h.gravatar_url(h.email_or_none(cs.author),14)}"/></div></td>
                <td>${h.link_to('r%s:%s' % (cs.revision,h.short_id(cs.raw_id)),h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}</td>
                <td><div class="author">${h.person(cs.author)}</div></td>
                <td><span class="tooltip" title="${h.age(cs.date)}">${cs.date}</span></td>
                <td>
                  %if c.statuses:
                    <div title="${h.tooltip(_('Changeset status'))}" class="changeset-status-ico"><img src="${h.url('/images/icons/flag_status_%s.png' % c.statuses[cnt])}" /></div>
                  %endif
                </td>
                <td><div class="message">${h.urlify_commit(h.wrap_paragraphs(cs.message),c.repo_name)}</div></td>
                </tr>
            %endfor
            </table>
	        </div>
	        <div style="font-size:1.1em;font-weight: bold;clear:both;padding-top:10px">${_('Files affected')}</div>
	        <div class="cs_files">
	               %for cs in c.cs_ranges:
	                   <div class="cur_cs">${h.link_to('r%s:%s' % (cs.revision,h.short_id(cs.raw_id)),h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}</div>
	                  %for FID, (cs1, cs2, change, path, diff, stats) in c.changes[cs.raw_id].iteritems():
	                    <div class="cs_${change}">${h.link_to(h.safe_unicode(path),h.url.current(anchor=FID))}</div>
	                  %endfor
	               %endfor
	        </div>
	    </div>

    </div>
    <%namespace name="comment" file="/changeset/changeset_file_comment.html"/>
    <%namespace name="diff_block" file="/changeset/diff_block.html"/>
     %for cs in c.cs_ranges:
          ##${comment.comment_inline_form(cs)}
          ## diff block
          <div class="h3">
          <a class="tooltip" title="${h.tooltip(cs.message)}" href="${h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id)}">${'r%s:%s' % (cs.revision,h.short_id(cs.raw_id))}</a>
             <div class="gravatar">
                 <img alt="gravatar" src="${h.gravatar_url(h.email_or_none(cs.author),20)}"/>
             </div>
             <div class="right">
              <span class="logtags">
                %if len(cs.parents)>1:
                <span class="merge">${_('merge')}</span>
                %endif
                %if cs.branch:
                <span class="branchtag" title="${'%s %s' % (_('branch'),cs.branch)}">
                   ${h.link_to(h.shorter(cs.branch),h.url('files_home',repo_name=c.repo_name,revision=cs.raw_id))}
                </span>
                %endif
                %if h.is_hg(c.rhodecode_repo):
                  %for book in cs.bookmarks:
                  <span class="bookbook" title="${'%s %s' % (_('bookmark'),book)}">
                     ${h.link_to(h.shorter(book),h.url('files_home',repo_name=c.repo_name,revision=cs.raw_id))}
                  </span>
                  %endfor
                %endif
                %for tag in cs.tags:
                    <span class="tagtag"  title="${'%s %s' % (_('tag'),tag)}">
                    ${h.link_to(h.shorter(tag),h.url('files_home',repo_name=c.repo_name,revision=cs.raw_id))}</span>
                %endfor
              </span>
            </div>
           </div>
          ${diff_block.diff_block(c.changes[cs.raw_id])}
          ##${comment.comments(cs)}

     %endfor
     <script type="text/javascript">

      YUE.onDOMReady(function(){

          YUE.on(YUQ('.diff-menu-activate'),'click',function(e){
              var act = e.currentTarget.nextElementSibling;

              if(YUD.hasClass(act,'active')){
                  YUD.removeClass(act,'active');
                  YUD.setStyle(act,'display','none');
              }else{
                  YUD.addClass(act,'active');
                  YUD.setStyle(act,'display','');
              }
          });
      })
    </script>
    </div>
</%def>