diff --git a/action.php b/action.php index 12347b0..5aeffbe 100644 --- a/action.php +++ b/action.php @@ -24,14 +24,14 @@ class action_plugin_userhomepage extends DokuWiki_Action_Plugin{ global $conf; global $INFO; global $uhpreplace; - // CREATE AND LOAD LOCAL REPLACEMENT FILE IF IT DOESN'T EXIST YET - if (!file_exists(DOKU_INC.'conf/userhomepage_replace.php')) { - $content = io_readFile(DOKU_INC.'lib/plugins/userhomepage/userhomepage_replace.default', false); - $content = str_replace('privatenamespace',$this->getLang('privatenamespace'),$content); - $content = str_replace('publicpage',$this->getLang('publicpage'),$content); - file_put_contents(DOKU_INC.'conf/userhomepage_replace.php', $content); - } - if (file_exists(DOKU_INC.'conf/userhomepage_replace.php')) { require_once(DOKU_INC.'conf/userhomepage_replace.php'); } +// // CREATE AND LOAD LOCAL REPLACEMENT FILE IF IT DOESN'T EXIST YET +// if (!file_exists(DOKU_INC.'conf/userhomepage_replace.php')) { +// $content = io_readFile(DOKU_INC.'lib/plugins/userhomepage/userhomepage_replace.default', false); +// $content = str_replace('privatenamespace',$this->getLang('privatenamespace'),$content); +// $content = str_replace('publicpage',$this->getLang('publicpage'),$content); +// file_put_contents(DOKU_INC.'conf/userhomepage_replace.php', $content); +// } +// if (file_exists(DOKU_INC.'conf/userhomepage_replace.php')) { require_once(DOKU_INC.'conf/userhomepage_replace.php'); } // CREATE PRIVATE NAMESPACE START PAGE TEMPLATES IF NEEDED if (($this->getConf('create_private_ns')) && (!file_exists(DOKU_INC.$this->getConf('templates_path').'/userhomepage_private.txt'))) { // If old template exists, use it as source to create userhomepage_private.txt in templates_path @@ -169,27 +169,35 @@ class action_plugin_userhomepage extends DokuWiki_Action_Plugin{ function applyTemplate($type) { global $INFO; global $lang; - // Improved template process to use any replacement patterns from https://www.dokuwiki.org/namespace_templates based on code proposed by Christian Nancy or local ones from conf/userhomepage_replace.php file +// // Improved template process to use any replacement patterns from https://www.dokuwiki.org/namespace_templates based on code proposed by Christian Nancy or local ones from conf/userhomepage_replace.php file if ($type == 'private') { $content = io_readFile($this->private_page_template, false); - $content = $this->replace($content); - $data = array('tpl' => $content, 'id' => $this->private_page); +// $content = $this->replace($content); +// $data = array('tpl' => $content, 'id' => $this->private_page); } elseif ($type == 'public') { $content = io_readFile($this->public_page_template, false); - $content = $this->replace($content); - $data = array('tpl' => $content, 'id' => $this->public_page); +// $content = $this->replace($content); +// $data = array('tpl' => $content, 'id' => $this->public_page); } +// // Use the built-in parser +// $content = parsePageTemplate($data); + str_replace('@TARGETPRIVATENS@', $this->private_ns, $content); + str_replace('@TARGETPUBLICPAGE@', $this->public_page, $content); + str_replace('@TARGETPUBLICNS@', cleanID($this->getConf('public_pages_ns')), $content); + // Improved template process to use any replacement patterns from https://www.dokuwiki.org/namespace_templates based on code proposed by Christian Nancy + // Build a fake data structure for the parser + $data = array('tpl' => $content, 'id' => $this->private_page); // Use the built-in parser $content = parsePageTemplate($data); return $content; } - function replace($content) { - global $uhpreplace; - foreach ($uhpreplace as $pattern => $replacement){ - $content = str_replace($pattern,$replacement,$content); - } - return $content; - } +// function replace($content) { +// global $uhpreplace; +// foreach ($uhpreplace as $pattern => $replacement){ +// $content = str_replace($pattern,$replacement,$content); +// } +// return $content; +// } } diff --git a/lang/en/lang.php b/lang/en/lang.php index 6e07ff9..47a10d7 100644 --- a/lang/en/lang.php +++ b/lang/en/lang.php @@ -6,5 +6,3 @@ */ $lang['created'] = 'Page created from template by Userhompage plugin.'; - $lang['privatenamespace'] = 'Private Namespace'; - $lang['publicpage'] = 'Public Page'; diff --git a/lang/en/userhomepage_private.default b/lang/en/userhomepage_private.default new file mode 100644 index 0000000..cdad230 --- /dev/null +++ b/lang/en/userhomepage_private.default @@ -0,0 +1,9 @@ +====== @NAME@ (@USER@) - Espace Privé ====== +Cet espace de nom (@TARGETPRIVATENS@) et son contenu (pages, images, ...) vous est réservé et **vous seul y avez accès** (ainsi que l'administrateur)... + * Pour créer une page au sein de cet espace réservé (et donc protégée), utiliser la syntaxe de lien __sans aucun espace de nom__ : +[[page exemple 1]] +[[exemple2|Ma page exemple2]] + * Pour créer un sous espace de nom, le créer sous l'espace __@TARGETPRIVATENS@__ : +[[@TARGETPRIVATENS@::exemple3]] +Vous pouvez évidement supprimer ce paragraphe... +A vos claviers! :-D diff --git a/lang/en/userhomepage_public.default b/lang/en/userhomepage_public.default new file mode 100644 index 0000000..7e2ae61 --- /dev/null +++ b/lang/en/userhomepage_public.default @@ -0,0 +1,8 @@ +====== @NAME@ (@USER@) - Page Publique ====== +Cet page publique (@TARGETPUBLICPAGE@) est par définition **accessible à tous en lecture mais vous seul pouvez la modifier** (ainsi que l'administrateur)... + * Vous pouvez vous présenter, raconter une histoire ou présenter vos travaux personnels (même sans lien avec ce wiki) + * Vous pouvez inclure un avatar ou autre image + * Ne créez pas d'autre page dans cet espace de nom (@TARGETPUBLICNS@) + * Pensez à respecter la [[wpfr>http://en.wikipedia.org/wiki/Etiquette_in_technology|nétiquette]] ainsi que la loi ;-) +Vous pouvez évidement supprimer ce paragraphe... +A vos claviers! :-D diff --git a/lang/fr/lang.php b/lang/fr/lang.php index ae2cb13..db42558 100644 --- a/lang/fr/lang.php +++ b/lang/fr/lang.php @@ -6,5 +6,3 @@ */ $lang['created'] = 'Page créée à partir du modèle par le plugin Userhomepage.'; - $lang['privatenamespace'] = 'Espace Privé'; - $lang['publicpage'] = 'Page Publique'; diff --git a/lang/fr/userhomepage_private.default b/lang/fr/userhomepage_private.default new file mode 100644 index 0000000..cdad230 --- /dev/null +++ b/lang/fr/userhomepage_private.default @@ -0,0 +1,9 @@ +====== @NAME@ (@USER@) - Espace Privé ====== +Cet espace de nom (@TARGETPRIVATENS@) et son contenu (pages, images, ...) vous est réservé et **vous seul y avez accès** (ainsi que l'administrateur)... + * Pour créer une page au sein de cet espace réservé (et donc protégée), utiliser la syntaxe de lien __sans aucun espace de nom__ : +[[page exemple 1]] +[[exemple2|Ma page exemple2]] + * Pour créer un sous espace de nom, le créer sous l'espace __@TARGETPRIVATENS@__ : +[[@TARGETPRIVATENS@::exemple3]] +Vous pouvez évidement supprimer ce paragraphe... +A vos claviers! :-D diff --git a/lang/fr/userhomepage_public.default b/lang/fr/userhomepage_public.default new file mode 100644 index 0000000..7e2ae61 --- /dev/null +++ b/lang/fr/userhomepage_public.default @@ -0,0 +1,8 @@ +====== @NAME@ (@USER@) - Page Publique ====== +Cet page publique (@TARGETPUBLICPAGE@) est par définition **accessible à tous en lecture mais vous seul pouvez la modifier** (ainsi que l'administrateur)... + * Vous pouvez vous présenter, raconter une histoire ou présenter vos travaux personnels (même sans lien avec ce wiki) + * Vous pouvez inclure un avatar ou autre image + * Ne créez pas d'autre page dans cet espace de nom (@TARGETPUBLICNS@) + * Pensez à respecter la [[wpfr>http://en.wikipedia.org/wiki/Etiquette_in_technology|nétiquette]] ainsi que la loi ;-) +Vous pouvez évidement supprimer ce paragraphe... +A vos claviers! :-D