donation/app/Controllers/Donor_controller.php
2020-11-23 15:46:19 +05:30

146 lines
3.9 KiB
PHP

<?php namespace App\Controllers;
use App\Models\Donor_model;
use App\Models\Dashboard_model;
class Donor_controller extends BaseController
{
public $session;
public function __construct()
{
$this->session = session();
$this->Donor_model = new Donor_model();
$this->Dashboard_model = new Dashboard_model();
}
public function index()
{
$data=[];
helper(['form']);
if($this->request->getmethod() == 'post')
{
$email = $this->request->getVar('email');
$password = $this->request->getVar('password');
$userdata = $this->Donor_model->verifyEmail($email);
if($userdata)
{
if(password_verify($password, $userdata['password']))
{
$this->session->set('logged_user',$userdata['id']);
return redirect()->to(base_url().'/Dashboard');
}
else{
$this->session->setTempdata('error','sorry wrong password entered for the Email',3);
return redirect()->to(current_url());
}
}else
{
$this->session->setTempdata('error','sorry Email does not existe',3);
return redirect()->to(current_url());
}
}
echo view('templates/header',$data);
echo view('login');
echo view('templates/footer');
//return view('donor_registration');
}
public function register()
{
$data['country']=$this->Dashboard_model->fetch_country();
helper(['form']);
if($this->request->getmethod() == 'post')
{
// validate
$rules=[
'name' =>'required|min_length[3]|max_length[20]',
'phone' =>'required|min_length[3]|max_length[20]',
'email' =>'required|min_length[6]|max_length[50]|valid_email|is_unique[donar_management.email]',
'pan' =>'required|min_length[3]|max_length[20]',
'address' =>'required|min_length[3]|max_length[20]',
'country' =>'required',
'state' =>'required',
'city' =>'required',
'pin_code' =>'required|min_length[6]|max_length[6]',
'date_of_birth' =>'required|min_length[3]|max_length[20]',
'gender' =>'required|min_length[3]|max_length[20]',
'org_name' =>'required|min_length[3]|max_length[20]',
'gstin' =>'required|min_length[3]|max_length[20]',
'password' =>'required|min_length[8]|max_length[200]',
'password_confirm' =>'matches[password]',
];
if(! $this->validate($rules))
{
$data['validation'] = $this->validator;
}else{
//store the donor in database
$model = new Donor_model();
$donorData=[
'name' =>$this->request->getVar('name'),
'phone' =>$this->request->getVar('phone'),
'email' =>$this->request->getVar('email'),
'pan' =>$this->request->getVar('pan'),
'address' =>$this->request->getVar('address'),
'country' =>$this->request->getVar('country'),
'state' =>$this->request->getVar('state'),
'city' =>$this->request->getVar('city'),
'pin_code' =>$this->request->getVar('pin_code'),
'date_of_birth' =>$this->request->getVar('date_of_birth'),
'gender' =>$this->request->getVar('gender'),
'org_name' =>$this->request->getVar('org_name'),
'gstin' =>$this->request->getVar('gstin'),
'foreign_key' =>$this->request->getVar('email'),
'password' =>$this->request->getVar('password'),
];
$model->save($donorData);
$session = session();
$session ->setFlashdata('success','Successful Registration');
return redirect()->to(base_url());
}
}
echo view('templates/header',$data);
echo view('register');
echo view('templates/footer');
}
function fetch_country()
{
echo $this->Dashboard_model->fetch_country();
}
function fetch_state()
{
if($this->request->getVar('country_id'))
{
echo $this->Dashboard_model->fetch_state($this->request->getVar('country_id'));
}
}
function fetch_city()
{
if($this->request->getVar('state_id'))
{
echo $this->Dashboard_model->fetch_city($this->request->getVar('state_id'));
}
}
//--------------------------------------------------------------------
}