add artist search

This commit is contained in:
2025-02-06 00:35:38 +01:00
parent 2791b6de76
commit 6caefaffb2
2 changed files with 14 additions and 7 deletions

View File

@@ -352,16 +352,23 @@ func getSearch(db *sql.DB, q string, limit, offset int) (ActiveSearch, error) {
} }
func getArtists(db *sql.DB, q string, limit, offset int) ([]string, error) { func getArtists(db *sql.DB, q string, limit, offset int) ([]string, error) {
rows, err := db.Query("SELECT Artist FROM Songs WHERE Title LIKE ? OR Artist LIKE ? LIMIT ? OFFSET ?", "%"+q+"%", "%"+q+"%", limit, offset) rows, err := db.Query("SELECT Artist FROM Beatmap WHERE Artist LIKE ? OR Title LIKE ? GROUP BY Artist LIMIT ? OFFSET ?", "%"+q+"%", "%"+q+"%", limit, offset)
if err != nil { if err != nil {
return []string{}, err return []string{}, err
} }
defer rows.Close() defer rows.Close()
_, err = scanSongs(rows)
var artist []string
for rows.Next() {
var a string
err := rows.Scan(&a)
if err != nil { if err != nil {
return []string{}, err return []string{}, err
} }
return []string{}, nil artist = append(artist, a)
}
return artist, nil
} }
func getFavorites(db *sql.DB, q string, limit, offset int) ([]Song, error) { func getFavorites(db *sql.DB, q string, limit, offset int) ([]Song, error) {

View File

@@ -283,13 +283,13 @@ func (s *Server) artistSearch(w http.ResponseWriter, r *http.Request) {
//TODO //TODO
limit, offset := pagination(r) limit, offset := pagination(r)
recent, err := getArtists(s.Db, q, limit, offset) a, err := getArtists(s.Db, q, limit, offset)
if err != nil { if err != nil {
fmt.Println(err) fmt.Println(err)
http.Error(w, err.Error(), http.StatusInternalServerError) http.Error(w, err.Error(), http.StatusInternalServerError)
return return
} }
writeJSON(w, recent, http.StatusOK) writeJSON(w, a, http.StatusOK)
} }
// @Summary Retrieves a song file by its encoded path // @Summary Retrieves a song file by its encoded path