/** * Stops text being all UPPER CASE * * @param string The text to apply 'anti-shouting' to * * @return string The text with 'anti-shouting' applied * */ function fetch_no_shouting_text($text) { global $vbulletin; $effective_string = preg_replace('#[^a-z0-9\\s]#i', '\\2', strip_bbcode($text, true, false)); if ($vbulletin->options['stopshouting'] and vbstrlen($effective_string) >= $vbulletin->options['stopshouting'] and $effective_string == strtoupper($effective_string)) { return fetch_sentence_case($text); } else { return $text; } }
/** * Stops text being all UPPER CASE * * @param string The text to apply 'anti-shouting' to * * @return string The text with 'anti-shouting' applied * */ function fetch_no_shouting_text($text) { global $vbulletin; $effective_string = preg_replace('#[^a-z0-9\s]#i', '\2', strip_bbcode($text, true, false)); if ($vbulletin->options['stopshouting'] AND vbstrlen($effective_string) >= $vbulletin->options['stopshouting'] AND $effective_string == strtoupper($effective_string) AND !preg_match('#^[\x20-\x40\x5B-\x60\x7B-\x7E\s]+$#', $effective_string)/* string does not consist entirely of non-alpha ascii chars #32591 */) { return fetch_sentence_case($text); } else { return $text; } }