Не могу найти документацию по особым конструкциям в smarty

Дмитрий

Здравствуйте!

Вопрос новичка! Что за конструкции в smarty в скобках "{%" ? Нигде не могу найти.

Вот еще пример:

{% if (p.edit_rights) { %}

{%

if (typeof p.thumb.size === 'object' && p.thumb.size && p.thumb.size) {

height = p.thumb.size.height

} else {

height = p.thumb.bound.height || p.thumb.bound.width;

}

%}

Похоже на JavaScript вообще!!!

Спасибо!

22 августа 2017
  • Алексей Webasyst 22 августа 2017 19:12

    А это вероятно и есть шаблоны JS.

  • Дмитрий 23 августа 2017 09:52

    К величайшему сожалению я ничего не понял из вашего ответа. Но все равно спасибо. Но Алексей, может все-таки объясните? Или кинете ссылочку на "почитать"?
    Шаблонов с такими скобками много в приложении photos.
    Люди на форме такими вещами пользуются. Значит есть где-то документация или хоть что-то?

  • Дмитрий 23 августа 2017 10:03

    Посмотрел сейчас в скомпилированных файлах смарти. Там эти скобки ни во что не скомпилированы! Прямо так в тексте и висят. У меня начало складываться ощущение, что где-то в движке происходит докомпиляция. Вот кусок из скомпилированного шаблона:

            <h1>
                <a href="#{%#o.hash%}/" class="p-back-to-list">{%#$_('← Back')%}</a>
                <span class="editable title" id="photo-name">{%#p.name%}</span>
                <input type="text" id="photo-name-input" class="p-photo-h1-edit" style="display:none;">
                <span class="p-rate">
                    <a href="javascript: void(0);" title="Оценить" id="photo-rate" class="p-rate-photo" data-rate="{%#p.rate%}">
                        {%#$.photos.getRatingHtml(p.rate, 16, true)%}
                    </a>
                    <!-- plugin hook: "backend_photo.after_rate" -->
                    {% if (hooks.backend_photo) { %}
                        {% for (var plugin in hooks.backend_photo) { %}
                            {%# hooks.backend_photo[plugin].after_rate %}
                        {% } %}
                    {% } %}
                    <!-- end plugin hook: "backend_photo.after_rate" -->
                </span>
            </h1>
    

    К сожалению в коде движка пока ничего не нашел


  • Дмитрий 23 августа 2017 10:08

    И в тексте страницы те же скобки. То есть они вообще к смарти не относятся. Что это тогда? Как действует? Почему я это увидел в первый раз, занимаясь сайтами с 2004 года?

    Извините, пойду напьюсь.

  • Дмитрий 23 августа 2017 10:27

    Все ясно! https://github.com/blueimp/JavaScript-Templates

    Всем спасибо за помощь! Как же хорошо, что есть такое отзывчивое сообщество!



Чтобы добавить комментарий, зарегистрируйтесь или войдите