<?
require_once('include/global.php');
require_once('include/mail_lib.php');
require_once('include/mail_send_lib.php');
require_once('include/file.php');
require_once('conf.inc.php');

nskinset('webmail', 'mail_write_ok.html');

if (!$_GET['is_draft_save'])
{
	// [2007-06-05] 편지쓰기완료 페이지에서 로그아웃된 뒤 다시 로그인할 경우 발생하는 문제.
	if (!$_POST['mf_content_type'])
		movepage("mail_write.php?".get_qs());		

	set_time_limit(1200);
	page_loading_view("메일을 발송하고 있습니다.");
} else 
{
	// [2007-06-05] 임시보관함에 저장할때 아무 내용이 없을 땐 생략함.
	if (trim($_POST['mf_to']) == '' && trim($_POST['mf_cc']) == '' && trim($_POST['mf_bcc']) == '' && trim($_POST['mf_subject']) == '' && trim($_POST['mf_body_text']) == '' && trim($_POST['mf_body_html']) == '')
		die("Data Null");
}	// if()


// set
	$CFG['TITLE'] = "<b>편지쓰기</b> >> <b>발송결과</b>";


// [2012-09-27] 예약발송
$__MAIL_SEND_RESERVE_FAIL = false;
if (!$_GET['is_draft_save'])
{
	if ($G_SYS['MAIL_SEND_RESERVE_ISUSE'])
	{
		if ($_POST['is_reserve'])
		{
			$_reserve_time = strtotime($_POST['mf_reserve_date'].' '.$_POST['mf_reserve_time_h'].':'.$_POST['mf_reserve_time_m'].':00');
			if ($_reserve_time > time())
			{
				$q = "SELECT COUNT(*) FROM ".$TB['MAIL_RECEIVE_CHECK']." WHERE mrc_reserve_status='W' AND m_no='".$AUTH['auth_m_no']."'";
				$mf_reserve_count = db_get_one($q);

				if ($mf_reserve_count < $G_SYS['MAIL_SEND_RESERVE_LIMIT_SEND'])
				{
					// 예약발송 활성화
					$G_SYS['NM_SEND_QUEUE_RESERVE'] = $UPLOAD_ROOT.'/'.$UPLOAD_DIR[MAILRESERVE];
					mkdir_parent($UPLOAD_DIR[MAILRESERVE]);
					$G_SYS['NM_SEND_TYPE'] = 'sendmail';
				} else
				{
					$_GET['is_draft_save'] = 1;
					$__MAIL_SEND_RESERVE_FAIL = true;
				}	// if()
			} else 
			{
				$_POST['is_reserve'] = NULL;	
			}	// if()
		}	// if()
	}	// if()
}	// if()


// 메일 보내기
$ms = mail_send($_POST);


// [2006-02-07] 스팸메일 설정
	require_once('include/spam_config_lib.php');
	$sc = get_spam_config($AUTH['auth_m_no']);
	$spam_allow_add_list = array();
	// 스팸메일 설정 - 메일을 보낼때 받는 사람 주소를 [수신허용]에 자동추가.(권장)
	if ($sc['sc_write_allow_add'] == 'Y')
	{
		for ($i=0; $i<sizeof($ms['rcpt_all']); $i++)
		{
			if ($ms['result'][$i]['issend'])		// 발송성공
			{
				// 수신허용 목록에 자동 추가.
				$sa_email = addslashes(strtolower($ms['rcpt_all'][$i]['address']));
				if (strlen($sa_email) > 0 && isemail($sa_email))
				{
					// 중복여부 체크
					$sql = "SELECT COUNT(*)  FROM " . $TB['SPAM_ALLOW'] . " WHERE m_no='" . $AUTH['auth_m_no'] . "' AND sa_email='" . $sa_email . "'";
					$sa_cnt = db_get_one($sql);
					if ($sa_cnt < 1)
					{
						to_db_str(&$sa_email, 255, false);
						$sa_regdate = date('Y-m-d H:i:s');
						$sql = "
							INSERT INTO
								" . $TB['SPAM_ALLOW'] . "
								(m_no, sa_email, sa_regdate)
							VALUES
								('" . $AUTH['auth_m_no'] . "', '" . $sa_email . "', '" . $sa_regdate . "')
							";
						db_query($sql);
						$spam_allow_add_list[] = $ms['rcpt_all'][$i]['address'];
					}	// if()
				}	// if()
			}	// if()
		}	// for()
	}	// if()
	$spam_allow_add_list_view = implode(', ', $spam_allow_add_list);


