summaryrefslogtreecommitdiff
authorzecke <zecke>2005-06-27 17:50:15 (UTC)
committer zecke <zecke>2005-06-27 17:50:15 (UTC)
commit0c99f2087c4d5a1cab6c2bd1083d6db3f2a4cae8 (patch) (side-by-side diff)
treeab7169403134f8171a454e053f2e34c6fd30eede
parentcc4771f193215827036689291d9d3d74d2cbef3f (diff)
downloadopie-0c99f2087c4d5a1cab6c2bd1083d6db3f2a4cae8.zip
opie-0c99f2087c4d5a1cab6c2bd1083d6db3f2a4cae8.tar.gz
opie-0c99f2087c4d5a1cab6c2bd1083d6db3f2a4cae8.tar.bz2
Sort by Anniversary and Birthday
Patch courtsey Marcin Juszkiewicz
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/today/plugins/addressbook/addresspluginwidget.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/core/pim/today/plugins/addressbook/addresspluginwidget.cpp b/core/pim/today/plugins/addressbook/addresspluginwidget.cpp
index 5662af2..75bf474 100644
--- a/core/pim/today/plugins/addressbook/addresspluginwidget.cpp
+++ b/core/pim/today/plugins/addressbook/addresspluginwidget.cpp
@@ -95,48 +95,53 @@ void AddressBookPluginWidget::getAddress() {
addressLabel->setText( output );
return;
}
// Define the query for birthdays and start search..
QDate lookAheadDate = QDate::currentDate().addDays( m_daysLookAhead );
int ammount = 0;
if ( m_showBirthdays ){
owarn << "Searching from now (" << QDate::currentDate().toString() << ") until "
<< lookAheadDate.toString() << " ! " << oendl;
if ( m_contactdb->hasQuerySettings( Opie::OPimContactAccess::DateDiff ) ){
Opie::OPimContact querybirthdays;
querybirthdays.setBirthday( lookAheadDate );
m_list = m_contactdb->queryByExample( querybirthdays,
Opie::OPimContactAccess::DateDiff );
if ( m_list.count() > 0 ){
output = "<font color=" + m_headlineColor + ">"
+ QObject::tr( "Next birthdays in <b> %1 </b> days:" )
.arg( m_daysLookAhead )
+ "</font> <br>";
+
+ // Sort filtered results
+ m_list = m_contactdb->sorted( m_list, true, Opie::OPimContactAccess::SortBirthday,
+ Opie::OPimContactAccess::FilterOff, NULL );
+
for ( m_it = m_list.begin(); m_it != m_list.end(); ++m_it ) {
if ( ammount++ < m_maxLinesTask ){
// Now we want to calculate how many days
//until birthday. We have to set
// the correct year to calculate the day diff...
QDate destdate = (*m_it).birthday();
destdate.setYMD( QDate::currentDate().year(),
destdate.month(), destdate.day() );
if ( QDate::currentDate().daysTo(destdate) < 0 )
destdate.setYMD( QDate::currentDate().year()+1,
destdate.month(), destdate.day() );
if ( QDate::currentDate().daysTo(destdate) < m_urgentDays )
output += "<font color=" + m_urgentColor + "><b>-"
+ (*m_it).fullName()
+ " ("
+ QString::number(QDate::currentDate()
.daysTo(destdate))
+ " Days) </b></font><br>";
else
output += "<font color=" + m_entryColor + "><b>-"
+ (*m_it).fullName()
@@ -147,48 +152,53 @@ void AddressBookPluginWidget::getAddress() {
}
}
} else {
output = "<font color=" + m_headlineColor + ">"
+ QObject::tr( "No birthdays in <b> %1 </b> days!" )
.arg( m_daysLookAhead )
+ "</font> <br>";
}
}
}
if ( m_showAnniversaries ){
// Define the query for anniversaries and start search..
Opie::OPimContact queryanniversaries;
queryanniversaries.setAnniversary( lookAheadDate );
m_list = m_contactdb->queryByExample( queryanniversaries, Opie::OPimContactAccess::DateDiff );
ammount = 0;
if ( m_list.count() > 0 ){
output += "<font color=" + m_headlineColor + ">"
+ QObject::tr( "Next anniversaries in <b> %1 </b> days:" )
.arg( m_daysLookAhead )
+ "</font> <br>";
+
+ // Sort filtered results
+ m_list = m_contactdb->sorted( m_list, true, Opie::OPimContactAccess::SortAnniversary,
+ Opie::OPimContactAccess::FilterOff, NULL );
+
for ( m_it = m_list.begin(); m_it != m_list.end(); ++m_it ) {
if ( ammount++ < m_maxLinesTask ){
// Now we want to calculate how many days until anniversary.
// We have to set the correct year to calculate the day diff...
QDate destdate = (*m_it).anniversary();
destdate.setYMD( QDate::currentDate().year(), destdate.month(),
destdate.day() );
if ( QDate::currentDate().daysTo(destdate) < 0 )
destdate.setYMD( QDate::currentDate().year()+1,
destdate.month(), destdate.day() );
if ( QDate::currentDate().daysTo(destdate) < m_urgentDays )
output += "<font color=" + m_urgentColor + "><b>-"
+ (*m_it).fullName()
+ " ("
+ QString::number(QDate::currentDate()
.daysTo( destdate ) )
+ " Days) </b></font><br>";
else
output += "<font color=" + m_entryColor + "><b>-"
+ (*m_it).fullName()
+ " ("
+ QString::number(QDate::currentDate()
.daysTo( destdate ) )