public function test__qa_block_words_replace()
 {
     $wordpreg = qa_block_words_to_preg($this->blockWordString);
     $test = qa_block_words_replace('tired of my ocean boat style', $wordpreg);
     $expected = '***** of my ***** **** *****';
     $this->assertEquals($expected, $test);
 }
function qa_q_request($questionid, $title)
{
    // URL Clean
    if (qa_opt('useo_url_cleanup')) {
        //clean url's title
        $words = qa_opt('useo_url_words_list');
        $raw_title = $title;
        // ~~ str_replace method
        //$word_list = explode(',', $words);
        //$title = str_replace($word_list, '', $raw_title);
        // ~~preg_replace method with Q2A functions
        require_once QA_INCLUDE_DIR . 'qa-util-string.php';
        $word_list = qa_block_words_to_preg($words);
        $title = trim(qa_block_words_replace($title, $word_list, ''));
        if (strlen($title) == 0 && qa_opt('useo_url_dont_make_empty')) {
            $title = $raw_title;
        }
    }
    $url = qa_q_request_base($questionid, $title);
    // capitalize letters
    if (qa_opt('useo_url_q_uppercase')) {
        $type = qa_opt('useo_url_q_uppercase_type');
        if ($type == 1) {
            // first word's first letter
            $parts = explode('/', $url);
            $parts[1] = ucfirst($parts[1]);
            $url = implode('/', $parts);
        } else {
            if ($type == 2) {
                // all word's first letter
                $url = str_replace(' ', '?', ucwords(str_replace('?', ' ', str_replace(' ', '/', ucwords(str_replace('/', ' ', str_replace(' ', '-', ucwords(str_replace('-', ' ', strtolower($url))))))))));
            } else {
                // whole words
                $url = strtoupper($url);
            }
        }
    }
    return $url;
}
示例#3
0
function qa_get_block_words_preg()
{
    if (qa_to_override(__FUNCTION__)) {
        $args = func_get_args();
        return qa_call_override(__FUNCTION__, $args);
    }
    global $qa_blockwordspreg, $qa_blockwordspreg_set;
    if (!@$qa_blockwordspreg_set) {
        $blockwordstring = qa_opt('block_bad_words');
        if (strlen($blockwordstring)) {
            require_once QA_INCLUDE_DIR . 'qa-util-string.php';
            $qa_blockwordspreg = qa_block_words_to_preg($blockwordstring);
        } else {
            $qa_blockwordspreg = null;
        }
        $qa_blockwordspreg_set = true;
    }
    return $qa_blockwordspreg;
}
function qa_get_block_words_preg()
{
    global $qa_blockwordspreg, $qa_blockwordspreg_set;
    if (!@$qa_blockwordspreg_set) {
        $blockwordstring = qa_opt('block_bad_words');
        if (strlen($blockwordstring)) {
            require_once QA_INCLUDE_DIR . 'qa-util-string.php';
            $qa_blockwordspreg = qa_block_words_to_preg($blockwordstring);
        } else {
            $qa_blockwordspreg = null;
        }
        $qa_blockwordspreg_set = true;
    }
    return $qa_blockwordspreg;
}