ldc-legaulois/app/Http/Middleware/XssSanitizer.php
Jérémy Munsch 92fde37cb3 Ticket 132 :
Utils: add assertNoInternalUrls
XssSanitizer call assertNoInternalUrls
Add missing "old('field')" on balanced -menus moments, ocb
2021-06-15 16:32:44 +02:00

31 lines
757 B
PHP

<?php
namespace App\Http\Middleware;
use App\Lib\Utils;
use Closure;
class XssSanitizer
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next, ...$params)
{
$inputs = $request->all();
array_walk_recursive($inputs, function (&$input, $name) use ($params) {
if (in_array($name, $params)) {
$input = clean($input);
$input = Utils::assertNoInternalUrls($name, $input);
} else {
$input = strip_tags($input);
}
});
$request->merge($inputs);
return $next($request);
}
}