Changeset - 5fe9bb7acee6
[Not reviewed]
default
0 3 0
Mads Kiilerich - 10 years ago 2016-02-01 21:23:07
madski@unity3d.com
pullrequests: show tags in lists of included and available changesets

Further improvement: Also show bookmarks and other names (preferably by using
some helper function/template instead of duplicating code). It would perhaps
also be better to avoid using floating.
3 files changed with 21 insertions and 3 deletions:
0 comments (0 inline, 0 general)
kallithea/public/css/style.css
Show inline comments
 
@@ -905,97 +905,97 @@ tbody .yui-dt-editable { cursor: pointer
 
    margin: 10px 0px;
 
}
 

	
 
#content div.box dt {
 
    font-size: 12px;
 
    margin: 0;
 
}
 

	
 
#content div.box dd {
 
    font-size: 12px;
 
    margin: 0;
 
    padding: 8px 0 8px 15px;
 
}
 

	
 
#content div.box li {
 
    font-size: 12px;
 
    padding: 4px 0;
 
}
 

	
 
#content div.box ul.disc,
 
#content div.box ul.circle {
 
    margin: 10px 24px 10px 38px;
 
}
 

	
 
#content div.box ul.square {
 
    margin: 10px 24px 10px 40px;
 
}
 

	
 
#content div.box img.left {
 
    border: none;
 
    float: left;
 
    margin: 10px 10px 10px 0;
 
}
 

	
 
#content div.box img.right {
 
    border: none;
 
    float: right;
 
    margin: 10px 0 10px 10px;
 
}
 

	
 
#content div.box div.messages {
 
    clear: both;
 
    overflow: hidden;
 
    margin: 0 20px;
 
    padding: 0;
 
}
 

	
 
#content div.box div.message {
 
    clear: both;
 
    float: left;
 
    overflow: hidden;
 
    margin: 0;
 
    padding: 5px 0;
 
    white-space: pre-wrap;
 
}
 
#content div.box div.expand {
 
    width: 110%;
 
    height: 14px;
 
    font-size: 10px;
 
    text-align: center;
 
    cursor: pointer;
 
    color: #666;
 
    background: linear-gradient(to bottom,rgba(255,255,255,0),rgba(64,96,128,0.1));
 
    display: none;
 
    overflow: hidden;
 
}
 
#content div.box div.expand .expandtext {
 
    background-color: #ffffff;
 
    padding: 2px;
 
    border-radius: 2px;
 
}
 

	
 
#content div.box div.message a {
 
    font-weight: 400 !important;
 
}
 

	
 
#content div.box div.message div.image {
 
    float: left;
 
    margin: 9px 0 0 5px;
 
    padding: 6px;
 
}
 

	
 
#content div.box div.message div.image img {
 
    vertical-align: middle;
 
    margin: 0;
 
}
 

	
 
#content div.box div.message div.text {
 
    float: left;
 
    margin: 0;
 
    padding: 9px 6px;
 
}
 

	
 
#content div.box div.message div.text h1,
 
#content div.box div.message div.text h2,
 
#content div.box div.message div.text h3,
 
#content div.box div.message div.text h4,
 
#content div.box div.message div.text h5,
kallithea/templates/compare/compare_cs.html
Show inline comments
 
@@ -18,97 +18,106 @@
 

	
 
    <table class="compare_view_commits noborder">
 
    %for cnt, cs in enumerate(reversed(c.cs_ranges)):
 
        <tr id="chg_${cnt+1}">
 
        <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 class="tooltip" title="${title}">
 
            ${index}
 
          </span>
 
        </td>
 
        <td style="width: 140px"><span class="tooltip" title="${h.age(cs.date)}">${cs.date}</span></td>
 
        <td><div class="gravatar" commit_id="${cs.raw_id}">${h.gravatar(h.email_or_none(cs.author), size=14)}</div></td>
 
        <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))}</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" commit_id="${cs.raw_id}" title="${_('Expand commit message')}">
 
            <i class="icon-align-left" style="color:#999"></i>
 
        </td>
 
        <td><div id="C-${cs.raw_id}" class="message">${h.urlify_commit(cs.message, c.repo_name)}</div></td>
 
        <td>
 
            <div style="float: right; margin-top: -4px;">
 
                %for tag in cs.tags:
 
                    <div class="tagtag" title="${_('Tag %s') % tag}">
 
                        ${h.link_to(tag,h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}
 
                    </div>
 
                %endfor
 
            </div>
 
            <div id="C-${cs.raw_id}" class="message">${h.urlify_commit(cs.message, c.repo_name)}</div>
 
        </td>
 
        </tr>
 
    %endfor
 
    </table>
 

	
 
    </div>
 

	
 
    %if c.as_form:
 
      <div style="font-size:1.1em;font-weight: bold;clear:both;padding-top:10px">
 
      ## 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')
 
        )}
 
      </div>
 
      <div style="font-size:1.1em;font-weight: bold;clear:both;padding-top:10px">
 
        ${_('Common ancestor')}:
 
        %if c.ancestor:
 
        ${h.link_to(h.short_id(c.ancestor),h.url('changeset_home',repo_name=c.repo_name,revision=c.ancestor))}
 
        %else:
 
        ${_('No common ancestor found - repositories are unrelated')}
 
        %endif
 
      </div>
 
    %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.as_form:
 
<div id="jsdata" style="display:none">${c.jsdata|n}</div>
 
%else:
 
