mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-10-14 00:04:24 +00:00
Made a cron controller.
This commit is contained in:
@@ -18,4 +18,7 @@ EMAIL_PASSWORD=
|
|||||||
ANALYTICS_ID=
|
ANALYTICS_ID=
|
||||||
EMAIL_PRETEND=false
|
EMAIL_PRETEND=false
|
||||||
RUNCLEANUP=true
|
RUNCLEANUP=true
|
||||||
SITE_OWNER=mail@example.com
|
SITE_OWNER=mail@example.com
|
||||||
|
|
||||||
|
SENDGRID_USERNAME=
|
||||||
|
SENDGRID_PASSWORD=
|
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
|
* @var array
|
||||||
*/
|
*/
|
||||||
protected $routes = [
|
protected $routes = [];
|
||||||
'hook/sendgrid',
|
|
||||||
];
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Handle an incoming request.
|
* Handle an incoming request.
|
||||||
@@ -31,23 +29,27 @@ class VerifyCsrfToken extends BaseVerifier
|
|||||||
*/
|
*/
|
||||||
public function handle($request, Closure $next)
|
public function handle($request, Closure $next)
|
||||||
{
|
{
|
||||||
if($this->excludedRoutes($request)) {
|
if ($this->excludedRoutes($request)) {
|
||||||
return $next($request);
|
return $next($request);
|
||||||
}
|
}
|
||||||
|
|
||||||
return parent::handle($request, $next);
|
return parent::handle($request, $next);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This will return a bool value based on route checking.
|
* This will return a bool value based on route checking.
|
||||||
|
*
|
||||||
* @param Request $request
|
* @param Request $request
|
||||||
|
*
|
||||||
* @return boolean
|
* @return boolean
|
||||||
*/
|
*/
|
||||||
protected function excludedRoutes($request)
|
protected function excludedRoutes($request)
|
||||||
{
|
{
|
||||||
foreach($this->routes as $route)
|
foreach ($this->routes as $route) {
|
||||||
if ($request->is($route))
|
if ($request->is($route)) {
|
||||||
return true;
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@@ -158,7 +158,7 @@ Route::bind(
|
|||||||
* Auth\AuthController
|
* Auth\AuthController
|
||||||
*/
|
*/
|
||||||
Route::get('/register', ['uses' => 'Auth\AuthController@getRegister', 'as' => 'register']);
|
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(
|
Route::controllers(
|
||||||
[
|
[
|
||||||
|
Reference in New Issue
Block a user