// [2007-01-18] 답장, 전달했을 경우 별도의 아이콘으로 표시.
	if (is_numeric($_GET['mf_no']))
	{
		if ($_GET['mode'] == 'REPLY' || $_GET['mode'] == 'REPLY_ALL')
		{
			$sql = "
				UPDATE
					".$AUTH[auth_m_mf_table]."
				SET
					mf_is_reply='Y',
					mf_is_reply_date='" . date('Y-m-d H:i:s') . "'
				WHERE
					mf_no='" . $_GET['mf_no'] . "'
					AND m_no='" . $AUTH['auth_m_no'] . "'
				";
			db_query($sql);
		} else if ($_GET['mode'] == 'FORWARD')
		{
			$sql = "
				UPDATE
					".$AUTH[auth_m_mf_table]."
				SET
					mf_is_forward='Y',
					mf_is_forward_date='" . date('Y-m-d H:i:s') . "'
				WHERE
					mf_no='" . $_GET['mf_no'] . "'
					AND m_no='" . $AUTH['auth_m_no'] . "'
				";
			db_query($sql);

			// [2012-04-23] 편지목록에서 전달시, 읽음으로도 표시함.
			$sql = "
				UPDATE
					".$AUTH[auth_m_mf_table]."
				SET
					mf_is_read = 'Y',
					mf_is_read_date = '" . date('Y-m-d H:i:s') . "'
				WHERE
					mf_no='" . $_GET['mf_no'] . "'
					AND m_no='" . $AUTH['auth_m_no'] . "'
					AND mf_is_read = 'N'
				";
			db_query($sql);
		}	// if()
	}	// if()


// [2012-04-18] 편지목록에서 전달 추가
	if ($_GET['mode'] == 'MULTIFORWARD')		
	{
		if ($_POST['mf_no_multiforward'] != '' && preg_match("/^[0-9,]+$/s", $_POST['mf_no_multiforward']))
		{				
			$sql = "
				UPDATE
					".$AUTH[auth_m_mf_table]."
				SET
					mf_is_forward='Y',
					mf_is_forward_date='" . date('Y-m-d H:i:s') . "'
				WHERE
					mf_no IN (" . $_POST['mf_no_multiforward'] . ")
					AND m_no='" . $AUTH['auth_m_no'] . "'
				";
			db_query($sql);

			// [2012-04-23] 편지목록에서 전달시, 읽음으로도 표시함.
			$sql = "
				UPDATE
					".$AUTH[auth_m_mf_table]."
				SET
					mf_is_read = 'Y',
					mf_is_read_date = '" . date('Y-m-d H:i:s') . "'
				WHERE
					mf_no IN (" . $_POST['mf_no_multiforward'] . ")
					AND m_no='" . $AUTH['auth_m_no'] . "'
					AND mf_is_read = 'N'
				";
			db_query($sql);
		}	// if()
	}	// if()


// end
	if (!$_GET['is_draft_save'])
	{
		#movepage('mail_write.php?' . get_qs());

		// 임시보관함에 저장된 메일이 삭제될 경우를 고려해 메일갯수를 다시 가져옴.
		unset($G_SYS[USER_MAIL_BOX]);
		get_mail_box();

		// skin view
			page_loading_view_hidden();
			include($NSKIN['view_layout']);

	} else
	{
		// [2012-09-27] 예약발송
		if ($__MAIL_SEND_RESERVE_FAIL)
		{
			msg("예약발송이 ".$G_SYS['MAIL_SEND_RESERVE_LIMIT_SEND']."통을 초과하여 실패하였습니다.\\n\\n[수신확인]에서 불필요한 예약발송을 삭제하셔야 합니다.\\n\\n작성된 메일은 [임시보관함]에 저장되었습니다.", 0);
			movepage("mail_write.php?mode=RESEND&mb_id=draft&mf_no=".$ms['draft'][0]);
		} else
		{
			// [2006-06-09] 임시보관함 처리.  mail_file, mf_no
			?>
				<script language="JavaScript">
				<!--
					var parent_form = '';
					if (parent.document.forms.write == null && opener.document.forms.write != null)
					{
						parent_form = opener.document.forms.write;
					} else
					{
						parent_form = parent.document.forms.write;
					}
					parent_form.draft_mf_no.value = '<?= $ms['draft'][0] ?>';
					parent_form.draft_mf_filename.value = '<?= $ms['draft'][1] ?>';

					<? if ($_GET['isauto'] == '1') { ?>
						if (parent.document.all.draft_save_auto_msg)
						{
							parent.document.all.draft_save_auto_msg.style.display = '';
							parent.document.all.draft_save_auto_msg.innerHTML = '&nbsp;자동으로 임시 보관함에 저장되었습니다.  <?= date('H:i') ?>&nbsp;';

							var nm_webeditor = '<?= $G_SYS['WEBEDITOR'] ?>';
							if (nm_webeditor == 'OPEN')
							{
								// [2008-10-01]임시보관함에 자동저장시 다른창에서 편지쓰기창으로 포커싱되는 불편함 개선.
								//parent.document.getElementById('wysiwygmf_body_html').contentWindow.focus();
							} else if (nm_webeditor == 'FCK')
							{
								//parent.document.getElementById('mf_body_html___Frame').contentWindow.focus();
							}
						}
					<? } else if ($_GET['isauto'] == '2') { ?>
						// 업로드 방식 전환시의 임시보관함 저장
					<? } else { ?>
						alert('<?= $ms['msg'] ?>');
					<? }	// if() ?>
				//-->
				</script>
			<?
			
		}	// if()
	}	// if()


require_once('include/global_end.php');
?>