class ControlPanel extends Controller

Page loader controller

Traits

Controller trait
Multilanguage trait
UserAccess trait
PageErrors trait

Properties

protected string|null $extensionName Extension name from BaseController
protected Container|null $container Container from BaseController
protected string|null $pageName Page name from BaseController
protected array $params Controller params from BaseController
protected array $messages Response messages from Multilanguage
protected string $messagesComponentName Messages component name from Multilanguage
protected boolean $messagesLoaded Messages loaded from Multilanguage

Methods

string|false
getRouteUrl(string|null $routeName, string|null $extension, array $params = [], string|null $language = null, bool $relative = false)

Get page url

string
getPageUrl(string $path = '', bool $relative = false, string|null $language = null)

Get page url

array
getParams()

Get params

mixed|null
getParam(string $key, mixed|null $default = null)

Get param

bool
resolveRouteParams(Request $request)

Resolve route params

string|null
getPageName()

Get page name

void
setExtensionName(string|null $name)

Set extension name

string|null
getExtensionName()

Get extension name

mixed
get(string $id)

Get item from container

bool
has(string $id)

Return tru if container item esist

Container
getContainer()

Get container

bool
logInfo(string $message, array $context = [])

Log message

array
getRequestParams(Request $request)

Get request params

mixed
getQueryParam(ServerRequestInterface $request, string $name, mixed $default = null)

Get query param

array
resolveRequestParams(Request $request, array $paramsKeys)

Resolve params

string
getUrl(ServerRequestInterface $request, bool $relative = false)

Get url

string|null
getError(string $errorCode, array $params = [])

Get error

bool
logError(string $message, array $context = [])

Log error

string|null
getMessage(string $name)

Get message

void
loadMessages(string $componentName)

Load messages from html component json file

void
loadMesasgesComponent(string|null $language = null)

Load messages component

string
getPageLanguage(array $data = [])

Get page language

bool
isLanguageChange(array $data)

Return true if page load is with new language code

string
getDefaultLanguage()

Get default language

void
requireAccess(string $name, mixed $type = null, object|null $response = null)

Reguire permission check if current user have permission

bool
hasControlPanelAccess()

Return true if user have control panel access

bool
hasAccess(string $name, string $type = null)

Return true if user have access permission

mixed
requireControlPanelPermission(object|null $response = null)

Require control panel permission

mixed
user()

Return current logged user

int|null
getUserId()

Return current logged user id

ResponseInterface
pageNotFound(ResponseInterface $response, array $data = [], string|null $templateName = null)

Display page not found error

ResponseInterface
pageSystemError(ResponseInterface $response, array $error = [], string $templateName = 'system')

Display system error page

__construct(Container $container = null)

Constructor

void
init()

Init controller, override this method in child classes

mixed
__call(string $name, array $arguments)

Call

ResponseInterface
pageLoad($request, $response, $data, $pageName = null, string|null $language = null)

Load page

ResponseInterface
withRedirect(ResponseInterface $response, string $url)

Set redirect headers

@return
noCacheHeaders(@return $response)

Set no cache in Cache-Control

ResponseInterface
writeXml(ResponseInterface $response, string $xml)

Write XML to reponse body

ResponseInterface
loadControlPanel(ServerRequestInterface $request, ResponseInterface $response, Validator $data)

Load control panel page

Details

in BaseController at line 59
string|false getRouteUrl(string|null $routeName, string|null $extension, array $params = [], string|null $language = null, bool $relative = false)

Get page url

Parameters

string|null $routeName
string|null $extension
array $params
string|null $language
bool $relative

Return Value

string|false

in BaseController at line 88
string getPageUrl(string $path = '', bool $relative = false, string|null $language = null)

Get page url

Parameters

string $path
bool $relative
string|null $language

Return Value

string

in BaseController at line 98
array getParams()

Get params

Return Value

array

in BaseController at line 110
mixed|null getParam(string $key, mixed|null $default = null)

Get param

Parameters

string $key
mixed|null $default

Return Value

mixed|null

in BaseController at line 121
protected bool resolveRouteParams(Request $request)

Resolve route params

Parameters

Request $request

Return Value

bool

in BaseController at line 146
string|null getPageName()

Get page name

Return Value

string|null

in BaseController at line 157
void setExtensionName(string|null $name)

Set extension name

Parameters

string|null $name

Return Value

void

in BaseController at line 167
string|null getExtensionName()

Get extension name

Return Value

string|null

in BaseController at line 178
mixed get(string $id)

Get item from container

Parameters

string $id

Return Value

mixed

in BaseController at line 194
bool has(string $id)

Return tru if container item esist

Parameters

string $id

