Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 General Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 12-14-2010, 12:42 PM
Scandal's Avatar
Scandal Scandal is offline
 
Join Date: Dec 2005
Location: Athens / Greece
Posts: 409
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default How to change this php function

Well, in functions.php, there is this function for the censorship system:
PHP Code:
// #############################################################################
/**
* Replaces any instances of words censored in $vbulletin->options['censorwords'] with $vbulletin->options['censorchar']
*
* @param    string    Text to be censored
*
* @return    string
*/
function fetch_censored_text($text)
{
    global 
$vbulletin;
    static 
$censorwords;

    if (!
$text)
    {
        
// return $text rather than nothing, since this could be '' or 0
        
return $text;
    }

    if (
$vbulletin->options['enablecensor'] AND !empty($vbulletin->options['censorwords']))
    {
        if (empty(
$censorwords))
        {
            
$vbulletin->options['censorwords'] = preg_quote($vbulletin->options['censorwords'], '#');
            
$censorwords preg_split('#[ \r\n\t]+#'$vbulletin->options['censorwords'], -1PREG_SPLIT_NO_EMPTY);
        }

        foreach (
$censorwords AS $censorword)
        {
            if (
substr($censorword02) == '\\{')
            {
                if (
substr($censorword, -22) == '\\}')
                {
                    
// prevents errors from the replace if the { and } are mismatched
                    
$censorword substr($censorword2, -2);
                }

                
// ASCII character search 0-47, 58-64, 91-96, 123-127
                
$nonword_chars '\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f';

                
// words are delimited by ASCII characters outside of A-Z, a-z and 0-9
                
$text preg_replace(
                    
'#(?<=[' $nonword_chars ']|^)' $censorword '(?=[' $nonword_chars ']|$)#si',
                    
str_repeat($vbulletin->options['censorchar'], vbstrlen($censorword)),
                    
$text
                
);
            }
            else
            {
                
$text preg_replace("#$censorword#si"str_repeat($vbulletin->options['censorchar'], vbstrlen($censorword)), $text);
            }
        }
    }

    
// strip any admin-specified blank ascii chars
    
$text strip_blank_ascii($text$vbulletin->options['censorchar']);

    return 
$text;

When a message has censored words, this function replaces each character of the word with the censorchar.
I want to change this function to return the $text WITH the censored words, BUT beside each censored word, I want to there is a " " (space).
For example, if I write the censored word "example" I want to return " example".

I know it is droll, but I need it

Thanks in advance and sorry for my bad english.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 10:24 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.03723 seconds
  • Memory Usage 2,229KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)showthread_list
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_threadedmode.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids_threaded
  • showthread_threaded_construct_link
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete