DokuWiki

It's better when it's simple

User Tools

Site Tools


plugin:alphaindex

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
plugin:alphaindex [2011-08-06 15:16] – [Bugs] lupo49plugin:alphaindex [2020-02-29 18:28] (current) – version upped Aleksandr
Line 1: Line 1:
-====== Plugin Alphaindex ======+====== Alphaindex Plugin ======
  
 ---- plugin ---- ---- plugin ----
Line 6: Line 6:
 email      : takashi@natural-design.net email      : takashi@natural-design.net
 type       : syntax type       : syntax
-lastupdate : 2008-10-28+lastupdate : 2016-02-02
 compatible : compatible :
 depends    : depends    :
Line 13: Line 13:
 tags       : navigation, menu, listing, namespace tags       : navigation, menu, listing, namespace
  
-downloadurl: http://github.com/lupo49/plugin-alphaindex/tarball/master +downloadurl: https://github.com/lupo49/plugin-alphaindex/tarball/master 
-bugtracker : http://github.com/lupo49/plugin-alphaindex/issues +bugtracker : https://github.com/lupo49/plugin-alphaindex/issues 
-sourcerepo : http://github.com/lupo49/plugin-alphaindex/+sourcerepo : https://github.com/lupo49/plugin-alphaindex/
 donationurl:  donationurl: 
 ---- ----
