/**
  * Return the TOC
  *
  * @return array
  */
 function getTOC()
 {
     $toc = array();
     foreach ($this->pages as $key => $info) {
         if (is_array($info)) {
             $toc[] = html_mktocitem('', $this->getLang($key), 1, '');
             foreach ($info as $page) {
                 $toc[] = html_mktocitem('?do=admin&page=statistics&opt=' . $page . '&f=' . $this->from . '&t=' . $this->to, $this->getLang($page), 2, '');
             }
         } else {
             $toc[] = html_mktocitem('?do=admin&page=statistics&opt=' . $key . '&f=' . $this->from . '&t=' . $this->to, $this->getLang($key), 1, '');
         }
     }
     return $toc;
 }
 /**
  * Generates a two-level table of contents for the config plugin.
  *
  * @author Ben Coburn <*****@*****.**>
  */
 function getTOC()
 {
     if (is_null($this->_config)) {
         $this->_config = new configuration($this->_file);
     }
     $this->setupLocale(true);
     $allow_debug = $GLOBALS['conf']['allowdebug'];
     // avoid global $conf; here.
     // gather toc data
     $has_undefined = false;
     $toc = array('conf' => array(), 'plugin' => array(), 'template' => null);
     foreach ($this->_config->setting as $setting) {
         if (is_a($setting, 'setting_fieldset')) {
             if (substr($setting->_key, 0, 10) == 'plugin' . CM_KEYMARKER) {
                 $toc['plugin'][] = $setting;
             } else {
                 if (substr($setting->_key, 0, 7) == 'tpl' . CM_KEYMARKER) {
                     $toc['template'] = $setting;
                 } else {
                     $toc['conf'][] = $setting;
                 }
             }
         } else {
             if (!$has_undefined && is_a($setting, 'setting_undefined')) {
                 $has_undefined = true;
             }
         }
     }
     // build toc
     $t = array();
     $t[] = html_mktocitem('configuration_manager', $this->getLang('_configuration_manager'), 1);
     $t[] = html_mktocitem('dokuwiki_settings', $this->getLang('_header_dokuwiki'), 1);
     foreach ($toc['conf'] as $setting) {
         $name = $setting->prompt($this);
         $t[] = html_mktocitem($setting->_key, $name, 2);
     }
     if (!empty($toc['plugin'])) {
         $t[] = html_mktocitem('plugin_settings', $this->getLang('_header_plugin'), 1);
     }
     foreach ($toc['plugin'] as $setting) {
         $name = $setting->prompt($this);
         $t[] = html_mktocitem($setting->_key, $name, 2);
     }
     if (isset($toc['template'])) {
         $t[] = html_mktocitem('template_settings', $this->getLang('_header_template'), 1);
         $setting = $toc['template'];
         $name = $setting->prompt($this);
         $t[] = html_mktocitem($setting->_key, $name, 2);
     }
     if ($has_undefined && $allow_debug) {
         $t[] = html_mktocitem('undefined_settings', $this->getLang('_header_undefined'), 1);
     }
     return $t;
 }
Beispiel #3
0
 /**
  * Add an item to the TOC
  *
  * @param string $id       the hash link
  * @param string $text     the text to display
  * @param int    $level    the nesting level
  */
 function toc_additem($id, $text, $level)
 {
     global $conf;
     //handle TOC
     if ($level >= $conf['toptoclevel'] && $level <= $conf['maxtoclevel']) {
         $this->toc[] = html_mktocitem($id, $text, $level - $conf['toptoclevel'] + 1);
     }
 }
 /**
  * Adds all available schemas to the Table of Contents
  *
  * @return array
  */
 public function getTOC()
 {
     global $ID;
     $toc = array();
     $link = wl($ID, array('do' => 'admin', 'page' => 'struct_assignments'));
     $toc[] = html_mktocitem($link, $this->getLang('menu_assignments'), 0, '');
     $slink = wl($ID, array('do' => 'admin', 'page' => 'struct_schemas'));
     $toc[] = html_mktocitem($slink, $this->getLang('menu'), 0, '');
     $tables = Schema::getAll('page');
     if ($tables) {
         $toc[] = html_mktocitem($slink, $this->getLang('page schema'), 1, '');
         foreach ($tables as $table) {
             $link = wl($ID, array('do' => 'admin', 'page' => 'struct_schemas', 'table' => $table));
             $toc[] = html_mktocitem($link, hsc($table), 2, '');
         }
     }
     $tables = Schema::getAll('lookup');
     if ($tables) {
         $toc[] = html_mktocitem($slink, $this->getLang('lookup schema'), 1, '');
         foreach ($tables as $table) {
             $link = wl($ID, array('do' => 'admin', 'page' => 'struct_schemas', 'table' => $table));
             $toc[] = html_mktocitem($link, hsc($table), 2, '');
         }
     }
     return $toc;
 }