0 Пользователей и 1 Гость просматривают эту тему.
  • 114 Ответов
  • 27377 Просмотров
*

kocius

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Re: Счёт-фактура
« Ответ #60 : 30.08.2014, 09:17:23 »
В оригинале тоже не работает, номер показывает дату нет..
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Счёт-фактура
« Ответ #61 : 30.08.2014, 10:31:47 »
ищите проблему в своих исправлениях. в оригинале все работает
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

kocius

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Re: Счёт-фактура
« Ответ #62 : 30.08.2014, 11:03:34 »
поставил оригинальные JoomShopping настройки, все равно не показывает http://imhocloud.com/image/7NY
у Вас какая версия Jommshopping?
Версия Joomla: 2.5.6

Вот код:

$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');
    if ($jshopConfig->date_invoice_in_invoice){
        $pdf->SetXY(110,77);
        $pdf->MultiCell(80,4.5,_JSHOP_INVOICE_DATE." ".strftime($jshopConfig->store_date_format, strtotime(date("Y-m-d H:i:s"))), 0, 'R');
« Последнее редактирование: 30.08.2014, 11:10:27 от kocius »
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Счёт-фактура
« Ответ #63 : 30.08.2014, 11:36:31 »
версии последние, но я думаю это роли не играет. 99% дело в ваших правках, возможно даже не в этом файле. установите ради теста чистую Joomla и ЖШ и посмотрите, как должно быть.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

kocius

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Re: Счёт-фактура
« Ответ #64 : 01.09.2014, 15:43:35 »
да, Вы были правы, поставил все заново, работает
*

kocius

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Re: Счёт-фактура
« Ответ #65 : 09.09.2014, 15:16:27 »
ищите проблему в своих исправлениях. в оригинале все работает

Нужно вставить формат даты в: joomshopping->настройки->информация о магазине->Формат даты: %d.%m.%Y
*

dragon4x4

  • Захожу иногда
  • 196
  • 7 / 0
Re: Счёт-фактура
« Ответ #66 : 12.09.2014, 23:33:36 »
привет, а у меня пропали данные счета, банка на фактуре.... вроде все пересмотрел, не вижу есть ли где отключение показа счета или чо то сбилось после правок с генерацией названия счета...
*

Tosell

  • Новичок
  • 4
  • 0 / 0
Re: Счёт-фактура
« Ответ #67 : 05.10.2014, 22:08:51 »
Доброго времени суток!
Ситуация следующая-сайт на двух языках и счёт генерируется на языке выбранном пользователем. Как и где изменить, что бы счёт генерировался при любом языке контента только на русском. Что бы можно было бы это прописать и забыть. Помогайте, пожалуйста.
« Последнее редактирование: 05.10.2014, 22:13:09 от Tosell »
*

kocius

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Re: Счёт-фактура
« Ответ #68 : 06.10.2014, 23:55:23 »
привет, а у меня пропали данные счета, банка на фактуре.... вроде все пересмотрел, не вижу есть ли где отключение показа счета или чо то сбилось после правок с генерацией названия счета...
там же меняешь где и дату:
joomshopping->настройки->информация о магазине -> банк
Потом когда покупаешь товар выбираешь оплата через банк и все вроде. Вот результат:
http://uploadme.ru/image/x7c
*

kirych59

  • Осваиваюсь на форуме
  • 31
  • 0 / 0
Re: Счёт-фактура
« Ответ #69 : 20.11.2014, 12:50:08 »
Какова переменная единицы измерения для вывода (допустим, вывести шт., кг. и т.д.)?
« Последнее редактирование: 21.11.2014, 01:29:05 от kirych59 »
*

kirych59

  • Осваиваюсь на форуме
  • 31
  • 0 / 0
Re: Счёт-фактура
« Ответ #70 : 01.12.2014, 18:31:06 »
Знает ли кто-нибудь ответ или подсказку на вышесказанный вопрос?
*

cirip

  • Захожу иногда
  • 112
  • 0 / 0
Re: Счёт-фактура
« Ответ #71 : 16.11.2016, 16:23:36 »
Всем привет. Подскажите как через Аддон RUS Invoices 1.0.5 вывести дополнительные текст в нужное место? Если можно подробнее!
Код
<?php
defined( '_JEXEC' ) or die( 'Restricted access' );

class plgJshoppingorderAddon_rus_invoices_for_payment extends JPlugin {

function __construct($subject, $config){
parent::__construct($subject, $config);
}

function get_seting(){
JSFactory::loadExtLanguageFile('addon_rus_invoices_for_payment');
$addon = JTable::getInstance("addon", "jshop");
$addon -> loadAlias('rus_invoices_for_payment');
return (object)$addon -> getParams();
}

function onBeforeCreatePdfOrderEnd($order, &$pdf, $name_pdf){

$addon_config = self::get_seting();
$jshopConfig = JSFactory::getConfig();
$vendorinfo = $order->getVendorInfo();

$pdf = new JorderPDF();
$pdf->_vendorinfo = $vendorinfo;
$pdf->SetFont('freesans','',10);
$pdf->setPrintHeader(false);
$pdf->setPrintFooter(false);
$pdf->SetMargins(0,0,0);
self::addNewPage($pdf);

$pdf->SetXY(14,35);
$pdf->setfontsize(8);
$pdf->MultiCell(181,1,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_FELLOW_THE_FORM,0,"C");
$pdf->Rect(14, 40, 181, 34 );
$pdf->text(16,45,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_INN.' '.$vendorinfo->benef_swift);
$pdf->line(14,48,120,48);
$pdf->line(65,40,65,48);
$pdf->text(67,45,$vendorinfo->benef_iban);
$pdf->line(120,40,120,74);
$pdf->text(16,52,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_RECIPIENT);
$pdf->text(16,58,$vendorinfo->benef_payee);//$vendorinfo->shop_name
$pdf->text(122,58,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_MF_NUM);
$pdf->line(135,40,135,74);
$pdf->text(137,58,$vendorinfo->benef_conto);//_JSHOP_ADDON_RUS_INVOICES_PAYMENT_KPP.' '.$vendorinfo->benef_payee
$pdf->line(14,60,195,60);
$pdf->text(16,65,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_PAYEES_BANK);
$pdf->text(16,71,''.$vendorinfo->benef_bank_info);
$pdf->text(122,65,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_BIK);
$pdf->line(120,67,135,67);
$pdf->text(122,71,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_MF_NUM);
$pdf->text(137,65,$vendorinfo->benef_bic);
if($addon_config->account_correspondent){$pdf->text(137,71,$addon_config->account_correspondent);}//_JSHOP_ADDON_RUS_INVOICES_PAYMENT_INN.' '.$vendorinfo->benef_conto
// --------- ----------------

$pdf->SetXY(14,80);
$pdf->SetFont('freesans','',12);
$pdf->MultiCell(181,1,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_ACCOUNT_NUMBER.$order->order_number._JSHOP_ADDON_RUS_INVOICES_PAYMENT_OT.self::rdate($order->order_date)._JSHOP_ADDON_RUS_INVOICES_PAYMENT_PR_YEAR,0,"C");
$pdf->SetFont('freesans','',8);
$adress=array();
if($order->firma_name)$adress[]=$order->firma_name;
if($order->firma_code)$adress[]=_JSHOP_ADDON_RUS_INVOICES_PAYMENT_INN." ".$order->firma_code;
if($order->city)$adress[] = _JSHOP_ADDON_RUS_INVOICES_PAYMENT_PRE_CITY.$order->city;
if($order->street)$adress[] = $order->street;
if($order->home)$adress[] = $order->home;
$pdf->text(13,93,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_PAYER.implode(", ",$adress));
$adress=array();
if($order->d_firma_name)$adress[]=$order->firma_name;
if($order->firma_code)$adress[]=_JSHOP_ADDON_RUS_INVOICES_PAYMENT_INN." ".$order->firma_code;
if($order->d_city)$adress[] = _JSHOP_ADDON_RUS_INVOICES_PAYMENT_PRE_CITY.$order->city;
if($order->d_street)$adress[] = $order->street;
if($order->d_home)$adress[] = $order->home;
$pdf->text(13,98,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_CUSTOMER.implode(", ",$adress));

$y = 103;
$pdf->Rect(14,$y,181,10);
$pdf->line(22,$y,22,$y+10);
$pdf->line(102,$y,102,$y+10);
$pdf->line(122,$y,122,$y+10);
$pdf->line(140,$y,140,$y+10);
$pdf->line(165,$y,165,$y+10);
$pdf->SetFont('freesans','',8);
$pdf->SetXY(14,$y+3);
$pdf->MultiCell(8, 1,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_NUMBBER, 0, 'C');
$pdf->SetXY(22,$y+4);
$pdf->MultiCell(70, 1,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_NAME_OF_THE_PRODUCT, 0, 'C');
$pdf->SetXY(102,$y+3);
$pdf->MultiCell(20, 1,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_UNIT, 0, 'C');
$pdf->SetXY(122,$y+1);
$pdf->MultiCell(18, 2,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_COUNT, 0, 'C');
$pdf->SetXY(140,$y+3);
$pdf->MultiCell(25, 1,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_PRICE, 0, 'C');
$pdf->SetXY(165,$y+3);
$pdf->MultiCell(30, 1,_JSHOP_ADDON_RUS_INVOICES_PAYMENT_SUMM, 0, 'C');

$y = 116;
$y = $pdf->getY()+2.7;



$num=0;
foreach($order->products as $prod){
$num++;
$width_filename = 80;
$pdf->SetFont('freesans','',8);
$pdf->SetXY(14, $y + 1);
$pdf->MultiCell(8, 4, $num, 0, 'C');
$pdf->SetXY(23, $y + 1);
$pdf->MultiCell($width_filename, 4, $prod->product_name, 0, 'L');

if ($prod->manufacturer!=''){
$pdf->SetXY(23, $pdf->getY());
$pdf->MultiCell($width_filename, 4, _JSHOP_MANUFACTURER.": ".$prod->manufacturer, 0, 'L');
}
if ($prod->product_attributes!="" || $prod->product_freeattributes!="" || $prod->delivery_time || $prod->extra_fields!=''){
if ($prod->delivery_time){
$pdt = _JSHOP_DELIVERY_TIME.": ".$prod->delivery_time;
}else{
$pdt = "";
}
$pdf->SetXY(26, $pdf->getY());
$pdf->SetFont('freesans','',8);
$attribute = sprintAtributeInOrder($prod->product_attributes, "pdf");
$attribute .= sprintFreeAtributeInOrder($prod->product_freeattributes, "pdf");
$attribute .= sprintExtraFiledsInOrder($prod->extra_fields,"pdf");
$attribute .= $prod->_ext_attribute;
$attribute .= $pdt;
$pdf->MultiCell(62, 4, $attribute, 0, 'L');
$pdf->SetFont('freesans','',8);
}
//$y2 = $pdf->getY() + 1;
$y2 = $pdf->getY();
       
if ($jshopConfig->show_product_code_in_order && 0){
$pdf->SetXY(85, $y + 1);
$pdf->MultiCell(22, 4, $prod->product_ean, 0, 'L');
$y3 = $pdf->getY() + 1;
}else{
$y3 = $pdf->getY();
}
$pdf->SetXY(102, $y + 1);
$pdf->MultiCell(20, 1, _JSHOP_ADDON_RUS_INVOICES_PAYMENT_CHT, 0 , 'C');

$pdf->SetXY(122, $y + 1);
$pdf->MultiCell(16, 4, formatqty($prod->product_quantity).$prod->_qty_unit, 0 , 'R');
//$y4 = $pdf->getY() + 1;
$y4 = $pdf->getY();
       
$pdf->SetXY(140, $y + 1);
//$pdf->MultiCell(25, 4, formatprice($prod->product_item_price, $order->currency_code), 0 , 'L');
$pdf->MultiCell(23, 4, $this->formatprice($prod->product_item_price), 0 , 'R');
       
if ($prod->_ext_price){
$pdf->SetXY(150, $pdf->getY());
$pdf->MultiCell(40, 4, $prod->_ext_price, 0 , 'R');
}

if ($jshopConfig->show_tax_product_in_cart && $prod->product_tax>0){
$pdf->SetXY(125, $pdf->getY());
$pdf->SetFont('freesans','',6);
$text = productTaxInfo($prod->product_tax, $order->display_price);
$pdf->MultiCell(25, 4, $text, 0 , 'L');
}
//$y5 = $pdf->getY() + 1;
$y5 = $pdf->getY();
       
$pdf->SetFont('freesans','',8);
$pdf->SetXY(165, $y + 1);
//$pdf->MultiCell(40, 4, formatprice($prod->product_quantity * $prod->product_item_price, $order->currency_code), 0 , 'R');
$pdf->MultiCell(28, 4, $this->formatprice($prod->product_quantity * $prod->product_item_price,0), 0 , 'R');
       
if ($prod->_ext_price_total){           
$pdf->SetXY(150, $pdf->getY());
$pdf->MultiCell(40, 4, $prod->_ext_price_total, 0 , 'R');
}
       
if ($jshopConfig->show_tax_product_in_cart && $prod->product_tax>0){
$pdf->SetXY(150, $pdf->getY());
$pdf->SetFont('freesans','',6);
$text = productTaxInfo($prod->product_tax, $order->display_price);
$pdf->MultiCell(40, 4, $text, 0 , 'R');
}
//$y6 = $pdf->getY() + 1;
$y6 = $pdf->getY();
       
$yn = max($y2, $y3, $y4, $y5, $y6);
// line
$pdf->Rect(14, $y, 181, $yn - $y );
//$pdf->Rect(20, $y, 130, $yn - $y );

$pdf->line(22,$y,22,$yn);
$pdf->line(102,$y,102,$yn);

if ($jshopConfig->show_product_code_in_order && 0){
$pdf->line(85, $y, 85, $yn);
}
$pdf->line(122, $y, 122, $yn);
$pdf->line(140, $y, 140, $yn);
$pdf->line(165, $y, 165, $yn);
       
$y = $yn;
       
if ($y > 260){
self::addNewPage($pdf);
$y = 45;
}
}//--- endforeach

if ($y > 230){
self::addNewPage($pdf);
$y = 45;
}

$pdf->SetFont('freesans','',8);

if (($jshopConfig->hide_tax || count($order->order_tax_list)==0) && $order->order_discount==0 && $order->order_payment==0 && $jshopConfig->without_shipping) $hide_subtotal = 1; else $hide_subtotal = 0;

if (!$hide_subtotal){
$pdf->Rect(165,$y,30,5);
$pdf->SetXY(20,$y);
$pdf->MultiCell(143,5,_JSHOP_SUBTOTAL,'0','R');
$pdf->SetXY(165,$y);
$pdf->MultiCell(28,5,$this->formatprice($order->order_subtotal).$order->_pdf_ext_subtotal,'0','R');
}else{
$y = $y - 5;
}

if ($order->order_discount > 0){
$y = $y + 5;     
$pdf->Rect(165,$y,30,5);
$pdf->SetXY(20,$y);
$pdf->MultiCell(143,5,_JSHOP_RABATT_VALUE,'0','R');
$pdf->SetXY(165,$y);
$pdf->MultiCell(28,5, "-".$this->formatprice($order->order_discount).$order->_pdf_ext_discount,'0','R');       
}

if (!$jshopConfig->without_shipping){
$pdf->Rect(165,$y + 5,30,5);
$pdf->SetXY(20,$y + 5);
$pdf->MultiCell(143,5,_JSHOP_SHIPPING_PRICE,'0','R');
$pdf->SetXY(165,$y + 5);
//$pdf->MultiCell(28,5,formatprice($order->order_shipping, $order->currency_code).$order->_pdf_ext_shipping,'0','R');
$pdf->MultiCell(28,5,$this->formatprice($order->order_shipping).$order->_pdf_ext_shipping,'0','R');
if ($order->order_package>0 || $jshopConfig->display_null_package_price){
$y=$y+5;
$pdf->SetXY(20,$y + 5);
$pdf->Rect(165,$y + 5,30,5);
$pdf->MultiCell(143,5,_JSHOP_PACKAGE_PRICE,'0','R');
$pdf->SetXY(165,$y + 5);
//$pdf->MultiCell(28,5,formatprice($order->order_package, $order->currency_code).$order->_pdf_ext_shipping_package,'0','R');
$pdf->MultiCell(28,5,$this->formatprice($order->order_package).$order->_pdf_ext_shipping_package,'0','R');
}
}else{
$y = $y - 5;
}

if ($order->order_payment != 0){
$y = $y + 5;     
$pdf->SetXY(20,$y+5);
$pdf->Rect(165,$y+5,30,5);
$pdf->MultiCell(143,5, $order->payment_name,'0','R');
$pdf->SetXY(165,$y+5);
//$pdf->MultiCell(40,5, formatprice($order->order_payment, $order->currency_code).$order->_pdf_ext_payment, '1','R');
$pdf->MultiCell(28,5, $this->formatprice($order->order_payment).$order->_pdf_ext_payment, '0','R');
}

$show_percent_tax = 1;
if ($jshopConfig->hide_tax) $show_percent_tax = 0;

if (!$jshopConfig->hide_tax){
foreach($order->order_tax_list as $percent=>$value){
$pdf->SetXY(20,$y + 10);
$pdf->Rect(165,$y + 10,30,5);
$text = displayTotalCartTaxName($order->display_price);
if ($show_percent_tax) $text = $text." ".formattax($percent)."%";
$pdf->MultiCell(143,5,$text ,'0','R');       
$pdf->SetXY(165,$y + 10);
//$pdf->MultiCell(40,5,formatprice($value, $order->currency_code).$order->_pdf_ext_tax[$percent],'1','R');
$pdf->MultiCell(28,5,$this->formatprice($value).$order->_pdf_ext_tax[$percent],'0','R');
$y = $y + 5;
}
}

$text_total = _JSHOP_ENDTOTAL;
if (($jshopConfig->show_tax_in_product || $jshopConfig->show_tax_product_in_cart) && (count($order->order_tax_list)>0)){
$text_total = _JSHOP_ENDTOTAL_INKL_TAX;
}

$pdf->SetFont('freesansb','',8);
$pdf->SetXY(20,$y + 10);
$pdf->Rect(165,$y + 10,30, 5.1);
$pdf->MultiCell(143, 5 , $text_total,'0','R');

$pdf->SetXY(165,$y + 10);
//$pdf->MultiCell(40,5,formatprice($order->order_total, $order->currency_code).$order->_pdf_ext_total,'1','R');
$pdf->MultiCell(28,5,$this->formatprice($order->order_total, $order->currency_code).$order->_pdf_ext_total,'0','R');
if ($jshopConfig->display_tax_id_in_pdf && $order->tax_number){
$y = $y+5.2;
$pdf->SetFont('freesans','',7);
$pdf->SetXY(20,$y + 10);       
$pdf->MultiCell(143, 4 , _JSHOP_TAX_NUMBER.": ".$order->tax_number,'0','L');
}

$y = $pdf->getY()+5;

$pdf->SetFont('freesans','',8);
$pdf->SetXY(13,$y);
$pdf->MultiCell(180, 1 , _JSHOP_ADDON_RUS_INVOICES_PAYMENT_TOTAL_ITEMS.$num.", "._JSHOP_ADDON_RUS_INVOICES_PAYMENT_THE_AMOUNT.$this->formatprice($order->order_total),'0','L');
$pdf->SetFont('freesansb','',8);
$pdf->SetXY(13,$y+5);
$pdf->MultiCell(180, 1 , $this->mb_ucfirst($this->SumProp($this->formatprice($order->order_total),$order->currency_code)),'0','L');
$pdf->Image($jshopConfig->path.'images/header.jpg',11,1,$jshopConfig->pdf_header_width,$jshopConfig->pdf_header_height);
$pdf->Image($jshopConfig->path.'images/footer.jpg',100,150,$jshopConfig->pdf_footer_width,$jshopConfig->pdf_footer_height);
   
$y = $y + 20;

$pdf->SetFont('freesans','',8);
$text = _JSHOP_ADDON_RUS_INVOICES_PAYMENT_GUIDE_ENTERPRISES;
$pdf->text(14,$y,$text);
$t_x=strlen($text);
$t_x2=140;
$pdf->line($t_x+10,$y,$t_x2,$y);
$pdf->text($t_x2+2,$y,($addon_config->guide_enterprises)?"(".$addon_config->guide_enterprises.")":'');

$y = $y + 10;
$text = _JSHOP_ADDON_RUS_INVOICES_PAYMENT_CHIEF_ACCOUNTANT;
$pdf->text(14,$y,$text);
$t_x=strlen($text);
$t_x2=140;
$pdf->line($t_x+10,$y,$t_x2,$y);
$pdf->text($t_x2+2,$y,($addon_config->chief_accountant)?"(".$addon_config->chief_accountant.")":'');

}

function addNewPage(&$pdf){
$pdf->addPage();
self::addTitleHead($pdf);
}

function addTitleHead(&$pdf){
$jshopConfig = JSFactory::getConfig();
        $vendorinfo = $pdf->_vendorinfo;
//$pdf->Image($jshopConfig->path.'images/header.jpg',1,1,$jshopConfig->pdf_header_width,$jshopConfig->pdf_header_height);
//$pdf->Image($jshopConfig->path.'images/footer.jpg',80,265,$jshopConfig->pdf_footer_width,$jshopConfig->pdf_footer_height);

$y=12;
$x=12;

if($vendorinfo->logo){
$pdf->Image($vendorinfo->logo,$x,$y-2,25,25);
$x+=30;
}

$pdf->SetFont('freesans','',8);
$pdf->SetXY($x,$y);
        $pdf->SetTextColor($pdf->pdfcolors[2][0], $pdf->pdfcolors[2][1], $pdf->pdfcolors[2][2]);
$_vendor_info = array();
$_vendor_info[] = $vendorinfo->company_name;
$adress = array();
if($vendorinfo->zip)$adress[] = $vendorinfo->zip;
//if($vendorinfo->country)$adress[] = $vendorinfo->country;
if($vendorinfo->city)$adress[] = $vendorinfo->city;
if($vendorinfo->adress)$adress[] = $vendorinfo->adress;

        $_vendor_info[] = implode(", ",$adress);
unset($adress);
        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);
        $pdf->MultiCell(80, 3, $str_vendor_info, 0, 'L');
        $pdf->SetTextColor($pdf->pdfcolors[0][0], $pdf->pdfcolors[0][1], $pdf->pdfcolors[0][2]);
}


function formatprice($price, $currency_exchange = 0) {
    $jshopConfig = JSFactory::getConfig();

    if ($currency_exchange){
        $price = $price * $jshopConfig->currency_value;
    }

    if (!$currency_code) $currency_code = $jshopConfig->currency_code;
    $price = number_format($price, $jshopConfig->decimal_count, $jshopConfig->decimal_symbol, $jshopConfig->thousand_separator);
    return $price;
}

function rdate($date){
$MonthNames=array(
_JSHOP_ADDON_RUS_INVOICES_PAYMENT_MONTH_JANUARY,
_JSHOP_ADDON_RUS_INVOICES_PAYMENT_MONTH_FEBRUARY,
_JSHOP_ADDON_RUS_INVOICES_PAYMENT_MONTH_MARCH,
_JSHOP_ADDON_RUS_INVOICES_PAYMENT_MONTH_APRIL,
_JSHOP_ADDON_RUS_INVOICES_PAYMENT_MONTH_MAY,
_JSHOP_ADDON_RUS_INVOICES_PAYMENT_MONTH_JUNE,
_JSHOP_ADDON_RUS_INVOICES_PAYMENT_MONTH_JULY,
_JSHOP_ADDON_RUS_INVOICES_PAYMENT_MONTH_AUGUST,
_JSHOP_ADDON_RUS_INVOICES_PAYMENT_MONTH_SEPTEMBER,
_JSHOP_ADDON_RUS_INVOICES_PAYMENT_MONTH_OCTOBER,
_JSHOP_ADDON_RUS_INVOICES_PAYMENT_MONTH_NOVEMBER,
_JSHOP_ADDON_RUS_INVOICES_PAYMENT_MONTH_DECEMBER);
$d=explode(".",$date);
$d[1]=$MonthNames[(int)$d[1]-1];
return implode(" ",$d);
}

// echo SumProp(2004.30, 'руб.', 'коп.');
// SumProp(nnnn,'USD'|'RUR'|'EUR')-полный вывод со спряжением "долларов"-"центов"
function SumProp($srcsumm,$val_rub='', $val_kop=''){
$cifir= Array('од','дв','три','четыр','пят','шест','сем','восем','девят');
$sotN = Array('сто','двести','триста','четыреста','пятьсот','шестьсот','семьсот','восемьсот','девятьсот');
$milion= Array('триллион','миллиард','миллион','тысяч');
$anDan = Array('','','','сорок','','','','','девяносто');
$scet=4;
$cifR='';
$cfR='';
$oboR= Array();
//==========================
$splt = explode('.',"$srcsumm");
if(count($splt)<2) $splt = explode(',',"$srcsumm");
$xx = $splt[0];
$xx1 = (empty($splt[1])? '00': $splt[1]);
$xx1 = str_pad("$xx1", 2, "0", STR_PAD_RIGHT); // 2345.1 -> 10 копеек
//  $xx1 = round(($srcsumm-floor($srcsumm))*100);
if ($xx>999999999999999) { $cfR=$srcsumm; return $cfR; }
while($xx/1000>0){
$yy=floor($xx/1000);
$delen= round(($xx/1000-$yy)*1000);

$sot= floor($delen/100)*100;
$des=(floor($delen-$sot)>9? floor(($delen-$sot)/10)*10:0);
$ed= floor($delen-$sot)-floor(($delen-$sot)/10)*10;

$forDes=($des/10==2?'а':'');
$forEd= ($ed==1 ? 'ин': ($ed==2?'е':'') );
if ( floor($yy/1000)>=1000 ) { // делаю "единицы" для тысяч, миллионов...
$ffD=($ed>4?'ь': ($ed==1 || $scet<3? ($ed<2?'ин': ($scet==3?'на': ($scet<4? ($ed==2?'а':( $ed==4?'е':'')) :'на') ) ) : ($ed==2 || $ed==4?'е':'') ) );
}else{ // единицы для "единиц
$ffD=($ed>4?'ь': ($ed==1 || $scet<3? ($scet<3 && $ed<2?'ин': ($scet==3?'на': ($scet<4? ($ed==2?'а':( $ed==4?'е':'')) :'ин') ) ) : ( $ed==4?'е':($ed==2?'а':'')) ) );
}
if($ed==2) $ffD = ($scet==3)?'е':'а'; // два рубля-миллиона-миллиарда, но две тысячи

$forTys=($des/10==1? ($scet<3?'ов':'') : ($scet<3? ($ed==1?'': ($ed>1 && $ed<5?'а':'ов') ) : ($ed==1? 'а': ($ed>1 && $ed<5?'и':'') )) );
$nnn = floor($sot/100)-1;
$oprSot=(!empty($sotN[$nnn])? $sotN[$nnn]:'');
$nnn = floor($des/10);
$oprDes=(!empty($cifir[$nnn-1])? ($nnn==1?'': ($nnn==4 || $nnn==9? $anDan[$nnn-1]:($nnn==2 || $nnn==3?$cifir[$nnn-1].$forDes.'дцать':$cifir[$nnn-1].'ьдесят') ) ) :'');

$oprEd=(!empty($cifir[$ed-1])? $cifir[$ed-1].(floor($des/10)==1?$forEd.'надцать' : $ffD ) : ($des==10?'десять':'') );
$oprTys=(!empty($milion[$scet]) && $delen>0)? $milion[$scet].$forTys : '';

$cifR= (strlen($oprSot)? ' '.$oprSot:'').
(strlen($oprDes)>1 ? ' '.$oprDes:'').
(strlen($oprEd)>1  ? ' '.$oprEd:'').
(strlen($oprTys)>1 ? ' '.$oprTys:'');
$oboR[]=$cifR;
$xx=floor($xx/1000);
$scet--;
if (floor($xx)<1 ) break;
}
$oboR = array_reverse($oboR);
for ($i=0; $i<count($oboR); $i++){
$probel = strlen($cfR)>0 ? ' ':'';
$cfR .= (($oboR[$i]!='' && $cfR!='')? $probel:''). $oboR[$i];
}
if (strlen($cfR)<3) $cfR='ноль';

$intsrc = $splt[0];
$kopeiki = $xx1;
$kop2 =str_pad("$xx1", 2, "0", STR_PAD_RIGHT);

$sum2 = str_pad("$intsrc", 2, "0", STR_PAD_LEFT);
$sum2 = substr($sum2, strlen($sum2)-2); // 676571-> '71'
$sum21 = substr($sum2, strlen($sum2)-2,1); // 676571-> '7'
$sum22 = substr($sum2, strlen($sum2)-1,1); // 676571-> '1'
$kop1  = substr($kop2,0,1);
$kop2  = substr($kop2,1,1);
$ar234 = array('2','3','4'); // доллар-А, рубл-Я...
// делаю спряжения у слова рубл-ей|я|ь / доллар-ов... / евро
if($val_rub=='RUR') {
$val1 = 'рубл';
$val2 = 'копейка';
if($sum22=='1' && $sum21!='1') $val1 .= 'ь'; // 01,21...91 рубль
elseif(in_array($sum22, $ar234) && ($sum21!='1')) $val1 .= 'я';
else $val1 .= 'ей';

if(in_array($kop2, $ar234) && ($kop1!='1')) $val2 = 'копейки';
elseif($kop2=='1' && $kop1!='1') $val2 = 'копейка'; // 01,21...91 копейка
else $val2 = 'копеек';
$cfR .= " $val1 $kopeiki $val2";
}elseif($val_rub=='USD') {
$val1 = 'доллар';
$val2 = 'цент';
if($sum22=='1' && $sum21!='1') $val1 .= ''; // 01,21...91 доллар
elseif(in_array($sum22, $ar234) && ($sum21!='1')) $val1 .= 'a';
else $val1 .= 'ов';

if($kop2=='1' && $kop1!='1') $val2 .= ''; // 01,21...91 цент
elseif(in_array($kop2, $ar234) && ($kop1!='1')) $val2 .= 'a';
else $val2 .= 'ов';
$val1 .= ' США';
$cfR .= " $val1 $kopeiki $val2";
}elseif($val_rub=='EUR') {
$val1 = 'евро';
$val2 = 'цент';
if($kop2=='1' && $kop1!='1') $val2 .= ''; // 01,21...91 цент
elseif(in_array($kop2, $ar234) && ($kop1!='1')) $val2 .= 'a';
else $val2 .= 'ов';

$cfR .= " $val1 $kopeiki $val2";
}else{
$cfR .= ' '.$val_rub;
if($val_kop!='') $cfR .= "$kopeiki $val_kop";
}
return trim($cfR);
} // SumProp() end

function mb_ucfirst($str, $encoding='utf-8'){
$str = mb_ereg_replace('^[\ ]+', '', $str);
$str = mb_strtoupper(mb_substr($str, 0, 1, $encoding), $encoding).mb_substr($str, 1, mb_strlen($str), $encoding);
return $str;
}
}
?>
*

