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 |
|
---|
string
Name of action method to call, without 'action'-Suffix.
\HttpControllerResponseInterface
Response message.
_enforceLengthLimits(string $carrier, array $toArray) : array
Currently returns $toArray unchanged. Future operation tbd.
string
array
delivery address
array
_getPostData(string $keyName) : string|null
This method is the object oriented layer for $_POST[$keyName].
string
Expected key of post parameter.
string|null
Either 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].
string
Expected key of query parameter.
mixed|null
Either 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].
string
Expected key of server parameter.
string|null
Either the expected value or null, of not found.
_getShippingWeight( $orders_id)
_prepareSingleFormDataForShipmentRequest(array $postDataArray, boolean $anon_from = false, string $language_code = null) : \KeyValueCollection
array
boolean
used for shipment quote requests
string
ISO2 language code used for advance notices (e.g. DPD Predict)
\KeyValueCollection
_render(string $templateFile, array $contentArray) : string
string
Template file to render.
array
Content array which represent the variables of the template.
string
Rendered 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 |
---|
integer
the order's id
double
getOrderLanguageCode(integer $orders_id) : string
integer
string
ISO2 language code
getTemplateFile(string $templateFile) : \ExistingFile
Throws |
|
---|
string
The relative path and filename to search for
\ExistingFile
containing 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 | \HttpResponseProcessorInterface::proceed \HttpContextReaderInterface::getActionName |
---|---|
Throws |
|
shortenString(string $subject, integer $maxLength) : string
string
string to be shortened
integer
maximum length
string
shortened string
splitStreet( $street_address) : array
array
with 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