登録確認メールに記載してあるURLにアクセスしたユーザーを仮登録から本登録へ変更する。
URLは、ユーザー名と登録キーの2を引数として、それらがDBに格納してあるデータと一致したらUsersテーブルのstatusを0へ変更する。
仮登録から72時間超えていた場合などには、エラーメッセージを表示する。
/app/controllers/member_controller.php
function finish($username = null, $registerkey = null)
{
if ($username == null || $registerkey == null)
{
$this->render('finisherror');
return;
}
$userregisterData = $this->Userregister->find('first', array('conditions' => array(
'username' => $username,
'registerkey' => $registerkey,
'created > DATE_ADD(NOW(), INTERVAL ? DAY)' => -3,
'status' => 0,
'valid' => 0
)));
if (empty($userregisterData['Userregister']))
{
$this->render('finisherror');
return;
}
$userData = $this->User->find('first', array('conditions' => array(
'id' => $userregisterData['Userregister']['userid']
)));
$userData['User']['modified'] = null;
$userData['User']['status'] = 0;
$this->User->create();
$this->User->save($userData);
$userregisterData['Userregister']['modified'] = null;
$userregisterData['Userregister']['valid'] = 1;
$this->Userregister->create();
$this->Userregister->save($userregisterData);
}
