Exemplo n.º 1
0
function PrintFmt($pagename,$fmt) {
  global $HTTPHeaders,$FmtV;
  if (is_array($fmt)) 
    { foreach($fmt as $f) PrintFmt($pagename,$f); return; }
  if ($fmt == 'headers:') {
    foreach($HTTPHeaders as $h) (@$sent++) ? @header($h) : header($h);
    return;
  }
  $x = FmtPageName($fmt,$pagename);
  if (strncmp($fmt, 'function:', 9) == 0 &&
      preg_match('/^function:(\S+)\s*(.*)$/s', $x, $match) &&
      function_exists($match[1]))
    { $match[1]($pagename,$match[2]); return; }
  if (strncmp($fmt, 'file:', 5) == 0 && preg_match("/^file:(.+)/s",$x,$match)) {
    $filelist = preg_split('/[\\s]+/',$match[1],-1,PREG_SPLIT_NO_EMPTY);
    foreach($filelist as $f) {
      if (file_exists($f)) { include($f); return; }
    }
    return;
  }
  if (preg_match("/^markup:(.*)$/",$x,$match))
    { print MarkupToHTML($pagename,$match[1]); return; }
  if (preg_match('/^wiki:(.+)$/', $x, $match)) 
    { PrintWikiPage($pagename, $match[1], 'read'); return; }
  if (preg_match('/^page:(.+)$/', $x, $match)) 
    { PrintWikiPage($pagename, $match[1], ''); return; }
  echo $x;
}
Exemplo n.º 2
0
function PrintFmt($pagename, $fmt)
{
    global $HTTPHeaders, $FmtV;
    if (is_array($fmt)) {
        foreach ($fmt as $f) {
            PrintFmt($pagename, $f);
        }
        return;
    }
    $x = FmtPageName($fmt, $pagename);
    if (preg_match("/^markup:(.*)\$/", $x, $match)) {
        print MarkupToHTML($pagename, $match[1]);
        return;
    }
    if (preg_match("/^headers:/", $x)) {
        foreach ($HTTPHeaders as $h) {
            @$sent++ ? @header($h) : header($h);
        }
        return;
    }
    if (preg_match('/^function:(\\S+)\\s*(.*)$/s', $x, $match) && function_exists($match[1])) {
        $match[1]($pagename, $match[2]);
        return;
    }
    if (preg_match('/^wiki:(.+)$/', $x, $match)) {
        PrintWikiPage($pagename, $match[1]);
        return;
    }
    echo $x;
}