Список изменений в плагинах между версиями 0.9.3 по 0.9.4
0. Как и шаблон, многие плагины тоже изменились. В котором конечной целью является полный переход на TWIG и отказ от старого шаблонизатора.
1. Прекращена поддержка следующий плагинов lastnews, popular вместо них используйте плагин xnews.
2. Плагин archive переведен под шаблонизатор TWIG.
Изменился тип переменной для вывода плагина (подробности смотрите в документации плагина).
Изменилось содержимое и файлы плагина, содержимое файла entries.tpl перемещено в файл archive.tpl.
В примере показан минимальный набор файла archive.tpl (подробности смотрите в документации плагина).
Изменился тип переменной для вывода плагина (подробности смотрите в документации плагина).
Было [isplugin archive]{plugin_archive}[/isplugin] Стало {% if pluginIsActive('archive') %}{{ callPlugin('archive.show', {'maxnum' : 12, 'counter' : 1, 'template': 'archive', 'cacheExpire': 60}) }}{% endif %}
Изменилось содержимое и файлы плагина, содержимое файла entries.tpl перемещено в файл archive.tpl.
В примере показан минимальный набор файла archive.tpl (подробности смотрите в документации плагина).
{% for entry in entries %} <a href="{{entry.link}}">{{entry.title}} {% if (entry.counter) %}( {{entry.cnt}} {{entry.ctext}} ){% endif %}</a> {% endfor %}
3. Плагин calendar переведен под шаблонизатор TWIG.
Изменился тип переменной для вывода плагина (подробности смотрите в документации плагина).
Изменилось содержимое и файлы плагина, содержимое файла entries.tpl перемещено в файл calendar.tpl.
В примере показан минимальный набор файла calendar.tpl (подробности смотрите в документации плагина).
Изменился тип переменной для вывода плагина (подробности смотрите в документации плагина).
Было [isplugin calendar]{plugin_calendar}[/isplugin] Стало {% if pluginIsActive('calendar') %}{{ callPlugin('calendar.show', {'cache': 60 }) }}{% endif %}
Изменилось содержимое и файлы плагина, содержимое файла entries.tpl перемещено в файл calendar.tpl.
В примере показан минимальный набор файла calendar.tpl (подробности смотрите в документации плагина).
{% if (not flags.ajax) %} <script type="text/javascript" language="javascript"> function ng_calendar_walk(month, year, offset) { $.post('/engine/rpc.php', { json : 1, methodName : 'plugin.calendar.show', rndval: new Date().getTime(), params : json_encode({ 'year' : year, 'offset' : offset, 'month' : month }) }, function(data) { // Try to decode incoming data try { resTX = eval('('+data+')'); } catch (err) { alert('Error parsing JSON output. Result: '+linkTX.response); } if (!resTX['status']) { ngNotifyWindow('Error ['+resTX['errorCode']+']: '+resTX['errorText'], 'ERROR'); } else { $('#ngCalendarDiv').html(resTX['data']); } }, "text").error(function() { ngHideLoading(); ngNotifyWindow('HTTP error during request', 'ERROR'); }); } </script> {% endif %} <div id="ngCalendarDiv"> <table id="calendar" align="center"> <tr> <td class="month" onclick="ng_calendar_walk({{ currentEntry.month }}, {{ currentEntry.year }}, 'prev'); return false;">[prev_link]«[/prev_link]</td> <td colspan="5" class="month"><a href="{{ currentMonth.link }}">{{ currentMonth.name }}</a></td> <td class="month" onclick="ng_calendar_walk({{ currentEntry.month }}, {{ currentEntry.year }}, 'next'); return false;">[next_link]»[/next_link]</td> </tr> <tr> <td class="weekday">{{ weekdays[1] }}</td> <td class="weekday">{{ weekdays[2] }}</td> <td class="weekday">{{ weekdays[3] }}</td> <td class="weekday">{{ weekdays[4] }}</td> <td class="weekday">{{ weekdays[5] }}</td> <td class="weekend">{{ weekdays[6] }}</td> <td class="weekend">{{ weekdays[7] }}</td> </tr> {% for week in weeks %} <tr> <td class="{{ week[1].className }}">{% if (week[1].countNews>0) %}<a href="{{ week[1].link }}">{{ week[1].dayNo}}</a>{% else %}{{ week[1].dayNo }}{% endif %}</td> <td class="{{ week[2].className }}">{% if (week[2].countNews>0) %}<a href="{{ week[2].link }}">{{ week[2].dayNo}}</a>{% else %}{{ week[2].dayNo }}{% endif %}</td> <td class="{{ week[3].className }}">{% if (week[3].countNews>0) %}<a href="{{ week[3].link }}">{{ week[3].dayNo}}</a>{% else %}{{ week[3].dayNo }}{% endif %}</td> <td class="{{ week[4].className }}">{% if (week[4].countNews>0) %}<a href="{{ week[4].link }}">{{ week[4].dayNo}}</a>{% else %}{{ week[4].dayNo }}{% endif %}</td> <td class="{{ week[5].className }}">{% if (week[5].countNews>0) %}<a href="{{ week[5].link }}">{{ week[5].dayNo}}</a>{% else %}{{ week[5].dayNo }}{% endif %}</td> <td class="{{ week[6].className }}">{% if (week[6].countNews>0) %}<a href="{{ week[6].link }}">{{ week[6].dayNo}}</a>{% else %}{{ week[6].dayNo }}{% endif %}</td> <td class="{{ week[7].className }}">{% if (week[7].countNews>0) %}<a href="{{ week[7].link }}">{{ week[7].dayNo}}</a>{% else %}{{ week[7].dayNo }}{% endif %}</td> </tr> {% endfor %} </table> </div>
5. В плагине feedback добавили новый тип поля E-mail.
Пример поля по умолчанию в файле site.form.tpl в цикле {% for entry in entries %}{% endfor %} (подробности смотрите в документации плагина).
Пример поля по умолчанию в файле site.form.tpl в цикле {% for entry in entries %}{% endfor %} (подробности смотрите в документации плагина).
{% if entry.type == 'email' %} <tr> <td width="30%">{{ entry.title }}</td> <td width="70%"><input type="text" name="{{ entry.name }}" class="input" /></td> </tr> {% endif %}
5. Плагин lastcomments переведен под шаблонизатор TWIG.
Изменился тип переменной для вывода плагина (подробности смотрите в документации плагина).
Изменилось содержимое и файлы плагина, содержимое файла entries.tpl перемещено в файл lastcomments.tpl.
В примере показан минимальный набор файла lastcomments.tpl (подробности смотрите в документации плагина).
В примере показан минимальный набор файла pp_lastcomments.tpl (подробности смотрите в документации плагина).
Изменился тип переменной для вывода плагина (подробности смотрите в документации плагина).
Было [isplugin lastcomments]{plugin_lastcomments}[/isplugin] Стало {% if pluginIsActive('lastcomments') %}{{ plugin_lastcomments }}{% endif %}
Изменилось содержимое и файлы плагина, содержимое файла entries.tpl перемещено в файл lastcomments.tpl.
В примере показан минимальный набор файла lastcomments.tpl (подробности смотрите в документации плагина).
{% for entry in entries %} Написал:{% if (entry.author_id) and (pluginIsActive('uprofile')) %}<a href="{{ entry.author_link }}">{% endif %}{{ entry.author }}{% if (entry.author_id) and (pluginIsActive('uprofile')) %}</a>{% endif %} В новости:<a href="{{ entry.link }}">{{ entry.title|truncateHTML(30,'...') }}</a> {% endfor %}Изменилось содержимое и файлы плагина, содержимое файла pp_entries.tpl перемещено в файл pp_lastcomments.tpl.
В примере показан минимальный набор файла pp_lastcomments.tpl (подробности смотрите в документации плагина).
{% for entry in entries %} Написал:{% if (entry.author_id) and (pluginIsActive('uprofile')) %}<a href="{{ entry.author_link }}">{% endif %}{{ entry.author }}{% if (entry.author_id) and (pluginIsActive('uprofile')) %}</a>{% endif %} В новости:<a href="{{ entry.link }}">{{ entry.title|truncateHTML(30,'...') }}</a> {% endfor %}
5. Плагин pm переведен под шаблонизатор TWIG.
Изменились типы переменныч для вывода в файле usermenu.tpl (подробности смотрите в документации плагина).
Изменились типы переменныч для вывода в файле usermenu.tpl (подробности смотрите в документации плагина).
Кол-во новых входящих сообщений. Было {pm_unread} стало {{ p.pm.pm_unread }} Общее кол-во входящих сообщений. Было {pm_all} стало {{ p.pm.pm_all }} URL на страницу со входящими сообщениями. Было /plugin/pm/ стало {{ p.pm.link }}