MediaWiki:Guidedtour-tour-wwiiarchtour.js: Difference between revisions

From WWII Archives

No edit summary
No edit summary
Line 36: Line 36:
*/
*/
name: 'letsgetstarted',
name: 'letsgetstarted',
titlemsg: 'Let\'s get started!',
title: 'Let\'s get started!',
descriptionmsg: 'If you click on the x in the corner, you will be exited out of the tour, and to get back in you would have to restart the tour by refreshing',
description: 'If you click on the x in the corner, you will be exited out of the tour, and to get back in you would have to restart the tour by refreshing',
// attachment
// attachment
attachTo: '#n-portal a',
attachTo: '#n-portal a',
Line 47: Line 47:
tour.step( {
tour.step( {
name: 'descriptionwikitext',
name: 'descriptionwikitext',
titlemsg: 'guidedtour-tour-test-mediawiki-parse',
title: 'guidedtour-tour-test-mediawiki-parse',
// This deliberately does not use descriptionmsg in order to demonstrate
// This deliberately does not use descriptionmsg in order to demonstrate
// API-based parsing as used by some on-wiki tours.
// API-based parsing as used by some on-wiki tours.

Revision as of 15:44, 8 February 2024

/*
 * Guided Tour to test guided tour features.
 */
( function ( gt ) {
	// XXX (mattflaschen, 2012-01-02): See GuidedTourHooks.php
	var tour, launchTourButtons,
		pageName = mw.config.get( 'wgGuidedTourHelpGuiderUrl' );

	// Should match shouldShowForPage from firstedit.js
	function shouldShowFirstEdit() {
		return ( mw.config.get( 'wgCanonicalNamespace' ) === '' && mw.config.get( 'wgIsProbablyEditable' ) );
	}

	tour = new gt.TourBuilder( {
		/*
		 * This is the name of the tour.  It must be lowercase, without any hyphen (-) or
		 * period (.) characters.
		 *
		 * If this is an on-wiki tour, it should match the MediaWiki page.  For instance,
		 * if this were on-wiki, it would be MediaWiki:Guidedtour-tour-test.js
		 */
		name: 'wwiiarchtour'
	} );

	tour.firstStep( {
		name: 'firstmsg',
		title: 'Welcome to the WWII Archives!',
		description: 'Here you will be able to contribute to writing the most detailed articles on any subject from the WWII era. You will be able to digitize documents, interview survivors and vets, among other things. On this tour we will show you how to easily contribute and use the site.',
		overlay: true
	} )
		.next( 'letsgetstarted' );

	tour.step( {
		/*
		 * Callout of left menu
		 */
		name: 'letsgetstarted',
		title: 'Let\'s get started!',
		description: 'If you click on the x in the corner, you will be exited out of the tour, and to get back in you would have to restart the tour by refreshing',
		// attachment
		attachTo: '#n-portal a',
		position: '3'
	} )
		.next( 'descriptionwikitext' )
		.back( 'overlay' );

	tour.step( {
		name: 'descriptionwikitext',
		title: 'guidedtour-tour-test-mediawiki-parse',
		// This deliberately does not use descriptionmsg in order to demonstrate
		// API-based parsing as used by some on-wiki tours.
		// Normal Extension tours should use descriptionmsg.
		description: new gt.WikitextDescription( mw.message( 'guidedtour-tour-test-wikitext-description' ).plain() ),
		attachTo: '#searchInput',
		// try descriptive position (5'oclock) and use skin-specific value
		position: {
			fallback: 'bottomRight',
			monobook: 'right'
		}
	} )
		.next( pageName ? 'descriptionpage' : 'launchtour' )
		.back( 'callout' );

	if ( pageName ) {
		tour.step( {
			/*
			 * Test out mediawiki description pages
			 */
			name: 'descriptionpage',
			titlemsg: 'guidedtour-tour-test-description-page',
			description: new mw.Title( pageName ),

			overlay: true,

			buttons: [ {
				action: 'wikiLink',
				page: pageName,
				namemsg: 'guidedtour-tour-test-go-description-page',
				type: 'progressive'
			} ]
		} )
			.next( 'launchtour' )
			.back( 'descriptionwikitext' );
	}

	launchTourButtons = [ {
		action: 'end'
	} ];

	if ( shouldShowFirstEdit() ) {
		launchTourButtons.unshift( {
			namemsg: 'guidedtour-tour-test-launch-editing',
			onclick: function () {
				gt.endTour();
				gt.launchTour( 'firstedit' );
			}
		} );
	}

	/*
	 * Test out tour launching
	 */
	tour.step( {
		name: 'launchtour',
		titlemsg: 'guidedtour-tour-test-launch-tour',
		descriptionmsg: 'guidedtour-tour-test-launch-tour-description',

		// attachment
		overlay: true,

		buttons: launchTourButtons
	} )
		.back( pageName ? 'descriptionpage' : 'descriptionwikitext' );
}( mw.guidedTour ) );