diff --git a/resources/views/equipment/create.blade.php b/resources/views/equipment/create.blade.php
index c74618f8..83a63774 100644
--- a/resources/views/equipment/create.blade.php
+++ b/resources/views/equipment/create.blade.php
@@ -161,6 +161,7 @@ class="border-2 border-dashed border-gray-300 rounded-lg p-6 text-center cursor-
클릭하거나 파일을 드래그하세요
+ Ctrl+V로 클립보드 이미지 붙여넣기 가능
@@ -239,6 +240,24 @@ class="bg-gray-200 hover:bg-gray-300 text-gray-800 px-6 py-2 rounded-lg transiti
});
photoInput.addEventListener('change', (e) => { if (e.target.files.length) uploadPhotos(e.target.files); });
+ // Ctrl+V 클립보드 이미지 붙여넣기
+ document.addEventListener('paste', (e) => {
+ if (!createdEquipmentId) return;
+ const items = e.clipboardData?.items;
+ if (!items) return;
+ const imageFiles = [];
+ for (const item of items) {
+ if (item.type.startsWith('image/')) {
+ const file = item.getAsFile();
+ if (file) imageFiles.push(file);
+ }
+ }
+ if (imageFiles.length > 0) {
+ e.preventDefault();
+ uploadPhotos(imageFiles);
+ }
+ });
+
function uploadPhotos(files) {
if (!createdEquipmentId) return;
const formData = new FormData();
diff --git a/resources/views/equipment/edit.blade.php b/resources/views/equipment/edit.blade.php
index 1ee9ee84..d6b2a86d 100644
--- a/resources/views/equipment/edit.blade.php
+++ b/resources/views/equipment/edit.blade.php
@@ -169,6 +169,7 @@ class="border-2 border-dashed border-gray-300 rounded-lg p-6 text-center cursor-
클릭하거나 파일을 드래그하세요
+
Ctrl+V로 클립보드 이미지 붙여넣기 가능
@@ -274,6 +275,23 @@ function loadPhotos() {
});
photoInput.addEventListener('change', (e) => { if (e.target.files.length) uploadPhotos(e.target.files); });
+ // Ctrl+V 클립보드 이미지 붙여넣기
+ document.addEventListener('paste', (e) => {
+ const items = e.clipboardData?.items;
+ if (!items) return;
+ const imageFiles = [];
+ for (const item of items) {
+ if (item.type.startsWith('image/')) {
+ const file = item.getAsFile();
+ if (file) imageFiles.push(file);
+ }
+ }
+ if (imageFiles.length > 0) {
+ e.preventDefault();
+ uploadPhotos(imageFiles);
+ }
+ });
+
function uploadPhotos(files) {
const formData = new FormData();
for (let f of files) formData.append('photos[]', f);