. Выводит в отправленном клиенту письме квитанцию сбербанка в ПДФ. Следует отметить, что она отправляется при любом способе оплаты.
Открываем файл с данным названием, тот что находится у Вас , заменяем код на тот что здесь, вставляем свои данные, сохраняем, радуемся жизни. Работает в версии 2.9.7, Joomla 1.5.21.
<?php
/**
* @version 2.9.0 12.03.2011
* @author MAXXmarketing GmbH
* @package Jshopping
* @copyright Copyright (C) 2010 webdesigner-profi.de. All rights reserved.
* @license GNU/GPL
*/
define('K_TCPDF_EXTERNAL_CONFIG', true);
// Installation path
define("K_PATH_MAIN", JPATH_LIBRARIES.DS."tcpdf");
// URL path
define("K_PATH_URL", JPATH_SITE);
// Fonts path
define("K_PATH_FONTS", JPATH_SITE.DS.'language'.DS."pdf_fonts".DS);
// Cache directory path
define("K_PATH_CACHE", K_PATH_MAIN.DS."cache");
// Cache URL path
define("K_PATH_URL_CACHE", K_PATH_URL.DS."cache");
// Images path
define("K_PATH_IMAGES", K_PATH_MAIN.DS."images");
// Blank image path
define("K_BLANK_IMAGE", K_PATH_IMAGES.DS."_blank.png");
/*
* Format options
*/
// Cell height ratio
define("K_CELL_HEIGHT_RATIO", 1.5);
// Magnification scale for titles
define("K_TITLE_MAGNIFICATION", 1);
// Reduction scale for small font
define("K_SMALL_RATIO", 2/3);
// Magnication scale for head
define("HEAD_MAGNIFICATION", 1);
include(JPATH_SITE."/libraries/tcpdf/tcpdf.php");
error_reporting(1);
class MYPDF extends TCPDF{
function addNewPage(){
$this->addPage();
$this->addTitleHead();
}
function addTitleHead(){
$jshopConfig = &JSFactory::getConfig();
$vendorinfo = $this->_vendorinfo;
$this->Image($jshopConfig->path . '/images/header.jpg',1,1,$jshopConfig->pdf_header_width,$jshopConfig->pdf_header_height);
$this->Image($jshopConfig->path . '/images/footer.jpg',1,265,$jshopConfig->pdf_footer_width,$jshopConfig->pdf_footer_height);
$this->SetFont('freesans','',8);
$this->SetXY(155,12);
$this->SetTextColor(155,155,155);
$_vendor_info = array();
$_vendor_info[] = $vendorinfo->adress;
$_vendor_info[] = $vendorinfo->zip . " " . $vendorinfo->city;
if ($vendorinfo->phone) $_vendor_info[] = _JSHOP_CONTACT_PHONE . ": " . $vendorinfo->phone;
if ($vendorinfo->fax) $_vendor_info[] = _JSHOP_CONTACT_FAX . ": " . $vendorinfo->fax;
if ($vendorinfo->email) $_vendor_info[] = _JSHOP_EMAIL . ": " . $vendorinfo->email;
$str_vendor_info = implode("\n",$_vendor_info);
$this->MultiCell(40, 3, $str_vendor_info, 0, 'R');
$this->SetTextColor(0,0,0);
}
}
function generatePDF($order){
$jshopConfig = &JSFactory::getConfig();
$vendorinfo = $order->getVendorInfo();
$pdf = new MYPDF();
$pdf->_vendorinfo = $vendorinfo;
$pdf->SetFont('freesans','',8);
$pdf->setPrintHeader(false);
$pdf->setPrintFooter(false);
$pdf->SetMargins(0, 0, 0);
$pdf->addNewPage();
$pdf->SetXY(20,55);
$pdf->setfontsize(6);
$pdf->SetTextColor(0,0,0);
$pdf->MultiCell(80,3, $vendorinfo->company_name . ", " . $vendorinfo->adress . ", " . $vendorinfo->zip . " " . $vendorinfo->city,0,'L');
$pdf->SetXY(110,55);
$pdf->SetFont('freesansb','',11);
$pdf->SetTextColor(0,0,0);
$pdf->MultiCell(80,3,_JSHOP_EMAIL_BILL,0,'R');
$pdf->SetFont('freesans','',11);
$pdf->SetXY(20,60);
$pdf->MultiCell(80,4.5,$order->firma_name . "\n" . $order->f_name . " " . $order->l_name . "\n" . $order->street . "\n" . $order->zip . " " . $order->city . "\n" . $order->country, 0,'L');
$pdf->SetFont('freesansi','',11);
$pdf->SetXY(110,65);
$pdf->MultiCell(80,4.5,_JSHOP_ORDER_SHORT_NR . " " . $order->order_number . "\n" . _JSHOP_ORDER_FROM . " " . $order->order_date,0,'R');
$pdf->SetDrawColor(0,0,0);
$pdf->SetFont('freesans','',7);
if ( $jshopConfig->identification_number){
$pdf->SetXY(115,102);
$pdf->MultiCell(35, 4, _JSHOP_IDENTIFICATION_NUMBER, 1, 'L');
$pdf->SetXY(150,102);
$pdf->MultiCell(40, 4, $jshopConfig->identification_number, 1, 'R');
}
if ($jshopConfig->tax_number){
$pdf->SetXY(115,106);
$pdf->MultiCell(35, 4, _JSHOP_TAX_NUMBER, 1, 'L');
$pdf->SetXY(150,106);
$pdf->MultiCell(40, 4, $jshopConfig->tax_number, 1, 'R');
}
$pdf->SetFont('freesansi','', 8);
$pdf->Text(170,108, 'Форма № ПД-4');
$pdf->SetXY(20,104);
$pdf->SetFont('freesansi','', 9);
$pdf->MultiCell(50, 72,'ИЗВЕЩЕНИЕ', 1, 'C');
$pdf->SetXY(70,104);
$pdf->SetFont('freesansb','', 9);
$pdf->MultiCell(120, 72, '', 1, '');
$pdf->Text(100,110, 'Ваша фирма');
$pdf->SetFont('freesans','', 7);
$pdf->Text(105, 113, '(наименование получателя платежа)');
$pdf->Line(78, 111, 180, 111, $style3);
$pdf->SetFont('freesansb','', 9);
$pdf->Text(80, 118, 'Ваш ИНН');
$pdf->Line(78, 119, 115, 119, $style);
$pdf->Text(130, 118, 'Ваш номер счёта');
$pdf->Line(120, 119, 180, 119, $style3);
$pdf->SetFont('freesans','', 7);
$pdf->Text(80, 121, '(ИНН получателя платежа)');
$pdf->Text(130, 121, '(номер счёта получателя платежа)');
$pdf->SetFont('freesansb','', 9);
$pdf->Text(80, 125, 'Ваш банк');
$pdf->Line(78, 126, 145, 126, $style);
$pdf->Text(146, 126, 'БИК');
$pdf->Text(155, 125, 'БИК банка');
$pdf->Line(154, 126, 180, 126, $style);
$pdf->SetFont('freesans','', 7);
$pdf->Text(80, 128, '(наименование банка получателя платежа)');
$pdf->SetFont('freesans','', 8);
$pdf->Text(78, 132, 'Номер кор./сч. банка получателя платежа:');
$pdf->SetFont('freesansb','', 9);
$pdf->Text(140, 131, 'Номер кор счёта');
$pdf->Line(138, 132, 180, 132, $style);
$pdf->Text(80, 136, 'Заказ №');
$pdf->SetXY(93,133);
$pdf->MultiCell(80,4.5, $order->order_number . "\n");
$pdf->Line(78, 137, 120, 137, $style);
$pdf->Line(124, 137, 180, 137, $style);
$pdf->SetFont('freesans','', 6);
$pdf->Text(80, 139, '(наименование платежа)');
$pdf->Text(125, 139, '(номер лицевого счета (код) плательщика)');
$pdf->SetFont('freesans','', 9);
$pdf->Text(78, 144, 'Ф.И.О. плательщика');
$pdf->Line(110, 144, 180, 144, $style);
$pdf->Text(78, 149, 'Адрес плательщика');
$pdf->Line(110, 149, 180, 149, $style);
$pdf->Text(78, 154, 'Сумма платежа');
$pdf->Line(103, 154, 130, 154, $style);
$pdf->Text(131, 154, 'коп.');
$pdf->SetXY(102,150);
$pdf->MultiCell(20,5,formatprice($order->order_total),'0','L');
$pdf->Text(78, 159, 'Сумма платы за услуги');
$pdf->Line(114, 159, 125, 159, $style);
$pdf->Text(127, 159, 'руб.');
$pdf->Text(140, 159, 'коп.');
$pdf->Line(134, 159, 139, 159, $style);
$pdf->Text(78, 164, 'Итого');
$pdf->Line(88, 164, 125, 164, $style);
$pdf->Text(127, 164, 'руб.');
$pdf->Line(134, 164, 139, 164, $style);
$pdf->Text(140, 164, 'коп.');
$pdf->Text(78, 170, 'Плательщик');
$pdf->Line(98, 170, 125, 170, $style);
$pdf->Text(126, 170, '(Подпись)');
$pdf->Text(160, 170, 'Дата:');
$pdf->Text(38, 170, 'КАССИР');
$pdf->SetXY(20,176);
$pdf->SetFont('freesansi','', 9);
$pdf->MultiCell(50, 72,'', 1, 'C');
$pdf->SetXY(70,176);
$pdf->SetFont('freesansb','', 9);
$pdf->MultiCell(120, 72, '', 1, '');
$pdf->Text(100,182, 'Ваша фирма');
$pdf->SetFont('freesans','', 7);
$pdf->Text(105, 185, '(наименование получателя платежа)');
$pdf->Line(78, 183, 180, 183, $style3);
$pdf->SetFont('freesansb','', 9);
$pdf->Text(80, 190, 'Ваш ИНН');
$pdf->Line(78, 191, 115, 191, $style);
$pdf->Text(130, 190, 'Ваш номер счёта');
$pdf->Line(120, 191, 180, 191, $style3);
$pdf->SetFont('freesans','', 7);
$pdf->Text(80, 193, '(ИНН получателя платежа)');
$pdf->Text(130, 193, '(номер счёта получателя платежа)');
$pdf->SetFont('freesansb','', 9);
$pdf->Text(80, 197, 'Ваш банк');
$pdf->Line(78, 198, 145, 198, $style);
$pdf->Text(146, 198, 'БИК');
$pdf->Text(155, 197, 'Бик банка');
$pdf->Line(154, 198, 180, 198, $style);
$pdf->SetFont('freesans','', 7);
$pdf->Text(80, 200, '(наименование банка получателя платежа)');
$pdf->SetFont('freesans','', 8);
$pdf->Text(78, 204, 'Номер кор./сч. банка получателя платежа:');
$pdf->SetFont('freesansb','', 9);
$pdf->Text(140, 203, 'Номер Кор счёта');
$pdf->Line(138, 204, 180, 204, $style);
$pdf->Text(80, 208, 'Заказ №');
$pdf->SetXY(93,205);
$pdf->MultiCell(80,4.5, $order->order_number . "\n");
$pdf->Line(78, 209, 120, 209, $style);
$pdf->Line(124, 209, 180, 209, $style);
$pdf->SetFont('freesans','', 6);
$pdf->Text(80, 211, '(наименование платежа)');
$pdf->Text(125, 211, '(номер лицевого счета (код) плательщика)');
$pdf->SetFont('freesans','', 9);
$pdf->Text(78, 216, 'Ф.И.О. плательщика');
$pdf->Line(110, 216, 180, 216, $style);
$pdf->Text(78, 221, 'Адрес плательщика');
$pdf->Line(110, 221, 180, 221, $style);
$pdf->Text(78, 226, 'Сумма платежа');
$pdf->Line(103, 226, 130, 226, $style);
$pdf->Text(131, 226, 'коп.');
$pdf->SetXY(102,222);
$pdf->MultiCell(20,5,formatprice($order->order_total),'0','L');
$pdf->Text(78, 231, 'Сумма платы за услуги');
$pdf->Line(114, 231, 125, 231, $style);
$pdf->Text(127, 231, 'руб.');
$pdf->Line(134, 231, 139, 231, $style);
$pdf->Text(140, 231, 'коп.');
$pdf->Text(78, 236, 'Итого');
$pdf->Line(88, 236, 125, 236, $style);
$pdf->Text(127, 236, 'руб.');
$pdf->Line(134, 236, 139, 236, $style);
$pdf->Text(140, 236, 'коп.');
$pdf->Text(78, 242, 'Плательщик');
$pdf->Line(98, 242, 125, 242, $style);
$pdf->Text(126, 242, '(Подпись)');
$pdf->Text(160, 242, 'Дата:');
$pdf->Text(35, 230, 'КВИТАНЦИЯ');
$pdf->Text(38, 242, 'КАССИР');
$name_pdf = $order->order_id."_".md5(uniqid(rand(0,100))). ".pdf";
$pdf->Output($jshopConfig->pdf_orders_path."/".$name_pdf ,'F');
return $name_pdf;
}
?>