orexov_m

  • Захожу иногда
  • 297
  • 24 / 0
Re: Счёт-фактура
« Ответ #72 : 16.11.2016, 19:29:52 »
Аналогично имеющимся полям, добавить новый блок и данные в него, которые вам необходимо.
Skype:orekhov.mikhail, ICQ: 580077720, Телега
*

drynkov

  • Новичок
  • 4
  • 0 / 0
Re: Счёт-фактура
« Ответ #73 : 28.11.2016, 14:09:43 »
JoomShopping не выводит сумму прописью в pdf. Не нашел ничего по этому вопросу. Подскажите пожалуйста
*

orexov_m

  • Захожу иногда
  • 297
  • 24 / 0
Re: Счёт-фактура
« Ответ #74 : 28.11.2016, 14:19:44 »
JoomShopping не выводит сумму прописью в pdf. Не нашел ничего по этому вопросу. Подскажите пожалуйста
Напишите функцию php и вызывайте ее в нужном месте в pdf
Skype:orekhov.mikhail, ICQ: 580077720, Телега
*

drynkov

  • Новичок
  • 4
  • 0 / 0
Re: Счёт-фактура
« Ответ #75 : 28.11.2016, 20:07:23 »
Спасибо разобрался. Я не установил addon_rus_invoices_for_payment_1.0.5. Теперь все работает
*

