-
+
${h.textarea('pullrequest_desc',size=30)}
@@ -125,8 +122,31 @@
var other_repos_info = ${c.other_repos_info|n};
+ var otherrepoChanged = function(){
+ var sel_box = YUQ('#pull_request_form #other_repo')[0];
+ var repo_name = sel_box.options[sel_box.selectedIndex].value;
+
+ YUD.get('other_repo_desc').innerHTML = other_repos_info[repo_name]['description'];
+ // replace options of other_ref with the ones for the current other_repo
+ var other_ref_selector = YUD.get('other_ref');
+ var new_select = YUD.createElementFromMarkup(other_repos_info[repo_name]['revs']);
+ var new_selectedIndex = new_select.selectedIndex;
+ other_ref_selector.innerHTML = ""; // clear old options
+ while (new_select.length > 0){ // children will be popped when appened to other_ref_selector
+ other_ref_selector.appendChild(new_select.children[0]);
+ }
+ // browsers lost track of selected when appendChild was used
+ other_ref_selector.selectedIndex = new_selectedIndex;
+
+ // reset && add the reviewer based on selected repo
+ var _data = other_repos_info[repo_name];
+ YUD.get('review_members').innerHTML = '';
+ addReviewMember(_data.user.user_id, _data.user.firstname,
+ _data.user.lastname, _data.user.username,
+ _data.user.gravatar_link);
+ }
+
var loadPreview = function(){
- YUD.setStyle(YUD.get('pull_request_overview_url').parentElement,'display','none');
//url template
var url = "${h.url('compare_url',
repo_name='__other_repo__',
@@ -136,8 +156,8 @@
other_ref_type='__org_ref_type__',
other_ref='__org_ref__',
as_form=True,
- rev_start=request.GET.get('rev_start',''),
- rev_end=request.GET.get('rev_end',''))}";
+ merge=True,
+ )}";
var org_repo = YUQ('#pull_request_form #org_repo')[0].value;
var org_ref = YUQ('#pull_request_form #org_ref')[0].value.split(':');
@@ -159,22 +179,10 @@
}
YUD.get('pull_request_overview').innerHTML = "${_('Loading ...')}";
+ ypjax(url,'pull_request_overview');
+
YUD.get('pull_request_overview_url').href = url; // shouldn't have as_form ... but ...
YUD.setStyle(YUD.get('pull_request_overview_url').parentElement,'display','');
- ypjax(url,'pull_request_overview', function(data){
- var sel_box = YUQ('#pull_request_form #other_repo')[0];
- var repo_name = sel_box.options[sel_box.selectedIndex].value;
- var _data = other_repos_info[repo_name];
- YUD.get('other_repo_desc').innerHTML = other_repos_info[repo_name]['description'];
- YUD.get('other_ref').innerHTML = other_repos_info[repo_name]['revs'];
- // select back the revision that was just compared
- setSelectValue(YUD.get('other_ref'), rev_data['other_ref']);
- // reset && add the reviewer based on selected repo
- YUD.get('review_members').innerHTML = '';
- addReviewMember(_data.user.user_id, _data.user.firstname,
- _data.user.lastname, _data.user.username,
- _data.user.gravatar_link);
- })
}
## refresh automatically when something changes (org_repo can't change)
@@ -184,9 +192,7 @@
});
YUE.on('other_repo', 'change', function(e){
- var repo_name = e.currentTarget.value;
- // replace the