Insertion de la documentation utilisateur lors de l'installation
Dans le processus d'installation, il serait bon d'avoir une documentation complète insérée comme page
WikiNi. Pour le faire simplement, l'idée serait d'avoir le texte des pages d'aide dans des fichiers textes et ces fichiers textes seraient insérés dans la base lors de l'installation. Cela permettrait d'étendre facilement la documentation livré avec les versions et chaque site Wikini aurait la documentation complète.
Voila le code à modifier dans /setup/install.php :
<?php
//vers la ligne 80
...
mysql_query("insert into ".$config["table_prefix"]."pages set tag = '".$config["root_page"]."', body = '".mysql_escape_string ("Bienvenue ! Cliquez sur le lien \"Editer cette page\" au bas de la page pour démarrer.\n\nPage utiles: PagesOrphelines, PagesACreer, RechercheTexte, ReglesDeFormatage.")."', user = 'WikiNiInstaller', time = now(), latest = 'Y'", $dblink);
//insertion des pages de documentation et des pages standards
$d = dir("setup/doc/");
while ($doc = $d->read()){
if ($doc != "." && $doc != ".."){
$pagecontent = implode ('', file("setup/doc/$doc"));
$pagename = substr($doc,0,strpos($doc,'.txt'));
$sql = "insert into ".$config["table_prefix"]."pages ".
"set tag = '$pagename', ".
"body = '".mysql_escape_string($pagecontent)."', ".
"user = 'WikiNiInstaller', ".
"time = now(), ".
"latest = 'Y'";
mysql_query($sql, $dblink);
echo "Insertion de la page $pagename<br/>";
}
}
// mysql_query("insert into ".$config["table_prefix"]."pages set tag = 'DerniersChangements',....
// mysql_query("insert into ".$config["table_prefix"]."pages set tag = 'DerniersCommentaires',...
// mysql_query("insert into ".$config["table_prefix"]."pages set tag = 'ParametresUtilisateur', ....
// mysql_query("insert into ".$config["table_prefix"]."pages set tag = 'PagesACreer', ....
// mysql_query("insert into ".$config["table_prefix"]."pages set tag = 'PagesOrphelines',...
// mysql_query("insert into ".$config["table_prefix"]."pages set tag = 'RechercheTexte',....
// mysql_query("insert into ".$config["table_prefix"]."pages set tag = 'ReglesDeFormatage',....
...
?>
Il faut ensuite créer le répertoire /setup/doc/ avec les fichiers textes contenants la documentation.
--
GarfieldFr
Tout a fait d'accord pour cette solution, le système actuel étant difficile à maintenir, il me semble interressant de laisser le choix à l'administrateur (technique ? fonctionnel ?) d'installer ou pas la documentation, voire même de lui laisser choisir les pages à installer.
--
DavidDelon
Également d'accord sur le besoin de rationnaliser la gestion de la documentation à installer. C'est une bonne idée
GarfieldFr d'avoir initié le débat. Je pense qu'il faut discuter un peu plus des besoins et des solutions.
Besoins pour les développeurs de
WikiNi :
- éditer les pages de documentation à partir de WikiNi
- identifier simplement les pages faisant partie de la documentation
- générer le code, quel qu'il soit (Php, SQL, texte ou autre), nécessaire à l'installation de la documentation dans un site sous WikiNi ; l'idéal ce serait d'exporter automatiquement des pages de WikiNi vers un code automatiquement intégré au CVS
Besoins pour les "installateurs" :
- avoir une documentation sur le "minimum vital"
- choisir des modules de documentation optionnels ?
- avoir une documentation à jour
Il y a de l'idée dans ce que propose
GarfieldFr ; je pense qu'on peut aller un peu plus loin sans forcément un gros travail supplémentaire.
Je propose d'organiser la page en commençant par les besoins pour attaquer ensuite les solutions.
--
CharlesNepote
Il faut distinguer deux choses dans les pages à fournir :
Dans tous les cas, ces pages peuvent être générées grace à la méthode exposé plus haut sauf la
PagePrincipale qui nécéssite d'être codé en dur car le nom de la page principale n'est pas connu à l'avance (paramètre de configuration). Ces pages sont en fait de simple fichier texte dont le nom correspond au nom de la page de destination. Le contenus est exactement le texte que l'on écrirait si on écrivait ces page directement dans
WikiNi. J'ai testé le code présenté plus haut et l'installation se passe sans aucun problème, les pages sont bien générées.
Je pense qu'un "handler" dérivé du handler raw pourrait générer le fichier texte à partir d'une page de
WikiNi, il suffit simplement de lui rajouter la fonction de sauvegarde dans un fichier texte, ensuite l'insertion dans le CVS ne devrait pas poser de problème.
--
GarfieldFr
Voici les 2 catégories de pages :
Quelles sont vos réaction vis à vis de cette modification ? Pensez-vous qu'il faille mettre cette modification dans le CVS ? Je pense que l'on peut la mettre avec les pages actuellement incluses dans la version "stable" (wikini-0.1.1-0.3) distribuée (disponible dans le CVS TEST). On pourra ajouter la documentation au CVS au fur et à mesure des versions. --
GarfieldFr
De quelle modification parles-tu ? Celle qui est en haut ? --
PatrickPaul
Oui, je parle de la modification du fichier setup/install.php figurant en haut de cette page. --
GarfieldFr
OK, je donnerai mon avis prochainement
PatrickPaulASuivreEnPriorite
Une petite modification : la table _links qui contient la liste des liens d'une page vers une autre n'est pas mise à jour lors de l'installation. Je propose de modifier le code précédent pour insérer la liste des liens. De plus, la page principale peut ne pas être codée en "dur" dans une requête, il suffit pour cela d'avoir un fichier de documentation avec un nom précis. (
Source de install.php)
Avez-vous testé ? Que pensez-vous de cette modification ? Je l'ai testé plusieurs fois sans avoir aucun problème et la liste des fichiers de documentation inclus l'ensemble des pages décrivant les actions diponibles présente sur ce site (en supprimant les commentaire inutile). Il serait quasiment impossible de faire cela avec des pages codées en dure dans l'installation. --
GarfieldFr
Je n'ai pas encore testé, je suis d'accord pour que toutes les modifications que tu as proposées ici soit intégrée dans Wikini. --
DavidDelon
J'attend que tu test ou j'intègre maintenant ? --
GarfieldFr
Si personne n'y voit d'inconvénient, tu peux intégrer , avec les pages actuelles de la 0.1.1-0.3 --
DavidDelon
Ok, je récupère les pages d'aides du site, je les nettoies et j'intègre le tout au CVS.
24-11-2003, le CVS est à jour, j'ai ajouter quelques pages pour éviter d'avoir des liens "vide", par exemple la page
TableauDeBordDeCeWiki ...etc
--
GarfieldFr
PageSuivieParGarfieldFr