Архивы: Июнь 2011

Обновление Mac OS 10.6.8

Вот и пришел наверное последний релиз Барса.

Обновление 10.6.8 рекомендуется для установки всем пользователям Mac OS X Snow Leopard и включает в себя исправления ошибок операционной системы общего характера, направленные на повышение уровня стабильности, совместимости и безопасности компьютеров Mac. Примеры исправлений:
улучшение в App Store для Mac с целью подготовки Mac к обновлению на Mac OS X Lion;
устранение проблемы, которая могла приводить к неожиданному завершению работы программы «Просмотр»;
улучшение поддержки IPv6;
повышение надежности работы VPN;
выявление и удаление всех известных вариантов Mac Defender
Подробнее о данном обновлении см. на веб-сайте: http://support.apple.com/kb/HT4561?viewlocale=ru_RU
Подробную информацию о содержании безопасности обновления можно найти на веб-сайте: http://support.apple.com/kb/HT1222?viewlocale=ru_RU.

Шаблонные теги и фильты django

Приведу небольшой список шаблонных тегов и фильтров django которые я использую чаще всего в разрабатываемых мной проектых.

Шаблонные теги Django

{% firstof %}

{% firstof var1 var2 var3 %}
Эквивалентен
{% if var1 %}
{{ var1 }}
{% else %}{% if var2 %}
{{ var2 }}
{% else %}{% if var3 %}
{{ var3 }}
{% ensif %}
Если все значение False можно указать строковый литерал по умолчанию {% firstof var1 var2 var3 «not var» %}

{% for %}

forloop.counter — Текущая итерация с 1
forloop.counter0 — Текущая итерация с 0
forloop.revcounter — Количество оставшихся интераций до конца цикла с 1
forloop.revcounter0 — Количество оставшихся интераций до конца цикла с 0
forloop.first — True, если это первая итерация
forloop.last — True, если это последняя итерация

{% empty %} — отображаеться если массив пуст или не найтен в контексте

{% ifchanged %}

Проверяет изменилось ли значение по сравнению с предыдущей интерацией. Используется внутри цикла.

{% ifequal %}

Выводит содержимое блока если оба аргумента равны

{% ifnotequal %}

Аналогичен {% ifequal %}, но проверяет различие аргументов

Шаблонные фильтры


{% now %}

Выводит текущую дату

{% spaceless %}

Удаляет пробельные символы между html тегами (пробелы, табуляция, новая строка)

add

прибавляет агрумент к значению

{{ value|add:»2″ }}

addslashes

Вставляет символы слеша перед ковыяками

capfirst

Переводит первый символ в верхний регистр

center

Центрирует значение в поле заданной ширины

cut

Удаляет все значения из заданной строки

date

Формирует дату согласно заданной строке формата

default

Если поданное на вход фильтра значение равно False, взять значение аргумента

{{ value|default:»papapa» }}

default_if_none

если (и только если) значение равно None, взять значение аргумента

dictsort

принимает список словарей и возвращает его отсорированным по заданному в аргументе ключу

dictsortreversed

принимает список словарей и возвращает его отсорированным в обратном порядке по заданному в аргументе ключу

escape

экранирует html разметку

escapejs

Экранирует символыв строках, предназначенные в строках javascript

filesizeformat

предоставляет величину размера файла в привычном формате

first

возвращает первый элемент списка

fix_ampersands

заменяет символ эмперсанд компонентами &

floatformat

без аргумента округляет значение с плавующей точкой до одного знака с аргументом на количество знаков указанных в арзументе

get_digit

Возвращает запрошенную цифру из заданного целого числа

join

Объединяет значения из заданного списка, разделяя их указанной строкой

last

Возвращает последний элемент списка

length

Возвращает длину значения

length_is

Возвращает ТРУ если длина значения совпадает с аргументом

linebreaks

Заменяет символы перевода строки в обычном тексте подходяцими html тегами. Одиночным символ перевода строки BR А символ перевода строки за которой идет пустая строка заменяет тегом P

linebreaksbr

Заменят еревод строк тегом BR

linenumbers

Выводит текст с порядковыми номерами строк

ljust

выравнивает значение по левому в поле заданно ширины

в аргументе указываеться ширина

lower

Привести в нижний регистр

make_list

Возвращает значение, преобразованное в значение

pprint

применяеться для отладки

random

Возвращает случано выбранный элемент списка

removetags

Удаляет перечисленный через запятую html — теги

rjust

Выравнивает значени по правому краю в поле заданной ширины
Аргумент — ширина поля

slice

Возвращает фрагмент списка (Синтакси Python) {{ value|slice:»:2″ }}

slugify

Преобразует значение в нижний регистр, удаояет все символы, кроме букв цифр и символов подчеркивания и преобразует пробелы в дефисы. Кроме того удаляет пробельные символы в начале и конце.

striptags

Удаляет все html теги

time

Формирует время согласно заданной строке формата

title

Возвращает строку где кажное сово начинается с заглавной буквы

truncatewords

Обрезает строку после заданного числа слов

truncatewords_html

аналогичен truncatewords но учитывает html теги

unordered_list

Принимает вложенный список и возвращает маркированный html список

upper

Преобразует строку в верхний регистр

urlencode

Экранирует значение для вставки в URL

urlize

Преобразует адреса URL из простого текста в гиперсылки

urlizetrunc

Преобразует адреса URL из простого текста в гиперсылки, обрезая длинные

wordcount

Возвращает количество слов

wordwrap

Разбивает строку по границам слов на количество (указанному в аргументе) слов в строке.

Google Talk на своем домене [в простонароде ;) jabber ]

Как известно паркуя свой домен в Google на сервисы Вам не дается описание что и как сделать для работы jabber на своем  домене. Если возник такой вопрос у кого то еще то спешите прописать для домена следующие SRV записи

_xmpp-server._tcp.gmail.com. IN SRV 5 0 5269 xmpp-server.l.google.com.
 _xmpp-server._tcp.gmail.com. IN SRV 20 0 5269 xmpp-server1.l.google.com.
 _xmpp-server._tcp.gmail.com. IN SRV 20 0 5269 xmpp-server2.l.google.com.
 _xmpp-server._tcp.gmail.com. IN SRV 20 0 5269 xmpp-server3.l.google.com.
 _xmpp-server._tcp.gmail.com. IN SRV 20 0 5269 xmpp-server4.l.google.com.
 _jabber._tcp.gmail.com. IN SRV 5 0 5269 xmpp-server.l.google.com.
 _jabber._tcp.gmail.com. IN SRV 20 0 5269 xmpp-server1.l.google.com.
 _jabber._tcp.gmail.com. IN SRV 20 0 5269 xmpp-server2.l.google.com.
 _jabber._tcp.gmail.com. IN SRV 20 0 5269 xmpp-server3.l.google.com.
 _jabber._tcp.gmail.com. IN SRV 20 0 5269 xmpp-server4.l.google.com.

ISPmanager — домен второго уровня «чужому» пользователю

Как известно имея пользователя username_1 и закрепленный за ним домен username1.loc нельзя создать домен второго-третьего-и т.д. домена для «чужого» пользователя — пользователя системы, но не имеющий домен username1.loc.

Да я немного оговорился — в ISPmanager Pro есть такая возможность установив галочку «Разрешить администратору смешивать домены». Но например в моем случае Lite как и у большинства пользователей сети юзающих сервера под этой панелью необходимо законектится по SSH из под рута и отредактировать файл конфига

vim /usr/local/ispmgr/etc/ispmgr.conf

Добавив строку

Option InsecureDomain

после чего перезапустить демон

killall ispmgr