
12-09-2009, 03:58 PM
|
|
|
Join Date: Nov 2009
Posts: 63
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
|
Quote:
Originally Posted by phreebsd
I found one problem when this mod is installed. My forum is 3.8.1.
When this mod is enabled and you have welcome PM's turned on, after the user receives their email to click on to activate their account they receive this error.
Fatal error: Call to a member function clean_gpc() on a non-object in /home/********/public_html/includes/class_dm_user.php(2595) : eval()'d code on line 1
Their account still activates but the error above is all they see upon clickin the activation link.
They also never receive the PM.
Once you take the name out (username welcome PM's will come from) out of vbulletin options -> user registration options they can activate with no issues.
|
Quote:
Originally Posted by AWJunkies
I have same issue noted above been trying to find the culprit of the issue (mod) for quite some time finally found it.
To fix the issue you need to do a if statement around a plugin. Since the newpm does not have global $vbulletin value it errors the second the plugin tries to clean the value.
Change Popup PM Postbit Link postbit_display_start:
PHP Code:
if ($_POST['do'] == 'insertpm') { $vbulletin->input->clean_gpc('p', 'fbpm', TYPE_STR);
if ($vbulletin->GPC['fbpm'] == 'yes') { $fbpmmessage = '<strong>Message sent successfully!</strong> <a href="private.php?do=newpm&fbpm=newpm">Send another?</a>'; eval('print_output("' . fetch_template('pm_fbpm') . '");'); } }
Just added if statement around it to make sure this is a post insert request and NOT any internal pms being sent by any mod or any vb itself.
|
I have same issue too!
This is my postbit_display_start:
Quote:
global $vbulletin;
if (!empty($vbulletin->options['fbpm_permission']))
{
$fbpmpermission = explode(',', $vbulletin->options['fbpm_permission']);
if (in_array($vbulletin->userinfo['usergroupid'], $fbpmpermission))
{
$show['pmpopuplink'] = " onclick=\"divwin=dhtmlwindow.open('divbox', 'div', 'pmformdiv', 'Enviar uma Mensagem Privada para $post[username]', 'width=".iif($vbulletin->options['fbpm_width'], $vbulletin->options['fbpm_width'], $stylevar['formwidth']).",height=".$vbulletin->options['fbpm_height'].",left=200px,top=50px,resize=0,scrolling=0'); pmformframe.location.replace('private.php?do=newpm &fbpm=newpm&u=".$post['userid']."'); return false\"";
}
}
|
Where can I add your if statement to fix it??
Thanks for your help!
|