## ОПИСАНИЕ

Django_template_common -- набор тегов для Джанго-шаблонов общего назначения,
которые будут полезны почти любому яндексовому Джанго-проекту.

### paginator

Реализует стандартный яндексовый паджинатор по страницам. Данные читает из
контекста в том же виде, в котором их туда передает стандартная generic
вьюха object_list.

В простейшем случае вызывается так:

    {% paginator %}

Для того, чтобы паджинатор сохранял параметры в ссылках, когда будет дописывать
туда "?page=2", эти параметры нужно явно передать в переменные контекста и указать
названия в теге через запятую без пробелов и кавычек:

    {% paginator param1,param2 %}

**Внимание**. Поскольку сам тег рисует только нужный HTML, необходимый css для
оформления и js для навигации по Ctrl+стрелки нужно брать в Лего-блоке b-pager.
css для паджинатора появился в Лего 2.0, js — в Лего 2.1.

### media

Состаляет ссылку на статический файл, присоединяя его к MEDIA_URL, если надо:

    {% media "css/styles.css" %} -> /media/css/styles.css
    {% media "/robots.txtf" %} -> /robots.txt
    {% media "http://images.yandex.ru/blank.gif" %} -> http://images.yandex.ru/blank.gif

Понимает как литеральные строки, так и переменные.

Также принимает три флага:

-   absolute: строит абсолютный URL со схемой и доменом (использует
    contrib.sites)
-   timestamp: добавляет timestamp в параметры URL'а, если находит этот
    статический файл на диске в MEDIA_ROOT. Для .css и .js файлов это
    поведение по умолчанию.
-   no-timestamp: соответственно, не выводит timestamp для .css и .js файлов

Несколько флагов можно указывать через запятую:

    {% media "img/success.jpg" "absoulte, timestamp" %}

Есть тонкий момент, когда в проекте кроме собственных проектных media-файлов
есть ещё media-файлы, загружаемые пользователями. Обычно эти файлы находятся
на диске в разных местах: одни где-то внутри кода проекта, другие рядом. В этом
случае возникает вопрос, куда показывать `MEDIA_ROOT`. Если показать его на
пользовательскую директорию, чтобы правильно работал upload, то под ним не
будут находиться .js и .css файлы проект, и тег {% media %} не сможет
составлять для них timestamp'ы. Эту проблему рекомендуется решать симлинками из
пользовательского MEDIA_ROOT на директории js и css в коде проекта.

## УСТАНОВКА

Устанавливается пакетом "django_template_common".

## ПОДКЛЮЧЕНИЕ

1.  Прописать установленный пакет в INSTALLED_APPS:

        INSTALLED_APPS = (
           # ...
           'template_common',
        )

2. В шаблоне перед использованием подключить библиотеку через

        {% load template_common %}
