Merge branch 'rhymix:master' into master

This commit is contained in:
Lastorder 2026-03-02 13:04:15 +09:00 committed by GitHub
commit fdb1f8269b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 43 additions and 37 deletions

View file

@ -209,7 +209,7 @@
<a href="#" title="{$lang->cmd_search}"><i class="xi-magnifier"></i><span class="blind">{$lang->cmd_search}</span></a> <a href="#" title="{$lang->cmd_search}"><i class="xi-magnifier"></i><span class="blind">{$lang->cmd_search}</span></a>
</li> </li>
<!-- admin --> <!-- admin -->
<li cond="$logged_info->is_admin == 'Y'"> <li cond="$logged_info && $logged_info->is_admin == 'Y'">
<a href="{getUrl('', 'module', 'admin')}" target="_blank" title="{$lang->cmd_management}"><i class="xi-cog"></i><span class="blind">{$lang->cmd_management}</span></a> <a href="{getUrl('', 'module', 'admin')}" target="_blank" title="{$lang->cmd_management}"><i class="xi-cog"></i><span class="blind">{$lang->cmd_management}</span></a>
</li> </li>
<!-- login --> <!-- login -->

View file

@ -920,7 +920,7 @@ class BoardView extends Board
$point_config = ModuleModel::getModulePartConfig('point',$this->module_srl); $point_config = ModuleModel::getModulePartConfig('point',$this->module_srl);
if ($point_config) if ($point_config)
{ {
$pointForInsert = intval(is_object($point_config) ? $point_config->insert_document : $point_config["insert_document"]); $pointForInsert = intval(is_object($point_config) ? ($point_config->insert_document ?? 0) : ($point_config["insert_document"] ?? 0));
} }
else else
{ {

View file

@ -112,15 +112,15 @@ class CommentItem extends BaseObject
} }
$logged_info = Context::get('logged_info'); $logged_info = Context::get('logged_info');
if (!$logged_info->member_srl) if (!$logged_info || !$logged_info->member_srl)
{ {
return $this->grant_cache = false; return $this->grant_cache = false;
} }
if ($logged_info->is_admin == 'Y') if ($logged_info && $logged_info->is_admin == 'Y')
{ {
return $this->grant_cache = true; return $this->grant_cache = true;
} }
if ($this->get('member_srl') && abs($this->get('member_srl')) == $logged_info->member_srl) if ($logged_info && $this->get('member_srl') && abs($this->get('member_srl')) == $logged_info->member_srl)
{ {
return $this->grant_cache = true; return $this->grant_cache = true;
} }
@ -292,7 +292,7 @@ class CommentItem extends BaseObject
// return if the currently logged-in user is an author of the comment. // return if the currently logged-in user is an author of the comment.
$logged_info = Context::get('logged_info'); $logged_info = Context::get('logged_info');
if($logged_info->member_srl == $this->get('member_srl')) if($logged_info && $logged_info->member_srl && $logged_info->member_srl == abs($this->get('member_srl')))
{ {
return; return;
} }
@ -306,7 +306,7 @@ class CommentItem extends BaseObject
$title .= cut_str(strip_tags($content), 30, '...'); $title .= cut_str(strip_tags($content), 30, '...');
$content = sprintf('%s<br /><br />from : <a href="%s#comment_%s" target="_blank">%s</a>', $content, getFullUrl('', 'document_srl', $this->get('document_srl')), $this->get('comment_srl'), getFullUrl('', 'document_srl', $this->get('document_srl'))); $content = sprintf('%s<br /><br />from : <a href="%s#comment_%s" target="_blank">%s</a>', $content, getFullUrl('', 'document_srl', $this->get('document_srl')), $this->get('comment_srl'), getFullUrl('', 'document_srl', $this->get('document_srl')));
$receiver_srl = $this->get('member_srl'); $receiver_srl = $this->get('member_srl');
$sender_member_srl = $logged_info->member_srl; $sender_member_srl = ($logged_info && $logged_info->member_srl) ? $logged_info->member_srl : $this->get('member_srl');
// send a message // send a message
$oCommunicationController = getController('communication'); $oCommunicationController = getController('communication');
@ -376,17 +376,24 @@ class CommentItem extends BaseObject
function getMyVote() function getMyVote()
{ {
if(!$this->comment_srl) return false; if (!$this->comment_srl)
if(isset($_SESSION['voted_comment'][$this->comment_srl])) {
return false;
}
if (isset($_SESSION['voted_comment'][$this->comment_srl]))
{ {
return $_SESSION['voted_comment'][$this->comment_srl]; return $_SESSION['voted_comment'][$this->comment_srl];
} }
$logged_info = Context::get('logged_info'); $logged_info = Context::get('logged_info');
if(!$logged_info->member_srl) return false; if (!$logged_info || !$logged_info->member_srl)
{
return false;
}
$args = new stdClass(); $args = new stdClass();
if($logged_info->member_srl) if ($logged_info && $logged_info->member_srl)
{ {
$args->member_srl = $logged_info->member_srl; $args->member_srl = $logged_info->member_srl;
} }
@ -413,7 +420,7 @@ class CommentItem extends BaseObject
} }
$logged_info = Context::get('logged_info'); $logged_info = Context::get('logged_info');
if (!$logged_info->member_srl) if (!$logged_info || !$logged_info->member_srl)
{ {
return false; return false;
} }
@ -424,7 +431,7 @@ class CommentItem extends BaseObject
} }
$args = new stdClass(); $args = new stdClass();
if ($logged_info->member_srl) if ($logged_info && $logged_info->member_srl)
{ {
$args->member_srl = $logged_info->member_srl; $args->member_srl = $logged_info->member_srl;
} }

