View Full Version : Hide custom BBcode content from usergroups
cric2k
06-16-2011, 10:15 AM
Hi,
I have made a Not Safe For Work custom BBcode tag which users wrap around more mature content so that it is'nt displayed by default in a thread. I want to be able to completely remove this content for guest users (Google doesn't like it).
Anyone any ideas which templates I modify to insert the if guest conditions?
cheers
Sarteck
06-16-2011, 11:11 PM
I don't think you could do it through templates. You COULD add a plugin on the hook bbcode_create, and just modify your NSFW BB Code to PHP.
/// NOTE -- insert your BB Code below (this example uses "USER"
$my_bbcode_tag = 'user';
$this->tag_list['option'][$my_bbcode_tag] = array ();
$this->tag_list['option'][$my_bbcode_tag]['callback'] = 'handle_external';
$this->tag_list['option'][$my_bbcode_tag]['external_callback'] = 'handle_'.$my_bbcode_tag;
$this->tag_list['no_option'][$my_bbcode_tag] = array ();
$this->tag_list['no_option'][$my_bbcode_tag]['callback'] = 'handle_external';
$this->tag_list['no_option'][$my_bbcode_tag]['external_callback'] = 'handle_'.$my_bbcode_tag;
if (!function_exists ('handle_'.$my_bbcode_tag))
{
/// NOTE - REPLACE FUNCTION NAME!
function handle_BLAHBLAH(&$theobj, &$value, &$option)
{
global $vbulletin;
if (is_member_of($vbulletin->userinfo, 1)) {return 'Log In to view Content';}
/// NOTE - Re-write your NSFW stuff here in PHP format.
/// -- $value is {param} and $option is {option}
/// -- return the output you want.
/// -- Below, I give an example that returns a user's name with the markup given the UserID (or no markup of the {option} is 'plain')
if (intval($value) <= 0) {return 'INVALID USER';}
$user = fetch_userinfo(intval($value));
if (!$user) {return 'INVALID USER';}
if (strtolower($option) == 'plain') {$username = ($user['username']);} else {$username = fetch_musername($user);}
$href = 'member.php?'.$user['userid'];
return "<a href=\"$href\">$username</a>";
}
}
vBulletin® v3.8.12 by vBS, Copyright ©2000-2024, vBulletin Solutions Inc.