Lors de la modification/déplacement/suppression de pages ou du blocage/déblocage d'utilisateurs, je voudrais que le champ de résumé dans chaque page effectuant une des fonctions ci-dessus soit obligatoire, afin que les motifs derrière l'une des actions puissent être connus plus facilement.
Réponses
Trop de publicités?C'est bien connu que cela décourage beaucoup de contributions, mais vous pouvez le renforcer via un JavaScript personnalisé ou le forcer en définissant forceeditsummary
sur true dans $wgDefaultUserOptions
:
// dans LocalSettings.php:
$wgDefaultUserOptions = [
'forceeditsummary' => 1
];
Avec cette option activée, après avoir cliqué sur Save page sans résumé, vous devez cliquer à nouveau sur Save page pour enregistrer la modification. Un rappel pour remplir le résumé de l'édition s'affiche en haut de la page, mais la deuxième sauvegarde se fait quand même.
Comme je l'ai dit plus haut, l'expérience montre que de nombreuses modifications sont perdues avec ce paramètre. Si vous pensez que les gens oublient de sauvegarder deux fois, plutôt que de simplement refuser de remplir les résumés d'édition, vous pouvez utiliser des feuilles de style MediaWiki pour rendre l'avertissement plus visible, avec quelque chose de voyant comme
#mw-missingsummary {
background-color: #FFFFCC;
color: #000000;
border: 3px double #CC0000;
margin: 0 0 1em;
padding: 0.5em 1em;
}
Notez que les paramètres par défaut sont utilisés pour les utilisateurs non enregistrés et les utilisateurs qui n'ont pas personnalisé leurs préférences uniquement. Les utilisateurs enregistrés sont autorisés à remplacer la valeur à tout moment : Préférences → Édition → Me demander quand je n'entre pas de résumé d'édition.
J'ai simplement implémenté cette fonctionnalité dans un projet sur lequel je travaille. Cela fonctionne bien et s'intègre parfaitement avec toutes les fonctionnalités intégrées, allant des toutes premières versions de MediaWiki à la version actuelle de la branche master (2015-12-13).
J'ai mis ceci dans mon LocalSettings.php
:
function forceEditSummary($editor, $text, $section, &$error, $summary) {
// Remplace les réglages basés sur la variable de formulaire wpIgnoreBlankSummary,
// l'option utilisateur 'forceeditsummary' et si la page est la propre page de l'éditeur ou une page de discussion :
$editor->allowBlankSummary = false;
return true; // continuer le traitement
}
$wgHooks['EditFilter'][] = 'forceEditSummary';
Les messages MediaWiki:Missingsummary et MediaWiki:Missingcommentheader1 devraient être édités pour être true (le deuxième soumission ne passera plus).
J'ai utilisé le hook EditFilter
pour définir le membre allowBlankSummary
de l'éditeur (objet EditPage
) et ainsi remplacer les décisions précédentes quant à savoir si la modification devrait être autorisée même avec un résumé vide, ou non. Consultez le code source de la classe EditPage
pour plus de détails sur les réglages originaux.
Pour plus d'options (et un style supplémentaire mettant en valeur le message missingsummary
), lisez la réponse de Nemo.
<sup>1</sup> Où le message <code>missingcommentheader</code> est-il utilisé? Je le vois dans le code mais je ne sais pas quand <code>$editor->section == 'new'</code>. Probablement une fonctionnalité de MediaWiki que je n'utilise jamais...
Vous pourriez essayer cette extension : https://www.mediawiki.org/wiki/Extension:SummaryRequired.
Que peut faire cette extension ?
Cette extension oblige l'utilisateur à saisir un commentaire.