public function createCustomRecord($parameters) { if (isset($parameters['id'])) { $campaign = EmailCampaign::builder()->find($parameters['id']); $object = ['name_044' => $campaign->name_044, 'email_account_id_044' => $campaign->email_account_id_044, 'template_id_044' => $campaign->template_id_044, 'subject_044' => $campaign->subject_044, 'theme_044' => $campaign->theme_044, 'header_044' => $campaign->header_044, 'body_044' => $campaign->body_044, 'footer_044' => $campaign->footer_044, 'text_044' => $campaign->text_044, 'data_044' => $campaign->data_044, 'shipping_date_044' => $campaign->shipping_date_044, 'persistence_date_044' => $campaign->persistence_date_044, 'sorting_044' => $campaign->sorting_044]; $parameters['object'] = (object) $object; $parameters['selectGroups'] = $campaign->getGroups; $parameters['selectCountries'] = $campaign->getCountries; } $parameters['emailAccounts'] = EmailAccount::all(); $parameters['templates'] = EmailTemplate::all(); $parameters['themes'] = ComunikLibrary::getThemes(); $parameters['emlHeaders'] = ComunikLibrary::getEmlHeaders(); $parameters['groups'] = Group::all(); $parameters['countries'] = Contact::getCountriesContacts(['lang' => auth('pulsar')->user()->lang_id_010]); return $parameters; }
/** * Function which directly sends a test campaign group * * @access public * @param array $paramenters * @return void */ public static function sendEmailsTest($paramenters) { $campaign = EmailCampaign::builder()->where('id_044', $paramenters['id'])->first(); $testGroup = Preference::getValue('emailServiceTestGroup', 5); $contacts = Contact::getRecords(['group_id_042' => (int) $testGroup->value_018, 'groupBy' => 'id_041']); if (count($contacts) > 0) { foreach ($contacts as $contact) { if ($contact->email_041 != null) { $dataEmail = ['replyTo' => empty($campaign->reply_to_013) ? null : $campaign->reply_to_013, 'email' => $contact->email_041, 'html' => $campaign->header_044 . $campaign->body_044 . $campaign->footer_044, 'text' => $campaign->text_044, 'subject' => $campaign->subject_044, 'contactKey' => Crypt::encrypt($contact->id_041), 'company' => isset($contact->company_041) ? $contact->company_041 : '', 'name' => isset($contact->name_041) ? $contact->name_041 : '', 'surname' => isset($contact->surname_041) ? $contact->surname_041 : '', 'birthDate' => isset($contact->birth_date_041) ? date(config('pulsar.datePattern'), $contact->birth_date_041) : '', 'campaign' => Crypt::encrypt($campaign->id_044), 'historyId' => '0']; // config SMTP account config(['mail.host' => $campaign->outgoing_server_013]); config(['mail.port' => $campaign->outgoing_port_013]); config(['mail.from' => ['address' => $campaign->email_013, 'name' => $campaign->name_013]]); config(['mail.encryption' => $campaign->outgoing_secure_013 == 'null' ? null : $campaign->outgoing_secure_013]); config(['mail.username' => $campaign->outgoing_user_013]); config(['mail.password' => Crypt::decrypt($campaign->outgoing_pass_013)]); EmailServices::sendEmail($dataEmail); } } } }