first commit
This commit is contained in:
@@ -0,0 +1,127 @@
|
||||
<?php
|
||||
|
||||
class stEserviceBackendActions extends stActions
|
||||
{
|
||||
|
||||
public function initializeParameters()
|
||||
{
|
||||
$this->config = stConfig::getInstance('stEserviceBackend');
|
||||
|
||||
$this->labels = $this->getLabels();
|
||||
}
|
||||
|
||||
public function executeIndex()
|
||||
{
|
||||
$this->initializeParameters();
|
||||
|
||||
if ($this->getRequest()->getMethod() == sfRequest::POST)
|
||||
{
|
||||
$this->config->setFromRequest('config');
|
||||
$this->config->save();
|
||||
|
||||
$modules = PaymentTypePeer::doSelectByModuleName('stEservice');
|
||||
|
||||
if (!$modules)
|
||||
{
|
||||
$modules = PaymentTypePeer::doSelectByModuleName('stEservice2');
|
||||
}
|
||||
|
||||
/**
|
||||
* @var PaymentType $module
|
||||
*/
|
||||
foreach ($modules as $module)
|
||||
{
|
||||
$module->setModuleName('stEservice');
|
||||
$module->setIsActive($this->config->get('enabled'));
|
||||
$module->save();
|
||||
}
|
||||
|
||||
if ($this->config->get('enabled'))
|
||||
{
|
||||
$config = stConfig::getInstance('stEservice2Backend');
|
||||
$config->set('enabled', false);
|
||||
$config->save();
|
||||
}
|
||||
|
||||
$this->setFlash('notice', $this->getContext()->getI18n()->__('Twoje zmiany zostały zapisane', null, 'stAdminGeneratorPlugin'));
|
||||
}
|
||||
$this->labels = $this->getLabels();
|
||||
}
|
||||
|
||||
|
||||
|
||||
public function validateIndex()
|
||||
{
|
||||
if ($this->getRequest()->getMethod() == sfRequest::POST)
|
||||
{
|
||||
$i18n = $this->getContext()->getI18N();
|
||||
|
||||
stAuthUsersListener::checkModificationCredentials($this, $this->getRequest(), $this->getModuleName());
|
||||
|
||||
$data = $this->getRequestParameter('config');
|
||||
|
||||
if (isset($data['enabled']))
|
||||
{
|
||||
$postParameters = array(
|
||||
'ClientId' => $data['client_id'],
|
||||
'Password' => $data['password'],
|
||||
'OrderId' => uniqid(),
|
||||
'Total' => 500,
|
||||
'Currency' => 'PLN',
|
||||
);
|
||||
|
||||
$ch = curl_init();
|
||||
curl_setopt($ch, CURLOPT_URL, isset($data['test']) ? stEservice::TOKEN_URL_TEST : stEservice::TOKEN_URL_PROD);
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postParameters, '', '&'));
|
||||
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
|
||||
$response = curl_exec($ch);
|
||||
|
||||
if ($response)
|
||||
{
|
||||
parse_str($response, $result);
|
||||
|
||||
if (strtolower($result['status']) != 'ok')
|
||||
{
|
||||
if ($result['msg'] == 'merchant-invalid')
|
||||
{
|
||||
$this->getRequest()->setError('{eService}', $i18n->__('Podane dane są nieprawidłowe'));
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->getRequest()->setError('{eService}', $i18n->__('Wystąpił problem podczas próby weryfikacji danych (zwrócony błąd: "%msg%")', array('%msg%' => $result['msg'])));
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->getRequest()->setError('{eService}', $i18n->__('Wystąpił nieznany problem podczas weryfikacji danych'));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return !$this->getRequest()->hasErrors();
|
||||
}
|
||||
|
||||
/*public function handleErrorIndex()
|
||||
{
|
||||
$this->initializeParameters();
|
||||
return sfView::SUCCESS;
|
||||
}*/
|
||||
|
||||
public function handleErrorIndex()
|
||||
{
|
||||
|
||||
$this->initializeParameters();
|
||||
$this->config = stConfig::getInstance('stEserviceBackend');
|
||||
return sfView::SUCCESS;
|
||||
}
|
||||
|
||||
protected function getLabels()
|
||||
{
|
||||
$i18n = $this->getContext()->getI18N();
|
||||
|
||||
return array('config{client_id}' => $i18n->__('Numer sprzedawcy'),'config{password}' => $i18n->__('Hasło sprzedawcy'),'config{store_key}' => $i18n->__('Klucz sklepu'),'{eService}' => 'eService');
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user