mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-23 21:29:58 +09:00
merge brache 1.5.0 to trunk (8252-9866)
git-svn-id: http://xe-core.googlecode.com/svn/trunk@9867 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
commit
2f4b847ae2
2419 changed files with 179593 additions and 181010 deletions
|
|
@ -1,107 +1,104 @@
|
|||
<?php
|
||||
/**
|
||||
* @class emoticon
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief 이모티콘 이미지 연결 컴포넌트
|
||||
**/
|
||||
|
||||
class emoticon extends EditorHandler {
|
||||
|
||||
// editor_sequence 는 에디터에서 필수로 달고 다녀야 함....
|
||||
var $editor_sequence = 0;
|
||||
var $component_path = '';
|
||||
var $emoticon_path = '';
|
||||
|
||||
/**
|
||||
* @brief editor_sequence과 컴포넌트의 경로를 받음
|
||||
**/
|
||||
function emoticon($editor_sequence, $component_path) {
|
||||
$this->editor_sequence = $editor_sequence;
|
||||
$this->component_path = $component_path;
|
||||
$this->emoticon_path = sprintf('%s%s/images',preg_replace('/^\.\//i','',$this->component_path),'tpl','images');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 이모티콘 파일 목록을 리턴
|
||||
**/
|
||||
function getEmoticonList() {
|
||||
$emoticon = Context::get('emoticon');
|
||||
if(!$emoticon || !preg_match("/^([a-z0-9\_]+)$/i",$emoticon)) return new Object(-1,'msg_invalid_request');
|
||||
|
||||
$list = $this->getEmoticons($emoticon);
|
||||
|
||||
$this->add('emoticons', implode("\n",$list));
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 재귀적으로 이모티콘이 될 법한 파일들을 하위 디렉토리까지 전부 검색한다. 8,000개까지는 테스트 해봤는데 스택오버프로우를 일으킬지 어떨지는 잘 모르겠음.(2007.9.6, 베니)
|
||||
**/
|
||||
function getEmoticons($path) {
|
||||
$emoticon_path = sprintf("%s/%s", $this->emoticon_path, $path);
|
||||
$output = array();
|
||||
|
||||
$oDir = dir($emoticon_path);
|
||||
while($file = $oDir->read()) {
|
||||
if(substr($file,0,1)=='.') continue;
|
||||
if(preg_match('/\.(jpg|jpeg|gif|png)$/i',$file)) $output[] = sprintf("%s/%s", $path, str_replace($this->emoticon_path,'',$file));
|
||||
}
|
||||
$oDir->close();
|
||||
if(count($output)) asort($output);
|
||||
return $output;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief popup window요청시 popup window에 출력할 내용을 추가하면 된다
|
||||
**/
|
||||
function getPopupContent() {
|
||||
// 이모티콘 디렉토리 목록을 가져옴
|
||||
$emoticon_dirs = FileHandler::readDir($this->emoticon_path);
|
||||
$emoticon_list = array();
|
||||
if($emoticon_dirs) {
|
||||
foreach($emoticon_dirs as $emoticon) {
|
||||
if(preg_match("/^([a-z0-9\_]+)$/i", $emoticon)) $emoticon_list[] = $emoticon;
|
||||
}
|
||||
}
|
||||
Context::set('emoticon_list', $emoticon_list);
|
||||
|
||||
// 첫번째 이모티콘 디렉토리의 이미지 파일을 구함
|
||||
$emoticons = $this->getEmoticons($emoticon_list[0]);
|
||||
Context::set('emoticons', $emoticons);
|
||||
|
||||
// 템플릿을 미리 컴파일해서 컴파일된 소스를 return
|
||||
$tpl_path = $this->component_path.'tpl';
|
||||
$tpl_file = 'popup.html';
|
||||
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
return $oTemplate->compile($tpl_path, $tpl_file);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 이모티콘의 경로 문제 해결을 하기 위해 추가하였다. (2007.9.6 베니)
|
||||
**/
|
||||
function transHTML($xml_obj) {
|
||||
$src = $xml_obj->attrs->src;
|
||||
$alt = $xml_obj->attrs->alt;
|
||||
|
||||
if(!$alt) {
|
||||
$tmp_arr = explode('/',$src);
|
||||
$alt = array_pop($tmp_arr);
|
||||
}
|
||||
|
||||
$src = str_replace(array('&','"'), array('&','&qout;'), $src);
|
||||
if(!$alt) $alt = $src;
|
||||
|
||||
$attr_output = array();
|
||||
$attr_output = array("src=\"".$src."\"");
|
||||
|
||||
if($alt) {
|
||||
$attr_output[] = "alt=\"".$alt."\"";
|
||||
}
|
||||
if(preg_match("/\.png$/i",$src)) $attr_output[] = "class=\"iePngFix\"";
|
||||
|
||||
$code = sprintf("<img %s style=\"border:0px\" />", implode(" ",$attr_output));
|
||||
|
||||
return $code;
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
/**
|
||||
* @class emoticon
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief Emoticons image connected components
|
||||
**/
|
||||
|
||||
class emoticon extends EditorHandler {
|
||||
// editor_sequence from the editor must attend mandatory wearing ....
|
||||
var $editor_sequence = 0;
|
||||
var $component_path = '';
|
||||
var $emoticon_path = '';
|
||||
|
||||
/**
|
||||
* @brief editor_sequence and components out of the path
|
||||
**/
|
||||
function emoticon($editor_sequence, $component_path) {
|
||||
$this->editor_sequence = $editor_sequence;
|
||||
$this->component_path = $component_path;
|
||||
$this->emoticon_path = sprintf('%s%s/images',preg_replace('/^\.\//i','',$this->component_path),'tpl','images');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Returns a list of emoticons file
|
||||
**/
|
||||
function getEmoticonList() {
|
||||
$emoticon = Context::get('emoticon');
|
||||
if(!$emoticon || !preg_match("/^([a-z0-9\_]+)$/i",$emoticon)) return new Object(-1,'msg_invalid_request');
|
||||
|
||||
$list = $this->getEmoticons($emoticon);
|
||||
|
||||
$this->add('emoticons', implode("\n",$list));
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Likely to be recursively emoticons will search all the files to a subdirectory. 8000 gaekkajineun ran tests whether the stack and raise beef pro-overs and Unsure. (06/09/2007, Benny)
|
||||
**/
|
||||
function getEmoticons($path) {
|
||||
$emoticon_path = sprintf("%s/%s", $this->emoticon_path, $path);
|
||||
$output = array();
|
||||
|
||||
$oDir = dir($emoticon_path);
|
||||
while($file = $oDir->read()) {
|
||||
if(substr($file,0,1)=='.') continue;
|
||||
if(preg_match('/\.(jpg|jpeg|gif|png)$/i',$file)) $output[] = sprintf("%s/%s", $path, str_replace($this->emoticon_path,'',$file));
|
||||
}
|
||||
$oDir->close();
|
||||
if(count($output)) asort($output);
|
||||
return $output;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief popup window to display in popup window request is to add content
|
||||
**/
|
||||
function getPopupContent() {
|
||||
// Bringing a list of emoticons directory
|
||||
$emoticon_dirs = FileHandler::readDir($this->emoticon_path);
|
||||
$emoticon_list = array();
|
||||
if($emoticon_dirs) {
|
||||
foreach($emoticon_dirs as $emoticon) {
|
||||
if(preg_match("/^([a-z0-9\_]+)$/i", $emoticon)) $emoticon_list[] = $emoticon;
|
||||
}
|
||||
}
|
||||
Context::set('emoticon_list', $emoticon_list);
|
||||
// The first emoticon image files in the directory Wanted
|
||||
$emoticons = $this->getEmoticons($emoticon_list[0]);
|
||||
Context::set('emoticons', $emoticons);
|
||||
// Pre-compiled source code to compile template return to
|
||||
$tpl_path = $this->component_path.'tpl';
|
||||
$tpl_file = 'popup.html';
|
||||
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
return $oTemplate->compile($tpl_path, $tpl_file);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Emoticon of the path were added to solve the problem. (06/09/2007 Benny)
|
||||
**/
|
||||
function transHTML($xml_obj) {
|
||||
$src = $xml_obj->attrs->src;
|
||||
$alt = $xml_obj->attrs->alt;
|
||||
|
||||
if(!$alt) {
|
||||
$tmp_arr = explode('/',$src);
|
||||
$alt = array_pop($tmp_arr);
|
||||
}
|
||||
|
||||
$src = str_replace(array('&','"'), array('&','&qout;'), $src);
|
||||
if(!$alt) $alt = $src;
|
||||
|
||||
$attr_output = array();
|
||||
$attr_output = array("src=\"".$src."\"");
|
||||
|
||||
if($alt) {
|
||||
$attr_output[] = "alt=\"".$alt."\"";
|
||||
}
|
||||
if(preg_match("/\.png$/i",$src)) $attr_output[] = "class=\"iePngFix\"";
|
||||
|
||||
$code = sprintf("<img %s style=\"border:0px\" />", implode(" ",$attr_output));
|
||||
|
||||
return $code;
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -1,35 +1,35 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<component version="0.2">
|
||||
<title xml:lang="ko">이모티콘 출력</title>
|
||||
<title xml:lang="jp">顔文字(イモティコン)</title>
|
||||
<title xml:lang="zh-CN">表情图标</title>
|
||||
<title xml:lang="en">Display Emoticons</title>
|
||||
<title xml:lang="vi">Diễn tả cảm xúc</title>
|
||||
<title xml:lang="es">Mostrar iconos gestuales</title>
|
||||
<title xml:lang="ru">Отображение смайлов</title>
|
||||
<title xml:lang="zh-TW">表情符號</title>
|
||||
<title xml:lang="tr">His Simgeleri Gösterimi</title>
|
||||
<description xml:lang="ko">이모티콘을 에디터에 삽입할 수 있습니다.</description>
|
||||
<description xml:lang="jp">顔文字(イモティコン)をエディターに追加することが出来ます。</description>
|
||||
<description xml:lang="zh-CN">可以插入表情图标到编辑器。</description>
|
||||
<description xml:lang="en">You may insert emoticons to editor.</description>
|
||||
<description xml:lang="vi">Bạn có thể chèn biểu tượng cảm xúc vào bài viết.</description>
|
||||
<description xml:lang="es">Usted puede insertar emoticonos para el editor.</description>
|
||||
<description xml:lang="ru">Вы можете вставить смыйлы в редактор.</description>
|
||||
<description xml:lang="zh-TW">可插入表情符號到編輯器。</description>
|
||||
<description xml:lang="tr">Editöre his simgeleri ekleyebilirsiniz.</description>
|
||||
<version>0.1</version>
|
||||
<date>2007-02-28</date>
|
||||
|
||||
<author email_address="developers@xpressengine.com" link="http://xpressengine.com/">
|
||||
<name xml:lang="ko">NHN</name>
|
||||
<name xml:lang="vi">NHN</name>
|
||||
<name xml:lang="jp">NHN</name>
|
||||
<name xml:lang="zh-CN">NHN</name>
|
||||
<name xml:lang="en">NHN</name>
|
||||
<name xml:lang="es">NHN</name>
|
||||
<name xml:lang="ru">NHN</name>
|
||||
<name xml:lang="zh-TW">NHN</name>
|
||||
<name xml:lang="tr">NHN</name>
|
||||
</author>
|
||||
</component>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<component version="0.2">
|
||||
<title xml:lang="ko">이모티콘 출력</title>
|
||||
<title xml:lang="jp">顔文字(イモティコン)</title>
|
||||
<title xml:lang="zh-CN">表情图标</title>
|
||||
<title xml:lang="en">Display Emoticons</title>
|
||||
<title xml:lang="vi">Diễn tả cảm xúc</title>
|
||||
<title xml:lang="es">Mostrar iconos gestuales</title>
|
||||
<title xml:lang="ru">Отображение смайлов</title>
|
||||
<title xml:lang="zh-TW">表情符號</title>
|
||||
<title xml:lang="tr">His Simgeleri Gösterimi</title>
|
||||
<description xml:lang="ko">이모티콘을 에디터에 삽입할 수 있습니다.</description>
|
||||
<description xml:lang="jp">顔文字(イモティコン)をエディターに追加することが出来ます。</description>
|
||||
<description xml:lang="zh-CN">可以插入表情图标到编辑器。</description>
|
||||
<description xml:lang="en">You may insert emoticons to editor.</description>
|
||||
<description xml:lang="vi">Bạn có thể chèn biểu tượng cảm xúc vào bài viết.</description>
|
||||
<description xml:lang="es">Usted puede insertar emoticonos para el editor.</description>
|
||||
<description xml:lang="ru">Вы можете вставить смыйлы в редактор.</description>
|
||||
<description xml:lang="zh-TW">可插入表情符號到編輯器。</description>
|
||||
<description xml:lang="tr">Editöre his simgeleri ekleyebilirsiniz.</description>
|
||||
<version>0.1</version>
|
||||
<date>2007-02-28</date>
|
||||
|
||||
<author email_address="developers@xpressengine.com" link="http://xpressengine.com/">
|
||||
<name xml:lang="ko">NHN</name>
|
||||
<name xml:lang="vi">NHN</name>
|
||||
<name xml:lang="jp">NHN</name>
|
||||
<name xml:lang="zh-CN">NHN</name>
|
||||
<name xml:lang="en">NHN</name>
|
||||
<name xml:lang="es">NHN</name>
|
||||
<name xml:lang="ru">NHN</name>
|
||||
<name xml:lang="zh-TW">NHN</name>
|
||||
<name xml:lang="tr">NHN</name>
|
||||
</author>
|
||||
</component>
|
||||
|
|
|
|||
|
|
@ -1,12 +1,6 @@
|
|||
<!--%import("popup.js")-->
|
||||
<!--%import("popup.css")-->
|
||||
|
||||
<div id="popHeader" class="wide">
|
||||
<h3 class="xeAdmin">
|
||||
{$component_info->title} ver. {$component_info->version}
|
||||
</h3>
|
||||
</div>
|
||||
|
||||
<h1 class="h1">{$component_info->title} ver. {$component_info->version}</h1>
|
||||
<div class="emoticonList">
|
||||
<select name="list" id="selectEmoticonList">
|
||||
<!--@foreach($emoticon_list as $key => $val)-->
|
||||
|
|
@ -14,6 +8,4 @@
|
|||
<!--@end-->
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div id="popBody">
|
||||
</div>
|
||||
<div id="emoticons"></div>
|
||||
|
|
|
|||
|
|
@ -19,16 +19,10 @@ function getEmoticons(emoName) {
|
|||
function completeGetEmoticons(ret_obj) {
|
||||
var emoticons = ret_obj['emoticons'].split("\n");
|
||||
var html = [];
|
||||
|
||||
for(var i=0;i<emoticons.length;i++) {
|
||||
html[html.length] = '<img src="./modules/editor/components/emoticon/tpl/images/'+emoticons[i]+'" class="emoticon" />';
|
||||
}
|
||||
jQuery('#popBody').html(html.join('')).find('img.emoticon').click(insertEmoticon);
|
||||
|
||||
if (_isPoped) {
|
||||
setFixedPopupSize();
|
||||
setTimeout(setFixedPopupSize,1000);
|
||||
}
|
||||
jQuery('#emoticons').html(html.join('')).find('img.emoticon').click(insertEmoticon);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -1,81 +1,78 @@
|
|||
<?php
|
||||
/**
|
||||
* @class image_gallery
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief 업로드된 이미지로 이미지갤러리를 만듬
|
||||
**/
|
||||
|
||||
class image_gallery extends EditorHandler {
|
||||
|
||||
// editor_sequence 는 에디터에서 필수로 달고 다녀야 함....
|
||||
var $editor_sequence = 0;
|
||||
var $component_path = '';
|
||||
|
||||
/**
|
||||
* @brief editor_sequence과 컴포넌트의 경로를 받음
|
||||
**/
|
||||
function image_gallery($editor_sequence, $component_path) {
|
||||
$this->editor_sequence = $editor_sequence;
|
||||
$this->component_path = $component_path;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief popup window요청시 popup window에 출력할 내용을 추가하면 된다
|
||||
**/
|
||||
function getPopupContent() {
|
||||
// 템플릿을 미리 컴파일해서 컴파일된 소스를 return
|
||||
$tpl_path = $this->component_path.'tpl';
|
||||
$tpl_file = 'popup.html';
|
||||
|
||||
Context::set("tpl_path", $tpl_path);
|
||||
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
return $oTemplate->compile($tpl_path, $tpl_file);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 에디터 컴포넌트가 별도의 고유 코드를 이용한다면 그 코드를 html로 변경하여 주는 method
|
||||
*
|
||||
* 이미지나 멀티미디어, 설문등 고유 코드가 필요한 에디터 컴포넌트는 고유코드를 내용에 추가하고 나서
|
||||
* DocumentModule::transContent() 에서 해당 컴포넌트의 transHtml() method를 호출하여 고유코드를 html로 변경
|
||||
**/
|
||||
function transHTML($xml_obj) {
|
||||
$gallery_info->srl = rand(111111,999999);
|
||||
$gallery_info->border_thickness = $xml_obj->attrs->border_thickness;
|
||||
$gallery_info->gallery_style = $xml_obj->attrs->gallery_style;
|
||||
$gallery_info->border_color = $xml_obj->attrs->border_color;
|
||||
$gallery_info->bg_color = $xml_obj->attrs->bg_color;
|
||||
$gallery_info->gallery_align = $xml_obj->attrs->gallery_align;
|
||||
|
||||
$images_list = $xml_obj->attrs->images_list;
|
||||
$images_list = preg_replace('/\.(gif|jpg|jpeg|png) /i',".\\1\n",$images_list);
|
||||
$gallery_info->images_list = explode("\n",trim($images_list));
|
||||
|
||||
// 만약 출력설정이 XML일 경우 이미지 목록만 출력하도록 코드 생성
|
||||
if(Context::getResponseMethod() == 'XMLRPC') {
|
||||
$output = '';
|
||||
for($i=0;$i<count($gallery_info->images_list);$i++) {
|
||||
$output .= sprintf('<img src="%s" alt="" /><br />', $gallery_info->images_list[$i]);
|
||||
}
|
||||
return $output;
|
||||
}
|
||||
|
||||
// HTML 출력일 경우 템플릿 변환을 거쳐서 갤러리 출력 설정에 맞는 html코드를 생성하도록 함
|
||||
preg_match_all('/(width|height)([^[:digit:]]+)([0-9]+)/i',$xml_obj->attrs->style,$matches);
|
||||
$gallery_info->width = trim($matches[3][0]);
|
||||
if(!$gallery_info->width) $gallery_info->width = 400;
|
||||
|
||||
Context::set('gallery_info', $gallery_info);
|
||||
|
||||
$tpl_path = $this->component_path.'tpl';
|
||||
Context::set("tpl_path", $tpl_path);
|
||||
|
||||
if($gallery_info->gallery_style == "list") $tpl_file = 'list_gallery.html';
|
||||
else $tpl_file = 'slide_gallery.html';
|
||||
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
return $oTemplate->compile($tpl_path, $tpl_file);
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
/**
|
||||
* @class image_gallery
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief Making images uploaded to the image gallery
|
||||
**/
|
||||
|
||||
class image_gallery extends EditorHandler {
|
||||
// editor_sequence from the editor must attend mandatory wearing ....
|
||||
var $editor_sequence = 0;
|
||||
var $component_path = '';
|
||||
|
||||
/**
|
||||
* @brief editor_sequence and components out of the path
|
||||
**/
|
||||
function image_gallery($editor_sequence, $component_path) {
|
||||
$this->editor_sequence = $editor_sequence;
|
||||
$this->component_path = $component_path;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief popup window to display in popup window request is to add content
|
||||
**/
|
||||
function getPopupContent() {
|
||||
// Pre-compiled source code to compile template return to
|
||||
$tpl_path = $this->component_path.'tpl';
|
||||
$tpl_file = 'popup.html';
|
||||
|
||||
Context::set("tpl_path", $tpl_path);
|
||||
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
return $oTemplate->compile($tpl_path, $tpl_file);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Editor of the components separately if you use a unique code to the html code for a method to change
|
||||
*
|
||||
* Images and multimedia, seolmundeung unique code is required for the editor component added to its own code, and then
|
||||
* DocumentModule:: transContent() of its components transHtml() method call to change the html code for your own
|
||||
**/
|
||||
function transHTML($xml_obj) {
|
||||
$gallery_info->srl = rand(111111,999999);
|
||||
$gallery_info->border_thickness = $xml_obj->attrs->border_thickness;
|
||||
$gallery_info->gallery_style = $xml_obj->attrs->gallery_style;
|
||||
$gallery_info->border_color = $xml_obj->attrs->border_color;
|
||||
$gallery_info->bg_color = $xml_obj->attrs->bg_color;
|
||||
$gallery_info->gallery_align = $xml_obj->attrs->gallery_align;
|
||||
|
||||
$images_list = $xml_obj->attrs->images_list;
|
||||
$images_list = preg_replace('/\.(gif|jpg|jpeg|png) /i',".\\1\n",$images_list);
|
||||
$gallery_info->images_list = explode("\n",trim($images_list));
|
||||
// If you set the output to output the XML code generated a list of the image
|
||||
if(Context::getResponseMethod() == 'XMLRPC') {
|
||||
$output = '';
|
||||
for($i=0;$i<count($gallery_info->images_list);$i++) {
|
||||
$output .= sprintf('<img src="%s" alt="" /><br />', $gallery_info->images_list[$i]);
|
||||
}
|
||||
return $output;
|
||||
}
|
||||
// HTML gallery output, the output settings via the template for the conversion to generate the html code should
|
||||
preg_match_all('/(width|height)([^[:digit:]]+)([0-9]+)/i',$xml_obj->attrs->style,$matches);
|
||||
$gallery_info->width = trim($matches[3][0]);
|
||||
if(!$gallery_info->width) $gallery_info->width = 400;
|
||||
|
||||
Context::set('gallery_info', $gallery_info);
|
||||
|
||||
$tpl_path = $this->component_path.'tpl';
|
||||
Context::set("tpl_path", $tpl_path);
|
||||
|
||||
if($gallery_info->gallery_style == "list") $tpl_file = 'list_gallery.html';
|
||||
else $tpl_file = 'slide_gallery.html';
|
||||
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
return $oTemplate->compile($tpl_path, $tpl_file);
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -1,35 +1,35 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<component version="0.2">
|
||||
<title xml:lang="vi">Slide Show</title>
|
||||
<title xml:lang="ko">기본 이미지 갤러리</title>
|
||||
<title xml:lang="jp">デフォルトイメージギャラリー</title>
|
||||
<title xml:lang="zh-CN">图片相册</title>
|
||||
<title xml:lang="en">Basic Image Gallery</title>
|
||||
<title xml:lang="es">Galería de imágenes básicos</title>
|
||||
<title xml:lang="ru">Базовая галлерея изображений</title>
|
||||
<title xml:lang="zh-TW">預設圖片相簿</title>
|
||||
<title xml:lang="tr">Temel Resim Galerisi</title>
|
||||
<description xml:lang="vi">Bạn có thể tạo ra một Slide Show theo dạng danh sách hoặc Slide từ những hình ảnh đính kèm của mình.</description>
|
||||
<description xml:lang="ko">첨부된 이미지파일을 이용하여 슬라이드/목록형 이미지 갤러리를 만들 수 있습니다.</description>
|
||||
<description xml:lang="jp">添付されたイメージファイルを利用して、スライド型・リスト型のイメージギャラリーが作成できます。</description>
|
||||
<description xml:lang="zh-CN">利用上传的图片文件实现幻灯片式或目录型相册图片。</description>
|
||||
<description xml:lang="en">It can create image gallery of slide/list style by using attached image file.</description>
|
||||
<description xml:lang="es">It can create image gallery of slide/list style by using attached image file.</description>
|
||||
<description xml:lang="ru">Это может создать гллерею изображений в стиле слайдов/списка, используя вложенный файл изображения.</description>
|
||||
<description xml:lang="zh-TW">將上傳的圖片以投影片或列表的形式實現。</description>
|
||||
<description xml:lang="tr">Ekteki resim dosyasını kullanarak, slayt/liste tarzı resim galerisi oluşturabilir.</description>
|
||||
<version>0.1</version>
|
||||
<date>2007-02-28</date>
|
||||
|
||||
<author email_address="developers@xpressengine.com" link="http://xpressengine.com/">
|
||||
<name xml:lang="vi">NHN</name>
|
||||
<name xml:lang="ko">NHN</name>
|
||||
<name xml:lang="jp">NHN</name>
|
||||
<name xml:lang="zh-CN">NHN</name>
|
||||
<name xml:lang="en">NHN</name>
|
||||
<name xml:lang="es">NHN</name>
|
||||
<name xml:lang="ru">NHN</name>
|
||||
<name xml:lang="zh-TW">NHN</name>
|
||||
<name xml:lang="tr">NHN</name>
|
||||
</author>
|
||||
</component>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<component version="0.2">
|
||||
<title xml:lang="vi">Slide Show</title>
|
||||
<title xml:lang="ko">이미지 갤러리</title>
|
||||
<title xml:lang="jp">デフォルトイメージギャラリー</title>
|
||||
<title xml:lang="zh-CN">图片相册</title>
|
||||
<title xml:lang="en">Image Gallery</title>
|
||||
<title xml:lang="es">Galería de imágenes básicos</title>
|
||||
<title xml:lang="ru">Базовая галлерея изображений</title>
|
||||
<title xml:lang="zh-TW">預設圖片相簿</title>
|
||||
<title xml:lang="tr">Temel Resim Galerisi</title>
|
||||
<description xml:lang="vi">Bạn có thể tạo ra một Slide Show theo dạng danh sách hoặc Slide từ những hình ảnh đính kèm của mình.</description>
|
||||
<description xml:lang="ko">첨부된 이미지파일을 이용하여 슬라이드/목록형 이미지 갤러리를 만들 수 있습니다.</description>
|
||||
<description xml:lang="jp">添付されたイメージファイルを利用して、スライド型・リスト型のイメージギャラリーが作成できます。</description>
|
||||
<description xml:lang="zh-CN">利用上传的图片文件实现幻灯片式或目录型相册图片。</description>
|
||||
<description xml:lang="en">It can create an image gallery of slide/list style by using the attached image file.</description>
|
||||
<description xml:lang="es">It can create image gallery of slide/list style by using attached image file.</description>
|
||||
<description xml:lang="ru">Это может создать гллерею изображений в стиле слайдов/списка, используя вложенный файл изображения.</description>
|
||||
<description xml:lang="zh-TW">將上傳的圖片以投影片或列表的形式實現。</description>
|
||||
<description xml:lang="tr">Ekteki resim dosyasını kullanarak, slayt/liste tarzı resim galerisi oluşturabilir.</description>
|
||||
<version>0.2</version>
|
||||
<date>2007-02-28</date>
|
||||
|
||||
<author email_address="developers@xpressengine.com" link="http://xpressengine.com/">
|
||||
<name xml:lang="vi">NHN</name>
|
||||
<name xml:lang="ko">NHN</name>
|
||||
<name xml:lang="jp">NHN</name>
|
||||
<name xml:lang="zh-CN">NHN</name>
|
||||
<name xml:lang="en">NHN</name>
|
||||
<name xml:lang="es">NHN</name>
|
||||
<name xml:lang="ru">NHN</name>
|
||||
<name xml:lang="zh-TW">NHN</name>
|
||||
<name xml:lang="tr">NHN</name>
|
||||
</author>
|
||||
</component>
|
||||
|
|
|
|||
|
|
@ -1,27 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/image_gallery/lang/en.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor module > language pack of image_gallery component.
|
||||
**/
|
||||
|
||||
$lang->image_gallery = "Make Image Gallery";
|
||||
$lang->width = "Width";
|
||||
$lang->height = "Height";
|
||||
$lang->image_list = "Image List";
|
||||
$lang->gallery_style = "Gallery Style";
|
||||
$lang->gallery_slide_style = "Slide Style";
|
||||
$lang->gallery_slide_align = "Align Style";
|
||||
$lang->gallery_slide_center = "Center";
|
||||
$lang->gallery_slide_left = "Left";
|
||||
$lang->gallery_slide_right = "Right";
|
||||
$lang->gallery_list_style = "Expand All";
|
||||
$lang->gallery_border_color = "Border Color";
|
||||
$lang->gallery_border_thickness = "Border Thickness";
|
||||
$lang->gallery_bg_color = "Background Color";
|
||||
$lang->about_image_list = "Select file to add to the image gallery. You can drag it after selecting or shift+click(for selecting widely), ctrl+click(for selecting individually)";
|
||||
|
||||
$lang->cmd_gallery_prev = "Previous Picture";
|
||||
$lang->cmd_gallery_next = "Next Picture";
|
||||
$lang->cmd_gallery_thumbnail = "Thumbnail";
|
||||
?>
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/image_gallery/lang/en.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor module > language pack of image_gallery component.
|
||||
**/
|
||||
|
||||
$lang->image_gallery = "Haga Galeria de Imagenes";
|
||||
$lang->width = "Ancho";
|
||||
$lang->altura = "Altura";
|
||||
$lang->image_list = "Lista de imagenes";
|
||||
$lang->gallery_style = "Galeria de Estilo";
|
||||
$lang->gallery_slide_style = "Estilo de diapositivas";
|
||||
$lang->gallery_slide_align = "Alinear Estilo";
|
||||
$lang->gallery_slide_center = "Centro";
|
||||
$lang->gallery_slide_left = "Izquierda";
|
||||
$lang->gallery_slide_right = "Derecho";
|
||||
$lang->gallery_list_style = "Mostrar todos";
|
||||
$lang->gallery_border_color = "Color del borde";
|
||||
$lang->gallery_border_thickness = "Grosor de Fronteras";
|
||||
$lang->gallery_bg_color = "Color de fondo";
|
||||
$lang->about_image_list = "Seleccione archivo para anadir a la galeria de imagenes. Puede arrastrar despues de la seleccion o cambio + clic (para seleccionar ampliamente), ctrl + clic (para seleccionar individualmente)";
|
||||
|
||||
$lang->cmd_gallery_prev = "Imagen anterior";
|
||||
$lang->cmd_gallery_next = "Imagen siguiente";
|
||||
$lang->cmd_gallery_thumbnail = "Miniatura";
|
||||
?>
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/editor/components/image_gallery/lang/jp.lang.php
|
||||
* @author NHN (developers@xpressengine.com) 翻訳:RisaPapa、ミニミ
|
||||
* @brief ウィジウィグエディター(editor)モジュール > イメージギャラリー(image_gallery)コンポネント言語パッケージ
|
||||
**/
|
||||
|
||||
$lang->image_gallery = "イメージギャラリー作成";
|
||||
$lang->width = "横幅サイズ";
|
||||
$lang->height = "縦幅サイズ";
|
||||
$lang->image_list = "イメージリスト";
|
||||
$lang->gallery_style = "ギャラリースタイル";
|
||||
$lang->gallery_slide_style = "スライドスタイル";
|
||||
$lang->gallery_slide_align = "アライン位置";
|
||||
$lang->gallery_slide_center = "中央揃え";
|
||||
$lang->gallery_slide_left = "左揃え";
|
||||
$lang->gallery_slide_right = "右揃え";
|
||||
$lang->gallery_list_style = "展開表示(リスト)";
|
||||
$lang->gallery_border_color = "ボーダーカラー";
|
||||
$lang->gallery_border_thickness = "ボーダー";
|
||||
$lang->gallery_bg_color = "背景色";
|
||||
$lang->about_image_list = "イメージギャラリーに追加するファイルを選択して下さい。選択した後、ドラッグまたは「Shift+クリック(範囲選択)、Ctrl+クリック(個別選択)」が出来ます。";
|
||||
|
||||
$lang->cmd_gallery_prev = "前のイメージ表示";
|
||||
$lang->cmd_gallery_next = "次のイメージ表示";
|
||||
$lang->cmd_gallery_thumbnail = "サムネール表示";
|
||||
?>
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/editor/components/image_gallery/lang/ko.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief 위지윅에디터(editor) 모듈 > 이미지갤러리(image_gallery) 컴포넌트의 언어팩
|
||||
**/
|
||||
|
||||
$lang->image_gallery = '이미지 갤러리 제작';
|
||||
$lang->width = '가로';
|
||||
$lang->height = '세로';
|
||||
$lang->image_list = '이미지 목록';
|
||||
$lang->gallery_style = '갤러리 형식 ';
|
||||
$lang->gallery_slide_style = '슬라이드 형식';
|
||||
$lang->gallery_slide_align = '정렬방식';
|
||||
$lang->gallery_slide_center = '가운데';
|
||||
$lang->gallery_slide_left = '왼쪽';
|
||||
$lang->gallery_slide_right = '오른쪽';
|
||||
$lang->gallery_list_style = '모두 펼침';
|
||||
$lang->gallery_border_color = '테두리 색';
|
||||
$lang->gallery_border_thickness = '테두리 두께';
|
||||
$lang->gallery_bg_color = '배경색';
|
||||
$lang->about_image_list = '이미지 갤러리에 추가할 파일을 선택하세요. 선택 후 드래그 또는 shift+클릭(범위선택), ctrl+클릭(개별선택) 가능합니다.';
|
||||
|
||||
$lang->cmd_gallery_prev = '이전 그림 보기';
|
||||
$lang->cmd_gallery_next = '다음 그림 보기';
|
||||
$lang->cmd_gallery_thumbnail = '섬네일 보기';
|
||||
?>
|
||||
200
modules/editor/components/image_gallery/lang/lang.xml
Normal file
200
modules/editor/components/image_gallery/lang/lang.xml
Normal file
|
|
@ -0,0 +1,200 @@
|
|||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<lang>
|
||||
<item name="image_gallery">
|
||||
<value xml:lang="ko"><![CDATA[이미지 갤러리 제작]]></value>
|
||||
<value xml:lang="en"><![CDATA[Make Image Gallery]]></value>
|
||||
<value xml:lang="jp"><![CDATA[イメージギャラリー作成]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[图像编辑]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[圖片編輯]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Создать галлерею изображений]]></value>
|
||||
<value xml:lang="es"><![CDATA[Haga Galeria de Imagenes]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Resim Galerisi Oluştur]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Tạo Slide Show]]></value>
|
||||
</item>
|
||||
<item name="width">
|
||||
<value xml:lang="ko"><![CDATA[가로]]></value>
|
||||
<value xml:lang="en"><![CDATA[Width]]></value>
|
||||
<value xml:lang="jp"><![CDATA[横幅サイズ]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[宽度]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[寬度]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Ширина]]></value>
|
||||
<value xml:lang="es"><![CDATA[Ancho]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Genişlik]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Chiều rộng]]></value>
|
||||
</item>
|
||||
<item name="height">
|
||||
<value xml:lang="ko"><![CDATA[세로]]></value>
|
||||
<value xml:lang="en"><![CDATA[Height]]></value>
|
||||
<value xml:lang="jp"><![CDATA[縦幅サイズ]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[高度]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[高度]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Высота]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Yükseklik]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Chiều cao]]></value>
|
||||
</item>
|
||||
<item name="image_list">
|
||||
<value xml:lang="ko"><![CDATA[이미지 목록]]></value>
|
||||
<value xml:lang="en"><![CDATA[Image List]]></value>
|
||||
<value xml:lang="jp"><![CDATA[イメージリスト]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[图像目录]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[圖片列表]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Список изображений]]></value>
|
||||
<value xml:lang="es"><![CDATA[Lista de imagenes]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Resim Listesi]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Danh sách hình ảnh]]></value>
|
||||
</item>
|
||||
<item name="gallery_style">
|
||||
<value xml:lang="ko"><![CDATA[갤러리 형식 ]]></value>
|
||||
<value xml:lang="en"><![CDATA[Gallery Style]]></value>
|
||||
<value xml:lang="jp"><![CDATA[ギャラリースタイル]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[风格]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[風格]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Стиль галлереи]]></value>
|
||||
<value xml:lang="es"><![CDATA[Galeria de Estilo]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Galeri Tarzı]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Kiểu dáng Show]]></value>
|
||||
</item>
|
||||
<item name="gallery_slide_style">
|
||||
<value xml:lang="ko"><![CDATA[슬라이드 형식]]></value>
|
||||
<value xml:lang="en"><![CDATA[Slide Style]]></value>
|
||||
<value xml:lang="jp"><![CDATA[スライドスタイル]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[幻灯片风格]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[幻燈片]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Стиль слайда]]></value>
|
||||
<value xml:lang="es"><![CDATA[Estilo de diapositivas]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Slayt Tarzı]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Kiểu Slide]]></value>
|
||||
</item>
|
||||
<item name="gallery_slide_align">
|
||||
<value xml:lang="ko"><![CDATA[정렬방식]]></value>
|
||||
<value xml:lang="en"><![CDATA[Align Style]]></value>
|
||||
<value xml:lang="jp"><![CDATA[アライン位置]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[对齐方式]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[對齊方式]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Стиль выравнивания]]></value>
|
||||
<value xml:lang="es"><![CDATA[Alinear Estilo]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Hizalama Tarzı]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Kiểu căn chỉnh]]></value>
|
||||
</item>
|
||||
<item name="gallery_slide_center">
|
||||
<value xml:lang="ko"><![CDATA[가운데]]></value>
|
||||
<value xml:lang="en"><![CDATA[Center]]></value>
|
||||
<value xml:lang="jp"><![CDATA[中央揃え]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[居中对齐]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[置中]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Центр]]></value>
|
||||
<value xml:lang="es"><![CDATA[Centro]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Ortalı]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Giữa]]></value>
|
||||
</item>
|
||||
<item name="gallery_slide_left">
|
||||
<value xml:lang="ko"><![CDATA[왼쪽]]></value>
|
||||
<value xml:lang="en"><![CDATA[Left]]></value>
|
||||
<value xml:lang="jp"><![CDATA[左揃え]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[左对齐]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[靠左]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Лево]]></value>
|
||||
<value xml:lang="es"><![CDATA[Izquierda]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Sol]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Trái]]></value>
|
||||
</item>
|
||||
<item name="gallery_slide_right">
|
||||
<value xml:lang="ko"><![CDATA[오른쪽]]></value>
|
||||
<value xml:lang="en"><![CDATA[Right]]></value>
|
||||
<value xml:lang="jp"><![CDATA[右揃え]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[右对齐]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[靠右]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Право]]></value>
|
||||
<value xml:lang="es"><![CDATA[Derecho]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Sağ]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Phải]]></value>
|
||||
</item>
|
||||
<item name="gallery_list_style">
|
||||
<value xml:lang="ko"><![CDATA[모두 펼침]]></value>
|
||||
<value xml:lang="en"><![CDATA[Expand All]]></value>
|
||||
<value xml:lang="jp"><![CDATA[展開表示(リスト)]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[全部展开]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[全部展開]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Раскрыть все]]></value>
|
||||
<value xml:lang="es"><![CDATA[Mostrar todos]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Hepsini Genişlet]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Mở rộng tất cả]]></value>
|
||||
</item>
|
||||
<item name="gallery_border_color">
|
||||
<value xml:lang="ko"><![CDATA[테두리 색]]></value>
|
||||
<value xml:lang="en"><![CDATA[Border Color]]></value>
|
||||
<value xml:lang="jp"><![CDATA[ボーダーカラー]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[边框颜色]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[邊框顏色]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Цыет рамки]]></value>
|
||||
<value xml:lang="es"><![CDATA[Color del borde]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Kenarlık Rengi]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Màu viền]]></value>
|
||||
</item>
|
||||
<item name="gallery_border_thickness">
|
||||
<value xml:lang="ko"><![CDATA[테두리 두께]]></value>
|
||||
<value xml:lang="en"><![CDATA[Border Thickness]]></value>
|
||||
<value xml:lang="jp"><![CDATA[ボーダー]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[边框粗细]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[邊框粗細]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Толщина рамки]]></value>
|
||||
<value xml:lang="es"><![CDATA[Grosor de Fronteras]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Kenarlık Kalınlığı]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Độ dày viền]]></value>
|
||||
</item>
|
||||
<item name="gallery_bg_color">
|
||||
<value xml:lang="ko"><![CDATA[배경색]]></value>
|
||||
<value xml:lang="en"><![CDATA[Background Color]]></value>
|
||||
<value xml:lang="jp"><![CDATA[背景色]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[背景颜色]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[背景顏色]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Цвет фона]]></value>
|
||||
<value xml:lang="es"><![CDATA[Color de fondo]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Arkaplan Rengi]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Màu nền]]></value>
|
||||
</item>
|
||||
<item name="about_image_list">
|
||||
<value xml:lang="ko"><![CDATA[이미지 갤러리에 추가할 파일을 선택하세요. 선택 후 드래그 또는 shift+클릭(범위선택), ctrl+클릭(개별선택) 가능합니다.]]></value>
|
||||
<value xml:lang="en"><![CDATA[Select an image file to add to the gallery. You can drag it after selecting, Shift+click to select multiple files or Ctrl+click to select each file.]]></value>
|
||||
<value xml:lang="jp"><![CDATA[イメージギャラリーに追加するファイルを選択してください。選択した後、ドラッグまたは「Shift+クリック(範囲選択)、Ctrl+クリック(個別選択)」ができます。]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[请选择要添加的图像文件。 选择后可以拖动或按 shift+点击(范围选择), ctrl+点击(个别选择)]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[請選擇要新增的圖片檔案。可以框選或按住 shift+左鍵(範圍選擇), ctrl+左鍵(個別選擇)選擇檔案。]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Выберите файл для добавления в галлерею изображений. Вы можете перетащить его после выбора или нажав shift+click(для широкого выделения), ctrl+click(для индивидуального выделения)]]></value>
|
||||
<value xml:lang="es"><![CDATA[Seleccione archivo para anadir a la galeria de imagenes. Puede arrastrar despues de la seleccion o cambio + clic (para seleccionar ampliamente), ctrl + clic (para seleccionar individualmente)]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Resim galerisine eklenecek dosyayı seçiniz. Seçtikten sonra dosyayı sürükleyebilirsiniz ya da shift+click(geniş ölçüde seçimler için), ctrl+click(bireysel seçimler için)komutlarını kullanabilirsiniz]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Chọn hình ảnh để thêm vào Show. Bạn có thể di chuyển hình ảnh bằng cách bấm tổ hợp 'Shift+Click' để di chuyển nhiều hình ảnh, hoặc 'Ctrl+Click' để di chuyển từng hình ảnh.]]></value>
|
||||
</item>
|
||||
<item name="cmd_gallery_prev">
|
||||
<value xml:lang="ko"><![CDATA[이전 그림 보기]]></value>
|
||||
<value xml:lang="en"><![CDATA[Previous Picture]]></value>
|
||||
<value xml:lang="jp"><![CDATA[前のイメージ表示]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[上一个]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[上一個]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Предыдущее изображение]]></value>
|
||||
<value xml:lang="es"><![CDATA[Imagen anterior]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Önceki Resim]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Hình trước]]></value>
|
||||
</item>
|
||||
<item name="cmd_gallery_next">
|
||||
<value xml:lang="ko"><![CDATA[다음 그림 보기]]></value>
|
||||
<value xml:lang="en"><![CDATA[Next Picture]]></value>
|
||||
<value xml:lang="jp"><![CDATA[次のイメージ表示]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[下一个]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[下一個]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Следующее изображение]]></value>
|
||||
<value xml:lang="es"><![CDATA[Imagen siguiente]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Sonraki Resim]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Hình sau]]></value>
|
||||
</item>
|
||||
<item name="cmd_gallery_thumbnail">
|
||||
<value xml:lang="ko"><![CDATA[섬네일 보기]]></value>
|
||||
<value xml:lang="en"><![CDATA[Thumbnail]]></value>
|
||||
<value xml:lang="jp"><![CDATA[サムネール表示]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[查看缩略图il]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[檢視縮圖]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Миниатюра]]></value>
|
||||
<value xml:lang="es"><![CDATA[Miniatura]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Küçük Resim]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Hình nhỏ]]></value>
|
||||
</item>
|
||||
</lang>
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/image_gallery/lang/ru.lang.php
|
||||
* @author NHN (developers@xpressengine.com) | translation by Maslennikov Evgeny aka X-[Vr]bL1s5 | e-mail: x-bliss[a]tut.by; ICQ: 225035467;
|
||||
* @brief editor module > language pack of image_gallery component.
|
||||
**/
|
||||
|
||||
$lang->image_gallery = "Создать галлерею изображений";
|
||||
$lang->width = "Ширина";
|
||||
$lang->height = "Высота";
|
||||
$lang->image_list = "Список изображений";
|
||||
$lang->gallery_style = "Стиль галлереи";
|
||||
$lang->gallery_slide_style = "Стиль слайда";
|
||||
$lang->gallery_slide_align = "Стиль выравнивания";
|
||||
$lang->gallery_slide_center = "Центр";
|
||||
$lang->gallery_slide_left = "Лево";
|
||||
$lang->gallery_slide_right = "Право";
|
||||
$lang->gallery_list_style = "Раскрыть все";
|
||||
$lang->gallery_border_color = "Цыет рамки";
|
||||
$lang->gallery_border_thickness = "Толщина рамки";
|
||||
$lang->gallery_bg_color = "Цвет фона";
|
||||
$lang->about_image_list = "Выберите файл для добавления в галлерею изображений. Вы можете перетащить его после выбора или нажав shift+click(для широкого выделения), ctrl+click(для индивидуального выделения)";
|
||||
|
||||
$lang->cmd_gallery_prev = "Предыдущее изображение";
|
||||
$lang->cmd_gallery_next = "Следующее изображение";
|
||||
$lang->cmd_gallery_thumbnail = "Миниатюра";
|
||||
?>
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/image_gallery/lang/en.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor module > language pack of image_gallery component.
|
||||
**/
|
||||
|
||||
$lang->image_gallery = "Resim Galerisi Oluştur";
|
||||
$lang->width = "Genişlik";
|
||||
$lang->height = "Yükseklik";
|
||||
$lang->image_list = "Resim Listesi";
|
||||
$lang->gallery_style = "Galeri Tarzı";
|
||||
$lang->gallery_slide_style = "Slayt Tarzı";
|
||||
$lang->gallery_slide_align = "Hizalama Tarzı";
|
||||
$lang->gallery_slide_center = "Ortalı";
|
||||
$lang->gallery_slide_left = "Sol";
|
||||
$lang->gallery_slide_right = "Sağ";
|
||||
$lang->gallery_list_style = "Hepsini Genişlet";
|
||||
$lang->gallery_border_color = "Kenarlık Rengi";
|
||||
$lang->gallery_border_thickness = "Kenarlık Kalınlığı";
|
||||
$lang->gallery_bg_color = "Arkaplan Rengi";
|
||||
$lang->about_image_list = "Resim galerisine eklenecek dosyayı seçiniz. Seçtikten sonra dosyayı sürükleyebilirsiniz ya da shift+click(geniş ölçüde seçimler için), ctrl+click(bireysel seçimler için)komutlarını kullanabilirsiniz";
|
||||
|
||||
$lang->cmd_gallery_prev = "Önceki Resim";
|
||||
$lang->cmd_gallery_next = "Sonraki Resim";
|
||||
$lang->cmd_gallery_thumbnail = "Küçük Resim";
|
||||
?>
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
<?php
|
||||
/* ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
|
||||
░░ * @File : common/lang/vi.lang.php ░░
|
||||
░░ * @Author : NHN (developers@xpressengine.com) ░░
|
||||
░░ * @Trans : Đào Đức Duy (ducduy.dao.vn@vietxe.net) ░░
|
||||
░░ * @Website: http://vietxe.net ░░
|
||||
░░ * @Brief : Vietnamese Language Pack (Only basic words are included here) ░░
|
||||
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ */
|
||||
|
||||
$lang->image_gallery = "Tạo Slide Show";
|
||||
$lang->width = "Chiều rộng";
|
||||
$lang->height = "Chiều cao";
|
||||
$lang->image_list = "Danh sách hình ảnh";
|
||||
$lang->gallery_style = "Kiểu dáng Show";
|
||||
$lang->gallery_slide_style = "Kiểu Slide";
|
||||
$lang->gallery_slide_align = "Kiểu căn chỉnh";
|
||||
$lang->gallery_slide_center = "Giữa";
|
||||
$lang->gallery_slide_left = "Trái";
|
||||
$lang->gallery_slide_right = "Phải";
|
||||
$lang->gallery_list_style = "Mở rộng tất cả";
|
||||
$lang->gallery_border_color = "Màu viền";
|
||||
$lang->gallery_border_thickness = "Độ dày viền";
|
||||
$lang->gallery_bg_color = "Màu nền";
|
||||
$lang->about_image_list = "Chọn hình ảnh để thêm vào Show. Bạn có thể di chuyển hình ảnh bằng cách bấm tổ hợp 'Shift+Click' để di chuyển nhiều hình ảnh, hoặc 'Ctrl+Click' để di chuyển từng hình ảnh.";
|
||||
|
||||
$lang->cmd_gallery_prev = "Hình trước";
|
||||
$lang->cmd_gallery_next = "Hình sau";
|
||||
$lang->cmd_gallery_thumbnail = "Hình nhỏ";
|
||||
?>
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/image_gallery/lang/zh-CN.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief 网页编辑器(editor) 模块 > 图像(image_gallery) 组件的语言包
|
||||
**/
|
||||
|
||||
$lang->image_gallery = "图像编辑";
|
||||
$lang->width = "宽度";
|
||||
$lang->height = "高度";
|
||||
$lang->image_list = "图像目录";
|
||||
$lang->gallery_style = "风格";
|
||||
$lang->gallery_slide_style = "幻灯片风格";
|
||||
$lang->gallery_slide_align = "对齐方式";
|
||||
$lang->gallery_slide_center = "居中对齐";
|
||||
$lang->gallery_slide_left = "左对齐";
|
||||
$lang->gallery_slide_right = "右对齐";
|
||||
$lang->gallery_list_style = "全部展开";
|
||||
$lang->gallery_border_color = "边框颜色";
|
||||
$lang->gallery_border_thickness = "边框粗细";
|
||||
$lang->gallery_bg_color = "背景颜色";
|
||||
$lang->about_image_list = "请选择要添加的图像文件。 选择后可以拖动或按 shift+点击(范围选择), ctrl+点击(个别选择)";
|
||||
|
||||
$lang->cmd_gallery_prev = "上一个";
|
||||
$lang->cmd_gallery_next = "下一个";
|
||||
$lang->cmd_gallery_thumbnail = "查看缩略图il";
|
||||
?>
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/image_gallery/lang/zh-TW.lang.php
|
||||
* @author NHN (developers@xpressengine.com) 翻譯:royallin
|
||||
* @brief 網頁編輯器(editor) 模組 > 圖片(image_gallery) 組件的語言
|
||||
**/
|
||||
|
||||
$lang->image_gallery = "圖片編輯";
|
||||
$lang->width = "寬度";
|
||||
$lang->height = "高度";
|
||||
$lang->image_list = "圖片列表";
|
||||
$lang->gallery_style = "風格";
|
||||
$lang->gallery_slide_style = "幻燈片";
|
||||
$lang->gallery_slide_align = "對齊方式";
|
||||
$lang->gallery_slide_center = "置中";
|
||||
$lang->gallery_slide_left = "靠左";
|
||||
$lang->gallery_slide_right = "靠右";
|
||||
$lang->gallery_list_style = "全部展開";
|
||||
$lang->gallery_border_color = "邊框顏色";
|
||||
$lang->gallery_border_thickness = "邊框粗細";
|
||||
$lang->gallery_bg_color = "背景顏色";
|
||||
$lang->about_image_list = "請選擇要新增的圖片檔案。可以框選或按住 shift+左鍵(範圍選擇), ctrl+左鍵(個別選擇)選擇檔案。";
|
||||
|
||||
$lang->cmd_gallery_prev = "上一個";
|
||||
$lang->cmd_gallery_next = "下一個";
|
||||
$lang->cmd_gallery_thumbnail = "檢視縮圖";
|
||||
?>
|
||||
64
modules/editor/components/image_gallery/tpl/gallery.js
Normal file
64
modules/editor/components/image_gallery/tpl/gallery.js
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
/**
|
||||
* Gallery App
|
||||
*/
|
||||
(function($){
|
||||
|
||||
var g = xe.createApp('Gallery', {
|
||||
_imgs : {},
|
||||
_styles : {},
|
||||
|
||||
init : function() {
|
||||
this._imgs = {};
|
||||
},
|
||||
API_ADD_IMAGE : function(sender, params) {
|
||||
var srl = params[0], path = params[1], key = '@'+srl;
|
||||
|
||||
if(/^files/.test(path)) path = request_uri + path;
|
||||
if(!is_def(this._imgs[key])) this._imgs[key] = [];
|
||||
|
||||
this._imgs[key].push({path:path,loaded:false});
|
||||
},
|
||||
API_ONREADY : function(sender, params) {
|
||||
var i, c, key, img, imgs = this._imgs;
|
||||
|
||||
// image cache
|
||||
for(key in imgs) {
|
||||
if(!imgs.hasOwnProperty(key)) continue;
|
||||
|
||||
for(i=0,c=imgs[key].length; i < c; i++) {
|
||||
img = imgs[key][i];
|
||||
img.$obj = $('<img />').attr('src', img.path);
|
||||
img.$obj.load({img:img}, function(event){
|
||||
var im = event.data.img;
|
||||
|
||||
im.loaded = true;
|
||||
im.$obj.unbind('load');
|
||||
});
|
||||
}
|
||||
}
|
||||
},
|
||||
API_GET_IMAGES : function(sender, params) {
|
||||
var srl = params[0];
|
||||
|
||||
return this._imgs['@'+srl] || [];
|
||||
},
|
||||
API_SET_STYLE : function(sender, params) {
|
||||
var srl = params[0], sty = params[1];
|
||||
|
||||
this._styles['@'+srl] = sty;
|
||||
},
|
||||
API_ONLOAD : function() {
|
||||
var key, sty;
|
||||
|
||||
for(key in this._imgs) {
|
||||
if(!this._imgs.hasOwnProperty(key)) continue;
|
||||
sty = this._styles[key] || 'list';
|
||||
|
||||
this.cast('SHOW_'+sty.toUpperCase(), [key.substr(1)]);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
xe.registerApp(new g);
|
||||
|
||||
})(jQuery);
|
||||
5
modules/editor/components/image_gallery/tpl/gallery.min.js
vendored
Normal file
5
modules/editor/components/image_gallery/tpl/gallery.min.js
vendored
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
/**
|
||||
* Gallery App
|
||||
*/
|
||||
(function(f){var g=xe.createApp("Gallery",{_imgs:{},_styles:{},init:function(){this._imgs={}},API_ADD_IMAGE:function(b,a){var c=a[1],d="@"+a[0];/^files/.test(c)&&(c=request_uri+c);is_def(this._imgs[d])||(this._imgs[d]=[]);this._imgs[d].push({path:c,loaded:!1})},API_ONREADY:function(){var b,a,c,d,e=this._imgs;for(c in e)if(e.hasOwnProperty(c)){b=0;for(a=e[c].length;b<a;b++)d=e[c][b],d.$obj=f("<img />").attr("src",d.path),d.$obj.load({img:d},function(a){a=a.data.img;a.loaded=!0;a.$obj.unbind("load")})}},
|
||||
API_GET_IMAGES:function(b,a){return this._imgs["@"+a[0]]||[]},API_SET_STYLE:function(b,a){this._styles["@"+a[0]]=a[1]},API_ONLOAD:function(){var b,a;for(b in this._imgs)this._imgs.hasOwnProperty(b)&&(a=this._styles[b]||"list",this.cast("SHOW_"+a.toUpperCase(),[b.substr(1)]))}});xe.registerApp(new g)})(jQuery);
|
||||
|
|
@ -1,14 +1,25 @@
|
|||
<!--%import("list_gallery.js")-->
|
||||
<script type='text/javascript'>
|
||||
// 이미지갤러리에 보여줄 이미지 등록
|
||||
<!--@foreach($gallery_info->images_list as $image)-->
|
||||
list_gallery_add_image({$gallery_info->srl},'{$image}');
|
||||
<!--@end-->
|
||||
<!--@if(__DEBUG__)-->
|
||||
<load target="gallery.js" />
|
||||
<load target="list_gallery.js" />
|
||||
<!--@else-->
|
||||
<load target="gallery.min.js" />
|
||||
<load target="list_gallery.min.js" />
|
||||
<!--@end-->
|
||||
<script type="text/javascript">
|
||||
(function(){
|
||||
|
||||
// window.onLoad 이벤트 후에 이미지갤러리 시작
|
||||
xAddEventListener(window,'load',start_list_gallery);
|
||||
var gallery = xe.getApp('gallery')[0];
|
||||
|
||||
// Add images
|
||||
<!--@foreach($gallery_info->images_list as $img)-->
|
||||
gallery.cast('ADD_IMAGE', [{$gallery_info->srl}, '{$img}']);
|
||||
<!--@end-->
|
||||
|
||||
gallery.cast('SET_STYLE', [{$gallery_info->srl}, 'list']);
|
||||
|
||||
})();
|
||||
</script>
|
||||
|
||||
<div align="{$gallery_info->gallery_align}">
|
||||
<div id='zone_list_gallery_{$gallery_info->srl}' style="width:{$gallery_info->width}px;background-color:#{$gallery_info->bg_color};border:{$gallery_info->border_thickness}px solid #{$gallery_info->border_color};text-align:left;"></div>
|
||||
<div id="zone_list_gallery_{$gallery_info->srl}" style="width:{$gallery_info->width}px;background-color:#{$gallery_info->bg_color};border:{$gallery_info->border_thickness}px solid #{$gallery_info->border_color};text-align:left;"><p style="text-align:center">Loading images...</p></div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -1,82 +1,43 @@
|
|||
/**
|
||||
* @file list_gallery.js
|
||||
* @brief 이미지 이미지갤러리 쇼 스크립트
|
||||
* @brief List-type image gallery
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
**/
|
||||
|
||||
// 이미지갤러리쇼를 하기 위한 변수
|
||||
var list_gallery_images = new Array();
|
||||
(function($){
|
||||
|
||||
// 이미지갤러리쇼 이미지 목록에 추가
|
||||
function list_gallery_add_image(srl, image_url) {
|
||||
if(!image_url) return;
|
||||
if(image_url.indexOf('files')==0) image_url = request_uri+image_url;
|
||||
var listShow = xe.createPlugin('list', {
|
||||
API_SHOW_LIST : function(sender, params) {
|
||||
var srl = params[0], imgs, $zone, i, c, im, scale, w1, w2, h1, h2;
|
||||
|
||||
// 객체 생성
|
||||
var obj = {"srl":0, "image_url":null, "image":null}
|
||||
imgs = this.cast('GET_IMAGES', [srl]);
|
||||
|
||||
// list_gallery_images에 이미지갤러리 쇼 고유번호에 해당하는 공간을 초기화
|
||||
if(typeof(list_gallery_images[srl])=="undefined") list_gallery_images[srl] = new Array();
|
||||
if(!imgs.length) return;
|
||||
|
||||
// 이미지갤러리쇼 고유번호를 세팅
|
||||
obj.srl = srl;
|
||||
obj.idx = list_gallery_images[srl].length;
|
||||
$zone = $('#zone_list_gallery_'+srl).empty();
|
||||
width = $zone.innerWidth();
|
||||
|
||||
// 원본 이미지를 미리 로딩
|
||||
obj.image = new Image();
|
||||
obj.image.src = image_url;
|
||||
obj.image.srl = obj.srl;
|
||||
obj.image.idx = obj.idx;
|
||||
for(i=0,c=imgs.length; i < c; i++) {
|
||||
im = imgs[i];
|
||||
w1 = im.$obj.prop('width');
|
||||
h1 = im.$obj.prop('height');
|
||||
|
||||
// 생성된 객체를 list_gallery_images[이미지갤러리쇼 고유번호]에 추가
|
||||
list_gallery_images[srl][list_gallery_images[srl].length] = obj;
|
||||
}
|
||||
if(w1 > width - 25) {
|
||||
w2 = width - 25;
|
||||
scale = w2 / w1;
|
||||
h2 = Math.floor(h1 * scale);
|
||||
|
||||
// 이미지갤러리쇼 시작
|
||||
function start_list_gallery() {
|
||||
w1 = w2; h1 = h2;
|
||||
im.$obj.attr('rel', 'xe_gallery');
|
||||
}
|
||||
|
||||
// 등록된 모든 이미지 목록을 돌면서 목록을 만들어줌
|
||||
for(var srl in list_gallery_images) {
|
||||
$zone.append(im.$obj);
|
||||
im.$obj.css({width:w1+'px', height:h1, margin:'0 10px', display:'block'});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// 등록된 이미지가 없으면 pass~
|
||||
if(!list_gallery_images[srl].length) continue;
|
||||
var gallery = xe.getApp('Gallery')[0];
|
||||
if(gallery) gallery.registerPlugin(new listShow);
|
||||
|
||||
// 메인이미지가 나올 곳과 섬네일이 노출될 곳의 객체를 구함
|
||||
var zone = xGetElementById('zone_list_gallery_'+srl);
|
||||
|
||||
// 갤러리 외부 박스보다 이미지가 클 경우 resizing시킴
|
||||
var borderTop = parseInt(zone.style.borderTopWidth.replace(/px$/,''),10);
|
||||
var borderLeft = parseInt(zone.style.borderLeftWidth.replace(/px$/,''),10);
|
||||
var borderRight = parseInt(zone.style.borderRightWidth.replace(/px$/,''),10);
|
||||
var borderBottom = parseInt(zone.style.borderBottomWidth.replace(/px$/,''),10);
|
||||
|
||||
var zone_width = xWidth(zone)-borderLeft-borderRight;
|
||||
|
||||
// 이미지 출력
|
||||
for(var i=0; i<list_gallery_images[srl].length;i++) {
|
||||
var obj = list_gallery_images[srl][i];
|
||||
var image_width = obj.image.width;
|
||||
var image_height = obj.image.height;
|
||||
var resize_scale = 1;
|
||||
|
||||
// 이미지갤러리 쇼 박스보다 큰 이미지는 크기를 줄여서 출력
|
||||
if(image_width>(zone_width-25)) {
|
||||
resize_scale = (zone_width-25)/image_width;
|
||||
image_width = parseInt(image_width*resize_scale,10);
|
||||
image_height = parseInt(image_height*resize_scale,10);
|
||||
}
|
||||
|
||||
obj.image.style.width = image_width+"px";
|
||||
obj.image.style.height = image_height+"px";
|
||||
obj.image.style.marginLeft = "10px";
|
||||
obj.image.style.marginBottom = "10px";
|
||||
obj.image.style.display = "block";
|
||||
|
||||
// 리사이즈 되었다면 resize_image 애드온의 slideshow() 기능 사용
|
||||
if(resize_scale != 1) obj.image.rel = 'xe_gallery';
|
||||
|
||||
zone.appendChild(obj.image);
|
||||
}
|
||||
zone.style.paddingTop = "10px";
|
||||
}
|
||||
}
|
||||
})(jQuery);
|
||||
|
|
|
|||
6
modules/editor/components/image_gallery/tpl/list_gallery.min.js
vendored
Normal file
6
modules/editor/components/image_gallery/tpl/list_gallery.min.js
vendored
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
/**
|
||||
* @file list_gallery.js
|
||||
* @brief List-type image gallery
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
**/
|
||||
(function(k){var h=xe.createPlugin("list",{API_SHOW_LIST:function(i,h){var c=h[0],d,e,j,b,a,g,f;d=this.cast("GET_IMAGES",[c]);if(d.length){c=k("#zone_list_gallery_"+c).empty();width=c.innerWidth();e=0;for(j=d.length;e<j;e++)b=d[e],a=b.$obj.prop("width"),f=b.$obj.prop("height"),a>width-25&&(g=width-25,a=g/a,f=Math.floor(f*a),a=g,b.$obj.attr("rel","xe_gallery")),c.append(b.$obj),b.$obj.css({width:a+"px",height:f,margin:"0 10px",display:"block"})}}}),i=xe.getApp("Gallery")[0];i&&i.registerPlugin(new h)})(jQuery);
|
||||
2
modules/editor/components/image_gallery/tpl/minify.ini
Normal file
2
modules/editor/components/image_gallery/tpl/minify.ini
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
[option]
|
||||
use_closure_compiler=true
|
||||
|
|
@ -1,25 +1,19 @@
|
|||
<!--%import("popup.js")-->
|
||||
<!--%import("popup.css")-->
|
||||
<!--%import("../lang")-->
|
||||
|
||||
<div id="popHeader">
|
||||
<h3 class="xeAdmin">{$component_info->title} ver. {$component_info->version}</h3>
|
||||
</div>
|
||||
|
||||
<h1 class="h1">{$component_info->title} ver. {$component_info->version}</h1>
|
||||
<form action="./" method="get" onSubmit="return false" id="fo">
|
||||
<input type="hidden" name="editor_sequence" value="{$editor_sequence}" />
|
||||
|
||||
<div id="popBody">
|
||||
|
||||
<table cellspacing="0" class="rowTable">
|
||||
<input type="hidden" name="editor_sequence" value="{$editor_sequence}" />
|
||||
<div class="table">
|
||||
<table width="100%" border="1" cellspacing="0">
|
||||
<col width="120" />
|
||||
<col />
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->width}</div></th>
|
||||
<td><input type="text" class="inputTypeText" size="3" id="width" value="400" />px</td>
|
||||
<th scope="row">{$lang->width}</th>
|
||||
<td><input type="text" size="3" id="width" value="400" />px</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->gallery_style}</div></th>
|
||||
<th scope="row">{$lang->gallery_style}</th>
|
||||
<td>
|
||||
<select id="gallery_style">
|
||||
<option value="slide">{$lang->gallery_slide_style}</option>
|
||||
|
|
@ -28,7 +22,7 @@
|
|||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->gallery_slide_align}</div></th>
|
||||
<th scope="row">{$lang->gallery_slide_align}</th>
|
||||
<td>
|
||||
<select id="gallery_align">
|
||||
<option value="center">{$lang->gallery_slide_center}</option>
|
||||
|
|
@ -38,11 +32,11 @@
|
|||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->gallery_border_thickness}</div></th>
|
||||
<td><input type="text" class="inputTypeText" size="1" id="border_thickness" value="0" />px</td>
|
||||
<th scope="row">{$lang->gallery_border_thickness}</th>
|
||||
<td><input type="text" size="1" id="border_thickness" value="0" />px</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->gallery_border_color}</div></th>
|
||||
<th scope="row">{$lang->gallery_border_color}</th>
|
||||
<td>
|
||||
<div class="editor_color_box">
|
||||
<script type="text/javascript">
|
||||
|
|
@ -51,12 +45,12 @@
|
|||
</div>
|
||||
<ul class="buttonLeft">
|
||||
<li><img src="./images/border_solid.gif" alt="blank" class="border_preview_color" id="border_preview_color" /></li>
|
||||
<li>#<input type="text" id="border_color_input" size="7" maxlength="6" class="inputTypeText" value="000000" onkeyup="manual_select_color('border',this)"/></li>
|
||||
<li>#<input type="text" id="border_color_input" size="7" maxlength="6" value="000000" onkeyup="manual_select_color('border',this)"/></li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->gallery_bg_color}</div></th>
|
||||
<th scope="row">{$lang->gallery_bg_color}</th>
|
||||
<td>
|
||||
<div class="editor_color_box">
|
||||
<script type="text/javascript">
|
||||
|
|
@ -65,12 +59,12 @@
|
|||
</div>
|
||||
<ul class="buttonLeft">
|
||||
<li><img src="./images/blank.gif" alt="blank" class="bg_preview_color" id="bg_preview_color" /></li>
|
||||
<li>#<input type="text" id="bg_color_input" size="7" maxlength="6" class="inputTypeText" value="FFFFFF" onkeyup="manual_select_color('bg',this)"/></li>
|
||||
<li>#<input type="text" id="bg_color_input" size="7" maxlength="6" value="FFFFFF" onkeyup="manual_select_color('bg',this)"/></li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->image_list}</div></th>
|
||||
<th scope="row">{$lang->image_list}</th>
|
||||
<td>
|
||||
<select id="image_list" size="6" multiple="true" class="image_list">
|
||||
</select>
|
||||
|
|
@ -79,10 +73,8 @@
|
|||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="popFooter">
|
||||
<a href="#" onclick="insertSlideShow()" class="button black strong"><span>{$lang->cmd_insert}</span></a>
|
||||
<a href="#" onclick="winopen('./?module=editor&act=dispEditorComponentInfo&component_name={$component_info->component_name}','ComponentInfo','left=10,top=10,width=10,height=10,resizable=no,scrollbars=no,toolbars=no');return false;" class="button"><span>{$lang->about_component}</span></a>
|
||||
<div class="btnArea">
|
||||
<span class="btn"><button type="button" onclick="insertSlideShow()">{$lang->cmd_insert}</button></span>
|
||||
<span class="btn"><a href="./?module=editor&act=dispEditorComponentInfo&component_name={$component_info->component_name}" target="_blank" onclick="window.open('this.href','ComponentInfo','width=10,height=10');return false;">{$lang->about_component}</a></span>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
|
|
|||
|
|
@ -1,50 +1,45 @@
|
|||
var selected_node = null;
|
||||
function getSlideShow() {
|
||||
var node, $node, selected_images = '', width, style, align, border_color, bg_color, thickness;
|
||||
|
||||
// 부모창이 있는지 체크
|
||||
if(typeof(opener)=="undefined") return;
|
||||
|
||||
// 부모 위지윅 에디터에서 선택된 영역이 있으면 처리
|
||||
var node = opener.editorPrevNode;
|
||||
var selected_images = "";
|
||||
if(node && node.nodeName == "IMG") {
|
||||
node = opener.editorPrevNode;
|
||||
$node = jQuery(node);
|
||||
if($node.is('img')) {
|
||||
selected_node = node;
|
||||
|
||||
var width = xWidth(selected_node)-4;
|
||||
var gallery_style = selected_node.getAttribute("gallery_style");
|
||||
var gallery_align = selected_node.getAttribute("gallery_align");
|
||||
var border_color = selected_node.getAttribute("border_color");
|
||||
var bg_color = selected_node.getAttribute("bg_color");
|
||||
var border_thickness = selected_node.getAttribute("border_thickness");
|
||||
if(!border_thickness) border_thickness = 1;
|
||||
width = $(node).width() - 4;
|
||||
style = $node.attr('gallery_style');
|
||||
align = $node.attr('gallery_align') || 'center';
|
||||
border_color = $node.attr('border_color');
|
||||
bg_color = $node.attr('bg_color');
|
||||
thickness = $node.attr('border_thickness') || 1;
|
||||
|
||||
xGetElementById("width").value = width;
|
||||
get_by_id('width').value = width;
|
||||
get_by_id('gallery_style').selectedIndex = (style=='list')?1:0;
|
||||
get_by_id('gallery_align').selectedIndex = (align=='left')?1:(align=='right')?2:0;
|
||||
get_by_id('border_thickness').value = thickness;
|
||||
|
||||
if(gallery_style=="list") xGetElementById("gallery_style").selectedIndex = 1;
|
||||
else xGetElementById("gallery_style").selectedIndex = 0;
|
||||
get_by_id('border_color_input').value = border_color;
|
||||
manual_select_color('border', get_by_id('border_color_input'));
|
||||
|
||||
if(!gallery_align || gallery_align=="center") xGetElementById("gallery_align").selectedIndex = 0;
|
||||
else if(gallery_align=="left") xGetElementById("gallery_align").selectedIndex = 1;
|
||||
else if(gallery_align=="right") xGetElementById("gallery_align").selectedIndex = 2;
|
||||
get_by_id('bg_color_input').value = bg_color;
|
||||
manual_select_color("bg", get_by_id('bg_color_input'));
|
||||
|
||||
xGetElementById("border_thickness").value = border_thickness;
|
||||
|
||||
xGetElementById("border_color_input").value = border_color;
|
||||
manual_select_color("border", xGetElementById("border_color_input"));
|
||||
|
||||
xGetElementById("bg_color_input").value = bg_color;
|
||||
manual_select_color("bg", xGetElementById("bg_color_input"));
|
||||
|
||||
selected_images = selected_node.getAttribute("images_list");
|
||||
selected_images = $node.attr('images_list');
|
||||
}
|
||||
|
||||
// 부모창의 업로드된 파일중 이미지 목록을 모두 가져와서 세팅
|
||||
var fo = xGetElementById("fo");
|
||||
var fo = get_by_id("fo");
|
||||
var editor_sequence = fo.editor_sequence.value;
|
||||
|
||||
var parent_list_obj = opener.xGetElementById("uploaded_file_list_"+editor_sequence);
|
||||
var parent_list_obj = opener.get_by_id("uploaded_file_list_"+editor_sequence);
|
||||
if(parent_list_obj) {
|
||||
|
||||
var list_obj = xGetElementById("image_list");
|
||||
var list_obj = get_by_id("image_list");
|
||||
|
||||
for(var i=0;i<parent_list_obj.length;i++) {
|
||||
var opt = parent_list_obj.options[i];
|
||||
|
|
@ -67,7 +62,7 @@ function insertSlideShow() {
|
|||
if(typeof(opener)=="undefined") return;
|
||||
|
||||
var list = new Array();
|
||||
var list_obj = xGetElementById("image_list");
|
||||
var list_obj = get_by_id("image_list");
|
||||
for(var i=0;i<list_obj.length;i++) {
|
||||
var opt = list_obj.options[i];
|
||||
if(opt.selected) {
|
||||
|
|
@ -83,13 +78,13 @@ function insertSlideShow() {
|
|||
return;
|
||||
}
|
||||
|
||||
var width = xGetElementById("width").value;
|
||||
var width = get_by_id("width").value;
|
||||
|
||||
var gallery_style = xGetElementById("gallery_style").options[xGetElementById("gallery_style").selectedIndex].value;
|
||||
var gallery_align = xGetElementById("gallery_align").options[xGetElementById("gallery_align").selectedIndex].value;
|
||||
var border_thickness = xGetElementById("border_thickness").value;
|
||||
var border_color = xGetElementById("border_color_input").value;
|
||||
var bg_color = xGetElementById("bg_color_input").value;
|
||||
var gallery_style = get_by_id("gallery_style").options[get_by_id("gallery_style").selectedIndex].value;
|
||||
var gallery_align = get_by_id("gallery_align").options[get_by_id("gallery_align").selectedIndex].value;
|
||||
var border_thickness = get_by_id("border_thickness").value;
|
||||
var border_color = get_by_id("border_color_input").value;
|
||||
var bg_color = get_by_id("bg_color_input").value;
|
||||
|
||||
var images_list = "";
|
||||
for(var i=0; i<list.length;i++) {
|
||||
|
|
@ -106,7 +101,7 @@ function insertSlideShow() {
|
|||
selected_node.setAttribute("images_list", images_list);
|
||||
selected_node.style.width = width+"px";
|
||||
} else {
|
||||
var text = "<img src=\"../../../../common/tpl/images/blank.gif\" editor_component=\"image_gallery\" width=\""+width+"\" gallery_style=\""+gallery_style+"\" align=\""+gallery_align+"\" gallery_align=\""+gallery_align+"\" border_thickness=\""+border_thickness+"\" border_color=\""+border_color+"\" bg_color=\""+bg_color+"\" style=\"width:"+width+"px;border:2px dotted #4371B9;background:url(./modules/editor/components/image_gallery/tpl/image_gallery_component.gif) no-repeat center;\" images_list=\""+images_list+"\" />";
|
||||
var text = "<img src=\"../../../../common/img/blank.gif\" editor_component=\"image_gallery\" width=\""+width+"\" gallery_style=\""+gallery_style+"\" align=\""+gallery_align+"\" gallery_align=\""+gallery_align+"\" border_thickness=\""+border_thickness+"\" border_color=\""+border_color+"\" bg_color=\""+bg_color+"\" style=\"width:"+width+"px;border:2px dotted #4371B9;background:url(./modules/editor/components/image_gallery/tpl/image_gallery_component.gif) no-repeat center;\" images_list=\""+images_list+"\" />";
|
||||
opener.editorFocus(opener.editorPrevSrl);
|
||||
var iframe_obj = opener.editorGetIFrame(opener.editorPrevSrl)
|
||||
opener.editorReplaceHTML(iframe_obj, text);
|
||||
|
|
@ -119,15 +114,15 @@ function insertSlideShow() {
|
|||
|
||||
/* 색상 클릭시 */
|
||||
function select_color(type, code) {
|
||||
xGetElementById(type+"_preview_color").style.backgroundColor = "#"+code;
|
||||
xGetElementById(type+"_color_input").value = code;
|
||||
get_by_id(type+"_preview_color").style.backgroundColor = "#"+code;
|
||||
get_by_id(type+"_color_input").value = code;
|
||||
}
|
||||
|
||||
/* 수동 색상 변경시 */
|
||||
function manual_select_color(type, obj) {
|
||||
if(obj.value.length!=6) return;
|
||||
code = obj.value;
|
||||
xGetElementById(type+"_preview_color").style.backgroundColor = "#"+code;
|
||||
get_by_id(type+"_preview_color").style.backgroundColor = "#"+code;
|
||||
}
|
||||
|
||||
/* 색상표를 출력 */
|
||||
|
|
@ -160,4 +155,6 @@ function printColorBlock(type, code, blank_img_src) {
|
|||
}
|
||||
}
|
||||
|
||||
xAddEventListener(window, "load", getSlideShow);
|
||||
jQuery(function($){
|
||||
getSlideShow();
|
||||
});
|
||||
|
|
|
|||
6
modules/editor/components/image_gallery/tpl/popup.min.css
vendored
Normal file
6
modules/editor/components/image_gallery/tpl/popup.min.css
vendored
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
/**
|
||||
* @file slide_gallery.js
|
||||
* @brief Slideshow type image gallery plugin
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
**/
|
||||
@charset "utf-8";@import "../../../../../modules/admin/tpl/css/admin.css";li{float:left;list-style:none;margin-right:5px}img.bg_preview_color{width:30px;height:16px;border:1px solid #000000;background-color:#FFFFFF}img.border_preview_color{width:30px;height:16px;border:1px solid #EEEEEE;background-color:#000000}img.color_icon{width:14px;height:14px;border:1px solid #FFFFFF}img.color_icon_over{width:14px;height:14px;border:1px solid #000000;cursor:pointer}.editor_color_box{clear:both;height:65px;width:400px;border:1px solid #DDDDDD;padding:2px}.image_list{width:100%;border:1px solid #EEEEEE;height:200px !important}
|
||||
10
modules/editor/components/image_gallery/tpl/popup.min.js
vendored
Normal file
10
modules/editor/components/image_gallery/tpl/popup.min.js
vendored
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
var selected_node=null;
|
||||
function getSlideShow(){var c,b,d="",e,a,f,g;if(typeof opener!="undefined"){c=opener.editorPrevNode;b=jQuery(c);if(b.is("img"))selected_node=c,d=$(c).width()-4,c=b.attr("gallery_style"),e=b.attr("gallery_align")||"center",a=b.attr("border_color"),f=b.attr("bg_color"),g=b.attr("border_thickness")||1,get_by_id("width").value=d,get_by_id("gallery_style").selectedIndex=c=="list"?1:0,get_by_id("gallery_align").selectedIndex=e=="left"?1:e=="right"?2:0,get_by_id("border_thickness").value=g,get_by_id("border_color_input").value=
|
||||
a,manual_select_color("border",get_by_id("border_color_input")),get_by_id("bg_color_input").value=f,manual_select_color("bg",get_by_id("bg_color_input")),d=b.attr("images_list");b=get_by_id("fo").editor_sequence.value;if(b=opener.get_by_id("uploaded_file_list_"+b)){c=get_by_id("image_list");for(e=0;e<b.length;e++){a=b.options[e];f=a.value;if(!f)break;f=opener.uploadedFiles[f].download_url.replace(request_uri,"");/(jpg|jpeg|gif|png)$/i.test(f)&&(g=!1,d.indexOf(f)!=-1&&(g=!0),a=new Option(a.text,a.value,
|
||||
!1,g),c.options.add(a))}}}}
|
||||
function insertSlideShow(){if(typeof opener!="undefined"){for(var c=[],b=get_by_id("image_list"),d=0;d<b.length;d++){var e=b.options[d];e.selected&&(e=opener.uploadedFiles[e.value].download_url.replace(request_uri,""),c[c.length]=e)}if(c.length){for(var b=get_by_id("width").value,e=get_by_id("gallery_style").options[get_by_id("gallery_style").selectedIndex].value,a=get_by_id("gallery_align").options[get_by_id("gallery_align").selectedIndex].value,f=get_by_id("border_thickness").value,g=get_by_id("border_color_input").value,
|
||||
i=get_by_id("bg_color_input").value,h="",d=0;d<c.length;d++)h+=c[d].trim()+" ";selected_node?(selected_node.setAttribute("width",b),selected_node.setAttribute("gallery_style",e),selected_node.setAttribute("align",a),selected_node.setAttribute("gallery_align",a),selected_node.setAttribute("border_thickness",f),selected_node.setAttribute("border_color",g),selected_node.setAttribute("bg_color",i),selected_node.setAttribute("images_list",h),selected_node.style.width=b+"px"):(c='<img src="../../../../common/img/blank.gif" editor_component="image_gallery" width="'+
|
||||
b+'" gallery_style="'+e+'" align="'+a+'" gallery_align="'+a+'" border_thickness="'+f+'" border_color="'+g+'" bg_color="'+i+'" style="width:'+b+'px;border:2px dotted #4371B9;background:url(./modules/editor/components/image_gallery/tpl/image_gallery_component.gif) no-repeat center;" images_list="'+h+'" />',opener.editorFocus(opener.editorPrevSrl),d=opener.editorGetIFrame(opener.editorPrevSrl),opener.editorReplaceHTML(d,c));opener.editorFocus(opener.editorPrevSrl)}window.close()}}
|
||||
function select_color(c,b){get_by_id(c+"_preview_color").style.backgroundColor="#"+b;get_by_id(c+"_color_input").value=b}function manual_select_color(c,b){if(b.value.length==6)code=b.value,get_by_id(c+"_preview_color").style.backgroundColor="#"+code}
|
||||
function printColor(c,b){for(var d=["22","44","66","88","AA","CC","EE"],e="",a=0;a<8;a+=1)e+=printColorBlock(c,a.toString(16)+a.toString(16)+a.toString(16)+a.toString(16)+a.toString(16)+a.toString(16),b);for(a=0;a<d.length;a+=3)for(var f=0;f<d.length;f+=2)for(var g=0;g<d.length;g++)e+=printColorBlock(c,d[a]+d[f]+d[g],b);for(a=8;a<16;a+=1)e+=printColorBlock(c,a.toString(16)+a.toString(16)+a.toString(16)+a.toString(16)+a.toString(16)+a.toString(16),b);document.write(e)}
|
||||
function printColorBlock(c,b,d){return'<div style="float:left;background-color:#'+b+'"><img src="'+d+'" class="color_icon" onmouseover="this.className=\'color_icon_over\'" onmouseout="this.className=\'color_icon\'" onclick="select_color(\''+c+"','"+b+'\')" alt="color" /></div>'}jQuery(function(){getSlideShow()});
|
||||
|
|
@ -1,26 +1,39 @@
|
|||
<!--%import("slide_gallery.js")-->
|
||||
<!--%import("slide_gallery.css")-->
|
||||
<!--%import("../lang")-->
|
||||
<script type='text/javascript'>
|
||||
// 이미지갤러리에 보여줄 이미지 등록
|
||||
<!--@foreach($gallery_info->images_list as $image)-->
|
||||
slide_gallery_add_image({$gallery_info->srl},'{$image}');
|
||||
<!--@end-->
|
||||
<!--@if(__DEBUG__)-->
|
||||
<load target="gallery.js" />
|
||||
<load target="slide_gallery.js" />
|
||||
<load target="slide_gallery.css" />
|
||||
<!--@else-->
|
||||
<load target="gallery.min.js" />
|
||||
<load target="slide_gallery.min.js" />
|
||||
<load target="slide_gallery.min.css" />
|
||||
<!--@end-->
|
||||
<script type="text/javascript">
|
||||
(function(){
|
||||
|
||||
// window.onLoad 이벤트 후에 이미지갤러리 시작
|
||||
xAddEventListener(window,'load',start_slide_gallery);
|
||||
var gallery = xe.getApp('gallery')[0];
|
||||
|
||||
// Add images
|
||||
<!--@foreach($gallery_info->images_list as $img)-->
|
||||
gallery.cast('ADD_IMAGE', [{$gallery_info->srl}, '{$img}']);
|
||||
<!--@end-->
|
||||
|
||||
gallery.cast('SET_STYLE', [{$gallery_info->srl}, 'slide']);
|
||||
|
||||
})();
|
||||
</script>
|
||||
|
||||
<div align="{$gallery_info->gallery_align}">
|
||||
<div id='zone_image_navigator_{$gallery_info->srl}' class="slide_gallery_navigator_box">
|
||||
<a href="#" onclick="gallery_view_prev('{$gallery_info->srl}');return false;"><img src="./images/prev.gif" alt="{$lang->cmd_gallery_prev}" title="{$lang->cmd_gallery_prev}" border="0" /></a>
|
||||
<span class="zone_gallery_navigator_status" title="{$lang->cmd_gallery_thumbnail}" id="zone_gallery_navigator_status_{$gallery_info->srl}" onclick="gallery_view_thumbnail('{$gallery_info->srl}');return false;">1/1</span>
|
||||
<a href="#" onclick="gallery_view_next('{$gallery_info->srl}');return false;"><img src="./images/next.gif" alt="{$lang->cmd_gallery_next}" title="{$lang->cmd_gallery_next}" border="0" /></a>
|
||||
<div id="zone_slide_gallery_{$gallery_info->srl}" align="{$gallery_info->gallery_align}">
|
||||
<div class="slide_gallery_navigator_box">
|
||||
<a href="#" class="__prev"><img src="./images/prev.gif" alt="{$lang->cmd_gallery_prev}" title="{$lang->cmd_gallery_prev}" border="0" /></a>
|
||||
<span class="zone_gallery_navigator_status" title="{$lang->cmd_gallery_thumbnail}" id="zone_gallery_navigator_status_{$gallery_info->srl}">1/1</span>
|
||||
<a href="#" class="__next"><img src="./images/next.gif" alt="{$lang->cmd_gallery_next}" title="{$lang->cmd_gallery_next}" border="0" /></a>
|
||||
</div>
|
||||
<div id='zone_slide_gallery_{$gallery_info->srl}' style="width:{$gallery_info->width}px;background-color:#{$gallery_info->bg_color};border:{$gallery_info->border_thickness}px solid #{$gallery_info->border_color};text-align:left;">
|
||||
<div id='zone_thumbnail_{$gallery_info->srl}' class="slide_gallery_thumbnail_image_box" style="display:none"></div>
|
||||
<div id="slide_gallery_loading_text_{$gallery_info->srl}" class="slide_gallery_loading_text">loading images...</div>
|
||||
<img id="slide_gallery_main_image_{$gallery_info->srl}" border="0" style="display:none" alt="slide_gallery" src="./images/blank.gif" />
|
||||
<div style="width:{$gallery_info->width}px;background-color:#{$gallery_info->bg_color};border:{$gallery_info->border_thickness}px solid #{$gallery_info->border_color};text-align:left;">
|
||||
<div class="slide_gallery_thumbnail_image_box" style="display:none"></div>
|
||||
<div class="slide_gallery_loading_text">Loading images...</div>
|
||||
<div class="slide_gallery_placeholder"></div>
|
||||
<img border="0" style="display:none" alt="slide_gallery" src="./images/blank.gif" />
|
||||
</div>
|
||||
<div id='zone_gallery_image_filename_{$gallery_info->srl}' class="slide_gallery_filename"></div>
|
||||
<div class="slide_gallery_filename"></div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -1,196 +1,131 @@
|
|||
/**
|
||||
* @file slide_gallery.js
|
||||
* @brief 이미지 이미지갤러리 쇼 스크립트
|
||||
* @brief Slideshow type image gallery plugin
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
**/
|
||||
|
||||
// 이미지갤러리쇼를 하기 위한 변수
|
||||
var slide_gallery_images = new Array();
|
||||
var thumbnail_zone_height = new Array();
|
||||
(function($){
|
||||
|
||||
// 이미지갤러리쇼 이미지 목록에 추가
|
||||
function slide_gallery_add_image(srl, image_url) {
|
||||
if(!image_url) return;
|
||||
if(image_url.indexOf('files')==0) image_url = request_uri+image_url;
|
||||
var slideShow = xe.createPlugin('slideShow', {
|
||||
_holders : {},
|
||||
_thumbs : {},
|
||||
_current : {},
|
||||
|
||||
// 객체 생성
|
||||
var obj = {"srl":0, "thumbnail_url":null, "thumbnail":null, "image_url":null, "image":null}
|
||||
init : function() {
|
||||
this._holders = {};
|
||||
this._thumbs = {};
|
||||
this._current = {};
|
||||
},
|
||||
|
||||
// slide_gallery_images에 이미지갤러리 쇼 고유번호에 해당하는 공간을 초기화
|
||||
if(typeof(slide_gallery_images[srl])=="undefined") slide_gallery_images[srl] = new Array();
|
||||
API_SHOW_SLIDE : function(sender, params) {
|
||||
var self=this, srl = params[0], key = '@'+srl, imgs, $zone, $thumb, $holder, i, c;
|
||||
|
||||
// 이미지갤러리쇼 고유번호를 세팅
|
||||
obj.srl = srl;
|
||||
obj.idx = slide_gallery_images[srl].length;
|
||||
obj.image_url = image_url;
|
||||
imgs = this.cast('GET_IMAGES', [srl]);
|
||||
if(!imgs.length) return;
|
||||
|
||||
// 원본 이미지를 미리 로딩
|
||||
obj.image = new Image();
|
||||
obj.image.src = image_url;
|
||||
//if(!obj.image.width) return;
|
||||
$zone = $('#zone_slide_gallery_'+srl);
|
||||
$holder = $zone.find('.slide_gallery_placeholder').css('overflow', 'hidden');
|
||||
|
||||
// 섬네일 이미지를 미리 로딩
|
||||
obj.thumbnail = new Image();
|
||||
obj.thumbnail.src = image_url;
|
||||
obj.thumbnail.style.cursor = "pointer";
|
||||
obj.thumbnail.style.width = "60px";
|
||||
obj.thumbnail.style.height = "60px";
|
||||
obj.thumbnail.style.margin = "5px";
|
||||
obj.thumbnail.style.opacity = 0.5;
|
||||
obj.thumbnail.style.filter = "alpha(opacity=50)";
|
||||
// remove loading message
|
||||
$zone.find('.slide_gallery_loading_text').remove();
|
||||
|
||||
// 섬네일 클릭시 메인 이미지로 바꾸어줌
|
||||
xAddEventListener(obj.thumbnail, "mousedown", function() { display_gallery_image(obj) });
|
||||
// create thumbnails
|
||||
$thumb = $zone.find('.slide_gallery_thumbnail_image_box').show();
|
||||
for(i=0,c=imgs.length; i < c; i++) {
|
||||
imgs[i].$obj.clone()
|
||||
.css({
|
||||
cursor : 'pointer',
|
||||
width : '60px',
|
||||
height : '60px',
|
||||
margin : '5px',
|
||||
opacity : 0.5
|
||||
})
|
||||
.click({idx:i}, function(event){
|
||||
self.cast('SET_SLIDE', [srl, event.data.idx]);
|
||||
})
|
||||
.appendTo($thumb);
|
||||
}
|
||||
|
||||
// 생성된 객체를 slide_gallery_images[이미지갤러리쇼 고유번호]에 추가
|
||||
slide_gallery_images[srl][slide_gallery_images[srl].length] = obj;
|
||||
}
|
||||
$('#zone_gallery_navigator_status_'+srl).click(function(){ $thumb.toggle() });
|
||||
|
||||
// 이미지갤러리쇼 시작
|
||||
function start_slide_gallery() {
|
||||
// navigation
|
||||
$zone
|
||||
.find('.__prev')
|
||||
.click(function(){ self.cast('PREV_SLIDE', [srl]); return false; })
|
||||
.end()
|
||||
.find('.__next')
|
||||
.click(function(){ self.cast('NEXT_SLIDE', [srl]); return false; })
|
||||
|
||||
// 등록된 모든 이미지 목록을 돌면서 thumbnail 목록을 만들어줌
|
||||
for(var srl in slide_gallery_images) {
|
||||
this._holders[key] = $holder;
|
||||
this._thumbs[key] = $thumb;
|
||||
this._current[key] = 0;
|
||||
|
||||
// 등록된 이미지가 없으면 pass~
|
||||
if(!slide_gallery_images[srl].length) continue;
|
||||
this.cast('SET_SLIDE', [srl, 0]);
|
||||
},
|
||||
_showSideSlide : function(srl, pos) {
|
||||
var imgs, cur, side;
|
||||
|
||||
// 메인이미지가 나올 곳과 섬네일이 노출될 곳의 객체를 구함
|
||||
var zone_thumbnail = xGetElementById('zone_thumbnail_'+srl);
|
||||
imgs = this.cast('GET_IMAGES', [srl]);
|
||||
if(!imgs.length) return;
|
||||
|
||||
// 섬네일 출력
|
||||
for(var i=0; i<slide_gallery_images[srl].length;i++) {
|
||||
zone_thumbnail.appendChild(slide_gallery_images[srl][i].thumbnail);
|
||||
}
|
||||
thumbnail_zone_height[srl] = xHeight(zone_thumbnail)+20;
|
||||
cur = this._current['@'+srl];
|
||||
side = cur + pos;
|
||||
|
||||
// 첫번째 이미지의 경우 큰 이미지 출력 시작 이미지 출력
|
||||
display_gallery_image(slide_gallery_images[srl][0],true);
|
||||
if(side < 0) side = imgs.length - 1;
|
||||
else if(side >= imgs.length) side = 0;
|
||||
|
||||
// 로딩 텍스트 없앰
|
||||
xGetElementById("slide_gallery_loading_text_"+srl).style.display = "none";
|
||||
xGetElementById("slide_gallery_main_image_"+srl).style.display = "block";
|
||||
}
|
||||
}
|
||||
this.cast('SET_SLIDE', [srl, side]);
|
||||
},
|
||||
API_NEXT_SLIDE : function(sender, params) {
|
||||
this._showSideSlide(params[0], +1);
|
||||
},
|
||||
API_PREV_SLIDE : function(sender, params) {
|
||||
this._showSideSlide(params[0], -1);
|
||||
},
|
||||
API_SET_SLIDE : function(sender, params) {
|
||||
var srl = params[0], idx = params[1], imgs, im, $holder, iwidth, w1, w2, h1, h2, scale;
|
||||
|
||||
// 메인 이미지 표시
|
||||
function display_gallery_image(obj, is_first_display) {
|
||||
// 처음으로 요청되는지에 대한 검사
|
||||
if(typeof(is_first_display)=="undefined") is_first_display = false;
|
||||
imgs = this.cast('GET_IMAGES', [srl]);
|
||||
if(!imgs.length) return;
|
||||
if(!is_def(im=imgs[idx])) return;
|
||||
|
||||
// 섬네일 영역
|
||||
var zone_thumbnail = xGetElementById('zone_thumbnail_'+obj.srl);
|
||||
// set current
|
||||
this._current['@'+srl] = idx;
|
||||
|
||||
// 슬라이드 갤러리의 영역
|
||||
var zone = xGetElementById('zone_slide_gallery_' + obj.srl );
|
||||
// change index indicator
|
||||
$('#zone_gallery_navigator_status_'+srl).text((idx+1)+'/'+imgs.length);
|
||||
|
||||
// 슬라이드 갤러리 영역의 정확한 크기를 위해서 border값 검사 (border는 조절 가능하기에)
|
||||
var borderTop = parseInt(zone.style.borderTopWidth.replace(/px$/,''),10);
|
||||
var borderLeft = parseInt(zone.style.borderLeftWidth.replace(/px$/,''),10);
|
||||
var borderRight = parseInt(zone.style.borderRightWidth.replace(/px$/,''),10);
|
||||
var borderBottom = parseInt(zone.style.borderBottomWidth.replace(/px$/,''),10);
|
||||
// highlight next thunmbnail
|
||||
this._thumbs['@'+srl]
|
||||
.find('img')
|
||||
.eq(idx)
|
||||
.animate({opacity:1})
|
||||
.end()
|
||||
.not(':eq('+idx+')')
|
||||
.animate({opacity:0.5});
|
||||
|
||||
// 갤러리 영역의 가로 길이 구함
|
||||
var zone_width = xWidth(zone)-borderLeft-borderRight;
|
||||
// show next image smoothly
|
||||
$holder = this._holders['@'+srl];
|
||||
iwidth = $holder.parent().innerWidth();
|
||||
w1 = im.$obj.prop('width');
|
||||
h1 = im.$obj.prop('height');
|
||||
|
||||
// 이미지 크기가 갤러리 영역보다 클 경우를 계산하기 위한 비율 변수 설정
|
||||
var resize_scale = 1;
|
||||
if(w1 > iwidth - 20) {
|
||||
w2 = iwidth - 20;
|
||||
scale = w2 / w1;
|
||||
h2 = Math.floor(h1 * scale);
|
||||
|
||||
// 이미지의 크기 구함
|
||||
var image_width = obj.image.width;
|
||||
var image_height = obj.image.height;
|
||||
w1 = w2; h1 = h2;
|
||||
im.$obj.css('cursor', 'pointer');
|
||||
im.$obj.attr('rel', 'xe_gallery');
|
||||
}
|
||||
|
||||
// 이미지갤러리 쇼 박스보다 큰 이미지는 크기를 줄여서 출력 (ersize_scale 조절)
|
||||
if(image_width>(zone_width-20)) {
|
||||
resize_scale = (zone_width-20)/image_width;
|
||||
image_width = parseInt(image_width*resize_scale,10);
|
||||
image_height = parseInt(image_height*resize_scale,10);
|
||||
}
|
||||
var x = parseInt((zone_width - image_width)/2,10);
|
||||
im.$obj.css({width:w1, height:h1, margin:'0 10px'});
|
||||
$holder.empty().append(im.$obj);
|
||||
}
|
||||
});
|
||||
|
||||
// 이미지 표시
|
||||
var target_image = xGetElementById("slide_gallery_main_image_"+obj.srl);
|
||||
|
||||
target_image.style.marginLeft = x+"px";
|
||||
|
||||
target_image.srl = obj.srl;
|
||||
target_image.idx = obj.idx;
|
||||
target_image.style.opacity = 1;
|
||||
target_image.style.filter = "alpha(opacity=100)";
|
||||
target_image.start_opacity = 0;
|
||||
xWidth(target_image, image_width);
|
||||
xHeight(target_image, image_height);
|
||||
target_image.src = obj.image.src;
|
||||
|
||||
if(image_height<200) {
|
||||
target_image.style.marginTop = (100-image_height/2)+"px";
|
||||
target_image.style.marginBottom = (100-image_height/2)+"px";
|
||||
} else {
|
||||
target_image.style.marginTop = "10px";
|
||||
target_image.style.marginBottom = "10px";
|
||||
}
|
||||
|
||||
if(typeof(showOriginalImage)=='function') {
|
||||
if(resize_scale!=1) {
|
||||
xAddEventListener(target_image, 'click', showOriginalImage);
|
||||
target_image.style.cursor = 'pointer';
|
||||
} else {
|
||||
xRemoveEventListener(target_image, 'click', showOriginalImage);
|
||||
target_image.style.cursor = 'default';
|
||||
}
|
||||
}
|
||||
|
||||
// resize_scale이 1이 아니면, 즉 리사이즈 되었다면 해당 이미지 클릭시 원본을 새창으로 띄워줌
|
||||
var next_idx = obj.idx+1;
|
||||
if(slide_gallery_images[obj.srl].length<=next_idx) next_idx = 0;
|
||||
|
||||
// srl의 모든 섬네일의 투명도 조절
|
||||
for(var i=0; i<slide_gallery_images[obj.srl].length;i++) {
|
||||
if(i==obj.idx) {
|
||||
slide_gallery_images[obj.srl][i].thumbnail.style.opacity = 1;
|
||||
slide_gallery_images[obj.srl][i].thumbnail.style.filter = "alpha(opacity=100)";
|
||||
} else {
|
||||
slide_gallery_images[obj.srl][i].thumbnail.style.opacity = 0.5;
|
||||
slide_gallery_images[obj.srl][i].thumbnail.style.filter = "alpha(opacity=50)";
|
||||
}
|
||||
}
|
||||
|
||||
// 파일 이름 추가
|
||||
var source_filename = obj.image_url;
|
||||
var tmp_arr = source_filename.split('/');
|
||||
var filename = tmp_arr[tmp_arr.length-1];
|
||||
xInnerHtml("zone_gallery_image_filename_"+obj.srl, "<a href='#' onclick=\"winopen('"+source_filename+"');return false;\">"+decodeURI(filename)+"</a>");
|
||||
|
||||
// 네이게이션 영역의 숫자 변경
|
||||
var zone_navigator = xGetElementById("zone_gallery_navigator_status_"+obj.srl);
|
||||
var html = (obj.idx+1) + " / " + slide_gallery_images[obj.srl].length;
|
||||
xInnerHtml(zone_navigator, html);
|
||||
}
|
||||
|
||||
// 이전 보기
|
||||
function gallery_view_prev(srl) {
|
||||
var target_image = xGetElementById("slide_gallery_main_image_"+srl);
|
||||
var idx = target_image.idx;
|
||||
var max_length = slide_gallery_images[srl].length;
|
||||
idx--;
|
||||
if(idx<0) idx = max_length-1;
|
||||
display_gallery_image(slide_gallery_images[srl][idx]);
|
||||
}
|
||||
|
||||
// 다음 보기
|
||||
function gallery_view_next(srl) {
|
||||
var target_image = xGetElementById("slide_gallery_main_image_"+srl);
|
||||
var idx = target_image.idx;
|
||||
var max_length = slide_gallery_images[srl].length;
|
||||
idx++;
|
||||
if(idx>max_length-1) idx = 0;
|
||||
display_gallery_image(slide_gallery_images[srl][idx]);
|
||||
}
|
||||
|
||||
// 섬네일 보기
|
||||
function gallery_view_thumbnail(srl) {
|
||||
var thumbnail_zone = xGetElementById("zone_thumbnail_"+srl);
|
||||
if(thumbnail_zone.style.display == "none") thumbnail_zone.style.display = "block";
|
||||
else thumbnail_zone.style.display = "none";
|
||||
}
|
||||
var gallery = xe.getApp('Gallery')[0];
|
||||
if(gallery) gallery.registerPlugin(new slideShow);
|
||||
|
||||
})(jQuery);
|
||||
|
|
|
|||
6
modules/editor/components/image_gallery/tpl/slide_gallery.min.css
vendored
Normal file
6
modules/editor/components/image_gallery/tpl/slide_gallery.min.css
vendored
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
/**
|
||||
* @file slide_gallery.js
|
||||
* @brief Slideshow type image gallery plugin
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
**/
|
||||
@charset "utf-8";.slide_gallery_loading_text{color:#555555;font-size:8pt;font-family:tahoma;font-weight:bold;margin:20px 0px 20px 0px;text-align:center}.slide_gallery_navigator_box{font-size:9pt;text-align:center;margin:5px 0px 5px 0px}.zone_gallery_navigator_status{color:#444444;font-family:verdana;font-size:8pt;cursor:pointer}.slide_gallery_navigator_box img{vertical-align:bottom}.slide_gallery_main_image_box{border:3px solid #EEEEEE;margin:10px}.slide_gallery_thumbnail_image_box{margin:10px;text-align:center}.slide_gallery_thumbnail_image_box img{border:1px solid #555555;padding:1px;margin:4px}.slide_gallery_filename{margin:5px 0px 10px 0px}.slide_gallery_filename A{color:#000000;text-decoration:none}
|
||||
9
modules/editor/components/image_gallery/tpl/slide_gallery.min.js
vendored
Normal file
9
modules/editor/components/image_gallery/tpl/slide_gallery.min.js
vendored
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
/**
|
||||
* @file slide_gallery.js
|
||||
* @brief Slideshow type image gallery plugin
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
**/
|
||||
(function(k){var m=xe.createPlugin("slideShow",{_holders:{},_thumbs:{},_current:{},init:function(){this._holders={};this._thumbs={};this._current={}},API_SHOW_SLIDE:function(g,e){var b=this,a=e[0],c="@"+a,d,f,j,i,h,l;d=this.cast("GET_IMAGES",[a]);if(d.length){f=k("#zone_slide_gallery_"+a);i=f.find(".slide_gallery_placeholder").css("overflow","hidden");f.find(".slide_gallery_loading_text").remove();j=f.find(".slide_gallery_thumbnail_image_box").show();h=0;for(l=d.length;h<l;h++)d[h].$obj.clone().css({cursor:"pointer",
|
||||
width:"60px",height:"60px",margin:"5px",opacity:0.5}).click({idx:h},function(c){b.cast("SET_SLIDE",[a,c.data.idx])}).appendTo(j);k("#zone_gallery_navigator_status_"+a).click(function(){j.toggle()});f.find(".__prev").click(function(){b.cast("PREV_SLIDE",[a]);return!1}).end().find(".__next").click(function(){b.cast("NEXT_SLIDE",[a]);return!1});this._holders[c]=i;this._thumbs[c]=j;this._current[c]=0;this.cast("SET_SLIDE",[a,0])}},_showSideSlide:function(g,e){var b,a;b=this.cast("GET_IMAGES",[g]);b.length&&
|
||||
(a=this._current["@"+g]+e,a<0?a=b.length-1:a>=b.length&&(a=0),this.cast("SET_SLIDE",[g,a]))},API_NEXT_SLIDE:function(g,e){this._showSideSlide(e[0],1)},API_PREV_SLIDE:function(g,e){this._showSideSlide(e[0],-1)},API_SET_SLIDE:function(g,e){var b=e[0],a=e[1],c,d,f;c=this.cast("GET_IMAGES",[b]);if(c.length&&is_def(d=c[a]))this._current["@"+b]=a,k("#zone_gallery_navigator_status_"+b).text(a+1+"/"+c.length),this._thumbs["@"+b].find("img").eq(a).animate({opacity:1}).end().not(":eq("+a+")").animate({opacity:0.5}),
|
||||
b=this._holders["@"+b],c=b.parent().innerWidth(),a=d.$obj.prop("width"),f=d.$obj.prop("height"),a>c-20&&(c-=20,f=Math.floor(f*(c/a)),a=c,d.$obj.css("cursor","pointer"),d.$obj.attr("rel","xe_gallery")),d.$obj.css({width:a,height:f,margin:"0 10px"}),b.empty().append(d.$obj)}}),i=xe.getApp("Gallery")[0];i&&i.registerPlugin(new m)})(jQuery);
|
||||
|
|
@ -1,108 +1,107 @@
|
|||
<?php
|
||||
/**
|
||||
* @class image_link
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief 이미지를 추가하거나 속성을 수정하는 컴포넌트
|
||||
**/
|
||||
|
||||
class image_link extends EditorHandler {
|
||||
|
||||
// editor_sequence 는 에디터에서 필수로 달고 다녀야 함....
|
||||
var $editor_sequence = 0;
|
||||
var $component_path = '';
|
||||
|
||||
/**
|
||||
* @brief editor_sequence과 컴포넌트의 경로를 받음
|
||||
**/
|
||||
function image_link($editor_sequence, $component_path) {
|
||||
$this->editor_sequence = $editor_sequence;
|
||||
$this->component_path = $component_path;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief popup window요청시 popup window에 출력할 내용을 추가하면 된다
|
||||
**/
|
||||
function getPopupContent() {
|
||||
// 템플릿을 미리 컴파일해서 컴파일된 소스를 return
|
||||
$tpl_path = $this->component_path.'tpl';
|
||||
$tpl_file = 'popup.html';
|
||||
|
||||
Context::set("tpl_path", $tpl_path);
|
||||
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
return $oTemplate->compile($tpl_path, $tpl_file);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 에디터 컴포넌트가 별도의 고유 코드를 이용한다면 그 코드를 html로 변경하여 주는 method
|
||||
*
|
||||
* 이미지나 멀티미디어, 설문등 고유 코드가 필요한 에디터 컴포넌트는 고유코드를 내용에 추가하고 나서
|
||||
* DocumentModule::transContent() 에서 해당 컴포넌트의 transHtml() method를 호출하여 고유코드를 html로 변경
|
||||
**/
|
||||
function transHTML($xml_obj) {
|
||||
$src = $xml_obj->attrs->src;
|
||||
$width = $xml_obj->attrs->width;
|
||||
$height = $xml_obj->attrs->height;
|
||||
$align = $xml_obj->attrs->align;
|
||||
$alt = $xml_obj->attrs->alt;
|
||||
$border = (int)$xml_obj->attrs->border;
|
||||
$link_url = $xml_obj->attrs->link_url;
|
||||
$open_window = $xml_obj->attrs->open_window;
|
||||
$style = $xml_obj->attrs->style;
|
||||
$margin = (int)$xml_obj->attrs->margin;
|
||||
|
||||
if(!$alt) {
|
||||
$tmp_arr = explode('/',$src);
|
||||
$alt = array_pop($tmp_arr);
|
||||
}
|
||||
|
||||
$src = str_replace(array('&','"'), array('&','&qout;'), $src);
|
||||
$src = str_replace('&amp;', '&', $src);
|
||||
|
||||
if(!$alt) $alt = $src;
|
||||
// 이미지 주소를 request uri가 포함된 주소로 변환 (rss출력, 등등을 위함)
|
||||
$temp_src = explode('/', $src);
|
||||
if(substr($src, 0,2)=='./') $src = Context::getRequestUri().substr($src, 2);
|
||||
elseif(substr($src , 0, 1)=='/') {
|
||||
if($_SERVER['HTTPS']=='on') $http_src = 'https://';
|
||||
else $http_src = 'http://';
|
||||
$src = $http_src.$_SERVER['HTTP_HOST'].$src;
|
||||
}
|
||||
elseif(!strpos($temp_src[0],':') && $src) $src = Context::getRequestUri().$src;
|
||||
|
||||
$attr_output = array();
|
||||
$attr_output = array("src=\"".$src."\"");
|
||||
if($alt) {
|
||||
$attr_output[] = "alt=\"".$alt."\"";
|
||||
$attr_output[] = "title=\"".$alt."\"";
|
||||
}
|
||||
if($margin) {
|
||||
$style = trim(preg_replace('/margin[a-z\-]*[ ]*:[ ]*[0-9 a-z]+(;| )/i','', $style)).';';
|
||||
$style = str_replace(';;',';',$style);
|
||||
if($style == ';') $style = '';
|
||||
$style .= ' margin:'.$margin.'px;';
|
||||
}
|
||||
if($align) $attr_output[] = "align=\"".$align."\"";
|
||||
|
||||
if(preg_match("/\.png$/i",$src)) $attr_output[] = "class=\"iePngFix\"";
|
||||
|
||||
if($width) $attr_output[] = 'width="'.$width.'"';
|
||||
if($height) $attr_output[] = 'height="'.$height.'"';
|
||||
if($border) {
|
||||
$style = trim(preg_replace('/border[a-z\-]*[ ]*:[ ]*[0-9 a-z]+(;| )/i','', $style)).';';
|
||||
$style = str_replace(';;',';',$style);
|
||||
if($style == ';') $style = '';
|
||||
$style .= ' border-style: solid; border-width:'.$border.'px;';
|
||||
}
|
||||
|
||||
$code = sprintf("<img %s style=\"%s\" />", implode(' ',$attr_output), $style);
|
||||
|
||||
if($link_url) {
|
||||
if($open_window =='Y') $code = sprintf('<a href="%s" onclick="window.open(this.href);return false;">%s</a>', $link_url, $code);
|
||||
else $code = sprintf('<a href="%s" >%s</a>', $link_url, $code);
|
||||
}
|
||||
return $code;
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
/**
|
||||
* @class image_link
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief Add an image, or to modify the properties of components
|
||||
**/
|
||||
|
||||
class image_link extends EditorHandler {
|
||||
// editor_sequence from the editor must attend mandatory wearing ....
|
||||
var $editor_sequence = 0;
|
||||
var $component_path = '';
|
||||
|
||||
/**
|
||||
* @brief editor_sequence and components out of the path
|
||||
**/
|
||||
function image_link($editor_sequence, $component_path) {
|
||||
$this->editor_sequence = $editor_sequence;
|
||||
$this->component_path = $component_path;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief popup window to display in popup window request is to add content
|
||||
**/
|
||||
function getPopupContent() {
|
||||
// Pre-compiled source code to compile template return to
|
||||
$tpl_path = $this->component_path.'tpl';
|
||||
$tpl_file = 'popup.html';
|
||||
|
||||
Context::set("tpl_path", $tpl_path);
|
||||
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
return $oTemplate->compile($tpl_path, $tpl_file);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Editor of the components separately if you use a unique code to the html code for a method to change
|
||||
*
|
||||
* Images and multimedia, seolmundeung unique code is required for the editor component added to its own code, and then
|
||||
* DocumentModule:: transContent() of its components transHtml() method call to change the html code for your own
|
||||
**/
|
||||
function transHTML($xml_obj) {
|
||||
$src = $xml_obj->attrs->src;
|
||||
$width = $xml_obj->attrs->width;
|
||||
$height = $xml_obj->attrs->height;
|
||||
$align = $xml_obj->attrs->align;
|
||||
$alt = $xml_obj->attrs->alt;
|
||||
$border = (int)$xml_obj->attrs->border;
|
||||
$link_url = $xml_obj->attrs->link_url;
|
||||
$open_window = $xml_obj->attrs->open_window;
|
||||
$style = $xml_obj->attrs->style;
|
||||
$margin = (int)$xml_obj->attrs->margin;
|
||||
|
||||
if(!$alt) {
|
||||
$tmp_arr = explode('/',$src);
|
||||
$alt = array_pop($tmp_arr);
|
||||
}
|
||||
|
||||
$src = str_replace(array('&','"'), array('&','&qout;'), $src);
|
||||
$src = str_replace('&amp;', '&', $src);
|
||||
|
||||
if(!$alt) $alt = $src;
|
||||
// Image containing the address to the address conversion request uri (rss output, etc. purposes)
|
||||
$temp_src = explode('/', $src);
|
||||
if(substr($src, 0,2)=='./') $src = Context::getRequestUri().substr($src, 2);
|
||||
elseif(substr($src , 0, 1)=='/') {
|
||||
if($_SERVER['HTTPS']=='on') $http_src = 'https://';
|
||||
else $http_src = 'http://';
|
||||
$src = $http_src.$_SERVER['HTTP_HOST'].$src;
|
||||
}
|
||||
elseif(!strpos($temp_src[0],':') && $src) $src = Context::getRequestUri().$src;
|
||||
|
||||
$attr_output = array();
|
||||
$attr_output = array("src=\"".$src."\"");
|
||||
if($alt) {
|
||||
$attr_output[] = "alt=\"".$alt."\"";
|
||||
$attr_output[] = "title=\"".$alt."\"";
|
||||
}
|
||||
if($margin) {
|
||||
$style = trim(preg_replace('/margin[a-z\-]*[ ]*:[ ]*[0-9 a-z]+(;| )/i','', $style)).';';
|
||||
$style = str_replace(';;',';',$style);
|
||||
if($style == ';') $style = '';
|
||||
$style .= ' margin:'.$margin.'px;';
|
||||
}
|
||||
if($align) $attr_output[] = "align=\"".$align."\"";
|
||||
|
||||
if(preg_match("/\.png$/i",$src)) $attr_output[] = "class=\"iePngFix\"";
|
||||
|
||||
if($width) $attr_output[] = 'width="'.$width.'"';
|
||||
if($height) $attr_output[] = 'height="'.$height.'"';
|
||||
if($border) {
|
||||
$style = trim(preg_replace('/border[a-z\-]*[ ]*:[ ]*[0-9 a-z]+(;| )/i','', $style)).';';
|
||||
$style = str_replace(';;',';',$style);
|
||||
if($style == ';') $style = '';
|
||||
$style .= ' border-style: solid; border-width:'.$border.'px;';
|
||||
}
|
||||
|
||||
$code = sprintf("<img %s style=\"%s\" />", implode(' ',$attr_output), $style);
|
||||
|
||||
if($link_url) {
|
||||
if($open_window =='Y') $code = sprintf('<a href="%s" onclick="window.open(this.href);return false;">%s</a>', $link_url, $code);
|
||||
else $code = sprintf('<a href="%s" >%s</a>', $link_url, $code);
|
||||
}
|
||||
return $code;
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -1,35 +1,35 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<component version="0.2">
|
||||
<title xml:lang="ko">이미지 추가</title>
|
||||
<title xml:lang="jp">イメージ追加</title>
|
||||
<title xml:lang="zh-CN">插入图像</title>
|
||||
<title xml:lang="en">Add Images</title>
|
||||
<title xml:lang="vi">Thêm hình ảnh</title>
|
||||
<title xml:lang="es">Añadir imágenes</title>
|
||||
<title xml:lang="ru">Добавление изображений</title>
|
||||
<title xml:lang="zh-TW">圖片連結</title>
|
||||
<title xml:lang="tr">Resim Ekle</title>
|
||||
<description xml:lang="ko">에디터에 이미지를 추가하거나 속성을 변경할 수 있습니다.</description>
|
||||
<description xml:lang="jp">エディターでイメージの追加、属性の変更が出来ます。</description>
|
||||
<description xml:lang="zh-CN">可以插入图像或编辑其相应属性。</description>
|
||||
<description xml:lang="en">It can add an image to editor or change the attribution of image.</description>
|
||||
<description xml:lang="vi">Bạn có thể thêm hình ảnh để sửa hay chia sẻ.</description>
|
||||
<description xml:lang="es">Se puede añadir una imagen a editor o cambiar la atribución de la imagen.</description>
|
||||
<description xml:lang="ru">Это может добавить изображение в редактор или изменить параметры изображения.</description>
|
||||
<description xml:lang="zh-TW">可以新增或編輯其相關屬性。</description>
|
||||
<description xml:lang="tr">Editöre bir resim ekleyebilir veya resmin niteliğini değiştirebilir.</description>
|
||||
<version>0.1</version>
|
||||
<date>2007-02-28</date>
|
||||
|
||||
<author email_address="developers@xpressengine.com" link="http://xpressengine.com/">
|
||||
<name xml:lang="ko">NHN</name>
|
||||
<name xml:lang="jp">NHN</name>
|
||||
<name xml:lang="zh-CN">NHN</name>
|
||||
<name xml:lang="en">NHN</name>
|
||||
<name xml:lang="vi">NHN</name>
|
||||
<name xml:lang="es">NHN</name>
|
||||
<name xml:lang="ru">NHN</name>
|
||||
<name xml:lang="zh-TW">NHN</name>
|
||||
<name xml:lang="tr">NHN</name>
|
||||
</author>
|
||||
</component>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<component version="0.2">
|
||||
<title xml:lang="ko">이미지 추가</title>
|
||||
<title xml:lang="jp">イメージ追加</title>
|
||||
<title xml:lang="zh-CN">插入图像</title>
|
||||
<title xml:lang="en">Add Images</title>
|
||||
<title xml:lang="vi">Thêm hình ảnh</title>
|
||||
<title xml:lang="es">Añadir imágenes</title>
|
||||
<title xml:lang="ru">Добавление изображений</title>
|
||||
<title xml:lang="zh-TW">圖片連結</title>
|
||||
<title xml:lang="tr">Resim Ekle</title>
|
||||
<description xml:lang="ko">에디터에 이미지를 추가하거나 속성을 변경할 수 있습니다.</description>
|
||||
<description xml:lang="jp">エディターでイメージの追加、属性の変更が出来ます。</description>
|
||||
<description xml:lang="zh-CN">可以插入图像或编辑其相应属性。</description>
|
||||
<description xml:lang="en">It can add an image to editor or change the image attributes.</description>
|
||||
<description xml:lang="vi">Bạn có thể thêm hình ảnh để sửa hay chia sẻ.</description>
|
||||
<description xml:lang="es">Se puede añadir una imagen a editor o cambiar la atribución de la imagen.</description>
|
||||
<description xml:lang="ru">Это может добавить изображение в редактор или изменить параметры изображения.</description>
|
||||
<description xml:lang="zh-TW">可以新增或編輯其相關屬性。</description>
|
||||
<description xml:lang="tr">Editöre bir resim ekleyebilir veya resmin niteliğini değiştirebilir.</description>
|
||||
<version>0.1</version>
|
||||
<date>2007-02-28</date>
|
||||
|
||||
<author email_address="developers@xpressengine.com" link="http://xpressengine.com/">
|
||||
<name xml:lang="ko">NHN</name>
|
||||
<name xml:lang="jp">NHN</name>
|
||||
<name xml:lang="zh-CN">NHN</name>
|
||||
<name xml:lang="en">NHN</name>
|
||||
<name xml:lang="vi">NHN</name>
|
||||
<name xml:lang="es">NHN</name>
|
||||
<name xml:lang="ru">NHN</name>
|
||||
<name xml:lang="zh-TW">NHN</name>
|
||||
<name xml:lang="tr">NHN</name>
|
||||
</author>
|
||||
</component>
|
||||
|
|
|
|||
|
|
@ -1,22 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/image_link/lang/en.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor Module > language pack of image_link component
|
||||
**/
|
||||
|
||||
$lang->image_url = "Image Path";
|
||||
$lang->image_alt = "Input Description";
|
||||
$lang->image_scale = "Image Size";
|
||||
$lang->image_align = "Align Style";
|
||||
$lang->image_align_normal = "Occupy a Paragraph";
|
||||
$lang->image_align_left = "Left of Article";
|
||||
$lang->image_align_middle = "Center";
|
||||
$lang->image_align_right = "Right of Article";
|
||||
$lang->image_border = "Border Thickness";
|
||||
$lang->urllink_url = "URL";
|
||||
$lang->image_margin = 'Image Margin';
|
||||
|
||||
$lang->about_url_link_open_window = "Make the link to open as a new window";
|
||||
$lang->cmd_get_scale = "Get Image Size";
|
||||
?>
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/image_link/lang/en.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor Module > language pack of image_link component
|
||||
**/
|
||||
|
||||
$lang->image_url = "Ruta de la imagen";
|
||||
$lang->image_alt = "Descripcion de Entrada";
|
||||
$lang->image_scale = "Tamano de la Imagen";
|
||||
$lang->image_align = "Alinear Estilo";
|
||||
$lang->image_align_normal = "Occupy un parrafo";
|
||||
$lang->image_align_left = "Izquierda del articulo";
|
||||
$lang->image_align_middle = "Centro";
|
||||
$lang->image_align_right = "Derecho de articulo";
|
||||
$lang->image_border = "Grosor de Fronteras";
|
||||
$lang->urllink_url = "URL";
|
||||
$lang->image_margin = 'Image Margin';
|
||||
|
||||
$lang->about_url_link_open_window = "Hacer el vinculo para abrir una nueva ventana";
|
||||
$lang->cmd_get_scale = "Obtener tamano de la imagen";
|
||||
?>
|
||||
|
|
@ -1,23 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/editor/components/image_link/lang/jp.lang.php
|
||||
* @author NHN (developers@xpressengine.com) 翻訳:RisaPapa、ミニミ
|
||||
* @brief ウィジウィグエディター(editor)モジュール > イメージリンク(image_link)コンポネント言語パッケージ
|
||||
**/
|
||||
|
||||
$lang->image_url = 'イメージパス';
|
||||
$lang->image_alt = '説明(Alt)入力';
|
||||
$lang->image_scale = 'イメージサイズ';
|
||||
$lang->image_align = 'アライン位置';
|
||||
$lang->image_align_normal = '一段落';
|
||||
$lang->image_align_left = '左揃え';
|
||||
$lang->image_align_middle = '中央揃え';
|
||||
$lang->image_align_right = '右揃え';
|
||||
$lang->image_border = 'ボーダー';
|
||||
$lang->image_margin = '外側の空白(Margin)';
|
||||
|
||||
$lang->urllink_open_window = '新しいウィンドウで開く';
|
||||
$lang->about_url_link_open_window = 'チェックすると、リンクをクリックする際、新しいウィンドウで開きます。';
|
||||
|
||||
$lang->cmd_get_scale = 'イメージサイズを計算';
|
||||
?>
|
||||
|
|
@ -1,23 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/editor/components/image_link/lang/ko.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief 위지윅에디터(editor) 모듈 > 이미지링크(image_link) 컴포넌트의 언어팩
|
||||
**/
|
||||
|
||||
$lang->image_url = '이미지 경로';
|
||||
$lang->image_alt = '설명 입력';
|
||||
$lang->image_scale = '이미지 크기';
|
||||
$lang->image_align = '정렬 방법';
|
||||
$lang->image_align_normal = '한 문단을 차지';
|
||||
$lang->image_align_left = '글의 왼쪽으로';
|
||||
$lang->image_align_middle = '가운데';
|
||||
$lang->image_align_right = '글의 우측으로';
|
||||
$lang->image_border = '경계선 두께';
|
||||
$lang->image_margin = '바깥 여백';
|
||||
|
||||
$lang->urllink_open_window = '새 창 열기';
|
||||
$lang->about_url_link_open_window = '선택하시면 링크 선택 시 새 창으로 열립니다.';
|
||||
|
||||
$lang->cmd_get_scale = '가로세로 구하기';
|
||||
?>
|
||||
139
modules/editor/components/image_link/lang/lang.xml
Normal file
139
modules/editor/components/image_link/lang/lang.xml
Normal file
|
|
@ -0,0 +1,139 @@
|
|||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<lang>
|
||||
<item name="image_url">
|
||||
<value xml:lang="ko"><![CDATA[이미지 경로]]></value>
|
||||
<value xml:lang="en"><![CDATA[Image Path]]></value>
|
||||
<value xml:lang="jp"><![CDATA[イメージパス]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[图像路径]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[圖片路徑]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Путь изображения]]></value>
|
||||
<value xml:lang="es"><![CDATA[Ruta de la imagen]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Resim Yolu]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Đường dẫn]]></value>
|
||||
</item>
|
||||
<item name="image_alt">
|
||||
<value xml:lang="ko"><![CDATA[설명 입력]]></value>
|
||||
<value xml:lang="en"><![CDATA[Enter Description]]></value>
|
||||
<value xml:lang="jp"><![CDATA[説明(Alt)入力]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[图像说明]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[圖片說明]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Введите описание]]></value>
|
||||
<value xml:lang="es"><![CDATA[Descripcion de Entrada]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Açıklama Gir]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Mô tả]]></value>
|
||||
</item>
|
||||
<item name="image_scale">
|
||||
<value xml:lang="ko"><![CDATA[이미지 크기]]></value>
|
||||
<value xml:lang="en"><![CDATA[Image Size]]></value>
|
||||
<value xml:lang="jp"><![CDATA[イメージサイズ]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[图像大小]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[圖片大小]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Размер изображения]]></value>
|
||||
<value xml:lang="es"><![CDATA[Tamano de la Imagen]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Resim Boyutu]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Kích thước]]></value>
|
||||
</item>
|
||||
<item name="image_align">
|
||||
<value xml:lang="ko"><![CDATA[정렬 방법]]></value>
|
||||
<value xml:lang="en"><![CDATA[Alignment]]></value>
|
||||
<value xml:lang="jp"><![CDATA[アライン位置]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[对齐方式]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[對齊方式]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Стиль выравнивания]]></value>
|
||||
<value xml:lang="es"><![CDATA[Alinear Estilo]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Hizalama Tarzı]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Căn chỉnh]]></value>
|
||||
</item>
|
||||
<item name="image_align_normal">
|
||||
<value xml:lang="ko"><![CDATA[한 문단을 차지]]></value>
|
||||
<value xml:lang="en"><![CDATA[Occupy a Paragraph]]></value>
|
||||
<value xml:lang="jp"><![CDATA[一段落占め]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[占一个段落]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[段落]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Занять параграф]]></value>
|
||||
<value xml:lang="es"><![CDATA[Occupy un parrafo]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Paragraf Atla]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Một khoảng bài viết]]></value>
|
||||
</item>
|
||||
<item name="image_align_left">
|
||||
<value xml:lang="ko"><![CDATA[글의 왼쪽으로]]></value>
|
||||
<value xml:lang="en"><![CDATA[Left of Article]]></value>
|
||||
<value xml:lang="jp"><![CDATA[左揃え]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[内容左侧]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[靠左]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Лево]]></value>
|
||||
<value xml:lang="es"><![CDATA[Izquierda del articulo]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Makalenin Solunda]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Bên trái bài viết]]></value>
|
||||
</item>
|
||||
<item name="image_align_middle">
|
||||
<value xml:lang="ko"><![CDATA[가운데]]></value>
|
||||
<value xml:lang="en"><![CDATA[Center]]></value>
|
||||
<value xml:lang="jp"><![CDATA[中央揃え]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[居中]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[置中]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Центр]]></value>
|
||||
<value xml:lang="es"><![CDATA[Centro]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Ortalı]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Giữa]]></value>
|
||||
</item>
|
||||
<item name="image_align_right">
|
||||
<value xml:lang="ko"><![CDATA[글의 우측으로]]></value>
|
||||
<value xml:lang="en"><![CDATA[Right of Article]]></value>
|
||||
<value xml:lang="jp"><![CDATA[右揃え]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[内容右侧]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[靠右]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Право]]></value>
|
||||
<value xml:lang="es"><![CDATA[Derecho de articulo]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Makalenin Sağında]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Bên phải bài viết]]></value>
|
||||
</item>
|
||||
<item name="image_border">
|
||||
<value xml:lang="ko"><![CDATA[경계선 두께]]></value>
|
||||
<value xml:lang="en"><![CDATA[Border Thickness]]></value>
|
||||
<value xml:lang="jp"><![CDATA[ボーダー]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[边框粗细]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[邊框粗細]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Толщина рамки]]></value>
|
||||
<value xml:lang="es"><![CDATA[Grosor de Fronteras]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Kenarlık Kalınlığı]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Độ dày viền]]></value>
|
||||
</item>
|
||||
<item name="image_margin">
|
||||
<value xml:lang="ko"><![CDATA[바깥 여백]]></value>
|
||||
<value xml:lang="en"><![CDATA[Image Margin]]></value>
|
||||
<value xml:lang="jp"><![CDATA[外側の余白(Margin)]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[外边距]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[圖片邊距]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Resim Kenar Boşluğu]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Lề của hình ảnh]]></value>
|
||||
</item>
|
||||
<item name="urllink_open_window">
|
||||
<value xml:lang="ko"><![CDATA[새 창 열기]]></value>
|
||||
<value xml:lang="en"><![CDATA[Open in new window]]></value>
|
||||
<value xml:lang="jp"><![CDATA[新しいウィンドウで開く]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[新窗口打开]]></value>
|
||||
</item>
|
||||
<item name="about_url_link_open_window">
|
||||
<value xml:lang="ko"><![CDATA[선택하시면 링크 선택 시 새 창으로 열립니다.]]></value>
|
||||
<value xml:lang="en"><![CDATA[Select this to open a link in a new window.]]></value>
|
||||
<value xml:lang="jp"><![CDATA[チェックを入れると、リンクをクリックする際に新しいウィンドウで開きます。]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[将在新窗口中打开链接。]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[開啟連結於新視窗。]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Создайте ссылку для открытия в новом окне]]></value>
|
||||
<value xml:lang="es"><![CDATA[Hacer el vinculo para abrir una nueva ventana]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Köprüyü yeni pencerede aç.]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Mở ra trang mới khi bấm vào hình]]></value>
|
||||
</item>
|
||||
<item name="cmd_get_scale">
|
||||
<value xml:lang="ko"><![CDATA[가로세로 구하기]]></value>
|
||||
<value xml:lang="en"><![CDATA[Get Image Size]]></value>
|
||||
<value xml:lang="jp"><![CDATA[イメージサイズを計算]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[获得图片大小]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[取得圖片大小]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Получить размер изображения]]></value>
|
||||
<value xml:lang="es"><![CDATA[Obtener tamano de la imagen]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Resim Boyutunu Al]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Lấy kích thước thật của hình]]></value>
|
||||
</item>
|
||||
</lang>
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/image_link/lang/ru.lang.php
|
||||
* @author NHN (developers@xpressengine.com) | translation by Maslennikov Evgeny aka X-[Vr]bL1s5 | e-mail: x-bliss[a]tut.by; ICQ: 225035467;
|
||||
* @brief editor Module > language pack of image_link component
|
||||
**/
|
||||
|
||||
$lang->image_url = "Путь изображения";
|
||||
$lang->image_alt = "Введите описание";
|
||||
$lang->image_scale = "Размер изображения";
|
||||
$lang->image_align = "Стиль выравнивания";
|
||||
$lang->image_align_normal = "Занять параграф";
|
||||
$lang->image_align_left = "Лево";
|
||||
$lang->image_align_middle = "Центр";
|
||||
$lang->image_align_right = "Право";
|
||||
$lang->image_border = "Толщина рамки";
|
||||
$lang->urllink_url = "URL";
|
||||
$lang->image_margin = 'Image Margin';
|
||||
|
||||
$lang->about_url_link_open_window = "Создайте ссылку для открытия в новом окне";
|
||||
$lang->cmd_get_scale = "Получить размер изображения";
|
||||
?>
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/image_link/lang/en.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor Module > language pack of image_link component
|
||||
**/
|
||||
|
||||
$lang->image_url = "Resim Yolu";
|
||||
$lang->image_alt = "Açıklama Gir";
|
||||
$lang->image_scale = "Resim Boyutu";
|
||||
$lang->image_align = "Hizalama Tarzı";
|
||||
$lang->image_align_normal = "Paragraf Atla";
|
||||
$lang->image_align_left = "Makalenin Solunda";
|
||||
$lang->image_align_middle = "Ortalı";
|
||||
$lang->image_align_right = "Makalenin Sağında";
|
||||
$lang->image_border = "Kenarlık Kalınlığı";
|
||||
$lang->urllink_url = "URL";
|
||||
$lang->image_margin = 'Resim Kenar Boşluğu';
|
||||
|
||||
$lang->about_url_link_open_window = "Köprüyü yeni pencerede aç.";
|
||||
$lang->cmd_get_scale = "Resim Boyutunu Al";
|
||||
?>
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
<?php
|
||||
/* ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
|
||||
░░ * @File : common/lang/vi.lang.php ░░
|
||||
░░ * @Author : NHN (developers@xpressengine.com) ░░
|
||||
░░ * @Trans : Đào Đức Duy (ducduy.dao.vn@vietxe.net) ░░
|
||||
░░ * @Website: http://vietxe.net ░░
|
||||
░░ * @Brief : Vietnamese Language Pack (Only basic words are included here) ░░
|
||||
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ */
|
||||
|
||||
$lang->image_url = "Đường dẫn";
|
||||
$lang->image_alt = "Mô tả";
|
||||
$lang->image_scale = "Kích thước";
|
||||
$lang->image_align = "Căn chỉnh";
|
||||
$lang->image_align_normal = "Một khoảng bài viết";
|
||||
$lang->image_align_left = "Bên trái bài viết";
|
||||
$lang->image_align_middle = "Giữa";
|
||||
$lang->image_align_right = "Bên phải bài viết";
|
||||
$lang->image_border = "Độ dày viền";
|
||||
$lang->urllink_url = "URL";
|
||||
$lang->image_margin = 'Lề của hình ảnh';
|
||||
|
||||
$lang->about_url_link_open_window = "Mở ra trang mới khi bấm vào hình";
|
||||
$lang->cmd_get_scale = "Lấy kích thước thật của hình";
|
||||
?>
|
||||
|
|
@ -1,23 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/image_link/lang/zh-CN.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief 网页编辑器(editor) 模块 > 图像链接(image_link) 组件的语言包
|
||||
**/
|
||||
|
||||
$lang->image_url = "图像路径";
|
||||
$lang->image_alt = "图像说明";
|
||||
$lang->image_scale = "图像大小";
|
||||
$lang->image_align = "对齐方式";
|
||||
$lang->image_align_normal = "占一个段落";
|
||||
$lang->image_align_left = "内容左侧";
|
||||
$lang->image_align_middle = "居中";
|
||||
$lang->image_align_right = "内容右侧";
|
||||
$lang->image_border = "边框粗细";
|
||||
$lang->image_margin = '外边距';
|
||||
|
||||
$lang->urllink_open_window = '新窗口打开';
|
||||
$lang->about_url_link_open_window = "将在新窗口中打开链接。";
|
||||
|
||||
$lang->cmd_get_scale = "获得图片大小";
|
||||
?>
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/image_link/lang/zh-TW.lang.php
|
||||
* @author NHN (developers@xpressengine.com) 翻譯:royallin
|
||||
* @brief 網頁編輯器(editor)模組 > 圖片連結(image_link)組件語言
|
||||
**/
|
||||
|
||||
$lang->image_url = "圖片路徑";
|
||||
$lang->image_alt = "圖片說明";
|
||||
$lang->image_scale = "圖片大小";
|
||||
$lang->image_align = "對齊方式";
|
||||
$lang->image_align_normal = "段落";
|
||||
$lang->image_align_left = "靠左";
|
||||
$lang->image_align_middle = "置中";
|
||||
$lang->image_align_right = "靠右";
|
||||
$lang->image_border = "邊框粗細";
|
||||
$lang->urllink_url = "網址";
|
||||
$lang->image_margin = '圖片邊距';
|
||||
|
||||
$lang->about_url_link_open_window = "開啟連結於新視窗。";
|
||||
$lang->cmd_get_scale = "取得圖片大小";
|
||||
?>
|
||||
|
|
@ -1,46 +1,41 @@
|
|||
<!--%import("popup.js")-->
|
||||
<!--%import("popup.css")-->
|
||||
<!--%import("../lang")-->
|
||||
|
||||
<div id="popHeader">
|
||||
<h3 class="xeAdmin">{$component_info->title} ver. {$component_info->version}</h3>
|
||||
</div>
|
||||
|
||||
<h1 class="h1">{$component_info->title} ver. {$component_info->version}</h1>
|
||||
<form action="./" method="get" onSubmit="return false" id="fo">
|
||||
|
||||
<div id="popBody">
|
||||
<table cellspacing="0" class="rowTable">
|
||||
<div class="table">
|
||||
<table width="100%" border="1" cellspacing="0">
|
||||
<col width="100" />
|
||||
<col />
|
||||
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->image_url}</div></th>
|
||||
<td><input type="text" id="image_url" value="{url_decode($manual_url)}" class="inputTypeText w400" /></td>
|
||||
<th scope="row">{$lang->image_url}</th>
|
||||
<td><input type="text" id="image_url" value="{url_decode($manual_url)}" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->image_scale}</div></th>
|
||||
<th scope="row">{$lang->image_scale}</th>
|
||||
<td>
|
||||
<ul>
|
||||
<li><input type="text" id="width" value="0" size="4" class="inputTypeText" />px </li>
|
||||
<li><input type="text" id="height" value="0" size="4" class="inputTypeText" />px </li>
|
||||
<li><a href="#" id="get_scale" class="button"><span>{$lang->cmd_get_scale}</span></a></li>
|
||||
<li><input type="text" id="width" value="0" size="4" />px </li>
|
||||
<li><input type="text" id="height" value="0" size="4" />px </li>
|
||||
<li><button type="button" id="get_scale">{$lang->cmd_get_scale}</button></li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>URL</div></th>
|
||||
<td><input type="text" id="link_url" value="" class="inputTypeText w400"/></td>
|
||||
<th scope="row">URL</th>
|
||||
<td><input type="text" id="link_url" value=""/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->urllink_open_window}</div></th>
|
||||
<th scope="row">{$lang->urllink_open_window}</th>
|
||||
<td><input type="checkbox" id="open_window" value="Y" /> {$lang->about_url_link_open_window}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->image_alt}</div></th>
|
||||
<td><input type="text" id="image_alt" value="" class="inputTypeText w400"/></td>
|
||||
<th scope="row">{$lang->image_alt}</th>
|
||||
<td><input type="text" id="image_alt" value=""/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->image_align}</div></th>
|
||||
<th scope="row">{$lang->image_align}</th>
|
||||
<td>
|
||||
<div class="image_align">
|
||||
<input type="radio" name="align" value="" id="align_normal" checked="checked"/>
|
||||
|
|
@ -76,18 +71,18 @@
|
|||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->image_border}</div></th>
|
||||
<td><input type="text" id="image_border" value="0" size="2" class="inputTypeText" />px</td>
|
||||
<th scope="row">{$lang->image_border}</th>
|
||||
<td><input type="text" id="image_border" value="0" size="2" />px</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->image_margin}</div></th>
|
||||
<td><input type="text" id="image_margin" value="0" size="2" class="inputTypeText" />px</td>
|
||||
<th scope="row">{$lang->image_margin}</th>
|
||||
<td><input type="text" id="image_margin" value="0" size="2" />px</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div id="popFooter" class="tCenter">
|
||||
<a href="#" id="btn_insert" class="button black strong"><span>{$lang->cmd_insert}</span></a>
|
||||
<a href="#" onclick="winopen('./?module=editor&act=dispEditorComponentInfo&component_name={$component_info->component_name}','ComponentInfo','left=10,top=10,width=10,height=10,resizable=no,scrollbars=no,toolbars=no');return false;" class="button"><span>{$lang->about_component}</span></a>
|
||||
<div class="btnArea">
|
||||
<span class="btn"><button type="button" id="btn_insert">{$lang->cmd_insert}</button></span>
|
||||
<span class="btn"><a href="./?module=editor&act=dispEditorComponentInfo&component_name={$component_info->component_name}" target="_blank" onclick="window.open('this.href','ComponentInfo','width=10,height=10');return false;">{$lang->about_component}</a></span>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
|
|
|||
|
|
@ -1,35 +1,35 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<component version="0.2">
|
||||
<title xml:lang="ko">멀티미디어 자료 관리</title>
|
||||
<title xml:lang="jp">マルチメディア管理</title>
|
||||
<title xml:lang="zh-CN">多媒体</title>
|
||||
<title xml:lang="en">Manage Multimedia Data</title>
|
||||
<title xml:lang="es">Administrar datos multimedia </title>
|
||||
<title xml:lang="ru">Управление мультимедиа данными</title>
|
||||
<title xml:lang="zh-TW">多媒體管理</title>
|
||||
<title xml:lang="vi">Chèn Media vào bài viết</title>
|
||||
<title xml:lang="tr">Çoklu Ortam Verisi Yönetme</title>
|
||||
<description xml:lang="ko">에디터에 wmv,avi,flv등의 멀티미디어 자료를 추가하거나 속성을 수정할 수 있습니다.</description>
|
||||
<description xml:lang="jp">エディターに拡張子が「wmv,avi,flv」などのマルチメディアコンテンツを追加、または属性の修正ができます。</description>
|
||||
<description xml:lang="zh-CN">插入wmv,avi,flv等多媒体文件或修改其相应属性 。</description>
|
||||
<description xml:lang="en">It can add multimedia data like wmv,avi,flv to editor or change the attribution of multimedia data.</description>
|
||||
<description xml:lang="es">Se pueden agregar datos multimedia como wmv, avi, flv al editor o cambiar la atribución de datos multimedia.</description>
|
||||
<description xml:lang="ru">Это может добавить мультимедиа данные как wmv,avi,flv в редактор или изменить параметры данных мультимедиа.</description>
|
||||
<description xml:lang="zh-TW">可新增 wmv、avi、flv 等多媒體檔案或修改其相關屬性。</description>
|
||||
<description xml:lang="vi">Chèn Media dạng '.wmv,.avi,.flv,.mp3,.wma' vào bài viết.</description>
|
||||
<description xml:lang="tr">wmv, avi, flv gibi çoklu ortam dosyalarını editöre ekleyebilir veya çoklu ortam dosyasının niteliğini değiştirebilir.</description>
|
||||
<version>0.1</version>
|
||||
<date>2007-02-28</date>
|
||||
|
||||
<author email_address="developers@xpressengine.com" link="http://xpressengine.com/">
|
||||
<name xml:lang="ko">NHN</name>
|
||||
<name xml:lang="jp">NHN</name>
|
||||
<name xml:lang="zh-CN">NHN</name>
|
||||
<name xml:lang="en">NHN</name>
|
||||
<name xml:lang="es">NHN</name>
|
||||
<name xml:lang="ru">NHN</name>
|
||||
<name xml:lang="zh-TW">NHN</name>
|
||||
<name xml:lang="vi">NHN</name>
|
||||
<name xml:lang="tr">NHN</name>
|
||||
</author>
|
||||
</component>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<component version="0.2">
|
||||
<title xml:lang="ko">멀티미디어 링크</title>
|
||||
<title xml:lang="jp">マルチメディア管理</title>
|
||||
<title xml:lang="zh-CN">多媒体</title>
|
||||
<title xml:lang="en">Multimedia Link</title>
|
||||
<title xml:lang="es">Administrar datos multimedia </title>
|
||||
<title xml:lang="ru">Управление мультимедиа данными</title>
|
||||
<title xml:lang="zh-TW">多媒體管理</title>
|
||||
<title xml:lang="vi">Chèn Media vào bài viết</title>
|
||||
<title xml:lang="tr">Çoklu Ortam Verisi Yönetme</title>
|
||||
<description xml:lang="ko">에디터에 wmv,avi,flv등의 멀티미디어 자료를 추가하거나 속성을 수정할 수 있습니다.</description>
|
||||
<description xml:lang="jp">エディターに拡張子が「wmv,avi,flv」などのマルチメディアコンテンツを追加、または属性の修正ができます。</description>
|
||||
<description xml:lang="zh-CN">插入wmv,avi,flv等多媒体文件或修改其相应属性 。</description>
|
||||
<description xml:lang="en">It can add multimedia data like wmv, avi, flv to editor or change the its attributes.</description>
|
||||
<description xml:lang="es">Se pueden agregar datos multimedia como wmv, avi, flv al editor o cambiar la atribución de datos multimedia.</description>
|
||||
<description xml:lang="ru">Это может добавить мультимедиа данные как wmv,avi,flv в редактор или изменить параметры данных мультимедиа.</description>
|
||||
<description xml:lang="zh-TW">可新增 wmv、avi、flv 等多媒體檔案或修改其相關屬性。</description>
|
||||
<description xml:lang="vi">Chèn Media dạng '.wmv,.avi,.flv,.mp3,.wma' vào bài viết.</description>
|
||||
<description xml:lang="tr">wmv, avi, flv gibi çoklu ortam dosyalarını editöre ekleyebilir veya çoklu ortam dosyasının niteliğini değiştirebilir.</description>
|
||||
<version>0.2</version>
|
||||
<date>2007-02-28</date>
|
||||
|
||||
<author email_address="developers@xpressengine.com" link="http://xpressengine.com/">
|
||||
<name xml:lang="ko">NHN</name>
|
||||
<name xml:lang="jp">NHN</name>
|
||||
<name xml:lang="zh-CN">NHN</name>
|
||||
<name xml:lang="en">NHN</name>
|
||||
<name xml:lang="es">NHN</name>
|
||||
<name xml:lang="ru">NHN</name>
|
||||
<name xml:lang="zh-TW">NHN</name>
|
||||
<name xml:lang="vi">NHN</name>
|
||||
<name xml:lang="tr">NHN</name>
|
||||
</author>
|
||||
</component>
|
||||
|
|
|
|||
|
|
@ -1,13 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/multimedia_link/lang/en.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor module > language pack of multimedia_link component
|
||||
**/
|
||||
|
||||
$lang->multimedia_url = "Multimedia Path";
|
||||
$lang->multimedia_caption = "Input Description";
|
||||
$lang->multimedia_width = "Width";
|
||||
$lang->multimedia_height = "Height";
|
||||
$lang->multimedia_auto_start = "Auto Start";
|
||||
?>
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/multimedia_link/lang/en.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor module > language pack of multimedia_link component
|
||||
**/
|
||||
|
||||
$lang->multimedia_url = "Sendero Multimedia";
|
||||
$lang->multimedia_caption = "Descripcion de Entrada";
|
||||
$lang->multimedia_width = "Ancho";
|
||||
$lang->multimedia_height = "Altura";
|
||||
$lang->multimedia_auto_start = "Auto Start";
|
||||
|
||||
?>
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/editor/components/multimedia_link/lang/jp.lang.php
|
||||
* @author NHN (developers@xpressengine.com) 翻訳:RisaPapa、ミニミ
|
||||
* @brief ウィジウィグエディター(editor)モジュール > マルチメディアリンク((multimedia_link)コンポネント言語パッケージ
|
||||
**/
|
||||
|
||||
$lang->multimedia_url = "マルチメディアのパス";
|
||||
$lang->multimedia_caption = "説明入力";
|
||||
$lang->multimedia_width = "横幅サイズ";
|
||||
$lang->multimedia_height = "縦幅サイズ";
|
||||
$lang->multimedia_auto_start = "自動再生";
|
||||
$lang->multimedia_wmode = '位置';
|
||||
|
||||
$lang->multimedia_wmode_window = '常に上へ';
|
||||
$lang->multimedia_wmode_opaque = '不透明背景';
|
||||
$lang->multimedia_wmode_transparent = '透明背景';
|
||||
?>
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/editor/components/multimedia_link/lang/ko.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief 위지윅에디터(editor) 모듈 > 멀티미디어 링크 (multimedia_link) 컴포넌트의 언어팩
|
||||
**/
|
||||
|
||||
$lang->multimedia_url = '멀티미디어 경로';
|
||||
$lang->multimedia_caption = '설명 입력';
|
||||
$lang->multimedia_width = '가로';
|
||||
$lang->multimedia_height = '세로';
|
||||
$lang->multimedia_auto_start = '자동 시작';
|
||||
$lang->multimedia_wmode = '위치';
|
||||
|
||||
$lang->multimedia_wmode_window = '항상 위';
|
||||
$lang->multimedia_wmode_opaque = '배경 불투명';
|
||||
$lang->multimedia_wmode_transparent = '배경 투명';
|
||||
?>
|
||||
80
modules/editor/components/multimedia_link/lang/lang.xml
Normal file
80
modules/editor/components/multimedia_link/lang/lang.xml
Normal file
|
|
@ -0,0 +1,80 @@
|
|||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<lang>
|
||||
<item name="multimedia_url">
|
||||
<value xml:lang="ko"><![CDATA[멀티미디어 경로]]></value>
|
||||
<value xml:lang="en"><![CDATA[Multimedia Path]]></value>
|
||||
<value xml:lang="jp"><![CDATA[マルチメディアのパス]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[媒体路径]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[多媒體路徑]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Путь мультимедиа]]></value>
|
||||
<value xml:lang="es"><![CDATA[Sendero Multimedia]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Çoklu Ortam Yolu]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Đường dẫn Media]]></value>
|
||||
</item>
|
||||
<item name="multimedia_caption">
|
||||
<value xml:lang="ko"><![CDATA[설명 입력]]></value>
|
||||
<value xml:lang="en"><![CDATA[Enter Description]]></value>
|
||||
<value xml:lang="jp"><![CDATA[説明入力]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[输入说明]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[輸入說明]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Введите описание]]></value>
|
||||
<value xml:lang="es"><![CDATA[Descripcion de Entrada]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Açıklama Girin]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Mô tả Media]]></value>
|
||||
</item>
|
||||
<item name="multimedia_width">
|
||||
<value xml:lang="ko"><![CDATA[가로]]></value>
|
||||
<value xml:lang="en"><![CDATA[Width]]></value>
|
||||
<value xml:lang="jp"><![CDATA[横幅サイズ]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[宽度]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[寬度]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Ширина]]></value>
|
||||
<value xml:lang="es"><![CDATA[Ancho]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Genişlik]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Chiều rộng]]></value>
|
||||
</item>
|
||||
<item name="multimedia_height">
|
||||
<value xml:lang="ko"><![CDATA[세로]]></value>
|
||||
<value xml:lang="en"><![CDATA[Height]]></value>
|
||||
<value xml:lang="jp"><![CDATA[縦幅サイズ]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[高度]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[高度]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Высота]]></value>
|
||||
<value xml:lang="es"><![CDATA[Altura]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Yükseklik]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Chiều cao]]></value>
|
||||
</item>
|
||||
<item name="multimedia_auto_start">
|
||||
<value xml:lang="ko"><![CDATA[자동 시작]]></value>
|
||||
<value xml:lang="en"><![CDATA[Auto Start]]></value>
|
||||
<value xml:lang="jp"><![CDATA[自動再生]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[自动播放]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[自動播放]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Автозапуск]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Otomatik Başlangıç]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Tự động Play]]></value>
|
||||
</item>
|
||||
<item name="multimedia_wmode">
|
||||
<value xml:lang="ko"><![CDATA[위치]]></value>
|
||||
<value xml:lang="en"><![CDATA[Position]]></value>
|
||||
<value xml:lang="jp"><![CDATA[位置]]></value>
|
||||
</item>
|
||||
<item name="multimedia_wmode_window">
|
||||
<value xml:lang="ko"><![CDATA[항상 위]]></value>
|
||||
<value xml:lang="en"><![CDATA[Always on Top]]></value>
|
||||
<value xml:lang="jp"><![CDATA[常に上へ]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[總是在上]]></value>
|
||||
</item>
|
||||
<item name="multimedia_wmode_opaque">
|
||||
<value xml:lang="ko"><![CDATA[배경 불투명]]></value>
|
||||
<value xml:lang="en"><![CDATA[Background opaque]]></value>
|
||||
<value xml:lang="jp"><![CDATA[不透明背景]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[背景不透明]]></value>
|
||||
</item>
|
||||
<item name="multimedia_wmode_transparent">
|
||||
<value xml:lang="ko"><![CDATA[배경 투명]]></value>
|
||||
<value xml:lang="en"><![CDATA[Background transparent]]></value>
|
||||
<value xml:lang="jp"><![CDATA[透明背景]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[透明背景]]></value>
|
||||
</item>
|
||||
</lang>
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/multimedia_link/lang/ru.lang.php
|
||||
* @author NHN (developers@xpressengine.com)> | translation by Maslennikov Evgeny aka X-[Vr]bL1s5 | e-mail: x-bliss[a]tut.by; ICQ: 225035467;
|
||||
* @brief editor module > language pack of multimedia_link component
|
||||
**/
|
||||
|
||||
$lang->multimedia_url = "Путь мультимедиа";
|
||||
$lang->multimedia_caption = "Введите описание";
|
||||
$lang->multimedia_width = "Ширина";
|
||||
$lang->multimedia_height = "Высота";
|
||||
$lang->multimedia_auto_start = "Автозапуск";
|
||||
?>
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/multimedia_link/lang/en.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor module > language pack of multimedia_link component
|
||||
**/
|
||||
|
||||
$lang->multimedia_url = "Çoklu Ortam Yolu";
|
||||
$lang->multimedia_caption = "Açıklama Girin";
|
||||
$lang->multimedia_width = "Genişlik";
|
||||
$lang->multimedia_height = "Yükseklik";
|
||||
$lang->multimedia_auto_start = "Otomatik Başlangıç";
|
||||
?>
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
<?php
|
||||
/* ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
|
||||
░░ * @File : common/lang/vi.lang.php ░░
|
||||
░░ * @Author : NHN (developers@xpressengine.com) ░░
|
||||
░░ * @Trans : Đào Đức Duy (ducduy.dao.vn@vietxe.net) ░░
|
||||
░░ * @Website: http://vietxe.net ░░
|
||||
░░ * @Brief : Vietnamese Language Pack (Only basic words are included here) ░░
|
||||
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ */
|
||||
|
||||
$lang->multimedia_url = "Đường dẫn Media";
|
||||
$lang->multimedia_caption = "Mô tả Media";
|
||||
$lang->multimedia_width = "Chiều rộng";
|
||||
$lang->multimedia_height = "Chiều cao";
|
||||
$lang->multimedia_auto_start = "Tự động Play";
|
||||
?>
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/multimedia_link/lang/zh-CN.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief 网页编辑器(editor) 模块 > 媒体链接 (multimedia_link) 组件的语言包
|
||||
**/
|
||||
|
||||
$lang->multimedia_url = "媒体路径";
|
||||
$lang->multimedia_caption = "输入说明";
|
||||
$lang->multimedia_width = "宽度";
|
||||
$lang->multimedia_height = "高度";
|
||||
$lang->multimedia_auto_start = "自动播放";
|
||||
?>
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/multimedia_link/lang/zh-TW.lang.php
|
||||
* @author NHN (developers@xpressengine.com) 翻譯:royallin
|
||||
* @brief 網頁編輯器(editor) 模組 > 多媒體連結 (multimedia_link) 組件的語言
|
||||
**/
|
||||
|
||||
$lang->multimedia_url = "多媒體路徑";
|
||||
$lang->multimedia_caption = "輸入說明";
|
||||
$lang->multimedia_width = "寬度";
|
||||
$lang->multimedia_height = "高度";
|
||||
$lang->multimedia_auto_start = "自動播放";
|
||||
|
||||
$lang->multimedia_wmode_window = '總是在上';
|
||||
$lang->multimedia_wmode_opaque = '背景不透明';
|
||||
$lang->multimedia_wmode_transparent = '透明背景';
|
||||
?>
|
||||
|
|
@ -1,71 +1,70 @@
|
|||
<?php
|
||||
/**
|
||||
* @class multimedia_link
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief 본문에 멀티미디어 자료를 연결하는 컴포넌트
|
||||
**/
|
||||
|
||||
class multimedia_link extends EditorHandler {
|
||||
|
||||
// editor_sequence 는 에디터에서 필수로 달고 다녀야 함....
|
||||
var $editor_sequence = 0;
|
||||
var $component_path = '';
|
||||
|
||||
/**
|
||||
* @brief editor_sequence과 컴포넌트의 경로를 받음
|
||||
**/
|
||||
function multimedia_link($editor_sequence, $component_path) {
|
||||
$this->editor_sequence = $editor_sequence;
|
||||
$this->component_path = $component_path;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief popup window요청시 popup window에 출력할 내용을 추가하면 된다
|
||||
**/
|
||||
function getPopupContent() {
|
||||
// 템플릿을 미리 컴파일해서 컴파일된 소스를 return
|
||||
$tpl_path = $this->component_path.'tpl';
|
||||
$tpl_file = 'popup.html';
|
||||
|
||||
Context::set("tpl_path", $tpl_path);
|
||||
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
return $oTemplate->compile($tpl_path, $tpl_file);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 에디터 컴포넌트가 별도의 고유 코드를 이용한다면 그 코드를 html로 변경하여 주는 method
|
||||
*
|
||||
* 이미지나 멀티미디어, 설문등 고유 코드가 필요한 에디터 컴포넌트는 고유코드를 내용에 추가하고 나서
|
||||
* DocumentModule::transContent() 에서 해당 컴포넌트의 transHtml() method를 호출하여 고유코드를 html로 변경
|
||||
**/
|
||||
function transHTML($xml_obj) {
|
||||
$src = $xml_obj->attrs->multimedia_src;
|
||||
$style = $xml_obj->attrs->style;
|
||||
|
||||
preg_match_all('/(width|height)([^[:digit:]]+)([0-9]+)/i',$style,$matches);
|
||||
$width = trim($matches[3][0]);
|
||||
$height = trim($matches[3][1]);
|
||||
if(!$width) $width = 400;
|
||||
if(!$height) $height = 400;
|
||||
|
||||
$auto_start = $xml_obj->attrs->auto_start;
|
||||
if($auto_start!="true") $auto_start = "false";
|
||||
else $auto_start = "true";
|
||||
|
||||
$wmode = $xml_obj->attrs->wmode;
|
||||
if($wmode == 'window') $wmode = 'window';
|
||||
elseif($wmode == 'opaque') $wmode = 'opaque';
|
||||
else $wmode = 'transparent';
|
||||
|
||||
|
||||
$caption = $xml_obj->body;
|
||||
|
||||
$src = str_replace(array('&','"'), array('&','&qout;'), $src);
|
||||
$src = str_replace('&amp;', '&', $src);
|
||||
|
||||
if(Context::getResponseMethod() != "XMLRPC") return sprintf("<script type=\"text/javascript\">displayMultimedia(\"%s\", \"%s\",\"%s\", { \"autostart\" : %s, \"wmode\" : \"%s\" });</script>", $src, $width, $height, $auto_start, $wmode);
|
||||
else return sprintf("<div style=\"width: %dpx; height: %dpx;\"><span style=\"position:relative; top:%dpx;left:%d\"><img src=\"%s\" /><br />Attached Multimedia</span></div>", $width, $height, ($height/2-16), ($width/2-31), Context::getRequestUri().'./modules/editor/components/multimedia_link/tpl/multimedia_link_component.gif');
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
/**
|
||||
* @class multimedia_link
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief The components connected to the body of multimedia data
|
||||
**/
|
||||
|
||||
class multimedia_link extends EditorHandler {
|
||||
// editor_sequence from the editor must attend mandatory wearing ....
|
||||
var $editor_sequence = 0;
|
||||
var $component_path = '';
|
||||
|
||||
/**
|
||||
* @brief editor_sequence and components out of the path
|
||||
**/
|
||||
function multimedia_link($editor_sequence, $component_path) {
|
||||
$this->editor_sequence = $editor_sequence;
|
||||
$this->component_path = $component_path;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief popup window to display in popup window request is to add content
|
||||
**/
|
||||
function getPopupContent() {
|
||||
// Pre-compiled source code to compile template return to
|
||||
$tpl_path = $this->component_path.'tpl';
|
||||
$tpl_file = 'popup.html';
|
||||
|
||||
Context::set("tpl_path", $tpl_path);
|
||||
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
return $oTemplate->compile($tpl_path, $tpl_file);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Editor of the components separately if you use a unique code to the html code for a method to change
|
||||
*
|
||||
* Images and multimedia, seolmundeung unique code is required for the editor component added to its own code, and then
|
||||
* DocumentModule:: transContent() of its components transHtml() method call to change the html code for your own
|
||||
**/
|
||||
function transHTML($xml_obj) {
|
||||
$src = $xml_obj->attrs->multimedia_src;
|
||||
$style = $xml_obj->attrs->style;
|
||||
|
||||
preg_match_all('/(width|height)([^[:digit:]]+)([0-9]+)/i',$style,$matches);
|
||||
$width = trim($matches[3][0]);
|
||||
$height = trim($matches[3][1]);
|
||||
if(!$width) $width = 400;
|
||||
if(!$height) $height = 400;
|
||||
|
||||
$auto_start = $xml_obj->attrs->auto_start;
|
||||
if($auto_start!="true") $auto_start = "false";
|
||||
else $auto_start = "true";
|
||||
|
||||
$wmode = $xml_obj->attrs->wmode;
|
||||
if($wmode == 'window') $wmode = 'window';
|
||||
elseif($wmode == 'opaque') $wmode = 'opaque';
|
||||
else $wmode = 'transparent';
|
||||
|
||||
|
||||
$caption = $xml_obj->body;
|
||||
|
||||
$src = str_replace(array('&','"'), array('&','&qout;'), $src);
|
||||
$src = str_replace('&amp;', '&', $src);
|
||||
|
||||
if(Context::getResponseMethod() != "XMLRPC") return sprintf("<script type=\"text/javascript\">displayMultimedia(\"%s\", \"%s\",\"%s\", { \"autostart\" : %s, \"wmode\" : \"%s\" });</script>", $src, $width, $height, $auto_start, $wmode);
|
||||
else return sprintf("<div style=\"width: %dpx; height: %dpx;\"><span style=\"position:relative; top:%dpx;left:%d\"><img src=\"%s\" /><br />Attached Multimedia</span></div>", $width, $height, ($height/2-16), ($width/2-31), Context::getRequestUri().'./modules/editor/components/multimedia_link/tpl/multimedia_link_component.gif');
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -1,31 +1,32 @@
|
|||
<!--%import("popup.js")-->
|
||||
<!--%import("popup.css")-->
|
||||
<!--%import("../lang")-->
|
||||
|
||||
<div id="popHeader">
|
||||
<h3 class="xeAdmin">{$component_info->title} ver. {$component_info->version}</h3>
|
||||
</div>
|
||||
|
||||
<form action="./" method="get" onSubmit="return false" id="fo">
|
||||
<div id="popBody">
|
||||
<table cellspacing="0" class="rowTable">
|
||||
<!--@if(__DEBUG__)-->
|
||||
<load target="popup.css" />
|
||||
<load target="popup.js" />
|
||||
<!--@else-->
|
||||
<load target="popup.min.css" />
|
||||
<load target="popup.min.js" />
|
||||
<!--@end-->
|
||||
<h1 class="h1">{$component_info->title} ver. {$component_info->version}</h1>
|
||||
<form action="./" method="get" onsubmit="return false" id="fo">
|
||||
<div class="table">
|
||||
<table width="100%" border="1" cellspacing="0">
|
||||
<col width="150" />
|
||||
<col />
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->multimedia_url}</div></th>
|
||||
<td><input type="text" class="inputTypeText w400" id="multimedia_url" value="{$manual_url}" /></td>
|
||||
<td><input type="text" id="multimedia_url" value="{$manual_url}" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->multimedia_caption}</div></th>
|
||||
<td><input type="text" class="inputTypeText w400" id="multimedia_caption" value="" /></td>
|
||||
<td><input type="text" id="multimedia_caption" value="" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->multimedia_width}</div></th>
|
||||
<td><input type="text" class="inputTypeText" size="3" id="multimedia_width" value="400" />px</td>
|
||||
<td><input type="text" size="3" id="multimedia_width" value="400" />px</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->multimedia_height}</div></th>
|
||||
<td><input type="text" class="inputTypeText" size="3" id="multimedia_height" value="400" />px</td>
|
||||
<td><input type="text" size="3" id="multimedia_height" value="400" />px</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->multimedia_auto_start}</div></th>
|
||||
|
|
@ -34,7 +35,7 @@
|
|||
<tr>
|
||||
<th scope="row"><div>{$lang->multimedia_wmode}</div></th>
|
||||
<td>
|
||||
<select name="multimedia_wmode">
|
||||
<select id="multimedia_wmode">
|
||||
<option value="window">{$lang->multimedia_wmode_window}</option>
|
||||
<option value="opaque">{$lang->multimedia_wmode_opaque}</option>
|
||||
<option value="transparent" selected="selected">{$lang->multimedia_wmode_transparent}</option>
|
||||
|
|
@ -43,9 +44,9 @@
|
|||
</td>
|
||||
</table>
|
||||
</div>
|
||||
<div id="popFooter">
|
||||
<a href="#" onclick="insertMultimedia()" class="button black strong"><span>{$lang->cmd_insert}</span></a>
|
||||
<a href="#" onclick="winopen('./?module=editor&act=dispEditorComponentInfo&component_name={$component_info->component_name}','ComponentInfo','left=10,top=10,width=10,height=10,resizable=no,scrollbars=no,toolbars=no');return false;" class="button"><span>{$lang->about_component}</span></a>
|
||||
<div class="btnArea">
|
||||
<span class="btn"><button type="button">{$lang->cmd_insert}</button></span>
|
||||
<span class="btn"><a href="./?module=editor&act=dispEditorComponentInfo&component_name={$component_info->component_name}" target="_blank">{$lang->about_component}</a></span>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
|
|
|||
|
|
@ -2,69 +2,60 @@
|
|||
* popup으로 열렸을 경우 부모창의 위지윅에디터에 select된 멀티미디어 컴포넌트 코드를 체크하여
|
||||
* 있으면 가져와서 원하는 곳에 삽입
|
||||
**/
|
||||
function getMultimedia() {
|
||||
// 부모 위지윅 에디터에서 선택된 영역이 있는지 확인
|
||||
if(typeof(opener)=="undefined") return;
|
||||
jQuery(function($){
|
||||
|
||||
var node = opener.editorPrevNode;
|
||||
if(!node || node.nodeName != "IMG") return;
|
||||
(function(){
|
||||
if(!is_def(opener)) return;
|
||||
|
||||
var url = node.getAttribute("multimedia_src");
|
||||
var caption = node.getAttribute("alt");
|
||||
var width = xWidth(node);
|
||||
var height = xHeight(node);
|
||||
var auto_start = node.getAttribute("auto_start");
|
||||
var wmode = node.getAttribute("wmode");
|
||||
var $node = $(opener.editorPrevNode).filter('img'), attrs;
|
||||
if(!$node.length) return;
|
||||
|
||||
var fo_obj = xGetElementById('fo');
|
||||
attrs = {
|
||||
url : $node.attr('multimedia_src'),
|
||||
caption : $node.attr('alt'),
|
||||
width : $node.width() - 4,
|
||||
height : $node.height() - 4,
|
||||
wmode : $node.attr('wmode')
|
||||
};
|
||||
|
||||
xGetElementById("multimedia_url").value = url;
|
||||
xGetElementById("multimedia_caption").value = caption;
|
||||
xGetElementById("multimedia_width").value = width-4;
|
||||
xGetElementById("multimedia_height").value = height-4;
|
||||
if(auto_start=="true") xGetElementById("multimedia_auto_start").checked = true;
|
||||
$.each(attrs, function(key, val) {
|
||||
get_by_id('multimedia_'+key).value = val;
|
||||
});
|
||||
|
||||
if(wmode == 'window') fo_obj.multimedia_wmode.selectedIndex = 0;
|
||||
else if(wmode == 'opaque') fo_obj.multimedia_wmode.selectedIndex = 1;
|
||||
else fo_obj.multimedia_wmode.selectedIndex = 2;
|
||||
}
|
||||
})();
|
||||
|
||||
function insertMultimedia(obj) {
|
||||
if(typeof(opener)=="undefined") return;
|
||||
$('.btnArea button').click(function(){
|
||||
if(!is_def(opener)) return;
|
||||
|
||||
var url = xGetElementById("multimedia_url").value;
|
||||
url = url.replace(request_uri,'');
|
||||
// url = encodeURI(url);
|
||||
var fo_obj = xGetElementById('fo');
|
||||
var el_wmode = get_by_id('fo').elements['multimedia_wmode'];
|
||||
var attrs = {
|
||||
alt : get_by_id('multimedia_caption').value,
|
||||
width : get_by_id('multimedia_width').value || 400,
|
||||
height : get_by_id('multimedia_height').value || 400,
|
||||
wmode : el_wmode.value || el_wmode.options[0].value,
|
||||
auto_start : get_by_id('multimedia_auto_start').checked?'true':'false',
|
||||
multimedia_src : get_by_id('multimedia_url').value.replace(request_uri, '')
|
||||
};
|
||||
|
||||
var wmode = fo_obj.multimedia_wmode.options[fo_obj.multimedia_wmode.selectedIndex].value;
|
||||
if(!attrs['multimedia_src']) {
|
||||
window.close();
|
||||
return;
|
||||
}
|
||||
|
||||
var caption = xGetElementById("multimedia_caption").value;
|
||||
var html = '<img src="../../../../common/img/blank.gif" editor_component="multimedia_link" multimedia_src="" width="" height="" wmode="" style="display:block;width:'+attrs.width+'px;height:'+attrs.height+'px;border:2px dotted #4371B9;background:url(./modules/editor/components/multimedia_link/tpl/multimedia_link_component.gif) no-repeat center" auto_start="" alt="" />';
|
||||
|
||||
var width = xGetElementById("multimedia_width").value;
|
||||
if(!width) width = 400;
|
||||
html = html.replace(/(\w+)=""/, function(m0,m1) {
|
||||
return attrs[m1] ? (m1+'="'+attrs[m1]+'"') : '';
|
||||
});
|
||||
|
||||
var height = xGetElementById("multimedia_height").value;
|
||||
if(!height) height= 400;
|
||||
opener.editorFocus(opener.editorPrevSrl);
|
||||
|
||||
var auto_start = "false";
|
||||
if(xGetElementById("multimedia_auto_start").checked) auto_start = "true";
|
||||
var iframe_obj = opener.editorGetIFrame(opener.editorPrevSrl)
|
||||
|
||||
if(!url) {
|
||||
window.close();
|
||||
return;
|
||||
}
|
||||
opener.editorReplaceHTML(iframe_obj, html);
|
||||
opener.editorFocus(opener.editorPrevSrl);
|
||||
|
||||
var text = "<img src=\"../../../../common/tpl/images/blank.gif\" editor_component=\"multimedia_link\" multimedia_src=\""+url+"\" width=\""+width+"\" height=\""+height+"\" wmode=\""+wmode+"\" style=\"display:block;width:"+width+"px;height:"+height+"px;border:2px dotted #4371B9;background:url(./modules/editor/components/multimedia_link/tpl/multimedia_link_component.gif) no-repeat center;\" auto_start=\""+auto_start+"\" alt=\""+caption+"\" />";
|
||||
window.close();
|
||||
});
|
||||
|
||||
opener.editorFocus(opener.editorPrevSrl);
|
||||
|
||||
var iframe_obj = opener.editorGetIFrame(opener.editorPrevSrl)
|
||||
|
||||
opener.editorReplaceHTML(iframe_obj, text);
|
||||
opener.editorFocus(opener.editorPrevSrl);
|
||||
|
||||
window.close();
|
||||
}
|
||||
|
||||
xAddEventListener(window, "load", getMultimedia);
|
||||
});
|
||||
|
|
|
|||
5
modules/editor/components/multimedia_link/tpl/popup.min.css
vendored
Normal file
5
modules/editor/components/multimedia_link/tpl/popup.min.css
vendored
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
/**
|
||||
* popup으로 열렸을 경우 부모창의 위지윅에디터에 select된 멀티미디어 컴포넌트 코드를 체크하여
|
||||
* 있으면 가져와서 원하는 곳에 삽입
|
||||
**/
|
||||
@charset "utf-8";@import "../../../../../modules/admin/tpl/css/admin.css";
|
||||
5
modules/editor/components/multimedia_link/tpl/popup.min.js
vendored
Normal file
5
modules/editor/components/multimedia_link/tpl/popup.min.js
vendored
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
/**
|
||||
* popup으로 열렸을 경우 부모창의 위지윅에디터에 select된 멀티미디어 컴포넌트 코드를 체크하여
|
||||
* 있으면 가져와서 원하는 곳에 삽입
|
||||
**/
|
||||
jQuery(function($){(function(){if(!is_def(opener))return;var $node=$(opener.editorPrevNode).filter('img'),attrs;if(!$node.length)return;attrs={url:$node.attr('multimedia_src'),caption:$node.attr('alt'),width:$node.width()-4,height:$node.height()-4,wmode:$node.attr('wmode')};$.each(attrs,function(key,val){get_by_id('multimedia_'+key).value=val})})();$('.btnArea button').click(function(){if(!is_def(opener))return;var el_wmode=get_by_id('fo').elements['multimedia_wmode'],attrs={alt:get_by_id('multimedia_caption').value,width:get_by_id('multimedia_width').value||400,height:get_by_id('multimedia_height').value||400,wmode:el_wmode.value||el_wmode.options[0].value,auto_start:get_by_id('multimedia_auto_start').checked?'true':'false',multimedia_src:get_by_id('multimedia_url').value.replace(request_uri,'')};if(!attrs.multimedia_src){window.close();return};var html='<img src="../../../../common/img/blank.gif" editor_component="multimedia_link" multimedia_src="" width="" height="" wmode="" style="display:block;width:'+attrs.width+'px;height:'+attrs.height+'px;border:2px dotted #4371B9;background:url(./modules/editor/components/multimedia_link/tpl/multimedia_link_component.gif) no-repeat center" auto_start="" alt="" />';html=html.replace(/(\w+)=""/,function(m0,m1){return attrs[m1]?(m1+'="'+attrs[m1]+'"'):''});opener.editorFocus(opener.editorPrevSrl);var iframe_obj=opener.editorGetIFrame(opener.editorPrevSrl);opener.editorReplaceHTML(iframe_obj,html);opener.editorFocus(opener.editorPrevSrl);window.close()})})
|
||||
|
|
@ -1,35 +1,35 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<component version="0.2">
|
||||
<title xml:lang="vi">Thăm dò ý kiến</title>
|
||||
<title xml:lang="ko">설문조사 컴포넌트</title>
|
||||
<title xml:lang="jp">アンケート調査</title>
|
||||
<title xml:lang="zh-CN">投票调查</title>
|
||||
<title xml:lang="en">Poll Component</title>
|
||||
<title xml:lang="es">Componente Poll</title>
|
||||
<title xml:lang="ru">Компонент опросов</title>
|
||||
<title xml:lang="zh-TW">投票調查</title>
|
||||
<title xml:lang="tr">Oylama Bileşenleri</title>
|
||||
<description xml:lang="vi">Bạn có thể tạo một cuộc thăm dò cho chủ đề của mình.</description>
|
||||
<description xml:lang="ko">글 작성시에 설문조사를 첨부하실 수 있습니다. 설문조사 컴포넌트는 설문조사 모듈의 설정에 영향을 받습니다.</description>
|
||||
<description xml:lang="jp">書き込みの時、アンケート機能の追加ができます。アンケートモジュールの影響を受けます。</description>
|
||||
<description xml:lang="zh-CN">发表主题时可以附加投票调查。投票调查组件受投票调查模块设置的影响。</description>
|
||||
<description xml:lang="en">You can attach a poll on writing articles. Poll component is affected by setting of poll module.</description>
|
||||
<description xml:lang="es">Puede adjuntar una encuesta sobre la redacción de artículos. Encuesta componente se ve afectada por la configuración de módulo de encuesta.</description>
|
||||
<description xml:lang="ru">Вы можете присоединить опрос при написании статей. Компонент опросов зависит от настроек модуля отпросов.</description>
|
||||
<description xml:lang="zh-TW">發表主題時可以附加投票調查。投票調查組件受投票調查模組設置的影響。</description>
|
||||
<description xml:lang="tr">Oylamaları yazı makalelerine ekleyebilirsiniz. Oylama bileşeni, oylama modülü ayarlarından ayarlanır.</description>
|
||||
<version>0.1</version>
|
||||
<date>2007-02-28</date>
|
||||
|
||||
<author email_address="developers@xpressengine.com" link="http://xpressengine.com/">
|
||||
<name xml:lang="vi">NHN</name>
|
||||
<name xml:lang="ko">NHN</name>
|
||||
<name xml:lang="jp">NHN</name>
|
||||
<name xml:lang="zh-CN">NHN</name>
|
||||
<name xml:lang="en">NHN</name>
|
||||
<name xml:lang="es">NHN</name>
|
||||
<name xml:lang="ru">NHN</name>
|
||||
<name xml:lang="zh-TW">NHN</name>
|
||||
<name xml:lang="tr">NHN</name>
|
||||
</author>
|
||||
</component>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<component version="0.2">
|
||||
<title xml:lang="vi">Thăm dò ý kiến</title>
|
||||
<title xml:lang="ko">설문조사</title>
|
||||
<title xml:lang="jp">アンケート調査</title>
|
||||
<title xml:lang="zh-CN">投票调查</title>
|
||||
<title xml:lang="en">Poll</title>
|
||||
<title xml:lang="es">Poll</title>
|
||||
<title xml:lang="ru">Компонент опросов</title>
|
||||
<title xml:lang="zh-TW">投票調查</title>
|
||||
<title xml:lang="tr">Oylama Bileşenleri</title>
|
||||
<description xml:lang="vi">Bạn có thể tạo một cuộc thăm dò cho chủ đề của mình.</description>
|
||||
<description xml:lang="ko">글 작성시에 설문조사를 첨부하실 수 있습니다. 설문조사 컴포넌트는 설문조사 모듈의 설정에 영향을 받습니다.</description>
|
||||
<description xml:lang="jp">書き込みの時、アンケート機能の追加ができます。アンケートモジュールの影響を受けます。</description>
|
||||
<description xml:lang="zh-CN">发表主题时可以附加投票调查。投票调查组件受投票调查模块设置的影响。</description>
|
||||
<description xml:lang="en">You can attach a poll to your articles. Poll component will be available when the poll module is enabled.</description>
|
||||
<description xml:lang="es">Puede adjuntar una encuesta sobre la redacción de artículos. Encuesta componente se ve afectada por la configuración de módulo de encuesta.</description>
|
||||
<description xml:lang="ru">Вы можете присоединить опрос при написании статей. Компонент опросов зависит от настроек модуля отпросов.</description>
|
||||
<description xml:lang="zh-TW">發表主題時可以附加投票調查。投票調查組件受投票調查模組設置的影響。</description>
|
||||
<description xml:lang="tr">Oylamaları yazı makalelerine ekleyebilirsiniz. Oylama bileşeni, oylama modülü ayarlarından ayarlanır.</description>
|
||||
<version>0.1</version>
|
||||
<date>2007-02-28</date>
|
||||
|
||||
<author email_address="developers@xpressengine.com" link="http://xpressengine.com/">
|
||||
<name xml:lang="vi">NHN</name>
|
||||
<name xml:lang="ko">NHN</name>
|
||||
<name xml:lang="jp">NHN</name>
|
||||
<name xml:lang="zh-CN">NHN</name>
|
||||
<name xml:lang="en">NHN</name>
|
||||
<name xml:lang="es">NHN</name>
|
||||
<name xml:lang="ru">NHN</name>
|
||||
<name xml:lang="zh-TW">NHN</name>
|
||||
<name xml:lang="tr">NHN</name>
|
||||
</author>
|
||||
</component>
|
||||
|
|
|
|||
|
|
@ -1,18 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/poll_maker/lang/en.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor module > language pack of poll_maker component
|
||||
**/
|
||||
|
||||
$lang->poll_title = "Title";
|
||||
$lang->poll_item = "Items";
|
||||
$lang->poll_stop_date = "Expiration Date";
|
||||
$lang->poll_chk_count = "Number of Checking Item";
|
||||
|
||||
$lang->cmd_add_poll = "Add Poll";
|
||||
$lang->cmd_del_poll = "Delete Poll";
|
||||
$lang->cmd_add_item = "Add Item";
|
||||
|
||||
$lang->msg_poll_cannot_modify = "You cannot modify the poll. It should be deleted to create a new poll";
|
||||
?>
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/poll_maker/lang/en.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor module > language pack of poll_maker component
|
||||
**/
|
||||
|
||||
$lang->poll_title = "Titulo";
|
||||
$lang->poll_item = "Temas";
|
||||
$lang->poll_stop_date = "Fecha de Expiracion";
|
||||
$lang->poll_chk_count = "Numero de Comprobacion de Partida";
|
||||
|
||||
$lang->cmd_add_poll = "Anadir Encuesta";
|
||||
$lang->cmd_del_poll = "Borrar encuesta";
|
||||
$lang->cmd_add_item = "Anadir Tema";
|
||||
|
||||
$lang->msg_poll_cannot_modify = "No se puede modificar la encuesta. Por lo que debe suprimirse para crear una nueva encuesta";
|
||||
|
||||
?>
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/editor/components/urllink/lang/jp.lang.php
|
||||
* @author NHN (developers@xpressengine.com) 翻訳:RisaPapa、ミニミ
|
||||
* @brief ウィジウィグエディター(editor)モジュール > アンケート調査言語パッケージ
|
||||
**/
|
||||
|
||||
$lang->poll_title = "タイトル";
|
||||
$lang->poll_item = "項目";
|
||||
$lang->poll_stop_date = "終了日";
|
||||
$lang->poll_chk_count = "選択項目数";
|
||||
|
||||
$lang->cmd_add_poll = "アンケート追加";
|
||||
$lang->cmd_del_poll = "アンケート削除";
|
||||
$lang->cmd_add_item = "項目追加";
|
||||
|
||||
$lang->msg_poll_cannot_modify = 'アンケートは修正出来ません。削除後、改めて新しく作成して下さい。';
|
||||
?>
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/editor/components/urllink/lang/ko.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief 위지윅에디터(editor) 모듈 > 설문조사 컴포넌트의 언어팩
|
||||
**/
|
||||
|
||||
$lang->poll_title = '제목';
|
||||
$lang->poll_item = '항목';
|
||||
$lang->poll_stop_date = '종료 일자';
|
||||
$lang->poll_chk_count = '선택항목 수';
|
||||
|
||||
$lang->cmd_add_poll = '설문 추가';
|
||||
$lang->cmd_del_poll = '설문 제거';
|
||||
$lang->cmd_add_item = '항목 추가';
|
||||
|
||||
$lang->msg_poll_cannot_modify = '설문조사는 수정하실 수 없습니다. 삭제 후 다시 생성하셔야 합니다.';
|
||||
?>
|
||||
96
modules/editor/components/poll_maker/lang/lang.xml
Normal file
96
modules/editor/components/poll_maker/lang/lang.xml
Normal file
|
|
@ -0,0 +1,96 @@
|
|||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<lang>
|
||||
<item name="poll_title">
|
||||
<value xml:lang="ko"><![CDATA[제목]]></value>
|
||||
<value xml:lang="en"><![CDATA[Title]]></value>
|
||||
<value xml:lang="jp"><![CDATA[タイトル]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[标题]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[標題]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Заголовок]]></value>
|
||||
<value xml:lang="es"><![CDATA[Titulo]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Başlık]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Tiêu đề]]></value>
|
||||
</item>
|
||||
<item name="poll_item">
|
||||
<value xml:lang="ko"><![CDATA[항목]]></value>
|
||||
<value xml:lang="en"><![CDATA[Items]]></value>
|
||||
<value xml:lang="jp"><![CDATA[項目]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[项目]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[項目]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Пункты]]></value>
|
||||
<value xml:lang="es"><![CDATA[Temas]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Parça]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Mục]]></value>
|
||||
</item>
|
||||
<item name="poll_stop_date">
|
||||
<value xml:lang="ko"><![CDATA[종료 일자]]></value>
|
||||
<value xml:lang="en"><![CDATA[Expiration Date]]></value>
|
||||
<value xml:lang="jp"><![CDATA[終了日]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[结束日期]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[結束日期]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Дата истечения]]></value>
|
||||
<value xml:lang="es"><![CDATA[Fecha de Expiracion]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Sonlandırma Tarihi]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Ngày hết hạn]]></value>
|
||||
</item>
|
||||
<item name="poll_chk_count">
|
||||
<value xml:lang="ko"><![CDATA[선택항목 수]]></value>
|
||||
<value xml:lang="en"><![CDATA[Number of checked items]]></value>
|
||||
<value xml:lang="jp"><![CDATA[選択項目数]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[选择项目数]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[選擇項目數]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Число пунктов выбора]]></value>
|
||||
<value xml:lang="es"><![CDATA[Numero de Comprobacion de Partida]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Denetlenen Parça Sayısı]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Số phiếu]]></value>
|
||||
</item>
|
||||
<item name="cmd_add_poll">
|
||||
<value xml:lang="ko"><![CDATA[설문 추가]]></value>
|
||||
<value xml:lang="en"><![CDATA[Add a poll]]></value>
|
||||
<value xml:lang="jp"><![CDATA[アンケート追加]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[添加投票]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[新增投票]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Добавить опрос]]></value>
|
||||
<value xml:lang="es"><![CDATA[Anadir Encuesta]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Oylama Ekle]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Tạo thăm dò]]></value>
|
||||
</item>
|
||||
<item name="cmd_del_poll">
|
||||
<value xml:lang="ko"><![CDATA[설문 제거]]></value>
|
||||
<value xml:lang="en"><![CDATA[Delete this poll]]></value>
|
||||
<value xml:lang="jp"><![CDATA[アンケート削除]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[解除投票]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[刪除投票]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Удалить опрос]]></value>
|
||||
<value xml:lang="es"><![CDATA[Borrar encuesta]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Parçayı Sil]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Xóa thăm dò]]></value>
|
||||
</item>
|
||||
<item name="cmd_add_item">
|
||||
<value xml:lang="ko"><![CDATA[항목 추가]]></value>
|
||||
<value xml:lang="en"><![CDATA[Add an item]]></value>
|
||||
<value xml:lang="jp"><![CDATA[項目追加]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[添加项目]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[新增項目]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Добавить пункт]]></value>
|
||||
<value xml:lang="es"><![CDATA[Anadir Tema]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Parça Ekle]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Thêm mục]]></value>
|
||||
</item>
|
||||
<item name="cmd_del_item">
|
||||
<value xml:lang="ko"><![CDATA[마지막 항목 제거]]></value>
|
||||
<value xml:lang="en"><![CDATA[Delete last item]]></value>
|
||||
<value xml:lang="jp"><![CDATA[最後の項目削除]]></value>
|
||||
</item>
|
||||
<item name="msg_poll_cannot_modify">
|
||||
<value xml:lang="ko"><![CDATA[설문조사는 수정할 수 없습니다. 삭제 후 다시 생성하셔야 합니다.]]></value>
|
||||
<value xml:lang="en"><![CDATA[You cannot modify the poll. You need to delete it and create a new one.]]></value>
|
||||
<value xml:lang="jp"><![CDATA[アンケートは修正できません。削除後、改めて作成してください。]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[投票调查不提供修改功能。必须删除后再生成]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[投票調查不提供修改功能。必須刪除後再新增]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Вы не можете изменить этот опрос. Его следует удалить для того, чтобы создать новый.]]></value>
|
||||
<value xml:lang="es"><![CDATA[No se puede modificar la encuesta. Por lo que debe suprimirse para crear una nueva encuesta]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Oylamayı düzenleyemezsiniz. Yeni oylama oluşturmak için, oylamanın silinmesi gerekiyor.]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Bạn không thể sửa đổi được. Nó sẽ được xóa để tạo cuộc thăm dò mới.]]></value>
|
||||
</item>
|
||||
</lang>
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/poll_maker/lang/ru.lang.php
|
||||
* @author NHN (developers@xpressengine.com) | translation by Maslennikov Evgeny aka X-[Vr]bL1s5 | e-mail: x-bliss[a]tut.by; ICQ: 225035467;
|
||||
* @brief editor module > language pack of poll_maker component
|
||||
**/
|
||||
|
||||
$lang->poll_title = "Заголовок";
|
||||
$lang->poll_item = "Пункты";
|
||||
$lang->poll_stop_date = "Дата истечения";
|
||||
$lang->poll_chk_count = "Число пунктов выбора";
|
||||
|
||||
$lang->cmd_add_poll = "Добавить опрос";
|
||||
$lang->cmd_del_poll = "Удалить опрос";
|
||||
$lang->cmd_add_item = "Добавить пункт";
|
||||
|
||||
$lang->msg_poll_cannot_modify = "Вы не можете изменить этот опрос. Его следует удалить для того, чтобы создать новый.";
|
||||
?>
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/poll_maker/lang/en.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor module > language pack of poll_maker component
|
||||
**/
|
||||
|
||||
$lang->poll_title = "Başlık";
|
||||
$lang->poll_item = "Parça";
|
||||
$lang->poll_stop_date = "Sonlandırma Tarihi";
|
||||
$lang->poll_chk_count = "Denetlenen Parça Sayısı";
|
||||
|
||||
$lang->cmd_add_poll = "Oylama Ekle";
|
||||
$lang->cmd_del_poll = "Parçayı Sil";
|
||||
$lang->cmd_add_item = "Parça Ekle";
|
||||
|
||||
$lang->msg_poll_cannot_modify = "Oylamayı düzenleyemezsiniz. Yeni oylama oluşturmak için, oylamanın silinmesi gerekiyor.";
|
||||
?>
|
||||
|
|
@ -1,20 +0,0 @@
|
|||
<?php
|
||||
/* ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
|
||||
░░ * @File : common/lang/vi.lang.php ░░
|
||||
░░ * @Author : NHN (developers@xpressengine.com) ░░
|
||||
░░ * @Trans : Đào Đức Duy (ducduy.dao.vn@vietxe.net) ░░
|
||||
░░ * @Website: http://vietxe.net ░░
|
||||
░░ * @Brief : Vietnamese Language Pack (Only basic words are included here) ░░
|
||||
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ */
|
||||
|
||||
$lang->poll_title = "Tiêu đề";
|
||||
$lang->poll_item = "Mục";
|
||||
$lang->poll_stop_date = "Ngày hết hạn";
|
||||
$lang->poll_chk_count = "Số phiếu";
|
||||
|
||||
$lang->cmd_add_poll = "Tạo thăm dò";
|
||||
$lang->cmd_del_poll = "Xóa thăm dò";
|
||||
$lang->cmd_add_item = "Thêm mục";
|
||||
|
||||
$lang->msg_poll_cannot_modify = "Bạn không thể sửa đổi được. Nó sẽ được xóa để tạo cuộc thăm dò mới.";
|
||||
?>
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/urllink/lang/zh-CN.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief 网页编辑器(editor) 模块 > 投票调查组件语言包
|
||||
**/
|
||||
|
||||
$lang->poll_title = "标题";
|
||||
$lang->poll_item = "项目";
|
||||
$lang->poll_stop_date = "结束日期";
|
||||
$lang->poll_chk_count = "选择项目数";
|
||||
|
||||
$lang->cmd_add_poll = "添加投票";
|
||||
$lang->cmd_del_poll = "解除投票";
|
||||
$lang->cmd_add_item = "添加项目";
|
||||
|
||||
$lang->msg_poll_cannot_modify = '投票调查不提供修改功能。必须删除后再生成';
|
||||
?>
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file /modules/editor/components/urllink/lang/zh-TW.lang.php
|
||||
* @author NHN (developers@xpressengine.com) 翻譯:royallin
|
||||
* @brief 網頁編輯器(editor) 模組 > 投票調查組件語言
|
||||
**/
|
||||
|
||||
$lang->poll_title = "標題";
|
||||
$lang->poll_item = "項目";
|
||||
$lang->poll_stop_date = "結束日期";
|
||||
$lang->poll_chk_count = "選擇項目數";
|
||||
|
||||
$lang->cmd_add_poll = "新增投票";
|
||||
$lang->cmd_del_poll = "刪除投票";
|
||||
$lang->cmd_add_item = "新增項目";
|
||||
|
||||
$lang->msg_poll_cannot_modify = '投票調查不提供修改功能。必須刪除後再新增';
|
||||
?>
|
||||
|
|
@ -1,60 +1,57 @@
|
|||
<?php
|
||||
/**
|
||||
* @class poll_maker
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief 에디터에서 url링크하는 기능 제공.
|
||||
**/
|
||||
|
||||
class poll_maker extends EditorHandler {
|
||||
|
||||
// editor_sequence 는 에디터에서 필수로 달고 다녀야 함....
|
||||
var $editor_sequence = 0;
|
||||
var $component_path = '';
|
||||
|
||||
/**
|
||||
* @brief editor_sequence과 컴포넌트의 경로를 받음
|
||||
**/
|
||||
function poll_maker($editor_sequence, $component_path) {
|
||||
$this->editor_sequence = $editor_sequence;
|
||||
$this->component_path = $component_path;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief popup window요청시 popup window에 출력할 내용을 추가하면 된다
|
||||
**/
|
||||
function getPopupContent() {
|
||||
// 설문조사 스킨을 구함
|
||||
$oModuleModel = &getModel('module');
|
||||
$skin_list = $oModuleModel->getSkins("./modules/poll/");
|
||||
Context::set('skin_list', $skin_list);
|
||||
|
||||
// 템플릿을 미리 컴파일해서 컴파일된 소스를 return
|
||||
$tpl_path = $this->component_path.'tpl';
|
||||
$tpl_file = 'popup.html';
|
||||
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
return $oTemplate->compile($tpl_path, $tpl_file);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 에디터 컴포넌트가 별도의 고유 코드를 이용한다면 그 코드를 html로 변경하여 주는 method
|
||||
*
|
||||
* 이미지나 멀티미디어, 설문등 고유 코드가 필요한 에디터 컴포넌트는 고유코드를 내용에 추가하고 나서
|
||||
* DocumentModule::transContent() 에서 해당 컴포넌트의 transHtml() method를 호출하여 고유코드를 html로 변경
|
||||
**/
|
||||
function transHTML($xml_obj) {
|
||||
$poll_srl = $xml_obj->attrs->poll_srl;
|
||||
$skin = $xml_obj->attrs->skin;
|
||||
if(!$skin) $skin = 'default';
|
||||
|
||||
preg_match('/width([^[:digit:]]+)([0-9]+)/i',$xml_obj->attrs->style,$matches);
|
||||
$width = $matches[2];
|
||||
if(!$width) $width = 400;
|
||||
$style = sprintf('width:%dpx', $width);
|
||||
|
||||
// poll model 객체 생성해서 html 얻어와서 return
|
||||
$oPollModel = &getModel('poll');
|
||||
return $oPollModel->getPollHtml($poll_srl, $style, $skin);
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
/**
|
||||
* @class poll_maker
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief Editor provides the ability to link to the url.
|
||||
**/
|
||||
|
||||
class poll_maker extends EditorHandler {
|
||||
// editor_sequence from the editor must attend mandatory wearing ....
|
||||
var $editor_sequence = 0;
|
||||
var $component_path = '';
|
||||
|
||||
/**
|
||||
* @brief editor_sequence and components out of the path
|
||||
**/
|
||||
function poll_maker($editor_sequence, $component_path) {
|
||||
$this->editor_sequence = $editor_sequence;
|
||||
$this->component_path = $component_path;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief popup window to display in popup window request is to add content
|
||||
**/
|
||||
function getPopupContent() {
|
||||
// Wanted Skins survey
|
||||
$oModuleModel = &getModel('module');
|
||||
$skin_list = $oModuleModel->getSkins("./modules/poll/");
|
||||
Context::set('skin_list', $skin_list);
|
||||
// Pre-compiled source code to compile template return to
|
||||
$tpl_path = $this->component_path.'tpl';
|
||||
$tpl_file = 'popup.html';
|
||||
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
return $oTemplate->compile($tpl_path, $tpl_file);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Editor of the components separately if you use a unique code to the html code for a method to change
|
||||
*
|
||||
* Images and multimedia, seolmundeung unique code is required for the editor component added to its own code, and then
|
||||
* DocumentModule:: transContent() of its components transHtml() method call to change the html code for your own
|
||||
**/
|
||||
function transHTML($xml_obj) {
|
||||
$poll_srl = $xml_obj->attrs->poll_srl;
|
||||
$skin = $xml_obj->attrs->skin;
|
||||
if(!$skin) $skin = 'default';
|
||||
|
||||
preg_match('/width([^[:digit:]]+)([0-9]+)/i',$xml_obj->attrs->style,$matches);
|
||||
$width = $matches[2];
|
||||
if(!$width) $width = 400;
|
||||
$style = sprintf('width:%dpx', $width);
|
||||
// poll model object creation to come get it return html
|
||||
$oPollModel = &getModel('poll');
|
||||
return $oPollModel->getPollHtml($poll_srl, $style, $skin);
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -10,23 +10,17 @@
|
|||
var msg_poll_cannot_modify = "{$lang->msg_poll_cannot_modify}";
|
||||
</script>
|
||||
|
||||
<div id="popHeader" class="wide">
|
||||
<h3 class="xeAdmin">{$component_info->title} ver. {$component_info->version}</h3>
|
||||
</div>
|
||||
|
||||
<h1 class="h1">{$component_info->title} ver. {$component_info->version}</h1>
|
||||
<form action="./" method="post" id="fo_component" onSubmit="procFilter(this, insert_poll); return false;">
|
||||
<input type="hidden" name="component" value="{$component_info->component_name}" />
|
||||
<input type="hidden" name="method" value="insertPoll" />
|
||||
<input type="hidden" name="poll_srl" value="" />
|
||||
|
||||
|
||||
<div id="popBody">
|
||||
|
||||
<table cellspacing="0" class="rowTable">
|
||||
<input type="hidden" name="component" value="{$component_info->component_name}" />
|
||||
<input type="hidden" name="method" value="insertPoll" />
|
||||
<input type="hidden" name="poll_srl" value="" />
|
||||
<div class="table">
|
||||
<table width="100%" border="1" cellspacing="0">
|
||||
<col width="100" />
|
||||
<col />
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->poll_stop_date}</div></th>
|
||||
<th scope="row">{$lang->poll_stop_date}</th>
|
||||
<td>
|
||||
|
||||
<input type="hidden" name="stop_date" id="stop_date" value="{date('Ymd',time()+60*60*24*30)}" />
|
||||
|
|
@ -52,7 +46,7 @@
|
|||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->skin}</div></th>
|
||||
<th scope="row">{$lang->skin}</th>
|
||||
<td>
|
||||
<select name="skin">
|
||||
<!--@foreach($skin_list as $skin=>$skin_info)-->
|
||||
|
|
@ -62,44 +56,39 @@
|
|||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<div id="poll_source" class="clear" style="display:none">
|
||||
<div class="clear"></div>
|
||||
|
||||
<table cellspacing="0" class="rowTable gap1">
|
||||
<col width="100" />
|
||||
<col />
|
||||
<tr>
|
||||
<th scope="row"><div><label>{$lang->poll_chk_count}</label></div></th>
|
||||
<td><input type="text" name="checkcount_tidx" value="1" size="1" class="inputTypeText" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->poll_title}</div></th>
|
||||
<td><input type="text" name="title_tidx" class="inputTypeText w400" /></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->poll_item} 1</div></th>
|
||||
<td><input type="text" name="item_tidx_1" class="inputTypeText w400" /></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->poll_item} 2</div></th>
|
||||
<td><input type="text" name="item_tidx_2" class="inputTypeText w400" /></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<a href="#" onclick="doPollAddItem(this); return false;" class="button black small"><span>{$lang->cmd_add_item}</span></a>
|
||||
<a href="#" onclick="doPollDelete(this); return false;" class="button red small"><span>{$lang->cmd_del_poll}</span></a>
|
||||
<div id="poll_source" style="display:none">
|
||||
<div class="table">
|
||||
<table width="100%" border="1" cellspacing="0">
|
||||
<col width="100" />
|
||||
<col />
|
||||
<tr>
|
||||
<th scope="row"><div><label>{$lang->poll_chk_count}</label></div></th>
|
||||
<td><input type="text" name="checkcount_tidx" value="1" size="1" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->poll_title}</div></th>
|
||||
<td><input type="text" name="title_tidx" /></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->poll_item} 1</div></th>
|
||||
<td><input type="text" name="item_tidx_1" /></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<th scope="row"><div>{$lang->poll_item} 2</div></th>
|
||||
<td><input type="text" name="item_tidx_2" /></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<button type="button" class="_add_item">{$lang->cmd_add_item}</button>
|
||||
<button type="button" class="_del_item">{$lang->cmd_del_item}</button>
|
||||
<button type="button" class="_del_poll">{$lang->cmd_del_poll}</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="popFooter">
|
||||
<span class="button black strong"><input type="submit" value="{$lang->cmd_submit}" /></span>
|
||||
<a href="#" onclick="doPollAdd(); return false;" class="button blue"><span>{$lang->cmd_add_poll}</span></a>
|
||||
<a href="#" onclick="winopen('./?module=editor&act=dispEditorComponentInfo&component_name={$component_info->component_name}','ComponentInfo','left=10,top=10,width=10,height=10,resizable=no,scrollbars=no,toolbars=no');return false;" class="button"><span>{$lang->about_component}</span></a>
|
||||
<div class="btnArea">
|
||||
<span class="btn"><input type="submit" value="{$lang->cmd_submit}" /></span>
|
||||
<span class="btn"><button type="button" id="add_poll">{$lang->cmd_add_poll}</button></span>
|
||||
<span class="btn"><a href="./?module=editor&act=dispEditorComponentInfo&component_name={$component_info->component_name}" target="_blank">{$lang->about_component}</a></span>
|
||||
</div>
|
||||
|
||||
|
||||
</form>
|
||||
|
|
|
|||
|
|
@ -2,30 +2,6 @@
|
|||
* popup으로 열렸을 경우 부모창의 위지윅에디터에 select된 block이 있는지 체크하여
|
||||
* 있으면 가져와서 원하는 곳에 삽입
|
||||
**/
|
||||
var poll_index = 1;
|
||||
function setPoll() {
|
||||
var node = opener.editorPrevNode;
|
||||
if(node && node.getAttribute('editor_component')=='poll_maker') {
|
||||
alert(msg_poll_cannot_modify);
|
||||
window.close();
|
||||
return;
|
||||
}
|
||||
|
||||
var obj = xCreateElement("div");
|
||||
var source = xGetElementById("poll_source");
|
||||
|
||||
var html = xInnerHtml(source);
|
||||
html = html.replace(/tidx/g, poll_index);
|
||||
xInnerHtml(obj, html);
|
||||
|
||||
obj.id = "poll_"+poll_index;
|
||||
obj.className = "poll_box";
|
||||
obj.style.display = "block";
|
||||
|
||||
source.parentNode.insertBefore(obj, source);
|
||||
|
||||
setFixedPopupSize();
|
||||
}
|
||||
|
||||
/**
|
||||
* 부모창의 위지윅에디터에 데이터를 삽입
|
||||
|
|
@ -33,112 +9,114 @@ function setPoll() {
|
|||
function completeInsertPoll(ret_obj) {
|
||||
if(typeof(opener)=="undefined") return null;
|
||||
|
||||
var fo_obj = xGetElementById('fo_component');
|
||||
var fo_obj = get_by_id('fo_component');
|
||||
var skin = fo_obj.skin.options[fo_obj.skin.selectedIndex].value;
|
||||
|
||||
var poll_srl = ret_obj["poll_srl"];
|
||||
if(!poll_srl) return null;
|
||||
|
||||
var text = "<img src=\"../../../../common/tpl/images/blank.gif\" poll_srl=\""+poll_srl+"\" editor_component=\"poll_maker\" skin=\""+skin+"\" style=\"width:400px;height:300px;border:2px dotted #4371B9;background:url(./modules/editor/components/poll_maker/tpl/poll_maker_component.gif) no-repeat center;\" />";
|
||||
var text = "<img src=\"../../../../common/img/blank.gif\" poll_srl=\""+poll_srl+"\" editor_component=\"poll_maker\" skin=\""+skin+"\" style=\"display:block;width:400px;height:300px;border:2px dotted #4371B9;background:url(./modules/editor/components/poll_maker/tpl/poll_maker_component.gif) no-repeat center;\" />";
|
||||
|
||||
alert(ret_obj['message']);
|
||||
|
||||
var iframe_obj = opener.editorGetIFrame(opener.editorPrevSrl)
|
||||
opener.editorReplaceHTML(iframe_obj, text);
|
||||
opener.editorFocus(opener.editorPrevSrl);
|
||||
|
||||
opener.focus();
|
||||
var iframe_obj = opener.editorGetIFrame(opener.editorPrevSrl)
|
||||
|
||||
opener.editorReplaceHTML(iframe_obj, text);
|
||||
opener.editorFocus(opener.editorPrevSrl);
|
||||
window.close();
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
xAddEventListener(window, "load", setPoll);
|
||||
jQuery(function($){
|
||||
var $node, poll_last_idx = 1;
|
||||
|
||||
/**
|
||||
* 새 설문 추가
|
||||
**/
|
||||
function doPollAdd() {
|
||||
var obj = xCreateElement("div");
|
||||
var source = xGetElementById("poll_source");
|
||||
if(poll_index+1>8) return null;
|
||||
poll_index++;
|
||||
$node = $(opener.editorPrevNode);
|
||||
if($node.length && $node.attr('editor_component') == 'poll_maker') {
|
||||
alert(msg_poll_cannot_modify);
|
||||
return window.close();
|
||||
}
|
||||
|
||||
var html = xInnerHtml(source);
|
||||
html = html.replace(/tidx/g, poll_index);
|
||||
xInnerHtml(obj, html);
|
||||
// Add a new poll
|
||||
$('#add_poll').click(function(){
|
||||
addPoll();
|
||||
setFixedPopupSize();
|
||||
});
|
||||
|
||||
obj.id = "poll_"+poll_index;
|
||||
obj.className = "poll_box";
|
||||
obj.style.display = "block";
|
||||
// Add a new item
|
||||
$('button._add_item').click(function(){
|
||||
var $tr_src, $tr_new, $th, idx;
|
||||
|
||||
source.parentNode.insertBefore(obj, source);
|
||||
$tr_src = $(this).prev().children('table').find('>tbody>tr:last');
|
||||
$tr_new = $tr_src.clone();
|
||||
|
||||
setFixedPopupSize();
|
||||
match = $tr_src.find('td>input').attr('name').match(/item_(\d+)_(\d+)$/);
|
||||
if(!match) return;
|
||||
|
||||
return null;
|
||||
}
|
||||
match[2]++;
|
||||
|
||||
/**
|
||||
* 항목 삭제
|
||||
**/
|
||||
function doPollDelete(obj) {
|
||||
var pobj = xPrevSib(xPrevSib(obj)).lastChild.lastChild;
|
||||
if(!pobj || typeof(pobj.id)=='undefined') return;
|
||||
var tmp_arr = pobj.id.split('_');
|
||||
var index = tmp_arr[1];
|
||||
if(index==1) return;
|
||||
($th=$tr_new.find('th')).html( $th.html().replace(/ \d+/, ' '+match[2]) );
|
||||
$tr_new.find('td>input').attr('name', 'item_'+match[1]+'_'+match[2]);
|
||||
|
||||
pobj.parentNode.removeChild(pobj);
|
||||
$tr_src.after($tr_new);
|
||||
|
||||
var obj_list = xGetElementsByClassName('poll_box');
|
||||
for(var i=0;i<obj_list.length;i++) {
|
||||
var nobj = obj_list[i];
|
||||
if(nobj.id == 'poll_source') continue;
|
||||
var tmp_arr = nobj.id.split('_');
|
||||
var index = tmp_arr[1];
|
||||
nobj.id = 'poll_'+(i+1);
|
||||
}
|
||||
poll_index = i-1;
|
||||
setFixedPopupSize();
|
||||
});
|
||||
|
||||
setFixedPopupSize();
|
||||
}
|
||||
// delete an item
|
||||
$('button._del_item').click(function(){
|
||||
var $tr, match;
|
||||
|
||||
/**
|
||||
* 새 항목 추가
|
||||
**/
|
||||
function doPollAddItem(obj) {
|
||||
var tbl = xPrevSib(obj);
|
||||
var tbody = tbl.lastChild;
|
||||
var tmp = tbody.firstChild;
|
||||
var source = null;
|
||||
while(tmp.nextSibling) {
|
||||
tmp = tmp.nextSibling;
|
||||
if(tmp.nodeName == "TR") source = tmp;
|
||||
}
|
||||
$tr = $(this).prevAll('div').children('table').find('>tbody>tr:last');
|
||||
match = $tr.find('td>input').attr('name').match(/item_(\d+)_(\d+)/);
|
||||
if(!match || match[2] == 2) return;
|
||||
|
||||
var new_obj = source.cloneNode(true);
|
||||
new_obj.className = source.className;
|
||||
source.parentNode.appendChild(new_obj);
|
||||
$tr.remove();
|
||||
|
||||
var html = xInnerHtml(new_obj);
|
||||
var idx_match = html.match(/ ([0-9]+)</i);
|
||||
var idx = parseInt(idx_match[1],10);
|
||||
setFixedPopupSize();
|
||||
});
|
||||
|
||||
var tmp = new_obj.firstChild;
|
||||
while(tmp) {
|
||||
if(tmp.nodeName == "TH") {
|
||||
var html = xInnerHtml(tmp);
|
||||
html = html.replace(/ ([0-9]+)/, ' '+(idx+1));
|
||||
xInnerHtml(tmp, html);
|
||||
} else if(tmp.nodeName == "TD") {
|
||||
var html = xInnerHtml(tmp);
|
||||
html = html.replace(/item_([0-9]+)_([0-9]+)/, 'item_$1_'+(idx+1));
|
||||
xInnerHtml(tmp, html);
|
||||
}
|
||||
tmp = tmp.nextSibling;
|
||||
}
|
||||
// delete a poll
|
||||
$('button._del_poll').click(function(){
|
||||
$(this).parent('.poll_box').remove();
|
||||
|
||||
setFixedPopupSize();
|
||||
reindex();
|
||||
});
|
||||
|
||||
return null;
|
||||
}
|
||||
function reindex() {
|
||||
var $polls = $('.poll_box'); $inputs = $polls.find('input'), poll_idx = 0;
|
||||
|
||||
$inputs.attr('name', function(idx, val) {
|
||||
if(/^checkcount_/.test(val)) poll_idx++;
|
||||
return val.replace(/^([a-z]+_)(?:tidx|\d+)/, '$1'+poll_idx);
|
||||
});
|
||||
|
||||
// If there are two or more polls, show 'delete poll' button.
|
||||
// Otherwise hide the button.
|
||||
if($polls.length > 1) {
|
||||
$polls.find('button._del_poll').show();
|
||||
} else {
|
||||
$polls.find('button._del_poll').hide();
|
||||
}
|
||||
}
|
||||
|
||||
function addPoll() {
|
||||
var $src = $('#poll_source');
|
||||
|
||||
$src.before(
|
||||
$src.clone(true)
|
||||
.removeAttr('id')
|
||||
.addClass('poll_box')
|
||||
.css('display', 'block')
|
||||
);
|
||||
|
||||
reindex();
|
||||
}
|
||||
|
||||
// add a poll
|
||||
addPoll();
|
||||
});
|
||||
|
||||
jQuery(window).load(setFixedPopupSize);
|
||||
|
|
|
|||
|
|
@ -1,36 +1,36 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module version="0.2">
|
||||
<title xml:lang="vi">WYSIWYG Editor</title>
|
||||
<title xml:lang="ko">위지윅 에디터 </title>
|
||||
<title xml:lang="en">WYSIWYG Editor</title>
|
||||
<title xml:lang="es">Editor WYSIWYG</title>
|
||||
<title xml:lang="zh-CN">网页编辑器</title>
|
||||
<title xml:lang="jp">ウイジウイグエディター</title>
|
||||
<title xml:lang="ru">WYSIWYG-редактор</title>
|
||||
<title xml:lang="zh-TW">網頁編輯器</title>
|
||||
<title xml:lang="tr">Editor WYSIWYG</title>
|
||||
<description xml:lang="vi">Module hiển thị WYSIWYG Editor để quản lý những kiểu viết bài.</description>
|
||||
<description xml:lang="ko">위지윅 에디터를 출력하거나 에디터 컴포넌트들을 관리/중계하는 모듈입니다.</description>
|
||||
<description xml:lang="en">Module for displaying WYSIWYG editor and managing/relaying editor components.</description>
|
||||
<description xml:lang="es">Módulo para mostrar en la pantalla el editor de WYSIWYG y para el manejo/relato de los componentes del editor.</description>
|
||||
<description xml:lang="zh-CN">显示网页编辑器或管理/传递编辑器组件的模块。</description>
|
||||
<description xml:lang="jp">ウイジウイグエディター を出力したり、エディターのコンポーネントを管理・中継するモジュールです。</description>
|
||||
<description xml:lang="ru">Модуль для отображения WYSIWYG-редактора и управления/смены записей редактора.</description>
|
||||
<description xml:lang="zh-TW">顯示網頁編輯器或管理/傳遞編輯器組件的模組。</description>
|
||||
<description xml:lang="tr">WYSIWYG editörünü görüntüleme ve editör bileşenlerini düzenleme/aktarma için kullanılan modüldür. </description>
|
||||
<version>0.1</version>
|
||||
<date>2007-02-28</date>
|
||||
<category>utility</category>
|
||||
|
||||
<author email_address="developers@xpressengine.com" link="http://xpressengine.com/">
|
||||
<name xml:lang="vi">NHN</name>
|
||||
<name xml:lang="ko">NHN</name>
|
||||
<name xml:lang="en">NHN</name>
|
||||
<name xml:lang="es">NHN</name>
|
||||
<name xml:lang="zh-CN">NHN</name>
|
||||
<name xml:lang="jp">NHN</name>
|
||||
<name xml:lang="ru">NHN</name>
|
||||
<name xml:lang="zh-TW">NHN</name>
|
||||
<name xml:lang="tr">NHN</name>
|
||||
</author>
|
||||
</module>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module version="0.2">
|
||||
<title xml:lang="vi">WYSIWYG Editor</title>
|
||||
<title xml:lang="ko">위지윅 에디터 </title>
|
||||
<title xml:lang="en">WYSIWYG Editor</title>
|
||||
<title xml:lang="es">Editor WYSIWYG</title>
|
||||
<title xml:lang="zh-CN">网页编辑器</title>
|
||||
<title xml:lang="jp">ウイジウイグエディター</title>
|
||||
<title xml:lang="ru">WYSIWYG-редактор</title>
|
||||
<title xml:lang="zh-TW">網頁編輯器</title>
|
||||
<title xml:lang="tr">Editor WYSIWYG</title>
|
||||
<description xml:lang="vi">Module hiển thị WYSIWYG Editor để quản lý những kiểu viết bài.</description>
|
||||
<description xml:lang="ko">위지윅 에디터를 출력하거나 에디터 컴포넌트들을 관리/중계하는 모듈입니다.</description>
|
||||
<description xml:lang="en">Module for displaying WYSIWYG editor and managing/relaying editor components.</description>
|
||||
<description xml:lang="es">Módulo para mostrar en la pantalla el editor de WYSIWYG y para el manejo/relato de los componentes del editor.</description>
|
||||
<description xml:lang="zh-CN">显示网页编辑器或管理/传递编辑器组件的模块。</description>
|
||||
<description xml:lang="jp">ウイジウイグエディター を出力したり、エディターのコンポーネントを管理・中継するモジュールです。</description>
|
||||
<description xml:lang="ru">Модуль для отображения WYSIWYG-редактора и управления/смены записей редактора.</description>
|
||||
<description xml:lang="zh-TW">顯示網頁編輯器或管理/傳遞編輯器組件的模組。</description>
|
||||
<description xml:lang="tr">WYSIWYG editörünü görüntüleme ve editör bileşenlerini düzenleme/aktarma için kullanılan modüldür. </description>
|
||||
<version>0.1</version>
|
||||
<date>2007-02-28</date>
|
||||
<category>utility</category>
|
||||
|
||||
<author email_address="developers@xpressengine.com" link="http://xpressengine.com/">
|
||||
<name xml:lang="vi">NHN</name>
|
||||
<name xml:lang="ko">NHN</name>
|
||||
<name xml:lang="en">NHN</name>
|
||||
<name xml:lang="es">NHN</name>
|
||||
<name xml:lang="zh-CN">NHN</name>
|
||||
<name xml:lang="jp">NHN</name>
|
||||
<name xml:lang="ru">NHN</name>
|
||||
<name xml:lang="zh-TW">NHN</name>
|
||||
<name xml:lang="tr">NHN</name>
|
||||
</author>
|
||||
</module>
|
||||
|
|
|
|||
|
|
@ -1,28 +1,42 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<module>
|
||||
<grants />
|
||||
<permissions />
|
||||
<actions>
|
||||
<action name="dispEditorPopup" type="view" standalone="true" />
|
||||
<action name="dispEditorComponentInfo" type="view" standalone="true" />
|
||||
|
||||
<action name="dispEditorAdminIndex" type="view" standalone="true" admin_index="true" />
|
||||
<action name="dispEditorAdminSetupComponent" type="view" standalone="true" />
|
||||
<action name="dispEditorAdminSkinColorset" type="view" standalone="true" />
|
||||
<action name="dispEditorPreview" type="view" />
|
||||
<action name="dispEditorSkinColorset" type="view" />
|
||||
|
||||
|
||||
<action name="procEditorSaveDoc" type="controller" standalone="true" />
|
||||
<action name="procEditorRemoveSavedDoc" type="controller" standalone="true" />
|
||||
<action name="procEditorCall" type="controller" standalone="true" />
|
||||
<action name="procEditorInsertModuleConfig" type="controller" standalone="true" />
|
||||
|
||||
<action name="procEditorAdminEnableComponent" type="controller" standalone="true" />
|
||||
<action name="procEditorAdminDisableComponent" type="controller" standalone="true" />
|
||||
<action name="procEditorAdminMoveListOrder" type="controller" standalone="true" />
|
||||
<action name="procEditorAdminSetupComponent" type="controller" standalone="true" />
|
||||
|
||||
<action name="procEditorLoadSavedDocument" type="controller" standalone="true" />
|
||||
</actions>
|
||||
</module>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<module>
|
||||
<grants />
|
||||
<permissions />
|
||||
<actions>
|
||||
<action name="dispEditorPopup" type="view" standalone="true" />
|
||||
<action name="dispEditorComponentInfo" type="view" standalone="true" />
|
||||
|
||||
<action name="dispEditorAdminIndex" type="view" standalone="true" menu_name="editor" menu_index="true" admin_index="true" />
|
||||
<action name="dispEditorAdminSetupComponent" type="view" standalone="true" />
|
||||
<action name="dispEditorAdminSkinColorset" type="view" standalone="true" />
|
||||
<action name="dispEditorConfigPreview" type="view" />
|
||||
<action name="dispEditorPreview" type="view" />
|
||||
<action name="dispEditorSkinColorset" type="view" />
|
||||
|
||||
<action name="procEditorSaveDoc" type="controller" standalone="true" />
|
||||
<action name="procEditorRemoveSavedDoc" type="controller" standalone="true" />
|
||||
<action name="procEditorCall" type="controller" standalone="true" />
|
||||
<action name="procEditorInsertModuleConfig" type="controller" standalone="true" />
|
||||
|
||||
<action name="procEditorAdminSetupComponent" type="controller" standalone="true" ruleset="setupComponent" />
|
||||
<action name="procEditorAdminGeneralConfig" type="controller" standalone="true" ruleset="generalConfig" />
|
||||
<action name="procEditorAdminCheckUseListOrder" type="controller" standalone="true" ruleset="componentOrderAndUse" />
|
||||
|
||||
<action name="procEditorLoadSavedDocument" type="controller" standalone="true" />
|
||||
</actions>
|
||||
<menus>
|
||||
<menu name="editor">
|
||||
<title xml:lang="en">WYSIWYG Editor</title>
|
||||
<title xml:lang="ko">에디터</title>
|
||||
<title xml:lang="zh-CN">WYSIWYG Editor</title>
|
||||
<title xml:lang="jp">WYSIWYG Editor</title>
|
||||
<title xml:lang="es">WYSIWYG Editor</title>
|
||||
<title xml:lang="ru">WYSIWYG Editor</title>
|
||||
<title xml:lang="fr">WYSIWYG Editor</title>
|
||||
<title xml:lang="zh-TW">WYSIWYG Editor</title>
|
||||
<title xml:lang="vi">WYSIWYG Editor</title>
|
||||
<title xml:lang="mn">WYSIWYG Editor</title>
|
||||
<title xml:lang="tr">WYSIWYG Editor</title>
|
||||
</menu>
|
||||
</menus>
|
||||
</module>
|
||||
|
|
|
|||
|
|
@ -1,166 +1,181 @@
|
|||
<?php
|
||||
/**
|
||||
* @class editorAdminController
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor 모듈의 admin controller class
|
||||
**/
|
||||
|
||||
class editorAdminController extends editor {
|
||||
|
||||
/**
|
||||
* @brief 초기화
|
||||
**/
|
||||
function init() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 컴포넌트의 활성화
|
||||
**/
|
||||
function procEditorAdminEnableComponent() {
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
|
||||
$args->component_name = Context::get('component_name');
|
||||
$args->enabled = 'Y';
|
||||
$args->site_srl = (int)$site_module_info->site_srl;
|
||||
if(!$args->site_srl) $output = executeQuery('editor.updateComponent', $args);
|
||||
else $output = executeQuery('editor.updateSiteComponent', $args);
|
||||
if(!$output->toBool()) return $output;
|
||||
|
||||
$oEditorController = &getController('editor');
|
||||
$oEditorController->removeCache($args->site_srl);
|
||||
|
||||
$this->setMessage('success_updated');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 컴포넌트의 비활성화
|
||||
**/
|
||||
function procEditorAdminDisableComponent() {
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
|
||||
$args->component_name = Context::get('component_name');
|
||||
$args->enabled = 'N';
|
||||
$args->site_srl = (int)$site_module_info->site_srl;
|
||||
if(!$args->site_srl) $output = executeQuery('editor.updateComponent', $args);
|
||||
else $output = executeQuery('editor.updateSiteComponent', $args);
|
||||
if(!$output->toBool()) return $output;
|
||||
|
||||
$oEditorController = &getController('editor');
|
||||
$oEditorController->removeCache($args->site_srl);
|
||||
|
||||
$this->setMessage('success_updated');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 컴포넌트의 위치 변경
|
||||
**/
|
||||
function procEditorAdminMoveListOrder() {
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
$args->site_srl = (int)$site_module_info->site_srl;
|
||||
$args->component_name = Context::get('component_name');
|
||||
$mode = Context::get('mode');
|
||||
|
||||
// DB에서 전체 목록 가져옴
|
||||
if(!$args->site_srl) $output = executeQuery('editor.getComponentList', $args);
|
||||
else $output = executeQuery('editor.getSiteComponentList', $args);
|
||||
|
||||
$db_list = $output->data;
|
||||
foreach($db_list as $key => $val) {
|
||||
if($val->component_name == $args->component_name) break;
|
||||
}
|
||||
|
||||
if($mode=="up") {
|
||||
if($key == 2) return new Object(-1,'msg_component_is_first_order');
|
||||
|
||||
$prev_args->component_name = $db_list[$key-1]->component_name;
|
||||
$prev_args->list_order = $db_list[$key]->list_order;
|
||||
$prev_args->site_srl = $args->site_srl;
|
||||
if(!$args->site_srl) $output = executeQuery('editor.updateComponent', $prev_args);
|
||||
else $output = executeQuery('editor.updateSiteComponent', $prev_args);
|
||||
|
||||
$cur_args->component_name = $db_list[$key]->component_name;
|
||||
$cur_args->list_order = $db_list[$key-1]->list_order;
|
||||
if($prev_args->list_order == $cur_args->list_order) $cur_args->list_order--;
|
||||
$cur_args->site_srl = $args->site_srl;
|
||||
if(!$args->site_srl) $output = executeQuery('editor.updateComponent', $cur_args);
|
||||
else $output = executeQuery('editor.updateSiteComponent', $cur_args);
|
||||
} else {
|
||||
if($key == count($db_list)-1) return new Object(-1,'msg_component_is_last_order');
|
||||
|
||||
$next_args->component_name = $db_list[$key+1]->component_name;
|
||||
$next_args->list_order = $db_list[$key]->list_order;
|
||||
$next_args->site_srl = $args->site_srl;
|
||||
if(!$args->site_srl) $output = executeQuery('editor.updateComponent', $next_args);
|
||||
else $output = executeQuery('editor.updateSiteComponent', $next_args);
|
||||
|
||||
$cur_args->component_name = $db_list[$key]->component_name;
|
||||
$cur_args->list_order = $db_list[$key+1]->list_order;
|
||||
$cur_args->site_srl = $args->site_srl;
|
||||
if($next_args->list_order == $cur_args->list_order) $cur_args->list_order++;
|
||||
if(!$args->site_srl) $output = executeQuery('editor.updateComponent', $cur_args);
|
||||
else $output = executeQuery('editor.updateSiteComponent', $cur_args);
|
||||
}
|
||||
|
||||
$oEditorController = &getController('editor');
|
||||
$oEditorController->removeCache($args->site_srl);
|
||||
|
||||
$this->setMessage('success_updated');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 컴포넌트 설정
|
||||
**/
|
||||
function procEditorAdminSetupComponent() {
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
|
||||
$component_name = Context::get('component_name');
|
||||
$extra_vars = Context::getRequestVars();
|
||||
unset($extra_vars->component_name);
|
||||
unset($extra_vars->module);
|
||||
unset($extra_vars->act);
|
||||
unset($extra_vars->body);
|
||||
|
||||
if($extra_vars->target_group) $extra_vars->target_group = explode('|@|', $extra_vars->target_group);
|
||||
if($extra_vars->mid_list) $extra_vars->mid_list = explode('|@|', $extra_vars->mid_list);
|
||||
|
||||
$args->component_name = $component_name;
|
||||
$args->extra_vars = serialize($extra_vars);
|
||||
$args->site_srl = (int)$site_module_info->site_srl;
|
||||
|
||||
if(!$args->site_srl) $output = executeQuery('editor.updateComponent', $args);
|
||||
else $output = executeQuery('editor.updateSiteComponent', $args);
|
||||
if(!$output->toBool()) return $output;
|
||||
|
||||
$oEditorController = &getController('editor');
|
||||
$oEditorController->removeCache($args->site_srl);
|
||||
|
||||
$this->setMessage('success_updated');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 컴포넌트를 DB에 추가
|
||||
**/
|
||||
function insertComponent($component_name, $enabled = false, $site_srl = 0) {
|
||||
if($enabled) $enabled = 'Y';
|
||||
else $enabled = 'N';
|
||||
|
||||
$args->component_name = $component_name;
|
||||
$args->enabled = $enabled;
|
||||
$args->site_srl = $site_srl;
|
||||
|
||||
// 컴포넌트가 있는지 확인
|
||||
if(!$site_srl) $output = executeQuery('editor.isComponentInserted', $args);
|
||||
else $output = executeQuery('editor.isSiteComponentInserted', $args);
|
||||
if($output->data->count) return new Object(-1, 'msg_component_is_not_founded');
|
||||
|
||||
// 입력
|
||||
$args->list_order = getNextSequence();
|
||||
if(!$site_srl) $output = executeQuery('editor.insertComponent', $args);
|
||||
else $output = executeQuery('editor.insertSiteComponent', $args);
|
||||
|
||||
$oEditorController = &getController('editor');
|
||||
$oEditorController->removeCache($site_srl);
|
||||
return $output;
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
/**
|
||||
* @class editorAdminController
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor of the module admin controller class
|
||||
**/
|
||||
|
||||
class editorAdminController extends editor {
|
||||
|
||||
/**
|
||||
* @brief Initialization
|
||||
**/
|
||||
function init() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 컴포넌트 사용설정, 목록 순서 변경
|
||||
**/
|
||||
function procEditorAdminCheckUseListOrder(){
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
$enables = Context::get('enables');
|
||||
$component_names = Context::get('component_names');
|
||||
|
||||
if(!is_array($component_names)) $component_names = array();
|
||||
if(!is_array($enables)) $enables = array();
|
||||
|
||||
$unables = array_diff($component_names, $enables);
|
||||
$componentList = array();
|
||||
|
||||
foreach($enables as $component_name) {
|
||||
$componentList[$component_name] = 'Y';
|
||||
}
|
||||
foreach($unables as $component_name) {
|
||||
$componentList[$component_name] = 'N';
|
||||
}
|
||||
|
||||
$output = $this->editorListOrder($component_names,$site_module_info->site_srl);
|
||||
if(!$output->toBool()) return new Object();
|
||||
|
||||
$output = $this->editorCheckUse($componentList,$site_module_info->site_srl);
|
||||
if(!$output->toBool()) return new Object();
|
||||
|
||||
$oEditorController = &getController('editor');
|
||||
$oEditorController->removeCache($site_module_info->site_srl);
|
||||
$this->setRedirectUrl(Context::get('error_return_url'));
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief check use component
|
||||
**/
|
||||
function editorCheckUse($componentList, $site_srl = 0){
|
||||
$args->site_srl = $site_srl;
|
||||
|
||||
foreach($componentList as $componentName => $value){
|
||||
$args->component_name = $componentName;
|
||||
$args->enabled = $value;
|
||||
if($site_srl == 0) {
|
||||
$output = executeQuery('editor.updateComponent', $args);
|
||||
} else {
|
||||
$output = executeQuery('editor.updateSiteComponent', $args);
|
||||
}
|
||||
}
|
||||
if(!$output->toBool()) return new Object();
|
||||
|
||||
unset($componentList);
|
||||
return $output;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief list order componet
|
||||
**/
|
||||
function editorListOrder($component_names, $site_srl = 0){
|
||||
$args->site_srl = $site_srl;
|
||||
$list_order_num = '30';
|
||||
if(is_array($component_names)) {
|
||||
foreach($component_names as $name){
|
||||
$args->list_order = $list_order_num;
|
||||
$args->component_name = $name;
|
||||
if($site_srl == 0) {
|
||||
$output = executeQuery('editor.updateComponent', $args);
|
||||
} else {
|
||||
$output = executeQuery('editor.updateSiteComponent', $args);
|
||||
}
|
||||
|
||||
|
||||
if(!$output->toBool()) return new Object();
|
||||
$list_order_num++;
|
||||
}
|
||||
}
|
||||
unset($component_names);
|
||||
return $output;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Set components
|
||||
**/
|
||||
function procEditorAdminSetupComponent() {
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
|
||||
$component_name = Context::get('component_name');
|
||||
$extra_vars = Context::getRequestVars();
|
||||
unset($extra_vars->component_name);
|
||||
unset($extra_vars->module);
|
||||
unset($extra_vars->act);
|
||||
unset($extra_vars->body);
|
||||
|
||||
if($extra_vars->target_group) $extra_vars->target_group = explode('|@|', $extra_vars->target_group);
|
||||
if($extra_vars->mid_list) $extra_vars->mid_list = explode('|@|', $extra_vars->mid_list);
|
||||
|
||||
$args->component_name = $component_name;
|
||||
$args->extra_vars = serialize($extra_vars);
|
||||
$args->site_srl = (int)$site_module_info->site_srl;
|
||||
|
||||
if(!$args->site_srl) $output = executeQuery('editor.updateComponent', $args);
|
||||
else $output = executeQuery('editor.updateSiteComponent', $args);
|
||||
if(!$output->toBool()) return $output;
|
||||
|
||||
$oEditorController = &getController('editor');
|
||||
$oEditorController->removeCache($args->site_srl);
|
||||
|
||||
$this->setMessage('success_updated');
|
||||
if(!in_array(Context::getRequestMethod(),array('XMLRPC','JSON'))) {
|
||||
global $lang;
|
||||
htmlHeader();
|
||||
alertScript($lang->success_updated);
|
||||
reload(true);
|
||||
closePopupScript();
|
||||
htmlFooter();
|
||||
Context::close();
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Config components
|
||||
**/
|
||||
|
||||
function procEditorAdminGeneralConfig(){
|
||||
$oModuleController = &getController('module');
|
||||
$configVars = Context::getRequestVars();
|
||||
|
||||
$config->editor_skin = $configVars->editor_skin;
|
||||
$config->editor_height = $configVars->editor_height;
|
||||
$config->comment_editor_skin = $configVars->comment_editor_skin;
|
||||
$config->comment_editor_height = $configVars->comment_editor_height;
|
||||
$config->content_style = $configVars->content_style;
|
||||
$config->content_font = $configVars->content_font;
|
||||
$config->content_font_size= $configVars->content_font_size.'px';
|
||||
$config->sel_editor_colorset= $configVars->sel_editor_colorset;
|
||||
$config->sel_comment_editor_colorset= $configVars->sel_comment_editor_colorset;
|
||||
|
||||
$oModuleController->insertModuleConfig('editor',$config);
|
||||
$this->setRedirectUrl(Context::get('error_return_url'));
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Add a component to DB
|
||||
**/
|
||||
function insertComponent($component_name, $enabled = false, $site_srl = 0) {
|
||||
if($enabled) $enabled = 'Y';
|
||||
else $enabled = 'N';
|
||||
|
||||
$args->component_name = $component_name;
|
||||
$args->enabled = $enabled;
|
||||
$args->site_srl = $site_srl;
|
||||
// Check if the component exists
|
||||
if(!$site_srl) $output = executeQuery('editor.isComponentInserted', $args);
|
||||
else $output = executeQuery('editor.isSiteComponentInserted', $args);
|
||||
if($output->data->count) return new Object(-1, 'msg_component_is_not_founded');
|
||||
// Inert a component
|
||||
$args->list_order = getNextSequence();
|
||||
if(!$site_srl) $output = executeQuery('editor.insertComponent', $args);
|
||||
else $output = executeQuery('editor.insertSiteComponent', $args);
|
||||
|
||||
$oEditorController = &getController('editor');
|
||||
$oEditorController->removeCache($site_srl);
|
||||
return $output;
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -1,89 +1,133 @@
|
|||
<?php
|
||||
/**
|
||||
* @class editorAdminView
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor 모듈의 admin view 클래스
|
||||
**/
|
||||
|
||||
class editorAdminView extends editor {
|
||||
|
||||
/**
|
||||
* @brief 초기화
|
||||
**/
|
||||
function init() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 관리자 설정 페이지
|
||||
* 에디터 컴포넌트의 on/off 및 설정을 담당
|
||||
**/
|
||||
function dispEditorAdminIndex() {
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
$site_srl = (int)$site_module_info->site_srl;
|
||||
|
||||
// 컴포넌트의 종류를 구해옴
|
||||
$oEditorModel = &getModel('editor');
|
||||
$component_list = $oEditorModel->getComponentList(false, $site_srl, true);
|
||||
|
||||
Context::set('component_list', $component_list);
|
||||
|
||||
$security = new Security();
|
||||
$security->encodeHTML('component_list....');
|
||||
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile('admin_index');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 컴퍼넌트 setup
|
||||
**/
|
||||
function dispEditorAdminSetupComponent() {
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
$site_srl = (int)$site_module_info->site_srl;
|
||||
|
||||
$component_name = Context::get('component_name');
|
||||
|
||||
// 에디터 컴포넌트의 정보를 구함
|
||||
$oEditorModel = &getModel('editor');
|
||||
$component = $oEditorModel->getComponent($component_name,$site_srl);
|
||||
Context::set('component', $component);
|
||||
|
||||
// 그룹 설정을 위한 그룹 목록을 구함
|
||||
$oMemberModel = &getModel('member');
|
||||
$group_list = $oMemberModel->getGroups($site_srl);
|
||||
Context::set('group_list', $group_list);
|
||||
|
||||
// mid 목록을 가져옴
|
||||
$oModuleModel = &getModel('module');
|
||||
|
||||
$args->site_srl = $site_srl;
|
||||
$mid_list = $oModuleModel->getMidList($args);
|
||||
|
||||
// module_category와 module의 조합
|
||||
if(!$args->site_srl) {
|
||||
// 모듈 카테고리 목록을 구함
|
||||
$module_categories = $oModuleModel->getModuleCategories();
|
||||
|
||||
if(!is_array($mid_list)) $mid_list = array($mid_list);
|
||||
foreach($mid_list as $module_srl => $module) {
|
||||
if($module) $module_categories[$module->module_category_srl]->list[$module_srl] = $module;
|
||||
}
|
||||
} else {
|
||||
$module_categories[0]->list = $mid_list;
|
||||
}
|
||||
|
||||
Context::set('mid_list',$module_categories);
|
||||
|
||||
//Security
|
||||
$security = new Security();
|
||||
$security->encodeHTML('group_list..title');
|
||||
$security->encodeHTML('component...');
|
||||
$security->encodeHTML('mid_list..title','mid_list..list..browser_title');
|
||||
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile('setup_component');
|
||||
$this->setLayoutFile("popup_layout");
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
/**
|
||||
* @class editorAdminView
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor admin view of the module class
|
||||
**/
|
||||
|
||||
class editorAdminView extends editor {
|
||||
|
||||
/**
|
||||
* @brief Initialization
|
||||
**/
|
||||
function init() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Administrator Setting page
|
||||
* Settings to enable/disable editor component and other features
|
||||
**/
|
||||
function dispEditorAdminIndex() {
|
||||
$component_count = 0;
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
$site_srl = (int)$site_module_info->site_srl;
|
||||
|
||||
// Get a type of component
|
||||
$oEditorModel = &getModel('editor');
|
||||
$oModuleModel = &getModel('module');
|
||||
$editor_config = $oModuleModel->getModuleConfig('editor');
|
||||
|
||||
//editor_config init
|
||||
if(!$editor_config->editor_height) $editor_config->editor_height = 400;
|
||||
if(!$editor_config->comment_editor_height) $editor_config->comment_editor_height = 100;
|
||||
if(!$editor_config->editor_skin) $editor_config->editor_skin = 'xpresseditor';
|
||||
if(!$editor_config->comment_editor_skin) $editor_config->comment_editor_skin = 'xpresseditor';
|
||||
if(!$editor_config->sel_editor_colorset) $editor_config->sel_editor_colorset= 'white';
|
||||
if(!$editor_config->sel_comment_editor_colorset) $editor_config->sel_comment_editor_colorset= 'white';
|
||||
|
||||
$component_list = $oEditorModel->getComponentList(false, $site_srl, true);
|
||||
$editor_skin_list = FileHandler::readDir(_XE_PATH_.'modules/editor/skins');
|
||||
|
||||
$skin_info = $oModuleModel->loadSkinInfo($this->module_path,$editor_config->editor_skin);
|
||||
|
||||
$contents = FileHandler::readDir(_XE_PATH_.'modules/editor/styles');
|
||||
for($i=0,$c=count($contents);$i<$c;$i++) {
|
||||
$style = $contents[$i];
|
||||
$info = $oModuleModel->loadSkinInfo($this->module_path,$style,'styles');
|
||||
$content_style_list[$style]->title = $info->title;
|
||||
}
|
||||
|
||||
// Get install info, update info, count
|
||||
$oAutoinstallModel = &getModel('autoinstall');
|
||||
foreach($component_list as $component_name => $xml_info) {
|
||||
$component_count++;
|
||||
$xml_info->path = './modules/editor/components/'.$xml_info->component_name;
|
||||
$xml_info->delete_url = $oAutoinstallModel->getRemoveUrlByPath($xml_info->path);
|
||||
$xml_info->package_srl = $oAutoinstallModel->getPackageSrlByPath($xml_info->path);
|
||||
if($xml_info->package_srl) $targetpackages[$xml_info->package_srl] = 0;
|
||||
}
|
||||
|
||||
if(is_array($targetpackages)) $packages = $oAutoinstallModel->getInstalledPackages(array_keys($targetpackages));
|
||||
|
||||
foreach($component_list as $component_name => $xml_info) {
|
||||
if($packages[$xml_info->package_srl]) $xml_info->need_update = $packages[$xml_info->package_srl]->need_update;
|
||||
}
|
||||
$editor_config_default = array( "editor_height" => "400", "comment_editor_height" => "100","content_font_size"=>"12");
|
||||
|
||||
Context::set('editor_config', $editor_config);
|
||||
Context::set('editor_skin_list', $editor_skin_list);
|
||||
Context::set('editor_colorset_list', $skin_info->colorset);
|
||||
Context::set('content_style_list', $content_style_list);
|
||||
Context::set('component_list', $component_list);
|
||||
Context::set('component_count', $component_count);
|
||||
Context::set('editor_config_default', $editor_config_default);
|
||||
|
||||
$security = new Security();
|
||||
$security->encodeHTML('component_list....');
|
||||
|
||||
$security = new Security();
|
||||
$security->encodeHTML('component_list....');
|
||||
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile('admin_index');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Component setup
|
||||
**/
|
||||
function dispEditorAdminSetupComponent() {
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
$site_srl = (int)$site_module_info->site_srl;
|
||||
|
||||
$component_name = Context::get('component_name');
|
||||
// Get information of the editor component
|
||||
$oEditorModel = &getModel('editor');
|
||||
$component = $oEditorModel->getComponent($component_name,$site_srl);
|
||||
Context::set('component', $component);
|
||||
// Get a group list to set a group
|
||||
$oMemberModel = &getModel('member');
|
||||
$group_list = $oMemberModel->getGroups($site_srl);
|
||||
Context::set('group_list', $group_list);
|
||||
// Get a mid list
|
||||
$oModuleModel = &getModel('module');
|
||||
|
||||
$args->site_srl = $site_srl;
|
||||
$columnList = array('module_srl', 'mid', 'module_category_srl', 'browser_title');
|
||||
$mid_list = $oModuleModel->getMidList($args, $columnList);
|
||||
// Combination of module_category and module
|
||||
if(!$args->site_srl) {
|
||||
// Get a list of module category
|
||||
$module_categories = $oModuleModel->getModuleCategories();
|
||||
|
||||
if(!is_array($mid_list)) $mid_list = array($mid_list);
|
||||
foreach($mid_list as $module_srl => $module) {
|
||||
if($module) $module_categories[$module->module_category_srl]->list[$module_srl] = $module;
|
||||
}
|
||||
} else {
|
||||
$module_categories[0]->list = $mid_list;
|
||||
}
|
||||
|
||||
Context::set('mid_list',$module_categories);
|
||||
|
||||
//Security
|
||||
$security = new Security();
|
||||
$security->encodeHTML('group_list..title');
|
||||
$security->encodeHTML('component...');
|
||||
$security->encodeHTML('mid_list..title','mid_list..list..browser_title');
|
||||
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile('setup_component');
|
||||
$this->setLayoutFile("popup_layout");
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -1,13 +1,13 @@
|
|||
<?php
|
||||
/**
|
||||
* @class editorAPI
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief
|
||||
**/
|
||||
|
||||
class editorAPI extends editor {
|
||||
function dispEditorSkinColorset(&$oModule) {
|
||||
$oModule->add('colorset', Context::get('colorset'));
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
/**
|
||||
* @class editorAPI
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief
|
||||
**/
|
||||
|
||||
class editorAPI extends editor {
|
||||
function dispEditorSkinColorset(&$oModule) {
|
||||
$oModule->add('colorset', Context::get('colorset'));
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -1,120 +1,105 @@
|
|||
<?php
|
||||
/**
|
||||
* @class editor
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor 모듈의 high class
|
||||
**/
|
||||
|
||||
class editor extends ModuleObject {
|
||||
|
||||
/**
|
||||
* @brief 설치시 추가 작업이 필요할시 구현
|
||||
**/
|
||||
function moduleInstall() {
|
||||
// action forward에 등록 (관리자 모드에서 사용하기 위함)
|
||||
$oModuleController = &getController('module');
|
||||
|
||||
// 기본 에디터 컴포넌트를 추가
|
||||
$oEditorController = &getAdminController('editor');
|
||||
$oEditorController->insertComponent('colorpicker_text',true);
|
||||
$oEditorController->insertComponent('colorpicker_bg',true);
|
||||
$oEditorController->insertComponent('emoticon',true);
|
||||
$oEditorController->insertComponent('url_link',true);
|
||||
$oEditorController->insertComponent('image_link',true);
|
||||
$oEditorController->insertComponent('multimedia_link',true);
|
||||
$oEditorController->insertComponent('quotation',true);
|
||||
$oEditorController->insertComponent('table_maker',true);
|
||||
$oEditorController->insertComponent('poll_maker',true);
|
||||
$oEditorController->insertComponent('image_gallery',true);
|
||||
|
||||
// 에디터 모듈에서 사용할 디렉토리 생성
|
||||
FileHandler::makeDir('./files/cache/editor');
|
||||
|
||||
// 2007. 10. 17 글의 입력(신규 or 수정)이 일어날때마다 자동 저장된 문서를 삭제하는 trigger 추가
|
||||
$oModuleController->insertTrigger('document.insertDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after');
|
||||
$oModuleController->insertTrigger('document.updateDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after');
|
||||
|
||||
// 2007. 10. 23 모듈의 추가 설정에서 에디터 trigger 추가
|
||||
$oModuleController->insertTrigger('module.dispAdditionSetup', 'editor', 'view', 'triggerDispEditorAdditionSetup', 'before');
|
||||
|
||||
// 2009. 04. 14 editor component 변환 코드를 trigger로 독립
|
||||
$oModuleController->insertTrigger('display', 'editor', 'controller', 'triggerEditorComponentCompile', 'before');
|
||||
|
||||
return new Object();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 설치가 이상이 없는지 체크하는 method
|
||||
**/
|
||||
function checkUpdate() {
|
||||
$oModuleModel = &getModel('module');
|
||||
|
||||
$oDB = &DB::getInstance();
|
||||
|
||||
// 2009. 06. 15 자동저장시 module_srl 을 저장
|
||||
if(!$oDB->isColumnExists("editor_autosave","module_srl")) return true;
|
||||
if(!$oDB->isIndexExists("editor_autosave","idx_module_srl")) return true;
|
||||
|
||||
|
||||
// 2007. 10. 17 글의 입력(신규 or 수정)이 일어날때마다 자동 저장된 문서를 삭제하는 trigger 추가
|
||||
if(!$oModuleModel->getTrigger('document.insertDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after')) return true;
|
||||
if(!$oModuleModel->getTrigger('document.updateDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after')) return true;
|
||||
|
||||
// 2007. 10. 23 모듈의 추가 설정에서 에디터 trigger 추가
|
||||
if(!$oModuleModel->getTrigger('module.dispAdditionSetup', 'editor', 'view', 'triggerDispEditorAdditionSetup', 'before')) return true;
|
||||
|
||||
// 2009. 04. 14 editor component 변환 코드를 trigger로 독립
|
||||
if(!$oModuleModel->getTrigger('display', 'editor', 'controller', 'triggerEditorComponentCompile', 'before')) return true;
|
||||
|
||||
// 2009. 06. 19 사용하지 않는 트리거 제거
|
||||
if($oModuleModel->getTrigger('file.getIsPermitted', 'editor', 'controller', 'triggerSrlSetting', 'before')) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 업데이트 실행
|
||||
**/
|
||||
function moduleUpdate() {
|
||||
$oModuleModel = &getModel('module');
|
||||
$oModuleController = &getController('module');
|
||||
|
||||
$oDB = &DB::getInstance();
|
||||
|
||||
// 자동저장시 module_srl 을 저장 2009.6.15
|
||||
if(!$oDB->isColumnExists("editor_autosave","module_srl"))
|
||||
$oDB->addColumn("editor_autosave","module_srl","number",11);
|
||||
|
||||
// module_srl을 인덱스로
|
||||
if(!$oDB->isIndexExists("editor_autosave","idx_module_srl")) $oDB->addIndex("editor_autosave","idx_module_srl", "module_srl");
|
||||
|
||||
// 2007. 10. 17 글의 입력(신규 or 수정)이 일어날때마다 자동 저장된 문서를 삭제하는 trigger 추가
|
||||
if(!$oModuleModel->getTrigger('document.insertDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after'))
|
||||
$oModuleController->insertTrigger('document.insertDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after');
|
||||
if(!$oModuleModel->getTrigger('document.updateDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after'))
|
||||
$oModuleController->insertTrigger('document.updateDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after');
|
||||
|
||||
// 2007. 10. 23 모듈의 추가 설정에서 에디터 trigger 추가
|
||||
if(!$oModuleModel->getTrigger('module.dispAdditionSetup', 'editor', 'view', 'triggerDispEditorAdditionSetup', 'before'))
|
||||
$oModuleController->insertTrigger('module.dispAdditionSetup', 'editor', 'view', 'triggerDispEditorAdditionSetup', 'before');
|
||||
|
||||
// 2009. 04. 14 editor component 변환 코드를 trigger로 독립
|
||||
if(!$oModuleModel->getTrigger('display', 'editor', 'controller', 'triggerEditorComponentCompile', 'before'))
|
||||
$oModuleController->insertTrigger('display', 'editor', 'controller', 'triggerEditorComponentCompile', 'before');
|
||||
|
||||
// 2009. 06. 19 사용하지 않는 트리거 제거
|
||||
if($oModuleModel->getTrigger('file.getIsPermitted', 'editor', 'controller', 'triggerSrlSetting', 'before'))
|
||||
$oModuleController->deleteTrigger('file.getIsPermitted', 'editor', 'controller', 'triggerSrlSetting', 'before');
|
||||
|
||||
return new Object(0, 'success_updated');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 캐시 파일 재생성
|
||||
**/
|
||||
function recompileCache() {
|
||||
// 에디터 컴포넌트 캐시 파일 삭제
|
||||
FileHandler::removeFilesInDir("./files/cache/editor");
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
/**
|
||||
* @class editor
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief high class of the editor odule
|
||||
**/
|
||||
|
||||
class editor extends ModuleObject {
|
||||
|
||||
/**
|
||||
* @brief Implement if additional tasks are necessary when installing
|
||||
**/
|
||||
function moduleInstall() {
|
||||
// Register action forward (to use in administrator mode)
|
||||
$oModuleController = &getController('module');
|
||||
// Add the default editor component
|
||||
$oEditorController = &getAdminController('editor');
|
||||
$oEditorController->insertComponent('colorpicker_text',true);
|
||||
$oEditorController->insertComponent('colorpicker_bg',true);
|
||||
$oEditorController->insertComponent('emoticon',true);
|
||||
$oEditorController->insertComponent('url_link',true);
|
||||
$oEditorController->insertComponent('image_link',true);
|
||||
$oEditorController->insertComponent('multimedia_link',true);
|
||||
$oEditorController->insertComponent('quotation',true);
|
||||
$oEditorController->insertComponent('table_maker',true);
|
||||
$oEditorController->insertComponent('poll_maker',true);
|
||||
$oEditorController->insertComponent('image_gallery',true);
|
||||
// Create a directory to use in the editor module
|
||||
FileHandler::makeDir('./files/cache/editor');
|
||||
// 2007. 10. 17 Add a trigger to delete automatically saved document whenever the document(insert or update) is modified
|
||||
$oModuleController->insertTrigger('document.insertDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after');
|
||||
$oModuleController->insertTrigger('document.updateDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after');
|
||||
// 2007. 10. 23 Add an editor trigger on the module addition setup
|
||||
$oModuleController->insertTrigger('module.dispAdditionSetup', 'editor', 'view', 'triggerDispEditorAdditionSetup', 'before');
|
||||
// 2009. 04. 14 Add a trigger from compiled codes of the editor component
|
||||
$oModuleController->insertTrigger('display', 'editor', 'controller', 'triggerEditorComponentCompile', 'before');
|
||||
|
||||
return new Object();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief a method to check if successfully installed
|
||||
**/
|
||||
function checkUpdate() {
|
||||
$oModuleModel = &getModel('module');
|
||||
|
||||
$oDB = &DB::getInstance();
|
||||
// 2009. 06. 15 Save module_srl when auto-saving
|
||||
if(!$oDB->isColumnExists("editor_autosave","module_srl")) return true;
|
||||
if(!$oDB->isIndexExists("editor_autosave","idx_module_srl")) return true;
|
||||
|
||||
|
||||
// 2007. 10. 17 Add a trigger to delete automatically saved document whenever the document(insert or update) is modified
|
||||
if(!$oModuleModel->getTrigger('document.insertDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after')) return true;
|
||||
if(!$oModuleModel->getTrigger('document.updateDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after')) return true;
|
||||
// 2007. 10. 23 Add an editor trigger on the module addition setup
|
||||
if(!$oModuleModel->getTrigger('module.dispAdditionSetup', 'editor', 'view', 'triggerDispEditorAdditionSetup', 'before')) return true;
|
||||
// 2009. 04. 14 Add a trigger from compiled codes of the editor component
|
||||
if(!$oModuleModel->getTrigger('display', 'editor', 'controller', 'triggerEditorComponentCompile', 'before')) return true;
|
||||
// 2009. 06. 19 Remove unused trigger
|
||||
if($oModuleModel->getTrigger('file.getIsPermitted', 'editor', 'controller', 'triggerSrlSetting', 'before')) return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Execute update
|
||||
**/
|
||||
function moduleUpdate() {
|
||||
$oModuleModel = &getModel('module');
|
||||
$oModuleController = &getController('module');
|
||||
|
||||
$oDB = &DB::getInstance();
|
||||
// Save module_srl when auto-saving 15/06/2009
|
||||
if(!$oDB->isColumnExists("editor_autosave","module_srl"))
|
||||
$oDB->addColumn("editor_autosave","module_srl","number",11);
|
||||
|
||||
// create an index on module_srl
|
||||
if(!$oDB->isIndexExists("editor_autosave","idx_module_srl")) $oDB->addIndex("editor_autosave","idx_module_srl", "module_srl");
|
||||
|
||||
// 2007. 10. 17 Add a trigger to delete automatically saved document whenever the document(insert or update) is modified
|
||||
if(!$oModuleModel->getTrigger('document.insertDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after'))
|
||||
$oModuleController->insertTrigger('document.insertDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after');
|
||||
if(!$oModuleModel->getTrigger('document.updateDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after'))
|
||||
$oModuleController->insertTrigger('document.updateDocument', 'editor', 'controller', 'triggerDeleteSavedDoc', 'after');
|
||||
// 2007. 10. Add an editor trigger on the module addition setup
|
||||
if(!$oModuleModel->getTrigger('module.dispAdditionSetup', 'editor', 'view', 'triggerDispEditorAdditionSetup', 'before'))
|
||||
$oModuleController->insertTrigger('module.dispAdditionSetup', 'editor', 'view', 'triggerDispEditorAdditionSetup', 'before');
|
||||
// 2009. 04. 14 Add a trigger from compiled codes of the editor component
|
||||
if(!$oModuleModel->getTrigger('display', 'editor', 'controller', 'triggerEditorComponentCompile', 'before'))
|
||||
$oModuleController->insertTrigger('display', 'editor', 'controller', 'triggerEditorComponentCompile', 'before');
|
||||
// 2009. 06. 19 Remove unused trigger
|
||||
if($oModuleModel->getTrigger('file.getIsPermitted', 'editor', 'controller', 'triggerSrlSetting', 'before'))
|
||||
$oModuleController->deleteTrigger('file.getIsPermitted', 'editor', 'controller', 'triggerSrlSetting', 'before');
|
||||
|
||||
return new Object(0, 'success_updated');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Re-generate the cache file
|
||||
**/
|
||||
function recompileCache() {
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -1,457 +1,446 @@
|
|||
<?php
|
||||
/**
|
||||
* @class editor
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor 모듈의 controller class
|
||||
**/
|
||||
|
||||
class editorController extends editor {
|
||||
|
||||
/**
|
||||
* @brief 초기화
|
||||
**/
|
||||
function init() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 자동 저장
|
||||
**/
|
||||
function procEditorSaveDoc() {
|
||||
|
||||
$this->deleteSavedDoc(false);
|
||||
|
||||
$args->document_srl = Context::get('document_srl');
|
||||
$args->content = Context::get('content');
|
||||
$args->title = Context::get('title');
|
||||
$output = $this->doSaveDoc($args);
|
||||
|
||||
$this->setMessage('msg_auto_saved');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 자동저장된 문서 삭제
|
||||
**/
|
||||
function procEditorRemoveSavedDoc() {
|
||||
$oEditorController = &getController('editor');
|
||||
$oEditorController->deleteSavedDoc(true);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 컴포넌트에서 ajax요청시 해당 컴포넌트의 method를 실행
|
||||
**/
|
||||
function procEditorCall() {
|
||||
$component = Context::get('component');
|
||||
$method = Context::get('method');
|
||||
if(!$component) return new Object(-1, sprintf(Context::getLang('msg_component_is_not_founded'), $component));
|
||||
|
||||
$oEditorModel = &getModel('editor');
|
||||
$oComponent = &$oEditorModel->getComponentObject($component);
|
||||
if(!$oComponent->toBool()) return $oComponent;
|
||||
|
||||
if(!method_exists($oComponent, $method)) return new Object(-1, sprintf(Context::getLang('msg_component_is_not_founded'), $component));
|
||||
|
||||
//$output = call_user_method($method, $oComponent);
|
||||
//$output = call_user_func(array($oComponent, $method));
|
||||
if(method_exists($oComponent, $method)) $output = $oComponent->{$method}();
|
||||
else return new Object(-1,sprintf('%s method is not exists', $method));
|
||||
|
||||
if((is_a($output, 'Object') || is_subclass_of($output, 'Object')) && !$output->toBool()) return $output;
|
||||
|
||||
$this->setError($oComponent->getError());
|
||||
$this->setMessage($oComponent->getMessage());
|
||||
|
||||
$vars = $oComponent->getVariables();
|
||||
if(count($vars)) {
|
||||
foreach($vars as $key=>$val) $this->add($key, $val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 에디터의 모듈별 추가 확장 폼을 저장
|
||||
**/
|
||||
function procEditorInsertModuleConfig() {
|
||||
$module_srl = Context::get('target_module_srl');
|
||||
|
||||
// 여러개의 모듈 일괄 설정일 경우
|
||||
if(preg_match('/^([0-9,]+)$/',$module_srl)) $module_srl = explode(',',$module_srl);
|
||||
else $module_srl = array($module_srl);
|
||||
|
||||
$editor_config = null;
|
||||
|
||||
$editor_config->editor_skin = Context::get('editor_skin');
|
||||
$editor_config->comment_editor_skin = Context::get('comment_editor_skin');
|
||||
$editor_config->content_style = Context::get('content_style');
|
||||
$editor_config->comment_content_style = Context::get('comment_content_style');
|
||||
$editor_config->content_font = Context::get('content_font');
|
||||
if($editor_config->content_font) {
|
||||
$font_list = array();
|
||||
$fonts = explode(',',$editor_config->content_font);
|
||||
for($i=0,$c=count($fonts);$i<$c;$i++) {
|
||||
$font = trim(str_replace(array('"','\''),'',$fonts[$i]));
|
||||
if(!$font) continue;
|
||||
$font_list[] = $font;
|
||||
}
|
||||
if(count($font_list)) $editor_config->content_font = '"'.implode('","',$font_list).'"';
|
||||
}
|
||||
$editor_config->content_font_size = Context::get('content_font_size');
|
||||
$editor_config->sel_editor_colorset = Context::get('sel_editor_colorset');
|
||||
$editor_config->sel_comment_editor_colorset = Context::get('sel_comment_editor_colorset');
|
||||
|
||||
$enable_html_grant = trim(Context::get('enable_html_grant'));
|
||||
if($enable_html_grant) $editor_config->enable_html_grant = explode('|@|', $enable_html_grant);
|
||||
else $editor_config->enable_html_grant = array();
|
||||
|
||||
$enable_comment_html_grant = trim(Context::get('enable_comment_html_grant'));
|
||||
if($enable_comment_html_grant) $editor_config->enable_comment_html_grant = explode('|@|', $enable_comment_html_grant);
|
||||
else $editor_config->enable_comment_html_grant = array();
|
||||
|
||||
$upload_file_grant = trim(Context::get('upload_file_grant'));
|
||||
if($upload_file_grant) $editor_config->upload_file_grant = explode('|@|', $upload_file_grant);
|
||||
else $editor_config->upload_file_grant = array();
|
||||
|
||||
$comment_upload_file_grant = trim(Context::get('comment_upload_file_grant'));
|
||||
if($comment_upload_file_grant) $editor_config->comment_upload_file_grant = explode('|@|', $comment_upload_file_grant);
|
||||
else $editor_config->comment_upload_file_grant = array();
|
||||
|
||||
$enable_default_component_grant = trim(Context::get('enable_default_component_grant'));
|
||||
if($enable_default_component_grant) $editor_config->enable_default_component_grant = explode('|@|', $enable_default_component_grant);
|
||||
else $editor_config->enable_default_component_grant = array();
|
||||
|
||||
$enable_comment_default_component_grant = trim(Context::get('enable_comment_default_component_grant'));
|
||||
if($enable_comment_default_component_grant) $editor_config->enable_comment_default_component_grant = explode('|@|', $enable_comment_default_component_grant);
|
||||
else $editor_config->enable_comment_default_component_grant = array();
|
||||
|
||||
$enable_component_grant = trim(Context::get('enable_component_grant'));
|
||||
if($enable_component_grant) $editor_config->enable_component_grant = explode('|@|', $enable_component_grant);
|
||||
else $editor_config->enable_component_grant = array();
|
||||
|
||||
$enable_comment_component_grant = trim(Context::get('enable_comment_component_grant'));
|
||||
if($enable_comment_component_grant) $editor_config->enable_comment_component_grant = explode('|@|', $enable_comment_component_grant);
|
||||
else $editor_config->enable_comment_component_grant = array();
|
||||
|
||||
$editor_config->editor_height = (int)Context::get('editor_height');
|
||||
|
||||
$editor_config->comment_editor_height = (int)Context::get('comment_editor_height');
|
||||
|
||||
$editor_config->enable_autosave = Context::get('enable_autosave');
|
||||
|
||||
if($editor_config->enable_autosave != 'Y') $editor_config->enable_autosave = 'N';
|
||||
|
||||
$oModuleController = &getController('module');
|
||||
for($i=0;$i<count($module_srl);$i++) {
|
||||
$srl = trim($module_srl[$i]);
|
||||
if(!$srl) continue;
|
||||
$oModuleController->insertModulePartConfig('editor',$srl,$editor_config);
|
||||
}
|
||||
|
||||
$this->setError(-1);
|
||||
$this->setMessage('success_updated');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 에디터컴포넌트의 코드를 결과물로 변환 + 문서서식 style 지정
|
||||
**/
|
||||
function triggerEditorComponentCompile(&$content) {
|
||||
if(Context::getResponseMethod()!='HTML') return new Object();
|
||||
if(Mobile::isFromMobilePhone()) return new Object();
|
||||
|
||||
$module_info = Context::get('module_info');
|
||||
$module_srl = $module_info->module_srl;
|
||||
if($module_srl) {
|
||||
$oEditorModel = &getModel('editor');
|
||||
$editor_config = $oEditorModel->getEditorConfig($module_srl);
|
||||
$content_style = $editor_config->content_style;
|
||||
if($content_style) {
|
||||
$path = _XE_PATH_.'modules/editor/styles/'.$content_style.'/';
|
||||
if(is_dir($path) && file_exists($path.'style.ini')) {
|
||||
$ini = file($path.'style.ini');
|
||||
for($i=0,$c=count($ini);$i<$c;$i++) {
|
||||
$file = trim($ini[$i]);
|
||||
if(!$file) continue;
|
||||
if(preg_match('/\.css$/i',$file)) Context::addCSSFile('./modules/editor/styles/'.$content_style.'/'.$file, false);
|
||||
elseif(preg_match('/\.js/i',$file)) Context::addJsFile('./modules/editor/styles/'.$content_style.'/'.$file, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
$content_font = $editor_config->content_font;
|
||||
$content_font_size = $editor_config->content_font_size;
|
||||
if($content_font || $content_font_size) {
|
||||
$buff = '<style type="text/css"> .xe_content { ';
|
||||
if($content_font) $buff .= 'font-family:'.$content_font.';';
|
||||
if($content_font_size) $buff .= 'font-size:'.$content_font_size.';';
|
||||
$buff .= ' }; </style>';
|
||||
Context::addHtmlHeader($buff);
|
||||
}
|
||||
}
|
||||
|
||||
$content = $this->transComponent($content);
|
||||
return new Object();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 에디터 컴포넌트코드를 결과물로 변환
|
||||
**/
|
||||
function transComponent($content) {
|
||||
$content = preg_replace_callback('!<div([^\>]*)editor_component=([^\>]*)>(.*?)\<\/div\>!is', array($this,'transEditorComponent'), $content);
|
||||
$content = preg_replace_callback('!<img([^\>]*)editor_component=([^\>]*?)\>!is', array($this,'transEditorComponent'), $content);
|
||||
return $content;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 내용의 에디터 컴포넌트 코드를 변환
|
||||
**/
|
||||
function transEditorComponent($matches) {
|
||||
$script = sprintf(' %s editor_component=%s', $matches[1], $matches[2]);
|
||||
$script = preg_replace_callback('/([^=^"^ ]*)=([^ ^>]*)/i', fixQuotation, $script);
|
||||
preg_match_all('/([a-z0-9\-\_]+)\=\"([^\"]+)\"/is', $script, $m);
|
||||
for($i=0,$c=count($m[0]);$i<$c;$i++) {
|
||||
$xml_obj->attrs->{$m[1][$i]} = $m[2][$i];
|
||||
}
|
||||
$xml_obj->body = $matches[3];
|
||||
|
||||
if(!$xml_obj->attrs->editor_component) return $matches[0];
|
||||
|
||||
// component::transHTML() 을 이용하여 변환된 코드를 받음
|
||||
$oEditorModel = &getModel('editor');
|
||||
$oComponent = &$oEditorModel->getComponentObject($xml_obj->attrs->editor_component, 0);
|
||||
if(!is_object($oComponent)||!method_exists($oComponent, 'transHTML')) return $matches[0];
|
||||
|
||||
return $oComponent->transHTML($xml_obj);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief 자동 저장
|
||||
**/
|
||||
function doSaveDoc($args) {
|
||||
|
||||
if(!$args->document_srl) $args->document_srl = $_SESSION['upload_info'][$editor_sequence]->upload_target_srl;
|
||||
if(Context::get('is_logged')) {
|
||||
$logged_info = Context::get('logged_info');
|
||||
$args->member_srl = $logged_info->member_srl;
|
||||
} else {
|
||||
$args->ipaddress = $_SERVER['REMOTE_ADDR'];
|
||||
}
|
||||
// module_srl이 없으면 현재 모듈
|
||||
if(!$args->module_srl) {
|
||||
$args->module_srl = Context::get('module_srl');
|
||||
}
|
||||
if(!$args->module_srl) {
|
||||
$current_module_info = Context::get('current_module_info');
|
||||
$args->module_srl = $current_module_info->module_srl;
|
||||
}
|
||||
|
||||
// 저장
|
||||
return executeQuery('editor.insertSavedDoc', $args);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 자동 저장글 Srl 로드 - XE 이전 버전 사용자를 위함.
|
||||
**/
|
||||
function procEditorLoadSavedDocument() {
|
||||
$editor_sequence = Context::get('editor_sequence');
|
||||
$primary_key = Context::get('primary_key');
|
||||
$oEditorModel = &getModel('editor');
|
||||
$oFileController = &getController('file');
|
||||
|
||||
$saved_doc = $oEditorModel->getSavedDoc(null);
|
||||
|
||||
$oFileController->setUploadInfo($editor_sequence, $saved_doc->document_srl);
|
||||
$vars = $this->getVariables();
|
||||
$this->add("editor_sequence", $editor_sequence);
|
||||
$this->add("key", $primary_key);
|
||||
$this->add("title", $saved_doc->title);
|
||||
$this->add("content", $saved_doc->content);
|
||||
$this->add("document_srl", $saved_doc->document_srl);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief 게시글의 입력/수정이 일어났을 경우 자동 저장문서를 제거하는 trigger
|
||||
**/
|
||||
function triggerDeleteSavedDoc(&$obj) {
|
||||
$this->deleteSavedDoc(false);
|
||||
return new Object();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 자동 저장된 글을 삭제
|
||||
* 현재 접속한 사용자를 기준
|
||||
**/
|
||||
function deleteSavedDoc($mode = false) {
|
||||
if(Context::get('is_logged')) {
|
||||
$logged_info = Context::get('logged_info');
|
||||
$args->member_srl = $logged_info->member_srl;
|
||||
} else {
|
||||
$args->ipaddress = $_SERVER['REMOTE_ADDR'];
|
||||
}
|
||||
$args->module_srl = Context::get('module_srl');
|
||||
// module_srl이 없으면 현재 모듈
|
||||
if(!$args->module_srl) {
|
||||
$current_module_info = Context::get('current_module_info');
|
||||
$args->module_srl = $current_module_info->module_srl;
|
||||
}
|
||||
|
||||
// 자동저장된 값이 혹시 이미 등록된 글인지 확인
|
||||
$output = executeQuery('editor.getSavedDocument', $args);
|
||||
$saved_doc = $output->data;
|
||||
if(!$saved_doc) return;
|
||||
|
||||
$oDocumentModel = &getModel('document');
|
||||
$oSaved = $oDocumentModel->getDocument($saved_doc->document_srl);
|
||||
if(!$oSaved->isExists()) {
|
||||
if($mode) {
|
||||
$output = executeQuery('editor.getSavedDocument', $args);
|
||||
$output = ModuleHandler::triggerCall('editor.deleteSavedDoc', 'after', $saved_doc);
|
||||
}
|
||||
}
|
||||
|
||||
// 일단 이전 저장본 삭제
|
||||
return executeQuery('editor.deleteSavedDoc', $args);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 가상 사이트에서 사용된 에디터 컴포넌트 정보를 제거
|
||||
**/
|
||||
function removeEditorConfig($site_srl) {
|
||||
$args->site_srl = $site_srl;
|
||||
executeQuery('editor.deleteSiteComponent', $args);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 에디터 컴포넌트 목록 캐싱 (editorModel::getComponentList)
|
||||
* 에디터 컴포넌트 목록의 경우 DB query + Xml Parsing 때문에 캐싱 파일을 이용하도록 함
|
||||
**/
|
||||
function makeCache($filter_enabled = true, $site_srl) {
|
||||
$oEditorModel = &getModel('editor');
|
||||
|
||||
if($filter_enabled) $args->enabled = "Y";
|
||||
|
||||
if($site_srl) {
|
||||
$args->site_srl = $site_srl;
|
||||
$output = executeQuery('editor.getSiteComponentList', $args);
|
||||
} else $output = executeQuery('editor.getComponentList', $args);
|
||||
$db_list = $output->data;
|
||||
|
||||
// 파일목록을 구함
|
||||
$downloaded_list = FileHandler::readDir(_XE_PATH_.'modules/editor/components');
|
||||
|
||||
// 로그인 여부 및 소속 그룹 구함
|
||||
$is_logged = Context::get('is_logged');
|
||||
if($is_logged) {
|
||||
$logged_info = Context::get('logged_info');
|
||||
if($logged_info->group_list && is_array($logged_info->group_list)) {
|
||||
$group_list = array_keys($logged_info->group_list);
|
||||
} else $group_list = array();
|
||||
}
|
||||
|
||||
// DB 목록을 loop돌면서 xml정보까지 구함
|
||||
if(!is_array($db_list)) $db_list = array($db_list);
|
||||
foreach($db_list as $component) {
|
||||
if(in_array($component->component_name, array('colorpicker_text','colorpicker_bg'))) continue;
|
||||
|
||||
$component_name = $component->component_name;
|
||||
if(!$component_name) continue;
|
||||
|
||||
if(!in_array($component_name, $downloaded_list)) continue;
|
||||
|
||||
unset($xml_info);
|
||||
$xml_info = $oEditorModel->getComponentXmlInfo($component_name);
|
||||
$xml_info->enabled = $component->enabled;
|
||||
|
||||
if($component->extra_vars) {
|
||||
$extra_vars = unserialize($component->extra_vars);
|
||||
if($extra_vars->target_group) {
|
||||
$xml_info->target_group = $extra_vars->target_group;
|
||||
}
|
||||
|
||||
if($extra_vars->mid_list && count($extra_vars->mid_list))
|
||||
{
|
||||
$xml_info->mid_list = $extra_vars->mid_list;
|
||||
}
|
||||
/*
|
||||
// 사용권한이 있으면 권한 체크
|
||||
if($extra_vars->target_group) {
|
||||
// 사용권한이 체크되어 있는데 로그인이 되어 있지 않으면 무조건 사용 중지
|
||||
if(!$is_logged) continue;
|
||||
|
||||
// 대상 그룹을 구해서 현재 로그인 사용자의 그룹과 비교
|
||||
$target_group = $extra_vars->target_group;
|
||||
unset($extra_vars->target_group);
|
||||
|
||||
$is_granted = false;
|
||||
foreach($group_list as $group_srl) {
|
||||
if(in_array($group_srl, $target_group)) {
|
||||
$is_granted = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(!$is_granted) continue;
|
||||
}
|
||||
|
||||
// 대상 모듈이 있으면 체크
|
||||
if($extra_vars->mid_list && count($extra_vars->mid_list) && Context::get('mid')) {
|
||||
if(!in_array(Context::get('mid'), $extra_vars->mid_list)) continue;
|
||||
}*/
|
||||
|
||||
// 에디터 컴포넌트의 설정 정보를 체크
|
||||
if($xml_info->extra_vars) {
|
||||
foreach($xml_info->extra_vars as $key => $val) {
|
||||
$xml_info->extra_vars->{$key}->value = $extra_vars->{$key};
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$component_list->{$component_name} = $xml_info;
|
||||
|
||||
// 버튼, 아이콘 이미지 구함
|
||||
$icon_file = _XE_PATH_.'modules/editor/components/'.$component_name.'/icon.gif';
|
||||
$component_icon_file = _XE_PATH_.'modules/editor/components/'.$component_name.'/component_icon.gif';
|
||||
if(file_exists($icon_file)) $component_list->{$component_name}->icon = true;
|
||||
if(file_exists($component_icon_file)) $component_list->{$component_name}->component_icon = true;
|
||||
}
|
||||
|
||||
// enabled만 체크하도록 하였으면 그냥 return
|
||||
if($filter_enabled) {
|
||||
$cache_file = $oEditorModel->getCacheFile($filter_enabled, $site_srl);
|
||||
$buff = sprintf('<?php if(!defined("__ZBXE__")) exit(); $component_list = unserialize("%s"); ?>', str_replace('"','\\"',serialize($component_list)));
|
||||
FileHandler::writeFile($cache_file, $buff);
|
||||
return $component_list;
|
||||
}
|
||||
|
||||
// 다운로드된 목록의 xml_info를 마저 구함
|
||||
foreach($downloaded_list as $component_name) {
|
||||
if(in_array($component_name, array('colorpicker_text','colorpicker_bg'))) continue;
|
||||
|
||||
// 설정된 것이라면 패스
|
||||
if($component_list->{$component_name}) continue;
|
||||
|
||||
// DB에 입력
|
||||
$oEditorController = &getAdminController('editor');
|
||||
$oEditorController->insertComponent($component_name, false, $site_srl);
|
||||
|
||||
// component_list에 추가
|
||||
unset($xml_info);
|
||||
$xml_info = $oEditorModel->getComponentXmlInfo($component_name);
|
||||
$xml_info->enabled = 'N';
|
||||
|
||||
$component_list->{$component_name} = $xml_info;
|
||||
}
|
||||
|
||||
$cache_file = $oEditorModel->getCacheFile($filter_enabled, $site_srl);
|
||||
$buff = sprintf('<?php if(!defined("__ZBXE__")) exit(); $component_list = unserialize("%s"); ?>', str_replace('"','\\"',serialize($component_list)));
|
||||
FileHandler::writeFile($cache_file, $buff);
|
||||
|
||||
return $component_list;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 캐시 파일 삭제
|
||||
**/
|
||||
function removeCache($site_srl = 0) {
|
||||
$oEditorModel = &getModel('editor');
|
||||
FileHandler::removeFile($oEditorModel->getCacheFile(true, $site_srl));
|
||||
FileHandler::removeFile($oEditorModel->getCacheFile(false, $site_srl));
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
/**
|
||||
* @class editor
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor module's controller class
|
||||
**/
|
||||
|
||||
class editorController extends editor {
|
||||
|
||||
/**
|
||||
* @brief Initialization
|
||||
**/
|
||||
function init() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief AutoSave
|
||||
**/
|
||||
function procEditorSaveDoc() {
|
||||
|
||||
$this->deleteSavedDoc(false);
|
||||
|
||||
$args->document_srl = Context::get('document_srl');
|
||||
$args->content = Context::get('content');
|
||||
$args->title = Context::get('title');
|
||||
$output = $this->doSaveDoc($args);
|
||||
|
||||
$this->setMessage('msg_auto_saved');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Delete autosaved documents
|
||||
**/
|
||||
function procEditorRemoveSavedDoc() {
|
||||
$oEditorController = &getController('editor');
|
||||
$oEditorController->deleteSavedDoc(true);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Execute a method of the component when the component requests ajax
|
||||
**/
|
||||
function procEditorCall() {
|
||||
$component = Context::get('component');
|
||||
$method = Context::get('method');
|
||||
if(!$component) return new Object(-1, sprintf(Context::getLang('msg_component_is_not_founded'), $component));
|
||||
|
||||
$oEditorModel = &getModel('editor');
|
||||
$oComponent = &$oEditorModel->getComponentObject($component);
|
||||
if(!$oComponent->toBool()) return $oComponent;
|
||||
|
||||
if(!method_exists($oComponent, $method)) return new Object(-1, sprintf(Context::getLang('msg_component_is_not_founded'), $component));
|
||||
|
||||
//$output = call_user_method($method, $oComponent);
|
||||
//$output = call_user_func(array($oComponent, $method));
|
||||
if(method_exists($oComponent, $method)) $output = $oComponent->{$method}();
|
||||
else return new Object(-1,sprintf('%s method is not exists', $method));
|
||||
|
||||
if((is_a($output, 'Object') || is_subclass_of($output, 'Object')) && !$output->toBool()) return $output;
|
||||
|
||||
$this->setError($oComponent->getError());
|
||||
$this->setMessage($oComponent->getMessage());
|
||||
|
||||
$vars = $oComponent->getVariables();
|
||||
if(count($vars)) {
|
||||
foreach($vars as $key=>$val) $this->add($key, $val);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Save Editor's additional form for each module
|
||||
**/
|
||||
function procEditorInsertModuleConfig() {
|
||||
$module_srl = Context::get('target_module_srl');
|
||||
// To configure many of modules at once
|
||||
if(preg_match('/^([0-9,]+)$/',$module_srl)) $module_srl = explode(',',$module_srl);
|
||||
else $module_srl = array($module_srl);
|
||||
|
||||
$editor_config = null;
|
||||
|
||||
$editor_config->editor_skin = Context::get('editor_skin');
|
||||
$editor_config->comment_editor_skin = Context::get('comment_editor_skin');
|
||||
$editor_config->content_style = Context::get('content_style');
|
||||
$editor_config->comment_content_style = Context::get('comment_content_style');
|
||||
$editor_config->content_font = Context::get('content_font');
|
||||
if($editor_config->content_font) {
|
||||
$font_list = array();
|
||||
$fonts = explode(',',$editor_config->content_font);
|
||||
for($i=0,$c=count($fonts);$i<$c;$i++) {
|
||||
$font = trim(str_replace(array('"','\''),'',$fonts[$i]));
|
||||
if(!$font) continue;
|
||||
$font_list[] = $font;
|
||||
}
|
||||
if(count($font_list)) $editor_config->content_font = '"'.implode('","',$font_list).'"';
|
||||
}
|
||||
$editor_config->content_font_size = Context::get('content_font_size');
|
||||
$editor_config->sel_editor_colorset = Context::get('sel_editor_colorset');
|
||||
$editor_config->sel_comment_editor_colorset = Context::get('sel_comment_editor_colorset');
|
||||
|
||||
$enable_html_grant = trim(Context::get('enable_html_grant'));
|
||||
if($enable_html_grant) $editor_config->enable_html_grant = explode('|@|', $enable_html_grant);
|
||||
else $editor_config->enable_html_grant = array();
|
||||
|
||||
$enable_comment_html_grant = trim(Context::get('enable_comment_html_grant'));
|
||||
if($enable_comment_html_grant) $editor_config->enable_comment_html_grant = explode('|@|', $enable_comment_html_grant);
|
||||
else $editor_config->enable_comment_html_grant = array();
|
||||
|
||||
$upload_file_grant = trim(Context::get('upload_file_grant'));
|
||||
if($upload_file_grant) $editor_config->upload_file_grant = explode('|@|', $upload_file_grant);
|
||||
else $editor_config->upload_file_grant = array();
|
||||
|
||||
$comment_upload_file_grant = trim(Context::get('comment_upload_file_grant'));
|
||||
if($comment_upload_file_grant) $editor_config->comment_upload_file_grant = explode('|@|', $comment_upload_file_grant);
|
||||
else $editor_config->comment_upload_file_grant = array();
|
||||
|
||||
$enable_default_component_grant = trim(Context::get('enable_default_component_grant'));
|
||||
if($enable_default_component_grant) $editor_config->enable_default_component_grant = explode('|@|', $enable_default_component_grant);
|
||||
else $editor_config->enable_default_component_grant = array();
|
||||
|
||||
$enable_comment_default_component_grant = trim(Context::get('enable_comment_default_component_grant'));
|
||||
if($enable_comment_default_component_grant) $editor_config->enable_comment_default_component_grant = explode('|@|', $enable_comment_default_component_grant);
|
||||
else $editor_config->enable_comment_default_component_grant = array();
|
||||
|
||||
$enable_component_grant = trim(Context::get('enable_component_grant'));
|
||||
if($enable_component_grant) $editor_config->enable_component_grant = explode('|@|', $enable_component_grant);
|
||||
else $editor_config->enable_component_grant = array();
|
||||
|
||||
$enable_comment_component_grant = trim(Context::get('enable_comment_component_grant'));
|
||||
if($enable_comment_component_grant) $editor_config->enable_comment_component_grant = explode('|@|', $enable_comment_component_grant);
|
||||
else $editor_config->enable_comment_component_grant = array();
|
||||
|
||||
$editor_config->editor_height = (int)Context::get('editor_height');
|
||||
|
||||
$editor_config->comment_editor_height = (int)Context::get('comment_editor_height');
|
||||
|
||||
$editor_config->enable_autosave = Context::get('enable_autosave');
|
||||
|
||||
if($editor_config->enable_autosave != 'Y') $editor_config->enable_autosave = 'N';
|
||||
|
||||
$oModuleController = &getController('module');
|
||||
for($i=0;$i<count($module_srl);$i++) {
|
||||
$srl = trim($module_srl[$i]);
|
||||
if(!$srl) continue;
|
||||
$oModuleController->insertModulePartConfig('editor',$srl,$editor_config);
|
||||
}
|
||||
|
||||
$this->setError(-1);
|
||||
$this->setMessage('success_updated', 'info');
|
||||
if(!in_array(Context::getRequestMethod(),array('XMLRPC','JSON'))) {
|
||||
$returnUrl = Context::get('success_return_url') ? Context::get('success_return_url') : getNotEncodedUrl('', 'module', 'admin', 'act', 'dispBoardAdminContent');
|
||||
$this->setRedirectUrl($returnUrl);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief convert editor component codes to be returned and specify content style.
|
||||
**/
|
||||
function triggerEditorComponentCompile(&$content) {
|
||||
if(Context::getResponseMethod()!='HTML') return new Object();
|
||||
if(Mobile::isFromMobilePhone()) return new Object();
|
||||
|
||||
$module_info = Context::get('module_info');
|
||||
$module_srl = $module_info->module_srl;
|
||||
if($module_srl) {
|
||||
$oEditorModel = &getModel('editor');
|
||||
$editor_config = $oEditorModel->getEditorConfig($module_srl);
|
||||
$content_style = $editor_config->content_style;
|
||||
if($content_style) {
|
||||
$path = _XE_PATH_.'modules/editor/styles/'.$content_style.'/';
|
||||
if(is_dir($path) && file_exists($path.'style.ini')) {
|
||||
$ini = file($path.'style.ini');
|
||||
for($i=0,$c=count($ini);$i<$c;$i++) {
|
||||
$file = trim($ini[$i]);
|
||||
if(!$file) continue;
|
||||
if(preg_match('/\.css$/i',$file)) Context::addCSSFile('./modules/editor/styles/'.$content_style.'/'.$file, false);
|
||||
elseif(preg_match('/\.js/i',$file)) Context::addJsFile('./modules/editor/styles/'.$content_style.'/'.$file, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
$content_font = $editor_config->content_font;
|
||||
$content_font_size = $editor_config->content_font_size;
|
||||
if($content_font || $content_font_size) {
|
||||
$buff = '<style type="text/css"> .xe_content { ';
|
||||
if($content_font) $buff .= 'font-family:'.$content_font.';';
|
||||
if($content_font_size) $buff .= 'font-size:'.$content_font_size.';';
|
||||
$buff .= ' }; </style>';
|
||||
Context::addHtmlHeader($buff);
|
||||
}
|
||||
}
|
||||
|
||||
$content = $this->transComponent($content);
|
||||
return new Object();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Convert editor component codes to be returned
|
||||
**/
|
||||
function transComponent($content) {
|
||||
$content = preg_replace_callback('!<(?:(div)|img)([^>]*)editor_component=([^>]*)>(?(1)(.*?)</div>)!is', array($this,'transEditorComponent'), $content);
|
||||
return $content;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Convert editor component code of the contents
|
||||
**/
|
||||
function transEditorComponent($match) {
|
||||
$script = " {$match[2]} editor_component={$match[3]}";
|
||||
$script = preg_replace('/([\w:-]+)\s*=(?:\s*(["\']))?((?(2).*?|[^ ]+))\2/i', '\1="\3"', $script);
|
||||
preg_match_all('/([a-z0-9_-]+)="([^"]+)"/is', $script, $m);
|
||||
|
||||
$xml_obj = new stdClass;
|
||||
for($i=0,$c=count($m[0]);$i<$c;$i++) {
|
||||
$xml_obj->attrs->{$m[1][$i]} = $m[2][$i];
|
||||
}
|
||||
$xml_obj->body = $match[4];
|
||||
|
||||
if(!$xml_obj->attrs->editor_component) return $match[0];
|
||||
// Get converted codes by using component::transHTML()
|
||||
$oEditorModel = &getModel('editor');
|
||||
$oComponent = &$oEditorModel->getComponentObject($xml_obj->attrs->editor_component, 0);
|
||||
if(!is_object($oComponent)||!method_exists($oComponent, 'transHTML')) return $match[0];
|
||||
|
||||
return $oComponent->transHTML($xml_obj);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief AutoSave
|
||||
**/
|
||||
function doSaveDoc($args) {
|
||||
|
||||
if(!$args->document_srl) $args->document_srl = $_SESSION['upload_info'][$editor_sequence]->upload_target_srl;
|
||||
if(Context::get('is_logged')) {
|
||||
$logged_info = Context::get('logged_info');
|
||||
$args->member_srl = $logged_info->member_srl;
|
||||
} else {
|
||||
$args->ipaddress = $_SERVER['REMOTE_ADDR'];
|
||||
}
|
||||
// Get the current module if module_srl doesn't exist
|
||||
if(!$args->module_srl) {
|
||||
$args->module_srl = Context::get('module_srl');
|
||||
}
|
||||
if(!$args->module_srl) {
|
||||
$current_module_info = Context::get('current_module_info');
|
||||
$args->module_srl = $current_module_info->module_srl;
|
||||
}
|
||||
// Save
|
||||
return executeQuery('editor.insertSavedDoc', $args);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Load the srl of autosaved document - for those who uses XE older versions.
|
||||
**/
|
||||
function procEditorLoadSavedDocument() {
|
||||
$editor_sequence = Context::get('editor_sequence');
|
||||
$primary_key = Context::get('primary_key');
|
||||
$oEditorModel = &getModel('editor');
|
||||
$oFileController = &getController('file');
|
||||
|
||||
$saved_doc = $oEditorModel->getSavedDoc(null);
|
||||
|
||||
$oFileController->setUploadInfo($editor_sequence, $saved_doc->document_srl);
|
||||
$vars = $this->getVariables();
|
||||
$this->add("editor_sequence", $editor_sequence);
|
||||
$this->add("key", $primary_key);
|
||||
$this->add("title", $saved_doc->title);
|
||||
$this->add("content", $saved_doc->content);
|
||||
$this->add("document_srl", $saved_doc->document_srl);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief A trigger to remove auto-saved document when inserting/updating the document
|
||||
**/
|
||||
function triggerDeleteSavedDoc(&$obj) {
|
||||
$this->deleteSavedDoc(false);
|
||||
return new Object();
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Delete the auto-saved document
|
||||
* Based on the current logged-in user
|
||||
**/
|
||||
function deleteSavedDoc($mode = false) {
|
||||
if(Context::get('is_logged')) {
|
||||
$logged_info = Context::get('logged_info');
|
||||
$args->member_srl = $logged_info->member_srl;
|
||||
} else {
|
||||
$args->ipaddress = $_SERVER['REMOTE_ADDR'];
|
||||
}
|
||||
$args->module_srl = Context::get('module_srl');
|
||||
// Get the current module if module_srl doesn't exist
|
||||
if(!$args->module_srl) {
|
||||
$current_module_info = Context::get('current_module_info');
|
||||
$args->module_srl = $current_module_info->module_srl;
|
||||
}
|
||||
// Check if the auto-saved document already exists
|
||||
$output = executeQuery('editor.getSavedDocument', $args);
|
||||
$saved_doc = $output->data;
|
||||
if(!$saved_doc) return;
|
||||
|
||||
$oDocumentModel = &getModel('document');
|
||||
$oSaved = $oDocumentModel->getDocument($saved_doc->document_srl);
|
||||
if(!$oSaved->isExists()) {
|
||||
if($mode) {
|
||||
$output = executeQuery('editor.getSavedDocument', $args);
|
||||
$output = ModuleHandler::triggerCall('editor.deleteSavedDoc', 'after', $saved_doc);
|
||||
}
|
||||
}
|
||||
// Delete the saved document
|
||||
return executeQuery('editor.deleteSavedDoc', $args);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief ERemove editor component information used on the virtual site
|
||||
**/
|
||||
function removeEditorConfig($site_srl) {
|
||||
$args->site_srl = $site_srl;
|
||||
executeQuery('editor.deleteSiteComponent', $args);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Caching a list of editor component (editorModel::getComponentList)
|
||||
* For the editor component list, use a caching file because of DB query and Xml parsing
|
||||
**/
|
||||
function makeCache($filter_enabled = true, $site_srl) {
|
||||
$oEditorModel = &getModel('editor');
|
||||
|
||||
if($filter_enabled) $args->enabled = "Y";
|
||||
|
||||
if($site_srl) {
|
||||
$args->site_srl = $site_srl;
|
||||
$output = executeQuery('editor.getSiteComponentList', $args);
|
||||
} else $output = executeQuery('editor.getComponentList', $args);
|
||||
$db_list = $output->data;
|
||||
// Get a list of files
|
||||
$downloaded_list = FileHandler::readDir(_XE_PATH_.'modules/editor/components');
|
||||
// Get information about log-in status and its group
|
||||
$is_logged = Context::get('is_logged');
|
||||
if($is_logged) {
|
||||
$logged_info = Context::get('logged_info');
|
||||
if($logged_info->group_list && is_array($logged_info->group_list)) {
|
||||
$group_list = array_keys($logged_info->group_list);
|
||||
} else $group_list = array();
|
||||
}
|
||||
// Get xml information for looping DB list
|
||||
if(!is_array($db_list)) $db_list = array($db_list);
|
||||
foreach($db_list as $component) {
|
||||
if(in_array($component->component_name, array('colorpicker_text','colorpicker_bg'))) continue;
|
||||
|
||||
$component_name = $component->component_name;
|
||||
if(!$component_name) continue;
|
||||
|
||||
if(!in_array($component_name, $downloaded_list)) continue;
|
||||
|
||||
unset($xml_info);
|
||||
$xml_info = $oEditorModel->getComponentXmlInfo($component_name);
|
||||
$xml_info->enabled = $component->enabled;
|
||||
|
||||
if($component->extra_vars) {
|
||||
$extra_vars = unserialize($component->extra_vars);
|
||||
if($extra_vars->target_group) {
|
||||
$xml_info->target_group = $extra_vars->target_group;
|
||||
}
|
||||
|
||||
if($extra_vars->mid_list && count($extra_vars->mid_list))
|
||||
{
|
||||
$xml_info->mid_list = $extra_vars->mid_list;
|
||||
}
|
||||
/*
|
||||
// Permisshin check if you are granted
|
||||
if($extra_vars->target_group) {
|
||||
// Stop using if not logged-in
|
||||
if(!$is_logged) continue;
|
||||
// Compare a target group with the current logged-in user group
|
||||
$target_group = $extra_vars->target_group;
|
||||
unset($extra_vars->target_group);
|
||||
|
||||
$is_granted = false;
|
||||
foreach($group_list as $group_srl) {
|
||||
if(in_array($group_srl, $target_group)) {
|
||||
$is_granted = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(!$is_granted) continue;
|
||||
}
|
||||
// Check if the target module exists
|
||||
if($extra_vars->mid_list && count($extra_vars->mid_list) && Context::get('mid')) {
|
||||
if(!in_array(Context::get('mid'), $extra_vars->mid_list)) continue;
|
||||
}*/
|
||||
// Check the configuration of the editor component
|
||||
if($xml_info->extra_vars) {
|
||||
foreach($xml_info->extra_vars as $key => $val) {
|
||||
$xml_info->extra_vars->{$key}->value = $extra_vars->{$key};
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$component_list->{$component_name} = $xml_info;
|
||||
// Get buttons, icons, images
|
||||
$icon_file = _XE_PATH_.'modules/editor/components/'.$component_name.'/icon.gif';
|
||||
$component_icon_file = _XE_PATH_.'modules/editor/components/'.$component_name.'/component_icon.gif';
|
||||
if(file_exists($icon_file)) $component_list->{$component_name}->icon = true;
|
||||
if(file_exists($component_icon_file)) $component_list->{$component_name}->component_icon = true;
|
||||
}
|
||||
// Return if it checks enabled only
|
||||
if($filter_enabled) {
|
||||
$cache_file = $oEditorModel->getCacheFile($filter_enabled, $site_srl);
|
||||
$buff = sprintf('<?php if(!defined("__ZBXE__")) exit(); $component_list = unserialize("%s"); ?>', str_replace('"','\\"',serialize($component_list)));
|
||||
FileHandler::writeFile($cache_file, $buff);
|
||||
return $component_list;
|
||||
}
|
||||
// Get xml_info of downloaded list
|
||||
foreach($downloaded_list as $component_name) {
|
||||
if(in_array($component_name, array('colorpicker_text','colorpicker_bg'))) continue;
|
||||
// Pass if configured
|
||||
if($component_list->{$component_name}) continue;
|
||||
// Insert data into the DB
|
||||
$oEditorController = &getAdminController('editor');
|
||||
$oEditorController->insertComponent($component_name, false, $site_srl);
|
||||
// Add to component_list
|
||||
unset($xml_info);
|
||||
$xml_info = $oEditorModel->getComponentXmlInfo($component_name);
|
||||
$xml_info->enabled = 'N';
|
||||
|
||||
$component_list->{$component_name} = $xml_info;
|
||||
}
|
||||
|
||||
$cache_file = $oEditorModel->getCacheFile($filter_enabled, $site_srl);
|
||||
$buff = sprintf('<?php if(!defined("__ZBXE__")) exit(); $component_list = unserialize("%s"); ?>', str_replace('"','\\"',serialize($component_list)));
|
||||
FileHandler::writeFile($cache_file, $buff);
|
||||
|
||||
return $component_list;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Delete cache files
|
||||
**/
|
||||
function removeCache($site_srl = 0) {
|
||||
$oEditorModel = &getModel('editor');
|
||||
FileHandler::removeFile($oEditorModel->getCacheFile(true, $site_srl));
|
||||
FileHandler::removeFile($oEditorModel->getCacheFile(false, $site_srl));
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -1,144 +1,183 @@
|
|||
<?php
|
||||
/**
|
||||
* @class editorView
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief editor 모듈의 view 클래스
|
||||
**/
|
||||
|
||||
class editorView extends editor {
|
||||
|
||||
/**
|
||||
* @brief 초기화
|
||||
**/
|
||||
function init() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 컴포넌트의 팝업 출력을 요청을 받는 action
|
||||
**/
|
||||
function dispEditorPopup() {
|
||||
// css 파일 추가
|
||||
Context::addCssFile($this->module_path."tpl/css/editor.css");
|
||||
|
||||
// 변수 정리
|
||||
$editor_sequence = Context::get('editor_sequence');
|
||||
$component = Context::get('component');
|
||||
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
$site_srl = (int)$site_module_info->site_srl;
|
||||
|
||||
// component 객체를 받음
|
||||
$oEditorModel = &getModel('editor');
|
||||
$oComponent = &$oEditorModel->getComponentObject($component, $editor_sequence, $site_srl);
|
||||
if(!$oComponent->toBool()) {
|
||||
Context::set('message', sprintf(Context::getLang('msg_component_is_not_founded'), $component));
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile('component_not_founded');
|
||||
} else {
|
||||
|
||||
// 컴포넌트의 popup url을 출력하는 method실행후 결과를 받음
|
||||
$popup_content = $oComponent->getPopupContent();
|
||||
Context::set('popup_content', $popup_content);
|
||||
|
||||
// 레이아웃을 popup_layout으로 설정
|
||||
$this->setLayoutFile('popup_layout');
|
||||
|
||||
// 템플릿 지정
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile('popup');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 컴퍼넌트 정보 보기
|
||||
**/
|
||||
function dispEditorComponentInfo() {
|
||||
$component_name = Context::get('component_name');
|
||||
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
$site_srl = (int)$site_module_info->site_srl;
|
||||
|
||||
$oEditorModel = &getModel('editor');
|
||||
$component = $oEditorModel->getComponent($component_name, $site_srl);
|
||||
Context::set('component', $component);
|
||||
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile('view_component');
|
||||
$this->setLayoutFile("popup_layout");
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 모듈의 추가 설정에서 에디터 설정을 하는 form 추가
|
||||
**/
|
||||
function triggerDispEditorAdditionSetup(&$obj) {
|
||||
$current_module_srl = Context::get('module_srl');
|
||||
$current_module_srls = Context::get('module_srls');
|
||||
|
||||
if(!$current_module_srl && !$current_module_srls) {
|
||||
// 선택된 모듈의 정보를 가져옴
|
||||
$current_module_info = Context::get('current_module_info');
|
||||
$current_module_srl = $current_module_info->module_srl;
|
||||
if(!$current_module_srl) return new Object();
|
||||
}
|
||||
|
||||
// 에디터 설정을 구함
|
||||
$oEditorModel = &getModel('editor');
|
||||
$editor_config = $oEditorModel->getEditorConfig($current_module_srl);
|
||||
|
||||
Context::set('editor_config', $editor_config);
|
||||
|
||||
$oModuleModel = &getModel('module');
|
||||
|
||||
// 에디터 스킨 목록을 구함
|
||||
$editor_skin_list = FileHandler::readDir(_XE_PATH_.'modules/editor/skins');
|
||||
Context::set('editor_skin_list', $editor_skin_list);
|
||||
|
||||
$skin_info = $oModuleModel->loadSkinInfo($this->module_path,$editor_config->editor_skin);
|
||||
Context::set('editor_colorset_list', $skin_info->colorset);
|
||||
$skin_info = $oModuleModel->loadSkinInfo($this->module_path,$editor_config->comment_editor_skin);
|
||||
Context::set('editor_comment_colorset_list', $skin_info->colorset);
|
||||
|
||||
$contents = FileHandler::readDir(_XE_PATH_.'modules/editor/styles');
|
||||
for($i=0,$c=count($contents);$i<$c;$i++) {
|
||||
$style = $contents[$i];
|
||||
$info = $oModuleModel->loadSkinInfo($this->module_path,$style,'styles');
|
||||
$content_style_list[$style]->title = $info->title;
|
||||
}
|
||||
Context::set('content_style_list', $content_style_list);
|
||||
|
||||
// 그룹 목록을 구함
|
||||
$oMemberModel = &getModel('member');
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
$group_list = $oMemberModel->getGroups($site_module_info->site_srl);
|
||||
Context::set('group_list', $group_list);
|
||||
|
||||
//Security
|
||||
$security = new Security();
|
||||
$security->encodeHTML('group_list..title');
|
||||
$security->encodeHTML('group_list..description');
|
||||
$security->encodeHTML('content_style_list..');
|
||||
$security->encodeHTML('editor_comment_colorset_list..title');
|
||||
|
||||
// 템플릿 파일 지정
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
$tpl = $oTemplate->compile($this->module_path.'tpl', 'editor_module_config');
|
||||
$obj .= $tpl;
|
||||
|
||||
return new Object();
|
||||
}
|
||||
|
||||
|
||||
function dispEditorPreview(){
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile('preview');
|
||||
}
|
||||
|
||||
function dispEditorSkinColorset(){
|
||||
$skin = Context::get('skin');
|
||||
$oModuleModel = &getModel('module');
|
||||
$skin_info = $oModuleModel->loadSkinInfo($this->module_path,$skin);
|
||||
$colorset = $skin_info->colorset;
|
||||
Context::set('colorset', $colorset);
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
/**
|
||||
* @class editorView
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief view class of the editor module
|
||||
**/
|
||||
|
||||
class editorView extends editor {
|
||||
|
||||
/**
|
||||
* @brief Initialization
|
||||
**/
|
||||
function init() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Action to get a request to display compoenet pop-up
|
||||
**/
|
||||
function dispEditorPopup() {
|
||||
// add a css file
|
||||
Context::loadFile($this->module_path."tpl/css/editor.css", true);
|
||||
// List variables
|
||||
$editor_sequence = Context::get('editor_sequence');
|
||||
$component = Context::get('component');
|
||||
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
$site_srl = (int)$site_module_info->site_srl;
|
||||
// Get compoenet object
|
||||
$oEditorModel = &getModel('editor');
|
||||
$oComponent = &$oEditorModel->getComponentObject($component, $editor_sequence, $site_srl);
|
||||
if(!$oComponent->toBool()) {
|
||||
Context::set('message', sprintf(Context::getLang('msg_component_is_not_founded'), $component));
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile('component_not_founded');
|
||||
} else {
|
||||
// Get the result after executing a method to display popup url of the component
|
||||
$popup_content = $oComponent->getPopupContent();
|
||||
Context::set('popup_content', $popup_content);
|
||||
// Set layout to popup_layout
|
||||
$this->setLayoutFile('popup_layout');
|
||||
// Set a template
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile('popup');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Get component information
|
||||
**/
|
||||
function dispEditorComponentInfo() {
|
||||
$component_name = Context::get('component_name');
|
||||
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
$site_srl = (int)$site_module_info->site_srl;
|
||||
|
||||
$oEditorModel = &getModel('editor');
|
||||
$component = $oEditorModel->getComponent($component_name, $site_srl);
|
||||
Context::set('component', $component);
|
||||
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile('view_component');
|
||||
$this->setLayoutFile("popup_layout");
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Add a form for editor addition setup
|
||||
**/
|
||||
function triggerDispEditorAdditionSetup(&$obj) {
|
||||
$current_module_srl = Context::get('module_srl');
|
||||
$current_module_srls = Context::get('module_srls');
|
||||
|
||||
if(!$current_module_srl && !$current_module_srls) {
|
||||
// Get information of the current module
|
||||
$current_module_info = Context::get('current_module_info');
|
||||
$current_module_srl = $current_module_info->module_srl;
|
||||
if(!$current_module_srl) return new Object();
|
||||
}
|
||||
// Get editors settings
|
||||
$oEditorModel = &getModel('editor');
|
||||
$editor_config = $oEditorModel->getEditorConfig($current_module_srl);
|
||||
|
||||
Context::set('editor_config', $editor_config);
|
||||
|
||||
$oModuleModel = &getModel('module');
|
||||
// Get a list of editor skin
|
||||
$editor_skin_list = FileHandler::readDir(_XE_PATH_.'modules/editor/skins');
|
||||
Context::set('editor_skin_list', $editor_skin_list);
|
||||
|
||||
$skin_info = $oModuleModel->loadSkinInfo($this->module_path,$editor_config->editor_skin);
|
||||
Context::set('editor_colorset_list', $skin_info->colorset);
|
||||
$skin_info = $oModuleModel->loadSkinInfo($this->module_path,$editor_config->comment_editor_skin);
|
||||
Context::set('editor_comment_colorset_list', $skin_info->colorset);
|
||||
|
||||
$contents = FileHandler::readDir(_XE_PATH_.'modules/editor/styles');
|
||||
for($i=0,$c=count($contents);$i<$c;$i++) {
|
||||
$style = $contents[$i];
|
||||
$info = $oModuleModel->loadSkinInfo($this->module_path,$style,'styles');
|
||||
$content_style_list[$style]->title = $info->title;
|
||||
}
|
||||
Context::set('content_style_list', $content_style_list);
|
||||
// Get a group list
|
||||
$oMemberModel = &getModel('member');
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
$group_list = $oMemberModel->getGroups($site_module_info->site_srl);
|
||||
Context::set('group_list', $group_list);
|
||||
|
||||
//Security
|
||||
$security = new Security();
|
||||
$security->encodeHTML('group_list..title');
|
||||
$security->encodeHTML('group_list..description');
|
||||
$security->encodeHTML('content_style_list..');
|
||||
$security->encodeHTML('editor_comment_colorset_list..title');
|
||||
|
||||
// Set a template file
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
$tpl = $oTemplate->compile($this->module_path.'tpl', 'editor_module_config');
|
||||
$obj .= $tpl;
|
||||
|
||||
return new Object();
|
||||
}
|
||||
|
||||
|
||||
function dispEditorPreview(){
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile('preview');
|
||||
}
|
||||
|
||||
function dispEditorSkinColorset(){
|
||||
$skin = Context::get('skin');
|
||||
$oModuleModel = &getModel('module');
|
||||
$skin_info = $oModuleModel->loadSkinInfo($this->module_path,$skin);
|
||||
$colorset = $skin_info->colorset;
|
||||
|
||||
Context::set('colorset', $colorset);
|
||||
}
|
||||
|
||||
function dispEditorConfigPreview() {
|
||||
$oEditorModel = &getModel('editor');
|
||||
$config = $oEditorModel->getEditorConfig();
|
||||
|
||||
$option->allow_fileupload = false;
|
||||
$option->content_style = $config->content_style;
|
||||
$option->content_font = $config->content_font;
|
||||
$option->content_font_size = $config->content_font_size;
|
||||
$option->enable_autosave = false;
|
||||
$option->enable_default_component = true;
|
||||
$option->enable_component = true;
|
||||
$option->disable_html = false;
|
||||
$option->height = $config->editor_height;
|
||||
$option->skin = $config->editor_skin;
|
||||
$option->content_key_name = 'dummy_content';
|
||||
$option->primary_key_name = 'dummy_key';
|
||||
$option->colorset = $config->sel_editor_colorset;
|
||||
$editor = $oEditorModel->getEditor(0, $option);
|
||||
|
||||
Context::set('editor', $editor);
|
||||
|
||||
$option_com->allow_fileupload = false;
|
||||
$option_com->content_style = $config->content_style;
|
||||
$option_com->content_font = $config->content_font;
|
||||
$option_com->content_font_size = $config->content_font_size;
|
||||
$option_com->enable_autosave = false;
|
||||
$option_com->enable_default_component = true;
|
||||
$option_com->enable_component = true;
|
||||
$option_com->disable_html = false;
|
||||
$option_com->height = $config->comment_editor_height;
|
||||
$option_com->skin = $config->comment_editor_skin;
|
||||
$option_com->content_key_name = 'dummy_content2';
|
||||
$option_com->primary_key_name = 'dummy_key2';
|
||||
$option_com->content_style = $config->comment_content_style;
|
||||
$option_com->colorset = $config->sel_comment_editor_colorset;
|
||||
|
||||
$editor_comment = $oEditorModel->getEditor(0, $option_com);
|
||||
|
||||
Context::set('editor_comment', $editor_comment);
|
||||
|
||||
|
||||
$this->setTemplatePath($this->module_path.'tpl');
|
||||
$this->setTemplateFile('config_preview');
|
||||
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -1,279 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/editor/lang/en.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief WYSIWYG Editor module's basic language pack
|
||||
**/
|
||||
|
||||
$lang->editor = 'WYSIWYG Editor';
|
||||
$lang->component_name = 'Component';
|
||||
$lang->component_version = 'Version';
|
||||
$lang->component_author = 'Developer';
|
||||
$lang->component_link = 'Link';
|
||||
$lang->component_date = 'Date';
|
||||
$lang->component_license = 'License';
|
||||
$lang->component_history = 'Updates';
|
||||
$lang->component_description = 'Description';
|
||||
$lang->component_extra_vars = 'Option Variable';
|
||||
$lang->component_grant = 'Permission Setting';
|
||||
$lang->content_style = 'Content Style';
|
||||
$lang->content_font = 'Content Font';
|
||||
$lang->content_font_size = 'Content Font Size';
|
||||
|
||||
$lang->about_component = 'About component';
|
||||
$lang->about_component_grant = 'Selected group(s) will be able to use expanded components of editor.<br />(Leave them blank if you want all groups to have permission)';
|
||||
$lang->about_component_mid = 'Editor components can select targets.<br />(All targets will be selected when nothing is selected)';
|
||||
|
||||
$lang->msg_component_is_not_founded = 'Cannot find editor component %s';
|
||||
$lang->msg_component_is_inserted = 'Selected component is already inserted';
|
||||
$lang->msg_component_is_first_order = 'Selected component is located at the first position';
|
||||
$lang->msg_component_is_last_order = 'Selected component is located at the last position';
|
||||
$lang->msg_load_saved_doc = "There is an automatically saved article. Do you wish to recover it?\nThe auto-saved draft will be discarded after saving current article";
|
||||
$lang->msg_auto_saved = 'Automatically Saved';
|
||||
|
||||
$lang->cmd_disable = 'Inactive';
|
||||
$lang->cmd_enable = 'Active';
|
||||
|
||||
$lang->editor_skin = 'Editor Skin';
|
||||
$lang->upload_file_grant = 'Permission for Uploading';
|
||||
$lang->enable_default_component_grant = 'Permission for Default Components';
|
||||
$lang->enable_component_grant = 'Permission for Components';
|
||||
$lang->enable_html_grant = 'Permission for HTML';
|
||||
$lang->enable_autosave = 'Auto-Save';
|
||||
$lang->height_resizable = 'Height Resizable';
|
||||
$lang->editor_height = 'Height of Editor';
|
||||
|
||||
$lang->about_editor_skin = 'You may select the skin of editor.';
|
||||
$lang->about_content_style = 'You may select style for editting article or displaying content';
|
||||
$lang->about_content_font = 'You may select font for editting article or displaying content.<br/>Default font is your own font<br/> Please use comma(,) for multiple input.';
|
||||
$lang->about_content_font_size = 'You may select font size for editting article or displaying content.<br/>Please input units such as px or em.';
|
||||
$lang->about_upload_file_grant = 'Selected group(s) will be able to upload files. (Leave them blank if you want all groups to have permission)';
|
||||
$lang->about_default_component_grant = 'Selected group(s) will be able to use default components of editor. (Leave them blank if you want all groups to have permission)';
|
||||
$lang->about_editor_height = 'You may set the height of editor.';
|
||||
$lang->about_editor_height_resizable = 'You may decide whether height of editor can be resized.';
|
||||
$lang->about_enable_html_grant = 'Selected group(s) will be able to use HTML';
|
||||
$lang->about_enable_autosave = 'You may decide whether auto-save function will be used.';
|
||||
|
||||
$lang->edit->fontname = 'Font';
|
||||
$lang->edit->fontsize = 'Size';
|
||||
$lang->edit->use_paragraph = 'Paragraph Function';
|
||||
$lang->edit->fontlist = array(
|
||||
'Arial'=>'Arial',
|
||||
'Arial Black'=>'Arial Black',
|
||||
'Tahoma'=>'Tahoma',
|
||||
'Verdana'=>'Verdana',
|
||||
'Sans-serif'=>'Sans-serif',
|
||||
'Serif'=>'Serif',
|
||||
'Monospace'=>'Monospace',
|
||||
'Cursive'=>'Cursive',
|
||||
'Fantasy'=>'Fantasy',
|
||||
);
|
||||
|
||||
$lang->edit->header = 'Style';
|
||||
$lang->edit->header_list = array(
|
||||
'h1' => 'Subject 1',
|
||||
'h2' => 'Subject 2',
|
||||
'h3' => 'Subject 3',
|
||||
'h4' => 'Subject 4',
|
||||
'h5' => 'Subject 5',
|
||||
'h6' => 'Subject 6',
|
||||
);
|
||||
|
||||
$lang->edit->submit = 'Submit';
|
||||
|
||||
$lang->edit->fontcolor = 'Text Color';
|
||||
$lang->edit->fontcolor_apply = 'Apply Text Color';
|
||||
$lang->edit->fontcolor_more = 'More Text Color';
|
||||
$lang->edit->fontbgcolor = 'Background Color';
|
||||
$lang->edit->fontbgcolor_apply = 'Apply Background Color';
|
||||
$lang->edit->fontbgcolor_more = 'More Background Color';
|
||||
$lang->edit->bold = 'Bold';
|
||||
$lang->edit->italic = 'Italic';
|
||||
$lang->edit->underline = 'Underline';
|
||||
$lang->edit->strike = 'Strike';
|
||||
$lang->edit->sup = 'Sup';
|
||||
$lang->edit->sub = 'Sub';
|
||||
$lang->edit->redo = 'Re Do';
|
||||
$lang->edit->undo = 'Un Do';
|
||||
$lang->edit->align_left = 'Align Left';
|
||||
$lang->edit->align_center = 'Align Center';
|
||||
$lang->edit->align_right = 'Align Right';
|
||||
$lang->edit->align_justify = 'Align Justify';
|
||||
$lang->edit->add_indent = 'Indent';
|
||||
$lang->edit->remove_indent = 'Outdent';
|
||||
$lang->edit->list_number = 'Orderd List';
|
||||
$lang->edit->list_bullet = 'Unordered List';
|
||||
$lang->edit->remove_format = 'Style Remover';
|
||||
|
||||
$lang->edit->help_remove_format = 'Tags in selected area will be removed';
|
||||
$lang->edit->help_strike_through = 'Strike will be on the words';
|
||||
$lang->edit->help_align_full = 'Align left and right';
|
||||
|
||||
$lang->edit->help_fontcolor = 'Select font color';
|
||||
$lang->edit->help_fontbgcolor = 'Select background color of font';
|
||||
$lang->edit->help_bold = 'Make font bold';
|
||||
$lang->edit->help_italic = 'Make italic font';
|
||||
$lang->edit->help_underline = 'Underline font';
|
||||
$lang->edit->help_strike = 'Strike font';
|
||||
$lang->edit->help_sup = 'Superscript';
|
||||
$lang->edit->help_sub = 'Subscript';
|
||||
$lang->edit->help_redo = 'Redo';
|
||||
$lang->edit->help_undo = 'Undo';
|
||||
$lang->edit->help_align_left = 'Align left';
|
||||
$lang->edit->help_align_center = 'Align center';
|
||||
$lang->edit->help_align_right = 'Align right';
|
||||
$lang->edit->help_align_justify = 'Align justity';
|
||||
$lang->edit->help_add_indent = 'Add indent';
|
||||
$lang->edit->help_remove_indent = 'Remove indent';
|
||||
$lang->edit->help_list_number = 'Apply number list';
|
||||
$lang->edit->help_list_bullet = 'Apply bullet list';
|
||||
$lang->edit->help_use_paragraph = 'Press Ctrl+Enter to use paragraph. (Press Alt+S to submit)';
|
||||
|
||||
$lang->edit->url = 'URL';
|
||||
$lang->edit->blockquote = 'Blockquote';
|
||||
$lang->edit->table = 'Table';
|
||||
$lang->edit->image = 'Image';
|
||||
$lang->edit->multimedia = 'Movie';
|
||||
$lang->edit->emoticon = 'Emoticon';
|
||||
|
||||
$lang->edit->file = 'Files';
|
||||
$lang->edit->upload = 'Attachment';
|
||||
$lang->edit->upload_file = 'Attach';
|
||||
$lang->edit->upload_list = 'Attachment List';
|
||||
$lang->edit->link_file = 'Insert to Content';
|
||||
$lang->edit->delete_selected = 'Delete Selected';
|
||||
|
||||
$lang->edit->icon_align_article = 'Occupy a paragraph';
|
||||
$lang->edit->icon_align_left = 'Align Left';
|
||||
$lang->edit->icon_align_middle = 'Align Center';
|
||||
$lang->edit->icon_align_right = 'Align Right';
|
||||
|
||||
$lang->about_dblclick_in_editor = 'You may set detail component configures by double-clicking background, text, images, or quotations';
|
||||
|
||||
|
||||
$lang->edit->rich_editor = 'Rich Text Editor';
|
||||
$lang->edit->html_editor = 'HTML Editor';
|
||||
$lang->edit->extension ='Extension Components';
|
||||
$lang->edit->help = 'Help';
|
||||
$lang->edit->help_command = 'Help Hotkeys';
|
||||
|
||||
$lang->edit->lineheight = 'Line Height';
|
||||
$lang->edit->fontbgsampletext = 'ABC';
|
||||
|
||||
$lang->edit->hyperlink = 'Hyperlink';
|
||||
$lang->edit->target_blank = 'New Window';
|
||||
|
||||
$lang->edit->quotestyle1 = 'Left Solid';
|
||||
$lang->edit->quotestyle2 = 'Quote';
|
||||
$lang->edit->quotestyle3 = 'Solid';
|
||||
$lang->edit->quotestyle4 = 'Solid + Background';
|
||||
$lang->edit->quotestyle5 = 'Bold Solid';
|
||||
$lang->edit->quotestyle6 = 'Dotted';
|
||||
$lang->edit->quotestyle7 = 'Dotted + Background';
|
||||
$lang->edit->quotestyle8 = 'Cancel';
|
||||
|
||||
|
||||
$lang->edit->jumptoedit = 'Skip Edit Toolbox';
|
||||
$lang->edit->set_sel = 'Set Cell Count';
|
||||
$lang->edit->row = 'Row';
|
||||
$lang->edit->col = 'Column';
|
||||
$lang->edit->add_one_row = 'Add 1 Row';
|
||||
$lang->edit->del_one_row = 'Remove 1 Row';
|
||||
$lang->edit->add_one_col = 'Add 1 Column';
|
||||
$lang->edit->del_one_col = 'Remove 1 Column';
|
||||
|
||||
$lang->edit->table_config = 'Table Config';
|
||||
$lang->edit->border_width = 'Border Width';
|
||||
$lang->edit->border_color = 'Border Color';
|
||||
$lang->edit->add = 'Add';
|
||||
$lang->edit->del = 'Sub';
|
||||
$lang->edit->search_color = 'Search Colors';
|
||||
$lang->edit->table_backgroundcolor = 'Table Background Color';
|
||||
$lang->edit->special_character = 'Special Characters';
|
||||
$lang->edit->insert_special_character = 'Insert Special Characters';
|
||||
$lang->edit->close_special_character = 'Close Special Characters Layer';
|
||||
$lang->edit->symbol = 'Symbols';
|
||||
$lang->edit->number_unit = 'Numbers and Units';
|
||||
$lang->edit->circle_bracket = 'Circles, Brackets';
|
||||
$lang->edit->korean = 'Korean';
|
||||
$lang->edit->greece = 'Greek';
|
||||
$lang->edit->Latin = 'Latin';
|
||||
$lang->edit->japan = 'Japanese';
|
||||
$lang->edit->selected_symbol = 'Selected Symbols';
|
||||
|
||||
$lang->edit->search_replace = 'Find/Replace';
|
||||
$lang->edit->close_search_replace = 'Close Find/Replace Layer';
|
||||
$lang->edit->replace_all = 'Replace All';
|
||||
$lang->edit->search_words = 'Words to Find';
|
||||
$lang->edit->replace_words = 'Words to Replace';
|
||||
$lang->edit->next_search_words = 'Find Next';
|
||||
$lang->edit->edit_height_control = 'Set Edit Form Size';
|
||||
|
||||
$lang->edit->merge_cells = 'Merge Table Cells';
|
||||
$lang->edit->split_row = 'Split Row';
|
||||
$lang->edit->split_col = 'Split Column';
|
||||
|
||||
$lang->edit->toggle_list = 'Fold/Unfold';
|
||||
$lang->edit->minimize_list = 'Minimize';
|
||||
|
||||
$lang->edit->move = 'Move';
|
||||
$lang->edit->refresh = 'Refresh';
|
||||
$lang->edit->materials = 'Materials';
|
||||
$lang->edit->temporary_savings = 'Temporary Saved List';
|
||||
|
||||
$lang->edit->paging_prev = 'Prev';
|
||||
$lang->edit->paging_next = 'Next';
|
||||
$lang->edit->paging_prev_help = 'Move to previous page.';
|
||||
$lang->edit->paging_next_help = 'Move to next page.';
|
||||
|
||||
$lang->edit->toc = 'Table of Contents';
|
||||
$lang->edit->close_help = 'Close Help';
|
||||
|
||||
$lang->edit->confirm_submit_without_saving = 'There is paragraphs that were not saved.\\nProceed anyway?';
|
||||
|
||||
$lang->edit->image_align = 'Image Alignment';
|
||||
$lang->edit->attached_files = 'Attachments';
|
||||
|
||||
$lang->edit->fontcolor_input = 'Custom Text Color';
|
||||
$lang->edit->fontbgcolor_input = 'Custom Background Color';
|
||||
$lang->edit->pangram = 'The quick brown fox jumps over the lazy dog';
|
||||
|
||||
$lang->edit->table_caption_position = 'Table Caption & Position';
|
||||
$lang->edit->table_caption = 'Table Caption';
|
||||
$lang->edit->table_header = 'Table Header';
|
||||
$lang->edit->table_header_none = 'none';
|
||||
$lang->edit->table_header_left = 'left';
|
||||
$lang->edit->table_header_top = 'top';
|
||||
$lang->edit->table_header_both = 'both';
|
||||
$lang->edit->table_size = 'Table Size';
|
||||
$lang->edit->table_width = 'Table Width';
|
||||
|
||||
$lang->edit->upper_left = 'Upper Left';
|
||||
$lang->edit->upper_center = 'Upper Center';
|
||||
$lang->edit->upper_right = 'Upper Right';
|
||||
$lang->edit->bottom_left = 'Bottom Left';
|
||||
$lang->edit->bottom_center = 'Bottom Center';
|
||||
$lang->edit->bottom_right = 'Bottom Right';
|
||||
|
||||
$lang->edit->no_image = 'There is no images uploaded.';
|
||||
$lang->edit->no_multimedia = 'There is no videos uploaded.';
|
||||
$lang->edit->no_attachment = 'There is no files uploaded.';
|
||||
$lang->edit->insert_selected = 'Insert Selected';
|
||||
$lang->edit->delete_selected = 'Delete Selected';
|
||||
|
||||
$lang->edit->fieldset = 'Fieldset';
|
||||
$lang->edit->paragraph = 'Paragraph';
|
||||
|
||||
$lang->edit->autosave_format = 'You are writing for <strong>%s</strong>. Your article was saved <strong>%s</strong> recently.';
|
||||
$lang->edit->autosave_hour = '%d hour';
|
||||
$lang->edit->autosave_hours = '%d hours';
|
||||
$lang->edit->autosave_min = '%d minute';
|
||||
$lang->edit->autosave_mins = '%d minutes';
|
||||
$lang->edit->autosave_hour_ago = '%d hour ago';
|
||||
$lang->edit->autosave_hours_ago = '%d hours ago';
|
||||
$lang->edit->autosave_min_ago = '%d minute ago';
|
||||
$lang->edit->autosave_mins_ago = '%d minutes ago';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = 'You cannot attach more.';
|
||||
$lang->edit->break_or_paragraph = 'Enter는 줄바꿈, Shift+Enter는 문단바꿈입니다.';
|
||||
?>
|
||||
|
|
@ -1,275 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @archivo modules/editor/lang/es.lang.php
|
||||
* @autor NHN (developers@xpressengine.com)
|
||||
* @sumario Paquete del idioma español para el editor de WYSIWYG
|
||||
**/
|
||||
|
||||
$lang->editor = 'Editor WYSIWYG';
|
||||
$lang->component_name = 'Componente';
|
||||
$lang->component_version = 'Versión';
|
||||
$lang->component_author = 'Autor';
|
||||
$lang->component_link = 'Enlace';
|
||||
$lang->component_date = 'Fecha';
|
||||
$lang->component_license = 'License';
|
||||
$lang->component_history = 'History';
|
||||
$lang->component_description = 'Descripción';
|
||||
$lang->component_extra_vars = 'Varibles Extras';
|
||||
$lang->component_grant = 'Ajuste de las atribuciones';
|
||||
$lang->content_style = 'Content Style';
|
||||
$lang->content_font = 'Content Font';
|
||||
$lang->content_font_size = '문서 폰트 크기';
|
||||
|
||||
$lang->about_component = 'Presentación del componente';
|
||||
$lang->about_component_grant = 'Usted puede configurar el permiso de utilizar la ampliación de los componentes de editor.<br /> (Todo el mundo tendría permiso si no comprobado)';
|
||||
$lang->about_component_mid = '에디터 컴포넌트가 사용될 대상을 지정할 수 있습니다.<br />(모두 해제시 모든 대상에서 사용 가능합니다)';
|
||||
|
||||
$lang->msg_component_is_not_founded = 'No se puede encontrar el componente del editor %s';
|
||||
$lang->msg_component_is_inserted = 'El componente seleccionado ya esta insertado';
|
||||
$lang->msg_component_is_first_order = 'El componente seleccionado se localiza en la primera posición';
|
||||
$lang->msg_component_is_last_order = 'El componente seleccionado se localiza en la última posición';
|
||||
$lang->msg_load_saved_doc = "Existe un documento guardado automáticamente ¿desea recuperarlo ?\nDespués de guardar el documento escrito, el documento autoguardado sera eliminado.";
|
||||
$lang->msg_auto_saved = 'Documento guardado automáticamente';
|
||||
|
||||
$lang->cmd_disable = 'Desactivado';
|
||||
$lang->cmd_enable = 'activado';
|
||||
|
||||
$lang->editor_skin = 'Editor de Cuidado de la Piel';
|
||||
$lang->upload_file_grant = 'La autorización para cargar';
|
||||
$lang->enable_default_component_grant = 'La autorización del uso de los componentes por defecto';
|
||||
$lang->enable_component_grant = 'La autorización de la utilización de componentes';
|
||||
$lang->enable_html_grant = 'La autorización de uso de HTML';
|
||||
$lang->enable_autosave = 'Utilice función de guardado automático,';
|
||||
$lang->height_resizable = 'Altura cambiar de tamaño';
|
||||
$lang->editor_height = 'Altura de Editor';
|
||||
|
||||
$lang->about_editor_skin = 'Usted puede seleccionar la piel del editor.';
|
||||
$lang->about_content_style = '문서 편집 및 내용 출력시 원하는 서식을 지정할 수 있습니다';
|
||||
$lang->about_content_font = '문서 편집 및 내용 출력시 원하는 폰트를 지정할 수 있습니다.<br/>지정하지 않으면 사용자 설정에 따르게 됩니다<br/> ,(콤마)로 여러 폰트를 지정할 수 있습니다.';
|
||||
$lang->about_content_font_size = '문서 편집 및 내용 출력시 원하는 폰트의 크기를 지정할 수 있습니다.<br/>12px, 1em등 단위까지 포함해서 입력해주세요.';
|
||||
$lang->about_upload_file_grant = 'Usted puede configurar el permiso de archivo adjunto. (Todo el mundo tendría permiso si no comprobado)';
|
||||
$lang->about_default_component_grant = 'Usted puede configurar el permiso de uso de los componentes de editor por defecto. (Todo el mundo tendría permiso si no comprobado)';
|
||||
$lang->about_editor_height = 'Usted puede configurar la altura del editor.';
|
||||
$lang->about_editor_height_resizable = 'Permiso para cambiar el tamaño de la altura del editor.';
|
||||
$lang->about_enable_html_grant = 'Usted puede dar el permiso de uso de HTML';
|
||||
$lang->about_enable_autosave = 'Usted puede permitir que la función de guardado automático, en tanto que función de la redacción de artículos';
|
||||
|
||||
$lang->edit->fontname = 'Fuente';
|
||||
$lang->edit->fontsize = 'Tamaño';
|
||||
$lang->edit->use_paragraph = 'Párrafo';
|
||||
$lang->edit->fontlist = array(
|
||||
'Arial'=>'Arial',
|
||||
'Arial Black'=>'Arial Black',
|
||||
'Tahoma'=>'Tahoma',
|
||||
'Verdana'=>'Verdana',
|
||||
'Sans-serif'=>'Sans-serif',
|
||||
'Serif'=>'Serif',
|
||||
'Monospace'=>'Monospace',
|
||||
'Cursive'=>'Cursive',
|
||||
'Fantasy'=>'Fantasy',
|
||||
);
|
||||
|
||||
$lang->edit->header = 'Estilo';
|
||||
$lang->edit->header_list = array(
|
||||
'h1' => 'Título 1',
|
||||
'h2' => 'Título 2',
|
||||
'h3' => 'Título 3',
|
||||
'h4' => 'Título 4',
|
||||
'h5' => 'Título 5',
|
||||
'h6' => 'Título 6',
|
||||
);
|
||||
|
||||
$lang->edit->submit = 'Confirmar';
|
||||
|
||||
$lang->edit->fontcolor = 'Text Color';
|
||||
$lang->edit->fontcolor_apply = '글자 색 적용';
|
||||
$lang->edit->fontcolor_more = '글자 색 더보기';
|
||||
$lang->edit->fontbgcolor = 'Background Color';
|
||||
$lang->edit->fontbgcolor_apply = '글자 배경색 적용';
|
||||
$lang->edit->fontbgcolor_more = '글자 배경색 더보기';
|
||||
$lang->edit->bold = 'Bold';
|
||||
$lang->edit->italic = 'Italic';
|
||||
$lang->edit->underline = 'Underline';
|
||||
$lang->edit->strike = 'Strike';
|
||||
$lang->edit->sup = 'Sup';
|
||||
$lang->edit->sub = 'Sub';
|
||||
$lang->edit->redo = 'Re Do';
|
||||
$lang->edit->undo = 'Un Do';
|
||||
$lang->edit->align_left = 'Align Left';
|
||||
$lang->edit->align_center = 'Align Center';
|
||||
$lang->edit->align_right = 'Align Right';
|
||||
$lang->edit->align_justify = 'Align Justify';
|
||||
$lang->edit->add_indent = 'Indent';
|
||||
$lang->edit->remove_indent = 'Outdent';
|
||||
$lang->edit->list_number = 'Orderd List';
|
||||
$lang->edit->list_bullet = 'Unordered List';
|
||||
$lang->edit->remove_format = 'Style Remover';
|
||||
|
||||
$lang->edit->help_fontcolor = 'Selecciona el color de las letras';
|
||||
$lang->edit->help_fontbgcolor = 'Selecciona el color del fondo de la letras';
|
||||
$lang->edit->help_bold = 'Letra gruesa';
|
||||
$lang->edit->help_italic = 'Letra cursiva';
|
||||
$lang->edit->help_underline = 'Letra subrayada';
|
||||
$lang->edit->help_strike = 'Letra con linea';
|
||||
$lang->edit->help_sup = 'Sup';
|
||||
$lang->edit->help_sub = 'Sub';
|
||||
$lang->edit->help_redo = 'Rehacer';
|
||||
$lang->edit->help_undo = 'Deshacer';
|
||||
$lang->edit->help_align_left = 'Margen izquierdo';
|
||||
$lang->edit->help_align_center = 'Margen central';
|
||||
$lang->edit->help_align_right = 'Margen derecho';
|
||||
$lang->edit->help_align_justify = 'Align justity';
|
||||
$lang->edit->help_add_indent = 'Anadir tabulación';
|
||||
$lang->edit->help_remove_indent = 'Quitar tabulación';
|
||||
$lang->edit->help_list_number = 'Aplicar la lista con números';
|
||||
$lang->edit->help_list_bullet = 'Aplicar la lista con símbolos';
|
||||
$lang->edit->help_use_paragraph = 'Presiona Ctrl+Enter para usar el párrafo (Presiona Alt+S para guardar)';
|
||||
|
||||
$lang->edit->url = 'URL';
|
||||
$lang->edit->blockquote = 'Blockquote';
|
||||
$lang->edit->table = 'Table';
|
||||
$lang->edit->image = 'Image';
|
||||
$lang->edit->multimedia = 'Movie';
|
||||
$lang->edit->emoticon = 'Emoticon';
|
||||
|
||||
$lang->edit->file = '파일';
|
||||
$lang->edit->upload = 'Adjuntar';
|
||||
$lang->edit->upload_file = 'Archivo adjunto';
|
||||
$lang->edit->upload_list = '첨부 목록';
|
||||
$lang->edit->link_file = 'Insertar en el contenido del documento';
|
||||
$lang->edit->delete_selected = 'Eliminar lo seleccionado';
|
||||
|
||||
$lang->edit->icon_align_article = 'Ocupar un párrafo';
|
||||
$lang->edit->icon_align_left = 'Margen izquierdo';
|
||||
$lang->edit->icon_align_middle = 'Margen central';
|
||||
$lang->edit->icon_align_right = 'Margen derecho';
|
||||
|
||||
$lang->about_dblclick_in_editor = 'Para la configuracion más detallada debera hacer dobleclick sobre el texto, imagen, fondo, etc.';
|
||||
|
||||
|
||||
$lang->edit->rich_editor = '스타일 편집기';
|
||||
$lang->edit->html_editor = 'HTML 편집기';
|
||||
$lang->edit->extension ='확장 컴포넌트';
|
||||
$lang->edit->help = '도움말';
|
||||
$lang->edit->help_command = '단축키 안내';
|
||||
|
||||
$lang->edit->lineheight = '줄간격';
|
||||
$lang->edit->fontbgsampletext = '가나다';
|
||||
|
||||
$lang->edit->hyperlink = '하이퍼링크';
|
||||
$lang->edit->target_blank = '새창으로';
|
||||
|
||||
$lang->edit->quotestyle1 = '왼쪽 실선';
|
||||
$lang->edit->quotestyle2 = '인용 부호';
|
||||
$lang->edit->quotestyle3 = '실선';
|
||||
$lang->edit->quotestyle4 = '실선 + 배경';
|
||||
$lang->edit->quotestyle5 = '굵은 실선';
|
||||
$lang->edit->quotestyle6 = '점선';
|
||||
$lang->edit->quotestyle7 = '점선 + 배경';
|
||||
$lang->edit->quotestyle8 = '적용 취소';
|
||||
|
||||
|
||||
$lang->edit->jumptoedit = '편집 도구모음 건너뛰기';
|
||||
$lang->edit->set_sel = '칸 수 지정';
|
||||
$lang->edit->row = '행';
|
||||
$lang->edit->col = '열';
|
||||
$lang->edit->add_one_row = '1행추가';
|
||||
$lang->edit->del_one_row = '1행삭제';
|
||||
$lang->edit->add_one_col = '1열추가';
|
||||
$lang->edit->del_one_col = '1열삭제';
|
||||
|
||||
$lang->edit->table_config = '표 속성 지정';
|
||||
$lang->edit->border_width = '테두리 굵기';
|
||||
$lang->edit->border_color = '테두리 색';
|
||||
$lang->edit->add = '더하기';
|
||||
$lang->edit->del = '빼기';
|
||||
$lang->edit->search_color = '색상찾기';
|
||||
$lang->edit->table_backgroundcolor = '표 배경색';
|
||||
$lang->edit->special_character = '특수문자';
|
||||
$lang->edit->insert_special_character = '특수문자 삽입';
|
||||
$lang->edit->close_special_character = '특수문자 레이어 닫기';
|
||||
$lang->edit->symbol = '일반기호';
|
||||
$lang->edit->number_unit = '숫자와 단위';
|
||||
$lang->edit->circle_bracket = '원,괄호';
|
||||
$lang->edit->korean = '한글';
|
||||
$lang->edit->greece = '그리스';
|
||||
$lang->edit->Latin = '라틴어';
|
||||
$lang->edit->japan = '일본어';
|
||||
$lang->edit->selected_symbol = '선택한 기호';
|
||||
|
||||
$lang->edit->search_replace = '찾기/바꾸기';
|
||||
$lang->edit->close_search_replace = '찾기/바꾸기 레이어 닫기';
|
||||
$lang->edit->replace_all = '모두바꾸기';
|
||||
$lang->edit->search_words = '찾을단어';
|
||||
$lang->edit->replace_words = '바꿀단어';
|
||||
$lang->edit->next_search_words = '다음찾기';
|
||||
$lang->edit->edit_height_control = '입력창 크기 조절';
|
||||
|
||||
$lang->edit->merge_cells = '셀 병합';
|
||||
$lang->edit->split_row = '행 분할';
|
||||
$lang->edit->split_col = '열 분할';
|
||||
|
||||
$lang->edit->toggle_list = '목록 접기/펼치기';
|
||||
$lang->edit->minimize_list = '최소화';
|
||||
|
||||
$lang->edit->move = '이동';
|
||||
$lang->edit->refresh = 'Refresh';
|
||||
$lang->edit->materials = '글감보관함';
|
||||
$lang->edit->temporary_savings = '임시저장목록';
|
||||
|
||||
$lang->edit->paging_prev = '이전';
|
||||
$lang->edit->paging_next = '다음';
|
||||
$lang->edit->paging_prev_help = '이전 페이지로 이동합니다.';
|
||||
$lang->edit->paging_next_help = '다음 페이지로 이동합니다.';
|
||||
|
||||
$lang->edit->toc = '목차';
|
||||
$lang->edit->close_help = '도움말 닫기';
|
||||
|
||||
$lang->edit->confirm_submit_without_saving = '저장하지 않은 단락이 있습니다.\\n그냥 전송하시겠습니까?';
|
||||
|
||||
$lang->edit->image_align = '이미지 정렬';
|
||||
$lang->edit->attached_files = '첨부 파일';
|
||||
|
||||
$lang->edit->fontcolor_input = '폰트색 직접입력';
|
||||
$lang->edit->fontbgcolor_input = '배경색 직접입력';
|
||||
$lang->edit->pangram = '무궁화 꽃이 피었습니다';
|
||||
|
||||
$lang->edit->table_caption_position = '표 제목(caption) 및 배치';
|
||||
$lang->edit->table_caption = '표 제목(caption)';
|
||||
$lang->edit->table_header = '머리글 셀(th)';
|
||||
$lang->edit->table_header_none = '없음';
|
||||
$lang->edit->table_header_left = '왼쪽';
|
||||
$lang->edit->table_header_top = '위쪽';
|
||||
$lang->edit->table_header_both = '모두';
|
||||
$lang->edit->table_size = '표 크기';
|
||||
$lang->edit->table_width = '표 폭';
|
||||
|
||||
$lang->edit->upper_left = '상단좌측';
|
||||
$lang->edit->upper_center = '상단중앙';
|
||||
$lang->edit->upper_right = '상단우측';
|
||||
$lang->edit->bottom_left = '하단좌측';
|
||||
$lang->edit->bottom_center = '하단중앙';
|
||||
$lang->edit->bottom_right = '하단우측';
|
||||
|
||||
$lang->edit->no_image = '첨부된 이미지가 없습니다.';
|
||||
$lang->edit->no_multimedia = '첨부된 동영상이 없습니다.';
|
||||
$lang->edit->no_attachment = '첨부된 파일이 없습니다.';
|
||||
$lang->edit->insert_selected = '선택 넣기';
|
||||
$lang->edit->delete_selected = '선택 삭제';
|
||||
|
||||
$lang->edit->fieldset = '글상자';
|
||||
$lang->edit->paragraph = '문단';
|
||||
|
||||
$lang->edit->autosave_format = '글을 쓰기 시작한지 <strong>%s</strong>이 지났습니다. 마지막 저장 시간은 <strong>%s</strong> 입니다.';
|
||||
$lang->edit->autosave_hour = '%d시간';
|
||||
$lang->edit->autosave_hours = '%d시간';
|
||||
$lang->edit->autosave_min = '%d분';
|
||||
$lang->edit->autosave_mins = '%d분';
|
||||
$lang->edit->autosave_hour_ago = '%d시간 전';
|
||||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
$lang->edit->break_or_paragraph = 'Enter는 줄바꿈, Shift+Enter는 문단바꿈입니다.';
|
||||
?>
|
||||
|
|
@ -1,279 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/editor/lang/fr.lang.php
|
||||
* @author NHN (developers@xpressengine.com) Traduit par Pierre Duvent <PierreDuvent@gmail.com>
|
||||
* @brief Paquet du langage en français pour le module de Tel-tel Editeur
|
||||
**/
|
||||
|
||||
$lang->editor = 'Tel-tel Editeur';
|
||||
$lang->component_name = 'Composant';
|
||||
$lang->component_version = 'Version';
|
||||
$lang->component_author = 'Développeur';
|
||||
$lang->component_link = 'Lien';
|
||||
$lang->component_date = 'Jour de Création';
|
||||
$lang->component_license = 'Licence';
|
||||
$lang->component_history = 'Histoire';
|
||||
$lang->component_description = 'Description';
|
||||
$lang->component_extra_vars = 'Variables d\'Option';
|
||||
$lang->component_grant = 'Configuration de la Permission';
|
||||
$lang->content_style = 'Content Style';
|
||||
$lang->content_font = 'Content Font';
|
||||
$lang->content_font_size = '문서 폰트 크기';
|
||||
|
||||
$lang->about_component = 'Sur le Composant';
|
||||
$lang->about_component_grant = 'Vous pouvez configurer la Permission d\'utiliser des composants additionnels de l\'Editeur.<br /> (Tout le monde aura la Permission si vous ne cochez rien)';
|
||||
$lang->about_component_mid = 'Vous pouvez désigner les objectifs auquels les composants s\'appliquent<br />(Tous les objectifs auront la Permission quand rien n\'est choisi.)';
|
||||
|
||||
$lang->msg_component_is_not_founded = 'Ne peut pas trouver Composant %s';
|
||||
$lang->msg_component_is_inserted = 'Composant choisi est déjà entré';
|
||||
$lang->msg_component_is_first_order = 'Composant choisi est localisé à la première position';
|
||||
$lang->msg_component_is_last_order = 'Composant choisi est localisé à la position dernière';
|
||||
$lang->msg_load_saved_doc = "Il y a un article conservé automatiquement. Voulez-vous le réstaurer?\nL'esquisse conservé automatiquement va être débarrasser après conserver l'article courant.";
|
||||
$lang->msg_auto_saved = 'Conservé automatiquement';
|
||||
|
||||
$lang->cmd_disable = 'Invalider';
|
||||
$lang->cmd_enable = 'Valider';
|
||||
|
||||
$lang->editor_skin = 'Habillage de l\'Editeur';
|
||||
$lang->upload_file_grant = 'Permission de télécharger(téléverser) ';
|
||||
$lang->enable_default_component_grant = 'Permission d\'utiliser les Composants Par Défaut';
|
||||
$lang->enable_component_grant = 'Permission d\'utiliser des composants';
|
||||
$lang->enable_html_grant = 'Permission d\'utiliser HTML';
|
||||
$lang->enable_autosave = 'Valider à conserver automatiquement';
|
||||
$lang->height_resizable = 'Permettre de remettre l\'hauteur';
|
||||
$lang->editor_height = 'Hauteur de l\'Editeur';
|
||||
|
||||
$lang->about_editor_skin = 'Vous pouvez choisir l\'habillage de l\'Editeur.';
|
||||
$lang->about_content_style = '문서 편집 및 내용 출력시 원하는 서식을 지정할 수 있습니다';
|
||||
$lang->about_content_font = '문서 편집 및 내용 출력시 원하는 폰트를 지정할 수 있습니다.<br/>지정하지 않으면 사용자 설정에 따르게 됩니다<br/> ,(콤마)로 여러 폰트를 지정할 수 있습니다.';
|
||||
$lang->about_content_font_size = '문서 편집 및 내용 출력시 원하는 폰트의 크기를 지정할 수 있습니다.<br/>12px, 1em등 단위까지 포함해서 입력해주세요.';
|
||||
$lang->about_upload_file_grant = 'Vous pouvez configurer la permission d\'attacher les fichiers. (Tout le monde aura la permission si vous ne cochez rien)';
|
||||
$lang->about_default_component_grant = 'Vous pouvez configurer la permission d\'utiliser les Composants Par Défaut de l\'Editeur. (Tout le monde aura la permission si vous ne cochez rien)';
|
||||
$lang->about_editor_height = 'Vous pouvez configurer l\'hauteur de l\'Editeur.';
|
||||
$lang->about_editor_height_resizable = 'Permettre de remettre l\'hauteur de l\'Editeur.';
|
||||
$lang->about_enable_html_grant = 'Vous pouvez permettre d\'utiliser HTML';
|
||||
$lang->about_enable_autosave = 'Vous pouvez valider la fonction à Conserver Automatiquement pendant écrire des articles.';
|
||||
|
||||
$lang->edit->fontname = 'Police de caractères';
|
||||
$lang->edit->fontsize = 'Mesure';
|
||||
$lang->edit->use_paragraph = 'Fonctions sur Paragraphe';
|
||||
$lang->edit->fontlist = array(
|
||||
'Arial'=>'Arial',
|
||||
'Arial Black'=>'Arial Black',
|
||||
'Tahoma'=>'Tahoma',
|
||||
'Verdana'=>'Verdana',
|
||||
'Sans-serif'=>'Sans-serif',
|
||||
'Serif'=>'Serif',
|
||||
'Monospace'=>'Monospace',
|
||||
'Cursive'=>'Cursive',
|
||||
'Fantasy'=>'Fantasy',
|
||||
);
|
||||
|
||||
$lang->edit->header = 'Style';
|
||||
$lang->edit->header_list = array(
|
||||
'h1' => 'Titre 1',
|
||||
'h2' => 'Titre 2',
|
||||
'h3' => 'Titre 3',
|
||||
'h4' => 'Titre 4',
|
||||
'h5' => 'Titre 5',
|
||||
'h6' => 'Titre 6',
|
||||
);
|
||||
|
||||
$lang->edit->submit = 'Soumettre';
|
||||
|
||||
$lang->edit->fontcolor = 'Text Color';
|
||||
$lang->edit->fontcolor_apply = '글자 색 적용';
|
||||
$lang->edit->fontcolor_more = '글자 색 더보기';
|
||||
$lang->edit->fontbgcolor = 'Background Color';
|
||||
$lang->edit->fontbgcolor_apply = '글자 배경색 적용';
|
||||
$lang->edit->fontbgcolor_more = '글자 배경색 더보기';
|
||||
$lang->edit->bold = 'Bold';
|
||||
$lang->edit->italic = 'Italic';
|
||||
$lang->edit->underline = 'Underline';
|
||||
$lang->edit->strike = 'Strike';
|
||||
$lang->edit->sup = 'Sup';
|
||||
$lang->edit->sub = 'Sub';
|
||||
$lang->edit->redo = 'Re Do';
|
||||
$lang->edit->undo = 'Un Do';
|
||||
$lang->edit->align_left = 'Align Left';
|
||||
$lang->edit->align_center = 'Align Center';
|
||||
$lang->edit->align_right = 'Align Right';
|
||||
$lang->edit->align_justify = 'Align Justify';
|
||||
$lang->edit->add_indent = 'Indent';
|
||||
$lang->edit->remove_indent = 'Outdent';
|
||||
$lang->edit->list_number = 'Orderd List';
|
||||
$lang->edit->list_bullet = 'Unordered List';
|
||||
$lang->edit->remove_format = 'Style Remover';
|
||||
|
||||
$lang->edit->help_remove_format = 'Supprimer les balises dans l\'endroit sélectionné';
|
||||
$lang->edit->help_strike_through = 'Représenter la ligne d\'annulation sur les lettres.';
|
||||
$lang->edit->help_align_full = 'Aligner pleinement selon largeur';
|
||||
|
||||
$lang->edit->help_fontcolor = 'Désigner la couleur de la Police de caractères';
|
||||
$lang->edit->help_fontbgcolor = 'Désigner la couleur de l\'arrière-plan de la Police de caractères.';
|
||||
$lang->edit->help_bold = 'Caractère gras';
|
||||
$lang->edit->help_italic = 'Caractère italique';
|
||||
$lang->edit->help_underline = 'Caractère souligné';
|
||||
$lang->edit->help_strike = 'Caractère biffé';
|
||||
$lang->edit->help_sup = 'Sup';
|
||||
$lang->edit->help_sub = 'Sub';
|
||||
$lang->edit->help_redo = 'Réfaire';
|
||||
$lang->edit->help_undo = 'Annuler';
|
||||
$lang->edit->help_align_left = 'Aligner à gauche';
|
||||
$lang->edit->help_align_center = 'Aligner centr';
|
||||
$lang->edit->help_align_right = 'Aligner droite';
|
||||
$lang->edit->help_align_justify = 'Align justity';
|
||||
$lang->edit->help_add_indent = 'Ajouter un Rentré';
|
||||
$lang->edit->help_remove_indent = 'Enlever un Rentré';
|
||||
$lang->edit->help_list_number = 'Appliquer la liste numroté';
|
||||
$lang->edit->help_list_bullet = 'Appliquer la liste à puces';
|
||||
$lang->edit->help_use_paragraph = 'Appuyez Ctrl+Enter pour séparer les paragraphe. (Appuyez Alt+S pour conserver)';
|
||||
|
||||
$lang->edit->url = 'URL';
|
||||
$lang->edit->blockquote = 'Blockquote';
|
||||
$lang->edit->table = 'Table';
|
||||
$lang->edit->image = 'Image';
|
||||
$lang->edit->multimedia = 'Movie';
|
||||
$lang->edit->emoticon = 'Emoticon';
|
||||
|
||||
$lang->edit->file = '파일';
|
||||
$lang->edit->upload = 'Attacher';
|
||||
$lang->edit->upload_file = 'Attacher un(des) Fichier(s)';
|
||||
$lang->edit->upload_list = '첨부 목록';
|
||||
$lang->edit->link_file = 'Insérer dans le Texte';
|
||||
$lang->edit->delete_selected = 'Supprimer le Sélectionné';
|
||||
|
||||
$lang->edit->icon_align_article = 'Occuper un paragraphe';
|
||||
$lang->edit->icon_align_left = 'Placer à gauche du texte';
|
||||
$lang->edit->icon_align_middle = 'Placer au centre';
|
||||
$lang->edit->icon_align_right = 'Placer à droite du texte';
|
||||
|
||||
$lang->about_dblclick_in_editor = 'Vous pouvez configurer en détail des composants par double-clic sur un arrière-plan, un texte, une image ou une citation';
|
||||
|
||||
|
||||
$lang->edit->rich_editor = '스타일 편집기';
|
||||
$lang->edit->html_editor = 'HTML 편집기';
|
||||
$lang->edit->extension ='확장 컴포넌트';
|
||||
$lang->edit->help = '도움말';
|
||||
$lang->edit->help_command = '단축키 안내';
|
||||
|
||||
$lang->edit->lineheight = '줄간격';
|
||||
$lang->edit->fontbgsampletext = '가나다';
|
||||
|
||||
$lang->edit->hyperlink = '하이퍼링크';
|
||||
$lang->edit->target_blank = '새창으로';
|
||||
|
||||
$lang->edit->quotestyle1 = '왼쪽 실선';
|
||||
$lang->edit->quotestyle2 = '인용 부호';
|
||||
$lang->edit->quotestyle3 = '실선';
|
||||
$lang->edit->quotestyle4 = '실선 + 배경';
|
||||
$lang->edit->quotestyle5 = '굵은 실선';
|
||||
$lang->edit->quotestyle6 = '점선';
|
||||
$lang->edit->quotestyle7 = '점선 + 배경';
|
||||
$lang->edit->quotestyle8 = '적용 취소';
|
||||
|
||||
|
||||
$lang->edit->jumptoedit = '편집 도구모음 건너뛰기';
|
||||
$lang->edit->set_sel = '칸 수 지정';
|
||||
$lang->edit->row = '행';
|
||||
$lang->edit->col = '열';
|
||||
$lang->edit->add_one_row = '1행추가';
|
||||
$lang->edit->del_one_row = '1행삭제';
|
||||
$lang->edit->add_one_col = '1열추가';
|
||||
$lang->edit->del_one_col = '1열삭제';
|
||||
|
||||
$lang->edit->table_config = '표 속성 지정';
|
||||
$lang->edit->border_width = '테두리 굵기';
|
||||
$lang->edit->border_color = '테두리 색';
|
||||
$lang->edit->add = '더하기';
|
||||
$lang->edit->del = '빼기';
|
||||
$lang->edit->search_color = '색상찾기';
|
||||
$lang->edit->table_backgroundcolor = '표 배경색';
|
||||
$lang->edit->special_character = '특수문자';
|
||||
$lang->edit->insert_special_character = '특수문자 삽입';
|
||||
$lang->edit->close_special_character = '특수문자 레이어 닫기';
|
||||
$lang->edit->symbol = '일반기호';
|
||||
$lang->edit->number_unit = '숫자와 단위';
|
||||
$lang->edit->circle_bracket = '원,괄호';
|
||||
$lang->edit->korean = '한글';
|
||||
$lang->edit->greece = '그리스';
|
||||
$lang->edit->Latin = '라틴어';
|
||||
$lang->edit->japan = '일본어';
|
||||
$lang->edit->selected_symbol = '선택한 기호';
|
||||
|
||||
$lang->edit->search_replace = '찾기/바꾸기';
|
||||
$lang->edit->close_search_replace = '찾기/바꾸기 레이어 닫기';
|
||||
$lang->edit->replace_all = '모두바꾸기';
|
||||
$lang->edit->search_words = '찾을단어';
|
||||
$lang->edit->replace_words = '바꿀단어';
|
||||
$lang->edit->next_search_words = '다음찾기';
|
||||
$lang->edit->edit_height_control = '입력창 크기 조절';
|
||||
|
||||
$lang->edit->merge_cells = '셀 병합';
|
||||
$lang->edit->split_row = '행 분할';
|
||||
$lang->edit->split_col = '열 분할';
|
||||
|
||||
$lang->edit->toggle_list = '목록 접기/펼치기';
|
||||
$lang->edit->minimize_list = '최소화';
|
||||
|
||||
$lang->edit->move = '이동';
|
||||
$lang->edit->refresh = 'Refresh';
|
||||
$lang->edit->materials = '글감보관함';
|
||||
$lang->edit->temporary_savings = '임시저장목록';
|
||||
|
||||
$lang->edit->paging_prev = '이전';
|
||||
$lang->edit->paging_next = '다음';
|
||||
$lang->edit->paging_prev_help = '이전 페이지로 이동합니다.';
|
||||
$lang->edit->paging_next_help = '다음 페이지로 이동합니다.';
|
||||
|
||||
$lang->edit->toc = '목차';
|
||||
$lang->edit->close_help = '도움말 닫기';
|
||||
|
||||
$lang->edit->confirm_submit_without_saving = '저장하지 않은 단락이 있습니다.\\n그냥 전송하시겠습니까?';
|
||||
|
||||
$lang->edit->image_align = '이미지 정렬';
|
||||
$lang->edit->attached_files = '첨부 파일';
|
||||
|
||||
$lang->edit->fontcolor_input = '폰트색 직접입력';
|
||||
$lang->edit->fontbgcolor_input = '배경색 직접입력';
|
||||
$lang->edit->pangram = '무궁화 꽃이 피었습니다';
|
||||
|
||||
$lang->edit->table_caption_position = '표 제목(caption) 및 배치';
|
||||
$lang->edit->table_caption = '표 제목(caption)';
|
||||
$lang->edit->table_header = '머리글 셀(th)';
|
||||
$lang->edit->table_header_none = '없음';
|
||||
$lang->edit->table_header_left = '왼쪽';
|
||||
$lang->edit->table_header_top = '위쪽';
|
||||
$lang->edit->table_header_both = '모두';
|
||||
$lang->edit->table_size = '표 크기';
|
||||
$lang->edit->table_width = '표 폭';
|
||||
|
||||
$lang->edit->upper_left = '상단좌측';
|
||||
$lang->edit->upper_center = '상단중앙';
|
||||
$lang->edit->upper_right = '상단우측';
|
||||
$lang->edit->bottom_left = '하단좌측';
|
||||
$lang->edit->bottom_center = '하단중앙';
|
||||
$lang->edit->bottom_right = '하단우측';
|
||||
|
||||
$lang->edit->no_image = '첨부된 이미지가 없습니다.';
|
||||
$lang->edit->no_multimedia = '첨부된 동영상이 없습니다.';
|
||||
$lang->edit->no_attachment = '첨부된 파일이 없습니다.';
|
||||
$lang->edit->insert_selected = '선택 넣기';
|
||||
$lang->edit->delete_selected = '선택 삭제';
|
||||
|
||||
$lang->edit->fieldset = '글상자';
|
||||
$lang->edit->paragraph = '문단';
|
||||
|
||||
$lang->edit->autosave_format = '글을 쓰기 시작한지 <strong>%s</strong>이 지났습니다. 마지막 저장 시간은 <strong>%s</strong> 입니다.';
|
||||
$lang->edit->autosave_hour = '%d시간';
|
||||
$lang->edit->autosave_hours = '%d시간';
|
||||
$lang->edit->autosave_min = '%d분';
|
||||
$lang->edit->autosave_mins = '%d분';
|
||||
$lang->edit->autosave_hour_ago = '%d시간 전';
|
||||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
$lang->edit->break_or_paragraph = 'Enter는 줄바꿈, Shift+Enter는 문단바꿈입니다.';
|
||||
?>
|
||||
|
|
@ -1,281 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/editor/lang/jp.lang.php
|
||||
* @author NHN (developers@xpressengine.com) 翻訳:RisaPapa、ミニミ
|
||||
* @brief ウィジウィグエディター(editor)モジュールの基本言語パッケージ
|
||||
**/
|
||||
|
||||
$lang->editor = 'ウイジウイグエディター';
|
||||
$lang->component_name = 'コンポーネント';
|
||||
$lang->component_version = 'バージョン';
|
||||
$lang->component_author = '作者';
|
||||
$lang->component_link = 'リンク';
|
||||
$lang->component_date = '作成日';
|
||||
$lang->component_license = 'ライセンス';
|
||||
$lang->component_history = '変更履歴';
|
||||
$lang->component_description = '説明';
|
||||
$lang->component_extra_vars = '設定変数';
|
||||
$lang->component_grant = '権限設定';
|
||||
$lang->content_style = 'コンテンツスタイル';
|
||||
$lang->content_font = 'コンテンツフォント';
|
||||
$lang->content_font_size = 'コンテンツフォントサイズ';
|
||||
|
||||
$lang->about_component = 'コンポーネント情報';
|
||||
$lang->about_component_grant = '基本コンポーネント以外の拡張コンポーネント機能が利用可能な権限の設定が出来ます。<br />(選択なしの場合、誰でも利用可能)';
|
||||
$lang->about_component_mid = 'エディターコンポーネントが使われる対象を指定します。<br />(選択なしの場合、全ての対象で利用可能)';
|
||||
|
||||
$lang->msg_component_is_not_founded = '%s エディターのコンポーネントが見つかりません。';
|
||||
$lang->msg_component_is_inserted = '選択されたコンポーネントは既に入力されています。';
|
||||
$lang->msg_component_is_first_order = '選択されたコンポーネントは最初に位置しています。';
|
||||
$lang->msg_component_is_last_order = '選択されたコンポーネントは最後に位置しています。';
|
||||
$lang->msg_load_saved_doc = "自動保存された書き込みがあります。復旧しますか?\n書き終わってから登録すると前の自動保存データは削除されます。";
|
||||
$lang->msg_auto_saved = '自動保存されました。';
|
||||
|
||||
$lang->cmd_disable = '未使用';
|
||||
$lang->cmd_enable = '使用';
|
||||
|
||||
$lang->editor_skin = 'エディタースキン';
|
||||
$lang->upload_file_grant = 'ファイル添付権限';
|
||||
$lang->enable_default_component_grant = '基本コンポーネント使用権限';
|
||||
$lang->enable_component_grant = 'コンポーネント使用権限';
|
||||
$lang->enable_html_grant = 'HTML編集権限';
|
||||
$lang->enable_autosave = '自動保存使用';
|
||||
$lang->height_resizable = '高さの調整';
|
||||
$lang->editor_height = 'エディターの高さ';
|
||||
|
||||
$lang->about_editor_skin = 'エディターのスキンの選択が出来ます。';
|
||||
$lang->about_content_style = 'コンテンツの編集、および内容表示の際のスタイルを指定します。';
|
||||
$lang->about_content_font = 'コンテンツの編集、および内容表示の際のフォントを指定します。<br/>指定してない場合、ユーザーの設定を従います。<br/> 半角コンマ(,)区切りで複数フォントの登録が出来ます。';
|
||||
$lang->about_content_font_size = 'コンテンツの編集、および内容表示の際のフォントサイズを指定します。<br/>12px、1emなどサイズ単位まで入力して下さい。';
|
||||
$lang->about_upload_file_grant = 'ファイル添付可能な権限の設定が出来ます。(選択なしの場合、誰でも添付が可能)';
|
||||
$lang->about_default_component_grant = 'エディターでの基本コンポーネントを使用可能な権限の設定が出来ます。(選択なしの場合、誰でも利用可能)';
|
||||
$lang->about_editor_height = 'エディターの基本高さを設定します。';
|
||||
$lang->about_editor_height_resizable = 'エディターの高さを変更出来るようにします。';
|
||||
$lang->about_enable_html_grant = 'HTML編集権限を設定します。';
|
||||
$lang->about_enable_autosave = '書き込みのとき、自動保存機能をオンにします。';
|
||||
|
||||
$lang->edit->fontname = 'フォント';
|
||||
$lang->edit->fontsize = 'フォントサイズ';
|
||||
$lang->edit->use_paragraph = '段落機能';
|
||||
$lang->edit->fontlist = array(
|
||||
'MS PGothic' => 'MS Pゴシック',
|
||||
'MS PMincho' => 'MS P明朝',
|
||||
'MS UI Gothic' => 'MS UI Gothic',
|
||||
'Arial' => 'Arial',
|
||||
'Arial Black' => 'Arial Black',
|
||||
'Tahoma' => 'Tahoma',
|
||||
'Verdana' => 'Verdana',
|
||||
'Sans-serif' => 'Sans-serif',
|
||||
'Serif' => 'Serif',
|
||||
'Monospace' => 'Monospace',
|
||||
'Cursive' => 'Cursive',
|
||||
'Fantasy' => 'Fantasy',
|
||||
);
|
||||
|
||||
$lang->edit->header = '見出し';
|
||||
$lang->edit->header_list = array(
|
||||
'h1' => '見出し1',
|
||||
'h2' => '見出し2',
|
||||
'h3' => '見出し3',
|
||||
'h4' => '見出し4',
|
||||
'h5' => '見出し5',
|
||||
'h6' => '見出し6',
|
||||
);
|
||||
|
||||
$lang->edit->submit = '送信';
|
||||
|
||||
$lang->edit->fontcolor = 'テキストの色';
|
||||
$lang->edit->fontcolor_apply = 'テキスト色適用';
|
||||
$lang->edit->fontcolor_more = '他のテキスト色';
|
||||
$lang->edit->fontbgcolor = 'テキストの背景色';
|
||||
$lang->edit->fontbgcolor_apply = 'テキスト背景色適用';
|
||||
$lang->edit->fontbgcolor_more = '他のテキスト背景色';
|
||||
$lang->edit->bold = '太字';
|
||||
$lang->edit->italic = '斜体';
|
||||
$lang->edit->underline = '下線';
|
||||
$lang->edit->strike = '取り消し線';
|
||||
$lang->edit->sup = '上付き文字';
|
||||
$lang->edit->sub = '下付き文字';
|
||||
$lang->edit->redo = '繰り返し';
|
||||
$lang->edit->undo = '元に戻す';
|
||||
$lang->edit->align_left = '左揃え';
|
||||
$lang->edit->align_center = '中央揃え';
|
||||
$lang->edit->align_right = '右揃え';
|
||||
$lang->edit->align_justify = '均等割付';
|
||||
$lang->edit->add_indent = 'インデント増';
|
||||
$lang->edit->remove_indent = 'インデント減';
|
||||
$lang->edit->list_number = '番号付リスト';
|
||||
$lang->edit->list_bullet = '箇条書き';
|
||||
$lang->edit->remove_format = '書式をクリア';
|
||||
|
||||
$lang->edit->help_remove_format = '選択領域の中のタグを消します。';
|
||||
$lang->edit->help_strike_through = 'テキストに取り消し線を表示します。';
|
||||
$lang->edit->help_align_full = '左右の余白に合わせて文字列を配置します。';
|
||||
|
||||
$lang->edit->help_fontcolor = 'テキストの色を指定します。';
|
||||
$lang->edit->help_fontbgcolor = 'テキストの背景色を指定します。';
|
||||
$lang->edit->help_bold = 'テキストを太字に指定します。';
|
||||
$lang->edit->help_italic = 'テキストを斜体にします。';
|
||||
$lang->edit->help_underline = 'テキストに下線(アンダーライン)を引きます。';
|
||||
$lang->edit->help_strike = '取り消し線を引きます。';
|
||||
$lang->edit->help_sup = '上付き文字';
|
||||
$lang->edit->help_sub = '下付き文字';
|
||||
$lang->edit->help_redo = '繰り返し';
|
||||
$lang->edit->help_undo = '元に戻す';
|
||||
$lang->edit->help_align_left = 'テキストを左揃えで表示します。';
|
||||
$lang->edit->help_align_center = 'テキストを中央揃えで表示します。';
|
||||
$lang->edit->help_align_right = 'テキストを右揃えで表示します。';
|
||||
$lang->edit->help_align_justify = 'テキストを両端揃えで表示します。';
|
||||
$lang->edit->help_add_indent = 'インデントを増やします。';
|
||||
$lang->edit->help_remove_indent = 'インデントを減らします。';
|
||||
$lang->edit->help_list_number = '番号付リスト';
|
||||
$lang->edit->help_list_bullet = '箇条書き';
|
||||
$lang->edit->help_use_paragraph = '段落機能を使用する場合は、「Ctrl+Enter」を押します(書き終わった後、「Alt+S」を押すと保存されます)。';
|
||||
|
||||
$lang->edit->url = 'リンク';
|
||||
$lang->edit->blockquote = '引用文';
|
||||
$lang->edit->table = '表';
|
||||
$lang->edit->image = 'イメージ';
|
||||
$lang->edit->multimedia = '動画';
|
||||
$lang->edit->emoticon = '絵文字';
|
||||
|
||||
$lang->edit->file = 'ファイル';
|
||||
$lang->edit->upload = '添付';
|
||||
$lang->edit->upload_file = 'ファイル添付';
|
||||
$lang->edit->upload_list = '添付リスト';
|
||||
$lang->edit->link_file = 'テキスト挿入';
|
||||
$lang->edit->delete_selected = '選択リスト削除';
|
||||
|
||||
$lang->edit->icon_align_article = '一段落';
|
||||
$lang->edit->icon_align_left = '左揃え';
|
||||
$lang->edit->icon_align_middle = '中央揃え';
|
||||
$lang->edit->icon_align_right = '右揃え';
|
||||
|
||||
$lang->about_dblclick_in_editor = '背景、文字、イメージ、引用文の上にカーソルを合わせ、ダブルクリックすると詳細設定出来るコンポーネントを表示します。';
|
||||
|
||||
$lang->edit->rich_editor = 'ウイジウイグ編集';
|
||||
$lang->edit->html_editor = 'HTMLタグ編集';
|
||||
$lang->edit->extension ='拡張コンポーネント';
|
||||
$lang->edit->help = 'ヘルプ';
|
||||
$lang->edit->help_command = 'ショートカット‐キーの説明';
|
||||
|
||||
$lang->edit->lineheight = '行間';
|
||||
$lang->edit->fontbgsampletext = 'あいうえお';
|
||||
|
||||
$lang->edit->hyperlink = 'ハイパーリンク';
|
||||
$lang->edit->target_blank = '別のウィンドウズで';
|
||||
|
||||
$lang->edit->quotestyle1 = '左側実線';
|
||||
$lang->edit->quotestyle2 = '引用記号';
|
||||
$lang->edit->quotestyle3 = '実線';
|
||||
$lang->edit->quotestyle4 = '実線 + 背景';
|
||||
$lang->edit->quotestyle5 = '太い実線';
|
||||
$lang->edit->quotestyle6 = '点線';
|
||||
$lang->edit->quotestyle7 = '点線 + 背景';
|
||||
$lang->edit->quotestyle8 = '適用取り消し';
|
||||
|
||||
|
||||
$lang->edit->jumptoedit = '編集ツール省略';
|
||||
$lang->edit->set_sel = 'マス数の指定';
|
||||
$lang->edit->row = '行';
|
||||
$lang->edit->col = '列';
|
||||
$lang->edit->add_one_row = '1行追加';
|
||||
$lang->edit->del_one_row = '1行削除';
|
||||
$lang->edit->add_one_col = '1列追加';
|
||||
$lang->edit->del_one_col = '1列削除';
|
||||
|
||||
$lang->edit->table_config = 'テーブル属性の設定';
|
||||
$lang->edit->border_width = '外枠太さ';
|
||||
$lang->edit->border_color = '外枠色';
|
||||
$lang->edit->add = '挿入';
|
||||
$lang->edit->del = '削除';
|
||||
$lang->edit->search_color = 'その他の色';
|
||||
$lang->edit->table_backgroundcolor = '表の背景色';
|
||||
$lang->edit->special_character = '特殊文字';
|
||||
$lang->edit->insert_special_character = '特殊文字挿入';
|
||||
$lang->edit->close_special_character = '特殊文字レイヤーを閉じる';
|
||||
$lang->edit->symbol = '一般記号';
|
||||
$lang->edit->number_unit = '数字と単位';
|
||||
$lang->edit->circle_bracket = '円、括弧';
|
||||
$lang->edit->korean = '韓国語';
|
||||
$lang->edit->greece = 'ギリシャ語';
|
||||
$lang->edit->Latin = 'ラテン語';
|
||||
$lang->edit->japan = '日本語';
|
||||
$lang->edit->selected_symbol = '選択した記号';
|
||||
|
||||
$lang->edit->search_replace = '検索/置換';
|
||||
$lang->edit->close_search_replace = '検索/置換レイヤーを閉じる';
|
||||
$lang->edit->replace_all = 'すべて置換';
|
||||
$lang->edit->search_words = '検索テキスト';
|
||||
$lang->edit->replace_words = '置換テキスト';
|
||||
$lang->edit->next_search_words = '次を検索';
|
||||
$lang->edit->edit_height_control = '入力サイズ調整';
|
||||
|
||||
$lang->edit->merge_cells = 'セルの結合';
|
||||
$lang->edit->split_row = '行の挿入';
|
||||
$lang->edit->split_col = '列の挿入';
|
||||
|
||||
$lang->edit->toggle_list = 'リストを折りたたむ/展開する';
|
||||
$lang->edit->minimize_list = '最小化';
|
||||
|
||||
$lang->edit->move = '移動';
|
||||
$lang->edit->refresh = '再読み込み';
|
||||
$lang->edit->materials = '資料箱';
|
||||
$lang->edit->temporary_savings = '下書きリスト';
|
||||
|
||||
$lang->edit->paging_prev = '前へ';
|
||||
$lang->edit->paging_next = '次へ';
|
||||
$lang->edit->paging_prev_help = '前のページへ移動します。';
|
||||
$lang->edit->paging_next_help = '次のページへ移動します。';
|
||||
|
||||
$lang->edit->toc = 'リスト';
|
||||
$lang->edit->close_help = 'ヘルプを閉じる';
|
||||
|
||||
$lang->edit->confirm_submit_without_saving = 'まだ保存してない内容があります。\\nそのまま転送して宜しいでしょうか?';
|
||||
|
||||
$lang->edit->image_align = 'イメージの配置';
|
||||
$lang->edit->attached_files = '添付ファイル';
|
||||
|
||||
$lang->edit->fontcolor_input = 'テキスト色直接入力';
|
||||
$lang->edit->fontbgcolor_input = 'テキスト背景色直接入力';
|
||||
$lang->edit->pangram = '무궁화 꽃이 피었습니다';
|
||||
|
||||
$lang->edit->table_caption_position = 'キャプションの配置';
|
||||
$lang->edit->table_caption = '表のキャプション';
|
||||
$lang->edit->table_header = '머리글 셀(th)';
|
||||
$lang->edit->table_header_none = 'なし';
|
||||
$lang->edit->table_header_left = '左';
|
||||
$lang->edit->table_header_top = '上';
|
||||
$lang->edit->table_header_both = '両方';
|
||||
$lang->edit->table_size = '表の大きさ';
|
||||
$lang->edit->table_width = '表幅';
|
||||
|
||||
$lang->edit->upper_left = '上端左';
|
||||
$lang->edit->upper_center = '上端中央';
|
||||
$lang->edit->upper_right = '上端右';
|
||||
$lang->edit->bottom_left = '下端左';
|
||||
$lang->edit->bottom_center = '下端中央';
|
||||
$lang->edit->bottom_right = '下端右';
|
||||
|
||||
$lang->edit->no_image = '添付されたイメージがありません。';
|
||||
$lang->edit->no_multimedia = '添付された動画がありません。';
|
||||
$lang->edit->no_attachment = '添付されたファイルがありません。';
|
||||
$lang->edit->insert_selected = '選択挿入';
|
||||
$lang->edit->delete_selected = '選択削除';
|
||||
|
||||
$lang->edit->fieldset = 'テキストボックス';
|
||||
$lang->edit->paragraph = '段落';
|
||||
|
||||
$lang->edit->autosave_format = '글을 쓰기 시작한지 <strong>%s</strong>이 지났습니다. 마지막 저장 시간은 <strong>%s</strong> 입니다.';
|
||||
$lang->edit->autosave_hour = '%d시간';
|
||||
$lang->edit->autosave_hours = '%d시간';
|
||||
$lang->edit->autosave_min = '%d분';
|
||||
$lang->edit->autosave_mins = '%d분';
|
||||
$lang->edit->autosave_hour_ago = '%d시간 전';
|
||||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
$lang->edit->break_or_paragraph = 'Enter는 줄바꿈, Shift+Enter는 문단바꿈입니다.';
|
||||
?>
|
||||
|
|
@ -1,281 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/editor/lang/ko.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief 위지윅에디터(editor) 모듈의 기본 언어팩
|
||||
**/
|
||||
|
||||
$lang->editor = '위지윅 에디터';
|
||||
$lang->component_name = '컴포넌트';
|
||||
$lang->component_version = '버전';
|
||||
$lang->component_author = '제작자 ';
|
||||
$lang->component_link = '링크';
|
||||
$lang->component_date = '제작일';
|
||||
$lang->component_license = '라이선스';
|
||||
$lang->component_history = '변경 이력';
|
||||
$lang->component_description = '설명';
|
||||
$lang->component_extra_vars = '설정 변수';
|
||||
$lang->component_grant = '권한설정';
|
||||
$lang->content_style = '문서 서식';
|
||||
$lang->content_font = '문서 폰트';
|
||||
$lang->content_font_size = '문서 폰트 크기';
|
||||
|
||||
$lang->about_component = '컴포넌트 소개';
|
||||
$lang->about_component_grant = '기본 컴포넌트외의 확장 컴포넌트 기능을 사용할 수 있는 권한을 지정할 수 있습니다.<br /> (모두 해제 시 아무나 사용 가능합니다)';
|
||||
$lang->about_component_mid = '에디터 컴포넌트가 사용될 대상을 지정할 수 있습니다.<br />(모두 해제 시 모든 대상에서 사용 가능합니다)';
|
||||
|
||||
$lang->msg_component_is_not_founded = '%s 에디터 컴포넌트를 찾을 수 없습니다.';
|
||||
$lang->msg_component_is_inserted = '선택하신 컴포넌트는 이미 입력되어 있습니다.';
|
||||
$lang->msg_component_is_first_order = '선택하신 컴포넌트는 첫 번째에 위치하고 있습니다.';
|
||||
$lang->msg_component_is_last_order = '선택하신 컴포넌트는 마지막에 위치하고 있습니다.';
|
||||
$lang->msg_load_saved_doc = "자동 저장된 글이 있습니다. 복구하시겠습니까?\n글을 다 쓰신 후 저장하시면 자동 저장 본은 사라집니다.";
|
||||
$lang->msg_auto_saved = '자동 저장되었습니다.';
|
||||
|
||||
$lang->cmd_disable = '비활성';
|
||||
$lang->cmd_enable = '활성';
|
||||
|
||||
$lang->editor_skin = '에디터 스킨';
|
||||
$lang->upload_file_grant = '파일 첨부 권한';
|
||||
$lang->enable_default_component_grant = '기본 컴포넌트 사용 권한';
|
||||
$lang->enable_component_grant = '컴포넌트 사용 권한';
|
||||
$lang->enable_html_grant = 'HTML편집 권한';
|
||||
$lang->enable_autosave = '자동저장 사용';
|
||||
$lang->height_resizable = '높이 조절 가능';
|
||||
$lang->editor_height = '에디터 높이';
|
||||
|
||||
$lang->about_editor_skin = '에디터 스킨을 선택하실 수 있습니다';
|
||||
$lang->about_content_style = '문서 편집 및 내용 출력 시 원하는 서식을 지정할 수 있습니다';
|
||||
$lang->about_content_font = '문서 편집 및 내용 출력 시 원하는 폰트를 지정할 수 있습니다.<br/>지정하지 않으면 사용자 설정에 따르게 됩니다<br/> ,(콤마)로 여러 폰트를 지정할 수 있습니다.';
|
||||
$lang->about_content_font_size = '문서 편집 및 내용 출력 시 원하는 폰트의 크기를 지정할 수 있습니다.<br/>12px, 1em등 단위까지 포함해서 입력해주세요.';
|
||||
$lang->about_upload_file_grant = '파일을 첨부할 수 있는 권한을 지정하실 수 있습니다. (모두 해제 시 아무나 첨부 가능합니다)';
|
||||
$lang->about_default_component_grant = '에디터에서 사용되는 기본 컴포넌트를 사용할 수 있는 권한을 지정할 수 있습니다. (모두 해제 시 아무나 사용 가능합니다)';
|
||||
$lang->about_editor_height = '에디터의 기본 높이를 지정하실 수 있습니다.';
|
||||
$lang->about_editor_height_resizable = '에디터의 높이를 직접 변경할 수 있도록 허용합니다.';
|
||||
$lang->about_enable_html_grant = 'HTML편집 권한을 부여할 수 있습니다.';
|
||||
$lang->about_enable_autosave = '글 작성 시 자동 저장 기능을 활성화 시킬 수 있습니다.';
|
||||
|
||||
$lang->edit->fontname = '글꼴';
|
||||
$lang->edit->fontsize = '크기';
|
||||
$lang->edit->use_paragraph = '문단기능';
|
||||
$lang->edit->fontlist = array(
|
||||
'Dotum' => '돋움',
|
||||
'Gulim' => '굴림',
|
||||
'Batang' => '바탕',
|
||||
'Arial' => 'Arial',
|
||||
'Arial Black' => 'Arial Black',
|
||||
'Tahoma' => 'Tahoma',
|
||||
'Verdana' => 'Verdana',
|
||||
'Sans-serif' => 'Sans-serif',
|
||||
'Serif' => 'Serif',
|
||||
'Monospace' => 'Monospace',
|
||||
'Cursive' => 'Cursive',
|
||||
'Fantasy' => 'Fantasy',
|
||||
);
|
||||
|
||||
$lang->edit->header = '형식';
|
||||
$lang->edit->header_list = array(
|
||||
'h1' => '제목 1',
|
||||
'h2' => '제목 2',
|
||||
'h3' => '제목 3',
|
||||
'h4' => '제목 4',
|
||||
'h5' => '제목 5',
|
||||
'h6' => '제목 6',
|
||||
);
|
||||
|
||||
$lang->edit->submit = '확인';
|
||||
|
||||
$lang->edit->fontcolor = '글자 색';
|
||||
$lang->edit->fontcolor_apply = '글자 색 적용';
|
||||
$lang->edit->fontcolor_more = '글자 색 더보기';
|
||||
$lang->edit->fontbgcolor = '글자 배경색';
|
||||
$lang->edit->fontbgcolor_apply = '글자 배경색 적용';
|
||||
$lang->edit->fontbgcolor_more = '글자 배경색 더보기';
|
||||
$lang->edit->bold = '진하게';
|
||||
$lang->edit->italic = '기울임';
|
||||
$lang->edit->underline = '밑줄';
|
||||
$lang->edit->strike = '취소선';
|
||||
$lang->edit->sup = '위 첨자';
|
||||
$lang->edit->sub = '아래 첨자';
|
||||
$lang->edit->redo = '다시 실행';
|
||||
$lang->edit->undo = '되돌리기';
|
||||
$lang->edit->align_left = '왼쪽 정렬';
|
||||
$lang->edit->align_center = '가운데 정렬';
|
||||
$lang->edit->align_right = '오른쪽 정렬';
|
||||
$lang->edit->align_justify = '양쪽 정렬';
|
||||
$lang->edit->add_indent = '들여쓰기';
|
||||
$lang->edit->remove_indent = '내어쓰기';
|
||||
$lang->edit->list_number = '번호 매기기';
|
||||
$lang->edit->list_bullet = '목록';
|
||||
$lang->edit->remove_format = '글맵시 지우기';
|
||||
|
||||
$lang->edit->help_remove_format = '선택된 영역 내의 태그를 지웁니다.';
|
||||
$lang->edit->help_strike_through = '글자에 취소선을 표시합니다.';
|
||||
$lang->edit->help_align_full = '좌우 폭에 맞게 정렬을 합니다.';
|
||||
|
||||
$lang->edit->help_fontcolor = '글자의 색상을 지정합니다.';
|
||||
$lang->edit->help_fontbgcolor = '글자의 배경색상을 지정합니다.';
|
||||
$lang->edit->help_bold = '글자를 진하게 합니다.';
|
||||
$lang->edit->help_italic = '글자를 기울이게 합니다.';
|
||||
$lang->edit->help_underline = '밑줄을 긋습니다.';
|
||||
$lang->edit->help_strike = '취소선을 긋습니다.';
|
||||
$lang->edit->help_sup = '위 첨자를 입력합니다.';
|
||||
$lang->edit->help_sub = '아래 첨자를 입력합니다.';
|
||||
$lang->edit->help_redo = '다음 동작으로 돌아갑니다.';
|
||||
$lang->edit->help_undo = '이전 동작으로 돌아갑니다.';
|
||||
$lang->edit->help_align_left = '왼쪽 정렬을 합니다.';
|
||||
$lang->edit->help_align_center = '가운데 정렬을 합니다.';
|
||||
$lang->edit->help_align_right = '오른쪽 정렬을 합니다.';
|
||||
$lang->edit->help_align_justify = '양쪽 정렬을 합니다.';
|
||||
$lang->edit->help_add_indent = '단락의 들여쓰기 수준을 높입니다.';
|
||||
$lang->edit->help_remove_indent = '단락의 들여쓰기 수준을 낮춥니다.';
|
||||
$lang->edit->help_list_number = '숫자로된 목록을 적용합니다.';
|
||||
$lang->edit->help_list_bullet = '기호로된 목록을 적용합니다.';
|
||||
$lang->edit->help_use_paragraph = '문단 나누기를 하시려면 Ctrl+Enter를 누르시면 됩니다. (글 작성완료 후 Alt+S를 누르면 저장이 됩니다.)';
|
||||
|
||||
$lang->edit->url = '링크';
|
||||
$lang->edit->blockquote = '인용문';
|
||||
$lang->edit->table = '표';
|
||||
$lang->edit->image = '그림';
|
||||
$lang->edit->multimedia = '동영상';
|
||||
$lang->edit->emoticon = '이모티콘';
|
||||
|
||||
$lang->edit->file = '파일';
|
||||
$lang->edit->upload = '첨부';
|
||||
$lang->edit->upload_file = '파일 첨부';
|
||||
$lang->edit->upload_list = '첨부 목록';
|
||||
$lang->edit->link_file = '본문 삽입';
|
||||
$lang->edit->delete_selected = '선택 삭제';
|
||||
|
||||
$lang->edit->icon_align_article = '한 문단을 차지';
|
||||
$lang->edit->icon_align_left = '글의 왼쪽으로';
|
||||
$lang->edit->icon_align_middle = '가운데 정렬';
|
||||
$lang->edit->icon_align_right = '글의 우측으로';
|
||||
|
||||
$lang->about_dblclick_in_editor = '배경, 글자, 이미지, 인용문등에서 더블클릭을 하시면 상세한 컴포넌트 설정이 가능합니다.';
|
||||
|
||||
$lang->edit->rich_editor = '스타일 편집기';
|
||||
$lang->edit->html_editor = 'HTML 편집기';
|
||||
$lang->edit->extension ='확장 컴포넌트';
|
||||
$lang->edit->help = '도움말';
|
||||
$lang->edit->help_command = '단축키 안내';
|
||||
|
||||
$lang->edit->lineheight = '줄 간격';
|
||||
$lang->edit->fontbgsampletext = '가나다';
|
||||
|
||||
$lang->edit->hyperlink = '하이퍼링크';
|
||||
$lang->edit->target_blank = '새 창으로';
|
||||
|
||||
$lang->edit->quotestyle1 = '왼쪽 실선';
|
||||
$lang->edit->quotestyle2 = '인용 부호';
|
||||
$lang->edit->quotestyle3 = '실선';
|
||||
$lang->edit->quotestyle4 = '실선 + 배경';
|
||||
$lang->edit->quotestyle5 = '굵은 실선';
|
||||
$lang->edit->quotestyle6 = '점선';
|
||||
$lang->edit->quotestyle7 = '점선 + 배경';
|
||||
$lang->edit->quotestyle8 = '적용 취소';
|
||||
|
||||
|
||||
$lang->edit->jumptoedit = '편집 도구모음 건너뛰기';
|
||||
$lang->edit->set_sel = '칸 수 지정';
|
||||
$lang->edit->row = '행';
|
||||
$lang->edit->col = '열';
|
||||
$lang->edit->add_one_row = '1행 추가';
|
||||
$lang->edit->del_one_row = '1행 삭제';
|
||||
$lang->edit->add_one_col = '1열 추가';
|
||||
$lang->edit->del_one_col = '1열 삭제';
|
||||
|
||||
$lang->edit->table_config = '표 속성 지정';
|
||||
$lang->edit->border_width = '테두리 굵기';
|
||||
$lang->edit->border_color = '테두리 색';
|
||||
$lang->edit->add = '더하기';
|
||||
$lang->edit->del = '빼기';
|
||||
$lang->edit->search_color = '색상 찾기';
|
||||
$lang->edit->table_backgroundcolor = '표 배경색';
|
||||
$lang->edit->special_character = '특수문자';
|
||||
$lang->edit->insert_special_character = '특수문자 삽입';
|
||||
$lang->edit->close_special_character = '특수문자 레이어 닫기';
|
||||
$lang->edit->symbol = '일반기호';
|
||||
$lang->edit->number_unit = '숫자와 단위';
|
||||
$lang->edit->circle_bracket = '원, 괄호';
|
||||
$lang->edit->korean = '한글';
|
||||
$lang->edit->greece = '그리스';
|
||||
$lang->edit->Latin = '라틴어';
|
||||
$lang->edit->japan = '일본어';
|
||||
$lang->edit->selected_symbol = '선택한 기호';
|
||||
|
||||
$lang->edit->search_replace = '찾기/바꾸기';
|
||||
$lang->edit->close_search_replace = '찾기/바꾸기 레이어 닫기';
|
||||
$lang->edit->replace_all = '모두 바꾸기';
|
||||
$lang->edit->search_words = '찾을 단어';
|
||||
$lang->edit->replace_words = '바꿀 단어';
|
||||
$lang->edit->next_search_words = '다음 찾기';
|
||||
$lang->edit->edit_height_control = '입력창 크기 조절';
|
||||
|
||||
$lang->edit->merge_cells = '셀 병합';
|
||||
$lang->edit->split_row = '행 분할';
|
||||
$lang->edit->split_col = '열 분할';
|
||||
|
||||
$lang->edit->toggle_list = '목록 접기/펼치기';
|
||||
$lang->edit->minimize_list = '최소화';
|
||||
|
||||
$lang->edit->move = '이동';
|
||||
$lang->edit->refresh = '새로 고침';
|
||||
$lang->edit->materials = '글감 보관함';
|
||||
$lang->edit->temporary_savings = '임시 저장 목록';
|
||||
|
||||
$lang->edit->paging_prev = '이전';
|
||||
$lang->edit->paging_next = '다음';
|
||||
$lang->edit->paging_prev_help = '이전 페이지로 이동합니다.';
|
||||
$lang->edit->paging_next_help = '다음 페이지로 이동합니다.';
|
||||
|
||||
$lang->edit->toc = '목차';
|
||||
$lang->edit->close_help = '도움말 닫기';
|
||||
|
||||
$lang->edit->confirm_submit_without_saving = '저장하지 않은 단락이 있습니다.\\n그냥 전송하시겠습니까?';
|
||||
|
||||
$lang->edit->image_align = '이미지 정렬';
|
||||
$lang->edit->attached_files = '첨부 파일';
|
||||
|
||||
$lang->edit->fontcolor_input = '글자 색 직접입력';
|
||||
$lang->edit->fontbgcolor_input = '글자 배경색 직접입력';
|
||||
$lang->edit->pangram = '무궁화 꽃이 피었습니다.';
|
||||
|
||||
$lang->edit->table_caption_position = '표 제목(caption) 및 배치';
|
||||
$lang->edit->table_caption = '표 제목(caption)';
|
||||
$lang->edit->table_header = '머릿글 칸(th)';
|
||||
$lang->edit->table_header_none = '없음';
|
||||
$lang->edit->table_header_left = '왼쪽';
|
||||
$lang->edit->table_header_top = '위쪽';
|
||||
$lang->edit->table_header_both = '모두';
|
||||
$lang->edit->table_size = '표 크기';
|
||||
$lang->edit->table_width = '표 너비';
|
||||
|
||||
$lang->edit->upper_left = '상단좌측';
|
||||
$lang->edit->upper_center = '상단중앙';
|
||||
$lang->edit->upper_right = '상단우측';
|
||||
$lang->edit->bottom_left = '하단좌측';
|
||||
$lang->edit->bottom_center = '하단중앙';
|
||||
$lang->edit->bottom_right = '하단우측';
|
||||
|
||||
$lang->edit->no_image = '첨부된 이미지가 없습니다.';
|
||||
$lang->edit->no_multimedia = '첨부된 동영상이 없습니다.';
|
||||
$lang->edit->no_attachment = '첨부된 파일이 없습니다.';
|
||||
$lang->edit->insert_selected = '선택 넣기';
|
||||
$lang->edit->delete_selected = '선택 삭제';
|
||||
|
||||
$lang->edit->fieldset = '글상자';
|
||||
$lang->edit->paragraph = '문단';
|
||||
|
||||
$lang->edit->autosave_format = '글을 쓰기 시작한지 <strong>%s</strong>이 지났습니다. 마지막 저장 시간은 <strong>%s</strong> 입니다.';
|
||||
$lang->edit->autosave_hour = '%d시간';
|
||||
$lang->edit->autosave_hours = '%d시간';
|
||||
$lang->edit->autosave_min = '%d분';
|
||||
$lang->edit->autosave_mins = '%d분';
|
||||
$lang->edit->autosave_hour_ago = '%d시간 전';
|
||||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
$lang->edit->break_or_paragraph = 'Enter는 줄바꿈, Shift+Enter는 문단바꿈입니다.';
|
||||
?>
|
||||
2109
modules/editor/lang/lang.xml
Normal file
2109
modules/editor/lang/lang.xml
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -1,281 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file ru.lang.php
|
||||
* @author NHN (developers@xpressengine.com) | translation by Maslennikov Evgeny aka X-[Vr]bL1s5 | e-mail: x-bliss[a]tut.by; ICQ: 225035467;
|
||||
* @brief Russian basic language pack
|
||||
**/
|
||||
|
||||
$lang->editor = 'WYSIWYG-Редактор';
|
||||
$lang->component_name = 'Компонент';
|
||||
$lang->component_version = 'Версия';
|
||||
$lang->component_author = 'Разработчик';
|
||||
$lang->component_link = 'Ссылка';
|
||||
$lang->component_date = 'Дата';
|
||||
$lang->component_license = 'License';
|
||||
$lang->component_history = 'History';
|
||||
$lang->component_description = 'Описание';
|
||||
$lang->component_extra_vars = 'Экстра перем.';
|
||||
$lang->component_grant = 'Настройки прав доступа';
|
||||
$lang->content_style = 'Content Style';
|
||||
$lang->content_font = 'Content Font';
|
||||
$lang->content_font_size = 'Размер шрифта';
|
||||
|
||||
$lang->about_component = 'О компоненте';
|
||||
$lang->about_component_grant = 'Возможен выбор дополнительных компонентов.<br /> (Каждый может использовать его, если режим выключен)';
|
||||
$lang->about_component_mid = 'Можно установить пользователя Редактора.<br />(Каждый может использовать его, если режим выключен)';
|
||||
|
||||
$lang->msg_component_is_not_founded = 'Невозможно найти компонент редактора %s';
|
||||
$lang->msg_component_is_inserted = 'Выбранный компонент уже присутствует';
|
||||
$lang->msg_component_is_first_order = 'Выбранный компонент находится на первой позиции';
|
||||
$lang->msg_component_is_last_order = 'Выбранный компонент находится на последней позиции';
|
||||
$lang->msg_load_saved_doc = "Существует автоматически сохраненная статья. Хотите ли Вы ее восстановить?\nАвтоматически сохраненный черновик будет отменен после сохранения текущей статьи";
|
||||
$lang->msg_auto_saved = 'Автоматически сохранено';
|
||||
|
||||
$lang->cmd_disable = 'Неактивно';
|
||||
$lang->cmd_enable = 'Активно';
|
||||
|
||||
$lang->editor_skin = 'Скин Редактора';
|
||||
$lang->upload_file_grant = 'Разрешить прикреплять файлы';
|
||||
$lang->enable_default_component_grant = 'Разрешить использование основного компонента';
|
||||
$lang->enable_component_grant = 'Разрешить ипользование компонента';
|
||||
$lang->enable_html_grant = 'Разрешить коррекцию HTML';
|
||||
$lang->enable_autosave = 'Автосохранение';
|
||||
$lang->height_resizable = 'Возможна коррекция высоты';
|
||||
$lang->editor_height = 'Высота Редактора';
|
||||
|
||||
$lang->about_editor_skin = 'Выберите скин редактора';
|
||||
$lang->about_content_style = 'Вы можете выбрать стиль для редактирования и просмотра записи ';
|
||||
$lang->about_content_font = 'Вы можете выбрать шрифт для редактирования и просмотра записи.<br/> Используйте запятую(,) если выбрали несколько шрифтов.';
|
||||
$lang->about_content_font_size = 'Вы можете выбрать размер шрифта для редактирования и просмотра записи.<br/> Пожалуйста, выберите единицы такие как px или em.';
|
||||
$lang->about_upload_file_grant = 'Вы можете разрешить прикреплять файлы выбранным группам. (Если оставить поле пустым то право прикреплять файлы будут иметь все)';
|
||||
$lang->about_default_component_grant = 'Selected group(s) will be able to use default components of editor. (Leave them blank if you want all groups to have permission)';
|
||||
$lang->about_editor_height = 'You may set the height of editor.';
|
||||
$lang->about_editor_height_resizable = 'You may decide whether height of editor can be resized.';
|
||||
$lang->about_enable_html_grant = 'Selected group(s) will be able to use HTML';
|
||||
$lang->about_enable_autosave = 'You may decide whether auto-save function will be used.';
|
||||
|
||||
$lang->edit->fontname = 'Шрифт';
|
||||
$lang->edit->fontsize = 'Размер';
|
||||
$lang->edit->use_paragraph = 'Функции параграфа';
|
||||
$lang->edit->fontlist = array(
|
||||
'Arial'=>'Arial',
|
||||
'Arial Black'=>'Arial Black',
|
||||
'Tahoma'=>'Tahoma',
|
||||
'Verdana'=>'Verdana',
|
||||
'Sans-serif'=>'Sans-serif',
|
||||
'Serif'=>'Serif',
|
||||
'Monospace'=>'Monospace',
|
||||
'Cursive'=>'Cursive',
|
||||
'Fantasy'=>'Fantasy',
|
||||
);
|
||||
|
||||
|
||||
|
||||
|
||||
$lang->edit->header = 'Стиль';
|
||||
$lang->edit->header_list = array(
|
||||
'h1' => 'Заголовок 1',
|
||||
'h2' => 'Заголовок 2',
|
||||
'h3' => 'Заголовок 3',
|
||||
'h4' => 'Заголовок 4',
|
||||
'h5' => 'Заголовок 5',
|
||||
'h6' => 'Заголовок 6',
|
||||
);
|
||||
|
||||
$lang->edit->submit = 'Принять';
|
||||
|
||||
$lang->edit->fontcolor = 'Цвет текста';
|
||||
$lang->edit->fontcolor_apply = '글자 색 적용';
|
||||
$lang->edit->fontcolor_more = '글자 색 더보기';
|
||||
$lang->edit->fontbgcolor = 'Цвет Фона';
|
||||
$lang->edit->fontbgcolor_apply = '글자 배경색 적용';
|
||||
$lang->edit->fontbgcolor_more = '글자 배경색 더보기';
|
||||
$lang->edit->bold = 'Bold';
|
||||
$lang->edit->italic = 'Italic';
|
||||
$lang->edit->underline = 'Underline';
|
||||
$lang->edit->strike = 'Strike';
|
||||
$lang->edit->sup = 'Sup';
|
||||
$lang->edit->sub = 'Sub';
|
||||
$lang->edit->redo = 'Re Do';
|
||||
$lang->edit->undo = 'Un Do';
|
||||
$lang->edit->align_left = 'Align Left';
|
||||
$lang->edit->align_center = 'Align Center';
|
||||
$lang->edit->align_right = 'Align Right';
|
||||
$lang->edit->align_justify = 'Align Justify';
|
||||
$lang->edit->add_indent = 'Indent';
|
||||
$lang->edit->remove_indent = 'Outdent';
|
||||
$lang->edit->list_number = 'Orderd List';
|
||||
$lang->edit->list_bullet = 'Unordered List';
|
||||
$lang->edit->remove_format = 'Удалить стиль';
|
||||
|
||||
$lang->edit->help_remove_format = 'Выделенный объект будет удален';
|
||||
$lang->edit->help_strike_through = 'Strike will be on the words';
|
||||
$lang->edit->help_align_full = 'Выровнять (вправо/влево)';
|
||||
|
||||
$lang->edit->help_fontcolor = 'Выбрать цвет шрифта';
|
||||
$lang->edit->help_fontbgcolor = 'Выбрать цвет фона шрифта';
|
||||
$lang->edit->help_bold = 'Сделать шрифт жирным';
|
||||
$lang->edit->help_italic = 'Сделать шрифт наклонным';
|
||||
$lang->edit->help_underline = 'Сделать шрифт подчеркнутым';
|
||||
$lang->edit->help_strike = 'Сделать шрифт зачеркнутым';
|
||||
$lang->edit->help_sup = 'Sup';
|
||||
$lang->edit->help_sub = 'Sub';
|
||||
$lang->edit->help_redo = 'Восстановить отмененное';
|
||||
$lang->edit->help_undo = 'Отмена';
|
||||
$lang->edit->help_align_left = 'Выровнять по левому краю';
|
||||
$lang->edit->help_align_center = 'Выровнять по центру';
|
||||
$lang->edit->help_align_right = 'Выровнять по правому краю';
|
||||
$lang->edit->help_align_justify = 'Align justity';
|
||||
$lang->edit->help_add_indent = 'Добавить отступ';
|
||||
$lang->edit->help_remove_indent = 'Удалить отступ';
|
||||
$lang->edit->help_list_number = 'Применить числовой список';
|
||||
$lang->edit->help_list_bullet = 'Применить маркированный список';
|
||||
$lang->edit->help_use_paragraph = 'Нажмите Ctrl+Enter, чтобы отметить параграф. (Нажмите Alt+S , чтобы сохранить)';
|
||||
|
||||
$lang->edit->url = 'URL';
|
||||
$lang->edit->blockquote = 'Blockquote';
|
||||
$lang->edit->table = 'Table';
|
||||
$lang->edit->image = 'Image';
|
||||
$lang->edit->multimedia = 'Movie';
|
||||
$lang->edit->emoticon = 'Emoticon';
|
||||
|
||||
$lang->edit->file = '파일';
|
||||
$lang->edit->upload = 'Вложение';
|
||||
$lang->edit->upload_file = 'Прикрепить файл';
|
||||
$lang->edit->upload_list = '첨부 목록';
|
||||
$lang->edit->link_file = 'Вставить в содержание';
|
||||
$lang->edit->delete_selected = 'Удалить выбранное';
|
||||
|
||||
$lang->edit->icon_align_article = 'Занять весь параграф';
|
||||
$lang->edit->icon_align_left = 'Выровнять по левому краю';
|
||||
$lang->edit->icon_align_middle = 'Выровнять по центру';
|
||||
$lang->edit->icon_align_right = 'Выровнять по правому краю';
|
||||
|
||||
$lang->about_dblclick_in_editor = 'Вы можете установить детальную конфигурацию компонента двойным щелчком по фону, тексту, рисункам или цитатам';
|
||||
|
||||
$lang->edit->rich_editor = 'редактировать стиль';
|
||||
$lang->edit->html_editor = 'редактировать HTML';
|
||||
$lang->edit->extension ='Расширенный компонент';
|
||||
$lang->edit->help = 'Помощь';
|
||||
$lang->edit->help_command = 'Горячие клавиши';
|
||||
|
||||
$lang->edit->lineheight = 'Высота строки';
|
||||
$lang->edit->fontbgsampletext = 'АВС';
|
||||
|
||||
$lang->edit->hyperlink = 'гиперссылка';
|
||||
$lang->edit->target_blank = 'Новое окно';
|
||||
|
||||
$lang->edit->quotestyle1 = 'Left Solid';
|
||||
$lang->edit->quotestyle2 = 'Quote';
|
||||
$lang->edit->quotestyle3 = 'Solid';
|
||||
$lang->edit->quotestyle4 = 'Solid + Background';
|
||||
$lang->edit->quotestyle5 = 'Bold Solid';
|
||||
$lang->edit->quotestyle6 = 'Dotted';
|
||||
$lang->edit->quotestyle7 = 'Dotted + Background';
|
||||
$lang->edit->quotestyle8 = 'Отменить';
|
||||
|
||||
|
||||
$lang->edit->jumptoedit = 'Пропустить Инструменты редактирования';
|
||||
$lang->edit->set_sel = 'Установить количество ячеек';
|
||||
$lang->edit->row = 'Строка';
|
||||
$lang->edit->col = 'Колонка';
|
||||
$lang->edit->add_one_row = 'Добавить 1 строку';
|
||||
$lang->edit->del_one_row = 'Удалить 1 строку';
|
||||
$lang->edit->add_one_col = 'Добавить 1 колонку';
|
||||
$lang->edit->del_one_col = 'Удалить 1 колонку';
|
||||
|
||||
$lang->edit->table_config = 'Конфигурация таблицы';
|
||||
$lang->edit->border_width = 'Ширина рамки';
|
||||
$lang->edit->border_color = 'Цвет рамки';
|
||||
$lang->edit->add = 'Добавить';
|
||||
$lang->edit->del = 'Удалить';
|
||||
$lang->edit->search_color = 'Подобрать цвет';
|
||||
$lang->edit->table_backgroundcolor = 'Цвет фона таблицы';
|
||||
$lang->edit->special_character = 'Специальные символы';
|
||||
$lang->edit->insert_special_character = 'Добавить специальные символы';
|
||||
$lang->edit->close_special_character = 'Закрыть слой специальных символов';
|
||||
$lang->edit->symbol = 'Символы';
|
||||
$lang->edit->number_unit = 'Числа и единицы измерения';
|
||||
$lang->edit->circle_bracket = 'Круг, скобки';
|
||||
$lang->edit->korean = 'Корейский';
|
||||
$lang->edit->greece = 'Греческий';
|
||||
$lang->edit->Latin = 'Латинский';
|
||||
$lang->edit->japan = 'Японский';
|
||||
$lang->edit->selected_symbol = 'Выбранные символы';
|
||||
|
||||
$lang->edit->search_replace = 'Найти/Переместить';
|
||||
$lang->edit->close_search_replace = 'Закрыть слой "Найти/Переместить"';
|
||||
$lang->edit->replace_all = 'Переместить все';
|
||||
$lang->edit->search_words = 'Искомое слово';
|
||||
$lang->edit->replace_words = 'Слово для замены';
|
||||
$lang->edit->next_search_words = 'Искать дальше';
|
||||
$lang->edit->edit_height_control = 'Изменить размеры окна ввода';
|
||||
|
||||
$lang->edit->merge_cells = 'Объединить ячейки';
|
||||
$lang->edit->split_row = 'Разбить строки';
|
||||
$lang->edit->split_col = 'Разбить колонки';
|
||||
|
||||
$lang->edit->toggle_list = 'Свернуть/Развернуть список';
|
||||
$lang->edit->minimize_list = 'Уменьшить';
|
||||
|
||||
$lang->edit->move = 'Перейти';
|
||||
$lang->edit->refresh = 'Обновить';
|
||||
$lang->edit->materials = 'Материалы';
|
||||
$lang->edit->temporary_savings = 'Список временных сохранений';
|
||||
|
||||
$lang->edit->paging_prev = 'Предыдущий';
|
||||
$lang->edit->paging_next = 'Следующий';
|
||||
$lang->edit->paging_prev_help = 'Перейти к предыдущей странице';
|
||||
$lang->edit->paging_next_help = 'Перейти кследующей странице';
|
||||
|
||||
$lang->edit->toc = 'Оглавление';
|
||||
$lang->edit->close_help = 'Закрыть помощь';
|
||||
|
||||
$lang->edit->confirm_submit_without_saving = 'Есть несохраненные параграфы\\nПродолжить?';
|
||||
|
||||
$lang->edit->image_align = 'Выровнять изображения';
|
||||
$lang->edit->attached_files = 'Прикрепленный файл';
|
||||
|
||||
$lang->edit->fontcolor_input = '폰트색 직접입력';
|
||||
$lang->edit->fontbgcolor_input = '배경색 직접입력';
|
||||
$lang->edit->pangram = '무궁화 꽃이 피었습니다';
|
||||
|
||||
$lang->edit->table_caption_position = '표 제목(caption) 및 배치';
|
||||
$lang->edit->table_caption = '표 제목(caption)';
|
||||
$lang->edit->table_header = '머리글 셀(th)';
|
||||
$lang->edit->table_header_none = '없음';
|
||||
$lang->edit->table_header_left = '왼쪽';
|
||||
$lang->edit->table_header_top = '위쪽';
|
||||
$lang->edit->table_header_both = '모두';
|
||||
$lang->edit->table_size = '표 크기';
|
||||
$lang->edit->table_width = '표 폭';
|
||||
|
||||
$lang->edit->upper_left = '상단좌측';
|
||||
$lang->edit->upper_center = '상단중앙';
|
||||
$lang->edit->upper_right = '상단우측';
|
||||
$lang->edit->bottom_left = '하단좌측';
|
||||
$lang->edit->bottom_center = '하단중앙';
|
||||
$lang->edit->bottom_right = '하단우측';
|
||||
|
||||
$lang->edit->no_image = '첨부된 이미지가 없습니다.';
|
||||
$lang->edit->no_multimedia = '첨부된 동영상이 없습니다.';
|
||||
$lang->edit->no_attachment = '첨부된 파일이 없습니다.';
|
||||
$lang->edit->insert_selected = '선택 넣기';
|
||||
$lang->edit->delete_selected = '선택 삭제';
|
||||
|
||||
$lang->edit->fieldset = '글상자';
|
||||
$lang->edit->paragraph = '문단';
|
||||
|
||||
$lang->edit->autosave_format = '글을 쓰기 시작한지 <strong>%s</strong>이 지났습니다. 마지막 저장 시간은 <strong>%s</strong> 입니다.';
|
||||
$lang->edit->autosave_hour = '%d시간';
|
||||
$lang->edit->autosave_hours = '%d시간';
|
||||
$lang->edit->autosave_min = '%d분';
|
||||
$lang->edit->autosave_mins = '%d분';
|
||||
$lang->edit->autosave_hour_ago = '%d시간 전';
|
||||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
$lang->edit->break_or_paragraph = 'Enter는 줄바꿈, Shift+Enter는 문단바꿈입니다.';
|
||||
?>
|
||||
|
|
@ -1,279 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/editor/lang/en.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief WYSIWYG Editor module's basic language pack
|
||||
**/
|
||||
|
||||
$lang->editor = 'WYSIWYG Editor';
|
||||
$lang->component_name = 'Bileşen';
|
||||
$lang->component_version = 'Sürüm';
|
||||
$lang->component_author = 'Geliştirici';
|
||||
$lang->component_link = 'Link';
|
||||
$lang->component_date = 'Tarih';
|
||||
$lang->component_license = 'Lisans';
|
||||
$lang->component_history = 'Güncelleştirmeler';
|
||||
$lang->component_description = 'Açıklama';
|
||||
$lang->component_extra_vars = 'Değişken Seçenek';
|
||||
$lang->component_grant = 'Yetki Ayarı';
|
||||
$lang->content_style = 'İçerik Tarzı';
|
||||
$lang->content_font = 'İçerik Yazı Tipi';
|
||||
$lang->content_font_size = 'İçerik Yazı Boyutu';
|
||||
|
||||
$lang->about_component = 'Bileşen hakkında';
|
||||
$lang->about_component_grant = 'Seçilen grup(lar), editörün genişletilmiş bileşenlerini kullanabilirler.<br />(Eğer tüm grupların bu yetkiye sahip olmasını istiyorsanız, boş bırakınız)';
|
||||
$lang->about_component_mid = 'Hedef editör bileşenlerini seçebilirsiniz.<br />(Hiçbir şey seçilmediğinde, tüm hedefler seçilecektir)';
|
||||
|
||||
$lang->msg_component_is_not_founded = 'Editör bileşeni %s bulunamıyor';
|
||||
$lang->msg_component_is_inserted = 'Seçilen bileşen zaten eklenmiş durumda';
|
||||
$lang->msg_component_is_first_order = 'Seçilen bileşen ilk pozisyona yerleştirilmiştir';
|
||||
$lang->msg_component_is_last_order = 'Seçilen bileşen son pozisyonda yerleşmiştir';
|
||||
$lang->msg_load_saved_doc = "Kendiliğinden kaydolan bir makale mevcut. Bunu kurtarmak ister misiniz?\nOtomatik kaydolan taslak, geçerli makaleyi kaydedince, çıkartılacaktır";
|
||||
$lang->msg_auto_saved = 'Kendiliğinden Kaydedildi';
|
||||
|
||||
$lang->cmd_disable = 'Devre Dışı';
|
||||
$lang->cmd_enable = 'Etkin';
|
||||
|
||||
$lang->editor_skin = 'Editor Dış Görünümü';
|
||||
$lang->upload_file_grant = 'Karşıya Yükleme Yetkisi';
|
||||
$lang->enable_default_component_grant = 'Varsayılan Bileşenler için Yetki';
|
||||
$lang->enable_component_grant = 'Bileşenler için Yetki';
|
||||
$lang->enable_html_grant = 'HTML için Yetki';
|
||||
$lang->enable_autosave = 'Oto-Kayıt';
|
||||
$lang->height_resizable = 'Yükseklik Yeniden Boyutlandırılabilir';
|
||||
$lang->editor_height = 'Editör Yüksekliği';
|
||||
|
||||
$lang->about_editor_skin = 'Editör dış görünümünü seçebilirsiniz.';
|
||||
$lang->about_content_style = 'Makale düzenleme veya içerik gösterme için tarz seçebilirsiniz';
|
||||
$lang->about_content_font = 'Makale düzenleme veya içerik gösterme için yazı tipi seçebilirsiniz.<br/>Varsayılan yazı tipi sizin kendi yazı tipinizdir<br/> Lütfen çoklu giriş için virgül(,) kullanınız.';
|
||||
$lang->about_content_font_size = 'Makale düzenleme veya içerik görüntüleme için yazı boyutu seçebilirsiniz.<br/>Lütfen px veya em gibi birimler kullanınız.';
|
||||
$lang->about_upload_file_grant = 'Seçilen (gruplar) dosyaları karşıya yükleme yetkisine sahip olacaklardır. (Eğer tüm grupların bu yetkiye sahip olmasını istiyorsanız lütfen boş bırakınız)';
|
||||
$lang->about_default_component_grant = 'Seçilen grup(lar) editörün varsayılan bileşenlerini kullanabileceklerdir. (Eğer tüm grupların bu yetkiye sahip olmasını istiyorsanız lütfen boş bırakınız)';
|
||||
$lang->about_editor_height = 'Editör yüksekliğini ayarlayabilirsiniz.';
|
||||
$lang->about_editor_height_resizable = 'Editörün yüksekliğinin yeniden boyutlandırıp-boyutlandırılamayacağı kararını verebilirsiniz.';
|
||||
$lang->about_enable_html_grant = 'Seçilen grup(lar) HTML kullanabileceklerdir';
|
||||
$lang->about_enable_autosave = 'Oto-Kayıt özelliğinin kullanılabilmesi kararını verebilirsiniz.';
|
||||
|
||||
$lang->edit->fontname = 'Yazı Tipi';
|
||||
$lang->edit->fontsize = 'Boyut';
|
||||
$lang->edit->use_paragraph = 'Paragraf Özelliği';
|
||||
$lang->edit->fontlist = array(
|
||||
'Arial'=>'Arial',
|
||||
'Arial Black'=>'Arial Black',
|
||||
'Tahoma'=>'Tahoma',
|
||||
'Verdana'=>'Verdana',
|
||||
'Sans-serif'=>'Sans-serif',
|
||||
'Serif'=>'Serif',
|
||||
'Monospace'=>'Monospace',
|
||||
'Cursive'=>'Cursive',
|
||||
'Fantasy'=>'Fantasy',
|
||||
);
|
||||
|
||||
$lang->edit->header = 'Tarz';
|
||||
$lang->edit->header_list = array(
|
||||
'h1' => 'Konu 1',
|
||||
'h2' => 'Konu 2',
|
||||
'h3' => 'Konu 3',
|
||||
'h4' => 'Konu 4',
|
||||
'h5' => 'Konu 5',
|
||||
'h6' => 'Konu 6',
|
||||
);
|
||||
|
||||
$lang->edit->submit = 'Gönder';
|
||||
|
||||
$lang->edit->fontcolor = 'Yazı Rengi';
|
||||
$lang->edit->fontcolor_apply = 'Yazı Rengini Uygula';
|
||||
$lang->edit->fontcolor_more = 'Daha Fazla Yazı Rengi';
|
||||
$lang->edit->fontbgcolor = 'Arkaplan Rengi';
|
||||
$lang->edit->fontbgcolor_apply = 'Arkaplan Rengini Uygula';
|
||||
$lang->edit->fontbgcolor_more = 'Daha Fazla Arkaplan Rengi';
|
||||
$lang->edit->bold = 'Kalın';
|
||||
$lang->edit->italic = 'Italik';
|
||||
$lang->edit->underline = 'Altıçizili';
|
||||
$lang->edit->strike = 'Göze Çarpan';
|
||||
$lang->edit->sup = 'Sup';
|
||||
$lang->edit->sub = 'Sub';
|
||||
$lang->edit->redo = 'Yinele';
|
||||
$lang->edit->undo = 'Geri Al';
|
||||
$lang->edit->align_left = 'Sola Hizalama';
|
||||
$lang->edit->align_center = 'Ortalı Hizalama';
|
||||
$lang->edit->align_right = 'Sağa Hizalama';
|
||||
$lang->edit->align_justify = 'Kenara Yaslı Hizalama';
|
||||
$lang->edit->add_indent = 'Girinti';
|
||||
$lang->edit->remove_indent = 'Çıkıntı';
|
||||
$lang->edit->list_number = 'Sıralanan Listesi';
|
||||
$lang->edit->list_bullet = 'Sırasız Listesi';
|
||||
$lang->edit->remove_format = 'Tarz Silicisi';
|
||||
|
||||
$lang->edit->help_remove_format = 'Seçili alandaki etiketler silinecektir';
|
||||
$lang->edit->help_strike_through = 'Strike ';
|
||||
$lang->edit->help_align_full = 'Sol ve sağ hizalama';
|
||||
|
||||
$lang->edit->help_fontcolor = 'Yazı rengi seç';
|
||||
$lang->edit->help_fontbgcolor = 'Yazı tipinin arkaplan rengini seç';
|
||||
$lang->edit->help_bold = 'Yazı tipini kalın yap';
|
||||
$lang->edit->help_italic = 'Yazı tipini italik yap';
|
||||
$lang->edit->help_underline = 'Altıçizili yazı tipi';
|
||||
$lang->edit->help_strike = 'Strike font';
|
||||
$lang->edit->help_sup = 'Superscript';
|
||||
$lang->edit->help_sub = 'Subscript';
|
||||
$lang->edit->help_redo = 'Yine';
|
||||
$lang->edit->help_undo = 'Geri al';
|
||||
$lang->edit->help_align_left = 'Sola Hizala';
|
||||
$lang->edit->help_align_center = 'Ortalı Hizala';
|
||||
$lang->edit->help_align_right = 'Sağa Hizala';
|
||||
$lang->edit->help_align_justify = 'Kenara Yaslı Hizalama';
|
||||
$lang->edit->help_add_indent = 'Girinti Ekle';
|
||||
$lang->edit->help_remove_indent = 'Girinti sil';
|
||||
$lang->edit->help_list_number = 'Sayı listesini uygula';
|
||||
$lang->edit->help_list_bullet = 'Bullet listesi uygula';
|
||||
$lang->edit->help_use_paragraph = 'Paragraf yapmak için Ctrl+Enter tuşlarına basınız. (Göndermek için Alt+S e basınız)';
|
||||
|
||||
$lang->edit->url = 'URL';
|
||||
$lang->edit->blockquote = 'Blokalıntı';
|
||||
$lang->edit->table = 'Tablo';
|
||||
$lang->edit->image = 'Resim';
|
||||
$lang->edit->multimedia = 'Film';
|
||||
$lang->edit->emoticon = 'His Simgesi';
|
||||
|
||||
$lang->edit->file = 'Dosyalar';
|
||||
$lang->edit->upload = 'Ekler';
|
||||
$lang->edit->upload_file = 'İliştir';
|
||||
$lang->edit->upload_list = 'Ekler Listesi';
|
||||
$lang->edit->link_file = 'İçeriğe Ekle';
|
||||
$lang->edit->delete_selected = 'Seçiliyi Sil';
|
||||
|
||||
$lang->edit->icon_align_article = 'Paragraf Yap';
|
||||
$lang->edit->icon_align_left = 'Sola Hizala';
|
||||
$lang->edit->icon_align_middle = 'Ortaya Hizala';
|
||||
$lang->edit->icon_align_right = 'Sağa Hizala';
|
||||
|
||||
$lang->about_dblclick_in_editor = 'Detaylı bileşen yapılandırmasını; arkaplana, metne, resme ya da alıntılara çift tıklayarak ayarlayabilirsiniz';
|
||||
|
||||
|
||||
$lang->edit->rich_editor = 'Zengin Metin Editörü';
|
||||
$lang->edit->html_editor = 'HTML Editörü';
|
||||
$lang->edit->extension ='Uzantı Bileşenleri';
|
||||
$lang->edit->help = 'Yardım';
|
||||
$lang->edit->help_command = 'Kısayol Yardım Tuşları';
|
||||
|
||||
$lang->edit->lineheight = 'Satır Yüksekliği';
|
||||
$lang->edit->fontbgsampletext = 'ABC';
|
||||
|
||||
$lang->edit->hyperlink = 'Köprü';
|
||||
$lang->edit->target_blank = 'Yeni Pencere';
|
||||
|
||||
$lang->edit->quotestyle1 = 'Sol Düzçizgi';
|
||||
$lang->edit->quotestyle2 = 'Alıntı';
|
||||
$lang->edit->quotestyle3 = 'Düzçizgi';
|
||||
$lang->edit->quotestyle4 = 'Düzçizgi + Arkaplan';
|
||||
$lang->edit->quotestyle5 = 'Kalın Düzçizgi';
|
||||
$lang->edit->quotestyle6 = 'Noktalı';
|
||||
$lang->edit->quotestyle7 = 'Noktalı + Arkaplan';
|
||||
$lang->edit->quotestyle8 = 'İptal';
|
||||
|
||||
|
||||
$lang->edit->jumptoedit = 'Araç Çubuğu Düzenini Geç';
|
||||
$lang->edit->set_sel = 'Hücre sayımını ayarla';
|
||||
$lang->edit->row = 'Satır';
|
||||
$lang->edit->col = 'Sütun';
|
||||
$lang->edit->add_one_row = '1 Satır Ekle';
|
||||
$lang->edit->del_one_row = '1 Satır Sil';
|
||||
$lang->edit->add_one_col = '1 Sütun Ekle';
|
||||
$lang->edit->del_one_col = '1 Sütun Sil';
|
||||
|
||||
$lang->edit->table_config = 'Tablo Yapılandırması';
|
||||
$lang->edit->border_width = 'Kenarlık Genişliği';
|
||||
$lang->edit->border_color = 'Kenarlık Rengi';
|
||||
$lang->edit->add = 'Ekle';
|
||||
$lang->edit->del = 'Sub';
|
||||
$lang->edit->search_color = 'Renk Ara';
|
||||
$lang->edit->table_backgroundcolor = 'Tablo Arkaplan Rengi';
|
||||
$lang->edit->special_character = 'Özek Karekterler';
|
||||
$lang->edit->insert_special_character = 'Özel Karakterler Ekle';
|
||||
$lang->edit->close_special_character = 'Özel Karakter Katmanını Kapat';
|
||||
$lang->edit->symbol = 'Semboller';
|
||||
$lang->edit->number_unit = 'Sayılar ve Birimler';
|
||||
$lang->edit->circle_bracket = 'Çemberler, Köşeli Ayraçlar';
|
||||
$lang->edit->korean = 'Korece';
|
||||
$lang->edit->greece = 'Yunanca';
|
||||
$lang->edit->Latin = 'Latince';
|
||||
$lang->edit->japan = 'Japonca';
|
||||
$lang->edit->selected_symbol = 'Seçili Semboller';
|
||||
|
||||
$lang->edit->search_replace = 'Bul/Değiştir';
|
||||
$lang->edit->close_search_replace = 'Bul\'u Kapat/Katmanı Değiştir';
|
||||
$lang->edit->replace_all = 'Tümünü Değiştir';
|
||||
$lang->edit->search_words = 'Bulunacak Sözcükler';
|
||||
$lang->edit->replace_words = 'Değiştirilecek Sözcükler';
|
||||
$lang->edit->next_search_words = 'Sonrakini Bul';
|
||||
$lang->edit->edit_height_control = 'Düzen Formunun Boyutunu Ayarla';
|
||||
|
||||
$lang->edit->merge_cells = 'Tablo Hücrelerini Birleştir';
|
||||
$lang->edit->split_row = 'Satır Ayır';
|
||||
$lang->edit->split_col = 'Sütun Ayır';
|
||||
|
||||
$lang->edit->toggle_list = 'Kıvır/Geriaç';
|
||||
$lang->edit->minimize_list = 'Simge Durumuna Küçült';
|
||||
|
||||
$lang->edit->move = 'Taşı';
|
||||
$lang->edit->refresh = 'Yenile';
|
||||
$lang->edit->materials = 'Malzemeler';
|
||||
$lang->edit->temporary_savings = 'Geçici Kayıtlı Listesi';
|
||||
|
||||
$lang->edit->paging_prev = 'Önceki';
|
||||
$lang->edit->paging_next = 'Sonraki';
|
||||
$lang->edit->paging_prev_help = 'Önceki sayfaya git.';
|
||||
$lang->edit->paging_next_help = 'Sonraki sayfaya git.';
|
||||
|
||||
$lang->edit->toc = 'İçerik Tablosu';
|
||||
$lang->edit->close_help = 'Yardımı Kapat';
|
||||
|
||||
$lang->edit->confirm_submit_without_saving = 'Kaydedilmemiş paragraflar var.\\nYine de devam etmek ister misiniz?';
|
||||
|
||||
$lang->edit->image_align = 'Resim Hizalaması';
|
||||
$lang->edit->attached_files = 'Ekler';
|
||||
|
||||
$lang->edit->fontcolor_input = 'Özel Metin Rengi';
|
||||
$lang->edit->fontbgcolor_input = 'Özel Arkaplan Rengi';
|
||||
$lang->edit->pangram = 'Kahverengi hızlı tilki, tembel köpeğin üzerinden atlıyor';
|
||||
|
||||
$lang->edit->table_caption_position = 'Tablo Yazısı & Konumu';
|
||||
$lang->edit->table_caption = 'Tablo Yazısı';
|
||||
$lang->edit->table_header = 'Tablo Başlığı';
|
||||
$lang->edit->table_header_none = 'hiçbiri';
|
||||
$lang->edit->table_header_left = 'sol';
|
||||
$lang->edit->table_header_top = 'üst';
|
||||
$lang->edit->table_header_both = 'hepsi';
|
||||
$lang->edit->table_size = 'Tablo Boyutu';
|
||||
$lang->edit->table_width = 'Tablo Genişliği';
|
||||
|
||||
$lang->edit->upper_left = 'Üst Sol';
|
||||
$lang->edit->upper_center = 'Üst Merkez';
|
||||
$lang->edit->upper_right = 'Üst Sağ';
|
||||
$lang->edit->bottom_left = 'Alt Sol';
|
||||
$lang->edit->bottom_center = 'Alt Merkez';
|
||||
$lang->edit->bottom_right = 'Alt Sağ';
|
||||
|
||||
$lang->edit->no_image = 'Yüklenmiş hiçbir resim yok.';
|
||||
$lang->edit->no_multimedia = 'Yüklenmiş hiçbir görüntü yok.';
|
||||
$lang->edit->no_attachment = 'Yüklenmiş hiçbir dosya yok.';
|
||||
$lang->edit->insert_selected = 'Seçileni Ekle';
|
||||
$lang->edit->delete_selected = 'Seçileni Sil';
|
||||
|
||||
$lang->edit->fieldset = 'Alanayarı';
|
||||
$lang->edit->paragraph = 'Paragraf';
|
||||
|
||||
$lang->edit->autosave_format = 'Makaleyi yazmak için <strong>%s</strong> kadar bir süre kullandınız. Makalenizi son kaydettiğiniz zaman : <strong>%s</strong>.';
|
||||
$lang->edit->autosave_hour = '%dSaat';
|
||||
$lang->edit->autosave_hours = '%dSaat';
|
||||
$lang->edit->autosave_min = '%dDakika';
|
||||
$lang->edit->autosave_mins = '%dDakika';
|
||||
$lang->edit->autosave_hour_ago = '%dsaat önce';
|
||||
$lang->edit->autosave_hours_ago = '%d saat önce';
|
||||
$lang->edit->autosave_min_ago = '%ddakika önce';
|
||||
$lang->edit->autosave_mins_ago = '%ddakika önce';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = 'Yeteri boş alan bulunmadığından, karşıya yükleme yapılamıyor.';
|
||||
$lang->edit->break_or_paragraph = 'Enter는 줄바꿈, Shift+Enter는 문단바꿈입니다.';
|
||||
?>
|
||||
|
|
@ -1,282 +0,0 @@
|
|||
<?php
|
||||
/* ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
|
||||
░░ * @File : common/lang/vi.lang.php ░░
|
||||
░░ * @Author : NHN (developers@xpressengine.com) ░░
|
||||
░░ * @Trans : DucDuy Dao (webmaster@xpressengine.vn) ░░
|
||||
░░ * @Website: http://xpressengine.vn ░░
|
||||
░░ * @Brief : Vietnamese Language Pack (Only basic words are included here) ░░
|
||||
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
|
||||
*/
|
||||
|
||||
$lang->editor = 'WYSIWYG toàn diện';
|
||||
$lang->component_name = 'Thành phần';
|
||||
$lang->component_version = 'Phiên bản';
|
||||
$lang->component_author = 'Người phát triển';
|
||||
$lang->component_link = 'Link';
|
||||
$lang->component_date = 'Ngày';
|
||||
$lang->component_license = 'Cấp phép';
|
||||
$lang->component_history = 'Cập nhật';
|
||||
$lang->component_description = 'Mô tả';
|
||||
$lang->component_extra_vars = 'Thông tin bổ xung';
|
||||
$lang->component_grant = 'Thiết lập quyền';
|
||||
$lang->content_style = 'Kiểu dáng của nội dung';
|
||||
$lang->content_font = 'Font chữ của nội dung';
|
||||
$lang->content_font_size = 'Cỡ chữ của nội dung';
|
||||
|
||||
$lang->about_component = 'Thông tin Thành phần';
|
||||
$lang->about_component_grant = 'Những nhóm đã chọn sẽ được phép sử dụng Thành phần mở rộng cho biên tập.<br />(Để trống nếu bạn muốn tất cả các nhóm đều được phép sử dụng.)';
|
||||
$lang->about_component_mid = 'Có thể lựa chọn khu vực sử dụng Thành phần.<br />(Nếu để trống là tất cả các khu vực đều có thể sử dụng.)';
|
||||
|
||||
$lang->msg_component_is_not_founded = 'Không tìm thấy biên tập Thành phần %s';
|
||||
$lang->msg_component_is_inserted = 'Đã chèn Thành phần được chọn.';
|
||||
$lang->msg_component_is_first_order = 'Lựa chọn Thành phần trước một khu vực.';
|
||||
$lang->msg_component_is_last_order = 'Lựa chọn Thành phần sau một khu vực.';
|
||||
$lang->msg_load_saved_doc = "Đã có bài viết tự động lưu. Bạn có muốn khôi phục nó không?\nBài viết tự động lưu sẽ tự động hủy sau khi bạn hoàn thành bài viết này và bấm 'Gửi'";
|
||||
$lang->msg_auto_saved = 'Đã tự động lưu';
|
||||
|
||||
$lang->cmd_disable = 'Không hoạt động';
|
||||
$lang->cmd_enable = 'Hoạt động';
|
||||
|
||||
$lang->editor_skin = 'Giao diện gửi bài';
|
||||
$lang->upload_file_grant = 'Quyền Upload';
|
||||
$lang->enable_default_component_grant = 'Quyền sử dụng Thành phần cơ bản';
|
||||
$lang->enable_component_grant = 'Quyền sử dụng Thành phần';
|
||||
$lang->enable_html_grant = 'Quyền sử dụng HTML';
|
||||
$lang->enable_autosave = 'Tự động lưu';
|
||||
$lang->height_resizable = 'Mở rộng chiều cao';
|
||||
$lang->editor_height = 'Chiều cao khung viết bài';
|
||||
|
||||
$lang->about_editor_skin = 'Bạn có thể chọn kiểu gửi bài.';
|
||||
$lang->about_content_style = 'Bạn có thể chọn kiểu viết bài hay kiểu hiển thị.';
|
||||
$lang->about_content_font = 'Bạn có thể chọn Font chữ để viết và hiển thị trong bài viết.<br/>Để đặt mặc định chỉ Font chữ bạn hay sử dụng, hãy đặt dấu (,) vào giữa các Font.';
|
||||
$lang->about_content_font_size = 'Bạn có thể chọn cỡ chữ để viết bài và hiển thị theo định dạng "px" hoặc "em".';
|
||||
$lang->about_upload_file_grant = 'Chọn nhóm được phép Upload File. (Để trống nếu bạn muốn tất cả các nhóm đều có thể Upload.)';
|
||||
$lang->about_default_component_grant = 'Chọn nhóm được phép sử dụng Thành phần mặc định. (Để trống nếu bạn muốn tất cả đều có thể sử dụng.)';
|
||||
$lang->about_editor_height = 'Bạn có thể đặt chiều cao của khung viết bài.';
|
||||
$lang->about_editor_height_resizable = 'Đặt chiều cao có thể thay đổi.';
|
||||
$lang->about_enable_html_grant = 'Chọn nhóm được phép sử dụng HTML';
|
||||
$lang->about_enable_autosave = 'Bạn có thể đặt chức năng Tự động lưu.';
|
||||
|
||||
$lang->edit->fontname = 'Kiểu chữ';
|
||||
$lang->edit->fontsize = 'Cỡ chữ';
|
||||
$lang->edit->use_paragraph = 'Chức năng Paragraph';
|
||||
$lang->edit->fontlist = array(
|
||||
'Arial'=>'Arial',
|
||||
'Arial Black'=>'Arial Black',
|
||||
'Tahoma'=>'Tahoma',
|
||||
'Verdana'=>'Verdana',
|
||||
'Sans-serif'=>'Sans-serif',
|
||||
'Serif'=>'Serif',
|
||||
'Monospace'=>'Monospace',
|
||||
'Cursive'=>'Cursive',
|
||||
'Fantasy'=>'Fantasy',
|
||||
);
|
||||
|
||||
$lang->edit->header = 'Tiêu đề lớn';
|
||||
$lang->edit->header_list = array(
|
||||
'h1' => 'Cỡ 1',
|
||||
'h2' => 'Cỡ 2',
|
||||
'h3' => 'Cỡ 3',
|
||||
'h4' => 'Cỡ 4',
|
||||
'h5' => 'Cỡ 5',
|
||||
'h6' => 'Cỡ 6',
|
||||
);
|
||||
|
||||
$lang->edit->submit = 'Gửi bài';
|
||||
|
||||
$lang->edit->fontcolor = 'Màu chữ';
|
||||
$lang->edit->fontcolor_apply = '글자 색 적용';
|
||||
$lang->edit->fontcolor_more = '글자 색 더보기';
|
||||
$lang->edit->fontbgcolor = 'Màu nền';
|
||||
$lang->edit->fontbgcolor_apply = '글자 배경색 적용';
|
||||
$lang->edit->fontbgcolor_more = '글자 배경색 더보기';
|
||||
$lang->edit->bold = 'Chữ đậm';
|
||||
$lang->edit->italic = 'Chữ nghiêng';
|
||||
$lang->edit->underline = 'Chứ gạch chân';
|
||||
$lang->edit->strike = 'Chữ gạch giữa';
|
||||
$lang->edit->sup = 'Chỉ số trên';
|
||||
$lang->edit->sub = 'Chỉ số dưới';
|
||||
$lang->edit->redo = 'Phía sau';
|
||||
$lang->edit->undo = 'Trở lại';
|
||||
$lang->edit->align_left = 'Căn trái';
|
||||
$lang->edit->align_center = 'Căn giữa';
|
||||
$lang->edit->align_right = 'Căn phải';
|
||||
$lang->edit->align_justify = 'Căn đều';
|
||||
$lang->edit->add_indent = 'Thụt lề';
|
||||
$lang->edit->remove_indent = 'Dàn đều';
|
||||
$lang->edit->list_number = 'Thứ tự số';
|
||||
$lang->edit->list_bullet = 'Thứ tự chấm';
|
||||
$lang->edit->remove_format = 'Xóa định dạng';
|
||||
|
||||
$lang->edit->help_remove_format = 'Những Tag đã chọn sẽ bị xóa';
|
||||
$lang->edit->help_strike_through = 'Đường kẻ sẽ nằm lên chữ';
|
||||
$lang->edit->help_align_full = 'Căn trái và phải';
|
||||
|
||||
$lang->edit->help_fontcolor = 'Màu chữ';
|
||||
$lang->edit->help_fontbgcolor = 'Màu nền';
|
||||
$lang->edit->help_bold = ' Chữ đậm';
|
||||
$lang->edit->help_italic = ' Chữ nghiêng';
|
||||
$lang->edit->help_underline = ' Chữ gạch chân';
|
||||
$lang->edit->help_strike = ' Chữ gạch giữa';
|
||||
$lang->edit->help_sup = 'Chỉ số trên';
|
||||
$lang->edit->help_sub = 'Chỉ số dưới';
|
||||
$lang->edit->help_redo = 'Tiếp tục';
|
||||
$lang->edit->help_undo = 'Trở lại';
|
||||
$lang->edit->help_align_left = 'Căn trái';
|
||||
$lang->edit->help_align_center = 'Căn giữa';
|
||||
$lang->edit->help_align_right = 'Căn phải';
|
||||
$lang->edit->help_align_justify = 'Đều hai bên';
|
||||
$lang->edit->help_add_indent = 'Thụt vào';
|
||||
$lang->edit->help_remove_indent = 'Giãn ra';
|
||||
$lang->edit->help_list_number = 'Thứ tự số';
|
||||
$lang->edit->help_list_bullet = 'Thứ tự chấm';
|
||||
$lang->edit->help_use_paragraph = 'Bấm "Ctrl+Enter" để sử dụng Paragraph. Bấm phím "Alt+S" để gửi.';
|
||||
|
||||
$lang->edit->url = 'URL';
|
||||
$lang->edit->blockquote = 'Trích dẫn';
|
||||
$lang->edit->table = 'Bảng';
|
||||
$lang->edit->image = 'Hình ảnh';
|
||||
$lang->edit->multimedia = 'Chèn Media';
|
||||
$lang->edit->emoticon = 'Diễn tả cảm xúc';
|
||||
|
||||
$lang->edit->file = '파일';
|
||||
$lang->edit->upload = 'Đính kèm';
|
||||
$lang->edit->upload_file = 'Đính kèm';
|
||||
$lang->edit->upload_list = '첨부 목록';
|
||||
$lang->edit->link_file = 'Chèn vào bài viết';
|
||||
$lang->edit->delete_selected = 'Xóa lựa chọn';
|
||||
|
||||
$lang->edit->icon_align_article = 'Vị trí trong bài viết';
|
||||
$lang->edit->icon_align_left = 'Trái';
|
||||
$lang->edit->icon_align_middle = 'Giữa';
|
||||
$lang->edit->icon_align_right = 'Phải';
|
||||
|
||||
$lang->about_dblclick_in_editor = 'Thiết lập khi bấm 2 lần vào nền, Chữ, Hình ảnh hoặc Trích dẫn';
|
||||
|
||||
|
||||
$lang->edit->rich_editor = 'Kiểu trù phú';
|
||||
$lang->edit->html_editor = 'Kiểu HTML';
|
||||
$lang->edit->extension ='Thành phần mở rộng';
|
||||
$lang->edit->help = 'Trợ giúp';
|
||||
$lang->edit->help_command = 'Phím nóng';
|
||||
|
||||
$lang->edit->lineheight = 'Chiều cao dòng';
|
||||
$lang->edit->fontbgsampletext = 'ABC';
|
||||
|
||||
$lang->edit->hyperlink = 'Link liên kết';
|
||||
$lang->edit->target_blank = 'Mở trang mới';
|
||||
|
||||
$lang->edit->quotestyle1 = 'Liền viền trái';
|
||||
$lang->edit->quotestyle2 = 'Trích';
|
||||
$lang->edit->quotestyle3 = 'Viền liền';
|
||||
$lang->edit->quotestyle4 = 'Viền liền+Nền';
|
||||
$lang->edit->quotestyle5 = 'Liền đậm';
|
||||
$lang->edit->quotestyle6 = 'Viền chấm';
|
||||
$lang->edit->quotestyle7 = 'Chấm+Nền';
|
||||
$lang->edit->quotestyle8 = 'Loại bỏ';
|
||||
|
||||
|
||||
$lang->edit->jumptoedit = 'Bỏ qua công cụ chỉnh sửa';
|
||||
$lang->edit->set_sel = 'Số hàng cột';
|
||||
$lang->edit->row = 'Hàng';
|
||||
$lang->edit->col = 'Cột';
|
||||
$lang->edit->add_one_row = 'Thêm 1 hàng';
|
||||
$lang->edit->del_one_row = 'Xóa 1 hàng';
|
||||
$lang->edit->add_one_col = 'Thêm một cột';
|
||||
$lang->edit->del_one_col = 'Xóa một cột';
|
||||
|
||||
$lang->edit->table_config = 'Thiết lập viền';
|
||||
$lang->edit->border_width = 'Độ rộng';
|
||||
$lang->edit->border_color = 'Màu viền';
|
||||
$lang->edit->add = 'Thêm';
|
||||
$lang->edit->del = 'Xóa';
|
||||
$lang->edit->search_color = 'Tìm màu';
|
||||
$lang->edit->table_backgroundcolor = 'Màu nền';
|
||||
$lang->edit->special_character = 'Kí tự đặc biệt';
|
||||
$lang->edit->insert_special_character = 'Chèn kí tự đặc biệt.';
|
||||
$lang->edit->close_special_character = 'Tắt bản kí tự đặc biệt.';
|
||||
$lang->edit->symbol = 'Biểu tượng';
|
||||
$lang->edit->number_unit = 'Số và đơn vị';
|
||||
$lang->edit->circle_bracket = 'Vòng tròn, Ngoặc';
|
||||
$lang->edit->korean = 'Korean';
|
||||
$lang->edit->greece = 'Greek';
|
||||
$lang->edit->Latin = 'Latin';
|
||||
$lang->edit->japan = 'Japanese';
|
||||
$lang->edit->selected_symbol = 'Kí tự đã chọn:';
|
||||
|
||||
$lang->edit->search_replace = 'Tìm/Ghi đè';
|
||||
$lang->edit->close_search_replace = 'Tắt bảng Tìm/Ghi đè';
|
||||
$lang->edit->replace_all = 'Ghi đè tất cả';
|
||||
$lang->edit->search_words = 'Tìm từ';
|
||||
$lang->edit->replace_words = 'Từ ghi đè';
|
||||
$lang->edit->next_search_words = 'Tìm tiếp';
|
||||
$lang->edit->edit_height_control = 'Đặt kích thước mẫu';
|
||||
|
||||
$lang->edit->merge_cells = 'Nối bảng';
|
||||
$lang->edit->split_row = 'Chia hàng';
|
||||
$lang->edit->split_col = 'Chia cột';
|
||||
|
||||
$lang->edit->toggle_list = 'Hiện/Ẩn';
|
||||
$lang->edit->minimize_list = 'Thu nhỏ';
|
||||
|
||||
$lang->edit->move = 'Di chuyển';
|
||||
$lang->edit->refresh = 'Làm mới';
|
||||
$lang->edit->materials = 'Vật liệu';
|
||||
$lang->edit->temporary_savings = 'Danh sách lưu tạm thời';
|
||||
|
||||
$lang->edit->paging_prev = 'Trước';
|
||||
$lang->edit->paging_next = 'Tiếp';
|
||||
$lang->edit->paging_prev_help = 'Chuyển về trang trước.';
|
||||
$lang->edit->paging_next_help = 'Chuyển tới trang tiếp.';
|
||||
|
||||
$lang->edit->toc = 'Board của nội dung';
|
||||
$lang->edit->close_help = 'Đóng hướng dẫn';
|
||||
|
||||
$lang->edit->confirm_submit_without_saving = 'Nội dung chưa được lưu.\\nBạn có chắc chắn muốn gửi không?';
|
||||
|
||||
$lang->edit->image_align = 'Sắp xếp hình ảnh';
|
||||
$lang->edit->attached_files = 'File đính kèm';
|
||||
|
||||
$lang->edit->fontcolor_input = '폰트색 직접입력';
|
||||
$lang->edit->fontbgcolor_input = '배경색 직접입력';
|
||||
$lang->edit->pangram = '무궁화 꽃이 피었습니다';
|
||||
|
||||
$lang->edit->table_caption_position = '표 제목(caption) 및 배치';
|
||||
$lang->edit->table_caption = '표 제목(caption)';
|
||||
$lang->edit->table_header = '머리글 셀(th)';
|
||||
$lang->edit->table_header_none = '없음';
|
||||
$lang->edit->table_header_left = '왼쪽';
|
||||
$lang->edit->table_header_top = '위쪽';
|
||||
$lang->edit->table_header_both = '모두';
|
||||
$lang->edit->table_size = '표 크기';
|
||||
$lang->edit->table_width = '표 폭';
|
||||
|
||||
$lang->edit->upper_left = '상단좌측';
|
||||
$lang->edit->upper_center = '상단중앙';
|
||||
$lang->edit->upper_right = '상단우측';
|
||||
$lang->edit->bottom_left = '하단좌측';
|
||||
$lang->edit->bottom_center = '하단중앙';
|
||||
$lang->edit->bottom_right = '하단우측';
|
||||
|
||||
$lang->edit->no_image = '첨부된 이미지가 없습니다.';
|
||||
$lang->edit->no_multimedia = '첨부된 동영상이 없습니다.';
|
||||
$lang->edit->no_attachment = '첨부된 파일이 없습니다.';
|
||||
$lang->edit->insert_selected = '선택 넣기';
|
||||
$lang->edit->delete_selected = '선택 삭제';
|
||||
|
||||
$lang->edit->fieldset = '글상자';
|
||||
$lang->edit->paragraph = '문단';
|
||||
|
||||
$lang->edit->autosave_format = '글을 쓰기 시작한지 <strong>%s</strong>이 지났습니다. 마지막 저장 시간은 <strong>%s</strong> 입니다.';
|
||||
$lang->edit->autosave_hour = '%d시간';
|
||||
$lang->edit->autosave_hours = '%d시간';
|
||||
$lang->edit->autosave_min = '%d분';
|
||||
$lang->edit->autosave_mins = '%d분';
|
||||
$lang->edit->autosave_hour_ago = '%d시간 전';
|
||||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
$lang->edit->break_or_paragraph = 'Enter는 줄바꿈, Shift+Enter는 문단바꿈입니다.';
|
||||
?>
|
||||
|
|
@ -1,281 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/editor/lang/zh-CN.lang.php
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
* @brief 网页编辑器(editor) 模块语言包
|
||||
**/
|
||||
|
||||
$lang->editor = '网页编辑器';
|
||||
$lang->component_name = '组件';
|
||||
$lang->component_version = '版本';
|
||||
$lang->component_author = '作者';
|
||||
$lang->component_link = '链接';
|
||||
$lang->component_date = '编写日期';
|
||||
$lang->component_license = '版权';
|
||||
$lang->component_history = '更新日志';
|
||||
$lang->component_description = '说明';
|
||||
$lang->component_extra_vars = '变数设置';
|
||||
$lang->component_grant = '权限设置';
|
||||
$lang->content_style = '文档样式';
|
||||
$lang->content_font = '文档字体';
|
||||
$lang->content_font_size = '字体大小';
|
||||
|
||||
$lang->about_component = '组件简介';
|
||||
$lang->about_component_grant = '可以设置除默认组件外的扩展组件使用权限<br />(全部解除时任何用户都可以使用)。';
|
||||
$lang->about_component_mid = '可以指定使用编辑器组件的对象。<br />(全部解除时任何用户都可以使用)。';
|
||||
|
||||
$lang->msg_component_is_not_founded = '找不到%s 组件说明!';
|
||||
$lang->msg_component_is_inserted = '您选择的组件已插入!';
|
||||
$lang->msg_component_is_first_order = '您选择的组件已到最上端位置!';
|
||||
$lang->msg_component_is_last_order = '您选择的组件已到最下端位置!';
|
||||
$lang->msg_load_saved_doc = "有自动保存的内容, 确定要恢复吗?\n发布主题后,自动保存的文本将会被删除。";
|
||||
$lang->msg_auto_saved = '已自动保存!';
|
||||
|
||||
$lang->cmd_disable = '非激活';
|
||||
$lang->cmd_enable = '激活';
|
||||
|
||||
$lang->editor_skin = '编辑器皮肤';
|
||||
$lang->upload_file_grant = '文件上传权限';
|
||||
$lang->enable_default_component_grant = '默认组件使用权限';
|
||||
$lang->enable_component_grant = '组件使用权限';
|
||||
$lang->enable_html_grant = 'HTML编辑权限';
|
||||
$lang->enable_autosave = '内容自动保存';
|
||||
$lang->height_resizable = '高度调整';
|
||||
$lang->editor_height = '编辑器高度';
|
||||
|
||||
$lang->about_editor_skin = '可以选择编辑器皮肤。';
|
||||
$lang->about_content_style = '可以指定编辑或打印文档时的文档样式。';
|
||||
$lang->about_content_font = '可以指定编辑或打印文档时的文档字体,不指定随用户设置。<br/>多个字体可以用逗号(,)区分输入。';
|
||||
$lang->about_content_font_size = '可以指定编辑或打印文档时的文档字体大小。<br/>指定时请包含字体单位(如12px, 1em)。';
|
||||
$lang->about_upload_file_grant = '可以设置上传文件的权限(全部解除为无限制)。';
|
||||
$lang->about_default_component_grant = '可以设置编辑器默认组件的使用权限(全部解除为无限制)。';
|
||||
$lang->about_editor_height = '可以指定编辑器的默认高度。';
|
||||
$lang->about_editor_height_resizable = '允许用户拖动编辑器高度。';
|
||||
$lang->about_enable_html_grant = 'HTML代码编辑权限设置。';
|
||||
$lang->about_enable_autosave = '发表主题时激活内容自动保存功能。';
|
||||
|
||||
$lang->edit->fontname = '字体';
|
||||
$lang->edit->fontsize = '大小';
|
||||
$lang->edit->use_paragraph = '段落功能';
|
||||
$lang->edit->fontlist = array(
|
||||
'宋体'=>'宋体',
|
||||
'黑体'=>'黑体',
|
||||
'楷体_GB2312'=>'楷体',
|
||||
'Arial'=>'Arial',
|
||||
'Arial Black'=>'Arial Black',
|
||||
'Tahoma'=>'Tahoma',
|
||||
'Verdana'=>'Verdana',
|
||||
'Sans-serif'=>'Sans-serif',
|
||||
'Serif'=>'Serif',
|
||||
'Monospace'=>'Monospace',
|
||||
'Cursive'=>'Cursive',
|
||||
'Fantasy'=>'Fantasy',
|
||||
);
|
||||
|
||||
$lang->edit->header = '样式';
|
||||
$lang->edit->header_list = array(
|
||||
'h1' => '标题 1',
|
||||
'h2' => '标题 2',
|
||||
'h3' => '标题 3',
|
||||
'h4' => '标题 4',
|
||||
'h5' => '标题 5',
|
||||
'h6' => '标题 6',
|
||||
);
|
||||
|
||||
$lang->edit->submit = '确认';
|
||||
|
||||
$lang->edit->fontcolor = '文本颜色';
|
||||
$lang->edit->fontcolor_apply = '글자 색 적용';
|
||||
$lang->edit->fontcolor_more = '글자 색 더보기';
|
||||
$lang->edit->fontbgcolor = '背景颜色';
|
||||
$lang->edit->fontbgcolor_apply = '글자 배경색 적용';
|
||||
$lang->edit->fontbgcolor_more = '글자 배경색 더보기';
|
||||
$lang->edit->bold = '粗体';
|
||||
$lang->edit->italic = '斜体';
|
||||
$lang->edit->underline = '下划线';
|
||||
$lang->edit->strike = '取消线';
|
||||
$lang->edit->sup = '上标';
|
||||
$lang->edit->sub = '下标';
|
||||
$lang->edit->redo = '恢复';
|
||||
$lang->edit->undo = '撤销';
|
||||
$lang->edit->align_left = '左对齐';
|
||||
$lang->edit->align_center = '居中对齐';
|
||||
$lang->edit->align_right = '右对齐';
|
||||
$lang->edit->align_justify = '两端对齐';
|
||||
$lang->edit->add_indent = '增加缩进';
|
||||
$lang->edit->remove_indent = '减少缩进';
|
||||
$lang->edit->list_number = '有序列表';
|
||||
$lang->edit->list_bullet = '无序列表';
|
||||
$lang->edit->remove_format = '删除文字格式';
|
||||
|
||||
$lang->edit->help_remove_format = '清除格式。';
|
||||
$lang->edit->help_strike_through = '取消线。';
|
||||
$lang->edit->help_align_full = '两端对齐。';
|
||||
|
||||
$lang->edit->help_fontcolor = '文本颜色。';
|
||||
$lang->edit->help_fontbgcolor = '背景颜色。';
|
||||
$lang->edit->help_bold = '粗体';
|
||||
$lang->edit->help_italic = '斜体';
|
||||
$lang->edit->help_underline = '下划线';
|
||||
$lang->edit->help_strike = '取消线';
|
||||
$lang->edit->help_sup = '上标';
|
||||
$lang->edit->help_sub = '下标';
|
||||
$lang->edit->help_redo = '恢复';
|
||||
$lang->edit->help_undo = '撤销';
|
||||
$lang->edit->help_align_left = '左对齐';
|
||||
$lang->edit->help_align_center = '居中对齐';
|
||||
$lang->edit->help_align_right = '右对齐';
|
||||
$lang->edit->help_align_justify = '两端对齐';
|
||||
$lang->edit->help_add_indent = '增加缩进';
|
||||
$lang->edit->help_remove_indent = '减少缩进';
|
||||
$lang->edit->help_list_number = '有序列表';
|
||||
$lang->edit->help_list_bullet = '无序列表';
|
||||
$lang->edit->help_use_paragraph = '分段请按 Ctrl+回车. (发表主题快捷键:Alt+S)';
|
||||
|
||||
$lang->edit->url = '链接';
|
||||
$lang->edit->blockquote = '注释框';
|
||||
$lang->edit->table = '表格';
|
||||
$lang->edit->image = '图片';
|
||||
$lang->edit->multimedia = '视频';
|
||||
$lang->edit->emoticon = '表情图标';
|
||||
|
||||
$lang->edit->file = '파일';
|
||||
$lang->edit->upload = '上传';
|
||||
$lang->edit->upload_file = '上传附件';
|
||||
$lang->edit->upload_list = '첨부 목록';
|
||||
$lang->edit->link_file = '插入附件';
|
||||
$lang->edit->delete_selected = '删除所选';
|
||||
|
||||
$lang->edit->icon_align_article = '占一个段落';
|
||||
$lang->edit->icon_align_left = '文本左侧';
|
||||
$lang->edit->icon_align_middle = '居中对齐';
|
||||
$lang->edit->icon_align_right = '文本右侧';
|
||||
|
||||
$lang->about_dblclick_in_editor = '双击背景, 文本, 图片, 引用即可对其相关组件进行详细设置。';
|
||||
|
||||
$lang->edit->rich_editor = '常规';
|
||||
$lang->edit->html_editor = 'HTML';
|
||||
$lang->edit->extension ='扩展组件';
|
||||
$lang->edit->help = '帮助';
|
||||
$lang->edit->help_command = '快捷键说明';
|
||||
|
||||
$lang->edit->lineheight = '行间距';
|
||||
$lang->edit->fontbgsampletext = '我爱中华!';
|
||||
|
||||
$lang->edit->hyperlink = '链接';
|
||||
$lang->edit->target_blank = '新窗口';
|
||||
|
||||
$lang->edit->quotestyle1 = '左侧实线';
|
||||
$lang->edit->quotestyle2 = '引用符号';
|
||||
$lang->edit->quotestyle3 = '实线';
|
||||
$lang->edit->quotestyle4 = '实线 + 背景';
|
||||
$lang->edit->quotestyle5 = '粗实线';
|
||||
$lang->edit->quotestyle6 = '虚线';
|
||||
$lang->edit->quotestyle7 = '虚线 + 背景';
|
||||
$lang->edit->quotestyle8 = '取消应用';
|
||||
|
||||
|
||||
$lang->edit->jumptoedit = '跳转';
|
||||
$lang->edit->set_sel = '表格大小';
|
||||
$lang->edit->row = '行';
|
||||
$lang->edit->col = '列';
|
||||
$lang->edit->add_one_row = '添加1行';
|
||||
$lang->edit->del_one_row = '删除1行';
|
||||
$lang->edit->add_one_col = '添加1列';
|
||||
$lang->edit->del_one_col = '删除1列';
|
||||
|
||||
$lang->edit->table_config = '表格属性';
|
||||
$lang->edit->border_width = '表格边框';
|
||||
$lang->edit->border_color = '边框颜色';
|
||||
$lang->edit->add = '加';
|
||||
$lang->edit->del = '减';
|
||||
$lang->edit->search_color = '修改颜色';
|
||||
$lang->edit->table_backgroundcolor = '背景颜色';
|
||||
$lang->edit->special_character = '特殊字符';
|
||||
$lang->edit->insert_special_character = '插入特殊字符';
|
||||
$lang->edit->close_special_character = '关闭';
|
||||
$lang->edit->symbol = '基本符号';
|
||||
$lang->edit->number_unit = '数字/单位';
|
||||
$lang->edit->circle_bracket = '数字序号';
|
||||
$lang->edit->korean = '韩文';
|
||||
$lang->edit->greece = '希腊';
|
||||
$lang->edit->Latin = '拉丁';
|
||||
$lang->edit->japan = '日文';
|
||||
$lang->edit->selected_symbol = '被选字符';
|
||||
|
||||
$lang->edit->search_replace = '查找/替换';
|
||||
$lang->edit->close_search_replace = '关闭';
|
||||
$lang->edit->replace_all = '全部替换';
|
||||
$lang->edit->search_words = '查找内容';
|
||||
$lang->edit->replace_words = '替换为';
|
||||
$lang->edit->next_search_words = '查找下一个';
|
||||
$lang->edit->edit_height_control = '调整输入框大小';
|
||||
|
||||
$lang->edit->merge_cells = '合并单元格';
|
||||
$lang->edit->split_row = '跨行';
|
||||
$lang->edit->split_col = '跨列';
|
||||
|
||||
$lang->edit->toggle_list = '展开/折叠列表';
|
||||
$lang->edit->minimize_list = '最小化';
|
||||
|
||||
$lang->edit->move = '移动';
|
||||
$lang->edit->refresh = '刷新';
|
||||
$lang->edit->materials = '素材库';
|
||||
$lang->edit->temporary_savings = '临时保存列表';
|
||||
|
||||
$lang->edit->paging_prev = '上一个';
|
||||
$lang->edit->paging_next = '下一个';
|
||||
$lang->edit->paging_prev_help = '上一页。';
|
||||
$lang->edit->paging_next_help = '下一页。';
|
||||
|
||||
$lang->edit->toc = '列表';
|
||||
$lang->edit->close_help = '关闭帮助';
|
||||
|
||||
$lang->edit->confirm_submit_without_saving = '尚有未保存的段落。\\n确定要提交吗?';
|
||||
|
||||
$lang->edit->image_align = '图片对齐';
|
||||
$lang->edit->attached_files = '附件';
|
||||
|
||||
$lang->edit->fontcolor_input = '폰트색 직접입력';
|
||||
$lang->edit->fontbgcolor_input = '배경색 직접입력';
|
||||
$lang->edit->pangram = '무궁화 꽃이 피었습니다';
|
||||
|
||||
$lang->edit->table_caption_position = '표 제목(caption) 및 배치';
|
||||
$lang->edit->table_caption = '표 제목(caption)';
|
||||
$lang->edit->table_header = '머리글 셀(th)';
|
||||
$lang->edit->table_header_none = '없음';
|
||||
$lang->edit->table_header_left = '왼쪽';
|
||||
$lang->edit->table_header_top = '위쪽';
|
||||
$lang->edit->table_header_both = '모두';
|
||||
$lang->edit->table_size = '표 크기';
|
||||
$lang->edit->table_width = '표 폭';
|
||||
|
||||
$lang->edit->upper_left = '상단좌측';
|
||||
$lang->edit->upper_center = '상단중앙';
|
||||
$lang->edit->upper_right = '상단우측';
|
||||
$lang->edit->bottom_left = '하단좌측';
|
||||
$lang->edit->bottom_center = '하단중앙';
|
||||
$lang->edit->bottom_right = '하단우측';
|
||||
|
||||
$lang->edit->no_image = '첨부된 이미지가 없습니다.';
|
||||
$lang->edit->no_multimedia = '첨부된 동영상이 없습니다.';
|
||||
$lang->edit->no_attachment = '첨부된 파일이 없습니다.';
|
||||
$lang->edit->insert_selected = '선택 넣기';
|
||||
$lang->edit->delete_selected = '선택 삭제';
|
||||
|
||||
$lang->edit->fieldset = '글상자';
|
||||
$lang->edit->paragraph = '문단';
|
||||
|
||||
$lang->edit->autosave_format = '글을 쓰기 시작한지 <strong>%s</strong>이 지났습니다. 마지막 저장 시간은 <strong>%s</strong> 입니다.';
|
||||
$lang->edit->autosave_hour = '%d시간';
|
||||
$lang->edit->autosave_hours = '%d시간';
|
||||
$lang->edit->autosave_min = '%d분';
|
||||
$lang->edit->autosave_mins = '%d분';
|
||||
$lang->edit->autosave_hour_ago = '%d시간 전';
|
||||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
$lang->edit->break_or_paragraph = 'Enter는 줄바꿈, Shift+Enter는 문단바꿈입니다.';
|
||||
?>
|
||||
|
|
@ -1,282 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* @file modules/editor/lang/zh-TW.lang.php
|
||||
* @author NHN (developers@xpressengine.com) 翻譯:royallin
|
||||
* @brief 網頁編輯器(editor)模組正體中文語言
|
||||
**/
|
||||
|
||||
$lang->editor = '網頁編輯器';
|
||||
$lang->component_name = '組件';
|
||||
$lang->component_version = '版本';
|
||||
$lang->component_author = '作者';
|
||||
$lang->component_link = '連結';
|
||||
$lang->component_date = '編寫日期';
|
||||
$lang->component_license = '版權';
|
||||
$lang->component_history = '更新紀錄';
|
||||
$lang->component_description = '說明';
|
||||
$lang->component_extra_vars = '變數設置';
|
||||
$lang->component_grant = '權限設置';
|
||||
$lang->content_style = '內容樣式';
|
||||
$lang->content_font = '內容字體';
|
||||
$lang->content_font_size = '字體大小';
|
||||
|
||||
$lang->about_component = '組件簡介';
|
||||
$lang->about_component_grant = '除預設組件外,可設置延伸組件的使用權限<br />(全部解除時,任何用戶都可使用)。';
|
||||
$lang->about_component_mid = '可以指定使用編輯器組件的對象。<br />(全部解除時,任何用戶都可使用)。';
|
||||
|
||||
$lang->msg_component_is_not_founded = '找不到%s 組件說明!';
|
||||
$lang->msg_component_is_inserted = '您選擇的組件已插入!';
|
||||
$lang->msg_component_is_first_order = '您選擇的組件已達最頂端位置!';
|
||||
$lang->msg_component_is_last_order = '您選擇的組件已達最底端位置!';
|
||||
$lang->msg_load_saved_doc = "有自動儲存的內容,確定要恢復嗎?\n儲存內容後,自動儲存的內容將會被刪除。";
|
||||
$lang->msg_auto_saved = '已自動儲存!';
|
||||
|
||||
$lang->cmd_disable = '暫停';
|
||||
$lang->cmd_enable = '啟動';
|
||||
|
||||
$lang->editor_skin = '編輯器面板';
|
||||
$lang->upload_file_grant = '檔案上傳權限';
|
||||
$lang->enable_default_component_grant = '預設組件使用權限';
|
||||
$lang->enable_component_grant = '組件使用權限';
|
||||
$lang->enable_html_grant = 'HTML編輯權限';
|
||||
$lang->enable_autosave = '內容自動儲存';
|
||||
$lang->height_resizable = '高度調整';
|
||||
$lang->editor_height = '編輯器高度';
|
||||
|
||||
$lang->about_editor_skin = '選擇編輯器面板。';
|
||||
$lang->about_content_style = '修改內容時,可指定要顯示的內容樣式';
|
||||
$lang->about_content_font = '修改內容時,可指定要顯示的內容字體。<br/>如果沒有指定的話,以系統預設為主。<br/> 以逗號(,)區分多個字體。';
|
||||
$lang->about_content_font_size = '修改內容時,可指定要顯示的內容字體大小。<br/>請輸入單位,像是12px, 1em等。';
|
||||
$lang->about_upload_file_grant = '設置上傳檔案的權限(全部解除為無限制)。';
|
||||
$lang->about_default_component_grant = '設置編輯器預設組件的使用權限(全部解除為無限制)。';
|
||||
$lang->about_editor_height = '指定編輯器的預設高度。';
|
||||
$lang->about_editor_height_resizable = '允許用戶拖曳編輯器高度。';
|
||||
$lang->about_enable_html_grant = 'HTML原始碼編輯權限設置。';
|
||||
$lang->about_enable_autosave = '發表主題時,開啟內容自動儲存功能。';
|
||||
|
||||
$lang->edit->fontname = '字體';
|
||||
$lang->edit->fontsize = '大小';
|
||||
$lang->edit->use_paragraph = '段落功能';
|
||||
$lang->edit->fontlist = array(
|
||||
'新細明體' => '新細明體',
|
||||
'標楷體' => '標楷體',
|
||||
'細明體' => '細明體',
|
||||
'Arial' => 'Arial',
|
||||
'Arial Black' => 'Arial Black',
|
||||
'Tahoma' => 'Tahoma',
|
||||
'Verdana' => 'Verdana',
|
||||
'Sans-serif' => 'Sans-serif',
|
||||
'Serif' => 'Serif',
|
||||
'Monospace' => 'Monospace',
|
||||
'Cursive' => 'Cursive',
|
||||
'Fantasy' => 'Fantasy',
|
||||
);
|
||||
|
||||
$lang->edit->header = '樣式';
|
||||
$lang->edit->header_list = array(
|
||||
'h1' => '標題 1',
|
||||
'h2' => '標題 2',
|
||||
'h3' => '標題 3',
|
||||
'h4' => '標題 4',
|
||||
'h5' => '標題 5',
|
||||
'h6' => '標題 6',
|
||||
);
|
||||
|
||||
$lang->edit->submit = '確認';
|
||||
|
||||
$lang->edit->fontcolor = '文字顏色';
|
||||
$lang->edit->fontcolor_apply = '套用文字顏色';
|
||||
$lang->edit->fontcolor_more = '更多文字顏色';
|
||||
$lang->edit->fontbgcolor = '背景顏色';
|
||||
$lang->edit->fontbgcolor_apply = '套用背景顏色';
|
||||
$lang->edit->fontbgcolor_more = '更多背景顏色';
|
||||
$lang->edit->bold = '粗體';
|
||||
$lang->edit->italic = '斜體';
|
||||
$lang->edit->underline = '底線';
|
||||
$lang->edit->strike = '虛線';
|
||||
$lang->edit->sup = '上標';
|
||||
$lang->edit->sub = '下標';
|
||||
$lang->edit->redo = '重新操作';
|
||||
$lang->edit->undo = '返回操作';
|
||||
$lang->edit->align_left = '靠左對齊';
|
||||
$lang->edit->align_center = '置中對齊';
|
||||
$lang->edit->align_right = '靠右對齊';
|
||||
$lang->edit->align_justify = '左右對齊';
|
||||
$lang->edit->add_indent = '縮排';
|
||||
$lang->edit->remove_indent = '凸排';
|
||||
$lang->edit->list_number = '編號';
|
||||
$lang->edit->list_bullet = '清單符號';
|
||||
$lang->edit->remove_format = '移除格式';
|
||||
|
||||
$lang->edit->help_remove_format = '移除格式';
|
||||
$lang->edit->help_strike_through = '文字刪除線';
|
||||
$lang->edit->help_align_full = '左右對齊';
|
||||
|
||||
$lang->edit->help_fontcolor = '文字顏色';
|
||||
$lang->edit->help_fontbgcolor = '背景顏色';
|
||||
$lang->edit->help_bold = '粗體';
|
||||
$lang->edit->help_italic = '斜體';
|
||||
$lang->edit->help_underline = '底線';
|
||||
$lang->edit->help_strike = '虛線';
|
||||
$lang->edit->help_sup = '上標';
|
||||
$lang->edit->help_sub = '下標';
|
||||
$lang->edit->help_redo = '重新操作';
|
||||
$lang->edit->help_undo = '返回操作';
|
||||
$lang->edit->help_align_left = '靠左對齊';
|
||||
$lang->edit->help_align_center = '置中對齊';
|
||||
$lang->edit->help_align_right = '靠右對齊';
|
||||
$lang->edit->help_align_justify = '左右對齊';
|
||||
$lang->edit->help_add_indent = '縮排';
|
||||
$lang->edit->help_remove_indent = '凸排';
|
||||
$lang->edit->help_list_number = '編號';
|
||||
$lang->edit->help_list_bullet = '清單符號';
|
||||
$lang->edit->help_use_paragraph = '換行請按 Ctrl+Backspace (快速發表主題:Alt+S)';
|
||||
|
||||
$lang->edit->url = '連結';
|
||||
$lang->edit->blockquote = '引用';
|
||||
$lang->edit->table = '表格';
|
||||
$lang->edit->image = '圖片';
|
||||
$lang->edit->multimedia = '影片';
|
||||
$lang->edit->emoticon = '表情符號';
|
||||
|
||||
$lang->edit->file = '檔案';
|
||||
$lang->edit->upload = '上傳';
|
||||
$lang->edit->upload_file = '上傳附檔';
|
||||
$lang->edit->upload_list = '檔案列表';
|
||||
$lang->edit->link_file = '插入檔案';
|
||||
$lang->edit->delete_selected = '刪除所選';
|
||||
|
||||
$lang->edit->icon_align_article = '段落';
|
||||
$lang->edit->icon_align_left = '靠左';
|
||||
$lang->edit->icon_align_middle = '置中';
|
||||
$lang->edit->icon_align_right = '靠右';
|
||||
|
||||
$lang->about_dblclick_in_editor = '對背景,文字,圖片,引用等組件按兩下,即可對其相關組件進行詳細設置。';
|
||||
|
||||
|
||||
$lang->edit->rich_editor = '所見即得';
|
||||
$lang->edit->html_editor = 'HTML';
|
||||
$lang->edit->extension ='延伸組件';
|
||||
$lang->edit->help = '使用說明';
|
||||
$lang->edit->help_command = '熱鍵指引';
|
||||
|
||||
$lang->edit->lineheight = '行距';
|
||||
$lang->edit->fontbgsampletext = 'ㄅㄆㄇ';
|
||||
|
||||
$lang->edit->hyperlink = '超連結';
|
||||
$lang->edit->target_blank = '新視窗';
|
||||
|
||||
$lang->edit->quotestyle1 = '左側實線';
|
||||
$lang->edit->quotestyle2 = '引用符號';
|
||||
$lang->edit->quotestyle3 = '實線';
|
||||
$lang->edit->quotestyle4 = '實線 + 背景';
|
||||
$lang->edit->quotestyle5 = '粗框';
|
||||
$lang->edit->quotestyle6 = '虛線';
|
||||
$lang->edit->quotestyle7 = '虛線 + 背景';
|
||||
$lang->edit->quotestyle8 = '取消';
|
||||
|
||||
|
||||
$lang->edit->jumptoedit = '跳過編輯工具列';
|
||||
$lang->edit->set_sel = '表格';
|
||||
$lang->edit->row = '行';
|
||||
$lang->edit->col = '列';
|
||||
$lang->edit->add_one_row = '新增一行';
|
||||
$lang->edit->del_one_row = '刪除一行';
|
||||
$lang->edit->add_one_col = '新增一列';
|
||||
$lang->edit->del_one_col = '刪除一列';
|
||||
|
||||
$lang->edit->table_config = '設置';
|
||||
$lang->edit->border_width = '邊框寬度';
|
||||
$lang->edit->border_color = '邊框顏色';
|
||||
$lang->edit->add = '新增';
|
||||
$lang->edit->del = '刪除';
|
||||
$lang->edit->search_color = '其他顏色';
|
||||
$lang->edit->table_backgroundcolor = '背景顏色';
|
||||
$lang->edit->special_character = '特殊符號';
|
||||
$lang->edit->insert_special_character = '插入特殊符號';
|
||||
$lang->edit->close_special_character = '關閉';
|
||||
$lang->edit->symbol = '一般符號';
|
||||
$lang->edit->number_unit = '數字、單位';
|
||||
$lang->edit->circle_bracket = '圓、括弧';
|
||||
$lang->edit->korean = '韓國語';
|
||||
$lang->edit->greece = '希臘語';
|
||||
$lang->edit->Latin = '拉丁語';
|
||||
$lang->edit->japan = '日本語';
|
||||
$lang->edit->selected_symbol = '選擇符號';
|
||||
|
||||
$lang->edit->search_replace = '搜尋/置換';
|
||||
$lang->edit->close_search_replace = '關閉搜尋/置換圖層';
|
||||
$lang->edit->replace_all = '全部置換';
|
||||
$lang->edit->search_words = '搜尋文字';
|
||||
$lang->edit->replace_words = '置換文字';
|
||||
$lang->edit->next_search_words = '搜尋下一個';
|
||||
$lang->edit->edit_height_control = '設定大小';
|
||||
|
||||
$lang->edit->merge_cells = '合併儲存格';
|
||||
$lang->edit->split_row = '分割行';
|
||||
$lang->edit->split_col = '分割列';
|
||||
|
||||
$lang->edit->toggle_list = '摺疊/展開';
|
||||
$lang->edit->minimize_list = '最小化';
|
||||
|
||||
$lang->edit->move = '搬移';
|
||||
$lang->edit->refresh = '重整';
|
||||
$lang->edit->materials = '素材';
|
||||
$lang->edit->temporary_savings = '暫存檔列表';
|
||||
|
||||
$lang->edit->paging_prev = '前頁';
|
||||
$lang->edit->paging_next = '次頁';
|
||||
$lang->edit->paging_prev_help = '往上一頁';
|
||||
$lang->edit->paging_next_help = '往下一頁';
|
||||
|
||||
$lang->edit->toc = '目錄';
|
||||
$lang->edit->close_help = '關閉';
|
||||
|
||||
$lang->edit->confirm_submit_without_saving = '有內容尚未儲存。\\n是否要繼續進行?';
|
||||
|
||||
$lang->edit->image_align = '圖片對齊';
|
||||
$lang->edit->attached_files = '附加檔案';
|
||||
|
||||
$lang->edit->fontcolor_input = '自訂文字顏色';
|
||||
$lang->edit->fontbgcolor_input = '自訂背景顏色';
|
||||
$lang->edit->pangram = '實際範例';
|
||||
|
||||
$lang->edit->table_caption_position = '標籤位置';
|
||||
$lang->edit->table_caption = '表格標籤(caption)';
|
||||
$lang->edit->table_header = '標頭';
|
||||
$lang->edit->table_header_none = '無';
|
||||
$lang->edit->table_header_left = '左側';
|
||||
$lang->edit->table_header_top = '頂端';
|
||||
$lang->edit->table_header_both = '兩者';
|
||||
$lang->edit->table_size = '大小';
|
||||
$lang->edit->table_width = '寬度';
|
||||
|
||||
$lang->edit->upper_left = '左上方';
|
||||
$lang->edit->upper_center = '正上方';
|
||||
$lang->edit->upper_right = '右上方';
|
||||
$lang->edit->bottom_left = '左下方';
|
||||
$lang->edit->bottom_center = '正下方';
|
||||
$lang->edit->bottom_right = '右下方';
|
||||
|
||||
$lang->edit->no_image = '目前沒有圖片';
|
||||
$lang->edit->no_multimedia = '目前沒有影片';
|
||||
$lang->edit->no_attachment = '目前沒有附檔';
|
||||
$lang->edit->insert_selected = '插入所選';
|
||||
$lang->edit->delete_selected = '刪除所選';
|
||||
|
||||
$lang->edit->fieldset = '區域';
|
||||
$lang->edit->paragraph = '段落';
|
||||
|
||||
$lang->edit->autosave_format = '正在編寫 <strong>%s</strong> 最後儲存時間 <strong>%s</strong> ';
|
||||
$lang->edit->autosave_hour = '%d小時';
|
||||
$lang->edit->autosave_hours = '%d小時';
|
||||
$lang->edit->autosave_min = '%d分';
|
||||
$lang->edit->autosave_mins = '%d分';
|
||||
$lang->edit->autosave_hour_ago = '%d小時前';
|
||||
$lang->edit->autosave_hours_ago = '%d小時前';
|
||||
$lang->edit->autosave_min_ago = '%d分前';
|
||||
$lang->edit->autosave_mins_ago = '%d分前';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '已超過上傳大小限制無法上傳附檔。';
|
||||
$lang->edit->break_or_paragraph = '按 Enter鍵換行,按 Shift+Enter分隔段落。';
|
||||
?>
|
||||
7
modules/editor/ruleset/componentOrderAndUse.xml
Normal file
7
modules/editor/ruleset/componentOrderAndUse.xml
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<ruleset version="1.5.0">
|
||||
<customrules>
|
||||
</customrules>
|
||||
<fields>
|
||||
</fields>
|
||||
</ruleset>
|
||||
9
modules/editor/ruleset/generalConfig.xml
Normal file
9
modules/editor/ruleset/generalConfig.xml
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<ruleset version="1.5.0">
|
||||
<customrules>
|
||||
</customrules>
|
||||
<fields>
|
||||
<field name="editor_height" required="true" rule="number" />
|
||||
<field name="comment_editor_height" required="true" rule="number" />
|
||||
</fields>
|
||||
</ruleset>
|
||||
7
modules/editor/ruleset/setupComponent.xml
Normal file
7
modules/editor/ruleset/setupComponent.xml
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<ruleset version="1.5.0">
|
||||
<customrules>
|
||||
</customrules>
|
||||
<fields>
|
||||
</fields>
|
||||
</ruleset>
|
||||
|
|
@ -1,81 +1,81 @@
|
|||
@charset "utf-8";
|
||||
/* NHN (developers@xpressengine.com) */
|
||||
|
||||
/* -- Button Gray Style -- */
|
||||
.buttonGray,
|
||||
.buttonGray button{ position:relative; border:0; margin:0; display:inline-block; color:#000; font-family:Tahoma, Sans-serif; cursor:pointer; text-decoration:none !important; white-space:nowrap; vertical-align:middle; background-color:transparent; background-image:url(../img/buttonGray.gif) !important; background-repeat:no-repeat;}
|
||||
.buttonGray{ margin-right:2px;}
|
||||
.buttonGray button{ left:2px; overflow:visible;}
|
||||
|
||||
/* Medium Size */
|
||||
.buttonGray.medium { background-position:left -30px;}
|
||||
.buttonGray.medium button{ height:24px; padding:0 10px 0 8px; *padding:0 5px 0 3px; font:12px/25px Sans-serif; background-position:right -30px; _top:-1px;}
|
||||
|
||||
/* Strong Button */
|
||||
.buttonGray.strong * { font-weight:bold !important;}
|
||||
|
||||
/* Icon Add */
|
||||
.buttonGray .icon { position:relative; margin-right:5px; vertical-align:middle;}
|
||||
|
||||
/* Button Reset */
|
||||
.buttonDrEditor,
|
||||
.buttonDrEditor a,
|
||||
.buttonDrEditor button,
|
||||
.buttonDrEditor input { position:relative; margin:0; display:inline-block; text-decoration:none !important; border:0; font-size:12px; font-family:Tahoma, Sans-serif; white-space:nowrap; background:url(../img/buttonWhite.gif) no-repeat; vertical-align:middle; overflow:visible; color:#333;}
|
||||
.buttonDrEditor { height:23px; padding:0; margin-right:2px; background-position:left top;}
|
||||
.buttonDrEditor a,
|
||||
.buttonDrEditor button,
|
||||
.buttonDrEditor input{ left:2px; *vertical-align:top; cursor:pointer;}
|
||||
|
||||
/* Button Size */
|
||||
.buttonDrEditor.large { height:29px; background-position:left -30px; }
|
||||
.buttonDrEditor.xLarge { height:35px; background-position:left -65px; }
|
||||
.buttonDrEditor.small { height:18px; background-position:left -107px; }
|
||||
.buttonDrEditor a,
|
||||
.buttonDrEditor button,
|
||||
.buttonDrEditor input { height:23px; padding:0 10px 0 8px; font-size:12px; line-height:23px; background-position:right top;}
|
||||
.buttonDrEditor.large a,
|
||||
.buttonDrEditor.large button,
|
||||
.buttonDrEditor.large input { height:30px; padding:0 10px 0 8px; font-size:16px; line-height:29px; background-position:right -30px;}
|
||||
.buttonDrEditor.xLarge a,
|
||||
.buttonDrEditor.xLarge button,
|
||||
.buttonDrEditor.xLarge input { height:35px; padding:0 10px 0 8px; font-size:20px; line-height:35px; background-position:right -65px;}
|
||||
.buttonDrEditor.small a,
|
||||
.buttonDrEditor.small button,
|
||||
.buttonDrEditor.small input { height:18px; padding:0 6px 0 4px; font-size:11px; line-height:18px; background-position:right -107px;}
|
||||
|
||||
/* Button Text Color */
|
||||
.buttonDrEditor *:hover,
|
||||
.buttonDrEditor *:active,
|
||||
.buttonDrEditor *:focus{ color:#690;}
|
||||
.buttonDrEditor.green,
|
||||
.buttonDrEditor.green a,
|
||||
.buttonDrEditor.green button,
|
||||
.buttonDrEditor.green input { background-image:url(../img/buttonGreen.gif); color:#fff;}
|
||||
.buttonDrEditor.green *:hover,
|
||||
.buttonDrEditor.green *:active,
|
||||
.buttonDrEditor.green *:focus{ color:#ff0;}
|
||||
.buttonDrEditor.black,
|
||||
.buttonDrEditor.black a,
|
||||
.buttonDrEditor.black button,
|
||||
.buttonDrEditor.black input { background-image:url(../img/buttonBlack.gif); color:#fff;}
|
||||
.buttonDrEditor.black *:hover,
|
||||
.buttonDrEditor.black *:active,
|
||||
.buttonDrEditor.black *:focus{ color:#ff0;}
|
||||
.buttonDrEditor.red,
|
||||
.buttonDrEditor.red a,
|
||||
.buttonDrEditor.red button,
|
||||
.buttonDrEditor.red input { background-image:url(../img/buttonRed.gif); color:#fff;}
|
||||
.buttonDrEditor.red *:hover,
|
||||
.buttonDrEditor.red *:active,
|
||||
.buttonDrEditor.red *:focus{ color:#ff0;}
|
||||
.buttonDrEditor.blue,
|
||||
.buttonDrEditor.blue a,
|
||||
.buttonDrEditor.blue button,
|
||||
.buttonDrEditor.blue input { background-image:url(../img/buttonBlue.gif); color:#fff;}
|
||||
.buttonDrEditor.blue *:hover,
|
||||
.buttonDrEditor.blue *:active,
|
||||
.buttonDrEditor.blue *:focus{ color:#ff0;}
|
||||
|
||||
/* Button Text Strong */
|
||||
.buttonDrEditor.strong * { font-weight:bold !important;}
|
||||
@charset "utf-8";
|
||||
/* NHN (developers@xpressengine.com) */
|
||||
|
||||
/* -- Button Gray Style -- */
|
||||
.buttonGray,
|
||||
.buttonGray button{ position:relative; border:0; margin:0; display:inline-block; color:#000; font-family:Tahoma, Sans-serif; cursor:pointer; text-decoration:none !important; white-space:nowrap; vertical-align:middle; background-color:transparent; background-image:url(../img/buttonGray.gif) !important; background-repeat:no-repeat;}
|
||||
.buttonGray{ margin-right:2px;}
|
||||
.buttonGray button{ left:2px; overflow:visible;}
|
||||
|
||||
/* Medium Size */
|
||||
.buttonGray.medium { background-position:left -30px;}
|
||||
.buttonGray.medium button{ height:24px; padding:0 10px 0 8px; *padding:0 5px 0 3px; font:12px/25px Sans-serif; background-position:right -30px; _top:-1px;}
|
||||
|
||||
/* Strong Button */
|
||||
.buttonGray.strong * { font-weight:bold !important;}
|
||||
|
||||
/* Icon Add */
|
||||
.buttonGray .icon { position:relative; margin-right:5px; vertical-align:middle;}
|
||||
|
||||
/* Button Reset */
|
||||
.buttonDrEditor,
|
||||
.buttonDrEditor a,
|
||||
.buttonDrEditor button,
|
||||
.buttonDrEditor input { position:relative; margin:0; display:inline-block; text-decoration:none !important; border:0; font-size:12px; font-family:Tahoma, Sans-serif; white-space:nowrap; background:url(../img/buttonWhite.gif) no-repeat; vertical-align:middle; overflow:visible; color:#333;}
|
||||
.buttonDrEditor { height:23px; padding:0; margin-right:2px; background-position:left top;}
|
||||
.buttonDrEditor a,
|
||||
.buttonDrEditor button,
|
||||
.buttonDrEditor input{ left:2px; *vertical-align:top; cursor:pointer;}
|
||||
|
||||
/* Button Size */
|
||||
.buttonDrEditor.large { height:29px; background-position:left -30px; }
|
||||
.buttonDrEditor.xLarge { height:35px; background-position:left -65px; }
|
||||
.buttonDrEditor.small { height:18px; background-position:left -107px; }
|
||||
.buttonDrEditor a,
|
||||
.buttonDrEditor button,
|
||||
.buttonDrEditor input { height:23px; padding:0 10px 0 8px; font-size:12px; line-height:23px; background-position:right top;}
|
||||
.buttonDrEditor.large a,
|
||||
.buttonDrEditor.large button,
|
||||
.buttonDrEditor.large input { height:30px; padding:0 10px 0 8px; font-size:16px; line-height:29px; background-position:right -30px;}
|
||||
.buttonDrEditor.xLarge a,
|
||||
.buttonDrEditor.xLarge button,
|
||||
.buttonDrEditor.xLarge input { height:35px; padding:0 10px 0 8px; font-size:20px; line-height:35px; background-position:right -65px;}
|
||||
.buttonDrEditor.small a,
|
||||
.buttonDrEditor.small button,
|
||||
.buttonDrEditor.small input { height:18px; padding:0 6px 0 4px; font-size:11px; line-height:18px; background-position:right -107px;}
|
||||
|
||||
/* Button Text Color */
|
||||
.buttonDrEditor *:hover,
|
||||
.buttonDrEditor *:active,
|
||||
.buttonDrEditor *:focus{ color:#690;}
|
||||
.buttonDrEditor.green,
|
||||
.buttonDrEditor.green a,
|
||||
.buttonDrEditor.green button,
|
||||
.buttonDrEditor.green input { background-image:url(../img/buttonGreen.gif); color:#fff;}
|
||||
.buttonDrEditor.green *:hover,
|
||||
.buttonDrEditor.green *:active,
|
||||
.buttonDrEditor.green *:focus{ color:#ff0;}
|
||||
.buttonDrEditor.black,
|
||||
.buttonDrEditor.black a,
|
||||
.buttonDrEditor.black button,
|
||||
.buttonDrEditor.black input { background-image:url(../img/buttonBlack.gif); color:#fff;}
|
||||
.buttonDrEditor.black *:hover,
|
||||
.buttonDrEditor.black *:active,
|
||||
.buttonDrEditor.black *:focus{ color:#ff0;}
|
||||
.buttonDrEditor.red,
|
||||
.buttonDrEditor.red a,
|
||||
.buttonDrEditor.red button,
|
||||
.buttonDrEditor.red input { background-image:url(../img/buttonRed.gif); color:#fff;}
|
||||
.buttonDrEditor.red *:hover,
|
||||
.buttonDrEditor.red *:active,
|
||||
.buttonDrEditor.red *:focus{ color:#ff0;}
|
||||
.buttonDrEditor.blue,
|
||||
.buttonDrEditor.blue a,
|
||||
.buttonDrEditor.blue button,
|
||||
.buttonDrEditor.blue input { background-image:url(../img/buttonBlue.gif); color:#fff;}
|
||||
.buttonDrEditor.blue *:hover,
|
||||
.buttonDrEditor.blue *:active,
|
||||
.buttonDrEditor.blue *:focus{ color:#ff0;}
|
||||
|
||||
/* Button Text Strong */
|
||||
.buttonDrEditor.strong * { font-weight:bold !important;}
|
||||
|
|
|
|||
|
|
@ -1,348 +1,348 @@
|
|||
@charset "utf-8";
|
||||
/* NHN (developers@xpressengine.com) */
|
||||
|
||||
/* Textyle Editor */
|
||||
.textyleEditor{ position:relative; *zoom:1; margin:0 0 1em 0;}
|
||||
.textyleEditor:after{ content:""; display:block; clear:both;}
|
||||
.textyleEditor .editorContainer{ position:relative; width:100%; display:table; table-layout:fixed;}
|
||||
.textyleEditor .editorContainer .editorArea{ opacity:1; filter:alpha(opacity=100);}
|
||||
.textyleEditor .editorContainer .writeArea{ position:relative; *zoom:1;}
|
||||
|
||||
/* Writing Toolbar */
|
||||
.wToolbarContainer{ position:relative; margin:20px 0 40px 0; height:62px; overflow:hidden; z-index:1000; _zoom:1;}
|
||||
.wToolbarContainer.more{ height:auto;}
|
||||
.wToolbar{ position:relative; height:62px; margin:0 10px; *zoom:1; background-image:url(../img/bgWritingToolbarCenter.gif); background-repeat:repeat-x; }
|
||||
.wToolbarContainer.more .wToolbar{ height:auto; padding:0 0 5px 0; background-position:0 bottom; border-top:1px solid #bec2ca;}
|
||||
.wToolbar .cap{ position:absolute; top:0; height:62px; background-repeat:no-repeat; font-size:0; line-height:0; background:url(../img/bgWritingToolbar.gif) no-repeat; z-index:1;}
|
||||
.wToolbar .top{ display:none; position:absolute; top:-1px; width:10px; height:7px; background:url(../img/bgWritingToolbarMore.gif) no-repeat; z-index:2;}
|
||||
.wToolbarContainer.more .cap{ height:100%; _top:auto; _bottom:0; _height:300px; background:url(../img/bgWritingToolbarMore.gif) no-repeat;}
|
||||
.wToolbarContainer.more .top{ display:block;}
|
||||
.wToolbar .capLeft{ width:10px; left:-10px; background-position:left top;}
|
||||
.wToolbar .topLeft{ left:-10px; background-position:left top;}
|
||||
.wToolbarContainer.more .cap.capLeft{ background-position:left bottom;}
|
||||
.wToolbar .capRight{ width:10px; right:-10px; background-position:right top;}
|
||||
.wToolbar .topRight{ right:-10px; background-position:right top;}
|
||||
.wToolbarContainer.more .capRight{ background-position:right bottom;}
|
||||
|
||||
.wToolbar ul{ position:relative; margin:0 70px 0 0; padding:0; *zoom:1; height:58px; z-index:2;}
|
||||
.wToolbarContainer.more ul{ height:auto; _height:58px; background:url(../img/hrToolbarMore.gif);}
|
||||
.wToolbar ul:after{ content:""; display:block; clear:both;}
|
||||
.wToolbar li{ position:relative; float:left; list-style:none; margin-bottom:4px; width:11.1%; *width:11%; _margin-top:0; _margin-right:-1px;}
|
||||
.wToolbar li button{ position:relative; padding:0; width:100%; height:57px; *height:59px; border:0; background:transparent; cursor:pointer; font-size:11px; color:#44506a; background-image:url(../img/iconWritingToolbar.gif); background-repeat:no-repeat;}
|
||||
.wToolbar li button .tx{ display:inline-block; padding-top:37px; height:20px;}
|
||||
.wToolbar li.more{ float:none; position:absolute; top:1px; right:-70px; width:60px; background:url(../img/vrToolbarMore.gif) repeat-y; _zoom:1;}
|
||||
.wToolbar li.more button{ width:60px;}
|
||||
.wToolbarContainer.more li{ margin-bottom:0;}
|
||||
.wToolbarContainer.more li.more{ height:100%;}
|
||||
.wToolbarContainer.more li.more button{ height:100%; _height:114px; background:url(../img/iconWritingToolbarFolder.gif) no-repeat center !important;}
|
||||
.wToolbarContainer.more li.more button .nx{ top:0;}
|
||||
.wToolbar li.hover button{ background-color:#bfc3cb;}
|
||||
|
||||
.wToolbar li.hx button{ background-position:center top;}
|
||||
.wToolbar li.txt button{ background-position:center -100px;}
|
||||
.wToolbar li.link button{ background-position:center -200px;}
|
||||
.wToolbar li.list button{ background-position:center -300px;}
|
||||
.wToolbar li.quote button{ background-position:center -400px;}
|
||||
.wToolbar li.img button{ background-position:center -500px;}
|
||||
.wToolbar li.movie button{ background-position:center -600px;}
|
||||
.wToolbar li.file button{ background-position:center -700px;}
|
||||
.wToolbar li.hr button{ background-position:center -800px;}
|
||||
.wToolbar li.index button{ background-position:center -900px;}
|
||||
.wToolbar li.material button{ background-position:center -1000px;}
|
||||
.wToolbar li.help button{ background-position:center -1100px;}
|
||||
.wToolbar li.more button{ background-position:center -1187px;}
|
||||
|
||||
.wToolbar li .dragable{ position:absolute; display:none; bottom:38px; right:0; padding:0; border:0; width:20px; height:20px; overflow:hidden; background:url(../img/iconMovable.gif) no-repeat center center !important; cursor:move; font-size:0; line-height:0; text-indent:-200%;}
|
||||
.wToolbarContainer.more li.hover .dragable{ _display:block;}
|
||||
.wToolbarContainer.more li:hover .dragable{ display:block;}
|
||||
.wToolbar li .nx{ position:absolute; text-align:center; top:8px; left:50%; font:bold 10px Tahoma, Geneva, sans-serif; color:#fff; width:18px; height:18px; line-height:16px; opacity:.7; background:url(../img/bgShortcut.png) no-repeat center top; _background:none; _filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='./modules/editor/skins/dreditor/img/bgShortcut.png', sizingMethod='crop');}
|
||||
|
||||
/* Writing Area + Material Area */
|
||||
.wArea,
|
||||
.mArea{ display:none; position:relative; *zoom:1; padding:20px; margin:0;}
|
||||
.wArea{ background:#f5f5f5; border:1px solid #e9e9e9;}
|
||||
.mArea{ background:url(../img/bgChess76.gif); border:1px solid #666;}
|
||||
.mArea{ margin:20px 0;}
|
||||
.wArea.open,
|
||||
.mArea.open{ display:block;}
|
||||
.wArea .cap,
|
||||
.mArea .cap{ position:absolute; width:10px; height:10px; background-repeat:no-repeat; font-size:0; line-height:0; overflow:hidden;}
|
||||
.wArea .cap{ background-image:url(../img/bgRouningF5.gif);}
|
||||
.mArea .cap{ background-image:url(../img/bgRouning76.gif);}
|
||||
.wArea .cap.capTL,
|
||||
.mArea .cap.capTL{ top:-1px; left:-1px; background-position:left top;}
|
||||
.wArea .cap.capTR,
|
||||
.mArea .cap.capTR{ top:-1px; right:-1px; background-position:right top;}
|
||||
.wArea .cap.capBL,
|
||||
.mArea .cap.capBL{ bottom:-1px; left:-1px; background-position:left bottom;}
|
||||
.wArea .cap.capBR,
|
||||
.mArea .cap.capBR{ bottom:-1px; right:-1px; background-position:right bottom;}
|
||||
.wArea .h4,
|
||||
.mArea .h4{ font-size:16px; margin:0 0 10px 0;}
|
||||
.wArea .h4{ color:#555;}
|
||||
.mArea .h4{ color:#fff;}
|
||||
.mArea .controls{ position:absolute; top:20px; right:20px;}
|
||||
|
||||
/* Writing Area */
|
||||
.wArea .buttonArea{ position:relative; text-align:left; *zoom:1;}
|
||||
.wArea .buttonArea .buttonGray button{ _top:0;}
|
||||
.wArea .buttonArea .info{ display:inline; padding:0 0 0 15px; color:#777;}
|
||||
.wArea .inputTitle{ width:98%; border:1px solid #ddd; background:#fff url(../img/bgInputText.gif) no-repeat; color:#767676; padding:6px 0 0 10px; height:21px; font-size:14px; margin-bottom:10px;}
|
||||
.wArea .inputLink{ width:98%; border:1px solid #ddd; background:#fff url(../img/bgInputText.gif) no-repeat; color:#767676; padding:6px 0 0 10px; height:21px; font-size:11px; margin-bottom:10px;}
|
||||
.wArea .inputText{ width:98%; border:1px solid #ddd; background:#fff url(../img/bgInputText.gif) no-repeat; color:#767676; padding:6px 0 0 10px; height:21px; font-size:12px; margin-bottom:10px;}
|
||||
.wArea .inputFile{ width:100%; border:1px solid #ddd; background:#fff url(../img/bgInputText.gif) no-repeat; color:#767676; padding:6px 0 0 10px; height:29px; font-size:12px; margin-bottom:10px;}
|
||||
.wArea .inputTextarea{ width:98%; border:1px solid #ddd; background:#fff url(../img/bgInputText.gif) no-repeat; color:#767676; padding:10px 0 0 10px; height:150px; font-size:12px; line-height:1.5; margin-bottom:10px;}
|
||||
.wArea .inputRadio{ width:13px; height:13px; vertical-align:middle;}
|
||||
.wArea .hr{ border-top:1px solid #e6e6e6; border-bottom:1px solid #fff; font-size:0; line-height:0; overflow:hidden; height:0; margin:15px -20px;}
|
||||
|
||||
/* Material Area */
|
||||
.mArea .reload{ position:absolute; top:24px; right:40px; width:15px; height:16px; padding:0; cursor:pointer; border:0; *margin:0 5px 0 0; background:transparent url(../img/buttonRefresh.gif) no-repeat; vertical-align:middle;}
|
||||
.mArea .reload span{ position:absolute; width:0; height:0; font-size:0; line-height:0; overflow:hidden; z-index:-1; visibility:hidden;}
|
||||
.mArea .close{ position:absolute; top:24px; right:20px; width:15px; height:16px; padding:0; cursor:pointer; border:0; *margin:0 5px 0 0; background:transparent url(../img/buttonClose.gif) no-repeat; vertical-align:middle;}
|
||||
.mArea .close span{ position:absolute; width:0; height:0; font-size:0; line-height:0; overflow:hidden; z-index:-1; visibility:hidden;}
|
||||
.mArea .noData{ position:relative; border-top:1px solid #ddd; border-bottom:1px solid #ddd; background:#fff; padding:10px 20px;}
|
||||
.mArea dl{ position:relative; background:#fff;}
|
||||
.mArea dt{ position:relative; padding:7px 15px; font-weight:bold; color:#fff; background:#555; border-top:1px solid #444;}
|
||||
.mArea dd{ margin:0 15px; padding:5px 0;}
|
||||
.mArea dd .buttonDrEditor{ position:absolute; top:8px; right:10px;}
|
||||
.mArea .eArea{ border:0; padding:0;}
|
||||
|
||||
.mArea .paginate{ position:relative; width:100px; margin:0 auto; text-align:center; padding:0; font-size:12px; color:#fff; *zoom:1;}
|
||||
.mArea .paginate:after{ content:""; display:block; clear:both;}
|
||||
.mArea .paginate button{ width:17px; height:17px; padding:0; background:transparent url(../img/buttonPaginate.gif) no-repeat 0 0; cursor:pointer; border:0; vertical-align:middle;}
|
||||
.mArea .paginate button span{ position:absolute; width:0; height:0; font-size:0; line-height:0; overflow:hidden; visibility:hidden; z-index:-1;}
|
||||
.mArea .paginate .prev{ float:left; background-position:left top;}
|
||||
.mArea .paginate .next{ float:right; background-position:right top;}
|
||||
|
||||
/* Writing Area Blank */
|
||||
.editorArea .wArea { display:block;}
|
||||
.wArea.blank{ padding:15px 30px; margin:0;}
|
||||
.wArea.blank dt{ font-size:12px; font-weight:bold; color:#333;}
|
||||
.wArea.blank dd{ margin:0 0 5px 0; color:#767676;}
|
||||
.wArea.blank .drEditorBugReport{ position:absolute; margin:0 !important; top:20px; right:30px;}
|
||||
|
||||
/* Writing Area Hx */
|
||||
.wArea.hx ul{ margin:0 0 5px 0; padding:0; list-style:none;}
|
||||
.wArea.hx li{ display:inline !important; font-weight:bold !important; color:#333 !important;}
|
||||
.wArea.hx li label{ margin-right:30px;}
|
||||
.wArea.hx .inputTitle{ font-weight:bold !important;}
|
||||
.wArea.hx li.h3,
|
||||
.wArea.hx .inputTitle.h3{ font-size:18px !important; height:28px;}
|
||||
.wArea.hx li.h4,
|
||||
.wArea.hx .inputTitle.h4{ font-size:16px !important; height:26px;}
|
||||
.wArea.hx li.h5,
|
||||
.wArea.hx .inputTitle.h5{ font-size:13px !important; height:23px;}
|
||||
|
||||
/* Writing Area List */
|
||||
.wArea.list .toolbar{ border:1px solid #ddd; list-style:none; margin:0 0 -1px 0; padding:0; background:#fafafa; padding:6px 20px;}
|
||||
.wArea.list .toolbar li{ display:inline; margin-right:5px;}
|
||||
.wArea.list .toolbar li button{ position:relative; width:23px; height:22px; padding:0; border:0; cursor:pointer; background-image:url(../img/buttonListToolbar.gif); background-repeat:no-repeat;}
|
||||
.wArea.list .toolbar li button:hover,
|
||||
.wArea.list .toolbar li button:active,
|
||||
.wArea.list .toolbar li button:focus{ border:1px solid #ddd;}
|
||||
.wArea.list .toolbar li button.type_disc{ background-position:center 0;}
|
||||
.wArea.list .toolbar li button.type_circle{ background-position:center -30px;}
|
||||
.wArea.list .toolbar li button.type_square{ background-position:center -60px;}
|
||||
.wArea.list .toolbar li button.type_decimal{ background-position:center -90px;}
|
||||
.wArea.list .toolbar li button.type_lower-alpha{ background-position:center -120px;}
|
||||
.wArea.list .toolbar li button.type_upper-alpha{ background-position:center -150px;}
|
||||
.wArea.list .toolbar li button.type_lower-roman{ background-position:center -180px;}
|
||||
.wArea.list .toolbar li button.type_upper-roman{ background-position:center -210px;}
|
||||
.wArea.list .toolbar li button span{ position:absolute; width:0; height:0; font-size:0; line-height:0; overflow:hidden; visibility:hidden;}
|
||||
|
||||
.wArea.list .listArea{ padding:1em 0; margin-bottom:1em; background:#fff url(../img/bgInputText.gif) no-repeat; border:1px solid #ddd;}
|
||||
.wArea.list .listArea ul{ border:0;}
|
||||
.wArea.list .listArea input{ border:0; border-bottom:1px solid #ddd; background:transparent; width:96%; padding:3px 4px;}
|
||||
|
||||
/* Writing Area Image */
|
||||
.wArea.img .image{ position:relative; margin-bottom:10px; background:#fff; padding:0; _width:100%; overflow:hidden;}
|
||||
.wArea.img .image img{ max-width:100%;}
|
||||
.wArea.img .uploading{ display:none; padding:0 0 0 20px; background:url(../img/iconLoading.gif) no-repeat left center;}
|
||||
.wArea.img .uploading button{ border:2px solid #ccc; background:#eee; cursor:pointer; font-size:11px; font-weight:bold; padding:0; overflow:visible; vertical-align:middle; margin:0 10px;}
|
||||
.wArea.img .info{ font-size:11px; color:#737fa1; margin:0;}
|
||||
.wArea.img .resize{ display:none;}
|
||||
.wArea.img .resize.open{ display:block;}
|
||||
.wArea.img .resize dl *{ vertical-align:middle;}
|
||||
.wArea.img .resize dt{ display:inline; font-weight:bold;}
|
||||
.wArea.img .resize dd{ display:inline; margin:0;}
|
||||
.wArea.img .resize .width{ width:60px; text-align:right; padding:1px 4px; height:16px;}
|
||||
.wArea.img .resize .width.original{ background:#d4d0c8;}
|
||||
.wArea.img .resize .resizeInfo{ margin:0 0 0 1em;}
|
||||
.wArea.img .resize .resizeError{ display:none; padding:.5em 3.5em; margin:1em 6px 1em 0; color:#ff6633; background:#fff url(../img/iconCheckSmall.gif) no-repeat 2em center;; border:1px solid #ddd;}
|
||||
.wArea.img .resize .resizeError.open{ display:block;}
|
||||
.wArea.img .align{ display:none;}
|
||||
.wArea.img .align dt{ display:inline; font-weight:bold;}
|
||||
.wArea.img .align dd{ display:inline; margin:0;}
|
||||
|
||||
/* Writing Area File */
|
||||
.wArea.file .buttonFileUpload,
|
||||
.wArea.file .buttonFileUpload button{ position:relative; display:inline-block; height:39px; background-color:transparent; background-image:url(../img/buttonUpload.gif); background-repeat:no-repeat; cursor:pointer;}
|
||||
.wArea.file .buttonFileUpload{ background-position:left top;}
|
||||
.wArea.file .buttonFileUpload button{ left:7px; border:0; padding:0 15px 0 25px; background-position:right top; font-size:12px; font-weight:bold; color:#fff; line-height:39px; overflow:visible;}
|
||||
.wArea.file .buttonFileUpload .swfupload{ margin:0 !important; cursor:pointer;}
|
||||
.wArea.file .info{ font-size:11px; color:#737fa1;}
|
||||
.wArea.file .info .help{ position:relative; font-size:11px; border:0; background:none; padding:0; cursor:pointer; *zoom:1; color:#f66; overflow:visible;}
|
||||
.wArea.file .inputFile{ display:none;}
|
||||
.wArea.file .inputFile.open{ display:block;}
|
||||
.wArea.file dl{ margin:0; padding:0;}
|
||||
.wArea.file dd{ font-size:11px; margin-bottom:3px; margin:0;}
|
||||
.wArea.file dd strong{ margin-right:15px; color:#555; font-weight:normal;}
|
||||
.wArea.file dd em{ color:#767676; font-style:normal; margin-right:15px;}
|
||||
.wArea.file dd .buttonDelete{ border:0; padding:0; width:17px; height:17px; vertical-align:middle; cursor:pointer; background:url(../img/buttonTableDataX.gif) no-repeat center center;}
|
||||
.wArea.file dd .buttonDelete span{ position:absolute; width:0; height:0; overflow:hidden; font-size:0; line-height:0; z-index:-1; visibility:hidden;}
|
||||
.wArea.file .summary{ text-align:right; font-size:11px;}
|
||||
.wArea.file .summary{ color:#555;}
|
||||
.wArea.file .summary em{ color:#767676; font-style:normal; margin-left:10px;}
|
||||
|
||||
/* Writing Area Hr */
|
||||
.wArea.hr ul{ margin:0 0 20px 0; padding:0; list-style:none; font-size:12px; color:#555; *zoom:1;}
|
||||
.wArea.hr li{ position:relative; margin-bottom:10px; *zoom:1;}
|
||||
.wArea.hr li label{ position:relative; background:#f5f5f5; padding:0 15px 0 30px; margin-left:-30px; z-index:1; display:none;}
|
||||
.wArea.hr li .inputRadio{ position:relative; z-index:10; display:none;}
|
||||
.wArea.hr .inputToggle,
|
||||
.wArea.hr .inputContinue{ position:absolute; top:0; border:1px solid #ddd; font-size:12px; color:#767676; width:150px; padding:3px 4px; height:14px; text-align:right; background-image:url(../img/bgInputText.gif); background-repeat:no-repeat;}
|
||||
.wArea.hr .inputShow{ right:170px;}
|
||||
.wArea.hr .inputHide,
|
||||
.wArea.hr .inputContinue{ right:0;}
|
||||
.wArea.hr .hRule{ position:absolute; width:100%; top:50%; left:0; display:block; border-top:1px solid #e6e6e6; border-bottom:1px solid #fff; font-size:0; line-height:0; overflow:hidden; height:0;}
|
||||
|
||||
/* Edit Area */
|
||||
.eArea{ position:relative; padding:0 20px; margin:0; font-size:12px; border:1px solid #fff; overflow:visible !important; _zoom:1;}
|
||||
.eArea.xe_dr_hr{ padding-top:1em; padding-bottom:1em;}
|
||||
.eArea a{ color:#648AB9;}
|
||||
.eArea button.holder{ position:absolute; left:-2000px; top:0px; }
|
||||
.eArea .eTool{ display:none;}
|
||||
.eArea .eFocusTrigger{ position:absolute; top:0; left:0; font-size:0; line-height:0; border:0; background:transparent; width:1px; height:1px; overflow:hidden; opacity:0; filter:alpha(opacity=0);}
|
||||
.eArea .eFocusTrigger:focus{ border:1px solid;}
|
||||
.eArea .del{ display:none; position:absolute; top:0; right:20px; border:0; padding:0; width:20px; height:20px; cursor:pointer; background:transparent url(../img/buttonTableDataX.gif) no-repeat center;}
|
||||
.eArea .del span{position:absolute; width:0; height:0; overflow:hidden; font-size:0; line-height:0; z-index:-1; visibility:hidden;}
|
||||
|
||||
.eArea.xe_dr_img p{ overflow:hidden; width:100%;}
|
||||
.eArea.xe_dr_img p img{ *padding:1em 0;}
|
||||
|
||||
.eFocus{ border:1px solid #d8d8de; z-index:999; background:#f9f9f9;}
|
||||
.eArea .cap{ display:none;}
|
||||
.eFocus .cap{ display:none; *display:block; position:absolute; width:10px; height:10px; background-repeat:no-repeat; font-size:0; line-height:0; overflow:hidden;}
|
||||
.eFocus .cap.capTL{ top:-1px; left:-1px; background-position:left top;}
|
||||
.eFocus .cap.capTR{ top:-1px; right:-1px; background-position:right top;}
|
||||
.eFocus .cap.capBL{ bottom:-1px; left:-1px; background-position:left bottom;}
|
||||
.eFocus .cap.capBR{ bottom:-1px; right:-1px; background-position:right bottom;}
|
||||
|
||||
.eFocus .eTool{ display:block; height:24px; position:absolute !important; z-index:99; top:-24px !important; left:-1px !important; white-space:nowrap; margin:0 0 0 2px !important; padding:0 5px 0 0 !important; border:0 !important; background:url(../img/bgEtool.gif) no-repeat right top !important;}
|
||||
.eFocus .eTool li{ position:relative; left:-2px; display:block; float:left; height:22px; padding:2px 3px 0 5px; background:url(../img/vrContentNavigation.gif) no-repeat left center;}
|
||||
.eFocus .eTool li.edit{ background:url(../img/bgEtool.gif) no-repeat left top;}
|
||||
.eFocus .eTool li button{ border:0; padding:0; overflow:visible; cursor:pointer; background-color:transparent; font-size:11px; vertical-align:middle;}
|
||||
.eFocus .eTool li.move button,
|
||||
.eFocus .eTool li.delete button{ overflow:hidden; width:17px; height:17px; background-position:center center; background-repeat:no-repeat;}
|
||||
.eFocus .eTool li.move button{ background-image:url(../img/iconMovable.gif); cursor:move;}
|
||||
.eFocus .eTool li.delete button{ background-image:url(../img/buttonWasteBox.gif);}
|
||||
.eFocus .eTool li.move button span,
|
||||
.eFocus .eTool li.delete button span{ position:absolute; width:0; height:0; overflow:hidden; font-size:0; line-height:0; z-index:-1; visibility:hidden;}
|
||||
.eFocus .del{ display:block;}
|
||||
|
||||
/* txEditor */
|
||||
.txEditor{ position:relative; width:98%; padding-right:10px; margin-bottom:10px; border:1px solid #ddd; *zoom:1; background:#fff;}
|
||||
.txEditor .toolbar{ position:relative; z-index:10; margin:0 -10px 0 0; padding:6px 10px; list-style:none; *zoom:1; background:#fafafa; border-bottom:1px solid #ddd;}
|
||||
.txEditor .toolbar:after{ content:""; display:block; clear:both;}
|
||||
.txEditor .toolbar li{ position:relative; float:left; margin-right:5px;}
|
||||
.txEditor .toolbar li button{ border:0; padding:0; height:22px; background-color:transparent; background-image:url(../img/buttonEditorToolbar.gif); background-repeat:no-repeat; cursor:pointer; vertical-align:middle;}
|
||||
.txEditor .toolbar li button:hover,
|
||||
.txEditor .toolbar li button:active,
|
||||
.txEditor .toolbar li button:focus,
|
||||
.txEditor .toolbar li button.active{ border:1px solid #ddd;}
|
||||
.txEditor .toolbar li button span{ position:absolute; width:0; height:0; overflow:hidden; font-size:0; line-height:0; z-index:-1; visibility:hidden;}
|
||||
.txEditor .toolbar li select{ font-size:12px; vertical-align:middle; height:21px;}
|
||||
.txEditor .toolbar li.undo button{ width:23px; background-position:center -210px;}
|
||||
.txEditor .toolbar li.redo button{ width:23px; background-position:center -240px;}
|
||||
.txEditor .toolbar li.strong button{ width:23px; background-position:center 0;}
|
||||
.txEditor .toolbar li.em button{ width:23px; background-position:center -30px;}
|
||||
.txEditor .toolbar li.underline button{ width:23px; background-position:center -60px;}
|
||||
.txEditor .toolbar li.del button{ width:23px; background-position:center -90px;}
|
||||
.txEditor .toolbar li.vRule{ padding-left:10px; margin:0 5px; background:url(../img/vrEditorToolbar.gif) no-repeat left center;}
|
||||
.txEditor .toolbar li.aHref button{ width:23px; background-position:center -120px;}
|
||||
.txEditor .toolbar li.fSize{ margin-right:5px;}
|
||||
.txEditor .toolbar li.fColor{ margin-right:5px; z-index:2;}
|
||||
.txEditor .toolbar li.fColor button{ width:28px; background-position:center -150px;}
|
||||
.txEditor .toolbar li.bgColor{ margin-right:5px; z-index:1;}
|
||||
.txEditor .toolbar li.bgColor button{ width:28px; background-position:center -180px;}
|
||||
.txEditor .toolbar li.left button{ width:23px; background-position:center -270px;}
|
||||
.txEditor .toolbar li.center button{ width:23px; background-position:center -300px;}
|
||||
.txEditor .toolbar li.right button{ width:23px; background-position:center -330px;}
|
||||
.txEditor .toolbar li.justify button{ width:23px; background-position:center -360px;}
|
||||
.txEditor .toolbar li.character button{ width:23px; background-position:center -390px;}
|
||||
.txEditor .toolbar li.list button{ width:23px; background-image:url(../img/buttonListToolbar.gif); background-repeat:no-repeat;}
|
||||
.txEditor .toolbar li.disc button{ background-position:center 0;}
|
||||
.txEditor .toolbar li.circle button{ background-position:center -30px;}
|
||||
.txEditor .toolbar li.square button{ background-position:center -60px;}
|
||||
.txEditor .toolbar li.decimal button{ background-position:center -90px;}
|
||||
.txEditor .toolbar li.alphaLower button{ background-position:center -120px;}
|
||||
.txEditor .toolbar li.alphaUpper button{ background-position:center -150px;}
|
||||
.txEditor .toolbar li.romanLower button{ background-position:center -180px;}
|
||||
.txEditor .toolbar li.romanUpper button{ background-position:center -210px;}
|
||||
.txEditor .toolbar li .uri{ display:none; position:absolute; left:10px; top:25px; padding:15px 20px; border:1px solid #ddd; background:#fff; *zoom:1; *white-space:nowrap;}
|
||||
.txEditor .toolbar li .uri h3{ font-size:12px; margin:0 0 .5em 0;}
|
||||
.txEditor .toolbar li .uri .link{ border:1px solid #ccc; padding:3px 4px; height:14px; font-size:12px; width:200px; font-size:11px; color:#666;}
|
||||
.txEditor .toolbar li .uri p{ margin:.5em 0;}
|
||||
.txEditor .toolbar li .uri p input{ width:13px; height:13px; margin:0 3px 0 0; vertical-align:middle;}
|
||||
.txEditor .toolbar li .uri .btn_area{ text-align:center;}
|
||||
.txEditor .toolbar li .uri .btn_area .buttonGray,
|
||||
.txEditor .toolbar li .uri .btn_area .buttonGray button{ background-image:url(../img/buttonGray.gif);}
|
||||
.txEditor .toolbar li .uri .btn_area .buttonGray{ background-position:left top;}
|
||||
.txEditor .toolbar li .uri .btn_area .buttonGray button{ background-position:right top; line-height:18px; border:0 !important; width:auto; padding:0 6px 0 4px;}
|
||||
.txEditor .toolbar li .palette{ display:none; width:211px; position:absolute; left:0; top:25px; padding:8px 0 7px 8px; margin:0; list-style:none; border:1px solid #ddd; background:#fff; *zoom:1;}
|
||||
.txEditor .toolbar li .palette:after{ content:""; display:block; clear:both;}
|
||||
.txEditor .toolbar li .palette.open{ display:block;}
|
||||
.txEditor .toolbar li .palette li{ float:left; margin:0 1px 1px 0; font-size:0; line-height:0;}
|
||||
.txEditor .toolbar li .palette button{ position:relative; overflow:hidden; width:11px; height:11px;}
|
||||
.txEditor .toolbar li .palette button span{ position:absolute; width:0; height:0; overflow:hidden; font-size:0; line-height:0; z-index:-1; visibility:hidden;}
|
||||
.txEditor .inputRichText{ position:relative; margin-right:-10px; position:relative; *zoom:1; z-index:1; padding:3px 0 3px 3px; background-image:url(../img/bgInputText.gif); background-repeat:no-repeat; background-position:0 0;}
|
||||
.txEditor .inputRichText iframe{ width:100%; height:136px; border:0; overflow-x:hidden;}
|
||||
.txEditor .resizeVertical{ position:relative; margin-right:-10px; border-top:1px solid #ddd; height:10px; background:url(../img/buttonResizeVertical.gif) no-repeat center center; *zoom:1; font-size:0; line-height:0;}
|
||||
.txEditor .resizeVertical button{ width:100%; height:10px; border:0; margin:0; padding:0; background:transparent; cursor:n-resize; vertical-align:middle;}
|
||||
.txEditor .resizeVertical button span{ position:absolute; width:0; height:0; font-size:0; line-height:0; overflow:hidden; visibility:hidden; z-index:-1;}
|
||||
|
||||
.txEditor .toolbar li.character .layer{ width:433px; height:242px; overflow:hidden; padding:0;}
|
||||
.txEditor .toolbar li.character .layer .close{ position:absolute; background:url(../img/buttonLayerClose.gif) no-repeat center; width:20px; height:21px; top:4px; right:3px; border:0 !important;}
|
||||
.txEditor .toolbar li.character .layer ul{ margin:0; padding:0; list-style:none;}
|
||||
.txEditor .toolbar li.character .layer h3{position:absolute; width:0; height:0; overflow:hidden; visibility:hidden;}
|
||||
.txEditor .toolbar li.character .layer .nav{ position:absolute; top:8px; left:-1px; overflow:hidden; white-space:nowrap; line-height:normal;}
|
||||
.txEditor .toolbar li.character .layer .nav li{ display:inline; margin:0 -4px 0 0; padding:0 8px; background:url(../img/vr_layer_character.gif) no-repeat 0 center;}
|
||||
.txEditor .toolbar li.character .layer .nav li a{ color:#444; text-decoration:none; letter-spacing:-1px;}
|
||||
.txEditor .toolbar li.character .layer .nav li a:hover,
|
||||
.txEditor .toolbar li.character .layer .nav li a:active,
|
||||
.txEditor .toolbar li.character .layer .nav li a:focus{ text-decoration:underline;}
|
||||
.txEditor .toolbar li.character .layer .nav li a.on{ font-weight:bold; color:#004790; display:inline;}
|
||||
.txEditor .toolbar li.character .layer .list{ position:absolute; left:7px; top:30px; width:421px; height:172px; background:url(../img/bx_character.gif) no-repeat;}
|
||||
.txEditor .toolbar li.character .layer .list li{ position:relative; top:1px; left:1px; float:left; width:20px; height:18px; margin:0 1px 1px 0;}
|
||||
.txEditor .toolbar li.character .layer .list li button{ width:20px; height:18px; background:none; padding:0; vertical-align:top;}
|
||||
.txEditor .toolbar li.character .layer .list li button:hover,
|
||||
.txEditor .toolbar li.character .layer .list li button:active,
|
||||
.txEditor .toolbar li.character .layer .list li button:focus{ border:2px solid #27c11a;}
|
||||
.txEditor .toolbar li.character .layer .list li button span{ overflow:visible; font-size:12px; width:auto; height:auto; position:relative; visibility:visible; line-height:normal; z-index:1;}
|
||||
.txEditor .toolbar li.character .layer p{ position:absolute; top:212px; left:7px; margin:0 !important;}
|
||||
.txEditor .toolbar li.character .layer p *{ vertical-align:top;}
|
||||
.txEditor .toolbar li.character .layer p label{ position:relative; top:4px; margin:0 7px 0 0; color:#333; letter-spacing:-1px; line-height:normal;}
|
||||
.txEditor .toolbar li.character .layer p input{ padding:3px 0 0 4px; margin:0 4px 0 0; width:300px; height:16px; border:1px solid #acacac; border-right:1px solid #dadada; border-bottom:1px solid #dadada; font-size:12px;}
|
||||
.txEditor .toolbar li.character .layer p button{ position:relative; *top:1px; width:38px; height:21px; background:url(../img/buttonLayerConfirm.gif) no-repeat; border:0 !important;}
|
||||
|
||||
.txEditor .toolbar .font9px { font-size:9px }
|
||||
.txEditor .toolbar .font10px { font-size:10px }
|
||||
.txEditor .toolbar .font11px { font-size:11px }
|
||||
.txEditor .toolbar .font12px { font-size:12px }
|
||||
.txEditor .toolbar .font14px { font-size:14px }
|
||||
.txEditor .toolbar .font16px { font-size:16px }
|
||||
.txEditor .toolbar .font18px { font-size:18px }
|
||||
.txEditor .toolbar .font20px { font-size:20px }
|
||||
.txEditor .toolbar .font24px { font-size:24px }
|
||||
.txEditor .toolbar .font28px { font-size:28px }
|
||||
.txEditor .toolbar .font32px { font-size:32px }
|
||||
.txEditor .toolbar .font36px { font-size:36px }
|
||||
|
||||
/* Drag and Drop */
|
||||
.xe_dr_placeholder { background-color:#F8F4CE; margin:5px 0; height:20px; padding:10px 0; z-index:0; -moz-border-radius:5px; -webkit-border-radius:5px; z-index:1; }
|
||||
.drag_handle { position:absolute; height:100%; width:10px; top:0; opacity:.5; filter:alpha(opacity=50); background:#ddd url(../img/iconDragHandler.gif) no-repeat center; cursor:n-resize; margin:0 2px !important; padding:0 !important; border:0 !important; _zoom:1;}
|
||||
.drag_handle.left { left:0; }
|
||||
.drag_handle.right { right:0; }
|
||||
.eArea .drag_handle {display:none}
|
||||
.eFocus .drag_handle {display:block}
|
||||
@charset "utf-8";
|
||||
/* NHN (developers@xpressengine.com) */
|
||||
|
||||
/* Textyle Editor */
|
||||
.textyleEditor{ position:relative; *zoom:1; margin:0 0 1em 0;}
|
||||
.textyleEditor:after{ content:""; display:block; clear:both;}
|
||||
.textyleEditor .editorContainer{ position:relative; width:100%; display:table; table-layout:fixed;}
|
||||
.textyleEditor .editorContainer .editorArea{ opacity:1; filter:alpha(opacity=100);}
|
||||
.textyleEditor .editorContainer .writeArea{ position:relative; *zoom:1;}
|
||||
|
||||
/* Writing Toolbar */
|
||||
.wToolbarContainer{ position:relative; margin:20px 0 40px 0; height:62px; overflow:hidden; z-index:1000; _zoom:1;}
|
||||
.wToolbarContainer.more{ height:auto;}
|
||||
.wToolbar{ position:relative; height:62px; margin:0 10px; *zoom:1; background-image:url(../img/bgWritingToolbarCenter.gif); background-repeat:repeat-x; }
|
||||
.wToolbarContainer.more .wToolbar{ height:auto; padding:0 0 5px 0; background-position:0 bottom; border-top:1px solid #bec2ca;}
|
||||
.wToolbar .cap{ position:absolute; top:0; height:62px; background-repeat:no-repeat; font-size:0; line-height:0; background:url(../img/bgWritingToolbar.gif) no-repeat; z-index:1;}
|
||||
.wToolbar .top{ display:none; position:absolute; top:-1px; width:10px; height:7px; background:url(../img/bgWritingToolbarMore.gif) no-repeat; z-index:2;}
|
||||
.wToolbarContainer.more .cap{ height:100%; _top:auto; _bottom:0; _height:300px; background:url(../img/bgWritingToolbarMore.gif) no-repeat;}
|
||||
.wToolbarContainer.more .top{ display:block;}
|
||||
.wToolbar .capLeft{ width:10px; left:-10px; background-position:left top;}
|
||||
.wToolbar .topLeft{ left:-10px; background-position:left top;}
|
||||
.wToolbarContainer.more .cap.capLeft{ background-position:left bottom;}
|
||||
.wToolbar .capRight{ width:10px; right:-10px; background-position:right top;}
|
||||
.wToolbar .topRight{ right:-10px; background-position:right top;}
|
||||
.wToolbarContainer.more .capRight{ background-position:right bottom;}
|
||||
|
||||
.wToolbar ul{ position:relative; margin:0 70px 0 0; padding:0; *zoom:1; height:58px; z-index:2;}
|
||||
.wToolbarContainer.more ul{ height:auto; _height:58px; background:url(../img/hrToolbarMore.gif);}
|
||||
.wToolbar ul:after{ content:""; display:block; clear:both;}
|
||||
.wToolbar li{ position:relative; float:left; list-style:none; margin-bottom:4px; width:11.1%; *width:11%; _margin-top:0; _margin-right:-1px;}
|
||||
.wToolbar li button{ position:relative; padding:0; width:100%; height:57px; *height:59px; border:0; background:transparent; cursor:pointer; font-size:11px; color:#44506a; background-image:url(../img/iconWritingToolbar.gif); background-repeat:no-repeat;}
|
||||
.wToolbar li button .tx{ display:inline-block; padding-top:37px; height:20px;}
|
||||
.wToolbar li.more{ float:none; position:absolute; top:1px; right:-70px; width:60px; background:url(../img/vrToolbarMore.gif) repeat-y; _zoom:1;}
|
||||
.wToolbar li.more button{ width:60px;}
|
||||
.wToolbarContainer.more li{ margin-bottom:0;}
|
||||
.wToolbarContainer.more li.more{ height:100%;}
|
||||
.wToolbarContainer.more li.more button{ height:100%; _height:114px; background:url(../img/iconWritingToolbarFolder.gif) no-repeat center !important;}
|
||||
.wToolbarContainer.more li.more button .nx{ top:0;}
|
||||
.wToolbar li.hover button{ background-color:#bfc3cb;}
|
||||
|
||||
.wToolbar li.hx button{ background-position:center top;}
|
||||
.wToolbar li.txt button{ background-position:center -100px;}
|
||||
.wToolbar li.link button{ background-position:center -200px;}
|
||||
.wToolbar li.list button{ background-position:center -300px;}
|
||||
.wToolbar li.quote button{ background-position:center -400px;}
|
||||
.wToolbar li.img button{ background-position:center -500px;}
|
||||
.wToolbar li.movie button{ background-position:center -600px;}
|
||||
.wToolbar li.file button{ background-position:center -700px;}
|
||||
.wToolbar li.hr button{ background-position:center -800px;}
|
||||
.wToolbar li.index button{ background-position:center -900px;}
|
||||
.wToolbar li.material button{ background-position:center -1000px;}
|
||||
.wToolbar li.help button{ background-position:center -1100px;}
|
||||
.wToolbar li.more button{ background-position:center -1187px;}
|
||||
|
||||
.wToolbar li .dragable{ position:absolute; display:none; bottom:38px; right:0; padding:0; border:0; width:20px; height:20px; overflow:hidden; background:url(../img/iconMovable.gif) no-repeat center center !important; cursor:move; font-size:0; line-height:0; text-indent:-200%;}
|
||||
.wToolbarContainer.more li.hover .dragable{ _display:block;}
|
||||
.wToolbarContainer.more li:hover .dragable{ display:block;}
|
||||
.wToolbar li .nx{ position:absolute; text-align:center; top:8px; left:50%; font:bold 10px Tahoma, Geneva, sans-serif; color:#fff; width:18px; height:18px; line-height:16px; opacity:.7; background:url(../img/bgShortcut.png) no-repeat center top; _background:none; _filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='./modules/editor/skins/dreditor/img/bgShortcut.png', sizingMethod='crop');}
|
||||
|
||||
/* Writing Area + Material Area */
|
||||
.wArea,
|
||||
.mArea{ display:none; position:relative; *zoom:1; padding:20px; margin:0;}
|
||||
.wArea{ background:#f5f5f5; border:1px solid #e9e9e9;}
|
||||
.mArea{ background:url(../img/bgChess76.gif); border:1px solid #666;}
|
||||
.mArea{ margin:20px 0;}
|
||||
.wArea.open,
|
||||
.mArea.open{ display:block;}
|
||||
.wArea .cap,
|
||||
.mArea .cap{ position:absolute; width:10px; height:10px; background-repeat:no-repeat; font-size:0; line-height:0; overflow:hidden;}
|
||||
.wArea .cap{ background-image:url(../img/bgRouningF5.gif);}
|
||||
.mArea .cap{ background-image:url(../img/bgRouning76.gif);}
|
||||
.wArea .cap.capTL,
|
||||
.mArea .cap.capTL{ top:-1px; left:-1px; background-position:left top;}
|
||||
.wArea .cap.capTR,
|
||||
.mArea .cap.capTR{ top:-1px; right:-1px; background-position:right top;}
|
||||
.wArea .cap.capBL,
|
||||
.mArea .cap.capBL{ bottom:-1px; left:-1px; background-position:left bottom;}
|
||||
.wArea .cap.capBR,
|
||||
.mArea .cap.capBR{ bottom:-1px; right:-1px; background-position:right bottom;}
|
||||
.wArea .h4,
|
||||
.mArea .h4{ font-size:16px; margin:0 0 10px 0;}
|
||||
.wArea .h4{ color:#555;}
|
||||
.mArea .h4{ color:#fff;}
|
||||
.mArea .controls{ position:absolute; top:20px; right:20px;}
|
||||
|
||||
/* Writing Area */
|
||||
.wArea .buttonArea{ position:relative; text-align:left; *zoom:1;}
|
||||
.wArea .buttonArea .buttonGray button{ _top:0;}
|
||||
.wArea .buttonArea .info{ display:inline; padding:0 0 0 15px; color:#777;}
|
||||
.wArea .inputTitle{ width:98%; border:1px solid #ddd; background:#fff url(../img/bgInputText.gif) no-repeat; color:#767676; padding:6px 0 0 10px; height:21px; font-size:14px; margin-bottom:10px;}
|
||||
.wArea .inputLink{ width:98%; border:1px solid #ddd; background:#fff url(../img/bgInputText.gif) no-repeat; color:#767676; padding:6px 0 0 10px; height:21px; font-size:11px; margin-bottom:10px;}
|
||||
.wArea .inputText{ width:98%; border:1px solid #ddd; background:#fff url(../img/bgInputText.gif) no-repeat; color:#767676; padding:6px 0 0 10px; height:21px; font-size:12px; margin-bottom:10px;}
|
||||
.wArea .inputFile{ width:100%; border:1px solid #ddd; background:#fff url(../img/bgInputText.gif) no-repeat; color:#767676; padding:6px 0 0 10px; height:29px; font-size:12px; margin-bottom:10px;}
|
||||
.wArea .inputTextarea{ width:98%; border:1px solid #ddd; background:#fff url(../img/bgInputText.gif) no-repeat; color:#767676; padding:10px 0 0 10px; height:150px; font-size:12px; line-height:1.5; margin-bottom:10px;}
|
||||
.wArea .inputRadio{ width:13px; height:13px; vertical-align:middle;}
|
||||
.wArea .hr{ border-top:1px solid #e6e6e6; border-bottom:1px solid #fff; font-size:0; line-height:0; overflow:hidden; height:0; margin:15px -20px;}
|
||||
|
||||
/* Material Area */
|
||||
.mArea .reload{ position:absolute; top:24px; right:40px; width:15px; height:16px; padding:0; cursor:pointer; border:0; *margin:0 5px 0 0; background:transparent url(../img/buttonRefresh.gif) no-repeat; vertical-align:middle;}
|
||||
.mArea .reload span{ position:absolute; width:0; height:0; font-size:0; line-height:0; overflow:hidden; z-index:-1; visibility:hidden;}
|
||||
.mArea .close{ position:absolute; top:24px; right:20px; width:15px; height:16px; padding:0; cursor:pointer; border:0; *margin:0 5px 0 0; background:transparent url(../img/buttonClose.gif) no-repeat; vertical-align:middle;}
|
||||
.mArea .close span{ position:absolute; width:0; height:0; font-size:0; line-height:0; overflow:hidden; z-index:-1; visibility:hidden;}
|
||||
.mArea .noData{ position:relative; border-top:1px solid #ddd; border-bottom:1px solid #ddd; background:#fff; padding:10px 20px;}
|
||||
.mArea dl{ position:relative; background:#fff;}
|
||||
.mArea dt{ position:relative; padding:7px 15px; font-weight:bold; color:#fff; background:#555; border-top:1px solid #444;}
|
||||
.mArea dd{ margin:0 15px; padding:5px 0;}
|
||||
.mArea dd .buttonDrEditor{ position:absolute; top:8px; right:10px;}
|
||||
.mArea .eArea{ border:0; padding:0;}
|
||||
|
||||
.mArea .paginate{ position:relative; width:100px; margin:0 auto; text-align:center; padding:0; font-size:12px; color:#fff; *zoom:1;}
|
||||
.mArea .paginate:after{ content:""; display:block; clear:both;}
|
||||
.mArea .paginate button{ width:17px; height:17px; padding:0; background:transparent url(../img/buttonPaginate.gif) no-repeat 0 0; cursor:pointer; border:0; vertical-align:middle;}
|
||||
.mArea .paginate button span{ position:absolute; width:0; height:0; font-size:0; line-height:0; overflow:hidden; visibility:hidden; z-index:-1;}
|
||||
.mArea .paginate .prev{ float:left; background-position:left top;}
|
||||
.mArea .paginate .next{ float:right; background-position:right top;}
|
||||
|
||||
/* Writing Area Blank */
|
||||
.editorArea .wArea { display:block;}
|
||||
.wArea.blank{ padding:15px 30px; margin:0;}
|
||||
.wArea.blank dt{ font-size:12px; font-weight:bold; color:#333;}
|
||||
.wArea.blank dd{ margin:0 0 5px 0; color:#767676;}
|
||||
.wArea.blank .drEditorBugReport{ position:absolute; margin:0 !important; top:20px; right:30px;}
|
||||
|
||||
/* Writing Area Hx */
|
||||
.wArea.hx ul{ margin:0 0 5px 0; padding:0; list-style:none;}
|
||||
.wArea.hx li{ display:inline !important; font-weight:bold !important; color:#333 !important;}
|
||||
.wArea.hx li label{ margin-right:30px;}
|
||||
.wArea.hx .inputTitle{ font-weight:bold !important;}
|
||||
.wArea.hx li.h3,
|
||||
.wArea.hx .inputTitle.h3{ font-size:18px !important; height:28px;}
|
||||
.wArea.hx li.h4,
|
||||
.wArea.hx .inputTitle.h4{ font-size:16px !important; height:26px;}
|
||||
.wArea.hx li.h5,
|
||||
.wArea.hx .inputTitle.h5{ font-size:13px !important; height:23px;}
|
||||
|
||||
/* Writing Area List */
|
||||
.wArea.list .toolbar{ border:1px solid #ddd; list-style:none; margin:0 0 -1px 0; padding:0; background:#fafafa; padding:6px 20px;}
|
||||
.wArea.list .toolbar li{ display:inline; margin-right:5px;}
|
||||
.wArea.list .toolbar li button{ position:relative; width:23px; height:22px; padding:0; border:0; cursor:pointer; background-image:url(../img/buttonListToolbar.gif); background-repeat:no-repeat;}
|
||||
.wArea.list .toolbar li button:hover,
|
||||
.wArea.list .toolbar li button:active,
|
||||
.wArea.list .toolbar li button:focus{ border:1px solid #ddd;}
|
||||
.wArea.list .toolbar li button.type_disc{ background-position:center 0;}
|
||||
.wArea.list .toolbar li button.type_circle{ background-position:center -30px;}
|
||||
.wArea.list .toolbar li button.type_square{ background-position:center -60px;}
|
||||
.wArea.list .toolbar li button.type_decimal{ background-position:center -90px;}
|
||||
.wArea.list .toolbar li button.type_lower-alpha{ background-position:center -120px;}
|
||||
.wArea.list .toolbar li button.type_upper-alpha{ background-position:center -150px;}
|
||||
.wArea.list .toolbar li button.type_lower-roman{ background-position:center -180px;}
|
||||
.wArea.list .toolbar li button.type_upper-roman{ background-position:center -210px;}
|
||||
.wArea.list .toolbar li button span{ position:absolute; width:0; height:0; font-size:0; line-height:0; overflow:hidden; visibility:hidden;}
|
||||
|
||||
.wArea.list .listArea{ padding:1em 0; margin-bottom:1em; background:#fff url(../img/bgInputText.gif) no-repeat; border:1px solid #ddd;}
|
||||
.wArea.list .listArea ul{ border:0;}
|
||||
.wArea.list .listArea input{ border:0; border-bottom:1px solid #ddd; background:transparent; width:96%; padding:3px 4px;}
|
||||
|
||||
/* Writing Area Image */
|
||||
.wArea.img .image{ position:relative; margin-bottom:10px; background:#fff; padding:0; _width:100%; overflow:hidden;}
|
||||
.wArea.img .image img{ max-width:100%;}
|
||||
.wArea.img .uploading{ display:none; padding:0 0 0 20px; background:url(../img/iconLoading.gif) no-repeat left center;}
|
||||
.wArea.img .uploading button{ border:2px solid #ccc; background:#eee; cursor:pointer; font-size:11px; font-weight:bold; padding:0; overflow:visible; vertical-align:middle; margin:0 10px;}
|
||||
.wArea.img .info{ font-size:11px; color:#737fa1; margin:0;}
|
||||
.wArea.img .resize{ display:none;}
|
||||
.wArea.img .resize.open{ display:block;}
|
||||
.wArea.img .resize dl *{ vertical-align:middle;}
|
||||
.wArea.img .resize dt{ display:inline; font-weight:bold;}
|
||||
.wArea.img .resize dd{ display:inline; margin:0;}
|
||||
.wArea.img .resize .width{ width:60px; text-align:right; padding:1px 4px; height:16px;}
|
||||
.wArea.img .resize .width.original{ background:#d4d0c8;}
|
||||
.wArea.img .resize .resizeInfo{ margin:0 0 0 1em;}
|
||||
.wArea.img .resize .resizeError{ display:none; padding:.5em 3.5em; margin:1em 6px 1em 0; color:#ff6633; background:#fff url(../img/iconCheckSmall.gif) no-repeat 2em center;; border:1px solid #ddd;}
|
||||
.wArea.img .resize .resizeError.open{ display:block;}
|
||||
.wArea.img .align{ display:none;}
|
||||
.wArea.img .align dt{ display:inline; font-weight:bold;}
|
||||
.wArea.img .align dd{ display:inline; margin:0;}
|
||||
|
||||
/* Writing Area File */
|
||||
.wArea.file .buttonFileUpload,
|
||||
.wArea.file .buttonFileUpload button{ position:relative; display:inline-block; height:39px; background-color:transparent; background-image:url(../img/buttonUpload.gif); background-repeat:no-repeat; cursor:pointer;}
|
||||
.wArea.file .buttonFileUpload{ background-position:left top;}
|
||||
.wArea.file .buttonFileUpload button{ left:7px; border:0; padding:0 15px 0 25px; background-position:right top; font-size:12px; font-weight:bold; color:#fff; line-height:39px; overflow:visible;}
|
||||
.wArea.file .buttonFileUpload .swfupload{ margin:0 !important; cursor:pointer;}
|
||||
.wArea.file .info{ font-size:11px; color:#737fa1;}
|
||||
.wArea.file .info .help{ position:relative; font-size:11px; border:0; background:none; padding:0; cursor:pointer; *zoom:1; color:#f66; overflow:visible;}
|
||||
.wArea.file .inputFile{ display:none;}
|
||||
.wArea.file .inputFile.open{ display:block;}
|
||||
.wArea.file dl{ margin:0; padding:0;}
|
||||
.wArea.file dd{ font-size:11px; margin-bottom:3px; margin:0;}
|
||||
.wArea.file dd strong{ margin-right:15px; color:#555; font-weight:normal;}
|
||||
.wArea.file dd em{ color:#767676; font-style:normal; margin-right:15px;}
|
||||
.wArea.file dd .buttonDelete{ border:0; padding:0; width:17px; height:17px; vertical-align:middle; cursor:pointer; background:url(../img/buttonTableDataX.gif) no-repeat center center;}
|
||||
.wArea.file dd .buttonDelete span{ position:absolute; width:0; height:0; overflow:hidden; font-size:0; line-height:0; z-index:-1; visibility:hidden;}
|
||||
.wArea.file .summary{ text-align:right; font-size:11px;}
|
||||
.wArea.file .summary{ color:#555;}
|
||||
.wArea.file .summary em{ color:#767676; font-style:normal; margin-left:10px;}
|
||||
|
||||
/* Writing Area Hr */
|
||||
.wArea.hr ul{ margin:0 0 20px 0; padding:0; list-style:none; font-size:12px; color:#555; *zoom:1;}
|
||||
.wArea.hr li{ position:relative; margin-bottom:10px; *zoom:1;}
|
||||
.wArea.hr li label{ position:relative; background:#f5f5f5; padding:0 15px 0 30px; margin-left:-30px; z-index:1; display:none;}
|
||||
.wArea.hr li .inputRadio{ position:relative; z-index:10; display:none;}
|
||||
.wArea.hr .inputToggle,
|
||||
.wArea.hr .inputContinue{ position:absolute; top:0; border:1px solid #ddd; font-size:12px; color:#767676; width:150px; padding:3px 4px; height:14px; text-align:right; background-image:url(../img/bgInputText.gif); background-repeat:no-repeat;}
|
||||
.wArea.hr .inputShow{ right:170px;}
|
||||
.wArea.hr .inputHide,
|
||||
.wArea.hr .inputContinue{ right:0;}
|
||||
.wArea.hr .hRule{ position:absolute; width:100%; top:50%; left:0; display:block; border-top:1px solid #e6e6e6; border-bottom:1px solid #fff; font-size:0; line-height:0; overflow:hidden; height:0;}
|
||||
|
||||
/* Edit Area */
|
||||
.eArea{ position:relative; padding:0 20px; margin:0; font-size:12px; border:1px solid #fff; overflow:visible !important; _zoom:1;}
|
||||
.eArea.xe_dr_hr{ padding-top:1em; padding-bottom:1em;}
|
||||
.eArea a{ color:#648AB9;}
|
||||
.eArea button.holder{ position:absolute; left:-2000px; top:0px; }
|
||||
.eArea .eTool{ display:none;}
|
||||
.eArea .eFocusTrigger{ position:absolute; top:0; left:0; font-size:0; line-height:0; border:0; background:transparent; width:1px; height:1px; overflow:hidden; opacity:0; filter:alpha(opacity=0);}
|
||||
.eArea .eFocusTrigger:focus{ border:1px solid;}
|
||||
.eArea .del{ display:none; position:absolute; top:0; right:20px; border:0; padding:0; width:20px; height:20px; cursor:pointer; background:transparent url(../img/buttonTableDataX.gif) no-repeat center;}
|
||||
.eArea .del span{position:absolute; width:0; height:0; overflow:hidden; font-size:0; line-height:0; z-index:-1; visibility:hidden;}
|
||||
|
||||
.eArea.xe_dr_img p{ overflow:hidden; width:100%;}
|
||||
.eArea.xe_dr_img p img{ *padding:1em 0;}
|
||||
|
||||
.eFocus{ border:1px solid #d8d8de; z-index:999; background:#f9f9f9;}
|
||||
.eArea .cap{ display:none;}
|
||||
.eFocus .cap{ display:none; *display:block; position:absolute; width:10px; height:10px; background-repeat:no-repeat; font-size:0; line-height:0; overflow:hidden;}
|
||||
.eFocus .cap.capTL{ top:-1px; left:-1px; background-position:left top;}
|
||||
.eFocus .cap.capTR{ top:-1px; right:-1px; background-position:right top;}
|
||||
.eFocus .cap.capBL{ bottom:-1px; left:-1px; background-position:left bottom;}
|
||||
.eFocus .cap.capBR{ bottom:-1px; right:-1px; background-position:right bottom;}
|
||||
|
||||
.eFocus .eTool{ display:block; height:24px; position:absolute !important; z-index:99; top:-24px !important; left:-1px !important; white-space:nowrap; margin:0 0 0 2px !important; padding:0 5px 0 0 !important; border:0 !important; background:url(../img/bgEtool.gif) no-repeat right top !important;}
|
||||
.eFocus .eTool li{ position:relative; left:-2px; display:block; float:left; height:22px; padding:2px 3px 0 5px; background:url(../img/vrContentNavigation.gif) no-repeat left center;}
|
||||
.eFocus .eTool li.edit{ background:url(../img/bgEtool.gif) no-repeat left top;}
|
||||
.eFocus .eTool li button{ border:0; padding:0; overflow:visible; cursor:pointer; background-color:transparent; font-size:11px; vertical-align:middle;}
|
||||
.eFocus .eTool li.move button,
|
||||
.eFocus .eTool li.delete button{ overflow:hidden; width:17px; height:17px; background-position:center center; background-repeat:no-repeat;}
|
||||
.eFocus .eTool li.move button{ background-image:url(../img/iconMovable.gif); cursor:move;}
|
||||
.eFocus .eTool li.delete button{ background-image:url(../img/buttonWasteBox.gif);}
|
||||
.eFocus .eTool li.move button span,
|
||||
.eFocus .eTool li.delete button span{ position:absolute; width:0; height:0; overflow:hidden; font-size:0; line-height:0; z-index:-1; visibility:hidden;}
|
||||
.eFocus .del{ display:block;}
|
||||
|
||||
/* txEditor */
|
||||
.txEditor{ position:relative; width:98%; padding-right:10px; margin-bottom:10px; border:1px solid #ddd; *zoom:1; background:#fff;}
|
||||
.txEditor .toolbar{ position:relative; z-index:10; margin:0 -10px 0 0; padding:6px 10px; list-style:none; *zoom:1; background:#fafafa; border-bottom:1px solid #ddd;}
|
||||
.txEditor .toolbar:after{ content:""; display:block; clear:both;}
|
||||
.txEditor .toolbar li{ position:relative; float:left; margin-right:5px;}
|
||||
.txEditor .toolbar li button{ border:0; padding:0; height:22px; background-color:transparent; background-image:url(../img/buttonEditorToolbar.gif); background-repeat:no-repeat; cursor:pointer; vertical-align:middle;}
|
||||
.txEditor .toolbar li button:hover,
|
||||
.txEditor .toolbar li button:active,
|
||||
.txEditor .toolbar li button:focus,
|
||||
.txEditor .toolbar li button.active{ border:1px solid #ddd;}
|
||||
.txEditor .toolbar li button span{ position:absolute; width:0; height:0; overflow:hidden; font-size:0; line-height:0; z-index:-1; visibility:hidden;}
|
||||
.txEditor .toolbar li select{ font-size:12px; vertical-align:middle; height:21px;}
|
||||
.txEditor .toolbar li.undo button{ width:23px; background-position:center -210px;}
|
||||
.txEditor .toolbar li.redo button{ width:23px; background-position:center -240px;}
|
||||
.txEditor .toolbar li.strong button{ width:23px; background-position:center 0;}
|
||||
.txEditor .toolbar li.em button{ width:23px; background-position:center -30px;}
|
||||
.txEditor .toolbar li.underline button{ width:23px; background-position:center -60px;}
|
||||
.txEditor .toolbar li.del button{ width:23px; background-position:center -90px;}
|
||||
.txEditor .toolbar li.vRule{ padding-left:10px; margin:0 5px; background:url(../img/vrEditorToolbar.gif) no-repeat left center;}
|
||||
.txEditor .toolbar li.aHref button{ width:23px; background-position:center -120px;}
|
||||
.txEditor .toolbar li.fSize{ margin-right:5px;}
|
||||
.txEditor .toolbar li.fColor{ margin-right:5px; z-index:2;}
|
||||
.txEditor .toolbar li.fColor button{ width:28px; background-position:center -150px;}
|
||||
.txEditor .toolbar li.bgColor{ margin-right:5px; z-index:1;}
|
||||
.txEditor .toolbar li.bgColor button{ width:28px; background-position:center -180px;}
|
||||
.txEditor .toolbar li.left button{ width:23px; background-position:center -270px;}
|
||||
.txEditor .toolbar li.center button{ width:23px; background-position:center -300px;}
|
||||
.txEditor .toolbar li.right button{ width:23px; background-position:center -330px;}
|
||||
.txEditor .toolbar li.justify button{ width:23px; background-position:center -360px;}
|
||||
.txEditor .toolbar li.character button{ width:23px; background-position:center -390px;}
|
||||
.txEditor .toolbar li.list button{ width:23px; background-image:url(../img/buttonListToolbar.gif); background-repeat:no-repeat;}
|
||||
.txEditor .toolbar li.disc button{ background-position:center 0;}
|
||||
.txEditor .toolbar li.circle button{ background-position:center -30px;}
|
||||
.txEditor .toolbar li.square button{ background-position:center -60px;}
|
||||
.txEditor .toolbar li.decimal button{ background-position:center -90px;}
|
||||
.txEditor .toolbar li.alphaLower button{ background-position:center -120px;}
|
||||
.txEditor .toolbar li.alphaUpper button{ background-position:center -150px;}
|
||||
.txEditor .toolbar li.romanLower button{ background-position:center -180px;}
|
||||
.txEditor .toolbar li.romanUpper button{ background-position:center -210px;}
|
||||
.txEditor .toolbar li .uri{ display:none; position:absolute; left:10px; top:25px; padding:15px 20px; border:1px solid #ddd; background:#fff; *zoom:1; *white-space:nowrap;}
|
||||
.txEditor .toolbar li .uri h3{ font-size:12px; margin:0 0 .5em 0;}
|
||||
.txEditor .toolbar li .uri .link{ border:1px solid #ccc; padding:3px 4px; height:14px; font-size:12px; width:200px; font-size:11px; color:#666;}
|
||||
.txEditor .toolbar li .uri p{ margin:.5em 0;}
|
||||
.txEditor .toolbar li .uri p input{ width:13px; height:13px; margin:0 3px 0 0; vertical-align:middle;}
|
||||
.txEditor .toolbar li .uri .btn_area{ text-align:center;}
|
||||
.txEditor .toolbar li .uri .btn_area .buttonGray,
|
||||
.txEditor .toolbar li .uri .btn_area .buttonGray button{ background-image:url(../img/buttonGray.gif);}
|
||||
.txEditor .toolbar li .uri .btn_area .buttonGray{ background-position:left top;}
|
||||
.txEditor .toolbar li .uri .btn_area .buttonGray button{ background-position:right top; line-height:18px; border:0 !important; width:auto; padding:0 6px 0 4px;}
|
||||
.txEditor .toolbar li .palette{ display:none; width:211px; position:absolute; left:0; top:25px; padding:8px 0 7px 8px; margin:0; list-style:none; border:1px solid #ddd; background:#fff; *zoom:1;}
|
||||
.txEditor .toolbar li .palette:after{ content:""; display:block; clear:both;}
|
||||
.txEditor .toolbar li .palette.open{ display:block;}
|
||||
.txEditor .toolbar li .palette li{ float:left; margin:0 1px 1px 0; font-size:0; line-height:0;}
|
||||
.txEditor .toolbar li .palette button{ position:relative; overflow:hidden; width:11px; height:11px;}
|
||||
.txEditor .toolbar li .palette button span{ position:absolute; width:0; height:0; overflow:hidden; font-size:0; line-height:0; z-index:-1; visibility:hidden;}
|
||||
.txEditor .inputRichText{ position:relative; margin-right:-10px; position:relative; *zoom:1; z-index:1; padding:3px 0 3px 3px; background-image:url(../img/bgInputText.gif); background-repeat:no-repeat; background-position:0 0;}
|
||||
.txEditor .inputRichText iframe{ width:100%; height:136px; border:0; overflow-x:hidden;}
|
||||
.txEditor .resizeVertical{ position:relative; margin-right:-10px; border-top:1px solid #ddd; height:10px; background:url(../img/buttonResizeVertical.gif) no-repeat center center; *zoom:1; font-size:0; line-height:0;}
|
||||
.txEditor .resizeVertical button{ width:100%; height:10px; border:0; margin:0; padding:0; background:transparent; cursor:n-resize; vertical-align:middle;}
|
||||
.txEditor .resizeVertical button span{ position:absolute; width:0; height:0; font-size:0; line-height:0; overflow:hidden; visibility:hidden; z-index:-1;}
|
||||
|
||||
.txEditor .toolbar li.character .layer{ width:433px; height:242px; overflow:hidden; padding:0;}
|
||||
.txEditor .toolbar li.character .layer .close{ position:absolute; background:url(../img/buttonLayerClose.gif) no-repeat center; width:20px; height:21px; top:4px; right:3px; border:0 !important;}
|
||||
.txEditor .toolbar li.character .layer ul{ margin:0; padding:0; list-style:none;}
|
||||
.txEditor .toolbar li.character .layer h3{position:absolute; width:0; height:0; overflow:hidden; visibility:hidden;}
|
||||
.txEditor .toolbar li.character .layer .nav{ position:absolute; top:8px; left:-1px; overflow:hidden; white-space:nowrap; line-height:normal;}
|
||||
.txEditor .toolbar li.character .layer .nav li{ display:inline; margin:0 -4px 0 0; padding:0 8px; background:url(../img/vr_layer_character.gif) no-repeat 0 center;}
|
||||
.txEditor .toolbar li.character .layer .nav li a{ color:#444; text-decoration:none; letter-spacing:-1px;}
|
||||
.txEditor .toolbar li.character .layer .nav li a:hover,
|
||||
.txEditor .toolbar li.character .layer .nav li a:active,
|
||||
.txEditor .toolbar li.character .layer .nav li a:focus{ text-decoration:underline;}
|
||||
.txEditor .toolbar li.character .layer .nav li a.on{ font-weight:bold; color:#004790; display:inline;}
|
||||
.txEditor .toolbar li.character .layer .list{ position:absolute; left:7px; top:30px; width:421px; height:172px; background:url(../img/bx_character.gif) no-repeat;}
|
||||
.txEditor .toolbar li.character .layer .list li{ position:relative; top:1px; left:1px; float:left; width:20px; height:18px; margin:0 1px 1px 0;}
|
||||
.txEditor .toolbar li.character .layer .list li button{ width:20px; height:18px; background:none; padding:0; vertical-align:top;}
|
||||
.txEditor .toolbar li.character .layer .list li button:hover,
|
||||
.txEditor .toolbar li.character .layer .list li button:active,
|
||||
.txEditor .toolbar li.character .layer .list li button:focus{ border:2px solid #27c11a;}
|
||||
.txEditor .toolbar li.character .layer .list li button span{ overflow:visible; font-size:12px; width:auto; height:auto; position:relative; visibility:visible; line-height:normal; z-index:1;}
|
||||
.txEditor .toolbar li.character .layer p{ position:absolute; top:212px; left:7px; margin:0 !important;}
|
||||
.txEditor .toolbar li.character .layer p *{ vertical-align:top;}
|
||||
.txEditor .toolbar li.character .layer p label{ position:relative; top:4px; margin:0 7px 0 0; color:#333; letter-spacing:-1px; line-height:normal;}
|
||||
.txEditor .toolbar li.character .layer p input{ padding:3px 0 0 4px; margin:0 4px 0 0; width:300px; height:16px; border:1px solid #acacac; border-right:1px solid #dadada; border-bottom:1px solid #dadada; font-size:12px;}
|
||||
.txEditor .toolbar li.character .layer p button{ position:relative; *top:1px; width:38px; height:21px; background:url(../img/buttonLayerConfirm.gif) no-repeat; border:0 !important;}
|
||||
|
||||
.txEditor .toolbar .font9px { font-size:9px }
|
||||
.txEditor .toolbar .font10px { font-size:10px }
|
||||
.txEditor .toolbar .font11px { font-size:11px }
|
||||
.txEditor .toolbar .font12px { font-size:12px }
|
||||
.txEditor .toolbar .font14px { font-size:14px }
|
||||
.txEditor .toolbar .font16px { font-size:16px }
|
||||
.txEditor .toolbar .font18px { font-size:18px }
|
||||
.txEditor .toolbar .font20px { font-size:20px }
|
||||
.txEditor .toolbar .font24px { font-size:24px }
|
||||
.txEditor .toolbar .font28px { font-size:28px }
|
||||
.txEditor .toolbar .font32px { font-size:32px }
|
||||
.txEditor .toolbar .font36px { font-size:36px }
|
||||
|
||||
/* Drag and Drop */
|
||||
.xe_dr_placeholder { background-color:#F8F4CE; margin:5px 0; height:20px; padding:10px 0; z-index:0; -moz-border-radius:5px; -webkit-border-radius:5px; z-index:1; }
|
||||
.drag_handle { position:absolute; height:100%; width:10px; top:0; opacity:.5; filter:alpha(opacity=50); background:#ddd url(../img/iconDragHandler.gif) no-repeat center; cursor:n-resize; margin:0 2px !important; padding:0 !important; border:0 !important; _zoom:1;}
|
||||
.drag_handle.left { left:0; }
|
||||
.drag_handle.right { right:0; }
|
||||
.eArea .drag_handle {display:none}
|
||||
.eFocus .drag_handle {display:block}
|
||||
.editorContainer .ui-draggable{ margin:0 0 3em 0 !important;}
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
@charset "utf-8";
|
||||
/* NHN (developers@xpressengine.com) */
|
||||
|
||||
html, body { height:100%; background-color:transparent; padding:0; margin:0;}
|
||||
body{ margin:1em;}
|
||||
.xe_content{ color:#000; font-size:12px; line-height:1.5;}
|
||||
@charset "utf-8";
|
||||
/* NHN (developers@xpressengine.com) */
|
||||
|
||||
html, body { height:100%; background-color:transparent; padding:0; margin:0;}
|
||||
body{ margin:1em;}
|
||||
.xe_content{ color:#000; font-size:12px; line-height:1.5;}
|
||||
|
|
|
|||
|
|
@ -1,52 +1,52 @@
|
|||
@charset "utf-8";
|
||||
/* NHN (developers@xpressengine.com) */
|
||||
|
||||
/* textyleContent */
|
||||
.textyleContent{ font-size:12px; line-height:1.6; clear:both;}
|
||||
.textyleContent h1{ font-size:24px;}
|
||||
.textyleContent h2{ font-size:20px;}
|
||||
.textyleContent h3{ font-size:18px;}
|
||||
.textyleContent h4{ font-size:16px;}
|
||||
.textyleContent h5{ font-size:14px;}
|
||||
.textyleContent h6{ font-size:12px;}
|
||||
|
||||
/* Attached File */
|
||||
.textyleContent dl.attachedFile { margin:1em 0; padding:1em 0; background:#f9f9f9; border:1px solid #eee; }
|
||||
.textyleContent dl.attachedFile dt { padding:0 2em .5em 2em; margin:0 0 1em 0; font-weight:bold; text-indent:1em; border-bottom:1px solid #eee; background:#f9f9f9 url(../img/iconClip.gif) no-repeat 2em .3em; font-size:12px;}
|
||||
.textyleContent dl.attachedFile em{ font-size:11px; font-weight:normal; font-style:normal; margin:0 5px;}
|
||||
.textyleContent dl.attachedFile dd{ margin:0; padding:0 2em; color:#8b8b8b; font-size:11px;}
|
||||
.textyleContent dl.attachedFile dd a{ text-decoration:none; color:#0092cf; margin-right:10px;}
|
||||
.textyleContent dl.attachedFile dd a:hover,
|
||||
.textyleContent dl.attachedFile dd a:active,
|
||||
.textyleContent dl.attachedFile dd a:focus{ text-decoration:underline;}
|
||||
|
||||
/* Table Of Content */
|
||||
.textyleContent .toc{ background:#fff; border:1px solid #ddd; font-size:14px; line-height:1.6; margin:1em 0; padding:15px;}
|
||||
.textyleContent .toc li{ font-weight:bold; color:#555; margin-left:35px;}
|
||||
.textyleContent .toc li.toc3{}
|
||||
.textyleContent .toc li.toc4{ margin-left:55px;}
|
||||
.textyleContent .toc li.toc5{ margin-left:75px;}
|
||||
.textyleContent .toc li a{ color:#648ab9; text-decoration:none; font-weight:normal;}
|
||||
.textyleContent .toc li a:hover,
|
||||
.textyleContent .toc li a:active,
|
||||
.textyleContent .toc li a:focus{ text-decoration:underline;}
|
||||
|
||||
/* Object */
|
||||
.textyleContent object,
|
||||
.textyleContent embed{ margin:1em 0;}
|
||||
|
||||
/* Horizontal Rule */
|
||||
.textyleContent hr{ display:block; position:static; border-bottom:0; height:1px; overflow:hidden; color:#e2e2e2; clear:both;}
|
||||
|
||||
/* Blockquote */
|
||||
.textyleContent blockquote{ margin-left:0; margin-right:0; padding:1em 40px; background:#f6f6f6 url(../img/bgBlockquote.gif) no-repeat 20px 1.5em; -moz-border-radius:5px; -webkit-border-radius:5px; }
|
||||
|
||||
/* Cite */
|
||||
.textyleContent cite{ display:block; margin:1em 0;}
|
||||
|
||||
/* Link */
|
||||
.textyleContent .xe_dr_link p strong{ display:block;}
|
||||
|
||||
/* P */
|
||||
.xe_content p,
|
||||
.textyleContent p{ margin:1em 0 !important;}
|
||||
@charset "utf-8";
|
||||
/* NHN (developers@xpressengine.com) */
|
||||
|
||||
/* textyleContent */
|
||||
.textyleContent{ font-size:12px; line-height:1.6; clear:both;}
|
||||
.textyleContent h1{ font-size:24px;}
|
||||
.textyleContent h2{ font-size:20px;}
|
||||
.textyleContent h3{ font-size:18px;}
|
||||
.textyleContent h4{ font-size:16px;}
|
||||
.textyleContent h5{ font-size:14px;}
|
||||
.textyleContent h6{ font-size:12px;}
|
||||
|
||||
/* Attached File */
|
||||
.textyleContent dl.attachedFile { margin:1em 0; padding:1em 0; background:#f9f9f9; border:1px solid #eee; }
|
||||
.textyleContent dl.attachedFile dt { padding:0 2em .5em 2em; margin:0 0 1em 0; font-weight:bold; text-indent:1em; border-bottom:1px solid #eee; background:#f9f9f9 url(../img/iconClip.gif) no-repeat 2em .3em; font-size:12px;}
|
||||
.textyleContent dl.attachedFile em{ font-size:11px; font-weight:normal; font-style:normal; margin:0 5px;}
|
||||
.textyleContent dl.attachedFile dd{ margin:0; padding:0 2em; color:#8b8b8b; font-size:11px;}
|
||||
.textyleContent dl.attachedFile dd a{ text-decoration:none; color:#0092cf; margin-right:10px;}
|
||||
.textyleContent dl.attachedFile dd a:hover,
|
||||
.textyleContent dl.attachedFile dd a:active,
|
||||
.textyleContent dl.attachedFile dd a:focus{ text-decoration:underline;}
|
||||
|
||||
/* Table Of Content */
|
||||
.textyleContent .toc{ background:#fff; border:1px solid #ddd; font-size:14px; line-height:1.6; margin:1em 0; padding:15px;}
|
||||
.textyleContent .toc li{ font-weight:bold; color:#555; margin-left:35px;}
|
||||
.textyleContent .toc li.toc3{}
|
||||
.textyleContent .toc li.toc4{ margin-left:55px;}
|
||||
.textyleContent .toc li.toc5{ margin-left:75px;}
|
||||
.textyleContent .toc li a{ color:#648ab9; text-decoration:none; font-weight:normal;}
|
||||
.textyleContent .toc li a:hover,
|
||||
.textyleContent .toc li a:active,
|
||||
.textyleContent .toc li a:focus{ text-decoration:underline;}
|
||||
|
||||
/* Object */
|
||||
.textyleContent object,
|
||||
.textyleContent embed{ margin:1em 0;}
|
||||
|
||||
/* Horizontal Rule */
|
||||
.textyleContent hr{ display:block; position:static; border-bottom:0; height:1px; overflow:hidden; color:#e2e2e2; clear:both;}
|
||||
|
||||
/* Blockquote */
|
||||
.textyleContent blockquote{ margin-left:0; margin-right:0; padding:1em 40px; background:#f6f6f6 url(../img/bgBlockquote.gif) no-repeat 20px 1.5em; -moz-border-radius:5px; -webkit-border-radius:5px; }
|
||||
|
||||
/* Cite */
|
||||
.textyleContent cite{ display:block; margin:1em 0;}
|
||||
|
||||
/* Link */
|
||||
.textyleContent .xe_dr_link p strong{ display:block;}
|
||||
|
||||
/* P */
|
||||
.xe_content p,
|
||||
.textyleContent p{ margin:1em 0 !important;}
|
||||
|
|
|
|||
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