У нас есть заявки игроков для старта игры. К примеру игра шашки, в нее могут играть 2 человека.
Пользователь создает предложение поиграть и ждет соперника, когда соперник присоединятся, то пользователь стартует игру.
Итак к примеру у нас есть таблица:<table id="proposal">
<thead>
<tr>
<th>№</th>
<th>Игрок</th>
<th>Опции</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>Пользователь/или ожидание</td>
<td>Действия</td>
</tr>
<tr>
<td>2</td>
<td>Пользователь/или ожидание</td>
<td>Действия</td>
</tr>
</tbody>
</table>
Уже сгенерированная с помощью чих пых пых.
Вот у нас 1 пользователь создал заявку и 1 колона таблицы будет с данными 1 пользователя, вторая колонка будет с ожиданием 2 игрока.
Далее к примеру происходит SSE запрос и возвращает нам данные, что присоединился 2 игрок
Далее у нас есть SSE запросы, которые проверяют присоединился ли второй игрок. К примеру игрок присоединился и сервер вернул JSON, где есть такой массивчик:
['users'] = array(
'user' => 'avatar',
'sort' => 0,
'root' => 1,
),
array(
'user' => 'avatar',
'sort' => 1,
'root' => 0,
)
Наша задача добавить в нужный данные пользователя которые вернул сервер.
Тоесть:
// вот у нас 1 пользователь, который создал заявку
<tr>
<td>1</td>
<td>Nepster</td>
<td>Вверх, Вниз, Кик</td>
</tr>
// вот тут у нас присоединился 2 пользователь
<tr>
<td>2</td>
<td>Сюда нужно добавить значение [user] из пришедшего с сервера массива </td>
<td>тут посложнее, стоку действия генерирует php</td>
</tr>
Для этого мне посоветовали:
underscorejs.org/#template
Но честно говоря вообще не представляю как можно это использовать?
И второй момент, когда пользователь создавший заявку меняет местами игроков (это актуально, когда идет игра на пары).
Приходит массив, где есть поле sort, которое отвечает за сортировку игроков
['users'] = array(
'user' => 'avatar',
'sort' => 0,
'root' => 1,
),
array(
'user' => 'avatar',
'sort' => 1,
'root' => 0,
);
Посоветовали использовать плагин для сортировки таблиц или
underscorejs.org/#sortBy
Но тут тоже не могу понять как связать массив, который пришел с сервера с sortBy данной библиотеки.
Подскажите пожалуйста, кто в курсе как это можно реализовать?