Compare commits
2 Commits
f8f9d99e69
...
8bcb0094b2
| Author | SHA1 | Date | |
|---|---|---|---|
|
8bcb0094b2
|
|||
|
f39e4e6fb0
|
@@ -113,19 +113,17 @@ func (h *Handler) handleURLInput(ctx context.Context, chatID int64, text string,
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Reject if user has already exhausted quota (limit of 0 = unlimited).
|
||||||
q, err := h.Repo.GetOrCreateQuotas(userID)
|
q, err := h.Repo.GetOrCreateQuotas(userID)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
q = h.resetQuotasIfNeeded(q)
|
q = h.resetQuotasIfNeeded(q)
|
||||||
estimatedMB := info.EstimatedSize / (1024 * 1024)
|
if (q.DailyLimitMB > 0 && q.DailyUsedMB >= q.DailyLimitMB) ||
|
||||||
if estimatedMB > 0 {
|
(q.WeeklyLimitMB > 0 && q.WeeklyUsedMB >= q.WeeklyLimitMB) ||
|
||||||
if q.DailyUsedMB+estimatedMB > q.DailyLimitMB ||
|
(q.MonthlyLimitMB > 0 && q.MonthlyUsedMB >= q.MonthlyLimitMB) {
|
||||||
q.WeeklyUsedMB+estimatedMB > q.WeeklyLimitMB ||
|
h.sendText(ctx, chatID, fmt.Sprintf(
|
||||||
q.MonthlyUsedMB+estimatedMB > q.MonthlyLimitMB {
|
"Quota exceeded. Daily: %d/%d MB, Weekly: %d/%d MB, Monthly: %d/%d MB.",
|
||||||
h.sendText(ctx, chatID, fmt.Sprintf(
|
q.DailyUsedMB, q.DailyLimitMB, q.WeeklyUsedMB, q.WeeklyLimitMB, q.MonthlyUsedMB, q.MonthlyLimitMB))
|
||||||
"Quota exceeded. Daily: %d/%d MB, Weekly: %d/%d MB, Monthly: %d/%d MB.",
|
return
|
||||||
q.DailyUsedMB, q.DailyLimitMB, q.WeeklyUsedMB, q.WeeklyLimitMB, q.MonthlyUsedMB, q.MonthlyLimitMB))
|
|
||||||
return
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user