'', 'name' => '', 'middle'=> '', 'surname' =>'', 'email' => '' ); private $addresses = Array(); /** METHODS * ------------------------------------------------------------------------- */ public function create() { } public function setDefaultAddress($id) { } public function addAddress() { // update session data // update user record } public function changePassword() { } public function confirmEmail() { } public function sendEmail() { } /** sendOTP() * sent One-Time-Password * */ public function sendOTP($ttl) { $to = $this->who; $otp = rand(10000,99999); $expire = time() + $ttl; $mail = new PHPMailer(true); try { //Server settings // ... //Recipients $mail->setFrom('from@example.com', 'Mailer'); $mail->addAddress($to['email'], $to['surname'] .' '. $to['name']); //Add a recipient $mail->addReplyTo('info@example.com', 'Information'); //Attachments $mail->addAttachment('/var/tmp/file.tar.gz'); //Add attachments $mail->addAttachment('/tmp/image.jpg', 'new.jpg'); //Optional name //Content $mail->isHTML(true); //Set email format to HTML $mail->Subject = 'Your OTP'; $mail->Body = 'This is the HTML message body in bold!'; $mail->AltBody = 'This is the body in plain text for non-HTML mail clients'; $mail->send(); echo 'Message has been sent'; } catch (Exception $e) { echo "Message could not be sent. Mailer Error: {$mail->ErrorInfo}"; } } /** updateSession() * regenerates session */ public function updateSession() { } }