<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>empty pages</title>
	
	<link>http://look-in.net</link>
	<description />
	<lastBuildDate>Tue, 15 Jun 2010 20:00:34 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/look-in/EmptyPages" /><feedburner:info uri="look-in/emptypages" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Prestashop: Изменения в базовых модулях</title>
		<link>http://feedproxy.google.com/~r/look-in/EmptyPages/~3/fg2XPB2MyDY/</link>
		<comments>http://look-in.net/2010/06/15/cart-lefcolumn-hook/#comments</comments>
		<pubDate>Tue, 15 Jun 2010 20:00:34 +0000</pubDate>
		<dc:creator>slookin</dc:creator>
				<category><![CDATA[WebDev]]></category>
		<category><![CDATA[projects]]></category>
		<category><![CDATA[module]]></category>
		<category><![CDATA[prestashop]]></category>

		<guid isPermaLink="false">http://look-in.net/?p=367</guid>
		<description><![CDATA[Для одного из сайтов понадобилось перенести несколько модулей из правой колонки в левую. (в частности blockcart &#8211; корзину покупателя)
В базовом функционале модули этого не делали.
Исправить просто, надо добавить регистрацию модуля для нового (левого) &#171;хука&#187; и переустановить модуль.
$this-&#62;registerHook('rightColumn')
Для двух модулей (корзина, и модуль скидок), я эти изменения сделал &#8211; можно скачать здесь.
blockcart.zip
blockspecials.zip
PS базировался на последней на [...]]]></description>
			<content:encoded><![CDATA[<p>Для одного из сайтов понадобилось перенести несколько модулей из правой колонки в левую. (в частности blockcart &#8211; корзину покупателя)</p>
<p>В базовом функционале модули этого не делали.</p>
<p><span id="more-367"></span>Исправить просто, надо добавить регистрацию модуля для нового (левого) &laquo;хука&raquo; и переустановить модуль.</p>
<pre>$this-&gt;registerHook('rightColumn')</pre>
<p>Для двух модулей (корзина, и модуль скидок), я эти изменения сделал &#8211; можно скачать здесь.</p>
<p><a href="http://look-in.net/wp-content/uploads/2010/06/blockcart.zip " target="_self">blockcart.zip</a><br />
<a href="http://look-in.net/wp-content/uploads/2010/06/blockcart.zip " target="_self">blockspecials.zip</a></p>
<p>PS базировался на последней на данный момент версии prestashop 1.3.1</p>
]]></content:encoded>
			<wfw:commentRss>http://look-in.net/2010/06/15/cart-lefcolumn-hook/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://look-in.net/2010/06/15/cart-lefcolumn-hook/</feedburner:origLink></item>
		<item>
		<title>SVN to RSS для Prestashop</title>
		<link>http://feedproxy.google.com/~r/look-in/EmptyPages/~3/38H6al2PsTg/</link>
		<comments>http://look-in.net/2010/06/09/svn-to-rss-prestashop/#comments</comments>
		<pubDate>Wed, 09 Jun 2010 17:16:30 +0000</pubDate>
		<dc:creator>slookin</dc:creator>
				<category><![CDATA[WebDev]]></category>
		<category><![CDATA[prestashop]]></category>
		<category><![CDATA[rss]]></category>
		<category><![CDATA[svn]]></category>

		<guid isPermaLink="false">http://look-in.net/?p=363</guid>
		<description><![CDATA[
Создал RSS поток для Prestashop SVN &#8211; дабы отслеживать все изменения в исходных кодах.
Добавить RSS
]]></description>
			<content:encoded><![CDATA[<p><a  href="http://svnfeed.com/convert?url=http%3A%2F%2Fsvn.prestashop.com%2Ftrunk&#038;x=21&#038;y=27"><img class="alignnone" title="RSS" src="http://svnfeed.com/images/rss_icon.gif" alt="" width="64" height="64" /></a></p>
<p>Создал RSS поток для Prestashop SVN &#8211; дабы отслеживать все изменения в исходных кодах.</p>
<p><a  href="http://svnfeed.com/convert?url=http%3A%2F%2Fsvn.prestashop.com%2Ftrunk&#038;x=21&#038;y=27" target="_blank">Добавить RSS</a></p>
]]></content:encoded>
			<wfw:commentRss>http://look-in.net/2010/06/09/svn-to-rss-prestashop/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://look-in.net/2010/06/09/svn-to-rss-prestashop/</feedburner:origLink></item>
		<item>
		<title>PrestaShop – обновление в безопасности. версия 1.3.1</title>
		<link>http://feedproxy.google.com/~r/look-in/EmptyPages/~3/nZBAGNUGNkI/</link>
		<comments>http://look-in.net/2010/06/07/important-security-update-prestashop-v-1-3-1/#comments</comments>
		<pubDate>Mon, 07 Jun 2010 18:29:25 +0000</pubDate>
		<dc:creator>slookin</dc:creator>
				<category><![CDATA[translation]]></category>
		<category><![CDATA[prestashop]]></category>

		<guid isPermaLink="false">http://look-in.net/?p=358</guid>
		<description><![CDATA[PrestaShop v.1.3.1 &#8211; Important security update
Внимание, обращаем внимание на новую версию prestashop.
При поддержке John JEAN из Wargan Solutions компании, что специализируется на компьютерной безопасности, мы нашли и исправили  несколько уязвимостей в коде которые затрагивает все версии prestashop (с v0.8 до v1.3). 


Крайне рекомендуется обновить ваш магазин PrestaShop для решения проблем с безопасностью:

Для обновления вы можете:
- [...]]]></description>
			<content:encoded><![CDATA[<h2>PrestaShop v.1.3.1 &#8211; Important security update</h2>
<p><strong>Внимание, обращаем внимание на новую версию prestashop.</strong></p>
<p>При поддержке John JEAN из <a  title="audit de sécurité informatique &amp; test d'intrusion informatique" href="http://www.wargan.com/" target="_blank">Wargan Solutions</a> компании, что специализируется на компьютерной безопасности, мы нашли и исправили  <span style="color: #800000;"><strong>несколько уязвимостей в коде которые затрагивает все версии prestashop (с v0.8 до v1.3). </strong></span></p>
<p><span style="color: #800000;"><strong><span id="more-358"></span><br />
</strong></span></p>
<p><strong><span style="color: #de1f61;"><span style="color: #800000;">Крайне рекомендуется обновить ваш магазин PrestaShop для решения проблем с безопасностью:</span><br />
</span></strong></p>
<p><strong>Для обновления вы можете:</strong></p>
<p>- Обновить PrestaShop новой версией 1.3.1.</p>
<p><strong>Эта версия идентична  1.3 (не включает исправления ошибок) и только проблемы безопасности исправлены</strong></p>
<p>или вы можете исправить уязвимости вручную:</p>
<p><strong> /!\ Не забудьте сделать копию своего магазина.</strong></p>
<p><strong>Файл:</strong> /config/smarty.config.inc.php<br />
где: в конце файла, перед &laquo;?&gt;&raquo;<br />
добавить: $smarty-&gt;register_modifier(&#8217;secureReferrer&#8217;, array(&#8216;Tools&#8217;, &#8217;secureReferrer&#8217;));</p>
<p><strong>Файл:</strong> /modules/paypalapi/error.tpl<br />
где: строка 13<br />
заменить : {$smarty.server.HTTP_REFERER}<br />
на : {$smarty.server.HTTP_REFERER|secureReferrer}</p>
<p><strong>Файл:</strong> /themes/prestashop/errors.tpl :<br />
где: строка 9<br />
заменить: {$smarty.server.HTTP_REFERER|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}<br />
на: {$smarty.server.HTTP_REFERER|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;|secureReferrer}</p>
<p><strong>Файл:</strong>/themes/prestashop/shopping-cart.tpl :<br />
где: строка 255<br />
заменить: {$smarty.server.HTTP_REFERER|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}<br />
на: {$smarty.server.HTTP_REFERER|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;|secureReferrer}</p>
<p><strong>Файл:</strong> /admin/login.php<br />
где: строка 67<br />
заменить:<br />
$cookie-&gt;passwd = $employee-&gt;passwd;<br />
$cookie-&gt;write();<br />
на:<br />
$cookie-&gt;passwd = $employee-&gt;passwd;<br />
$cookie-&gt;remote_addr = ip2long($_SERVER['REMOTE_ADDR']);<br />
$cookie-&gt;write();</p>
<p><strong>Файл:</strong> /admin/confirm.php<br />
где: строка 22<br />
заменить: $referer = rawurldecode(Tools::getValue(&#8216;referer&#8217;));<br />
на: $referer = Tools::htmlentitiesUTF8(rawurldecode(Tools::getValue(&#8216;referer&#8217;)));</p>
<p><strong>Файл:</strong> /classes/Tools.php<br />
где: строка 17<br />
После: &laquo;class Tools<br />
{&raquo;<br />
Добавить две новых функции:</p>
<p>/**<br />
* Get the server variable SERVER_NAME<br />
*<br />
* @param string $referrer URL referrer<br />
*/<br />
static function getServerName()<br />
{<br />
if (isset($_SERVER['HTTP_X_FORWARDED_SERVER']) AND $_SERVER['HTTP_X_FORWARDED_SERVER'])<br />
return $_SERVER['HTTP_X_FORWARDED_SERVER'];<br />
return $_SERVER['SERVER_NAME'];<br />
}</p>
<p>/**<br />
* Secure an URL referrer<br />
*<br />
* @param string $referrer URL referrer<br />
*/<br />
static public function secureReferrer($referrer)<br />
{<br />
if (preg_match(&#8216;/^http[s]?:\/\/&#8217;.self::getServerName().&#8217;\/.*$/Ui&#8217;, $referrer))<br />
return $referrer;<br />
return __PS_BASE_URI__;<br />
}</p>
<p><strong>Файл:</strong> /classes/Cookie.php<br />
где: строка 164<br />
Заменить функцию isLoggedBack() новой<br />
function isLoggedBack()<br />
{<br />
/* Employee is valid only if it can be load and if cookie password is the same as database one */<br />
if ($this-&gt;id_employee AND Validate::isUnsignedId($this-&gt;id_employee) AND<br />
Employee::checkPassword(intval($this-&gt;id_employee), $this-&gt;passwd) AND (!isset($this-&gt;_content['remote_addr']) OR<br />
$this-&gt;_content['remote_addr'] == ip2long($_SERVER['REMOTE_ADDR'])))<br />
return true;<br />
return false;<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://look-in.net/2010/06/07/important-security-update-prestashop-v-1-3-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://look-in.net/2010/06/07/important-security-update-prestashop-v-1-3-1/</feedburner:origLink></item>
		<item>
		<title>Обновился Prestashop – версия 1.3</title>
		<link>http://feedproxy.google.com/~r/look-in/EmptyPages/~3/MtIUNJb4Rcc/</link>
		<comments>http://look-in.net/2010/05/31/prestashop-v-1-3-release/#comments</comments>
		<pubDate>Mon, 31 May 2010 09:59:43 +0000</pubDate>
		<dc:creator>slookin</dc:creator>
				<category><![CDATA[WebDev]]></category>
		<category><![CDATA[translation]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[prestashop]]></category>

		<guid isPermaLink="false">http://look-in.net/?p=347</guid>
		<description><![CDATA[Новая стабильная версия PrestaShop.
Версия 1.3 обосновано названа наиболее завершенной, стабильной и профессиональной по сравнению с предыдущими версиями. Огромное количество оптимизаций было сделано, что бы максимизировать производительность и поддержку многоязычности. Эта версия включет множество рекомендаций от Open-Source сообщества. ]]></description>
			<content:encoded><![CDATA[<p><a  href="http://www.prestashop.com/en/downloads/" target="_blank"><img src="http://www.prestashop.com/download/media_kit/1.3/ban_13_en.jpg" alt="" /></a></p>
<h1>Новая стабильная версия PrestaShop</h1>
<p>Версия 1.3 обосновано названа наиболее завершенной, стабильной и профессиональной по сравнению с предыдущими версиями. Огромное количество оптимизаций было сделано, что бы максимизировать производительность и поддержку многоязычности. Эта версия включет множество рекомендаций от Open-Source сообщества. Версия доступна на трех языках: английский, испанский и французский.</p>
<p><span id="more-347"></span></p>
<p>Наряду с техническими улучшениями, так же было добавлено множество новых функций, добавлено более 200 технических, функциональных и графических расширений<strong>.</strong></p>
<p>Детальнее о добавлениях :</p>
<h2>Новые модули</h2>
<p>-	<strong><a  title="Moneybookers" href="http://www.prestashop.com/en/partner_moneybookers" target="_blank">Moneybookers</a>,</strong> платежи через  Moneybookers</p>
<p>- <strong><a  title="Hipay" href="http://www.prestashop.com/en/partner_hipay" target="_blank">Hipay</a></strong>, платежи через Hipay</p>
<p>- <strong><a  title="ReversoForm" href="http://www.prestashop.com/en/partner_reversoform" target="_blank">ReversoForm</a></strong>, автоматизирует заполнение форм</p>
<p>- <strong><a  title="Dejala" href="http://www.prestashop.com/en/partner_dejala" target="_blank">Dejala</a></strong>, доставка товара курьером (Испания и Франция)</p>
<p>- <strong>Product Tooltip</strong>: на странице товара показывает количество одновременных просмотров, дату последнего добавления в корзину и дату последней покупки</p>
<p>- <strong>Catalog Evaluation</strong>, для проверки каталога (описание, наличие изображений, товаров на складе)</p>
<p>- <strong>Cross Selling</strong>, модуль для кросс-продаж</p>
<h2>Новая функциональность и улучшения:</h2>
<p>-  Добавлен <strong>Испанский языка</strong> (инсталлятор, консоль управления, сайт)</p>
<p>-<strong> Система налогов переписана<br />
</strong></p>
<p>-<strong> Улучшена производительность базы (индексы)<br />
</strong></p>
<p>- Совместимость с PHP 5.3</p>
<p>- <strong>Улучшена производительность поиска</strong></p>
<p>- Улучшен модуль оплаты <strong><a  title="Paypal" href="http://www.prestashop.com/fr/partners/partner_paypal" target="_blank">Paypal</a></strong></p>
<p>-<strong> Улучшены компонены SEO, особенно для многоязычных сайтов<br />
</strong></p>
<p>- <strong>Добавлены правила налогов для новых территорий (Испания, Канада)</strong></p>
<p>- Улучшения в <strong>Google Checkout</strong> модуле</p>
<p>- Лучше совместимость со всеми интернет-браузерами</p>
<p>- Поисковые функции расширены на всю консоль управления</p>
<p>-  Новые статистические данные на первой странице консоли администрирования</p>
<p>- Автоматическое создание языка, при импортировании из .gzip файла</p>
<p>- И наборот, автоматическое предложение скачать gzip файл когда создается новый язык</p>
<p>- Возможность покупки модулей и тем напрямую из инсталлятора</p>
<p>- Возможность ограничения способов доставки по группам покупателей</p>
<p>- Возможность сохранить только необходимые таблицы в базе (выбор таблиц)</p>
<p>- На этапе установке уже можно выбрать страну по умолчанию</p>
<p>- Возможность фильтровать модули по доступности для страны по умолчанию.</p>
<p>- Отключение Ajax в  &laquo;search block&raquo;  если он не в &laquo;шапке&raquo; страницы</p>
<p>- Несколько новых &laquo;хуков&raquo; добавлено для консоли управления (backOfficeTop;  backOfficeFooter; header &#8230;)</p>
<p>- При создании модуля можно ограничить список стран, где он применим.</p>
<p><strong>Подробнее смотрите CHANGELOG &#8211; </strong><strong>других полезных изменений было сделано начиная с версии 1.2.5:</strong></p>
<p><em>&laquo;Нашей целью является непрерывно улучшать PrestaShop для предоставления продавцам электронной </em><em>онлайн-</em><em>коммерции  полной,  функциональной и подходящие к их потребностям, с учетом их ограничений </em><em>платформы </em><em>.  PrestaShop модульное и гибкое решение для удовлетворения </em><em>потребностей </em><em>всех стран  и всех видов деятельности. &raquo; </em>Говорит соучредитель PrestaShop  &#8211; Igor Schlumberger.</p>
<p><em> </em></p>
<h2>Новые партнеры</h2>
<p><strong>Выпуск PrestaShop v.1.3 это возможность еще раз рассказать про наших новых партнеров</strong> &#8211; курпнsх игроков на рынке безопасных платежей, <a  title="Moneybookers " href="http://www.prestashop.com/en/partner_moneybookers" target="_blank">Moneybookers </a>и <a  title="Hipay " href="http://www.prestashop.com/en/partner_hipay" target="_blank">Hipay </a>(Hi-media  group) присоединились к уже работающим в нашем решении <a  title="Paypal " href="http://www.prestashop.com/en/partner_paypal" target="_blank">Paypal </a>and Google Checkout.</p>
<p><a  title="Moneybookers " href="http://www.prestashop.com/en/partner_moneybookers" target="_blank">Moneybookers</a> один из крупнейших европейский поставщик услуг по проведению on-line платежей в более чем 200 странах,  в 42 валютах, и в более чем  100 способов оплаты;<a  title=" Hi-Media" href="http://www.prestashop.com/en/partner_hipay" target="_blank"> Hi-Media</a> является одним из самых крупных сайтов издателей и занимает позицию лидера  европейского рынка интерактивной рекламы и электронных платежей.</p>
<p>Французские участники рынка электронной коммерции так же будут обрадованы появлением интеграции с сервисом  <a  title="ReversoForm" href="http://www.prestashop.com/en/partner_reversoform" target="_blank">ReversoForm</a>, системы заполнения форм базируясь на каталоге телефонных номеров.</p>
<p><em>«Это партнерство позволит продавцам предлагать несколько вариантов  взаимодействия их PrestaShop магазином,  и откроет новые перспективы для  бизнеса и маркетинга.&raquo;</em> Сказал Bruno Lévêque, PrestaShop CEO.</p>
]]></content:encoded>
			<wfw:commentRss>http://look-in.net/2010/05/31/prestashop-v-1-3-release/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://look-in.net/2010/05/31/prestashop-v-1-3-release/</feedburner:origLink></item>
		<item>
		<title>Поддержка товаров с ценой «по запросу». prestashop.</title>
		<link>http://feedproxy.google.com/~r/look-in/EmptyPages/~3/G37-CFU4eNA/</link>
		<comments>http://look-in.net/2010/04/11/podderzhka-tovarov-s-tsenoy-po-zaprosu-prestashop/#comments</comments>
		<pubDate>Sun, 11 Apr 2010 09:35:36 +0000</pubDate>
		<dc:creator>slookin</dc:creator>
				<category><![CDATA[WebDev]]></category>
		<category><![CDATA[projects]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[prestashop]]></category>
		<category><![CDATA[smarty]]></category>

		<guid isPermaLink="false">http://look-in.net/?p=338</guid>
		<description><![CDATA[
В магазине wo-da.ru появилась необходимость корректно отображать товары, цена на которые не известна на данный момент, и требует согласования по телефону. (Это особенность дистрибьютерского бизнеса для дорогих артикулов).
Дабы минимизировать изменения в коде prestashop было решено:
1) для товаров цена накоторые неизвестна  ставить цену 0 (у нас нет бесплатных товаров, поэтому нету и конфликтов)
2) для тех товаров [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="size-full wp-image-342  aligncenter" style="margin-top: 20px; margin-bottom: 20px;" title="Prestashop. Товар под заказ" src="http://look-in.net/wp-content/uploads/2010/04/screen.png" alt="" width="540" height="151" /></p>
<p>В магазине <a  href="http://wo-da.ru" target="_blank">wo-da.ru</a> появилась необходимость корректно отображать товары, цена на которые не известна на данный момент, и требует согласования по телефону. (Это особенность дистрибьютерского бизнеса для дорогих артикулов).</p>
<p>Дабы минимизировать изменения в коде prestashop было решено:</p>
<p>1) для товаров цена накоторые неизвестна  ставить цену <span style="color: #ff0000;">0</span> (у нас нет бесплатных товаров, поэтому нету и конфликтов)</p>
<p>2) для тех товаров у которых цена<span style="color: #ff0000;"> 0</span> &#8211; в шаблонах сделать допольнительную обработку и не отображать цену и кнопку &laquo;добавить в корзину&raquo;.</p>
<p><span id="more-338"></span>измененные файлы:</p>
<p>product-list.tpl</p>
<pre>{if isset($products)}
 &lt;!-- Products list --&gt;
 &lt;ul id="product_list"&gt;
 {foreach from=$products item=product name=products}
 &lt;li&gt;
 &lt;div&gt;
 &lt;span&gt;{if ($product.allow_oosp OR $product.quantity &gt; 0)}{l s='Available'}{else}{l s='Out of stock'}{/if}&lt;/span&gt;
 &lt;a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.name|escape:'htmlall':'UTF-8'}"&gt;&lt;img src="{$link-&gt;getImageLink($product.link_rewrite, $product.id_image, 'home')}" alt="{$product.legend|escape:'htmlall':'UTF-8'}" /&gt;&lt;/a&gt;
 &lt;h3&gt;{if $product.new == 1}&lt;span&gt;{l s='new'}&lt;/span&gt;{/if}&lt;a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.legend|escape:'htmlall':'UTF-8'}"&gt;{$product.name|truncate:35:'...'|escape:'htmlall':'UTF-8'}&lt;/a&gt;&lt;/h3&gt;
 &lt;p&gt;&lt;a href="{$product.link|escape:'htmlall':'UTF-8'}"&gt;{$product.description_short|strip_tags:'UTF-8'|truncate:360:'...'}&lt;/a&gt;&lt;/p&gt;
 &lt;/div&gt;
 &lt;div&gt;
 {if $product.on_sale}
 &lt;span&gt;{l s='On sale!'}&lt;/span&gt;
 {elseif ($product.reduction_price != 0 || $product.reduction_percent != 0) &amp;&amp; ($product.reduction_from == $product.reduction_to OR ($smarty.now|date_format:'%Y-%m-%d' &lt;= $product.reduction_to &amp;&amp; $smarty.now|date_format:'%Y-%m-%d' &gt;= $product.reduction_from))}
 &lt;span&gt;{l s='Price lowered!'}&lt;/span&gt;
 {/if}
 <span style="color: #ff0000;">{if $product.price!=0}
</span> {if !$priceDisplay || $priceDisplay == 2}&lt;div&gt;&lt;span style="display: inline;"&gt;{convertPrice price=$product.price}&lt;/span&gt;{if $priceDisplay == 2} {l s='+Tx'}{/if}&lt;/div&gt;{/if}
 {if $priceDisplay}&lt;div&gt;&lt;span style="display: inline;"&gt;{convertPrice price=$product.price_tax_exc}&lt;/span&gt;{if $priceDisplay == 2} {l s='-Tx'}{/if}&lt;/div&gt;{/if}
 {if ($product.allow_oosp OR $product.quantity &gt; 0) &amp;&amp; $product.customizable != 2}
 &lt;a rel="ajax_id_product_{$product.id_product|intval}" href="{$base_dir}cart.php?add&amp;amp;id_product={$product.id_product|intval}&amp;amp;token={$static_token}"&gt;{l s='Add to cart'}&lt;/a&gt;
 {else}
 &lt;span&gt;{l s='Add to cart'}&lt;/span&gt;
 {/if}
 <span style="color: #ff0000;">{else}
 &lt;div&gt;&lt;span style="display: inline;"&gt;{l s='Advance order'}&lt;/span&gt;&lt;/div&gt;
 &lt;div&gt;&lt;span &gt;{l s='Call by phone'}&lt;/span&gt;&lt;/div&gt;                         �
 {/if}
</span>
 &lt;a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{l s='View'}"&gt;{l s='View'}&lt;/a&gt;
 &lt;/div&gt;
 &lt;br/&gt;
 &lt;/li&gt;
 {/foreach}
 &lt;/ul&gt;
 &lt;!-- /Products list --&gt;
{/if}</pre>
<p>product.tpl</p>
<pre>{include file=$tpl_dir./errors.tpl}
{if $errors|@count == 0}
&lt;script type="text/javascript"&gt;
// &lt;![CDATA[

// PrestaShop internal settings
var currencySign = '{$currencySign|html_entity_decode:2:"UTF-8"}';
var currencyRate = '{$currencyRate|floatval}';
var currencyFormat = '{$currencyFormat|intval}';
var currencyBlank = '{$currencyBlank|intval}';
var taxRate = {$product-&gt;tax_rate|floatval};
var jqZoomEnabled = {if $jqZoomEnabled}true{else}false{/if};

//JS Hook
var oosHookJsCodeFunctions = new Array();

// Parameters
var id_product = '{$product-&gt;id|intval}';
var productHasAttributes = {if isset($groups)}true{else}false{/if};
var quantitiesDisplayAllowed = {if $display_qties == 1}true{else}false{/if};
var quantityAvailable = {if $display_qties == 1 &amp;&amp; $product-&gt;quantity}{$product-&gt;quantity}{else}0{/if};
var allowBuyWhenOutOfStock = {if $allow_oosp == 1}true{else}false{/if};
var availableNowValue = '{$product-&gt;available_now|escape:'quotes':'UTF-8'}';
var availableLaterValue = '{$product-&gt;available_later|escape:'quotes':'UTF-8'}';
var productPriceWithoutReduction = {$product-&gt;getPriceWithoutReduct()|default:'null'};
var reduction_percent = {if $product-&gt;reduction_percent}{$product-&gt;reduction_percent}{else}0{/if};
var reduction_price = {if $product-&gt;reduction_percent}0{else}{$product-&gt;getPrice(true, $smarty.const.NULL, 2, $smarty.const.NULL, true)}{/if};
var reduction_from = '{$product-&gt;reduction_from}';
var reduction_to = '{$product-&gt;reduction_to}';
var group_reduction = '{$group_reduction}';
var default_eco_tax = {$product-&gt;ecotax};
var currentDate = '{$smarty.now|date_format:'%Y-%m-%d'}';
var maxQuantityToAllowDisplayOfLastQuantityMessage = {$last_qties};
var noTaxForThisProduct = {if $no_tax == 1}true{else}false{/if};
var displayPrice = {$priceDisplay};

// Customizable field
var img_ps_dir = '{$img_ps_dir}';
var customizationFields = new Array();
{assign var='imgIndex' value=0}
{assign var='textFieldIndex' value=0}
{foreach from=$customizationFields item='field' name='customizationFields'}
{assign var='key' value='pictures_'|cat:$product-&gt;id|cat:'_'|cat:$field.id_customization_field}
	customizationFields[{$smarty.foreach.customizationFields.index|intval}] = new Array();
	customizationFields[{$smarty.foreach.customizationFields.index|intval}][0] = '{if $field.type|intval == 0}img{$imgIndex++}{else}textField{$textFieldIndex++}{/if}';
	customizationFields[{$smarty.foreach.customizationFields.index|intval}][1] = {if $field.type|intval == 0 AND $pictures.$key}2{else}{$field.required|intval}{/if};
{/foreach}

// Images
var img_prod_dir = '{$img_prod_dir}';
var combinationImages = new Array();
{foreach from=$combinationImages item='combination' key='combinationId' name='f_combinationImages'}
combinationImages[{$combinationId}] = new Array();
{foreach from=$combination item='image' name='f_combinationImage'}
combinationImages[{$combinationId}][{$smarty.foreach.f_combinationImage.index}] = {$image.id_image|intval};
{/foreach}
{/foreach}

combinationImages[0] = new Array();
{foreach from=$images item='image' name='f_defaultImages'}
combinationImages[0][{$smarty.foreach.f_defaultImages.index}] = {$image.id_image};
{/foreach}

// Translations
var doesntExist = '{l s='The product does not exist in this model. Please choose another.' js=1}';
var doesntExistNoMore = '{l s='This product is no longer in stock' js=1}';
var doesntExistNoMoreBut = '{l s='with those attributes but is available with others' js=1}';
var uploading_in_progress = '{l s='Uploading in progress, please wait...' js=1}';
var fieldRequired = '{l s='Please fill all required fields' js=1}';

{if isset($groups)}
	// Combinations
	{foreach from=$combinations key=idCombination item=combination}
		addCombination({$idCombination|intval}, new Array({$combination.list}), {$combination.quantity}, {$combination.price}, {$combination.ecotax}, {$combination.id_image}, '{$combination.reference|addslashes}');
	{/foreach}
	// Colors
	{if $colors|@count &gt; 0}
		{if $product-&gt;id_color_default}var id_color_default = {$product-&gt;id_color_default|intval};{/if}
	{/if}
{/if}

//]]&gt;
&lt;/script&gt;

{include file=$tpl_dir./breadcrumb.tpl}

&lt;div id="primary_block"&gt;

	&lt;h2&gt;{$product-&gt;name|escape:'htmlall':'UTF-8'}&lt;/h2&gt;
	{if $confirmation}
	&lt;p class="confirmation"&gt;
		{$confirmation}
	&lt;/p&gt;
	{/if}

	&lt;!-- right infos--&gt;
	&lt;div id="pb-right-column"&gt;
		&lt;!-- product img--&gt;
		&lt;div id="image-block"&gt;
		{if $have_image}
				&lt;img src="{$link-&gt;getImageLink($product-&gt;link_rewrite, $cover.id_image, 'large')}" {if $jqZoomEnabled}class="jqzoom" alt="{$link-&gt;getImageLink($product-&gt;link_rewrite, $cover.id_image, 'thickbox')}"{else} title="{$product-&gt;name|escape:'htmlall':'UTF-8'}" alt="{$product-&gt;name|escape:'htmlall':'UTF-8'}" {/if} id="bigpic"/&gt;
		{else}
			&lt;img src="{$img_prod_dir}{$lang_iso}-default-large.jpg" alt="" title="{$product-&gt;name|escape:'htmlall':'UTF-8'}" /&gt;
		{/if}
		&lt;/div&gt;

		{if count($images) &gt; 0}
		&lt;!-- thumbnails --&gt;
		&lt;div id="views_block" {if count($images) &lt; 2}class="hidden"{/if}&gt;
		{if count($images) &gt; 3}&lt;span class="view_scroll_spacer"&gt;&lt;a id="view_scroll_left" class="hidden" title="{l s='Other views'}" href="javascript:{ldelim}{rdelim}"&gt;{l s='Previous'}&lt;/a&gt;&lt;/span&gt;{/if}
		&lt;div id="thumbs_list"&gt;
			&lt;ul style="width: {math equation="width * nbImages" width=80 nbImages=$images|@count}px" id="thumbs_list_frame"&gt;
				{foreach from=$images item=image name=thumbnails}
				{assign var=imageIds value=`$product-&gt;id`-`$image.id_image`}
				&lt;li id="thumbnail_{$image.id_image}"&gt;
					&lt;a href="{$link-&gt;getImageLink($product-&gt;link_rewrite, $imageIds, 'thickbox')}" rel="other-views" class="{if !$jqZoomEnabled}thickbox{/if} {if $smarty.foreach.thumbnails.first}shown{/if}" title="{$image.legend|htmlspecialchars}"&gt;
						&lt;img id="thumb_{$image.id_image}" src="{$link-&gt;getImageLink($product-&gt;link_rewrite, $imageIds, 'medium')}" alt="{$image.legend|htmlspecialchars}" height="{$mediumSize.height}" width="{$mediumSize.width}" /&gt;
					&lt;/a&gt;
				&lt;/li&gt;
				{/foreach}
			&lt;/ul&gt;
		&lt;/div&gt;
		{if count($images) &gt; 3}&lt;a id="view_scroll_right" title="{l s='Other views'}" href="javascript:{ldelim}{rdelim}"&gt;{l s='Next'}&lt;/a&gt;{/if}
		&lt;/div&gt;
		{/if}
		{if count($images) &gt; 1}&lt;p class="align_center clear"&gt;&lt;a id="resetImages" href="{$link-&gt;getProductLink($product)}" onclick="return (false);"&gt;{l s='Display all pictures'}&lt;/a&gt;&lt;/p&gt;{/if}
		&lt;!-- usefull links--&gt;
		&lt;ul id="usefull_link_block"&gt;
			{if $HOOK_EXTRA_LEFT}{$HOOK_EXTRA_LEFT}{/if}
			&lt;li&gt;&lt;a href="javascript:print();"&gt;{l s='Print'}&lt;/a&gt;&lt;br class="clear" /&gt;&lt;/li&gt;
			{if $have_image &amp;&amp; !$jqZoomEnabled}
			&lt;li&gt;&lt;span id="view_full_size" class="span_link"&gt;{l s='View full size'}&lt;/span&gt;&lt;/li&gt;
			{/if}
		&lt;/ul&gt;
	&lt;/div&gt;

	&lt;!-- left infos--&gt;
	&lt;div id="pb-left-column"&gt;
		{if $product-&gt;description_short OR $packItems|@count &gt; 0}
		&lt;div id="short_description_block"&gt;
			{if $product-&gt;description_short}
				&lt;div id="short_description_content" class="rte align_justify"&gt;{$product-&gt;description_short}&lt;/div&gt;
			{/if}
			{if $product-&gt;description}
			&lt;p class="buttons_bottom_block"&gt;&lt;a href="javascript:{ldelim}{rdelim}" class="button"&gt;{l s='More details'}&lt;/a&gt;&lt;/p&gt;
			{/if}
			{if $packItems|@count &gt; 0}
				&lt;h3&gt;{l s='Pack content'}&lt;/h3&gt;
				{foreach from=$packItems item=packItem}
					&lt;div class="pack_content"&gt;
						{$packItem.pack_quantity} x &lt;a href="{$link-&gt;getProductLink($packItem.id_product, $packItem.link_rewrite, $packItem.category)}"&gt;{$packItem.name|escape:'htmlall':'UTF-8'}&lt;/a&gt;
						&lt;p&gt;{$packItem.description_short}&lt;/p&gt;
					&lt;/div&gt;
				{/foreach}
			{/if}
		&lt;/div&gt;
		{/if}

		{if $colors}
		&lt;!-- colors --&gt;
		&lt;div id="color_picker"&gt;
			&lt;p&gt;{l s='Pick a color:' js=1}&lt;/p&gt;
			&lt;div class="clear"&gt;&lt;/div&gt;
			&lt;ul id="color_to_pick_list"&gt;
			{foreach from=$colors key='id_attribute' item='color'}
				&lt;li&gt;&lt;a id="color_{$id_attribute|intval}" class="color_pick" style="background: {$color.value};" onclick="updateColorSelect({$id_attribute|intval});"&gt;{if file_exists($col_img_dir|cat:$id_attribute|cat:'.jpg')}&lt;img src="{$img_col_dir}{$id_attribute}.jpg" alt="" title="{$color.name}" /&gt;{/if}&lt;/a&gt;&lt;/li&gt;
			{/foreach}
			&lt;/ul&gt;
				&lt;a id="color_all" onclick="updateColorSelect(0);"&gt;&lt;img src="{$img_dir}icon/cancel.gif" alt="" title="{$color.name}" /&gt;&lt;/a&gt;
			&lt;div class="clear"&gt;&lt;/div&gt;
		&lt;/div&gt;
		{/if}

		&lt;!-- add to cart form--&gt;
		<span style="color: #ff0000;">{if $product-&gt;getPrice(true, $smarty.const.NULL, 2)!=0}</span>
		&lt;form id="buy_block" action="{$base_dir}cart.php" method="post"&gt;

			&lt;!-- hidden datas --&gt;
			&lt;p class="hidden"&gt;
				&lt;input type="hidden" name="token" value="{$static_token}" /&gt;
				&lt;input type="hidden" name="id_product" value="{$product-&gt;id|intval}" id="product_page_product_id" /&gt;
				&lt;input type="hidden" name="add" value="1" /&gt;
				&lt;input type="hidden" name="id_product_attribute" id="idCombination" value="" /&gt;
			&lt;/p&gt;

			&lt;!-- prices --&gt;
			&lt;p class="price"&gt;
				{if $product-&gt;on_sale}
					&lt;img src="{$img_dir}onsale_{$lang_iso}.gif" alt="{l s='On sale'}" class="on_sale_img"/&gt;
					&lt;span class="on_sale"&gt;{l s='On sale!'}&lt;/span&gt;
				{elseif ($product-&gt;reduction_price != 0 || $product-&gt;reduction_percent != 0) &amp;&amp; ($product-&gt;reduction_from == $product-&gt;reduction_to OR ($smarty.now|date_format:'%Y-%m-%d' &lt;= $product-&gt;reduction_to &amp;&amp; $smarty.now|date_format:'%Y-%m-%d' &gt;= $product-&gt;reduction_from))}
					&lt;span class="discount"&gt;{l s='Price lowered!'}&lt;/span&gt;
				{/if}
				&lt;br /&gt;
				&lt;span class="our_price_display"&gt;
				{if !$priceDisplay || $priceDisplay == 2}
					&lt;span id="our_price_display"&gt;{convertPrice price=$product-&gt;getPrice(true, $smarty.const.NULL, 2)}&lt;/span&gt;
						{l s='tax incl.'}
				{/if}
				{if $priceDisplay == 1}
					&lt;span id="our_price_display"&gt;{convertPrice price=$product-&gt;getPrice(false, $smarty.const.NULL, 2)}&lt;/span&gt;
						{l s='tax excl.'}
				{/if}
				&lt;/span&gt;
				{if $priceDisplay == 2}
					&lt;br /&gt;
					&lt;span id="pretaxe_price"&gt;&lt;span id="pretaxe_price_display"&gt;{convertPrice price=$product-&gt;getPrice(false, $smarty.const.NULL, 2)}&lt;/span&gt;&amp;nbsp;{l s='tax excl.'}&lt;/span&gt;
				{/if}
				&lt;br /&gt;
			&lt;/p&gt;
			{if ($product-&gt;reduction_price != 0 || $product-&gt;reduction_percent != 0) &amp;&amp; ($product-&gt;reduction_from == $product-&gt;reduction_to OR ($smarty.now|date_format:'%Y-%m-%d' &lt;= $product-&gt;reduction_to &amp;&amp; $smarty.now|date_format:'%Y-%m-%d' &gt;= $product-&gt;reduction_from))}
				&lt;p id="old_price"&gt;&lt;span class="bold"&gt;
				{if !$priceDisplay || $priceDisplay == 2}
					&lt;span id="old_price_display"&gt;{convertPrice price=$product-&gt;getPriceWithoutReduct()}&lt;/span&gt;
						{l s='tax incl.'}
				{/if}
				{if $priceDisplay == 1}
					&lt;span id="old_price_display"&gt;{convertPrice price=$product-&gt;getPriceWithoutReduct(true)}&lt;/span&gt;
						{l s='tax excl.'}
				{/if}
				&lt;/span&gt;
				&lt;/p&gt;
			{/if}
			{if $product-&gt;reduction_percent != 0 &amp;&amp; ($product-&gt;reduction_from == $product-&gt;reduction_to OR ($smarty.now|date_format:'%Y-%m-%d' &lt;= $product-&gt;reduction_to &amp;&amp; $smarty.now|date_format:'%Y-%m-%d' &gt;= $product-&gt;reduction_from))}
				&lt;p id="reduction_percent"&gt;{l s='(price reduced by'} &lt;span id="reduction_percent_display"&gt;{$product-&gt;reduction_percent|floatval}&lt;/span&gt; %{l s=')'}&lt;/p&gt;
			{/if}
			{if $packItems|@count}
				&lt;p class="pack_price"&gt;{l s='instead of'} &lt;span style="text-decoration: line-through;"&gt;{convertPrice price=$product-&gt;getNoPackPrice()}&lt;/span&gt;&lt;/p&gt;
				&lt;br class="clear" /&gt;
			{/if}
			{if $product-&gt;ecotax != 0}
				&lt;p class="price-ecotax"&gt;{l s='include'} &lt;span id="ecotax_price_display"&gt;{convertPrice price=$product-&gt;ecotax}&lt;/span&gt; {l s='for green tax'}&lt;/p&gt;
			{/if}

			{if isset($groups)}

			&lt;!-- attributes --&gt;
			&lt;div id="attributes"&gt;
			{foreach from=$groups key=id_attribute_group item=group}
			&lt;p&gt;
				&lt;label for="group_{$id_attribute_group|intval}"&gt;{$group.name|escape:'htmlall':'UTF-8'} :&lt;/label&gt;
				{assign var='groupName' value='group_'|cat:$id_attribute_group}
				&lt;select name="{$groupName}" id="group_{$id_attribute_group|intval}" onchange="javascript:findCombination();"&gt;
					{foreach from=$group.attributes key=id_attribute item=group_attribute}
						&lt;option value="{$id_attribute|intval}"{if (isset($smarty.get.$groupName) &amp;&amp; $smarty.get.$groupName|intval == $id_attribute) || $group.default == $id_attribute} selected="selected"{/if}&gt;{$group_attribute|escape:'htmlall':'UTF-8'}&lt;/option&gt;
					{/foreach}
				&lt;/select&gt;
			&lt;/p&gt;
			{/foreach}
			&lt;/div&gt;
			{/if}

			{if $product-&gt;reference}&lt;p id="product_reference" {if isset($groups)}style="display:none;"{/if}&gt;&lt;label for="product_reference"&gt;{l s='Reference :'} &lt;/label&gt;&lt;span class="editable"&gt;{$product-&gt;reference|escape}&lt;/span&gt;&lt;/p&gt;{/if}

			&lt;!-- quantity wanted --&gt;
			&lt;p id="quantity_wanted_p"{if (!$allow_oosp &amp;&amp; $product-&gt;quantity == 0) || $virtual} style="display:none;"{/if}&gt;
				&lt;label&gt;{l s='Quantity :'}&lt;/label&gt;
				&lt;input type="text" name="qty" id="quantity_wanted" class="text" value="{if isset($quantityBackup)}{$quantityBackup|intval}{else}1{/if}" size="2" maxlength="3" /&gt;
			&lt;/p&gt;

			&lt;!-- availability --&gt;
			&lt;p id="availability_statut"{if ($allow_oosp &amp;&amp; $product-&gt;quantity == 0 &amp;&amp; !$product-&gt;available_later) || (!$product-&gt;available_now &amp;&amp; $display_qties != 1) } style="display:none;"{/if}&gt;
				&lt;span id="availability_label"&gt;{l s='Availability:'}&lt;/span&gt;
				&lt;span id="availability_value"{if $product-&gt;quantity == 0} class="warning-inline"{/if}&gt;
					{if $product-&gt;quantity == 0}{if $allow_oosp}{$product-&gt;available_later}{else}{l s='This product is no longer in stock'}{/if}{else}{$product-&gt;available_now}{/if}
				&lt;/span&gt;
			&lt;/p&gt;

			&lt;!-- number of item in stock --&gt;
			&lt;p id="pQuantityAvailable"{if $display_qties != 1 || ($allow_oosp &amp;&amp; $product-&gt;quantity == 0)} style="display:none;"{/if}&gt;
				&lt;span id="quantityAvailable"&gt;{$product-&gt;quantity|intval}&lt;/span&gt;
				&lt;span{if $product-&gt;quantity &gt; 1} style="display:none;"{/if} id="quantityAvailableTxt"&gt;{l s='item in stock'}&lt;/span&gt;
				&lt;span{if $product-&gt;quantity &lt; 2} style="display:none;"{/if} id="quantityAvailableTxtMultiple"&gt;{l s='items in stock'}&lt;/span&gt;
			&lt;/p&gt;

			&lt;!-- Out of stock hook --&gt;
			&lt;p id="oosHook"{if $product-&gt;quantity &gt; 0} style="display:none;"{/if}&gt;
				{$HOOK_PRODUCT_OOS}
			&lt;/p&gt;

			&lt;p class="warning-inline" id="last_quantities"{if ($product-&gt;quantity &gt; $last_qties || $product-&gt;quantity == 0) || $allow_oosp} style="display:none;"{/if} &gt;{l s='Warning: Last items in stock!'}&lt;/p&gt;

			&lt;p{if !$allow_oosp &amp;&amp; $product-&gt;quantity == 0} style="display:none;"{/if} id="add_to_cart" class="buttons_bottom_block"&gt;&lt;input type="submit" name="Submit" value="{l s='Add to cart'}" class="exclusive" /&gt;&lt;/p&gt;
			{if $HOOK_PRODUCT_ACTIONS}
				{$HOOK_PRODUCT_ACTIONS}
			{/if}
		&lt;/form&gt;
				<span style="color: #ff0000;">{else}
				&lt;div&gt;&lt;span class="price" style="display: inline;"&gt;{l s='Advance order'}&lt;/span&gt;&lt;/div&gt;
				&lt;div&gt;&lt;span class="price-comments" &gt;{l s='Call by phone'}&lt;/span&gt;&lt;/div&gt;
				{/if}</span>

		{if $HOOK_EXTRA_RIGHT}{$HOOK_EXTRA_RIGHT}{/if}
	&lt;/div&gt;
&lt;/div&gt;
&lt;br class="clear" /&gt;

{if $quantity_discounts}
&lt;!-- quantity discount --&gt;
&lt;ul class="idTabs"&gt;
	&lt;li&gt;&lt;a style="cursor: pointer"&gt;{l s='Quantity discount'}&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div id="quantityDiscount"&gt;
	&lt;table class="std"&gt;
			&lt;tr&gt;
				{foreach from=$quantity_discounts item='quantity_discount' name='quantity_discounts'}
				&lt;th&gt;{$quantity_discount.quantity|intval}
				{if $quantity_discount.quantity|intval &gt; 1}
					{l s='quantities'}
				{else}
					{l s='quantity'}
				{/if}
				&lt;/th&gt;
				{/foreach}
			&lt;/tr&gt;
			&lt;tr&gt;
				{foreach from=$quantity_discounts item='quantity_discount' name='quantity_discounts'}
				&lt;td&gt;
				{if $quantity_discount.id_discount_type|intval == 1}
					-{$quantity_discount.value|floatval}%
				{else}
					-{convertPrice price=$quantity_discount.value|floatval}
				{/if}
				&lt;/td&gt;
				{/foreach}
			&lt;/tr&gt;
	&lt;/table&gt;
&lt;/div&gt;
{/if}

{$HOOK_PRODUCT_FOOTER}

&lt;!-- description and features --&gt;
{if $product-&gt;description || $features || $accessories || $HOOK_PRODUCT_TAB || $attachments}
&lt;div id="more_info_block" class="clear"&gt;
	&lt;ul id="more_info_tabs" class="idTabs idTabsShort"&gt;
		{if $product-&gt;description}&lt;li&gt;&lt;a id="more_info_tab_more_info" href="#idTab1"&gt;{l s='More info'}&lt;/a&gt;&lt;/li&gt;{/if}
		{if $features}&lt;li&gt;&lt;a id="more_info_tab_data_sheet" href="#idTab2"&gt;{l s='Data sheet'}&lt;/a&gt;&lt;/li&gt;{/if}
		{if $attachments}&lt;li&gt;&lt;a id="more_info_tab_attachments" href="#idTab9"&gt;{l s='Download'}&lt;/a&gt;&lt;/li&gt;{/if}
		{if isset($accessories) AND $accessories}&lt;li&gt;&lt;a href="#idTab4"&gt;{l s='Accessories'}&lt;/a&gt;&lt;/li&gt;{/if}
		{$HOOK_PRODUCT_TAB}
	&lt;/ul&gt;
	&lt;div id="more_info_sheets" class="sheets align_justify"&gt;
	{if $product-&gt;description}
		&lt;!-- full description --&gt;
		&lt;div id="idTab1" class="rte"&gt;{$product-&gt;description}&lt;/div&gt;
	{/if}
	{if $features}
		&lt;!-- product's features --&gt;
		&lt;ul id="idTab2" class="bullet"&gt;
		{foreach from=$features item=feature}
			&lt;li&gt;&lt;span&gt;{$feature.name|escape:'htmlall':'UTF-8'}&lt;/span&gt; {$feature.value|escape:'htmlall':'UTF-8'}&lt;/li&gt;
		{/foreach}
		&lt;/ul&gt;
	{/if}
	{if $attachments}
		&lt;ul id="idTab9" class="bullet"&gt;
		{foreach from=$attachments item=attachment}
			&lt;li&gt;&lt;a href="{$base_dir}attachment.php?id_attachment={$attachment.id_attachment}"&gt;{$attachment.name|escape:'htmlall':'UTF-8'}&lt;/a&gt;&lt;br /&gt;{$attachment.description|escape:'htmlall':'UTF-8'}&lt;/li&gt;
		{/foreach}
		&lt;/ul&gt;
	{/if}
	{if isset($accessories) AND $accessories}
		&lt;!-- accessories --&gt;
		&lt;ul id="idTab4" class="bullet"&gt;
			&lt;div class="block products_block accessories_block"&gt;
				&lt;div class="block_content"&gt;
					&lt;ul&gt;
					{foreach from=$accessories item=accessory name=accessories_list}
						{assign var='accessoryLink' value=$link-&gt;getProductLink($accessory.id_product, $accessory.link_rewrite, $accessory.category)}
						&lt;li class="ajax_block_product {if $smarty.foreach.accessories_list.first}first_item{elseif $smarty.foreach.accessories_list.last}last_item{else}item{/if} product_accessories_description"&gt;
							&lt;h5 class="align_center"&gt;&lt;a href="{$accessoryLink|escape:'htmlall':'UTF-8'}"&gt;{$accessory.name|truncate:22:'...'|escape:'htmlall':'UTF-8'}&lt;/a&gt;&lt;/h5&gt;
							&lt;p class="product_desc"&gt;
								&lt;a href="{$accessoryLink|escape:'htmlall':'UTF-8'}" title="{$accessory.legend|escape:'htmlall':'UTF-8'}" class="product_image"&gt;&lt;img src="{$link-&gt;getImageLink($accessory.link_rewrite, $accessory.id_image, 'medium')}" alt="{$accessory.legend|escape:'htmlall':'UTF-8'}" /&gt;&lt;/a&gt;
								&lt;a href="{$accessoryLink|escape:'htmlall':'UTF-8'}" title="{l s='More'}" class="product_description"&gt;{$accessory.description_short|strip_tags|truncate:100:'...'}&lt;/a&gt;
							&lt;/p&gt;
							&lt;p class="product_accessories_price"&gt;
								&lt;span class="price"&gt;{displayWtPrice p=$accessory.price}&lt;/span&gt;
								&lt;a class="button" href="{$accessoryLink|escape:'htmlall':'UTF-8'}" title="{l s='View'}"&gt;{l s='View'}&lt;/a&gt;
								&lt;a class="button ajax_add_to_cart_button" href="{$base_dir}cart.php?qty=1&amp;amp;id_product={$accessory.id_product|intval}&amp;amp;token={$static_token}&amp;amp;add" rel="ajax_id_product_{$accessory.id_product|intval}" title="{l s='Add to cart'}"&gt;{l s='Add to cart'}&lt;/a&gt;
							&lt;/p&gt;
						&lt;/li&gt;
					{/foreach}
					&lt;/ul&gt;
				&lt;/div&gt;
			&lt;/div&gt;
			&lt;div class="clear"&gt;&lt;/div&gt;
		&lt;/ul&gt;
	{/if}
	{$HOOK_PRODUCT_TAB_CONTENT}
	&lt;/div&gt;
&lt;/div&gt;
{/if}

&lt;!-- Customizable products --&gt;
{if $product-&gt;customizable}
	&lt;ul class="idTabs"&gt;
		&lt;li&gt;&lt;a style="cursor: pointer"&gt;{l s='Product customization'}&lt;/a&gt;&lt;/li&gt;
	&lt;/ul&gt;
	&lt;div class="customization_block"&gt;
		&lt;form method="post" action="{$customizationFormTarget}" enctype="multipart/form-data" id="customizationForm"&gt;
			&lt;p&gt;
				&lt;img src="{$img_dir}icon/infos.gif" alt="Informations" /&gt;
				{l s='After saving your customized product, do not forget to add it to your cart.'}
				{if $product-&gt;uploadable_files}&lt;br /&gt;{l s='Allowed file formats are: GIF, JPG, PNG'}{/if}
			&lt;/p&gt;
			{if $product-&gt;uploadable_files|intval}
			&lt;h2&gt;{l s='Pictures'}&lt;/h2&gt;
			&lt;ul id="uploadable_files"&gt;
				{counter start=0 assign='customizationField'}
				{foreach from=$customizationFields item='field' name='customizationFields'}
					{if $field.type == 0}
						&lt;li class="customizationUploadLine{if $field.required} required{/if}"&gt;{assign var='key' value='pictures_'|cat:$product-&gt;id|cat:'_'|cat:$field.id_customization_field}
							{if isset($pictures.$key)}&lt;div class="customizationUploadBrowse"&gt;&lt;img src="{$pic_dir}{$pictures.$key}_small" alt="" /&gt;&lt;a href="{$link-&gt;getUrlWith('deletePicture', $field.id_customization_field)}"&gt;&lt;img src="{$img_dir}icon/delete.gif" alt="{l s='delete'}" class="customization_delete_icon" /&gt;&lt;/a&gt;&lt;/div&gt;{/if}
							&lt;div class="customizationUploadBrowse"&gt;&lt;input type="file" name="file{$field.id_customization_field}" id="img{$customizationField}" class="customization_block_input {if isset($pictures.$key)}filled{/if}" /&gt;{if $field.required}&lt;sup&gt;*&lt;/sup&gt;{/if}
							&lt;div class="customizationUploadBrowseDescription"&gt;{if !empty($field.name)}{$field.name}{else}{l s='Please select an image file from your hard drive'}{/if}&lt;/div&gt;&lt;/div&gt;
						&lt;/li&gt;
						{counter}
					{/if}
				{/foreach}
			&lt;/ul&gt;
			{/if}
			&lt;div class="clear"&gt;&lt;/div&gt;
			{if $product-&gt;text_fields|intval}
			&lt;h2&gt;{l s='Texts'}&lt;/h2&gt;
			&lt;ul id="text_fields"&gt;
				{counter start=0 assign='customizationField'}
				{foreach from=$customizationFields item='field' name='customizationFields'}
					{if $field.type == 1}
						&lt;li class="customizationUploadLine{if $field.required} required{/if}"&gt;{assign var='key' value='textFields_'|cat:$product-&gt;id|cat:'_'|cat:$field.id_customization_field}
							{if !empty($field.name)}{$field.name}{/if}&lt;input type="text" name="textField{$field.id_customization_field}" id="textField{$customizationField}" value="{if isset($textFields.$key)}{$textFields.$key|stripslashes}{/if}" class="customization_block_input" /&gt;{if $field.required}&lt;sup&gt;*&lt;/sup&gt;{/if}
						&lt;/li&gt;
						{counter}
					{/if}
				{/foreach}
			&lt;/ul&gt;
			{/if}
			&lt;p style="clear: left;" id="customizedDatas"&gt;
				&lt;input type="hidden" name="quantityBackup" id="quantityBackup" value="" /&gt;
				&lt;input type="hidden" name="submitCustomizedDatas" value="1" /&gt;
				&lt;input type="button" class="button" value="{l s='Save'}" onclick="javascript:saveCustomization()" /&gt;
			&lt;/p&gt;
		&lt;/form&gt;
		&lt;p class="clear required"&gt;&lt;sup&gt;*&lt;/sup&gt; {l s='required fields'}&lt;/p&gt;
	&lt;/div&gt;
{/if}

{if $packItems|@count &gt; 0}
	&lt;div&gt;
		&lt;h2&gt;{l s='Pack content'}&lt;/h2&gt;
		{include file=$tpl_dir./product-list.tpl products=$packItems}
	&lt;/div&gt;
{/if}

{/if}</pre>
<p><strong>modules\homefeatured\homefeatured.tpl </strong></p>
<pre>&lt;!-- MODULE Home Featured Products --&gt;
&lt;div id="featured-products_block_center" class="block products_block"&gt;
	&lt;h4&gt;{l s='featured products' mod='homefeatured'}&lt;/h4&gt;
	{if isset($products) AND $products}
		&lt;div class="block_content"&gt;
			{assign var='liHeight' value=360}
			{assign var='nbItemsPerLine' value=4}
			{assign var='nbLi' value=$products|@count}
			{assign var='nbLines' value=$nbLi/$nbItemsPerLine|ceil}
			{assign var='ulHeight' value=$nbLines*$liHeight}
			&lt;ul style="" id="product_list"&gt;
			{foreach from=$products item=product name=homeFeaturedProducts}
				&lt;li class="ajax_block_product {if $smarty.foreach.homeFeaturedProducts.first}first_item{elseif $smarty.foreach.homeFeaturedProducts.last}last_item{else}item{/if} {if $smarty.foreach.homeFeaturedProducts.iteration%$nbItemsPerLine == 0}last_item_of_line{elseif $smarty.foreach.homeFeaturedProducts.iteration%$nbItemsPerLine == 1}first_item_of_line{/if} {if $smarty.foreach.homeFeaturedProducts.iteration &gt; ($smarty.foreach.homeFeaturedProducts.total - ($smarty.foreach.homeFeaturedProducts.total % $nbItemsPerLine))}last_line{/if}"&gt;
					&lt;div class="center_block"&gt;
					&lt;a href="{$product.link}" title="{$product.legend|escape:htmlall:'UTF-8'}" class="product_img_link"&gt;&lt;img src="{$link-&gt;getImageLink($product.link_rewrite, $product.id_image, 'home')}" height="{$homeSize.height}" width="{$homeSize.width}" alt="{$product.legend|escape:htmlall:'UTF-8'}" /&gt;&lt;/a&gt;
					&lt;h3&gt;&lt;a href="{$product.link}" title="{$product.name|escape:'htmlall':'UTF-8'}"&gt;{$product.name|escape:'htmlall':'UTF-8'}&lt;/a&gt;&lt;/h3&gt;
					&lt;p class="product_desc"&gt;&lt;a href="{$product.link}" title="{l s='More' mod='homefeatured'}"&gt;{$product.description_short|strip_tags|truncate:270:'...'}&lt;/a&gt;&lt;/p&gt;
					&lt;div class="right_block"&gt;

					{if !$priceDisplay || $priceDisplay == 2}&lt;p class="price_container"&gt;&lt;span class="price"&gt;{convertPrice price=$product.price}&lt;/span&gt;{if $priceDisplay == 2} {l s='+Tx' mod='homefeatured'}{/if}&lt;/p&gt;{/if}
					        {php}
						  $tmp_product=$this-&gt;get_template_vars("product");
                                                  $price_wo_discount=Product::getPriceWithoutReductStatic($tmp_product["id_product"]);
						  $this-&gt;assign('price_wo_discount',$price_wo_discount);
					        {/php}

 			                    <span style="color: #ff0000;">{if $product.price!=0}</span>

						{if $priceDisplay}
  						  {if $product.price_tax_exc!=$price_wo_discount}
                                                    &lt;p class="price_container"&gt;&lt;span class="on_sale"&gt;{l s='On sale!'}&lt;/span&gt;&lt;span style="text-decoration: line-through;" class="old_price_display"&gt;{convertPrice price=$price_wo_discount}&lt;/span&gt;&lt;/p&gt;&lt;span class="price"&gt;{convertPrice price=$product.price_tax_exc}&lt;/span&gt;{if $priceDisplay == 2} {l s='-Tx' mod='homefeatured'}{/if}&lt;/p&gt;
        					  {else}
                                                    &lt;p class="price_container"&gt;&lt;span class="price"&gt;{convertPrice price=$product.price_tax_exc}&lt;/span&gt;{if $priceDisplay == 2} {l s='-Tx' mod='homefeatured'}{/if}&lt;/p&gt;
						   {/if}
						{/if}
   						    &lt;a class="button" href="{$product.link}" title="{l s='View' mod='homefeatured'}"&gt;{l s='View' mod='homefeatured'}&lt;/a&gt;
						    {if ($product.quantity &gt; 0 OR $product.allow_oosp) AND $product.customizable != 2}
						    &lt;a class="exclusive ajax_add_to_cart_button" rel="ajax_id_product_{$product.id_product}" href="{$base_dir}cart.php?qty=1&amp;amp;id_product={$product.id_product}&amp;amp;token={$static_token}&amp;amp;add" title="{l s='Add to cart' mod='homefeatured'}"&gt;{l s='Add to cart' mod='homefeatured'}&lt;/a&gt;
						   {else}
						    &lt;span class="exclusive"&gt;{l s='Add to cart' mod='homefeatured'}&lt;/span&gt;
						{/if}
			  		    <span style="color: #ff0000;">{else}
					       &lt;div&gt;&lt;span class="price" style="display: inline;"&gt;{l s='Advance order' mod='homefeatured'}&lt;/span&gt;&lt;/div&gt;
				               &lt;div&gt;&lt;span class="price-comments" &gt;{l s='Call by phone' mod='homefeatured'}&lt;/span&gt;&lt;/div&gt;
	    &lt;a class="button" href="{$product.link}" title="{l s='View' mod='homefeatured'}"&gt;{l s='View' mod='homefeatured'}&lt;/a&gt;
				            {/if}
</span>
					&lt;/div&gt;
				        &lt;/div&gt;
				&lt;/li&gt;
			{/foreach}
			&lt;/ul&gt;
		&lt;/div&gt;
	{else}
		&lt;p&gt;{l s='No featured products' mod='homefeatured'}&lt;/p&gt;
	{/if}
&lt;/div&gt;
&lt;!-- /MODULE Home Featured Products --&gt;</pre>
<p>Так же надо добавить новые сообщения в файлы локализации, и форматирование в файл сss.</p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 312px; width: 1px; height: 1px; overflow: hidden;">{include file=$tpl_dir./errors.tpl}<br />
{if $errors|@count == 0}<br />
&lt;script type=&raquo;text/javascript&raquo;&gt;<br />
// &lt;![CDATA[</p>
<p>// PrestaShop internal settings<br />
var currencySign = '{$currencySign|html_entity_decode:2:"UTF-8"}';<br />
var currencyRate = '{$currencyRate|floatval}';<br />
var currencyFormat = '{$currencyFormat|intval}';<br />
var currencyBlank = '{$currencyBlank|intval}';<br />
var taxRate = {$product-&gt;tax_rate|floatval};<br />
var jqZoomEnabled = {if $jqZoomEnabled}true{else}false{/if};</p>
<p>//JS Hook<br />
var oosHookJsCodeFunctions = new Array();</p>
<p>// Parameters<br />
var id_product = '{$product-&gt;id|intval}';<br />
var productHasAttributes = {if isset($groups)}true{else}false{/if};<br />
var quantitiesDisplayAllowed = {if $display_qties == 1}true{else}false{/if};<br />
var quantityAvailable = {if $display_qties == 1 &amp;&amp; $product-&gt;quantity}{$product-&gt;quantity}{else}0{/if};<br />
var allowBuyWhenOutOfStock = {if $allow_oosp == 1}true{else}false{/if};<br />
var availableNowValue = '{$product-&gt;available_now|escape:'quotes':'UTF-8'}';<br />
var availableLaterValue = '{$product-&gt;available_later|escape:'quotes':'UTF-8'}';<br />
var productPriceWithoutReduction = {$product-&gt;getPriceWithoutReduct()|default:'null'};<br />
var reduction_percent = {if $product-&gt;reduction_percent}{$product-&gt;reduction_percent}{else}0{/if};<br />
var reduction_price = {if $product-&gt;reduction_percent}0{else}{$product-&gt;getPrice(true, $smarty.const.NULL, 2, $smarty.const.NULL, true)}{/if};<br />
var reduction_from = '{$product-&gt;reduction_from}';<br />
var reduction_to = '{$product-&gt;reduction_to}';<br />
var group_reduction = '{$group_reduction}';<br />
var default_eco_tax = {$product-&gt;ecotax};<br />
var currentDate = '{$smarty.now|date_format:'%Y-%m-%d'}';<br />
var maxQuantityToAllowDisplayOfLastQuantityMessage = {$last_qties};<br />
var noTaxForThisProduct = {if $no_tax == 1}true{else}false{/if};<br />
var displayPrice = {$priceDisplay};</p>
<p>// Customizable field<br />
var img_ps_dir = '{$img_ps_dir}';<br />
var customizationFields = new Array();<br />
{assign var='imgIndex' value=0}<br />
{assign var='textFieldIndex' value=0}<br />
{foreach from=$customizationFields item='field' name='customizationFields'}<br />
{assign var='key' value='pictures_'|cat:$product-&gt;id|cat:'_'|cat:$field.id_customization_field}<br />
customizationFields[{$smarty.foreach.customizationFields.index|intval}] = new Array();<br />
customizationFields[{$smarty.foreach.customizationFields.index|intval}][0] = &#8216;{if $field.type|intval == 0}img{$imgIndex++}{else}textField{$textFieldIndex++}{/if}&#8217;;<br />
customizationFields[{$smarty.foreach.customizationFields.index|intval}][1] = {if $field.type|intval == 0 AND $pictures.$key}2{else}{$field.required|intval}{/if};<br />
{/foreach}</p>
<p>// Images<br />
var img_prod_dir = &#8216;{$img_prod_dir}&#8217;;<br />
var combinationImages = new Array();<br />
{foreach from=$combinationImages item=&#8217;combination&#8217; key=&#8217;combinationId&#8217; name=&#8217;f_combinationImages&#8217;}<br />
combinationImages[{$combinationId}] = new Array();<br />
{foreach from=$combination item=&#8217;image&#8217; name=&#8217;f_combinationImage&#8217;}<br />
combinationImages[{$combinationId}][{$smarty.foreach.f_combinationImage.index}] = {$image.id_image|intval};<br />
{/foreach}<br />
{/foreach}</p>
<p>combinationImages[0] = new Array();<br />
{foreach from=$images item=&#8217;image&#8217; name=&#8217;f_defaultImages&#8217;}<br />
combinationImages[0][{$smarty.foreach.f_defaultImages.index}] = {$image.id_image};<br />
{/foreach}</p>
<p>// Translations<br />
var doesntExist = &#8216;{l s=&#8217;The product does not exist in this model. Please choose another.&#8217; js=1}&#8217;;<br />
var doesntExistNoMore = &#8216;{l s=&#8217;This product is no longer in stock&#8217; js=1}&#8217;;<br />
var doesntExistNoMoreBut = &#8216;{l s=&#8217;with those attributes but is available with others&#8217; js=1}&#8217;;<br />
var uploading_in_progress = &#8216;{l s=&#8217;Uploading in progress, please wait&#8230;&#8217; js=1}&#8217;;<br />
var fieldRequired = &#8216;{l s=&#8217;Please fill all required fields&#8217; js=1}&#8217;;</p>
<p>{if isset($groups)}<br />
// Combinations<br />
{foreach from=$combinations key=idCombination item=combination}<br />
addCombination({$idCombination|intval}, new Array({$combination.list}), {$combination.quantity}, {$combination.price}, {$combination.ecotax}, {$combination.id_image}, &#8216;{$combination.reference|addslashes}&#8217;);<br />
{/foreach}<br />
// Colors<br />
{if $colors|@count &gt; 0}<br />
{if $product-&gt;id_color_default}var id_color_default = {$product-&gt;id_color_default|intval};{/if}<br />
{/if}<br />
{/if}</p>
<p>//]]&gt;<br />
&lt;/script&gt;</p>
<p>{include file=$tpl_dir./breadcrumb.tpl}</p>
<p>&lt;div id=&raquo;primary_block&raquo;&gt;</p>
<p>&lt;h2&gt;{$product-&gt;name|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&lt;/h2&gt;<br />
{if $confirmation}<br />
&lt;p class=&raquo;confirmation&raquo;&gt;<br />
{$confirmation}<br />
&lt;/p&gt;<br />
{/if}</p>
<p>&lt;!&#8211; right infos&#8211;&gt;<br />
&lt;div id=&raquo;pb-right-column&raquo;&gt;<br />
&lt;!&#8211; product img&#8211;&gt;<br />
&lt;div id=&raquo;image-block&raquo;&gt;<br />
{if $have_image}<br />
&lt;img src=&raquo;{$link-&gt;getImageLink($product-&gt;link_rewrite, $cover.id_image, &#8216;large&#8217;)}&raquo; {if $jqZoomEnabled}class=&raquo;jqzoom&raquo; alt=&raquo;{$link-&gt;getImageLink($product-&gt;link_rewrite, $cover.id_image, &#8216;thickbox&#8217;)}&raquo;{else} title=&raquo;{$product-&gt;name|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&raquo; alt=&raquo;{$product-&gt;name|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&raquo; {/if} id=&raquo;bigpic&raquo;/&gt;<br />
{else}<br />
&lt;img src=&raquo;{$img_prod_dir}{$lang_iso}-default-large.jpg&raquo; alt=&raquo;" title=&raquo;{$product-&gt;name|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&raquo; /&gt;<br />
{/if}<br />
&lt;/div&gt;</p>
<p>{if count($images) &gt; 0}<br />
&lt;!&#8211; thumbnails &#8211;&gt;<br />
&lt;div id=&raquo;views_block&raquo; {if count($images) &lt; 2}class=&raquo;hidden&raquo;{/if}&gt;<br />
{if count($images) &gt; 3}&lt;span class=&raquo;view_scroll_spacer&raquo;&gt;&lt;a id=&raquo;view_scroll_left&raquo; class=&raquo;hidden&raquo; title=&raquo;{l s=&#8217;Other views&#8217;}&raquo; href=&raquo;javascript:{ldelim}{rdelim}&raquo;&gt;{l s=&#8217;Previous&#8217;}&lt;/a&gt;&lt;/span&gt;{/if}<br />
&lt;div id=&raquo;thumbs_list&raquo;&gt;<br />
&lt;ul style=&raquo;width: {math equation=&raquo;width * nbImages&raquo; width=80 nbImages=$images|@count}px&raquo; id=&raquo;thumbs_list_frame&raquo;&gt;<br />
{foreach from=$images item=image name=thumbnails}<br />
{assign var=imageIds value=`$product-&gt;id`-`$image.id_image`}<br />
&lt;li id=&raquo;thumbnail_{$image.id_image}&raquo;&gt;<br />
&lt;a href=&raquo;{$link-&gt;getImageLink($product-&gt;link_rewrite, $imageIds, &#8216;thickbox&#8217;)}&raquo; rel=&raquo;other-views&raquo; class=&raquo;{if !$jqZoomEnabled}thickbox{/if} {if $smarty.foreach.thumbnails.first}shown{/if}&raquo; title=&raquo;{$image.legend|htmlspecialchars}&raquo;&gt;<br />
&lt;img id=&raquo;thumb_{$image.id_image}&raquo; src=&raquo;{$link-&gt;getImageLink($product-&gt;link_rewrite, $imageIds, &#8216;medium&#8217;)}&raquo; alt=&raquo;{$image.legend|htmlspecialchars}&raquo; height=&raquo;{$mediumSize.height}&raquo; width=&raquo;{$mediumSize.width}&raquo; /&gt;<br />
&lt;/a&gt;<br />
&lt;/li&gt;<br />
{/foreach}<br />
&lt;/ul&gt;<br />
&lt;/div&gt;<br />
{if count($images) &gt; 3}&lt;a id=&raquo;view_scroll_right&raquo; title=&raquo;{l s=&#8217;Other views&#8217;}&raquo; href=&raquo;javascript:{ldelim}{rdelim}&raquo;&gt;{l s=&#8217;Next&#8217;}&lt;/a&gt;{/if}<br />
&lt;/div&gt;<br />
{/if}<br />
{if count($images) &gt; 1}&lt;p class=&raquo;align_center clear&raquo;&gt;&lt;a id=&raquo;resetImages&raquo; href=&raquo;{$link-&gt;getProductLink($product)}&raquo; onclick=&raquo;return (false);&raquo;&gt;{l s=&#8217;Display all pictures&#8217;}&lt;/a&gt;&lt;/p&gt;{/if}<br />
&lt;!&#8211; usefull links&#8211;&gt;<br />
&lt;ul id=&raquo;usefull_link_block&raquo;&gt;<br />
{if $HOOK_EXTRA_LEFT}{$HOOK_EXTRA_LEFT}{/if}<br />
&lt;li&gt;&lt;a href=&raquo;javascript:print();&raquo;&gt;{l s=&#8217;Print&#8217;}&lt;/a&gt;&lt;br class=&raquo;clear&raquo; /&gt;&lt;/li&gt;<br />
{if $have_image &amp;&amp; !$jqZoomEnabled}<br />
&lt;li&gt;&lt;span id=&raquo;view_full_size&raquo; class=&raquo;span_link&raquo;&gt;{l s=&#8217;View full size&#8217;}&lt;/span&gt;&lt;/li&gt;<br />
{/if}<br />
&lt;/ul&gt;<br />
&lt;/div&gt;</p>
<p>&lt;!&#8211; left infos&#8211;&gt;<br />
&lt;div id=&raquo;pb-left-column&raquo;&gt;<br />
{if $product-&gt;description_short OR $packItems|@count &gt; 0}<br />
&lt;div id=&raquo;short_description_block&raquo;&gt;<br />
{if $product-&gt;description_short}<br />
&lt;div id=&raquo;short_description_content&raquo; class=&raquo;rte align_justify&raquo;&gt;{$product-&gt;description_short}&lt;/div&gt;<br />
{/if}<br />
{if $product-&gt;description}<br />
&lt;p class=&raquo;buttons_bottom_block&raquo;&gt;&lt;a href=&raquo;javascript:{ldelim}{rdelim}&raquo; class=&raquo;button&raquo;&gt;{l s=&#8217;More details&#8217;}&lt;/a&gt;&lt;/p&gt;<br />
{/if}<br />
{if $packItems|@count &gt; 0}<br />
&lt;h3&gt;{l s=&#8217;Pack content&#8217;}&lt;/h3&gt;<br />
{foreach from=$packItems item=packItem}<br />
&lt;div class=&raquo;pack_content&raquo;&gt;<br />
{$packItem.pack_quantity} x &lt;a href=&raquo;{$link-&gt;getProductLink($packItem.id_product, $packItem.link_rewrite, $packItem.category)}&raquo;&gt;{$packItem.name|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&lt;/a&gt;<br />
&lt;p&gt;{$packItem.description_short}&lt;/p&gt;<br />
&lt;/div&gt;<br />
{/foreach}<br />
{/if}<br />
&lt;/div&gt;<br />
{/if}</p>
<p>{if $colors}<br />
&lt;!&#8211; colors &#8211;&gt;<br />
&lt;div id=&raquo;color_picker&raquo;&gt;<br />
&lt;p&gt;{l s=&#8217;Pick a color:&#8217; js=1}&lt;/p&gt;<br />
&lt;div class=&raquo;clear&raquo;&gt;&lt;/div&gt;<br />
&lt;ul id=&raquo;color_to_pick_list&raquo;&gt;<br />
{foreach from=$colors key=&#8217;id_attribute&#8217; item=&#8217;color&#8217;}<br />
&lt;li&gt;&lt;a id=&raquo;color_{$id_attribute|intval}&raquo; class=&raquo;color_pick&raquo; style=&raquo;background: {$color.value};&raquo; onclick=&raquo;updateColorSelect({$id_attribute|intval});&raquo;&gt;{if file_exists($col_img_dir|cat:$id_attribute|cat:&#8217;.jpg&#8217;)}&lt;img src=&raquo;{$img_col_dir}{$id_attribute}.jpg&raquo; alt=&raquo;" title=&raquo;{$color.name}&raquo; /&gt;{/if}&lt;/a&gt;&lt;/li&gt;<br />
{/foreach}<br />
&lt;/ul&gt;<br />
&lt;a id=&raquo;color_all&raquo; onclick=&raquo;updateColorSelect(0);&raquo;&gt;&lt;img src=&raquo;{$img_dir}icon/cancel.gif&raquo; alt=&raquo;" title=&raquo;{$color.name}&raquo; /&gt;&lt;/a&gt;<br />
&lt;div class=&raquo;clear&raquo;&gt;&lt;/div&gt;<br />
&lt;/div&gt;<br />
{/if}</p>
<p>&lt;!&#8211; add to cart form&#8211;&gt;<br />
{if $product-&gt;getPrice(true, $smarty.const.NULL, 2)!=0}<br />
&lt;form id=&raquo;buy_block&raquo; action=&raquo;{$base_dir}cart.php&raquo; method=&raquo;post&raquo;&gt;</p>
<p>&lt;!&#8211; hidden datas &#8211;&gt;<br />
&lt;p class=&raquo;hidden&raquo;&gt;<br />
&lt;input type=&raquo;hidden&raquo; name=&raquo;token&raquo; value=&raquo;{$static_token}&raquo; /&gt;<br />
&lt;input type=&raquo;hidden&raquo; name=&raquo;id_product&raquo; value=&raquo;{$product-&gt;id|intval}&raquo; id=&raquo;product_page_product_id&raquo; /&gt;<br />
&lt;input type=&raquo;hidden&raquo; name=&raquo;add&raquo; value=&raquo;1&#8243; /&gt;<br />
&lt;input type=&raquo;hidden&raquo; name=&raquo;id_product_attribute&raquo; id=&raquo;idCombination&raquo; value=&raquo;" /&gt;<br />
&lt;/p&gt;</p>
<p>&lt;!&#8211; prices &#8211;&gt;<br />
&lt;p class=&raquo;price&raquo;&gt;<br />
{if $product-&gt;on_sale}<br />
&lt;img src=&raquo;{$img_dir}onsale_{$lang_iso}.gif&raquo; alt=&raquo;{l s=&#8217;On sale&#8217;}&raquo; class=&raquo;on_sale_img&raquo;/&gt;<br />
&lt;span class=&raquo;on_sale&raquo;&gt;{l s=&#8217;On sale!&#8217;}&lt;/span&gt;<br />
{elseif ($product-&gt;reduction_price != 0 || $product-&gt;reduction_percent != 0) &amp;&amp; ($product-&gt;reduction_from == $product-&gt;reduction_to OR ($smarty.now|date_format:&#8217;%Y-%m-%d&#8217; &lt;= $product-&gt;reduction_to &amp;&amp; $smarty.now|date_format:&#8217;%Y-%m-%d&#8217; &gt;= $product-&gt;reduction_from))}<br />
&lt;span class=&raquo;discount&raquo;&gt;{l s=&#8217;Price lowered!&#8217;}&lt;/span&gt;<br />
{/if}<br />
&lt;br /&gt;<br />
&lt;span class=&raquo;our_price_display&raquo;&gt;<br />
{if !$priceDisplay || $priceDisplay == 2}<br />
&lt;span id=&raquo;our_price_display&raquo;&gt;{convertPrice price=$product-&gt;getPrice(true, $smarty.const.NULL, 2)}&lt;/span&gt;<br />
{l s=&#8217;tax incl.&#8217;}<br />
{/if}<br />
{if $priceDisplay == 1}<br />
&lt;span id=&raquo;our_price_display&raquo;&gt;{convertPrice price=$product-&gt;getPrice(false, $smarty.const.NULL, 2)}&lt;/span&gt;<br />
{l s=&#8217;tax excl.&#8217;}<br />
{/if}<br />
&lt;/span&gt;<br />
{if $priceDisplay == 2}<br />
&lt;br /&gt;<br />
&lt;span id=&raquo;pretaxe_price&raquo;&gt;&lt;span id=&raquo;pretaxe_price_display&raquo;&gt;{convertPrice price=$product-&gt;getPrice(false, $smarty.const.NULL, 2)}&lt;/span&gt;&amp;nbsp;{l s=&#8217;tax excl.&#8217;}&lt;/span&gt;<br />
{/if}<br />
&lt;br /&gt;<br />
&lt;/p&gt;<br />
{if ($product-&gt;reduction_price != 0 || $product-&gt;reduction_percent != 0) &amp;&amp; ($product-&gt;reduction_from == $product-&gt;reduction_to OR ($smarty.now|date_format:&#8217;%Y-%m-%d&#8217; &lt;= $product-&gt;reduction_to &amp;&amp; $smarty.now|date_format:&#8217;%Y-%m-%d&#8217; &gt;= $product-&gt;reduction_from))}<br />
&lt;p id=&raquo;old_price&raquo;&gt;&lt;span class=&raquo;bold&raquo;&gt;<br />
{if !$priceDisplay || $priceDisplay == 2}<br />
&lt;span id=&raquo;old_price_display&raquo;&gt;{convertPrice price=$product-&gt;getPriceWithoutReduct()}&lt;/span&gt;<br />
{l s=&#8217;tax incl.&#8217;}<br />
{/if}<br />
{if $priceDisplay == 1}<br />
&lt;span id=&raquo;old_price_display&raquo;&gt;{convertPrice price=$product-&gt;getPriceWithoutReduct(true)}&lt;/span&gt;<br />
{l s=&#8217;tax excl.&#8217;}<br />
{/if}<br />
&lt;/span&gt;<br />
&lt;/p&gt;<br />
{/if}<br />
{if $product-&gt;reduction_percent != 0 &amp;&amp; ($product-&gt;reduction_from == $product-&gt;reduction_to OR ($smarty.now|date_format:&#8217;%Y-%m-%d&#8217; &lt;= $product-&gt;reduction_to &amp;&amp; $smarty.now|date_format:&#8217;%Y-%m-%d&#8217; &gt;= $product-&gt;reduction_from))}<br />
&lt;p id=&raquo;reduction_percent&raquo;&gt;{l s=&#8217;(price reduced by&#8217;} &lt;span id=&raquo;reduction_percent_display&raquo;&gt;{$product-&gt;reduction_percent|floatval}&lt;/span&gt; %{l s=&#8217;)'}&lt;/p&gt;<br />
{/if}<br />
{if $packItems|@count}<br />
&lt;p class=&raquo;pack_price&raquo;&gt;{l s=&#8217;instead of&#8217;} &lt;span style=&raquo;text-decoration: line-through;&raquo;&gt;{convertPrice price=$product-&gt;getNoPackPrice()}&lt;/span&gt;&lt;/p&gt;<br />
&lt;br class=&raquo;clear&raquo; /&gt;<br />
{/if}<br />
{if $product-&gt;ecotax != 0}<br />
&lt;p class=&raquo;price-ecotax&raquo;&gt;{l s=&#8217;include&#8217;} &lt;span id=&raquo;ecotax_price_display&raquo;&gt;{convertPrice price=$product-&gt;ecotax}&lt;/span&gt; {l s=&#8217;for green tax&#8217;}&lt;/p&gt;<br />
{/if}</p>
<p>{if isset($groups)}</p>
<p>&lt;!&#8211; attributes &#8211;&gt;<br />
&lt;div id=&raquo;attributes&raquo;&gt;<br />
{foreach from=$groups key=id_attribute_group item=group}<br />
&lt;p&gt;<br />
&lt;label for=&raquo;group_{$id_attribute_group|intval}&raquo;&gt;{$group.name|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;} :&lt;/label&gt;<br />
{assign var=&#8217;groupName&#8217; value=&#8217;group_&#8217;|cat:$id_attribute_group}<br />
&lt;select name=&raquo;{$groupName}&raquo; id=&raquo;group_{$id_attribute_group|intval}&raquo; onchange=&raquo;javascript:findCombination();&raquo;&gt;<br />
{foreach from=$group.attributes key=id_attribute item=group_attribute}<br />
&lt;option value=&raquo;{$id_attribute|intval}&raquo;{if (isset($smarty.get.$groupName) &amp;&amp; $smarty.get.$groupName|intval == $id_attribute) || $group.default == $id_attribute} selected=&raquo;selected&raquo;{/if}&gt;{$group_attribute|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&lt;/option&gt;<br />
{/foreach}<br />
&lt;/select&gt;<br />
&lt;/p&gt;<br />
{/foreach}<br />
&lt;/div&gt;<br />
{/if}</p>
<p>{if $product-&gt;reference}&lt;p id=&raquo;product_reference&raquo; {if isset($groups)}style=&raquo;display:none;&raquo;{/if}&gt;&lt;label for=&raquo;product_reference&raquo;&gt;{l s=&#8217;Reference :&#8217;} &lt;/label&gt;&lt;span class=&raquo;editable&raquo;&gt;{$product-&gt;reference|escape}&lt;/span&gt;&lt;/p&gt;{/if}</p>
<p>&lt;!&#8211; quantity wanted &#8211;&gt;<br />
&lt;p id=&raquo;quantity_wanted_p&raquo;{if (!$allow_oosp &amp;&amp; $product-&gt;quantity == 0) || $virtual} style=&raquo;display:none;&raquo;{/if}&gt;<br />
&lt;label&gt;{l s=&#8217;Quantity :&#8217;}&lt;/label&gt;<br />
&lt;input type=&raquo;text&raquo; name=&raquo;qty&raquo; id=&raquo;quantity_wanted&raquo; class=&raquo;text&raquo; value=&raquo;{if isset($quantityBackup)}{$quantityBackup|intval}{else}1{/if}&raquo; size=&raquo;2&#8243; maxlength=&raquo;3&#8243; /&gt;<br />
&lt;/p&gt;</p>
<p>&lt;!&#8211; availability &#8211;&gt;<br />
&lt;p id=&raquo;availability_statut&raquo;{if ($allow_oosp &amp;&amp; $product-&gt;quantity == 0 &amp;&amp; !$product-&gt;available_later) || (!$product-&gt;available_now &amp;&amp; $display_qties != 1) } style=&raquo;display:none;&raquo;{/if}&gt;<br />
&lt;span id=&raquo;availability_label&raquo;&gt;{l s=&#8217;Availability:&#8217;}&lt;/span&gt;<br />
&lt;span id=&raquo;availability_value&raquo;{if $product-&gt;quantity == 0} class=&raquo;warning-inline&raquo;{/if}&gt;<br />
{if $product-&gt;quantity == 0}{if $allow_oosp}{$product-&gt;available_later}{else}{l s=&#8217;This product is no longer in stock&#8217;}{/if}{else}{$product-&gt;available_now}{/if}<br />
&lt;/span&gt;<br />
&lt;/p&gt;</p>
<p>&lt;!&#8211; number of item in stock &#8211;&gt;<br />
&lt;p id=&raquo;pQuantityAvailable&raquo;{if $display_qties != 1 || ($allow_oosp &amp;&amp; $product-&gt;quantity == 0)} style=&raquo;display:none;&raquo;{/if}&gt;<br />
&lt;span id=&raquo;quantityAvailable&raquo;&gt;{$product-&gt;quantity|intval}&lt;/span&gt;<br />
&lt;span{if $product-&gt;quantity &gt; 1} style=&raquo;display:none;&raquo;{/if} id=&raquo;quantityAvailableTxt&raquo;&gt;{l s=&#8217;item in stock&#8217;}&lt;/span&gt;<br />
&lt;span{if $product-&gt;quantity &lt; 2} style=&raquo;display:none;&raquo;{/if} id=&raquo;quantityAvailableTxtMultiple&raquo;&gt;{l s=&#8217;items in stock&#8217;}&lt;/span&gt;<br />
&lt;/p&gt;</p>
<p>&lt;!&#8211; Out of stock hook &#8211;&gt;<br />
&lt;p id=&raquo;oosHook&raquo;{if $product-&gt;quantity &gt; 0} style=&raquo;display:none;&raquo;{/if}&gt;<br />
{$HOOK_PRODUCT_OOS}<br />
&lt;/p&gt;</p>
<p>&lt;p class=&raquo;warning-inline&raquo; id=&raquo;last_quantities&raquo;{if ($product-&gt;quantity &gt; $last_qties || $product-&gt;quantity == 0) || $allow_oosp} style=&raquo;display:none;&raquo;{/if} &gt;{l s=&#8217;Warning: Last items in stock!&#8217;}&lt;/p&gt;</p>
<p>&lt;p{if !$allow_oosp &amp;&amp; $product-&gt;quantity == 0} style=&raquo;display:none;&raquo;{/if} id=&raquo;add_to_cart&raquo; class=&raquo;buttons_bottom_block&raquo;&gt;&lt;input type=&raquo;submit&raquo; name=&raquo;Submit&raquo; value=&raquo;{l s=&#8217;Add to cart&#8217;}&raquo; class=&raquo;exclusive&raquo; /&gt;&lt;/p&gt;<br />
{if $HOOK_PRODUCT_ACTIONS}<br />
{$HOOK_PRODUCT_ACTIONS}<br />
{/if}<br />
&lt;/form&gt;<br />
{else}<br />
&lt;div&gt;&lt;span class=&raquo;price&raquo; style=&raquo;display: inline;&raquo;&gt;{l s=&#8217;Advance order&#8217;}&lt;/span&gt;&lt;/div&gt;<br />
&lt;div&gt;&lt;span class=&raquo;price-comments&raquo; &gt;{l s=&#8217;Call by phone&#8217;}&lt;/span&gt;&lt;/div&gt;<br />
{/if}</p>
<p>{if $HOOK_EXTRA_RIGHT}{$HOOK_EXTRA_RIGHT}{/if}<br />
&lt;/div&gt;<br />
&lt;/div&gt;<br />
&lt;br class=&raquo;clear&raquo; /&gt;</p>
<p>{if $quantity_discounts}<br />
&lt;!&#8211; quantity discount &#8211;&gt;<br />
&lt;ul class=&raquo;idTabs&raquo;&gt;<br />
&lt;li&gt;&lt;a style=&raquo;cursor: pointer&raquo;&gt;{l s=&#8217;Quantity discount&#8217;}&lt;/a&gt;&lt;/li&gt;<br />
&lt;/ul&gt;<br />
&lt;div id=&raquo;quantityDiscount&raquo;&gt;<br />
&lt;table class=&raquo;std&raquo;&gt;<br />
&lt;tr&gt;<br />
{foreach from=$quantity_discounts item=&#8217;quantity_discount&#8217; name=&#8217;quantity_discounts&#8217;}<br />
&lt;th&gt;{$quantity_discount.quantity|intval}<br />
{if $quantity_discount.quantity|intval &gt; 1}<br />
{l s=&#8217;quantities&#8217;}<br />
{else}<br />
{l s=&#8217;quantity&#8217;}<br />
{/if}<br />
&lt;/th&gt;<br />
{/foreach}<br />
&lt;/tr&gt;<br />
&lt;tr&gt;<br />
{foreach from=$quantity_discounts item=&#8217;quantity_discount&#8217; name=&#8217;quantity_discounts&#8217;}<br />
&lt;td&gt;<br />
{if $quantity_discount.id_discount_type|intval == 1}<br />
-{$quantity_discount.value|floatval}%<br />
{else}<br />
-{convertPrice price=$quantity_discount.value|floatval}<br />
{/if}<br />
&lt;/td&gt;<br />
{/foreach}<br />
&lt;/tr&gt;<br />
&lt;/table&gt;<br />
&lt;/div&gt;<br />
{/if}</p>
<p>{$HOOK_PRODUCT_FOOTER}</p>
<p>&lt;!&#8211; description and features &#8211;&gt;<br />
{if $product-&gt;description || $features || $accessories || $HOOK_PRODUCT_TAB || $attachments}<br />
&lt;div id=&raquo;more_info_block&raquo; class=&raquo;clear&raquo;&gt;<br />
&lt;ul id=&raquo;more_info_tabs&raquo; class=&raquo;idTabs idTabsShort&raquo;&gt;<br />
{if $product-&gt;description}&lt;li&gt;&lt;a id=&raquo;more_info_tab_more_info&raquo; href=&raquo;#idTab1&#8243;&gt;{l s=&#8217;More info&#8217;}&lt;/a&gt;&lt;/li&gt;{/if}<br />
{if $features}&lt;li&gt;&lt;a id=&raquo;more_info_tab_data_sheet&raquo; href=&raquo;#idTab2&#8243;&gt;{l s=&#8217;Data sheet&#8217;}&lt;/a&gt;&lt;/li&gt;{/if}<br />
{if $attachments}&lt;li&gt;&lt;a id=&raquo;more_info_tab_attachments&raquo; href=&raquo;#idTab9&#8243;&gt;{l s=&#8217;Download&#8217;}&lt;/a&gt;&lt;/li&gt;{/if}<br />
{if isset($accessories) AND $accessories}&lt;li&gt;&lt;a href=&raquo;#idTab4&#8243;&gt;{l s=&#8217;Accessories&#8217;}&lt;/a&gt;&lt;/li&gt;{/if}<br />
{$HOOK_PRODUCT_TAB}<br />
&lt;/ul&gt;<br />
&lt;div id=&raquo;more_info_sheets&raquo; class=&raquo;sheets align_justify&raquo;&gt;<br />
{if $product-&gt;description}<br />
&lt;!&#8211; full description &#8211;&gt;<br />
&lt;div id=&raquo;idTab1&#8243; class=&raquo;rte&raquo;&gt;{$product-&gt;description}&lt;/div&gt;<br />
{/if}<br />
{if $features}<br />
&lt;!&#8211; product&#8217;s features &#8211;&gt;<br />
&lt;ul id=&raquo;idTab2&#8243; class=&raquo;bullet&raquo;&gt;<br />
{foreach from=$features item=feature}<br />
&lt;li&gt;&lt;span&gt;{$feature.name|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&lt;/span&gt; {$feature.value|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&lt;/li&gt;<br />
{/foreach}<br />
&lt;/ul&gt;<br />
{/if}<br />
{if $attachments}<br />
&lt;ul id=&raquo;idTab9&#8243; class=&raquo;bullet&raquo;&gt;<br />
{foreach from=$attachments item=attachment}<br />
&lt;li&gt;&lt;a href=&raquo;{$base_dir}attachment.php?id_attachment={$attachment.id_attachment}&raquo;&gt;{$attachment.name|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&lt;/a&gt;&lt;br /&gt;{$attachment.description|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&lt;/li&gt;<br />
{/foreach}<br />
&lt;/ul&gt;<br />
{/if}<br />
{if isset($accessories) AND $accessories}<br />
&lt;!&#8211; accessories &#8211;&gt;<br />
&lt;ul id=&raquo;idTab4&#8243; class=&raquo;bullet&raquo;&gt;<br />
&lt;div class=&raquo;block products_block accessories_block&raquo;&gt;<br />
&lt;div class=&raquo;block_content&raquo;&gt;<br />
&lt;ul&gt;<br />
{foreach from=$accessories item=accessory name=accessories_list}<br />
{assign var=&#8217;accessoryLink&#8217; value=$link-&gt;getProductLink($accessory.id_product, $accessory.link_rewrite, $accessory.category)}<br />
&lt;li class=&raquo;ajax_block_product {if $smarty.foreach.accessories_list.first}first_item{elseif $smarty.foreach.accessories_list.last}last_item{else}item{/if} product_accessories_description&raquo;&gt;<br />
&lt;h5 class=&raquo;align_center&raquo;&gt;&lt;a href=&raquo;{$accessoryLink|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&raquo;&gt;{$accessory.name|truncate:22:&#8217;&#8230;&#8217;|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&lt;/a&gt;&lt;/h5&gt;<br />
&lt;p class=&raquo;product_desc&raquo;&gt;<br />
&lt;a href=&raquo;{$accessoryLink|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&raquo; title=&raquo;{$accessory.legend|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&raquo; class=&raquo;product_image&raquo;&gt;&lt;img src=&raquo;{$link-&gt;getImageLink($accessory.link_rewrite, $accessory.id_image, &#8216;medium&#8217;)}&raquo; alt=&raquo;{$accessory.legend|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&raquo; /&gt;&lt;/a&gt;<br />
&lt;a href=&raquo;{$accessoryLink|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&raquo; title=&raquo;{l s=&#8217;More&#8217;}&raquo; class=&raquo;product_description&raquo;&gt;{$accessory.description_short|strip_tags|truncate:100:&#8217;&#8230;&#8217;}&lt;/a&gt;<br />
&lt;/p&gt;<br />
&lt;p class=&raquo;product_accessories_price&raquo;&gt;<br />
&lt;span class=&raquo;price&raquo;&gt;{displayWtPrice p=$accessory.price}&lt;/span&gt;<br />
&lt;a class=&raquo;button&raquo; href=&raquo;{$accessoryLink|escape:&#8217;htmlall&#8217;:'UTF-8&#8242;}&raquo; title=&raquo;{l s=&#8217;View&#8217;}&raquo;&gt;{l s=&#8217;View&#8217;}&lt;/a&gt;<br />
&lt;a class=&raquo;button ajax_add_to_cart_button&raquo; href=&raquo;{$base_dir}cart.php?qty=1&amp;amp;id_product={$accessory.id_product|intval}&amp;amp;token={$static_token}&amp;amp;add&raquo; rel=&raquo;ajax_id_product_{$accessory.id_product|intval}&raquo; title=&raquo;{l s=&#8217;Add to cart&#8217;}&raquo;&gt;{l s=&#8217;Add to cart&#8217;}&lt;/a&gt;<br />
&lt;/p&gt;<br />
&lt;/li&gt;<br />
{/foreach}<br />
&lt;/ul&gt;<br />
&lt;/div&gt;<br />
&lt;/div&gt;<br />
&lt;div class=&raquo;clear&raquo;&gt;&lt;/div&gt;<br />
&lt;/ul&gt;<br />
{/if}<br />
{$HOOK_PRODUCT_TAB_CONTENT}<br />
&lt;/div&gt;<br />
&lt;/div&gt;<br />
{/if}</p>
<p>&lt;!&#8211; Customizable products &#8211;&gt;<br />
{if $product-&gt;customizable}<br />
&lt;ul class=&raquo;idTabs&raquo;&gt;<br />
&lt;li&gt;&lt;a style=&raquo;cursor: pointer&raquo;&gt;{l s=&#8217;Product customization&#8217;}&lt;/a&gt;&lt;/li&gt;<br />
&lt;/ul&gt;<br />
&lt;div class=&raquo;customization_block&raquo;&gt;<br />
&lt;form method=&raquo;post&raquo; action=&raquo;{$customizationFormTarget}&raquo; enctype=&raquo;multipart/form-data&raquo; id=&raquo;customizationForm&raquo;&gt;<br />
&lt;p&gt;<br />
&lt;img src=&raquo;{$img_dir}icon/infos.gif&raquo; alt=&raquo;Informations&raquo; /&gt;<br />
{l s=&#8217;After saving your customized product, do not forget to add it to your cart.&#8217;}<br />
{if $product-&gt;uploadable_files}&lt;br /&gt;{l s=&#8217;Allowed file formats are: GIF, JPG, PNG&#8217;}{/if}<br />
&lt;/p&gt;<br />
{if $product-&gt;uploadable_files|intval}<br />
&lt;h2&gt;{l s=&#8217;Pictures&#8217;}&lt;/h2&gt;<br />
&lt;ul id=&raquo;uploadable_files&raquo;&gt;<br />
{counter start=0 assign=&#8217;customizationField&#8217;}<br />
{foreach from=$customizationFields item=&#8217;field&#8217; name=&#8217;customizationFields&#8217;}<br />
{if $field.type == 0}<br />
&lt;li class=&raquo;customizationUploadLine{if $field.required} required{/if}&raquo;&gt;{assign var=&#8217;key&#8217; value=&#8217;pictures_&#8217;|cat:$product-&gt;id|cat:&#8217;_'|cat:$field.id_customization_field}<br />
{if isset($pictures.$key)}&lt;div class=&raquo;customizationUploadBrowse&raquo;&gt;&lt;img src=&raquo;{$pic_dir}{$pictures.$key}_small&raquo; alt=&raquo;" /&gt;&lt;a href=&raquo;{$link-&gt;getUrlWith(&#8216;deletePicture&#8217;, $field.id_customization_field)}&raquo;&gt;&lt;img src=&raquo;{$img_dir}icon/delete.gif&raquo; alt=&raquo;{l s=&#8217;delete&#8217;}&raquo; class=&raquo;customization_delete_icon&raquo; /&gt;&lt;/a&gt;&lt;/div&gt;{/if}<br />
&lt;div class=&raquo;customizationUploadBrowse&raquo;&gt;&lt;input type=&raquo;file&raquo; name=&raquo;file{$field.id_customization_field}&raquo; id=&raquo;img{$customizationField}&raquo; class=&raquo;customization_block_input {if isset($pictures.$key)}filled{/if}&raquo; /&gt;{if $field.required}&lt;sup&gt;*&lt;/sup&gt;{/if}<br />
&lt;div class=&raquo;customizationUploadBrowseDescription&raquo;&gt;{if !empty($field.name)}{$field.name}{else}{l s=&#8217;Please select an image file from your hard drive&#8217;}{/if}&lt;/div&gt;&lt;/div&gt;<br />
&lt;/li&gt;<br />
{counter}<br />
{/if}<br />
{/foreach}<br />
&lt;/ul&gt;<br />
{/if}<br />
&lt;div class=&raquo;clear&raquo;&gt;&lt;/div&gt;<br />
{if $product-&gt;text_fields|intval}<br />
&lt;h2&gt;{l s=&#8217;Texts&#8217;}&lt;/h2&gt;<br />
&lt;ul id=&raquo;text_fields&raquo;&gt;<br />
{counter start=0 assign=&#8217;customizationField&#8217;}<br />
{foreach from=$customizationFields item=&#8217;field&#8217; name=&#8217;customizationFields&#8217;}<br />
{if $field.type == 1}<br />
&lt;li class=&raquo;customizationUploadLine{if $field.required} required{/if}&raquo;&gt;{assign var=&#8217;key&#8217; value=&#8217;textFields_&#8217;|cat:$product-&gt;id|cat:&#8217;_'|cat:$field.id_customization_field}<br />
{if !empty($field.name)}{$field.name}{/if}&lt;input type=&raquo;text&raquo; name=&raquo;textField{$field.id_customization_field}&raquo; id=&raquo;textField{$customizationField}&raquo; value=&raquo;{if isset($textFields.$key)}{$textFields.$key|stripslashes}{/if}&raquo; class=&raquo;customization_block_input&raquo; /&gt;{if $field.required}&lt;sup&gt;*&lt;/sup&gt;{/if}<br />
&lt;/li&gt;<br />
{counter}<br />
{/if}<br />
{/foreach}<br />
&lt;/ul&gt;<br />
{/if}<br />
&lt;p style=&raquo;clear: left;&raquo; id=&raquo;customizedDatas&raquo;&gt;<br />
&lt;input type=&raquo;hidden&raquo; name=&raquo;quantityBackup&raquo; id=&raquo;quantityBackup&raquo; value=&raquo;" /&gt;<br />
&lt;input type=&raquo;hidden&raquo; name=&raquo;submitCustomizedDatas&raquo; value=&raquo;1&#8243; /&gt;<br />
&lt;input type=&raquo;button&raquo; class=&raquo;button&raquo; value=&raquo;{l s=&#8217;Save&#8217;}&raquo; onclick=&raquo;javascript:saveCustomization()&raquo; /&gt;<br />
&lt;/p&gt;<br />
&lt;/form&gt;<br />
&lt;p class=&raquo;clear required&raquo;&gt;&lt;sup&gt;*&lt;/sup&gt; {l s=&#8217;required fields&#8217;}&lt;/p&gt;<br />
&lt;/div&gt;<br />
{/if}</p>
<p>{if $packItems|@count &gt; 0}<br />
&lt;div&gt;<br />
&lt;h2&gt;{l s=&#8217;Pack content&#8217;}&lt;/h2&gt;<br />
{include file=$tpl_dir./product-list.tpl products=$packItems}<br />
&lt;/div&gt;<br />
{/if}</p>
<p>{/if}</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://look-in.net/2010/04/11/podderzhka-tovarov-s-tsenoy-po-zaprosu-prestashop/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://look-in.net/2010/04/11/podderzhka-tovarov-s-tsenoy-po-zaprosu-prestashop/</feedburner:origLink></item>
		<item>
		<title>Subcategories in manufacturers module for prestashop</title>
		<link>http://feedproxy.google.com/~r/look-in/EmptyPages/~3/NI2ILaEKNUE/</link>
		<comments>http://look-in.net/2010/03/27/subcategories-in-manufactures-module-prestashop/#comments</comments>
		<pubDate>Sat, 27 Mar 2010 19:43:02 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[WebDev]]></category>
		<category><![CDATA[projects]]></category>
		<category><![CDATA[module]]></category>
		<category><![CDATA[prestashop]]></category>
		<category><![CDATA[www.wo-da.ru]]></category>

		<guid isPermaLink="false">http://look-in.net/?p=321</guid>
		<description><![CDATA[When you choose manufacturer in default prestashop site &#8211; you get list of all products of this manufacture, without any grouping. Module  blockmancategories add a list of categories into manufacturer page.

This module was developed for shop www.wo-da.ru.
PS. This module also compatible with Cache module.
update:
PS. This module also compatible with Prestashop 1.3.1.
]]></description>
			<content:encoded><![CDATA[<p>When you choose manufacturer in default prestashop site &#8211; you get list of all products of this manufacture, without any grouping. Module  blockmancategories add a list of categories into manufacturer page.</p>
<p><span id="more-321"></span></p>

<a  href="http://look-in.net/2010/03/27/subcategories-in-manufactures-module-prestashop/prestashop_module_roca/" title="Подкатегории для производителей. Модуль prestashop. ROCA"><img width="150" height="150" src="http://look-in.net/wp-content/uploads/2010/03/prestashop_module_roca-150x150.jpg" class="attachment-thumbnail" alt="Подкатегории для производителей. Модуль prestashop. ROCA" title="Подкатегории для производителей. Модуль prestashop. ROCA" /></a>
<a  href="http://look-in.net/2010/03/27/subcategories-in-manufactures-module-prestashop/prestashop_module_hansgrohe/" title="Подкатегории для производителей. Модуль prestashop. Hansgrohe"><img width="150" height="122" src="http://look-in.net/wp-content/uploads/2010/03/prestashop_module_hansgrohe.jpg" class="attachment-thumbnail" alt="Подкатегории для производителей. Модуль prestashop. Hansgrohe" title="Подкатегории для производителей. Модуль prestashop. Hansgrohe" /></a>
<a  href="http://look-in.net/2010/03/27/subcategories-in-manufactures-module-prestashop/prestashop_module_jacob_delafon/" title="Подкатегории для производителей. Модуль prestashop. Jacob Delafon"><img width="150" height="150" src="http://look-in.net/wp-content/uploads/2010/03/prestashop_module_jacob_delafon-150x150.jpg" class="attachment-thumbnail" alt="Подкатегории для производителей. Модуль prestashop. Jacob Delafon" title="Подкатегории для производителей. Модуль prestashop. Jacob Delafon" /></a>

<p>This module was developed for shop <a  href="http://www.wo-da.ru/" target="_blank">www.wo-da.ru</a>.</p>
<p>PS. This module also compatible with <a  href="http://look-in.net/2009/12/28/cache-module-prestashop/lang-pref/en/" target="_blank">Cache module</a>.</p>
<p><strong>update</strong>:</p>
<p>PS. This module also compatible with Prestashop 1.3.1.</p>
]]></content:encoded>
			<wfw:commentRss>http://look-in.net/2010/03/27/subcategories-in-manufactures-module-prestashop/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		<feedburner:origLink>http://look-in.net/2010/03/27/subcategories-in-manufactures-module-prestashop/</feedburner:origLink></item>
		<item>
		<title>Hook в шаблонах prestashop</title>
		<link>http://feedproxy.google.com/~r/look-in/EmptyPages/~3/2zlpwlM2EGo/</link>
		<comments>http://look-in.net/2010/03/24/prestashop-template-hook/#comments</comments>
		<pubDate>Wed, 24 Mar 2010 11:50:52 +0000</pubDate>
		<dc:creator>slookin</dc:creator>
				<category><![CDATA[WebDev]]></category>
		<category><![CDATA[translation]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[prestashop]]></category>
		<category><![CDATA[smarty]]></category>

		<guid isPermaLink="false">http://look-in.net/?p=309</guid>
		<description><![CDATA[Перевод рецепта по созданию HOOK&#8217;а для Prestashop.
Шаблоны для prestashop базируются на шаблонизаторе Smarty и все модули используют хуки (hooks) как определение места положения модуля на странице.
По умолчанию в prestashop есть следущие хуки: rightColumn, leftColumn, payment, paymentReturn, updateOrderStatus, top, footer, productActions, cart, customerAccount, header, productTab, productTabContent, home и т.д.
Если же нужно создать новый хук для размещения [...]]]></description>
			<content:encoded><![CDATA[<p>Перевод рецепта по созданию HOOK&#8217;а для Prestashop.</p>
<p>Шаблоны для prestashop базируются на шаблонизаторе Smarty и все модули используют хуки (hooks) как определение места положения модуля на странице.</p>
<p>По умолчанию в prestashop есть следущие хуки: rightColumn, leftColumn, payment, paymentReturn, updateOrderStatus, top, footer, productActions, cart, customerAccount, header, productTab, productTabContent, home и т.д.</p>
<p>Если же нужно создать новый хук для размещения вашего модуля, то вот краткая инструкция как это сделать:</p>
<p><span id="more-309"></span></p>
<p>1. Добавить описание хука в базе данные &#8211; таблица ps_hook… (ps_ это префикс prestashop в моей базе, у вас может быть иначе)</p>
<pre>insert into ps_hook(name,title,description,position)
values ('new_hook','New hook for footer page','Added for new module',1)</pre>
<p>2. В обработчике страницы изменить код обработки хуков (например в footer.php)</p>
<p>было</p>
<pre> $smarty-&gt;assign(array(</pre>
<pre>        'HOOK_RIGHT_COLUMN' =&gt; Module::hookExec('rightColumn'),</pre>
<pre>        'HOOK_FOOTER' =&gt; Module::hookExec('footer'),</pre>
<pre>        'content_only' =&gt; intval(Tools::getValue('content_only'))));</pre>
<pre>        $smarty-&gt;display(_PS_THEME_DIR_.'footer.tpl');</pre>
<p>должно стать</p>
<pre> $smarty-&gt;assign(array(</pre>
<pre>        'HOOK_RIGHT_COLUMN' =&gt; Module::hookExec('rightColumn'),</pre>
<pre>        'HOOK_FOOTER' =&gt; Module::hookExec('footer'),</pre>
<pre>        <span style="color: #ff0000;">'HOOK_NEW' =&gt; Module::hookExec('new_hook'),</span></pre>
<pre>        'content_only' =&gt; intval(Tools::getValue('content_only'))));</pre>
<pre>        $smarty-&gt;display(_PS_THEME_DIR_.'footer.tpl');</pre>
<p>3. Вставьте {$HOOK_NEW} в ваш smarty шаблон (в нашем случае footer.tpl)</p>
<p>PS. У вас должно быть что-то что публиковаться в новый хук &#8211; это может быть новый или модифицированный существующий модуль.</p>
<p><strong>О Prestashop (<a  href="http://www.prestashop.com" target="_blank">www.prestashop.com</a>)<br />
</strong></p>
<p>Prestashop &#8211; это легковесный движок интернет-магазина. В базовой поставке уже достаточно модулей для старта магазина среднего уровня. Включенный же в стандартную поставку удобный и красивый дизайн позволяет быстро стартовать магазин. Сообществом пользователей разработанно большое количество дополнительных модулей, которые расширяют возможность базового движка.  Хорошо продуманная внутреняя архитектура позволяет сторонним разработчикам легко добавять дополнительную функциональность.</p>
<p>источник: <a  href="http://www.prestashop.com/forums/viewthread/12637/" target="_blank">http://www.prestashop.com/forums/viewthread/12637/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://look-in.net/2010/03/24/prestashop-template-hook/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://look-in.net/2010/03/24/prestashop-template-hook/</feedburner:origLink></item>
		<item>
		<title>Prestashop модуль Catalog Evaluation</title>
		<link>http://feedproxy.google.com/~r/look-in/EmptyPages/~3/peFWa9u9jWc/</link>
		<comments>http://look-in.net/2010/03/19/prestashop-modul-catalog-evaluation/#comments</comments>
		<pubDate>Fri, 19 Mar 2010 11:09:10 +0000</pubDate>
		<dc:creator>slookin</dc:creator>
				<category><![CDATA[WebDev]]></category>
		<category><![CDATA[projects]]></category>
		<category><![CDATA[translation]]></category>
		<category><![CDATA[prestashop]]></category>

		<guid isPermaLink="false">http://look-in.net/?p=302</guid>
		<description><![CDATA[ Исправил ошибку с оценкой “качества” описания продукта и привинтил русский перевод.
Скачать исправленную версию. 
О модуле: Модуль позволяет быстро найти товары у которых незаполнены поля описания или нет изображений. Просто и красиво.
http://www.prestastore.com/back-office-tools/749-catalog-evaluation.html
]]></description>
			<content:encoded><![CDATA[<p><a  href="http://look-in.net/wp-content/uploads/2010/03/image.png" class="thickbox no_icon" rel="gallery-302" title="image"><img style="display: inline; border: 0px;" title="image" src="http://look-in.net/wp-content/uploads/2010/03/image_thumb.png" border="0" alt="image" width="57" height="57" /></a> Исправил ошибку с оценкой “качества” описания продукта и привинтил русский перевод.</p>
<p><a  href="http://look-in.net/wp-content/uploads/2010/03/statscheckup_fixed.zip" target="_blank">Скачать исправленную версию. </a></p>
<p>О модуле: Модуль позволяет быстро найти товары у которых незаполнены поля описания или нет изображений. Просто и красиво.</p>
<p><a  title="http://www.prestastore.com/back-office-tools/749-catalog-evaluation.html" href="http://www.prestastore.com/back-office-tools/749-catalog-evaluation.html">http://www.prestastore.com/back-office-tools/749-catalog-evaluation.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://look-in.net/2010/03/19/prestashop-modul-catalog-evaluation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://look-in.net/2010/03/19/prestashop-modul-catalog-evaluation/</feedburner:origLink></item>
		<item>
		<title>Новости Prestashop (#25)</title>
		<link>http://feedproxy.google.com/~r/look-in/EmptyPages/~3/7Wt4yQ3IsK4/</link>
		<comments>http://look-in.net/2010/03/12/novosti-prestashop-25/#comments</comments>
		<pubDate>Fri, 12 Mar 2010 08:33:28 +0000</pubDate>
		<dc:creator>slookin</dc:creator>
				<category><![CDATA[WebDev]]></category>
		<category><![CDATA[translation]]></category>
		<category><![CDATA[prestashop]]></category>

		<guid isPermaLink="false">http://look-in.net/2010/03/12/novosti-prestashop-25/</guid>
		<description><![CDATA[
 

PrestaShop новостное письмо # 25 
11 Март , 2010
Доступна версия 1.3 beta 1 PrestaShop!

&#160;
За последнюю неделю сделаны следующие изменения:

Исправления в CSV импорте 
Появилась возможность добавлять javascript блоки в тектовое поля через TinyMCE 
Исправления в поиске по тегам 
Исправления в модулях PaypalAPI и Moneybookers 
Упарвления упаковками продуктов 
Адрес заказчика отображается на сводной странице 
Исправления в [...]]]></description>
			<content:encoded><![CDATA[<p><a  href="http://www.prestashop.com/newsletters/redirect.php?id=25&#038;link=http://www.prestashop.com/en/downloads/?utm_source=mmt&#038;utm_medium=email&#038;utm_campaign=psnews25"><img alt="PrestaShop 1.3 beta1" src="http://www.prestashop.com/newsletters/025/images/version-13beta1.jpg" /></a></p>
<p> <span id="more-301"></span><br />
<h4></h4>
<p>PrestaShop новостное письмо # 25 </p>
<p>11 Март , 2010</p>
<p>Доступна версия 1.3 beta 1 PrestaShop!</p>
<p><a  href="http://www.prestashop.com/newsletters/redirect.php?id=25&#038;link=http://www.prestashop.com/en/downloads/?utm_source=mmt&#038;utm_medium=email&#038;utm_campaign=psnews25"></a></p>
<p>&#160;</p>
<p>За последнюю неделю сделаны следующие изменения:</p>
<ul>
<li>Исправления в CSV импорте </li>
<li>Появилась возможность добавлять javascript блоки в тектовое поля через TinyMCE </li>
<li>Исправления в поиске по тегам </li>
<li>Исправления в модулях PaypalAPI и Moneybookers </li>
<li>Упарвления упаковками продуктов </li>
<li>Адрес заказчика отображается на сводной странице </li>
<li>Исправления в скидках без налогов </li>
<li>Исключена возможность удаления последнего поддомена. </li>
</ul>
<p>Полный спиоск измений в <a href="http://www.prestashop.com/newsletters/redirect.php?id=25&amp;link=http://www.prestashop.com/download/changelog_1.3.0.3.txt"><b>CHANGELOG</b></a> или в SVN.</p>
<p>&#160;<a  href="http://www.prestashop.com/newsletters/redirect.php?id=25&#038;link=http://www.prestashop.com/en/downloads/?utm_source=mmt&#038;utm_medium=email&#038;utm_campaign=psnews25">Скачать PrestaShop v.1.3 Beta 1</a>     </p>
<h4>Модуль в подарок</h4>
<p><a  href="http://www.prestashop.com/newsletters/redirect.php?id=25&#038;link=http://www.prestastore.com/outils-d-administration-back-office/749-catalog-evaluation.html/?utm_source=mmt&#038;utm_medium=email&#038;utm_campaign=psnews25"><img alt="Evaluation Catalogue" src="http://www.prestashop.com/newsletters/025/images/store_en.jpg" /></a></p>
<p><b>На этой неделе PrestaStore предлагает бесплатный модуль: “Catalog Checkup”!</b>     <br />Этот модуль дает возможность проверить в реальном времени качество описания товаров в вашем каталоге<b>!</b>     <br /><b>Разработан командой PrestaShop team</b>, совместим с версиями 1.2 и выше . </p>
<p><a  href="http://www.prestashop.com/newsletters/redirect.php?id=25&#038;link=http://www.prestastore.com/outils-d-administration-back-office/749-catalog-evaluation.html/?utm_source=mmt&#038;utm_medium=email&#038;utm_campaign=psnews25">Скачать “Catalog Checkup” модуль on PrestaStore</a></p>
<p>&#160;</p>
<p>Источник: <a  title="http://www.prestashop.com/newsletters/025/newsmail_en.html" href="http://www.prestashop.com/newsletters/025/newsmail_en.html">http://www.prestashop.com/newsletters/025/newsmail_en.html</a></p>
</p>
<p><b><a href="http://www.prestashop.com/infos.php?email=slooki.n@gmail.com&amp;nltoken=464fb98055956a6d3c9122ca0107dcac146dab34"></a></b></p>
]]></content:encoded>
			<wfw:commentRss>http://look-in.net/2010/03/12/novosti-prestashop-25/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://look-in.net/2010/03/12/novosti-prestashop-25/</feedburner:origLink></item>
		<item>
		<title>Updated plugin Google sitemap with Polyglot support</title>
		<link>http://feedproxy.google.com/~r/look-in/EmptyPages/~3/tlBRe_TndKY/</link>
		<comments>http://look-in.net/2010/01/11/polyglot-sitemap-wordpress/#comments</comments>
		<pubDate>Mon, 11 Jan 2010 09:52:32 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[WebDev]]></category>
		<category><![CDATA[projects]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[sitemap]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://look-in.net/?p=290</guid>
		<description><![CDATA[I have customize plugin for Wordpress Google XML Sitemaps (author Arne Brachhold) in order to put in sitemap.xml all localized links to posts, my multilingual blog based on Polyglot plugin (author Martin Chlupac).

You can download plugin with source code. google-sitemap-generator_polyglot.zip
Licence: GNU GPL
My plugin based on : Google XML Sitemaps version 3.2.2 и Polyglot 2.3
Tested on [...]]]></description>
			<content:encoded><![CDATA[<p>I have customize plugin for Wordpress <a  href="http://www.arnebrachhold.de/redir/sitemap-home/" target="_blank">Google XML Sitemaps</a> (author <a  href="http://www.arnebrachhold.de/" target="_blank">Arne Brachhold</a>) in order to put in sitemap.xml all localized links to posts, my multilingual blog based on <a  href="http://fredfred.net/skriker/index.php/polyglot" target="_blank">Polyglot</a> plugin (author <a  href="http://fredfred.net/skriker/">Martin Chlupac</a>).</p>
<p><span id="more-290"></span></p>
<p>You can download plugin with source code. <a  href="http://look-in.net/wp-content/uploads/2010/01/google-sitemap-generator_polyglot.zip">google-sitemap-generator_polyglot.zip</a></p>
<p>Licence: GNU GPL</p>
<p>My plugin based on : <a  href="http://www.arnebrachhold.de/redir/sitemap-home/" target="_blank">Google XML Sitemaps</a> version 3.2.2 и <a  href="http://fredfred.net/skriker/index.php/polyglot" target="_blank">Polyglot</a> 2.3</p>
<p>Tested on wordpress 2.9</p>
<p>Special thanks to <a  href="http://www.qianqin.de/2007/01/29/making-wordpress-multilingual/" target="_blank">Qian Qin</a></p>
]]></content:encoded>
			<wfw:commentRss>http://look-in.net/2010/01/11/polyglot-sitemap-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://look-in.net/2010/01/11/polyglot-sitemap-wordpress/</feedburner:origLink></item>
	</channel>
</rss><!-- Dynamic page generated in 2.112 seconds. --><!-- Cached page generated by WP-Super-Cache on 2010-07-26 11:23:02 --><!-- Compression = gzip -->
