2if (!defined(
"B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !==
true)
5<!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.0 Transitional//EN">
9<meta
http-equiv=
"Content-Type" content=
"text/html; charset=<?=LANG_CHARSET?>">
12 table.it td { border: 1pt solid #000000; padding: 0pt 3pt; }
13 table.inv td, table.sign td { padding: 0pt; }
14 table.sign td { vertical-
align:
top; }
15 table.header td { padding: 0pt; vertical-
align:
top; }
28if (
$params[
'BILLEN_BACKGROUND'])
31 if (intval(
$path) > 0)
33 if ($arFile = CFile::GetFileArray(
$path))
34 $path = $arFile[
'SRC'];
37 $backgroundStyle =
$params[
'BILLEN_BACKGROUND_STYLE'];
38 if (!in_array($backgroundStyle,
array(
'none',
'tile',
'stretch')))
39 $backgroundStyle =
'none';
43 switch ($backgroundStyle)
53 "url('%s') 0 0 repeat-y; background-size: %.02fpt %.02fpt",
62 'top' => intval(
$params[
'BILLEN_MARGIN_TOP'] ?: 15) * 72/25.4,
63 'right' => intval(
$params[
'BILLEN_MARGIN_RIGHT'] ?: 15) * 72/25.4,
64 'bottom' => intval(
$params[
'BILLEN_MARGIN_BOTTOM'] ?: 15) * 72/25.4,
65 'left' => intval(
$params[
'BILLEN_MARGIN_LEFT'] ?: 20) * 72/25.4
72<body
style=
"margin: 0pt; padding: 0pt;"<?
if (
$_REQUEST[
'PRINT'] ==
'Y') { ?> onload=
"setTimeout(window.print, 0);"<? } ?>>
74<div
style=
"margin: 0pt; padding: <?=join('pt ', $margin); ?>pt; width: <?=$width; ?>pt; background: <?=$background; ?>">
78 <?
if (
$params[
"BILLEN_PATH_TO_LOGO"]) { ?>
79 <td
style=
"padding-right: 5pt; ">
80 <? $imgParams = CFile::_GetImgParams(
$params[
'BILLEN_PATH_TO_LOGO']);
81 $dpi = intval(
$params[
'BILLEN_LOGO_DPI']) ?: 96;
82 $imgWidth = $imgParams[
'WIDTH'] * 96 / $dpi;
86 <img src=
"<?=$imgParams['SRC']; ?>" width=
"<?=$imgWidth; ?>" />
91 if (
$params[
"SELLER_COMPANY_ADDRESS"]) {
92 $sellerAddress =
$params[
"SELLER_COMPANY_ADDRESS"];
93 if (is_array($sellerAddress))
95 if (!empty($sellerAddress))
97 foreach ($sellerAddress as
$i => $address)
102 $addrValue = implode(
'<br>', $sellerAddress)
103 ?><div
style=
"display: inline-block; vertical-align: top;"><b><?= $addrValue ?></b></div><?
111 unset($sellerAddress);
131 <?
if (
$params[
"BUYER_PERSON_COMPANY_NAME"]) { ?>
135 if (
$params[
"BUYER_PERSON_COMPANY_ADDRESS"]) {
136 $buyerAddress =
$params[
"BUYER_PERSON_COMPANY_ADDRESS"];
137 if (is_array($buyerAddress))
139 if (!empty($buyerAddress))
141 foreach ($buyerAddress as
$i => $address)
146 $addrValue = implode(
'<br>', $buyerAddress)
147 ?><div
style=
"display: inline-block; vertical-align: top;"><?= $addrValue ?><br></div><?
155 unset($buyerAddress);
157 if (
$params[
'BUYER_PERSON_COMPANY_PHONE'])
158 echo
"Tel.: ".htmlspecialcharsbx(
$params[
'BUYER_PERSON_COMPANY_PHONE']).
'<br>';
159 if (
$params[
'BUYER_PERSON_COMPANY_FAX'])
160 echo
"Fax: ".htmlspecialcharsbx(
$params[
'BUYER_PERSON_COMPANY_FAX']).
'<br>';
161 if (
$params[
'BUYER_PERSON_COMPANY_NAME_CONTACT'])
166 <td
align=
"right" valign=
"top">
173 <td><b>Issue Date&
nbsp;</b></td>
176 <?
if (
$params[
"DATE_PAY_BEFORE"]) { ?>
178 <td><b>Due Date&
nbsp;</b></td>
199 if (
$params[
'BILLEN_COLUMN_'.$column.
'_SHOW'] ==
'Y')
203 'SORT' =>
$params[
'BILLEN_COLUMN_'.$column.
'_SORT']
214 'SORT' =>
$val[
'SORT']
219uasort(
$arCols,
function (
$a, $b) {
return (
$a[
'SORT'] < $b[
'SORT']) ? -1 : 1;});
234 foreach (
$params[
'BASKET_ITEMS'] as $basketItem)
237 if ($basketItem[
'IS_VAT_IN_PRICE'])
240 $vatLessPrice = $basketItem[
'PRICE'];
242 $productName = $basketItem[
"NAME"];
243 if ($productName ==
"OrderDelivery")
244 $productName =
"Shipping";
245 else if ($productName ==
"OrderDiscount")
246 $productName =
"Discount";
249 foreach (
$arCols as $columnId => $col)
277 $data = ($basketItem[$columnId]) ?:
'';
283 if ($basketItem[
'PROPS'])
287 foreach ($basketItem[
'PROPS'] as $basketPropertyItem)
289 if ($basketPropertyItem[
'CODE'] ==
'CATALOG.XML_ID' || $basketPropertyItem[
'CODE'] ==
'PRODUCT.XML_ID')
291 $arProps[
$n][] =
htmlspecialcharsbx(sprintf(
"%s: %s", $basketPropertyItem[
"NAME"], $basketPropertyItem[
"VALUE"]));
295 $sum += doubleval($vatLessPrice * $basketItem[
'QUANTITY']);
296 $vat = max(
$vat, $basketItem[
'VAT_RATE']);
297 if ($basketItem[
'VAT_RATE'] > 0)
299 $vatRate = (string)$basketItem[
'VAT_RATE'];
300 if (!isset($vats[$vatRate]))
303 if ($basketItem[
'IS_VAT_IN_PRICE'])
304 $vats[$vatRate] += ($basketItem[
'PRICE'] - $vatLessPrice) * $basketItem[
'QUANTITY'];
306 $vats[$vatRate] += ($basketItem[
'PRICE']*(1 + $basketItem[
'VAT_RATE']) - $vatLessPrice) * $basketItem[
'QUANTITY'];
319 if (
$params[
'DELIVERY_PRICE'] > 0)
321 $sDeliveryItem =
"Shipping";
323 $sDeliveryItem .= sprintf(
" (%s)",
$params[
'DELIVERY_NAME']);
325 foreach (
$arCols as $columnId => $col)
372 if (
$params[
'BILLEN_TOTAL_SHOW'] ==
'Y')
410 foreach ($vats as $vatRate => $vatSum)
424 foreach (
$params[
'TAXES'] as $tax)
432 ($tax[
"IS_IN_PRICE"] ==
"Y") ?
"Included " :
"",
480<table
class=
"it" width=
"100%">
482 <?
foreach (
$arCols as $columnId => $col):?>
483 <td><?=$col[
'NAME'];?></td>
495 <?
foreach (
$arCols as $columnId => $cols):?>
499 if ($columnId ===
'NUMBER')
503 elseif ($columnId ===
'NAME')
506 <td
align=
"<?=($n > $items) ? 'right' : 'left';?>"
507 style=
"word-break: break-word; word-wrap: break-word; <? if ($accumulated) {?>border-width: 0pt 1pt 0pt 0pt; <? } ?>"
508 <?
if ($accumulated) { ?>colspan=
"<?=($accumulated+1); ?>"<? $accumulated = 0; } ?>>
511 <?
foreach (
$props[
$n] as $property) { ?>
513 <small><?=$property; ?></small>
525 <?
if ($accumulated) { ?>
526 style=
"border-width: 0pt 1pt 0pt 0pt"
527 colspan=
"<?=(($columnId == 'VAT_RATE' && $vat <= 0) ? $accumulated : $accumulated+1); ?>"
528 <? $accumulated = 0; } ?>>
529 <?
if ($columnId ==
'SUM' || $columnId ==
'PRICE'):?>
561<?
if (
$params[
"BILLEN_COMMENT1"] ||
$params[
"BILLEN_COMMENT2"]) { ?>
562<b>Terms & Conditions</b>
564 <?
if (
$params[
"BILLEN_COMMENT1"]) { ?>
566 array(
'#</div>\s*<div[^>]*>#i',
'#</?div>#i'),
array(
'<br>',
'<br>'),
568 ),
'',
array(), 0)); ?>
572 <?
if (
$params[
"BILLEN_COMMENT2"]) { ?>
574 array(
'#</div>\s*<div[^>]*>#i',
'#</?div>#i'),
array(
'<br>',
'<br>'),
576 ),
'',
array(), 0)); ?>
590<table
class=
"sign" style=
"width: 100%; ">
592 <td
style=
"width: 50%; ">
599 <?
if (
$params[
"SELLER_COMPANY_NAME"]) { ?>
608 <? $bankAddr =
$params[
"SELLER_COMPANY_BANK_ADDR"]; ?>
609 <? $bankPhone =
$params[
"SELLER_COMPANY_BANK_PHONE"]; ?>
611 <?
if (
$bank || $bankAddr || $bankPhone) { ?>
615 <?
if ($bankAddr) { ?>
620 <?
if ($bankPhone) { ?>
626 Bank
's routing number: <?=htmlspecialcharsbx($bankRouteNo); ?>
629 Bank SWIFT: <?=htmlspecialcharsbx($bankSwift); ?>
634 <td style="width: 50%; ">
637 <div style="position: relative; "><?=CFile::ShowImage(
638 $params["BILLEN_PATH_TO_STAMP"],
640 'style=
"position: absolute; left: 30pt; "'
644 <table style="width: 100%; position: relative; ">
649 <? if ($params["SELLER_COMPANY_DIRECTOR_POSITION"]) { ?>
650 <? if ($params["SELLER_COMPANY_DIRECTOR_NAME"] || $params["SELLER_COMPANY_DIR_SIGN"]) { ?>
651 <? if ($params["SELLER_COMPANY_DIRECTOR_NAME"]) { ?>
652 <tr><td> </td></tr>
654 <td colspan="2"><?=htmlspecialcharsbx($params["SELLER_COMPANY_DIRECTOR_NAME"]); ?></td>
657 <tr><td> </td></tr>
659 <td><nobr><?=htmlspecialcharsbx($params["SELLER_COMPANY_DIRECTOR_POSITION"]); ?></nobr></td>
660 <td style="border-bottom: 1pt solid #000000; text-align: center; ">
661 <? if (!$blank && $params["SELLER_COMPANY_DIR_SIGN"]) { ?>
662 <span style="position: relative; "> <?=CFile::ShowImage(
663 $params["SELLER_COMPANY_DIR_SIGN"],
665 'style=
"position: absolute; margin-left: -75pt; bottom: 0pt; "'
672 <? if ($params["SELLER_COMPANY_ACCOUNTANT_POSITION"]) { ?>
673 <? if ($params["SELLER_COMPANY_ACCOUNTANT_NAME"] || $params["SELLER_COMPANY_ACC_SIGN"]) { ?>
674 <? if ($params["SELLER_COMPANY_ACCOUNTANT_NAME"]) { ?>
675 <tr><td> </td></tr>
677 <td colspan="2"><?=htmlspecialcharsbx($params["SELLER_COMPANY_ACCOUNTANT_NAME"]); ?></td>
680 <tr><td> </td></tr>
682 <td><nobr><?=htmlspecialcharsbx($params["SELLER_COMPANY_ACCOUNTANT_POSITION"]); ?></nobr></td>
683 <td style="border-bottom: 1pt solid #000000; text-align: center; ">
684 <? if (!$blank && $params["SELLER_COMPANY_ACC_SIGN"]) { ?>
685 <span style="position: relative; "> <?=CFile::ShowImage(
686 $params["SELLER_COMPANY_ACC_SIGN"],
688 'style=
"position: absolute; margin-left: -75pt; bottom: 0pt; "'
bx popup label bx width30 PAGE_NEW_MENU_NAME text width
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
bx_acc_lim_group_list limitGroupList[] multiple<?=$group[ 'ID']?> ID selected margin top
<? if( $useEditor3):?>< tr class="heading">< td colspan="2"><? echo GetMessage("FILEMAN_OPTION_SPELL_SET");?></td ></tr ><? if(function_exists( 'pspell_config_create')):$use_pspell_checked=(COption::GetOptionString( $module_id, "use_pspell", "Y")=="Y") ? "checked" :"";?>< tr >< td valign="top">< label for="use_pspell"><?echo GetMessage("FILEMAN_OPTION_USE_PSPELL");?></label >< br >< a title="<?echo GetMessage("FILEMAN_OPTION_ADDISH_DICS_TITLE");?> http
ConvertDateTime($datetime, $to_format=false, $from_site=false, $bSearchInSitesOnly=false)
htmlspecialcharsback($str)
HTMLToTxt($str, $strSiteUrl="", $aDelete=[], $maxlen=70)
htmlspecialcharsbx($string, $flags=ENT_COMPAT, $doubleEncode=true)
global_menu_<?echo $menu["menu_id"]?> adm main menu item icon adm main menu item text text adm main menu hover adm submenu menucontainer menu_id menu_id items_id items_id desktop menu_id block none adm global submenu<?=($subMenuDisplay=="block" ? " adm-global-submenu-active" :"")?> global_submenu_<?echo $menu["menu_id"]?> text MAIN_PR_ADMIN_FAV items adm submenu items wrap adm submenu items stretch wrap BX adminMenu itemsStretchScroll()"> <table class if (!empty( $menu["items"])) elseif ( $menu[ 'menu_id']=='desktop') if ( $menu[ 'menu_id']=='desktop') endforeach
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)
<? endif;?> window document title
</p ></td >< td valign=top style='border-top:none;border-left:none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;padding:0cm 2.0pt 0cm 2.0pt;height:9.0pt'>< p class=Normal align=center style='margin:0cm;margin-bottom:.0001pt;text-align:center;line-height:normal'>< a name=ТекстовоеПоле54 ></a ><?=($taxRate > count( $arTaxList) > 0) ? $taxRate."%"
if( $arBasket=$dbBasket->Fetch()) if($vat > 0) $rowsCnt
if(!empty($sellerData)) $bankAccNo
if(CSalePaySystemAction::GetParamValue('BACKGROUND', false)) $margin
if($inWords) echo htmlspecialcharsbx(Number2Word_Rus(roundEx($totalVatSum $params['CURRENCY']
SaleFormatCurrency($fSum, $strCurrency, $OnlyValue=false, $withoutFormat=false)
const SALE_VALUE_PRECISION