Skip to content

Commit 1529a40

Browse files
committed
Merge remote-tracking branch 'origin/main' into dev
2 parents 438ff6e + 6b2ec11 commit 1529a40

3 files changed

Lines changed: 622 additions & 1 deletion

File tree

src/Blogifier.Admin/wwwroot/admin/js/components.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,11 @@ window.commonJsFunctions = {
7373
loadEditor: function (toolbar) {
7474
autosize(document.querySelectorAll('.autosize'));
7575
easymde = getEditor(toolbar);
76+
easymde.codemirror.on("paste", function(self,event)
77+
{
78+
_editor = easymde;
79+
fileManager.clipBoardUpload(event)
80+
});
7681
window.onscroll = function () { stickyToolbar(toolbar) };
7782
editorToolbarTooltip();
7883
},

src/Blogifier.Admin/wwwroot/admin/js/fileManager.js

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,48 @@ let fileManager = function (dataService) {
2323
dataService.upload(url, data, callBack, fail);
2424
}
2525

26+
function clipBoardUpload(ClipboardEvent)
27+
{
28+
let file = getPasteFile(ClipboardEvent);
29+
30+
if (file === null)
31+
return
32+
33+
uplType = "PostImage";
34+
let url = `api/storage/upload/${uplType}`;
35+
let data = new FormData();
36+
data.append('file', file, `${Date.now()}.png`);
37+
dataService.upload(url, data, (arg)=>{insertImgCallback(arg)}, fail);
38+
}
39+
40+
function getPasteFile(ClipboardEvent)
41+
{
42+
const data = ClipboardEvent.clipboardData;
43+
if(data == null)
44+
{
45+
return null;
46+
}
47+
48+
if(data.items.length === 0)
49+
{
50+
return null;
51+
}
52+
53+
const item = data.items[0];
54+
55+
if(item.kind === 'string')
56+
{
57+
return null;
58+
}
59+
60+
const file = item.getAsFile();
61+
62+
if (file.type.indexOf("image") === -1)
63+
return null
64+
65+
return file;
66+
}
67+
2668
function appCoverCallback(data) {
2769
let defaultCover = document.getElementById('defaultCover');
2870
defaultCover.value = data;
@@ -73,6 +115,7 @@ let fileManager = function (dataService) {
73115

74116
return {
75117
uploadClick: uploadClick,
76-
uploadSubmit: uploadSubmit
118+
uploadSubmit: uploadSubmit,
119+
clipBoardUpload:clipBoardUpload,
77120
};
78121
}(DataService);

0 commit comments

Comments
 (0)