ldc-gen-game-web/app/Http/Controllers/Bo/BannedIpController.php
2022-03-16 10:47:17 +01:00

57 lines
1.3 KiB
PHP

<?php
namespace App\Http\Controllers\Bo;
use App\Http\Controllers\Controller;
use App\Http\Requests\SaveBannedIpListRequest;
use App\Models\BannedIp;
use Illuminate\Http\Request;
class BannedIpController extends Controller
{
/**
* Show banned ips list
*
* @return \Illuminate\Contracts\View\View|\Illuminate\Contracts\View\Factory
*/
public function index()
{
$ips = BannedIp::all();
return view('bo.banned-ip.index', compact('ips'));
}
/**
* Ajax save data banned ips
*
* @param SaveBannedIpListRequest $request
* @return array
*/
public function saveDatas(SaveBannedIpListRequest $request)
{
/** @var \Illuminate\Support\Collection $ips */
$ips = \collect($request->ips);
// * Delete all
BannedIp::query()->delete();
$ips->map(function (string $ip) {
(new BannedIp(['ip' => $ip]))->saveOrFail();
});
return \response()->json(BannedIp::all());
}
/**
* Ajax destroy ip
*
* @param Request $request
* @return string
*/
public function destroy(Request $request)
{
$ip = BannedIp::where("ip", $request->ip);
$ip->delete();
return "Suppression terminée !";
}
}