Advertisement
Guest User

Untitled

a guest
Mar 24th, 2021
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.23 KB | None | 0 0
  1. <?php
  2. /**
  3. *
  4. * @ This file is created by http://DeZender.Net
  5. * @ deZender (PHP7 Decoder for ionCube Encoder)
  6. *
  7. * @ Version : 4.1.0.1
  8. * @ Author : DeZender
  9. * @ Release on : 29.08.2020
  10. * @ Official site : http://DeZender.Net
  11. *
  12. */
  13.  
  14. class VTEEmailMarketing_ActionAjax_Action extends Vtiger_Action_Controller
  15. {
  16. public function __construct()
  17. {
  18. parent::__construct();
  19. $this->exposeMethod('enableModule');
  20. $this->exposeMethod('viewStep4');
  21. $this->exposeMethod('saveEmailMarketing');
  22. $this->exposeMethod('saveScheduleLater');
  23. $this->exposeMethod('getRecordNewFilterStep2');
  24. $this->exposeMethod('getTotalRelated');
  25. $this->exposeMethod('saveRelatedRecord');
  26. $this->exposeMethod('unloadFilter');
  27. $this->exposeMethod('getRelatedRecordVTEEMailMarketing');
  28. $this->exposeMethod('TestSendMail');
  29. $this->exposeMethod('getKeyMosaicoTemplateEdit');
  30. $this->exposeMethod('paggingDetailRelatedRecord');
  31. $this->exposeMethod('actionResubcribes');
  32. $this->exposeMethod('duplicateTemplate');
  33. $this->exposeMethod('actionSchedulerOnDetailView');
  34. $this->exposeMethod('getUrlEditTemplatesEmailMarketing');
  35. $this->exposeMethod('addRelatedModules');
  36. }
  37.  
  38. public function checkPermission(Vtiger_Request $request)
  39. {
  40. return NULL;
  41. }
  42.  
  43. public function enableModule(Vtiger_Request $request)
  44. {
  45. global $adb;
  46. $value = $request->get('value');
  47. $adb->pquery('UPDATE `vteemailmarketing_settings` SET `enable`=?', [$value]);
  48. $response = new Vtiger_Response();
  49. $response->setEmitType(Vtiger_Response::$EMIT_JSON);
  50. $response->setResult(['result' => 'success']);
  51. $response->emit();
  52. }
  53.  
  54. public function process(Vtiger_Request $request)
  55. {
  56. $mode = $request->get('mode');
  57.  
  58. if (!empty($mode)) {
  59. $this->invokeExposedMethod($mode, $request);
  60. return NULL;
  61. }
  62. }
  63.  
  64. public function viewStep4(Vtiger_Request $request)
  65. {
  66. $idTemplateEmail = $request->get('idTemplateEmail');
  67. $idEmailMarketing = $request->get('idEmailMarketing');
  68. $vteCampaigns = VTEEmailMarketing_Record_Model::getVTEEmailMarketing($idEmailMarketing);
  69. $emailTemplate = VTEEmailMarketing_Record_Model::getEmailTemplate($idTemplateEmail);
  70. $ModuleList = VTEEmailMarketing_Record_Model::getRelationModules();
  71. $recordModel = Vtiger_Record_Model::getInstanceById($idEmailMarketing);
  72. $recordModel->set('mode', 'edit');
  73. $recordModel->set('template_id', $idTemplateEmail);
  74. $recordModel->save();
  75. $data = ['campaign' => $vteCampaigns, 'template' => $emailTemplate, 'modulelist' => $ModuleList];
  76. $response = new Vtiger_Response();
  77. $response->setResult($data);
  78. $response->emit();
  79. }
  80.  
  81. public function saveEmailMarketing(Vtiger_Request $request)
  82. {
  83. $moduleName = $request->getModule();
  84. $vteCampaignName = $request->get('vteCampaignName');
  85. $vteFromName = $request->get('vteFrom_Name');
  86. $vteFromEmail = $request->get('vteFrom_Email');
  87. $vteAssignedTo = $request->get('assignedTo');
  88. $sender = $vteFromName . ' (' . $vteFromEmail . ')';
  89. $idEmailMarketing = $request->get('idEmailMarketing');
  90.  
  91. if ($idEmailMarketing) {
  92. $emailMarketingRecord = Vtiger_Record_Model::getInstanceById($idEmailMarketing);
  93. $mode = 'edit';
  94. }
  95. else {
  96. $emailMarketingRecord = Vtiger_Record_Model::getCleanInstance($moduleName);
  97. $mode = '';
  98. }
  99.  
  100. $emailMarketingRecord->set('mode', $mode);
  101. $emailMarketingRecord->set('vtecampaigns', $vteCampaignName);
  102. $emailMarketingRecord->set('sender', $sender);
  103. $emailMarketingRecord->set('assigned_user_id', $vteAssignedTo);
  104. $emailMarketingRecord->save();
  105. $recordId = $emailMarketingRecord->getId();
  106. $response = new Vtiger_Response();
  107. $response->setResult($recordId);
  108. $response->emit();
  109. }
  110.  
  111. public function convertDBTimeZone($datetime)
  112. {
  113. $DBTimeZone = DateTimeField::convertToDBTimeZone($datetime);
  114. $DBDateTime = $DBTimeZone->format('Y-m-d H:i:s');
  115. return $DBDateTime;
  116. }
  117.  
  118. public function saveScheduleLater(Vtiger_Request $request)
  119. {
  120. global $adb;
  121. $recordId = $request->get('recordId');
  122. $date = $request->get('schedule_date');
  123. $time = $request->get('schedule_time');
  124. if ($date && $time) {
  125. $date = DateTimeField::convertToDBFormat($date);
  126. $new_time = DateTime::createFromFormat('h:i A', $time);
  127. $time = $new_time->format('H:i:s');
  128. $datetime = $date . ' ' . $time;
  129. $schedule_datetime = self::convertDBTimeZone($datetime);
  130. }
  131. else {
  132. $currentUserDateTime = DateTimeField::convertToUserTimeZone(date('Y-m-d H:i:s'));
  133. $currenDBDateTime = DateTimeField::convertToDBTimeZone($currentUserDateTime->format('Y-m-d H:i:s'));
  134. $schedule_datetime = $currenDBDateTime->format('Y-m-d H:i:s');
  135. }
  136.  
  137. $schedule_batch_delivery = $request->get('schedule_batch_delivery');
  138. $schedule_templateEmail = $request->get('templateEmail');
  139. $schedule_from_name = $request->get('from_name');
  140. $schedule_from_email = $request->get('from_email');
  141. $total_email = $request->get('total_email');
  142.  
  143. if ($schedule_batch_delivery == 0) {
  144. $schedule_number_email = 500;
  145. $schedule_frequency = 900;
  146. }
  147. else {
  148. $schedule_number_email = $request->get('schedule_number_email');
  149. ..................................................................................
  150. ........................................................
  151. .............................
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement