/* Permission Check */
if ( !\IPS\Member::loggedIn()->canAccessModule( $this->module ) )
{
if ( !\IPS\Member::loggedIn()->member_id and isset( \IPS\Request::i()->_mfaLogin ) )
{
\IPS\Output::i()->redirect( \IPS\Http\Url::internal( "app=core&module=system&controller=login", 'front', 'login' )->setQueryString( '_mfaLogin', 1 ) );
}
\IPS\Output::i()->error( ( \IPS\Member::loggedIn()->member_id ? 'no_module_permission' : 'no_module_permission_guest' ), '2S100/2', 403, 'no_module_permission_admin' );
}
Вторая
public static function i()
{
if( static::$instance === NULL )
{
$class = get_called_class();
if( $class == 'IPS\\Dispatcher' )
{
throw new \RuntimeException( "Only subclasses of Dispatcher can be instantiated" );
}
static::$instance = new $class;
if( static::$instance->controllerLocation != 'setup' )
{
$_redirect = FALSE;
if ( !file_exists( \IPS\ROOT_PATH . '/conf_global.php' ) )
{
$_redirect = TRUE;
}
else
{
require \IPS\ROOT_PATH . '/conf_global.php';
if( !isset( $INFO['sql_database'] ) )
{
$_redirect = TRUE;
}
else if ( !isset( $INFO['installed'] ) OR !$INFO['installed'] )
{
/* This looks weird, but there was a period of time where "installed" was misspelled as "instaled" on Community in the Cloud after install finished. So, if that is present, assume we're okay. */
if ( !isset( $INFO['instaled'] ) )
{
if( isset( $_SERVER['SERVER_PROTOCOL'] ) and \strstr( $_SERVER['SERVER_PROTOCOL'], '/1.0' ) !== false )
{
header( "HTTP/1.0 503 Service Unavailable" );
}
else
{
header( "HTTP/1.1 503 Service Unavailable" );
}
require \IPS\ROOT_PATH . '/' . \IPS\CP_DIRECTORY . '/install/installing.html';
exit;
}
}
}
if( $_redirect === TRUE )
{
/* conf_global.php does not exist, forward to installer */
$url = ( \IPS\Request::i()->isSecure() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . rtrim( dirname( $_SERVER['SCRIPT_NAME'] ), '/' );
\IPS\Output::i()->redirect( "{$url}/" . \IPS\CP_DIRECTORY . "/install/" );
}
}
static::$instance->init();
}
return static::$instance;
}
Но ошибку выбает тут:
static::$instance->init();
Третья
\IPS\Dispatcher\Front::i()->run();