v0.9.42 notification fix
This commit is contained in:
@@ -10,7 +10,7 @@
|
|||||||
PROJECT_NAME=jama
|
PROJECT_NAME=jama
|
||||||
|
|
||||||
# Image version to run (set by build.sh, or use 'latest')
|
# Image version to run (set by build.sh, or use 'latest')
|
||||||
JAMA_VERSION=0.9.41
|
JAMA_VERSION=0.9.42
|
||||||
|
|
||||||
# App port — the host port Docker maps to the container
|
# App port — the host port Docker maps to the container
|
||||||
PORT=3000
|
PORT=3000
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "jama-backend",
|
"name": "jama-backend",
|
||||||
"version": "0.9.41",
|
"version": "0.9.42",
|
||||||
"description": "TeamChat backend server",
|
"description": "TeamChat backend server",
|
||||||
"main": "src/index.js",
|
"main": "src/index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
@@ -127,7 +127,8 @@ router.patch('/multigroup/:id', authMiddleware, teamManagerMiddleware, (req, res
|
|||||||
for (const ugId of newGroupIds) {
|
for (const ugId of newGroupIds) {
|
||||||
if (!currentGroupIds.has(ugId)) {
|
if (!currentGroupIds.has(ugId)) {
|
||||||
db.prepare("INSERT OR IGNORE INTO multi_group_dm_members (multi_group_dm_id, user_group_id) VALUES (?, ?)").run(mg.id, ugId);
|
db.prepare("INSERT OR IGNORE INTO multi_group_dm_members (multi_group_dm_id, user_group_id) VALUES (?, ?)").run(mg.id, ugId);
|
||||||
for (const uid of getUserIdsForGroup(db, ugId)) addUser(db, mg.dm_group_id, uid, req.user.id);
|
// Add users silently — no per-user notifications in multi-group DMs
|
||||||
|
for (const uid of getUserIdsForGroup(db, ugId)) addUserSilent(db, mg.dm_group_id, uid);
|
||||||
const ug = db.prepare('SELECT name FROM user_groups WHERE id = ?').get(ugId);
|
const ug = db.prepare('SELECT name FROM user_groups WHERE id = ?').get(ugId);
|
||||||
if (ug) postSysMsg(db, mg.dm_group_id, req.user.id, `Group "${ug.name}" has been added to this conversation.`);
|
if (ug) postSysMsg(db, mg.dm_group_id, req.user.id, `Group "${ug.name}" has been added to this conversation.`);
|
||||||
}
|
}
|
||||||
@@ -135,9 +136,14 @@ router.patch('/multigroup/:id', authMiddleware, teamManagerMiddleware, (req, res
|
|||||||
for (const ugId of currentGroupIds) {
|
for (const ugId of currentGroupIds) {
|
||||||
if (!newGroupIds.has(ugId)) {
|
if (!newGroupIds.has(ugId)) {
|
||||||
db.prepare('DELETE FROM multi_group_dm_members WHERE multi_group_dm_id = ? AND user_group_id = ?').run(mg.id, ugId);
|
db.prepare('DELETE FROM multi_group_dm_members WHERE multi_group_dm_id = ? AND user_group_id = ?').run(mg.id, ugId);
|
||||||
|
// Remove users silently — no per-user notifications in multi-group DMs
|
||||||
for (const uid of getUserIdsForGroup(db, ugId)) {
|
for (const uid of getUserIdsForGroup(db, ugId)) {
|
||||||
const stillIn = db.prepare('SELECT 1 FROM multi_group_dm_members mgdm JOIN user_group_members ugm ON ugm.user_group_id = mgdm.user_group_id WHERE mgdm.multi_group_dm_id = ? AND ugm.user_id = ?').get(mg.id, uid);
|
const stillIn = db.prepare('SELECT 1 FROM multi_group_dm_members mgdm JOIN user_group_members ugm ON ugm.user_group_id = mgdm.user_group_id WHERE mgdm.multi_group_dm_id = ? AND ugm.user_id = ?').get(mg.id, uid);
|
||||||
if (!stillIn) removeUser(db, mg.dm_group_id, uid, req.user.id);
|
if (!stillIn) {
|
||||||
|
db.prepare('DELETE FROM group_members WHERE group_id = ? AND user_id = ?').run(mg.dm_group_id, uid);
|
||||||
|
io.in(`user:${uid}`).socketsLeave(`group:${mg.dm_group_id}`);
|
||||||
|
io.to(`user:${uid}`).emit('group:deleted', { groupId: mg.dm_group_id });
|
||||||
|
}
|
||||||
}
|
}
|
||||||
const ug = db.prepare('SELECT name FROM user_groups WHERE id = ?').get(ugId);
|
const ug = db.prepare('SELECT name FROM user_groups WHERE id = ?').get(ugId);
|
||||||
if (ug) postSysMsg(db, mg.dm_group_id, req.user.id, `Group "${ug.name}" has been removed from this conversation.`);
|
if (ug) postSysMsg(db, mg.dm_group_id, req.user.id, `Group "${ug.name}" has been removed from this conversation.`);
|
||||||
|
|||||||
2
build.sh
2
build.sh
@@ -13,7 +13,7 @@
|
|||||||
# ─────────────────────────────────────────────────────────────
|
# ─────────────────────────────────────────────────────────────
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
VERSION="${1:-0.9.41}"
|
VERSION="${1:-0.9.42}"
|
||||||
ACTION="${2:-}"
|
ACTION="${2:-}"
|
||||||
REGISTRY="${REGISTRY:-}"
|
REGISTRY="${REGISTRY:-}"
|
||||||
IMAGE_NAME="jama"
|
IMAGE_NAME="jama"
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "jama-frontend",
|
"name": "jama-frontend",
|
||||||
"version": "0.9.41",
|
"version": "0.9.42",
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite",
|
"dev": "vite",
|
||||||
|
|||||||
Reference in New Issue
Block a user