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';
}
댓글 0
번호 | 카테고리 | 제목 | 출처 | 등록일 | 조회 |
---|---|---|---|---|---|
공지 | XE 기능개선 | XE 1.11.18 이후 버전의 익명 수정 버그 수정법 | xetown | 2023.10.07 | 3199 |
공지 | XE 기능개선 | XE 1.11.14 보안패치 - 타인의 쪽지 내용을 확인할 수 있는 버그 패치방법 | xetown | 2023.10.03 | 3265 |
» | XE 기능개선 | XE 1.11.6 이후 보안배치 #4 | rhymix | 2022.07.05 | 3433 |
공지 | 1.11.6 | XE 1.11.6 이후 보안배치 #3 | rhymix | 2022.04.02 | 3378 |
공지 | 1.11.6 | XE 1.11.6 이후 보안배치 #1 | xetown | 2021.06.22 | 3774 |
공지 | 1.11.6 | XE 1.11.6 이하 에서 공개댓글을 비밀댓글로 변경시 생길 수 있는 오류 수정법 | sejin7940 | 2021.01.10 | 3696 |
공지 | XE 기능개선 | XE 1.11.4 이후에서 파일 업로드시 정상 작동 안 하는 현상 수정법 | XE github | 2019.04.02 | 6449 |
공지 | XE 기능개선 | php 7.1 환경에서 XE 오류 나는 경우 확인할 사항 | sejin7940 | 2018.07.11 | 6372 |
공지 | 유용정보 | php7.2 환경에서 XE 오류가 생기는 경우 - Object 클래스 변경 필요 | XE Github | 2017.11.27 | 9940 |
공지 | XE 기능개선 | XE 1.8.30 이하에서 반드시 수정해주셔야하는 부분입니다. | XE 1.8.31 | 2017.02.26 | 7160 |
공지 | 1.8.18 | XE 1.8.18 에서 사용시 반드시 수정해야할 사항들 ( XE 1.8.20 이후에서는 수정 불필요 ) | xetown | 2016.04.03 | 26281 |
공지 | XE 기능개선 | XE 1.8.12 이후부터 proc controller 일부가 작동 안 할 경우 확인할 부분 [1] | XE | 2015.10.16 | 26201 |
1 | 1.8.43 | 글등록시 포인트차감으로 등록불가 설정시 개별설정이 아닌 전체 설정 기준으로만 사용할 경우는 적용 안 되는 버그 수정법 | sejin7940 | 2017.08.23 | 234 |