PATH:
home
/
letacommog
/
crmleta
/
libraries
/
Smarty
/
libs
/
plugins
<?php /** * Smarty plugin * * @package Smarty * @subpackage PluginsModifier */ /** * Smarty capitalize modifier plugin * * Type: modifier<br> * Name: capitalize<br> * Purpose: capitalize words in the string * * {@internal {$string|capitalize:true:true} is the fastest option for MBString enabled systems }} * * @param string $string string to capitalize * @param boolean $uc_digits also capitalize "x123" to "X123" * @param boolean $lc_rest capitalize first letters, lowercase all following letters "aAa" to "Aaa" * @return string capitalized string * @author Monte Ohrt <monte at ohrt dot com> * @author Rodney Rehm */ function smarty_modifier_capitalize($string, $uc_digits = false, $lc_rest = false) { if (Smarty::$_MBSTRING) { if ($lc_rest) { // uppercase (including hyphenated words) $upper_string = mb_convert_case( $string, MB_CASE_TITLE, Smarty::$_CHARSET ); } else { // uppercase word breaks $upper_string = preg_replace("!(^|[^\p{L}'])([\p{Ll}])!eS" . Smarty::$_UTF8_MODIFIER, "stripslashes('\\1').mb_convert_case(stripslashes('\\2'),MB_CASE_UPPER, '" . addslashes(Smarty::$_CHARSET) . "')", $string); } // check uc_digits case if (!$uc_digits) { if (preg_match_all("!\b([\p{L}]*[\p{N}]+[\p{L}]*)\b!" . Smarty::$_UTF8_MODIFIER, $string, $matches, PREG_OFFSET_CAPTURE)) { foreach($matches[1] as $match) { $upper_string = substr_replace($upper_string, mb_strtolower($match[0], Smarty::$_CHARSET), $match[1], strlen($match[0])); } } } $upper_string = preg_replace("!((^|\s)['\"])(\w)!e" . Smarty::$_UTF8_MODIFIER, "stripslashes('\\1').mb_convert_case(stripslashes('\\3'),MB_CASE_UPPER, '" . addslashes(Smarty::$_CHARSET) . "')", $upper_string); return $upper_string; } // lowercase first if ($lc_rest) { $string = strtolower($string); } // uppercase (including hyphenated words) $upper_string = preg_replace("!(^|[^\p{L}'])([\p{Ll}])!eS" . Smarty::$_UTF8_MODIFIER, "stripslashes('\\1').ucfirst(stripslashes('\\2'))", $string); // check uc_digits case if (!$uc_digits) { if (preg_match_all("!\b([\p{L}]*[\p{N}]+[\p{L}]*)\b!" . Smarty::$_UTF8_MODIFIER, $string, $matches, PREG_OFFSET_CAPTURE)) { foreach($matches[1] as $match) { $upper_string = substr_replace($upper_string, strtolower($match[0]), $match[1], strlen($match[0])); } } } $upper_string = preg_replace("!((^|\s)['\"])(\w)!e" . Smarty::$_UTF8_MODIFIER, "stripslashes('\\1').strtoupper(stripslashes('\\3'))", $upper_string); return $upper_string; } ?>
[+]
..
[-] modifiercompiler.indent.php
[edit]
[-] modifiercompiler.count_characters.php
[edit]
[-] function.html_select_time.php
[edit]
[-] function.html_image.php
[edit]
[-] shared.make_timestamp.php
[edit]
[-] modifiercompiler.to_charset.php
[edit]
[-] shared.mb_unicode.php
[edit]
[-] shared.literal_compiler_param.php
[edit]
[-] function.html_radios.php
[edit]
[-] outputfilter.trimwhitespace.php
[edit]
[-] modifiercompiler.unescape.php
[edit]
[-] modifier.escape.php
[edit]
[-] modifier.debug_print_var.php
[edit]
[-] function.html_select_date.php
[edit]
[-] modifiercompiler.count_sentences.php
[edit]
[-] shared.mb_str_replace.php
[edit]
[-] modifier.regex_replace.php
[edit]
[-] shared.mb_wordwrap.php
[edit]
[-] function.html_table.php
[edit]
[-] function.mailto.php
[edit]
[-] modifier.truncate.php
[edit]
[-] block.textformat.php
[edit]
[-] modifiercompiler.count_words.php
[edit]
[-] modifiercompiler.default.php
[edit]
[-] modifiercompiler.wordwrap.php
[edit]
[-] modifier.date_format.php
[edit]
[-] modifiercompiler.string_format.php
[edit]
[-] shared.escape_special_chars.php
[edit]
[-] variablefilter.htmlspecialchars.php
[edit]
[-] modifier.replace.php
[edit]
[-] modifiercompiler.noprint.php
[edit]
[-] function.math.php
[edit]
[-] function.html_checkboxes.php
[edit]
[-] modifiercompiler.strip.php
[edit]
[-] modifiercompiler.strip_tags.php
[edit]
[-] modifiercompiler.from_charset.php
[edit]
[-] modifiercompiler.count_paragraphs.php
[edit]
[-] function.counter.php
[edit]
[-] modifiercompiler.upper.php
[edit]
[-] modifiercompiler.lower.php
[edit]
[-] modifier.capitalize.php
[edit]
[-] function.cycle.php
[edit]
[-] modifier.spacify.php
[edit]
[-] function.fetch.php
[edit]
[-] function.html_options.php
[edit]
[-] modifiercompiler.escape.php
[edit]
[-] modifiercompiler.cat.php
[edit]