Mercurial > kallithea
view kallithea/templates/compare/compare_cs.html @ 6667:8dd57541a2f7
pullrequests: fix graph re-drawing on 'expand' of changeset description while creating PR
Expanding would fail with
TypeError: r.render is not a function
To fix this, do all the graph drawing in compare_cs.html .
author | Mads Kiilerich <mads@kiilerich.com> |
---|---|
date | Sun, 11 Jun 2017 15:02:08 +0200 |
parents | 62ac1470b748 |
children | b99cd2bc7540 |
line wrap: on
line source
## Changesets table ! <div class="container"> %if not c.cs_ranges: <span class="empty_data">${_('No changesets')}</span> %else: %if c.ancestors: <div class="ancestor"> %if len(c.ancestors) > 1: <div style="color:red; font-weight: bold"> ${_('Criss cross merge situation with multiple merge ancestors detected!')} </div> <div style="color:red"> ${_('Please merge the target branch to your branch before creating a pull request.')} </div> %endif <div> ${_('Merge Ancestor')}: %for ancestor in c.ancestors: ${h.link_to(h.short_id(ancestor),h.url('changeset_home',repo_name=c.repo_name,revision=ancestor), class_="changeset_hash")} %endfor </div> </div> %endif <div id="graph_nodes"> <canvas id="graph_canvas" style="width:0"></canvas> </div> <div id="graph_content_pr" style="margin-left: 100px;"> <table class="table compare_view_commits"> %for cnt, cs in enumerate(reversed(c.cs_ranges)): <tr id="chg_${cnt+1}" class="${'mergerow' if len(cs.parents) > 1 else ''}"> <td style="width:50px"> %if cs.raw_id in c.statuses: <div title="${_('Changeset status: %s') % c.statuses[cs.raw_id][1]}" class="changeset-status-ico"> <i class="icon-circle changeset-status-${c.statuses[cs.raw_id][0]}"></i> </div> %endif %if c.cs_comments.get(cs.raw_id): <div class="comments-container"> <div class="comments-cnt" title="${_('Changeset has comments')}"> <a href="${c.cs_comments[cs.raw_id][0].url()}"> ${len(c.cs_comments[cs.raw_id])} <i class="icon-comment"></i> </a> </div> </div> %endif </td> <td class="changeset-logical-index"> <% num_cs = len(c.cs_ranges) index = num_cs - cnt if index == 1: title = _('First (oldest) changeset in this list') elif index == num_cs: title = _('Last (most recent) changeset in this list') else: title = _('Position in this list of changesets') %> <span data-toggle="tooltip" title="${title}"> ${index} </span> </td> <td style="width: 140px"><span data-toggle="tooltip" title="${h.age(cs.date)}">${cs.date}</span></td> %if c.visual.use_gravatar: <td>${h.gravatar_div(h.email_or_none(cs.author), size=14)}</td> %endif <td><div class="author">${h.person(cs.author)}</div></td> <td>${h.link_to(h.show_id(cs),h.url('changeset_home',repo_name=c.cs_repo.repo_name,revision=cs.raw_id), class_='changeset_hash')}</td> <td> %if cs.branch: <span class="branchtag">${h.link_to(cs.branch,h.url('changelog_home',repo_name=c.cs_repo.repo_name,branch=cs.branch))}</span> %endif </td> <td class="expand_commit" data-commit_id="${cs.raw_id}" title="${_('Expand commit message')}"> <i class="icon-align-left" style="color:#999"></i> </td> <td> <div class="pull-right" style="margin-top: -4px;"> %for tag in cs.tags: <span class="tagtag" title="${_('Tag %s') % tag}"> ${h.link_to(tag,h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))} </span> %endfor </div> <div id="C-${cs.raw_id}" class="message">${h.urlify_text(cs.message, c.repo_name)}</div> </td> </tr> %endfor </table> </div> %if c.is_ajax_preview: <h5> ## links should perhaps use ('rev', c.a_rev) instead ... ${h.link_to(_('Show merge diff'), h.url('compare_url', repo_name=c.a_repo.repo_name, org_ref_type=c.a_ref_type, org_ref_name=c.a_ref_name, other_repo=c.cs_repo.repo_name, other_ref_type=c.cs_ref_type, other_ref_name=c.cs_ref_name, merge='1') )} </h5> %endif %if c.cs_ranges_org is not None: ## TODO: list actual changesets? <div style="font-size:1.1em;font-weight: bold;clear:both;padding-top:10px"> ${h.link_to_ref(c.cs_repo.repo_name, c.cs_ref_type, c.cs_ref_name, c.cs_rev)} ${_('is')} <a href="${c.swap_url}">${_('%s changesets') % (len(c.cs_ranges_org))}</a> ${_('behind')} ${h.link_to_ref(c.a_repo.repo_name, c.a_ref_type, c.a_ref_name)} </div> %endif %endif </div> %if c.is_ajax_preview: <div id="jsdata" style="display:none">${h.js(c.jsdata)}</div> %else: <script type="text/javascript" src="${h.url('/js/graph.js', ver=c.kallithea_version)}"></script> %endif <script type="text/javascript"> $(document).ready(function(){ var jsdata = ${h.js(c.jsdata)}; var r = new BranchRenderer('graph_canvas', 'graph_content_pr', 'chg_'); r.render(jsdata); $('.expand_commit').click(function(e){ var cid = $(this).data('commit_id'); $('#C-'+cid).toggleClass('expanded'); r.render(jsdata); }); $('.gravatar').click(function(e){ var cid = $(this).data('commit_id'); $('#row-'+cid).toggleClass('hl', !$('#row-'+cid).hasClass('hl')); }); }); </script>