Author Archives: bullgare

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

Была задача: есть некоторое количество заказов, которым оказались не назначены менеджеры, есть 3 менеджера, между которыми нужно распределить эти заказы равномерно. Легче всё сделать на php или python, но задача была сделать всё при помощи SQL-запроса без хранимых процедур и желательно одним запросом.

Добавить Thunderbird и Pidgin в апплет уведомлений в Ubuntu

Replace Evolution with Thunderbird completely in Ubuntu Replacing Empathy with Pidgin in Ubuntu — тут же упоминается и приятный бонус pidgin-а: его можно использовать как клиент skype — для этого нужно всего лишь доставить плагин pidgin-skype

Планирование и учёт рабочего времени

Читаю книгу Джоэла Спольски «И снова о программировании». Книжка несколько скаучная, постоянно рекламирует свою компанию и свои продукты, но есть и интересные главы (а книга собственно и состоит из отдельных глав — записей в блоге). Интересная глава — двадцатая, «Планирование с учётом прежних результатов» (http://www.joelonsoftware.com/items/2007/10/26.html). Основная мысль — надо учитывать всё время над задачей, неважно, …

Read more

Jabber на личном домене с использованием google

Проще всего сделать так: Зарегистрировать приложение Google (там всё просто — мастер настройки). В результате создастся приложение и учётная запись администратора. Можно использовать её, а можно создать новую. После этого в jabber-клиенте нужно указать логином user@domain, сервер — talk.google.com. Вот и всё. Встречал много статей про настройку через SRV-записи, но этот способ сильно проще.

Использование Twitter-API в PHP

Есть такая библиотека — twitter-async (лицензия — свободное распространение и использование). Из неё нужно включить в проект файлы EpiCurl EpiOAuth EpiSequence EpiTwitter Далее на twitter.com нужно завести приложение. После успешной регистрации Twitter выдаст полезные данные для oAuth-авторизации, нужны из них два: Consumer key и Consumer secret — это авторизационные данные приложения, их нужно сохранить где-нибудь, …

Read more

Локализация javascript в django

Продолжение записи Интернационализация и локализация django. Для перевода яваскрипта нужно В urls.py добавить урл для подгрузки функций интернационализации

словарь packages должен содержать один из пакетов, указанных в INSTALLED_APPS. Добавить в шаблон подгрузку это скрипта

В нужных местах воспользоваться функциями gettext, ngettext или interpolate Создаём файл с переводами для js командой

Добавляем перевод …

Read more

Интернационализация и локализация django

На примере русского языка.

Factory-метод модели Django

Никак не мог придумать, как озаглавить статью). Просто есть две вещи, которые хотел упомянуть. Создаём метод класса, возвращающий модели класса, который может вернуть и только указанные поля всех удовлетворяющих условиям моделей.

Здесь нужно выделить два важных момента:

Здесь создаётся фильтр моделей, созданных конкретным пользователем или не относящимся ни к какому пользователю. Подробнее о …

Read more

Как проверить, какие порты слушаются какими программами в linux

Вывод всех портов и программ, которые их слушают:

Или

Вот так можно посмотреть, кто слушает или обращается к определённому порту:

jQuery — обработка событий с использованием Namespaced Events

Часто события навешиваются на элементы так:

А когда нужно снять обработчик события с элемента, то делается это так:

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

При …

Read more