/** * Get the settings object */ public function settings() { if (empty($this->__settings)) { $this->__settings = \Mailer\Models\Settings::fetch(); } return $this->__settings; }
protected function displayCreate() { $mailer_settings = \Mailer\Models\Settings::fetch(); if (!$mailer_settings->emails_registered || date('Y-m-d', time()) > date('Y-m-d', $mailer_settings->emails_registered)) { $result = \Dsc\System::instance()->trigger('onSystemRegisterEmails'); $mailer_settings->{'emails_registered'} = time(); $mailer_settings->save(); $this->app->reroute('/admin/mailer/template/create'); } $this->app->set('meta.title', 'Create Templates | Mailer'); $view = \Dsc\System::instance()->get('theme'); echo $view->render('Mailer\\Admin\\Views::templates/create.php'); }
public function beforeRoute() { parent::beforeRoute(); $settings = \Admin\Models\Settings::fetch(); if (empty($settings->admin_menu_id)) { $this->session->set('rebuild-menu.redirect', '/admin'); return $this->app->reroute('/admin/system/rebuildAdminMenu'); } if (class_exists('\\Mailer\\Factory')) { $mailer_settings = \Mailer\Models\Settings::fetch(); if (!$mailer_settings->emails_registered || date('Y-m-d', time()) > date('Y-m-d', $mailer_settings->emails_registered)) { $result = \Dsc\System::instance()->trigger('onSystemRegisterEmails'); $mailer_settings->{'emails_registered'} = time(); $mailer_settings->save(); } } }
public function initialize() { $this->setDefaults(array('namespace' => '\\Mailer\\Admin\\Controllers', 'url_prefix' => '/admin/mailer')); $this->addSettingsRoutes(); $this->add('', 'GET', array('controller' => 'Home', 'action' => 'index')); $this->addCrudGroup('Templates', 'Template'); $this->addCrudGroup('Emails', 'Email'); $this->addCrudGroup('Events', 'Event'); $this->addCrudGroup('Blocks', 'Block'); $this->add('/template/create/@event_id', 'GET', array('controller' => 'Template', 'action' => 'createFromEvent')); $this->add('/template/create/@event_id', 'POST', array('controller' => 'Template', 'action' => 'saveFromEvent')); $this->add('/template/preview/@id', 'GET|POST', array('controller' => 'Preview', 'action' => 'index')); $this->add('/template/preview/@id/email', 'GET|POST', array('controller' => 'Preview', 'action' => 'email')); $this->add('/contentvariants/quickadd/@id', 'GET', array('controller' => 'ContentVariant', 'action' => 'quickAdd')); $this->app->route('GET /admin/mailer/registerEmails', function ($app) { $mailer_settings = \Mailer\Models\Settings::fetch(); $result = \Dsc\System::instance()->trigger('onSystemRegisterEmails'); $mailer_settings->{'emails_registered'} = time(); $mailer_settings->save(); $app->reroute('/admin/mailer/templates'); }); }
public function registerEmails() { if (class_exists('\\Mailer\\Factory')) { $mailer_settings = \Mailer\Models\Settings::fetch(); $result = \Dsc\System::instance()->trigger('onSystemRegisterEmails'); $mailer_settings->{'emails_registered'} = time(); $mailer_settings->save(); } return $this->app->reroute('/admin'); }
<?php $settings = \Mailer\Models\Settings::fetch(); ?> <div class="row"> <div class="col-md-2"> <h3>Settings</h3> </div> <!-- /.col-md-2 --> <div class="col-md-10"> <div class="form-group"> <label>From Name</label> <input type="text" name="from_name" placeholder="e.g. MyDomain.com" value="<?php echo $flash->old('from_name'); ?> " class="form-control" /> <p class="help-block">Leave blank to use the default, which is currently: <?php echo $settings->{'general.from_name'} ? $settings->{'general.from_name'} : 'n/a'; ?> </p> </div> <!-- /.form-group --> <div class="form-group"> <label>From Email</label> <input type="text" name="from_email" placeholder="e.g. noreply@mydomain.com" value="<?php
/** * Utility function to quickly send an email * * @param string $fromEmail * From email address * @param string $fromName * From name * @param mixed $recipientEmails * Recipient email address(es) * @param string $subject * email subject * @param mixed $body * Message body. If an array, [0] => html, [1] => plain text * @param boolean $mode * false = plain text, true = HTML * @param mixed $cc * CC email address(es) * @param mixed $bcc * BCC email address(es) * @param mixed $attachment * Attachment file name(s) * @param mixed $replyTo * Reply to email address(es) * @param mixed $replyToName * Reply to name(s) * * @return boolean True on success */ public static function send($recipientEmails, $subject, $body, $fromEmail = null, $fromName = null, $mode = true, $cc = null, $bcc = null, $attachment = null, $replyTo = null, $replyToName = null) { $settings = \Mailer\Models\Settings::fetch(); $email = new \Mailer\Email(); $email->setSubject($subject); $email->setBody($body); // Are we sending the email as HTML? if (!$mode) { $email->IsHTML(false); } $email->addRecipient($recipientEmails); $email->addCC($cc); $email->addBCC($bcc); $email->addAttachment($attachment); if (is_array($replyTo)) { foreach ($replyTo as $key => $replyToEmail) { $replyName = $replyToEmail; if (!empty($replyToName[$key])) { $replyName = $replyToName[$key]; } $email->addReplyTo(array($replyToEmail, $replyName)); } } elseif (isset($replyTo)) { $replyName = !empty($replyToName) ? $replyToName : $replyTo; $email->addReplyTo(array($replyTo, $replyName)); } if (empty($fromEmail)) { $fromEmail = $settings->{'general.from_email'}; } if (empty($fromName)) { $fromName = $settings->{'general.from_name'}; } // Add sender to replyTo only if no replyTo received $autoReplyTo = empty($email->ReplyTo) ? true : false; $email->setSender(array($fromEmail, $fromName, $autoReplyTo)); return static::queue($email); }