# HG changeset patch # User Marcin Kuzminski # Date 2012-10-15 22:39:24 # Node ID 58bb350bfef8dffe21379e110bb5497130319a7c # Parent 3555c56694b545a16602ca62e7d15fbac26f292c Don't allow cherry picking changesets from the changelog using checkboxes. Change pull request text that will indicate opening pull request against checkec changesets diff --git a/rhodecode/public/css/style.css b/rhodecode/public/css/style.css --- a/rhodecode/public/css/style.css +++ b/rhodecode/public/css/style.css @@ -2551,6 +2551,11 @@ h3.files_location { margin: 0px 0px 0px 3px; } +#graph_content #rev_range_clear { + float: left; + margin: 0px 0px 0px 3px; +} + #graph_content .container { border-bottom: 1px solid #DDD; height: 56px; diff --git a/rhodecode/templates/base/root.html b/rhodecode/templates/base/root.html --- a/rhodecode/templates/base/root.html +++ b/rhodecode/templates/base/root.html @@ -45,7 +45,10 @@ 'Group':"${_('Group')}", 'members':"${_('members')}", 'search truncated': "${_('search truncated')}", - 'no matching files': "${_('no matching files')}" + 'no matching files': "${_('no matching files')}", + 'Open new pull request': "${_('Open new pull request')}", + 'Open new pull request for selected changesets': "${_('Open new pull request for selected changesets')}", + 'Show selected changes __S -> __E': "${_('Show selected changes __S -> __E')}", }; var _TM = TRANSLATION_MAP; diff --git a/rhodecode/templates/changelog/changelog.html b/rhodecode/templates/changelog/changelog.html --- a/rhodecode/templates/changelog/changelog.html +++ b/rhodecode/templates/changelog/changelog.html @@ -34,11 +34,13 @@
+ + %if c.rhodecode_db_repo.fork: ${_('Compare fork')} %endif %if h.is_hg(c.rhodecode_repo): - ${_('Open new pull request')} + ${_('Open new pull request')} %endif
@@ -148,31 +150,71 @@ var checkboxes = YUD.getElementsByClassName('changeset_range'); var url_tmpl = "${h.url('changeset_home',repo_name=c.repo_name,revision='__REVRANGE__')}"; YUE.on(checkboxes,'click',function(e){ + var clicked_cb = e.currentTarget; var checked_checkboxes = []; for (pos in checkboxes){ if(checkboxes[pos].checked){ checked_checkboxes.push(checkboxes[pos]); } } + + if(checked_checkboxes.length>0){ + // modify open pull request to show we have selected cs + YUD.get('open_new_pr').innerHTML = _TM['Open new pull request for selected changesets']; + + }else{ + YUD.get('open_new_pr').innerHTML = _TM['Open new pull request']; + } + if(checked_checkboxes.length>1){ var rev_end = checked_checkboxes[0].name; var rev_start = checked_checkboxes[checked_checkboxes.length-1].name; + // now select all checkboxes in the middle. + var checked = false; + for (var i=0; i __E']; + link = link.replace('__S',rev_start.substr(0,6)); + link = link.replace('__E',rev_end.substr(0,6)); + YUD.get('rev_range_container').href = url; + YUD.get('rev_range_container').innerHTML = link; + YUD.setStyle('rev_range_container','display',''); + YUD.setStyle('rev_range_clear','display',''); + } else{ YUD.setStyle('rev_range_container','display','none'); + YUD.setStyle('rev_range_clear','display','none'); } }); - + YUE.on('rev_range_clear','click',function(e){ + for (var i=0; i