Hey guys!
I would need a code snippet that allows user to re-send a confirmation e-mail after the registration. I'd need a general code, meaning that can be used anywhere on the forum.
P.S.
I'm not searching for a plugin, because plugin won't solve the "problem" that I'm having.
Regards,
Andraž Rihtar
See this code from ./member.php file;
if($mybb->input['action'] == "do_resendactivation" && $mybb->request_method == "post")
{
$plugins->run_hooks("member_do_resendactivation_start");
if($mybb->settings['regtype'] == "admin")
{
error($lang->error_activated_by_admin);
}
$query = $db->query("
SELECT u.uid, u.username, u.usergroup, u.email, a.code
FROM ".TABLE_PREFIX."users u
LEFT JOIN ".TABLE_PREFIX."awaitingactivation a ON (a.uid=u.uid AND a.type='r')
WHERE u.email='".$db->escape_string($mybb->input['email'])."'
");
$numusers = $db->num_rows($query);
if($numusers < 1)
{
error($lang->error_invalidemail);
}
else
{
while($user = $db->fetch_array($query))
{
if($user['usergroup'] == 5)
{
if(!$user['code'])
{
$user['code'] = random_str();
$now = TIME_NOW;
$uid = $user['uid'];
$awaitingarray = array(
"uid" => $uid,
"dateline" => TIME_NOW,
"code" => $user['code'],
"type" => "r"
);
$db->insert_query("awaitingactivation", $awaitingarray);
}
$username = $user['username'];
$email = $user['email'];
$activationcode = $user['code'];
$emailsubject = $lang->sprintf($lang->emailsubject_activateaccount, $mybb->settings['bbname']);
$emailmessage = $lang->sprintf($lang->email_activateaccount, $user['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user['uid'], $activationcode);
my_mail($email, $emailsubject, $emailmessage);
}
}
$plugins->run_hooks("member_do_resendactivation_end");
redirect("index.php", $lang->redirect_activationresent);
}
}
You'll see some of the basic code to identify how to send Email for sending activation.
(2011-04-13, 07:47 PM)Yaldaram Wrote: [ -> ]See this code from ./member.php file;
if($mybb->input['action'] == "do_resendactivation" && $mybb->request_method == "post")
{
$plugins->run_hooks("member_do_resendactivation_start");
if($mybb->settings['regtype'] == "admin")
{
error($lang->error_activated_by_admin);
}
$query = $db->query("
SELECT u.uid, u.username, u.usergroup, u.email, a.code
FROM ".TABLE_PREFIX."users u
LEFT JOIN ".TABLE_PREFIX."awaitingactivation a ON (a.uid=u.uid AND a.type='r')
WHERE u.email='".$db->escape_string($mybb->input['email'])."'
");
$numusers = $db->num_rows($query);
if($numusers < 1)
{
error($lang->error_invalidemail);
}
else
{
while($user = $db->fetch_array($query))
{
if($user['usergroup'] == 5)
{
if(!$user['code'])
{
$user['code'] = random_str();
$now = TIME_NOW;
$uid = $user['uid'];
$awaitingarray = array(
"uid" => $uid,
"dateline" => TIME_NOW,
"code" => $user['code'],
"type" => "r"
);
$db->insert_query("awaitingactivation", $awaitingarray);
}
$username = $user['username'];
$email = $user['email'];
$activationcode = $user['code'];
$emailsubject = $lang->sprintf($lang->emailsubject_activateaccount, $mybb->settings['bbname']);
$emailmessage = $lang->sprintf($lang->email_activateaccount, $user['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user['uid'], $activationcode);
my_mail($email, $emailsubject, $emailmessage);
}
}
$plugins->run_hooks("member_do_resendactivation_end");
redirect("index.php", $lang->redirect_activationresent);
}
}
You'll see some of the basic code to identify how to send Email for sending activation.
Thanks for trying to help, but since I'm a total newbie to PHP I have no idea what even that code does. And I actually needed a link, which Faviouz has provided - remember, it's a theme support forum here Yaldram
Thanks for the snippet Faviouz!