- setToAllDocumentExtraVars() 최적화
- 확장변수(-1, -2)를 이용한 문서 다국어 기능 관련 버그 수정 및 개선
- getDocumentList() 최적화 (비효율적인 코드 대거 삭제)
- _setSortIndex(), _setSearchOption() 최적화 (확장 변수 관련 쿼리들 정리)
- 권한자가 아니라면 공개글만 검색되도록 개선 (검색 옵션과 상관없이)
--- 문서 검색(제목+내용,내용,댓글)시 권한자도 비밀글을 검색할 수 없었던 문제 수정
- 'NOTICE Undefined variable' 조차 발생되지 않도록 getGrant() 수정
- '(포인트가 부족한 경우) 글 열람 금지' 옵션 사용시 본문 뿐만 아니라 확장 변수도 볼 수 없도록 숨김
- 기타 버그 수정 (많이 잡은 것 같은 데 정확히 기억안남ㅠ)
게시판이나 위젯에서 작성일 역순으로 검색 및 정렬하는 경우가 많은데
(특히 list_order가 정확하지 않던 구버전 XE에서는 어쩔 수 없이 regdate로
정렬하는 사이트가 많았음) module_srl+regdate에 인덱스가 없어서
다른 컬럼으로 정렬할 때보다 성능이 떨어지는 문제 수정
문서를 다른 게시판으로 이동할 때 첨부파일 경로를 변경하지 않도록 하여
아래와 같은 문제 발생을 사전에 차단합니다.
- 본문에 삽입한 이미지 경로와 실제 파일이 저장된 경로가 달라지는 문제
- 경로 변경에 실패하여 파일이 증발하는 문제
단, files/attach/(images|binaries)/(기존 게시판의 module_srl) 폴더에
파일이 그대로 남아 있게 되므로, 게시판 삭제 후 해당 폴더를 수동으로
삭제하면 문제가 될 수 있습니다. 더이상 게시판의 module_srl과 해당 폴더에
저장된 파일들의 소속 모듈이 일치하지 않을 수 있다는 뜻입니다.
user_id, user_name, nick_name 검색에는 like가 아닌 equal 조건을 사용하도록 변경함.
이름이나 닉네임으로 검색할 때 LIKE %검색어% 문법이 사용되어
검색 속도가 느려지는 것은 물론, 특정 회원의 작성글 보기 메뉴를 클릭하면
검색어가 포함된 닉네임을 가진 다른 회원의 글까지 모두 표시되어
닉네임을 변경했거나 다중아이디를 사용하는 것으로 오해받는 문제를 수정함.
(예: '라이믹스' 닉네임을 검색하면 '라이믹스최고' 회원의 글도 검색되었음)
익명게시판에서는 댓글 작성시 $manual_inserted = true로 설정되기 때문에
converter가 작동하지 않음. 이런 경우에도 allow_html, use_html 등의
변수가 지정된 경우 converter를 사용하도록 변경하여
에디터를 지원하지 않는 모바일 스킨과의 호환성을 높임.
- 트리거 등 반환값이 필요하지 않은 곳에서 new BaseObject()를 반환하는 것 삭제
- 모듈 설치, 업데이트 후 무의미한 new BaseObject()를 반환하는 것 삭제
- 사용자에게 에러 메시지를 돌려주는 용도로 new BaseObject(-1, '에러메시지')를
사용하는 경우는 대부분 $this->setError()로 변경함. 언어 변환과 sprintf()
처리까지 한 번에 이루어지므로 이쪽이 더 편리함.
문서나 댓글을 작성하거나 수정할 때 트리거에서 회원 정보를 조작할 수
있도록 허용함. $obj->manual_member_info = true 로 바꾸어 반환하면
글쓴이의 정보가 현재 로그인한 사용자나 최초 작성시 정보로 덮어씌워지지
않고 트리거에서 지정한 그대로 남음.
기존에도 $manual_inserted 를 사용하면 이런 기능을 구현할 수 있었으나,
이 변수는 트리거에서 조작할 수 없으며 다른 체크도 모두 건너뛰는 등
여러 가지 불편이 있어서 이렇게 일부 정보만 변경하도록 허용하는 새 방법을
제공함. 익명 게시판 등을 좀더 편리하게 개발할 수 있을 것으로 예상됨.