Files @ ae81bcb8a93d
Branch filter:

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

Thomas De Schampheleire
HTML email templates: make pullrequest title a hyperlink

This commit makes the entirety of PR nice id _and_ PR title clickable,
rather than only the PR nice id.
d1addaf7a91e
d1addaf7a91e
d1addaf7a91e
d1addaf7a91e
0ee5a36aaa99
0ee5a36aaa99
37354e1ab283
d1addaf7a91e
37354e1ab283
d1addaf7a91e
d1addaf7a91e
789de118156b
d1addaf7a91e
d1addaf7a91e
ec39e73be935
d1addaf7a91e
ec39e73be935
d1addaf7a91e
d1addaf7a91e
432e86d1e555
80a15e10857a
d99afb88579e
d99afb88579e
d99afb88579e
d99afb88579e
33b71a130b16
33b71a130b16
33b71a130b16
d99afb88579e
d99afb88579e
5e3adb20839d
5e3adb20839d
7a31cb862a58
d1addaf7a91e
a181d4bd4c3d
d1addaf7a91e
a181d4bd4c3d
a181d4bd4c3d
d1addaf7a91e
d1addaf7a91e
e34cf36e024a
2d8f2a419edb
2d8f2a419edb
2d8f2a419edb
2d8f2a419edb
2d8f2a419edb
2d8f2a419edb
2d8f2a419edb
2d8f2a419edb
2d8f2a419edb
d1addaf7a91e
d1addaf7a91e
d1addaf7a91e
d1addaf7a91e
5e3adb20839d
a8429bf1cc6c
03746b8cd5c9
bf11fd471e5a
d1addaf7a91e
97ea346aa4bd
d1addaf7a91e
d1addaf7a91e
ff5caafa26dc
97ea346aa4bd
ff5caafa26dc
d1addaf7a91e
d1addaf7a91e
97ea346aa4bd
d1addaf7a91e
d1addaf7a91e
3dbb625d5f9c
3dbb625d5f9c
3dbb625d5f9c
d1addaf7a91e
482b6ac31603
482b6ac31603
482b6ac31603
8b265e5f9e07
9af9a8966d6d
9af9a8966d6d
482b6ac31603
8b265e5f9e07
9af9a8966d6d
9af9a8966d6d
482b6ac31603
482b6ac31603
d1addaf7a91e
e34cf36e024a
d1addaf7a91e
f287754980cc
18fc1888455f
d1addaf7a91e
d1addaf7a91e
04717653fe48
04717653fe48
04717653fe48
12919ffab34c
04717653fe48
04717653fe48
04717653fe48
04717653fe48
04717653fe48
12919ffab34c
04717653fe48
04717653fe48
8737030a9550
8737030a9550
8737030a9550
8737030a9550
8737030a9550
8737030a9550
8737030a9550
8737030a9550
8737030a9550
8737030a9550
8737030a9550
8737030a9550
8737030a9550
8737030a9550
8737030a9550
1cdfd54a9c8f
1cdfd54a9c8f
1cdfd54a9c8f
1cdfd54a9c8f
1cdfd54a9c8f
1cdfd54a9c8f
1cdfd54a9c8f
1cdfd54a9c8f
1cdfd54a9c8f
1cdfd54a9c8f
1cdfd54a9c8f
1cdfd54a9c8f
1cdfd54a9c8f
d1addaf7a91e
d1addaf7a91e
5e3adb20839d
1ba4fee6b27c
dc4cb1d4e084
d1addaf7a91e
dc4cb1d4e084
72acb38da217
dc4cb1d4e084
72acb38da217
72acb38da217
72acb38da217
1cf51cd05e36
e34cf36e024a
b66e4d720198
2d8f2a419edb
b66e4d720198
73234a550e7d
72acb38da217
72acb38da217
72acb38da217
72acb38da217
72acb38da217
d1addaf7a91e
5e3adb20839d
5e3adb20839d
5e3adb20839d
d1addaf7a91e
d1addaf7a91e
d1addaf7a91e
d1addaf7a91e
5e3adb20839d
5e3adb20839d
5e3adb20839d
d1addaf7a91e
e457b951aabe
dc4cb1d4e084
dc4cb1d4e084
dc4cb1d4e084
d1addaf7a91e
e46de90d5554
d1addaf7a91e
329c0584cba8
d1addaf7a91e
d1addaf7a91e
d1addaf7a91e
d1addaf7a91e
d1addaf7a91e
d1addaf7a91e
d1addaf7a91e
d1addaf7a91e
7834f845505a
d1addaf7a91e
5e3adb20839d
5e3adb20839d
d1addaf7a91e
d1addaf7a91e
e271a8766951
99d29f43bdd1
e87baa8f1c5b
d1addaf7a91e
d1addaf7a91e
e87baa8f1c5b
348ecbd25577
496bd1bc9a69
496bd1bc9a69
496bd1bc9a69
496bd1bc9a69
df5b6fc6c518
d1addaf7a91e
d1addaf7a91e
d1addaf7a91e
d99afb88579e
d1addaf7a91e
## -*- coding: utf-8 -*-

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

