From a1ff1046eeb8117e6e03a19c05a0c5d0a25fc55b Mon Sep 17 00:00:00 2001 From: Sam Bosley Date: Fri, 26 Oct 2012 16:54:30 -0700 Subject: [PATCH] Only show calendar reminders for which the user is an actual attendee (i.e. not just shared on the calendar) --- .../com/todoroo/astrid/gcal/CalendarAlarmReceiver.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/astrid/plugin-src/com/todoroo/astrid/gcal/CalendarAlarmReceiver.java b/astrid/plugin-src/com/todoroo/astrid/gcal/CalendarAlarmReceiver.java index e519046d2..0ac147eef 100644 --- a/astrid/plugin-src/com/todoroo/astrid/gcal/CalendarAlarmReceiver.java +++ b/astrid/plugin-src/com/todoroo/astrid/gcal/CalendarAlarmReceiver.java @@ -112,16 +112,20 @@ public class CalendarAlarmReceiver extends BroadcastReceiver { for (Account a : accountArray) { phoneAccounts.add(a.name); } + String astridUser = ActFmPreferenceService.thisUser().optString("email"); if (!TextUtils.isEmpty(astridUser)) phoneAccounts.add(astridUser); + boolean includesMe = false; for (attendees.moveToFirst(); !attendees.isAfterLast(); attendees.moveToNext()) { String name = attendees.getString(nameIndex); String email = attendees.getString(emailIndex); if (!TextUtils.isEmpty(email)) { - if (phoneAccounts.contains(email)) + if (phoneAccounts.contains(email)) { + includesMe = true; continue; + } if (Constants.DEBUG) Log.w(CalendarAlarmScheduler.TAG, "Attendee: " + name + ", email: " + email); names.add(name); @@ -129,7 +133,7 @@ public class CalendarAlarmReceiver extends BroadcastReceiver { } } - if (emails.size() > 0) { + if (emails.size() > 0 && includesMe) { Intent reminderActivity = new Intent(context, CalendarReminderActivity.class); reminderActivity.putStringArrayListExtra(CalendarReminderActivity.TOKEN_NAMES, names); reminderActivity.putStringArrayListExtra(CalendarReminderActivity.TOKEN_EMAILS, emails);