read page

git-svn-id: http://xe-core.googlecode.com/svn/sandbox@4730 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
ChanMyeong 2008-10-30 08:54:43 +00:00
parent 8e3d25b99a
commit 175ccfa3ba
17 changed files with 1452 additions and 1420 deletions

View file

@ -18,6 +18,11 @@ a.button.xLarge { background-position:left -65px; }
a.button.xLarge span { padding:8px 10px 7px 8px; font:20px/20px Sans-serif; background-position:right -65px;} a.button.xLarge span { padding:8px 10px 7px 8px; font:20px/20px Sans-serif; background-position:right -65px;}
a.button.xLarge, x:-moz-any-link { font:0/35px Sans-serif; padding:18px 0;} /* Firefox 2 Fix */ a.button.xLarge, x:-moz-any-link { font:0/35px Sans-serif; padding:18px 0;} /* Firefox 2 Fix */
a.button.xLarge, x:-moz-any-link, x:default { padding:0;} /* Firefox 2 Fix */ a.button.xLarge, x:-moz-any-link, x:default { padding:0;} /* Firefox 2 Fix */
/* Small Size */
a.button.small { background-position:left -107px; }
a.button.small span { padding:4px 6px 3px 4px; font:11px/11px Sans-serif; background-position:right -107px;}
a.button.small, x:-moz-any-link { font:0/18px Sans-serif; padding:9px 0;} /* Firefox 2 Fix */
a.button.small, x:-moz-any-link, x:default { padding:0;} /* Firefox 2 Fix */
/* Control Button + Submit Button */ /* Control Button + Submit Button */
span.button, span.button,
@ -33,13 +38,23 @@ span.button.large { background-position:left -30px; *top:-1px;}
span.button.large, x:-moz-any-link{ font:0/29px Sans-serif; padding:14px 0;} /* Firefox 2 Fix */ span.button.large, x:-moz-any-link{ font:0/29px Sans-serif; padding:14px 0;} /* Firefox 2 Fix */
span.button.large, x:-moz-any-link, x:default{ padding:0;} /* Firefox 2 Fix */ span.button.large, x:-moz-any-link, x:default{ padding:0;} /* Firefox 2 Fix */
span.button.large button, span.button.large button,
span.button.large input { height:30px; *top:0 !important; padding:0 10px 0 8px; *padding:0 5px 0 3px; *top:-1px; font:16px/30px Sans-serif; background-position:right -30px;} span.button.large input { height:30px; *top:0; _top:-1px; padding:0 10px 0 8px; *padding:0 5px 0 3px; font:16px/30px Sans-serif; background-position:right -30px;}
/* xLarge Size */ /* xLarge Size */
span.button.xLarge { background-position:left -65px;} span.button.xLarge { background-position:left -65px;}
span.button.xLarge, x:-moz-any-link{ font:0/35px Sans-serif; padding:17px 0;} /* Firefox 2 Fix */ span.button.xLarge, x:-moz-any-link{ font:0/35px Sans-serif; padding:17px 0;} /* Firefox 2 Fix */
span.button.xLarge, x:-moz-any-link, x:default{ padding:0;} /* Firefox 2 Fix */ span.button.xLarge, x:-moz-any-link, x:default{ padding:0;} /* Firefox 2 Fix */
span.button.xLarge button, span.button.xLarge button,
span.button.xLarge input { height:35px; padding:0 10px 0 8px; *padding:0 5px 0 3px; font:20px/36px Sans-serif; background-position:right -65px;} span.button.xLarge input { height:35px; padding:0 10px 0 8px; *padding:0 5px 0 3px; font:20px/36px Sans-serif; background-position:right -65px;}
/* Large Size */
span.button.small { background-position:left -107px;}
span.button.small, x:-moz-any-link{ font:0/18px Sans-serif; padding:9px 0;} /* Firefox 2 Fix */
span.button.small, x:-moz-any-link, x:default{ padding:0;} /* Firefox 2 Fix */
span.button.small button,
span.button.small input { height:18px; *top:0; _top:-1px; padding:0 6px 0 4px; *padding:0 3px 0 2px; font:11px/18px Sans-serif; background-position:right -107px;}
span.button.small button, x:-moz-any-link,
span.button.small input, x:-moz-any-link{ top:-1px;} /* Firefox 2 Fix */
span.button.small button, x:-moz-any-link, x:default,
span.button.small input, x:-moz-any-link, x:default{ top:0;} /* Firefox 2 Fix */
/* Strong Button */ /* Strong Button */
a.button.strong *, a.button.strong *,

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 25 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 2 KiB

Before After
Before After

View file

@ -1,54 +1,54 @@
<!-- 검색된 글 목록이 있고 권한이 있을 경우 출력 --> <!-- 검색된 글 목록이 있고 권한이 있을 경우 출력 -->
<!--@if($grant->list)--> <!--@if($grant->list)-->
<!--@if($category || $search_keyword)--> <!--@if($category || $search_keyword)-->
<!--@if($oDocument->isExists())--> <!--@if($oDocument->isExists())-->
<div class="viewDocument"> <div class="viewDocument">
<!--#include("./view_document.html")--> <!--#include("./view_document.html")-->
</div> </div>
<!--@end--> <!--@end-->
<!--// 글이 선택되어 있거나 검색어가 있으면 목록을 출력 --> <!--// 글이 선택되어 있거나 검색어가 있으면 목록을 출력 -->
<!--#include("./style.list.html")--> <!--#include("./_style.list.html")-->
<!--@elseif($oDocument->isExists())--> <!--@elseif($oDocument->isExists())-->
<div class="viewDocument"> <div class="viewDocument">
<!--#include("./view_document.html")--> <!--#include("./view_document.html")-->
</div> </div>
<!--@else--> <!--@else-->
<!--// 공지사항 --> <!--// 공지사항 -->
<!--@if($notice_list)--> <!--@if($notice_list)-->
<div class="blogNotice"> <div class="blogNotice">
<!--@foreach($notice_list as $no => $document)--> <!--@foreach($notice_list as $no => $document)-->
<div class="item"> <div class="item">
<span class="date">[{$document->getRegdate("Y-m-d")}]</span> <span class="date">[{$document->getRegdate("Y-m-d")}]</span>
<a href="{getUrl('document_srl',$document->document_srl,'cpage','')}">{$document->getTitle()}</a> <a href="{getUrl('document_srl',$document->document_srl,'cpage','')}">{$document->getTitle()}</a>
<!--@if($document->getCommentCount())--> <!--@if($document->getCommentCount())-->
<span class="replyAndTrackback" title="Replies"><img src="./images/{$module_info->colorset}/iconReply.gif" alt="" width="12" height="12" class="icon" /> <strong>{$document->getCommentCount()}</strong></span> <span class="replyAndTrackback" title="Replies"><img src="./images/{$module_info->colorset}/iconReply.gif" alt="" width="12" height="12" class="icon" /> <strong>{$document->getCommentCount()}</strong></span>
<!--@end--> <!--@end-->
<!--@if($document->getTrackbackCount())--> <!--@if($document->getTrackbackCount())-->
<span class="replyAndTrackback" title="Trackbacks"><img src="./images/{$module_info->colorset}/iconTrackback.gif" alt="" width="12" height="13" class="trackback icon" /> <strong>{$document->getTrackbackCount()}</strong></span> <span class="replyAndTrackback" title="Trackbacks"><img src="./images/{$module_info->colorset}/iconTrackback.gif" alt="" width="12" height="13" class="trackback icon" /> <strong>{$document->getTrackbackCount()}</strong></span>
<!--@end--> <!--@end-->
{$document->printExtraImages(60*60*$module_info->duration_new)} {$document->printExtraImages(60*60*$module_info->duration_new)}
</div> </div>
<!--@end--> <!--@end-->
</div> </div>
<!--@end--> <!--@end-->
<!--// 일반글 --> <!--// 일반글 -->
<!--@foreach($document_list as $no => $oDocument)--> <!--@foreach($document_list as $no => $oDocument)-->
<div class="viewDocument"> <div class="viewDocument">
<!--#include("./view_document.html")--> <!--#include("./view_document.html")-->
</div> </div>
<!--@end--> <!--@end-->
<!--@end--> <!--@end-->
<!--@end--> <!--@end-->

View file

