Mercurial > kallithea
diff rhodecode/templates/pullrequests/pullrequest.html @ 2395:b262e349a7a5 codereview
created pull-request overview
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Wed, 06 Jun 2012 01:07:48 +0200 |
parents | 77e376fdc4c6 |
children | 51e3d60fed2f |
line wrap: on
line diff
--- a/rhodecode/templates/pullrequests/pullrequest.html Wed Jun 06 01:01:33 2012 +0200 +++ b/rhodecode/templates/pullrequests/pullrequest.html Wed Jun 06 01:07:48 2012 +0200 @@ -19,7 +19,8 @@ <div class="title"> ${self.breadcrumbs()} </div> - <div style="padding:30px"> + ${h.form(url('#'),method='put', id='pull_request_form')} + <div style="float:left;padding:30px"> ##ORG <div style="float:left"> <div class="fork_user"> @@ -27,14 +28,14 @@ <img alt="gravatar" src="${h.gravatar_url(c.rhodecode_db_repo.user.email,24)}"/> </div> <span style="font-size: 20px"> - ${h.select('other','',['%s/%s' % (c.rhodecode_db_repo.user.username,c.repo_name)])}:${h.select('other_ref','',c.org_refs)} + ${h.select('org_repo','',c.org_repos,class_='refs')}:${h.select('org_ref','',c.org_refs,class_='refs')} </span> <div style="padding:5px 3px 3px 42px;">${c.rhodecode_db_repo.description}</div> </div> <div style="clear:both;padding-top: 10px"></div> </div> <div style="float:left;font-size:24px;padding:0px 20px"> - <img src="${h.url('/images/arrow_right_64.png')}"/> + <img height=32 width=32 src="${h.url('/images/arrow_right_64.png')}"/> </div> ##OTHER, most Probably the PARENT OF THIS FORK @@ -44,16 +45,65 @@ <img alt="gravatar" src="${h.gravatar_url(c.rhodecode_db_repo.user.email,24)}"/> </div> <span style="font-size: 20px"> - ${h.select('orther','',c.sources)}:${h.select('other_ref','',c.org_refs)} + ${h.select('other_repo','',c.other_repos,class_='refs')}:${h.select('other_ref','',c.other_refs,class_='refs')} </span> <div style="padding:5px 3px 3px 42px;">${c.rhodecode_db_repo.description}</div> </div> <div style="clear:both;padding-top: 10px"></div> </div> + <div style="float:left;padding:5px 5px 5px 15px"> + <span> + <a id="refresh" href="#"> + <img class="icon" title="${_('Refresh')}" alt="${_('Refresh')}" src="${h.url('/images/icons/arrow_refresh.png')}"/> + ${_('refresh overview')} + </a> + </span> + </div> + <div style="clear:both;padding-top: 10px"></div> + <div style="float:left" id="pull_request_overview"> + </div> </div> - - <h3>${_('New pull request')} from USER:REF into PARENT:REF</h3> - ${h.form(url('#'),method='put')} + <div style="float:left; border-left:1px dashed #eee"> + <h4>${_('Pull request reviewers')}</h4> + <div id="reviewers" style="padding:0px 0px 0px 15px"> + ##TODO: make this nicer :) + <table class="table noborder"> + <tr> + <td> + <div> + <div style="float:left"> + <div class="text" style="padding: 0px 0px 6px;">${_('Choosen reviewers')}</div> + ${h.select('review_members',[x[0] for x in c.review_members],c.review_members,multiple=True,size=8,style="min-width:210px")} + <div id="remove_all_elements" style="cursor:pointer;text-align:center"> + ${_('Remove all elements')} + <img alt="remove" style="vertical-align:text-bottom" src="${h.url('/images/icons/arrow_right.png')}"/> + </div> + </div> + <div style="float:left;width:20px;padding-top:50px"> + <img alt="add" id="add_element" + style="padding:2px;cursor:pointer" + src="${h.url('/images/icons/arrow_left.png')}"/> + <br /> + <img alt="remove" id="remove_element" + style="padding:2px;cursor:pointer" + src="${h.url('/images/icons/arrow_right.png')}"/> + </div> + <div style="float:left"> + <div class="text" style="padding: 0px 0px 6px;">${_('Available reviewers')}</div> + ${h.select('available_members',[],c.available_members,multiple=True,size=8,style="min-width:210px")} + <div id="add_all_elements" style="cursor:pointer;text-align:center"> + <img alt="add" style="vertical-align:text-bottom" src="${h.url('/images/icons/arrow_left.png')}"/> + ${_('Add all elements')} + </div> + </div> + </div> + </td> + </tr> + </table> + </div> + </div> + <h3>${_('Create new pull request')}</h3> + <div class="form"> <!-- fields --> @@ -85,7 +135,51 @@ </div> ${h.end_form()} - </div> +<script type="text/javascript"> + MultiSelectWidget('review_members','available_members','pull_request_form'); + + var loadPreview = function(){ + var url = "${h.url('compare_url', + repo_name='org_repo', + org_ref_type='branch', org_ref='org_ref', + other_ref_type='branch', other_ref='other_ref', + repo='other_repo')}"; + + var select_refs = YUQ('#pull_request_form select.refs') + + for(var i=0;i<select_refs.length;i++){ + var select_ref = select_refs[i]; + var select_ref_data = select_ref.value.split(':'); + var key = null; + var val = null; + if(select_ref_data.length>1){ + key = select_ref.name+"_type"; + val = select_ref_data[0]; + url = url.replace(key,val); + + key = select_ref.name; + val = select_ref_data[1]; + url = url.replace(key,val); + + }else{ + key = select_ref.name; + val = select_ref.value; + url = url.replace(key,val); + } + } + + ypjax(url,'pull_request_overview', function(data){}) + } + YUE.on('refresh','click',function(e){ + loadPreview() + }) + + //lazy load after 0.5 + + setTimeout(loadPreview,500) + +</script> + </%def>