drynkov

  • Новичок
  • 4
  • 0 / 0
Re: Счёт-фактура
« Ответ #76 : 28.11.2016, 20:09:12 »
Напишите функцию php и вызывайте ее в нужном месте в pdf
Спасибо разобрался. Я не установил addon_rus_invoices_for_payment_1.0.5. Теперь все работает
*

Tetrahedron

  • Захожу иногда
  • 230
  • 1 / 0
Re: Счёт-фактура
« Ответ #77 : 10.08.2017, 15:30:05 »
Подскажите. а можно сделать что бы в счет фактуре которая приходит на почту, заказанные товары были кликабельны? То есть у меня 10 товаров с одинаковым наименованием, и что бы понять что заказали нужно перейти на этот товар с письма который приходит. Или возможно включить вывод краткого описания в счет фактуру, что бы не просто название товара приходило а еще и краткое описание. Спасибо!
*

yurikfirst

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
  • Ты не одинок во вселенной
Re: Счёт-фактура
« Ответ #78 : 28.12.2017, 16:27:18 »
Здравствуйте! Установил в joomshoping - addon_rus_invoices_for_payment_1.0.5..., но, не отображает сумму прописью полностью!
Например: Есть сумма 15 3345 678 - он пишет только "Пятнадцать".
В чем проблема, кто подскажет?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Счёт-фактура
« Ответ #79 : 28.12.2017, 16:44:32 »
по всей видимости в пробелах
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

