[REM][WIP]Radicale Odoo Storage : remove unused global admin connection
This commit is contained in:
parent
0e7b2b9ae1
commit
800cc260ed
@ -49,8 +49,6 @@ class Collection(BaseCollection):
|
|||||||
if not self.__class__.odoo:
|
if not self.__class__.odoo:
|
||||||
self.logger.error('No auth Odoo found...')
|
self.logger.error('No auth Odoo found...')
|
||||||
raise RuntimeError('No auth Odoo found')
|
raise RuntimeError('No auth Odoo found')
|
||||||
# self.__class__.odoo_connect()
|
|
||||||
# self.odoo_init()
|
|
||||||
odoo_timezone = self.configuration.get('storage', 'odoo_timezone')
|
odoo_timezone = self.configuration.get('storage', 'odoo_timezone')
|
||||||
self.__class__.server_timezone = pytz.timezone(odoo_timezone)
|
self.__class__.server_timezone = pytz.timezone(odoo_timezone)
|
||||||
|
|
||||||
@ -76,52 +74,6 @@ class Collection(BaseCollection):
|
|||||||
self.owner = attributes[0]
|
self.owner = attributes[0]
|
||||||
self.is_principal = len(attributes) == 0
|
self.is_principal = len(attributes) == 0
|
||||||
|
|
||||||
@classmethod
|
|
||||||
def odoo_connect(cls):
|
|
||||||
""" Global Odoo connection : server and admin account """
|
|
||||||
host = cls.configuration.get('storage', 'odoo_host', fallback='127.0.0.1')
|
|
||||||
port = cls.configuration.get('storage', 'odoo_port', fallback=8069)
|
|
||||||
admin = cls.configuration.get('storage', 'odoo_admin_username')
|
|
||||||
password = cls.configuration.get('storage', 'odoo_admin_password')
|
|
||||||
database = cls.configuration.get('storage', 'odoo_database')
|
|
||||||
try:
|
|
||||||
cls.odoo = ODOO(host, port=port)
|
|
||||||
except RPCError as rpcerr:
|
|
||||||
cls.logger.error(rpcerr)
|
|
||||||
raise RuntimeError(rpcerr)
|
|
||||||
try:
|
|
||||||
cls.odoo.login(database, admin, password)
|
|
||||||
cls.logger.info('Login successfull for {} on database {}'.format(admin, database))
|
|
||||||
except RPCError as rpcerr:
|
|
||||||
cls.logger.error('Login problem for {} on database {}'.format(cls, database))
|
|
||||||
cls.logger.error(rpcerr)
|
|
||||||
raise RuntimeError(rpcerr)
|
|
||||||
return True
|
|
||||||
|
|
||||||
def odoo_init(self):
|
|
||||||
""" Init Odoo collections if not found """
|
|
||||||
user_ids = self.odoo.env['res.users'].search([])
|
|
||||||
users = self.odoo.execute('res.users', 'read', user_ids, ['login', 'email'])
|
|
||||||
for user in users:
|
|
||||||
principal_path = user.get('login')
|
|
||||||
self.logger.debug('Check collections from Odoo for %s' % principal_path)
|
|
||||||
contact_path = '%s/odoo-contact' % principal_path
|
|
||||||
calendar_path = '%s/odoo-calendar' % principal_path
|
|
||||||
collections = self.discover(principal_path, depth='1')
|
|
||||||
paths = [coll.path for coll in collections]
|
|
||||||
if contact_path not in paths:
|
|
||||||
props = {'tag': 'VADDRESSBOOK',
|
|
||||||
'D:displayname': 'Odoo contacts',
|
|
||||||
'C:calendar-description': 'Contacts form your Odoo account'}
|
|
||||||
self.create_collection(contact_path, props=props)
|
|
||||||
self.logger.info('Collection creation for Odoo Sync : %s' % contact_path)
|
|
||||||
if calendar_path not in paths:
|
|
||||||
props = {'tag': 'VCALENDAR',
|
|
||||||
'D:displayname': 'Odoo calendar',
|
|
||||||
'C:calendar-description': 'Events form your Odoo calendar'}
|
|
||||||
self.create_collection(calendar_path, props=props)
|
|
||||||
self.logger.info('Collection creation for Odoo Sync : %s' % calendar_path)
|
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def odoo_date_to_utc(cls, date_obj):
|
def odoo_date_to_utc(cls, date_obj):
|
||||||
""" Transform naive Odoo date object to UTC TZ """
|
""" Transform naive Odoo date object to UTC TZ """
|
||||||
|
Loading…
x
Reference in New Issue
Block a user