* @link http://www.oxidmodule.com */ namespace D3\PdfDocuments\Application\Model\AbstractClasses; use D3\PdfDocuments\Application\Model\Interfaces\pdfdocuments_order_interface as orderInterface; use \OxidEsales\Eshop\Application\Model\Order; use OxidEsales\Eshop\Application\Model\Payment; use OxidEsales\Eshop\Application\Model\User; abstract class pdfDocuments_order extends pdfDocuments_generic implements orderInterface { /** @var Order */ public $oOrder; /** * @param Order $order */ public function setOrder(Order $order) { $this->oOrder = $order; } /** * @return Order */ public function getOrder() { return $this->oOrder; } public function setSmartyVars() { parent::setSmartyVars(); $this->oSmarty->assign('order', $this->getOrder()); $oUser = oxNew(User::Class); $oUser->load($this->getOrder()->getFieldData('oxuserid')); $this->oSmarty->assign('user', $oUser); $oPayment = oxNew(Payment::class); $oPayment->load($this->getOrder()->getFieldData('oxpaymenttype')); $this->oSmarty->assign('payment', $oPayment); } /** * @param string $sFilename * * @return string */ public function getFilename($sFilename) { $sFilename = parent::getFilename( $sFilename); $ordernr = $this->getOrder()->getFieldData('oxordernr'); $billnr = $this->getOrder()->getFieldData('oxbillnr');; return str_replace($ordernr, $billnr, $sFilename); } }