summaryrefslogtreecommitdiff
path: root/addons/website_forum/static/src/js
diff options
context:
space:
mode:
authorSébastien Theys <seb@odoo.com>2019-05-20 14:12:38 +0000
committerSébastien Theys <seb@odoo.com>2019-05-21 11:37:20 +0000
commit9dec7ba7e9edc905b121d2aa6f6d0922ef4121b3 (patch)
tree7c715b1336c6f854372010d24647c67dedbb483d /addons/website_forum/static/src/js
parent923701851e61755a2d0a4df6121fe9b684e13df2 (diff)
[IMP] web, *: add utils to get dataURL (base64) from file/blob
* = partner_autocomplete, point_of_sale, web_editor, website_forum, website_slides This can be used for example to preview an image from a file input field. It can also be used to send the base64 content of the input by RPC instead of having to rely on form submit as POST with multipart/form-data. Technically wrap FileReader.readAsDataURL in a Promise. This will also be used in task-1930726 PR: #33508 Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Diffstat (limited to 'addons/website_forum/static/src/js')
-rw-r--r--addons/website_forum/static/src/js/website_forum.js9
1 files changed, 4 insertions, 5 deletions
diff --git a/addons/website_forum/static/src/js/website_forum.js b/addons/website_forum/static/src/js/website_forum.js
index 8dbc482ae64..5ef38ab9a49 100644
--- a/addons/website_forum/static/src/js/website_forum.js
+++ b/addons/website_forum/static/src/js/website_forum.js
@@ -5,6 +5,7 @@ var core = require('web.core');
var Wysiwyg = require('web_editor.wysiwyg.root');
var publicWidget = require('web.public.widget');
var session = require('web.session');
+var utils = require('web.utils');
var qweb = core.qweb;
var WebsiteProfile = require('website_profile.website_profile');
@@ -231,11 +232,9 @@ publicWidget.registry.websiteForum = publicWidget.Widget.extend({
return;
}
var $form = $(ev.currentTarget).closest('form');
- var reader = new window.FileReader();
- reader.onload = function (ev) {
- $form.find('.o_forum_avatar_img').attr('src', ev.target.result);
- };
- reader.readAsDataURL(ev.currentTarget.files[0]);
+ utils.getDataURLFromFile(ev.currentTarget.files[0]).then(function (result) {
+ $form.find('.o_forum_avatar_img').attr('src', result);
+ });
$form.find('#forum_clear_image').remove();
},
/**