From c47970f6c78de971eeef86536d7fc04b996c84a9 Mon Sep 17 00:00:00 2001 From: Christian Muehlhaeuser Date: Thu, 19 May 2011 08:41:34 +0200 Subject: [PATCH] * Only log playbacks which were played for at least 10 seconds (locally) and 20 seconds (remotely). --- .../database/databasecommand_logplayback.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/libtomahawk/database/databasecommand_logplayback.cpp b/src/libtomahawk/database/databasecommand_logplayback.cpp index 6443b2216..2a657e850 100644 --- a/src/libtomahawk/database/databasecommand_logplayback.cpp +++ b/src/libtomahawk/database/databasecommand_logplayback.cpp @@ -1,5 +1,5 @@ /* === This file is part of Tomahawk Player - === - * + * * Copyright 2010-2011, Christian Muehlhaeuser * * Tomahawk is free software: you can redistribute it and/or modify @@ -38,7 +38,7 @@ DatabaseCommand_LogPlayback::postCommitHook() qDebug() << "Source has gone offline, not emitting to GUI."; return; } - + connect( this, SIGNAL( trackPlaying( Tomahawk::query_ptr ) ), source().data(), SLOT( onPlaybackStarted( Tomahawk::query_ptr ) ), Qt::QueuedConnection ); connect( this, SIGNAL( trackPlayed( Tomahawk::query_ptr ) ), @@ -57,7 +57,13 @@ DatabaseCommand_LogPlayback::postCommitHook() } if( source()->isLocal() ) + { + // Only tell remote sources about tracks that we listen to long enough + if ( m_secsPlayed < 20 ) + return; + Servent::instance()->triggerDBSync(); + } } @@ -69,6 +75,8 @@ DatabaseCommand_LogPlayback::exec( DatabaseImpl* dbi ) if ( m_action != Finished ) return; + if ( m_secsPlayed < 10 ) + return; TomahawkSqlQuery query = dbi->newquery(); query.prepare( "INSERT INTO playback_log(source, track, playtime, secs_played) "