merge bundled libs with 1.7.8
fixing idents spaces tabs and version numbers for .current_version file
This commit is contained in:
parent
c61cf9d10a
commit
f4ec48675b
@ -1,12 +1,14 @@
|
||||
Cache_Lite 1.5.1
|
||||
HTTP_Request 1.2.4
|
||||
HTTP_Request2 2.2.1
|
||||
Net_CheckIP 1.1
|
||||
Net_Socket 1.0.6
|
||||
Net_URL 1.0.14
|
||||
PEAR 1.9.4
|
||||
Text_Wiki 0.25.0
|
||||
XML_RPC 1.4.0
|
||||
Onyx 1.0 (customized)
|
||||
Smarty 2.6.9
|
||||
Net_DNSBL 1.0.0
|
||||
Cache_Lite 1.54
|
||||
HTTP_Request 1.43
|
||||
HTTP_Request2 2.2.1
|
||||
Net_CheckIP 1.5
|
||||
Net_DNSBL 1.4
|
||||
Net_Socket 1.24
|
||||
Net_URL 1.36
|
||||
Net_SURBL 1.4
|
||||
Onyx (customized) 1.0
|
||||
PEAR 1.83
|
||||
SimplePie 1.2.1
|
||||
Smarty 3.1.18
|
||||
Text_Wiki 1.27
|
||||
XML_RPC 1.5.5
|
||||
|
@ -376,8 +376,8 @@ class Cache_Lite
|
||||
}
|
||||
}
|
||||
if ($this->_automaticCleaningFactor>0 && ($this->_automaticCleaningFactor==1 || mt_rand(1, $this->_automaticCleaningFactor)==1)) {
|
||||
$this->clean(false, 'old');
|
||||
}
|
||||
$this->clean(false, 'old');
|
||||
}
|
||||
if ($this->_writeControl) {
|
||||
$res = $this->_writeAndControl($data);
|
||||
if (is_bool($res)) {
|
||||
@ -599,7 +599,7 @@ class Cache_Lite
|
||||
$motif = ($group) ? 'cache_'.$group.'_' : 'cache_';
|
||||
}
|
||||
if ($this->_memoryCaching) {
|
||||
foreach($this->_memoryCachingArray as $key => $v) {
|
||||
foreach($this->_memoryCachingArray as $key => $v) {
|
||||
if (strpos($key, $motif) !== false) {
|
||||
unset($this->_memoryCachingArray[$key]);
|
||||
$this->_memoryCachingCounter = $this->_memoryCachingCounter - 1;
|
||||
|
@ -89,7 +89,7 @@ class HTTP_Request {
|
||||
* @var string
|
||||
*/
|
||||
var $_user;
|
||||
|
||||
|
||||
/**
|
||||
* Basic Auth Password
|
||||
* @var string
|
||||
@ -101,25 +101,25 @@ class HTTP_Request {
|
||||
* @var object Net_Socket
|
||||
*/
|
||||
var $_sock;
|
||||
|
||||
|
||||
/**
|
||||
* Proxy server
|
||||
* @var string
|
||||
*/
|
||||
var $_proxy_host;
|
||||
|
||||
|
||||
/**
|
||||
* Proxy port
|
||||
* @var integer
|
||||
*/
|
||||
var $_proxy_port;
|
||||
|
||||
|
||||
/**
|
||||
* Proxy username
|
||||
* @var string
|
||||
*/
|
||||
var $_proxy_user;
|
||||
|
||||
|
||||
/**
|
||||
* Proxy password
|
||||
* @var string
|
||||
@ -133,7 +133,7 @@ class HTTP_Request {
|
||||
var $_postData;
|
||||
|
||||
/**
|
||||
* Request body
|
||||
* Request body
|
||||
* @var string
|
||||
*/
|
||||
var $_body;
|
||||
@ -145,7 +145,7 @@ class HTTP_Request {
|
||||
var $_bodyDisallowed = array('TRACE');
|
||||
|
||||
/**
|
||||
* Files to post
|
||||
* Files to post
|
||||
* @var array
|
||||
*/
|
||||
var $_postFiles = array();
|
||||
@ -155,25 +155,25 @@ class HTTP_Request {
|
||||
* @var float
|
||||
*/
|
||||
var $_timeout;
|
||||
|
||||
|
||||
/**
|
||||
* HTTP_Response object
|
||||
* @var object HTTP_Response
|
||||
*/
|
||||
var $_response;
|
||||
|
||||
|
||||
/**
|
||||
* Whether to allow redirects
|
||||
* @var boolean
|
||||
*/
|
||||
var $_allowRedirects;
|
||||
|
||||
|
||||
/**
|
||||
* Maximum redirects allowed
|
||||
* @var integer
|
||||
*/
|
||||
var $_maxRedirects;
|
||||
|
||||
|
||||
/**
|
||||
* Current number of redirects
|
||||
* @var integer
|
||||
@ -193,7 +193,7 @@ class HTTP_Request {
|
||||
var $_listeners = array();
|
||||
|
||||
/**
|
||||
* Whether to save response body in response object property
|
||||
* Whether to save response body in response object property
|
||||
* @var bool
|
||||
*/
|
||||
var $_saveBody = true;
|
||||
@ -286,7 +286,7 @@ class HTTP_Request {
|
||||
$this->addHeader('Accept-Encoding', 'gzip');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Generates a Host header for HTTP/1.1 requests
|
||||
*
|
||||
@ -303,14 +303,14 @@ class HTTP_Request {
|
||||
|
||||
} elseif ($this->_url->port == 443 AND strcasecmp($this->_url->protocol, 'https') == 0 AND strpos($this->_url->url, ':443') !== false) {
|
||||
$host = $this->_url->host . ':' . $this->_url->port;
|
||||
|
||||
|
||||
} else {
|
||||
$host = $this->_url->host;
|
||||
}
|
||||
|
||||
return $host;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Resets the object to its initial state (DEPRECATED).
|
||||
* Takes the same parameters as the constructor.
|
||||
@ -344,7 +344,7 @@ class HTTP_Request {
|
||||
$this->addHeader('Host', $this->_generateHostHeader());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Sets a proxy to be used
|
||||
*
|
||||
@ -438,8 +438,8 @@ class HTTP_Request {
|
||||
function addQueryString($name, $value, $preencoded = false)
|
||||
{
|
||||
$this->_url->addQueryString($name, $value, $preencoded);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the querystring to literally what you supply
|
||||
*
|
||||
@ -546,7 +546,7 @@ class HTTP_Request {
|
||||
}
|
||||
|
||||
/**
|
||||
* Clears any postdata that has been added (DEPRECATED).
|
||||
* Clears any postdata that has been added (DEPRECATED).
|
||||
*
|
||||
* Useful for multiple request scenarios.
|
||||
*
|
||||
@ -570,9 +570,9 @@ class HTTP_Request {
|
||||
$cookies = isset($this->_requestHeaders['cookie']) ? $this->_requestHeaders['cookie']. '; ' : '';
|
||||
$this->addHeader('Cookie', $cookies . $name . '=' . $value);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Clears any cookies that have been added (DEPRECATED).
|
||||
* Clears any cookies that have been added (DEPRECATED).
|
||||
*
|
||||
* Useful for multiple request scenarios
|
||||
*
|
||||
@ -645,7 +645,7 @@ class HTTP_Request {
|
||||
AND $this->getResponseCode() < 399
|
||||
AND !empty($this->_response->_headers['location'])) {
|
||||
|
||||
|
||||
|
||||
$redirect = $this->_response->_headers['location'];
|
||||
|
||||
// Absolute URL
|
||||
@ -655,7 +655,7 @@ class HTTP_Request {
|
||||
// Absolute path
|
||||
} elseif ($redirect[0] == '/') {
|
||||
$this->_url->path = $redirect;
|
||||
|
||||
|
||||
// Relative path
|
||||
} elseif (substr($redirect, 0, 3) == '../' OR substr($redirect, 0, 2) == './') {
|
||||
if (substr($this->_url->path, -1) == '/') {
|
||||
@ -665,7 +665,7 @@ class HTTP_Request {
|
||||
}
|
||||
$redirect = Net_URL::resolvePath($redirect);
|
||||
$this->_url->path = $redirect;
|
||||
|
||||
|
||||
// Filename, no path
|
||||
} else {
|
||||
if (substr($this->_url->path, -1) == '/') {
|
||||
@ -842,7 +842,7 @@ class HTTP_Request {
|
||||
$request .= 'Content-Length: ' . strlen($this->_body) . "\r\n\r\n";
|
||||
$request .= $this->_body;
|
||||
}
|
||||
|
||||
|
||||
return $request;
|
||||
}
|
||||
|
||||
@ -894,7 +894,7 @@ class HTTP_Request {
|
||||
|
||||
|
||||
/**
|
||||
* Removes a Listener from the list of listeners
|
||||
* Removes a Listener from the list of listeners
|
||||
*
|
||||
* @param object HTTP_Request_Listener instance to detach
|
||||
* @return boolean whether the listener was successfully detached
|
||||
@ -951,13 +951,13 @@ class HTTP_Response
|
||||
* @var string
|
||||
*/
|
||||
var $_protocol;
|
||||
|
||||
|
||||
/**
|
||||
* Return code
|
||||
* @var string
|
||||
*/
|
||||
var $_code;
|
||||
|
||||
|
||||
/**
|
||||
* Response headers
|
||||
* @var array
|
||||
@ -965,7 +965,7 @@ class HTTP_Response
|
||||
var $_headers;
|
||||
|
||||
/**
|
||||
* Cookies set in response
|
||||
* Cookies set in response
|
||||
* @var array
|
||||
*/
|
||||
var $_cookies;
|
||||
@ -1078,7 +1078,7 @@ class HTTP_Response
|
||||
list($headername, $headervalue) = explode(':', $header, 2);
|
||||
$headername = strtolower($headername);
|
||||
$headervalue = ltrim($headervalue);
|
||||
|
||||
|
||||
if ('set-cookie' != $headername) {
|
||||
if (isset($this->_headers[$headername])) {
|
||||
$this->_headers[$headername] .= ',' . $headervalue;
|
||||
@ -1154,7 +1154,7 @@ class HTTP_Response
|
||||
if (0 == $this->_chunkLength) {
|
||||
$line = $this->_sock->readLine();
|
||||
if (preg_match('/^([0-9a-f]+)/i', $line, $matches)) {
|
||||
$this->_chunkLength = hexdec($matches[1]);
|
||||
$this->_chunkLength = hexdec($matches[1]);
|
||||
// Chunk with zero length indicates the end
|
||||
if (0 == $this->_chunkLength) {
|
||||
$this->_sock->readLine(); // make this an eof()
|
||||
|
@ -122,12 +122,12 @@ class ONYX_RSS
|
||||
($file && file_exists($file) && $time <= $this->rss['cache_age'] && $mod >= (time() - ($this->rss['cache_age'] * 60))))
|
||||
{
|
||||
clearstatcache();
|
||||
|
||||
|
||||
require_once S9Y_PEAR_PATH . 'HTTP/Request.php';
|
||||
serendipity_request_start();
|
||||
$req = new HTTP_Request($uri, array('allowRedirects' => true, 'maxRedirects' => 5));
|
||||
$res = $req->sendRequest();
|
||||
|
||||
|
||||
if (PEAR::isError($res) || $req->getResponseCode() != '200')
|
||||
{
|
||||
serendipity_request_end();
|
||||
|
@ -60,15 +60,15 @@ class Text_Wiki_Parse_Code extends Text_Wiki_Parse {
|
||||
'attr' => array('type' => '')
|
||||
);
|
||||
} else {
|
||||
// get the attributes...
|
||||
$attr = $this->getAttrs($args);
|
||||
|
||||
// ... and make sure we have a 'type'
|
||||
if (! isset($attr['type'])) {
|
||||
$attr['type'] = '';
|
||||
}
|
||||
|
||||
// retain the options
|
||||
// get the attributes...
|
||||
$attr = $this->getAttrs($args);
|
||||
|
||||
// ... and make sure we have a 'type'
|
||||
if (! isset($attr['type'])) {
|
||||
$attr['type'] = '';
|
||||
}
|
||||
|
||||
// retain the options
|
||||
$options = array(
|
||||
'text' => $matches[3],
|
||||
'attr' => $attr
|
||||
|
@ -5,7 +5,7 @@
|
||||
class Text_Wiki_Render_Xhtml_Function extends Text_Wiki_Render {
|
||||
|
||||
var $conf = array(
|
||||
// list separator for params and throws
|
||||
// list separator for params and throws
|
||||
'list_sep' => ', ',
|
||||
|
||||
// the "main" format string
|
||||
|
@ -39,9 +39,9 @@ class Text_Wiki_Render_Xhtml_Wikilink extends Text_Wiki_Render {
|
||||
if (isset($this->conf['exists_callback'])) {
|
||||
$callback =& $this->conf['exists_callback'];
|
||||
} else {
|
||||
$callback = false;
|
||||
$callback = false;
|
||||
}
|
||||
|
||||
|
||||
if ($callback) {
|
||||
// use the callback function
|
||||
$exists = call_user_func($callback, $page);
|
||||
|
@ -292,54 +292,54 @@ class Text_Wiki_Rule {
|
||||
|
||||
/**
|
||||
*
|
||||
* Simple method to extract 'option="value"' portions of wiki markup,
|
||||
* typically used only in macros.
|
||||
*
|
||||
* The syntax is pretty strict; there can be no spaces between the
|
||||
* option name, the equals, and the first double-quote; the value
|
||||
* must be surrounded by double-quotes. You can escape characters in
|
||||
* the value with a backslash, and the backslash will be stripped for
|
||||
* you.
|
||||
*
|
||||
* @access public
|
||||
*
|
||||
* @param string $text The "macro options" portion of macro markup.
|
||||
*
|
||||
* @return array An associative array of key-value pairs where the
|
||||
* key is the option name and the value is the option value.
|
||||
* Simple method to extract 'option="value"' portions of wiki markup,
|
||||
* typically used only in macros.
|
||||
*
|
||||
* The syntax is pretty strict; there can be no spaces between the
|
||||
* option name, the equals, and the first double-quote; the value
|
||||
* must be surrounded by double-quotes. You can escape characters in
|
||||
* the value with a backslash, and the backslash will be stripped for
|
||||
* you.
|
||||
*
|
||||
* @access public
|
||||
*
|
||||
* @param string $text The "macro options" portion of macro markup.
|
||||
*
|
||||
* @return array An associative array of key-value pairs where the
|
||||
* key is the option name and the value is the option value.
|
||||
*
|
||||
*/
|
||||
|
||||
function getMacroArgs($text)
|
||||
{
|
||||
// find the =" sections;
|
||||
$tmp = explode('="', trim($text));
|
||||
|
||||
// basic setup
|
||||
$k = count($tmp) - 1;
|
||||
$arg = array();
|
||||
$key = null;
|
||||
|
||||
// loop through the sections
|
||||
foreach ($tmp as $i => $val) {
|
||||
|
||||
// first element is always the first key
|
||||
if ($i == 0) {
|
||||
$key = trim($val);
|
||||
continue;
|
||||
}
|
||||
|
||||
// find the last double-quote in the value.
|
||||
// the part to the left is the value for the last key,
|
||||
// the part to the right is the next key name
|
||||
$pos = strrpos($val, '"');
|
||||
$arg[$key] = stripslashes(substr($val, 0, $pos));
|
||||
$key = trim(substr($val, $pos+1));
|
||||
|
||||
}
|
||||
|
||||
return $arg;
|
||||
|
||||
// find the =" sections;
|
||||
$tmp = explode('="', trim($text));
|
||||
|
||||
// basic setup
|
||||
$k = count($tmp) - 1;
|
||||
$arg = array();
|
||||
$key = null;
|
||||
|
||||
// loop through the sections
|
||||
foreach ($tmp as $i => $val) {
|
||||
|
||||
// first element is always the first key
|
||||
if ($i == 0) {
|
||||
$key = trim($val);
|
||||
continue;
|
||||
}
|
||||
|
||||
// find the last double-quote in the value.
|
||||
// the part to the left is the value for the last key,
|
||||
// the part to the right is the next key name
|
||||
$pos = strrpos($val, '"');
|
||||
$arg[$key] = stripslashes(substr($val, 0, $pos));
|
||||
$key = trim(substr($val, $pos+1));
|
||||
|
||||
}
|
||||
|
||||
return $arg;
|
||||
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
@ -189,21 +189,21 @@ class Text_Wiki_Rule_blockquote extends Text_Wiki_Rule {
|
||||
{
|
||||
$type = $options['type'];
|
||||
$level = $options['level'];
|
||||
|
||||
// set up indenting so that the results look nice; we do this
|
||||
// in two steps to avoid str_pad mathematics. ;-)
|
||||
$pad = str_pad('', $level, "\t");
|
||||
$pad = str_replace("\t", ' ', $pad);
|
||||
|
||||
// starting
|
||||
if ($type == 'start') {
|
||||
return "$pad<blockquote>";
|
||||
}
|
||||
|
||||
// ending
|
||||
if ($type == 'end') {
|
||||
return $pad . "</blockquote>\n";
|
||||
}
|
||||
|
||||
// set up indenting so that the results look nice; we do this
|
||||
// in two steps to avoid str_pad mathematics. ;-)
|
||||
$pad = str_pad('', $level, "\t");
|
||||
$pad = str_replace("\t", ' ', $pad);
|
||||
|
||||
// starting
|
||||
if ($type == 'start') {
|
||||
return "$pad<blockquote>";
|
||||
}
|
||||
|
||||
// ending
|
||||
if ($type == 'end') {
|
||||
return $pad . "</blockquote>\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
@ -84,15 +84,15 @@ class Text_Wiki_Rule_center extends Text_Wiki_Rule {
|
||||
|
||||
function renderXhtml($options)
|
||||
{
|
||||
if ($options['type'] == 'start') {
|
||||
//return "\n<center>\n";
|
||||
return '<div style="text-align: center;">';
|
||||
}
|
||||
|
||||
if ($options['type'] == 'end') {
|
||||
//return "</center>\n";
|
||||
return '</div>';
|
||||
}
|
||||
if ($options['type'] == 'start') {
|
||||
//return "\n<center>\n";
|
||||
return '<div style="text-align: center;">';
|
||||
}
|
||||
|
||||
if ($options['type'] == 'end') {
|
||||
//return "</center>\n";
|
||||
return '</div>';
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
@ -35,8 +35,8 @@
|
||||
*/
|
||||
|
||||
class Text_Wiki_Rule_code extends Text_Wiki_Rule {
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* The regular expression used to find source text matching this
|
||||
@ -47,10 +47,10 @@ class Text_Wiki_Rule_code extends Text_Wiki_Rule {
|
||||
* @var string
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
var $regex = '/^(\<code( .+)?\>)\n(.+)\n(\<\/code\>)(\s|$)/Umsi';
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Generates a token entry for the matched text. Token options are:
|
||||
@ -65,12 +65,12 @@ class Text_Wiki_Rule_code extends Text_Wiki_Rule {
|
||||
* the source text.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function process(&$matches)
|
||||
{
|
||||
// are there additional arguments?
|
||||
$args = trim($matches[2]);
|
||||
|
||||
|
||||
if ($args == '') {
|
||||
$options = array(
|
||||
'text' => $matches[3],
|
||||
@ -82,11 +82,11 @@ class Text_Wiki_Rule_code extends Text_Wiki_Rule {
|
||||
'args' => $this->getMacroArgs($args)
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
return $this->addToken($options) . $matches[5];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Renders a token into text matching the requested format.
|
||||
@ -99,36 +99,36 @@ class Text_Wiki_Rule_code extends Text_Wiki_Rule {
|
||||
* @return string The text rendered from the token options.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function renderXhtml($options)
|
||||
{
|
||||
// trim opening and closing whitespace
|
||||
$text = trim($options['text']);
|
||||
$args = $options['args'];
|
||||
|
||||
|
||||
if (strtolower($args['type']) == 'php') {
|
||||
|
||||
// PHP code example
|
||||
|
||||
|
||||
// PHP code example
|
||||
|
||||
// add the PHP tags
|
||||
$text = "<?php\n" . $options['text'] . "\n?>"; // <?php
|
||||
|
||||
|
||||
// convert tabs to four spaces
|
||||
$text = str_replace("\t", " ", $text);
|
||||
|
||||
|
||||
// colorize the code block (also converts HTML entities and adds
|
||||
// <code>...</code> tags)
|
||||
ob_start();
|
||||
highlight_string($text);
|
||||
$text = ob_get_contents();
|
||||
ob_end_clean();
|
||||
|
||||
|
||||
// replace <br /> tags with simple newlines
|
||||
//$text = str_replace("<br />", "\n", $text);
|
||||
|
||||
|
||||
// replace non-breaking space with simple spaces
|
||||
//$text = str_replace(" ", " ", $text);
|
||||
|
||||
|
||||
// replace <br /> tags with simple newlines
|
||||
// replace non-breaking space with simple spaces
|
||||
// translate old HTML to new XHTML
|
||||
@ -141,18 +141,18 @@ class Text_Wiki_Rule_code extends Text_Wiki_Rule {
|
||||
'color="' => 'style="color:'
|
||||
);
|
||||
$text = strtr($text, $map);
|
||||
|
||||
|
||||
// get rid of the last newline inside the code block
|
||||
// (becuase higlight_string puts one there)
|
||||
if (substr($text, -8) == "\n</code>") {
|
||||
$text = substr($text, 0, -8) . "</code>";
|
||||
}
|
||||
|
||||
|
||||
// done
|
||||
$text = "<pre>$text</pre>";
|
||||
|
||||
|
||||
} elseif (strtolower($args['type']) == 'html') {
|
||||
|
||||
|
||||
// HTML code example:
|
||||
// add <html> opening and closing tags,
|
||||
// convert tabs to four spaces,
|
||||
@ -161,7 +161,7 @@ class Text_Wiki_Rule_code extends Text_Wiki_Rule {
|
||||
$text = "<html>\n$text\n</html>";
|
||||
$text = htmlentities($text);
|
||||
$text = "<pre><code>$text</code></pre>";
|
||||
|
||||
|
||||
} else {
|
||||
// generic code example:
|
||||
// convert tabs to four spaces,
|
||||
@ -170,7 +170,7 @@ class Text_Wiki_Rule_code extends Text_Wiki_Rule {
|
||||
$text = htmlentities($text);
|
||||
$text = "<pre><code>$text</code></pre>";
|
||||
}
|
||||
|
||||
|
||||
return "\n$text\n";
|
||||
}
|
||||
}
|
||||
|
@ -88,17 +88,17 @@ class Text_Wiki_Rule_colortext extends Text_Wiki_Rule {
|
||||
function process(&$matches)
|
||||
{
|
||||
$start = $this->addToken(
|
||||
array(
|
||||
'type' => 'start',
|
||||
'color' => $matches[1]
|
||||
)
|
||||
array(
|
||||
'type' => 'start',
|
||||
'color' => $matches[1]
|
||||
)
|
||||
);
|
||||
|
||||
$end = $this->addToken(
|
||||
array(
|
||||
'type' => 'end',
|
||||
'color' => $matches[1]
|
||||
)
|
||||
array(
|
||||
'type' => 'end',
|
||||
'color' => $matches[1]
|
||||
)
|
||||
);
|
||||
|
||||
return $start . $matches[2] . $end;
|
||||
|
@ -91,12 +91,12 @@ class Text_Wiki_Rule_embed extends Text_Wiki_Rule {
|
||||
|
||||
function renderXhtml($options)
|
||||
{
|
||||
$file = $this->_conf['base'] . $options['path'];
|
||||
ob_start();
|
||||
include($file);
|
||||
$output = ob_get_contents();
|
||||
ob_end_clean();
|
||||
return $output;
|
||||
}
|
||||
$file = $this->_conf['base'] . $options['path'];
|
||||
ob_start();
|
||||
include($file);
|
||||
$output = ob_get_contents();
|
||||
ob_end_clean();
|
||||
return $output;
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
@ -91,13 +91,13 @@ class Text_Wiki_Rule_emphasis extends Text_Wiki_Rule {
|
||||
|
||||
function renderXhtml($options)
|
||||
{
|
||||
if ($options['type'] == 'start') {
|
||||
return '<em>';
|
||||
}
|
||||
|
||||
if ($options['type'] == 'end') {
|
||||
return '</em>';
|
||||
}
|
||||
if ($options['type'] == 'start') {
|
||||
return '<em>';
|
||||
}
|
||||
|
||||
if ($options['type'] == 'end') {
|
||||
return '</em>';
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
@ -151,12 +151,12 @@ class Text_Wiki_Rule_freelink extends Text_Wiki_Rule {
|
||||
// the page exists, show a link to the page
|
||||
$href = $this->_conf['view_url'];
|
||||
if (strpos($href, '%s') === false) {
|
||||
// use the old form
|
||||
$href = $href . $page . '#' . $anchor;
|
||||
} else {
|
||||
// use the new form
|
||||
$href = sprintf($href, $page . '#' . $anchor);
|
||||
}
|
||||
// use the old form
|
||||
$href = $href . $page . '#' . $anchor;
|
||||
} else {
|
||||
// use the new form
|
||||
$href = sprintf($href, $page . '#' . $anchor);
|
||||
}
|
||||
return "<a href=\"$href\">$text</a>";
|
||||
|
||||
} else {
|
||||
@ -165,12 +165,12 @@ class Text_Wiki_Rule_freelink extends Text_Wiki_Rule {
|
||||
// the "new page" text
|
||||
$href = $this->_conf['new_url'];
|
||||
if (strpos($href, '%s') === false) {
|
||||
// use the old form
|
||||
$href = $href . $page;
|
||||
} else {
|
||||
// use the new form
|
||||
$href = sprintf($href, $page);
|
||||
}
|
||||
// use the old form
|
||||
$href = $href . $page;
|
||||
} else {
|
||||
// use the new form
|
||||
$href = sprintf($href, $page);
|
||||
}
|
||||
return $text . "<a href=\"$href\">{$this->_conf['new_text']}</a>";
|
||||
|
||||
}
|
||||
|
@ -73,20 +73,20 @@ class Text_Wiki_Rule_image extends Text_Wiki_Rule {
|
||||
|
||||
function process(&$matches)
|
||||
{
|
||||
$pos = strpos($matches[2], ' ');
|
||||
|
||||
if ($pos === false) {
|
||||
$options = array(
|
||||
'src' => $matches[2],
|
||||
'args' => array());
|
||||
} else {
|
||||
// everything after the space is macro options
|
||||
$options = array(
|
||||
'src' => substr($matches[2], 0, $pos),
|
||||
'args' => $this->getMacroArgs(substr($matches[2], $pos+1))
|
||||
);
|
||||
}
|
||||
|
||||
$pos = strpos($matches[2], ' ');
|
||||
|
||||
if ($pos === false) {
|
||||
$options = array(
|
||||
'src' => $matches[2],
|
||||
'args' => array());
|
||||
} else {
|
||||
// everything after the space is macro options
|
||||
$options = array(
|
||||
'src' => substr($matches[2], 0, $pos),
|
||||
'args' => $this->getMacroArgs(substr($matches[2], $pos+1))
|
||||
);
|
||||
}
|
||||
|
||||
return $this->addToken($options);
|
||||
}
|
||||
|
||||
@ -106,31 +106,31 @@ class Text_Wiki_Rule_image extends Text_Wiki_Rule {
|
||||
|
||||
function renderXhtml($options)
|
||||
{
|
||||
$src = '"' . $this->_conf['base'] . $options['src'] . '"';
|
||||
|
||||
if (isset($options['args']['link'])) {
|
||||
// this image has a wikilink
|
||||
$href = $this->_wiki->getRuleConf('wikilink', 'view_url') .
|
||||
$options['args']['link'];
|
||||
} else {
|
||||
// image is not linked
|
||||
$href = null;
|
||||
}
|
||||
|
||||
// unset these so they don't show up as attributes
|
||||
unset($options['args']['src']);
|
||||
unset($options['args']['link']);
|
||||
|
||||
$attr = '';
|
||||
foreach ($options['args'] as $key => $val) {
|
||||
$attr .= "$key=\"$val\" ";
|
||||
}
|
||||
|
||||
if ($href) {
|
||||
return "<a href=\"$href\"><img src=$src $attr/></a>";
|
||||
} else {
|
||||
return "<img src=$src $attr/>";
|
||||
}
|
||||
}
|
||||
$src = '"' . $this->_conf['base'] . $options['src'] . '"';
|
||||
|
||||
if (isset($options['args']['link'])) {
|
||||
// this image has a wikilink
|
||||
$href = $this->_wiki->getRuleConf('wikilink', 'view_url') .
|
||||
$options['args']['link'];
|
||||
} else {
|
||||
// image is not linked
|
||||
$href = null;
|
||||
}
|
||||
|
||||
// unset these so they don't show up as attributes
|
||||
unset($options['args']['src']);
|
||||
unset($options['args']['link']);
|
||||
|
||||
$attr = '';
|
||||
foreach ($options['args'] as $key => $val) {
|
||||
$attr .= "$key=\"$val\" ";
|
||||
}
|
||||
|
||||
if ($href) {
|
||||
return "<a href=\"$href\"><img src=$src $attr/></a>";
|
||||
} else {
|
||||
return "<img src=$src $attr/>";
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
@ -69,12 +69,12 @@ class Text_Wiki_Rule_include extends Text_Wiki_Rule {
|
||||
|
||||
function process(&$matches)
|
||||
{
|
||||
$file = $this->_conf['base'] . $matches[2];
|
||||
ob_start();
|
||||
include($file);
|
||||
$output = ob_get_contents();
|
||||
ob_end_clean();
|
||||
return $output;
|
||||
$file = $this->_conf['base'] . $matches[2];
|
||||
ob_start();
|
||||
include($file);
|
||||
$output = ob_get_contents();
|
||||
ob_end_clean();
|
||||
return $output;
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
@ -50,36 +50,36 @@ class Text_Wiki_Rule_interwiki extends Text_Wiki_Rule {
|
||||
|
||||
function parse()
|
||||
{
|
||||
// described interwiki links
|
||||
$tmp_regex = '/\[' . $this->regex . ' (.+?)\]/';
|
||||
// described interwiki links
|
||||
$tmp_regex = '/\[' . $this->regex . ' (.+?)\]/';
|
||||
$this->_wiki->_source = preg_replace_callback(
|
||||
$tmp_regex,
|
||||
array(&$this, 'processDescr'),
|
||||
$this->_wiki->_source
|
||||
);
|
||||
|
||||
// standalone interwiki links
|
||||
|
||||
// standalone interwiki links
|
||||
$tmp_regex = '/' . $this->regex . '/';
|
||||
$this->_wiki->_source = preg_replace_callback(
|
||||
$tmp_regex,
|
||||
array(&$this, 'process'),
|
||||
$this->_wiki->_source
|
||||
);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Generates a replacement for the matched standalone interwiki text.
|
||||
* Token options are:
|
||||
*
|
||||
* 'site' => The key name for the Text_Wiki interwiki array map,
|
||||
* usually the name of the interwiki site.
|
||||
*
|
||||
* 'page' => The page on the target interwiki to link to.
|
||||
*
|
||||
* 'text' => The text to display as the link.
|
||||
* Generates a replacement for the matched standalone interwiki text.
|
||||
* Token options are:
|
||||
*
|
||||
* 'site' => The key name for the Text_Wiki interwiki array map,
|
||||
* usually the name of the interwiki site.
|
||||
*
|
||||
* 'page' => The page on the target interwiki to link to.
|
||||
*
|
||||
* 'text' => The text to display as the link.
|
||||
*
|
||||
* @access public
|
||||
*
|
||||
@ -89,7 +89,7 @@ class Text_Wiki_Rule_interwiki extends Text_Wiki_Rule {
|
||||
* the source text, plus any text priot to the match.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function process(&$matches)
|
||||
{
|
||||
$options = array(
|
||||
@ -97,27 +97,27 @@ class Text_Wiki_Rule_interwiki extends Text_Wiki_Rule {
|
||||
'page' => $matches[2],
|
||||
'text' => $matches[0]
|
||||
);
|
||||
|
||||
|
||||
// if not in the interwiki map, don't make it an interwiki link
|
||||
if (isset($this->_conf['sites'][$options['site']])) {
|
||||
return $this->addToken($options);
|
||||
} else {
|
||||
return $matches[0];
|
||||
}
|
||||
return $this->addToken($options);
|
||||
} else {
|
||||
return $matches[0];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Generates a replacement for described interwiki links. Token
|
||||
* options are:
|
||||
*
|
||||
* 'site' => The key name for the Text_Wiki interwiki array map,
|
||||
* usually the name of the interwiki site.
|
||||
*
|
||||
* 'page' => The page on the target interwiki to link to.
|
||||
*
|
||||
* 'text' => The text to display as the link.
|
||||
* Generates a replacement for described interwiki links. Token
|
||||
* options are:
|
||||
*
|
||||
* 'site' => The key name for the Text_Wiki interwiki array map,
|
||||
* usually the name of the interwiki site.
|
||||
*
|
||||
* 'page' => The page on the target interwiki to link to.
|
||||
*
|
||||
* 'text' => The text to display as the link.
|
||||
*
|
||||
* @access public
|
||||
*
|
||||
@ -127,7 +127,7 @@ class Text_Wiki_Rule_interwiki extends Text_Wiki_Rule {
|
||||
* the source text, plus any text priot to the match.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function processDescr(&$matches)
|
||||
{
|
||||
$options = array(
|
||||
@ -135,16 +135,16 @@ class Text_Wiki_Rule_interwiki extends Text_Wiki_Rule {
|
||||
'page' => $matches[2],
|
||||
'text' => $matches[3]
|
||||
);
|
||||
|
||||
|
||||
// if not in the interwiki map, don't make it an interwiki link
|
||||
if (isset($this->_conf['sites'][$options['site']])) {
|
||||
return $this->addToken($options);
|
||||
} else {
|
||||
return $matches[0];
|
||||
}
|
||||
return $this->addToken($options);
|
||||
} else {
|
||||
return $matches[0];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Renders a token into text matching the requested format.
|
||||
@ -157,38 +157,37 @@ class Text_Wiki_Rule_interwiki extends Text_Wiki_Rule {
|
||||
* @return string The text rendered from the token options.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function renderXhtml($options)
|
||||
{
|
||||
$site = $options['site'];
|
||||
$page = $options['page'];
|
||||
$text = $options['text'];
|
||||
|
||||
|
||||
if (isset($this->_conf['sites'][$site])) {
|
||||
$href = $this->_conf['sites'][$site];
|
||||
} else {
|
||||
return $text;
|
||||
}
|
||||
|
||||
// old form where page is at end,
|
||||
// or new form with %s placeholder for sprintf()?
|
||||
if (strpos($href, '%s') === false) {
|
||||
// use the old form
|
||||
$href = $href . $page;
|
||||
} else {
|
||||
// use the new form
|
||||
$href = sprintf($href, $page);
|
||||
}
|
||||
|
||||
// allow for alternative targets
|
||||
if (isset($this->_conf['target']) &&
|
||||
trim($this->_conf['target']) != '') {
|
||||
$target = 'target="' . $this->_conf['target'] . '"';
|
||||
} else {
|
||||
$target = '';
|
||||
}
|
||||
|
||||
// old form where page is at end,
|
||||
// or new form with %s placeholder for sprintf()?
|
||||
if (strpos($href, '%s') === false) {
|
||||
// use the old form
|
||||
$href = $href . $page;
|
||||
} else {
|
||||
// use the new form
|
||||
$href = sprintf($href, $page);
|
||||
}
|
||||
|
||||
// allow for alternative targets
|
||||
if (isset($this->_conf['target']) &&
|
||||
trim($this->_conf['target']) != '') {
|
||||
$target = 'target="' . $this->_conf['target'] . '"';
|
||||
} else {
|
||||
$target = '';
|
||||
}
|
||||
|
||||
|
||||
return "<a $target href=\"$href\">$text</a>";
|
||||
}
|
||||
}
|
||||
|
@ -33,8 +33,8 @@
|
||||
*/
|
||||
|
||||
class Text_Wiki_Rule_italic extends Text_Wiki_Rule {
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* The regular expression used to parse the source text and find
|
||||
@ -47,10 +47,10 @@ class Text_Wiki_Rule_italic extends Text_Wiki_Rule {
|
||||
* @see parse()
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
var $regex = "/''(()|[^'].*)''/U";
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Generates a replacement for the matched text. Token options are:
|
||||
@ -67,15 +67,15 @@ class Text_Wiki_Rule_italic extends Text_Wiki_Rule {
|
||||
* emphasized.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function process(&$matches)
|
||||
{
|
||||
$start = $this->addToken(array('type' => 'start'));
|
||||
$end = $this->addToken(array('type' => 'end'));
|
||||
return $start . $matches[1] . $end;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Renders a token into text matching the requested format.
|
||||
@ -88,16 +88,16 @@ class Text_Wiki_Rule_italic extends Text_Wiki_Rule {
|
||||
* @return string The text rendered from the token options.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function renderXhtml($options)
|
||||
{
|
||||
if ($options['type'] == 'start') {
|
||||
return '<i>';
|
||||
}
|
||||
|
||||
if ($options['type'] == 'end') {
|
||||
return '</i>';
|
||||
}
|
||||
if ($options['type'] == 'start') {
|
||||
return '<i>';
|
||||
}
|
||||
|
||||
if ($options['type'] == 'end') {
|
||||
return '</i>';
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
@ -253,11 +253,11 @@ class Text_Wiki_Rule_list extends Text_Wiki_Rule {
|
||||
// attempt XHTML compliance so that sub-lists are part
|
||||
// of a list item, not between list items
|
||||
if ($level > 0) {
|
||||
$pre = '<li style="list-style: none;">';
|
||||
$post = '</li>';
|
||||
$pre = '<li style="list-style: none;">';
|
||||
$post = '</li>';
|
||||
} else {
|
||||
$pre = '';
|
||||
$post = '';
|
||||
$pre = '';
|
||||
$post = '';
|
||||
}
|
||||
|
||||
switch ($type) {
|
||||
|
@ -32,7 +32,7 @@
|
||||
*/
|
||||
|
||||
class Text_Wiki_Rule_paragraph extends Text_Wiki_Rule {
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* The regular expression used to find source text matching this
|
||||
@ -43,10 +43,10 @@ class Text_Wiki_Rule_paragraph extends Text_Wiki_Rule {
|
||||
* @var string
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
var $regex = "/^.*?\n\n/m";
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Generates a token entry for the matched text. Token options are:
|
||||
@ -63,55 +63,55 @@ class Text_Wiki_Rule_paragraph extends Text_Wiki_Rule {
|
||||
* the source text.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function process(&$matches)
|
||||
{
|
||||
$delim = $this->_wiki->delim;
|
||||
|
||||
// was anything there?
|
||||
if (trim($matches[0]) == '') {
|
||||
return '';
|
||||
}
|
||||
|
||||
// does the match start with a delimiter?
|
||||
if (substr($matches[0], 0, 1) != $delim) {
|
||||
// no.
|
||||
$delim = $this->_wiki->delim;
|
||||
|
||||
// was anything there?
|
||||
if (trim($matches[0]) == '') {
|
||||
return '';
|
||||
}
|
||||
|
||||
// does the match start with a delimiter?
|
||||
if (substr($matches[0], 0, 1) != $delim) {
|
||||
// no.
|
||||
$start = $this->addToken(array('type' => 'start'));
|
||||
$end = $this->addToken(array('type' => 'end'));
|
||||
return $start . trim($matches[0]) . $end;
|
||||
}
|
||||
|
||||
|
||||
// the line starts with a delimiter. read in the delimited
|
||||
// token number, check the token, and see if we should
|
||||
// skip it.
|
||||
|
||||
|
||||
// loop starting at the second character (we already know
|
||||
// the first is a delimiter) until we find another
|
||||
// delimiter; the text between them is a token key number.
|
||||
$key = '';
|
||||
$len = strlen($matches[0]);
|
||||
for ($i = 1; $i < $len; $i++) {
|
||||
$char = $matches[0]{$i};
|
||||
if ($char == $delim) {
|
||||
break;
|
||||
} else {
|
||||
$key .= $char;
|
||||
}
|
||||
$len = strlen($matches[0]);
|
||||
for ($i = 1; $i < $len; $i++) {
|
||||
$char = $matches[0]{$i};
|
||||
if ($char == $delim) {
|
||||
break;
|
||||
} else {
|
||||
$key .= $char;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// look at the token and see if it's skippable (if we skip,
|
||||
// it will not be marked as a paragraph)
|
||||
$token_type = $this->_wiki->_tokens[$key][0];
|
||||
if (in_array($token_type, $this->_conf['skip'])) {
|
||||
return $matches[0];
|
||||
return $matches[0];
|
||||
} else {
|
||||
$start = $this->addToken(array('type' => 'start'));
|
||||
$end = $this->addToken(array('type' => 'end'));
|
||||
return $start . trim($matches[0]) . $end;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Renders a token into text matching the requested format.
|
||||
@ -124,15 +124,15 @@ class Text_Wiki_Rule_paragraph extends Text_Wiki_Rule {
|
||||
* @return string The text rendered from the token options.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function renderXhtml($options)
|
||||
{
|
||||
extract($options); //type
|
||||
|
||||
|
||||
if ($type == 'start') {
|
||||
return '<p>';
|
||||
}
|
||||
|
||||
|
||||
if ($type == 'end') {
|
||||
return "</p>\n\n";
|
||||
}
|
||||
|
@ -35,8 +35,8 @@
|
||||
*/
|
||||
|
||||
class Text_Wiki_Rule_phpcode extends Text_Wiki_Rule {
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* The regular expression used to find source text matching this
|
||||
@ -47,10 +47,10 @@ class Text_Wiki_Rule_phpcode extends Text_Wiki_Rule {
|
||||
* @var string
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
var $regex = '/^(\<php\>)\n(.+)\n(\<\/php\>)(\s|$)/Umsi';
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Generates a token entry for the matched text. Token options are:
|
||||
@ -65,14 +65,14 @@ class Text_Wiki_Rule_phpcode extends Text_Wiki_Rule {
|
||||
* the source text.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function process(&$matches)
|
||||
{
|
||||
$options = array('text' => $matches[2]);
|
||||
return $this->addToken($options) . $matches[4];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Renders a token into text matching the requested format.
|
||||
@ -85,49 +85,49 @@ class Text_Wiki_Rule_phpcode extends Text_Wiki_Rule {
|
||||
* @return string The text rendered from the token options.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function renderXhtml($options)
|
||||
{
|
||||
// add the PHP tags
|
||||
$text = "<?php\n" . $options['text'] . "\n?>"; // <?php
|
||||
|
||||
// convert tabs to four spaces
|
||||
$text = str_replace("\t", " ", $text);
|
||||
|
||||
// colorize the code block (also converts HTML entities and adds
|
||||
// <code>...</code> tags)
|
||||
ob_start();
|
||||
highlight_string($text);
|
||||
$text = ob_get_contents();
|
||||
ob_end_clean();
|
||||
|
||||
// replace <br /> tags with simple newlines
|
||||
//$text = str_replace("<br />", "\n", $text);
|
||||
|
||||
// replace non-breaking space with simple spaces
|
||||
//$text = str_replace(" ", " ", $text);
|
||||
|
||||
// replace <br /> tags with simple newlines
|
||||
// replace non-breaking space with simple spaces
|
||||
// translate old HTML to new XHTML
|
||||
// courtesy of research by A. Kalin :-)
|
||||
$map = array(
|
||||
'<br />' => "\n",
|
||||
' ' => ' ',
|
||||
'<font' => '<span',
|
||||
'</font>' => '</span>',
|
||||
'color="' => 'style="color:'
|
||||
);
|
||||
$text = strtr($text, $map);
|
||||
|
||||
// get rid of the last newline inside the code block
|
||||
// (becuase higlight_string puts one there)
|
||||
if (substr($text, -8) == "\n</code>") {
|
||||
$text = substr($text, 0, -8) . "</code>";
|
||||
}
|
||||
|
||||
// done
|
||||
return "\n<pre>$text</pre>\n";
|
||||
// add the PHP tags
|
||||
$text = "<?php\n" . $options['text'] . "\n?>"; // <?php
|
||||
|
||||
// convert tabs to four spaces
|
||||
$text = str_replace("\t", " ", $text);
|
||||
|
||||
// colorize the code block (also converts HTML entities and adds
|
||||
// <code>...</code> tags)
|
||||
ob_start();
|
||||
highlight_string($text);
|
||||
$text = ob_get_contents();
|
||||
ob_end_clean();
|
||||
|
||||
// replace <br /> tags with simple newlines
|
||||
//$text = str_replace("<br />", "\n", $text);
|
||||
|
||||
// replace non-breaking space with simple spaces
|
||||
//$text = str_replace(" ", " ", $text);
|
||||
|
||||
// replace <br /> tags with simple newlines
|
||||
// replace non-breaking space with simple spaces
|
||||
// translate old HTML to new XHTML
|
||||
// courtesy of research by A. Kalin :-)
|
||||
$map = array(
|
||||
'<br />' => "\n",
|
||||
' ' => ' ',
|
||||
'<font' => '<span',
|
||||
'</font>' => '</span>',
|
||||
'color="' => 'style="color:'
|
||||
);
|
||||
$text = strtr($text, $map);
|
||||
|
||||
// get rid of the last newline inside the code block
|
||||
// (becuase higlight_string puts one there)
|
||||
if (substr($text, -8) == "\n</code>") {
|
||||
$text = substr($text, 0, -8) . "</code>";
|
||||
}
|
||||
|
||||
// done
|
||||
return "\n<pre>$text</pre>\n";
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
@ -86,7 +86,7 @@ class Text_Wiki_Rule_phplookup extends Text_Wiki_Rule {
|
||||
|
||||
function renderXhtml($options)
|
||||
{
|
||||
$text = trim($options['text']);
|
||||
$text = trim($options['text']);
|
||||
return "<a href=\"http://php.net/$text\">$text</a>";
|
||||
}
|
||||
}
|
||||
|
@ -67,10 +67,10 @@ class Text_Wiki_Rule_prefilter extends Text_Wiki_Rule {
|
||||
|
||||
// finally, compress all instances of 3 or more newlines
|
||||
// down to two newlines.
|
||||
$find = "/\n{3,}/m";
|
||||
$replace = "\n\n";
|
||||
$this->_wiki->_source = preg_replace($find, $replace,
|
||||
$this->_wiki->_source);
|
||||
$find = "/\n{3,}/m";
|
||||
$replace = "\n\n";
|
||||
$this->_wiki->_source = preg_replace($find, $replace,
|
||||
$this->_wiki->_source);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -74,68 +74,68 @@ class Text_Wiki_Rule_table extends Text_Wiki_Rule {
|
||||
* table elements and cell text.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function process(&$matches)
|
||||
{
|
||||
// out eventual return value
|
||||
$return = '';
|
||||
|
||||
|
||||
// start a new table
|
||||
$return .= $this->addToken(array('type' => 'table_start'));
|
||||
|
||||
|
||||
// rows are separated by newlines in the matched text
|
||||
$rows = explode("\n", $matches[1]);
|
||||
|
||||
|
||||
// loop through each row
|
||||
foreach ($rows as $row) {
|
||||
|
||||
|
||||
// start a new row
|
||||
$return .= $this->addToken(array('type' => 'row_start'));
|
||||
|
||||
|
||||
// cells are separated by double-pipes
|
||||
$cell = explode("||", $row);
|
||||
|
||||
|
||||
// get the last cell number
|
||||
$last = count($cell) - 1;
|
||||
|
||||
|
||||
// by default, cells span only one column (their own)
|
||||
$span = 1;
|
||||
|
||||
|
||||
// ignore cell zero, and ignore the "last" cell; cell zero
|
||||
// is before the first double-pipe, and the "last" cell is
|
||||
// after the last double-pipe. both are always empty.
|
||||
for ($i = 1; $i < $last; $i ++) {
|
||||
|
||||
|
||||
// if there is no content at all, then it's an instance
|
||||
// of two sets of || next to each other, indicating a
|
||||
// colspan.
|
||||
if ($cell[$i] == '') {
|
||||
|
||||
|
||||
// add to the span and loop to the next cell
|
||||
$span += 1;
|
||||
continue;
|
||||
|
||||
|
||||
} else {
|
||||
|
||||
|
||||
// this cell has content.
|
||||
|
||||
|
||||
// find the alignment, if any.
|
||||
if (substr($cell[$i], 0, 2) == '> ') {
|
||||
// set to right-align and strip the tag
|
||||
$align = 'right';
|
||||
$cell[$i] = substr($cell[$i], 2);
|
||||
// set to right-align and strip the tag
|
||||
$align = 'right';
|
||||
$cell[$i] = substr($cell[$i], 2);
|
||||
} elseif (substr($cell[$i], 0, 2) == '= ') {
|
||||
// set to center-align and strip the tag
|
||||
$align = 'center';
|
||||
$cell[$i] = substr($cell[$i], 2);
|
||||
// set to center-align and strip the tag
|
||||
$align = 'center';
|
||||
$cell[$i] = substr($cell[$i], 2);
|
||||
} elseif (substr($cell[$i], 0, 2) == '< ') {
|
||||
// set to left-align and strip the tag
|
||||
$align = 'left';
|
||||
$cell[$i] = substr($cell[$i], 2);
|
||||
// set to left-align and strip the tag
|
||||
$align = 'left';
|
||||
$cell[$i] = substr($cell[$i], 2);
|
||||
} else {
|
||||
$align = null;
|
||||
$align = null;
|
||||
}
|
||||
|
||||
|
||||
// start a new cell...
|
||||
$return .= $this->addToken(
|
||||
array (
|
||||
@ -144,10 +144,10 @@ class Text_Wiki_Rule_table extends Text_Wiki_Rule {
|
||||
'colspan' => $span
|
||||
)
|
||||
);
|
||||
|
||||
|
||||
// ...add the content...
|
||||
$return .= trim($cell[$i]);
|
||||
|
||||
|
||||
// ...and end the cell.
|
||||
$return .= $this->addToken(
|
||||
array (
|
||||
@ -156,26 +156,26 @@ class Text_Wiki_Rule_table extends Text_Wiki_Rule {
|
||||
'colspan' => $span
|
||||
)
|
||||
);
|
||||
|
||||
|
||||
// reset the colspan.
|
||||
$span = 1;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
// end the row
|
||||
$return .= $this->addToken(array('type' => 'row_end'));
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
// end the table
|
||||
$return .= $this->addToken(array('type' => 'table_end'));
|
||||
|
||||
|
||||
// we're done!
|
||||
return "\n$return\n";
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Renders a token into text matching the requested format.
|
||||
@ -193,56 +193,56 @@ class Text_Wiki_Rule_table extends Text_Wiki_Rule {
|
||||
{
|
||||
// make nice variable names (type, align, colspan)
|
||||
extract($options);
|
||||
|
||||
|
||||
$pad = ' ';
|
||||
|
||||
|
||||
$border = (isset($this->_conf['border']))
|
||||
? $this->_conf['border'] : '1';
|
||||
|
||||
? $this->_conf['border'] : '1';
|
||||
|
||||
$spacing = (isset($this->_conf['spacing']))
|
||||
? $this->_conf['spacing'] : '0';
|
||||
|
||||
? $this->_conf['spacing'] : '0';
|
||||
|
||||
$padding = (isset($this->_conf['padding']))
|
||||
? $this->_conf['padding'] : '4';
|
||||
|
||||
? $this->_conf['padding'] : '4';
|
||||
|
||||
switch ($type) {
|
||||
|
||||
|
||||
case 'table_start':
|
||||
return "<table border=\"$border\" " .
|
||||
"cellspacing=\"$spacing\" " .
|
||||
"cellpadding=\"$padding\">\n";
|
||||
"cellspacing=\"$spacing\" " .
|
||||
"cellpadding=\"$padding\">\n";
|
||||
break;
|
||||
|
||||
|
||||
case 'table_end':
|
||||
return "</table>\n";
|
||||
break;
|
||||
|
||||
|
||||
case 'row_start':
|
||||
return "$pad<tr>\n";
|
||||
break;
|
||||
|
||||
|
||||
case 'row_end':
|
||||
return "$pad</tr>\n";
|
||||
break;
|
||||
|
||||
|
||||
case 'cell_start':
|
||||
$tmp = $pad . $pad . '<td';
|
||||
$tmp = $pad . $pad . '<td';
|
||||
if ($colspan > 1) {
|
||||
$tmp .= " colspan=\"$colspan\"";
|
||||
}
|
||||
if ($align) {
|
||||
$tmp .= " align=\"$align\"";
|
||||
$tmp .= " align=\"$align\"";
|
||||
}
|
||||
return $tmp . '>';
|
||||
break;
|
||||
|
||||
|
||||
case 'cell_end':
|
||||
return "</td>\n";
|
||||
break;
|
||||
|
||||
|
||||
default:
|
||||
return '';
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -43,8 +43,8 @@ class Text_Wiki_Rule_tighten extends Text_Wiki_Rule {
|
||||
|
||||
function parse()
|
||||
{
|
||||
$this->_wiki->_source = str_replace("\n", '',
|
||||
$this->_wiki->_source);
|
||||
$this->_wiki->_source = str_replace("\n", '',
|
||||
$this->_wiki->_source);
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
@ -41,8 +41,8 @@
|
||||
*/
|
||||
|
||||
class Text_Wiki_Rule_url extends Text_Wiki_Rule {
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* When doing numbered references (footnote-style references), we
|
||||
@ -53,10 +53,10 @@ class Text_Wiki_Rule_url extends Text_Wiki_Rule {
|
||||
* @var int
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
var $footnoteCount = 0;
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* An array of filename extensions that indicate a file is an image.
|
||||
@ -66,25 +66,25 @@ class Text_Wiki_Rule_url extends Text_Wiki_Rule {
|
||||
* @var array
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
var $img_ext = array('.jpg', '.png', '.gif');
|
||||
|
||||
|
||||
|
||||
|
||||
function Text_Wiki_Rule_url(&$obj, $name)
|
||||
{
|
||||
parent::Text_Wiki_Rule($obj, $name);
|
||||
|
||||
parent::Text_Wiki_Rule($obj, $name);
|
||||
|
||||
$this->regex =
|
||||
"(http:\/\/|https:\/\/|ftp:\/\/|gopher:\/\/|news:\/\/|mailto:)" . // protocols
|
||||
"(" .
|
||||
"[^ \\/\"\'{$this->_wiki->delim}]*\\/" . // no spaces, \, /, ", or single quotes;
|
||||
")*" .
|
||||
"[^ \\t\\n\\/\"\'{$this->_wiki->delim}]*" .
|
||||
"[A-Za-z0-9\\/?=&~_]";
|
||||
|
||||
"(http:\/\/|https:\/\/|ftp:\/\/|gopher:\/\/|news:\/\/|mailto:)" . // protocols
|
||||
"(" .
|
||||
"[^ \\/\"\'{$this->_wiki->delim}]*\\/" . // no spaces, \, /, ", or single quotes;
|
||||
")*" .
|
||||
"[^ \\t\\n\\/\"\'{$this->_wiki->delim}]*" .
|
||||
"[A-Za-z0-9\\/?=&~_]";
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* A somewhat complex parsing method to find three different kinds
|
||||
@ -93,17 +93,17 @@ class Text_Wiki_Rule_url extends Text_Wiki_Rule {
|
||||
* @access public
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function parse()
|
||||
{
|
||||
// -------------------------------------------------------------
|
||||
//
|
||||
// Described-reference (named) URLs.
|
||||
//
|
||||
|
||||
|
||||
// the regular expression for this kind of URL
|
||||
$tmp_regex = '/\[(' . $this->regex . ') ([^\]]+)\]/';
|
||||
|
||||
|
||||
// use a custom callback processing method to generate
|
||||
// the replacement text for matches.
|
||||
$this->_wiki->_source = preg_replace_callback(
|
||||
@ -111,16 +111,16 @@ class Text_Wiki_Rule_url extends Text_Wiki_Rule {
|
||||
array(&$this, 'processDescr'),
|
||||
$this->_wiki->_source
|
||||
);
|
||||
|
||||
|
||||
|
||||
|
||||
// -------------------------------------------------------------
|
||||
//
|
||||
// Numbered-reference (footnote-style) URLs.
|
||||
//
|
||||
|
||||
|
||||
// the regular expression for this kind of URL
|
||||
$tmp_regex = '/\[(' . $this->regex . ')\]/U';
|
||||
|
||||
|
||||
// use a custom callback processing method to generate
|
||||
// the replacement text for matches.
|
||||
$this->_wiki->_source = preg_replace_callback(
|
||||
@ -128,17 +128,17 @@ class Text_Wiki_Rule_url extends Text_Wiki_Rule {
|
||||
array(&$this, 'processFootnote'),
|
||||
$this->_wiki->_source
|
||||
);
|
||||
|
||||
|
||||
|
||||
|
||||
// -------------------------------------------------------------
|
||||
//
|
||||
// Normal inline URLs.
|
||||
//
|
||||
|
||||
|
||||
// the regular expression for this kind of URL
|
||||
|
||||
$tmp_regex = '/(^|[^A-Za-z])(' . $this->regex . ')(.*?)/';
|
||||
|
||||
|
||||
$tmp_regex = '/(^|[^A-Za-z])(' . $this->regex . ')(.*?)/';
|
||||
|
||||
// use the standard callback for inline URLs
|
||||
$this->_wiki->_source = preg_replace_callback(
|
||||
$tmp_regex,
|
||||
@ -146,8 +146,8 @@ class Text_Wiki_Rule_url extends Text_Wiki_Rule {
|
||||
$this->_wiki->_source
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Process inline URLs and return replacement text with a delimited
|
||||
@ -168,7 +168,7 @@ class Text_Wiki_Rule_url extends Text_Wiki_Rule {
|
||||
* @return string The processed text replacement.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function process(&$matches)
|
||||
{
|
||||
// set options
|
||||
@ -177,12 +177,12 @@ class Text_Wiki_Rule_url extends Text_Wiki_Rule {
|
||||
'href' => $matches[2],
|
||||
'text' => $matches[2]
|
||||
);
|
||||
|
||||
|
||||
// tokenize
|
||||
return $matches[1] . $this->addToken($options) . $matches[5];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Process numbered (footnote) URLs and return replacement text with
|
||||
@ -203,24 +203,24 @@ class Text_Wiki_Rule_url extends Text_Wiki_Rule {
|
||||
* @return string The processed text replacement.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function processFootnote(&$matches)
|
||||
{
|
||||
// keep a running count for footnotes
|
||||
$this->footnoteCount++;
|
||||
|
||||
|
||||
// set options
|
||||
$options = array(
|
||||
'type' => 'footnote',
|
||||
'href' => $matches[1],
|
||||
'text' => $this->footnoteCount
|
||||
);
|
||||
|
||||
|
||||
// tokenize
|
||||
return $this->addToken($options);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Process described-reference (named-reference) URLs and return
|
||||
@ -241,7 +241,7 @@ class Text_Wiki_Rule_url extends Text_Wiki_Rule {
|
||||
* @return string The processed text replacement.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function processDescr(&$matches)
|
||||
{
|
||||
// set options
|
||||
@ -250,12 +250,12 @@ class Text_Wiki_Rule_url extends Text_Wiki_Rule {
|
||||
'href' => $matches[1],
|
||||
'text' => $matches[4]
|
||||
);
|
||||
|
||||
|
||||
// tokenize
|
||||
return $this->addToken($options);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Renders a token into text matching the requested format.
|
||||
@ -268,48 +268,48 @@ class Text_Wiki_Rule_url extends Text_Wiki_Rule {
|
||||
* @return string The text rendered from the token options.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function renderXhtml($options)
|
||||
{
|
||||
// create local variables from the options array (text,
|
||||
// href, type)
|
||||
extract($options);
|
||||
|
||||
|
||||
// find the rightmost dot and determine the filename
|
||||
// extension.
|
||||
$pos = strrpos($href, '.');
|
||||
$ext = strtolower(substr($href, $pos));
|
||||
|
||||
|
||||
// does the filename extension indicate an image file?
|
||||
if (in_array($ext, $this->img_ext)) {
|
||||
|
||||
|
||||
// create alt text for the image
|
||||
if (! isset($text) || $text == '') {
|
||||
$text = basename($href);
|
||||
}
|
||||
|
||||
|
||||
// generate an image tag
|
||||
$output = "<img src=\"$href\" alt=\"$text\" />";
|
||||
|
||||
|
||||
} else {
|
||||
|
||||
// allow for alternative targets
|
||||
if (isset($this->_conf['target']) &&
|
||||
trim($this->_conf['target']) != '') {
|
||||
$target = 'target="' . $this->_conf['target'] . '"';
|
||||
} else {
|
||||
$target = '';
|
||||
}
|
||||
|
||||
|
||||
// allow for alternative targets
|
||||
if (isset($this->_conf['target']) &&
|
||||
trim($this->_conf['target']) != '') {
|
||||
$target = 'target="' . $this->_conf['target'] . '"';
|
||||
} else {
|
||||
$target = '';
|
||||
}
|
||||
|
||||
// generate a regular link (not an image)
|
||||
$output = "<a $target href=\"$href\">$text</a>";
|
||||
|
||||
|
||||
// make numbered references look like footnotes
|
||||
if ($type == 'footnote') {
|
||||
$output = '<sup>' . $output . '</sup>';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return $output;
|
||||
}
|
||||
}
|
||||
|
@ -37,8 +37,8 @@
|
||||
*/
|
||||
|
||||
class Text_Wiki_Rule_wikilink extends Text_Wiki_Rule {
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Constructor. We override the Text_Wiki_Rule constructor so we can
|
||||
@ -51,11 +51,11 @@ class Text_Wiki_Rule_wikilink extends Text_Wiki_Rule {
|
||||
* @param string $name The token name to use for this rule.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function Text_Wiki_Rule_wikilink(&$obj, $name)
|
||||
{
|
||||
parent::Text_Wiki_Rule($obj, $name);
|
||||
|
||||
|
||||
$this->regex =
|
||||
"(!?" . // START WikiPage pattern (1)
|
||||
"[A-Z]" . // 1 upper
|
||||
@ -71,8 +71,8 @@ class Text_Wiki_Rule_wikilink extends Text_Wiki_Rule {
|
||||
"[-A-Za-z0-9_]" . // 1 dash, alpha, digit, or underscore
|
||||
")?)?)"; // end subpatterns (/4)(/3)(/2)
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* First parses for described links, then for standalone links.
|
||||
@ -82,17 +82,17 @@ class Text_Wiki_Rule_wikilink extends Text_Wiki_Rule {
|
||||
* @return void
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function parse()
|
||||
{
|
||||
// described wiki links
|
||||
$tmp_regex = '/\[' . $this->regex . ' (.+?)\]/';
|
||||
// described wiki links
|
||||
$tmp_regex = '/\[' . $this->regex . ' (.+?)\]/';
|
||||
$this->_wiki->_source = preg_replace_callback(
|
||||
$tmp_regex,
|
||||
array(&$this, 'processDescr'),
|
||||
$this->_wiki->_source
|
||||
);
|
||||
|
||||
|
||||
// standalone wiki links
|
||||
$tmp_regex = '/(^|[^A-Za-z0-9\-_])' . $this->regex . '/';
|
||||
$this->_wiki->_source = preg_replace_callback(
|
||||
@ -101,8 +101,8 @@ class Text_Wiki_Rule_wikilink extends Text_Wiki_Rule {
|
||||
$this->_wiki->_source
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Generates a replacement for described links. Token options are:
|
||||
@ -121,7 +121,7 @@ class Text_Wiki_Rule_wikilink extends Text_Wiki_Rule {
|
||||
* the source text, plus any text priot to the match.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function processDescr(&$matches)
|
||||
{
|
||||
// set the options
|
||||
@ -130,12 +130,12 @@ class Text_Wiki_Rule_wikilink extends Text_Wiki_Rule {
|
||||
'text' => $matches[5],
|
||||
'anchor' => $matches[3]
|
||||
);
|
||||
|
||||
|
||||
// create and return the replacement token and preceding text
|
||||
return $this->addToken($options); // . $matches[7];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Generates a replacement for standalone links. Token options are:
|
||||
@ -154,7 +154,7 @@ class Text_Wiki_Rule_wikilink extends Text_Wiki_Rule {
|
||||
* the source text, plus any text prior to the match.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function process(&$matches)
|
||||
{
|
||||
// when prefixed with !, it's explicitly not a wiki link.
|
||||
@ -162,19 +162,19 @@ class Text_Wiki_Rule_wikilink extends Text_Wiki_Rule {
|
||||
if ($matches[2][0] == '!') {
|
||||
return $matches[1] . substr($matches[2], 1) . $matches[3];
|
||||
}
|
||||
|
||||
|
||||
// set the options
|
||||
$options = array(
|
||||
'page' => $matches[2],
|
||||
'text' => $matches[2] . $matches[3],
|
||||
'anchor' => $matches[3]
|
||||
);
|
||||
|
||||
|
||||
// create and return the replacement token and preceding text
|
||||
return $matches[1] . $this->addToken($options);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Renders a token into text matching the requested format.
|
||||
@ -187,55 +187,55 @@ class Text_Wiki_Rule_wikilink extends Text_Wiki_Rule {
|
||||
* @return string The text rendered from the token options.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
function renderXhtml($options)
|
||||
{
|
||||
// make nice variable names (page, anchor, text)
|
||||
extract($options);
|
||||
|
||||
|
||||
// does the page exist?
|
||||
if (in_array($page, $this->_conf['pages'])) {
|
||||
|
||||
|
||||
// yes, link to the page view, but we have to build
|
||||
// the HREF. we support both the old form where
|
||||
// the page always comes at the end, and the new
|
||||
// form that uses %s for sprintf()
|
||||
$href = $this->_conf['view_url'];
|
||||
|
||||
|
||||
if (strpos($href, '%s') === false) {
|
||||
// use the old form
|
||||
$href = $href . $page . $anchor;
|
||||
} else {
|
||||
// use the new form
|
||||
$href = sprintf($href, $page . $anchor);
|
||||
}
|
||||
|
||||
// use the old form
|
||||
$href = $href . $page . $anchor;
|
||||
} else {
|
||||
// use the new form
|
||||
$href = sprintf($href, $page . $anchor);
|
||||
}
|
||||
|
||||
return "<a href=\"$href\">$text</a>";
|
||||
|
||||
|
||||
}
|
||||
|
||||
// no, link to a create-page url, but only if new_url is set
|
||||
if (! isset($this->_conf['new_url']) ||
|
||||
trim($this->_conf['new_url']) == '') {
|
||||
return $text;
|
||||
} else {
|
||||
|
||||
|
||||
// no, link to a create-page url, but only if new_url is set
|
||||
if (! isset($this->_conf['new_url']) ||
|
||||
trim($this->_conf['new_url']) == '') {
|
||||
return $text;
|
||||
} else {
|
||||
|
||||
// yes, link to the page view, but we have to build
|
||||
// the HREF. we support both the old form where
|
||||
// the page always comes at the end, and the new
|
||||
// form that uses sprintf()
|
||||
$href = $this->_conf['new_url'];
|
||||
|
||||
|
||||
if (strpos($href, '%s') === false) {
|
||||
// use the old form
|
||||
$href = $href . $page;
|
||||
} else {
|
||||
// use the new form
|
||||
$href = sprintf($href, $page);
|
||||
}
|
||||
|
||||
return $text . "<a href=\"$href\">{$this->_conf['new_text']}</a>";
|
||||
}
|
||||
// use the old form
|
||||
$href = $href . $page;
|
||||
} else {
|
||||
// use the new form
|
||||
$href = sprintf($href, $page);
|
||||
}
|
||||
|
||||
return $text . "<a href=\"$href\">{$this->_conf['new_text']}</a>";
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
@ -245,7 +245,7 @@ function XML_RPC_Server_debugmsg($m)
|
||||
* ),
|
||||
* 1,
|
||||
* 0
|
||||
* );
|
||||
* );
|
||||
* </code>
|
||||
*
|
||||
* @category Web Services
|
||||
@ -553,8 +553,8 @@ class XML_RPC_Server
|
||||
$XML_RPC_xh[$parser]['isf'] = 0;
|
||||
$XML_RPC_xh[$parser]['params'] = array();
|
||||
$XML_RPC_xh[$parser]['method'] = '';
|
||||
$XML_RPC_xh[$parser]['stack'] = array();
|
||||
$XML_RPC_xh[$parser]['valuestack'] = array();
|
||||
$XML_RPC_xh[$parser]['stack'] = array();
|
||||
$XML_RPC_xh[$parser]['valuestack'] = array();
|
||||
|
||||
$plist = '';
|
||||
|
||||
|
@ -132,4 +132,4 @@ else
|
||||
echo ""
|
||||
fi
|
||||
|
||||
echo "REMEMBER TO UPDATE docs/RELEASE and commit SVN branch"
|
||||
echo "REMEMBER TO UPDATE docs/RELEASE and commit github branch: git tag -a X.Y ; git push --tags"
|
||||
|
@ -32,10 +32,10 @@ will be printed.)
|
||||
|| {{```''italic text''```}} || ''italic text'' ||
|
||||
|| {{```'''bold text'''```}} || '''bold text''' ||
|
||||
|| {{```'''''italic and bold'''''```}} || '''''italic and bold''''' ||
|
||||
|| {{```//emphasis//```}} || //emphasis// ||
|
||||
|| {{```**strong**```}} || **strong** ||
|
||||
|| {{```//**emphasis and strong**//```}} || //**emphasis and strong**// ||
|
||||
|| {{```**//strong and emphasis//**```}} || **//strong and emphasis//** ||
|
||||
|| {{```//emphasis//```}} || //emphasis// ||
|
||||
|| {{```**strong**```}} || **strong** ||
|
||||
|| {{```//**emphasis and strong**//```}} || //**emphasis and strong**// ||
|
||||
|| {{```**//strong and emphasis//**```}} || **//strong and emphasis//** ||
|
||||
|| {{```{{teletype text}}```}} || {{teletype text}} ||
|
||||
|| {{<```php:function()```>}} || <php:function()> ||
|
||||
|| {{```@@--- delete text +++ insert text @@```}} || @@--- delete text +++ insert text @@ ||
|
||||
|
@ -21,7 +21,7 @@
|
||||
|| {{strong}} || Strong (usually bold) text. || {{type:[start|end]}} ||
|
||||
|| {{superscript}} || Superscript text. || {{type:[start|end]}} ||
|
||||
|| {{table}} || Table elements. || {{type:[table|row|cell]_[start|end], colspan}} ||
|
||||
|| {{tt}} || Teletype (monospaced) text. || {{type:[start|end]}} ||
|
||||
|| {{tt}} || Teletype (monospaced) text. || {{type:[start|end]}} ||
|
||||
|| {{url}} || A page URL. || {{type:[inline|footnote|descr]}}, {{href}}, {{text}} ||
|
||||
|| {{wikilink}} || A local !WikiPage reference. || {{page}}, {{anchor}} ||
|
||||
|| {{toc}} || Table of contents. || {{type:[list_start|list_end|item_start|item_end|target], level, count}} ||
|
||||
|
File diff suppressed because one or more lines are too long
Loading…
x
Reference in New Issue
Block a user