MediaWiki:Common.js
Jump to navigation
Jump to search
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
/* Any JavaScript here will be loaded for all users on every page load. */ if(wgAction == 'edit' || wgAction == 'submit') { function mwInsertEditButton(parent, item) { var image = document.createElement('img'); image.width = item.width || 23; image.height = 22; image.className = 'mw-toolbar-editbutton'; if (item.imageId) { image.id = item.imageId; } image.src = item.imageFile; image.border = 0; image.alt = item.speedTip; image.title = item.speedTip; image.style.cursor = 'pointer'; image.onclick = function() { insertTags(item.tagOpen, item.tagClose, item.sampleText); // click tracking if ((typeof $j != 'undefined') && (typeof $j.trackAction != 'undefined')) { $j.trackAction('oldedit.' + item.speedTip.replace(/ /g, "-")); } return false; }; parent.appendChild(image); return true; } mwCustomEditButtons.push({ "width": 51, "imageFile": "images/f/fb/Button_creation.png", "speedTip": "Creation", "tagOpen": "{{Creation\n" + "| title = ", "tagClose": "\n" + "| image = \n" + "| caption = \n" + "| server = \n" + "| map revision = \n" + "| warp = \n" + "| coordinates = \n" + "| lead = \n" + "| contributors = \n" + "| started = \n" + "| completed = \n" + "}}", "sampleText": "" }); mwCustomEditButtons.push({ "width": 32, "imageFile": "images/2/29/Button_user.png", "speedTip": "User", "tagOpen": "{{User\n" + "| username = ", "tagClose": "\n" + "| image = \n" + "| caption = \n" + "| favorite server = \n" + "| authority = \n" + "| joined = \n" + "| left = \n" + "| creative banned = \n" + "| survival banned = \n" + "| chaos banned = \n" + "}}", "sampleText": "" }); mwCustomEditButtons.push({ "width": 75, "imageFile": "images/8/8d/Button_more_needed.png", "speedTip": "More needed", "tagOpen": "{{More needed}}", "tagClose": "", "sampleText": "" }); } /** Collapsible tables ********************************************************* * * Description: Allows tables to be collapsed, showing only the header. See * Wikipedia:NavFrame. * Maintainers: wikipedia:User:R. Koot */ var autoCollapse = 2; var collapseCaption = "hide"; var expandCaption = "show"; function collapseTable( tableIndex ) { var Button = document.getElementById( "collapseButton" + tableIndex ); var Table = document.getElementById( "collapsibleTable" + tableIndex ); if ( !Table || !Button ) { return false; } var Rows = Table.rows; if ( Button.firstChild.data == collapseCaption ) { for ( var i = 1; i < Rows.length; i++ ) { Rows[i].style.display = "none"; } Button.firstChild.data = expandCaption; } else { for ( var i = 1; i < Rows.length; i++ ) { Rows[i].style.display = Rows[0].style.display; } Button.firstChild.data = collapseCaption; } } function createCollapseButtons() { var tableIndex = 0; var NavigationBoxes = new Object(); var Tables = document.getElementsByTagName( "table" ); for ( var i = 0; i < Tables.length; i++ ) { if ( hasClass( Tables[i], "collapsible" ) ) { /* only add button and increment count if there is a header row to work with */ var HeaderRow = Tables[i].getElementsByTagName( "tr" )[0]; if (!HeaderRow) continue; var Header = HeaderRow.getElementsByTagName( "th" )[0]; if (!Header) continue; NavigationBoxes[ tableIndex ] = Tables[i]; Tables[i].setAttribute( "id", "collapsibleTable" + tableIndex ); var Button = document.createElement( "span" ); var ButtonLink = document.createElement( "a" ); var ButtonText = document.createTextNode( collapseCaption ); Button.style.styleFloat = "right"; Button.style.cssFloat = "right"; Button.style.fontWeight = "normal"; Button.style.textAlign = "right"; Button.style.width = "6em"; ButtonLink.style.color = Header.style.color; ButtonLink.setAttribute( "id", "collapseButton" + tableIndex ); ButtonLink.setAttribute( "href", "javascript:collapseTable(" + tableIndex + ");" ); ButtonLink.appendChild( ButtonText ); Button.appendChild( document.createTextNode( "[" ) ); Button.appendChild( ButtonLink ); Button.appendChild( document.createTextNode( "]" ) ); Header.insertBefore( Button, Header.childNodes[0] ); tableIndex++; } } for ( var i = 0; i < tableIndex; i++ ) { if ( hasClass( NavigationBoxes[i], "collapsed" ) || ( tableIndex >= autoCollapse && hasClass( NavigationBoxes[i], "autocollapse" ) ) ) { collapseTable( i ); } } } addOnloadHook( createCollapseButtons );