Class ShipcloudController
This class contains some helper methods for handling view requests. Be careful always when outputting raw user data to HTML or when handling POST requests because insufficient protection will lead to XSS and CSRF vulnerabilities.
| package |
HttpViewControllers |
|---|
__construct(\HttpContextReaderInterface $httpContextReader, \HttpResponseProcessorInterface $httpResponseProcessor, \ContentViewInterface $defaultContentView)
\HttpContextReaderInterface
\HttpResponseProcessorInterface
\ContentViewInterface
_callActionMethod(string $actionName) : \HttpControllerResponseInterface
| Throws |
|
|---|
stringName of action method to call, without 'action'-Suffix.
\HttpControllerResponseInterfaceResponse message.
_enforceLengthLimits(string $carrier, array $toArray) : array
Currently returns $toArray unchanged. Future operation tbd.
string
arraydelivery address
array
_getPostData(string $keyName) : string|null
This method is the object oriented layer for $_POST[$keyName].
stringExpected key of post parameter.
string|nullEither the expected value or null, of not found.
_getPostDataCollection() : \KeyValueCollection
_getQueryParameter(string $keyName) : mixed|null
This method is the object oriented layer for $_GET[$keyName].
stringExpected key of query parameter.
mixed|nullEither the expected value or null, of not found.
_getQueryParametersCollection() : \KeyValueCollection
_getServerData(string $keyName) : string|null
This method is the object oriented layer for $_SERVER[$keyName].
stringExpected key of server parameter.
string|nullEither the expected value or null, of not found.
_getShippingWeight( $orders_id)
_prepareSingleFormDataForShipmentRequest(array $postDataArray, boolean $anon_from = false, string $language_code = null) : \KeyValueCollection
array
booleanused for shipment quote requests
stringISO2 language code used for advance notices (e.g. DPD Predict)
\KeyValueCollection
_render(string $templateFile, array $contentArray) : string
stringTemplate file to render.
arrayContent array which represent the variables of the template.
stringRendered template.
_validatePageToken(string $customExceptionMessage = null)
Example: public function proceed(HttpContextInterface $httpContext) { parent::proceed($httpContext); // proceed http context from parent class if($_SERVER['REQUEST_METHOD'] === 'POST') { $this->_validatePageToken(); // CSRF Protection } }
| Throws |
|
|---|
string(optional) You can specify a custom exception message.
actionCreateLabelForm() : \HttpControllerResponse
actionCreateLabelFormSubmit() : \JsonHttpControllerResponse
actionCreateMultiLabelForm() : \HttpControllerResponse
actionCreateMultiLabelFormSubmit() : \JsonHttpControllerResponse
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.
\HttpControllerResponseInterface
actionDeleteShipment()
actionGetMultiShipmentQuote() : \JsonHttpControllerResponse
actionGetShipmentQuote() : \JsonHttpControllerResponse
actionLoadLabelList() : \HttpControllerResponse
actionLoadMultiLabelList() : \HttpControllerResponse
actionPickupShipments() : \JsonHttpControllerResponse
actionUnconfiguredNote() : \HttpControllerResponse
getDeclaredValue(integer $orders_id) : double
| todo |
get this data from OrderService |
|---|
integerthe order's id
double
getOrderLanguageCode(integer $orders_id) : string
integer
stringISO2 language code
getTemplateFile(string $templateFile) : \ExistingFile
| Throws |
|
|---|
stringThe relative path and filename to search for
\ExistingFilecontaining absolute file path to the given template file
getTransportConditions( $orderId)
isConfigured()
makeProductName( $product)
proceed(\HttpContextInterface $httpContext)
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.
| see | \HttpContextReaderInterface::getActionName \HttpResponseProcessorInterface::proceed |
|---|---|
| Throws |
|
shortenString(string $subject, integer $maxLength) : string
stringstring to be shortened
integermaximum length
stringshortened string
splitStreet( $street_address) : array
arraywith keys 'street' and 'house_no'
validateCurrentAdminStatus()
| Throws |
|
|---|
MAX_DESCRIPTION_LENGTH
db : \CI_DB_query_builder
| var |
|---|
\CI_DB_query_builder
shipcloudText : \ShipcloudText
| var |
|---|
\ShipcloudText
shipcloudConfigurationStorage : \ShipcloudConfigurationStorage
| var |
|---|
\ShipcloudConfigurationStorage
shipcloudLogger : \ShipcloudLogger
| var |
|---|
\ShipcloudLogger
httpContextReader : \HttpContextReaderInterface
httpResponseProcessor : \HttpResponseProcessorInterface
queryParametersArray : array
| var |
|---|
array
postDataArray : array
| var |
|---|
array
assets : \AssetCollectionInterface
serverDataArray : array
| var |
Server data. |
|---|
array