thelounge/client/js/socket-events/sync_sort.js

28 lines
524 B
JavaScript
Raw Normal View History

2017-05-18 22:08:54 +02:00
"use strict";
const socket = require("../socket");
const {vueApp} = require("../vue");
2017-05-18 22:08:54 +02:00
socket.on("sync_sort", function(data) {
const order = data.order;
switch (data.type) {
2019-07-17 11:33:59 +02:00
case "networks":
vueApp.networks.sort((a, b) => order.indexOf(a.uuid) - order.indexOf(b.uuid));
2017-05-18 22:08:54 +02:00
2019-07-17 11:33:59 +02:00
break;
2017-05-18 22:08:54 +02:00
2019-07-17 11:33:59 +02:00
case "channels": {
const network = vueApp.networks.find((n) => n.uuid === data.target);
2017-05-18 22:08:54 +02:00
2019-07-17 11:33:59 +02:00
if (!network) {
return;
}
2017-05-18 22:08:54 +02:00
2019-07-17 11:33:59 +02:00
network.channels.sort((a, b) => order.indexOf(a.id) - order.indexOf(b.id));
2017-05-18 22:08:54 +02:00
2019-07-17 11:33:59 +02:00
break;
}
2017-05-18 22:08:54 +02:00
}
});