diff --git a/caldav_sync/README.rst b/caldav_sync/README.rst new file mode 100644 index 0000000..0e77a37 --- /dev/null +++ b/caldav_sync/README.rst @@ -0,0 +1,52 @@ +CalDAV Synchronization +====================== + +Bemade Inc. + +Copyright (C) 2023-June Bemade Inc. (). +Author: Marc Durepos (Contact : mdurepos@durpro.com) + +This program is under the terms of the GNU Lesser General Public License (LGPL-3) +For details, visit https://www.gnu.org/licenses/lgpl-3.0.en.html + +Overview +-------- + +The CalDAV Synchronization module for Odoo allows users to synchronize their calendar events with CalDAV servers. This enables seamless integration of Odoo calendar with external applications like Apple Calendar or Thunderbird. + +Features +-------- + +- Synchronize Odoo calendar events with CalDAV servers. +- Create, update, and delete events in Odoo and reflect changes on the CalDAV server. +- Poll CalDAV server for changes and update Odoo calendar accordingly. +- Allow users to select which calendar to synchronize with on the CalDAV server. + +Configuration +------------- + +1. Install the module in Odoo. +2. Go to the User settings in Odoo. +3. Enter the CalDAV server URL, username, and password. +4. Fetch the available calendars from the CalDAV server and select the one to synchronize with. + +Usage +----- + +1. Create a calendar event in Odoo and it will be synchronized with the selected CalDAV calendar. +2. Update the event in Odoo and the changes will reflect on the CalDAV server. +3. Delete the event in Odoo and it will be removed from the CalDAV server. +4. Changes made to the calendar on the CalDAV server will be polled and updated in Odoo. + +Technical Details +----------------- + +- The module extends the `calendar.event` model to add CalDAV synchronization functionality. +- It uses the `icalendar` library to format events and the `caldav` library to interact with CalDAV servers. +- Polling for changes on the CalDAV server can be triggered manually or set up as a scheduled job in Odoo. + +License +------- + +This program is under the terms of the GNU Lesser General Public License (LGPL-3) +For details, visit https://www.gnu.org/licenses/lgpl-3.0.en.html diff --git a/caldav_sync/__init__.py b/caldav_sync/__init__.py index 3b38916..a0fdc10 100644 --- a/caldav_sync/__init__.py +++ b/caldav_sync/__init__.py @@ -1,3 +1,2 @@ # -*- coding: utf-8 -*- from . import models -from . import controllers diff --git a/caldav_sync/__manifest__.py b/caldav_sync/__manifest__.py index b1cf7d1..5e84d78 100644 --- a/caldav_sync/__manifest__.py +++ b/caldav_sync/__manifest__.py @@ -1,4 +1,3 @@ -# # Bemade Inc. # # Copyright (C) 2023-June Bemade Inc. (). @@ -8,22 +7,25 @@ # For details, visit https://www.gnu.org/licenses/lgpl-3.0.en.html { - 'name': 'CalDAV Sync', - 'version': '1.0', - 'category': 'Calendar', - 'summary': 'Synchronize Odoo Calendar with a CalDAV Server', - 'description': """ - This module allows Odoo to synchronize calendar events with a CalDAV server. - """, - 'author': 'Your Name', + 'name': 'CalDAV Synchronization', + 'version': '17.0.0.2.0', 'license': 'LGPL-3', + 'category': 'Productivity', + 'summary': 'Synchronize Odoo Calendar Events with CalDAV Servers', + 'description': """ + This module allows Odoo to synchronize calendar events with CalDAV servers. + Users can synchronize their Odoo calendar with external applications like + Apple Calendar or Thunderbird using CalDAV protocol. + """, + 'author': 'Bemade Inc.', + 'website': 'https://www.bemade.org', 'depends': ['base', 'calendar'], - 'external_dependencies': { - 'python': ['caldav'], - }, 'data': [ + 'security/ir.model.access.csv', + 'views/res_users_views.xml', 'data/caldav_sync_data.xml', ], 'installable': True, 'application': True, + 'auto_install': False, } diff --git a/caldav_sync/static/description/icon.png b/caldav_sync/static/description/icon.png new file mode 100644 index 0000000..2da8757 Binary files /dev/null and b/caldav_sync/static/description/icon.png differ