* r81084 added prefix to index name and as this index gets synced directly it has...
[mediawiki.git] / skins / common / history.js
blobee14ac97d958c65a9e7c0d907e439bcc37967afd
1 window.historyRadios = function( parent ) {
2         var     inputs = parent.getElementsByTagName( 'input' );
3         var     radios = [],
4                 i = 0;
5         for ( i = 0; i < inputs.length; i++ ) {
6                 if ( inputs[i].name == 'diff' || inputs[i].name == 'oldid' ) {
7                         radios[radios.length] = inputs[i];
8                 }
9         }
10         return radios;
13 // check selection and tweak visibility/class onclick
14 window.diffcheck = function() {
15         var     dli = false, // the li where the diff radio is checked
16                 oli = false, // the li where the oldid radio is checked
17                 i = 0;
18         var hf = document.getElementById( 'pagehistory' );
19         if ( !hf ) {
20                 return true;
21         }
22         var lis = hf.getElementsByTagName( 'li' );
23         for ( i = 0; i < lis.length; i++ ) {
24                 var inputs = historyRadios( lis[i] );
25                 if ( inputs[1] && inputs[0] ) {
26                         if ( inputs[1].checked || inputs[0].checked ) { // this row has a checked radio button
27                                 if ( inputs[1].checked && inputs[0].checked && inputs[0].value == inputs[1].value ) {
28                                         return false;
29                                 }
30                                 if ( oli ) { // it's the second checked radio
31                                         if ( inputs[1].checked ) {
32                                                 if ( typeof oli.className != 'undefined' ) {
33                                                         oli.classNameOriginal = oli.className.replace( 'selected', '' );
34                                                 } else {
35                                                         oli.classNameOriginal = '';
36                                                 }
38                                                 oli.className = 'selected ' + oli.classNameOriginal;
39                                                 return false;
40                                         }
41                                 } else if ( inputs[0].checked ) {
42                                         return false;
43                                 }
44                                 if ( inputs[0].checked ) {
45                                         dli = lis[i];
46                                 }
47                                 if ( !oli ) {
48                                         inputs[0].style.visibility = 'hidden';
49                                 }
50                                 if ( dli ) {
51                                         inputs[1].style.visibility = 'hidden';
52                                 }
53                                 if ( (typeof lis[i].className) != 'undefined') {
54                                         lis[i].classNameOriginal = lis[i].className.replace( 'selected', '' );
55                                 } else {
56                                         lis[i].classNameOriginal = '';
57                                 }
59                                 lis[i].className = 'selected ' + lis[i].classNameOriginal;
60                                 oli = lis[i];
61                         } else { // no radio is checked in this row
62                                 if ( !oli ) {
63                                         inputs[0].style.visibility = 'hidden';
64                                 } else {
65                                         inputs[0].style.visibility = 'visible';
66                                 }
67                                 if ( dli ) {
68                                         inputs[1].style.visibility = 'hidden';
69                                 } else {
70                                         inputs[1].style.visibility = 'visible';
71                                 }
72                                 if ( typeof lis[i].classNameOriginal != 'undefined' ) {
73                                         lis[i].className = lis[i].classNameOriginal;
74                                 }
75                         }
76                 }
77         }
78         return true;