Text_Wiki
[ class tree: Text_Wiki ] [ index: Text_Wiki ] [ all elements ]

Source for file Function.php

Documentation is available at Function.php

  1. <?php
  2.  
  3. // $Id: Function.php,v 1.3 2004/10/08 17:46:47 pmjones Exp $
  4.  
  5. class Text_Wiki_Render_Xhtml_Function extends Text_Wiki_Render {
  6.     
  7.     var $conf = array(
  8.         // list separator for params and throws
  9.         'list_sep' => ', ',
  10.         
  11.         // the "main" format string
  12.         'format_main' => '%access %return <b>%name</b> ( %params ) %throws',
  13.         
  14.         // the looped format string for required params
  15.         'format_param' => '%type <i>%descr</i>',
  16.         
  17.         // the looped format string for params with default values
  18.         'format_paramd' => '[%type <i>%descr</i> default %default]',
  19.         
  20.         // the looped format string for throws
  21.         'format_throws' => '<b>throws</b> %type <i>%descr</i>'
  22.     );
  23.     
  24.     /**
  25.     * 
  26.     * Renders a token into text matching the requested format.
  27.     * 
  28.     * @access public
  29.     * 
  30.     * @param array $options The "options" portion of the token (second
  31.     *  element).
  32.     * 
  33.     * @return string The text rendered from the token options.
  34.     * 
  35.     */
  36.     
  37.     function token($options)
  38.     {
  39.         extract($options)// name, access, return, params, throws
  40.         
  41.         // build the baseline output
  42.         $output $this->conf['format_main'];
  43.         $output str_replace('%access'htmlspecialchars($access)$output);
  44.         $output str_replace('%return'htmlspecialchars($return)$output);
  45.         $output str_replace('%name'htmlspecialchars($name)$output);
  46.         
  47.         // build the set of params
  48.         $list = array();
  49.         foreach ($params as $key => $val{
  50.             
  51.             // is there a default value?
  52.             if ($val['default']{
  53.                 $tmp $this->conf['format_paramd'];
  54.             else {
  55.                 $tmp $this->conf['format_param'];
  56.             }
  57.             
  58.             // add the param elements
  59.             $tmp str_replace('%type'htmlspecialchars($val['type'])$tmp);
  60.             $tmp str_replace('%descr'htmlspecialchars($val['descr'])$tmp);
  61.             $tmp str_replace('%default'htmlspecialchars($val['default'])$tmp);
  62.             $list[$tmp;
  63.         }
  64.         
  65.         // insert params into output
  66.         $tmp implode($this->conf['list_sep']$list);
  67.         $output str_replace('%params'$tmp$output);
  68.         
  69.         // build the set of throws
  70.         $list = array();
  71.         foreach ($throws as $key => $val{
  72.                $tmp $this->conf['format_throws'];
  73.             $tmp str_replace('%type'htmlspecialchars($val['type'])$tmp);
  74.             $tmp str_replace('%descr'htmlspecialchars($val['descr'])$tmp);
  75.             $list[$tmp;
  76.         }
  77.         
  78.         // insert throws into output
  79.         $tmp implode($this->conf['list_sep']$list);
  80.         $output str_replace('%throws'$tmp$output);
  81.         
  82.         // close the div and return the output
  83.         $output .= '</div>';
  84.         return "\n$output\n\n";
  85.     }
  86. }
  87. ?>

Documentation generated on Mon, 11 Mar 2019 13:56:52 -0400 by phpDocumentor 1.4.4. PEAR Logo Copyright © PHP Group 2004.