173 Commits (73a3729a7077093527dddf22479370cb97708971)

Author SHA1 Message Date
Tom Hacohen 0b18cac914 Licensing: add license headers to source files. 5 years ago
Tom Hacohen b76a909b7a Login Form: change the label to Email from Username. 5 years ago
Tom Hacohen cac9b21135 AddressBook: fix search when there are contacts with a full name. 5 years ago
Tom Hacohen 28b11e59ff AddressBook: fix crash when fullname is undefined. 5 years ago
Tom Hacohen d268c0fab6 Event Edit: fix handling of recurring events with an until field.
It was slightly the wrong type because of typings were wrong. We now explicitly
convert it.
5 years ago
Tom Hacohen 7b22e0e76b RRule: move filtering of empty values to inside the widget. 5 years ago
Tom Hacohen af65d20444 rrule: handle empty/undefined values 5 years ago
Tom Hacohen 116883e207 ical.js types: fix ICAL.Recur's type and adjust code accordingly 5 years ago
Tom Hacohen 4b20a0db5f Event Edit: simplify code and make it persist the rrule
While at it, also fix an issue with byday needing to be string[] and not
number[]
5 years ago
Tal Leibman 3897d38fb0 components: EventEdit removed whitespace changes 5 years ago
Tal Leibman 0661190aef components: EventEdit state name "rruleOptions" to "rrule" 5 years ago
Tal Leibman bd98d833aa components: EventEdit warning message 5 years ago
Tal Leibman 0657e79e45 widgets: name change "RRuleEteSync" to "RRule" 5 years ago
Tal Leibman 7b17a14a84 components: EventEdit add RRule widget 5 years ago
Tal Leibman aae9cd5d16 EventEdit: import RRuleEteSync 5 years ago
Tal Leibman 265f2a091b Event Edit: change container to Fragment 5 years ago
Tom Hacohen b54f25eee9 Handle contacts with null for a uid.
It seems like we aren't setting a uid for contacts without one when importing
so it's possible to get ones without a uid.

Opened ticket #71 to track this issue.
5 years ago
Tom Hacohen 052543261f Unify ICAL parsing and omit property group names.
The property groups were causing us issues and making it very hard
to handle these properties. And since we were not dealing with them
anyway, it's better to just remove them (standard allows this).

ical.js doesn't deal with them correctly, which is the source of this
problem. More info:
https://github.com/mozilla-comm/ical.js/issues/411
5 years ago
Tom Hacohen 583e9090d8 TaskList: make it possible to view completed items. 5 years ago
Tom Hacohen 1eb561342f TaskEdit: fix editing of tasks without a start/due/completion date. 5 years ago
Tom Hacohen ec5d1faaa1 TaskList: convert to a pure functional component. 5 years ago
Tom Hacohen 3730300411 Event/task edit: handle timezones.
Fixes #29
5 years ago
Tom Hacohen 6a0fc11ab3 Event/task edit: improve design. 5 years ago
Tom Hacohen fed79fcfea Task/event: show current timezone next to events with timezones.
We were previously showing the original timezone which was confusing.
5 years ago
Tom Hacohen 80e249c958 Task list: fix typing. 5 years ago
Tom Hacohen 9ae370ac01 Task list: simplify sort function. 5 years ago
Tom Hacohen d3b4145269 Use the new UNSAFE_componentWillReceiveProps function name
We should redesign these, but until then, this should unbreak linting.
5 years ago
Tom Hacohen e407976e58 Journal Entries: make parse errors non-fatal here too.
This is in continuation to 9abb3dcad9.

Fixes #48
5 years ago
Tom Hacohen 8656d1076f Update react-big-calendar. 5 years ago
Tom Hacohen fcf8f1af58 Upgrade material-ui. 5 years ago
Tom Hacohen 95944d87b5 PrettyError: redesign to make more reusable. 5 years ago
Tom Hacohen 8fe360751e Address book: handle contact names with length 0.
We were handling non existent contact names, but not
ones with length 0. This fixes this.

