TIP: You can type at any time to perform a new search.
Readonly publishing of calendars
base_ical · OCA/server-backend
- Repository
- OCA/server-backend · module folder · Try on Runboat
- Module version
- 1.0.0
- Category
- Tools
- Folder size
- 0.09 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/server-backend
- Last tracking update
- 2026-08-07 08:43:03
- Authors
- Odoo Community Association (OCA), Hunki Enterprises BV
- Maintainers
- Odoo Community Association (OCA), Hunki Enterprises BV
- Committers
- Holger Brunn, Weblate, OCA-git-bot, oca-ci
- Odoo dependencies
- Python dependencies
- vobject
- System dependencies
- None
- Required by
- None
- Description
This module allows administrators to configure iCalendars based on an arbitrary selection on arbitrary models. Users can selectively subscribe to them by enabling them in their profile form. This is useful for exposing Odoo data to calendaring application like Nextcloud.
Code Analysis ⓘ
Views touched (5)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
view_base_ical_form |
base.ical | form | New | |
view_base_ical_tree |
base.ical | list | New | |
view_icalendar_url_description_form |
iCalendar: Show Url | base.ical.url.description | form | New |
view_icalendar_url_show_form |
iCalendar: Show Url | base.ical.url.show | form | New |
view_res_users_form |
res.users | form | Inherits base.view_users_form_simple_modif |
HTTP endpoints (1)
| Route(s) | Handler | Auth | Type | Methods | Flags |
|---|---|---|---|---|---|
/base_ical/<int:calendar_id> |
ICalController.get_ical |
none | http | GET | csrf off |
Models touched (4)
New fields (17)
-
activeBooleandefault=True -
allowed_users_idsMany2many → res.usersargs: 'res.users' -
autoBooleancopy=Falsehelp='If you check this, the calendar will be enabled for all current and future users. Note that unchecking this will not disable existing calendar subscriptions' args: 'Allow automatically' -
auto_group_idsMany2many → res.groupsdefault=<expr>help='Only users of selected groups will be auto-allowed. Leave empty for all users'relation='base_ical_auto_groups_rel'string='Groups' args: 'res.groups' -
codeText -
domainChardefault='[]'help='You can use variables `env` and `user` here'required=True -
expression_dtendCharhelp='You can use variables `record` and `user` here'string='DTEND'vevent_field='dtend' -
expression_dtstampChardefault='record.write_date'help='You can use variables `record` and `user` here'string='DTSTAMP'vevent_field='dtstamp' -
expression_dtstartCharhelp='You can use variables `record` and `user` here'string='DTSTART'vevent_field='dtstart' -
expression_summaryChardefault='record.display_name'help='You can use variables `record` and `user` here'string='SUMMARY'vevent_field='summary' -
expression_uidCharhelp='You can use variables `record` and `user` here'string='UID'vevent_field='uid' -
help_textHtmlcompute='_compute_help' -
modeSelectiondefault='simple'required=True args: '_get_operating_modes' -
modelCharrelated='model_id.model' args: 'Model Name' -
model_idMany2one → ir.modelondelete='cascade'required=True args: 'ir.model' -
nameCharrequired=Truetranslate=True -
previewTextcompute='_compute_preview'
-
action_new_url(self)Create or activate current user's token -
create(self, vals_list)@api.model_create_multiEnable calendar for all users if auto flag is checked -
default_variables(self) -
write(self, vals)Enable calendar for all users if auto flag is checked
New fields (2)
-
calendar_idMany2one → base.icalrequired=True args: 'base.ical' -
nameCharrequired=True args: 'Description'
-
make_url(self)@check_identity
New fields (2)
-
idId -
urlCharreadonly=True
No public methods.
New fields (1)
-
ical_idsOne2many → base.icalcompute='_compute_ical_ids' args: 'base.ical'
-
SELF_READABLE_FIELDS(self)@property -
create(self, vals_list)@api.model_create_multi
Loading…