• Из-за обновления GTA 5 (был добавлен новый патч) может временно не работать вход в RAGE Multiplayer.

    ERROR: Your game version is not supported by RAGE Multiplayer.

    Данная ошибка говорит о том, что GTA V обновилась до новой версии (GTA Online тоже). Вам необходимо обновить саму игру в главном меню вашего приложения (Steam / Epic Games / Rockstar Games).
    Если после этого RAGE:MP все равно не работает - вам нужно дождаться выхода патча для самого мультиплеера (обычно это занимает от нескольких часов до нескольких дней).

    Новости и апдейты Rockstar Games - https://www.rockstargames.com/ru/newswire/
    Статус всех служб для Rockstar Games Launcher и поддерживаемых игр: https://support.rockstargames.com/ru/servicestatus


    Grand Theft Auto 5 (+ GTA Online) последний раз были обновлены:

Библиотека функций для работы с REST API форума на движке IPS.

IDAHO

Начинающий специалист
Автор темы
30 Окт 2021
14
10
50
Всем привет! Занимаюсь написанием одной админ-панельки на PHP и пришла идея связать ее с существующим форумом проекта (он на IPS). Используя встроенный REST API у меня получилось связать сторонний сайт с форумом и получать/редактировать необходимые данные.
Хотел бы поинтересоваться у вас, насколько это было бы полезно? Стоит ли довести это до ума и выложить библиотеку функций, которые помогут вам создать связь между сайтом и IPS-форумом.
Сразу говорю, что я не топовый кодер и в этой задаче не используется ООП или еще какие-то навороченные штуки. Сугубо процедурный стиль.
Информации по работе с API форума на движке IPS в открытом доступе практически нет, не говоря уже о примерах использования его функций.
Поэтому жду ваш фидбек и если это реально будет полезно, то выложу скрипты в ближайшее время)
 

XDeveluxe

Модератор
Команда форума
high coder
30 Авг 2021
2,220
1,425
191
27
Если полистаешь темы на форуме, то увидишь, что за бесплатно заберут вообще всё :roflanebalo:
Ну а если серьёзно, то определённо да - это будет полезно, а то на форуме всё меньше скриптов, всё больше "а как какать".
 
  • Like
Реакции: FireFeed, IDAHO и wholinc

IDAHO

Начинающий специалист
Автор темы
30 Окт 2021
14
10
50
Как и обещал - выкладываю все основные функции для работы с API
PHP:
<?
const COMMUNITY_URL = "";
const API_KEY = "";

// POST ЗАПРОСЫ
function updateUserPrimaryGroup($user_id, $group_id) // $user_id - ID пользователя на форуме. $group_id - ID группы на форуме.
{

    $apiKey = API_KEY;
    $endpoint = "/?core/members/{$user_id}";
    $curl = curl_init(COMMUNITY_URL . 'api' . $endpoint);
    $postData = [
        'group' => $group_id
    ];
    curl_setopt_array(
        $curl,
        array(
            CURLOPT_RETURNTRANSFER => TRUE,
            CURLOPT_HTTPAUTH => CURLAUTH_BASIC,
            CURLOPT_USERPWD => "{$apiKey}:",
            CURLOPT_POSTFIELDS => http_build_query($postData)
        )
    );
    $response = json_decode(curl_exec($curl), true);

}
function clearSecondaryGroups($user_id) // $user_id - ID пользователя на форуме.
{

    $apiKey = API_KEY;
    $endpoint = "/?core/members/{$user_id}";
    $curl = curl_init(COMMUNITY_URL . 'api' . $endpoint);
    $postData = [
        'secondaryGroups' => ''
    ];
    curl_setopt_array(
        $curl,
        array(
            CURLOPT_RETURNTRANSFER => TRUE,
            CURLOPT_HTTPAUTH => CURLAUTH_BASIC,
            CURLOPT_USERPWD => "{$apiKey}:",
            CURLOPT_POSTFIELDS => http_build_query($postData)
        )
    );
    $response = json_decode(curl_exec($curl), true);

}
function updatePrimaryGroups($user_id, $groupsArray) // $user_id - ID пользователя на форуме, $groupsArray = массив с ID групп, которые необходимо присвоить пользователью. Ex: $groupsArray = [n,n, ...]
{
    $apiKey = API_KEY;
    $endpoint = "/?core/members/{$user_id}";
    $curl = curl_init(COMMUNITY_URL . 'api' . $endpoint);
    $postData = [
        'secondaryGroups' => $groupsArray
    ];
    curl_setopt_array(
        $curl,
        array(
            CURLOPT_RETURNTRANSFER => TRUE,
            CURLOPT_HTTPAUTH => CURLAUTH_BASIC,
            CURLOPT_USERPWD => "{$apiKey}:",
            CURLOPT_POSTFIELDS => http_build_query($postData)
        )
    );
    $response = json_decode(curl_exec($curl), true);

}
function setUserName($user_id, $name) // Установка имени пользователя
{
    $apiKey = API_KEY;
    $endpoint = "/?core/members/{$user_id}";
    $curl = curl_init(COMMUNITY_URL . 'api' . $endpoint);
    $postData = [
        'name' => $name
    ];
    curl_setopt_array(
        $curl,
        array(
            CURLOPT_RETURNTRANSFER => TRUE,
            CURLOPT_HTTPAUTH => CURLAUTH_BASIC,
            CURLOPT_USERPWD => "{$apiKey}:",
            CURLOPT_POSTFIELDS => http_build_query($postData)
        )
    );
    $response = json_decode(curl_exec($curl), true);

}
function updateCustomFileds($user_id, $fields) // $fields = array(fieldId => fieldValue)
{
    $apiKey = API_KEY;
    $endpoint = "/?core/members/{$user_id}";
    $curl = curl_init(COMMUNITY_URL . 'api' . $endpoint);
    $postData = [
        'customFields' => $fields
    ];
    curl_setopt_array(
        $curl,
        array(
            CURLOPT_RETURNTRANSFER => TRUE,
            CURLOPT_HTTPAUTH => CURLAUTH_BASIC,
            CURLOPT_USERPWD => "{$apiKey}:",
            CURLOPT_POSTFIELDS => http_build_query($postData)
        )
    );
    $response = json_decode(curl_exec($curl), true);

}
// POST ЗАПРОСЫ

// GET ЗАПРОСЫ
function getUserInfoById($user_id) { // Получение инфы о юзере (Ответ в формате JSON)
    $apiKey = API_KEY;
    $endpoint = "/?core/members/{$user_id}";
    $curl = curl_init(COMMUNITY_URL . 'api' . $endpoint);
    curl_setopt_array(
        $curl,
        array(
            CURLOPT_RETURNTRANSFER => TRUE,
            CURLOPT_HTTPAUTH => CURLAUTH_BASIC,
            CURLOPT_USERPWD => "{$apiKey}:",
        )
    );
    $response = json_decode(curl_exec($curl), true);

}

?>