From c9cd0307c62aef584fd357a2b282a7a5affda94c Mon Sep 17 00:00:00 2001 From: thisgun Date: Tue, 11 Feb 2014 11:13:13 +0900 Subject: [PATCH 1/7] =?UTF-8?q?=EC=98=81=EC=B9=B4=ED=8A=B85=20=EB=A9=94?= =?UTF-8?q?=EB=89=B4=EC=A4=91=20=EB=82=B4=EC=9A=A9=EA=B4=80=EB=A6=AC=20FAQ?= =?UTF-8?q?=EA=B4=80=EB=A6=AC=20=EB=A9=94=EB=89=B4=EB=A5=BC=20=EA=B7=B8?= =?UTF-8?q?=EB=88=84=EB=B3=B4=EB=93=9C5=EB=A1=9C=20=EC=98=AE=EA=B9=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- adm/admin.menu300.php | 2 + adm/contentform.php | 159 ++++++++++++++++++++++++++++++++++++ adm/contentformupdate.php | 77 +++++++++++++++++ adm/contentlist.php | 72 ++++++++++++++++ adm/faqform.php | 99 ++++++++++++++++++++++ adm/faqformupdate.php | 43 ++++++++++ adm/faqlist.php | 95 +++++++++++++++++++++ adm/faqmasterform.php | 133 ++++++++++++++++++++++++++++++ adm/faqmasterformupdate.php | 69 ++++++++++++++++ adm/faqmasterlist.php | 86 +++++++++++++++++++ bbs/content.php | 89 ++++++++++++++++++++ bbs/faq.php | 91 +++++++++++++++++++++ css/default.css | 24 ++++++ install/gnuboard5.sql | 51 ++++++++++++ install/install_db.php | 11 +++ lib/common.lib.php | 8 ++ 16 files changed, 1109 insertions(+) create mode 100644 adm/contentform.php create mode 100644 adm/contentformupdate.php create mode 100644 adm/contentlist.php create mode 100644 adm/faqform.php create mode 100644 adm/faqformupdate.php create mode 100644 adm/faqlist.php create mode 100644 adm/faqmasterform.php create mode 100644 adm/faqmasterformupdate.php create mode 100644 adm/faqmasterlist.php create mode 100644 bbs/content.php create mode 100644 bbs/faq.php diff --git a/adm/admin.menu300.php b/adm/admin.menu300.php index 01ca6a94f..1268109e0 100644 --- a/adm/admin.menu300.php +++ b/adm/admin.menu300.php @@ -6,5 +6,7 @@ $menu['menu300'] = array ( array('300300', '인기검색어관리', ''.G5_ADMIN_URL.'/popular_list.php', 'bbs_poplist', 1), array('300400', '인기검색어순위', ''.G5_ADMIN_URL.'/popular_rank.php', 'bbs_poprank', 1), array('300500', '1:1문의설정', ''.G5_ADMIN_URL.'/qa_config.php', 'qa'), + array('300600', '내용관리', G5_ADMIN_URL.'/contentlist.php', 'scf_contents', 1), + array('300700', 'FAQ관리', G5_ADMIN_URL.'/faqmasterlist.php', 'scf_faq', 1), ); ?> \ No newline at end of file diff --git a/adm/contentform.php b/adm/contentform.php new file mode 100644 index 000000000..8419ebdeb --- /dev/null +++ b/adm/contentform.php @@ -0,0 +1,159 @@ + + +
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
목록
+ + class="required frm_input" size="20" maxlength="20"> + 내용확인 +
내용
+ + +
+ + +
+ + 750) + $width = 750; + else + $width = $size[0]; + + echo ' '; + $himg_str = ''; + } + if ($himg_str) { + echo ''; + } + ?> +
+ + 750) + $width = 750; + else + $width = $size[0]; + + echo ' '; + $timg_str = ''; + } + if ($timg_str) { + echo ''; + } + ?> +
+
+ +
+ + 목록 +
+ +
+ + + + diff --git a/adm/contentformupdate.php b/adm/contentformupdate.php new file mode 100644 index 000000000..a3313bcb1 --- /dev/null +++ b/adm/contentformupdate.php @@ -0,0 +1,77 @@ + diff --git a/adm/contentlist.php b/adm/contentlist.php new file mode 100644 index 000000000..49e458a61 --- /dev/null +++ b/adm/contentlist.php @@ -0,0 +1,72 @@ + + +
+ 1) {?>처음으로 + 전체 내용 +
+ +
+ 내용 추가 +
+ +
+ + + + + + + + + + + + + + + + + '; + } + ?> + +
목록
ID제목관리
+ 보기 + 수정 + 삭제 +
자료가 한건도 없습니다.
+
+ + + + diff --git a/adm/faqform.php b/adm/faqform.php new file mode 100644 index 000000000..b3852c07e --- /dev/null +++ b/adm/faqform.php @@ -0,0 +1,99 @@ + + +
+ + + + +
+ + + + + + + + + + + + + + + + + + + + +
+ + + 내용보기 +
질문
답변
+
+ +
+ + 목록 +
+ +
+ + + + diff --git a/adm/faqformupdate.php b/adm/faqformupdate.php new file mode 100644 index 000000000..722a6c3a4 --- /dev/null +++ b/adm/faqformupdate.php @@ -0,0 +1,43 @@ + diff --git a/adm/faqlist.php b/adm/faqlist.php new file mode 100644 index 000000000..94b4a547e --- /dev/null +++ b/adm/faqlist.php @@ -0,0 +1,95 @@ + + +
+ 등록된 FAQ 상세내용 건 +
+ +
+
    +
  1. FAQ는 무제한으로 등록할 수 있습니다
  2. +
  3. FAQ 상세내용 추가를 눌러 자주하는 질문과 답변을 입력합니다.
  4. +
+
+ +
+ FAQ 상세내용 추가 +
+ +
+ + + + + + + + + + + + + + + + + + + + + '; + } + ?> + +
목록
번호제목순서관리
+ 수정 + 삭제 +
자료가 없습니다.
+ +
+ +
+ FAQ 관리 +
+ + + diff --git a/adm/faqmasterform.php b/adm/faqmasterform.php new file mode 100644 index 000000000..c8d3ec903 --- /dev/null +++ b/adm/faqmasterform.php @@ -0,0 +1,133 @@ + + +
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + 보기 + 상세보기 + +
+ + 750) + $width = 750; + else + $width = $size[0]; + + echo ' '; + $himg_str = ''; + } + if ($himg_str) { + echo ''; + } + ?> +
+ + 750) + $width = 750; + else + $width = $size[0]; + + echo ''; + $timg_str = ''; + } + if ($timg_str) { + echo ''; + } + ?> +
상단 내용 + +
하단 내용 + +
+
+ +
+ + 목록 +
+ +
+ + + + diff --git a/adm/faqmasterformupdate.php b/adm/faqmasterformupdate.php new file mode 100644 index 000000000..fa6d44a03 --- /dev/null +++ b/adm/faqmasterformupdate.php @@ -0,0 +1,69 @@ + diff --git a/adm/faqmasterlist.php b/adm/faqmasterlist.php new file mode 100644 index 000000000..d1a945108 --- /dev/null +++ b/adm/faqmasterlist.php @@ -0,0 +1,86 @@ + + +
+ 1) {?>처음으로 + 전체 FAQ +
+ +
+
    +
  1. FAQ는 무제한으로 등록할 수 있습니다
  2. +
  3. FAQ추가를 눌러 FAQ Master를 생성합니다. (하나의 FAQ 타이틀 생성 : 자주하시는 질문, 이용안내..등 )
  4. +
  5. 생성한 FAQ Master 의 제목을 눌러 세부 내용을 관리할 수 있습니다.
  6. +
+
+ +
+ FAQ추가 +
+ +
+ + + + + + + + + + + + + + + + + + + '; + } + ?> + +
목록
ID제목FAQ수관리
+ 보기 + 수정 + 삭제 +
자료가 한건도 없습니다.
+
+ + + + diff --git a/bbs/content.php b/bbs/content.php new file mode 100644 index 000000000..44feaefdf --- /dev/null +++ b/bbs/content.php @@ -0,0 +1,89 @@ +내용 수정'; +?> + + +'; +?> + +
+
+

+
+ +
+ +
+ +
+ +'; + +if ($is_admin) + echo '
내용 수정
'; +?> + + + diff --git a/bbs/faq.php b/bbs/faq.php new file mode 100644 index 000000000..4fb89c199 --- /dev/null +++ b/bbs/faq.php @@ -0,0 +1,91 @@ + + +FAQ 수정'; +?> + + +'; + +// 상단 HTML +echo '
'.stripslashes($fm['fm_head_html']).'
'; +?> + +
+ +
+

목차

+
    + +
  1. + 1) echo '
