Start Repo
This commit is contained in:
58
src/Modules/Application/Controller/Admin/OrderOverview.php
Normal file
58
src/Modules/Application/Controller/Admin/OrderOverview.php
Normal file
@ -0,0 +1,58 @@
|
||||
<?php
|
||||
|
||||
namespace D3\XRechnung\Modules\Application\Controller\Admin;
|
||||
|
||||
use OxidEsales\Eshop\Core\Registry;
|
||||
|
||||
class OrderOverview extends OrderOverview_parent
|
||||
{
|
||||
public function createXRechnung()
|
||||
{
|
||||
$soxId = $this->getEditObjectId();
|
||||
if ($soxId != "-1" && isset($soxId)) {
|
||||
// load object
|
||||
$oOrder = oxNew(\OxidEsales\Eshop\Application\Model\Order::class);
|
||||
if ($oOrder->load($soxId)) {
|
||||
$oConfig = $this->getConfig();
|
||||
$aParams = $oConfig->getRequestParameter("editval");
|
||||
|
||||
if($aParams["oxorder__d3leitwegid"])
|
||||
{
|
||||
$oOrder->assign(
|
||||
array('d3leitwegid' => $aParams["oxorder__d3leitwegid"])
|
||||
);
|
||||
$oOrder->save();
|
||||
}
|
||||
|
||||
$oUtils = \OxidEsales\Eshop\Core\Registry::getUtils();
|
||||
$sTrimmedBillName = trim($oOrder->oxorder__oxbilllname->getRawValue());
|
||||
if(!$sTrimmedBillName) {
|
||||
return FALSE;
|
||||
}
|
||||
else {
|
||||
$strx=array('#[^a-zA-Z0-9<><39><EFBFBD><EFBFBD>\040]#','# +#','#<23>#','#<23>#','#<23>#','#<23>#');
|
||||
$stry=array(' ',' ','ae','oe','ue','ss');
|
||||
$sTrimmedBillName=preg_replace($strx,$stry,$sTrimmedBillName);
|
||||
$sTrimmedBillName=trim($sTrimmedBillName);
|
||||
$sTrimmedBillName=strtolower($sTrimmedBillName);
|
||||
}
|
||||
$sFilename = $oOrder->oxorder__oxordernr->value . "_" . $sTrimmedBillName . ".xml";
|
||||
$sFilename = $this->makeValidFileName($sFilename);
|
||||
ob_start();
|
||||
$oOrder->genXRechnung($sFilename, \OxidEsales\Eshop\Core\Registry::getConfig()->getRequestParameter("xmllanguage"), false);
|
||||
|
||||
$myConfig = Registry::getConfig();
|
||||
|
||||
echo file_get_contents($myConfig->getConfigParam('sShopDir')."/export/xml/".$sFilename);
|
||||
$sXML = ob_get_contents();
|
||||
ob_end_clean();
|
||||
$oUtils->setHeader("Pragma: public");
|
||||
$oUtils->setHeader("Cache-Control: must-revalidate, post-check=0, pre-check=0");
|
||||
$oUtils->setHeader("Expires: 0");
|
||||
$oUtils->setHeader("Content-type: application/xml");
|
||||
$oUtils->setHeader("Content-Disposition: attachment; filename=" . $sFilename);
|
||||
\OxidEsales\Eshop\Core\Registry::getUtils()->showMessageAndExit($sXML);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user