Fixes #62.
5 years ago
Tom Hacohen c7d4a15f5f Move the etesync-js API to its own repo. 5 years ago
Tom Hacohen f3de2a641a eslint: changed unused-args to always warn. 5 years ago
Tom Hacohen 566261b91a lint: fix all remaining warnings! 5 years ago
Tom Hacohen ab5495e221 Eslint: update rules and adjust code accordingly. 5 years ago
Tom Hacohen 29d4153e60 Fix some tsserver suggestions. 5 years ago
Tom Hacohen 11dd883f5f lint: replace tslint with eslint and fix new warnings and errors. 5 years ago
Tom Hacohen 514f4ccddb Login: show text about setting the encryption key on first login. 5 years ago
Tom Hacohen 25afd02ba5 Remove recompose dep and use React.memo instead. 5 years ago
Tom Hacohen ba8d899d5d Fix eslint warnings. 5 years ago
Claus Niesen ff47e38845 Fix display of recurring events.
Fixes #56
5 years ago
Tom Hacohen 8d76e134e8 Contact: change the field copy button to use the correct icon. 5 years ago
Tal Leibman 6d45c31f98 Contacts: Add a button to copy fields to clipboard
Fixes #39
5 years ago
Tom Hacohen ea67bb4b87 AddressBook: fix handling of contacts with empty names.
Fixes #49
5 years ago
Tom Hacohen 46fe1ceeb6 Gracefully handle wrong encryption passwords.
Until now we just showed integrity error which could be one of many issues.
Now we show an explicit error message and only clear the encryption password
cache rather than the whole cache.
6 years ago
Tom Hacohen 49273fbc6f Calendar: scroll to 8am when opening week and day views.
Fixes #40.
6 years ago
Tom Hacohen aeca32afa8 AddressBook: make sort case insensitive.
Fixes #34.
6 years ago
Tom Hacohen ad45ad3f83 Update tslint and fix warnings. 6 years ago
Tom Hacohen 7da0a6009b More tslint fixes. 6 years ago
Tom Hacohen 9913adc756 Update tslint config and update code to conform. 6 years ago
Tom Hacohen 3b7fadcc69 Set the locale based on the settings.
Partially fixes #4
6 years ago
Tom Hacohen b46291f360 Make the login screen slightly nicer. 6 years ago
Tom Hacohen 5237b14b74 Event and task: show timezone information.
First steps towards #29.
6 years ago
Tom Hacohen 172cc4ce53 Task: rename the completed property to finished and include cancelled. 6 years ago
Tom Hacohen 66d95216f7 Add support for editing a task's status. 6 years ago
Tom Hacohen a32e2c9019 Event and task description: show the text preformatted.
We previously had it in a div, which was dropping newlines.
6 years ago
Tom Hacohen 47c259d803 Improve task viewing. 6 years ago
Tom Hacohen c2d4027e13 Move event date formatting function to a shared place. 6 years ago
Tom Hacohen 4db3b24743 Add task edit support. 6 years ago
Tom Hacohen 09ddfe8be8 Event: fix date calculation to account for exact same dates. 6 years ago
Tom Hacohen 82434cec2c Fix exception by moving to the better props type declaration.
Seems like a regression with React (or a deprecation?) as it used to
work. Though the separate interface style is better and works better
with typescript anyway.
6 years ago
Tom Hacohen 2fd674a456 Add support for tasks. 6 years ago
Tom Hacohen d11180fed6 Fix material ui depracations. 6 years ago
Tom Hacohen e4de0605f9 Fix all the issues that came with switching to react scripts 6 years ago
Tom Hacohen 8f13da7a39 Remove the secondary header and update the appbar instead. 6 years ago
Tom Hacohen cf435118d4 Secondary header: add support for more than just text. 6 years ago
Tom Hacohen 51e436be2e Remove the hacky getPalette function and use the theme instead. 6 years ago
Tom Hacohen a9b6978ae5 Add basic support for viewing tasks. 6 years ago
Tom Hacohen 7d5bbd5742 Allow non-email usernames when using own server
Fixes #19

