Информация о пользователе, возвращаемая крупными OpenID-провайдерами
28/11/2010

Cегодня занялся прикручиванием авторизации через сервис loginza.ru на один из своих сайтов, при этом требовалось сохранить существующую систему регистрации и авторизации.

Основная проблема: все OpenID-провайдеры возвращают различную информацию о пользователе, а, иногда, вообще не возвращают. Приходится вручную перед интеграцией анализировать, что приходит от сервера и что нам писать в базу.

Дабы хоть кому-то упростить жизнь, публикую параметры, которые приходили мне от популярных OpenID-сервисов.

Простой антиспам для CakePHP
25/11/2010

Хоть я особо тут и не пишу ничего, но спам-боты меня очень любят досаждать своими комментариями. Премодерация, конечно, работает, но как-то иногда лень удалять все эти десятки сообщений, тем более что множественное удаление сообщений мне тоже лень делать.

Решил себе приделать простенький метод борьбы со спамом от Михаила Андреева.

Смысл прост: заменяем настоящие названия полей формы на случайный набор символов, а старые поля скрываем через css.

echo $this->Form->input('34kjffe343', array('label' => __('Ваше имя', true)));
echo $this->Form->input('name', array('label' => false));

echo $this->Form->input('34f3f34f3fc34r6', array('label' => __('Ваш электронный адрес', true)));
echo $this->Form->input('email', array('label' => false));

echo $this->Form->input('458vn54jfkjm3', array('label' => __('Сайт', true)));
echo $this->Form->input('url', array('label' => false));

echo $this->Form->input('934hf9v34fhjc', array('label' => __('Комментарий', true), 'type' => 'textarea'));
echo $this->Form->input('comment', array('label' => false, 'type' => 'textarea'));
#CommentName, #CommentEmail, #CommentUrl, #CommentComment{
    display: none;
}

Дабы не менять логики контролера, немного схитрим и вспомним про метод модели beforeValidate...

Опубликовано в категории CakePHP | Теги: CakePHP, PHP, Заметки, Спам | Комментарии (2)
Селектор element#id и недобраузеры
25/11/2010

Селектор жуквери element#id неккоректно работает в браузерах Opera 9 и Internet Explorer 7. Вместо всех елементов с заданным id выбирается только первый. Дабы и в них всё работало, используйте .class

Опубликовано в категории JavaScript | Теги: JavaScript, jQuery, Заметки | Комментарии (3)
« старые записи
новые записи »