Source en fonction insertTotals facture pdf
Question
Comment vérifier quelle est la source $ (mémo facture ou crédit) en fonction insertTotals sur pdf factures / Creditmemo / expédition.
protected function insertTotals($page, $source){
$order = $source->getOrder();
$totals = $this->_getTotalsList($source);
$lineBlock = array(
'lines' => array(),
'height' => 15
);
foreach ($totals as $total) {
$total->setOrder($order)
->setSource($source);
if ($total->canDisplay()) {
$total->setFontSize(10);
foreach ($total->getTotalsForDisplay() as $totalData) {
$lineBlock['lines'][] = array(
array(
'text' => $totalData['label'],
'feed' => 475,
'align' => 'right',
'font_size' => $totalData['font_size'],
'font' => 'bold'
),
array(
'text' => $totalData['amount'],
'feed' => 565,
'align' => 'right',
'font_size' => $totalData['font_size'],
'font' => 'bold'
),
);
}
}
}
$this->y -= 10;
$page = $this->drawLineBlocks($page, array($lineBlock));
return $page;
}
Voici comment on l'appelle dans la fonction Creditmemo.php:
$this->insertTotals($page, $creditmemo);
Et de Invoice.php:
$this->insertTotals($page, $invoice);
La solution
if ($source instanceof Mage_Sales_Model_Order_Creditmemo) {
//Creditmemo stuff here
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange