그누보드 5.0.23 수정 내역 적용
This commit is contained in:
@ -1282,7 +1282,10 @@ if($config['cf_cert_use']) {
|
|||||||
|
|
||||||
// kcp일 때
|
// kcp일 때
|
||||||
if($config['cf_cert_hp'] == 'kcp') {
|
if($config['cf_cert_hp'] == 'kcp') {
|
||||||
$exe = G5_KCPCERT_PATH.'/bin/ct_cli';
|
if(PHP_INT_MAX == 2147483647) // 32-bit
|
||||||
|
$exe = G5_KCPCERT_PATH . '/bin/ct_cli';
|
||||||
|
else
|
||||||
|
$exe = G5_KCPCERT_PATH . '/bin/ct_cli_x64';
|
||||||
|
|
||||||
echo module_exec_check($exe, 'ct_cli');
|
echo module_exec_check($exe, 'ct_cli');
|
||||||
}
|
}
|
||||||
|
|||||||
@ -19,6 +19,20 @@ if(!sql_query(" select co_tag_filter_use from {$g5['content_table']} limit 1 ",
|
|||||||
sql_query(" update {$g5['content_table']} set co_tag_filter_use = '1' ");
|
sql_query(" update {$g5['content_table']} set co_tag_filter_use = '1' ");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 모바일 내용 추가
|
||||||
|
if(!sql_query(" select co_mobile_content from {$g5['content_table']} limit 1", false)) {
|
||||||
|
sql_query(" ALTER TABLE `{$g5['content_table']}`
|
||||||
|
ADD `co_mobile_content` longtext NOT NULL AFTER `co_content` ", true);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 스킨 설정 추가
|
||||||
|
if(!sql_query(" select co_skin from {$g5['content_table']} limit 1 ", false)) {
|
||||||
|
sql_query(" ALTER TABLE `{$g5['content_table']}`
|
||||||
|
ADD `co_skin` varchar(255) NOT NULL DEFAULT '' AFTER `co_mobile_content`,
|
||||||
|
ADD `co_mobile_skin` varchar(255) NOT NULL DEFAULT '' AFTER `co_skin` ", true);
|
||||||
|
sql_query(" update {$g5['content_table']} set co_skin = 'basic', co_mobile_skin = 'basic' ");
|
||||||
|
}
|
||||||
|
|
||||||
$html_title = "내용";
|
$html_title = "내용";
|
||||||
$g5['title'] = $html_title.' 관리';
|
$g5['title'] = $html_title.' 관리';
|
||||||
|
|
||||||
@ -36,6 +50,8 @@ else
|
|||||||
{
|
{
|
||||||
$html_title .= ' 입력';
|
$html_title .= ' 입력';
|
||||||
$co['co_html'] = 2;
|
$co['co_html'] = 2;
|
||||||
|
$co['co_skin'] = 'basic';
|
||||||
|
$co['co_mobile_skin'] = 'basic';
|
||||||
}
|
}
|
||||||
|
|
||||||
include_once (G5_ADMIN_PATH.'/admin.head.php');
|
include_once (G5_ADMIN_PATH.'/admin.head.php');
|
||||||
@ -69,6 +85,22 @@ include_once (G5_ADMIN_PATH.'/admin.head.php');
|
|||||||
<th scope="row">내용</th>
|
<th scope="row">내용</th>
|
||||||
<td><?php echo editor_html('co_content', get_text($co['co_content'], 0)); ?></td>
|
<td><?php echo editor_html('co_content', get_text($co['co_content'], 0)); ?></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th scope="row">모바일 내용</th>
|
||||||
|
<td><?php echo editor_html('co_mobile_content', get_text($co['co_mobile_content'], 0)); ?></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th scope="row"><label for="co_skin">스킨 디렉토리<strong class="sound_only">필수</strong></label></th>
|
||||||
|
<td>
|
||||||
|
<?php echo get_skin_select('content', 'co_skin', 'co_skin', $co['co_skin'], 'required'); ?>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th scope="row"><label for="co_mobile_skin">모바일스킨 디렉토리<strong class="sound_only">필수</strong></label></th>
|
||||||
|
<td>
|
||||||
|
<?php echo get_mobile_skin_select('content', 'co_mobile_skin', 'co_mobile_skin', $co['co_mobile_skin'], 'required'); ?>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row"><label for="co_tag_filter_use">태그 필터링 사용</label></th>
|
<th scope="row"><label for="co_tag_filter_use">태그 필터링 사용</label></th>
|
||||||
<td>
|
<td>
|
||||||
@ -160,6 +192,7 @@ function frmcontentform_check(f)
|
|||||||
|
|
||||||
<?php echo get_editor_js('co_content'); ?>
|
<?php echo get_editor_js('co_content'); ?>
|
||||||
<?php echo chk_editor_js('co_content'); ?>
|
<?php echo chk_editor_js('co_content'); ?>
|
||||||
|
<?php echo get_editor_js('co_mobile_content'); ?>
|
||||||
|
|
||||||
check_field(f.co_id, "ID를 입력하세요.");
|
check_field(f.co_id, "ID를 입력하세요.");
|
||||||
check_field(f.co_subject, "제목을 입력하세요.");
|
check_field(f.co_subject, "제목을 입력하세요.");
|
||||||
|
|||||||
@ -21,7 +21,10 @@ $sql_common = " co_include_head = '$co_include_head',
|
|||||||
co_html = '$co_html',
|
co_html = '$co_html',
|
||||||
co_tag_filter_use = '$co_tag_filter_use',
|
co_tag_filter_use = '$co_tag_filter_use',
|
||||||
co_subject = '$co_subject',
|
co_subject = '$co_subject',
|
||||||
co_content = '$co_content' ";
|
co_content = '$co_content',
|
||||||
|
co_mobile_content = '$co_mobile_content',
|
||||||
|
co_skin = '$co_skin',
|
||||||
|
co_mobile_skin = '$co_mobile_skin' ";
|
||||||
|
|
||||||
if ($w == "")
|
if ($w == "")
|
||||||
{
|
{
|
||||||
|
|||||||
@ -16,7 +16,7 @@ for ($i=0; $i<count($chk); $i++)
|
|||||||
|
|
||||||
$mb = get_member($_POST['mb_id'][$k]);
|
$mb = get_member($_POST['mb_id'][$k]);
|
||||||
|
|
||||||
if (!$mb[mb_id]) {
|
if (!$mb['mb_id']) {
|
||||||
$msg .= "{$mb['mb_id']} : 회원자료가 존재하지 않습니다.\\n";
|
$msg .= "{$mb['mb_id']} : 회원자료가 존재하지 않습니다.\\n";
|
||||||
} else if ($member['mb_id'] == $mb['mb_id']) {
|
} else if ($member['mb_id'] == $mb['mb_id']) {
|
||||||
$msg .= "{$mb['mb_id']} : 로그인 중인 관리자는 삭제 할 수 없습니다.\\n";
|
$msg .= "{$mb['mb_id']} : 로그인 중인 관리자는 삭제 할 수 없습니다.\\n";
|
||||||
|
|||||||
@ -236,7 +236,7 @@ if ($member['mb_level'] >= $board['bo_list_level'] && $board['bo_use_list_view']
|
|||||||
|
|
||||||
include_once('./board_tail.php');
|
include_once('./board_tail.php');
|
||||||
|
|
||||||
echo "\n<!-- 사용스킨 : ".(G5_IS_MOBEILE ? $board['bo_mobile_skin'] : $board['bo_skin'])." -->\n";
|
echo "\n<!-- 사용스킨 : ".(G5_IS_MOBILE ? $board['bo_mobile_skin'] : $board['bo_skin'])." -->\n";
|
||||||
|
|
||||||
include_once(G5_PATH.'/tail.sub.php');
|
include_once(G5_PATH.'/tail.sub.php');
|
||||||
?>
|
?>
|
||||||
|
|||||||
@ -30,7 +30,6 @@ $str = conv_content($co['co_content'], $co['co_html'], $co['co_tag_filter_use'])
|
|||||||
unset($src);
|
unset($src);
|
||||||
unset($dst);
|
unset($dst);
|
||||||
$src[] = "/{{쇼핑몰명}}|{{홈페이지제목}}/";
|
$src[] = "/{{쇼핑몰명}}|{{홈페이지제목}}/";
|
||||||
//$dst[] = $default[de_subject];
|
|
||||||
$dst[] = $config['cf_title'];
|
$dst[] = $config['cf_title'];
|
||||||
$src[] = "/{{회사명}}|{{상호}}/";
|
$src[] = "/{{회사명}}|{{상호}}/";
|
||||||
$dst[] = $default['de_admin_company_name'];
|
$dst[] = $default['de_admin_company_name'];
|
||||||
@ -59,39 +58,33 @@ $dst[] = $default['de_admin_info_email'];
|
|||||||
|
|
||||||
$str = preg_replace($src, $dst, $str);
|
$str = preg_replace($src, $dst, $str);
|
||||||
|
|
||||||
if ($is_admin)
|
// 스킨경로
|
||||||
echo '<div class="ctt_admin"><a href="'.G5_ADMIN_URL.'/contentform.php?w=u&co_id='.$co_id.'" class="btn_admin">내용 수정</a></div>';
|
if(trim($co['co_skin']) == '')
|
||||||
?>
|
$co['co_skin'] = 'basic';
|
||||||
|
|
||||||
<!-- 등록내용 시작 { -->
|
$content_skin_path = G5_SKIN_PATH.'/content/'.$co['co_skin'];
|
||||||
<?php
|
$content_skin_url = G5_SKIN_URL.'/content/'.$co['co_skin'];
|
||||||
$himg = G5_DATA_PATH.'/content/'.$co_id.'_h';
|
$skin_file = $content_skin_path.'/content.skin.php';
|
||||||
if (file_exists($himg)) // 상단 이미지
|
|
||||||
echo '<div id="ctt_himg" class="ctt_img"><img src="'.G5_DATA_URL.'/content/'.$co_id.'_h" alt=""></div>';
|
|
||||||
?>
|
|
||||||
|
|
||||||
<article id="ctt" class="ctt_<?php echo $co_id; ?>">
|
|
||||||
<header>
|
|
||||||
<h1><?php echo $g5['title']; ?></h1>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
<div id="ctt_con">
|
|
||||||
<?php echo $str; ?>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<?php
|
|
||||||
$timg = G5_DATA_PATH.'/content/'.$co_id.'_t';
|
|
||||||
if (file_exists($timg)) // 하단 이미지
|
|
||||||
echo '<div id="ctt_timg" class="ctt_img"><img src="'.G5_DATA_URL.'/content/'.$co_id.'_t" alt=""></div>';
|
|
||||||
|
|
||||||
if ($is_admin)
|
if ($is_admin)
|
||||||
echo '<div class="ctt_admin"><a href="'.G5_ADMIN_URL.'/contentform.php?w=u&co_id='.$co_id.'" class="btn_admin">내용 수정</a></div>';
|
echo '<div class="ctt_admin"><a href="'.G5_ADMIN_URL.'/contentform.php?w=u&co_id='.$co_id.'" class="btn_admin">내용 수정</a></div>';
|
||||||
?>
|
?>
|
||||||
<!-- } 등록내용 끝 -->
|
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
if(is_file($skin_file)) {
|
||||||
|
$himg = G5_DATA_PATH.'/content/'.$co_id.'_h';
|
||||||
|
if (file_exists($himg)) // 상단 이미지
|
||||||
|
echo '<div id="ctt_himg" class="ctt_img"><img src="'.G5_DATA_URL.'/content/'.$co_id.'_h" alt=""></div>';
|
||||||
|
|
||||||
|
include($skin_file);
|
||||||
|
|
||||||
|
$timg = G5_DATA_PATH.'/content/'.$co_id.'_t';
|
||||||
|
if (file_exists($timg)) // 하단 이미지
|
||||||
|
echo '<div id="ctt_timg" class="ctt_img"><img src="'.G5_DATA_URL.'/content/'.$co_id.'_t" alt=""></div>';
|
||||||
|
} else {
|
||||||
|
echo '<p>'.str_replace(G5_PATH.'/', '', $skin_file).'이 존재하지 않습니다.</p>';
|
||||||
|
}
|
||||||
|
|
||||||
if ($co['co_include_tail'])
|
if ($co['co_include_tail'])
|
||||||
@include_once($co['co_include_tail']);
|
@include_once($co['co_include_tail']);
|
||||||
else
|
else
|
||||||
|
|||||||
@ -50,6 +50,13 @@ if($config['cf_leave_day'] > 0) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 음성 캡챠 파일 삭제
|
||||||
|
foreach (glob(G5_PATH.'/data/cache/kcaptcha-*.mp3') as $file) {
|
||||||
|
if (filemtime($file) + 86400 < G5_SERVER_TIME) {
|
||||||
|
@unlink($file);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 실행일 기록
|
// 실행일 기록
|
||||||
if(isset($config['cf_optimize_date'])) {
|
if(isset($config['cf_optimize_date'])) {
|
||||||
sql_query(" update {$g5['config_table']} set cf_optimize_date = '".G5_TIME_YMD."' ");
|
sql_query(" update {$g5['config_table']} set cf_optimize_date = '".G5_TIME_YMD."' ");
|
||||||
|
|||||||
@ -252,13 +252,6 @@ a.btn_admin:focus, a.btn_admin:hover {text-decoration:none}
|
|||||||
.new_win .win_btn a {display:inline-block;padding:0 10px;height:30px;background:#4b545e;color:#fff;vertical-align:middle;line-height:2.4em}
|
.new_win .win_btn a {display:inline-block;padding:0 10px;height:30px;background:#4b545e;color:#fff;vertical-align:middle;line-height:2.4em}
|
||||||
.new_win .win_btn a:focus, .new_win .win_btn a:hover {text-decoration:none}
|
.new_win .win_btn a:focus, .new_win .win_btn a:hover {text-decoration:none}
|
||||||
|
|
||||||
/* 내용관리 */
|
|
||||||
#ctt {margin:10px 0;padding:10px;border:1px solid #e9e9e9}
|
|
||||||
.ctt_admin {text-align:right}
|
|
||||||
#ctt header h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}
|
|
||||||
#ctt_con {padding:10px 0}
|
|
||||||
.ctt_img {text-align:center}
|
|
||||||
|
|
||||||
/* 검색결과 색상 */
|
/* 검색결과 색상 */
|
||||||
.sch_word {color:#ff3061}
|
.sch_word {color:#ff3061}
|
||||||
|
|
||||||
|
|||||||
@ -225,13 +225,6 @@ a.btn_admin:focus, a.btn_admin:hover {text-decoration:none}
|
|||||||
.new_win .win_btn button {display:inline-block;padding:0 10px;height:2.5em;border:0;background:#666;color:#fff;text-decoration:none;line-height:2.5em}
|
.new_win .win_btn button {display:inline-block;padding:0 10px;height:2.5em;border:0;background:#666;color:#fff;text-decoration:none;line-height:2.5em}
|
||||||
.new_win .win_btn input {padding:0 10px;height:2.5em;line-height:2.5em}
|
.new_win .win_btn input {padding:0 10px;height:2.5em;line-height:2.5em}
|
||||||
|
|
||||||
/* 내용관리 */
|
|
||||||
#ctt {margin:10px 0;padding:10px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9}
|
|
||||||
.ctt_admin {margin:0 5px;text-align:right}
|
|
||||||
#ctt header h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}
|
|
||||||
#ctt_con {padding:10px 0}
|
|
||||||
.ctt_img {text-align:center}
|
|
||||||
|
|
||||||
/* 검색결과 색상 */
|
/* 검색결과 색상 */
|
||||||
.sch_word {color:#ff3061}
|
.sch_word {color:#ff3061}
|
||||||
|
|
||||||
|
|||||||
@ -781,6 +781,9 @@ CREATE TABLE IF NOT EXISTS `g5_content` (
|
|||||||
`co_html` tinyint(4) NOT NULL DEFAULT '0',
|
`co_html` tinyint(4) NOT NULL DEFAULT '0',
|
||||||
`co_subject` varchar(255) NOT NULL DEFAULT '',
|
`co_subject` varchar(255) NOT NULL DEFAULT '',
|
||||||
`co_content` longtext NOT NULL,
|
`co_content` longtext NOT NULL,
|
||||||
|
`co_mobile_content` longtext NOT NULL,
|
||||||
|
`co_skin` varchar(255) NOT NULL DEFAULT '',
|
||||||
|
`co_mobile_skin` varchar(255) NOT NULL DEFAULT '',
|
||||||
`co_tag_filter_use` tinyint(4) NOT NULL DEFAULT '0',
|
`co_tag_filter_use` tinyint(4) NOT NULL DEFAULT '0',
|
||||||
`co_hit` int(11) NOT NULL DEFAULT '0',
|
`co_hit` int(11) NOT NULL DEFAULT '0',
|
||||||
`co_include_head` varchar(255) NOT NULL,
|
`co_include_head` varchar(255) NOT NULL,
|
||||||
|
|||||||
@ -141,7 +141,7 @@ function get_cookie($cookie_name)
|
|||||||
{
|
{
|
||||||
$cookie = md5($cookie_name);
|
$cookie = md5($cookie_name);
|
||||||
if (array_key_exists($cookie, $_COOKIE))
|
if (array_key_exists($cookie, $_COOKIE))
|
||||||
return base64_decode($_COOKIE[md5($cookie_name)]);
|
return base64_decode($_COOKIE[$cookie]);
|
||||||
else
|
else
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
@ -214,11 +214,12 @@ function url_auto_link($str)
|
|||||||
// 140326 유창화님 제안코드로 수정
|
// 140326 유창화님 제안코드로 수정
|
||||||
// http://sir.co.kr/bbs/board.php?bo_table=pg_lecture&wr_id=461
|
// http://sir.co.kr/bbs/board.php?bo_table=pg_lecture&wr_id=461
|
||||||
// http://sir.co.kr/bbs/board.php?bo_table=pg_lecture&wr_id=463
|
// http://sir.co.kr/bbs/board.php?bo_table=pg_lecture&wr_id=463
|
||||||
$str = str_replace(array("<", ">", "&", """, " "), array("\t_lt_\t", "\t_gt_\t", "&", "\"", "\t_nbsp_\t"), $str);
|
$str = str_replace(array("<", ">", "&", """, " ", "'"), array("\t_lt_\t", "\t_gt_\t", "&", "\"", "\t_nbsp_\t", "'"), $str);
|
||||||
$str = preg_replace("`(?:(?:(?:href|src)\s*=\s*(?:\"|'|)){0})((http|https|ftp|telnet|news|mms)://[^\"'\s()]+)`", "<A HREF=\"\\1\" TARGET='{$config['cf_link_target']}'>\\1</A>", $str);
|
//$str = preg_replace("`(?:(?:(?:href|src)\s*=\s*(?:\"|'|)){0})((http|https|ftp|telnet|news|mms)://[^\"'\s()]+)`", "<A HREF=\"\\1\" TARGET='{$config['cf_link_target']}'>\\1</A>", $str);
|
||||||
$str = preg_replace("/(^|[\"'\s(])(www\.[^\"'\s()]+)/i", "\\1<A HREF=\"http://\\2\" TARGET='{$config['cf_link_target']}'>\\2</A>", $str);
|
$str = preg_replace("/([^(href=\"?'?)|(src=\"?'?)]|\(|^)((http|https|ftp|telnet|news|mms):\/\/[a-zA-Z0-9\.-]+\.[가-힣\xA1-\xFEa-zA-Z0-9\.:&#=_\?\/~\+%@;\-\|\,\(\)]+)/i", "\\1<A HREF=\"\\2\" TARGET=\"{$config['cf_link_target']}\">\\2</A>", $str);
|
||||||
$str = preg_replace("/[0-9a-z_-]+@[a-z0-9._-]{4,}/i", "<a href='mailto:\\0'>\\0</a>", $str);
|
$str = preg_replace("/(^|[\"'\s(])(www\.[^\"'\s()]+)/i", "\\1<A HREF=\"http://\\2\" TARGET=\"{$config['cf_link_target']}\">\\2</A>", $str);
|
||||||
$str = str_replace(array("\t_nbsp_\t", "\t_lt_\t", "\t_gt_\t"), array(" ", "<", ">"), $str);
|
$str = preg_replace("/[0-9a-z_-]+@[a-z0-9._-]{4,}/i", "<a href=\"mailto:\\0\">\\0</a>", $str);
|
||||||
|
$str = str_replace(array("\t_nbsp_\t", "\t_lt_\t", "\t_gt_\t", "'"), array(" ", "<", ">", "'"), $str);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
// 속도 향상 031011
|
// 속도 향상 031011
|
||||||
@ -483,7 +484,7 @@ function search_font($stx, $str)
|
|||||||
// 제목을 변환
|
// 제목을 변환
|
||||||
function conv_subject($subject, $len, $suffix='')
|
function conv_subject($subject, $len, $suffix='')
|
||||||
{
|
{
|
||||||
return cut_str(get_text($subject), $len, $suffix);
|
return get_text(cut_str($subject, $len, $suffix));
|
||||||
}
|
}
|
||||||
|
|
||||||
// 내용을 변환
|
// 내용을 변환
|
||||||
@ -528,7 +529,6 @@ function conv_content($content, $html, $filter=true)
|
|||||||
$content = str_replace("\n ", "\n ", $content);
|
$content = str_replace("\n ", "\n ", $content);
|
||||||
|
|
||||||
$content = get_text($content, 1);
|
$content = get_text($content, 1);
|
||||||
|
|
||||||
$content = url_auto_link($content);
|
$content = url_auto_link($content);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -10,13 +10,13 @@ if (!$co['co_id'])
|
|||||||
$g5['title'] = $co['co_subject'];
|
$g5['title'] = $co['co_subject'];
|
||||||
include_once('./_head.php');
|
include_once('./_head.php');
|
||||||
|
|
||||||
$str = conv_content($co['co_content'], $co['co_html'], $co['co_tag_filter_use']);
|
$co_content = $co['co_mobile_content'] ? $co['co_mobile_content'] : $co['co_content'];
|
||||||
|
$str = conv_content($co_content, $co['co_html'], $co['co_tag_filter_use']);
|
||||||
|
|
||||||
// $src 를 $dst 로 변환
|
// $src 를 $dst 로 변환
|
||||||
unset($src);
|
unset($src);
|
||||||
unset($dst);
|
unset($dst);
|
||||||
$src[] = "/{{쇼핑몰명}}|{{홈페이지제목}}/";
|
$src[] = "/{{쇼핑몰명}}|{{홈페이지제목}}/";
|
||||||
//$dst[] = $default[de_subject];
|
|
||||||
$dst[] = $config['cf_title'];
|
$dst[] = $config['cf_title'];
|
||||||
$src[] = "/{{회사명}}|{{상호}}/";
|
$src[] = "/{{회사명}}|{{상호}}/";
|
||||||
$dst[] = $default['de_admin_company_name'];
|
$dst[] = $default['de_admin_company_name'];
|
||||||
@ -44,21 +44,20 @@ $src[] = "/{{정보관리책임자e-mail}}|{{정보책임자e-mail}}/i";
|
|||||||
$dst[] = $default['de_admin_info_email'];
|
$dst[] = $default['de_admin_info_email'];
|
||||||
|
|
||||||
$str = preg_replace($src, $dst, $str);
|
$str = preg_replace($src, $dst, $str);
|
||||||
?>
|
|
||||||
|
|
||||||
<!-- 등록내용 시작 { -->
|
// 스킨경로
|
||||||
<article id="ctt" class="ctt_<?php echo $co_id; ?>">
|
if(trim($co['co_mobile_skin']) == '')
|
||||||
<header>
|
$co['co_mobile_skin'] = 'basic';
|
||||||
<h1><?php echo $g5['title']; ?></h1>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
<div id="ctt_con">
|
$content_skin_path = G5_MOBILE_PATH .'/'.G5_SKIN_DIR.'/content/'.$co['co_mobile_skin'];
|
||||||
<?php echo $str; ?>
|
$content_skin_url = G5_MOBILE_URL .'/'.G5_SKIN_DIR.'/content/'.$co['co_mobile_skin'];
|
||||||
</div>
|
$skin_file = $content_skin_path.'/content.skin.php';
|
||||||
|
|
||||||
</article>
|
if(is_file($skin_file)) {
|
||||||
<!-- } 등록내용 끝 -->
|
include($skin_file);
|
||||||
|
} else {
|
||||||
|
echo '<p>'.str_replace(G5_PATH.'/', '', $skin_file).'이 존재하지 않습니다.</p>';
|
||||||
|
}
|
||||||
|
|
||||||
<?php
|
|
||||||
include_once('./_tail.php');
|
include_once('./_tail.php');
|
||||||
?>
|
?>
|
||||||
|
|||||||
18
mobile/skin/content/basic/content.skin.php
Normal file
18
mobile/skin/content/basic/content.skin.php
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
<?php
|
||||||
|
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||||
|
|
||||||
|
// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
|
||||||
|
add_stylesheet('<link rel="stylesheet" href="'.$content_skin_url.'/style.css">', 0);
|
||||||
|
|
||||||
|
?>
|
||||||
|
|
||||||
|
<article id="ctt" class="ctt_<?php echo $co_id; ?>">
|
||||||
|
<header>
|
||||||
|
<h1><?php echo $g5['title']; ?></h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<div id="ctt_con">
|
||||||
|
<?php echo $str; ?>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</article>
|
||||||
8
mobile/skin/content/basic/style.css
Normal file
8
mobile/skin/content/basic/style.css
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
@charset "utf-8";
|
||||||
|
|
||||||
|
/* 내용관리 */
|
||||||
|
#ctt {margin:10px 0;padding:10px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9}
|
||||||
|
.ctt_admin {margin:0 5px;text-align:right}
|
||||||
|
#ctt header h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}
|
||||||
|
#ctt_con {padding:10px 0}
|
||||||
|
.ctt_img {text-align:center}
|
||||||
@ -6,7 +6,7 @@ add_stylesheet('<link rel="stylesheet" href="'.$latest_skin_url.'/style.css">',
|
|||||||
?>
|
?>
|
||||||
|
|
||||||
<div class="lt">
|
<div class="lt">
|
||||||
<a href="<?php echo G5_BBS_URL ?>/board.php?bo_table=<?php echo $bo_table ?>" class="lt_title" onclick="return false"><strong><?php echo $bo_subject ?></strong></a>
|
<a href="<?php echo G5_BBS_URL ?>/board.php?bo_table=<?php echo $bo_table ?>" class="lt_title"><strong><?php echo $bo_subject ?></strong></a>
|
||||||
<ul>
|
<ul>
|
||||||
<?php for ($i=0; $i<count($list); $i++) { ?>
|
<?php for ($i=0; $i<count($list); $i++) { ?>
|
||||||
<li>
|
<li>
|
||||||
|
|||||||
@ -52,6 +52,15 @@ if(G5_DEVICE_BUTTON_DISPLAY && G5_IS_MOBILE) {
|
|||||||
if ($config['cf_analytics']) {
|
if ($config['cf_analytics']) {
|
||||||
echo $config['cf_analytics'];
|
echo $config['cf_analytics'];
|
||||||
}
|
}
|
||||||
|
?>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
$(function() {
|
||||||
|
// 폰트 리사이즈 쿠키있으면 실행
|
||||||
|
font_resize("container", get_cookie("ck_font_resize_rmv_class"), get_cookie("ck_font_resize_add_class"));
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<?php
|
||||||
include_once(G5_PATH."/tail.sub.php");
|
include_once(G5_PATH."/tail.sub.php");
|
||||||
?>
|
?>
|
||||||
1
perms.sh
1
perms.sh
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
# kcp 본인확인 실행 파일
|
# kcp 본인확인 실행 파일
|
||||||
chmod 755 plugin/kcpcert/bin/ct_cli
|
chmod 755 plugin/kcpcert/bin/ct_cli
|
||||||
|
chmod 755 plugin/kcpcert/bin/ct_cli_x64
|
||||||
|
|
||||||
# okname 본인확인 실행 파일
|
# okname 본인확인 실행 파일
|
||||||
chmod 755 plugin/okname/bin/okname
|
chmod 755 plugin/okname/bin/okname
|
||||||
|
|||||||
@ -15,7 +15,7 @@
|
|||||||
<script type="text/javascript" src="./js/SE2B_Configuration_General.js" charset="utf-8"></script> <!-- 설정 파일 -->
|
<script type="text/javascript" src="./js/SE2B_Configuration_General.js" charset="utf-8"></script> <!-- 설정 파일 -->
|
||||||
<script type="text/javascript" src="./js/SE2BasicCreator.js?v3" charset="utf-8"></script>
|
<script type="text/javascript" src="./js/SE2BasicCreator.js?v3" charset="utf-8"></script>
|
||||||
|
|
||||||
<script src='js/smarteditor2.min.js' charset='utf-8'></script>
|
<script src='js/smarteditor2.min.js?v2' charset='utf-8'></script>
|
||||||
<script src='photo_uploader/plugin/hp_SE2M_AttachQuickPhoto.js' charset='utf-8'></script>
|
<script src='photo_uploader/plugin/hp_SE2M_AttachQuickPhoto.js' charset='utf-8'></script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|||||||
@ -12138,9 +12138,19 @@ nhn.husky.SE2M_Hyperlink = jindo.$Class({
|
|||||||
|
|
||||||
var sResult;
|
var sResult;
|
||||||
if (sWWWURL){
|
if (sWWWURL){
|
||||||
sResult = '<a href="http://'+sWWWURL+'">'+sURL+'</a>';
|
var exp = /([-a-zA-Z0-9@:%_\+.~#?&//=]{2,256}\.[a-z]{2,4}\b(\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?)/gi;
|
||||||
|
if( sWWWURL.match(exp) ){
|
||||||
|
sResult = sWWWURL.replace(exp, '<a href="http://$1" >$1</a>');
|
||||||
|
} else {
|
||||||
|
sResult = '<a href="http://'+sWWWURL+'">'+sURL+'</a>';
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
sResult = '<a href="'+sHTTPURL+'">'+sURL+'</a>';
|
var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
|
||||||
|
if( sHTTPURL.match(exp) ){
|
||||||
|
sResult = sHTTPURL.replace(exp,"<a href='$1'>$1</a>");
|
||||||
|
} else {
|
||||||
|
sResult = '<a href="'+sHTTPURL+'">'+sURL+'</a>';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return sBreaker+sResult;
|
return sBreaker+sResult;
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@ -26,11 +26,11 @@ function make_mp3()
|
|||||||
|
|
||||||
file_put_contents(G5_PATH.'/'.$mp3_file, $contents);
|
file_put_contents(G5_PATH.'/'.$mp3_file, $contents);
|
||||||
|
|
||||||
// 지난 캡챠 파일 삭제 (100번중에 한번만 실행)
|
// 지난 캡챠 파일 삭제
|
||||||
if (rand(0,99) == 0) {
|
if (rand(0,99) == 0) {
|
||||||
foreach (glob(G5_PATH.'/data/cache/kcaptcha-*.mp3') as $file) {
|
foreach (glob(G5_PATH.'/data/cache/kcaptcha-*.mp3') as $file) {
|
||||||
if (filemtime($file) + 86400 < G5_SERVER_TIME) {
|
if (filemtime($file) + 86400 < G5_SERVER_TIME) {
|
||||||
unset($file);
|
@unlink($file);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
BIN
plugin/kcpcert/bin/ct_cli_x64
Executable file
BIN
plugin/kcpcert/bin/ct_cli_x64
Executable file
Binary file not shown.
@ -101,8 +101,12 @@ if( $cert_enc_use == "Y" )
|
|||||||
if ( $ct_cert->check_valid_hash ( $home_dir , $dn_hash , $veri_str ) != "1" )
|
if ( $ct_cert->check_valid_hash ( $home_dir , $dn_hash , $veri_str ) != "1" )
|
||||||
{
|
{
|
||||||
// 검증 실패시 처리 영역
|
// 검증 실패시 처리 영역
|
||||||
|
if(PHP_INT_MAX == 2147483647) // 32-bit
|
||||||
|
$bin_exe = '/bin/ct_cli';
|
||||||
|
else
|
||||||
|
$bin_exe = '/bin/ct_cli_x64';
|
||||||
|
|
||||||
echo "dn_hash 변조 위험있음 (".G5_KCPCERT_PATH."/bin/ct_cli 파일에 실행권한이 있는지 확인하세요.)";
|
echo "dn_hash 변조 위험있음 (".G5_KCPCERT_PATH.$bin_exe." 파일에 실행권한이 있는지 확인하세요.)";
|
||||||
exit;
|
exit;
|
||||||
// 오류 처리 ( dn_hash 변조 위험있음)
|
// 오류 처리 ( dn_hash 변조 위험있음)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,19 +16,19 @@ class C_CT_CLI
|
|||||||
// 변수 초기화 영역
|
// 변수 초기화 영역
|
||||||
function mf_clear()
|
function mf_clear()
|
||||||
{
|
{
|
||||||
$this->m_dec_data="";
|
$this->m_dec_data="";
|
||||||
}
|
}
|
||||||
|
|
||||||
// hash 처리 영역
|
// hash 처리 영역
|
||||||
function make_hash_data( $home_dir , $str )
|
function make_hash_data( $home_dir , $str )
|
||||||
{
|
{
|
||||||
$hash_data = $this -> mf_exec( $home_dir . "/bin/ct_cli" ,
|
$hash_data = $this -> mf_exec( $home_dir . "/bin/ct_cli" ,
|
||||||
"lf_CT_CLI__make_hash_data",
|
"lf_CT_CLI__make_hash_data",
|
||||||
$str
|
$str
|
||||||
);
|
);
|
||||||
|
|
||||||
if ( $hash_data == "" ) { $hash_data = "HS01"; }
|
if ( $hash_data == "" ) { $hash_data = "HS01"; }
|
||||||
|
|
||||||
return $hash_data;
|
return $hash_data;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -49,7 +49,12 @@ class C_CT_CLI
|
|||||||
// 암호화 인증데이터 복호화
|
// 암호화 인증데이터 복호화
|
||||||
function decrypt_enc_cert ( $home_dir, $site_cd , $cert_no , $enc_cert_data , $opt)
|
function decrypt_enc_cert ( $home_dir, $site_cd , $cert_no , $enc_cert_data , $opt)
|
||||||
{
|
{
|
||||||
$dec_data = $this -> mf_exec( $home_dir . "/bin/ct_cli" ,
|
if(PHP_INT_MAX == 2147483647) // 32-bit
|
||||||
|
$bin_exe = $home_dir . '/bin/ct_cli';
|
||||||
|
else
|
||||||
|
$bin_exe = $home_dir . '/bin/ct_cli_x64';
|
||||||
|
|
||||||
|
$dec_data = $this -> mf_exec( $bin_exe ,
|
||||||
"lf_CT_CLI__decrypt_enc_cert" ,
|
"lf_CT_CLI__decrypt_enc_cert" ,
|
||||||
$site_cd ,
|
$site_cd ,
|
||||||
$cert_no ,
|
$cert_no ,
|
||||||
|
|||||||
17
skin/content/basic/content.skin.php
Normal file
17
skin/content/basic/content.skin.php
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
<?php
|
||||||
|
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||||
|
|
||||||
|
// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
|
||||||
|
add_stylesheet('<link rel="stylesheet" href="'.$content_skin_url.'/style.css">', 0);
|
||||||
|
?>
|
||||||
|
|
||||||
|
<article id="ctt" class="ctt_<?php echo $co_id; ?>">
|
||||||
|
<header>
|
||||||
|
<h1><?php echo $g5['title']; ?></h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<div id="ctt_con">
|
||||||
|
<?php echo $str; ?>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</article>
|
||||||
8
skin/content/basic/style.css
Normal file
8
skin/content/basic/style.css
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
@charset "utf-8";
|
||||||
|
|
||||||
|
/* 내용관리 */
|
||||||
|
#ctt {margin:10px 0;padding:10px;border:1px solid #e9e9e9}
|
||||||
|
.ctt_admin {text-align:right}
|
||||||
|
#ctt header h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}
|
||||||
|
#ctt_con {padding:10px 0}
|
||||||
|
.ctt_img {text-align:center}
|
||||||
Reference in New Issue
Block a user