Zeile 91 | Zeile 91 |
---|
/** * Parses a message with the specified options. *
|
/** * Parses a message with the specified options. *
|
* @param string The message to be parsed. * @param array Array of yes/no options - allow_html,filter_badwords,allow_mycode,allow_smilies,nl2br,me_username,filter_cdata.
| * @param string $message The message to be parsed. * @param array $options Array of yes/no options - allow_html,filter_badwords,allow_mycode,allow_smilies,nl2br,me_username,filter_cdata.
|
* @return string The parsed message. */ function parse_message($message, $options=array())
| * @return string The parsed message. */ function parse_message($message, $options=array())
|
Zeile 107 | Zeile 107 |
---|
if(my_substr($this->base_url, my_strlen($this->base_url) -1) != "/") { $this->base_url = $this->base_url."/";
|
if(my_substr($this->base_url, my_strlen($this->base_url) -1) != "/") { $this->base_url = $this->base_url."/";
|
} }
| } }
|
// Set the options $this->options = $options;
$message = $plugins->run_hooks("parse_message_start", $message);
|
// Set the options $this->options = $options;
$message = $plugins->run_hooks("parse_message_start", $message);
|
// Get rid of cartridge returns for they are the workings of the devil
| // Get rid of carriage returns for they are the workings of the devil
|
$message = str_replace("\r", "", $message);
// Filter bad words if requested.
| $message = str_replace("\r", "", $message);
// Filter bad words if requested.
|
Zeile 128 | Zeile 128 |
---|
if(!empty($this->options['filter_cdata'])) { $message = $this->parse_cdata($message);
|
if(!empty($this->options['filter_cdata'])) { $message = $this->parse_cdata($message);
|
}
if(empty($this->options['allow_html'])) { $message = $this->parse_html($message); } else { while(preg_match("#<s(cript|tyle)(.*)>(.*)</s(cript|tyle)(.*)>#is", $message)) { $message = preg_replace("#<s(cript|tyle)(.*)>(.*)</s(cript|tyle)(.*)>#is", "<s$1$2>$3</s$4$5>", $message); }
$find = array('<?php', '<!--', '-->', '?>', "<br />\n", "<br>\n"); $replace = array('<?php', '<!--', '-->', '?>', "\n", "\n"); $message = str_replace($find, $replace, $message);
| |
}
// If MyCode needs to be replaced, first filter out [code] and [php] tags. if(!empty($this->options['allow_mycode']) && $mybb->settings['allowcodemycode'] == 1) {
|
}
// If MyCode needs to be replaced, first filter out [code] and [php] tags. if(!empty($this->options['allow_mycode']) && $mybb->settings['allowcodemycode'] == 1) {
|
| // This code is reserved and could break codes $message = str_replace("<mybb-code>\n", "<mybb_code>\n", $message);
|
preg_match_all("#\[(code|php)\](.*?)\[/\\1\](\r\n?|\n?)#si", $message, $code_matches, PREG_SET_ORDER); $message = preg_replace("#\[(code|php)\](.*?)\[/\\1\](\r\n?|\n?)#si", "<mybb-code>\n", $message);
|
preg_match_all("#\[(code|php)\](.*?)\[/\\1\](\r\n?|\n?)#si", $message, $code_matches, PREG_SET_ORDER); $message = preg_replace("#\[(code|php)\](.*?)\[/\\1\](\r\n?|\n?)#si", "<mybb-code>\n", $message);
|
}
| }
if(empty($this->options['allow_html'])) { $message = $this->parse_html($message); $message = str_replace("<mybb-code>\n", "<mybb-code>\n", $message); } else { // Replace base, meta,script and style tags in our post - these are > dangerous < $message = preg_replace('#<(/?)(base|meta|script|style)([^>]*)>#i', '<$1$2$3>', $message); $message = $this->fix_javascript($message);
|
|
|
// Always fix bad Javascript in the message. $message = $this->fix_javascript($message);
| $find = array("<br />\n", "<br>\n"); $replace = array("\n", "\n"); $message = str_replace($find, $replace, $message); }
|
// Replace "me" code and slaps if we have a username if(!empty($this->options['me_username']) && $mybb->settings['allowmemycode'] == 1)
| // Replace "me" code and slaps if we have a username if(!empty($this->options['me_username']) && $mybb->settings['allowmemycode'] == 1)
|
Zeile 193 | Zeile 193 |
---|
{ foreach($code_matches as $text) {
|
{ foreach($code_matches as $text) {
|
// Fix up HTML inside the code tags so it is clean if(!empty($this->options['allow_html']))
| if(my_strtolower($text[1]) == "code")
|
{
|
{
|
| // Fix up HTML inside the code tags so it is clean
|
$text[2] = $this->parse_html($text[2]);
|
$text[2] = $this->parse_html($text[2]);
|
}
| |
|
|
if(my_strtolower($text[1]) == "code") {
| |
$code = $this->mycode_parse_code($text[2]);
|
$code = $this->mycode_parse_code($text[2]);
|
}
| }
|
elseif(my_strtolower($text[1]) == "php") { $code = $this->mycode_parse_php($text[2]);
| elseif(my_strtolower($text[1]) == "php") { $code = $this->mycode_parse_php($text[2]);
|
Zeile 210 | Zeile 207 |
---|
$message = preg_replace("#\<mybb-code>\n?#", $code, $message, 1); } }
|
$message = preg_replace("#\<mybb-code>\n?#", $code, $message, 1); } }
|
}
// Replace meta and base tags in our post - these are > dangerous < if(!empty($this->options['allow_html'])) { $message = preg_replace_callback("#<((m[^a])|(b[^diloru>])|(s[^aemptu>]))(\s*[^>]*)>#si", create_function( '$matches', 'return htmlspecialchars_uni($matches[0]);' ), $message);
| |
}
if(!isset($this->options['nl2br']) || $this->options['nl2br'] != 0)
| }
if(!isset($this->options['nl2br']) || $this->options['nl2br'] != 0)
|
Zeile 237 | Zeile 225 |
---|
/** * Converts HTML in a message to their specific entities whilst allowing unicode characters. *
|
/** * Converts HTML in a message to their specific entities whilst allowing unicode characters. *
|
* @param string The message to be parsed.
| * @param string $message The message to be parsed.
|
* @return string The formatted message. */ function parse_html($message)
| * @return string The formatted message. */ function parse_html($message)
|
Zeile 306 | Zeile 294 |
---|
$callback_mycode['url_complex']['regex'] = "#\[url=([a-z]+?://)([^\r\n\"<]+?)\](.+?)\[/url\]#si"; $callback_mycode['url_complex']['replacement'] = array($this, 'mycode_parse_url_callback1');
|
$callback_mycode['url_complex']['regex'] = "#\[url=([a-z]+?://)([^\r\n\"<]+?)\](.+?)\[/url\]#si"; $callback_mycode['url_complex']['replacement'] = array($this, 'mycode_parse_url_callback1');
|
$callback_mycode['url_complex2']['regex'] = "#\[url=([^\r\n\"<&\(\)]+?)\](.+?)\[/url\]#si";
| $callback_mycode['url_complex2']['regex'] = "#\[url=([^\r\n\"<]+?)\](.+?)\[/url\]#si";
|
$callback_mycode['url_complex2']['replacement'] = array($this, 'mycode_parse_url_callback2');
++$callback_count;
| $callback_mycode['url_complex2']['replacement'] = array($this, 'mycode_parse_url_callback2');
++$callback_count;
|
Zeile 404 | Zeile 392 |
---|
/** * Parses MyCode tags in a specific message with the specified options.
|
/** * Parses MyCode tags in a specific message with the specified options.
|
* * @param string The message to be parsed. * @param array Array of options in yes/no format. Options are allow_imgcode. * @return string The parsed message. */
| * * @param string $message The message to be parsed. * @param array $options Array of options in yes/no format. Options are allow_imgcode. * @return string The parsed message. */
|
function parse_mycode($message, $options=array()) { global $lang, $mybb;
| function parse_mycode($message, $options=array()) { global $lang, $mybb;
|
Zeile 546 | Zeile 534 |
---|
/** * Parses smilie code in the specified message. *
|
/** * Parses smilie code in the specified message. *
|
* @param string The message being parsed. * @param string Base URL for the image tags created by smilies. * @param string Yes/No if HTML is allowed in the post
| * @param string $message $message The message being parsed. * @param int $allow_html not used
|
* @return string The parsed message. */ function parse_smilies($message, $allow_html=0)
| * @return string The parsed message. */ function parse_smilies($message, $allow_html=0)
|
Zeile 604 | Zeile 591 |
---|
/** * Parses a list of filtered/badwords in the specified message. *
|
/** * Parses a list of filtered/badwords in the specified message. *
|
* @param string The message to be parsed. * @param array Array of parser options in yes/no format.
| * @param string $message The message to be parsed. * @param array $options Array of parser options in yes/no format.
|
* @return string The parsed message. */ function parse_badwords($message, $options=array())
| * @return string The parsed message. */ function parse_badwords($message, $options=array())
|
Zeile 632 | Zeile 619 |
---|
// Take into account the position offset for our last replacement. $index = substr_count($badword['badword'], '*')+2; $badword['badword'] = str_replace('\*', '([a-zA-Z0-9_]{1})', preg_quote($badword['badword'], "#"));
|
// Take into account the position offset for our last replacement. $index = substr_count($badword['badword'], '*')+2; $badword['badword'] = str_replace('\*', '([a-zA-Z0-9_]{1})', preg_quote($badword['badword'], "#"));
|
|
|
// Ensure we run the replacement enough times but not recursively (i.e. not while(preg_match..)) $count = preg_match_all("#(^|\W)".$badword['badword']."(\W|$)#i", $message, $matches); for($i=0; $i < $count; ++$i)
| // Ensure we run the replacement enough times but not recursively (i.e. not while(preg_match..)) $count = preg_match_all("#(^|\W)".$badword['badword']."(\W|$)#i", $message, $matches); for($i=0; $i < $count; ++$i)
|
Zeile 640 | Zeile 627 |
---|
$message = preg_replace("#(^|\W)".$badword['badword']."(\W|$)#i", "\\1".$badword['replacement'].'\\'.$index, $message); } }
|
$message = preg_replace("#(^|\W)".$badword['badword']."(\W|$)#i", "\\1".$badword['replacement'].'\\'.$index, $message); } }
|
}
| }
|
if(!empty($this->options['strip_tags'])) { $message = strip_tags($message);
|
if(!empty($this->options['strip_tags'])) { $message = strip_tags($message);
|
} return $message; }
| } return $message; }
|
/** * Resolves nested CDATA tags in the specified message. *
|
/** * Resolves nested CDATA tags in the specified message. *
|
* @param string The message to be parsed.
| * @param string $message The message to be parsed.
|
* @return string The parsed message. */ function parse_cdata($message) { $message = str_replace(']]>', ']]]]><![CDATA[>', $message);
|
* @return string The parsed message. */ function parse_cdata($message) { $message = str_replace(']]>', ']]]]><![CDATA[>', $message);
|
return $message; }
| return $message; }
|
/** * Attempts to move any javascript references in the specified message.
| /** * Attempts to move any javascript references in the specified message.
|
Zeile 671 | Zeile 658 |
---|
{ $js_array = array( "#(&\#(0*)106;?|&\#(0*)74;?|&\#x(0*)4a;?|&\#x(0*)6a;?|j)((&\#(0*)97;?|&\#(0*)65;?|a)(&\#(0*)118;?|&\#(0*)86;?|v)(&\#(0*)97;?|&\#(0*)65;?|a)(\s)?(&\#(0*)115;?|&\#(0*)83;?|s)(&\#(0*)99;?|&\#(0*)67;?|c)(&\#(0*)114;?|&\#(0*)82;?|r)(&\#(0*)105;?|&\#(0*)73;?|i)(&\#112;?|&\#(0*)80;?|p)(&\#(0*)116;?|&\#(0*)84;?|t)(&\#(0*)58;?|\:))#i",
|
{ $js_array = array( "#(&\#(0*)106;?|&\#(0*)74;?|&\#x(0*)4a;?|&\#x(0*)6a;?|j)((&\#(0*)97;?|&\#(0*)65;?|a)(&\#(0*)118;?|&\#(0*)86;?|v)(&\#(0*)97;?|&\#(0*)65;?|a)(\s)?(&\#(0*)115;?|&\#(0*)83;?|s)(&\#(0*)99;?|&\#(0*)67;?|c)(&\#(0*)114;?|&\#(0*)82;?|r)(&\#(0*)105;?|&\#(0*)73;?|i)(&\#112;?|&\#(0*)80;?|p)(&\#(0*)116;?|&\#(0*)84;?|t)(&\#(0*)58;?|\:))#i",
|
"#(o)(nmouseover\s?=)#i", "#(o)(nmouseout\s?=)#i", "#(o)(nmousedown\s?=)#i", "#(o)(nmousemove\s?=)#i", "#(o)(nmouseup\s?=)#i", "#(o)(nclick\s?=)#i", "#(o)(ndblclick\s?=)#i", "#(o)(nload\s?=)#i", "#(o)(nsubmit\s?=)#i", "#(o)(nblur\s?=)#i", "#(o)(nchange\s?=)#i", "#(o)(nfocus\s?=)#i", "#(o)(nselect\s?=)#i", "#(o)(nunload\s?=)#i", "#(o)(nkeypress\s?=)#i", "#(o)(nerror\s?=)#i", "#(o)(nreset\s?=)#i", "#(o)(nabort\s?=)#i"
| "#([\s\"']on)([a-z]+\s*=)#i",
|
);
|
);
|
$message = preg_replace($js_array, "$1<strong></strong>$2$6", $message);
| // Add invisible white space $message = preg_replace($js_array, "$1\xE2\x80\x8C$2$6", $message);
|
return $message; }
| return $message; }
|
Zeile 699 | Zeile 670 |
---|
/** * Handles fontsize. *
|
/** * Handles fontsize. *
|
* @param string The original size. * @param string The text within a size tag.
| * @param int $size The original size. * @param string $text The text within a size tag.
|
* @return string The parsed text. */ function mycode_handle_size($size, $text) { $size = (int)$size+10;
|
* @return string The parsed text. */ function mycode_handle_size($size, $text) { $size = (int)$size+10;
|
|
|
if($size > 50) { $size = 50;
| if($size > 50) { $size = 50;
|
Zeile 719 | Zeile 690 |
---|
/** * Handles fontsize.
|
/** * Handles fontsize.
|
* * @param array Matches.
| * * @param array $matches Matches.
|
* @return string The parsed text.
|
* @return string The parsed text.
|
*/
| */
|
function mycode_handle_size_callback($matches)
|
function mycode_handle_size_callback($matches)
|
{
| {
|
return $this->mycode_handle_size($matches[1], $matches[2]); }
/** * Parses quote MyCode. *
|
return $this->mycode_handle_size($matches[1], $matches[2]); }
/** * Parses quote MyCode. *
|
* @param string The message to be parsed * @param boolean Are we formatting as text?
| * @param string $message The message to be parsed * @param boolean $text_only Are we formatting as text?
|
* @return string The parsed message. */ function mycode_parse_quotes($message, $text_only=false)
|
* @return string The parsed message. */ function mycode_parse_quotes($message, $text_only=false)
|
{
| {
|
global $lang, $templates, $theme, $mybb;
// Assign pattern and replace values.
| global $lang, $templates, $theme, $mybb;
// Assign pattern and replace values.
|
Zeile 786 | Zeile 757 |
---|
/** * Parses quotes with post id and/or dateline. *
|
/** * Parses quotes with post id and/or dateline. *
|
* @param string The message to be parsed * @param string The username to be parsed * @param boolean Are we formatting as text?
| * @param string $message The message to be parsed * @param string $username The username to be parsed * @param boolean $text_only Are we formatting as text?
|
* @return string The parsed message. */ function mycode_parse_post_quotes($message, $username, $text_only=false)
| * @return string The parsed message. */ function mycode_parse_post_quotes($message, $username, $text_only=false)
|
Zeile 868 | Zeile 839 |
---|
/** * Parses quotes with post id and/or dateline. *
|
/** * Parses quotes with post id and/or dateline. *
|
* @param array Matches.
| * @param array $matches Matches.
|
* @return string The parsed message. */ function mycode_parse_post_quotes_callback1($matches)
| * @return string The parsed message. */ function mycode_parse_post_quotes_callback1($matches)
|
Zeile 879 | Zeile 850 |
---|
/** * Parses quotes with post id and/or dateline. *
|
/** * Parses quotes with post id and/or dateline. *
|
* @param array Matches.
| * @param array $matches Matches.
|
* @return string The parsed message. */ function mycode_parse_post_quotes_callback2($matches)
| * @return string The parsed message. */ function mycode_parse_post_quotes_callback2($matches)
|
Zeile 890 | Zeile 861 |
---|
/** * Parses code MyCode. *
|
/** * Parses code MyCode. *
|
* @param string The message to be parsed * @param boolean Are we formatting as text?
| * @param string $code The message to be parsed * @param boolean $text_only Are we formatting as text?
|
* @return string The parsed message. */ function mycode_parse_code($code, $text_only=false)
| * @return string The parsed message. */ function mycode_parse_code($code, $text_only=false)
|
Zeile 925 | Zeile 896 |
---|
/** * Parses code MyCode. *
|
/** * Parses code MyCode. *
|
* @param array Matches.
| * @param array $matches Matches.
|
* @return string The parsed message. */ function mycode_parse_code_callback($matches)
| * @return string The parsed message. */ function mycode_parse_code_callback($matches)
|
Zeile 936 | Zeile 907 |
---|
/** * Parses PHP code MyCode. *
|
/** * Parses PHP code MyCode. *
|
* @param string The message to be parsed * @param boolean Whether or not it should return it as pre-wrapped in a div or not. * @param boolean Are we formatting as text?
| * @param string $str The message to be parsed * @param boolean $bare_return Whether or not it should return it as pre-wrapped in a div or not. * @param boolean $text_only Are we formatting as text?
|
* @return string The parsed message. */ function mycode_parse_php($str, $bare_return = false, $text_only = false)
| * @return string The parsed message. */ function mycode_parse_php($str, $bare_return = false, $text_only = false)
|
Zeile 960 | Zeile 931 |
---|
{ return; }
|
{ return; }
|
$str = str_replace('&', '&', $str); $str = str_replace('<', '<', $str); $str = str_replace('>', '>', $str);
| |
// See if open and close tags are provided. $added_open_tag = false;
| // See if open and close tags are provided. $added_open_tag = false;
|
Zeile 1019 | Zeile 986 |
---|
/** * Parses PHP code MyCode. *
|
/** * Parses PHP code MyCode. *
|
* @param array Matches.
| * @param array $matches Matches.
|
* @return string The parsed message. */ function mycode_parse_php_callback($matches)
| * @return string The parsed message. */ function mycode_parse_php_callback($matches)
|
Zeile 1030 | Zeile 997 |
---|
/** * Parses URL MyCode. *
|
/** * Parses URL MyCode. *
|
* @param string The URL to link to. * @param string The name of the link.
| * @param string $url The URL to link to. * @param string $name The name of the link.
|
* @return string The built-up link. */ function mycode_parse_url($url, $name="")
| * @return string The built-up link. */ function mycode_parse_url($url, $name="")
|
Zeile 1079 | Zeile 1046 |
---|
/** * Parses URL MyCode. *
|
/** * Parses URL MyCode. *
|
* @param array Matches.
| * @param array $matches Matches.
|
* @return string The built-up link. */ function mycode_parse_url_callback1($matches)
| * @return string The built-up link. */ function mycode_parse_url_callback1($matches)
|
Zeile 1094 | Zeile 1061 |
---|
/** * Parses URL MyCode. *
|
/** * Parses URL MyCode. *
|
* @param array Matches.
| * @param array $matches Matches.
|
* @return string The built-up link. */ function mycode_parse_url_callback2($matches)
| * @return string The built-up link. */ function mycode_parse_url_callback2($matches)
|
Zeile 1109 | Zeile 1076 |
---|
/** * Parses IMG MyCode. *
|
/** * Parses IMG MyCode. *
|
* @param string The URL to the image * @param array Optional array of dimensions
| * @param string $url The URL to the image * @param array $dimensions Optional array of dimensions * @param string $align * @return string
|
*/ function mycode_parse_img($url, $dimensions=array(), $align='') {
| */ function mycode_parse_img($url, $dimensions=array(), $align='') {
|
Zeile 1156 | Zeile 1125 |
---|
/** * Parses IMG MyCode. *
|
/** * Parses IMG MyCode. *
|
* @param array Matches.
| * @param array $matches Matches.
|
* @return string Image code. */ function mycode_parse_img_callback1($matches)
| * @return string Image code. */ function mycode_parse_img_callback1($matches)
|
Zeile 1167 | Zeile 1136 |
---|
/** * Parses IMG MyCode. *
|
/** * Parses IMG MyCode. *
|
* @param array Matches.
| * @param array $matches Matches.
|
* @return string Image code. */ function mycode_parse_img_callback2($matches)
| * @return string Image code. */ function mycode_parse_img_callback2($matches)
|
Zeile 1178 | Zeile 1147 |
---|
/** * Parses IMG MyCode. *
|
/** * Parses IMG MyCode. *
|
* @param array Matches.
| * @param array $matches Matches.
|
* @return string Image code. */ function mycode_parse_img_callback3($matches)
| * @return string Image code. */ function mycode_parse_img_callback3($matches)
|
Zeile 1189 | Zeile 1158 |
---|
/** * Parses IMG MyCode. *
|
/** * Parses IMG MyCode. *
|
* @param array Matches.
| * @param array $matches Matches.
|
* @return string Image code. */ function mycode_parse_img_callback4($matches)
| * @return string Image code. */ function mycode_parse_img_callback4($matches)
|
Zeile 1200 | Zeile 1169 |
---|
/** * Parses IMG MyCode disabled. *
|
/** * Parses IMG MyCode disabled. *
|
* @param string The URL to the image
| * @param string $url The URL to the image * @return string
|
*/ function mycode_parse_img_disabled($url) {
| */ function mycode_parse_img_disabled($url) {
|
Zeile 1212 | Zeile 1182 |
---|
$image = $lang->sprintf($lang->posted_image, $this->mycode_parse_url($url)); return $image;
|
$image = $lang->sprintf($lang->posted_image, $this->mycode_parse_url($url)); return $image;
|
}
/** * Parses IMG MyCode disabled. * * @param array Matches. * @return string Image code. */
| }
/** * Parses IMG MyCode disabled. * * @param array $matches Matches. * @return string Image code. */
|
function mycode_parse_img_disabled_callback1($matches) { return $this->mycode_parse_img_disabled($matches[2]);
| function mycode_parse_img_disabled_callback1($matches) { return $this->mycode_parse_img_disabled($matches[2]);
|
Zeile 1228 | Zeile 1198 |
---|
/** * Parses IMG MyCode disabled. *
|
/** * Parses IMG MyCode disabled. *
|
* @param array Matches.
| * @param array $matches Matches.
|
* @return string Image code. */ function mycode_parse_img_disabled_callback2($matches) { return $this->mycode_parse_img_disabled($matches[4]);
|
* @return string Image code. */ function mycode_parse_img_disabled_callback2($matches) { return $this->mycode_parse_img_disabled($matches[4]);
|
}
| }
|
/** * Parses IMG MyCode disabled. *
|
/** * Parses IMG MyCode disabled. *
|
* @param array Matches.
| * @param array $matches Matches.
|
* @return string Image code. */ function mycode_parse_img_disabled_callback3($matches)
| * @return string Image code. */ function mycode_parse_img_disabled_callback3($matches)
|
Zeile 1250 | Zeile 1220 |
---|
/** * Parses IMG MyCode disabled. *
|
/** * Parses IMG MyCode disabled. *
|
* @param array Matches.
| * @param array $matches Matches.
|
* @return string Image code. */ function mycode_parse_img_disabled_callback4($matches)
| * @return string Image code. */ function mycode_parse_img_disabled_callback4($matches)
|
Zeile 1261 | Zeile 1231 |
---|
/** * Parses email MyCode. *
|
/** * Parses email MyCode. *
|
* @param string The email address to link to. * @param string The name for the link.
| * @param string $email The email address to link to. * @param string $name The name for the link.
|
* @return string The built-up email link. */ function mycode_parse_email($email, $name="")
| * @return string The built-up email link. */ function mycode_parse_email($email, $name="")
|
Zeile 1272 | Zeile 1242 |
---|
$name = $email; } if(preg_match("/^([a-zA-Z0-9-_\+\.]+?)@[a-zA-Z0-9-]+\.[a-zA-Z0-9\.-]+$/si", $email))
|
$name = $email; } if(preg_match("/^([a-zA-Z0-9-_\+\.]+?)@[a-zA-Z0-9-]+\.[a-zA-Z0-9\.-]+$/si", $email))
|
{ return "<a href=\"mailto:$email\">".$name."</a>"; } elseif(preg_match("/^([a-zA-Z0-9-_\+\.]+?)@[a-zA-Z0-9-]+\.[a-zA-Z0-9\.-]+\?(.*?)$/si", $email)) {
| { return "<a href=\"mailto:$email\">".$name."</a>"; } elseif(preg_match("/^([a-zA-Z0-9-_\+\.]+?)@[a-zA-Z0-9-]+\.[a-zA-Z0-9\.-]+\?(.*?)$/si", $email)) {
|
return "<a href=\"mailto:".htmlspecialchars_uni($email)."\">".$name."</a>"; } else
| return "<a href=\"mailto:".htmlspecialchars_uni($email)."\">".$name."</a>"; } else
|
Zeile 1288 | Zeile 1258 |
---|
/** * Parses email MyCode. *
|
/** * Parses email MyCode. *
|
* @param array Matches
| * @param array $matches Matches
|
* @return string The built-up email link. */ function mycode_parse_email_callback($matches)
| * @return string The built-up email link. */ function mycode_parse_email_callback($matches)
|
Zeile 1303 | Zeile 1273 |
---|
/** * Parses video MyCode. *
|
/** * Parses video MyCode. *
|
* @param string The video provider. * @param string The video to link to.
| * @param string $video The video provider. * @param string $url The video to link to.
|
* @return string The built-up video code. */ function mycode_parse_video($video, $url)
| * @return string The built-up video code. */ function mycode_parse_video($video, $url)
|
Zeile 1353 | Zeile 1323 |
---|
$id = $path[4]; // http://www.myspace.com/video/fds/fds/123 break; case "facebook":
|
$id = $path[4]; // http://www.myspace.com/video/fds/fds/123 break; case "facebook":
|
$id = $input['v']; // http://www.facebook.com/video/video.php?v=123
| if(isset($input['v'])) { $id = $input['v']; // http://www.facebook.com/video/video.php?v=123 } elseif(substr($path[3], 0, 3) == 'vb.') { $id = $path[4]; // https://www.facebook.com/fds/videos/vb.123/123/ } else { $id = $path[3]; // https://www.facebook.com/fds/videos/123/ }
|
break; case "veoh": $id = $path[2]; // http://www.veoh.com/watch/123
| break; case "veoh": $id = $path[2]; // http://www.veoh.com/watch/123
|
Zeile 1362 | Zeile 1343 |
---|
$id = $input['i']; // http://www.liveleak.com/view?i=123 break; case "yahoo":
|
$id = $input['i']; // http://www.liveleak.com/view?i=123 break; case "yahoo":
|
$id = $path[1]; // http://xy.screen.yahoo.com/fds-123.html
| if(isset($path[2])) { $id = $path[2]; // http://xy.screen.yahoo.com/fds/fds-123.html } else { $id = $path[1]; // http://xy.screen.yahoo.com/fds-123.html }
|
// Support for localized portals $domain = explode('.', $parsed_url['host']); if($domain[0] != 'screen' && preg_match('#^([a-z-]+)$#', $domain[0])) { $local = "{$domain[0]}.";
|
// Support for localized portals $domain = explode('.', $parsed_url['host']); if($domain[0] != 'screen' && preg_match('#^([a-z-]+)$#', $domain[0])) { $local = "{$domain[0]}.";
|
} else {
| } else {
|
$local = ''; } break; case "vimeo":
|
$local = ''; } break; case "vimeo":
|
$id = $path[1]; // http://vimeo.com/fds123
| if(isset($path[3])) { $id = $path[3]; // http://vimeo.com/fds/fds/fds123 } else { $id = $path[1]; // http://vimeo.com/fds123 }
|
break; case "youtube": if($fragments[0])
| break; case "youtube": if($fragments[0])
|
Zeile 1410 | Zeile 1405 |
---|
/** * Parses video MyCode. *
|
/** * Parses video MyCode. *
|
* @param array Matches.
| * @param array $matches Matches.
|
* @return string The built-up video code. */ function mycode_parse_video_callback($matches)
| * @return string The built-up video code. */ function mycode_parse_video_callback($matches)
|
Zeile 1421 | Zeile 1416 |
---|
/** * Parses video MyCode disabled. *
|
/** * Parses video MyCode disabled. *
|
* @param string The URL to the video
| * @param string $url The URL to the video * @return string
|
*/ function mycode_parse_video_disabled($url) {
| */ function mycode_parse_video_disabled($url) {
|
Zeile 1438 | Zeile 1434 |
---|
/** * Parses video MyCode disabled. *
|
/** * Parses video MyCode disabled. *
|
* @param array Matches.
| * @param array $matches Matches.
|
* @return string The built-up video code. */ function mycode_parse_video_disabled_callback($matches)
| * @return string The built-up video code. */ function mycode_parse_video_disabled_callback($matches)
|
Zeile 1449 | Zeile 1445 |
---|
/** * Parses URLs automatically. *
|
/** * Parses URLs automatically. *
|
* @param string The message to be parsed
| * @param string $message The message to be parsed
|
* @return string The parsed message. */ function mycode_auto_url($message)
| * @return string The parsed message. */ function mycode_auto_url($message)
|
Zeile 1466 | Zeile 1462 |
---|
/** * Parses URLs automatically. *
|
/** * Parses URLs automatically. *
|
* @param array Matches
| * @param array $matches Matches
|
* @return string The parsed message. */ function mycode_auto_url_callback($matches)
| * @return string The parsed message. */ function mycode_auto_url_callback($matches)
|
Zeile 1507 | Zeile 1503 |
---|
/** * Parses list MyCode. *
|
/** * Parses list MyCode. *
|
* @param string The message to be parsed * @param string The list type
| * @param string $message The message to be parsed * @param string $type The list type
|
* @return string The parsed message. */ function mycode_parse_list($message, $type="")
| * @return string The parsed message. */ function mycode_parse_list($message, $type="")
|
Zeile 1519 | Zeile 1515 |
---|
$message = "[*]{$message}"; }
|
$message = "[*]{$message}"; }
|
$message = preg_replace("#\s*\[\*\]\s*#", "</li>\n<li>", $message);
| $message = preg_replace("#[^\S\n\r]*\[\*\]\s*#", "</li>\n<li>", $message);
|
$message .= "</li>";
if($type)
| $message .= "</li>";
if($type)
|
Zeile 1537 | Zeile 1533 |
---|
/** * Parses list MyCode. *
|
/** * Parses list MyCode. *
|
* @param array Matches
| * @param array $matches Matches
|
* @return string The parsed message. */ function mycode_parse_list_callback($matches)
| * @return string The parsed message. */ function mycode_parse_list_callback($matches)
|
Zeile 1548 | Zeile 1544 |
---|
/** * Prepares list MyCode by finding the matching list tags. *
|
/** * Prepares list MyCode by finding the matching list tags. *
|
* @param array Matches
| * @param array $matches Matches
|
* @return string Temporary replacements. */ function mycode_prepare_list($matches)
| * @return string Temporary replacements. */ function mycode_prepare_list($matches)
|
Zeile 1585 | Zeile 1581 |
---|
/** * Strips smilies from a string *
|
/** * Strips smilies from a string *
|
* @param string The message for smilies to be stripped from
| * @param string $message The message for smilies to be stripped from
|
* @return string The message with smilies stripped */ function strip_smilies($message)
| * @return string The message with smilies stripped */ function strip_smilies($message)
|
Zeile 1604 | Zeile 1600 |
---|
/** * Highlights a string *
|
/** * Highlights a string *
|
* @param string The message to be highligted * @param string The highlight keywords
| * @param string $message The message to be highligted * @param string $highlight The highlight keywords
|
* @return string The message with highlight bbcodes */ function highlight_message($message, $highlight)
| * @return string The message with highlight bbcodes */ function highlight_message($message, $highlight)
|
Zeile 1626 | Zeile 1622 |
---|
/** * Parses message to plain text equivalents of MyCode. *
|
/** * Parses message to plain text equivalents of MyCode. *
|
* @param string The message to be parsed
| * @param string $message The message to be parsed * @param array $options
|
* @return string The parsed message. */ function text_parse_message($message, $options=array())
| * @return string The parsed message. */ function text_parse_message($message, $options=array())
|