Utilisateur:Lea/mw-appendafter

De Lea Linux
Aller à la navigation Aller à la recherche

Usage

Copier le script dans $MEDIAWIKI_ROOT/maintenance/, modifier un peut le script, par exemple pour lui donner un nom d'utilisateur adapté, etc ... Puis, cd $MEDIAWIKI_ROOT/maintenance/ php <nom du script> <chemin relatif vers le fichier>.wiki pour insérer la page en fin de la page portant le nom du fichier (sans l'extension).

Code

  1. !/usr/bin/php

<?

define("MW_PATH", "../") ; $working_dir = getcwd() ; chdir(MW_PATH) ;

define("MEDIAWIKI", true) ; require_once( 'includes/Defines.php' ); require_once ("./LocalSettings.php") ; require_once ("includes/Setup.php") ;

$wgUser = User::newFromName( "PingouinMigrateur" ) ; if (!$wgUser->isAllowed("edit")) { echo "PingouinMigrateur can't edit\n" ; exit ; }

for($i = 1 ; $i < $argc ; $i++) { $filename = $argv[$i] ;

// le titre sera le nom du fichier sans l'extension $wgTitle = Title::newFromText(utf8_encode(preg_replace("~(.*/)?(.+)\.\w+$~","$2", $filename))) ; $article = new Article($wgTitle) ; $rev = Revision::newFromTitle( $wgTitle ); $oldtext = $rev->getText(); echo "Fichier [$filename] : " ; $wgMyText = $oldtext."\n\n".join("",file("$working_dir/$filename")) ; $article->updateArticle($wgMyText, utf8_encode("conversion de la documentation originale de Léa par HTML::WikiConverter"), false, false) ; echo " [done]\n" ; } foreach ( $wgDeferredUpdateList as $key => $up ) { $up->doUpdate(); } $wgLoadBalancer->commitAll(); $wgLoadBalancer->closeAll();

?>

Tête de GNU Vous avez l'autorisation de copier, distribuer et/ou modifier ce document suivant les termes de la Licence Publique Générale du projet GNU, Version 2 ou n'importe quelle version ultérieure publiée par la Free Software Foundation. Pour plus d'informations consulter la GPL sur le site de GNU ou sa traduction non officielle.