RX/XE 팁
XE FAQ 는 제가 XE공홈 '묻고 답하기'에 답변한 내용들 중 일부를 정리한 내용입니다. (대부분이 제가 한 답변이죠)
XE Tips 는 제가 XE 공홈에 쓴 XE 관련 유용한 팁들입니다. 기능개선은 공홈에 안 적어둔 XE 유용 개선팁들입니다.
유용정보는 외부 검색을 통해 알아낸 소스등을 기재해둔 곳입니다.
버그 신고내역들은 XE 사용하다가 발견한 버그 패치방법들로, Core Issue 에 기록해뒀기에 XE 에 적용이 되었을 가능성이 있겠죠

제가 쓴 글들에 대해 퍼가실때는 꼭 출처를남겨주시고.. (다만 플래시뷰 기반이기에 퍼가기는조금 힘들 수 있겠죠 ^^;)
타회원의 글들도 적혀있는 출처를 같이 꼭 기재해주세요
출처 rhymix 
출처URL https://xetown.com/thirdpartynews/1695431 

 

안내글 - https://xetown.com/thirdpartynews/1695431

변경된 파일 - https://github.com/YJSoft/xe-core/commit/5e613fa6ff7df8cc657eeb51839fc70654d864c2

 

 

 

 

1) classes/template/TemplateHandler.class.php  에서

 

protected function init   함수에서

 

if(substr($tpl_path, -1) != '/')

 

위에 추가

 

$tpl_path = preg_replace('/[\{\}\(\)\[\]<>\$\'"]/', '', $tpl_path);

 

 

2) modules/editor/editor.view.php 에서

function dispEditorSkinColorset() 함수에서

 

$skin = Context::get('skin');  

 

아래에 추가

 

if (!preg_match('/^[a-zA-Z0-9_-]+$/', $skin)) {

return $this->stop('msg_invalid_request');

}

 

$colorset = $skin_info->colorset;

를 아래걸로 변경

$colorset = $skin_info->colorset ?? null;

 

 

3)  modules/layout/layout.view.php   에서

 

public function dispLayoutPreviewWithModule()  함수에서

 

$layoutSrl = Context::get('layout_srl');

 

$module = Context::get('module_name');

$mid = Context::get('target_mid');

$skin = Context::get('skin');

$skinType = Context::get('skin_type');

 

부분을 아래걸로 변경

 

$layoutSrl = intval(Context::get('layout_srl'));

$module = preg_replace('/[^a-zA-Z0-9_]/', '', Context::get('module_name'));

$mid = preg_replace('/[^a-zA-Z0-9\/_-]/', '', Context::get('target_mid'));

$skin = preg_replace('/[^a-zA-Z0-9_-]/', '', Context::get('skin'));

$skinType = Context::get('skin_type') === 'M' ? 'M' : 'P';

 

 

4) modules/module/module.model.php  에서

function loadSkinInfo($path, $skin, $dir = 'skins') 함수에서

 

if(substr($path,-1)!='/') $path .= '/';    

를 아래걸로 변경

 

if(substr($path,-1) != '/') {

$path .= '/';

}

if(!preg_match('/^[a-zA-Z0-9_-]+$/', $skin)) {

return;

}

 

 

 

5) modules/poll/poll.controller.php 에서

function procPoll() 함수에서

 

$skin = Context::get('skin');

if(!$skin || !is_dir(_XE_PATH_ . 'modules/poll/skins/'.$skin)) $skin = 'default';

 

대신에 아래걸로 변경

 

$skin = Context::get('skin') ?: 'default';

if(!preg_match('/^[a-zA-Z0-9_-]+$/', $skin)) {

return $this->stop('msg_invalid_request');

}

if(!is_dir(_XE_PATH_ . 'modules/poll/skins/' . $skin)) {

$skin = 'default';

}

 

 

 

function procPollViewResult() 함수에서

 

$skin = Context::get('skin');

if(!$skin || !is_dir(_XE_PATH_ . 'modules/poll/skins/'.$skin)) $skin = 'default';

 

를 아래걸로 변경

 

$skin = Context::get('skin') ?: 'default';

if(!preg_match('/^[a-zA-Z0-9_-]+$/', $skin)) {

return $this->stop('msg_invalid_request');

}

if(!is_dir(_XE_PATH_ . 'modules/poll/skins/' . $skin)) {

$skin = 'default';

}

 

 

6) modules/poll/poll.model.php  에서

 

function getPollHtml  함수에서

 

$poll->style = $style;  

부분을 아래걸로 변경

$poll->style = preg_replace('/[^a-zA-Z0-9_-]/', '', $style);

 

 

$poll->stop_date = $output->data->stop_date;

아래에 추가

$skin = preg_replace('/[^a-zA-Z0-9_-]/', '', $skin);

 

 

 

function getPollResultHtml  함수에서

 

$poll->style = $style;  

부분을 아래걸로 변경

$poll->style = preg_replace('/[^a-zA-Z0-9_-]/', '', $style);

 

 

function getPollGetColorsetList 함수에서

 

$skin = Context::get('skin');

대신에 아래걸로 변경

$skin = Context::get('skin') ?: 'default';

if(!preg_match('/^[a-zA-Z0-9_-]+$/', $skin)) {

return $this->stop('msg_invalid_request');

}

if(!is_dir(_XE_PATH_ . 'modules/poll/skins/' . $skin)) {

$skin = 'default';

}

 

 

 

 

 

전체 3건
공지 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 file 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

1.8.12 통합검색시 결과값이 제대로 안 나오는 경우

출처 : sejin7940 

2015.10.27 2015.10.27 조회 730

통합검색이 제대로 안 되는 경우 확인해볼 것들 대상제외 기능을 사용한 경우, 종종 게시판이 삭제되거나 변경된 경우 이 부분이 통합검색 대상제외 쪽에 반영이 안 되서 통합검색 결과가 아예 안 나오는 경우가 발생할때가 있다. ( 실제 본 사례는.. exclude_...

1.8.12 CKEditor에도 자동 저장 기능 추가

출처 : XE Github 

2015.10.25 2015.10.25 조회 1099

XpressEditor 에서는 자동저장기능이 있었는데 Ckeditor 에서는 작동을 안 한다. 이 부분 보완하는 방법을 YJSoft 님과 misol 님이 github 에 올려둔 내용이다. 1  modules/editor/skins/ckeditor/css/default.css @@ -0,0 +1 @@+p.editor_autosaved_mess...

1.8.12 IE+XpressEditor에서 업로드가 되지 않는 문제점 수정

출처 : YJSoft 

2015.10.22 2015.10.22 조회 658

classes/module/ModuleHandler.class.php 에서 if(Context::getRequestMethod() === 'POST' && Context::isInstalled() && !checkCSRF()) { 를 아래걸로 변경 if(Context::getRequestMethod() === 'POST' && Context::isInstalled() &...

XE Login