view rhodecode/templates/files/files_source.html @ 1043:6ec53c16c744 beta

fixed binary file issues
author Marcin Kuzminski <marcin@python-works.com>
date Mon, 14 Feb 2011 15:29:53 +0100
parents 59b7131c15b1
children ed5270522724
line wrap: on
line source

<dl>
	<dt>${_('Revision')}</dt>
	<dd>
		${h.link_to("r%s:%s" % (c.files_list.last_changeset.revision,h.short_id(c.files_list.last_changeset.raw_id)),
						h.url('changeset_home',repo_name=c.repo_name,revision=c.files_list.last_changeset.raw_id))} 
	</dd>
	<dt>${_('Size')}</dt>
	<dd>${h.format_byte_size(c.files_list.size,binary=True)}</dd>
	<dt>${_('Mimetype')}</dt>
	<dd>${c.files_list.mimetype}</dd>
	<dt>${_('Options')}</dt>
	<dd>${h.link_to(_('show annotation'),
			h.url('files_annotate_home',repo_name=c.repo_name,revision=c.changeset.raw_id,f_path=c.f_path))}
		 / ${h.link_to(_('show as raw'),
			h.url('files_raw_home',repo_name=c.repo_name,revision=c.changeset.raw_id,f_path=c.f_path))}			
		 / ${h.link_to(_('download as raw'),
			h.url('files_rawfile_home',repo_name=c.repo_name,revision=c.changeset.raw_id,f_path=c.f_path))}
	</dd>
	<dt>${_('History')}</dt>
	<dd>
		<div>
		${h.form(h.url('files_diff_home',repo_name=c.repo_name,f_path=c.f_path),method='get')}
		${h.hidden('diff2',c.files_list.last_changeset.raw_id)}
		${h.select('diff1',c.files_list.last_changeset.raw_id,c.file_history)}
		${h.submit('diff','diff to revision',class_="ui-button")}
		${h.submit('show_rev','show at revision',class_="ui-button")}
		${h.end_form()}
		</div>
	</dd>
</dl>	

	
<div id="body" class="codeblock">
	<div class="code-header">
		<div class="revision">${c.files_list.name}@r${c.files_list.last_changeset.revision}:${h.short_id(c.files_list.last_changeset.raw_id)}</div>
		<div class="commit">"${c.files_list.last_changeset.message}"</div>
	</div>
	<div class="code-body">
	   %if c.files_list.is_binary:
	       ${_('Binary file')}
	   %else:
		% if c.files_list.size < c.cut_off_limit:
			${h.pygmentize(c.files_list,linenos=True,anchorlinenos=True,lineanchors='L',cssclass="code-highlight")}
		%else:
			${_('File is to big to display')} ${h.link_to(_('show as raw'),
			h.url('files_raw_home',repo_name=c.repo_name,revision=c.changeset.raw_id,f_path=c.f_path))}
		%endif
		
       <script type="text/javascript">
           function highlight_lines(lines){
               for(pos in lines){
                 YUD.setStyle('L'+lines[pos],'background-color','#FFFFBE');                       
               }              
           }       
           page_highlights = location.href.substring(location.href.indexOf('#')+1).split('L');
           if (page_highlights.length == 2){
              highlight_ranges  = page_highlights[1].split(",");

              var h_lines = [];
              for (pos in highlight_ranges){
                   var _range = highlight_ranges[pos].split('-');
                   if(_range.length == 2){
                       var start = parseInt(_range[0]);
                       var end = parseInt(_range[1]);
                       if (start < end){
                           for(var i=start;i<=end;i++){
                               h_lines.push(i);
                           }
                       } 
                   }
                   else{
                       h_lines.push(parseInt(highlight_ranges[pos]));
                   }
             }
           highlight_lines(h_lines);              
           }
       </script>
     %endif		
	</div>
</div>

<script type="text/javascript">
YAHOO.util.Event.onDOMReady(function(){
    YAHOO.util.Event.addListener('show_rev','click',function(e){
    	YAHOO.util.Event.preventDefault(e);
        var cs = YAHOO.util.Dom.get('diff1').value;
        var url = "${h.url('files_home',repo_name=c.repo_name,revision='__CS__',f_path=c.f_path)}".replace('__CS__',cs);
        window.location = url;
        });
   });
</script>