Модуль для авторизации с использованием учетной записи ВКонтакте
Разработал модуль для авторизации пользователей на Друпал-сайте с использованием ВКонтакте OpenAPI.
Скачать модуль можно на drupal.org. Демо работы модуля доступно тут: http://vktest.kece.ru. Там же находится и инструкция по его установке и настройке.
- Авторизация на сайте с помощью учетной записи ВКонтакте. Из ВКонтакта подтягивается вся доступная информация о пользователе и его аватарка.
- Возможность добавить ко всем материалам кноп ку "Сохранить ВКонтакте"
- Простое добавление виджетов ВКонтакте (комментарии, группы, опросы и т.п.) в любые блоки или материалы на сайте.
Работа модуля
Логика работы модуля:
- после нажатия пользователем кнопки "войти вКонтакте" модуль получает необходимые данные от сервера вКонтакте.
- Далее модуль проверяет есть ли в базе данных Друпала пользователь, связанный с именем, полученным от вКонтакте:
- если его нет, то создается новый пользователь и связывается с id пользователя ВКонтакте. Внимание! Важная деталь. Если в базе данных есть пользователь с именем не связанным с учетной записью вКонтакте и из вКонтакте приходит пользователь с таким же именем, то такие две учетные записи не будут связаны, для имени нового пользователя будет просто добавлен суффикс _N, где вместо N будет подставлено число.
- если связанный с учетной записью ВКонтакте пользователь есть, то будет использована найденная учетная запись.
- Выбранный пользователь авторизуется в системе.
- ВКонтакте не отдает адрес электронной почты, по этому модуль предлагает новому пользователю указать свой e-mail в настройках своего нового аккаунта.
Установка и настройка модуля
- Первым делом во ВКонтакте нужно создать приложение типа "Веб-сайт", для этого нужно перейти по ссылке: http://vkontakte.ru/pages.php?act=developers и нажать на кнопку "Подключить сайт".
- В настройках созданного приложения нужно указать адрес сайта (http://example.com/) и базовый домен (example.com), а также получить ID приложения и защищенный ключ, все эти четыре параметра нужно будет указать в настройках модуля vk_openapi.
- Теперь нужно скачать модуль, если вы этого еще не сделали, распаковать в папку sites/all/modules и включить его стандартными средствами Друпала.
- После активации модуля, на странице admin/settings/vk_openapi вы должны указать параметры созданного ранее приложения ВКонтакте.
Все, после выполнения этих действий к формам авторизации будет добавлена кнопка "войти вКонтакте" и пользователи смогут авторизоваться на вашем сайте с помощью учетных записей вКонтакте. При желании вы можете отключить вывод этой кнопки в формах авторизации, тогда в произвольное место страницы сайта нужно будет вставить код:
который будет заменен на кнопку.
Я старался сделать этот модуль максимально простым для посетителей сайта — авторизоваться в системе можно всего одним кликом. Мне, например, сильно не нравится реализация Facebook Connect для Друпла тем, что после нажатия кнопки "Connect" пользователя заставляют еще заполнить некоторые поля в форме регистрации. По этому данные от ВКонтакте получаются только один раз, при первом входе в систему, и используются только имя и фамилия пользователя. Теоретически, эти данные можно периодически обновлять, также есть возможность получить данные о фотографиях пользователя и его аватарке, его друзьях изменениях статусов, связать логаут на Друпал-сайте с логаутом из ВКонтакте и т.п. Интересно знать нужен ли кому-нибудь подобный функционал или достаточно того, что уже есть сейчас?
Disclaimer
Итак, с данного момента багрепорты типа "ничего не работает, помогите" игнорируются. Багрепорты связанные с некорректным отображением элементов в нестандартных темах оформления игнорируются, так как они легко локализуются Firebug'ом и исправляются правкой CSS. Рассматриваются только багрепорты с однозначным описанием проблемы: "включил модуль такой-то и перестала работать такая-то функция".
В случае с исчезновением кнопки share, проблема может быть из-за текста поста, по этому попробуйте создать тестовый пост, с 1 простым предложением и сохранить его, если кнопка в таком посте появилась, то продолжайте добавлять в него по 1-2 предложения из поста, в котором кнопка не появляется. В определенный момент она должна будет пропасть и в тестовом посте и тогда вы сможете разместить здесь строку, из-за которой кнопка share исчезает.
Комментарии
ай, молодца! ушел ставить
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
В 91 строчке drupal_set_message('User create error', 'error'); можно заменить на drupal_set_message(t('User create error'), 'error'); для переводимости. Спасибо.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Вообще, хотелось бы получить фидбек от использования модуля, а также узнать у потенциальных пользователей модуля ответы на следующие вопросы. Нужно ли делать расширенную форму регистрации, как в модуле Facebook connect, в которой пользователя заставляют указать свой e-mail и предлагают не создавать новую учетную запись на Друпал-сайте, а связать фейсбучный аккаунт с существующим в Друпале аккаунте? Нужно ли вытягивать аватарку юзера из ВКонтакта и использовать ее в Друпал-сайте? Нужно ли следить за изменениями статусов юзера во ВКонтакте и как-то выводить их на Друпал-сайте? Нужно ли привязывать логаут из ВКонтакта к логауту из Друпал-сайта? Может какие-то еще есть пожелания?
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Это бомба, респект за труды
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Спасибо за работу ! Что-то у меня в окне входа выводит "Open API security breach"
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Это на моем тестовом сайте или на вашем? Вообще эта ошибка говорит о том, что в настройках неверно указаны "Адрес сайта" и "Базовый домен".
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
В настройках модуля Адрес сайта: http://www.soft4u.org.ua Базовый домен: soft4u.org.ua
Правильно я понял?
Модуль Boost выводит в журнал
[type] => 128 [message] => Call-time pass-by-reference has been deprecated [file] => www/sites/all/modules/vk_openapi/vk_openapi.module [line] => 182?>
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Правильно я понял?
Модуль Boost выводит в журнал
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
очень важная вещь. Спасибо.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Классный модуль! Спасибо большое.
Мне кажется, вот это - нужно. Все остальное - статусы, логауты - имхо, вещи привязанные к конкретным проектам, кому-то нужно, кто-то может обойтись (в идеале, конечно, вообще данные из ВКонтакте в данные юзера на Друпале переводить но опять же - универсальный модуль не получится).
Вопрос: что будет, если пользователь не укажет эмейл, после регистрации? Особенно, если включена активация по эмейлу?
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
да, это нужно учесть, плиз.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
спасибо за модуль
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
спасибо за ваш труд
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
не думаю, что на таком сайте включат модуль вконтакте
Хочу предложить такой вариант - на уровне вичерреквеста, конечно Выбор в админке вебматером,
либо - дефолт (как сейчас все реализовано),
либо давать какую-то роль, пока юзер не впишет эмейл - как это реализовано в модуле логинтобогган, там есть функция, чтобы юзер логинился без активации, в этом случае ему можно назначить определенную роль, либо
Еще раз спасибо большое за модуль
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
в догонку. посмотрел в код модуля.
не знаю насколько это критично НО
у вас SELECT COUNT(*) AS count FROM WHERE name = '%s'
в модуле user SELECT COUNT(*) FROM WHERE uid != %d AND LOWER(name) = LOWER('%s')
как видите модуль user не пропустит к регистрации ник demimurych если уже есть зарегистрированный Demimurych.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Спасибо, учту в следующей версии.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Ура вам! Ушел тестить.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
По идее e-mail должен быть факультативен по умолчанию, лишь для редких проектов он важен. С e-mail, в 6ке по крайней мере, головняк отдельный - это поле обязательно, так что всяко придется настраивать.
Задача как и с openID - быстрая авторизация. Остальные навороты можно прикручивать по мере надобности. Нужно смотреть API - на предмет переноса атрибутов пользователя и всего прочего.
Далее стоит подумать о UI в профайле и синхронизации.
Ромка, на твоем сайте у меня теперь 2 логина по хорошему было бы удобно чтобы контактовская авторизация могла как-то добавляться к существующему пользователю, а то ткнул и завелся новый пользователь
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Может добавить проверку не только по юзернейму, но и по мылу, если есть - авторизовывать.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Мыло не передается из контакта. в этом то и засада
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- может сделать сноску: "Если у вас уже есть аккаунт на этом сайте, можете связать его с аккаунтом vkontakte, для этого зайдите на сайт под логином и паролем, и нажмите связать в настроках аккаунта", ну или типо того. )
- а заполнение e-mail-а "обязательным", лучше сделать функционально наверно, что б в настройках модуля админ мог поставить "заполнение e-mail обязательно".
Модуль бомба для СНГ. Спасибо.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- а заполнение e-mail-а "обязательным", лучше сделать функционально наверно, что б в настройках модуля админ мог поставить "заполнение e-mail обязательно".
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Ромка, низкий поклон тебе и уважение!! На днях обязательно потестирую модуль.
З.Ы. А будет ли предусмотрена проверка существования вводимого мыла? Мне кажется это очень немаловажным, ибо при регистрации мыло проверяется, обычно, а тут можно хоть адрес Билла Гейтса вписать.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
DSLRs are often preferred by professional still photographers because they allow an accurate preview of framing close to the moment of exposure, and because DSLRs allow the user to choose from a variety of interchangeable lenses. Most DSLRs also have a function that allows accurate preview of depth of field.mcpd
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Ромка крут, как всегда
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Ромка герой друпал сообщества!
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Круто! Спасибо! Пробежался по API вот тут http://vkontakte.ru/page2369282. Я правильно понял что в дальнейшем можно будет добавить фичи, которые будут вытягивать всю инфу из вконтакта (друзья, группы и.т.д.), например для комьюнити на своем сайте? То есть реальна ли в будущем возможность интеграции с такими модулями как friendlist, user relationships?
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
А не раскроете секрет для непосвященных, чем так хороша такого рода интеграция с прикладной точки зрения?
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
О, спасибо. Пойду попробую на паре сайтов
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Установил. При установке случилась ошибка: Файл перевода ru.po содержит ошибку: невозможно обработать формулу множественных чисел.
Заглянул в файл - там такой формулы просто нет. Не знаю, насколько это критично
Имхо, логичнее поместить настройки в меню управления пользователями.
Выравнивание кнопки входа по центру не везде уместно, лучше вынести стили в цсс-файл, а не хардкодить.
Еще у меня почему-то после нажатия на кнопку ничего не спрашивает, а сразу входит и создает юзера. Это так и должно быть? На демо-сайте открывалось окошко и ждало, пока я кнопку нажму. Сайт - ivanovsa.ru
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
CSS-файл есть, часть css-ов отдается самим вконтактом.
Да, так и задумано. Если посетитель уже авторизован во вконтакте, то для него сразу создается пользователь (если его еще нет) и этот пользователь авторизуется в системе. Если посетитель во вконтакте еще не авторизован, то показывается окно, с предложением ввести логин/пароль вконтакта.
Кнопку вставить можно куда угодно, посмотрите пример в первом посте. Или он у вас не сработал?
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Файл есть, но стиль кнопки записан в коде. Он же записан в примере кода в первом посте. Пример видел, но хочется ж просто галочку в настройке поставить "в комментах", "в форме регистрации", "в форме авторизации".
Кстати, баг: сообщение о возможности склейки с существующим аккаунтом показывается при просмотре профиля другого пользователя, созданного через авторизацию вконтакте.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
А где можно посмотреть, какого размера аватары отдает контакт?
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Еще очень хочется кнопку в форму комментария.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Кроме контакта, есть еще mail.ru, yandex, rambler, livejournal, google, короче херова туча провайдеров.
Но есть свои нюансы.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Главное что возможность есть.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Модуль супер, а как он работает при использовании мультисайтинга? Нужо что-то добавлять в settings.php?
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
В идеале, чтобы можно было бы самому прописывать ID формы, к которой эту кнопку втулить
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Было бы здорово, если бы в профиле пользователя отображалось то, что аккаунт связан с профилем в контакте (как сделано OpenID). И соответственно, чтобы можно было пользователю, авторизовавшись через логин-пароль, зайти в свой аккаунт и уже там связать свой аккаунт с аккаунтов в контакте (опять же как сдалено OpenID) .
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Постараюсь реализовать эту фичу в одной из следующих версий модуля.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Наблюдается проблема при использовании модуля SMF. Регистрация с модуля VK не влечет за собой создание учетной записи на форуме SMF через соответствующий модуль. Впоследствии не удается изменить адрес почты в учетной записи из-за проблем синхронизации с SMF.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
баг: 1. пользователь авторизуется при помощи акка вконтакте. 2. администратор удаляет пользователя 3. пользователь пытается авторизоваться при помощи акка вконтакте и получает ошибку:
* user warning: Duplicate entry '' for key 'name' query: INSERT INTO users (picture, created) VALUES ('sites/default/files/pictures/a_5fabc287.jpg', 1274753644) in syte.ru/modules/user/user.module on line 327. * warning: array_fill() [function.array-fill]: Number of elements must be positive in /syte.ru/includes/database.inc on line 253. * warning: implode() [function.implode]: Invalid arguments passed in /syte.ru/includes/database.inc on line 253. * warning: array_keys() [function.array-keys]: The first argument should be an array in /syte.ru/modules/user/user.module on line 502. * user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1 query: SELECT p.perm FROM role r INNER JOIN permission p ON p.rid = r.rid WHERE r.rid IN () in /syte.ru/modules/user/user.module on line 502.
p.s. Как можно сделать так, чтобы после авторизации не происходил редирект на главную, а пользователь оставался на той странице, где он нажал на кнопку авторизации вконтакте?
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Лучшее - враг хорошего Запрячьте кнопку "войти в контакте" в выпадающий список среди других сервисов и вы потеряете львиную долю "вконтактников" )))
Потеряете не в том конечно смысле, что они пропадут, но кнопку точно не найдут, да и искать не будут. Так что только на самое видно место и лучше чтобы вокруг было пустое пространство ))
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
пустой белый лист
и посередине "зайти через контакт"
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
и посередине "зайти через контакт"
кстати, если показывать такой белый лист для людей которые переходят с контакта, то думаю коверсия будет зашкаливать
. и это неплохая идея. всплывающее белое окно достаточно большое с кнопкой "войти в контакте" для не авторизованных людей, которые переходят с ссылок в vkontakte.ru
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
сколько нужно времени для активации приложения вконтакте, а то со старта не работает
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
должно сразу работать, проверяйте все настройки а когда там аватарки планируются? (=
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Эта штука будет помощнее OpenID. Ромка, ты бог!
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Здравствуйте. Простите за нубство. У меня на сайте если разлогиниться и залогиниться снова создается еще один юзер. Так и должно быть?)
типа user user_1 .
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Да и на Друпале можно сделать регистрацию в 2 клика.
Причина, наверное, в другом.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
у меня с authcache не работает
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Регистрация в том виде, в котором была - уходит в прошлое. По крайней мере из моих знакомых, кто не занимается web-разработками, вечно жалуются на регистрацию, мол повтыкают куда не попадя. И если проследить - как они серфят в инете, на те сайты, где нужна регистрация не идут. А этот модуль - хоть какое-то решение (и гостям приятно, и web-мастеру хоть какой-то контроль над ресурсом).
P.S. То же самое с торрент ресурсами, где есть рейтинги - туда новые уже не приходят, так как дофига где качать можно, тупо нажав кнопку, и не париться по поводу своего рейтинга.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Спасибо за модуль!
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Хочется немного причесать этот модуль. На днях займусь.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
При попытке указать мыло:
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Использование конструкции: < div id = "vk_login" style = "margin: 0 auto 20px auto;" onclick = "doLogin();" >< / div > Ограничивает количество кнопок для входа до одной. Это плохо, т.к. на странице user у меня планируется два появления этой кнопки. Как в блоке, так и на самой странице.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
IE8 выдает синтаксическую ошибку JS где то в районе:
VK. UI . button ( 'vk_login' ) ;
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Хочу сделать такую вещь: Скрестив Ваш модуль, fbconnect и свой openlogin Ммм. уже слюнки текут
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Сделал новую версию модуля.
Что нового
Исправлены следующие баги:
- некорректная ссылка "Вы должны указать ваш e-mail. Нажмите здесь, чтобы сделать это".
- глюк js в IE8 (правил глюк вслепую, так как под рукой нет ИЕ8, так что, возможно, баг и не исправлен).
- ошибка при авторизации юзера, если созданный ранее модулем аккаунт был удален администратором. Вообще, возможно имеет смысл для таких случаев запретить повторную регистрацию?
- ссылка "Объединить аккаунты" раньше выводилась для всех пользователей, теперь только для тех, кто может выполнить объединение.
- Warning: Call-time pass-by-reference has been deprecated in <. >/sites/all/modules/vk_openapi/vk_openapi.module on line 308.
Добавлена возможность выводить на странице несколько кнопок для логина через ВКонтакт. Внимание! Теперь для отображения кнопки в нужном месте страницы надо вставить такой код:
(отличие от старого варианта — добавлен атрибут class). Внимание! У каждой вставляемой таким образом кнопки должен быть уникальный атрибут id! Сразу предупреждаю, кнопка может разъехаться, произойдет это или нет зависит от используемых на странице CSS. Так что в случае проблем с внешним видом кнопки не надо писать о них сюда, достаточно вооружиться Файрбагом и за 5 минут самостоятельно поправить внешний вид кнопки.
Служебный путь vk/xd_receiver.html заменен на vk/xd_receiver. Внимание! Это изменение может потребовать очистки кеша.
Что не сделано
К сожалению не сумел отловить баг, при котором для одного и того же вконтактовского аккаунта создается несколько учеток на Друпал-сайте. У меня модуль работает на 3 сайтах и этот глюк на них не наблюдается.
Также не сумел прикрутить получение статуса пользователя из ВКонтакта.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Большой сложности, что бы их замиксить нету. Вот код:
Полученное меню должно цепляться css dropdown
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Еще рекомендации по улучшению модуля:
- Очень не хватает таба в профиле пользователя, чтоб посмотреть мои текущие привязки к вконтакту и в случае ненадобности удалить их.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Ок, в следующей версии постараюсь реализовать эту фичу.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Еще в желаемые фичи можно занести $user->vk_data['vkuid']
не хватает, приходиться лишний запрос делать.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Если установлен модуль "Login Destination 6.x-2.10", то вход на Друпал-сайт вызывает ошибку "Error connecting to server"
Версия: "VK OpenAPI 6.x-1.0-alpha6"
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Может быть глюк связан с ошибкой. которая до сих пор имеет место быть - это все еще случающиеся два пробела в имени пользователя. Подозреваю, что виновата смесь языков ввода в имени. Например, "Сергей Demin" или "Антон Grishin" На этих двух именах версия подтверждается
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Прекрасный модуль! Большое Вам спасибо!
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
В хроме (ver.5.0.375.70) не видна кнопка для входа. В других браузерах видна.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
В Chrome 6.0.427.0 dev все видно.
Есть проблема с Firefox. Если человек уже заходил на сайт через существущую на сайте учетную запись, то через кнопку "Войти В Контакте" зайти уже не получается. Приходится чистить куки. Это выглядит так: человек нажимает кнопку, идет рефреш страницы, он никуда не зашел и остался гостем.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Выложил седьмую альфу модуля. В ней исправлена багофича с двумя пробелами в имени пользователя, если у того нет никнейма во вконтакте и добавлена переменная $user->vk_data['vkuid'].
Если установлен модуль "Login Destination 6.x-2.10", то вход на Друпал-сайт вызывает ошибку "Error connecting to server"Версия: "VK OpenAPI 6.x-1.0-alpha6"
Этот баг побороть не удалось. Штука еще и в том, что авторизация при этом происходит корректно, по этому я предлагаю для решения проблемы в файле openapi.js в функции errorLogin заменить строчку
alert ( 'Error connecting to server.' ) ;
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Исправьте множественные формы в ru.po
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Может быть имеет смысл спрашивать о том, связать ли аккаунт вконтакте с существующим на сайте до того, как создаётся новый пользователь? А то плодится число "левых" пользователей, которые автоматически оказываются заблокированными сразу же после своего появления. И неплохо бы, конечно, дать уже залогиненным обычным способом пользователям возможность присоединять к существующей учётной записи свой аккаунт вконтакте аналогично тому, как это сделано с openid — на отдельной вкладке профиля.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
сломалась авторизация даже не знаю как и чем сломал, выдает ошибку auth error [1]
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
я все сделал как надо.
но все поля были пусты кроме ника в профиле.
далее я удалил этот ник под которым вошел и вылезает теперь ошибка
* warning: array_fill() [function.array-fill]: Number of elements must be positive in /home/a/---ru/public_html/includes/database.inc on line 253. * warning: implode() [function.implode]: Invalid arguments passed in /home/a/agatawarru/public_html/includes/database.inc on line 253. * warning: array_keys() [function.array-keys]: The first argument should be an array in /home/a/---ru/public_html/modules/user/user.module on line 513. * user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1 query: SELECT p.perm FROM role r INNER JOIN permission p ON p.rid = r.rid WHERE r.rid IN () in /home/a/---ru/public_html/modules/user/user.module on line 513. * warning: array_keys() [function.array-keys]: The first argument should be an array in /home/a/---ru/public_html/sites/all/modules/views/views.module on line 451. * warning: array_keys() [function.array-keys]: The first argument should be an array in /home/a/---ru/public_html/sites/all/modules/views/views.module on line 451. * warning: array_keys() [function.array-keys]: The first argument should be an array in /home/a/---ru/public_html/sites/all/modules/views/views.module on line 451. * warning: array_keys() [function.array-keys]: The first argument should be an array in /home/a/---ru/public_html/sites/all/modules/views/views.module on line 451. * warning: array_keys() [function.array-keys]: The first argument should be an array in /home/a/---ru/public_html/sites/all/modules/views/views.module on line 451. * warning: array_keys() [function.array-keys]: The first argument should be an array in /home/a/---ru/public_html/sites/all/modules/views/views.module on line 451. * warning: array_keys() [function.array-keys]: The first argument should be an array in /home/a/---ru/public_html/sites/all/modules/views/views.module on line 451. * warning: array_keys() [function.array-keys]: The first argument should be an array in /home/a/---ru/public_html/sites/all/modules/views/views.module on line 451. * warning: array_keys() [function.array-keys]: The first argument should be an array in /home/a/---ru/public_html/sites/all/modules/views/views.module on line 451. * warning: array_keys() [function.array-keys]: The first argument should be an array in /home/a/---ru/public_html/sites/all/modules/views/views.module on line 451.
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
А как можно вывести информацию из Вконтакте о пользователе. А именно его друзей, город и т.д. на странице его профиля.