130 lines
3.8 KiB
PHP
130 lines
3.8 KiB
PHP
<?php namespace App\Controllers;
|
|
|
|
// use App\Models\Dashboard_model;
|
|
use App\Models\Member_model;
|
|
|
|
class Sendmail_controller extends BaseController
|
|
{
|
|
|
|
public function __construct()
|
|
{
|
|
$this->session = session();
|
|
$this->MemberModel = new Member_model();
|
|
|
|
}
|
|
public function index($to,$code,$return=null)
|
|
{
|
|
$email = \Config\Services::email();
|
|
$email->setFrom('suseendhiran.1702117@srit.org', 'suseendhiran');
|
|
$email->setTo($to);
|
|
if($return == 4)
|
|
{
|
|
$subject = 'Expire Alert';
|
|
$message = $code;
|
|
}
|
|
else if ($return == 2)
|
|
{
|
|
$data['id'] = '2';
|
|
$data['otp'] = $code;
|
|
$subject ='Verify your email address';
|
|
$message = view('verification_mail_temp',$data);
|
|
}
|
|
else if($return == 3)
|
|
{
|
|
$data['id'] = '3';
|
|
$data['username'] = $to;
|
|
$data['password'] = $code;
|
|
$data['url'] = base_url()."admin";
|
|
$subject ='Verify your email address';
|
|
$message = view('verification_mail_temp',$data);
|
|
}
|
|
else
|
|
{
|
|
$data['to'] = $to;
|
|
$data['code'] = $code;
|
|
$data['url'] = base_url()."/verify_email/".md5($code);
|
|
$subject ='Verify your email address';
|
|
$message = view('verification_mail_temp',$data);
|
|
}
|
|
$email->setSubject($subject);
|
|
$email->setMessage($message);
|
|
if ($email->send())
|
|
{
|
|
if ($return == 1)
|
|
{
|
|
$this->session->setTempdata('mail_success', "Please check your mail to verify",3);
|
|
// return redirect()->to(base_url());
|
|
}
|
|
}
|
|
else
|
|
{
|
|
echo 0;
|
|
}
|
|
|
|
}
|
|
|
|
public function verify_email($verification_code)
|
|
{
|
|
// Get the user data corresponding to the verification code
|
|
$user_data = $this->MemberModel->where('md5(verification_code)', $verification_code)->find();
|
|
if($user_data)
|
|
{
|
|
//print_r($user_data);die();
|
|
if($user_data[0]['is_email_verified'] == 0)
|
|
{
|
|
// Update the users status
|
|
// $update_data = $this->MemberModel->update_status($user_data['id']);
|
|
$data['is_email_verified'] = 1;
|
|
$update_data = $this->MemberModel->where('id', $user_data[0]['id'] )->set($data)->update();
|
|
if($update_data)
|
|
{
|
|
return redirect()->to(base_url()."set_password/".md5($user_data[0]['id']));
|
|
}
|
|
else
|
|
{
|
|
// Show error message
|
|
echo 'Error in verifying email. Please try again.';
|
|
}
|
|
}else{
|
|
// Show error message
|
|
echo 'Email already verified.';
|
|
}
|
|
}
|
|
else
|
|
{
|
|
// Show error message
|
|
echo 'Invalid verification code.';
|
|
}
|
|
}
|
|
|
|
public function forgot_password()
|
|
{
|
|
$this->session->setTempdata('user',"member",3);
|
|
if($this->request->getmethod() == 'get')
|
|
{
|
|
return view('forgot_password.php');
|
|
}
|
|
else if($this->request->getmethod() == 'post')
|
|
{
|
|
|
|
$email = $this->request->getVar('email');
|
|
$user_data = $this->MemberModel->where('email', $email)->where('is_email_verified', 1 )->find();
|
|
if ($user_data)
|
|
{
|
|
$otp = rand(1000 , 9999);
|
|
$this->index($this->request->getVar('email') , $otp , 2 );
|
|
$data['status'] = 'success';
|
|
$data['otp'] = $otp;
|
|
echo json_encode($data);
|
|
}
|
|
else
|
|
{
|
|
$data['status'] = 'failed';
|
|
echo json_encode($data);
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
|
|
} |