Check for valid datetime when importing last played
This commit is contained in:
@@ -110,7 +110,7 @@ void SCollection::Init() {
|
|||||||
connect(app_->playlist_manager(), SIGNAL(CurrentSongChanged(Song)), SLOT(CurrentSongChanged(Song)));
|
connect(app_->playlist_manager(), SIGNAL(CurrentSongChanged(Song)), SLOT(CurrentSongChanged(Song)));
|
||||||
connect(app_->player(), SIGNAL(Stopped()), SLOT(Stopped()));
|
connect(app_->player(), SIGNAL(Stopped()), SLOT(Stopped()));
|
||||||
|
|
||||||
connect(app_->lastfm_import(), SIGNAL(UpdateLastPlayed(QString, QString, QString, int)), backend_, SLOT(UpdateLastPlayed(QString, QString, QString, int)));
|
connect(app_->lastfm_import(), SIGNAL(UpdateLastPlayed(QString, QString, QString, qint64)), backend_, SLOT(UpdateLastPlayed(QString, QString, QString, qint64)));
|
||||||
connect(app_->lastfm_import(), SIGNAL(UpdatePlayCount(QString, QString, int)), backend_, SLOT(UpdatePlayCount(QString, QString, int)));
|
connect(app_->lastfm_import(), SIGNAL(UpdatePlayCount(QString, QString, int)), backend_, SLOT(UpdatePlayCount(QString, QString, int)));
|
||||||
|
|
||||||
// This will start the watcher checking for updates
|
// This will start the watcher checking for updates
|
||||||
|
|||||||
@@ -1368,7 +1368,7 @@ SongList CollectionBackend::GetSongsBy(const QString &artist, const QString &alb
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void CollectionBackend::UpdateLastPlayed(const QString &artist, const QString &album, const QString &title, const int lastplayed) {
|
void CollectionBackend::UpdateLastPlayed(const QString &artist, const QString &album, const QString &title, const qint64 lastplayed) {
|
||||||
|
|
||||||
SongList songs = GetSongsBy(artist, album, title);
|
SongList songs = GetSongsBy(artist, album, title);
|
||||||
if (songs.isEmpty()) {
|
if (songs.isEmpty()) {
|
||||||
|
|||||||
@@ -213,7 +213,7 @@ class CollectionBackend : public CollectionBackendInterface {
|
|||||||
void SongPathChanged(const Song &song, const QFileInfo &new_file);
|
void SongPathChanged(const Song &song, const QFileInfo &new_file);
|
||||||
|
|
||||||
SongList GetSongsBy(const QString &artist, const QString &album, const QString &title);
|
SongList GetSongsBy(const QString &artist, const QString &album, const QString &title);
|
||||||
void UpdateLastPlayed(const QString &artist, const QString &album, const QString &title, const int lastplayed);
|
void UpdateLastPlayed(const QString &artist, const QString &album, const QString &title, const qint64 lastplayed);
|
||||||
void UpdatePlayCount(const QString &artist, const QString &title, const int playcount);
|
void UpdatePlayCount(const QString &artist, const QString &title, const int playcount);
|
||||||
|
|
||||||
void UpdateSongRating(const int id, const float rating);
|
void UpdateSongRating(const int id, const float rating);
|
||||||
|
|||||||
@@ -389,6 +389,8 @@ void LastFMImport::GetRecentTracksRequestFinished(QNetworkReply *reply, const in
|
|||||||
QString title = obj_track["name"].toString();
|
QString title = obj_track["name"].toString();
|
||||||
QDateTime datetime = QDateTime::fromString(date, "dd MMM yyyy, hh:mm");
|
QDateTime datetime = QDateTime::fromString(date, "dd MMM yyyy, hh:mm");
|
||||||
|
|
||||||
|
if (!datetime.isValid()) continue;
|
||||||
|
|
||||||
emit UpdateLastPlayed(artist, album, title, datetime.toSecsSinceEpoch());
|
emit UpdateLastPlayed(artist, album, title, datetime.toSecsSinceEpoch());
|
||||||
UpdateProgress();
|
UpdateProgress();
|
||||||
|
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ class LastFMImport : public QObject {
|
|||||||
|
|
||||||
signals:
|
signals:
|
||||||
void UpdatePlayCount(QString, QString, int);
|
void UpdatePlayCount(QString, QString, int);
|
||||||
void UpdateLastPlayed(QString, QString, QString, int);
|
void UpdateLastPlayed(QString, QString, QString, qint64);
|
||||||
void UpdateTotal(int, int);
|
void UpdateTotal(int, int);
|
||||||
void UpdateProgress(int, int);
|
void UpdateProgress(int, int);
|
||||||
void Finished();
|
void Finished();
|
||||||
|
|||||||
Reference in New Issue
Block a user