xref: /plugin/newpagefill/README.md (revision 9a36670832b754c53fa81850c7b00d5bb57a3705)
1*9a366708SLORTET# Newpagefill
2*9a366708SLORTET
3*9a366708SLORTET���� Français | [���� English](README_EN.md) | [���� Deutsch](README_DE.md) | [���� Español](README_ES.md)
4*9a366708SLORTET
5*9a366708SLORTETLe plugin peut :
6*9a366708SLORTET- ouvrir une petite popup de création avec un titre et un identifiant ;
7*9a366708SLORTET- proposer automatiquement un identifiant à partir du titre ;
8*9a366708SLORTET- préremplir la page avec un template du plugin si aucun template natif n'existe ;
9*9a366708SLORTET- enrichir les templates natifs DokuWiki avec `@TITLE@`.
10*9a366708SLORTET
11*9a366708SLORTET## Utilisation
12*9a366708SLORTET
13*9a366708SLORTETLe plugin ajoute une interface de création de page plus simple :
14*9a366708SLORTET- vous saisissez un titre ;
15*9a366708SLORTET- vous pouvez aussi saisir un namespace si aucun namespace n'est fourni au script ;
16*9a366708SLORTET- le plugin propose un identifiant ;
17*9a366708SLORTET- il ouvre ensuite directement l'éditeur de la nouvelle page.
18*9a366708SLORTET
19*9a366708SLORTETSi un template natif DokuWiki existe (`_template.txt` ou `__template.txt`), il est utilisé.
20*9a366708SLORTETSinon, le plugin applique son propre template configuré.
21*9a366708SLORTET
22*9a366708SLORTET## Configuration
23*9a366708SLORTET
24*9a366708SLORTETDans le gestionnaire de configuration :
25*9a366708SLORTET- `template` : template de secours utilisé seulement si aucun template natif DokuWiki n'est trouvé
26*9a366708SLORTET- `default_start_mode` : mode par défaut de création de la page (`ask`, `start`, `none`, `same`)
27*9a366708SLORTET
28*9a366708SLORTETCe template peut contenir :
29*9a366708SLORTET- `@TITLE@` : titre calculé par le plugin (spécifique à newpagefill)
30*9a366708SLORTET- tous les placeholders natifs DokuWiki : `@ID@`, `@NS@`, `@PAGE@`, `@USER@`, `@DATE@`, etc. (gérés par le core, pas par ce plugin)
31*9a366708SLORTET
32*9a366708SLORTET## Comportement de `@TITLE@`
33*9a366708SLORTET
34*9a366708SLORTETLe plugin remplit `@TITLE@` ainsi :
35*9a366708SLORTET- il prend d'abord la valeur `title` si elle existe ;
36*9a366708SLORTET- sinon, il essaie de la déduire depuis l'URL de création ;
37*9a366708SLORTET- si la page créée est une page de démarrage comme `accueil`, il utilise le nom du namespace parent ;
38*9a366708SLORTET- les `_` sont transformés en espaces.
39*9a366708SLORTET
40*9a366708SLORTET## Compatibilité avec DokuWiki
41*9a366708SLORTET
42*9a366708SLORTETLe plugin respecte le système natif de templates :
43*9a366708SLORTET- `_template.txt`
44*9a366708SLORTET- `__template.txt`
45*9a366708SLORTET
46*9a366708SLORTETIl ne le remplace pas.
47*9a366708SLORTETIl ajoute seulement le support de `@TITLE@` — les placeholders natifs DokuWiki (`@ID@`, `@NS@`, etc.) sont gérés par le core après coup.
48*9a366708SLORTET
49*9a366708SLORTET## Fonction JavaScript disponible
50*9a366708SLORTET
51*9a366708SLORTETLe plugin expose aussi une fonction JavaScript globale :
52*9a366708SLORTET
53*9a366708SLORTET```js
54*9a366708SLORTETwindow.NewPageFill.openCreatePageDialog(options)
55*9a366708SLORTET```
56*9a366708SLORTET
57*9a366708SLORTETExemple :
58*9a366708SLORTET
59*9a366708SLORTET```js
60*9a366708SLORTETwindow.NewPageFill.openCreatePageDialog({
61*9a366708SLORTET  namespace: 'wiki:documentation',
62*9a366708SLORTET  initialTitle: 'Nouvelle page'
63*9a366708SLORTET});
64*9a366708SLORTET```
65*9a366708SLORTET
66*9a366708SLORTETOptions utiles :
67*9a366708SLORTET- `namespace` : namespace DokuWiki dans lequel créer la page. S'il n'est pas fourni, la popup permet de le saisir
68*9a366708SLORTET- `initialTitle` : titre proposé à l'ouverture
69*9a366708SLORTET- `start` :
70*9a366708SLORTET  - `undefined` ou `null` : utilise le mode par défaut configuré dans le plugin
71*9a366708SLORTET  - `'@ask@'` : demande le type de création même si un mode par défaut existe
72*9a366708SLORTET  - `true` : utilise la page de démarrage du wiki, par exemple `accueil`
73*9a366708SLORTET  - `false` : crée la page directement
74*9a366708SLORTET  - `'@same@'` : crée une sous-page portant le même nom que l'identifiant
75*9a366708SLORTET  - toute autre chaîne : crée une sous-page avec cette valeur
76*9a366708SLORTET- `sepchar` : séparateur utilisé pour générer l'identifiant
77*9a366708SLORTET
78*9a366708SLORTETSi `start` n'est pas fourni et que `default_start_mode = ask`, la popup affiche les trois choix :
79*9a366708SLORTET- page directe
80*9a366708SLORTET- page de démarrage
81*9a366708SLORTET- sous-page du même nom
82