yurikfirst

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
  • Ты не одинок во вселенной
Re: Счёт-фактура
« Ответ #80 : 28.12.2017, 17:00:07 »
по всей видимости в пробелах
Как написал, почему-то сразу подумал об этом ;D , исправил
Код
$pdf->MultiCell(180, 1 , $this->mb_ucfirst($this->SumProp(str_replace(' ','',$this->formatprice($order->order_total)),$order->currency_code)),'0','L');
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Счёт-фактура
« Ответ #81 : 28.12.2017, 17:05:01 »
а я всегда говорил, что правильно заданный вопрос - это 90% решения :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

MichailPickStyle

  • Захожу иногда
  • 65
  • 2 / 0
Re: Счёт-фактура
« Ответ #82 : 02.11.2018, 17:07:32 »
Всем привет!
А подскажите, пожалуйста, можно ли файлы, отвечающие за формирование pdf счет-фактуры, перенести в отдельную папку на сайте, чтобы я мог, изменяя файл generete_pdf_order.php, сразу выводить результат на экран(это для тестов работы по редактированию внешнего вида)? Если можно, то как это сделать?)
Не хочется каждый раз что-либо меняя, совершать заказ, чтобы пришло письмо с этим pdf файлом и уже тогда просматривать изменения(сделанные по большей части методом тыка))) 
*

