bb_sign/app/Controllers/MasterController.php
2024-05-31 09:50:27 +05:30

211 lines
7.2 KiB
PHP

<?php
namespace App\Controllers;
use App\Helpers\MailHelper;
use App\Models\ServiceModel;
use App\Models\TemplateModel;
use App\Models\StaffModel;
class MasterController extends BaseController
{
public $session;
protected $ServiceModel;
protected $TemplateModel;
protected $StaffModel;
public function __construct()
{
$this->session = session();
$this->ServiceModel = new ServiceModel();
$this->TemplateModel = new TemplateModel();
$this->StaffModel = new StaffModel();
}
public function test()
{
if(!$this->session->has('is_staff_logged_in')){ return redirect()->to(base_url().'staff'); }
$data['serviceList'] = $this->ServiceModel->findAll();
$staffdata = $this->StaffModel->where('staff_id',$this->session->get('is_staff_logged_in'))->get()->getRow();
echo view('layout/header', ['Data'=>$staffdata]);
echo view('test',$data);
echo view('layout/footer');
}
public function service_list()
{
if(!$this->session->has('is_staff_logged_in')){ return redirect()->to(base_url().'staff'); }
// $data['serviceList'] = $this->ServiceModel->findAll();
$data['serviceList'] = $this->ServiceModel->select('services.* , COUNT(template.template_id) as template_count')
->join('template', 'services.service_id = template.service_id', 'left')
->findAll();
$staffdata = $this->StaffModel->where('staff_id',$this->session->get('is_staff_logged_in'))->get()->getRow();
echo view('layout/header', ['Data'=>$staffdata]);
echo view('service_list',$data);
echo view('layout/footer');
}
public function service_create()
{
if(!$this->session->has('is_staff_logged_in')){ return redirect()->to(base_url().'staff'); }
if($this->request->getmethod() == 'POST')
{
$serviceData = $this->request->getVar();
$this->ServiceModel->insert($serviceData);
return redirect()->to(base_url()."service_list");
}else{
$staffdata = $this->StaffModel->where('staff_id',$this->session->get('is_staff_logged_in'))->get()->getRow();
echo view('layout/header', ['Data'=>$staffdata]);
echo view('service_form',);
echo view('layout/footer');
}
}
public function service_edit()
{
if(!$this->session->has('is_staff_logged_in')){ return redirect()->to(base_url().'staff'); }
if($this->request->getmethod() == 'POST')
{
$serviceData = $this->request->getVar();
$id = $this->request->getVar('id');
$this->ServiceModel->where('service_id', $id )->set($serviceData)->update();
return redirect()->to(base_url()."service_list");
}else{
$id = $this->request->getVar('id');
$data['serviceData'] = $this->ServiceModel->where('service_id',$id)->get()->getRow();
$staffdata = $this->StaffModel->where('staff_id',$this->session->get('is_staff_logged_in'))->get()->getRow();
echo view('layout/header', ['Data'=>$staffdata]);
echo view('service_form',$data);
echo view('layout/footer');
}
}
public function service_view()
{
if(!$this->session->has('is_staff_logged_in')){ return redirect()->to(base_url().'staff'); }
if($this->request->getmethod() == 'POST')
{
$serviceData = $this->request->getVar();
$id = $this->request->getVar('id');
$this->ServiceModel->where('service_id', $id )->set($serviceData)->update();
return redirect()->to(base_url()."service_list");
}else{
$id = $this->request->getVar('service_id');
$data['serviceData'] = $this->ServiceModel->where('md5(service_id)',$id)->get()->getRow();
$data['templateData'] = $this->TemplateModel->where('md5(service_id)',$id)->findAll();
$staffdata = $this->StaffModel->where('staff_id',$this->session->get('is_staff_logged_in'))->get()->getRow();
echo view('layout/header', ['Data'=>$staffdata]);
echo view('template_list',$data);
echo view('layout/footer');
}
}
public function template_create()
{
if(!$this->session->has('is_staff_logged_in')){ return redirect()->to(base_url().'staff'); }
if($this->request->getmethod() == 'POST')
{
$templateData = $this->request->getVar();
if($this->request->getVar('template_id') != 'null'){
$id = $this->request->getVar('template_id');
unset($templateData['template_id']);
$this->TemplateModel->where('template_id', $id )->set($templateData)->update();
return $this->response->setJSON(['success' => true , 'service_id' =>$this->request->getVar('service_id')]);
}else{
unset($templateData['template_id']);
$this->TemplateModel->insert($templateData);
return $this->response->setJSON(['success' => true , 'service_id' =>$this->request->getVar('service_id')]);
}
}else{
$id = $this->request->getVar('service_id');
$data['serviceData'] = $this->ServiceModel->where('md5(service_id)',$id)->get()->getRow();
$staffdata = $this->StaffModel->where('staff_id',$this->session->get('is_staff_logged_in'))->get()->getRow();
echo view('layout/header', ['Data'=>$staffdata]);
echo view('template_form',$data);
echo view('layout/footer');
}
}
public function template_edit()
{
if(!$this->session->has('is_staff_logged_in')){ return redirect()->to(base_url().'staff'); }
$id = $this->request->getVar('template_id');
$data['templateData'] = $this->TemplateModel->where('md5(template_id)',$id)->get()->getRow();
$data['serviceData'] = $this->ServiceModel->where('service_id',$data['templateData']->service_id)->get()->getRow();
$staffdata = $this->StaffModel->where('staff_id',$this->session->get('is_staff_logged_in'))->get()->getRow();
echo view('layout/header', ['Data'=>$staffdata]);
echo view('template_form',$data);
echo view('layout/footer');
}
public function template_preview()
{
if(!$this->session->has('is_staff_logged_in')){ return redirect()->to(base_url().'staff'); }
$id = $this->request->getVar('template_id');
$data['templateData'] = $this->TemplateModel->where('md5(template_id)',$id)->get()->getRow();
$data['serviceData'] = $this->ServiceModel->where('service_id',$data['templateData']->service_id)->get()->getRow();
$staffdata = $this->StaffModel->where('staff_id',$this->session->get('is_staff_logged_in'))->get()->getRow();
$data['body_html'] = $data['templateData']->body_html;
// echo view('layout/header', ['Data'=>$staffdata]);
echo view('template_preview',$data);
// echo view('layout/footer');
}
// str_replace("%name%","Gowtham",$data['templateData']->body_html);
}