示例#1
0
function MakeUploadName($pagename, $x)
{
    global $UploadNameChars, $MakeUploadNamePatterns;
    SDV($UploadNameChars, "-\\w. ");
    SDV($MakeUploadNamePatterns, array("/[^{$UploadNameChars}]/" => '', '/\\.[^.]*$/' => PCCF('return strtolower($m[0]);'), '/^[^[:alnum:]_]+/' => '', '/[^[:alnum:]_]+$/' => ''));
    return PPRA($MakeUploadNamePatterns, $x);
}
示例#2
0
function SaveAttributes($pagename,&$page,&$new) {
  global $EnablePost, $LinkTargets, $SaveAttrPatterns, $PCache,
    $SaveProperties;
  if (!$EnablePost) return;
  $text = PPRA($SaveAttrPatterns, $new['text']);
  $LinkTargets = array();
  $html = MarkupToHTML($pagename,$text);
  $new['targets'] = implode(',',array_keys((array)$LinkTargets));
  $p = & $PCache[$pagename];
  foreach((array)$SaveProperties as $k) {
    if (@$p["=p_$k"]) $new[$k] = $p["=p_$k"];
    else unset($new[$k]);
  }
  unset($new['excerpt']);
}
示例#3
0
function bi_SaveTags($body, $user_tags, $pn, $mode = 'save')
{
    global $bi_TagSeparator, $bi_MakePageNamePatterns;
    if ($mode == 'display') {
        $page = @RetrieveAuthPage($pn, 'read', false, READPAGE_CURRENT);
        return $page['targets'] ? '(:includesection "#tag-commalist-pagelist links=' . $page['targets'] . '":)' : '';
    }
    // Read tags from body, strip [[!...]]
    if ($body) {
        $bodyTags = preg_match_all('/\\[\\[\\!(.*?)\\]\\]/', $body, $match) ? $match[1] : array();
    }
    //array of tags contained in [[!...]] markup.
    // Make sure tag-field entries are in standard separated format, and place in array
    if ($user_tags) {
        $fieldTags = explode($bi_TagSeparator, preg_replace('/' . trim($bi_TagSeparator) . '\\s*/', $bi_TagSeparator, trim($user_tags)));
    }
    // Concatenate the tag-field tags, with those in the body, PPRA removes all non-pagename chars
    $allTags = PPRA($bi_MakePageNamePatterns, array_unique(array_merge((array) $fieldTags, (array) $bodyTags)));
    sort($allTags);
    return $allTags ? '[[!' . implode(']]' . $bi_TagSeparator . '[[!', $allTags) . ']]' : '';
}