diff --git a/api/controllers/contacts.ts b/api/controllers/contacts.ts index 882c074..5699cab 100644 --- a/api/controllers/contacts.ts +++ b/api/controllers/contacts.ts @@ -110,6 +110,14 @@ const createContact = async (req, res) => { const owner = await models.Contact.findOne({ where: { isOwner: true }}) + const existing = attrs['public_key'] && await models.Contact.findOne({where:{publicKey:attrs['public_key']}}) + if(existing) { + const updateObj:{[k:string]:any} = {from_group:false} + if(attrs['alias']) updateObj.alias = attrs['alias'] + await existing.update(updateObj) + return success(res, jsonUtils.contactToJson(existing)) + } + const createdContact = await models.Contact.create(attrs) const contact = await createdContact.update(jsonUtils.jsonToContact(attrs)) @@ -130,13 +138,30 @@ const deleteContact = async (req, res) => { } const contact = await models.Contact.findOne({ where: { id } }) - await contact.update({ - deleted:true, - publicKey:'', - photoUrl:'', - alias:'Unknown', - contactKey:'', - }) + if(!contact) return + + const owner = await models.Contact.findOne({ where: { isOwner: true }}) + const tribesImAdminOf = await models.Chat.findAll({where:{ownerPubkey:owner.publicKey}}) + const tribesIdArray = tribesImAdminOf && tribesImAdminOf.length && tribesImAdminOf.map(t=>t.id) + let okToDelete = true + if(tribesIdArray && tribesIdArray.length) { + const thisContactMembers = await models.ChatMember.findAll({where:{id:{in:tribesIdArray}}}) + if(thisContactMembers&&thisContactMembers.length){ + // IS A MEMBER! dont delete, instead just set from_group=true + okToDelete=false + await contact.update({fromGroup:true}) + } + } + + if(okToDelete){ + await contact.update({ + deleted:true, + publicKey:'', + photoUrl:'', + alias:'Unknown', + contactKey:'', + }) + } // find and destroy chat & messages const chats = await models.Chat.findAll({where:{deleted:false}}) diff --git a/api/network/receive.ts b/api/network/receive.ts index 8a6f6ba..4ef7c6c 100644 --- a/api/network/receive.ts +++ b/api/network/receive.ts @@ -29,9 +29,12 @@ async function onReceive(payload){ const tribeOwnerPubKey = chat.ownerPubkey const owner = await models.Contact.findOne({where: {isOwner:true}}) if(owner.publicKey===tribeOwnerPubKey){ + // CHECK THEY ARE IN THE GROUP + const senderContact = await models.Contact.findOne({where:{publicKey:payload.sender.pub_key}}) + const senderMember = senderContact && await models.ChatMember.findOne({where:{contactId:senderContact.id, chatId:chat.id}}) + if(!senderMember) doAction=false // CHECK PRICES toAddIn.isTribeOwner = true - if(payload.type===msgtypes.group_join) { if(payload.message.amount __awaiter(void 0, void 0, void 0, function* console.log('=> createContact called', { body: req.body, params: req.params, query: req.query }); let attrs = extractAttrs(req.body); const owner = yield models_1.models.Contact.findOne({ where: { isOwner: true } }); + const existing = attrs['public_key'] && (yield models_1.models.Contact.findOne({ where: { publicKey: attrs['public_key'] } })); + if (existing) { + const updateObj = { from_group: false }; + if (attrs['alias']) + updateObj.alias = attrs['alias']; + yield existing.update(updateObj); + return res_1.success(res, jsonUtils.contactToJson(existing)); + } const createdContact = yield models_1.models.Contact.create(attrs); const contact = yield createdContact.update(jsonUtils.jsonToContact(attrs)); res_1.success(res, jsonUtils.contactToJson(contact)); @@ -117,13 +125,29 @@ const deleteContact = (req, res) => __awaiter(void 0, void 0, void 0, function* return; } const contact = yield models_1.models.Contact.findOne({ where: { id } }); - yield contact.update({ - deleted: true, - publicKey: '', - photoUrl: '', - alias: 'Unknown', - contactKey: '', - }); + if (!contact) + return; + const owner = yield models_1.models.Contact.findOne({ where: { isOwner: true } }); + const tribesImAdminOf = yield models_1.models.Chat.findAll({ where: { ownerPubkey: owner.publicKey } }); + const tribesIdArray = tribesImAdminOf && tribesImAdminOf.length && tribesImAdminOf.map(t => t.id); + let okToDelete = true; + if (tribesIdArray && tribesIdArray.length) { + const thisContactMembers = yield models_1.models.ChatMember.findAll({ where: { id: { in: tribesIdArray } } }); + if (thisContactMembers && thisContactMembers.length) { + // IS A MEMBER! dont delete, instead just set from_group=true + okToDelete = false; + yield contact.update({ fromGroup: true }); + } + } + if (okToDelete) { + yield contact.update({ + deleted: true, + publicKey: '', + photoUrl: '', + alias: 'Unknown', + contactKey: '', + }); + } // find and destroy chat & messages const chats = yield models_1.models.Chat.findAll({ where: { deleted: false } }); chats.map((chat) => __awaiter(void 0, void 0, void 0, function* () { diff --git a/dist/api/controllers/contacts.js.map b/dist/api/controllers/contacts.js.map index 8eef49a..6bb4a03 100644 --- a/dist/api/controllers/contacts.js.map +++ b/dist/api/controllers/contacts.js.map @@ -1 +1 @@ -{"version":3,"file":"contacts.js","sourceRoot":"","sources":["../../../api/controllers/contacts.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"contacts.js","sourceRoot":"","sources":["../../../api/controllers/contacts.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/api/network/receive.js b/dist/api/network/receive.js index 1502cb2..f1582df 100644 --- a/dist/api/network/receive.js +++ b/dist/api/network/receive.js @@ -39,6 +39,11 @@ function onReceive(payload) { const tribeOwnerPubKey = chat.ownerPubkey; const owner = yield models_1.models.Contact.findOne({ where: { isOwner: true } }); if (owner.publicKey === tribeOwnerPubKey) { + // CHECK THEY ARE IN THE GROUP + const senderContact = yield models_1.models.Contact.findOne({ where: { publicKey: payload.sender.pub_key } }); + const senderMember = senderContact && (yield models_1.models.ChatMember.findOne({ where: { contactId: senderContact.id, chatId: chat.id } })); + if (!senderMember) + doAction = false; // CHECK PRICES toAddIn.isTribeOwner = true; if (payload.type === msgtypes.group_join) { diff --git a/dist/api/network/receive.js.map b/dist/api/network/receive.js.map index ed807a6..426ec3b 100644 --- a/dist/api/network/receive.js.map +++ b/dist/api/network/receive.js.map @@ -1 +1 @@ -{"version":3,"file":"receive.js","sourceRoot":"","sources":["../../../api/network/receive.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"receive.js","sourceRoot":"","sources":["../../../api/network/receive.ts"],"names":[],"mappings":"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"} \ No newline at end of file