summaryrefslogtreecommitdiff
path: root/addons/google_account
diff options
context:
space:
mode:
authorChristophe Simonis <chs@odoo.com>2019-06-27 18:01:07 +0200
committerChristophe Simonis <chs@odoo.com>2019-06-27 18:01:07 +0200
commit465909f0fde4d02b101d35c61bab8f0dea20f003 (patch)
tree99774aad119bf339ab9e548577bff7b3bc5c186e /addons/google_account
parentcd8afe8546378130a36cca6f5e0f7cd3198ecad9 (diff)
parentcd21c016b0652f2fc36a33690f676ba6e2f113f1 (diff)
[MERGE] forward port branch 12.0 up to cd21c016b06
Diffstat (limited to 'addons/google_account')
-rw-r--r--addons/google_account/models/google_service.py22
1 files changed, 17 insertions, 5 deletions
diff --git a/addons/google_account/models/google_service.py b/addons/google_account/models/google_service.py
index fb9213f96b2..aa3040d7947 100644
--- a/addons/google_account/models/google_service.py
+++ b/addons/google_account/models/google_service.py
@@ -189,12 +189,24 @@ class GoogleService(models.TransientModel):
status = error.response.status_code
response = ""
else:
- req = json.loads(error.request.body or 'null')
- res = error.response.json()
- _logger.exception("Error while requesting Google Services\nRequest:\n%s\nResponse:\n%s", pformat(req), pformat(res))
+ try:
+ exception_req = pformat(json.loads(error.request.body))
+ except:
+ exception_req = error.request.body
+
+ try:
+ exception_res = pformat(error.response.json())
+ error_msg = _("Error while requesting Google Services: %s") % res['error']['message']
+ warning_msg = _("Something went wrong with your request to google: %s") % res['error']['message']
+ except:
+ exception_res = error.response.text
+ error_msg = _("Error while requesting Google Services")
+ warning_msg = _("Something went wrong with your request to google")
+
+ _logger.exception("Error while requesting Google Services\nRequest:\n%s\nResponse:\n%s", exception_req, exception_res)
if error.response.status_code in (400, 401, 410):
- raise UserError(_("Error while requesting Google Services: %s") % res['error']['message'])
- raise self.env['res.config.settings'].get_config_warning(_("Something went wrong with your request to google: %s") % res['error']['message'])
+ raise UserError(error_msg)
+ raise self.env['res.config.settings'].get_config_warning(warning_msg)
return (status, response, ask_time)
# TODO : remove me, it is only used in google calendar. Make google_calendar use the constants