게시판 대댓글에서 페이지 이동없이 댓글 바로 아래에서 (textarea가 아니라) 위지윅 에디터를 로드하고 대댓글을 쓸 수 있을까 고민 중에 있습니다.
일전에 회원 이용약관을 검토해보라는 조언이 있어서 추적해봤더니 에디터 모듈의 dispEditorFrame() 함수까지 오게 됐습니다.
js에서 url을 파라미터와 함께 넘겨줘서 해당 view의 템플릿 결과를 아이프레임으로 얹어주는 방식입니다.
1. 회원 약관 생성 소스 코드 : https://github.com/rhymix/rhymix/blob/aa78a03b99df9c7deabfa4fb2d498eed067f54c8/modules/member/tpl/agreements_config.html#L18-L24
2. js에서 클릭 이벤트로 아이프레임 생성 : https://github.com/rhymix/rhymix/blob/aa78a03b99df9c7deabfa4fb2d498eed067f54c8/common/js/common.js#L376-L393
3. dispEditorFrame() 함수로 액션 실행 : https://github.com/rhymix/rhymix/blob/aa78a03b99df9c7deabfa4fb2d498eed067f54c8/modules/editor/editor.view.php#L21-L49
4. editor_frame.html 템플릿으로 에디터 출력 : https://github.com/rhymix/rhymix/blob/aa78a03b99df9c7deabfa4fb2d498eed067f54c8/modules/editor/tpl/editor_frame.html#L1-L18
그런데 이게 뭔가 개발이 되다 만 함수 같더라구요.
에디터 옵션이 모듈이나 mid 별로 적용되는 게 아니라 사실상 고정이 되어 있고,
그렇게 연결을 하면 일단 본문이 content로 이전돼서 저장되기는 하는데 (1) escape이 잘 안되는 것 같고 (2) 파일은 (업로드가 되기는 하지만) 첨부 후에 댓글단에 연결되지 않더라구요. https://dev.aporia.blog/board_zjsF61/44317#comment_44423
또, 개별 모듈의 에디터 옵션을 불러와서 좀 더 역동적으로 꾸며보려고 시험 삼아 dispEditorFrame() 함수를 수정해보기도 했는데, 뭔가 누락되거나 잘못된 게 있는지 (에러메시지도 없이) 내용값 전달조차 되지 않습니다;;;
이게 에디터를 동적으로 생성해줄 때 유용한 함수인 것 같은데, 이러다 또 애드온을 만들어야 하는 건 아닌지 고민이 깊어갑니다.
mid가 없는 관리자 화면에서 쓰려고 만든 거라... mid를 받지 않으니까 각 모듈의 에디터 설정이 적용되지도 않고, 업로드한 파일도 미아가 되는 것 같습니다.