/** * Display message box * @return void|Object (void : success, Object : fail) */ function dispCommunicationMessages() { // Error appears if not logged-in if (!Context::get('is_logged')) { return $this->stop('msg_not_logged'); } $logged_info = Context::get('logged_info'); if (!array_key_exists('dispCommunicationMessages', $logged_info->menu_list)) { return $this->stop('msg_invalid_request'); } // Set the variables $message_srl = Context::get('message_srl'); $message_type = Context::get('message_type'); if (!in_array($message_type, array('R', 'S', 'T'))) { $message_type = 'R'; Context::set('message_type', $message_type); } $oCommunicationModel = getModel('communication'); // extract contents if message_srl exists if ($message_srl) { $templateFile = 'read_message'; $columnList = array('message_srl', 'sender_srl', 'receiver_srl', 'message_type', 'title', 'content', 'readed', 'regdate'); $message = $oCommunicationModel->getSelectedMessage($message_srl, $columnList); switch ($message->message_type) { case 'R': if ($message->receiver_srl != $logged_info->member_srl) { return $this->stop('msg_invalid_request'); } break; case 'S': if ($message->sender_srl != $logged_info->member_srl) { return $this->stop('msg_invalid_request'); } break; case 'T': if ($message->receiver_srl != $logged_info->member_srl && $message->sender_srl != $logged_info->member_srl) { return $this->stop('msg_invalid_request'); } break; } if ($message->message_srl == $message_srl && ($message->receiver_srl == $logged_info->member_srl || $message->sender_srl == $logged_info->member_srl)) { stripEmbedTagForAdmin($message->content, $message->sender_srl); Context::set('message', $message); } } else { $templateFile = 'messages'; } // Extract a list $columnList = array('message_srl', 'readed', 'title', 'member.member_srl', 'member.nick_name', 'message.regdate', 'readed_date'); $output = $oCommunicationModel->getMessages($message_type, $columnList); // set a template file Context::set('total_count', $output->total_count); Context::set('total_page', $output->total_page); Context::set('page', $output->page); Context::set('message_list', $output->data); Context::set('page_navigation', $output->page_navigation); $oSecurity = new Security(); $oSecurity->encodeHTML('message_list..nick_name'); $this->setTemplateFile($templateFile); }
function getContent($add_popup_menu = true, $add_content_info = true, $resource_realpath = false, $add_xe_content_class = true, $stripEmbedTagException = false) { if (!$this->document_srl) { return; } if ($this->isSecret() && !$this->isGranted() && !$this->isAccessible()) { return Context::getLang('msg_is_secret'); } $result = $this->_checkAccessibleFromStatus(); if ($result) { $_SESSION['accessible'][$this->document_srl] = true; } $content = $this->get('content'); if (!$stripEmbedTagException) { stripEmbedTagForAdmin($content, $this->get('member_srl')); } // Define a link if using a rewrite module $oContext =& Context::getInstance(); if ($oContext->allow_rewrite) { $content = preg_replace('/<a([ \\t]+)href=("|\')\\.\\/\\?/i', "<a href=\\2" . Context::getRequestUri() . "?", $content); } // To display a pop-up menu if ($add_popup_menu) { $content = sprintf('%s<div class="document_popup_menu"><a href="#popup_menu_area" class="document_%d" onclick="return false">%s</a></div>', $content, $this->document_srl, Context::getLang('cmd_document_do')); } // If additional content information is set if ($add_content_info) { $memberSrl = $this->get('member_srl'); if ($memberSrl < 0) { $memberSrl = 0; } $content = sprintf('<!--BeforeDocument(%d,%d)--><div class="document_%d_%d xe_content">%s</div><!--AfterDocument(%d,%d)-->', $this->document_srl, $memberSrl, $this->document_srl, $memberSrl, $content, $this->document_srl, $memberSrl, $this->document_srl, $memberSrl); // Add xe_content class although accessing content is not required } else { if ($add_xe_content_class) { $content = sprintf('<div class="xe_content">%s</div>', $content); } } // Change the image path to a valid absolute path if resource_realpath is true if ($resource_realpath) { $content = preg_replace_callback('/<img([^>]+)>/i', array($this, 'replaceResourceRealPath'), $content); } return $content; }
/** * display a new message * @return void|Object (void : success, Object : fail) */ function dispCommunicationNewMessage() { $this->setLayoutPath('./common/tpl/'); $this->setLayoutFile('popup_layout'); // Error appears if not logged-in if (!Context::get('is_logged')) { return $this->stop('msg_not_logged'); } $logged_info = Context::get('logged_info'); $oCommunicationModel = getModel('communication'); // get a new message $columnList = array('message_srl', 'member_srl', 'nick_name', 'title', 'content', 'sender_srl'); $message = $oCommunicationModel->getNewMessage($columnList); if ($message) { stripEmbedTagForAdmin($message->content, $message->sender_srl); Context::set('message', $message); } // Delete a flag $flag_path = './files/communication_extra_info/new_message_flags/' . getNumberingPath($logged_info->member_srl); $flag_file = sprintf('%s%s', $flag_path, $logged_info->member_srl); FileHandler::removeFile($flag_file); $this->setTemplateFile('new_message'); }
/** * Return content after filter * @return string */ function getContent($add_popup_menu = TRUE, $add_content_info = TRUE, $add_xe_content_class = TRUE) { if ($this->isSecret() && !$this->isAccessible()) { return Context::getLang('msg_is_secret'); } $content = $this->get('content'); stripEmbedTagForAdmin($content, $this->get('member_srl')); // when displaying the comment on the pop-up menu if ($add_popup_menu && Context::get('is_logged')) { $content = sprintf('%s<div class="comment_popup_menu"><a href="#popup_menu_area" class="comment_%d" onclick="return false">%s</a></div>', $content, $this->comment_srl, Context::getLang('cmd_comment_do')); } // if additional information which can access contents is set if ($add_content_info) { $memberSrl = $this->get('member_srl'); if ($memberSrl < 0) { $memberSrl = 0; } $content = sprintf('<!--BeforeComment(%d,%d)--><div class="comment_%d_%d xe_content">%s</div><!--AfterComment(%d,%d)-->', $this->comment_srl, $memberSrl, $this->comment_srl, $memberSrl, $content, $this->comment_srl, $memberSrl); // xe_content class name should be specified although content access is not necessary. } else { if ($add_xe_content_class) { $content = sprintf('<div class="xe_content">%s</div>', $content); } } return $content; }
/** * Display 쪽지함 **/ function dispMobileexMessageView() { // 로그인이 되어 있지 않으면 오류 표시 if (!Context::get('is_logged')) { return $this->stop('msg_not_logged'); } if (!Context::get('message_srl')) { return $this->stop('msg_not_message_srl'); } // 변수 설정 $logged_info = Context::get('logged_info'); $message_srl = Context::get('message_srl'); // 버전별 js로드 if ($this->xe_ver > 4) { Context::addJsFile("./common/js/jquery.min.js", true, '', -10000011); Context::addJsFile("./common/js/xe.min.js", true, '', -100000); } else { Context::addJsFile("./common/js/jquery.js", true, '', -10000011); Context::addJsFile("./common/js/x.js", true, '', -100000); Context::addJsFile("./common/js/common.js", true, '', -100000); Context::addJsFile("./common/js/js_app.js", true, '', -100000); Context::addJsFile("./common/js/xml_handler.js", true, '', -100000); Context::addJsFile("./common/js/xml_js_filter.js", true, '', -100000); } $oCommunicationModel =& getModel('communication'); if ($this->xe_ver > 4) { // message_srl이 있으면 내용 추출 $columnList = array('message_srl', 'sender_srl', 'receiver_srl', 'message_type', 'title', 'content', 'readed', 'regdate'); $message = $oCommunicationModel->getSelectedMessage($message_srl, $columnList); if ($message->message_srl == $message_srl && ($message->receiver_srl == $logged_info->member_srl || $message->sender_srl == $logged_info->member_srl)) { stripEmbedTagForAdmin($message->content, $message->sender_srl); // 전체 목록 추출 $columnList = array('message_srl', 'readed', 'title', 'member.member_srl', 'member.nick_name', 'message.regdate', 'readed_date'); $total_count = $oCommunicationModel->getMessages($message->message_type, $columnList); } } else { // message_srl이 있으면 내용 추출 $message = $oCommunicationModel->getSelectedMessage($message_srl); if ($message->message_srl == $message_srl && ($message->receiver_srl == $logged_info->member_srl || $message->sender_srl == $logged_info->member_srl)) { stripEmbedTagForAdmin($message->content, $message->sender_srl); } // 전체 목록 추출 $total_count = $oCommunicationModel->getMessages($message->message_type); } // 닉네임 가져오기 if ($message->sender_srl != $logged_info->member_srl) { $args->member_srl = $message->sender_srl; $sender_info = executeQuery('member.getMemberInfoByMemberSrl', $args); $message->sender_name = $sender_info->data->nick_name; } if ($message->receiver_srl != $logged_info->member_srl) { $args->member_srl = $message->receiver_srl; $receiver_info = executeQuery('member.getMemberInfoByMemberSrl', $args); $message->receiver_name = $receiver_info->data->nick_name; } // set a template file Context::set('logged_info', $logged_info); Context::set('message', $message); Context::set('total_count', $total_count->total_count); $this->setTemplateFile('message_read'); }
/** * display a new message * @return void|Object (void : success, Object : fail) */ function dispCommunicationNewMessage() { $this->setLayoutPath('./common/tpl/'); $this->setLayoutFile('popup_layout'); if ($this->config->enable_message == 'N') { return $this->stop('msg_invalid_request'); } // Error appears if not logged-in if (!Context::get('is_logged')) { return $this->stop('msg_not_logged'); } $logged_info = Context::get('logged_info'); $oCommunicationModel = getModel('communication'); // get a new message $columnList = array('message_srl', 'member_srl', 'nick_name', 'title', 'content', 'sender_srl'); $message = $oCommunicationModel->getNewMessage($columnList); if ($message) { stripEmbedTagForAdmin($message->content, $message->sender_srl); Context::set('message', $message); } $this->setTemplateFile('new_message'); }