<%namespace name="comment" file="/changeset/changeset_file_comment.html"/>

<%block name="title">
    ${_('%s Changeset') % c.repo_name} - ${h.show_id(c.changeset)}
</%block>

<%def name="breadcrumbs_links()">
    ${_('Changeset')} - <span class='changeset_hash'>${h.show_id(c.changeset)}</span>
</%def>

<%block name="header_menu">
    ${self.menu('repositories')}
</%block>

<%def name="main()">
${self.repo_context_bar('changelog', c.changeset.raw_id)}
<div class="panel panel-primary">
  <div class="panel-heading clearfix">
    ${self.breadcrumbs()}
  </div>
  <script>
    var _USERS_AC_DATA = ${h.js(c.users_array)};
    AJAX_COMMENT_URL = ${h.js(url('changeset_comment',repo_name=c.repo_name,revision=c.changeset.raw_id))};
    AJAX_COMMENT_DELETE_URL = ${h.js(url('changeset_comment_delete',repo_name=c.repo_name,comment_id='__COMMENT_ID__'))};
  </script>
  <div class="panel-body">
    <div class="panel panel-default">
        <div class="panel-heading clearfix">
            ${self.parent_child_navigation()}

                <div class="pull-left" title="${_('Changeset status')}">
                    %if c.statuses:
                        <i class="icon-circle changeset-status-${c.statuses[0]}"></i>
                        [${h.changeset_status_lbl(c.statuses[0])}]
                    %endif
                </div>
                <div class="diff-actions pull-left">
                  <a href="${h.url('changeset_raw_home',repo_name=c.repo_name,revision=c.changeset.raw_id)}"
                     data-toggle="tooltip"
                     title="${_('Raw diff')}"><i class="icon-diff"></i></a>
                  <a href="${h.url('changeset_patch_home',repo_name=c.repo_name,revision=c.changeset.raw_id)}"
                     data-toggle="tooltip"
                     title="${_('Patch diff')}"><i class="icon-file-powerpoint"></i></a>
                  <a href="${h.url('changeset_download_home',repo_name=c.repo_name,revision=c.changeset.raw_id,diff='download')}"
                     data-toggle="tooltip"
                     title="${_('Download diff')}"><i class="icon-floppy"></i></a>
                  ${c.ignorews_url(request.GET)}
                  ${c.context_url(request.GET)}
                </div>
        </div>
        <div class="panel-body">
            <div class="form-group changeset_content_header clearfix">
                <div class="pull-right">
                    <span>
                        %if len(c.changeset.parents)>1:
                        <span class="label label-merge">${_('Merge')}</span>
                        %endif

                        %for book in c.changeset.bookmarks:
                        <span class="label label-bookmark" title="${_('Bookmark %s') % book}">${h.link_to(book,h.url('changeset_home',repo_name=c.repo_name,revision=c.changeset.raw_id))}</span>
                        %endfor

                        %for tag in c.changeset.tags:
                         <span class="label label-tag"  title="${_('Tag %s') % tag}">${h.link_to(tag,h.url('changeset_home',repo_name=c.repo_name,revision=c.changeset.raw_id))}</span>
                        %endfor

                        %for branch in c.changeset.branches:
                          <span class="label label-branch" title="${_('Branch %s') % branch}">${h.link_to(branch,h.url('changelog_home',repo_name=c.repo_name,branch=branch))}</span>
                        %endfor
                    </span>

                    <div class="changes">
                        % if (len(c.changeset.affected_files) <= c.affected_files_cut_off) or c.fulldiff:
                         <span class="label deleted" title="${_('Removed')}">${len(c.changeset.removed)}</span>
                         <span class="label changed" title="${_('Changed')}">${len(c.changeset.changed)}</span>
                         <span class="label added" title="${_('Added')}">${len(c.changeset.added)}</span>
                        % else:
                         <span class="label deleted" title="${_('Affected %s files') % len(c.changeset.affected_files)}">!</span>
                         <span class="label changed" title="${_('Affected %s files') % len(c.changeset.affected_files)}">!</span>
                         <span class="label added"   title="${_('Affected %s files') % len(c.changeset.affected_files)}">!</span>
                        % endif
                    </div>
                </div>
                <div class="pull-left">
                     <div class="author">
                         ${h.gravatar_div(h.email_or_none(c.changeset.author), size=20)}
                         <span><b>${h.person(c.changeset.author,'full_name_and_username')}</b> - ${h.age(c.changeset.date,True)} ${h.fmt_date(c.changeset.date)}</span><br/>
                         <span>${h.email_or_none(c.changeset.author)}</span><br/>
                     </div>
                     <% rev = c.changeset.extra.get('source') %>
                     %if rev:
                     <div>
                       ${_('Grafted from:')} ${h.link_to(h.short_id(rev),h.url('changeset_home',repo_name=c.repo_name,revision=rev), class_="changeset_hash")}
                     </div>
                     %endif
                     <% rev = c.changeset.extra.get('transplant_source', '').encode('hex') %>
                     %if rev:
                     <div>
                       ${_('Transplanted from:')} ${h.link_to(h.short_id(rev),h.url('changeset_home',repo_name=c.repo_name,revision=rev), class_="changeset_hash")}
                     </div>
                     %endif

                     % if hasattr(c.changeset, 'successors') and c.changeset.successors:
                     <div class='successors'>
                       <span class='successors_header'>${_('Replaced by:')} </span>
                       % for i, s in enumerate(c.changeset.successors):
                           <%
                           comma = ""
                           if i != len(c.changeset.successors)-1:
                             comma = ", "
                           %>
                         <a class='successors_hash' href="${h.url('changeset_home',repo_name=c.repo_name, revision=s)}">${s}</a>${comma}
                       % endfor
                     </div>
                     % endif

                     % if hasattr(c.changeset, 'precursors') and c.changeset.precursors:
                     <div class='precursors'>
                       <span class='precursors_header'>${_('Preceded by:')} </span>
                       % for i, s in enumerate(c.changeset.precursors):
                           <%
                           comma = ""
                           if i != len(c.changeset.precursors)-1:
                             comma = ", "
                           %>
                           <a class="precursors_hash" href="${h.url('changeset_home',repo_name=c.repo_name, revision=s)}">${s}</a>${comma}
                       % endfor
                     </div>
                     % endif
                </div>
            </div>
            <div class="form-group">${h.urlify_text(c.changeset.message, c.repo_name)}</div>
            <div>
              <% a_rev, cs_rev, file_diff_data = c.changes[c.changeset.raw_id] %>
              % if c.limited_diff:
                  ${ungettext('%s file changed', '%s files changed', len(file_diff_data)) % len(file_diff_data)}:
              % else:
                  ${ungettext('%s file changed with %s insertions and %s deletions', '%s files changed with %s insertions and %s deletions', len(file_diff_data)) % (len(file_diff_data), c.lines_added, c.lines_deleted)}:
              %endif
              </div>
              <div class="cs_files">
                %for fid, url_fid, op, a_path, path, diff, stats in file_diff_data:
                    <div class="cs_${op} clearfix">
                      <span class="node">
                          <i class="icon-diff-${op}"></i>${h.link_to(h.safe_unicode(path), '#%s' % fid)}
                      </span>
                      <div class="changes">${h.fancy_file_stats(stats)}</div>
                    </div>
                %endfor
                %if c.limited_diff:
                  <h5>${_('Changeset was too big and was cut off...')} <a href="${h.url.current(fulldiff=1, **request.GET.mixed())}">${_('Show full diff anyway')}</a></h5>
                %endif
            </div>
            <div class="comments-number">
                ${comment.comment_count(c.inline_cnt, len(c.comments))}
            </div>
        </div>

    </div>

    ## diff block

    <div class="commentable-diff">
    <%namespace name="diff_block" file="/changeset/diff_block.html"/>
    ${diff_block.diff_block_js()}
    <% a_rev, cs_rev, file_diff_data = c.changes[c.changeset.raw_id] %>
    ${diff_block.diff_block(c.repo_name, 'rev', a_rev, a_rev,
                            c.repo_name, 'rev', cs_rev, cs_rev, file_diff_data)}
    % if c.limited_diff:
      <h4>${_('Changeset was too big and was cut off...')} <a href="${h.url.current(fulldiff=1, **request.GET.mixed())}">${_('Show full diff anyway')}</a></h4>
    % endif
    </div>

    ## template for inline comment form
    ${comment.comment_inline_form()}

    ## render comments and inlines
    ${comment.generate_comments()}

    ## main comment form and it status
    ${comment.comments()}

    </div>

    ## FORM FOR MAKING JS ACTION AS CHANGESET COMMENTS
    <script type="text/javascript">
      $(document).ready(function(){
          $('.code-difftable').on('click', '.add-bubble', function(e){
              show_comment_form($(this));
          });

          move_comments($(".comments .comments-list-chunk"));

          // hack: re-navigate to target after JS is done ... if a target is set and setting href thus won't reload
          if (window.location.hash != "") {
              window.location.href = window.location.href;
          }
      });

    </script>

  </div>
</%def>