mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-10-12 15:35:15 +00:00
Made a cron controller.
This commit is contained in:
50
app/Http/Controllers/CronController.php
Normal file
50
app/Http/Controllers/CronController.php
Normal file
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
|
||||
namespace FireflyIII\Http\Controllers;
|
||||
|
||||
use FireflyIII\User;
|
||||
|
||||
/**
|
||||
* Class WebhookController
|
||||
*
|
||||
* @package FireflyIII\Http\Controllers
|
||||
*/
|
||||
class CronController extends Controller
|
||||
{
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public function sendgrid()
|
||||
{
|
||||
|
||||
$URL = 'https://api.sendgrid.com/api/bounces.get.json';
|
||||
$parameters = [
|
||||
'api_user' => env('SENDGRID_USERNAME'),
|
||||
'api_key' => env('SENDGRID_PASSWORD'),
|
||||
'date' => 1,
|
||||
'days' => 7
|
||||
];
|
||||
$fullURL = $URL . '?' . http_build_query($parameters);
|
||||
$data = json_decode(file_get_contents($fullURL));
|
||||
$users = [];
|
||||
// loop the result, if any.
|
||||
if (is_array($data)) {
|
||||
foreach ($data as $entry) {
|
||||
$address = $entry->email;
|
||||
$users[] = User::where('email', $address);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
/** @var User $user */
|
||||
foreach($users as $user) {
|
||||
if($user) {
|
||||
// block because bounce.
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
@@ -1,27 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace FireflyIII\Http\Controllers;
|
||||
|
||||
use Log;
|
||||
|
||||
/**
|
||||
* Class WebhookController
|
||||
*
|
||||
* @package FireflyIII\Http\Controllers
|
||||
*/
|
||||
class WebhookController extends Controller
|
||||
{
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public function sendgrid()
|
||||
{
|
||||
var_dump($_POST);
|
||||
Log::debug(print_r($_POST, true));
|
||||
Log::debug(print_r($_GET, true));
|
||||
Log::debug(print_r($_SERVER, true));
|
||||
|
||||
}
|
||||
|
||||
}
|
@@ -13,13 +13,11 @@ class VerifyCsrfToken extends BaseVerifier
|
||||
{
|
||||
|
||||
/**
|
||||
* Routes we want to exclude.
|
||||
* Routes we want to exclude from CSRF.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $routes = [
|
||||
'hook/sendgrid',
|
||||
];
|
||||
protected $routes = [];
|
||||
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
@@ -31,23 +29,27 @@ class VerifyCsrfToken extends BaseVerifier
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if($this->excludedRoutes($request)) {
|
||||
if ($this->excludedRoutes($request)) {
|
||||
return $next($request);
|
||||
}
|
||||
|
||||
return parent::handle($request, $next);
|
||||
}
|
||||
|
||||
/**
|
||||
* This will return a bool value based on route checking.
|
||||
|
||||
*
|
||||
* @param Request $request
|
||||
*
|
||||
* @return boolean
|
||||
*/
|
||||
protected function excludedRoutes($request)
|
||||
{
|
||||
foreach($this->routes as $route)
|
||||
if ($request->is($route))
|
||||
foreach ($this->routes as $route) {
|
||||
if ($request->is($route)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
@@ -158,7 +158,7 @@ Route::bind(
|
||||
* Auth\AuthController
|
||||
*/
|
||||
Route::get('/register', ['uses' => 'Auth\AuthController@getRegister', 'as' => 'register']);
|
||||
Route::post ('/hook/sendgrid', ['uses' => 'WebhookController@sendgrid']);
|
||||
Route::get('/cron/sendgrid', ['uses' => 'CronController@sendgrid']);
|
||||
|
||||
Route::controllers(
|
||||
[
|
||||
|
Reference in New Issue
Block a user