====== AJAX-API форума Миста.ру ====== Движок форума Миста.ру местами поддерживает ajax-вызовы. Тут перечислены некоторые функции с примерами вызовов. Ajax-api может быть использовано как в пользовательских скриптах, так и для доступа к материалам форума с других сайтов, а в перспективе, и к созданию альтернативных клиентов. ===== Получение данных ===== ==== /api/topic.php (/ajax_index.php) - список тем форума ==== **параметры:** * topics - число тем, которые нужно вернуть (по умолчанию - 20); * utime - время (в формате unixtime) после которого надо вернуть ветки; * callback - если указано, то ответ заворачивается в вызов функции, имя которой передано в параметре (реализация JSONP); * forum - раздел форума (1c|it|life); * section_short_name=politic - отбор по краткому имени секции * mytopics=1 - отбор только своих тем * user_id - отбор тем пользователя **возвращаемое значение:** массив в формате json. каждый элемент массива соответствует теме форума. порядок элементов в массиве соответствует порядку тем. поля элемента массива: * id - идентификатор темы, число; * forum - название раздела форума, строка; * sect1 - краткое наименование секции (если есть), строка; * sect2 - код секции (если есть); * closed - 1, если тема закрыта; * down - 1, если тема утоплена; * text - заголовок темы, строка; * user0 - ник создателя ветки, строка; * user - ник последнего ответившего, строка; * utime - время последнего ответа в формате unixtime, число; * is_voting - 1 если голосование * answ - число сообщений в ветке. ==== /ajax_gettopic.php - информация о ветке ==== **параметры:** * id - идентификатор (topic_id) темы (!) * callback - если указано, то ответ заворачивается в вызов функции, имя которой передано в параметре (реализация JSONP). **возвращаемое значение:** структура в формате json. * id - topic_id * text - заголовок * forum - одно из {'1c','it','life','moder'} * section - секция ветки * created - дата/время создания ветки * user_id - user_id автора ветки * user_name - ник автора ветки * updated - дата/время обновления ветки * updated_name - ник обновившего ветки * answers_count - количество ответов * down - 1 если ветка утоплена * closed - 1 если ветка закрыта * deleted - 1 если ветка удалена * is_voting - 1 если голосование * voting - массив вариантов голосования: * * select - вариант ответа * * result - количество голосов ==== /api/message.php (/ajax_topic.php) - список сообщений темы.==== **параметры:** * id - идентификатор (topic_id) темы (!) * from - с какого сообщения. если не указан, то с первого * to - до какого сообщения. если не указан, то from+10 * callback - если указано, то ответ заворачивается в вызов функции, имя которой передано в параметре (реализация JSONP). **возвращаемое значение:** массив в формате json. каждый элемент массива соответствует сообщению темы форума. порядок элементов в массиве соответствует порядку сообщений. поля элемента массива: * id - идентификатор сообщения; * n - номер сообщения; * text - текст сообщения; * user - ник пользователя. * utime - время отправки сообщения в формате unixtime. * vote - выбранный пункт голосования ===== Пользователи ===== ====/ajax_login.php - авторизация пользователя.==== **параметры:** * username - логин (ник) пользователя (!); * password - пароль пользователя (!); * callback - если указано, то ответ заворачивается в вызов функции, имя которой передано в параметре (реализация JSONP); **возвращаемое значение:** хеш-массив (структура) в формате json. поля структуры: * userid - идентификатор пользователя или 0, число * error - описание ошибки авторизации или пустая строка ====/api/users.php - список пользователей.==== **параметры:** * name - логин (ник) пользователя. Поиск по первым символам; * count - количество значений в выдаче (по-умолчанию 20); * from - начиная с какого значения (по-умолчанию 0); * callback - если указано, то ответ заворачивается в вызов функции, имя которой передано в параметре (реализация JSONP); **возвращаемое значение:** массив структур в формате json. поля структуры: * id - идентификатор пользователя, число; * name - логин (ник) пользователя; {{tag>ajax ajax-api json javascript форум}}