MediaWiki:Common.js/Clock.js

// ============================================================ // displayTimer // ============================================================ // Add a clock to the WikiHeader // Modified from work by Patrick Westerhoff hookEvent( 'load', displayTimer ); function displayTimer { if ( typeof( timerDisplay ) !== 'undefined' && timerDisplay === false ) return; var date; if (skin == 'oasis') { var timerParent = document.getElementById( 'WikiHeader' ).getElementsByTagName( 'div' )[0]; } if (skin == 'monobook') { var timerParent = document.getElementById( 'p-personal' ).getElementsByTagName( 'ul' )[0]; } var timerLink = document.createElement( 'a' ); var timerObj = document.createElement( 'li' ); timerLink.href = '/wiki/' + wgPageName + '?action=purge'; timerLink.title = 'Purge the server cache and update the contents of this page.' timerObj.id = 'displayTimer'; timerObj.style.textTransform = 'none'; timerObj.style.fontWeight = 'bold'; timerObj.style.fontSize = '100%'; timerObj.appendChild( timerLink ); timerParent.insertBefore( timerObj, timerParent.firstChild ); if (skin == 'oasis') { $('#displayTimer').css({'position': "inherit", 'right': "0px", 'top': "-28px"}); } var month = new Array(12); month[0] = "Jan"; month[1] = "Feb"; month[2] = "Mar"; month[3] = "Apr"; month[4] = "May"; month[5] = "Jun"; month[6] = "Jul"; month[7] = "Aug"; month[8] = "Sep"; month[9] = "Oct"; month[10] = "Nov"; month[11] = "Dec"; function actualizeUTC { timerDate = new Date; timerLink.innerHTML = ( timerDate.getUTCDate < 10 ? '0' : '' ) + timerDate.getUTCDate + ' ' + ( timerDate.getUTCMonth < 10 ?  :  ) + month[timerDate.getUTCMonth] + ' ' + ( timerDate.getUTCFullYear < 10 ? '0' : '' ) + timerDate.getUTCFullYear + ' ' + ( timerDate.getUTCHours < 10 ? '0' : '' ) + timerDate.getUTCHours + ':' + ( timerDate.getUTCMinutes < 10 ? '0' : '' ) + timerDate.getUTCMinutes + ' (UTC)'; } function actualizeCustom { timerDate = new Date; timerDate.setMinutes( timerDate.getMinutes + timerDate.getTimezoneOffset + timerTimezone * 60 ); timerLink.innerHTML = ( timerDate.getDate < 10 ? '0' : '' ) + timerDate.getDate + ' ' + ( timerDate.getMonth < 10 ?  :  ) + month[timerDate.getMonth] + ' ' + ( timerDate.getFullYear < 10 ? '0' : '' ) + timerDate.getFullYear + ' ' + ( timerDate.getHours < 10 ? '0' : '' ) + timerDate.getHours + ':' + ( timerDate.getMinutes < 10 ? '0' : '' ) + timerDate.getMinutes + ' (UTC' + ( timerTimezone < 0 ? '' : '+' ) + timerTimezone + ')'; } // start if ( typeof( timerTimezone ) !== 'number' ) { actualizeUTC; setInterval( actualizeUTC, 60000 ); } else { actualizeCustom; setInterval( actualizeCustom, 60000 ); } }