danvratil / FBEventSync

Sync Facebook Events into your Android calendar
GNU General Public License v3.0
35 stars 7 forks source link

Events persist in calendar when disabled in settings #39

Closed visualcurrent closed 6 years ago

visualcurrent commented 6 years ago

Multiday events that I have explicitly marked as "Not Going" in Facebook persist in my local calendar regardless of refreshing either my local calendar or resyncing Event Sync for Facebook (ESF), even after waiting days or restarting phone.

"Events I'm not Attending" is disabled in ESF settings. Yet the declined events continue to show locally as if they were "Events I have not Responded To."

I wonder if this stems from the same bug from issue #32: Disabled calendars are not unsynced

ESF is otherwise fantastic!

danvratil commented 6 years ago

Any chance the multiday events are/were already in progress?

There's a special check in the app that basically ignores any events that are in the past because Facebook no longer provides any information about them.

The obvious fix is to not ignore events that are still in progress, AFAIK Facebook should still be reporting those to us.

visualcurrent commented 6 years ago

Yes it appears that the multiday events were already in progress when I noticed the issue and reported it to you.

I don't really notice the regular events that come and go. But some of these events last for weeks and it gets really bothersome to have them clutter the daily view for so long and not have any way to get rid of them. What's strange is that if Facebook no longer provides any information about them, how is your app holding on to the event? And why is there no option to delete the event from my local calendar?

I do remember that the sync app that you replaced for me (Calendar Sync for Facebook https://play.google.com/store/apps/details?id=com.shadowfury.facebookcalendarsync) no longer showed multiday events after ignoring them. Maybe facebook has changed how they report those since then. Switching to you has solved all of the fundamental sync issues I was having with that app.

Gabe Krause ● Chief Technical Officer ● NEXI http://www.meetnexi.com/

On Wed, Jun 27, 2018 at 4:53 PM, Dan Vrátil notifications@github.com wrote:

Any chance the multiday events are/were already in progress?

There's a special check in the app that basically ignores any events that are in the past because Facebook no longer provides any information about them.

The obvious fix is to not ignore events that are still in progress, AFAIK Facebook should still be reporting those to us.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/danvratil/FBEventSync/issues/39#issuecomment-400866382, or mute the thread https://github.com/notifications/unsubscribe-auth/AKfPP7xGLq3zgLOKxw85qplASZm_ge0Hks5uBBsIgaJpZM4UuBmw .

danvratil commented 6 years ago

What's strange is that if Facebook no longer provides any information about them, how is your app holding on to the event?

When we no longer see the event in the sync from Facebook, but we have it in the local calendar, we just keep it in the calendar, if it's in the past. If the local event is in the future but disappeared, we assume the user has unsubscribed from the event and remove it.

The bug here then indeed is that we check if the event is in the past by checking its start date, not the end date, I'll fix it in the upcoming release.

And why is there no option to delete the event from my local calendar?

Because the calendar is marked as read-only, since there's no way for the app to sync any changes you would do in the phone calendar back to Facebook. Unfortunately Android does not allow more fine-grained access control to allow deleting only (and even then, it would be unclear what should happen - unsubscribe completely, or just move to declined?)

visualcurrent commented 6 years ago

Makes sense. Thank you for the clarification and adding it to upcoming changes.

On Jun 30, 2018 1:36 AM, "Dan Vrátil" notifications@github.com wrote:

What's strange is that if Facebook no longer provides any information about them, how is your app holding on to the event?

When we no longer see the event in the sync from Facebook, but we have it in the local calendar, we just keep it in the calendar, if it's in the past. If the local event is in the future but disappeared, we assume the user has unsubscribed from the event and remove it.

The bug here then indeed is that we check if the event is in the past by checking its start date, not the end date, I'll fix it in the upcoming release.

And why is there no option to delete the event from my local calendar?

Because the calendar is marked as read-only, since there's no way for the app to sync any changes you would do in the phone calendar back to Facebook. Unfortunately Android does not allow more fine-grained access control to allow deleting only (and even then, it would be unclear what should happen - unsubscribe completely, or just move to declined?)

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/danvratil/FBEventSync/issues/39#issuecomment-401527077, or mute the thread https://github.com/notifications/unsubscribe-auth/AKfPP40BnUJ7CyjmjiQvLhhFdve2NA7_ks5uBzikgaJpZM4UuBmw .