An open API service indexing awesome lists of open source software.

https://github.com/kofes/2task_php

php-documents for 2task server
https://github.com/kofes/2task_php

Last synced: about 2 months ago
JSON representation

php-documents for 2task server

Awesome Lists containing this project

README

        

В директории src находятся все модули, что обрабатывают запросы;
Вне директории src (в файле mysql_login) находятся данные для связи с БД MySQL;
Обращение к модулям происходит следующим образом:
http://%host%/%module_name%.php?%request%

**Запросы в зависимости от модуля формируются следующим образом:**

Описание:

{\*} - обязательное поле;
[if (stmt): ...] - если stmt=true, то появляются следующие поля к заполнению;
|...| - необязательные поля;
| - или;
%i - произвольный последовательный номер;

\* *Login*

/login.php?user=[new\*|exist\*]&passwd={\*}[if (user=new): &email={\*}|...|]
|...|: name, surname, patronymic, phone;
При создании нового аккаунта user принимает значение new;
Если нужно подключиться к существующему профилю, то user принимает значение exist.

\* *Get task*

/get_task.php?nickname={\*}&passwd={\*}&status={user\*|group\*}[if (group): &title={\*}]

Модуль для просмотра заданий пользователя/группы
Status=user - получение первичного списка заданий профиля в формате |Group|Task|;
Title - название группы.

\* *List achivements*

/achivement.php?nickname={\*}

Модуль для просмотра достижений пользователя.
Список достижений представляется в следующем формате: |title|description|xp|coins|
\* *List users of group*

/list_users.php?nickname={\*}&passwd={\*}&group_title={\*}

Модуль для вывода списка пользователей в группе;
Обязательное условие: пользователь состоит в группе.

\* *Set task*

/host_task.php?nickname={\*}&passwd={\*}&status={global\*|local\*}[if (global): &title={\*}&|...|]\[if (local): &group_title={\*}&user1={\*}|&user%i={}...|&task1={\*}|&task%i={}...|&description1={\*}|&description%i={}...||...|]

Модуль для создания задания/группы с заданиями
|...|: xp%i, coins%i;
В поле user%i может быть положен nickname или email пользователя;
Если группа с названием group_title не создана пользователем и сам пользователь не находится в такой группе, то он создает новую группу;
Если группа с названием group_title создана и пользователь является host, то он добавляет/изменяет/закрывает задание.
За задание host выставляет сумму (coins) из своих coin'ов, которая будет распределена в равных количествах для всех пользователей группы.

\* *Edit group*

/edit_group.php?nickname={\*}&passwd={\*}&group_title{\*}&action={edit\*|leave\*|destroy\*}(if (edit): &make={add_user\*,delete_user\*,add_task\*,change_task\*}&...);

Модуль для управления группами;
Правила:
- edit и destroy позволены только host;
- если host покидает группу, то вызывается destroy;