Compare commits
1 Commits
14.0-add-o
...
14.0-googl
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d4272eff9c |
1
google_calendar_usability/__init__.py
Normal file
1
google_calendar_usability/__init__.py
Normal file
@@ -0,0 +1 @@
|
|||||||
|
from . import models
|
||||||
16
google_calendar_usability/__manifest__.py
Normal file
16
google_calendar_usability/__manifest__.py
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
# Copyright 2021 Akretion (http://www.akretion.com)
|
||||||
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||||
|
{
|
||||||
|
"name": "Google Calendar Usability",
|
||||||
|
"version": "14.0.1.0.0",
|
||||||
|
"category": "Productivity",
|
||||||
|
"description": "Removes displaying credentials from the general settings view, "
|
||||||
|
"prevents deleting calendar events",
|
||||||
|
"depends": ["google_calendar"],
|
||||||
|
"data": [
|
||||||
|
"views/res_config_settings_views.xml",
|
||||||
|
],
|
||||||
|
"demo": [],
|
||||||
|
"installable": True,
|
||||||
|
"auto_install": False,
|
||||||
|
}
|
||||||
2
google_calendar_usability/models/__init__.py
Normal file
2
google_calendar_usability/models/__init__.py
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
from . import res_config_settings
|
||||||
|
from . import calendar
|
||||||
15
google_calendar_usability/models/calendar.py
Normal file
15
google_calendar_usability/models/calendar.py
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
# Copyright 2021 Akretion (http://www.akretion.com)
|
||||||
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||||
|
|
||||||
|
from odoo import models
|
||||||
|
|
||||||
|
|
||||||
|
class Meeting(models.Model):
|
||||||
|
_inherit = "calendar.event"
|
||||||
|
|
||||||
|
def unlink(self):
|
||||||
|
to_archive = self.filtered(lambda r: r.google_id and r.active)
|
||||||
|
if to_archive:
|
||||||
|
to_archive.write({"active": False})
|
||||||
|
to_unlink = self - to_archive
|
||||||
|
super(Meeting, to_unlink).unlink()
|
||||||
32
google_calendar_usability/models/res_config_settings.py
Normal file
32
google_calendar_usability/models/res_config_settings.py
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
# Copyright 2021 Akretion (http://www.akretion.com)
|
||||||
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||||
|
|
||||||
|
from odoo import fields, models
|
||||||
|
|
||||||
|
|
||||||
|
class ResConfigSettings(models.TransientModel):
|
||||||
|
_inherit = "res.config.settings"
|
||||||
|
|
||||||
|
dummy_cal_client_id = fields.Char(
|
||||||
|
"Client_id",
|
||||||
|
compute="_compute_dummy_gcal_credentials",
|
||||||
|
inverse="_inverse_dummy_cal_client_id",
|
||||||
|
)
|
||||||
|
dummy_cal_client_secret = fields.Char(
|
||||||
|
"Client_key",
|
||||||
|
compute="_compute_dummy_gcal_credentials",
|
||||||
|
inverse="_inverse_dummy_cal_client_secret",
|
||||||
|
)
|
||||||
|
|
||||||
|
def _compute_dummy_gcal_credentials(self):
|
||||||
|
for rec in self:
|
||||||
|
rec.dummy_cal_client_id = ""
|
||||||
|
rec.dummy_cal_client_secret = ""
|
||||||
|
|
||||||
|
def _inverse_dummy_cal_client_id(self):
|
||||||
|
for rec in self:
|
||||||
|
rec.cal_client_id = rec.dummy_cal_client_id
|
||||||
|
|
||||||
|
def _inverse_dummy_cal_client_secret(self):
|
||||||
|
for rec in self:
|
||||||
|
rec.cal_client_secret = rec.dummy_cal_client_secret
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<odoo>
|
||||||
|
|
||||||
|
<record id="res_config_settings_view_form" model="ir.ui.view">
|
||||||
|
<field name="model">res.config.settings</field>
|
||||||
|
<field name="inherit_id" ref="base_setup.res_config_settings_view_form"/>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<xpath expr="//field[@name='cal_client_id']" position="replace">
|
||||||
|
<field name="dummy_cal_client_id" nolabel="1"/>
|
||||||
|
</xpath>
|
||||||
|
<xpath expr="//label[@for='cal_client_id']" position="replace">
|
||||||
|
<label for="dummy_cal_client_id" string="Client ID" class="col-3 col-lg-3 o_light_label"/>
|
||||||
|
</xpath>
|
||||||
|
<xpath expr="//field[@name='cal_client_secret']" position="replace">
|
||||||
|
<field name="dummy_cal_client_secret" nolabel="1"/>
|
||||||
|
</xpath>
|
||||||
|
<xpath expr="//label[@for='cal_client_secret']" position="replace">
|
||||||
|
<label for="dummy_cal_client_secret" string="Client Secret" class="col-3 col-lg-3 o_light_label"/>
|
||||||
|
</xpath>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
</odoo>
|
||||||
|
|
||||||
Reference in New Issue
Block a user