Showing only title-based results in search
authorNikolay Tischenko <niktischenko@gmail.com>
Sun, 31 Oct 2010 09:59:14 +0000 (15:59 +0600)
committerNikolay Tischenko <niktischenko@gmail.com>
Sun, 31 Oct 2010 09:59:14 +0000 (15:59 +0600)
src/dbstorage.cpp
src/dbstorage.h
src/library.cpp
src/library.h
src/libraryform.cpp

index b6e26bd..a9b811d 100644 (file)
@@ -88,9 +88,7 @@ void DbStorage::_prepare_queries() {
        _get_tracks_by_pattern_query = new QSqlQuery(db);
        _get_tracks_by_pattern_query->prepare("SELECT id, title, artist, album, source, count, length, year FROM "
                                              "entire WHERE "
-                                             "utitle LIKE (SELECT '%' || :ptitle || '%') OR "
-                                             "album_uname LIKE (SELECT '%' || :palbum || '%') OR "
-                                             "artist_uname LIKE (SELECT '%' || :partist || '%') "
+                                             "utitle LIKE (SELECT '%' || :ptitle || '%') "
                                              "ORDER BY artist_uname, year");
 
        _get_track_id_by_source_query = new QSqlQuery(db);
@@ -541,12 +539,10 @@ int DbStorage::_check_add_album(QString album, int artist_id, int year) {
        }
 }
 
-QList<Track> DbStorage::search(QString pattern) {
+QList<Track> DbStorage::searchTracks(QString pattern) {
        QList <Track> found;
        QSqlQuery *query = _get_tracks_by_pattern_query;
        query->bindValue(":ptitle", pattern.toUpper()); // with :pattern only doesn't work
-       query->bindValue(":palbum", pattern.toUpper());
-       query->bindValue(":partist", pattern.toUpper());
        query->exec();
        // id, title, artist, album, source, count, length, year
        while (query->next()) {
index a280fda..8dfd025 100644 (file)
@@ -52,7 +52,7 @@ namespace SomePlayer {
                        Playlist getNeverPlayed();
                        Playlist getRecentlyAdded();
 
-                       QList<Track> search(QString pattern);
+                       QList<Track> searchTracks(QString pattern);
 
                        int getArtistsCount();
                        int getAlbumsCount();
index 6e116bd..4518b70 100644 (file)
@@ -171,8 +171,8 @@ void Library::updateTrackMetadata(Track track) {
        _resolver->updateTags(ntrack);
 }
 
-QList<Track> Library::search(QString pattern) {
-       return _library_storage->search(pattern);
+QList<Track> Library::searchTracks(QString pattern) {
+       return _library_storage->searchTracks(pattern);
 }
 
 QList<QString> Library::getDirectories() {
index e3d07b9..b68333e 100644 (file)
@@ -56,7 +56,7 @@ namespace SomePlayer {
                        QList<Track> getTracksForAlbum(QString album, QString artist);
                        QList<Track> getAllTracksForArtist(QString artist);
 
-                       QList<Track> search(QString pattern);
+                       QList<Track> searchTracks(QString pattern);
 
                        Playlist getFavorites();
                        Playlist getMostPlayed();
index 248db20..f02b440 100644 (file)
@@ -809,7 +809,7 @@ void LibraryForm::_search_in_library(QString pattern) {
                _model->clear();
                return;
        }
-       _current_tracks = _lib->search(pattern);
+       _current_tracks = _lib->searchTracks(pattern);
        __fill_model_tracks(_model, _current_tracks, _icons_theme);
        ui->listView->setColumnWidth(0, 70);
        ui->listView->scrollToTop();