/** * copy all properties and create duplicate payment * * @param object $payment * @return boolean */ protected function moptDuplicatePayment($payment) { $duplicatedPayment = new \Shopware\Models\Payment\Payment(); $duplicatedPayment->setName($this->moptCreateUniquePaymentName($payment->getName())); $duplicatedPayment->setDescription($payment->getDescription()); $duplicatedPayment->setTemplate($payment->getTemplate()); $duplicatedPayment->setAdditionalDescription($payment->getAdditionalDescription()); $duplicatedPayment->setPosition(200); $duplicatedPayment->setActive(false); $duplicatedPayment->setAction($payment->getAction()); $duplicatedPayment->setPluginId($payment->getPluginId()); $duplicatedPayment->setSource(1); try { Shopware()->Models()->persist($duplicatedPayment); Shopware()->Models()->flush(); } catch (Exception $e) { return false; } return true; }