kit2m2

  • Живу я здесь
  • 3269
  • 268 / 0
  • Беру сайты на полное сопровождение
Re: Счёт-фактура
« Ответ #83 : 02.11.2018, 17:36:25 »
Чтобы посмотреть, что получилось после редактирования, есть кнопка -> Пример счет-фактуры, в PDF - "Просмотреть pdf" в админке -> Редактировать конфигурацию / Информация о магазине
Расширения для JoomShopping | Расширения на заказ | Сайты и магазины под ключ: Дизайн, Верстка, Программирование, СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ и JoomShopping 5+
*

MichailPickStyle

  • Захожу иногда
  • 65
  • 2 / 0
Re: Счёт-фактура
« Ответ #84 : 02.11.2018, 17:39:28 »
kit2m2
Спасибо!!
*

MichailPickStyle

  • Захожу иногда
  • 65
  • 2 / 0
Re: Счёт-фактура
« Ответ #85 : 06.11.2018, 14:15:15 »
Всем привет!
Заранее прошу прощение за возможно глупые вопросы:
"PDF-счет" и "счета-фактура" - это получается разные вещи? Файл generete_pdf_order.php имеет отношение к редактированию "счет фактуры"? И как изменить внешний вид файла "PDF-счет", т.е. того, который приходит на почту клиенту в виде письма?
« Последнее редактирование: 06.11.2018, 14:23:54 от MichailPickStyle »
*

