phpDocumentor

TwoFactorAuthController extends HttpViewController
in package

Class representing a two-factor-authorization front-end controller

Table of Contents

$assets  : AssetCollectionInterface
$contentView  : ContentViewInterface
$customerId  : IdType
Customer ID
$customerServiceFactory  : CustomerServiceFactory
Customer service factory
$httpContextReader  : HttpContextReaderInterface
$httpResponseProcessor  : HttpResponseProcessorInterface
$languageTextManager  : LanguageTextManager
Language text manager
$messageStack  : messageStack_ORIGIN
Reference to the message stack
$postDataArray  : array<string|int, mixed>
$queryParametersArray  : array<string|int, mixed>
$serverDataArray  : array<string|int, mixed>
$twoFactorAuthServiceFactory  : TwoFactorAuthServiceFactory
Two-factor-authentication service factory
__construct()  : mixed
actionConfigure()  : RedirectHttpControllerResponse|HttpControllerResponse
Return the configuration view if customer is not using 2FA Otherwise a redirection to the edit view is returned
actionDeactivate()  : mixed
Deactivate the two-factor-authentication for the current customer
actionDefault()  : RedirectHttpControllerResponse
Redirect either to the edit view or to the configuration view
actionEdit()  : RedirectHttpControllerResponse|HttpControllerResponse
Return the edit view if customer is using 2FA Otherwise a redirection to the configuration view is returned
init()  : mixed
Initialize
proceed()  : mixed
Processes a http response object which is get by invoking an action method.
_callActionMethod()  : HttpControllerResponseInterface
Invokes an action method by the given action name.
_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.
_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.
isUsing2fa()  : bool
Return whether the customer is using 2FA
responseByTemplateAndData()  : HttpControllerResponse|RedirectHttpControllerResponse
Return a response by the provided template and view data
responseForConfigurationStep()  : HttpControllerResponse|RedirectHttpControllerResponse
Return response for the provided step after processing the data
templateDataForConfigurationStep()  : KeyValueCollection
Return template data for the provided step

Properties

Methods

actionDeactivate()

Deactivate the two-factor-authentication for the current customer

public actionDeactivate() : mixed
Return values
mixed

init()

Initialize

public init() : mixed
Tags
throws
BadMethodCallException

Module not installed or not logged in

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

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

see
HttpContextReaderInterface::getActionName
see
HttpResponseProcessorInterface::proceed
Return values
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.

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

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

If the validation fails.

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

if the path or file is not found

Return values
ExistingFile

containing absolute file path to the given template file

isUsing2fa()

Return whether the customer is using 2FA

protected isUsing2fa() : bool
Return values
bool

Customer 2FA usage status

responseByTemplateAndData()

Return a response by the provided template and view data

protected responseByTemplateAndData(NonEmptyStringType $template[, KeyValueCollection|null $data = null ]) : HttpControllerResponse|RedirectHttpControllerResponse
Parameters
$template : NonEmptyStringType

Template file name residing in 'GXModules/Gambio/TwoFactorAuth/Shop/Html'

$data : KeyValueCollection|null = null

View data

Return values
HttpControllerResponse|RedirectHttpControllerResponse

Response

responseForConfigurationStep()

Return response for the provided step after processing the data

protected responseForConfigurationStep(ConfigurationStep $step, NonEmptyStringType $template[, KeyValueCollection|null $data = null ]) : HttpControllerResponse|RedirectHttpControllerResponse
Parameters
$step : ConfigurationStep

Current step

$template : NonEmptyStringType

Template

$data : KeyValueCollection|null = null

Data

Return values
HttpControllerResponse|RedirectHttpControllerResponse

Response

Search results