View file

@ -201,11 +201,11 @@ class DocumentItem extends BaseObject
{ {
return $this->grant_cache = false; return $this->grant_cache = false;
} }
if ($logged_info->is_admin == 'Y') if ($logged_info && $logged_info->is_admin == 'Y')
{ {
return $this->grant_cache = true; return $this->grant_cache = true;
} }
if ($this->get('member_srl') && abs($this->get('member_srl')) == $logged_info->member_srl) if ($logged_info && $this->get('member_srl') && abs($this->get('member_srl')) == $logged_info->member_srl)
{ {
return $this->grant_cache = true; return $this->grant_cache = true;
} }
@ -411,7 +411,7 @@ class DocumentItem extends BaseObject
// Return if the currently logged-in user is an author // Return if the currently logged-in user is an author
$logged_info = Context::get('logged_info'); $logged_info = Context::get('logged_info');
if($logged_info->member_srl == $this->get('member_srl')) if($logged_info && $logged_info->member_srl && $logged_info->member_srl == abs($this->get('member_srl')))
{ {
return; return;
} }
@ -421,7 +421,7 @@ class DocumentItem extends BaseObject
$content = sprintf('%s<br><br>from : <a href="%s" target="_blank">%s</a>',$content, getFullUrl('', 'document_srl', $this->document_srl), getFullUrl('', 'document_srl', $this->document_srl)); $content = sprintf('%s<br><br>from : <a href="%s" target="_blank">%s</a>',$content, getFullUrl('', 'document_srl', $this->document_srl), getFullUrl('', 'document_srl', $this->document_srl));
// Send a message // Send a message
$sender_member_srl = $logged_info->member_srl ?: $this->get('member_srl'); $sender_member_srl = ($logged_info && $logged_info->member_srl) ? $logged_info->member_srl : $this->get('member_srl');
getController('communication')->sendMessage($sender_member_srl, $this->get('member_srl'), $title, $content, false, null, false); getController('communication')->sendMessage($sender_member_srl, $this->get('member_srl'), $title, $content, false, null, false);
} }
@ -514,17 +514,17 @@ class DocumentItem extends BaseObject
} }
$logged_info = Context::get('logged_info'); $logged_info = Context::get('logged_info');
if(!$logged_info->member_srl) if (!$logged_info || !$logged_info->member_srl)
{ {
$module_info = ModuleModel::getModuleInfoByModuleSrl($this->get('module_srl')); $module_info = ModuleModel::getModuleInfoByModuleSrl($this->get('module_srl'));
if($module_info->non_login_vote !== 'Y') if(!isset($module_info->non_login_vote) || $module_info->non_login_vote !== 'Y')
{ {
return false; return false;
} }
} }
$args = new stdClass; $args = new stdClass;
if($logged_info->member_srl) if ($logged_info && $logged_info->member_srl)
{ {
$args->member_srl = $logged_info->member_srl; $args->member_srl = $logged_info->member_srl;
} }
@ -554,7 +554,7 @@ class DocumentItem extends BaseObject
} }
$logged_info = Context::get('logged_info'); $logged_info = Context::get('logged_info');
if(!$logged_info->member_srl) if(!$logged_info || !$logged_info->member_srl)
{ {
return false; return false;
} }
@ -565,7 +565,7 @@ class DocumentItem extends BaseObject
} }
$args = new stdClass(); $args = new stdClass();
if($logged_info->member_srl) if($logged_info && $logged_info->member_srl)
{ {
$args->member_srl = $logged_info->member_srl; $args->member_srl = $logged_info->member_srl;
} }
@ -1027,7 +1027,7 @@ class DocumentItem extends BaseObject
// Cache the vote log for all comments. // Cache the vote log for all comments.
$logged_info = Context::get('logged_info'); $logged_info = Context::get('logged_info');
if ($logged_info->member_srl) if ($logged_info && $logged_info->member_srl)
{ {
$comment_srls = array(); $comment_srls = array();
foreach ($comment_list as $comment_srl => $comment) foreach ($comment_list as $comment_srl => $comment)

View file

@ -89,8 +89,7 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
</div> </div>
</form> </form>
<form action="./" class="x_pagination"> <form action="./" class="x_pagination" no-error-return-url="true">
<input type="hidden" name="error_return_url" value="" />
<input type="hidden" name="module" value="{$module}" /> <input type="hidden" name="module" value="{$module}" />
<input type="hidden" name="act" value="{$act}" /> <input type="hidden" name="act" value="{$act}" />
<input cond="$search_keyword" type="hidden" name="search_keyword" value="{$search_keyword}" /> <input cond="$search_keyword" type="hidden" name="search_keyword" value="{$search_keyword}" />
@ -126,10 +125,9 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
<li class="x_disabled"|cond="$page == $page_navigation->last_page"><a href="{getUrl('page', $page_navigation->last_page)}" title="{$page_navigation->last_page}">{$lang->last_page} &raquo;</a></li> <li class="x_disabled"|cond="$page == $page_navigation->last_page"><a href="{getUrl('page', $page_navigation->last_page)}" title="{$page_navigation->last_page}">{$lang->last_page} &raquo;</a></li>
</ul> </ul>
</form> </form>
<form action="./" method="get" class="search center x_input-append x_clearfix"> <form action="./" method="get" class="search center x_input-append x_clearfix" no-error-return-url="true">
<input type="hidden" name="module" value="{$module}" /> <input type="hidden" name="module" value="{$module}" />
<input type="hidden" name="act" value="{$act}" /> <input type="hidden" name="act" value="{$act}" />
<input type="hidden" name="error_return_url" value="" />
<select name="module_srl" style="margin-right:4px"> <select name="module_srl" style="margin-right:4px">
<option value="">{lang('all')}</option> <option value="">{lang('all')}</option>
<!--@foreach($module_list as $item)--> <!--@foreach($module_list as $item)-->
@ -149,8 +147,8 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
<input type="hidden" name="module" value="document" /> <input type="hidden" name="module" value="document" />
<input type="hidden" name="act" value="procDocumentManageCheckedDocument" /> <input type="hidden" name="act" value="procDocumentManageCheckedDocument" />
<input type="hidden" name="type" value="" /> <input type="hidden" name="type" value="" />
<input type="hidden" name="module_srl" value="" /> <input type="hidden" name="module_srl" value="{$module_srl}" />
<input type="hidden" name="success_return_url" value="{getUrl('', 'module', 'admin', 'act', 'dispDocumentAdminList', 'is_secret', $is_secret, 'search_target', $search_target, 'search_keyword', $search_keyword, 'page', $page)}" /> <input type="hidden" name="success_return_url" value="{getUrl('', 'module', 'admin', 'act', 'dispDocumentAdminList', 'module_srl', $module_srl, 'is_secret', $is_secret, 'search_target', $search_target, 'search_keyword', $search_keyword, 'page', $page)}" />
<input type="hidden" name="xe_validator_id" value="modules/document/tpl/document_list/1" /> <input type="hidden" name="xe_validator_id" value="modules/document/tpl/document_list/1" />
<div class="x_modal-header"> <div class="x_modal-header">
<h1>{$lang->document_manager}: <span class="_sub"></span></h1> <h1>{$lang->document_manager}: <span class="_sub"></span></h1>

View file

@ -387,6 +387,7 @@ class EditorModel extends Editor
} }
else else
{ {
$logged_info = new Rhymix\Framework\Helpers\SessionHelper();
$group_list = array(); $group_list = array();
} }
@ -507,7 +508,7 @@ class EditorModel extends Editor
$logged_info = Context::get('logged_info'); $logged_info = Context::get('logged_info');
$auto_save_args->member_srl = $logged_info->member_srl; $auto_save_args->member_srl = $logged_info->member_srl;
} }
elseif($_COOKIE['autosave_certify_key_' . $auto_save_args->module_srl]) elseif(!empty($_COOKIE['autosave_certify_key_' . $auto_save_args->module_srl]))
{ {
$auto_save_args->certify_key = $_COOKIE['autosave_certify_key_' . $auto_save_args->module_srl]; $auto_save_args->certify_key = $_COOKIE['autosave_certify_key_' . $auto_save_args->module_srl];
} }
@ -647,8 +648,8 @@ class EditorModel extends Editor
unset($component_list->{$key}); unset($component_list->{$key});
continue; continue;
} }
if($logged_info->is_admin == "Y") continue; if($logged_info && $logged_info->is_admin == "Y") continue;
if($val->target_group) if(isset($val->target_group) && $val->target_group)
{ {
if(!Context::get('is_logged')) if(!Context::get('is_logged'))
{ {
@ -664,7 +665,7 @@ class EditorModel extends Editor
if(!$is_granted) $val->enabled = "N"; if(!$is_granted) $val->enabled = "N";
} }
} }
if($val->enabled != "N" && $val->mid_list) if($val->enabled != "N" && !empty($val->mid_list))
{ {
$mid = Context::get('mid'); $mid = Context::get('mid');
if(!in_array($mid, $val->mid_list)) $val->enabled = "N"; if(!in_array($mid, $val->mid_list)) $val->enabled = "N";

View file

@ -10,7 +10,7 @@
<div cond="$allow_fileupload" id="xefu-container-{$editor_sequence}" class="xefu-container xe-clearfix" <div cond="$allow_fileupload" id="xefu-container-{$editor_sequence}" class="xefu-container xe-clearfix"
data-editor-sequence="{$editor_sequence}" data-editor-sequence="{$editor_sequence}"
data-editor-status="{json_encode(FileModel::getInstance()->getFileList($editor_sequence), JSON_UNESCAPED_UNICODE)}" data-editor-status="{json_encode(FileModel::getInstance()->getFileList($editor_sequence), JSON_UNESCAPED_UNICODE)}"
data-max-file-size="{$logged_info->is_admin === 'Y' ? 0 : $file_config->allowed_filesize}" data-max-file-size="{$this->user->isAdmin() ? 0 : $file_config->allowed_filesize}"
data-max-chunk-size="{$file_config->allowed_chunk_size ?: 0}" data-max-chunk-size="{$file_config->allowed_chunk_size ?: 0}"
data-autoinsert-types="{json_encode($editor_autoinsert_types)}" data-autoinsert-types="{json_encode($editor_autoinsert_types)}"
data-autoinsert-position="{$editor_autoinsert_position ?: 'paragraph'}"> data-autoinsert-position="{$editor_autoinsert_position ?: 'paragraph'}">

View file

@ -222,11 +222,11 @@ class SpamfilterModel extends Spamfilter
{ {
return false; return false;
} }
if ($user->is_admin === 'Y') if ($user && $user->is_admin === 'Y')
{ {
return false; return false;
} }
if ($config->captcha->target_users !== 'everyone' && $user->member_srl) if ($config->captcha->target_users !== 'everyone' && $user && $user->member_srl)
{ {
return false; return false;
} }

View file

@ -5,7 +5,7 @@
<ul class="nc_memu guest"> <ul class="nc_memu guest">
<li class="nc_profile fLeft"> <li class="nc_profile fLeft">
<block cond="$useProfileImage"> <block cond="$useProfileImage">
<img cond="!$profileImage" src="{Context::getRequestUri()}modules/ncenterlite/skins/default/img/p.png" alt="my profile" class="nc_profile_img" /> <img cond="empty($profileImage)" src="{Context::getRequestUri()}modules/ncenterlite/skins/default/img/p.png" alt="my profile" class="nc_profile_img" />
</block> </block>
<strong>손님</strong> <strong>손님</strong>
</li> </li>