Moodle电子邮件确认

问题描述 投票:0回答:1

[当新用户注册时,穆迪通过穆迪功能从语言文件lang / en / moodle.php向用户发送确认电子邮件,并带有字符串“ emailconfirmation”:

function send_confirmation_email($user) {
global $CFG;

$site = get_site();
$supportuser = generate_email_supportuser();

$data = new stdClass();
$data->firstname = fullname($user);
$data->sitename = format_string($site->fullname);
$data->admin = generate_email_signoff();

$subject = get_string('emailconfirmationsubject', '', format_string($site->fullname));

$username = urlencode($user->username);
$username = str_replace('.', '%2E', $username); // prevent problems with trailing dots
$data->link = $CFG->wwwroot .'/login/confirm.php?data='. $user->secret .'/'. $username;
$message = get_string('emailconfirmation', '', $data);
$messagehtml = text_to_html(get_string('emailconfirmation', '', $data), false, false, true);

return email_to_user($user, $subject, $message, $messagehtml);
}

Moodle在确认后重定向到index.php。确认后,如何将$ data-> link重定向到自定义页面:

if (send_confirmation_email($user)) {
    if (AUTH_CONFIRM_OK = true) {
       $urltogo = new moodle_url($CFG->wwwroot . "/coursestat/view.php", array('id' => $statid));
       redirect($urltogo);
    }
 }
 else
   print_error('auth_noemail','auth_email');       
moodle
1个回答
0
投票

仅使用$ data->链接并假设其为字符串?

if (send_confirmation_email($user)) {
    // Assuming $data->link is a string?
    $urltogo = new moodle_url($data->link);
    redirect($urltogo);
}

此行

if (AUTH_CONFIRM_OK = true) {

没有意义,AUTH_CONFIRM_OK是一个常数。 =也是一个分配。我猜你的意思是这样的:

if ($somevariable == AUTH_CONFIRM_OK) {
© www.soinside.com 2019 - 2024. All rights reserved.