Commit graph

73 commits

Author SHA1 Message Date
Ferdinand Thiessen
62c4ae78df Feature: Provide access to app generated calendars through CalDAV
This adds CalDAV support for app generated calendars,
which are registered to the nextcloud core.
This is done by adding a dav plugin which wraps
all ICalendarProviders into a Sabre plugin (inspired by the deck app).

Add unit test for AppCalendar wrapper plugin and calendar object implementation.

Signed-off-by: Ferdinand Thiessen <rpm@fthiessen.de>
2023-04-25 18:11:49 +02:00
Joas Schilling
251f450df6
User status automation background job
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-07-01 12:32:07 +02:00
Carl Schwan
a9cfa72d1c Summer cleanup of the federation app
- Use IEventDispatcher instead of deprecated symfony dispatcher
- Use LoggerInterface where possible
- Use php 7.4 properties
- Add type hinting where possible
- Move federation hooks to a seperate listener

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-06-24 15:39:52 +02:00
Thomas Citharel
39ef0500d1
Handle the move operation properly between shared calendars
- Introduce a new CalendarObjectMovedEvent typed event dedicated for
  this operation
- Handle the event in the activity backend and add new appropriate activity subjects

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-06-14 14:40:24 +02:00
Thomas Citharel
4bb31c021e
Remove all legacy event dispatchers from CalDAV & CardDAV backends
Move them to proper EventListeners and test them

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-05-17 15:09:46 +02:00
Côme Chilliet
e2531f8503
Migrate dav application from ILogger to LoggerInterface
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-05-02 10:52:43 +02:00
Christopher Ng
38d4c5290b Contacts export and import
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2022-03-30 18:28:49 +00:00
Christopher Ng
302a67f685 Integrate migrator
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2022-03-02 01:59:15 +00:00
Thomas Citharel
9347fc188a
Fix cleaning reminders after subscription purge
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-02-21 11:36:09 +01:00
Thomas Citharel
22f8c42f06
Clean reminders for calendar when deleting a subscription
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-02-15 10:15:46 +01:00
Christoph Wurst
b193f854d1
Register missing DAV app calendar provider
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-10-28 18:33:13 +02:00
John Molakvoæ (skjnldsv)
215aef3cbd
Update php licenses
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-06-04 22:02:41 +02:00
Christoph Wurst
d6d8e9215c
Add a trashbin for calendars and calendar objects
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-05-31 07:49:19 +02:00
Joas Schilling
6fff0b81fe
Add activities for creating, updating and deleting contacts
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-05-21 15:08:35 +02:00
Joas Schilling
2496f83463
Add activities for addressbook management
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-05-21 15:08:35 +02:00
Christoph Wurst
cebe951b8e
Remove the untyped calendar update event
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-05-07 17:09:37 +02:00
Christoph Wurst
884e34b12a
Remove the untyped calendar create event
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-05-07 16:58:33 +02:00
Christoph Wurst
257613e6ef
Remove the \OCA\DAV\CalDAV\CalDavBackend::createCalendarObject event
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-05-07 12:13:45 +02:00
Christoph Wurst
f808267949
Remove the \OCA\DAV\CalDAV\CalDavBackend::updateCalendarObject event
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-05-07 12:10:58 +02:00
Christoph Wurst
d512a5629e
Remove the \OCA\DAV\CalDAV\CalDavBackend::deleteCalendarObject event
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-05-07 10:53:45 +02:00
Christoph Wurst
63eb3694e4
Exclusively use the typed calendar deletion events for DAV
We had both in places, but the old one isn't used anywhere outside this
app, so it's time to migrate the code.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-04-29 15:31:19 +02:00
Roeland Jago Douma
0593b039fc Move over notification to new registration
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-04-16 13:56:28 +02:00
dependabot-preview[bot]
eb502c02ff
Bump nextcloud/coding-standard from 0.3.0 to 0.5.0
Bumps [nextcloud/coding-standard](https://github.com/nextcloud/coding-standard) from 0.3.0 to 0.5.0.
- [Release notes](https://github.com/nextcloud/coding-standard/releases)
- [Changelog](https://github.com/nextcloud/coding-standard/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/coding-standard/compare/v0.3.0...v0.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-18 13:31:24 +01:00
Roeland Jago Douma
e62790cfe2 Add some closure return types
Found by psalm

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-02-14 12:43:31 +01:00
Christoph Wurst
689e2a0838
Emit an interaction event for calendar event user attendees
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-03 12:16:57 +01:00
Christoph Wurst
0da1999a3b
Emit an interaction event for calendar share recipients
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-03 12:16:57 +01:00
Georg Ehrke
900617e7d7
Add Event and Task Backends for Unified Search
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-08-04 16:01:59 +02:00
Georg Ehrke
5fb2562332
Implement Contacts Backend for Unified Search
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2020-08-03 16:29:01 +02:00
Christoph Wurst
5005510d82
Migrate DAV to the PSR container
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-07-16 15:44:03 +02:00
Christoph Wurst
8150bcb60c
Use \OCP\IContainer::injectFn to boot the DAV app
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-07-03 14:37:53 +02:00
Christoph Wurst
1285be2bd1
Move DAV to the new bootstrap mechanism
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-06-19 15:10:20 +02:00
Christoph Wurst
cb057829f7
Update license headers for 19
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-29 11:57:22 +02:00
Thomas Citharel
0408c37b3d
Only delete the default calendar setting when the default calendar
itself is deleted

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-04-13 15:07:43 +02:00
Thomas Citharel
ebdf66b706
Provide dav setting for user's default calendar
And add tests to handle schedule-default-calendar-URL

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-04-13 15:07:42 +02:00
Christoph Wurst
28f8eb5dba
Add visibility to all constants
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 16:54:27 +02:00
Christoph Wurst
caff1023ea
Format control structures, classes, methods and function
To continue this formatting madness, here's a tiny patch that adds
unified formatting for control structures like if and loops as well as
classes, their methods and anonymous functions. This basically forces
the constructs to start on the same line. This is not exactly what PSR2
wants, but I think we can have a few exceptions with "our" style. The
starting of braces on the same line is pracrically standard for our
code.

This also removes and empty lines from method/function bodies at the
beginning and end.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 14:19:56 +02:00
Christoph Wurst
14c996d982
Use elseif instead of else if
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 10:35:09 +02:00
Christoph Wurst
afbd9c4e6e
Unify function spacing to PSR2 recommendation
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 13:54:22 +02:00
Christoph Wurst
1a9330cd69
Update the license headers for Nextcloud 19
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-31 14:52:54 +02:00
Christoph Wurst
5bf3d1bb38
Update license headers
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-05 15:38:45 +01:00
Roeland Jago Douma
68748d4f85
Some php-cs fixes
* Order the imports
* No leading slash on imports
* Empty line before namespace
* One line per import
* Empty after imports
* Emmpty line at bottom of file

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-22 20:52:10 +01:00
Georg Ehrke
bcce568c6d
Support recurring events + repeating alarms
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2019-08-15 20:03:51 +02:00
Georg Ehrke
7c4a8a3bdf
Provide a fake AudioProvider that is basically the same as PushProvider, better then not showing reminders at all for now
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2019-08-15 20:02:56 +02:00
Georg Ehrke
c5147529af
Stop using deprecated registerNotifier, use registerNotifierService instead
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2019-08-15 20:02:56 +02:00
Thomas Citharel
7bddcc091d
Support event reminders (email and notifications)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-08-15 20:02:56 +02:00
Joas Schilling
e13253c66a
"Fix" the unit tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-06 11:06:03 +01:00
John Molakvoæ (skjnldsv)
1d2d7fd60d
Log failure on parsing
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2019-01-04 20:04:13 +01:00
Tobia De Koninck
f6ef779f97
Make ContactsStore a public API
Signed-off-by: Tobia De Koninck <tobia@ledfan.be>
2017-12-11 18:18:58 +01:00
Thomas Citharel
4c32de22bb
Create activities for (un)publishing calendar events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-12-11 16:28:40 +01:00
Georg Ehrke
fa416e031b
integrate Dav app with Calendar API
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2017-11-09 15:14:58 +01:00