4,5c4 < var is_gecko = /gecko/.test( clientPC ) && < !/khtml|spoofer|netscape\/7\.0/.test(clientPC); --- > var is_gecko = /gecko/.test(clientPC) && !/khtml|spoofer|netscape\/7\.0/.test(clientPC); 8,9c7 < var is_safari = clientPC.indexOf('applewebkit') != -1 && < clientPC.indexOf('spoofer') == -1; --- > var is_safari = clientPC.indexOf('applewebkit') != -1 && clientPC.indexOf('spoofer') == -1; 13,14c11 < var is_khtml = navigator.vendor == 'KDE' || < ( document.childNodes && !document.all && !navigator.taintEnabled ); --- > var is_khtml = navigator.vendor == 'KDE' || (document.childNodes && !document.all && !navigator.taintEnabled); 33c30 < if (!window.onloadFuncts) { --- > if (!window.onloadFuncts) 35d31 < } 39c35 < if(!doneOnloadHook) { --- > if (!doneOnloadHook) 41c37 < } else { --- > else 43d38 < } 47c42 < if (window.addEventListener) { --- > if (window.addEventListener) 49c44 < } else if (window.attachEvent) { --- > else if (window.attachEvent) 51d45 < } 60c54 < if (loadedScripts[url]) { --- > if (loadedScripts[url]) 62d55 < } 83,84c76,79 < if (s.styleSheet) s.styleSheet.cssText = text //IE < else s.appendChild(document.createTextNode(text + '')) //Safari sometimes borks on null --- > if (s.styleSheet) //IE > s.styleSheet.cssText = text; > else //Safari sometimes borks on null > s.appendChild(document.createTextNode(text + '')); 91c86 < if (is_opera_preseven) { --- > if (is_opera_preseven) 93c88 < } else if (is_opera_seven && !is_opera_95) { --- > else if (is_opera_seven && !is_opera_95) 95c90 < } else if (is_khtml) { --- > else if (is_khtml) 97d91 < } 102c96 < if (window.top != window) { --- > if (window.top != window) 104d97 < } 128c121 < if (!linkHolder) { --- > if (!linkHolder) 130d122 < } 149c141 < if (cookiePos > -1 && document.cookie.charAt(cookiePos + 8) == 1) { --- > if (cookiePos > -1 && document.cookie.charAt(cookiePos + 8) == 1) 151d142 < } 157c148 < if (el.innerText) { --- > if (el.innerText) 159c150 < } else if (el.firstChild && el.firstChild.nodeValue) { --- > else if (el.firstChild && el.firstChild.nodeValue) 161d151 < } 207c197 < if (is_opera) { --- > if (is_opera) 209c199 < } else if (!is_safari_win && is_safari && webkit_version > 526) { --- > else if (!is_safari_win && is_safari && webkit_version > 526) 211,213c201 < } else if (!is_safari_win && (is_safari < || clientPC.indexOf('mac') != -1 < || clientPC.indexOf('konqueror') != -1 )) { --- > else if (!is_safari_win && (is_safari || clientPC.indexOf('mac') != -1 || clientPC.indexOf('konqueror') != -1 )) 215c203 < } else if (is_ff2) { --- > else if (is_ff2) 217d204 < } 229c216 < if ( !nodeList ) { --- > if (!nodeList) { 232,233c219,220 < if ( columnOne ) < updateTooltipAccessKeys( columnOne.getElementsByTagName("a") ); --- > if (columnOne) > updateTooltipAccessKeys(columnOne.getElementsByTagName("a")); 235,236c222,223 < updateTooltipAccessKeys( document.getElementsByTagName("input") ); < updateTooltipAccessKeys( document.getElementsByTagName("label") ); --- > updateTooltipAccessKeys(document.getElementsByTagName("input")); > updateTooltipAccessKeys(document.getElementsByTagName("label")); 240c227 < for ( var i = 0; i < nodeList.length; i++ ) { --- > for (var i = 0, n = nodeList.length; i < n; i++) { 243,246c230,232 < if ( tip && tooltipAccessKeyRegexp.exec(tip) ) { < tip = tip.replace(tooltipAccessKeyRegexp, < "["+tooltipAccessKeyPrefix+"$5]"); < element.setAttribute("title", tip ); --- > if (tip && tooltipAccessKeyRegexp.exec(tip)) { > tip = tip.replace(tooltipAccessKeyRegexp, "["+tooltipAccessKeyPrefix+"$5]"); > element.setAttribute("title", tip); 281,283c267,269 < if ( !node ) return null; < node = node.getElementsByTagName( "ul" )[0]; < if ( !node ) return null; --- > if (!node) return null; > node = node.getElementsByTagName("ul")[0]; > if (!node) return null; 285,286c271,272 < var link = document.createElement( "a" ); < link.appendChild( document.createTextNode( text ) ); --- > var link = document.createElement("a"); > link.appendChild(document.createTextNode(text)); 289c275 < var item = document.createElement( "li" ); --- > var item = document.createElement("li"); 291c277 < if ( id ) item.id = id; --- > if (id) item.id = id; 293,294c279,280 < if ( accesskey ) { < link.setAttribute( "accesskey", accesskey ); --- > if (accesskey) { > link.setAttribute("accesskey", accesskey); 297,307c283,291 < if ( tooltip ) { < link.setAttribute( "title", tooltip ); < } < if ( accesskey && tooltip ) { < updateTooltipAccessKeys( new Array( link ) ); < } < < if ( nextnode && nextnode.parentNode == node ) < node.insertBefore( item, nextnode ); < else < node.appendChild( item ); // IE compatibility (?) --- > if (tooltip) > link.setAttribute("title", tooltip); > if (accesskey && tooltip) > updateTooltipAccessKeys(new Array(link)); > > if (nextnode && nextnode.parentNode == node) > node.insertBefore(item, nextnode); > else // IE compatibility (?) > node.appendChild(item); 321c305 < function akeytt( doId ) { --- > function akeytt(doId) { 325c309 < if (!window.ta) window.ta = new Array; --- > if (!window.ta) window.ta = []; 330c314 < if ( doId ) { --- > if (doId) 332c316 < } else { --- > else 334d317 < } 337c320 < var watchCheckboxExists = document.getElementById( 'wpWatchthis' ) ? true : false; --- > var watchCheckboxExists = document.getElementById('wpWatchthis') ? true : false; 347c330 < if (n.nodeName.toLowerCase() == "a") { --- > if (n.nodeName.toLowerCase() == "a") 349c332 < } else { --- > else 351d333 < } 364c346 < if (a) { --- > if (a) 366d347 < } 382c363 < if ( !start) start = 0; --- > if (!start) start = 0; 385c366 < if ( finish > inputs.length ) --- > if (finish > inputs.length) 388c369 < for ( var i = start; i < finish; i++ ) { --- > for (var i = start; i < finish; i++) { 390c371 < if ( !cb.type || cb.type.toLowerCase() != 'checkbox' ) --- > if (!cb.type || cb.type.toLowerCase() != 'checkbox') 398,401c379,385 < if ( finish < inputs.length ) { < setTimeout( function () { < addCheckboxClickHandlers(inputs, finish); < }, 200 ); --- > if (finish < inputs.length) { > setTimeout( > function () { > addCheckboxClickHandlers(inputs, finish); > }, > 200 > ); 406c390 < if (typeof e == 'undefined') { --- > if (typeof e == 'undefined') 408,409c392 < } < if ( !e.shiftKey || lastCheckbox === null ) { --- > if (!e.shiftKey || lastCheckbox === null) { 415c398 < if ( this.index < lastCheckbox ) { --- > if (this.index < lastCheckbox) { 422c405 < for (var i = start; i <= finish; ++i ) { --- > for (var i = start; i <= finish; ++i) 424d406 < } 430c412 < if (!document.getElementById) { --- > if (!document.getElementById) 432d413 < } 438c419 < if (!document.getElementById) { --- > if (!document.getElementById) 440d420 < } 451c431 < function getElementsByClassName(oElm, strTagName, oClassNames){ --- > function getElementsByClassName(oElm, strTagName, oClassNames) { 453,456c433,436 < var arrReturnElements = new Array(); < var arrRegExpClassNames = new Array(); < if(typeof oClassNames == "object"){ < for(var i=0; i<oClassNames.length; i++){ --- > var arrReturnElements = []; > var arrRegExpClassNames = []; > if (typeof oClassNames == "object") { > for (var i = 0, n = oClassNames.length; i < n; i++) { 460,461c440 < } < else{ --- > } else { 465,471c444,448 < var oElement; < var bMatchesAll; < for(var j=0; j<arrElements.length; j++){ < oElement = arrElements[j]; < bMatchesAll = true; < for(var k=0; k<arrRegExpClassNames.length; k++){ < if(!arrRegExpClassNames[k].test(oElement.className)){ --- > for (var j = 0, o = arrElements.length; j < o; j++) { > var oElement = arrElements[j]; > var bMatchesAll = true; > for (var k = 0, p = arrRegExpClassNames.length; k < p; k++) { > if (!arrRegExpClassNames[k].test(oElement.className)) { 476c453 < if(bMatchesAll){ --- > if (bMatchesAll) 478d454 < } 495,498c471,476 < addOnloadHook(function () { < if (window.location.hash == "") < window.location.hash = fragment; < }); --- > addOnloadHook( > function () { > if (window.location.hash == "") > window.location.hash = fragment; > } > ); 528,530c506,509 < for (var ti = 0; ti < tables.length ; ti++) { < if (!tables[ti].id) { < tables[ti].setAttribute('id','sortable_table_id_'+idnum); --- > for (var ti = 0, n = tables.length; ti < n ; ti++) { > var thisTable = tables[ti]; > if (!thisTable.id) { > thisTable.setAttribute('id','sortable_table_id_'+idnum); 533c512 < ts_makeSortable(tables[ti]); --- > ts_makeSortable(thisTable); 538d516 < var firstRow; 540,544c518,521 < if (table.tHead && table.tHead.rows.length > 0) { < firstRow = table.tHead.rows[table.tHead.rows.length-1]; < } else { < firstRow = table.rows[0]; < } --- > if (table.tHead && table.tHead.rows.length > 0) > var firstRow = table.tHead.rows[table.tHead.rows.length-1]; > else > var firstRow = table.rows[0]; 549c526 < for (var i = 0; i < firstRow.cells.length; i++) { --- > for (var i = 0, n = firstRow.cells.length; i < n; i++) { 551,552c528,533 < if ((" "+cell.className+" ").indexOf(" unsortable ") == -1) { < cell.innerHTML += ' <a href="#" class="sortheader" onclick="ts_resortTable(this);return false;"><span class="sortarrow"><img src="'+ ts_image_path + ts_image_none + '" alt="↓"/></span></a>'; --- > var cellClass = " " + cell.className + " "; > if (cellClass.indexOf(" unsortable ") == -1) { > if (cellClass.indexOf(" sortreverse ") == -1) > cell.innerHTML += ' <a href="#" class="sortheader" onclick="ts_resortTable(this);return false;"><span class="sortarrow" sortdir="up"><img src="'+ ts_image_path + ts_image_none + '" alt="Sort in ascending order."/></span></a>'; > else > cell.innerHTML += ' <a href="#" class="sortheader" onclick="ts_resortTable(this);return false;"><span class="sortarrow" sortdir="down"><img src="'+ ts_image_path + ts_image_none + '" alt="Sort in descending order."/></span></a>'; 555c536 < if (ts_alternate_row_colors) { --- > if (ts_alternate_row_colors) 557d537 < } 565d544 < var str = ""; 566a546 > var str = ""; 568,569c548 < var l = cs.length; < for (var i = 0; i < l; i++) { --- > for (var i = 0, n = cs.length; i < n; i++) { 595,596c574,575 < // Work out a type for the column < if (table.rows.length <= 1) return; --- > // Work out a type for the column. > if (table.rows.length <= 2) return; 598c577,578 < // Skip the first row if that's where the headings are --- > // Skip the first row if that's where the headings are. > // Note: the THEAD element is not supported on Wikipedia. 600a581 > // Remove leading and trailing spaces 602c583 < for (var i = rowStart; i < table.rows.length; i++) { --- > for (var i = rowStart, n = table.rows.length; i < n; i++) { 610d590 < sortfn = ts_sort_caseinsensitive; 612,620c592,602 < sortfn = ts_sort_date; < if (itm.match(/^\d\d[\/.-]\d\d[\/.-]\d\d\d\d$/)) < sortfn = ts_sort_date; < if (itm.match(/^\d\d[\/.-]\d\d[\/.-]\d\d$/)) < sortfn = ts_sort_date; < if (itm.match(/^[\u00a3$\u20ac]/)) // pound dollar euro < sortfn = ts_sort_currency; < if (itm.match(/^[\d.,]+\%?$/)) < sortfn = ts_sort_numeric; --- > var sortfn = ts_sort_date; > else if (itm.match(/^\d\d[\/.-]\d\d[\/.-]\d\d\d\d$/)) > var sortfn = ts_sort_date; > else if (itm.match(/^\d\d[\/.-]\d\d[\/.-]\d\d$/)) > var sortfn = ts_sort_date; > else if (itm.match(/^[\u00a3$\u20ac]/)) // pound dollar euro > var sortfn = ts_sort_currency; > else if (itm.match(/^[\d.,]+\%?$/)) > var sortfn = ts_sort_numeric; > else > var sortfn = ts_sort_caseinsensitive; 622c604 < var reverse = (span.getAttribute("sortdir") == 'down'); --- > var reverse = (span.getAttribute("sortdir") == "down"); 624,625c606,607 < var newRows = new Array(); < for (var j = rowStart; j < table.rows.length; j++) { --- > var newRows = []; > for (var j = rowStart, n = table.rows.length; j < n; j++) { 630c612 < newRows[newRows.length] = new Array(row, keyText, oldIndex); --- > newRows[newRows.length] = [row, keyText, oldIndex]; 635d616 < var arrowHTML; 637c618 < arrowHTML = '<img src="'+ ts_image_path + ts_image_down + '" alt="↓"/>'; --- > span.innerHTML = '<img src="' + ts_image_path + ts_image_down + '" alt="Sort in ascending order."/>'; 641c622 < arrowHTML = '<img src="'+ ts_image_path + ts_image_up + '" alt="↑"/>'; --- > span.innerHTML = '<img src="' + ts_image_path + ts_image_up + '" alt="Sort in descending order."/>'; 647,648c628,629 < for (var i = 0; i < newRows.length; i++) { < if ((" "+newRows[i][0].className+" ").indexOf(" sortbottom ") == -1) --- > for (var i = 0, n = newRows.length; i < n; i++) { > if ((" " + newRows[i][0].className + " ").indexOf(" sortbottom ") == -1) 652,653c633,634 < for (var i = 0; i < newRows.length; i++) { < if ((" "+newRows[i][0].className+" ").indexOf(" sortbottom ") != -1) --- > for (var i = 0, n = newRows.length; i < n; i++) { > if ((" " + newRows[i][0].className + " ").indexOf(" sortbottom ") != -1) 659,660c640,651 < for (var i = 0; i < spans.length; i++) { < spans[i].innerHTML = '<img src="'+ ts_image_path + ts_image_none + '" alt="↓"/>'; --- > for (var i = 0, n = spans.length; i < n; i++) { > var thisSpan = spans[i]; > if (thisSpan != span) { > var cellClass = " " + thisSpan.parentNode.parentNode.className + " "; > if (cellClass.indexOf(" sortreverse ") == -1) { > thisSpan.setAttribute("sortdir","up"); > thisSpan.innerHTML = '<img src="' + ts_image_path + ts_image_none + '" alt="Sort in ascending order."/>'; > } else { > thisSpan.setAttribute("sortdir","down"); > thisSpan.innerHTML = '<img src="' + ts_image_path + ts_image_none + '" alt="Sort in descending order."/>'; > } > } 662d652 < span.innerHTML = arrowHTML; 687c677 < if (ts_europeandate == false) { --- > if (ts_europeandate == false) 689c679 < } else { --- > else 691d680 < } 694c683 < if (parseInt(yr) < 50) { --- > if (parseInt(yr) < 50) 696c685 < } else { --- > else 698,699c687 < } < if (ts_europeandate == true) { --- > if (ts_europeandate == true) 701c689 < } else { --- > else 703d690 < } 746c733 < for (var i = 0; i < tableBodies.length; i++) { --- > for (var i = 0, n = tableBodies.length; i < n; i++) { 751c738 < for (var j = 0; j < tableRows.length; j++) { --- > for (var j = 0, o = tableRows.length; j < o; j++) { 755,757c742,745 < for (var k = 0; k < oldClasses.length; k++) { < if (oldClasses[k] != "" && oldClasses[k] != "even" && oldClasses[k] != "odd") < newClassName += oldClasses[k] + " "; --- > for (var k = 0, p = oldClasses.length; k < p; k++) { > var thisClass = oldClasses[k]; > if (thisClass != "" && thisClass != "even" && thisClass != "odd") > newClassName += thisClass + " "; 766a755 > 778,779c767,768 < function jsMsg( message, className ) { < if ( !document.getElementById ) { --- > function jsMsg(message, className) { > if (!document.getElementById) 781c770 < } --- > 785,789c774,777 < var messageDiv = document.getElementById( 'mw-js-message' ); < if ( !messageDiv ) { < messageDiv = document.createElement( 'div' ); < if ( document.getElementById( 'column-content' ) < && document.getElementById( 'content' ) ) { --- > var messageDiv = document.getElementById('mw-js-message'); > if (!messageDiv) { > messageDiv = document.createElement('div'); > if (document.getElementById('column-content') && document.getElementById('content')) { 791,796c779,781 < document.getElementById( 'content' ).insertBefore( < messageDiv, < document.getElementById( 'content' ).firstChild < ); < } else if ( document.getElementById('content') < && document.getElementById( 'article' ) ) { --- > var tempElement = document.getElementById('content'); > tempElement.insertBefore(messageDiv, tempElement.firstChild); > } else if (document.getElementById('content') && document.getElementById('article')) { 798,802c783,785 < document.getElementById( 'article').insertBefore( < messageDiv, < document.getElementById( 'article' ).firstChild < ); < } else { --- > var tempElement = document.getElementById('article'); > tempElement.insertBefore(messageDiv,tempElement.firstChild); > } else 804d786 < } 807,810c789,791 < messageDiv.setAttribute( 'id', 'mw-js-message' ); < if( className ) { < messageDiv.setAttribute( 'class', 'mw-js-message-'+className ); < } --- > messageDiv.setAttribute('id', 'mw-js-message'); > if (className) > messageDiv.setAttribute('class', 'mw-js-message-' + className); 815c796 < messageDiv.appendChild (message); // Append new content --- > messageDiv.appendChild(message); // Append new content 817c798 < else { --- > else 819d799 < } 829,830c809,810 < function injectSpinner( element, id ) { < var spinner = document.createElement( "img" ); --- > function injectSpinner(element, id) { > var spinner = document.createElement("img"); 834,838c814,817 < if( element.nextSibling ) { < element.parentNode.insertBefore( spinner, element.nextSibling ); < } else { < element.parentNode.appendChild( spinner ); < } --- > if (element.nextSibling) > element.parentNode.insertBefore(spinner, element.nextSibling); > else > element.parentNode.appendChild(spinner); 846,850c825,828 < function removeSpinner( id ) { < var spinner = document.getElementById( "mw-spinner-" + id ); < if( spinner ) { < spinner.parentNode.removeChild( spinner ); < } --- > function removeSpinner(id) { > var spinner = document.getElementById("mw-spinner-" + id); > if (spinner) > spinner.parentNode.removeChild(spinner); 855c833 < if (doneOnloadHook || !(document.getElementById && document.getElementsByTagName)) { --- > if (doneOnloadHook || !(document.getElementById && document.getElementsByTagName)) 857d834 < } 863,864c840,841 < updateTooltipAccessKeys( null ); < akeytt( null ); --- > updateTooltipAccessKeys(null); > akeytt(null); 869c846 < for (var i = 0; i < onloadFuncts.length; i++) { --- > for (var i = 0, n = onloadFuncts.length; i < n; i++) 871d847 < } 881,886c857,861 < function addHandler( element, attach, handler ) { < if( window.addEventListener ) { < element.addEventListener( attach, handler, false ); < } else if( window.attachEvent ) { < element.attachEvent( 'on' + attach, handler ); < } --- > function addHandler(element, attach, handler) { > if (window.addEventListener) > element.addEventListener(attach, handler, false); > else if (window.attachEvent) > element.attachEvent('on' + attach, handler); 895,896c870,871 < function addClickHandler( element, handler ) { < addHandler( element, 'click', handler ); --- > function addClickHandler(element, handler) { > addHandler(element, 'click', handler);