33 lines
888 B
PHP
33 lines
888 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Filters;
|
|
|
|
use CodeIgniter\Filters\FilterInterface;
|
|
use CodeIgniter\HTTP\RequestInterface;
|
|
use CodeIgniter\HTTP\ResponseInterface;
|
|
|
|
class AuthAdmin implements FilterInterface
|
|
{
|
|
public function before(RequestInterface $request, $arguments = null): ?ResponseInterface
|
|
{
|
|
$token = session()->get('admin_mobile_token');
|
|
if (is_string($token) && $token !== '') {
|
|
return null;
|
|
}
|
|
|
|
if ($request->isAJAX()) {
|
|
return service('response')
|
|
->setStatusCode(401)
|
|
->setJSON(['status' => 0, 'pesan' => 'Unauthorized']);
|
|
}
|
|
|
|
return redirect()->to(site_url('admin/login'))->with('error', 'Silakan login terlebih dahulu.');
|
|
}
|
|
|
|
public function after(RequestInterface $request, ResponseInterface $response, $arguments = null): void
|
|
{
|
|
}
|
|
}
|