Skip to content

Commit 68a7db8

Browse files
authored
Merge pull request #13 from eXorus/mailcare-driver
Added mailcare driver
2 parents db331bc + 075a21c commit 68a7db8

File tree

4 files changed

+64
-0
lines changed

4 files changed

+64
-0
lines changed

src/Drivers/MailCare.php

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<?php
2+
3+
namespace BeyondCode\Mailbox\Drivers;
4+
5+
use Illuminate\Support\Facades\Route;
6+
use BeyondCode\Mailbox\Http\Controllers\MailCareController;
7+
8+
class MailCare implements DriverInterface
9+
{
10+
public function register()
11+
{
12+
Route::prefix(config('mailbox.path'))->group(function () {
13+
Route::post('/mailcare', MailCareController::class);
14+
});
15+
}
16+
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
<?php
2+
3+
namespace BeyondCode\Mailbox\Http\Controllers;
4+
5+
use Illuminate\Routing\Controller;
6+
use BeyondCode\Mailbox\Facades\Mailbox;
7+
use BeyondCode\Mailbox\Http\Requests\MailCareRequest;
8+
9+
class MailCareController extends Controller
10+
{
11+
public function __construct()
12+
{
13+
$this->middleware('laravel-mailbox');
14+
}
15+
16+
public function __invoke(MailCareRequest $request)
17+
{
18+
Mailbox::callMailboxes($request->email());
19+
}
20+
}

src/Http/Requests/MailCareRequest.php

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<?php
2+
3+
namespace BeyondCode\Mailbox\Http\Requests;
4+
5+
use BeyondCode\Mailbox\InboundEmail;
6+
use Illuminate\Support\Facades\Validator;
7+
use Illuminate\Foundation\Http\FormRequest;
8+
9+
class MailCareRequest extends FormRequest
10+
{
11+
public function validator()
12+
{
13+
return Validator::make($this->all(), [
14+
'email' => 'required',
15+
]);
16+
}
17+
18+
public function email()
19+
{
20+
return InboundEmail::fromMessage($this->get('email'));
21+
}
22+
}

src/MailboxManager.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
use Illuminate\Support\Manager;
66
use BeyondCode\Mailbox\Drivers\Log;
77
use BeyondCode\Mailbox\Drivers\Mailgun;
8+
use BeyondCode\Mailbox\Drivers\MailCare;
89
use BeyondCode\Mailbox\Drivers\Postmark;
910
use BeyondCode\Mailbox\Drivers\SendGrid;
1011

@@ -30,6 +31,11 @@ public function createSendGridDriver()
3031
return new SendGrid;
3132
}
3233

34+
public function createMailCareDriver()
35+
{
36+
return new MailCare;
37+
}
38+
3339
public function createPostmarkDriver()
3440
{
3541
return new Postmark;

0 commit comments

Comments
 (0)