private static function create_default_record() { $config = ProfiledConfig::create(array('SendEmailFrom' => static::config()->get('send_email_from'), 'SendAdminEmailTo' => static::config()->get('send_admin_email_to'), 'SendToAdminFromMember' => static::config()->get('send_to_admin_from_member'))); $config->write(); return $config; }
protected function sendEmail($what, Member $member, array $data = []) { $profiledConfig = ProfiledConfig::current_profiled_config(); $templateData = array_merge(['Member' => $member], $data); $memberEmailTemplate = self::MemberEmailPrefix . strtolower($what); if (SSViewer::hasTemplate($memberEmailTemplate)) { // send email to member from ProfiledConfig.SendEmailFrom to Member.Email $emailMember = new Email($profiledConfig->getProfiledSender('Member'), $member->Email, $profiledConfig->getProfiledEmailSubject('Member', $what)); $emailMember->setTemplate($memberEmailTemplate); $emailMember->populateTemplate($templateData); $emailMember->send(); } $adminEmailTemplate = self::AdminEmailPrefix . strtolower($what); if (SSViewer::hasTemplate([$adminEmailTemplate])) { // send admin email from either Member.Email or ProfiledConfig.SendEmailFrom to Profiled.AdminEmail $emailAdmin = new Email($profiledConfig->getProfiledSender('Admin', $member->Email), $profiledConfig->getAdminEmail(), $profiledConfig->getProfiledEmailSubject('Admin', $what)); $emailAdmin->setTemplate($adminEmailTemplate); $emailAdmin->populateTemplate($templateData); // save body to attach to admin email if (isset($emailMember)) { $emailAdmin->attachFileFromString($emailMember->Body(), $member->Email . "_registration.txt"); } $emailAdmin->send(); } }