Files @ baef43bc457c
Branch filter:

Location: kallithea/rhodecode/templates/changeset/changeset.html

Marcin Kuzminski
revert default to 20, for large repositories it's better to go less and have it faster.
This is still saved in user session so everyone can set high number and have it saved while logged in.
## -*- coding: utf-8 -*-

<%inherit file="/base/base.html"/>

<%def name="title()">
    ${c.repo_name} ${_('Changeset')} - r${c.changeset.revision}:${h.short_id(c.changeset.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;
    ${_('Changeset')} - r${c.changeset.revision}:${h.short_id(c.changeset.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 class="diffblock">
			<div class="code-header">
                <div class="date">${c.changeset.revision}:
                  ${h.link_to(h.short_id(c.changeset.raw_id),h.url('changeset_home',repo_name=c.repo_name,revision=c.changeset.raw_id))}
                  ${c.changeset.date}</div>
                <span class="diff-actions">
                  <a href="${h.url('raw_changeset_home',repo_name=c.repo_name,revision=c.changeset.raw_id,diff='show')}" title="${_('raw diff')}"><img class="icon" src="${h.url('/images/icons/page_white_text.png')}"/></a>
                  <a href="${h.url('raw_changeset_home',repo_name=c.repo_name,revision=c.changeset.raw_id,diff='download')}" title="${_('download diff')}"><img class="icon" src="${h.url('/images/icons/down_16.png')}"/></a>
                  ${c.ignorews_url()}
                  ${c.context_url()}
                </span>
                <div class="comments-number" style="float:right;padding-right:5px">${len(c.comments)} comment(s) (${c.inline_cnt} ${_('inline')})</div>
			</div>
		</div>
	    <div id="changeset_content">
			<div class="container">
	             <div class="left">
	                 <div class="author">
	                     <div class="gravatar">
	                         <img alt="gravatar" src="${h.gravatar_url(h.email(c.changeset.author),20)}"/>
	                     </div>
	                     <span>${h.person(c.changeset.author)}</span><br/>
	                     <span><a href="mailto:${h.email_or_none(c.changeset.author)}">${h.email_or_none(c.changeset.author)}</a></span><br/>
	                 </div>
	                 <div class="message">${h.urlify_commit(h.wrap_paragraphs(c.changeset.message))}</div>
	             </div>
	             <div class="right">
		             <div class="changes">
                        % if len(c.changeset.affected_files) <= c.affected_files_cut_off:	             
		                 <span class="removed" title="${_('removed')}">${len(c.changeset.removed)}</span>
		                 <span class="changed" title="${_('changed')}">${len(c.changeset.changed)}</span>
		                 <span class="added" title="${_('added')}">${len(c.changeset.added)}</span>
	                    % else:
                         <span class="removed" title="${_('affected %s files') % len(c.changeset.affected_files)}">!</span>
                         <span class="changed" title="${_('affected %s files') % len(c.changeset.affected_files)}">!</span>
                         <span class="added"   title="${_('affected %s files') % len(c.changeset.affected_files)}">!</span>	                    
	                    % endif		                 
		             </div>                  
		                 
		            %if c.changeset.parents:
		             %for p_cs in reversed(c.changeset.parents):
		                 <div class="parent">${_('Parent')}
                     <span class="changeset_id">${p_cs.revision}:<span class="changeset_hash">${h.link_to(h.short_id(p_cs.raw_id),
		                     h.url('changeset_home',repo_name=c.repo_name,revision=p_cs.raw_id),title=p_cs.message)}</span></span>
		                 </div>
		             %endfor
                    %else: 
                        <div class="parent">${_('No parents')}</div>   
                    %endif		             
		         <span class="logtags">
                 %if len(c.changeset.parents)>1:
                 <span class="merge">${_('merge')}</span>
                 %endif
		             <span class="branchtag" title="${'%s %s' % (_('branch'),c.changeset.branch)}">
		             ${h.link_to(c.changeset.branch,h.url('files_home',repo_name=c.repo_name,revision=c.changeset.raw_id))}</span>
		             %for tag in c.changeset.tags:
		                 <span class="tagtag"  title="${'%s %s' % (_('tag'),tag)}">
		                 ${h.link_to(tag,h.url('files_home',repo_name=c.repo_name,revision=c.changeset.raw_id))}</span>
		             %endfor
		         </span>                                                                 
	                </div>              
	        </div>
	        <span>
	        ${_('%s files affected with %s additions and %s deletions:') % (len(c.changeset.affected_files),c.lines_added,c.lines_deleted)}
	        </span>
	        <div class="cs_files">
	                %for change,filenode,diff,cs1,cs2,stat in c.changes:
	                    <div class="cs_${change}">
                            <div class="node">
                            %if change != 'removed':
                                ${h.link_to(h.safe_unicode(filenode.path),c.anchor_url(filenode.changeset.raw_id,filenode.path)+"_target")}
                            %else:
                                ${h.link_to(h.safe_unicode(filenode.path),h.url.current(anchor=h.FID('',filenode.path)))}
                            %endif
                            </div>
		                    <div class="changes">${h.fancy_file_stats(stat)}</div>
	                    </div>
	                %endfor
	                % if c.cut_off:
	                  ${_('Changeset was too big and was cut off...')}
	                % endif
	        </div>         
	    </div>
	    
    </div>
    
    ## diff block    	
    <%namespace name="diff_block" file="/changeset/diff_block.html"/>
    ${diff_block.diff_block(c.changes)}
    
    ## template for inline comment form
    <%namespace name="comment" file="/changeset/changeset_file_comment.html"/>
    ${comment.comment_inline_form(c.changeset)}
    
    ${comment.comments(c.changeset)}
    
    <script type="text/javascript">
      var deleteComment = function(comment_id){

          var url = "${url('changeset_comment_delete',repo_name=c.repo_name,comment_id='__COMMENT_ID__')}".replace('__COMMENT_ID__',comment_id);
          var postData = '_method=delete';
          var success = function(o){
              var n = YUD.get('comment-'+comment_id);
              n.parentNode.removeChild(n);
          }
          ajaxPOST(url,postData,success);
      }

      YUE.onDOMReady(function(){
          
          YUE.on(YUQ('.show-inline-comments'),'change',function(e){
              var show = 'none';
              var target = e.currentTarget;
              console.log(target);
              if(target.checked){
                  var show = ''
              }
              console.log('aa')
              var boxid = YUD.getAttribute(target,'id_for');
              console.log(boxid);
              var comments = YUQ('#{0} .inline-comments'.format(boxid));
              console.log(comments)
              for(c in comments){ 
                 YUD.setStyle(comments[c],'display',show);
              }
              var btns = YUQ('#{0} .inline-comments-button'.format(boxid));
              for(c in btns){ 
                  YUD.setStyle(btns[c],'display',show);
               }              
          })
          
          YUE.on(YUQ('.line'),'click',function(e){
              var tr = e.currentTarget;
              injectInlineForm(tr);
          });
          
          // inject comments into they proper positions
          var file_comments = YUQ('.inline-comment-placeholder');
          
          for (f in file_comments){
              var box = file_comments[f];
              var inlines = box.children;
              for(var i=0; i<inlines.length; i++){
                  try{

                    var inline = inlines[i];
                    var lineno = YUD.getAttribute(inlines[i],'line');
                    var lineid = "{0}_{1}".format(YUD.getAttribute(inline,'target_id'),lineno);
                    var target_line = YUD.get(lineid);
                    
                    var add = createInlineAddButton(target_line.parentNode,'${_("add another comment")}');
                    YUD.insertAfter(add,target_line.parentNode);
                    
                    var comment = new YAHOO.util.Element(tableTr('inline-comments',inline.innerHTML))
                    YUD.insertAfter(comment,target_line.parentNode);
                  }catch(e){
                	  console.log(e);
                  }
              }
          }
      })
      
    </script>     
    
    </div>
</%def>