Return Value

bool

in BaseController at line 204
Container getContainer()

Get container

Return Value

Container

in BaseController at line 216
bool logInfo(string $message, array $context = [])

Log message

Parameters

string $message
array $context

Return Value

bool

in BaseController at line 227
array getRequestParams(Request $request)

Get request params

Parameters

Request $request

Return Value

array

in BaseController at line 244
mixed getQueryParam(ServerRequestInterface $request, string $name, mixed $default = null)

Get query param

Parameters

ServerRequestInterface $request
string $name
mixed $default

Return Value

mixed

in BaseController at line 258
array resolveRequestParams(Request $request, array $paramsKeys)

Resolve params

Parameters

Request $request
array $paramsKeys

Return Value

array

in BaseController at line 275
string getUrl(ServerRequestInterface $request, bool $relative = false)

Get url

Parameters

ServerRequestInterface $request
bool $relative

Return Value

string

in BaseController at line 289
string|null getError(string $errorCode, array $params = [])

Get error

Parameters

string $errorCode
array $params

Return Value

string|null

in BaseController at line 303
bool logError(string $message, array $context = [])

Log error

Parameters

string $message
array $context

Return Value

bool

in Multilanguage at line 50
string|null getMessage(string $name)

Get message

Parameters

string $name

Return Value

string|null

in Multilanguage at line 66
void loadMessages(string $componentName)

Load messages from html component json file

Parameters

string $componentName

Return Value

void

in Multilanguage at line 78
protected void loadMesasgesComponent(string|null $language = null)

Load messages component

Parameters

string|null $language

Return Value

void

in Multilanguage at line 106
string getPageLanguage(array $data = [])

Get page language

Parameters

array $data

Return Value

string

in Multilanguage at line 129
bool isLanguageChange(array $data)

Return true if page load is with new language code

Parameters

array $data

Return Value

bool

in Multilanguage at line 143
string getDefaultLanguage()

Get default language

Return Value

string

in UserAccess at line 25
void requireAccess(string $name, mixed $type = null, object|null $response = null)

Reguire permission check if current user have permission

Parameters

string $name
mixed $type
object|null $response

Return Value

void

in UserAccess at line 43
bool hasControlPanelAccess()

Return true if user have control panel access

Return Value

bool

in UserAccess at line 55
bool hasAccess(string $name, string $type = null)

Return true if user have access permission

Parameters

string $name
string $type

Return Value

bool

in UserAccess at line 66
mixed requireControlPanelPermission(object|null $response = null)

Require control panel permission

Parameters

object|null $response

Return Value

mixed

in UserAccess at line 80
mixed user()

Return current logged user

Return Value

mixed

in UserAccess at line 90
int|null getUserId()

Return current logged user id

Return Value

int|null

in PageErrors at line 25
ResponseInterface pageNotFound(ResponseInterface $response, array $data = [], string|null $templateName = null)

Display page not found error

Parameters

ResponseInterface $response
array $data
string|null $templateName

Return Value

ResponseInterface

in PageErrors at line 43
ResponseInterface pageSystemError(ResponseInterface $response, array $error = [], string $templateName = 'system')

Display system error page

Parameters

ResponseInterface $response
array $error
string $templateName

Return Value

ResponseInterface

in Controller at line 37
__construct(Container $container = null)

Constructor

Parameters

Container $container

in Controller at line 48
void init()

Init controller, override this method in child classes

Return Value

void

in Controller at line 59
mixed __call(string $name, array $arguments)

Call

Parameters

string $name
array $arguments

Return Value

mixed

in Controller at line 85
ResponseInterface pageLoad($request, $response, $data, $pageName = null, string|null $language = null)

Load page

Parameters

$request
$response
$data
$pageName
string|null $language

Return Value

ResponseInterface

in Controller at line 122
ResponseInterface withRedirect(ResponseInterface $response, string $url)

Set redirect headers

Parameters

ResponseInterface $response
string $url

Return Value

ResponseInterface

in Controller at line 136
@return noCacheHeaders(@return $response)

Set no cache in Cache-Control

Parameters

@return $response \Psr\Http\Message\ResponseInterface

Return Value

@return \Psr\Http\Message\ResponseInterface

in Controller at line 152
ResponseInterface writeXml(ResponseInterface $response, string $xml)

Write XML to reponse body

Parameters

ResponseInterface $response
string $xml

Return Value

ResponseInterface

at line 27
ResponseInterface loadControlPanel(ServerRequestInterface $request, ResponseInterface $response, Validator $data)

Load control panel page

Parameters

ServerRequestInterface $request
ResponseInterface $response
Validator $data

Return Value

ResponseInterface