もっと良い方法が実は用意されているのかも知れませんが,私は知りません.
でも,川谷さんの発想は(少々乱暴ですが^^)とても面白い方法ですし,もしかしたらユーザ登録の認証方法としては重要な選択肢かも知れません.
ただ,解決策はもう一工夫必要です.$userの変数は,function email_to_user()の中で,
$user->deleted
$user->auth
$user->emailstop
$user->id
fullname($user)
などなど
という様に,多くのメンバが参照されています.ですので,たとえば$user->idに管理者の方のユーザIDのみを設定してもうまくいかないでしょう.
自信はありませんが,user/view.phpの冒頭の以下のコードを参考にすれば,
if (! $user = get_record("user", "id", $id) ) {
error("No such user in this course");
}
$user = get_record("user", "id", '1'); でしょうか.(ここではサイト管理者の方のユーザIDを1としましたが,これは各サイトによって異なるでしょう.サイト管理者が複数存在する場合も考えられます.
誰か一人にその仕事を請け負って頂くのであれば,例えばconfig.phpの中で,
$CFG->admin_email_confirm_userid = 1; (変数名も数字も適当です)
のように設定し,
if (! $user_admin = get_record("user", "id", $CFG->admin_email_confirm_userid) ) {
error("No such user in this course");
} else $user = $user_admin;
return email_to_user($user, $supportuser, $subject, $message, $messagehtml);
のようにすれば,その管理者宛にメールが届くかも知れません.なお,ここで$user_adminのユーザが管理者かどうかはチェックしていませんので,$CFG->admin_email_confirm_useridを間違えて一般ユーザのユーザIDを設定してしまうと,そのユーザに意味不明のメールが大量に届いてビックリ仰天,という可能性もあります(笑).
あ,もちろん,上記コードは全くチェックしていません.あくまでアイディアだけです.