37 lines
783 B
PHP
37 lines
783 B
PHP
<?php
|
|
|
|
namespace App\Http\Middleware\Web;
|
|
|
|
use App\CMS\Helpers\WidgetAreas;
|
|
use App\Models\Widgets\WidgetArea;
|
|
use Closure;
|
|
|
|
class IncrementWidgetsViews
|
|
{
|
|
/**
|
|
* Handle an incoming request.
|
|
*
|
|
* @param \Illuminate\Http\Request $request
|
|
* @param \Closure $next
|
|
*
|
|
* @return mixed
|
|
*/
|
|
public function handle($request, Closure $next)
|
|
{
|
|
return $next($request);
|
|
}
|
|
|
|
public function terminate($request, $response)
|
|
{
|
|
// if (!setting('useWidgetPreloading', false))
|
|
// return;
|
|
|
|
$widgets = WidgetAreas::getLoadedWidgets();
|
|
|
|
if (!empty($widgets['areas'])) {
|
|
WidgetArea::whereIn('code', $widgets['areas'])
|
|
->increment('viewed');
|
|
}
|
|
}
|
|
}
|