From 03ddde69fd571ce644c37aa69499616091ca1e4b Mon Sep 17 00:00:00 2001 From: nate Date: Tue, 20 Jan 2009 17:58:12 -0500 Subject: [PATCH] Removing Flay library --- cake/libs/flay.php | 285 --------------------------------------------- 1 file changed, 285 deletions(-) delete mode 100644 cake/libs/flay.php diff --git a/cake/libs/flay.php b/cake/libs/flay.php deleted file mode 100644 index ed23cf7f4..000000000 --- a/cake/libs/flay.php +++ /dev/null @@ -1,285 +0,0 @@ -text = $text; - parent::__construct(); - } -/** - * Returns given text translated to HTML using the Flay syntax. - * - * @param string $text String to format - * @param boolean $bare Set this to only do

transforms and > to >, no typography additions. - * @param boolean $allowHtml Set this to trim whitespace and disable all HTML - * @return string Formatted text - * @access public - */ - function toHtml($text = null, $bare = false, $allowHtml = false) { - if (empty($text) && empty($this->text)) { - return false; - } - $text = $text ? $text : $this->text; - // trim whitespace and disable all HTML - if ($allowHtml) { - $text = trim($text); - } else { - $text = str_replace('<', '<', str_replace('>', '>', trim($text))); - } - - if (!$bare) { - // multi-paragraph functions - $text=preg_replace('#(?:[\n]{0,2})"""(.*)"""(?:[\n]{0,2})#s', "\n\n%BLOCKQUOTE%\n\n\\1\n\n%ENDBLOCKQUOTE%\n\n", $text); - $text=preg_replace('#(?:[\n]{0,2})===(.*)===(?:[\n]{0,2})#s', "\n\n%CENTER%\n\n\\1\n\n%ENDCENTER%\n\n", $text); - } - - // pre-parse newlines - $text=preg_replace("#\r\n#", "\n", $text); - $text=preg_replace("#[\n]{2,}#", "%PARAGRAPH%", $text); - $text=preg_replace('#[\n]{1}#', "%LINEBREAK%", $text); - $out =''; - - foreach (split('%PARAGRAPH%', $text)as $line) { - if ($line) { - if (!$bare) { - $links = array(); - $regs = null; - - if (preg_match_all('#\[([^\[]{4,})\]#', $line, $regs)) { - foreach ($regs[1] as $reg) { - $links[] = $reg; - $line = str_replace("[{$reg}]", '%LINK' . (count($links) - 1) . '%', $line); - } - } - // bold - $line = ereg_replace("\*([^\*]*)\*", "\\1", $line); - // italic - $line = ereg_replace("_([^_]*)_", "\\1", $line); - } - // entities - $line = str_replace(' - ', ' – ', $line); - $line = str_replace(' -- ', ' — ', $line); - $line = str_replace('(C)', '©', $line); - $line = str_replace('(R)', '®', $line); - $line = str_replace('(TM)', '™', $line); - // guess e-mails - $emails = null; - if (preg_match_all("#([_A-Za-z0-9+-+]+(?:\.[_A-Za-z0-9+-]+)*@[A-Za-z0-9-]+(?:\.[A-Za-z0-9-]+)*)#", $line, $emails)) { - foreach ($emails[1] as $email) { - $line = str_replace($email, "{$email}", $line); - } - } - - if (!$bare) { - $urls = null; - if (preg_match_all("#((?:http|https|ftp|nntp)://[^ ]+)#", $line, $urls)) { - foreach ($urls[1] as $url) { - $line = str_replace($url, "{$url}", $line); - } - } - - if (preg_match_all("#(www\.[^\n\%\ ]+[^\n\%\,\.\ ])#", $line, $urls)) { - foreach ($urls[1] as $url) { - $line = str_replace($url, "{$url}", $line); - } - } - - if ($count = count($links)) { - for ($ii = 0; $ii < $count; $ii++) { - if (preg_match("#^(http|https|ftp|nntp)://#", $links[$ii])) { - $prefix = null; - } else { - $prefix = 'http://'; - } - if (preg_match('#^[^\ ]+\.(jpg|jpeg|gif|png)$#', $links[$ii])) { - $with = "\"\""; - } elseif (preg_match('#^([^\]\ ]+)(?:\ ([^\]]+))?$#', $links[$ii], $regs)) { - if (isset($regs[2])) { - if (preg_match('#\.(jpg|jpeg|gif|png)$#', $regs[2])) { - $body = "\"\""; - } else { - $body = $regs[2]; - } - } else { - $body = $links[$ii]; - } - $with = "{$body}"; - } else { - $with = $prefix . $links[$ii]; - } - $line = str_replace("%LINK{$ii}%", $with, $line); - } - } - } - $out .= str_replace('%LINEBREAK%', "
\n", "

{$line}

\n"); - } - } - - if (!$bare) { - $out = str_replace('

%BLOCKQUOTE%

', "
", $out); - $out = str_replace('

%ENDBLOCKQUOTE%

', "
", $out); - $out = str_replace('

%CENTER%

', "
", $out); - $out = str_replace('

%ENDCENTER%

', "
", $out); - } - return $out; - } -/** - * Return the words of the string as an array. - * - * @param string $string - * @return array Array of words - * @access public - */ - function extractWords($string) { - $split = preg_split('/[\s,\.:\/="!\(\)<>~\[\]]+/', $string); - return $split; - } -/** - * Return given string with words in array colorMarked, up to a number of times (defaults to 5). - * - * @param array $words Words to look for and markup - * @param string $string String to look in - * @param integer $max_snippets Max number of snippets to extract - * @return string String with words marked - * @see colorMark - * @access public - */ - function markedSnippets($words, $string, $max_snippets = 5) { - $string = strip_tags($string); - $snips = array(); - $rest = $string; - foreach ($words as $word) { - if (preg_match_all("/[\s,]+.{0,40}{$word}.{0,40}[\s,]+/i", $rest, $r)) { - foreach ($r as $result) { - $rest = str_replace($result, '', $rest); - } - $snips = array_merge($snips, $r[0]); - } - } - - if (count($snips) > $max_snippets) { - $snips = array_slice($snips, 0, $max_snippets); - } - $joined = join(' ... ', $snips); - $snips = $joined ? "... {$joined} ..." : substr($string, 0, 80) . '...'; - return $this->colorMark($words, $snips); - } -/** - * Returns string with EM elements with color classes added. - * - * @param array $words Array of words to be colorized - * @param string $string Text in which the words might be found - * @return string String with words colorized - * @access public - */ - function colorMark($words, $string) { - $colors=array('yl', 'gr', 'rd', 'bl', 'fu', 'cy'); - $nextColorIndex = 0; - foreach ($words as $word) { - $string = preg_replace("/({$word})/i", '\\1", $string); - $nextColorIndex++; - } - return $string; - } -/** - * Returns given text with tags stripped out. - * - * @param string $text Text to clean - * @return string Cleaned text - * @access public - */ - function toClean($text) { - $strip = strip_tags(html_entity_decode($text, ENT_QUOTES)); - return $strip; - } -/** - * Return parsed text with tags stripped out. - * - * @param string $text Text to parse and clean - * @return string Cleaned text - * @access public - */ - function toParsedAndClean($text) { - return $this->toClean(Flay::toHtml($text)); - } -/** - * Return a fragment of a text, up to $length characters long, with an ellipsis after it. - * - * @param string $text Text to be truncated. - * @param integer $length Max length of text. - * @param string $ellipsis Sign to print after truncated text. - * @return string Fragment - * @access public - */ - function fragment($text, $length, $ellipsis = '...') { - $soft = $length - 5; - $hard = $length + 5; - $rx = '/(.{' . $soft . ',' . $hard . '})[\s,\.:\/="!\(\)<>~\[\]]+.*/'; - - if (preg_match($rx, $text, $r)) { - $out = $r[1]; - } else { - $out = substr($text, 0, $length); - } - $out = $out . (strlen($out) < strlen($text) ? $ellipsis : null); - return $out; - } -} -?> \ No newline at end of file