fixed double count in read messages
Former-commit-id: e3661ad675c7dcd70fbea3bc5a41b3f103a376a0
This commit is contained in:
parent
7893827652
commit
d2649bb51c
|
@ -363,9 +363,11 @@ function messages_get_count(
|
||||||
|
|
||||||
$sql = sprintf(
|
$sql = sprintf(
|
||||||
'SELECT count(*) FROM (
|
'SELECT count(*) FROM (
|
||||||
SELECT tm.*, utimestamp_read > 0 as "read" FROM tmensajes tm
|
SELECT DISTINCT tm.*, utimestamp_read > 0 as "read"
|
||||||
|
FROM tmensajes tm
|
||||||
LEFT JOIN tnotification_user nu
|
LEFT JOIN tnotification_user nu
|
||||||
ON tm.id_mensaje=nu.id_mensaje
|
ON tm.id_mensaje=nu.id_mensaje
|
||||||
|
AND nu.id_user="%s"
|
||||||
LEFT JOIN (tnotification_group ng
|
LEFT JOIN (tnotification_group ng
|
||||||
INNER JOIN tusuario_perfil up
|
INNER JOIN tusuario_perfil up
|
||||||
ON ng.id_group=up.id_grupo
|
ON ng.id_group=up.id_grupo
|
||||||
|
@ -377,6 +379,7 @@ function messages_get_count(
|
||||||
%s',
|
%s',
|
||||||
$user,
|
$user,
|
||||||
$user,
|
$user,
|
||||||
|
$user,
|
||||||
$read
|
$read
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -467,11 +470,14 @@ function messages_get_overview(
|
||||||
ON tns.id=tm.id_source';
|
ON tns.id=tm.id_source';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Using distinct because could be double assignment due group/user.
|
||||||
$sql = sprintf(
|
$sql = sprintf(
|
||||||
'SELECT * FROM (
|
'SELECT * FROM (
|
||||||
SELECT tm.*, utimestamp_read > 0 as "read" %s FROM tmensajes tm
|
SELECT DISTINCT tm.*, utimestamp_read > 0 as "read" %s
|
||||||
|
FROM tmensajes tm
|
||||||
LEFT JOIN tnotification_user nu
|
LEFT JOIN tnotification_user nu
|
||||||
ON tm.id_mensaje=nu.id_mensaje
|
ON tm.id_mensaje=nu.id_mensaje
|
||||||
|
AND nu.id_user="%s"
|
||||||
LEFT JOIN (tnotification_group ng
|
LEFT JOIN (tnotification_group ng
|
||||||
INNER JOIN tusuario_perfil up
|
INNER JOIN tusuario_perfil up
|
||||||
ON ng.id_group=up.id_grupo
|
ON ng.id_group=up.id_grupo
|
||||||
|
@ -486,6 +492,7 @@ function messages_get_overview(
|
||||||
ORDER BY %s
|
ORDER BY %s
|
||||||
%s',
|
%s',
|
||||||
$source_fields,
|
$source_fields,
|
||||||
|
$config['id_user'],
|
||||||
$source_join,
|
$source_join,
|
||||||
$config['id_user'],
|
$config['id_user'],
|
||||||
$config['id_user'],
|
$config['id_user'],
|
||||||
|
|
|
@ -131,10 +131,13 @@ function check_notification_readable(int $id_message)
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Using distinct to avoid double response on group messages read by user.
|
||||||
$sql = sprintf(
|
$sql = sprintf(
|
||||||
'SELECT tm.*, utimestamp_read > 0 as "read" FROM tmensajes tm
|
'SELECT DISTINCT tm.*, utimestamp_read > 0 as "read"
|
||||||
|
FROM tmensajes tm
|
||||||
LEFT JOIN tnotification_user nu
|
LEFT JOIN tnotification_user nu
|
||||||
ON tm.id_mensaje=nu.id_mensaje
|
ON tm.id_mensaje=nu.id_mensaje
|
||||||
|
AND nu.id_user="%s"
|
||||||
AND tm.id_mensaje=%d
|
AND tm.id_mensaje=%d
|
||||||
LEFT JOIN (tnotification_group ng
|
LEFT JOIN (tnotification_group ng
|
||||||
INNER JOIN tusuario_perfil up
|
INNER JOIN tusuario_perfil up
|
||||||
|
@ -143,6 +146,7 @@ function check_notification_readable(int $id_message)
|
||||||
) ON tm.id_mensaje=ng.id_mensaje
|
) ON tm.id_mensaje=ng.id_mensaje
|
||||||
WHERE utimestamp_erased is null
|
WHERE utimestamp_erased is null
|
||||||
AND (nu.id_user="%s" OR (up.id_usuario="%s" AND ng.id_group=0))',
|
AND (nu.id_user="%s" OR (up.id_usuario="%s" AND ng.id_group=0))',
|
||||||
|
$config['id_user'],
|
||||||
$id_message,
|
$id_message,
|
||||||
$config['id_user'],
|
$config['id_user'],
|
||||||
$config['id_user']
|
$config['id_user']
|
||||||
|
|
Loading…
Reference in New Issue