mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-09 03:32:00 +09:00
Close Connection when there is no connection value.
git-svn-id: http://xe-core.googlecode.com/svn/branches/maserati@13161 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
034a5c0288
commit
f70ce644ce
1410 changed files with 7188 additions and 53541 deletions
|
|
@ -71,102 +71,6 @@ class addonController extends addon
|
|||
return $addon_info->mid_list;
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds mid into running mid list
|
||||
*
|
||||
* @param string $selected_addon Addon name to add mid
|
||||
* @param string $mid Module id to add
|
||||
* @param int $site_srl Site srl
|
||||
* @return void
|
||||
*/
|
||||
function _setAddMid($selected_addon, $mid, $site_srl = 0)
|
||||
{
|
||||
// Wanted to add the requested information
|
||||
$mid_list = $this->_getMidList($selected_addon, $site_srl);
|
||||
|
||||
$mid_list[] = $mid;
|
||||
$new_mid_list = array_unique($mid_list);
|
||||
$this->_setMid($selected_addon, $new_mid_list, $site_srl);
|
||||
}
|
||||
|
||||
/**
|
||||
* Deletes mid from running mid list
|
||||
*
|
||||
* @param string $selected_addon Addon name to delete mid
|
||||
* @param string $mid Module id to delete
|
||||
* @param int $site_srl Site srl
|
||||
* @return void
|
||||
*/
|
||||
function _setDelMid($selected_addon, $mid, $site_srl = 0)
|
||||
{
|
||||
// Wanted to add the requested information
|
||||
$mid_list = $this->_getMidList($selected_addon, $site_srl);
|
||||
|
||||
$new_mid_list = array();
|
||||
if(is_array($mid_list))
|
||||
{
|
||||
for($i = 0, $c = count($mid_list); $i < $c; $i++)
|
||||
{
|
||||
if($mid_list[$i] != $mid)
|
||||
{
|
||||
$new_mid_list[] = $mid_list[$i];
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$new_mid_list[] = $mid;
|
||||
}
|
||||
|
||||
$this->_setMid($selected_addon, $new_mid_list, $site_srl);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set running mid list
|
||||
*
|
||||
* @param string $selected_addon Addon name to set
|
||||
* @param string[] $mid_list List to set
|
||||
* @param int $site_srl Site srl
|
||||
* @return void
|
||||
*/
|
||||
function _setMid($selected_addon, $mid_list, $site_srl = 0)
|
||||
{
|
||||
$args->mid_list = join('|@|', $mid_list);
|
||||
$this->doSetup($selected_addon, $args, $site_srl);
|
||||
$this->makeCacheFile($site_srl);
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds mid into running mid list
|
||||
*
|
||||
* @return Object
|
||||
*/
|
||||
function procAddonSetupAddonAddMid()
|
||||
{
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
|
||||
$args = Context::getRequestVars();
|
||||
$addon_name = $args->addon_name;
|
||||
$mid = $args->mid;
|
||||
$this->_setAddMid($addon_name, $mid, $site_module_info->site_srl);
|
||||
}
|
||||
|
||||
/**
|
||||
* Deletes mid from running mid list
|
||||
*
|
||||
* @return Object
|
||||
*/
|
||||
function procAddonSetupAddonDelMid()
|
||||
{
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
|
||||
$args = Context::getRequestVars();
|
||||
$addon_name = $args->addon_name;
|
||||
$mid = $args->mid;
|
||||
|
||||
$this->_setDelMid($addon_name, $mid, $site_module_info->site_srl);
|
||||
}
|
||||
|
||||
/**
|
||||
* Re-generate the cache file
|
||||
*
|
||||
|
|
|
|||
|
|
@ -8,8 +8,6 @@
|
|||
<action name="dispAddonAdminSetup" type="view" standalone="true" menu_name="installedAddon" />
|
||||
<action name="procAddonAdminToggleActivate" type="controller" standalone="true" />
|
||||
<action name="procAddonAdminSetupAddon" type="controller" standalone="true" ruleset="updateAddonSetup" />
|
||||
<action name="procAddonSetupAddonAddMid" type="controller" />
|
||||
<action name="procAddonSetupAddonDelMid" type="controller" />
|
||||
<action name="procAddonAdminSaveActivate" type="controller" />
|
||||
</actions>
|
||||
<menus>
|
||||
|
|
|
|||
|
|
@ -1,13 +1,14 @@
|
|||
<div class="x_page-header">
|
||||
<h1>{$lang->installed_addons} <a class="x_icon-question-sign" href="./help/index.html#UMAN_advanced_installed_addon" target="_blank">{$lang->help}</a></h1>
|
||||
<h1>{$lang->installed_addons} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_advanced_installed_addon" target="_blank">{$lang->help}</a></h1>
|
||||
</div>
|
||||
<p>{$lang->about_installed_addon}</p>
|
||||
<form action="./" method="post">
|
||||
<input type="hidden" name="module" value="addon" />
|
||||
<input type="hidden" name="act" value="procAddonAdminSaveActivate" />
|
||||
<input type="hidden" name="sccess_return_url" value="{getRequestUriByServerEnviroment()}" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/addon/tpl/addon_list/1" />
|
||||
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/addon/tpl/addon_list/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<table class="x_table x_table-striped x_table-hover dsTg">
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/addon/tpl/setup_addon/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form action="./" method="post" class="x_form-horizontal">
|
||||
|
|
@ -38,6 +38,7 @@
|
|||
<input type="hidden" name="module" value="{$module}" />
|
||||
<input type="hidden" name="act" value="procAddonAdminSetupAddon" />
|
||||
<input type="hidden" name="addon_name" value="{$addon_info->addon_name}" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/addon/tpl/setup_addon/1" />
|
||||
|
||||
<block cond="count($addon_info->extra_vars)">
|
||||
<block loop="$addon_info->extra_vars => $id, $var">
|
||||
|
|
@ -48,7 +49,7 @@
|
|||
{@$not_first = true}
|
||||
<div class="x_control-group" cond="!$not_first && $group != $var->group"></div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="{$var->name}">{$var->title}</label>
|
||||
<label class="x_control-label" for="{$var->name}"|cond="$var->type != 'textarea'" for="lang_{$var->name}"|cond="$var->type == 'textarea'">{$var->title}</label>
|
||||
<div class="x_controls">
|
||||
<input cond="$var->type == 'text'" type="text" name="{$var->name}" id="{$var->name}" value="{htmlspecialchars($var->value)}">
|
||||
<textarea cond="$var->type == 'textarea'" name="{$var->name}" id="{$var->name}" class="lang_code" rows="8" cols="42">{htmlspecialchars($var->value)}</textarea>
|
||||
|
|
|
|||
|
|
@ -142,7 +142,7 @@ class adminAdminController extends admin
|
|||
$vars->site_srl = 0;
|
||||
}
|
||||
|
||||
// create a DesignInfo file
|
||||
// create a DesignInfo file
|
||||
$output = $this->updateDefaultDesignInfo($vars);
|
||||
return $this->setRedirectUrl(Context::get('error_return_url'), $output);
|
||||
}
|
||||
|
|
@ -185,7 +185,12 @@ class adminAdminController extends admin
|
|||
|
||||
foreach($vars->module_skin as $moduleName => $skinName)
|
||||
{
|
||||
$designInfo->module->{$moduleName} = new stdClass();
|
||||
if($moduleName == 'ARTICLE')
|
||||
{
|
||||
$moduleName = 'page';
|
||||
}
|
||||
|
||||
if(!isset($designInfo->module->{$moduleName})) $designInfo->module->{$moduleName} = new stdClass();
|
||||
$designInfo->module->{$moduleName}->{$skinTarget} = $skinName;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -100,7 +100,7 @@ class adminAdminModel extends admin
|
|||
function getAdminFTPPath()
|
||||
{
|
||||
Context::loadLang('./modules/autoinstall/lang');
|
||||
set_time_limit(5);
|
||||
@set_time_limit(5);
|
||||
require_once(_XE_PATH_ . 'libs/ftp.class.php');
|
||||
|
||||
$ftp_info = Context::getRequestVars();
|
||||
|
|
@ -236,7 +236,7 @@ class adminAdminModel extends admin
|
|||
function getAdminFTPList()
|
||||
{
|
||||
Context::loadLang('./modules/autoinstall/lang');
|
||||
set_time_limit(5);
|
||||
@set_time_limit(5);
|
||||
require_once(_XE_PATH_ . 'libs/ftp.class.php');
|
||||
$ftp_info = Context::getRequestVars();
|
||||
if(!$ftp_info->ftp_user || !$ftp_info->ftp_password)
|
||||
|
|
|
|||
|
|
@ -127,6 +127,13 @@ class adminAdminView extends admin
|
|||
{
|
||||
global $lang;
|
||||
|
||||
// Check is_shortcut column
|
||||
$oDB = DB::getInstance();
|
||||
if(!$oDB->isColumnExists('menu_item', 'is_shortcut'))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
$oAdminAdminModel = getAdminModel('admin');
|
||||
$lang->menu_gnb_sub = $oAdminAdminModel->getAdminMenuLang();
|
||||
|
||||
|
|
@ -135,6 +142,7 @@ class adminAdminView extends admin
|
|||
{
|
||||
header('Location: ' . getNotEncodedUrl('', 'module', 'admin'));
|
||||
Context::close();
|
||||
exit;
|
||||
}
|
||||
include $result->php_file;
|
||||
|
||||
|
|
@ -154,38 +162,45 @@ class adminAdminView extends admin
|
|||
|
||||
$parentSrl = 0;
|
||||
$oMenuAdminConroller = getAdminController('menu');
|
||||
foreach((array) $menu->list as $parentKey => $parentMenu)
|
||||
if(!$_SESSION['isMakeXml'])
|
||||
{
|
||||
if(!$parentMenu['text'])
|
||||
foreach((array) $menu->list as $parentKey => $parentMenu)
|
||||
{
|
||||
$oMenuAdminConroller->makeXmlFile($result->menu_srl);
|
||||
header('Location: ' . getNotEncodedUrl('', 'module', 'admin'));
|
||||
break;
|
||||
}
|
||||
|
||||
if(!is_array($parentMenu['list']) || !count($parentMenu['list']))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if($parentMenu['href'] == '#' && count($parentMenu['list']))
|
||||
{
|
||||
$firstChild = current($parentMenu['list']);
|
||||
$menu->list[$parentKey]['href'] = $firstChild['href'];
|
||||
}
|
||||
|
||||
foreach($parentMenu['list'] as $childKey => $childMenu)
|
||||
{
|
||||
if(!$childMenu['text'])
|
||||
if(!$parentMenu['text'])
|
||||
{
|
||||
$oMenuAdminConroller->makeXmlFile($result->menu_srl);
|
||||
$_SESSION['isMakeXml'] = true;
|
||||
header('Location: ' . getNotEncodedUrl('', 'module', 'admin'));
|
||||
break;
|
||||
Context::close();
|
||||
exit;
|
||||
}
|
||||
|
||||
if($subMenuTitle == $childMenu['text'])
|
||||
if(!is_array($parentMenu['list']) || !count($parentMenu['list']))
|
||||
{
|
||||
$parentSrl = $childMenu['parent_srl'];
|
||||
break;
|
||||
continue;
|
||||
}
|
||||
if($parentMenu['href'] == '#' && count($parentMenu['list']))
|
||||
{
|
||||
$firstChild = current($parentMenu['list']);
|
||||
$menu->list[$parentKey]['href'] = $firstChild['href'];
|
||||
}
|
||||
|
||||
foreach($parentMenu['list'] as $childKey => $childMenu)
|
||||
{
|
||||
if(!$childMenu['text'])
|
||||
{
|
||||
$oMenuAdminConroller->makeXmlFile($result->menu_srl);
|
||||
$_SESSION['isMakeXml'] = true;
|
||||
header('Location: ' . getNotEncodedUrl('', 'module', 'admin'));
|
||||
Context::close();
|
||||
exit;
|
||||
}
|
||||
|
||||
if($subMenuTitle == $childMenu['text'])
|
||||
{
|
||||
$parentSrl = $childMenu['parent_srl'];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -287,8 +302,6 @@ class adminAdminView extends admin
|
|||
;
|
||||
$output = $oDocumentModel->getDocumentList($args, FALSE, FALSE, $columnList);
|
||||
Context::set('latestDocumentList', $output->data);
|
||||
$security = new Security();
|
||||
$security->encodeHTML('latestDocumentList..variables.nick_name');
|
||||
unset($args, $output, $columnList);
|
||||
|
||||
// Latest Comment
|
||||
|
|
@ -335,7 +348,7 @@ class adminAdminView extends admin
|
|||
{
|
||||
foreach($needUpdateList AS $key => $value)
|
||||
{
|
||||
$helpUrl = './help/index.html#';
|
||||
$helpUrl = './admin/help/index.html#';
|
||||
switch($value->type)
|
||||
{
|
||||
case 'addon':
|
||||
|
|
@ -367,6 +380,9 @@ class adminAdminView extends admin
|
|||
Context::set('needUpdate', $needUpdate);
|
||||
Context::set('newVersionList', $needUpdateList);
|
||||
|
||||
$oSecurity = new Security();
|
||||
$oSecurity->encodeHTML('module_list..', 'module_list..author..', 'newVersionList..');
|
||||
|
||||
// gathering enviroment check
|
||||
$mainVersion = join('.', array_slice(explode('.', __XE_VERSION__), 0, 2));
|
||||
$path = FileHandler::getRealPath('./files/env/' . $mainVersion);
|
||||
|
|
@ -404,8 +420,8 @@ class adminAdminView extends admin
|
|||
$oAdminModel = getAdminModel('admin');
|
||||
$favicon_url = $oAdminModel->getFaviconUrl();
|
||||
$mobicon_url = $oAdminModel->getMobileIconUrl();
|
||||
Context::set('favicon_url', $favicon_url);
|
||||
Context::set('mobicon_url', $mobicon_url);
|
||||
Context::set('favicon_url', $favicon_url.'?'.time());
|
||||
Context::set('mobicon_url', $mobicon_url.'?'.time());
|
||||
|
||||
$oDocumentModel = getModel('document');
|
||||
$config = $oDocumentModel->getDocumentConfig();
|
||||
|
|
|
|||
|
|
@ -292,6 +292,10 @@ class admin extends ModuleObject
|
|||
|
||||
$oMenuAdminConroller = getAdminController('menu');
|
||||
$oMenuAdminConroller->makeXmlFile($menuSrl);
|
||||
|
||||
// does not recreate lang cache sometimes
|
||||
FileHandler::RemoveFilesInDir('./files/cache/lang');
|
||||
FileHandler::RemoveFilesInDir('./files/cache/menu/admin_lang');
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -415,10 +419,9 @@ class admin extends ModuleObject
|
|||
$output = $oMenuAdminModel->getMenuByTitle('__XE_ADMIN__');
|
||||
$menuSrl = $output->menu_srl;
|
||||
|
||||
$oMenuAdminController = getAdminController('menu');
|
||||
if($menuSrl)
|
||||
{
|
||||
$oMenuAdminController = getAdminController('menu');
|
||||
|
||||
$output = $oMenuAdminModel->getMenuItems($menuSrl);
|
||||
if(is_array($output->data))
|
||||
{
|
||||
|
|
@ -472,8 +475,16 @@ class admin extends ModuleObject
|
|||
$oMenuAdminController->makeXmlFile($newAdminmenuSrl);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$oMenuAdminController->deleteMenu($menuSrl);
|
||||
// all old admin menu delete
|
||||
$output = $oMenuAdminModel->getMenuListByTitle('__XE_ADMIN__');
|
||||
if(is_array($output))
|
||||
{
|
||||
foreach($output AS $key=>$value)
|
||||
{
|
||||
$oMenuAdminController->deleteMenu($value->menu_srl);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
<action name="procAdminRemoveIcons" type="controller" standalone="true" />
|
||||
<action name="procAdminRecompileCacheFile" type="controller" standalone="true" />
|
||||
<action name="procAdminLogout" type="controller" standalone="true" />
|
||||
<action name="procAdminLogout" type="controller" standalone="true" method="GET|POST" />
|
||||
<action name="procAdminInsertDefaultDesignInfo" type="controller" />
|
||||
<action name="procAdminToggleFavorite" type="controller" ruleset="toggleFavorite" />
|
||||
<action name="procAdminEnviromentGatheringAgreement" type="controller" standalone="true" />
|
||||
|
|
|
|||
|
|
@ -1,5 +1,12 @@
|
|||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<lang>
|
||||
<item name="admin">
|
||||
<value xml:lang="ko"><![CDATA[관리자]]></value>
|
||||
<value xml:lang="en"><![CDATA[Admin]]></value>
|
||||
<value xml:lang="jp"><![CDATA[管理]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[管理员]]></value>
|
||||
<value xml:lang="tr"><![CDATA[yönetim]]></value>
|
||||
</item>
|
||||
<item name="subtitle_primary">
|
||||
<value xml:lang="ko"><![CDATA[기본]]></value>
|
||||
<value xml:lang="en"><![CDATA[Primary]]></value>
|
||||
|
|
@ -648,7 +655,7 @@
|
|||
</item>
|
||||
<item name="ssl_options" type="array">
|
||||
<item name="none">
|
||||
<value xml:lang="ko"><![CDATA[사용 안함]]></value>
|
||||
<value xml:lang="ko"><![CDATA[사용안함]]></value>
|
||||
<value xml:lang="en"><![CDATA[Never]]></value>
|
||||
<value xml:lang="jp"><![CDATA[使わない]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[不使用]]></value>
|
||||
|
|
@ -971,7 +978,7 @@
|
|||
<value xml:lang="tr"><![CDATA[Favicon'u kullanmak istiyor musunuz?]]></value>
|
||||
</item>
|
||||
<item name="about_use_favicon">
|
||||
<value xml:lang="ko"><![CDATA[16 x 16 크기의<em>*.ico</em> 파일만 업로드 가능.]]></value>
|
||||
<value xml:lang="ko"><![CDATA[16 x 16 크기의<em>*.ico</em> 파일 업로드 권장.]]></value>
|
||||
<value xml:lang="en"><![CDATA[You can upload 16x16 size<em>*.ico</em> file only.]]></value>
|
||||
<value xml:lang="jp"><![CDATA[16 x 16 サイズの<em>*.ico</em> ファイルのみ登録できます。]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[请上传16*16像素的<em>*.ico</em>文件.]]></value>
|
||||
|
|
@ -1031,20 +1038,6 @@
|
|||
<value xml:lang="zh-CN"><![CDATA[整理sessioon]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Oturum temizleme]]></value>
|
||||
</item>
|
||||
<item name="msg_not_correct_iconname">
|
||||
<value xml:lang="ko"><![CDATA[아이콘 형식이 바르지 않습니다.]]></value>
|
||||
<value xml:lang="en"><![CDATA[Invalid icon type]]></value>
|
||||
<value xml:lang="jp"><![CDATA[アイコン形式が正しくありません。]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[无效的icon格式]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Geçerli olmayan simge biçimi.]]></value>
|
||||
</item>
|
||||
<item name="msg_possible_only_file">
|
||||
<value xml:lang="ko"><![CDATA[파일만 업로드 가능합니다.]]></value>
|
||||
<value xml:lang="en"><![CDATA[You can upload files only.]]></value>
|
||||
<value xml:lang="jp"><![CDATA[ファイルのみアップロード可能です。]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[请上传文件.]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Sadece dosyalarını yükleyebilirsiniz.]]></value>
|
||||
</item>
|
||||
<item name="save">
|
||||
<value xml:lang="ko"><![CDATA[저장]]></value>
|
||||
<value xml:lang="en"><![CDATA[Save]]></value>
|
||||
|
|
@ -1472,18 +1465,6 @@
|
|||
<value xml:lang="ko"><![CDATA[자세히]]></value>
|
||||
<value xml:lang="en"><![CDATA[Details]]></value>
|
||||
</item>
|
||||
<item name="help">
|
||||
<value xml:lang="ko"><![CDATA[도움말]]></value>
|
||||
<value xml:lang="en"><![CDATA[Help]]></value>
|
||||
</item>
|
||||
<item name="yes">
|
||||
<value xml:lang="ko"><![CDATA[예]]></value>
|
||||
<value xml:lang="en"><![CDATA[Yes]]></value>
|
||||
</item>
|
||||
<item name="not">
|
||||
<value xml:lang="ko"><![CDATA[아니오]]></value>
|
||||
<value xml:lang="en"><![CDATA[No]]></value>
|
||||
</item>
|
||||
<item name="available_new_version">
|
||||
<value xml:lang="ko"><![CDATA[새 버전을 사용할 수 있습니다]]></value>
|
||||
<value xml:lang="en"><![CDATA[Available new versions]]></value>
|
||||
|
|
|
|||
|
|
@ -1,10 +1,11 @@
|
|||
{@Context::addHtmlHeader('<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no" />
|
||||
')}
|
||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=2, user-scalable=yes" />
|
||||
<div class="x">
|
||||
<p class="skipNav"><a href="#content">{$lang->skip_to_content}</a></p>
|
||||
<header class="header">
|
||||
<h1><a href="{getUrl('','module','admin')}"><img src="{getUrl('')}{$gnb_title_info->adminLogo}" alt="{$gnb_title_info->adminTitle}" /> {$gnb_title_info->adminTitle}</a></h1>
|
||||
<h1>
|
||||
<a href="{getUrl('','module','admin')}"><img src="{getUrl('')}{$gnb_title_info->adminLogo}" alt="{$gnb_title_info->adminTitle}" /> {$gnb_title_info->adminTitle}</a>
|
||||
</h1>
|
||||
<p class="site"><a href="{getFullUrl('')}">{getFullUrl('')}</a></p>
|
||||
<div class="account">
|
||||
<ul>
|
||||
|
|
@ -24,14 +25,20 @@
|
|||
<nav class="gnb <!--@if($_COOKIE['__xe_admin_gnb_status'] == 'open')-->open<!--@end-->" id="gnb">
|
||||
<a href="#gnbNav"><i class="x_icon-align-justify x_icon-white"></i><b></b> Menu Open/Close</a>
|
||||
<ul id="gnbNav" class="ex"|cond="$_COOKIE['__xe_admin_gnb_ex_status'] == 'open'">
|
||||
<script>
|
||||
var __xe_admin_gnb_txs = new Array();
|
||||
</script>
|
||||
<!--@foreach($gnbUrlList AS $key=>$value)-->
|
||||
<!--@if(strstr($value['menu_name_key'], 'configuration'))-->
|
||||
<li>
|
||||
<a href="#favorite"><span class="tx">{$lang->favorite}</span></a>
|
||||
<ul id="favorite">
|
||||
<li class="open"|cond="$_COOKIE['__xe_admin_gnb_tx_favorite'] == 'open'">
|
||||
<script>
|
||||
__xe_admin_gnb_txs.push('__xe_admin_gnb_tx_favorite');
|
||||
</script>
|
||||
<a href="#favorite" data-href="favorite"><span class="tx">{$lang->favorite}</span></a>
|
||||
<ul id="favorite" style="display:block"|cond="$_COOKIE['__xe_admin_gnb_tx_favorite'] == 'open'">
|
||||
<li loop="$favorite_list => $favorite">
|
||||
<a href="{getUrl('', 'module', 'admin', 'act', $favorite->admin_index_act)}">{$favorite->title}</a>
|
||||
<form class="remove" action="./">
|
||||
<form class="remove" action="./" method="post">
|
||||
<input type="hidden" name="module" value="admin" />
|
||||
<input type="hidden" name="act" value="procAdminToggleFavorite" />
|
||||
<input type="hidden" name="site_srl" value="0" />
|
||||
|
|
@ -47,9 +54,12 @@
|
|||
</div>
|
||||
</li>
|
||||
<!--@end-->
|
||||
<li class="active open"|cond="$parentSrl==$key || $value['href']=='index.php?module=admin' && !$mid && !$act">
|
||||
<a href="{getFullUrl('')}{$value['href']}"><span class="tx">{$value['text']}</span></a>
|
||||
<ul cond="count($value['list'])">
|
||||
<li class="<!--@if($parentSrl==$key || $value['href']=='index.php?module=admin' && !$mid && !$act)-->active open<!--@elseif($_COOKIE['__xe_admin_gnb_tx_' . md5($value['href'])] == 'open')-->open<!--@end-->">
|
||||
<script>
|
||||
__xe_admin_gnb_txs.push('{'__xe_admin_gnb_tx_' . md5($value['href'])}');
|
||||
</script>
|
||||
<a href="{getFullUrl('')}{$value['href']}" data-href="{md5($value['href'])}"><span class="tx">{$value['text']}</span></a>
|
||||
<ul cond="count($value['list'])" style="display:block"|cond="$_COOKIE['__xe_admin_gnb_tx_' . md5($value['href'])] == 'open'">
|
||||
<li loop="$value['list']=>$key2,$value2" class="active_"|cond="$value2['text'] == $subMenuTitle"><a href="{getFullUrl('')}{$value2['href']}">{$value2['text']}</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
<load target="./js/menu_setup.js" usecdn="true" />
|
||||
<div class="x_page-header">
|
||||
<h1>{$lang->admin_setup} <a class="x_icon-question-sign" href="./help/index.html#UMAN_config_admin" target="_blank">{$lang->help}</a></h1>
|
||||
<h1>{$lang->admin_setup} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_config_admin" target="_blank">{$lang->help}</a></h1>
|
||||
</div>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/admin/tpl/admin_setup/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<section class="section">
|
||||
|
|
@ -10,6 +10,7 @@
|
|||
<form action="./" method="post" enctype="multipart/form-data" class="x_form-horizontal">
|
||||
<input type="hidden" name="module" value="admin" />
|
||||
<input type="hidden" name="act" value="procAdminUpdateConfig" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/admin/tpl/admin_setup/1" />
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label">{$lang->admin_logo}</label>
|
||||
<div class="x_controls">
|
||||
|
|
@ -71,7 +72,7 @@
|
|||
</section>
|
||||
<!--// Modal -->
|
||||
<section class="x_modal" id="editMenu">
|
||||
<form id="editForm" action="./" class="x_form-horizontal" style="margin:0">
|
||||
<form id="editForm" action="./" class="x_form-horizontal" method="POST" style="margin:0">
|
||||
<div class="x_modal-header">
|
||||
<h1>{$lang->admin_menu_add}</h1>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -2,9 +2,9 @@
|
|||
<load target="../install/lang/lang.xml" usecdn="true" />
|
||||
<load target="../../session/tpl/js/session.js" usecdn="true" />
|
||||
<div class="x_page-header">
|
||||
<h1>{$lang->menu_gnb_sub['adminConfigurationFtp']} <a class="x_icon-question-sign" href="./help/index.html#UMAN_config_ftp" target="_blank">{$lang->help}</a></h1>
|
||||
<h1>{$lang->menu_gnb_sub['adminConfigurationFtp']} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_config_ftp" target="_blank">{$lang->help}</a></h1>
|
||||
</div>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/admin/tpl/config_ftp/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<p class="x_help-block">{$lang->detail_about_ftp_info}</p>
|
||||
|
|
@ -12,6 +12,7 @@
|
|||
<input type="hidden" name="module" value="install" />
|
||||
<input type="hidden" name="act" value="procInstallAdminSaveFTPInfo" />
|
||||
<input type="hidden" name="success_return_url" value="{base64_decode($success_return_url)}" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/admin/tpl/config_ftp/1" />
|
||||
<section class="section">
|
||||
<h1>{$lang->subtitle_primary}</h1>
|
||||
<div class="x_control-group">
|
||||
|
|
@ -51,7 +52,7 @@
|
|||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="ftp_port">{$lang->ftp_port}</label>
|
||||
<div class="x_controls">
|
||||
<input type="number" name="ftp_port" id="ftp_port" value="{$ftp_info->ftp_port ? $ftp_info->ftp_port : '21'}" style="width:50px" /> Default : 21
|
||||
<input type="number" name="ftp_port" id="ftp_port" value="{$ftp_info->ftp_port ? $ftp_info->ftp_port : '21'}" /> Default : 21
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
|
|
@ -81,7 +82,7 @@
|
|||
</div>
|
||||
</form>
|
||||
<style>
|
||||
#ftpSuggestion{padding:8px 15px;margin:2px 0;position:absolute;background:#fff;box-shadow:1px 1px 1px #eee;width:188px}
|
||||
#ftpSuggestion{padding:8px 15px;margin:2px 0;position:absolute;background:#fff;box-shadow:1px 1px 1px #eee;width:188px;z-index:99}
|
||||
#ftpSuggestion ul{margin:0;padding:0;list-style:none}
|
||||
#ftpSuggestion button{overflow:visible;padding:0;background:none;border:0;display:block;width:100%;text-align:left}
|
||||
#ftpSuggestion button:hover,
|
||||
|
|
|
|||
|
|
@ -2,25 +2,28 @@
|
|||
<load target="../install/lang/lang.xml" usecdn="true" />
|
||||
<load target="../../session/tpl/js/session.js" usecdn="true" />
|
||||
<div class="x_page-header">
|
||||
<h1>{$lang->menu_gnb_sub['adminConfigurationGeneral']} <a class="x_icon-question-sign" href="./help/index.html#UMAN_config_general" target="_blank">{$lang->help}</a></h1>
|
||||
<h1>{$lang->menu_gnb_sub['adminConfigurationGeneral']} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_config_general" target="_blank">{$lang->help}</a></h1>
|
||||
</div>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/admin/tpl/config_general/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<section class="section">
|
||||
<h1>{$lang->subtitle_primary}</h1>
|
||||
<form action="./" method="post" enctype="multipart/form-data" class="x_form-horizontal">
|
||||
<form action="./" method="post" enctype="multipart/form-data" id="config_form" class="x_form-horizontal">
|
||||
<input type="hidden" name="module" value="install" />
|
||||
<input type="hidden" name="act" value="procInstallAdminConfig" />
|
||||
|
||||
<input type="hidden" name="xe_validator_id" value="modules/admin/tpl/config_general/1" />
|
||||
<div></div>
|
||||
</form>
|
||||
<div class="x_form-horizontal" id="admin_config">
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label">{$lang->site_title} <a class="x_icon-question-sign" href="./help/index.html#UMAN_config_general_site_title" target="_blank">{$lang->help}</a></label>
|
||||
<label class="x_control-label">{$lang->site_title} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_config_general_site_title" target="_blank">{$lang->help}</a></label>
|
||||
<div class="x_controls">
|
||||
<input type="text" name="site_title" value="{$siteTitle}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="_target_module">{$lang->start_module} <a class="x_icon-question-sign" href="./help/index.html#UMAN_config_general_homepage" target="_blank">{$lang->help}</a></label>
|
||||
<label class="x_control-label" for="_target_module">{$lang->start_module} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_config_general_homepage" target="_blank">{$lang->help}</a></label>
|
||||
<div class="x_controls">
|
||||
<input class="module_search" type="text" name="index_module_srl" value="{$start_module->index_module_srl}" />
|
||||
</div>
|
||||
|
|
@ -52,7 +55,7 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label">{$lang->use_mobile_view} <a class="x_icon-question-sign" href="./help/index.html#UMAN_config_general_mobile_view" target="_blank">{$lang->help}</a></label>
|
||||
<label class="x_control-label">{$lang->use_mobile_view} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_config_general_mobile_view" target="_blank">{$lang->help}</a></label>
|
||||
<div class="x_controls">
|
||||
<label for="use_mobile_view_y" class="x_inline">
|
||||
<input type="radio" name="use_mobile_view" id="use_mobile_view_y" value="Y" checked="checked"|cond="$use_mobile_view == 'Y'" />
|
||||
|
|
@ -87,11 +90,18 @@
|
|||
<label class="x_control-label">{$lang->allow_use_favicon}</label>
|
||||
<div class="x_controls">
|
||||
<p id="faviconPreview">
|
||||
<img src="{$favicon_url}" alt="favicon" width="16" height="16" class="fn1">
|
||||
<img src="{$favicon_url}" alt="favicon Image" width="16" height="16" class="fn2">
|
||||
<img src="{$favicon_url}" alt="favicon" class="fn1" style="width:16px;height:16px">
|
||||
<img src="{$favicon_url}" alt="favicon Image" class="fn2" style="width:16px;height:16px">
|
||||
</p>
|
||||
<label><input type="checkbox" name="is_delete_favicon" value="1" /> {$lang->cmd_delete}</label>
|
||||
<label><input type="file" name="favicon" id="favicon" title="favicon" /></label>
|
||||
<form action="./" enctype="multipart/form-data" method="post" target="hiddenIframe" class="imageUpload" style="margin:0">
|
||||
<input type="hidden" name="module" value="install">
|
||||
<input type="hidden" name="act" value="procInstallAdminConfigIconUpload">
|
||||
<p>
|
||||
<input type="file" name="favicon" id="favicon" title="Mobile Home Icon"/>
|
||||
<input class="x_btn" type="submit" value="{$lang->cmd_submit}" style="vertical-align:top">
|
||||
</p>
|
||||
</form>
|
||||
<span class="x_help-block">{$lang->about_use_favicon}</span>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -103,36 +113,44 @@
|
|||
<span>www</span>
|
||||
</p>
|
||||
<label><input type="checkbox" name="is_delete_mobicon" value="1" /> {$lang->cmd_delete}</label>
|
||||
<label><input type="file" name="mobicon" id="mobicon" title="Mobile Home Icon"/></label>
|
||||
<form action="./" enctype="multipart/form-data" method="post" target="hiddenIframe" class="imageUpload" style="margin:0">
|
||||
<input type="hidden" name="module" value="install">
|
||||
<input type="hidden" name="act" value="procInstallAdminConfigIconUpload">
|
||||
<p>
|
||||
<input type="file" name="mobicon" id="mobicon" title="Mobile Home Icon"/>
|
||||
<input class="x_btn" type="submit" value="{$lang->cmd_submit}" style="vertical-align:top">
|
||||
</p>
|
||||
</form>
|
||||
<span class="x_help-block">{$lang->detail_use_mobile_icon}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_clearfix btnArea">
|
||||
<div class="x_pull-right">
|
||||
<button type="submit" class="x_btn x_btn-primary">{$lang->cmd_save}</button>
|
||||
<button type="submit" class="x_btn x_btn-primary" onclick="doSubmitConfig()">{$lang->cmd_save}</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</section>
|
||||
<section class="section collapsed">
|
||||
<h1>{$lang->subtitle_advanced}</h1>
|
||||
<form action="./" method="post" enctype="multipart/form-data" class="x_form-horizontal">
|
||||
<input type="hidden" name="module" value="install" />
|
||||
<input type="hidden" name="act" value="procInstallAdminSaveTimeZone" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/admin/tpl/config_general/1" />
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="admin_ip_list">{$lang->admin_ip_limit} <a class="x_icon-question-sign" href="./help/index.html#UMAN_config_general_admin_iplist" target="_blank">{$lang->help}</a></label>
|
||||
<label class="x_control-label" for="admin_ip_list">{$lang->admin_ip_limit} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_config_general_admin_iplist" target="_blank">{$lang->help}</a></label>
|
||||
<div class="x_controls">
|
||||
<textarea name="admin_ip_list" id="admin_ip_list" rows="4" cols="42" placeholder="{$IP}({$lang->local_ip_address})" style="float:left;margin-right:10px">{$admin_ip_list}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="default_url">{$lang->default_url} <a class="x_icon-question-sign" href="./help/index.html#UMAN_config_general_default_url" target="_blank">{$lang->help}</a></label>
|
||||
<label class="x_control-label" for="default_url">{$lang->default_url} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_config_general_default_url" target="_blank">{$lang->help}</a></label>
|
||||
<div class="x_controls">
|
||||
<input type="url" name="default_url" id="default_url" value="{$default_url}"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label">{$lang->use_ssl} <a class="x_icon-question-sign" href="./help/index.html#UMAN_config_general_ssl" target="_blank">{$lang->help}</a></label>
|
||||
<label class="x_control-label">{$lang->use_ssl} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_config_general_ssl" target="_blank">{$lang->help}</a></label>
|
||||
<div class="x_controls">
|
||||
<!--@foreach($lang->ssl_options as $key => $val)-->
|
||||
<label for="ssl_{$key}" class="x_inline"><input type="radio" name="use_ssl" id="ssl_{$key}" value="{$key}" checked="checked"|cond="$use_ssl==$key" /> {$val}</label>
|
||||
|
|
@ -142,8 +160,8 @@
|
|||
<div class="x_control-group">
|
||||
<label class="x_control-label">{$lang->server_ports}</label>
|
||||
<div class="x_controls">
|
||||
<label for="http_port" class="x_inline" style="margin-bottom:0;padding-top:0">HTTP: <input type="number" name="http_port" id="http_port" size="5" value="{$http_port}" style="width:50px" /></label>
|
||||
<label for="https_port" class="x_inline" style="margin-bottom:0;padding-top:0">HTTPS: <input type="number" name="https_port" id="https_port" size="5" value="{$https_port}" style="width:50px" /></label>
|
||||
<label for="http_port" class="x_inline" style="margin-bottom:0;padding-top:0">HTTP: <input type="number" name="http_port" id="http_port" size="5" value="{$http_port}" /></label>
|
||||
<label for="https_port" class="x_inline" style="margin-bottom:0;padding-top:0">HTTPS: <input type="number" name="https_port" id="https_port" size="5" value="{$https_port}" /></label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group" cond="__XE_CDN_VERSION__!='%__XE_CDN_VERSION__%'">
|
||||
|
|
@ -162,21 +180,21 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label">{$lang->use_sso} <a class="x_icon-question-sign" href="./help/index.html#UMAN_config_general_sso" target="_blank">{$lang->help}</a></label>
|
||||
<label class="x_control-label">{$lang->use_sso} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_config_general_sso" target="_blank">{$lang->help}</a></label>
|
||||
<div class="x_controls">
|
||||
<label for="sso_y" class="x_inline"><input type="radio" name="use_sso" id="sso_y" value="Y" checked="checked"|cond="$use_sso=='Y'" /> {$lang->cmd_yes}</label>
|
||||
<label for="sso_n" class="x_inline"><input type="radio" name="use_sso" id="sso_n" value="N" checked="checked"|cond="$use_sso!='Y'" /> {$lang->cmd_no}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label">{$lang->use_db_session} <a class="x_icon-question-sign" href="./help/index.html#UMAN_config_general_db_session" target="_blank">{$lang->help}</a></label>
|
||||
<label class="x_control-label">{$lang->use_db_session} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_config_general_db_session" target="_blank">{$lang->help}</a></label>
|
||||
<div class="x_controls">
|
||||
<label for="use_db_session_y" class="x_inline"><input type="radio" name="use_db_session" id="use_db_session_y" value="Y" checked="checked"|cond="$use_db_session=='Y'" /> {$lang->cmd_yes}</label>
|
||||
<label for="use_db_session_n" class="x_inline"><input type="radio" name="use_db_session" id="use_db_session_n" value="N" checked="checked"|cond="$use_db_session!='Y'" /> {$lang->cmd_no}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label">{$lang->qmail_compatibility} <a class="x_icon-question-sign" href="./help/index.html#UMAN_config_general_qmail" target="_blank">{$lang->help}</a></label>
|
||||
<label class="x_control-label">{$lang->qmail_compatibility} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_config_general_qmail" target="_blank">{$lang->help}</a></label>
|
||||
<div class="x_controls">
|
||||
<label for="qmail_compatibility_y" class="x_inline"><input type="radio" name="qmail_compatibility" id="qmail_compatibility_y" value="Y" checked="checked"|cond="$qmail_compatibility=='Y'" /> {$lang->cmd_yes}</label>
|
||||
<label for="qmail_compatibility_n" class="x_inline"><input type="radio" name="qmail_compatibility" id="qmail_compatibility_n" value="N" checked="checked"|cond="$qmail_compatibility!='Y'" /> {$lang->cmd_no}</label>
|
||||
|
|
@ -189,22 +207,36 @@
|
|||
</div>
|
||||
</form>
|
||||
</section>
|
||||
<iframe name="hiddenIframe" src="about:blank" hidden></iframe>
|
||||
<script>
|
||||
jQuery(function($){
|
||||
$('#favicon').change(function(){
|
||||
var re_favicon = /[^.]+\.ico$/
|
||||
if(re_favicon.test($(this).val()) != true){
|
||||
alert('*.ico {$lang->msg_possible_only_file}');
|
||||
return false;
|
||||
}
|
||||
function afterUploadConfigImage(name, fileName, tmpFileName)
|
||||
{
|
||||
jQuery('#' + name + 'Preview img').attr('src', tmpFileName);
|
||||
jQuery('#' + name).val('');
|
||||
}
|
||||
|
||||
function alertUploadMessage(msg) {
|
||||
alert(msg);
|
||||
}
|
||||
|
||||
function doSubmitConfig()
|
||||
{
|
||||
var $forms = jQuery('#admin_config').find('input[name][type="hidden"], input[name][type="text"], input[name][type="checkbox"]:checked, select[name], textarea[name], input[name][type="radio"]:checked');
|
||||
var $configForm = jQuery('#config_form');
|
||||
var $container = $configForm.children('div');
|
||||
$container.empty();
|
||||
|
||||
$forms.each(function($)
|
||||
{
|
||||
var $this = jQuery(this);
|
||||
|
||||
if($this.parents('.imageUpload').length) return;
|
||||
|
||||
var $input = jQuery('<input>').attr('type', 'hidden').attr('name', $this.attr('name')).val($this.val());
|
||||
$container.append($input);
|
||||
});
|
||||
$('#mobicon').change(function(){
|
||||
var re_favicon = /[^.]+\.png$/
|
||||
if(re_favicon.test($(this).val()) != true){
|
||||
alert('*.png {$lang->msg_possible_only_file}');
|
||||
return false;
|
||||
}
|
||||
});
|
||||
});
|
||||
$configForm.submit();
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
|
|
|
|||
|
|
@ -917,9 +917,9 @@
|
|||
.x .x_dropdown-menu li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:20px;color:#333333;white-space:nowrap}
|
||||
.x .x_dropdown-menu li>a:hover,
|
||||
.x .x_dropdown-menu li>a:focus,
|
||||
.x .x_dropdown-submenu:hover>a{color:#ffffff;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top, #0088cc, #0077b3);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3));background-image:-webkit-linear-gradient(top, #0088cc, #0077b3);background-image:-o-linear-gradient(top, #0088cc, #0077b3);background-image:linear-gradient(to bottom, #0088cc, #0077b3);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0)}
|
||||
.x .x_dropdown-submenu:hover>a{color:#ffffff;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top, #0088cc, #0077b3);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3));background-image:-webkit-linear-gradient(top, #0088cc, #0077b3);background-image:-o-linear-gradient(top, #0088cc, #0077b3);background-image:linear-gradient(to bottom, #0088cc, #0077b3);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0077b3', GradientType=0)}
|
||||
.x .x_dropdown-menu .x_active>a,
|
||||
.x .x_dropdown-menu .x_active>a:hover{color:#ffffff;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top, #0088cc, #0077b3);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3));background-image:-webkit-linear-gradient(top, #0088cc, #0077b3);background-image:-o-linear-gradient(top, #0088cc, #0077b3);background-image:linear-gradient(to bottom, #0088cc, #0077b3);background-repeat:repeat-x;outline:0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0)}
|
||||
.x .x_dropdown-menu .x_active>a:hover{color:#ffffff;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top, #0088cc, #0077b3);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3));background-image:-webkit-linear-gradient(top, #0088cc, #0077b3);background-image:-o-linear-gradient(top, #0088cc, #0077b3);background-image:linear-gradient(to bottom, #0088cc, #0077b3);background-repeat:repeat-x;outline:0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0077b3', GradientType=0)}
|
||||
.x .x_dropdown-menu .x_disabled>a,
|
||||
.x .x_dropdown-menu .x_disabled>a:hover{color:#999999}
|
||||
.x .x_dropdown-menu .x_disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}
|
||||
|
|
@ -951,7 +951,7 @@
|
|||
.x .x_close{float:right;font-size:20px;font-weight:bold;line-height:20px;color:#000000;text-shadow:0 1px 0 #ffffff;opacity:0.2;filter:alpha(opacity=20)}
|
||||
.x .x_close:hover{color:#000000;text-decoration:none;cursor:pointer;opacity:0.4;filter:alpha(opacity=40)}
|
||||
.x button.x_close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}
|
||||
.x .x_btn{display:inline-block;*display:inline;padding:4px 12px;margin-bottom:0;*margin-left:.3em;font-size:14px;line-height:20px;color:#333333;text-align:center;text-shadow:0 1px 1px rgba(255, 255, 255, 0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-moz-linear-gradient(top, #ffffff, #e6e6e6);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));background-image:-webkit-linear-gradient(top, #ffffff, #e6e6e6);background-image:-o-linear-gradient(top, #ffffff, #e6e6e6);background-image:linear-gradient(to bottom, #ffffff, #e6e6e6);background-repeat:repeat-x;border:1px solid #bbbbbb;*border:0;border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);border-bottom-color:#a2a2a2;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);*zoom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);-moz-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05)}
|
||||
.x .x_btn{display:inline-block;*display:inline;padding:4px 12px;margin-bottom:0;*margin-left:.3em;font-size:14px;line-height:20px;color:#333333;text-align:center;text-shadow:0 1px 1px rgba(255, 255, 255, 0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-moz-linear-gradient(top, #ffffff, #e6e6e6);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));background-image:-webkit-linear-gradient(top, #ffffff, #e6e6e6);background-image:-o-linear-gradient(top, #ffffff, #e6e6e6);background-image:linear-gradient(to bottom, #ffffff, #e6e6e6);background-repeat:repeat-x;border:1px solid #bbbbbb;*border:0;border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);border-bottom-color:#a2a2a2;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);*zoom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);-moz-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05)}
|
||||
.x .x_btn:hover,
|
||||
.x .x_btn:active,
|
||||
.x .x_btn.x_active,
|
||||
|
|
@ -987,7 +987,7 @@
|
|||
.x .x_btn-info.x_active,
|
||||
.x .x_btn-inverse.x_active{color:rgba(255, 255, 255, 0.75)}
|
||||
.x .x_btn{border-color:#c5c5c5;border-color:rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.25)}
|
||||
.x .x_btn-primary{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#006dcc;*background-color:#0044cc;background-image:-moz-linear-gradient(top, #0088cc, #0044cc);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));background-image:-webkit-linear-gradient(top, #0088cc, #0044cc);background-image:-o-linear-gradient(top, #0088cc, #0044cc);background-image:linear-gradient(to bottom, #0088cc, #0044cc);background-repeat:repeat-x;border-color:#0044cc #0044cc #002a80;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}
|
||||
.x .x_btn-primary{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#006dcc;*background-color:#0044cc;background-image:-moz-linear-gradient(top, #0088cc, #0044cc);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));background-image:-webkit-linear-gradient(top, #0088cc, #0044cc);background-image:-o-linear-gradient(top, #0088cc, #0044cc);background-image:linear-gradient(to bottom, #0088cc, #0044cc);background-repeat:repeat-x;border-color:#0044cc #0044cc #002a80;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}
|
||||
.x .x_btn-primary:hover,
|
||||
.x .x_btn-primary:active,
|
||||
.x .x_btn-primary.x_active,
|
||||
|
|
@ -995,7 +995,7 @@
|
|||
.x .x_btn-primary[disabled]{color:#ffffff;background-color:#0044cc;*background-color:#003bb3}
|
||||
.x .x_btn-primary:active,
|
||||
.x .x_btn-primary.x_active{background-color:#003399 \9}
|
||||
.x .x_btn-warning{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#faa732;*background-color:#f89406;background-image:-moz-linear-gradient(top, #fbb450, #f89406);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));background-image:-webkit-linear-gradient(top, #fbb450, #f89406);background-image:-o-linear-gradient(top, #fbb450, #f89406);background-image:linear-gradient(to bottom, #fbb450, #f89406);background-repeat:repeat-x;border-color:#f89406 #f89406 #ad6704;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}
|
||||
.x .x_btn-warning{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#faa732;*background-color:#f89406;background-image:-moz-linear-gradient(top, #fbb450, #f89406);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));background-image:-webkit-linear-gradient(top, #fbb450, #f89406);background-image:-o-linear-gradient(top, #fbb450, #f89406);background-image:linear-gradient(to bottom, #fbb450, #f89406);background-repeat:repeat-x;border-color:#f89406 #f89406 #ad6704;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fbb450', endColorstr='#f89406', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}
|
||||
.x .x_btn-warning:hover,
|
||||
.x .x_btn-warning:active,
|
||||
.x .x_btn-warning.x_active,
|
||||
|
|
@ -1003,7 +1003,7 @@
|
|||
.x .x_btn-warning[disabled]{color:#ffffff;background-color:#f89406;*background-color:#df8505}
|
||||
.x .x_btn-warning:active,
|
||||
.x .x_btn-warning.x_active{background-color:#c67605 \9}
|
||||
.x .x_btn-danger{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#da4f49;*background-color:#bd362f;background-image:-moz-linear-gradient(top, #ee5f5b, #bd362f);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));background-image:-webkit-linear-gradient(top, #ee5f5b, #bd362f);background-image:-o-linear-gradient(top, #ee5f5b, #bd362f);background-image:linear-gradient(to bottom, #ee5f5b, #bd362f);background-repeat:repeat-x;border-color:#bd362f #bd362f #802420;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffbd362f', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}
|
||||
.x .x_btn-danger{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#da4f49;*background-color:#bd362f;background-image:-moz-linear-gradient(top, #ee5f5b, #bd362f);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));background-image:-webkit-linear-gradient(top, #ee5f5b, #bd362f);background-image:-o-linear-gradient(top, #ee5f5b, #bd362f);background-image:linear-gradient(to bottom, #ee5f5b, #bd362f);background-repeat:repeat-x;border-color:#bd362f #bd362f #802420;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#bd362f', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}
|
||||
.x .x_btn-danger:hover,
|
||||
.x .x_btn-danger:active,
|
||||
.x .x_btn-danger.x_active,
|
||||
|
|
@ -1011,7 +1011,7 @@
|
|||
.x .x_btn-danger[disabled]{color:#ffffff;background-color:#bd362f;*background-color:#a9302a}
|
||||
.x .x_btn-danger:active,
|
||||
.x .x_btn-danger.x_active{background-color:#942a25 \9}
|
||||
.x .x_btn-success{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#5bb75b;*background-color:#51a351;background-image:-moz-linear-gradient(top, #62c462, #51a351);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351));background-image:-webkit-linear-gradient(top, #62c462, #51a351);background-image:-o-linear-gradient(top, #62c462, #51a351);background-image:linear-gradient(to bottom, #62c462, #51a351);background-repeat:repeat-x;border-color:#51a351 #51a351 #387038;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff51a351', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}
|
||||
.x .x_btn-success{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#5bb75b;*background-color:#51a351;background-image:-moz-linear-gradient(top, #62c462, #51a351);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351));background-image:-webkit-linear-gradient(top, #62c462, #51a351);background-image:-o-linear-gradient(top, #62c462, #51a351);background-image:linear-gradient(to bottom, #62c462, #51a351);background-repeat:repeat-x;border-color:#51a351 #51a351 #387038;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#51a351', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}
|
||||
.x .x_btn-success:hover,
|
||||
.x .x_btn-success:active,
|
||||
.x .x_btn-success.x_active,
|
||||
|
|
@ -1223,7 +1223,7 @@
|
|||
.x .x_nav>.x_disabled>a{color:#999999}
|
||||
.x .x_nav>.x_disabled>a:hover{text-decoration:none;cursor:default;background-color:transparent}
|
||||
.x .x_navbar{*position:relative;*z-index:2;margin-bottom:20px;overflow:visible}
|
||||
.x .x_navbar-inner{min-height:40px;padding-right:20px;padding-left:20px;background-color:#fafafa;background-image:-moz-linear-gradient(top, #ffffff, #f2f2f2);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#f2f2f2));background-image:-webkit-linear-gradient(top, #ffffff, #f2f2f2);background-image:-o-linear-gradient(top, #ffffff, #f2f2f2);background-image:linear-gradient(to bottom, #ffffff, #f2f2f2);background-repeat:repeat-x;border:1px solid #d4d4d4;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff2f2f2', GradientType=0);*zoom:1;-webkit-box-shadow:0 1px 4px rgba(0, 0, 0, 0.065);-moz-box-shadow:0 1px 4px rgba(0, 0, 0, 0.065);box-shadow:0 1px 4px rgba(0, 0, 0, 0.065)}
|
||||
.x .x_navbar-inner{min-height:40px;padding-right:20px;padding-left:20px;background-color:#fafafa;background-image:-moz-linear-gradient(top, #ffffff, #f2f2f2);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#f2f2f2));background-image:-webkit-linear-gradient(top, #ffffff, #f2f2f2);background-image:-o-linear-gradient(top, #ffffff, #f2f2f2);background-image:linear-gradient(to bottom, #ffffff, #f2f2f2);background-repeat:repeat-x;border:1px solid #d4d4d4;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f2f2f2', GradientType=0);*zoom:1;-webkit-box-shadow:0 1px 4px rgba(0, 0, 0, 0.065);-moz-box-shadow:0 1px 4px rgba(0, 0, 0, 0.065);box-shadow:0 1px 4px rgba(0, 0, 0, 0.065)}
|
||||
.x .x_navbar-inner:before,
|
||||
.x .x_navbar-inner:after{display:table;line-height:0;content:""}
|
||||
.x .x_navbar-inner:after{clear:both}
|
||||
|
|
@ -1287,7 +1287,7 @@
|
|||
.x .x_navbar .x_nav>.x_active>a,
|
||||
.x .x_navbar .x_nav>.x_active>a:hover,
|
||||
.x .x_navbar .x_nav>.x_active>a:focus{color:#555555;text-decoration:none;background-color:#e5e5e5;-webkit-box-shadow:inset 0 3px 8px rgba(0, 0, 0, 0.125);-moz-box-shadow:inset 0 3px 8px rgba(0, 0, 0, 0.125);box-shadow:inset 0 3px 8px rgba(0, 0, 0, 0.125)}
|
||||
.x .x_navbar .x_btn-navbar{display:none;float:right;padding:7px 10px;margin-right:5px;margin-left:5px;color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#ededed;*background-color:#e5e5e5;background-image:-moz-linear-gradient(top, #f2f2f2, #e5e5e5);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#f2f2f2), to(#e5e5e5));background-image:-webkit-linear-gradient(top, #f2f2f2, #e5e5e5);background-image:-o-linear-gradient(top, #f2f2f2, #e5e5e5);background-image:linear-gradient(to bottom, #f2f2f2, #e5e5e5);background-repeat:repeat-x;border-color:#e5e5e5 #e5e5e5 #bfbfbf;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2f2f2', endColorstr='#ffe5e5e5', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);-moz-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075)}
|
||||
.x .x_navbar .x_btn-navbar{display:none;float:right;padding:7px 10px;margin-right:5px;margin-left:5px;color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#ededed;*background-color:#e5e5e5;background-image:-moz-linear-gradient(top, #f2f2f2, #e5e5e5);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#f2f2f2), to(#e5e5e5));background-image:-webkit-linear-gradient(top, #f2f2f2, #e5e5e5);background-image:-o-linear-gradient(top, #f2f2f2, #e5e5e5);background-image:linear-gradient(to bottom, #f2f2f2, #e5e5e5);background-repeat:repeat-x;border-color:#e5e5e5 #e5e5e5 #bfbfbf;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f2f2f2', endColorstr='#e5e5e5', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);-moz-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075)}
|
||||
.x .x_navbar .x_btn-navbar:hover,
|
||||
.x .x_navbar .x_btn-navbar:active,
|
||||
.x .x_navbar .x_btn-navbar.x_active,
|
||||
|
|
@ -1317,7 +1317,7 @@
|
|||
.x .x_navbar .x_nav>li>.x_dropdown-menu.x_pull-right:after{right:13px;left:auto}
|
||||
.x .x_navbar .x_pull-right>li>.x_dropdown-menu .x_dropdown-menu,
|
||||
.x .x_navbar .x_nav>li>.x_dropdown-menu.x_pull-right .x_dropdown-menu{right:100%;left:auto;margin-right:-1px;margin-left:0;-webkit-border-radius:6px 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}
|
||||
.x .x_navbar-inverse .x_navbar-inner{background-color:#1b1b1b;background-image:-moz-linear-gradient(top, #222222, #111111);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#222222), to(#111111));background-image:-webkit-linear-gradient(top, #222222, #111111);background-image:-o-linear-gradient(top, #222222, #111111);background-image:linear-gradient(to bottom, #222222, #111111);background-repeat:repeat-x;border-color:#252525;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222', endColorstr='#ff111111', GradientType=0)}
|
||||
.x .x_navbar-inverse .x_navbar-inner{background-color:#1b1b1b;background-image:-moz-linear-gradient(top, #222222, #111111);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#222222), to(#111111));background-image:-webkit-linear-gradient(top, #222222, #111111);background-image:-o-linear-gradient(top, #222222, #111111);background-image:linear-gradient(to bottom, #222222, #111111);background-repeat:repeat-x;border-color:#252525;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#222222', endColorstr='#111111', GradientType=0)}
|
||||
.x .x_navbar-inverse .x_brand,
|
||||
.x .x_navbar-inverse .x_nav>li>a{color:#999999;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25)}
|
||||
.x .x_navbar-inverse .x_brand:hover,
|
||||
|
|
@ -1346,7 +1346,7 @@
|
|||
.x .x_navbar-inverse .x_navbar-search .x_search-query::-webkit-input-placeholder{color:#cccccc}
|
||||
.x .x_navbar-inverse .x_navbar-search .x_search-query:focus,
|
||||
.x .x_navbar-inverse .x_navbar-search .x_search-query.x_focused{padding:5px 15px;color:#333333;text-shadow:0 1px 0 #ffffff;background-color:#ffffff;border:0;outline:0;-webkit-box-shadow:0 0 3px rgba(0, 0, 0, 0.15);-moz-box-shadow:0 0 3px rgba(0, 0, 0, 0.15);box-shadow:0 0 3px rgba(0, 0, 0, 0.15)}
|
||||
.x .x_navbar-inverse .x_btn-navbar{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#0e0e0e;*background-color:#040404;background-image:-moz-linear-gradient(top, #151515, #040404);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#151515), to(#040404));background-image:-webkit-linear-gradient(top, #151515, #040404);background-image:-o-linear-gradient(top, #151515, #040404);background-image:linear-gradient(to bottom, #151515, #040404);background-repeat:repeat-x;border-color:#040404 #040404 #000000;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff151515', endColorstr='#ff040404', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}
|
||||
.x .x_navbar-inverse .x_btn-navbar{color:#ffffff;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#0e0e0e;*background-color:#040404;background-image:-moz-linear-gradient(top, #151515, #040404);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#151515), to(#040404));background-image:-webkit-linear-gradient(top, #151515, #040404);background-image:-o-linear-gradient(top, #151515, #040404);background-image:linear-gradient(to bottom, #151515, #040404);background-repeat:repeat-x;border-color:#040404 #040404 #000000;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#151515', endColorstr='#040404', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}
|
||||
.x .x_navbar-inverse .x_btn-navbar:hover,
|
||||
.x .x_navbar-inverse .x_btn-navbar:active,
|
||||
.x .x_navbar-inverse .x_btn-navbar.x_active,
|
||||
|
|
@ -1532,25 +1532,25 @@ to{background-position:40px 0}
|
|||
from{background-position:40px 0}
|
||||
to{background-position:0 0}
|
||||
}
|
||||
.x .x_progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top, #f5f5f5, #f9f9f9);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#f5f5f5), to(#f9f9f9));background-image:-webkit-linear-gradient(top, #f5f5f5, #f9f9f9);background-image:-o-linear-gradient(top, #f5f5f5, #f9f9f9);background-image:linear-gradient(to bottom, #f5f5f5, #f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#fff9f9f9', GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1);-moz-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1);box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1)}
|
||||
.x .x_progress .x_bar{float:left;width:0;height:100%;font-size:12px;color:#ffffff;text-align:center;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top, #149bdf, #0480be);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#149bdf), to(#0480be));background-image:-webkit-linear-gradient(top, #149bdf, #0480be);background-image:-o-linear-gradient(top, #149bdf, #0480be);background-image:linear-gradient(to bottom, #149bdf, #0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf', endColorstr='#ff0480be', GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0, 0, 0, 0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0, 0, 0, 0.15);box-shadow:inset 0 -1px 0 rgba(0, 0, 0, 0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width 0.6s ease;-moz-transition:width 0.6s ease;-o-transition:width 0.6s ease;transition:width 0.6s ease}
|
||||
.x .x_progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top, #f5f5f5, #f9f9f9);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#f5f5f5), to(#f9f9f9));background-image:-webkit-linear-gradient(top, #f5f5f5, #f9f9f9);background-image:-o-linear-gradient(top, #f5f5f5, #f9f9f9);background-image:linear-gradient(to bottom, #f5f5f5, #f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f5f5f5', endColorstr='#f9f9f9', GradientType=0);-webkit-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1);-moz-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1);box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1)}
|
||||
.x .x_progress .x_bar{float:left;width:0;height:100%;font-size:12px;color:#ffffff;text-align:center;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top, #149bdf, #0480be);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#149bdf), to(#0480be));background-image:-webkit-linear-gradient(top, #149bdf, #0480be);background-image:-o-linear-gradient(top, #149bdf, #0480be);background-image:linear-gradient(to bottom, #149bdf, #0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#149bdf', endColorstr='#0480be', GradientType=0);-webkit-box-shadow:inset 0 -1px 0 rgba(0, 0, 0, 0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0, 0, 0, 0.15);box-shadow:inset 0 -1px 0 rgba(0, 0, 0, 0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width 0.6s ease;-moz-transition:width 0.6s ease;-o-transition:width 0.6s ease;transition:width 0.6s ease}
|
||||
.x .x_progress .x_bar+.x_bar{-webkit-box-shadow:inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15);-moz-box-shadow:inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15);box-shadow:inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15)}
|
||||
.x .x_progress-striped .x_bar{background-color:#149bdf;background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 40px;background-size:40px 40px}
|
||||
.x .x_progress.x_active .x_bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}
|
||||
.x .x_progress-danger .x_bar,
|
||||
.x .x_progress .x_bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top, #ee5f5b, #c43c35);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#c43c35));background-image:-webkit-linear-gradient(top, #ee5f5b, #c43c35);background-image:-o-linear-gradient(top, #ee5f5b, #c43c35);background-image:linear-gradient(to bottom, #ee5f5b, #c43c35);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffc43c35', GradientType=0)}
|
||||
.x .x_progress .x_bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top, #ee5f5b, #c43c35);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#c43c35));background-image:-webkit-linear-gradient(top, #ee5f5b, #c43c35);background-image:-o-linear-gradient(top, #ee5f5b, #c43c35);background-image:linear-gradient(to bottom, #ee5f5b, #c43c35);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#c43c35', GradientType=0)}
|
||||
.x .x_progress-danger.x_progress-striped .x_bar,
|
||||
.x .x_progress-striped .x_bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)}
|
||||
.x .x_progress-success .x_bar,
|
||||
.x .x_progress .x_bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top, #62c462, #57a957);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#57a957));background-image:-webkit-linear-gradient(top, #62c462, #57a957);background-image:-o-linear-gradient(top, #62c462, #57a957);background-image:linear-gradient(to bottom, #62c462, #57a957);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff57a957', GradientType=0)}
|
||||
.x .x_progress .x_bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top, #62c462, #57a957);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#57a957));background-image:-webkit-linear-gradient(top, #62c462, #57a957);background-image:-o-linear-gradient(top, #62c462, #57a957);background-image:linear-gradient(to bottom, #62c462, #57a957);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#62c462', endColorstr='#57a957', GradientType=0)}
|
||||
.x .x_progress-success.x_progress-striped .x_bar,
|
||||
.x .x_progress-striped .x_bar-success{background-color:#62c462;background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)}
|
||||
.x .x_progress-info .x_bar,
|
||||
.x .x_progress .x_bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top, #5bc0de, #339bb9);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#339bb9));background-image:-webkit-linear-gradient(top, #5bc0de, #339bb9);background-image:-o-linear-gradient(top, #5bc0de, #339bb9);background-image:linear-gradient(to bottom, #5bc0de, #339bb9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff339bb9', GradientType=0)}
|
||||
.x .x_progress .x_bar-info{background-color:#4bb1cf;background-image:-moz-linear-gradient(top, #5bc0de, #339bb9);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#339bb9));background-image:-webkit-linear-gradient(top, #5bc0de, #339bb9);background-image:-o-linear-gradient(top, #5bc0de, #339bb9);background-image:linear-gradient(to bottom, #5bc0de, #339bb9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#5bc0de', endColorstr='#339bb9', GradientType=0)}
|
||||
.x .x_progress-info.x_progress-striped .x_bar,
|
||||
.x .x_progress-striped .x_bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)}
|
||||
.x .x_progress-warning .x_bar,
|
||||
.x .x_progress .x_bar-warning{background-color:#faa732;background-image:-moz-linear-gradient(top, #fbb450, #f89406);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));background-image:-webkit-linear-gradient(top, #fbb450, #f89406);background-image:-o-linear-gradient(top, #fbb450, #f89406);background-image:linear-gradient(to bottom, #fbb450, #f89406);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0)}
|
||||
.x .x_progress .x_bar-warning{background-color:#faa732;background-image:-moz-linear-gradient(top, #fbb450, #f89406);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));background-image:-webkit-linear-gradient(top, #fbb450, #f89406);background-image:-o-linear-gradient(top, #fbb450, #f89406);background-image:linear-gradient(to bottom, #fbb450, #f89406);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fbb450', endColorstr='#f89406', GradientType=0)}
|
||||
.x .x_progress-warning.x_progress-striped .x_bar,
|
||||
.x .x_progress-striped .x_bar-warning{background-color:#fbb450;background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)}
|
||||
.x .x_accordion{margin-bottom:20px}
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -39,7 +39,7 @@ body>.x,
|
|||
.x h5,
|
||||
.x h6{font-size:12px}
|
||||
.x [class^="x_icon-"],
|
||||
.x [class*=" x_icon-"]{text-decoration:none;border:0;padding:0;background-color:transparent;overflow:hidden;font-size:0;text-indent:100%}
|
||||
.x [class*=" x_icon-"]{text-decoration:none;border:0;padding:0 0 0 14px;width:0;background-color:transparent;overflow:hidden;font-size:0}
|
||||
.x .x_close{width:32px;height:32px;font-size:17px;opacity:.5;filter:alpha(opacity=50)}
|
||||
.x .x_alert{position:relative}
|
||||
.x .x_alert>.x_close{position:absolute;top:0;right:0}
|
||||
|
|
@ -49,7 +49,7 @@ body>.x,
|
|||
.x .x_pagination ul>li>strong{line-height:24px;padding:0 8px}
|
||||
.x .x_pagination ul>.x_active>a,
|
||||
.x .x_pagination ul>.x_active>span,
|
||||
.x .x_pagination ul>.x_active>strong{line-height:26px;border:0;background-color:#333;color:#fff;font-weight:bold;font-size:18px;font-family:Arial, Helvetica, sans-serif;border-radius:2px}
|
||||
.x .x_pagination ul>.x_active>strong{line-height:26px;border:0;background-color:#333 !important;color:#fff;font-weight:bold;font-size:18px;font-family:Arial, Helvetica, sans-serif;border-radius:2px}
|
||||
.x .x_pagination [id^="goTo"]{display:none;margin:0;padding:0}
|
||||
.x .x_pagination [id^="goTo"]>*{border:0;border-radius:0}
|
||||
.x .x_pagination [id^="goTo"]>[type="number"]{height:16px;line-height:16px;width:50px;text-align:center}
|
||||
|
|
@ -86,6 +86,8 @@ body>.x,
|
|||
.x .x_table>caption>a,
|
||||
.x .x_table>caption>i,
|
||||
.x .x_table>caption>strong{position:relative;top:7px}
|
||||
.x .x_table thead th{vertical-align:top}
|
||||
.x .x_table input{margin:0}
|
||||
.x .x_inline{display:inline-block;*display:inline;*zoom:1}
|
||||
.x .x_page-header+.x_form-horizontal{margin-top:-20px}
|
||||
.x .x_controls:after{content:"";display:block;clear:both}
|
||||
|
|
@ -135,13 +137,12 @@ body>.x,
|
|||
.x input[type="url"],
|
||||
.x input[type="search"],
|
||||
.x input[type="tel"],
|
||||
.x input[type="color"],
|
||||
.x_uneditable-input{height:16px;line-height:16px}
|
||||
.x input[type="color"]{height:16px;line-height:16px}
|
||||
.x input[type="number"]{width:50px}
|
||||
.x select{padding:0;height:26px;line-height:26px}
|
||||
.x select[multiple]{height:auto}
|
||||
.x textarea{vertical-align:top}
|
||||
.x .x_tab-content{overflow:visible}
|
||||
.x .x_table thead th{vertical-align:top}
|
||||
.x .x_well>*:first-child{margin-top:0}
|
||||
.x .x_well>*:last-child{margin-bottom:0}
|
||||
.x legend{font-size:14px;font-weight:bold;line-height:24px}
|
||||
|
|
@ -150,7 +151,7 @@ body>.x,
|
|||
.x td p,
|
||||
.x p:last-child{margin-bottom:0}
|
||||
.x form{margin:0 0 10px 0}
|
||||
.x form .x_btn-primary[type="submit"]:only-of-type{min-width:120px}
|
||||
.x form .x_btn[type="submit"]:only-child{min-width:120px}
|
||||
.x .x_help-inline{display:inline}
|
||||
.x .x_btn.x_disabled,
|
||||
.x .x_btn[disabled]{opacity:.5;filter:alpha(opacity=50);cursor:not-allowed}
|
||||
|
|
@ -174,7 +175,8 @@ body>.x,
|
|||
.x .search>input[type="search"]{height:16px;line-height:16px;width:120px}
|
||||
.x .vr{color:#ccc;font-style:normal}
|
||||
.x .nowr{white-space:nowrap}
|
||||
.x .btnArea{padding:10px 0;margin:10px 0;border-top:1px solid #ccc}
|
||||
.x .btnArea{padding:10px 0;margin:10px 0;border-top:1px solid #ccc;text-align:right;zoom:1;clear:both}
|
||||
.x .btnArea:after{content:"";display:block;clear:both}
|
||||
.x li.active>a,
|
||||
.x a.active{color:#000;font-weight:bold;text-decoration:none}
|
||||
.x .module_search+[readonly]{vertical-align:top;border-top-right-radius:0;border-bottom-right-radius:0}
|
||||
|
|
@ -193,6 +195,12 @@ body>.x,
|
|||
.x input[checked].switch+i{background-position:0 -16px !important}
|
||||
.x_modal._common {width:600px;margin-left:-300px}
|
||||
.x_modal._common._small{width:400px;margin-left:-200px}
|
||||
@media all and (max-width:650px){
|
||||
.x_modal._common {width:90%;margin-left:-45%}
|
||||
}
|
||||
@media all and (max-width:450px){
|
||||
.x_modal._common._small{width:90%;margin-left:-45%}
|
||||
}
|
||||
.x_modal._common._nobody .x_modal-body,
|
||||
.x_modal._common._type_alert .x_modal-header,
|
||||
.x_modal._common._type_alert ._cancel{display:none}
|
||||
|
|
@ -223,7 +231,7 @@ body>.x,
|
|||
.x>.header{position:relative;z-index:2;padding:10px 15px;zoom:1;border-bottom:1px solid #ddd;background-color:#fff;zoom:1}
|
||||
.x>.header:after{content:"";display:block;clear:both}
|
||||
.x>.header:before{content:"";position:absolute;bottom:0;left:1px;right:1px;height:1px;box-shadow:0 2px 3px #ddd}
|
||||
.x>.body{position:relative;zoom:1;padding:0 0 50px 215px}
|
||||
.x>.body{position:relative;zoom:1;padding:0 0 50px 215px;z-index:1}
|
||||
.x>.body.wide{padding-left:70px}
|
||||
.x>.body:after{content:"";display:block;clear:both}
|
||||
.x>.body>.content{width:100%;padding:1px 0 0 0;float:right;margin:0 0 0 -100%;outline:none}
|
||||
|
|
@ -240,10 +248,10 @@ body>.x,
|
|||
.x>.body.wide>.gnb{width:auto}
|
||||
}
|
||||
/* Header */
|
||||
.x>.header>h1{margin:0 15px 0 0;float:left}
|
||||
.x>.header>h1{display:inline-block;*display:inline;zoom:1;margin:0 15px 0 0;white-space:nowrap}
|
||||
.x>.header>h1>a{text-decoration:none;color:#333;font-size:24px;line-height:40px;font-family:Arial, Helvetica, sans-serif}
|
||||
.x>.header>h1>a>img{vertical-align:text-bottom}
|
||||
.x>.header>.site{margin:14px 0 0 0;float:left;font-size:11px}
|
||||
.x>.header>h1>a>img{vertical-align:middle}
|
||||
.x>.header>.site{display:inline-block;*display:inline;zoom:1;margin:14px 0 0 0;font-size:11px}
|
||||
.x>.header>.site>a{text-decoration:none;color:#666;font-family:Tahoma, Geneva, sans-serif}
|
||||
.x>.header>.site>a:hover,
|
||||
.x>.header>.site>a:focus{text-decoration:underline}
|
||||
|
|
@ -321,7 +329,7 @@ body>.x,
|
|||
.x>.body>.gnb>ul>li.open,
|
||||
.x>.body>.gnb>ul>li.active{border-bottom:0;padding:0 0 1px 0}
|
||||
/* li>a */
|
||||
.x>.body>.gnb>ul>li>a{position:relative;padding:8px 5px 8px 10px;background:#f1f1f1;background:-webkit-gradient(linear,left top,left bottom,from(#F1F1F1),to(#E8E8E8));background:-moz-linear-gradient(top,#F1F1F1,#E8E8E8);background:-o-linear-gradient(top,#F1F1F1,#E8E8E8)}
|
||||
.x>.body>.gnb>ul>li>a{position:relative;padding:8px 5px 8px 10px;background:#f1f1f1;background:-webkit-linear-gradient(top,#F1F1F1,#E8E8E8);background:-moz-linear-gradient(top,#F1F1F1,#E8E8E8);background:-o-linear-gradient(top,#F1F1F1,#E8E8E8);background:-ms-linear-gradient(top,#F1F1F1,#E8E8E8);background:linear-gradient(top,#F1F1F1,#E8E8E8)}
|
||||
.x>.body>.gnb>ul>li>a>i{display:inline-block;width:14px;height:14px;margin:-4px 4px 0 0;vertical-align:middle;opacity:.75;filter:alpha(opacity=75)}
|
||||
.x>.body>.gnb>ul>li>a>b{position:absolute;width:0;height:0;top:50%;right:10px;margin:-2px 0 0 0;border:4px solid transparent;border-top-color:#999}
|
||||
.x>.body>.gnb>ul>li.open>a>b{border-top:0;border-bottom-color:#fff}
|
||||
|
|
@ -334,8 +342,8 @@ body>.x,
|
|||
.x>.body>.gnb>ul>li[data-index="6"]>a>i{background-position:-360px -144px}
|
||||
.x>.body>.gnb>ul>li[data-index="7"]>a>i{background-position:-432px 0}
|
||||
.x>.body>.gnb>ul>li>a:hover,
|
||||
.x>.body>.gnb>ul>li>a:focus{background:#f6f6f6;background:-webkit-gradient(linear,left top,left bottom,from(#f6f6f6),to(#F1F1F1));background:-moz-linear-gradient(top,#f6f6f6,#F1F1F1);background:-o-linear-gradient(top,#f6f6f6,#F1F1F1)}
|
||||
.x>.body>.gnb>ul>li.open>a{font-weight:bold;color:#fff;text-shadow:0 -1px 0 #333;background:#3886d0;background:-webkit-gradient(linear,left top,left bottom,from(#6ebcea),to(#3886d0));background:-moz-linear-gradient(top,#6ebcea,#3886d0);background:-o-linear-gradient(top,#6ebcea,#3886d0)}
|
||||
.x>.body>.gnb>ul>li>a:focus{background:#f6f6f6;background:-webkit-linear-gradient(top,#f6f6f6,#F1F1F1);background:-moz-linear-gradient(top,#f6f6f6,#F1F1F1);background:-o-linear-gradient(top,#f6f6f6,#F1F1F1);background:-ms-linear-gradient(top,#f6f6f6,#F1F1F1);background:linear-gradient(top,#f6f6f6,#F1F1F1)}
|
||||
.x>.body>.gnb>ul>li.open>a{font-weight:bold;color:#fff;text-shadow:0 -1px 0 #333;background:#3886d0;background:-webkit-linear-gradient(top,#6ebcea,#3886d0);background:-moz-linear-gradient(top,#6ebcea,#3886d0);background:-o-linear-gradient(top,#6ebcea,#3886d0);background:-ms-linear-gradient(top,#6ebcea,#3886d0);background:linear-gradient(top,#6ebcea,#3886d0)}
|
||||
.x>.body>.gnb>ul>li.active>a{font-weight:bold;color:#fff;text-shadow:none;background:#222;background:-webkit-linear-gradient(top,from(#555),to(#222));background:-moz-linear-gradient(top,#555,#222);background:-o-linear-gradient(top,#555,#222)}
|
||||
@media all and (max-width:800px){
|
||||
.x>.body>.gnb>ul>li:first-child>a{font-weight:bold;color:#fff;text-shadow:none;border-radius:3px;background-color:#222;background-image:-webkit-linear-gradient(top, #555, #222);background-image:-moz-linear-gradient(top, #555, #222);background-image:-o-linear-gradient(top, #555, #222);background-image:linear-gradient(top, #555, #222);}
|
||||
|
|
@ -351,14 +359,14 @@ body>.x,
|
|||
.x>.body>.gnb>ul>li>ul>li:first-child{border:0}
|
||||
.x>.body>.gnb>ul>li>ul>li.active_{box-shadow:0 0 3px #999;z-index:99;border:1px solid #666;border-left:0;border-right:0}
|
||||
/* li>ul>li>a */
|
||||
.x>.body>.gnb>ul>li>ul>li>a{padding:4px 5px 4px 15px;background:#e8e8e8;background:-webkit-gradient(linear,left top,left bottom,from(#f1f1f1),to(#e8e8e8));background:-moz-linear-gradient(top,#f1f1f1,#e8e8e8);background:-o-linear-gradient(top,#f1f1f1,#e8e8e8)}
|
||||
.x>.body>.gnb>ul>li>ul>li>a{padding:4px 5px 4px 15px;background:#e8e8e8;background:-webkit-linear-gradient(top,#f1f1f1,#e8e8e8);background:-moz-linear-gradient(top,#f1f1f1,#e8e8e8);background:-o-linear-gradient(top,#f1f1f1,#e8e8e8);background:-ms-linear-gradient(top,#f1f1f1,#e8e8e8);background:linear-gradient(top,#f1f1f1,#e8e8e8)}
|
||||
.x>.body>.gnb>ul>li>ul#favorite>li>a{padding:4px 25px 4px 15px}
|
||||
.x>.body>.gnb>ul>li>ul>li:first-child>a{border-radius:4px 4px 0 0}
|
||||
.x>.body>.gnb>ul>li>ul>li:last-child>a{border-radius:0 0 4px 4px}
|
||||
.x>.body>.gnb>ul>li>ul>li:only-child>a{border-radius:4px}
|
||||
.x>.body>.gnb>ul>li>ul>li>a:hover,
|
||||
.x>.body>.gnb>ul>li>ul>li>a:active,
|
||||
.x>.body>.gnb>ul>li>ul>li.active_>a{font-weight:bold;background:-webkit-gradient(linear,left top,left bottom,from(#F6F6F6),to(#F1F1F1));background:-moz-linear-gradient(top,#F6F6F6,#F1F1F1);background:-o-linear-gradient(top,#F6F6F6,#F1F1F1)}
|
||||
.x>.body>.gnb>ul>li>ul>li.active_>a{font-weight:bold;background:-webkit-linear-gradient(top,#F6F6F6,#F1F1F1);background:-moz-linear-gradient(top,#F6F6F6,#F1F1F1);background:-o-linear-gradient(top,#F6F6F6,#F1F1F1);background:-ms-linear-gradient(top,#F6F6F6,#F1F1F1);background:linear-gradient(top,#F6F6F6,#F1F1F1)}
|
||||
.x>.body>.gnb>ul>li>ul>li.active_>a:after{content:"";position:absolute;top:8px;right:-12px;border:6px solid transparent;border-left-color:#f3f3f3;width:0;height:0;overflow:hidden}
|
||||
/* li>ul>li>.action */
|
||||
.x>.body>.gnb>ul>li>ul>li>.remove{position:absolute;top:4px;right:5px}
|
||||
|
|
@ -372,7 +380,7 @@ body>.x,
|
|||
.x .dashboard>div{float:right;width:49%}
|
||||
.x .dashboard>div:first-child{float:left}
|
||||
.x .dashboard>div>section{position:relative;height:196px;border:1px solid #ddd;border-radius:4px;margin:0 0 25px 0;overflow:hidden}
|
||||
.x .dashboard>div>section>h2{font-size:14px;margin:0;padding:6px 15px;border-bottom:1px solid #ddd;background:#e8e8e8;background:-webkit-gradient(linear,left top,left bottom,from(#F1F1F1),to(#E8E8E8));background:-moz-linear-gradient(top,#F1F1F1,#E8E8E8);background:-o-linear-gradient(top,#F1F1F1,#E8E8E8);text-shadow:0 1px 0 #fff}
|
||||
.x .dashboard>div>section>h2{font-size:14px;margin:0;padding:6px 15px;border-bottom:1px solid #ddd;background:#e8e8e8;background:-webkit-linear-gradient(top,#F1F1F1,#E8E8E8);background:-moz-linear-gradient(top,#F1F1F1,#E8E8E8);background:-o-linear-gradient(top,#F1F1F1,#E8E8E8);background:-ms-linear-gradient(top,#F1F1F1,#E8E8E8);background:linear-gradient(top,#F1F1F1,#E8E8E8);text-shadow:0 1px 0 #fff}
|
||||
.x .dashboard>div>section>h2:before{content:"";display:inline-block;width:14px;height:14px;margin:0 4px 0 0;vertical-align:middle;opacity:.5;filter:alpha(opacity=50)}
|
||||
.x .dashboard>div>.status>h2:before{background-position:-408px 0}
|
||||
.x .dashboard>div>.status dl{color:#767676;display:inline-block;*display:inline;zoom:1;margin:0 8px 0 0;padding:1px 8px 0;font:11px/1 돋움, Dotum, Arial, Helvetica, sans-serif;background:#fff;box-shadow:0 0 3px #999 inset;border-radius:3px;min-width:60px;text-align:center}
|
||||
|
|
@ -423,7 +431,7 @@ html[lang="zh"] .x .g11n.active>[disabled],
|
|||
#g11n .flag.zh-CN{background-image:url(../img/flag.cn.gif)}
|
||||
html[lang="zh"] .x .g11n.active>[disabled],
|
||||
#g11n .item .zh-TW,
|
||||
#g11n .flag.zh-TW{background-image:url(../img/flag.cn.gif)}
|
||||
#g11n .flag.zh-TW{background-image:url(../img/flag.tw.gif)}
|
||||
html[lang="fr"] .x .g11n.active>[disabled],
|
||||
#g11n .item .fr,
|
||||
#g11n .flag.fr{background-image:url(../img/flag.fr.gif)}
|
||||
|
|
@ -549,7 +557,7 @@ html[lang="mn"] .x .g11n.active>[disabled],
|
|||
.x .table tfoot td{font-weight:bold;background:#f8f8f8}
|
||||
.x .table.even tbody tr:nth-of-type(even){background-color:#fafafa}
|
||||
.x .table tbody tr:hover{background:#ffd !important}
|
||||
.x .table td>input[type=text]{margin:-1px 0 !important;vertical-align:middle}
|
||||
.x .table td>input[type="text"]{margin:-1px 0 !important;vertical-align:middle}
|
||||
.x .table img{vertical-align:middle}
|
||||
.x .table em{font-style:normal;font-weight:normal;color:#e00}
|
||||
/* Form */
|
||||
|
|
@ -558,11 +566,11 @@ html[lang="mn"] .x .g11n.active>[disabled],
|
|||
.x .form.search fieldset{border:1px solid #ccc;padding:5px 15px;border-radius:3px}
|
||||
.x .form em{font-style:normal;color:#e00}
|
||||
.x .form label{line-height:1;vertical-align:middle}
|
||||
.x .form input[type=radio]+label,
|
||||
.x .form input[type=checkbox]+label{margin-right:1em}
|
||||
.x .form input[type=checkbox]+label,
|
||||
.x .form input[type=radio]+label,
|
||||
.x .form input[type=file]{cursor:pointer}
|
||||
.x .form input[type="radio"]+label,
|
||||
.x .form input[type="checkbox"]+label{margin-right:1em}
|
||||
.x .form input[type="checkbox"]+label,
|
||||
.x .form input[type="radio"]+label,
|
||||
.x .form input[type="file"]{cursor:pointer}
|
||||
.x .form ul{position:relative;margin:1em 0;padding:0;list-style:none;border-top:2px solid #ccc;border-bottom:1px solid #ccc;zoom:1}
|
||||
.x .form li{list-style:none;border:1px solid #ddd;border-left:0;border-right:0;margin:-1px 0;padding:8px 0;vertical-align:top;zoom:1}
|
||||
.x .form li:hover{background:#ffd}
|
||||
|
|
@ -570,22 +578,22 @@ html[lang="mn"] .x .g11n.active>[disabled],
|
|||
.x .form li>label:first-child{display:block;font-weight:bold}
|
||||
.x .form li label em{font-weight:normal}
|
||||
.x .form label.overlap{position:absolute;color:#aaa}
|
||||
.x .form input[type=text],
|
||||
.x .form input[type=password],
|
||||
.x .form input[type=file],
|
||||
.x .form input[type="text"],
|
||||
.x .form input[type="password"],
|
||||
.x .form input[type="file"],
|
||||
.x .form select[size],
|
||||
.x .form textarea{position:relative;width:280px;margin:2px 0;border:1px solid #b7b7b7;border-right-color:#e1e1e1;border-bottom-color:#e1e1e1;background:transparent}
|
||||
.x .form input[type=text],
|
||||
.x .form input[type=password],
|
||||
.x .form input[type=file]{height:22px;line-height:22px;vertical-align:middle;padding:0 4px}
|
||||
.x .form input[type=checkbox],
|
||||
.x .form input[type=radio]{margin:0;padding:0;width:13px;height:13px;vertical-align:middle}
|
||||
.x .form input[type=text][disabled=disabled],
|
||||
.x .form input[type=password][disabled=disabled],
|
||||
.x .form input[type=radio][disabled=disabled],
|
||||
.x .form input[type=checkbox][disabled=disabled],
|
||||
.x .form select[disabled=disabled],
|
||||
.x .form textarea[disabled=disabled]{background:#ddd;text-shadow:1px 1px 0 #fff}
|
||||
.x .form input[type="text"],
|
||||
.x .form input[type="password"],
|
||||
.x .form input[type="file"]{height:22px;line-height:22px;vertical-align:middle;padding:0 4px}
|
||||
.x .form input[type="checkbox"],
|
||||
.x .form input[type="radio"]{margin:0;padding:0;width:13px;height:13px;vertical-align:middle}
|
||||
.x .form input[type="text"][disabled="disabled"],
|
||||
.x .form input[type="password"][disabled="disabled"],
|
||||
.x .form input[type="radio"][disabled="disabled"],
|
||||
.x .form input[type="checkbox"][disabled="disabled"],
|
||||
.x .form select[disabled="disabled"],
|
||||
.x .form textarea[disabled="disabled"]{background:#ddd;text-shadow:1px 1px 0 #fff}
|
||||
.x .form textarea{padding:3px 4px;vertical-align:top;resize:both}
|
||||
.x .form span.desc,
|
||||
.x .form em.desc{line-height:22px;vertical-align:middle;margin:0 10px}
|
||||
|
|
|
|||
2
modules/admin/tpl/css/admin.min.css
vendored
2
modules/admin/tpl/css/admin.min.css
vendored
File diff suppressed because one or more lines are too long
|
|
@ -1,4 +1,5 @@
|
|||
<include target="./_header.html" />
|
||||
<load target="./js/excanvas.min.js" targetie="lt IE 9" />
|
||||
<load target="./js/jquery.jqplot.min.js" />
|
||||
<load target="./js/jqplot.barRenderer.min.js" />
|
||||
<load target="./js/jqplot.categoryAxisRenderer.min.js" />
|
||||
|
|
@ -7,14 +8,15 @@
|
|||
|
||||
<div class="content" id="content">
|
||||
<div class="x_page-header">
|
||||
<h1>{$lang->control_panel} <a class="x_icon-question-sign" href="./help/index.html#UMAN_dashboard" target="_blank">{$lang->help}</a></h1>
|
||||
<h1>{$lang->control_panel} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_dashboard" target="_blank">{$lang->help}</a></h1>
|
||||
</div>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/admin/tpl/index/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form action="./" method="post" class="message info x_clearfix" cond="!$isEnviromentGatheringAgreement">
|
||||
<input type="hidden" name="module" value="admin" />
|
||||
<input type="hidden" name="act" value="procAdminEnviromentGatheringAgreement" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/admin/tpl/index/1" />
|
||||
<h2>{$lang->install_env_agreement}</h2>
|
||||
<p>{$lang->install_env_agreement_desc}</p>
|
||||
<div class="x_btn-group x_pull-right" style="margin-bottom:10px">
|
||||
|
|
@ -49,7 +51,7 @@
|
|||
<div style="margin:10px 15px;height:142px" id="visitors"></div>
|
||||
<div class="more">
|
||||
<dl>
|
||||
<dt>{$lang->menu_gnb['user']}:</dt><dd><a href="{getUrl('', 'module', 'admin', 'act', 'dispMemberAdminList')}">{number_format($status->member->totalCount)}(<!--@if($status->member->todayCount > 0)-->+<!--@end-->{number_format($status->member->todayCount)})</a></dd>
|
||||
<dt>{$lang->menu_gnb['user']}: </dt><dd><a href="{getUrl('', 'module', 'admin', 'act', 'dispMemberAdminList')}">{number_format($status->member->totalCount)} (<!--@if($status->member->todayCount > 0)-->+<!--@end-->{number_format($status->member->todayCount)})</a></dd>
|
||||
</dl>
|
||||
<a href="{getUrl('', 'module', 'admin', 'act', 'dispCounterAdminIndex')}"><i>›</i> {$lang->details}</a>
|
||||
</div>
|
||||
|
|
@ -59,7 +61,7 @@
|
|||
<div style="margin:10px 15px;height:142px" id="page_views"></div>
|
||||
<div class="more">
|
||||
<dl>
|
||||
<dt>{$lang->menu_gnb_sub['document']}:</dt><dd><a href="{getUrl('', 'module', 'admin', 'act', 'dispDocumentAdminList')}">{number_format($status->document->totalCount)}(<!--@if($status->document->todayCount > 0)-->+<!--@end-->{number_format($status->document->todayCount)})</a></dd>
|
||||
<dt>{$lang->menu_gnb_sub['document']}: </dt><dd><a href="{getUrl('', 'module', 'admin', 'act', 'dispDocumentAdminList')}">{number_format($status->document->totalCount)} (<!--@if($status->document->todayCount > 0)-->+<!--@end-->{number_format($status->document->todayCount)})</a></dd>
|
||||
</dl>
|
||||
<a href="{getUrl('', 'module', 'admin', 'act', 'dispCounterAdminIndex')}"><i>›</i> {$lang->details}</a>
|
||||
</div>
|
||||
|
|
@ -73,7 +75,7 @@
|
|||
<li loop="$latestDocumentList => $key,$value">
|
||||
{@$document = $value->variables}
|
||||
<a href="{getUrl('', 'document_srl', $document['document_srl'])}" target="_blank"><!--@if(trim($value->getTitle()))-->{$value->getTitle()}<!--@else--><strong>{$lang->no_title_document}</strong><!--@end--></a>
|
||||
<span class="side">{$document['nick_name']}</span>
|
||||
<span class="side">{$value->getNickName()}</span>
|
||||
<form class="action">
|
||||
<input type="hidden" name="module" value="admin" />
|
||||
<input type="hidden" name="act" value="procDocumentManageCheckedDocument" />
|
||||
|
|
@ -92,7 +94,7 @@
|
|||
<ul>
|
||||
<li loop="$latestCommentList => $key,$value">
|
||||
<a href="{getUrl('', 'document_srl', $value->document_srl)}#comment_{$value->comment_srl}" target="_blank"><!--@if(trim($value->content))-->{$value->getSummary()}<!--@else--><strong>{$lang->no_text_comment}</strong><!--@end--></a>
|
||||
<span class="side">{$value->nick_name}</span>
|
||||
<span class="side">{$value->getNickName()}</span>
|
||||
<form class="action">
|
||||
<input type="hidden" name="module" value="admin" />
|
||||
<input type="hidden" name="act" value="procCommentAdminDeleteChecked" />
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
86
modules/admin/tpl/js/admin.min.js
vendored
86
modules/admin/tpl/js/admin.min.js
vendored
File diff suppressed because one or more lines are too long
|
|
@ -134,3 +134,4 @@ function doResetAdminMenu() {
|
|||
function completeResetAdminMenu(ret_obj) {
|
||||
document.location.reload();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -136,7 +136,7 @@ class autoinstallAdminController extends autoinstall
|
|||
$type = "theme";
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
if(!$config_file)
|
||||
{
|
||||
continue;
|
||||
|
|
@ -144,7 +144,7 @@ class autoinstallAdminController extends autoinstall
|
|||
|
||||
$xml = new XmlParser();
|
||||
$xmlDoc = $xml->loadXmlFile($real_path . $config_file);
|
||||
|
||||
|
||||
if(!$xmlDoc)
|
||||
{
|
||||
continue;
|
||||
|
|
@ -329,7 +329,7 @@ class autoinstallAdminController extends autoinstall
|
|||
$oModel = getModel('autoinstall');
|
||||
$package = $oModel->getPackage($package_srl);
|
||||
|
||||
$this->_uninstallPackage($package);
|
||||
return $this->_uninstallPackage($package);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -340,7 +340,7 @@ class autoinstallAdminController extends autoinstall
|
|||
function uninstallPackageByPath($path)
|
||||
{
|
||||
$package->path = $path;
|
||||
$this->_uninstallPackage($package);
|
||||
return $this->_uninstallPackage($package);
|
||||
}
|
||||
|
||||
private function _uninstallPackage($package)
|
||||
|
|
@ -383,6 +383,8 @@ class autoinstallAdminController extends autoinstall
|
|||
$this->_updateinfo();
|
||||
|
||||
$this->setMessage('success_deleted', 'update');
|
||||
|
||||
return new Object();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -242,6 +242,111 @@ class autoinstallAdminModel extends autoinstall
|
|||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get install info
|
||||
*
|
||||
* @param int $packageSrl Package sequence to get info
|
||||
* @return stdClass install info
|
||||
*/
|
||||
public function getInstallInfo($packageSrl)
|
||||
{
|
||||
$params["act"] = "getResourceapiInstallInfo";
|
||||
$params["package_srl"] = $packageSrl;
|
||||
$xmlDoc = XmlGenerater::getXmlDoc($params);
|
||||
$oModel = getModel('autoinstall');
|
||||
|
||||
$targetpackages = array();
|
||||
if($xmlDoc)
|
||||
{
|
||||
$xmlPackage = $xmlDoc->response->package;
|
||||
$package = new stdClass();
|
||||
$package->package_srl = $xmlPackage->package_srl->body;
|
||||
$package->title = $xmlPackage->title->body;
|
||||
$package->package_description = $xmlPackage->package_description->body;
|
||||
$package->version = $xmlPackage->version->body;
|
||||
$package->path = $xmlPackage->path->body;
|
||||
if($xmlPackage->depends)
|
||||
{
|
||||
if(!is_array($xmlPackage->depends->item))
|
||||
{
|
||||
$xmlPackage->depends->item = array($xmlPackage->depends->item);
|
||||
}
|
||||
|
||||
$package->depends = array();
|
||||
foreach($xmlPackage->depends->item as $item)
|
||||
{
|
||||
$dep_item = new stdClass();
|
||||
$dep_item->package_srl = $item->package_srl->body;
|
||||
$dep_item->title = $item->title->body;
|
||||
$dep_item->version = $item->version->body;
|
||||
$dep_item->path = $item->path->body;
|
||||
$package->depends[] = $dep_item;
|
||||
$targetpackages[$dep_item->package_srl] = 1;
|
||||
}
|
||||
|
||||
$packages = $oModel->getInstalledPackages(array_keys($targetpackages));
|
||||
$package->deplist = "";
|
||||
foreach($package->depends as $key => $dep)
|
||||
{
|
||||
if(!$packages[$dep->package_srl])
|
||||
{
|
||||
$package->depends[$key]->installed = FALSE;
|
||||
$package->package_srl .= "," . $dep->package_srl;
|
||||
}
|
||||
else
|
||||
{
|
||||
$package->depends[$key]->installed = TRUE;
|
||||
$package->depends[$key]->cur_version = $packages[$dep->package_srl]->current_version;
|
||||
if(version_compare($dep->version, $packages[$dep->package_srl]->current_version, ">"))
|
||||
{
|
||||
$package->depends[$key]->need_update = TRUE;
|
||||
$package->package_srl .= "," . $dep->package_srl;
|
||||
|
||||
if($dep->path === '.')
|
||||
{
|
||||
$package->contain_core = TRUE;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$package->need_update = FALSE;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$installedPackage = $oModel->getInstalledPackage($package_srl);
|
||||
if($installedPackage)
|
||||
{
|
||||
$package->installed = TRUE;
|
||||
$package->cur_version = $installedPackage->current_version;
|
||||
$package->need_update = version_compare($package->version, $installedPackage->current_version, ">");
|
||||
}
|
||||
|
||||
if($package->path === '.')
|
||||
{
|
||||
$package->contain_core = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
return $package;
|
||||
}
|
||||
|
||||
/**
|
||||
* get install info (act)
|
||||
*/
|
||||
public function getAutoInstallAdminInstallInfo()
|
||||
{
|
||||
$packageSrl = Context::get('package_srl');
|
||||
if(!$packageSrl)
|
||||
{
|
||||
return new Object(-1, 'msg_invalid_request');
|
||||
}
|
||||
|
||||
$package = $this->getInstallInfo($packageSrl);
|
||||
$this->add('package', $package);
|
||||
}
|
||||
|
||||
}
|
||||
/* End of file autoinstall.admin.model.php */
|
||||
/* Location: ./modules/autoinstall/autoinstall.admin.model.php */
|
||||
|
|
|
|||
|
|
@ -272,6 +272,8 @@ class autoinstallAdminView extends autoinstall
|
|||
}
|
||||
|
||||
Context::set('installed', $installed);
|
||||
$oSecurity = new Security();
|
||||
$oSecurity->encodeHTML('installed..');
|
||||
|
||||
foreach($installed as $key => $val)
|
||||
{
|
||||
|
|
@ -354,85 +356,11 @@ class autoinstallAdminView extends autoinstall
|
|||
return $this->dispAutoinstallAdminIndex();
|
||||
}
|
||||
|
||||
$params["act"] = "getResourceapiInstallInfo";
|
||||
$params["package_srl"] = $package_srl;
|
||||
$xmlDoc = XmlGenerater::getXmlDoc($params);
|
||||
$oModel = getModel('autoinstall');
|
||||
$oAdminModel = getAdminModel('autoinstall');
|
||||
$package = $oAdminModel->getInstallInfo($package_srl);
|
||||
|
||||
$targetpackages = array();
|
||||
if($xmlDoc)
|
||||
{
|
||||
$xmlPackage = & $xmlDoc->response->package;
|
||||
$package = new stdClass();
|
||||
$package->package_srl = $xmlPackage->package_srl->body;
|
||||
$package->title = $xmlPackage->title->body;
|
||||
$package->package_description = $xmlPackage->package_description->body;
|
||||
$package->version = $xmlPackage->version->body;
|
||||
$package->path = $xmlPackage->path->body;
|
||||
if($xmlPackage->depends)
|
||||
{
|
||||
if(!is_array($xmlPackage->depends->item))
|
||||
{
|
||||
$xmlPackage->depends->item = array($xmlPackage->depends->item);
|
||||
}
|
||||
|
||||
$package->depends = array();
|
||||
foreach($xmlPackage->depends->item as $item)
|
||||
{
|
||||
$dep_item = new stdClass();
|
||||
$dep_item->package_srl = $item->package_srl->body;
|
||||
$dep_item->title = $item->title->body;
|
||||
$dep_item->version = $item->version->body;
|
||||
$dep_item->path = $item->path->body;
|
||||
$package->depends[] = $dep_item;
|
||||
$targetpackages[$dep_item->package_srl] = 1;
|
||||
}
|
||||
|
||||
$packages = $oModel->getInstalledPackages(array_keys($targetpackages));
|
||||
$package->deplist = "";
|
||||
foreach($package->depends as $key => $dep)
|
||||
{
|
||||
if(!$packages[$dep->package_srl])
|
||||
{
|
||||
$package->depends[$key]->installed = FALSE;
|
||||
$package->package_srl .= "," . $dep->package_srl;
|
||||
}
|
||||
else
|
||||
{
|
||||
$package->depends[$key]->installed = TRUE;
|
||||
$package->depends[$key]->cur_version = $packages[$dep->package_srl]->current_version;
|
||||
if(version_compare($dep->version, $packages[$dep->package_srl]->current_version, ">"))
|
||||
{
|
||||
$package->depends[$key]->need_update = TRUE;
|
||||
$package->package_srl .= "," . $dep->package_srl;
|
||||
|
||||
if($dep->path === '.')
|
||||
{
|
||||
Context::set('contain_core', TRUE);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$package->need_update = FALSE;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$installedPackage = $oModel->getInstalledPackage($package_srl);
|
||||
if($installedPackage)
|
||||
{
|
||||
$package->installed = TRUE;
|
||||
$package->cur_version = $installedPackage->current_version;
|
||||
$package->need_update = version_compare($package->version, $installedPackage->current_version, ">");
|
||||
}
|
||||
Context::set("package", $package);
|
||||
|
||||
if($package->path === '.')
|
||||
{
|
||||
Context::set('contain_core', TRUE);
|
||||
}
|
||||
}
|
||||
Context::set("package", $package);
|
||||
Context::set('contain_core', $package->contain_core);
|
||||
|
||||
if(!$_SESSION['ftp_password'])
|
||||
{
|
||||
|
|
@ -545,7 +473,7 @@ class autoinstallAdminView extends autoinstall
|
|||
}
|
||||
|
||||
$security = new Security();
|
||||
$security->encodeHTML('package.', 'package.depends..');
|
||||
$security->encodeHTML('package.', 'package.depends..', 'item_list..');
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -375,7 +375,7 @@ class SFTPModuleInstaller extends ModuleInstaller
|
|||
$ftp_host = "127.0.0.1";
|
||||
}
|
||||
$this->connection = ssh2_connect($ftp_host, $this->ftp_info->ftp_port);
|
||||
if(!ssh2_auth_password($this->connection, $this->ftp_info->ftp_user, $this->ftp_password))
|
||||
if(!@ssh2_auth_password($this->connection, $this->ftp_info->ftp_user, $this->ftp_password))
|
||||
{
|
||||
return new Object(-1, 'msg_ftp_invalid_auth_info');
|
||||
}
|
||||
|
|
|
|||
|
|
@ -225,6 +225,10 @@ class autoinstallModel extends autoinstall
|
|||
$args->page = $page;
|
||||
$args->list_count = 10;
|
||||
$args->page_count = 5;
|
||||
if(Context::getDBType() == 'mssql')
|
||||
{
|
||||
$args->sort_index = 'package_srl';
|
||||
}
|
||||
$output = executeQueryArray("autoinstall.getInstalledPackageList", $args);
|
||||
$res = array();
|
||||
if($output->data)
|
||||
|
|
@ -282,6 +286,7 @@ class autoinstallModel extends autoinstall
|
|||
case "addon":
|
||||
case "layout":
|
||||
case "widget":
|
||||
case 'theme': // for backward compatibility
|
||||
$config_file = "/conf/info.xml";
|
||||
break;
|
||||
case "component":
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@
|
|||
<action name="getAutoinstallAdminLayoutPackageList" type="model" />
|
||||
<action name="getAutoinstallAdminSkinPackageList" type="model" />
|
||||
<action name="getAutoinstallAdminIsAuthed" type="model" />
|
||||
<action name="getAutoInstallAdminInstallInfo" type="model" />
|
||||
</actions>
|
||||
<menus>
|
||||
<menu name="easyInstall">
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
<load target="./css/autoinstall.css" index="11" />
|
||||
<div class="x_page-header">
|
||||
<h1>{$lang->autoinstall} <a class="x_icon-question-sign" href="./help/index.html#UMAN_advanced_easyinstall" target="_blank">{$lang->help}</a></h1>
|
||||
<h1>{$lang->autoinstall} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_advanced_easyinstall" target="_blank">{$lang->help}</a></h1>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -1,10 +1,18 @@
|
|||
<include target="header.html" />
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
{@
|
||||
$from_id = array(
|
||||
'modules/autoinstall/tpl/install/1' => 1,
|
||||
'modules/autoinstall/tpl/index/1' => 1,
|
||||
'modules/autoinstall/tpl/uninstall/1' => 1
|
||||
);
|
||||
}
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && isset($from_id[$XE_VALIDATOR_ID])" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form action="" method="post">
|
||||
<input type="hidden" name="module" value="autoinstall" />
|
||||
<input type="hidden" name="act" value="procAutoinstallAdminUpdateinfo" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/autoinstall/tpl/index/1" />
|
||||
<p>
|
||||
<block cond="$show_ftp_note">
|
||||
{@$ftp_link = sprintf('<a href="%s">%s</a>', getUrl('', 'module', 'admin', 'act', 'dispAdminConfigFtp'), $lang->ftp_setup)}
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
<p><a class="x_btn x_btn-primary x_pull-right" href="{_XE_DOWNLOAD_SERVER_}?module=resourceapi&act=procResourceapiDownload&package_srl={$package->package_srl}">{$lang->cmd_download}</a>
|
||||
</div>
|
||||
<div cond="!$show_ftp_note">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="x_alert x_alert-error">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/autoinstall/tpl/install/1'" class="message error">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form action="./" class="x_form-horizontal" method="post" ruleset="ftp">
|
||||
|
|
@ -41,6 +41,7 @@
|
|||
<input type="hidden" name="package_srl" value="{$package->package_srl}" />
|
||||
<input type="hidden" name="return_url" value="{$return_url}" />
|
||||
<input cond="!$need_password" type="hidden" name="ftp_password" value="dummy" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/autoinstall/tpl/install/1" />
|
||||
|
||||
<block cond="$need_password">
|
||||
<div class="x_control-group">
|
||||
|
|
|
|||
|
|
@ -16,11 +16,11 @@
|
|||
<!--@else-->
|
||||
{@$_popular_order_type = 'desc'}
|
||||
<!--@end-->
|
||||
<a href="{getUrl('order_target','newest','order_type',$_newest_order_type)}" class="active"|cond="$order_target == 'newest'">{$lang->order_newest} <i cond="$order_target == 'newest'" class="x_icon-circle-arrow-down"|cond="$_newest_order_type == 'asc'" class="x_icon-circle-arrow-up"|cond="$_newest_order_type == 'desc'">{$_newest_order_type}</i></a>
|
||||
<a href="{getUrl('order_target','newest','order_type',$_newest_order_type,page,'')}" class="active"|cond="$order_target == 'newest'">{$lang->order_newest} <i cond="$order_target == 'newest'" class="x_icon-circle-arrow-down"|cond="$_newest_order_type == 'asc'" class="x_icon-circle-arrow-up"|cond="$_newest_order_type == 'desc'">{$_newest_order_type}</i></a>
|
||||
<i>|</i>
|
||||
<a href="{getUrl('order_target','download','order_type',$_download_order_type)}" class="active"|cond="$order_target == 'download'">{$lang->order_download} <i cond="$order_target == 'download'" class="x_icon-circle-arrow-down"|cond="$_download_order_type == 'asc'" class="x_icon-circle-arrow-up"|cond="$_download_order_type == 'desc'">{$_download_order_type}</i></a>
|
||||
<a href="{getUrl('order_target','download','order_type',$_download_order_type,page,'')}" class="active"|cond="$order_target == 'download'">{$lang->order_download} <i cond="$order_target == 'download'" class="x_icon-circle-arrow-down"|cond="$_download_order_type == 'asc'" class="x_icon-circle-arrow-up"|cond="$_download_order_type == 'desc'">{$_download_order_type}</i></a>
|
||||
<i>|</i>
|
||||
<a href="{getUrl('order_target','popular','order_type',$_popular_order_type)}" class="active"|cond="$order_target == 'popular'">{$lang->order_popular} <i cond="$order_target == 'popular'" class="x_icon-circle-arrow-down"|cond="$_popular_order_type == 'asc'" class="x_icon-circle-arrow-up"|cond="$_popular_order_type == 'desc'">{$_popular_order_type}</i></a></li>
|
||||
<a href="{getUrl('order_target','popular','order_type',$_popular_order_type,page,'')}" class="active"|cond="$order_target == 'popular'">{$lang->order_popular} <i cond="$order_target == 'popular'" class="x_icon-circle-arrow-down"|cond="$_popular_order_type == 'asc'" class="x_icon-circle-arrow-up"|cond="$_popular_order_type == 'desc'">{$_popular_order_type}</i></a></li>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
@ -44,7 +44,7 @@
|
|||
<img src="{str_replace('./', $uri, $item->item_screenshot_url)}" alt="" style="width:80px;height:80px" />
|
||||
</div>
|
||||
<div class="text">
|
||||
<h3><span class="x_label x_label-info">{$item->category}</span> <a href="{$target_url}" title="{htmlspecialchars($item->title)}" target="_blank">{htmlspecialchars($item->title)}</a></h3>
|
||||
<h3><span class="x_label x_label-info">{$item->category}</span> <a href="{$target_url}" title="{$item->title}" target="_blank">{$item->title}</a></h3>
|
||||
<p>
|
||||
<block cond="(int)$item->package_voter > 0">
|
||||
<span class="starRating"><span style="width:{sprintf("%d",$item->package_voted/$item->package_voter*20)}%">{sprintf("%0.1f",$item->package_voted/$item->package_voter*2)}{sprintf($lang->rate, $item->package_start)}</span></span>
|
||||
|
|
@ -97,8 +97,8 @@
|
|||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<p><span class="x_label x_label-info">{$item->category}</span> <a href="{$target_url}" target="_blank">{htmlspecialchars($item->title)}</a></p>
|
||||
<p style="margin:5px 0">{cut_str(htmlspecialchars($item->package_description),200)}</p>
|
||||
<p><span class="x_label x_label-info">{$item->category}</span> <a href="{$target_url}" target="_blank">{$item->title}</a></p>
|
||||
<p style="margin:5px 0">{cut_str($item->package_description,200)}</p>
|
||||
<p style="margin:5px 0">
|
||||
<block cond="(int)$item->package_voter > 0">
|
||||
<span class="starRating"><span style="width:{sprintf("%d",$item->package_voted/$item->package_voter*20)}%">{sprintf("%0.1f",$item->package_voted/$item->package_voter*2)}{sprintf($lang->rate, $item->package_start)}</span></span>
|
||||
|
|
@ -118,8 +118,8 @@
|
|||
<li loop="$item->deps => $package_srl">{$installed[$package_srl]->title}</li>
|
||||
</ul>
|
||||
</td>
|
||||
<td>{htmlspecialchars($item->item_version)}</td>
|
||||
<td>{htmlspecialchars($item->current_version)}</td>
|
||||
<td>{$item->item_version}</td>
|
||||
<td>{$item->current_version}</td>
|
||||
<td>
|
||||
<span class="x_btn-group">
|
||||
<a cond="$item->current_version && $item->need_update != 'Y'" class="x_btn x_disabled" href="#">{$lang->installed}</a>
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
<p>{$lang->description_uninstall}</p>
|
||||
</div>
|
||||
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="x_alert x_alert-error">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/autoinstall/tpl/uninstall/1'" class="message error">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form action="./" class="x_form-horizontal" method="post" ruleset="ftp">
|
||||
|
|
@ -18,6 +18,7 @@
|
|||
<input type="hidden" name="package_srl" value="{$package_srl}" />
|
||||
<input type="hidden" name="return_url" value="{$return_url}" />
|
||||
<input cond="!$need_password" type="hidden" name="ftp_password" value="dummy" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/autoinstall/tpl/uninstall/1" />
|
||||
|
||||
<block cond="$need_password">
|
||||
<div class="x_control-group">
|
||||
|
|
|
|||
|
|
@ -164,6 +164,19 @@ class commentAdminController extends comment
|
|||
// call a trigger for calling "send mail to subscribers" (for moment just for forum)
|
||||
ModuleHandler::triggerCall("comment.procCommentAdminChangeStatus", "after", $comment_srl_list);
|
||||
}
|
||||
|
||||
// for message send - start
|
||||
$message_content = Context::get('message_content');
|
||||
if($message_content)
|
||||
{
|
||||
$message_content = nl2br($message_content);
|
||||
}
|
||||
|
||||
if($message_content)
|
||||
{
|
||||
$this->_sendMessageForComment($message_content, $comment_srl_list);
|
||||
}
|
||||
// for message send - end
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -208,34 +221,13 @@ class commentAdminController extends comment
|
|||
|
||||
if($message_content)
|
||||
{
|
||||
$oCommunicationController = getController('communication');
|
||||
$oCommentModel = getModel('comment');
|
||||
|
||||
$logged_info = Context::get('logged_info');
|
||||
|
||||
$title = cut_str($message_content, 10, '...');
|
||||
$sender_member_srl = $logged_info->member_srl;
|
||||
|
||||
for($i = 0; $i < $comment_count; $i++)
|
||||
{
|
||||
$comment_srl = $comment_srl_list[$i];
|
||||
$oComment = $oCommentModel->getComment($comment_srl, TRUE);
|
||||
|
||||
if(!$oComment->get('member_srl') || $oComment->get('member_srl') == $sender_member_srl)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
$content = sprintf("<div>%s</div><hr /><div style=\"font-weight:bold\">%s</div>", $message_content, $oComment->getContentText(20));
|
||||
|
||||
$oCommunicationController->sendMessage($sender_member_srl, $oComment->get('member_srl'), $title, $content, FALSE);
|
||||
}
|
||||
$this->_sendMessageForComment($message_content, $comment_srl_list);
|
||||
}
|
||||
// for message send - end
|
||||
// comment into trash
|
||||
if($isTrash == 'true')
|
||||
{
|
||||
$this->_moveCommentToTrash($comment_srl_list, $oCommentController, $oDB);
|
||||
$this->_moveCommentToTrash($comment_srl_list, $oCommentController, $oDB, $message_content);
|
||||
}
|
||||
|
||||
$deleted_count = 0;
|
||||
|
|
@ -281,11 +273,38 @@ class commentAdminController extends comment
|
|||
$this->setRedirectUrl($returnUrl);
|
||||
}
|
||||
|
||||
private function _sendMessageForComment($message_content, $comment_srl_list)
|
||||
{
|
||||
$oCommunicationController = getController('communication');
|
||||
$oCommentModel = getModel('comment');
|
||||
|
||||
$logged_info = Context::get('logged_info');
|
||||
|
||||
$title = cut_str($message_content, 10, '...');
|
||||
$sender_member_srl = $logged_info->member_srl;
|
||||
|
||||
$comment_count = count($comment_srl_list);
|
||||
for($i = 0; $i < $comment_count; $i++)
|
||||
{
|
||||
$comment_srl = $comment_srl_list[$i];
|
||||
$oComment = $oCommentModel->getComment($comment_srl, TRUE);
|
||||
|
||||
if(!$oComment->get('member_srl') || $oComment->get('member_srl') == $sender_member_srl)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
$content = sprintf("<div>%s</div><hr /><div style=\"font-weight:bold\">%s</div>", $message_content, $oComment->getContentText(20));
|
||||
|
||||
$oCommunicationController->sendMessage($sender_member_srl, $oComment->get('member_srl'), $title, $content, FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* comment move to trash
|
||||
* @return void|object
|
||||
*/
|
||||
function _moveCommentToTrash($commentSrlList, &$oCommentController, &$oDB)
|
||||
function _moveCommentToTrash($commentSrlList, &$oCommentController, &$oDB, $message_content = NULL)
|
||||
{
|
||||
require_once(_XE_PATH_ . 'modules/trash/model/TrashVO.php');
|
||||
|
||||
|
|
@ -303,6 +322,7 @@ class commentAdminController extends comment
|
|||
$oTrashVO->setTitle(trim(strip_tags($oComment->variables['content'])));
|
||||
$oTrashVO->setOriginModule('comment');
|
||||
$oTrashVO->setSerializedObject(serialize($oComment->variables));
|
||||
$oTrashVO->setDescription($message_content);
|
||||
|
||||
$output = $oTrashAdminController->insertTrash($oTrashVO);
|
||||
if(!$output->toBool())
|
||||
|
|
|
|||
|
|
@ -161,7 +161,7 @@ class commentController extends comment
|
|||
*/
|
||||
function isModuleUsingPublishValidation($module_srl = NULL)
|
||||
{
|
||||
if(!$module_srl == NULL)
|
||||
if($module_srl == NULL)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
|
@ -221,7 +221,6 @@ class commentController extends comment
|
|||
$obj->status = 0;
|
||||
}
|
||||
}
|
||||
|
||||
$obj->__isupdate = FALSE;
|
||||
|
||||
// call a trigger (before)
|
||||
|
|
@ -271,9 +270,11 @@ class commentController extends comment
|
|||
{
|
||||
$logged_info = Context::get('logged_info');
|
||||
$obj->member_srl = $logged_info->member_srl;
|
||||
$obj->user_id = $logged_info->user_id;
|
||||
$obj->user_name = $logged_info->user_name;
|
||||
$obj->nick_name = $logged_info->nick_name;
|
||||
|
||||
// user_id, user_name and nick_name already encoded
|
||||
$obj->user_id = htmlspecialchars_decode($logged_info->user_id);
|
||||
$obj->user_name = htmlspecialchars_decode($logged_info->user_name);
|
||||
$obj->nick_name = htmlspecialchars_decode($logged_info->nick_name);
|
||||
$obj->email_address = $logged_info->email_address;
|
||||
$obj->homepage = $logged_info->homepage;
|
||||
}
|
||||
|
|
@ -823,15 +824,19 @@ class commentController extends comment
|
|||
// update the number of comments
|
||||
$comment_count = $oCommentModel->getCommentCount($document_srl);
|
||||
|
||||
// create the controller object of the document
|
||||
$oDocumentController = getController('document');
|
||||
|
||||
// update comment count of the article posting
|
||||
$output = $oDocumentController->updateCommentCount($document_srl, $comment_count, NULL, FALSE);
|
||||
if(!$output->toBool())
|
||||
// only document is exists
|
||||
if(isset($comment_count))
|
||||
{
|
||||
$oDB->rollback();
|
||||
return $output;
|
||||
// create the controller object of the document
|
||||
$oDocumentController = getController('document');
|
||||
|
||||
// update comment count of the article posting
|
||||
$output = $oDocumentController->updateCommentCount($document_srl, $comment_count, NULL, FALSE);
|
||||
if(!$output->toBool())
|
||||
{
|
||||
$oDB->rollback();
|
||||
return $output;
|
||||
}
|
||||
}
|
||||
|
||||
// call a trigger (after)
|
||||
|
|
@ -1081,7 +1086,7 @@ class commentController extends comment
|
|||
$obj = new stdClass();
|
||||
$obj->member_srl = $oComment->get('member_srl');
|
||||
$obj->module_srl = $oComment->get('module_srl');
|
||||
$obj->comment_srl = $oComment->get('comment');
|
||||
$obj->comment_srl = $oComment->get('comment_srl');
|
||||
$obj->update_target = ($point < 0) ? 'blamed_count' : 'voted_count';
|
||||
$obj->point = $point;
|
||||
$obj->before_point = ($point < 0) ? $oComment->get('blamed_count') : $oComment->get('voted_count');
|
||||
|
|
@ -1329,6 +1334,9 @@ class commentController extends comment
|
|||
$this->setMessage($lang->no_documents);
|
||||
}
|
||||
|
||||
$oSecurity = new Security($commentList);
|
||||
$oSecurity->encodeHTML('..variables.', '..');
|
||||
|
||||
$this->add('comment_list', $commentList);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -254,7 +254,7 @@ class commentItem extends Object
|
|||
$url = "http://" . $url;
|
||||
}
|
||||
|
||||
return $url;
|
||||
return htmlspecialchars($url);
|
||||
}
|
||||
|
||||
function getMemberSrl()
|
||||
|
|
|
|||
|
|
@ -298,4 +298,8 @@
|
|||
<value xml:lang="ko"><![CDATA[페이지]]></value>
|
||||
<value xml:lang="en"><![CDATA[Page]]></value>
|
||||
</item>
|
||||
<item name="msg_not_selected_comment">
|
||||
<value xml:lang="ko"><![CDATA[선택한 댓글이 없습니다.]]></value>
|
||||
<value xml:lang="en"><![CDATA[There are no selected comment.]]></value>
|
||||
</item>
|
||||
</lang>
|
||||
|
|
@ -24,6 +24,6 @@
|
|||
<column name="last_update" var="last_update" default="curdate()" />
|
||||
<column name="ipaddress" var="ipaddress" default="ipaddress()" />
|
||||
<column name="list_order" var="list_order" default="0" />
|
||||
<column name="status" var="status" notnull="notnull" default="1" />
|
||||
<column name="status" var="status" notnull="notnull" filter="number" />
|
||||
</columns>
|
||||
</query>
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
xe.lang.msg_empty_search_target = '{$lang->msg_empty_search_target}';
|
||||
xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
|
||||
</script>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/comment/tpl/comment_list/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form id="fo_list" action="./" method="post">
|
||||
|
|
@ -46,9 +46,9 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
|
|||
</thead>
|
||||
<tbody>
|
||||
<tr loop="$comment_list => $no, $val">
|
||||
{@ $comment = cut_str(trim(strip_tags($val->content)), 200, '...')}
|
||||
{@ $comment = $val->getContentText(200)}
|
||||
<td><a href="{getUrl('','document_srl',$val->document_srl)}#comment_{$val->comment_srl}" target="_blank"><!--@if(strlen($comment))-->{$comment}<!--@else--><em>{$lang->no_text_comment}</em><!--@end--></a></td>
|
||||
<td class="nowr"><a href="#popup_menu_area" class="member_{$val->member_srl}">{$val->nick_name}</a></td>
|
||||
<td class="nowr"><a href="#popup_menu_area" class="member_{$val->member_srl}">{$val->getNickName()}</a></td>
|
||||
<td class="nowr">{number_format($val->get('voted_count'))}/{number_format($val->get('blamed_count'))}</td>
|
||||
<td class="nowr">{(zdate($val->regdate,"Y-m-d\nH:i:s"))}</td>
|
||||
<td class="nowr"><a href="{getUrl('search_target','ipaddress','search_keyword',$val->ipaddress)}">{$val->ipaddress}</a></td>
|
||||
|
|
@ -122,7 +122,7 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
|
|||
</select>
|
||||
<input type="search" name="search_keyword" value="{htmlspecialchars($search_keyword)}" />
|
||||
<button type="submit" class="x_btn x_btn-inverse">{$lang->cmd_search}</button>
|
||||
<button class="x_btn" type="button" onclick="document.location.href='{getUrl('','module',$module,'act',$act)}'">{$lang->cmd_cancel}</button>
|
||||
<a href="{getUrl('','module',$module,'act',$act)}" class="x_btn">{$lang->cmd_cancel}</a>
|
||||
</form>
|
||||
|
||||
<form ruleset="deleteChecked" action="./" method="post" class="x_modal x" id="listManager">
|
||||
|
|
@ -133,6 +133,7 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
|
|||
<input type="hidden" name="will_publish" value="0" />
|
||||
<input type="hidden" name="search_target" value="{$search_target}" />
|
||||
<input type="hidden" name="search_keyword" value="{$search_keyword}" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/comment/tpl/comment_list/1" />
|
||||
<div class="x_modal-header">
|
||||
<h1>{$lang->comment_manager}: <span class="_sub"></span></h1>
|
||||
</div>
|
||||
|
|
@ -174,10 +175,10 @@ jQuery(function($){
|
|||
}
|
||||
}).change();
|
||||
// Button action
|
||||
$('a[data-value]').click(function(){
|
||||
$('a[data-value]').bind('before-open.mw', function(){
|
||||
if($docTable.find('tbody :checked').length == 0){
|
||||
$('body').css('overflow','auto');
|
||||
alert('{$lang->msg_not_selected_document}');
|
||||
alert('{$lang->msg_not_selected_comment}');
|
||||
return false;
|
||||
} else {
|
||||
var $this = $(this);
|
||||
|
|
@ -192,4 +193,4 @@ jQuery(function($){
|
|||
doChangePublishedStatus($(this).val());
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<div class="x_control-group">
|
||||
<label for="comment_count" class="x_control-label">{$lang->comment_count}</label>
|
||||
<div class="x_controls">
|
||||
<input type="number" min="1" name="comment_count" id="comment_count" value="{$comment_config->comment_count}" style="width:50px" />
|
||||
<input type="number" min="1" name="comment_count" id="comment_count" value="{$comment_config->comment_count}" />
|
||||
<p class="x_help-inline">{$lang->about_comment_count}</p>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
<include target="header.html" />
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/comment/tpl/declared_list/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form ruleset="deleteChecked" id="fo_list" action="./" method="post">
|
||||
|
|
@ -8,6 +8,7 @@
|
|||
<input type="hidden" value="{getUrl('', 'module', $module, 'act', $act)}" name="success_return_url">
|
||||
<input type="hidden" name="page" value="{$page}" />
|
||||
<input type="hidden" name="is_trash" value="false" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/comment/tpl/declared_list/1" />
|
||||
|
||||
<!-- 목록 -->
|
||||
<table id="commentListTable" class="x_table x_table-striped x_table-hover">
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
<load target="js/comment_admin.js" usecdn="true" />
|
||||
<div class="x_page-header">
|
||||
<h1>{$lang->comment} {$lang->cmd_management} <a class="x_icon-question-sign" href="./help/index.html#UMAN_content_comment" target="_blank">{$lang->help}</a></h1>
|
||||
<h1>{$lang->comment} {$lang->cmd_management} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_content_comment" target="_blank">{$lang->help}</a></h1>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -371,4 +371,8 @@
|
|||
<value xml:lang="en"><![CDATA[Send a message to the author about this. If you don't write a message, it is not sent.]]></value>
|
||||
<value xml:lang="jp"><![CDATA[作成者にメッセージを送信し、知らせます。作成しなければ送信されません。]]></value>
|
||||
</item>
|
||||
<item name="friends_page_does_not_support">
|
||||
<value xml:lang="ko"><![CDATA[모바일 환경에서는 친구 보기 페이지를 지원하지 않습니다. PC 화면으로 이동하세요.]]></value>
|
||||
<value xml:lang="en"><![CDATA[Friends in a mobile environment is not supported. Please go to the PC page.]]></value>
|
||||
</item>
|
||||
</lang>
|
||||
|
|
|
|||
|
|
@ -112,8 +112,8 @@ input[type=radio]{width:13px;height:13px;margin:0;padding:0}
|
|||
.bn[type=submit],
|
||||
.bn[type=button]{height:28px}
|
||||
.bn[href]{height:26px}
|
||||
.bn.dark{border-color:#666;background:#777 -webkit-gradient(linear,0% 0%,0% 100%,from(#7e7c78),to(#5c5b58));background:#777 -moz-linear-gradient(top,#7e7c78,#5c5b58);background-color:#777;color:#fff;box-shadow:0 0 1px #fff inset;-moz-box-shadow:0 0 1px #fff inset;-webkit-box-shadow:0 0 1px #fff inset}
|
||||
.bn.white{border-color:#b5b5b5;background:#1b1b1b -webkit-gradient(linear,0% 0%,0% 100%,from(#fff),to(#f6f6f6),color-stop(0.5,#f0f0f0),color-stop(0.5,#e4e4e4));background:#1b1b1b -moz-linear-gradient(top,#fff,#e4e4e4);background-color:#fff;color:#000;margin-right:2px}
|
||||
.bn.dark{border-color:#666;background:-webkit-linear-gradient(top,#7e7c78,#5c5b58);background:-moz-linear-gradient(top,#7e7c78,#5c5b58);background:-o-linear-gradient(top,#7e7c78,#5c5b58);background:-ms-linear-gradient(top,#7e7c78,#5c5b58);background:linear-gradient(top,#7e7c78,#5c5b58);background-color:#777;color:#fff;box-shadow:0 0 1px #fff inset;-moz-box-shadow:0 0 1px #fff inset;-webkit-box-shadow:0 0 1px #fff inset}
|
||||
.bn.white{border-color:#b5b5b5;background:-webkit-linear-gradient(top,#fff,#f0f0f0 50%,#e4e4e4 50%,#f6f6f6 100%);background:-moz-linear-gradient(top,#fff,#f0f0f0 50%,#e4e4e4 50%,#f6f6f6 100%);background:-o-linear-gradient(top,#fff,#f0f0f0 50%,#e4e4e4 50%,#f6f6f6 100%);background:-ms-linear-gradient(top,#fff,#f0f0f0 50%,#e4e4e4 50%,#f6f6f6 100%);background:linear-gradient(top,#fff,#f0f0f0 50%,#e4e4e4 50%,#f6f6f6 100%);background-color:#fff;color:#000;margin-right:2px}
|
||||
/* Pagination */
|
||||
.pn{font-size:12px;text-align:center;background:#f2f0ec;padding:15px 0;border-top:1px solid #fff}
|
||||
.pn a{color:#333;text-decoration:none}
|
||||
|
|
|
|||
7
modules/communication/m.skins/default/friends.html
Normal file
7
modules/communication/m.skins/default/friends.html
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<load target="./css/mcommunication.css" />
|
||||
<div class="hx h2">
|
||||
<h2>{$member_title = $lang->cmd_view_friend}</h2>
|
||||
</div>
|
||||
<div class="co">
|
||||
<p>{$lang->friends_page_does_not_support}</p>
|
||||
</div>
|
||||
|
|
@ -6,7 +6,7 @@
|
|||
<div class="hx h2">
|
||||
<h2>{$lang->cmd_send_message}</h2>
|
||||
</div>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="x_alert x_alert-{$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/communication/m.skins/default/send_message/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form ruleset="sendMessage" action="./" method="post" class="ff" id="fo_comm">
|
||||
|
|
@ -16,6 +16,7 @@
|
|||
<input type="hidden" name="receiver_srl" value="{$receiver_info->member_srl}" />
|
||||
<input type="hidden" name="source_content" value="{htmlspecialchars($source_message->content)}" />
|
||||
<input type="hidden" name="content" value="" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/communication/m.skins/default/send_message/1" />
|
||||
<ul>
|
||||
<li>
|
||||
<span class="memberInfo">{$receiver_info->nick_name}</span>
|
||||
|
|
|
|||
|
|
@ -1,35 +1,34 @@
|
|||
<load target="filter/add_friend.xml" />
|
||||
<load target="../../../../common/css/bootstrap.min.css" />
|
||||
<load target="../../../../common/css/bootstrap-responsive.min.css" />
|
||||
<load target="css/communication.css" />
|
||||
<load target="js/communication.js" />
|
||||
<div class="page-header">
|
||||
<div class="xc">
|
||||
<h1>{$lang->cmd_add_friend}</h1>
|
||||
</div>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form ruleset="addFriend" action="./" method="post" class="xc">
|
||||
<input type="hidden" name="module" value="communication" />
|
||||
<input type="hidden" name="act" value="procCommunicationAddFriend" />
|
||||
<input type="hidden" name="target_srl" value="{$target_info->member_srl}" />
|
||||
<table class="table table-striped table-hover">
|
||||
<tr>
|
||||
<th scope="row">{$lang->nick_name}</th>
|
||||
<td>{$target_info->nick_name}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="friend_group_srl">{$lang->friend_group}</label></th>
|
||||
<td>
|
||||
<select name="friend_group_srl" id="friend_group_srl">
|
||||
<option value="">{$lang->default_friend_group}</option>
|
||||
<option loop="$friend_group_list => $key,$val" value="{$val->friend_group_srl}">{$val->title}</option>
|
||||
</select>
|
||||
<a href="{getUrl('act','dispCommunicationAddFriendGroup')}" class="btn" onclick="popopen(this.href);return false;">{$lang->cmd_add_friend_group}</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class="btnArea" style="border-top:0;padding:0">
|
||||
<input type="submit" value="{$lang->cmd_add_friend}" class="btn btn-inverse" />
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/communication/skins/default/add_friend/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
</form>
|
||||
<form ruleset="addFriend" action="./" method="post">
|
||||
<input type="hidden" name="module" value="communication" />
|
||||
<input type="hidden" name="act" value="procCommunicationAddFriend" />
|
||||
<input type="hidden" name="target_srl" value="{$target_info->member_srl}" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/communication/skins/default/add_friend/1" />
|
||||
<table class="table table-striped table-hover">
|
||||
<tr>
|
||||
<th scope="row">{$lang->nick_name}</th>
|
||||
<td>{$target_info->nick_name}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row"><label for="friend_group_srl">{$lang->friend_group}</label></th>
|
||||
<td>
|
||||
<select name="friend_group_srl" id="friend_group_srl">
|
||||
<option value="">{$lang->default_friend_group}</option>
|
||||
<option loop="$friend_group_list => $key,$val" value="{$val->friend_group_srl}">{$val->title}</option>
|
||||
</select>
|
||||
<a href="{getUrl('act','dispCommunicationAddFriendGroup')}" class="btn" onclick="popopen(this.href);return false;">{$lang->cmd_add_friend_group}</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class="btnArea" style="border-top:0;padding:0">
|
||||
<input type="submit" value="{$lang->cmd_add_friend}" class="btn btn-inverse" />
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -1,29 +1,28 @@
|
|||
<load target="../../../../common/css/bootstrap.min.css" />
|
||||
<load target="../../../../common/css/bootstrap-responsive.min.css" />
|
||||
<load target="css/communication.css" />
|
||||
<load target="js/communication.js" />
|
||||
<div class="page-header">
|
||||
<h1>
|
||||
<div class="xc">
|
||||
<h1 style="border-bottom:1px solid #ccc">
|
||||
<!--@if($friend_group->friend_group_srl)-->
|
||||
{$lang->cmd_rename_friend_group}
|
||||
<!--@else-->
|
||||
{$lang->cmd_add_friend_group}
|
||||
<!--@end-->
|
||||
</h1>
|
||||
</div>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form ruleset="addFriendGroup" action="./" method="post" class="form-horizontal xc">
|
||||
<input type="hidden" name="module" value="communication" />
|
||||
<input type="hidden" name="act" value="procCommunicationAddFriendGroup" />
|
||||
<input type="hidden" name="friend_group_srl" value="{$friend_group->friend_group_srl}" />
|
||||
<div class="control-group">
|
||||
<label for="title" class="control-label">{$lang->msg_insert_group_name}</label>
|
||||
<div class="controls"><input name="title" id="title" type="text" value="{htmlspecialchars($friend_group->title)}"/></div>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/communication/skins/default/add_friend_group/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<div class="btnArea">
|
||||
<input cond="$friend_group->friend_group_srl" type="submit" value="{$lang->cmd_modify}" class="btn btn-inverse" />
|
||||
<input cond="!$friend_group->friend_group_srl" type="submit" value="{$lang->cmd_insert}" class="btn btn-inverse" />
|
||||
</div>
|
||||
</form>
|
||||
<form ruleset="addFriendGroup" action="./" method="post" class="form-horizontal">
|
||||
<input type="hidden" name="module" value="communication" />
|
||||
<input type="hidden" name="act" value="procCommunicationAddFriendGroup" />
|
||||
<input type="hidden" name="friend_group_srl" value="{$friend_group->friend_group_srl}" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/communication/skins/default/add_friend_group/1" />
|
||||
<div class="control-group">
|
||||
<label for="title" class="control-label">{$lang->msg_insert_group_name}</label>
|
||||
<div class="controls"><input name="title" id="title" type="text" value="{htmlspecialchars($friend_group->title)}"/></div>
|
||||
</div>
|
||||
<div class="btnArea">
|
||||
<input cond="$friend_group->friend_group_srl" type="submit" value="{$lang->cmd_modify}" class="btn btn-inverse" />
|
||||
<input cond="!$friend_group->friend_group_srl" type="submit" value="{$lang->cmd_insert}" class="btn btn-inverse" />
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
|
@ -1,5 +1,3 @@
|
|||
<load target="../../../../common/css/bootstrap.min.css" />
|
||||
<load target="../../../../common/css/bootstrap-responsive.min.css" />
|
||||
<load target="css/communication.css" />
|
||||
<load target="js/communication.js" />
|
||||
<section class="xc">
|
||||
|
|
|
|||
|
|
@ -1,4 +1,288 @@
|
|||
@charset "utf-8";
|
||||
/* Horizontal Align */
|
||||
.xc .pull-right{float:right}
|
||||
.xc .pull-left{float:left}
|
||||
/* DL Horizontal */
|
||||
.xc .dl-horizontal{*zoom:1}
|
||||
.xc .dl-horizontal:before,
|
||||
.xc .dl-horizontal:after{display:table;line-height:0;content:""}
|
||||
.xc .dl-horizontal:after{clear:both}
|
||||
.xc .dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}
|
||||
.xc .dl-horizontal dd{margin-left:180px}
|
||||
/* Form Control Reset */
|
||||
.xc form{margin:0 0 20px}
|
||||
.xc fieldset{padding:0;margin:0;border:0}
|
||||
.xc label,
|
||||
.xc input,
|
||||
.xc button,
|
||||
.xc select,
|
||||
.xc textarea{font-weight:normal;line-height:20px}
|
||||
.xc label{display:block;margin-bottom:5px}
|
||||
.xc textarea,
|
||||
.xc input[type="text"],
|
||||
.xc input[type="password"],
|
||||
.xc input[type="datetime"],
|
||||
.xc input[type="datetime-local"],
|
||||
.xc input[type="date"],
|
||||
.xc input[type="month"],
|
||||
.xc input[type="time"],
|
||||
.xc input[type="week"],
|
||||
.xc input[type="number"],
|
||||
.xc input[type="email"],
|
||||
.xc input[type="url"],
|
||||
.xc input[type="search"],
|
||||
.xc input[type="tel"],
|
||||
.xc input[type="color"]{display:inline-block;height:20px;padding:4px 6px;margin-bottom:10px;line-height:20px;color:#555555;vertical-align:middle;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}
|
||||
.xc input,
|
||||
.xc textarea{width:206px}
|
||||
.xc textarea{height:auto}
|
||||
.xc textarea,
|
||||
.xc input[type="text"],
|
||||
.xc input[type="password"],
|
||||
.xc input[type="datetime"],
|
||||
.xc input[type="datetime-local"],
|
||||
.xc input[type="date"],
|
||||
.xc input[type="month"],
|
||||
.xc input[type="time"],
|
||||
.xc input[type="week"],
|
||||
.xc input[type="number"],
|
||||
.xc input[type="email"],
|
||||
.xc input[type="url"],
|
||||
.xc input[type="search"],
|
||||
.xc input[type="tel"],
|
||||
.xc input[type="color"]{background-color:#ffffff;border:1px solid #cccccc;-webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);-moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075);-webkit-transition:border linear 0.2s, box-shadow linear 0.2s;-moz-transition:border linear 0.2s, box-shadow linear 0.2s;-o-transition:border linear 0.2s, box-shadow linear 0.2s;transition:border linear 0.2s, box-shadow linear 0.2s}
|
||||
.xc textarea:focus,
|
||||
.xc input[type="text"]:focus,
|
||||
.xc input[type="password"]:focus,
|
||||
.xc input[type="datetime"]:focus,
|
||||
.xc input[type="datetime-local"]:focus,
|
||||
.xc input[type="date"]:focus,
|
||||
.xc input[type="month"]:focus,
|
||||
.xc input[type="time"]:focus,
|
||||
.xc input[type="week"]:focus,
|
||||
.xc input[type="number"]:focus,
|
||||
.xc input[type="email"]:focus,
|
||||
.xc input[type="url"]:focus,
|
||||
.xc input[type="search"]:focus,
|
||||
.xc input[type="tel"]:focus,
|
||||
.xc input[type="color"]:focus{border-color:rgba(82, 168, 236, 0.8);outline:0;outline:thin dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);-moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6)}
|
||||
.xc input[type="radio"],
|
||||
.xc input[type="checkbox"]{margin:0;line-height:normal}
|
||||
.xc input[type="file"],
|
||||
.xc input[type="image"],
|
||||
.xc input[type="submit"],
|
||||
.xc input[type="reset"],
|
||||
.xc input[type="button"],
|
||||
.xc input[type="radio"],
|
||||
.xc input[type="checkbox"]{width:auto}
|
||||
.xc select,
|
||||
.xc input[type="file"]{height:26px;*margin-top:4px;line-height:26px}
|
||||
.xc select{background-color:#ffffff;border:1px solid #cccccc}
|
||||
.xc select[multiple],
|
||||
.xc select[size]{height:auto}
|
||||
.xc select:focus,
|
||||
.xc input[type="file"]:focus,
|
||||
.xc input[type="radio"]:focus,
|
||||
.xc input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}
|
||||
.xc input:-moz-placeholder,
|
||||
.xc textarea:-moz-placeholder {color:#999999}
|
||||
.xc input:-ms-input-placeholder,
|
||||
.xc textarea:-ms-input-placeholder {color:#999999}
|
||||
.xc input::-webkit-input-placeholder,
|
||||
.xc textarea::-webkit-input-placeholder {color:#999999}
|
||||
.xc input,
|
||||
.xc textarea{margin-left:0}
|
||||
.xc input[disabled],
|
||||
.xc select[disabled],
|
||||
.xc textarea[disabled],
|
||||
.xc input[readonly],
|
||||
.xc select[readonly],
|
||||
.xc textarea[readonly]{cursor:not-allowed;background-color:#eeeeee}
|
||||
.xc input[type="radio"][disabled],
|
||||
.xc input[type="checkbox"][disabled],
|
||||
.xc input[type="radio"][readonly],
|
||||
.xc input[type="checkbox"][readonly]{background-color:transparent}
|
||||
.xc input:focus:invalid,
|
||||
.xc textarea:focus:invalid,
|
||||
.xc select:focus:invalid {color:#b94a48;border-color:#ee5f5b}
|
||||
.xc input:focus:invalid:focus,
|
||||
.xc textarea:focus:invalid:focus,
|
||||
.xc select:focus:invalid:focus {border-color:#e9322d;-webkit-box-shadow:0 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}
|
||||
/* Forms */
|
||||
.xc .form-horizontal .control-group{margin-bottom:20px;*zoom:1}
|
||||
.xc .form-horizontal .control-group:before,
|
||||
.xc .form-horizontal .control-group:after{display:table;line-height:0;content:""}
|
||||
.xc .form-horizontal .control-group:after{clear:both}
|
||||
.xc .form-horizontal .control-label{float:left;width:160px;padding-top:5px;text-align:right}
|
||||
.xc .form-horizontal .controls{*display:inline-block;*padding-left:20px;margin-left:180px;*margin-left:0}
|
||||
.xc .form-horizontal .controls:first-child{*padding-left:180px}
|
||||
.xc .form-horizontal .help-block{margin-bottom:0}
|
||||
.xc .form-horizontal input+.help-block,
|
||||
.xc .form-horizontal select+.help-block,
|
||||
.xc .form-horizontal textarea+.help-block,
|
||||
.xc .form-horizontal .input-prepend+.help-block,
|
||||
.xc .form-horizontal .input-append+.help-block{margin-top:10px}
|
||||
.xc .help-block,
|
||||
.xc .help-inline{color:#595959}
|
||||
.xc .help-block{display:block;margin-bottom:10px}
|
||||
.xc .help-inline{margin:0;display:inline-block;*display:inline;padding-left:5px;vertical-align:middle;*zoom:1}
|
||||
.xc .input-append,
|
||||
.xc .input-prepend{display:inline-block;margin-bottom:10px;font-size:0;white-space:nowrap;vertical-align:middle}
|
||||
.xc .input-append input,
|
||||
.xc .input-prepend input,
|
||||
.xc .input-append select,
|
||||
.xc .input-prepend select{position:relative;margin-bottom:0;*margin-left:0;vertical-align:top;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}
|
||||
.xc .input-append input:focus,
|
||||
.xc .input-prepend input:focus,
|
||||
.xc .input-append select:focus,
|
||||
.xc .input-prepend select:focus{z-index:2}
|
||||
.xc .input-append .add-on,
|
||||
.xc .input-prepend .add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 5px;font-weight:normal;line-height:20px;text-align:center;text-shadow:0 1px 0 #ffffff;background-color:#eeeeee;border:1px solid #ccc}
|
||||
.xc .input-append .add-on,
|
||||
.xc .input-prepend .add-on,
|
||||
.xc .input-append .btn,
|
||||
.xc .input-prepend .btn{vertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
|
||||
.xc .input-append .active,
|
||||
.xc .input-prepend .active{background-color:#a9dba9;border-color:#46a546}
|
||||
.xc .input-prepend .add-on,
|
||||
.xc .input-prepend .btn{margin-right:-1px}
|
||||
.xc .input-prepend .add-on:first-child,
|
||||
.xc .input-prepend .btn:first-child{-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}
|
||||
.xc .input-append input,
|
||||
.xc .input-append select{-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}
|
||||
.xc .input-append input+.btn-group .btn:last-child,
|
||||
.xc .input-append select+.btn-group .btn:last-child{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}
|
||||
.xc .input-append .add-on,
|
||||
.xc .input-append .btn,
|
||||
.xc .input-append .btn-group{margin-left:-1px}
|
||||
.xc .input-append .add-on:last-child,
|
||||
.xc .input-append .btn:last-child,
|
||||
.xc .input-append .btn-group:last-child>.dropdown-toggle{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}
|
||||
.xc .input-prepend.input-append input,
|
||||
.xc .input-prepend.input-append select{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
|
||||
.xc .input-prepend.input-append input+.btn-group .btn,
|
||||
.xc .input-prepend.input-append select+.btn-group .btn{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}
|
||||
.xc .input-prepend.input-append .add-on:first-child,
|
||||
.xc .input-prepend.input-append .btn:first-child{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}
|
||||
.xc .input-prepend.input-append .add-on:last-child,
|
||||
.xc .input-prepend.input-append .btn:last-child{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}
|
||||
.xc .input-prepend.input-append .btn-group:first-child{margin-left:0}
|
||||
.xc .form-horizontal input,
|
||||
.xc .form-horizontal textarea,
|
||||
.xc .form-horizontal select,
|
||||
.xc .form-horizontal .help-inline,
|
||||
.xc .form-horizontal .input-prepend,
|
||||
.xc .form-horizontal .input-append{display:inline-block;*display:inline;margin-bottom:0;vertical-align:middle;*zoom:1}
|
||||
.xc .form-horizontal .hide{display:none}
|
||||
.xc .control-group{margin-bottom:10px}
|
||||
/* Tabs */
|
||||
.xc .nav{margin:0 0 20px 0;padding:0;list-style:none}
|
||||
.xc .nav>li>a{display:block}
|
||||
.xc .nav>li>a:hover,
|
||||
.xc .nav>li>a:focus{text-decoration:none;background-color:#eeeeee}
|
||||
.xc .nav-tabs{*zoom:1}
|
||||
.xc .nav-tabs:before,
|
||||
.xc .nav-tabs:after{display:table;line-height:0;content:""}
|
||||
.xc .nav-tabs:after{clear:both}
|
||||
.xc .nav-tabs>li{float:left}
|
||||
.xc .nav-tabs>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}
|
||||
.xc .nav-tabs{border-bottom:1px solid #ddd}
|
||||
.xc .nav-tabs>li{margin-bottom:-1px}
|
||||
.xc .nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;border:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}
|
||||
.xc .nav-tabs>li>a:hover,
|
||||
.xc .nav-tabs>li>a:focus{border-color:#eeeeee #eeeeee #dddddd}
|
||||
.xc .nav-tabs>.active>a,
|
||||
.xc .nav-tabs>.active>a:hover,
|
||||
.xc .nav-tabs>.active>a:focus{color:#555555;cursor:default;background-color:#ffffff;border:1px solid #ddd;border-bottom-color:transparent}
|
||||
/* Table */
|
||||
.xc .table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0;width:100%;margin-bottom:20px}
|
||||
.xc .table th,
|
||||
.xc .table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid #dddddd}
|
||||
.xc .table th{font-weight:bold}
|
||||
.xc .table thead th{vertical-align:bottom}
|
||||
.xc .table caption+thead tr:first-child th,
|
||||
.xc .table caption+thead tr:first-child td,
|
||||
.xc .table colgroup+thead tr:first-child th,
|
||||
.xc .table colgroup+thead tr:first-child td,
|
||||
.xc .table thead:first-child tr:first-child th,
|
||||
.xc .table thead:first-child tr:first-child td{border-top:0}
|
||||
.xc .table tbody+tbody{border-top:2px solid #dddddd}
|
||||
.xc .table-striped tbody>tr:nth-child(odd)>td,
|
||||
.xc .table-striped tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}
|
||||
.xc .table-hover tbody tr:hover>td,
|
||||
.xc .table-hover tbody tr:hover>th{background-color:#f5f5f5}
|
||||
/* Pangination */
|
||||
.xc .pagination{margin:20px 0}
|
||||
.xc .pagination ul{display:inline-block;*display:inline;margin-bottom:0;margin-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;*zoom:1;-webkit-box-shadow:0 1px 2px rgba(0, 0, 0, 0.05);-moz-box-shadow:0 1px 2px rgba(0, 0, 0, 0.05);box-shadow:0 1px 2px rgba(0, 0, 0, 0.05)}
|
||||
.xc .pagination ul>li{display:inline}
|
||||
.xc .pagination ul>li>a,
|
||||
.xc .pagination ul>li>span{float:left;padding:4px 12px;line-height:20px;text-decoration:none;background-color:#ffffff;border:1px solid #dddddd;border-left-width:0}
|
||||
.xc .pagination ul>li>a:hover,
|
||||
.xc .pagination ul>li>a:focus,
|
||||
.xc .pagination ul>.active>a,
|
||||
.xc .pagination ul>.active>span{background-color:#f5f5f5}
|
||||
.xc .pagination ul>.active>a,
|
||||
.xc .pagination ul>.active>span{color:#999999;cursor:default}
|
||||
.xc .pagination ul>.disabled>span,
|
||||
.xc .pagination ul>.disabled>a,
|
||||
.xc .pagination ul>.disabled>a:hover,
|
||||
.xc .pagination ul>.disabled>a:focus{color:#999999;cursor:default;background-color:transparent}
|
||||
.xc .pagination ul>li:first-child>a,
|
||||
.xc .pagination ul>li:first-child>span{border-left-width:1px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}
|
||||
.xc .pagination ul>li:last-child>a,
|
||||
.xc .pagination ul>li:last-child>span{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}
|
||||
.xc .pagination-centered{text-align:center}
|
||||
/* Button */
|
||||
.xc .btn{font-size:12px;font-family:inherit;display:inline-block;*display:inline;padding:4px 12px;margin-bottom:0;*margin-left:.3em;line-height:20px;height:auto;color:#333333;text-align:center;text-shadow:0 1px 1px rgba(255, 255, 255, 0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-moz-linear-gradient(top, #ffffff, #e6e6e6);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));background-image:-webkit-linear-gradient(top, #ffffff, #e6e6e6);background-image:-o-linear-gradient(top, #ffffff, #e6e6e6);background-image:linear-gradient(to bottom, #ffffff, #e6e6e6);background-repeat:repeat-x;border:1px solid #cccccc;*border:0;border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);border-bottom-color:#b3b3b3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);*zom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);-moz-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05)}
|
||||
.xc .btn:hover,
|
||||
.xc .btn:focus,
|
||||
.xc .btn:active,
|
||||
.xc .btn.active,
|
||||
.xc .btn.disabled,
|
||||
.xc .btn[disabled]{color:#333333;background-color:#e6e6e6;*background-color:#d9d9d9}
|
||||
.xc .btn:active,
|
||||
.xc .btn.active{background-color:#cccccc \9}
|
||||
.xc .btn:first-child{*margin-left:0}
|
||||
.xc .btn:hover,
|
||||
.xc .btn:focus{color:#333333;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position 0.1s linear;-moz-transition:background-position 0.1s linear;-o-transition:background-position 0.1s linear;transition:background-position 0.1s linear}
|
||||
.xc .btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}
|
||||
.xc .btn.active,
|
||||
.xc .btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);-moz-box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05)}
|
||||
.xc .btn.disabled,
|
||||
.xc .btn[disabled]{cursor:default;background-image:none;opacity:0.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}
|
||||
.xc .btn-inverse.active{color:rgba(255, 255, 255, 0.75)}
|
||||
.xc .btn-inverse{color:#ffffff!important;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#363636;*background-color:#222222;background-image:-moz-linear-gradient(top, #444444, #222222);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#444444), to(#222222));background-image:-webkit-linear-gradient(top, #444444, #222222);background-image:-o-linear-gradient(top, #444444, #222222);background-image:linear-gradient(to bottom, #444444, #222222);background-repeat:repeat-x;border-color:#222222 #222222 #000000;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}
|
||||
.xc .btn-inverse:hover,
|
||||
.xc .btn-inverse:focus,
|
||||
.xc .btn-inverse:active,
|
||||
.xc .btn-inverse.active,
|
||||
.xc .btn-inverse.disabled,
|
||||
.xc .btn-inverse[disabled]{color:#ffffff;background-color:#222222;*background-color:#151515}
|
||||
.xc .btn-inverse:active,
|
||||
.xc .btn-inverse.active{background-color:#080808 \9}
|
||||
.xc button.btn,
|
||||
.xc input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px}
|
||||
.xc button.btn::-moz-focus-inner,
|
||||
.xc input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}
|
||||
.xc .btn-group{position:relative;display:inline-block;*display:inline;*margin-left:.3em;font-size:0;white-space:nowrap;vertical-align:middle;*zoom:1}
|
||||
.xc .btn-group:first-child{*margin-left:0}
|
||||
.xc .btn-group+.btn-group{margin-left:5px}
|
||||
.xc .btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
|
||||
.xc .btn-group>.btn+.btn{margin-left:-1px}
|
||||
.xc .btn-group>.btn:first-child{margin-left:0;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}
|
||||
.xc .btn-group>.btn:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}
|
||||
.xc .btn-group>.btn:hover,
|
||||
.xc .btn-group>.btn:focus,
|
||||
.xc .btn-group>.btn:active,
|
||||
.xc .btn-group>.btn.active{z-index:2}
|
||||
/* Communication Module Customize */
|
||||
.xc,
|
||||
.xc input,
|
||||
.xc textarea,
|
||||
.xc select,
|
||||
.xc button,
|
||||
.xc table{font-size:13px}
|
||||
.xc h1{font-size:22px}
|
||||
.xc .nav a,
|
||||
.xc .btn{text-decoration:none}
|
||||
.xc .table{border-top:1px solid #ddd;border-bottom:1px solid #ddd}
|
||||
|
|
|
|||
|
|
@ -1,13 +1,14 @@
|
|||
<include target="./common_header.html" />
|
||||
<load target="filter/delete_friend_group.xml" />
|
||||
<load target="filter/move_friend.xml" />
|
||||
<h1 class="h1">{$member_title = $lang->cmd_view_friend }</h1>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<h1>{$member_title = $lang->cmd_view_friend }</h1>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/communication/skins/default/frineds/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form ruleset="deleteCheckedFriend" id="fo_friend_list" action="./" method="post">
|
||||
<input type="hidden" name="module" value="communication" />
|
||||
<input type="hidden" name="act" value="procCommunicationDeleteFriend" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/communication/skins/default/frineds/1" />
|
||||
|
||||
<div class="btnArea">
|
||||
<span class="etc">
|
||||
|
|
@ -52,7 +53,7 @@
|
|||
<select name="target_friend_group_srl" style="margin:0">
|
||||
<option loop="$friend_group_list => $key,$val" value="{$val->friend_group_srl}">{$val->title}</option>
|
||||
</select>
|
||||
<span class="btn-group">
|
||||
<span class="btn-group __submit_group">
|
||||
<button type="submit" name="act" class="btn" value="procCommunicationMoveFriend">{$lang->cmd_move}</button>
|
||||
<button type="submit" name="act" class="btn" value="procCommunicationDeleteFriend">{$lang->cmd_delete}</button>
|
||||
</span>
|
||||
|
|
@ -69,5 +70,6 @@
|
|||
</form>
|
||||
<form action="./" method="get" id="for_delete_group">
|
||||
<input type="hidden" name="friend_group_srl" value="" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/communication/skins/default/frineds/1" />
|
||||
</form>
|
||||
<include target="./common_footer.html" />
|
||||
|
|
|
|||
|
|
@ -88,5 +88,16 @@ function doMoveFriend() {
|
|||
/* 친구 그룹 선택 */
|
||||
function doJumpFriendGroup() {
|
||||
var sel_val = jQuery('#jumpMenu option:selected').val();
|
||||
location.href = current_url.setQuery('friend_group_srl', sel_val);
|
||||
location.href = current_url.setQuery('friend_group_srl', sel_val);
|
||||
}
|
||||
|
||||
jQuery(function($){
|
||||
$('.__submit_group button[type=submit]').click(function(e){
|
||||
var sel_val = $('input[name="friend_srl_list[]"]:checked').length;
|
||||
if(sel_val == 0)
|
||||
{
|
||||
e.preventDefault();
|
||||
return false;
|
||||
}
|
||||
});
|
||||
});
|
||||
|
|
|
|||
|
|
@ -2,13 +2,13 @@
|
|||
<load target="filter/delete_checked_message.xml" />
|
||||
<load target="filter/update_allow_message.xml" />
|
||||
<div class="btnArea">
|
||||
<form action="./" method="GET" class="etc" onsubmit="location.href=current_url.setQuery('message_srl','').setQuery('message_type',this.message_box.options[this.message_box.selectedIndex].value); return false;">
|
||||
<form action="./" method="GET" style="margin:0;display:inline-block;*display:inline;zoom:1" onsubmit="location.href=current_url.setQuery('message_srl','').setQuery('message_type',this.message_box.options[this.message_box.selectedIndex].value); return false;">
|
||||
<select name="message_box" style="margin:0">
|
||||
<option loop="$lang->message_box => $key,$val" selected="selected"|cond="$key==$message_type" value="{$key}" >{$val}</option>
|
||||
</select>
|
||||
<input type="submit" value="{$lang->cmd_select}" class="btn" />
|
||||
</form>
|
||||
<form action="./" method="POST" class="setupMessage">
|
||||
<form action="./" method="POST" style="margin:0;display:inline-block;*display:inline;zoom:1">
|
||||
<input type="hidden" name="module" value="communication" />
|
||||
<input type="hidden" name="act" value="procCommunicationUpdateAllowMessage" />
|
||||
<input type="hidden" name="message_type" value="{$message_type}" />
|
||||
|
|
@ -57,7 +57,7 @@
|
|||
</th>
|
||||
<th scope="col">{$lang->regdate}</th>
|
||||
<th scope="col">{$lang->readed_date}</th>
|
||||
<th scope="col"><input name="check_all" type="checkbox" /></th>
|
||||
<th scope="col"><input name="check_all" type="checkbox" onclick="XE.checkboxToggleAll('message_srl_list[]', {wrap:'fo_message_list'})"/></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
|
|
|||
|
|
@ -1,10 +1,7 @@
|
|||
<load target="../../../../common/css/bootstrap.min.css" />
|
||||
<load target="../../../../common/css/bootstrap-responsive.min.css" />
|
||||
<load target="css/communication.css" />
|
||||
<load target="js/communication.js" />
|
||||
<div class="xe" cond="$message">
|
||||
<div class="page-header">
|
||||
<h1>{$lang->message_received}</h1>
|
||||
</div>
|
||||
<div class="xc" cond="$message">
|
||||
<h1>{$lang->message_received}</h1>
|
||||
<table class="table table-striped table-hover">
|
||||
<!--@if($message->member_srl != $logged_info->member_srl)-->
|
||||
<tr>
|
||||
|
|
@ -21,7 +18,6 @@
|
|||
</tr>
|
||||
</table>
|
||||
<div class="btnArea">
|
||||
<span class="etc"><button type="button" class="btn" onclick="location.href=location.href;return false;">{$lang->cmd_next}</button></span>
|
||||
<span class="btn-group">
|
||||
<button cond="$message->member_srl != $logged_info->member_srl" class="btn" type="button" onclick="doSendMessage('{$message->sender_srl}','{$message->message_srl}');return false;">{$lang->cmd_reply_message}</button>
|
||||
<button type="button" class="btn" onclick="doStoreMessage('{$message->message_srl}');return false;">{$lang->cmd_store}</button>
|
||||
|
|
|
|||
|
|
@ -1,33 +1,33 @@
|
|||
<load target="../../../../common/css/bootstrap.min.css" />
|
||||
<load target="../../../../common/css/bootstrap-responsive.min.css" />
|
||||
<load target="css/communication.css" />
|
||||
<load target="js/communication.js" />
|
||||
<div class="page-header">
|
||||
<div class="xc">
|
||||
<h1>{$lang->cmd_send_message}</h1>
|
||||
</div>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="alert alert-{$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form ruleset="sendMessage" action="./" method="post">
|
||||
<input type="hidden" name="module" value="communication" />
|
||||
<input type="hidden" name="act" value="procCommunicationSendMessage" />
|
||||
<input type="hidden" name="content" value="{htmlspecialchars($source_message->content)}" />
|
||||
<input type="hidden" name="receiver_srl" value="{$receiver_info->member_srl}" />
|
||||
<table class="table table-striped table-hover">
|
||||
<tr>
|
||||
<th scope="row"><label for="textfield1">{$lang->receiver}</label></th>
|
||||
<td>{$receiver_info->nick_name}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->title}</th>
|
||||
<td><input type="text" name="title" id="message_title" value="{$source_message->title}" style="width:90%" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->cmd_option}</th>
|
||||
<td><input type="checkbox" value="Y" name="send_mail" /> {$lang->cmd_send_mail}</td>
|
||||
</tr>
|
||||
</table>
|
||||
{$editor}
|
||||
<div class="btnArea">
|
||||
<input type="submit" value="{$lang->cmd_send_message}" class="btn btn-inverse" />
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/communication/skins/default/send_message/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
</form>
|
||||
<form ruleset="sendMessage" action="./" method="post">
|
||||
<input type="hidden" name="module" value="communication" />
|
||||
<input type="hidden" name="act" value="procCommunicationSendMessage" />
|
||||
<input type="hidden" name="content" value="{htmlspecialchars($source_message->content)}" />
|
||||
<input type="hidden" name="receiver_srl" value="{$receiver_info->member_srl}" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/communication/skins/default/send_message/1" />
|
||||
<table class="table table-striped table-hover">
|
||||
<tr>
|
||||
<th scope="row"><label for="textfield1">{$lang->receiver}</label></th>
|
||||
<td>{$receiver_info->nick_name}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->title}</th>
|
||||
<td><input type="text" name="title" id="message_title" value="{$source_message->title}" style="width:90%" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">{$lang->cmd_option}</th>
|
||||
<td><input type="checkbox" value="Y" name="send_mail" /> {$lang->cmd_send_mail}</td>
|
||||
</tr>
|
||||
</table>
|
||||
{$editor}
|
||||
<div class="btnArea">
|
||||
<input type="submit" value="{$lang->cmd_send_message}" class="btn btn-inverse" />
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -50,73 +50,4 @@
|
|||
<name xml:lang="zh-TW">NHN</name>
|
||||
<name xml:lang="tr">NHN</name>
|
||||
</author>
|
||||
|
||||
<colorset>
|
||||
<color name="white" src="screenshot/white.gif">
|
||||
<title xml:lang="ko">기본</title>
|
||||
<title xml:lang="zh-CN">默认</title>
|
||||
<title xml:lang="jp">デフォルト</title>
|
||||
<title xml:lang="en">default</title>
|
||||
<title xml:lang="vi">Mặc định</title>
|
||||
<title xml:lang="es">Por defecto</title>
|
||||
<title xml:lang="ru">умолчанию</title>
|
||||
<title xml:lang="zh-TW">預設</title>
|
||||
<title xml:lang="tr">varsayılan</title>
|
||||
</color>
|
||||
<color name="cyan" src="screenshot/cyan.gif">
|
||||
<title xml:lang="ko">청록색</title>
|
||||
<title xml:lang="jp">青緑</title>
|
||||
<title xml:lang="zh-CN">青绿色</title>
|
||||
<title xml:lang="en">cyan</title>
|
||||
<title xml:lang="vi">Cyan</title>
|
||||
<title xml:lang="es">Cian</title>
|
||||
<title xml:lang="ru">бирюзовый</title>
|
||||
<title xml:lang="zh-TW">青綠色</title>
|
||||
<title xml:lang="tr">Deniz Mavisi</title>
|
||||
</color>
|
||||
<color name="green" src="screenshot/green.gif">
|
||||
<title xml:lang="ko">초록색</title>
|
||||
<title xml:lang="jp">緑</title>
|
||||
<title xml:lang="zh-CN">绿色</title>
|
||||
<title xml:lang="en">green</title>
|
||||
<title xml:lang="vi">Green</title>
|
||||
<title xml:lang="es">Verde</title>
|
||||
<title xml:lang="ru">зеленый</title>
|
||||
<title xml:lang="zh-TW">綠色</title>
|
||||
<title xml:lang="tr">Yeşil</title>
|
||||
</color>
|
||||
<color name="red" src="screenshot/red.gif">
|
||||
<title xml:lang="ko">빨간색</title>
|
||||
<title xml:lang="jp">赤</title>
|
||||
<title xml:lang="zh-CN">红色</title>
|
||||
<title xml:lang="en">red</title>
|
||||
<title xml:lang="vi">Red</title>
|
||||
<title xml:lang="es">Roja</title>
|
||||
<title xml:lang="ru">красный</title>
|
||||
<title xml:lang="zh-TW">紅色</title>
|
||||
<title xml:lang="tr">Kırmızı</title>
|
||||
</color>
|
||||
<color name="purple" src="screenshot/purple.gif">
|
||||
<title xml:lang="ko">보라색</title>
|
||||
<title xml:lang="jp">紫</title>
|
||||
<title xml:lang="zh-CN">紫色</title>
|
||||
<title xml:lang="en">purple</title>
|
||||
<title xml:lang="vi">Purple</title>
|
||||
<title xml:lang="es">Púrpura</title>
|
||||
<title xml:lang="ru">Лиловый</title>
|
||||
<title xml:lang="zh-TW">紫色</title>
|
||||
<title xml:lang="tr">Mor</title>
|
||||
</color>
|
||||
<color name="black" src="screenshot/black.gif">
|
||||
<title xml:lang="ko">검은색</title>
|
||||
<title xml:lang="jp">黒</title>
|
||||
<title xml:lang="en">Black</title>
|
||||
<title xml:lang="vi">Black</title>
|
||||
<title xml:lang="ru">Черного</title>
|
||||
<title xml:lang="es">Negro</title>
|
||||
<title xml:lang="zh-CN">黑色</title>
|
||||
<title xml:lang="zh-TW">黑色</title>
|
||||
<title xml:lang="tr">Siyah</title>
|
||||
</color>
|
||||
</colorset>
|
||||
</skin>
|
||||
|
|
|
|||
|
|
@ -10,13 +10,14 @@
|
|||
|
||||
<p class="x_alert x_alert-info" id="aboutCommunication" hidden>{nl2br($lang->about_communication)}</p>
|
||||
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="x_alert x_alert-{$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/communication/tpl/index/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
|
||||
<form ruleset="insertConfig" action="./" method="post" class="x_form-horizontal">
|
||||
<input type="hidden" name="module" value="communication" />
|
||||
<input type="hidden" name="act" value="procCommunicationAdminInsertConfig">
|
||||
<input type="hidden" name="xe_validator_id" value="modules/communication/tpl/index/1" />
|
||||
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="editor_skin">{$lang->editor_skin}</label>
|
||||
|
|
|
|||
|
|
@ -99,13 +99,13 @@ class counterController extends counter
|
|||
|
||||
if($site_srl)
|
||||
{
|
||||
$args->regdate = '0' . date('Ymd');
|
||||
$args->regdate = '0,' . date('Ymd');
|
||||
$args->site_srl = $site_srl;
|
||||
$output = executeQuery('counter.updateSiteCounterUnique', $args);
|
||||
}
|
||||
else
|
||||
{
|
||||
$args->regdate = '0' . date('Ymd');
|
||||
$args->regdate = '0,' . date('Ymd');
|
||||
$output = executeQuery('counter.updateCounterUnique', $args);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -131,6 +131,14 @@ class documentAdminController extends document
|
|||
$oDB->rollback();
|
||||
return $output;
|
||||
}
|
||||
|
||||
//Move a module of the extra vars
|
||||
$output = executeQuery('document.moveDocumentExtraVars', $obj);
|
||||
if(!$output->toBool()) {
|
||||
$oDB->rollback();
|
||||
return $output;
|
||||
}
|
||||
|
||||
// Set 0 if a new category doesn't exist after catergory change
|
||||
if($source_category_srl != $category_srl)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -63,9 +63,6 @@ class documentAdminView extends document
|
|||
Context::set('status_name_list', $statusNameList);
|
||||
Context::set('page_navigation', $output->page_navigation);
|
||||
|
||||
$oSecurity = new Security();
|
||||
$oSecurity->encodeHTML('document_list..variables.');
|
||||
|
||||
// set a search option used in the template
|
||||
$count_search_option = count($this->search_option);
|
||||
for($i=0;$i<$count_search_option;$i++)
|
||||
|
|
|
|||
|
|
@ -187,7 +187,7 @@ class documentController extends document
|
|||
*/
|
||||
function insertDocument($obj, $manual_inserted = false, $isRestore = false, $isLatest = true)
|
||||
{
|
||||
if(!checkCSRF())
|
||||
if(!$manual_inserted && !checkCSRF())
|
||||
{
|
||||
return new Object(-1, 'msg_invalid_request');
|
||||
}
|
||||
|
|
@ -202,6 +202,7 @@ class documentController extends document
|
|||
if($obj->allow_trackback!='Y') $obj->allow_trackback = 'N';
|
||||
if($obj->homepage && !preg_match('/^[a-z]+:\/\//i',$obj->homepage)) $obj->homepage = 'http://'.$obj->homepage;
|
||||
if($obj->notify_message != 'Y') $obj->notify_message = 'N';
|
||||
if(!$obj->email_address) $obj->email_address = '';
|
||||
if(!$isRestore) $obj->ipaddress = $_SERVER['REMOTE_ADDR']; //board?<3F>서 form key값으<EAB092>?ipaddress<73>??<3F>용?<3F>면 ?<3F>한 ip가 ?<3F>록?? ?<3F>터?<3F>???<3F><>??<3F>슴
|
||||
|
||||
// Serialize the $extra_vars, check the extra_vars type, because duplicate serialized avoid
|
||||
|
|
@ -239,9 +240,11 @@ class documentController extends document
|
|||
if(Context::get('is_logged') && !$manual_inserted && !$isRestore)
|
||||
{
|
||||
$obj->member_srl = $logged_info->member_srl;
|
||||
$obj->user_id = $logged_info->user_id;
|
||||
$obj->user_name = $logged_info->user_name;
|
||||
$obj->nick_name = $logged_info->nick_name;
|
||||
|
||||
// user_id, user_name and nick_name already encoded
|
||||
$obj->user_id = htmlspecialchars_decode($logged_info->user_id);
|
||||
$obj->user_name = htmlspecialchars_decode($logged_info->user_name);
|
||||
$obj->nick_name = htmlspecialchars_decode($logged_info->nick_name);
|
||||
$obj->email_address = $logged_info->email_address;
|
||||
$obj->homepage = $logged_info->homepage;
|
||||
}
|
||||
|
|
@ -331,11 +334,12 @@ class documentController extends document
|
|||
* Update the document
|
||||
* @param object $source_obj
|
||||
* @param object $obj
|
||||
* @param bool $manual_updated
|
||||
* @return object
|
||||
*/
|
||||
function updateDocument($source_obj, $obj)
|
||||
function updateDocument($source_obj, $obj, $manual_updated = FALSE)
|
||||
{
|
||||
if(!checkCSRF())
|
||||
if(!$manual_updated && !checkCSRF())
|
||||
{
|
||||
return new Object(-1, 'msg_invalid_request');
|
||||
}
|
||||
|
|
@ -412,8 +416,8 @@ class documentController extends document
|
|||
if($source_obj->get('member_srl')==$logged_info->member_srl || $bUseHistory)
|
||||
{
|
||||
$obj->member_srl = $logged_info->member_srl;
|
||||
$obj->user_name = $logged_info->user_name;
|
||||
$obj->nick_name = $logged_info->nick_name;
|
||||
$obj->user_name = htmlspecialchars_decode($logged_info->user_name);
|
||||
$obj->nick_name = htmlspecialchars_decode($logged_info->nick_name);
|
||||
$obj->email_address = $logged_info->email_address;
|
||||
$obj->homepage = $logged_info->homepage;
|
||||
}
|
||||
|
|
@ -434,6 +438,14 @@ class documentController extends document
|
|||
if($obj->title == '') $obj->title = 'Untitled';
|
||||
// Remove XE's own tags from the contents.
|
||||
$obj->content = preg_replace('!<\!--(Before|After)(Document|Comment)\(([0-9]+),([0-9]+)\)-->!is', '', $obj->content);
|
||||
if(Mobile::isFromMobilePhone())
|
||||
{
|
||||
if($obj->use_html != 'Y')
|
||||
{
|
||||
$obj->content = htmlspecialchars($obj->content);
|
||||
}
|
||||
$obj->content = nl2br($obj->content);
|
||||
}
|
||||
// Change not extra vars but language code of the original document if document's lang_code is different from author's setting.
|
||||
if($source_obj->get('lang_code') != Context::getLangType())
|
||||
{
|
||||
|
|
@ -685,9 +697,11 @@ class documentController extends document
|
|||
{
|
||||
$logged_info = Context::get('logged_info');
|
||||
$trash_args->member_srl = $logged_info->member_srl;
|
||||
$trash_args->user_id = $logged_info->user_id;
|
||||
$trash_args->user_name = $logged_info->user_name;
|
||||
$trash_args->nick_name = $logged_info->nick_name;
|
||||
|
||||
// user_id, user_name and nick_name already encoded
|
||||
$trash_args->user_id = htmlspecialchars_decode($logged_info->user_id);
|
||||
$trash_args->user_name = htmlspecialchars_decode($logged_info->user_name);
|
||||
$trash_args->nick_name = htmlspecialchars_decode($logged_info->nick_name);
|
||||
}
|
||||
// Date setting for updating documents
|
||||
$doucment_args = new stdClass();
|
||||
|
|
@ -1446,14 +1460,15 @@ class documentController extends document
|
|||
|
||||
$logged_info = Context::get('logged_info');
|
||||
|
||||
foreach($extra_keys as $idx => $val)
|
||||
foreach($extra_keys as $idx => $val)
|
||||
{
|
||||
$idx = $val->idx;
|
||||
if($val->type == 'kr_zip')
|
||||
{
|
||||
$idx .= '[]';
|
||||
}
|
||||
$js_code[] = sprintf('validator.cast("ADD_MESSAGE", ["extra_vars%s","%s"]);', $idx, $val->name);
|
||||
$name = str_ireplace(array('<script', '</script'), array('<scr" + "ipt', '</scr" + "ipt'), $val->name);
|
||||
$js_code[] = sprintf('validator.cast("ADD_MESSAGE", ["extra_vars%s","%s"]);', $idx, $name);
|
||||
if($val->is_required == 'Y') $js_code[] = sprintf('validator.cast("ADD_EXTRA_FIELD", ["extra_vars%s", { required:true }]);', $idx);
|
||||
}
|
||||
|
||||
|
|
@ -1830,7 +1845,7 @@ class documentController extends document
|
|||
$category_srl,
|
||||
getUrl('','mid',$node->mid,'category',$category_srl),
|
||||
$expand,
|
||||
$color,
|
||||
htmlspecialchars($color),
|
||||
$group_check_code,
|
||||
$category_srl,
|
||||
$node->document_count
|
||||
|
|
@ -2001,7 +2016,7 @@ class documentController extends document
|
|||
*/
|
||||
function procDocumentManageCheckedDocument()
|
||||
{
|
||||
set_time_limit(0);
|
||||
@set_time_limit(0);
|
||||
if(!Context::get('is_logged')) return new Object(-1,'msg_not_permitted');
|
||||
|
||||
if(!checkCSRF())
|
||||
|
|
@ -2244,6 +2259,8 @@ class documentController extends document
|
|||
$documentList = array();
|
||||
$this->setMessage($lang->no_documents);
|
||||
}
|
||||
$oSecurity = new Security($documentList);
|
||||
$oSecurity->encodeHTML('..variables.');
|
||||
$this->add('document_list', $documentList);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -315,6 +315,11 @@ class documentItem extends Object
|
|||
return htmlspecialchars($this->get('nick_name'));
|
||||
}
|
||||
|
||||
function getLastUpdater()
|
||||
{
|
||||
return htmlspecialchars($this->get('last_updater'));
|
||||
}
|
||||
|
||||
function getTitleText($cut_size = 0, $tail='...')
|
||||
{
|
||||
if(!$this->document_srl) return;
|
||||
|
|
@ -668,7 +673,7 @@ class documentItem extends Object
|
|||
|
||||
if(!$cpage)
|
||||
{
|
||||
$cpage = Context::get('cpage');
|
||||
$cpage = Context::get('cpage') ? Context::get('cpage') : 1;
|
||||
}
|
||||
|
||||
// Get a list of comments
|
||||
|
|
|
|||
|
|
@ -595,6 +595,7 @@ class documentModel extends document
|
|||
$args->var_idx = $search_obj->s_var_idx;
|
||||
$args->var_eid = $search_obj->s_var_eid;
|
||||
$args->var_value = $search_obj->s_var_value;
|
||||
$args->var_lang_code = Context::getLangType();
|
||||
|
||||
$output = executeQuery('document.getDocumentExtraVarsCount', $args);
|
||||
// Return total number of
|
||||
|
|
@ -920,7 +921,7 @@ class documentModel extends document
|
|||
$extra_keys = $this->getExtraKeys($module_srl);
|
||||
Context::set('extra_keys', $extra_keys);
|
||||
$security = new Security();
|
||||
$security->encodeHTML('extra_keys..eid');
|
||||
$security->encodeHTML('extra_keys..');
|
||||
|
||||
// Get information of module_grants
|
||||
$oTemplate = &TemplateHandler::getInstance();
|
||||
|
|
@ -1351,6 +1352,10 @@ class documentModel extends document
|
|||
$args->{"s_".$search_target} = $search_keyword;
|
||||
break;
|
||||
case 'is_notice' :
|
||||
if($search_keyword=='N') $args->{"s_".$search_target} = 'N';
|
||||
elseif($search_keyword=='Y') $args->{"s_".$search_target} = 'Y';
|
||||
else $args->{"s_".$search_target} = '';
|
||||
break;
|
||||
case 'is_secret' :
|
||||
if($search_keyword=='N') $args->statusList = array($this->getConfigStatus('public'));
|
||||
elseif($search_keyword=='Y') $args->statusList = array($this->getConfigStatus('secret'));
|
||||
|
|
|
|||
|
|
@ -454,7 +454,7 @@
|
|||
<value xml:lang="tr"><![CDATA[Gizli]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Bí mật]]></value>
|
||||
</item>
|
||||
<item name="tags">
|
||||
<item name="tag">
|
||||
<value xml:lang="ko"><![CDATA[태그]]></value>
|
||||
<value xml:lang="en"><![CDATA[Tag]]></value>
|
||||
<value xml:lang="jp"><![CDATA[タグ]]></value>
|
||||
|
|
@ -492,7 +492,7 @@
|
|||
<item name="blamed_count">
|
||||
<value xml:lang="ko"><![CDATA[비추천 수 (이상)]]></value>
|
||||
</item>
|
||||
<item name="comment_count ">
|
||||
<item name="comment_count">
|
||||
<value xml:lang="ko"><![CDATA[댓글 수 (이상)]]></value>
|
||||
<value xml:lang="en"><![CDATA[Number of Comments (over)]]></value>
|
||||
<value xml:lang="jp"><![CDATA[コメント数(以上)]]></value>
|
||||
|
|
@ -504,7 +504,7 @@
|
|||
<value xml:lang="tr"><![CDATA[Yorum Sayısı (over)]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Số bình luận]]></value>
|
||||
</item>
|
||||
<item name="trackback_count ">
|
||||
<item name="trackback_count">
|
||||
<value xml:lang="ko"><![CDATA[트랙백 수 (이상)]]></value>
|
||||
<value xml:lang="en"><![CDATA[Number of Trackbacks (over)]]></value>
|
||||
<value xml:lang="jp"><![CDATA[トラックバック数(以上)]]></value>
|
||||
|
|
@ -516,7 +516,7 @@
|
|||
<value xml:lang="tr"><![CDATA[Geri İzleme Sayısı (over)]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Số liên kết Web]]></value>
|
||||
</item>
|
||||
<item name="uploaded_count ">
|
||||
<item name="uploaded_count">
|
||||
<value xml:lang="ko"><![CDATA[첨부파일 수 (이상)]]></value>
|
||||
<value xml:lang="en"><![CDATA[Number of Attachments (over)]]></value>
|
||||
<value xml:lang="jp"><![CDATA[添付ファイル数(以上)]]></value>
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@
|
|||
<condition operation="equal" column="extra_vars.eid" var="var_eid" pipe="and" />
|
||||
<condition operation="in" column="documents.status" var="statusList" pipe="and" />
|
||||
<condition operation="like" column="extra_vars.value" var="var_value" notnull="notnull" pipe="and" />
|
||||
<condition operation="equal" column="extra_vars.lang_code" var="var_lang_code" pipe="and" />
|
||||
</conditions>
|
||||
<groups>
|
||||
<group column="extra_vars.document_srl" />
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
<condition operation="like" column="user_name" var="s_user_name" pipe="or" />
|
||||
<condition operation="like" column="user_id" var="s_user_id" pipe="or" />
|
||||
<condition operation="like" column="nick_name" var="s_nick_name" pipe="or" />
|
||||
<condition operation="like" column="email_address" var="s_email_addres" pipe="or" />
|
||||
<condition operation="like" column="email_address" var="s_email_address" pipe="or" />
|
||||
<condition operation="like" column="homepage" var="s_homepage" pipe="or" />
|
||||
<condition operation="like" column="tags" var="s_tags" pipe="or" />
|
||||
<condition operation="equal" column="member_srl" var="s_member_srl" pipe="or" />
|
||||
|
|
|
|||
11
modules/document/queries/moveDocumentExtraVars.xml
Normal file
11
modules/document/queries/moveDocumentExtraVars.xml
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
<query id="moveDocumentExtraVars" action="update">
|
||||
<tables>
|
||||
<table name="document_extra_vars" />
|
||||
</tables>
|
||||
<columns>
|
||||
<column name="module_srl" var="module_srl" filter="number" />
|
||||
</columns>
|
||||
<conditions>
|
||||
<condition operation="equal" column="document_srl" var="document_srl" notnull="notnull" />
|
||||
</conditions>
|
||||
</query>
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
<query id="updateCategoryDocument" action="update">
|
||||
<query id="updateDocumentCategory" action="update">
|
||||
<tables>
|
||||
<table name="documents" />
|
||||
</tables>
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
var category_title = "{$lang->category}";
|
||||
</script>
|
||||
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="x_alert x_alert-{$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/document/tpl/category_list/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<div id="menu">
|
||||
|
|
@ -41,6 +41,7 @@
|
|||
<input type="hidden" name="success_return_url" value="{getRequestUriByServerEnviroment()}" />
|
||||
<input type="hidden" name="parent_srl" value="{$category_info->parent_srl}" />
|
||||
<input type="hidden" name="category_srl" value="{$category_info->category_srl}" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/document/tpl/category_list/1" />
|
||||
<div class="x_modal-header">
|
||||
<h1>{$lang->category}</h1>
|
||||
</div>
|
||||
|
|
@ -52,7 +53,7 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="category_title">{$lang->category_title}</label>
|
||||
<label class="x_control-label" for="lang_category_title">{$lang->category_title}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" class="lang_code" name="category_title" id="category_title" value="" />
|
||||
</div>
|
||||
|
|
@ -66,7 +67,7 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="category_description">{$lang->category_description}</label>
|
||||
<label class="x_control-label" for="lang_category_description">{$lang->category_description}</label>
|
||||
<div class="x_controls">
|
||||
<textarea name="category_description" class="lang_code" id="category_description" rows="8" cols="42"></textarea>
|
||||
<span class="x_help-block">{$lang->about_category_description}</span>
|
||||
|
|
|
|||
|
|
@ -4,9 +4,9 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
|
|||
</script>
|
||||
<load target="js/document_admin.js" usecdn="true" />
|
||||
<div class="x_page-header">
|
||||
<h1>{$lang->document} <a class="x_icon-question-sign" href="./help/index.html#UMAN_content_document" target="_blank">{$lang->help}</a></h1>
|
||||
<h1>{$lang->document} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_content_document" target="_blank">{$lang->help}</a></h1>
|
||||
</div>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/document/tpl/declared_list/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form id="fo_list" action="./" method="get">
|
||||
|
|
@ -21,7 +21,7 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
|
|||
<a href="{getUrl('act', 'dispDocumentAdminList', 'search_target', 'is_secret', 'search_keyword', 'Y')}">{$status_name_list['SECRET']}</a>
|
||||
<i>|</i>
|
||||
<a href="{getUrl('act', 'dispDocumentAdminList', 'search_target', 'is_secret', 'search_keyword', 'temp')}">{$status_name_list['TEMP']}</a>
|
||||
<a class="x_icon-question-sign" href="./help/index.html#UMAN_faq_temp_document" target="_blank">{$lang->help}</a>
|
||||
<a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_faq_temp_document" target="_blank">{$lang->help}</a>
|
||||
<i>|</i>
|
||||
<a href="{getUrl('', 'module', 'admin', 'act', 'dispDocumentAdminDeclared')}" class="active"|cond="$act == 'dispDocumentAdminDeclared'">{$lang->cmd_declared_list}({number_format($total_count)})</a>
|
||||
|
||||
|
|
@ -110,6 +110,7 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
|
|||
<input type="hidden" name="type" value="" />
|
||||
<input type="hidden" name="module_srl" value="" />
|
||||
<input type="hidden" name="success_return_url" value="{getUrl('', 'module', 'admin', 'act', 'dispDocumentAdminDeclared')}" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/document/tpl/declared_list/1" />
|
||||
<div class="x_modal-header">
|
||||
<h1>{$lang->document_manager}: <span class="_sub"></span></h1>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
<input type="hidden" name="document_srl" value="{$document_srl}" />
|
||||
</form>
|
||||
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/document/tpl/document_alias/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form ruleset="insertAlias" action="{Context::getRequestUri()}" method="post">
|
||||
|
|
@ -16,6 +16,7 @@
|
|||
<input type="hidden" name="act" value="procDocumentAdminInsertAlias" />
|
||||
<input type="hidden" name="document_srl" value="{$document_srl}" />
|
||||
<input type="hidden" name="module_srl" value="{$oDocument->get('module_srl')}" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/document/tpl/document_alias/1" />
|
||||
|
||||
<h1>{$lang->alias}</h1>
|
||||
<table class="x_table x_table-striped x_table-hover">
|
||||
|
|
|
|||
|
|
@ -4,9 +4,9 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
|
|||
</script>
|
||||
<load target="js/document_admin.js" usecdn="true" />
|
||||
<div class="x_page-header">
|
||||
<h1>{$lang->document} <a class="x_icon-question-sign" href="./help/index.html#UMAN_content_document" target="_blank">{$lang->help}</a></h1>
|
||||
<h1>{$lang->document} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_content_document" target="_blank">{$lang->help}</a></h1>
|
||||
</div>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/document/tpl/document_list/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<form id="fo_list" action="./" method="get">
|
||||
|
|
@ -21,7 +21,7 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
|
|||
<a href="{getUrl('search_target', 'is_secret', 'search_keyword', 'Y')}" class="active"|cond="$search_target == 'is_secret' && $search_keyword == 'Y'">{$status_name_list['SECRET']}<block cond="$search_target == 'is_secret' && $search_keyword == 'Y'">({number_format($total_count)})</block></a>
|
||||
<i>|</i>
|
||||
<a href="{getUrl('search_target', 'is_secret', 'search_keyword', 'temp')}" class="active"|cond="$search_target == 'is_secret' && $search_keyword == 'temp'">{$status_name_list['TEMP']}<block cond="$search_target == 'is_secret' && $search_keyword == 'temp'">({number_format($total_count)})</block></a>
|
||||
<a class="x_icon-question-sign" href="./help/index.html#UMAN_faq_temp_document" target="_blank">{$lang->help}</a>
|
||||
<a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_faq_temp_document" target="_blank">{$lang->help}</a>
|
||||
<i>|</i>
|
||||
<a href="{getUrl('', 'module', 'admin', 'act', 'dispDocumentAdminDeclared')}">{$lang->cmd_declared_list}</a>
|
||||
<i cond="$search_target == 'ipaddress'">|</i>
|
||||
|
|
@ -43,12 +43,12 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
|
|||
<th scope="col" class="nowr">{$lang->date}</th>
|
||||
<th scope="col" class="nowr">{$lang->ipaddress}</th>
|
||||
<th scope="col" class="nowr">{$lang->status}</th>
|
||||
<th scope="col"><input type="checkbox" name="cart" title="Check All" /></th>
|
||||
<th scope="col"><input type="checkbox" title="Check All" /></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr loop="$document_list => $no, $oDocument">
|
||||
<td class="title"><a href="{getUrl('','document_srl',$oDocument->document_srl)}" target="_blank"><!--@if(trim($oDocument->getTitle()))-->{$oDocument->getTitle()}<!--@else--><em>{$lang->no_title_document}</em><!--@end--></a></td>
|
||||
<td class="title"><a href="{getUrl('','document_srl',$oDocument->document_srl)}" target="_blank"><!--@if(trim($oDocument->getTitleText()))-->{htmlspecialchars($oDocument->getTitleText())}<!--@else--><em>{$lang->no_title_document}</em><!--@end--></a></td>
|
||||
<td class="nowr"><a href="#popup_menu_area" class="member_{$oDocument->get('member_srl')}">{$oDocument->getNickName()}</a></td>
|
||||
<td class="nowr">{$oDocument->get('readed_count')}</td>
|
||||
<td class="nowr">{$oDocument->get('voted_count')}/{$oDocument->get('blamed_count')}</td>
|
||||
|
|
@ -117,7 +117,7 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
|
|||
</select>
|
||||
<input type="search" name="search_keyword" value="{htmlspecialchars($search_keyword)}" title="{$lang->cmd_search}" />
|
||||
<button type="submit" class="x_btn x_btn-inverse">{$lang->cmd_search}</button>
|
||||
<button class="x_btn" type="button">{$lang->cmd_cancel}</button>
|
||||
<a href="{getUrl('','module',$module,'act',$act)}" class="x_btn">{$lang->cmd_cancel}</a>
|
||||
</form>
|
||||
<form action="./" method="post" class="x_modal" id="manageForm">
|
||||
<input type="hidden" name="module" value="document" />
|
||||
|
|
@ -125,6 +125,7 @@ xe.lang.msg_empty_search_keyword = '{$lang->msg_empty_search_keyword}';
|
|||
<input type="hidden" name="type" value="" />
|
||||
<input type="hidden" name="module_srl" value="" />
|
||||
<input type="hidden" name="success_return_url" value="{getUrl('', 'module', 'admin', 'act', 'dispDocumentAdminList', 'is_secret', $is_secret, 'search_target', $search_target, 'search_keyword', $search_keyword)}" cond="!empty($search_target) && !empty($search_keyword)" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/document/tpl/document_list/1" />
|
||||
<div class="x_modal-header">
|
||||
<h1>{$lang->document_manager}: <span class="_sub"></span></h1>
|
||||
</div>
|
||||
|
|
@ -173,7 +174,7 @@ jQuery(function($){
|
|||
}
|
||||
}).change();
|
||||
// Button action
|
||||
$('a[data-value]').click(function(){
|
||||
$('a[data-value]').bind('before-open.mw', function(){
|
||||
if($docTable.find('tbody :checked').length == 0){
|
||||
$('body').css('overflow','auto');
|
||||
alert('{$lang->msg_not_selected_document}');
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
<block cond="$selected_var_idx && $extra_keys[$selected_var_idx]">
|
||||
{@ $selected_var = $extra_keys[$selected_var_idx] }
|
||||
</block>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="x_alert x_alert-{$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/document/tpl/extra_keys/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
|
||||
|
|
@ -18,6 +18,7 @@
|
|||
<input type="hidden" name="module_srl" value="{$module_srl}" />
|
||||
<input type="hidden" name="var_idx" value="{$selected_var_idx}" />
|
||||
<input type="hidden" name="success_return_url" value="{getUrl('type', '')}" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/document/tpl/extra_keys/1" />
|
||||
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="eid">{$lang->eid}</label>
|
||||
|
|
@ -29,7 +30,7 @@
|
|||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="lang_name">{$lang->column_name}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" name="name" id="name" value="{htmlspecialchars($selected_var->name)}" class="lang_code" placeholder="Ex) Your favorite color." />
|
||||
<input type="text" name="name" id="name" value="<!--@if(strpos($selected_var->name, '$user_lang->') === false)-->{$selected_var->name}<!--@else-->{htmlspecialchars($selected_var->name)}<!--@end-->" class="lang_code" placeholder="Ex) Your favorite color." />
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
|
|
@ -57,7 +58,7 @@
|
|||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="lang_desc">{$lang->description}</label>
|
||||
<div class="x_controls">
|
||||
<input type="text" name="desc" id="desc" value="{htmlspecialchars($selected_var->desc)}" class="lang_code" placeholder="Ex) Displayed as your choice." />
|
||||
<input type="text" name="desc" id="desc" value="{$selected_var->desc}" class="lang_code" placeholder="Ex) Displayed as your choice." />
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
|
|
@ -99,36 +100,36 @@
|
|||
<th>{$lang->column_name}</th>
|
||||
<th>{$lang->column_type}</th>
|
||||
<th>{$lang->default_value}</th>
|
||||
<th>{$lang->description}</th>
|
||||
<th>{$lang->is_required}</th>
|
||||
<th>{$lang->cmd_search}</th>
|
||||
<th> </th>
|
||||
<th> </th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr loop="$extra_keys => $key,$val">
|
||||
<td>{$val->idx}</td>
|
||||
<block loop="$extra_keys => $key,$val">
|
||||
<tr>
|
||||
<td rowspan="2"|cond="$val->desc">{$val->idx}</td>
|
||||
<td>{$val->eid}</td>
|
||||
<td class="nowr"><strong>{$val->name}</strong></td>
|
||||
<td class="nowr">{$lang->column_type_list[$val->type]}</td>
|
||||
<td class="nowr">{$val->default} </td>
|
||||
<td>{$val->desc} </td>
|
||||
<td class="nowr"><!--@if($val->is_required=='Y')--><b>{$lang->is_required}</b><!--@else-->N<!--@end--></td>
|
||||
<td class="nowr"><!--@if($val->search=='Y')--><b>{$lang->search_target}</b><!--@else-->N<!--@end--></td>
|
||||
<td class="nowr">
|
||||
<td>{$val->default} </td>
|
||||
<td class="nowr"><!--@if($val->is_required=='Y')--><strong>Y</strong><!--@else-->N<!--@end--></td>
|
||||
<td class="nowr"><!--@if($val->search=='Y')--><strong>Y</strong><!--@else-->N<!--@end--></td>
|
||||
<td class="nowr" style="text-align:right">
|
||||
<block cond="$val->idx > 1">
|
||||
<button type="button" class="x_btn x_btn-link" onclick="moveVar('up','{$module_srl}','{$val->idx}')">{$lang->cmd_move_up}</button> <i>|</i>
|
||||
<button type="button" class="x_icon-arrow-up" onclick="moveVar('up','{$module_srl}','{$val->idx}')">{$lang->cmd_move_up}</button>
|
||||
</block>
|
||||
<block cond="count($extra_keys) > $val->idx">
|
||||
<button type="button" class="x_btn x_btn-link" onclick="moveVar('down','{$module_srl}','{$val->idx}')">{$lang->cmd_move_down}</button> <i>|</i>
|
||||
<button type="button" class="x_icon-arrow-down" onclick="moveVar('down','{$module_srl}','{$val->idx}')">{$lang->cmd_move_down}</button>
|
||||
</block>
|
||||
</td>
|
||||
<td class="nowr">
|
||||
<a href="{getUrl('selected_var_idx',$val->idx)}">{$lang->cmd_modify}</a> <i class="vr">|</i>
|
||||
<button type="button" class="x_btn x_btn-link" onclick="return doDeleteExtraKey('{$module_srl}','{$val->idx}');">{$lang->cmd_delete}</button>
|
||||
<a href="{getUrl('selected_var_idx',$val->idx)}" class="x_icon-wrench">{$lang->cmd_modify}</a>
|
||||
<button type="button" class="x_icon-trash" onclick="return doDeleteExtraKey('{$module_srl}','{$val->idx}');">{$lang->cmd_delete}</button>
|
||||
</td>
|
||||
</tr>
|
||||
<tr cond="$val->desc">
|
||||
<td colspan="7">{$val->desc}</td>
|
||||
</tr>
|
||||
</block>
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="x_clearfix">
|
||||
|
|
|
|||
|
|
@ -31,9 +31,13 @@ function Tree(url){
|
|||
// node
|
||||
var node = '';
|
||||
if(color && color !='transparent'){
|
||||
node = $('<li id="tree_'+node_srl+'"><span style="color:'+color+';">'+text+'</span></li>');
|
||||
node = $('<li id="tree_'+node_srl+'"></li>');
|
||||
var $span = $('<span></span>').css('color', color).text(text);
|
||||
node.append($span);
|
||||
}else{
|
||||
node = $('<li id="tree_'+node_srl+'"><span>'+text+'</span></li>');
|
||||
node = $('<li id="tree_'+node_srl+'"></li>');
|
||||
var $span = $('<span></span>').text(text);
|
||||
node.append($span);
|
||||
}
|
||||
|
||||
// button
|
||||
|
|
@ -171,10 +175,8 @@ function modifyNode(node,e){
|
|||
var $w = $('#__category_info');
|
||||
|
||||
clearValue();
|
||||
|
||||
// set value
|
||||
$w.find('input[name="category_srl"]').val(node);
|
||||
$w.find('input[name="parent_srl"]').val(0);
|
||||
|
||||
var module_srl = $w.find('input[name="module_srl"]').val();
|
||||
|
||||
|
|
@ -186,6 +188,7 @@ function modifyNode(node,e){
|
|||
return;
|
||||
}
|
||||
|
||||
$w.find('input[name="parent_srl"]').val(data.category_info.parent_srl);
|
||||
$w.find('input[name="category_title"]').val(data.category_info.title).trigger('reload-multilingual');
|
||||
$w.find('input[name="category_color"]').val(data.category_info.color).trigger('keyup');
|
||||
$w.find('textarea[name="category_description"]').val(data.category_info.description).trigger('reload-multilingual');
|
||||
|
|
|
|||
|
|
@ -45,8 +45,9 @@ class image_gallery extends EditorHandler
|
|||
$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;
|
||||
$color_preg = "/^([a-fA-F0-9]{6})/";
|
||||
$gallery_info->border_color = preg_replace($color_preg,"#$1",$xml_obj->attrs->border_color);
|
||||
$gallery_info->bg_color = preg_replace($color_preg,"#$1",$xml_obj->attrs->bg_color);
|
||||
$gallery_info->gallery_align = $xml_obj->attrs->gallery_align;
|
||||
|
||||
$images_list = $xml_obj->attrs->images_list;
|
||||
|
|
|
|||
Binary file not shown.
|
Before Width: | Height: | Size: 43 B |
|
|
@ -1,35 +1,3 @@
|
|||
@charset "utf-8";
|
||||
@import url(../../../../../modules/admin/tpl/css/admin.css);
|
||||
@import url(../../../../../common/css/bootstrap.min.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; }
|
||||
|
|
|
|||
|
|
@ -39,29 +39,13 @@
|
|||
<div class="x_control-group">
|
||||
<label for="" class="x_control-label">{$lang->gallery_border_color}</label>
|
||||
<div class="x_controls">
|
||||
<div class="editor_color_box">
|
||||
<script>
|
||||
printColor("border", "{$tpl_path}/images/blank.gif");
|
||||
</script>
|
||||
</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" value="000000" onkeyup="manual_select_color('border',this)"/></li>
|
||||
</ul>
|
||||
<input type="text" id="border_color_input" class="color-indicator" size="7" maxlength="6" value="#000000" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label for="" class="x_control-label">{$lang->gallery_bg_color}</label>
|
||||
<div class="x_controls">
|
||||
<div class="editor_color_box">
|
||||
<script>
|
||||
printColor("bg", "{$tpl_path}/images/blank.gif");
|
||||
</script>
|
||||
</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" value="FFFFFF" onkeyup="manual_select_color('bg',this)"/></li>
|
||||
</ul>
|
||||
<input type="text" id="bg_color_input" class="color-indicator" size="7" maxlength="6" value="#FFFFFF" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
|
|
@ -80,4 +64,5 @@
|
|||
</div>
|
||||
</form>
|
||||
</section>
|
||||
<!--%load_js_plugin("ui.colorpicker")-->
|
||||
|
||||
|
|
|
|||
|
|
@ -24,10 +24,8 @@ function getSlideShow() {
|
|||
get_by_id('border_thickness').value = thickness;
|
||||
|
||||
get_by_id('border_color_input').value = border_color;
|
||||
manual_select_color('border', get_by_id('border_color_input'));
|
||||
|
||||
get_by_id('bg_color_input').value = bg_color;
|
||||
manual_select_color("bg", get_by_id('bg_color_input'));
|
||||
|
||||
selected_images = $node.attr('images_list');
|
||||
}
|
||||
|
|
@ -118,43 +116,6 @@ function select_color(type, code) {
|
|||
get_by_id(type+"_color_input").value = code;
|
||||
}
|
||||
|
||||
/* 수동 색상 변경시 */
|
||||
function manual_select_color(type, obj) {
|
||||
if(obj.value.length!=6) return;
|
||||
code = obj.value;
|
||||
get_by_id(type+"_preview_color").style.backgroundColor = "#"+code;
|
||||
}
|
||||
|
||||
/* 색상표를 출력 */
|
||||
function printColor(type, blank_img_src) {
|
||||
var colorTable = new Array('22','44','66','88','AA','CC','EE');
|
||||
var html = "";
|
||||
|
||||
for(var i=0;i<8;i+=1) html += printColorBlock(type, i.toString(16)+i.toString(16)+i.toString(16)+i.toString(16)+i.toString(16)+i.toString(16), blank_img_src);
|
||||
|
||||
for(var i=0; i<colorTable.length; i+=3) {
|
||||
for(var j=0; j<colorTable.length; j+=2) {
|
||||
for(var k=0; k<colorTable.length; k++) {
|
||||
var code = colorTable[i] + colorTable[j] + colorTable[k];
|
||||
html += printColorBlock(type, code, blank_img_src);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for(var i=8;i<16;i+=1) html += printColorBlock(type, i.toString(16)+i.toString(16)+i.toString(16)+i.toString(16)+i.toString(16)+i.toString(16), blank_img_src);
|
||||
|
||||
document.write(html);
|
||||
}
|
||||
|
||||
/* 개별 색상 block 출력 함수 */
|
||||
function printColorBlock(type, code, blank_img_src) {
|
||||
if(type=="bg") {
|
||||
return "<div style=\"float:left;background-color:#"+code+"\"><img src=\""+blank_img_src+"\" class=\"color_icon\" onmouseover=\"this.className='color_icon_over'\" onmouseout=\"this.className='color_icon'\" onclick=\"select_color('"+type+"','"+code+"')\" alt=\"color\" \/><\/div>";
|
||||
} else {
|
||||
return "<div style=\"float:left;background-color:#"+code+"\"><img src=\""+blank_img_src+"\" class=\"color_icon\" onmouseover=\"this.className='color_icon_over'\" onmouseout=\"this.className='color_icon'\" onclick=\"select_color('"+type+"','"+code+"')\" alt=\"color\" \/><\/div>";
|
||||
}
|
||||
}
|
||||
|
||||
jQuery(function($){
|
||||
getSlideShow();
|
||||
});
|
||||
|
|
|
|||
|
|
@ -3,4 +3,4 @@
|
|||
* @brief Slideshow type image gallery plugin
|
||||
* @author NHN (developers@xpressengine.com)
|
||||
**/
|
||||
@charset "utf-8";@import "../../../../../modules/admin/tpl/css/admin.css";@import "../../../../../common/css/bootstrap.min.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}
|
||||
@charset "utf-8";@import "../../../../../modules/admin/tpl/css/admin.css";@import "../../../../../common/css/bootstrap.min.css";
|
||||
|
|
@ -1,10 +1,7 @@
|
|||
var selected_node=null;
|
||||
function getSlideShow(){var c,b,d="",e,a,f,g;if("undefined"!=typeof opener&&(c=opener.editorPrevNode,b=jQuery(c),b.is("img")&&(selected_node=c,d=b.width(),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="list"==c?1:0,get_by_id("gallery_align").selectedIndex="left"==e?1:"right"==e?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,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,-1!=d.indexOf(f)&&(g=!0),a=new Option(a.text,a.value,
|
||||
!1,g),c.options.add(a))}}}
|
||||
function insertSlideShow(){if("undefined"!=typeof opener){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,
|
||||
j=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",j),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="'+j+'" 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){6==b.value.length&&(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".split(" "),e="",a=0;8>a;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;16>a;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()});
|
||||
function getSlideShow(){var b,a,d="",c,e,f,g;if("undefined"!=typeof opener&&(b=opener.editorPrevNode,a=jQuery(b),a.is("img")&&(selected_node=b,d=a.width(),b=a.attr("gallery_style"),c=a.attr("gallery_align")||"center",e=a.attr("border_color"),f=a.attr("bg_color"),g=a.attr("border_thickness")||1,get_by_id("width").value=d,get_by_id("gallery_style").selectedIndex="list"==b?1:0,get_by_id("gallery_align").selectedIndex="left"==c?1:"right"==c?2:0,get_by_id("border_thickness").value=g,get_by_id("border_color_input").value=
|
||||
e,get_by_id("bg_color_input").value=f,d=a.attr("images_list")),a=get_by_id("fo").editor_sequence.value,a=opener.get_by_id("uploaded_file_list_"+a))){b=get_by_id("image_list");for(c=0;c<a.length;c++){e=a.options[c];f=e.value;if(!f)break;f=opener.uploadedFiles[f].download_url.replace(request_uri,"");/(jpg|jpeg|gif|png)$/i.test(f)&&(g=!1,-1!=d.indexOf(f)&&(g=!0),e=new Option(e.text,e.value,!1,g),b.options.add(e))}}}
|
||||
function insertSlideShow(){if("undefined"!=typeof opener){for(var b=[],a=get_by_id("image_list"),d=0;d<a.length;d++){var c=a.options[d];c.selected&&(c=opener.uploadedFiles[c.value].download_url.replace(request_uri,""),b[b.length]=c)}if(b.length){for(var a=get_by_id("width").value,c=get_by_id("gallery_style").options[get_by_id("gallery_style").selectedIndex].value,e=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,
|
||||
j=get_by_id("bg_color_input").value,h="",d=0;d<b.length;d++)h+=b[d].trim()+" ";selected_node?(selected_node.setAttribute("width",a),selected_node.setAttribute("gallery_style",c),selected_node.setAttribute("align",e),selected_node.setAttribute("gallery_align",e),selected_node.setAttribute("border_thickness",f),selected_node.setAttribute("border_color",g),selected_node.setAttribute("bg_color",j),selected_node.setAttribute("images_list",h),selected_node.style.width=a+"px"):(b='<img src="../../../../common/img/blank.gif" editor_component="image_gallery" width="'+
|
||||
a+'" gallery_style="'+c+'" align="'+e+'" gallery_align="'+e+'" border_thickness="'+f+'" border_color="'+g+'" bg_color="'+j+'" style="width:'+a+'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,b));opener.editorFocus(opener.editorPrevSrl)}window.close()}}
|
||||
function select_color(b,a){get_by_id(b+"_preview_color").style.backgroundColor="#"+a;get_by_id(b+"_color_input").value=a}jQuery(function(){getSlideShow()});
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ gallery.cast('SET_STYLE', [{$gallery_info->srl}, 'slide']);
|
|||
<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 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 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>
|
||||
|
|
|
|||
|
|
@ -19,18 +19,19 @@
|
|||
<label for="" class="x_control-label">{$lang->poll_stop_date}</label>
|
||||
<div class="x_controls">
|
||||
<input type="hidden" name="stop_date" id="stop_date" value="{date('Ymd',time()+60*60*24*30)}" />
|
||||
<input type="date" class="inputDate" value="{date('Y-m-d',time()+60*60*24*30)}" readonly="readonly" />
|
||||
<input type="date" class="inputDate" value="{date('Y-m-d',time()+60*60*24*30)}" />
|
||||
<script>
|
||||
(function($){
|
||||
$(function(){
|
||||
var option = {
|
||||
changeMonth:true,
|
||||
changeYear:true,
|
||||
gotoCurrent: false
|
||||
changeMonth:true
|
||||
,changeYear:true
|
||||
,gotoCurrent: false
|
||||
,yearRange:'-100:+10'
|
||||
, onSelect:function(){
|
||||
$(this).prev('input[type="hidden"]').val(this.value.replace(/-/g,""));
|
||||
}
|
||||
,minDate: new Date("{date('Y-m-d',time()+60*60*24*30)}")
|
||||
};
|
||||
$.extend(option,$.datepicker.regional['{$lang_type}']);
|
||||
$(".inputDate").datepicker(option);
|
||||
|
|
|
|||
|
|
@ -1,81 +1,80 @@
|
|||
@charset "utf-8";
|
||||
/* NHN (developers@xpressengine.com) */
|
||||
@charset "utf-8";
|
||||
|
||||
/* -- 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;}
|
||||
.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;}
|
||||
.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;}
|
||||
.buttonGray.strong *{font-weight:bold!important}
|
||||
|
||||
/* Icon Add */
|
||||
.buttonGray .icon { position:relative; margin-right:5px; vertical-align:middle;}
|
||||
.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 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;}
|
||||
.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.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 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.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.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;}
|
||||
.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 *:focus{color:#690}
|
||||
.buttonDrEditor.green,
|
||||
.buttonDrEditor.green a,
|
||||
.buttonDrEditor.green button,
|
||||
.buttonDrEditor.green input { background-image:url(../img/buttonGreen.gif); color:#fff;}
|
||||
.buttonDrEditor.green input{background-image:url(../img/buttonGreen.gif);color:#fff}
|
||||
.buttonDrEditor.green *:hover,
|
||||
.buttonDrEditor.green *:active,
|
||||
.buttonDrEditor.green *:focus{ color:#ff0;}
|
||||
.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 input{background-image:url(../img/buttonBlack.gif);color:#fff}
|
||||
.buttonDrEditor.black *:hover,
|
||||
.buttonDrEditor.black *:active,
|
||||
.buttonDrEditor.black *:focus{ color:#ff0;}
|
||||
.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 input{background-image:url(../img/buttonRed.gif);color:#fff}
|
||||
.buttonDrEditor.red *:hover,
|
||||
.buttonDrEditor.red *:active,
|
||||
.buttonDrEditor.red *:focus{ color:#ff0;}
|
||||
.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 input{background-image:url(../img/buttonBlue.gif);color:#fff}
|
||||
.buttonDrEditor.blue *:hover,
|
||||
.buttonDrEditor.blue *:active,
|
||||
.buttonDrEditor.blue *:focus{ color:#ff0;}
|
||||
.buttonDrEditor.blue *:focus{color:#ff0}
|
||||
|
||||
/* Button Text Strong */
|
||||
.buttonDrEditor.strong * { font-weight:bold !important;}
|
||||
.buttonDrEditor.strong *{font-weight:bold!important}
|
||||
|
|
|
|||
|
|
@ -1,348 +1,350 @@
|
|||
@charset "utf-8";
|
||||
/* NHN (developers@xpressengine.com) */
|
||||
@charset "utf-8";
|
||||
|
||||
/* 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;}
|
||||
.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;}
|
||||
.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 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.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');}
|
||||
.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;}
|
||||
.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;}
|
||||
.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);}
|
||||
.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;}
|
||||
.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;}
|
||||
.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;}
|
||||
.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;}
|
||||
.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;}
|
||||
.mArea .h4{font-size:16px!important;margin:0 0 10px 0!important;border:0!important;padding:0!important}
|
||||
.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 .iText{ 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 .iTextArea{ 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;}
|
||||
.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 .iText{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 .iTextArea{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 .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;}
|
||||
.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;}
|
||||
.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 ul{margin:0 0 5px 0;padding:0;list-style:none}
|
||||
.wArea.hx li{display:inline!important;font-weight:bold!important;color:#333!important;border:0;padding:0}
|
||||
.wArea.hx li label{margin:0 30px 0 0;display:inline}
|
||||
.wArea.hx .inputTitle{font-weight:bold!important}
|
||||
.wArea.hx li.h3,
|
||||
.wArea.hx .inputTitle.h3{ font-size:18px !important; height:28px;}
|
||||
.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 .inputTitle.h4{font-size:16px!important;height:26px}
|
||||
.wArea.hx li.h5,
|
||||
.wArea.hx .inputTitle.h5{ font-size:13px !important; height:23px;}
|
||||
.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{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 .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;}
|
||||
.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;}
|
||||
.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{margin:1em 0}
|
||||
.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;margin:0}
|
||||
.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 dl{margin:1em 0}
|
||||
.wArea.img .align{display:none}
|
||||
.wArea.img .align dt{display:inline;font-weight:bold}
|
||||
.wArea.img .align dd{display:inline;margin:0}
|
||||
.wArea.img .align dd label{display:inline;margin:0 10px 0 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;}
|
||||
.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 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 .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;}
|
||||
.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{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;}
|
||||
.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{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{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.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;}
|
||||
.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{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 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;width:auto;margin:0}
|
||||
.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 .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{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 .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 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 }
|
||||
.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;}
|
||||
.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,3 @@
|
|||
@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;}
|
||||
html,body{height:100%;background-color:transparent}
|
||||
body{margin:1em;color:#000;font-size:12px;line-height:1.5}
|
||||
|
|
@ -1,52 +1,51 @@
|
|||
@charset "utf-8";
|
||||
/* NHN (developers@xpressengine.com) */
|
||||
@charset "utf-8";
|
||||
|
||||
/* 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;}
|
||||
.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{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;}
|
||||
.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{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.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;}
|
||||
.textyleContent .toc li a:focus{text-decoration:underline}
|
||||
|
||||
/* Object */
|
||||
.textyleContent object,
|
||||
.textyleContent embed{ margin:1em 0;}
|
||||
.textyleContent embed{margin:1em 0}
|
||||
|
||||
/* Horizontal Rule */
|
||||
.textyleContent hr{ display:block; position:static; border-bottom:0; height:1px; overflow:hidden; color:#e2e2e2; clear:both;}
|
||||
.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; }
|
||||
.textyleContent blockquote{margin:1em 0!important;padding:1em 40px!important;border:0!important;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;}
|
||||
.textyleContent cite{display:block;margin:1em 0}
|
||||
|
||||
/* Link */
|
||||
.textyleContent .xe_dr_link p strong{ display:block;}
|
||||
.textyleContent .xe_dr_link p strong{display:block}
|
||||
|
||||
/* P */
|
||||
.xe_content p,
|
||||
.textyleContent p{ margin:1em 0 !important;}
|
||||
.textyleContent p{margin:1em 0!important}
|
||||
|
|
|
|||
|
|
@ -48,9 +48,9 @@
|
|||
<fieldset>
|
||||
<legend>{$lang->edit->title}</legend>
|
||||
<ul>
|
||||
<li class="h3"><input name="hx" type="radio" value="h3" id="h3" class="inputRadio" checked="checked" /><label for="h3">{$lang->edit->title1}</label></li>
|
||||
<li class="h4"><input name="hx" type="radio" value="h4" id="h4" class="inputRadio" /><label for="h4">{$lang->edit->title2}</label></li>
|
||||
<li class="h5"><input name="hx" type="radio" value="h5" id="h5" class="inputRadio" /><label for="h5">{$lang->edit->title3}</label></li>
|
||||
<li class="h3"><input name="hx" type="radio" value="h3" id="h3" class="inputRadio" checked="checked" /> <label for="h3">{$lang->edit->title1}</label></li>
|
||||
<li class="h4"><input name="hx" type="radio" value="h4" id="h4" class="inputRadio" /> <label for="h4">{$lang->edit->title2}</label></li>
|
||||
<li class="h5"><input name="hx" type="radio" value="h5" id="h5" class="inputRadio" /> <label for="h5">{$lang->edit->title3}</label></li>
|
||||
</ul>
|
||||
<input name="" type="text" class="inputTitle h3" value="{$lang->edit->insert_dr_title}" title="{$lang->edit->insert_dr_title}" />
|
||||
<!-- class="inputTitle h3" | class="inputTitle h4" | class="inputTitle h5" -->
|
||||
|
|
@ -355,9 +355,9 @@
|
|||
<dl>
|
||||
<dt>{$lang->edit->image_align} :</dt>
|
||||
<dd>
|
||||
<input type="radio" name="align" id="img_align_left" value="left" /><label for="img_align_left">{$lang->edit->align_left}</label>
|
||||
<input type="radio" name="align" id="img_align_center" value="center" /><label for="img_align_center">{$lang->edit->align_center}</label>
|
||||
<input type="radio" name="align" id="img_align_right" value="right" /><label for="img_align_right">{$lang->edit->align_right}</label>
|
||||
<input type="radio" name="align" id="img_align_left" value="left" /> <label for="img_align_left">{$lang->edit->align_left}</label>
|
||||
<input type="radio" name="align" id="img_align_center" value="center" /> <label for="img_align_center">{$lang->edit->align_center}</label>
|
||||
<input type="radio" name="align" id="img_align_right" value="right" /> <label for="img_align_right">{$lang->edit->align_right}</label>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
|
@ -555,7 +555,7 @@
|
|||
<dt>{$lang->edit->help_first_dt_5}</dt>
|
||||
<dd>{$lang->edit->help_first_dd_5}</dd>
|
||||
</dl>
|
||||
<p class="drEditorBugReport"><a href="http://xe.xpressengine.net/?mid=issuetracker&act=dispIssuetrackerViewIssue" target="_blank" title="{$lang->edit->cmd_new_window}">{$lang->edit->help_bug_report}</a></p>
|
||||
<p class="drEditorBugReport"><a href="http://code.google.com/p/xe-core/issues/entry" target="_blank" title="{$lang->edit->cmd_new_window}">{$lang->edit->help_bug_report}</a></p>
|
||||
<span class="cap capTL"></span>
|
||||
<span class="cap capTR"></span>
|
||||
<span class="cap capBL"></span>
|
||||
|
|
|
|||
|
|
@ -1277,9 +1277,9 @@ var ImageWriter = xe.createPlugin('ImageWriter', {
|
|||
}
|
||||
|
||||
_resize.find('p.resizeError').hide();
|
||||
var _src = _image.attr('rawsrc') || _image.attr('src');
|
||||
var _file_srl = _image.attr('filesrl');
|
||||
|
||||
$.exec_json('file.procFileImageResize',{width:w, source_src:decodeURI(_src)},function(data){
|
||||
$.exec_json('file.procFileImageResize',{width:w, file_srl:_file_srl},function(data){
|
||||
if(data.error != 0) return;
|
||||
|
||||
_image.attr({
|
||||
|
|
|
|||
|
|
@ -50,60 +50,5 @@
|
|||
<title xml:lang="zh-TW">白色 WYSIWYG(預設)</title>
|
||||
<title xml:lang="tr">Beyaz WYSIWYG(varsayılan)</title>
|
||||
</color>
|
||||
<color name="black">
|
||||
<title xml:lang="ko">검은색 위지윅</title>
|
||||
<title xml:lang="jp">黒 WYSIWYG</title>
|
||||
<title xml:lang="en">Black WYSIWYG</title>
|
||||
<title xml:lang="vi">Black WYSIWYG</title>
|
||||
<title xml:lang="ru">Черного WYSIWYG</title>
|
||||
<title xml:lang="es">Negro WYSIWYG</title>
|
||||
<title xml:lang="zh-CN">黑色 WYSIWYG</title>
|
||||
<title xml:lang="zh-TW">黑色 WYSIWYG</title>
|
||||
<title xml:lang="tr">Siyah WYSIWYG</title>
|
||||
</color>
|
||||
<color name="white_text_usehtml">
|
||||
<title xml:lang="ko">하얀색 텍스트(HTML 사용)</title>
|
||||
<title xml:lang="jp">白色テキスト(HTMLタグを使う)</title>
|
||||
<title xml:lang="en">White Text(Use HTML)</title>
|
||||
<title xml:lang="vi">White Text(Sử dụng HTML)</title>
|
||||
<title xml:lang="ru">White Text(Use HTML)</title>
|
||||
<title xml:lang="es">Editor de texto en blanco (Uso de HTML)</title>
|
||||
<title xml:lang="zh-CN">白色文本编辑器(使用HTML)</title>
|
||||
<title xml:lang="zh-TW">白色文字編輯器(使用HTML)</title>
|
||||
<title xml:lang="tr">Beyaz Metin Editörü(HTML kullan)</title>
|
||||
</color>
|
||||
<color name="black_text_usehtml">
|
||||
<title xml:lang="ko">검은색 텍스트(HTML 사용)</title>
|
||||
<title xml:lang="jp">黒色テキスト(HTMLタグを使う)</title>
|
||||
<title xml:lang="en">Black Text(Use HTML)</title>
|
||||
<title xml:lang="vi">Black Text(Sử dụng HTML)</title>
|
||||
<title xml:lang="ru">Black Text(Use HTML)</title>
|
||||
<title xml:lang="es">Editor de texto negro (Uso de HTML)</title>
|
||||
<title xml:lang="zh-CN">黑色文本编辑器(使用HTML)</title>
|
||||
<title xml:lang="zh-TW">黑色文字編輯器(使用HTML)</title>
|
||||
<title xml:lang="tr">Siyah Metin Alanı(HTML kullan)</title>
|
||||
</color>
|
||||
<color name="white_text_nohtml">
|
||||
<title xml:lang="ko">하얀색 텍스트(HTML 사용 안함)</title>
|
||||
<title xml:lang="jp">白色テキスト(HTMLタグを使わない)</title>
|
||||
<title xml:lang="en">White Text(No HTML)</title>
|
||||
<title xml:lang="vi">White Text(Không sử dụng HTML)</title>
|
||||
<title xml:lang="ru">White Text(No HTML)</title>
|
||||
<title xml:lang="es">Editor de texto en blanco (no HTML)</title>
|
||||
<title xml:lang="zh-CN">白色文本编辑器(不使用HTML)</title>
|
||||
<title xml:lang="zh-TW">白色文字編輯器(不使用HTML)</title>
|
||||
<title xml:lang="tr">Beyaz Metin Editörü(HTML yok)</title>
|
||||
</color>
|
||||
<color name="black_text_nohtml">
|
||||
<title xml:lang="ko">검은색 텍스트(HTML 사용 안함)</title>
|
||||
<title xml:lang="jp">黒色テキスト(HTMLタグを使わない)</title>
|
||||
<title xml:lang="en">Black Text(No HTML)</title>
|
||||
<title xml:lang="vi">Black Text(Không sử dụng HTML)</title>
|
||||
<title xml:lang="ru">Black Text(No HTML)</title>
|
||||
<title xml:lang="es">Editor de texto negro (no HTML)</title>
|
||||
<title xml:lang="zh-CN">黑色文本编辑器(不使用HTML)</title>
|
||||
<title xml:lang="zh-TW">黑色文字編輯器(不使用HTML)</title>
|
||||
<title xml:lang="tr">Siyah Metin Alanı(HTML yok)</title>
|
||||
</color>
|
||||
</colorset>
|
||||
</skin>
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@
|
|||
.xpress-editor .input_control span{display:block;zoom:1;height:21px;visibility:hidden;overflow:visible;font-size:0;line-height:0;white-space:nowrap;color:#fff}
|
||||
.xpress-editor .input_auto{position:relative;z-index:2;zoom:1;white-space:nowrap;display:block;height:0;border-top:1px solid #ccc;margin:0 0 24px 0;*margin:0}
|
||||
.xpress-editor .input_auto input{margin:0 4px 0 0 !important;padding:0;width:13px;height:13px;vertical-align:middle}
|
||||
.xpress-editor .input_auto label{font-size:11px;color:#666;padding:0 5px;line-height:25px;font-weight:normal !important}
|
||||
.xpress-editor .input_auto label{position:absolute;font-size:11px;color:#666;padding:0 5px !important;line-height:25px;font-weight:normal !important}
|
||||
.xpress-editor.black .input_control {background:#111 url(../img/btn_expand.black.gif) no-repeat center center}
|
||||
.xpress-editor.black .input_control span{border-top:1px solid #333; color:#000}
|
||||
.xpress-editor .tool{position:relative;overflow:visible;padding:5px 10px 6px 10px;*padding:5px 10px 8px 10px;z-index:40;clear:both;background:#f8f8f8 url(../img/bg_tool.gif) repeat-x left bottom;border:0;*zoom:1}
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -16,7 +16,7 @@
|
|||
|
||||
<div class="xeTextEditor {$editor_class}">
|
||||
<input type="hidden" id="htm_{$editor_sequence}" value="<!--@if($colorset == "white_text_nohtml" || $colorset == "black_text_nohtml")-->n<!--@end--><!--@if($colorset == "white_texteditor" || $colorset == "white_texteditor")-->br<!--@end-->" />
|
||||
<textarea id="editor_{$editor_sequence}" style="height:{$editor_height}px;" rows="8" cols="42" class="iTextArea"></textarea>
|
||||
<textarea id="editor_{$editor_sequence}" style="height:{$editor_height}px;font-family:{$content_font};" rows="8" cols="42" class="iTextArea"></textarea>
|
||||
</div>
|
||||
<script>//<![CDATA[
|
||||
editorStartTextarea({$editor_sequence}, "{$editor_content_key_name}", "{$editor_primary_key_name}");
|
||||
|
|
@ -62,7 +62,7 @@
|
|||
<select class="xpress_xeditor_ui_fontName_select" disabled="disabled">
|
||||
<option value="">{$lang->edit->fontname}</option>
|
||||
<!--@foreach($lang->edit->fontlist as $key=>$obj)-->
|
||||
<option value="{$key}" style="font-family:{$obj}">{$obj}</option>
|
||||
<option value="{htmlspecialchars($obj)}" style="font-family:{$obj}">{$obj}</option>
|
||||
<!--@end-->
|
||||
</select>
|
||||
</li>
|
||||
|
|
|
|||
|
|
@ -5124,7 +5124,8 @@ var
|
|||
|
||||
var
|
||||
allow_tags = 'a,abbr,acronym,address,area,blockquote,br,caption,center,cite,code,col,colgroup,dd,del,dfn,div,dl,dt,em,embed,h1,h2,h3,h4,h5,h6,hr,img,ins,kbd,li,map,object,ol,p,param,pre,q,samp,span,strong,sub,sup,table,tbody,td,tfoot,th,thead,tr,tt,u,ul,var,iframe,object,param,style'.split(','),
|
||||
lonely_tags = 'area,br,col,embed,hr,img,input,param'.split(',');
|
||||
no_closing_tags = 'area,br,col,embed,hr,img,input,param,base,meta,link,basefont,isindex'.split(',');
|
||||
|
||||
|
||||
var
|
||||
replace_tags = {
|
||||
|
|
@ -5205,10 +5206,10 @@ xe.XE_XHTMLFormatter = $.Class({
|
|||
attrs = $.trim(attrs || '');
|
||||
|
||||
if (!closing) {
|
||||
if ($.inArray(tag,lonely_tags) >= 0) {
|
||||
if ($.inArray(tag,no_closing_tags) >= 0) {
|
||||
var len = attrs.length;
|
||||
if (tag == 'br') attrs = '';
|
||||
if (!attrs || attrs.substring(len-1,len) != '/') attrs += '/';
|
||||
if (!attrs || attrs.substring(len-1,len) != '/') attrs += ' /';
|
||||
|
||||
return '<'+tag+' '+$.trim(attrs)+'>';
|
||||
} else {
|
||||
|
|
@ -5218,7 +5219,7 @@ xe.XE_XHTMLFormatter = $.Class({
|
|||
var tags = [], t = '';
|
||||
|
||||
// if the tag does not require a closing tag, simply remove the closing tag
|
||||
if ($.inArray(tag,lonely_tags) >= 0) {
|
||||
if ($.inArray(tag,no_closing_tags) >= 0) {
|
||||
return '';
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,2 +1,2 @@
|
|||
function editorStartTextarea(a,b,e){var c=xGetElementById("editor_"+a),d=xGetElementById("htm_"+a).value;c.form.setAttribute("editor_sequence",a);c.style.width="100%";editorRelKeys[a]=[];editorRelKeys[a].primary=c.form[e];editorRelKeys[a].content=c.form[b];editorRelKeys[a].func=editorGetContentTextarea;a=c.form[b].value;d&&(a=a.replace(/<br([^>]*)>/ig,"\n"),"br"!=d&&(a=a.replace(/</g,"<"),a=a.replace(/>/g,">"),a=a.replace(/"/g,'"'),a=a.replace(/&/g,"&")));c.value=a}
|
||||
function editorGetContentTextarea(a){var b=xGetElementById("editor_"+a),a=xGetElementById("htm_"+a).value,b=b.value.trim();a&&("br"!=a&&(b=b.replace(/&/g,"&"),b=b.replace(/</g,"<"),b=b.replace(/>/g,">"),b=b.replace(/\"/g,""")),b=b.replace(/(\r\n|\n)/g,"<br />"));return b};
|
||||
function editorGetContentTextarea(a){var b=xGetElementById("editor_"+a);a=xGetElementById("htm_"+a).value;b=b.value.trim();a&&("br"!=a&&(b=b.replace(/&/g,"&"),b=b.replace(/</g,"<"),b=b.replace(/>/g,">"),b=b.replace(/\"/g,""")),b=b.replace(/(\r\n|\n)/g,"<br />"));return b};
|
||||
|
|
|
|||
|
|
@ -3192,7 +3192,6 @@ xe.XE_EditingAreaVerticalResizer = $.Class({
|
|||
|
||||
_assignHTMLObjects : function(oAppContainer){
|
||||
oAppContainer = $.$(oAppContainer) || document;
|
||||
|
||||
this.oResizeGrip = $(".xpress_xeditor_editingArea_verticalResizer", oAppContainer).get(0);
|
||||
},
|
||||
|
||||
|
|
@ -5083,7 +5082,10 @@ xe.XE_Editorresize = $.Class({
|
|||
}
|
||||
},
|
||||
$ON_XE_EDITOR_RESIZE : function(){
|
||||
this.inputArea.style.height = this.oIframe.style.height = this.oIframeBody[0].scrollHeight + 'px';
|
||||
var t = this;
|
||||
setTimeout(function(){
|
||||
t.inputArea.style.height = t.oIframe.style.height = t.oIframeBody[0].scrollHeight + 'px';
|
||||
}, 0);
|
||||
}
|
||||
});
|
||||
//}
|
||||
|
|
@ -5122,7 +5124,8 @@ var
|
|||
|
||||
var
|
||||
allow_tags = 'a,abbr,acronym,address,area,blockquote,br,caption,center,cite,code,col,colgroup,dd,del,dfn,div,dl,dt,em,embed,h1,h2,h3,h4,h5,h6,hr,img,ins,kbd,li,map,object,ol,p,param,pre,q,samp,span,strong,sub,sup,table,tbody,td,tfoot,th,thead,tr,tt,u,ul,var,iframe,object,param,style'.split(','),
|
||||
lonely_tags = 'area,br,col,embed,hr,img,input,param'.split(',');
|
||||
no_closing_tags = 'base,meta,link,hr,br,basefont,param,img,area,input,isindex,col'.split(',');
|
||||
|
||||
|
||||
var
|
||||
replace_tags = {
|
||||
|
|
@ -5203,10 +5206,10 @@ xe.XE_XHTMLFormatter = $.Class({
|
|||
attrs = $.trim(attrs || '');
|
||||
|
||||
if (!closing) {
|
||||
if ($.inArray(tag,lonely_tags) >= 0) {
|
||||
if ($.inArray(tag,no_closing_tags) >= 0) {
|
||||
var len = attrs.length;
|
||||
if (tag == 'br') attrs = '';
|
||||
if (!attrs || attrs.substring(len-1,len) != '/') attrs += '/';
|
||||
if (!attrs || attrs.substring(len-1,len) != '/') attrs += ' /';
|
||||
|
||||
return '<'+tag+' '+$.trim(attrs)+'>';
|
||||
} else {
|
||||
|
|
@ -5216,7 +5219,7 @@ xe.XE_XHTMLFormatter = $.Class({
|
|||
var tags = [], t = '';
|
||||
|
||||
// if the tag does not require a closing tag, simply remove the closing tag
|
||||
if ($.inArray(tag,lonely_tags) >= 0) {
|
||||
if ($.inArray(tag,no_closing_tags) >= 0) {
|
||||
return '';
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,137 +1,136 @@
|
|||
(function(c){function o(a){function b(a){return function(){return a.apply(this.$this,arguments)}}a=a.prototype;this.prototype.$super={};for(var d in a)a.propertyIsEnumerable(d)&&("undefined"==typeof this.prototype[d]&&(this.prototype[d]=a[d]),this.prototype.$super[d]=c.isFunction(a[d])?b(a[d]):a[d]);return this}c.extend({Class:function(a){function b(){"undefined"!=typeof this.$super&&(this.$super.$this=this);c.isFunction(this.$init)&&this.$init.apply(this,arguments)}b.prototype=a;b.constructor=b;
|
||||
b.extend=o;return b},$:function(a){return"string"==typeof a?"<"==a.substring(0,1)?c(a).get(0):c("#"+a).get(0):a},fnBind:function(a,b){var d=c.makeArray(arguments);d.shift();d.shift();return function(){var f=d.concat(c.makeArray(arguments));return a.apply(b,f)}}});c.browser.nVersion=parseFloat(c.browser.version);"undefined"==typeof window.xe&&(window.xe={});xe.XpressCore=c.Class({name:"XpressCore",$init:function(a){a=!a?{}:c.Class({}).extend({oDebugger:null}).extend(a);if(a.oDebugger){this.oDebugger=
|
||||
a.oDebugger;this.oDebugger.oApp=this}this.commandQueue=[];this.oCommandMap={};this.oDisabledCommand={};this.aPlugins=[];this.appStatus=xe.APP_STATUS.NOT_READY;this.registerPlugin(this)},exec:function(a,b,d){if(this.appStatus==xe.APP_STATUS.NOT_READY){this.commandQueue[this.commandQueue.length]={msg:a,args:b,event:d};return true}this.exec=this._exec;this.exec(a,b,d)},delayedExec:function(a,b,d,f){a=c.fnBind(this.exec,this,a,b,f);setTimeout(a,d)},_exec:function(a,b,d){return(this._exec=this.oDebugger?
|
||||
this._execWithDebugger:this._execWithoutDebugger).call(this,a,b,d)},_execWithDebugger:function(a,b,d){this.oDebugger.log_MessageStart(a,b);d=this._doExec(a,b,d);this.oDebugger.log_MessageEnd(a,b);return d},_execWithoutDebugger:function(a,b,d){return this._doExec(a,b,d)},_doExec:function(a,b,d){var f=false;if(!this.oDisabledCommand[a]){var c=[];if(b&&b.length)for(var f=b.length,g=0;g<f;g++)c[g]=b[g];d&&(c[c.length]=d);(f=this._execMsgStep("BEFORE",a,c))&&(f=this._execMsgStep("ON",a,c));f&&(f=this._execMsgStep("AFTER",
|
||||
a,c))}return f},registerPlugin:function(a){if(!a)throw"An error occured in registerPlugin(): invalid plug-in";a.nIdx=this.aPlugins.length;a.oApp=this;this.aPlugins[a.nIdx]=a;if(a.status!=xe.PLUGIN_STATUS.NOT_READY)a.status=xe.PLUGIN_STATUS.READY;this.exec("MSG_PLUGIN_REGISTERED",[a]);return a.nIdx},disableCommand:function(a,b){this.oDisabledCommand[a]=b},registerBrowserEvent:function(a,b,d,f,e){if(a){f=f||[];d=e?c.fnBind(this.delayedExec,this,d,f,e):c.fnBind(this.exec,this,d,f);c(a).bind(b,d)}},run:function(){this._changeAppStatus(xe.APP_STATUS.WAITING_FOR_PLUGINS_READY);
|
||||
(function(c){function p(a){function b(a){return function(){return a.apply(this.$this,arguments)}}a=a.prototype;this.prototype.$super={};for(var d in a)a.propertyIsEnumerable(d)&&("undefined"==typeof this.prototype[d]&&(this.prototype[d]=a[d]),this.prototype.$super[d]=c.isFunction(a[d])?b(a[d]):a[d]);return this}c.extend({Class:function(a){function b(){"undefined"!=typeof this.$super&&(this.$super.$this=this);c.isFunction(this.$init)&&this.$init.apply(this,arguments)}b.prototype=a;b.constructor=b;
|
||||
b.extend=p;return b},$:function(a){return"string"==typeof a?"<"==a.substring(0,1)?c(a).get(0):c("#"+a).get(0):a},fnBind:function(a,b){var d=c.makeArray(arguments);d.shift();d.shift();return function(){var f=d.concat(c.makeArray(arguments));return a.apply(b,f)}}});c.browser.nVersion=parseFloat(c.browser.version);"undefined"==typeof window.xe&&(window.xe={});xe.XpressCore=c.Class({name:"XpressCore",$init:function(a){a=!a?{}:c.Class({}).extend({oDebugger:null}).extend(a);a.oDebugger&&(this.oDebugger=
|
||||
a.oDebugger,this.oDebugger.oApp=this);this.commandQueue=[];this.oCommandMap={};this.oDisabledCommand={};this.aPlugins=[];this.appStatus=xe.APP_STATUS.NOT_READY;this.registerPlugin(this)},exec:function(a,b,d){if(this.appStatus==xe.APP_STATUS.NOT_READY)return this.commandQueue[this.commandQueue.length]={msg:a,args:b,event:d},!0;this.exec=this._exec;this.exec(a,b,d)},delayedExec:function(a,b,d,f){a=c.fnBind(this.exec,this,a,b,f);setTimeout(a,d)},_exec:function(a,b,d){return(this._exec=this.oDebugger?
|
||||
this._execWithDebugger:this._execWithoutDebugger).call(this,a,b,d)},_execWithDebugger:function(a,b,d){this.oDebugger.log_MessageStart(a,b);d=this._doExec(a,b,d);this.oDebugger.log_MessageEnd(a,b);return d},_execWithoutDebugger:function(a,b,d){return this._doExec(a,b,d)},_doExec:function(a,b,d){var f=!1;if(!this.oDisabledCommand[a]){var c=[];if(b&&b.length)for(var f=b.length,g=0;g<f;g++)c[g]=b[g];d&&(c[c.length]=d);(f=this._execMsgStep("BEFORE",a,c))&&(f=this._execMsgStep("ON",a,c));f&&(f=this._execMsgStep("AFTER",
|
||||
a,c))}return f},registerPlugin:function(a){if(!a)throw"An error occured in registerPlugin(): invalid plug-in";a.nIdx=this.aPlugins.length;a.oApp=this;this.aPlugins[a.nIdx]=a;a.status!=xe.PLUGIN_STATUS.NOT_READY&&(a.status=xe.PLUGIN_STATUS.READY);this.exec("MSG_PLUGIN_REGISTERED",[a]);return a.nIdx},disableCommand:function(a,b){this.oDisabledCommand[a]=b},registerBrowserEvent:function(a,b,d,f,e){a&&(f=f||[],d=e?c.fnBind(this.delayedExec,this,d,f,e):c.fnBind(this.exec,this,d,f),c(a).bind(b,d))},run:function(){this._changeAppStatus(xe.APP_STATUS.WAITING_FOR_PLUGINS_READY);
|
||||
var a=this.commandQueue.length;for(i=0;i<a;i++){var b=this.commandQueue[i];this.exec(b.msg,b.args,b.event)}this._waitForPluginReady()},createCommandMap:function(a){this.oCommandMap[a]=[];for(var b=this.aPlugins.length,d=0;d<b;d++)this._doAddToCommandMap(a,this.aPlugins[d])},addToCommandMap:function(a,b){this.oCommandMap[a]&&this._addToCommandMap(a,b)},_changeAppStatus:function(a){this.appStatus=a;this.appStatus==xe.APP_STATUS.READY&&this.exec("MSG_APP_READY")},_execMsgStep:function(a,b,d){return(this._execMsgStep=
|
||||
this.oDebugger?this._execMsgStepWithDebugger:this._execMsgStepWithoutDebugger).call(this,a,b,d)},_execMsgStepWithDebugger:function(a,b,d){this.oDebugger.log_MessageStepStart(a,b,d);var f=this._execMsgHandler("$"+a+"_"+b,d);this.oDebugger.log_MessageStepEnd(a,b,d);return f},_execMsgStepWithoutDebugger:function(a,b,d){return this._execMsgHandler("$"+a+"_"+b,d)},_execMsgHandler:function(a,b){this.oCommandMap[a]||this.createCommandMap(a);var d=this.oCommandMap[a],f=d.length;if(f==0)return true;var c,
|
||||
g=true;if(a.match(/^\$(BEFORE|ON|AFTER)_MSG_APP_READY$/))for(var h=0;h<f;h++){c=this._execHandler(d[h],a,b);if(c===false){g=false;break}}else for(h=0;h<f;h++)if(typeof d[h].$PRECONDITION!="function"||this._execHandler(d[h],"$PRECONDITION",[a,b])){c=this._execHandler(d[h],a,b);if(c===false){g=false;break}}return g},_execHandler:function(a,b,d){return(this._execHandler=this.oDebugger?this._execHandlerWithDebugger:this._execHandlerWithoutDebugger).call(this,a,b,d)},_execHandlerWithDebugger:function(a,
|
||||
b,d){this.oDebugger.log_CallHandlerStart(a,b,d);var f=a[b].apply(a,d);this.oDebugger.log_CallHandlerEnd(a,b,d);return f},_execHandlerWithoutDebugger:function(a,b,d){return a[b].apply(a,d)},_doAddToCommandMap:function(a,b){typeof b[a]=="function"&&(this.oCommandMap[a][this.oCommandMap[a].length]=b)},_waitForPluginReady:function(){for(var a=true,b=0;b<this.aPlugins.length;b++)if(this.aPlugins[b].status==xe.PLUGIN_STATUS.NOT_READY){a=false;break}a?this._changeAppStatus(xe.APP_STATUS.READY):setTimeout(c.fnBind(this._waitForPluginReady,
|
||||
this),100)}});xe.APP_STATUS={NOT_READY:0,WAITING_FOR_PLUGINS_READY:1,READY:2};xe.PLUGIN_STATUS={NOT_READY:0,READY:1};xe.W3CDOMRange=c.Class({$init:function(a){this._document=a||document;this.collapsed=true;this.endContainer=this.commonAncestorContainer=this._document.body;this.endOffset=0;this.startContainer=this._document.body;this.startOffset=0},cloneContents:function(){var a=this._document.createDocumentFragment(),b=this._document.createDocumentFragment(),d=this._getNodesInRange();if(d.length<
|
||||
1)return a;d=this._constructClonedTree(d,b);if(b=b.firstChild)for(var b=b.firstChild,f;b;){f=b.nextSibling;a.appendChild(b);b=f}d=this._splitTextEndNodes({oStartContainer:d.oStartContainer,iStartOffset:this.startOffset,oEndContainer:d.oEndContainer,iEndOffset:this.endOffset});d.oStartContainer&&d.oStartContainer.previousSibling&&xe.DOMFix.parentNode(d.oStartContainer).removeChild(d.oStartContainer.previousSibling);d.oEndContainer&&d.oEndContainer.nextSibling&&xe.DOMFix.parentNode(d.oEndContainer).removeChild(d.oEndContainer.nextSibling);
|
||||
return a},_constructClonedTree:function(a,b){var d=null,f=null,c=this.startContainer,g=this.endContainer;_recurConstructClonedTree=function(a,b,j,n){if(b<0)return b;var j=b-1,m=a[b].cloneNode(false);a[b]==c&&(d=m);for(a[b]==g&&(f=m);j>=0&&xe.DOMFix.parentNode(a[j])==a[b];)j=this._recurConstructClonedTree(a,j,a[b],m,d,f);n.insertBefore(m,n.firstChild);return j};a[a.length]=xe.DOMFix.parentNode(a[a.length-1]);_recurConstructClonedTree(a,a.length-1,a[a.length-1],b);return{oStartContainer:d,oEndContainer:f}},
|
||||
cloneRange:function(){return this._copyRange(new xe.W3CDOMRange(this._document))},_copyRange:function(a){a.collapsed=this.collapsed;a.commonAncestorContainer=this.commonAncestorContainer;a.endContainer=this.endContainer;a.endOffset=this.endOffset;a.startContainer=this.startContainer;a.startOffset=this.startOffset;a._document=this._document;return a},collapse:function(a){if(a){this.endContainer=this.startContainer;this.endOffset=this.startOffset}else{this.startContainer=this.endContainer;this.startOffset=
|
||||
this.endOffset}this._updateRangeInfo()},compareBoundaryPoints:function(a,b){switch(a){case xe.W3CDOMRange.START_TO_START:return this._compareEndPoint(this.startContainer,this.startOffset,b.startContainer,b.startOffset);case xe.W3CDOMRange.START_TO_END:return this._compareEndPoint(this.endContainer,this.endOffset,b.startContainer,b.startOffset);case xe.W3CDOMRange.END_TO_END:return this._compareEndPoint(this.endContainer,this.endOffset,b.endContainer,b.endOffset);case xe.W3CDOMRange.END_TO_START:return this._compareEndPoint(this.startContainer,
|
||||
this.startOffset,b.endContainer,b.endOffset)}},_findBody:function(a){if(!a)return null;for(;a;){if(a.tagName=="BODY")return a;a=xe.DOMFix.parentNode(a)}return null},_compareEndPoint:function(a,b,d,f){if(!a||this._findBody(a)!=this._document.body){a=this._document.body;b=0}if(!d||this._findBody(d)!=this._document.body){d=this._document.body;f=0}var c=this._getCommonAncestorContainer(a,d);if(a!=c){for(;(oTmpNode=xe.DOMFix.parentNode(a))!=c;)a=oTmpNode;b=this._getPosIdx(a)+0.5}if(d!=c){for(;(oTmpNode=
|
||||
xe.DOMFix.parentNode(d))!=c;)d=oTmpNode;f=this._getPosIdx(d)+0.5}f==-1&&(f=b+1);return b<f?-1:b==f?0:1},_getCommonAncestorContainer:function(a,b){for(var d=b;a;){for(;d;){if(a==d)return a;d=xe.DOMFix.parentNode(d)}d=b;a=xe.DOMFix.parentNode(a)}return this._document.body},deleteContents:function(){if(!this.collapsed){this._splitTextEndNodesOfTheRange();var a=this._getNodesInRange();if(!(a.length<1)){for(var b=a[0].previousSibling;b&&this._isBlankTextNode(b);)b=b.previousSibling;var d,f;if(!b){d=xe.DOMFix.parentNode(a[0]);
|
||||
f=0}for(var c=0;c<a.length;c++){var g=a[c];if(!g.firstChild){if(d==g){f=this._getPosIdx(d);d=xe.DOMFix.parentNode(g)}xe.DOMFix.parentNode(g).removeChild(g)}}b?b.tagName=="BODY"?this.setStartBefore(b):this.setStartAfter(b):this.setStart(d,f);this.collapse(true)}}},extractContents:function(){var a=this.cloneContents();this.deleteContents();return a},insertNode:function(a){var b=null,d;if(this.startContainer.nodeType=="3"){d=xe.DOMFix.parentNode(this.startContainer);b=this.startContainer.nodeValue.length<=
|
||||
this.startOffset?this.startContainer.nextSibling:this.startContainer.splitText(this.startOffset)}else{d=this.startContainer;b=xe.DOMFix.childNodes(this.startContainer)[this.startOffset]}if(!b||!xe.DOMFix.parentNode(b))b=null;d.insertBefore(a,b);this.setStartBefore(a)},selectNode:function(a){this.setStartBefore(a);this.setEndAfter(a)},selectNodeContents:function(a){this.setStart(a,0);this.setEnd(a,xe.DOMFix.childNodes(a).length)},_endsNodeValidation:function(a,b){if(!a||this._findBody(a)!=this._document.body)throw Error("INVALID_NODE_TYPE_ERR oNode is not part of current document");
|
||||
if(a.nodeType==3){if(b>a.nodeValue.length)b=a.nodeValue.length}else if(b>xe.DOMFix.childNodes(a).length)b=xe.DOMFix.childNodes(a).length;return b},setEnd:function(a,b){b=this._endsNodeValidation(a,b);this.endContainer=a;this.endOffset=b;(!this.startContainer||this._compareEndPoint(this.startContainer,this.startOffset,this.endContainer,this.endOffset)!=-1)&&this.collapse(false);this._updateRangeInfo()},setEndAfter:function(a){if(!a)throw Error("INVALID_NODE_TYPE_ERR in setEndAfter");a.tagName=="BODY"?
|
||||
this.setEnd(a,xe.DOMFix.childNodes(a).length):this.setEnd(xe.DOMFix.parentNode(a),this._getPosIdx(a)+1)},setEndBefore:function(a){if(!a)throw Error("INVALID_NODE_TYPE_ERR in setEndBefore");a.tagName=="BODY"?this.setEnd(a,0):this.setEnd(xe.DOMFix.parentNode(a),this._getPosIdx(a))},setStart:function(a,b){b=this._endsNodeValidation(a,b);this.startContainer=a;this.startOffset=b;(!this.endContainer||this._compareEndPoint(this.startContainer,this.startOffset,this.endContainer,this.endOffset)!=-1)&&this.collapse(true);
|
||||
this._updateRangeInfo()},setStartAfter:function(a){if(!a)throw Error("INVALID_NODE_TYPE_ERR in setStartAfter");a.tagName=="BODY"?this.setStart(a,xe.DOMFix.childNodes(a).length):this.setStart(xe.DOMFix.parentNode(a),this._getPosIdx(a)+1)},setStartBefore:function(a){if(!a)throw Error("INVALID_NODE_TYPE_ERR in setStartBefore");a.tagName=="BODY"?this.setStart(a,0):this.setStart(xe.DOMFix.parentNode(a),this._getPosIdx(a))},surroundContents:function(a){a.appendChild(this.extractContents());this.insertNode(a);
|
||||
this.selectNode(a)},toString:function(){var a=this._document.createElement("DIV");a.appendChild(this.cloneContents());return a.textContent||a.innerText||""},_isBlankTextNode:function(a){return a.nodeType==3&&a.nodeValue==""?true:false},_getPosIdx:function(a){for(var b=0,a=a.previousSibling;a;a=a.previousSibling)b++;return b},_updateRangeInfo:function(){if(this.startContainer){this.collapsed=this._isCollapsed(this.startContainer,this.startOffset,this.endContainer,this.endOffset);this.commonAncestorContainer=
|
||||
this._getCommonAncestorContainer(this.startContainer,this.endContainer)}else this.init(this._document)},_isCollapsed:function(a,b,d,f){var c=false;if(a==d&&b==f)c=true;else{a=this._getActualStartNode(a,b);d=this._getActualEndNode(d,f);a=this._getNextNode(this._getPrevNode(a));d=this._getPrevNode(this._getNextNode(d));if(a&&d&&d.tagName!="BODY"&&(this._getNextNode(d)==a||d==a&&this._isBlankTextNode(d)))c=true}return c},_splitTextEndNodesOfTheRange:function(){var a=this._splitTextEndNodes({oStartContainer:this.startContainer,
|
||||
iStartOffset:this.startOffset,oEndContainer:this.endContainer,iEndOffset:this.endOffset});this.startContainer=a.oStartContainer;this.startOffset=a.iStartOffset;this.endContainer=a.oEndContainer;this.endOffset=a.iEndOffset},_splitTextEndNodes:function(a){a=this._splitStartTextNode(a);return a=this._splitEndTextNode(a)},_splitStartTextNode:function(a){var b=a.oStartContainer,d=a.iStartOffset,f=a.oEndContainer,c=a.iEndOffset;if(!b||b.nodeType!=3||d==0||b.nodeValue.length<=d)return a;a=b.splitText(d);
|
||||
if(b==f){c=c-d;f=a}return{oStartContainer:a,iStartOffset:0,oEndContainer:f,iEndOffset:c}},_splitEndTextNode:function(a){var b=a.oStartContainer,d=a.iStartOffset,f=a.oEndContainer,c=a.iEndOffset;if(!f||f.nodeType!=3||c>=f.nodeValue.length||c==0)return a;f.splitText(c);return{oStartContainer:b,iStartOffset:d,oEndContainer:f,iEndOffset:c}},_getNodesInRange:function(){if(this.collapsed)return[];var a=this._getActualStartNode(this.startContainer,this.startOffset),b=this._getActualEndNode(this.endContainer,
|
||||
this.endOffset);return this._getNodesBetween(a,b)},_getActualStartNode:function(a,b){var d=a;if(a.nodeType==3)if(b>=a.nodeValue.length){d=this._getNextNode(a);d.tagName=="BODY"&&(d=null)}else d=a;else if(b<xe.DOMFix.childNodes(a).length)d=xe.DOMFix.childNodes(a)[b];else{d=this._getNextNode(a);d.tagName=="BODY"&&(d=null)}return d},_getActualEndNode:function(a,b){var d=a;if(b==0){d=this._getPrevNode(a);d.tagName=="BODY"&&(d=null)}else d=a.nodeType==3?a:xe.DOMFix.childNodes(a)[b-1];return d},_getNextNode:function(a){return!a||
|
||||
a.tagName=="BODY"?this._document.body:a.nextSibling?a.nextSibling:this._getNextNode(xe.DOMFix.parentNode(a))},_getPrevNode:function(a){return!a||a.tagName=="BODY"?this._document.body:a.previousSibling?a.previousSibling:this._getPrevNode(xe.DOMFix.parentNode(a))},_getNodesBetween:function(a,b){var d=[];this._nNodesBetweenLen=0;if(!a||!b)return d;this._recurGetNextNodesUntil(a,b,d);return d},_recurGetNextNodesUntil:function(a,b,d){if(!a||!this._recurGetChildNodesUntil(a,b,d))return false;for(var f=
|
||||
a.nextSibling;!f;){if(!(a=xe.DOMFix.parentNode(a)))return false;d[this._nNodesBetweenLen++]=a;if(a==b)return false;f=a.nextSibling}return this._recurGetNextNodesUntil(f,b,d)},_recurGetChildNodesUntil:function(a,b,d){if(!a)return false;var f=false,c=a;if(c.firstChild)for(c=c.firstChild;c;){if(!this._recurGetChildNodesUntil(c,b,d)){f=true;break}c=c.nextSibling}d[this._nNodesBetweenLen++]=a;return f||a==b?false:true}});xe.W3CDOMRange.START_TO_START=0;xe.W3CDOMRange.START_TO_END=1;xe.W3CDOMRange.END_TO_END=
|
||||
2;xe.W3CDOMRange.END_TO_START=3;xe.XpressRange=c.Class({setWindow:function(a){this._window=a;this._document=a.document},$init:function(a){this.HUSKY_BOOMARK_START_ID_PREFIX="xpress_bookmark_start_";this.HUSKY_BOOMARK_END_ID_PREFIX="xpress_bookmark_end_";this.sBlockElement="P|DIV|LI|H[1-6]|PRE";this.sBlockContainer="BODY|TABLE|TH|TR|TD|UL|OL|BLOCKQUOTE|FORM";this.rxBlockElement=RegExp("^("+this.sBlockElement+")$");this.rxBlockContainer=RegExp("^("+this.sBlockContainer+")$");this.rxLineBreaker=RegExp("^("+
|
||||
this.sBlockElement+"|"+this.sBlockContainer+")$");this.setWindow(a);this.oSimpleSelection=new xe.SimpleSelection(this._window);this.selectionLoaded=this.oSimpleSelection.selectionLoaded;this.$super.$init(this._document)},select:function(){this.oSimpleSelection.selectRange(this)},setFromSelection:function(a){this.setRange(this.oSimpleSelection.getRangeAt(a))},setRange:function(a){this.setStart(a.startContainer,a.startOffset);this.setEnd(a.endContainer,a.endOffset)},setEndNodes:function(a,b){this.setEndAfter(b);
|
||||
this.setStartBefore(a)},splitTextAtBothEnds:function(){this._splitTextEndNodesOfTheRange()},getStartNode:function(){return this.collapsed?this.startContainer.nodeType==3?this.startOffset==0||this.startContainer.nodeValue.length<=this.startOffset?null:this.startContainer:null:this.startContainer.nodeType==3?this.startOffset>=this.startContainer.nodeValue.length?this._getNextNode(this.startContainer):this.startContainer:this.startOffset>=xe.DOMFix.childNodes(this.startContainer).length?this._getNextNode(this.startContainer):
|
||||
xe.DOMFix.childNodes(this.startContainer)[this.startOffset]},getEndNode:function(){return this.collapsed?this.getStartNode():this.endContainer.nodeType==3?this.endOffset==0?this._getPrevNode(this.endContainer):this.endContainer:this.endOffset==0?this._getPrevNode(this.endContainer):xe.DOMFix.childNodes(this.endContainer)[this.endOffset-1]},getNodeAroundRange:function(a,b){if(this.collapsed&&this.startContainer&&this.startContainer.nodeType==3)return this.startContainer;if(!this.collapsed||this.startContainer&&
|
||||
this.startContainer.nodeType==3)return this.getStartNode();var d,c,e;c=this.startOffset>=xe.DOMFix.childNodes(this.startContainer).length?this._getNextNode(this.startContainer):xe.DOMFix.childNodes(this.startContainer)[this.startOffset];d=this.endOffset==0?this._getPrevNode(this.endContainer):xe.DOMFix.childNodes(this.endContainer)[this.endOffset-1];if(a){e=d;!e&&!b&&(e=c)}else{e=c;!e&&!b&&(e=d)}return e},_getXPath:function(a){for(var b="";a&&a.nodeType==1;){b="/"+a.tagName+"["+this._getPosIdx4XPath(a)+
|
||||
"]"+b;a=xe.DOMFix.parentNode(a)}return b},_getPosIdx4XPath:function(a){for(var b=0,d=a.previousSibling;d;d=d.previousSibling)d.tagName==a.tagName&&b++;return b},_evaluateXPath:function(a,b){for(var a=a.substring(1,a.length-1),d=a.split(/\//),c=b.body,e=2;e<d.length&&c;e++){d[e].match(/([^\[]+)\[(\d+)/i);for(var g=RegExp.$1,h=RegExp.$2,c=xe.DOMFix.childNodes(c),k=[],j=c.length,n=0,m=0;m<j;m++)c[m].tagName==g&&(k[n++]=c[m]);c=k.length<h?null:k[h]}return c},_evaluateXPathBookmark:function(a){var b=a.nTextNodeIdx,
|
||||
d=a.nOffset,a=this._evaluateXPath(a.sXPath,this._document);if(b>-1&&a){for(var c=xe.DOMFix.childNodes(a),e=null;(e=c[b])&&e.nodeType==3&&e.nodeValue.length<d;){d=d-e.nodeValue.length;b++}a=xe.DOMFix.childNodes(a)[b]}if(!a){a=this._document.body;d=0}return{elContainer:a,nOffset:d}},getXPathBookmark:function(){var a=-1,b={elContainer:this.startContainer,nOffset:this.startOffset},d=this.startContainer;if(d.nodeType==3){b=this._getFixedStartTextNode();a=this._getPosIdx(b.elContainer);d=xe.DOMFix.parentNode(d)}var a=
|
||||
{sXPath:this._getXPath(d),nTextNodeIdx:a,nOffset:b.nOffset},b=-1,d={elContainer:this.endContainer,nOffset:this.endOffset},c=this.endContainer;if(c.nodeType==3){d=this._getFixedEndTextNode();b=this._getPosIdx(d.elContainer);c=xe.DOMFix.parentNode(c)}b={sXPath:this._getXPath(c),nTextNodeIdx:b,nOffset:d.nOffset};return[a,b]},moveToXPathBookmark:function(a){if(a){var b=this._evaluateXPathBookmark(a[0]),a=this._evaluateXPathBookmark(a[1]);if(b.elContainer&&a.elContainer){this.startContainer=b.elContainer;
|
||||
this.startOffset=b.nOffset;this.endContainer=a.elContainer;this.endOffset=a.nOffset}}},_getFixedTextContainer:function(a,b){for(;a&&a.nodeType==3&&a.previousSibling&&a.previousSibling.nodeType==3;){b=b+a.previousSibling.nodeValue.length;a=a.previousSibling}return{elContainer:a,nOffset:b}},_getFixedStartTextNode:function(){return this._getFixedTextContainer(this.startContainer,this.startOffset)},_getFixedEndTextNode:function(){return this._getFixedTextContainer(this.endContainer,this.endOffset)},placeStringBookmark:function(){var a=
|
||||
(new Date).getTime(),b=this.cloneRange();b.collapseToEnd();var d=this._document.createElement("A");d.id=this.HUSKY_BOOMARK_END_ID_PREFIX+a;b.insertNode(d);b=this.cloneRange();b.collapseToStart();d=this._document.createElement("A");d.id=this.HUSKY_BOOMARK_START_ID_PREFIX+a;b.insertNode(d);this.moveToBookmark(a);return a},cloneRange:function(){return this._copyRange(new xe.XpressRange(this._window))},moveToBookmark:function(a){typeof a!="object"?this.moveToStringBookmark(a):this.moveToXPathBookmark(a)},
|
||||
moveToStringBookmark:function(a){var b=this._document.getElementById(this.HUSKY_BOOMARK_START_ID_PREFIX+a),a=this._document.getElementById(this.HUSKY_BOOMARK_END_ID_PREFIX+a);if(b&&a){this.setEndBefore(a);this.setStartAfter(b)}},removeStringBookmark:function(a){var b=this._document.getElementById(this.HUSKY_BOOMARK_START_ID_PREFIX+a),a=this._document.getElementById(this.HUSKY_BOOMARK_END_ID_PREFIX+a);b&&xe.DOMFix.parentNode(b).removeChild(b);a&&xe.DOMFix.parentNode(a).removeChild(a)},collapseToStart:function(){this.collapse(true)},
|
||||
collapseToEnd:function(){this.collapse(false)},createAndInsertNode:function(){tmpNode=this._document.createElement(tagName);this.insertNode(tmpNode);return tmpNode},getNodes:function(a,b){a&&this._splitTextEndNodesOfTheRange();var d=this._getNodesInRange(),c=[];if(!b)return d;for(var e=0;e<d.length;e++)b(d[e])&&(c[c.length]=d[e]);return c},getTextNodes:function(a){return this.getNodes(a,function(a){return a.nodeType==3&&a.nodeValue!="\n"&&a.nodeValue!=""?true:false})},surroundContentsWithNewNode:function(a){a=
|
||||
this._document.createElement(a);this.surroundContents(a);return a},isRangeinRange:function(a){var b=this.compareBoundaryPoints(this.START_TO_START,a),d=this.compareBoundaryPoints(this.START_TO_END,a),c=this.compareBoundaryPoints(this.END_TO_START,a),a=this.compareBoundaryPoints(this.END_TO_END,a);return b<=0&&a>=0?true:bIncludePartlyIncluded?d==1||c==-1?false:true:false},isNodeInRange:function(a,b,d){var c=new xe.XpressRange(this._window);if(d&&a.firstChild){c.setStartBefore(a.firstChild);c.setEndAfter(a.lastChild)}else c.selectNode(a);
|
||||
return isRangeInRange(c,b)},pasteHTML:function(a){if(a=="")this.deleteContents();else{var b=this._document.createElement("DIV");b.innerHTML=a;for(var a=b.firstChild,d=b.lastChild,c=this.cloneRange(),e=c.placeStringBookmark();b.lastChild;)this.insertNode(b.lastChild);this.setEndNodes(a,d);c.moveToBookmark(e);c.deleteContents();c.removeStringBookmark(e)}},toString:function(){this.toString=xe.W3CDOMRange.prototype.toString;return this.toString()},toHTMLString:function(){var a=this._document.createElement("DIV");
|
||||
a.appendChild(this.cloneContents());return a.innerHTML},findAncestorByTagName:function(a){for(var b=this.commonAncestorContainer;b&&b.tagName!=a;)b=xe.DOMFix.parentNode(b);return b},selectNodeContents:function(a){if(a){var b=a.firstChild?a.firstChild:a,a=a.lastChild?a.lastChild:a;b.nodeType==3?this.setStart(b,0):this.setStartBefore(b);a.nodeType==3?this.setEnd(a,a.nodeValue.length):this.setEndAfter(a)}},styleRange:function(a,b,d){d=this._getStyleParentNodes(d);if(!(d.length<1)){for(var f,e,g=0;g<
|
||||
d.length;g++){for(var h in a){f=h;e=a[f];typeof e=="string"&&(d[g].style[f]=e)}if(b)for(h in b){f=h;e=b[f];typeof e=="string"&&(f=="class"?c(d[g]).addClass(e):d[g].setAttribute(f,e))}}this.setStartBefore(d[0]);this.setEndAfter(d[d.length-1])}},_getStyleParentNodes:function(a){this._splitTextEndNodesOfTheRange();var b=this.getStartNode(),d=this.getEndNode(),f=this._getNodesInRange(),e=[],g=0,h,k,j,n,m,q=f.length;c(f).filter(function(){return!!this.childNodes.length});for(var l=0;l<q;l++)if((h=f[l])&&
|
||||
!(h.nodeType!=3||h.nodeValue=="")){m=xe.DOMFix.parentNode(h);if(m.tagName=="SPAN"){var o=c(m).html();k=this._getVeryFirstRealChild(m);j=k==h?1:o.indexOf(k);if(j!=-1){k=this._getVeryLastRealChild(m);n=k==h?1:o.indexOf(k)}if(j!=-1&&n!=-1){e[g++]=m;continue}}k=this._document.createElement("SPAN");m.insertBefore(k,h);k.appendChild(h);e[g++]=k;a&&k.setAttribute(a,"true")}this.setStartBefore(b);this.setEndAfter(d);return e},_getVeryFirstChild:function(a){return a.firstChild?this._getVeryFirstChild(a.firstChild):
|
||||
a},_getVeryLastChild:function(a){return a.lastChild?this._getVeryLastChild(a.lastChild):a},_getFirstRealChild:function(a){for(a=a.firstChild;a&&a.nodeType==3&&a.nodeValue=="";)a=a.nextSibling;return a},_getLastRealChild:function(a){for(a=a.lastChild;a&&a.nodeType==3&&a.nodeValue=="";)a=a.previousSibling;return a},_getVeryFirstRealChild:function(a){var b=this._getFirstRealChild(a);return b?this._getVeryFirstRealChild(b):a},_getVeryLastRealChild:function(a){var b=this._getLastRealChild(a);return b?
|
||||
this._getVeryLastChild(b):a},_getLineStartInfo:function(a){function b(a){if(a&&!c)if(k.test(a.tagName)){g=a;c=e;h=true}else{e=a;d(a.previousSibling);c||b(xe.DOMFix.parentNode(a))}}function d(a){if(a&&!c)if(k.test(a.tagName)){g=a;c=e;h=false}else{if(a.firstChild&&a.tagName!="TABLE")for(var b=a.lastChild;b&&!c;){d(b);b=b.previousSibling}else e=a;c||d(a.previousSibling)}}var c=null,e=a,g=a,h=true,k=this.rxLineBreaker;b(a);return{oNode:c,oLineBreaker:g,bParentBreak:h}},_getLineEndInfo:function(a){function b(a){if(a&&
|
||||
!c)if(k.test(a.tagName)){g=a;c=e;h=true}else{e=a;d(a.nextSibling);c||b(xe.DOMFix.parentNode(a))}}function d(a){if(a&&!c)if(k.test(a.tagName)){g=a;c=e;h=false}else{if(a.firstChild&&a.tagName!="TABLE")for(var b=a.firstChild;b&&!c;){d(b);b=b.nextSibling}else e=a;c||d(a.nextSibling)}}var c=null,e=a,g=a,h=true,k=this.rxLineBreaker;b(a);return{oNode:c,oLineBreaker:g,bParentBreak:h}},getLineInfo:function(){var a=this.getStartNode(),b=this.getEndNode();a||(a=this.getNodeAroundRange(true,true));b||(b=this.getNodeAroundRange(true,
|
||||
true));var a=this._getLineStartInfo(a),d=a.oNode,b=this._getLineEndInfo(b),c=b.oNode,d=this._compareEndPoint(xe.DOMFix.parentNode(d),this._getPosIdx(d),this.endContainer,this.endOffset),c=this._compareEndPoint(xe.DOMFix.parentNode(c),this._getPosIdx(c)+1,this.startContainer,this.startOffset);if(!(d<=0&&c>=0)){a=this.getNodeAroundRange(false,true);b=this.getNodeAroundRange(false,true);a=this._getLineStartInfo(a);b=this._getLineEndInfo(b)}return{oStart:a,oEnd:b}}}).extend(xe.W3CDOMRange);xe.SimpleSelection=
|
||||
function(a){this.init=function(a){this._window=a||window;this._document=this._window.document};this.init(a);c.browser.msie?xe.SimpleSelectionImpl_IE.apply(this):xe.SimpleSelectionImpl_FF.apply(this);this.selectRange=function(a){this.selectNone();this.addRange(a)};this.selectionLoaded=true;if(!this._oSelection)this.selectionLoaded=false};xe.SimpleSelectionImpl_FF=function(){this._oSelection=this._window.getSelection();this.getRangeAt=function(a){try{var b=this._oSelection.getRangeAt(a||0)}catch(d){return new xe.W3CDOMRange(this._document)}return this._FFRange2W3CRange(b)};
|
||||
this.addRange=function(a){this._oSelection.addRange(this._W3CRange2FFRange(a))};this.selectNone=function(){this._oSelection.removeAllRanges()};this._FFRange2W3CRange=function(a){var b=new xe.W3CDOMRange(this._document);b.setStart(a.startContainer,a.startOffset);b.setEnd(a.endContainer,a.endOffset);return b};this._W3CRange2FFRange=function(a){var b=this._document.createRange();b.setStart(a.startContainer,a.startOffset);b.setEnd(a.endContainer,a.endOffset);return b}};xe.SimpleSelectionImpl_IE=function(){this._oSelection=
|
||||
this._document.selection;this.getRangeAt=function(a){a=a||0;if(this._oSelection.type=="Control"){var b=new xe.W3CDOMRange(this._document),d=this._oSelection.createRange().item(a);if(!d||d.ownerDocument!=this._document)return b;b.selectNode(d);return b}d=this._oSelection.createRangeCollection().item(a).parentElement();if(!d||d.ownerDocument!=this._document)return b=new xe.W3CDOMRange(this._document);return this._IERange2W3CRange(this._oSelection.createRangeCollection().item(a))};this.addRange=function(a){this._W3CRange2IERange(a).select()};
|
||||
this.selectNone=function(){this._oSelection.empty()};this._W3CRange2IERange=function(a){var b=this._getIERangeAt(a.startContainer,a.startOffset),a=this._getIERangeAt(a.endContainer,a.endOffset);b.setEndPoint("EndToEnd",a);return b};this._getIERangeAt=function(a,b){var d=this._document.body.createTextRange(),c=this._getSelectableNodeAndOffsetForIE(a,b),e=c.iOffsetForIE;d.moveToElementText(c.oSelectableNodeForIE);d.collapse(c.bCollapseToStart);d.moveStart("character",e);return d};this._getSelectableNodeAndOffsetForIE=
|
||||
function(a,b){var d=this._document.body.createTextRange(),c=null,e=null,g=0;if(a.nodeType==3){c=xe.DOMFix.parentNode(a);e=xe.DOMFix.childNodes(c);g=e.length}else{c=a;e=xe.DOMFix.childNodes(c);g=b}for(var h=null,k=0,j=true,n=0;n<g;n++){h=e[n];if(h.nodeType==3){if(h==a)break;k=k+h.nodeValue.length}else{d.moveToElementText(h);c=h;k=0;j=false}}a.nodeType==3&&(k=k+b);return{oSelectableNodeForIE:c,iOffsetForIE:k,bCollapseToStart:j}};this._IERange2W3CRange=function(a){var b=new xe.W3CDOMRange(this._document),
|
||||
d=null,d=null,d=a.duplicate();d.collapse(true);d=this._getW3CContainerAndOffset(d,true);b.setStart(d.oContainer,d.iOffset);d=a.duplicate();d.collapse(true);if(d.isEqual(a))b.collapse(true);else{d=a.duplicate();d.collapse(false);d=this._getW3CContainerAndOffset(d);b.setEnd(d.oContainer,d.iOffset)}return b};this._getW3CContainerAndOffset=function(a,b){for(var d=a.parentElement(),c=-1,e=this._document.body.createTextRange(),g=xe.DOMFix.childNodes(d),c=null,h=0,h=0;h<g.length;h++)if(g[h].nodeType!=3){e.moveToElementText(g[h]);
|
||||
if(e.compareEndPoints("StartToStart",a)>=0)break;c=g[h]}if(h!=0&&g[h-1].nodeType==3){g=this._document.body.createTextRange();e=null;if(c){g.moveToElementText(c);g.collapse(false);e=c.nextSibling}else{g.moveToElementText(d);g.collapse(true);e=d.firstChild}d=a.duplicate();d.setEndPoint("StartToStart",g);for(c=d.text.length;c>e.nodeValue.length&&e.nextSibling;){c=c-e.nodeValue.length;e=e.nextSibling}if(b&&e.nextSibling&&e.nextSibling.nodeType==3&&c==e.nodeValue.length){c=c-e.nodeValue.length;e=e.nextSibling}d=
|
||||
e}else{d=a.parentElement();c=h}return{oContainer:d,iOffset:c}}};xe.DOMFix=new (c.Class({$init:function(){if(c.browser.msie||c.browser.opera){this.childNodes=this._childNodes_Fix;this.parentNode=this._parentNode_Fix}else{this.childNodes=this._childNodes_Native;this.parentNode=this._parentNode_Native}},_parentNode_Native:function(a){return a.parentNode},_parentNode_Fix:function(a){if(!a)return a;for(;a.previousSibling;)a=a.previousSibling;return a.parentNode},_childNodes_Native:function(a){return a.childNodes},
|
||||
_childNodes_Fix:function(a){var b=null,d=0;if(a){b=[];for(a=a.firstChild;a;){b[d++]=a;a=a.nextSibling}}return b}}));xe.DraggableLayer=c.Class({$init:function(a,b){this.oOptions=c.extend({bModal:"false",oHandle:a,iMinX:-999999,iMinY:-999999,iMaxX:999999,iMaxY:999999},b);this.oHandle=this.oOptions.oHandle;a.style.display="block";a.style.position="absolute";a.style.zIndex="9999";this.aBasePosition=this.getBaseOffset(a);a.style.top=this.toInt(c(a).offset().top)-this.aBasePosition.top+"px";a.style.left=
|
||||
this.toInt(c(a).offset().left)-this.aBasePosition.left+"px";this.$FnMouseDown=c.fnBind(this._mousedown,this,a);this.$FnMouseMove=c.fnBind(this._mousemove,this,a);this.$FnMouseUp=c.fnBind(this._mouseup,this,a);c(this.oHandle).bind("mousedown",this.$FnMouseDown)},_mousedown:function(a,b){if(b.target.tagName!="INPUT"){this.MouseOffsetY=b.pageY-this.toInt(a.style.top)-this.aBasePosition.top;this.MouseOffsetX=b.pageX-this.toInt(a.style.left)-this.aBasePosition.left;c(a).bind("mousemove",this.$FnMouseMove);
|
||||
c(a).bind("mouseup",this.$FnMouseUp)}},_mousemove:function(a,b){var d=b.pageY-this.MouseOffsetY-this.aBasePosition.top,c=b.pageX-this.MouseOffsetX-this.aBasePosition.left;if(d<this.oOptions.iMinY)d=this.oOptions.iMinY;if(d>this.oOptions.iMaxY)d=this.oOptions.iMaxY;if(c<this.oOptions.iMinX)c=this.oOptions.iMinX;if(c>this.oOptions.iMaxX)c=this.oOptions.iMaxX;a.style.top=d+"px";a.style.left=c+"px"},_mouseup:function(a){c(a).unbind("mousemove",this.$FnMouseMove);c(a).unbind("mouseup",this.$FnMouseUp)},
|
||||
toInt:function(a){return parseInt(a)||0},findNonStatic:function(a){return!a?null:a.tagName=="BODY"||c(a).css("position").match(/absolute|relative/i)?a:this.findNonStatic(a.offsetParent)},getBaseOffset:function(a){a=this.findNonStatic(a.offsetParent);a=c(a).offset();return{top:a.top,left:a.left}}});xe.CorePlugin=c.Class({name:"CorePlugin",$init:function(a){this.funcOnReady=a},$AFTER_MSG_APP_READY:function(){this.oApp.exec("EXEC_ON_READY_FUNCTION",[])},$ON_ADD_APP_PROPERTY:function(a,b){this.oApp[a]=
|
||||
b},$ON_REGISTER_BROWSER_EVENT:function(a,b,d,c,e){this.oApp.registerBrowserEvent(a,b,d,c,e)},$ON_DISABLE_COMMAND:function(a){this.oApp.disableCommand(a,true)},$ON_ENABLE_COMMAND:function(a){this.oApp.disableCommand(a,false)},$ON_EXEC_ON_READY_FUNCTION:function(){typeof this.funcOnReady=="function"&&this.funcOnReady()}});xe.Utils=c.Class({name:"Utils",$init:function(){if(c.browser.msie&&c.browser.nVersion==6)try{document.execCommand("BackgroundImageCache",false,true)}catch(a){}},$ON_ATTACH_HOVER_EVENTS:function(a,
|
||||
b){b=b||"hover";a&&c(a).hover(function(){c(this).addClass(b)},function(){c(this).removeClass(b)})}});xe.XpressRangeManager=c.Class({name:"XpressRangeManager",oWindow:null,$init:function(a){this.oWindow=a||window},$BEFORE_MSG_APP_READY:function(){if(this.oWindow&&this.oWindow.tagName=="IFRAME")this.oWindow=this.oWindow.contentWindow;this.oApp.exec("ADD_APP_PROPERTY",["getSelection",c.fnBind(this.getSelection,this)]);this.oApp.exec("ADD_APP_PROPERTY",["getEmptySelection",c.fnBind(this.getEmptySelection,
|
||||
this)])},$ON_SET_EDITING_WINDOW:function(a){this.oWindow=a},getEmptySelection:function(){return new xe.XpressRange(this.oWindow)},getSelection:function(){this.oApp.exec("RESTORE_IE_SELECTION",[]);var a=this.getEmptySelection();try{a.setFromSelection()}catch(b){}return a}});xe.Hotkey=c.Class({name:"Hotkey",storage:{},keyhash:{},$init:function(){this.storage={};this.keyhash={backspace:8,tab:9,enter:13,shift:16,ctrl:17,alt:18,meta:224,esc:27,space:32,pageup:33,pagedown:34,end:35,home:36,left:37,up:38,
|
||||
right:39,down:40,del:46,comma:188,period:190,slash:191,hyphen:109,equal:61};if(c.browser.msie||c.browser.safari){this.keyhash.hyphen=189;this.keyhash.equal=187;this.keyhash.meta=91}},$ON_MSG_APP_READY:function(){c(this.oApp.getWYSIWYGDocument()||document).keydown(c.fnBind(this.keydown,this))},$ON_REGISTER_HOTKEY:function(a,b,d){d||(d=[]);b=c.fnBind(this.oApp.exec,this.oApp,b,d);a=this.normalize(a);if(!a)return false;this.add(a,b)},add:function(a,b){typeof this.storage[a]=="undefined"?this.storage[a]=
|
||||
[b]:this.storage[a].push(b)},keydown:function(a){var b=[],d=this.keyhash;if(!(c.inArray(a.keyCode,[d.shift,d.ctrl,d.alt,d.meta])>=0)){a.shiftKey&&b.push("shift");a.altKey&&b.push("alt");a.ctrlKey&&b.push("ctrl");a.metaKey&&b.push("meta");if(b.length){b.length==1&&a.metaKey&&(b=["ctrl","meta"]);b.push(a.keyCode);b=b.join("+");if(this.storage[b]){c.each(this.storage[b],function(){this()});return false}}}},normalize:function(a){var b,d,f,e,g,a=(a||"").toLowerCase().split("+");b=d=f=e=g=false;c.each(a,
|
||||
function(){var a=""+this;switch(a){case "shift":b=true;case "alt":f=true;case "ctrl":d=true;case "meta":e=true;default:g=a}});if(!g)return"";a=[];b&&a.push("shift");f&&a.push("alt");d&&a.push("ctrl");(e||d&&!b&&!f)&&a.push("meta");a.push(this.keyhash[g]||g.toUpperCase().charCodeAt(0));return a.join("+")}});xe.DialogLayerManager=c.Class({name:"DialogLayerManager",aMadeDraggable:null,aOpenedLayers:null,$init:function(){this.aMadeDraggable=[];this.aOpenedLayers=[]},$ON_SHOW_DIALOG_LAYER:function(a,b){a=
|
||||
c.$(a);b=c.$(b)||false;if(a&&c.inArray(a,this.aOpenedLayers)==-1){this.oApp.exec("POSITION_DIALOG_LAYER",[a]);this.aOpenedLayers[this.aOpenedLayers.length]=a;if(c.inArray(a,this.aMadeDraggable)==-1){new xe.DraggableLayer(a,{bModal:b,iMinY:0});this.aMadeDraggable[this.aMadeDraggable.length]=a}else a.style.display="block"}},$ON_HIDE_LAST_DIALOG_LAYER:function(){this.oApp.exec("HIDE_DIALOG_LAYER",[this.aOpenedLayers[this.aOpenedLayers.length-1]])},$ON_HIDE_ALL_DIALOG_LAYER:function(){for(var a=this.aOpenedLayers.length-
|
||||
1;a>=0;a--)this.oApp.exec("HIDE_DIALOG_LAYER",[this.aOpenedLayers[a]])},$ON_HIDE_DIALOG_LAYER:function(a){if(a=c.$(a))a.style.display="none";this.aOpenedLayers=c.grep(this.aOpenedLayers,function(b){return b!=a})},$ON_SET_DIALOG_LAYER_POSITION:function(a,b,d){a.style.top=b;a.style.left=d}});xe.ActiveLayerManager=c.Class({name:"ActiveLayerManager",oCurrentLayer:null,$ON_TOGGLE_ACTIVE_LAYER:function(a,b,d,c,e){if(a==this.oCurrentLayer)this.oApp.exec("HIDE_ACTIVE_LAYER",[]);else{this.oApp.exec("SHOW_ACTIVE_LAYER",
|
||||
[a,c,e]);b&&this.oApp.exec(b,d)}},$ON_SHOW_ACTIVE_LAYER:function(a,b,d){a=c.$(a);this.sOnCloseCmd=b;this.aOnCloseParam=d;if(a!=this.oCurrentLayer){this.oApp.exec("HIDE_ACTIVE_LAYER",[]);a.style.display="block";this.oCurrentLayer=a}},$ON_HIDE_ACTIVE_LAYER:function(){var a=this.oCurrentLayer;if(a){a.style.display="none";this.oCurrentLayer=null;this.sOnCloseCmd&&this.oApp.exec(this.sOnCloseCmd,this.aOnCloseParam)}},$ON_HIDE_CURRENT_ACTIVE_LAYER:function(){this.oApp.exec("HIDE_ACTIVE_LAYER",[])},$ON_EVENT_EDITING_AREA_KEYDOWN:function(){this.oApp.exec("HIDE_ACTIVE_LAYER",
|
||||
[])},$ON_EVENT_EDITING_AREA_MOUSEDOWN:function(){this.oApp.exec("HIDE_ACTIVE_LAYER",[])}});xe.StringConverterManager=c.Class({name:"StringConverterManager",oConverters:null,$init:function(){this.oConverters={}},$BEFORE_MSG_APP_READY:function(){this.oApp.exec("ADD_APP_PROPERTY",["applyConverter",c.fnBind(this.applyConverter,this)]);this.oApp.exec("ADD_APP_PROPERTY",["addConverter",c.fnBind(this.addConverter,this)])},applyConverter:function(a,b){var d=this.oConverters[a];if(!d)return b;for(var c=0;c<
|
||||
d.length;c++)b=d[c](b);return b},addConverter:function(a,b){this.oConverters[a]||(this.oConverters[a]=[]);this.oConverters[a][this.oConverters[a].length]=b}});xe.MessageManager=c.Class({name:"MessageManager",oMessageMap:null,$init:function(a){this.oMessageMap=a},$BEFORE_MSG_APP_READY:function(){this.oApp.exec("ADD_APP_PROPERTY",["$MSG",c.fnBind(this.getMessage,this)])},getMessage:function(a){return this.oMessageMap[a]?unescape(this.oMessageMap[a]):a}});xe.XE_Toolbar=c.Class({name:"XE_Toolbar",toolbarArea:null,
|
||||
toolbarButton:null,uiNameTag:"uiName",sUIClassPrefix:"xpress_xeditor_ui_",aUICmdMap:null,$init:function(a){this.htUIList={};this.aUICmdMap={};this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){a=c.$(a)||document;this.toolbarArea=c(".tool",a).get(0);this.welToolbarArea=c(this.toolbarArea);this.aAllButtons=c("BUTTON",this.toolbarArea).get();for(var a=this.toolbarArea.getElementsByTagName("LI"),b=a.length,d=RegExp(this.sUIClassPrefix+"([^ ]+)"),f=0;f<b;f++)if(d.test(a[f].className)){var e=RegExp.$1;
|
||||
this.htUIList[e]==null&&(this.htUIList[e]=c(">*:first-child",a[f]).get(0))}},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.toolbarArea,"mouseover","EVENT_TOOLBAR_MOUSEOVER",[]);this.oApp.registerBrowserEvent(this.toolbarArea,"mouseout","EVENT_TOOLBAR_MOUSEOUT",[]);this.oApp.exec("ADD_APP_PROPERTY",["getToolbarButtonByUIName",c.fnBind(this.getToolbarButtonByUIName,this)])},$ON_EVENT_TOOLBAR_MOUSEOVER:function(a){a.target.tagName=="BUTTON"&&c(a.target).addClass("hover").parent("span").addClass("hover")},
|
||||
$ON_EVENT_TOOLBAR_MOUSEOUT:function(a){a.target.tagName=="BUTTON"&&c(a.target).removeClass("hover").parent("span").removeClass("hover")},$ON_TOGGLE_TOOLBAR_ACTIVE_LAYER:function(a,b,d,c,e,g){this.oApp.exec("TOGGLE_ACTIVE_LAYER",[a,"MSG_TOOLBAR_LAYER_SHOWN",[a,b,d,c],e,g])},$ON_MSG_TOOLBAR_LAYER_SHOWN:function(a,b,d,c){this.oApp.exec("POSITION_TOOLBAR_LAYER",[a,b]);d&&this.oApp.exec(d,c)},$ON_SHOW_TOOLBAR_ACTIVE_LAYER:function(a,b,d,c){this.oApp.exec("SHOW_ACTIVE_LAYER",[a,b,d]);this.oApp.exec("POSITION_TOOLBAR_LAYER",
|
||||
[a,c])},$ON_ENABLE_UI:function(a){var b=this.htUIList[a];if(b){c(b).removeClass("off");b.disabled=false;b="";if(this.aUICmdMap[a])for(var d=0;d<this.aUICmdMap[a].length;d++){b=this.aUICmdMap[a][d];this.oApp.exec("ENABLE_COMMAND",[b])}}},$ON_DISABLE_UI:function(a){var b=this.htUIList[a];if(b){c(b).addClass("off");c(b).removeClass("hover").parent("span").removeClass("hover");b.disabled=true;b="";if(this.aUICmdMap[a])for(var d=0;d<this.aUICmdMap[a].length;d++){b=this.aUICmdMap[a][d];this.oApp.exec("DISABLE_COMMAND",
|
||||
[b])}}},$ON_SELECT_UI:function(a){(a=this.htUIList[a])&&c(a).addClass("active")},$ON_DESELECT_UI:function(a){(a=this.htUIList[a])&&c(a).removeClass("active")},$ON_ENABLE_ALL_UI:function(){for(var a in this.htUIList)a&&this.oApp.exec("ENABLE_UI",[a]);c(this.toolbarArea).removeClass("off")},$ON_DISABLE_ALL_UI:function(){for(var a in this.htUIList)a&&this.oApp.exec("DISABLE_UI",[a]);c(this.toolbarArea).addClass("off");this.oApp.exec("HIDE_ACTIVE_LAYER",[])},$ON_MSG_STYLE_CHANGED:function(a,b){b==1?this.oApp.exec("SELECT_UI",
|
||||
[a]):this.oApp.exec("DESELECT_UI",[a])},$ON_REGISTER_UI_EVENT:function(a,b,d,c){this.aUICmdMap[a]||(this.aUICmdMap[a]=[]);this.aUICmdMap[a][this.aUICmdMap[a].length]=d;(a=this.htUIList[a])&&this.oApp.registerBrowserEvent(a,b,d,c)},$ON_POSITION_TOOLBAR_LAYER:function(a,b){a=c.$(a);b=c.$(b);if(a){b&&(b.tagName&&b.tagName=="BUTTON")&&b.parentNode.appendChild(a);a.style.left="0";var d=c(a).offset().left,d=d+a.offsetWidth,f=this.welToolbarArea.offset().left,f=f+this.toolbarArea.offsetWidth;if(d>f)a.style.left=
|
||||
f-d-5+"px"}},getToolbarButtonByUIName:function(a){return this.htUIList[a]}});xe.XE_EditingAreaManager=c.Class({name:"XE_EditingAreaManager",oActivePlugin:null,oIRField:null,bIsDirty:!1,$init:function(a,b,d,f,e){this.sInitialMode=a;this.oIRField=c.$(b);this._assignHTMLObjects(e);this.fOnBeforeUnload=f;this.oEditingMode={};this.elEditingAreaContainer.style.height=parseInt(d.nHeight||this.elEditingAreaContainer.offsetHeight)+"px";this.nMinHeight=d.nMinHeight||10;this.niMinWidth=d.nMinWidth||10},_assignHTMLObjects:function(a){a=
|
||||
c.$(a)||document;this.elEditingAreaContainer=c("DIV.xpress_xeditor_editing_area_container",a).get(0);this.elEditingAreaSkipUI=c("A.skip",a).get(0)},$BEFORE_MSG_APP_READY:function(){this.oApp.exec("ADD_APP_PROPERTY",["elEditingAreaContainer",this.elEditingAreaContainer]);this.oApp.exec("ADD_APP_PROPERTY",["getIR",c.fnBind(this.getIR,this)]);this.oApp.exec("ADD_APP_PROPERTY",["setIR",this.setIR]);this.oApp.exec("ADD_APP_PROPERTY",["getEditingMode",c.fnBind(this.getEditingMode,this)])},$ON_MSG_APP_READY:function(){this.oApp.exec("CHANGE_EDITING_MODE",
|
||||
[this.sInitialMode,true]);this.oApp.exec("LOAD_IR_FIELD",[false]);this.oApp.registerBrowserEvent(this.elEditingAreaSkipUI,"focus","MSG_EDITING_AREA_SIZE_CHANGED",[],50);this.oApp.registerBrowserEvent(this.elEditingAreaSkipUI,"blur","MSG_EDITING_AREA_SIZE_CHANGED",[],50)},$AFTER_MSG_APP_READY:function(){this.oApp.exec("UPDATE_IR_FIELD",[])},$ON_LOAD_IR_FIELD:function(a){this.oApp.setIR(this.oIRField.value,a)},$ON_UPDATE_IR_FIELD:function(){this.oIRField.value=this.oApp.getIR()},$BEFORE_CHANGE_EDITING_MODE:function(a){this._oPrevActivePlugin=
|
||||
this.oActivePlugin;this.oActivePlugin=this.oEditingMode[a]},$AFTER_CHANGE_EDITING_MODE:function(a,b){if(this._oPrevActivePlugin){this.oApp.exec("SET_IR",[this._oPrevActivePlugin.getIR()]);this.oApp.exec("ENABLE_UI",[this._oPrevActivePlugin.sMode]);this._setEditingAreaDimension()}this.oApp.exec("DISABLE_UI",[this.oActivePlugin.sMode]);b||this.oApp.exec("FOCUS",[])},$ON_SET_IS_DIRTY:function(a){this.bIsDirty=a},$ON_FOCUS:function(){this.oActivePlugin&&typeof this.oActivePlugin.setIR=="function"&&this.oActivePlugin.focus()},
|
||||
$BEFORE_SET_IR:function(a,b){b||this.oApp.exec("RECORD_UNDO_ACTION",["SET CONTENTS"])},$ON_SET_IR:function(a){this.oActivePlugin&&typeof this.oActivePlugin.setIR=="function"&&this.oActivePlugin.setIR(a)},$AFTER_SET_IR:function(a,b){b||this.oApp.exec("RECORD_UNDO_ACTION",["SET CONTENTS"])},$ON_REGISTER_EDITING_AREA:function(a){this.oEditingMode[a.sMode]=a;this.attachDocumentEvents(a.oEditingArea)},$ON_MSG_EDITING_AREA_RESIZE_STARTED:function(){this.oActivePlugin.elEditingArea.style.display="none";
|
||||
this.iStartingHeight=parseInt(this.elEditingAreaContainer.style.height)},$ON_RESIZE_EDITING_AREA:function(a,b){var d=parseInt(a),c=parseInt(b);if(d<this.niMinWidth)d=this.niMinWidth;if(c<this.nMinHeight)c=this.nMinHeight;if(a)this.elEditingAreaContainer.style.width=d+"px";if(b)this.elEditingAreaContainer.style.height=c+"px"},$ON_RESIZE_EDITING_AREA_BY:function(a,b){var d=parseInt(a),c=parseInt(b);this.oApp.exec("RESIZE_EDITING_AREA",[this.elEditingAreaContainer.style.width?parseInt(this.elEditingAreaContainer.style.width)+
|
||||
d:null,this.elEditingAreaContainer.style.height?this.iStartingHeight+c:null])},$ON_MSG_EDITING_AREA_RESIZE_ENDED:function(){this.oActivePlugin.elEditingArea.style.display="block";this._setEditingAreaDimension()},_setEditingAreaDimension:function(){this.oActivePlugin.elEditingArea.style.height=this.elEditingAreaContainer.style.height;this.oActivePlugin.elEditingArea.style.width=this.elEditingAreaContainer.style.width},attachDocumentEvents:function(a){this.oApp.registerBrowserEvent(a,"click","EVENT_EDITING_AREA_CLICK");
|
||||
this.oApp.registerBrowserEvent(a,"mousedown","EVENT_EDITING_AREA_MOUSEDOWN");this.oApp.registerBrowserEvent(a,"mousemove","EVENT_EDITING_AREA_MOUSEMOVE");this.oApp.registerBrowserEvent(a,"mouseup","EVENT_EDITING_AREA_MOUSEUP");this.oApp.registerBrowserEvent(a,"keydown","EVENT_EDITING_AREA_KEYDOWN");this.oApp.registerBrowserEvent(a,"keypress","EVENT_EDITING_AREA_KEYPRESS");this.oApp.registerBrowserEvent(a,"keyup","EVENT_EDITING_AREA_KEYUP")},getIR:function(){return this.oActivePlugin.getIR()},setIR:function(a,
|
||||
b){this.oApp.exec("SET_IR",[a,b])},getEditingMode:function(){return this.oActivePlugin.sMode}});xe.XE_EditingArea_HTMLSrc=c.Class({name:"XE_EditingArea_HTMLSrc",sMode:"HTMLSrc",textarea:null,$init:function(a){this.elEditingArea=this.textarea=c.$(a)},$BEFORE_MSG_APP_READY:function(){this.oEditingArea=this.textarea;this.oApp.exec("REGISTER_EDITING_AREA",[this])},$ON_CHANGE_EDITING_MODE:function(a){this.textarea.style.display=a==this.sMode?"block":"none"},$ON_PASTE_HTML:function(a){if(this.oApp.getEditingMode()==
|
||||
this.sMode){(new l(this.textarea)).paste(a);this.textarea.focus()}},getIR:function(){var a=this.textarea.value;return this.oApp.applyConverter?this.oApp.applyConverter(this.sMode+"_TO_IR",a):a},setIR:function(a){this.textarea.value=this.oApp.applyConverter?this.oApp.applyConverter("IR_TO_"+this.sMode,a):a},focus:function(){this.textarea.focus()}});var l=function(a){this._o=a};l.prototype.getSelection=function(){var a=this._o,b=[-1,-1];if(isNaN(this._o.selectionStart)){a.focus();var d=document.body.createTextRange(),
|
||||
c=null,c=document.selection.createRange().duplicate();d.moveToElementText(a);c.collapse(true);d.setEndPoint("EndToEnd",c);b[0]=d.text.length;c=document.selection.createRange().duplicate();d.moveToElementText(a);c.collapse(false);d.setEndPoint("EndToEnd",c);b[1]=d.text.length;a.blur()}else{b[0]=a.selectionStart;b[1]=a.selectionEnd}return b};l.prototype.setSelection=function(a,b){var d=this._o;typeof b=="undefined"&&(b=a);if(d.setSelectionRange)d.setSelectionRange(a,b);else if(d.createTextRange){var c=
|
||||
d.createTextRange();c.collapse(true);c.moveStart("character",a);c.moveEnd("character",b-a);c.select();d.blur()}};l.prototype.copy=function(){var a=this.getSelection();return this._o.value.substring(a[0],a[1])};l.prototype.paste=function(a){var b=this._o,d=this.getSelection(),c=b.value,e=c.substr(0,d[0]),c=c.substr(d[1]);b.value=e+a+c;b=0;if(typeof document.body.style.maxHeight=="undefined"){e=e.match(/\n/gi);b=e!=null?e.length:0}this.setSelection(d[0]+a.length-b)};l.prototype.cut=function(){var a=
|
||||
this.copy();this.paste("");return a};xe.XE_EditingArea_WYSIWYG=c.Class({name:"XE_EditingArea_WYSIWYG",status:xe.PLUGIN_STATUS.NOT_READY,sMode:"WYSIWYG",iframe:null,doc:null,iLastUndoRecorded:0,iMinUndoInterval:3E3,_nIFrameReadyCount:50,$init:function(a){this.iframe=c.$(a);this.initIframe();this.elEditingArea=a},$BEFORE_MSG_APP_READY:function(){this.oEditingArea=this.doc;this.oApp.exec("REGISTER_EDITING_AREA",[this]);this.oApp.exec("ADD_APP_PROPERTY",["getWYSIWYGWindow",c.fnBind(this.getWindow,this)]);
|
||||
this.oApp.exec("ADD_APP_PROPERTY",["getWYSIWYGDocument",c.fnBind(this.getDocument,this)])},$ON_MSG_APP_READY:function(){if(c.browser.msie){c(this.doc).unbind("keydown.ea").bind("keydown.ea",c.fnBind(function(a){if(this.doc.selection.type.toLowerCase()=="control"&&a.keyCode==8){this.oApp.exec("EXECCOMMAND",["delete",false,false]);a.preventDefault();a.stopPropagation()}},this));c(this.doc.body).unbind("mousedown.ea").bind("mousedown.ea",c.fnBind(function(){this._oIERange=null;this._bIERangeReset=true},
|
||||
this)).unbind("beforedeactivate.ea").bind("beforedeactivate.ea",c.fnBind(function(){if(!this._bIERangeReset){var a=this.getDocument().selection.createRange(0);this._oIERange=a.parentElement&&a.parentElement()&&a.parentElement().tagName=="INPUT"?this._oPrevIERange:a}},this)).unbind("mouseup.ea").bind("mouseup.ea",c.fnBind(function(){this._bIERangeReset=false},this))}},$ON_CHANGE_EDITING_MODE:function(a){if(a==this.sMode){this.iframe.style.display="block";this.oApp.exec("REFRESH_WYSIWYG",[]);this.oApp.exec("SET_EDITING_WINDOW",
|
||||
[this.getWindow()])}else this.iframe.style.display="none"},$AFTER_CHANGE_EDITING_MODE:function(){this._oIERange=null},$ON_REFRESH_WYSIWYG:function(){if(c.browser.mozilla){this._disableWYSIWYG();this._enableWYSIWYG()}},$ON_ENABLE_WYSIWYG:function(){this._enableWYSIWYG()},$ON_DISABLE_WYSIWYG:function(){this._disableWYSIWYG()},$ON_EVENT_EDITING_AREA_KEYDOWN:function(a){if(a.ctrlKey){switch(a.keyCode){case 37:this.oApp.exec("EXECCOMMAND",["outdent",false,false]);break;case 39:this.oApp.exec("EXECCOMMAND",
|
||||
["indent",false,false]);break;case 49:case 50:case 51:case 52:case 53:case 54:this.oApp.exec("EXECCOMMAND",["FormatBlock",false,"<h"+(a.keyCode-48)+">"]);break;default:return}a.preventDefault();a.stopPropagation()}},$ON_EVENT_EDITING_AREA_KEYUP:function(a){a.keyCode==229||(a.keyCode==13||a.altKey||a.ctrlKey||a.keyCode>=33&&a.keyCode<=40||a.keyCode==16)||this._recordUndo(a)},$ON_PASTE_HTML:function(a,b){if(this.oApp.getEditingMode()==this.sMode){var d=b||this.oApp.getSelection();d.pasteHTML(a);if(!c.browser.msie){var f=
|
||||
d.placeStringBookmark();this.oApp.getWYSIWYGDocument().body.innerHTML=this.oApp.getWYSIWYGDocument().body.innerHTML;d.moveToBookmark(f);d.collapseToEnd();d.select();d.removeStringBookmark(f)}this.oApp.exec("RECORD_UNDO_ACTION",["INSERT HTML"])}},$AFTER_MSG_EDITING_AREA_RESIZE_ENDED:function(){this.oApp.exec("REFRESH_WYSIWYG",[])},$ON_RESTORE_IE_SELECTION:function(){if(this._oIERange){this._oIERange.select();this._oPrevIERange=this._oIERange;this._oIERange=null}},initIframe:function(){try{this.doc=
|
||||
this.iframe.contentWindow.document;if(this.doc==null||this.doc.location.href=="about:blank")throw Error("Access denied");this._enableWYSIWYG();this.status=xe.PLUGIN_STATUS.READY}catch(a){if(this._nIFrameReadyCount-- >0)setTimeout(c.fnBind(this.initIframe,this),100);else throw"iframe for WYSIWYG editing mode can't be initialized. Please check if the iframe document exists and is also accessable(cross-domain issues). ";}},getIR:function(){var a=this.doc.body.innerHTML;return this.oApp.applyConverter?
|
||||
this.oApp.applyConverter(this.sMode+"_TO_IR",a):a},setIR:function(a){this.doc.body.innerHTML=this.oApp.applyConverter?this.oApp.applyConverter("IR_TO_"+this.sMode,a):a;if(c.browser.mozilla&&this.doc.body.innerHTML=="")this.doc.body.innerHTML="<br>"},getWindow:function(){return this.iframe.contentWindow},getDocument:function(){return this.iframe.contentWindow.document},focus:function(){},_recordUndo:function(a){if(!(new Date-this.iLastUndoRecorded<this.iMinUndoInterval)){this.oApp.exec("RECORD_UNDO_ACTION",
|
||||
["KEYPRESS"]);this.iLastUndoRecorded=new Date;this.prevKeyCode=a.keyCode}},_enableWYSIWYG:function(){if(c.browser.msie){this.doc.body.disabled=true;this.doc.body.contentEditable=true;this.doc.body.removeAttribute("disabled")}else this.doc.designMode="on"},_disableWYSIWYG:function(){c.browser.msie?this.doc.body.contentEditable=false:this.doc.designMode="off"}});xe.XE_EditingAreaVerticalResizer=c.Class({name:"XE_EditingAreaVerticalResizer",oResizeGrip:null,$init:function(a){this._assignHTMLObjects(a);
|
||||
this.$FnMouseDown=c.fnBind(this._mousedown,this);this.$FnMouseMove=c.fnBind(this._mousemove,this);this.$FnMouseUp=c.fnBind(this._mouseup,this);c(this.oResizeGrip).bind("mousedown",this.$FnMouseDown)},_assignHTMLObjects:function(a){a=c.$(a)||document;this.oResizeGrip=c(".xpress_xeditor_editingArea_verticalResizer",a).get(0)},_mousedown:function(a){this.iStartHeight=a.clientY;c(document).bind("mousemove",this.$FnMouseMove);c(document).bind("mouseup",this.$FnMouseUp);this.oApp.exec("MSG_EDITING_AREA_RESIZE_STARTED",
|
||||
[this.$FnMouseDown,this.$FnMouseMove,this.$FnMouseUp])},_mousemove:function(a){this.oApp.exec("RESIZE_EDITING_AREA_BY",[0,a.clientY-this.iStartHeight])},_mouseup:function(){c(document).unbind("mousemove",this.$FnMouseMove);c(document).unbind("mouseup",this.$FnMouseUp);this.oApp.exec("MSG_EDITING_AREA_RESIZE_ENDED",[this.$FnMouseDown,this.$FnMouseMove,this.$FnMouseUp])}});xe.XE_ExecCommand=c.Class({name:"XE_ExecCommand",oEditingArea:null,$init:function(a){this.oEditingArea=a},$BEFORE_MSG_APP_READY:function(){if(this.oEditingArea&&
|
||||
this.oEditingArea.tagName=="IFRAME")this.oEditingArea=this.oEditingArea.contentWindow.document},$ON_MSG_APP_READY:function(){this.oApp.exec("REGISTER_HOTKEY",["ctrl+b","EXECCOMMAND",["bold",false,false]]);this.oApp.exec("REGISTER_HOTKEY",["ctrl+u","EXECCOMMAND",["underline",false,false]]);this.oApp.exec("REGISTER_HOTKEY",["ctrl+i","EXECCOMMAND",["italic",false,false]]);this.oApp.exec("REGISTER_HOTKEY",["ctrl+d","EXECCOMMAND",["strikethrough",false,false]]);this.oApp.exec("REGISTER_UI_EVENT",["bold",
|
||||
"click","EXECCOMMAND",["bold",false,false]]);this.oApp.exec("REGISTER_UI_EVENT",["underline","click","EXECCOMMAND",["underline",false,false]]);this.oApp.exec("REGISTER_UI_EVENT",["italic","click","EXECCOMMAND",["italic",false,false]]);this.oApp.exec("REGISTER_UI_EVENT",["lineThrough","click","EXECCOMMAND",["strikethrough",false,false]]);this.oApp.exec("REGISTER_UI_EVENT",["superscript","click","EXECCOMMAND",["superscript",false,false]]);this.oApp.exec("REGISTER_UI_EVENT",["subscript","click","EXECCOMMAND",
|
||||
["subscript",false,false]]);this.oApp.exec("REGISTER_UI_EVENT",["justifyleft","click","EXECCOMMAND",["justifyleft",false,false]]);this.oApp.exec("REGISTER_UI_EVENT",["justifycenter","click","EXECCOMMAND",["justifycenter",false,false]]);this.oApp.exec("REGISTER_UI_EVENT",["justifyright","click","EXECCOMMAND",["justifyright",false,false]]);this.oApp.exec("REGISTER_UI_EVENT",["justifyfull","click","EXECCOMMAND",["justifyfull",false,false]]);this.oApp.exec("REGISTER_UI_EVENT",["orderedlist","click","EXECCOMMAND",
|
||||
["insertorderedlist",false,false]]);this.oApp.exec("REGISTER_UI_EVENT",["unorderedlist","click","EXECCOMMAND",["insertunorderedlist",false,false]]);this.oApp.exec("REGISTER_UI_EVENT",["outdent","click","EXECCOMMAND",["outdent",false,false]]);this.oApp.exec("REGISTER_UI_EVENT",["indent","click","EXECCOMMAND",["indent",false,false]])},$BEFORE_EXECCOMMAND:function(a){this._bOnlyCursorChanged=false;this.oApp.exec("FOCUS",[]);if(a.match(/^bold|underline|italic|strikethrough|superscript|subscript$/i)&&
|
||||
this.oApp.getSelection().collapsed)this._bOnlyCursorChanged=true;this._bOnlyCursorChanged||this.oApp.exec("RECORD_UNDO_BEFORE_ACTION",[a])},$ON_EXECCOMMAND:function(a,b,d){this.oEditingArea.execCommand(a,b==""||b?b:false,d==""||d?d:false)},$AFTER_EXECCOMMAND:function(a){this._bOnlyCursorChanged||this.oApp.exec("RECORD_UNDO_AFTER_ACTION",[a]);this.oApp.exec("CHECK_STYLE_CHANGE",[])}});xe.XE_WYSIWYGEnterKey=c.Class({name:"XE_WYSIWYGEnterKey",unsupportedBrowser:["ie","opera"],oEditingArea:null,$init:function(a){this.oEditingArea=
|
||||
a},$BEFORE_MSG_APP_READY:function(){if(this.oEditingArea&&this.oEditingArea.tagName=="IFRAME")this.oEditingArea=this.oEditingArea.contentWindow.document},$ON_EVENT_EDITING_AREA_KEYDOWN:function(a){if(this.oApp.getEditingMode()=="WYSIWYG"&&!a.shiftKey&&a.keyCode==13){var b=this.oApp.getSelection(),d=b.placeStringBookmark(),c=b.getLineInfo(),e=c.oStart,c=c.oEnd;if(!e.bParentBreak||b.rxBlockContainer.test(e.oLineBreaker.tagName)){a.stopPropagation();a.preventDefault();a=this.oEditingArea.createElement("P");
|
||||
b.moveToBookmark(d);b.setStartBefore(e.oNode);b.surroundContents(a);b.collapseToEnd();e=this.oEditingArea.createElement("P");b.setEndAfter(c.oNode);b.surroundContents(e);b.removeStringBookmark(d);if(a.innerHTML=="")a.innerHTML="<br>";if(e.innerHTML=="")e.innerHTML="<br>";e.nextSibling&&e.nextSibling.tagName=="BR"&&e.parentNode.removeChild(e.nextSibling);b.selectNodeContents(e);b.collapseToStart();b.select();this.oApp.exec("CHECK_STYLE_CHANGE",[])}else b.removeStringBookmark(d)}}});xe.XE_WYSIWYGStyler=
|
||||
c.Class({name:"XE_WYSIWYGStyler",$PRECONDITION:function(){return this.oApp.getEditingMode()=="WYSIWYG"},$ON_SET_WYSIWYG_STYLE:function(a){var b=this.oApp.getSelection();if(b.collapsed){var d=this.oApp.getWYSIWYGDocument().createElement("SPAN");b.insertNode(d);d.innerHTML=unescape("%uFEFF");var f,e;for(e in a){f=a[e];typeof f=="string"&&(d.style[e]=f)}b.selectNodeContents(d);b.collapseToEnd();b._window.focus();b._window.document.body.focus();b.select();if(c.browser.mozilla&&c.browser.nVersion==3)d.innerHTML=
|
||||
""}else{this.oApp.exec("RECORD_UNDO_BEFORE_ACTION",["FONT STYLE"]);b.styleRange(a);b._window.focus();b.select();this.oApp.exec("RECORD_UNDO_AFTER_ACTION",["FONT STYLE"])}}});xe.XE_WYSIWYGStyleGetter=c.Class({name:"XE_WYSIWYGStyleGetter",hKeyUp:null,getStyleInterval:200,oStyleMap:{fontFamily:{type:"Value",css:"fontFamily"},fontSize:{type:"Value",css:"fontSize"},lineHeight:{type:"Value",css:"lineHeight",converter:function(a,b){return!a.match(/px$/)?a:Math.ceil(parseInt(a)/parseInt(b.fontSize)*10)/10}},
|
||||
bold:{command:"bold"},underline:{command:"underline"},italic:{command:"italic"},lineThrough:{command:"strikethrough"},superscript:{command:"superscript"},subscript:{command:"subscript"},justifyleft:{command:"justifyleft"},justifycenter:{command:"justifycenter"},justifyright:{command:"justifyright"},justifyfull:{command:"justifyfull"},orderedlist:{command:"insertorderedlist"},unorderedlist:{command:"insertunorderedlist"}},$init:function(){this.oStyle=this._getBlankStyle()},$PRECONDITION:function(){return this.oApp.getEditingMode()!=
|
||||
"WYSIWYG"?false:true},$ON_MSG_APP_READY:function(){this.oDocument=this.oApp.getWYSIWYGDocument();this.oApp.exec("ADD_APP_PROPERTY",["getCurrentStyle",c.fnBind(this.getCurrentStyle,this)])},$ON_EVENT_EDITING_AREA_MOUSEUP:function(){this.hKeyUp&&clearTimeout(this.hKeyUp);this.oApp.exec("CHECK_STYLE_CHANGE",[])},$ON_EVENT_EDITING_AREA_KEYUP:function(a){if(a.keyCode==8||a.keyCode>=33&&a.keyCode<=40||a.keyCode==45||a.keyCode==46){this.hKeyUp&&clearTimeout(this.hKeyUp);this.hKeyUp=setTimeout(c.fnBind(this.oApp.exec,
|
||||
this.oApp,"CHECK_STYLE_CHANGE",[]),this.getStyleInterval)}},$ON_CHECK_STYLE_CHANGE:function(){this._getStyle()},$ON_RESET_STYLE_STATUS:function(){var a=this._getBlankStyle(),b;for(b in a)this.oApp.exec("SET_STYLE_STATUS",[b,a[b]])},getCurrentStyle:function(){return this.oStyle},_check_style_change:function(){this.oApp.exec("CHECK_STYLE_CHANGE",[])},_getBlankStyle:function(){var a={},b;for(b in this.oStyleMap)a[b]=this.oStyleMap[b].type=="Value"?"":0;return a},_getStyle:function(){var a=this.oApp.getSelection(),
|
||||
b=a.getNodes(false,function(a){return!a.childNodes||a.childNodes.length==0?true:false}),d,a=b.length==0?this._getStyleOf(a.commonAncestorContainer):this._getStyleOf(b[0]);for(d in a){this.oStyleMap[d].converter&&(a[d]=this.oStyleMap[d].converter(a[d],a));this.oStyle[d]!=a[d]&&this.oApp.exec("MSG_STYLE_CHANGED",[d,a[d]])}this.oStyle=a},_getStyleOf:function(a){var b=this._getBlankStyle();if(!a)return b;if(a.nodeType==3)a=a.parentNode;var a=c(a),d,f;for(f in this.oStyle){d=this.oStyleMap[f];if(d.type&&
|
||||
d.type=="Value")if(d.css){d=a.css(d.css);f=="fontFamily"&&(d=d.split(/,/)[0]);b[f]=d}else{if(d.command)try{b[f]=this.oDocument.queryCommandState(d.command)}catch(e){}}else if(d.command)try{b[f]=this.oDocument.queryCommandState(d.command)?1:0}catch(g){}}return b}});xe.XE_FontSizeWithSelectUI=c.Class({name:"XE_FontSizeWithSelectUI",$init:function(a){this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){this.elFontSizeSelect=c("SELECT.xpress_xeditor_ui_fontSize_select",a).get(0)},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.elFontSizeSelect,
|
||||
"change","SET_FONTSIZE_FROM_SELECT_UI");this.elFontSizeSelect.selectedIndex=0},$ON_MSG_STYLE_CHANGED:function(a,b){if(a=="fontSize"){this.elFontSizeSelect.value=b;if(this.elFontSizeSelect.selectedIndex<0)this.elFontSizeSelect.selectedIndex=0}},$ON_SET_FONTSIZE_FROM_SELECT_UI:function(){var a=this.elFontSizeSelect.value;if(a){this.oApp.exec("SET_WYSIWYG_STYLE",[{fontSize:a}]);this.oApp.exec("CHECK_STYLE_CHANGE",[])}}});xe.XE_FontNameWithSelectUI=c.Class({name:"XE_FontNameWithSelectUI",$init:function(a){this._assignHTMLObjects(a)},
|
||||
_assignHTMLObjects:function(a){this.elFontNameSelect=c("SELECT.xpress_xeditor_ui_fontName_select",a).get(0)},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.elFontNameSelect,"change","SET_FONTNAME_FROM_SELECT_UI");this.elFontNameSelect.selectedIndex=0},$ON_MSG_STYLE_CHANGED:function(a,b){if(a=="fontFamily"){this.elFontNameSelect.value=b.toLowerCase();if(this.elFontNameSelect.selectedIndex<0)this.elFontNameSelect.selectedIndex=0}},$ON_SET_FONTNAME_FROM_SELECT_UI:function(){var a=this.elFontNameSelect.value;
|
||||
if(a){this.oApp.exec("SET_WYSIWYG_STYLE",[{fontFamily:a}]);this.oApp.exec("CHECK_STYLE_CHANGE",[])}}});xe.XE_LineHeight=c.Class({name:"XE_LineHeight",$init:function(a){this._assignHTMLObjects(a)},_assignHTMLObjects:function(){},$ON_SET_LINEHEIGHT:function(a){this.setLineHeight(a)},getLineHeight:function(){var a=this._getSelectedNodes(false),b,d,f;if(a.length==0)return-1;var e=a.length;if(e==0)f=-1;else{d=this._getLineWrapper(a[0]);f=this._getWrapperLineheight(d)}var g=this.oSelection.getStartNode();
|
||||
if(f>0)for(var h=1;h<e;h++)if(!this._isChildOf(a[h],b)&&a[h]){b=this._getLineWrapper(a[h]);if(b!=d){curHeight=this._getWrapperLineheight(b);if(curHeight!=f){f=-1;break}d=b}}b=this._getLineWrapper(a[e-1]);a=this.oSelection.getEndNode();selectText=c.fnBind(function(a,b){this.oSelection.setEndNodes(a,b);this.oSelection.select()},this,g,a);setTimeout(selectText,100);return f},setLineHeight:function(a){function b(a,b){if(!a)try{a=thisRef.oSelection.surroundContentsWithNewNode("P")}catch(d){a=thisRef.oSelection.surroundContentsWithNewNode("DIV")}a.style.lineHeight=
|
||||
b;return a}function d(a){for(;a&&a.tagName!="BODY";)a=xe.DOMFix.parentNode(a);return!a?false:true}thisRef=this;var f=this._getSelectedNodes(false);if(f.length!=0){var e,g,h=f.length;this.oApp.exec("RECORD_UNDO_BEFORE_ACTION",["LINEHEIGHT"]);g=this._getLineWrapper(f[0]);for(var k=g=b(g,a),j=1;j<h;j++){try{if(!d(xe.DOMFix.parentNode(f[j])))continue}catch(n){continue}if(!this._isChildOf(f[j],e)){e=this._getLineWrapper(f[j]);if(e!=g)g=e=b(e,a)}}setTimeout(c.fnBind(function(a,b){this.oSelection.setEndNodes(a,
|
||||
b);this.oSelection.select();this.oApp.exec("RECORD_UNDO_AFTER_ACTION",["LINEHEIGHT"])},this,k,e||k),100)}},_getSelectedNodes:function(a){if(!a)this.oSelection=this.oApp.getSelection();this.oSelection.collapsed&&this.oSelection.selectNode(this.oSelection.commonAncestorContainer);a=this.oSelection.getTextNodes();if(a.length==0){var b=this.oSelection.getStartNode();b?a[0]=b:a=[]}return a},_getWrapperLineheight:function(a){var b="";if(a&&a.style.lineHeight)b=a.style.lineHeight;else for(a=this.oSelection.commonAncesterContainer;a&&
|
||||
!this.oSelection.rxLineBreaker.test(a.tagName);){if(a&&a.style.lineHeight){b=a.style.lineHeight;break}a=xe.DOMFix.parentNode(a)}return b},_isChildOf:function(a,b){for(;a&&a.tagName!="BODY";){if(a==b)return true;a=xe.DOMFix.parentNode(a)}return false},_getLineWrapper:function(a){var b=this.oApp.getEmptySelection();b.selectNode(a);var a=b.getLineInfo(),d=a.oStart,c=a.oEnd,e,b=null,a=d.oNode;e=d.oLineBreaker;d=c.oNode;c=c.oLineBreaker;this.oSelection.setEndNodes(a,d);e==c&&(e.tagName=="P"||e.tagName==
|
||||
"DIV"?b=e:this.oSelection.setEndNodes(e.firstChild,e.lastChild));return b}});xe.XE_LineHeightWithSelectUI=c.Class({name:"XE_LineHeightWithSelectUI",_assignHTMLObjects:function(a){this.elLineHeightSelect=c("SELECT.xpress_xeditor_ui_lineHeight_select",a).get(0)},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.elLineHeightSelect,"change","SET_LINEHEIGHT_FROM_SELECT_UI");this.elLineHeightSelect.selectedIndex=0},$ON_MSG_STYLE_CHANGED:function(a,b){if(a=="lineHeight"){this.elLineHeightSelect.value=
|
||||
b;if(this.elLineHeightSelect.selectedIndex<0)this.elLineHeightSelect.selectedIndex=0}},$ON_SET_LINEHEIGHT_FROM_SELECT_UI:function(){var a=this.elLineHeightSelect.value;if(a){this.elLineHeightSelect.selectedIndex=0;this.oApp.exec("SET_LINEHEIGHT",[a]);this.oApp.exec("CHECK_STYLE_CHANGE",[])}}}).extend(xe.XE_LineHeight);xe.XE_ColorPalette=c.Class({name:"XE_ColorPalette",rxRGBColorPattern:/rgb\((\d+), ?(\d+), ?(\d+)\)/i,$init:function(a){this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){this.elColorPaletteLayer=
|
||||
c("UL.xpress_xeditor_color_palette",a).get(0)},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.elColorPaletteLayer,"click","EVENT_MOUSEUP_COLOR_PALETTE")},$ON_SHOW_COLOR_PALETTE:function(a,b){this.sCallbackCmd=a;this.oLayerContainer=b;this.oLayerContainer.insertBefore(this.elColorPaletteLayer,null);this.elColorPaletteLayer.style.display="block"},$ON_HIDE_COLOR_PALETTE:function(){this.elColorPaletteLayer.style.display="none"},$ON_COLOR_PALETTE_APPLY_COLOR:function(a){if(this.rxRGBColorPattern.test(a))var b=
|
||||
function(a){a=parseInt(a).toString(16);a.length<2&&(a="0"+a);return a.toUpperCase()},a=b(RegExp.$1),d=b(RegExp.$2),b=b(RegExp.$3),a="#"+a+d+b;this.oApp.exec(this.sCallbackCmd,[a])},$ON_EVENT_MOUSEUP_COLOR_PALETTE:function(a){a=a.target;a.style.backgroundColor&&this.oApp.exec("COLOR_PALETTE_APPLY_COLOR",[a.style.backgroundColor])}});xe.XE_FontColor=c.Class({name:"XE_FontColor",rxColorPattern:/^#?[0-9a-fA-F]{6}$|^rgb\(\d+, ?\d+, ?\d+\)$/i,$init:function(a){this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){this.elDropdownLayer=
|
||||
c("DIV.xpress_xeditor_fontcolor_layer",a).get(0)},$ON_MSG_APP_READY:function(){this.oApp.exec("REGISTER_UI_EVENT",["fontColor","click","TOGGLE_FONTCOLOR_LAYER"])},$ON_TOGGLE_FONTCOLOR_LAYER:function(){this.oApp.exec("TOGGLE_TOOLBAR_ACTIVE_LAYER",[this.elDropdownLayer,null,"SHOW_COLOR_PALETTE",["APPLY_FONTCOLOR",this.elDropdownLayer]])},$ON_APPLY_FONTCOLOR:function(a){if(this.rxColorPattern.test(a)){this.oApp.exec("SET_WYSIWYG_STYLE",[{color:a}]);this.oApp.exec("HIDE_ACTIVE_LAYER")}else alert(this.oApp.$MSG("XE_FontColor.invalidColorCode"))}});
|
||||
this.oDebugger?this._execMsgStepWithDebugger:this._execMsgStepWithoutDebugger).call(this,a,b,d)},_execMsgStepWithDebugger:function(a,b,d){this.oDebugger.log_MessageStepStart(a,b,d);var f=this._execMsgHandler("$"+a+"_"+b,d);this.oDebugger.log_MessageStepEnd(a,b,d);return f},_execMsgStepWithoutDebugger:function(a,b,d){return this._execMsgHandler("$"+a+"_"+b,d)},_execMsgHandler:function(a,b){this.oCommandMap[a]||this.createCommandMap(a);var d=this.oCommandMap[a],f=d.length;if(0==f)return!0;var c,g=!0;
|
||||
if(a.match(/^\$(BEFORE|ON|AFTER)_MSG_APP_READY$/))for(var h=0;h<f;h++){if(c=this._execHandler(d[h],a,b),!1===c){g=!1;break}}else for(h=0;h<f;h++)if("function"!=typeof d[h].$PRECONDITION||this._execHandler(d[h],"$PRECONDITION",[a,b]))if(c=this._execHandler(d[h],a,b),!1===c){g=!1;break}return g},_execHandler:function(a,b,d){return(this._execHandler=this.oDebugger?this._execHandlerWithDebugger:this._execHandlerWithoutDebugger).call(this,a,b,d)},_execHandlerWithDebugger:function(a,b,d){this.oDebugger.log_CallHandlerStart(a,
|
||||
b,d);var f=a[b].apply(a,d);this.oDebugger.log_CallHandlerEnd(a,b,d);return f},_execHandlerWithoutDebugger:function(a,b,d){return a[b].apply(a,d)},_doAddToCommandMap:function(a,b){"function"==typeof b[a]&&(this.oCommandMap[a][this.oCommandMap[a].length]=b)},_waitForPluginReady:function(){for(var a=!0,b=0;b<this.aPlugins.length;b++)if(this.aPlugins[b].status==xe.PLUGIN_STATUS.NOT_READY){a=!1;break}a?this._changeAppStatus(xe.APP_STATUS.READY):setTimeout(c.fnBind(this._waitForPluginReady,this),100)}});
|
||||
xe.APP_STATUS={NOT_READY:0,WAITING_FOR_PLUGINS_READY:1,READY:2};xe.PLUGIN_STATUS={NOT_READY:0,READY:1};xe.W3CDOMRange=c.Class({$init:function(a){this._document=a||document;this.collapsed=!0;this.endContainer=this.commonAncestorContainer=this._document.body;this.endOffset=0;this.startContainer=this._document.body;this.startOffset=0},cloneContents:function(){var a=this._document.createDocumentFragment(),b=this._document.createDocumentFragment(),d=this._getNodesInRange();if(1>d.length)return a;d=this._constructClonedTree(d,
|
||||
b);if(b=b.firstChild)for(var b=b.firstChild,f;b;)f=b.nextSibling,a.appendChild(b),b=f;d=this._splitTextEndNodes({oStartContainer:d.oStartContainer,iStartOffset:this.startOffset,oEndContainer:d.oEndContainer,iEndOffset:this.endOffset});d.oStartContainer&&d.oStartContainer.previousSibling&&xe.DOMFix.parentNode(d.oStartContainer).removeChild(d.oStartContainer.previousSibling);d.oEndContainer&&d.oEndContainer.nextSibling&&xe.DOMFix.parentNode(d.oEndContainer).removeChild(d.oEndContainer.nextSibling);
|
||||
return a},_constructClonedTree:function(a,b){var d=null,f=null,c=this.startContainer,g=this.endContainer;_recurConstructClonedTree=function(a,b,j,l){if(0>b)return b;j=b-1;var m=a[b].cloneNode(!1);a[b]==c&&(d=m);for(a[b]==g&&(f=m);0<=j&&xe.DOMFix.parentNode(a[j])==a[b];)j=this._recurConstructClonedTree(a,j,a[b],m,d,f);l.insertBefore(m,l.firstChild);return j};a[a.length]=xe.DOMFix.parentNode(a[a.length-1]);_recurConstructClonedTree(a,a.length-1,a[a.length-1],b);return{oStartContainer:d,oEndContainer:f}},
|
||||
cloneRange:function(){return this._copyRange(new xe.W3CDOMRange(this._document))},_copyRange:function(a){a.collapsed=this.collapsed;a.commonAncestorContainer=this.commonAncestorContainer;a.endContainer=this.endContainer;a.endOffset=this.endOffset;a.startContainer=this.startContainer;a.startOffset=this.startOffset;a._document=this._document;return a},collapse:function(a){a?(this.endContainer=this.startContainer,this.endOffset=this.startOffset):(this.startContainer=this.endContainer,this.startOffset=
|
||||
this.endOffset);this._updateRangeInfo()},compareBoundaryPoints:function(a,b){switch(a){case xe.W3CDOMRange.START_TO_START:return this._compareEndPoint(this.startContainer,this.startOffset,b.startContainer,b.startOffset);case xe.W3CDOMRange.START_TO_END:return this._compareEndPoint(this.endContainer,this.endOffset,b.startContainer,b.startOffset);case xe.W3CDOMRange.END_TO_END:return this._compareEndPoint(this.endContainer,this.endOffset,b.endContainer,b.endOffset);case xe.W3CDOMRange.END_TO_START:return this._compareEndPoint(this.startContainer,
|
||||
this.startOffset,b.endContainer,b.endOffset)}},_findBody:function(a){if(!a)return null;for(;a;){if("BODY"==a.tagName)return a;a=xe.DOMFix.parentNode(a)}return null},_compareEndPoint:function(a,b,d,f){if(!a||this._findBody(a)!=this._document.body)a=this._document.body,b=0;if(!d||this._findBody(d)!=this._document.body)d=this._document.body,f=0;var c=this._getCommonAncestorContainer(a,d);if(a!=c){for(;(oTmpNode=xe.DOMFix.parentNode(a))!=c;)a=oTmpNode;b=this._getPosIdx(a)+0.5}if(d!=c){for(;(oTmpNode=
|
||||
xe.DOMFix.parentNode(d))!=c;)d=oTmpNode;f=this._getPosIdx(d)+0.5}-1==f&&(f=b+1);return b<f?-1:b==f?0:1},_getCommonAncestorContainer:function(a,b){for(var d=b;a;){for(;d;){if(a==d)return a;d=xe.DOMFix.parentNode(d)}d=b;a=xe.DOMFix.parentNode(a)}return this._document.body},deleteContents:function(){if(!this.collapsed){this._splitTextEndNodesOfTheRange();var a=this._getNodesInRange();if(!(1>a.length)){for(var b=a[0].previousSibling;b&&this._isBlankTextNode(b);)b=b.previousSibling;var d,f;b||(d=xe.DOMFix.parentNode(a[0]),
|
||||
f=0);for(var c=0;c<a.length;c++){var g=a[c];g.firstChild||(d==g&&(f=this._getPosIdx(d),d=xe.DOMFix.parentNode(g)),xe.DOMFix.parentNode(g).removeChild(g))}b?"BODY"==b.tagName?this.setStartBefore(b):this.setStartAfter(b):this.setStart(d,f);this.collapse(!0)}}},extractContents:function(){var a=this.cloneContents();this.deleteContents();return a},insertNode:function(a){var b=null,d;"3"==this.startContainer.nodeType?(d=xe.DOMFix.parentNode(this.startContainer),b=this.startContainer.nodeValue.length<=this.startOffset?
|
||||
this.startContainer.nextSibling:this.startContainer.splitText(this.startOffset)):(d=this.startContainer,b=xe.DOMFix.childNodes(this.startContainer)[this.startOffset]);if(!b||!xe.DOMFix.parentNode(b))b=null;d.insertBefore(a,b);this.setStartBefore(a)},selectNode:function(a){this.setStartBefore(a);this.setEndAfter(a)},selectNodeContents:function(a){this.setStart(a,0);this.setEnd(a,xe.DOMFix.childNodes(a).length)},_endsNodeValidation:function(a,b){if(!a||this._findBody(a)!=this._document.body)throw Error("INVALID_NODE_TYPE_ERR oNode is not part of current document");
|
||||
3==a.nodeType?b>a.nodeValue.length&&(b=a.nodeValue.length):b>xe.DOMFix.childNodes(a).length&&(b=xe.DOMFix.childNodes(a).length);return b},setEnd:function(a,b){b=this._endsNodeValidation(a,b);this.endContainer=a;this.endOffset=b;(!this.startContainer||-1!=this._compareEndPoint(this.startContainer,this.startOffset,this.endContainer,this.endOffset))&&this.collapse(!1);this._updateRangeInfo()},setEndAfter:function(a){if(!a)throw Error("INVALID_NODE_TYPE_ERR in setEndAfter");"BODY"==a.tagName?this.setEnd(a,
|
||||
xe.DOMFix.childNodes(a).length):this.setEnd(xe.DOMFix.parentNode(a),this._getPosIdx(a)+1)},setEndBefore:function(a){if(!a)throw Error("INVALID_NODE_TYPE_ERR in setEndBefore");"BODY"==a.tagName?this.setEnd(a,0):this.setEnd(xe.DOMFix.parentNode(a),this._getPosIdx(a))},setStart:function(a,b){b=this._endsNodeValidation(a,b);this.startContainer=a;this.startOffset=b;(!this.endContainer||-1!=this._compareEndPoint(this.startContainer,this.startOffset,this.endContainer,this.endOffset))&&this.collapse(!0);
|
||||
this._updateRangeInfo()},setStartAfter:function(a){if(!a)throw Error("INVALID_NODE_TYPE_ERR in setStartAfter");"BODY"==a.tagName?this.setStart(a,xe.DOMFix.childNodes(a).length):this.setStart(xe.DOMFix.parentNode(a),this._getPosIdx(a)+1)},setStartBefore:function(a){if(!a)throw Error("INVALID_NODE_TYPE_ERR in setStartBefore");"BODY"==a.tagName?this.setStart(a,0):this.setStart(xe.DOMFix.parentNode(a),this._getPosIdx(a))},surroundContents:function(a){a.appendChild(this.extractContents());this.insertNode(a);
|
||||
this.selectNode(a)},toString:function(){var a=this._document.createElement("DIV");a.appendChild(this.cloneContents());return a.textContent||a.innerText||""},_isBlankTextNode:function(a){return 3==a.nodeType&&""==a.nodeValue?!0:!1},_getPosIdx:function(a){var b=0;for(a=a.previousSibling;a;a=a.previousSibling)b++;return b},_updateRangeInfo:function(){this.startContainer?(this.collapsed=this._isCollapsed(this.startContainer,this.startOffset,this.endContainer,this.endOffset),this.commonAncestorContainer=
|
||||
this._getCommonAncestorContainer(this.startContainer,this.endContainer)):this.init(this._document)},_isCollapsed:function(a,b,d,f){var c=!1;if(a==d&&b==f)c=!0;else if(a=this._getActualStartNode(a,b),d=this._getActualEndNode(d,f),a=this._getNextNode(this._getPrevNode(a)),d=this._getPrevNode(this._getNextNode(d)),a&&d&&"BODY"!=d.tagName&&(this._getNextNode(d)==a||d==a&&this._isBlankTextNode(d)))c=!0;return c},_splitTextEndNodesOfTheRange:function(){var a=this._splitTextEndNodes({oStartContainer:this.startContainer,
|
||||
iStartOffset:this.startOffset,oEndContainer:this.endContainer,iEndOffset:this.endOffset});this.startContainer=a.oStartContainer;this.startOffset=a.iStartOffset;this.endContainer=a.oEndContainer;this.endOffset=a.iEndOffset},_splitTextEndNodes:function(a){a=this._splitStartTextNode(a);return a=this._splitEndTextNode(a)},_splitStartTextNode:function(a){var b=a.oStartContainer,d=a.iStartOffset,f=a.oEndContainer,c=a.iEndOffset;if(!b||3!=b.nodeType||0==d||b.nodeValue.length<=d)return a;a=b.splitText(d);
|
||||
b==f&&(c-=d,f=a);return{oStartContainer:a,iStartOffset:0,oEndContainer:f,iEndOffset:c}},_splitEndTextNode:function(a){var b=a.oStartContainer,d=a.iStartOffset,f=a.oEndContainer,c=a.iEndOffset;if(!f||3!=f.nodeType||c>=f.nodeValue.length||0==c)return a;f.splitText(c);return{oStartContainer:b,iStartOffset:d,oEndContainer:f,iEndOffset:c}},_getNodesInRange:function(){if(this.collapsed)return[];var a=this._getActualStartNode(this.startContainer,this.startOffset),b=this._getActualEndNode(this.endContainer,
|
||||
this.endOffset);return this._getNodesBetween(a,b)},_getActualStartNode:function(a,b){var d=a;3==a.nodeType?b>=a.nodeValue.length?(d=this._getNextNode(a),"BODY"==d.tagName&&(d=null)):d=a:b<xe.DOMFix.childNodes(a).length?d=xe.DOMFix.childNodes(a)[b]:(d=this._getNextNode(a),"BODY"==d.tagName&&(d=null));return d},_getActualEndNode:function(a,b){var d=a;0==b?(d=this._getPrevNode(a),"BODY"==d.tagName&&(d=null)):d=3==a.nodeType?a:xe.DOMFix.childNodes(a)[b-1];return d},_getNextNode:function(a){return!a||
|
||||
"BODY"==a.tagName?this._document.body:a.nextSibling?a.nextSibling:this._getNextNode(xe.DOMFix.parentNode(a))},_getPrevNode:function(a){return!a||"BODY"==a.tagName?this._document.body:a.previousSibling?a.previousSibling:this._getPrevNode(xe.DOMFix.parentNode(a))},_getNodesBetween:function(a,b){var d=[];this._nNodesBetweenLen=0;if(!a||!b)return d;this._recurGetNextNodesUntil(a,b,d);return d},_recurGetNextNodesUntil:function(a,b,d){if(!a||!this._recurGetChildNodesUntil(a,b,d))return!1;for(var f=a.nextSibling;!f;){if(!(a=
|
||||
xe.DOMFix.parentNode(a)))return!1;d[this._nNodesBetweenLen++]=a;if(a==b)return!1;f=a.nextSibling}return this._recurGetNextNodesUntil(f,b,d)},_recurGetChildNodesUntil:function(a,b,d){if(!a)return!1;var f=!1,c=a;if(c.firstChild)for(c=c.firstChild;c;){if(!this._recurGetChildNodesUntil(c,b,d)){f=!0;break}c=c.nextSibling}d[this._nNodesBetweenLen++]=a;return f||a==b?!1:!0}});xe.W3CDOMRange.START_TO_START=0;xe.W3CDOMRange.START_TO_END=1;xe.W3CDOMRange.END_TO_END=2;xe.W3CDOMRange.END_TO_START=3;xe.XpressRange=
|
||||
c.Class({setWindow:function(a){this._window=a;this._document=a.document},$init:function(a){this.HUSKY_BOOMARK_START_ID_PREFIX="xpress_bookmark_start_";this.HUSKY_BOOMARK_END_ID_PREFIX="xpress_bookmark_end_";this.sBlockElement="P|DIV|LI|H[1-6]|PRE";this.sBlockContainer="BODY|TABLE|TH|TR|TD|UL|OL|BLOCKQUOTE|FORM";this.rxBlockElement=RegExp("^("+this.sBlockElement+")$");this.rxBlockContainer=RegExp("^("+this.sBlockContainer+")$");this.rxLineBreaker=RegExp("^("+this.sBlockElement+"|"+this.sBlockContainer+
|
||||
")$");this.setWindow(a);this.oSimpleSelection=new xe.SimpleSelection(this._window);this.selectionLoaded=this.oSimpleSelection.selectionLoaded;this.$super.$init(this._document)},select:function(){this.oSimpleSelection.selectRange(this)},setFromSelection:function(a){this.setRange(this.oSimpleSelection.getRangeAt(a))},setRange:function(a){this.setStart(a.startContainer,a.startOffset);this.setEnd(a.endContainer,a.endOffset)},setEndNodes:function(a,b){this.setEndAfter(b);this.setStartBefore(a)},splitTextAtBothEnds:function(){this._splitTextEndNodesOfTheRange()},
|
||||
getStartNode:function(){return this.collapsed?3==this.startContainer.nodeType?0==this.startOffset||this.startContainer.nodeValue.length<=this.startOffset?null:this.startContainer:null:3==this.startContainer.nodeType?this.startOffset>=this.startContainer.nodeValue.length?this._getNextNode(this.startContainer):this.startContainer:this.startOffset>=xe.DOMFix.childNodes(this.startContainer).length?this._getNextNode(this.startContainer):xe.DOMFix.childNodes(this.startContainer)[this.startOffset]},getEndNode:function(){return this.collapsed?
|
||||
this.getStartNode():3==this.endContainer.nodeType?0==this.endOffset?this._getPrevNode(this.endContainer):this.endContainer:0==this.endOffset?this._getPrevNode(this.endContainer):xe.DOMFix.childNodes(this.endContainer)[this.endOffset-1]},getNodeAroundRange:function(a,b){if(this.collapsed&&this.startContainer&&3==this.startContainer.nodeType)return this.startContainer;if(!this.collapsed||this.startContainer&&3==this.startContainer.nodeType)return this.getStartNode();var d,f,c;f=this.startOffset>=xe.DOMFix.childNodes(this.startContainer).length?
|
||||
this._getNextNode(this.startContainer):xe.DOMFix.childNodes(this.startContainer)[this.startOffset];d=0==this.endOffset?this._getPrevNode(this.endContainer):xe.DOMFix.childNodes(this.endContainer)[this.endOffset-1];a?(c=d,!c&&!b&&(c=f)):(c=f,!c&&!b&&(c=d));return c},_getXPath:function(a){for(var b="";a&&1==a.nodeType;)b="/"+a.tagName+"["+this._getPosIdx4XPath(a)+"]"+b,a=xe.DOMFix.parentNode(a);return b},_getPosIdx4XPath:function(a){for(var b=0,d=a.previousSibling;d;d=d.previousSibling)d.tagName==a.tagName&&
|
||||
b++;return b},_evaluateXPath:function(a,b){a=a.substring(1,a.length-1);for(var d=a.split(/\//),c=b.body,e=2;e<d.length&&c;e++){d[e].match(/([^\[]+)\[(\d+)/i);for(var g=RegExp.$1,h=RegExp.$2,c=xe.DOMFix.childNodes(c),k=[],j=c.length,l=0,m=0;m<j;m++)c[m].tagName==g&&(k[l++]=c[m]);c=k.length<h?null:k[h]}return c},_evaluateXPathBookmark:function(a){var b=a.nTextNodeIdx,d=a.nOffset;a=this._evaluateXPath(a.sXPath,this._document);if(-1<b&&a){for(var c=xe.DOMFix.childNodes(a),e=null;(e=c[b])&&3==e.nodeType&&
|
||||
e.nodeValue.length<d;)d-=e.nodeValue.length,b++;a=xe.DOMFix.childNodes(a)[b]}a||(a=this._document.body,d=0);return{elContainer:a,nOffset:d}},getXPathBookmark:function(){var a=-1,b={elContainer:this.startContainer,nOffset:this.startOffset},d=this.startContainer;3==d.nodeType&&(b=this._getFixedStartTextNode(),a=this._getPosIdx(b.elContainer),d=xe.DOMFix.parentNode(d));var a={sXPath:this._getXPath(d),nTextNodeIdx:a,nOffset:b.nOffset},b=-1,d={elContainer:this.endContainer,nOffset:this.endOffset},c=this.endContainer;
|
||||
3==c.nodeType&&(d=this._getFixedEndTextNode(),b=this._getPosIdx(d.elContainer),c=xe.DOMFix.parentNode(c));b={sXPath:this._getXPath(c),nTextNodeIdx:b,nOffset:d.nOffset};return[a,b]},moveToXPathBookmark:function(a){if(a){var b=this._evaluateXPathBookmark(a[0]);a=this._evaluateXPathBookmark(a[1]);b.elContainer&&a.elContainer&&(this.startContainer=b.elContainer,this.startOffset=b.nOffset,this.endContainer=a.elContainer,this.endOffset=a.nOffset)}},_getFixedTextContainer:function(a,b){for(;a&&3==a.nodeType&&
|
||||
a.previousSibling&&3==a.previousSibling.nodeType;)b+=a.previousSibling.nodeValue.length,a=a.previousSibling;return{elContainer:a,nOffset:b}},_getFixedStartTextNode:function(){return this._getFixedTextContainer(this.startContainer,this.startOffset)},_getFixedEndTextNode:function(){return this._getFixedTextContainer(this.endContainer,this.endOffset)},placeStringBookmark:function(){var a=(new Date).getTime(),b=this.cloneRange();b.collapseToEnd();var d=this._document.createElement("A");d.id=this.HUSKY_BOOMARK_END_ID_PREFIX+
|
||||
a;b.insertNode(d);b=this.cloneRange();b.collapseToStart();d=this._document.createElement("A");d.id=this.HUSKY_BOOMARK_START_ID_PREFIX+a;b.insertNode(d);this.moveToBookmark(a);return a},cloneRange:function(){return this._copyRange(new xe.XpressRange(this._window))},moveToBookmark:function(a){"object"!=typeof a?this.moveToStringBookmark(a):this.moveToXPathBookmark(a)},moveToStringBookmark:function(a){var b=this._document.getElementById(this.HUSKY_BOOMARK_START_ID_PREFIX+a);a=this._document.getElementById(this.HUSKY_BOOMARK_END_ID_PREFIX+
|
||||
a);b&&a&&(this.setEndBefore(a),this.setStartAfter(b))},removeStringBookmark:function(a){var b=this._document.getElementById(this.HUSKY_BOOMARK_START_ID_PREFIX+a);a=this._document.getElementById(this.HUSKY_BOOMARK_END_ID_PREFIX+a);b&&xe.DOMFix.parentNode(b).removeChild(b);a&&xe.DOMFix.parentNode(a).removeChild(a)},collapseToStart:function(){this.collapse(!0)},collapseToEnd:function(){this.collapse(!1)},createAndInsertNode:function(){tmpNode=this._document.createElement(tagName);this.insertNode(tmpNode);
|
||||
return tmpNode},getNodes:function(a,b){a&&this._splitTextEndNodesOfTheRange();var d=this._getNodesInRange(),c=[];if(!b)return d;for(var e=0;e<d.length;e++)b(d[e])&&(c[c.length]=d[e]);return c},getTextNodes:function(a){return this.getNodes(a,function(a){return 3==a.nodeType&&"\n"!=a.nodeValue&&""!=a.nodeValue?!0:!1})},surroundContentsWithNewNode:function(a){a=this._document.createElement(a);this.surroundContents(a);return a},isRangeinRange:function(a){var b=this.compareBoundaryPoints(this.START_TO_START,
|
||||
a),d=this.compareBoundaryPoints(this.START_TO_END,a),c=this.compareBoundaryPoints(this.END_TO_START,a);a=this.compareBoundaryPoints(this.END_TO_END,a);return 0>=b&&0<=a?!0:bIncludePartlyIncluded?1==d||-1==c?!1:!0:!1},isNodeInRange:function(a,b,d){var c=new xe.XpressRange(this._window);d&&a.firstChild?(c.setStartBefore(a.firstChild),c.setEndAfter(a.lastChild)):c.selectNode(a);return isRangeInRange(c,b)},pasteHTML:function(a){if(""==a)this.deleteContents();else{var b=this._document.createElement("DIV");
|
||||
b.innerHTML=a;a=b.firstChild;for(var d=b.lastChild,c=this.cloneRange(),e=c.placeStringBookmark();b.lastChild;)this.insertNode(b.lastChild);this.setEndNodes(a,d);c.moveToBookmark(e);c.deleteContents();c.removeStringBookmark(e)}},toString:function(){this.toString=xe.W3CDOMRange.prototype.toString;return this.toString()},toHTMLString:function(){var a=this._document.createElement("DIV");a.appendChild(this.cloneContents());return a.innerHTML},findAncestorByTagName:function(a){for(var b=this.commonAncestorContainer;b&&
|
||||
b.tagName!=a;)b=xe.DOMFix.parentNode(b);return b},selectNodeContents:function(a){if(a){var b=a.firstChild?a.firstChild:a;a=a.lastChild?a.lastChild:a;3==b.nodeType?this.setStart(b,0):this.setStartBefore(b);3==a.nodeType?this.setEnd(a,a.nodeValue.length):this.setEndAfter(a)}},styleRange:function(a,b,d){d=this._getStyleParentNodes(d);if(!(1>d.length)){for(var f,e,g=0;g<d.length;g++){for(var h in a)f=h,e=a[f],"string"==typeof e&&(d[g].style[f]=e);if(b)for(h in b)f=h,e=b[f],"string"==typeof e&&("class"==
|
||||
f?c(d[g]).addClass(e):d[g].setAttribute(f,e))}this.setStartBefore(d[0]);this.setEndAfter(d[d.length-1])}},_getStyleParentNodes:function(a){this._splitTextEndNodesOfTheRange();var b=this.getStartNode(),d=this.getEndNode(),f=this._getNodesInRange(),e=[],g=0,h,k,j,l,m,r=f.length;c(f).filter(function(){return!!this.childNodes.length});for(var n=0;n<r;n++)if((h=f[n])&&!(3!=h.nodeType||""==h.nodeValue)){m=xe.DOMFix.parentNode(h);if("SPAN"==m.tagName){var p=c(m).html();k=this._getVeryFirstRealChild(m);j=
|
||||
k==h?1:p.indexOf(k);-1!=j&&(k=this._getVeryLastRealChild(m),l=k==h?1:p.indexOf(k));if(-1!=j&&-1!=l){e[g++]=m;continue}}k=this._document.createElement("SPAN");m.insertBefore(k,h);k.appendChild(h);e[g++]=k;a&&k.setAttribute(a,"true")}this.setStartBefore(b);this.setEndAfter(d);return e},_getVeryFirstChild:function(a){return a.firstChild?this._getVeryFirstChild(a.firstChild):a},_getVeryLastChild:function(a){return a.lastChild?this._getVeryLastChild(a.lastChild):a},_getFirstRealChild:function(a){for(a=
|
||||
a.firstChild;a&&3==a.nodeType&&""==a.nodeValue;)a=a.nextSibling;return a},_getLastRealChild:function(a){for(a=a.lastChild;a&&3==a.nodeType&&""==a.nodeValue;)a=a.previousSibling;return a},_getVeryFirstRealChild:function(a){var b=this._getFirstRealChild(a);return b?this._getVeryFirstRealChild(b):a},_getVeryLastRealChild:function(a){var b=this._getLastRealChild(a);return b?this._getVeryLastChild(b):a},_getLineStartInfo:function(a){function b(a){a&&!c&&(k.test(a.tagName)?(g=a,c=e,h=!0):(e=a,d(a.previousSibling),
|
||||
c||b(xe.DOMFix.parentNode(a))))}function d(a){if(a&&!c)if(k.test(a.tagName))g=a,c=e,h=!1;else{if(a.firstChild&&"TABLE"!=a.tagName)for(var b=a.lastChild;b&&!c;)d(b),b=b.previousSibling;else e=a;c||d(a.previousSibling)}}var c=null,e=a,g=a,h=!0,k=this.rxLineBreaker;b(a);return{oNode:c,oLineBreaker:g,bParentBreak:h}},_getLineEndInfo:function(a){function b(a){a&&!c&&(k.test(a.tagName)?(g=a,c=e,h=!0):(e=a,d(a.nextSibling),c||b(xe.DOMFix.parentNode(a))))}function d(a){if(a&&!c)if(k.test(a.tagName))g=a,c=
|
||||
e,h=!1;else{if(a.firstChild&&"TABLE"!=a.tagName)for(var b=a.firstChild;b&&!c;)d(b),b=b.nextSibling;else e=a;c||d(a.nextSibling)}}var c=null,e=a,g=a,h=!0,k=this.rxLineBreaker;b(a);return{oNode:c,oLineBreaker:g,bParentBreak:h}},getLineInfo:function(){var a=this.getStartNode(),b=this.getEndNode();a||(a=this.getNodeAroundRange(!0,!0));b||(b=this.getNodeAroundRange(!0,!0));var a=this._getLineStartInfo(a),d=a.oNode,b=this._getLineEndInfo(b),c=b.oNode,d=this._compareEndPoint(xe.DOMFix.parentNode(d),this._getPosIdx(d),
|
||||
this.endContainer,this.endOffset),c=this._compareEndPoint(xe.DOMFix.parentNode(c),this._getPosIdx(c)+1,this.startContainer,this.startOffset);0>=d&&0<=c||(a=this.getNodeAroundRange(!1,!0),b=this.getNodeAroundRange(!1,!0),a=this._getLineStartInfo(a),b=this._getLineEndInfo(b));return{oStart:a,oEnd:b}}}).extend(xe.W3CDOMRange);xe.SimpleSelection=function(a){this.init=function(a){this._window=a||window;this._document=this._window.document};this.init(a);c.browser.msie?xe.SimpleSelectionImpl_IE.apply(this):
|
||||
xe.SimpleSelectionImpl_FF.apply(this);this.selectRange=function(a){this.selectNone();this.addRange(a)};this.selectionLoaded=!0;this._oSelection||(this.selectionLoaded=!1)};xe.SimpleSelectionImpl_FF=function(){this._oSelection=this._window.getSelection();this.getRangeAt=function(a){try{var b=this._oSelection.getRangeAt(a||0)}catch(d){return new xe.W3CDOMRange(this._document)}return this._FFRange2W3CRange(b)};this.addRange=function(a){a=this._W3CRange2FFRange(a);this._oSelection.addRange(a)};this.selectNone=
|
||||
function(){this._oSelection.removeAllRanges()};this._FFRange2W3CRange=function(a){var b=new xe.W3CDOMRange(this._document);b.setStart(a.startContainer,a.startOffset);b.setEnd(a.endContainer,a.endOffset);return b};this._W3CRange2FFRange=function(a){var b=this._document.createRange();b.setStart(a.startContainer,a.startOffset);b.setEnd(a.endContainer,a.endOffset);return b}};xe.SimpleSelectionImpl_IE=function(){this._oSelection=this._document.selection;this.getRangeAt=function(a){a=a||0;if("Control"==
|
||||
this._oSelection.type){var b=new xe.W3CDOMRange(this._document),d=this._oSelection.createRange().item(a);if(!d||d.ownerDocument!=this._document)return b;b.selectNode(d);return b}d=this._oSelection.createRangeCollection().item(a).parentElement();return!d||d.ownerDocument!=this._document?b=new xe.W3CDOMRange(this._document):this._IERange2W3CRange(this._oSelection.createRangeCollection().item(a))};this.addRange=function(a){this._W3CRange2IERange(a).select()};this.selectNone=function(){this._oSelection.empty()};
|
||||
this._W3CRange2IERange=function(a){var b=this._getIERangeAt(a.startContainer,a.startOffset);a=this._getIERangeAt(a.endContainer,a.endOffset);b.setEndPoint("EndToEnd",a);return b};this._getIERangeAt=function(a,b){var d=this._document.body.createTextRange(),c=this._getSelectableNodeAndOffsetForIE(a,b),e=c.iOffsetForIE;d.moveToElementText(c.oSelectableNodeForIE);d.collapse(c.bCollapseToStart);d.moveStart("character",e);return d};this._getSelectableNodeAndOffsetForIE=function(a,b){var d=this._document.body.createTextRange(),
|
||||
c=null,e=null,g=0;3==a.nodeType?(c=xe.DOMFix.parentNode(a),e=xe.DOMFix.childNodes(c),g=e.length):(c=a,e=xe.DOMFix.childNodes(c),g=b);for(var h=null,k=0,j=!0,l=0;l<g;l++)if(h=e[l],3==h.nodeType){if(h==a)break;k+=h.nodeValue.length}else d.moveToElementText(h),c=h,k=0,j=!1;3==a.nodeType&&(k+=b);return{oSelectableNodeForIE:c,iOffsetForIE:k,bCollapseToStart:j}};this._IERange2W3CRange=function(a){var b=new xe.W3CDOMRange(this._document),d=null,d=null,d=a.duplicate();d.collapse(!0);d=this._getW3CContainerAndOffset(d,
|
||||
!0);b.setStart(d.oContainer,d.iOffset);d=a.duplicate();d.collapse(!0);d.isEqual(a)?b.collapse(!0):(d=a.duplicate(),d.collapse(!1),d=this._getW3CContainerAndOffset(d),b.setEnd(d.oContainer,d.iOffset));return b};this._getW3CContainerAndOffset=function(a,b){for(var d=a.parentElement(),c=-1,e=this._document.body.createTextRange(),g=xe.DOMFix.childNodes(d),c=null,h=0,h=0;h<g.length;h++)if(3!=g[h].nodeType){e.moveToElementText(g[h]);if(0<=e.compareEndPoints("StartToStart",a))break;c=g[h]}if(0!=h&&3==g[h-
|
||||
1].nodeType){g=this._document.body.createTextRange();e=null;c?(g.moveToElementText(c),g.collapse(!1),e=c.nextSibling):(g.moveToElementText(d),g.collapse(!0),e=d.firstChild);d=a.duplicate();d.setEndPoint("StartToStart",g);for(c=d.text.length;c>e.nodeValue.length&&e.nextSibling;)c-=e.nodeValue.length,e=e.nextSibling;b&&(e.nextSibling&&3==e.nextSibling.nodeType&&c==e.nodeValue.length)&&(c-=e.nodeValue.length,e=e.nextSibling);d=e}else d=a.parentElement(),c=h;return{oContainer:d,iOffset:c}}};xe.DOMFix=
|
||||
new (c.Class({$init:function(){c.browser.msie||c.browser.opera?(this.childNodes=this._childNodes_Fix,this.parentNode=this._parentNode_Fix):(this.childNodes=this._childNodes_Native,this.parentNode=this._parentNode_Native)},_parentNode_Native:function(a){return a.parentNode},_parentNode_Fix:function(a){if(!a)return a;for(;a.previousSibling;)a=a.previousSibling;return a.parentNode},_childNodes_Native:function(a){return a.childNodes},_childNodes_Fix:function(a){var b=null,d=0;if(a){b=[];for(a=a.firstChild;a;)b[d++]=
|
||||
a,a=a.nextSibling}return b}}));xe.DraggableLayer=c.Class({$init:function(a,b){this.oOptions=c.extend({bModal:"false",oHandle:a,iMinX:-999999,iMinY:-999999,iMaxX:999999,iMaxY:999999},b);this.oHandle=this.oOptions.oHandle;a.style.display="block";a.style.position="absolute";a.style.zIndex="9999";this.aBasePosition=this.getBaseOffset(a);a.style.top=this.toInt(c(a).offset().top)-this.aBasePosition.top+"px";a.style.left=this.toInt(c(a).offset().left)-this.aBasePosition.left+"px";this.$FnMouseDown=c.fnBind(this._mousedown,
|
||||
this,a);this.$FnMouseMove=c.fnBind(this._mousemove,this,a);this.$FnMouseUp=c.fnBind(this._mouseup,this,a);c(this.oHandle).bind("mousedown",this.$FnMouseDown)},_mousedown:function(a,b){"INPUT"!=b.target.tagName&&(this.MouseOffsetY=b.pageY-this.toInt(a.style.top)-this.aBasePosition.top,this.MouseOffsetX=b.pageX-this.toInt(a.style.left)-this.aBasePosition.left,c(a).bind("mousemove",this.$FnMouseMove),c(a).bind("mouseup",this.$FnMouseUp))},_mousemove:function(a,b){var d=b.pageY-this.MouseOffsetY-this.aBasePosition.top,
|
||||
c=b.pageX-this.MouseOffsetX-this.aBasePosition.left;d<this.oOptions.iMinY&&(d=this.oOptions.iMinY);d>this.oOptions.iMaxY&&(d=this.oOptions.iMaxY);c<this.oOptions.iMinX&&(c=this.oOptions.iMinX);c>this.oOptions.iMaxX&&(c=this.oOptions.iMaxX);a.style.top=d+"px";a.style.left=c+"px"},_mouseup:function(a){c(a).unbind("mousemove",this.$FnMouseMove);c(a).unbind("mouseup",this.$FnMouseUp)},toInt:function(a){return parseInt(a)||0},findNonStatic:function(a){return!a?null:"BODY"==a.tagName||c(a).css("position").match(/absolute|relative/i)?
|
||||
a:this.findNonStatic(a.offsetParent)},getBaseOffset:function(a){a=this.findNonStatic(a.offsetParent);a=c(a).offset();return{top:a.top,left:a.left}}});xe.CorePlugin=c.Class({name:"CorePlugin",$init:function(a){this.funcOnReady=a},$AFTER_MSG_APP_READY:function(){this.oApp.exec("EXEC_ON_READY_FUNCTION",[])},$ON_ADD_APP_PROPERTY:function(a,b){this.oApp[a]=b},$ON_REGISTER_BROWSER_EVENT:function(a,b,d,c,e){this.oApp.registerBrowserEvent(a,b,d,c,e)},$ON_DISABLE_COMMAND:function(a){this.oApp.disableCommand(a,
|
||||
!0)},$ON_ENABLE_COMMAND:function(a){this.oApp.disableCommand(a,!1)},$ON_EXEC_ON_READY_FUNCTION:function(){"function"==typeof this.funcOnReady&&this.funcOnReady()}});xe.Utils=c.Class({name:"Utils",$init:function(){if(c.browser.msie&&6==c.browser.nVersion)try{document.execCommand("BackgroundImageCache",!1,!0)}catch(a){}},$ON_ATTACH_HOVER_EVENTS:function(a,b){b=b||"hover";a&&c(a).hover(function(){c(this).addClass(b)},function(){c(this).removeClass(b)})}});xe.XpressRangeManager=c.Class({name:"XpressRangeManager",
|
||||
oWindow:null,$init:function(a){this.oWindow=a||window},$BEFORE_MSG_APP_READY:function(){this.oWindow&&"IFRAME"==this.oWindow.tagName&&(this.oWindow=this.oWindow.contentWindow);this.oApp.exec("ADD_APP_PROPERTY",["getSelection",c.fnBind(this.getSelection,this)]);this.oApp.exec("ADD_APP_PROPERTY",["getEmptySelection",c.fnBind(this.getEmptySelection,this)])},$ON_SET_EDITING_WINDOW:function(a){this.oWindow=a},getEmptySelection:function(){return new xe.XpressRange(this.oWindow)},getSelection:function(){this.oApp.exec("RESTORE_IE_SELECTION",
|
||||
[]);var a=this.getEmptySelection();try{a.setFromSelection()}catch(b){}return a}});xe.Hotkey=c.Class({name:"Hotkey",storage:{},keyhash:{},$init:function(){this.storage={};this.keyhash={backspace:8,tab:9,enter:13,shift:16,ctrl:17,alt:18,meta:224,esc:27,space:32,pageup:33,pagedown:34,end:35,home:36,left:37,up:38,right:39,down:40,del:46,comma:188,period:190,slash:191,hyphen:109,equal:61};if(c.browser.msie||c.browser.safari)this.keyhash.hyphen=189,this.keyhash.equal=187,this.keyhash.meta=91},$ON_MSG_APP_READY:function(){c(this.oApp.getWYSIWYGDocument()||
|
||||
document).keydown(c.fnBind(this.keydown,this))},$ON_REGISTER_HOTKEY:function(a,b,d){d||(d=[]);b=c.fnBind(this.oApp.exec,this.oApp,b,d);a=this.normalize(a);if(!a)return!1;this.add(a,b)},add:function(a,b){"undefined"==typeof this.storage[a]?this.storage[a]=[b]:this.storage[a].push(b)},keydown:function(a){var b=[],d=this.keyhash;if(!(0<=c.inArray(a.keyCode,[d.shift,d.ctrl,d.alt,d.meta]))&&(a.shiftKey&&b.push("shift"),a.altKey&&b.push("alt"),a.ctrlKey&&b.push("ctrl"),a.metaKey&&b.push("meta"),b.length&&
|
||||
(1==b.length&&a.metaKey&&(b=["ctrl","meta"]),b.push(a.keyCode),b=b.join("+"),this.storage[b])))return c.each(this.storage[b],function(){this()}),!1},normalize:function(a){var b,d,f,e,g;a=(a||"").toLowerCase().split("+");b=d=f=e=g=!1;c.each(a,function(){var a=""+this;switch(a){case "shift":b=!0;case "alt":f=!0;case "ctrl":d=!0;case "meta":e=!0;default:g=a}});if(!g)return"";a=[];b&&a.push("shift");f&&a.push("alt");d&&a.push("ctrl");(e||d&&!b&&!f)&&a.push("meta");a.push(this.keyhash[g]||g.toUpperCase().charCodeAt(0));
|
||||
return a.join("+")}});xe.DialogLayerManager=c.Class({name:"DialogLayerManager",aMadeDraggable:null,aOpenedLayers:null,$init:function(){this.aMadeDraggable=[];this.aOpenedLayers=[]},$ON_SHOW_DIALOG_LAYER:function(a,b){a=c.$(a);b=c.$(b)||!1;a&&-1==c.inArray(a,this.aOpenedLayers)&&(this.oApp.exec("POSITION_DIALOG_LAYER",[a]),this.aOpenedLayers[this.aOpenedLayers.length]=a,-1==c.inArray(a,this.aMadeDraggable)?(new xe.DraggableLayer(a,{bModal:b,iMinY:0}),this.aMadeDraggable[this.aMadeDraggable.length]=
|
||||
a):a.style.display="block")},$ON_HIDE_LAST_DIALOG_LAYER:function(){this.oApp.exec("HIDE_DIALOG_LAYER",[this.aOpenedLayers[this.aOpenedLayers.length-1]])},$ON_HIDE_ALL_DIALOG_LAYER:function(){for(var a=this.aOpenedLayers.length-1;0<=a;a--)this.oApp.exec("HIDE_DIALOG_LAYER",[this.aOpenedLayers[a]])},$ON_HIDE_DIALOG_LAYER:function(a){if(a=c.$(a))a.style.display="none";this.aOpenedLayers=c.grep(this.aOpenedLayers,function(b){return b!=a})},$ON_SET_DIALOG_LAYER_POSITION:function(a,b,d){a.style.top=b;a.style.left=
|
||||
d}});xe.ActiveLayerManager=c.Class({name:"ActiveLayerManager",oCurrentLayer:null,$ON_TOGGLE_ACTIVE_LAYER:function(a,b,d,c,e){a==this.oCurrentLayer?this.oApp.exec("HIDE_ACTIVE_LAYER",[]):(this.oApp.exec("SHOW_ACTIVE_LAYER",[a,c,e]),b&&this.oApp.exec(b,d))},$ON_SHOW_ACTIVE_LAYER:function(a,b,d){a=c.$(a);this.sOnCloseCmd=b;this.aOnCloseParam=d;a!=this.oCurrentLayer&&(this.oApp.exec("HIDE_ACTIVE_LAYER",[]),a.style.display="block",this.oCurrentLayer=a)},$ON_HIDE_ACTIVE_LAYER:function(){var a=this.oCurrentLayer;
|
||||
a&&(a.style.display="none",this.oCurrentLayer=null,this.sOnCloseCmd&&this.oApp.exec(this.sOnCloseCmd,this.aOnCloseParam))},$ON_HIDE_CURRENT_ACTIVE_LAYER:function(){this.oApp.exec("HIDE_ACTIVE_LAYER",[])},$ON_EVENT_EDITING_AREA_KEYDOWN:function(){this.oApp.exec("HIDE_ACTIVE_LAYER",[])},$ON_EVENT_EDITING_AREA_MOUSEDOWN:function(){this.oApp.exec("HIDE_ACTIVE_LAYER",[])}});xe.StringConverterManager=c.Class({name:"StringConverterManager",oConverters:null,$init:function(){this.oConverters={}},$BEFORE_MSG_APP_READY:function(){this.oApp.exec("ADD_APP_PROPERTY",
|
||||
["applyConverter",c.fnBind(this.applyConverter,this)]);this.oApp.exec("ADD_APP_PROPERTY",["addConverter",c.fnBind(this.addConverter,this)])},applyConverter:function(a,b){var d=this.oConverters[a];if(!d)return b;for(var c=0;c<d.length;c++)b=d[c](b);return b},addConverter:function(a,b){this.oConverters[a]||(this.oConverters[a]=[]);this.oConverters[a][this.oConverters[a].length]=b}});xe.MessageManager=c.Class({name:"MessageManager",oMessageMap:null,$init:function(a){this.oMessageMap=a},$BEFORE_MSG_APP_READY:function(){this.oApp.exec("ADD_APP_PROPERTY",
|
||||
["$MSG",c.fnBind(this.getMessage,this)])},getMessage:function(a){return this.oMessageMap[a]?unescape(this.oMessageMap[a]):a}});xe.XE_Toolbar=c.Class({name:"XE_Toolbar",toolbarArea:null,toolbarButton:null,uiNameTag:"uiName",sUIClassPrefix:"xpress_xeditor_ui_",aUICmdMap:null,$init:function(a){this.htUIList={};this.aUICmdMap={};this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){a=c.$(a)||document;this.toolbarArea=c(".tool",a).get(0);this.welToolbarArea=c(this.toolbarArea);this.aAllButtons=c("BUTTON",
|
||||
this.toolbarArea).get();a=this.toolbarArea.getElementsByTagName("LI");for(var b=a.length,d=RegExp(this.sUIClassPrefix+"([^ ]+)"),f=0;f<b;f++)if(d.test(a[f].className)){var e=RegExp.$1;null==this.htUIList[e]&&(this.htUIList[e]=c(">*:first-child",a[f]).get(0))}},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.toolbarArea,"mouseover","EVENT_TOOLBAR_MOUSEOVER",[]);this.oApp.registerBrowserEvent(this.toolbarArea,"mouseout","EVENT_TOOLBAR_MOUSEOUT",[]);this.oApp.exec("ADD_APP_PROPERTY",
|
||||
["getToolbarButtonByUIName",c.fnBind(this.getToolbarButtonByUIName,this)])},$ON_EVENT_TOOLBAR_MOUSEOVER:function(a){"BUTTON"==a.target.tagName&&c(a.target).addClass("hover").parent("span").addClass("hover")},$ON_EVENT_TOOLBAR_MOUSEOUT:function(a){"BUTTON"==a.target.tagName&&c(a.target).removeClass("hover").parent("span").removeClass("hover")},$ON_TOGGLE_TOOLBAR_ACTIVE_LAYER:function(a,b,d,c,e,g){this.oApp.exec("TOGGLE_ACTIVE_LAYER",[a,"MSG_TOOLBAR_LAYER_SHOWN",[a,b,d,c],e,g])},$ON_MSG_TOOLBAR_LAYER_SHOWN:function(a,
|
||||
b,d,c){this.oApp.exec("POSITION_TOOLBAR_LAYER",[a,b]);d&&this.oApp.exec(d,c)},$ON_SHOW_TOOLBAR_ACTIVE_LAYER:function(a,b,d,c){this.oApp.exec("SHOW_ACTIVE_LAYER",[a,b,d]);this.oApp.exec("POSITION_TOOLBAR_LAYER",[a,c])},$ON_ENABLE_UI:function(a){var b=this.htUIList[a];if(b&&(c(b).removeClass("off"),b.disabled=!1,b="",this.aUICmdMap[a]))for(var d=0;d<this.aUICmdMap[a].length;d++)b=this.aUICmdMap[a][d],this.oApp.exec("ENABLE_COMMAND",[b])},$ON_DISABLE_UI:function(a){var b=this.htUIList[a];if(b&&(c(b).addClass("off"),
|
||||
c(b).removeClass("hover").parent("span").removeClass("hover"),b.disabled=!0,b="",this.aUICmdMap[a]))for(var d=0;d<this.aUICmdMap[a].length;d++)b=this.aUICmdMap[a][d],this.oApp.exec("DISABLE_COMMAND",[b])},$ON_SELECT_UI:function(a){(a=this.htUIList[a])&&c(a).addClass("active")},$ON_DESELECT_UI:function(a){(a=this.htUIList[a])&&c(a).removeClass("active")},$ON_ENABLE_ALL_UI:function(){for(var a in this.htUIList)a&&this.oApp.exec("ENABLE_UI",[a]);c(this.toolbarArea).removeClass("off")},$ON_DISABLE_ALL_UI:function(){for(var a in this.htUIList)a&&
|
||||
this.oApp.exec("DISABLE_UI",[a]);c(this.toolbarArea).addClass("off");this.oApp.exec("HIDE_ACTIVE_LAYER",[])},$ON_MSG_STYLE_CHANGED:function(a,b){1==b?this.oApp.exec("SELECT_UI",[a]):this.oApp.exec("DESELECT_UI",[a])},$ON_REGISTER_UI_EVENT:function(a,b,d,c){this.aUICmdMap[a]||(this.aUICmdMap[a]=[]);this.aUICmdMap[a][this.aUICmdMap[a].length]=d;(a=this.htUIList[a])&&this.oApp.registerBrowserEvent(a,b,d,c)},$ON_POSITION_TOOLBAR_LAYER:function(a,b){a=c.$(a);b=c.$(b);if(a){b&&(b.tagName&&"BUTTON"==b.tagName)&&
|
||||
b.parentNode.appendChild(a);a.style.left="0";var d=c(a).offset().left,d=d+a.offsetWidth,f=this.welToolbarArea.offset().left,f=f+this.toolbarArea.offsetWidth;d>f&&(a.style.left=f-d-5+"px")}},getToolbarButtonByUIName:function(a){return this.htUIList[a]}});xe.XE_EditingAreaManager=c.Class({name:"XE_EditingAreaManager",oActivePlugin:null,oIRField:null,bIsDirty:!1,$init:function(a,b,d,f,e){this.sInitialMode=a;this.oIRField=c.$(b);this._assignHTMLObjects(e);this.fOnBeforeUnload=f;this.oEditingMode={};this.elEditingAreaContainer.style.height=
|
||||
parseInt(d.nHeight||this.elEditingAreaContainer.offsetHeight)+"px";this.nMinHeight=d.nMinHeight||10;this.niMinWidth=d.nMinWidth||10},_assignHTMLObjects:function(a){a=c.$(a)||document;this.elEditingAreaContainer=c("DIV.xpress_xeditor_editing_area_container",a).get(0);this.elEditingAreaSkipUI=c("A.skip",a).get(0)},$BEFORE_MSG_APP_READY:function(){this.oApp.exec("ADD_APP_PROPERTY",["elEditingAreaContainer",this.elEditingAreaContainer]);this.oApp.exec("ADD_APP_PROPERTY",["getIR",c.fnBind(this.getIR,this)]);
|
||||
this.oApp.exec("ADD_APP_PROPERTY",["setIR",this.setIR]);this.oApp.exec("ADD_APP_PROPERTY",["getEditingMode",c.fnBind(this.getEditingMode,this)])},$ON_MSG_APP_READY:function(){this.oApp.exec("CHANGE_EDITING_MODE",[this.sInitialMode,!0]);this.oApp.exec("LOAD_IR_FIELD",[!1]);this.oApp.registerBrowserEvent(this.elEditingAreaSkipUI,"focus","MSG_EDITING_AREA_SIZE_CHANGED",[],50);this.oApp.registerBrowserEvent(this.elEditingAreaSkipUI,"blur","MSG_EDITING_AREA_SIZE_CHANGED",[],50)},$AFTER_MSG_APP_READY:function(){this.oApp.exec("UPDATE_IR_FIELD",
|
||||
[])},$ON_LOAD_IR_FIELD:function(a){this.oApp.setIR(this.oIRField.value,a)},$ON_UPDATE_IR_FIELD:function(){this.oIRField.value=this.oApp.getIR()},$BEFORE_CHANGE_EDITING_MODE:function(a){this._oPrevActivePlugin=this.oActivePlugin;this.oActivePlugin=this.oEditingMode[a]},$AFTER_CHANGE_EDITING_MODE:function(a,b){if(this._oPrevActivePlugin){var d=this._oPrevActivePlugin.getIR();this.oApp.exec("SET_IR",[d]);this.oApp.exec("ENABLE_UI",[this._oPrevActivePlugin.sMode]);this._setEditingAreaDimension()}this.oApp.exec("DISABLE_UI",
|
||||
[this.oActivePlugin.sMode]);b||this.oApp.exec("FOCUS",[])},$ON_SET_IS_DIRTY:function(a){this.bIsDirty=a},$ON_FOCUS:function(){this.oActivePlugin&&"function"==typeof this.oActivePlugin.setIR&&this.oActivePlugin.focus()},$BEFORE_SET_IR:function(a,b){b||this.oApp.exec("RECORD_UNDO_ACTION",["SET CONTENTS"])},$ON_SET_IR:function(a){this.oActivePlugin&&"function"==typeof this.oActivePlugin.setIR&&this.oActivePlugin.setIR(a)},$AFTER_SET_IR:function(a,b){b||this.oApp.exec("RECORD_UNDO_ACTION",["SET CONTENTS"])},
|
||||
$ON_REGISTER_EDITING_AREA:function(a){this.oEditingMode[a.sMode]=a;this.attachDocumentEvents(a.oEditingArea)},$ON_MSG_EDITING_AREA_RESIZE_STARTED:function(){this.oActivePlugin.elEditingArea.style.display="none";this.iStartingHeight=parseInt(this.elEditingAreaContainer.style.height)},$ON_RESIZE_EDITING_AREA:function(a,b){var d=parseInt(a),c=parseInt(b);d<this.niMinWidth&&(d=this.niMinWidth);c<this.nMinHeight&&(c=this.nMinHeight);a&&(this.elEditingAreaContainer.style.width=d+"px");b&&(this.elEditingAreaContainer.style.height=
|
||||
c+"px")},$ON_RESIZE_EDITING_AREA_BY:function(a,b){var d=parseInt(a),c=parseInt(b),d=this.elEditingAreaContainer.style.width?parseInt(this.elEditingAreaContainer.style.width)+d:null;this.oApp.exec("RESIZE_EDITING_AREA",[d,this.elEditingAreaContainer.style.height?this.iStartingHeight+c:null])},$ON_MSG_EDITING_AREA_RESIZE_ENDED:function(){this.oActivePlugin.elEditingArea.style.display="block";this._setEditingAreaDimension()},_setEditingAreaDimension:function(){this.oActivePlugin.elEditingArea.style.height=
|
||||
this.elEditingAreaContainer.style.height;this.oActivePlugin.elEditingArea.style.width=this.elEditingAreaContainer.style.width},attachDocumentEvents:function(a){this.oApp.registerBrowserEvent(a,"click","EVENT_EDITING_AREA_CLICK");this.oApp.registerBrowserEvent(a,"mousedown","EVENT_EDITING_AREA_MOUSEDOWN");this.oApp.registerBrowserEvent(a,"mousemove","EVENT_EDITING_AREA_MOUSEMOVE");this.oApp.registerBrowserEvent(a,"mouseup","EVENT_EDITING_AREA_MOUSEUP");this.oApp.registerBrowserEvent(a,"keydown","EVENT_EDITING_AREA_KEYDOWN");
|
||||
this.oApp.registerBrowserEvent(a,"keypress","EVENT_EDITING_AREA_KEYPRESS");this.oApp.registerBrowserEvent(a,"keyup","EVENT_EDITING_AREA_KEYUP")},getIR:function(){return this.oActivePlugin.getIR()},setIR:function(a,b){this.oApp.exec("SET_IR",[a,b])},getEditingMode:function(){return this.oActivePlugin.sMode}});xe.XE_EditingArea_HTMLSrc=c.Class({name:"XE_EditingArea_HTMLSrc",sMode:"HTMLSrc",textarea:null,$init:function(a){this.elEditingArea=this.textarea=c.$(a)},$BEFORE_MSG_APP_READY:function(){this.oEditingArea=
|
||||
this.textarea;this.oApp.exec("REGISTER_EDITING_AREA",[this])},$ON_CHANGE_EDITING_MODE:function(a){this.textarea.style.display=a==this.sMode?"block":"none"},$ON_PASTE_HTML:function(a){this.oApp.getEditingMode()==this.sMode&&((new n(this.textarea)).paste(a),this.textarea.focus())},getIR:function(){var a=this.textarea.value;return this.oApp.applyConverter?this.oApp.applyConverter(this.sMode+"_TO_IR",a):a},setIR:function(a){a=this.oApp.applyConverter?this.oApp.applyConverter("IR_TO_"+this.sMode,a):a;
|
||||
this.textarea.value=a},focus:function(){this.textarea.focus()}});var n=function(a){this._o=a};n.prototype.getSelection=function(){var a=this._o,b=[-1,-1];if(isNaN(this._o.selectionStart)){a.focus();var d=document.body.createTextRange(),c=null,c=document.selection.createRange().duplicate();d.moveToElementText(a);c.collapse(!0);d.setEndPoint("EndToEnd",c);b[0]=d.text.length;c=document.selection.createRange().duplicate();d.moveToElementText(a);c.collapse(!1);d.setEndPoint("EndToEnd",c);b[1]=d.text.length;
|
||||
a.blur()}else b[0]=a.selectionStart,b[1]=a.selectionEnd;return b};n.prototype.setSelection=function(a,b){var d=this._o;"undefined"==typeof b&&(b=a);if(d.setSelectionRange)d.setSelectionRange(a,b);else if(d.createTextRange){var c=d.createTextRange();c.collapse(!0);c.moveStart("character",a);c.moveEnd("character",b-a);c.select();d.blur()}};n.prototype.copy=function(){var a=this.getSelection();return this._o.value.substring(a[0],a[1])};n.prototype.paste=function(a){var b=this._o,d=this.getSelection(),
|
||||
c=b.value,e=c.substr(0,d[0]),c=c.substr(d[1]);b.value=e+a+c;b=0;"undefined"==typeof document.body.style.maxHeight&&(e=e.match(/\n/gi),b=null!=e?e.length:0);this.setSelection(d[0]+a.length-b)};n.prototype.cut=function(){var a=this.copy();this.paste("");return a};xe.XE_EditingArea_WYSIWYG=c.Class({name:"XE_EditingArea_WYSIWYG",status:xe.PLUGIN_STATUS.NOT_READY,sMode:"WYSIWYG",iframe:null,doc:null,iLastUndoRecorded:0,iMinUndoInterval:3E3,_nIFrameReadyCount:50,$init:function(a){this.iframe=c.$(a);this.initIframe();
|
||||
this.elEditingArea=a},$BEFORE_MSG_APP_READY:function(){this.oEditingArea=this.doc;this.oApp.exec("REGISTER_EDITING_AREA",[this]);this.oApp.exec("ADD_APP_PROPERTY",["getWYSIWYGWindow",c.fnBind(this.getWindow,this)]);this.oApp.exec("ADD_APP_PROPERTY",["getWYSIWYGDocument",c.fnBind(this.getDocument,this)])},$ON_MSG_APP_READY:function(){c.browser.msie&&(c(this.doc).unbind("keydown.ea").bind("keydown.ea",c.fnBind(function(a){"control"==this.doc.selection.type.toLowerCase()&&8==a.keyCode&&(this.oApp.exec("EXECCOMMAND",
|
||||
["delete",!1,!1]),a.preventDefault(),a.stopPropagation())},this)),c(this.doc.body).unbind("mousedown.ea").bind("mousedown.ea",c.fnBind(function(){this._oIERange=null;this._bIERangeReset=!0},this)).unbind("beforedeactivate.ea").bind("beforedeactivate.ea",c.fnBind(function(){if(!this._bIERangeReset){var a=this.getDocument().selection.createRange(0);this._oIERange=a.parentElement&&a.parentElement()&&"INPUT"==a.parentElement().tagName?this._oPrevIERange:a}},this)).unbind("mouseup.ea").bind("mouseup.ea",
|
||||
c.fnBind(function(){this._bIERangeReset=!1},this)))},$ON_CHANGE_EDITING_MODE:function(a){a==this.sMode?(this.iframe.style.display="block",this.oApp.exec("REFRESH_WYSIWYG",[]),this.oApp.exec("SET_EDITING_WINDOW",[this.getWindow()])):this.iframe.style.display="none"},$AFTER_CHANGE_EDITING_MODE:function(){this._oIERange=null},$ON_REFRESH_WYSIWYG:function(){c.browser.mozilla&&(this._disableWYSIWYG(),this._enableWYSIWYG())},$ON_ENABLE_WYSIWYG:function(){this._enableWYSIWYG()},$ON_DISABLE_WYSIWYG:function(){this._disableWYSIWYG()},
|
||||
$ON_EVENT_EDITING_AREA_KEYDOWN:function(a){if(a.ctrlKey){switch(a.keyCode){case 37:this.oApp.exec("EXECCOMMAND",["outdent",!1,!1]);break;case 39:this.oApp.exec("EXECCOMMAND",["indent",!1,!1]);break;case 49:case 50:case 51:case 52:case 53:case 54:this.oApp.exec("EXECCOMMAND",["FormatBlock",!1,"<h"+(a.keyCode-48)+">"]);break;default:return}a.preventDefault();a.stopPropagation()}},$ON_EVENT_EDITING_AREA_KEYUP:function(a){229==a.keyCode||(13==a.keyCode||a.altKey||a.ctrlKey||33<=a.keyCode&&40>=a.keyCode||
|
||||
16==a.keyCode)||this._recordUndo(a)},$ON_PASTE_HTML:function(a,b){if(this.oApp.getEditingMode()==this.sMode){var d=b||this.oApp.getSelection();d.pasteHTML(a);if(!c.browser.msie){var f=d.placeStringBookmark();this.oApp.getWYSIWYGDocument().body.innerHTML=this.oApp.getWYSIWYGDocument().body.innerHTML;d.moveToBookmark(f);d.collapseToEnd();d.select();d.removeStringBookmark(f)}this.oApp.exec("RECORD_UNDO_ACTION",["INSERT HTML"])}},$AFTER_MSG_EDITING_AREA_RESIZE_ENDED:function(){this.oApp.exec("REFRESH_WYSIWYG",
|
||||
[])},$ON_RESTORE_IE_SELECTION:function(){this._oIERange&&(this._oIERange.select(),this._oPrevIERange=this._oIERange,this._oIERange=null)},initIframe:function(){try{this.doc=this.iframe.contentWindow.document;if(null==this.doc||"about:blank"==this.doc.location.href)throw Error("Access denied");this._enableWYSIWYG();this.status=xe.PLUGIN_STATUS.READY}catch(a){if(0<this._nIFrameReadyCount--)setTimeout(c.fnBind(this.initIframe,this),100);else throw"iframe for WYSIWYG editing mode can't be initialized. Please check if the iframe document exists and is also accessable(cross-domain issues). ";
|
||||
}},getIR:function(){var a=this.doc.body.innerHTML;return this.oApp.applyConverter?this.oApp.applyConverter(this.sMode+"_TO_IR",a):a},setIR:function(a){a=this.oApp.applyConverter?this.oApp.applyConverter("IR_TO_"+this.sMode,a):a;this.doc.body.innerHTML=a;c.browser.mozilla&&""==this.doc.body.innerHTML&&(this.doc.body.innerHTML="<br>")},getWindow:function(){return this.iframe.contentWindow},getDocument:function(){return this.iframe.contentWindow.document},focus:function(){},_recordUndo:function(a){new Date-
|
||||
this.iLastUndoRecorded<this.iMinUndoInterval||(this.oApp.exec("RECORD_UNDO_ACTION",["KEYPRESS"]),this.iLastUndoRecorded=new Date,this.prevKeyCode=a.keyCode)},_enableWYSIWYG:function(){c.browser.msie?(this.doc.body.disabled=!0,this.doc.body.contentEditable=!0,this.doc.body.removeAttribute("disabled")):this.doc.designMode="on"},_disableWYSIWYG:function(){c.browser.msie?this.doc.body.contentEditable=!1:this.doc.designMode="off"}});xe.XE_EditingAreaVerticalResizer=c.Class({name:"XE_EditingAreaVerticalResizer",
|
||||
oResizeGrip:null,$init:function(a){this._assignHTMLObjects(a);this.$FnMouseDown=c.fnBind(this._mousedown,this);this.$FnMouseMove=c.fnBind(this._mousemove,this);this.$FnMouseUp=c.fnBind(this._mouseup,this);c(this.oResizeGrip).bind("mousedown",this.$FnMouseDown)},_assignHTMLObjects:function(a){a=c.$(a)||document;this.oResizeGrip=c(".xpress_xeditor_editingArea_verticalResizer",a).get(0)},_mousedown:function(a){this.iStartHeight=a.clientY;c(document).bind("mousemove",this.$FnMouseMove);c(document).bind("mouseup",
|
||||
this.$FnMouseUp);this.oApp.exec("MSG_EDITING_AREA_RESIZE_STARTED",[this.$FnMouseDown,this.$FnMouseMove,this.$FnMouseUp])},_mousemove:function(a){this.oApp.exec("RESIZE_EDITING_AREA_BY",[0,a.clientY-this.iStartHeight])},_mouseup:function(){c(document).unbind("mousemove",this.$FnMouseMove);c(document).unbind("mouseup",this.$FnMouseUp);this.oApp.exec("MSG_EDITING_AREA_RESIZE_ENDED",[this.$FnMouseDown,this.$FnMouseMove,this.$FnMouseUp])}});xe.XE_ExecCommand=c.Class({name:"XE_ExecCommand",oEditingArea:null,
|
||||
$init:function(a){this.oEditingArea=a},$BEFORE_MSG_APP_READY:function(){this.oEditingArea&&"IFRAME"==this.oEditingArea.tagName&&(this.oEditingArea=this.oEditingArea.contentWindow.document)},$ON_MSG_APP_READY:function(){this.oApp.exec("REGISTER_HOTKEY",["ctrl+b","EXECCOMMAND",["bold",!1,!1]]);this.oApp.exec("REGISTER_HOTKEY",["ctrl+u","EXECCOMMAND",["underline",!1,!1]]);this.oApp.exec("REGISTER_HOTKEY",["ctrl+i","EXECCOMMAND",["italic",!1,!1]]);this.oApp.exec("REGISTER_HOTKEY",["ctrl+d","EXECCOMMAND",
|
||||
["strikethrough",!1,!1]]);this.oApp.exec("REGISTER_UI_EVENT",["bold","click","EXECCOMMAND",["bold",!1,!1]]);this.oApp.exec("REGISTER_UI_EVENT",["underline","click","EXECCOMMAND",["underline",!1,!1]]);this.oApp.exec("REGISTER_UI_EVENT",["italic","click","EXECCOMMAND",["italic",!1,!1]]);this.oApp.exec("REGISTER_UI_EVENT",["lineThrough","click","EXECCOMMAND",["strikethrough",!1,!1]]);this.oApp.exec("REGISTER_UI_EVENT",["superscript","click","EXECCOMMAND",["superscript",!1,!1]]);this.oApp.exec("REGISTER_UI_EVENT",
|
||||
["subscript","click","EXECCOMMAND",["subscript",!1,!1]]);this.oApp.exec("REGISTER_UI_EVENT",["justifyleft","click","EXECCOMMAND",["justifyleft",!1,!1]]);this.oApp.exec("REGISTER_UI_EVENT",["justifycenter","click","EXECCOMMAND",["justifycenter",!1,!1]]);this.oApp.exec("REGISTER_UI_EVENT",["justifyright","click","EXECCOMMAND",["justifyright",!1,!1]]);this.oApp.exec("REGISTER_UI_EVENT",["justifyfull","click","EXECCOMMAND",["justifyfull",!1,!1]]);this.oApp.exec("REGISTER_UI_EVENT",["orderedlist","click",
|
||||
"EXECCOMMAND",["insertorderedlist",!1,!1]]);this.oApp.exec("REGISTER_UI_EVENT",["unorderedlist","click","EXECCOMMAND",["insertunorderedlist",!1,!1]]);this.oApp.exec("REGISTER_UI_EVENT",["outdent","click","EXECCOMMAND",["outdent",!1,!1]]);this.oApp.exec("REGISTER_UI_EVENT",["indent","click","EXECCOMMAND",["indent",!1,!1]])},$BEFORE_EXECCOMMAND:function(a){this._bOnlyCursorChanged=!1;this.oApp.exec("FOCUS",[]);a.match(/^bold|underline|italic|strikethrough|superscript|subscript$/i)&&this.oApp.getSelection().collapsed&&
|
||||
(this._bOnlyCursorChanged=!0);this._bOnlyCursorChanged||this.oApp.exec("RECORD_UNDO_BEFORE_ACTION",[a])},$ON_EXECCOMMAND:function(a,b,d){this.oEditingArea.execCommand(a,""==b||b?b:!1,""==d||d?d:!1)},$AFTER_EXECCOMMAND:function(a){this._bOnlyCursorChanged||this.oApp.exec("RECORD_UNDO_AFTER_ACTION",[a]);this.oApp.exec("CHECK_STYLE_CHANGE",[])}});xe.XE_WYSIWYGEnterKey=c.Class({name:"XE_WYSIWYGEnterKey",unsupportedBrowser:["ie","opera"],oEditingArea:null,$init:function(a){this.oEditingArea=a},$BEFORE_MSG_APP_READY:function(){this.oEditingArea&&
|
||||
"IFRAME"==this.oEditingArea.tagName&&(this.oEditingArea=this.oEditingArea.contentWindow.document)},$ON_EVENT_EDITING_AREA_KEYDOWN:function(a){if("WYSIWYG"==this.oApp.getEditingMode()&&!a.shiftKey&&13==a.keyCode){var b=this.oApp.getSelection(),d=b.placeStringBookmark(),c=b.getLineInfo(),e=c.oStart,c=c.oEnd;!e.bParentBreak||b.rxBlockContainer.test(e.oLineBreaker.tagName)?(a.stopPropagation(),a.preventDefault(),a=this.oEditingArea.createElement("P"),b.moveToBookmark(d),b.setStartBefore(e.oNode),b.surroundContents(a),
|
||||
b.collapseToEnd(),e=this.oEditingArea.createElement("P"),b.setEndAfter(c.oNode),b.surroundContents(e),b.removeStringBookmark(d),""==a.innerHTML&&(a.innerHTML="<br>"),""==e.innerHTML&&(e.innerHTML="<br>"),e.nextSibling&&"BR"==e.nextSibling.tagName&&e.parentNode.removeChild(e.nextSibling),b.selectNodeContents(e),b.collapseToStart(),b.select(),this.oApp.exec("CHECK_STYLE_CHANGE",[])):b.removeStringBookmark(d)}}});xe.XE_WYSIWYGStyler=c.Class({name:"XE_WYSIWYGStyler",$PRECONDITION:function(){return"WYSIWYG"==
|
||||
this.oApp.getEditingMode()},$ON_SET_WYSIWYG_STYLE:function(a){var b=this.oApp.getSelection();if(b.collapsed){var d=this.oApp.getWYSIWYGDocument().createElement("SPAN");b.insertNode(d);d.innerHTML=unescape("%uFEFF");var f,e;for(e in a)f=a[e],"string"==typeof f&&(d.style[e]=f);b.selectNodeContents(d);b.collapseToEnd();b._window.focus();b._window.document.body.focus();b.select();c.browser.mozilla&&3==c.browser.nVersion&&(d.innerHTML="")}else this.oApp.exec("RECORD_UNDO_BEFORE_ACTION",["FONT STYLE"]),
|
||||
b.styleRange(a),b._window.focus(),b.select(),this.oApp.exec("RECORD_UNDO_AFTER_ACTION",["FONT STYLE"])}});xe.XE_WYSIWYGStyleGetter=c.Class({name:"XE_WYSIWYGStyleGetter",hKeyUp:null,getStyleInterval:200,oStyleMap:{fontFamily:{type:"Value",css:"fontFamily"},fontSize:{type:"Value",css:"fontSize"},lineHeight:{type:"Value",css:"lineHeight",converter:function(a,b){return!a.match(/px$/)?a:Math.ceil(10*(parseInt(a)/parseInt(b.fontSize)))/10}},bold:{command:"bold"},underline:{command:"underline"},italic:{command:"italic"},
|
||||
lineThrough:{command:"strikethrough"},superscript:{command:"superscript"},subscript:{command:"subscript"},justifyleft:{command:"justifyleft"},justifycenter:{command:"justifycenter"},justifyright:{command:"justifyright"},justifyfull:{command:"justifyfull"},orderedlist:{command:"insertorderedlist"},unorderedlist:{command:"insertunorderedlist"}},$init:function(){this.oStyle=this._getBlankStyle()},$PRECONDITION:function(){return"WYSIWYG"!=this.oApp.getEditingMode()?!1:!0},$ON_MSG_APP_READY:function(){this.oDocument=
|
||||
this.oApp.getWYSIWYGDocument();this.oApp.exec("ADD_APP_PROPERTY",["getCurrentStyle",c.fnBind(this.getCurrentStyle,this)])},$ON_EVENT_EDITING_AREA_MOUSEUP:function(){this.hKeyUp&&clearTimeout(this.hKeyUp);this.oApp.exec("CHECK_STYLE_CHANGE",[])},$ON_EVENT_EDITING_AREA_KEYUP:function(a){if(8==a.keyCode||33<=a.keyCode&&40>=a.keyCode||45==a.keyCode||46==a.keyCode)this.hKeyUp&&clearTimeout(this.hKeyUp),this.hKeyUp=setTimeout(c.fnBind(this.oApp.exec,this.oApp,"CHECK_STYLE_CHANGE",[]),this.getStyleInterval)},
|
||||
$ON_CHECK_STYLE_CHANGE:function(){this._getStyle()},$ON_RESET_STYLE_STATUS:function(){var a=this._getBlankStyle(),b;for(b in a)this.oApp.exec("SET_STYLE_STATUS",[b,a[b]])},getCurrentStyle:function(){return this.oStyle},_check_style_change:function(){this.oApp.exec("CHECK_STYLE_CHANGE",[])},_getBlankStyle:function(){var a={},b;for(b in this.oStyleMap)a[b]="Value"==this.oStyleMap[b].type?"":0;return a},_getStyle:function(){var a=this.oApp.getSelection(),b=a.getNodes(!1,function(a){return!a.childNodes||
|
||||
0==a.childNodes.length?!0:!1}),d,a=0==b.length?this._getStyleOf(a.commonAncestorContainer):this._getStyleOf(b[0]);for(d in a)this.oStyleMap[d].converter&&(a[d]=this.oStyleMap[d].converter(a[d],a)),this.oStyle[d]!=a[d]&&this.oApp.exec("MSG_STYLE_CHANGED",[d,a[d]]);this.oStyle=a},_getStyleOf:function(a){var b=this._getBlankStyle();if(!a)return b;3==a.nodeType&&(a=a.parentNode);a=c(a);var d,f;for(f in this.oStyle)if(d=this.oStyleMap[f],d.type&&"Value"==d.type)if(d.css)d=a.css(d.css),"fontFamily"==f&&
|
||||
(d=d.split(/,/)[0]),b[f]=d;else{if(d.command)try{b[f]=this.oDocument.queryCommandState(d.command)}catch(e){}}else if(d.command)try{b[f]=this.oDocument.queryCommandState(d.command)?1:0}catch(g){}return b}});xe.XE_FontSizeWithSelectUI=c.Class({name:"XE_FontSizeWithSelectUI",$init:function(a){this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){this.elFontSizeSelect=c("SELECT.xpress_xeditor_ui_fontSize_select",a).get(0)},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.elFontSizeSelect,
|
||||
"change","SET_FONTSIZE_FROM_SELECT_UI");this.elFontSizeSelect.selectedIndex=0},$ON_MSG_STYLE_CHANGED:function(a,b){"fontSize"==a&&(this.elFontSizeSelect.value=b,0>this.elFontSizeSelect.selectedIndex&&(this.elFontSizeSelect.selectedIndex=0))},$ON_SET_FONTSIZE_FROM_SELECT_UI:function(){var a=this.elFontSizeSelect.value;a&&(this.oApp.exec("SET_WYSIWYG_STYLE",[{fontSize:a}]),this.oApp.exec("CHECK_STYLE_CHANGE",[]))}});xe.XE_FontNameWithSelectUI=c.Class({name:"XE_FontNameWithSelectUI",$init:function(a){this._assignHTMLObjects(a)},
|
||||
_assignHTMLObjects:function(a){this.elFontNameSelect=c("SELECT.xpress_xeditor_ui_fontName_select",a).get(0)},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.elFontNameSelect,"change","SET_FONTNAME_FROM_SELECT_UI");this.elFontNameSelect.selectedIndex=0},$ON_MSG_STYLE_CHANGED:function(a,b){"fontFamily"==a&&(this.elFontNameSelect.value=b.toLowerCase(),0>this.elFontNameSelect.selectedIndex&&(this.elFontNameSelect.selectedIndex=0))},$ON_SET_FONTNAME_FROM_SELECT_UI:function(){var a=this.elFontNameSelect.value;
|
||||
a&&(this.oApp.exec("SET_WYSIWYG_STYLE",[{fontFamily:a}]),this.oApp.exec("CHECK_STYLE_CHANGE",[]))}});xe.XE_LineHeight=c.Class({name:"XE_LineHeight",$init:function(a){this._assignHTMLObjects(a)},_assignHTMLObjects:function(){},$ON_SET_LINEHEIGHT:function(a){this.setLineHeight(a)},getLineHeight:function(){var a=this._getSelectedNodes(!1),b,d,f;if(0==a.length)return-1;var e=a.length;0==e?f=-1:(d=this._getLineWrapper(a[0]),f=this._getWrapperLineheight(d));var g=this.oSelection.getStartNode();if(0<f)for(var h=
|
||||
1;h<e;h++)if(!this._isChildOf(a[h],b)&&a[h]&&(b=this._getLineWrapper(a[h]),b!=d)){curHeight=this._getWrapperLineheight(b);if(curHeight!=f){f=-1;break}d=b}b=this._getLineWrapper(a[e-1]);a=this.oSelection.getEndNode();selectText=c.fnBind(function(a,b){this.oSelection.setEndNodes(a,b);this.oSelection.select()},this,g,a);setTimeout(selectText,100);return f},setLineHeight:function(a){function b(a,b){if(!a)try{a=thisRef.oSelection.surroundContentsWithNewNode("P")}catch(d){a=thisRef.oSelection.surroundContentsWithNewNode("DIV")}a.style.lineHeight=
|
||||
b;return a}thisRef=this;var d=this._getSelectedNodes(!1);if(0!=d.length){var f,e,g=d.length;this.oApp.exec("RECORD_UNDO_BEFORE_ACTION",["LINEHEIGHT"]);e=this._getLineWrapper(d[0]);for(var h=e=b(e,a),k=1;k<g;k++){try{var j;for(var l=xe.DOMFix.parentNode(d[k]);l&&"BODY"!=l.tagName;)l=xe.DOMFix.parentNode(l);j=l?!0:!1;if(!j)continue}catch(m){continue}this._isChildOf(d[k],f)||(f=this._getLineWrapper(d[k]),f!=e&&(e=f=b(f,a)))}setTimeout(c.fnBind(function(a,b){this.oSelection.setEndNodes(a,b);this.oSelection.select();
|
||||
this.oApp.exec("RECORD_UNDO_AFTER_ACTION",["LINEHEIGHT"])},this,h,f||h),100)}},_getSelectedNodes:function(a){a||(this.oSelection=this.oApp.getSelection());this.oSelection.collapsed&&this.oSelection.selectNode(this.oSelection.commonAncestorContainer);a=this.oSelection.getTextNodes();if(0==a.length){var b=this.oSelection.getStartNode();b?a[0]=b:a=[]}return a},_getWrapperLineheight:function(a){var b="";if(a&&a.style.lineHeight)b=a.style.lineHeight;else for(a=this.oSelection.commonAncesterContainer;a&&
|
||||
!this.oSelection.rxLineBreaker.test(a.tagName);){if(a&&a.style.lineHeight){b=a.style.lineHeight;break}a=xe.DOMFix.parentNode(a)}return b},_isChildOf:function(a,b){for(;a&&"BODY"!=a.tagName;){if(a==b)return!0;a=xe.DOMFix.parentNode(a)}return!1},_getLineWrapper:function(a){var b=this.oApp.getEmptySelection();b.selectNode(a);a=b.getLineInfo();var d=a.oStart,c=a.oEnd,e,b=null;a=d.oNode;e=d.oLineBreaker;d=c.oNode;c=c.oLineBreaker;this.oSelection.setEndNodes(a,d);e==c&&("P"==e.tagName||"DIV"==e.tagName?
|
||||
b=e:this.oSelection.setEndNodes(e.firstChild,e.lastChild));return b}});xe.XE_LineHeightWithSelectUI=c.Class({name:"XE_LineHeightWithSelectUI",_assignHTMLObjects:function(a){this.elLineHeightSelect=c("SELECT.xpress_xeditor_ui_lineHeight_select",a).get(0)},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.elLineHeightSelect,"change","SET_LINEHEIGHT_FROM_SELECT_UI");this.elLineHeightSelect.selectedIndex=0},$ON_MSG_STYLE_CHANGED:function(a,b){"lineHeight"==a&&(this.elLineHeightSelect.value=
|
||||
b,0>this.elLineHeightSelect.selectedIndex&&(this.elLineHeightSelect.selectedIndex=0))},$ON_SET_LINEHEIGHT_FROM_SELECT_UI:function(){var a=this.elLineHeightSelect.value;a&&(this.elLineHeightSelect.selectedIndex=0,this.oApp.exec("SET_LINEHEIGHT",[a]),this.oApp.exec("CHECK_STYLE_CHANGE",[]))}}).extend(xe.XE_LineHeight);xe.XE_ColorPalette=c.Class({name:"XE_ColorPalette",rxRGBColorPattern:/rgb\((\d+), ?(\d+), ?(\d+)\)/i,$init:function(a){this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){this.elColorPaletteLayer=
|
||||
c("UL.xpress_xeditor_color_palette",a).get(0)},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.elColorPaletteLayer,"click","EVENT_MOUSEUP_COLOR_PALETTE")},$ON_SHOW_COLOR_PALETTE:function(a,b){this.sCallbackCmd=a;this.oLayerContainer=b;this.oLayerContainer.insertBefore(this.elColorPaletteLayer,null);this.elColorPaletteLayer.style.display="block"},$ON_HIDE_COLOR_PALETTE:function(){this.elColorPaletteLayer.style.display="none"},$ON_COLOR_PALETTE_APPLY_COLOR:function(a){if(this.rxRGBColorPattern.test(a)){var b=
|
||||
function(a){a=parseInt(a).toString(16);2>a.length&&(a="0"+a);return a.toUpperCase()};a=b(RegExp.$1);var d=b(RegExp.$2),b=b(RegExp.$3);a="#"+a+d+b}this.oApp.exec(this.sCallbackCmd,[a])},$ON_EVENT_MOUSEUP_COLOR_PALETTE:function(a){a=a.target;a.style.backgroundColor&&this.oApp.exec("COLOR_PALETTE_APPLY_COLOR",[a.style.backgroundColor])}});xe.XE_FontColor=c.Class({name:"XE_FontColor",rxColorPattern:/^#?[0-9a-fA-F]{6}$|^rgb\(\d+, ?\d+, ?\d+\)$/i,$init:function(a){this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){this.elDropdownLayer=
|
||||
c("DIV.xpress_xeditor_fontcolor_layer",a).get(0)},$ON_MSG_APP_READY:function(){this.oApp.exec("REGISTER_UI_EVENT",["fontColor","click","TOGGLE_FONTCOLOR_LAYER"])},$ON_TOGGLE_FONTCOLOR_LAYER:function(){this.oApp.exec("TOGGLE_TOOLBAR_ACTIVE_LAYER",[this.elDropdownLayer,null,"SHOW_COLOR_PALETTE",["APPLY_FONTCOLOR",this.elDropdownLayer]])},$ON_APPLY_FONTCOLOR:function(a){this.rxColorPattern.test(a)?(this.oApp.exec("SET_WYSIWYG_STYLE",[{color:a}]),this.oApp.exec("HIDE_ACTIVE_LAYER")):alert(this.oApp.$MSG("XE_FontColor.invalidColorCode"))}});
|
||||
xe.XE_BGColor=c.Class({name:"XE_BGColor",rxColorPattern:/^#?[0-9a-fA-F]{6}$|^rgb\(\d+, ?\d+, ?\d+\)$/i,$init:function(a){this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){this.elDropdownLayer=c("DIV.xpress_xeditor_bgcolor_layer",a).get(0)},$ON_MSG_APP_READY:function(){this.oApp.exec("REGISTER_UI_EVENT",["bgColor","click","TOGGLE_BGCOLOR_LAYER"]);this.oApp.registerBrowserEvent(this.elDropdownLayer,"click","EVENT_APPLY_BGCOLOR",[])},$ON_TOGGLE_BGCOLOR_LAYER:function(){this.oApp.exec("TOGGLE_TOOLBAR_ACTIVE_LAYER",
|
||||
[this.elDropdownLayer,null,"SHOW_COLOR_PALETTE",["APPLY_BGCOLOR",this.elDropdownLayer]])},$ON_EVENT_APPLY_BGCOLOR:function(a){a=a.target;if(a.tagName=="SPAN")a=a.parentNode;a.tagName=="BUTTON"&&this.oApp.exec("APPLY_BGCOLOR",[a.style.backgroundColor,a.style.color])},$ON_APPLY_BGCOLOR:function(a,b){if(this.rxColorPattern.test(a)){var d={backgroundColor:a};if(b)d.color=b;this.oApp.exec("SET_WYSIWYG_STYLE",[d]);this.oApp.exec("HIDE_ACTIVE_LAYER")}else alert(this.oApp.$MSG("XE_BGColor.invalidColorCode"))}});
|
||||
[this.elDropdownLayer,null,"SHOW_COLOR_PALETTE",["APPLY_BGCOLOR",this.elDropdownLayer]])},$ON_EVENT_APPLY_BGCOLOR:function(a){a=a.target;"SPAN"==a.tagName&&(a=a.parentNode);"BUTTON"==a.tagName&&this.oApp.exec("APPLY_BGCOLOR",[a.style.backgroundColor,a.style.color])},$ON_APPLY_BGCOLOR:function(a,b){if(this.rxColorPattern.test(a)){var d={backgroundColor:a};b&&(d.color=b);this.oApp.exec("SET_WYSIWYG_STYLE",[d]);this.oApp.exec("HIDE_ACTIVE_LAYER")}else alert(this.oApp.$MSG("XE_BGColor.invalidColorCode"))}});
|
||||
xe.XE_Quote=c.Class({name:"XE_Quote",$init:function(a){this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){this.elDropdownLayer=c("DIV.xpress_xeditor_blockquote_layer",a).get(0)},$ON_MSG_APP_READY:function(){this.oApp.exec("REGISTER_UI_EVENT",["quote","click","TOGGLE_BLOCKQUOTE_LAYER"]);this.oApp.registerBrowserEvent(this.elDropdownLayer,"click","EVENT_APPLY_SEDITOR_BLOCKQUOTE",[])},$ON_TOGGLE_BLOCKQUOTE_LAYER:function(){this.oApp.exec("TOGGLE_TOOLBAR_ACTIVE_LAYER",[this.elDropdownLayer])},
|
||||
$ON_EVENT_APPLY_SEDITOR_BLOCKQUOTE:function(a){a=a.target;if(a.tagName=="BUTTON"){a=a.parentNode.className;a!="q8"?this._wrapBlock("BLOCKQUOTE",a):this._unwrapBlock("BLOCKQUOTE");this.oApp.exec("HIDE_ACTIVE_LAYER",[])}},_unwrapBlock:function(a){for(var b=this.oApp.getSelection().commonAncestorContainer;b&&b.tagName!=a;)b=b.parentNode;if(b){for(;b.firstChild;)b.parentNode.insertBefore(b.firstChild,b);b.parentNode.removeChild(b)}},_wrapBlock:function(a,b){var d=this.oApp.getSelection(),c=d.getLineInfo(),
|
||||
e=c.oStart,c=c.oEnd,g=/BODY|TD|LI/i,e=e.bParentBreak&&!g.test(e.oLineBreaker.tagName)?e.oNode.parentNode:e.oNode,c=c.bParentBreak&&!g.test(c.oLineBreaker.tagName)?c.oNode.parentNode:c.oNode;d.setStartBefore(e);d.setEndAfter(c);if(g=this._expandToTableStart(d,c)){c=g;d.setEndAfter(g)}if(g=this._expandToTableStart(d,e)){e=g;d.setStartBefore(g)}g=e;for(e=d.commonAncestorContainer;g&&g!=e&&g.parentNode!=e;)g=g.parentNode;oFormattingNode=d._document.createElement(a);if(b)oFormattingNode.className=b;g==
|
||||
e?e.insertBefore(oFormattingNode,e.firstChild):e.insertBefore(oFormattingNode,g);d.setStartAfter(oFormattingNode);d.setEndAfter(c);d.surroundContents(oFormattingNode);e=oFormattingNode.childNodes;for(g=e.length-1;g>=0;g--)if(e[g].nodeType==3||e[g].tagName=="BR"){for(var h=d._document.createElement("P"),c=e[g].nextSibling;g>=0&&e[g]&&(e[g].nodeType==3||e[g].tagName=="BR");)h.insertBefore(e[g--],h.firstChild);oFormattingNode.insertBefore(h,c);g++}if(oFormattingNode&&oFormattingNode.parentNode){h=d._document.createElement("P");
|
||||
h.innerHTML=unescape("<br/>");oFormattingNode.parentNode.insertBefore(h,oFormattingNode.nextSibling)}this.oApp.exec("RECORD_UNDO_ACTION",["Block Quote"]);return oFormattingNode},_expandToTableStart:function(a,b){for(var c=a.commonAncestorContainer,f=null,e=false;b&&!e;){b==c&&(e=true);if(/TBODY|TFOOT|THEAD|TR/i.test(b.tagName)){f=this._getTableRoot(b);break}b=b.parentNode}return f},_getTableRoot:function(a){for(;a&&a.tagName!="TABLE";)a=a.parentNode;return a}});xe.XE_SCharacter=c.Class({name:"XE_SCharacter",
|
||||
$ON_EVENT_APPLY_SEDITOR_BLOCKQUOTE:function(a){a=a.target;"BUTTON"==a.tagName&&(a=a.parentNode.className,"q8"!=a?this._wrapBlock("BLOCKQUOTE",a):this._unwrapBlock("BLOCKQUOTE"),this.oApp.exec("HIDE_ACTIVE_LAYER",[]))},_unwrapBlock:function(a){for(var b=this.oApp.getSelection().commonAncestorContainer;b&&b.tagName!=a;)b=b.parentNode;if(b){for(;b.firstChild;)b.parentNode.insertBefore(b.firstChild,b);b.parentNode.removeChild(b)}},_wrapBlock:function(a,b){var d=this.oApp.getSelection(),c=d.getLineInfo(),
|
||||
e=c.oStart,c=c.oEnd,g=/BODY|TD|LI/i,e=e.bParentBreak&&!g.test(e.oLineBreaker.tagName)?e.oNode.parentNode:e.oNode,c=c.bParentBreak&&!g.test(c.oLineBreaker.tagName)?c.oNode.parentNode:c.oNode;d.setStartBefore(e);d.setEndAfter(c);if(g=this._expandToTableStart(d,c))c=g,d.setEndAfter(g);if(g=this._expandToTableStart(d,e))e=g,d.setStartBefore(g);g=e;for(e=d.commonAncestorContainer;g&&g!=e&&g.parentNode!=e;)g=g.parentNode;oFormattingNode=d._document.createElement(a);b&&(oFormattingNode.className=b);g==e?
|
||||
e.insertBefore(oFormattingNode,e.firstChild):e.insertBefore(oFormattingNode,g);d.setStartAfter(oFormattingNode);d.setEndAfter(c);d.surroundContents(oFormattingNode);e=oFormattingNode.childNodes;for(g=e.length-1;0<=g;g--)if(3==e[g].nodeType||"BR"==e[g].tagName){for(var h=d._document.createElement("P"),c=e[g].nextSibling;0<=g&&e[g]&&(3==e[g].nodeType||"BR"==e[g].tagName);)h.insertBefore(e[g--],h.firstChild);oFormattingNode.insertBefore(h,c);g++}oFormattingNode&&oFormattingNode.parentNode&&(h=d._document.createElement("P"),
|
||||
h.innerHTML=unescape("<br/>"),oFormattingNode.parentNode.insertBefore(h,oFormattingNode.nextSibling));this.oApp.exec("RECORD_UNDO_ACTION",["Block Quote"]);return oFormattingNode},_expandToTableStart:function(a,b){for(var d=a.commonAncestorContainer,c=null,e=!1;b&&!e;){b==d&&(e=!0);if(/TBODY|TFOOT|THEAD|TR/i.test(b.tagName)){c=this._getTableRoot(b);break}b=b.parentNode}return c},_getTableRoot:function(a){for(;a&&"TABLE"!=a.tagName;)a=a.parentNode;return a}});xe.XE_SCharacter=c.Class({name:"XE_SCharacter",
|
||||
$init:function(a){this.bIE=c.browser.msie;this._assignHTMLObjects(a);this.charSet=[];this.charSet[0]=unescape("FF5B FF5D 3014 3015 3008 3009 300A 300B 300C 300D 300E 300F 3010 3011 2018 2019 201C 201D 3001 3002 %B7 2025 2026 %A7 203B 2606 2605 25CB 25CF 25CE 25C7 25C6 25A1 25A0 25B3 25B2 25BD 25BC 25C1 25C0 25B7 25B6 2664 2660 2661 2665 2667 2663 2299 25C8 25A3 25D0 25D1 2592 25A4 25A5 25A8 25A7 25A6 25A9 %B1 %D7 %F7 2260 2264 2265 221E 2234 %B0 2032 2033 2220 22A5 2312 2202 2261 2252 226A 226B 221A 223D 221D 2235 222B 222C 2208 220B 2286 2287 2282 2283 222A 2229 2227 2228 FFE2 21D2 21D4 2200 2203 %B4 FF5E 02C7 02D8 02DD 02DA 02D9 %B8 02DB %A1 %BF 02D0 222E 2211 220F 266D 2669 266A 266C 327F 2192 2190 2191 2193 2194 2195 2197 2199 2196 2198 321C 2116 33C7 2122 33C2 33D8 2121 2668 260F 260E 261C 261E %B6 2020 2021 %AE %AA %BA 2642 2640").replace(/(\S{4})/g,
|
||||
function(a){return"%u"+a}).split(" ");this.charSet[1]=unescape("%BD 2153 2154 %BC %BE 215B 215C 215D 215E %B9 %B2 %B3 2074 207F 2081 2082 2083 2084 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 FFE6 %24 FFE5 FFE1 20AC 2103 212B 2109 FFE0 %A4 2030 3395 3396 3397 2113 3398 33C4 33A3 33A4 33A5 33A6 3399 339A 339B 339C 339D 339E 339F 33A0 33A1 33A2 33CA 338D 338E 338F 33CF 3388 3389 33C8 33A7 33A8 33B0 33B1 33B2 33B3 33B4 33B5 33B6 33B7 33B8 33B9 3380 3381 3382 3383 3384 33BA 33BB 33BC 33BD 33BE 33BF 3390 3391 3392 3393 3394 2126 33C0 33C1 338A 338B 338C 33D6 33C5 33AD 33AE 33AF 33DB 33A9 33AA 33AB 33AC 33DD 33D0 33D3 33C3 33C9 33DC 33C6").replace(/(\S{4})/g,
|
||||
function(a){return"%u"+a}).split(" ");this.charSet[2]=unescape("3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 326A 326B 326C 326D 326E 326F 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 327A 327B 24D0 24D1 24D2 24D3 24D4 24D5 24D6 24D7 24D8 24D9 24DA 24DB 24DC 24DD 24DE 24DF 24E0 24E1 24E2 24E3 24E4 24E5 24E6 24E7 24E8 24E9 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 246A 246B 246C 246D 246E 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 320A 320B 320C 320D 320E 320F 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 321A 321B 249C 249D 249E 249F 24A0 24A1 24A2 24A3 24A4 24A5 24A6 24A7 24A8 24A9 24AA 24AB 24AC 24AD 24AE 24AF 24B0 24B1 24B2 24B3 24B4 24B5 2474 2475 2476 2477 2478 2479 247A 247B 247C 247D 247E 247F 2480 2481 2482").replace(/(\S{4})/g,
|
||||
|
|
@ -140,73 +139,72 @@ function(a){return"%u"+a}).split(" ");this.charSet[4]=unescape("0391 0392 0393 0
|
|||
function(a){return"%u"+a}).split(" ");this.charSet[5]=unescape("3041 3042 3043 3044 3045 3046 3047 3048 3049 304A 304B 304C 304D 304E 304F 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 305A 305B 305C 305D 305E 305F 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 306A 306B 306C 306D 306E 306F 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 307A 307B 307C 307D 307E 307F 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 308A 308B 308C 308D 308E 308F 3090 3091 3092 3093 30A1 30A2 30A3 30A4 30A5 30A6 30A7 30A8 30A9 30AA 30AB 30AC 30AD 30AE 30AF 30B0 30B1 30B2 30B3 30B4 30B5 30B6 30B7 30B8 30B9 30BA 30BB 30BC 30BD 30BE 30BF 30C0 30C1 30C2 30C3 30C4 30C5 30C6 30C7 30C8 30C9 30CA 30CB 30CC 30CD 30CE 30CF 30D0 30D1 30D2 30D3 30D4 30D5 30D6 30D7 30D8 30D9 30DA 30DB 30DC 30DD 30DE 30DF 30E0 30E1 30E2 30E3 30E4 30E5 30E6 30E7 30E8 30E9 30EA 30EB 30EC 30ED 30EE 30EF 30F0 30F1 30F2 30F3 30F4 30F5 30F6").replace(/(\S{4})/g,
|
||||
function(a){return"%u"+a}).split(" ")},_assignHTMLObjects:function(a){a=c.$(a)||document;this.elDropdownLayer=c("DIV.xpress_xeditor_sCharacter_layer",a).get(0);this.oTextField=c("INPUT",this.elDropdownLayer).get(0);this.oInsertButton=c("+ BUTTON",this.oTextField).get(0);this.aCloseButton=c("BUTTON.close",this.elDropdownLayer).get();this.aSCharList=c(".list",this.elDropdownLayer).get();a=c(">UL",this.elDropdownLayer).get(0);this.aLabelA=c("A",a).get()},$ON_MSG_APP_READY:function(){var a=c.fnBind(this.oApp.exec,
|
||||
this.oApp,"INSERT_SCHARACTERS",[this.oTextField.value]);c(this.oInsertButton).click(a);this.oApp.exec("SET_SCHARACTER_LIST",[this.charSet]);for(a=0;a<this.aLabelA.length;a++){var b=c.fnBind(this.oApp.exec,this.oApp,"CHANGE_SCHARACTER_SET",[a]);c(this.aLabelA[a]).mousedown(b);this._stopBrowserEvent(this.aLabelA[a],"click")}for(a=0;a<this.aCloseButton.length;a++)this.oApp.registerBrowserEvent(this.aCloseButton[a],"click","HIDE_ACTIVE_LAYER",[]);this.oApp.registerBrowserEvent(this.elDropdownLayer,"click",
|
||||
"EVENT_SCHARACTER_CLICKED",[]);this.oApp.exec("REGISTER_UI_EVENT",["sCharacter","click","TOGGLE_SCHARACTER_LAYER"])},$ON_TOGGLE_SCHARACTER_LAYER:function(){this.oTextField.value="";this.oSelection=this.oApp.getSelection();this.oApp.exec("TOGGLE_TOOLBAR_ACTIVE_LAYER",[this.elDropdownLayer])},$ON_EVENT_SCHARACTER_CLICKED:function(a){a=a.target;a.tagName=="BUTTON"&&a.parentNode.tagName=="LI"&&this.oApp.exec("SELECT_SCHARACTER",[a.firstChild.innerHTML])},$ON_SELECT_SCHARACTER:function(a){this.oTextField.value=
|
||||
this.oTextField.value+a;if(this.oTextField.createTextRange){a=this.oTextField.createTextRange();a.collapse(false);a.select()}else if(this.oTextField.selectionEnd){this.oTextField.selectionEnd=this.oTextField.value.length;this.oTextField.focus()}},$ON_INSERT_SCHARACTERS:function(){this.oSelection.pasteHTML(this.oTextField.value);this.oApp.exec("HIDE_ACTIVE_LAYER",[])},$ON_CHANGE_SCHARACTER_SET:function(a){for(var b=0;b<this.aSCharList.length;b++)if(this.aSCharList[b].style.display=="block"){if(b==
|
||||
a)return;c(this.aLabelA[b]).removeClass("on");this.aSCharList[b].style.display="none"}this._drawSCharList(a);c(this.aLabelA[a]).addClass("on");this.aSCharList[a].style.display="block"},$ON_SET_SCHARACTER_LIST:function(a){this.charSet=a;this.bSCharSetDrawn=Array(this.charSet.length);this._drawSCharList(0)},_drawSCharList:function(a){if(!this.bSCharSetDrawn[a]){this.bSCharSetDrawn[a]=true;var b=this.charSet[a].length,c=Array(b);this.aSCharList[a].innerHTML="";for(var f=0;f<b;f++){c[f]=document.createElement("LI");
|
||||
c[f].innerHTML='<button type="button"><span>'+unescape(this.charSet[a][f])+"</span></button>";this.aSCharList[a].appendChild(c[f])}}},_stopBrowserEvent:function(a,b){c(a).bind(b,function(a){a.stopPropagation();a.preventDefault()})}});xe.XE_UndoRedo=c.Class({name:"XE_UndoRedo",actionHistory:null,oCurStateIdx:null,iMinimumSizeChange:10,sBlankContentsForFF:"<br>",$init:function(){this.aUndoHistory=[];this.oCurStateIdx={nIdx:0,nStep:0}},$PRECONDITION:function(a){if(a.match(/_DO_RECORD_UNDO_HISTORY_AT$/))return true;
|
||||
try{if(this.oApp.getEditingMode()!="WYSIWYG")return false}catch(b){return false}return true},$BEFORE_MSG_APP_READY:function(){this.oApp.exec("DO_RECORD_UNDO_HISTORY_AT",[this.oCurStateIdx,"","",null])},$ON_MSG_APP_READY:function(){this.bFF=c.browser.mozilla;this.oApp.exec("ADD_APP_PROPERTY",["getUndoHistory",c.fnBind(this.getUndoHistory,this)]);this.oApp.exec("ADD_APP_PROPERTY",["getUndoStateIdx",c.fnBind(this.getUndoStateIdx,this)]);this.oApp.exec("REGISTER_UI_EVENT",["undo","click","UNDO"]);this.oApp.exec("REGISTER_UI_EVENT",
|
||||
["redo","click","REDO"]);this.oApp.exec("REGISTER_HOTKEY",["ctrl+z","UNDO"]);this.oApp.exec("REGISTER_HOTKEY",["ctrl+y","REDO"])},$ON_UNDO:function(){this.oApp.exec("DO_RECORD_UNDO_HISTORY",["KEYPRESS",false,false,1]);if(this.oCurStateIdx.nIdx!=0){if(this.oCurStateIdx.nStep>0)this.oCurStateIdx.nStep--;else{var a=this.aUndoHistory[this.oCurStateIdx.nIdx];this.oCurStateIdx.nIdx--;if(a.nTotalSteps>1)this.oCurStateIdx.nStep=0;else{a=this.aUndoHistory[this.oCurStateIdx.nIdx];this.oCurStateIdx.nStep=a.nTotalSteps-
|
||||
1}}this.oApp.exec("RESTORE_UNDO_HISTORY",[this.oCurStateIdx.nIdx,this.oCurStateIdx.nStep]);this.oApp.exec("CHECK_STYLE_CHANGE",[])}},$ON_REDO:function(){if(!(this.oCurStateIdx.nIdx>=this.aUndoHistory.length)){var a=this.aUndoHistory[this.oCurStateIdx.nIdx];if(!(this.oCurStateIdx.nIdx==this.aUndoHistory.length-1&&this.oCurStateIdx.nStep>=a.nTotalSteps-1)){if(this.oCurStateIdx.nStep<a.nTotalSteps-1)this.oCurStateIdx.nStep++;else{this.oCurStateIdx.nIdx++;a=this.aUndoHistory[this.oCurStateIdx.nIdx];this.oCurStateIdx.nStep=
|
||||
a.nTotalSteps-1}this.oApp.exec("RESTORE_UNDO_HISTORY",[this.oCurStateIdx.nIdx,this.oCurStateIdx.nStep]);this.oApp.exec("CHECK_STYLE_CHANGE",[])}}},$ON_RECORD_UNDO_ACTION:function(a){this.oApp.exec("DO_RECORD_UNDO_HISTORY",[a])},$ON_RECORD_UNDO_BEFORE_ACTION:function(a){this.oApp.exec("DO_RECORD_UNDO_HISTORY",[a,true,true])},$ON_RECORD_UNDO_AFTER_ACTION:function(a){this.oApp.exec("DO_RECORD_UNDO_HISTORY",[a,true,false])},$ON_RESTORE_UNDO_HISTORY:function(a,b){this.oCurStateIdx.nIdx=a;this.oCurStateIdx.nStep=
|
||||
b;var c=this.aUndoHistory[this.oCurStateIdx.nIdx],f=c.oBookmark[this.oCurStateIdx.nStep];this.oApp.setIR(c.sContent[this.oCurStateIdx.nStep],true);var e=this.oApp.getIR();this.bFF&&e==this.sBlankContentsForFF&&(e="");c.sContent[this.oCurStateIdx.nStep]=e;c=this.oApp.getEmptySelection();if(c.selectionLoaded){f?c.moveToXPathBookmark(f):c=this.oApp.getEmptySelection();c.select()}},$ON_DO_RECORD_UNDO_HISTORY:function(a,b,c,f){b=b||false;c=c||false;f=f||0;this.oCurStateIdx.nIdx!=this.aUndoHistory.length-
|
||||
1&&(f=1);var e=this.aUndoHistory[this.oCurStateIdx.nIdx],g=this.oApp.getIR(),h=e.sContent[this.oCurStateIdx.nStep];this.bFF&&g==this.sBlankContentsForFF&&(g="");if(!b)switch(f){case 0:if(Math.abs(h.length-g.length)<this.iMinimumSizeChange)return;break;case 1:if(h==g)return}h=this.oApp.getSelection();f=null;h.selectionLoaded&&(f=h.getXPathBookmark());h={nIdx:this.oCurStateIdx.nIdx,nStep:this.oCurStateIdx.nStep};h.nStep=b?c?0:1:0;if(h.nStep==0&&this.oCurStateIdx.nStep==e.nTotalSteps-1)h.nIdx=this.oCurStateIdx.nIdx+
|
||||
1;this.oApp.exec("DO_RECORD_UNDO_HISTORY_AT",[h,a,g,f])},$ON_DO_RECORD_UNDO_HISTORY_AT:function(a,b,c,f){if(a.nStep!=0){this.aUndoHistory[a.nIdx].nTotalSteps=a.nStep+1;this.aUndoHistory[a.nIdx].sContent[a.nStep]=c;this.aUndoHistory[a.nIdx].oBookmark[a.nStep]=f}else{b={sAction:b,nTotalSteps:1,sContent:[]};b.sContent[0]=c;b.oBookmark=[];b.oBookmark[0]=f;this.aUndoHistory.splice(a.nIdx,this.aUndoHistory.length-a.nIdx,b)}this.oCurStateIdx.nIdx=a.nIdx;this.oCurStateIdx.nStep=a.nStep},_getUndoHistory:function(){return this.aUndoHistory},
|
||||
_getUndoStateIdx:function(){return this.oCurStateIdx}});xe.XE_Hyperlink=c.Class({name:"XE_Hyperlink",sATagMarker:"HTTP://HUSKY_TMP.MARKER/",$init:function(a){this._assignHTMLObjects(a);this.sRXATagMarker=this.sATagMarker.replace(/\//g,"\\/").replace(/\./g,"\\.")},_assignHTMLObjects:function(a){this.oHyperlinkLayer=c("DIV.xpress_xeditor_hyperlink_layer",a).get(0);this.oLinkInput=c("INPUT[type=text]",this.oHyperlinkLayer).get(0);this.oBtnConfirm=c("BUTTON.confirm",this.oHyperlinkLayer).get(0);this.oBtnCancel=
|
||||
c("BUTTON.cancel",this.oHyperlinkLayer).get(0);this.oCbNewWin=c("INPUT[type=checkbox]",this.oHyperlinkLayer).get(0)},$ON_MSG_APP_READY:function(){this.oApp.exec("REGISTER_HOTKEY",["ctrl+k","XE_TOGGLE_HYPERLINK_LAYER",[]]);this.oApp.registerBrowserEvent(this.oBtnConfirm,"mousedown","XE_APPLY_HYPERLINK");this.oApp.registerBrowserEvent(this.oBtnCancel,"mousedown","HIDE_ACTIVE_LAYER");this.oApp.registerBrowserEvent(this.oLinkInput,"keydown","EVENT_XE_HYPERLINK_KEYDOWN");this.oApp.exec("REGISTER_UI_EVENT",
|
||||
["hyperlink","click","XE_TOGGLE_HYPERLINK_LAYER"])},$ON_XE_TOGGLE_HYPERLINK_LAYER:function(){this.oApp.delayedExec("TOGGLE_TOOLBAR_ACTIVE_LAYER",[this.oHyperlinkLayer,null,"XE_RESET_HYPERLINK_LAYER",[]],0)},$ON_XE_RESET_HYPERLINK_LAYER:function(){this.oApp.exec("FOCUS",[]);this.oSelection=this.oApp.getSelection();var a=this.oSelection.findAncestorByTagName("A");this.oCbNewWin.checked=false;if(a){this.oSelection.selectNode(a);this.oSelection.select();var b=a.target;if(b&&b=="_blank")this.oCbNewWin.checked=
|
||||
true;this.oLinkInput.value=a.href?a.href:"http://"}else this.oLinkInput.value="http://";this.oLinkInput.focus();this.oLinkInput.value=this.oLinkInput.value},$ON_XE_APPLY_HYPERLINK:function(){var a=this.oLinkInput.value,b=this.oCbNewWin.checked?"_blank":"";this.oApp.exec("FOCUS",[]);this.oSelection=this.oApp.getSelection();if(this.oSelection.collapsed)this.oSelection.pasteHTML("<a href='"+a+"' target="+b+">"+a+"</a>");else{var d=this.sATagMarker+Math.ceil(Math.random()*1E4);this.oApp.exec("EXECCOMMAND",
|
||||
a==""?["unlink"]:["createLink",false,d+a]);try{this.oSelection.setFromSelection()}catch(f){}a=this.oApp.getWYSIWYGDocument();c(a.body.getElementsByTagName("A")).filter('[href^="'+d+'"]').attr("href",function(){var a=RegExp("^"+d.replace(/([\.\\])/g,"\\$1"),"i");b?c(this).attr("target",b):c(this).removeAttr("target");return this.href.replace(a,"")})}this.oApp.exec("HIDE_ACTIVE_LAYER");setTimeout(c.fnBind(function(){try{this.oSelection.select()}catch(a){}},this),0)},_validateURL:function(a){return/^(http|https|ftp|mailto):(?:\/\/)?((\w|-)+(?:[\.:@](\w|-))+)(?:\/|@)?([^"\?]*?)(?:\?([^\?"]*?))?$/.test(a)},
|
||||
$ON_EVENT_XE_HYPERLINK_KEYDOWN:function(a){if(a.keyCode==13){this.oApp.exec("XE_APPLY_HYPERLINK");a.preventDefault();a.stopPropagation()}}});xe.XE_Table=c.Class({name:"XE_Table",iMinRows:1,iMaxRows:20,iMinColumns:1,iMaxColumns:10,iMinBorderWidth:1,iMaxBorderWidth:10,oSelection:null,$init:function(a){this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){var b=null;this.elDropdownLayer=c("DIV.xpress_xeditor_table_layer",a).get(0);this.welDropdownLayer=c(this.elDropdownLayer);b=c("INPUT",this.elDropdownLayer).get();
|
||||
this.oRowInput=b[0];this.oColumnInput=b[1];this.oBorderWidthInput=b[2];this.oBorderColorInput=b[3];this.oBGColorInput=b[4];b=c("BUTTON",this.elDropdownLayer).get();this.oButton_AddRow=b[0];this.oButton_RemoveRow=b[1];this.oButton_AddColumn=b[2];this.oButton_RemoveColumn=b[3];this.oButton_IncBorderWidth=b[4];this.oButton_DecBorderWidth=b[5];this.oButton_BorderColorPreview=b[6];this.oButton_BorderColor=b[7];this.oButton_BGColorPreview=b[8];this.oButton_BGColor=b[9];this.oButton_Insert=b[10];this.oButton_Cancel=
|
||||
b[11];this.oSampleTable=c("TABLE",this.elDropdownLayer).get(0)},$ON_MSG_APP_READY:function(){this.oApp.exec("REGISTER_UI_EVENT",["table","click","ST_TOGGLE_TOOLBAR_LAYER"]);this.oApp.registerBrowserEvent(this.oRowInput,"change","ST_SET_ROW_NUM",[null,0]);this.oApp.registerBrowserEvent(this.oColumnInput,"change","ST_SET_COLUMN_NUM",[null,0]);this.oApp.registerBrowserEvent(this.oBorderWidthInput,"change","ST_SET_BORDER_WIDTH",[null,0]);this.oApp.registerBrowserEvent(this.oButton_AddRow,"click","ST_ADD_ROW");
|
||||
this.oApp.registerBrowserEvent(this.oButton_RemoveRow,"click","ST_REMOVE_ROW");this.oApp.registerBrowserEvent(this.oButton_AddColumn,"click","ST_ADD_COLUMN");this.oApp.registerBrowserEvent(this.oButton_RemoveColumn,"click","ST_REMOVE_COLUMN");this.oApp.registerBrowserEvent(this.oButton_IncBorderWidth,"click","ST_INC_BORDER_WIDTH");this.oApp.registerBrowserEvent(this.oButton_DecBorderWidth,"click","ST_DEC_BORDER_WIDTH");this.oApp.registerBrowserEvent(this.oButton_BorderColorPreview,"click","ST_TOGGLE_BORDER_COLOR_LAYER");
|
||||
this.oApp.registerBrowserEvent(this.oButton_BGColorPreview,"click","ST_TOGGLE_BGCOLOR_LAYER");this.oApp.registerBrowserEvent(this.oButton_BorderColor,"click","ST_TOGGLE_BORDER_COLOR_LAYER");this.oApp.registerBrowserEvent(this.oButton_BGColor,"click","ST_TOGGLE_BGCOLOR_LAYER");this.oApp.registerBrowserEvent(this.oButton_Insert,"click","ST_INSERT_TABLE");this.oApp.registerBrowserEvent(this.oButton_Cancel,"click","ST_CLOSE");this.oApp.exec("ST_SET_BORDER_COLOR",["#CCCCCC"]);this.oApp.exec("ST_SET_BGCOLOR",
|
||||
["#FFFFFF"])},$ON_ST_TOGGLE_TOOLBAR_LAYER:function(){this.oApp.exec("RECORD_UNDO_ACTION_FORCED",["KEYPRESS"]);this._showNewTable();this.oApp.exec("TOGGLE_TOOLBAR_ACTIVE_LAYER",[this.elDropdownLayer])},$ON_ST_ADD_ROW:function(){this.oApp.exec("ST_SET_ROW_NUM",[null,1])},$ON_ST_REMOVE_ROW:function(){this.oApp.exec("ST_SET_ROW_NUM",[null,-1])},$ON_ST_ADD_COLUMN:function(){this.oApp.exec("ST_SET_COLUMN_NUM",[null,1])},$ON_ST_REMOVE_COLUMN:function(){this.oApp.exec("ST_SET_COLUMN_NUM",[null,-1])},$ON_ST_SET_ROW_NUM:function(a,
|
||||
b){a=a||parseInt(this.oRowInput.value);a=a+(b||0);if(a<this.iMinRows)a=this.iMinRows;if(a>this.iMaxRows)a=this.iMaxRows;this.oRowInput.value=a;this._showNewTable()},$ON_ST_SET_COLUMN_NUM:function(a,b){a=a||parseInt(this.oColumnInput.value);a=a+(b||0);if(a<this.iMinColumns)a=this.iMinColumns;if(a>this.iMaxColumns)a=this.iMaxColumns;this.oColumnInput.value=a;this._showNewTable()},$ON_ST_INSERT_TABLE:function(){this.oApp.exec("PASTE_HTML",[this._getTableString()]);this.oApp.exec("ST_CLOSE",[])},$ON_ST_CLOSE:function(){this.oApp.exec("HIDE_ACTIVE_LAYER",
|
||||
[])},$ON_ST_SET_BORDER_WIDTH:function(a,b){a=a||parseInt(this.oBorderWidthInput.value);a=a+(b||0);if(a<this.iMinBorderWidth)a=this.iMinBorderWidth;if(a>this.iMaxBorderWidth)a=this.iMaxBorderWidth;this.oBorderWidthInput.value=a;this._showNewTable()},$ON_ST_INC_BORDER_WIDTH:function(){this.oApp.exec("ST_SET_BORDER_WIDTH",[null,1])},$ON_ST_DEC_BORDER_WIDTH:function(){this.oApp.exec("ST_SET_BORDER_WIDTH",[null,-1])},$ON_ST_TOGGLE_BORDER_COLOR_LAYER:function(){this.welDropdownLayer.hasClass("p1")?this.oApp.exec("ST_HIDE_BORDER_COLOR_LAYER",
|
||||
[]):this.oApp.exec("ST_SHOW_BORDER_COLOR_LAYER",[])},$ON_ST_SHOW_BORDER_COLOR_LAYER:function(){this.welDropdownLayer.addClass("p1");this.welDropdownLayer.removeClass("p2");this.oApp.exec("SHOW_COLOR_PALETTE",["ST_SET_BORDER_COLOR_FROM_PALETTE",this.elDropdownLayer])},$ON_ST_HIDE_BORDER_COLOR_LAYER:function(){this.welDropdownLayer.removeClass("p1");this.oApp.exec("HIDE_COLOR_PALETTE",[])},$ON_ST_TOGGLE_BGCOLOR_LAYER:function(){this.welDropdownLayer.hasClass("p2")?this.oApp.exec("ST_HIDE_BGCOLOR_LAYER",
|
||||
[]):this.oApp.exec("ST_SHOW_BGCOLOR_LAYER",[])},$ON_ST_SHOW_BGCOLOR_LAYER:function(){this.welDropdownLayer.removeClass("p1");this.welDropdownLayer.addClass("p2");this.oApp.exec("SHOW_COLOR_PALETTE",["ST_SET_BGCOLOR_FROM_PALETTE",this.elDropdownLayer])},$ON_ST_HIDE_BGCOLOR_LAYER:function(){this.welDropdownLayer.removeClass("p2");this.oApp.exec("HIDE_COLOR_PALETTE",[])},$ON_ST_SET_BORDER_COLOR_FROM_PALETTE:function(a){this.oApp.exec("ST_SET_BORDER_COLOR",[a]);this.oApp.exec("ST_HIDE_BORDER_COLOR_LAYER",
|
||||
[])},$ON_ST_SET_BORDER_COLOR:function(a){this.oBorderColorInput.value=a;this.oButton_BorderColorPreview.style.backgroundColor=a;this._showNewTable()},$ON_ST_SET_BGCOLOR_FROM_PALETTE:function(a){this.oApp.exec("ST_SET_BGCOLOR",[a]);this.oApp.exec("ST_HIDE_BGCOLOR_LAYER",[])},$ON_ST_SET_BGCOLOR:function(a){this.oBGColorInput.value=a;this.oButton_BGColorPreview.style.backgroundColor=a;this._showNewTable()},_showNewTable:function(){var a=document.createElement("DIV");a.innerHTML=this._getTableString();
|
||||
a=a.firstChild;this.oSampleTable.parentNode.insertBefore(a,this.oSampleTable);this.oSampleTable.parentNode.removeChild(this.oSampleTable);this.oSampleTable=a},_getTableString:function(){for(var a=this.oBorderColorInput.value,b=this.oBGColorInput.value,d=this.oBorderWidthInput.value,f="",f=c.browser.msie?"<td><p></p></td>":c.browser.firefox?"<td><p><br/></p></td>":"<td><p> </p></td>",b='<tr style="background:'+b+'">',e=this.oColumnInput.value,g=0;g<e;g++)b=b+f;b=b+"</tr>\n";f=this.oRowInput.value;
|
||||
a='<table style="background:'+a+';border-spacing:1px" cellspacing="'+d+'"><tbody>';for(g=0;g<f;g++)a=a+b;return a+"</tbody></table>"}});xe.XE_EditingModeToggler=c.Class({name:"XE_EditingModeToggler",$init:function(a){this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){a=c.$(a)||document;this.elModeToggleButton=c("BUTTON.xpress_xeditor_mode_toggle_button",a).get(0);this.welModeToggleButton=c(this.elModeToggleButton)},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.elModeToggleButton,"click","EVENT_TOGGLE_EDITING_MODE",
|
||||
[])},$ON_EVENT_TOGGLE_EDITING_MODE:function(){this.oApp.getEditingMode()=="WYSIWYG"?this.oApp.exec("CHANGE_EDITING_MODE",["HTMLSrc"]):this.oApp.exec("CHANGE_EDITING_MODE",["WYSIWYG"])},$ON_CHANGE_EDITING_MODE:function(a){if(a=="HTMLSrc"){this.welModeToggleButton.addClass("active").parent("span").addClass("active");this.oApp.exec("DISABLE_ALL_UI",[])}else{this.welModeToggleButton.removeClass("active").parent("span").removeClass("active");this.oApp.exec("ENABLE_ALL_UI",[])}}});xe.XE_Editorresize=c.Class({name:"XE_Editorresize",
|
||||
$init:function(a,b){this.inputArea=c(".xpress_xeditor_editing_area_container",a).get(0);this.oVerticalResizer=c(".xpress_xeditor_editingArea_verticalResizer",a).get(0);this.oCheckBox=c("#editorresize",a).get(0);this.oIframe=b;var d=this;c(b).load(function(){d.oIframeBody=c(b).contents().find("body")})},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.oCheckBox,"change","XE_TOGGLE_EDITOR_RESIZE")},$ON_XE_TOGGLE_EDITOR_RESIZE:function(){if(this.oCheckBox.checked==true){if(this._prevHeight==
|
||||
void 0)this._prevHeight=this.inputArea.style.height;this.oVerticalResizer.style.display="none";this.oApp.registerBrowserEvent(this.oIframeBody,"keydown","XE_EDITOR_RESIZE");this.inputArea.style.height=this.oIframe.style.height=this.oIframeBody[0].scrollHeight+"px"}else{c(this.oIframeBody).unbind("keydown");this.oVerticalResizer.style.display="block";this.inputArea.style.height=this._prevHeight;this.oIframe.style.height=this._prevHeight}},$ON_XE_EDITOR_RESIZE:function(){this.inputArea.style.height=
|
||||
this.oIframe.style.height=this.oIframeBody[0].scrollHeight+"px"}});xe.XpressCore.oMessageMap={"XE_EditingAreaManager.onExit":"%uB0B4%uC6A9%uC774%20%uBCC0%uACBD%uB418%uC5C8%uC2B5%uB2C8%uB2E4.","XE_FontColor.invalidColorCode":"%uC0C9%uC0C1%20%uCF54%uB4DC%uB97C%20%uC62C%uBC14%uB974%uAC8C%20%uC785%uB825%uD558%uC5EC%20%uC8FC%uC2DC%uAE30%20%uBC14%uB78D%uB2C8%uB2E4.\n\n%uC608%29%20%23000000%2C%20%23FF0000%2C%20%23FFFFFF%2C%20%23ffffff%2C%20ffffff","XE_BGColor.invalidColorCode":"%uC0C9%uC0C1%20%uCF54%uB4DC%uB97C%20%uC62C%uBC14%uB974%uAC8C%20%uC785%uB825%uD558%uC5EC%20%uC8FC%uC2DC%uAE30%20%uBC14%uB78D%uB2C8%uB2E4.\n\n%uC608%29%20%23000000%2C%20%23FF0000%2C%20%23FFFFFF%2C%20%23ffffff%2C%20ffffff",
|
||||
"XE_Hyperlink.invalidURL":"%uC785%uB825%uD558%uC2E0%20URL%uC774%20%uC62C%uBC14%uB974%uC9C0%20%uC54A%uC2B5%uB2C8%uB2E4."};regex_handler=/<(.*?)\s+on[a-z]+\s*=(?:\s*".*?"|\s*'.*?'|[^\s>]+)(.*?)>/ig;regex_font_color=/color\s*=(?:\s*"(.*?)"|\s*'(.*?)'|([^\s>]+))/i;regex_font_face=/face\s*=(?:\s*"(.*?)"|\s*'(.*?)'|([^\s>]+))/i;regex_font_size=/size\s*=(?:\s*"(\d+)"|\s*'(\d+)'|(\d+))/i;regex_style=/style\s*=\s*(?:\s*"(.*?)"|\s*'(.*?)'|([^\s>]+))/i;regex_font_weight=/font-weight\s*:\s*([a-z]+);?/i;regex_font_style=
|
||||
/font-style\s*:\s*italic;?/i;regex_font_decoration=/text-decoration\s*:\s*([a-z -]+);?/i;regex_jquery=/jQuery\d+\s*=(\s*"\d+"|\d+)/ig;regex_quote_attr=/([\w-]+\s*=(?:\s*"[^"]+"|\s*'[^']+'))|([\w-]+)=([^\s]+)/g;var p="area br col embed hr img input param".split(" ");xe.XE_XHTMLFormatter=c.Class({name:"XE_XHTMLFormatter",$ON_MSG_APP_READY:function(){this.oApp.addConverter("WYSIWYG_TO_IR",this.TO_IR);this.oApp.addConverter("HTMLSrc_TO_IR",this.TO_IR);this.oApp.addConverter("IR_TO_HTMLSrc",this.IR_TO);
|
||||
this.oApp.addConverter("IR_TO_WYSIWYG",this.IR_TO)},TO_IR:function(a){var b=[];if(c.browser.msie){a=a.replace(regex_jquery,"");a=a.replace(/<(\w+) ([^>]+)>/g,function(a,b,c){return"<"+b+" "+c.replace(regex_quote_attr,function(a,b,c,d){return b?b:/^"/.test(d)||/"$/.test(d)?c+"="+d:c+'="'+(d||c)+'"'})+">"})}regex=/<(\/)?([:\w\/-]+)(.*?)>/ig;a=a.replace(regex,function(a,d,g,h){d=d||"";g=g.toLowerCase();h=c.trim(h||"");if(d){h=[];a="";if(c.inArray(g,p)>=0||!b.length)return"";do{a=b.pop();a.tag==g&&a.state!=
|
||||
"deleted"&&h.push("</"+a.tag+">")}while(b.length&&a.tag!=g);return h.join("")}if(c.inArray(g,p)>=0){a=h.length;g=="br"&&(h="");if(!h||h.substring(a-1,a)!="/")h=h+"/";return"<"+g+" "+c.trim(h)+">"}b.push({tag:g,state:""});return"<"+d+g+(h?" "+h:"")+">"});if(b.length){var d="";do{d=b.pop();d.state!="deleted"&&(a=a+("</"+d.tag+">"))}while(b.length)}regex=/<\/p>[ \t]*(\n)?/ig;return a=a.replace(regex,"</p>\n")},IR_TO:function(a){return a}});xe.XE_Extension=c.Class({name:"XE_Extension",seq:"",last_doc:"",
|
||||
$init:function(a,b){this.seq=b;this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){this.elDropdownLayer=c("DIV.xpress_xeditor_extension_layer",a).get(0)},_removeAttrs:function(a){return a},_addEvent:function(){if(this.oApp.getEditingMode()=="WYSIWYG"){var a=this.oApp.getWYSIWYGDocument(),b=this.seq,d=function(){var a=c(this),d=a.attr("editor_component");if(d&&c.isFunction(openComponent)){editorPrevNode=a.get(0);openComponent(d,b)}};c(a).find("img,div[editor_component]").each(function(){var b=
|
||||
c(this);this.nodeName=="IMG"&&(!b.attr("editor_component")&&!b.attr("widget"))&&b.attr("editor_component","image_link");if(this.last_doc!=a){b.unbind("dblclick.widget").bind("dblclick.widget",d);this.last_doc=a}})}},$ON_MSG_APP_READY:function(){var a=this.oApp;a.exec("REGISTER_UI_EVENT",["extension","click","TOGGLE_EXTENSION_LAYER"]);var b=function(){a.exec("HIDE_ACTIVE_LAYER",[])};c("a",this.elDropdownLayer).each(function(){var a=c(this);if(!a.attr("component_onclick_event_added")){a.click(b);a.attr("component_onclick_event_added",
|
||||
"Y")}})},$ON_TOGGLE_EXTENSION_LAYER:function(){this.oApp.exec("TOGGLE_TOOLBAR_ACTIVE_LAYER",[this.elDropdownLayer])},$ON_CHANGE_EDITING_MODE:function(){var a=this;setTimeout(function(){a._addEvent()},100)},$ON_PASTE_HTML:function(){var a=this;setTimeout(function(){a._addEvent()},100)},$ON_LOAD_IR_FIELD:function(){var a=this;setTimeout(function(){a._addEvent()},100)},$ON_SET_IR:function(){var a=this;setTimeout(function(){a._addEvent()},100)}});xe.XE_AutoSave=c.Class({name:"XE_AutoSave",form:null,textarea:null,
|
||||
$init:function(a,b){this.form=a.form;this.textarea=a;this._assignHTMLObjects(b)},_assignHTMLObjects:function(){this.welMessageBox=c("autosave_message")},$ON_MSG_APP_READY:function(){var a=c(this.form._saved_doc_title),b=c(this.form._saved_doc_content),a=c.trim(a.val()),b=c.trim(b.val());if(a||b)if(confirm(this.form._saved_doc_message.value)){c(this.form.title).val(a);this.oApp.setIR(b);typeof editorGetAutoSavedDoc=="function"&&editorGetAutoSavedDoc(this.form)}else editorRemoveSavedDoc();editorEnableAutoSave(this.form,
|
||||
c(this.form).attr("editor_sequence"));this.oApp.exec("REGISTER_HOTKEY",["ctrl+shift+s","AUTO_SAVE"])},$ON_AUTO_SAVE:function(){_editorAutoSave()}});xe.XE_FormatWithSelectUI=c.Class({name:"XE_FormatWithSelectUI",$init:function(a){this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){this.elFormatSelect=c("SELECT.xpress_xeditor_ui_format_select",a).get(0)},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.elFormatSelect,"change","SET_FORMAT_FROM_SELECT_UI");this.elFormatSelect.selectedIndex=
|
||||
0},$ON_MSG_STYLE_CHANGED:function(){var a=this.oApp.getWYSIWYGDocument().queryCommandValue("FormatBlock");if(!a)return this.elFormatSelect.selectedIndex=0;c.browser.msie&&/([0-9])/.test(a)&&(a="h"+RegExp.$1);this.elFormatSelect.value=a.toLowerCase();if(this.elFormatSelect.selectedIndex<0)this.elFormatSelect.selectedIndex=0;if(this.elFormatSelect.value!=a.toLowerCase())this.elFormatSelect.selectedIndex=0},$ON_SET_FORMAT_FROM_SELECT_UI:function(){var a=this.elFormatSelect.value;if(a){c.browser.msie&&
|
||||
(a="<"+a+">");this.oApp.exec("EXECCOMMAND",["FormatBlock",false,a]);this.oApp.exec("CHECK_STYLE_CHANGE",[])}}});xe.XE_Table=c.Class({_startSel:null,_endSel:null,$ON_MSG_APP_READY:function(){this._doc=c(this.oApp.getWYSIWYGDocument());this.$FnMouseDown=c.fnBind(this._mousedown,this);this.$FnMouseUp=c.fnBind(this._mouseup,this);this.$FnMouseMove=c.fnBind(this._mousemove,this);this._doc.mousedown(this.$FnMouseDown);this._endSel=this._startSel=null;this.oApp.exec("REGISTER_UI_EVENT",["merge_cells","click",
|
||||
"MERGE_CELLS"]);this.oApp.exec("REGISTER_UI_EVENT",["split_col","click","CELL_SPLIT_BY_COL"]);this.oApp.exec("REGISTER_UI_EVENT",["split_row","click","CELL_SPLIT_BY_ROW"]);this.oApp.exec("REGISTER_HOTKEY",["ctrl+alt+m","MERGE_CELLS"]);this.$super.$ON_MSG_APP_READY()},$ON_MERGE_CELLS:function(){var a="",b=c(".xe_selected_cell",this.oApp.getWYSIWYGDocument()).filter("td,th"),d=this;if(b.length){this.oApp.exec("RECORD_UNDO_ACTION",["Cell:Merge"]);b.each(function(){a=a+c(this).html()}).eq(0).html(a);
|
||||
var f=0;b.eq(0).nextAll("td,th").andSelf().filter(".xe_selected_cell").each(function(){f=f+d._getSpan(this,"col")});this._getRect(b.eq(0));var e=b.eq(0).parent("tr"),g=b.eq(b.length-1).parent("tr"),h=b.parents("table").eq(0).find("tr"),e=h.index(g.get(0))-h.index(e.get(0))+this._getSpan(b.eq(b.length-1),"row");b.eq(0).attr("colSpan",f).attr("rowSpan",e);b.slice(1).remove()}},$ON_CELL_SPLIT_BY_ROW:function(){var a=c(".xe_selected_cell",this.oApp.getWYSIWYGDocument()).filter("td,th"),b=a.parents("table").eq(0),
|
||||
d=this;if(a.length){this.oApp.exec("RECORD_UNDO_ACTION",["Cell:Split By Row"]);var f=this._getRect(a.eq(0)).top,e=this._getRect(a.eq(a.length-1)).bottom;(a=b.find("td,th").filter(function(){var a=d._getRect(c(this));return!(a.bottom<=f||a.top>=e)})).filter(".xe_selected_cell").each(function(){var b=c(this),e=b.parent("tr"),f=d._getSpan(b,"row"),j=d._getRect(b),n=[],m=b.clone().html("<br />"),l=1,o=1;if(f>1){l=Math.ceil(f/2);o=f-l;n.push(function(){b.attr("rowSpan",l)});m.attr("rowSpan",o)}else{a.filter(function(){if(b.get(0)==
|
||||
this)return false;var a=c(this),a=d._getRect(a);return a.bottom<=j.top||a.top>=j.bottom?false:true}).each(function(){var a=c(this),b=d._getSpan(a,"row")+1;n.push(function(){a.attr("rowSpan",b)})});c.browser.msie?e.after(e.clone().empty().get(0).outerHTML):e.after(e.clone().empty())}f=e.nextAll("tr");if(f.length){e=f.eq(l-1).children("td,th").filter(function(){return d._getRect(c(this)).left>j.left});c.browser.msie?e.length?e.eq(0).before(m.get(0).outerHTML):f.eq(l-1).append(m.get(0).outerHTML):e.length?
|
||||
e.slice(0,1).before(m):f.slice(l-1,1).append(m)}else e.after(e.clone().empty().append(m));c.each(n,function(){this()})})}},$ON_CELL_SPLIT_BY_COL:function(){var a=c(".xe_selected_cell",this.oApp.getWYSIWYGDocument()).filter("td,th"),b=a.parents("table").slice(0,1),d=this;(new Date).getTime();if(a.length){this.oApp.exec("RECORD_UNDO_ACTION",["Cell:Split By Column"]);var f=a.eq(0).parent("tr"),e=this._getRect(f.find(".xe_selected_cell:first")).left,g=this._getRect(f.find(".xe_selected_cell:last")).right;
|
||||
(a=b.find("td,th").filter(function(){var a=d._getRect(c(this));return!(a.right<=e||a.left>=g)})).filter(".xe_selected_cell").each(function(){var b=c(this),e=d._getSpan(b,"col"),f=b.clone().html("<br />");if(e>1){var g=Math.ceil(e/2),e=e-g;b.attr("colSpan",g);f.attr("colSpan",e)}else{var m=d._getRect(b);a.filter(function(){if(b.get(0)==this)return false;var a=c(this),a=d._getRect(a);return a.right<=m.left||a.left>=m.right?false:true}).each(function(){var a=c(this);a.attr("colSpan",d._getSpan(a,"col")+
|
||||
1)});f.attr("colSpan",1)}c.browser.msie?b.after(f.get(0).outerHTML):b.after(f)})}},$ON_CHECK_STYLE_CHANGE:function(){var a=this.oApp,b=this._startSel&&this._startSel.is(".xe_selected_cell")?"ENABLE_UI":"DISABLE_UI";c.each(["merge_cells","split_col","split_row"],function(){a.exec(b,[this])})},_mousedown:function(a){function b(){d=f.getSelection().cloneRange();d.collapseToStart();d=c(d.startContainer).parents().andSelf().filter("td,th").eq(0);if(!d.length)return e._removeAllListener()||true;e._getRect(e._startSel=
|
||||
d);e._doc.bind("mousemove",e.$FnMouseMove);e._doc.bind("mouseup",e.$FnMouseUp)}var d=c(a.target).parents().andSelf().filter("td,th,table"),f=this.oApp,e=this;c("td.xe_selected_cell",this.oApp.getWYSIWYGDocument()).removeClass("xe_selected_cell");this._endSel=this._startSel=null;d.length&&this._isLeftClicked(a.button)&&setTimeout(b,0)},_mouseup:function(){this._removeAllListener();this._startSel=this._endSel=null},_mousemove:function(a){var b=c(a.target).parents().andSelf().filter("td,th").eq(0),d=
|
||||
this;if(b.length&&this._isLeftClicked(a.button)&&(this._endSel||b.get(0)!=this._startSel.get(0))&&!(this._endSel&&b.get(0)==this._endSel.get(0))){this._getRect(this._endSel=b);var f=Math.min(this._startSel.rect.top,this._endSel.rect.top),e=Math.min(this._startSel.rect.left,this._endSel.rect.left),g=Math.max(this._startSel.rect.bottom,this._endSel.rect.bottom),h=Math.max(this._startSel.rect.right,this._endSel.rect.right),a=b.parents("table").find("td,th").removeClass("xe_selected_cell"),b=c();do{b.each(function(){var a=
|
||||
d._getRect(c(this));if(a.right>h)h=a.right;if(a.left<e)e=a.left;if(a.top<f)f=a.top;if(a.bottom>g)g=a.bottom});a=a.filter(":not(.xe_selected_cell)");b=a.filter(function(){var a=d._getRect(c(this));return a.right<=e||a.left>=h||a.bottom<=f||a.top>=g?false:true}).addClass("xe_selected_cell")}while(b.length);c.browser.mozilla||setTimeout(function(){var a=d.oApp.getSelection();if(d._startSel){d._startSel.get(0).firstChild||d._startSel.text(" ");a.selectNode(d._startSel.get(0).firstChild);a.collapseToStart();
|
||||
a.select()}},0);return false}},_removeAllListener:function(){this._doc.unbind("mousemove",this.$FnMouseMove);this._doc.unbind("mouseup",this.$FnMouseUp)},_isLeftClicked:function(a){return c.browser.msie?!!(a&1):a==0},_getRect:function(a){var b=a.get(0);a.rect={};a.rect.top=b.offsetTop;a.rect.left=b.offsetLeft;a.rect.bottom=a.rect.top+b.offsetHeight;a.rect.right=a.rect.left+b.offsetWidth;return a.rect},_getSpan:function(a,b){var d=parseInt(c(a).attr(b+"span"));return isNaN(d)?1:d}}).extend(xe.XE_Table);
|
||||
c(".input_auto>input").change(function(){setTimeout(function(){c(".input_control").is(":hidden")?c(".input_auto").addClass("line"):c(".input_auto").removeClass("line")},1)})})(jQuery);window.xe||(xe={});xe.Editors=[];
|
||||
function editorStart_xe(c,o,l,p,a,b,d,f){function e(){try{var a=n.contentWindow.document;if("about:blank"==a.location)throw"blank";a.body.innerHTML=a.body.innerHTML.trim();j.registerPlugin(new xe.XE_EditingArea_WYSIWYG(n));j.registerPlugin(new xe.XpressRangeManager(n));j.registerPlugin(new xe.XE_ExecCommand(n));d&&!a.body.style.fontFamily&&(a.body.style.fontFamily=d);f&&!a.body.style.fontSize&&(a.body.style.fontSize=f);j.run()}catch(b){setTimeout(e,0)}}"undefined"==typeof a&&(a="white");"undefined"==
|
||||
typeof b&&(b="xeStyle");"undefined"==typeof d&&(d="");"undefined"==typeof f&&(f="");var g=request_uri+"modules/editor/styles/"+b+"/editor.html",b=jQuery("#xpress-editor-"+c),g=jQuery('<iframe id="editor_iframe_'+c+'" allowTransparency="true" frameborder="0" src="'+g+'" scrolling="yes" style="width:100%;height:'+p+'px"></iframe>'),h=jQuery('<textarea rows="8" cols="42" class="input_syntax '+a+'" style="display:none"></textarea>'),a=b.get(0).form;a.setAttribute("editor_sequence",c);b.css("display",
|
||||
"none");var k="";0<jQuery("input[name=content]",a).size()&&(k=jQuery("input[name=content]",a).val().replace(/src=\"files\/attach/g,'src="'+request_uri+"files/attach"),jQuery("#xpress-editor-"+c).val(k));b.hide().css("width","100%").before(g).after(h);var j=new xe.XpressCore,n=g.get(0),b=b.get(0),g=h.get(0),h=jQuery(".xpress-editor",a).get(0);j.getFrame=function(){return n};j.getContent=function(){editorGetContentTextarea_xe(c)};k=a[l].value;xFF&&!k&&(k="<br />");k=editorReplacePath(k);a[l].value=
|
||||
k;jQuery("#xpress-editor-"+c).val(k);editorRelKeys[c]=[];editorRelKeys[c].primary=a[o];editorRelKeys[c].content=a[l];editorRelKeys[c].func=editorGetContentTextarea_xe;editorRelKeys[c].editor=j;editorRelKeys[c].pasteHTML=function(a){j.exec("PASTE_HTML",[a])};xe.Editors[c]=j;j.registerPlugin(new xe.CorePlugin(null));j.registerPlugin(new xe.XE_PreservTemplate(jQuery("#xpress-editor-"+c).val()));j.registerPlugin(new xe.StringConverterManager);j.registerPlugin(new xe.XE_EditingAreaManager("WYSIWYG",b,
|
||||
{nHeight:parseInt(p),nMinHeight:100},null,h));j.registerPlugin(new xe.XE_EditingArea_HTMLSrc(g));j.registerPlugin(new xe.XE_EditingAreaVerticalResizer(h));j.registerPlugin(new xe.Utils);j.registerPlugin(new xe.DialogLayerManager);j.registerPlugin(new xe.ActiveLayerManager);j.registerPlugin(new xe.Hotkey);j.registerPlugin(new xe.XE_WYSIWYGStyler);j.registerPlugin(new xe.XE_WYSIWYGStyleGetter);j.registerPlugin(new xe.MessageManager(xe.XpressCore.oMessageMap));j.registerPlugin(new xe.XE_Toolbar(h));
|
||||
"EVENT_SCHARACTER_CLICKED",[]);this.oApp.exec("REGISTER_UI_EVENT",["sCharacter","click","TOGGLE_SCHARACTER_LAYER"])},$ON_TOGGLE_SCHARACTER_LAYER:function(){this.oTextField.value="";this.oSelection=this.oApp.getSelection();this.oApp.exec("TOGGLE_TOOLBAR_ACTIVE_LAYER",[this.elDropdownLayer])},$ON_EVENT_SCHARACTER_CLICKED:function(a){a=a.target;"BUTTON"==a.tagName&&"LI"==a.parentNode.tagName&&this.oApp.exec("SELECT_SCHARACTER",[a.firstChild.innerHTML])},$ON_SELECT_SCHARACTER:function(a){this.oTextField.value+=
|
||||
a;this.oTextField.createTextRange?(a=this.oTextField.createTextRange(),a.collapse(!1),a.select()):this.oTextField.selectionEnd&&(this.oTextField.selectionEnd=this.oTextField.value.length,this.oTextField.focus())},$ON_INSERT_SCHARACTERS:function(){this.oSelection.pasteHTML(this.oTextField.value);this.oApp.exec("HIDE_ACTIVE_LAYER",[])},$ON_CHANGE_SCHARACTER_SET:function(a){for(var b=0;b<this.aSCharList.length;b++)if("block"==this.aSCharList[b].style.display){if(b==a)return;c(this.aLabelA[b]).removeClass("on");
|
||||
this.aSCharList[b].style.display="none"}this._drawSCharList(a);c(this.aLabelA[a]).addClass("on");this.aSCharList[a].style.display="block"},$ON_SET_SCHARACTER_LIST:function(a){this.charSet=a;this.bSCharSetDrawn=Array(this.charSet.length);this._drawSCharList(0)},_drawSCharList:function(a){if(!this.bSCharSetDrawn[a]){this.bSCharSetDrawn[a]=!0;var b=this.charSet[a].length,c=Array(b);this.aSCharList[a].innerHTML="";for(var f=0;f<b;f++)c[f]=document.createElement("LI"),c[f].innerHTML='<button type="button"><span>'+
|
||||
unescape(this.charSet[a][f])+"</span></button>",this.aSCharList[a].appendChild(c[f])}},_stopBrowserEvent:function(a,b){c(a).bind(b,function(a){a.stopPropagation();a.preventDefault()})}});xe.XE_UndoRedo=c.Class({name:"XE_UndoRedo",actionHistory:null,oCurStateIdx:null,iMinimumSizeChange:10,sBlankContentsForFF:"<br>",$init:function(){this.aUndoHistory=[];this.oCurStateIdx={nIdx:0,nStep:0}},$PRECONDITION:function(a){if(a.match(/_DO_RECORD_UNDO_HISTORY_AT$/))return!0;try{if("WYSIWYG"!=this.oApp.getEditingMode())return!1}catch(b){return!1}return!0},
|
||||
$BEFORE_MSG_APP_READY:function(){this.oApp.exec("DO_RECORD_UNDO_HISTORY_AT",[this.oCurStateIdx,"","",null])},$ON_MSG_APP_READY:function(){this.bFF=c.browser.mozilla;this.oApp.exec("ADD_APP_PROPERTY",["getUndoHistory",c.fnBind(this.getUndoHistory,this)]);this.oApp.exec("ADD_APP_PROPERTY",["getUndoStateIdx",c.fnBind(this.getUndoStateIdx,this)]);this.oApp.exec("REGISTER_UI_EVENT",["undo","click","UNDO"]);this.oApp.exec("REGISTER_UI_EVENT",["redo","click","REDO"]);this.oApp.exec("REGISTER_HOTKEY",["ctrl+z",
|
||||
"UNDO"]);this.oApp.exec("REGISTER_HOTKEY",["ctrl+y","REDO"])},$ON_UNDO:function(){this.oApp.exec("DO_RECORD_UNDO_HISTORY",["KEYPRESS",!1,!1,1]);if(0!=this.oCurStateIdx.nIdx){if(0<this.oCurStateIdx.nStep)this.oCurStateIdx.nStep--;else{var a=this.aUndoHistory[this.oCurStateIdx.nIdx];this.oCurStateIdx.nIdx--;1<a.nTotalSteps?this.oCurStateIdx.nStep=0:(a=this.aUndoHistory[this.oCurStateIdx.nIdx],this.oCurStateIdx.nStep=a.nTotalSteps-1)}this.oApp.exec("RESTORE_UNDO_HISTORY",[this.oCurStateIdx.nIdx,this.oCurStateIdx.nStep]);
|
||||
this.oApp.exec("CHECK_STYLE_CHANGE",[])}},$ON_REDO:function(){if(!(this.oCurStateIdx.nIdx>=this.aUndoHistory.length)){var a=this.aUndoHistory[this.oCurStateIdx.nIdx];this.oCurStateIdx.nIdx==this.aUndoHistory.length-1&&this.oCurStateIdx.nStep>=a.nTotalSteps-1||(this.oCurStateIdx.nStep<a.nTotalSteps-1?this.oCurStateIdx.nStep++:(this.oCurStateIdx.nIdx++,a=this.aUndoHistory[this.oCurStateIdx.nIdx],this.oCurStateIdx.nStep=a.nTotalSteps-1),this.oApp.exec("RESTORE_UNDO_HISTORY",[this.oCurStateIdx.nIdx,this.oCurStateIdx.nStep]),
|
||||
this.oApp.exec("CHECK_STYLE_CHANGE",[]))}},$ON_RECORD_UNDO_ACTION:function(a){this.oApp.exec("DO_RECORD_UNDO_HISTORY",[a])},$ON_RECORD_UNDO_BEFORE_ACTION:function(a){this.oApp.exec("DO_RECORD_UNDO_HISTORY",[a,!0,!0])},$ON_RECORD_UNDO_AFTER_ACTION:function(a){this.oApp.exec("DO_RECORD_UNDO_HISTORY",[a,!0,!1])},$ON_RESTORE_UNDO_HISTORY:function(a,b){this.oCurStateIdx.nIdx=a;this.oCurStateIdx.nStep=b;var c=this.aUndoHistory[this.oCurStateIdx.nIdx],f=c.oBookmark[this.oCurStateIdx.nStep];this.oApp.setIR(c.sContent[this.oCurStateIdx.nStep],
|
||||
!0);var e=this.oApp.getIR();this.bFF&&e==this.sBlankContentsForFF&&(e="");c.sContent[this.oCurStateIdx.nStep]=e;c=this.oApp.getEmptySelection();c.selectionLoaded&&(f?c.moveToXPathBookmark(f):c=this.oApp.getEmptySelection(),c.select())},$ON_DO_RECORD_UNDO_HISTORY:function(a,b,c,f){b=b||!1;c=c||!1;f=f||0;this.oCurStateIdx.nIdx!=this.aUndoHistory.length-1&&(f=1);var e=this.aUndoHistory[this.oCurStateIdx.nIdx],g=this.oApp.getIR(),h=e.sContent[this.oCurStateIdx.nStep];this.bFF&&g==this.sBlankContentsForFF&&
|
||||
(g="");if(!b)switch(f){case 0:if(Math.abs(h.length-g.length)<this.iMinimumSizeChange)return;break;case 1:if(h==g)return}h=this.oApp.getSelection();f=null;h.selectionLoaded&&(f=h.getXPathBookmark());h={nIdx:this.oCurStateIdx.nIdx,nStep:this.oCurStateIdx.nStep};h.nStep=b?c?0:1:0;0==h.nStep&&this.oCurStateIdx.nStep==e.nTotalSteps-1&&(h.nIdx=this.oCurStateIdx.nIdx+1);this.oApp.exec("DO_RECORD_UNDO_HISTORY_AT",[h,a,g,f])},$ON_DO_RECORD_UNDO_HISTORY_AT:function(a,b,c,f){0!=a.nStep?(this.aUndoHistory[a.nIdx].nTotalSteps=
|
||||
a.nStep+1,this.aUndoHistory[a.nIdx].sContent[a.nStep]=c,this.aUndoHistory[a.nIdx].oBookmark[a.nStep]=f):(b={sAction:b,nTotalSteps:1,sContent:[]},b.sContent[0]=c,b.oBookmark=[],b.oBookmark[0]=f,this.aUndoHistory.splice(a.nIdx,this.aUndoHistory.length-a.nIdx,b));this.oCurStateIdx.nIdx=a.nIdx;this.oCurStateIdx.nStep=a.nStep},_getUndoHistory:function(){return this.aUndoHistory},_getUndoStateIdx:function(){return this.oCurStateIdx}});xe.XE_Hyperlink=c.Class({name:"XE_Hyperlink",sATagMarker:"HTTP://HUSKY_TMP.MARKER/",
|
||||
$init:function(a){this._assignHTMLObjects(a);this.sRXATagMarker=this.sATagMarker.replace(/\//g,"\\/").replace(/\./g,"\\.")},_assignHTMLObjects:function(a){this.oHyperlinkLayer=c("DIV.xpress_xeditor_hyperlink_layer",a).get(0);this.oLinkInput=c("INPUT[type=text]",this.oHyperlinkLayer).get(0);this.oBtnConfirm=c("BUTTON.confirm",this.oHyperlinkLayer).get(0);this.oBtnCancel=c("BUTTON.cancel",this.oHyperlinkLayer).get(0);this.oCbNewWin=c("INPUT[type=checkbox]",this.oHyperlinkLayer).get(0)},$ON_MSG_APP_READY:function(){this.oApp.exec("REGISTER_HOTKEY",
|
||||
["ctrl+k","XE_TOGGLE_HYPERLINK_LAYER",[]]);this.oApp.registerBrowserEvent(this.oBtnConfirm,"mousedown","XE_APPLY_HYPERLINK");this.oApp.registerBrowserEvent(this.oBtnCancel,"mousedown","HIDE_ACTIVE_LAYER");this.oApp.registerBrowserEvent(this.oLinkInput,"keydown","EVENT_XE_HYPERLINK_KEYDOWN");this.oApp.exec("REGISTER_UI_EVENT",["hyperlink","click","XE_TOGGLE_HYPERLINK_LAYER"])},$ON_XE_TOGGLE_HYPERLINK_LAYER:function(){this.oApp.delayedExec("TOGGLE_TOOLBAR_ACTIVE_LAYER",[this.oHyperlinkLayer,null,"XE_RESET_HYPERLINK_LAYER",
|
||||
[]],0)},$ON_XE_RESET_HYPERLINK_LAYER:function(){this.oApp.exec("FOCUS",[]);this.oSelection=this.oApp.getSelection();var a=this.oSelection.findAncestorByTagName("A");this.oCbNewWin.checked=!1;if(a){this.oSelection.selectNode(a);this.oSelection.select();var b=a.target;b&&"_blank"==b&&(this.oCbNewWin.checked=!0);this.oLinkInput.value=a.href?a.href:"http://"}else this.oLinkInput.value="http://";this.oLinkInput.focus();this.oLinkInput.value=this.oLinkInput.value},$ON_XE_APPLY_HYPERLINK:function(){var a=
|
||||
this.oLinkInput.value,b=this.oCbNewWin.checked?"_blank":"";this.oApp.exec("FOCUS",[]);this.oSelection=this.oApp.getSelection();if(this.oSelection.collapsed)this.oSelection.pasteHTML("<a href='"+a+"' target="+b+">"+a+"</a>");else{var d=Math.ceil(1E4*Math.random()),f=this.sATagMarker+d;this.oApp.exec("EXECCOMMAND",""==a?["unlink"]:["createLink",!1,f+a]);try{this.oSelection.setFromSelection()}catch(e){}a=this.oApp.getWYSIWYGDocument();c(a.body.getElementsByTagName("A")).filter('[href^="'+f+'"]').attr("href",
|
||||
function(){var a=RegExp("^"+f.replace(/([\.\\])/g,"\\$1"),"i");b?c(this).attr("target",b):c(this).removeAttr("target");return this.href.replace(a,"")})}this.oApp.exec("HIDE_ACTIVE_LAYER");setTimeout(c.fnBind(function(){try{this.oSelection.select()}catch(a){}},this),0)},_validateURL:function(a){return/^(http|https|ftp|mailto):(?:\/\/)?((\w|-)+(?:[\.:@](\w|-))+)(?:\/|@)?([^"\?]*?)(?:\?([^\?"]*?))?$/.test(a)},$ON_EVENT_XE_HYPERLINK_KEYDOWN:function(a){13==a.keyCode&&(this.oApp.exec("XE_APPLY_HYPERLINK"),
|
||||
a.preventDefault(),a.stopPropagation())}});xe.XE_Table=c.Class({name:"XE_Table",iMinRows:1,iMaxRows:20,iMinColumns:1,iMaxColumns:10,iMinBorderWidth:1,iMaxBorderWidth:10,oSelection:null,$init:function(a){this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){var b=null;this.elDropdownLayer=c("DIV.xpress_xeditor_table_layer",a).get(0);this.welDropdownLayer=c(this.elDropdownLayer);b=c("INPUT",this.elDropdownLayer).get();this.oRowInput=b[0];this.oColumnInput=b[1];this.oBorderWidthInput=b[2];this.oBorderColorInput=
|
||||
b[3];this.oBGColorInput=b[4];b=c("BUTTON",this.elDropdownLayer).get();this.oButton_AddRow=b[0];this.oButton_RemoveRow=b[1];this.oButton_AddColumn=b[2];this.oButton_RemoveColumn=b[3];this.oButton_IncBorderWidth=b[4];this.oButton_DecBorderWidth=b[5];this.oButton_BorderColorPreview=b[6];this.oButton_BorderColor=b[7];this.oButton_BGColorPreview=b[8];this.oButton_BGColor=b[9];this.oButton_Insert=b[10];this.oButton_Cancel=b[11];this.oSampleTable=c("TABLE",this.elDropdownLayer).get(0)},$ON_MSG_APP_READY:function(){this.oApp.exec("REGISTER_UI_EVENT",
|
||||
["table","click","ST_TOGGLE_TOOLBAR_LAYER"]);this.oApp.registerBrowserEvent(this.oRowInput,"change","ST_SET_ROW_NUM",[null,0]);this.oApp.registerBrowserEvent(this.oColumnInput,"change","ST_SET_COLUMN_NUM",[null,0]);this.oApp.registerBrowserEvent(this.oBorderWidthInput,"change","ST_SET_BORDER_WIDTH",[null,0]);this.oApp.registerBrowserEvent(this.oButton_AddRow,"click","ST_ADD_ROW");this.oApp.registerBrowserEvent(this.oButton_RemoveRow,"click","ST_REMOVE_ROW");this.oApp.registerBrowserEvent(this.oButton_AddColumn,
|
||||
"click","ST_ADD_COLUMN");this.oApp.registerBrowserEvent(this.oButton_RemoveColumn,"click","ST_REMOVE_COLUMN");this.oApp.registerBrowserEvent(this.oButton_IncBorderWidth,"click","ST_INC_BORDER_WIDTH");this.oApp.registerBrowserEvent(this.oButton_DecBorderWidth,"click","ST_DEC_BORDER_WIDTH");this.oApp.registerBrowserEvent(this.oButton_BorderColorPreview,"click","ST_TOGGLE_BORDER_COLOR_LAYER");this.oApp.registerBrowserEvent(this.oButton_BGColorPreview,"click","ST_TOGGLE_BGCOLOR_LAYER");this.oApp.registerBrowserEvent(this.oButton_BorderColor,
|
||||
"click","ST_TOGGLE_BORDER_COLOR_LAYER");this.oApp.registerBrowserEvent(this.oButton_BGColor,"click","ST_TOGGLE_BGCOLOR_LAYER");this.oApp.registerBrowserEvent(this.oButton_Insert,"click","ST_INSERT_TABLE");this.oApp.registerBrowserEvent(this.oButton_Cancel,"click","ST_CLOSE");this.oApp.exec("ST_SET_BORDER_COLOR",["#CCCCCC"]);this.oApp.exec("ST_SET_BGCOLOR",["#FFFFFF"])},$ON_ST_TOGGLE_TOOLBAR_LAYER:function(){this.oApp.exec("RECORD_UNDO_ACTION_FORCED",["KEYPRESS"]);this._showNewTable();this.oApp.exec("TOGGLE_TOOLBAR_ACTIVE_LAYER",
|
||||
[this.elDropdownLayer])},$ON_ST_ADD_ROW:function(){this.oApp.exec("ST_SET_ROW_NUM",[null,1])},$ON_ST_REMOVE_ROW:function(){this.oApp.exec("ST_SET_ROW_NUM",[null,-1])},$ON_ST_ADD_COLUMN:function(){this.oApp.exec("ST_SET_COLUMN_NUM",[null,1])},$ON_ST_REMOVE_COLUMN:function(){this.oApp.exec("ST_SET_COLUMN_NUM",[null,-1])},$ON_ST_SET_ROW_NUM:function(a,b){a=a||parseInt(this.oRowInput.value);a+=b||0;a<this.iMinRows&&(a=this.iMinRows);a>this.iMaxRows&&(a=this.iMaxRows);this.oRowInput.value=a;this._showNewTable()},
|
||||
$ON_ST_SET_COLUMN_NUM:function(a,b){a=a||parseInt(this.oColumnInput.value);a+=b||0;a<this.iMinColumns&&(a=this.iMinColumns);a>this.iMaxColumns&&(a=this.iMaxColumns);this.oColumnInput.value=a;this._showNewTable()},$ON_ST_INSERT_TABLE:function(){var a=this._getTableString();this.oApp.exec("PASTE_HTML",[a]);this.oApp.exec("ST_CLOSE",[])},$ON_ST_CLOSE:function(){this.oApp.exec("HIDE_ACTIVE_LAYER",[])},$ON_ST_SET_BORDER_WIDTH:function(a,b){a=a||parseInt(this.oBorderWidthInput.value);a+=b||0;a<this.iMinBorderWidth&&
|
||||
(a=this.iMinBorderWidth);a>this.iMaxBorderWidth&&(a=this.iMaxBorderWidth);this.oBorderWidthInput.value=a;this._showNewTable()},$ON_ST_INC_BORDER_WIDTH:function(){this.oApp.exec("ST_SET_BORDER_WIDTH",[null,1])},$ON_ST_DEC_BORDER_WIDTH:function(){this.oApp.exec("ST_SET_BORDER_WIDTH",[null,-1])},$ON_ST_TOGGLE_BORDER_COLOR_LAYER:function(){this.welDropdownLayer.hasClass("p1")?this.oApp.exec("ST_HIDE_BORDER_COLOR_LAYER",[]):this.oApp.exec("ST_SHOW_BORDER_COLOR_LAYER",[])},$ON_ST_SHOW_BORDER_COLOR_LAYER:function(){this.welDropdownLayer.addClass("p1");
|
||||
this.welDropdownLayer.removeClass("p2");this.oApp.exec("SHOW_COLOR_PALETTE",["ST_SET_BORDER_COLOR_FROM_PALETTE",this.elDropdownLayer])},$ON_ST_HIDE_BORDER_COLOR_LAYER:function(){this.welDropdownLayer.removeClass("p1");this.oApp.exec("HIDE_COLOR_PALETTE",[])},$ON_ST_TOGGLE_BGCOLOR_LAYER:function(){this.welDropdownLayer.hasClass("p2")?this.oApp.exec("ST_HIDE_BGCOLOR_LAYER",[]):this.oApp.exec("ST_SHOW_BGCOLOR_LAYER",[])},$ON_ST_SHOW_BGCOLOR_LAYER:function(){this.welDropdownLayer.removeClass("p1");this.welDropdownLayer.addClass("p2");
|
||||
this.oApp.exec("SHOW_COLOR_PALETTE",["ST_SET_BGCOLOR_FROM_PALETTE",this.elDropdownLayer])},$ON_ST_HIDE_BGCOLOR_LAYER:function(){this.welDropdownLayer.removeClass("p2");this.oApp.exec("HIDE_COLOR_PALETTE",[])},$ON_ST_SET_BORDER_COLOR_FROM_PALETTE:function(a){this.oApp.exec("ST_SET_BORDER_COLOR",[a]);this.oApp.exec("ST_HIDE_BORDER_COLOR_LAYER",[])},$ON_ST_SET_BORDER_COLOR:function(a){this.oBorderColorInput.value=a;this.oButton_BorderColorPreview.style.backgroundColor=a;this._showNewTable()},$ON_ST_SET_BGCOLOR_FROM_PALETTE:function(a){this.oApp.exec("ST_SET_BGCOLOR",
|
||||
[a]);this.oApp.exec("ST_HIDE_BGCOLOR_LAYER",[])},$ON_ST_SET_BGCOLOR:function(a){this.oBGColorInput.value=a;this.oButton_BGColorPreview.style.backgroundColor=a;this._showNewTable()},_showNewTable:function(){var a=document.createElement("DIV");a.innerHTML=this._getTableString();a=a.firstChild;this.oSampleTable.parentNode.insertBefore(a,this.oSampleTable);this.oSampleTable.parentNode.removeChild(this.oSampleTable);this.oSampleTable=a},_getTableString:function(){for(var a=this.oBorderColorInput.value,
|
||||
b=this.oBGColorInput.value,d=this.oBorderWidthInput.value,f="",f=c.browser.msie?"<td><p></p></td>":c.browser.firefox?"<td><p><br/></p></td>":"<td><p> </p></td>",b='<tr style="background:'+b+'">',e=this.oColumnInput.value,g=0;g<e;g++)b+=f;b+="</tr>\n";f=this.oRowInput.value;a='<table style="background:'+a+';border-spacing:1px" cellspacing="'+d+'"><tbody>';for(g=0;g<f;g++)a+=b;a+="</tbody>";return a+="</table>"}});xe.XE_EditingModeToggler=c.Class({name:"XE_EditingModeToggler",$init:function(a){this._assignHTMLObjects(a)},
|
||||
_assignHTMLObjects:function(a){a=c.$(a)||document;this.elModeToggleButton=c("BUTTON.xpress_xeditor_mode_toggle_button",a).get(0);this.welModeToggleButton=c(this.elModeToggleButton)},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.elModeToggleButton,"click","EVENT_TOGGLE_EDITING_MODE",[])},$ON_EVENT_TOGGLE_EDITING_MODE:function(){"WYSIWYG"==this.oApp.getEditingMode()?this.oApp.exec("CHANGE_EDITING_MODE",["HTMLSrc"]):this.oApp.exec("CHANGE_EDITING_MODE",["WYSIWYG"])},$ON_CHANGE_EDITING_MODE:function(a){"HTMLSrc"==
|
||||
a?(this.welModeToggleButton.addClass("active").parent("span").addClass("active"),this.oApp.exec("DISABLE_ALL_UI",[])):(this.welModeToggleButton.removeClass("active").parent("span").removeClass("active"),this.oApp.exec("ENABLE_ALL_UI",[]))}});xe.XE_Editorresize=c.Class({name:"XE_Editorresize",$init:function(a,b){this.inputArea=c(".xpress_xeditor_editing_area_container",a).get(0);this.oVerticalResizer=c(".xpress_xeditor_editingArea_verticalResizer",a).get(0);this.oCheckBox=c("#editorresize",a).get(0);
|
||||
this.oIframe=b;var d=this;c(b).load(function(){d.oIframeBody=c(b).contents().find("body")})},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.oCheckBox,"change","XE_TOGGLE_EDITOR_RESIZE")},$ON_XE_TOGGLE_EDITOR_RESIZE:function(){!0==this.oCheckBox.checked?(void 0==this._prevHeight&&(this._prevHeight=this.inputArea.style.height),this.oVerticalResizer.style.display="none",this.oApp.registerBrowserEvent(this.oIframeBody,"keydown","XE_EDITOR_RESIZE"),this.inputArea.style.height=this.oIframe.style.height=
|
||||
this.oIframeBody[0].scrollHeight+"px"):(c(this.oIframeBody).unbind("keydown"),this.oVerticalResizer.style.display="block",this.inputArea.style.height=this._prevHeight,this.oIframe.style.height=this._prevHeight)},$ON_XE_EDITOR_RESIZE:function(){var a=this;setTimeout(function(){a.inputArea.style.height=a.oIframe.style.height=a.oIframeBody[0].scrollHeight+"px"},0)}});xe.XpressCore.oMessageMap={"XE_EditingAreaManager.onExit":"%uB0B4%uC6A9%uC774%20%uBCC0%uACBD%uB418%uC5C8%uC2B5%uB2C8%uB2E4.","XE_FontColor.invalidColorCode":"%uC0C9%uC0C1%20%uCF54%uB4DC%uB97C%20%uC62C%uBC14%uB974%uAC8C%20%uC785%uB825%uD558%uC5EC%20%uC8FC%uC2DC%uAE30%20%uBC14%uB78D%uB2C8%uB2E4.\n\n%uC608%29%20%23000000%2C%20%23FF0000%2C%20%23FFFFFF%2C%20%23ffffff%2C%20ffffff",
|
||||
"XE_BGColor.invalidColorCode":"%uC0C9%uC0C1%20%uCF54%uB4DC%uB97C%20%uC62C%uBC14%uB974%uAC8C%20%uC785%uB825%uD558%uC5EC%20%uC8FC%uC2DC%uAE30%20%uBC14%uB78D%uB2C8%uB2E4.\n\n%uC608%29%20%23000000%2C%20%23FF0000%2C%20%23FFFFFF%2C%20%23ffffff%2C%20ffffff","XE_Hyperlink.invalidURL":"%uC785%uB825%uD558%uC2E0%20URL%uC774%20%uC62C%uBC14%uB974%uC9C0%20%uC54A%uC2B5%uB2C8%uB2E4."};regex_handler=/<(.*?)\s+on[a-z]+\s*=(?:\s*".*?"|\s*'.*?'|[^\s>]+)(.*?)>/ig;regex_font_color=/color\s*=(?:\s*"(.*?)"|\s*'(.*?)'|([^\s>]+))/i;
|
||||
regex_font_face=/face\s*=(?:\s*"(.*?)"|\s*'(.*?)'|([^\s>]+))/i;regex_font_size=/size\s*=(?:\s*"(\d+)"|\s*'(\d+)'|(\d+))/i;regex_style=/style\s*=\s*(?:\s*"(.*?)"|\s*'(.*?)'|([^\s>]+))/i;regex_font_weight=/font-weight\s*:\s*([a-z]+);?/i;regex_font_style=/font-style\s*:\s*italic;?/i;regex_font_decoration=/text-decoration\s*:\s*([a-z -]+);?/i;regex_jquery=/jQuery\d+\s*=(\s*"\d+"|\d+)/ig;regex_quote_attr=/([\w-]+\s*=(?:\s*"[^"]+"|\s*'[^']+'))|([\w-]+)=([^\s]+)/g;var q="base meta link hr br basefont param img area input isindex col".split(" ");
|
||||
xe.XE_XHTMLFormatter=c.Class({name:"XE_XHTMLFormatter",$ON_MSG_APP_READY:function(){this.oApp.addConverter("WYSIWYG_TO_IR",this.TO_IR);this.oApp.addConverter("HTMLSrc_TO_IR",this.TO_IR);this.oApp.addConverter("IR_TO_HTMLSrc",this.IR_TO);this.oApp.addConverter("IR_TO_WYSIWYG",this.IR_TO)},TO_IR:function(a){var b=[];c.browser.msie&&(a=a.replace(regex_jquery,""),a=a.replace(/<(\w+) ([^>]+)>/g,function(a,b,c){return"<"+b+" "+c.replace(regex_quote_attr,function(a,b,c,d){return b?b:/^"/.test(d)||/"$/.test(d)?
|
||||
c+"="+d:c+'="'+(d||c)+'"'})+">"}));regex=/<(\/)?([:\w\/-]+)(.*?)>/ig;a=a.replace(regex,function(a,d,g,h){d=d||"";g=g.toLowerCase();h=c.trim(h||"");if(d){h=[];a="";if(0<=c.inArray(g,q)||!b.length)return"";do a=b.pop(),a.tag==g&&"deleted"!=a.state&&h.push("</"+a.tag+">");while(b.length&&a.tag!=g);return h.join("")}if(0<=c.inArray(g,q)){a=h.length;"br"==g&&(h="");if(!h||"/"!=h.substring(a-1,a))h+=" /";return"<"+g+" "+c.trim(h)+">"}b.push({tag:g,state:""});return"<"+d+g+(h?" "+h:"")+">"});if(b.length){var d=
|
||||
"";do d=b.pop(),"deleted"!=d.state&&(a+="</"+d.tag+">");while(b.length)}regex=/<\/p>[ \t]*(\n)?/ig;return a=a.replace(regex,"</p>\n")},IR_TO:function(a){return a}});xe.XE_Extension=c.Class({name:"XE_Extension",seq:"",last_doc:"",$init:function(a,b){this.seq=b;this._assignHTMLObjects(a)},_assignHTMLObjects:function(a){this.elDropdownLayer=c("DIV.xpress_xeditor_extension_layer",a).get(0)},_removeAttrs:function(a){return a},_addEvent:function(){if("WYSIWYG"==this.oApp.getEditingMode()){var a=this.oApp.getWYSIWYGDocument(),
|
||||
b=this.seq,d=function(){var a=c(this),d=a.attr("editor_component");d&&c.isFunction(openComponent)&&(editorPrevNode=a.get(0),openComponent(d,b))};c(a).find("img,div[editor_component]").each(function(){var b=c(this);"IMG"==this.nodeName&&(!b.attr("editor_component")&&!b.attr("widget"))&&b.attr("editor_component","image_link");this.last_doc!=a&&(b.unbind("dblclick.widget").bind("dblclick.widget",d),this.last_doc=a)})}},$ON_MSG_APP_READY:function(){var a=this.oApp;a.exec("REGISTER_UI_EVENT",["extension",
|
||||
"click","TOGGLE_EXTENSION_LAYER"]);var b=function(){a.exec("HIDE_ACTIVE_LAYER",[])};c("a",this.elDropdownLayer).each(function(){var a=c(this);a.attr("component_onclick_event_added")||(a.click(b),a.attr("component_onclick_event_added","Y"))})},$ON_TOGGLE_EXTENSION_LAYER:function(){this.oApp.exec("TOGGLE_TOOLBAR_ACTIVE_LAYER",[this.elDropdownLayer])},$ON_CHANGE_EDITING_MODE:function(){var a=this;setTimeout(function(){a._addEvent()},100)},$ON_PASTE_HTML:function(){var a=this;setTimeout(function(){a._addEvent()},
|
||||
100)},$ON_LOAD_IR_FIELD:function(){var a=this;setTimeout(function(){a._addEvent()},100)},$ON_SET_IR:function(){var a=this;setTimeout(function(){a._addEvent()},100)}});xe.XE_AutoSave=c.Class({name:"XE_AutoSave",form:null,textarea:null,$init:function(a,b){this.form=a.form;this.textarea=a;this._assignHTMLObjects(b)},_assignHTMLObjects:function(){this.welMessageBox=c("autosave_message")},$ON_MSG_APP_READY:function(){var a=c(this.form._saved_doc_title),b=c(this.form._saved_doc_content),a=c.trim(a.val()),
|
||||
b=c.trim(b.val());if(a||b)confirm(this.form._saved_doc_message.value)?(c(this.form.title).val(a),this.oApp.setIR(b),"function"==typeof editorGetAutoSavedDoc&&editorGetAutoSavedDoc(this.form)):editorRemoveSavedDoc();editorEnableAutoSave(this.form,c(this.form).attr("editor_sequence"));this.oApp.exec("REGISTER_HOTKEY",["ctrl+shift+s","AUTO_SAVE"])},$ON_AUTO_SAVE:function(){_editorAutoSave()}});xe.XE_FormatWithSelectUI=c.Class({name:"XE_FormatWithSelectUI",$init:function(a){this._assignHTMLObjects(a)},
|
||||
_assignHTMLObjects:function(a){this.elFormatSelect=c("SELECT.xpress_xeditor_ui_format_select",a).get(0)},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.elFormatSelect,"change","SET_FORMAT_FROM_SELECT_UI");this.elFormatSelect.selectedIndex=0},$ON_MSG_STYLE_CHANGED:function(){var a=this.oApp.getWYSIWYGDocument().queryCommandValue("FormatBlock");if(!a)return this.elFormatSelect.selectedIndex=0;c.browser.msie&&/([0-9])/.test(a)&&(a="h"+RegExp.$1);this.elFormatSelect.value=a.toLowerCase();
|
||||
0>this.elFormatSelect.selectedIndex&&(this.elFormatSelect.selectedIndex=0);this.elFormatSelect.value!=a.toLowerCase()&&(this.elFormatSelect.selectedIndex=0)},$ON_SET_FORMAT_FROM_SELECT_UI:function(){var a=this.elFormatSelect.value;a&&(c.browser.msie&&(a="<"+a+">"),this.oApp.exec("EXECCOMMAND",["FormatBlock",!1,a]),this.oApp.exec("CHECK_STYLE_CHANGE",[]))}});xe.XE_Table=c.Class({_startSel:null,_endSel:null,$ON_MSG_APP_READY:function(){this._doc=c(this.oApp.getWYSIWYGDocument());this.$FnMouseDown=c.fnBind(this._mousedown,
|
||||
this);this.$FnMouseUp=c.fnBind(this._mouseup,this);this.$FnMouseMove=c.fnBind(this._mousemove,this);this._doc.mousedown(this.$FnMouseDown);this._endSel=this._startSel=null;this.oApp.exec("REGISTER_UI_EVENT",["merge_cells","click","MERGE_CELLS"]);this.oApp.exec("REGISTER_UI_EVENT",["split_col","click","CELL_SPLIT_BY_COL"]);this.oApp.exec("REGISTER_UI_EVENT",["split_row","click","CELL_SPLIT_BY_ROW"]);this.oApp.exec("REGISTER_HOTKEY",["ctrl+alt+m","MERGE_CELLS"]);this.$super.$ON_MSG_APP_READY()},$ON_MERGE_CELLS:function(){var a=
|
||||
"",b=c(".xe_selected_cell",this.oApp.getWYSIWYGDocument()).filter("td,th"),d=this;if(b.length){this.oApp.exec("RECORD_UNDO_ACTION",["Cell:Merge"]);b.each(function(){a+=c(this).html()}).eq(0).html(a);var f=0;b.eq(0).nextAll("td,th").andSelf().filter(".xe_selected_cell").each(function(){f+=d._getSpan(this,"col")});this._getRect(b.eq(0));var e=b.eq(0).parent("tr"),g=b.eq(b.length-1).parent("tr"),h=b.parents("table").eq(0).find("tr"),e=h.index(g.get(0))-h.index(e.get(0))+this._getSpan(b.eq(b.length-1),
|
||||
"row");b.eq(0).attr("colSpan",f).attr("rowSpan",e);b.slice(1).remove()}},$ON_CELL_SPLIT_BY_ROW:function(){var a=c(".xe_selected_cell",this.oApp.getWYSIWYGDocument()).filter("td,th"),b=a.parents("table").eq(0),d=this;if(a.length){this.oApp.exec("RECORD_UNDO_ACTION",["Cell:Split By Row"]);var f=this._getRect(a.eq(0)).top,e=this._getRect(a.eq(a.length-1)).bottom;(a=b.find("td,th").filter(function(){var a=d._getRect(c(this));return!(a.bottom<=f||a.top>=e)})).filter(".xe_selected_cell").each(function(){var b=
|
||||
c(this),e=b.parent("tr"),f=d._getSpan(b,"row"),j=d._getRect(b),l=[],m=b.clone().html("<br />"),n=1,p=1;1<f?(n=Math.ceil(f/2),p=f-n,l.push(function(){b.attr("rowSpan",n)}),m.attr("rowSpan",p)):(a.filter(function(){if(b.get(0)==this)return!1;var a=c(this),a=d._getRect(a);return a.bottom<=j.top||a.top>=j.bottom?!1:!0}).each(function(){var a=c(this),b=d._getSpan(a,"row")+1;l.push(function(){a.attr("rowSpan",b)})}),c.browser.msie?e.after(e.clone().empty().get(0).outerHTML):e.after(e.clone().empty()));
|
||||
f=e.nextAll("tr");f.length?(e=f.eq(n-1).children("td,th").filter(function(){return d._getRect(c(this)).left>j.left}),c.browser.msie?e.length?e.eq(0).before(m.get(0).outerHTML):f.eq(n-1).append(m.get(0).outerHTML):e.length?e.slice(0,1).before(m):f.slice(n-1,1).append(m)):e.after(e.clone().empty().append(m));c.each(l,function(){this()})})}},$ON_CELL_SPLIT_BY_COL:function(){var a=c(".xe_selected_cell",this.oApp.getWYSIWYGDocument()).filter("td,th"),b=a.parents("table").slice(0,1),d=this;(new Date).getTime();
|
||||
if(a.length){this.oApp.exec("RECORD_UNDO_ACTION",["Cell:Split By Column"]);var f=a.eq(0).parent("tr"),e=this._getRect(f.find(".xe_selected_cell:first")).left,g=this._getRect(f.find(".xe_selected_cell:last")).right;(a=b.find("td,th").filter(function(){var a=d._getRect(c(this));return!(a.right<=e||a.left>=g)})).filter(".xe_selected_cell").each(function(){var b=c(this),e=d._getSpan(b,"col"),f=b.clone().html("<br />");if(1<e){var g=Math.ceil(e/2),e=e-g;b.attr("colSpan",g);f.attr("colSpan",e)}else{var m=
|
||||
d._getRect(b);a.filter(function(){if(b.get(0)==this)return!1;var a=c(this),a=d._getRect(a);return a.right<=m.left||a.left>=m.right?!1:!0}).each(function(){var a=c(this);a.attr("colSpan",d._getSpan(a,"col")+1)});f.attr("colSpan",1)}c.browser.msie?b.after(f.get(0).outerHTML):b.after(f)})}},$ON_CHECK_STYLE_CHANGE:function(){var a=this.oApp,b=this._startSel&&this._startSel.is(".xe_selected_cell")?"ENABLE_UI":"DISABLE_UI";c.each(["merge_cells","split_col","split_row"],function(){a.exec(b,[this])})},_mousedown:function(a){function b(){d=
|
||||
f.getSelection().cloneRange();d.collapseToStart();d=c(d.startContainer).parents().andSelf().filter("td,th").eq(0);if(!d.length)return e._removeAllListener()||!0;e._getRect(e._startSel=d);e._doc.bind("mousemove",e.$FnMouseMove);e._doc.bind("mouseup",e.$FnMouseUp)}var d=c(a.target).parents().andSelf().filter("td,th,table"),f=this.oApp,e=this;c("td.xe_selected_cell",this.oApp.getWYSIWYGDocument()).removeClass("xe_selected_cell");this._endSel=this._startSel=null;d.length&&this._isLeftClicked(a.button)&&
|
||||
setTimeout(b,0)},_mouseup:function(){this._removeAllListener();this._startSel=this._endSel=null},_mousemove:function(a){var b=c(a.target).parents().andSelf().filter("td,th").eq(0),d=this;if(b.length&&this._isLeftClicked(a.button)&&(this._endSel||b.get(0)!=this._startSel.get(0))&&!(this._endSel&&b.get(0)==this._endSel.get(0))){this._getRect(this._endSel=b);var f=Math.min(this._startSel.rect.top,this._endSel.rect.top),e=Math.min(this._startSel.rect.left,this._endSel.rect.left),g=Math.max(this._startSel.rect.bottom,
|
||||
this._endSel.rect.bottom),h=Math.max(this._startSel.rect.right,this._endSel.rect.right);a=b.parents("table").find("td,th").removeClass("xe_selected_cell");b=c();do b.each(function(){var a=d._getRect(c(this));a.right>h&&(h=a.right);a.left<e&&(e=a.left);a.top<f&&(f=a.top);a.bottom>g&&(g=a.bottom)}),a=a.filter(":not(.xe_selected_cell)"),b=a.filter(function(){var a=d._getRect(c(this));return a.right<=e||a.left>=h||a.bottom<=f||a.top>=g?!1:!0}).addClass("xe_selected_cell");while(b.length);c.browser.mozilla||
|
||||
setTimeout(function(){var a=d.oApp.getSelection();d._startSel&&(d._startSel.get(0).firstChild||d._startSel.text(" "),a.selectNode(d._startSel.get(0).firstChild),a.collapseToStart(),a.select())},0);return!1}},_removeAllListener:function(){this._doc.unbind("mousemove",this.$FnMouseMove);this._doc.unbind("mouseup",this.$FnMouseUp)},_isLeftClicked:function(a){return c.browser.msie?!!(a&1):0==a},_getRect:function(a){var b=a.get(0);a.rect={};a.rect.top=b.offsetTop;a.rect.left=b.offsetLeft;a.rect.bottom=
|
||||
a.rect.top+b.offsetHeight;a.rect.right=a.rect.left+b.offsetWidth;return a.rect},_getSpan:function(a,b){var d=parseInt(c(a).attr(b+"span"));return isNaN(d)?1:d}}).extend(xe.XE_Table)})(jQuery);window.xe||(xe={});xe.Editors=[];
|
||||
function editorStart_xe(c,p,n,q,a,b,d,f){function e(){try{var a=l.contentWindow.document;if("about:blank"==a.location)throw"blank";a.body.innerHTML=a.body.innerHTML.trim();j.registerPlugin(new xe.XE_EditingArea_WYSIWYG(l));j.registerPlugin(new xe.XpressRangeManager(l));j.registerPlugin(new xe.XE_ExecCommand(l));d&&!a.body.style.fontFamily&&(a.body.style.fontFamily=d);f&&!a.body.style.fontSize&&(a.body.style.fontSize=f);j.run()}catch(b){setTimeout(e,0)}}"undefined"==typeof a&&(a="white");"undefined"==
|
||||
typeof b&&(b="xeStyle");"undefined"==typeof d&&(d="");"undefined"==typeof f&&(f="");var g=request_uri+"modules/editor/styles/"+b+"/editor.html";b=jQuery("#xpress-editor-"+c);var g=jQuery('<iframe id="editor_iframe_'+c+'" allowTransparency="true" frameborder="0" src="'+g+'" scrolling="yes" style="width:100%;height:'+q+'px"></iframe>'),h=jQuery('<textarea rows="8" cols="42" class="input_syntax '+a+'" style="display:none"></textarea>');a=b.get(0).form;a.setAttribute("editor_sequence",c);b.css("display",
|
||||
"none");var k="";0<jQuery("input[name=content]",a).size()&&(k=jQuery("input[name=content]",a).val().replace(/src=\"files\/attach/g,'src="'+request_uri+"files/attach"),jQuery("#xpress-editor-"+c).val(k));b.hide().css("width","100%").before(g).after(h);var j=new xe.XpressCore,l=g.get(0);b=b.get(0);g=h.get(0);h=jQuery(".xpress-editor",a).get(0);j.getFrame=function(){return l};j.getContent=function(){editorGetContentTextarea_xe(c)};k=a[n].value;xFF&&!k&&(k="<br />");k=editorReplacePath(k);a[n].value=
|
||||
k;jQuery("#xpress-editor-"+c).val(k);editorRelKeys[c]=[];editorRelKeys[c].primary=a[p];editorRelKeys[c].content=a[n];editorRelKeys[c].func=editorGetContentTextarea_xe;editorRelKeys[c].editor=j;editorRelKeys[c].pasteHTML=function(a){j.exec("PASTE_HTML",[a])};xe.Editors[c]=j;j.registerPlugin(new xe.CorePlugin(null));j.registerPlugin(new xe.XE_PreservTemplate(jQuery("#xpress-editor-"+c).val()));j.registerPlugin(new xe.StringConverterManager);j.registerPlugin(new xe.XE_EditingAreaManager("WYSIWYG",b,
|
||||
{nHeight:parseInt(q),nMinHeight:100},null,h));j.registerPlugin(new xe.XE_EditingArea_HTMLSrc(g));j.registerPlugin(new xe.XE_EditingAreaVerticalResizer(h));j.registerPlugin(new xe.Utils);j.registerPlugin(new xe.DialogLayerManager);j.registerPlugin(new xe.ActiveLayerManager);j.registerPlugin(new xe.Hotkey);j.registerPlugin(new xe.XE_WYSIWYGStyler);j.registerPlugin(new xe.XE_WYSIWYGStyleGetter);j.registerPlugin(new xe.MessageManager(xe.XpressCore.oMessageMap));j.registerPlugin(new xe.XE_Toolbar(h));
|
||||
j.registerPlugin(new xe.XE_XHTMLFormatter);j.registerPlugin(new xe.XE_GET_WYSYWYG_MODE(c));jQuery("ul.extra1").length&&(j.registerPlugin(new xe.XE_ColorPalette(h)),j.registerPlugin(new xe.XE_FontColor(h)),j.registerPlugin(new xe.XE_BGColor(h)),j.registerPlugin(new xe.XE_Quote(h)),j.registerPlugin(new xe.XE_FontNameWithSelectUI(h)),j.registerPlugin(new xe.XE_FontSizeWithSelectUI(h)),j.registerPlugin(new xe.XE_LineHeightWithSelectUI(h)),j.registerPlugin(new xe.XE_UndoRedo),j.registerPlugin(new xe.XE_Table(h)),
|
||||
j.registerPlugin(new xe.XE_Hyperlink(h)),j.registerPlugin(new xe.XE_FormatWithSelectUI(h)),j.registerPlugin(new xe.XE_SCharacter(h)));jQuery("ul.extra2").length&&j.registerPlugin(new xe.XE_Extension(h,c));jQuery("ul.extra3").length&&j.registerPlugin(new xe.XE_EditingModeToggler(h));jQuery("#editorresize").length&&j.registerPlugin(new xe.XE_Editorresize(h,n));!jQuery.browser.msie&&!jQuery.browser.opera&&j.registerPlugin(new xe.XE_WYSIWYGEnterKey(n));(s=a._saved_doc_title)&&j.registerPlugin(new xe.XE_AutoSave(b,
|
||||
j.registerPlugin(new xe.XE_Hyperlink(h)),j.registerPlugin(new xe.XE_FormatWithSelectUI(h)),j.registerPlugin(new xe.XE_SCharacter(h)));jQuery("ul.extra2").length&&j.registerPlugin(new xe.XE_Extension(h,c));jQuery("ul.extra3").length&&j.registerPlugin(new xe.XE_EditingModeToggler(h));jQuery("#editorresize").length&&j.registerPlugin(new xe.XE_Editorresize(h,l));!jQuery.browser.msie&&!jQuery.browser.opera&&j.registerPlugin(new xe.XE_WYSIWYGEnterKey(l));(s=a._saved_doc_title)&&j.registerPlugin(new xe.XE_AutoSave(b,
|
||||
h));e();return j}
|
||||
function editorGetContentTextarea_xe(c){c=xe.Editors[c]||null;if(!c)return"";c=c.getIR();if(!jQuery.trim(c.replace(/( |<\/?(p|br|span|div)([^>]+)?>)/ig,"")))return"";c=c.replace(/<br ?\/?>$/i,"");if(1024>c.length){var o="#text A BR IMG EM STRONG SPAN BIG CITE CODE DD DFN HR INS KBD LINK Q SAMP SMALL SUB SUP TT".split(" "),l=!0,p=jQuery("<div>"+c+"</div>").eq(0).contents();jQuery.each(p,function(){3!=this.nodeType&&-1==jQuery.inArray(this.nodeName,o)&&(l=!1)});l&&(c="<p>"+c+"</p>")}c=c.replace(/src\s?=\s?(["']?)(?:\.\.\/)+(files\/attach\/)/ig,
|
||||
function(a,b,c){return"src="+(b||"")+c});c=c.replace(/\<(\/)?([A-Z]+)([^>]*)\>/ig,function(a,b,c,f){f=f?f.replace(/ ([A-Z]+?)\=/ig,function(a,b){b=b.toLowerCase();return" "+b+"="}):"";c=c.toLowerCase();b||(b="");return"<"+b+c+f+">"});return c=c.replace("<br>","<br />")}function editorGetIframe(c){return jQuery("iframe#editor_iframe_"+c).get(0)}function editorReplaceHTML(c,o){var o=editorReplacePath(o),l=parseInt(c.id.replace(/^.*_/,""),10);editorRelKeys[l].pasteHTML(o)}
|
||||
function editorReplacePath(c){return c=c.replace(/\<([^\>\<]*)(src=|href=|url\()("|\')*([^"\'\)]+)("|\'|\))*(\s|>)*/ig,function(c,l,p,a,b,d,f){"url("==p?(a="",d=")"):("undefined"==typeof a&&(a='"'),"undefined"==typeof d&&(d='"'),"undefined"==typeof f&&(f=""));b=jQuery.trim(b).replace(/^\.\//,"");return/^(http\:|https\:|ftp\:|telnet\:|mms\:|mailto\:|\/|\.\.|\#)/i.test(b)?c:"<"+l+p+a+request_uri+b+d+f})}
|
||||
function editorGetAutoSavedDoc(c){var o=[];o.mid=current_mid;o.editor_sequence=c.getAttribute("editor_sequence");setTimeout(function(){exec_xml("editor","procEditorLoadSavedDocument",o,function(c){editorRelKeys[o.editor_sequence].primary.value=c.document_srl;"object"==typeof uploadSettingObj[o.editor_sequence]&&editorUploadInit(uploadSettingObj[o.editor_sequence],!0)},"error message editor_sequence title content document_srl".split(" "))},0)}
|
||||
function editorGetContentTextarea_xe(c){c=xe.Editors[c]||null;if(!c)return"";c=c.getIR();if(!jQuery.trim(c.replace(/( |<\/?(p|br|span|div)([^>]+)?>)/ig,"")))return"";c=c.replace(/<br ?\/?>$/i,"");if(1024>c.length){var p="#text A BR IMG EM STRONG SPAN BIG CITE CODE DD DFN HR INS KBD LINK Q SAMP SMALL SUB SUP TT".split(" "),n=!0,q=jQuery("<div>"+c+"</div>").eq(0).contents();jQuery.each(q,function(){3!=this.nodeType&&-1==jQuery.inArray(this.nodeName,p)&&(n=!1)});n&&(c="<p>"+c+"</p>")}c=c.replace(/src\s?=\s?(["']?)(?:\.\.\/)+(files\/attach\/)/ig,
|
||||
function(a,b,c){return"src="+(b||"")+c});c=c.replace(/\<(\/)?([A-Z]+)([^>]*)\>/ig,function(a,b,c,f){f=f?f.replace(/ ([A-Z]+?)\=/ig,function(a,b){b=b.toLowerCase();return" "+b+"="}):"";c=c.toLowerCase();b||(b="");return"<"+b+c+f+">"});return c=c.replace("<br>","<br />")}function editorGetIframe(c){return jQuery("iframe#editor_iframe_"+c).get(0)}function editorReplaceHTML(c,p){p=editorReplacePath(p);var n=parseInt(c.id.replace(/^.*_/,""),10);editorRelKeys[n].pasteHTML(p)}
|
||||
function editorReplacePath(c){return c=c.replace(/\<([^\>\<]*)(src=|href=|url\()("|\')*([^"\'\)]+)("|\'|\))*(\s|>)*/ig,function(c,n,q,a,b,d,f){"url("==q?(a="",d=")"):("undefined"==typeof a&&(a='"'),"undefined"==typeof d&&(d='"'),"undefined"==typeof f&&(f=""));b=jQuery.trim(b).replace(/^\.\//,"");return/^(http\:|https\:|ftp\:|telnet\:|mms\:|mailto\:|\/|\.\.|\#)/i.test(b)?c:"<"+n+q+a+request_uri+b+d+f})}
|
||||
function editorGetAutoSavedDoc(c){var p=[];p.mid=current_mid;p.editor_sequence=c.getAttribute("editor_sequence");setTimeout(function(){exec_xml("editor","procEditorLoadSavedDocument",p,function(c){editorRelKeys[p.editor_sequence].primary.value=c.document_srl;"object"==typeof uploadSettingObj[p.editor_sequence]&&editorUploadInit(uploadSettingObj[p.editor_sequence],!0)},"error message editor_sequence title content document_srl".split(" "))},0)}
|
||||
xe.XE_GET_WYSYWYG_MODE=jQuery.Class({name:"XE_GET_WYSYWYG_MODE",$init:function(c){this.editor_sequence=c},$ON_CHANGE_EDITING_MODE:function(c){editorMode[this.editor_sequence]="HTMLSrc"==c?"html":"wysiwyg"}});xe.XE_PreservTemplate=jQuery.Class({name:"XE_PreservTemplate",isRun:!1,$BEFORE_SET_IR:function(c){if(!this.isRun&&!c)return this.isRun=!0,!1}});
|
||||
xe.XE_Preview=jQuery.Class({name:"XE_Preview",elPreviewButton:null,$init:function(c){this._assignHTMLObjects(c)},_assignHTMLObjects:function(c){this.elPreviewButton=jQuery("BUTTON.xpress_xeditor_preview_button",c)},$ON_MSG_APP_READY:function(){this.oApp.registerBrowserEvent(this.elPreviewButton.get(0),"click","EVENT_PREVIEW",[])},$ON_EVENT_PREVIEW:function(){}});
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
<load target="js/editor_module_config.js" usecdn="true" />
|
||||
<div class="x_page-header">
|
||||
<h1>{$lang->editor} <a class="x_icon-question-sign" href="./help/index.html#UMAN_advanced_editor" target="_blank">{$lang->help}</a></h1>
|
||||
<h1>{$lang->editor} <a class="x_icon-question-sign" href="./admin/help/index.html#UMAN_advanced_editor" target="_blank">{$lang->help}</a></h1>
|
||||
</div>
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE && $XE_VALIDATOR_ID == 'modules/editor/tpl/admin_index/1'" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
</div>
|
||||
<!-- Editor Preview -->
|
||||
|
|
@ -30,6 +30,7 @@
|
|||
<form action="./" method="post" ruleset="generalConfig" class="x_form-horizontal">
|
||||
<input type="hidden" name="module" value="editor" />
|
||||
<input type="hidden" name="act" value="procEditorAdminGeneralConfig" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/editor/tpl/admin_index/1" />
|
||||
|
||||
<div class="x_control-group">
|
||||
<label for="change_lang_type" class="x_control-label">{$lang->guide_choose_main_editor}</label>
|
||||
|
|
@ -50,7 +51,7 @@
|
|||
<div class="x_control-group">
|
||||
<label for="editor_height" class="x_control-label">{$lang->guide_set_height_main_editor}</label>
|
||||
<div class="x_controls">
|
||||
<input type="number" name="editor_height" id="editor_height" value="<!--@if($editor_config->editor_height)-->{$editor_config->editor_height}<!--@else-->{$editor_config_default['editor_height']}<!--@end-->" style="width:50px" /> px
|
||||
<input type="number" name="editor_height" id="editor_height" value="{$editor_config->editor_height}"|cond="$editor_config->editor_height" value="{$editor_config_default['editor_height']}"|cond="!$editor_config->editor_height" /> px
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
|
|
@ -73,7 +74,7 @@
|
|||
<div class="x_control-group">
|
||||
<label for="comment_editor_height" class="x_control-label">{$lang->guide_set_height_comment_editor}</label>
|
||||
<div class="x_controls">
|
||||
<input type="number" name="comment_editor_height"id="comment_editor_height" value="<!--@if($editor_config->comment_editor_height)-->{$editor_config->comment_editor_height}<!--@else-->{$editor_config_default['comment_editor_height']}<!--@end-->" style="width:50px" /> px
|
||||
<input type="number" name="comment_editor_height"id="comment_editor_height" value="{$editor_config->comment_editor_height}"|cond="$editor_config->comment_editor_height" value="{$editor_config_default['comment_editor_height']}"|cond="!$editor_config->comment_editor_height" /> px
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
|
|
@ -112,7 +113,7 @@
|
|||
<div class="x_control-group">
|
||||
<label class="x_control-label" for="fontSize">{$lang->guide_choose_font_size_body}</label>
|
||||
<div class="x_controls">
|
||||
<input type="number" id="fontSize" name="content_font_size" value="{$fontSize}" style="width:50px" /> px
|
||||
<input type="number" id="fontSize" name="content_font_size" value="{$fontSize}" /> px
|
||||
</div>
|
||||
</div>
|
||||
<div class="x_clearfix btnArea">
|
||||
|
|
@ -128,6 +129,7 @@
|
|||
<form action="./" method="post" ruleset="componentOrderAndUse">
|
||||
<input type="hidden" name="module" value="editor" />
|
||||
<input type="hidden" name="act" value="procEditorAdminCheckUseListOrder" />
|
||||
<input type="hidden" name="xe_validator_id" value="modules/editor/tpl/admin_index/1" />
|
||||
<table class="x_table x_table-striped x_table-hover sortable">
|
||||
<caption><strong>{$lang->total_count}({$component_count})</strong></caption>
|
||||
<thead>
|
||||
|
|
|
|||
|
|
@ -52,10 +52,10 @@
|
|||
<tr>
|
||||
<th scope="row" style="text-align:right">{$lang->editor_height}</th>
|
||||
<td>
|
||||
<input type="number" min="0" name="editor_height" value="{$editor_config->editor_height}" style="width:50px" /> px
|
||||
<input type="number" min="0" name="editor_height" value="{$editor_config->editor_height}" /> px
|
||||
</td>
|
||||
<td>
|
||||
<input type="number" min="0" name="comment_editor_height" value="{$editor_config->comment_editor_height}" style="width:50px" /> px
|
||||
<input type="number" min="0" name="comment_editor_height" value="{$editor_config->comment_editor_height}" /> px
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
|
@ -72,7 +72,7 @@
|
|||
<tr>
|
||||
<th scope="row" style="text-align:right">{$lang->enable_autosave}</th>
|
||||
<td colspan="2">
|
||||
<label for="enable_autosave">
|
||||
<label for="enable_autosave" class="x_inline">
|
||||
<input type="checkbox" value="Y" id="enable_autosave" name="enable_autosave" checked="checked"|cond="$editor_config->enable_autosave=='Y'" />
|
||||
{$lang->about_enable_autosave}
|
||||
</label>
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ var defaultHandlers;
|
|||
|
||||
function init(cfg, exe) {
|
||||
var seq = cfg.editorSequence;
|
||||
|
||||
|
||||
if(!is_def(seq)) return;
|
||||
|
||||
cfg = $.extend({
|
||||
|
|
@ -437,7 +437,10 @@ function insertUploadedFile(editorSequence) {
|
|||
|
||||
// html 모드
|
||||
if(editorMode[editorSequence]=='html'){
|
||||
if(text.length>0) get_by_id('editor_textarea_'+editorSequence).value += text.join('');
|
||||
if(text.length>0 && get_by_id('editor_textarea_'+editorSequence))
|
||||
{
|
||||
get_by_id('editor_textarea_'+editorSequence).value += text.join('');
|
||||
}
|
||||
|
||||
// 위지윅 모드
|
||||
}else{
|
||||
|
|
|
|||
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