Даю работоспособные исходники как подключить элементарные API на одноклассниках для iFrame приложения.
1. Подключаем стандартные API функции "Пригласить друзей" и "Отправить уведомления" на JS.
в <HEAD> добавляем:
- <script src="http://api.odnoklassniki.ru/js/fapi.js" type="text/javascript"></script>
- <link href="http://stg.odnoklassniki.ru/share/odkl_share.css" rel="stylesheet">
- <script src="http://stg.odnoklassniki.ru/share/odkl_share.js" type="text/javascript" ></script>
Инициализируем API:
Заменяем <body> на
- <body onload="ODKL.init();">
и ниже JS скрипт
- <script type="text/javascript">
- var FAPI_Params = Object(FAPI.Util.getRequestParameters());
- FAPI.init(FAPI_Params['api_server'], FAPI_Params['apiconnection'], function()
- {
- FAPI.UI.setWindowSize(717, 1400); [b]// Пример вызова метода расширить размеры окна как только произойдет инициализация API[/b]
- }
- , function()
- { }
- );
- </script>
Готово. Теперь в любом месте страницы вставляем код для вызова окна "Пригласить друзей", например в onClick кнопки:
- onClick="FAPI.UI.showInvite('Устанавливай игру бла бла бла', '');"
или, чтобы отправить "Уведомление друзьям":
- onClick="FAPI.UI.showNotification('Запусти приложение, там сюрприз для тебя','');"
2. Получаем информацию о пользователе (имя, фамилия и т.п.) - PHP код
- <?php
- define('OK_APP_KEY', 'QWERTYUIOPASDFGHJKLZXCVBNM');
- define('OK_SECRET_KEY', '12345678901234567890');
- $api_server = $_GET['api_server'];
- $application_key = $_GET['application_key'];
- $viewer_id = $_GET['logged_user_id'];
- $params = array(
- "application_key=$application_key",
- 'format=JSON',
- 'fields=uid,first_name,last_name,pic_3,url_profile', // получаем UID, имя, фамилию, аватар 100x100 и ссылку на страницу юзера
- "uids=$viewer_id",
- );
- sort($params);
- $sig = md5(join('', $params) . OK_SECRET_KEY);
- $req = "$api_server/api/users/getInfo?sig=$sig&" . join('&', $params);
- $page = file_get_contents($req);
- $page=str_replace ('[','',$page);
- $page=str_replace (']','',$page);
- $obj=json_decode($page);
- $OK_first_name = $obj->first_name;
- $OK_last_name = $obj->last_name;
- $OK_uid = $obj->uid;
- $OK_pic = $obj->pic_3;
- $OK_url_profile = $obj->url_profile;
- $OK_first_name = iconv("utf-8","cp1251", $OK_first_name); // в случае, у Вас страница в кодировке utf-8, то удалите эти две строки последние
- $OK_last_name = iconv("utf-8","cp1251", $OK_last_name);
- // Теперь можно манипулировать с полученными данными юзера - $OK_first_name, $OK_last_name и т.п.
- ?>