Skip to content

Commit 938ef0b

Browse files
committed
Add mexxage expired at
1 parent a478a37 commit 938ef0b

2 files changed

Lines changed: 25 additions & 6 deletions

File tree

api/pkg/repositories/gorm_message_repository.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -116,8 +116,9 @@ func (repository *gormMessageRepository) GetOutstanding(ctx context.Context, own
116116
tx.Model(&entities.Message{}).
117117
Where("owner = ?", owner).
118118
Where(
119-
repository.db.Where("status = ?", entities.MessageStatusPending).
120-
Or("status = ? AND age(now(), last_attempted_at) > ?", entities.MessageStatusSending, "15 minutes"),
119+
repository.db.
120+
Where("status = ?", entities.MessageStatusPending).
121+
Where("age(now(), created_at) < ?", "5 minutes"),
121122
).
122123
Order("request_received_at ASC").
123124
Select("id").

web/pages/threads/_id.vue

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -101,21 +101,32 @@
101101
<v-tooltip bottom>
102102
<template #activator="{ on, attrs }">
103103
<div v-bind="attrs" v-on="on">
104+
<v-icon
105+
v-if="isExpired(message)"
106+
color="primary"
107+
class="mt-n6"
108+
>mdi-alert</v-icon
109+
>
104110
<v-progress-circular
105-
v-if="isPending(message)"
111+
v-else-if="isPending(message)"
106112
indeterminate
107113
:size="14"
108114
:width="1"
109115
class="mt-n2"
110-
color="primary"
116+
:color="
117+
message.status === 'pending' ? 'primary' : 'warning'
118+
"
111119
></v-progress-circular>
112120
<v-icon
113-
v-if="message.status === 'delivered'"
121+
v-else-if="message.status === 'delivered'"
114122
color="primary"
115123
class="mt-n6"
116124
>mdi-check-all</v-icon
117125
>
118-
<v-icon v-if="message.status === 'sent'" class="mt-n6">
126+
<v-icon
127+
v-else-if="message.status === 'sent'"
128+
class="mt-n6"
129+
>
119130
mdi-check
120131
</v-icon>
121132
</div>
@@ -219,6 +230,13 @@ export default Vue.extend({
219230
return ['sending', 'pending'].includes(message.status)
220231
},
221232
233+
isExpired(message: Message): boolean {
234+
return (
235+
new Date().getTime() - new Date(message.created_at).getTime() >
236+
5 * 60 * 1000
237+
) // 5 minutes
238+
},
239+
222240
isMT(message: Message): boolean {
223241
return message.type === 'mobile-terminated'
224242
},

0 commit comments

Comments
 (0)