работа с Facebook Api из собственного модуля
Прислано: a-freenomenus@drupal.org
вт, 10/08/2010 - 10:50
Задача:
1) есть форма создания ноды. напичкано много полей через cck. создаётся анонимным пользователем
2) есть кнопка логина в facebook, откуда в форму заполнятся такие поля, как First Name, Last Name, Email итд
3) после отправки формы сохраняется нода, далее перехватываю сохранение и создаю Event в Facebook с данными, которые пришли из формы
Установил модуль Drupal for Facebook (http://drupal.org/project/fb), настроил как в мануале
На страницу с формой добавляю кнопку Facebook Connect следующим образом:
<fb:login-button perms="create_event"></fb:login-button>
Кнопка появляется. Логин происходит.
Далее выдираю через JS Api данные из fb следующим образом:
$(document).ready(function(){
if (FB) {
FB.Connect.ifUserConnected(
function() {
var uid = FB.Connect.get_loggedInUser();
if (!uid) {
return;
}
FB.Facebook.apiClient.users_getInfo(
uid,
['first_name','last_name','email','sex','birthday','username'],
function(user, ex) {
/* тут действия с пришедшими данными */
$('#edit-field-first-0-value').val(user[0].first_name);
});
});
}
});Проблема первая в том, что вставка данных в поля происходит только после повторного нажатия на кнопку Facebook Connect. То есть в первый раз жму кнопку, появляется окно логина, вбивается логин\пароль, окно исчезает, данные не появляются. Жму второй раз кнопку - данные отлично вставляются.
Вторая проблема в обработке пришедшей формы и создании ивента на стороне сервера. Код примерно такой:
$facebook = new Facebook($api_key, $secret); $uid = $facebook->get_loggedin_user(); $event_info = array( 'name' => 'Test Event', 'description' => 'test', 'event_type' => 1, 'event_subtype' => 40, 'start_time' => 1281369174, 'end_time' => 1281370174, 'creator' => $uid, 'location' => '' ); $facebook->api_client->events_create(json_encode($event_info));
Получаю ошибку создания ивента:
Error message: Requires extended permission: create_event Error code:290
Где этот пермишн выставляется? В кнопке логина он выставлен.
Правильно ли я вообще всё это делаю? Не могу найти нормальной документации по связыванию fb и drupal.
- a-freenomenus@drupal.org's blog
- Для комментирования войдите или зарегистрируйтесь
А если не секрет, чего хотите получить? Писать комментарии авторизованного в FB пользователя без регистрации у вас?
- Для комментирования войдите или зарегистрируйтесь
А если не секрет, чего хотите получить? Писать комментарии авторизованного в FB пользователя без регистрации у вас?
создавать ивент в фейсбуке на странице пользователя.
при отправке формы в drupal создаётся нода и автоматом создаётся новый пользователь. после создания ноды создаётся ивент в фейсбуке.
- Для комментирования войдите или зарегистрируйтесь
Удалось ли решить проблему? И если да, где можно посмотреть?
- Для комментирования войдите или зарегистрируйтесь
Хороший модуль.
- Для комментирования войдите или зарегистрируйтесь

Комментарии