DashboardController
extends AdminHttpViewController
in package
Class DashboardController
PHP controller class for the dashboard page of the admin section. The statistic results are generated within this class and provided to the frontend through AJAX calls.
Tags
Table of Contents
- $assets : AssetCollectionInterface
- $contentView : ContentViewInterface
- $excludeOrderStatusIds : array<string|int, mixed>
- $httpContextReader : HttpContextReaderInterface
- $httpResponseProcessor : HttpResponseProcessorInterface
- $postDataArray : array<string|int, mixed>
- $queryParametersArray : array<string|int, mixed>
- $serverDataArray : array<string|int, mixed>
- $statisticsService : StatisticsService
- __construct() : mixed
- actionDefault() : HttpControllerResponseInterface
- Default action method.
- actionGetAverageOrderValue() : JsonHttpControllerResponse
- Returns the average order value in the given timespan
- actionGetConversionRate() : JsonHttpControllerResponse
- Returns the conversion rate in the given timespan
- actionGetLatestOrders() : mixed
- Returns the latest orders.
- actionGetNewCustomers() : JsonHttpControllerResponse
- Returns the amount of Visitors in the given timespan
- actionGetNewCustomerStatisticsData() : JsonHttpControllerResponse
- Returns new customer data for the dashboard statistic.
- actionGetOrdersCount() : JsonHttpControllerResponse
- Returns the count of orders in the given timespan
- actionGetOrderStatisticsData() : JsonHttpControllerResponse
- Returns order data for the dashboard statistic.
- actionGetSales() : JsonHttpControllerResponse
- Returns the sales rate in the given timespan
- actionGetSalesStatisticsData() : JsonHttpControllerResponse
- Returns sales data for the dashboard statistic.
- actionGetStatisticBoxes() : mixed
- actionGetUsersOnline() : JsonHttpControllerResponse
- Returns the amount of users who are currently online
- actionGetVisitors() : JsonHttpControllerResponse
- Gets the amount of Visitors in the given timespan
- actionGetVisitorsStatisticsData() : JsonHttpControllerResponse
- Returns visitor data for the dashboard statistic.
- init() : mixed
- Initialize Controller
- proceed() : mixed
- Processes a http response object which is get by invoking an action method.
- validateCurrentAdminStatus() : mixed
- Makes sure that the admin status is currently given in session
- _callActionMethod() : HttpControllerResponseInterface
- Invokes an action method by the given action name.
- _getConversionRate() : array<string|int, mixed>
- Get conversion rate statistics.
- _getOrdersCount() : array<string|int, mixed>
- Get orders count statistics.
- _getPostData() : string|null
- Returns the expected $_POST value by the given key name.
- _getPostDataCollection() : KeyValueCollection
- Creates and returns a key value collection which represent the global $_POST array.
- _getQueryParameter() : mixed|null
- Returns the expected $_GET value by the given key name.
- _getQueryParametersCollection() : KeyValueCollection
- Creates and returns a key value collection which represent the global $_GET array.
- _getSales() : mixed
- _getSalesStatisticsData() : mixed
- _getServerData() : string|null
- Returns the expected $_SERVER value by the given key name.
- _getUsersOnline() : array<string|int, mixed>
- Get online user statistics.
- _getVisitors() : array<string|int, mixed>
- Get visitors count statistics.
- _render() : string
- Renders and returns a template file.
- _validatePageToken() : mixed
- Check if the $_POST['pageToken'] or $_GET['pageToken'] variable is provided and if it's valid.
- getTemplateFile() : ExistingFile
- Searches the GXModules directory and admin/html directory for a template file, wich can be useed inside the AdminLayoutHttpControllerResponse object for the template parameter.
- isValidJson() : bool
- isValidRequestMethod() : bool
- prepareJsonInput() : array<string|int, mixed>
Properties
$assets
protected
AssetCollectionInterface
$assets
$contentView
protected
ContentViewInterface
$contentView
$excludeOrderStatusIds
protected
array<string|int, mixed>
$excludeOrderStatusIds
= [99]
$httpContextReader
protected
HttpContextReaderInterface
$httpContextReader
$httpResponseProcessor
protected
HttpResponseProcessorInterface
$httpResponseProcessor
$postDataArray
protected
array<string|int, mixed>
$postDataArray
$queryParametersArray
protected
array<string|int, mixed>
$queryParametersArray
$serverDataArray
protected
array<string|int, mixed>
$serverDataArray
$statisticsService
protected
StatisticsService
$statisticsService
Methods
__construct()
public
__construct(HttpContextReaderInterface $httpContextReader, HttpResponseProcessorInterface $httpResponseProcessor, ContentViewInterface $defaultContentView) : mixed
Parameters
- $httpContextReader : HttpContextReaderInterface
- $httpResponseProcessor : HttpResponseProcessorInterface
- $defaultContentView : ContentViewInterface
Return values
mixed —actionDefault()
Default action method.
public
actionDefault() : HttpControllerResponseInterface
Every controller child class requires at least the default action method, which is invoked when the ::_getQueryParameterData('do') value is not separated by a trailing slash.
Every action method have to return an instance which implements the http controller response interface.
Return values
HttpControllerResponseInterface —actionGetAverageOrderValue()
Returns the average order value in the given timespan
public
actionGetAverageOrderValue() : JsonHttpControllerResponse
Return values
JsonHttpControllerResponse —actionGetConversionRate()
Returns the conversion rate in the given timespan
public
actionGetConversionRate() : JsonHttpControllerResponse
Return values
JsonHttpControllerResponse —actionGetLatestOrders()
Returns the latest orders.
public
actionGetLatestOrders() : mixed
Return values
mixed —actionGetNewCustomers()
Returns the amount of Visitors in the given timespan
public
actionGetNewCustomers() : JsonHttpControllerResponse
Return values
JsonHttpControllerResponse —actionGetNewCustomerStatisticsData()
Returns new customer data for the dashboard statistic.
public
actionGetNewCustomerStatisticsData() : JsonHttpControllerResponse
Return values
JsonHttpControllerResponse —actionGetOrdersCount()
Returns the count of orders in the given timespan
public
actionGetOrdersCount() : JsonHttpControllerResponse
Return values
JsonHttpControllerResponse —actionGetOrderStatisticsData()
Returns order data for the dashboard statistic.
public
actionGetOrderStatisticsData() : JsonHttpControllerResponse
Return values
JsonHttpControllerResponse —actionGetSales()
Returns the sales rate in the given timespan
public
actionGetSales() : JsonHttpControllerResponse
Return values
JsonHttpControllerResponse —actionGetSalesStatisticsData()
Returns sales data for the dashboard statistic.
public
actionGetSalesStatisticsData() : JsonHttpControllerResponse
Return values
JsonHttpControllerResponse —actionGetStatisticBoxes()
public
actionGetStatisticBoxes() : mixed
Return values
mixed —actionGetUsersOnline()
Returns the amount of users who are currently online
public
actionGetUsersOnline() : JsonHttpControllerResponse
Return values
JsonHttpControllerResponse —actionGetVisitors()
Gets the amount of Visitors in the given timespan
public
actionGetVisitors() : JsonHttpControllerResponse
Return values
JsonHttpControllerResponse —actionGetVisitorsStatisticsData()
Returns visitor data for the dashboard statistic.
public
actionGetVisitorsStatisticsData() : JsonHttpControllerResponse
Return values
JsonHttpControllerResponse —init()
Initialize Controller
public
init() : mixed
Return values
mixed —proceed()
Processes a http response object which is get by invoking an action method.
public
proceed(HttpContextInterface $httpContext) : mixed
The action method is determined by the http context reader instance and the current request context. Re-implement this method in child classes to enable XSS and CSRF protection on demand.
Parameters
- $httpContext : HttpContextInterface
-
Http context object which hold the request variables.
Tags
Return values
mixed —validateCurrentAdminStatus()
Makes sure that the admin status is currently given in session
public
validateCurrentAdminStatus() : mixed
Tags
Return values
mixed —_callActionMethod()
Invokes an action method by the given action name.
protected
_callActionMethod(string $actionName) : HttpControllerResponseInterface
Parameters
- $actionName : string
-
Name of action method to call, without 'action'-Suffix.
Tags
Return values
HttpControllerResponseInterface —Response message.
_getConversionRate()
Get conversion rate statistics.
protected
_getConversionRate(string $interval) : array<string|int, mixed>
Parameters
- $interval : string
Return values
array<string|int, mixed> —_getOrdersCount()
Get orders count statistics.
protected
_getOrdersCount(string $interval) : array<string|int, mixed>
Parameters
- $interval : string
Return values
array<string|int, mixed> —_getPostData()
Returns the expected $_POST value by the given key name.
protected
_getPostData(string $keyName) : string|null
This method is the object oriented layer for $_POST[$keyName].
Parameters
- $keyName : string
-
Expected key of post parameter.
Return values
string|null —Either the expected value or null, of not found.
_getPostDataCollection()
Creates and returns a key value collection which represent the global $_POST array.
protected
_getPostDataCollection() : KeyValueCollection
Return values
KeyValueCollection —_getQueryParameter()
Returns the expected $_GET value by the given key name.
protected
_getQueryParameter(string $keyName) : mixed|null
This method is the object oriented layer for $_GET[$keyName].
Parameters
- $keyName : string
-
Expected key of query parameter.
Return values
mixed|null —Either the expected value or null, of not found.
_getQueryParametersCollection()
Creates and returns a key value collection which represent the global $_GET array.
protected
_getQueryParametersCollection() : KeyValueCollection
Return values
KeyValueCollection —_getSales()
protected
_getSales(mixed $interval) : mixed
Parameters
- $interval : mixed
Return values
mixed —_getSalesStatisticsData()
protected
_getSalesStatisticsData(mixed $interval) : mixed
Parameters
- $interval : mixed
Return values
mixed —_getServerData()
Returns the expected $_SERVER value by the given key name.
protected
_getServerData(string $keyName) : string|null
This method is the object oriented layer for $_SERVER[$keyName].
Parameters
- $keyName : string
-
Expected key of server parameter.
Return values
string|null —Either the expected value or null, of not found.
_getUsersOnline()
Get online user statistics.
protected
_getUsersOnline() : array<string|int, mixed>
Return values
array<string|int, mixed> —_getVisitors()
Get visitors count statistics.
protected
_getVisitors(string $interval) : array<string|int, mixed>
Parameters
- $interval : string
Return values
array<string|int, mixed> —_render()
Renders and returns a template file.
protected
_render(string $templateFile, array<string|int, mixed> $contentArray) : string
Parameters
- $templateFile : string
-
Template file to render.
- $contentArray : array<string|int, mixed>
-
Content array which represent the variables of the template.
Return values
string —Rendered template.
_validatePageToken()
Check if the $_POST['pageToken'] or $_GET['pageToken'] variable is provided and if it's valid.
protected
_validatePageToken([string $customExceptionMessage = null ]) : mixed
Example: public function proceed(HttpContextInterface $httpContext) { parent::proceed($httpContext); // proceed http context from parent class if($_SERVER['REQUEST_METHOD'] === 'POST') { $this->_validatePageToken(); // CSRF Protection } }
Parameters
- $customExceptionMessage : string = null
-
(optional) You can specify a custom exception message.
Tags
Return values
mixed —getTemplateFile()
Searches the GXModules directory and admin/html directory for a template file, wich can be useed inside the AdminLayoutHttpControllerResponse object for the template parameter.
protected
getTemplateFile(string $templateFile) : ExistingFile
Parameters
- $templateFile : string
-
The relative path and filename to search for
Tags
Return values
ExistingFile —containing absolute file path to the given template file
isValidJson()
protected
isValidJson(string $string) : bool
Parameters
- $string : string
Return values
bool —isValidRequestMethod()
protected
isValidRequestMethod(string $method) : bool
Parameters
- $method : string
Return values
bool —prepareJsonInput()
protected
prepareJsonInput(string $json) : array<string|int, mixed>
Parameters
- $json : string