class ConfirmationMiddleware implements HTTPMiddleware (View source)

Checks whether user manual confirmation is required for HTTPRequest depending on the rules given.

How it works:

  • Gives the request to every single rule
  • If no confirmation items are found by the rules, then move on to the next middleware
  • initialize the Confirmation\Storage with all the confirmation items found
  • Check whether the storage has them confirmed already and if yes, move on to the next middleware
  • Otherwise redirect to the confirmation URL

Methods

__construct(Rule[] ...$rules)

Init the middleware with the rules

$this
setDeclineUrl(string $url)

Override the default decline url

bool
canBypass(HTTPRequest $request)

Check whether the rules can be bypassed without user confirmation

Item[]
getConfirmationItems(HTTPRequest $request)

Extract the confirmation items from the request and return

process(HTTPRequest $request, callable $delegate)

Generate response for the given request

$this
setConfirmationStorageId(string $id)

Override the confirmation storage ID

$this
setConfirmationFormUrl(string $url)

Override the confirmation form url

$this
setBypasses(Bypass[] $bypasses)

Set the list of bypasses for the confirmation

Details

__construct(Rule[] ...$rules)

Init the middleware with the rules

Parameters

Rule[] ...$rules

Rules to check requests against

$this setDeclineUrl(string $url)

Override the default decline url

Parameters

string $url

Return Value

$this

bool canBypass(HTTPRequest $request)

Check whether the rules can be bypassed without user confirmation

Parameters

HTTPRequest $request

Return Value

bool

Item[] getConfirmationItems(HTTPRequest $request)

Extract the confirmation items from the request and return

Parameters

HTTPRequest $request

Return Value

Item[]

list of confirmation items

HTTPResponse process(HTTPRequest $request, callable $delegate)

Generate response for the given request

Parameters

HTTPRequest $request
callable $delegate

Return Value

HTTPResponse

$this setConfirmationStorageId(string $id)

Override the confirmation storage ID

Parameters

string $id

Return Value

$this

$this setConfirmationFormUrl(string $url)

Override the confirmation form url

Parameters

string $url

Return Value

$this

$this setBypasses(Bypass[] $bypasses)

Set the list of bypasses for the confirmation

Parameters

Bypass[] $bypasses

Return Value

$this