Searching is fully working

This commit is contained in:
Deluan
2016-03-11 10:03:33 -05:00
parent 32f69c4a74
commit a918dc5a14
3 changed files with 42 additions and 31 deletions
+15 -9
View File
@@ -62,12 +62,14 @@ func (s search) IndexMediaFile(mf *domain.MediaFile) error {
}
func (s search) SearchArtist(q string, offset int, size int) (*Results, error) {
q = strings.TrimSuffix(q, "*")
resp, err := s.sArtist.Search(q)
q = strings.ToLower(strings.TrimSuffix(q, "*"))
min := offset
max := min + size - 1
resp, err := s.sArtist.Search(q, min, max)
if err != nil {
return nil, nil
}
res := make(Results, 0, len(resp))
res := make(Results, len(resp))
for i, id := range resp {
a, err := s.artistRepo.Get(id)
if err != nil {
@@ -79,12 +81,14 @@ func (s search) SearchArtist(q string, offset int, size int) (*Results, error) {
}
func (s search) SearchAlbum(q string, offset int, size int) (*Results, error) {
q = strings.TrimSuffix(q, "*")
resp, err := s.sAlbum.Search(q)
q = strings.ToLower(strings.TrimSuffix(q, "*"))
min := offset
max := min + size - 1
resp, err := s.sAlbum.Search(q, min, max)
if err != nil {
return nil, nil
}
res := make(Results, 0, len(resp))
res := make(Results, len(resp))
for i, id := range resp {
al, err := s.albumRepo.Get(id)
if err != nil {
@@ -96,12 +100,14 @@ func (s search) SearchAlbum(q string, offset int, size int) (*Results, error) {
}
func (s search) SearchSong(q string, offset int, size int) (*Results, error) {
q = strings.TrimSuffix(q, "*")
resp, err := s.sSong.Search(q)
q = strings.ToLower(strings.TrimSuffix(q, "*"))
min := offset
max := min + size - 1
resp, err := s.sSong.Search(q, min, max)
if err != nil {
return nil, nil
}
res := make(Results, 0, len(resp))
res := make(Results, len(resp))
for i, id := range resp {
mf, err := s.mfileRepo.Get(id)
if err != nil {