Example #1
0
<?php if(!defined("__MAGIC__")) exit; 

$check = $this->Can('view');
if($check==='password') {
	Url::GoReplace($this->Link('check'));
} else if($check==='incorrect') {
	Dialog::alert("패스워드가 틀렸습니다.");
} else if($check===false) {
	Dialog::alert("게시글 보기 권한이 없습니다.");
}

<?php

if (!defined("__MAGIC__")) {
    exit;
}
/*
 * action파일
 * action.*.php 파일은 Alert을 호출하지 않고 단순한 하나의 행동을하고
 * 결과 값을 알려준다.
 * $result에 결과값을 저장해 줌
 * --------------------------
 * 해당 개시글이 새로운 글인지 검사함
 * $att[1] 첫번째 파라메터는 삭제할 파일번호다.
 */
$tbn = $this->TBN();
// 테이블명
$clear = $att[1];
unset($clear['bo_no']);
///< 게시판 번호는 자동생성
if (!$clear['bo_subject']) {
    Dialog::alert('게시판 명을 입력하세요.');
}
foreach ($this->Config('default') as $k => $v) {
    if (!isset($clear[$k])) {
        $clear[$k] = $v;
    }
}
$result = DB::Get()->insertEx($tbn, $clear);
Example #3
0
}
// 스펨  차단코드 검사
Captcha::Inst()->Check();
// 걸러진 결과값
$clear = $this->Clear();
if (!$clear['mb_nick']) {
    Dialog::alert("별명을 입력하세요.");
}
if (!$clear['mb_passwd']) {
    Dialog::alert("비밀번호를 입력하세요.");
}
if (!$clear['mb_email']) {
    Dialog::alert("이메일 주소를 입력하세요.");
}
if ($clear['mb_passwd'] != $_POST['confirm_passwd']) {
    Dialog::alert("비밀번호 확인이 일치하지 않습니다.");
}
$clear['mb_passwd'] = $this->Sql('password', $clear['mb_passwd']);
$clear['mb_datetime'] = 'NOW()';
$clear['mb_level'] = '2';
$tbn = $this->TBN();
$sql = "\n  SELECT\n    mb_id,\n    mb_nick,\n    mb_name,\n    mb_email\n    FROM {$tbn}\n  WHERE\n    mb_id='{$clear['mb_id']}' OR\n    mb_nick='{$clear['mb_nick']}' OR\n    mb_name='{$clear['mb_name']}' OR\n    mb_email='{$clear['mb_email']}'\n  LIMIT 1\n";
$dup = DB::Get()->sql_fetch($sql);
if ($duplication !== false) {
    if ($dup['mb_id'] == $clear['mb_id']) {
        Dialog::alertNReplace("동일한 회원아이디가 있습니다.", Path::Group());
    }
    if ($dup['mb_nick'] == $clear['mb_nick']) {
        Dialog::alertNReplace("동일한 회원닉네임이 있습니다.", Path::Group());
    }
    if ($dup['mb_name'] == $clear['mb_name']) {
Example #4
0
<?php if(!defined("__MAGIC__")) exit; 

// 지엠스팸프리 검사
if(!$this->Config('mb','login')) Captcha::Inst()->Check();
if(!$this->Can('write')) {
	Dialog::alert("글쓰기 권한이 없습니다.");
}
Example #5
0
<?php

if (!defined("__MAGIC__")) {
    exit;
}
// 스펨  차단코드 검사
ZSF::Check();
// 걸러진 결과값
$clear = $this->Action('clear');
// 로그인한 회원정보
$m = $this->Action('login_info');
// 수정하지 않을 변수
unset($clear['mb_id']);
unset($clear['mb_passwd']);
if (!$clear['mb_nick']) {
    Dialog::alert("별명을 입력하세요.");
}
// 파일을 업로드 했을 때 이전 파일들은 지움
$f = File::Inst();
$files = array();
if ($_FILES[$f->Config('form_name', 'file')]['name']) {
    foreach ($f->mb_no($m['mb_no'])->Action('files') as $k => $v) {
        $files[] = $v['file_no'];
    }
}
// 삭제파일
$del_files = $_POST[File::Inst()->Config('form_name', 'del')];
if (!$del_files) {
    $del_files = array();
}
// 삭제해야할 파일들 삭제
Example #6
0
<?php

if (!defined("__MAGIC__")) {
    exit;
}
$tbn = self::TBN();
$msg_no = GV::Number('msg_no');
$mb_no = Member::No();
$list = $_POST['check'];
if ($msg_no) {
    $list[] = $msg_no;
}
if (sizeof($list) == 0) {
    Dialog::alert('복구할 글을 선택해 주세요.');
}
foreach ($list as $v) {
    $sql = "\n\tUPDATE {$tbn} SET msg_state=msg_state&~{$this->Config('state', 'trash')}\n\tWHERE msg_no={$v}\n\t";
    DB::Get()->sql_query($sql);
}
Url::Go($this->Link('list'));
exit;
Example #7
0
<?php if(!defined("__MAGIC__")) exit; 

/*
 * 결과값
 * -----------------------------
 * true = 통과
 * false = 수정할 수 없음
 * password = 패스워드 입력 요함
 * incorrect = 패스워드 틀림
 */

$key = GV::Number($this->KN());
$check = $this->Can('delete', $key);

if($check==='password'){
	Url::GoReplace($this->Link('check'));
} else if($check==='incorrect') {
	Dialog::alert("패스워드가 틀렸습니다.");
} else if($check===false) {
	Dialog::alert("삭제권한이 없습니다.");
}
Example #8
0
}
if (!isset($set_time_limit)) {
    $set_time_limit = 0;
}
@set_time_limit($set_time_limit);
// configure session
@ini_set("session.use_trans_sid", 0);
// PHPSESSID를 자동으로 넘기지 않음
@ini_set("url_rewriter.tags", "");
// 링크에 PHPSESSID가 따라다니는것을 무력화
// 나중에 세션폴더 따로생성
//session_save_path("$root/data/session2");
if (isset($SESSION_CACHE_LIMITER)) {
    @session_cache_limiter($SESSION_CACHE_LIMITER);
} else {
    @session_cache_limiter("no-cache, must-revalidate");
}
//session_cache_limiter("must-revalidate");
//session_cache_expire(60);
//ini_set("session.cache_expire", 180); // 세션 캐쉬 보관시간 (분)
//ini_set("session.gc_maxlifetime", 10800); // session data의 gabage collection 존재 기간을 지정 (초)
//session_set_cookie_params(0, "/");
//ini_set("session.cookie_domain", $magic['cookie_domain']);
session_start();
// PHPSESSID 가 틀리면 로그아웃한다.
if ($_REQUEST['PHPSESSID'] && $_REQUEST['PHPSESSID'] != session_id()) {
    Dialog::alert('로그아웃 합니다.', Path::logout());
}
// Set the global variables [_POST / _GET / _COOKIE]
GV::Init();
Url::This();
Example #9
0
<?php if(!defined("__MAGIC__")) exit; 

$tbn = $this->TBN();
$clear = $this->Clear();

if(!$clear['wr_subject']) Dialog::alert('페이지명을 입력해 주세요.');
$clear['bo_no'] = 0;

$key = $this->Sql('insert', $clear);
if(!$key) Dialog::Alert('정확한 정보를 입력하세요.');

Url::GoReplace($this->Link('list'));
Example #10
0
 static function SetDefault(&$change_array, $key, $default_value)
 {
     if (!is_array($change_array)) {
         Dialog::alert("\$change_array, 배열이 아닙니다.\n배열을 첫번째 인자로 넣어주세요.");
     }
     if (!isset($change_array[$key])) {
         $change_array[$key] = $default_value;
     }
 }
Example #11
0
<?php

if (!defined("__MAGIC__")) {
    exit;
}
if (!Member::IsLogin()) {
    Dialog::alert('로그인이 필요한 서비스 입니다.');
}
Example #12
0
<?php

if (!defined("__MAGIC__")) {
    exit;
}
$tbn = self::TBN();
$msg_no = GV::Number('msg_no');
$mb_no = Member::No();
$list = $_POST['check'];
if ($msg_no) {
    $list[] = $msg_no;
}
if (sizeof($list) == 0) {
    Dialog::alert('삭제할 글을 선택해 주세요.');
}
foreach ($list as $v) {
    $sql = "\n\tDELETE FROM {$tbn}\n\tWHERE (msg_no='{$v}' OR msg_parent='{$v}') AND mb_no={$mb_no}\n\t";
    DB::Get()->sql_query($sql);
}
Url::Go($this->Link('list'));
exit;
Example #13
0
if (!$sql_result) {
    $sql_result = array();
}
foreach ($sql_result as $k => $v) {
    if ($v['mb_no'] == Member::No()) {
        unset($sql_result[$k]);
    }
}
/*
 * 필수 입력 검사
 */
if (count($sql_result) == 0) {
    Dialog::alert('받는사람을 입력해 주세요.');
}
if (!$clear['msg_content']) {
    Dialog::alert('내용을 입력해 주세요.');
}
/*
 * 공통 기본 정보들 자동입력
 */
$clear['msg_datetime'] = Util::GetDatetime();
$clear['msg_ip'] = "INET_ATON('" . Util::GetRealIPAddr() . "')";
foreach ($sql_result as $v) {
    $with = $v['mb_no'];
    ///< 대화상대
    $with_name = $v['mb_nick'];
    ///< 대화상대 이름
    $mb_no = Member::No();
    ///< 로그인한 회원본인
    $mb_nick = Member::Nick();
    ///< 로그인한 회원 이름
Example #14
0
<?php

if (!defined("__MAGIC__")) {
    exit;
}
// 스펨  차단코드 검사
ZSF::Check();
$m = $this->Action('login_info');
$passwd = $this->Sql('password', $_POST['old_passwd']);
if ($passwd != $m['mb_passwd']) {
    Dialog::alert("기존 비밀번호가 맞지 않습니다.\n다시한번 확인하세요.");
}
$password = GV::Password('mb_passwd');
$password_check = GV::Password('mb_passwd_check');
if (!$password) {
    Dialog::alert("변경할 비밀번호를 입력하세요.");
}
if ($password != $password_check) {
    Dialog::alert("변경할 비밀번호가 일치 하지 않습니다.");
}
if ($password == $_POST['old_passwd']) {
    Dialog::alert("이전 비밀번호와 동일합니다.");
}
$this->Sql('change_password', $password);
$this->Action('logout');
Dialog::alertNReplace("비밀번호가 수정되었습니다.\n다시 로그인 하세요.", htmlspecialchars_decode($this->Link('login')));
Example #15
0
<?php

if (!defined("__MAGIC__")) {
    exit;
}
$tbn = self::TBN();
$msg_no = GV::Number('msg_no');
$list = $_POST['check'];
if ($msg_no) {
    $list[] = $msg_no;
}
if (sizeof($list) == 0) {
    Dialog::alert('보관할 글을 선택해 주세요.');
}
foreach ($list as $v) {
    DB::Get()->sql_query("\nUPDATE {$tbn} SET msg_state=msg_state|{$this->Config('state', 'archive')}\nWHERE msg_no='{$v}'\n");
}
Url::Go($this->Link('list'));
exit;
Example #16
0
	$clear['wr_writer'] = Member::Inst()->mb_nick;
}

// 최근게시글을 위해 게시글이 출력되는 아이디를 저장함
$r = GV::String('r');
$id1 = GV::String('id1');
$id2 = GV::String('id2');
$qstr = array();
if($r) $qstr[] = 'r='.$r;
if($id1) $qstr[] = 'id1='.$id1;
if($id2) $qstr[] = 'id2='.$id2;
$clear['last_id'] = '?'.implode('&', $qstr);

if(!$clear['wr_subject'])	 Dialog::alert('제목을 입력해 주세요.');
if(!$clear['wr_content'])	 Dialog::alert('내용을 입력해 주세요.');
if(!$clear['wr_writer'])	 Dialog::alert('글쓴이를 입력해 주세요.');

// 업데이트 날짜
$clear['wr_update'] = 'NOW()';

// 분류
if($_POST['ca1']) $clear['wr_category'][] = $_POST['ca1']; 
if($_POST['ca2']) $clear['wr_category'][] = $_POST['ca2']; 
if(is_array($clear['wr_category'])) $clear['wr_category'] = implode('|',$clear['wr_category']); 

$clear['wr_state'] = 0;
if($_POST['opt_notice']) {
	$clear['wr_state'] = $clear['wr_state']|$this->Config('state', 'notice');
}

DB::Get()->update($tbn, $clear, ' WHERE wr_no='.$key, array('wr_update'));
Example #17
0
<?php

if (!defined("__MAGIC__")) {
    exit;
}
// 걸러진 결과값
$clear = $this->Clear();
if (!$clear['m_id']) {
    Dialog::alert("메뉴명을 입력하세요.");
}
// 부모 아이디를 찾는다
// POST로 root, main 이렇게 넘어옴
if ($_POST['main']) {
    $clear['m_parent'] = $_POST['main'];
} else {
    if ($_POST['root']) {
        $clear['m_parent'] = $_POST['root'];
    } else {
        $clear['m_parent'] = 0;
    }
}
$data = $this->Sql('fetch', GV::Number($this->KN()));
$existing = explode(',', $data['m_contents']);
$layout_contents = Layout::Inst($clear['m_layout'])->FindContents();
$contents = array();
foreach ($layout_contents as $k => $v) {
    if ($existing[$k]) {
        $contents[] = $existing[$k];
    } else {
        $contents[] = '[[Widget]]';
    }
Example #18
0
	if($clear['wr_password']!=$_POST['wr_password_check'])
		Dialog::alert('[비밀번호/비밀번호확인]이 일치하지 않습니다.');
	if(!$clear['wr_password'])
		Dialog::alert('비밀번호를 입력해 주세요.');
	$clear['wr_password'] = $this->Sql('password', $clear['wr_password']);
} else {
	$clear['wr_writer'] = Member::Inst()->mb_nick;
}

// 최근게시글을 위해 게시글이 출력되는 아이디를 저장함
$clear['last_id'] = GV::String('id');

if(!$clear['wr_subject'])	 Dialog::alert('제목을 입력해 주세요.');
if(!$clear['wr_content'])	 Dialog::alert('내용을 입력해 주세요.');
if(!$clear['wr_writer'])	 Dialog::alert('글쓴이를 입력해 주세요.');
if($board->bo_use_category) if(!$clear['wr_category']) Dialog::alert('분류를 선택하세요.');

// 업데이트 날짜
$data['wr_update'] = 'NOW()';

DB::Get()->update($tbn, $clear, ' WHERE wr_no='.$key);
// 파일 업로드
File::Inst()->Action('upload', $key);
$del_files = $_POST[File::Inst()->Config('form_name', 'del')];
if(!is_array($del_files)) $del_files = array();
foreach ($del_files as $v) {
	File::Inst()->Action('delete', $v);
}

Dialog::alertNReplace("게시글 수정을 완료 하였습니다.", Url::Get('',$this->Mode('name')));
Example #19
0
<?php

if (!defined("__MAGIC__")) {
    exit;
}
if (!Member::Inst()->Action('is_admin')) {
    Dialog::alert('관리자 권한이 필요한 서비스 입니다.');
}
Example #20
0
<?php

if (!defined("__MAGIC__")) {
    exit;
}
$tbn = self::TBN();
$msg_no = GV::Number('msg_no');
$state = GV::Number('state');
$list = $_POST['check'];
if ($msg_no) {
    $list[] = $msg_no;
}
if (sizeof($list) == 0) {
    Dialog::alert('글을 선택해 주세요.');
}
foreach ($list as $v) {
    $sql = "\n\tUPDATE {$tbn}\n\tSET msg_state=msg_state|{$state}\n\tWHERE msg_no='{$v}'\n\t";
    DB::Get()->sql_query($sql);
}
Url::Go($this->Link('view', $msg_no));
exit;
Example #21
0
<?php

if (!defined("__MAGIC__")) {
    exit;
}
if (!Member::IsSuperAdmin()) {
    Dialog::alert('최고관리자 권한이 필요합니다.');
}
Example #22
0
<?php if(!defined("__MAGIC__")) exit; 

if(!$this->Can('list')) {
	Dialog::alert("목록을 볼 권한이 업습니다.");
}
Example #23
0
<?php

if (!defined("__MAGIC__")) {
    exit;
}
$check = $this->Can('modify');
if ($check === false) {
    Dialog::alert("로그인이 필요한 서비스 입니다.");
}
Example #24
0
<?php

if (!defined("__MAGIC__")) {
    exit;
}
$tbn = self::TBN();
$msg_no = GV::Number('msg_no');
$list = $_POST['check'];
if ($msg_no) {
    $list[] = $msg_no;
}
if (sizeof($list) == 0) {
    Dialog::alert('별표표시할 글을 선택해 주세요.');
}
foreach ($list as $v) {
    $sql = "\n\tUPDATE {$tbn}\n\tSET msg_state=msg_state|{$this->Config('state', 'star')}\n\tWHERE msg_no='{$v}'\n\t";
    DB::Get()->sql_query($sql);
}
Url::Go($this->Link('list'));
exit;
Example #25
0
<?php

if (!defined("__MAGIC__")) {
    exit;
}
// 스펨  차단코드 검사
Captcha::Inst()->Check();
$m = $this->Action('login_info');
$passwd = $this->Sql('password', $_POST['mb_passwd']);
if ($passwd != $m['mb_passwd']) {
    Dialog::alert("기존 비밀번호가 맞지 않습니다.\n다시한번 확인하세요.");
}
// 파일을 업로드 했을 때 이전 파일들은 지움
$f = File::Inst();
$files = array();
foreach ($f->mb_no($m['mb_no'])->Action('files') as $v) {
    $files[] = $v['file_no'];
}
// 삭제해야할 파일들 삭제
foreach ($files as $v) {
    $f->Action('delete', $v);
}
$this->Sql('unregist', $m['mb_no'], GV::String('mb_memo'));
$this->Action('logout');
Dialog::alert("정상적으로 회원탈퇴 되었습니다.\n그동안 이용해 주셔서 감사합니다.", Path::Group());
exit;
Example #26
0
<?php

if (!defined("__MAGIC__")) {
    exit;
}
$mb_id = GV::Id('mb_id', 'POST');
$mb_passwd = $this->Sql('password', GV::Password('mb_passwd', 'POST'));
//if(!$mb_id) Dialog::alert("아이디를 입력하세요");
//if(!$mb_passwd) Dialog::alert("패스워드를 입력하세요");
//*
if ($this->mb_id($mb_id)->mb_passwd != $mb_passwd) {
    Dialog::alert("로그인에 실패 했습니다.\n아이디와 비밀번호를 확인하세요.");
    exit;
}
//*/
// 로그인
$this->Action('login', $this->mb_no);
<?php

if (!defined("__MAGIC__")) {
    exit;
}
$mb_id = GV::Id('mb_id', 'POST');
if (Config::Inst('config.php')->admin == $mb_id) {
    Dialog::Alert("최고관리자는 질문 답변으로 비밀번호를 찾을수 없습니다.");
}
$ret = $this->Sql('fetch_by_id', $mb_id);
if (!$ret['mb_question']) {
    Dialog::alert("비밀번호 찾기 질문을 등록하지 않았습니다.\n질문 답변으로 비밀번호를 찾을수 없습니다.\n관리자에게 문의하세요.", Path::Group());
}
Example #28
0
<?php if(!defined("__MAGIC__")) exit; 

// 게시글 보기 이외에는 관리자여야함
if($this->CurrentState()!='view' && !Member::Inst()->Action('is_admin'))
	Dialog::alert("권한이 없습니다.");
Example #29
0
}

