74 lines
1.3 KiB
Plaintext
74 lines
1.3 KiB
Plaintext
<?php
|
|
|
|
namespace IPS\{app}\extensions\core\Loader;
|
|
|
|
use IPS\Extensions\LoaderAbstract;
|
|
use IPS\Http\Url;
|
|
use function defined;
|
|
|
|
/* To prevent PHP errors (extending class does not exist) revealing path */
|
|
if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) )
|
|
{
|
|
header( ( $_SERVER['SERVER_PROTOCOL'] ?? 'HTTP/1.0' ) . ' 403 Forbidden' );
|
|
exit;
|
|
}
|
|
|
|
/**
|
|
* @brief Loader extension: {class}
|
|
*/
|
|
class {class} extends LoaderAbstract
|
|
{
|
|
/**
|
|
* Additional CSS files to load
|
|
*
|
|
* @return array<string|Url>
|
|
*/
|
|
public function css(): array
|
|
{
|
|
return [];
|
|
}
|
|
|
|
/**
|
|
* Additional JS files to load
|
|
*
|
|
* @return array<string|Url>
|
|
*/
|
|
public function js(): array
|
|
{
|
|
return [];
|
|
}
|
|
|
|
/**
|
|
* If a redirect is needed, return the URL
|
|
* or NULL to continue
|
|
*
|
|
* @return Url|null
|
|
*/
|
|
public function checkForRedirect() : Url|null
|
|
{
|
|
return null;
|
|
}
|
|
|
|
/**
|
|
* Show a custom error message or null to use the default
|
|
*
|
|
* @param string $message
|
|
* @param mixed $code
|
|
* @param int $httpStatusCode
|
|
* @return string|null
|
|
*/
|
|
public function customError( string $message, mixed $code, int $httpStatusCode ) : string|null
|
|
{
|
|
return null;
|
|
}
|
|
|
|
/**
|
|
* Run custom code right on Dispatcher::finish()
|
|
*
|
|
* @return void
|
|
*/
|
|
public function onFinish() : void
|
|
{
|
|
|
|
}
|
|
} |