mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-05-22 05:15:29 +09:00
#331 쪽지보내기와 친구등록 메뉴가 나오지않았던 문제 수정
This commit is contained in:
parent
929a694ee1
commit
a50695f047
2 changed files with 85 additions and 100 deletions
|
|
@ -9,8 +9,10 @@
|
||||||
class communication extends ModuleObject
|
class communication extends ModuleObject
|
||||||
{
|
{
|
||||||
private $triggers = array(
|
private $triggers = array(
|
||||||
array('moduleHandler.init', 'communication', 'controller', 'triggerModuleHandlerAfter', 'after')
|
array('moduleHandler.init', 'communication', 'controller', 'triggerModuleHandlerBefore', 'before'),
|
||||||
|
array('member.getMemberMenu', 'communication', 'controller', 'triggerMemberMenu', 'before')
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Implement if additional tasks are necessary when installing
|
* Implement if additional tasks are necessary when installing
|
||||||
* @return Object
|
* @return Object
|
||||||
|
|
@ -18,6 +20,7 @@ class communication extends ModuleObject
|
||||||
function moduleInstall()
|
function moduleInstall()
|
||||||
{
|
{
|
||||||
$oModuleController = getController('module');
|
$oModuleController = getController('module');
|
||||||
|
|
||||||
foreach($this->triggers as $trigger)
|
foreach($this->triggers as $trigger)
|
||||||
{
|
{
|
||||||
$oModuleController->insertTrigger($trigger[0], $trigger[1], $trigger[2], $trigger[3], $trigger[4]);
|
$oModuleController->insertTrigger($trigger[0], $trigger[1], $trigger[2], $trigger[3], $trigger[4]);
|
||||||
|
|
@ -25,6 +28,7 @@ class communication extends ModuleObject
|
||||||
|
|
||||||
// Create a temporary file storage for one new private message notification
|
// Create a temporary file storage for one new private message notification
|
||||||
FileHandler::makeDir('./files/member_extra_info/new_message_flags');
|
FileHandler::makeDir('./files/member_extra_info/new_message_flags');
|
||||||
|
|
||||||
return new Object();
|
return new Object();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -34,28 +38,8 @@ class communication extends ModuleObject
|
||||||
*/
|
*/
|
||||||
function checkUpdate()
|
function checkUpdate()
|
||||||
{
|
{
|
||||||
if(!is_dir("./files/member_extra_info/new_message_flags"))
|
|
||||||
{
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
$oModuleModel = getModel('module');
|
|
||||||
$config = $oModuleModel->getModuleConfig('message');
|
|
||||||
|
|
||||||
if($config->skin)
|
|
||||||
{
|
|
||||||
$config_parse = explode('.', $config->skin);
|
|
||||||
if(count($config_parse) > 1)
|
|
||||||
{
|
|
||||||
$template_path = sprintf('./themes/%s/modules/communication/', $config_parse[0]);
|
|
||||||
if(is_dir($template_path))
|
|
||||||
{
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$oModuleModel = getModel('module');
|
$oModuleModel = getModel('module');
|
||||||
|
|
||||||
foreach($this->triggers as $trigger)
|
foreach($this->triggers as $trigger)
|
||||||
{
|
{
|
||||||
if(!$oModuleModel->getTrigger($trigger[0], $trigger[1], $trigger[2], $trigger[3], $trigger[4]))
|
if(!$oModuleModel->getTrigger($trigger[0], $trigger[1], $trigger[2], $trigger[3], $trigger[4]))
|
||||||
|
|
@ -63,6 +47,12 @@ class communication extends ModuleObject
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(!is_dir("./files/member_extra_info/new_message_flags"))
|
||||||
|
{
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -72,13 +62,9 @@ class communication extends ModuleObject
|
||||||
*/
|
*/
|
||||||
function moduleUpdate()
|
function moduleUpdate()
|
||||||
{
|
{
|
||||||
if(!is_dir("./files/member_extra_info/new_message_flags"))
|
|
||||||
{
|
|
||||||
FileHandler::makeDir('./files/member_extra_info/new_message_flags');
|
|
||||||
}
|
|
||||||
|
|
||||||
$oModuleModel = getModel('module');
|
$oModuleModel = getModel('module');
|
||||||
$oModuleController = getController('module');
|
$oModuleController = getController('module');
|
||||||
|
|
||||||
foreach($this->triggers as $trigger)
|
foreach($this->triggers as $trigger)
|
||||||
{
|
{
|
||||||
if(!$oModuleModel->getTrigger($trigger[0], $trigger[1], $trigger[2], $trigger[3], $trigger[4]))
|
if(!$oModuleModel->getTrigger($trigger[0], $trigger[1], $trigger[2], $trigger[3], $trigger[4]))
|
||||||
|
|
@ -86,24 +72,10 @@ class communication extends ModuleObject
|
||||||
$oModuleController->insertTrigger($trigger[0], $trigger[1], $trigger[2], $trigger[3], $trigger[4]);
|
$oModuleController->insertTrigger($trigger[0], $trigger[1], $trigger[2], $trigger[3], $trigger[4]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$config = $oModuleModel->getModuleConfig('message');
|
|
||||||
if(!is_object($config))
|
if(!is_dir("./files/member_extra_info/new_message_flags"))
|
||||||
{
|
{
|
||||||
$config = new stdClass();
|
FileHandler::makeDir('./files/member_extra_info/new_message_flags');
|
||||||
}
|
|
||||||
|
|
||||||
if($config->skin)
|
|
||||||
{
|
|
||||||
$config_parse = explode('.', $config->skin);
|
|
||||||
if(count($config_parse) > 1)
|
|
||||||
{
|
|
||||||
$template_path = sprintf('./themes/%s/modules/communication/', $config_parse[0]);
|
|
||||||
if(is_dir($template_path))
|
|
||||||
{
|
|
||||||
$config->skin = implode('|@|', $config_parse);
|
|
||||||
$oModuleController->updateModuleConfig('communication', $config);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return new Object(0, 'success_updated');
|
return new Object(0, 'success_updated');
|
||||||
|
|
|
||||||
|
|
@ -777,14 +777,9 @@ class communicationController extends communication
|
||||||
return executeQuery('communication.setMessageReaded', $args);
|
return executeQuery('communication.setMessageReaded', $args);
|
||||||
}
|
}
|
||||||
|
|
||||||
function triggerModuleHandlerAfter($module)
|
function triggerModuleHandlerBefore($obj)
|
||||||
{
|
{
|
||||||
if(!Context::get('is_logged') && isCrawler())
|
if(!Context::get('is_logged') || $obj->module == 'member')
|
||||||
{
|
|
||||||
return new Object();
|
|
||||||
}
|
|
||||||
|
|
||||||
if($module->module == 'admin')
|
|
||||||
{
|
{
|
||||||
return new Object();
|
return new Object();
|
||||||
}
|
}
|
||||||
|
|
@ -796,60 +791,78 @@ class communicationController extends communication
|
||||||
{
|
{
|
||||||
return new Object();
|
return new Object();
|
||||||
}
|
}
|
||||||
$act = Context::get('act');
|
|
||||||
if($module->module != 'member')
|
|
||||||
{
|
|
||||||
$oMemberController = getController('member');
|
|
||||||
$oMemberController->addMemberMenu('dispCommunicationFriend', 'cmd_view_friend');
|
|
||||||
$oMemberController->addMemberMenu('dispCommunicationMessages', 'cmd_view_message_box');
|
|
||||||
|
|
||||||
|
$logged_info = Context::get('logged_info');
|
||||||
|
|
||||||
|
// Add menus on the member login information
|
||||||
|
$oMemberController = getController('member');
|
||||||
|
$oMemberController->addMemberMenu('dispCommunicationFriend', 'cmd_view_friend');
|
||||||
|
$oMemberController->addMemberMenu('dispCommunicationMessages', 'cmd_view_message_box');
|
||||||
|
|
||||||
|
$flag_file = './files/member_extra_info/new_message_flags/' . getNumberingPath($logged_info->member_srl) . $logged_info->member_srl;
|
||||||
|
if(file_exists($flag_file))
|
||||||
|
{
|
||||||
// Pop-up to display messages if a flag on new message is set
|
// Pop-up to display messages if a flag on new message is set
|
||||||
$new_message_count = $oCommunicationModel->getNewMessageCount();
|
$new_message_count = (int) trim(FileHandler::readFile($flag_file));
|
||||||
if($new_message_count > 0)
|
$text = preg_replace('@\r?\n@', '\\n', addslashes(Context::getLang('alert_new_message_arrived')));
|
||||||
{
|
Context::addHtmlFooter("<script>jQuery(function(){ xeNotifyMessage('{$text}','{$new_message_count}'); });</script>");
|
||||||
Context::loadFile('./modules/communication/tpl/js/member_communication.js');
|
Context::loadFile(array('./modules/communication/tpl/js/member_communication.js'), true);
|
||||||
$text = preg_replace('@\r?\n@', '\\n', addslashes(Context::getLang('alert_new_message_arrived')));
|
|
||||||
Context::addHtmlHeader("<script type=\"text/javascript\">jQuery(function(){ xeNotifyMessage('{$text}','{$new_message_count}'); });</script>");
|
FileHandler::removeFile($flag_file);
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
elseif($act == 'getMemberMenu')
|
}
|
||||||
|
|
||||||
|
function triggerMemberMenu()
|
||||||
|
{
|
||||||
|
if(!Context::get('is_logged'))
|
||||||
{
|
{
|
||||||
$member_srl = Context::get('target_srl');
|
return new Object();
|
||||||
$oCommunicationModel = getModel('communication');
|
}
|
||||||
$logged_info = Context::get('logged_info');
|
|
||||||
// Add a feature to display own message box.
|
$oCommunicationModel = getModel('communication');
|
||||||
if($logged_info->member_srl == $member_srl)
|
$config = $oCommunicationModel->getConfig();
|
||||||
{
|
|
||||||
$mid = Context::get('cur_mid');
|
|
||||||
$oMemberController = getController('member');
|
|
||||||
// Add your own viewing Note Template
|
|
||||||
$oMemberController->addMemberPopupMenu(getUrl('', 'mid', $mid, 'act', 'dispCommunicationMessages'), 'cmd_view_message_box', '', 'self');
|
|
||||||
// Display a list of friends
|
|
||||||
$oMemberController->addMemberPopupMenu(getUrl('', 'mid', $mid, 'act', 'dispCommunicationFriend'), 'cmd_view_friend', '', 'self');
|
|
||||||
// If not, Add menus to send message and to add friends
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
// Get member information
|
|
||||||
$oMemberModel = getModel('member');
|
|
||||||
$target_member_info = $oMemberModel->getMemberInfoByMemberSrl($member_srl);
|
|
||||||
if(!$target_member_info->member_srl)
|
|
||||||
{
|
|
||||||
return new Object();
|
|
||||||
}
|
|
||||||
|
|
||||||
$oMemberController = getController('member');
|
if($config->member_menu != 'Y')
|
||||||
// Add a menu for sending message
|
{
|
||||||
if($logged_info->is_admin == 'Y' || $target_member_info->allow_message == 'Y' || ($target_member_info->allow_message == 'F' && $oCommunicationModel->isFriend($member_srl)))
|
return new Object();
|
||||||
{
|
}
|
||||||
$oMemberController->addMemberPopupMenu(getUrl('', 'mid', Context::get('cur_mid'), 'act', 'dispCommunicationSendMessage', 'receiver_srl', $member_srl), 'cmd_send_message', '', 'popup');
|
|
||||||
}
|
$mid = Context::get('cur_mid');
|
||||||
// Add a menu for listing friends (if a friend is new)
|
$member_srl = Context::get('target_srl');
|
||||||
if(!$oCommunicationModel->isAddedFriend($member_srl))
|
$logged_info = Context::get('logged_info');
|
||||||
{
|
$oMemberController = getController('member');
|
||||||
$oMemberController->addMemberPopupMenu(getUrl('', 'mid', Context::get('cur_mid'), 'act', 'dispCommunicationAddFriend', 'target_srl', $member_srl), 'cmd_add_friend', '', 'popup');
|
|
||||||
}
|
// Add a feature to display own message box.
|
||||||
|
if($logged_info->member_srl == $member_srl)
|
||||||
|
{
|
||||||
|
// Add your own viewing Note Template
|
||||||
|
$oMemberController->addMemberPopupMenu(getUrl('', 'mid', $mid, 'act', 'dispCommunicationMessages'), 'cmd_view_message_box', '', 'self');
|
||||||
|
|
||||||
|
// Display a list of friends
|
||||||
|
$oMemberController->addMemberPopupMenu(getUrl('', 'mid', $mid, 'act', 'dispCommunicationFriend'), 'cmd_view_friend', '', 'self');
|
||||||
|
|
||||||
|
}
|
||||||
|
// If not, Add menus to send message and to add friends
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Get member information
|
||||||
|
$oMemberModel = getModel('member');
|
||||||
|
$target_member_info = $oMemberModel->getMemberInfoByMemberSrl($member_srl);
|
||||||
|
if(!$target_member_info->member_srl)
|
||||||
|
{
|
||||||
|
return new Object();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Add a menu for sending message
|
||||||
|
if($logged_info->is_admin == 'Y' || $target_member_info->allow_message == 'Y' || ($target_member_info->allow_message == 'F' && $oCommunicationModel->isFriend($member_srl)))
|
||||||
|
{
|
||||||
|
$oMemberController->addMemberPopupMenu(getUrl('', 'mid', $mid, 'act', 'dispCommunicationSendMessage', 'receiver_srl', $member_srl), 'cmd_send_message', '', 'popup');
|
||||||
|
}
|
||||||
|
|
||||||
|
// Add a menu for listing friends (if a friend is new)
|
||||||
|
if(!$oCommunicationModel->isAddedFriend($member_srl))
|
||||||
|
{
|
||||||
|
$oMemberController->addMemberPopupMenu(getUrl('', 'mid', $mid, 'act', 'dispCommunicationAddFriend', 'target_srl', $member_srl), 'cmd_add_friend', '', 'popup');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue