AdWordsCampaignsOverviewAjaxController
extends AdminHttpViewController
in package
Class AdWordsCampaignsOverviewAjaxController
AJAX controller for the adwords campaigns main page.
Tags
Table of Contents
- $adsCurl : AdWordsCurl
- $assets : AssetCollectionInterface
- $campaignData : array<string|int, mixed>
- $contentView : ContentViewInterface
- $httpContextReader : HttpContextReaderInterface
- $httpResponseProcessor : HttpResponseProcessorInterface
- $postDataArray : array<string|int, mixed>
- $queryParametersArray : array<string|int, mixed>
- $serverDataArray : array<string|int, mixed>
- $sortOrderMapping : array<string|int, mixed>
- __construct() : mixed
- actionDataTable() : mixed
- DataTable Instance Callback
- actionDefault() : HttpControllerResponseInterface
- Default action method.
- actionGetTotals() : JsonHttpControllerResponse
- Returns total data as a JSON response.
- actionUpdateDailyBudget() : mixed
- Update daily budget
- actionUpdateStatus() : mixed
- Changes the status of an campaign.
- 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.
- _formatNumber() : string
- Formats a number.
- _formatPrice() : string
- Formats a price.
- _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.
- _getServerData() : string|null
- Returns the expected $_SERVER value by the given key name.
- _getTableData() : array<string|int, mixed>
- Get the table data.
- _render() : string
- Renders and returns a template file.
- _setCampaignData() : mixed
- Load campaign data from dummy json file
- _sortTableData() : mixed
- Sort table data by REQUEST criteria
- _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
$adsCurl
protected
AdWordsCurl
$adsCurl
$assets
protected
AssetCollectionInterface
$assets
$campaignData
protected
array<string|int, mixed>
$campaignData
= []
$contentView
protected
ContentViewInterface
$contentView
$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
$sortOrderMapping
protected
array<string|int, mixed>
$sortOrderMapping
= ['0' => 'status', '1' => 'name', '2' => 'dailyBudget', '3' => 'clicks', '4' => 'impressions', '5' => 'clickThroughRate', '6' => 'costPerClick', '7' => 'costs']
Methods
__construct()
public
__construct(HttpContextReaderInterface $httpContextReader, HttpResponseProcessorInterface $httpResponseProcessor, ContentViewInterface $defaultContentView) : mixed
Parameters
- $httpContextReader : HttpContextReaderInterface
- $httpResponseProcessor : HttpResponseProcessorInterface
- $defaultContentView : ContentViewInterface
Return values
mixed —actionDataTable()
DataTable Instance Callback
public
actionDataTable() : mixed
Provides the data for the DataTables instance of the orders main view.
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 —actionGetTotals()
Returns total data as a JSON response.
public
actionGetTotals() : JsonHttpControllerResponse
Return values
JsonHttpControllerResponse —actionUpdateDailyBudget()
Update daily budget
public
actionUpdateDailyBudget() : mixed
Return values
mixed —actionUpdateStatus()
Changes the status of an campaign.
public
actionUpdateStatus() : mixed
Return values
mixed —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.
_formatNumber()
Formats a number.
protected
_formatNumber(float $number[, int $decimals = 2 ][, string $decPoint = ',' ][, string $thousandsSeparator = '.' ]) : string
Parameters
- $number : float
- $decimals : int = 2
- $decPoint : string = ','
- $thousandsSeparator : string = '.'
Return values
string —_formatPrice()
Formats a price.
protected
_formatPrice(float $number[, string $decPoint = ',' ][, string $thousandsSeparator = '.' ][, string $currency = '€' ]) : string
Parameters
- $number : float
- $decPoint : string = ','
- $thousandsSeparator : string = '.'
- $currency : string = '€'
Return values
string —_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 —_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.
_getTableData()
Get the table data.
protected
_getTableData() : array<string|int, mixed>
This method will generate the data of the datatable instance. It can be overloaded in order to contain extra data e.g. for a new column. The filtering of custom columns must be also done manually.
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.
_setCampaignData()
Load campaign data from dummy json file
protected
_setCampaignData() : mixed
Return values
mixed —_sortTableData()
Sort table data by REQUEST criteria
protected
_sortTableData(array<string|int, mixed> &$tableData) : mixed
Parameters
- $tableData : array<string|int, mixed>
Return values
mixed —_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