@ -31,12 +31,12 @@
<option value="{$val->category_srl}" <!--@if($category==$val->category_srl)-->selected="selected"<!--@end-->>{str_repeat("&nbsp;&nbsp;",$val->depth)} {$val->title} <!--@if($val->document_count)-->({$val->document_count})<!--@end--></option> <option value="{$val->category_srl}" <!--@if($category==$val->category_srl)-->selected="selected"<!--@end-->>{str_repeat("&nbsp;&nbsp;",$val->depth)} {$val->title} <!--@if($val->document_count)-->({$val->document_count})<!--@end--></option>
<!--@end--> <!--@end-->
</select> </select>
<button type="button" name="go_button" id= "go_button" onclick="doChangeCategory(); return false;" class="button" />Go</button> <button type="button" name="go_button" id= "go_button" onclick="doChangeCategory(); return false;" class="button">Go</button>
</span> </span>
<!--@end--> <!--@end-->
{$lang->title} {$lang->title}
</th> </th>
<!--@if($module_info->display_author!='N')--><th scope="col">{$lang->writer}</div></th><!--@end--> <!--@if($module_info->display_author!='N')--><th scope="col">{$lang->writer}</th><!--@end-->
<!--@if($module_info->display_readed_count!='N')--><th scope="col"><a href="{getUrl('sort_index','readed_count','order_type',$order_type)}">{$lang->readed_count}<!--@if($sort_index=='readed_count')--><img src="./images/common/{$order_icon}" alt="" width="5" height="3" class="sort" /><!--@end--></a></th><!--@end--> <!--@if($module_info->display_readed_count!='N')--><th scope="col"><a href="{getUrl('sort_index','readed_count','order_type',$order_type)}">{$lang->readed_count}<!--@if($sort_index=='readed_count')--><img src="./images/common/{$order_icon}" alt="" width="5" height="3" class="sort" /><!--@end--></a></th><!--@end-->
<!--@if($module_info->display_voted_count!='N')--><th scope="col"><a href="{getUrl('sort_index','voted_count','order_type',$order_type)}">{$lang->voted_count}<!--@if($sort_index=='voted_count')--><img src="./images/common/{$order_icon}" alt="" width="5" height="3" class="sort" /><!--@end--></a></th><!--@end--> <!--@if($module_info->display_voted_count!='N')--><th scope="col"><a href="{getUrl('sort_index','voted_count','order_type',$order_type)}">{$lang->voted_count}<!--@if($sort_index=='voted_count')--><img src="./images/common/{$order_icon}" alt="" width="5" height="3" class="sort" /><!--@end--></a></th><!--@end-->
<!--@if($module_info->display_regdate != 'N')--><th scope="col"><a href="{getUrl('sort_index','regdate','order_type',$order_type)}">{$lang->date}<!--@if($sort_index=='regdate')--><img src="./images/common/{$order_icon}" alt="" width="5" height="3" class="sort" /><!--@end--></a></th><!--@end--> <!--@if($module_info->display_regdate != 'N')--><th scope="col"><a href="{getUrl('sort_index','regdate','order_type',$order_type)}">{$lang->date}<!--@if($sort_index=='regdate')--><img src="./images/common/{$order_icon}" alt="" width="5" height="3" class="sort" /><!--@end--></a></th><!--@end-->

View file

@ -1,90 +1,101 @@
<!--@if($oDocument->getCommentCount())--> <!--@if($oDocument->getCommentCount())-->
<div class="replyBox"> <div class="feedbackList">
{@ $_comment_list = $oDocument->getComments() } <h3 class="feedbackHeader">
<!--@foreach($_comment_list as $key => $comment)--> <!--@if($grant->write_comment && $oDocument->allowComment()) -->
<a href="#comment" title="{$lang->comment}"><strong>{$oDocument->getCommentcount()}</strong> Replies</a>
<!--@end-->
<!--@if($oDocument->allowTrackback() && $oDocument->getTrackbackCount() )-->
<a href="#trackback" title="{$lang->trackback}"><strong>{$oDocument->getTrackbackCount()}</strong> Trackbacks</a>
<!--@end-->
</h3>
<div class="replyList">
<div class="replyItem <!--@if($comment->get('depth'))-->reply<!--@end-->"> {@ $_comment_list = $oDocument->getComments() }
<!--@if($comment->get('depth'))--> <!--@foreach($_comment_list as $key => $comment)-->
<div style="margin-left:{($comment->get('depth')-1)*20}px" class="replyIndent">
<!--@end-->
<a name="comment_{$comment->comment_srl}"></a> <div class="item <!--@if($comment->get('depth'))-->reply<!--@end-->" id="comment_{$comment->comment_srl}">
<div class="replyOption"> <h4 class="header">
<!--@if($comment->isGranted() || !$comment->get('member_srl'))--> <!--@if(!$comment->member_srl)-->
<a href="{getUrl('act','dispBoardDeleteComment','comment_srl',$comment->comment_srl)}"><img src="./images/common/buttonDeleteX.gif" alt="{$lang->cmd_delete}" width="12" height="13" /></a> <!--@if($comment->homepage)-->
<a href="{getUrl('act','dispBoardModifyComment','comment_srl',$comment->comment_srl)}"><img src="./images/{$module_info->colorset}/buttonModifyE.gif" alt="{$lang->cmd_modify}" width="20" height="17" /></a> <a href="{$comment->homepage}" onclick="window.open(this.href);return false;">{$comment->getNickName()}</a>
<!--@end--> <!--@else-->
<a href="{getUrl('act','dispBoardReplyComment','comment_srl',$comment->comment_srl)}"><img src="./images/{$module_info->colorset}/buttonReply.gif" alt="{$lang->cmd_reply}" width="20" height="17" /></a> {$comment->getNickName()}
</div> <!--@end-->
<!--@else-->
<a href="popup_menu_area" class="member_{$comment->member_srl}">{$comment->getNickName()}</a>
<!--@end-->
</h4>
<!--@if(!$comment->isAccessible())-->
<!--%import("filter/input_password.xml")-->
<div class="secretContent">
<form action="./" method="get" onsubmit="return procFilter(this, input_password)">
<input type="hidden" name="mid" value="{$mid}" />
<input type="hidden" name="page" value="{$page}" />
<input type="hidden" name="document_srl" value="{$comment->get('document_srl')}" />
<input type="hidden" name="comment_srl" value="{$comment->get('comment_srl')}" />
<div class="title">{$lang->msg_is_secret}</div>
<div class="content"><input type="password" name="password" class="inputTypeText" /><span class="button"><input type="submit" value="{$lang->cmd_input}" accesskey="s" /></span></div>
</form>
</div>
<!--@else-->
<!--@if($comment->getProfileImage())-->
<img src="{$comment->getProfileImage()}" alt="profile" class="commentProfileImage" />
<!--@end-->
{$comment->getContent(true)}
<!--@end-->
<!--@if($comment->get('depth'))-->
<div style="margin-left:{($comment->get('depth')-1)*20}px" class="replyIndent">
<!--@end-->
<!--@if($comment->hasUploadedFIles())-->
<dl class="attachedFile">
<dt>Attached File :</dt>
{@ $_uploaded_files = $comment->getUploadedFiles() }
<!--@foreach($_uploaded_files as $key => $file)-->
<dd><a href="{getUrl('')}{$file->download_url}">{$file->source_filename} <span class="bubble">[File Size:{FileHandler::filesize($file->file_size)}/Download{number_format($file->download_count)}]</span></a></dd>
<!--@end-->
</dl>
<!--@end-->
<dl class="time">
<dt>Time :</dt>
<dd>
{$comment->getRegdate('Y.m.d')}
</dd>
<dd>
{$comment->getRegdate('H:i:s')}
<!--@if($grant->is_admin || $module_info->display_ip_address!='N')-->({$comment->getIpaddress()})<!--@end-->
</dd>
</dl>
<div class="option">
<!--@if($comment->isGranted() || !$comment->get('member_srl'))-->
<a href="{getUrl('act','dispBoardDeleteComment','comment_srl',$comment->comment_srl)}" class="button small"><span>Delete</span></a>
<a href="{getUrl('act','dispBoardModifyComment','comment_srl',$comment->comment_srl)}" class="button small"><span>Modify</span></a>
<!--@end-->
<a href="{getUrl('act','dispBoardReplyComment','comment_srl',$comment->comment_srl)}" class="button small green"><span>Reply</span></a>
</div>
<!--@if($comment->get('voted_count')!=0 || $comment->get('blamed_count') != 0)-->
<div class="voted">
({$lang->voted_count}:
<strong>{$comment->get('voted_count')?$comment->get('voted_count'):0}</strong> / <strong>{$comment->get('blamed_count')?$comment->get('blamed_count'):0}</strong>)
</div>
<!--@end-->
<!--@if($comment->get('depth'))-->
</div>
<!--@end-->
</div>
<!--@end-->
<div class="date"> </div>
<strong>{$comment->getRegdate('Y.m.d')}</strong> {$comment->getRegdate('H:i:s')}
<!--@if($grant->is_admin || $module_info->display_ip_address!='N')-->({$comment->getIpaddress()})<!--@end-->
</div>
<div class="author">
<!--@if(!$comment->member_srl)-->
<!--@if($comment->homepage)-->
<a href="{$comment->homepage}" onclick="window.open(this.href);return false;">{$comment->getNickName()}</a>
<!--@else-->
{$comment->getNickName()}
<!--@end-->
<!--@else-->
<div class="member_{$comment->member_srl}">{$comment->getNickName()}</div>
<!--@end-->
</div>
<!--@if($comment->get('voted_count')!=0 || $comment->get('blamed_count') != 0)-->
<div class="voted">
({$lang->voted_count}:
<strong>{$comment->get('voted_count')?$comment->get('voted_count'):0}</strong> / <strong>{$comment->get('blamed_count')?$comment->get('blamed_count'):0}</strong>)
</div>
<!--@end-->
<div class="clear"></div>
<div class="replyContent">
<!--@if(!$comment->isAccessible())-->
<!--%import("filter/input_password.xml")-->
<div class="secretContent">
<form action="./" method="get" onsubmit="return procFilter(this, input_password)">
<input type="hidden" name="mid" value="{$mid}" />
<input type="hidden" name="page" value="{$page}" />
<input type="hidden" name="document_srl" value="{$comment->get('document_srl')}" />
<input type="hidden" name="comment_srl" value="{$comment->get('comment_srl')}" />
<div class="title">{$lang->msg_is_secret}</div>
<div class="content"><input type="password" name="password" class="inputTypeText" /><span class="button"><input type="submit" value="{$lang->cmd_input}" accesskey="s" /></span></div>
</form>
</div>
<!--@else-->
<!--@if($comment->getProfileImage())-->
<img src="{$comment->getProfileImage()}" alt="profile" class="commentProfileImage" />
<!--@end-->
{$comment->getContent(true)}
<!--@end-->
<div class="clear"></div>
</div>
<!--@if($comment->hasUploadedFIles())-->
<div class="fileAttached">
<ul>
{@ $_uploaded_files = $comment->getUploadedFiles() }
<!--@foreach($_uploaded_files as $key => $file)-->
<li><a href="{getUrl('')}{$file->download_url}">{$file->source_filename} ({FileHandler::filesize($file->file_size)})({number_format($file->download_count)})</a></li>
<!--@end-->
</ul>
<div class="clear"></div>
</div>
<!--@end-->
<!--@if($comment->get('depth'))-->
</div>
<!--@end-->
</div>
<!--@end-->
<!-- 댓글 페이지 네비게이션 --> <!-- 댓글 페이지 네비게이션 -->
<!--@if($oDocument->comment_page_navigation)--> <!--@if($oDocument->comment_page_navigation)-->

