| Server IP : 85.158.181.41 / Your IP : 216.73.217.7 Web Server : Apache System : Linux cloud9-vm129 6.1.178+1-ph #ph SMP PREEMPT_DYNAMIC Wed Jul 29 09:00:54 UTC 2026 x86_64 User : moncbefd ( 1024) PHP Version : 7.3.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/moncbefd/www.moneta.at/ext/payone/php/Payone/ClientApi/Service/ |
Upload File : |
<?php
/**
*
* NOTICE OF LICENSE
*
* This source file is subject to the GNU General Public License (GPL 2)
* that is bundled with this package in the file LICENSE.txt
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade Payone to newer
* versions in the future. If you wish to customize Payone for your
* needs please refer to http://www.payone.de for more information.
*
* @category Payone
* @package Payone_ClientApi
* @subpackage Service
* @copyright Copyright (c) 2012 <info@noovias.com> - www.noovias.com
* @author Matthias Walter <info@noovias.com>
* @license <http://www.gnu.org/licenses/> GNU General Public License (GPL 2)
* @link http://www.noovias.com
*/
/**
*
* @category Payone
* @package Payone_ClientApi
* @subpackage Service
* @copyright Copyright (c) 2012 <info@noovias.com> - www.noovias.com
* @license <http://www.gnu.org/licenses/> GNU General Public License (GPL 2)
* @link http://www.noovias.com
*/
class Payone_ClientApi_Service_GenerateHash
{
protected $hashParameters = array(
'mid',
'amount',
'productid',
'aid',
'currency',
'accessname',
'portalid',
'due_time',
'accesscode',
'mode',
'storecarddata',
'access_expiretime',
'request',
'checktype',
'access_canceltime',
'responsetype',
'addresschecktype',
'access_starttime',
'reference',
'consumerscoretype',
'access_period',
'userid',
'invoiceid',
'access_aboperiod',
'customerid',
'invoiceappendix',
'access_price',
'param',
'invoice_deliverymode',
'access_aboprice',
'narrative_text',
'eci',
'access_vat',
'successurl',
'settleperiod',
'errorurl',
'settletime',
'backurl',
'vaccountname',
'exiturl',
'vreference',
'clearingtype',
'encoding',
// @todo Item parameters not supported
// 'id[x]', 'pr[x]', 'no[x]', 'de[x]', 'ti[x]', 'va[x]',
// 'id', 'pr', 'no', 'de', 'ti', 'va',
);
/**
* @param Payone_ClientApi_Request_Interface $request All parameters of the request
* @param string $securityKey Payone security key
*
* @return string The hash
* @throws Payone_ClientApi_Exception_InvalidParameters
*/
public function generate(Payone_ClientApi_Request_Interface $request, $securityKey)
{
$requestData = $request->toArray();
sort($this->hashParameters);
$hashString = '';
foreach ($this->hashParameters as $key) {
if (!array_key_exists($key, $requestData)) {
continue;
}
$hashString .= $requestData[$key];
}
$hashString .= $securityKey;
$hash = md5($hashString);
return $hash;
}
}