https://wiki.umisoft.ru/index.php?title=%D0%A1%D1%81%D1%8B%D0%BB%D0%BA%D0%B0_%D0%BD%D0%B0_%D1%81%D1%87%D1%91%D1%82_%D0%B4%D0%BB%D1%8F_%D1%8E%D1%80%D0%B8%D0%B4%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85_%D0%BB%D0%B8%D1%86&feed=atom&action=history
Ссылка на счёт для юридических лиц - История изменений
2024-03-28T12:51:04Z
История изменений этой страницы в вики
MediaWiki 1.31.0
https://wiki.umisoft.ru/index.php?title=%D0%A1%D1%81%D1%8B%D0%BB%D0%BA%D0%B0_%D0%BD%D0%B0_%D1%81%D1%87%D1%91%D1%82_%D0%B4%D0%BB%D1%8F_%D1%8E%D1%80%D0%B8%D0%B4%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85_%D0%BB%D0%B8%D1%86&diff=7948&oldid=prev
Alexei в 13:31, 13 июня 2015
2015-06-13T13:31:30Z
<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="ru">
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">← Предыдущая</td>
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">Версия 13:31, 13 июня 2015</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l6" >Строка 6:</td>
<td colspan="2" class="diff-lineno">Строка 6:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div><?php</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div><?php</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>public function yur_order_printable($order_id) {</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>public function yur_order_printable($order_id) {</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">        $objectsCollection = umiObjectsCollection::getInstance();</del></div></td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">    if </ins>(<ins class="diffchange diffchange-inline">!</ins>$order_id) {  </div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">        $object=$objectsCollection->getObject</del>($order_id)<del class="diffchange diffchange-inline">;</del></div></td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>         $<ins class="diffchange diffchange-inline">order_id </ins>= <ins class="diffchange diffchange-inline">getRequest</ins>('<ins class="diffchange diffchange-inline">param0</ins>');</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">        $orderId = $object->getId();</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">        $uri = "uobject://</del>{<del class="diffchange diffchange-inline">$orderId}/?transform=sys-tpls/emarket-invoice-printable.xsl";</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>         $<del class="diffchange diffchange-inline">result </del>= <del class="diffchange diffchange-inline">file_get_contents($uri);</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">        $buffer = outputBuffer::current();</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">        $buffer->charset</del>('<del class="diffchange diffchange-inline">utf-8</del>')<del class="diffchange diffchange-inline">;</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">        $buffer->contentType('text/html');</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">        $buffer->clear();</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">        $buffer->push($result);</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">        $buffer->end();</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">        return</del>;</div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>     }</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>     }</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">    $objectsCollection = umiObjectsCollection::getInstance();</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">    $object=$objectsCollection->getObject($order_id);</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">    $orderId = $object->getId();</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">    $uri = "uobject://{$orderId}/?transform=sys-tpls/emarket-invoice-printable.xsl";</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">    $result = file_get_contents($uri);</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">    $buffer = outputBuffer::current();</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">    $buffer->charset('utf-8');</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">    $buffer->contentType('text/html');</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">    $buffer->clear();</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">    $buffer->push($result);</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">    $buffer->end();</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">    return;</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">}</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>?></div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>?></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div></source></div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div></source></div></td></tr>
</table>
Alexei
https://wiki.umisoft.ru/index.php?title=%D0%A1%D1%81%D1%8B%D0%BB%D0%BA%D0%B0_%D0%BD%D0%B0_%D1%81%D1%87%D1%91%D1%82_%D0%B4%D0%BB%D1%8F_%D1%8E%D1%80%D0%B8%D0%B4%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85_%D0%BB%D0%B8%D1%86&diff=5279&oldid=prev
Mad grant в 09:25, 5 июня 2013
2013-06-05T09:25:09Z
<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="ru">
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">← Предыдущая</td>
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">Версия 09:25, 5 июня 2013</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l1" >Строка 1:</td>
<td colspan="2" class="diff-lineno">Строка 1:</td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">'''Актуально для версии 2.9'''</ins></div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>При оформлении заказа и выборе способа оплаты "Счёт для юридических лиц" после заполнения формы для данных юридического лица происходит редирект на счёт для юридических лиц, после этого его открыть повторно не получается. Для добавления возможности давать клиентам ссылку на выставленный счёт можно написать кастомный макрос и соответствующий шаблон для него.</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>При оформлении заказа и выборе способа оплаты "Счёт для юридических лиц" после заполнения формы для данных юридического лица происходит редирект на счёт для юридических лиц, после этого его открыть повторно не получается. Для добавления возможности давать клиентам ссылку на выставленный счёт можно написать кастомный макрос и соответствующий шаблон для него.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Откроем файл ~/classes/modules/emarket/__custom.php и сразу после строки "//TODO: Write here your own macroses" добавим код</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Откроем файл ~/classes/modules/emarket/__custom.php и сразу после строки "//TODO: Write here your own macroses" добавим код</div></td></tr>
<tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l265" >Строка 265:</td>
<td colspan="2" class="diff-lineno">Строка 267:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>теперь, достаточно в письме пользователю указать ссылку вида http://ваш_домен/emarket/yur_order_printable/id_заказа/.</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>теперь, достаточно в письме пользователю указать ссылку вида http://ваш_домен/emarket/yur_order_printable/id_заказа/.</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Категория:Модуль Интернет магазин]][[Категория:Написание кастомных макросов]]</div></td><td class='diff-marker'> </td><td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Категория:Модуль Интернет магазин]][[Категория:Написание кастомных макросов]]</div></td></tr>
<tr><td colspan="2"> </td><td class='diff-marker'>+</td><td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">[[Категория: Верстка в XSLT]]</ins></div></td></tr>
</table>
Mad grant
https://wiki.umisoft.ru/index.php?title=%D0%A1%D1%81%D1%8B%D0%BB%D0%BA%D0%B0_%D0%BD%D0%B0_%D1%81%D1%87%D1%91%D1%82_%D0%B4%D0%BB%D1%8F_%D1%8E%D1%80%D0%B8%D0%B4%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85_%D0%BB%D0%B8%D1%86&diff=4429&oldid=prev
Davidov: Новая страница: «При оформлении заказа и выборе способа оплаты "Счёт для юридических лиц" после заполнения …»
2013-02-08T10:25:28Z
<p>Новая страница: «При оформлении заказа и выборе способа оплаты "Счёт для юридических лиц" после заполнения …»</p>
<p><b>Новая страница</b></p><div>При оформлении заказа и выборе способа оплаты "Счёт для юридических лиц" после заполнения формы для данных юридического лица происходит редирект на счёт для юридических лиц, после этого его открыть повторно не получается. Для добавления возможности давать клиентам ссылку на выставленный счёт можно написать кастомный макрос и соответствующий шаблон для него.<br />
Откроем файл ~/classes/modules/emarket/__custom.php и сразу после строки "//TODO: Write here your own macroses" добавим код<br />
<source lang="php"><br />
<?php<br />
public function yur_order_printable($order_id) {<br />
$objectsCollection = umiObjectsCollection::getInstance();<br />
$object=$objectsCollection->getObject($order_id);<br />
$orderId = $object->getId();<br />
$uri = "uobject://{$orderId}/?transform=sys-tpls/emarket-invoice-printable.xsl";<br />
$result = file_get_contents($uri);<br />
$buffer = outputBuffer::current();<br />
$buffer->charset('utf-8');<br />
$buffer->contentType('text/html');<br />
$buffer->clear();<br />
$buffer->push($result);<br />
$buffer->end();<br />
return;<br />
}<br />
?><br />
</source><br />
Далее создадим в директории с XSLT шаблонами файл emarket-invoice-printable.xsl и поместим в него следующий код:<br />
<source lang="xml"><br />
<?xml version="1.0" encoding="utf-8"?><br />
<br />
<xsl:stylesheet version="1.0"<br />
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"<br />
xmlns:php="http://php.net/xsl"<br />
xsl:extension-element-prefixes="php"<br />
exclude-result-prefixes="php"><br />
<br />
<xsl:output encoding="utf-8" method="html" indent="yes"/><br />
<br />
<xsl:template match="/"><br />
<xsl:apply-templates /><br />
</xsl:template><br />
<br />
<xsl:template match="/udata/object"><br />
<xsl:variable name="person" select="document(concat('uobject://', //property[@name='legal_person']/value/item/@id))/udata/object" /><br />
<xsl:variable name="order-info" select="document(concat('udata://emarket/order/',@id))/udata" /><br />
<xsl:variable name="payment" select="document(concat('uobject://',properties/group/property[@name='payment_id']/value/item/@id))" /><br />
<xsl:variable name="delivery" select="properties/group[@name='order_delivery_props']" /><br />
<html><br />
<head><br />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><br />
<title><br />
<xsl:value-of select="@name" /><br />
</title><br />
<br />
<style type="text/css"><br />
table td {<br />
border: 1px solid black;<br />
}<br />
</style><br />
</head><br />
<body id="invoice"><br />
<div style="width:620px;"><!--hr/--><br />
</div><br />
<table bgcolor="#FFFFFF" width="620" height="1000" cellpadding="1" cellspacing="0" border="1"><br />
<tr align="left" valign="top" style="font-family:Arial;font-size:13px;"><br />
<td colspan="4"><br />
<u><br />
<b><br />
<xsl:value-of select="$payment//property[@name='name']/value" /><br />
</b><br />
</u><br />
<br/><br />
<br/><br />
<b>Адрес: <br />
<xsl:value-of select="$payment//property[@name='legal_address']/value" />, тел.: <br />
<xsl:value-of select="$payment//property[@name='phone_number']/value" /><br />
</b><br />
<br/><br />
<br/><br />
<table class="tbl" width="620" cellpadding="2" cellspacing="0" border="0" bordercolor="#000000" style="font-family:Arial;font-size:13px;"><br />
<tr><br />
<td width="175" align="left" valign="top">ИНН <br />
<xsl:value-of select="$payment//property[@name='inn']/value" /><br />
</td><br />
<td width="175" align="left" valign="top">КПП <br />
<xsl:value-of select="$payment//property[@name='kpp']/value" /><br />
</td><br />
<td width="54" align="center" valign="bottom" rowspan="2">Сч. №</td><br />
<td width="216" align="left" valign="bottom" rowspan="2"><br />
<xsl:value-of select="$payment//property[@name='account']/value" /><br />
</td><br />
</tr><br />
<tr><br />
<td width="350" align="left" valign="top" colspan="2"><br />
Получатель<br />
<br/><br />
<xsl:value-of select="$payment//property[@name='name']/value" /><br />
</td><br />
</tr><br />
<tr><br />
<td align="left" valign="top" rowspan="2" colspan="2"><br />
Банк получателя<br />
<br/><br />
<xsl:value-of select="$payment//property[@name='bank']/value" /><br />
<br />
</td><br />
<td align="center" valign="top">БИК</td><br />
<td align="left" valign="top" style="border-bottom-width:0px;"><br />
<xsl:value-of select="$payment//property[@name='bik']/value" /><br />
</td><br />
</tr><br />
<tr><br />
<td align="center" valign="top">Сч. №</td><br />
<td align="left" valign="top" style="border-top-width:0px;"><br />
<xsl:value-of select="$payment//property[@name='bank_account']/value" /><br />
</td><br />
</tr><br />
</table><br />
<br/><br />
<br/><br />
<center style="font:16 Arial;font-weight:bold;">СЧЕТ № И/<br />
<xsl:value-of select="/udata/object/@id" />/П от <br />
<xsl:value-of select="php:function('dateToString', number(//property[@name='order_date']/value/@unix-timestamp))" />.<br />
</center><br />
<br/><br />
<br/><br />
<table cellpadding="4" cellspacing="0" border="0" style="font-family:Arial;font-size:13px;"><br />
<tr><br />
<td><br />
Покупатель: ИНН <br />
<xsl:value-of select="$person//property[@name='inn']/value" /><br />
, КПП <br />
<xsl:value-of select="$person//property[@name='kpp']/value" /><br />
, <br />
<xsl:value-of select="$person//property[@name='name']/value" /><br />
, <br />
<xsl:value-of select="$person//property[@name='legal_address']/value" /><br />
, тел: <br />
<xsl:value-of select="$person//property[@name='phone_number']/value" /><br />
, факс: <br />
<xsl:value-of select="$person//property[@name='fax']/value" /><br />
</td><br />
</tr><br />
<tr><br />
<td><!--&nbsp;--><br />
</td><br />
</tr><br />
</table><br />
<table class="tbl" width="620" cellpadding="3" cellspacing="0" border="0" bordercolor="#000000" style="font-family:Arial;font-size:13px;"><br />
<tr><br />
<td width="20" align="center" valign="top">№</td><br />
<td width="300" align="left" valign="top">Товар</td><br />
<td width="65" align="left" valign="top">Кол-во</td><br />
<td width="65" align="left" valign="top">Ед.</td><br />
<td width="85" align="center" valign="top">Цена</td><br />
<td width="85" align="center" valign="top">Сумма</td><br />
</tr><br />
<br />
<xsl:apply-templates select="//property[@name='order_items']/value/item" mode="order-items" /><br />
<br />
<xsl:variable name="total_original_price" select="//property[@name='total_original_price']/value" /><br />
<xsl:variable name="total_price" select="//property[@name='total_price']/value" /><br />
<!--xsl:variable name="delivery" select="//property[@name='delivery_price']/value" /--><br />
<xsl:variable name="discount" select="$total_original_price + $delivery - $total_price" /><br />
<br />
<xsl:if test="$discount &gt; 0"><br />
<tr><br />
<td align="right" valign="top" colspan="5"><br />
<b>Скидка:</b><br />
</td><br />
<td align="right" valign="top"><br />
<xsl:value-of select="format-number($discount, '#.00')" /><br />
</td><br />
</tr><br />
</xsl:if><br />
<br />
<xsl:apply-templates select="//property[@name='delivery_price']/value" mode="delivery" /><br />
<br />
<tr><br />
<td align="right" valign="top" colspan="5"><br />
<b>Итого:</b><br />
</td><br />
<td align="right" valign="top"><br />
<xsl:value-of select="format-number(//property[@name='total_price']/value, '#.00')" /><br />
</td><br />
</tr><br />
<tr><br />
<td colspan="5" align="right" valign="top"><br />
<b>Без налога (НДС).</b><br />
</td><br />
<td align="center" valign="top">-</td><br />
</tr><br />
<tr><br />
<td colspan="5" align="right" valign="top"><br />
<b>Всего к оплате:</b><br />
</td><br />
<td align="right" valign="top"><br />
<xsl:value-of select="format-number(//property[@name='total_price']/value, '#.00')" /><br />
</td><br />
</tr><br />
</table><br />
<br/><br />
<br/><br />
<p style="font-family:Arial;font-size:13px;"><br />
Всего наименований <br />
<xsl:value-of select="//property[@name='total_amount']/value" />, на сумму <br />
<xsl:value-of select="format-number(//property[@name='total_price']/value, '#.00')" /> руб.<br />
<br/><br />
<b>(<br />
<xsl:value-of select="php:function('sumToString', number(//property[@name='total_price']/value))" />)<br />
</b><br />
</p><br />
<br />
<img><br />
<xsl:attribute name="src"><br />
<xsl:value-of select="$payment//property[@name='sign_image']/value" /><br />
</xsl:attribute><br />
</img><br />
</td><br />
</tr><br />
</table><br />
</body><br />
</html><br />
</xsl:template><br />
<br />
<xsl:template match="item" mode="order-items"><br />
<xsl:variable name="object" select="document(concat('uobject://', @id))/udata/object" /><br />
<tr><br />
<td width="20" align="center" valign="top"><br />
<xsl:value-of select="position()" /><br />
</td><br />
<td width="300" align="left" valign="top"><br />
<xsl:value-of select="$object/@name" /><br />
</td><br />
<td width="65" align="left" valign="top"><br />
<xsl:value-of select="$object//property[@name='item_amount']/value" /><br />
</td><br />
<td width="65" align="left" valign="top">шт.</td><br />
<td width="85" align="center" valign="top"><br />
<xsl:value-of select="format-number($object//property[@name='item_price']/value, '#.00')" /><br />
</td><br />
<td width="85" align="center" valign="top"><br />
<xsl:value-of select="format-number($object//property[@name='item_total_price']/value, '#.00')" /><br />
</td><br />
</tr><br />
</xsl:template><br />
<br />
<xsl:template match="value[.='0']" mode="delivery" /><br />
<xsl:template match="value" mode="delivery"><br />
<tr><br />
<td align="right" valign="top" colspan="5"><br />
<b>Доставка:</b><br />
</td><br />
<td align="right" valign="top"><br />
<xsl:value-of select="format-number(., '#.00')" /><br />
</td><br />
</tr><br />
</xsl:template><br />
<br />
</xsl:stylesheet><br />
</source><br />
<br />
Теперь, чтобы макрос мог исполнятся простыми пользователями, необходимо добавить соответствующую запись в файл permissions.custom.php в той же директории.<br />
<source lang="php"><br />
<?php<br />
$permissions = array('purchasing' => array(<br />
'yur_order_printable'<br />
));<br />
?><br />
</source><br />
теперь, достаточно в письме пользователю указать ссылку вида http://ваш_домен/emarket/yur_order_printable/id_заказа/.<br />
[[Категория:Модуль Интернет магазин]][[Категория:Написание кастомных макросов]]</div>
Davidov