mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-05 09:41:40 +09:00
Merge branch 'rhymix:master' into master
This commit is contained in:
commit
2fd8df9de6
57 changed files with 384 additions and 162 deletions
|
|
@ -3408,8 +3408,12 @@ class DocumentController extends Document
|
|||
$obj->target_module_srl = intval(Context::get('module_srl') ?: Context::get('target_module_srl'));
|
||||
$obj->target_category_srl = intval(Context::get('target_category_srl'));
|
||||
$obj->manager_message = Context::get('message_content') ? nl2br(escape(strip_tags(Context::get('message_content')))) : '';
|
||||
$obj->send_message = $obj->manager_message || Context::get('send_default_message') == 'Y';
|
||||
$obj->send_message = Context::get('send_message') ?? 'default';
|
||||
$obj->return_message = '';
|
||||
if (Context::get('send_default_message') === 'Y')
|
||||
{
|
||||
$obj->send_message = 'default';
|
||||
}
|
||||
|
||||
// Check permission of target module
|
||||
if($obj->target_module_srl)
|
||||
|
|
@ -3540,40 +3544,42 @@ class DocumentController extends Document
|
|||
|
||||
// Send a message
|
||||
$actions = lang('default_message_verbs');
|
||||
if(isset($actions[$obj->type]) && $obj->send_message)
|
||||
if(isset($actions[$obj->type]) && $obj->send_message !== 'none')
|
||||
{
|
||||
// Set message
|
||||
$title = sprintf(lang('default_message_format'), $actions[$obj->type]);
|
||||
$content = <<< Content
|
||||
<div style="padding:10px 0;"><strong>{$title}</strong></div>
|
||||
<p>{$obj->manager_message}</p>
|
||||
<hr>
|
||||
<ul>%1\$s</ul>
|
||||
Content;
|
||||
$document_item = '<li><a href="%1$s">%2$s</a></li>';
|
||||
$content = <<<EOT
|
||||
<div style="padding:10px 0;"><strong>{$title}</strong></div>
|
||||
<p>{$obj->manager_message}</p>
|
||||
<hr>
|
||||
<ul>%1\$s</ul>
|
||||
EOT;
|
||||
|
||||
// Set recipient
|
||||
$recipients = array();
|
||||
foreach ($obj->document_list as $document_srl => $oDocument)
|
||||
{
|
||||
if(!($member_srl = abs($oDocument->get('member_srl'))) || $logged_info->member_srl == $member_srl)
|
||||
$member_srl = abs($oDocument->get('member_srl'));
|
||||
if(!$member_srl || $logged_info->member_srl == $member_srl)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if(!isset($recipients[$member_srl]))
|
||||
{
|
||||
$recipients[$member_srl] = array();
|
||||
}
|
||||
|
||||
$recipients[$member_srl][] = sprintf($document_item, $oDocument->getPermanentUrl(), $oDocument->getTitleText());
|
||||
$recipients[$member_srl][] = vsprintf('<li><a href="%1$s">%2$s</a></li>', [
|
||||
escape($oDocument->getPermanentUrl()),
|
||||
$oDocument->getTitleText(),
|
||||
]);
|
||||
}
|
||||
|
||||
// Send
|
||||
$oCommunicationController = CommunicationController::getInstance();
|
||||
foreach ($recipients as $member_srl => $items)
|
||||
{
|
||||
$oCommunicationController->sendMessage($this->user->member_srl, $member_srl, $title, sprintf($content, implode('', $items)), true, null, false);
|
||||
$content = sprintf($content, implode('', $items));
|
||||
$oCommunicationController->sendMessage($this->user->member_srl, $member_srl, $title, $content, true, null, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -104,7 +104,9 @@ $lang->select_module_id = 'Select a module ID.';
|
|||
$lang->select_category = 'Select a category.';
|
||||
$lang->category_description = 'Category Description';
|
||||
$lang->no_title_document = 'No title in this document.';
|
||||
$lang->send_default_message = 'Send the default message';
|
||||
$lang->send_default_message = 'Send default message';
|
||||
$lang->send_custom_message = 'Send message with content below';
|
||||
$lang->send_no_message = 'Don\'t send message';
|
||||
$lang->msg_admin_document_no_move_to_trash = 'You are not allowed to move the superadmin\'s article to the trash bin.';
|
||||
$lang->default_message_format = '%1$s the document by manager.';
|
||||
$lang->default_message_verbs['move'] = 'moved';
|
||||
|
|
|
|||
|
|
@ -96,7 +96,9 @@ $lang->select_category = '분류를 선택하세요.';
|
|||
$lang->category_description = '분류 설명';
|
||||
$lang->no_title_document = '제목이 없는 문서입니다.';
|
||||
$lang->msg_admin_document_no_move_to_trash = '최고 관리자의 게시물을 휴지통으로 이동시킬 권한이 없습니다.';
|
||||
$lang->send_default_message = '기본 내용으로만 쪽지 보내기';
|
||||
$lang->send_default_message = '기본 내용으로 쪽지 보내기';
|
||||
$lang->send_custom_message = '아래 내용으로 쪽지 보내기';
|
||||
$lang->send_no_message = '쪽지 보내지 않음';
|
||||
$lang->default_message_format = '관리자에 의해 게시물이 %1$s되었습니다.';
|
||||
$lang->default_message_verbs['move'] = '다른 게시판으로 이동';
|
||||
$lang->default_message_verbs['copy'] = '다른 게시판에 복사';
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
<table name="modules" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="domain_srl" />
|
||||
<column name="module_srl" />
|
||||
<column name="mid" />
|
||||
<column name="browser_title" />
|
||||
|
|
|
|||
|
|
@ -1,8 +1,9 @@
|
|||
<!--%import("filter/manage_checked_document.xml")-->
|
||||
<load target="js/document_admin.js" />
|
||||
{@Context::addMetaTag('viewport', 'width=device-width', FALSE);}
|
||||
<form action="./" method="get" id="fo_management">
|
||||
<form action="./" method="post" id="fo_management">
|
||||
<input type="hidden" name="module" value="document" />
|
||||
<input type="hidden" name="act" value="procDocumentManageCheckedDocument" />
|
||||
<input type="hidden" name="type" value="" />
|
||||
<div class="x_modal-header">
|
||||
<h1>{$lang->cmd_manage_document}</h1>
|
||||
|
|
@ -40,9 +41,21 @@
|
|||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="message_content">{$lang->cmd_send_message}</label>
|
||||
<div class="x_controls" style="margin-right:14px">
|
||||
<textarea name="message_content" id="message_content" rows="4" cols="42" style="width:100%"></textarea>
|
||||
<label for="send_default_message" class="x_inline"><input type="checkbox" name="send_default_message" id="send_default_message" value="Y" checked="checked" /> {$lang->send_default_message}</label>
|
||||
<div class="x_controls" id="message_options">
|
||||
<label for="send_default_message" class="x_inline">
|
||||
<input type="radio" name="send_message" id="send_default_message" value="default" checked="checked" />
|
||||
{$lang->send_default_message}
|
||||
</label>
|
||||
<label for="send_custom_message" class="x_inline">
|
||||
<input type="radio" name="send_message" id="send_custom_message" value="custom" />
|
||||
{$lang->send_custom_message}
|
||||
</label>
|
||||
<label for="send_no_message" class="x_inline">
|
||||
<input type="radio" name="send_message" id="send_no_message" value="none" />
|
||||
{$lang->send_no_message}
|
||||
</label>
|
||||
<br />
|
||||
<textarea name="message_content" id="message_content" rows="4" cols="42" class="x_full-width"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -60,20 +73,19 @@
|
|||
</form>
|
||||
<script>
|
||||
jQuery(function($){
|
||||
var message_content_area = $('#message_content');
|
||||
if($('#send_default_message').is(':checked'))
|
||||
{
|
||||
message_content_area.prop("disabled", true);
|
||||
}
|
||||
$('#send_default_message').change(function(){
|
||||
if($(this).is(':checked')){
|
||||
message_content_area.prop("disabled", true);
|
||||
} else {
|
||||
const message_options = $('#message_options');
|
||||
const message_content_area = $('#message_content');
|
||||
message_content_area.prop('disabled', true);
|
||||
message_options.on('change', 'input[name="send_message"]', function(){
|
||||
if($('#send_custom_message').is(':checked')) {
|
||||
message_content_area.prop("disabled", false);
|
||||
} else {
|
||||
message_content_area.prop("disabled", true);
|
||||
}
|
||||
});
|
||||
<!--@if($module_srl > 0)-->
|
||||
doGetCategoryFromModule({$module_srl});
|
||||
<!--@end-->
|
||||
const module_srl = {intval($module_srl)};
|
||||
if (module_srl > 0) {
|
||||
doGetCategoryFromModule(module_srl);
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -50,11 +50,18 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
|
|||
<tr loop="$document_list => $no, $oDocument">
|
||||
|
||||
<td class="title">
|
||||
<a href="{$oDocument->getPermanentUrl()}" target="_blank"><!--@if(trim($oDocument->getTitleText()) !== '')-->{escape($oDocument->getTitleText(), false)}<!--@else--><em>{$lang->no_title_document}</em><!--@end--></a>
|
||||
|
||||
<span cond="isset($module_list[$oDocument->get('module_srl')])">
|
||||
- <a href="{getUrl('', 'mid', $module_list[$oDocument->get('module_srl')]->mid)}" target="_blank">{$module_list[$oDocument->get('module_srl')]->browser_title}</a>
|
||||
</span></td>
|
||||
<!--@if(isset($module_list[$oDocument->get('module_srl')]))-->
|
||||
<!--@if($module_list[$oDocument->get('module_srl')]->domain_srl == -1 || $module_list[$oDocument->get('module_srl')]->domain_srl == $site_module_info->domain_srl)-->
|
||||
<a href="{$oDocument->getPermanentUrl()}" target="_blank"><!--@if(trim($oDocument->getTitleText()) !== '')-->{escape($oDocument->getTitleText(), false)}<!--@else--><em>{$lang->no_title_document}</em><!--@end--></a>
|
||||
- <a href="{getUrl('', 'mid', $module_list[$oDocument->get('module_srl')]->mid)}" target="_blank">{$module_list[$oDocument->get('module_srl')]->browser_title}</a>
|
||||
<!--@else-->
|
||||
<a href="{ModuleModel::getDomainByModuleSrl($oDocument->get('module_srl'))}{getUrl('', 'mid', $module_list[$oDocument->get('module_srl')]->mid, 'document_srl', $oDocument->document_srl)}" target="_blank"><!--@if(trim($oDocument->getTitleText()) !== '')-->{escape($oDocument->getTitleText(), false)}<!--@else--><em>{$lang->no_title_document}</em><!--@end--></a>
|
||||
- <a href="{ModuleModel::getDomainByModuleSrl($oDocument->get('module_srl'))}{getUrl('', 'mid', $module_list[$oDocument->get('module_srl')]->mid)}" target="_blank">{$module_list[$oDocument->get('module_srl')]->browser_title}</a>
|
||||
<!--@endif-->
|
||||
<!--@else-->
|
||||
<a href="{$oDocument->getPermanentUrl()}" target="_blank"><!--@if(trim($oDocument->getTitleText()) !== '')-->{escape($oDocument->getTitleText(), false)}<!--@else--><em>{$lang->no_title_document}</em><!--@end--></a>
|
||||
<!--@endif-->
|
||||
</td>
|
||||
<td class="nowr">
|
||||
<span cond="$oDocument->get('member_srl') <= 0">{$oDocument->getNickName()}</span>
|
||||
<a href="#popup_menu_area" class="member_{abs($oDocument->get('member_srl'))}" cond="$oDocument->get('member_srl') < 0">({$member_nick_name[abs($oDocument->get('member_srl'))]})</a>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue