private function addUserToUpdates($user) { try { \Mailgun::lists()->addMember('*****@*****.**', ['address' => $user->email, 'subscribed' => true]); } catch (\Exception $e) { } }
/** @test */ public function it_raises_an_exception_when_a_custom_client_is_not_registered_in_the_container() { $this->expectException('ReflectionException'); $this->expectExceptionMessage('Class mailgun.client does not exist'); unset($this->app['mailgun.client']); Mailgun::send(null, null, null); }
/** * Displays the contact page */ public function actionContact() { $model = new ContactForm(); if (isset($_POST['ContactForm'])) { $model->attributes = $_POST['ContactForm']; if ($model->validate()) { $name = '=?UTF-8?B?' . base64_encode($model->name) . '?='; $subject = '=?UTF-8?B?' . base64_encode($model->subject) . '?='; $headers = "From: {$name} <{$model->email}>\r\n" . "Reply-To: {$model->email}\r\n" . "MIME-Version: 1.0\r\n" . "Content-type: text/plain; charset=UTF-8"; $mailgun = new Mailgun(); // to do - sending headers not from contact form $mailgun->mail("{$name} <{$model->email}>", Yii::app()->params['adminEmail'], $subject, $model->body, $headers); Yii::app()->user->setFlash('contact', 'Thank you for contacting us. We will respond to you as soon as possible.'); $this->refresh(); } } $this->render('contact', array('model' => $model)); }
/** * Handle the event. * * @param Events $event * @return void */ public function handle(MenuWasPublished $event) { $menu = $event->menu; $approvedUsers = User::getApprovedUsers(); $allUsers = $approvedUsers->lists('email')->toArray(); $userVars = $approvedUsers->map(function ($user) { return [$user->email => ['name' => $user->name]]; })->collapse()->toArray(); $data = ['menu' => $menu]; \Mailgun::send('emails.menu-was-published', $data, function ($m) use($menu, $allUsers, $userVars) { $m->to($userVars)->subject('New Menu for ' . $menu->date->format('d.m.Y')); // $m->recipientVariables($userVars); }); }
/** * Setup backend functionality in WordPress * * @return none * @since 0.1 */ function __construct() { Mailgun::__construct(); // Load localizations if available load_plugin_textdomain('mailgun', false, 'mailgun/languages'); // Activation hook register_activation_hook($this->plugin_file, array(&$this, 'init')); if (!defined('MAILGUN_USEAPI') || !MAILGUN_USEAPI) { // Hook into admin_init and register settings and potentially register an admin_notice add_action('admin_init', array(&$this, 'admin_init')); // Activate the options page add_action('admin_menu', array(&$this, 'admin_menu')); } // Register an AJAX action for testing mail sending capabilities add_action('wp_ajax_mailgun-test', array(&$this, 'ajax_send_test')); }
public function sendEmail() { $rules = ['email' => 'required|email']; $input = Input::only('email'); $validator = Validator::make($input, $rules); if ($validator->fails()) { return Redirect::back()->withInput()->withErrors($validator); } $names = ["Tim", "Tom", "James Bond", "Peter Pan"]; $name = $names[rand(0, count($names) - 1)]; $data = ["name" => $name]; \Mailgun::send("emails.hello", $data, function ($message) { $message->to(Input::get("email"), "hurr")->subject("hi"); }); return View::make("mailissend", $data); }
/** * Setup shared functionality for Admin and Front End * * @return none * @since 0.1 */ function __construct() { $this->options = get_option('mailgun'); $this->plugin_file = __FILE__; $this->plugin_basename = plugin_basename($this->plugin_file); // Either override the wp_mail function or configure PHPMailer to use the // Mailgun SMTP servers if ($this->get_option('useAPI') || defined('MAILGUN_USEAPI') && MAILGUN_USEAPI) { if (!function_exists('wp_mail')) { if (!@(include dirname(__FILE__) . '/includes/wp-mail.php')) { Mailgun::deactivate_and_die(dirname(__FILE__) . '/includes/wp-mail.php'); } } } else { add_action('phpmailer_init', array(&$this, 'phpmailer_init')); } }
public function send_new_pass() { try { $email = Input::get('request_pass_email'); $user = User::whereEmail($email)->first(); $link = URL::to('dashboard/' . $this->hashids->encrypt($user->id) . '/reset-pass-from-email'); $name = $user->first_name . ' ' . $user->last_name; $data = ['user' => $user, 'link' => $link]; $result = Mailgun::send('backend.emails.auth.click-to-reset-pass', $data, function ($message) use($user, $name) { $message->from($this->admin->email, $this->admin->first_name)->subject($this->setting->sitename . ' Admin Password Reset')->to($user->email, $name)->tag('Password Recovery'); }); if (is_object($result)) { return Response::json(['success' => 'An email has been sent to you with instructions on how to reset your password.']); } else { return Response::json(['error' => 'An error was encountered sending the email. Please try again or contact server admin.']); } } catch (Exception $e) { return Response::json(array('error' => 'An error occurred. Kindly try again or contact admin.')); } }
/** @test */ public function is_provides_the_mailgun_opt_in_handler() { $this->mailgunApi->shouldReceive('OptInHandler')->once(); $handler = Mailgun::optInHandler(); $this->assertTrue(true); }
<?php $recaptcha = new \ReCaptcha\ReCaptcha($secret); $resp = $recaptcha->verify($gRecaptchaResponse, $remoteIp); if ($resp->isSuccess()) { // verified! } else { $errors = $resp->getErrorCodes(); } # First, instantiate the SDK with your API credentials and define your domain. $mg = new Mailgun("key-example"); $domain = "example.com"; # Now, compose and send your message. $mg->sendMessage($domain, array('from' => '*****@*****.**', 'to' => '*****@*****.**', 'subject' => 'The PHP SDK is awesome!', 'text' => 'It is so simple to send a message.'));
<?php Route::get('emailBatch', function () { $data = array(); Mailgun::send('emails.emailBatch', $data, function ($message) { $message->to(array("Daniel Heyman <*****@*****.**>" => array('name' => 'Hello', 'code' => 'poop'), "Dan Heyman <*****@*****.**>" => array('name' => 'Bananna', 'code' => 'cdf')))->subject('Welcome to BriskSurf!'); }); return 'hello'; });
Route::group(['middleware' => ['web']], function () { require __DIR__ . '/Routes/front.php'; require __DIR__ . '/Routes/auth.php'; Route::get('sesiones', [function () { dd(Session::get('cart')); }, 'as' => 'sesiones']); }); Route::group(['prefix' => 'admin', 'middleware' => ['admin']], function () { require __DIR__ . '/Routes/admin.php'; }); Route::get('mailjk', [function () { $user = []; $m = Mailgun::send('emails.focusGroup', $user, function ($message) { $message->to('*****@*****.**')->subject('Invitacion focus group Agrosellers'); $message->tag('testGroupAgro'); $message->from('*****@*****.**', 'Agrosellers'); $message->trackOpens(true); }); dd($m); }, 'as' => 'sesiones']); use Agrosellers\User; Route::get('prueba', ['as' => 'elasticIndex', 'uses' => 'PositionAlgorithmController@index']); use Illuminate\Http\Request; use Agrosellers\Entities\Product; Route::post('prueba', ['as' => 'elasticSearch', 'uses' => function (Request $request) { Product::addAllToIndex(); $products = Product::search($request->name)->getDictionary(); echo '<table> <thead> <tr> <th>Nombre</th>
/** * Send to user mail */ public function sendMailToUser($user_id, $subject, $message, $from = '') { $user = User::model()->findbyPk($user_id); if (!$from) { $from = Yii::app()->params['supportEmail']; } $headers = "From: " . $from . "\r\nReply-To: " . Yii::app()->params['supportEmail']; $mailgun = new Mailgun(); return $mailgun->php_mail($email, '=?UTF-8?B?' . base64_encode($subject) . '?=', $message, $headers); // return mail($user->email,'=?UTF-8?B?'.base64_encode($subject).'?=',$message,$headers); }
/** * @covers ::__construct * @covers ::configDefaults * @covers ::getMailgun * @group Email */ public function testConstruct() { $mock = \Mockery::mock('Mailgun\\Mailgun'); $object = new Mailgun($mock, $this->getConfig()); $this->assertSame($mock, $object->getMailgun()); }
public function send() { $inputs = []; foreach (Input::all() as $key => $input) { $inputs[$key] = Jamesy\Sanitiser::trimInput($input); } $rules = Input::has('save_draft') ? $this->draftRules : $this->rules; $validation = Jamesy\MyValidations::validate($inputs, $rules); if ($validation != NULL) { return Redirect::back()->withErrors($validation)->withInput(); } else { if (Input::has('save_draft')) { $draft = Input::has('was_draft') ? Draft::find(Input::get('was_draft')) : new Draft(); $draft->user_id = $this->user->id; $draft->tag_id = $inputs['tag_id']; $draft->subject = $inputs['subject']; $draft->email_body = $inputs['email_body']; $draft->save(); return Redirect::to('dashboard/emails/drafts'); } else { $maxSendNum = 999; $email = new Email(); $email->user_id = $this->user->id; $email->tag_id = $inputs['tag_id']; $email->from = Setting::getFromName($this->user) . " (" . Setting::getFromEmail($this->user) . ")"; $email->reply_to = Setting::getFromName($this->user) . " (" . Setting::getReplyToEmail($this->user) . ")"; $email->subject = $inputs['subject']; $email->email_body = $inputs['email_body']; $email->save(); $maillists = Input::has('mail_lists') ? $inputs['mail_lists'] : []; $emails = Input::has('subscribers') ? $inputs['subscribers'] : []; $selectedSubs = Subscriber::getSelectedSubscribersForEmail($maillists, $emails); while (count($selectedSubs)) { $data = ['email_body' => $inputs['email_body'], 'email_id' => \Jamesy\Miscellaneous::encryptId($email->id)]; $variables = []; $tag = Tag::find($inputs['tag_id']); $emailId = $email->id; $numToSlice = count($selectedSubs) > $maxSendNum ? $maxSendNum : count($selectedSubs); $subscribers = $numToSlice < count($selectedSubs) ? array_slice($selectedSubs, 0, $numToSlice) : $selectedSubs; foreach ($subscribers as $subscriber) { $variables[$subscriber['email']] = ['id' => $subscriber['id'], 'first_name' => $subscriber['first_name'], 'last_name' => $subscriber['last_name']]; } $result = Mailgun::send('backend.emails.send_templates.main', $data, function ($message) use($subscribers, $inputs, $variables, $emailId, $tag) { $message->from(Setting::getFromEmail($this->user), Setting::getFromName($this->user))->replyTo(Setting::getReplyToEmail($this->user), Setting::getFromName($this->user))->subject($inputs['subject']); foreach ($subscribers as $subscriber) { $message->to($subscriber['email'], $subscriber['first_name'] . ' ' . $subscriber['last_name']); } $message->recipientVariables($variables); $message->tag($tag->name); }); if (is_object($result)) { if ($result->http_response_code == 200) { foreach ($subscribers as $subscriber) { $apicall_id = explode('<', explode('@', $result->http_response_body->id)[0])[1]; $analytic = new Analytic(); $analytic->subscriber_id = $subscriber['id']; $analytic->email_id = $email->id; $analytic->recipient = $subscriber['email']; $analytic->apicall_id = $apicall_id; $analytic->status = 'queued'; $analytic->save(); } } } $selectedSubs = array_slice((array) $selectedSubs, $numToSlice); } if (Input::has('was_draft')) { Draft::find(Input::get('was_draft'))->delete(); } return Redirect::to('dashboard/emails/sent'); } } }