mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-07 18:51:41 +09:00
issue 70 document, comment, trackback module UI change.
But not finished yet git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@8639 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
5385ebb524
commit
9acd474c52
37 changed files with 1125 additions and 830 deletions
|
|
@ -102,6 +102,20 @@
|
|||
}
|
||||
}
|
||||
|
||||
function procCommentAdminAddCart()
|
||||
{
|
||||
$comment_srl = Context::get('comment_srl');
|
||||
$commentSrlList = explode(',', $comment_srl);
|
||||
|
||||
if(is_array($commentSrlList))
|
||||
{
|
||||
foreach($commentSrlList AS $key=>$value)
|
||||
{
|
||||
$_SESSION['comment_management'][$value] = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief delete all comments of the specific module
|
||||
**/
|
||||
|
|
|
|||
|
|
@ -28,14 +28,21 @@
|
|||
|
||||
// get a list by using comment->getCommentList.
|
||||
$oCommentModel = &getModel('comment');
|
||||
$columnList = array('comment_srl', 'document_srl', 'content', 'comments.member_srl', 'comments.nick_name', 'comments.regdate', 'ipaddress');
|
||||
$secretNameList = $oCommentModel->getSecretNameList();
|
||||
$columnList = array('comment_srl', 'document_srl', 'is_secret', 'content', 'comments.member_srl', 'comments.nick_name', 'comments.regdate', 'ipaddress');
|
||||
$output = $oCommentModel->getTotalCommentList($args, $columnList);
|
||||
|
||||
// get total comment count group by is_secret status
|
||||
$countOutput = $oCommentModel->getTotalCommentCount($args);
|
||||
|
||||
// set values in the return object of comment_model:: getTotalCommentList() in order to use a template.
|
||||
Context::set('total_count', $output->total_count);
|
||||
Context::set('total_page', $output->total_page);
|
||||
Context::set('page', $output->page);
|
||||
Context::set('comment_list', $output->data);
|
||||
Context::set('page_navigation', $output->page_navigation);
|
||||
Context::set('secret_name_list', $secretNameList);
|
||||
Context::set('countOutput', $countOutput);
|
||||
// set the template
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile('comment_list');
|
||||
|
|
|
|||
|
|
@ -628,5 +628,27 @@
|
|||
$oModuleController->insertModulePartConfig('comment',$srl,$comment_config);
|
||||
return new Object();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief get comment all list
|
||||
**/
|
||||
function procCommentGetList()
|
||||
{
|
||||
if(!Context::get('is_logged')) return new Object(-1,'msg_not_permitted');
|
||||
// Taken from a list of selected sessions
|
||||
$flagList = $_SESSION['comment_management'];
|
||||
if(count($flagList)) {
|
||||
foreach($flagList as $key => $val) {
|
||||
if(!is_bool($val)) continue;
|
||||
$commentSrlList[] = $key;
|
||||
}
|
||||
}
|
||||
|
||||
if(count($commentSrlList)) {
|
||||
$oCommentModel = &getModel('comment');
|
||||
$commentList = $oCommentModel->getComments($commentSrlList);
|
||||
}
|
||||
$this->add('comment_list', $commentList);
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -396,5 +396,8 @@
|
|||
return;
|
||||
}
|
||||
|
||||
function isCarted() {
|
||||
return $_SESSION['comment_management'][$this->comment_srl];
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -372,6 +372,9 @@
|
|||
case 'ipaddress' :
|
||||
$args->s_ipaddress= $search_keyword;
|
||||
break;
|
||||
case 'is_secret' :
|
||||
$args->s_is_secret= $search_keyword;
|
||||
break;
|
||||
case 'member_srl' :
|
||||
$args->{"s_".$search_target} = (int)$search_keyword;
|
||||
break;
|
||||
|
|
@ -391,6 +394,68 @@
|
|||
return $output;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief get all the comment count in time decending order(for administrators)
|
||||
**/
|
||||
function getTotalCommentCount($obj) {
|
||||
$query_id = 'comment.getTotalCommentCountByGroupStatus';
|
||||
// Variables
|
||||
$args->s_module_srl = $obj->module_srl;
|
||||
$args->exclude_module_srl = $obj->exclude_module_srl;
|
||||
// Search options
|
||||
$search_target = $obj->search_target?$obj->search_target:trim(Context::get('search_target'));
|
||||
$search_keyword = $obj->search_keyword?$obj->search_keyword:trim(Context::get('search_keyword'));
|
||||
if($search_target && $search_keyword) {
|
||||
switch($search_target) {
|
||||
case 'content' :
|
||||
if($search_keyword) $search_keyword = str_replace(' ','%',$search_keyword);
|
||||
$args->s_content = $search_keyword;
|
||||
break;
|
||||
case 'user_id' :
|
||||
if($search_keyword) $search_keyword = str_replace(' ','%',$search_keyword);
|
||||
$args->s_user_id = $search_keyword;
|
||||
$query_id = 'comment.getTotalCommentCountWithinMemberByGroupStatus';
|
||||
break;
|
||||
case 'user_name' :
|
||||
if($search_keyword) $search_keyword = str_replace(' ','%',$search_keyword);
|
||||
$args->s_user_name = $search_keyword;
|
||||
break;
|
||||
case 'nick_name' :
|
||||
if($search_keyword) $search_keyword = str_replace(' ','%',$search_keyword);
|
||||
$args->s_nick_name = $search_keyword;
|
||||
break;
|
||||
case 'email_address' :
|
||||
if($search_keyword) $search_keyword = str_replace(' ','%',$search_keyword);
|
||||
$args->s_email_address = $search_keyword;
|
||||
break;
|
||||
case 'homepage' :
|
||||
if($search_keyword) $search_keyword = str_replace(' ','%',$search_keyword);
|
||||
$args->s_homepage = $search_keyword;
|
||||
break;
|
||||
case 'regdate' :
|
||||
$args->s_regdate = $search_keyword;
|
||||
break;
|
||||
case 'last_update' :
|
||||
$args->s_last_upate = $search_keyword;
|
||||
break;
|
||||
case 'ipaddress' :
|
||||
$args->s_ipaddress= $search_keyword;
|
||||
break;
|
||||
case 'is_secret' :
|
||||
$args->s_is_secret= $search_keyword;
|
||||
break;
|
||||
case 'member_srl' :
|
||||
$args->{"s_".$search_target} = (int)$search_keyword;
|
||||
break;
|
||||
}
|
||||
}
|
||||
$output = executeQueryArray($query_id, $args);
|
||||
// return when no result or error occurance
|
||||
if(!$output->toBool()||!count($output->data)) return $output;
|
||||
|
||||
return $output->data;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief return a configuration of comments for each module
|
||||
**/
|
||||
|
|
@ -438,5 +503,13 @@
|
|||
|
||||
$this->add('voted_member_list',$output->data);
|
||||
}
|
||||
|
||||
function getSecretNameList()
|
||||
{
|
||||
global $lang;
|
||||
if(!isset($lang->secret_name_list))
|
||||
return array('Y'=>'Secret', 'N'=>'Public');
|
||||
else return $lang->secret_name_list;
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,10 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<module>
|
||||
<grants />
|
||||
<permissions />
|
||||
<permissions>
|
||||
<permission action="procCommentAdminAddCart" target="manager" />
|
||||
<permission action="procCommentGetList" target="manager" />
|
||||
</permissions>
|
||||
<actions>
|
||||
<action name="getCommentMenu" type="model" standalone="true" />
|
||||
<action name="dispCommentAdminList" type="view" admin_index="true" standalone="true" menu_name="comment" menu_index="true" />
|
||||
|
|
@ -13,6 +16,8 @@
|
|||
<action name="procCommentInsertModuleConfig" type="controller" standalone="true" ruleset="insertCommentModuleConfig" />
|
||||
<action name="procCommentAdminDeleteChecked" type="controller" standalone="true" ruleset="deleteChecked" />
|
||||
<action name="procCommentAdminCancelDeclare" type="controller" standalone="true" />
|
||||
<action name="procCommentAdminAddCart" type="controller" standalone="true" />
|
||||
<action name="procCommentGetList" type="controller" standalone="true" />
|
||||
</actions>
|
||||
<menus>
|
||||
<menu name="comment">
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@
|
|||
'regdate' => 'Date',
|
||||
'last_update' => 'Last update',
|
||||
'ipaddress' => 'IP Address',
|
||||
'is_secret' => 'Status',
|
||||
);
|
||||
|
||||
$lang->no_text_comment = 'No text in this comment.';
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@
|
|||
'regdate' => 'Fecha del registro',
|
||||
'last_update' => 'Ultima actualización',
|
||||
'ipaddress' => 'Dirección IP',
|
||||
'is_secret' => 'Status',
|
||||
);
|
||||
|
||||
$lang->no_text_comment = 'No text in this comment.';
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
'regdate' => 'Jour',
|
||||
'last_update' => 'Mise à Jour',
|
||||
'ipaddress' => 'Adresse IP',
|
||||
'is_secret' => 'Status',
|
||||
);
|
||||
|
||||
$lang->no_text_comment = 'No text in this comment.';
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
'regdate' => '登録日',
|
||||
'last_update' => '最終更新日 ',
|
||||
'ipaddress' => 'IPアドレス',
|
||||
'is_secret' => 'Status',
|
||||
);
|
||||
|
||||
$lang->no_text_comment = 'No text in this comment.';
|
||||
|
|
|
|||
|
|
@ -25,6 +25,8 @@
|
|||
'regdate' => '등록일',
|
||||
'last_update' => '최근수정일 ',
|
||||
'ipaddress' => 'IP 주소',
|
||||
'is_secret' => '상태',
|
||||
);
|
||||
$lang->no_text_comment = '텍스트가 없는 댓글입니다.';
|
||||
$lang->secret_name_list = array('Y'=>'비밀', 'N'=>'공개');
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
'regdate' => 'Дата регистрации',
|
||||
'last_update' => 'Дата последнего обновления',
|
||||
'ipaddress' => 'IP-адрес',
|
||||
'is_secret' => 'Status',
|
||||
);
|
||||
|
||||
$lang->no_text_comment = 'No text in this comment.';
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@
|
|||
'regdate' => 'Tarih',
|
||||
'last_update' => 'Son Güncelleştirme',
|
||||
'ipaddress' => 'IP Adresi',
|
||||
'is_secret' => 'Status',
|
||||
);
|
||||
|
||||
$lang->no_text_comment = 'Bu yorumda herhangi bir metin yok.';
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
'regdate' => 'Ngày',
|
||||
'last_update' => 'Cập nhật lần cuối',
|
||||
'ipaddress' => 'IP',
|
||||
'is_secret' => 'Status',
|
||||
);
|
||||
|
||||
$lang->no_text_comment = 'No text in this comment.';
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
'regdate' => '日期',
|
||||
'last_update' => '最后更新 ',
|
||||
'ipaddress' => 'IP 地址',
|
||||
'is_secret' => 'Status',
|
||||
);
|
||||
|
||||
$lang->no_text_comment = 'No text in this comment.';
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
'regdate' => '日期',
|
||||
'last_update' => '最後更新',
|
||||
'ipaddress' => 'IP位址',
|
||||
'is_secret' => 'Status',
|
||||
);
|
||||
|
||||
$lang->no_text_comment = 'No text in this comment.';
|
||||
|
|
|
|||
|
|
@ -0,0 +1,28 @@
|
|||
<query id="getTotalCommentList" action="select">
|
||||
<tables>
|
||||
<table name="comments" alias="comments" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="is_secret" />
|
||||
<column name="count(*)" alias="count" />
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="in" column="module_srl" var="s_module_srl" />
|
||||
<condition operation="notin" column="module_srl" var="exclude_module_srl" pipe="and" />
|
||||
<condition operation="equal" column="is_secret" var="s_is_secret" pipe="and" />
|
||||
<group pipe="and">
|
||||
<condition operation="like" column="content" var="s_content" pipe="or" />
|
||||
<condition operation="like" column="user_name" var="s_user_name" pipe="or" />
|
||||
<condition operation="like" column="nick_name" var="s_nick_name" pipe="or" />
|
||||
<condition operation="like" column="email_address" var="s_email_address" pipe="or" />
|
||||
<condition operation="like" column="homepage" var="s_homepage" pipe="or" />
|
||||
<condition operation="equal" column="member_srl" var="s_member_srl" pipe="or" />
|
||||
<condition operation="like_prefix" column="regdate" var="s_regdate" pipe="or" />
|
||||
<condition operation="like_prefix" column="last_update" var="s_last_upate" pipe="or" />
|
||||
<condition operation="like_prefix" column="ipaddress" var="s_ipaddress" pipe="or" />
|
||||
</group>
|
||||
</conditions>
|
||||
<groups>
|
||||
<group column="is_secret" />
|
||||
</groups>
|
||||
</query>
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
<query id="getTotalCommentListWithinMember" action="select">
|
||||
<tables>
|
||||
<table name="comments" alias="comments" />
|
||||
<table name="member" alias="member" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="comments.is_secret" />
|
||||
<column name="count(*)" alias="count" />
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="like" column="member.user_id" var="s_user_id" notnull="notnull" />
|
||||
<condition operation="equal" column="member.member_srl" var="comments.member_srl" notnull="notnull" pipe="and" />
|
||||
<condition operation="equal" column="comments.is_secret" var="s_is_secret" pipe="and" />
|
||||
<group pipe="and">
|
||||
<condition operation="like" column="comments.content" var="s_content" />
|
||||
<condition operation="like" column="comments.user_name" var="s_user_name" pipe="or" />
|
||||
<condition operation="like" column="comments.nick_name" var="s_nick_name" pipe="or" />
|
||||
<condition operation="like" column="comments.email_address" var="s_email_address" pipe="or" />
|
||||
<condition operation="like" column="comments.homepage" var="s_homepage" pipe="or" />
|
||||
<condition operation="like_prefix" column="comments.regdate" var="s_regdate" pipe="or" />
|
||||
<condition operation="like_prefix" column="comments.last_update" var="s_last_upate" pipe="or" />
|
||||
<condition operation="like_prefix" column="comments.ipaddress" var="s_ipaddress" pipe="or" />
|
||||
</group>
|
||||
</conditions>
|
||||
<groups>
|
||||
<group column="comments.is_secret" />
|
||||
</groups>
|
||||
</query>
|
||||
|
|
@ -8,6 +8,7 @@
|
|||
<conditions>
|
||||
<condition operation="in" column="module_srl" var="s_module_srl" />
|
||||
<condition operation="notin" column="module_srl" var="exclude_module_srl" pipe="and" />
|
||||
<condition operation="equal" column="is_secret" var="s_is_secret" pipe="and" />
|
||||
<group pipe="and">
|
||||
<condition operation="like" column="content" var="s_content" pipe="or" />
|
||||
<condition operation="like" column="user_name" var="s_user_name" pipe="or" />
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@
|
|||
<conditions>
|
||||
<condition operation="like" column="member.user_id" var="s_user_id" notnull="notnull" />
|
||||
<condition operation="equal" column="member.member_srl" var="comments.member_srl" notnull="notnull" pipe="and" />
|
||||
<condition operation="equal" column="comments.is_secret" var="s_is_secret" pipe="and" />
|
||||
<group pipe="and">
|
||||
<condition operation="like" column="comments.content" var="s_content" />
|
||||
<condition operation="like" column="comments.user_name" var="s_user_name" pipe="or" />
|
||||
|
|
|
|||
|
|
@ -1,81 +1,145 @@
|
|||
<!--#include("./header.html")-->
|
||||
|
||||
<!-- 검색 -->
|
||||
<div class="fl">
|
||||
<form action="./" method="get" class="adminSearch">
|
||||
<input type="hidden" name="module" value="{$module}" />
|
||||
<input type="hidden" name="act" value="{$act}" />
|
||||
<input type="hidden" name="module_srl" value="{$module_srl}" />
|
||||
<fieldset>
|
||||
<!--%import("js/comment_admin.js")-->
|
||||
<div class="content" id="content">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form ruleset="deleteChecked" id="fo_list" action="./" method="post" class="form">
|
||||
<input type="hidden" name="act" value="procCommentAdminDeleteChecked" />
|
||||
<input type="hidden" name="page" value="{$page}" />
|
||||
<input type="hidden" name="is_trash" value="false" />
|
||||
<h1 class="h1">Comment</h1>
|
||||
<div class="table even">
|
||||
<table width="100%" border="1" cellspacing="0">
|
||||
<caption>All({number_format($total_count)}) <span class="side">All({number_format($total_count)})
|
||||
<!--@foreach($countOutput AS $key=>$value)-->
|
||||
| <a href="{getUrl('search_target','is_secret','search_keyword', $value->is_secret)}">{$secret_name_list[$value->is_secret]}({$value->count})</a>
|
||||
<!--@end-->
|
||||
</span></caption>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col" class="text">{$lang->comment}</th>
|
||||
<th scope="col">{$lang->nick_name}</th>
|
||||
<th scope="col">{$lang->cmd_vote}(+/-)</th>
|
||||
<th scope="col">{$lang->date}</th>
|
||||
<th scope="col">{$lang->ipaddress}</th>
|
||||
<th scope="col">{$lang->status}</th>
|
||||
<th scope="col"><input type="checkbox" title="Check All" /></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!--@foreach($comment_list as $no => $val)-->
|
||||
{@ $comment = cut_str(trim(htmlspecialchars(strip_tags($val->content))), 200, '...')}
|
||||
<tr>
|
||||
<td class="text"><a href="{getUrl('','document_srl',$val->document_srl)}#comment_{$val->comment_srl}" onclick="window.open(this.href);return false;"><!--@if(strlen($comment))-->{$comment}<!--@else--><em style="font-style:italic;">{$lang->no_text_comment}</em><!--@end--></a></td>
|
||||
<td><span class="member_{$val->member_srl}">{htmlspecialchars($val->nick_name)}</span></td>
|
||||
<td>0/0</td>
|
||||
<td>{(zdate($val->regdate,"Y-m-d\nH:i:s"))}</td>
|
||||
<td><a href="{getUrl('search_target','ipaddress','search_keyword',$val->ipaddress)}">{$val->ipaddress}</a></td>
|
||||
<td><!--@if($val->isSecret())-->{$secret_name_list['Y']}<!--@else-->{$secret_name_list['N']}<!--@end--></td>
|
||||
<td><input type="checkbox" name="cart" value="{$val->comment_srl}" onclick="addCart({$val->comment_srl})" <!--@if($val->isCarted())-->checked="checked"<!--@end--> /></td>
|
||||
</tr>
|
||||
<!--@end-->
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="btnArea">
|
||||
<span class="btn"><a href="#listManager" class="modalAnchor" onclick="getCommentList();">선택한 댓글 관리...</a></span>
|
||||
</div>
|
||||
</form>
|
||||
<div class="modal" id="listManager">
|
||||
<form action="" class="fg form">
|
||||
<h2 class="h2">선택한 댓글 관리</h2>
|
||||
<div class="table even">
|
||||
<table width="100%" border="1" cellspacing="0">
|
||||
<caption>
|
||||
선택한 댓글 <strong>8</strong>
|
||||
</caption>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col" class="title">Comment</th>
|
||||
<th scope="col">Author</th>
|
||||
<th scope="col">Status</th>
|
||||
<th scope="col"><input type="checkbox" title="Check All" checked="checked" /></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="title">The quick brown fox jumps over the lazy dog...</td>
|
||||
<td>홍길동</td>
|
||||
<td>Public</td>
|
||||
<td><input type="checkbox" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="title">The quick brown fox jumps over the lazy dog...</td>
|
||||
<td>홍길동</td>
|
||||
<td>Trash</td>
|
||||
<td><input type="checkbox" /></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<p class="q">선택한 댓글의 상태를 변경.</p>
|
||||
<p>
|
||||
<input type="radio" name="status" id="public" /> <label for="public">Public</label>
|
||||
<input type="radio" name="status" id="secret" /> <label for="secret">Secret</label>
|
||||
</p>
|
||||
<p class="q"><label for="message">저작자에게 쪽지를 발송해서 이 사실을 알립니다. 작성하지 않으면 발송하지 않습니다.</label></p>
|
||||
<p>
|
||||
<textarea cols="42" rows="3" id="message" style="width:98%"></textarea>
|
||||
</p>
|
||||
<div class="btnArea">
|
||||
<span class="btn"><input type="submit" value="Move" /></span>
|
||||
<span class="btn"><input type="submit" value="Trash" /></span>
|
||||
<span class="btn"><input type="submit" value="Delete" class="delete" /></span>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div class="search">
|
||||
<form action="./" class="pagination">
|
||||
<input type="hidden" name="error_return_url" value="" />
|
||||
<input type="hidden" name="module" value="{$module}" />
|
||||
<input type="hidden" name="act" value="{$act}" />
|
||||
<input cond="$search_keyword" type="hidden" name="search_keyword" value="{$search_keyword}" />
|
||||
<input cond="$search_target" type="hidden" name="search_target" value="{$search_target}" />
|
||||
|
||||
<a href="{getUrl('page', '')}" class="direction">« FIRST</a>
|
||||
<block cond="$page_navigation->first_page + $page_navigation->page_count > $page_navigation->last_page && $page_navigation->page_count != $page_navigation->total_page">
|
||||
<a href="{getUrl('page', '')}">1</a>
|
||||
<a href="#goTo" class="tgSimple">...</a>
|
||||
<span id="goTo" class="tgContent">
|
||||
<input name="page" title="Go to Page" />
|
||||
<button type="submit">Go</button>
|
||||
</span>
|
||||
<a href="{getUrl('page', $page_navigation->last_page)}">{$page_navigation->last_page}</a>
|
||||
</block>
|
||||
<!--@while($page_no = $page_navigation->getNextPage())-->
|
||||
{@$last_page = $page_no}
|
||||
<strong cond="$page_no == $page">{$page_no}</strong>
|
||||
<a cond="$page_no != $page" href="{getUrl('page', $page_no)}">{$page_no}</a>
|
||||
<!--@end-->
|
||||
<block cond="$last_page != $page_navigation->last_page">
|
||||
<a href="#goTo" class="tgSimple">...</a>
|
||||
<span id="goTo" class="tgContent">
|
||||
<input name="page" title="Go to Page" />
|
||||
<button type="submit">Go</button>
|
||||
</span>
|
||||
<a href="{getUrl('page', $page_navigation->last_page)}">{$page_navigation->last_page}</a>
|
||||
</block>
|
||||
<a href="{getUrl('page', $page_navigation->last_page)}" class="direction">LAST »</a>
|
||||
</form>
|
||||
<form action="./" method="get" class="adminSearch">
|
||||
<input type="hidden" name="module" value="{$module}" />
|
||||
<input type="hidden" name="act" value="{$act}" />
|
||||
<input type="hidden" name="module_srl" value="{$module_srl}" />
|
||||
<select name="search_target">
|
||||
<option value="">{$lang->search_target}</option>
|
||||
<!--@foreach($lang->search_target_list as $key => $val)-->
|
||||
<option value="{$key}" <!--@if($search_target==$key)-->selected="selected"<!--@end-->>{$val}</option>
|
||||
<!--@end-->
|
||||
</select>
|
||||
<input type="text" name="search_keyword" value="{htmlspecialchars($search_keyword)}" class="inputTypeText" />
|
||||
<span class="button blue"><input type="submit" value="{$lang->cmd_search}" /></span>
|
||||
<a href="{getUrl('','module',$module,'act',$act)}" class="button black"><span>{$lang->cmd_cancel}</span></a>
|
||||
</fieldset>
|
||||
</form>
|
||||
<input type="text" name="search_keyword" value="{htmlspecialchars($search_keyword)}" />
|
||||
<input type="submit" value="{$lang->cmd_search}" />
|
||||
<a href="{getUrl('','module',$module,'act',$act)}">{$lang->cmd_cancel}</a>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--form id="fo_list" action="./" method="get" onsubmit="return procFilter(this, delete_checked)"-->
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form ruleset="deleteChecked" id="fo_list" action="./" method="post">
|
||||
<input type="hidden" name="act" value="procCommentAdminDeleteChecked" />
|
||||
<input type="hidden" name="page" value="{$page}" />
|
||||
<input type="hidden" name="is_trash" value="false" />
|
||||
|
||||
<!-- 모듈 선택 -->
|
||||
<div class="fr">
|
||||
<a href="{getUrl('','module','module','act','dispModuleSelectList','id','target_module','type','single')}" onclick="popopen(this.href,'ModuleSelect');return false;" class="button green"><span>{$lang->cmd_find_module}</span></a>
|
||||
<span class="button red"><input type="submit" name="delete" value="{$lang->cmd_delete_checked_comment}" onclick="this.form.is_trash.value=false" /></span>
|
||||
<span class="button red"><input type="submit" name="trash" value="{$lang->cmd_trash}" onclick="this.form.is_trash.value=true" /></span>
|
||||
</div>
|
||||
|
||||
<!-- 목록 -->
|
||||
<table cellspacing="0" class="crossTable clear">
|
||||
<caption>Total {number_format($total_count)}, Page {number_format($page)}/{number_format($total_page)}</caption>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col"><div>{$lang->no}</div></th>
|
||||
<th scope="col"><div><input type="checkbox" onclick="XE.checkboxToggleAll(); return false;" /></div></th>
|
||||
<th scope="col" class="wide"><div>{$lang->comment}</div></th>
|
||||
<th scope="col"><div>{$lang->nick_name}</div></th>
|
||||
<th scope="col"><div>{$lang->date}</div></th>
|
||||
<th scope="col"><div>{$lang->ipaddress}</div></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!--@foreach($comment_list as $no => $val)-->
|
||||
{@ $comment = cut_str(trim(htmlspecialchars(strip_tags($val->content))), 200, '...')}
|
||||
<tr>
|
||||
<td class="number center">{$no}</td>
|
||||
<td class="center"><input type="checkbox" name="cart[]" value="{$val->comment_srl}" /></td>
|
||||
<td class="left"><a href="{getUrl('','document_srl',$val->document_srl)}#comment_{$val->comment_srl}" onclick="window.open(this.href);return false;"><!--@if(strlen($comment))-->{$comment}<!--@else--><em style="font-style:italic;">{$lang->no_text_comment}</em><!--@end--></a></td>
|
||||
<td class="nowrap"><span class="member_{$val->member_srl}">{htmlspecialchars($val->nick_name)}</span></td>
|
||||
<td class="date center nowrap">{(zdate($val->regdate,"Y-m-d\nH:i:s"))}</td>
|
||||
<td class="number left nowrap"><a href="{getUrl('search_target','ipaddress','search_keyword',$val->ipaddress)}">{$val->ipaddress}</a></td>
|
||||
</tr>
|
||||
<!--@end-->
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</form>
|
||||
|
||||
<!-- 페이지 네비게이션 -->
|
||||
<div class="pagination a1">
|
||||
<a href="{getUrl('page','','module_srl',$module_srl)}" class="prevEnd">{$lang->first_page}</a>
|
||||
<!--@while($page_no = $page_navigation->getNextPage())-->
|
||||
<!--@if($page == $page_no)-->
|
||||
<strong>{$page_no}</strong>
|
||||
<!--@else-->
|
||||
<a href="{getUrl('page',$page_no,'module_srl',$module_srl)}">{$page_no}</a>
|
||||
<!--@end-->
|
||||
<!--@end-->
|
||||
<a href="{getUrl('page',$page_navigation->last_page,'module_srl',$module_srl)}" class="nextEnd">{$lang->last_page}</a>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -16,3 +16,47 @@ function doCancelDeclare() {
|
|||
function insertSelectedModule(id, module_srl, mid, browser_title) {
|
||||
location.href = current_url.setQuery('module_srl',module_srl);
|
||||
}
|
||||
|
||||
function addCart(comment_srl) {
|
||||
var params = new Array();
|
||||
var response_tags = ['error','message'];
|
||||
var comment_srl = new Array();
|
||||
jQuery('#fo_list input[name=cart]:checked').each(function() {
|
||||
comment_srl[comment_srl.length] = jQuery(this).val();
|
||||
});
|
||||
params['comment_srl'] = comment_srl.join(',');
|
||||
|
||||
exec_xml('comment','procCommentAdminAddCart',params, completeAddCart, response_tags);
|
||||
}
|
||||
|
||||
function completeAddCart(ret_obj, response_tags)
|
||||
{
|
||||
}
|
||||
|
||||
function getCommentList()
|
||||
{
|
||||
var params = new Array();
|
||||
var response_tags = ['error','message', 'comment_list'];
|
||||
|
||||
exec_xml('comment','procCommentGetList',params, completeGetCommentList, response_tags);
|
||||
}
|
||||
|
||||
function completeGetCommentList(ret_obj, response_tags)
|
||||
{
|
||||
var comment_list = ret_obj['comment_list']['item'];
|
||||
console.log(comment_list);
|
||||
/*var htmlListBuffer = '';
|
||||
var statusNameList = {"PUBLIC":"Public", "SECRET":"Secret", "PRIVATE":"Private", "TEMP":"Temp"};
|
||||
|
||||
for(var x in comment_list)
|
||||
{
|
||||
var objDocument = comment_list[x];
|
||||
htmlListBuffer += '<tr>' +
|
||||
'<td class="title">'+ objDocument.variables.title +'</td>' +
|
||||
'<td>'+ objDocument.variables.nick_name +'</td>' +
|
||||
'<td>'+ statusNameList[objDocument.variables.status] +'</td>' +
|
||||
'<td><input type="checkbox" /></td>' +
|
||||
'</tr>';
|
||||
}
|
||||
jQuery('#documentManageListTable>tbody').html(htmlListBuffer);*/
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue