Mam dość nietypowy problem i przyznam, że chyba mam jakieś mega zaćmienie, bo nie mogę sobie z nim dać rady.
Otóż chcę podmienić dokumenty typu faktura, proforma itp generowane przez prestę na dokumenty generowane przez moduł ifirma i wyświetlić odpowiednie linki (ikonki) w szczegółach zamówienia w panelu klienta.
Konkretniej chodzi o to, że jak wygeneruję fakturę, proformę lub inny dokument w module ifirma to będzie on dostępny do pobrania także z podglądu zamówienia, które może sobie wyświetlić klient.
Teraz tak. Plik główny modułu o nazwie ifirma.php zawiera kod przycisków do wyświetlenia i generowania faktur. Poniżej kod odpowiedzialny za to :
Powyższy kod ma za zadanie pokazać jedynie te dokumenty, które są wygenerowane z panelu admina.
Teraz tylko nie za bardzo wiem jak wyświetlić zawartość orderCustomer.tpl w pliku order-detail.tpl, który odpowiada za wyświetlenie podglądu zamówień w panelu klienta. (45 linijka kodu zawiera link generujący PDFa z fakturą (z presty):
<a target="_blank" href="{$link->getPageLink('pdf-invoice', true)}?id_order={$order->id|intval}{if $is_guest}&secure_key={$order->secure_key|escape:'html':'UTF-8'}{/if}">{l s='Download your invoice as a PDF file.'}</a>
Ogólnie zamiast powyższego kodu chcę mieć zawartość wygenerowaną z modułu.
Question
nonameno
Witam,
Sprawa dotyczy presty 1.6.1.3.
Mam dość nietypowy problem i przyznam, że chyba mam jakieś mega zaćmienie, bo nie mogę sobie z nim dać rady.
Otóż chcę podmienić dokumenty typu faktura, proforma itp generowane przez prestę na dokumenty generowane przez moduł ifirma i wyświetlić odpowiednie linki (ikonki) w szczegółach zamówienia w panelu klienta.
Konkretniej chodzi o to, że jak wygeneruję fakturę, proformę lub inny dokument w module ifirma to będzie on dostępny do pobrania także z podglądu zamówienia, które może sobie wyświetlić klient.
Teraz tak. Plik główny modułu o nazwie ifirma.php zawiera kod przycisków do wyświetlenia i generowania faktur. Poniżej kod odpowiedzialny za to :
public function hookAdminOrder() { $this->context->controller->addJS(($this->_path).'js/ifirma.js'); if(!$this->_isConfigurationSet()) { return $this->display(__FILE__,'/views/noOrder.tpl'); } $orderId = intval(Tools::getValue(self::KEY_ORDER_ID)); if($orderId != 0){ $invoiceMapCollection = \ifirma\InvoiceMap::getInvoiceMapRowsForOrderId($orderId); $this->context->smarty->assign(array( 'sendResultMessage' => $this->_getSendResultMessage(), 'invoiceValidationMessage' => $this->_getInvoiceValidationMessage(), 'isVat' => Configuration::get(self::API_VAT), 'hash' => Configuration::get(self::API_HASH), 'orderId' => $orderId, 'invoice' => $invoiceMapCollection->{\ifirma\InvoiceMap::INVOICE_TYPE_NORMAL}, 'invoiceSend' => $invoiceMapCollection->{\ifirma\InvoiceMap::INVOICE_TYPE_SEND}, 'invoiceProforma' => $invoiceMapCollection->{\ifirma\InvoiceMap::INVOICE_TYPE_PROFORMA}, 'bill' => $invoiceMapCollection->{\ifirma\InvoiceMap::INVOICE_TYPE_BILL}, 'actionInvoice' => \ifirma\ApiManager::KEY_ACTION_INVOICE, 'actionInvoiceSend' => \ifirma\ApiManager::KEY_ACTION_INVOICE_SEND, 'actionInvoiceProforma' => \ifirma\ApiManager::KEY_ACTION_INVOICE_PROFORMA, 'actionInvoiceFromProforma' => \ifirma\ApiManager::KEY_ACTION_INVOICE_FROM_PROFORMA, 'actionBill' => \ifirma\ApiManager::KEY_ACTION_BILL )); return $this->display(__FILE__,'/views/order.tpl'); } return ''; }Czyli linijka jaka mnie interesuje to :
Powieliłem ją, przekierowałem do pliku o nazwie orderCustomer.tpl
I wpisałem do zawartości tego pliku zmodyfikowaną zawartość pliku order.tpl, czyli :
<fieldset style="margin-top: 10px;"> {$sendResultMessage} {$invoiceValidationMessage} {if $invoice} <a href="../modules/ifirma/requests/getInvoice.php?id={$invoice->id}&h={$hash}"><img src="../img/admin/pdf.gif"/> Pobierz »</a> {/if} <br/> {if !$isVat} {if $bill} <a href="../modules/ifirma/requests/getInvoice.php?id={$bill->id}&h={$hash}"><img src="../img/admin/pdf.gif"/>Pobierz rachunek »</a> {/if}<br/> {else} {if $invoiceSend} <a href="../modules/ifirma/requests/getInvoice.php?id={$invoiceSend->id}&h={$hash}"><img src="../img/admin/pdf.gif"/>Pobierz fakturę wysyłkową»</a> {/if} <br/> {if $invoiceProforma} <a href="../modules/ifirma/requests/getInvoice.php?id={$invoiceProforma->id}&h={$hash}"><img src="../img/admin/pdf.gif"/>Pobierz fakturę proforma»</a> {if !$invoice} {/if} {/if} {/if} </fieldset>Powyższy kod ma za zadanie pokazać jedynie te dokumenty, które są wygenerowane z panelu admina.
Teraz tylko nie za bardzo wiem jak wyświetlić zawartość orderCustomer.tpl w pliku order-detail.tpl, który odpowiada za wyświetlenie podglądu zamówień w panelu klienta. (45 linijka kodu zawiera link generujący PDFa z fakturą (z presty):
<a target="_blank" href="{$link->getPageLink('pdf-invoice', true)}?id_order={$order->id|intval}{if $is_guest}&secure_key={$order->secure_key|escape:'html':'UTF-8'}{/if}">{l s='Download your invoice as a PDF file.'}</a>Ogólnie zamiast powyższego kodu chcę mieć zawartość wygenerowaną z modułu.
Link to comment
Share on other sites
0 answers to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now