This seems to have broken content folding on the website. I can't see anything obvious going wrong - perhaps someone can look at this as it's all the TOC and other documentation areas.
Andy On Sun, 15 Oct 2017 at 05:06 Bertrand Jacquin <[email protected]> wrote: > beber pushed a commit to branch master. > > > http://git.enlightenment.org/website/www.git/commit/?id=ff7e25de215d795ef618b2ab15cf91775f8a661d > > commit ff7e25de215d795ef618b2ab15cf91775f8a661d > Author: Bertrand Jacquin <[email protected]> > Date: Sun Oct 15 04:52:26 2017 +0100 > > MEDIUM: Update plugin folded to v2017-05-30 > --- > public_html/lib/plugins/folded/action.php | 27 ++++++++++ > public_html/lib/plugins/folded/conf/default.php | 4 +- > public_html/lib/plugins/folded/conf/metadata.php | 2 + > public_html/lib/plugins/folded/lang/cs/lang.php | 19 +++---- > .../lib/plugins/folded/lang/cs/settings.php | 9 ++++ > public_html/lib/plugins/folded/lang/de/lang.php | 4 +- > .../lib/plugins/folded/lang/de/settings.php | 2 + > public_html/lib/plugins/folded/lang/en/lang.php | 4 +- > .../lib/plugins/folded/lang/en/settings.php | 2 + > public_html/lib/plugins/folded/lang/fa/lang.php | 11 ++++ > .../lib/plugins/folded/lang/fa/settings.php | 9 ++++ > public_html/lib/plugins/folded/lang/fr/lang.php | 4 +- > .../lib/plugins/folded/lang/fr/settings.php | 5 +- > public_html/lib/plugins/folded/lang/no/lang.php | 19 +++---- > .../lib/plugins/folded/lang/no/settings.php | 9 ++++ > public_html/lib/plugins/folded/lang/tr/lang.php | 21 ++++---- > .../lib/plugins/folded/lang/tr/settings.php | 10 ++++ > .../plugins/folded/pagetools-close-open-sprite.png | Bin 0 -> 369 bytes > public_html/lib/plugins/folded/plugin.info.txt | 2 +- > public_html/lib/plugins/folded/script.js | 43 ++++++++++++++- > public_html/lib/plugins/folded/style.css | 22 ++++++++ > public_html/lib/plugins/folded/syntax/div.php | 17 ++++-- > public_html/lib/plugins/folded/syntax/header.php | 60 > +++++++++++++++++++++ > public_html/lib/plugins/folded/syntax/span.php | 17 ++++-- > 24 files changed, 269 insertions(+), 53 deletions(-) > > diff --git a/public_html/lib/plugins/folded/action.php > b/public_html/lib/plugins/folded/action.php > index 3c3b097a..5333f375 100644 > --- a/public_html/lib/plugins/folded/action.php > +++ b/public_html/lib/plugins/folded/action.php > @@ -18,6 +18,7 @@ class action_plugin_folded extends > DokuWiki_Action_Plugin { > */ > function register(Doku_Event_Handler $controller) { > $controller->register_hook('DOKUWIKI_STARTED', 'AFTER', $this, > 'addhidereveal'); > + $controller->register_hook('TEMPLATE_PAGETOOLS_DISPLAY', > 'BEFORE', $this, 'add_button', array()); > } > > /** > @@ -37,4 +38,30 @@ class action_plugin_folded extends > DokuWiki_Action_Plugin { > 'reveal' => $reveal > ); > } > + > + /** > + * Add 'fold/unfold all'-button to pagetools > + * > + * @param Doku_Event $event > + * @param mixed $param not defined > + */ > + public function add_button(&$event, $param) { > + global $ID, $REV; > + > + if($this->getConf('show_fold_unfold_all_button') && > $event->data['view'] == 'main') { > + $params = array('do' => 'fold_unfold_all'); > + if($REV) $params['rev'] = $REV; > + > + // insert button at position before last (up to top) > + $event->data['items'] = array_slice($event->data['items'], 0, > -1, true) + > + array('fold_unfold_all' => > + '<li>' > + .'<a href="javascript:void(0);" > class="fold_unfold_all" onclick="fold_unfold_all();" rel="nofollow" > title="'.$this->getLang('fold_unfold_all_button').'">' > + > .'<span>'.$this->getLang('fold_unfold_all_button').'</span>' > + .'</a>' > + .'</li>' > + ) + > + array_slice($event->data['items'], -1 > , 1, true); > + } > + } > } > diff --git a/public_html/lib/plugins/folded/conf/default.php > b/public_html/lib/plugins/folded/conf/default.php > index d129325f..4dd5801d 100644 > --- a/public_html/lib/plugins/folded/conf/default.php > +++ b/public_html/lib/plugins/folded/conf/default.php > @@ -5,4 +5,6 @@ > * @author Christopher Smith <[email protected]> > */ > $conf['hide'] = ''; // hide tooltip, if empty will use > localised string > -$conf['reveal'] = ''; // reveal tooltip, if empty will use > localised string > \ No newline at end of file > +$conf['reveal'] = ''; // reveal tooltip, if empty will use > localised string > +$conf['unfold_default'] = 0; // unfold all text per default > +$conf['show_fold_unfold_all_button'] = 1; // show a button in the > pagetool-area that folds/unfolds all texts of the current page > diff --git a/public_html/lib/plugins/folded/conf/metadata.php > b/public_html/lib/plugins/folded/conf/metadata.php > index 797bea31..758ce243 100644 > --- a/public_html/lib/plugins/folded/conf/metadata.php > +++ b/public_html/lib/plugins/folded/conf/metadata.php > @@ -6,3 +6,5 @@ > */ > $meta['hide'] = array('string'); > $meta['reveal'] = array('string'); > +$meta['unfold_default'] = array('onoff'); > +$meta['show_fold_unfold_all_button'] = array('onoff'); > diff --git a/public_html/lib/plugins/folded/lang/cs/lang.php > b/public_html/lib/plugins/folded/lang/cs/lang.php > index 01bea12d..1e351374 100644 > --- a/public_html/lib/plugins/folded/lang/cs/lang.php > +++ b/public_html/lib/plugins/folded/lang/cs/lang.php > @@ -1,16 +1,11 @@ > <?php > + > /** > - * Czech language file > - * > * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) > - * @author Esther Brunner <[email protected]> > + * > + * @author Esther Brunner <[email protected]> > */ > - > -// custom language strings for the plugin > -$lang['reveal'] = 'zobrazit'; > -$lang['reveallong'] = 'zobrazit skrytý obsah'; > - > -$lang['hide'] = 'skrýt'; > -$lang['hidelong'] = 'skrýt obsah'; > - > -//Setup VIM: ex: et ts=2 enc=utf-8 : > \ No newline at end of file > +$lang['reveal'] = 'zobrazit'; > +$lang['reveallong'] = 'zobrazit skrytý obsah'; > +$lang['hide'] = 'skrýt'; > +$lang['hidelong'] = 'skrýt obsah'; > diff --git a/public_html/lib/plugins/folded/lang/cs/settings.php > b/public_html/lib/plugins/folded/lang/cs/settings.php > new file mode 100644 > index 00000000..4aa36083 > --- /dev/null > +++ b/public_html/lib/plugins/folded/lang/cs/settings.php > @@ -0,0 +1,9 @@ > +<?php > + > +/** > + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) > + * > + * @author Jaroslav Lichtblau <[email protected]> > + */ > +$lang['hide'] = 'Zasunout skrývací nabídku<br />(nechat > prázdné pro použití přeložených textů)'; > +$lang['reveal'] = 'Vysunout skrývací nabídku<br />(nechat > prázdné pro použití přeložených textů)'; > diff --git a/public_html/lib/plugins/folded/lang/de/lang.php > b/public_html/lib/plugins/folded/lang/de/lang.php > index a0dbe0cf..28006287 100644 > --- a/public_html/lib/plugins/folded/lang/de/lang.php > +++ b/public_html/lib/plugins/folded/lang/de/lang.php > @@ -13,4 +13,6 @@ $lang['reveallong'] = 'zeige den eingeklappten Inhalt'; > $lang['hide'] = 'zuklappen'; > $lang['hidelong'] = 'verberge den Inhalt'; > > -//Setup VIM: ex: et ts=2 enc=utf-8 : > \ No newline at end of file > +$lang['fold_unfold_all_button'] = 'Alles aus-/einklappen'; > + > +//Setup VIM: ex: et ts=2 enc=utf-8 : > diff --git a/public_html/lib/plugins/folded/lang/de/settings.php > b/public_html/lib/plugins/folded/lang/de/settings.php > index 21601fcd..ac39b5a2 100644 > --- a/public_html/lib/plugins/folded/lang/de/settings.php > +++ b/public_html/lib/plugins/folded/lang/de/settings.php > @@ -9,3 +9,5 @@ > // for the configuration manager > $lang['hide'] = 'Tooltip zum Zuklappen<br />(Feld leer lassen um den > Standardwert zu nutzen)'; > $lang['reveal'] = 'Tooltip zum Aufklappen<br />(Feld leer lassen um den > Standardwert zu nutzen)'; > +$lang['unfold_default'] = 'Standardmäßig alles aufklappen'; > +$lang['show_fold_unfold_all_button'] = 'Button zum Zuklappen/Aufklappen > aller Text der aktuellen Seite anzeigen'; > diff --git a/public_html/lib/plugins/folded/lang/en/lang.php > b/public_html/lib/plugins/folded/lang/en/lang.php > index 68f230b6..c87a86a7 100644 > --- a/public_html/lib/plugins/folded/lang/en/lang.php > +++ b/public_html/lib/plugins/folded/lang/en/lang.php > @@ -13,4 +13,6 @@ $lang['reveallong'] = 'reveal hidden content'; > $lang['hide'] = 'hide'; > $lang['hidelong'] = 'hide content'; > > -//Setup VIM: ex: et ts=2 enc=utf-8 : > \ No newline at end of file > +$lang['fold_unfold_all_button'] = 'Fold/unfold all'; > + > +//Setup VIM: ex: et ts=2 enc=utf-8 : > diff --git a/public_html/lib/plugins/folded/lang/en/settings.php > b/public_html/lib/plugins/folded/lang/en/settings.php > index c537eced..25f64cb4 100644 > --- a/public_html/lib/plugins/folded/lang/en/settings.php > +++ b/public_html/lib/plugins/folded/lang/en/settings.php > @@ -9,3 +9,5 @@ > // for the configuration manager > $lang['hide'] = 'Folding tooltip to hide<br />(leave empty to use > localised string)'; > $lang['reveal'] = 'Folding tooltip to reveal<br />(leave empty to use > localised string)'; > +$lang['unfold_default'] = 'Unfold everything by default'; > +$lang['show_fold_unfold_all_button'] = 'Show a button in the > pagetool-area that folds/unfolds all texts of the current page'; > diff --git a/public_html/lib/plugins/folded/lang/fa/lang.php > b/public_html/lib/plugins/folded/lang/fa/lang.php > new file mode 100644 > index 00000000..267fd019 > --- /dev/null > +++ b/public_html/lib/plugins/folded/lang/fa/lang.php > @@ -0,0 +1,11 @@ > +<?php > + > +/** > + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) > + * > + * @author Sam01 <[email protected]> > + */ > +$lang['reveal'] = 'آشکارسازی'; > +$lang['reveallong'] = 'آشکارسازی محتوای پنهان'; > +$lang['hide'] = 'مخفیسازی'; > +$lang['hidelong'] = 'مخفیسازی محتوا'; > diff --git a/public_html/lib/plugins/folded/lang/fa/settings.php > b/public_html/lib/plugins/folded/lang/fa/settings.php > new file mode 100644 > index 00000000..c2e86e49 > --- /dev/null > +++ b/public_html/lib/plugins/folded/lang/fa/settings.php > @@ -0,0 +1,9 @@ > +<?php > + > +/** > + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) > + * > + * @author Sam01 <[email protected]> > + */ > +$lang['hide'] = 'جاسازی راهنمای ابزار برای مخفی کردن<br > />(خالی گذاشتن برای استفاده از رشته محلی)'; > +$lang['reveal'] = 'جاسازی راهنمای ابزار برای آشکار کردن<br > />(خالی گذاشتن برای استفاده از رشته محلی)'; > diff --git a/public_html/lib/plugins/folded/lang/fr/lang.php > b/public_html/lib/plugins/folded/lang/fr/lang.php > index c9bd8c6a..1ebd3659 100644 > --- a/public_html/lib/plugins/folded/lang/fr/lang.php > +++ b/public_html/lib/plugins/folded/lang/fr/lang.php > @@ -2,11 +2,13 @@ > > /** > * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) > - * > + * > * @author Esther Brunner <[email protected]> > * @author Fabrice Dejaigher <[email protected]> > + * @author Schplurtz le Déboulonné <[email protected]> > */ > $lang['reveal'] = 'révéler'; > $lang['reveallong'] = 'révéler le contenu masqué'; > $lang['hide'] = 'masquer'; > $lang['hidelong'] = 'masquer le contenu'; > +$lang['fold_unfold_all_button'] = 'Tout plier/déplier'; > diff --git a/public_html/lib/plugins/folded/lang/fr/settings.php > b/public_html/lib/plugins/folded/lang/fr/settings.php > index f9e9011f..e1a4be7f 100644 > --- a/public_html/lib/plugins/folded/lang/fr/settings.php > +++ b/public_html/lib/plugins/folded/lang/fr/settings.php > @@ -2,8 +2,11 @@ > > /** > * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) > - * > + * > * @author Fabrice Dejaigher <[email protected]> > + * @author Schplurtz le Déboulonné <[email protected]> > */ > $lang['hide'] = 'Contenu de l\'infobulle de l\'élément à > masquer.<br/>(laissez vide pour utiliser la chaîne localisée)'; > $lang['reveal'] = 'Contenu de l\'infobulle de l\'élément à > révéler.<br/>(laissez vide pour utiliser la chaîne localisée)'; > +$lang['unfold_default'] = 'Tout déplier par défaut'; > +$lang['show_fold_unfold_all_button'] = 'Ajouter un bouton dans la zone > des outils de page pour plier et déplier tous les textes de la page > courante'; > diff --git a/public_html/lib/plugins/folded/lang/no/lang.php > b/public_html/lib/plugins/folded/lang/no/lang.php > index 0101f689..f1871b56 100644 > --- a/public_html/lib/plugins/folded/lang/no/lang.php > +++ b/public_html/lib/plugins/folded/lang/no/lang.php > @@ -1,16 +1,11 @@ > <?php > + > /** > - * norwegian language file > - * > * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) > - * @author Matthias Schulte <[email protected]> > + * > + * @author Matthias Schulte <[email protected]> > */ > - > -// custom language strings for the plugin > -$lang['reveal'] = 'vis'; > -$lang['reveallong'] = 'vis skjult innhold '; > - > -$lang['hide'] = 'skjul'; > -$lang['hidelong'] = 'skjul innhold'; > - > -//Setup VIM: ex: et ts=2 : > \ No newline at end of file > +$lang['reveal'] = 'vis'; > +$lang['reveallong'] = 'vis skjult innhold '; > +$lang['hide'] = 'skjul'; > +$lang['hidelong'] = 'skjul innhold'; > diff --git a/public_html/lib/plugins/folded/lang/no/settings.php > b/public_html/lib/plugins/folded/lang/no/settings.php > new file mode 100644 > index 00000000..f51fb679 > --- /dev/null > +++ b/public_html/lib/plugins/folded/lang/no/settings.php > @@ -0,0 +1,9 @@ > +<?php > + > +/** > + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) > + * > + * @author Arne Hanssen <[email protected]> > + */ > +$lang['hide'] = 'Infoboble for å skjule<br />(la stå tom > for å bruke oversatt tekst)'; > +$lang['reveal'] = 'Infoboble for å vise<br />(la stå tom > for å bruke oversatt tekst)'; > diff --git a/public_html/lib/plugins/folded/lang/tr/lang.php > b/public_html/lib/plugins/folded/lang/tr/lang.php > index 6605f55c..1974263f 100644 > --- a/public_html/lib/plugins/folded/lang/tr/lang.php > +++ b/public_html/lib/plugins/folded/lang/tr/lang.php > @@ -1,16 +1,13 @@ > <?php > + > /** > - * turkish language file > - * > * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) > - * @author Chris Smith <[email protected]> > + * > + * @author Chris Smith <[email protected]> > + * @author Mustafa Icer <[email protected]> > */ > - > -// custom language strings for the plugin > -$lang['reveal'] = 'göster'; > -$lang['reveallong'] = 'gizlenen içeri?i göster'; > - > -$lang['hide'] = 'gizle'; > -$lang['hidelong'] = 'içeri?i gizle'; > - > -//Setup VIM: ex: et ts=2 enc=utf-8 : > \ No newline at end of file > +$lang['reveal'] = 'göster'; > +$lang['reveallong'] = 'gizlenen içeriği göster'; > +$lang['hide'] = 'gizle'; > +$lang['hidelong'] = 'içeriği gizle'; > +$lang['fold_unfold_all_button'] = 'katla/tüm katlamalari aç'; > diff --git a/public_html/lib/plugins/folded/lang/tr/settings.php > b/public_html/lib/plugins/folded/lang/tr/settings.php > new file mode 100644 > index 00000000..1b199157 > --- /dev/null > +++ b/public_html/lib/plugins/folded/lang/tr/settings.php > @@ -0,0 +1,10 @@ > +<?php > + > +/** > + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) > + * > + * @author Mustafa Icer <[email protected]> > + */ > +$lang['unfold_default'] = 'standart olarak tüm katlamalari aç'; > +$lang['show_fold_unfold_all_button'] = 'tüm sayfanin yazılarını > katlamak/katlamalari açmak icin, > +pagetool sayfasında buton göster'; > diff --git > a/public_html/lib/plugins/folded/pagetools-close-open-sprite.png > b/public_html/lib/plugins/folded/pagetools-close-open-sprite.png > new file mode 100644 > index 00000000..ceb85b4f > Binary files /dev/null and > b/public_html/lib/plugins/folded/pagetools-close-open-sprite.png differ > diff --git a/public_html/lib/plugins/folded/plugin.info.txt > b/public_html/lib/plugins/folded/plugin.info.txt > index 1527cd9e..1f5238a7 100644 > --- a/public_html/lib/plugins/folded/plugin.info.txt > +++ b/public_html/lib/plugins/folded/plugin.info.txt > @@ -1,7 +1,7 @@ > base folded > author Michael Hamann, Fabian van-de-l_Isle, Christopher Smith, Esther > Brunner > email [email protected] > -date 2014-07-21 > +date 2017-05-30 > name folded plugin > desc Foldable page sections > url http://dokuwiki.org/plugin:folded > diff --git a/public_html/lib/plugins/folded/script.js > b/public_html/lib/plugins/folded/script.js > index 39303631..c17bd724 100644 > --- a/public_html/lib/plugins/folded/script.js > +++ b/public_html/lib/plugins/folded/script.js > @@ -14,6 +14,7 @@ > jQuery(function() { > // containers for localised reveal/hide strings, > // populated from the content set by the action plugin > + if(!JSINFO || !JSINFO['plugin_folded']) return; > var folded_reveal = JSINFO['plugin_folded']['reveal']; > var folded_hide = JSINFO['plugin_folded']['hide']; > > @@ -23,7 +24,7 @@ jQuery(function() { > * toggle the folded element via className change also adjust the > classname and > * title tooltip on the folding link > */ > - jQuery('.folder').click(function folded_toggle(evt) { > + jQuery('.dokuwiki .folder').click(function folded_toggle(evt) { > var id = this.href.match(/(#.*)$/)[1]; > var $id = jQuery(id); > > @@ -44,6 +45,46 @@ jQuery(function() { > }); > }); > > +function fold_unfold_all() { > + var hide = -1; > + var cpt = 1; > + > + var folders = document.getElementsByClassName("folder"); > + var i; > + for (i = 0; i < folders.length; i++) { > + // initially, find out whether we want to hide or unhide > + if (hide == -1) { > + if (folders[i].className.search("open") == -1) { > + hide = 0; > + } else { > + hide = 1; > + } > + } > + > + if (hide == 1) { > + folders[i].className = folders[i].className.replace(/open/g, > ""); > + } else { > + folders[i].className = folders[i].className + " open"; > + } > + > + } > + > + // get first folded_ object > + var obj = document.getElementById("folded_" + cpt++); > + while ( obj != null ) { > + if (hide == 1) { > + obj.className = obj.className.replace(/open/g, ""); > + obj.className = obj.className + " hidden"; > + } else { > + obj.className = obj.className.replace(/hidden/g, ""); > + obj.className = obj.className + " open"; > + } > + > + // get next folded_ object > + obj = document.getElementById("folded_" + cpt++); > + } > +} > + > // support graceful js degradation, this hides the folded blocks from view > // before they are shown, > // whilst still allowing non-js user to see any folded content. > diff --git a/public_html/lib/plugins/folded/style.css > b/public_html/lib/plugins/folded/style.css > index e9533473..9c153134 100644 > --- a/public_html/lib/plugins/folded/style.css > +++ b/public_html/lib/plugins/folded/style.css > @@ -21,6 +21,28 @@ span.indicator { > visibility: hidden; > } > > +/* fold/unfold all button in pagetools area */ > +#dokuwiki__pagetools ul li a.fold_unfold_all { > + background-position: right 0; > +} > + > +#dokuwiki__pagetools ul li a.fold_unfold_all:before { > + content: url(pagetools-close-open-sprite.png); > + margin-top: 0; > +} > + > +#dokuwiki__pagetools:hover ul li a.fold_unfold_all, > +#dokuwiki__pagetools ul li a.fold_unfold_all:focus, > +#dokuwiki__pagetools ul li a.fold_unfold_all:active { > + background-image: url(pagetools-close-open-sprite.png); > +} > + > +#dokuwiki__pagetools ul li a.fold_unfold_all:hover, > +#dokuwiki__pagetools ul li a.fold_unfold_all:active, > +#dokuwiki__pagetools ul li a.fold_unfold_all:focus { > + background-position: right -45px; > +} > + > /* below style rules are created by javascript > .folded.hidden { display: none; } > .folder span.indicator { visibility: visible; } > diff --git a/public_html/lib/plugins/folded/syntax/div.php > b/public_html/lib/plugins/folded/syntax/div.php > index ae783227..b33b1f92 100644 > --- a/public_html/lib/plugins/folded/syntax/div.php > +++ b/public_html/lib/plugins/folded/syntax/div.php > @@ -8,9 +8,8 @@ > * @author Esther Brunner <[email protected]> > */ > > -if(!defined('DOKU_INC')) > define('DOKU_INC',realpath(dirname(__FILE__).'/../../').'/'); > -if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/'); > -require_once(DOKU_PLUGIN.'syntax.php'); > +// must be run within DokuWiki > +if(!defined('DOKU_INC')) die(); > > // maintain a global count of the number of folded elements in the page, > // this allows each to be uniquely identified > @@ -61,12 +60,20 @@ class syntax_plugin_folded_div extends > DokuWiki_Syntax_Plugin { > switch ($state){ > case DOKU_LEXER_ENTER: > $plugin_folded_count++; > - $renderer->doc .= '<p><a class="folder" > href="#folded_'.$plugin_folded_count.'">'; > + if ($this->getConf('unfold_default')) { > + $renderer->doc .= '<p><a class="folder open" > href="#folded_'.$plugin_folded_count.'">'; > + } else { > + $renderer->doc .= '<p><a class="folder" > href="#folded_'.$plugin_folded_count.'">'; > + } > > if ($cdata) > $renderer->doc .= ' '.$renderer->cdata($cdata); > > - $renderer->doc .= '</a></p><div class="folded hidden" > id="folded_'.$plugin_folded_count.'">'; > + if ($this->getConf('unfold_default')) { > + $renderer->doc .= '</a></p><div class="folded" > id="folded_'.$plugin_folded_count.'">'; > + } else { > + $renderer->doc .= '</a></p><div class="folded hidden" > id="folded_'.$plugin_folded_count.'">'; > + } > break; > > case DOKU_LEXER_UNMATCHED: // > defensive, shouldn't occur > diff --git a/public_html/lib/plugins/folded/syntax/header.php > b/public_html/lib/plugins/folded/syntax/header.php > new file mode 100644 > index 00000000..3007bd46 > --- /dev/null > +++ b/public_html/lib/plugins/folded/syntax/header.php > @@ -0,0 +1,60 @@ > +<?php > +/** > + * Folded text Plugin, header component: > + * Render headers included in folded blocks. > + * > + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) > + * @author LarsDW223 > + */ > +// must be run within Dokuwiki > +if(!defined('DOKU_INC')) die(); > + > +/** > + * This class handles header syntax inside folded blocks. > + * A found header syntax will be rendered as an html header element but > + * is not a DokuWiki header (no section edit, do not appear in toc). > + */ > +class syntax_plugin_folded_header extends DokuWiki_Syntax_Plugin { > + > + function getType(){ return 'formatting'; } > + function getPType() { return 'block'; } > + function getSort(){ return 50; } > + function connectTo($mode) { > + if ($mode != 'plugin_folded_div') return; > + > + // Copied from parser: we're not picky about the closing ones, > two are enough > + $this->Lexer->addSpecialPattern( > + '[ \t]*={2,}[^\n]+={2,}[ \t]*(?=\n)', > + $mode, > + 'plugin_folded_header' > + ); > + } > + > + /** > + * Handle the match > + */ > + function handle($match, $state, $pos, Doku_Handler $handler){ > + // Copied from parser: get level and title > + $title = trim($match); > + $level = 7 - strspn($title,'='); > + if($level < 1) $level = 1; > + $title = trim($title,'='); > + $title = trim($title); > + return array($title,$level,$pos); > + } > + > + /** > + * Create output > + */ > + function render($mode, Doku_Renderer $renderer, $data) { > + if($mode != 'xhtml') return; > + > + list($text,$level,$pos) = $data; > + > + // Write the header > + $renderer->doc .= DOKU_LF.'<h'.$level.'>'; > + $renderer->cdata($text); > + $renderer->doc .= "</h$level>".DOKU_LF; > + return true; > + } > +} > diff --git a/public_html/lib/plugins/folded/syntax/span.php > b/public_html/lib/plugins/folded/syntax/span.php > index 8854d893..4f151560 100644 > --- a/public_html/lib/plugins/folded/syntax/span.php > +++ b/public_html/lib/plugins/folded/syntax/span.php > @@ -8,9 +8,8 @@ > * @author Esther Brunner <[email protected]> > */ > > -if(!defined('DOKU_INC')) > define('DOKU_INC',realpath(dirname(__FILE__).'/../../').'/'); > -if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/'); > -require_once(DOKU_PLUGIN.'syntax.php'); > +// must be run within DokuWiki > +if(!defined('DOKU_INC')) die(); > > // maintain a global count of the number of folded elements in the page, > // this allows each to be uniquely identified > @@ -60,12 +59,20 @@ class syntax_plugin_folded_span extends > DokuWiki_Syntax_Plugin { > switch ($state){ > case DOKU_LEXER_ENTER: > $plugin_folded_count++; > - $renderer->doc .= '<a class="folder" > href="#folded_'.$plugin_folded_count.'">'; > + if ($this->getConf('unfold_default')) { > + $renderer->doc .= '<a class="folder open" > href="#folded_'.$plugin_folded_count.'">'; > + } else { > + $renderer->doc .= '<a class="folder" > href="#folded_'.$plugin_folded_count.'">'; > + } > > if ($cdata) > $renderer->doc .= ' '.$renderer->cdata($cdata); > > - $renderer->doc .= '</a><span class="folded hidden" > id="folded_'.$plugin_folded_count.'">'; > + if ($this->getConf('unfold_default')) { > + $renderer->doc .= '</a><span class="folded" > id="folded_'.$plugin_folded_count.'">'; > + } else { > + $renderer->doc .= '</a><span class="folded hidden" > id="folded_'.$plugin_folded_count.'">'; > + } > break; > > case DOKU_LEXER_UNMATCHED: > > -- > > > -- http://andywilliams.me http://ajwillia.ms ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
