Merge branch 'master' of github.com:gnuboard/g4s
This commit is contained in:
@ -10,15 +10,19 @@ if ($is_admin != 'super')
|
||||
alert('최고관리자만 접근 가능합니다.');
|
||||
|
||||
// 쪽지보낼시 차감 포인트 필드 추가 : 061218
|
||||
sql_query(" ALTER TABLE '{$g4['config_table']}' ADD 'cf_memo_send_point' INT NOT NULL AFTER 'cf_login_point' ", FALSE);
|
||||
sql_query(" ALTER TABLE {$g4['config_table']} ADD cf_memo_send_point INT NOT NULL AFTER cf_login_point ", FALSE);
|
||||
|
||||
// 개인정보보호정책 필드 추가 : 061121
|
||||
$sql = " ALTER TABLE '{$g4['config_table']}' ADD 'cf_privacy' TEXT NOT NULL AFTER 'cf_stipulation' ";
|
||||
$sql = " ALTER TABLE {$g4['config_table']} ADD cf_privacy TEXT NOT NULL AFTER cf_stipulation ";
|
||||
sql_query($sql, FALSE);
|
||||
if (!trim($config['cf_privacy'])) {
|
||||
$config['cf_privacy'] = '해당 홈페이지에 맞는 개인정보취급방침을 입력합니다.';
|
||||
}
|
||||
|
||||
if (!isset($config['cf_email_admin'])) {
|
||||
sql_query(" ALTER TABLE {$g4['config_table']} ADD cf_email_admin VARCHAR(255) NOT NULL DEFAULT '' AFTER cf_email_use ", FALSE);
|
||||
}
|
||||
|
||||
$g4['title'] = '환경설정';
|
||||
include_once ('./admin.head.php');
|
||||
?>
|
||||
@ -394,6 +398,13 @@ include_once ('./admin.head.php');
|
||||
<input type="checkbox" id="cf_formmail_is_member" name="cf_formmail_is_member" value="1" <?=$config['cf_formmail_is_member']?'checked':'';?>> 회원만 사용
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="cf_email_admin">관리자 메일주소</label></th>
|
||||
<td>
|
||||
<?=help('일괄발송시 사용하는 이메일 주소입니다.')?>
|
||||
<input type="text" id="cf_email_admin" name="cf_email_admin" class="email" value="<?=$config['cf_email_admin']?>" required size="40" title="관리자 메일주소">
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table id="frm_article_mail" class="frm_tbl">
|
||||
|
||||
@ -66,6 +66,7 @@ $sql = " update {$g4['config_table']}
|
||||
cf_leave_day = '{$_POST['cf_leave_day']}',
|
||||
cf_search_part = '{$_POST['cf_search_part']}',
|
||||
cf_email_use = '{$_POST['cf_email_use']}',
|
||||
cf_email_admin = '{$_POST['cf_email_admin']}',
|
||||
cf_email_wr_super_admin = '{$_POST['cf_email_wr_super_admin']}',
|
||||
cf_email_wr_group_admin = '{$_POST['cf_email_wr_group_admin']}',
|
||||
cf_email_wr_board_admin = '{$_POST['cf_email_wr_board_admin']}',
|
||||
|
||||
@ -12,7 +12,7 @@ include_once($g4['path'].'/lib/mailer.lib.php');
|
||||
$g4['title'] = '메일 테스트';
|
||||
include_once('./admin.head.php');
|
||||
|
||||
if ($mail) {
|
||||
if (isset($_POST['mail'])) {
|
||||
check_token();
|
||||
|
||||
$from_name = '메일검사';
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
<?
|
||||
include_once('./_common.php');
|
||||
include_once($g4['path'].'/plugin/captcha/captcha.lib.php');
|
||||
include_once($g4['path'].'/lib/register.lib.php');
|
||||
if ($captcha->lib) include_once($captcha->lib);
|
||||
|
||||
// 불법접근을 막도록 토큰생성
|
||||
$token = md5(uniqid(rand(), true));
|
||||
@ -112,6 +113,11 @@ else
|
||||
|
||||
$req_nick = !isset($member['mb_nick_date']) || (isset($member['mb_nick_date']) && $member['mb_nick_date'] <= date("Y-m-d", $g4['server_time'] - ($config['cf_nick_modify'] * 86400)));
|
||||
|
||||
$required = "";
|
||||
$readonly = "";
|
||||
if ($w == '') $required = "required";
|
||||
else if ($w == 'u') $readonly = "readonly";
|
||||
|
||||
include_once($member_skin_path.'/register_form.skin.php');
|
||||
include_once('./_tail.php');
|
||||
?>
|
||||
@ -1,5 +1,6 @@
|
||||
<?
|
||||
include_once('./_common.php');
|
||||
include_once($g4['path'].'/lib/register.lib.php');
|
||||
include_once($g4['path'].'/lib/mailer.lib.php');
|
||||
include_once($g4['path'].'/plugin/captcha/captcha.lib.php');
|
||||
|
||||
@ -15,109 +16,95 @@ if ($w == 'u' && $is_admin == 'super') {
|
||||
alert('데모 화면에서는 하실(보실) 수 없는 작업입니다.');
|
||||
}
|
||||
|
||||
if (!chk_tcaptcha("user_answer")) {
|
||||
alert("정상적인 접근이 아닌것 같습니다.");
|
||||
if (!chk_captcha("wr_key")) {
|
||||
alert("자동등록방지 입력에 오류가 있습니다.");
|
||||
}
|
||||
|
||||
$mb_id = trim(strip_tags(mysql_escape_string($_POST[mb_id])));
|
||||
$mb_password = trim(mysql_escape_string($_POST[mb_password]));
|
||||
$mb_name = trim(strip_tags(mysql_escape_string($_POST[mb_name])));
|
||||
$mb_nick = trim(strip_tags(mysql_escape_string($_POST[mb_nick])));
|
||||
$mb_email = trim(strip_tags(mysql_escape_string($_POST[mb_email])));
|
||||
$mb_homepage = trim(strip_tags(mysql_escape_string($_POST[mb_homepage])));
|
||||
$mb_id = escape_trim($_POST['mb_id']);
|
||||
$mb_password = escape_trim($_POST['mb_password']);
|
||||
$mb_name = escape_trim($_POST['mb_name']);
|
||||
$mb_nick = escape_trim($_POST['mb_nick']);
|
||||
$mb_email = escape_trim($_POST['mb_email']);
|
||||
$mb_sex = isset($_POST['mb_sex']) ? escape_trim($_POST['mb_sex']) : "";
|
||||
$mb_birth = isset($_POST['mb_birth']) ? escape_trim($_POST['mb_birth']) : "";
|
||||
$mb_homepage = isset($_POST['mb_homepage']) ? escape_trim($_POST['mb_homepage']) : "";
|
||||
$mb_tel = isset($_POST['mb_tel']) ? escape_trim($_POST['mb_tel']) : "";
|
||||
$mb_hp = isset($_POST['mb_hp']) ? escape_trim($_POST['mb_hp']) : "";
|
||||
$mb_zip1 = isset($_POST['mb_zip1']) ? escape_trim($_POST['mb_zip1']) : "";
|
||||
$mb_zip2 = isset($_POST['mb_zip2']) ? escape_trim($_POST['mb_zip2']) : "";
|
||||
$mb_addr1 = isset($_POST['mb_addr1']) ? escape_trim($_POST['mb_addr1']) : "";
|
||||
$mb_addr2 = isset($_POST['mb_addr2']) ? escape_trim($_POST['mb_addr2']) : "";
|
||||
$mb_signature = isset($_POST['mb_signature']) ? escape_trim($_POST['mb_signature']) : "";
|
||||
$mb_profile = isset($_POST['mb_profile']) ? escape_trim($_POST['mb_profile']) : "";
|
||||
$mb_recommend = isset($_POST['mb_recommend']) ? escape_trim($_POST['mb_recommend']) : "";
|
||||
$mb_mailling = isset($_POST['mb_mailling']) ? escape_trim($_POST['mb_mailling']) : "";
|
||||
$mb_sms = isset($_POST['mb_sms']) ? escape_trim($_POST['mb_sms']) : "";
|
||||
$mb_1 = isset($_POST['mb_1']) ? escape_trim($_POST['mb_1']) : "";
|
||||
$mb_2 = isset($_POST['mb_2']) ? escape_trim($_POST['mb_2']) : "";
|
||||
$mb_3 = isset($_POST['mb_3']) ? escape_trim($_POST['mb_3']) : "";
|
||||
$mb_4 = isset($_POST['mb_4']) ? escape_trim($_POST['mb_4']) : "";
|
||||
$mb_5 = isset($_POST['mb_5']) ? escape_trim($_POST['mb_5']) : "";
|
||||
$mb_6 = isset($_POST['mb_6']) ? escape_trim($_POST['mb_6']) : "";
|
||||
$mb_7 = isset($_POST['mb_7']) ? escape_trim($_POST['mb_7']) : "";
|
||||
$mb_8 = isset($_POST['mb_8']) ? escape_trim($_POST['mb_8']) : "";
|
||||
$mb_9 = isset($_POST['mb_9']) ? escape_trim($_POST['mb_9']) : "";
|
||||
$mb_10 = isset($_POST['mb_10']) ? escape_trim($_POST['mb_10']) : "";
|
||||
|
||||
if ($w == '' || $w == 'u')
|
||||
{
|
||||
if (!$mb_id) alert('회원아이디가 넘어오지 않았습니다.');
|
||||
if ($w == '' && !$mb_password) alert('패스워드가 넘어오지 않았습니다.');
|
||||
if (!$mb_name) alert('이름(실명)이 넘어오지 않았습니다.');
|
||||
if (!$mb_nick) alert('별명이 넘어오지 않았습니다.');
|
||||
if (!$mb_email) alert('E-mail 이 넘어오지 않았습니다.');
|
||||
if ($w == '' || $w == 'u') {
|
||||
|
||||
if (preg_match("/[\,]?{$mb_id}/i", $config[cf_prohibit_id]))
|
||||
alert(''.$mb_id.' 은(는) 예약어로 사용하실 수 없는 회원아이디입니다.');
|
||||
if ($msg = empty_mb_id($mb_id)) alert($msg);
|
||||
|
||||
if (preg_match("/[\,]?{$mb_nick}/i", $config[cf_prohibit_id]))
|
||||
alert(''.$mb_nick.' 은(는) 예약어로 사용하실 수 없는 별명입니다.');
|
||||
if ($w == '' && !$mb_password)
|
||||
alert('패스워드가 넘어오지 않았습니다.');
|
||||
|
||||
// 이름은 한글만 가능
|
||||
if (!check_string($mb_name, _G4_HANGUL_))
|
||||
alert('이름은 공백없이 한글만 입력 가능합니다.');
|
||||
if ($msg = empty_mb_name($mb_id)) alert($msg);
|
||||
if ($msg = empty_mb_nick($mb_nick)) alert($msg);
|
||||
if ($msg = empty_mb_email($mb_email)) alert($msg);
|
||||
if ($msg = reserve_mb_id($mb_id)) alert($msg);
|
||||
if ($msg = reserve_mb_nick($mb_nick)) alert($msg);
|
||||
if ($msg = valid_mb_name($mb_name)) alert($msg);
|
||||
if ($msg = valid_mb_nick($mb_nick)) alert($msg);
|
||||
|
||||
// 별명은 한글, 영문, 숫자만 가능
|
||||
if (!check_string($mb_nick, _G4_HANGUL_ + _G4_ALPHABETIC_ + _G4_NUMERIC_))
|
||||
alert('별명은 공백없이 한글, 영문, 숫자만 입력 가능합니다.');
|
||||
if ($w=='') {
|
||||
if ($msg = exist_mb_id($mb_id)) alert($msg);
|
||||
|
||||
if ($w=='')
|
||||
{
|
||||
if (strtolower($mb_id) == strtolower($mb_recommend)) alert('본인을 추천할 수 없습니다.');
|
||||
|
||||
$sql = " select count(*) as cnt from {$g4[member_table]} where mb_nick = '{$mb_nick}' ";
|
||||
$row = sql_fetch($sql);
|
||||
if ($row[cnt])
|
||||
alert(''.$mb_nick.' 은(는) 이미 다른분이 사용중인 별명이므로 사용이 불가합니다.');
|
||||
|
||||
$sql = " select count(*) as cnt from {$g4[member_table]} where mb_email = '{$mb_email}' ";
|
||||
$row = sql_fetch($sql);
|
||||
if ($row[cnt])
|
||||
alert(''.$mb_email.' 은(는) 이미 다른분이 사용중인 E-mail이므로 사용이 불가합니다.');
|
||||
|
||||
// 주민번호 확인 체크시 가입하고 바로 뒤로가기 하면 동일 주민번호로 다시 가입되는 버그 때문에 (letsgolee 님 09.06.16)
|
||||
if ($config[cf_use_jumin]) {
|
||||
$row = sql_fetch(" select mb_name from {$g4[member_table]} where mb_jumin = '{$mb_jumin}' ");
|
||||
if ($row[mb_name]) {
|
||||
if ($row[mb_name] == $mb_name)
|
||||
alert('이미 가입되어 있습니다.');
|
||||
else
|
||||
alert('다른 이름으로 같은 주민등록번호가 이미 가입되어 있습니다.'.PHP_EOL.PHP_EOL.'관리자에게 문의해 주십시오.');
|
||||
}
|
||||
if (strtolower($mb_id) == strtolower($mb_recommend)) {
|
||||
alert('본인을 추천할 수 없습니다.');
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
// 자바스크립트로 정보변경이 가능한 버그 수정
|
||||
// 별명수정일이 지나지 않았다면
|
||||
if ($member[mb_nick_date] > date("Y-m-d", $g4[server_time] - ($config[cf_nick_modify] * 86400)))
|
||||
$mb_nick = $member[mb_nick];
|
||||
if ($member['mb_nick_date'] > date("Y-m-d", $g4['server_time'] - ($config['cf_nick_modify'] * 86400)))
|
||||
$mb_nick = $member['mb_nick'];
|
||||
// 회원정보의 메일을 이전 메일로 옮기고 아래에서 비교함
|
||||
$old_email = $member[mb_email];
|
||||
|
||||
$sql = " select count(*) as cnt from {$g4[member_table]} where mb_nick = '{$mb_nick}' and mb_id <> '{$mb_id}' ";
|
||||
$row = sql_fetch($sql);
|
||||
if ($row[cnt])
|
||||
alert(''.$mb_nick.' 은(는) 이미 다른분이 사용중인 별명이므로 사용이 불가합니다.');
|
||||
|
||||
$sql = " select count(*) as cnt from {$g4[member_table]} where mb_email = '{$mb_email}' and mb_id <> '{$mb_id}' ";
|
||||
$row = sql_fetch($sql);
|
||||
if ($row[cnt])
|
||||
alert(''.$mb_email.' 은(는) 이미 다른분이 사용중인 E-mail이므로 사용이 불가합니다.');
|
||||
$old_email = $member['mb_email'];
|
||||
}
|
||||
|
||||
if ($msg = exist_mb_nick($mb_nick, $mb_id)) alert($msg);
|
||||
if ($msg = exist_mb_email($mb_email, $mb_id)) alert($msg);
|
||||
}
|
||||
|
||||
$mb_dir = $g4['path'].'/data/member/'.substr($mb_id,0,2);
|
||||
|
||||
// 아이콘 삭제
|
||||
if ($del_mb_icon)
|
||||
if (isset($_POST['del_mb_icon'])) {
|
||||
@unlink($mb_dir.'/'.$mb_id.'.gif');
|
||||
}
|
||||
|
||||
$msg = "";
|
||||
|
||||
// 아이콘 업로드
|
||||
$mb_icon = '';
|
||||
if (is_uploaded_file($_FILES[mb_icon][tmp_name]))
|
||||
{
|
||||
if (preg_match("/(\.gif)$/i", $_FILES[mb_icon][name]))
|
||||
{
|
||||
if (isset($_FILES['mb_icon']) && is_uploaded_file($_FILES['mb_icon']['tmp_name'])) {
|
||||
if (preg_match("/(\.gif)$/i", $_FILES['mb_icon']['name'])) {
|
||||
// 아이콘 용량이 설정값보다 이하만 업로드 가능
|
||||
if ($_FILES[mb_icon][size] <= $config[cf_member_icon_size])
|
||||
{
|
||||
if ($_FILES['mb_icon']['size'] <= $config['cf_member_icon_size']) {
|
||||
@mkdir($mb_dir, 0707);
|
||||
@chmod($mb_dir, 0707);
|
||||
$dest_path = $mb_dir.'/'.$mb_id.'.gif';
|
||||
move_uploaded_file($_FILES[mb_icon][tmp_name], $dest_path);
|
||||
move_uploaded_file($_FILES['mb_icon']['tmp_name'], $dest_path);
|
||||
chmod($dest_path, 0606);
|
||||
if (file_exists($dest_path))
|
||||
{
|
||||
if (file_exists($dest_path)) {
|
||||
//=================================================================\
|
||||
// 090714
|
||||
// gif 파일에 악성코드를 심어 업로드 하는 경우를 방지
|
||||
@ -128,14 +115,15 @@ if (is_uploaded_file($_FILES[mb_icon][tmp_name]))
|
||||
@unlink($dest_path);
|
||||
else
|
||||
// 아이콘의 폭 또는 높이가 설정값 보다 크다면 이미 업로드 된 아이콘 삭제
|
||||
if ($size[0] > $config[cf_member_icon_width] || $size[1] > $config[cf_member_icon_height])
|
||||
if ($size[0] > $config['cf_member_icon_width'] || $size[1] > $config['cf_member_icon_height'])
|
||||
@unlink($dest_path);
|
||||
//=================================================================\
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
$msg .= $_FILES['mb_icon']['name'].'은(는) gif 파일이 아닙니다.';
|
||||
}
|
||||
else
|
||||
$msg .= $_FILES[mb_icon][name].'은(는) gif 파일이 아닙니다.';
|
||||
}
|
||||
|
||||
|
||||
@ -143,23 +131,16 @@ if (is_uploaded_file($_FILES[mb_icon][tmp_name]))
|
||||
$admin = get_admin('super');
|
||||
|
||||
|
||||
if ($w == '')
|
||||
{
|
||||
$mb = get_member($mb_id);
|
||||
if ($mb[mb_id])
|
||||
alert('이미 가입한 아이디입니다.');
|
||||
if ($w == '') {
|
||||
|
||||
$sql = " insert into {$g4[member_table]}
|
||||
$sql = " insert into {$g4['member_table']}
|
||||
set mb_id = '{$mb_id}',
|
||||
mb_password = '".sql_password($mb_password)."',
|
||||
mb_name = '{$mb_name}',
|
||||
mb_jumin = '{$mb_jumin}',
|
||||
mb_sex = '{$mb_sex}',
|
||||
mb_birth = '{$mb_birth}',
|
||||
mb_nick = '{$mb_nick}',
|
||||
mb_nick_date = '{$g4[time_ymd]}',
|
||||
mb_password_q = '{$mb_password_q}',
|
||||
mb_password_a = '{$mb_password_a}',
|
||||
mb_nick_date = '{$g4['time_ymd']}',
|
||||
mb_email = '{$mb_email}',
|
||||
mb_homepage = '{$mb_homepage}',
|
||||
mb_tel = '{$mb_tel}',
|
||||
@ -170,16 +151,16 @@ if ($w == '')
|
||||
mb_addr2 = '{$mb_addr2}',
|
||||
mb_signature = '{$mb_signature}',
|
||||
mb_profile = '{$mb_profile}',
|
||||
mb_today_login = '{$g4[time_ymdhis]}',
|
||||
mb_datetime = '{$g4[time_ymdhis]}',
|
||||
mb_ip = '{$_SERVER[REMOTE_ADDR]}',
|
||||
mb_level = '{$config[cf_register_level]}',
|
||||
mb_today_login = '{$g4['time_ymdhis']}',
|
||||
mb_datetime = '{$g4['time_ymdhis']}',
|
||||
mb_ip = '{$_SERVER['REMOTE_ADDR']}',
|
||||
mb_level = '{$config['cf_register_level']}',
|
||||
mb_recommend = '{$mb_recommend}',
|
||||
mb_login_ip = '{$_SERVER[REMOTE_ADDR]}',
|
||||
mb_login_ip = '{$_SERVER['REMOTE_ADDR']}',
|
||||
mb_mailling = '{$mb_mailling}',
|
||||
mb_sms = '{$mb_sms}',
|
||||
mb_open = '{$mb_open}',
|
||||
mb_open_date = '{$g4[time_ymd]}',
|
||||
mb_open_date = '{$g4['time_ymd']}',
|
||||
mb_1 = '{$mb_1}',
|
||||
mb_2 = '{$mb_2}',
|
||||
mb_3 = '{$mb_3}',
|
||||
@ -191,36 +172,34 @@ if ($w == '')
|
||||
mb_9 = '{$mb_9}',
|
||||
mb_10 = '{$mb_10}' ";
|
||||
// 이메일 인증을 사용하지 않는다면 이메일 인증시간을 바로 넣는다
|
||||
if (!$config[cf_use_email_certify])
|
||||
if (!$config['cf_use_email_certify'])
|
||||
$sql .= " , mb_email_certify = '{$g4[time_ymdhis]}' ";
|
||||
sql_query($sql);
|
||||
|
||||
// 회원가입 포인트 부여
|
||||
insert_point($mb_id, $config[cf_register_point], '회원가입 축하', '{@member}', $mb_id, '회원가입');
|
||||
insert_point($mb_id, $config['cf_register_point'], '회원가입 축하', '{@member}', $mb_id, '회원가입');
|
||||
|
||||
// 추천인에게 포인트 부여
|
||||
if ($config[cf_use_recommend] && $mb_recommend)
|
||||
insert_point($mb_recommend, $config[cf_recommend_point], '{$mb_id}의 추천인', '{@member}', $mb_recommend, '{$mb_id} 추천');
|
||||
if ($config['cf_use_recommend'] && $mb_recommend)
|
||||
insert_point($mb_recommend, $config['cf_recommend_point'], '{$mb_id}의 추천인', '{@member}', $mb_recommend, '{$mb_id} 추천');
|
||||
|
||||
// 회원님께 메일 발송
|
||||
if ($config[cf_email_mb_member])
|
||||
{
|
||||
if ($config['cf_email_mb_member']) {
|
||||
$subject = '회원가입을 축하드립니다.';
|
||||
|
||||
$mb_md5 = md5($mb_id.$mb_email.$g4[time_ymdhis]);
|
||||
$certify_href = $g4[url].'/'.$g4[bbs].'/email_certify.php?mb_id='.$mb_id.'&mb_md5='.$mb_md5;
|
||||
$mb_md5 = md5($mb_id.$mb_email.$g4['time_ymdhis']);
|
||||
$certify_href = $g4['url'].'/'.$g4['bbs'].'/email_certify.php?mb_id='.$mb_id.'&mb_md5='.$mb_md5;
|
||||
|
||||
ob_start();
|
||||
include_once ('./register_form_update_mail1.php');
|
||||
$content = ob_get_contents();
|
||||
ob_end_clean();
|
||||
|
||||
mailer($admin[mb_nick], $admin[mb_email], $mb_email, $subject, $content, 1);
|
||||
mailer($admin['mb_nick'], $admin['mb_email'], $mb_email, $subject, $content, 1);
|
||||
}
|
||||
|
||||
// 최고관리자님께 메일 발송
|
||||
if ($config[cf_email_mb_super_admin])
|
||||
{
|
||||
if ($config['cf_email_mb_super_admin']) {
|
||||
$subject = $mb_nick .' 님께서 회원으로 가입하셨습니다.';
|
||||
|
||||
ob_start();
|
||||
@ -228,22 +207,22 @@ if ($w == '')
|
||||
$content = ob_get_contents();
|
||||
ob_end_clean();
|
||||
|
||||
mailer($mb_nick, $mb_email, $admin[mb_email], $subject, $content, 1);
|
||||
mailer($mb_nick, $mb_email, $admin['mb_email'], $subject, $content, 1);
|
||||
}
|
||||
|
||||
// 메일인증 사용하지 않는 경우에만 로그인
|
||||
if (!$config[cf_use_email_certify])
|
||||
if (!$config['cf_use_email_certify'])
|
||||
set_session('ss_mb_id', $mb_id);
|
||||
|
||||
set_session('ss_mb_reg', $mb_id);
|
||||
}
|
||||
else if ($w == 'u')
|
||||
{
|
||||
if (!trim($_SESSION["ss_mb_id"]))
|
||||
|
||||
} else if ($w == 'u') {
|
||||
|
||||
if (!trim($_SESSION['ss_mb_id']))
|
||||
alert('로그인 되어 있지 않습니다.');
|
||||
|
||||
if ($_SESSION["ss_mb_id"] != $_POST[mb_id])
|
||||
alert('로그인된 정보와 수정하려는 정보가 틀리므로 수정할 수 없습니다.'.PHP_EOL.PHP_EOL.'만약 올바르지 않은 방법을 사용하신다면 바로 중지하여 주십시오.');
|
||||
if ($_SESSION['ss_mb_id'] != $mb_id)
|
||||
alert("로그인된 정보와 수정하려는 정보가 틀리므로 수정할 수 없습니다.\\n만약 올바르지 않은 방법을 사용하신다면 바로 중지하여 주십시오.");
|
||||
|
||||
$sql_password = "";
|
||||
if ($mb_password)
|
||||
@ -267,60 +246,57 @@ else if ($w == 'u')
|
||||
|
||||
// 이전 메일주소와 수정한 메일주소가 틀리다면 인증을 다시 해야하므로 값을 삭제
|
||||
$sql_email_certify = '';
|
||||
if ($old_email != $mb_email && $config[cf_use_email_certify])
|
||||
if ($old_email != $mb_email && $config['cf_use_email_certify'])
|
||||
$sql_email_certify = " , mb_email_certify = '' ";
|
||||
|
||||
// set mb_name = '$mb_name', 제거
|
||||
$sql = " update {$g4[member_table]}
|
||||
$sql = " update {$g4['member_table']}
|
||||
set mb_nick = '{$mb_nick}',
|
||||
mb_password_q = '{$mb_password_q}',
|
||||
mb_password_a = '{$mb_password_a}',
|
||||
mb_mailling = '{$mb_mailling}',
|
||||
mb_sms = '{$mb_sms}',
|
||||
mb_open = '{$mb_open}',
|
||||
mb_email = '{$mb_email}',
|
||||
mb_homepage = '{$mb_homepage}',
|
||||
mb_tel = '{$mb_tel}',
|
||||
mb_hp = '{$mb_hp}',
|
||||
mb_zip1 = '{$mb_zip1}',
|
||||
mb_zip2 = '{$mb_zip2}',
|
||||
mb_addr1 = '{$mb_addr1}',
|
||||
mb_addr2 = '{$mb_addr2}',
|
||||
mb_signature = '{$mb_signature}',
|
||||
mb_profile = '{$mb_profile}',
|
||||
mb_1 = '{$mb_1}',
|
||||
mb_2 = '{$mb_2}',
|
||||
mb_3 = '{$mb_3}',
|
||||
mb_4 = '{$mb_4}',
|
||||
mb_5 = '{$mb_5}',
|
||||
mb_6 = '{$mb_6}',
|
||||
mb_7 = '{$mb_7}',
|
||||
mb_8 = '{$mb_8}',
|
||||
mb_9 = '{$mb_9}',
|
||||
mb_10 = '{$mb_10}'
|
||||
{$sql_password}
|
||||
{$sql_icon}
|
||||
{$sql_nick_date}
|
||||
{$sql_open_date}
|
||||
{$sql_sex}
|
||||
{$sql_email_certify}
|
||||
where mb_id = '{$_POST[mb_id]}' ";
|
||||
mb_mailling = '{$mb_mailling}',
|
||||
mb_sms = '{$mb_sms}',
|
||||
mb_open = '{$mb_open}',
|
||||
mb_email = '{$mb_email}',
|
||||
mb_homepage = '{$mb_homepage}',
|
||||
mb_tel = '{$mb_tel}',
|
||||
mb_hp = '{$mb_hp}',
|
||||
mb_zip1 = '{$mb_zip1}',
|
||||
mb_zip2 = '{$mb_zip2}',
|
||||
mb_addr1 = '{$mb_addr1}',
|
||||
mb_addr2 = '{$mb_addr2}',
|
||||
mb_signature = '{$mb_signature}',
|
||||
mb_profile = '{$mb_profile}',
|
||||
mb_1 = '{$mb_1}',
|
||||
mb_2 = '{$mb_2}',
|
||||
mb_3 = '{$mb_3}',
|
||||
mb_4 = '{$mb_4}',
|
||||
mb_5 = '{$mb_5}',
|
||||
mb_6 = '{$mb_6}',
|
||||
mb_7 = '{$mb_7}',
|
||||
mb_8 = '{$mb_8}',
|
||||
mb_9 = '{$mb_9}',
|
||||
mb_10 = '{$mb_10}'
|
||||
{$sql_password}
|
||||
{$sql_icon}
|
||||
{$sql_nick_date}
|
||||
{$sql_open_date}
|
||||
{$sql_sex}
|
||||
{$sql_email_certify}
|
||||
where mb_id = '$mb_id' ";
|
||||
sql_query($sql);
|
||||
|
||||
// 인증메일 발송
|
||||
if ($old_email != $mb_email && $config[cf_use_email_certify])
|
||||
{
|
||||
if ($old_email != $mb_email && $config['cf_use_email_certify']) {
|
||||
$subject = '인증확인 메일입니다.';
|
||||
|
||||
$mb_md5 = md5($mb_id.$mb_email.$member[mb_datetime]);
|
||||
$certify_href = $g4[url].'/'.$g4[bbs].'/email_certify.php?mb_id='.$mb_id.'&mb_md5='.$mb_md5;
|
||||
$mb_md5 = md5($mb_id.$mb_email.$member['mb_datetime']);
|
||||
$certify_href = $g4['url'].'/'.$g4['bbs'].'/email_certify.php?mb_id='.$mb_id.'&mb_md5='.$mb_md5;
|
||||
|
||||
ob_start();
|
||||
include_once ('./register_form_update_mail3.php');
|
||||
$content = ob_get_contents();
|
||||
ob_end_clean();
|
||||
|
||||
mailer($admin[mb_nick], $admin[mb_email], $mb_email, $subject, $content, 1);
|
||||
mailer($admin['mb_nick'], $admin['mb_email'], $mb_email, $subject, $content, 1);
|
||||
}
|
||||
}
|
||||
|
||||
@ -332,23 +308,15 @@ else if ($w == 'u')
|
||||
if ($msg)
|
||||
echo '<script>alert(\''.$msg.'\');</script>';
|
||||
|
||||
/*
|
||||
// 결과페이지는 https 에서 http 로 변경이 되어야 함
|
||||
if ($g4[https_url])
|
||||
$https_url = $g4[https_url].'/'.$g4[bbs];
|
||||
else
|
||||
$https_url = '.';
|
||||
*/
|
||||
|
||||
$https_url = $g4[url].'/'.$g4[bbs];
|
||||
$https_url = $g4['url'].'/'.$g4['bbs'];
|
||||
|
||||
if ($w == "") {
|
||||
goto_url($https_url.'/register_result.php');
|
||||
} else if ($w == 'u') {
|
||||
$row = sql_fetch(" select mb_password from {$g4[member_table]} where mb_id = '{$member[mb_id]}' ");
|
||||
$row = sql_fetch(" select mb_password from {$g4['member_table']} where mb_id = '{$member[mb_id]}' ");
|
||||
$tmp_password = $row['mb_password'];
|
||||
|
||||
if ($old_email != $mb_email && $config[cf_use_email_certify]) {
|
||||
if ($old_email != $mb_email && $config['cf_use_email_certify']) {
|
||||
set_session("ss_mb_id", "");
|
||||
alert('회원 정보가 수정 되었습니다.\n\nE-mail 주소가 변경되었으므로 다시 인증하셔야 합니다.', $g4['path']);
|
||||
} else {
|
||||
@ -361,7 +329,7 @@ if ($w == "") {
|
||||
<input type="hidden" name="is_update" value="1">
|
||||
</form>
|
||||
<script>
|
||||
alert(\'회원 정보가 수정 되었습니다.\');
|
||||
alert("회원 정보가 수정 되었습니다.");
|
||||
document.fregisterupdate.submit();
|
||||
</script>
|
||||
</body>
|
||||
|
||||
@ -1,12 +1,14 @@
|
||||
<?
|
||||
include_once('./_common.php');
|
||||
|
||||
$mb = get_member($_SESSION[ss_mb_reg]);
|
||||
if (isset($_SESSION['ss_mb_reg']))
|
||||
$mb = get_member($_SESSION['ss_mb_reg']);
|
||||
|
||||
// 회원정보가 없다면 초기 페이지로 이동
|
||||
if (!$mb[mb_id])
|
||||
if (!$mb['mb_id'])
|
||||
goto_url($g4['path']);
|
||||
|
||||
$member_skin_path = $g4['path'].'/skin/member/'.$config[cf_member_skin];
|
||||
$member_skin_path = $g4['path'].'/skin/member/'.$config['cf_member_skin'];
|
||||
|
||||
$g4['title'] = '회원가입결과';
|
||||
include_once('./_head.php');
|
||||
|
||||
@ -175,7 +175,7 @@ if ($group['gr_use_access']) {
|
||||
}
|
||||
}
|
||||
|
||||
$g4['title'] = $title_msg.' > '.$board['bo_subject'];
|
||||
$g4['title'] = $board['bo_subject']." ".$title_msg;
|
||||
|
||||
$is_notice = false;
|
||||
$notice_checked = '';
|
||||
|
||||
178
css/def.css
178
css/def.css
@ -19,6 +19,7 @@ tfoot td {background:#f9f9f5;font-weight:bold;text-align:center}
|
||||
caption {padding:0 0 10px;text-align:left}
|
||||
.caption_desc {font-size:0.75em}
|
||||
th {padding:12px 0 8px;border-top:3px solid #666;border-bottom:1px solid #a9a9a9;font-size:0.8em}
|
||||
th a {color:#000;text-decoration:none}
|
||||
td {padding:10px 0;border-top:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9;font-size:0.75em}
|
||||
.empty_table {padding:50px 0;text-align:center}
|
||||
|
||||
@ -31,10 +32,9 @@ fieldset select {padding:2px;border:1px solid #ddd;background:#f9f9f5;vertical-a
|
||||
fieldset p {margin:0}
|
||||
fieldset .span_highlight {color:#ff3061}
|
||||
fieldset button,
|
||||
.fieldset_submit {padding:0 15px;height:23px;border:0;background:#333;color:#fff;font-size:0.8em;line-height:1.9em;vertical-align:middle;cursor:pointer}
|
||||
.fieldset_submit {padding:0 15px;height:24px;border:0;background:#333;color:#fff;font-size:0.8em;line-height:1.9em;vertical-align:middle;cursor:pointer}
|
||||
fieldset button:focus,
|
||||
.fieldset_submit:focus {padding:0 15px;height:23px;border:0;background:#555;color:#fff;font-size:0.8em;line-height:1.9em;vertical-align:middle}
|
||||
.readonly {background:#ff3061}
|
||||
.fieldset_submit:focus {padding:0 15px;height:24px;border:0;background:#555;color:#fff;font-size:0.8em;line-height:1.9em;vertical-align:middle}
|
||||
|
||||
/* 이미지 등비율 리사이징 */
|
||||
.img_fix {float:left;width:100%;height:auto}
|
||||
@ -60,7 +60,7 @@ h5 {margin:0 0 20px}
|
||||
h6 {margin:0 0 20px}
|
||||
|
||||
/* 레이아웃 - 상단 */
|
||||
#header {z-index:3;position:relative;margin-bottom:30px}
|
||||
#header {z-index:3;position:relative}
|
||||
#header h1 {margin:0;height:0;overflow:hidden}
|
||||
|
||||
/* 로고 */
|
||||
@ -68,54 +68,54 @@ h6 {margin:0 0 20px}
|
||||
#logo a {display:inline-block;padding:20px 30px}
|
||||
|
||||
/* 상단메뉴 */
|
||||
#tnb {padding-left:50px;border-bottom:1px solid #ddd;background:#f9f9f5;zoom:1}
|
||||
#tnb {padding-left:10px;border-bottom:1px solid #ccc;background:#ebebe9;zoom:1}
|
||||
#tnb:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
#tnb li {float:left;margin-left:-1px}
|
||||
#tnb a {display:block;padding:20px;border-right:1px solid #e9e9e9;border-left:1px solid #e9e9e9;color:#595959;font-family:"dotum";font-size:0.875em;font-weight:bold;text-decoration:none}
|
||||
#tnb a {display:block;padding:0 20px;height:35px;border-right:1px solid #ddd;border-left:1px solid #ddd;color:#595959;font-family:"dotum";font-size:0.8em;font-weight:bold;text-decoration:none;line-height:3em}
|
||||
#tnb a:hover,
|
||||
#tnb a:focus {background:#faf9f5}
|
||||
#tnb a:focus {background:#f9f9f5}
|
||||
|
||||
/* 전체검색 */
|
||||
#hdsch {position:absolute;top:90px;right:50px;margin:0;padding:0;border:1px solid #ccc;background:#fff}
|
||||
#hdsch {position:absolute;top:77px;right:0;margin:0;padding:0;width:219px;border:1px solid #ccc;border-top:0;border-right:0;background:#fff}
|
||||
#hdsch legend {position:absolute;padding:0;width:0;height:0;border:0;overflow:hidden}
|
||||
#hdsch_stx {margin:5px 0 5px 5px;height:16px;width:166px;border:0;background:transparent}
|
||||
#hdsch_stx {margin:5px 0 5px 5px;padding:0 5px;height:25px;width:176px;border:0;background:transparent;font-size:1em;line-height:1.4em}
|
||||
#hdsch_stx:focus {background:#464649;color:#fff}
|
||||
#hdsch_submit {position:relative;margin-left:-5px}
|
||||
|
||||
/* 사이드 네비게이션: 아웃로그인, 설문조사 등 */
|
||||
#snb {position:absolute;top:150px;right:50px;font-family:"verdana","dotum"}
|
||||
#snb {z-index:3;position:absolute;top:120px;right:0;font-family:"verdana","dotum"}
|
||||
#snb ul {margin:0;padding:0;list-style:none}
|
||||
|
||||
/* 아웃로그인 */
|
||||
.outlogin {margin-bottom:5px;border:1px solid #dedace}
|
||||
.outlogin h2 {margin:0;height:0;overflow:hidden}
|
||||
.outlogin {position:relative;margin-bottom:5px;border-bottom:1px solid #dedace;line-height:1em}
|
||||
.outlogin h2 {margin:0;padding:0;height:0;overflow:hidden}
|
||||
/* 로그인 전 */
|
||||
#ol_before {padding:10px 10px 0;width:178px;background:#f9f9f5;font-size:0.7em}
|
||||
#ol_before {padding:10px 10px 0;width:199px;background:#f9f9f5;font-size:0.7em}
|
||||
#ol_before fieldset {margin:0;padding:0;border:0;background:transparent}
|
||||
#ol_before legend {position:absolute;padding:0;width:0;height:0;border:0;background:transparent;overflow:hidden}
|
||||
#ol_before input:focus {background:#333;color:#fff}
|
||||
#ol_before ul {position:relative;top:0;left:90px;margin:10px 0;width:90px;zoom:1}
|
||||
#ol_mb_id{display:block;margin-bottom:3px;padding:0 5px;width:185px;height:22px;border:1px solid #d7d7d7;background:#fff;line-height:1.6em}
|
||||
#ol_mb_id_label {z-index:2;position:absolute;top:18px;left:20px;color:#696969}
|
||||
#ol_mb_pw {display:block;padding:0 5px;width:120px;height:22px;border:1px solid #d7d7d7;background:#fff;line-height:1.6em}
|
||||
#ol_mb_pw_label {z-index:2;position:absolute;top:45px;left:20px;color:#696969}
|
||||
#auto_login {position:absolute;top:69px;left:13px}
|
||||
#auto_login_label {position:absolute;top:71px;left:28px;color:#696969;letter-spacing:-0.1em}
|
||||
#ol_before ul {position:relative;top:0;left:112px;margin:10px 0;width:90px;zoom:1}
|
||||
#ol_before ul:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
#ol_before li {float:left;margin-right:5px}
|
||||
#ol_before a {color:#696969;text-decoration:none;letter-spacing:-0.1em}
|
||||
#ol_mb_id{display:block;margin-bottom:3px;padding:0 5px;width:165px;height:22px;border:1px solid #d7d7d7;background:#fff;line-height:1.6em}
|
||||
#ol_mb_id_label {z-index:2;position:absolute;top:17px;left:20px;color:#696969}
|
||||
#ol_mb_pw {display:block;padding:0 5px;width:100px;height:22px;border:1px solid #d7d7d7;background:#fff;line-height:1.6em}
|
||||
#ol_mb_pw_label {z-index:2;position:absolute;top:45px;left:20px;color:#696969}
|
||||
#auto_login {position:absolute;top:71px;left:13px}
|
||||
#auto_login_label {position:absolute;top:72px;left:28px;color:#696969;letter-spacing:-0.1em}
|
||||
#ol_submit {position:absolute;top:38px;right:12px;width:60px;height:24px;border:1px solid #b7b7b7;background:#fff;font-size:1em;font-weight:bold;letter-spacing:-0.1em;line-height:2em}
|
||||
#ol_submit {position:absolute;top:37px;right:12px;width:60px;height:24px;border:1px solid #b7b7b7;background:#fff;font-size:1em;font-weight:bold;letter-spacing:-0.1em;line-height:2em}
|
||||
/* 로그인 후 */
|
||||
#ol_after {width:198px;background:#f9f9f5;color:#000;font-size:0.75em}
|
||||
#ol_after {width:219px;background:#f9f9f5;color:#000;font-size:0.75em}
|
||||
#ol_after header {padding:10px 0;text-align:center}
|
||||
#ol_after ul {padding:5px 0;background:#fff}
|
||||
#ol_after li a {display:block;position:relative;padding:7px 10px;color:#000;text-decoration:none}
|
||||
#ol_after li span {position:absolute;top:7px;right:10px}
|
||||
#ol_after footer {padding:7px 0 10px;text-align:center}
|
||||
#ol_after footer a {display:inline-block;padding:0 5px;color:#000;text-decoration:none}
|
||||
#ol_after footer a {display:inline-block;padding:0 10px;color:#000;text-decoration:none}
|
||||
|
||||
/* 설문조사 */
|
||||
#poll {width:198px;border:1px solid #dedace;background:#fff;font-size:0.75em}
|
||||
#poll {width:219px;border-bottom:1px solid #dedace;background:#fff;font-size:0.75em}
|
||||
#poll header {padding:10px 10px 1px;border-bottom:1px solid #efeada;background:#f9f9f5}
|
||||
#poll h2 {display:inline-block;margin:0;font-size:1em}
|
||||
#poll p {padding:0}
|
||||
@ -125,7 +125,7 @@ h6 {margin:0 0 20px}
|
||||
#poll footer input {padding:0 15px;height:24px;border:0;background:#333;color:#fff;font-size:0.9em;letter-spacing:-0.1em;vertical-align:top}
|
||||
#poll footer a {display:inline-block;padding:0 5px;height:22px;border:1px solid #b7b7b7;background:#fff;color:#000;font-size:0.9em;vertical-align:top;text-decoration:none;letter-spacing:-0.1em;line-height:2.1em}
|
||||
/* 설문조사 결과 (새창) */
|
||||
#poll_result section {margin:0 auto 20px;;padding:10px;width:90%}
|
||||
#poll_result section {margin:0 auto 20px;padding:10px;width:90%}
|
||||
#poll_result h2 {margin-top:10px;font-size:1em}
|
||||
#poll_result_list {border:1px solid #ddd;background:#f7f7f7}
|
||||
#poll_result_list h2 {padding:10px 0 0;text-align:center}
|
||||
@ -141,7 +141,6 @@ h6 {margin:0 0 20px}
|
||||
#poll_result_cmt h2 {text-align:center}
|
||||
#poll_result_cmt article {margin-bottom:15px;border-bottom:1px solid #e7e7e7}
|
||||
#poll_result_cmt h1 {display:inline-block;margin:0 10px 0 0;padding:0;font-size:0.875em}
|
||||
#poll_result_cmt h1 a {color:#000;text-decoration:none}
|
||||
#poll_result_cmt .poll_datetime,
|
||||
#poll_result_cmt .poll_del {font-size:0.75em}
|
||||
#poll_result_cmt p {padding:3px 0;font-size:0.875em}
|
||||
@ -151,12 +150,13 @@ h6 {margin:0 0 20px}
|
||||
#poll_result_another a {display:block;padding:5px 0}
|
||||
|
||||
/* 레이아웃 중간 */
|
||||
#wrapper {z-index:2;clear:both;position:relative;margin-right:270px;padding-left:50px;min-height:520px;height:auto !important;height:520px}
|
||||
#wrapper {z-index:2;clear:both;position:relative;margin:-2px 0 0 0;padding:1px 250px 30px 30px;min-height:520px;height:auto !important;height:520px;background:url("../img/wrapper_bg.jpg") top right repeat-y}
|
||||
#wrapper h1 {margin-top:30px}
|
||||
|
||||
/* 레이아웃 하단 */
|
||||
#footer {z-index:1;position:relative;margin-top:30px;padding:15px 0 20px;border-top:1px solid #ddd;color:#595959;font-size:0.75em}
|
||||
#footer {z-index:1;position:relative;padding:15px 0 20px;border-top:1px solid #ddd;color:#595959;font-size:0.75em}
|
||||
#footer h1 {margin:0;height:0;overflow:hidden}
|
||||
#footer section {margin-left:50px}
|
||||
#footer section {margin-left:30px}
|
||||
#footer h2 {margin:0;width:100px;color:#000;font-size:1em}
|
||||
#footer a {color:#595959;text-decoration:none}
|
||||
|
||||
@ -184,9 +184,20 @@ h6 {margin:0 0 20px}
|
||||
#popular li {float:left;margin-right:20px}
|
||||
|
||||
/* 카피라이트 */
|
||||
#footer p {position:absolute;top:25px;right:50px}
|
||||
#footer p {position:absolute;top:25px;right:30px}
|
||||
|
||||
/* ##################################################################### 스킨 및 컨텐츠 */
|
||||
/* 버튼 */
|
||||
.btn01 {display:inline-block;padding:0 10px;height:25px;border:1px solid #ff5e1c;background:#ff7200;color:#fff;font-size:0.8em;text-decoration:none;line-height:2.2em}
|
||||
.btn01:hover,
|
||||
.btn01:focus {}
|
||||
.btn02 {display:inline-block;padding:0 10px;height:25px;border:1px solid #ccc;background:#fafafa;color:#000;font-size:0.8em;text-decoration:none;line-height:2.2em}
|
||||
.btn02:hover,
|
||||
.btn02:focus {}
|
||||
.btn03 {display:inline-block;padding:0 10px;height:25px;border:1px solid #555;background:#666;color:#fff;font-size:0.8em;text-decoration:none;line-height:2.2em}
|
||||
.btn02:hover,
|
||||
.btn02:focus {}
|
||||
|
||||
/* 폼 테이블 */
|
||||
.frm_tbl {}
|
||||
.frm_tbl caption {padding-top:10px;border-bottom:1px solid #aaa;font-weight:bold}
|
||||
@ -200,8 +211,22 @@ h6 {margin:0 0 20px}
|
||||
.frm_tbl .frm_input:focus {padding:4px;border:0;background:#333;color:#fff}
|
||||
.frm_tbl textarea {width:90%}
|
||||
.frm_tbl select {padding:2px}
|
||||
.frm_file {display:block;margin-bottom:5px}
|
||||
.frm_info {display:block;padding:10px 0 0;color:#595959;line-height:1.3em}
|
||||
|
||||
.readonly {background:#ff3061}
|
||||
|
||||
/* 최신글 */
|
||||
.latest {clear:both;position:relative;margin-bottom:30px;padding:0 0 20px;border-bottom:1px solid #ccc;font-size:0.8em}
|
||||
.latest strong {display:block;margin-bottom:15px;padding:0 10px 10px;border-bottom:1px solid #eee;font-size:1.1em}
|
||||
.latest strong a {color:#000;text-decoration:none}
|
||||
.latest ul {margin:0;padding:0;list-style:none}
|
||||
.latest li {padding:0 10px}
|
||||
.latest li a {display:inline-block;padding:4px 0}
|
||||
.latest p {text-align:center}
|
||||
.latest_more {position:absolute;top:-2px;right:10px}
|
||||
.latest_more a {display:inline-block;padding:5px 0}
|
||||
|
||||
/* 테이블 항목별 정의 */
|
||||
.td_group {width:100px;text-align:center}
|
||||
.td_board {width:120px;text-align:center}
|
||||
@ -231,25 +256,34 @@ h6 {margin:0 0 20px}
|
||||
.sch_sideview {display:inline-block;font-size:0.75em}
|
||||
.sch_datetime {font-size:0.75em}
|
||||
|
||||
/* 새창 공통 */
|
||||
.new_win h1 {padding:10px 30px;background:#333;color:#fff;font-size:1.2em}
|
||||
.new_win article h1 {background:transparent;color:#000}
|
||||
.new_win table {margin:0 auto 30px;width:90%}
|
||||
.new_win fieldset {margin:0 auto 30px;width:90%}
|
||||
.new_win_ul {margin:-30px 0 20px 0;padding:0 0 0 30px;border-bottom:1px solid #ddd;background:#fff;font-size:0.8em;list-style:none;zoom:1}
|
||||
.new_win_ul:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
.new_win_ul li {float:left;margin-left:-1px}
|
||||
.new_win_ul a {display:block;padding:10px;border-right:1px solid #eee;border-left:1px solid #eee;color:#595959;font-family:"dotum";font-size:0.875em;font-weight:bold;text-decoration:none}
|
||||
.new_win_ul a:hover,
|
||||
.new_win_ul a:focus {background:#faf9f5}
|
||||
/* 게시판 목록 */
|
||||
#btn_bo_adm {text-align:center}
|
||||
#btn_bo_adm a {display:inline-block;margin-bottom:20px;padding:10px 20px;text-align:center}
|
||||
.btn_bo {margin-bottom:10px;zoom:1}
|
||||
.btn_bo:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
.btn_bo ul {margin:0;padding:0;list-style:none}
|
||||
.btn_bo_user {float:right}
|
||||
.btn_bo_user li {float:left;margin-left:5px}
|
||||
.btn_bo_user a {display:block}
|
||||
.btn_bo_adm {float:left}
|
||||
.btn_bo_adm li {float:left;margin-right:5px}
|
||||
.btn_bo_adm a {display:block}
|
||||
#bo_sch {float:left;padding:0;margin:0;border:0}
|
||||
#bo_sch legend {margin:0;padding:0;width:0;height:0;border:0;overflow:hidden}
|
||||
#bo_sch form {display:inline-block}
|
||||
#fcategory select {margin-right:10px;padding:2px;border:1px solid #ddd;background:#f9f9f5;vertical-align:middle}
|
||||
|
||||
/* 포인트 내역 */
|
||||
#point p {text-align:center}
|
||||
#point .td_datetime {width:150px}
|
||||
#bo_list caption {padding:0;height:0;overflow:hidden}
|
||||
.bo_cate_link {display:inline-block;margin-right:10px;color:#ff7200;font-weight:bold;text-decoration:none}
|
||||
.td_subject img {margin-left:5px}
|
||||
|
||||
/* 쪽지 */
|
||||
/* 게시판 쓰기 */
|
||||
#bo_w caption {padding:0;height:0;overflow:hidden}
|
||||
|
||||
/* 스크랩 */
|
||||
/* 게시판 읽기 */
|
||||
#bo_v {margin-bottom:30px;border:1px solid #ddd}
|
||||
#bo_v_h1 {padding:25px 15px 15px;border-bottom:1px solid #efeada;font-size:0.9em}
|
||||
#bo_v aside h2 {margin:0;padding:0;height:0;overflow:hidden}
|
||||
|
||||
/* 우편번호 검색 */
|
||||
#post_num dl {margin:0 auto 10px;padding:0;width:90%}
|
||||
@ -267,8 +301,58 @@ h6 {margin:0 0 20px}
|
||||
#fregister textarea {display:block;margin-bottom:10px;width:99%;height:200px;border:1px solid #ddd}
|
||||
#fregister label {display:inline-block;margin-right:10px}
|
||||
|
||||
/* 회원 패스워드 확인 */
|
||||
#member_confirm {padding:150px 0;background:#fcfcfc;text-align:center}
|
||||
#member_confirm legend {margin:0;padding:0;width:0;height:0;border:0;overflow:hidden}
|
||||
#member_confirm p {margin-bottom:20px;font-size:0.75em}
|
||||
#member_confirm_id {display:inline-block;margin-right:20px}
|
||||
|
||||
/* 비밀글 패스워드 확인 */
|
||||
#password_confirm {padding:150px 0;background:#fcfcfc;text-align:center}
|
||||
#password_confirm legend {margin:0;padding:0;width:0;height:0;border:0;overflow:hidden}
|
||||
#password_confirm p {margin-bottom:20px;font-size:0.75em}
|
||||
|
||||
/* 새창 공통 */
|
||||
.new_win h1 {padding:10px 30px;background:#393936;color:#fff;font-size:1.2em}
|
||||
.new_win h1 a {color:#fff;text-decoration:none}
|
||||
.new_win article h1 {background:transparent;color:#000}
|
||||
.new_win article h1 a {color:#000;text-decoration:none}
|
||||
.new_win h2 {font-size:1em}
|
||||
.new_win table {margin:0 auto 30px;width:90%}
|
||||
.new_win fieldset {margin:0 auto 30px;width:90%}
|
||||
.new_win_ul {margin:-30px 0 20px 0;padding:0 0 0 30px;border-bottom:1px solid #ddd;background:#fff;font-size:0.8em;list-style:none;zoom:1}
|
||||
.new_win_ul:after {display:block;visibility:hidden;clear:both;content:""}
|
||||
.new_win_ul li {float:left;margin-left:-1px}
|
||||
.new_win_ul a {display:block;padding:10px;border-right:1px solid #eee;border-left:1px solid #eee;color:#595959;font-family:"dotum";font-size:0.875em;font-weight:bold;text-decoration:none}
|
||||
.new_win_ul a:hover,
|
||||
.new_win_ul a:focus {background:#faf9f5}
|
||||
|
||||
/* 포인트 내역 */
|
||||
#point p {text-align:center}
|
||||
#point .td_datetime {width:150px}
|
||||
|
||||
/* 쪽지 */
|
||||
|
||||
/* 스크랩 */
|
||||
|
||||
/* 폼메일 */
|
||||
#formmail textarea {height:100px}
|
||||
|
||||
/* 자기소개 */
|
||||
#profile table {margin-bottom:15px}
|
||||
#profile section {margin:0 auto 20px;width:90%;border-bottom:1px solid #d9d9d9}
|
||||
#profile h2 {margin:0;font-size:0.8em;font-family:"gulim"}
|
||||
#profile p {font-size:0.75em}
|
||||
|
||||
/* 쪽지 읽기 */
|
||||
#memo_view section {margin:0 auto 20px;width:90%;border-bottom:1px solid #d9d9d9}
|
||||
#memo_view p {font-size:0.75em}
|
||||
|
||||
/* 쪽지 쓰기 */
|
||||
#memo_write textarea {height:100px}
|
||||
|
||||
/* pagination */
|
||||
.pg {margin-bottom:30px;font-size:0.875em;text-align:center}
|
||||
.pg {clear:both;margin-bottom:30px;font-size:0.875em;text-align:center}
|
||||
.pg_page, .pg_current {display:inline-block;position:relative;margin-left:-6px;padding:0 10px;height:25px;border:1px solid #ddd;background:#fff;line-height:1.9em;vertical-align:middle}
|
||||
.pg_page {text-decoration:none}
|
||||
.pg_current {font-weight:normal}
|
||||
8
extend/captcha.extend.php
Normal file
8
extend/captcha.extend.php
Normal file
@ -0,0 +1,8 @@
|
||||
<?
|
||||
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
|
||||
$captcha = (object)array(
|
||||
'lib' => $g4['path']."/plugin/captcha/captcha.lib.php",
|
||||
'js' => $g4['path']."/plugin/captcha/captcha.js"
|
||||
);
|
||||
?>
|
||||
@ -1,8 +0,0 @@
|
||||
<?
|
||||
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
|
||||
$captcha = (object)array(
|
||||
'lib' => $g4['path']."/plugin/tcaptcha/tcaptcha.lib.php",
|
||||
'js' => $g4['path']."/plugin/tcaptcha/tcaptcha.js"
|
||||
);
|
||||
?>
|
||||
2
head.php
2
head.php
@ -77,4 +77,4 @@ include_once($g4['path'].'/lib/popular.lib.php');
|
||||
<hr>
|
||||
|
||||
<div id="wrapper">
|
||||
<? if (!$bo_table) {?><h1><?=$g4['title']?></h1><?}?>
|
||||
<? if (!$bo_table || $w == 's') {?><h1><?=$g4['title']?></h1><?}?>
|
||||
@ -29,7 +29,7 @@ if (strstr($lo_url, "/$g4[admin]/") || $is_admin == 'super') $lo_url = '';
|
||||
|
||||
// 자바스크립트에서 go(-1) 함수를 쓰면 폼값이 사라질때 해당 폼의 상단에 사용하면
|
||||
// 캐쉬의 내용을 가져옴. 완전한지는 검증되지 않음
|
||||
header("Content-Type: text/html; charset=$g4[charset]");
|
||||
header("Content-Type: text/html; charset={$g4['charset']}");
|
||||
$gmnow = gmdate("D, d M Y H:i:s") . " GMT";
|
||||
header("Expires: 0"); // rfc2616 - Section 14.21
|
||||
header("Last-Modified: " . $gmnow);
|
||||
@ -73,7 +73,9 @@ var g4_is_ie = navigator.userAgent.toLowerCase().indexOf("msie") != -1;
|
||||
<script src="<?=$g4['path']?>/js/jquery-1.4.2.min.js"></script>
|
||||
<script src="<?=$g4['path']?>/js/common.js"></script>
|
||||
<script src="<?=$g4['path']?>/js/wrest.js"></script>
|
||||
<!--[if lte IE 8]>
|
||||
<script src="<?=$g4['path']?>/js/html5.js"></script>
|
||||
<![endif]-->
|
||||
<?
|
||||
if (!empty($g4['js_file'])) {
|
||||
foreach ($g4['js_file'] as $key=>$value) {
|
||||
|
||||
BIN
img/wrapper_bg.jpg
Normal file
BIN
img/wrapper_bg.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 351 B |
14
js/wrest.js
14
js/wrest.js
@ -13,9 +13,7 @@ function wrestItemname(fld)
|
||||
function wrestTrim(fld)
|
||||
{
|
||||
var pattern = /(^\s+)|(\s+$)/g; // \s 공백 문자
|
||||
//(/^\s+|\s+$/g,"");
|
||||
var str = fld.value.replace(pattern, "");
|
||||
return str;
|
||||
return fld.value.replace(pattern, "");
|
||||
}
|
||||
|
||||
// 필수 입력 검사
|
||||
@ -60,7 +58,7 @@ function wrestEmail(fld)
|
||||
}
|
||||
}
|
||||
|
||||
// 한글인지 검사 (자음, 모음만 있는 한글은 불가)
|
||||
// 한글인지 검사 (자음, 모음 조합된 한글만 가능)
|
||||
function wrestHangul(fld)
|
||||
{
|
||||
if (!wrestTrim(fld)) return;
|
||||
@ -69,7 +67,7 @@ function wrestHangul(fld)
|
||||
|
||||
if (pattern.test(fld.value)) {
|
||||
if (wrestFld == null) {
|
||||
wrestMsg = wrestItemname(fld) + ' : 한글이 아닙니다. (자음, 모음만 있는 한글은 처리하지 않습니다.)\n';
|
||||
wrestMsg = wrestItemname(fld) + ' : 한글이 아닙니다. (자음, 모음 조합된 한글만 가능)\n';
|
||||
wrestFld = fld;
|
||||
}
|
||||
}
|
||||
@ -186,7 +184,7 @@ function wrestMinLength(fld, css)
|
||||
{
|
||||
if (!wrestTrim(fld)) return;
|
||||
|
||||
var str = css.split('='); // minlength=?? <-- str[1]
|
||||
var str = css.split('_'); // minlength_?? <-- str[1]
|
||||
|
||||
if (wrestFld == null) {
|
||||
if (fld.value.length < parseInt(str[1])) {
|
||||
@ -283,8 +281,8 @@ function wrestSubmit()
|
||||
case "telnum" : wrestTelNum(el); break; // 김선용 2006.3 - 전화번호 형식 검사
|
||||
case "imgext" : wrestImgExt(el); break;
|
||||
default :
|
||||
// css 가 minlength= 로 시작한다면 = 뒤의 숫자는 최소길이값
|
||||
if (/^minlength\=/.test(css)) {
|
||||
// css 가 minlength_ 로 시작한다면 _ 뒤의 숫자는 최소길이값
|
||||
if (/^minlength\_/.test(css)) {
|
||||
wrestMinLength(el, css); break;
|
||||
} else if (/^extension\=/.test(css)) {
|
||||
wrestExtension(el, css); break;
|
||||
|
||||
@ -377,7 +377,7 @@ function get_list($write_row, $board, $skin_path, $subject_len=40)
|
||||
$list['file'] = get_file($board['bo_table'], $list['wr_id']);
|
||||
|
||||
if ($list['file']['count'])
|
||||
$list['icon_file'] = '<img src="'.$skin_path.'/img/icon_file.gif" alt="관련링크">';
|
||||
$list['icon_file'] = '<img src="'.$skin_path.'/img/icon_file.gif" alt="첨부파일">';
|
||||
|
||||
return $list;
|
||||
}
|
||||
@ -911,7 +911,7 @@ function get_sideview($mb_id, $name='', $email='', $homepage='')
|
||||
//$height = $size['1'];
|
||||
$width = $config['cf_member_icon_width'];
|
||||
$height = $config['cf_member_icon_height'];
|
||||
$tmp_name = '<img src="'.$icon_file.'" width="'.$width.'" height="'.$height.'" border="0" alt="첨부파일">';
|
||||
$tmp_name = '<img src="'.$icon_file.'" width="'.$width.'" height="'.$height.'" border="0" alt="">';
|
||||
|
||||
if ($config['cf_use_member_icon'] == 2) // 회원아이콘+이름
|
||||
$tmp_name = $tmp_name . ' <span class="member">'.$name.'</span>';
|
||||
@ -1562,69 +1562,9 @@ function convert_charset($from_charset, $to_charset, $str)
|
||||
}
|
||||
|
||||
|
||||
// 회원가입시 회원아이디 오류 검사
|
||||
function check_mb_id($reg_mb_id, $length=3)
|
||||
// mysql_real_escape_string 의 alias 기능을 한다.
|
||||
function escape_trim($field)
|
||||
{
|
||||
global $config, $g4;
|
||||
|
||||
if (!isset($reg_mb_id) || !$reg_mb_id)
|
||||
return "회원아이디를 입력해 주십시오.";
|
||||
|
||||
if (preg_match("/[^0-9a-z_]+/i", $reg_mb_id)) {
|
||||
return "회원아이디는 영문자, 숫자, _ 만 입력하세요."; // 유효하지 않은 회원아이디
|
||||
} else if (strlen($reg_mb_id) < $length) {
|
||||
return "회원아이디는 최소 {$length}글자 이상 입력하세요.";
|
||||
} else {
|
||||
$row = sql_fetch(" select count(*) as cnt from {$g4['member_table']} where mb_id = '$reg_mb_id' ");
|
||||
if ($row['cnt']) {
|
||||
return "이미 사용중인 회원아이디 입니다."; // 이미 존재하는 회원아이디
|
||||
} else {
|
||||
if (preg_match("/[\,]?{$reg_mb_id}/i", $config['cf_prohibit_id'])) {
|
||||
return "이미 예약된 단어로 사용할 수 없는 회원아이디 입니다."; // 예약어로 금지된 회원아이디
|
||||
}
|
||||
}
|
||||
}
|
||||
return ""; // 사용해도 좋은 회원아이디
|
||||
}
|
||||
|
||||
|
||||
function check_mb_nick($reg_mb_nick)
|
||||
{
|
||||
global $g4;
|
||||
|
||||
if (!isset($reg_mb_nick) || !$reg_mb_nick)
|
||||
return "별명을 입력해 주십시오.";
|
||||
|
||||
// 별명은 한글, 영문, 숫자만 가능
|
||||
if (!check_string($reg_mb_nick, _G4_HANGUL_ + _G4_ALPHABETIC_ + _G4_NUMERIC_)) {
|
||||
return "공백없이 한글, 영문, 숫자만 입력 가능합니다.";
|
||||
} else if (strlen($reg_mb_nick) < 4) {
|
||||
return "한글 2글자, 영문 4글자 이상 입력 가능합니다.";
|
||||
} else {
|
||||
$row = sql_fetch(" select count(*) as cnt from {$g4['member_table']} where mb_nick = '$reg_mb_nick' ");
|
||||
if ($row['cnt']) {
|
||||
return "이미 존재하는 별명입니다.";
|
||||
}
|
||||
}
|
||||
return ""; // 사용해도 좋은 별명
|
||||
}
|
||||
|
||||
|
||||
function check_mb_email($reg_mb_id, $reg_mb_email)
|
||||
{
|
||||
global $g4;
|
||||
|
||||
if (!isset($reg_mb_email) || !$reg_mb_email)
|
||||
return "E-mail 주소를 입력해 주십시오.";
|
||||
|
||||
if (!preg_match("/([0-9a-zA-Z_-]+)@([0-9a-zA-Z_-]+)\.([0-9a-zA-Z_-]+)/", $reg_mb_email)) {
|
||||
return "E-mail 주소가 형식에 맞지 않습니다.";
|
||||
} else {
|
||||
$row = sql_fetch(" select count(*) as cnt from {$g4['member_table']} where mb_id <> '$reg_mb_id' and mb_email = '$reg_mb_email' ");
|
||||
if ($row['cnt']) {
|
||||
return "이미 사용중인 E-mail 주소입니다.";
|
||||
}
|
||||
}
|
||||
return "";
|
||||
return mysql_real_escape_string(htmlentities(trim($field)));
|
||||
}
|
||||
?>
|
||||
@ -9,7 +9,7 @@ function mailer($fname, $fmail, $to, $subject, $content, $type=0, $file='', $cc=
|
||||
global $g4;
|
||||
|
||||
// 메일발송 사용을 하지 않는다면
|
||||
if (!$config[cf_email_use]) return;
|
||||
if (!$config['cf_email_use']) return;
|
||||
|
||||
$fname = "=?$g4[charset]?B?" . base64_encode($fname) . "?=";
|
||||
$subject = "=?$g4[charset]?B?" . base64_encode($subject) . "?=";
|
||||
|
||||
200
lib/register.lib.php
Normal file
200
lib/register.lib.php
Normal file
@ -0,0 +1,200 @@
|
||||
<?
|
||||
if (!defined('_GNUBOARD_')) exit;
|
||||
|
||||
function empty_mb_id($reg_mb_id)
|
||||
{
|
||||
if (trim($reg_mb_id)=='')
|
||||
return "회원아이디를 입력해 주십시오.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function valid_mb_id($reg_mb_id)
|
||||
{
|
||||
if (preg_match("/[^0-9a-z_]+/i", $reg_mb_id))
|
||||
return "회원아이디는 영문자, 숫자, _ 만 입력하세요.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function count_mb_id($reg_mb_id)
|
||||
{
|
||||
if (strlen($reg_mb_id) < 3)
|
||||
return "회원아이디는 최소 3글자 이상 입력하세요.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function exist_mb_id($reg_mb_id)
|
||||
{
|
||||
global $g4;
|
||||
$sql = " select count(*) as cnt from `{$g4['member_table']}` where mb_id = '$reg_mb_id' ";
|
||||
$row = sql_fetch($sql);
|
||||
if ($row['cnt'])
|
||||
return "이미 사용중인 회원아이디 입니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function reserve_mb_id($reg_mb_id)
|
||||
{
|
||||
global $config;
|
||||
if (preg_match("/[\,]?{$reg_mb_id}/i", $config['cf_prohibit_id']))
|
||||
return "이미 예약된 단어로 사용할 수 없는 회원아이디 입니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function empty_mb_nick($reg_mb_nick)
|
||||
{
|
||||
if (!trim($reg_mb_nick))
|
||||
return "별명을 입력해 주십시오.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function valid_mb_nick($reg_mb_nick)
|
||||
{
|
||||
if (!check_string($reg_mb_nick, _G4_HANGUL_ + _G4_ALPHABETIC_ + _G4_NUMERIC_))
|
||||
return "별명은 공백없이 한글, 영문, 숫자만 입력 가능합니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function count_mb_nick($reg_mb_nick)
|
||||
{
|
||||
if (strlen($reg_mb_nick) < 4)
|
||||
return "별명은 한글 2글자, 영문 4글자 이상 입력 가능합니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function exist_mb_nick($reg_mb_nick, $reg_mb_id)
|
||||
{
|
||||
global $g4;
|
||||
$row = sql_fetch(" select count(*) as cnt from {$g4['member_table']} where mb_nick = '$reg_mb_nick' and mb_id <> '$reg_mb_id' ");
|
||||
if ($row['cnt'])
|
||||
return "이미 존재하는 별명입니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function reserve_mb_nick($reg_mb_nick)
|
||||
{
|
||||
global $config;
|
||||
if (preg_match("/[\,]?{$reg_mb_nick}/i", $config['cf_prohibit_id']))
|
||||
return "이미 예약된 단어로 사용할 수 없는 별명 입니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function empty_mb_email($reg_mb_email)
|
||||
{
|
||||
if (!trim($reg_mb_email))
|
||||
return "E-mail 주소를 입력해 주십시오.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function valid_mb_email($reg_mb_email)
|
||||
{
|
||||
if (!preg_match("/([0-9a-zA-Z_-]+)@([0-9a-zA-Z_-]+)\.([0-9a-zA-Z_-]+)/", $reg_mb_email))
|
||||
return "E-mail 주소가 형식에 맞지 않습니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function exist_mb_email($reg_mb_email, $reg_mb_id)
|
||||
{
|
||||
global $g4;
|
||||
$row = sql_fetch(" select count(*) as cnt from `{$g4['member_table']}` where mb_email = '$reg_mb_email' and mb_id <> '$reg_mb_id' ");
|
||||
if ($row['cnt'])
|
||||
return "이미 사용중인 E-mail 주소입니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function empty_mb_name($reg_mb_name)
|
||||
{
|
||||
if (!trim($reg_mb_name))
|
||||
return "이름을 입력해 주십시오.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function valid_mb_name($mb_name)
|
||||
{
|
||||
if (!check_string($mb_name, _G4_HANGUL_))
|
||||
return "이름은 공백없이 한글만 입력 가능합니다.";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
return;
|
||||
?>
|
||||
|
||||
|
||||
// 회원가입시 회원아이디 오류 검사
|
||||
function check_mb_id($reg_mb_id, $length=3)
|
||||
{
|
||||
global $config, $g4;
|
||||
|
||||
if (!isset($reg_mb_id) || !$reg_mb_id)
|
||||
return "회원아이디를 입력해 주십시오.";
|
||||
|
||||
if (preg_match("/[^0-9a-z_]+/i", $reg_mb_id)) {
|
||||
return "회원아이디는 영문자, 숫자, _ 만 입력하세요."; // 유효하지 않은 회원아이디
|
||||
} else if (strlen($reg_mb_id) < $length) {
|
||||
return "회원아이디는 최소 {$length}글자 이상 입력하세요.";
|
||||
} else {
|
||||
$row = sql_fetch(" select count(*) as cnt from {$g4['member_table']} where mb_id = '$reg_mb_id' ");
|
||||
if ($row['cnt']) {
|
||||
return "이미 사용중인 회원아이디 입니다."; // 이미 존재하는 회원아이디
|
||||
} else {
|
||||
if (preg_match("/[\,]?{$reg_mb_id}/i", $config['cf_prohibit_id'])) {
|
||||
return "이미 예약된 단어로 사용할 수 없는 회원아이디 입니다."; // 예약어로 금지된 회원아이디
|
||||
}
|
||||
}
|
||||
}
|
||||
return ""; // 사용해도 좋은 회원아이디
|
||||
}
|
||||
|
||||
function check_mb_nick($reg_mb_nick, $reg_mb_id)
|
||||
{
|
||||
global $g4;
|
||||
|
||||
if (!isset($reg_mb_nick) || !$reg_mb_nick)
|
||||
return "별명을 입력해 주십시오.";
|
||||
|
||||
// 별명은 한글, 영문, 숫자만 가능
|
||||
if (!check_string($reg_mb_nick, _G4_HANGUL_ + _G4_ALPHABETIC_ + _G4_NUMERIC_)) {
|
||||
return "별명은 공백없이 한글, 영문, 숫자만 입력 가능합니다.";
|
||||
} else if (strlen($reg_mb_nick) < 4) {
|
||||
return "별명은 한글 2글자, 영문 4글자 이상 입력 가능합니다.";
|
||||
} else {
|
||||
$row = sql_fetch(" select count(*) as cnt from {$g4['member_table']} where mb_nick = '$reg_mb_nick' and mb_id <> '$reg_mb_id' ");
|
||||
if ($row['cnt']) {
|
||||
return "이미 존재하는 별명입니다.";
|
||||
}
|
||||
}
|
||||
return ""; // 사용해도 좋은 별명
|
||||
}
|
||||
|
||||
|
||||
function check_mb_email($reg_mb_email, $reg_mb_id)
|
||||
{
|
||||
global $g4;
|
||||
|
||||
if (!isset($reg_mb_email) || !$reg_mb_email)
|
||||
return "E-mail 주소를 입력해 주십시오.";
|
||||
|
||||
if (!preg_match("/([0-9a-zA-Z_-]+)@([0-9a-zA-Z_-]+)\.([0-9a-zA-Z_-]+)/", $reg_mb_email)) {
|
||||
return "E-mail 주소가 형식에 맞지 않습니다.";
|
||||
} else {
|
||||
$row = sql_fetch(" select count(*) as cnt from {$g4['member_table']} where mb_email = '$reg_mb_email' and mb_id <> '$reg_mb_id' ");
|
||||
if ($row['cnt']) {
|
||||
return "이미 사용중인 E-mail 주소입니다.";
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
@ -1,4 +1,4 @@
|
||||
function chk_captcha(input_key)
|
||||
function check_captcha(input_key)
|
||||
{
|
||||
if (typeof(input_key) != "undefined") {
|
||||
var captcha_result = false;
|
||||
@ -21,56 +21,14 @@ function chk_captcha(input_key)
|
||||
return true;
|
||||
}
|
||||
|
||||
function l_PlaySound(url, placeholderId) {
|
||||
if (document.getElementById) {
|
||||
var soundUrl = url;
|
||||
var placeholder = document.getElementById(placeholderId);
|
||||
|
||||
placeholder.innerHTML = "";
|
||||
|
||||
document.body.style.cursor = 'wait';
|
||||
var html5SoundPlayed = false;
|
||||
var browserCompatibilityCheck = document.createElement('audio');
|
||||
if (!!(browserCompatibilityCheck.canPlayType) &&
|
||||
!!(browserCompatibilityCheck.canPlayType("audio/wav")) &&
|
||||
!l_DetectFirefox3()) {
|
||||
sound = new Audio(soundUrl);
|
||||
sound.id = 'LBD_CaptchaSoundAudio';
|
||||
sound.autoplay = true;
|
||||
sound.controls = false;
|
||||
sound.autobuffer = false;
|
||||
sound.loop = false;
|
||||
|
||||
placeholder.appendChild(sound);
|
||||
html5SoundPlayed = true;
|
||||
}
|
||||
|
||||
if (!html5SoundPlayed) {
|
||||
var objectSrc = "<object id='LBD_CaptchaSoundObject' classid='clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95' height='0' width='0' style='width:0; height:0;'><param name='AutoStart' value='1' /><param name='Volume' value='0' /><param name='PlayCount' value='1' /><param name='FileName' value='" + soundUrl + "' /><embed id='LBD_CaptchaSoundEmbed' src='" + soundUrl + "' autoplay='true' hidden='true' volume='100' type='audio/x-wav' style='display:inline;' /></object>";
|
||||
|
||||
placeholder.innerHTML = objectSrc;
|
||||
}
|
||||
|
||||
document.body.style.cursor = 'default';
|
||||
}
|
||||
}
|
||||
|
||||
function l_DetectFirefox3() {
|
||||
var detected = false;
|
||||
if (navigator && navigator.userAgent) {
|
||||
var matches = navigator.userAgent.match(/(Firefox)\/(3\.6\.[^;\+,\/\s]+)/);
|
||||
if (matches) {
|
||||
detected = true;
|
||||
}
|
||||
}
|
||||
return detected;
|
||||
}
|
||||
|
||||
$(function() {
|
||||
$("#captcha").click(function() {
|
||||
$("#captcha").click(function(e) {
|
||||
this.setAttribute("src", g4_path+"/plugin/captcha/run.php?t="+(new Date).getTime());
|
||||
//$("#captcha_key").focus();//이미지 새로고침 후 입력박스에 포커스 : 지운아빠 2012-07-13
|
||||
//캡챠 클릭 시에 포커스 줘야 하는데 페이지 새로 고침되면 포커스를 줘서 주석처리 : 지운아빠 2012-08-03
|
||||
var keycode = (e.keyCode ? e.keyCode : e.which);
|
||||
// 첫 실행에서는 포커스를 주지 않음
|
||||
if (typeof(keycode) != "undefined") {
|
||||
$("#captcha_key").focus();//이미지 새로고침 후 입력박스에 포커스 : 지운아빠 2012-07-13
|
||||
}
|
||||
})
|
||||
.css("cursor", "pointer")
|
||||
.trigger("click");
|
||||
|
||||
@ -80,10 +80,6 @@ class captcha
|
||||
|
||||
// The text to draw
|
||||
$captcha_key = $this->get_captcha_key();
|
||||
/*
|
||||
$_SESSION['ss_captcha_key'] = $captcha_key;
|
||||
$_SESSION['ss_captcha_cnt'] = 0;
|
||||
*/
|
||||
|
||||
set_session('ss_captcha_key', $captcha_key);
|
||||
set_session('ss_captcha_cnt', 0);
|
||||
@ -149,16 +145,17 @@ function get_captcha($input_name, $captcha_no)
|
||||
set_session('ss_captcha_use', true);
|
||||
$captcha_class = str_pad($captcha_no,2,'0',STR_PAD_LEFT);// 캡챠 클래스를 선택할 수 있도록 지운아빠 2012-07-24
|
||||
|
||||
$s = "";
|
||||
$s .= "<fieldset id=\"captcha".$captcha_class."\">\n";
|
||||
$s .= "<legend>자동등록방지</legend>\n";
|
||||
$s .= "<img src=\"{$g4['path']}/plugin/captcha/img/dot.gif\" id=\"captcha\" alt=\"자동등록방지 이미지\" title=\"이미지를 클릭하시면 숫자가 바뀝니다.\"/>\n";
|
||||
$s .= "<a href=\"{$g4['path']}/plugin/captcha/wav.php\" id=\"captcha_wav\">wav</a>\n";
|
||||
$s .= "<label>자동등록방지 입력</label>\n";
|
||||
$s .= "<input type=\"text\" id=\"captcha_key\" name=\"$input_name\" class=\"captcha_box\" size=\"10\" maxlength=\"5\" required=\"required\" title=\"스팸방지\" title=\"이미지의 숫자를 순서대로 입력하세요.\" />\n";
|
||||
$s .= "<p>이미지의 숫자를 순서대로 입력하세요. 이미지를 클릭하시면 새로운 숫자가 나타납니다.</p>\n";
|
||||
$s .= "</fieldset>\n";
|
||||
return $s;
|
||||
$code = '<fieldset id="captcha'.$captcha_class.'">';
|
||||
$code .= '<legend>자동등록방지</legend>';
|
||||
//$code .= '<img src="" id="captcha" alt="자동등록방지 이미지" title="이미지를 클릭하시면 숫자가 바뀝니다.">';
|
||||
$code .= '<iframe id="captcha_iframe" name="captcha_iframe" src="'.$g4['path'].'/plugin/captcha/run.php" width="80" height="25" frameborder="0" scrolling="no"></iframe>';
|
||||
$code .= '<a href="'.$g4['path'].'/plugin/captcha/run.php" target="captcha_iframe">새로고침</a>';
|
||||
$code .= '<a href="'.$g4['path'].'/plugin/captcha/wav.php" id="captcha_wav">wav</a>';
|
||||
$code .= '<label>자동등록방지 입력</label>';
|
||||
$code .= '<input type="text" id="captcha_key" name="'.$input_name.'" class="captcha_box frm_input" size="10" maxlength="5" required title="자동등록방지 입력">';
|
||||
$code .= '<p>이미지의 숫자를 순서대로 입력하세요. 새로고침을 클릭하시면 새로운 숫자가 나타납니다.</p>';
|
||||
$code .= '</fieldset>';
|
||||
return $code;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -1,4 +0,0 @@
|
||||
<?
|
||||
$g4_path = "../.."; // common.php 의 상대 경로
|
||||
include_once("$g4_path/common.php");
|
||||
?>
|
||||
@ -1,32 +0,0 @@
|
||||
<?
|
||||
include_once("./_common.php");
|
||||
include_once("$g4[path]/plugin/tcaptcha/tcaptcha.lib.php");
|
||||
|
||||
$user_token = trim($_POST['user_token']);
|
||||
$tcaptcha_token = get_session("ss_tcaptcha_token");
|
||||
if (!$user_token) {
|
||||
die("{\"error\":\"자동등록방지용 사용자 토큰값이 없습니다.\"}");
|
||||
}
|
||||
|
||||
if ($user_token != $tcaptcha_token) {
|
||||
die("{\"error\":\"자동등록방지용 토큰값이 틀립니다.\"}");
|
||||
}
|
||||
|
||||
$tcaptcha_error_count = (int)get_session("ss_tcaptcha_error_count");
|
||||
if ($tcaptcha_error_count >= _ANSWER_COUNT_) {
|
||||
die("{\"error\":\"입력하신 답변 횟수가 "._ANSWER_COUNT_."회를 넘었습니다.\n\n문제를 클릭하신후 다시 답변해 주십시오.\"}");
|
||||
}
|
||||
|
||||
$user_answer = $_POST['user_answer'];
|
||||
$is_answer = (get_session("ss_tcaptcha_answer") == $user_answer);
|
||||
if ($is_answer == false) {
|
||||
$tcaptcha_error_count++;
|
||||
set_session("ss_tcaptcha_error_count", $tcaptcha_error_count);
|
||||
// 토큰을 다시 생성
|
||||
$token = _token();
|
||||
set_session("ss_tcaptcha_token", $token);
|
||||
die("{\"error\":\"입력하신 답이 틀렸습니다.\",\"token\":\"$token\"}");
|
||||
}
|
||||
|
||||
die("{\"error\":\"\"}");
|
||||
?>
|
||||
@ -1,8 +0,0 @@
|
||||
<?php
|
||||
include_once("./_common.php");
|
||||
include_once("$g4[path]/plugin/tcaptcha/tcaptcha.lib.php");
|
||||
|
||||
$tcaptcha = new tcaptcha("kr");
|
||||
$tcaptcha->run();
|
||||
die("{\"tcaptcha\":\"{$tcaptcha->question}\",\"token\":\"{$tcaptcha->token}\"}");
|
||||
?>
|
||||
@ -1,33 +0,0 @@
|
||||
<?php
|
||||
include_once("./_common.php");
|
||||
include_once("$g4[path]/head.sub.php");
|
||||
?>
|
||||
<script src="<?="{$g4['path']}/plugin/tcaptcha/tcaptcha.js"?>"></script>
|
||||
|
||||
<h2>텍스트 캡챠 샘플 페이지</h2>
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
<form method="post" onsubmit="return form_submit(this);">
|
||||
<h2>문) <span id="tcaptcha"></span></h2>
|
||||
<div>
|
||||
답) 반드시 숫자로 입력하세요. <input type='text' id='user_answer' name='user_answer' size='3' maxlength='3' title='자동가입방지' required='required' />
|
||||
<input type='hidden' id='user_token' name='user_token' />
|
||||
<input type='submit' />
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<script>
|
||||
function form_submit(f)
|
||||
{
|
||||
if (!chk_tcaptcha(f.user_answer, f.user_token)) {
|
||||
return false;
|
||||
}
|
||||
alert("정답");
|
||||
return true;
|
||||
}
|
||||
</script>
|
||||
|
||||
<?
|
||||
include_once("$g4[path]/tail.sub.php");
|
||||
?>
|
||||
@ -1,44 +0,0 @@
|
||||
function chk_tcaptcha(user_answer, user_token)
|
||||
{
|
||||
if (typeof(user_answer) == "undefined") return false;
|
||||
if (typeof(user_token ) == "undefined") return false;
|
||||
|
||||
var error = false;
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: g4_path+"/plugin/tcaptcha/chk_answer.ajax.php",
|
||||
async: false,
|
||||
data: {
|
||||
"user_answer": user_answer.value,
|
||||
"user_token" : user_token.value
|
||||
},
|
||||
dataType: "json",
|
||||
success: function(data, textStatus, jqXHR) {
|
||||
error = data.error;
|
||||
if (data.token) {
|
||||
$("#user_token").val(data.token);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
if (error) {
|
||||
alert(error);
|
||||
user_answer.select();
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
$(function() {
|
||||
$("#tcaptcha").click(function() {
|
||||
$.ajax({
|
||||
url: g4_path+"/plugin/tcaptcha/run.php?t="+(new Date).getTime(),
|
||||
dataType: "json",
|
||||
success: function(data, textStatus, jqXHR) {
|
||||
$("#tcaptcha").html(data.tcaptcha);
|
||||
$("#user_token").val(data.token);
|
||||
}
|
||||
})
|
||||
})
|
||||
.css("cursor", "pointer");
|
||||
});
|
||||
@ -1,360 +0,0 @@
|
||||
<?php
|
||||
define('_ANSWER_COUNT_', 3);
|
||||
|
||||
$text_number = new stdClass;
|
||||
$text_number->kr = new stdClass;
|
||||
$text_number->en = new stdClass;
|
||||
|
||||
//$text_number->kr = (object)array('a'=>1);
|
||||
|
||||
// 기수 cardinal (양을 나타낼때 사용하는 수)
|
||||
$text_number->kr = (object)array(
|
||||
'number' => array(
|
||||
array("영","일","이","삼","사","오","육","칠","팔","구","십"),
|
||||
array("영","하나","둘","셋","넷","다섯","여섯","일곱","여덟","아홉","열")
|
||||
),
|
||||
// 서수 ordinal (순서를 나타낼때 사용하는 수)
|
||||
'ordinal' => array("영","첫번째","두번째","세번째","네번째","다섯번째","여섯번째","일곱번째","여덟번째","아홉번째","열번째"),
|
||||
'high' => array("다음 중 가장 큰 수는? %s.", "%s 중에서 가장 큰 수는?"),
|
||||
'low' => array("다음 중 가장 작은 수는? %s.", "%s 중에서 가장 작은 수는?"),
|
||||
'position0' => array("다음 중 %s 숫자는? %s."), // 인수가 두개 있으며 첫번째에 위치가, 두번째 인수에 질문이 나열된다.
|
||||
'position1' => array("%s 중 %s 숫자는?"), // 인수가 두개 있으며 첫번째에 인수가 두반째에 위치에 대한 질문이 나열된다.
|
||||
'add' => array("%s 더하기 %s ?", "%s + %s = ?"),
|
||||
'subtract' => array("%s 빼기 %s ?", "%s - %s = ?"),
|
||||
'multiply' => array("%s 곱하기 %s ?"),
|
||||
//'multiply' => array("%s 곱하기 %s ?", "%s 의 %s 배는 ?"),
|
||||
'and' => "그리고",
|
||||
);
|
||||
/*
|
||||
// 서수 ordinal (순서를 나타낼때 사용하는 수)
|
||||
$text_number->kr->ordinal = array("영","첫번째","두번째","세번째","네번째","다섯번째","여섯번째","일곱번째","여덟번째","아홉번째","열번째");
|
||||
$text_number->kr->plus = array("+","+","더하기");
|
||||
$text_number->kr->minus = array("-","-","빼기");
|
||||
$text_number->kr->multiply = array("x","×","*","곱하기");
|
||||
$text_number->kr->high = array("다음 중 가장 큰 수는? %s.", "%s 중에서 가장 큰 수는?");
|
||||
$text_number->kr->low = array("다음 중 가장 작은 수는? %s.", "%s 중에서 가장 작은 수는?");
|
||||
$text_number->kr->position0 =array("다음 중 %s 숫자는? %s."); // 인수가 두개 있으며 첫번째에 위치가, 두번째 인수에 질문이 나열된다.
|
||||
$text_number->kr->position1 =array("%s 중 %s 숫자는?"); // 인수가 두개 있으며 첫번째에 인수가 두반째에 위치에 대한 질문이 나열된다.
|
||||
$text_number->kr->add = array("%s 더하기 %s ?", "%s + %s = ?");
|
||||
$text_number->kr->subtract = array("%s 빼기 %s ?", "%s - %s = ?");
|
||||
$text_number->kr->and = "그리고";
|
||||
*/
|
||||
|
||||
$text_number->en = (object)array(
|
||||
'number' => array(
|
||||
array("zero","one","two","three","four","five","six","seven","eight","nine","ten"),
|
||||
array("zero","first","second","third","fourth","fifth","sixth","seventh","eighth","ninth","tenth")
|
||||
),
|
||||
'ordinal' => array("zero","1st","2nd","3rd","4th","5th","6th","7th","8th","9th","10th"),
|
||||
'high' => array("%s : which of these is the largest?"),
|
||||
'low' => array("%s : which of these is the smallest?"),
|
||||
'position0' => array("lists %s postion number ? %s."), // 인수가 두개 있으며 첫번째에 위치가, 두번째 인수에 질문이 나열된다.
|
||||
'position1' => array("%s lists %s postion number ?"), // 인수가 두개 있으며 첫번째에 인수가 두반째에 위치에 대한 질문이 나열된다.
|
||||
'add' => array("%s add %s ?", "%s plus %s ?", "%s + %s = ?"),
|
||||
'subtract' => array("%s subtract %s ?", "%s minus %s ?", "%s - %s = ?"),
|
||||
'multiply' => array("%s multiply %s ?"),
|
||||
'and' => "and"
|
||||
);
|
||||
|
||||
class tcaptcha
|
||||
{
|
||||
var $language;
|
||||
var $tnum; // text number 의 약어
|
||||
var $min_count = 3; // 최소 문제 갯수
|
||||
var $max_count = 4; // 최대 문제 갯수
|
||||
var $select; // 결과값 배열
|
||||
var $arabia; // 결과값 아라비아 숫자 배열
|
||||
var $count; // 결과값 수
|
||||
var $high; // 결과값 배열 중 가장 큰 값
|
||||
var $low; // 결과값 배열 중 가장 작은 값
|
||||
var $position; // 몇번째 숫자는 값이 얼마인가?
|
||||
var $question; // 문제
|
||||
var $answer; // 더하기, 빼기 시에 답
|
||||
|
||||
function tcaptcha($language='') {
|
||||
if (trim($language) == '')
|
||||
$language = 'kr';
|
||||
$this->set_language($language);
|
||||
}
|
||||
|
||||
function set_language($language) {
|
||||
$this->language = $language;
|
||||
}
|
||||
|
||||
function set_min_count($min_count) {
|
||||
$this->min_count = $min_count;
|
||||
}
|
||||
|
||||
function set_max_count($max_count) {
|
||||
$this->max_count = $max_count;
|
||||
}
|
||||
|
||||
function random_question() {
|
||||
$this->count = $count = rand($this->min_count, $this->max_count); // 숫자를 몇개 뿌려줄것인지?
|
||||
$select = array(); // 선택된 값들
|
||||
$arabia = array(); // 선택된 값들의 아라비아 숫자
|
||||
$high = 0;
|
||||
$low = 9999;
|
||||
while ($count != count($select)) {
|
||||
$choice = rand(0, count($this->tnum->number)-1); // 여러개의 숫자 형식중 하나를 선택한다.
|
||||
$number = $this->tnum->number[$choice];
|
||||
$index = rand(1, count($number)-1); // 영은 빼고
|
||||
if (in_array($index, $arabia)) continue;
|
||||
if (rand(0, 3) < 3) { // 아라비아 숫자도 들어가도록 한다.
|
||||
array_push($select, $number[$index]);
|
||||
} else {
|
||||
array_push($select, $index);
|
||||
}
|
||||
array_push($arabia, $index);
|
||||
if ($index > $high) {
|
||||
$high = $index;
|
||||
}
|
||||
if ($index < $low) {
|
||||
$low = $index;
|
||||
}
|
||||
}
|
||||
|
||||
$this->select = $select;
|
||||
$this->arabia = $arabia;
|
||||
$this->high = $high; // 배열중 가장 큰 값
|
||||
$this->low = $low; // 배열중 가장 작은 값
|
||||
|
||||
return $select;
|
||||
}
|
||||
|
||||
// 숫자의 중간에 , 나 and 를 넣는다.
|
||||
function comma_question($question) {
|
||||
$str = "";
|
||||
$and = false;
|
||||
$comma = "";
|
||||
for ($qi=0; $qi<count($question)-1; $qi++) {
|
||||
$comma = ", ";
|
||||
if ($and == false) {
|
||||
if (rand(0,2) == 0) {
|
||||
$comma = " {$this->tnum->and} ";
|
||||
$and = true;
|
||||
}
|
||||
}
|
||||
|
||||
//$unicode_array = utf8_to_unicode($question[$qi]);
|
||||
//array_walk($unicode_array, create_function('&$v,$k', '$v = "&#" . $v . ";";'));
|
||||
//print_r($unicode_array);
|
||||
//$unicode = implode("", $unicode_array);
|
||||
$str = $str . "<strong>" . $question[$qi] . "</strong>" . $comma;
|
||||
}
|
||||
return $str . "<strong>" . $question[$qi] . "</strong>";
|
||||
}
|
||||
|
||||
// 가장 큰수나 가장 작은수의 질문을 만든다.
|
||||
function series_question($question, $highlow) {
|
||||
$question = $this->comma_question($question);
|
||||
$highlow_array = $this->tnum->$highlow;
|
||||
return sprintf($highlow_array[rand(0, count($highlow_array)-1)], $question);
|
||||
}
|
||||
|
||||
// 몇번째 어떤수가 있는지의 질문을 만든다.
|
||||
function position_question($question) {
|
||||
$question = $this->comma_question($question);
|
||||
$position = rand(0, $this->count-1);
|
||||
$ordinal = $this->get_ordinal_value($position+1);
|
||||
$this->position = $this->arabia[$position]; // 몇번째 숫자는?의 답
|
||||
// 포지션 배열에 따라 인수의 위치가 다르다.
|
||||
if (rand(0,1) == 0) {
|
||||
$position_array = $this->tnum->position0;
|
||||
return sprintf($position_array[rand(0, count($position_array)-1)], $ordinal, $question);
|
||||
} else {
|
||||
$position_array = $this->tnum->position1;
|
||||
return sprintf($position_array[rand(0, count($position_array)-1)], $question, $ordinal);
|
||||
}
|
||||
}
|
||||
|
||||
// 더하기 계산 문제
|
||||
function add_question($question) {
|
||||
$add_array = $this->tnum->add;
|
||||
$rand = rand(0, count($add_array)-1);
|
||||
$first_number = $this->arabia[0];
|
||||
$second_number = $this->arabia[1];
|
||||
$this->answer = $first_number + $second_number;
|
||||
return sprintf($add_array[rand(0, count($add_array)-1)], $question[0], $question[1] );
|
||||
}
|
||||
|
||||
// a, b 변수값을 바꾼다.
|
||||
function swap(&$a, &$b)
|
||||
{
|
||||
$temp = $a;
|
||||
$a = $b;
|
||||
$b = $temp;
|
||||
}
|
||||
|
||||
// 빼기 계산 문제
|
||||
function subtract_question($question) {
|
||||
$subtract_array = $this->tnum->subtract;
|
||||
$rand = rand(0, count($subtract_array)-1);
|
||||
$first_number = $this->arabia[0];
|
||||
$second_number = $this->arabia[1];
|
||||
if ($first_number < $second_number) {
|
||||
$this->swap($first_number, $second_number);
|
||||
$this->swap($question[0], $question[1]);
|
||||
}
|
||||
$this->answer = $first_number - $second_number;
|
||||
return sprintf($subtract_array[$rand], $question[0], $question[1] );
|
||||
}
|
||||
|
||||
// 곱하기 계산 문제
|
||||
function multiply_question($question) {
|
||||
$multiply_array = $this->tnum->multiply;
|
||||
$rand = rand(0, count($multiply_array)-1);
|
||||
$first_number = $this->arabia[0];
|
||||
$second_number = $this->arabia[1];
|
||||
$this->answer = $first_number * $second_number;
|
||||
return sprintf($multiply_array[$rand], $question[0], $question[1] );
|
||||
}
|
||||
|
||||
// 서수값을 반환
|
||||
function get_ordinal_value($index) {
|
||||
return $this->tnum->ordinal[$index];
|
||||
}
|
||||
|
||||
// ajax 비교를 위한 코드 : 답을 저장해 놓는다.
|
||||
function set_session($answer) {
|
||||
$this->token = _token();
|
||||
set_session("ss_tcaptcha_token", $this->token);
|
||||
set_session("ss_tcaptcha_answer", $answer);
|
||||
set_session("ss_tcaptcha_error_count", 0);
|
||||
}
|
||||
|
||||
function run() {
|
||||
global $text_number;
|
||||
$this->tnum = $text_number->{$this->language};
|
||||
$random_question = $this->random_question();
|
||||
switch (rand(0,5)) {
|
||||
case 0 :
|
||||
$question = $this->series_question( $random_question, 'high' );
|
||||
$this->set_session($this->high);
|
||||
break;
|
||||
case 1 :
|
||||
$question = $this->series_question( $random_question, 'low' );
|
||||
$this->set_session($this->low);
|
||||
break;
|
||||
case 2 :
|
||||
$question = $this->add_question( $random_question );
|
||||
$this->set_session($this->answer);
|
||||
break;
|
||||
case 3 :
|
||||
$question = $this->subtract_question( $random_question );
|
||||
$this->set_session($this->answer);
|
||||
break;
|
||||
case 4 :
|
||||
$question = $this->multiply_question( $random_question );
|
||||
$this->set_session($this->answer);
|
||||
break;
|
||||
default :
|
||||
$question = $this->position_question( $random_question );
|
||||
$this->set_session($this->position);
|
||||
break;
|
||||
}
|
||||
$this->question = $question;
|
||||
return $question;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function html_unicode($unicode)
|
||||
{
|
||||
return "&#".$unicode.";";
|
||||
}
|
||||
|
||||
|
||||
function utf8_to_unicode( $str )
|
||||
{
|
||||
$unicode = array();
|
||||
$values = array();
|
||||
$lookingFor = 1;
|
||||
|
||||
for ($i = 0; $i < strlen( $str ); $i++ ) {
|
||||
|
||||
$thisValue = ord( $str[ $i ] );
|
||||
|
||||
if ( $thisValue < 128 ) $unicode[] = $thisValue;
|
||||
else {
|
||||
|
||||
if ( count( $values ) == 0 ) $lookingFor = ( $thisValue < 224 ) ? 2 : 3;
|
||||
|
||||
$values[] = $thisValue;
|
||||
|
||||
if ( count( $values ) == $lookingFor ) {
|
||||
|
||||
$number = ( $lookingFor == 3 ) ?
|
||||
( ( $values[0] % 16 ) * 4096 ) + ( ( $values[1] % 64 ) * 64 ) + ( $values[2] % 64 ):
|
||||
( ( $values[0] % 32 ) * 64 ) + ( $values[1] % 64 );
|
||||
|
||||
$unicode[] = $number;
|
||||
$values = array();
|
||||
$lookingFor = 1;
|
||||
|
||||
} // if
|
||||
|
||||
} // if
|
||||
|
||||
} // for
|
||||
|
||||
return $unicode;
|
||||
|
||||
}
|
||||
|
||||
function unicode_to_utf8($dec)
|
||||
{
|
||||
$unicode_hex = dechex($dec);
|
||||
$unicode = hexdec($unicode_hex);
|
||||
|
||||
$utf8 = "";
|
||||
|
||||
if ($unicode < 128) {
|
||||
$utf8 = chr($unicode);
|
||||
} elseif ( $unicode < 2048 ) {
|
||||
$utf8 .= chr( 192 + ( ( $unicode - ( $unicode % 64 ) ) / 64 ) );
|
||||
$utf8 .= chr( 128 + ( $unicode % 64 ) );
|
||||
} else {
|
||||
$utf8 .= chr( 224 + ( ( $unicode - ( $unicode % 4096 ) ) / 4096 ) );
|
||||
$utf8 .= chr( 128 + ( ( ( $unicode % 4096 ) - ( $unicode % 64 ) ) / 64 ) );
|
||||
$utf8 .= chr( 128 + ( $unicode % 64 ) );
|
||||
}
|
||||
return $utf8;
|
||||
}
|
||||
|
||||
|
||||
function chk_captcha()
|
||||
{
|
||||
$token = get_session("ss_tcaptcha_token");
|
||||
if ($token && $token == $_POST['user_token']) {
|
||||
$answer = get_session("ss_tcaptcha_answer");
|
||||
if ($answer && $answer == $_POST['user_answer']) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
set_session("ss_tcaptcha_token", "");
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
function chk_js_captcha()
|
||||
{
|
||||
return "if (!chk_tcaptcha(f.user_answer, f.user_token)) { return false; }\n";
|
||||
|
||||
}
|
||||
|
||||
|
||||
function run_captcha($encoding='kr')
|
||||
{
|
||||
$captcha = new tcaptcha($encoding);
|
||||
|
||||
$str = "<fieldset id=\"captcha\">\n";
|
||||
$str .= "<legend>자동등록방지</legend>\n";
|
||||
$str .= "<div><a href=\"javascript:;\" id=\"tcaptcha\">".$captcha->run()."</a></div>\n";
|
||||
$str .= "<span>답은 반드시 숫자로 입력하세요.</span>\n";
|
||||
$str .= "<input type=\"text\" id=\"user_answer\" name=\"user_answer\" title=\"자동등록방지 숫자\" size=\"10\" required=\"required\" />\n";
|
||||
$str .= "<input type=\"hidden\" id=\"user_token\" name=\"user_token\" value=\"{$captcha->token}\" />";
|
||||
$str .= "</fieldset>\n";
|
||||
return $str;
|
||||
}
|
||||
?>
|
||||
@ -11,26 +11,26 @@ if ($is_nogood) $colspan++;
|
||||
|
||||
<? if (!$wr_id) {?><h1><?=$g4['title']?></h1><?}?>
|
||||
|
||||
<? if ($admin_href) { ?><div id="bo_admin_btn"><a href="<?=$admin_href?>">관리자 바로가기</a></div><?}?>
|
||||
<? if ($admin_href) { ?><div id="btn_board_adm"><a href="<?=$admin_href?>">게시판 관리자 바로가기</a></div><?}?>
|
||||
|
||||
<div>
|
||||
<? if ($is_category) { ?>
|
||||
<form name="fcategory" method="get">
|
||||
<div class="btn_bo">
|
||||
<fieldset id="bo_sch">
|
||||
<legend>게시물 분류 및 검색</legend>
|
||||
|
||||
<? if ($is_category) { ?>
|
||||
<form id="fcategory" name="fcategory" method="get">
|
||||
<select name="sca" onchange="location='<?=$category_location?>'+<?=strtolower($g4['charset'])=='utf-8' ? "encodeURIComponent(this.value)" : "this.value"?>;">
|
||||
<option value=''>전체</option>
|
||||
<?=$category_option?>
|
||||
</select>
|
||||
</form>
|
||||
<? } ?>
|
||||
</form>
|
||||
<? } ?>
|
||||
|
||||
<form name="fsearch" method="get">
|
||||
<input type="hidden" name="bo_table" value="<?=$bo_table?>">
|
||||
<input type="hidden" name="sca" value="<?=$sca?>">
|
||||
<fieldset>
|
||||
<legend>게시물 검색</legend>
|
||||
<span>Total <?=number_format($total_count)?>건 중</span>
|
||||
<label for="sfl">검색대상</label>
|
||||
<select id="sfl" name="sfl">
|
||||
<form name="fsearch" method="get">
|
||||
<input type="hidden" name="bo_table" value="<?=$bo_table?>">
|
||||
<input type="hidden" name="sca" value="<?=$sca?>">
|
||||
<span>Total <?=number_format($total_count)?>건</span>
|
||||
<select name="sfl" title="검색대상">
|
||||
<option value="wr_subject">제목</option>
|
||||
<option value="wr_content">내용</option>
|
||||
<option value="wr_subject||wr_content">제목+내용</option>
|
||||
@ -39,23 +39,23 @@ if ($is_nogood) $colspan++;
|
||||
<option value="wr_name,1">글쓴이</option>
|
||||
<option value="wr_name,0">글쓴이(코)</option>
|
||||
</select>
|
||||
<label for="stx">검색어</label>
|
||||
<input id="stx" name="stx" maxlength="15" required value="<?=stripslashes($stx)?>">
|
||||
<input name="stx" class="fieldset_input required" maxlength="15" size="15" required value="<?=stripslashes($stx)?>" title="검색어">
|
||||
<input type="radio" id="sop_and" name="sop" value="and">
|
||||
<label for="sop_and">and</label>
|
||||
<input type="radio" id="sop_or" name="sop" value="or">
|
||||
<label for="sop_or">or</label>
|
||||
<input type="submit" value="검색">
|
||||
</fieldset>
|
||||
</form>
|
||||
</div>
|
||||
<input type="submit" class="fieldset_submit" value="검색">
|
||||
</form>
|
||||
|
||||
<? if ($rss_href || $write_href) {?>
|
||||
<ul>
|
||||
<? if ($rss_href) { ?><li><a href="<?=$rss_href?>">RSS</a></li><? } ?>
|
||||
<? if ($write_href) { ?><li><a href="<?=$write_href?>">글쓰기</a></li><? } ?>
|
||||
</ul>
|
||||
<? } ?>
|
||||
</fieldset>
|
||||
|
||||
<? if ($rss_href || $write_href) {?>
|
||||
<ul class="btn_bo_user">
|
||||
<? if ($rss_href) { ?><li><a href="<?=$rss_href?>" class="btn02">RSS</a></li><? } ?>
|
||||
<? if ($write_href) { ?><li><a href="<?=$write_href?>" class="btn01">글쓰기</a></li><? } ?>
|
||||
</ul>
|
||||
<? } ?>
|
||||
</div>
|
||||
|
||||
<!-- 게시판 목록 시작 -->
|
||||
<form id="fboardlist" name="fboardlist" method="post">
|
||||
@ -65,7 +65,7 @@ if ($is_nogood) $colspan++;
|
||||
<input type="hidden" name="spt" value="<?=$spt?>">
|
||||
<input type="hidden" name="page" value="<?=$page?>">
|
||||
<input type="hidden" name="sw" value="">
|
||||
<table>
|
||||
<table id="bo_list">
|
||||
<caption><?=$board['bo_subject']?> 목록</caption>
|
||||
<thead>
|
||||
<tr>
|
||||
@ -83,8 +83,8 @@ if ($is_nogood) $colspan++;
|
||||
<?
|
||||
for ($i=0; $i<count($list); $i++) {
|
||||
?>
|
||||
<tr>
|
||||
<td>
|
||||
<tr<? if ($list[$i]['is_notice']) echo " class=\"board_notice\"";?>>
|
||||
<td class="td_bignum">
|
||||
<?
|
||||
if ($list[$i]['is_notice']) // 공지사항
|
||||
echo '공지';
|
||||
@ -95,22 +95,22 @@ for ($i=0; $i<count($list); $i++) {
|
||||
?>
|
||||
</td>
|
||||
<? if ($is_checkbox) { ?><td><input type="checkbox" name="chk_wr_id[]" value="<?=$list[$i]['wr_id']?>" title="이 게시물 선택"></td><? } ?>
|
||||
<td>
|
||||
<td class="td_subject">
|
||||
<?
|
||||
echo $list[$i]['reply'];
|
||||
echo $list[$i]['icon_reply'];
|
||||
if ($is_category && $list[$i]['ca_name']) {
|
||||
echo '<a href="'.$list[$i]['ca_name_href'].'">'.$list[$i]['ca_name'].'</a>';
|
||||
}
|
||||
?>
|
||||
<a href="<?=$list[$i]['ca_name_href']?>" class="board_cate_link"><?=$list[$i]['ca_name']?></a>
|
||||
<? } ?>
|
||||
|
||||
if ($list[$i]['is_notice'])
|
||||
echo '<a href="'.$list[$i]['href'].'">'.$list[$i]['subject'].'</a>';
|
||||
else
|
||||
echo '<a href="'.$list[$i]['href'].'">'.$list[$i]['subject'].'</a>';
|
||||
<a href="<?=$list[$i]['href']?>"><?=$list[$i]['subject']?>
|
||||
|
||||
if ($list[$i]['comment_cnt'])
|
||||
echo '<a href="'.$list[$i]['comment_href'].'">'.$list[$i]['comment_cnt'].'</a>';
|
||||
<? if ($list[$i]['comment_cnt']) { ?><?=$list[$i]['comment_cnt'];?><? } ?>
|
||||
|
||||
</a>
|
||||
|
||||
<?
|
||||
// if ($list[$i]['link']['count']) { echo '['.$list[$i]['link']['count']}.']'; }
|
||||
// if ($list[$i]['file']['count']) { echo '<'.$list[$i]['file']['count'].'>'; }
|
||||
|
||||
@ -121,11 +121,11 @@ for ($i=0; $i<count($list); $i++) {
|
||||
if (isset($list[$i]['icon_secret'])) echo $list[$i]['icon_secret'];
|
||||
?>
|
||||
</td>
|
||||
<td><div style="position:relative"><?=$list[$i]['name']?></div></td>
|
||||
<td><?=$list[$i]['datetime2']?></td>
|
||||
<td><?=$list[$i]['wr_hit']?></td>
|
||||
<? if ($is_good) { ?><td><?=$list[$i]['wr_good']?></td><? } ?>
|
||||
<? if ($is_nogood) { ?><td><?=$list[$i]['wr_nogood']?></td><? } ?>
|
||||
<td class="td_name"><div><?=$list[$i]['name']?></div></td>
|
||||
<td class="td_date"><?=$list[$i]['datetime2']?></td>
|
||||
<td class="td_num"><?=$list[$i]['wr_hit']?></td>
|
||||
<? if ($is_good) { ?><td class="td_num"><?=$list[$i]['wr_good']?></td><? } ?>
|
||||
<? if ($is_nogood) { ?><td class="td_num"><?=$list[$i]['wr_nogood']?></td><? } ?>
|
||||
</tr>
|
||||
<?}?>
|
||||
<? if (count($list) == 0) { echo '<tr><td colspan="'.$colspan.'" class="empty_table">게시물이 없습니다.</td></tr>'; } ?>
|
||||
@ -133,25 +133,25 @@ for ($i=0; $i<count($list); $i++) {
|
||||
</table>
|
||||
</form>
|
||||
|
||||
<div>
|
||||
<ul>
|
||||
<div class="btn_bo">
|
||||
<ul class="btn_bo_adm">
|
||||
<? if ($list_href) { ?>
|
||||
<li><a href="<?=$list_href?>">목록</a></li>
|
||||
<? } ?>
|
||||
<? if ($is_checkbox) { ?>
|
||||
<li><a href="javascript:select_delete();">선택삭제</a></li>
|
||||
<li><a href="javascript:select_copy('copy');">선택복사</a></li>
|
||||
<li><a href="javascript:select_copy('move');">선택이동</a></li>
|
||||
<li><a href="javascript:select_delete();" class="btn03">선택삭제</a></li>
|
||||
<li><a href="javascript:select_copy('copy');" class="btn03">선택복사</a></li>
|
||||
<li><a href="javascript:select_copy('move');" class="btn03">선택이동</a></li>
|
||||
<? } ?>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li><? if ($write_href) { ?><a href="<?=$write_href?>">글쓰기</a><? } ?></li>
|
||||
<ul class="btn_bo_user">
|
||||
<li><? if ($write_href) { ?><a href="<?=$write_href?>" class="btn01">글쓰기</a><? } ?></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<!-- 페이지 -->
|
||||
<div id="pg">
|
||||
<div class="pg">
|
||||
<? if ($prev_part_href) { echo '<a href="'.$prev_part_href.'">이전검색</a>'; } ?>
|
||||
<?=$write_pages?>
|
||||
<? if ($next_part_href) { echo '<a href="'.$next_part_href.'">다음검색</a>'; } ?>
|
||||
|
||||
@ -2,163 +2,172 @@
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
?>
|
||||
|
||||
<h1><? if ($is_category) { echo ($category_name ? "[{$view['ca_name']}] " : ""); } ?><?=cut_hangul_last(get_text($view['wr_subject']))?></h1>
|
||||
<div id="bo_v">
|
||||
<h1 id="bo_v_h1"><? if ($is_category) { echo ($category_name ? "{$view['ca_name']} " : ""); } ?><?=cut_hangul_last(get_text($view['wr_subject']))?></h1>
|
||||
|
||||
<aside>
|
||||
<h2>게시물 상단 링크</h2>
|
||||
<!-- 링크 버튼 -->
|
||||
<? if ($update_href || $delete_href) {?>
|
||||
<ul>
|
||||
<? if ($update_href) { ?>
|
||||
<li><a href="<?=$update_href?>">수정</a></li>
|
||||
<? } ?>
|
||||
<? if ($delete_href) { ?>
|
||||
<li><a href="<?=$delete_href?>">삭제</a></li>
|
||||
<? } ?>
|
||||
</ul>
|
||||
<? } ?>
|
||||
|
||||
<ul>
|
||||
<?
|
||||
ob_start();
|
||||
?>
|
||||
<? if ($copy_href) { ?>
|
||||
<li><a href="<?=$copy_href?>">복사</a></li>
|
||||
<? } ?>
|
||||
<? if ($move_href) { ?>
|
||||
<li><a href="<?=$move_href?>">이동</a></li>
|
||||
<? } ?>
|
||||
<? if ($search_href) { ?>
|
||||
<li><a href="<?=$search_href?>">검색</a></li>
|
||||
<? } ?>
|
||||
<li><a href="<?=$list_href?>">목록</a></li>
|
||||
<? if ($reply_href) { ?>
|
||||
<li><a href="<?=$reply_href?>">답변</a></li>
|
||||
<? } ?>
|
||||
<? if ($write_href) { ?>
|
||||
<li><a href="<?=$write_href?>">글쓰기</a></li>
|
||||
<? } ?>
|
||||
<?
|
||||
$link_buttons = ob_get_contents();
|
||||
ob_end_flush();
|
||||
?>
|
||||
</ul>
|
||||
</aside>
|
||||
|
||||
<section>
|
||||
<h2>게시물 정보</h2>
|
||||
<dl>
|
||||
<dt>작성자</dt>
|
||||
<dd><?=$view['name']?><? if ($is_ip_view) { echo " ($ip)"; } ?></dd>
|
||||
<dt>작성일</dt>
|
||||
<dd><?=date("y-m-d H:i", strtotime($view['wr_datetime']))?></dd>
|
||||
<dt>조회</dt>
|
||||
<dd><?=number_format($view['wr_hit'])?>회</dd>
|
||||
<dt>댓글</dt>
|
||||
<dd><?=number_format($view['wr_comment'])?>건</dd>
|
||||
<? if ($is_good) { ?>
|
||||
<dt>추천</dt>
|
||||
<dd><?=number_format($view['wr_good'])?>회</dd>
|
||||
<aside>
|
||||
<h2>게시물 상단 링크</h2>
|
||||
<!-- 링크 버튼 -->
|
||||
<? if ($update_href || $delete_href) {?>
|
||||
<ul>
|
||||
<? if ($update_href) { ?>
|
||||
<li><a href="<?=$update_href?>">수정</a></li>
|
||||
<? } ?>
|
||||
<? if ($is_nogood) { ?>
|
||||
<dt>비추천</dt>
|
||||
<dd><?=number_format($view['wr_nogood'])?></dd>
|
||||
<? if ($delete_href) { ?>
|
||||
<li><a href="<?=$delete_href?>">삭제</a></li>
|
||||
<? } ?>
|
||||
</ul>
|
||||
<? } ?>
|
||||
</dl>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h2>첨부파일</h2>
|
||||
<ul>
|
||||
<?
|
||||
// 가변 파일
|
||||
$cnt = 0;
|
||||
for ($i=0; $i<count($view['file']); $i++) {
|
||||
if (isset($view['file'][$i]['source']) && $view['file'][$i]['source'] && !$view['file'][$i]['view']) {
|
||||
$cnt++;
|
||||
?>
|
||||
<li>
|
||||
<a href="javascript:file_download('<?=$view['file'][$i]['href']?>', '<?=urlencode($view['file'][$i]['source'])?>');">
|
||||
<span><?=$view['file'][$i]['source']?> (<?=$view['file'][$i]['size']?>)</span>
|
||||
<span><?=$view['file'][$i]['download']?></span>
|
||||
<span>DATE : <?=$view['file'][$i]['datetime']?></span>
|
||||
</a>
|
||||
</li>
|
||||
<?
|
||||
}
|
||||
}
|
||||
?>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h2>관련링크</h2>
|
||||
<ul>
|
||||
<?
|
||||
// 링크
|
||||
$cnt = 0;
|
||||
for ($i=1; $i<=$g4['link_count']; $i++) {
|
||||
if ($view['link'][$i]) {
|
||||
$cnt++;
|
||||
$link = cut_str($view['link'][$i], 70);
|
||||
?>
|
||||
<li>
|
||||
<a href="<?=$view['link_href'][$i]?>" target="_blank">
|
||||
<span><?=$link?></span>
|
||||
<span><?=$view['link_hit'][$i]?></span>
|
||||
</a>
|
||||
</li>
|
||||
<?
|
||||
}
|
||||
}
|
||||
?>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<article>
|
||||
<h1>본문</h1>
|
||||
<div>
|
||||
<ul>
|
||||
<?
|
||||
// 파일 출력
|
||||
for ($i=0; $i<=count($view['file']); $i++) {
|
||||
if (isset($view['file'][$i]['view']) && $view['file'][$i]['view'])
|
||||
echo $view['file'][$i]['view'];
|
||||
ob_start();
|
||||
?>
|
||||
<? if ($copy_href) { ?>
|
||||
<li><a href="<?=$copy_href?>">복사</a></li>
|
||||
<? } ?>
|
||||
<? if ($move_href) { ?>
|
||||
<li><a href="<?=$move_href?>">이동</a></li>
|
||||
<? } ?>
|
||||
<? if ($search_href) { ?>
|
||||
<li><a href="<?=$search_href?>">검색</a></li>
|
||||
<? } ?>
|
||||
<li><a href="<?=$list_href?>">목록</a></li>
|
||||
<? if ($reply_href) { ?>
|
||||
<li><a href="<?=$reply_href?>">답변</a></li>
|
||||
<? } ?>
|
||||
<? if ($write_href) { ?>
|
||||
<li><a href="<?=$write_href?>">글쓰기</a></li>
|
||||
<? } ?>
|
||||
<?
|
||||
$link_buttons = ob_get_contents();
|
||||
ob_end_flush();
|
||||
?>
|
||||
</ul>
|
||||
</aside>
|
||||
|
||||
<section id="bo_v_info">
|
||||
<h2>게시물 정보</h2>
|
||||
<dl>
|
||||
<dt>작성자</dt>
|
||||
<dd><?=$view['name']?><? if ($is_ip_view) { echo " ($ip)"; } ?></dd>
|
||||
<dt>작성일</dt>
|
||||
<dd><?=date("y-m-d H:i", strtotime($view['wr_datetime']))?></dd>
|
||||
<dt>조회</dt>
|
||||
<dd><?=number_format($view['wr_hit'])?>회</dd>
|
||||
<dt>댓글</dt>
|
||||
<dd><?=number_format($view['wr_comment'])?>건</dd>
|
||||
<? if ($is_good) { ?>
|
||||
<dt>추천</dt>
|
||||
<dd><?=number_format($view['wr_good'])?>회</dd>
|
||||
<? } ?>
|
||||
<? if ($is_nogood) { ?>
|
||||
<dt>비추천</dt>
|
||||
<dd><?=number_format($view['wr_nogood'])?></dd>
|
||||
<? } ?>
|
||||
</dl>
|
||||
</section>
|
||||
|
||||
<? if ($view['file'][$i]) {?>
|
||||
<section>
|
||||
<h2>첨부파일</h2>
|
||||
<ul>
|
||||
<?
|
||||
// 가변 파일
|
||||
$cnt = 0;
|
||||
for ($i=0; $i<count($view['file']); $i++) {
|
||||
if (isset($view['file'][$i]['source']) && $view['file'][$i]['source'] && !$view['file'][$i]['view']) {
|
||||
$cnt++;
|
||||
?>
|
||||
<li>
|
||||
<a href="javascript:file_download('<?=$view['file'][$i]['href']?>', '<?=urlencode($view['file'][$i]['source'])?>');">
|
||||
<span><?=$view['file'][$i]['source']?> (<?=$view['file'][$i]['size']?>)</span>
|
||||
<span><?=$view['file'][$i]['download']?></span>
|
||||
<span>DATE : <?=$view['file'][$i]['datetime']?></span>
|
||||
</a>
|
||||
</li>
|
||||
<?
|
||||
}
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
|
||||
<p><?=$view['content'];?></p>
|
||||
<?//echo $view[rich_content]; // {이미지:0} 과 같은 코드를 사용할 경우?>
|
||||
<!-- 테러 태그 방지용 --></xml></xmp><a href=""></a><a href=''></a>
|
||||
|
||||
<? if ($is_signature) { ?><p><?=$signature?></p><? } ?>
|
||||
|
||||
<? if ($scrap_href || $good_href || $nogood_href) { ?>
|
||||
<ul>
|
||||
<? if ($scrap_href) { ?><li><a href="javascript:;" onclick="win_scrap('<?=$scrap_href?>');">스크랩</a></li><? } ?>
|
||||
<? if ($good_href) {?><li>추천 <?=number_format($view['wr_good'])?> <a href="<?=$good_href?>" target="hiddenframe">추천</a></li><? } ?>
|
||||
<? if ($nogood_href) {?><li>비추천 <?=number_format($view['wr_nogood'])?> <a href="<?=$nogood_href?>" target="hiddenframe">비추천</a></li><? } ?>
|
||||
</ul>
|
||||
</ul>
|
||||
</section>
|
||||
<? } ?>
|
||||
</article>
|
||||
|
||||
<?
|
||||
// 코멘트 입출력
|
||||
include_once('./view_comment.php');
|
||||
?>
|
||||
<? if ($view['link'][$i]) {?>
|
||||
<section>
|
||||
<h2>관련링크</h2>
|
||||
<ul>
|
||||
<?
|
||||
// 링크
|
||||
$cnt = 0;
|
||||
for ($i=1; $i<=$g4['link_count']; $i++) {
|
||||
if ($view['link'][$i]) {
|
||||
$cnt++;
|
||||
$link = cut_str($view['link'][$i], 70);
|
||||
?>
|
||||
<li>
|
||||
<a href="<?=$view['link_href'][$i]?>" target="_blank">
|
||||
<span><?=$link?></span>
|
||||
<span><?=$view['link_hit'][$i]?></span>
|
||||
</a>
|
||||
</li>
|
||||
<?
|
||||
}
|
||||
}
|
||||
?>
|
||||
</ul>
|
||||
</section>
|
||||
<? } ?>
|
||||
|
||||
<aside>
|
||||
<h2>게시물 하단 링크</h2>
|
||||
<ul>
|
||||
<? if ($prev_href) { ?><li><a href="<?=$prev_href?>">이전</a></li><? } ?>
|
||||
<? if ($next_href) { ?><li><a href="<?=$next_href?>">다음</a></li><? } ?>
|
||||
</ul>
|
||||
<article>
|
||||
<header>
|
||||
<h1>본문</h1>
|
||||
</header>
|
||||
<div>
|
||||
<?
|
||||
// 파일 출력
|
||||
for ($i=0; $i<=count($view['file']); $i++) {
|
||||
if (isset($view['file'][$i]['view']) && $view['file'][$i]['view'])
|
||||
echo $view['file'][$i]['view'];
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
|
||||
<!-- 링크 버튼 -->
|
||||
<ul>
|
||||
<?=$link_buttons?>
|
||||
</ul>
|
||||
</aside>
|
||||
<p><?=$view['content'];?></p>
|
||||
<?//echo $view[rich_content]; // {이미지:0} 과 같은 코드를 사용할 경우?>
|
||||
<!-- 테러 태그 방지용 --></xml></xmp><a href=""></a><a href=''></a>
|
||||
|
||||
<? if ($is_signature) { ?><p><?=$signature?></p><? } ?>
|
||||
|
||||
<? if ($scrap_href || $good_href || $nogood_href) { ?>
|
||||
<ul>
|
||||
<? if ($scrap_href) { ?><li><a href="javascript:;" onclick="win_scrap('<?=$scrap_href?>');">스크랩</a></li><? } ?>
|
||||
<? if ($good_href) {?><li>추천 <?=number_format($view['wr_good'])?> <a href="<?=$good_href?>" target="hiddenframe">추천</a></li><? } ?>
|
||||
<? if ($nogood_href) {?><li>비추천 <?=number_format($view['wr_nogood'])?> <a href="<?=$nogood_href?>" target="hiddenframe">비추천</a></li><? } ?>
|
||||
</ul>
|
||||
<? } ?>
|
||||
</article>
|
||||
|
||||
<?
|
||||
// 코멘트 입출력
|
||||
include_once('./view_comment.php');
|
||||
?>
|
||||
|
||||
<aside>
|
||||
<h2>게시물 하단 링크</h2>
|
||||
<ul>
|
||||
<? if ($prev_href) { ?><li><a href="<?=$prev_href?>">이전</a></li><? } ?>
|
||||
<? if ($next_href) { ?><li><a href="<?=$next_href?>">다음</a></li><? } ?>
|
||||
</ul>
|
||||
|
||||
<!-- 링크 버튼 -->
|
||||
<ul>
|
||||
<?=$link_buttons?>
|
||||
</ul>
|
||||
</aside>
|
||||
|
||||
</div>
|
||||
|
||||
<script>
|
||||
function file_download(link, file) {
|
||||
|
||||
@ -8,6 +8,8 @@ var char_min = parseInt(<?=$write_min?>); // 최소
|
||||
var char_max = parseInt(<?=$write_max?>); // 최대
|
||||
</script>
|
||||
|
||||
<h1><?=$g4['title']?></h1>
|
||||
|
||||
<form id="fwrite" name="fwrite" method="post" action="<?=$action_url?>" onsubmit="return fwrite_submit(this);" enctype="multipart/form-data" autocomplete="off">
|
||||
<input type="hidden" name="w" value="<?=$w?>">
|
||||
<input type="hidden" name="bo_table" value="<?=$bo_table?>">
|
||||
@ -20,34 +22,34 @@ var char_max = parseInt(<?=$write_max?>); // 최대
|
||||
<input type="hidden" name="sod" value="<?=$sod?>">
|
||||
<input type="hidden" name="page" value="<?=$page?>">
|
||||
|
||||
<table>
|
||||
<table id="bo_w" class="frm_tbl">
|
||||
<caption><?=$board['bo_subject']?> <?=$title_msg?></caption>
|
||||
<tbody>
|
||||
<? if ($is_name) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_name">이름</label></th>
|
||||
<td><input type="text" id="wr_name" name="wr_name" maxlength="20" class="required" required="required" value="<?=$name?>" title="이름"></td>
|
||||
<td><input type="text" id="wr_name" name="wr_name" class="frm_input required" size="10" maxlength="20" required value="<?=$name?>"></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? if ($is_password) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_password">패스워드</label></th>
|
||||
<td><input type="password" id="wr_password" name="wr_password" maxlength="20" <?=$password_required?> title="패스워드"></td>
|
||||
<td><input type="password" id="wr_password" name="wr_password" class="frm_input" maxlength="20" <?=$password_required?>></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? if ($is_email) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_email">이메일</label></th>
|
||||
<td><input type="text" id="wr_email" name="wr_email" class="email" value="<?=$email?>" title="이메일" maxlength="100"></td>
|
||||
<td><input type="text" id="wr_email" name="wr_email" class="frm_input email" size="60" value="<?=$email?>" maxlength="100"></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
<? if ($is_homepage) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_homepage">홈페이지</label></th>
|
||||
<td><input type="text" id="wr_homepage" name="wr_homepage" value="<?=$homepage?>"></td>
|
||||
<td><input type="text" id="wr_homepage" name="wr_homepage" class="frm_input" size="60" value="<?=$homepage?>"></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
|
||||
@ -57,27 +59,27 @@ $option_hidden = '';
|
||||
if ($is_notice || $is_html || $is_secret || $is_mail) {
|
||||
$option = '';
|
||||
if ($is_notice) {
|
||||
$option .= PHP_EOL.'<input type="checkbox" id="notice" name="notice" value="1" '.$notice_checked.'><label for="notice">공지</label>';
|
||||
$option .= PHP_EOL.'<input type="checkbox" id="notice" name="notice" value="1" '.$notice_checked.'>'.PHP_EOL.'<label for="notice">공지</label>';
|
||||
}
|
||||
|
||||
if ($is_html) {
|
||||
if ($is_dhtml_editor) {
|
||||
$option_hidden .= '<input type="hidden" value="html1" name="html">';
|
||||
} else {
|
||||
$option .= PHP_EOL.'<input type="checkbox" id="html" name="html" onclick="html_auto_br(this);" value="'.$html_value.'" '.$html_checked.'><label for="html">html</label>';
|
||||
$option .= PHP_EOL.'<input type="checkbox" id="html" name="html" onclick="html_auto_br(this);" value="'.$html_value.'" '.$html_checked.'>'.PHP_EOL.'<label for="html">html</label>';
|
||||
}
|
||||
}
|
||||
|
||||
if ($is_secret) {
|
||||
if ($is_admin || $is_secret==1) {
|
||||
$option .= PHP_EOL.'<input type="checkbox" id="secret" name="secret" value="secret" '.$secret_checked.'><label for="secret">비밀글</label>';
|
||||
$option .= PHP_EOL.'<input type="checkbox" id="secret" name="secret" value="secret" '.$secret_checked.'>'.PHP_EOL.'<label for="secret">비밀글</label>';
|
||||
} else {
|
||||
$option_hidden .= '<input type="hidden" name="secret" value="secret">';
|
||||
}
|
||||
}
|
||||
|
||||
if ($is_mail) {
|
||||
$option .= PHP_EOL.'<input type="checkbox" name="mail" value="mail" '.$recv_email_checked.'><label for="mail">답변메일받기</label>';
|
||||
$option .= PHP_EOL.'<input type="checkbox" name="mail" value="mail" '.$recv_email_checked.'>'.PHP_EOL.'<label for="mail">답변메일받기</label>';
|
||||
}
|
||||
}
|
||||
|
||||
@ -94,7 +96,7 @@ if ($option) {
|
||||
<tr>
|
||||
<th scope="row"><label for="ca_name">분류</label></th>
|
||||
<td>
|
||||
<select id="ca_name" name="ca_name" required="required">
|
||||
<select id="ca_name" name="ca_name" class="required" required>
|
||||
<option value="">선택하세요</option>
|
||||
<?=$category_option?>
|
||||
</select>
|
||||
@ -104,7 +106,7 @@ if ($option) {
|
||||
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_subject">제목</label></th>
|
||||
<td><input id="wr_subject" name="wr_subject" required="required" value="<?=$subject?>" title="제목"></td>
|
||||
<td><input id="wr_subject" name="wr_subject" class="frm_input required" size="60" required value="<?=$subject?>" title="제목"></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
@ -120,72 +122,45 @@ if ($option) {
|
||||
<? for ($i=1; $i<=$g4['link_count']; $i++) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="wr_link<?=$i?>">링크 #<?=$i?></label></th>
|
||||
<td><input type="text" id="wr_link<?=$i?>" name="wr_link<?=$i?>" value="<?if($w=="u"){echo$write['wr_link'.$i];}?>"></td>
|
||||
<td><input type="text" id="wr_link<?=$i?>" name="wr_link<?=$i?>" class="frm_input" size="60" value="<?if($w=="u"){echo$write['wr_link'.$i];}?>"></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
<? } ?>
|
||||
|
||||
<? if ($is_file) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="">파일첨부</label></th>
|
||||
<th scope="row">파일 #1</th>
|
||||
<td>
|
||||
<table id="variableFiles"></table><?// print_r2($file); ?>
|
||||
<script>
|
||||
var flen = 0;
|
||||
function add_file(delete_code)
|
||||
{
|
||||
var upload_count = <?=(int)$board['bo_upload_count']?>;
|
||||
if (upload_count && flen >= upload_count)
|
||||
{
|
||||
alert("이 게시판은 "+upload_count+"개 까지만 파일 업로드가 가능합니다.");
|
||||
return;
|
||||
}
|
||||
|
||||
var objTbl;
|
||||
var objRow;
|
||||
var objCell;
|
||||
if (document.getElementById)
|
||||
objTbl = document.getElementById("variableFiles");
|
||||
else
|
||||
objTbl = document.all["variableFiles"];
|
||||
|
||||
objRow = objTbl.insertRow(objTbl.rows.length);
|
||||
objCell = objRow.insertCell(0);
|
||||
|
||||
objCell.innerHTML = "<input type='file' name='bf_file[]' title='파일 용량 <?=$upload_max_filesize?> 이하만 업로드 가능'>";
|
||||
if (delete_code)
|
||||
objCell.innerHTML += delete_code;
|
||||
else
|
||||
{
|
||||
<? if ($is_file_content) { ?>
|
||||
objCell.innerHTML += "<br><input type='text' size=50 name='bf_content[]' title='업로드 이미지 파일에 해당 되는 내용을 입력하세요.'>";
|
||||
<? } ?>
|
||||
;
|
||||
}
|
||||
|
||||
flen++;
|
||||
}
|
||||
|
||||
<?=$file_script; //수정시에 필요한 스크립트?>
|
||||
|
||||
function del_file()
|
||||
{
|
||||
// file_length 이하로는 필드가 삭제되지 않아야 합니다.
|
||||
var file_length = <?=(int)$file_length?>;
|
||||
var objTbl = document.getElementById("variableFiles");
|
||||
if (objTbl.rows.length - 1 > file_length) {
|
||||
objTbl.deleteRow(objTbl.rows.length - 1);
|
||||
flen--;
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<input type="file" name="bf_file[]" class="frm_input frm_file" size="50" title="파일 용량 <?=$upload_max_filesize?> 이하만 업로드 가능">
|
||||
<input type="text" name="bf_content[]" class="frm_input" size="50" title="파일 설명을 입력해주세요.">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<span onclick="add_file();" style="cursor:pointer;">파일증가</span>
|
||||
<span onclick="del_file();" style="cursor:pointer;">파일감소</span>
|
||||
<th scope="row">파일 #2</th>
|
||||
<td>
|
||||
<input type="file" name="bf_file[]" class="frm_input frm_file" size="50" title="파일 용량 <?=$upload_max_filesize?> 이하만 업로드 가능">
|
||||
<input type="text" name="bf_content[]" class="frm_input" size="50" title="파일 설명을 입력해주세요.">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">파일 #3</th>
|
||||
<td>
|
||||
<input type="file" name="bf_file[]" class="frm_input frm_file" size="50" title="파일 용량 <?=$upload_max_filesize?> 이하만 업로드 가능">
|
||||
<input type="text" name="bf_content[]" class="frm_input" size="50" title="파일 설명을 입력해주세요.">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">파일 #4</th>
|
||||
<td>
|
||||
<input type="file" name="bf_file[]" class="frm_input frm_file" size="50" title="파일 용량 <?=$upload_max_filesize?> 이하만 업로드 가능">
|
||||
<input type="text" name="bf_content[]" class="frm_input" size="50" title="파일 설명을 입력해주세요.">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">파일 #5</th>
|
||||
<td>
|
||||
<input type="file" name="bf_file[]" class="frm_input frm_file" size="50" title="파일 용량 <?=$upload_max_filesize?> 이하만 업로드 가능">
|
||||
<input type="text" name="bf_content[]" class="frm_input" size="50" title="파일 설명을 입력해주세요.">
|
||||
</td>
|
||||
</tr>
|
||||
<?}?>
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
?>
|
||||
|
||||
<div>
|
||||
<div class="latest">
|
||||
<strong><a href="<?=$g4['bbs_path']?>/board.php?bo_table=<?=$bo_table?>"><?=$board['bo_subject']?></a></strong>
|
||||
<ul>
|
||||
<? for ($i=0; $i<count($list); $i++) { ?>
|
||||
@ -30,9 +30,9 @@ if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||
?>
|
||||
</li>
|
||||
<? } ?>
|
||||
<? if (count($list) == 0) { //게시물이 없을 때 ?>
|
||||
<li>게시물이 없습니다.</li>
|
||||
<? } ?>
|
||||
</ul>
|
||||
<a href="<?=$g4['bbs_path']?>/board.php?bo_table=<?=$bo_table?>">더보기</a>
|
||||
</div>
|
||||
<? if (count($list) == 0) { //게시물이 없을 때 ?>
|
||||
<p>게시물이 없습니다.</p>
|
||||
<? } ?>
|
||||
<div class="latest_more"><a href="<?=$g4['bbs_path']?>/board.php?bo_table=<?=$bo_table?>">더보기</a></div>
|
||||
</div>
|
||||
|
||||
@ -1,5 +1,11 @@
|
||||
<?
|
||||
include_once("_common.php");
|
||||
include_once($g4['path'].'/lib/register.lib.php');
|
||||
|
||||
echo check_mb_email($_POST['reg_mb_id'], $_POST['reg_mb_email']);
|
||||
$mb_email = escape_trim($_POST['reg_mb_email']);
|
||||
$mb_id = escape_trim($_POST['reg_mb_id']);
|
||||
|
||||
if ($msg = empty_mb_email($mb_email)) die($msg);
|
||||
if ($msg = valid_mb_email($mb_email)) die($msg);
|
||||
if ($msg = exist_mb_email($mb_email, $mb_id)) die($msg);
|
||||
?>
|
||||
@ -1,5 +1,12 @@
|
||||
<?
|
||||
include_once("_common.php");
|
||||
include_once($g4['path'].'/lib/register.lib.php');
|
||||
|
||||
echo check_mb_id($_POST['reg_mb_id']);
|
||||
$mb_id = escape_trim($_POST['reg_mb_id']);
|
||||
|
||||
if ($msg = empty_mb_id($mb_id)) die($msg);
|
||||
if ($msg = valid_mb_id($mb_id)) die($msg);
|
||||
if ($msg = count_mb_id($mb_id)) die($msg);
|
||||
if ($msg = exist_mb_id($mb_id)) die($msg);
|
||||
if ($msg = reserve_mb_id($mb_id)) die($msg);
|
||||
?>
|
||||
@ -1,5 +1,12 @@
|
||||
<?
|
||||
include_once("_common.php");
|
||||
include_once($g4['path'].'/lib/register.lib.php');
|
||||
|
||||
echo check_mb_nick($_POST['reg_mb_nick']);
|
||||
$mb_nick = escape_trim($_POST['reg_mb_nick']);
|
||||
$mb_id = escape_trim($_POST['reg_mb_id']);
|
||||
|
||||
if ($msg = empty_mb_nick($mb_nick)) die($msg);
|
||||
if ($msg = valid_mb_nick($mb_nick)) die($msg);
|
||||
if ($msg = count_mb_nick($mb_nick)) die($msg);
|
||||
if ($msg = exist_mb_nick($mb_nick, $mb_id)) die($msg);
|
||||
?>
|
||||
@ -22,7 +22,8 @@ var reg_mb_nick_check = function() {
|
||||
type: "POST",
|
||||
url: member_skin_path+"/ajax_mb_nick_check.php",
|
||||
data: {
|
||||
"reg_mb_nick": ($("#reg_mb_nick").val())
|
||||
"reg_mb_nick": ($("#reg_mb_nick").val()),
|
||||
'reg_mb_id': encodeURIComponent($('#reg_mb_id').val())
|
||||
},
|
||||
cache: false,
|
||||
async: false,
|
||||
@ -40,8 +41,8 @@ var reg_mb_email_check = function() {
|
||||
type: 'POST',
|
||||
url: member_skin_path+'/ajax_mb_email_check.php',
|
||||
data: {
|
||||
'reg_mb_id': encodeURIComponent($('#reg_mb_id').val()),
|
||||
'reg_mb_email': $('#reg_mb_email').val()
|
||||
'reg_mb_email': $('#reg_mb_email').val(),
|
||||
'reg_mb_id': encodeURIComponent($('#reg_mb_id').val())
|
||||
},
|
||||
cache: false,
|
||||
async: false,
|
||||
|
||||
@ -1,72 +1,73 @@
|
||||
<?
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
?>
|
||||
<section>
|
||||
<h1><?=$name?>님께 메일보내기</h1>
|
||||
|
||||
<form name="fformmail" method="post" onsubmit="return fformmail_submit(this);" enctype="multipart/form-data" style="margin:0px;">
|
||||
<input type="hidden" name="to" value="<?=$email?>">
|
||||
<input type="hidden" name="attach" value="2">
|
||||
<input type="hidden" name="token" value="<?=$token?>">
|
||||
<? if ($is_member) { // 회원이면 ?>
|
||||
<input type="hidden" name="fnick" value="<?=$member[mb_nick]?>">
|
||||
<input type="hidden" name="fmail" value="<?=$member[mb_email]?>">
|
||||
<? } ?>
|
||||
<table>
|
||||
<caption>메일쓰기</caption>
|
||||
<tbody>
|
||||
<? if (!$is_member) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="fnick">이름</label></th>
|
||||
<td><input type="text" id="fnick" name="fnick" required></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="fmail">E-mail</label></th>
|
||||
<td><input type="text" id="fmail" name="fmail" required></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="subject">제목</label></th>
|
||||
<td><input type=text id="subject" name="subject" required></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">형식</th>
|
||||
<td>
|
||||
<input type="radio" id="type_text" name="type" value="0" checked> <label for="type_text">TEXT</label>
|
||||
<input type="radio" id="type_html" name="type" value="1" > <label for="type_html">HTML</label>
|
||||
<input type="radio" id="type_both" name="type" value="2" > <label for="type_both">TEXT+HTML</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="content">내용</label></th>
|
||||
<td><textarea id="content" name="content" required></textarea></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="file1">첨부 1</label></th>
|
||||
<td><input type="file" id="file1" name="file1"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="file2">첨부 2</label></th>
|
||||
<td><input type="file" id="file2" name="file2"></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<div id="formmail" class="new_win">
|
||||
<h1><?=$name?>님께 메일보내기</h1>
|
||||
|
||||
<fieldset>
|
||||
<legend>자동등록방지</legend>
|
||||
<img id="kcaptcha_image" />
|
||||
<input type="text" name="wr_key" title="자동등록방지" size="10" required>
|
||||
왼쪽의 글자를 입력하세요.
|
||||
</fieldset>
|
||||
<form name="fformmail" method="post" onsubmit="return fformmail_submit(this);" enctype="multipart/form-data" style="margin:0px;">
|
||||
<input type="hidden" name="to" value="<?=$email?>">
|
||||
<input type="hidden" name="attach" value="2">
|
||||
<input type="hidden" name="token" value="<?=$token?>">
|
||||
<? if ($is_member) { // 회원이면 ?>
|
||||
<input type="hidden" name="fnick" value="<?=$member[mb_nick]?>">
|
||||
<input type="hidden" name="fmail" value="<?=$member[mb_email]?>">
|
||||
<? } ?>
|
||||
<table class="frm_tbl">
|
||||
<caption>메일쓰기</caption>
|
||||
<tbody>
|
||||
<? if (!$is_member) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="fnick">이름</label></th>
|
||||
<td><input type="text" id="fnick" name="fnick" class="frm_input required" required></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="fmail">E-mail</label></th>
|
||||
<td><input type="text" id="fmail" name="fmail" class="frm_input required" required></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="subject">제목</label></th>
|
||||
<td><input type=text id="subject" name="subject" class="frm_input required" required></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">형식</th>
|
||||
<td>
|
||||
<input type="radio" id="type_text" name="type" value="0" checked> <label for="type_text">TEXT</label>
|
||||
<input type="radio" id="type_html" name="type" value="1" > <label for="type_html">HTML</label>
|
||||
<input type="radio" id="type_both" name="type" value="2" > <label for="type_both">TEXT+HTML</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="content">내용</label></th>
|
||||
<td><textarea id="content" name="content" class="required" required></textarea></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="file1">첨부 1</label></th>
|
||||
<td><input type="file" id="file1" name="file1" class="frm_input"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="file2">첨부 2</label></th>
|
||||
<td><input type="file" id="file2" name="file2" class="frm_input"></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<div class="btn_confirm">
|
||||
<input type="submit" id="btn_submit" value="메일발송">
|
||||
<a href="javascript:window.close();">창닫기</a>
|
||||
<fieldset>
|
||||
<legend>자동등록방지</legend>
|
||||
<img id="kcaptcha_image" />
|
||||
<input type="text" name="wr_key" class="fieldset_input required" title="자동등록방지" size="10" required>
|
||||
왼쪽의 글자를 입력하세요.
|
||||
</fieldset>
|
||||
|
||||
<div class="btn_confirm">
|
||||
<input type="submit" id="btn_submit" value="메일발송">
|
||||
<a href="javascript:window.close();">창닫기</a>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
</section>
|
||||
|
||||
<script src="<?="$g4[path]/js/md5.js"?>"></script>
|
||||
<script src="<?="$g4[path]/js/jquery.kcaptcha.js"?>"></script>
|
||||
<script>
|
||||
|
||||
@ -7,13 +7,17 @@ if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
<form name="fmemberconfirm" method="post" onsubmit="return fmemberconfirm_submit(this);">
|
||||
<input type=hidden name="mb_id" value="<?=$member[mb_id]?>">
|
||||
<input type=hidden name="w" value="u">
|
||||
<fieldset>
|
||||
<fieldset id="member_confirm">
|
||||
<legend>패스워드 확인</legend>
|
||||
|
||||
<p>회원님의 정보를 안전하게 보호하기 위해 패스워드를 한번 더 확인합니다.</p>
|
||||
|
||||
회원아이디
|
||||
<?=$member[mb_id]?>
|
||||
<span id="member_confirm_id"><?=$member[mb_id]?></span>
|
||||
|
||||
<label for="confirm_mb_password">패스워드</label>
|
||||
<input type="password" id="confirm_mb_password" name="mb_password" maxLength="20" size="15" required onkeypress="check_capslock('confirm_mb_password');">
|
||||
<input type="submit" id="btn_submit" value="확인">
|
||||
<input type="password" id="confirm_mb_password" name="mb_password" class="fieldset_input" maxLength="20" size="15" required onkeypress="check_capslock('confirm_mb_password');">
|
||||
<input type="submit" id="btn_submit" class="fieldset_submit" value="확인">
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
|
||||
@ -2,44 +2,47 @@
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
?>
|
||||
|
||||
<h1>쪽지보내기</h1>
|
||||
|
||||
<ul>
|
||||
<li><a href="./memo.php?kind=recv">받은쪽지</a></li>
|
||||
<li><a href="./memo.php?kind=send">보낸쪽지</a></li>
|
||||
<li><a href="./memo_form.php">쪽지보내기</a></li>
|
||||
</ul>
|
||||
<div id="memo_write" class="new_win">
|
||||
<h1>쪽지보내기</h1>
|
||||
|
||||
<form name="fmemoform" method="post" onsubmit="return fmemoform_submit(this);" autocomplete="off">
|
||||
<table>
|
||||
<caption>쪽지쓰기</caption>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="row"><label for="me_recv_mb_id">받는 회원아이디</label></th>
|
||||
<td>
|
||||
<input type="text" id="me_recv_mb_id" name="me_recv_mb_id" required value="<?=$me_recv_mb_id?>">
|
||||
여러 회원에게 보낼때는 컴마(,)로 구분하세요.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="me_memo">내용</label></th>
|
||||
<td><textarea id="me_memo" name="me_memo" required><?=$content?></textarea></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<ul class="new_win_ul">
|
||||
<li><a href="./memo.php?kind=recv">받은쪽지</a></li>
|
||||
<li><a href="./memo.php?kind=send">보낸쪽지</a></li>
|
||||
<li><a href="./memo_form.php">쪽지보내기</a></li>
|
||||
</ul>
|
||||
|
||||
<fieldset>
|
||||
<legend>자동등록방지</legend>
|
||||
<img id="kcaptcha_image" />
|
||||
<input type="text" name="wr_key" required>
|
||||
왼쪽의 글자를 입력하세요.
|
||||
</fieldset>
|
||||
<form name="fmemoform" method="post" onsubmit="return fmemoform_submit(this);" autocomplete="off">
|
||||
<table class="frm_tbl">
|
||||
<caption>쪽지쓰기</caption>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="row"><label for="me_recv_mb_id">받는 회원아이디</label></th>
|
||||
<td>
|
||||
<input type="text" id="me_recv_mb_id" name="me_recv_mb_id" class="frm_input required" size="47" required value="<?=$me_recv_mb_id?>">
|
||||
<span class="frm_info">여러 회원에게 보낼때는 컴마(,)로 구분하세요.</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="me_memo">내용</label></th>
|
||||
<td><textarea id="me_memo" name="me_memo" required><?=$content?></textarea></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<div class="btn_confirm">
|
||||
<input type="submit" id="btn_submit" value="보내기">
|
||||
<a href="javascript:window.close();">창닫기</a>
|
||||
<fieldset>
|
||||
<legend>자동등록방지</legend>
|
||||
<img id="kcaptcha_image" />
|
||||
<input type="text" name="wr_key" required>
|
||||
왼쪽의 글자를 입력하세요.
|
||||
</fieldset>
|
||||
|
||||
<div class="btn_confirm">
|
||||
<input type="submit" id="btn_submit" value="보내기">
|
||||
<a href="javascript:window.close();">창닫기</a>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<script src="<?=$g4[path]?>/js/md5.js"></script>
|
||||
<script src="<?="$g4[path]/js/jquery.kcaptcha.js"?>"></script>
|
||||
|
||||
@ -2,22 +2,28 @@
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
?>
|
||||
|
||||
<article>
|
||||
<header>
|
||||
<h1>
|
||||
<?
|
||||
//$nick = cut_str($mb[mb_nick], $config[cf_cut_name]);
|
||||
$nick = get_sideview($mb[mb_id], $mb[mb_nick], $mb[mb_email], $mb[mb_homepage]);
|
||||
if ($kind == "recv")
|
||||
echo "{$nick}님께서 {$memo[me_send_datetime]}에 보내온 쪽지의 내용입니다.";
|
||||
if ($kind == "send")
|
||||
echo "{$nick}님께 {$memo[me_send_datetime]}에 보낸 쪽지의 내용입니다.";
|
||||
?>
|
||||
</h1>
|
||||
</header>
|
||||
<p>
|
||||
<?=conv_content($memo[me_memo], 0)?>
|
||||
</p>
|
||||
<div id="memo_view" class="new_win">
|
||||
<h1>
|
||||
<?
|
||||
//$nick = cut_str($mb[mb_nick], $config[cf_cut_name]);
|
||||
$nick = get_sideview($mb[mb_id], $mb[mb_nick], $mb[mb_email], $mb[mb_homepage]);
|
||||
if ($kind == "recv")
|
||||
echo "{$nick}님께서 {$memo[me_send_datetime]}에 보내온 쪽지의 내용입니다.";
|
||||
if ($kind == "send")
|
||||
echo "{$nick}님께 {$memo[me_send_datetime]}에 보낸 쪽지의 내용입니다.";
|
||||
?>
|
||||
</h1>
|
||||
<ul class="new_win_ul">
|
||||
<li><a href="./memo.php?kind=recv">받은쪽지</a></li>
|
||||
<li><a href="./memo.php?kind=send">보낸쪽지</a></li>
|
||||
<li><a href="./memo_form.php">쪽지보내기</a></li>
|
||||
</ul>
|
||||
<section>
|
||||
<h2>쪽지내용</h2>
|
||||
<p>
|
||||
<?=conv_content($memo[me_memo], 0)?>
|
||||
</p>
|
||||
</section>
|
||||
<div>
|
||||
<a href="<?=$prev_link?>">이전쪽지</a>
|
||||
<a href="<?=$next_link?>">다음쪽지</a>
|
||||
|
||||
@ -11,12 +11,12 @@ if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
<input type="hidden" name="stx" value="<?=$stx?>">
|
||||
<input type="hidden" name="page" value="<?=$page?>">
|
||||
|
||||
<fieldset>
|
||||
<fieldset id="password_confirm">
|
||||
<legend>패스워드 확인</legend>
|
||||
<p>비밀글 기능으로 보호된 글입니다. 작성자와 관리자만 열람하실 수 있습니다. 작성자 본인이시라면 패스워드를 입력하세요.</p>
|
||||
<p>비밀글 기능으로 보호된 글입니다. 작성자와 관리자만 열람하실 수 있습니다.<br>작성자 본인이시라면 패스워드를 입력하세요.</p>
|
||||
<label for="password_wr_password">패스워드</label>
|
||||
<input type="password" id="password_wr_password" name="wr_password" maxLength="20" size="15" required="required" title="패스워드">
|
||||
<input type="submit" value="확인">
|
||||
<input type="password" id="password_wr_password" name="wr_password" class="fieldset_input required" maxLength="20" size="15" required>
|
||||
<input type="submit" class="fieldset_submit" value="확인">
|
||||
</fieldset>
|
||||
|
||||
</form>
|
||||
|
||||
@ -2,40 +2,42 @@
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
?>
|
||||
|
||||
<h1><?=$mb_nick?>님의 프로필</h1>
|
||||
<div id="profile" class="new_win">
|
||||
<h1><?=$mb_nick?>님의 프로필</h1>
|
||||
|
||||
<table>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="row">회원권한</th>
|
||||
<td><?=$mb[mb_level]?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">포인트</th>
|
||||
<td><?=number_format($mb[mb_point])?></td>
|
||||
</tr>
|
||||
<? if ($mb_homepage) { ?>
|
||||
<tr>
|
||||
<th scope="row">홈페이지</th>
|
||||
<td><a href="<?=$mb_homepage?>" target="_blank"><?=$mb_homepage?></a></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
<tr>
|
||||
<th scope="row">회원가입일</th>
|
||||
<td><?=($member[mb_level] >= $mb[mb_level]) ? substr($mb[mb_datetime],0,10) ." (".$mb_reg_after." 일)" : "알 수 없음"; ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">최종접속일</th>
|
||||
<td><?=($member[mb_level] >= $mb[mb_level]) ? $mb[mb_today_login] : "알 수 없음";?></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="frm_tbl">
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="row">회원권한</th>
|
||||
<td><?=$mb[mb_level]?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">포인트</th>
|
||||
<td><?=number_format($mb[mb_point])?></td>
|
||||
</tr>
|
||||
<? if ($mb_homepage) { ?>
|
||||
<tr>
|
||||
<th scope="row">홈페이지</th>
|
||||
<td><a href="<?=$mb_homepage?>" target="_blank"><?=$mb_homepage?></a></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
<tr>
|
||||
<th scope="row">회원가입일</th>
|
||||
<td><?=($member[mb_level] >= $mb[mb_level]) ? substr($mb[mb_datetime],0,10) ." (".$mb_reg_after." 일)" : "알 수 없음"; ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">최종접속일</th>
|
||||
<td><?=($member[mb_level] >= $mb[mb_level]) ? $mb[mb_today_login] : "알 수 없음";?></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<section>
|
||||
<h2><?=$mb_nick?>님의 자기소개</h2>
|
||||
<p><?=$mb_profile?></p>
|
||||
</section>
|
||||
<section>
|
||||
<h2><?=$mb_nick?>님의 자기소개</h2>
|
||||
<p><?=$mb_profile?></p>
|
||||
</section>
|
||||
|
||||
<div class="btn_window">
|
||||
<a href="javascript:window.close();">창닫기</a>
|
||||
<div class="btn_window">
|
||||
<a href="javascript:window.close();">창닫기</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -1,9 +1,5 @@
|
||||
<?
|
||||
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
$required = "";
|
||||
$readonly = "";
|
||||
if ($w == '') $required = "required";
|
||||
else if ($w == 'u') $readonly = "readonly";
|
||||
?>
|
||||
|
||||
<script>
|
||||
@ -15,10 +11,6 @@ var member_skin_path = "<?=$member_skin_path?>";
|
||||
<input type="hidden" name="w" value="<?=$w?>">
|
||||
<input type="hidden" name="url" value="<?=$urlencode?>">
|
||||
<input type="hidden" name="mb_jumin" value="<?=$jumin?>">
|
||||
<input type="hidden" id="mb_id_enabled" name="mb_id_enabled" value="">
|
||||
<input type="hidden" id="mb_nick_enabled" name="mb_nick_enabled" value="">
|
||||
<input type="hidden" id="mb_email_enabled" name="mb_email_enabled" value="">
|
||||
<!-- <input type="hidden" name="token" value="<?=$token?>"> -->
|
||||
<? if (isset($member['mb_sex'])) { ?><input type="hidden" name="mb_sex" value="<?=$member['mb_sex']?>"><? } ?>
|
||||
<? if (isset($member['mb_nick_date']) && $member['mb_nick_date'] <= date("Y-m-d", $g4['server_time'] - ($config['cf_nick_modify'] * 86400))) { // 별명수정일이 지나지 않았다면 ?>
|
||||
<input type="hidden" name="mb_nick_default" value="<?=$member['mb_nick']?>">
|
||||
@ -30,18 +22,17 @@ var member_skin_path = "<?=$member_skin_path?>";
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_id">아이디</label></th>
|
||||
<td>
|
||||
<input type="text" id="reg_mb_id" name="mb_id" class="frm_input <?=$required?> <?=$readonly?>" value="<?=$member['mb_id']?>" maxlength="20" <?=$required?> <?=$readonly?>>
|
||||
<input type="text" id="reg_mb_id" name="mb_id" class="frm_input minlength_3 <?=$required?> <?=$readonly?>" value="<?=$member['mb_id']?>" maxlength="20" <?=$required?> <?=$readonly?> title="회원아이디">
|
||||
<span id="msg_mb_id"></span>
|
||||
<span class="frm_info">영문자, 숫자, _ 만 입력 가능. 최소 3자이상 입력하세요.</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_password">패스워드</label></th>
|
||||
<td><input type="password" id="reg_mb_password" name="mb_password" class="frm_input <?=$required?>" maxlength="20" <?=$required?>></td>
|
||||
<td><input type="password" id="reg_mb_password" name="mb_password" class="frm_input minlength_3 <?=$required?>" maxlength="20" <?=$required?> title="패스워드"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_password_re">패스워드 확인</label></th>
|
||||
<td><input type="password" id="reg_mb_password_re" name="mb_password_re" class="frm_input <?=$required?>" maxlength="20" <?=$required?>></td>
|
||||
<td><input type="password" id="reg_mb_password_re" name="mb_password_re" class="frm_input minlength_3 <?=$required?>" maxlength="20" <?=$required?> title="패스워드 확인"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
@ -50,8 +41,8 @@ var member_skin_path = "<?=$member_skin_path?>";
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_name">이름</label></th>
|
||||
<td>
|
||||
<input id="reg_mb_name" name="mb_name" class="frm_input <?=$required?> <?=$readonly?>" value="<?=$member['mb_name']?>" <?=$required?> <?=$readonly?>>
|
||||
<? if ($w=='') { echo "(공백없이 한글만 입력 가능)"; } ?>
|
||||
<input id="reg_mb_name" name="mb_name" class="frm_input hangul <?=$required?> <?=$readonly?>" value="<?=$member['mb_name']?>" <?=$required?> <?=$readonly?> title="이름">
|
||||
<? if ($w=='') { echo "<span class=\"frm_info\">공백없이 한글만 입력하세요.</span>"; } ?>
|
||||
</td>
|
||||
</tr>
|
||||
<? if ($req_nick) { ?>
|
||||
@ -59,7 +50,7 @@ var member_skin_path = "<?=$member_skin_path?>";
|
||||
<th scope="row"><label for="reg_mb_nick">별명</label></th>
|
||||
<td>
|
||||
<input type="hidden" name="mb_nick_default" value="<?=isset($member['mb_nick'])?$member['mb_nick']:'';?>">
|
||||
<input type="text" id="reg_mb_nick" name="mb_nick" class="frm_input required" maxlength="20" value="<?=isset($member['mb_nick'])?$member['mb_nick']:'';?>" required>
|
||||
<input type="text" id="reg_mb_nick" name="mb_nick" class="frm_input required" maxlength="20" value="<?=isset($member['mb_nick'])?$member['mb_nick']:'';?>" required title="별명">
|
||||
<span id="msg_mb_nick"></span>
|
||||
<span class="frm_info">
|
||||
공백없이 한글,영문,숫자만 입력 가능 (한글2자, 영문4자 이상)<br>
|
||||
@ -73,12 +64,12 @@ var member_skin_path = "<?=$member_skin_path?>";
|
||||
<th scope="row"><label for="reg_mb_email">E-mail</label></th>
|
||||
<td>
|
||||
<input type="hidden" name="old_email" value="<?=$member['mb_email']?>">
|
||||
<input type="text" id="reg_mb_email" name="mb_email" class="frm_input <?=$config['cf_use_email_certify']?"required":"";?>" maxlength="100" value='<?=isset($member['mb_email'])?$member['mb_email']:'';?>' <?=$config['cf_use_email_certify']?"required":"";?>>
|
||||
<input type="text" id="reg_mb_email" name="mb_email" class="frm_input email <?=$config['cf_use_email_certify']?"required":"";?>" maxlength="100" value='<?=isset($member['mb_email'])?$member['mb_email']:'';?>' <?=$config['cf_use_email_certify']?"required":"";?> title="E-mail">
|
||||
<span id="msg_mb_email"></span>
|
||||
<? if ($config['cf_use_email_certify']) { ?>
|
||||
<span class="frm_info">
|
||||
<? if ($w=='') { echo "e-mail 로 발송된 내용을 확인한 후 인증하셔야 회원가입이 완료됩니다."; } ?>
|
||||
<? if ($w=='u') { echo "e-mail 주소를 변경하시면 다시 인증하셔야 합니다."; } ?>
|
||||
<? if ($w=='') { echo "E-mail 로 발송된 내용을 확인한 후 인증하셔야 회원가입이 완료됩니다."; } ?>
|
||||
<? if ($w=='u') { echo "E-mail 주소를 변경하시면 다시 인증하셔야 합니다."; } ?>
|
||||
</span>
|
||||
<? } ?>
|
||||
</td>
|
||||
@ -199,30 +190,28 @@ var member_skin_path = "<?=$member_skin_path?>";
|
||||
<? if ($w == "" && $config['cf_use_recommend']) { ?>
|
||||
<tr>
|
||||
<th scope="row"><label for="reg_mb_recommend">추천인아이디</label></th>
|
||||
<td><input type="text" id="reg_mb_recommend" name="mb_recommend"></td>
|
||||
<td><input type="text" id="reg_mb_recommend" name="mb_recommend" class="frm_input" title="추천인아이디"></td>
|
||||
</tr>
|
||||
<? } ?>
|
||||
</table>
|
||||
|
||||
<?=get_captcha('wr_key', 1);?>
|
||||
<?=get_captcha("wr_key", 1);?>
|
||||
|
||||
<div class="btn_confirm">
|
||||
<input type="submit" value="회원가입" accesskey="s">
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<script src="<?="$g4[path]/js/jquery.kcaptcha.js"?>"></script>
|
||||
<script>
|
||||
$(function(){
|
||||
/*
|
||||
$("#reg_mb_id").blur(function(){
|
||||
var msg = reg_mb_id_check();
|
||||
//$("#msg_mb_id").html(msg).css('color', 'red');
|
||||
if (msg) alert(msg);
|
||||
});
|
||||
|
||||
$("#reg_mb_nick").blur(function(){
|
||||
var msg = reg_mb_nick_check();
|
||||
//$("#msg_mb_nick").html(msg).css('color', 'red');
|
||||
if (msg) alert(msg);
|
||||
});
|
||||
|
||||
@ -230,6 +219,7 @@ $(function(){
|
||||
var msg = reg_mb_email_check();
|
||||
if (msg) alert(msg);
|
||||
});
|
||||
*/
|
||||
});
|
||||
|
||||
|
||||
@ -298,7 +288,7 @@ function fregisterform_submit(f)
|
||||
if ((f.w.value == "") || (f.w.value == "u" && f.mb_email.defaultValue != f.mb_email.value)) {
|
||||
var msg = reg_mb_email_check();
|
||||
if (msg) {
|
||||
alert(mdg);
|
||||
alert(msg);
|
||||
f.reg_mb_email.select();
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -8,15 +8,15 @@ if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
</header>
|
||||
|
||||
<p>
|
||||
<?=$mb[mb_name]?>님의 회원가입을 진심으로 축하합니다.<br>
|
||||
회원님의 아이디는 <?=$mb[mb_id]?> 입니다.<br>
|
||||
<?=$mb['mb_name']?>님의 회원가입을 진심으로 축하합니다.<br>
|
||||
회원님의 아이디는 <?=$mb['mb_id']?> 입니다.<br>
|
||||
회원님의 패스워드는 아무도 알 수 없는 암호화 코드로 저장되므로 안심하셔도 좋습니다.<br>
|
||||
아이디, 패스워드 분실시에는 회원가입시 입력하신 패스워드 분실시 질문, 답변을 이용하여 찾을 수 있습니다.
|
||||
</p>
|
||||
|
||||
<? if ($config[cf_use_email_certify]) { ?>
|
||||
<? if ($config['cf_use_email_certify']) { ?>
|
||||
<p>
|
||||
회원 가입 시 입력하신 이메일 <strong><?=$mb[mb_email]?></strong>로 발송된 내용을 확인하신 후 인증하셔야 회원가입이 완료됩니다.
|
||||
회원 가입 시 입력하신 이메일 <strong><?=$mb['mb_email']?></strong>로 발송된 내용을 확인하신 후 인증하셔야 회원가입이 완료됩니다.
|
||||
</p>
|
||||
<? } ?>
|
||||
|
||||
@ -25,6 +25,6 @@ if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
|
||||
감사합니다.
|
||||
</p>
|
||||
|
||||
<a href="<?=$g4[url]?>/">메인으로</a>
|
||||
<a href="<?=$g4['url']?>/">메인으로</a>
|
||||
|
||||
</article>
|
||||
Reference in New Issue
Block a user