-== Меняем страшную квитанцию на новую ==-

Тема в разделе "Shop-script", создана пользователем Дмитрий Кесаев, 17 дек 2007.

Статус темы:
Закрыта.
  1. Дмитрий Кесаев

    Дмитрий Кесаев aka Zlobniy Babko

    Заблокирован
    Регистр.:
    10 май 2007
    Сообщения:
    1.332
    Симпатии:
    1.266
    -== Меняем страшную квитанцию на новую ==-

    [​IMG]

    Заходим в админпанель, модули - оплаты. Инсталируем! Квитанция Модуль формирования квитанции на оплату, затем редактировать:
    выбираем валюту рубль и в графе " Описание покупки :" оставляем только [orderID]. Больше ни чего не заполняем. Сохраняем.
    Идем дальше.

    \core_functions\functions.php


    function _formatPrice($price)
    {
    $price = (string)$price;

    if ( !strstr($price,".") )
    $price .= ".00";

    $oldPrice = $price;
    $res = "";

    $i = 0;
    for( $i=strlen($price)-1; $i>=0; $i-- )
    {
    if ( $price[$i] == "." )
    break;
    else
    $res = $price[$i].$res;
    }

    $res = ".".$res;

    меняем этот кусок кода на этот


    function _formatPrice($price)
    {
    $price = (string)$price;

    if ( !strstr($price,".") )
    $price .= "";

    $oldPrice = $price;
    $res = "";

    $i = 0;
    for( $i=strlen($price)-1; $i>=0; $i-- )
    {
    if ( $price[$i] == "." )
    break;
    else
    $res = $price[$i].$res;
    }

    $res = "".$res;

    Здесь удаляем нули и точку, после целой цены

    *****************************


    \languages\russian.php

    define('CUSTOMER_FIRST_NAME', 'Имя:');

    Тута дописываем к имени отчество!

    define('CUSTOMER_FIRST_NAME', 'Имя и Отчество:');
    define('CUSTOMER_LAST_NAME', 'Фамилия:');


    *****************************
    Открываем файл и меняем на этот код!

    \modules\templates\invoice_phys.tpl.html


    {* шаблон квитанции на оплату для клиентов *}
    HTML:
    
    
    <HEAD>
    <TITLE>Квитанция на оплату</TITLE>
    <LINK href="kvit.css" type=text/css rel=stylesheet>
    <META http-equiv=Content-Type content="text/html; charset=windows-1251">
    </HEAD>
    
    <body>
    
    <table align="center" border="0" cellpadding="0" cellspacing="0"><tbody><tr><td>
    <table class="ramka" align="center" border="0" cellpadding="0" cellspacing="0">
      <tbody><tr>
        <td class="lineh" align="center" height="285" width="193">
          <table border="0" cellpadding="0" cellspacing="0">
    	<tbody><tr><td class="t10b" align="center" height="100" valign="top">И з в е щ е н и е</td></tr>
    	<tr><td class="t10b" align="center" height="100" valign="bottom">Кассир</td></tr>
          </tbody></table>  
        </td>
        <td class="linevh" height="245" width="16">&nbsp;</td>
        <td class="lineh" height="245"> 
          <table style="height: 245px;" align="center" border="0" cellpadding="0" cellspacing="0" width="370">
    	<tbody><tr>
    	  <td height="40">
    	    <table align="center" border="0" cellpadding="0" cellspacing="0" width="100%">
    	      <tbody><tr>
    		<td><img src="sblogo.gif" alt="Sberbank logo" height="26" width="120"></td>
    		<td class="t6n" align="right" valign="middle"><i>Форма № ПД-4</i></td>
    	      </tr>
    	    </tbody></table>
    	  </td>
    	</tr>
    	<tr>
    	  <td class="h8b" align="center" valign="bottom">
    ЗАО&nbsp;"ПэйВэлл"&nbsp;г.Новосибирск	  </td>
    	</tr>
    	<tr> 
    	  <td class="t6n" align="center" height="10" valign="top">(наименование получателя платежа)</td>
    	</tr>
    	<tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
    	      <tbody><tr>
    		<td valign="bottom" width="40%">
    		  <table class="line_r" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr>
    <td class="line_lbt" align="center" height="10" width="10%">5</td><td class="line_lbt" align="center" height="10" width="10%">4</td><td class="line_lbt" align="center" height="10" width="10%">0</td><td class="line_lbt" align="center" height="10" width="10%">6</td><td class="line_lbt" align="center" height="10" width="10%">2</td><td class="line_lbt" align="center" height="10" width="10%">0</td><td class="line_lbt" align="center" height="10" width="10%">3</td><td class="line_lbt" align="center" height="10" width="10%">2</td><td class="line_lbt" align="center" height="10" width="10%">6</td><td class="line_lbt" align="center" height="10" width="10%">5</td>		  </tr></tbody></table>
    		</td>
    
    
    
    
    <td class="t8n"  align="right" valign="bottom" width="40">БИК&nbsp;</td>
    	      <td valign="bottom" width="40%">
    		<table class="line_r" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr>
    <td class="line_lbt" align="center" height="10" width="10%">0</td><td class="line_lbt" align="center" height="10" width="10%">4</td><td class="line_lbt" align="center" height="10" width="10%">5</td><td class="line_lbt" align="center" height="10" width="10%">0</td><td class="line_lbt" align="center" height="10" width="10%">1</td><td class="line_lbt" align="center" height="10" width="10%">7</td><td class="line_lbt" align="center" height="10" width="10%">7</td><td class="line_lbt" align="center" height="10" width="10%">1</td><td class="line_lbt" align="center" height="10" width="10%">1</td>		</tr>
    	    </tbody></table>
    	      </td>
    
    
     <tr>
    		<td class="t6n" align="center" valign="top">(ИНН получателя платежа)</td>
    		<td class="t6n" valign="top">&nbsp;</td>
     </tr>
    </tr></tbody></table>
    
    
    
    <tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="80%">
    	      <tbody><tr>
    		<td valign="bottom" width="80%">
    		  <table class="line_r" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr>
    <td class="line_lbt" align="center" height="10" width="5%">4</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">7</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">2</td><td class="line_lbt" align="center" height="10" width="5%">8</td><td class="line_lbt" align="center" height="10" width="5%">1</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">4</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">6</td><td class="line_lbt" align="center" height="10" width="5%">7</td><td class="line_lbt" align="center" height="10" width="5%">4</td>		  </tr></tbody></table> 
    		</td>
    	      </tr>
    	      <tr>
    		<td class="t6n" align="center" valign="top">(номер счета получателя платежа)</td>
    	      </tr>
    	    </tbody></table>
    	  </td>
    	</tr>
    	<tr>
    	  <td>
    	  <table border="0" cellpadding="0" cellspacing="0" width="100%">
    	    <tbody><tr>
    	      <td class="t8n" valign="bottom" width="10">в</td>
    	      <td class="h8b" align="center" valign="bottom">
    Новосибирком&nbsp;муниципальном&nbsp;банке	      </td>
    	      
    	    </tr>
    	    <tr>
    	      <td>&nbsp;</td>
    	      <td class="t6n" align="center" valign="top">(наименование банка получателя платежа)</td>
    	      <td>&nbsp;</td>
    	      <td>&nbsp;</td>
    	    </tr>
    	  </tbody></table>
    	</td>
    	</tr>
    	<tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="80%">
    	      <tbody><tr>
    		<td valign="bottom" width="80%">
    		  <table class="line_r" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr>
    		 <td class="line_lbt" align="center" height="10" width="5%">3</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">1</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">1</td><td class="line_lbt" align="center" height="10" width="5%">8</td><td class="line_lbt" align="center" height="10" width="5%">1</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">1</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">7</td><td class="line_lbt" align="center" height="10" width="5%">1</td><td class="line_lbt" align="center" height="10" width="5%">1</td>		  </tr></tbody></table>
    		</td>
    	      </tr>
    	      <tr>
    		<td class="t6n" align="center" valign="top">(номер кор./сч. банка получателя платежа)</td>
    	      </tr>
    	    </tbody></table>
    	  </td>
    	</tr>
    	<tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
    	      <tbody><tr><td class="h8b" valign="bottom" width="100%">
    Номер&nbsp;счета&nbsp;№&nbsp;41001156556940&nbsp; Авансовый&nbsp;платеж.&nbsp;Без&nbsp;НДС&nbsp;&nbsp;&nbsp;{$invoice_description}		</td>
    		<td width="5%">&nbsp;</td>
    		      </tr>
    	      <tr>
    		<td class="t6n" align="center" valign="top">(наименование платежа)</td>
    		<td>&nbsp;</td>
    			      </tr>
    	    </tbody></table>
    	  </td>
    	</tr>
    	<tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
    	      <tbody><tr>
    		<td class="t8n" valign="bottom" width="1%">Ф.И.О&nbsp;плательщика&nbsp;</td>
    		<td class="h8b" valign="bottom">{$billing_lastname} {$billing_firstname}&nbsp;</td>
    	      </tr>
    	    </tbody></table>
    	  </td>
    	</tr>
    	<tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
    	      <tbody><tr>
    		<td class="t8n" valign="bottom" width="1%">Адрес&nbsp;плательщика&nbsp;</td>
    		<td class="h8b" valign="bottom">г.{$billing_city}, {$billing_address}</td>
    	      </tr>
    	    </tbody></table>
    	  </td>
    	</tr>
    	<tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
    	      <tbody><tr>
    	
    		<td class="t8n" valign="bottom" width="23%">Сумма платежа&nbsp;</td>
    		<td class="h8b" valign="bottom" width="24%">{$invoice_amount}</td>
    		<td class="h8b" valign="bottom" width="12%">00 коп.</td>
    		<td class="t8n" align="right" valign="bottom" width="4%">"&nbsp;</td>
    		<td class="h8b" valign="bottom" width="4%">&nbsp;</td>
    		<td class="t8n" valign="bottom" width="1%">&nbsp;"&nbsp;</td>
    		<td class="h8b" valign="bottom" width="20%">&nbsp;&nbsp;</td>
    		<td class="t8n" valign="bottom" width="4%">&nbsp;200&nbsp;</td>
    		<td class="h8b" valign="bottom" width="3%">&nbsp;</td>
    		<td class="t8n" valign="bottom" width="1%">&nbsp;г.</td>
    	      </tr>
    	    </tbody></table>
    	  </td>
    	</tr>
    	<tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
    	      <tbody><tr>
    		<td class="t6n" valign="bottom" width="50%">&nbsp;</td>
    		<td class="t7n" valign="bottom" width="1%"><b>Подпись&nbsp;плательщика&nbsp;</b></td>
    		<td class="h8b" valign="bottom" width="40%">&nbsp;</td>
    	      </tr>
    	    </tbody></table>
    	  </td>
    	</tr>
    	<tr><td class="spc" height="1">&nbsp;</td></tr>
          </tbody></table>
        </td>
        <td class="lineh" height="245" width="16">&nbsp;</td>
      </tr>
      <tr>
        <td class="t10b" align="center" height="280" valign="bottom" width="193">Квитанция<br><br>Кассир<br>&nbsp;</td>
        <td class="linev" height="280" width="16">&nbsp;</td>
        <td height="280" valign="top"> 
          <table style="height: 255px;" align="center" border="0" cellpadding="0" cellspacing="0" width="370">
    	<tbody><tr>
    	  <td class="h8b" align="center" height="30" valign="bottom">
    ЗАО&nbsp;"ПэйВэлл"&nbsp;г.Новосибирск	  </td>
    	</tr>
    	<tr> 
    	  <td class="t6n" align="center" height="10" valign="top">(наименование получателя платежа)</td>
    	</tr>
    	<tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
    	      <tbody><tr>
    		<td valign="bottom" width="40%">
    		  <table class="line_r" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr>
    <td class="line_lbt" align="center" height="10" width="10%">5</td><td class="line_lbt" align="center" height="10" width="10%">4</td><td class="line_lbt" align="center" height="10" width="10%">0</td><td class="line_lbt" align="center" height="10" width="10%">6</td><td class="line_lbt" align="center" height="10" width="10%">2</td><td class="line_lbt" align="center" height="10" width="10%">0</td><td class="line_lbt" align="center" height="10" width="10%">3</td><td class="line_lbt" align="center" height="10" width="10%">2</td><td class="line_lbt" align="center" height="10" width="10%">6</td><td class="line_lbt" align="center" height="10" width="10%">5</td>		  </tr></tbody></table>
    		</td>
    
    
    
    
    <td class="t8n"  align="right" valign="bottom" width="40">БИК&nbsp;</td>
    	      <td valign="bottom" width="40%">
    		<table class="line_r" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr>
    <td class="line_lbt" align="center" height="10" width="10%">0</td><td class="line_lbt" align="center" height="10" width="10%">4</td><td class="line_lbt" align="center" height="10" width="10%">5</td><td class="line_lbt" align="center" height="10" width="10%">0</td><td class="line_lbt" align="center" height="10" width="10%">1</td><td class="line_lbt" align="center" height="10" width="10%">7</td><td class="line_lbt" align="center" height="10" width="10%">7</td><td class="line_lbt" align="center" height="10" width="10%">1</td><td class="line_lbt" align="center" height="10" width="10%">1</td>		</tr>
    	    </tbody></table>
    	      </td>
    
    
     <tr>
    		<td class="t6n" align="center" valign="top">(ИНН получателя платежа)</td>
    		<td class="t6n" valign="top">&nbsp;</td>
     </tr>
    </tr></tbody></table>
    
    
    
    <tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="80%">
    	      <tbody><tr>
    		<td valign="bottom" width="80%">
    		  <table class="line_r" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr>
    <td class="line_lbt" align="center" height="10" width="5%">4</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">7</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">2</td><td class="line_lbt" align="center" height="10" width="5%">8</td><td class="line_lbt" align="center" height="10" width="5%">1</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">4</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">6</td><td class="line_lbt" align="center" height="10" width="5%">7</td><td class="line_lbt" align="center" height="10" width="5%">4</td>		  </tr></tbody></table> 
    		</td>
    	      </tr>
    	      <tr>
    		<td class="t6n" align="center" valign="top">(номер счета получателя платежа)</td>
    	      </tr>
    	    </tbody></table>
    	  </td>
    	</tr>
    	<tr>
    	  <td>
    	  <table border="0" cellpadding="0" cellspacing="0" width="100%">
    	    <tbody><tr>
    	      <td class="t8n" valign="bottom" width="10">в</td>
    	      <td class="h8b" align="center" valign="bottom">
    Новосибирком&nbsp;муниципальном&nbsp;банке	      </td>
    	      
    	    </tr>
    	    <tr>
    	      <td>&nbsp;</td>
    	      <td class="t6n" align="center" valign="top">(наименование банка получателя платежа)</td>
    	      <td>&nbsp;</td>
    	      <td>&nbsp;</td>
    	    </tr>
    	  </tbody></table>
    	</td>
    	</tr>
    	<tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="80%">
    	      <tbody><tr>
    		<td valign="bottom" width="80%">
    		  <table class="line_r" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr>
    		 <td class="line_lbt" align="center" height="10" width="5%">3</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">1</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">1</td><td class="line_lbt" align="center" height="10" width="5%">8</td><td class="line_lbt" align="center" height="10" width="5%">1</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">1</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">0</td><td class="line_lbt" align="center" height="10" width="5%">7</td><td class="line_lbt" align="center" height="10" width="5%">1</td><td class="line_lbt" align="center" height="10" width="5%">1</td>		  </tr></tbody></table>
    		</td>
    	      </tr>
    	      <tr>
    		<td class="t6n" align="center" valign="top">(номер кор./сч. банка получателя платежа)</td>
    	      </tr>
    	    </tbody></table>
    	  </td>
    	</tr>
    	<tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
    	      <tbody><tr><td class="h8b" valign="bottom" width="100%">
    Номер&nbsp;счета&nbsp;№&nbsp;41001156556940&nbsp; Авансовый&nbsp;платеж.&nbsp;Без&nbsp;НДС&nbsp;&nbsp;&nbsp;{$invoice_description}		</td>
    		<td width="5%">&nbsp;</td>
    		      </tr>
    	      <tr>
    		<td class="t6n" align="center" valign="top">(наименование платежа)</td>
    		<td>&nbsp;</td>
    			      </tr>
    	    </tbody></table>
    	  </td>
    	</tr>
    	<tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
    	      <tbody><tr>
    		<td class="t8n" valign="bottom" width="1%">Ф.И.О&nbsp;плательщика&nbsp;</td>
    		<td class="h8b" valign="bottom">{$billing_lastname} {$billing_firstname}&nbsp;</td>
    	      </tr>
    	    </tbody></table>
    	  </td>
    	</tr>
    	<tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
    	      <tbody><tr>
    		<td class="t8n" valign="bottom" width="1%">Адрес&nbsp;плательщика&nbsp;</td>
    		<td class="h8b" valign="bottom">г.{$billing_city}, {$billing_address}</td>
    	      </tr>
    	    </tbody></table>
    	  </td>
    	</tr>
    	<tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
    	      <tbody><tr>
    	
    		<td class="t8n" valign="bottom" width="23%">Сумма платежа&nbsp;</td>
    		<td class="h8b" valign="bottom" width="24%">{$invoice_amount}</td>
    		<td class="h8b" valign="bottom" width="12%">00 коп.</td>
    		<td class="t8n" align="right" valign="bottom" width="4%">"&nbsp;</td>
    		<td class="h8b" valign="bottom" width="4%">&nbsp;</td>
    		<td class="t8n" valign="bottom" width="1%">&nbsp;"&nbsp;</td>
    		<td class="h8b" valign="bottom" width="20%">&nbsp;&nbsp;</td>
    		<td class="t8n" valign="bottom" width="4%">&nbsp;200&nbsp;</td>
    		<td class="h8b" valign="bottom" width="3%">&nbsp;</td>
    		<td class="t8n" valign="bottom" width="1%">&nbsp;г.</td>
    	      </tr>
    	    </tbody></table>
    	  </td>
    	</tr>
    	<tr>
    	  <td>
    	    <table border="0" cellpadding="0" cellspacing="0" width="100%">
    	      <tbody><tr>
    		<td class="t6n" valign="bottom" width="50%">&nbsp;</td>
    		<td class="t7n" valign="bottom" width="1%"><b>Подпись&nbsp;плательщика&nbsp;</b></td>
    		<td class="h8b" valign="bottom" width="40%">&nbsp;</td>
    	      </tr>
    	    </tbody></table>
    	  </td>
    	</tr>
    	
          </tbody></table>
        </td>
        <td width="16">&nbsp;</td>
      </tr>
    </tbody></table>
    </td></tr>
    </tbody></table>
    </body></html>
    Так вот наименование платежа и банковские реквизиты можете изменить в этом файле на свои. Главное с цифрами не напутайте.


    *****************************
    Этот файл создаете и загружаете его в главную директорию вашего магазина.

    kvit.css его содержимое
    HTML:
    
    body {
    	font-family: sans-serif;
    	font-size: 8pt;
    	background-color: white;
    }
    
    table {
    	font-family: sans-serif;
    	font-size: 8pt;
    }
    
    .ramka {
    	border-top: black 1px dotted;
    	border-bottom: black 1px dotted;
    	border-left: black 1px dotted;
    	border-right: black 1px dotted;
    }
    
    .linev {
    	border-left: black 2px solid;
    }
    
    .lineh {
    	border-bottom: black 2px solid;
    }
    
    .linevh {
    	border-bottom: black 2px solid;
    	border-left: black 2px solid;
    }
    
    .t10b {
    	font-weight: bold;
    	font-size: 10pt;
    	font-family: "Times New Roman", serif;
    }
    
    .h8b {
    	font-weight: bold;
    	font-size: 8.5pt;
    	font-family: Arial, sans-serif;
    	border-bottom: black 1px solid;
    	text-align: center;
    }
    
    .line_b		{BORDER-BOTTOM: black 1px solid; FONT-SIZE: 7pt; FONT-WEIGHT: bold}
    
    .line_t		{BORDER-TOP: black 1px solid; FONT-SIZE: 7pt; FONT-WEIGHT: bold}
    
    .line_r {
    	border-right: black 1px solid;
    	font-weight: bold;
    }
    
    .line_l		{BORDER-LEFT: black 1px solid; FONT-SIZE: 7pt; FONT-WEIGHT: bold}
    
    .line_lbt {
    	border-left: black 1px solid;
    	border-bottom: black 1px solid;
    	border-top: black 1px solid;
    	font-weight: bold;
    }
    
    .line_lbtr {
    	border-left: black 1px solid;
    	border-bottom: black 1px solid;
    	border-top: black 1px solid;
    	border-right: black 1px solid;
    	font-weight: bold;
    }
    
    .t6n		{FONT-SIZE: 7.5pt; FONT-FAMILY: "Times New Roman", serif}
    .t7n		{FONT-SIZE: 7.5pt; FONT-FAMILY: "Times New Roman", serif}
    .t8n		{FONT-SIZE: 8.5pt; FONT-FAMILY: "Times New Roman", serif}
    .spc		{FONT-SIZE: 1pt}
    
    
    *****************************
    Лого Сбербанка, как и kvit.css - загрузить в главную директорию вашего магазина
    Вот само лого.

    [​IMG]

    Сохраните его и закачайте к себе. Размеры сами автоматически изменятся - не изменяйте их!!!

    Проверяйте, тестируйте и отписывайтесь с результатами тута. :)
     
    korg7, CarSoft, Panadol и ещё 1-му нравится это.
  2. red_heads

    red_heads

    Регистр.:
    30 янв 2007
    Сообщения:
    157
    Симпатии:
    26
    немного непонятно выводит если втавить
    function _formatPrice($price)
    {
    $price = (string)$price;

    if ( !strstr($price,".") )
    $price .= "";

    $oldPrice = $price;
    $res = "";

    $i = 0;
    for( $i=strlen($price)-1; $i>=0; $i-- )
    {
    if ( $price[$i] == "." )
    break;
    else
    $res = $price[$i].$res;
    }

    $res = "".$res;


    тогда с копейками проблема получается

    Название Количество Налог Стоимость без налога
    60-pin CONNECTOR 1008-G60N-01R ( SIM 300) 1 0% 64руб.
    Ноутбук Fujitsu-Siemens AMILO Pi 1536 *RUS-110103-002* (15.4_WXGA, iT5500(1.66GHz)/512Mb/80Gb/DVD-RW/ATI_X1400_128/CR/W_GLan/Modem/Вес 3.1кг/WinVista_HP) 1 0% 30645руб.

    Подытог: 30709руб.
    Налог: 0руб.
    Доставка (poch:( 97472руб.
    Итого: 31,68372руб.
     
  3. Дмитрий Кесаев

    Дмитрий Кесаев aka Zlobniy Babko

    Заблокирован
    Регистр.:
    10 май 2007
    Сообщения:
    1.332
    Симпатии:
    1.266
    По идее можно и не трогать файл \core_functions\functions.php
    Тогда в квитанции будет типа: (пример)
    Сумма платежа: 2049.00 руб. 00 коп., где 00 коп. можно убрать в файле \modules\templates\invoice_phys.tpl.html
    Но в Сбербанке примут ли такую квитанцию?! Хотя такой вариант тоже может "скатить".
    Должен быть вид в квитанции: 1294 руб. 00 коп.

    За это отвечает (по моему мнению) файл из главной дирректории - invoice_phys.php (для физ лиц.) Но нада в нем замутить функцию "function" числа до точки, т.е. 2334.00, а выводит 2334 - без нулей, а после точки цыфры чтоб не менялись - копейки были сами по себе (в общем разделить сумму 2334.00 - на две(а), даже не знаю как сказать).

    Так вот.
    Наподобие файла invoice_jur.php (юр. лица), где:

    function _my_formatPrice($price)
    {
    $price = round($price*100)/100;
    if (round($price*10) == $price*10 && round($price)!=$price)
    $price = "$price"."0"; //to avoid prices like 17.5 - write 17.50 instead
    return _formatPrice($price);
    }

    function number2string($n,$rod) //перевести число $n в строку. Число обязательно должно быть 0 < $n < 1000. $rod указывает на род суффикса (0 - женский, 1 - мужской; например, "рубль" - 1, "тысяча" - 0).
    {
    ...


    И в итоге выдает:
    function create_string_representation_of_a_number( $n )
    // создает строковое представление суммы. Например $n = 123.
    // результат будет "Сто двадцать три ру*** 00 копеек"
    {
    Таким образом выходит, что нада сделать для файла invoice_phys.php что-то подобное, но чтоб не буквами писалось, а цифрами.
    Но в этом я не силен.

    Так что кто может подобное сделать, то welcome.
    Работы на 10-15 минут макс. - если чел разбирается в этом.
    Буду пробовать, но видимо на долго застряну с этим.
     
  4. Дмитрий Кесаев

    Дмитрий Кесаев aka Zlobniy Babko

    Заблокирован
    Регистр.:
    10 май 2007
    Сообщения:
    1.332
    Симпатии:
    1.266
    Так вот на часах у меня почти 6 утра - заснуть не могу, кошмары с SS. Но все же...
    Разобрался с функцией (изменил), но привязать не могу к файлу invoice_phys.php - постоянно ошибки вылетают.

    function _my_formatPrice($price)
    {
    $price = round($price*100)/100;
    if (round($price*10) == $price*10 && round($price)!=$price)
    $price = "$price"."0"; //to avoid prices like 17.5 - write 17.50 instead
    return _formatPrice($price);
    }

    function number2string($n,$rod)
    {
    $n = round($n);

    $s = "";

    return $n;
    }

    function create_string_representation_of_a_number( $n )

    {

    $roubles = floor( ($n) );
    $kop = round ( $n*100 - round( floor($n)*100 ) );
    if ($kop < 10) $kop = "0".(string)$kop;

    $s = "";
    if ($roubles > 0)
    {
    $rub = "ей";
    $temp = $roubles % 10;
    if (floor(($roubles % 100)/10) != 1)
    {
    if ($temp == 1) $rub = "ь";
    else if ($temp >=2 && $temp <= 4) $rub = "я";
    }
    $s .= number2string($roubles,1)." рубл$rub ";
    }

    {
    $kp = "ек";
    $temp = $kop % 10;
    if (floor(($kop % 100)/10) != 1)
    {
    if ($temp == 1) $kp = "йка";
    else if ($temp >=2 && $temp <= 4) $kp = "йки";
    }

    $s .= "$kop копе$kp";
    }

    if ($roubles>0)
    return $s;
    }

    Тестировал на юр. лицах, т.е. где сумма идет прописью:
    Сто двадцать три ру*** 00 копеек
    Теперь стало 123 ру*** 00 копеек
    Это все хорошо, но вот каким образом привязать к физ. лицам не знаю.

    Помогите, кто знает PHP?
     
  5. red_heads

    red_heads

    Регистр.:
    30 янв 2007
    Сообщения:
    157
    Симпатии:
    26
    А почему у тебя в тестовом варианте все время 00 копеек а если копейки тоже имеются


    вообщем нужно чтобы выводилось так, 2300 руб. 50 коп.
    вместо 2300.50 руб
    приэтом надо чтоб все суммы считались правильно

    Добавлено через 7 минут
    Может не нужно изменять падежи в словах достаточно поставить руб. и коп. как и было

    Добавлено через 26 минут
    nocopy
    Нашла вот такое сообщение в форуме может пригодится тебе http://forum.woweb.ru/topic33072.html

    Добавлено через 41 минуту
    И еще в квитанции сумма выводится из переменной
    $invoice_amount может быть изменить вывод именно её
     
  6. Дмитрий Кесаев

    Дмитрий Кесаев aka Zlobniy Babko

    Заблокирован
    Регистр.:
    10 май 2007
    Сообщения:
    1.332
    Симпатии:
    1.266
    Форум ни чего не даст, я тама писал, просил помощи, но еще обращусь. Они только удивляются и охреневают.
    Падежи работают на ура проверял юр. лицах (в файле invoice_jur.php), хотя можно без проблем кастрировать слово рублей на руб.
    Согласен, что сумма выводится из переменной
    $invoice_amount, и имеет вид
    $smarty->assign( "invoice_amount", $row[0] );

    где:
    /сумма квитанции
    $q = db_query("select order_amount_string from SS__module_payment_invoice_phys where orderID=".$_GET["orderID"]);
    $row = db_fetch_row($q);

    А вот у юр. лиц таокй вид (где текстом пишется сумма:(
    $order_total_string и имеет вид
    $mySmarty->assign( "order_total_string", $this->create_string_representation_of_a_number($amount) );

    Где create_string_representation_of_a_number - название нашей функции. Значение $amount свое.....

    Так я понимаю, что должен быть вид ~
    $smarty->assign( "invoice_amount", *** create_string_representation_of_a_number **НО НЕ ЗНАЮ ЧТО ВПИСАТЬ***** );
     
  7. red_heads

    red_heads

    Регистр.:
    30 янв 2007
    Сообщения:
    157
    Симпатии:
    26
    А ты то сообщение посмотрел на форуме http://forum.woweb.ru/topic33072.html там давольно интересно описан вывод на квитанции не чисел, а цены прописью допустим "две тысячи пятьсот..." может тебе это пригодится
     
  8. Дмитрий Кесаев

    Дмитрий Кесаев aka Zlobniy Babko

    Заблокирован
    Регистр.:
    10 май 2007
    Сообщения:
    1.332
    Симпатии:
    1.266
    Внимательнее будь!!!
     
  9. red_heads

    red_heads

    Регистр.:
    30 янв 2007
    Сообщения:
    157
    Симпатии:
    26
    Где добовляется слово руб. после цены , в каком файле и в какой функцие , и какая переменная содержит значение (руб.)?
     
  10. Дмитрий Кесаев

    Дмитрий Кесаев aka Zlobniy Babko

    Заблокирован
    Регистр.:
    10 май 2007
    Сообщения:
    1.332
    Симпатии:
    1.266
    to red_heads

    Изначально \modules\payment\invoice_jur.php в конце
    function create_string_representation_of_a_number( $n )

    И в главной директории сайта invoice_jur.php - в самом начале.

    to all

    Вот готовый код (если прменить к invoice_jur.php) и не использовать юр. лиц. Но мне нужен именно invoice_phys.php - буду дальше копать.


    Код:
    <?php
    	function _my_formatPrice($price)
    	{
    		$price = round($price*100)/100;
    		if (round($price*10) == $price*10 && round($price)!=$price) 
    		$price = "$price"."0"; //to avoid prices like 17.5 - write 17.50 instead
    		return _formatPrice($price);
    	}
    
    	function number2string($n,$rod) //перевести число $n в строку. Число обязательно должно быть 0 < $n < 1000. $rod указывает на род суффикса (0 - женский, 1 - мужской; например, "рубль" - 1, "тысяча" - 0).
    	{
    		$n = round($n);
    
    		$s = "";
    
    		return $n;
    	}
    
    	function create_string_representation_of_a_number( $n )
    		// создает строковое представление суммы. Например $n = 123.
    		// результат будет "Сто двадцать три ру*** 00 копеек"
    	{
    		//разделить сумма на разряды: единицы, тысячи, миллионы, миллиарды (больше миллиардов не проверять :) )
    		$roubles = floor( ($n) );//$n % 1000;
      	//копейки
    		$kop = round ( $n*100 - round( floor($n)*100 ) );
    		if ($kop < 10) $kop = "0".(string)$kop;
    
    		$s = "";
    if ($roubles > 0)
    		{
    			$rub = "";
    			$temp = $roubles % 10;
    			if (floor(($roubles % 100)/10) != 1)
    			{
    				if ($temp == 1) $rub = "";
    				else if ($temp >=2 && $temp <= 4) $rub = "";
    			}
    			$s .=  number2string($roubles,1)." руб.$rub ";
    		}
    
    		{
    			$kp = ".";
    			$temp = $kop % 10;
    			if (floor(($kop % 100)/10) != 1)
    			{
    				if ($temp == 1) $kp = ".";
    				else if ($temp >=2 && $temp <= 4) $kp = ".";
    			}
    
    			$s .= "$kop коп.$kp";
    		}
    
    		//теперь сделать первую букву заглавной
        		if ($roubles>0)
    
    
    		return $s;
    	}
    
    	//include core files
    	include("./cfg/connect.inc.php");
    	include("./includes/database/".DBMS.".php");
    	include("./cfg/language_list.php");
    	include("./core_functions/functions.php");
    	include("./core_functions/category_functions.php");
    	include("./core_functions/cart_functions.php");
    	include("./core_functions/product_functions.php");
    	include("./core_functions/statistic_functions.php");
    	include("./core_functions/reg_fields_functions.php" );
    	include("./core_functions/registration_functions.php" );
    	include("./core_functions/country_functions.php" );
    	include("./core_functions/zone_functions.php" );
    	include("./core_functions/datetime_functions.php" );
    	include("./core_functions/order_status_functions.php" );
    	include("./core_functions/order_functions.php" );
    	include("./core_functions/aux_pages_functions.php" );
    	include("./core_functions/picture_functions.php" );
    	include("./core_functions/configurator_functions.php" );
    	include("./core_functions/option_functions.php" );
    	include("./core_functions/search_function.php" );
    	include("./core_functions/discount_functions.php" );
    	include("./core_functions/custgroup_functions.php" );
    	include("./core_functions/shipping_functions.php" );
    	include("./core_functions/payment_functions.php" );
    	include("./core_functions/tax_function.php" );
    	include("./core_functions/currency_functions.php" );
    	include("./core_functions/module_function.php" );
    	include("./core_functions/crypto/crypto_functions.php");
    	include("./core_functions/quick_order_function.php" );
    	include("./core_functions/setting_functions.php" );
    	include("./core_functions/subscribers_functions.php" );
    	include("./core_functions/version_function.php" );
    	include("./core_functions/discussion_functions.php" );
    	include("./core_functions/order_amount_functions.php" );
    
    	include('./classes/class.virtual.paymentmodule.php');
    
    	session_start();
    
    	MagicQuotesRuntimeSetting();
    
    	//init Smarty
    	require 'smarty/smarty.class.php';
    	$smarty = new Smarty; //core smarty object
    	$smarty_mail = new Smarty; //for e-mails
    
    	//connect to the database
    	db_connect(DB_HOST,DB_USER,DB_PASS) or die (db_error());
    	db_select_db(DB_NAME) or die (db_error());
    
    	settingDefineConstants();
    
    	//set Smarty include files dir
    	$smarty->template_dir = "modules/templates/";
    
    	//assign core Smarty variables
    	if (!isset($_GET["orderID"]) || !isset($_GET["order_time"]) || !isset($_GET["customer_email"]) || !isset($_GET["moduleID"]))
    	{
    		die ("Заказ не найден в базе данных");
    	}
    
    	$InvoiceModule = modGetModuleObj($_GET['moduleID'], PAYMENT_MODULE);
    	$smarty->assign('InvoiceModule', $InvoiceModule);
    
    	$_GET["orderID"] = (int) $_GET["orderID"];
    
    	$q = db_query("select count(*) from ".ORDERS_TABLE." where orderID=".$_GET["orderID"]." and order_time='".base64_decode($_GET["order_time"])."' and customer_email='".base64_decode($_GET["customer_email"])."'") or die (db_error());
    	$row = db_fetch_row($q);
    
    	if ($row[0] == 1) //заказ найден в базе данных
    	{
    		$order = ordGetOrder( $_GET["orderID"] ); //order details
    		//define smarty vars
    		$smarty->hassign( "billing_lastname", $order["billing_lastname"] );
    		$smarty->hassign( "billing_firstname", $order["billing_firstname"] );
    		$smarty->hassign( "billing_city", $order["billing_city"] );
    		$smarty->hassign( "billing_address", $order["billing_address"] );
    		$smarty->hassign( "orderID", $_GET["orderID"] );
    		$smarty->hassign( "order_time", $order["order_time"] );
    
    		if (!$InvoiceModule->is_installed()) //модуль не установлен
    		{
    			die ("Модуль выписки счетов не установлен");
    		}
    
    		//сумма счета
    		$sql = "select company_name, company_inn, nds_included, nds_rate, RUR_rate from SS__module_payment_invoice_jur where orderID=".$_GET["orderID"]." AND module_id='".$InvoiceModule->ModuleConfigID."'";
    
    		$q = db_query($sql);
    		$row = db_fetch_row($q);
    		if ($row) //сумма найдена в файле с описанием счета
    		{
    			$smarty->hassign( "customer_companyname", $row["company_name"] );
    			$smarty->hassign( "customer_inn",  $row["company_inn"] );
    			$nds_rate = (float) $row["nds_rate"];
    			$RUR_rate = (float) $row["RUR_rate"];
    			$nds_included = !strcmp((string)$row["nds_included"],"1") ? 1 : 0;
    		}
    		else //информация о счет не найдена
    		{
    			die ("Счет не найден в базе данных");
    		}
    
    		//заказанные товары
    		$order_content = ordGetOrderContent( $_GET["orderID"] );
    		$amount = 0;
    		foreach( $order_content as $key => $val)
    		{
    			$order_content[$key]["Price"] = _my_formatPrice ( $order_content[$key]["Price"] * $RUR_rate );
    			$order_content[$key]["Price_x_Quantity"] = _my_formatPrice ( $val["Quantity"] * $val["Price"] * $RUR_rate );
    			$amount += (float) str_replace(",","",$order_content[$key]["Price_x_Quantity"]);
    		}
    
    		$shipping_rate = $order["shipping_cost"]*$RUR_rate;
    
    		$order["discount_value"] = round((float)$order["order_discount"] * $amount)/100;
    
    		$smarty->hassign( "order_discount", $order["order_discount"] );
    		$smarty->hassign( "order_discount_value", _my_formatPrice($order["discount_value"]) );
    
    		$amount += $shipping_rate; //+стоимость доставки
    
    		$smarty->hassign( "order_content", $order_content );
    		$smarty->hassign( "order_content_items_count", count($order_content) + 1 );
    		$smarty->hassign( "order_subtotal", _my_formatPrice($amount) );
    
    		if ($nds_rate <= 0) //показать НДС
    		{
    			$smarty->hassign( "order_tax_amount", "нет" );
    			$smarty->hassign( "order_tax_amount_string", "нет" );
    		}
    		else
    		{
    			//налог не расчитывается на стоимость доставки
    			//если вы хотите, чтобы налог расчитывался и на стоимость доставки замените ниже
    			// '($amount-$shipping_rate)' на '$amount'
    
    			if (!$nds_included) //налог включен
    			{
    				$tax_amount = round ( ($amount-$shipping_rate-$order["discount_value"]) * $nds_rate ) / 100;
    
    				$amount += $tax_amount;
    			}
    			else //прибавить налог
    			{
    				$tax_amount = round ( 100 * ($amount-$shipping_rate-$order["discount_value"]) * $nds_rate / ($nds_rate+100) ) / 100;
    			}
    			$smarty->hassign( "order_tax_amount", _my_formatPrice($tax_amount) );
    			$smarty->hassign( "order_tax_amount_string", create_string_representation_of_a_number($tax_amount) );
    
    		}
    
    		$smarty->hassign( "order_total", _my_formatPrice($order["order_amount"]*$RUR_rate) ); //$amount
    		$smarty->hassign( "order_total_string", create_string_representation_of_a_number($order["order_amount"]*$RUR_rate) );
    
    		//доставка
    		if ($shipping_rate > 0)
    		{
    			$smarty->hassign( "shipping_type", $order["shipping_type"] );
    			$smarty->hassign( "shipping_rate", _my_formatPrice($shipping_rate) );
    		}
    	}
    	else
    	{
    		die ("Заказ не найден в базе данных");
    	}
    
    	$smarty->assign("shopping_cart_url",""); //путь к файлу логотипа
    
    	//show Smarty output
    	$smarty->display("invoice_jur2.tpl.html");
    
    ?>

    И копируете код из
    \modules\templates\invoice_phys.tpl.html в \modules\templates\invoice_jur.tpl.html

    Поднастроите вывод цены
     
Статус темы:
Закрыта.