Hate!

Раньше IE был программой для скачивания браузера из интернета, но благодаря Enhanced security configuration, теперь он даже и этого не может.
I HATE MICROSOFT!
А если из проводника уберут FTP?

Двухэтапная авторизация django

Понадобилось сделать подтверждение авторизации через SMS… Подумалось, и придумалось вот что:
Переделывать полностью систему авторизации было влом, да и вообще хотелось бы обойтись «малой кровью», поэтому решено было переделать django’ый декоратор login_required — чтобы не только спрашивал логин и пароль, но и активировал сессии через SMS

Идея будет такая:

  1. В профиле пользователя сохраняем телефон и флаг использования SMS-авторизации.
  2. Переписываем декоратор login_required, чтобы после авторизации отправлял на активацию сессии
  3. Заменяем во всех views from django.contrib.auth.decorators import login_required на наш декоратор
  4. ???
  5. PROFIT!

Использован вот этот SMS-шлюз (ибо как-то уже пробовал и работает)
модуль для работы с онным скачать тут
Читать далее

Конвертация таблиц MySQL в UTF8

Джанга в очередной раз создала кучу таблиц в latin1, а вручную уж очень не хотелось

#!/bin/bash
host="127.0.0.1"
database=$1
pwd="password"
user="user"
tables=`mysql -h $host --user=$user --password=$pwd $database -e "show tables;" -s -r -N`
for table in $tables
do
	echo "Converting $table"
        #тут можно так же optimize table и что там еще
	mysql -h $host --user=$user --password=$pwd $database -e \    
           "alter table $table convert to character set 'utf8';"
done

А что бы вы сделали, на месте Apple?


Стебные картинки про айпэд и холодильник все же (по моему скромному мнению) довольно далеки от истины. Сия картинка наглядно показывает, что у новых Samsung Smart PC клавиатура чуть менее, чем полностью скопирована с Apple Macbook.
Не совпадают размеры command/win, а так же правые <Shift>-<Return>-</>-<Delete> сделаны чуть длиннее, и немного отличается размером верхий ряд функциональных клавиш (Самсунгу пришлось добавить обязательные <Del> и <Pause>

OpenVPN & MikroTik

Как оказалось, все просто. Имеется, сервер на ubuntu Linux, который выполняет роль шлюза в некоем головном офисе, задача дешево и хорошо подключить удаленный офис.
В качестве клиента будет выступать MikroTik router board.
Сеть будет маршрутизуемая — офисы, как сидели в разных сетях, так и останутся, но после проброса туннеля будут видеть друг-друга.

Читать далее

Qt Http Post и File

Понадобилось загрузить файл из Qt, и хорошо бы чтобы он опознавался со стороны сервера как файл ($_FILES в php или Request.FILES в django)
По Qtшному экземплу не взлетел: все передается, но файл файлом не опознался, так и остался торчать в заголовках POST.
Проблема оказывается действительно есть, решения страшные, вроде ручной сборки заголовков

Читать далее