Esempio n. 1
0
 /**
  * @return \XLite\Model\Payment\Method
  */
 protected function getTestMethod()
 {
     xdebug_stop_code_coverage(false);
     $method = new \XLite\Model\Payment\Method();
     $method->map($this->testMethod);
     $s = new \XLite\Model\Payment\MethodSetting();
     $s->setName('t1');
     $s->setValue('1');
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     $s = new \XLite\Model\Payment\MethodSetting();
     $s->setName('t2');
     $s->setValue('2');
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     \XLite\Core\Database::getEM()->persist($method);
     \XLite\Core\Database::getEM()->flush();
     $this->method = $method;
     xdebug_start_code_coverage(XDEBUG_CC_UNUSED | XDEBUG_CC_DEAD_CODE);
     return $method;
 }
Esempio n. 2
0
 /**
  * @return \XLite\Model\Payment\Method
  */
 protected function getTestMethod()
 {
     $method = parent::getTestMethod();
     $s = new \XLite\Model\Payment\MethodSetting();
     $s->setName('login');
     $s->setValue('test');
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     $s = new \XLite\Model\Payment\MethodSetting();
     $s->setName('prefix');
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     $s = new \XLite\Model\Payment\MethodSetting();
     $s->setName('hash');
     $s->setValue('123');
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     \XLite\Core\Database::getEM()->persist($method);
     \XLite\Core\Database::getEM()->flush();
     return $method;
 }
Esempio n. 3
0
 * @license   http://www.x-cart.com/license-agreement.html X-Cart 5 License Agreement
 * @link      http://www.x-cart.com/
 */
return function () {
    $method = \XLite\Core\Database::getRepo('XLite\\Model\\Payment\\Method')->findOneBy(array('service_name' => 'Stripe'));
    if ($method) {
        $isInTestMode = \XLite\View\FormField\Select\TestLiveMode::TEST === $method->getSetting('mode');
        $accessToken = $method->getSetting('accessToken');
        $publishKey = $method->getSetting('publishKey');
        $setting = new \XLite\Model\Payment\MethodSetting();
        $setting->setName('accessTokenTest');
        $setting->setValue($isInTestMode ? $accessToken : '');
        $setting->setPaymentMethod($method);
        $setting->persist();
        $method->addSettings($setting);
        $setting = new \XLite\Model\Payment\MethodSetting();
        $setting->setName('publishKeyTest');
        $setting->setValue($isInTestMode ? $publishKey : '');
        $setting->setPaymentMethod($method);
        $setting->persist();
        $method->addSettings($setting);
        if ($isInTestMode) {
            foreach ($method->getSettings() as $setting) {
                if (in_array($setting->getName(), array('accessToken', 'publishKey'))) {
                    $setting->setValue('');
                }
            }
        }
        \XLite\Core\Database::getEM()->flush();
    }
};
Esempio n. 4
0
 /**
  * @return \XLite\Model\Payment\Method
  */
 protected function getTestMethod()
 {
     $method = parent::getTestMethod();
     $s = new \XLite\Model\Payment\MethodSetting();
     $s->setName('account');
     $s->setValue('test');
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     $s = new \XLite\Model\Payment\MethodSetting();
     $s->setName('prefix');
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     $s = new \XLite\Model\Payment\MethodSetting();
     $s->setName('description');
     $s->setValue('123');
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     $s->setName('mode');
     $s->setValue('test');
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     $s->setName('address_override');
     $s->setValue('N');
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     \XLite\Core\Database::getEM()->persist($method);
     \XLite\Core\Database::getEM()->flush();
     return $method;
 }
Esempio n. 5
0
 /**
  * Set setting value by name
  *
  * @param string $name  Name
  * @param string $value Value
  *
  * @return boolean
  */
 public function setSetting($name, $value)
 {
     $result = false;
     // Update settings which is already stored in database
     foreach ($this->getSettings() as $setting) {
         if ($setting->getName() == $name) {
             $setting->setValue(strval($value));
             $result = true;
             break;
         }
     }
     if (!$result) {
         // Create setting which is not in database but specified in the processor class
         $processor = $this->getProcessor();
         if ($processor && method_exists($processor, 'getAvailableSettings')) {
             $availableSettings = $processor->getAvailableSettings();
             if (in_array($name, $availableSettings)) {
                 $setting = new \XLite\Model\Payment\MethodSetting();
                 $setting->setName($name);
                 $setting->setValue($value);
                 $setting->setPaymentMethod($this);
                 \XLite\Core\Database::getEM()->persist($setting);
             }
         }
     }
     return $result;
 }
Esempio n. 6
0
 /**
  * getTestMethod
  *
  * @return void
  * @see    ____func_see____
  * @since  1.0.22
  */
 protected function getTestMethod()
 {
     $method = parent::getTestMethod();
     $s = new \XLite\Model\Payment\MethodSetting();
     $s->setName('account');
     $s->setValue($this->testOptions['account']);
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     $s = new \XLite\Model\Payment\MethodSetting();
     $s->setName('secret');
     $s->setValue($this->testOptions['secret']);
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     $s = new \XLite\Model\Payment\MethodSetting();
     $s->setName('prefix');
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     $s = new \XLite\Model\Payment\MethodSetting();
     $s->setName('language');
     $s->setValue('en');
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     $s->setName('mode');
     $s->setValue('test');
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     $s->setName('currency');
     $s->setValue('USD');
     $method->addSettings($s);
     $s->setPaymentMethod($method);
     \XLite\Core\Database::getEM()->persist($method);
     \XLite\Core\Database::getEM()->flush();
     return $method;
 }