MediaWiki:Guidedtour-tour-wikimooc11d.js

Note : après avoir enregistré la page, vous devrez forcer le rechargement complet du cache de votre navigateur pour voir les changements.

Mozilla / Firefox / Konqueror / Safari : maintenez la touche Majuscule (Shift) en cliquant sur le bouton Actualiser (Reload) ou pressez Maj-Ctrl-R (Cmd-R sur Apple Mac) ;

Chrome / Internet Explorer / Opera : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5.
/*
* Guidedtour #1 du WikiMOOC
* Premiers pas sur Wikipédia
*
* Voir [[:mw:Extension:GuidedTour]] pour plus d'informations
*
* Auteur : [[User:0x010C]]
* Création : 20 octobre 2016
* Dernière révision : 10 mai 2021
* [[Catégorie:Guided tour]]
*/
//<nowiki>

( function ( window, document, $, mw, gt ) {
	var tour;

	tour = new gt.TourBuilder( {
		name: 'wikimooc11d',
		shouldLog: false
	} );

	// 1
	tour.firstStep( {
		name: 'bienvenue',
		title: 'Bienvenue ! (1/6)',
		description: new mw.Title( 'Projet:WikiMOOC/2017/GT/1.1/D/1' ),
		overlay: true,
		closeOnClickOutside: false,
	} )
	.next( 'presentationgt' )
	.transition( function() {
		cookie_info = JSON.parse( $.cookie( 'frwiki-mw-tour' ) );
		if ( cookie_info !== null ) {
			if ( cookie_info.tours.wikimooc11d !== undefined )
			{
				if ( cookie_info.tours.wikimooc11d.step === 'seconnecter' || cookie_info.tours.wikimooc11d.step === 'creeruncompte' ) {
					return "lierfun";
				}
				else if ( cookie_info.tours.wikimooc11d.step !== 'bienvenue' ) {
					return cookie_info.tours.wikimooc11d.step;
				}
			}
		}
	} );

	// 2
	tour.step( {
		name: 'presentationgt',
		title: 'Suivre les tutoriels (2/6)',
		description: new mw.Title( 'Projet:WikiMOOC/2017/GT/1.1/D/2' ),
		overlay: true,
		closeOnClickOutside: false,
	} )
	.back( 'bienvenue' )
	.next( function() {
		// Si l'apprenant n'est pas connecté
		if ( mw.user.getId() === 0 ) {
			return 'questioncompte';
		}
		// S'il est connecté
		return 'dejaconnecte';
	} );

	// 3
	tour.step( {
		name: 'questioncompte',
		title: 'Avez-vous un compte ? (3/6)',
		description: new mw.Title( 'Projet:WikiMOOC/2017/GT/1.1/D/3' ),
		overlay: true,
		closeOnClickOutside: false,
		buttons: [ {
			name: '<span class="guidedtour-back-button"><span aria-label="Retour" class="guider_button_icon"></span></span>',
			action: 'externalLink',
			onclick: function() {
				gt.resumeTour( 'wikimooc11d', 'presentationgt' );
			},  
		}, {
			name: 'J\'ai déjà un compte',
			action: 'externalLink',
			onclick: function() {
				gt.resumeTour( 'wikimooc11d', 'seconnecter' );
			},  
		},{
			name: 'Je veux créer un compte',
			action: 'externalLink',
			type: 'progressive',
			onclick: function() {
				gt.resumeTour( 'wikimooc11d', 'creeruncompte' );
			},  
		} ],
		allowAutomaticOkay: false,
		width: 500,
	} );

	// 4
	tour.step( {
		name: 'dejaconnecte',
		title: 'Vous êtes déjà connecté (3/6)',
		description: new mw.Title( 'Projet:WikiMOOC/2017/GT/1.1/D/4' ),
		overlay: true,
		closeOnClickOutside: false,
		buttons: [ {
			name: '<span class="guidedtour-back-button"><span aria-label="Retour" class="guider_button_icon"></span></span>',
			action: 'externalLink',
			onclick: function() {
				gt.resumeTour( 'wikimooc11d', 'presentationgt' );
			},  
		}, {
			name: 'Créer un autre compte',
			action: 'externalLink',
			onclick: function() {
				window.location.href = mw.util.getUrl( 'Spécial:Déconnexion' ) + '?returnto=Wikipédia:Accueil_principal';
			},
		}, {
			name: 'Utiliser ce compte',
			action: 'externalLink',
			type: 'progressive',
			onclick: function() {
				gt.resumeTour( 'wikimooc11d', 'lierfun' );
			},
		} ],
		allowAutomaticOkay: false,
		width: 500,
	} )
	.transition( function() {
		// Si l'apprenant n'est pas connecté
		if ( mw.user.getId() === 0 ) {
			return 'creeruncompte';
		}
	} );

	// 5
	tour.step( {
		name: 'seconnecter',
		title: 'Se connecter (4/6)',
		description: new mw.Title( 'Projet:WikiMOOC/2017/GT/1.1/D/5' ),
		attachTo: '#pt-login',
		position: 'bottomLeft',
		autoFocus: true,
		closeOnClickOutside: false,
	} )
	.transition( function() {
		// Si l'apprenant s'est connecté entre temps
		if ( mw.user.getId() !== 0 ) {
			return 'lierfun';
		}
	} )
	.back( 'questioncompte' );

	// 6
	tour.step( {
		name: 'creeruncompte',
		title: 'Créer un compte (4/6)',
		description: new mw.Title( 'Projet:WikiMOOC/2017/GT/1.1/D/6' ),
		attachTo: '#pt-createaccount',
		position: 'bottomLeft',
		autoFocus: true,
		closeOnClickOutside: false,
	} )
	.transition( function() {
		// Si l'apprenant s'est connecté entre temps
		if ( mw.user.getId() !== 0 ) {
			return 'lierfun';
		}
	} )
	.back( 'questioncompte' );

	// 7	
	tour.step( {
		name: 'lierfun',
		title: 'Lier votre compte plateforme MOOC (5/6)',
		description: '<br/>Pour pouvoir réaliser les évaluations plus tard dans le cours, nous avons besoin de connaître quel nom d\'utilisateur sur la plateforme MOOC de Wikimédia France correspond à votre nom d\'utilisateur Wikipédia.<br/><br/>Pour trouver votre nom d\'utilisateur sur la plateforme MOOC Wikimédia France : depuis la plateforme, cliquez sur la flèche noire en haut à droite de la fenêtre à côté de votre nom, puis cliquez sur « Compte ». Le premier champ qui s\'affiche indique votre « Nom d\'utilisateur ». Collez-le ci-dessous."<br/><br/><center><div id="wikimooc-pseudo-fun-container"><img src="//upload.wikimedia.org/wikipedia/commons/f/f8/Ajax-loader(2).gif" /></div></center>',
		attachTo: '.mw-input:nth-of-type(1)',
		position: 'right',
		autoFocus: true,
		overlay: true,
		onShow: function() {
			mw.loader.using( 'oojs-ui-core' ).done( function() {
				var textInput = new OO.ui.TextInputWidget( { 
				  placeholder: 'Votre pseudo sur la plateforme MOOC Wikimédia France',
				  id: 'wikimooc-pseudo-fun'
				} );
				$( '#wikimooc-pseudo-fun-container' ).html( textInput.$element );
			} );
		},
		closeOnClickOutside: false,
		buttons: [ {
			name: 'Lier',
			action: 'externalLink',
			type: 'progressive',
			onclick: function() {
				if ( $( '#wikimooc-pseudo-fun input' ).val() !== '' )
				{
					var api = new mw.Api();
					api.postWithToken( 'csrf', {
						action: 'edit',
						title: 'Projet:WikiMOOC/2021/Correspondances WP-WMFr',
						summary: 'Correspondance entre mon compte Wikipédia et mon compte MOOC',
						tags: 'wikimooc2021',
						appendtext: '\n{{Projet:MOOC/2017/Lien|' + mw.config.get( 'wgUserName' ) + '|' + $( '#wikimooc-pseudo-fun input' ).val() + '}}',
						format: 'json',
					} );
					gt.resumeTour( 'wikimooc11d', 'fin' );
				}
				else
				{
					mw.notify( 'Il faut obligatoirement indiquer le pseudonyme que vous utilisez sur la plateforme MOOC de Wikimédia France.', { title: 'Attention', type: 'error' } );
				}
			},
		} ],
		allowAutomaticOkay: false,
		} );

	// 8	
	tour.step( {
		name: 'fin',
		title: 'Fin du tutoriel (6/6)',
		description: new mw.Title( 'Projet:WikiMOOC/2017/GT/1.1/D/8' ),
		attachTo: '.mw-input:nth-of-type(2)',
		position: 'right',
		autoFocus: true,
		overlay: true,
		closeOnClickOutside: false,
		buttons: [ {
			// This makes the okay button on this step end the tour.
			action: 'end'
		} ],
		allowAutomaticOkay: false,
	} );
	
	//Ajout d'un bouton en bas à droite pour permettre de réafficher une étape accidentellement fermé
	mw.loader.using( [ 'oojs-ui' ], function() {
		var reloadButton = new OO.ui.ButtonWidget( {
			label: 'Réafficher l\'étape courante',
			icon: 'redo',
			title: 'Réafficher'
		} );
		reloadButton.on( 'click', function() {
			gt.launchTourFromUserState();
		} );
		var container = $( '<div>' );
		container.append( reloadButton.$element[ 0 ] );
		container.css( 'position', 'fixed' ).css( 'bottom', '0px' ).css( 'right', '0px' ).css( 'z-index', '3000' ).appendTo( 'body' );
	} );

} ( window, document, jQuery, mediaWiki, mediaWiki.guidedTour ) );

//</nowiki>