EAS-4-TbSync icon indicating copy to clipboard operation
EAS-4-TbSync copied to clipboard

Better reminder support for Microsoft To-Do

Open willuhn opened this issue 3 years ago • 5 comments

I've added some changes to better support Microsoft To Do (https://todo.microsoft.com/).

Microsoft To Do:

  • only uses due dates (no start dates - because of this reminders do not work currently in EAS-4-TbSync)
  • the due date doen't have a time part (time is set to 0:00)
  • reminders have an absolute date +time

My patch adds a new preference "extensions.eas4tbsync.msTodoCompat=true/false" (defaults to "false"). When downloading new tasks from the server and the parameter is set to

  • true, the reminder date itself will be used as the due date and entry date. Additionally a reminder will be created, that points exactly to the entry date (related to entry date with 0 seconds offset). Drawback: it completly ignores the due date from MS To Do. Hence it only makes sense if due date and reminder is set to the same day (but who uses different days for date and reminder in MS To Do?).
  • false and start date has not been transmitted by server (which is the case for MS To Do), the entry date and due date will be set as usual. Only difference: reminder is created using an absolute time instead of relative date based on start date. Drawback: Because MS To Do does not use time parts in and due, it's always shown as "0:00". Which means all tasks for today are shown as overdue even if the reminder is defined for a later time on that day.

"msTodoCompat=false" is for sure the prefered way since it honors the due date. "msTodoCompat=true" works best for my personal use.

willuhn avatar Mar 10 '21 10:03 willuhn

msTodoCompat-false msTodoCompatTrue

willuhn avatar Mar 10 '21 10:03 willuhn

Changed ALARM_RELATED_ON to ALARM_RELATED_START - looks better than "The moment the task ends":

Screenshot_20210311_091103

willuhn avatar Mar 11 '21 08:03 willuhn

Can I do anything to get this merged into this plugin or are you not interested in this change?

willuhn avatar Sep 03 '21 15:09 willuhn

I will have a look shortly. Thank you for your contribution!

jobisoft avatar Sep 06 '21 07:09 jobisoft

In case my description above is too complex, the following example should show the different behaviour. Given a new todo, that has been created in MS ToDo with:

Due Date: 11.03.21
Reminder: 11:03.21 13:12

This will be synchronized into Thunderbird with:

1) current behaviour:

Start:     [inactive]
Due Date:  11.03.21 00:00
Reminder:  [no reminder]

-> no reminder at all and time part completly lost

2a) with patch and extensions.eas4tbsync.msTodoCompat=true

Start:     11.03.21 13:12
Due Date:  11.03.21 13:12
Reminder:  0 minutes before

-> in my opinion closest to user's expectation

2b) with patch and extensions.eas4tbsync.msTodoCompat=false

Start:     [inactive]
Due Date:  11.03.21 00:00
Reminder:  11.03.21 13:12

-> honors the fact that MS ToDo does not suppot time part in due date, but does not look good in Thunderbird

willuhn avatar Sep 08 '21 10:09 willuhn

Thanks. Let's give this a try.

jobisoft avatar May 24 '23 16:05 jobisoft