<?php
namespace Config;
use CodeIgniter\Config\BaseConfig;
use CodeIgniter\Filters\CSRF;
use CodeIgniter\Filters\DebugToolbar;
use CodeIgniter\Filters\Honeypot;
use Modules\Auth\Filters\AuthFilter;
use Modules\Auth\Filters\CsrfFilter;
use Modules\Auth\Filters\JwtFilter;
use Modules\Auth\Filters\ThrottleFilter;
use Modules\Common\Filters\ContentNegotiationFilter;
use Modules\Common\Filters\CorsFilter;
use Modules\Common\Filters\UrlFilter;
class Filters extends BaseConfig
{
/**
* Configures aliases for Filter classes to
* make reading things nicer and simpler.
*
* @var array
*/
public $aliases = [
//'csrf' => CSRF::class,
'toolbar' => DebugToolbar::class,
'honeypot' => Honeypot::class,
'toolbar' => DebugToolbar::class,
'honeypot' => Honeypot::class,
'csrf' => CsrfFilter::class,
'cors' => CorsFilter::class,
'auth' => AuthFilter::class,
'jwt' => JwtFilter::class,
'url' => UrlFilter::class,
'throttle' => ThrottleFilter::class,
'contentNegotiation' => ContentNegotiationFilter::class,
];
/**
* List of filter aliases that are always
* applied before and after every request.
*
* @var array
*/
public $globals = [
'before' => [
// 'honeypot',
// 'csrf',
// 'honeypot',
// 'csrf',
'cors',
'url',
'contentNegotiation'
// 'csrf',
],
'after' => [
'toolbar',
// 'honeypot',
// 'csrf',
],
];
/**
* List of filter aliases that works on a
* particular HTTP method (GET, POST, etc.).
*
* Example:
* 'post' => ['csrf', 'throttle']
*
* @var array
*/
public $methods = [
// 'get' => ['csrf'],
// 'post' => ['csrf'],
// 'put' => ['csrf'],
// 'delete' => ['csrf']
];
/**
* List of filter aliases that should run on any
* before or after URI patterns.
*
* Example:
* 'isLoggedIn' => ['before' => ['account/*', 'profiles/*']]
*
* @var array
*/
public $filters = [
'auth' => ['before' => 'api*'],
'jwt' => ['before' => 'api*',],
];
}