MediaWiki:Guidedtour-tour-CitationsStudent.js
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.
// Guided Tour for learning wikicode by making a series of edits in a user sandbox, as an interactive interlude in Wikipedia:Training/For_students // see also Guidedtour-tour-BeBoldStudent.js ( function ( window, document, $, mw, gt ) { //automatic api:edit function to send yourself messages function sendMessage( targetPage, msgPage, linkTo ) { var api = new mw.Api(); api.get( { 'action' : 'query', 'titles' : msgPage, 'prop' : 'revisions', 'meta' : 'tokens', 'type' : 'csrf', 'rvprop' : 'content', 'indexpageids' : 1 } ).done( function (result) { result = result.query; var page = result.pages[result.pageids[0]]; var text = page.revisions[0]['*']; api.post( { 'action' : 'edit', 'title' : targetPage, 'appendtext' : "\n" + text, 'summary' : 'automatic post as part of the sandbox guided tour', 'token' : result.tokens.csrftoken } ).done( function () { window.location.href = linkTo; } ); } ); } // Fail gracefully post-save but not postedit var postEditButtons = []; if ( mw.config.get( 'wgAction' ) === 'view' && !gt.isPostEdit() ) { postEditButtons.push( { name: 'Click here to go back and make an edit', onclick: function() { window.location.href = new mw.Uri().extend( { action: 'edit' } ).toString(); } } ); } // Fail gracefully post-save but not postedit for visual editor var postEditButtonsVisual = []; if ( mw.config.get( 'wgAction' ) === 'view' && !gt.isPostEdit() ) { postEditButtonsVisual.push( { name: 'Go Back', onclick: function() { window.location.href = window.location.href + "&veaction=edit"; } } ); } gt.defineTour( { name: 'CitationsStudent', shouldLog: true, steps: [ { //1 title: 'Now let\'s try citations.', description: '', onShow: gt.getPageAsDescription, overlay: true, closeOnClickOutside: false, buttons: [ { name: 'Go to your sandbox', onclick: function() { if(!mw.config.get('wgUserName')){ alert( "Please login." ); return; } sendMessage( 'User:' + mw.config.get( 'wgUserName' ) + '/citations', 'Project:Training/tour/citations_preload' , mw.util.getUrl( 'Special:MyPage/citations' ) + '?tour=CitationsStudent&step=2'); } } ], allowAutomaticOkay: false }, { //2 title: '[citation needed]', description: 'Project:Training/tour/citations2', onShow: gt.getPageAsDescription, attachTo: '#content.mw-body', position: 'bottom', overlay: false, closeOnClickOutside: false, buttons: [ { name: '<small>←</small>', action: 'externalLink', url: mw.util.getUrl( 'Project:Training/For_students/Citing_sources' ) + '?tour=CitationsStudent&step=1' } , { name: 'Okay!', action: 'next', } ], allowAutomaticOkay: false }, { //3 title: 'Click Edit Source', description: '', attachTo: '#ca-edit', position: 'bottom', onShow: gt.getPageAsDescription, overlay: false, closeOnClickOutside: false, allowAutomaticOkay: false, buttons: [ { name: '<small>←</small>', action: 'externalLink', url: mw.util.getUrl( 'Special:MyPage/citations' ) + '?tour=CitationsStudent&step=2' } ], shouldSkip: function() { return gt.hasQuery( { action: 'edit' } ); } }, { //4 title: 'Inserting a reference', description: 'Project:Training/tour/citations4', onShow: gt.getPageAsDescription, attachTo: '#wpTextbox1', position: 'bottomLeft', overlay: false, closeOnClickOutside: false, buttons: [ { name: '<small>←</small>', action: 'externalLink', url: mw.util.getUrl( 'Special:MyPage/citations' ) + '?tour=CitationsStudent&step=3' } , { name: 'I added the citation.', action: 'next', } ], allowAutomaticOkay: false }, { //5 title: 'Displaying references', description: 'Project:Training/tour/citations5', onShow: gt.getPageAsDescription, attachTo: '#wpTextbox1', position: 'bottomLeft', overlay: false, closeOnClickOutside: false, buttons: [ { name: '<small>←</small>', action: 'externalLink', url: mw.util.getUrl( 'Special:MyPage/citations' ) + '?tour=CitationsStudent&step=4&action=edit' } , { name: 'I added the References section.', action: 'next', } ], allowAutomaticOkay: false }, { //6 title: 'Add an edit summary, and Save', description: '', attachTo: '#wpSave', position: 'bottom', autoFocus: 'yes', onShow: gt.getPageAsDescription, overlay: false, closeOnClickOutside: false, allowAutomaticOkay: false, buttons: [ { name: '<small>←</small>', action: 'externalLink', url: mw.util.getUrl( 'Special:MyPage/citations' ) + '?tour=CitationsStudent&step=5&action=edit' } ], shouldSkip: function() { return gt.isPostEdit(); }, buttons: postEditButtons } , { //7 title: 'Did it work?', description: 'Project:Training/tour/citations7', onShow: gt.getPageAsDescription, overlay: false, attachTo: '#content.mw-body', position: 'bottom', closeOnClickOutside: false, allowAutomaticOkay: false, buttons: [ { name: '<small>←</small> I want to try again.', action: 'externalLink', url: mw.util.getUrl( 'Special:MyPage/citations' ) + '?tour=CitationsStudent&step=4&action=edit' } , { name: 'It worked!', action: 'externalLink', url: mw.util.getUrl( 'Project:Training/For_students/Citing_sources_2') + '?tour=CitationsStudent&step=8' } ], allowAutomaticOkay: false } , { //8 title: 'Nice work!', description: 'Project:Training/tour/citations8', onShow: gt.getPageAsDescription, overlay: false, closeOnClickOutside: false, buttons: [ { name: 'Bye for now!', action: 'end' } ], allowAutomaticOkay: false }] } ); } (window, document, jQuery, mediaWiki, mediaWiki.guidedTour ) ) ;