From ddeacc9d1f908e41057cead31530f9d4cc0cefd6 Mon Sep 17 00:00:00 2001 From: librelois <elois@ifee.fr> Date: Tue, 28 Nov 2017 20:37:11 +0100 Subject: [PATCH] [enh] head v2 --- public/app.js | 14 ++++---------- server/controller/webmin.js | 19 +++++++++++-------- server/lib/routes.js | 14 ++++++++------ 3 files changed, 23 insertions(+), 24 deletions(-) diff --git a/public/app.js b/public/app.js index 5e67d88..7b88dcd 100644 --- a/public/app.js +++ b/public/app.js @@ -1127,23 +1127,17 @@ module.exports = function ($scope, Webmin, heads, info, conf, ws) { var software = sp[6]; var softVersion = sp[7]; var prefix = sp[8]; - var freeRooms = "" var uid = value.uid; - // Gestion des différents formats + // Gestion de l'ancien format console.log(value.message); - if (value.message.match(/:2:/)) { - // HEAD v2 - freeRooms= sp[9] + "/" + sp[10]; - } else if (value.message.match(/:1:/)) { - // HEAD v1 - } else { - // HEAD v0 + if (!value.message.match(/:1:/)) { pubkey = sp[2]; blockstamp = sp[3]; + uid = value.uid; } var ws2pFullId = pubkey + "-" + ws2pId; headsMap[ws2pFullId] = { - api: api, blockstamp: blockstamp, uid: uid, ws2pId: ws2pId, software: software, softVersion: softVersion, prefix: prefix, freeRooms: freeRooms + api: api, blockstamp: blockstamp, uid: uid, ws2pId: ws2pId, software: software, softVersion: softVersion, prefix: prefix }; } } catch (err) { diff --git a/server/controller/webmin.js b/server/controller/webmin.js index bc1c91c..233b6f7 100644 --- a/server/controller/webmin.js +++ b/server/controller/webmin.js @@ -654,16 +654,19 @@ function WebAdmin (duniterServer, startServices, stopServices, listDuniterUIPlug if (server.ws2pCluster) { const heads = yield server.ws2pCluster.getKnownHeads() for (const head of heads) { + const headInfos = head.message.split(':') let posPubkey = 3; - // Gestion des anciens formats - if (!head.message.match(/:2:/)) { - posPubkey = 3; - if (!head.message.match(/:1:/)) { - posPubkey = 2; - } + // Gestion des différents formats + if (head.message.match(/:2:/)) { + //HEAD v2 + head.freeRooms = headInfos[9] + "/" + headInfos[10] + } else if (head.message.match(/:1:/)) { + // HEAD V1 + } else { + // HEAD V0 + posPubkey = 2; } - - const member = yield duniterServer.dal.getWrittenIdtyByPubkey(head.message.split(':')[posPubkey]) + const member = yield duniterServer.dal.getWrittenIdtyByPubkey(headInfos[posPubkey]) head.uid = member && member.uid || '' } return heads diff --git a/server/lib/routes.js b/server/lib/routes.js index c08d0b0..981576e 100644 --- a/server/lib/routes.js +++ b/server/lib/routes.js @@ -156,16 +156,18 @@ module.exports = { co(function*() { if (data.ws2p === 'heads') { for (const head of data.added) { + const headInfos = head.message.split(':') let posPubkey = 3; - // Gestion des anciens formats - if (!head.message.match(/:2:/)) { + // Gestion des différents formats + if (head.message.match(/:2:/)) { + head.freeRooms = headInfos[9] + "/" + headInfos[10] + } else if (head.message.match(/:1:/)) { posPubkey = 3; - if (!head.message.match(/:1:/)) { - posPubkey = 2; - } + } else { + posPubkey = 2; } - const member = yield server.dal.getWrittenIdtyByPubkey(head.message.split(':')[posPubkey]) + const member = yield server.dal.getWrittenIdtyByPubkey(headInfos[posPubkey]) head.uid = member && member.uid || '' } wssEvents.broadcast(JSON.stringify({ -- GitLab