easylogic / gnuboard5-summernote

그누보드5 를 위한 Summernote 에디터 플러그인
MIT License
6 stars 1 forks source link

이미지 파일 사이즈 제한이 적용이 되지 않습니다. #4

Closed dewoweb closed 8 years ago

dewoweb commented 8 years ago

안녕하세요. 업로드 해주신 소스코드 덕분에 그누보드에 잘 적용하여 사용하고 있습니다. 테스트하던 중 문제가 있어서 질문드립니다. gnuboard5-summernote-master\summernote\ 해당 경로에 summernote.js 파일 내에서 옵션 선언 부분 중에 maximumImageFileSize: 를 지정해도 실제 이미지 업로드 팝업에서는 작동이 되지 않습니다. 원래의 섬머노트 원코드로 테스트해보니 해당 기능이 잘 적용되어 이미지가 업로드 되지않고 NULL로 처리가 됩니다. 그래서 원 섬머노트를 사용해보려하니 이건 또 이것나름대로 에디터 내에서 작성한 텍스트를 드래그할때 드래그가 되지 않는 등 몇몇 문제가 있더군요.

최근 빌드된 섬머노트 소스를 보고 이지로직님의 이 코드들에 적용하여 해결해 보려해도 양쪽 다 일정부분 문제가 밠생하는 딜레마가 있습니다. 어찌하면 좋을지 고견 부탁드립니다~

easylogic commented 8 years ago

이슈 주셔서 감사합니다.

일단 maximumImageFileSize 의 경우 summeronte 내부적으로 바로 image 를 추가할때만 적용되겠끔 되어 있네요.

그누보드 서머노트 버전은 파일 업로드를 직접 하는 경우라서 저 로직을 타지 않게 되어 있습니다.

내부적으로 코드를 따로 추가 해야겠네요...

관련해서 수정하고 다시 말씀 드릴게요.

아마도 summernote 버전도 같이 올라 갈 듯 합니다.

dewoweb commented 8 years ago

엌 딱 들어왔는데 바로 글을 남기고 계셨네요. 오늘 하루종일 매달린 끝에 개인적으로 해결은 봤습니다. 다만 다른 이슈드릴 사항도 있을듯 싶어서 미리 죄송합니다. ( );

dewoweb commented 8 years ago

[ 이미지 업로드 ]

  1. 파일 용량 제한.
  2. 게시물 삭제시 이미지 함께 삭제.
  3. 게시물 수정시 기존 이미지 사용여부 체크 및 삭제.

이 부분에 관해서는 해결을 거진 봤습니다. 다만 좀 의아한 것은 섬머노트 원 소스를 넣고 돌렸을때나 제가 수정한 소스나 모두 파일 용량 제한에 걸릴 경우 별도의 메시지 출력없이 그냥 NULL이 리턴 됩니다. 안내 메시지를 띄울 방법이 있을런지요.

easylogic commented 8 years ago

NULL 이 어디서 리턴되는지 알 수 있을까요?

easylogic commented 8 years ago

현재 여기에 적용된 summernote 버전이 0.6.16 인데요..

0.7.x 로 버전을 올려야하는 상황입니다.

그러면 업로드 관련해서 체크 하는 로직이 좀 더 개선 될 것 같아요.

easylogic commented 8 years ago

파일 용량 제한을 걸 때

서버 전체 파일 용량의 체크 아님 서머노트 자체의 파일 용량 체크

두가지 중에 무엇이 필요하신가요?

easylogic commented 8 years ago

5 여기서 계속 진행할게요.

dewoweb commented 8 years ago

아... 정확히는 NULL 이 아니구요. 이미지 파일 업로드시 설정된 맥시멈 사이즈를 초과할 시에

upload.php 에서 echo 'fail'; 열이 실행되는 부분에 들어서면 별도의 메시지(alert()등의) 없이 그냥 이미지 업로드 창이 닫히면서 섬머노트 textarea 본문은 아무것도 삼입되지 않습니다.

제가 NULL이라고 표현한 이유는 아무런 동작도 출력도 변화도 없기에 그리 말씀드린 것이구요. 그누보드 관리자 페이지 세팅과 섬머노트 이미지 맥시멈 사이즈와 연동은 어찌어찌 해결했는데 말씀드린데로 업로드 자체는 막아지지만 클라이언트(유저들) 입장에서는 "어라? 사진이 안 올라가네?. 근데 아무 말도 안뜨네? 뭐지?" 하는 상황인 것이지요.

제가 섬머노트를 sir.co.kr의 easylogic님의 포스트를 보고 처음 접하는지라 사용에 익숙지 않아서 메시지를 못 띄우고 있는건지도 모르겠습니다.;

dewoweb commented 8 years ago

또 새로운 이슈를 하나 말씀드려야 하나 고민이긴 하네요. 살짝 언급을 드리자면 섬머노트를 통한 이미지 업로드시에 본문 view시에 이미지 클릭시 떠야하는 resize_view js가 연동되지 않는듯 싶습니다. 이건 또 나중에 따로 연구 좀 해보고 말씀드리겠습니다.

dewoweb commented 8 years ago

resize_view가 아니라. <img src=" 앞에 가 붙어야 하는 것을 말씀드리는 것이구요.

그누보드5 에서 view.php 내에 function conv_rich_content($matches) { global $view; return view_image($view, $matches[1], $matches[2]); } $view['rich_content'] = preg_replace_callback("/{이미지:([0-9]+)[:]?([^}]*)}/i", "conv_rich_content", $view['content']); 라인과 관련이 있는듯 싶네요.

제가 10년만에 개발자로 돌아와서 php를 하고 있는데 그누보드5를 사용해보니 기본으로 포함된 네이버쪽의 스마트에디터가 잡스럽고 마음이 안들던 차에 멋진 에디터를 접하게 해주셔서 정말 감사하게 생각하고 있습니다.

새해 복 많이 받으세요.

easylogic commented 8 years ago

https://github.com/easylogic/gnuboard5-summernote/releases/tag/v1.2

파일 업로드 체크하는 로직 추가했습니다.

view_image 쪽은 다시 봐야할 것 같아요.

확인 되면 말씀드릴게요.

easylogic commented 8 years ago

이미지 추가후에 저장한다음 view_image 함수를통해서 html 변경되어 있네요.

그래서 클릭하면 전체 window 로 이미지가 뜹니다.

<p>
<a href="http://board.easylogic.co.kr/bbs/view_image.php?fn=%2Fdata%2Feditor%2F1601%2F3551562666_1452532452.4231.png" target="_blank" class="view_image">
<img src="http://board.easylogic.co.kr/data/editor/1601/thumb-3551562666_1452532452.4231_600x309.png" alt="3551562666_1452532452.4231.png" width="583" height=""/>
</a>
<br />
</p>