Рейтинг@Mail.ru
загрузкаидет загрузка

Loginza — облегчаем работу с OpenID/oAuth/OpenAPI

Все мы не любим регистрироваться на сайтах, я уж точно. Вводить email, придумывать и запоминать сложный пароль. На этот случай была придумана система аутентификации OpenID, с помощью которой можно на поддерживаемых эту технологию сайтах входить через единый аккаунт, например Гугловский.

loginza-1.gif (12.89 Kb)


Затем появился oAuth, совершенно другой по замыслу протокол авторизации, а точнее служащий для доступа к некоторому API без ввода пароля. Но зачастую сайты поддерживающие oAuth не поддерживают OpenID, напрмер Twitter. Отдельно отличился популярный ВКонтакте, разработавший свой велосипед OpenAPI.

В результате получается, что для поддержки всех популярных сайтов приходится вникать в нюансы работы аж трех протоколов, использовать совершенно разные библиотеки, зачастую довольно сложные.

Облегчить программисту внедрение аутентификации пользователя призван отечественный сервис - Loginza. Который, кстати, сегодня купил Яндекс! Так что можно переставать думать о его дальнейшей перспективе - она будет радужной.

Уведомления о событиях на чистом JavaScript

После внедрения AJAX в плагин закладок bookmarks появилась необходимость как-то сообщать пользователю, что добавление или удаление прошло успешно.

Стандартный alert() больно некрасив, вид его зависит от используемого браузера, да и требует лишний клик на кнопке ОК.

Долго искал в гугле какую-то открытую реализацию такого механизма, но находил лишь плагины к фреймворкам, использование которых имеет смысл только тогда, когда вы понимаете, что оно вам дает. В данном случае подключать 80кб jQuery абсурд.

Сам я с JS практически не дружу, простой код понимаю, но с нуля написать нечто пока проблематично.

Тогда я пошел на Хабр и нашел в исходниках интересную функцию, которая выводит эти самые окошки с различными вариациями, написанную с использованием MooTools. Полчаса и получилось тоже самое, но на чистом JavaScript'е.

javascript-notification.png (10.74 Kb)


Плагин «bookmarks :: Закладки пользователей» для NG CMS

plugin-bookmarks-ngcms-box.png (176.15 Kb)


Новый старый плагин от меня для NG CMS. Когда-то давно был написан kt2k под старую версию движка.

Адаптировал ее под самую последнюю 0.9.2 и добавил пару вкусностей типа AJAX, своей страницы с закладками и т.п.

Плагин позволяет организовать закладки пользователей на вашем сайте и только на материалы вашего сайта, наподобие "Избранного" на Хабрахабре.

История версий
[2.3] [2011-01-01] [скачать]
+ вывод уведомлений осуществляется не через стандартный js alert,
а с помощью красивых всплывающих окон. Thx habrahabr :)
( http://digitalplace.ru/webdev/javascript-notification.html )
+ добавлены уведомления при добавлении/удалении закладок
+ добавлен вывод уведомления, если пользователь разлогинился
и пытается добавить нечто в закладки через AJAX
+ в bookmarks.tpl добавлены условные блоки if-bookmarks и
if-not-bookmarks с говорящими названиями :)

[2.2] [2010-12-16] [скачать]
+ добавлено сообщение о лимите закладок при отключенном JavaScript
* исправлена ошибка "Error parsing JSON output" при добавлении комментария

[2.1] [2010-12-14] [скачать]
+ добавлен лимит на количество закладок

[2.0][2010-12-13] [скачать]
+ внедрен AJAX для добавления и удаления закладок без перезагрузки страницы
(если у пользователя отключен JavaScript, то генерируется обычная ссылка)
+ добавлена страница со всеми закладками пользователя (свой шаблон или шаблон сайта)
+ добавлен вывод числа сколько раз новость была добавлена пользователями
+ добавлено ограничение количества выводимых закладок в сайдбаре
+ добавлен переключатель вкл/выкл закладки в сайдбаре
+ добавлена генерация сообщения об ошибке при прямом доступе к config.php, install.php
+ весь выводимый текст вынесен в языковые файлы
+ подробный readme по использованию

[1.0][2010-12-01]
% форк bookmarks от kt2k
Плагин адаптирован для работы с NG CMS 0.9.2

«pm :: Личные сообщения» Версия 0.3

Личные сообщения для NG CMS


Обычно при выходе новых версий я просто обновляю страницу плагина, но сейчас изменений несколько больше и хотелось бы поговорить о каждом из них отдельно.

На странице плагина будет выложена вся документация по шаблонам, настройке и ссылками на скачку.


Ooooops

Looks like Twitter's feed isn't working at the moment.