Раньше IE был программой для скачивания браузера из интернета, но благодаря Enhanced security configuration, теперь он даже и этого не может.
I HATE MICROSOFT!
А если из проводника уберут FTP?
Двухэтапная авторизация django
Понадобилось сделать подтверждение авторизации через SMS… Подумалось, и придумалось вот что:
Переделывать полностью систему авторизации было влом, да и вообще хотелось бы обойтись «малой кровью», поэтому решено было переделать django’ый декоратор login_required — чтобы не только спрашивал логин и пароль, но и активировал сессии через SMS
Идея будет такая:
- В профиле пользователя сохраняем телефон и флаг использования SMS-авторизации.
- Переписываем декоратор login_required, чтобы после авторизации отправлял на активацию сессии
- Заменяем во всех views from django.contrib.auth.decorators import login_required на наш декоратор
- ???
- PROFIT!
Использован вот этот SMS-шлюз (ибо как-то уже пробовал и работает)
модуль для работы с онным скачать тут
Continue reading
Конвертация таблиц 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>
Про вирусы
Антенна для 3G
Вот такая забавная поставка-антенна для 3G-свистков. Работает, кстати, довольно хорошо.
Продается в связном, и вроде бы не дорого.
OpenVPN & MikroTik
Как оказалось, все просто. Имеется, сервер на ubuntu Linux, который выполняет роль шлюза в некоем головном офисе, задача дешево и хорошо подключить удаленный офис.
В качестве клиента будет выступать MikroTik router board.
Сеть будет маршрутизуемая — офисы, как сидели в разных сетях, так и останутся, но после проброса туннеля будут видеть друг-друга.
Qt Http Post и File
Понадобилось загрузить файл из Qt, и хорошо бы чтобы он опознавался со стороны сервера как файл ($_FILES в php или Request.FILES в django)
По Qtшному экземплу не взлетел: все передается, но файл файлом не опознался, так и остался торчать в заголовках POST.
Проблема оказывается действительно есть, решения страшные, вроде ручной сборки заголовков
MySQL-python (MySQLdb) in Mac OS X
Послe установки mysql5 из macports
sudo pip install mysql-python
по-умолчанию ругается на mysql_config not found, если клиент mysql5 установлен из портов, надо просто добавить путь до mysql_config в глобальный PATH, т.е. просто добавить
/opt/local/lib/mysql5/bin/
в файл /etc/paths
1С 7.7 и MySQL
Внезапно!
Потребовалось сделать выгрузку в MySQL, всё решилось быстро и хорошо через ODBC
con = CreateObject("ADODB.Connection");
con_param = "dns=1c";
con.Open(con_param);
con.Execute("insert test set `text`='"+Текст+"';");
РекордСет = СоздатьОбъект("ADODB.Recordset");
РекордСет.ActiveConnection = con;
РекордСет.Open("select * from test");
Пока РекордСет.EOF = 0 Цикл
Сообщить(РекордСет.Fields("text").Value);
РекордСет.MoveNext();
КонецЦикла;
РекордСет.Close();
con.Close();
Устанавливаем MySQL ODBC Connector (x86 обязательно!) и добавляем базу в системный DNS.
На 2008 x64 добавлять через odbcad32.exe (иначе не видно драйвер x86)