// ############################### start request activation email ###############################
if ($_REQUEST['do'] == 'requestemail')
{
$email = $vbulletin->input->clean_gpc('r', 'email', TYPE_NOHTML);
if ($vbulletin->userinfo['userid'] AND $vbulletin->GPC['email'] === '')
{
$email = $vbulletin->userinfo['email'];
}
else
{
$email = $vbulletin->GPC['email'];
}
if ($permissions['forumpermissions'] & $vbulletin->bf_ugp_forumpermissions['canview'])
{
$navbits = construct_navbits(array(
'register.php?' . $vbulletin->session->vars['sessionurl'] . 'a=ver' => $vbphrase['activate_your_account'],
'' => $vbphrase['email_activation_codes']
));
eval('$navbar = "' . fetch_template('navbar') . '";');
}
else
{
$navbar = '';
}
($hook = vBulletinHook::fetch_hook('register_requestemail')) ? eval($hook) : false;
$url =& $vbulletin->url;
eval('print_output("' . fetch_template('activate_requestemail') . '");');
}
// ############################### process request activation email #############################
if ($_POST['do'] == 'emailcode')
{
$vbulletin->input->clean_gpc('r', 'email', TYPE_NOHTML);
$users = $db->query_read_slave("
SELECT user.userid, user.usergroupid, username, email, activationid, languageid
FROM " . TABLE_PREFIX . "user AS user
LEFT JOIN " . TABLE_PREFIX . "useractivation AS useractivation ON(user.userid = useractivation.userid AND type = 0)
WHERE email = '" . $db->escape_string($vbulletin->GPC['email']) . "'"
);
if ($db->num_rows($users))
{
while ($user = $db->fetch_array($users))
{
if ($user['usergroupid'] == 3)
{ // only do it if the user is in the correct usergroup
// make random number
if (empty($user['activationid']))
{ //none exists so create one
$user['activationid'] = build_user_activation_id($user['userid'], 2, 0);
}
else
{
$user['activationid'] = fetch_random_string(40);
$db->query_write("
UPDATE " . TABLE_PREFIX . "useractivation SET
dateline = " . TIMENOW . ",
activationid = '$user[activationid]'
WHERE userid = $user[userid]
AND type = 0
");
}
$userid = $user['userid'];
$username = $user['username'];
$activateid = $user['activationid'];
($hook = vBulletinHook::fetch_hook('register_emailcode_user')) ? eval($hook) : false;
eval(fetch_email_phrases('activateaccount', $user['languageid']));
vbmail($user['email'], $subject, $message, true);
}
}
eval(print_standard_redirect('redirect_lostactivatecode', true, true));
}
else
{
eval(standard_error(fetch_error('invalidemail', $vbulletin->options['contactuslink'])));
}
}
// ############################### start coppa form ###############################
if ($_REQUEST['do'] == 'coppaform')
{
if ($vbulletin->userinfo['userid'])
{
$vbulletin->userinfo['signature'] = nl2br($vbulletin->userinfo['signature']);
if ($vbulletin->userinfo['showemail'])
{
$vbulletin->userinfo['showemail'] = $vbphrase['no'];
}
else
{
$vbulletin->userinfo['showemail'] = $vbphrase['yes'];
}
}
else
{
$vbulletin->userinfo['username'] = '';
$vbulletin->userinfo['homepage'] = 'http://';
}
($hook = vBulletinHook::fetch_hook('register_coppaform')) ? eval($hook) : false;
eval('print_output("' . fetch_template('register_coppaform') . '");');
}
// ############################### start delete activation request ###############################
if ($_REQUEST['do'] == 'deleteactivation')
{
$vbulletin->input->clean_array_gpc('r', array(
'u' => TYPE_UINT,
'i' => TYPE_STR,
));
$userinfo = verify_id('user', $vbulletin->GPC['u'], 1, 1);
if ($userinfo['usergroupid'] == 3)
{
// check valid activation id
$user = $db->query_first("
SELECT userid, activationid, usergroupid
FROM " . TABLE_PREFIX . "useractivation
WHERE activationid = '" . $db->escape_string($vbulletin->GPC['i']) . "'
AND userid = $userinfo[userid]
AND type = 0
");
if (!$user OR $vbulletin->GPC['i'] != $user['activationid'])
{
eval(standard_error(fetch_error('invalidactivateid', $vbulletin->session->vars['sessionurl'], $vbulletin->options['contactuslink'])));
}
eval(standard_error(fetch_error('activate_deleterequest', $user['activationid'], $user['userid'])));
}
else
{
eval(standard_error(fetch_error('activate_wrongusergroup')));
}
}
// ############################### start kill activation request ###############################
if ($_REQUEST['do'] == 'killactivation')
{
$vbulletin->input->clean_array_gpc('r', array(
'u' => TYPE_UINT,
'i' => TYPE_STR,
));
$userinfo = verify_id('user', $vbulletin->GPC['u'], 1, 1);
if ($userinfo['usergroupid'] == 3)
{
// check valid activation id
$user = $db->query_first("
SELECT activationid, usergroupid
FROM " . TABLE_PREFIX . "useractivation
WHERE activationid = '" . $db->escape_string($vbulletin->GPC['i']) . "'
AND userid = $userinfo[userid]
AND type = 0
");
if (!$user OR $vbulletin->GPC['i'] != $user['activationid'])
{
eval(standard_error(fetch_error('invalidactivateid', $vbulletin->session->vars['sessionurl'], $vbulletin->options['contactuslink'])));
}
$userdata = datamanager_init('User', $vbulletin, ERRTYPE_SILENT);
$userdata->set_existing($userinfo);
$userdata->set_bitfield('options', 'receiveemail', 0);
$userdata->set_bitfield('options', 'noactivationmails', 1);
$userdata->save();
eval(standard_error(fetch_error('activate_requestdeleted')));
}
else
{
eval(standard_error(fetch_error('activate_wrongusergroup')));
}
}
/*======================================================================*\
|| ####################################################################
|| # Downloaded: 15:27, Sat Feb 22nd 2025 : $Revision: 94041 $
|| # $Date: 2017-05-15 16:41:54 -0700 (Mon, 15 May 2017) $
|| ####################################################################
\*======================================================================*/
?>Add a code snippet to your website: www.paste.org