<script type="text/javascript" src="${h.url('/js/graph.js', ver=c.kallithea_version)}"></script>
 
%endif
 

	
 
<script type="text/javascript">
 

	
kallithea/templates/pullrequests/pullrequest_show.html
Show inline comments
 
@@ -152,97 +152,106 @@ ${self.repo_context_bar('showpullrequest
 
          </div>
 
        </div>
 
        <div class="field">
 
          <div class="label-summary">
 
              <label>${_('Owner')}:</label>
 
          </div>
 
          <div class="input pr-not-edit">
 
                  <div class="gravatar">
 
                    ${h.gravatar(c.pull_request.owner.email, size=20)}
 
                  </div>
 
                  <span>${c.pull_request.owner.full_name_and_username}</span><br/>
 
                  <span><a href="mailto:${c.pull_request.owner.email}">${c.pull_request.owner.email}</a></span><br/>
 
          </div>
 
          <div class="input pr-do-edit ac" style="display:none">
 
               ${h.text('owner', class_="large", value=c.pull_request.owner.username, placeholder=_('Username'))}
 
               <div id="owner_completion_container"></div>
 
          </div>
 
        </div>
 

	
 
        <div class="field">
 
            <div class="label-summary">
 
              <label>${_('Update')}:</label>
 
            </div>
 
            <div class="input">
 
              <div class="msg-div">${c.update_msg}</div>
 
              %if c.avail_revs:
 
              <div id="updaterevs" style="max-height:200px; overflow-y:auto; overflow-x:hidden; margin-bottom: 10px; padding: 1px 0">
 
                <div style="height:0">
 
                  <canvas id="avail_graph_canvas" style="width:0"></canvas>
 
                </div>
 
                <table id="updaterevs-table" class="noborder" style="padding-left:50px">
 
                  %for cnt, cs in enumerate(c.avail_cs):
 
                    <tr id="chg_available_${cnt+1}">
 
                      %if cs.revision == c.cs_ranges[-1].revision:
 
                        <td>
 
                          %if editable:
 
                            ${h.radio(name='updaterev', value='', checked=True)}
 
                          %endif
 
                        </td>
 
                        <td colspan="4">${_("Current revision - no change")}</td>
 
                      %else:
 
                        <td>
 
                          %if editable and cs.revision in c.avail_revs:
 
                            ${h.radio(name='updaterev', value=cs.raw_id)}
 
                          %endif
 
                        </td>
 
                        <td style="width: 120px"><span class="tooltip" title="${h.age(cs.date)}">${cs.date}</span></td>
 
                        <td>${h.link_to(h.show_id(cs),h.url('changeset_home',repo_name=c.cs_repo.repo_name,revision=cs.raw_id))}</td>
 
                        <td><div class="message" style="white-space:normal; height:1.1em; max-width: 500px; padding:0">${h.urlify_commit(cs.message, c.repo_name)}</div></td>
 
                        <td>
 
                          <div style="float: right; margin-top: -4px;">
 
                            %for tag in cs.tags:
 
                              <div class="tagtag" title="${_('Tag %s') % tag}">
 
                                ${h.link_to(tag,h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}
 
                              </div>
 
                            %endfor
 
                          </div>
 
                          <div class="message" style="white-space:normal; height:1.1em; max-width: 500px; padding:0">${h.urlify_commit(cs.message, c.repo_name)}</div>
 
                        </td>
 
                      %endif
 
                    </tr>
 
                  %endfor
 
                </table>
 
              </div>
 
              <div class="msg-div">${_("Pull requests do not change once created. Select a revision and save to replace this pull request with a new one.")}</div>
 
              %endif
 
              <div class="msg-div">${c.update_msg_other}</div>
 
            </div>
 
        </div>
 
      </div>
 
    </div>
 
    ## REVIEWERS
 
    <div style="float:left; border-left:1px dashed #eee">
 
        <div class="pr-details-title">${_('Pull Request Reviewers')}</div>
 
        <div id="reviewers" style="padding:0px 0px 5px 10px">
 
          ## members goes here !
 
          <div>
 
            <ul id="review_members" class="group_members">
 
            %for member,status in c.pull_request_reviewers:
 
              ## WARNING: the HTML below is duplicate with
 
              ## kallithea/public/js/base.js
 
              ## If you change something here it should be reflected in the template too.
 
              <li id="reviewer_${member.user_id}">
 
                <div class="reviewers_member">
 
                    <div class="reviewer_status tooltip" title="${h.changeset_status_lbl(status.status if status else 'not_reviewed')}">
 
                      <i class="icon-circle changeset-status-${status.status if status else 'not_reviewed'}"></i>
 
                    </div>
 
                  <div class="reviewer_gravatar gravatar">
 
                    ${h.gravatar(member.email, size=14)}
 
                  </div>
 
                  <div style="float:left;">
 
                    ${member.full_name_and_username}
 
                    %if c.pull_request.user_id == member.user_id:
 
                      (${_('Owner')})
 
                    %endif
 
                  </div>
 
                  <input type="hidden" value="${member.user_id}" name="review_members" />
 
                  %if editable:
 
                  <div class="reviewer_member_remove action_button" onclick="removeReviewMember(${member.user_id})" title="${_('Remove reviewer')}">
 
                      <i class="icon-minus-circled"></i>
 
                  </div>
 
                  %endif
 
                </div>
 
              </li>
 
            %endfor
 
            </ul>
 
          </div>
0 comments (0 inline, 0 general)