Example #1
0
 def _google_delete(self, google_service: GoogleCalendarService, google_id, timeout=TIMEOUT):
     with google_calendar_token(self.env.user.sudo()) as token:
         if token:
             google_service.delete(google_id, token=token, timeout=timeout)
             # When the record has been deleted on our side, we need to delete it on google but we don't want
             # to raise an error because the record don't exists anymore.
             self.exists().need_sync = False
Example #2
0
    def reset_account(self):
        google = GoogleCalendarService(self.env['google.service'])

        events = self.env['calendar.event'].search([
            ('user_id', '=', self.user_id.id),
            ('google_id', '!=', False)])
        if self.delete_policy in ('delete_google', 'delete_both'):
            with google_calendar_token(self.user_id) as token:
                for event in events:
                    google.delete(event.google_id, token=token)

        if self.delete_policy in ('delete_odoo', 'delete_both'):
            events.google_id = False
            events.unlink()

        if self.sync_policy == 'all':
            events.write({
                'google_id': False,
                'need_sync': True,
            })

        self.user_id.google_cal_account_id._set_auth_tokens(False, False, 0)
        self.user_id.write({
            'google_calendar_sync_token': False,
            'google_calendar_cal_id': False,
        })
Example #3
0
 def _google_delete(self,
                    google_service: GoogleCalendarService,
                    google_id,
                    timeout=TIMEOUT):
     with google_calendar_token(self.env.user.sudo()) as token:
         if token:
             google_service.delete(google_id, token=token, timeout=timeout)
             self.need_sync = False