diff --git a/.gitignore b/.gitignore
index 2d7490ba7..ca766c016 100644
--- a/.gitignore
+++ b/.gitignore
@@ -15,3 +15,4 @@ g4s_tree
itzimara*
nemoluv*
cheditor*
+*.key
diff --git a/adm/board_form.php b/adm/board_form.php
index eb2e275be..dcbb6b4e3 100644
--- a/adm/board_form.php
+++ b/adm/board_form.php
@@ -54,21 +54,25 @@ if (!isset($board['bo_use_sns'])) {
$result = sql_query(" select bo_table from `{$g4['board_table']}` ");
for ($i=0; $row=sql_fetch_array($result); $i++) {
- sql_query(" ALTER TABLE `{$g4['write_prefix']}{$row['bo_table']}`
+ sql_query(" ALTER TABLE `{$g4['write_prefix']}{$row['bo_table']}`
ADD `wr_facebook_user` VARCHAR(255) NOT NULL DEFAULT '' AFTER `wr_ip`,
ADD `wr_twitter_user` VARCHAR(255) NOT NULL DEFAULT '' AFTER `wr_facebook_user`,
ADD `wr_me2day_user` VARCHAR(255) NOT NULL DEFAULT '' AFTER `wr_twitter_user` ", false);
}
}
-sql_query(" ALTER TABLE `{$g4['board_table']}` CHANGE `bo_use_cert` `bo_use_cert` ENUM('','cert','adult') NOT NULL DEFAULT '' ", false);
+$sql = " SHOW COLUMNS FROM `{$g4['board_table']}` WHERE field = 'bo_use_cert' ";
+$row = sql_fetch($sql);
+if(strpos($row['Type'], 'hp-') === false) {
+ sql_query(" ALTER TABLE `{$g4['board_table']}` CHANGE `bo_use_cert` `bo_use_cert` ENUM('','cert','adult','hp-cert','hp-adult') NOT NULL DEFAULT '' ", false);
+}
if (!isset($board['bo_use_list_file'])) {
sql_query(" ALTER TABLE `{$g4['board_table']}` ADD `bo_use_list_file` TINYINT NOT NULL DEFAULT '0' AFTER `bo_use_list_view` ", false);
$result = sql_query(" select bo_table from `{$g4['board_table']}` ");
for ($i=0; $row=sql_fetch_array($result); $i++) {
- sql_query(" ALTER TABLE `{$g4['write_prefix']}{$row['bo_table']}`
+ sql_query(" ALTER TABLE `{$g4['write_prefix']}{$row['bo_table']}`
ADD `wr_file` TINYINT NOT NULL DEFAULT '0' AFTER `wr_datetime` ", false);
}
}
@@ -600,15 +604,17 @@ $pg_anchor = '
-
+
diff --git a/adm/config_form.php b/adm/config_form.php
index 3c2322602..4375f7ef8 100644
--- a/adm/config_form.php
+++ b/adm/config_form.php
@@ -30,11 +30,6 @@ if(!isset($config['cf_gcaptcha_mp3'])) {
ADD `cf_gcaptcha_mp3` VARCHAR(255) NOT NULL DEFAULT '' AFTER `cf_mobile_member_skin` ", true);
}
-if(!isset($config['cf_gcaptcha_mp3'])) {
- sql_query(" ALTER TABLE `{$g4['config_table']}`
- ADD `cf_gcaptcha_mp3` VARCHAR(255) NOT NULL DEFAULT '' AFTER `cf_mobile_member_skin` ", true);
-}
-
if(!isset($config['cf_editor'])) {
sql_query(" ALTER TABLE `{$g4['config_table']}`
ADD `cf_editor` VARCHAR(255) NOT NULL DEFAULT '' AFTER `cf_gcaptcha_mp3` ", true);
@@ -45,18 +40,6 @@ if(!isset($config['cf_googl_shorturl_apikey'])) {
ADD `cf_googl_shorturl_apikey` VARCHAR(255) NOT NULL DEFAULT '' AFTER `cf_gcaptcha_mp3` ", true);
}
-if(!isset($config['cf_kcpcert_site_cd'])) {
- sql_query(" ALTER TABLE `{$g4['config_table']}`
- ADD `cf_kcpcert_site_cd` VARCHAR(255) NOT NULL DEFAULT '' AFTER `cf_memo_send_point` ", true);
-}
-
-if(!isset($config['cf_kcpcert_use'])) {
- sql_query(" ALTER TABLE `{$g4['config_table']}`
- ADD `cf_kcpcert_use` ENUM('','test','service') NOT NULL DEFAULT '' AFTER `cf_memo_send_point` ", true);
-}
-
-sql_query(" ALTER TABLE `{$g4['config_table']}` CHANGE `cf_kcpcert_use` `cf_kcpcert_use` ENUM('','test','service') NOT NULL DEFAULT '' ", false);
-
if(!isset($config['cf_mobile_pages'])) {
sql_query(" ALTER TABLE `{$g4['config_table']}`
ADD `cf_mobile_pages` INT(11) NOT NULL DEFAULT '0' AFTER `cf_write_pages` ", true);
@@ -65,7 +48,7 @@ if(!isset($config['cf_mobile_pages'])) {
if(!isset($config['cf_facebook_appid'])) {
sql_query(" ALTER TABLE `{$g4['config_table']}`
- ADD `cf_facebook_appid` VARCHAR(255) NOT NULL AFTER `cf_kcpcert_use`,
+ ADD `cf_facebook_appid` VARCHAR(255) NOT NULL AFTER `cf_googl_shorturl_apikey`,
ADD `cf_facebook_secret` VARCHAR(255) NOT NULL AFTER `cf_facebook_appid`,
ADD `cf_twitter_key` VARCHAR(255) NOT NULL AFTER `cf_facebook_secret`,
ADD `cf_twitter_secret` VARCHAR(255) NOT NULL AFTER `cf_twitter_key`,
@@ -106,6 +89,19 @@ if(!isset($config['cf_admin_email'])) {
ADD `cf_admin_email` VARCHAR(255) NOT NULL AFTER `cf_admin` ", true);
}
+if(!isset($config['cf_cert_use'])) {
+ sql_query(" ALTER TABLE `{$g4['config_table']}`
+ ADD `cf_cert_use` TINYINT(4) NOT NULL DEFAULT '0' AFTER `cf_editor`,
+ ADD `cf_cert_ipin` VARCHAR(255) NOT NULL DEFAULT '' AFTER `cf_cert_use`,
+ ADD `cf_cert_hp` VARCHAR(255) NOT NULL DEFAULT '' AFTER `cf_cert_ipin`,
+ ADD `cf_cert_kcb_cd` VARCHAR(255) NOT NULL DEFAULT '' AFTER `cf_cert_hp`,
+ ADD `cf_cert_kcp_cd` VARCHAR(255) NOT NULL DEFAULT '' AFTER `cf_cert_kcb_cd` ", true);
+ sql_query(" ALTER TABLE `{$g4['member_table']}`
+ CHANGE `mb_hp_certify` `mb_certify` VARCHAR(20) NOT NULL DEFAULT '' ", true);
+ sql_query(" update {$g4['member_table']} set mb_certify = 'hp' where mb_certify = '1' ");
+ sql_query(" update {$g4['member_table']} set mb_certify = '' where mb_certify = '0' ");
+}
+
$g4['title'] = '환경설정';
include_once ('./admin.head.php');
@@ -590,8 +586,8 @@ $pg_anchor = '
회원가입 시 본인확인 수단을 설정합니다.
- 실명과 휴대폰 번호 그리고 본인확인 당시에 성인인지의 여부만을 저장하며 생일, 성별 등의 정보는 저장하지 않습니다.
- 게시판의 경우 본인확인 또는 성인여부를 따져 게시물을 조회할 수 권한을 줄 수 있습니다.
+ 실명과 휴대폰 번호 그리고 본인확인 당시에 성인인지의 여부를 저장합니다.
+ 게시판의 경우 본인확인 또는 성인여부를 따져 게시물 조회 및 쓰기 권한을 줄 수 있습니다.
@@ -601,22 +597,48 @@ $pg_anchor = '
-
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 서비스에 가입되어 있지 않다면, KCB와 계약체결 후 회원사ID를 발급 받으실 수 있습니다. 이용하시려는 서비스에 대한 계약을 아이핀, 휴대폰 본인확인 각각 체결해주셔야 합니다. 아이핀 본인확인 테스트의 경우에는 KCB 회원사ID가 필요 없으나, 휴대폰 본인확인 테스트의 경우 KCB 에서 따로 발급 받으셔야 합니다.') ?>
+ KCB 아이핀 서비스 신청페이지
+ KCB 휴대폰 본인확인 서비스 신청페이지
+
';
diff --git a/bbs/write.php b/bbs/write.php
index c77121443..b0a0cfe9c 100644
--- a/bbs/write.php
+++ b/bbs/write.php
@@ -182,19 +182,27 @@ if (!empty($group['gr_use_access'])) {
}
}
-// 휴대폰 본인확인을 사용한다면
-if ($config['cf_kcpcert_use'] != '' && !$is_admin) {
+// 본인확인을 사용한다면
+if ($config['cf_cert_use'] && !$is_admin) {
// 인증된 회원만 가능
if ($board['bo_use_cert'] != '' && $is_guest) {
- alert('이 게시판은 휴대폰 본인확인 하신 회원님만 글쓰기가 가능합니다.\\n\\n회원이시라면 로그인 후 이용해 보십시오.', 'login.php?'.$qstr.'&url='.urlencode($_SERVER['PHP_SELF'].'?bo_table='.$bo_table));
+ alert('이 게시판은 본인확인 하신 회원님만 글쓰기가 가능합니다.\\n\\n회원이시라면 로그인 후 이용해 보십시오.', 'login.php?'.$qstr.'&url='.urlencode($_SERVER['PHP_SELF'].'?bo_table='.$bo_table));
}
- if ($board['bo_use_cert'] == 'cert' && !$member['mb_hp_certfy']) {
- alert('이 게시판은 휴대폰 본인확인 하신 회원님만 글쓰기가 가능합니다.\\n\\n회원정보 수정에서 휴대폰 본인확인을 해주시기 바랍니다.', G4_URL);
+ if ($board['bo_use_cert'] == 'cert' && !$member['mb_certify']) {
+ alert('이 게시판은 본인확인 하신 회원님만 글쓰기가 가능합니다.\\n\\n회원정보 수정에서 본인확인을 해주시기 바랍니다.', G4_URL);
}
if ($board['bo_use_cert'] == 'adult' && !$member['mb_adult']) {
- alert('이 게시판은 휴대폰 본인확인으로 성인인증 된 회원님만 글쓰기가 가능합니다.\\n\\n성인인데 글읽기가 안된다면 회원정보 수정에서 휴대폰 본인확인을 다시 해주시기 바랍니다.', G4_URL);
+ alert('이 게시판은 본인확인으로 성인인증 된 회원님만 글쓰기가 가능합니다.\\n\\n성인인데 글쓰기가 안된다면 회원정보 수정에서 본인확인을 다시 해주시기 바랍니다.', G4_URL);
+ }
+
+ if ($board['bo_use_cert'] == 'hp-cert' && $member['mb_certify'] != 'hp') {
+ alert('이 게시판은 휴대폰 본인확인 하신 회원님만 글읽기가 가능합니다.\\n\\n회원정보 수정에서 휴대폰 본인확인을 해주시기 바랍니다.', G4_URL);
+ }
+
+ if ($board['bo_use_cert'] == 'hp-adult' && (!$member['mb_adult'] || $member['mb_certify'] != 'hp')) {
+ alert('이 게시판은 휴대폰 본인확인으로 성인인증 된 회원님만 글읽기가 가능합니다.\\n\\n현재 성인인데 글읽기가 안된다면 회원정보 수정에서 휴대폰 본인확인을 다시 해주시기 바랍니다.', G4_URL);
}
}
diff --git a/config.php b/config.php
index e5052e2af..8d73a05f7 100644
--- a/config.php
+++ b/config.php
@@ -48,6 +48,7 @@ define('G4_SKIN_DIR', 'skin');
define('G4_GCAPTCHA_DIR', 'gcaptcha');
define('G4_EDITOR_DIR', 'editor');
define('G4_MOBILE_DIR', 'mobile');
+define('G4_OKNAME_DIR', 'okname');
define('G4_KCPCERT_DIR', 'kcpcert');
@@ -58,7 +59,6 @@ define('G4_SYNDI_DIR', 'syndi');
if (G4_DOMAIN) {
define('G4_URL', G4_DOMAIN);
} else {
-
if (isset($g4_path['url']))
define('G4_URL', $g4_path['url']);
else
@@ -81,6 +81,7 @@ define('G4_SKIN_URL', G4_URL.'/'.G4_SKIN_DIR);
define('G4_PLUGIN_URL', G4_URL.'/'.G4_PLUGIN_DIR);
define('G4_GCAPTCHA_URL', G4_PLUGIN_URL.'/'.G4_GCAPTCHA_DIR);
define('G4_EDITOR_URL', G4_PLUGIN_URL.'/'.G4_EDITOR_DIR);
+define('G4_OKNAME_URL', G4_PLUGIN_URL.'/'.G4_OKNAME_DIR);
define('G4_KCPCERT_URL', G4_PLUGIN_URL.'/'.G4_KCPCERT_DIR);
define('G4_SNS_URL', G4_PLUGIN_URL.'/'.G4_SNS_DIR);
define('G4_SYNDI_URL', G4_PLUGIN_URL.'/'.G4_SYNDI_DIR);
@@ -96,6 +97,7 @@ define('G4_PLUGIN_PATH', G4_PATH.'/'.G4_PLUGIN_DIR);
define('G4_SKIN_PATH', G4_PATH.'/'.G4_SKIN_DIR);
define('G4_GCAPTCHA_PATH', G4_PLUGIN_PATH.'/'.G4_GCAPTCHA_DIR);
define('G4_EDITOR_PATH', G4_PLUGIN_PATH.'/'.G4_EDITOR_DIR);
+define('G4_OKNAME_PATH', G4_PLUGIN_PATH.'/'.G4_OKNAME_DIR);
define('G4_KCPCERT_PATH', G4_PLUGIN_PATH.'/'.G4_KCPCERT_DIR);
@@ -129,14 +131,14 @@ define('G4_HANGUL', 16); // 한글
define('G4_SPACE', 32); // 공백
define('G4_SPECIAL', 64); // 특수문자
-// 퍼미션
+// 퍼미션
define('G4_DIR_PERMISSION', 0755); // 디렉토리 생성시 퍼미션
define('G4_FILE_PERMISSION', 0644); // 파일 생성시 퍼미션
// 모바일 인지 결정 $_SERVER['HTTP_USER_AGENT']
define('G4_MOBILE_AGENT', 'phone|samsung|lgtel|mobile|skt|nokia|blackberry|android|sony');
-// SMTP
+// SMTP
// lib/mailer.lib.php 에서 사용
define('G4_SMTP', '127.0.0.1');
diff --git a/css/admin.css b/css/admin.css
index 3741f76f2..0f6d81a04 100644
--- a/css/admin.css
+++ b/css/admin.css
@@ -591,7 +591,7 @@ td {padding:8px 5px 6px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9
.txt_expired {color:#ccc}
/* 환경설정 */
-.cf_cert_kcp_hide {display:none}
+.cf_cert_hide {display:none}
/* 관리권한설정 */
#add_admin fieldset {margin-top:20px}
diff --git a/install/gnuboard4s.sql b/install/gnuboard4s.sql
index 3cfa1a280..692b14b1e 100644
--- a/install/gnuboard4s.sql
+++ b/install/gnuboard4s.sql
@@ -97,7 +97,7 @@ CREATE TABLE IF NOT EXISTS `g4s_board` (
`bo_notice` text NOT NULL,
`bo_upload_count` tinyint(4) NOT NULL DEFAULT '0',
`bo_use_email` tinyint(4) NOT NULL DEFAULT '0',
- `bo_use_cert` enum('','cert','adult') NOT NULL DEFAULT '',
+ `bo_use_cert` enum('','cert','adult','hp-cert','hp-adult') NOT NULL DEFAULT '',
`bo_use_sns` tinyint(4) NOT NULL DEFAULT '0',
`bo_sort_field` varchar(255) NOT NULL DEFAULT '',
`bo_1_subj` varchar(255) NOT NULL DEFAULT '',
@@ -282,9 +282,12 @@ CREATE TABLE IF NOT EXISTS `g4s_config` (
`cf_mobile_member_skin` varchar(255) NOT NULL DEFAULT '',
`cf_gcaptcha_mp3` varchar(255) NOT NULL DEFAULT '',
`cf_editor` varchar(255) NOT NULL DEFAULT '',
+ `cf_cert_use` tinyint(4) NOT NULL DEFAULT '0',
+ `cf_cert_ipin` varchar(255) NOT NULL DEFAULT '',
+ `cf_cert_hp` varchar(255) NOT NULL DEFAULT '',
+ `cf_cert_kcb_cd` varchar(255) NOT NULL DEFAULT '',
+ `cf_cert_kcp_cd` varchar(255) NOT NULL DEFAULT '',
`cf_googl_shorturl_apikey` varchar(255) NOT NULL DEFAULT '',
- `cf_kcpcert_site_cd` varchar(255) NOT NULL DEFAULT '',
- `cf_kcpcert_use` enum('','test','service') NOT NULL DEFAULT '',
`cf_facebook_appid` varchar(255) NOT NULL,
`cf_facebook_secret` varchar(255) NOT NULL,
`cf_twitter_key` varchar(255) NOT NULL,
@@ -424,7 +427,7 @@ CREATE TABLE IF NOT EXISTS `g4s_member` (
`mb_birth` varchar(255) NOT NULL default '',
`mb_tel` varchar(255) NOT NULL default '',
`mb_hp` varchar(255) NOT NULL default '',
- `mb_hp_certify` tinyint(4) NOT NULL default '0',
+ `mb_certify` varchar(20) NOT NULL default '',
`mb_adult` tinyint(4) NOT NULL default '0',
`mb_zip1` char(3) NOT NULL default '',
`mb_zip2` char(3) NOT NULL default '',
diff --git a/mobile/skin/member/basic/register_form.skin.php b/mobile/skin/member/basic/register_form.skin.php
index 49ab9495a..bf200e95b 100644
--- a/mobile/skin/member/basic/register_form.skin.php
+++ b/mobile/skin/member/basic/register_form.skin.php
@@ -9,6 +9,7 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
+
date("Y-m-d", G4_SERVER_TIME - ($config['cf_nick_modify'] * 86400))) { // 별명수정일이 지나지 않았다면 ?>
@@ -40,19 +41,31 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
-
- 휴대폰 본인확인 후에는 이름과 휴대폰번호가 자동 입력되며 수동으로 입력할수 없게 됩니다.
+
+ 아이핀 본인확인 후에는 이름이 자동 입력되고 휴대폰 본인확인 후에는 이름과 휴대폰번호가 자동 입력되어 수동으로 입력할수 없게 됩니다.
class="frm_input nospace " size="10">
-
-
-
-
-
-
- 휴대폰 본인확인 후에는 이름과 휴대폰번호가 자동 입력되며 수동으로 입력할수 없게 됩니다.
+
+ 아이핀 본인확인 후에는 이름이 자동 입력되고 휴대폰 본인확인 후에는 이름과 휴대폰번호가 자동 입력되어 수동으로 입력할수 없게 됩니다.
class="frm_input nospace " size="10">
-
-