<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
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/"
> <channel><title>empty pages &#187; WebDev</title> <atom:link href="http://look-in.net/category/webdev/feed/" rel="self" type="application/rss+xml" /><link>http://look-in.net</link> <description></description> <lastBuildDate>Mon, 05 Dec 2011 06:07:14 +0000</lastBuildDate> <generator>http://wordpress.org/?v=2.9.2</generator> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <item><title>RSS с cайта http://brickpop.com/</title><link>http://look-in.net/2011/06/14/rss-s-cayta/</link> <comments>http://look-in.net/2011/06/14/rss-s-cayta/#comments</comments> <pubDate>Tue, 14 Jun 2011 08:19:18 +0000</pubDate> <dc:creator>slookin</dc:creator> <category><![CDATA[WebDev]]></category> <category><![CDATA[lego]]></category> <category><![CDATA[rss]]></category> <guid
isPermaLink="false">http://look-in.net/?p=460</guid> <description><![CDATA[Через Yaho.pipe сделал что бы картинки в RSS подгружались, а то скучно читать их RSS.
Новый URL RSS: http://feeds.feedburner.com/lego_Brickpop
И да, кто не знает, brickpop публикует изображения интересных lego моделей.
]]></description> <content:encoded><![CDATA[<p>Через Yaho.pipe сделал что бы картинки в RSS подгружались, а то скучно читать их RSS.<br
/> Новый URL RSS: <a
href="http://feeds.feedburner.com/lego_Brickpop">http://feeds.feedburner.com/lego_Brickpop</a></p><p>И да, кто не знает, brickpop публикует изображения интересных lego моделей.</p> ]]></content:encoded> <wfw:commentRss>http://look-in.net/2011/06/14/rss-s-cayta/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>RSS потоки с форума DoubleBrick</title><link>http://look-in.net/2011/04/17/rss-doublebrick/</link> <comments>http://look-in.net/2011/04/17/rss-doublebrick/#comments</comments> <pubDate>Sun, 17 Apr 2011 11:31:22 +0000</pubDate> <dc:creator>slookin</dc:creator> <category><![CDATA[WebDev]]></category> <category><![CDATA[nxt]]></category> <category><![CDATA[projects]]></category> <category><![CDATA[lego]]></category> <category><![CDATA[rss]]></category> <guid
isPermaLink="false">http://look-in.net/?p=450</guid> <description><![CDATA[Всем добрый день!
Как и все разработчики, я готов потратить несколько часов сейчас, что бы потом получить дополнительные удобства и экономию времени. Так и сейчас, вместо того что бы регулярно читать форум &#8211; настроил RSS потоки, которые содержат основные обновления. Пользуйтесь, может и вам будет полезно:
DoubleBrick Творчество/технический
http://feeds.feedburner.com/doublebrick_creative_technic
RSS с форума http://www.doublebrick.ru/forums/. Работы участников форума, технический подраздел.
DoubleBrick &#171;Технодром&#187;
http://feeds.feedburner.com/doublebrick_technic
RSS [...]]]></description> <content:encoded><![CDATA[<p>Всем добрый день!</p><p>Как и все разработчики, я готов потратить несколько часов сейчас, что бы потом получить дополнительные удобства и экономию времени. Так и сейчас, вместо того что бы регулярно читать форум &#8211; настроил RSS потоки, которые содержат основные обновления. Пользуйтесь, может и вам будет полезно:</p><div><table
border="0" cellspacing="0" cellpadding="4" width="60%" align="center"><tbody><tr
style="background-color: #a6b7c7;" valign="middle"><td><a
href="http://feeds.feedburner.com/doublebrick_creative_technic" target="_blank"><img
src="http://look-in.net/wp-includes/images/rss.png" border="0" alt="rss" width="14" height="14" align="bottom" /></a></td><td>DoubleBrick Творчество/технический</td><td><a
href="http://feeds.feedburner.com/doublebrick_creative_technic" target="_blank">http://feeds.feedburner.com/doublebrick_creative_technic</a></td><td>RSS с форума http://www.doublebrick.ru/forums/. Работы участников форума, технический подраздел.</td></tr><tr
style="background-color: #f0f0f0;" valign="middle"><td><a
href="http://feeds.feedburner.com/doublebrick_technic" target="_blank"><img
src="http://look-in.net/wp-includes/images/rss.png" border="0" alt="rss" width="14" height="14" align="bottom" /></a></td><td>DoubleBrick &laquo;Технодром&raquo;</td><td><a
href="http://feeds.feedburner.com/doublebrick_technic">http://feeds.feedburner.com/doublebrick_technic</a></td><td>RSS c форума http://www.doublebrick.ru/forums/. Lego Technic &#8211; интересные решения и вопросы.</td></tr><tr
style="background-color: #a6b7c7;" valign="middle"><td><a
href="http://feeds.feedburner.com/doublebrick_buy" target="_blank"><img
src="http://look-in.net/wp-includes/images/rss.png" border="0" alt="rss" width="14" height="14" align="bottom" /></a></td><td>DoubleBrick &laquo;Куплю&raquo;</td><td><a
href="http://feeds.feedburner.com/doublebrick_buy" target="_blank">http://feeds.feedburner.com/doublebrick_buy</a></td><td>RSS c форума http://www.doublebrick.ru/forums/. О прокупке наборов и деталей лего.</td></tr><tr
style="background-color: #f0f0f0;" valign="middle"><td><a
href="http://feeds.feedburner.com/doublebrick_sell" target="_blank"><img
src="http://look-in.net/wp-includes/images/rss.png" border="0" alt="rss" width="14" height="14" align="bottom" /></a></td><td>DoubleBrick &laquo;Продам&raquo;</td><td><a
href="http://feeds.feedburner.com/doublebrick_sell">http://feeds.feedburner.com/doublebrick_sell</a></td><td>RSS c форума http://www.doublebrick.ru/forums/. О продаже наборов лего.</td></tr><tr
style="background-color: #a6b7c7;" valign="middle"><td><a
href="http://feeds.feedburner.com/doublebrick_sell_parts" target="_blank"><img
src="http://look-in.net/wp-includes/images/rss.png" border="0" alt="rss" width="14" height="14" align="bottom" /></a></td><td>DoubleBrick &laquo;Продам детали&raquo;</td><td><a
href="http://feeds.feedburner.com/doublebrick_sell_parts" target="_blank">http://feeds.feedburner.com/doublebrick_sell_parts</a></td><td>RSS c форума http://www.doublebrick.ru/forums/. О продаже деталей лего.</td></tr></tbody></table></div><p><span
id="more-450"></span></p><p><strong>RSS</strong> — семейство <a
href="http://ru.wikipedia.org/wiki/XML">XML</a>-форматов, предназначенных для описания лент новостей, <a
title="Анонс" href="http://ru.wikipedia.org/wiki/%D0%90%D0%BD%D0%BE%D0%BD%D1%81">анонсов</a> статей, изменений в <a
title="Блог" href="http://ru.wikipedia.org/wiki/%D0%91%D0%BB%D0%BE%D0%B3">блогах</a> и т. п. Информация из различных источников, представленная в формате RSS, может быть собрана, обработана и представлена пользователю в удобном для него виде специальными <a
title="RSS-агрегатор" href="http://ru.wikipedia.org/wiki/RSS-%D0%B0%D0%B3%D1%80%D0%B5%D0%B3%D0%B0%D1%82%D0%BE%D1%80">программами-агрегаторами</a>.</p><p><strong>Лего</strong> &#8211; Основой наборов является <em>кирпичик LEGO</em> — деталь, представляющая собой полый пластмассовый блок, соединяющийся с другими такими же кирпичиками на <a
class="new" title="Шип (техника) (страница отсутствует)" href="http://ru.wikipedia.org/w/index.php?title=%D0%A8%D0%B8%D0%BF_%28%D1%82%D0%B5%D1%85%D0%BD%D0%B8%D0%BA%D0%B0%29&#038;action=edit&#038;redlink=1">шипах</a>. В наборы также могут входить множество других деталей: фигурки людей и животных, колёса и т.д. Существуют наборы, в которые входят электродвигатели, различного рода датчики и даже <a
title="Микроконтроллер" href="http://ru.wikipedia.org/wiki/%D0%9C%D0%B8%D0%BA%D1%80%D0%BE%D0%BA%D0%BE%D0%BD%D1%82%D1%80%D0%BE%D0%BB%D0%BB%D0%B5%D1%80">микроконтроллеры</a>. Наборы позволяют собирать модели автомобилей, самолётов, кораблей, зданий, роботов. Воплощает идею <a
title="Модульность" href="http://ru.wikipedia.org/wiki/%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D1%8C">модульности</a>, наглядно демонстрирующий детям то, как можно решать некоторые технические проблемы, также прививает навыки <a
title="Сборка" href="http://ru.wikipedia.org/wiki/%D0%A1%D0%B1%D0%BE%D1%80%D0%BA%D0%B0">сборки</a>, <a
title="Ремонт" href="http://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D0%BC%D0%BE%D0%BD%D1%82">ремонта</a> и разборки <a
title="Техника" href="http://ru.wikipedia.org/wiki/%D0%A2%D0%B5%D1%85%D0%BD%D0%B8%D0%BA%D0%B0">техники</a>).</p> ]]></content:encoded> <wfw:commentRss>http://look-in.net/2011/04/17/rss-doublebrick/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>OS-commerce: анализ заказов и их выполнений</title><link>http://look-in.net/2011/01/03/os-commerce-analiz-zakazov-i-ih-vyipolneniy/</link> <comments>http://look-in.net/2011/01/03/os-commerce-analiz-zakazov-i-ih-vyipolneniy/#comments</comments> <pubDate>Mon, 03 Jan 2011 12:20:53 +0000</pubDate> <dc:creator>admin</dc:creator> <category><![CDATA[WebDev]]></category> <category><![CDATA[oscommerce]]></category> <category><![CDATA[sql]]></category> <guid
isPermaLink="false">http://look-in.net/?p=387</guid> <description><![CDATA[Задача: посмотреть сколько денег было потерянно на отмененных заказах:
Решение:
SELECT t.orders_id,o.date_purchased, t.value
, s.orders_status_id, st.orders_status_name
, (case s.orders_status_id when 4 then t.value else 0 end) canceled
, (case s.orders_status_id when 3 then t.value else 0 end) delivered
FROM `orders_total` t, orders o
,orders_status_history s
,orders_status st
WHERE
t.orders_id=o.orders_id
and t.class='ot_total'
[...]]]></description> <content:encoded><![CDATA[<pre>Задача: посмотреть сколько денег было потерянно на отмененных заказах:
Решение:
SELECT t.orders_id,o.date_purchased, t.value
  , s.orders_status_id, st.orders_status_name
  , (case s.orders_status_id when 4 then t.value else 0 end) canceled
  , (case s.orders_status_id when 3 then t.value else 0 end) delivered
FROM `orders_total` t, orders o
  ,orders_status_history s
  ,orders_status st
WHERE
  t.orders_id=o.orders_id
  and t.class='ot_total'
  and  s.orders_id=o.orders_id
  and st.orders_status_id=s.orders_status_id
  and  s.orders_status_history_id=(select max(s1.orders_status_history_id) from orders_status_history s1 where s1.orders_id=o.orders_id group by s1.orders_id)
  order by o.date_purchased desc;
Результат:<span id="more-387"></span></pre><table><tbody><tr><td><strong>orders_id<br
/> </strong></td><td><strong>date_purchased</strong></td><td><strong>value</strong></td><td><strong>orders_status_id</strong></td><td><strong>orders_status_name</strong></td><td><strong>canceled</strong></td><td><strong>delivered</strong></td></tr><tr><td>310</td><td>2010-12-29 19:29:09</td><td>10960.0000</td><td>4</td><td>Отменен</td><td>10960.0000</td><td>0.0000</td></tr><tr><td>309</td><td>2010-12-28 18:14:13</td><td>2950.0000</td><td>2</td><td>В обработке</td><td>0.0000</td><td>0.0000</td></tr><tr><td>308</td><td>2010-12-28 12:36:32</td><td>2895.0000</td><td>4</td><td>Отменен</td><td>2895.0000</td><td>0.0000</td></tr><tr><td>307</td><td>2010-12-26 23:47:54</td><td>1002.0000</td><td>4</td><td>Отменен</td><td>1002.0000</td><td>0.0000</td></tr><tr><td>306</td><td>2010-12-24 16:28:59</td><td>3513.0000</td><td>1</td><td>В ожидании</td><td>0.0000</td><td>0.0000</td></tr><tr><td>305</td><td>2010-12-24 16:03:10</td><td>10960.0000</td><td>4</td><td>Отменен</td><td>10960.0000</td><td>0.0000</td></tr><tr><td>304</td><td>2010-12-23 17:57:48</td><td>3631.0000</td><td>4</td><td>Отменен</td><td>3631.0000</td><td>0.0000</td></tr><tr><td>303</td><td>2010-12-23 15:54:17</td><td>10960.0000</td><td>4</td><td>Отменен</td><td>10960.0000</td><td>0.0000</td></tr><tr><td>302</td><td>2010-12-23 00:45:34</td><td>3435.0000</td><td>4</td><td>Отменен</td><td>3435.0000</td><td>0.0000</td></tr><tr><td>301</td><td>2010-12-22 16:26:13</td><td>17900.0000</td><td>4</td><td>Отменен</td><td>17900.0000</td><td>0.0000</td></tr><tr><td>300</td><td>2010-12-22 12:44:10</td><td>1166.0000</td><td>4</td><td>Отменен</td><td>1166.0000</td><td>0.0000</td></tr><tr><td>299</td><td>2010-12-21 22:48:16</td><td>10960.0000</td><td>4</td><td>Отменен</td><td>10960.0000</td><td>0.0000</td></tr><tr><td>298</td><td>2010-12-21 14:21:18</td><td>17900.0000</td><td>4</td><td>Отменен</td><td>17900.0000</td><td>0.0000</td></tr><tr><td>297</td><td>2010-12-20 17:36:44</td><td>1516.0000</td><td>4</td><td>Отменен</td><td>1516.0000</td><td>0.0000</td></tr><tr><td>296</td><td>2010-12-20 13:07:16</td><td>2600.0000</td><td>4</td><td>Отменен</td><td>2600.0000</td><td>0.0000</td></tr><tr><td>295</td><td>2010-12-20 10:41:19</td><td>1324.0000</td><td>4</td><td>Отменен</td><td>1324.0000</td><td>0.0000</td></tr><tr><td>294</td><td>2010-12-20 02:12:01</td><td>1760.0000</td><td>4</td><td>Отменен</td><td>1760.0000</td><td>0.0000</td></tr><tr><td>293</td><td>2010-12-20 01:14:21</td><td>370.0000</td><td>4</td><td>Отменен</td><td>370.0000</td><td>0.0000</td></tr><tr><td>292</td><td>2010-12-15 15:54:30</td><td>1116.0000</td><td>4</td><td>Отменен</td><td>1116.0000</td><td>0.0000</td></tr><tr><td>291</td><td>2010-12-13 02:11:44</td><td>510.0000</td><td>4</td><td>Отменен</td><td>510.0000</td><td>0.0000</td></tr><tr><td>290</td><td>2010-12-12 15:08:08</td><td>748.0000</td><td>4</td><td>Отменен</td><td>748.0000</td><td>0.0000</td></tr><tr><td>289</td><td>2010-12-11 15:36:55</td><td>1189.0000</td><td>4</td><td>Отменен</td><td>1189.0000</td><td>0.0000</td></tr><tr><td>288</td><td>2010-12-10 12:36:33</td><td>2400.0000</td><td>3</td><td>Доставлен</td><td>0.0000</td><td>2400.0000</td></tr><tr><td>287</td><td>2010-12-07 15:22:32</td><td>10843.0000</td><td>1</td><td>В ожидании</td><td>0.0000</td><td>0.0000</td></tr><tr><td>286</td><td>2010-12-07 15:16:19</td><td>8008.0000</td><td>1</td><td>В ожидании</td><td>0.0000</td><td>0.0000</td></tr><tr><td>285</td><td>2010-12-06 19:58:11</td><td>10960.0000</td><td>4</td><td>Отменен</td><td>10960.0000</td><td>0.0000</td></tr><tr><td>284</td><td>2010-12-04 22:03:37</td><td>10960.0000</td><td>4</td><td>Отменен</td><td>10960.0000</td><td>0.0000</td></tr></tbody></table> ]]></content:encoded> <wfw:commentRss>http://look-in.net/2011/01/03/os-commerce-analiz-zakazov-i-ih-vyipolneniy/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Prestashop: Изменения в базовых модулях</title><link>http://look-in.net/2010/06/15/cart-lefcolumn-hook/</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> </item> <item><title>SVN to RSS для Prestashop</title><link>http://look-in.net/2010/06/09/svn-to-rss-prestashop/</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> </item> <item><title>Обновился Prestashop &#8211; версия 1.3</title><link>http://look-in.net/2010/05/31/prestashop-v-1-3-release/</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> </item> <item><title>Поддержка товаров с ценой &#171;по запросу&#187;. prestashop.</title><link>http://look-in.net/2010/04/11/podderzhka-tovarov-s-tsenoy-po-zaprosu-prestashop/</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> </item> <item><title>Subcategories in manufacturers module for prestashop</title><link>http://look-in.net/2010/03/27/subcategories-in-manufactures-module-prestashop/</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 and 1.4.x
]]></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 and 1.4.x</p> ]]></content:encoded> <wfw:commentRss>http://look-in.net/2010/03/27/subcategories-in-manufactures-module-prestashop/feed/</wfw:commentRss> <slash:comments>12</slash:comments> </item> <item><title>Hook в шаблонах prestashop</title><link>http://look-in.net/2010/03/24/prestashop-template-hook/</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>2</slash:comments> </item> <item><title>Prestashop модуль Catalog Evaluation</title><link>http://look-in.net/2010/03/19/prestashop-modul-catalog-evaluation/</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> </item> </channel> </rss>