View file

@ -8,6 +8,10 @@ body{ background:#fff;}
.board{ font-family:"나눔고딕", NanumGothic, "맑은 고딕", MalgunGothic, AppleGothic, "굴림", Gulim, "돋움", Dotum, Tahoma, Sans-serif; line-height:normal; font-size:.8em;} .board{ font-family:"나눔고딕", NanumGothic, "맑은 고딕", MalgunGothic, AppleGothic, "굴림", Gulim, "돋움", Dotum, Tahoma, Sans-serif; line-height:normal; font-size:.8em;}
.board *{ font-size:1em;} .board *{ font-size:1em;}
.board img{ border:0;} .board img{ border:0;}
.board a{ text-decoration:none; color:#000;}
.board a:hover,
.board a:active,
.board a:focus{ text-decoration:underline;}
/* Board Type */ /* Board Type */
.board.classic{} .board.classic{}
@ -33,10 +37,6 @@ body{ background:#fff;}
.boardInformation em, .boardInformation em,
.boardInformation strong{ color:#ff6600;} .boardInformation strong{ color:#ff6600;}
.boardInformation strong{ font:bold 11px Tahoma;} .boardInformation strong{ font:bold 11px Tahoma;}
.boardInformation a{ text-decoration:none; color:#000;}
.boardInformation a:hover,
.boardInformation a:active,
.boardInformation a:focus{ text-decoration:underline;}
.boardInformation .infoLeft{ padding-left:18px; float:left; background:url(../images/white/iconArticle.gif) no-repeat left center;} .boardInformation .infoLeft{ padding-left:18px; float:left; background:url(../images/white/iconArticle.gif) no-repeat left center;}
.boardInformation .infoRight{ float:right;} .boardInformation .infoRight{ float:right;}
.boardInformation .infoRight li.icon{ background:none; padding:0; margin-right:3px;} .boardInformation .infoRight li.icon{ background:none; padding:0; margin-right:3px;}
@ -57,10 +57,6 @@ body{ background:#fff;}
.boardListForm legend{ position:absolute; width:0; height:0; overflow:hidden; font:0/0 Sans-serif; visibility:hidden;} .boardListForm legend{ position:absolute; width:0; height:0; overflow:hidden; font:0/0 Sans-serif; visibility:hidden;}
.boardListForm em, .boardListForm em,
.boardListForm strong{ font-style:normal; color:#ff6600;} .boardListForm strong{ font-style:normal; color:#ff6600;}
.boardListForm a{ text-decoration:none; color:#000;}
.boardListForm a:hover,
.boardListForm a:active,
.boardListForm a:focus{ text-decoration:underline;}
/* Board List */ /* Board List */
.boardList{ border:0; border-top:1px solid #ddd; border-bottom:1px solid #ddd; width:100%;} .boardList{ border:0; border-top:1px solid #ddd; border-bottom:1px solid #ddd; width:100%;}
@ -137,29 +133,32 @@ body{ background:#fff;}
.boardSearchForm select{ font-size:12px; height:23px;} .boardSearchForm select{ font-size:12px; height:23px;}
.boardSearchForm .inputText{ border:1px solid #ccc; width:140px; height:15px; padding:4px 4px 2px 4px; font-size:12px; *margin:-1px 0;} .boardSearchForm .inputText{ border:1px solid #ccc; width:140px; height:15px; padding:4px 4px 2px 4px; font-size:12px; *margin:-1px 0;}
/* Board Read */
.boardRead{} .boardRead{}
.boardReadHeader{ margin-bottom:5px; *zoom:1;} .boardReadHeader{ margin-bottom:5px; *zoom:1;}
.boardReadHeader:after{ content:""; display:block; float:none; clear:both;} .boardReadHeader:after{ content:""; display:block; float:none; clear:both;}
.boardReadHeader *{ margin:0; padding:0;} .boardReadHeader *{ margin:0; padding:0;}
.boardReadHeader .title{ float:left;} .boardReadHeader .title{ float:left; font-size:1.5em;}
.boardReadHeader em{ float:right; font-style:normal; font-weight:bold; font-size:1em;} .boardReadHeader em{ position:relative; top:5px; float:right; font-style:normal; font-weight:bold; font-size:1em;}
.boardReadHeader a{ text-decoration:none; color:#000; font-weight:bold; font-size:1em;} .boardReadHeader a{ font-weight:bold; font-size:1em;}
.boardReadHeader a:hover,
.boardReadHeader a:active,
.boardReadHeader a:focus{ text-decoration:underline;}
.boardReadBody{ padding:15px 0; border-top:1px solid #ddd; border-bottom:1px solid #ddd; font-size:.75em; line-height:1.5em;} .boardReadBody{ padding:15px 0; border-top:1px solid #ddd; border-bottom:1px solid #ddd; line-height:1.5em;}
.boardReadBody .document_popup_menu{ margin-top:20px; text-align:right;}
.boardReadBody .document_popup_menu a{ text-decoration:underline;}
.boardReadBody .xe_content{ margin-bottom:15px;}
.boardReadBody .memberSignature{ border:1px dotted #ddd;}
.boardReadBody .memberSignature .signature{ margin:10px;}
.boardReadFooter{ padding:10px 0; *zoom:1; color:#666; line-height:1em; font:11px Tahoma;} .boardReadFooter{ padding:10px 0; *zoom:1; color:#666; line-height:1em; font:11px Tahoma;}
.boardReadFooter:after{ content:""; display:block; float:none; clear:both;} .boardReadFooter:after{ content:""; display:block; float:none; clear:both;}
.boardReadFooter *{ margin:0; padding:0;} .boardReadFooter *{ margin:0; padding:0;}
.boardReadFooter a{ color:#666;} .boardReadFooter a{ color:#666; text-decoration:underline; position:relative;}
.boardReadFooter .footerLeft{ float:left;} .boardReadFooter .footerLeft{ float:left;}
.boardReadFooter .footerRight{ float:right;} .boardReadFooter .footerRight{ float:right;}
.boardReadFooter dl{ clear:both; white-space:nowrap;} .boardReadFooter dl{ clear:both; position:relative;}
.boardReadFooter dt{ display:inline; font-weight:bold;} .boardReadFooter dt{ position:relative; z-index:2; display:inline; padding-right:5px; font-weight:bold; background:#fff;}
.boardReadFooter dd{ display:inline;} .boardReadFooter dd{ position:relative; z-index:1; left:-5px; display:inline; padding-left:7px; margin-right:5px; background:url(../images/white/lineVr11.gif) no-repeat left center; *zoom:1;}
.boardReadFooter .footerRight dl{ float:right;} .boardReadFooter .footerRight dl{ float:right;}
.boardReadFooter .footerRight dl.noBr{ position:relative; left:5px; float:right; clear:both; overflow:hidden; white-space:nowrap;} .boardReadFooter .footerRight dl.noBr{ position:relative; left:5px; float:right; clear:both; overflow:hidden; white-space:nowrap;}
.boardReadFooter .footerRight dl.noBr dt{ position:relative; left:-1px; padding-left:10px; background:url(../images/white/lineVr11.gif) no-repeat left center;} .boardReadFooter .footerRight dl.noBr dt{ position:relative; left:-1px; padding-left:10px; background:url(../images/white/lineVr11.gif) no-repeat left center;}
@ -167,21 +166,35 @@ body{ background:#fff;}
.boardRead .boardNavigation{ border-top:1px solid #ddd;} .boardRead .boardNavigation{ border-top:1px solid #ddd;}
.feedbackList{ position:relative; overflow:hidden; font-size:.75em; padding-top:15px; margin-bottom:10px; color:#666;} .feedbackList{ position:relative; overflow:hidden; padding-top:15px; margin-bottom:10px; color:#666;}
.feedbackList *{ margin:0; padding:0;} .feedbackList *{ margin:0; padding:0;}
.feedbackList .title{ position:relative; font-weight:bold; font-size:1.5em; color:#000; margin-bottom:10px;} .feedbackList .feedbackHeader{ position:relative; font-weight:bold; color:#000; margin-bottom:10px; font-size:1.5em;}
.feedbackList .title strong{ color:#ff6600;} .feedbackList .feedbackHeader strong{ color:#ff6600;}
.feedbackList dl{ position:relative; padding-top:10px; margin-bottom:10px; border-top:1px dashed #ddd;}
.feedbackList dt{ font-weight:bold; font-size:1.25em; margin-bottom:5px; color:#333;} .feedbackList .item{ position:relative; padding-top:10px; margin-bottom:10px; border-top:1px dashed #ddd;}
.feedbackList dd{ line-height:1.5em;} .feedbackList .item .header{ font-size:1.5em; margin-bottom:5px;}
.feedbackList dd.trackbackTitle{ font-weight:bold;} .feedbackList .item .header a{ font-size:1em;}
.feedbackList dd.text{} .feedbackList .item .comment_popup_menu{ text-align:right; margin-bottom:10px;}
.feedbackList dd.time{ position:absolute; top:15px; right:0; font:11px Tahoma;} .feedbackList .item .comment_popup_menu a{ text-decoration:underline;}
.feedbackList dd a.delete{ font-weight:bold; color:#ff6600;} .feedbackList .item .option{ text-align:right;}
.feedbackList a{ text-decoration:none;}
.feedbackList a:hover, /* Time */
.feedbackList a:active, .time{ position:absolute; top:10px; right:0;}
.feedbackList a:focus{ text-decoration:underline;} .time *{ position:relative; font-size:11px; font-family:Tahoma; color:#666; display:inline;}
.time dt{ z-index:2; display:inline; padding-right:5px; font-weight:bold; background:#fff;}
.time dd{ z-index:1; left:-5px; display:inline; padding-left:7px; margin-right:3px; background:url(../images/white/lineVr11.gif) no-repeat left center;}
/* Attached File */
.attachedFile{ position:relative; margin:0; padding:0; border:none;}
.item .attachedFile{ position:absolute; left:0; bottom:0;}
.attachedFile *{ position:relative; font-size:11px; font-family:Tahoma; color:#666; display:inline;}
.attachedFile dt{ z-index:2; display:inline; padding-right:5px; font-weight:bold; background:#fff;}
.attachedFile dd{ z-index:1; left:-5px; display:inline; padding-left:7px; margin-right:5px; background:url(../images/white/lineVr11.gif) no-repeat left center; *zoom:1;}
.attachedFile dd a{ position:relative; text-decoration:underline; color:#666;}
.attachedFile dd a .bubble{ position:absolute; display:none; text-decoration:none; background:#f8f8f8; white-space:nowrap; border:1px solid #ddd; padding:2px 5px; left:0; top:-20px; cursor:pointer;}
.attachedFile dd a:hover .bubble,
.attachedFile dd a:active .bubble,
.attachedFile dd a:focus .bubble{ display:block;}
.replyForm{ padding:10px 20px 15px 20px; font-size:.75em; color:#666; margin-bottom:20px; background:#f4f4f4; -moz-border-radius:10px; -webkit-border-radius:10px;} .replyForm{ padding:10px 20px 15px 20px; font-size:.75em; color:#666; margin-bottom:20px; background:#f4f4f4; -moz-border-radius:10px; -webkit-border-radius:10px;}
.replyForm *{ margin:0; padding:0;} .replyForm *{ margin:0; padding:0;}
@ -224,11 +237,11 @@ body{ background:#fff;}
/* Layer */ /* Layer */
#waitingforserverresponse { border:2px solid #444444; font-weight:bold; color:#444444; padding: 7px 5px 5px 25px; background:#FFFFFF url("../tpl/images/loading.gif") no-repeat 5px 5px; top:40px; left:40px; position:absolute; z-index:100; visibility:hidden; } #waitingforserverresponse { border:2px solid #444444; font-weight:bold; color:#444444; padding: 7px 5px 5px 25px; background:#FFFFFF url("../tpl/images/loading.gif") no-repeat 5px 5px; top:40px; left:40px; position:absolute; z-index:100; visibility:hidden; }
#popup_menu_area{ position:absolute; background:#fff; border:2px solid #eee; -moz-border-radius:5px; -webkit-border-radius:5px; margin:0; padding:0;} #popup_menu_area{ position:absolute; background:#fff; border:2px solid #eee; -moz-border-radius:5px; -webkit-border-radius:5px; margin:0; padding:0; z-index:100;}
#popup_menu_area *{ margin:0; padding:0; list-style:none; font-size:12px; line-height:normal;} #popup_menu_area *{ margin:0; padding:0; list-style:none; font-size:12px; line-height:normal;}
#popup_menu_area ul{ border:1px solid #ddd; -moz-border-radius:5px; -webkit-border-radius:5px; padding:10px;} #popup_menu_area ul{ border:1px solid #ddd; -moz-border-radius:5px; -webkit-border-radius:5px; padding:10px;}
#popup_menu_area li{ padding-left:20px; background-repeat:no-repeat; background-position:left center; margin-bottom:3px; *margin-bottom:-2px;} #popup_menu_area li{ padding-left:20px; background-repeat:no-repeat; background-position:left center; margin-bottom:3px; *margin-bottom:-2px;}
#popup_menu_area li a{ text-decoration:none; color:#000;} #popup_menu_area li a{ text-decoration:none; color:#000; white-space:nowrap;}
#popup_menu_area li a:hover, #popup_menu_area li a:hover,
#popup_menu_area li a:active, #popup_menu_area li a:active,
#popup_menu_area li a:focus{ font-weight:bold; letter-spacing:-1px;} #popup_menu_area li a:focus{ font-weight:bold; letter-spacing:-1px;}

View file

@ -1,7 +1,14 @@
@charset "utf-8"; @charset "utf-8";
/* NHN > UIT Center > Open UI Platform Team > Jeong Chan Myeong(dece24@nhncorp.com) */ /* NHN > UIT Center > Open UI Platform Team > Jeong Chan Myeong(dece24@nhncorp.com) */
.tagsBox{} .tagCloud *{ margin:0; padding:0;}
.tagCloud .tagHeader{border:0; border-top:1px solid #ddd; border-bottom:1px solid #ddd; padding:7px; white-space:nowrap; color:#333; background:#fff url(../images/white/bgThDefault.gif) repeat-x left bottom; line-height:normal;}
.tagCloud .tagHeader strong{ color:#ff6600;}
.tagCloud ul{ text-align:justify; margin:20px 0;}
.tagCloud li{ display:inline; list-style:none; margin:0 5px;}
.tagCloud li a{ white-space:nowrap;}
.tagCloud li.rank1 a{ font-weight:bold; font-size:2em; background:#12d763; color:#fff;}
.tagCloud li.rank2 a{ font-weight:bold; font-size:1.75em; color:#666;}
.tagCloud li.rank3 a{ font-weight:bold; font-size:1.5em; color:#00b4b5;}
.tagCloud li.rank4 a{ font-size:1.25em; color:#666;}
.tagCloud li.rank5 a{ font-size:1em; color:#666;}

View file

@ -1,4 +1,4 @@
<!--// header.html include --> <!--// _header.html include -->
<!--#include("_header.html")--> <!--#include("_header.html")-->
<!--// 검색을 위한 xml filter import--> <!--// 검색을 위한 xml filter import-->

View file

@ -1,39 +1,37 @@
<!--// header.html include --> <!--// _header.html include -->
<!--#include("_header.html")--> <!--#include("_header.html")-->
<!-- print tags --> <!-- print tags -->
<div class="tagsBox"> <div class="tagCloud">
<h4><img src="./images/common/iconTag.gif" alt="{$lang->tag}" width="17" height="10" class="tagIcon" /> {$lang->tag} ({count($tag_list)})</h4> <h4 class="tagHeader">{$lang->tag} (<strong>{count($tag_list)}</strong>)</h4>
<div class="tags"> <ul class="tags">
<!--@foreach($tag_list as $val)--> <!--@foreach($tag_list as $val)-->
<!--@if($val->count>5)--> <!--@if($val->count>5)-->
{@ $tag_class = "tagTypeA" } {@ $tag_class = "rank1" }
<!--@elseif($val->count>3)--> <!--@elseif($val->count>3)-->
{@ $tag_class = "tagTypeB" } {@ $tag_class = "rank2" }
<!--@elseif($val->count>2)--> <!--@elseif($val->count>2)-->
{@ $tag_class = "tagTypeC" } {@ $tag_class = "rank3" }
<!--@elseif($val->count>1)--> <!--@elseif($val->count>1)-->
{@ $tag_class = "tagTypeD" } {@ $tag_class = "rank4" }
<!--@else--> <!--@else-->
{@ $tag_class = "tagTypeE" } {@ $tag_class = "rank5" }
<!--@end--> <!--@end-->
<div <!--@if($tag_class)-->class="{$tag_class}"<!--@end--> > <li <!--@if($tag_class)-->class="{$tag_class}"<!--@end--> >
<!--@if($layout_info->mid)--> <!--@if($layout_info->mid)-->
<a href="{getUrl('','mid',$layout_info->mid,'search_target','tag','search_keyword',$val->tag)}">{htmlspecialchars($val->tag)}</a> <a href="{getUrl('','mid',$layout_info->mid,'search_target','tag','search_keyword',$val->tag)}">{htmlspecialchars($val->tag)}</a>
<!--@else--> <!--@else-->
<a href="{getUrl('','mid',$mid,'search_target','tag','search_keyword',$val->tag)}">{htmlspecialchars($val->tag)}</a> <a href="{getUrl('','mid',$mid,'search_target','tag','search_keyword',$val->tag)}">{htmlspecialchars($val->tag)}</a>
<!--@end--> <!--@end-->
</div> </li>
<!--@end--> <!--@end-->
<div class="clear"></div> </ul>
</div>
</div> </div>
<div class="clear"></div>
<div class="rightButtonBox gap1"> <div class="boardNavigation">
<a href="{getUrl('act','')}" class="button"><span>{$lang->cmd_back}</span></a> <a href="{getUrl('act','')}" class="button"><span>{$lang->cmd_back}</span></a>
</div> </div>

View file

@ -1,26 +1,24 @@
<!-- 엮인글 목록 --> <!-- 엮인글 목록 -->
<div class="trackbackBox"> <div class="trackbackBox">
<div class="trackbackUrl"><a name="trackback" href="{$oDocument->getTrackbackUrl()}" onclick="return false;">{$lang->trackback_url} : {$oDocument->getTrackbackUrl()}</a><div class="clear"></div></div> <!--@if($oDocument->getTrackbackCount())-->
<!--@foreach($oDocument->getTrackbacks() as $key => $val)-->
<!--@if($oDocument->getTrackbackCount())--> <div class="item">
<!--@foreach($oDocument->getTrackbacks() as $key => $val)--> <a name="trackback_{$val->trackback_srl}"></a>
<div class="trackbackItem"> <address>
<a name="trackback_{$val->trackback_srl}"></a> <a href="{$val->url}" onclick="winopen(this.href);return false;">{htmlspecialchars($val->title)} - {htmlspecialchars($val->blog_name)}</a>
<address> <a href="{getUrl('act','dispBoardDeleteTrackback','trackback_srl',$val->trackback_srl)}"><img src="./images/common/buttonDeleteX.gif" border="0" alt="delete" width="12" height="13" /></a>
<a href="{$val->url}" onclick="winopen(this.href);return false;">{htmlspecialchars($val->title)} - {htmlspecialchars($val->blog_name)}</a> <span class="date">
<a href="{getUrl('act','dispBoardDeleteTrackback','trackback_srl',$val->trackback_srl)}"><img src="./images/common/buttonDeleteX.gif" border="0" alt="delete" width="12" height="13" /></a> {zdate($val->regdate, "Y.m.d H:i")}
<span class="date"> ({$val->ipaddress})
{zdate($val->regdate, "Y.m.d H:i")} </span>
({$val->ipaddress}) </address>
</span> <div>
</address> <a href="{$val->url}" onclick="winopen(this.href);return false;">{$val->excerpt}</a>
<div> </div>
<a href="{$val->url}" onclick="winopen(this.href);return false;">{$val->excerpt}</a> </div>
</div> <!--@end-->
</div> <!--@end-->
<!--@end-->
<!--@end--> </div>
</div>

View file

@ -1,206 +1,196 @@
<!-- 글 내용 보여주기 --> <!-- 글 내용 보여주기 -->
<div class="boardRead"> <div class="boardRead">
<div class="originalContent">
<div class="readHeader"> <div class="boardReadHeader">
<div class="titleAndUser">
<h3 class="title"><a href="{$oDocument->getPermanentUrl()}">{$oDocument->getTitle()}</a></h3>
<div class="title">
<h4><a href="{$oDocument->getPermanentUrl()}">{$oDocument->getTitle()}</a></h4> <!--@if($module_info->display_author!='N')-->
</div> <em>
<!--@if(!$oDocument->getMemberSrl())-->
<!--@if($module_info->display_author!='N')--> <!--@if($oDocument->isExistsHomepage())-->
<div class="userInfo"> <a href="{$oDocument->getHomepageUrl()}" onclick="window.open(this.href);return false;">{$oDocument->getNickName()}</a>
<!--@if(!$oDocument->getMemberSrl())--> <!--@else-->
<div class="author"> {$oDocument->getNickName()}
<!--@if($oDocument->isExistsHomepage())--> <!--@end-->
<a href="{$oDocument->getHomepageUrl()}" onclick="window.open(this.href);return false;">{$oDocument->getNickName()}</a> <!--@else-->
<!--@else--> <a href="#popup_menu_area" class="member_{$oDocument->get('member_srl')}">{$oDocument->getNickName()}</a>
{$oDocument->getNickName()} <!--@end-->
<!--@end--> </em>
</div> <!--@end-->
<!--@else-->
<div class="author"><span class="member_{$oDocument->get('member_srl')}">{$oDocument->getNickName()}</span></div> </div>
<!--@end-->
</div> <!--@if($oDocument->isExtraVarsExists() && (!$oDocument->isSecret() || $oDocument->isGranted()) )-->
<!--@end--> <table cellspacing="0" summary="" class="extraVarsList">
<col width="150" />
<div class="clear"></div> <col />
<!--@foreach($module_info->extra_vars as $key => $val)-->
</div> <!--@if($val->name)-->
<tr>
<div class="dateAndCount"> <th scope="row">{$val->name}</th>
<div class="uri" title="{$lang->document_url}"><a href="{$oDocument->getPermanentUrl()}">{$oDocument->getPermanentUrl()}</a></div> <td>
<!--// 확장변수(extra_var)의 type에 따른 값을 출력하기 위해서 특별히 제작된 파일을 include 한다 -->
<div class="date" title="{$lang->regdate}"> <!--#include("./extra_var_value.html")-->
<strong>{$oDocument->getRegdate('Y.m.d')}</strong> {$oDocument->getRegdate('H:i:s')} <!--@if($grant->is_admin || $module_info->display_ip_address!='N')-->({$oDocument->getIpaddress()})<!--@end--> </td>
</div> </tr>
<!--@end-->
<div class="readedCount" title="{$lang->readed_count}">{$oDocument->get('readed_count')}</div> <!--@end-->
</table>
<!--@if($oDocument->get('voted_count')!=0 || $oDocument->get('blamed_count')!=0)--> <!--@end-->
<div class="votedCount" title="{$lang->voted_count}">
<strong>{$oDocument->get('voted_count')} / {$oDocument->get('blamed_count')}</strong> <div class="boardReadBody">
</div> <!--@if($oDocument->isSecret() && !$oDocument->isGranted())-->
<!--@end--> <!--%import("filter/input_password.xml")-->
<div class="secretContent">
<div class="replyAndTrackback"> <form action="./" method="get" onsubmit="return procFilter(this, input_password)">
<!--@if($grant->write_comment && $oDocument->allowComment()) --> <input type="hidden" name="mid" value="{$mid}" />
<div class="replyCount"><a href="#comment" title="{$lang->comment}"><strong>{$oDocument->getCommentcount()}</strong></a></div> <input type="hidden" name="page" value="{$page}" />
<!--@end--> <input type="hidden" name="document_srl" value="{$oDocument->document_srl}" />
<!--@if($oDocument->allowTrackback() && $oDocument->getTrackbackCount() )-->
<div class="trackbackCount"><a href="#trackback" title="{$lang->trackback}"><strong>{$oDocument->getTrackbackCount()}</strong></a></div> <div class="title">{$lang->msg_is_secret}</div>
<!--@end--> <div class="content"><input type="password" name="password" id="cpw" class="inputTypeText" /><span class="button"><input type="submit" value="{$lang->cmd_input}" accesskey="s" /></span></div>
</div>
</form>
<!--@if($module_info->use_category == "Y" && $oDocument->get('category_srl'))--> </div>
<div class="category" title="{$lang->category}"><a href="{getUrl('category',$oDocument->get('category_srl'), 'document_srl', '')}">{$category_list[$oDocument->get('category_srl')]->title}</a></div> <!--@else-->
<!--@end--> {$oDocument->getContent()}
<!--@end-->
<div class="clear"></div>
</div> <!-- 서명 / 프로필 이미지 출력 -->
<!--@if($oDocument->getProfileImage() || $oDocument->getSignature())-->
<div class="clear"></div> <div class="memberSignature">
</div> <!--@if($oDocument->getProfileImage())-->
<div class="profile"><img src="{$oDocument->getProfileImage()}" alt="profile" /></div>
<div class="clear"></div> <!--@end-->
<!--@if($oDocument->getSignature())-->
<!--@if($oDocument->isExtraVarsExists() && (!$oDocument->isSecret() || $oDocument->isGranted()) )--> <div class="signature">{$oDocument->getSignature()}</div>
<table cellspacing="0" summary="" class="extraVarsList"> <!--@end-->
<col width="150" /> </div>
<col /> <!--@end-->
<!--@foreach($module_info->extra_vars as $key => $val)--> </div>
<!--@if($val->name)-->
<tr> <div class="boardReadFooter">
<th scope="row">{$val->name}</th>
<td> <div class="footerLeft">
<!--// 확장변수(extra_var)의 type에 따른 값을 출력하기 위해서 특별히 제작된 파일을 include 한다 -->
<!--#include("./extra_var_value.html")--> <!--@if($module_info->use_category == "Y" && $oDocument->get('category_srl'))-->
</td> <dl>
</tr> <dt>Category :</dt>
<!--@end--> <dd title="{$lang->category}"><a href="{getUrl('category',$oDocument->get('category_srl'), 'document_srl', '')}">{$category_list[$oDocument->get('category_srl')]->title}</a></dd>
<!--@end--> </dl>
</table> <!--@end-->
<!--@end-->
<div class="readBody"> {@ $tag_list = $oDocument->get('tag_list') }
<div class="contentBody"> <!--@if(count($tag_list))-->
<dl class="tag">
<!--@if($oDocument->isSecret() && !$oDocument->isGranted())--> <dt>Tag :</dt>
<!--%import("filter/input_password.xml")--> <!--@for($i=0;$i<count($tag_list);$i++)-->
<div class="secretContent"> {@ $tag = $tag_list[$i]; }
<form action="./" method="get" onsubmit="return procFilter(this, input_password)"> <dd><a href="{getUrl('search_target','tag','search_keyword',$tag,'document_srl','')}" rel="tag">{htmlspecialchars($tag)}</a></dd>
<input type="hidden" name="mid" value="{$mid}" /> <!--@end-->
<input type="hidden" name="page" value="{$page}" /> </dl>
<input type="hidden" name="document_srl" value="{$oDocument->document_srl}" /> <!--@end-->
<div class="title">{$lang->msg_is_secret}</div> <!--@if($oDocument->hasUploadedFiles())-->
<div class="content"><input type="password" name="password" id="cpw" class="inputTypeText" /><span class="button"><input type="submit" value="{$lang->cmd_input}" accesskey="s" /></span></div> <dl class="attachedFile">
<dt>Attached File :</dt>
</form> {@ $uploaded_list = $oDocument->getUploadedFiles() }
</div> <!--@foreach($uploaded_list as $key => $file)-->
<!--@else--> <dd><a href="{getUrl('')}{$file->download_url}">{$file->source_filename} <span class="bubble">[File Size:{FileHandler::filesize($file->file_size)}/Download:{number_format($file->download_count)}]</span></a></dd>
{$oDocument->getContent()} <!--@end-->
<!--@end--> </dl>
<!--@end-->
<!-- 서명 / 프로필 이미지 출력 --> </div>
<!--@if($oDocument->getProfileImage() || $oDocument->getSignature())-->
<div class="memberSignature"> <div class="footerRight">
<!--@if($oDocument->getProfileImage())-->
<div class="profile"><img src="{$oDocument->getProfileImage()}" alt="profile" /></div> <dl>
<!--@end--> <dt>Read :</dt>
<!--@if($oDocument->getSignature())--> <dd title="{$lang->readed_count}">{$oDocument->get('readed_count')}</dd>
<div class="signature">{$oDocument->getSignature()}</div> <!--@if($oDocument->get('voted_count')!=0 || $oDocument->get('blamed_count')!=0)-->
<!--@end--> <dt>Vote :</dt>
<div class="clear"></div> <dd title="{$lang->voted_count}">{$oDocument->get('voted_count')} / {$oDocument->get('blamed_count')}</dd>
</div> <!--@end-->
<!--@end--> <dt>Time :</dt>
</div> <dd title="{$lang->regdate}">{$oDocument->getRegdate('Y.m.d')}</dd>
</div> <dd>{$oDocument->getRegdate('H:i:s')} <!--@if($grant->is_admin || $module_info->display_ip_address!='N')-->({$oDocument->getIpaddress()})<!--@end--></dd>
</dl>
{@ $tag_list = $oDocument->get('tag_list') }
<!--@if(count($tag_list))--> <dl>
<div class="tag"> <dt>Tracback :</dt>
<ul> <dd><a name="trackback" href="{$oDocument->getTrackbackUrl()}" onclick="return false;">{$oDocument->getTrackbackUrl()}</a></dd>
<!--@for($i=0;$i<count($tag_list);$i++)--> </dl>
{@ $tag = $tag_list[$i]; }
<li><a href="{getUrl('search_target','tag','search_keyword',$tag,'document_srl','')}" rel="tag">{htmlspecialchars($tag)}</a><!--@if($i<count($tag_list)-1)-->,&nbsp;<!--@end--></li> <dl>
<!--@end--> <dt>Permalink :</dt>
</ul> <dd title="{$lang->document_url}"><a href="{$oDocument->getPermanentUrl()}">{$oDocument->getPermanentUrl()}</a></dd>
</div> </dl>
<!--@end-->
</div>
<!--@if($oDocument->hasUploadedFiles())-->
<div class="fileAttached"> </div>
{@ $uploaded_list = $oDocument->getUploadedFiles() }
<ul> <!-- 목록, 수정/삭제 버튼 -->
<!--@foreach($uploaded_list as $key => $file)--> <div class="boardNavigation">
<li><a href="{getUrl('')}{$file->download_url}">{$file->source_filename} ({FileHandler::filesize($file->file_size)})({number_format($file->download_count)})</a></li> <!--@if($module_info->default_style != 'blog')-->
<!--@end--> <a href="{getUrl('document_srl','')}" class="button"><span>{$lang->cmd_list}</span></a>
</ul> <!--@end-->
<div class="clear"></div> <!--@if($oDocument->isEditable())-->
</div> <a href="{getUrl('act','dispBoardWrite','document_srl',$oDocument->document_srl,'comment_srl','')}" class="button"><span>{$lang->cmd_modify}</span></a>
<!--@end--> <a href="{getUrl('act','dispBoardDelete','document_srl',$oDocument->document_srl,'comment_srl','')}" class="button"><span>{$lang->cmd_delete}</span></a>
</div> <!--@end-->
</div>
<!-- 목록, 수정/삭제 버튼 -->
<div class="contentButton"> </div>
<!--@if($module_info->default_style != 'blog')-->
<a href="{getUrl('document_srl','')}" class="button"><span>{$lang->cmd_list}</span></a> <!-- 엮인글 -->
<!--@end--> <!--@if($oDocument->allowTrackback())-->
<!--@if($oDocument->isEditable())--> <!--#include("./trackback.html")-->
<a href="{getUrl('act','dispBoardWrite','document_srl',$oDocument->document_srl,'comment_srl','')}" class="button"><span>{$lang->cmd_modify}</span></a> <!--@end-->
<a href="{getUrl('act','dispBoardDelete','document_srl',$oDocument->document_srl,'comment_srl','')}" class="button"><span>{$lang->cmd_delete}</span></a>
<!--@end--> <!-- 댓글 -->
</div> <a name="comment"></a>
<!--#include("./comment.html")-->
</div>
<!-- 댓글 입력 폼 -->
<!-- 엮인글 --> <!--@if($grant->write_comment && $oDocument->isEnableComment() )-->
<!--@if($oDocument->allowTrackback())--> <!--%import("filter/insert_comment.xml")-->
<!--#include("./trackback.html")--> <form action="./" method="post" onsubmit="return procFilter(this, insert_comment)" class="boardEditor" >
<!--@end--> <input type="hidden" name="mid" value="{$mid}" />
<input type="hidden" name="document_srl" value="{$oDocument->document_srl}" />
<!-- 댓글 --> <input type="hidden" name="comment_srl" value="" />
<a name="comment"></a> <input type="hidden" name="content" value="" />
<!--#include("./comment.html")--> <div class="boardWrite commentEditor">
<div class="userNameAndPw">
<!-- 댓글 입력 폼 --> <!--@if(!$is_logged)-->
<!--@if($grant->write_comment && $oDocument->isEnableComment() )--> <label for="userName">{$lang->writer}</label>
<!--%import("filter/insert_comment.xml")--> <input type="text" name="nick_name" value="" class="userName inputTypeText" id="userName"/>
<form action="./" method="post" onsubmit="return procFilter(this, insert_comment)" class="boardEditor" >
<input type="hidden" name="mid" value="{$mid}" /> <label for="userPw">{$lang->password}</label>
<input type="hidden" name="document_srl" value="{$oDocument->document_srl}" /> <input type="password" name="password" value="" id="userPw" class="userPw inputTypeText" />
<input type="hidden" name="comment_srl" value="" />
<input type="hidden" name="content" value="" /> <label for="emailAddress">{$lang->email_address}</label>
<div class="boardWrite commentEditor"> <input type="text" name="email_address" value="" id="emailAddress" class="emailAddress inputTypeText"/>
<div class="userNameAndPw">
<!--@if(!$is_logged)--> <label for="homePage">{$lang->homepage}</label>
<label for="userName">{$lang->writer}</label> <input type="text" name="homepage" value="" id="homePage" class="homePage inputTypeText"/>
<input type="text" name="nick_name" value="" class="userName inputTypeText" id="userName"/> <!--@else-->
<input type="checkbox" name="notify_message" value="Y" id="notify_message" />
<label for="userPw">{$lang->password}</label> <label for="notify_message">{$lang->notify}</label>
<input type="password" name="password" value="" id="userPw" class="userPw inputTypeText" /> <!--@end-->
<label for="emailAddress">{$lang->email_address}</label> <input type="checkbox" name="is_secret" value="Y" id="is_secret" />
<input type="text" name="email_address" value="" id="emailAddress" class="emailAddress inputTypeText"/> <label for="is_secret">{$lang->secret}</label>
<label for="homePage">{$lang->homepage}</label> </div>
<input type="text" name="homepage" value="" id="homePage" class="homePage inputTypeText"/>
<!--@else--> <div class="editor">{$oDocument->getCommentEditor()}</div>
<input type="checkbox" name="notify_message" value="Y" id="notify_message" /> </div>
<label for="notify_message">{$lang->notify}</label>
<!--@end--> <div class="commentButton tRight">
<span class="button"><input type="submit" value="{$lang->cmd_comment_registration}" accesskey="s" /></span>
<input type="checkbox" name="is_secret" value="Y" id="is_secret" /> </div>
<label for="is_secret">{$lang->secret}</label> </form>
<!--@end-->
</div>
<div class="editor">{$oDocument->getCommentEditor()}</div>
</div>
<div class="commentButton tRight">
<span class="button"><input type="submit" value="{$lang->cmd_comment_registration}" accesskey="s" /></span>
</div>
</form>
<!--@end-->

View file

@ -1,317 +1,317 @@
<?php <?php
/** /**
* @class commentItem * @class commentItem
* @author zero (zero@nzeo.com) * @author zero (zero@nzeo.com)
* @brief comment 객체 * @brief comment 객체
**/ **/
class commentItem extends Object { class commentItem extends Object {
var $comment_srl = 0; var $comment_srl = 0;
function commentItem($comment_srl = 0) { function commentItem($comment_srl = 0) {
$this->comment_srl = $comment_srl; $this->comment_srl = $comment_srl;
$this->_loadFromDB(); $this->_loadFromDB();
} }
function setComment($comment_srl) { function setComment($comment_srl) {
$this->comment_srl = $comment_srl; $this->comment_srl = $comment_srl;
$this->_loadFromDB(); $this->_loadFromDB();
} }
function _loadFromDB() { function _loadFromDB() {
if(!$this->comment_srl) return; if(!$this->comment_srl) return;
$args->comment_srl = $this->comment_srl; $args->comment_srl = $this->comment_srl;
$output = executeQuery('comment.getComment', $args); $output = executeQuery('comment.getComment', $args);
$this->setAttribute($output->data); $this->setAttribute($output->data);
} }
function setAttribute($attribute) { function setAttribute($attribute) {
if(!$attribute->comment_srl) { if(!$attribute->comment_srl) {
$this->comment_srl = null; $this->comment_srl = null;
return; return;
} }
$this->comment_srl = $attribute->comment_srl; $this->comment_srl = $attribute->comment_srl;
$this->adds($attribute); $this->adds($attribute);
// 기존 스킨의 호환을 위해 변수를 객체 자신에 재선언 // 기존 스킨의 호환을 위해 변수를 객체 자신에 재선언
if(count($attribute)) foreach($attribute as $key => $val) $this->{$key} = $val; if(count($attribute)) foreach($attribute as $key => $val) $this->{$key} = $val;
} }
function isExists() { function isExists() {
return $this->comment_srl ? true : false; return $this->comment_srl ? true : false;
} }
function isGranted() { function isGranted() {
if($_SESSION['own_comment'][$this->comment_srl]) return true; if($_SESSION['own_comment'][$this->comment_srl]) return true;
if(!Context::get('is_logged')) return false; if(!Context::get('is_logged')) return false;
$logged_info = Context::get('logged_info'); $logged_info = Context::get('logged_info');
if($logged_info->is_admin == 'Y') return true; if($logged_info->is_admin == 'Y') return true;
if($this->get('member_srl') && $this->get('member_srl') == $logged_info->member_srl) return true; if($this->get('member_srl') && $this->get('member_srl') == $logged_info->member_srl) return true;
return false; return false;
} }
function setGrant() { function setGrant() {
$_SESSION['own_comment'][$this->comment_srl] = true; $_SESSION['own_comment'][$this->comment_srl] = true;
$this->is_granted = true; $this->is_granted = true;
} }
function setAccessible() { function setAccessible() {
$_SESSION['accessibled_comment'][$this->comment_srl] = true; $_SESSION['accessibled_comment'][$this->comment_srl] = true;
} }
function isEditable() { function isEditable() {
if($this->isGranted() || !$this->get('member_srl')) return true; if($this->isGranted() || !$this->get('member_srl')) return true;
return false; return false;
} }
function isSecret() { function isSecret() {
return $this->get('is_secret') == 'Y' ? true : false; return $this->get('is_secret') == 'Y' ? true : false;
} }
function isAccessible() { function isAccessible() {
if($_SESSION['accessibled_comment'][$this->comment_srl]) return true; if($_SESSION['accessibled_comment'][$this->comment_srl]) return true;
if($this->isGranted() || !$this->isSecret()) { if($this->isGranted() || !$this->isSecret()) {
$this->setAccessible(); $this->setAccessible();
return true; return true;
} }
$oDocumentModel = &getModel('document'); $oDocumentModel = &getModel('document');
$oDocument = $oDocumentModel->getDocument($this->get('document_srl')); $oDocument = $oDocumentModel->getDocument($this->get('document_srl'));
if($oDocument->isGranted()) { if($oDocument->isGranted()) {
$this->setAccessible(); $this->setAccessible();
return true; return true;
} }
return false; return false;
} }
function useNotify() { function useNotify() {
return $this->get('notify_message')=='Y' ? true : false; return $this->get('notify_message')=='Y' ? true : false;
} }
function notify($type, $content) { function notify($type, $content) {
// useNotify가 아니면 return // useNotify가 아니면 return
if(!$this->useNotify()) return; if(!$this->useNotify()) return;
// 글쓴이가 로그인 유저가 아니면 패스~ // 글쓴이가 로그인 유저가 아니면 패스~
if(!$this->get('member_srl')) return; if(!$this->get('member_srl')) return;
// 현재 로그인한 사용자와 글을 쓴 사용자를 비교하여 동일하면 return // 현재 로그인한 사용자와 글을 쓴 사용자를 비교하여 동일하면 return
$logged_info = Context::get('logged_info'); $logged_info = Context::get('logged_info');
if($logged_info->member_srl == $this->get('member_srl')) return; if($logged_info->member_srl == $this->get('member_srl')) return;
// 원본글의 주소를 구함 // 원본글의 주소를 구함
$oDocumentModel = &getModel('document'); $oDocumentModel = &getModel('document');
$oDocument = $oDocumentModel->getDocument($this->get('document_srl')); $oDocument = $oDocumentModel->getDocument($this->get('document_srl'));
// 변수 정리 // 변수 정리
if($type) $title = "[".$type."] "; if($type) $title = "[".$type."] ";
$title .= cut_str(strip_tags($content), 10, '...'); $title .= cut_str(strip_tags($content), 10, '...');
$content = sprintf('%s<br /><br />from : <a href="%s#comment_%s" onclick="window.open(this.href);return false;">%s</a>',$content, $oDocument->getPermanentUrl(), $this->get('comment_srl'), $oDocument->getPermanentUrl()); $content = sprintf('%s<br /><br />from : <a href="%s#comment_%s" onclick="window.open(this.href);return false;">%s</a>',$content, $oDocument->getPermanentUrl(), $this->get('comment_srl'), $oDocument->getPermanentUrl());
$receiver_srl = $this->get('member_srl'); $receiver_srl = $this->get('member_srl');
$sender_member_srl = $logged_info->member_srl; $sender_member_srl = $logged_info->member_srl;
// 쪽지 발송 // 쪽지 발송
$oCommunicationController = &getController('communication'); $oCommunicationController = &getController('communication');
$oCommunicationController->sendMessage($sender_member_srl, $receiver_srl, $title, $content, false); $oCommunicationController->sendMessage($sender_member_srl, $receiver_srl, $title, $content, false);
} }
function getIpaddress() { function getIpaddress() {
if($this->isGranted()) return $this->get('ipaddress'); if($this->isGranted()) return $this->get('ipaddress');
return preg_replace('/([0-9]+)\.([0-9]+)\.([0-9]+)\.([0-9]+)/','*.$2.$3.$4', $this->get('ipaddress')); return preg_replace('/([0-9]+)\.([0-9]+)\.([0-9]+)\.([0-9]+)/','*.$2.$3.$4', $this->get('ipaddress'));
} }
function isExistsHomepage() { function isExistsHomepage() {
if(trim($this->get('homepage'))) return true; if(trim($this->get('homepage'))) return true;
return false; return false;
} }
function getHomepageUrl() { function getHomepageUrl() {
$url = trim($this->get('homepage')); $url = trim($this->get('homepage'));
if(!$url) return; if(!$url) return;
if(!preg_match("/^http:\/\//i",$url)) $url = "http://".$url; if(!preg_match("/^http:\/\//i",$url)) $url = "http://".$url;
return $url; return $url;
} }
function getMemberSrl() { function getMemberSrl() {
return $this->get('member_srl'); return $this->get('member_srl');
} }
function getUserID() { function getUserID() {
return htmlspecialchars($this->get('user_id')); return htmlspecialchars($this->get('user_id'));
} }
function getUserName() { function getUserName() {
return htmlspecialchars($this->get('user_name')); return htmlspecialchars($this->get('user_name'));
} }
function getNickName() { function getNickName() {
return htmlspecialchars($this->get('nick_name')); return htmlspecialchars($this->get('nick_name'));
} }
function getContentText($strlen = 0) { function getContentText($strlen = 0) {
if($this->isSecret() && !$this->isAccessible()) return Context::getLang('msg_is_secret'); if($this->isSecret() && !$this->isAccessible()) return Context::getLang('msg_is_secret');
$content = $this->get('content'); $content = $this->get('content');
if($strlen) return cut_str(strip_tags($content),$strlen,'...'); if($strlen) return cut_str(strip_tags($content),$strlen,'...');
return htmlspecialchars($content); return htmlspecialchars($content);
} }
function getContent($add_popup_menu = true, $add_content_info = true) { function getContent($add_popup_menu = true, $add_content_info = true) {
if($this->isSecret() && !$this->isAccessible()) return Context::getLang('msg_is_secret'); if($this->isSecret() && !$this->isAccessible()) return Context::getLang('msg_is_secret');
$content = $this->get('content'); $content = $this->get('content');
// url에 대해서 정규표현식으로 치환 // url에 대해서 정규표현식으로 치환
//$content = preg_replace('!([^>^"^\'^=])(http|https|ftp|mms):\/\/([^ ^<^"^\']*)!is','$1<a href="$2://$3" onclick="window.open(this.href);return false;">$2://$3</a>',' '.$content); //$content = preg_replace('!([^>^"^\'^=])(http|https|ftp|mms):\/\/([^ ^<^"^\']*)!is','$1<a href="$2://$3" onclick="window.open(this.href);return false;">$2://$3</a>',' '.$content);
// 이 댓글을... 팝업메뉴를 출력할 경우 // 이 댓글을... 팝업메뉴를 출력할 경우
if($add_popup_menu && Context::get('is_logged') ) { if($add_popup_menu && Context::get('is_logged') ) {
$content = sprintf( $content = sprintf(
'%s<div class="comment_popup_menu"><span class="comment_%d">%s</span></div>', '%s<div class="comment_popup_menu"><a href="#popup_menu_area" class="comment_%d">%s</a></div>',
$content, $content,
$this->comment_srl, Context::getLang('cmd_comment_do') $this->comment_srl, Context::getLang('cmd_comment_do')
); );
} }
// 컨텐츠에 대한 조작이 가능한 추가 정보를 설정하였을 경우 // 컨텐츠에 대한 조작이 가능한 추가 정보를 설정하였을 경우
if($add_content_info) { if($add_content_info) {
$content = sprintf( $content = sprintf(
'<!--BeforeComment(%d,%d)--><div class="comment_%d_%d xe_content">%s</div><!--AfterComment(%d,%d)-->', '<!--BeforeComment(%d,%d)--><div class="comment_%d_%d xe_content">%s</div><!--AfterComment(%d,%d)-->',
$this->comment_srl, $this->get('member_srl'), $this->comment_srl, $this->get('member_srl'),
$this->comment_srl, $this->get('member_srl'), $this->comment_srl, $this->get('member_srl'),
$content, $content,
$this->comment_srl, $this->get('member_srl') $this->comment_srl, $this->get('member_srl')
); );
// 컨텐츠에 대한 조작이 필요하지 않더라도 xe_content라는 클래스명을 꼭 부여 // 컨텐츠에 대한 조작이 필요하지 않더라도 xe_content라는 클래스명을 꼭 부여
} else { } else {
$content = sprintf('<div class="xe_content">%s</div>', $content); $content = sprintf('<div class="xe_content">%s</div>', $content);
} }
return $content; return $content;
} }
function getSummary($str_size = 50) { function getSummary($str_size = 50) {
// 먼저 태그들을 제거함 // 먼저 태그들을 제거함
$content = preg_replace('!<([^>]*?)>!is','', $this->getContent(false,false)); $content = preg_replace('!<([^>]*?)>!is','', $this->getContent(false,false));
// < , > , " 를 치환 // < , > , " 를 치환
$content = str_replace(array('&lt;','&gt;','&quot;','&nbsp;'), array('<','>','"',' '), $content); $content = str_replace(array('&lt;','&gt;','&quot;','&nbsp;'), array('<','>','"',' '), $content);
// 문자열을 자름 // 문자열을 자름
$content = trim(cut_str($content, $str_size, '...')); $content = trim(cut_str($content, $str_size, '...'));
// >, <, "를 다시 복구 // >, <, "를 다시 복구
return str_replace(array('<','>','"'),array('&lt;','&gt;','&quot;'), $content); return str_replace(array('<','>','"'),array('&lt;','&gt;','&quot;'), $content);
} }
function getRegdate($format = 'Y.m.d H:i:s') { function getRegdate($format = 'Y.m.d H:i:s') {
return zdate($this->get('regdate'), $format); return zdate($this->get('regdate'), $format);
} }
function getRegdateTime() { function getRegdateTime() {
$regdate = $this->get('regdate'); $regdate = $this->get('regdate');
$year = substr($regdate,0,4); $year = substr($regdate,0,4);
$month = substr($regdate,4,2); $month = substr($regdate,4,2);
$day = substr($regdate,6,2); $day = substr($regdate,6,2);
$hour = substr($regdate,8,2); $hour = substr($regdate,8,2);
$min = substr($regdate,10,2); $min = substr($regdate,10,2);
$sec = substr($regdate,12,2); $sec = substr($regdate,12,2);
return mktime($hour,$min,$sec,$month,$day,$year); return mktime($hour,$min,$sec,$month,$day,$year);
} }
function getRegdateGM() { function getRegdateGM() {
return $this->getRegdate('D, d M Y H:i:s').' '.$GLOBALS['_time_zone']; return $this->getRegdate('D, d M Y H:i:s').' '.$GLOBALS['_time_zone'];
} }
function getUpdate($format = 'Y.m.d H:i:s') { function getUpdate($format = 'Y.m.d H:i:s') {
return zdate($this->get('last_update'), $format); return zdate($this->get('last_update'), $format);
} }
function getUpdateTime() { function getUpdateTime() {
$year = substr($this->get('last_update'),0,4); $year = substr($this->get('last_update'),0,4);
$month = substr($this->get('last_update'),4,2); $month = substr($this->get('last_update'),4,2);
$day = substr($this->get('last_update'),6,2); $day = substr($this->get('last_update'),6,2);
$hour = substr($this->get('last_update'),8,2); $hour = substr($this->get('last_update'),8,2);
$min = substr($this->get('last_update'),10,2); $min = substr($this->get('last_update'),10,2);
$sec = substr($this->get('last_update'),12,2); $sec = substr($this->get('last_update'),12,2);
return mktime($hour,$min,$sec,$month,$day,$year); return mktime($hour,$min,$sec,$month,$day,$year);
} }
function getUpdateGM() { function getUpdateGM() {
return gmdate("D, d M Y H:i:s", $this->getUpdateTime()); return gmdate("D, d M Y H:i:s", $this->getUpdateTime());
} }
function hasUploadedFiles() { function hasUploadedFiles() {
if($this->isSecret() && !$this->isGranted()) return false; if($this->isSecret() && !$this->isGranted()) return false;
return $this->get('uploaded_count')? true : false; return $this->get('uploaded_count')? true : false;
} }
function getUploadedFiles() { function getUploadedFiles() {
if($this->isSecret() && !$this->isGranted()) return; if($this->isSecret() && !$this->isGranted()) return;
if(!$this->get('uploaded_count')) return; if(!$this->get('uploaded_count')) return;
$oFileModel = &getModel('file'); $oFileModel = &getModel('file');
$file_list = $oFileModel->getFiles($this->comment_srl, $is_admin); $file_list = $oFileModel->getFiles($this->comment_srl, $is_admin);
return $file_list; return $file_list;
} }
/** /**
* @brief 에디터 html을 구해서 return * @brief 에디터 html을 구해서 return
**/ **/
function getEditor() { function getEditor() {
$module_srl = $this->get('module_srl'); $module_srl = $this->get('module_srl');
if(!$module_srl) $module_srl = Context::get('module_srl'); if(!$module_srl) $module_srl = Context::get('module_srl');
$oEditorModel = &getModel('editor'); $oEditorModel = &getModel('editor');
return $oEditorModel->getModuleEditor('comment', $module_srl, $this->comment_srl, 'comment_srl', 'content'); return $oEditorModel->getModuleEditor('comment', $module_srl, $this->comment_srl, 'comment_srl', 'content');
} }
/** /**
* @brief 작성자의 프로필 이미지를 return * @brief 작성자의 프로필 이미지를 return
**/ **/
function getProfileImage() { function getProfileImage() {
if(!$this->isExists() || !$this->get('member_srl')) return; if(!$this->isExists() || !$this->get('member_srl')) return;
$oMemberModel = &getModel('member'); $oMemberModel = &getModel('member');
$profile_info = $oMemberModel->getProfileImage($this->get('member_srl')); $profile_info = $oMemberModel->getProfileImage($this->get('member_srl'));
if(!$profile_info) return; if(!$profile_info) return;
return $profile_info->src; return $profile_info->src;
} }
/** /**
* @brief 작성자의 서명을 return * @brief 작성자의 서명을 return
**/ **/
function getSignature() { function getSignature() {
// 존재하지 않는 글이면 패스~ // 존재하지 않는 글이면 패스~
if(!$this->isExists() || !$this->get('member_srl')) return; if(!$this->isExists() || !$this->get('member_srl')) return;
// 서명정보를 구함 // 서명정보를 구함
$oMemberModel = &getModel('member'); $oMemberModel = &getModel('member');
$signature = $oMemberModel->getSignature($this->get('member_srl')); $signature = $oMemberModel->getSignature($this->get('member_srl'));
// 회원모듈에서 서명 최고 높이 지정되었는지 검사 // 회원모듈에서 서명 최고 높이 지정되었는지 검사
if(!isset($GLOBALS['__member_signature_max_height'])) { if(!isset($GLOBALS['__member_signature_max_height'])) {
$oModuleModel = &getModel('module'); $oModuleModel = &getModel('module');
$member_config = $oModuleModel->getModuleConfig('member'); $member_config = $oModuleModel->getModuleConfig('member');
$GLOBALS['__member_signature_max_height'] = $member_config->signature_max_height; $GLOBALS['__member_signature_max_height'] = $member_config->signature_max_height;
} }
$max_signature_height = $GLOBALS['__member_signature_max_height']; $max_signature_height = $GLOBALS['__member_signature_max_height'];
if($max_signature_height) $signature = sprintf('<div style="max-height:%dpx;overflow:auto;overflow-x:hidden;height:expression(this.scrollHeight > %d ? \'%dpx\': \'auto\')">%s</div>', $max_signature_height, $max_signature_height, $max_signature_height, $signature); if($max_signature_height) $signature = sprintf('<div style="max-height:%dpx;overflow:auto;overflow-x:hidden;height:expression(this.scrollHeight > %d ? \'%dpx\': \'auto\')">%s</div>', $max_signature_height, $max_signature_height, $max_signature_height, $signature);
return $signature; return $signature;
} }
} }
?> ?>

File diff suppressed because it is too large Load diff