/** * ฟังก์ชั่นส่งอีเมล์ลืมรหัสผ่าน */ public function forgot(Request $request) { // ค่าที่ส่งมา $email = $request->post('login_username')->url(); if (empty($email)) { if ($request->post('action')->toString() === 'forgot') { self::$login_message = Language::get('Please fill out this form'); } } else { self::$text_username = $email; // ค้นหาอีเมล์หรือโทรศัพท์ $model = new Model(); $user_table = $model->getFullTableName('user'); $search = $model->db()->first($user_table, array(array('email', $email), array('fb', '0'))); if ($search === false) { self::$login_message = Language::get('not a registered user'); } else { // รหัสผ่านใหม่ $password = Text::rndname(6); // ข้อมูลอีเมล์ $replace = array('/%PASSWORD%/' => $password, '/%EMAIL%/' => $search->email); // send mail $err = Email::send(3, 'member', $replace, $search->email); if (empty($err)) { // อัปเดทรหัสผ่านใหม่ $model->db()->update($user_table, (int) $search->id, array('password' => md5($password . $search->email))); // คืนค่า self::$login_message = Language::get('Your message was sent successfully'); self::$request = $request->withParsedBody(array('action' => 'login')); } else { self::$login_message = $err; } } } }