176 lines
6.4 KiB
PHP
176 lines
6.4 KiB
PHP
<?php
|
|
|
|
namespace App\Controllers;
|
|
use App\Helpers\MailHelper;
|
|
use App\Models\ServiceModel;
|
|
use App\Models\TemplateModel;
|
|
use App\Models\StaffModel;
|
|
use App\Models\ClientDocsModel;
|
|
use App\Models\ClientModel;
|
|
use App\Models\BusinessModel;
|
|
use App\Models\BranchModel;
|
|
use App\Models\ServiceGroupModel;
|
|
use App\Models\ClientBranchModel;
|
|
use App\Models\DocsStatusModel;
|
|
use CodeIgniter\Controller;
|
|
|
|
class TestController extends Controller
|
|
{
|
|
|
|
protected $ServiceModel;
|
|
protected $TemplateModel;
|
|
protected $StaffModel;
|
|
protected $ClientDocsModel;
|
|
protected $ClientModel;
|
|
protected $BusinessModel;
|
|
protected $BranchModel;
|
|
protected $ServiceGroupModel;
|
|
protected $ClientBranchModel;
|
|
protected $DocsStatusModel;
|
|
|
|
public function __construct()
|
|
{
|
|
|
|
$this->ServiceModel = new ServiceModel();
|
|
$this->TemplateModel = new TemplateModel();
|
|
$this->StaffModel = new StaffModel();
|
|
$this->ClientDocsModel = new ClientDocsModel();
|
|
$this->ClientModel = new ClientModel();
|
|
$this->BusinessModel = new BusinessModel();
|
|
$this->BranchModel = new BranchModel();
|
|
$this->ServiceGroupModel = new ServiceGroupModel();
|
|
$this->ClientBranchModel = new ClientBranchModel();
|
|
$this->DocsStatusModel = new DocsStatusModel();
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
public function sendSms()
|
|
{
|
|
$apiKey = 'HgvlULWCIrs'; // Your API key
|
|
$mobileNumbers = '919894638731'; // Recipient mobile numbers
|
|
$DLTTemplateID = '1107171922342349877'; // DLT Template ID
|
|
$senderId = 'LDRCHN'; // Sender ID
|
|
$message = 'Dear {#var#},
|
|
{#var#} is OTP to approve {#var#} {#var#} for {#var#} purposes. -L D RAJ AND CO';
|
|
|
|
$serviceName = 'TEMPLATE_BASED'; // Service name
|
|
|
|
// URL encode the message
|
|
$encodedMessage = urlencode($message);
|
|
|
|
// Initialize cURL
|
|
$ch = curl_init();
|
|
|
|
// Set cURL options
|
|
curl_setopt($ch, CURLOPT_URL, "https://smsapi.24x7sms.com/api_2.0/SendSMS.aspx?APIKEY=$apiKey&MobileNo=$mobileNumbers&SenderID=$senderId&Message=$encodedMessage&ServiceName=$serviceName&DLTTemplateID=$DLTTemplateID");
|
|
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
|
|
|
|
// Execute cURL request and get the response
|
|
$output = curl_exec($ch);
|
|
|
|
// Close cURL session
|
|
curl_close($ch);
|
|
|
|
// Output the response (for testing purposes)
|
|
return $this->response->setJSON(['response' => $output]);
|
|
}
|
|
|
|
public function sendUrl()
|
|
{
|
|
helper('url');
|
|
$signedUrl = generate_signed_url('preview', ['doc_id'=>md5(1)], 36000);
|
|
// Send the $signedUrl to your client (e.g., via email)
|
|
|
|
return $this->response->setJSON(['url' => $signedUrl]);
|
|
}
|
|
|
|
public function protectedPage(){
|
|
$doc_id = $this->request->getVar('doc_id');
|
|
|
|
$data['docData'] = $this->ClientDocsModel->docPreview($doc_id);
|
|
$data['expires'] = $this->request->getVar('expires');
|
|
$data['clientData'] = $this->ClientBranchModel->select('client.name , client.pan_no ,client_branch.gst_no , client_branch.mobile_no , client_branch.email , client_branch.address , client_branch.country , client_branch.state , client_branch.city , client_branch.pin_code ')
|
|
->join('client', 'client_branch.client_id = client.client_id', 'left')
|
|
->where('client_branch.id',$data['docData']->client_branch_id)
|
|
->get()->getRow();
|
|
|
|
|
|
|
|
|
|
$data['header_html'] = $data['docData']->header_html;
|
|
$data['footer_html'] = $data['docData']->footer_html;
|
|
$data['body_html'] = $data['docData']->body_html;
|
|
//replace client details in template content
|
|
foreach ($data['clientData'] as $key => $value) {
|
|
$placeHolder = '%'.$key.'%';
|
|
$data['body_html'] = str_replace($placeHolder,$value,$data['body_html']);
|
|
}
|
|
|
|
if($data['docData']->is_active == 1){
|
|
$DateAndYears = $data['docData']->place_holder_object;
|
|
}else{
|
|
$DateAndYears = $this->dateAndYearPlaceholder();
|
|
}
|
|
//replace Date and Year values in template content
|
|
foreach (json_decode($DateAndYears,true) as $key => $value) {
|
|
$placeHolder = '%'.$key.'%';
|
|
$data['body_html'] = str_replace($placeHolder,$value,$data['body_html']);
|
|
}
|
|
|
|
|
|
|
|
|
|
echo view('layout/doc_header');
|
|
echo view('client_docs_preview',$data);
|
|
echo view('layout/footer');
|
|
|
|
}
|
|
|
|
|
|
public function dateAndYearPlaceholder()
|
|
{
|
|
$currentDate = date('d-m-Y');
|
|
$currentYear = date('Y');
|
|
$currentMonth = date('m');
|
|
|
|
|
|
if ($currentMonth >= 4) {
|
|
$financialYearStart = $currentYear . '-04-01';
|
|
$financialYearEnd = ($currentYear + 1) . '-03-31';
|
|
$financialYear = $currentYear . '-' . ($currentYear + 1);
|
|
$assessmentYear = ($currentYear + 1) . '-' . ($currentYear + 2);
|
|
$q1 = '01-04-' . $currentYear . ' to ' . '30-06-' . $currentYear;
|
|
$q2 = '01-07-' . $currentYear . ' to ' . '30-09-' . $currentYear;
|
|
$q3 = '01-10-' . $currentYear . ' to ' . '31-12-' . $currentYear;
|
|
$q4 = '01-01-' . ($currentYear + 1) . ' to ' . '31-03-' . ($currentYear + 1);
|
|
|
|
} else {
|
|
$financialYearStart = ($currentYear - 1) . '-04-01';
|
|
$financialYearEnd = $currentYear . '-03-31';
|
|
$financialYear = ($currentYear - 1) . '-' . $currentYear;
|
|
$assessmentYear = $currentYear . '-' . ($currentYear + 1);
|
|
$q1 = '01-04-' . ($currentYear - 1) . ' to ' . '30-06-' . ($currentYear - 1);
|
|
$q2 = '01-07-' . ($currentYear - 1) . ' to ' . '30-09-' . ($currentYear - 1);
|
|
$q3 = '01-10-' . ($currentYear - 1) . ' to ' . '31-12-' . ($currentYear - 1);
|
|
$q4 = '01-01-' . $currentYear . ' to ' . '31-03-' . $currentYear;
|
|
}
|
|
|
|
$DateAndYears = [
|
|
"CD" => $currentDate,
|
|
"CY" => $currentYear,
|
|
"FY" => $financialYear,
|
|
"AY" => $assessmentYear,
|
|
"Q1" => $q1,
|
|
"Q2" => $q2,
|
|
"Q3" => $q3,
|
|
"Q4" => $q4,
|
|
];
|
|
|
|
return json_encode($DateAndYears);
|
|
|
|
}
|
|
}
|