글작성시에 알림 기능 추가. 알림 체크시 댓글/엮인글이 첨부되면 쪽지로 발송함

git-svn-id: http://xe-core.googlecode.com/svn/trunk@2015 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
zero 2007-07-25 10:44:22 +00:00
parent 812283e33a
commit 94227a556d
22 changed files with 134 additions and 24 deletions

View file

@ -139,8 +139,10 @@
// 변수 검사
$receiver_srl = Context::get('receiver_srl');
if(!$receiver_srl) return new Object(-1, 'msg_not_exists_member');
$title = trim(Context::get('title'));
if(!$title) return new Object(-1, 'msg_title_is_null');
$content = trim(Context::get('content'));
if(!$content) return new Object(-1, 'msg_content_is_null');
@ -156,37 +158,49 @@
return new object(-1, 'msg_disallow_message');
}
$oDB = &DB::getInstance();
$oDB->begin();
// 쪽지 발송
return $this->sendMessage($logged_info->member_srl, $receiver_srl, $title, $content);
}
// 발송하는 회원의 쪽지함에 넣을 쪽지
$sender_args->message_srl = getNextSequence();
$sender_args->related_srl = getNextSequence();
$sender_args->list_order = getNextSequence()*-1;
$sender_args->sender_srl = $logged_info->member_srl;
function sendMessage($sender_srl, $receiver_srl, $title, $content, $sender_log = true) {
// 보내는 사용자의 쪽지함에 넣을 쪽지
$sender_args->sender_srl = $sender_srl;
$sender_args->receiver_srl = $receiver_srl;
$sender_args->message_type = 'S';
$sender_args->title = $title;
$sender_args->content = $content;
$sender_args->readed = 'N';
$sender_args->regdate = date("YmdHis");
$output = executeQuery('member.sendMessage', $sender_args);
if(!$output->toBool()) {
$oDB->rollback();
return $output;
}
$sender_args->related_srl = getNextSequence();
$sender_args->message_srl = getNextSequence();
$sender_args->list_order = getNextSequence()*-1;
// 받는 회원의 쪽지함에 넣을 쪽지
$receiver_args->message_srl = $sender_args->related_srl;
$receiver_args->related_srl = 0;
$receiver_args->list_order = $sender_args->related_srl*-1;
$receiver_args->sender_srl = $logged_info->member_srl;
$receiver_args->sender_srl = $sender_srl;
if(!$receiver_args->sender_srl) $receiver_args->sender_srl = $receiver_srl;
$receiver_args->receiver_srl = $receiver_srl;
$receiver_args->message_type = 'R';
$receiver_args->title = $title;
$receiver_args->content = $content;
$receiver_args->readed = 'N';
$receiver_args->regdate = date("YmdHis");
$oDB = &DB::getInstance();
$oDB->begin();
// 발송하는 회원의 쪽지함에 넣을 쪽지
if($sender_srl && $sender_log) {
$output = executeQuery('member.sendMessage', $sender_args);
if(!$output->toBool()) {
$oDB->rollback();
return $output;
}
}
// 받을 회원의 쪽지함에 넣을 쪽지
$output = executeQuery('member.sendMessage', $receiver_args);
if(!$output->toBool()) {
$oDB->rollback();
@ -201,7 +215,7 @@
$oDB->commit();
$this->setMessage('success_sended');
return new Object(0,'success_sended');
}
/**

View file

@ -37,7 +37,7 @@
.list td.registDate { font:.8em Tahoma; color:#999999; text-align:center;}
.list td.num { font:.8em Tahoma; color:#999999; text-align:center;}
.list td.check { text-align:center;}
.list td.user { color:#333333; font-size:.9em;}
.list td.user { color:#333333; font-size:.9em; text-align:left;}
.list td.user a { color:#333333;}
.list td.userId { font:.9em Tahoma;}
.list td.userNick { font-size:.9em; color:#999999;}

View file

@ -11,14 +11,21 @@
<div class="messageHeader">
<h4>{$message->title}</h4>
<address>
<em>{$message->nick_name} ({$message->user_id}) <span class="date">{zdate($message->regdate, "Y.m.d H:i:s")}</span></em>
<em>
<!--@if($message->member_srl == $logged_info->member_srl)-->
&nbsp;
<!--@else-->
{$message->nick_name} ({$message->user_id})
<!--@end-->
<span class="date">{zdate($message->regdate, "Y.m.d H:i:s")}</span>
</em>
</address>
</div>
<div class="messageBody">{$message->content}</div>
<div class="deleteOrKeep tCenter">
<!--@if($message->message_type != "S")-->
<!--@if($message->message_type != "S" && $message->member_srl != $logged_info->member_srl)-->
<a href="#" onclick="doSendMessage('{$message->sender_srl}');return false;" class="button"><span>{$lang->cmd_reply}</span></a>
<!--@end-->
<!--@if($message->message_type == "R")-->
@ -70,7 +77,13 @@
<!--@foreach($message_list as $no => $val)-->
<tr class="bg{($no+1)%2+1}">
<td class="check"><input name="message_srl_list" type="checkbox" value="{$val->message_srl}" /></td>
<td class="user"><div class="member_{$val->member_srl}">{$val->nick_name} ({$val->user_id})</div></td>
<td class="user">
<!--@if($val->member_srl == $logged_info->member_srl)-->
&nbsp;
<!--@else-->
<div class="member_{$val->member_srl}">{$val->nick_name} ({$val->user_id})</div></td>
<!--@end-->
</td>
<td class="title">
<!--@if($val->readed=='Y')-->
<a href="{getUrl('message_srl',$val->message_srl)}">{$val->title}</a>

View file

@ -12,10 +12,12 @@
<table cellspacing="0" class="leftHeaderType">
<col width="100" />
<col />
<!--@if($message->member_srl != $logged_info->member_srl)-->
<tr>
<th scope="row">{$lang->sender}</th>
<td><div class="member_{$message->member_srl}">{$message->nick_name} ({$message->user_id})</div></td>
</tr>
<!--@end-->
<tr>
<th scope="row">{$lang->title}</th>
<td>{htmlspecialchars($message->title)}</td>
@ -27,7 +29,9 @@
</div>
<div class="tCenter help">
<a href="#" onclick="doSendMessage('{$message->sender_srl}');return false;" class="button"><span>{$lang->cmd_reply_message}</span></a>
<!--@if($message->member_srl != $logged_info->member_srl)-->
<a href="#" onclick="doSendMessage('{$message->sender_srl}');return false;" class="button"><span>{$lang->cmd_reply_message}</span></a>
<!--@end-->
<a href="#" onclick="doDeleteMessage('{$message->message_srl}');return false;" class="button"><span>{$lang->cmd_delete}</span></a>
<a href="#" onclick="doStoreMessage('{$message->message_srl}');return false;" class="button"><span>{$lang->cmd_store}</span></a>
<a href="#" onclick="location.href=location.href;return false;" class="button"><span>{$lang->cmd_next}</span></a>