From 47dc6da58270107dca91be1962114aabedca2aa9 Mon Sep 17 00:00:00 2001 From: Aevann Date: Mon, 23 Jan 2023 14:00:04 +0200 Subject: [PATCH] allow pasting images in initial modmail and DMs --- files/assets/js/comments_v.js | 9 +++++++++ files/assets/js/contact.js | 19 +++++++++++++++++++ files/templates/contact.html | 2 ++ 3 files changed, 30 insertions(+) create mode 100644 files/assets/js/contact.js diff --git a/files/assets/js/comments_v.js b/files/assets/js/comments_v.js index e869f09fc..7d8c3fdab 100644 --- a/files/assets/js/comments_v.js +++ b/files/assets/js/comments_v.js @@ -307,6 +307,15 @@ document.onpaste = function(event) { f.files = files; document.getElementById('filename-show-edit-' + id).textContent = filename; } + else if (focused.id == "input-message") { + f=document.getElementById('file-upload'); + let filename = '' + for (const file of files) + filename += file.name + ', ' + filename = filename.toLowerCase().slice(0, -2) + f.files = files; + document.getElementById('filename').textContent = filename; + } } function handle_action(type, cid, thing) { diff --git a/files/assets/js/contact.js b/files/assets/js/contact.js new file mode 100644 index 000000000..8c1aef042 --- /dev/null +++ b/files/assets/js/contact.js @@ -0,0 +1,19 @@ +document.onpaste = function(event) { + const files = structuredClone(event.clipboardData.files); + + if (files.length > 4) + { + alert("You can't upload more than 4 files at one time!") + return + } + + if (!files.length) return + + const f = document.getElementById('file-upload'); + let filename = '' + for (const file of files) + filename += file.name + ', ' + filename = filename.toLowerCase().slice(0, -2) + f.files = files; + document.getElementById('filename').textContent = filename; +} diff --git a/files/templates/contact.html b/files/templates/contact.html index 97798a218..d0e163d20 100644 --- a/files/templates/contact.html +++ b/files/templates/contact.html @@ -23,6 +23,8 @@

Warrant Canary has been moved to Monthly Website Stats Posts.

+ + {% include "modals/emoji.html" %} {% else %}

by email: {{EMAIL}}