From 380d8f29a663c8e7365444a4158393bc19c5b852 Mon Sep 17 00:00:00 2001 From: zero Date: Fri, 2 Mar 2007 05:44:37 +0000 Subject: [PATCH] git-svn-id: http://xe-core.googlecode.com/svn/trunk@207 201d5d3c-b55e-5fd7-737f-ddc643e51545 --- common/js/xml_js_filter.js | 2 +- config/config.inc.php | 2 +- modules/board/skins/default/comment_form.html | 2 ++ modules/board/skins/default/write_form.html | 3 ++ modules/comment/comment.controller.php | 31 +++++++++++++++++-- modules/document/document.controller.php | 22 +++++++++++++ 6 files changed, 58 insertions(+), 4 deletions(-) diff --git a/common/js/xml_js_filter.js b/common/js/xml_js_filter.js index fff69ece7..a120698cf 100644 --- a/common/js/xml_js_filter.js +++ b/common/js/xml_js_filter.js @@ -215,7 +215,7 @@ function XmlJsFilterCheckFieldItem() { var value = this.getValue(target); if(!required && !value) continue; - if(required && !value) return this.alertMsg(target,'isnull'); + if(required && !value && this.fo_obj[target]) return this.alertMsg(target,'isnull'); if(minlength>0 && maxlength>0 && (value.length < minlength || value.length > maxlength)) return this.alertMsg(target, 'outofrange', minlength, maxlength); diff --git a/config/config.inc.php b/config/config.inc.php index b3e18ff9e..b245bef4b 100644 --- a/config/config.inc.php +++ b/config/config.inc.php @@ -18,7 +18,7 @@ /** * @brief debug mode = true 일때 files/_debug_message.php 에 디버그 내용이 쌓임 **/ - define('__DEBUG__', true); + define('__DEBUG__', false); if(__DEBUG__) { // php5이상이면 error handling을 handleError() 로 set diff --git a/modules/board/skins/default/comment_form.html b/modules/board/skins/default/comment_form.html index c11a330ed..266733802 100644 --- a/modules/board/skins/default/comment_form.html +++ b/modules/board/skins/default/comment_form.html @@ -33,6 +33,7 @@ + @@ -49,6 +50,7 @@ + diff --git a/modules/board/skins/default/write_form.html b/modules/board/skins/default/write_form.html index a8fc9257a..d67061427 100644 --- a/modules/board/skins/default/write_form.html +++ b/modules/board/skins/default/write_form.html @@ -21,6 +21,8 @@ + + @@ -37,6 +39,7 @@ + diff --git a/modules/comment/comment.controller.php b/modules/comment/comment.controller.php index 55dd3cc0e..9f80d7aa2 100644 --- a/modules/comment/comment.controller.php +++ b/modules/comment/comment.controller.php @@ -38,12 +38,23 @@ if($document_srl != $document->document_srl) return new Object(-1,'msg_invalid_document'); if($document->lock_comment=='Y') return new Object(-1,'msg_invalid_request'); - // 댓글를 입력 $oDB = &DB::getInstance(); $obj->comment_srl = $oDB->getNextSequence(); $obj->list_order = $obj->comment_srl * -1; if($obj->password) $obj->password = md5($obj->password); + + // 로그인 된 회원일 경우 회원의 정보를 입력 + if(Context::get('is_logged')) { + $logged_info = Context::get('logged_info'); + $obj->member_srl = $logged_info->member_srl; + $obj->user_name = $logged_info->user_name; + $obj->nick_name = $logged_info->nick_name; + $obj->email_address = $logged_info->email_address; + $obj->homepage = $logged_info->homepage; + } + + // 댓글을 입력 $output = $oDB->executeQuery('comment.insertComment', $obj); // 입력에 이상이 없으면 해당 글의 댓글 수를 올림 @@ -75,13 +86,29 @@ // comment model 객체 생성 $oCommentModel = &getModel('comment'); + // 원본 데이터를 가져옴 + $source_obj = $oCommentModel->getComment($obj->comment_srl); + // 권한이 있는지 확인 if(!$oCommentModel->isGranted($obj->comment_srl)) return new Object(-1, 'msg_not_permitted'); - // 업데이트 $oDB = &DB::getInstance(); if($obj->password) $obj->password = md5($obj->password); + + // 로그인 되어 있고 작성자와 수정자가 동일하면 수정자의 정보를 세팅 + if(Context::get('is_logged')) { + $logged_info = Context::get('logged_info'); + if($source_obj->member_srl == $logged_info->member_srl) { + $obj->member_srl = $logged_info->member_srl; + $obj->user_name = $logged_info->user_name; + $obj->nick_name = $logged_info->nick_name; + $obj->email_address = $logged_info->email_address; + $obj->homepage = $logged_info->homepage; + } + } + + // 업데이트 $output = $oDB->executeQuery('comment.updateComment', $obj); $output->add('comment_srl', $obj->comment_srl); diff --git a/modules/document/document.controller.php b/modules/document/document.controller.php index 9f495bc08..70c8fb883 100644 --- a/modules/document/document.controller.php +++ b/modules/document/document.controller.php @@ -59,6 +59,16 @@ // 공지사항일 경우 list_order에 무지막지한 값;;을 입력 if($obj->is_notice=='Y') $obj->list_order = $this->notice_list_order; + // 로그인 된 회원일 경우 회원의 정보를 입력 + if(Context::get('is_logged')) { + $logged_info = Context::get('logged_info'); + $obj->member_srl = $logged_info->member_srl; + $obj->user_name = $logged_info->user_name; + $obj->nick_name = $logged_info->nick_name; + $obj->email_address = $logged_info->email_address; + $obj->homepage = $logged_info->homepage; + } + // DB에 입력 $output = $oDB->executeQuery('document.insertDocument', $obj); @@ -114,6 +124,18 @@ if($obj->password) $obj->password = md5($obj->password); + // 원본 작성인과 수정하려는 수정인이 동일할 시에 로그인 회원의 정보를 입력 + if(Context::get('is_logged')) { + $logged_info = Context::get('logged_info'); + if($source_obj->member_srl==$logged_info->member_srl) { + $obj->member_srl = $logged_info->member_srl; + $obj->user_name = $logged_info->user_name; + $obj->nick_name = $logged_info->nick_name; + $obj->email_address = $logged_info->email_address; + $obj->homepage = $logged_info->homepage; + } + } + // DB에 입력 $output = $oDB->executeQuery('document.updateDocument', $obj); if(!$output->toBool()) return $output;
{$lang->user_name} {$lang->homepage}
{$lang->content}
{$lang->user_name} {$lang->homepage}
{$lang->title}