'; + ?> + + +
+

내용

+
    + +
  1. +

    +

    + +

    + +
  2. + 1) echo '
'; + + if ($i == 1) echo '

등록된 FAQ가 없습니다.
FAQ를 새로 등록하시려면 FAQ관리 메뉴를 이용하십시오.

'; + ?> +
+ +'.stripslashes($fm['fm_tail_html']).''; + +$timg = G5_DATA_PATH.'/faq/'.$fm_id.'_t'; +if (file_exists($timg)) + echo '
'; +?> + + +FAQ 수정'; + +include_once('./_tail.php'); +?> diff --git a/css/default.css b/css/default.css index 9a9b550ca..094bbedf6 100644 --- a/css/default.css +++ b/css/default.css @@ -104,6 +104,30 @@ a:hover, a:focus, a:active {color:#000;text-decoration:underline} .copymove_current {float:right;color:#ff3061} .copymove_currentbg {background:#f4f4f4} +/* 내용관리 */ +#socc {margin:10px 0;padding:10px;border:1px solid #e9e9e9} +.socc_admin {text-align:right} +#socc header h1 {position:absolute;font-size:0;line-height:0;overflow:hidden} +#socc_con {padding:10px 0} +.socc_img {text-align:center} + +/* FAQ 관리 */ +#sfaq_wrap {margin:10px 0} +#sfaq_wrap h2 {position:absolute;font-size:0;line-height:0;overflow:hidden} +.sfaq_admin {text-align:right} +#sfaq_wrap ol {margin:0;padding:0;list-style:none} +#sfaq_list {margin:0 0 10px;border:1px solid #ccc} +#sfaq_list li {border-bottom:1px solid #fff;background:#f2f5f9} +#sfaq_list a {display:block;padding:10px;font-weight:bold;text-decoration:none} +#sfaq_list a:focus, +#sfaq_list a:hover {background:#626870;color:#fff} +#sfaq_con {border:1px solid #e9e9e9;border-top:0} +#sfaq_con li {padding:0 0 10px} +#sfaq_con h3 {padding:10px;background:#f2f5f9;border-top:1px solid #e9e9e9} +#sfaq_con p {padding:10px} +.sfaq_tolist {padding:0 10px;text-align:right} +.sfaq_img {text-align:center} + /* 화면낭독기 사용자용 */ #hd_login_msg {position:absolute;top:0;left:0;font-size:0;line-height:0;overflow:hidden} .msg_sound_only, .sound_only {display:inline-block !important;position:absolute;top:0;left:0;margin:0 !important;padding:0 !important;font-size:0;line-height:0;border:0 !important;overflow:hidden !important} diff --git a/install/gnuboard5.sql b/install/gnuboard5.sql index 5b1177987..5da626de8 100644 --- a/install/gnuboard5.sql +++ b/install/gnuboard5.sql @@ -784,3 +784,54 @@ CREATE TABLE IF NOT EXISTS `g5_qa_content` ( ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- -------------------------------------------------------- + +-- +-- Table structure for table `g5_content` +-- + +DROP TABLE IF EXISTS `g5_content`; +CREATE TABLE IF NOT EXISTS `g5_content` ( + `co_id` varchar(20) NOT NULL DEFAULT '', + `co_html` tinyint(4) NOT NULL DEFAULT '0', + `co_subject` varchar(255) NOT NULL DEFAULT '', + `co_content` longtext NOT NULL, + `co_hit` int(11) NOT NULL DEFAULT '0', + `co_include_head` varchar(255) NOT NULL, + `co_include_tail` varchar(255) NOT NULL, + PRIMARY KEY (`co_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `g5_faq` +-- + +DROP TABLE IF EXISTS `g5_faq`; +CREATE TABLE IF NOT EXISTS `g5_faq` ( + `fa_id` int(11) NOT NULL AUTO_INCREMENT, + `fm_id` int(11) NOT NULL DEFAULT '0', + `fa_subject` text NOT NULL, + `fa_content` text NOT NULL, + `fa_order` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`fa_id`), + KEY `fm_id` (`fm_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `g5_faq_master` +-- + +DROP TABLE IF EXISTS `g5_faq_master`; +CREATE TABLE IF NOT EXISTS `g5_faq_master` ( + `fm_id` int(11) NOT NULL AUTO_INCREMENT, + `fm_subject` varchar(255) NOT NULL DEFAULT '', + `fm_head_html` text NOT NULL, + `fm_tail_html` text NOT NULL, + `fm_order` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`fm_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +-- -------------------------------------------------------- \ No newline at end of file diff --git a/install/install_db.php b/install/install_db.php index 0989f4a2b..bb95fd13b 100644 --- a/install/install_db.php +++ b/install/install_db.php @@ -173,6 +173,14 @@ $sql = " insert into `{$table_prefix}member` mb_ip = '{$_SERVER['REMOTE_ADDR']}' "; @mysql_query($sql); + +// 내용관리 생성 +@mysql_query(" insert into `{$table_prefix}content` set co_id = 'company', co_html = '1', co_subject = '회사소개', co_content= '

회사소개에 대한 내용을 입력하십시오.

' ") or die(mysql_error() . "

" . $sql); +@mysql_query(" insert into `{$table_prefix}content` set co_id = 'privacy', co_html = '1', co_subject = '개인정보 처리방침', co_content= '

개인정보 처리방침에 대한 내용을 입력하십시오.

' ") or die(mysql_error() . "

" . $sql); +@mysql_query(" insert into `{$table_prefix}content` set co_id = 'provision', co_html = '1', co_subject = '서비스 이용약관', co_content= '

서비스 이용약관에 대한 내용을 입력하십시오.

' ") or die(mysql_error() . "

" . $sql); + +// FAQ Master +@mysql_query(" insert into `{$table_prefix}faq_master` set fm_id = '1', fm_subject = '자주하시는 질문' ") or die(mysql_error() . "

" . $sql); ?>

  • DB설정 완료
  • @@ -240,6 +248,9 @@ fwrite($f, "\$g5['autosave_table'] = G5_TABLE_PREFIX.'autosave'; // 게시글 fwrite($f, "\$g5['cert_history_table'] = G5_TABLE_PREFIX.'cert_history'; // 인증내역 테이블\n"); fwrite($f, "\$g5['qa_config_table'] = G5_TABLE_PREFIX.'qa_config'; // 1:1문의 설정테이블\n"); fwrite($f, "\$g5['qa_content_table'] = G5_TABLE_PREFIX.'qa_content'; // 1:1문의 테이블\n"); +fwrite($f, "\$g5['content_table'] = G5_TABLE_PREFIX.'content'; // 내용(컨텐츠)정보 테이블\n"); +fwrite($f, "\$g5['faq_table'] = G5_TABLE_PREFIX.'faq'; // 자주하시는 질문 테이블\n"); +fwrite($f, "\$g5['faq_master_table'] = G5_TABLE_PREFIX.'faq_master'; // 자주하시는 질문 마스터 테이블\n"); fwrite($f, "?>"); fclose($f); diff --git a/lib/common.lib.php b/lib/common.lib.php index bdd7069d8..29f14485c 100644 --- a/lib/common.lib.php +++ b/lib/common.lib.php @@ -2535,4 +2535,12 @@ function check_input_vars() } } } + +// HTML 특수문자 변환 htmlspecialchars +function htmlspecialchars2($str) +{ + $trans = array("\"" => """, "'" => "'", "<"=>"<", ">"=>">"); + $str = strtr($str, $trans); + return $str; +} ?> \ No newline at end of file From 0463ecc23fd401e34fdec673fd92710625a83e3b Mon Sep 17 00:00:00 2001 From: chicpro Date: Thu, 13 Feb 2014 13:30:06 +0900 Subject: [PATCH 2/7] =?UTF-8?q?html=5Fend=20=ED=95=A8=EC=88=98=EB=A5=BC=20?= =?UTF-8?q?class=EB=A1=9C=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/common.lib.php | 111 +++++++++++++++++++++++++++++---------------- 1 file changed, 72 insertions(+), 39 deletions(-) diff --git a/lib/common.lib.php b/lib/common.lib.php index bdd7069d8..1891e2495 100644 --- a/lib/common.lib.php +++ b/lib/common.lib.php @@ -2170,47 +2170,80 @@ if (!function_exists('file_put_contents')) { // HTML 마지막 처리 function html_end() { - global $config, $g5, $member; - - // 현재접속자 처리 - $tmp_sql = " select count(*) as cnt from {$g5['login_table']} where lo_ip = '{$_SERVER['REMOTE_ADDR']}' "; - $tmp_row = sql_fetch($tmp_sql); - - if ($tmp_row['cnt']) { - $tmp_sql = " update {$g5['login_table']} set mb_id = '{$member['mb_id']}', lo_datetime = '".G5_TIME_YMDHIS."', lo_location = '{$g5['lo_location']}', lo_url = '{$g5['lo_url']}' where lo_ip = '{$_SERVER['REMOTE_ADDR']}' "; - sql_query($tmp_sql, FALSE); - } else { - $tmp_sql = " insert into {$g5['login_table']} ( lo_ip, mb_id, lo_datetime, lo_location, lo_url ) values ( '{$_SERVER['REMOTE_ADDR']}', '{$member['mb_id']}', '".G5_TIME_YMDHIS."', '{$g5['lo_location']}', '{$g5['lo_url']}' ) "; - sql_query($tmp_sql, FALSE); - - // 시간이 지난 접속은 삭제한다 - sql_query(" delete from {$g5['login_table']} where lo_datetime < '".date("Y-m-d H:i:s", G5_SERVER_TIME - (60 * $config['cf_login_minutes']))."' "); - - // 부담(overhead)이 있다면 테이블 최적화 - //$row = sql_fetch(" SHOW TABLE STATUS FROM `$mysql_db` LIKE '$g5['login_table']' "); - //if ($row['Data_free'] > 0) sql_query(" OPTIMIZE TABLE $g5['login_table'] "); - } - - // 버퍼의 내용에서 body 태그 중간의 외부 css 파일을 CAPTURE 하여 head 태그로 이동시켜준다. - $buffer = ob_get_contents(); - ob_end_clean(); - preg_match('#(.*)#is', $buffer, $bodys); - preg_match_all('/[\n\r]?(]+>).*()?/i', $bodys[0], $links); - $stylesheet = ''; - $links[0] = array_unique($links[0]); - foreach ($links[0] as $key=>$link) { - //$link = PHP_EOL.$links[0][$i]; - $stylesheet .= $link; - $buffer = preg_replace('#'.$link.'#', '', $buffer); - } - /* - - - 밑으로 스킨의 스타일시트가 위치하도록 하게 한다. - */ - return preg_replace('#([^<]*]+>)#', "$1$stylesheet", $buffer); + $end = new html_process(); + return $end->run(); } +class html_process { + protected $links = array(); + + function css_callback1($m) { + $s = $m[0]; + if(preg_match('/]+>/i', $s)) { + preg_match_all("/(]+>)|(]+>)/is", $s, $m); + $this->links = array_merge($this->links, $m[0]); + } + return ''; + } + + function css_callback2($m) { + $this->links = array_merge($this->links, array($m[0])); + return ''; + } + + function run() + { + global $config, $g5, $member, $css; + + // 현재접속자 처리 + $tmp_sql = " select count(*) as cnt from {$g5['login_table']} where lo_ip = '{$_SERVER['REMOTE_ADDR']}' "; + $tmp_row = sql_fetch($tmp_sql); + + if ($tmp_row['cnt']) { + $tmp_sql = " update {$g5['login_table']} set mb_id = '{$member['mb_id']}', lo_datetime = '".G5_TIME_YMDHIS."', lo_location = '{$g5['lo_location']}', lo_url = '{$g5['lo_url']}' where lo_ip = '{$_SERVER['REMOTE_ADDR']}' "; + sql_query($tmp_sql, FALSE); + } else { + $tmp_sql = " insert into {$g5['login_table']} ( lo_ip, mb_id, lo_datetime, lo_location, lo_url ) values ( '{$_SERVER['REMOTE_ADDR']}', '{$member['mb_id']}', '".G5_TIME_YMDHIS."', '{$g5['lo_location']}', '{$g5['lo_url']}' ) "; + sql_query($tmp_sql, FALSE); + + // 시간이 지난 접속은 삭제한다 + sql_query(" delete from {$g5['login_table']} where lo_datetime < '".date("Y-m-d H:i:s", G5_SERVER_TIME - (60 * $config['cf_login_minutes']))."' "); + + // 부담(overhead)이 있다면 테이블 최적화 + //$row = sql_fetch(" SHOW TABLE STATUS FROM `$mysql_db` LIKE '$g5['login_table']' "); + //if ($row['Data_free'] > 0) sql_query(" OPTIMIZE TABLE $g5['login_table'] "); + } + + // 버퍼의 내용에서 body 태그 중간의 외부 css 파일을 CAPTURE 하여 head 태그로 이동시켜준다. + $buffer = ob_get_contents(); + ob_end_clean(); + preg_match('#(.*)#is', $buffer, $bodys); + + $bodys = preg_replace_callback("//is", 'html_process::css_callback1', $bodys); + $bodys = preg_replace_callback("//is", 'html_process::css_callback2', $bodys); + $bodys = preg_replace_callback("/]+>/is", 'html_process::css_callback2', $bodys); + + $links = array_unique($this->links); + + $stylesheet = ''; + + foreach($links as $link) { + if(!trim($link)) + continue; + + if(preg_match('/]+>/i', $link)) + $buffer = preg_replace('#'.$link.'#', '', $buffer); + + $stylesheet .= PHP_EOL.$link; + } + /* + + + 밑으로 스킨의 스타일시트가 위치하도록 하게 한다. + */ + return preg_replace('#([^<]*]+>)#', "$1$stylesheet", $buffer); + } +} // 휴대폰번호의 숫자만 취한 후 중간에 하이픈(-)을 넣는다. function hyphen_hp_number($hp) From 294d8ad651ec1a5d5bad68171a47b31ed4029d35 Mon Sep 17 00:00:00 2001 From: chicpro Date: Thu, 13 Feb 2014 16:43:26 +0900 Subject: [PATCH 3/7] =?UTF-8?q?=EC=8A=A4=ED=82=A8=EC=9D=98=20css=20?= =?UTF-8?q?=ED=8C=8C=EC=9D=BC=20=EC=A7=80=EC=A0=95=20=EB=B0=A9=EB=B2=95=20?= =?UTF-8?q?=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common.php | 2 + lib/common.lib.php | 68 +++++++++++-------- mobile/skin/board/basic/list.skin.php | 5 +- mobile/skin/board/basic/view.skin.php | 4 +- mobile/skin/board/basic/write.skin.php | 5 +- mobile/skin/connect/basic/connect.skin.php | 5 +- .../connect/basic/current_connect.skin.php | 5 +- mobile/skin/latest/basic/latest.skin.php | 5 +- mobile/skin/member/basic/formmail.skin.php | 5 +- mobile/skin/member/basic/login.skin.php | 5 +- .../skin/member/basic/member_confirm.skin.php | 5 +- mobile/skin/member/basic/memo.skin.php | 5 +- mobile/skin/member/basic/memo_form.skin.php | 5 +- mobile/skin/member/basic/memo_view.skin.php | 5 +- mobile/skin/member/basic/password.skin.php | 5 +- .../skin/member/basic/password_lost.skin.php | 7 +- mobile/skin/member/basic/profile.skin.php | 5 +- mobile/skin/member/basic/register.skin.php | 9 +-- .../skin/member/basic/register_form.skin.php | 5 +- .../member/basic/register_result.skin.php | 5 +- mobile/skin/member/basic/scrap.skin.php | 5 +- mobile/skin/member/basic/scrap_popin.skin.php | 5 +- mobile/skin/member/basic/zip.skin.php | 4 +- mobile/skin/new/basic/new.skin.php | 9 +-- .../skin/outlogin/basic/outlogin.skin.1.php | 5 +- .../skin/outlogin/basic/outlogin.skin.2.php | 5 +- mobile/skin/poll/basic/poll.skin.php | 9 +-- mobile/skin/poll/basic/poll_result.skin.php | 5 +- mobile/skin/popular/basic/popular.skin.php | 7 +- mobile/skin/qa/basic/list.skin.php | 5 +- mobile/skin/qa/basic/view.skin.php | 4 +- mobile/skin/qa/basic/write.skin.php | 5 +- mobile/skin/search/basic/search.skin.php | 11 +-- mobile/skin/visit/basic/visit.skin.php | 5 +- skin/board/basic/list.skin.php | 5 +- skin/board/basic/view.skin.php | 4 +- skin/board/basic/write.skin.php | 5 +- skin/board/gallery/list.skin.php | 5 +- skin/board/gallery/view.skin.php | 4 +- skin/board/gallery/write.skin.php | 5 +- skin/connect/basic/connect.skin.php | 5 +- skin/connect/basic/current_connect.skin.php | 5 +- skin/latest/basic/latest.skin.php | 5 +- skin/member/basic/formmail.skin.php | 5 +- skin/member/basic/login.skin.php | 5 +- skin/member/basic/member_confirm.skin.php | 5 +- skin/member/basic/memo.skin.php | 5 +- skin/member/basic/memo_form.skin.php | 5 +- skin/member/basic/memo_view.skin.php | 5 +- skin/member/basic/password.skin.php | 5 +- skin/member/basic/password_lost.skin.php | 7 +- skin/member/basic/profile.skin.php | 5 +- skin/member/basic/register.skin.php | 9 +-- skin/member/basic/register_form.skin.php | 5 +- skin/member/basic/register_result.skin.php | 5 +- skin/member/basic/scrap.skin.php | 5 +- skin/member/basic/scrap_popin.skin.php | 7 +- skin/member/basic/zip.skin.php | 4 +- skin/new/basic/new.skin.php | 9 +-- skin/outlogin/basic/outlogin.skin.1.php | 5 +- skin/outlogin/basic/outlogin.skin.2.php | 3 + skin/poll/basic/poll.skin.php | 9 +-- skin/poll/basic/poll_result.skin.php | 5 +- skin/popular/basic/popular.skin.php | 7 +- skin/qa/basic/list.skin.php | 5 +- skin/qa/basic/view.skin.php | 4 +- skin/qa/basic/write.skin.php | 5 +- skin/search/basic/search.skin.php | 11 +-- skin/visit/basic/visit.skin.php | 5 +- 69 files changed, 266 insertions(+), 176 deletions(-) diff --git a/common.php b/common.php index 82847dfc6..a1c2fa1a1 100644 --- a/common.php +++ b/common.php @@ -489,4 +489,6 @@ header('Last-Modified: ' . $gmnow); header('Cache-Control: no-store, no-cache, must-revalidate'); // HTTP/1.1 header('Cache-Control: pre-check=0, post-check=0, max-age=0'); // HTTP/1.1 header('Pragma: no-cache'); // HTTP/1.0 + +$html_process = new html_process(); ?> \ No newline at end of file diff --git a/lib/common.lib.php b/lib/common.lib.php index 1891e2495..29c7e7b01 100644 --- a/lib/common.lib.php +++ b/lib/common.lib.php @@ -2170,30 +2170,41 @@ if (!function_exists('file_put_contents')) { // HTML 마지막 처리 function html_end() { - $end = new html_process(); - return $end->run(); + global $html_process; + + return $html_process->run(); +} + +function add_stylesheet($stylesheet, $order=0) +{ + global $html_process; + + if(trim($stylesheet)) + $html_process->merge_stylesheet($stylesheet, $order); } class html_process { - protected $links = array(); + protected $css = array(); - function css_callback1($m) { - $s = $m[0]; - if(preg_match('/]+>/i', $s)) { - preg_match_all("/(]+>)|(]+>)/is", $s, $m); - $this->links = array_merge($this->links, $m[0]); + function merge_stylesheet($stylesheet, $order) + { + $links = $this->css; + $is_merge = true; + + foreach($links as $link) { + if($link[1] == $stylesheet) { + $is_merge = false; + break; + } } - return ''; - } - function css_callback2($m) { - $this->links = array_merge($this->links, array($m[0])); - return ''; + if($is_merge) + $this->css[] = array($order, $stylesheet); } function run() { - global $config, $g5, $member, $css; + global $config, $g5, $member; // 현재접속자 처리 $tmp_sql = " select count(*) as cnt from {$g5['login_table']} where lo_ip = '{$_SERVER['REMOTE_ADDR']}' "; @@ -2214,28 +2225,29 @@ class html_process { //if ($row['Data_free'] > 0) sql_query(" OPTIMIZE TABLE $g5['login_table'] "); } - // 버퍼의 내용에서 body 태그 중간의 외부 css 파일을 CAPTURE 하여 head 태그로 이동시켜준다. $buffer = ob_get_contents(); ob_end_clean(); - preg_match('#(.*)#is', $buffer, $bodys); - - $bodys = preg_replace_callback("//is", 'html_process::css_callback1', $bodys); - $bodys = preg_replace_callback("//is", 'html_process::css_callback2', $bodys); - $bodys = preg_replace_callback("/]+>/is", 'html_process::css_callback2', $bodys); - - $links = array_unique($this->links); $stylesheet = ''; + $links = $this->css; - foreach($links as $link) { - if(!trim($link)) - continue; + if(!empty($links)) { + foreach ($links as $key => $row) { + $order[$key] = $row[0]; + $index[$key] = $key; + $style[$key] = $row[1]; + } - if(preg_match('/]+>/i', $link)) - $buffer = preg_replace('#'.$link.'#', '', $buffer); + array_multisort($order, SORT_ASC, $index, SORT_ASC, $links); - $stylesheet .= PHP_EOL.$link; + foreach($links as $link) { + if(!trim($link[1])) + continue; + + $stylesheet .= PHP_EOL.$link[1]; + } } + /* diff --git a/mobile/skin/board/basic/list.skin.php b/mobile/skin/board/basic/list.skin.php index 7d2d690aa..5b72909c1 100644 --- a/mobile/skin/board/basic/list.skin.php +++ b/mobile/skin/board/basic/list.skin.php @@ -7,9 +7,10 @@ $colspan = 5; if ($is_checkbox) $colspan++; if ($is_good) $colspan++; if ($is_nogood) $colspan++; -?> - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>

    목록

    diff --git a/mobile/skin/board/basic/view.skin.php b/mobile/skin/board/basic/view.skin.php index 891d13005..fd6192049 100644 --- a/mobile/skin/board/basic/view.skin.php +++ b/mobile/skin/board/basic/view.skin.php @@ -1,9 +1,11 @@ ', 0); ?> -
    diff --git a/mobile/skin/board/basic/write.skin.php b/mobile/skin/board/basic/write.skin.php index da1589e9b..b15f921b7 100644 --- a/mobile/skin/board/basic/write.skin.php +++ b/mobile/skin/board/basic/write.skin.php @@ -1,8 +1,9 @@ - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>

    diff --git a/mobile/skin/connect/basic/connect.skin.php b/mobile/skin/connect/basic/connect.skin.php index c74b4f8ef..55849443c 100644 --- a/mobile/skin/connect/basic/connect.skin.php +++ b/mobile/skin/connect/basic/connect.skin.php @@ -1,8 +1,9 @@ ', 0); ?> - - diff --git a/mobile/skin/connect/basic/current_connect.skin.php b/mobile/skin/connect/basic/current_connect.skin.php index 344b6f9cc..5d47774b7 100644 --- a/mobile/skin/connect/basic/current_connect.skin.php +++ b/mobile/skin/connect/basic/current_connect.skin.php @@ -1,8 +1,9 @@ - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>
    diff --git a/mobile/skin/latest/basic/latest.skin.php b/mobile/skin/latest/basic/latest.skin.php index 373997428..89ac1b4b8 100644 --- a/mobile/skin/latest/basic/latest.skin.php +++ b/mobile/skin/latest/basic/latest.skin.php @@ -1,8 +1,9 @@ - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>
    diff --git a/mobile/skin/member/basic/formmail.skin.php b/mobile/skin/member/basic/formmail.skin.php index e25d4c997..3add8546b 100644 --- a/mobile/skin/member/basic/formmail.skin.php +++ b/mobile/skin/member/basic/formmail.skin.php @@ -1,8 +1,9 @@ - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>

    님께 메일보내기

    diff --git a/mobile/skin/member/basic/login.skin.php b/mobile/skin/member/basic/login.skin.php index 3a0ac2d2f..3274b7dd8 100644 --- a/mobile/skin/member/basic/login.skin.php +++ b/mobile/skin/member/basic/login.skin.php @@ -1,8 +1,9 @@ - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>

    diff --git a/mobile/skin/member/basic/member_confirm.skin.php b/mobile/skin/member/basic/member_confirm.skin.php index b792be152..467b801e0 100644 --- a/mobile/skin/member/basic/member_confirm.skin.php +++ b/mobile/skin/member/basic/member_confirm.skin.php @@ -1,8 +1,9 @@ - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>

    diff --git a/mobile/skin/member/basic/memo.skin.php b/mobile/skin/member/basic/memo.skin.php index ece3e6aca..f6cbbb7af 100644 --- a/mobile/skin/member/basic/memo.skin.php +++ b/mobile/skin/member/basic/memo.skin.php @@ -1,8 +1,9 @@ - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>

    diff --git a/mobile/skin/member/basic/memo_form.skin.php b/mobile/skin/member/basic/memo_form.skin.php index 2edb425ef..47d0355f0 100644 --- a/mobile/skin/member/basic/memo_form.skin.php +++ b/mobile/skin/member/basic/memo_form.skin.php @@ -1,8 +1,9 @@ - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>

    쪽지보내기

    diff --git a/mobile/skin/member/basic/memo_view.skin.php b/mobile/skin/member/basic/memo_view.skin.php index cca59b368..13e7bc542 100644 --- a/mobile/skin/member/basic/memo_view.skin.php +++ b/mobile/skin/member/basic/memo_view.skin.php @@ -9,9 +9,10 @@ else { $kind_str = "받는"; $kind_date = "보낸"; } -?> - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>

    diff --git a/mobile/skin/member/basic/password.skin.php b/mobile/skin/member/basic/password.skin.php index a92dc1bc6..7a73f21e9 100644 --- a/mobile/skin/member/basic/password.skin.php +++ b/mobile/skin/member/basic/password.skin.php @@ -5,9 +5,10 @@ if ($w == 'x') $delete_str = "댓"; if ($w == 'u') $g5['title'] = $delete_str."글 수정"; else if ($w == 'd' || $w == 'x') $g5['title'] = $delete_str."글 삭제"; else $g5['title'] = $g5['title']; -?> - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>

    diff --git a/mobile/skin/member/basic/password_lost.skin.php b/mobile/skin/member/basic/password_lost.skin.php index c710e7c47..a4e1d11ef 100644 --- a/mobile/skin/member/basic/password_lost.skin.php +++ b/mobile/skin/member/basic/password_lost.skin.php @@ -1,8 +1,9 @@ +if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가 - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>

    아이디/비밀번호 찾기

    diff --git a/mobile/skin/member/basic/profile.skin.php b/mobile/skin/member/basic/profile.skin.php index a4879270c..0cc8d8d02 100644 --- a/mobile/skin/member/basic/profile.skin.php +++ b/mobile/skin/member/basic/profile.skin.php @@ -1,8 +1,9 @@ - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>

    님의 프로필

    diff --git a/mobile/skin/member/basic/register.skin.php b/mobile/skin/member/basic/register.skin.php index 7026c0caa..76069e2df 100644 --- a/mobile/skin/member/basic/register.skin.php +++ b/mobile/skin/member/basic/register.skin.php @@ -1,8 +1,9 @@ +if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가 - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>
    @@ -35,7 +36,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가 diff --git a/mobile/skin/member/basic/register_result.skin.php b/mobile/skin/member/basic/register_result.skin.php index d7472f2fc..70c88f602 100644 --- a/mobile/skin/member/basic/register_result.skin.php +++ b/mobile/skin/member/basic/register_result.skin.php @@ -1,8 +1,9 @@ - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>
    diff --git a/mobile/skin/member/basic/scrap.skin.php b/mobile/skin/member/basic/scrap.skin.php index b7c3d4fa7..c47e3cd80 100644 --- a/mobile/skin/member/basic/scrap.skin.php +++ b/mobile/skin/member/basic/scrap.skin.php @@ -1,8 +1,9 @@ - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>

    diff --git a/mobile/skin/member/basic/scrap_popin.skin.php b/mobile/skin/member/basic/scrap_popin.skin.php index 833f1e128..04dfd5fd3 100644 --- a/mobile/skin/member/basic/scrap_popin.skin.php +++ b/mobile/skin/member/basic/scrap_popin.skin.php @@ -1,8 +1,9 @@ - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>

    스크랩하기

    diff --git a/mobile/skin/member/basic/zip.skin.php b/mobile/skin/member/basic/zip.skin.php index c4fa75a77..4a1413b95 100644 --- a/mobile/skin/member/basic/zip.skin.php +++ b/mobile/skin/member/basic/zip.skin.php @@ -1,9 +1,11 @@ ', 0); ?> -
    diff --git a/mobile/skin/new/basic/new.skin.php b/mobile/skin/new/basic/new.skin.php index 120d71fd2..30d3aee83 100644 --- a/mobile/skin/new/basic/new.skin.php +++ b/mobile/skin/new/basic/new.skin.php @@ -1,8 +1,9 @@ +if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가 - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>
    @@ -41,7 +42,7 @@ if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
    - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?> - +
    diff --git a/skin/member/basic/zip.skin.php b/skin/member/basic/zip.skin.php index 8586bc4e0..a99a6ae79 100644 --- a/skin/member/basic/zip.skin.php +++ b/skin/member/basic/zip.skin.php @@ -1,9 +1,11 @@ ', 0); ?> -
    diff --git a/skin/new/basic/new.skin.php b/skin/new/basic/new.skin.php index 935377785..da1e31a75 100644 --- a/skin/new/basic/new.skin.php +++ b/skin/new/basic/new.skin.php @@ -1,8 +1,9 @@ +if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가 - +// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨 +add_stylesheet('', 0); +?>
    @@ -63,7 +64,7 @@ if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가 ', 0); ?> - -

    회원로그인

    diff --git a/skin/outlogin/basic/outlogin.skin.2.php b/skin/outlogin/basic/outlogin.skin.2.php index 3631ab5fc..fc508b166 100644 --- a/skin/outlogin/basic/outlogin.skin.2.php +++ b/skin/outlogin/basic/outlogin.skin.2.php @@ -1,5 +1,8 @@ ', 0); ?> diff --git a/skin/poll/basic/poll.skin.php b/skin/poll/basic/poll.skin.php index 87848f54e..05d3260e1 100644 --- a/skin/poll/basic/poll.skin.php +++ b/skin/poll/basic/poll.skin.php @@ -1,10 +1,11 @@ ', 0); ?> - - @@ -47,8 +48,8 @@ function fpoll_submit(f) return false; } - var new_win = window.open("about:blank", "win_poll", "width=616,height=500,scrollbars=yes,resizable=yes"); - f.target = "win_poll"; + var new_win = window.open("about:blank", "win_poll", "width=616,height=500,scrollbars=yes,resizable=yes"); + f.target = "win_poll"; return true; } diff --git a/skin/poll/basic/poll_result.skin.php b/skin/poll/basic/poll_result.skin.php index 9de3d6a6c..4741f5941 100644 --- a/skin/poll/basic/poll_result.skin.php +++ b/skin/poll/basic/poll_result.skin.php @@ -1,10 +1,11 @@ ', 0); ?> - -

    diff --git a/skin/popular/basic/popular.skin.php b/skin/popular/basic/popular.skin.php index f254bb432..14fe12281 100644 --- a/skin/popular/basic/popular.skin.php +++ b/skin/popular/basic/popular.skin.php @@ -1,10 +1,11 @@ ', 0); ?> - -
    '; + echo ''; include_once('./_tail.php'); ?> diff --git a/bbs/newwin.inc.php b/bbs/newwin.inc.php new file mode 100644 index 000000000..98775d024 --- /dev/null +++ b/bbs/newwin.inc.php @@ -0,0 +1,48 @@ + + + +
    +
    + +
    + +
    +팝업레이어 알림이 없습니다.'; +?> + + + \ No newline at end of file diff --git a/css/default.css b/css/default.css index 7b90112b3..2611c4942 100644 --- a/css/default.css +++ b/css/default.css @@ -28,6 +28,13 @@ a:hover, a:focus, a:active {color:#000;text-decoration:underline} #hd_wrapper {position:relative;margin:0 auto;padding:26px 0;width:970px;zoom:1} #hd_wrapper:after {display:block;visibility:hidden;clear:both;content:""} +#hd_pop {z-index:1000;position:relative;margin:0 auto;width:1000px;height:0} +#hd_pop h2 {position:absolute;font-size:0;line-height:0;overflow:hidden} +.hd_pops {position:absolute;border:1px solid #e9e9e9;background:#fff} +.hd_pops_con {margin:0 0 30px} +.hd_pops_footer {position:absolute;bottom:0;left:0;padding:10px 0;width:100%;background:#000;color:#fff;text-align:right} +.hd_pops_footer button {margin-right:5px;padding:5px 10px;border:0;background:#393939;color:#fff} + #logo {float:left;padding:5px 0 0} /* 전체 검색 */ @@ -93,41 +100,20 @@ a:hover, a:focus, a:active {color:#000;text-decoration:underline} #ft h1 {position:absolute;font-size:0;line-height:0;overflow:hidden} #ft p {margin:0;padding:10px 0;line-height:1.8em} -#ft_catch {position:relative;margin:0 auto;padding:20px 0;width:970px;text-align:center} +#ft_catch {position:relative;margin:0 auto;padding:20px 0 0;width:970px;text-align:center} + +#ft_company {text-align:center} #ft_copy {background:#414141} -#ft_copy p {position:relative;margin:0 auto;padding:10px 0;width:970px;color:#fff} -#ft_copy a {position:absolute;top:10px;right:0;color:#fff} +#ft_copy div {position:relative;margin:0 auto;padding:10px 0;width:970px;color:#fff} +#ft_copy a {display:inline-block;margin:0 10px 0 0;color:inherit} +#ft_copy #ft_totop {position:absolute;top:10px;right:0} /* 게시물 선택복사 선택이동 */ #copymove {} .copymove_current {float:right;color:#ff3061} .copymove_currentbg {background:#f4f4f4} -/* 내용관리 */ -#socc {margin:10px 0;padding:10px;border:1px solid #e9e9e9} -.socc_admin {text-align:right} -#socc header h1 {position:absolute;font-size:0;line-height:0;overflow:hidden} -#socc_con {padding:10px 0} -.socc_img {text-align:center} - -/* FAQ 관리 */ -#sfaq_wrap {margin:10px 0} -#sfaq_wrap h2 {position:absolute;font-size:0;line-height:0;overflow:hidden} -.sfaq_admin {text-align:right} -#sfaq_wrap ol {margin:0;padding:0;list-style:none} -#sfaq_list {margin:0 0 10px;border:1px solid #ccc} -#sfaq_list li {border-bottom:1px solid #fff;background:#f2f5f9} -#sfaq_list a {display:block;padding:10px;font-weight:bold;text-decoration:none} -#sfaq_list a:focus, -#sfaq_list a:hover {background:#626870;color:#fff} -#sfaq_con {border:1px solid #e9e9e9;border-top:0} -#sfaq_con li {padding:0 0 10px} -#sfaq_con h3 {padding:10px;background:#f2f5f9;border-top:1px solid #e9e9e9} -#sfaq_con p {padding:10px} -.sfaq_tolist {padding:0 10px;text-align:right} -.sfaq_img {text-align:center} - /* 화면낭독기 사용자용 */ #hd_login_msg {position:absolute;top:0;left:0;font-size:0;line-height:0;overflow:hidden} .msg_sound_only, .sound_only {display:inline-block !important;position:absolute;top:0;left:0;margin:0 !important;padding:0 !important;font-size:0;line-height:0;border:0 !important;overflow:hidden !important} @@ -271,6 +257,29 @@ 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: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} + +/* FAQ 관리 */ +#faq_wrap {margin:10px 0} +#faq_wrap h2 {position:absolute;font-size:0;line-height:0;overflow:hidden} +.faq_admin {text-align:right} +#faq_wrap ol {margin:0;padding:0;list-style:none} +#faq_list {margin:0 0 10px;border:1px solid #ccc} +#faq_list li {border-bottom:1px solid #fff;background:#f2f5f9} +#faq_list a {display:block;padding:10px;font-weight:bold;text-decoration:none} +#faq_list a:focus, #faq_list a:hover {background:#626870;color:#fff} +#faq_con {border:1px solid #e9e9e9;border-top:0} +#faq_con li {padding:0 0 10px} +#faq_con h3 {padding:10px;background:#f2f5f9;border-top:1px solid #e9e9e9} +#faq_con #con_inner {padding:10px;line-height:1.8em} +.faq_tolist {padding:0 10px;text-align:right} +.faq_img {text-align:center} + /* 자바스크립트 alert 대안 */ #validation_check {margin:100px auto;width:500px} #validation_check h1 {margin-bottom:20px;font-size:1.3em} diff --git a/css/mobile.css b/css/mobile.css index 6d3cb8d55..1019c216b 100644 --- a/css/mobile.css +++ b/css/mobile.css @@ -96,10 +96,11 @@ a:hover, a:focus, a:active {color:#000;text-decoration:underline} #ft h1 {width:0;height:0;font-size:0;line-height:0;overflow:hidden} #ft p {margin:0;padding:10px 0;line-height:1.8em} -#ft_copy {background:#414141} -#ft_copy p {position:relative;padding:10px;color:#fff} -#ft_copy b {color:#fff} -#ft_copy a {color:#fff;text-decoration:none} +#ft_copy {padding:10px;background:#414141;color:#fff;line-height:2em} +#ft_copy #ft_company {text-align:center} +#ft_copy #ft_company a {display:inline-block;padding:5px 10px} +#ft_copy b {color:inherit} +#ft_copy a {color:inherit;text-decoration:none} /* 게시물 선택복사 선택이동 */ #copymove {} @@ -214,6 +215,30 @@ 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 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} + +/* FAQ 관리 */ +#faq_wrap {margin:10px 5px} +#faq_wrap h2 {position:absolute;font-size:0;line-height:0;overflow:hidden} +.faq_admin {margin:0 5px;text-align:right} +#faq_wrap p {line-height:1.8em} +#faq_wrap ol {margin:0;padding:0;list-style:none} +#faq_list {margin:0 0 10px;border:1px solid #ccc} +#faq_list li {border-bottom:1px solid #fff;background:#f2f5f9} +#faq_list a {display:block;padding:10px;font-weight:bold;text-decoration:none} +#faq_list a:focus, #faq_list a:hover {background:#626870;color:#fff} +#faq_con {border:1px solid #e9e9e9;border-top:0} +#faq_con li {padding:0 0 10px} +#faq_con h3 {padding:10px;background:#f2f5f9;border-top:1px solid #e9e9e9} +#faq_con #con_inner {padding:10px;line-height:1.8em} +.faq_tolist {padding:0 10px;text-align:right} +.faq_img {text-align:center} + /* 사이드뷰 */ .sv_wrap {display:inline-block;position:relative;font-weight:normal} .sv_wrap .sv {z-index:1000;display:none;margin:5px 0 0;border:1px solid #283646} diff --git a/head.php b/head.php index 736449e8d..547fd00ec 100644 --- a/head.php +++ b/head.php @@ -29,6 +29,13 @@ if (G5_IS_MOBILE) { + +
    +

    팝업레이어 알림

    + +
    + +
    diff --git a/skin/search/basic/search.skin.php b/skin/search/basic/search.skin.php index 609b88cc3..c88dbde84 100644 --- a/skin/search/basic/search.skin.php +++ b/skin/search/basic/search.skin.php @@ -93,7 +93,7 @@ add_stylesheet('', -

    검색된 자료가 하나도 없습니다.

    +
    검색된 자료가 하나도 없습니다.

    diff --git a/tail.php b/tail.php index 0c06084f9..e579db0bc 100644 --- a/tail.php +++ b/tail.php @@ -24,13 +24,18 @@ if (G5_IS_MOBILE) {
    - +
    <?php echo G5_VERSION ?>
    +
    +
    -

    +

    + 회사소개 + 개인정보취급방침 + 서비스이용약관 Copyright © 소유하신 도메인. All rights reserved.
    - 상단으로 -

    + 상단으로 +