summaryrefslogtreecommitdiffstats
path: root/public/javascripts/repository_navigation.js
blob: a40815f9406150936b5778dba3d622230c999cd6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Event.observe(window,'load',function() {
  /* 
  If we're viewing a tag or branch, don't display it in the
  revision box
  */
  var branch_selected = $('branch') && $('rev').getValue() == $('branch').getValue();
  var tag_selected = $('tag') && $('rev').getValue() == $('tag').getValue();
  if (branch_selected || tag_selected) {
    $('rev').setValue('');
  }

  /* 
  Copy the branch/tag value into the revision box, then disable
  the dropdowns before submitting the form
  */
  $$('#branch,#tag').each(function(e) {
    e.observe('change',function(e) {
      $('rev').setValue(e.element().getValue());
      $$('#branch,#tag').invoke('disable');
      e.element().parentNode.submit();
      $$('#branch,#tag').invoke('enable');
    });
  });

  /*
  Disable the branch/tag dropdowns before submitting the revision form
  */
  $('rev').observe('keydown', function(e) {
    if (e.keyCode == 13) {
      $$('#branch,#tag').invoke('disable');
      e.element().parentNode.submit();
      $$('#branch,#tag').invoke('enable');
    }
  });
})