kit2m2

  • Живу я здесь
  • 3269
  • 268 / 0
  • Беру сайты на полное сопровождение
Re: Счёт-фактура
« Ответ #86 : 06.11.2018, 17:50:12 »
Joomshopping Addons: RUS Invoice

Joomshopping Templates +: Order mail tmpl

Что, для чего думаю сами разберетесь...  ;)
Расширения для JoomShopping | Расширения на заказ | Сайты и магазины под ключ: Дизайн, Верстка, Программирование, СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ и JoomShopping 5+
*

MichailPickStyle

  • Захожу иногда
  • 65
  • 2 / 0
Re: Счёт-фактура
« Ответ #87 : 06.11.2018, 18:03:35 »
Спасибо!
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Счёт-фактура
« Ответ #89 : 06.11.2018, 18:29:55 »
не понятно, можно ли переопределить в своем шаблоне файл
\components\com_jshopping\templates\addons\order_email_tmpl\orderemail.php
или это надо в плагине путь менять?
просто вьюшки товара внутри папки шаблоне переопределил, хотелось бы и макет письма там же хранить.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не попадает в pdf-счет населенный пукт при создании заказа из админки

Автор Dolphin4ik_1

Ответов: 5
Просмотров: 461
Последний ответ 15.12.2020, 15:53:25
от Dolphin4ik_1
Изменить счет pdf для оплаты через банк

Автор Kokshetau

Ответов: 8
Просмотров: 973
Последний ответ 15.11.2020, 23:46:07
от Kokshetau
Счет для администратора

Автор Satool

Ответов: 8
Просмотров: 740
Последний ответ 13.01.2020, 00:05:44
от Satool
Счет-фактура без НДС при выборе оплаты без НДС

Автор effrit

Ответов: 2
Просмотров: 545
Последний ответ 13.02.2019, 20:45:28
от effrit
Добавить изображение товара в счет

Автор Dolphin4ik_1

Ответов: 7
Просмотров: 984
Последний ответ 28.12.2018, 18:00:28
от Dolphin4ik_1