1. Приветствуем Вас на неофициальном форуме технической поддержки XenForo на русском языке. XenForo - новый и перспективный форумный движок от бывших создателей vBulletin.

Steam Community OpenID Login

Тема в разделе "Плагины для XenForo", создана пользователем Gatses, 18 авг 2011.

Загрузка
  1. Gatses

    Gatses Местный

    Регистрация:
    05.02.11
    Сообщения:
    421
    Симпатии:
    579
    Версия XF:
    1.5.9
    Steam Community OpenID Login

    Тема на оф. сайте:
    Код:
    http://xenforo.com/community/threads/steam-community-openid-login.18958/
    Описание: Плагин добавляет кнопку sits_small.png , которая функционирует почти так же, как существующие кнопки Facebook и Войти.

    button.png register.png steamlogin.png

    Установка:
    1. Установить Steam Identity Service.
    2. Залить файлы.
    3. Импортировать XML-файл плагина.
    4. Редактировать шаблон login_bar_form - Добавить:
    Код:
    <xen:include template="dark_steam_login_button" />
    Перед кодом:
    Код:
    </xen:contentcheck>
     

    Вложения:

    uNg0veRNab1e, hihi, Roni и 4 другим нравится это.
  2. Raguel

    Raguel Активный пользователь

    Регистрация:
    01.06.11
    Сообщения:
    5
    Симпатии:
    0
    Все отлично работает, но как можно сделать сессию входа подольше? Чтобы не нужно было каждый раз входить после перезапуска браузера.
     
  3. infis

    infis Местный Команда форума

    Регистрация:
    27.06.11
    Сообщения:
    5.525
    Симпатии:
    3.322
    Версия XF:
    1.5.9
    Достаточно поставить галочку "Запомнить меня". Тогда не нужно будет каждый раз проходить авторизацию.
     
  4. Raguel

    Raguel Активный пользователь

    Регистрация:
    01.06.11
    Сообщения:
    5
    Симпатии:
    0
    Где именно? На странице openid стима нету такой галочки.
     
  5. infis

    infis Местный Команда форума

    Регистрация:
    27.06.11
    Сообщения:
    5.525
    Симпатии:
    3.322
    Версия XF:
    1.5.9
    Извиняюсь. В стиме действительно такого нет, оно только для обычного пароля.
    Остается только увеличить время с дефолтного 1 часа до нужного в library/XenForo/Session.php в функции __construct. Там должен быть следующий код:
    Код:
                    if (empty($config['admin']))
                    {
                            $defaultConfig = array(
                                    'table' => 'xf_session',
                                    'cookie' => 'session',
                                    'lifetime' => 3600
                            );
                    }
                    else
                    {
                            $defaultConfig = array(
                                    'table' => 'xf_session_admin',
                                    'cookie' => 'session_admin',
                                    'lifetime' => (XenForo_Application::debugMode() ? 86400 : 3600) // longer lifetime in debug mode to get in the way less
                            );
                            unset($config['admin']);
    
    lifetime - это и есть таймаут.
     
    Raguel нравится это.
  6. Raguel

    Raguel Активный пользователь

    Регистрация:
    01.06.11
    Сообщения:
    5
    Симпатии:
    0
    Премного благодарен.
    --- добавлено : Sep 13, 2011 10:18 AM ---
    Увы, не взлетело. Все также при выходе из браузера не сохраняются данные о сессии. Пробовал на опере, хроме, файрфоксе. Другой тестер также подтверждает мои слова.

    Не знаю важно ли это, но в xf_session "срок действия: в конце сессии". Также заметил следующую особенность, если заходить через обычный логин и нажать галочку "запомнить пароль" - дополнительно передается xf_user, в котором указан уже нужный срок действия и сессия не пропадает после перезагрузки браузера.
     
  7. infis

    infis Местный Команда форума

    Регистрация:
    27.06.11
    Сообщения:
    5.525
    Симпатии:
    3.322
    Версия XF:
    1.5.9
    Похоже, что этот плагин не до конца доделан. Непонятно, каким образом в library/Dark/SteamLogin/EventListener/TemplateCreate.php используется переменная
    Код:
    protected static $_session_timeout;
    Видимо, автора плагина таки хотел как-то решить проблему с таймаутом, но, как Вы выражаетесь, "не взлетело", а переменная осталась. Либо он только начал над этим работать.
    Но лучше на этот счет на офе пообщаться. Наверняка там помогут либо доработать плагин, либо подскажут решение. Лично у меня не хватит терпения разбираться с системой авторизации :)

    P.S. Плагин не устанавливал, просто смотрел исходники.
     
    Raguel нравится это.
  8. Mr. Brightside

    Mr. Brightside Read only

    Регистрация:
    17.02.11
    Сообщения:
    156
    Симпатии:
    58
    Интересно, у стима своё API? Есть ли возможность такое для Battle.NET организовать? :sneaky:
     
  9. Raguel

    Raguel Активный пользователь

    Регистрация:
    01.06.11
    Сообщения:
    5
    Симпатии:
    0
    Кто нибудь может отписать в теме на оф. форуме по поводу этой проблемы? К сожалению, доступа в тот раздел у меня нету.
     
  10. Goldman

    Goldman Местный

    Регистрация:
    07.11.10
    Сообщения:
    70
    Симпатии:
    37
    https://partner.steamgames.com/documentation/community_data

    Подсмотрел на офф форуме и сделал у себя так
    [​IMG]
     
  11. Raguel

    Raguel Активный пользователь

    Регистрация:
    01.06.11
    Сообщения:
    5
    Симпатии:
    0
    Плагин обновился, у кого есть доступ - выложите новую версию.
    Спасибо.
     
  12. Gatses

    Gatses Местный

    Регистрация:
    05.02.11
    Сообщения:
    421
    Симпатии:
    579
    Версия XF:
    1.5.9
    Вложение обновлено в первом сообщении. Добавлен фикс от 15 октября.
     
  13. Romchik®

    Romchik® The Power of Dreams Команда форума

    Регистрация:
    26.09.10
    Сообщения:
    5.740
    Симпатии:
    5.269
    Версия XF:
    1.5.11
    Добавлен патч для XF 1.1.
     
  14. Иван Гончаров

    Иван Гончаров Местный

    Регистрация:
    12.11.11
    Сообщения:
    7
    Симпатии:
    0
    Вот такая вот у меня ошибка на форуме после логина через стим.
    Форум 1.1.0
     
  15. Shmidtelson

    Shmidtelson Местный

    Регистрация:
    26.02.12
    Сообщения:
    108
    Симпатии:
    5
    Версия XF:
    1.1.3
    Выскакивает и хоть бы что((
    111.jpg
    --- добавлено : 7 июн 2012 в 18:59 ---
    Решил переустановиь теперь выдает
    Mysqli statement execute error : Duplicate column name 'game_hours_recent'
    1. Zend_Db_Statement_Mysqli->_execute() in Zend/Db/Statement.php at line 297
    2. Zend_Db_Statement->execute() in Zend/Db/Adapter/Abstract.php at line 479
    3. Zend_Db_Adapter_Abstract->query() in Steam/Manufacture.php at line 102
    4. Steam_Manufacture->_installVersion8() in Steam/Manufacture.php at line 59
    5. Steam_Manufacture::build() in XenForo/Model/AddOn.php at line 214
    6. XenForo_Model_AddOn->installAddOnXml() in XenForo/Model/AddOn.php at line 169
    7. XenForo_Model_AddOn->installAddOnXmlFromFile() in XenForo/ControllerAdmin/AddOn.php at line 178
    8. XenForo_ControllerAdmin_AddOn->actionInstall() in XenForo/FrontController.php at line 310
    9. XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 132
    10. XenForo_FrontController->run() in /home2/dwb118/public_html/admin.php at line 13
     
  16. ERT

    ERT Пользователь

    Регистрация:
    27.04.12
    Сообщения:
    11
    Симпатии:
    5
    Версия XF:
    1.1.2
    Есть у меня плагин SteamAuth, который связывает аккаунт steam с учетной записью. У меня на форуме установлен и отлично работает, но он платный.
    Как я понимаю, платные аддоны выкладывать нельзя?
     
  17. Shmidtelson

    Shmidtelson Местный

    Регистрация:
    26.02.12
    Сообщения:
    108
    Симпатии:
    5
    Версия XF:
    1.1.3
    в личку можешь выложить)
     
  18. diunex

    diunex Местный

    Регистрация:
    02.08.11
    Сообщения:
    113
    Симпатии:
    1
    поставил себе, установилось без ошибок, вот только кнопки войти через стим нету :confused:
     
  19. uNg0veRNab1e

    uNg0veRNab1e Пользователь

    Регистрация:
    04.03.13
    Сообщения:
    12
    Симпатии:
    2
    Версия XF:
    1.1.3
    Установил, работает.
    Но я бы хотел сделать регистрацию и вход ТОЛЬКО через steam. Кто-нибудь может подсказать решение?
     
  20. resonansER

    resonansER Местный

    Регистрация:
    19.08.11
    Сообщения:
    460
    Симпатии:
    290
    Версия XF:
    1.5.6
    Ты этот плагин имел ввиду? Так он бесплатный. Но необходимо установить если CentOS
    Код:
    yum install php-bcmath
    или если debian
    Код:
    apt-get install php5-curl
    Кстати, этот хак свежее, чем тот, что в первом посте. И он позволяет собирать статистику по всем пользователям, которые зашли через steam-акк по играм, в которые они играют и какие у них есть.

    Во вложениях есть переведённый мною хак на русский язык. Не смог допереть КАК правильно перевести эти фразы: Top Owned Games и Top Owned. :)
     

    Вложения:

Поделиться этой страницей