MarkAsUnread now returns number of unread messages

This commit is contained in:
Denis Arh
2019-01-03 21:37:41 +01:00
parent 1457bc4032
commit a83c1ed3e6
3 changed files with 5 additions and 6 deletions
+1 -1
View File
@@ -67,7 +67,7 @@ const (
sqlThreadParticipantsByMessageID = "SELECT DISTINCT reply_to, rel_user FROM messages WHERE reply_to IN (?)"
sqlCountFromMessageID = "SELECT COUNT(1) AS count FROM messages WHERE rel_channel = ? AND reply_to = ? AND id > ?"
sqlCountFromMessageID = "SELECT COUNT(*) AS count FROM messages WHERE rel_channel = ? AND reply_to = ? AND id > ?"
sqlMessageRepliesIncCount = `UPDATE messages SET replies = replies + 1 WHERE id = ? AND reply_to = 0`
sqlMessageRepliesDecCount = `UPDATE messages SET replies = replies - 1 WHERE id = ? AND reply_to = 0`
+1 -1
View File
@@ -70,7 +70,7 @@ func (ctrl *Message) Delete(ctx context.Context, r *request.MessageDelete) (inte
}
func (ctrl *Message) MarkAsUnread(ctx context.Context, r *request.MessageMarkAsUnread) (interface{}, error) {
return true, ctrl.svc.msg.With(ctx).MarkAsUnread(r.MessageID)
return ctrl.svc.msg.With(ctx).MarkAsUnread(r.MessageID)
}
func (ctrl *Message) PinCreate(ctx context.Context, r *request.MessagePinCreate) (interface{}, error) {
+3 -4
View File
@@ -43,7 +43,7 @@ type (
React(messageID uint64, reaction string) error
RemoveReaction(messageID uint64, reaction string) error
MarkAsUnread(messageID uint64) error
MarkAsUnread(messageID uint64) (uint32, error)
Pin(messageID uint64) error
RemovePin(messageID uint64) error
@@ -309,13 +309,12 @@ func (svc *message) Delete(ID uint64) error {
}
// Pin message to the channel
func (svc *message) MarkAsUnread(messageID uint64) error {
func (svc *message) MarkAsUnread(messageID uint64) (count uint32, err error) {
var currentUserID uint64 = repository.Identity(svc.ctx)
return svc.db.Transaction(func() (err error) {
return count, svc.db.Transaction(func() (err error) {
// Broadcast queue
var message *types.Message
var count uint32
message, err = svc.message.FindMessageByID(messageID)
if err != nil {