Esempio n. 1
0
 /**
  * returns config according to submitted payment id
  * returns global config if no payment id is submitted
  *
  * @param string $paymentId
  * @param bool $forceReload
  * @param bool $asArray
  * @return array 
  */
 public function getPayoneConfig($paymentId = 0, $forceReload = false, $asArray = true)
 {
     if (is_null($paymentId)) {
         $paymentId = 0;
     }
     if (!empty($this->payoneConfig[$paymentId]) && !$forceReload) {
         return $this->payoneConfig[$paymentId];
     }
     $repository = Shopware()->Models()->getRepository('Shopware\\CustomModels\\MoptPayoneConfig\\MoptPayoneConfig');
     $data = $repository->getConfigByPaymentId($paymentId, $asArray);
     if ($data === NULL) {
         $data = new Shopware\CustomModels\MoptPayoneConfig\MoptPayoneConfig();
         $data->setPaymentId($paymentId);
     }
     return $this->payoneConfig[$paymentId] = $data;
 }
 /**
  * saves submitted payment config or calls deleteConfigAction if reset is requested
  *
  * @return mixed 
  */
 public function saveConfigAction()
 {
     $data = $this->Request()->getParams();
     if (isset($data['type']) && $data['type'] == 'reset' && $data['paymentId'] != 0) {
         return $this->deleteConfigAction($data);
     }
     $data = $this->validateFormData($data);
     $config = Shopware()->Plugins()->Frontend()->MoptPaymentPayone()->Application()->PayoneMain()->getInstance()->getPayoneConfig($data['paymentId'], true, false);
     if ($data['paymentId'] == $config->getPaymentId()) {
         $config->fromArray($data);
     } else {
         $config = new Shopware\CustomModels\MoptPayoneConfig\MoptPayoneConfig();
         $config->setData($data);
     }
     Shopware()->Models()->persist($config);
     Shopware()->Models()->flush();
     $message = Shopware()->Snippets()->getNamespace('backend/MoptPaymentPayone/messages')->get('successfulSaved', 'Erfolgreich gespeichert', true);
     $this->View()->assign(array('success' => true, 'data' => $message));
 }