XE Tips 는 제가 XE 공홈에 쓴 XE 관련 유용한 팁들입니다. 기능개선은 공홈에 안 적어둔 XE 유용 개선팁들입니다.
유용정보는 외부 검색을 통해 알아낸 소스등을 기재해둔 곳입니다.
버그 신고내역들은 XE 사용하다가 발견한 버그 패치방법들로, Core Issue 에 기록해뒀기에 XE 에 적용이 되었을 가능성이 있겠죠
제가 쓴 글들에 대해 퍼가실때는 꼭 출처를남겨주시고.. (다만 플래시뷰 기반이기에 퍼가기는조금 힘들 수 있겠죠 ^^;)
타회원의 글들도 적혀있는 출처를 같이 꼭 기재해주세요
글들을 관리자가 이동시킬 경우, 확장변수 이동에 버그가 있습니다.
최신 XE 1.5.2 에서 발생
이 버그는 확장변수가 있는체로 이동할때 발생하는 것이고
그냥 눈으로 볼땐 버그가 없는 것처럼 제대로 이동되는것처럼 보이지만.
이동 한 후, 확장변수를 수정해서 저장하면 저장이 안 됩니다.
원인은 글을 이동시키면
xe_documents 에서 해당 글의 module_srl 값은 바뀌는데
xe_document_extra_vars 에 있는module_srl 값이 안 바뀌어서 그럽니다.
그러나 실제 글에서 확장변수 출력시 document_srl 값을 기준으로 출력하니 실제 module_srl 값이 달라도 정상적으로 출력되는 것처럼 보입니다.
문제는, 이동한 글을 저장하게 되면
document_srl 과 module_srl 이 모두 같아야 update 가 되는데
module_srl 값이 다르다보니, 이중으로 새로 등록이 되어버립니다.
(확장변수 저장하고 DB에서 해당 글을 조회해보면, 똑같은 확장변수가 이전전의 module_srl 값으로 하나, 이동된 module_srl 값으로 하나 존재함을 확인할 수 있다)
이렇게 이중으로 기록이 되면서, 그 후에 실제 view 화면등에서 확장변수를 출력할때, module_srl 값까지 확인을 안 하다보니, 최초 기제되었던 이전전의 화장변수 기준으로 읽어오게 되어 실제 변경되어 수정된 내역이계속 안 나타나게 되는겁니다
이 현상을 해결하기 위해서는, 글이동될때 xe_document_extra_vars 에서 module_srl 값까지도 다 바꿔주면 된다.
사용할 수 있는 쿼리문이 있을까해서 찾아봤지만, 쿼리를 차지 못해서
쿼리문을 하나 추가하고, document 모듈의 파일 한군데를 수정해서 이 현상을 해결했다.
modules/document/document.admin.controller.php 에서
moveDocumentModule함수내에 대략 117번째줄 즈음에
// 글 이동시 확장변수값들도 전부 이동시키기 위해서 ( sejin7940)
$obj->document_srl = $document_srl;
$output = executeQuery('document.moveDocumentExtraVars', $obj);
문구를 추가해주고
document/queries/moveDocumentExtrVars.xml 파일을 새로 생성
<query id="moveDocumentExtraVars" action="update">
<tables>
<table name="document_extra_vars" />
</tables>
<columns>
<column name="module_srl" var="module_srl" filter="number" />
</columns>
<conditions>
<condition operation="equal" column="document_srl" var="document_srl" notnull="notnull" />
</conditions>
</query>
이렇게하면 글이동시 확장변수 버그가 해결이 된다.
댓글 0
공지 | XE 기능개선 | XE 1.11.18 이후 버전의 익명 수정 버그 수정법 | xetown | 2023.10.07 | 2756 |
공지 | XE 기능개선 | XE 1.11.14 보안패치 - 타인의 쪽지 내용을 확인할 수 있는 버그 패치방법 | xetown | 2023.10.03 | 2853 |
공지 | XE 기능개선 | XE 1.11.6 이후 보안배치 #4 | rhymix | 2022.07.05 | 2936 |
공지 | 1.11.6 | XE 1.11.6 이후 보안배치 #3 | rhymix | 2022.04.02 | 2927 |
공지 | 1.11.6 | XE 1.11.6 이후 보안배치 #1 | xetown | 2021.06.22 | 3292 |
공지 | 1.11.6 | XE 1.11.6 이하 에서 공개댓글을 비밀댓글로 변경시 생길 수 있는 오류 수정법 | sejin7940 | 2021.01.10 | 3222 |
공지 | XE 기능개선 | XE 1.11.4 이후에서 파일 업로드시 정상 작동 안 하는 현상 수정법 | XE github | 2019.04.02 | 6001 |
공지 | XE 기능개선 | php 7.1 환경에서 XE 오류 나는 경우 확인할 사항 | sejin7940 | 2018.07.11 | 5928 |
공지 | 유용정보 | php7.2 환경에서 XE 오류가 생기는 경우 - Object 클래스 변경 필요 | XE Github | 2017.11.27 | 8270 |
공지 | XE 기능개선 | XE 1.8.30 이하에서 반드시 수정해주셔야하는 부분입니다. | XE 1.8.31 | 2017.02.26 | 6695 |
공지 | 1.8.18 | XE 1.8.18 에서 사용시 반드시 수정해야할 사항들 ( XE 1.8.20 이후에서는 수정 불필요 ) | xetown | 2016.04.03 | 25808 |
공지 | XE 기능개선 | XE 1.8.12 이후부터 proc controller 일부가 작동 안 할 경우 확인할 부분 [1] | XE | 2015.10.16 | 25627 |
|