phpDocumentor

SharedShoppingCartController extends HttpViewController
in package

Class SharedShoppingCartController

Tags
category

System

Table of Contents

$assets  : AssetCollectionInterface
$contentView  : ContentViewInterface
$httpContextReader  : HttpContextReaderInterface
$httpResponseProcessor  : HttpResponseProcessorInterface
$postDataArray  : array<string|int, mixed>
$queryParametersArray  : array<string|int, mixed>
$serverDataArray  : array<string|int, mixed>
__construct()  : mixed
actionDefault()  : JsonHttpControllerResponse
Adds products of a shared shopping cart to the current shopping cart of the customer .
actionStoreShoppingCart()  : JsonHttpControllerResponse
Stores the current shopping cart content and creates a hash to address the shopping cart.
proceed()  : mixed
Processes a http response object which is get by invoking an action method.
_addProductToCart()  : mixed
Adds a product from given product information to the current shopping cart.
_callActionMethod()  : HttpControllerResponseInterface
Invokes an action method by the given action name.
_getCart()  : array<string|int, mixed>
Extracts product information from the current shopping cart.
_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.
_getSharedCart()  : array<string|int, mixed>|mixed
Gathers shopping cart information from a stored cart in JSON format.
_render()  : string
Renders and returns a template file.
_storeShoppingCart()  : string
Stores the given product information as a shopping cart.
_validatePageToken()  : mixed
Check if the $_POST['pageToken'] or $_GET['pageToken'] variable is provided and if it's valid.
customerCanPurchaseProduct()  : bool
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.

Properties

Methods

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
throws
LogicException

When no action method is found by the http context reader.

see
HttpContextReaderInterface::getActionName
see
HttpResponseProcessorInterface::proceed
Return values
mixed

_addProductToCart()

Adds a product from given product information to the current shopping cart.

protected _addProductToCart(PropertiesControl $propertiesControl, stdClass $product) : mixed
Parameters
$propertiesControl : PropertiesControl

An instance of the PropertiesControl

$product : stdClass

Cart product information

Return values
mixed

_getCart()

Extracts product information from the current shopping cart.

protected _getCart() : array<string|int, mixed>

The returned array is structured as follows: array( productId => , quantity => , [combiId => ], [attributes => array( attributeId => , attributeValueId => )] )

Return values
array<string|int, mixed>

Am array of product information

_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.

_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.

_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.

_getSharedCart()

Gathers shopping cart information from a stored cart in JSON format.

protected _getSharedCart() : array<string|int, mixed>|mixed
Return values
array<string|int, mixed>|mixed

The fetched cart information

_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.

_storeShoppingCart()

Stores the given product information as a shopping cart.

protected _storeShoppingCart(array<string|int, mixed> $products) : string

The expected array parameter has to be structured as follows: array( productId => , quantity => , [combiId => ], [attributes => array( attributeId => , attributeValueId => )] )

Parameters
$products : array<string|int, mixed>

The product information to store

Return values
string

The hash of the stored shopping cart

_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
throws
Exception

If the validation fails.

Return values
mixed

customerCanPurchaseProduct()

protected customerCanPurchaseProduct(int $productId) : bool
Parameters
$productId : int
Return values
bool

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
throws
Exception

if the path or file is not found

Return values
ExistingFile

containing absolute file path to the given template file

Search results