Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /**
- *
- * @ This file is created by http://DeZender.Net
- * @ deZender (PHP7 Decoder for ionCube Encoder)
- *
- * @ Version : 4.1.0.1
- * @ Author : DeZender
- * @ Release on : 29.08.2020
- * @ Official site : http://DeZender.Net
- *
- */
- class VTEEmailMarketing_ActionAjax_Action extends Vtiger_Action_Controller
- {
- public function __construct()
- {
- parent::__construct();
- $this->exposeMethod('enableModule');
- $this->exposeMethod('viewStep4');
- $this->exposeMethod('saveEmailMarketing');
- $this->exposeMethod('saveScheduleLater');
- $this->exposeMethod('getRecordNewFilterStep2');
- $this->exposeMethod('getTotalRelated');
- $this->exposeMethod('saveRelatedRecord');
- $this->exposeMethod('unloadFilter');
- $this->exposeMethod('getRelatedRecordVTEEMailMarketing');
- $this->exposeMethod('TestSendMail');
- $this->exposeMethod('getKeyMosaicoTemplateEdit');
- $this->exposeMethod('paggingDetailRelatedRecord');
- $this->exposeMethod('actionResubcribes');
- $this->exposeMethod('duplicateTemplate');
- $this->exposeMethod('actionSchedulerOnDetailView');
- $this->exposeMethod('getUrlEditTemplatesEmailMarketing');
- $this->exposeMethod('addRelatedModules');
- }
- public function checkPermission(Vtiger_Request $request)
- {
- return NULL;
- }
- public function enableModule(Vtiger_Request $request)
- {
- global $adb;
- $value = $request->get('value');
- $adb->pquery('UPDATE `vteemailmarketing_settings` SET `enable`=?', [$value]);
- $response = new Vtiger_Response();
- $response->setEmitType(Vtiger_Response::$EMIT_JSON);
- $response->setResult(['result' => 'success']);
- $response->emit();
- }
- public function process(Vtiger_Request $request)
- {
- $mode = $request->get('mode');
- if (!empty($mode)) {
- $this->invokeExposedMethod($mode, $request);
- return NULL;
- }
- }
- public function viewStep4(Vtiger_Request $request)
- {
- $idTemplateEmail = $request->get('idTemplateEmail');
- $idEmailMarketing = $request->get('idEmailMarketing');
- $vteCampaigns = VTEEmailMarketing_Record_Model::getVTEEmailMarketing($idEmailMarketing);
- $emailTemplate = VTEEmailMarketing_Record_Model::getEmailTemplate($idTemplateEmail);
- $ModuleList = VTEEmailMarketing_Record_Model::getRelationModules();
- $recordModel = Vtiger_Record_Model::getInstanceById($idEmailMarketing);
- $recordModel->set('mode', 'edit');
- $recordModel->set('template_id', $idTemplateEmail);
- $recordModel->save();
- $data = ['campaign' => $vteCampaigns, 'template' => $emailTemplate, 'modulelist' => $ModuleList];
- $response = new Vtiger_Response();
- $response->setResult($data);
- $response->emit();
- }
- public function saveEmailMarketing(Vtiger_Request $request)
- {
- $moduleName = $request->getModule();
- $vteCampaignName = $request->get('vteCampaignName');
- $vteFromName = $request->get('vteFrom_Name');
- $vteFromEmail = $request->get('vteFrom_Email');
- $vteAssignedTo = $request->get('assignedTo');
- $sender = $vteFromName . ' (' . $vteFromEmail . ')';
- $idEmailMarketing = $request->get('idEmailMarketing');
- if ($idEmailMarketing) {
- $emailMarketingRecord = Vtiger_Record_Model::getInstanceById($idEmailMarketing);
- $mode = 'edit';
- }
- else {
- $emailMarketingRecord = Vtiger_Record_Model::getCleanInstance($moduleName);
- $mode = '';
- }
- $emailMarketingRecord->set('mode', $mode);
- $emailMarketingRecord->set('vtecampaigns', $vteCampaignName);
- $emailMarketingRecord->set('sender', $sender);
- $emailMarketingRecord->set('assigned_user_id', $vteAssignedTo);
- $emailMarketingRecord->save();
- $recordId = $emailMarketingRecord->getId();
- $response = new Vtiger_Response();
- $response->setResult($recordId);
- $response->emit();
- }
- public function convertDBTimeZone($datetime)
- {
- $DBTimeZone = DateTimeField::convertToDBTimeZone($datetime);
- $DBDateTime = $DBTimeZone->format('Y-m-d H:i:s');
- return $DBDateTime;
- }
- public function saveScheduleLater(Vtiger_Request $request)
- {
- global $adb;
- $recordId = $request->get('recordId');
- $date = $request->get('schedule_date');
- $time = $request->get('schedule_time');
- if ($date && $time) {
- $date = DateTimeField::convertToDBFormat($date);
- $new_time = DateTime::createFromFormat('h:i A', $time);
- $time = $new_time->format('H:i:s');
- $datetime = $date . ' ' . $time;
- $schedule_datetime = self::convertDBTimeZone($datetime);
- }
- else {
- $currentUserDateTime = DateTimeField::convertToUserTimeZone(date('Y-m-d H:i:s'));
- $currenDBDateTime = DateTimeField::convertToDBTimeZone($currentUserDateTime->format('Y-m-d H:i:s'));
- $schedule_datetime = $currenDBDateTime->format('Y-m-d H:i:s');
- }
- $schedule_batch_delivery = $request->get('schedule_batch_delivery');
- $schedule_templateEmail = $request->get('templateEmail');
- $schedule_from_name = $request->get('from_name');
- $schedule_from_email = $request->get('from_email');
- $total_email = $request->get('total_email');
- if ($schedule_batch_delivery == 0) {
- $schedule_number_email = 500;
- $schedule_frequency = 900;
- }
- else {
- $schedule_number_email = $request->get('schedule_number_email');
- ..................................................................................
- ........................................................
- .............................
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement