load more messages
This commit is contained in:
@@ -852,6 +852,27 @@ func GetActivityByAddress(userDB *sql.DB, address string, startDate, endDate *ti
|
||||
return activities, nil
|
||||
}
|
||||
|
||||
// CountActivityByAddress returns the total number of activity rows for a given address and date range
|
||||
func CountActivityByAddress(userDB *sql.DB, address string, startDate, endDate *time.Time) (int, error) {
|
||||
query := `SELECT COUNT(*) FROM messages WHERE 1=1`
|
||||
args := []interface{}{}
|
||||
if address != "" {
|
||||
query += " AND address = ?"
|
||||
args = append(args, address)
|
||||
}
|
||||
if startDate != nil {
|
||||
query += " AND date >= ?"
|
||||
args = append(args, startDate.Unix())
|
||||
}
|
||||
if endDate != nil {
|
||||
query += " AND date <= ?"
|
||||
args = append(args, endDate.Unix())
|
||||
}
|
||||
var count int
|
||||
err := userDB.QueryRow(query, args...).Scan(&count)
|
||||
return count, err
|
||||
}
|
||||
|
||||
// GetMediaByAddress fetches only media items (images/videos) for a specific address
|
||||
func GetMediaByAddress(userDB *sql.DB, address string, startDate, endDate *time.Time) ([]Message, error) {
|
||||
query := `
|
||||
|
||||
+10
-1
@@ -210,6 +210,12 @@ func HandleMessages(c echo.Context) error {
|
||||
}
|
||||
}
|
||||
|
||||
total, err := CountActivityByAddress(userDB, address, startDate, endDate)
|
||||
if err != nil {
|
||||
slog.Error("Error counting activity", "error", err)
|
||||
total = 0
|
||||
}
|
||||
|
||||
activities, err := GetActivityByAddress(userDB, address, startDate, endDate, limit, offset)
|
||||
if err != nil {
|
||||
slog.Error("Error getting activity", "error", err)
|
||||
@@ -229,7 +235,10 @@ func HandleMessages(c echo.Context) error {
|
||||
activities = filteredActivities
|
||||
}
|
||||
|
||||
return c.JSON(http.StatusOK, activities)
|
||||
return c.JSON(http.StatusOK, map[string]interface{}{
|
||||
"items": activities,
|
||||
"total": total,
|
||||
})
|
||||
}
|
||||
|
||||
messages, err := GetMessages(userDB, address, startDate, endDate)
|
||||
|
||||
Reference in New Issue
Block a user