// 최근게시글을 위해 게시글이 출력되는 아이디를 저장함
$r = GV::String('r');
$id1 = GV::String('id1');
$id2 = GV::String('id2');
$qstr = array();
if($r) $qstr[] = 'r='.$r;
if($id1) $qstr[] = 'id1='.$id1;
if($id2) $qstr[] = 'id2='.$id2;
$clear['last_id'] = '?'.implode('&', $qstr);

// 기타 필수 입력 검사
if(!$clear['wr_subject'])	 Dialog::alert('제목을 입력해 주세요.');
if(!$clear['wr_writer'])	 Dialog::alert('글쓴이를 입력해 주세요.');
if(!$clear['wr_content'])	 Dialog::alert('내용을 입력해 주세요.');

// 분류생성
$clear['wr_category'] = array();
if($_POST['ca1']) $clear['wr_category'][] = $_POST['ca1']; 
if($_POST['ca2']) $clear['wr_category'][] = $_POST['ca2']; 
$clear['wr_category'] = implode('|',$clear['wr_category']); 


// 회원이면 자신의 회원번호를 입력함
if($this->Config('mb','login')) $clear['mb_no'] = $this->Config('mb','no');
// 기본 정보들 자동입력
$clear['wr_datetime'] = 'NOW()';
$clear['wr_update'] = 'NOW()';
$clear['wr_ip'] = "INET_ATON('".Util::GetRealIPAddr()."')";
$clear['bo_no'] = $bo_no;
Example #30
0
$clear['mb_no'] = $mb_no;
$clear['cmt_datetime'] = 'NOW()';
$clear['cmt_ip'] = "INET_ATON('" . Util::GetRealIPAddr() . "')";
if ($is_login) {
    $clear['cmt_writer'] = $mb_nick;
} else {
    if (!$clear['cmt_password']) {
        Dialog::alert('비밀번호를 입력해 주세요.');
    }
    $clear['cmt_password'] = $this->Sql('password', $clear['cmt_password']);
}
/*
 * 필수 입력 검사
 */
if (!$clear['cmt_content']) {
    Dialog::alert('내용을 입력해 주세요.');
}
if (!$clear['cmt_writer']) {
    Dialog::alert('글쓴이를 입력해 주세요.');
}
/*
 * 데이터 입력
 */
$key = DB::Get()->InsertEx($tbn, $clear, array('cmt_ip', 'cmt_datetime'));
if (!$key) {
    Dialog::Alert('정확한 정보를 입력하세요.');
}
/*
 * 입력후 목록으로 돌아감
 */
Url::GoReplace($this->Link('list'));