Quote:
Originally Posted by Me!
Only one problem I have. Could you please tell me where the img code is located? It doesn't seem to have it listed by itself. I tried disabling each code one-by-one to test (via admin panel) and I have just had no luck.
Thank you
|
Image Code can't be turned off this simply... But I think there's a way. Try this (Note I haven't tested this)...
Create a usergroup to ban from images and note the #
In /includes/functions_bbcodeparse.php search for this code:
PHP Code:
// ###################### Start bbcodeparse #######################
function parse_bbcode($bbcode, $forumid = 0, $allowsmilie = 1, $isimgcheck = 0, $parsedtext = '', $parsedhasimages = 0, $iswysiwyg = 0)
{
// $parsedtext contains text that has already been turned into HTML and just needs images checking
// $parsedhasimages specifies if the text has images in that need parsing
global $vboptions, $parsed_postcache;
Replace the last line (global $vboptions, $parsed_postcache

with
PHP Code:
global $vboptions, $parsed_postchace, $bbuserinfo;
Directly underneath add this code:
PHP Code:
$bannedfromimg = X
X is the usergroup id you want banned from img code.
Search for this code
PHP Code:
switch($forumid)
{
// parse private message
case 'privatemessage':
$dohtml = $vboptions['privallowhtml'];
$dobbcode = $vboptions['privallowbbcode'];
$dobbimagecode = $vboptions['privallowbbimagecode'];
$dosmilies = $vboptions['privallowsmilies'];
break;
// parse user note
case 'usernote':
$dohtml = $vboptions['unallowhtml'];
$dobbcode = $vboptions['unallowvbcode'];
$dobbimagecode = $vboptions['unallowimg'];
$dosmilies = $vboptions['unallowsmilies'];
break;
// parse non-forum item
case 'nonforum':
$dohtml = $vboptions['allowhtml'];
$dobbcode = $vboptions['allowbbcode'];
$dobbimagecode = $vboptions['allowbbimagecode'];
$dosmilies = $vboptions['allowsmilies'];
if ($allowsmilie != 1)
{
$dosmilies = $allowsmilie;
}
break;
case 'announcement':
global $post;
$dohtml = $post['allowhtml'];
if ($dohtml)
{
$donl2br = 0;
}
$dobbcode = $post['allowbbcode'];
$dobbimagecode = $post['allowbbcode'];
$dosmilies = $allowsmilie;
break;
// parse forum item
default:
$forum = fetch_foruminfo($forumid);
$dohtml = $forum['allowhtml'];
$dobbimagecode = $forum['allowimages'];
$dosmilies = $forum['allowsmilies'];
if ($allowsmilie != 1)
{
$dosmilies = $allowsmilie;
}
$dobbcode = $forum['allowbbcode'];
break;
}
Replace with
PHP Code:
switch($forumid)
{
// parse private message
case 'privatemessage':
$dohtml = $vboptions['privallowhtml'];
$dobbcode = $vboptions['privallowbbcode'];
if (!is_member_of($bbuserinfo, $bannedfromimg))
{
$dobbimagecode = $vboptions['privallowbbimagecode'];
}
$dosmilies = $vboptions['privallowsmilies'];
break;
// parse user note
case 'usernote':
$dohtml = $vboptions['unallowhtml'];
$dobbcode = $vboptions['unallowvbcode'];
if (!is_member_of($bbuserinfo, $bannedfromimg))
{
$dobbimagecode = $vboptions['unallowimg'];
}
$dosmilies = $vboptions['unallowsmilies'];
break;
// parse non-forum item
case 'nonforum':
$dohtml = $vboptions['allowhtml'];
$dobbcode = $vboptions['allowbbcode'];
if (!is_member_of($bbuserinfo, $bannedfromimg))
{
$dobbimagecode = $vboptions['allowbbimagecode'];
}
$dosmilies = $vboptions['allowsmilies'];
if ($allowsmilie != 1)
{
$dosmilies = $allowsmilie;
}
break;
case 'announcement':
global $post;
$dohtml = $post['allowhtml'];
if ($dohtml)
{
$donl2br = 0;
}
$dobbcode = $post['allowbbcode'];
$dobbimagecode = $post['allowbbcode'];
$dosmilies = $allowsmilie;
break;
// parse forum item
default:
$forum = fetch_foruminfo($forumid);
$dohtml = $forum['allowhtml'];
if (!is_member_of($bbuserinfo, $bannedfromimg))
{
$dobbimagecode = $forum['allowimages'];
}
$dosmilies = $forum['allowsmilies'];
if ($allowsmilie != 1)
{
$dosmilies = $allowsmilie;
}
$dobbcode = $forum['allowbbcode'];
break;
}
Backup your /includes/functions_bbcodeparse.php file before applying these changes as they are untested. They don't involve any queries so they can't cause any long term harm to your boards. Let me know if they work (they should unless I've missed something causing a parse error.