diff options
| author | Jairo Llopis <yajo.sk8@gmail.com> | 2019-09-27 14:48:39 +0000 |
|---|---|---|
| committer | fw-bot <otis@odoo.com> | 2019-09-27 17:14:07 +0000 |
| commit | e5f673087b281f9d74cd1d4960d0d9115711b714 (patch) | |
| tree | aea0b4274a35a0ae9d4d164141c535abbf03e797 /addons/web/static/tests/fields/basic_fields_tests.js | |
| parent | 3d4060f7568a061db596fbc1fd9925e3924a79e5 (diff) | |
[FIX] mail: Support nameless attachments
`ir.attachment` records do not require to have a filename set.
In `AttachmentBox`, a filename is always set, although in case it's missing it was untranslated. I fixed that.
In cases where `AttachmentBox` is not used but its underlying templates are rendered using other means, a user could get a client-side error like this one when browsing a record that had an attachment without filename:
<details><summary>Error</summary>
```
Error:
TypeError: dict.attachment.filename.split is not a function
https://www.tecnativa.com/web/static/lib/qweb/qweb2.js line 469 > Function:26
Rastreo de error:
anonymous@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js line 469 > Function:26:45
_render@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:458:58
call@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:154:35
anonymous/<@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js line 469 > Function:340:33
foreach@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:180:25
anonymous@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js line 469 > Function:338:25
_render@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:458:58
call@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:154:35
anonymous/<@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js line 469 > Function:27:31
foreach@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:180:25
anonymous@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js line 469 > Function:11:23
_render@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:458:58
render@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:450:26
_render@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:480:29
call@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:154:35
anonymous@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js line 469 > Function:20:30
_render@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:458:58
render@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:450:26
_render@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:480:29
call@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:154:35
anonymous@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js line 469 > Function:15:31
_render@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:458:58
render@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:450:26
_render@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:480:29
call@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:154:35
anonymous@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js line 469 > Function:11:31
_render@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:458:58
render@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:450:26
_render@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:480:29
render@https://www.tecnativa.com/web/static/lib/qweb/qweb2.js:450:26
render@https://www.tecnativa.com/mail/static/src/js/thread_widget.js:183:28
_fetchAndRenderThread/<@https://www.tecnativa.com/mail/static/src/js/thread_field.js:124:36
then/</</<@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3276:89
fire@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3119:58
fireWith@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3231:49
Deferred/</deferred[tuple[0]]@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3321:62
then/</</<@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3276:89
fire@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3119:58
fireWith@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3231:49
then/</</<@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3283:104
fire@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3119:58
fireWith@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3231:49
Deferred/</deferred[tuple[0]]@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3321:62
fire@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3119:58
fireWith@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3231:49
then/</</<@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3283:104
fire@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3119:58
fireWith@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3231:49
Deferred/</deferred[tuple[0]]@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3321:62
rpc/<@https://www.tecnativa.com/web/static/src/js/services/ajax_service.js:16:29
then/</</<@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3276:89
fire@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3119:58
fireWith@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3231:49
Deferred/</deferred[tuple[0]]@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3321:62
fire@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3119:58
fireWith@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3231:49
Deferred/</deferred[tuple[0]]@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3321:62
genericJsonRpc/<@https://www.tecnativa.com/web/static/src/js/core/ajax.js:65:18
then/</</<@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3276:89
fire@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3119:58
fireWith@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3231:49
then/</</<@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3283:104
fire@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3119:58
fireWith@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:3231:49
done@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:9275:42
callback@https://www.tecnativa.com/web/static/lib/jquery/jquery.js:9685:57
```
The error is produced when trying to render this line: https://github.com/odoo/odoo/blob/66c5053a3d1f8cb456929453a62869c95eccf86a/addons/mail/static/src/xml/thread.xml#L506
</details>
This patch ensures all attachment has a filename, and fixes that problem.
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
@Tecnativa TT19555
closes odoo/odoo#37546
Forward-port-of: odoo/odoo#37253
X-original-commit: ebba3c9fa709dccf4cab91e9f37aa3eaa24c7d21
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Diffstat (limited to 'addons/web/static/tests/fields/basic_fields_tests.js')
0 files changed, 0 insertions, 0 deletions