Co-authored-by: Nemanja Nedeljković <nemanjan00@gmail.com>
6 years ago
Tom Hacohen e697d3d276 Make it clearer that the first encryption password entered sets it.
Fixes #26
6 years ago
Tom Hacohen e3e4a5288a Event edit: fix wording in confirmation dialog (contact -> event).
Fixes #27.
6 years ago
Tom Hacohen f4fab17fb9 Don't show recurring warning for non recurring events. 6 years ago
Tom Hacohen 493343dd92 Contact edit: fix default type for jabber. 6 years ago
Tom Hacohen 4d386f5a0a Contact edit: fix changing subfield types. 6 years ago
Tom Hacohen 31bb36187a Contact edit: improve design a bit. 6 years ago
Tom Hacohen edc662b7c0 Contact/event: fix creating items on non-default journals.
Fixes #22
6 years ago
Tom Hacohen c1d446551b Event Edit: upgrade material-ui. 6 years ago
Tom Hacohen 6a0b94fa0e Contact edit: upgrade material-ui. 6 years ago
Tom Hacohen 40ad15673d Searchable addressbook: upgrade material-ui. 6 years ago
Tom Hacohen a936ef2b64 Journal entries: upgrade material-ui. 6 years ago
Tom Hacohen 505795c711 Address book: upgrade material-ui. 6 years ago
Tom Hacohen 08bb517ef1 Login form: upgrade material-ui. 6 years ago
Tom Hacohen 5cdf5d5563 Contact: upgrade material-ui. 6 years ago
Tom Hacohen 0a9d4f8a10 Calendar: implement basic recurrence support.
At the moment it only shows recurrence in the calendar. You can't edit
specific instances, only the whole series (the first event). You can't
event edit the rrule at the moment. It's view only (mostly).

While this is not much, this is already a major boost to the usability
of etesync web.

Fixes #15.
6 years ago
Tom Hacohen 563f718597 Fix contact's birthday and anniversary date presentation. 6 years ago
Tom Hacohen e0ec5ee6c8 Encryption password login: add autofocus. 6 years ago
Tom Hacohen f828e3d290 Upgrade material-ui and start migrating to it. 6 years ago
Tom Hacohen ae26e34eb4 Update react, typescript recompose and etc. 6 years ago
Tom Hacohen 01b9921b2a Purge cache in case of an integrity error and show a nicer message. 6 years ago
Tom Hacohen 811f795304 Add an ugly fragile hack to make the calendar fill the vertical space.
This is very fragile, but at least if it breaks it falls back to the
previous behaviour so it's not the end of the world if it does.

Fixes #16.
6 years ago
Tom Hacohen 94214c9617 Calendar: fix switching back to months view when going back to calendar
Currently we preserve the watched date, so it's preserved when going
back to a calendar page. Now we also preserve the view.

Fixes #10
7 years ago
Tom Hacohen 71f7df252a Fix event editing.
It was crashing due to 7917b1fbe1.
7 years ago
Tom Hacohen 4c441de728 Calendar: Fix navigating of month view (workaround big-calendar bug)
This is a workaround for:
https://github.com/intljusticemission/react-big-calendar/issues/718
7 years ago
Tom Hacohen 56c12012fe Types: update react-big-calendar types. 7 years ago
Tom Hacohen 7917b1fbe1 Calendar: Implement clicking on a time slot to add an event
You can now click (or select) a time slot to create an event that is
automatically populated with the selected times.

Fixes #8
7 years ago
Tom Hacohen d09895c655 Event edit: remove the word Date from the datetime placeholder.
It was confusing users who thought this was only a date picker. This makes
it more generic.
7 years ago
Tom Hacohen ed64bff3da Switch to react-datetime for the date time picker
The reason for that is because not all browsers support input
type=date/time
7 years ago
Tom Hacohen 56a28bf9c8 Fix the type of the DateTimePicker's change callback. 7 years ago
Tom Hacohen b0cae39814 Add a widget to present errors nicely. 7 years ago