mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-25 06:09:55 +09:00
sandbox를 beta.0.2.2배포를 위해 trunk로 copy
git-svn-id: http://xe-core.googlecode.com/svn/trunk@2784 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
commit
2721e96083
64 changed files with 757 additions and 230 deletions
|
|
@ -75,7 +75,7 @@
|
|||
|
||||
// 4. 자신의 쪽지함 보기 기능 추가
|
||||
$menu_str = Context::getLang('cmd_view_message_box');
|
||||
$menu_link = "current_url.setQuery('act','dispMemberMessages')";
|
||||
$menu_link = "current_url.setQuery('act','dispMemberMessages').setQuery('message_type','')";
|
||||
$menu_list .= sprintf("\n%s,%s,move_url(%s,'Y')", Context::getRequestUri().'/modules/member/tpl/images/icon_message_box.gif', $menu_str, $menu_link);
|
||||
|
||||
// 5. 친구 목록 보기
|
||||
|
|
|
|||
|
|
@ -167,6 +167,8 @@
|
|||
if(file_exists($db_config_file)) @include($db_config_file);
|
||||
|
||||
if(!$db_info->time_zone) $db_info->time_zone = date("O");
|
||||
if(!$db_info->use_optimizer || $db_info->use_optimizer != 'N') $db_info->use_optimizer = 'Y';
|
||||
else $db_info->use_optimizer = 'N';
|
||||
|
||||
$this->_setDBInfo($db_info);
|
||||
|
||||
|
|
@ -364,8 +366,6 @@
|
|||
return $obj->str;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @brief response method를 강제로 지정 (기본으로는 request method를 이용함)
|
||||
*
|
||||
|
|
|
|||
113
classes/mail/Mail.class.php
Normal file
113
classes/mail/Mail.class.php
Normal file
|
|
@ -0,0 +1,113 @@
|
|||
<?php
|
||||
/**
|
||||
* @brief 메일 발송
|
||||
* @author zero (zero@zeroboard.com)
|
||||
**/
|
||||
|
||||
class Mail {
|
||||
|
||||
var $sender_name = '';
|
||||
var $sender_email = '';
|
||||
var $receiptor_name = '';
|
||||
var $receiptor_email = '';
|
||||
var $title = '';
|
||||
var $content = '';
|
||||
var $content_type = 'html';
|
||||
|
||||
function Mail() { }
|
||||
|
||||
function setSender($name, $email) {
|
||||
$this->sender_name = $name;
|
||||
$this->sender_email = $email;
|
||||
}
|
||||
|
||||
function getSender() {
|
||||
if($this->sender_name) return sprintf("%s <%s>", '=?utf-8?b?'.base64_encode($this->sender_name).'?=', $this->sender_email);
|
||||
return $this->sender_email;
|
||||
}
|
||||
|
||||
function setReceiptor($name, $email) {
|
||||
$this->receiptor_name = $name;
|
||||
$this->receiptor_email = $email;
|
||||
}
|
||||
|
||||
function getReceiptor() {
|
||||
if($this->receiptor_name) return sprintf("%s <%s>", '=?utf-8?b?'.base64_encode($this->receiptor_name).'?=', $this->receiptor_email);
|
||||
return $this->receiptor_email;
|
||||
}
|
||||
|
||||
function setTitle($title) {
|
||||
$this->title = $title;
|
||||
}
|
||||
|
||||
function getTitle() {
|
||||
return '=?utf-8?b?'.base64_encode($this->title).'?=';
|
||||
}
|
||||
|
||||
function setContent($content) {
|
||||
$this->content = $content;
|
||||
}
|
||||
|
||||
function getPlainContent() {
|
||||
return chunk_split(base64_encode(str_replace(array("<",">","&"), array("<",">","&"), $this->content)));
|
||||
}
|
||||
|
||||
function getHTMLContent() {
|
||||
return chunk_split(base64_encode($this->content_type=='html'?nl2br($this->content):$this->content));
|
||||
}
|
||||
|
||||
function setContentType($mode = 'html') {
|
||||
$this->content_type = $mode=='html'?'html':'';
|
||||
}
|
||||
|
||||
function send() {
|
||||
$boundary = '----=='.uniqid(rand(),true);
|
||||
|
||||
$headers = sprintf(
|
||||
"From: %s\r\n".
|
||||
"MIME-Version: 1.0\r\n".
|
||||
"Content-Type: multipart/alternative;\r\n\tboundary=\"%s\"\r\n\r\n".
|
||||
"",
|
||||
$this->getSender(),
|
||||
$boundary
|
||||
);
|
||||
|
||||
$body = sprintf(
|
||||
"--%s\r\n".
|
||||
"Content-Type: text/plain; charset=utf-8; format=flowed\r\n".
|
||||
"Content-Transfer-Encoding: base64\r\n".
|
||||
"Content-Disposition: inline\r\n\r\n".
|
||||
"%s".
|
||||
"--%s\r\n".
|
||||
"Content-Type: text/html; charset=utf-8\r\n".
|
||||
"Content-Transfer-Encoding: base64\r\n".
|
||||
"Content-Disposition: inline\r\n\r\n".
|
||||
"%s".
|
||||
"--%s--".
|
||||
"",
|
||||
$boundary,
|
||||
$this->getPlainContent(),
|
||||
$boundary,
|
||||
$this->getHTMLContent(),
|
||||
$boundary
|
||||
);
|
||||
|
||||
return mail($this->getReceiptor(), $this->getTitle(), $body, $headers);
|
||||
}
|
||||
|
||||
function checkMailMX($email_address) {
|
||||
if(!Mail::isVaildMailAddress($email_address)) return false;
|
||||
list($user, $host) = explode("@", $email_address);
|
||||
if(function_exists('checkdnsrr')) {
|
||||
if (checkdnsrr($host, "MX") or checkdnsrr($host, "A")) return true;
|
||||
else return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function isVaildMailAddress($email_address) {
|
||||
if( eregi("([a-z0-9\_\-\.]+)@([a-z0-9\_\-\.]+)", $email_address) ) return $email_address;
|
||||
else return '';
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
@ -26,6 +26,11 @@
|
|||
* @brief optimize 대상 파일을 받아서 처리 후 optimize 된 파일이름을 return
|
||||
**/
|
||||
function getOptimizedFiles($source_files, $type = "js") {
|
||||
if(!is_array($source_files) || !count($source_files)) return;
|
||||
|
||||
// $source_files의 역슬래쉬 경로를 슬래쉬로 변경 (윈도우즈 대비)
|
||||
foreach($source_files as $key => $file) $source_files[$key] = str_replace("\\","/",$file);
|
||||
|
||||
// 관리자 설정시 설정이 되어 있지 않으면 패스
|
||||
$db_info = Context::getDBInfo();
|
||||
if($db_info->use_optimizer == 'N') return $source_files;
|
||||
|
|
@ -69,11 +74,9 @@
|
|||
function doOptimizedFile($filename, $targets, $type) {
|
||||
if(!file_exists($filename)) return $this->makeOptimizedFile($filename, $targets, $type);
|
||||
|
||||
$file_count = count($targets);
|
||||
|
||||
$mtime = filemtime($filename);
|
||||
for($i=0;$i<$file_count;$i++) {
|
||||
if($mtime < filemtime($targets[$i])) return $this->makeOptimizedFile($filename, $targets, $type);
|
||||
foreach($targets as $file) {
|
||||
if($mtime < filemtime($file)) return $this->makeOptimizedFile($filename, $targets, $type);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -85,9 +88,7 @@
|
|||
* 실제 css나 js의 내용을 합친 것을 구함
|
||||
**/
|
||||
// 대상 파일의 내용을 구해오고 css 파일일 경우 url()내의 경로를 변경
|
||||
$file_count = count($targets);
|
||||
for($i=0;$i<$file_count;$i++) {
|
||||
$file = $targets[$i];
|
||||
foreach($targets as $file) {
|
||||
$str = FileHandler::readFile($file);
|
||||
|
||||
$str = Context::convertEncodingStr($str);
|
||||
|
|
@ -108,8 +109,6 @@
|
|||
* 압축을 지원하고 캐시 타임을 제대로 이용하기 위한 헤더 파일 구함
|
||||
**/
|
||||
// php의 헤더파일 생성
|
||||
$modified_time = gmdate("D, d M Y H:i:s");
|
||||
|
||||
// gzip 압축 체크
|
||||
if($type!="css" && Context::isGzEnabled()) $gzip_header = 'header("Content-Encoding: gzip");';
|
||||
|
||||
|
|
@ -120,10 +119,15 @@
|
|||
$header_buff = <<<EndOfBuff
|
||||
<?php
|
||||
header("Content-Type: {$content_type}; charset=UTF-8");
|
||||
header("Last-Modified: {$modified_time} GMT");
|
||||
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
|
||||
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
|
||||
header("Cache-Control: no-store, no-cache, must-revalidate");
|
||||
header("Cache-Control: post-check=0, pre-check=0", false);
|
||||
header("Pragma: no-cache");
|
||||
header("Content-Length: ".filesize('{$content_filename}'));
|
||||
{$gzip_header}
|
||||
if(@file_exists("{$content_filename}")) {
|
||||
@fpassthru(fopen("{$content_filename}", "rb"));
|
||||
@fpassthru(fopen("{$content_filename}", "r"));
|
||||
}
|
||||
exit();
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ IE7 & IE6 & Below
|
|||
.tRight { text-align:right; }
|
||||
.tLeft { text-align:left; }
|
||||
.gap1 { margin-top:.8em; }
|
||||
.nowrap { white-space:nowrap; }
|
||||
|
||||
/* default.css - Type Selector Definition */
|
||||
* { margin:0; padding:0; }
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ function filterAlertMessage(ret_obj) {
|
|||
var redirect_url = ret_obj["redirect_url"];
|
||||
var url = location.href;
|
||||
|
||||
if(url.substr(-1)=="#") url = url.substr(0,url.length-1);
|
||||
if(url.substr(url.length-1,1)=="#") url = url.substr(0,url.length-1);
|
||||
|
||||
if(typeof(message)!="undefined"&&message&&message!="success") alert(message);
|
||||
|
||||
|
|
|
|||
|
|
@ -37,6 +37,7 @@
|
|||
$lang->cmd_select = '选择';
|
||||
$lang->cmd_select_all = '全部选择';
|
||||
$lang->cmd_unselect_all = '全部解除';
|
||||
$lang->cmd_reverse_all = "反选";
|
||||
$lang->cmd_close_all = '全部折叠';
|
||||
$lang->cmd_open_all = '全部展开';
|
||||
$lang->cmd_reload = '从新载入';
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
* 이 내용은 제로보드XE의 버전을 관리자 페이지에 표시하기 위한 용도이며
|
||||
* config.inc.php의 수정이 없더라도 공식 릴리즈시에 수정되어 함께 배포되어야 함
|
||||
**/
|
||||
define('__ZBXE_VERSION__', '0.2.1');
|
||||
define('__ZBXE_VERSION__', '0.2.2');
|
||||
|
||||
/**
|
||||
* @brief 디버깅 메세지 출력
|
||||
|
|
@ -81,6 +81,7 @@
|
|||
require_once("./classes/module/ModuleHandler.class.php");
|
||||
require_once("./classes/display/DisplayHandler.class.php");
|
||||
require_once("./classes/template/TemplateHandler.class.php");
|
||||
require_once("./classes/mail/Mail.class.php");
|
||||
if(__DEBUG__) $GLOBALS['__elapsed_class_load__'] = getMicroTime() - __ClassLosdStartTime__;
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@ Jeong, Chan Myeong 070601~070630
|
|||
.boardList td .thumbnailMedium img { border:1px solid #e0e1db; padding:3px;}
|
||||
|
||||
.thumbnailBox { border-top:none; border-bottom:1px solid #eff0ed; padding:1.5em 0 0 1.5em; overflow:hidden; padding-bottom:1em;}
|
||||
.thumbnailBox div.cell { display:block; float:left; overflow:hidden; margin-bottom:1em;}
|
||||
.thumbnailBox div.cell { display:block; float:left; overflow:hidden; margin-bottom:1em; margin-right:1em;}
|
||||
.thumbnailBox div.cell img.thumb { padding:2px; border:1px solid #e0e1db; display:block; margin-bottom:1em; margin-left:auto;margin-right:auto;}
|
||||
.thumbnailBox div.title { color:#3B96C0; margin-bottom:.2em; overflow:hidden; white-space:nowrap; text-align:center;}
|
||||
.thumbnailBox div.title a { color:#3B96C0; text-decoration:none;}
|
||||
|
|
@ -130,7 +130,7 @@ Jeong, Chan Myeong 070601~070630
|
|||
.boardRead .titleAndCategory { float:left;}
|
||||
.boardRead .titleAndCategory h4 { font-size:1.4em; display:inline; padding-left:.2em;}
|
||||
.boardRead .titleAndCategory .vr { font-size:.9em; margin:0 .3em; color:#c5c7c0;}
|
||||
.boardRead .titleAndCategory .cotegory { font-size:.9em; color:#999999; white-space:nowrap;}
|
||||
.boardRead .titleAndCategory .category { font-size:.9em; color:#999999; white-space:nowrap;}
|
||||
|
||||
.boardRead .dateAndModify { float:right; white-space:nowrap; font-size:.8em; color:#999999; position:relative;}
|
||||
.boardRead .dateAndModify strong { font-size:1em; font-family:Tahoma;}
|
||||
|
|
|
|||
|
|
@ -93,7 +93,7 @@
|
|||
</tbody>
|
||||
</table>
|
||||
|
||||
{@ $height = $module_info->thumbnail_height + 40; }
|
||||
{@ $height = $module_info->thumbnail_height + 50; }
|
||||
<!--@if($module_info->use_category=='Y')-->{@ $height += 20 }<!--@end-->
|
||||
<!--@if($module_info->display_author!='N' || $module_info->display_regdate!='N')-->{@ $height += 25 }<!--@end-->
|
||||
<!--@if($module_info->display_readed_count !='N' || $module_info->display_voted_count!='N')-->{@ $height += 25 }<!--@end-->
|
||||
|
|
@ -101,50 +101,53 @@
|
|||
|
||||
<div class="thumbnailBox">
|
||||
|
||||
<!--@foreach($document_list as $no => $document)-->
|
||||
<!--@if(!$document->isNotice())-->
|
||||
<div class="cellBox">
|
||||
|
||||
<div class="cell" style="width:{$module_info->thumbnail_width+30}px;height:{$height}px;">
|
||||
<!--@if($document->thumbnailExists($module_info->thumbnail_width, $module_info->thumbnail_height, $module_info->thumbnail_type))-->
|
||||
<a href="{getUrl('','document_srl',$document->document_srl)}"><img src="{$document->getThumbnail($module_info->thumbnail_width, $module_info->thumbnail_height, $module_info->thumbnail_type)}" border="0" alt="" class="thumb"/></a>
|
||||
<!--@else-->
|
||||
<img src="./images/blank.gif" border="0" alt="" class="thumb" width="{$module_info->thumbnail_width}" height="{$module_info->thumbnail_height}" />
|
||||
<!--@end-->
|
||||
<!--@foreach($document_list as $no => $document)-->
|
||||
<!--@if(!$document->isNotice())-->
|
||||
|
||||
<div class="title">
|
||||
<!--@if($module_info->use_category == "Y" && $document->get('category_srl'))-->
|
||||
<strong class="category">{$category_list[$document->get('category_srl')]->title}</strong><br />
|
||||
<div class="cell" style="width:{$module_info->thumbnail_width+30}px;height:{$height}px;">
|
||||
<!--@if($document->thumbnailExists($module_info->thumbnail_width, $module_info->thumbnail_height, $module_info->thumbnail_type))-->
|
||||
<a href="{getUrl('','document_srl',$document->document_srl)}"><img src="{$document->getThumbnail($module_info->thumbnail_width, $module_info->thumbnail_height, $module_info->thumbnail_type)}" border="0" alt="" class="thumb"/></a>
|
||||
<!--@else-->
|
||||
<img src="./images/blank.gif" border="0" alt="" class="thumb" width="{$module_info->thumbnail_width}" height="{$module_info->thumbnail_height}" />
|
||||
<!--@end-->
|
||||
|
||||
<!--@if($grant->is_admin)-->
|
||||
<input type="checkbox" name="cart" value="{$document->document_srl}" onclick="doAddDocumentCart(this)" <!--@if($document->isCarted())-->checked="checked"<!--@end--> />
|
||||
<!--@end-->
|
||||
<div class="title">
|
||||
<!--@if($module_info->use_category == "Y" && $document->get('category_srl'))-->
|
||||
<strong class="category">{$category_list[$document->get('category_srl')]->title}</strong><br />
|
||||
<!--@end-->
|
||||
|
||||
<a href="{getUrl('document_srl',$document->document_srl)}">{$document->getTitleText($module_info->subject_cut_size)}</a>
|
||||
<!--@if($grant->is_admin)-->
|
||||
<input type="checkbox" name="cart" value="{$document->document_srl}" onclick="doAddDocumentCart(this)" <!--@if($document->isCarted())-->checked="checked"<!--@end--> />
|
||||
<!--@end-->
|
||||
|
||||
<!--@if($document->getCommentCount())-->
|
||||
<span class="replyAndTrackback" title="Replies">(<strong>{$document->getCommentCount()}</strong>)</span>
|
||||
<!--@end-->
|
||||
<a href="{getUrl('document_srl',$document->document_srl)}">{$document->getTitleText($module_info->subject_cut_size)}</a>
|
||||
|
||||
<!--@if($document->getTrackbackCount())-->
|
||||
<span class="replyAndTrackback" title="Trackbacks">[<strong>{$document->getTrackbackCount()}</strong>]</span>
|
||||
<!--@end-->
|
||||
<!--@if($document->getCommentCount())-->
|
||||
<span class="replyAndTrackback" title="Replies">(<strong>{$document->getCommentCount()}</strong>)</span>
|
||||
<!--@end-->
|
||||
|
||||
<div class="nameAndDate">
|
||||
<!--@if($module_info->display_author!='N')--><div class="author"><div class="member_{$document->get('member_srl')}">{$document->getNickName()}</div></div><!--@end-->
|
||||
<!--@if($module_info->display_regdate!='N')--><div class="date">{$document->getRegdate('Y.m.d')}</div><!--@end-->
|
||||
<!--@if($document->getTrackbackCount())-->
|
||||
<span class="replyAndTrackback" title="Trackbacks">[<strong>{$document->getTrackbackCount()}</strong>]</span>
|
||||
<!--@end-->
|
||||
|
||||
<div class="nameAndDate">
|
||||
<!--@if($module_info->display_author!='N')--><div class="author"><div class="member_{$document->get('member_srl')}">{$document->getNickName()}</div></div><!--@end-->
|
||||
<!--@if($module_info->display_regdate!='N')--><div class="date">{$document->getRegdate('Y.m.d')}</div><!--@end-->
|
||||
</div>
|
||||
</div>
|
||||
<div class="readAndRecommend">
|
||||
<!--@if($module_info->display_readed_count!='N')-->{$lang->readed_count} <span class="num">{$document->get('readed_count')}</span><!--@end-->
|
||||
<!--@if($document->get('voted_count') && $module_info->display_voted_count!='N')-->
|
||||
<!--@if($module_info->display_readed_count!='N')--><br /><!--@end-->
|
||||
{$lang->voted_count} <strong class="num">{$document->get('voted_count')}</strong>
|
||||
<!--@end-->
|
||||
</div>
|
||||
</div>
|
||||
<div class="readAndRecommend">
|
||||
<!--@if($module_info->display_readed_count!='N')-->{$lang->readed_count} <span class="num">{$document->get('readed_count')}</span><!--@end-->
|
||||
<!--@if($document->get('voted_count') && $module_info->display_voted_count!='N')-->
|
||||
<!--@if($module_info->display_readed_count!='N')--><span class="vr">|</span> <!--@end-->
|
||||
{$lang->voted_count} <strong class="num">{$document->get('voted_count')}</strong>
|
||||
<!--@end-->
|
||||
</div>
|
||||
<!--@end-->
|
||||
<!--@end-->
|
||||
</div>
|
||||
<!--@end-->
|
||||
<!--@end-->
|
||||
</div>
|
||||
</form>
|
||||
|
||||
|
|
|
|||
|
|
@ -117,18 +117,24 @@
|
|||
</var>
|
||||
<var name="thumbnail_type" type="select">
|
||||
<title xml:lang="ko">썸네일 생성 방법</title>
|
||||
<title xml:lang="zh-CN">缩略图生成方式</title>
|
||||
<description xml:lang="ko">썸네일 생성 방법을 선택할 수 있습니다. (crop : 꽉 채우기, ratio : 비율 맞추기)</description>
|
||||
<description xml:lang="zh-CN">可以选择缩略图生成方式。 (crop : 裁减, ratio : 比例)</description>
|
||||
<default>crop</default>
|
||||
<default>ratio</default>
|
||||
</var>
|
||||
<var name="thumbnail_width" type="text">
|
||||
<title xml:lang="ko">썸네일 가로크기</title>
|
||||
<title xml:lang="zh-CN">缩略图宽度</title>
|
||||
<description xml:lang="ko">썸네일의 가로 크기를 지정할 수 있습니다. (기본 100px)</description>
|
||||
<description xml:lang="zh-CN">可以指定缩略图宽度。 (默认为 100px)</description>
|
||||
<default>100</default>
|
||||
</var>
|
||||
<var name="thumbnail_height" type="text">
|
||||
<title xml:lang="ko">썸네일 세로크기</title>
|
||||
<title xml:lang="zh-CN">缩略图高度</title>
|
||||
<description xml:lang="ko">썸네일의 세로 크기를 지정할 수 있습니다. (기본 100px)</description>
|
||||
<description xml:lang="zh-CN">可以指定缩略图高度。 (默认为 100px)</description>
|
||||
<default>100</default>
|
||||
</var>
|
||||
<var name="display_author" type="select">
|
||||
|
|
|
|||
|
|
@ -130,7 +130,7 @@ Jeong, Chan Myeong 070601~070630
|
|||
.boardRead .titleAndCategory { float:left;}
|
||||
.boardRead .titleAndCategory h4 { font-size:1.4em; display:inline; padding-left:.2em;}
|
||||
.boardRead .titleAndCategory .vr { font-size:.9em; margin:0 .3em; color:#c5c7c0;}
|
||||
.boardRead .titleAndCategory .cotegory { font-size:.9em; color:#999999; white-space:nowrap;}
|
||||
.boardRead .titleAndCategory .category { font-size:.9em; color:#999999; white-space:nowrap;}
|
||||
|
||||
.boardRead .dateAndModify { float:right; white-space:nowrap; font-size:.8em; color:#999999; position:relative;}
|
||||
.boardRead .dateAndModify strong { font-size:1em; font-family:Tahoma;}
|
||||
|
|
|
|||
|
|
@ -135,7 +135,7 @@ Jeong, Chan Myeong 070601~070630
|
|||
.boardRead .titleAndCategory { float:left;}
|
||||
.boardRead .titleAndCategory h4 { font-size:1.4em; display:inline; padding-left:.2em;}
|
||||
.boardRead .titleAndCategory .vr { font-size:.9em; margin:0 .3em; color:#c5c7c0;}
|
||||
.boardRead .titleAndCategory .cotegory { font-size:.9em; color:#999999; white-space:nowrap;}
|
||||
.boardRead .titleAndCategory .category { font-size:.9em; color:#999999; white-space:nowrap;}
|
||||
|
||||
.boardRead .dateAndModify { float:right; white-space:nowrap; font-size:.8em; color:#999999; position:relative;}
|
||||
.boardRead .dateAndModify strong { font-size:1em; font-family:Tahoma;}
|
||||
|
|
|
|||
|
|
@ -126,18 +126,24 @@
|
|||
</var>
|
||||
<var name="thumbnail_type" type="select">
|
||||
<title xml:lang="ko">썸네일 생성 방법</title>
|
||||
<title xml:lang="zh-CN">缩略图生成方式</title>
|
||||
<description xml:lang="ko">썸네일 생성 방법을 선택할 수 있습니다. (crop : 꽉 채우기, ratio : 비율 맞추기)</description>
|
||||
<description xml:lang="zh-CN">可以选择缩略图生成方式。 (crop : 裁减, ratio : 比例)</description>
|
||||
<default>crop</default>
|
||||
<default>ratio</default>
|
||||
</var>
|
||||
<var name="thumbnail_width" type="text">
|
||||
<title xml:lang="ko">썸네일 가로크기</title>
|
||||
<title xml:lang="zh-CN">缩略图宽度</title>
|
||||
<description xml:lang="ko">썸네일의 가로 크기를 지정할 수 있습니다. (기본 100px)</description>
|
||||
<description xml:lang="zh-CN">可以指定缩略图宽度。 (默认为 100px)</description>
|
||||
<default>100</default>
|
||||
</var>
|
||||
<var name="thumbnail_height" type="text">
|
||||
<title xml:lang="ko">썸네일 세로크기</title>
|
||||
<title xml:lang="zh-CN">缩略图高度</title>
|
||||
<description xml:lang="ko">썸네일의 세로 크기를 지정할 수 있습니다. (기본 100px)</description>
|
||||
<description xml:lang="zh-CN">可以指定缩略图高度。 (默认为 100px)</description>
|
||||
<default>100</default>
|
||||
</var>
|
||||
<var name="display_number" type="select">
|
||||
|
|
|
|||
|
|
@ -34,7 +34,6 @@
|
|||
// document model 객체 생성
|
||||
$oDocumentModel = &getModel('document');
|
||||
|
||||
|
||||
// 원본글을 가져옴
|
||||
if(!$manual_inserted) {
|
||||
$oDocument = $oDocumentModel->getDocument($document_srl);
|
||||
|
|
|
|||
|
|
@ -213,6 +213,8 @@
|
|||
$obj->document_srl = getNextSequence();
|
||||
$obj->category_srl = $category_srl;
|
||||
$obj->password_is_hashed = true;
|
||||
$obj->comment_count = 0;
|
||||
$obj->trackback_count = 0;
|
||||
|
||||
// 첨부파일 미리 등록
|
||||
if($oDocument->hasUploadedFiles()) {
|
||||
|
|
|
|||
|
|
@ -213,7 +213,7 @@
|
|||
}
|
||||
|
||||
function getSummary($str_size = 50) {
|
||||
$content = htmlspecialchars(strip_tags($this->getContent()));
|
||||
$content = htmlspecialchars(strip_tags(str_replace(" "," ",$this->getContent())));
|
||||
return cut_str($content, $str_size, '...');
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -5,11 +5,11 @@
|
|||
* @brief 文章(document)模块语言包
|
||||
**/
|
||||
|
||||
$lang->document_list = 'Document list';
|
||||
$lang->thumbnail_type = 'Thumbnail Type';
|
||||
$lang->thumbnail_crop = 'Crop';
|
||||
$lang->thumbnail_ratio = 'Ratio';
|
||||
$lang->cmd_delete_all_thumbnail = 'Delete all thumbnails';
|
||||
$lang->document_list = '主题目录';
|
||||
$lang->thumbnail_type = '缩略图生成方式';
|
||||
$lang->thumbnail_crop = '裁减';
|
||||
$lang->thumbnail_ratio = '比例';
|
||||
$lang->cmd_delete_all_thumbnail = '删除全部缩略图';
|
||||
$lang->move_target_module = "移动目标模块";
|
||||
|
||||
$lang->cmd_toggle_checked_document = '反选';
|
||||
|
|
|
|||
|
|
@ -75,6 +75,9 @@
|
|||
if($use_folder == "Y") {
|
||||
$folder_id = rand(1000000,9999999);
|
||||
|
||||
$folder_opener = str_replace("&","&",$folder_opener);
|
||||
$folder_closer = str_replace("&","&",$folder_closer);
|
||||
|
||||
if($bold == "Y") $class = "bold";
|
||||
switch($color) {
|
||||
case "red" :
|
||||
|
|
|
|||
|
|
@ -15,8 +15,8 @@ function getQuotation() {
|
|||
var use_folder = node.getAttribute("use_folder");
|
||||
var folder_opener = node.getAttribute("folder_opener");
|
||||
var folder_closer = node.getAttribute("folder_closer");
|
||||
if(folder_opener) folder_opener = folder_opener.replace(/&/g,'&').replace(/>/g,'>').replace(/</,'<').replace(/"/,'"');
|
||||
if(folder_closer) folder_closer = folder_closer.replace(/&/g,'&').replace(/>/g,'>').replace(/</,'<').replace(/"/,'"');
|
||||
if(folder_opener) folder_opener = folder_opener.replace(/>/g,'>').replace(/</,'<').replace(/"/,'"');
|
||||
if(folder_closer) folder_closer = folder_closer.replace(/>/g,'>').replace(/</,'<').replace(/"/,'"');
|
||||
var bold = node.getAttribute("bold");
|
||||
var color = node.getAttribute("color");
|
||||
var margin = node.getAttribute("margin");
|
||||
|
|
@ -86,8 +86,8 @@ function insertQuotation() {
|
|||
var folder_closer = xGetElementById("quotation_closer").value;
|
||||
if(!folder_opener||!folder_closer) use_folder = "N";
|
||||
|
||||
folder_opener = folder_opener.replace(/&/g,'&').replace(/>/g,'>').replace(/</g,'<').replace(/"/g,'"');
|
||||
folder_closer = folder_closer.replace(/&/g,'&').replace(/>/g,'>').replace(/</g,'<').replace(/"/g,'"');
|
||||
folder_opener = folder_opener.replace(/>/g,'>').replace(/</g,'<').replace(/"/g,'"');
|
||||
folder_closer = folder_closer.replace(/>/g,'>').replace(/</g,'<').replace(/"/g,'"');
|
||||
|
||||
var bold = "N";
|
||||
if(xGetElementById("quotation_bold").checked) bold = "Y";
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@
|
|||
<action name="dispMemberOpenIDLeave" type="view" standalone="true" />
|
||||
<action name="dispMemberOwnDocument" type="view" standalone="true" />
|
||||
<action name="dispMemberScrappedDocument" type="view" standalone="true" />
|
||||
<action name="dispMemberFindAccount" type="view" standalone="true" />
|
||||
|
||||
<action name="dispMemberMessages" type="view" standalone="true" />
|
||||
<action name="dispMemberSendMessage" type="view" standalone="true" />
|
||||
|
|
@ -56,6 +57,9 @@
|
|||
<action name="procMemberScrapDocument" type="controller" standalone="true" />
|
||||
<action name="procMemberDeleteScrap" type="controller" standalone="true" />
|
||||
|
||||
<action name="procMemberFindAccount" type="controller" standalone="true" />
|
||||
<action name="procMemberAuthAccount" type="controller" standalone="true" />
|
||||
|
||||
<action name="procMemberAddFriend" type="controller" standalone="true" />
|
||||
<action name="procMemberMoveFriend" type="controller" standalone="true" />
|
||||
<action name="procMemberDeleteFriend" type="controller" standalone="true" />
|
||||
|
|
|
|||
|
|
@ -53,6 +53,12 @@
|
|||
$lang->current_password = 'Current Password';
|
||||
$lang->openid = 'OpenID';
|
||||
|
||||
$lang->webmaster_name = '웹마스터 이름';
|
||||
$lang->webmaster_email = '웹마스터 메일주소';
|
||||
|
||||
$lang->about_webmaster_name = '인증 메일이나 기타 사이트 관리시 사용될 웹마스터의 이름을 입력해주세요. (기본 : webmaster)';
|
||||
$lang->about_webmaster_email = '웹마스터의 메일 주소를 입력해주세요.';
|
||||
|
||||
$lang->search_target_list = array(
|
||||
'user_id' => 'ID',
|
||||
'user_name' => 'Name',
|
||||
|
|
@ -78,6 +84,7 @@
|
|||
$lang->cmd_modify_member_password = 'Change Password';
|
||||
$lang->cmd_view_member_info = 'Member Info';
|
||||
$lang->cmd_leave = 'Leave';
|
||||
$lang->cmd_find_member_account = 'Find Account Info';
|
||||
|
||||
$lang->cmd_member_list = 'Member List';
|
||||
$lang->cmd_module_config = 'Default Setting';
|
||||
|
|
@ -97,11 +104,19 @@
|
|||
$lang->cmd_add_friend_group = 'Add Friend Group';
|
||||
$lang->cmd_rename_friend_group = 'Change Name of Friend Group';
|
||||
|
||||
$lang->msg_email_not_exists = "Email address doesn't exists";
|
||||
|
||||
$lang->msg_alreay_scrapped = 'This article is already scrapped';
|
||||
|
||||
$lang->msg_cart_is_null = 'Please select the target';
|
||||
$lang->msg_checked_file_is_deleted = '%d attached files are deleted';
|
||||
|
||||
$lang->msg_find_account_title = 'Account Info';
|
||||
$lang->msg_find_account_info = '요청하신 계정 정보는 아래와 같습니다';
|
||||
$lang->msg_find_account_comment = '아래 링크를 클릭하시면 위에 적힌 비밀번호로 바뀌게 됩니다.<br />로그인 하신 후 비밀번호를 바꾸어주세요.';
|
||||
$lang->msg_auth_mail_sended = '%s 메일로 인증 정보를 담은 메일이 발송되었습니다. 메일을 확인하세요.';
|
||||
$lang->msg_success_authed = '인증이 정상적으로 되어 로그인 처리가 되었습니다. 꼭 인증 메일에 표시된 비밀번호를 이용하여 원하시는 비밀번호로 변경하세요.';
|
||||
|
||||
$lang->msg_no_message = 'There are no messages';
|
||||
$lang->message_received = 'You got a new message';
|
||||
|
||||
|
|
@ -172,4 +187,5 @@
|
|||
$lang->about_openid_leave = '오픈아이디의 탈퇴는 현 사이트에서의 회원 정보를 삭제하는 것입니다.<br />탈퇴 후 로그인하시면 새로 가입하시는 것으로 되어 작성한 글에 대한 권한을 가질 수 없게 됩니다';
|
||||
|
||||
$lang->about_member = "This is a module for creating/modifing/deleting members and managing group or join form.\nYou can manage members by creating new groups, and get additional information by managing join form";
|
||||
$lang->about_find_member_account = '아이디/ 비밀번호는 가입시 등록한 메일 주소로 알려드립니다<br />가입할때 등록하신 메일 주소를 입력하시고 "아이디/ 비밀번호 찾기" 버튼을 클릭해주세요.<br />';
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -53,6 +53,12 @@
|
|||
$lang->current_password = 'Contraseña actual';
|
||||
$lang->openid = 'OpenID';
|
||||
|
||||
$lang->webmaster_name = '웹마스터 이름';
|
||||
$lang->webmaster_email = '웹마스터 메일주소';
|
||||
|
||||
$lang->about_webmaster_name = '인증 메일이나 기타 사이트 관리시 사용될 웹마스터의 이름을 입력해주세요. (기본 : webmaster)';
|
||||
$lang->about_webmaster_email = '웹마스터의 메일 주소를 입력해주세요.';
|
||||
|
||||
$lang->search_target_list = array(
|
||||
'user_id' => 'ID',
|
||||
'user_name' => 'Nombre',
|
||||
|
|
@ -78,6 +84,7 @@
|
|||
$lang->cmd_modify_member_password = 'Cambiar la contraseña';
|
||||
$lang->cmd_view_member_info = 'Información del usuario';
|
||||
$lang->cmd_leave = 'Dejar de ser usuario';
|
||||
$lang->cmd_find_member_account = 'Find Account Info';
|
||||
|
||||
$lang->cmd_member_list = 'Lista de los Usuarios';
|
||||
$lang->cmd_module_config = 'Configuración predefinidos';
|
||||
|
|
@ -97,11 +104,19 @@
|
|||
$lang->cmd_add_friend_group = 'agregar grupo de amigos';
|
||||
$lang->cmd_rename_friend_group = 'Cambiar el nombre del grupo de amigos';
|
||||
|
||||
$lang->msg_email_not_exists = "Email address doesn't exists";
|
||||
|
||||
$lang->msg_alreay_scrapped = 'Este documento ya esta hecho scrap';
|
||||
|
||||
$lang->msg_cart_is_null = 'Seleciona el objetivo';
|
||||
$lang->msg_checked_file_is_deleted = '%d archivos adjuntos son eliminados';
|
||||
|
||||
$lang->msg_find_account_title = 'Account Info';
|
||||
$lang->msg_find_account_info = '요청하신 계정 정보는 아래와 같습니다';
|
||||
$lang->msg_find_account_comment = '아래 링크를 클릭하시면 위에 적힌 비밀번호로 바뀌게 됩니다.<br />로그인 하신 후 비밀번호를 바꾸어주세요.';
|
||||
$lang->msg_auth_mail_sended = '%s 메일로 인증 정보를 담은 메일이 발송되었습니다. 메일을 확인하세요.';
|
||||
$lang->msg_success_authed = '인증이 정상적으로 되어 로그인 처리가 되었습니다. 꼭 인증 메일에 표시된 비밀번호를 이용하여 원하시는 비밀번호로 변경하세요.';
|
||||
|
||||
$lang->msg_no_message = 'No hay mensajes';
|
||||
$lang->message_received = 'Usted ha recibido un mensaje';
|
||||
|
||||
|
|
@ -172,4 +187,5 @@
|
|||
$lang->about_openid_leave = '오픈아이디의 탈퇴는 현 사이트에서의 회원 정보를 삭제하는 것입니다.<br />탈퇴 후 로그인하시면 새로 가입하시는 것으로 되어 작성한 글에 대한 권한을 가질 수 없게 됩니다';
|
||||
|
||||
$lang->about_member = "Esto es un módulo para crear/modificar/eliminar usuarios y manejar grupos o el formato del registro.\n Usted puede manejar usuarios creando nuevos grupos, y obtener información adicional manejando el formato del registro";
|
||||
$lang->about_find_member_account = '아이디/ 비밀번호는 가입시 등록한 메일 주소로 알려드립니다<br />가입할때 등록하신 메일 주소를 입력하시고 "아이디/ 비밀번호 찾기" 버튼을 클릭해주세요.<br />';
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -53,6 +53,12 @@
|
|||
$lang->current_password = '現在のパスワード';
|
||||
$lang->openid = 'OpenID';
|
||||
|
||||
$lang->webmaster_name = '웹마스터 이름';
|
||||
$lang->webmaster_email = '웹마스터 메일주소';
|
||||
|
||||
$lang->about_webmaster_name = '인증 메일이나 기타 사이트 관리시 사용될 웹마스터의 이름을 입력해주세요. (기본 : webmaster)';
|
||||
$lang->about_webmaster_email = '웹마스터의 메일 주소를 입력해주세요.';
|
||||
|
||||
$lang->search_target_list = array(
|
||||
'user_id' => 'ユーザID',
|
||||
'user_name' => '名前',
|
||||
|
|
@ -78,6 +84,7 @@
|
|||
$lang->cmd_modify_member_password = 'パスワード変更';
|
||||
$lang->cmd_view_member_info = '会員情報表示';
|
||||
$lang->cmd_leave = '脱会';
|
||||
$lang->cmd_find_member_account = 'Find Account Info';
|
||||
|
||||
$lang->cmd_member_list = '会員リスト';
|
||||
$lang->cmd_module_config = '基本設定';
|
||||
|
|
@ -97,11 +104,19 @@
|
|||
$lang->cmd_add_friend_group = '友達グループ追加';
|
||||
$lang->cmd_rename_friend_group = '友達グループ名変更';
|
||||
|
||||
$lang->msg_email_not_exists = "Email address doesn't exists";
|
||||
|
||||
$lang->msg_alreay_scrapped = '既にスクラップされたコンテンツです。';
|
||||
|
||||
$lang->msg_cart_is_null = '対象を選択してください。';
|
||||
$lang->msg_checked_file_is_deleted = '%d個の添付ファイルが削除されました。';
|
||||
|
||||
$lang->msg_find_account_title = 'Account Info';
|
||||
$lang->msg_find_account_info = '요청하신 계정 정보는 아래와 같습니다';
|
||||
$lang->msg_find_account_comment = '아래 링크를 클릭하시면 위에 적힌 비밀번호로 바뀌게 됩니다.<br />로그인 하신 후 비밀번호를 바꾸어주세요.';
|
||||
$lang->msg_auth_mail_sended = '%s 메일로 인증 정보를 담은 메일이 발송되었습니다. 메일을 확인하세요.';
|
||||
$lang->msg_success_authed = '인증이 정상적으로 되어 로그인 처리가 되었습니다. 꼭 인증 메일에 표시된 비밀번호를 이용하여 원하시는 비밀번호로 변경하세요.';
|
||||
|
||||
$lang->msg_no_message = 'メッセージがありません。';
|
||||
$lang->message_received = 'メッセージが届きました。';
|
||||
|
||||
|
|
@ -172,4 +187,5 @@
|
|||
$lang->about_openid_leave = '오픈아이디의 탈퇴는 현 사이트에서의 회원 정보를 삭제하는 것입니다.<br />탈퇴 후 로그인하시면 새로 가입하시는 것으로 되어 작성한 글에 대한 권한을 가질 수 없게 됩니다';
|
||||
|
||||
$lang->about_member = "会員の作成・修正・削除することができ、グループの管理、加入フォームの管理などが行える会員管理モジュールです。デフォルトで作成されたグループにグループを追加作成して会員管理ができるようにし、加入フォーム管理では基本情報の他、フォームの入力情報を追加することができます。";
|
||||
$lang->about_find_member_account = '아이디/ 비밀번호는 가입시 등록한 메일 주소로 알려드립니다<br />가입할때 등록하신 메일 주소를 입력하시고 "아이디/ 비밀번호 찾기" 버튼을 클릭해주세요.<br />';
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -53,6 +53,12 @@
|
|||
$lang->current_password = '현재 비밀번호';
|
||||
$lang->openid = 'OpenID';
|
||||
|
||||
$lang->webmaster_name = '웹마스터 이름';
|
||||
$lang->webmaster_email = '웹마스터 메일주소';
|
||||
|
||||
$lang->about_webmaster_name = '인증 메일이나 기타 사이트 관리시 사용될 웹마스터의 이름을 입력해주세요. (기본 : webmaster)';
|
||||
$lang->about_webmaster_email = '웹마스터의 메일 주소를 입력해주세요.';
|
||||
|
||||
$lang->search_target_list = array(
|
||||
'user_id' => '아이디',
|
||||
'user_name' => '이름',
|
||||
|
|
@ -79,6 +85,7 @@
|
|||
$lang->cmd_modify_member_password = '비밀번호 변경';
|
||||
$lang->cmd_view_member_info = '회원 정보 보기';
|
||||
$lang->cmd_leave = '탈퇴';
|
||||
$lang->cmd_find_member_account = '아이디/비밀번호 찾기';
|
||||
|
||||
$lang->cmd_member_list = '회원 목록';
|
||||
$lang->cmd_module_config = '기본 설정';
|
||||
|
|
@ -98,11 +105,20 @@
|
|||
$lang->cmd_add_friend_group = '친구 그룹 추가';
|
||||
$lang->cmd_rename_friend_group = '친구 그룹 이름 변경';
|
||||
|
||||
$lang->msg_email_not_exists = '이메일 주소가 존재하지 않습니다';
|
||||
|
||||
$lang->msg_alreay_scrapped = '이미 스크랩된 게시물입니다';
|
||||
|
||||
$lang->msg_cart_is_null = '대상을 선택해주세요';
|
||||
$lang->msg_checked_file_is_deleted = '%d개의 첨부파일이 삭제되었습니다';
|
||||
|
||||
$lang->msg_find_account_title = '아이디/ 비밀번호 정보입니다';
|
||||
$lang->msg_find_account_info = '요청하신 계정 정보는 아래와 같습니다';
|
||||
$lang->msg_find_account_comment = '아래 링크를 클릭하시면 위에 적힌 비밀번호로 바뀌게 됩니다.<br />로그인 하신 후 비밀번호를 바꾸어주세요.';
|
||||
$lang->msg_auth_mail_sended = '%s 메일로 인증 정보를 담은 메일이 발송되었습니다. 메일을 확인하세요.';
|
||||
$lang->msg_invalid_auth_key = '잘못된 계정 인증 요청입니다.<br />아이디/비밀번호 찾기를 다시 하시거나 사이트 관리자에게 계정 정보를 문의해주세요';
|
||||
$lang->msg_success_authed = '인증이 정상적으로 되어 로그인 처리가 되었습니다. 꼭 인증 메일에 표시된 비밀번호를 이용하여 원하시는 비밀번호로 변경하세요.';
|
||||
|
||||
$lang->msg_no_message = '쪽지가 없습니다';
|
||||
$lang->message_received = '쪽지가 왔습니다';
|
||||
|
||||
|
|
@ -171,6 +187,7 @@
|
|||
|
||||
$lang->about_openid = '오픈아이디로 가입시 아이디와 메일등의 기본 정보는 이 사이트에 저장이 되지만 비밀번호와 인증을 위한 처리는 해당 오픈아이디 제공서비스에서 이루어집니다.';
|
||||
$lang->about_openid_leave = '오픈아이디의 탈퇴는 현 사이트에서의 회원 정보를 삭제하는 것입니다.<br />탈퇴 후 로그인하시면 새로 가입하시는 것으로 되어 작성한 글에 대한 권한을 가질 수 없게 됩니다';
|
||||
$lang->about_find_member_account = '아이디/ 비밀번호는 가입시 등록한 메일 주소로 알려드립니다<br />가입할때 등록하신 메일 주소를 입력하시고 "아이디/ 비밀번호 찾기" 버튼을 클릭해주세요.<br />';
|
||||
|
||||
$lang->about_member = "회원을 생성/수정/삭제 할 수 있고 그룹관리나 가입폼 관리등을 할 수 있는 회원 관리 모듈입니다.\n기본으로 생성된 그룹외의 그룹을 생성하여 회원 관리가 가능하고 가입폼관리를 통한 기본 정보외의 추가 정보를 요구받을 수도 있습니다.";
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -53,6 +53,12 @@
|
|||
$lang->current_password = '当前密码';
|
||||
$lang->openid = 'OpenID';
|
||||
|
||||
$lang->webmaster_name = '웹마스터 이름';
|
||||
$lang->webmaster_email = '웹마스터 메일주소';
|
||||
|
||||
$lang->about_webmaster_name = '인증 메일이나 기타 사이트 관리시 사용될 웹마스터의 이름을 입력해주세요. (기본 : webmaster)';
|
||||
$lang->about_webmaster_email = '웹마스터의 메일 주소를 입력해주세요.';
|
||||
|
||||
$lang->search_target_list = array(
|
||||
'user_id' => '用户名',
|
||||
'user_name' => '姓名',
|
||||
|
|
@ -78,6 +84,7 @@
|
|||
$lang->cmd_modify_member_password = '修改密码';
|
||||
$lang->cmd_view_member_info = '查看会员信息';
|
||||
$lang->cmd_leave = '注销';
|
||||
$lang->cmd_find_member_account = 'Find Account Info';
|
||||
|
||||
$lang->cmd_member_list = '会员目录';
|
||||
$lang->cmd_module_config = '基本设置';
|
||||
|
|
@ -97,11 +104,19 @@
|
|||
$lang->cmd_add_friend_group = '添加好友组';
|
||||
$lang->cmd_rename_friend_group = '修改好友组名称';
|
||||
|
||||
$lang->msg_email_not_exists = "Email address doesn't exists";
|
||||
|
||||
$lang->msg_alreay_scrapped = '已收藏的主题!';
|
||||
|
||||
$lang->msg_cart_is_null = '请选择对象。';
|
||||
$lang->msg_checked_file_is_deleted = '已删除%d个附件。';
|
||||
|
||||
$lang->msg_find_account_title = 'Account Info';
|
||||
$lang->msg_find_account_info = '요청하신 계정 정보는 아래와 같습니다';
|
||||
$lang->msg_find_account_comment = '아래 링크를 클릭하시면 위에 적힌 비밀번호로 바뀌게 됩니다.<br />로그인 하신 후 비밀번호를 바꾸어주세요.';
|
||||
$lang->msg_auth_mail_sended = '%s 메일로 인증 정보를 담은 메일이 발송되었습니다. 메일을 확인하세요.';
|
||||
$lang->msg_success_authed = '인증이 정상적으로 되어 로그인 처리가 되었습니다. 꼭 인증 메일에 표시된 비밀번호를 이용하여 원하시는 비밀번호로 변경하세요.';
|
||||
|
||||
$lang->msg_no_message = '没有短消息。';
|
||||
$lang->message_received = '您有新消息。';
|
||||
|
||||
|
|
@ -172,4 +187,5 @@
|
|||
$lang->about_openid_leave = '删除OpenID就等于永久删除站内用户的信息。<br />被删除后的重新登录就等于新会员注册,因此对以前自己写的主题将失去相应权限。';
|
||||
|
||||
$lang->about_member = "可以添加/修改/删除会员及管理用户组或注册表单的会员管理模块。\n此模块不仅可以生成缺省用户组以外的其他用户组来管理会员,并且通过注册表单的管理获得除会员基本信息以外的扩展信息。";
|
||||
$lang->about_find_member_account = '아이디/ 비밀번호는 가입시 등록한 메일 주소로 알려드립니다<br />가입할때 등록하신 메일 주소를 입력하시고 "아이디/ 비밀번호 찾기" 버튼을 클릭해주세요.<br />';
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -83,7 +83,7 @@
|
|||
**/
|
||||
function procMemberAdminInsertConfig() {
|
||||
// 기본 정보를 받음
|
||||
$args = Context::gets('skin','colorset','enable_openid','enable_join','limit_day','redirect_url','agreement','image_name','image_mark', 'image_name_max_width', 'image_name_max_height','image_mark_max_width','image_mark_max_height');
|
||||
$args = Context::gets('webmaster_name','webmaster_email','skin','colorset','enable_openid','enable_join','limit_day','redirect_url','agreement','image_name','image_mark', 'image_name_max_width', 'image_name_max_height','image_mark_max_width','image_mark_max_height');
|
||||
if(!$args->skin) $args->skin = "default";
|
||||
if(!$args->colorset) $args->colorset = "white";
|
||||
if($args->enable_join!='Y') $args->enable_join = 'N';
|
||||
|
|
|
|||
|
|
@ -60,6 +60,7 @@
|
|||
// 설정 정보를 받아옴 (module model 객체를 이용)
|
||||
$oModuleModel = &getModel('module');
|
||||
$config = $oModuleModel->getModuleConfig('member');
|
||||
if(!$config->webmaster_name) $config->webmaster_name = 'webmaster';
|
||||
if(!$config->image_name_max_width) $config->image_name_max_width = 90;
|
||||
if(!$config->image_name_max_height) $config->image_name_max_height = 20;
|
||||
if(!$config->image_mark_max_width) $config->image_mark_max_width = 20;
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@
|
|||
$oModuleController->insertActionForward('member', 'view', 'dispMemberLogout');
|
||||
$oModuleController->insertActionForward('member', 'view', 'dispMemberOwnDocument');
|
||||
$oModuleController->insertActionForward('member', 'view', 'dispMemberScrappedDocument');
|
||||
$oModuleController->insertActionForward('member', 'view', 'dispMemberFindAccount');
|
||||
|
||||
$oModuleController->insertActionForward('member', 'view', 'dispMemberMessages');
|
||||
$oModuleController->insertActionForward('member', 'view', 'dispMemberSendMessage');
|
||||
|
|
@ -133,6 +134,10 @@
|
|||
// member 디렉토리 체크 (2007. 8. 11 추가)
|
||||
if(!is_dir("./files/member_extra_info")) return true;
|
||||
|
||||
// dispMemberFindAccount act의 여부 체크 (2007. 10. 15)
|
||||
$act = $oModuleModel->getActionForward('dispMemberFindAccount');
|
||||
if(!$act) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
@ -145,6 +150,7 @@
|
|||
$oModuleController->insertActionForward('member', 'view', 'dispMemberOwnDocument');
|
||||
$oModuleController->insertActionForward('member', 'view', 'dispMemberScrappedDocument');
|
||||
$oModuleController->insertActionForward('member', 'view', 'dispMemberOpenIDLeave');
|
||||
$oModuleController->insertActionForward('member', 'view', 'dispMemberFindAccount');
|
||||
|
||||
// member 디렉토리 체크
|
||||
FileHandler::makeDir('./files/member_extra_info/image_name');
|
||||
|
|
@ -152,6 +158,8 @@
|
|||
FileHandler::makeDir('./files/member_extra_info/signature');
|
||||
FileHandler::makeDir('./files/member_extra_info/new_message_flags');
|
||||
|
||||
// dispMemberFindAccount act의 여부 체크 (2007. 10. 15)
|
||||
|
||||
return new Object(0, 'success_updated');
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -159,7 +159,19 @@
|
|||
}
|
||||
|
||||
// 쪽지 발송
|
||||
return $this->sendMessage($logged_info->member_srl, $receiver_srl, $title, $content);
|
||||
$output = $this->sendMessage($logged_info->member_srl, $receiver_srl, $title, $content);
|
||||
|
||||
// 메일로도 발송
|
||||
if($output->toBool()) {
|
||||
$oMail = new Mail();
|
||||
$oMail->setTitle($title);
|
||||
$oMail->setContent($content);
|
||||
$oMail->setSender($logged_info->user_name, $logged_info->email_address);
|
||||
$oMail->setReceiptor($receiver_member_info->user_name, $receiver_member_info->email_address);
|
||||
$oMail->send();
|
||||
}
|
||||
|
||||
return $output;
|
||||
}
|
||||
|
||||
function sendMessage($sender_srl, $receiver_srl, $title, $content, $sender_log = true) {
|
||||
|
|
@ -892,6 +904,93 @@
|
|||
return new Object(0,'success');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 아이디/ 비밀번호 찾기
|
||||
**/
|
||||
function procMemberFindAccount() {
|
||||
$email_address = Context::get('email_address');
|
||||
if(!$email_address) return new Object(-1, 'msg_invalid_request');
|
||||
|
||||
$oMemberModel = &getModel('member');
|
||||
|
||||
// 메일 주소에 해당하는 회원이 있는지 검사
|
||||
$member_srl = $oMemberModel->getMemberSrlByEmailAddress($email_address);
|
||||
if(!$member_srl) return new Object(-1, 'msg_email_not_exists');
|
||||
|
||||
// 회원의 정보를 가져옴
|
||||
$member_info = $oMemberModel->getMemberInfoByMemberSrl($member_srl);
|
||||
|
||||
// 인증 DB에 데이터를 넣음
|
||||
$args->user_id = $member_info->user_id;
|
||||
$args->member_srl = $member_info->member_srl;
|
||||
$args->new_password = rand(111111,999999);
|
||||
$args->auth_key = md5( rand(0,999999 ) );
|
||||
|
||||
$output = executeQuery('member.insertAuthMail', $args);
|
||||
if(!$output->toBool()) return $output;
|
||||
|
||||
// 메일 내용을 구함
|
||||
Context::set('auth_args', $args);
|
||||
Context::set('member_info', $member_info);
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
$content = $oTemplate->compile($this->module_path.'tpl', 'find_member_account_mail');
|
||||
|
||||
// 사이트 웹마스터 정보를 구함
|
||||
$oModuleModel = &getModel('module');
|
||||
$member_config = $oModuleModel->getModuleConfig('member');
|
||||
|
||||
// 메일 발송
|
||||
$oMail = new Mail();
|
||||
$oMail->setTitle( Context::getLang('msg_find_account_title') );
|
||||
$oMail->setContent($content);
|
||||
$oMail->setSender( $member_config->webmaster_name?$member_config->webmaster_name:'webmaster', $member_config->webmaster_email);
|
||||
$oMail->setReceiptor( $member_info->user_name, $member_info->email_address );
|
||||
$oMail->send();
|
||||
|
||||
// 메세지 return
|
||||
$msg = sprintf(Context::getLang('msg_auth_mail_sended'), $member_info->email_address);
|
||||
$this->setMessage($msg);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 아이디/비밀번호 찾기 기능 실행
|
||||
* 메일에 등록된 링크를 선택시 호출되는 method로 비밀번호를 바꾸고 인증을 시켜버림
|
||||
**/
|
||||
function procMemberAuthAccount() {
|
||||
// user_id, authkey 검사
|
||||
$member_srl = Context::get('member_srl');
|
||||
$auth_key = Context::get('auth_key');
|
||||
if(!$member_srl || !$auth_key) return $this->stop('msg_invalid_request');
|
||||
|
||||
// user_id, authkey로 비밀번호 찾기 로그 검사
|
||||
$args->member_srl = $member_srl;
|
||||
$args->auth_key = $auth_key;
|
||||
$output = executeQuery('member.getAuthMail', $args);
|
||||
if(!$output->toBool() || $output->data->auth_key != $auth_key) return $this->stop('msg_invalid_auth_key');
|
||||
|
||||
// 인증 정보가 맞다면 새비밀번호로 비밀번호를 바꾸고 인증 상태로 바꿈
|
||||
$args->password = md5($output->data->new_password);
|
||||
$output = executeQuery('member.updateMemberPassword', $args);
|
||||
if(!$output->toBool()) return $this->stop($output->getMessage());
|
||||
|
||||
// 인증 시킴
|
||||
$oMemberModel = &getModel('member');
|
||||
|
||||
// 회원의 정보를 가져옴
|
||||
$member_info = $oMemberModel->getMemberInfoByMemberSrl($member_srl);
|
||||
|
||||
// 사용자 정보의 최근 로그인 시간을 기록
|
||||
$output = executeQuery('member.updateLastLogin', $args);
|
||||
$this->setSessionInfo($member_info);
|
||||
|
||||
// 인증 테이블에서 member_srl에 해당하는 모든 값을 지움
|
||||
executeQuery('member.deleteAuthMail',$args);
|
||||
|
||||
// 결과를 통보
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile('msg_success_authed');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 서명을 파일로 저장
|
||||
**/
|
||||
|
|
@ -1270,16 +1369,14 @@
|
|||
if(!$image_name && !$image_mark) return $matches[0];
|
||||
|
||||
if($image_name->width) {
|
||||
if($image_mark->height && $image_mark->height > $image_name->height) $top_margin = ($image_mark->height - $image_name->height)/2;
|
||||
else $top_margin = 0;
|
||||
$text = sprintf('<img src="%s" border="0" alt="id: %s" title="id: %s" width="%s" height="%s" style="margin-top:%dpx;"/>', Context::getRequestUri().$image_name->file, htmlspecialchars(strip_tags($matches[5])), htmlspecialchars(strip_tags($matches[5])), $image_name->width, $image_name->height, $top_margin);
|
||||
$text = sprintf('<img src="%s" border="0" alt="id: %s" title="id: %s" width="%s" height="%s" align="absmiddle" style="margin-right:3px" />', Context::getRequestUri().$image_name->file, htmlspecialchars(strip_tags($matches[5])), htmlspecialchars(strip_tags($matches[5])), $image_name->width, $image_name->height);
|
||||
}
|
||||
|
||||
if($image_mark->width) {
|
||||
$matches[0] = str_replace('<'.$matches[6], sprintf('<%s style="cursor:pointer;background:url(%s) no-repeat left;padding-left:%dpx; height:%dpx" ', $matches[1],Context::getRequestUri().$image_mark->file, $image_mark->width+2, $image_mark->height), $matches[0] );
|
||||
$text = sprintf('<img src="%s" border="0" alt="id: %s" title="id : %s" width="%s" height="%s" align="absmiddle" style="margin-right:3px"/>%s', Context::getRequestUri().$image_mark->file, htmlspecialchars(strip_tags($matches[5])), htmlspecialchars(strip_tags($matches[5])), $image_mark->width, $image_mark->height, $text);
|
||||
}
|
||||
$output = str_replace('>'.$matches[5].'<', '>'.$text.'<', $matches[0]);
|
||||
return $output;
|
||||
|
||||
return sprintf('<span class="nowrap member_%d">%s</span>',$member_srl, $text);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -444,5 +444,14 @@
|
|||
$this->setTemplateFile('add_friend_group');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 아이디/ 비밀번호 찾기 기능
|
||||
**/
|
||||
function dispMemberFindAccount() {
|
||||
if(Context::get('is_logged')) return $this->stop('already_logged');
|
||||
|
||||
$this->setTemplateFile('find_member_account');
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
8
modules/member/queries/deleteAuthMail.xml
Normal file
8
modules/member/queries/deleteAuthMail.xml
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
<query id="deleteAuthMail" action="delete">
|
||||
<tables>
|
||||
<table name="member_auth_mail" />
|
||||
</tables>
|
||||
<conditions>
|
||||
<condition operation="equal" column="member_srl" var="member_srl" notnull="notnull" />
|
||||
</conditions>
|
||||
</query>
|
||||
12
modules/member/queries/getAuthMail.xml
Normal file
12
modules/member/queries/getAuthMail.xml
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
<query id="getAuthMail" action="select">
|
||||
<tables>
|
||||
<table name="member_auth_mail" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="*" />
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="equal" column="auth_key" var="auth_key" notnull="notnull" />
|
||||
<condition operation="equal" column="member_srl" var="member_srl" notnull="notnull" pipe="and" />
|
||||
</conditions>
|
||||
</query>
|
||||
12
modules/member/queries/insertAuthMail.xml
Normal file
12
modules/member/queries/insertAuthMail.xml
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
<query id="insertAuthMail" action="insert">
|
||||
<tables>
|
||||
<table name="member_auth_mail" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="member_srl" var="member_srl" filter="number" notnull="notnull" />
|
||||
<column name="user_id" var="user_id" notnull="notnull" />
|
||||
<column name="auth_key" var="auth_key" notnull="notnull" minlength="1" maxlength="60" />
|
||||
<column name="new_password" var="new_password" notnull="notnull" minlength="1" maxlength="60" />
|
||||
<column name="regdate" default="curdate()" />
|
||||
</columns>
|
||||
</query>
|
||||
7
modules/member/schemas/member_auth_mail.xml
Normal file
7
modules/member/schemas/member_auth_mail.xml
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<table name="member_auth_mail">
|
||||
<column name="auth_key" type="varchar" size="60" notnull="notnull" unique="unique_key"/>
|
||||
<column name="member_srl" type="number" size="11" notnull="notnull" unique="unique_key" />
|
||||
<column name="user_id" type="varchar" size="80" notnull="notnull" />
|
||||
<column name="new_password" type="varchar" size="80" notnull="notnull" />
|
||||
<column name="regdate" type="date" index="idx_regdate" />
|
||||
</table>
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
<filter name="find_member_account" module="member" act="procMemberFindAccount">
|
||||
<form>
|
||||
<node target="email_address" required="true" minlength="2" maxlength="255" filter="email" />
|
||||
</form>
|
||||
<parameter />
|
||||
<response callback_func="completeFindMemberAccount">
|
||||
<tag name="error" />
|
||||
<tag name="message" />
|
||||
</response>
|
||||
</filter>
|
||||
27
modules/member/skins/cozy_simple/find_member_account.html
Normal file
27
modules/member/skins/cozy_simple/find_member_account.html
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
{@ $member_title = $lang->cmd_find_member_account}
|
||||
<!--#include("./common_header.html")-->
|
||||
|
||||
<!--%import("filter/find_member_account.xml")-->
|
||||
|
||||
<form action="./" method="get" onsubmit="return procFilter(this, find_member_account)">
|
||||
<input type="hidden" name="mid" value="{$mid}" />
|
||||
<input type="hidden" name="document_srl" value="{$document_srl}" />
|
||||
<input type="hidden" name="page" value="{$page}" />
|
||||
|
||||
<table cellspacing="0" class="memberInfoTable gap1" title="$lang->msg_leave_member}">
|
||||
<col width="140" />
|
||||
<col />
|
||||
<tr class="first-child">
|
||||
<th scope="row"><label for="cpw">{$lang->email_address}</label></th>
|
||||
<td>
|
||||
<input type="text" name="email_address" class="inputTypeText w400" />
|
||||
<p>{$lang->about_find_member_account}</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div class="help tCenter">
|
||||
<span class="button"><input type="submit" value="{$lang->cmd_find_member_account}" accesskey="s" /></span>
|
||||
</div>
|
||||
</form>
|
||||
<!--#include("./common_footer.html")-->
|
||||
|
|
@ -224,3 +224,8 @@ function doDeleteScrap(document_srl) {
|
|||
params['document_srl'] = document_srl;
|
||||
exec_xml('member', 'procMemberDeleteScrap', params, function() { location.reload(); });
|
||||
}
|
||||
|
||||
/* 비밀번호 찾기 후 */
|
||||
function completeFindMemberAccount(ret_obj, response_tags) {
|
||||
alert(ret_obj['message']);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
|
||||
<ul class="help">
|
||||
<li class="first-child"><a href="{getUrl('act','dispMemberSignUpForm')}"><img src="./images/common/btn_joinus.gif" alt="{$lang->cmd_signup}" /></a></li>
|
||||
<li><a href="{getUrl('act','dispMemberFindAccount')}">{$lang->cmd_find_member_account}</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
10
modules/member/skins/default/filter/find_member_account.xml
Normal file
10
modules/member/skins/default/filter/find_member_account.xml
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
<filter name="find_member_account" module="member" act="procMemberFindAccount">
|
||||
<form>
|
||||
<node target="email_address" required="true" minlength="2" maxlength="255" filter="email" />
|
||||
</form>
|
||||
<parameter />
|
||||
<response callback_func="completeFindMemberAccount">
|
||||
<tag name="error" />
|
||||
<tag name="message" />
|
||||
</response>
|
||||
</filter>
|
||||
27
modules/member/skins/default/find_member_account.html
Normal file
27
modules/member/skins/default/find_member_account.html
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
{@ $member_title = $lang->cmd_find_member_account}
|
||||
<!--#include("./common_header.html")-->
|
||||
|
||||
<!--%import("filter/find_member_account.xml")-->
|
||||
|
||||
<form action="./" method="get" onsubmit="return procFilter(this, find_member_account)">
|
||||
<input type="hidden" name="mid" value="{$mid}" />
|
||||
<input type="hidden" name="document_srl" value="{$document_srl}" />
|
||||
<input type="hidden" name="page" value="{$page}" />
|
||||
|
||||
<table cellspacing="0" class="memberInfoTable gap1" title="$lang->msg_leave_member}">
|
||||
<col width="140" />
|
||||
<col />
|
||||
<tr class="first-child">
|
||||
<th scope="row"><label for="cpw">{$lang->email_address}</label></th>
|
||||
<td>
|
||||
<input type="text" name="email_address" class="inputTypeText w400" />
|
||||
<p>{$lang->about_find_member_account}</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div class="help tCenter">
|
||||
<span class="button"><input type="submit" value="{$lang->cmd_find_member_account}" accesskey="s" /></span>
|
||||
</div>
|
||||
</form>
|
||||
<!--#include("./common_footer.html")-->
|
||||
|
|
@ -224,3 +224,8 @@ function doDeleteScrap(document_srl) {
|
|||
params['document_srl'] = document_srl;
|
||||
exec_xml('member', 'procMemberDeleteScrap', params, function() { location.reload(); });
|
||||
}
|
||||
|
||||
/* 비밀번호 찾기 후 */
|
||||
function completeFindMemberAccount(ret_obj, response_tags) {
|
||||
alert(ret_obj['message']);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
</form>
|
||||
|
||||
<div class="help tCenter">
|
||||
<a href="{getUrl('act','dispMemberFindAccount')}" class="button"><span>{$lang->cmd_find_member_account}</span></a>
|
||||
<a href="{getUrl('act','dispMemberSignUpForm')}" class="button"><span>{$lang->cmd_signup}</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
13
modules/member/tpl/find_member_account_mail.html
Normal file
13
modules/member/tpl/find_member_account_mail.html
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{$lang->msg_find_account_info}<br />
|
||||
<hr noshade="noshade" />
|
||||
<ul>
|
||||
<li>Site : <a href="{getUrl()}" target="_blank">{getUrl()}</a></li>
|
||||
<li>{$lang->user_id} : {$member_info->user_id}</li>
|
||||
<li>{$lang->user_name} : {$member_info->user_name}</li>
|
||||
<li>{$lang->nick_name} : {$member_info->nick_name}</li>
|
||||
<li>{$lang->email_address} : {$member_info->email_address}</li>
|
||||
<li>{$lang->password} : <span style="color:red">{$auth_args->new_password}</span>
|
||||
</ul>
|
||||
<hr noshade="noshade" />
|
||||
{$lang->msg_find_account_comment}<br />
|
||||
<a href="{getUrl('','module','member','act','procMemberAuthAccount','member_srl',$member_info->member_srl, 'auth_key',$auth_args->auth_key)}" target="_blank">{getUrl('','module','member','act','procMemberAuthAccount','member_srl',$member_info->member_srl,'auth_key',$auth_args->auth_key)}</a>
|
||||
|
|
@ -9,6 +9,20 @@
|
|||
<table cellspacing="0" class="tableType2 gap1">
|
||||
<col width="150" />
|
||||
<col />
|
||||
<tr>
|
||||
<th scope="row">{$lang->webmaster_name}</th>
|
||||
<td>
|
||||
<input type="text" name="webmaster_name" value="{$config->webmaster_name}" size="20" class="inputTypeText" />
|
||||
<p>{$lang->about_webmaster_name}</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->webmaster_email}</th>
|
||||
<td>
|
||||
<input type="text" name="webmaster_email" value="{$config->webmaster_email}" size="40" class="inputTypeText" />
|
||||
<p>{$lang->about_webmaster_email}</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->enable_openid}</th>
|
||||
<td>
|
||||
|
|
|
|||
4
modules/member/tpl/msg_success_authed.html
Normal file
4
modules/member/tpl/msg_success_authed.html
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
<script type="text/javascript">
|
||||
alert("{$lang->msg_success_authed}");
|
||||
location.href="{getUrl()}";
|
||||
</script>
|
||||
|
|
@ -64,6 +64,8 @@
|
|||
$point = $this->oPointModel->getPoint($member_srl);
|
||||
$level = $this->oPointModel->getLevel($point, $this->config->level_step);
|
||||
|
||||
$text = $matches[5];
|
||||
|
||||
$src = sprintf("modules/point/icons/%s/%d.gif", $this->config->level_icon, $level);
|
||||
if(!$this->icon_width) {
|
||||
$info = getimagesize($src);
|
||||
|
|
@ -78,8 +80,11 @@
|
|||
}
|
||||
}
|
||||
|
||||
$code = sprintf('<%s title="%s:%s%s %s, %s:%s/%s" style="cursor:pointer;background:url(%s) no-repeat left;padding-left:%dpx; height:%dpx">%s</%s> ', $matches[6], Context::getLang('point'), $point, $this->config->point_name, $per?"(".$per."%)":"", Context::getLang('level'), $level, $this->config->max_level, Context::getRequestUri().$src, $this->icon_width+2, $this->icon_height, $matches[0], $matches[6]);
|
||||
$this->member_code[$member_srl] = $code;
|
||||
$title = sprintf("%s:%s%s %s, %s:%s/%s", Context::getLang('point'), $point, $this->config->point_name, $per?"(".$per."%)":"", Context::getLang('level'), $level, $this->config->max_level);
|
||||
|
||||
$text = sprintf('<span class="nowrap member_%s"><img src="%s" width="%s" height="%s" alt="%s" title="%s" align="absmiddle" style="margin-right:3px"/>%s</span>', $member_srl, Context::getRequestUri().$src, $this->icon_width+2, $this->icon_height, $title, $title, $text);
|
||||
|
||||
$this->member_code[$member_srl] = $text;
|
||||
|
||||
return $this->member_code[$member_srl];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
$lang->cmd_poll_list = '查看目录';
|
||||
$lang->cmd_delete_checked_poll = '删除所选项目';
|
||||
$lang->cmd_apply_poll = '参与投票';
|
||||
$lang->cmd_view_result = 'Preview result';
|
||||
$lang->cmd_view_result = '查看结果';
|
||||
$lang->cmd_delete_checked_poll = '删除所选';
|
||||
|
||||
$lang->success_poll = '感谢您参与投票。';
|
||||
|
|
|
|||
|
|
@ -112,6 +112,7 @@
|
|||
}
|
||||
|
||||
// 작성자의 정보를 로그로 남김
|
||||
/*
|
||||
$log_args->poll_srl = $poll_srl;
|
||||
$log_args->member_srl = $member_srl;
|
||||
$output = executeQuery('poll.insertPollLog', $log_args);
|
||||
|
|
@ -119,6 +120,7 @@
|
|||
$oDB->rollback();
|
||||
return $output;
|
||||
}
|
||||
*/
|
||||
|
||||
$oDB->commit();
|
||||
|
||||
|
|
|
|||
|
|
@ -8,8 +8,8 @@
|
|||
<author email_address="zero@zeroboard.com" link="http://www.zeroboard.com" date="2007. 2. 28">
|
||||
<name xml:lang="ko">제로</name>
|
||||
<name xml:lang="jp">Zero</name>
|
||||
<name xml:lang="en">zero</name>
|
||||
<name xml:lang="es">zero</name>
|
||||
<name xml:lang="en">zero</name>
|
||||
<name xml:lang="es">zero</name>
|
||||
<name xml:lang="zh-CN">zero</name>
|
||||
<description xml:lang="ko">
|
||||
기본 카운터 모듈을 이용하여 전체, 어제, 오늘의 접속현황을 표시합니다.
|
||||
|
|
@ -22,8 +22,8 @@
|
|||
This widget displays the number of people who have visited yesterday and today by using the basic counter module.
|
||||
It will also display the total count.
|
||||
To get this, the counter module should be installed and the counter add-on should be turned on.
|
||||
</description>
|
||||
<description xml:lang="es">
|
||||
</description>
|
||||
<description xml:lang="es">
|
||||
Este widget de contador básico muestra los números de las personas visitadas en el día de ayer, hoy, y el total.
|
||||
Debe instalar el módulo del contador y debe activar el addon del contador.
|
||||
</description>
|
||||
|
|
|
|||
|
|
@ -25,6 +25,9 @@
|
|||
.box_login ul.option li a.btn { background:url(../images/default/bul_01.gif) no-repeat left; padding-left:10px; margin-left:14px; }
|
||||
.box_login .checkbox { width:15px; height:15px; margin:-1px 0px 0px -1px; margin-right:2px; }
|
||||
.box_login .clear { clear:both; }
|
||||
.box_login ul.extra_option { clear:both; height:40px; }
|
||||
.box_login ul.extra_option li a {text-decoration:none;}
|
||||
.box_login ul.extra_option li a.btn { background:url(../images/default/bul_01.gif) no-repeat left; padding-left:10px; margin-left:20px; }
|
||||
|
||||
.openid_login { clear:both; height:38px; border:3px solid #D5D8DB; background-color:#FFFFFF; margin:0 0 10px 0; }
|
||||
.openid_login .openid_user_id { width:110px; _width:100px; background: url(../images/openid_login_bg.gif) left no-repeat; background-color: #ffffff; background-position: 0 50%; padding:3px 3px 3px 18px; border:1px solid; border-color:#a6a6a6 #d8d8d8 #d8d8d8 #a6a6a6; height:16px; line-height:1em; vertical-align:middle; margin-bottom:.5em; color:#666666;}
|
||||
|
|
|
|||
|
|
@ -19,11 +19,14 @@
|
|||
</div>
|
||||
|
||||
<div><input type="submit" value=" " class="submit" /></div>
|
||||
<ul class="option">
|
||||
<li><input type="checkbox" name="remember_user_id" id="chk_remember_user_id" value="Y" class="checkbox" /></li>
|
||||
<li><label for="chk_remember_user_id">{$lang->remember_user_id}</label></li>
|
||||
<li><a href="{getUrl('act','dispMemberSignUpForm')}" class="fc_02 btn">{$lang->cmd_signup}</a></li>
|
||||
</ul>
|
||||
<ul class="option">
|
||||
<li><input type="checkbox" name="remember_user_id" id="chk_remember_user_id" value="Y" class="checkbox" /></li>
|
||||
<li><label for="chk_remember_user_id">{$lang->remember_user_id}</label></li>
|
||||
</ul>
|
||||
<ul class="extra_option">
|
||||
<li><a href="{getUrl('act','dispMemberSignUpForm')}" class="fc_02 btn">{$lang->cmd_signup}</a></li>
|
||||
<li><a href="{getUrl('act','dispMemberFindAccount')}" class="fc_02 btn">{$lang->cmd_find_member_account}</a></li>
|
||||
</ul>
|
||||
</form>
|
||||
<div class="clear"></div>
|
||||
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
|
||||
<div class="item profile"><a href="{getUrl('act','dispMemberInfo','member_srl',$logged_info->member_srl)}">{$lang->cmd_view_member_info}</a></div>
|
||||
<div class="item friend"><a href="{getUrl('act','dispMemberFriend','member_srl',$logged_info->member_srl)}">{$lang->cmd_view_friend}</a></div>
|
||||
<div class="item message"><a href="{getUrl('act','dispMemberMessages','member_srl',$logged_info->member_srl)}">{$lang->cmd_view_message_box}</a></div>
|
||||
<div class="item message"><a href="{getUrl('act','dispMemberMessages','message_type','','member_srl',$logged_info->member_srl)}">{$lang->cmd_view_message_box}</a></div>
|
||||
<!--@if($logged_info->is_admin=="Y")-->
|
||||
<div class="item administrative"><a href="{getUrl('','module','admin')}" onclick="window.open(this.href);return false;">{$lang->cmd_management}</a></div>
|
||||
<!--@end-->
|
||||
|
|
|
|||
|
|
@ -1,42 +1,42 @@
|
|||
#login { border:2px solid #515151; width:196px; position:relative; _padding-top:2px; display:block;}
|
||||
*:first-child+html body#black #login { padding-top:2px;}
|
||||
#login legend { display:block; width:0; height:0; overflow:hidden; font-size:0;}
|
||||
#login form { position:relative; border:1px solid #6b6b6b; padding:11px 11px 7px 11px; width:172px;}
|
||||
#login form .idpwWrap { overflow:hidden; clear:both; width:172px;}
|
||||
#login form .idpw { float:left; width:110px;}
|
||||
#login form .idpw input { border:1px solid #6b6b6b; color:#cbcbcb; width:105px; background:#515151; padding:1px 5px; margin-bottom:2px; font:.9em Tahoma;}
|
||||
#login form .login { float:right;}
|
||||
#login form p.save { clear:both; padding:.3em 0;}
|
||||
#login form p.save input { vertical-align:middle; _margin:-3px;}
|
||||
*:first-child+html body#black #login form p input { margin:-3px; }
|
||||
#login form p.save label { font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif; color:#818181;}
|
||||
#login form ul.help { border-top:1px solid #515151; overflow:hidden; padding:.5em 0 0 0; white-space:nowrap;}
|
||||
#login form ul.help li { list-style:none; float:left; display:block; padding:0 3px 0 7px; background:url(../images/black/vrType1.gif) no-repeat left center;}
|
||||
#login form ul.help li.first-child { background:none; padding-left:0;}
|
||||
#login form ul.help li a { color:#818181; font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif; white-space:nowrap; text-decoration:none;}
|
||||
#login form ul.help li a:hover { text-decoration:underline;}
|
||||
#login form ul.help li.first-child a { color:#cbcbcb;}
|
||||
#login form .userName { width:172px; overflow:hidden; border-bottom:1px solid #515151; padding:0 0 6px 0; margin-top:-5px;}
|
||||
#login form .userName strong { color:#cbcbcb; float:left; padding:4px 0 0 2px; font:bold .9em Tahoma;}
|
||||
#login form .userName a { float:right;}
|
||||
#login form ul.userMenu { padding:0 0 6px 4px; overflow:hidden; margin-top:10px;}
|
||||
#login form ul.userMenu li { list-style:none; color:#cbcbcb; list-style:none;padding-left:10px; background:url(../images/black/bulletFF1A00.gif) no-repeat left 4px; height:18px; }
|
||||
#login form ul.userMenu li a { color:#cbcbcb;text-decoration:none;}
|
||||
#login form ul.userMenu li a:hover {text-decoration:underline;}
|
||||
#login form p.latestLogin { color:#818181; font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif;}
|
||||
#login form p.latestLogin span { font:1em Tahoma;}
|
||||
.login_black { border:2px solid #515151; width:196px; position:relative; _padding-top:2px; display:block;}
|
||||
*:first-child+html body#black .login_black { padding-top:2px;}
|
||||
.login_black legend { display:block; width:0; height:0; overflow:hidden; font-size:0;}
|
||||
.login_black form { position:relative; border:1px solid #6b6b6b; padding:11px 11px 7px 11px; width:172px;}
|
||||
.login_black form .idpwWrap { overflow:hidden; clear:both; width:172px;}
|
||||
.login_black form .idpw { float:left; width:110px;}
|
||||
.login_black form .idpw input { border:1px solid #6b6b6b; color:#cbcbcb; width:105px; background:#515151; padding:1px 5px; margin-bottom:2px; font:.9em Tahoma;}
|
||||
.login_black form .login { float:right;}
|
||||
.login_black form p.save { clear:both; padding:.3em 0;}
|
||||
.login_black form p.save input { vertical-align:middle; _margin:-3px;}
|
||||
*:first-child+html body#black .login_black form p input { margin:-3px; }
|
||||
.login_black form p.save label { font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif; color:#818181;}
|
||||
.login_black form ul.help { border-top:1px solid #515151; overflow:hidden; padding:.5em 0 0 0; white-space:nowrap;}
|
||||
.login_black form ul.help li { list-style:none; float:left; display:block; padding:0 3px 0 7px; background:url(../images/black/vrType1.gif) no-repeat left center;}
|
||||
.login_black form ul.help li.first-child { background:none; padding-left:0;}
|
||||
.login_black form ul.help li a { color:#818181; font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif; white-space:nowrap; text-decoration:none;}
|
||||
.login_black form ul.help li a:hover { text-decoration:underline;}
|
||||
.login_black form ul.help li.first-child a { color:#cbcbcb;}
|
||||
.login_black form .userName { position:relative; width:172px; overflow:hidden; border-bottom:1px solid #515151; padding:0 0 6px 0; margin-top:-5px;}
|
||||
.login_black form .userName strong { color:#cbcbcb; padding:4px 0 0 2px; font:bold .9em Tahoma;}
|
||||
.login_black form .userName a { position:relative; top:5px; right:0px; }
|
||||
.login_black form ul.userMenu { padding:0 0 6px 4px; overflow:hidden; margin-top:10px;}
|
||||
.login_black form ul.userMenu li { list-style:none; color:#cbcbcb; list-style:none;padding-left:10px; background:url(../images/black/bulletFF1A00.gif) no-repeat left 4px; height:18px; }
|
||||
.login_black form ul.userMenu li a { color:#cbcbcb;text-decoration:none;}
|
||||
.login_black form ul.userMenu li a:hover {text-decoration:underline;}
|
||||
.login_black form p.latestLogin { color:#818181; font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif;}
|
||||
.login_black form p.latestLogin span { font:1em Tahoma;}
|
||||
|
||||
img.login_mask { width:201px; height:5px; background:#3d3d3d; display:block;}
|
||||
|
||||
#openid_login { border:2px solid #515151; width:196px; position:relative; _padding-top:2px; display:block;}
|
||||
*:first-child+html body#black #openid_login { padding-top:2px;}
|
||||
#openid_login legend { display:block; width:0; height:0; overflow:hidden; font-size:0;}
|
||||
#openid_login form { position:relative; border:1px solid #6b6b6b; padding:11px 11px 7px 11px; width:172px;}
|
||||
#openid_login form .idpwWrap { overflow:hidden; clear:both; width:172px;}
|
||||
#openid_login form .idpw { float:left;}
|
||||
#openid_login form .idpw p { margin-bottom:5px; background: url(../images/openid_login_bg.gif) left no-repeat; padding-left:18px; font-size:.9em Tahoma;color:#999999}
|
||||
#openid_login form .idpw input { border:1px solid #6b6b6b; color:#cbcbcb; width:105px; background:#515151; padding:1px 5px; margin-bottom:2px; font:.9em Tahoma;}
|
||||
#openid_login form .login { float:right;}
|
||||
#openid_login form p.save { clear:both; padding:.3em 0;}
|
||||
#openid_login form p.save input { vertical-align:middle; _margin:-3px;}
|
||||
*:first-child+html body #openid_login form p input { margin:-3px; }
|
||||
.openid_login_black { border:2px solid #515151; width:196px; position:relative; _padding-top:2px; display:block;}
|
||||
*:first-child+html body#black .openid_login_black { padding-top:2px;}
|
||||
.openid_login_black legend { display:block; width:0; height:0; overflow:hidden; font-size:0;}
|
||||
.openid_login_black form { position:relative; border:1px solid #6b6b6b; padding:11px 11px 7px 11px; width:172px;}
|
||||
.openid_login_black form .idpwWrap { overflow:hidden; clear:both; width:172px;}
|
||||
.openid_login_black form .idpw { float:left;}
|
||||
.openid_login_black form .idpw p { margin-bottom:5px; background: url(../images/openid_login_bg.gif) left no-repeat; padding-left:18px; font-size:.9em Tahoma;color:#999999}
|
||||
.openid_login_black form .idpw input { border:1px solid #6b6b6b; color:#cbcbcb; width:105px; background:#515151; padding:1px 5px; margin-bottom:2px; font:.9em Tahoma;}
|
||||
.openid_login_black form .login { float:right;}
|
||||
.openid_login_black form p.save { clear:both; padding:.3em 0;}
|
||||
.openid_login_black form p.save input { vertical-align:middle; _margin:-3px;}
|
||||
*:first-child+html body .openid_login_black form p input { margin:-3px; }
|
||||
|
|
|
|||
|
|
@ -1,42 +1,42 @@
|
|||
#login { border:2px solid #d9d9d9; width:196px; position:relative; _padding-top:2px; display:block;}
|
||||
*:first-child+html body #login { padding-top:2px;}
|
||||
#login legend { display:block; width:0; height:0; overflow:hidden; font-size:0;}
|
||||
#login form { position:relative; border:1px solid #cacaca; padding:11px 11px 7px 11px; width:172px;}
|
||||
#login form .idpwWrap { overflow:hidden; clear:both; width:172px;}
|
||||
#login form .idpw { float:left; width:110px; }
|
||||
#login form .idpw input { border:1px solid #c9c9c9; color:#282828; width:105px; background:#fbfbfb; padding:1px 5px; margin-bottom:2px; font:.9em Tahoma;}
|
||||
#login form .login { float:right;}
|
||||
#login form p.save { clear:both; padding:.3em 0;}
|
||||
#login form p.save input { vertical-align:middle; _margin:-3px;}
|
||||
*:first-child+html body #login form p input { margin:-3px; }
|
||||
#login form p.save label { font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif; color:#999999;}
|
||||
#login form ul.help { border-top:1px solid #e4e4e4; overflow:hidden; padding:.5em 0 0 0; white-space:nowrap;}
|
||||
#login form ul.help li { float:left; display:block; padding:0 3px 0 7px; background:url(../images/default/vrType1.gif) no-repeat left center;}
|
||||
#login form ul.help li.first-child { background:none; padding-left:0;}
|
||||
#login form ul.help li a { color:#999999; font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif; white-space:nowrap; text-decoration:none; }
|
||||
#login form ul.help li.first-child a { color:#54564b; text-decoration:none;}
|
||||
#login form ul.help li a:hover { text-decoration:underline; }
|
||||
#login form .userName { width:172px; overflow:hidden; border-bottom:1px solid #e4e4e4; padding:0 0 6px 0; margin-top:-5px;}
|
||||
#login form .userName strong { color:#282828; float:left; padding:4px 0 0 2px; font:bold .9em Tahoma;}
|
||||
#login form .userName a { float:right;}
|
||||
#login form ul.userMenu { padding:0 0 6px 4px; overflow:hidden; margin-top:10px;}
|
||||
#login form ul.userMenu li { list-style:none; padding-left:10px; background:url(../images/default/bulletFF1A00.gif) no-repeat left 4px; height:18px; }
|
||||
#login form ul.userMenu li a { color:#54564b; text-decoration:none;}
|
||||
#login form ul.userMenu li a:hover { text-decoration:underline;}
|
||||
#login form p.latestLogin { color:#999999; font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif;}
|
||||
#login form p.latestLogin span { font:1em Tahoma;}
|
||||
.login_default { border:2px solid #d9d9d9; width:196px; position:relative; _padding-top:2px; display:block;}
|
||||
*:first-child+html body .login_default { padding-top:2px;}
|
||||
.login_default legend { display:block; width:0; height:0; overflow:hidden; font-size:0;}
|
||||
.login_default form { position:relative; border:1px solid #cacaca; padding:11px 11px 7px 11px; width:172px;}
|
||||
.login_default form .idpwWrap { overflow:hidden; clear:both; width:172px;}
|
||||
.login_default form .idpw { float:left; width:110px; }
|
||||
.login_default form .idpw input { border:1px solid #c9c9c9; color:#282828; width:105px; background:#fbfbfb; padding:1px 5px; margin-bottom:2px; font:.9em Tahoma;}
|
||||
.login_default form .login { float:right;}
|
||||
.login_default form p.save { clear:both; padding:.3em 0;}
|
||||
.login_default form p.save input { vertical-align:middle; _margin:-3px;}
|
||||
*:first-child+html body .login_default form p input { margin:-3px; }
|
||||
.login_default form p.save label { font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif; color:#999999;}
|
||||
.login_default form ul.help { border-top:1px solid #e4e4e4; overflow:hidden; padding:.5em 0 0 0; white-space:nowrap;}
|
||||
.login_default form ul.help li { float:left; display:block; padding:0 3px 0 7px; background:url(../images/default/vrType1.gif) no-repeat left center;}
|
||||
.login_default form ul.help li.first-child { background:none; padding-left:0;}
|
||||
.login_default form ul.help li a { color:#999999; font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif; white-space:nowrap; text-decoration:none; }
|
||||
.login_default form ul.help li.first-child a { color:#54564b; text-decoration:none;}
|
||||
.login_default form ul.help li a:hover { text-decoration:underline; }
|
||||
.login_default form .userName { position:relative; width:172px; overflow:hidden; border-bottom:1px solid #e4e4e4; padding:0 0 6px 0; margin-top:-5px;}
|
||||
.login_default form .userName strong { color:#282828; padding:4px 0 0 2px; font:bold .9em Tahoma;}
|
||||
.login_default form .userName a { position:relative; top:5px; right:0px; }
|
||||
.login_default form ul.userMenu { padding:0 0 6px 4px; overflow:hidden; margin-top:10px;}
|
||||
.login_default form ul.userMenu li { list-style:none; padding-left:10px; background:url(../images/default/bulletFF1A00.gif) no-repeat left 4px; height:18px; }
|
||||
.login_default form ul.userMenu li a { color:#54564b; text-decoration:none;}
|
||||
.login_default form ul.userMenu li a:hover { text-decoration:underline;}
|
||||
.login_default form p.latestLogin { color:#999999; font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif;}
|
||||
.login_default form p.latestLogin span { font:1em Tahoma;}
|
||||
|
||||
img.login_mask { width:201px; height:5px; background:#ffffff; display:block;}
|
||||
#openid_login { border:2px solid #d9d9d9; width:196px; position:relative; _padding-top:2px; display:block; }
|
||||
*:first-child+html body #openid_login { padding-top:2px;}
|
||||
#openid_login legend { display:block; width:0; height:0; overflow:hidden; font-size:0;}
|
||||
#openid_login form { position:relative; border:1px solid #cacaca; padding:11px 11px 7px 11px; width:172px; }
|
||||
#openid_login form .idpwWrap { overflow:hidden; clear:both; width:172px;}
|
||||
#openid_login form .idpw { float:left;}
|
||||
#openid_login form .idpw p { margin-bottom:5px; background: url(../images/openid_login_bg.gif) left no-repeat; padding-left:18px; font-size:.9em Tahoma;color:#999999}
|
||||
#openid_login form .idpw input { border:1px solid #c9c9c9; color:#282828; width:105px; background:#fbfbfb; padding:1px 5px; margin-bottom:2px; font:.9em Tahoma; }
|
||||
#openid_login form .login { float:right;}
|
||||
#openid_login form p.save { clear:both; padding:.3em 0;}
|
||||
#openid_login form p.save input { vertical-align:middle; _margin:-3px;}
|
||||
*:first-child+html body #openid_login form p input { margin:-3px; }
|
||||
#openid_login form p.save label { font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif; color:#999999;}
|
||||
.openid_login_default { border:2px solid #d9d9d9; width:196px; position:relative; _padding-top:2px; display:block; }
|
||||
*:first-child+html body .openid_login_default { padding-top:2px;}
|
||||
.openid_login_default legend { display:block; width:0; height:0; overflow:hidden; font-size:0;}
|
||||
.openid_login_default form { position:relative; border:1px solid #cacaca; padding:11px 11px 7px 11px; width:172px; }
|
||||
.openid_login_default form .idpwWrap { overflow:hidden; clear:both; width:172px;}
|
||||
.openid_login_default form .idpw { float:left;}
|
||||
.openid_login_default form .idpw p { margin-bottom:5px; background: url(../images/openid_login_bg.gif) left no-repeat; padding-left:18px; font-size:.9em Tahoma;color:#999999}
|
||||
.openid_login_default form .idpw input { border:1px solid #c9c9c9; color:#282828; width:105px; background:#fbfbfb; padding:1px 5px; margin-bottom:2px; font:.9em Tahoma; }
|
||||
.openid_login_default form .login { float:right;}
|
||||
.openid_login_default form p.save { clear:both; padding:.3em 0;}
|
||||
.openid_login_default form p.save input { vertical-align:middle; _margin:-3px;}
|
||||
*:first-child+html body .openid_login_default form p input { margin:-3px; }
|
||||
.openid_login_default form p.save label { font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif; color:#999999;}
|
||||
|
|
|
|||
|
|
@ -1,38 +1,38 @@
|
|||
#login { border:2px solid #d9d9d9; width:196px; position:relative; _padding-top:2px; display:block;}
|
||||
*:first-child+html body#white #login { padding-top:2px;}
|
||||
#login legend { display:block; width:0; height:0; overflow:hidden; font-size:0;}
|
||||
#login form { position:relative; border:1px solid #cacaca; padding:11px 11px 7px 11px; width:172px;}
|
||||
#login form .idpwWrap { overflow:hidden; clear:both; width:172px;}
|
||||
#login form .idpw { float:left; width:110px;}
|
||||
#login form .idpw input { border:1px solid #c9c9c9; color:#282828; width:105px; background:#fbfbfb; padding:1px 5px; margin-bottom:2px; font:.9em Tahoma;}
|
||||
#login form .login { float:right;}
|
||||
#login form p.save { clear:both; padding:.3em 0;}
|
||||
#login form p.save input { vertical-align:middle; _margin:-3px;}
|
||||
*:first-child+html body#white #login form p input { margin:-3px; }
|
||||
#login form p.save label { font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif; color:#999999;}
|
||||
#login form ul.help { border-top:1px solid #e4e4e4; overflow:hidden; padding:.5em 0 0 0; white-space:nowrap;}
|
||||
#login form ul.help li { list-style:none; float:left; display:block; padding:0 3px 0 7px; background:url(../images/white/vrType1.gif) no-repeat left center;}
|
||||
#login form ul.help li.first-child { background:none; padding-left:0;}
|
||||
#login form ul.help li a { color:#999999; font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif; white-space:nowrap; text-decoration:none; }
|
||||
#login form ul.help li a:hover { text-decoration:underline; }
|
||||
#login form ul.help li.first-child a { color:#54564b;}
|
||||
#login form .userName { width:172px; overflow:hidden; border-bottom:1px solid #e4e4e4; padding:0 0 6px 0; margin-top:-5px;}
|
||||
#login form .userName strong { color:#282828; float:left; padding:4px 0 0 2px; font:bold .9em Tahoma;}
|
||||
#login form .userName a { float:right; text-decoration:none; }
|
||||
#login form ul.userMenu { padding:0 0 6px 4px; overflow:hidden; margin-top:10px;}
|
||||
#login form ul.userMenu li { list-style:none; padding-left:10px; background:url(../images/white/bulletFF1A00.gif) no-repeat left 4px; height:18px; }
|
||||
#login form ul.userMenu li a { color:#54564b; text-decoration:none; }
|
||||
#login form ul.userMenu li a:hover { text-decoration:underline; }
|
||||
#login form p.latestLogin { color:#999999; font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif;}
|
||||
#login form p.latestLogin span { font:1em Tahoma;}
|
||||
.login_white { border:2px solid #d9d9d9; width:196px; position:relative; _padding-top:2px; display:block;}
|
||||
*:first-child+html body#white .login_white { padding-top:2px;}
|
||||
.login_white legend { display:block; width:0; height:0; overflow:hidden; font-size:0;}
|
||||
.login_white form { position:relative; border:1px solid #cacaca; padding:11px 11px 7px 11px; width:172px;}
|
||||
.login_white form .idpwWrap { overflow:hidden; clear:both; width:172px;}
|
||||
.login_white form .idpw { float:left; width:110px;}
|
||||
.login_white form .idpw input { border:1px solid #c9c9c9; color:#282828; width:105px; background:#fbfbfb; padding:1px 5px; margin-bottom:2px; font:.9em Tahoma;}
|
||||
.login_white form .login { float:right;}
|
||||
.login_white form p.save { clear:both; padding:.3em 0;}
|
||||
.login_white form p.save input { vertical-align:middle; _margin:-3px;}
|
||||
*:first-child+html body#white .login_white form p input { margin:-3px; }
|
||||
.login_white form p.save label { font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif; color:#999999;}
|
||||
.login_white form ul.help { border-top:1px solid #e4e4e4; overflow:hidden; padding:.5em 0 0 0; white-space:nowrap;}
|
||||
.login_white form ul.help li { list-style:none; float:left; display:block; padding:0 3px 0 7px; background:url(../images/white/vrType1.gif) no-repeat left center;}
|
||||
.login_white form ul.help li.first-child { background:none; padding-left:0;}
|
||||
.login_white form ul.help li a { color:#999999; font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif; white-space:nowrap; text-decoration:none; }
|
||||
.login_white form ul.help li a:hover { text-decoration:underline; }
|
||||
.login_white form ul.help li.first-child a { color:#54564b;}
|
||||
.login_white form .userName { position:relative; width:172px; overflow:hidden; border-bottom:1px solid #e4e4e4; padding:0 0 6px 0; margin-top:-5px;}
|
||||
.login_white form .userName strong { color:#282828; padding:4px 0 0 2px; font:bold .9em Tahoma;}
|
||||
.login_white form .userName a { position:relative; top:5px; right:0px; }
|
||||
.login_white form ul.userMenu { padding:0 0 6px 4px; overflow:hidden; margin-top:10px;}
|
||||
.login_white form ul.userMenu li { list-style:none; padding-left:10px; background:url(../images/white/bulletFF1A00.gif) no-repeat left 4px; height:18px; }
|
||||
.login_white form ul.userMenu li a { color:#54564b; text-decoration:none; }
|
||||
.login_white form ul.userMenu li a:hover { text-decoration:underline; }
|
||||
.login_white form p.latestLogin { color:#999999; font:.9em "돋움", Dotum, "굴림", Gulim, AppleGothic, Sans-serif;}
|
||||
.login_white form p.latestLogin span { font:1em Tahoma;}
|
||||
|
||||
img.login_mask { width:201px; height:5px; background:#ffffff; display:block;}
|
||||
#openid_login { border:2px solid #d9d9d9; width:196px; position:relative; _padding-top:2px; display:block; }
|
||||
*:first-child+html body #openid_login { padding-top:2px;}
|
||||
#openid_login legend { display:block; width:0; height:0; overflow:hidden; font-size:0;}
|
||||
#openid_login form { position:relative; border:1px solid #cacaca; padding:11px 11px 7px 11px; width:172px; }
|
||||
#openid_login form .idpwWrap { overflow:hidden; clear:both; width:172px;}
|
||||
#openid_login form .idpw { float:left;}
|
||||
#openid_login form .idpw p { margin-bottom:5px; background: url(../images/openid_login_bg.gif) left no-repeat; padding-left:18px; font-size:.9em Tahoma;color:#999999}
|
||||
#openid_login form .idpw input { border:1px solid #c9c9c9; color:#282828; width:105px; background:#fbfbfb; padding:1px 5px; margin-bottom:2px; font:.9em Tahoma; }
|
||||
#openid_login form .login { float:right;}
|
||||
.openid_login_white { border:2px solid #d9d9d9; width:196px; position:relative; _padding-top:2px; display:block; }
|
||||
*:first-child+html body .openid_login_white { padding-top:2px;}
|
||||
.openid_login_white legend { display:block; width:0; height:0; overflow:hidden; font-size:0;}
|
||||
.openid_login_white form { position:relative; border:1px solid #cacaca; padding:11px 11px 7px 11px; width:172px; }
|
||||
.openid_login_white form .idpwWrap { overflow:hidden; clear:both; width:172px;}
|
||||
.openid_login_white form .idpw { float:left;}
|
||||
.openid_login_white form .idpw p { margin-bottom:5px; background: url(../images/openid_login_bg.gif) left no-repeat; padding-left:18px; font-size:.9em Tahoma;color:#999999}
|
||||
.openid_login_white form .idpw input { border:1px solid #c9c9c9; color:#282828; width:105px; background:#fbfbfb; padding:1px 5px; margin-bottom:2px; font:.9em Tahoma; }
|
||||
.openid_login_white form .login { float:right;}
|
||||
|
|
|
|||
|
|
@ -34,14 +34,14 @@ function completeOpenIDLogin(ret_obj, response_tags) {
|
|||
|
||||
/* 오픈 아이디 폼 변환 */
|
||||
function toggleLoginForm(obj) {
|
||||
if(xGetElementById('login').style.display != "none") {
|
||||
xGetElementById('login').style.display = "none";
|
||||
xGetElementById('openid_login').style.display = "block";
|
||||
xGetElementById('use_open_id_2').checked = true;
|
||||
} else {
|
||||
xGetElementById('openid_login').style.display = "none";
|
||||
xGetElementById('login').style.display = "block";
|
||||
xGetElementById('use_open_id').checked = false;
|
||||
xGetElementById('use_open_id_2').checked = false;
|
||||
}
|
||||
if(xGetElementById('login').style.display != "none") {
|
||||
xGetElementById('login').style.display = "none";
|
||||
xGetElementById('openid_login').style.display = "block";
|
||||
xGetElementById('use_open_id_2').checked = true;
|
||||
} else {
|
||||
xGetElementById('openid_login').style.display = "none";
|
||||
xGetElementById('login').style.display = "block";
|
||||
xGetElementById('use_open_id').checked = false;
|
||||
xGetElementById('use_open_id_2').checked = false;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
<!--%import("./filter/openid_login.xml")-->
|
||||
<!--%import("./js/login.js")-->
|
||||
|
||||
<fieldset id="login">
|
||||
<fieldset id="login" class="login_{$colorset}">
|
||||
<legend>{$lang->cmd_login}</legend>
|
||||
<form action="./" method="get" onsubmit="return procFilter(this, widget_login)" id="fo_login_widget">
|
||||
|
||||
|
|
@ -33,14 +33,14 @@
|
|||
</p>
|
||||
<ul class="help">
|
||||
<li class="first-child"><a href="{getUrl('act','dispMemberSignUpForm')}">{$lang->cmd_signup}</a></li>
|
||||
<!--<li><a href="#">아이디/비밀번호 찾기</a></li>-->
|
||||
<li><a href="{getUrl('act','dispMemberFindAccount')}">{$lang->cmd_find_member_account}</a></li>
|
||||
</ul>
|
||||
</form>
|
||||
</fieldset>
|
||||
|
||||
<!-- OpenID -->
|
||||
<!--@if($member_config->enable_openid=='Y')-->
|
||||
<fieldset id="openid_login" style="display:none;">
|
||||
<fieldset id="openid_login" class="openid_login_{$colorset}" style="display:none;">
|
||||
<legend>{$lang->cmd_login}</legend>
|
||||
<form action="./" method="post" onsubmit="return procFilter(this, openid_login)" >
|
||||
<div class="idpwWrap">
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
<!--%import("./filter/logout.xml")-->
|
||||
|
||||
<fieldset id="login">
|
||||
<fieldset id="login" class="login_{$colorset}">
|
||||
<legend>{$lang->cmd_login}</legend>
|
||||
<form action="" method="post">
|
||||
|
||||
|
|
@ -20,7 +20,7 @@
|
|||
<ul class="userMenu">
|
||||
<li><a href="{getUrl('act','dispMemberInfo','member_srl',$logged_info->member_srl)}">{$lang->cmd_view_member_info}</a></li>
|
||||
<li><a href="{getUrl('act','dispMemberFriend','member_srl',$logged_info->member_srl)}">{$lang->cmd_view_friend}</a></li>
|
||||
<li><a href="{getUrl('act','dispMemberMessages','member_srl',$logged_info->member_srl)}">{$lang->cmd_view_message_box}</a></li>
|
||||
<li><a href="{getUrl('act','dispMemberMessages','message_type','','member_srl',$logged_info->member_srl)}">{$lang->cmd_view_message_box}</a></li>
|
||||
<li><a href="{getUrl('act','dispMemberScrappedDocument','member_srl',$logged_info->member_srl)}">{$lang->cmd_view_scrapped_document}</a></li>
|
||||
|
||||
<!--@if($logged_info->is_admin=="Y")-->
|
||||
|
|
|
|||
|
|
@ -41,5 +41,17 @@
|
|||
<title xml:lang="zh-CN">默认</title>
|
||||
<title xml:lang="en">default</title>
|
||||
</color>
|
||||
<color name="white">
|
||||
<title xml:lang="ko">하얀색</title>
|
||||
<title xml:lang="jp">白</title>
|
||||
<title xml:lang="en">white</title>
|
||||
<title xml:lang="zh-CN">白色</title>
|
||||
</color>
|
||||
<color name="black">
|
||||
<title xml:lang="ko">검은색</title>
|
||||
<title xml:lang="jp">黒</title>
|
||||
<title xml:lang="en">Black</title>
|
||||
<title xml:lang="zh-CN">黑色</title>
|
||||
</color>
|
||||
</colorset>
|
||||
</skin>
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@
|
|||
<title xml:lang="jp">XEデフォルトレイアウト用の最新コンテンツ表示スキン</title>
|
||||
<title xml:lang="zh-CN">XE 官方网站主题列表</title>
|
||||
<title xml:lang="en">XE Official Layout's newest document skin</title>
|
||||
|
||||
<maker email_address="zero@zeroboard.com" link="http://www.zeroboard.com" date="2007. 8. 1">
|
||||
<name xml:lang="ko">제로</name>
|
||||
<name xml:lang="jp">zero</name>
|
||||
|
|
@ -29,10 +28,10 @@
|
|||
布局: zero (http://blog.nzeo.com)
|
||||
</description>
|
||||
<description xml:lang="en">
|
||||
It is a skin suitable for the XE official layout.
|
||||
Design : So-Ra Lee (http://ra-ra-.pe.kr)
|
||||
HTML/CSS : Chan-Myung Jeong(http://naradesign.net)
|
||||
Layout : zero (http://blog.nzeo.com)
|
||||
It is a skin suitable for the XE official layout.
|
||||
Design : So-Ra Lee (http://ra-ra-.pe.kr)
|
||||
HTML/CSS : Chan-Myung Jeong(http://naradesign.net)
|
||||
Layout : zero (http://blog.nzeo.com)
|
||||
</description>
|
||||
</maker>
|
||||
<colorset>
|
||||
|
|
|
|||
|
|
@ -59,14 +59,18 @@
|
|||
</var>
|
||||
<var id="thumbnail_type">
|
||||
<name xml:lang="ko">썸네일 생성 방법</name>
|
||||
<name xml:lang="zh-CN">缩略图生成方式</name>
|
||||
<description xml:lang="ko">썸네일 생성 방법을 선택할 수 있습니다. (crop : 꽉 채우기, ratio : 비율 맞추기)</description>
|
||||
<description xml:lang="zh-CN">可以选择缩略图生成方式。 (crop : 裁减, ratio : 比例)</description>
|
||||
<type>select</type>
|
||||
<options>
|
||||
<name xml:lang="ko">Crop (채우기)</name>
|
||||
<name xml:lang="zh-CN">Crop (裁减)</name>
|
||||
<value>crop</value>
|
||||
</options>
|
||||
<options>
|
||||
<name xml:lang="ko">Ratio (비율 맞추기)</name>
|
||||
<name xml:lang="zh-CN">Ratio (比例)</name>
|
||||
<value>ratio</value>
|
||||
</options>
|
||||
</var>
|
||||
|
|
@ -85,7 +89,9 @@
|
|||
</var>
|
||||
<var id="thumbnail_height">
|
||||
<name xml:lang="ko">이미지 세로크기</name>
|
||||
<name xml:lang="zh-CN">高度</name>
|
||||
<description xml:lang="ko">이미지의 세로 크기를 지정할 수 있습니다. (기본 100px)</description>
|
||||
<description xml:lang="zh-CN">可以指定图片高度。(默认为100px)</description>
|
||||
<type>text</type>
|
||||
</var>
|
||||
<var id="cols_list_count">
|
||||
|
|
|
|||
|
|
@ -10,15 +10,17 @@
|
|||
.ni_box .thumbnail_box .thumbnail img { border:1px solid #DEDEDE; }
|
||||
.ni_box .thumbnail_box .thumbnail img:hover { border:1px solid #54564b; }
|
||||
|
||||
.ni_box .thumbnail_box .title { text-align:center; }
|
||||
|
||||
.ni_box .thumbnail_box a { color:#000000; text-decoration:none; }
|
||||
.ni_box .thumbnail_box a:visited { color:#54564b; text-decoration:none; }
|
||||
|
||||
.ni_box .thumbnail_box td.bottomBorder { border-bottom:1px dashed #EEEEEE; padding-bottom:5px; }
|
||||
.ni_box .thumbnail_box div strong { font-weight:bold; font-size:0.75em; color:#ed2a32; }
|
||||
.ni_box .thumbnail_box div.author { color:#54564b; }
|
||||
.ni_box .thumbnail_box div.author a { color:#54564b; }
|
||||
.ni_box .thumbnail_box div.regdate { font-size:0.75em; color:#AAAAAA; margin-top:2px;}
|
||||
.ni_box .thumbnail_box div strong { font-weight:bold; font-size:0.9em; color:#ed2a32; }
|
||||
.ni_box .thumbnail_box div.author { color:#54564b; text-align:center;}
|
||||
.ni_box .thumbnail_box div.author span,div { color:#54564b; }
|
||||
.ni_box .thumbnail_box div.regdate { font-size:0.9em; color:#AAAAAA; margin-top:2px;text-align:center;}
|
||||
|
||||
.ni_box .thumbnail_box div.readAndVoted { color:#333333; font-size:0.75em; }
|
||||
.ni_box .thumbnail_box div.readAndVoted span.div_block { color:#333333; font-size:0.75em; }
|
||||
.ni_box .thumbnail_box div.readAndVoted { color:#999999; font-size:0.9em; text-align:center;}
|
||||
.ni_box .thumbnail_box div.readAndVoted span.div_block { color:#333333; font-size:0.9em; }
|
||||
.ni_box .thumbnail_box div.readAndVoted strong { color:#FE6700; }
|
||||
|
|
|
|||
|
|
@ -21,12 +21,12 @@
|
|||
<!--@if($oDocument->document_srl)-->
|
||||
<div class="thumbnail"><a href="{getUrl('','document_srl',$oDocument->document_srl)}"><img src="{$oDocument->getThumbnail($widget_info->thumbnail_width,$widget_info->thumbnail_height,$widget_info->thumbnail_type)}" width="{$widget_info->thumbnail_width}" height="{$widget_info->thumbnail_height}" border="0" alt="" class="thumbnail" /></a></div>
|
||||
|
||||
<div>
|
||||
<div class="title">
|
||||
<a href="{$oDocument->getPermanentUrl()}#{$oDocument->getCommentCount()}">{$oDocument->getTitleText($widget_info->title_length)}</a>
|
||||
<!--@if($oDocument->getCommentCount())--><strong>[{$oDocument->getCommentCount()}]</strong><!--@end-->
|
||||
</div>
|
||||
<!--@if($widget_info->display_author == 'Y')-->
|
||||
<div class="author member_{$oDocument->get('member_srl')}">{$oDocument->getNickName()}</div>
|
||||
<div class="author"><div class="member_{$oDocument->get('member_srl')}">{$oDocument->getNickName()}</div></div>
|
||||
<!--@end-->
|
||||
|
||||
<!--@if($widget_info->display_regdate == 'Y')-->
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
|
||||
<!--@if($widget_info->display_voted_count == 'Y' && $oDocument->get('voted_count')>0 )-->
|
||||
|
||||
<!--@if($widget_info->display_readed_count == 'Y')--><span class="div_block">|</span><!--@end-->
|
||||
<!--@if($widget_info->display_readed_count == 'Y')--><br /><!--@end-->
|
||||
|
||||
{$lang->voted_count} <strong>{$oDocument->get('voted_count')}</strong>
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue