mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-29 16:19:58 +09:00
git-svn-id: http://xe-core.googlecode.com/svn/trunk@4092 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
commit
80c77812a0
112 changed files with 3540 additions and 635 deletions
|
|
@ -714,18 +714,18 @@
|
|||
/**
|
||||
* @brief js file을 추가
|
||||
**/
|
||||
function addJsFile($file, $optimized = true) {
|
||||
function addJsFile($file, $optimized = true, $targetie = '') {
|
||||
$oContext = &Context::getInstance();
|
||||
return $oContext->_addJsFile($file, $optimized);
|
||||
return $oContext->_addJsFile($file, $optimized, $targetie);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief js file을 추가
|
||||
**/
|
||||
function _addJsFile($file, $optimized) {
|
||||
function _addJsFile($file, $optimized, $targetie) {
|
||||
if(in_array($file, $this->js_files)) return;
|
||||
//if(!preg_match('/^http:\/\//i',$file)) $file = str_replace(realpath("."), ".", realpath($file));
|
||||
$this->js_files[] = array('file' => $file, 'optimized' => $optimized);
|
||||
$this->js_files[] = array('file' => $file, 'optimized' => $optimized, 'targetie' => $targetie);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -763,19 +763,19 @@
|
|||
/**
|
||||
* @brief CSS file 추가
|
||||
**/
|
||||
function addCSSFile($file, $optimized = true, $media = 'all') {
|
||||
function addCSSFile($file, $optimized = true, $media = 'all', $targetie = '') {
|
||||
$oContext = &Context::getInstance();
|
||||
return $oContext->_addCSSFile($file, $optimized, $media);
|
||||
return $oContext->_addCSSFile($file, $optimized, $media, $targetie);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief CSS file 추가
|
||||
**/
|
||||
function _addCSSFile($file, $optimized, $media) {
|
||||
function _addCSSFile($file, $optimized, $media, $targetie) {
|
||||
if(in_array($file, $this->css_files)) return;
|
||||
|
||||
//if(preg_match('/^http:\/\//i',$file)) $file = str_replace(realpath("."), ".", realpath($file));
|
||||
$this->css_files[] = array('file' => $file, 'optimized' => $optimized, 'media' => $media);
|
||||
$this->css_files[] = array('file' => $file, 'optimized' => $optimized, 'media' => $media, 'targetie' => $targetie);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -892,6 +892,9 @@
|
|||
// <img|br> 코드 변환
|
||||
$content = preg_replace('/<(img|br)([^>\/]*)(\/>|>)/i','<$1$2 />', $content);
|
||||
|
||||
// 주소/?mid등과 같은 index.php가 명시되지 않은 파일의 target 변경
|
||||
//$content = str_replace(Context::getRequestUri().'?',Context::getRequestUri().'index.php?',$content);
|
||||
|
||||
return $content;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -426,6 +426,7 @@
|
|||
* @brief 카운터 캐시 데이터 얻어오기
|
||||
**/
|
||||
function getCountCache($tables, $condition) {
|
||||
return false;
|
||||
if(!$tables) return false;
|
||||
if(!is_dir($this->count_cache_path)) return FileHandler::makeDir($this->count_cache_path);
|
||||
|
||||
|
|
@ -456,6 +457,7 @@
|
|||
* @brief 카운터 캐시 데이터 저장
|
||||
**/
|
||||
function putCountCache($tables, $condition, $count = 0) {
|
||||
return false;
|
||||
if(!$tables) return false;
|
||||
if(!is_dir($this->count_cache_path)) return FileHandler::makeDir($this->count_cache_path);
|
||||
|
||||
|
|
@ -476,6 +478,7 @@
|
|||
* @brief 카운터 캐시 리셋
|
||||
**/
|
||||
function resetCountCache($tables) {
|
||||
return false;
|
||||
if(!$tables) return false;
|
||||
if(!is_dir($this->count_cache_path)) return FileHandler::makeDir($this->count_cache_path);
|
||||
|
||||
|
|
|
|||
|
|
@ -144,7 +144,7 @@
|
|||
* tail -f ./files/_debug_message.php로 하여 console로 확인하면 편리함\n
|
||||
**/
|
||||
function _debugOutput() {
|
||||
if(!__DEBUG__ || Context::getResponseMethod()!='HTML' ) return;
|
||||
if(!__DEBUG__) return;
|
||||
|
||||
$end = getMicroTime();
|
||||
|
||||
|
|
@ -189,9 +189,9 @@
|
|||
// 전체 실행 시간 작성
|
||||
$buff .= sprintf("\tTotal elapsed time \t\t: %0.5f sec", $end-__StartTime__);
|
||||
|
||||
if(__DEBUG_OUTPUT__==1) return $buff;
|
||||
if(__DEBUG_OUTPUT__==1 && Context::getResponseMethod()=='HTML') return "<!--\r\n".$buff."\r\n-->";
|
||||
|
||||
debugPrint($buff, false);
|
||||
if(__DEBUG_OUTPUT__==0) debugPrint($buff, false);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -115,8 +115,8 @@
|
|||
// <!--@, --> 의 변경
|
||||
$buff = preg_replace_callback('!<\!--@(.*?)-->!is', array($this, '_compileFuncToCode'), $buff);
|
||||
|
||||
// import xml filter/ css/ js/ 언어파일 <!--%import("filename"[,optimized=true|false[,media="media"]]--> (media는 css에만 적용)
|
||||
$buff = preg_replace_callback('!<\!--%import\(\"([^\"]*?)\"(,optimized\=(true|false)(,media\=\"([^\"]*)\")?)?\)-->!is', array($this, '_compileImportCode'), $buff);
|
||||
// import xml filter/ css/ js/ 언어파일 <!--%import("filename"[,optimized=true|false][,media="media"][,targetie="lt IE 6|IE 7|gte IE 8|..."])--> (media는 css에만 적용)
|
||||
$buff = preg_replace_callback('!<\!--%import\(\"([^\"]*?)\"(,optimized\=(true|false))?(,media\=\"([^\"]*)\")?(,targetie=\"([^\"]*)\")?\)-->!is', array($this, '_compileImportCode'), $buff);
|
||||
|
||||
// 파일에 쓰기 전에 직접 호출되는 것을 방지
|
||||
$buff = sprintf('%s%s%s','<?php if(!defined("__ZBXE__")) exit();?>',"\n",$buff);
|
||||
|
|
@ -265,6 +265,10 @@
|
|||
if(isset($matches[5]))
|
||||
$media = trim($matches[5]);
|
||||
if(!$media) $media = 'all';
|
||||
if(isset($matches[7]))
|
||||
$targetie = trim($matches[7]);
|
||||
if(!$targetie) $targetie = '';
|
||||
else $optimized = 'false';
|
||||
|
||||
// given_file이 lang으로 끝나게 되면 언어팩을 읽도록 함
|
||||
if(substr($given_file, -4)=='lang') {
|
||||
|
|
@ -309,12 +313,12 @@
|
|||
// css file
|
||||
case 'css' :
|
||||
$meta_file = sprintf('%s%s', $base_path, $filename);
|
||||
$output = sprintf('<?php Context::addCSSFile("%s%s", %s, "%s"); ?>', $base_path, $filename, $optimized, $media);
|
||||
$output = sprintf('<?php Context::addCSSFile("%s%s", %s, "%s", "%s"); ?>', $base_path, $filename, $optimized, $media, $targetie);
|
||||
break;
|
||||
// js file
|
||||
case 'js' :
|
||||
$meta_file = sprintf('%s%s', $base_path, $filename);
|
||||
$output = sprintf('<?php Context::addJsFile("%s%s", %s); ?>', $base_path, $filename, $optimized);
|
||||
$output = sprintf('<?php Context::addJsFile("%s%s", %s, "%s"); ?>', $base_path, $filename, $optimized, $targetie);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
251
common/css/calendar-system.css
Normal file
251
common/css/calendar-system.css
Normal file
|
|
@ -0,0 +1,251 @@
|
|||
/* The main calendar widget. DIV containing a table. */
|
||||
|
||||
.calendar {
|
||||
position: relative;
|
||||
display: none;
|
||||
border: 1px solid;
|
||||
border-color: #fff #000 #000 #fff;
|
||||
font-size: 11px;
|
||||
cursor: default;
|
||||
background: Window;
|
||||
color: WindowText;
|
||||
font-family: tahoma,verdana,sans-serif;
|
||||
}
|
||||
|
||||
.calendar table {
|
||||
border: 1px solid;
|
||||
border-color: #fff #000 #000 #fff;
|
||||
font-size: 11px;
|
||||
cursor: default;
|
||||
background: Window;
|
||||
color: WindowText;
|
||||
font-family: tahoma,verdana,sans-serif;
|
||||
}
|
||||
|
||||
/* Header part -- contains navigation buttons and day names. */
|
||||
|
||||
.calendar .button { /* "<<", "<", ">", ">>" buttons have this class */
|
||||
text-align: center;
|
||||
padding: 1px;
|
||||
border: 1px solid;
|
||||
border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;
|
||||
background: ButtonFace;
|
||||
}
|
||||
|
||||
.calendar .nav {
|
||||
background: ButtonFace url(menuarrow.gif) no-repeat 100% 100%;
|
||||
}
|
||||
|
||||
.calendar thead .title { /* This holds the current "month, year" */
|
||||
font-weight: bold;
|
||||
padding: 1px;
|
||||
border: 1px solid #000;
|
||||
background: ActiveCaption;
|
||||
color: CaptionText;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.calendar thead .headrow { /* Row <TR> containing navigation buttons */
|
||||
}
|
||||
|
||||
.calendar thead .daynames { /* Row <TR> containing the day names */
|
||||
}
|
||||
|
||||
.calendar thead .name { /* Cells <TD> containing the day names */
|
||||
border-bottom: 1px solid ButtonShadow;
|
||||
padding: 2px;
|
||||
text-align: center;
|
||||
background: ButtonFace;
|
||||
color: ButtonText;
|
||||
}
|
||||
|
||||
.calendar thead .weekend { /* How a weekend day name shows in header */
|
||||
color: #f00;
|
||||
}
|
||||
|
||||
.calendar thead .hilite { /* How do the buttons in header appear when hover */
|
||||
border: 2px solid;
|
||||
padding: 0px;
|
||||
border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;
|
||||
}
|
||||
|
||||
.calendar thead .active { /* Active (pressed) buttons in header */
|
||||
border-width: 1px;
|
||||
padding: 2px 0px 0px 2px;
|
||||
border-color: ButtonShadow ButtonHighlight ButtonHighlight ButtonShadow;
|
||||
}
|
||||
|
||||
/* The body part -- contains all the days in month. */
|
||||
|
||||
.calendar tbody .day { /* Cells <TD> containing month days dates */
|
||||
width: 2em;
|
||||
text-align: right;
|
||||
padding: 2px 4px 2px 2px;
|
||||
}
|
||||
.calendar tbody .day.othermonth {
|
||||
font-size: 80%;
|
||||
color: #aaa;
|
||||
}
|
||||
.calendar tbody .day.othermonth.oweekend {
|
||||
color: #faa;
|
||||
}
|
||||
|
||||
.calendar table .wn {
|
||||
padding: 2px 3px 2px 2px;
|
||||
border-right: 1px solid ButtonShadow;
|
||||
background: ButtonFace;
|
||||
color: ButtonText;
|
||||
}
|
||||
|
||||
.calendar tbody .rowhilite td {
|
||||
background: Highlight;
|
||||
color: HighlightText;
|
||||
}
|
||||
|
||||
.calendar tbody td.hilite { /* Hovered cells <TD> */
|
||||
padding: 1px 3px 1px 1px;
|
||||
border-top: 1px solid #fff;
|
||||
border-right: 1px solid #000;
|
||||
border-bottom: 1px solid #000;
|
||||
border-left: 1px solid #fff;
|
||||
}
|
||||
|
||||
.calendar tbody td.active { /* Active (pressed) cells <TD> */
|
||||
padding: 2px 2px 0px 2px;
|
||||
border: 1px solid;
|
||||
border-color: ButtonShadow ButtonHighlight ButtonHighlight ButtonShadow;
|
||||
}
|
||||
|
||||
.calendar tbody td.selected { /* Cell showing selected date */
|
||||
font-weight: bold;
|
||||
border: 1px solid;
|
||||
border-color: ButtonShadow ButtonHighlight ButtonHighlight ButtonShadow;
|
||||
padding: 2px 2px 0px 2px;
|
||||
background: ButtonFace;
|
||||
color: ButtonText;
|
||||
}
|
||||
|
||||
.calendar tbody td.weekend { /* Cells showing weekend days */
|
||||
color: #f00;
|
||||
}
|
||||
|
||||
.calendar tbody td.today { /* Cell showing today date */
|
||||
font-weight: bold;
|
||||
color: #00f;
|
||||
}
|
||||
|
||||
.calendar tbody td.disabled { color: GrayText; }
|
||||
|
||||
.calendar tbody .emptycell { /* Empty cells (the best is to hide them) */
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.calendar tbody .emptyrow { /* Empty row (some months need less than 6 rows) */
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* The footer part -- status bar and "Close" button */
|
||||
|
||||
.calendar tfoot .footrow { /* The <TR> in footer (only one right now) */
|
||||
}
|
||||
|
||||
.calendar tfoot .ttip { /* Tooltip (status bar) cell <TD> */
|
||||
background: ButtonFace;
|
||||
padding: 1px;
|
||||
border: 1px solid;
|
||||
border-color: ButtonShadow ButtonHighlight ButtonHighlight ButtonShadow;
|
||||
color: ButtonText;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.calendar tfoot .hilite { /* Hover style for buttons in footer */
|
||||
border-top: 1px solid #fff;
|
||||
border-right: 1px solid #000;
|
||||
border-bottom: 1px solid #000;
|
||||
border-left: 1px solid #fff;
|
||||
padding: 1px;
|
||||
background: #e4e0d8;
|
||||
}
|
||||
|
||||
.calendar tfoot .active { /* Active (pressed) style for buttons in footer */
|
||||
padding: 2px 0px 0px 2px;
|
||||
border-top: 1px solid #000;
|
||||
border-right: 1px solid #fff;
|
||||
border-bottom: 1px solid #fff;
|
||||
border-left: 1px solid #000;
|
||||
}
|
||||
|
||||
/* Combo boxes (menus that display months/years for direct selection) */
|
||||
|
||||
.calendar .combo {
|
||||
position: absolute;
|
||||
display: none;
|
||||
width: 4em;
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
cursor: default;
|
||||
border: 1px solid;
|
||||
border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight;
|
||||
background: Menu;
|
||||
color: MenuText;
|
||||
font-size: 90%;
|
||||
padding: 1px;
|
||||
z-index: 100;
|
||||
}
|
||||
|
||||
.calendar .combo .label,
|
||||
.calendar .combo .label-IEfix {
|
||||
text-align: center;
|
||||
padding: 1px;
|
||||
}
|
||||
|
||||
.calendar .combo .label-IEfix {
|
||||
width: 4em;
|
||||
}
|
||||
|
||||
.calendar .combo .active {
|
||||
padding: 0px;
|
||||
border: 1px solid #000;
|
||||
}
|
||||
|
||||
.calendar .combo .hilite {
|
||||
background: Highlight;
|
||||
color: HighlightText;
|
||||
}
|
||||
|
||||
.calendar td.time {
|
||||
border-top: 1px solid ButtonShadow;
|
||||
padding: 1px 0px;
|
||||
text-align: center;
|
||||
background-color: ButtonFace;
|
||||
}
|
||||
|
||||
.calendar td.time .hour,
|
||||
.calendar td.time .minute,
|
||||
.calendar td.time .ampm {
|
||||
padding: 0px 3px 0px 4px;
|
||||
border: 1px solid #889;
|
||||
font-weight: bold;
|
||||
background-color: Menu;
|
||||
}
|
||||
|
||||
.calendar td.time .ampm {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.calendar td.time .colon {
|
||||
padding: 0px 2px 0px 3px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.calendar td.time span.hilite {
|
||||
border-color: #000;
|
||||
background-color: Highlight;
|
||||
color: HighlightText;
|
||||
}
|
||||
|
||||
.calendar td.time span.active {
|
||||
border-color: #f00;
|
||||
background-color: #000;
|
||||
color: #0f0;
|
||||
}
|
||||
127
common/js/calendar-en.js
Normal file
127
common/js/calendar-en.js
Normal file
|
|
@ -0,0 +1,127 @@
|
|||
// ** I18N
|
||||
|
||||
// Calendar EN language
|
||||
// Author: Mihai Bazon, <mihai_bazon@yahoo.com>
|
||||
// Encoding: any
|
||||
// Distributed under the same terms as the calendar itself.
|
||||
|
||||
// For translators: please use UTF-8 if possible. We strongly believe that
|
||||
// Unicode is the answer to a real internationalized world. Also please
|
||||
// include your contact information in the header, as can be seen above.
|
||||
|
||||
// full day names
|
||||
Calendar._DN = new Array
|
||||
("Sunday",
|
||||
"Monday",
|
||||
"Tuesday",
|
||||
"Wednesday",
|
||||
"Thursday",
|
||||
"Friday",
|
||||
"Saturday",
|
||||
"Sunday");
|
||||
|
||||
// Please note that the following array of short day names (and the same goes
|
||||
// for short month names, _SMN) isn't absolutely necessary. We give it here
|
||||
// for exemplification on how one can customize the short day names, but if
|
||||
// they are simply the first N letters of the full name you can simply say:
|
||||
//
|
||||
// Calendar._SDN_len = N; // short day name length
|
||||
// Calendar._SMN_len = N; // short month name length
|
||||
//
|
||||
// If N = 3 then this is not needed either since we assume a value of 3 if not
|
||||
// present, to be compatible with translation files that were written before
|
||||
// this feature.
|
||||
|
||||
// short day names
|
||||
Calendar._SDN = new Array
|
||||
("Sun",
|
||||
"Mon",
|
||||
"Tue",
|
||||
"Wed",
|
||||
"Thu",
|
||||
"Fri",
|
||||
"Sat",
|
||||
"Sun");
|
||||
|
||||
// First day of the week. "0" means display Sunday first, "1" means display
|
||||
// Monday first, etc.
|
||||
Calendar._FD = 0;
|
||||
|
||||
// full month names
|
||||
Calendar._MN = new Array
|
||||
("January",
|
||||
"February",
|
||||
"March",
|
||||
"April",
|
||||
"May",
|
||||
"June",
|
||||
"July",
|
||||
"August",
|
||||
"September",
|
||||
"October",
|
||||
"November",
|
||||
"December");
|
||||
|
||||
// short month names
|
||||
Calendar._SMN = new Array
|
||||
("Jan",
|
||||
"Feb",
|
||||
"Mar",
|
||||
"Apr",
|
||||
"May",
|
||||
"Jun",
|
||||
"Jul",
|
||||
"Aug",
|
||||
"Sep",
|
||||
"Oct",
|
||||
"Nov",
|
||||
"Dec");
|
||||
|
||||
// tooltips
|
||||
Calendar._TT = {};
|
||||
Calendar._TT["INFO"] = "About the calendar";
|
||||
|
||||
Calendar._TT["ABOUT"] =
|
||||
"DHTML Date/Time Selector\n" +
|
||||
"(c) dynarch.com 2002-2005 / Author: Mihai Bazon\n" + // don't translate this this ;-)
|
||||
"For latest version visit: http://www.dynarch.com/projects/calendar/\n" +
|
||||
"Distributed under GNU LGPL. See http://gnu.org/licenses/lgpl.html for details." +
|
||||
"\n\n" +
|
||||
"Date selection:\n" +
|
||||
"- Use the \xab, \xbb buttons to select year\n" +
|
||||
"- Use the " + String.fromCharCode(0x2039) + ", " + String.fromCharCode(0x203a) + " buttons to select month\n" +
|
||||
"- Hold mouse button on any of the above buttons for faster selection.";
|
||||
Calendar._TT["ABOUT_TIME"] = "\n\n" +
|
||||
"Time selection:\n" +
|
||||
"- Click on any of the time parts to increase it\n" +
|
||||
"- or Shift-click to decrease it\n" +
|
||||
"- or click and drag for faster selection.";
|
||||
|
||||
Calendar._TT["PREV_YEAR"] = "Prev. year (hold for menu)";
|
||||
Calendar._TT["PREV_MONTH"] = "Prev. month (hold for menu)";
|
||||
Calendar._TT["GO_TODAY"] = "Go Today";
|
||||
Calendar._TT["NEXT_MONTH"] = "Next month (hold for menu)";
|
||||
Calendar._TT["NEXT_YEAR"] = "Next year (hold for menu)";
|
||||
Calendar._TT["SEL_DATE"] = "Select date";
|
||||
Calendar._TT["DRAG_TO_MOVE"] = "Drag to move";
|
||||
Calendar._TT["PART_TODAY"] = " (today)";
|
||||
|
||||
// the following is to inform that "%s" is to be the first day of week
|
||||
// %s will be replaced with the day name.
|
||||
Calendar._TT["DAY_FIRST"] = "Display %s first";
|
||||
|
||||
// This may be locale-dependent. It specifies the week-end days, as an array
|
||||
// of comma-separated numbers. The numbers are from 0 to 6: 0 means Sunday, 1
|
||||
// means Monday, etc.
|
||||
Calendar._TT["WEEKEND"] = "0,6";
|
||||
|
||||
Calendar._TT["CLOSE"] = "Close";
|
||||
Calendar._TT["TODAY"] = "Today";
|
||||
Calendar._TT["TIME_PART"] = "(Shift-)Click or drag to change value";
|
||||
|
||||
// date formats
|
||||
Calendar._TT["DEF_DATE_FORMAT"] = "%Y-%m-%d";
|
||||
Calendar._TT["TT_DATE_FORMAT"] = "%a, %b %e";
|
||||
|
||||
Calendar._TT["WK"] = "wk";
|
||||
Calendar._TT["TIME"] = "Time:";
|
||||
124
common/js/calendar-ko.js
Normal file
124
common/js/calendar-ko.js
Normal file
|
|
@ -0,0 +1,124 @@
|
|||
// ** I18N
|
||||
|
||||
// Calendar KO language
|
||||
// Author: Mihai Bazon, <mihai_bazon@yahoo.com>
|
||||
// Translation: Yourim Yi <yyi@yourim.net>
|
||||
// Encoding: UTF-8
|
||||
// lang : ko
|
||||
// Distributed under the same terms as the calendar itself.
|
||||
|
||||
// For translators: please use UTF-8 if possible. We strongly believe that
|
||||
// Unicode is the answer to a real internationalized world. Also please
|
||||
// include your contact information in the header, as can be seen above.
|
||||
|
||||
// full day names
|
||||
|
||||
Calendar._DN = new Array
|
||||
("일요일",
|
||||
"월요일",
|
||||
"화요일",
|
||||
"수요일",
|
||||
"목요일",
|
||||
"금요일",
|
||||
"토요일",
|
||||
"일요일");
|
||||
|
||||
// Please note that the following array of short day names (and the same goes
|
||||
// for short month names, _SMN) isn't absolutely necessary. We give it here
|
||||
// for exemplification on how one can customize the short day names, but if
|
||||
// they are simply the first N letters of the full name you can simply say:
|
||||
//
|
||||
// Calendar._SDN_len = N; // short day name length
|
||||
// Calendar._SMN_len = N; // short month name length
|
||||
//
|
||||
// If N = 3 then this is not needed either since we assume a value of 3 if not
|
||||
// present, to be compatible with translation files that were written before
|
||||
// this feature.
|
||||
|
||||
// short day names
|
||||
Calendar._SDN = new Array
|
||||
("일",
|
||||
"월",
|
||||
"화",
|
||||
"수",
|
||||
"목",
|
||||
"금",
|
||||
"토",
|
||||
"일");
|
||||
|
||||
// full month names
|
||||
Calendar._MN = new Array
|
||||
("1월",
|
||||
"2월",
|
||||
"3월",
|
||||
"4월",
|
||||
"5월",
|
||||
"6월",
|
||||
"7월",
|
||||
"8월",
|
||||
"9월",
|
||||
"10월",
|
||||
"11월",
|
||||
"12월");
|
||||
|
||||
// short month names
|
||||
Calendar._SMN = new Array
|
||||
("1",
|
||||
"2",
|
||||
"3",
|
||||
"4",
|
||||
"5",
|
||||
"6",
|
||||
"7",
|
||||
"8",
|
||||
"9",
|
||||
"10",
|
||||
"11",
|
||||
"12");
|
||||
|
||||
// tooltips
|
||||
Calendar._TT = {};
|
||||
Calendar._TT["INFO"] = "calendar 소개";
|
||||
|
||||
Calendar._TT["ABOUT"] =
|
||||
"DHTML Date/Time Selector\n" +
|
||||
"(c) dynarch.com 2002-2005 / Author: Mihai Bazon\n" + // don't translate this this ;-)
|
||||
"\n"+
|
||||
"최신 버전을 받으시려면 http://www.dynarch.com/projects/calendar/ 에 방문하세요\n" +
|
||||
"\n"+
|
||||
"GNU LGPL 라이센스로 배포됩니다. \n"+
|
||||
"라이센스에 대한 자세한 내용은 http://gnu.org/licenses/lgpl.html 을 읽으세요." +
|
||||
"\n\n" +
|
||||
"날짜 선택:\n" +
|
||||
"- 연도를 선택하려면 \xab, \xbb 버튼을 사용합니다\n" +
|
||||
"- 달을 선택하려면 " + String.fromCharCode(0x2039) + ", " + String.fromCharCode(0x203a) + " 버튼을 누르세요\n" +
|
||||
"- 계속 누르고 있으면 위 값들을 빠르게 선택하실 수 있습니다.";
|
||||
Calendar._TT["ABOUT_TIME"] = "\n\n" +
|
||||
"시간 선택:\n" +
|
||||
"- 마우스로 누르면 시간이 증가합니다\n" +
|
||||
"- Shift 키와 함께 누르면 감소합니다\n" +
|
||||
"- 누른 상태에서 마우스를 움직이면 좀 더 빠르게 값이 변합니다.\n";
|
||||
|
||||
Calendar._TT["PREV_YEAR"] = "지난 해 (길게 누르면 목록)";
|
||||
Calendar._TT["PREV_MONTH"] = "지난 달 (길게 누르면 목록)";
|
||||
Calendar._TT["GO_TODAY"] = "오늘 날짜로";
|
||||
Calendar._TT["NEXT_MONTH"] = "다음 달 (길게 누르면 목록)";
|
||||
Calendar._TT["NEXT_YEAR"] = "다음 해 (길게 누르면 목록)";
|
||||
Calendar._TT["SEL_DATE"] = "날짜를 선택하세요";
|
||||
Calendar._TT["DRAG_TO_MOVE"] = "마우스 드래그로 이동 하세요";
|
||||
Calendar._TT["PART_TODAY"] = " (오늘)";
|
||||
|
||||
Calendar._TT["DAY_FIRST"] = "%s 먼저 표시";
|
||||
|
||||
Calendar._TT["WEEKEND"] = "0,6";
|
||||
|
||||
Calendar._TT["CLOSE"] = "닫기";
|
||||
Calendar._TT["TODAY"] = "오늘";
|
||||
Calendar._TT["TIME_PART"] = "(Shift-)클릭 또는 드래그 하세요";
|
||||
|
||||
// date formats
|
||||
Calendar._TT["DEF_DATE_FORMAT"] = "%Y-%m-%d";
|
||||
Calendar._TT["TT_DATE_FORMAT"] = "%b/%e [%a]";
|
||||
|
||||
Calendar._TT["WK"] = "주";
|
||||
Calendar._TT["TIME"] = "시:";
|
||||
202
common/js/calendar-setup.js
Normal file
202
common/js/calendar-setup.js
Normal file
|
|
@ -0,0 +1,202 @@
|
|||
/* Copyright Mihai Bazon, 2002, 2003 | http://dynarch.com/mishoo/
|
||||
* ---------------------------------------------------------------------------
|
||||
*
|
||||
* The DHTML Calendar
|
||||
*
|
||||
* Details and latest version at:
|
||||
* http://dynarch.com/mishoo/calendar.epl
|
||||
*
|
||||
* This script is distributed under the GNU Lesser General Public License.
|
||||
* Read the entire license text here: http://www.gnu.org/licenses/lgpl.html
|
||||
*
|
||||
* This file defines helper functions for setting up the calendar. They are
|
||||
* intended to help non-programmers get a working calendar on their site
|
||||
* quickly. This script should not be seen as part of the calendar. It just
|
||||
* shows you what one can do with the calendar, while in the same time
|
||||
* providing a quick and simple method for setting it up. If you need
|
||||
* exhaustive customization of the calendar creation process feel free to
|
||||
* modify this code to suit your needs (this is recommended and much better
|
||||
* than modifying calendar.js itself).
|
||||
*/
|
||||
|
||||
// $Id: calendar-setup.js,v 1.25 2005/03/07 09:51:33 mishoo Exp $
|
||||
|
||||
/**
|
||||
* This function "patches" an input field (or other element) to use a calendar
|
||||
* widget for date selection.
|
||||
*
|
||||
* The "params" is a single object that can have the following properties:
|
||||
*
|
||||
* prop. name | description
|
||||
* -------------------------------------------------------------------------------------------------
|
||||
* inputField | the ID of an input field to store the date
|
||||
* displayArea | the ID of a DIV or other element to show the date
|
||||
* button | ID of a button or other element that will trigger the calendar
|
||||
* eventName | event that will trigger the calendar, without the "on" prefix (default: "click")
|
||||
* ifFormat | date format that will be stored in the input field
|
||||
* daFormat | the date format that will be used to display the date in displayArea
|
||||
* singleClick | (true/false) wether the calendar is in single click mode or not (default: true)
|
||||
* firstDay | numeric: 0 to 6. "0" means display Sunday first, "1" means display Monday first, etc.
|
||||
* align | alignment (default: "Br"); if you don't know what's this see the calendar documentation
|
||||
* range | array with 2 elements. Default: [1900, 2999] -- the range of years available
|
||||
* weekNumbers | (true/false) if it's true (default) the calendar will display week numbers
|
||||
* flat | null or element ID; if not null the calendar will be a flat calendar having the parent with the given ID
|
||||
* flatCallback | function that receives a JS Date object and returns an URL to point the browser to (for flat calendar)
|
||||
* disableFunc | function that receives a JS Date object and should return true if that date has to be disabled in the calendar
|
||||
* onSelect | function that gets called when a date is selected. You don't _have_ to supply this (the default is generally okay)
|
||||
* onClose | function that gets called when the calendar is closed. [default]
|
||||
* onUpdate | function that gets called after the date is updated in the input field. Receives a reference to the calendar.
|
||||
* date | the date that the calendar will be initially displayed to
|
||||
* showsTime | default: false; if true the calendar will include a time selector
|
||||
* timeFormat | the time format; can be "12" or "24", default is "12"
|
||||
* electric | if true (default) then given fields/date areas are updated for each move; otherwise they're updated only on close
|
||||
* step | configures the step of the years in drop-down boxes; default: 2
|
||||
* position | configures the calendar absolute position; default: null
|
||||
* cache | if "true" (but default: "false") it will reuse the same calendar object, where possible
|
||||
* showOthers | if "true" (but default: "false") it will show days from other months too
|
||||
*
|
||||
* None of them is required, they all have default values. However, if you
|
||||
* pass none of "inputField", "displayArea" or "button" you'll get a warning
|
||||
* saying "nothing to setup".
|
||||
*/
|
||||
Calendar.setup = function (params) {
|
||||
function param_default(pname, def) { if (typeof params[pname] == "undefined") { params[pname] = def; } };
|
||||
|
||||
param_default("inputField", null);
|
||||
param_default("displayArea", null);
|
||||
param_default("button", null);
|
||||
param_default("eventName", "click");
|
||||
param_default("ifFormat", "%Y/%m/%d");
|
||||
param_default("daFormat", "%Y/%m/%d");
|
||||
param_default("singleClick", true);
|
||||
param_default("disableFunc", null);
|
||||
param_default("dateStatusFunc", params["disableFunc"]); // takes precedence if both are defined
|
||||
param_default("dateText", null);
|
||||
param_default("firstDay", null);
|
||||
param_default("align", "Br");
|
||||
param_default("range", [1900, 2999]);
|
||||
param_default("weekNumbers", true);
|
||||
param_default("flat", null);
|
||||
param_default("flatCallback", null);
|
||||
param_default("onSelect", null);
|
||||
param_default("onClose", null);
|
||||
param_default("onUpdate", null);
|
||||
param_default("date", null);
|
||||
param_default("showsTime", false);
|
||||
param_default("timeFormat", "24");
|
||||
param_default("electric", true);
|
||||
param_default("step", 2);
|
||||
param_default("position", null);
|
||||
param_default("cache", false);
|
||||
param_default("showOthers", false);
|
||||
param_default("multiple", null);
|
||||
|
||||
var tmp = ["inputField", "displayArea", "button"];
|
||||
for (var i in tmp) {
|
||||
if (typeof params[tmp[i]] == "string") {
|
||||
params[tmp[i]] = document.getElementById(params[tmp[i]]);
|
||||
}
|
||||
}
|
||||
if (!(params.flat || params.multiple || params.inputField || params.displayArea || params.button)) {
|
||||
alert("Calendar.setup:\n Nothing to setup (no fields found). Please check your code");
|
||||
return false;
|
||||
}
|
||||
|
||||
function onSelect(cal) {
|
||||
var p = cal.params;
|
||||
var update = (cal.dateClicked || p.electric);
|
||||
if (update && p.inputField) {
|
||||
p.inputField.value = cal.date.print(p.ifFormat);
|
||||
if (typeof p.inputField.onchange == "function")
|
||||
p.inputField.onchange();
|
||||
}
|
||||
if (update && p.displayArea)
|
||||
p.displayArea.innerHTML = cal.date.print(p.daFormat);
|
||||
if (update && typeof p.onUpdate == "function")
|
||||
p.onUpdate(cal);
|
||||
if (update && p.flat) {
|
||||
if (typeof p.flatCallback == "function")
|
||||
p.flatCallback(cal);
|
||||
}
|
||||
if (update && p.singleClick && cal.dateClicked)
|
||||
cal.callCloseHandler();
|
||||
};
|
||||
|
||||
if (params.flat != null) {
|
||||
if (typeof params.flat == "string")
|
||||
params.flat = document.getElementById(params.flat);
|
||||
if (!params.flat) {
|
||||
alert("Calendar.setup:\n Flat specified but can't find parent.");
|
||||
return false;
|
||||
}
|
||||
var cal = new Calendar(params.firstDay, params.date, params.onSelect || onSelect);
|
||||
cal.showsOtherMonths = params.showOthers;
|
||||
cal.showsTime = params.showsTime;
|
||||
cal.time24 = (params.timeFormat == "24");
|
||||
cal.params = params;
|
||||
cal.weekNumbers = params.weekNumbers;
|
||||
cal.setRange(params.range[0], params.range[1]);
|
||||
cal.setDateStatusHandler(params.dateStatusFunc);
|
||||
cal.getDateText = params.dateText;
|
||||
if (params.ifFormat) {
|
||||
cal.setDateFormat(params.ifFormat);
|
||||
}
|
||||
if (params.inputField && typeof params.inputField.value == "string") {
|
||||
cal.parseDate(params.inputField.value);
|
||||
}
|
||||
cal.create(params.flat);
|
||||
cal.show();
|
||||
return false;
|
||||
}
|
||||
|
||||
var triggerEl = params.button || params.displayArea || params.inputField;
|
||||
triggerEl["on" + params.eventName] = function() {
|
||||
var dateEl = null;
|
||||
if(params.displayArea) dateEl = params.displayArea;
|
||||
else dateEl = params.inputField;
|
||||
var dateFmt = params.inputField ? params.ifFormat : params.daFormat;
|
||||
var mustCreate = false;
|
||||
var cal = window.calendar;
|
||||
if (dateEl)
|
||||
params.date = Date.parseDate(dateEl.value || dateEl.innerHTML, dateFmt);
|
||||
if (!(cal && params.cache)) {
|
||||
window.calendar = cal = new Calendar(params.firstDay,
|
||||
params.date,
|
||||
params.onSelect || onSelect,
|
||||
params.onClose || function(cal) { cal.hide(); });
|
||||
cal.showsTime = params.showsTime;
|
||||
cal.time24 = (params.timeFormat == "24");
|
||||
cal.weekNumbers = params.weekNumbers;
|
||||
mustCreate = true;
|
||||
} else {
|
||||
if (params.date)
|
||||
cal.setDate(params.date);
|
||||
cal.hide();
|
||||
}
|
||||
if (params.multiple) {
|
||||
cal.multiple = {};
|
||||
for (var i = params.multiple.length; --i >= 0;) {
|
||||
var d = params.multiple[i];
|
||||
var ds = d.print("%Y%m%d");
|
||||
cal.multiple[ds] = d;
|
||||
}
|
||||
}
|
||||
cal.showsOtherMonths = params.showOthers;
|
||||
cal.yearStep = params.step;
|
||||
cal.setRange(params.range[0], params.range[1]);
|
||||
cal.params = params;
|
||||
cal.setDateStatusHandler(params.dateStatusFunc);
|
||||
cal.getDateText = params.dateText;
|
||||
cal.setDateFormat(dateFmt);
|
||||
if (mustCreate)
|
||||
cal.create();
|
||||
cal.refresh();
|
||||
if (!params.position)
|
||||
cal.showAtElement(params.button || params.displayArea || params.inputField, params.align);
|
||||
else
|
||||
cal.showAt(params.position[0], params.position[1]);
|
||||
return false;
|
||||
};
|
||||
|
||||
return cal;
|
||||
};
|
||||
1806
common/js/calendar.js
Normal file
1806
common/js/calendar.js
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -27,6 +27,7 @@ String.prototype.setQuery = function(key, val) {
|
|||
var idx = this.indexOf('?');
|
||||
var uri = this;
|
||||
uri = uri.replace(/#$/,'');
|
||||
|
||||
if(idx != -1) {
|
||||
uri = this.substr(0, idx);
|
||||
var query_string = this.substr(idx+1, this.length);
|
||||
|
|
@ -43,11 +44,12 @@ String.prototype.setQuery = function(key, val) {
|
|||
|
||||
q_list[q_list.length] = i+'='+arg;
|
||||
}
|
||||
return uri+"?"+q_list.join("&");
|
||||
uri = uri+"?"+q_list.join("&");
|
||||
} else {
|
||||
if(val.toString().trim()) return uri+"?"+key+"="+val;
|
||||
else return uri;
|
||||
if(val.toString().trim()) uri = uri+"?"+key+"="+val;
|
||||
}
|
||||
//uri = uri.replace(request_uri+'?',request_uri+'index.php?');
|
||||
return uri;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -109,6 +109,10 @@
|
|||
$lang->cart = 'Selected Item';
|
||||
$lang->friend = 'Friends';
|
||||
$lang->notify = 'Notification';
|
||||
$lang->order_target = 'Align Target';
|
||||
$lang->order_type = 'Sorting Type';
|
||||
$lang->order_asc = 'ascend';
|
||||
$lang->order_desc = 'descend';
|
||||
|
||||
$lang->mid = 'Module Name';
|
||||
$lang->layout = 'Layout';
|
||||
|
|
@ -129,6 +133,7 @@
|
|||
$lang->search_list_count = 'Search List Count';
|
||||
$lang->readed_count = 'Views';
|
||||
$lang->voted_count = 'Votes';
|
||||
$lang->comment_count = 'Comments';
|
||||
$lang->member_count = 'Member Count';
|
||||
$lang->date = 'Date';
|
||||
$lang->regdate = 'Registered Date';
|
||||
|
|
|
|||
|
|
@ -108,6 +108,10 @@
|
|||
$lang->cart = 'Artículo Seleccionado';
|
||||
$lang->friend = 'Amigos';
|
||||
$lang->notify = 'Notificación';
|
||||
$lang->order_target = 'Alinear Meta';
|
||||
$lang->order_type = 'Tipo de ordenamiento';
|
||||
$lang->order_asc = 'acendente';
|
||||
$lang->order_desc = 'descendente';
|
||||
|
||||
$lang->mid = 'Nombre del Módulo';
|
||||
$lang->layout = 'Diseño';
|
||||
|
|
@ -128,6 +132,7 @@
|
|||
$lang->search_list_count = 'Buscar lista Conde';
|
||||
$lang->readed_count = 'Leídos';
|
||||
$lang->voted_count = 'Recomendados';
|
||||
$lang->comment_count = 'Commentarios';
|
||||
$lang->member_count = 'Cantidad de usuarios';
|
||||
$lang->date = 'Fecha';
|
||||
$lang->regdate = 'Fecha publicada';
|
||||
|
|
|
|||
|
|
@ -1,242 +1,247 @@
|
|||
<?php
|
||||
/**
|
||||
* @file common/lang/fr.lang.php
|
||||
* @author zero (zero@nzeo.com)
Traduit par Pierre Duvent(PierreDuvent@gamil.com)
|
||||
* @brief Paquet de La Langue Francaise (Mots de base seulement)
|
||||
**/
|
||||
|
||||
// verbes et mots de base decrivant des actions
|
||||
$lang->cmd_write = 'Ecrire';
|
||||
$lang->cmd_reply = 'Répondre';
|
||||
$lang->cmd_delete = 'Supprimer';
|
||||
$lang->cmd_modify = 'Modifier';
|
||||
$lang->cmd_edit = 'Editer';
|
||||
$lang->cmd_view = 'Voir';
|
||||
$lang->cmd_view_all = 'Voir Tous';
|
||||
$lang->cmd_list = 'Liste';
|
||||
$lang->cmd_prev = 'Précédent';
|
||||
$lang->cmd_next = 'Suivant';
|
||||
$lang->cmd_send_trackback = 'Envoyer Rétrolien';
|
||||
$lang->cmd_registration = $lang->cmd_submit = 'Enrégistrer';
|
||||
$lang->cmd_comment_registration = 'Ajouter un Commentaire';
|
||||
$lang->cmd_insert = 'Insérer';
|
||||
$lang->cmd_save = 'Conserver';
|
||||
$lang->cmd_load = 'Charger';
|
||||
$lang->cmd_input = 'Entrer';
|
||||
$lang->cmd_search = 'Rechercher';
|
||||
$lang->cmd_cancel = 'Annuler';
|
||||
$lang->cmd_back = 'Retourner';
|
||||
$lang->cmd_vote = 'Recommander';
|
||||
$lang->cmd_vote_down = 'Critiquer';
|
||||
$lang->cmd_declare = 'Accuser';
|
||||
$lang->cmd_cancel_declare = 'Annuler l\'Accusation';
|
||||
$lang->cmd_declared_list = 'Liste de l\'Accusation';
|
||||
$lang->cmd_copy = 'Copier';
|
||||
$lang->cmd_move = 'Bouger';
|
||||
$lang->cmd_move_up = 'En haut';
|
||||
$lang->cmd_move_down = 'En bas';
|
||||
$lang->cmd_add_indent = 'Ajouter un Rentré';
|
||||
$lang->cmd_remove_indent = 'Enlever un Rentré';
|
||||
$lang->cmd_management = 'Gérer';
|
||||
$lang->cmd_make = 'Créer';
|
||||
$lang->cmd_select = 'Choisir';
|
||||
$lang->cmd_select_all = 'Choisir Tous';
|
||||
$lang->cmd_unselect_all = 'Annuler Tous';
|
||||
$lang->cmd_reverse_all = 'Renverser la Sélection';
|
||||
$lang->cmd_close_all = 'Fermer Tous';
|
||||
$lang->cmd_open_all = 'Ouvrir Tous';
|
||||
$lang->cmd_reload = 'Recharger';
|
||||
$lang->cmd_close = 'Fermer';
|
||||
$lang->cmd_open = 'Ouvrir';
|
||||
$lang->cmd_setup = 'Configuration';
|
||||
$lang->cmd_addition_setup = 'Configuration Additionnelle';
|
||||
$lang->cmd_option = 'Option';
|
||||
$lang->cmd_apply = 'Appliquer';
|
||||
$lang->cmd_open_calendar = 'Choisir un Jour';
|
||||
$lang->cmd_send = 'Envoyer';
|
||||
$lang->cmd_print = 'Imprimer';
|
||||
$lang->cmd_scrap = 'Coupure';
|
||||
$lang->cmd_preview = 'Avant-première';
|
||||
$lang->cmd_reset = 'Restaurer';
|
||||
$lang->cmd_remake_cache = "Recréer la Cachette du Fichier";
|
||||
$lang->cmd_publish = "Publier";
|
||||
$lang->cmd_layout_setup = 'Configurer la Mise en page';
|
||||
$lang->cmd_layout_edit = 'Editer la Mise en page';
|
||||
|
||||
$lang->enable = 'Valide';
|
||||
$lang->disable = 'Invalide';
|
||||
|
||||
// Mots essentiels
|
||||
$lang->no = 'No';
|
||||
$lang->notice = 'Notice';
|
||||
$lang->secret = 'Secret';
|
||||
$lang->category = $lang->category_srl = 'Catégorie';
|
||||
$lang->document_srl = 'Numéro de série du Document';
|
||||
$lang->user_id = 'Compte';
|
||||
$lang->author = 'Auteur';
|
||||
$lang->password = 'Mot de Passe';
|
||||
$lang->password1 = 'Mot de Passe';
|
||||
$lang->password2 = 'Confirmer du Mot de Passe';
|
||||
$lang->admin_id = 'Compte d\'Administrateur';
|
||||
$lang->writer = 'Auteur';
|
||||
$lang->user_name = 'Nom d\'utilisateur';
|
||||
$lang->nick_name = 'Surnom';
|
||||
$lang->email_address = 'Courriel';
|
||||
$lang->homepage = 'Page d\'accueil';
|
||||
$lang->blog = 'Blogue';
|
||||
$lang->birthday = 'Anniversaire';
|
||||
$lang->browser_title = 'Titre de Navigateur';
|
||||
$lang->title = 'Titre';
|
||||
$lang->title_content = 'Titre + Contenu';
|
||||
$lang->topic = 'Sujet';
|
||||
$lang->replies = 'Répondse';
|
||||
$lang->content = 'Contenu';
|
||||
$lang->document = 'Document';
|
||||
$lang->comment = 'Commentaire';
|
||||
$lang->description = 'Description';
|
||||
$lang->trackback = 'Rétrolien';
|
||||
$lang->tag = 'Tag';
|
||||
$lang->allow_comment = 'Permettre Commentaires';
|
||||
$lang->lock_comment = 'Bloquer Commentaires';
|
||||
$lang->allow_trackback = 'Permettre Rétrolien';
|
||||
$lang->uploaded_file = 'Fichier Attaché';
|
||||
$lang->grant = 'Permission';
|
||||
$lang->target = 'Cible';
|
||||
$lang->total = 'Total';
|
||||
$lang->total_count = 'Somme';
|
||||
$lang->ipaddress = 'Addresse IP';
|
||||
$lang->path = 'Chemin';
|
||||
$lang->cart = 'Article Choisi';
|
||||
$lang->friend = 'Les Amis';
|
||||
$lang->notify = 'Annoncer';
|
||||
|
||||
$lang->mid = 'Nom';
|
||||
$lang->layout = 'Mise en Page';
|
||||
$lang->widget = 'Widget';
|
||||
$lang->module = 'Module';
|
||||
$lang->skin = 'Thème';
|
||||
$lang->colorset = 'Arrangement de couleur';
|
||||
$lang->extra_vars = 'Variables Supplémentaires';
|
||||
|
||||
$lang->document_url = 'Document URL';
|
||||
$lang->trackback_url = 'Rétrolien URL';
|
||||
$lang->blog_name = 'Nom du Blogue';
|
||||
$lang->excerpt = 'Extrait';
|
||||
|
||||
$lang->document_count = ' Documents';
|
||||
$lang->page_count = 'Pages';
|
||||
$lang->list_count = 'Items';
|
||||
$lang->search_list_count = 'Trouvés';
|
||||
$lang->readed_count = ' Vues';
|
||||
$lang->voted_count = 'Recommandés';
|
||||
$lang->member_count = 'Membres';
|
||||
$lang->date = 'Jour';
|
||||
$lang->regdate = 'Enrégistré';
|
||||
$lang->last_update = 'Dernière Mise à Jour';
|
||||
$lang->last_post = 'Dernière Affichage';
|
||||
$lang->signup_date = 'Jour de s\'inscrire';
|
||||
$lang->last_login = 'Dernière connexion';
|
||||
$lang->first_page = 'Première Page';
|
||||
$lang->last_page = 'Dernière Page';
|
||||
$lang->search_target = 'Cible à Rechercher';
|
||||
$lang->search_keyword = 'Mot-clé à Recherche';
|
||||
$lang->is_default = 'Par Défaut';
|
||||
|
||||
$lang->no_documents = 'Aucun Document';
|
||||
|
||||
$lang->board_manager = 'Arrangements des Panneau';
|
||||
$lang->member_manager = 'Arrangements des Membres';
|
||||
$lang->layout_manager = 'Arrangements de Mise en Page';
|
||||
|
||||
$lang->use = 'Utiliser';
|
||||
$lang->notuse = 'Pas Utilisé';
|
||||
$lang->not_exists = 'Rien';
|
||||
|
||||
$lang->public = 'public';
|
||||
$lang->private = 'privé';
|
||||
|
||||
$lang->unit_sec = 'seconde';
|
||||
$lang->unit_min = 'minute';
|
||||
$lang->unit_hour = 'heure';
|
||||
$lang->unit_day = 'jour';
|
||||
$lang->unit_week = 'semaine';
|
||||
$lang->unit_month = 'mois';
|
||||
$lang->unit_year = 'année';;
|
||||
|
||||
// Descriptions et information
|
||||
$lang->about_tag = 'Vous pouvez enrégistrer plusieurs tags en utilisant ,(virgule) entre chaque tag';
|
||||
$lang->about_layout = 'Le Mise en Page décore l\'apparence des modules. Vous pouvez les configurer avec le menu de Mise en Page en haut';
|
||||
|
||||
// Messages et alertes
|
||||
$lang->msg_call_server = 'En demandant sur le serveur, attendez svp.';
|
||||
$lang->msg_db_not_setted = 'La configuration de DB n\'est pas été établie.';
|
||||
$lang->msg_invalid_queryid = 'La valeur spécifiée de query ID est invalide.';
|
||||
$lang->msg_not_permitted = 'Vous n\'avez pas le droit d\'accès.';
|
||||
$lang->msg_input_password = 'Veuillez entrer votre mot de passe.';
|
||||
$lang->msg_invalid_document = 'Nombre de Document invalide';
|
||||
$lang->msg_invalid_request = 'Requête invalide';
|
||||
$lang->msg_invalid_password = 'Mot de passe invalide';
|
||||
$lang->msg_error_occured = 'Une erreur a lieu';
|
||||
$lang->msg_not_founded = 'La cible n\'est pas trouvée.';
|
||||
$lang->msg_no_result = 'Aucun Résultat';
|
||||
|
||||
$lang->msg_not_permitted_act = 'Vous n\'êtes pas autorisés à exécuter l\'action que vous demandez.';
|
||||
$lang->msg_module_is_not_exists = 'Le module demandé n\'a pas été trouvé.';
|
||||
$lang->msg_module_is_not_standalone = 'Le module demandé ne peut pas être exécuté indépendamment.';
|
||||
|
||||
$lang->success_registed = 'Enregistré avec succès';
|
||||
$lang->success_declared = 'Accusé avec succès';
|
||||
$lang->success_updated = 'Mise a jour avec succès';
|
||||
$lang->success_deleted = 'Supprimé avec succès';
|
||||
$lang->success_voted = 'Voté avec succès';
|
||||
$lang->success_moved = 'Bougé avec succès';
|
||||
$lang->success_sended = 'Envoyé avec succès';
|
||||
$lang->success_reset = 'Restauré avec succès';
|
||||
$lang->success_leaved = 'Toutes vos informations sont complètement supprimés';
|
||||
$lang->success_saved = 'Conservé avec succès';
|
||||
|
||||
$lang->fail_to_delete = 'N\'a pas pu être supprimé.';
|
||||
$lang->fail_to_move = 'N\'a pas pu être bougé';
|
||||
|
||||
$lang->failed_voted = 'N\'a pas pu recommander';
|
||||
$lang->failed_declared = 'N\'a pas pu accuser';
|
||||
$lang->fail_to_delete_have_children = 'Essayez encore après avoir suprimé les reponses, SVP';
|
||||
|
||||
$lang->confirm_submit = 'Vous voulez sûrement valider?';
|
||||
$lang->confirm_logout = 'Vous voulez sûrement fermer la session?';
|
||||
$lang->confirm_vote = 'Vous voulez recommander?';
|
||||
$lang->confirm_delete = 'Vous voulez sûrement supprimer?';
|
||||
$lang->confirm_move = 'Vous voulez sûrement bouger?';
|
||||
$lang->confirm_reset = 'Vous voulez sûrement restaurer?';
|
||||
$lang->confirm_leave = 'Vous voulez sûrement supprimer votre compte?';
|
||||
|
||||
$lang->column_type = 'Types des colonnes';
|
||||
$lang->column_type_list['text'] = 'Texte en une seul ligne';
|
||||
$lang->column_type_list['homepage'] = 'URL';
|
||||
$lang->column_type_list['email_address'] = 'Courriel';
|
||||
$lang->column_type_list['tel'] = 'Numéro de Telephone';
|
||||
$lang->column_type_list['textarea'] = 'Texte en plusieurs lignes';
|
||||
$lang->column_type_list['checkbox'] = 'Case à cocher (multichoix)';
|
||||
$lang->column_type_list['select'] = 'Case d\'option (seul choix)';
|
||||
$lang->column_type_list['kr_zip'] = 'Code postal (coréen)';
|
||||
$lang->column_type_list['date'] = 'Jour (yyyy/mm/dd)';
|
||||
//$lang->column_type_list['jp_zip'] = 'code postal (japonais)';
|
||||
$lang->column_name = 'Nom de la colonne';
|
||||
$lang->column_title = 'Titre de la colonne';
|
||||
$lang->default_value = 'Valeur par défaut';
|
||||
$lang->is_active = 'Actif';
|
||||
$lang->is_required = 'Champ obligatoire';
|
||||
|
||||
// Messages d\'alerte de le Javascript qui est utilisé dans les filtres en XML
|
||||
$lang->filter->isnull = 'Entrez une valeur pour %s';
|
||||
$lang->filter->outofrange = 'Aligner la longueur du texte de %s';
|
||||
$lang->filter->equalto = "La valeur de %s est invalide.";
|
||||
$lang->filter->invalid_email = "Le format de %s est invalide. ex) zbxe@zeroboard.com";
|
||||
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "La format de %s n\'est pas convenable.\\nToutes les lettres devraient se composer des alphabets, des nombres ou du soulignage(_) Et la première lettre doit être un des alphabet.";
|
||||
$lang->filter->invalid_homepage = "La format de %s n\'est pas convenable. ex) http://www.zeroboard.com";
|
||||
$lang->filter->invalid_korean = "La format de %s n\'est pas convenable. Entrez seulement en coréen, SVP";
|
||||
$lang->filter->invalid_korean_number = "La format de %s n\'est pas convenable. Entrez seulement en alphabet coréen ou en nombres, SVP.";
|
||||
$lang->filter->invalid_alpha = "La format de %s n\'est pas convenable. Entrez seulement en alphabet, SVP.";
|
||||
$lang->filter->invalid_alpha_number = "La format de %s n\'est pas convenable. Entrez seulement en alphabet ou en nombres.";
|
||||
$lang->filter->invalid_number = "La format de %s n\'est pas convenable. Entrez seulement en numéros.";
|
||||
?>
|
||||
<?php
|
||||
/**
|
||||
* @file common/lang/fr.lang.php
|
||||
* @author zero (zero@nzeo.com) Traduit par Pierre Duvent(PierreDuvent@gamil.com)
|
||||
* @brief Paquet de La Langue Francaise (Mots de base seulement)
|
||||
**/
|
||||
|
||||
// verbes et mots de base decrivant des actions
|
||||
$lang->cmd_write = 'Ecrire';
|
||||
$lang->cmd_reply = 'Répondre';
|
||||
$lang->cmd_delete = 'Supprimer';
|
||||
$lang->cmd_modify = 'Modifier';
|
||||
$lang->cmd_edit = 'Editer';
|
||||
$lang->cmd_view = 'Voir';
|
||||
$lang->cmd_view_all = 'Voir Tous';
|
||||
$lang->cmd_list = 'Liste';
|
||||
$lang->cmd_prev = 'Précédent';
|
||||
$lang->cmd_next = 'Suivant';
|
||||
$lang->cmd_send_trackback = 'Envoyer Rétrolien';
|
||||
$lang->cmd_registration = $lang->cmd_submit = 'Enrégistrer';
|
||||
$lang->cmd_comment_registration = 'Ajouter un Commentaire';
|
||||
$lang->cmd_insert = 'Insérer';
|
||||
$lang->cmd_save = 'Conserver';
|
||||
$lang->cmd_load = 'Charger';
|
||||
$lang->cmd_input = 'Entrer';
|
||||
$lang->cmd_search = 'Rechercher';
|
||||
$lang->cmd_cancel = 'Annuler';
|
||||
$lang->cmd_back = 'Retourner';
|
||||
$lang->cmd_vote = 'Recommander';
|
||||
$lang->cmd_vote_down = 'Critiquer';
|
||||
$lang->cmd_declare = 'Accuser';
|
||||
$lang->cmd_cancel_declare = 'Annuler l\'Accusation';
|
||||
$lang->cmd_declared_list = 'Liste de l\'Accusation';
|
||||
$lang->cmd_copy = 'Copier';
|
||||
$lang->cmd_move = 'Bouger';
|
||||
$lang->cmd_move_up = 'En haut';
|
||||
$lang->cmd_move_down = 'En bas';
|
||||
$lang->cmd_add_indent = 'Ajouter un Rentré';
|
||||
$lang->cmd_remove_indent = 'Enlever un Rentré';
|
||||
$lang->cmd_management = 'Gérer';
|
||||
$lang->cmd_make = 'Créer';
|
||||
$lang->cmd_select = 'Choisir';
|
||||
$lang->cmd_select_all = 'Choisir Tous';
|
||||
$lang->cmd_unselect_all = 'Annuler Tous';
|
||||
$lang->cmd_reverse_all = 'Renverser la Sélection';
|
||||
$lang->cmd_close_all = 'Fermer Tous';
|
||||
$lang->cmd_open_all = 'Ouvrir Tous';
|
||||
$lang->cmd_reload = 'Recharger';
|
||||
$lang->cmd_close = 'Fermer';
|
||||
$lang->cmd_open = 'Ouvrir';
|
||||
$lang->cmd_setup = 'Configuration';
|
||||
$lang->cmd_addition_setup = 'Configuration Additionnelle';
|
||||
$lang->cmd_option = 'Option';
|
||||
$lang->cmd_apply = 'Appliquer';
|
||||
$lang->cmd_open_calendar = 'Choisir un Jour';
|
||||
$lang->cmd_send = 'Envoyer';
|
||||
$lang->cmd_print = 'Imprimer';
|
||||
$lang->cmd_scrap = 'Coupure';
|
||||
$lang->cmd_preview = 'Avant-première';
|
||||
$lang->cmd_reset = 'Restaurer';
|
||||
$lang->cmd_remake_cache = "Recréer la Cachette du Fichier";
|
||||
$lang->cmd_publish = "Publier";
|
||||
$lang->cmd_layout_setup = 'Configurer la Mise en page';
|
||||
$lang->cmd_layout_edit = 'Editer la Mise en page';
|
||||
|
||||
$lang->enable = 'Valide';
|
||||
$lang->disable = 'Invalide';
|
||||
|
||||
// Mots essentiels
|
||||
$lang->no = 'No';
|
||||
$lang->notice = 'Notice';
|
||||
$lang->secret = 'Secret';
|
||||
$lang->category = $lang->category_srl = 'Catégorie';
|
||||
$lang->document_srl = 'Numéro de série du Document';
|
||||
$lang->user_id = 'Compte';
|
||||
$lang->author = 'Auteur';
|
||||
$lang->password = 'Mot de Passe';
|
||||
$lang->password1 = 'Mot de Passe';
|
||||
$lang->password2 = 'Confirmer du Mot de Passe';
|
||||
$lang->admin_id = 'Compte d\'Administrateur';
|
||||
$lang->writer = 'Auteur';
|
||||
$lang->user_name = 'Nom d\'utilisateur';
|
||||
$lang->nick_name = 'Surnom';
|
||||
$lang->email_address = 'Courriel';
|
||||
$lang->homepage = 'Page d\'accueil';
|
||||
$lang->blog = 'Blogue';
|
||||
$lang->birthday = 'Anniversaire';
|
||||
$lang->browser_title = 'Titre de Navigateur';
|
||||
$lang->title = 'Titre';
|
||||
$lang->title_content = 'Titre + Contenu';
|
||||
$lang->topic = 'Sujet';
|
||||
$lang->replies = 'Répondse';
|
||||
$lang->content = 'Contenu';
|
||||
$lang->document = 'Document';
|
||||
$lang->comment = 'Commentaire';
|
||||
$lang->description = 'Description';
|
||||
$lang->trackback = 'Rétrolien';
|
||||
$lang->tag = 'Tag';
|
||||
$lang->allow_comment = 'Permettre Commentaires';
|
||||
$lang->lock_comment = 'Bloquer Commentaires';
|
||||
$lang->allow_trackback = 'Permettre Rétrolien';
|
||||
$lang->uploaded_file = 'Fichier Attaché';
|
||||
$lang->grant = 'Permission';
|
||||
$lang->target = 'Cible';
|
||||
$lang->total = 'Total';
|
||||
$lang->total_count = 'Somme';
|
||||
$lang->ipaddress = 'Addresse IP';
|
||||
$lang->path = 'Chemin';
|
||||
$lang->cart = 'Article Choisi';
|
||||
$lang->friend = 'Les Amis';
|
||||
$lang->notify = 'Annoncer';
|
||||
$lang->order_target = 'Align Target';
|
||||
$lang->order_type = 'Sorting Type';
|
||||
$lang->order_asc = 'Ascend';
|
||||
$lang->order_desc = 'Descendre';
|
||||
|
||||
$lang->mid = 'Nom';
|
||||
$lang->layout = 'Mise en Page';
|
||||
$lang->widget = 'Widget';
|
||||
$lang->module = 'Module';
|
||||
$lang->skin = 'Thème';
|
||||
$lang->colorset = 'Arrangement de couleur';
|
||||
$lang->extra_vars = 'Variables Supplémentaires';
|
||||
|
||||
$lang->document_url = 'Document URL';
|
||||
$lang->trackback_url = 'Rétrolien URL';
|
||||
$lang->blog_name = 'Nom du Blogue';
|
||||
$lang->excerpt = 'Extrait';
|
||||
|
||||
$lang->document_count = ' Documents';
|
||||
$lang->page_count = 'Pages';
|
||||
$lang->list_count = 'Items';
|
||||
$lang->search_list_count = 'Trouvés';
|
||||
$lang->readed_count = ' Vues';
|
||||
$lang->voted_count = 'Recommandés';
|
||||
$lang->comment_count = 'Commentairesés';
|
||||
$lang->member_count = 'Membres';
|
||||
$lang->date = 'Jour';
|
||||
$lang->regdate = 'Enrégistré';
|
||||
$lang->last_update = 'Dernière Mise à Jour';
|
||||
$lang->last_post = 'Dernière Affichage';
|
||||
$lang->signup_date = 'Jour de s\'inscrire';
|
||||
$lang->last_login = 'Dernière connexion';
|
||||
$lang->first_page = 'Première Page';
|
||||
$lang->last_page = 'Dernière Page';
|
||||
$lang->search_target = 'Cible à Rechercher';
|
||||
$lang->search_keyword = 'Mot-clé à Recherche';
|
||||
$lang->is_default = 'Par Défaut';
|
||||
|
||||
$lang->no_documents = 'Aucun Document';
|
||||
|
||||
$lang->board_manager = 'Arrangements des Panneau';
|
||||
$lang->member_manager = 'Arrangements des Membres';
|
||||
$lang->layout_manager = 'Arrangements de Mise en Page';
|
||||
|
||||
$lang->use = 'Utiliser';
|
||||
$lang->notuse = 'Pas Utilisé';
|
||||
$lang->not_exists = 'Rien';
|
||||
|
||||
$lang->public = 'public';
|
||||
$lang->private = 'privé';
|
||||
|
||||
$lang->unit_sec = 'seconde';
|
||||
$lang->unit_min = 'minute';
|
||||
$lang->unit_hour = 'heure';
|
||||
$lang->unit_day = 'jour';
|
||||
$lang->unit_week = 'semaine';
|
||||
$lang->unit_month = 'mois';
|
||||
$lang->unit_year = 'année';;
|
||||
|
||||
// Descriptions et information
|
||||
$lang->about_tag = 'Vous pouvez enrégistrer plusieurs tags en utilisant ,(virgule) entre chaque tag';
|
||||
$lang->about_layout = 'Le Mise en Page décore l\'apparence des modules. Vous pouvez les configurer avec le menu de Mise en Page en haut';
|
||||
|
||||
// Messages et alertes
|
||||
$lang->msg_call_server = 'En demandant sur le serveur, attendez svp.';
|
||||
$lang->msg_db_not_setted = 'La configuration de DB n\'est pas été établie.';
|
||||
$lang->msg_invalid_queryid = 'La valeur spécifiée de query ID est invalide.';
|
||||
$lang->msg_not_permitted = 'Vous n\'avez pas le droit d\'accès.';
|
||||
$lang->msg_input_password = 'Veuillez entrer votre mot de passe.';
|
||||
$lang->msg_invalid_document = 'Nombre de Document invalide';
|
||||
$lang->msg_invalid_request = 'Requête invalide';
|
||||
$lang->msg_invalid_password = 'Mot de passe invalide';
|
||||
$lang->msg_error_occured = 'Une erreur a lieu';
|
||||
$lang->msg_not_founded = 'La cible n\'est pas trouvée.';
|
||||
$lang->msg_no_result = 'Aucun Résultat';
|
||||
|
||||
$lang->msg_not_permitted_act = 'Vous n\'êtes pas autorisés à exécuter l\'action que vous demandez.';
|
||||
$lang->msg_module_is_not_exists = 'Le module demandé n\'a pas été trouvé.';
|
||||
$lang->msg_module_is_not_standalone = 'Le module demandé ne peut pas être exécuté indépendamment.';
|
||||
|
||||
$lang->success_registed = 'Enregistré avec succès';
|
||||
$lang->success_declared = 'Accusé avec succès';
|
||||
$lang->success_updated = 'Mise à jour avec succès';
|
||||
$lang->success_deleted = 'Supprimé avec succès';
|
||||
$lang->success_voted = 'Voté avec succès';
|
||||
$lang->success_moved = 'Bougé avec succès';
|
||||
$lang->success_sended = 'Envoyé avec succès';
|
||||
$lang->success_reset = 'Restauré avec succès';
|
||||
$lang->success_leaved = 'Toutes vos informations sont complètement supprimés';
|
||||
$lang->success_saved = 'Conservé avec succès';
|
||||
|
||||
$lang->fail_to_delete = 'N\'a pas pu être supprimé.';
|
||||
$lang->fail_to_move = 'N\'a pas pu être bougé';
|
||||
|
||||
$lang->failed_voted = 'N\'a pas pu recommander';
|
||||
$lang->failed_declared = 'N\'a pas pu accuser';
|
||||
$lang->fail_to_delete_have_children = 'Essayez encore après avoir suprimé les reponses, SVP';
|
||||
|
||||
$lang->confirm_submit = 'Vous voulez sûrement valider?';
|
||||
$lang->confirm_logout = 'Vous voulez sûrement fermer la session?';
|
||||
$lang->confirm_vote = 'Vous voulez recommander?';
|
||||
$lang->confirm_delete = 'Vous voulez sûrement supprimer?';
|
||||
$lang->confirm_move = 'Vous voulez sûrement bouger?';
|
||||
$lang->confirm_reset = 'Vous voulez sûrement restaurer?';
|
||||
$lang->confirm_leave = 'Vous voulez sûrement supprimer votre compte?';
|
||||
|
||||
$lang->column_type = 'Types des colonnes';
|
||||
$lang->column_type_list['text'] = 'Texte en une seul ligne';
|
||||
$lang->column_type_list['homepage'] = 'URL';
|
||||
$lang->column_type_list['email_address'] = 'Courriel';
|
||||
$lang->column_type_list['tel'] = 'Numéro de Telephone';
|
||||
$lang->column_type_list['textarea'] = 'Texte en plusieurs lignes';
|
||||
$lang->column_type_list['checkbox'] = 'Case à cocher (multichoix)';
|
||||
$lang->column_type_list['select'] = 'Case d\'option (seul choix)';
|
||||
$lang->column_type_list['kr_zip'] = 'Code postal (coréen)';
|
||||
$lang->column_type_list['date'] = 'Jour (yyyy/mm/dd)';
|
||||
//$lang->column_type_list['jp_zip'] = 'code postal (japonais)';
|
||||
$lang->column_name = 'Nom de la colonne';
|
||||
$lang->column_title = 'Titre de la colonne';
|
||||
$lang->default_value = 'Valeur par défaut';
|
||||
$lang->is_active = 'Actif';
|
||||
$lang->is_required = 'Champ obligatoire';
|
||||
|
||||
// Messages d\'alerte de le Javascript qui est utilisé dans les filtres en XML
|
||||
$lang->filter->isnull = 'Entrez une valeur pour %s';
|
||||
$lang->filter->outofrange = 'Aligner la longueur du texte de %s';
|
||||
$lang->filter->equalto = "La valeur de %s est invalide.";
|
||||
$lang->filter->invalid_email = "Le format de %s est invalide. ex) zbxe@zeroboard.com";
|
||||
$lang->filter->invalid_user_id = $lang->filter->invalid_userid = "La format de %s n\'est pas convenable.\\nToutes les lettres devraient se composer des alphabets, des nombres ou du soulignage(_) Et la première lettre doit être un des alphabet.";
|
||||
$lang->filter->invalid_homepage = "La format de %s n\'est pas convenable. ex) http://www.zeroboard.com";
|
||||
$lang->filter->invalid_korean = "La format de %s n\'est pas convenable. Entrez seulement en coréen, SVP";
|
||||
$lang->filter->invalid_korean_number = "La format de %s n\'est pas convenable. Entrez seulement en alphabet coréen ou en nombres, SVP.";
|
||||
$lang->filter->invalid_alpha = "La format de %s n\'est pas convenable. Entrez seulement en alphabet, SVP.";
|
||||
$lang->filter->invalid_alpha_number = "La format de %s n\'est pas convenable. Entrez seulement en alphabet ou en nombres.";
|
||||
$lang->filter->invalid_number = "La format de %s n\'est pas convenable. Entrez seulement en numéros.";
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -109,6 +109,10 @@
|
|||
$lang->cart = '選択項目';
|
||||
$lang->friend = '友達';
|
||||
$lang->notify = 'アラート';
|
||||
$lang->order_target = 'ソート対象';
|
||||
$lang->order_type = 'ソート方法';
|
||||
$lang->order_asc = '昇る';
|
||||
$lang->order_desc = '降下';
|
||||
|
||||
$lang->mid = 'モジュール名';
|
||||
$lang->layout = 'レイアウト';
|
||||
|
|
@ -129,6 +133,7 @@
|
|||
$lang->search_list_count = '検索リスト数';
|
||||
$lang->readed_count = '照合数';
|
||||
$lang->voted_count = '推薦数';
|
||||
$lang->comment_count = 'コメント数';
|
||||
$lang->member_count = '会員数';
|
||||
$lang->date = '日付';
|
||||
$lang->regdate = '登録日';
|
||||
|
|
|
|||
|
|
@ -109,6 +109,10 @@
|
|||
$lang->cart = '선택항목';
|
||||
$lang->friend = '친구';
|
||||
$lang->notify = '알림';
|
||||
$lang->order_target = '정렬대상';
|
||||
$lang->order_type = '정렬방법';
|
||||
$lang->order_asc = '올림차순';
|
||||
$lang->order_desc = '내림차순';
|
||||
|
||||
$lang->mid = '모듈이름';
|
||||
$lang->layout = '레이아웃';
|
||||
|
|
@ -129,6 +133,7 @@
|
|||
$lang->search_list_count = '검색 목록 수';
|
||||
$lang->readed_count = '조회수';
|
||||
$lang->voted_count = '추천수';
|
||||
$lang->comment_count = '댓글수';
|
||||
$lang->member_count = '회원수';
|
||||
$lang->date = '날짜';
|
||||
$lang->regdate = '등록일';
|
||||
|
|
|
|||
|
|
@ -109,6 +109,10 @@
|
|||
$lang->cart = 'Выбранный объект';
|
||||
$lang->friend = 'Друзья';
|
||||
$lang->notify = 'Уведомление';
|
||||
$lang->order_target = 'согласовать цели';
|
||||
$lang->order_type = 'сортировки типа';
|
||||
$lang->order_asc = 'взойти';
|
||||
$lang->order_desc = 'спустится';
|
||||
|
||||
$lang->mid = 'Имя Модуля';
|
||||
$lang->layout = 'Лейаут';
|
||||
|
|
@ -129,6 +133,7 @@
|
|||
$lang->search_list_count = 'Поиск Список кол';
|
||||
$lang->readed_count = 'Хиты';
|
||||
$lang->voted_count = 'Голоса';
|
||||
$lang->comment_count = 'комментарии';
|
||||
$lang->member_count = 'Кол-во пользователей';
|
||||
$lang->date = 'Дата';
|
||||
$lang->regdate = 'Дата регистрации';
|
||||
|
|
|
|||
|
|
@ -109,6 +109,10 @@
|
|||
$lang->cart = '选择项目';
|
||||
$lang->friend = '好友';
|
||||
$lang->notify = '通告';
|
||||
$lang->order_target = '排序对象';
|
||||
$lang->order_type = '排序方式';
|
||||
$lang->order_asc = '继承皇位';
|
||||
$lang->order_desc = '降临';
|
||||
|
||||
$lang->mid = '模块名称';
|
||||
$lang->layout = '布局';
|
||||
|
|
@ -129,6 +133,7 @@
|
|||
$lang->search_list_count = '搜索目录数';
|
||||
$lang->readed_count = '查看';
|
||||
$lang->voted_count = '推荐';
|
||||
$lang->comment_count = '评论';
|
||||
$lang->member_count = '会员数';
|
||||
$lang->date = '日期';
|
||||
$lang->regdate = '登录日期';
|
||||
|
|
|
|||
|
|
@ -3,16 +3,42 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||||
<meta name="Generator" content="zeroboardXE {__ZBXE_VERSION__}" />
|
||||
<!--@if($module_info->module)--><meta name="module" content="{$module_info->module}" />
|
||||
<!--@end--><!--@if($module_info->skin)--><meta name="module_skin" content="{$module_info->skin}" />
|
||||
<!--@end--><!--@if($layout_info->title)--><meta name="layout" content="{$layout_info->title} ({$layout_info->layout})" />
|
||||
<!--@end--><!--@if($layout_info->author)--><meta name="layout_maker" content="{$layout_info->author->name} ({$layout_info->author->homepage})" />
|
||||
<!--@end--><meta http-equiv="imagetoolbar" content="no" />
|
||||
<!--@if($module_info->module)-->
|
||||
<meta name="module" content="{$module_info->module}" />
|
||||
<!--@end-->
|
||||
<!--@if($module_info->skin)-->
|
||||
<meta name="module_skin" content="{$module_info->skin}" />
|
||||
<!--@end-->
|
||||
<!--@if($layout_info->title)-->
|
||||
<meta name="layout" content="{$layout_info->title} ({$layout_info->layout})" />
|
||||
<!--@end-->
|
||||
<!--@if($layout_info->author)-->
|
||||
<meta name="layout_maker" content="{$layout_info->author->name} ({$layout_info->author->homepage})" />
|
||||
<!--@end-->
|
||||
<meta http-equiv="imagetoolbar" content="no" />
|
||||
<title>{Context::getBrowserTitle()}</title>
|
||||
<!--@foreach($js_files as $key => $js_file)--><script type="text/javascript" src="{$js_file['file']}"></script>
|
||||
<!--@end--><!--@foreach($css_files as $key => $css_file)--><link rel="stylesheet" href="{$css_file['file']}" type="text/css" charset="UTF-8" media="{$css_file['media']}" />
|
||||
<!--@end--><!--@if($rss_url)--><link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="{$rss_url}" />
|
||||
<!--@end--><script type="text/javascript">//<![CDATA[
|
||||
<!--@foreach($js_files as $key => $js_file)-->
|
||||
<!--@if($js_file['targetie'])-->
|
||||
<!--[if {$js_file['targetie']}]>
|
||||
<!--@end-->
|
||||
<script type="text/javascript" src="{$js_file['file']}"></script>
|
||||
<!--@if($js_file['targetie'])-->
|
||||
<![endif]-->
|
||||
<!--@end-->
|
||||
<!--@end-->
|
||||
<!--@foreach($css_files as $key => $css_file)-->
|
||||
<!--@if($css_file['targetie'])-->
|
||||
<!--[if {$css_file['targetie']}]>
|
||||
<!--@end-->
|
||||
<link rel="stylesheet" href="{$css_file['file']}" type="text/css" charset="UTF-8" media="{$css_file['media']}" />
|
||||
<!--@if($css_file['targetie'])-->
|
||||
<![endif]-->
|
||||
<!--@end-->
|
||||
<!--@end-->
|
||||
<!--@if($rss_url)-->
|
||||
<link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="{$rss_url}" />
|
||||
<!--@end-->
|
||||
<script type="text/javascript">//<![CDATA[
|
||||
var current_url = "{$current_url}";
|
||||
var request_uri = "{$request_uri}";
|
||||
var current_mid = "{$mid}";
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
* @author zero (zero@nzeo.com)
|
||||
* @brief 기본적으로 사용하는 class파일의 include 및 환경 설정을 함
|
||||
**/
|
||||
|
||||
|
||||
if(!defined('__ZBXE__')) exit();
|
||||
|
||||
/**
|
||||
|
|
@ -14,7 +14,7 @@
|
|||
* 이 내용은 제로보드XE의 버전을 관리자 페이지에 표시하기 위한 용도이며
|
||||
* config.inc.php의 수정이 없더라도 공식 릴리즈시에 수정되어 함께 배포되어야 함
|
||||
**/
|
||||
define('__ZBXE_VERSION__', '1.0.1');
|
||||
define('__ZBXE_VERSION__', '1.0.2');
|
||||
|
||||
/**
|
||||
* @brief 디버깅 메세지 출력
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
define('__DEBUG__', 0);
|
||||
|
||||
/**
|
||||
* @brief 디버그 메세지의 출력 장소
|
||||
* @brief 디버그 메세지의 출력 장소
|
||||
* 0 : files/_debug_message.php 에 연결하여 출력
|
||||
* 1 : Response Method 가 XML 형식이 아닐 경우 브라우저에 최상단에 주석으로 표시
|
||||
**/
|
||||
|
|
@ -58,7 +58,7 @@
|
|||
/**
|
||||
* @brief 간단하게 사용하기 위한 함수 정의한 파일 require
|
||||
**/
|
||||
require_once("./config/func.inc.php");
|
||||
require_once('./config/func.inc.php');
|
||||
|
||||
|
||||
if(__DEBUG__) define('__StartTime__', getMicroTime());
|
||||
|
|
@ -69,19 +69,19 @@
|
|||
* php5 기반으로 바꾸게 되면 _autoload를 이용할 수 있기에 제거 대상
|
||||
**/
|
||||
if(__DEBUG__) define('__ClassLosdStartTime__', getMicroTime());
|
||||
require_once("./classes/object/Object.class.php");
|
||||
require_once("./classes/handler/Handler.class.php");
|
||||
require_once("./classes/xml/XmlParser.class.php");
|
||||
require_once("./classes/context/Context.class.php");
|
||||
require_once("./classes/db/DB.class.php");
|
||||
require_once("./classes/file/FileHandler.class.php");
|
||||
require_once("./classes/widget/WidgetHandler.class.php");
|
||||
require_once("./classes/editor/EditorHandler.class.php");
|
||||
require_once("./classes/module/ModuleObject.class.php");
|
||||
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");
|
||||
require_once('./classes/object/Object.class.php');
|
||||
require_once('./classes/handler/Handler.class.php');
|
||||
require_once('./classes/xml/XmlParser.class.php');
|
||||
require_once('./classes/context/Context.class.php');
|
||||
require_once('./classes/db/DB.class.php');
|
||||
require_once('./classes/file/FileHandler.class.php');
|
||||
require_once('./classes/widget/WidgetHandler.class.php');
|
||||
require_once('./classes/editor/EditorHandler.class.php');
|
||||
require_once('./classes/module/ModuleObject.class.php');
|
||||
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__;
|
||||
|
||||
/**
|
||||
|
|
@ -90,12 +90,12 @@
|
|||
**/
|
||||
if(!ini_get('session.auto_start')) {
|
||||
session_cache_limiter('no-cache, must-revalidate');
|
||||
ini_set("session.gc_maxlifetime", "18000");
|
||||
if(!is_dir("./files/sessions")) {
|
||||
FileHandler::makeDir("./files/sessions");
|
||||
@chmod("./files/sessions", 0777);
|
||||
ini_set('session.gc_maxlifetime', '18000');
|
||||
if(!is_dir('./files/sessions')) {
|
||||
FileHandler::makeDir('./files/sessions');
|
||||
@chmod('./files/sessions', 0777);
|
||||
}
|
||||
if(is_dir("./files/sessions")) session_save_path(realpath('.')."/files/sessions/");
|
||||
if(is_dir('./files/sessions')) session_save_path(realpath('.').'/files/sessions/');
|
||||
session_start();
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -262,23 +262,26 @@
|
|||
|
||||
/**
|
||||
* @brief YYYYMMDDHHIISS 형식의 시간값을 원하는 시간 포맷으로 변형
|
||||
* @param str YYYYMMDDHHIISS 형식의 시간값
|
||||
* @param format php date()함수의 시간 포맷
|
||||
* @param string|int str YYYYMMDDHHIISS 형식의 시간 값
|
||||
* @param string format php date()함수의 시간 포맷
|
||||
* @param bool conversion 언어에 따라 날짜 포맷의 자동변환 여부
|
||||
* @return string
|
||||
**/
|
||||
function zdate($str, $format = "Y-m-d H:i:s") {
|
||||
function zdate($str, $format = 'Y-m-d H:i:s', $conversion=true) {
|
||||
// 대상 시간이 없으면 null return
|
||||
if(!$str) return;
|
||||
|
||||
// 언어권에 따라서 지정된 날짜 포맷을 변경
|
||||
switch(Context::getLangType()) {
|
||||
case "en" :
|
||||
case "es" :
|
||||
if($format == "Y-m-d") $format = "M d, Y";
|
||||
elseif($format == "Y-m-d H:i:s") $format = "M d, Y H:i:s";
|
||||
elseif($format == "Y-m-d H:i") $format = "M d, Y H:i";
|
||||
break;
|
||||
if($conversion == true) {
|
||||
switch(Context::getLangType()) {
|
||||
case 'en' :
|
||||
case 'es' :
|
||||
if($format == 'Y-m-d') $format = 'M d, Y';
|
||||
elseif($format == 'Y-m-d H:i:s') $format = 'M d, Y H:i:s';
|
||||
elseif($format == 'Y-m-d H:i') $format = 'M d, Y H:i';
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// 년도가 1970년 이전이면 별도 처리
|
||||
|
|
@ -291,7 +294,7 @@
|
|||
$day = (int)substr($str,6,2);
|
||||
return str_replace(
|
||||
array('Y','m','d','H','h','i','s','a','M', 'F'),
|
||||
array($year,$month,$day,$hour,$hour/12,$min,$sec,$hour<=12?'am':'pm',getMonthName($month), getMonthName($month,false)),
|
||||
array($year,$month,$day,$hour,$hour/12,$min,$sec,($hour <= 12) ? 'am' : 'pm',getMonthName($month), getMonthName($month,false)),
|
||||
$format
|
||||
);
|
||||
}
|
||||
|
|
@ -310,20 +313,14 @@
|
|||
* tail -f ./files/_debug_message.php 하여 계속 살펴 볼 수 있다
|
||||
**/
|
||||
function debugPrint($buff = null, $display_line = true) {
|
||||
//if(!$buff) return;
|
||||
$debug_file = "./files/_debug_message.php";
|
||||
$buff = sprintf("%s\n",print_r($buff,true));
|
||||
|
||||
if(__DEBUG_OUTPUT__ == 1) {
|
||||
print sprintf("<!--\n%s\n-->", print_r($buff,true));
|
||||
} else {
|
||||
$debug_file = "./files/_debug_message.php";
|
||||
$buff = sprintf("%s\n",print_r($buff,true));
|
||||
if($display_line) $buff = "\n====================================\n".$buff."------------------------------------\n";
|
||||
|
||||
if($display_line) $buff = "\n====================================\n".$buff."------------------------------------\n";
|
||||
|
||||
if(@!$fp = fopen($debug_file,"a")) return;
|
||||
fwrite($fp, $buff);
|
||||
fclose($fp);
|
||||
}
|
||||
if(@!$fp = fopen($debug_file,"a")) return;
|
||||
fwrite($fp, $buff);
|
||||
fclose($fp);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -4,67 +4,60 @@ NHN UIT Lab. WebStandardization Team (http://html.nhndesign.com/)
|
|||
Kim, Ji Min 070809-20070903
|
||||
*/
|
||||
|
||||
#blog {width:780px; margin:0 auto;}
|
||||
#blog {margin:0 auto; width:970px;}
|
||||
|
||||
#content { width:100%; position:relative;}
|
||||
#content { width:100%; }
|
||||
|
||||
/* Global Navigation */
|
||||
.blogNavigation {width:780px; padding-bottom:3em; overflow:hidden;}
|
||||
ul.blogMenu {margin:0; padding:0; list-style:none; float:left; margin:1.2em 0 0 .9em; overflow:hidden;}
|
||||
.blogNavigation {overflow:hidden; width:780px;}
|
||||
|
||||
ul.blogGlobal {padding:0; margin:0; list-style:none; overflow:hidden; float:right; margin:10px 0 10px 0; }
|
||||
ul.blogGlobal li {float:left; margin-left:-1px; padding:0 .6em;}
|
||||
ul.blogGlobal li a {text-decoration:none; font-size:.9em; letter-spacing:-1px;}
|
||||
|
||||
ul.blogMenu {padding:0; list-style:none; overflow:hidden; float:right; margin:0 0 10px 0; }
|
||||
ul.blogMenu li {float:left; margin-left:-1px; padding:0 .8em;}
|
||||
ul.blogMenu li a {text-decoration:none; font:bold .9em tahoma;}
|
||||
ul.blogMenu li a.on {}
|
||||
|
||||
ul.blogGlobal {margin:0; padding:0; list-style:none; float:right; margin:1em .6em 0 0; overflow:hidden;}
|
||||
ul.blogGlobal li {float:left; margin-left:-1px; padding:0 .6em;}
|
||||
ul.blogGlobal li a {text-decoration:none; font-size:.9em; letter-spacing:-1px;}
|
||||
/* Content Box */
|
||||
.contentBox { float:left; width:780px; }
|
||||
.contentBox .centerBg {padding-top:1em;}
|
||||
.contentBox .topBg {width:100%; height:10px; font-size:0;}
|
||||
.contentBox .bottomBg {width:100%; height:10px; font-size:0;}
|
||||
.contentArea {width:740px; margin:0 auto;}
|
||||
|
||||
.blogWidgetAreaBox { width:190px; padding:0; margin:0; float:left; overflow:hidden;}
|
||||
|
||||
/* Profile */
|
||||
.blogProfile {float:left; width:170px; margin:0 0 0 19px; display:inline;}
|
||||
.blogProfile {width:170px; margin:0 0 10px 10px; }
|
||||
.blogProfile h1 {padding:0; margin:10px 0 8px 2px; font-size:1em; line-height:1.2em;}
|
||||
.blogProfile ul.profileMenu {float:left; margin-left:-4px; overflow:hidden;}
|
||||
.blogProfile ul.profileMenu li {float:left; margin-left:-1px; padding:0 .7em;}
|
||||
.blogProfile ul.profileMenu li a {text-decoration:none; font-size:.9em;}
|
||||
|
||||
/* title bg box */
|
||||
.blogTitleBox {position:relative; width:170px; height:25px; margin-bottom:1.3em;}
|
||||
.blogTitleBox {width:170px; height:25px; margin:0 0 5px 10px;}
|
||||
.blogTitleBox h2 {margin:0; padding:5px 0 0 12px; font:bold .9em tahoma;}
|
||||
.blogTitleBox h2 a { text-decoration:none; }
|
||||
|
||||
/* category */
|
||||
.blogCategory {float:left; width:170px; margin:0 0 0 21px;}
|
||||
.blogCategory h2 {margin:0; padding:5px 0 0 12px; font:bold .9em tahoma;} /*070917 <20>섏젙*/
|
||||
.blogCategory h2 a { text-decoration:none; }
|
||||
.blogCategory .categoryToggle {position:absolute; right:.3em; top:.5em;}
|
||||
.blogCategory .categoryToggle img {display:block; padding:5px; cursor:pointer;}
|
||||
.blogCategory ul.categoryList { list-style:none; margin:0; padding:0; }
|
||||
.blogCategory ul.categoryList li {height:1.7em; padding-left:2.1em;}
|
||||
.blogCategory ul.categoryList li a {text-decoration:none; font-size:1em;}
|
||||
.blogCategory ul.categoryList li.on a {font-weight:bold; }
|
||||
.blogCategory ul.categoryList li span.documentCount { font-size:.9em; margin-left:.3em;}
|
||||
|
||||
/* Recent Comments */
|
||||
.widgetBox {float:left; width:170px; margin:0 0 0 21px;}
|
||||
/* widget Box */
|
||||
.widgetBox {width:170px; margin:0 0 10px 10px;}
|
||||
|
||||
/* search box */
|
||||
.blogSearch { margin-top:2em; }
|
||||
.blogSearch { margin:0 auto; width:170px; }
|
||||
.blogSearch fieldset {padding:0; margin:0; border:none;}
|
||||
.blogSearch legend {display:none;}
|
||||
.blogSearch input {float:left; vertical-align:middle;}
|
||||
.blogSearch img {float:left; margin-left:2px; vertical-align:middle;}
|
||||
|
||||
/* Content Box */
|
||||
.contentBox {clear:both; position:relative; width:780px; padding:.8em 0 3em 0;}
|
||||
.contentBox .centerBg {padding-top:1em;}
|
||||
.contentBox .topBg {width:100%; height:10px; font-size:0;}
|
||||
.contentBox .bottomBg {width:100%; height:10px; font-size:0;}
|
||||
.contentArea {width:740px; margin:0 auto;}
|
||||
|
||||
.zbXE { text-align:center; margin:5px 0 10px 0;}
|
||||
|
||||
/* Widget */
|
||||
.blog_widget_ h2 {margin:0; padding:5px 0 0 12px; font:bold .9em tahoma;}
|
||||
.blog_widget_ .items {list-style:none; padding:0; margin:0; margin-top:1.3em; overflow:hidden; width:165px;}
|
||||
.blog_widget_ .items li { white-space:nowrap; overflow:hidden; height:1.7em; padding-left:1.8em;}
|
||||
.blog_widget_ .items li a { text-decoration:none; font-size:1em; overflow:hidden; white-space:nowrap;}
|
||||
.blog_widget_ h2 {margin:0 0 15px 0; padding:5px 0 0 12px; font:bold .9em tahoma;}
|
||||
.blog_widget_ .items {list-style:none; padding:0; margin:0; margin-top:10px; overflow-x:hidden; width:170px;}
|
||||
.blog_widget_ .items li { padding:0 10px 0 14px; margin-bottom:5px; }
|
||||
.blog_widget_ .items li a { text-decoration:none; font-size:1em; }
|
||||
|
||||
/* Calender */
|
||||
.widget_calendar {position:relative; float:left; width:170px; }
|
||||
|
|
@ -91,3 +84,5 @@ ul.blogGlobal li a {text-decoration:none; font-size:.9em; letter-spacing:-1px;}
|
|||
.widget_calendar td.posted a {text-decoration:underline;}
|
||||
.widget_calendar td.posted {text-decoration:underline;}
|
||||
|
||||
|
||||
.zbXE { width:960px; text-align:center; margin:20px auto 20px auto;}
|
||||
|
|
|
|||
|
|
@ -27,12 +27,7 @@ ul.blogGlobal li a {color:#3f4040;}
|
|||
|
||||
/* title bg box */
|
||||
.blogTitleBox {background:url(../images/blue/box_blog_title.gif) no-repeat left top;}
|
||||
|
||||
/* category */
|
||||
.blogCategory h2 {color:#00afcf;}
|
||||
.blogCategory h2 a {color:#00afcf;}
|
||||
.blogCategory ul.categoryList li {background:url(../images/blue/ico_category.gif) no-repeat .8em 0;}
|
||||
.blogCategory ul.categoryList li a {color:#3f4040;}
|
||||
.blogTitleBox h2 {color:#00afcf;}
|
||||
|
||||
/* Content Box */
|
||||
.contentBox .centerBg {background:url(../images/blue/box_blog_bg.gif) repeat-y left top;}
|
||||
|
|
@ -42,7 +37,7 @@ ul.blogGlobal li a {color:#3f4040;}
|
|||
/* Widget */
|
||||
.blog_widget_ {background:url(../images/blue/box_blog_title.gif) no-repeat left top;}
|
||||
.blog_widget_ h2 {color:#00afcf;}
|
||||
.blog_widget_ .items li {background:url(../images/blue/bullet_3x3_1.gif) no-repeat 1em .35em;}
|
||||
.blog_widget_ .items li {background:url(../images/blue/bullet_3x3_1.gif) no-repeat 5px 5px; }
|
||||
.blog_widget_ .items li a {color:#3f4040;}
|
||||
|
||||
/* Calender */
|
||||
|
|
|
|||
|
|
@ -27,12 +27,7 @@ ul.blogGlobal li a {color:#666666;}
|
|||
|
||||
/* title bg box */
|
||||
.blogTitleBox {background:url(../images/gray/box_blog_title.gif) no-repeat left top;}
|
||||
|
||||
/* category */
|
||||
.blogCategory h2 {color:#181818;}
|
||||
.blogCategory h2 a {color:#181818;}
|
||||
.blogCategory ul.categoryList li {background:url(../images/gray/ico_category.gif) no-repeat .8em 0;}
|
||||
.blogCategory ul.categoryList li a {color:#3f4040;}
|
||||
.blogTitleBox h2 {color:#181818;}
|
||||
|
||||
/* Content Box */
|
||||
.contentBox .centerBg {background:url(../images/gray/box_blog_bg.gif) repeat-y left top;}
|
||||
|
|
@ -42,7 +37,7 @@ ul.blogGlobal li a {color:#666666;}
|
|||
/* Widget */
|
||||
.blog_widget_ {background:url(../images/gray/box_blog_title.gif) no-repeat left top;}
|
||||
.blog_widget_ h2 {color:#181818;}
|
||||
.blog_widget_ .items li {background:url(../images/gray/bullet_3x3_1.gif) no-repeat 1em .35em;}
|
||||
.blog_widget_ .items li {background:url(../images/gray/bullet_3x3_1.gif) no-repeat 5px 5px; }
|
||||
.blog_widget_ .items li a {color:#3f4040;}
|
||||
|
||||
/* Calender */
|
||||
|
|
|
|||
|
|
@ -27,12 +27,7 @@ ul.blogGlobal li a {color:#3f4040;}
|
|||
|
||||
/* title bg box */
|
||||
.blogTitleBox {background:url(../images/green/box_blog_title.gif) no-repeat left top;}
|
||||
|
||||
/* category */
|
||||
.blogCategory h2 {color:#31c100;}
|
||||
.blogCategory h2 a {color:#31c100;}
|
||||
.blogCategory ul.categoryList li {background:url(../images/green/ico_category.gif) no-repeat .8em 0;}
|
||||
.blogCategory ul.categoryList li a {color:#3f4040;}
|
||||
.blogTitleBox h2 {color:#31c100;}
|
||||
|
||||
/* Content Box */
|
||||
.contentBox .centerBg {background:url(../images/green/box_blog_bg.gif) repeat-y left top;}
|
||||
|
|
@ -42,7 +37,7 @@ ul.blogGlobal li a {color:#3f4040;}
|
|||
/* Widget */
|
||||
.blog_widget_ {background:url(../images/green/box_blog_title.gif) no-repeat left top;}
|
||||
.blog_widget_ h2 {color:#31c100;}
|
||||
.blog_widget_ .items li {background:url(../images/green/bullet_3x3_1.gif) no-repeat 1em .35em;}
|
||||
.blog_widget_ .items li {background:url(../images/green/bullet_3x3_1.gif) no-repeat 5px 5px; }
|
||||
.blog_widget_ .items li a {color:#3f4040;}
|
||||
|
||||
/* Calender */
|
||||
|
|
|
|||
|
|
@ -27,12 +27,7 @@ ul.blogGlobal li a {color:#999999;}
|
|||
|
||||
/* title bg box */
|
||||
.blogTitleBox {background:url(../images/orange/box_blog_title.gif) no-repeat left top;}
|
||||
|
||||
/* category */
|
||||
.blogCategory h2 {color:#ff6f4a;}
|
||||
.blogCategory h2 a {color:#ff6f4a;}
|
||||
.blogCategory ul.categoryList li {background:url(../images/orange/ico_category.gif) no-repeat .8em 0;}
|
||||
.blogCategory ul.categoryList li a {color:#999999;}
|
||||
.blogTitleBox h2 {color:#ff6f4a;}
|
||||
|
||||
/* Content Box */
|
||||
.contentBox .centerBg {background:url(../images/orange/box_blog_bg.gif) repeat-y left top;}
|
||||
|
|
@ -42,7 +37,7 @@ ul.blogGlobal li a {color:#999999;}
|
|||
/* Widget */
|
||||
.blog_widget_ {background:url(../images/orange/box_blog_title.gif) no-repeat left top;}
|
||||
.blog_widget_ h2 {color:#ff6f4a;}
|
||||
.blog_widget_ .items li {background:url(../images/orange/bullet_3x3_1.gif) no-repeat 1em .35em;}
|
||||
.blog_widget_ .items li {background:url(../images/orange/bullet_3x3_1.gif) no-repeat 5px 5px;}
|
||||
.blog_widget_ .items li a {color:#999999;}
|
||||
|
||||
/* Calender */
|
||||
|
|
|
|||
|
|
@ -27,12 +27,7 @@ ul.blogGlobal li a {color:#3f4040;}
|
|||
|
||||
/* title bg box */
|
||||
.blogTitleBox {background:url(../images/violet/box_blog_title.gif) no-repeat left top;}
|
||||
|
||||
/* category */
|
||||
.blogCategory h2 {color:#9285bc;}
|
||||
.blogCategory h2 a {color:#9285bc;}
|
||||
.blogCategory ul.categoryList li {background:url(../images/violet/ico_category.gif) no-repeat .8em 0;}
|
||||
.blogCategory ul.categoryList li a {color:#3f4040;}
|
||||
.blogTitleBox h2 {color:#9285bc;}
|
||||
|
||||
/* Content Box */
|
||||
.contentBox .centerBg {background:url(../images/violet/box_blog_bg.gif) repeat-y left top;}
|
||||
|
|
@ -42,7 +37,7 @@ ul.blogGlobal li a {color:#3f4040;}
|
|||
/* Widget */
|
||||
.blog_widget_ {background:url(../images/violet/box_blog_title.gif) no-repeat left top;}
|
||||
.blog_widget_ h2 {color:#9285bc;}
|
||||
.blog_widget_ .items li {background:url(../images/violet/bullet_3x3_1.gif) no-repeat 1em .35em;}
|
||||
.blog_widget_ .items li {background:url(../images/violet/bullet_3x3_1.gif) no-repeat 5px 5px; }
|
||||
.blog_widget_ .items li a {color:#3f4040;}
|
||||
|
||||
/* Calender */
|
||||
|
|
|
|||
Binary file not shown.
|
Before Width: | Height: | Size: 132 B After Width: | Height: | Size: 181 B |
|
|
@ -53,67 +53,80 @@
|
|||
<!--@end-->
|
||||
<!--@end-->
|
||||
</ul>
|
||||
<div class="clear"></div>
|
||||
<ul class="blogMenu">
|
||||
<!--@foreach($top_menu->list as $key => $val)--><!--@if($val['link'])-->
|
||||
<li><a href="{$val['href']}"<!--@if($val['selected'])--> class="on"<!--@end--><!--@if($val['open_window']=='Y')--> onclick="window.open(this.href);return false;"<!--@end-->>{$val['link']}</a></li>
|
||||
<!--@end--><!--@end-->
|
||||
</ul>
|
||||
</div>
|
||||
<div class="blogProfile">
|
||||
<!--@if($layout_info->profile_image)-->
|
||||
<img src="{$layout_info->profile_image}" border="0" alt="my profile image" class="iePngFix" width="170" />
|
||||
<!--@else-->
|
||||
<img src="./images/{$layout_info->colorset}/@blog_image.gif" alt="profile" class="iePngFix" width="170" />
|
||||
<!--@end-->
|
||||
<!--@if($layout_info->profile)-->
|
||||
<h1>{$layout_info->profile}</h1>
|
||||
<!--@end-->
|
||||
</div>
|
||||
|
||||
<!-- 카테고리 -->
|
||||
<!--@if($category_list)-->
|
||||
<div class="blogCategory">
|
||||
<div class="blogTitleBox">
|
||||
<h2><a href="{getUrl('','mid',$layout_info->target_mid)}">category</a></h2>
|
||||
</div>
|
||||
<ul class="categoryList">
|
||||
<!--@foreach($category_list as $key => $val)-->
|
||||
<li <!--@if($val->depth)-->style="margin-left:{$val->depth*8}px;"<!--@end--> <!--@if($val->selected)-->class="on"<!--@end-->><a href="{getUrl('','mid',$val->mid,'category',$val->category_srl)}">{$val->title}</a><!--@if($val->document_count)--><span class="documentCount">({$val->document_count})</span><!--@end--></li>
|
||||
<!--@end-->
|
||||
</ul>
|
||||
</div>
|
||||
<!--@else-->
|
||||
<div class="widgetBox">
|
||||
<img src="./images/common/blank.gif" class="zbxe_widget_output" widget="newest_document" skin="blog_newest_document" colorset="layout" title="recent posts" order_target="list_order" order_type="desc" subject_cut_size="12" list_count="7" mid_list="{$layout_info->target_mid}" />
|
||||
</div>
|
||||
<!--@end-->
|
||||
|
||||
<!-- 최근댓글 출력 -->
|
||||
<div class="widgetBox">
|
||||
<img src="./images/common/blank.gif" class="zbxe_widget_output" widget="newest_comment" skin="blog_newest_comment" colorset="layout" title="recent comments" list_count="7" mid_list="{$layout_info->target_mid}" />
|
||||
</div>
|
||||
|
||||
<!-- 달력 출력 -->
|
||||
<div class="widgetBox ">
|
||||
<img src="./images/common/blank.gif" class="zbxe_widget_output" widget="calendar" skin="blog_calendar_list" colorset="layout" mid_list="{$layout_info->target_mid}" />
|
||||
|
||||
<div class="blogSearch">
|
||||
<form action="{Context::getRequestUri()}" method="post">
|
||||
<fieldset>
|
||||
<legend>{$lang->cmd_search}</legend>
|
||||
<input type="hidden" name="mid" value="{$layout_info->target_mid}" />
|
||||
<input type="hidden" name="search_target" value="title_content" />
|
||||
<input name="search_keyword" type="text" class="inputTypeText w110" value="<!--@if($search_keyword)-->{htmlspecialchars($search_keyword)}<!--@end-->" />
|
||||
<a href="#"><img src="./images/{$layout_info->colorset}/btn_search.gif" alt="{$lang->cmd_search}" width="45" height="20" /></a>
|
||||
</fieldset>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 내용 -->
|
||||
<div class="contentBox"><div class="topBg"></div>
|
||||
<div class="centerBg"><div class="contentArea">{$content}<div class="clear"></div></div></div>
|
||||
<div class="bottomBg"></div></div>
|
||||
|
||||
<!-- 위젯들 -->
|
||||
<div class="blogWidgetAreaBox">
|
||||
|
||||
<!-- 프로필 -->
|
||||
<div class="blogProfile">
|
||||
<!--@if($layout_info->profile_image)-->
|
||||
<img src="{$layout_info->profile_image}" border="0" alt="my profile image" class="iePngFix" width="170" />
|
||||
<!--@else-->
|
||||
<img src="./images/{$layout_info->colorset}/@blog_image.gif" alt="profile" class="iePngFix" width="170" />
|
||||
<!--@end-->
|
||||
<!--@if($layout_info->profile)-->
|
||||
<h1>{$layout_info->profile}</h1>
|
||||
<!--@end-->
|
||||
|
||||
<!-- 검색 폼 출력 -->
|
||||
<div class="blogSearch">
|
||||
<form action="{Context::getRequestUri()}" method="post">
|
||||
<fieldset>
|
||||
<legend>{$lang->cmd_search}</legend>
|
||||
<input type="hidden" name="mid" value="{$layout_info->target_mid}" />
|
||||
<input type="hidden" name="search_target" value="title_content" />
|
||||
<input name="search_keyword" type="text" class="inputTypeText w110" value="<!--@if($search_keyword)-->{htmlspecialchars($search_keyword)}<!--@end-->" />
|
||||
<a href="#"><img src="./images/{$layout_info->colorset}/btn_search.gif" alt="{$lang->cmd_search}" width="45" height="20" /></a>
|
||||
</fieldset>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 카테고리 -->
|
||||
<div class="blogTitleBox">
|
||||
<h2>category</h2>
|
||||
</div>
|
||||
<div class="widgetBox ">
|
||||
<img class="zbxe_widget_output" widget="category" body="" skin="default" colorset="normal" mid_list="{$layout_info->target_mid}" />
|
||||
</div>
|
||||
|
||||
<!-- 달력 출력 -->
|
||||
<div class="widgetBox ">
|
||||
<img src="./images/common/blank.gif" class="zbxe_widget_output" widget="calendar" skin="blog_calendar_list" colorset="layout" mid_list="{$layout_info->target_mid}" />
|
||||
</div>
|
||||
|
||||
<!-- 최근 글 출력 -->
|
||||
<div class="widgetBox">
|
||||
<img src="./images/common/blank.gif" class="zbxe_widget_output" widget="newest_document" skin="blog_newest_document" colorset="layout" title="recent posts" order_target="list_order" order_type="desc" subject_cut_size="26" list_count="5" mid_list="{$layout_info->target_mid}" />
|
||||
</div>
|
||||
|
||||
<!-- 최근댓글 출력 -->
|
||||
<div class="widgetBox">
|
||||
<img src="./images/common/blank.gif" class="zbxe_widget_output" widget="newest_comment" skin="blog_newest_comment" colorset="layout" title="recent comments" subject_cut_size="26" list_count="5" mid_list="{$layout_info->target_mid}" />
|
||||
</div>
|
||||
|
||||
<!-- 엮인글 출력 -->
|
||||
<div class="widgetBox">
|
||||
<img src="./images/common/blank.gif" class="zbxe_widget_output" widget="newest_trackback" skin="blog_newest_trackback" colorset="layout" title="recent trackbacks" subject_cut_size="26" list_count="5" mid_list="{$layout_info->target_mid}" />
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="clear"></div>
|
||||
|
||||
<div class="zbXE"><a href="http://www.zeroboard.com" onclick="window.open(this.href); return false;"><img src="./images/powerdByZeroboard.gif" alt="powered by zbXE" /></a></div>
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@
|
|||
$lang->current_version = "Current Version";
|
||||
$lang->current_path = "Installed Path";
|
||||
$lang->released_version = "Latest Version";
|
||||
$lang->about_download_link = "Newer version of Zerboard XE is available. To download the latest version, click download link.";
|
||||
$lang->about_download_link = "New version of Zerboard XE is now available. To download the latest version, click the download link.";
|
||||
|
||||
$lang->item_module = "Module List";
|
||||
$lang->item_addon = "Addon List";
|
||||
|
|
|
|||
|
|
@ -155,6 +155,7 @@
|
|||
$extra_vars->search_list_count = $args->search_list_count;
|
||||
$extra_vars->except_notice = $args->except_notice!='Y'?'N':'Y';
|
||||
$extra_vars->consultation = $args->consultation!='Y'?'N':'Y';
|
||||
$extra_vars->admin_mail = $args->admin_mail;
|
||||
$extra_vars->page_count = $args->page_count;
|
||||
|
||||
$obj->extra_vars = serialize($extra_vars);
|
||||
|
|
@ -181,6 +182,9 @@
|
|||
if($extra_var->use_category!='Y') $extra_var->use_category = 'N';
|
||||
if($extra_var->except_notice!='Y') $extra_var->except_notice = 'N';
|
||||
if($extra_var->consultation!='Y') $extra_var->consultation = 'N';
|
||||
if($extra_var->order_target) $extra_var->consultation = 'N';
|
||||
if(!in_array($extra_var->order_target,$this->order_target)) $extra_var->order_target = 'list_order';
|
||||
if(!in_array($extra_var->order_type,array('asc','desc'))) $extra_var->order_type = 'asc';
|
||||
unset($extra_var->act);
|
||||
unset($extra_var->page);
|
||||
unset($extra_var->board_name);
|
||||
|
|
|
|||
|
|
@ -42,6 +42,12 @@
|
|||
// 템플릿 경로 지정 (board의 경우 tpl에 관리자용 템플릿 모아놓음)
|
||||
$template_path = sprintf("%stpl/",$this->module_path);
|
||||
$this->setTemplatePath($template_path);
|
||||
|
||||
// 정렬 옵션을 세팅
|
||||
foreach($this->order_target as $key) $order_target[$key] = Context::getLang($key);
|
||||
$order_target['list_order'] = Context::getLang('document_srl');
|
||||
$order_target['update_order'] = Context::getLang('last_update');
|
||||
Context::set('order_target', $order_target);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -9,6 +9,8 @@
|
|||
|
||||
var $search_option = array('title','content','title_content','comment','user_name','nick_name','user_id','tag'); ///< 검색 옵션
|
||||
|
||||
var $order_target = array('list_order', 'update_order', 'regdate', 'voted_count', 'readed_count', 'comment_count', 'title'); // 정렬 옵션
|
||||
|
||||
var $skin = "default"; ///< 스킨 이름
|
||||
var $list_count = 20; ///< 한 페이지에 나타날 글의 수
|
||||
var $page_count = 10; ///< 페이지의 수
|
||||
|
|
|
|||
|
|
@ -52,6 +52,22 @@
|
|||
$output = $oDocumentController->insertDocument($obj);
|
||||
$msg_code = 'success_registed';
|
||||
$obj->document_srl = $output->get('document_srl');
|
||||
|
||||
// 문제가 없고 모듈 설정에 관리자 메일이 등록되어 있으면 메일 발송
|
||||
if($output->toBool() && $this->module_info->admin_mail) {
|
||||
$oMail = new Mail();
|
||||
$oMail->setTitle($obj->title);
|
||||
$oMail->setContent( sprintf("From : <a href=\"%s\">%s</a><br/>\r\n%s", getUrl('','document_srl',$obj->document_srl), getUrl('','document_srl',$obj->document_srl), $obj->content));
|
||||
$oMail->setSender($obj->user_name, $obj->email_address);
|
||||
|
||||
$target_mail = explode(',',$this->module_info->admin_mail);
|
||||
for($i=0;$i<count($target_mail);$i++) {
|
||||
$email_address = trim($target_mail[$i]);
|
||||
if(!$email_address) continue;
|
||||
$oMail->setReceiptor($email_address, $email_address);
|
||||
$oMail->send();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 오류 발생시 멈춤
|
||||
|
|
@ -110,6 +126,11 @@
|
|||
$obj = Context::gets('document_srl','comment_srl','parent_srl','content','password','nick_name','nick_name','member_srl','email_address','homepage','is_secret','notify_message');
|
||||
$obj->module_srl = $this->module_srl;
|
||||
|
||||
// 원글이 존재하는지 체크
|
||||
$oDocumentModel = &getModel('document');
|
||||
$oDocument = $oDocumentModel->getDocument($obj->document_srl);
|
||||
if(!$oDocument->isExists()) return new Object(-1,'msg_not_permitted');
|
||||
|
||||
// comment 모듈의 model 객체 생성
|
||||
$oCommentModel = &getModel('comment');
|
||||
|
||||
|
|
@ -139,6 +160,22 @@
|
|||
$output = $oCommentController->insertComment($obj);
|
||||
}
|
||||
|
||||
// 문제가 없고 모듈 설정에 관리자 메일이 등록되어 있으면 메일 발송
|
||||
if($output->toBool() && $this->module_info->admin_mail) {
|
||||
$oMail = new Mail();
|
||||
$oMail->setTitle($oDocument->getTitleText());
|
||||
$oMail->setContent( sprintf("From : <a href=\"%s#comment_%d\">%s#comment_%d</a><br/>\r\n%s", $oDocument->getPermanentUrl(), $obj->comment_srl, $oDocument->getPermanentUrl(), $obj->comment_srl, $obj->content));
|
||||
$oMail->setSender($obj->user_name, $obj->email_address);
|
||||
|
||||
$target_mail = explode(',',$this->module_info->admin_mail);
|
||||
for($i=0;$i<count($target_mail);$i++) {
|
||||
$email_address = trim($target_mail[$i]);
|
||||
if(!$email_address) continue;
|
||||
$oMail->setReceiptor($email_address, $email_address);
|
||||
$oMail->send();
|
||||
}
|
||||
}
|
||||
|
||||
// comment_srl이 있으면 수정으로
|
||||
} else {
|
||||
$obj->parent_srl = $comment->parent_srl;
|
||||
|
|
|
|||
|
|
@ -140,8 +140,8 @@
|
|||
// 브라우저 타이틀에 글의 제목을 추가
|
||||
Context::addBrowserTitle($oDocument->getTitleText());
|
||||
|
||||
// 조회수 증가
|
||||
$oDocument->updateReadedCount();
|
||||
// 조회수 증가 (비밀글일 경우 권한 체크)
|
||||
if(!$oDocument->isSecret() || $oDocument->isGranted()) $oDocument->updateReadedCount();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -164,12 +164,13 @@
|
|||
$args->search_target = Context::get('search_target'); ///< 검색 대상 (title, contents...)
|
||||
$args->search_keyword = Context::get('search_keyword'); ///< 검색어
|
||||
if($this->module_info->use_category=='Y') $args->category_srl = Context::get('category'); ///< 카테고리 사용시 선택된 카테고리
|
||||
|
||||
$args->sort_index = Context::get('sort_index');
|
||||
$args->order_type = Context::get('order_type');
|
||||
|
||||
// 지정된 정렬값이 없다면 스킨에서 설정한 정렬 값을 이용함
|
||||
if(!$args->sort_index) $args->sort_index = $this->module_info->order_target?$this->module_info->order_target:'list_order';
|
||||
if(!$args->order_type) $args->order_type = $this->module_info->order_type?$this->module_info->order_type:'asc';
|
||||
if(!in_array($args->sort_index, $this->order_target)) $args->sort_index = $this->module_info->order_target?$this->module_info->order_target:'list_order';
|
||||
if(!in_array($args->order_type, array('asc','desc'))) $args->order_type = $this->module_info->order_type?$this->module_info->order_type:'asc';
|
||||
|
||||
// 특정 문서의 permalink로 직접 접속할 경우 page값을 직접 구함
|
||||
if(count($_GET)==1 && isset($_GET['document_srl']) && $oDocument->isExists() && !$oDocument->isNotice()) {
|
||||
|
|
|
|||
|
|
@ -9,22 +9,23 @@
|
|||
|
||||
$lang->except_notice = "Exclude Notices";
|
||||
|
||||
$lang->cmd_manage_menu = 'Menu management';
|
||||
$lang->cmd_make_child = 'Add child category';
|
||||
$lang->cmd_enable_move_category = "Change category position (Drag the top menu after selection)";
|
||||
$lang->cmd_manage_menu = 'Manage Menus';
|
||||
$lang->cmd_make_child = 'Add Child Category';
|
||||
$lang->cmd_enable_move_category = "Change Category Position (Drag the top menu after selection)";
|
||||
|
||||
// Item
|
||||
$lang->parent_category_title = 'Parent category';
|
||||
$lang->parent_category_title = 'Parent Category';
|
||||
$lang->category_title = 'Category';
|
||||
$lang->expand = 'Expand';
|
||||
$lang->category_group_srls = 'Accessable Group';
|
||||
$lang->search_result = 'Search result';
|
||||
$lang->search_result = 'Search Result';
|
||||
$lang->consultation = 'Consultation';
|
||||
$lang->admin_mail = "Administrator's Mail";
|
||||
|
||||
// words used in button
|
||||
$lang->cmd_board_list = 'Board list';
|
||||
$lang->cmd_module_config = 'Common board setting';
|
||||
$lang->cmd_view_info = 'Board info';
|
||||
$lang->cmd_board_list = 'Boards List';
|
||||
$lang->cmd_module_config = 'Common Board Setting';
|
||||
$lang->cmd_view_info = 'Board Info';
|
||||
|
||||
// blah blah..
|
||||
$lang->about_category_title = 'Please input category name';
|
||||
|
|
@ -35,4 +36,5 @@
|
|||
$lang->about_except_notice = "Notice articles will not be displayed on normal list.";
|
||||
$lang->about_board = "This module is for creating and managing boards.\nYou may select the module name from the list after creating one to configure specifically.\nPlease be careful with board's module name, since it will be the url. (ex : http://domain/zb/?mid=modulename)";
|
||||
$lang->about_consultation = "Non-administrator members would see their own articles.\nNon-members would not be able to write articles when using consultation.";
|
||||
$lang->about_admin_mail = 'A mail will be sent when an article or comment is submitted.<br />Multiple mails can be sent with commas(,).';
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@
|
|||
$lang->category_group_srls = 'Limitar el grupo';
|
||||
$lang->search_result = 'Resultado de la búsqueda';
|
||||
$lang->consultation = '상담 기능';
|
||||
$lang->admin_mail = '관리자 메일';
|
||||
|
||||
// Palabras utilizadas en los botones
|
||||
$lang->cmd_board_list = 'Lista del tableros';
|
||||
|
|
@ -37,4 +38,5 @@
|
|||
$lang->about_except_notice = "Aviso de los artículos no se mostrará en la lista normal.";
|
||||
$lang->about_board = "Este módulo es para crear y manejar los tableros.\nLuego de crear un Tablero, seleciona el nombre del módulo para la configuración más detallada.\nSea cuidadoso con el nombre del módulo, ya que ese nombre va a ser la dirección URL. (ej : http://dominio/zb/?mid=nombre del módulo)";
|
||||
$lang->about_consultation = "No administrador de los miembros que consideran que su propia artocles. \ NNon miembros no serían capaces de escribir artículos al utilizar la consulta.";
|
||||
$lang->about_admin_mail = '글이나 댓글이 등록될때 등록된 메일주소로 메일이 발송됩니다<br /> ,(콤마)로 연결시 다수의 메일주소로 발송할 수 있습니다.';
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@
|
|||
$lang->category_group_srls = 'Groupe Accessible';
|
||||
$lang->search_result = 'Résultat de la Recherche';
|
||||
$lang->consultation = 'Consultation';
|
||||
$lang->admin_mail = '관리자 메일';
|
||||
|
||||
// Mots utiliss en bouton
|
||||
$lang->cmd_board_list = 'Liste des Panneaux';
|
||||
|
|
@ -35,4 +36,5 @@
|
|||
$lang->about_except_notice = "L'Article de Notice ne sera exposé sur la liste normale.";
|
||||
$lang->about_board = "Ce module se sert à créer et arranger des Panneaux.\nAprés avoir créé un module, si vous cliquez le nom sur le liste, vous pouvez configurer spécifiquement.\nFaites attention quand vous nomer un module du Panneau, car ce sera URL. (ex : http://domain/zb/?mid=nom_de_module)";
|
||||
$lang->about_consultation = "Les membres non-administratifs verront seulement les ariticles d\'eux-même.\nNon-membres ne pourraient pas écrire des articles quand la Consultation est appliqué.";
|
||||
$lang->about_admin_mail = '글이나 댓글이 등록될때 등록된 메일주소로 메일이 발송됩니다<br /> ,(콤마)로 연결시 다수의 메일주소로 발송할 수 있습니다.';
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@
|
|||
$lang->category_group_srls = 'グループ制限';
|
||||
$lang->search_result = '検索結果';
|
||||
$lang->consultation = '相談機能';
|
||||
$lang->admin_mail = '관리자 메일';
|
||||
|
||||
// ボタンに使用する用語
|
||||
$lang->cmd_board_list = '掲示板リスト';
|
||||
|
|
@ -38,4 +39,5 @@
|
|||
$lang->about_except_notice = "リストの上段に常に表示されるお知らせの書き込みを一般リストからお知らせの書き込みが表示されないようにします。";
|
||||
$lang->about_board = "掲示板の生成、および管理する掲示板モジュールです。\n生成後、リストからモジュール名を選択すると詳細設定ができます。\n掲示板のモジュール名はURLの一部となりますので注意してください。 (ex : http://ドメイン/zb/?mid=モジュール名)";
|
||||
$lang->about_consultation = "相談機能とは、管理権限のない会員には本人の書き込みだけを表示する機能です。\n但し、相談機能を使用する際は、非会員の書き込みは自動的に禁止されます。";
|
||||
$lang->about_admin_mail = '글이나 댓글이 등록될때 등록된 메일주소로 메일이 발송됩니다<br /> ,(콤마)로 연결시 다수의 메일주소로 발송할 수 있습니다.';
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@
|
|||
$lang->category_group_srls = '그룹제한';
|
||||
$lang->search_result = '검색결과';
|
||||
$lang->consultation = '상담 기능';
|
||||
$lang->admin_mail = '관리자 메일';
|
||||
|
||||
// 버튼에 사용되는 언어
|
||||
$lang->cmd_board_list = '게시판 목록';
|
||||
|
|
@ -35,4 +36,5 @@
|
|||
$lang->about_except_notice = "목록 상단에 늘 나타나는 공지사항을 일반 목록에서 공지사항을 출력하지 않도록 합니다.";
|
||||
$lang->about_board = "게시판을 생성하고 관리할 수 있는 게시판 모듈입니다.\n생성하신 후 목록에서 모듈이름을 선택하시면 자세한 설정이 가능합니다.\n게시판의 모듈이름은 접속 url이 되므로 신중하게 입력해주세요. (ex : http://도메인/zb/?mid=모듈이름)";
|
||||
$lang->about_consultation = "상담 기능은 관리권한이 없는 회원은 자신이 쓴 글만 보이도록 하는 기능입니다\n단 상담기능 사용시 비회원 글쓰기는 자동으로 금지됩니다.";
|
||||
$lang->about_admin_mail = '글이나 댓글이 등록될때 등록된 메일주소로 메일이 발송됩니다<br /> ,(콤마)로 연결시 다수의 메일주소로 발송할 수 있습니다.';
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@
|
|||
$lang->category_group_srls = 'Доступные группы';
|
||||
$lang->search_result = 'Результат поиска';
|
||||
$lang->consultation = '상담 기능';
|
||||
$lang->admin_mail = '관리자 메일';
|
||||
|
||||
// слова, использованные в кнопке
|
||||
$lang->cmd_board_list = 'Список форумов';
|
||||
|
|
@ -38,4 +39,5 @@
|
|||
$lang->about_except_notice = "목록 상단에 늘 나타나는 공지사항을 일반 목록에서 공지사항을 출력하지 않도록 합니다.";
|
||||
$lang->about_board = "Этот модуль служит для создания и управления форумами.\nВы можете выбрать имя модуля из списка после создания для дополнительного конифигурирования.\nПожалуйста, будте осторожны с именем модуля форума, поскольку оно будет URL. (например : http://domain/zb/?mid=имя_модуля)";
|
||||
$lang->about_consultation = "상담 기능은 관리권한이 없는 회원은 자신이 쓴 글만 보이도록 하는 기능입니다\n단 상담기능 사용시 비회원 글쓰기는 자동으로 금지됩니다.";
|
||||
$lang->about_admin_mail = '글이나 댓글이 등록될때 등록된 메일주소로 메일이 발송됩니다<br /> ,(콤마)로 연결시 다수의 메일주소로 발송할 수 있습니다.';
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@
|
|||
$lang->category_group_srls = '用户组';
|
||||
$lang->search_result = '搜索结果';
|
||||
$lang->consultation = '咨询功能';
|
||||
$lang->admin_mail = '管理员电子邮件';
|
||||
|
||||
// 按钮语言
|
||||
$lang->cmd_board_list = '版面目录';
|
||||
|
|
@ -39,4 +40,5 @@
|
|||
$lang->about_except_notice = "设置公告目录项不再重复显示到普通目录当中。";
|
||||
$lang->about_board = "可生成,管理版面的模块。\n生成版面后,点击模块名即可对其详细设置。";
|
||||
$lang->about_consultation = "咨询功能是指除有管理权限的会员以外,其他会员只能浏览自己发表的主题。\n使用咨询功能时系统将自动禁止非会员的发表主题权限。";
|
||||
$lang->about_admin_mail = '有新的发表主题或评论时,将自动发电子邮件来通知管理员。<br />多数电子邮件由逗号(,)来分隔。';
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@
|
|||
</div>
|
||||
<!--@else-->
|
||||
<!--@if($comment->getProfileImage())-->
|
||||
<div class="commentProfileImage"><img src="{$comment->getProfileImage()}" alt="profile" /></div>
|
||||
<img src="{$comment->getProfileImage()}" alt="profile" class="commentProfileImage" />
|
||||
<!--@end-->
|
||||
{$comment->getContent(true)}
|
||||
<!--@end-->
|
||||
|
|
|
|||
|
|
@ -91,7 +91,7 @@ Jeong, Chan Myeong 070601~070630
|
|||
.boardRead .fileAttached { border:1px solid #EFEFEF; background-color:#F4F4F4; padding:5px; margin-top:10px; overflow:hidden;}
|
||||
.boardRead .fileAttached h5 { font-weight:normal; color:#999999; font-size:1em; line-height:22px; }
|
||||
.boardRead .fileAttached ul { padding:0; margin:0; }
|
||||
.boardRead .fileAttached li { padding-left:15px; display:block; float:left; white-space:nowrap; list-style:none; margin-right:10px; height:18px;}
|
||||
.boardRead .fileAttached li { padding-left:15px; display:block; float:left; white-space:nowrap; list-style:none; margin:0 10px 5px 0; }
|
||||
.boardRead .fileAttached li a { text-decoration:none; font-size:.9em; white-space:nowrap; color:#444444; }
|
||||
.boardRead .fileAttached li a:visited { color:#777777;}
|
||||
|
||||
|
|
@ -99,7 +99,7 @@ Jeong, Chan Myeong 070601~070630
|
|||
|
||||
|
||||
.trackbackBox { padding:.6em .6em; color:#666666; border:1px solid #e0e1db;;margin-top:.5em; }
|
||||
.trackbackBox .trackbackUrl { color:#1F3DAE; font-size:.9em; background:url("../images/common/iconTrackback.gif") no-repeat left top; padding-left:18px; margin:0 0 3px 10px; height:18px;}
|
||||
.trackbackBox .trackbackUrl { color:#1F3DAE; font-size:.9em; background:url("../images/common/iconTrackback.gif") no-repeat left top; padding-left:18px; margin:0; }
|
||||
.trackbackBox .trackbackItem { background-color:#F3F3F3; padding:.6em .8em .6em .6em; line-height:1.25em; border-top:1px dotted #EEEEEE; list-style:none;}
|
||||
.trackbackBox p { display:inline; margin-bottom:1em;}
|
||||
.trackbackBox a { color:#666666; text-decoration:none;}
|
||||
|
|
@ -125,9 +125,9 @@ Jeong, Chan Myeong 070601~070630
|
|||
.replyBox .replyIndent { background:url(../images/common/iconReplyArrow.gif) no-repeat .0em .3em; padding-left:1.3em;}
|
||||
|
||||
.replyBox .fileAttached { border:1px solid #EFEFEF; background-color:#F4F4F4; padding:5px; margin-top:10px; overflow:hidden;}
|
||||
.replyBox .fileAttached ul { border:0; margin:0; }
|
||||
.replyBox .fileAttached h5 { font-weight:normal; color:#999999; float:left; font-size:1em; line-height:22px;}
|
||||
.replyBox .fileAttached li { padding-left:15px; display:block; float:left; white-space:nowrap; list-style:none; margin-right:10px; height:18px;}
|
||||
.replyBox .fileAttached ul { border:0; margin:0; padding:0;}
|
||||
.replyBox .fileAttached h5 { font-weight:normal; color:#999999; float:left; font-size:1em; }
|
||||
.replyBox .fileAttached li { padding-left:15px; display:block; float:left; white-space:nowrap; list-style:none; margin:0px 10px 5px 0; }
|
||||
.replyBox .fileAttached li a { text-decoration:none; font-size:.9em; white-space:nowrap; color:#444444; }
|
||||
.replyBox .fileAttached li a:visited { color:#777777;}
|
||||
|
||||
|
|
@ -318,4 +318,7 @@ html:not([lang*=""]) .boardList th { height:33px; }
|
|||
/* 회원 서명 및 프로필 이미지 출력 */
|
||||
.memberSignature { border:1px solid #e0e1db; padding:10px; margin-top:20px;}
|
||||
.memberSignature .profile { float:left; margin-right:20px; }
|
||||
.commentProfileImage { margin:0 0 10px 0; }
|
||||
.commentProfileImage { margin:0 10px 10px 0; float:left; }
|
||||
.replyBox .xe_content { display:inline; }
|
||||
|
||||
.display_date { cursor:pointer; width:80px; border:1px solid; border-color:#a6a6a6 #d8d8d8 #d8d8d8 #a6a6a6; height:1em; padding:3px; margin-right:10px;}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,15 @@
|
|||
<!-- 이 파일은 extra_vars의 form을 출력하는 파일이며 다른 스킨에서 그대로 가져가서 css만 바꾸어 주면 된다 -->
|
||||
|
||||
<!-- calendar -->
|
||||
<!--%import("../../../../common/js/calendar.js",optimized=false)-->
|
||||
<!--@if($lang_type == 'ko')-->
|
||||
<!--%import("../../../../common/js/calendar-ko.js",optimized=false)-->
|
||||
<!--@else-->
|
||||
<!--%import("../../../../common/js/calendar-en.js",optimized=false)-->
|
||||
<!--@end-->
|
||||
<!--%import("../../../../common/js/calendar-setup.js",optimized=false)-->
|
||||
<!--%import("../../../../common/css/calendar-system.css",optimized=false)-->
|
||||
|
||||
<!-- type=select,checkbox이고 기본값이 , 로 연결되어 있으면 , 를 기준으로 explode하여 배열로 만든다 -->
|
||||
<!--@if(in_array($val->type,array('select','checkbox'))&&strpos($val->default,",")!==false)-->
|
||||
{@ $val->default = explode(',',$val->default) }
|
||||
|
|
@ -56,8 +66,11 @@
|
|||
<!-- 날짜 입력 -->
|
||||
<!--@elseif($val->type == 'date')-->
|
||||
<input type="hidden" name="{$val->column_name}" id="date_{$val->column_name}" value="{$val->value}" />
|
||||
<div class="fl inputTypeText w80" id="str_{$val->column_name}">{zdate($val->value,"Y-m-d")}</div>
|
||||
<a href="#" onclick="open_calendar('{$val->column_name}','{$val->value}');return false;" class="button"><span>{$lang->cmd_open_calendar}</span></a>
|
||||
<div class="display_date" id="str_{$val->column_name}">{zdate($val->value,"Y-m-d")}</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
Calendar.setup( { firstDay : 0, inputField : "date_{$val->column_name}", ifFormat : "%Y%m%d", displayArea : "str_{$val->column_name}", daFormat : "%Y-%m-%d"});
|
||||
</script>
|
||||
<!--@end-->
|
||||
|
||||
<!--@if($val->desc)-->
|
||||
|
|
|
|||
|
|
@ -115,34 +115,6 @@
|
|||
<default>blog</default>
|
||||
<default>forum</default>
|
||||
</var>
|
||||
<var name="order_target" type="select">
|
||||
<title xml:lang="ko">정렬 대상</title>
|
||||
<title xml:lang="jp">ソート対象</title>
|
||||
<title xml:lang="zh-CN">排序对象</title>
|
||||
<title xml:lang="en">Align Target</title>
|
||||
<title xml:lang="es">Alinear Meta</title>
|
||||
<description xml:lang="ko">등록된 순서 또는 변경된 순서로 정렬을 할 수 있습니다.</description>
|
||||
<description xml:lang="jp">登録順、変更順にソートできます。</description>
|
||||
<description xml:lang="zh-CN">可对主题按发表顺或最后更新顺进行排序。</description>
|
||||
<description xml:lang="en">It can align articles as registered order or modified order.</description>
|
||||
<description xml:lang="es">Puede alinear los artículos registrados como fin o modificar el orden.</description>
|
||||
<default>list_order</default>
|
||||
<default>update_order</default>
|
||||
</var>
|
||||
<var name="order_type" type="select">
|
||||
<title xml:lang="ko">정렬 방법</title>
|
||||
<title xml:lang="jp">ソート方法</title>
|
||||
<title xml:lang="zh-CN">排序方式</title>
|
||||
<title xml:lang="en">Sorting Type</title>
|
||||
<title xml:lang="es">Tipo de ordenamiento</title>
|
||||
<description xml:lang="ko">정렬대상을 내림차순 또는 올림차순으로 정렬할 수 있습니다.</description>
|
||||
<description xml:lang="jp">ソート方法を、降順、昇順にできます。</description>
|
||||
<description xml:lang="zh-CN">对其排序对象可进行升序/降序方式排序。</description>
|
||||
<description xml:lang="en">You can sort target articles by asending or desending order.</description>
|
||||
<description xml:lang="es">Usted puede ordenar los documentos en orden acendente o en orden descendente.</description>
|
||||
<default>asc</default>
|
||||
<default>desc</default>
|
||||
</var>
|
||||
<var name="display_login_info" type="select">
|
||||
<title xml:lang="ko">로그인 정보 출력</title>
|
||||
<title xml:lang="zh-CN">显示会员信息组</title>
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
<div class="trackbackBox">
|
||||
|
||||
<div class="trackbackUrl"><a name="trackback" href="{$oDocument->getTrackbackUrl()}" onclick="return false;">{$lang->trackback_url} : {$oDocument->getTrackbackUrl()}</a></div>
|
||||
<div class="trackbackUrl"><a name="trackback" href="{$oDocument->getTrackbackUrl()}" onclick="return false;">{$lang->trackback_url} : {$oDocument->getTrackbackUrl()}</a><div class="clear"></div></div>
|
||||
|
||||
<!--@if($oDocument->getTrackbackCount())-->
|
||||
<!--@foreach($oDocument->getTrackbacks() as $key => $val)-->
|
||||
|
|
|
|||
|
|
@ -277,3 +277,5 @@ h5 { padding:2px; }
|
|||
|
||||
|
||||
.listWrite { margin-bottom:20px; }
|
||||
|
||||
.display_date { cursor:pointer; width:80px; border:1px solid; border-color:#a6a6a6 #d8d8d8 #d8d8d8 #a6a6a6; height:1em; padding:3px; margin-right:10px;}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,15 @@
|
|||
<!-- 이 파일은 extra_vars의 form을 출력하는 파일이며 다른 스킨에서 그대로 가져가서 css만 바꾸어 주면 된다 -->
|
||||
|
||||
<!-- calendar -->
|
||||
<!--%import("../../../../common/js/calendar.js",optimized=false)-->
|
||||
<!--@if($lang_type == 'ko')-->
|
||||
<!--%import("../../../../common/js/calendar-ko.js",optimized=false)-->
|
||||
<!--@else-->
|
||||
<!--%import("../../../../common/js/calendar-en.js",optimized=false)-->
|
||||
<!--@end-->
|
||||
<!--%import("../../../../common/js/calendar-setup.js",optimized=false)-->
|
||||
<!--%import("../../../../common/css/calendar-system.css",optimized=false)-->
|
||||
|
||||
<!-- type=select,checkbox이고 기본값이 , 로 연결되어 있으면 , 를 기준으로 explode하여 배열로 만든다 -->
|
||||
<!--@if(in_array($val->type,array('select','checkbox'))&&strpos($val->default,",")!==false)-->
|
||||
{@ $val->default = explode(',',$val->default) }
|
||||
|
|
@ -56,8 +66,11 @@
|
|||
<!-- 날짜 입력 -->
|
||||
<!--@elseif($val->type == 'date')-->
|
||||
<input type="hidden" name="{$val->column_name}" id="date_{$val->column_name}" value="{$val->value}" />
|
||||
<div class="fl inputTypeText w80" id="str_{$val->column_name}">{zdate($val->value,"Y-m-d")}</div>
|
||||
<a href="#" onclick="open_calendar('{$val->column_name}','{$val->value}');return false;" class="button"><span>{$lang->cmd_open_calendar}</span></a>
|
||||
<div class="display_date" id="str_{$val->column_name}">{zdate($val->value,"Y-m-d")}</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
Calendar.setup( { firstDay : 0, inputField : "date_{$val->column_name}", ifFormat : "%Y%m%d", displayArea : "str_{$val->column_name}", daFormat : "%Y-%m-%d"});
|
||||
</script>
|
||||
<!--@end-->
|
||||
|
||||
<!--@if($val->desc)-->
|
||||
|
|
|
|||
|
|
@ -35,18 +35,6 @@
|
|||
|
||||
<div class="boardBottom">
|
||||
|
||||
<!-- 글쓰기, 목록 버튼 -->
|
||||
<div class="leftButtonBox">
|
||||
<!--@if($grant->is_admin)-->
|
||||
<a href="{getUrl('','module','document','act','dispDocumentAdminManageDocument')}" onclick="popopen(this.href,'manageDocument'); return false;" class="button"><span>{$lang->cmd_manage_document}</span></a>
|
||||
<!--@end-->
|
||||
<a href="{getUrl('','mid',$mid,'page',$page,'document_srl','','listStyle',$listStyle)}" class="button"><span>{$lang->cmd_list}</span></a>
|
||||
</div>
|
||||
|
||||
<div class="rightButtonBox">
|
||||
<a href="{getUrl('act','dispBoardWrite','document_srl','')}" class="button"><span>{$lang->cmd_write}</span></a>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- 페이지 네비게이션 -->
|
||||
<div class="pageNavigation">
|
||||
|
|
|
|||
|
|
@ -92,7 +92,6 @@
|
|||
<span class="button"><input type="button" value="{$lang->cmd_temp_save}" onclick="doDocumentSave(this); return false;" /></span>
|
||||
<span class="button"><input type="button" value="{$lang->cmd_load}" onclick="doDocumentLoad(this); return false;" /></span>
|
||||
<!--@end-->
|
||||
<span class="button"><input type="button" value="{$lang->cmd_back}" onclick="location.href='{getUrl('act','')}'" /></span>
|
||||
<span class="button"><input type="button" value="{$lang->cmd_preview}" onclick="doDocumentPreview(this); return false;" /></span>
|
||||
<span class="button"><input type="submit" value="{$lang->cmd_registration}" accesskey="s" /></span>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -35,6 +35,14 @@
|
|||
<th scope="row">{$lang->use_category}</th>
|
||||
<td><!--@if($module_info->use_category=='Y')-->{$lang->use}<!--@else-->{$lang->notuse}<!--@end--></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->order_target}</th>
|
||||
<td>{$order_target[$module_info->order_target]}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->order_type}</th>
|
||||
<td><!--@if($module_info->order_type=='asc')-->{$lang->order_asc}<!--@else-->{$lang->order_desc}<!--@end--></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->list_count}</th>
|
||||
<td>{$module_info->list_count?$module_info->list_count:20}</td>
|
||||
|
|
@ -55,6 +63,10 @@
|
|||
<th scope="row">{$lang->consultation}</th>
|
||||
<td>{$module_info->consultation=='Y'?$lang->use:$lang->notuse}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->admin_mail}</th>
|
||||
<td>{$module_info->admin_mail}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->description}</th>
|
||||
<td>{nl2br(htmlspecialchars($module_info->description))} </td>
|
||||
|
|
|
|||
|
|
@ -84,6 +84,26 @@
|
|||
<label for="fld_for_category">{$lang->about_use_category}</label>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->order_target}</th>
|
||||
<td>
|
||||
<select name="order_target">
|
||||
<!--@foreach($order_target as $key => $val)-->
|
||||
<option value="{$key}" <!--@if($module_info->order_target == $key)-->selected="selected"<!--@end-->>{$val}</option>
|
||||
<!--@end-->
|
||||
</select>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->order_type}</th>
|
||||
<td>
|
||||
<select name="order_type">
|
||||
<option value="asc" <!--@if($module_info->order_type != 'desc')-->selected="selected"<!--@end-->>{$lang->order_asc}</option>
|
||||
<option value="desc" <!--@if($module_info->order_type == 'desc')-->selected="selected"<!--@end-->>{$lang->order_desc}</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->list_count}</th>
|
||||
<td>
|
||||
|
|
@ -119,6 +139,13 @@
|
|||
<p>{nl2br($lang->about_consultation)}</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->admin_mail}</th>
|
||||
<td>
|
||||
<input type="text" name="admin_mail" value="{$module_info->admin_mail}" class="inputTypeText w400" />
|
||||
<p>{$lang->about_admin_mail}</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->description}</th>
|
||||
<td>
|
||||
|
|
|
|||
|
|
@ -14,10 +14,13 @@
|
|||
<param name="skin" target="skin" />
|
||||
<param name="browser_title" target="browser_title" />
|
||||
<param name="use_category" target="use_category" />
|
||||
<param name="order_target" target="order_target" />
|
||||
<param name="order_type" target="order_type" />
|
||||
<param name="list_count" target="list_count" />
|
||||
<param name="search_list_count" target="search_list_count" />
|
||||
<param name="except_notice" target="except_notice" />
|
||||
<param name="consultation" target="consultation" />
|
||||
<param name="admin_mail" target="admin_mail" />
|
||||
<param name="page_count" target="page_count" />
|
||||
<param name="is_default" target="is_default" />
|
||||
<param name="description" target="description" />
|
||||
|
|
|
|||
|
|
@ -174,7 +174,7 @@
|
|||
$content = preg_replace('!([^>^"^\'^=])(http|https|ftp|mms):\/\/([^ ^<^"^\']*)!is','$1<a href="$2://$3" onclick="window.open(this.href);return false;">$2://$3</a>',' '.$content);
|
||||
|
||||
// 이 댓글을... 팝업메뉴를 출력할 경우
|
||||
if($add_popup_menu) {
|
||||
if($add_popup_menu && Context::get('is_logged') ) {
|
||||
$content = sprintf(
|
||||
'%s<div class="comment_popup_menu"><span class="comment_%d">%s</span></div>',
|
||||
$content,
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
$lang->cmd_toggle_checked_comment = 'Renverser les choisis';
|
||||
$lang->cmd_delete_checked_comment = 'Supprimer les choisis';
|
||||
|
||||
$lang->comment_count = 'Commentaires';
|
||||
$lang->comment_count = 'Nombres de Commentaires';
|
||||
$lang->about_comment_count = 'Quand il y a plus de commentaires, ils seront bougés sur le liste.';
|
||||
|
||||
$lang->msg_cart_is_null = 'Choisissez un article à supprimer, SVP.';
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@
|
|||
<col />
|
||||
<col width="150" />
|
||||
<col width="65" />
|
||||
<col width="85" />
|
||||
<col width="65" />
|
||||
<col width="90" />
|
||||
<col width="45" />
|
||||
|
||||
|
|
@ -25,7 +25,7 @@
|
|||
<col />
|
||||
<col width="150" />
|
||||
<col width="75" />
|
||||
<col width="85" />
|
||||
<col width="75" />
|
||||
<col width="90" />
|
||||
<col width="45" />
|
||||
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
<col />
|
||||
<col width="150" />
|
||||
<col width="75" />
|
||||
<col width="85" />
|
||||
<col width="75" />
|
||||
<col width="90" />
|
||||
<col width="45" />
|
||||
|
||||
|
|
@ -52,7 +52,7 @@
|
|||
<col />
|
||||
<col width="150" />
|
||||
<col width="75" />
|
||||
<col width="90" />
|
||||
<col width="75" />
|
||||
<col width="90" />
|
||||
<col width="50" />
|
||||
|
||||
|
|
@ -61,7 +61,7 @@
|
|||
<col />
|
||||
<col width="150" />
|
||||
<col width="75" />
|
||||
<col width="85" />
|
||||
<col width="75" />
|
||||
<col width="90" />
|
||||
<col width="95" />
|
||||
<!--@end-->
|
||||
|
|
@ -92,8 +92,8 @@
|
|||
<td rowspan="2" class="tahoma">{$no}</td>
|
||||
<td class="blue"><a href="./?mid={$module_list[$val->module_srl]->mid}" onclick="window.open(this.href);return false">{htmlspecialchars($module_list[$val->module_srl]->browser_title)}</a></td>
|
||||
<td><div class="member_{$val->member_srl}">{htmlspecialchars($val->nick_name)}</div></td>
|
||||
<td class="tahoma">{zdate($val->regdate,"Y-m-d")}</td>
|
||||
<td class="tahoma"><!--@if($val->last_update)-->{zdate($val->last_update, 'Y-m-d H:i:s')}<!--@else--> <!--@end--></td>
|
||||
<td class="tahoma">{nl2br(zdate($val->regdate,"Y-m-d\nH:i:s"))}</td>
|
||||
<td class="tahoma"><!--@if($val->last_update)-->{nl2br(zdate($val->last_update, "Y-m-d\nH:i:s"))}<!--@else--> <!--@end--></td>
|
||||
<td class="tahoma">{$val->ipaddress}</td>
|
||||
<td class="blue"><a href="{getUrl('','document_srl',$val->document_srl)}#comment_{$val->comment_srl}" onclick="window.open(this.href);return false;">{$lang->cmd_move}</a></td>
|
||||
</tr>
|
||||
|
|
|
|||
|
|
@ -1,9 +1,32 @@
|
|||
<!--%import("js/counter_admin.js")-->
|
||||
|
||||
<!-- calendar -->
|
||||
<!--%import("../../common/js/calendar.js",optimized=false)-->
|
||||
<!--@if($lang_type == 'ko')-->
|
||||
<!--%import("../../common/js/calendar-ko.js",optimized=false)-->
|
||||
<!--@else-->
|
||||
<!--%import("../../common/js/calendar-en.js",optimized=false)-->
|
||||
<!--@end-->
|
||||
<!--%import("../../common/js/calendar-setup.js",optimized=false)-->
|
||||
<!--%import("../../common/css/calendar-system.css",optimized=false)-->
|
||||
|
||||
<script type="text/javascript">
|
||||
function moveDate() {
|
||||
xGetElementById('fo_calendar').submit();
|
||||
return true;
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
<h3>{$lang->counter} <span class="gray">{$lang->cmd_management}</span></h3>
|
||||
|
||||
<div class="header4 gap1">
|
||||
|
||||
<form action="./index.php" method="get" id="fo_calendar">
|
||||
<input type="hidden" name="module" value="{$module}" />
|
||||
<input type="hidden" name="act" value="{$act}" />
|
||||
<input type="hidden" name="selected_date" id="selected_date" value="{zDate('Ymd',$selected_date)}" />
|
||||
|
||||
<table cellspacing="0" class="summary">
|
||||
<col width="124" />
|
||||
<col />
|
||||
|
|
@ -12,11 +35,19 @@
|
|||
<tr>
|
||||
<th scope="row">{$lang->total_counter}</th>
|
||||
<td>Visitor <strong>{number_format($total_counter->unique_visitor)}</strong> / Pageview : <strong>{number_format($total_counter->pageview)}</strong></td>
|
||||
<th scope="row">{zdate($selected_date, "Y-m-d")} <span class="vr">|</span> <a href="#" onclick="open_calendar(null, '{$selected_date}', 'changeSelectedDate');return false;"><img src="./images/buttonCalendar.gif" alt="calendar" width="16" height="13" /></a></th>
|
||||
<th scope="row">
|
||||
<span id="str_selected_date">{zdate($selected_date, "Y-m-d")}</span> <span class="vr">|</span>
|
||||
<img src="./images/buttonCalendar.gif" alt="calendar" width="16" height="13" id="trigger_calendar" />
|
||||
<script type="text/javascript">
|
||||
Calendar.setup( { firstDay : 0, inputField : "selected_date", ifFormat : "%Y%m%d", displayArea : "str_selected_date", daFormat : "%Y-%m-%d" , button : "trigger_calendar", onClose: moveDate } );
|
||||
</script>
|
||||
</th>
|
||||
<td>Visitor : <strong>{number_format($selected_day_counter->unique_visitor)}</strong> / Pageview : <strong>{number_format($selected_day_counter->pageview)}</strong></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</form>
|
||||
|
||||
<ul class="localNavigation">
|
||||
<!--@foreach($lang->cmd_select_counter_type as $key => $val)-->
|
||||
<li <!--@if($type==$key || (!$type && $key == "hour"))-->class="on"<!--@end-->><a href="{getUrl('type',$key)}">{$val}</a></li>
|
||||
|
|
|
|||
|
|
@ -159,17 +159,18 @@
|
|||
$file_info['tmp_name'] = $val->uploaded_filename;
|
||||
$file_info['name'] = $val->source_filename;
|
||||
$inserted_file = $oFileController->insertFile($file_info, $module_srl, $obj->document_srl, $val->download_count, true);
|
||||
if($inserted_file && $inserted_file->toBool()) {
|
||||
// 이미지/동영상등일 경우
|
||||
if($val->direct_download == 'Y') {
|
||||
$source_filename = substr($val->uploaded_filename,2);
|
||||
$target_filename = substr($inserted_file->get('uploaded_filename'),2);
|
||||
$obj->content = str_replace($source_filename, $target_filename, $obj->content);
|
||||
|
||||
// 이미지/동영상등일 경우
|
||||
if($val->direct_download == 'Y') {
|
||||
$source_filename = substr($val->uploaded_filename,2);
|
||||
$target_filename = substr($inserted_file->get('uploaded_filename'),2);
|
||||
$obj->content = str_replace($source_filename, $target_filename, $obj->content);
|
||||
|
||||
// binary 파일일 경우
|
||||
} else {
|
||||
$obj->content = str_replace('file_srl='.$val->file_srl, 'file_srl='.$inserted_file->get('file_srl'), $obj->content);
|
||||
$obj->content = str_replace('sid='.$val->sid, 'sid='.$inserted_file->get('sid'), $obj->content);
|
||||
// binary 파일일 경우
|
||||
} else {
|
||||
$obj->content = str_replace('file_srl='.$val->file_srl, 'file_srl='.$inserted_file->get('file_srl'), $obj->content);
|
||||
$obj->content = str_replace('sid='.$val->sid, 'sid='.$inserted_file->get('sid'), $obj->content);
|
||||
}
|
||||
}
|
||||
|
||||
// 기존 파일 삭제
|
||||
|
|
|
|||
|
|
@ -80,27 +80,25 @@
|
|||
}
|
||||
|
||||
function allowTrackback() {
|
||||
if(!$this->isExists()) return false;
|
||||
|
||||
// allowTrackback()의 경우 여러번 호출됨으로 자체 변수 설정후 사용
|
||||
if(!isset($this->allow_trackback_status)) {
|
||||
|
||||
// 글쓴이가 허용하였으면 사용으로 체크
|
||||
if($this->get('allow_trackback')=='Y') $this->allow_trackback_status = true;
|
||||
// 엮인글 관리 모듈의 사용금지 설정 상태이면 무조건 금지, 그렇지 않으면 개별 체크
|
||||
$oModuleModel = &getModel('module');
|
||||
$trackback_config = $oModuleModel->getModuleConfig('trackback');
|
||||
|
||||
// 글쓴이가 허용하였더라도 모듈 설정에서 허용이 아니라면 금지로 설정
|
||||
if($this->allow_trackback_status) {
|
||||
$oModuleModel = &getModel('module');
|
||||
$trackback_config = $oModuleModel->getModuleConfig('trackback');
|
||||
if($trackback_config->enable_trackback != 'Y') $this->allow_trackback_status = false;
|
||||
else {
|
||||
$module_srl = $this->get('module_srl');
|
||||
if(!$module_srl) $module_srl = Context::get('module_srl');
|
||||
|
||||
// 전체 설정에서 엮인글 사용금지이면 모든 엮인글의 사용을 금지함
|
||||
if($trackback_config->enable_trackback != 'Y') $this->allow_trackback_status = false;
|
||||
// 모듈별 설정을 체크
|
||||
$module_config = $trackback_config->module_config[$module_srl];
|
||||
|
||||
// 전체 설정에서 허용시 모듈별 설정을 체크
|
||||
if($module_config->enable_trackback == 'N') $this->allow_trackback_status = false;
|
||||
else {
|
||||
$module_config = $trackback_config->module_config[$this->get('module_srl')];
|
||||
if(!$module_config || $module_config->enable_trackback != 'N') $this->allow_trackback_status = true;
|
||||
else $this->allow_trackback_status = false;
|
||||
// 글쓴이가 허용하였거나 원본 글이 없으면 허용
|
||||
if($this->get('allow_trackback')=='Y' || !$this->isExists()) $this->allow_trackback_status = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -209,7 +209,6 @@
|
|||
break;
|
||||
case 'comment' :
|
||||
$args->s_comment = $search_keyword;
|
||||
$args->sort_index = 'documents.'.$args->sort_index;
|
||||
$query_id = 'document.getDocumentListWithinComment';
|
||||
$use_division = true;
|
||||
break;
|
||||
|
|
@ -288,7 +287,26 @@
|
|||
}
|
||||
|
||||
// document.getDocumentList 쿼리 실행
|
||||
$output = executeQueryArray($query_id, $args);
|
||||
// 만약 query_id가 getDocumentListWithinComment 또는 getDocumentListWithinTag일 경우 group by 절 사용 때문에 쿼리를 한번더 수행
|
||||
if(in_array($query_id, array('document.getDocumentListWithinComment', 'document.getDocumentListWithinTag'))) {
|
||||
$group_args = clone($args);
|
||||
$group_args->sort_index = 'documents.'.$args->sort_index;
|
||||
$output = executeQueryArray($query_id, $group_args);
|
||||
if(!$output->toBool()||!count($output->data)) return $output;
|
||||
|
||||
foreach($output->data as $key => $val) {
|
||||
if($val->document_srl) $target_srls[] = $val->document_srl;
|
||||
}
|
||||
|
||||
$target_args->document_srls = implode(',',$target_srls);
|
||||
$target_args->list_order = $args->sort_index;
|
||||
$target_args->order = $args->order_type;
|
||||
$target_args->list_count = $args->list_count;
|
||||
$target_args->page = 1;
|
||||
$output = executeQueryArray('document.getDocuments', $target_args);
|
||||
} else {
|
||||
$output = executeQueryArray($query_id, $args);
|
||||
}
|
||||
|
||||
// 결과가 없거나 오류 발생시 그냥 return
|
||||
if(!$output->toBool()||!count($output->data)) return $output;
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
<table name="comments" alias="comments"/>
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="documents.*" />
|
||||
<column name="documents.document_srl" />
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="in" column="documents.module_srl" var="module_srl" filter="number" />
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
<table name="tags" alias="tags"/>
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="documents.*" />
|
||||
<column name="documents.document_srl" />
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="in" column="documents.module_srl" var="module_srl" filter="number" />
|
||||
|
|
|
|||
|
|
@ -10,5 +10,8 @@
|
|||
</conditions>
|
||||
<navigation>
|
||||
<index var="list_order" default="list_order" order="asc" />
|
||||
<list_count var="list_count" default="20" />
|
||||
<page_count var="page_count" default="10" />
|
||||
<page var="page" default="1" />
|
||||
</navigation>
|
||||
</query>
|
||||
|
|
|
|||
|
|
@ -13,30 +13,29 @@
|
|||
|
||||
<!-- 목록 -->
|
||||
<table cellspacing="0" class="adminTable">
|
||||
<thead>
|
||||
<!--@if($lang_type == 'ko')-->
|
||||
{@ $col_width = array(50,40,0,150,55,55,65)}
|
||||
{@ $col_width = array(50,0,150,55,55,65)}
|
||||
<!--@else if($lang_type == 'en')-->
|
||||
{@ $col_width = array(50,40,0,150,55,55,75)}
|
||||
{@ $col_width = array(50,0,150,55,55,75)}
|
||||
<!--@else if($lang_type == 'zh-CN')-->
|
||||
{@ $col_width = array(50,40,0,150,50,50,70)}
|
||||
{@ $col_width = array(50,0,150,50,50,70)}
|
||||
<!--@else if($lang_type == 'jp')-->
|
||||
{@ $col_width = array(50,40,0,150,55,55,75)}
|
||||
{@ $col_width = array(50,0,150,55,55,75)}
|
||||
<!--@else if($lang_type == 'es')-->
|
||||
{@ $col_width = array(50,40,0,150,55,110,75)}
|
||||
{@ $col_width = array(50,0,150,55,110,75)}
|
||||
<!--@else if($lang_type == 'ru')-->
|
||||
{@ $col_width = array(50,40,0,150,50,60,65)}
|
||||
{@ $col_width = array(50,0,150,50,60,65)}
|
||||
<!--@end-->
|
||||
|
||||
<!--@foreach($col_width as $width)-->
|
||||
<col <!--@if($width)-->width="{$width}" <!--@end-->/>
|
||||
<!--@end-->
|
||||
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">{$lang->no}</th>
|
||||
<th scope="col"><input type="checkbox" onclick="clickCheckBoxAll(this.form, 'cart'); return false;" /></th>
|
||||
<th scope="col">
|
||||
<div class="nowrap">
|
||||
<input type="checkbox" onclick="clickCheckBoxAll(this.form, 'cart'); return false;" />
|
||||
<select name="module_srl" id="module_srl" class="w230">
|
||||
<option value="">{$lang->module}</option>
|
||||
<!--@foreach($mid_list as $key => $val)-->
|
||||
|
|
@ -55,13 +54,19 @@
|
|||
<tbody>
|
||||
<!--@foreach($document_list as $no => $oDocument)-->
|
||||
<tr>
|
||||
<td class="tahoma">{$no}</td>
|
||||
<td><input type="checkbox" name="cart" value="{$oDocument->document_srl}" onclick="doAddDocumentCart(this)" <!--@if($oDocument->isCarted())-->checked="checked"<!--@end-->/></td>
|
||||
<td class="left subject">
|
||||
<td class="tahoma" rowspan="2">{$no}</td>
|
||||
<td class="left"><!--@if($oDocument->get('module_srl')!=$oDocument->get('member_srl'))--><a href="{getUrl('','mid',$module_list[$oDocument->get('module_srl')]->mid)}" class="blue" onclick="window.open(this.href);return false">{htmlspecialchars($module_list[$oDocument->get('module_srl')]->browser_title)}</a><!--@else-->-<!--@end--></td>
|
||||
<td class="left"><div class="member_{$oDocument->get('member_srl')}">{$oDocument->getNickName()}</div></td>
|
||||
<td class="tahoma">{$oDocument->get('readed_count')}</td>
|
||||
<td class="tahoma">{$oDocument->get('voted_count')}</td>
|
||||
<td class="tahoma">{$oDocument->getRegdate("Y-m-d")} {$oDocument->getRegdate("H:i:s")}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="left subject" colspan="5">
|
||||
<input type="checkbox" name="cart" value="{$oDocument->document_srl}" onclick="doAddDocumentCart(this)" <!--@if($oDocument->isCarted())-->checked="checked"<!--@end-->/>
|
||||
<!--@if($oDocument->get('module_srl')==$oDocument->get('member_srl'))-->
|
||||
{$lang->cmd_save}
|
||||
<!--@else-->
|
||||
<a href="{getUrl('','mid',$module_list[$oDocument->get('module_srl')]->mid)}" class="blue" onclick="window.open(this.href);return false">[{htmlspecialchars($module_list[$oDocument->get('module_srl')]->browser_title)}]</a><br />
|
||||
<a href="{getUrl('','document_srl',$oDocument->document_srl)}" onclick="window.open(this.href);return false">{$oDocument->getTitle()}</a>
|
||||
<!--@end-->
|
||||
|
||||
|
|
@ -73,10 +78,6 @@
|
|||
[{$oDocument->getTrackbackCount()}]
|
||||
<!--@end-->
|
||||
</td>
|
||||
<td class="left"><div class="member_{$oDocument->get('member_srl')}">{$oDocument->getNickName()}</div></td>
|
||||
<td class="tahoma">{$oDocument->get('readed_count')}</td>
|
||||
<td class="tahoma">{$oDocument->get('voted_count')}</td>
|
||||
<td class="tahoma">{$oDocument->getRegdate("Y-m-d")}</td>
|
||||
</tr>
|
||||
<!--@end-->
|
||||
</tbody>
|
||||
|
|
|
|||
|
|
@ -12,8 +12,8 @@
|
|||
$lang->component_link = "Lien";
|
||||
$lang->component_date = "Jour de Création";
|
||||
$lang->component_description = "Description";
|
||||
$lang->component_extra_vars = "Variables d\'Option";
|
||||
$lang->component_grant = "Configuration de l\'Autorisation";
|
||||
$lang->component_extra_vars = "Variables d'Option";
|
||||
$lang->component_grant = "Configuration de l'Autorisation";
|
||||
|
||||
$lang->about_component = "Sur le Composant";
|
||||
$lang->about_component_grant = "Le groupe sélectionné peut seulement utiliser. (Tout le monde peut utiliser quand le mode est invalid)";
|
||||
|
|
|
|||
|
|
@ -9,6 +9,6 @@
|
|||
<condition operation="equal" column="enabled" var="enabled" />
|
||||
</conditions>
|
||||
<navigation>
|
||||
<index var="sort_index" default="component_name" order="asc" />
|
||||
<index var="sort_index" default="list_order" order="asc" />
|
||||
</navigation>
|
||||
</query>
|
||||
|
|
|
|||
|
|
@ -338,11 +338,11 @@
|
|||
|
||||
// 이미지인지 기타 파일인지 체크하여 upload path 지정
|
||||
if(preg_match("/\.(jpg|jpeg|gif|png|wmv|wma|mpg|mpeg|avi|swf|flv|mp3|asaf|wav|asx|midi|asf)$/i", $file_info['name'])) {
|
||||
$path = sprintf("./files/attach/images/%s/%s/", $module_srl,$upload_target_srl);
|
||||
$path = sprintf("./files/attach/images/%s/%s", $module_srl,getNumberingPath($upload_target_srl,3));
|
||||
$filename = $path.$file_info['name'];
|
||||
$direct_download = 'Y';
|
||||
} else {
|
||||
$path = sprintf("./files/attach/binaries/%s/%s/", $module_srl, $upload_target_srl);
|
||||
$path = sprintf("./files/attach/binaries/%s/%s", $module_srl, getNumberingPath($upload_target_srl,3));
|
||||
$filename = $path.md5(crypt(rand(1000000,900000), rand(0,100)));
|
||||
$direct_download = 'N';
|
||||
}
|
||||
|
|
|
|||
|
|
@ -781,11 +781,11 @@
|
|||
|
||||
// 이미지인지 기타 파일인지 체크하여 upload path 지정
|
||||
if(preg_match("/\.(jpg|jpeg|gif|png|wmv|wma|mpg|mpeg|avi|swf|flv|mp3|asaf|wav|asx|midi|asf)$/i", $file_obj->source_filename)) {
|
||||
$path = sprintf("./files/attach/images/%s/%s/", $module_srl,$upload_target_srl);
|
||||
$path = sprintf("./files/attach/images/%s/%s", $module_srl,getNumberingPath($upload_target_srl,3));
|
||||
$filename = $path.$file_obj->source_filename;
|
||||
$file_obj->direct_download = 'Y';
|
||||
} else {
|
||||
$path = sprintf("./files/attach/binaries/%s/%s/", $module_srl, $upload_target_srl);
|
||||
$path = sprintf("./files/attach/binaries/%s/%s", $module_srl, getNumberingPath($upload_target_srl,3));
|
||||
$filename = $path.md5(crypt(rand(1000000,900000), rand(0,100)));
|
||||
$file_obj->direct_download = 'N';
|
||||
}
|
||||
|
|
|
|||
|
|
@ -286,11 +286,11 @@
|
|||
|
||||
// 이미지인지 기타 파일인지 체크하여 upload path 지정
|
||||
if(preg_match("/\.(jpg|jpeg|gif|png|wmv|wma|mpg|mpeg|avi|swf|flv|mp3|asaf|wav|asx|midi|asf)$/i", $file_obj->source_filename)) {
|
||||
$path = sprintf("./files/attach/images/%s/%s/", $module_srl,$upload_target_srl);
|
||||
$path = sprintf("./files/attach/images/%s/%s", $module_srl,getNumberingPath($upload_target_srl,3));
|
||||
$filename = $path.$file_obj->source_filename;
|
||||
$file_obj->direct_download = 'Y';
|
||||
} else {
|
||||
$path = sprintf("./files/attach/binaries/%s/%s/", $module_srl, $upload_target_srl);
|
||||
$path = sprintf("./files/attach/binaries/%s/%s", $module_srl, getNumberingPath($upload_target_srl,3));
|
||||
$filename = $path.md5(crypt(rand(1000000,900000), rand(0,100)));
|
||||
$file_obj->direct_download = 'N';
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
$lang->lifepod = "Lifepod";
|
||||
|
||||
$lang->calendar_address = "Calendar's XML Address";
|
||||
$lang->cmd_lifepod_list = 'Lifepod List';
|
||||
$lang->cmd_lifepod_list = 'Lifepods List';
|
||||
$lang->cmd_view_info = 'Lifepod Info.';
|
||||
|
||||
$lang->about_lifepod = "Lifepod is a calendar service provided by Openmaru Studio.<br />Lifepod Zeroboard XE module displays Lifepod's specific calendars as internal documents.";
|
||||
|
|
|
|||
15
modules/lifepod/lang/fr.lang.php
Normal file
15
modules/lifepod/lang/fr.lang.php
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
<?php
|
||||
/**
|
||||
* @file fr.lang.php
|
||||
* @author haneul (haneul0318@gmail.com) Traduit par Pierre Duvent (PierreDuvent@gmail.com)
|
||||
* @brief default language pack of lifepod module
|
||||
**/
|
||||
|
||||
$lang->lifepod = "Lifepod";
|
||||
|
||||
$lang->calendar_address = "Addresse de XML du Calendrier";
|
||||
$lang->cmd_lifepod_list = 'Liste de Lifepod';
|
||||
$lang->cmd_view_info = 'Information de Lifepod.';
|
||||
|
||||
$lang->about_lifepod = "Lifepod est un service pourvu par Openmaru Studio.<br />Le module de Lifepod Zeroboard XE se présente les calendriers spécifiques de Lifepod comme les documents internes.";
|
||||
?>
|
||||
|
|
@ -63,8 +63,8 @@
|
|||
$lang->webmaster_name = "Webmaster's Name";
|
||||
$lang->webmaster_email = "Webmaster's Email";
|
||||
|
||||
$lang->about_keep_signed = 'Your login session will not be expired even browser is closed.\n\nYou would not have to login manually from next time.\n\nIt is strongly recommended not to use this function in PC room, school, or other Public areas where your private information could be stolen.';
|
||||
$lang->about_webmaster_name = "Please input webmaster's name which will be used for certification mails or other site administration. (default : webmaster)";
|
||||
$lang->about_keep_signed = '브라우저를 닫더라도 로그인이 계속 유지될 수 있습니다.\n\n로그인 유지 기능을 사용할 경우 다음 접속부터는 로그인을 하실 필요가 없습니다.\n\n단, 게임방, 학교 등 공공장소에서 이용시 개인정보가 유출될 수 있으니 꼭 로그아웃을 해주세요';
|
||||
$lang->about_webmaster_name = "Please input webmaster's name which will be used for certification mails or other site administration. (default : webmaster)";
|
||||
$lang->about_webmaster_email = "Please input webmaster's email address.";
|
||||
|
||||
$lang->search_target_list = array(
|
||||
|
|
|
|||
|
|
@ -62,8 +62,8 @@
|
|||
$lang->webmaster_name = 'Nombre del Webmaster';
|
||||
$lang->webmaster_email = 'Correo electrónico Webmaster';
|
||||
|
||||
$lang->about_keep_signed = 'Su nombre de usuario período de sesiones no será vencido incluso el navegador está cerrado. \ N \ nSe no tendría acceso manualmente a partir de la próxima vez. \ N \ nIt Se recomienda encarecidamente no utilizar esta función en la sala de PC, la escuela y otros ámbitos en los que su público Información privada podrían ser robados.';
|
||||
$lang->about_webmaster_name = 'Por favor, webmaster de entrada el nombre que se utilizará para la autenticación de los correos u otros sitio de la administración. (Por defecto: webmaster)';
|
||||
$lang->about_keep_signed = '브라우저를 닫더라도 로그인이 계속 유지될 수 있습니다.\n\n로그인 유지 기능을 사용할 경우 다음 접속부터는 로그인을 하실 필요가 없습니다.\n\n단, 게임방, 학교 등 공공장소에서 이용시 개인정보가 유출될 수 있으니 꼭 로그아웃을 해주세요';
|
||||
$lang->about_webmaster_name = 'Por favor, webmaster de entrada el nombre que se utilizará para la autenticación de los correos u otros sitio de la administración. (Por defecto: webmaster)';
|
||||
$lang->about_webmaster_email = 'Introduzca la dirección de correo electrónico webmaster.';
|
||||
|
||||
$lang->search_target_list = array(
|
||||
|
|
|
|||
|
|
@ -63,8 +63,8 @@
|
|||
$lang->webmaster_name = 'ウェブマスターの名前';
|
||||
$lang->webmaster_email = 'ウェブマスターのメール';
|
||||
|
||||
$lang->about_keep_signed = 'ブラウザーを閉じてもログインの状態が維持されます。.\n\n自動ログインを使用すると、次回からはログインする必要がありません。.\n\n但し、ネットカフェーや学校など公共の場では個人情報流出の恐れがありますので、必ずログアウトしてください。';
|
||||
$lang->about_webmaster_name = '認証メールまたはサイト管理時に使用されるウェブマスターの名前を入力してください(デフォルト : webmaster)';
|
||||
$lang->about_keep_signed = '브라우저를 닫더라도 로그인이 계속 유지될 수 있습니다.\n\n로그인 유지 기능을 사용할 경우 다음 접속부터는 로그인을 하실 필요가 없습니다.\n\n단, 게임방, 학교 등 공공장소에서 이용시 개인정보가 유출될 수 있으니 꼭 로그아웃을 해주세요';
|
||||
$lang->about_webmaster_name = '認証メールまたはサイト管理時に使用されるウェブマスターの名前を入力してください(デフォルト : webmaster)';
|
||||
$lang->about_webmaster_email = 'ウェブマスターのメールアドレスを入力してください。';
|
||||
|
||||
$lang->search_target_list = array(
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@
|
|||
$lang->webmaster_name = '웹마스터 이름';
|
||||
$lang->webmaster_email = '웹마스터 메일주소';
|
||||
|
||||
$lang->about_keep_signed = '브라우저를 닫더라도 로그인이 계속 유지될 수 있습니다.\n\n로그인 유지 기능을 사용시 다음 접속부터는 로그인을 하실 필요가 없습니다.\n\n단, 게임방, 학교 등 공공장소에서 이용시 개인정보가 유출될 수 있으니 꼭 로그아웃을 해주세요';
|
||||
$lang->about_keep_signed = '브라우저를 닫더라도 로그인이 계속 유지될 수 있습니다.\n\n로그인 유지 기능을 사용할 경우 다음 접속부터는 로그인을 하실 필요가 없습니다.\n\n단, 게임방, 학교 등 공공장소에서 이용시 개인정보가 유출될 수 있으니 꼭 로그아웃을 해주세요';
|
||||
$lang->about_webmaster_name = '인증 메일이나 기타 사이트 관리시 사용될 웹마스터의 이름을 입력해주세요. (기본 : webmaster)';
|
||||
$lang->about_webmaster_email = '웹마스터의 메일 주소를 입력해주세요.';
|
||||
|
||||
|
|
|
|||
|
|
@ -62,8 +62,7 @@
|
|||
$lang->webmaster_name = "Имя веб-мастера";
|
||||
$lang->webmaster_email = "Email веб-мастера";
|
||||
|
||||
$lang->about_keep_signed = '브라우저를 닫더라도 로그인이 게속 유지될 수 있습니다.\n\n로그인 유지시 사용시 다음 접속부터는 로그인을 하실필요가 없습니다.\n\n단, 게임방, 학교등 공공장소에서 이용시 개인정보가 유출될수 있으니 꼭 로그아웃을 해주세요';
|
||||
$lang->about_webmaster_name = "Пожалуйста, введите имя веб-мастера, которое будет использоваться для аутентификационных писем или другого адиминистрирования сайта. (по умолчанию : webmaster)";
|
||||
$lang->about_keep_signed = '브라우저를 닫더라도 로그인이 계속 유지될 수 있습니다.\n\n로그인 유지 기능을 사용할 경우 다음 접속부터는 로그인을 하실 필요가 없습니다.\n\n단, 게임방, 학교 등 공공장소에서 이용시 개인정보가 유출될 수 있으니 꼭 로그아웃을 해주세요'; $lang->about_webmaster_name = "Пожалуйста, введите имя веб-мастера, которое будет использоваться для аутентификационных писем или другого адиминистрирования сайта. (по умолчанию : webmaster)";
|
||||
$lang->about_webmaster_email = "Пожалуйста, введите email адрес веб-мастера.";
|
||||
|
||||
$lang->search_target_list = array(
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@
|
|||
$lang->webmaster_email = '管理员电子邮件';
|
||||
|
||||
$lang->about_keep_signed = '关闭浏览器后也将维持登录状态。\n\n使用自动登录功能,可解决每次访问都要输入用户名及密码的麻烦。\n\n为防止个人信息泄露,在网吧,学校等公共场所请务必要确认解除登录状态。';
|
||||
$lang->about_webmaster_name = '请输入认证所需的电子邮件地址或管理其他网站时要使用的网站管理员名称。(默认 : webmaster)';
|
||||
$lang->about_webmaster_name = '请输入认证所需的电子邮件地址或管理其他网站时要使用的网站管理员名称。(默认 : webmaster)';
|
||||
$lang->about_webmaster_email = '请输入网站管理员的电子邮件地址。';
|
||||
|
||||
$lang->search_target_list = array(
|
||||
|
|
|
|||
|
|
@ -95,7 +95,7 @@
|
|||
$option->allow_fileupload = false;
|
||||
$option->enable_autosave = false;
|
||||
$option->enable_default_component = true;
|
||||
$option->enable_component = false;
|
||||
$option->enable_component = true;
|
||||
$option->resizable = true;
|
||||
$option->height = 300;
|
||||
$editor = $oEditorModel->getEditor(0, $option);
|
||||
|
|
|
|||
|
|
@ -1184,10 +1184,12 @@
|
|||
**/
|
||||
function putSignature($member_srl, $signature) {
|
||||
$signature = trim(removeHackTag($signature));
|
||||
|
||||
$check_signature = trim(str_replace(array(' ',"\n","\r"),'',strip_tags($signature)));
|
||||
$path = sprintf('files/member_extra_info/signature/%s/', getNumberingPath($member_srl));
|
||||
$filename = sprintf('%s%d.signature.php', $path, $member_srl);
|
||||
|
||||
if(!$signature || !strip_tags($signature)) return @unlink($filename);
|
||||
if(!$check_signature) return @unlink($filename);
|
||||
|
||||
$buff = sprintf('<?php if(!defined("__ZBXE__")) exit();?>%s', $signature);
|
||||
FileHandler::makeDir($path);
|
||||
|
|
@ -1251,6 +1253,8 @@
|
|||
* @brief 로그인 시킴
|
||||
**/
|
||||
function doLogin($user_id, $password = '', $keep_signed = false) {
|
||||
$user_id = strtolower($user_id);
|
||||
|
||||
// 로그인 이전에 trigger 호출 (before)
|
||||
$trigger_obj->user_id = $user_id;
|
||||
$trigger_obj->password = $password;
|
||||
|
|
|
|||
|
|
@ -141,6 +141,7 @@
|
|||
$info->profile_image = $this->getProfileImage($info->member_srl);
|
||||
$info->image_name = $this->getImageName($info->member_srl);
|
||||
$info->image_mark = $this->getImageMark($info->member_srl);
|
||||
$info->signature = $this->getSignature($info->member_srl);
|
||||
|
||||
$extra_vars = unserialize($info->extra_vars);
|
||||
unset($info->extra_vars);
|
||||
|
|
|
|||
|
|
@ -108,7 +108,7 @@
|
|||
.memberInfoTable td checkbox { border:0; }
|
||||
.memberInfoTable td .fl { margin-right:.5em;}
|
||||
.memberInfoTable td br { clear:both;}
|
||||
.memberInfoTable td p { margin:0; padding:0; font-size:.9em; color:#999999; padding-top:.5em; margin-right:.5em;}
|
||||
.memberInfoTable td p { clear:both; margin:0; padding:0; font-size:.9em; color:#999999; padding-top:.5em; margin-right:.5em;}
|
||||
.memberInfoTable td label { color:#3f4040; padding-top:.3em; margin-right:.5em;}
|
||||
.memberInfoTable td ul { list-style:none; }
|
||||
.memberInfoTable td .checkbox { border:none; }
|
||||
|
|
@ -125,7 +125,8 @@
|
|||
.checkbox li { float:left; margin-right:2em; }
|
||||
.checkbox li input { border:none; }
|
||||
|
||||
.str_birthday { cursor:pointer; float:left; width:80px; border:1px solid; border-color:#a6a6a6 #d8d8d8 #d8d8d8 #a6a6a6; height:1em; padding:3px 3px 3px 18px; margin-right:.3em;}
|
||||
.display_date { cursor:pointer; width:80px; float:left; border:1px solid; border-color:#a6a6a6 #d8d8d8 #d8d8d8 #a6a6a6; height:1em; padding:3px; }
|
||||
|
||||
.krZip .address2 { clear:both; margin-top:10px;}
|
||||
|
||||
.extendDesc { clear:both; margin-top:0; font-size:.9em; color:#999999; }
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
{@ $member_title = $lang->msg_update_member}
|
||||
<!--#include("./common_header.html")-->
|
||||
<!--%import("../../tpl/js/signup_check.js")-->
|
||||
<!--%import("../../tpl/js/krzip_search.js")-->
|
||||
|
||||
<!--%import("filter/modify_info.xml")-->
|
||||
|
||||
<!--@if($member_config->profile_image == 'Y')-->
|
||||
<!--%import("filter/delete_profile_image.xml")-->
|
||||
<!--@end-->
|
||||
|
|
@ -16,7 +16,15 @@
|
|||
<!--%import("filter/delete_image_mark.xml")-->
|
||||
<!--@end-->
|
||||
|
||||
<!--%import("../../tpl/js/krzip_search.js")-->
|
||||
<!-- calendar -->
|
||||
<!--%import("../../../../common/js/calendar.js",optimized=false)-->
|
||||
<!--@if($lang_type == 'ko')-->
|
||||
<!--%import("../../../../common/js/calendar-ko.js",optimized=false)-->
|
||||
<!--@else-->
|
||||
<!--%import("../../../../common/js/calendar-en.js",optimized=false)-->
|
||||
<!--@end-->
|
||||
<!--%import("../../../../common/js/calendar-setup.js",optimized=false)-->
|
||||
<!--%import("../../../../common/css/calendar-system.css",optimized=false)-->
|
||||
|
||||
<form id="fo_insert_member" action="./" method="post" onsubmit="return procFilter(this, modify_info)" <!--@if($member_config->profile_image == 'Y' || $member_config->image_name=='Y' || $member_config->image_mark=='Y')-->enctype="multipart/form-data"<!--@end-->>
|
||||
<input type="hidden" name="mid" value="{$mid}" />
|
||||
|
|
@ -112,9 +120,12 @@
|
|||
<th scope="row">{$lang->birthday}</th>
|
||||
<td>
|
||||
<input type="hidden" name="birthday" id="date_birthday" value="{$member_info->birthday}" />
|
||||
<div class="str_birthday" id="str_birthday" onclick="open_calendar('birthday','');return false;">{zdate($member_info->birthday,"Y-m-d")}</div>
|
||||
<a href="#" onclick="open_calendar('birthday','{$member_info->birthday}');return false;" class="button"><span>{$lang->cmd_open_calendar}</span></a>
|
||||
<div class="display_date" id="str_birthday">{zdate($member_info->birthday,"Y-m-d")}</div>
|
||||
<p>{$lang->about_birthday}</p>
|
||||
|
||||
<script type="text/javascript">
|
||||
Calendar.setup( { firstDay : 0, inputField : "date_birthday", ifFormat : "%Y%m%d", displayArea : "str_birthday", daFormat : "%Y-%m-%d" } );
|
||||
</script>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
|
@ -226,8 +237,11 @@
|
|||
<!-- 날짜 입력 -->
|
||||
<!--@elseif($val->column_type == 'date')-->
|
||||
<input type="hidden" name="{$val->column_name}" id="date_{$val->column_name}" value="{$val->value}" />
|
||||
<div class="str_birthday" id="str_{$val->column_name}">{zdate($val->value,"Y-m-d")}</div>
|
||||
<a href="#" onclick="open_calendar('{$val->column_name}','{$val->value}');return false;" class="button"><span>{$lang->cmd_open_calendar}</span></a>
|
||||
<div class="display_date" id="str_{$val->column_name}">{zdate($val->value,"Y-m-d")}</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
Calendar.setup( { firstDay : 0, inputField : "date_{$val->column_name}", ifFormat : "%Y%m%d", displayArea : "str_{$val->column_name}", daFormat : "%Y-%m-%d"});
|
||||
</script>
|
||||
|
||||
<!--@end-->
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,18 @@
|
|||
<!--#include("./common_header.html")-->
|
||||
<!--%import("../../tpl/js/signup_check.js")-->
|
||||
<!--%import("../../tpl/js/krzip_search.js")-->
|
||||
<!--%import("filter/signup.xml")-->
|
||||
|
||||
<!--%import("../../tpl/js/krzip_search.js")-->
|
||||
<!-- calendar -->
|
||||
<!--%import("../../../../common/js/calendar.js",optimized=false)-->
|
||||
<!--@if($lang_type == 'ko')-->
|
||||
<!--%import("../../../../common/js/calendar-ko.js",optimized=false)-->
|
||||
<!--@else-->
|
||||
<!--%import("../../../../common/js/calendar-en.js",optimized=false)-->
|
||||
<!--@end-->
|
||||
<!--%import("../../../../common/js/calendar-setup.js",optimized=false)-->
|
||||
<!--%import("../../../../common/css/calendar-system.css",optimized=false)-->
|
||||
|
||||
<!--#include("./common_header.html")-->
|
||||
|
||||
<div class="boardHeader">
|
||||
<h3>{$lang->msg_new_member}</h3>
|
||||
|
|
@ -78,8 +88,7 @@
|
|||
<th scope="row">{$lang->birthday}</th>
|
||||
<td>
|
||||
<input type="hidden" name="birthday" id="date_birthday" value="" />
|
||||
<div class="str_birthday" id="str_birthday" onclick="open_calendar('birthday','');return false;"> </div>
|
||||
<a href="#" onclick="open_calendar('birthday','');return false;" class="button"><span>{$lang->cmd_open_calendar}</span></a>
|
||||
<div class="display_date" id="str_birthday"></div>
|
||||
<p>{$lang->about_birthday}</p>
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -89,6 +98,9 @@
|
|||
</tr>
|
||||
</table>
|
||||
|
||||
<script type="text/javascript">
|
||||
Calendar.setup( { firstDay : 0, inputField : "date_birthday", ifFormat : "%Y%m%d", displayArea : "str_birthday", daFormat : "%Y-%m-%d"});
|
||||
</script>
|
||||
|
||||
<!--@if($extend_form_list)-->
|
||||
<table cellspacing="0" class="memberInfoTable">
|
||||
|
|
@ -178,9 +190,11 @@
|
|||
<!-- 날짜 입력 -->
|
||||
<!--@elseif($val->column_type == 'date')-->
|
||||
<input type="hidden" name="{$val->column_name}" id="date_{$val->column_name}" value="{$val->value}" />
|
||||
<div class="str_birthday" id="str_{$val->column_name}">{zdate($val->value,"Y-m-d")}</div>
|
||||
<a href="#" onclick="open_calendar('{$val->column_name}','{$val->value}');return false;" class="button"><span>{$lang->cmd_open_calendar}</span></a>
|
||||
<div class="display_date" id="str_{$val->column_name}">{zdate($val->value,"Y-m-d")}</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
Calendar.setup( { firstDay : 0, inputField : "date_{$val->column_name}", ifFormat : "%Y%m%d", displayArea : "str_{$val->column_name}", daFormat : "%Y-%m-%d"});
|
||||
</script>
|
||||
<!--@end-->
|
||||
|
||||
<div class="extendDesc">{$val->description}</div>
|
||||
|
|
|
|||
|
|
@ -5,3 +5,4 @@
|
|||
.publicItem label { font-weight:normal; margin:0; padding:0; color:#666666;}
|
||||
span.publicItem { display:inline; margin:0; font-weight:normal; color:#666666; }
|
||||
|
||||
.display_date { cursor:pointer; width:80px; float:left; border:1px solid; border-color:#a6a6a6 #d8d8d8 #d8d8d8 #a6a6a6; height:1em; padding:3px; }
|
||||
|
|
|
|||
|
|
@ -2,6 +2,16 @@
|
|||
<!--%import("filter/insert.xml")-->
|
||||
<!--%import("css/member_admin.css")-->
|
||||
|
||||
<!-- calendar -->
|
||||
<!--%import("../../common/js/calendar.js",optimized=false)-->
|
||||
<!--@if($lang_type == 'ko')-->
|
||||
<!--%import("../../common/js/calendar-ko.js",optimized=false)-->
|
||||
<!--@else-->
|
||||
<!--%import("../../common/js/calendar-en.js",optimized=false)-->
|
||||
<!--@end-->
|
||||
<!--%import("../../common/js/calendar-setup.js",optimized=false)-->
|
||||
<!--%import("../../common/css/calendar-system.css",optimized=false)-->
|
||||
|
||||
<form id="fo_insert_member" action="./" method="get" onsubmit="return procFilter(this, insert)">
|
||||
<input type="hidden" name="page" value="{$page}" />
|
||||
<input type="hidden" name="member_srl" value="{$member_info->member_srl}" />
|
||||
|
|
@ -69,10 +79,12 @@
|
|||
<th scope="row">{$lang->birthday}</th>
|
||||
<td>
|
||||
<input type="hidden" name="birthday" id="date_birthday" value="{$member_info->birthday}" />
|
||||
<div class="display_date" id="str_birthday">{zdate($member_info->birthday,"Y-m-d")}</div>
|
||||
<p>{$lang->about_birthday}</p>
|
||||
|
||||
<div id="str_birthday" class="inputTypeDate fl" >{zdate($member_info->birthday,"Y-m-d")}</div>
|
||||
<a href="#" onclick="open_calendar('birthday','{$member_info->birthday}');return false;" class="button"><span>{$lang->cmd_open_calendar}</span></a>
|
||||
<p class="clear">{$lang->about_birthday}</p>
|
||||
<script type="text/javascript">
|
||||
Calendar.setup( { firstDay : 0, inputField : "date_birthday", ifFormat : "%Y%m%d", displayArea : "str_birthday", daFormat : "%Y-%m-%d" } );
|
||||
</script>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
|
@ -110,8 +122,10 @@
|
|||
<th scope="row">{$lang->limit_date}</th>
|
||||
<td>
|
||||
<input type="hidden" name="limit_date" id="date_limit_date" value="{$member_info->limit_date}" />
|
||||
<div id="str_limit_date" class="inputTypeDate fl" >{zdate($member_info->limit_date,"Y-m-d")}</div>
|
||||
<a href="#" onclick="open_calendar('limit_date','{$member_info->limit_date}');return false;" class="button"><span>{$lang->cmd_open_calendar}<img src="../../admin/tpl/images/blank.gif" alt="" class="rightCap" /></span></a>
|
||||
<div id="str_limit_date" class="display_date" >{zdate($member_info->limit_date,"Y-m-d")}</div>
|
||||
<script type="text/javascript">
|
||||
Calendar.setup( { firstDay : 0, inputField : "date_limit_date", ifFormat : "%Y%m%d", displayArea : "str_limit_date", daFormat : "%Y-%m-%d" } );
|
||||
</script>
|
||||
<p class="clear">{$lang->about_limit_date}</p>
|
||||
</td>
|
||||
</tr>
|
||||
|
|
@ -225,9 +239,13 @@
|
|||
|
||||
<!-- 날짜 입력 -->
|
||||
<!--@elseif($val->column_type == 'date')-->
|
||||
<input type="hidden" name="{$val->column_name}" id="date_{$val->column_name}" value="{htmlspecialchars($val->value)}" />
|
||||
<div id="str_{$val->column_name}" class="inputTypeDate fl" >{zdate($val->value,"Y-m-d")}</div>
|
||||
<a href="#" onclick="open_calendar('{$val->column_name}','{$val->value}');return false;" class="button"><span>{$lang->cmd_open_calendar}</span></a>
|
||||
<input type="hidden" name="{$val->column_name}" id="date_{$val->column_name}" value="{$val->value}" />
|
||||
<div class="display_date" id="str_{$val->column_name}">{zdate($val->value,"Y-m-d")}</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
Calendar.setup( { firstDay : 0, inputField : "date_{$val->column_name}", ifFormat : "%Y%m%d", displayArea : "str_{$val->column_name}", daFormat : "%Y-%m-%d"});
|
||||
</script>
|
||||
|
||||
|
||||
<!--@end-->
|
||||
<!--@if($val->description)--><p class="clear">{htmlspecialchars($val->description)}</p><!--@end-->
|
||||
|
|
|
|||
|
|
@ -88,8 +88,8 @@
|
|||
<th scope="row">{$lang->editor_skin}</th>
|
||||
<td>
|
||||
<select name="editor_skin">
|
||||
<!--@foreach($editor_skin_list as $editor)-->
|
||||
<option value="{$editor}" <!--@if($editor==$config->editor_skin)-->selected="selected"<!--@end-->>{$editor}</option>
|
||||
<!--@foreach($editor_skin_list as $editor_skin)-->
|
||||
<option value="{$editor_skin}" <!--@if($editor_skin==$config->editor_skin)-->selected="selected"<!--@end-->>{$editor_skin}</option>
|
||||
<!--@end-->
|
||||
</select>
|
||||
</td>
|
||||
|
|
|
|||
|
|
@ -80,7 +80,7 @@
|
|||
</td>
|
||||
<td>{htmlspecialchars($val->user_name)}</td>
|
||||
<td><div class="member_{$val->member_srl}">{htmlspecialchars($val->nick_name)}</div></td>
|
||||
<td class="tahoma">{zdate($val->regdate,"Y-m-d")}</td>
|
||||
<td class="tahoma">{zdate($val->regdate,"Y-m-d H:i:s")}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="red"><!--@if($val->is_admin != 'Y')--><a href="{getUrl('act','dispMemberAdminDeleteForm','member_srl', $val->member_srl)}">{$lang->cmd_delete}</a><!--@else--><img src="./images/icon_management.gif" title="{$lang->is_admin}" alt="{$lang->is_admin}" /><!--@end--></td>
|
||||
|
|
|
|||
|
|
@ -27,13 +27,13 @@
|
|||
$lang->layout_maker = "Layout Maker";
|
||||
$lang->layout_history = "Update History ";
|
||||
$lang->layout_info = "Layout Info";
|
||||
$lang->layout_list = 'Layout List';
|
||||
$lang->downloaded_list = 'Download List';
|
||||
$lang->layout_list = 'Layouts List';
|
||||
$lang->downloaded_list = 'Downloads List';
|
||||
$lang->limit_menu_depth = 'Display Enabled';
|
||||
|
||||
$lang->cmd_make_child = 'Add a child menu';
|
||||
$lang->cmd_move_to_installed_list = "View created lists";
|
||||
$lang->cmd_enable_move_menu = "Move menu (Drag the top menu after selecting)";
|
||||
$lang->cmd_make_child = 'Add a Child Menu';
|
||||
$lang->cmd_move_to_installed_list = "View Created List";
|
||||
$lang->cmd_enable_move_menu = "Move Menu (Drag the top menu after selecting)";
|
||||
$lang->cmd_search_mid = "Search mid";
|
||||
|
||||
$lang->msg_cannot_delete_for_child = 'A menu with child menus cannot be deleted.';
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
<?php
|
||||
/**
|
||||
* @file ko.lang.php
|
||||
* @file en.lang.php
|
||||
* @author zero (zero@nzeo.com)
|
||||
* @brief basic language pack of external page module
|
||||
**/
|
||||
|
|
|
|||
|
|
@ -1,13 +1,13 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<module version="0.1" category="accessory">
|
||||
<module version="0.15" category="accessory">
|
||||
<title xml:lang="ko">리퍼러 통계</title>
|
||||
<title xml:lang="jp">リファラー統計</title>
|
||||
<title xml:lang="zh-CN">反向链接统计</title>
|
||||
<title xml:lang="en">Referer Statistics</title>
|
||||
<title xml:lang="ru">Статистика рефералов</title>
|
||||
<author email_address="haneul0318@gmail.com" link="http://haneul.zetyx.net" date="2007. 11. 29">
|
||||
<author email_address="haneul0318@gmail.com" link="http://seungyeop.kr" date="2007. 11. 29">
|
||||
<name xml:lang="ko">haneul</name>
|
||||
<name xml:lang="jp">Haneul</name>
|
||||
<name xml:lang="jp">haneul</name>
|
||||
<name xml:lang="zh-CN">haneul</name>
|
||||
<name xml:lang="en">haneul</name>
|
||||
<name xml:lang="ru">haneul</name>
|
||||
|
|
|
|||
|
|
@ -4,5 +4,7 @@
|
|||
<actions>
|
||||
<action name="procRefererExecute" type="controller" standalone="true" />
|
||||
<action name="dispRefererAdminIndex" type="view" standalone="true" admin_index="true" />
|
||||
<action name="dispRefererAdminDeleteStat" type="view" standalone="true" />
|
||||
<action name="procRefererAdminDeleteStat" type="controller" standalone="true" />
|
||||
</actions>
|
||||
</module>
|
||||
|
|
|
|||
8
modules/referer/queries/deleteRefererStat.xml
Normal file
8
modules/referer/queries/deleteRefererStat.xml
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
<query id="deleteRefererStat" action="delete">
|
||||
<tables>
|
||||
<table name="referer_statistics" />
|
||||
</tables>
|
||||
<conditions>
|
||||
<condition operation="equal" column="host" var="host" notnull="notnull" />
|
||||
</conditions>
|
||||
</query>
|
||||
25
modules/referer/referer.admin.controller.php
Normal file
25
modules/referer/referer.admin.controller.php
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* @class refererAdminController
|
||||
* @author haneul (haneul0318@gmail.com)
|
||||
* @brief referer 모듈의 admin controller class
|
||||
**/
|
||||
|
||||
class refererAdminController extends referer {
|
||||
|
||||
/**
|
||||
* @brief 초기화
|
||||
**/
|
||||
function init() {
|
||||
}
|
||||
|
||||
function procRefererAdminDeleteStat() {
|
||||
$args->host = Context::get('host');
|
||||
$output = executeQuery('referer.deleteRefererStat', $args);
|
||||
if(!$output->toBool()) return $output;
|
||||
|
||||
$this->setMessage('success_deleted');
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
@ -22,6 +22,11 @@
|
|||
$this->dispRefererAdminList();
|
||||
}
|
||||
|
||||
function dispRefererAdminDeleteStat () {
|
||||
if(!Context::get('host')) return $this->dispRefererAdminIndex();
|
||||
$this->setTemplateFile('delete_stat');
|
||||
}
|
||||
|
||||
function dispRefererAdminList() {
|
||||
|
||||
// 목록을 구하기 위한 옵션
|
||||
|
|
|
|||
|
|
@ -14,6 +14,9 @@
|
|||
// action forward에 등록 (관리자 모드에서 사용하기 위함)
|
||||
$oModuleController = &getController('module');
|
||||
$oModuleController->insertActionForward('referer', 'view', 'dispRefererAdminIndex');
|
||||
|
||||
// 2008. 04. 06 To remove referer spams
|
||||
$oModuleController->insertActionForward('referer', 'view', 'dispRefererAdminDeleteStat');
|
||||
|
||||
return new Object();
|
||||
}
|
||||
|
|
@ -22,6 +25,9 @@
|
|||
* @brief 설치가 이상이 없는지 체크하는 method
|
||||
**/
|
||||
function checkUpdate() {
|
||||
$oModuleModel = &getModel('module');
|
||||
|
||||
if(!$oModuleModel->getActionForward('dispRefererAdminDeleteStat')) return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
@ -29,7 +35,13 @@
|
|||
* @brief 업데이트 실행
|
||||
**/
|
||||
function moduleUpdate() {
|
||||
return new Object();
|
||||
$oModuleModel = &getModel('module');
|
||||
$oModuleController = &getController('module');
|
||||
|
||||
if(!$oModuleModel->getActionForward('dispRefererAdminDeleteStat'))
|
||||
$oModuleController->insertActionForward('referer', 'view', 'dispRefererAdminDeleteStat');
|
||||
|
||||
return new Object(0, 'success_updated');
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
.refererLeft { width:230px; float:left; margin-top:10px;}
|
||||
.refererLeft { width:260px; float:left; margin-top:10px;}
|
||||
|
||||
.refererRight { width:530px; float:left; margin-left:20px;margin-top:10px; }
|
||||
.refererRight { width:500px; float:left; margin-left:20px;margin-top:10px; }
|
||||
.refererRight .refererList { table-layout:fixed; }
|
||||
.refererRight .refererList .refererUrl { white-space:nowrap; overflow:hidden; }
|
||||
|
|
|
|||
24
modules/referer/tpl/delete_stat.html
Normal file
24
modules/referer/tpl/delete_stat.html
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
<!--%import("filter/delete_stat.xml")-->
|
||||
<!--%import("js/referer_admin.js")-->
|
||||
<!--%import("css/referer.css")-->
|
||||
|
||||
<h3>{$lang->referer} <span class="gray">{$lang->cmd_management}</span></h3>
|
||||
<form action="./" method="get" onsubmit="return procFilter(this, delete_stat)">
|
||||
<input type="hidden" name="host" value="{$host}" />
|
||||
|
||||
<table cellspacing="0" class="adminTable">
|
||||
<col width="150" />
|
||||
<col />
|
||||
<caption>{$lang->confirm_delete}</caption>
|
||||
<tr>
|
||||
<th scope="row">Host Name</th>
|
||||
<td>{$host}</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div class="tRight gap1">
|
||||
<a href="{getUrl('act','dispRefererAdminIndex')}" class="button"><span>{$lang->cmd_back}</span></a>
|
||||
<span class="button"><input type="submit" value="{$lang->cmd_delete}" /></span>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
10
modules/referer/tpl/filter/delete_stat.xml
Normal file
10
modules/referer/tpl/filter/delete_stat.xml
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
<filter name="delete_stat" module="referer" act="procRefererAdminDeleteStat">
|
||||
<form>
|
||||
<node target="host" required="true" />
|
||||
</form>
|
||||
<response callback_func="completeDeleteStat">
|
||||
<tag name="error" />
|
||||
<tag name="message" />
|
||||
<tag name="page" />
|
||||
</response>
|
||||
</filter>
|
||||
16
modules/referer/tpl/js/referer_admin.js
Normal file
16
modules/referer/tpl/js/referer_admin.js
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
/**
|
||||
* @file modules/referer/js/referer_admin.js
|
||||
* @author haneul
|
||||
* @brief referer 모듈의 관리자용 javascript
|
||||
**/
|
||||
|
||||
/* stat 삭제 후 */
|
||||
function completeDeleteStat(ret_obj) {
|
||||
var error = ret_obj['error'];
|
||||
var message = ret_obj['message'];
|
||||
var page = ret_obj['page'];
|
||||
alert(message);
|
||||
|
||||
var url = current_url.setQuery('act','dispRefererAdminIndex').setQuery('host','');
|
||||
location.href = url;
|
||||
}
|
||||
|
|
@ -7,9 +7,10 @@
|
|||
|
||||
<div class="tableSummaryType1">
|
||||
<table cellspacing="0" class="adminTable">
|
||||
<col width="50" />
|
||||
<col width="30" />
|
||||
<col />
|
||||
<col width="50" />
|
||||
<col width="50" />
|
||||
<tbody>
|
||||
<!--{$rank = 1}-->
|
||||
<!--@foreach($referer_status as $no => $val)-->
|
||||
|
|
@ -17,6 +18,7 @@
|
|||
<td class="tahoma">{$rank} </td>
|
||||
<td class="tahoma">{$val->host}</td>
|
||||
<td class="tahoma">{$val->count}</td>
|
||||
<td class="tahoma red"><a href="{getUrl('act','dispRefererAdminDeleteStat','host',$val->host)}">{$lang->cmd_delete}</a></td>
|
||||
</td>
|
||||
<!--{$rank += 1} -->
|
||||
<!--@end-->
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue