From b15fd961085d987157ea15001a0b8e504c7a4dc7 Mon Sep 17 00:00:00 2001 From: Ahtisham Shahid Date: Fri, 5 Aug 2022 15:06:38 +0500 Subject: [PATCH] feat: added image upload size limit (#233) * feat: added image upload size limit --- src/components/TinyMCEEditor.jsx | 6 ++++++ src/data/constants.js | 2 ++ 2 files changed, 8 insertions(+) diff --git a/src/components/TinyMCEEditor.jsx b/src/components/TinyMCEEditor.jsx index f1937eac..3b935a82 100644 --- a/src/components/TinyMCEEditor.jsx +++ b/src/components/TinyMCEEditor.jsx @@ -6,6 +6,7 @@ import { useParams } from 'react-router'; // eslint-disable-next-line no-unused-vars,import/no-extraneous-dependencies import tinymce from 'tinymce/tinymce'; +import { MAX_UPLOAD_FILE_SIZE } from '../data/constants'; import { uploadFile } from '../discussions/posts/data/api'; import 'tinymce/plugins/code'; @@ -60,6 +61,11 @@ export default function TinyMCEEditor(props) { const uploadHandler = async (blobInfo, success, failure) => { try { const blob = blobInfo.blob(); + const imageSize = blobInfo.blob().size / 1024; + if (imageSize > MAX_UPLOAD_FILE_SIZE) { + failure(`Images size should not exceed ${MAX_UPLOAD_FILE_SIZE} KB`); + return; + } const filename = blobInfo.filename(); const { location } = await uploadFile(blob, filename, courseId, postId || 'root'); success(location); diff --git a/src/data/constants.js b/src/data/constants.js index 34726da3..ea4e0b54 100644 --- a/src/data/constants.js +++ b/src/data/constants.js @@ -206,3 +206,5 @@ export const ALL_ROUTES = [] .concat([Routes.POSTS.ALL_POSTS, Routes.POSTS.MY_POSTS]) .concat([Routes.LEARNERS.POSTS, Routes.LEARNERS.PATH]) .concat([Routes.DISCUSSIONS.PATH]); + +export const MAX_UPLOAD_FILE_SIZE = 1024;