<?
include_once("./_common.php");

if (!$member[mb_id])
    alert("회원만 이용하실 수 있습니다.");

$key = get_session("captcha_keystring");
if ($wr_key && !($key && $key == $_POST[wr_key])) {
    unset($_SESSION['captcha_keystring']);
    alert("정상적인 접근이 아닌것 같습니다.");
}

$recv_list = explode(",", trim(str_replace(" ", "", $_POST['me_recv_mb_id'])));		//-- 공백제거 ziumsoft
$str_nick_list = "";
$msg = "";
$error_list  = array();
$member_list = array();
for ($i=0; $i<count($recv_list); $i++) {
    $row = sql_fetch(" select mb_id, mb_nick, mb_open, mb_leave_date, mb_intercept_date from $g4[member_table] where mb_id = '$recv_list[$i]' ");
    // 관리자가 아니면서
    // 가입된 회원이 아니거나 정보공개를 하지 않았거나 탈퇴한 회원이거나 차단된 회원에게 쪽지를 보내는것은 에러
    if ((!$row[mb_id] || !$row[mb_open] || $row[mb_leave_date] || $row[mb_intercept_date]) && !$is_admin) {
        $error_list[]   = $recv_list[$i];
    } else {
        $member_list['id'][]   = $row[mb_id];
        $member_list['nick'][] = $row[mb_nick];
    }
}

$error_msg = implode(",", $error_list);

if ($error_msg && !$is_admin)
    alert("회원아이디 \'".$error_msg."\' 은(는) 존재(또는 정보공개)하지 않는 회원아이디 이거나 탈퇴, 접근차단된 회원아이디 입니다.\\n\\n쪽지를 발송하지 않았습니다.");

if (!$is_admin) {
    if (count($member_list['id'])) {
        $point = (int)$config[cf_memo_send_point] * count($member_list['id']);
        if ($point) {
            if ($member[mb_point] - $point < 0) {
                alert("보유하신 포인트(".number_format($member[mb_point])."점)가 모자라서 쪽지를 보낼 수 없습니다.");
            } 
        }
    }
}

if(isset($zm_config)) {
	//-- 보낸 쪽지가 허용 개수를 넘었으면 중단
	$smres	= sql_fetch("select db_id, db_memosend_date, db_memo_today from $zmb[table_member] where db_id='$member[mb_id]'");
	if(($zm_config[memo_today] > 0) && ($smres[db_memosend_date] == date("Y-m-d", $g4[server_time])) && (($smres[db_memo_today]+count($member_list['id'])) > $zm_config[memo_today])) {
		alert("하루 발송 제한 개수를 넘겼습니다.", "./memo.php?kind=send");
	}
}

//-- 쪽지 전송
for ($i=0; $i<count($member_list['id']); $i++) {
	$where_refusal	= "";										//-- 차단 된 쪽지 플래그 저장 쿼리

	$tmp_row	= sql_fetch(" select max(me_id) as max_me_id from $g4[memo_table] ");
    $me_id		= $tmp_row[max_me_id] + 1;

    $recv_mb_id   = $member_list['id'][$i];
    $recv_mb_nick = get_text($member_list['nick'][$i]);

	if(isset($zm_config)) {
		//-- 받는 사람이 보내는 사람을 차단 했을 때. 
		//-- 보내는 사람 상처 안받게 정상 처리 메시지를 보내 준다. 나를 차단한 사람을 알 수 없도록 사생활 보호
		$rs_refusal	= sql_fetch("select * from $zmb[table_memo_refusal] where db_id='$recv_mb_id' and db_refusal_id='$member[mb_id]'");
		if($rs_refusal[db_refusal_id])							//-- 차단 됐음 ㅠㅠ
			$where_refusal	= ", me_type='1'";

		//-- 수신 조건에 맞지 않는 회원이면 차단 처리 함
		$mb_recv_condi	= zm_getmember("$recv_mb_id", "db_id, db_memo_recv_condition");
		if($mb_recv_condi[db_memo_recv_condition] == "2"){		//-- 친구에게만 받음 ㅠㅠ
			//-- 이 사람이 나를 친구로 등록 한 것임?
			$myfrnd		= zm_is_friend("$recv_mb_id");
			if(!$myfrnd)	$where_refusal	= ", me_type='1'";
		}
	}

    // 쪽지 INSERT
    $sql = " insert into $g4[memo_table] set me_id='$me_id', me_recv_mb_id='$recv_mb_id', me_send_mb_id='$member[mb_id]', me_send_datetime='$g4[time_ymdhis]', me_memo='$_POST[me_memo]' $where_refusal";
    sql_query($sql);

    // 실시간 쪽지 알림 기능
    $sql = " update $g4[member_table] set mb_memo_call = '$member[mb_id]' where mb_id = '$recv_mb_id' ";
    sql_query($sql);
	
	if(isset($zm_config)) {
		//-- 회원 정보에서 새 쪽지 카운트
		if(!$where_refusal) mysql_query("update $zmb[table_member] set db_new_memo=db_new_memo+1 where db_id='$recv_mb_id'");
		//-- 받는 사람이 최근 발송 했던 아이디가 아니면 추가
		if(!strstr($zm_member[memo_latesend], $recv_mb_id)) {
			$zm_member[memo_latesend]	.= "," . $recv_mb_id;
		}

		//-- 최근 쪽지 보낸 날짜가 오늘 날짜면 발송한 쪽지 개수 카운트
		if($zm_member[memosend_date] == date("Y-m-d", $g4[server_time])) {
			mysql_query("update $zmb[table_member] set db_memo_today=db_memo_today+1 where db_id='$member[mb_id]'");		//-- 발송자 카운트 증가
		}else{
			mysql_query("update $zmb[table_member] set db_memosend_date='".date("Y-m-d", $g4[server_time])."', db_memo_today='1' where db_id='$member[mb_id]'");
		}
	}

    if (!$is_admin) {
        insert_point($member[mb_id], (int)$config[cf_memo_send_point] * (-1), "{$recv_mb_nick}({$recv_mb_id})님께 쪽지 발송", "@memo", $recv_mb_id, $me_id);
    }
}

if(isset($zm_config)) {
	$atmp		= explode(",", $zm_member[memo_latesend]);
	$newsendid	= "";
	$newidcnt	= 0;
	for($i = 0; $i < count($atmp); $i++) {
		if($atmp[$i] && ($newidcnt < 10)) {
			$newsendid	.= $atmp[$i] . ",";
			$newidcnt++;
		}
	}
	if(substr($newsendid, -1, 1) == ",") $newsendid = substr($newsendid, 0, strlen($newsendid)-1);
	sql_query("update $zmb[table_member] set db_memo_latesend='$newsendid' where db_id='$member[mb_id]'");
}

$str_nick_list = implode(",", $member_list['nick']);

alert("\'$str_nick_list\' 님께 쪽지를 전달하였습니다.", "./memo.php?kind=send");
?>