Line 160: Line 160:
  
 ===== How to install ===== ===== How to install =====
 +Search and install the plugin using the [[plugin:extension|Extension Manager]]. Refer to [[:Plugins]] on how to install plugins manually.
  
 |:!: There is also a [[http://samuele.netsons.org/dokuwiki/lib/plugins/alphaindex/alphaindex.tar.gz|zip]] updated version with [[alphaindex#patches]] by community users. | |:!: There is also a [[http://samuele.netsons.org/dokuwiki/lib/plugins/alphaindex/alphaindex.tar.gz|zip]] updated version with [[alphaindex#patches]] by community users. |
- 
-Copy the [[https://github.com/lupo49/plugin-alphaindex/tarball/master|Github link]] and paste it into the [[plugin:plugin|plugin_manager]]. 
  
 ===== Changelog ===== ===== Changelog =====
 +
 +{{rss>https://github.com/lupo49/plugin-alphaindex/commits/master.atom date}}
  
   * **2006-06-14 - //version 1.2//**   * **2006-06-14 - //version 1.2//**
Line 183: Line 184:
  * //What's about an update to do Configuration via the Admin-panel?//  * //What's about an update to do Configuration via the Admin-panel?//
  
- * //And what's about a RegEx for ''hidepages''?//+ * //And what's about a RegEx for ''hidepages''?  Hem, RegEx is for experts and Dokuwikers are not experts!// 
 ===== Bugs / Feature Requests ===== ===== Bugs / Feature Requests =====
  
-Please report bugs or feature requests at the [[http://github.com/lupo49/plugin-alphaindex/issues|Github.com - Bug tracker]].+Please report bugs or feature requests at the [[https://github.com/lupo49/plugin-alphaindex/issues|Github.com - Bug tracker]].
  
- 
-  * Some random title indexes are displayed incorrectly, they lacks the first letter (i.e: okuWiki instead of DokuWiki). 
- --- //[[samuele@samuele.netsons.org|Samuele Tognini]] 2006-05-25 03:08// 
-> Corrected in 1.2 version --- //[[takashi@natural-design.net|Takashi]] 2006-06-14 10:16// 
- 
-  * It's need to replace all ''ucfirst'' calls to UTF8-safe code. For example, ''utf8_strtoupper(utf8_substr($string, 0, 1)).utf8_substr($string, 1)''. Otherwise non-Latin page titles (Cyrillic in my case) displays corrupted. Sorry for my bad English. 
- --- //[[david@hiero.ru|David Mzareulyan]] 2007-03-08 18:30// 
- 
- 
- 
- 
- 
-==== Patches ==== 
-| :!: The following patches are included in the alphaindex modded version in the [[.:alphaindex#how_to_install]] section. | 
- 
----- 
-//2008-08-31// 
- 
-There is a patch which : 
-  * Fix odd bug by replacing ''utf8_str_replace'' by ''str_replace'' by Juice. 
-  * Fix the ''match(12'' to ''match(13'' issue rise by Thanos. 
-  * Add the ''@NS@'' support from Thanos. 
-  * Apply the patch for tag/pagelist issue with ''useheading'' option, by Nicolas. 
-And... 
-  * Fix a bug with ''hidepages'' and ''useheading'' option. 
-  * Fix the TOC. Just use %%~~NOTOC~~%% to hide it. 
-  * Hide editsection buttons, useless. 
-  * Should not required anymore %%~~NOCACHE~~%% within the pages. I test it, that seems to work... ;-) 
-  * I also did spaces cleaning. 
-I test it on the release 2008-05-05. 
- 
-<code diff> 
-diff -Naur alphaindex_orig/syntax.php alphaindex/syntax.php 
---- alphaindex_orig/syntax.php 2006-06-14 10:30:44.000000000 +0200 
-+++ alphaindex/syntax.php 2008-08-31 19:44:35.000000000 +0200 
-@@ -1,21 +1,21 @@ 
- <?php 
- /** 
-- * Info Alphaindex: Displays the alphabetical index of a specified namespace.  
-+ * Info Alphaindex: Displays the alphabetical index of a specified namespace. 
-  * 
-- * Version: 1.2 
-- * last modified: 2006-06-14 12:00:00 
-+ * Version: 1.3 
-+ * last modified: 2008-08-31 
-  * @license     GPL 2 (http://www.gnu.org/licenses/gpl.html) 
-- * @author      Hubert Moli?re  <hubert.moliere@alternet.fr> 
-+ * @author      Hubert Moli?re  <hubert.moliere@alternet.fr> 
-  */ 
- 
-+ 
- /** 
-- * Configuration additionnelle sp?cifique au plugin 
-+ * Configuration additionnelle sp?cifique au plugin 
-  * 
-  * - $conf['plugin']['alphaindex']['numerical_index'] 
-  * - $conf['plugin']['alphaindex']['articles_deletion'] 
-- * - $conf['plugin']['alphaindex']['articles_moving' 
-+ * - $conf['plugin']['alphaindex']['articles_moving'] 
-  * - $conf['plugin']['alphaindex']['empty_msg'] 
-- * - $conf['plugin']['alphaindex']['title_tpl' 
-+ * - $conf['plugin']['alphaindex']['title_tpl'] 
-  * - $conf['plugin']['alphaindex']['begin_letter_tpl'] 
-  * - $conf['plugin']['alphaindex']['entry_tpl'] 
-  * - $conf['plugin']['alphaindex']['end_letter_tpl'] 
-@@ -27,13 +27,13 @@ 
- if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/'); 
- require_once(DOKU_PLUGIN.'syntax.php'); 
- require_once(DOKU_INC.'inc/search.php'); 
- 
-+ 
- /** 
-  * All DokuWiki plugins to extend the parser/rendering mechanism 
-  * need to inherit from this class 
-  */ 
- class syntax_plugin_alphaindex extends DokuWiki_Syntax_Plugin { 
--   
-+ 
-     /** 
-      * return some info 
-      */ 
-@@ -41,61 +41,88 @@ 
-         return array( 
-             'author' => 'Hubert Moliere', 
-             'email'  => 'takashi@natural-design.net', 
--            'date'   => '2006-06-14', 
-+            'date'   => '2008-08-31', 
-             'name'   => 'Alphaindex', 
-             'desc'   => 'Insert the alphabetical index of a specified namespace.', 
-             'url'    => 'http://wiki.splitbrain.org/plugin:alphaindex' 
-             ); 
-     } 
--   
-+ 
-     function getType(){ return 'substition';} 
-     function getAllowedTypes() { return array('baseonly', 'substition', 'formatting', 'paragraphs', 'protected'); } 
--   
-+ 
-     /** 
-      * Where to sort in? 
-      */ 
-     function getSort(){ 
-         return 139; 
-     } 
- 
-+ 
-     /** 
-      * Connect pattern to lexer 
-      */ 
-     function connectTo($mode) { 
-         $this->Lexer->addSpecialPattern('{{alphaindex>.+?}}',$mode,'plugin_alphaindex'); 
-     } 
--       
-+ 
-   /** 
-    * Handle the match 
-    */ 
-     function handle($match, $state, $pos, &$handler){ 
-+        global $ID; 
-+ 
-         $level = 0; 
-         $nons = true; 
--        $match = substr($match,12,-2); 
-+        $match = substr($match,13,-2); 
-         //split namespaces 
-         $match = preg_split('/\|/u', $match, 2); 
-         //split level 
-         $ns_opt = preg_split('/\#/u', $match[0], 2); 
-         //namespace name 
-         $ns = $ns_opt[0]; 
-+        // add @NS@ option 
-+        if(empty($ns) || $ns == '@NS@') { 
-+         $pos = strrpos($ID,':'); 
-+          if($pos!=false){ 
-+            $ns = substr($ID,0,$pos); 
-+          }else{ 
-+             $ns = '.'; 
-+          } 
-+        } 
-         //level; 
-         if (is_numeric($ns_opt[1])) { 
-             $level=$ns_opt[1]; 
-         } 
-         $match = explode(" ", $match[1]); 
--        // namespaces option  
-+        // namespaces option 
-         $nons = in_array('nons', $match); 
-         // multi-columns option 
-         $incol = in_array('incol', $match); 
-         return array($ns,array('level' => $level,'nons' => $nons,'incol' => $incol)); 
-     } 
- 
-+ 
-     /** 
-      * Render output 
-      */ 
-     function render($mode, &$renderer, $data) { 
-+        global $ID; 
-         global $conf; 
--        if($mode == 'xhtml'){  
-+ 
-+        if($mode == 'xhtml'){ 
-+            // Never cache to get fresh info 
-+            $renderer->info['cache'] = false; 
-+            // Remove Section Edit Buttons 
-+            $oldmaxecl = $conf['maxseclevel']; 
-+            $conf['maxseclevel'] = 0; 
-+            // To see the TOC, to not use ~~NOTOC~~ 
-+            if ($renderer->info['toc']) { 
-+              $oldmaxtoc = $conf['maxtoclevel']; 
-+              $conf['maxtoclevel'] = 3; 
-+            } 
-+            else { 
-+              $oldmaxtoc = -1; 
-+            } 
-+ 
-             $alpha_data = $this->_alpha_index($data, $renderer); 
-             if ((!@$n)) { 
-                 if (isset ($conf['plugin']['alphaindex']['empty_msg'])) { 
-@@ -106,31 +133,28 @@ 
-             } 
-             $alpha_data = str_replace('{{ns}}',cleanID($data[0]),$alpha_data); 
-  
--            $alpha_data = p_render('xhtml', p_get_instructions($alpha_data), $info);  
--             
--            // remove toc, section edit buttons and category tags 
--            $patterns = array('!<div class="toc">.*?(</div>\n</div>)!s', 
--                            '#<!-- SECTION \[(\d*-\d*)\] -->#e', 
--                            '!<div class="category">.*?</div>!s'); 
--            $replace  = array('','',''); 
--            $alpha_data = preg_replace($patterns, $replace, $alpha_data);       
-+            $alpha_data = p_render('xhtml', p_get_instructions($alpha_data), $info); 
-+ 
-             $renderer->doc .= '<div id="alphaindex">' ; 
-             $renderer->doc .= $ns_data; 
-             $renderer->doc .= '<hr />'; 
-             $renderer->doc .= $alpha_data; 
-             $renderer->doc .= '</div>' ; 
-+ 
-+            $conf['maxseclevel'] = $oldmaxecl; 
-+            if ( $oldmaxtoc == -1 ) $conf['maxtoclevel'] = $oldmaxtoc; 
-             return true; 
-         } 
- 
- 
- 
- 
- 
- 
-         return false; 
-     } 
-  
-     /** 
--     * Return the alphabetical index  
-+     * Return the alphabetical index 
-      * @author Hubert MOLIERE <hubert.moliere@alternet.fr> 
-      * 
-      * This function is a hack of Indexmenu _tree_menu($ns) 
-      * @author Samuele Tognini <samuele@samuele.netsons.org> 
--      
-+     * 
-      * This function is a simple hack of DokuWiki html_index($ns) 
-      * @author Andreas Gohr <andi@splitbrain.org> 
-      */ 
-@@ -138,9 +162,9 @@ 
-         global $conf; 
-         global $ID; 
-  
--        $ns = $myns[0];                                                 
-+        $ns = $myns[0]; 
-         $opts = $myns[1]; 
--     
-+ 
-         // Articles deletion configuration 
-         $articlesDeletionPatterns = array(); 
-         if(isset($conf['plugin']['alphaindex']['articles_deletion'])) { 
-@@ -149,13 +173,13 @@ 
-         } else { 
-             $articlesDeletion = false; 
-         } 
--         
-+ 
-         // Hide pages configuration 
-         $hidepages = array(); 
-         if(isset($conf['plugin']['alphaindex']['hidepages'])) { 
-             $hidepages = explode('|', $conf['plugin']['alphaindex']['hidepages']); 
-         } 
--     
-+ 
-         // template configuration 
-         if(isset($conf['plugin']['alphaindex']['title_tpl'])) { 
-             $titleTpl = $conf['plugin']['alphaindex']['title_tpl']; 
-@@ -177,25 +201,25 @@ 
-         } else { 
-             $endLetterTpl = ''; 
-         } 
--         
-+ 
-         if($ns == '.') { 
-           $ns = dirname(str_replace(':','/',$ID)); 
-           if ($ns == '.') $ns = ''; 
-         } else { 
-           $ns = cleanID($ns); 
-         } 
--         
-+ 
-         $ns  = utf8_encodeFN(str_replace(':','/',$ns)); 
-         $data = array(); 
-         search($data,$conf['datadir'],'alphaindex_search_index',$opts,"/".$ns); 
--         
-+ 
-         $nb_data = count($data); 
-         $alpha_data = array(); 
--     
-+ 
-         // alphabetical ordering 
-         for($cpt=0; $cpt<$nb_data; $cpt++) { 
-             $tmpData = $data[$cpt]['id']; 
--             
-+ 
-             $pos = strrpos(utf8_decode($tmpData), ':'); 
-             if($conf['useheading']) { 
-                 $pageName = p_get_first_heading($tmpData); 
-@@ -205,7 +229,7 @@ 
-                     } else { 
-                         $pageName = $tmpData; 
-                     } 
--                    $pageName = utf8_str_replace('_', ' ', $pageName); 
-+                    $pageName = str_replace('_', ' ', $pageName); 
-                 } 
-             } else { 
-                 if($pos != FALSE) { 
-@@ -213,14 +237,21 @@ 
-                 } else { 
-                     $pageName = $tmpData; 
-                 } 
--                $pageName = utf8_str_replace('_', ' ', $pageName); 
-+                $pageName = str_replace('_', ' ', $pageName); 
-             } 
-             $pageNameArticle = ''; 
--             
--            // if the current page is not a page to hide  
--            if(!in_array($pageName, $hidepages)) {  
-+ 
-+            // Otherwise,hhidepages doesn't work with useheading 
-+            if($pos != FALSE) { 
-+              $pageNameNS = utf8_substr($tmpData, $pos+1, utf8_strlen($tmpData)); 
-+            } else { 
-+              $pageNameNS = $tmpData; 
-+            } 
-+ 
-+            // if the current page is not a page to hide 
-+            if(!in_array($pageNameNS, $hidepages)) { 
-                 // Articles deletion 
--                if($articlesDeletion) {  
-+                if($articlesDeletion) { 
-                     foreach($articlesDeletionPatterns as $pattern) { 
-                         if(eregi($pattern, $pageName, $result)) { 
-                             $pageName = eregi_replace($pattern, '', $pageName); 
-@@ -228,7 +259,14 @@ 
-                         } 
-                     } 
-                 } 
--                // R?cup?ration de la premi?re lettre du mot et classement  
-+ 
-+                if(isset($conf['plugin']['alphaindex']['metadata_title'])) { 
-+                  $tmp = p_get_metadata($data[$cpt]['id']); 
-+                  if(isset($tmp['title'])) 
-+                    $pageName = $tmp['title']; 
-+                } 
-+ 
-+                // R?cup?ration de la premi?re lettre du mot et classement 
-                 $firstLetter = utf8_deaccent(utf8_strtolower(utf8_substr($pageName, 0, 1))); 
-                 if(is_numeric($firstLetter)) { 
-                     if(isset($conf['plugin']['alphaindex']['numerical_index'])) { 
-@@ -237,7 +275,7 @@ 
-                         $firstLetter = '0-9'; 
-                     } 
-                 } 
--                 
-+ 
-                 if(isset($conf['plugin']['alphaindex']['article_moving'])) { 
-                     $articleMoving = $conf['plugin']['alphaindex']['article_moving']; 
-                 } else { 
-@@ -248,38 +286,38 @@ 
-                 } else if (($articleMoving == 1)&&($pageNameArticle != '')) { 
-                     $pageName = $pageName.' ('.$pageNameArticle.')'; 
-                 } 
--         
-+ 
-                 $data[$cpt]['id2'] = ucfirst($pageName); 
-                 $alpha_data[$firstLetter][] = $data[$cpt]; 
-             } 
-         } 
--     
-+ 
-         // array sorting by key 
-         ksort($alpha_data); 
--     
-+ 
-         // Display of results 
--     
-+ 
-         // alphabetical index 
-         $alphaOutput .= $titleTpl."\n"; 
-         $nb_data = count($alpha_data); 
-         foreach($alpha_data as $key => $currentLetter) { 
-             // Sorting of $currentLetter array 
-             usort($currentLetter, create_function('$a, $b', "return strnatcasecmp(\$a['id2'], \$b['id2']);")); 
--             
--            $begin = utf8_str_replace("{{letter}}" ,utf8_strtoupper($key), $beginLetterTpl); 
-+ 
-+            $begin = str_replace("{{letter}}" ,utf8_strtoupper($key), $beginLetterTpl); 
-             $alphaOutput .= $begin."\n"; 
-             foreach($currentLetter as $currentLetterEntry) { 
--                $link = utf8_str_replace("{{link}}" ,$currentLetterEntry['id'], $entryTpl); 
--                $alphaOutput .= utf8_str_replace("{{name}}" ,$currentLetterEntry['id2'], $link); 
-+                $link = str_replace("{{link}}" ,$currentLetterEntry['id'], $entryTpl); 
-+                $alphaOutput .= str_replace("{{name}}" ,$currentLetterEntry['id2'], $link); 
-                 $alphaOutput .= "\n"; 
-             } 
--            $end = utf8_str_replace("{{letter}}" ,utf8_strtoupper($key), $endLetterTpl);  
-+            $end = str_replace("{{letter}}" ,utf8_strtoupper($key), $endLetterTpl); 
-             $alphaOutput .= $end."\n"; 
-         } 
--         
-+ 
-         return $alphaOutput; 
-     } 
--     
-+ 
- } //Alphaindex class end 
-  
-   /** 
-@@ -292,9 +330,9 @@ 
-    */ 
- function alphaindex_search_index(&$data,$base,$file,$type,$lvl,$opts){ 
-   $return = true; 
- 
-+ 
-   $item = array(); 
- 
-+ 
-   if($type == 'd'){ 
-     if ($opts['level'] == $lvl) $return=false; 
-     if ($opts['nons']) return $return; 
-@@ -302,24 +340,24 @@ 
-     //don't add 
-     return false; 
-   } 
- 
-+ 
-   $id = pathID($file); 
- 
-+ 
-   //check hidden 
-   if($type=='f' && isHiddenPage($id)){ 
-     return false; 
-   } 
- 
-+ 
-   //check ACL 
-   if($type=='f' && auth_quickaclcheck($id) < AUTH_READ){ 
-     return false; 
-   } 
- 
-+ 
-   //Set all pages at first level 
-   if ($opts['nons']) { 
--    $lvl=1;     
-+    $lvl=1; 
-   } 
- 
-+ 
-   $data[]=array( 'id'    => $id, 
-  'type'  => $type, 
-  'level' => $lvl, 
-@@ -327,4 +365,4 @@ 
-   return $return; 
- } 
-  
--?> 
-\ Pas de fin de ligne ? la fin du fichier. 
-+?> 
-diff -Naur alphaindex_orig/VERSION alphaindex/VERSION 
---- alphaindex_orig/VERSION 1970-01-01 01:00:00.000000000 +0100 
-+++ alphaindex/VERSION 2008-08-31 18:32:47.000000000 +0200 
-@@ -0,0 +1 @@ 
-+20080831 
-</code> 
- 
--- //[[jonesy@oryma.org|Jonesy]]//, have fun ! 
- 
->> Since it seems that this plugin is abandoned by the original author, I've built an alphaindex [[devel:darcs]] containing your patches (I had to manually correct some hunks) . You can fetch it with: 
-<code>darcs get http://samuele.netsons.org/darcs/alphaindex</code> 
->> I'll apply any new working patch published here, sent with the darcs mechanism or created by me. 
->> Next step could be to implement a better cache mechanism according for example to the [[http://samuele.netsons.org/dokuwiki/doku.php?id=dokuwiki:plugins:indexmenu:source:action|indexmenu action plugin]]. 
->> It's also possible to install it via [[plugin|plugin manager]] using this [[http://samuele.netsons.org/dokuwiki/lib/plugins/alphaindex/alphaindex.tar.gz|link]]. 
- 
->>This version only has 1 error. When activate the **articles_moving** when the article_deletion option is active, look at this example: 
-<code> 
-$conf['articles_deletion'] = '^the +|^a +|^an +' 
-$conf['articles_moving'  = 1 
-$conf['metadata_title'   = 1 
-</code> 
-If I have a page which header is 'The Rolling Stones', this page will be treated as 'Rolling Stones' instead of its real name. But the page remains in the letter "T", and not in the letter "R". 
- 
-I see in the code and I found 2 minimal errors:\\  
-Line 221 
-<code php> 
-if($this->getConf('metadata_title')) { 
-   $tmp = p_get_metadata($data[$cpt]['id']); 
-   if(isset($tmp['title'])) 
-     $pageName = $tmp['title']; 
- } 
-</code> 
-Move the entire block, just before this lines (line 211) 
-<code php> 
-PUT THE ENTIRE BLOCK JUST HERE 
-// Articles deletion 
- if(is_array($articlesDeletionPatterns)) { 
-</code> 
-This will correct the letter index, so 'The Rolling Stones' will place in the letter "R" 
  
 ===== Discussion ===== ===== Discussion =====
-It doesn't seem to update when new pages are created.  I assume it's a caching problem, but I don't know enough about DokuWiki's caching to edit my maintenance script and fix it.  Can anyone suggest a fix?  Thanks! --- //[[matt@mattandchristy.net|Matt Cooper]] 2007-05-06 18:00// 
  
->Yes, it is. Better solution is to implement the caching fix into alphaindex code (you should take look at [[devel:caching#developer_note]] for info and to some plugins examples, like [[http://samuele.netsons.org/dokuwiki/doku.php?id=dokuwiki:plugins:indexmenu:source:action|indexmenu action plugin]]). +[[.:alphaindex:discussion|Placed on separate page]]
->Or use the DokuWiki internal core, this is from indexmenu page: +
- +
->To purge cache either wait for the automatic [[config:cachetime|purge cache time]] expiration or force it through a [[devel:caching#purging_the_cache|purge=true]] request on the page that contains the indexmenu tree. +
- +
->You also might try the [[:syntax#control_macros|~~NOCACHE~~]] instruction to completely disable a specified page cache, so that you have no more to worry about purging cache. But pay attention that it could slow down the overall loading process of the page depending on the number of tree nodes. +
- +
----- +
-I've installed it in my site, so that, if the author doesn't find a better way, you can test this useful plugin  [[http://samuele.netsons.org/dokuwiki/doku.php?id=playground:playground2|here]]. +
- --- //[[samuele@samuele.netsons.org|Samuele Tognini]] 2006-05-25 03:58// +
- +
----- +
-I needed listing of namespaces with index pages only, so I make a new option ''indexes'' (goes instead of nons) which causes the plugin to generate listing from starting pages only (those are conf['start'] and page with same name as namespace). I'm attaching very simple patch. Not fully tested, just a quick hack. --- //[[t.valenta@sh.cvut.cz|Tomáš Valenta]] 2006-11-18 18:35// +
-<code diff> +
-73a74 +
->       $indexes = false; +
-90c91,93 +
-<         return array($ns,array('level' => $level,'nons' => $nons,'incol' => $incol)); +
---- +
->       // indexes option +
->       $indexes = in_array('indexes', $match); +
->         return array($ns,array('level' => $level,'nons' => $nons,'incol' => $incol,'indexes' => $indexes)); +
-293a297,298 +
->   global $conf; +
->  +
-307c312,317 +
-<   +
---- +
->   // show just index files +
->   if ($opts['indexes']) { +
->     $myns = explode(":",getNS($id)); +
->     if (end($myns)!=noNS($id) and noNS($id)!=$conf['start']) return true; +
->   } +
->  +
-</code> +
- +
----- +
-Somehow the plugin list lots of red links in my installation, might this be because it supposes that there is always a file ns1:ns2 present if there is content in the namespage ns1:ns2 (e.g. ns1:ns2:home)? If that is the case, this plugin does not support wikis that make use of default namespace linking, which is a pity. -- regards, bernhard +
- +
----- +
-I would like to suggest a feature that prints the namespace beside the page if there are several pages with the same name, e.g. +
-  > Files, (foo/) +
-  > Files (The), (bar/) +
-  > Files, (foobar/) +
-or with : too, of course +
- +
-Edit: maybe even an argument to print each namespace (alphabetically sorted) own its own above the root namespace: +
-  > ====== /Files ====== +
-  > ====== /Wiki ====== +
-  > (Root) +
- +
----- +
- +
- +
-> Hello, I use the alphaindex on [[http://jurtenrunde.de/lieder/doku.php?id=uebersicht:uebersicht/]]. I have a Namespace structure which looks like this: +
-liedtexte:t:testlied , liedtexte:b:test2 and so on. I get the index of this way: <code>{{alphaindex>[liedtexte#10][#n][|nons]}}</code>. You can see on [[http://jurtenrunde.de/lieder/doku.php?id=uebersicht:uebersicht/]] that it posts pages where they do not exist - I would like it to show only existing pages. How can I solve this problem? +
- +
----- +
-Is there a way to override global 'title_tpl' for some particular index? --- //[[subcymen@abv.bg|Stoyan]] 2008-01-06// +
- +
- +
-----+
  
-I am wondering if there is a way to make this plugin work with the XBR render plugin? What it does is repeat the index twice and omitting any other text in the site. Anyone have ideas? 
plugin/alphaindex.1312636567.txt.gz · Last modified: 2011-08-06 15:16 by lupo49

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki