mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-21 04:09:55 +09:00
merge from 1.5.2
git-svn-id: http://xe-core.googlecode.com/svn/trunk@10446 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
6c23751ef8
commit
c727926d9e
382 changed files with 6855 additions and 3603 deletions
|
|
@ -40,6 +40,7 @@
|
|||
|
||||
function getAdminFTPList()
|
||||
{
|
||||
Context::loadLang('./modules/autoinstall/lang');
|
||||
set_time_limit(5);
|
||||
require_once(_XE_PATH_.'libs/ftp.class.php');
|
||||
$ftp_info = Context::getRequestVars();
|
||||
|
|
@ -90,6 +91,10 @@
|
|||
if(strpos($v,'d') === 0 || strpos($v, '<DIR>')) $list[] = substr(strrchr($v,' '),1) . '/';
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return new Object(-1,'msg_ftp_no_directory');
|
||||
}
|
||||
$this->add('list', $list);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -144,6 +144,43 @@
|
|||
$output = $oAdminAdminModel->getFavoriteList(0, true);
|
||||
Context::set('favorite_list', $output->get('favoriteList'));
|
||||
|
||||
// Retrieve recent news and set them into context,
|
||||
// move from index method, because use in admin footer
|
||||
$newest_news_url = sprintf("http://news.xpressengine.com/%s/news.php?version=%s&package=%s", _XE_LOCATION_, __ZBXE_VERSION__, _XE_PACKAGE_);
|
||||
$cache_file = sprintf("%sfiles/cache/newest_news.%s.cache.php", _XE_PATH_, _XE_LOCATION_);
|
||||
if(!file_exists($cache_file) || filemtime($cache_file)+ 60*60 < time()) {
|
||||
// Considering if data cannot be retrieved due to network problem, modify filemtime to prevent trying to reload again when refreshing administration page
|
||||
// Ensure to access the administration page even though news cannot be displayed
|
||||
FileHandler::writeFile($cache_file,'');
|
||||
FileHandler::getRemoteFile($newest_news_url, $cache_file, null, 1, 'GET', 'text/html', array('REQUESTURL'=>getFullUrl('')));
|
||||
}
|
||||
|
||||
if(file_exists($cache_file)) {
|
||||
$oXml = new XmlParser();
|
||||
$buff = $oXml->parse(FileHandler::readFile($cache_file));
|
||||
|
||||
$item = $buff->zbxe_news->item;
|
||||
if($item) {
|
||||
if(!is_array($item)) $item = array($item);
|
||||
|
||||
foreach($item as $key => $val) {
|
||||
$obj = null;
|
||||
$obj->title = $val->body;
|
||||
$obj->date = $val->attrs->date;
|
||||
$obj->url = $val->attrs->url;
|
||||
$news[] = $obj;
|
||||
}
|
||||
Context::set('news', $news);
|
||||
if(isset($news) && is_array($news))
|
||||
{
|
||||
Context::set('latestVersion', array_shift($news));
|
||||
}
|
||||
}
|
||||
Context::set('released_version', $buff->zbxe_news->attrs->released_version);
|
||||
Context::set('download_link', $buff->zbxe_news->attrs->download_link);
|
||||
}
|
||||
|
||||
|
||||
Context::set('subMenuTitle', $subMenuTitle);
|
||||
Context::set('gnbUrlList', $menu->list);
|
||||
Context::set('parentSrl', $parentSrl);
|
||||
|
|
@ -151,62 +188,6 @@
|
|||
Context::setBrowserTitle($browserTitle);
|
||||
}
|
||||
|
||||
function loadSideBar()
|
||||
{
|
||||
$oModuleModel = &getModel('module');
|
||||
$installed_module_list = $oModuleModel->getModulesXmlInfo();
|
||||
|
||||
$installed_modules = $package_modules = array();
|
||||
$package_idx = 0;
|
||||
foreach($installed_module_list as $key => $val) {
|
||||
if($val->category == 'migration') $val->category = 'system';
|
||||
if($val->category == 'interlock') $val->category = 'accessory';
|
||||
if($val->category == 'statistics') $val->category = 'accessory';
|
||||
|
||||
if($val->module == 'admin' || !$val->admin_index_act) continue;
|
||||
// get action information
|
||||
$action_spec = $oModuleModel->getModuleActionXml($val->module);
|
||||
$actions = array();
|
||||
if($action_spec->default_index_act) $actions[] = $action_spec->default_index_act;
|
||||
if($action_spec->admin_index_act) $actions[] = $action_spec->admin_index_act;
|
||||
if($action_spec->action) foreach($action_spec->action as $k => $v) $actions[] = $k;
|
||||
|
||||
$obj = null;
|
||||
$obj->category = $val->category;
|
||||
$obj->title = $val->title;
|
||||
$obj->description = $val->description;
|
||||
$obj->index_act = $val->admin_index_act;
|
||||
if(in_array(Context::get('act'), $actions)) $obj->selected = true;
|
||||
|
||||
// Packages
|
||||
if($val->category == 'package') {
|
||||
if($package_idx == 0) $obj->position = "first";
|
||||
else $obj->position = "mid";
|
||||
$package_modules[] = $obj;
|
||||
$package_idx ++;
|
||||
if($obj->selected) Context::set('package_selected',true);
|
||||
// Modules
|
||||
} else {
|
||||
$installed_modules[] = $obj;
|
||||
}
|
||||
if($obj->selected) {
|
||||
Context::set('selected_module_category', $val->category);
|
||||
Context::set('selected_module_info', $val);
|
||||
}
|
||||
}
|
||||
if(count($package_modules)) $package_modules[count($package_modules)-1]->position = 'end';
|
||||
Context::set('package_modules', $package_modules);
|
||||
Context::set('installed_modules', $installed_modules);
|
||||
Context::setBrowserTitle("XE Admin Page");
|
||||
|
||||
// add javascript tooltip plugin - gony
|
||||
Context::loadJavascriptPlugin('qtip');
|
||||
Context::loadJavascriptPlugin('watchinput');
|
||||
|
||||
$security = new Security();
|
||||
$security->encodeHTML('selected_module_info.', 'selected_module_info.author..', 'package_modules..', 'installed_modules..');
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Display Super Admin Dashboard
|
||||
* @return none
|
||||
|
|
@ -277,51 +258,29 @@
|
|||
Context::set('latestTrackbackList', $output->data);
|
||||
unset($args, $output, $columnList);
|
||||
|
||||
//Retrieve recent news and set them into context
|
||||
$newest_news_url = sprintf("http://news.xpressengine.com/%s/news.php?version=%s&package=%s", _XE_LOCATION_, __ZBXE_VERSION__, _XE_PACKAGE_);
|
||||
$cache_file = sprintf("%sfiles/cache/newest_news.%s.cache.php", _XE_PATH_, _XE_LOCATION_);
|
||||
if(!file_exists($cache_file) || filemtime($cache_file)+ 60*60 < time()) {
|
||||
// Considering if data cannot be retrieved due to network problem, modify filemtime to prevent trying to reload again when refreshing administration page
|
||||
// Ensure to access the administration page even though news cannot be displayed
|
||||
FileHandler::writeFile($cache_file,'');
|
||||
FileHandler::getRemoteFile($newest_news_url, $cache_file, null, 1, 'GET', 'text/html', array('REQUESTURL'=>getFullUrl('')));
|
||||
}
|
||||
|
||||
if(file_exists($cache_file)) {
|
||||
$oXml = new XmlParser();
|
||||
$buff = $oXml->parse(FileHandler::readFile($cache_file));
|
||||
|
||||
$item = $buff->zbxe_news->item;
|
||||
if($item) {
|
||||
if(!is_array($item)) $item = array($item);
|
||||
|
||||
foreach($item as $key => $val) {
|
||||
$obj = null;
|
||||
$obj->title = $val->body;
|
||||
$obj->date = $val->attrs->date;
|
||||
$obj->url = $val->attrs->url;
|
||||
$news[] = $obj;
|
||||
}
|
||||
Context::set('news', $news);
|
||||
}
|
||||
Context::set('released_version', $buff->zbxe_news->attrs->released_version);
|
||||
Context::set('download_link', $buff->zbxe_news->attrs->download_link);
|
||||
}
|
||||
|
||||
// Get list of modules
|
||||
$oModuleModel = &getModel('module');
|
||||
$module_list = $oModuleModel->getModuleList();
|
||||
if(is_array($module_list))
|
||||
{
|
||||
$isUpdated = false;
|
||||
$needUpdate = false;
|
||||
$addTables = false;
|
||||
foreach($module_list AS $key=>$value)
|
||||
{
|
||||
if($value->need_install || $value->need_update)
|
||||
$isUpdated = true;
|
||||
if($value->need_install)
|
||||
{
|
||||
$addTables = true;
|
||||
}
|
||||
if($value->need_update)
|
||||
{
|
||||
$needUpdate = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
Context::set('module_list', $module_list);
|
||||
Context::set('isUpdated', $isUpdated);
|
||||
Context::set('needUpdate', $isUpdated);
|
||||
Context::set('addTables', $addTables);
|
||||
Context::set('needUpdate', $needUpdate);
|
||||
|
||||
// gathering enviroment check
|
||||
$mainVersion = join('.', array_slice(explode('.', __ZBXE_VERSION__), 0, 2));
|
||||
|
|
|
|||
|
|
@ -82,7 +82,10 @@
|
|||
$args->menu_srl = $menuSrl;
|
||||
$args->menu_item_srl = getNextSequence();
|
||||
$args->name = '{$lang->menu_gnb[\''.$value.'\']}';
|
||||
if($value == 'dashboard') $args->url = getUrl('', 'module', 'admin');
|
||||
if($value == 'dashboard')
|
||||
{
|
||||
$args->url = 'index.php?module=admin';
|
||||
}
|
||||
else $args->url = '#';
|
||||
$args->listorder = -1*$args->menu_item_srl;
|
||||
$output = executeQuery('menu.insertMenuItem', $args);
|
||||
|
|
|
|||
|
|
@ -874,11 +874,6 @@ Lütfen son sürümü için indirme linkine tıklayınız.]]></value>
|
|||
<value xml:lang="en"><![CDATA[Ratio(Keep Aspect)]]></value>
|
||||
<value xml:lang="jp"><![CDATA[Ratio(縦横の比率をキープ)]]></value>
|
||||
</item>
|
||||
<item name="ratio">
|
||||
<value xml:lang="ko"><![CDATA[Ratio(비율 맞추기)]]></value>
|
||||
<value xml:lang="en"><![CDATA[Ratio(Keep Aspect)]]></value>
|
||||
<value xml:lang="jp"><![CDATA[Ratio(縦横の比率をキープ)]]></value>
|
||||
</item>
|
||||
<item name="about_admin_ip_limit">
|
||||
<value xml:lang="ko"><![CDATA[관리자 페이지로 접근가능한 IP대역을 지정합니다.]]></value>
|
||||
<value xml:lang="en"><![CDATA[Sepcify IP address band that can access the admin page.]]></value>
|
||||
|
|
@ -1073,6 +1068,21 @@ Lütfen son sürümü için indirme linkine tıklayınız.]]></value>
|
|||
<value xml:lang="ko"><![CDATA[업데이트 가능]]></value>
|
||||
<value xml:lang="en"><![CDATA[Update Available]]></value>
|
||||
</item>
|
||||
<item name="need_update_and_table">
|
||||
<value xml:lang="ko"><![CDATA[DB Table 생성과 모듈 업데이트 필요]]></value>
|
||||
<value xml:lang="en"><![CDATA[Need to Create DB Table and Update Module]]></value>
|
||||
<value xml:lang="jp"><![CDATA[DBテーブルの生成とモジュールの更新が必要]]></value>
|
||||
</item>
|
||||
<item name="need_update">
|
||||
<value xml:lang="ko"><![CDATA[모듈 업데이트 필요]]></value>
|
||||
<value xml:lang="en"><![CDATA[Need to Update Module]]></value>
|
||||
<value xml:lang="jp"><![CDATA[モジュールの更新が必要]]></value>
|
||||
</item>
|
||||
<item name="need_table">
|
||||
<value xml:lang="ko"><![CDATA[DB Table 생성 필요]]></value>
|
||||
<value xml:lang="en"><![CDATA[Need to Create DB Table]]></value>
|
||||
<value xml:lang="jp"><![CDATA[DBテーブルの生成が必要]]></value>
|
||||
</item>
|
||||
<item name="admin_menu_setup">
|
||||
<value xml:lang="ko"><![CDATA[관리자 메뉴 설정]]></value>
|
||||
<value xml:lang="en"><![CDATA[Admin Menu Setup]]></value>
|
||||
|
|
@ -1185,32 +1195,19 @@ Lütfen son sürümü için indirme linkine tıklayınız.]]></value>
|
|||
<value xml:lang="zh-TW"><![CDATA[此資料會儲存在 <strong>files/config/ftp.config.php</strong> 檔案中。 安裝後可在設定頁面中新增、更改或刪除此資訊。]]></value>
|
||||
<value xml:lang="de"><![CDATA[Die Angabe wird unter <strong>files/config/ftp.config.php</strong> gespeichert. Nach der Installation ist es auch möglich, dass die Angabe von Administrator modifiziert oder gelöscht werden kann.]]></value>
|
||||
</item>
|
||||
<item name="msg_ftp_not_connected">
|
||||
<value xml:lang="ko"><![CDATA[localhost로의 FTP 접속 오류가 발생했습니다. FTP 포트 번호를 확인해주시거나 FTP 서비스가 가능한지 확인해주세요.]]></value>
|
||||
<value xml:lang="en"><![CDATA[Connection to the localhost via FTP failed. Please check the port number and whether the FTP service is available.]]></value>
|
||||
<value xml:lang="jp"><![CDATA[localhostへのFTP接続エラーが発生しました。FTPポート(port)番号をはじめ、FTPサービスが可能であるかを確認してください。]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[发生本地(localhost)FTP连接错误。请确认ftp端口号及支持ftp服务与否。]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[本地(localhost) FTP連線錯誤。請檢查 FTP 埠口並確認是否支援 FTP 功能。]]></value>
|
||||
<value xml:lang="fr"><![CDATA[localhost로의 FTP 접속 오류가 발생하였습니다. ftp 포트 번호를 확인해주시거나 ftp 서비스가 가능한지 확인해주세요]]></value>
|
||||
<value xml:lang="de"><![CDATA[Ein Verbindungsfehler des FTPs an localhost ist aufgetreten. Bitte FTP_Port checken, oder ob FTP_Service möglich ist.]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Connection to localhost via FTP failed. Please check the port number and if FTP service is available.]]></value>
|
||||
<value xml:lang="es"><![CDATA[Ha ocurrico un error de conexión al FTP del localhost. Verifique el puerto del FTP y/o el funcionamiento del servicio FTP.]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Yerel web alanına FTP bağlantısı sağlanamadı. Lütfen port numarasını ve FTP servisinin mevcut olup-olmadığını kontrol ediniz .]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Kết nối bằng FTP không thành công. Xin vui lòng kiểm tra lại thông tin tài khoản và cổng kết nối!]]></value>
|
||||
<value xml:lang="mn"><![CDATA[localhost-ын FTP холболт амжилтгvй боллоо. FTP дугаараа шалгах буюу эсвэл FTP vйлчилгээг ашиглах боломжтой эсэхээ шалгана уу.]]></value>
|
||||
</item>
|
||||
<item name="msg_ftp_invalid_auth_info">
|
||||
<value xml:lang="ko"><![CDATA[입력하신 FTP 정보로 로그인을 하지 못했습니다. FTP정보를 확인해주세요.]]></value>
|
||||
<value xml:lang="en"><![CDATA[Authentication failed. Please check the username and password.]]></value>
|
||||
<value xml:lang="jp"><![CDATA[ログインに失敗しました。FTPアクセス情報を再度確認してください。]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[FTP登录失败。请确认输入的FTP信息。]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[FTP登入失敗。請確認輸入的 FTP 資訊。]]></value>
|
||||
<value xml:lang="fr"><![CDATA[입력하신 FTP 정보로 로그인을 하지 못했습니다. FTP정보를 확인해주세요]]></value>
|
||||
<value xml:lang="de"><![CDATA[Anmeldungsfehler mit der Angabe des FTPs Bitte die Angabe des FTPs festlegen.]]></value>
|
||||
<value xml:lang="es"><![CDATA[Los datos de login para el FTP no son correctos. Veriféquelos.]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Kimlik doğrulama başarısız oldu. Lütfen kullanıcı adını ve şifreyi kontrol ediniz.]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Xác nhận thất bại. Xin vui lòng kiểm tra lại tên sử dụng và mật khẩu.]]></value>
|
||||
<value xml:lang="mn"><![CDATA[Таны оруулсан FTP мэдээллээр нэвтэрч чадсангvй. FTPмэдээллээ шалгана уу.]]></value>
|
||||
<item name="msg_ftp_no_directory">
|
||||
<value xml:lang="ko"><![CDATA[FTP 접속에 성공했으나, 디렉토리 정보를 읽어올 수 없습니다. 서버 설정을 확인해주세요.]]></value>
|
||||
<value xml:lang="en"><![CDATA[Succeed to connect to the host via FTP. However, can not read any directory list informaiton. Check the server configurations.]]></value>
|
||||
<value xml:lang="jp"><![CDATA[Succeed to connect to the host via FTP. However, can not read any directory list informaiton. Check the server configurations.]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[Succeed to connect to the host via FTP. However, can not read any directory list informaiton. Check the server configurations.]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[Succeed to connect to the host via FTP. However, can not read any directory list informaiton. Check the server configurations.]]></value>
|
||||
<value xml:lang="fr"><![CDATA[Succeed to connect to the host via FTP. However, can not read any directory list informaiton. Check the server configurations.]]></value>
|
||||
<value xml:lang="de"><![CDATA[Succeed to connect to the host via FTP. However, can not read any directory list informaiton. Check the server configurations.]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Succeed to connect to the host via FTP. However, can not read any directory list informaiton. Check the server configurations.]]></value>
|
||||
<value xml:lang="es"><![CDATA[Succeed to connect to the host via FTP. However, can not read any directory list informaiton. Check the server configurations.]]></value>
|
||||
<value xml:lang="tr"><![CDATA[Succeed to connect to the host via FTP. However, can not read any directory list informaiton. Check the server configurations.]]></value>
|
||||
<value xml:lang="vi"><![CDATA[Succeed to connect to the host via FTP. However, can not read any directory list informaiton. Check the server configurations.]]></value>
|
||||
<value xml:lang="mn"><![CDATA[Succeed to connect to the host via FTP. However, can not read any directory list informaiton. Check the server configurations.]]></value>
|
||||
</item>
|
||||
<item name="msg_ftp_mkdir_fail">
|
||||
<value xml:lang="ko"><![CDATA[FTP를 이용한 디렉토리 생성 명령에 실패했습니다. FTP 서버의 설정을 확인해주세요.]]></value>
|
||||
|
|
|
|||
|
|
@ -1,10 +1,14 @@
|
|||
</div>
|
||||
<div class="footer">
|
||||
<p class="power">Powered by <strong><a href="{_XE_LOCATION_SITE_}" target="_blank">XE</a></strong> (ver. {__XE_VERSION__}).</p>
|
||||
<p class="power">
|
||||
Powered by <strong><a href="{_XE_LOCATION_SITE_}" target="_blank">XE</a></strong>. <span class="vr">|</span>
|
||||
<strong>Your version</strong>: {__XE_VERSION__} <span class="vr">|</span>
|
||||
<!--@if(isset($latestVersion))--><strong>Latest version</strong>: <a href="{$latestVersion->url}" target="_blank" title="{zdate($latestVersion->date, 'Y-m-d')}">{$latestVersion->title}</a><!--@end-->
|
||||
</p>
|
||||
<p class="cache">
|
||||
<button type="button" class="text" onclick="doResetAdminMenu();">{$lang->cmd_admin_menu_reset}</button>
|
||||
<button type="button" class="text" onclick="doRecompileCacheFile();">{$lang->cmd_remake_cache}</button>
|
||||
<button type="button" class="text" onclick="doClearSession();">{$lang->cmd_clear_session}</button>
|
||||
<button type="button" class="text" onclick="doResetAdminMenu();">{$lang->cmd_admin_menu_reset}</button> <span class="vr">|</span>
|
||||
<button type="button" class="text" onclick="doRecompileCacheFile();">{$lang->cmd_remake_cache}</button> <span class="vr">|</span>
|
||||
<button type="button" class="text" onclick="doClearSession();">{$lang->cmd_clear_session}</button> <span class="vr">|</span>
|
||||
<a href="http://code.google.com/p/xe-core/issues/entry" target="_blank">{$lang->bug_report}</a>
|
||||
</p>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -15,31 +15,43 @@
|
|||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="gnb jx">
|
||||
<ul>
|
||||
<li loop="$gnbUrlList=>$key,$value" class="activeOn"|cond="$parentSrl==$key"><a href="{$value['href']}">{$value['text']}</a>
|
||||
<div class="gnb">
|
||||
<ul class="nav">
|
||||
<li loop="$gnbUrlList=>$key,$value" class="activeOn"|cond="$parentSrl==$key"><a href="{getFullUrl('')}{$value['href']}"><span>{$value['text']}</span></a>
|
||||
<ul cond="count($value['list'])">
|
||||
<li loop="$value['list']=>$key2,$value2"><a href="{$value2['href']}">{$value2['text']}</a></li>
|
||||
<li loop="$value['list']=>$key2,$value2"><a href="{getFullUrl('')}{$value2['href']}">{$value2['text']}</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="bmk">
|
||||
<a href="#bmk" class="tgAnchor" data-effect="fade" data-duration="200">{$lang->favorite}</a>
|
||||
<ul id="bmk" class="tgContent">
|
||||
<li loop="$favorite_list => $favorite">
|
||||
<a href="{getUrl('act', $favorite->admin_index_act)}">{$favorite->title}</a>
|
||||
<form class="action" action="">
|
||||
<input type="hidden" name="module" value="admin" />
|
||||
<input type="hidden" name="act" value="procAdminToggleFavorite" />
|
||||
<input type="hidden" name="site_srl" value="0" />
|
||||
<input type="hidden" name="module_name" value="{$favorite->module}" />
|
||||
<input type="hidden" name="success_return_url" value="{getUrl('', 'module', 'admin')}" />
|
||||
<button type="submit" class="text" title="{$lang->cmd_delete}">x</button>
|
||||
</form>
|
||||
</li>
|
||||
<li cond="!is_array($favorite_list) || count($favorite_list) < 1">{$lang->no_data}</li>
|
||||
</ul>
|
||||
<select class="mnv">
|
||||
<block loop="$gnbUrlList=>$key,$value">
|
||||
<optgroup label="{$value['text']}" cond="count($value['list']) > 0">
|
||||
<option loop="$value['list']=>$key2,$value2" value="{getFullUrl('')}{$value2['href']}" selected="selected"|cond="$value2['text'] == $subMenuTitle">{$value2['text']}</option>
|
||||
</optgroup>
|
||||
<option cond="count($value['list']) == 0" value="{getFullUrl('')}{$value['href']}" selected="selected"|cond="!$subMenuTitle">{$value['text']}</option>
|
||||
</block>
|
||||
</select>
|
||||
<div class="bmk active">
|
||||
<a href="#bmk" class="bmAnchor" data-effect="fade" data-duration="200">{$lang->favorite}</a>
|
||||
<ul id="bmk" class="bmContent">
|
||||
<li loop="$favorite_list => $favorite">
|
||||
<a href="{getUrl('', 'module', 'admin', 'act', $favorite->admin_index_act)}">{$favorite->title}</a>
|
||||
<form class="action" action="">
|
||||
<input type="hidden" name="module" value="admin" />
|
||||
<input type="hidden" name="act" value="procAdminToggleFavorite" />
|
||||
<input type="hidden" name="site_srl" value="0" />
|
||||
<input type="hidden" name="module_name" value="{$favorite->module}" />
|
||||
<input type="hidden" name="success_return_url" value="{getUrl('', 'module', 'admin')}" />
|
||||
<button type="submit" class="text" title="{$lang->cmd_delete}">x</button>
|
||||
</form>
|
||||
</li>
|
||||
<li cond="!is_array($favorite_list) || count($favorite_list) < 1">{$lang->no_data}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<select class="mnv">
|
||||
<option>{$lang->favorite}</option>
|
||||
<option loop="$favorite_list => $favorite" value="{getUrl('', 'module', 'admin', 'act', $favorite->admin_index_act)}">{$favorite->title}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="body">
|
||||
<div class="body">
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@ jQuery(function($){
|
|||
<li>
|
||||
<p class="q"><label for="time_zone">{$lang->about_timezone}</label></p>
|
||||
<p class="a">
|
||||
<select name="time_zone" id="time_zone" class="fullWidth">
|
||||
<select name="time_zone" id="time_zone">
|
||||
<!--@foreach($time_zone_list as $key => $val)-->
|
||||
<option value="{$key}" <!--@if($time_zone==$key)-->selected="selected"<!--@end-->>{$val}</option>
|
||||
<!--@endforeach-->
|
||||
|
|
@ -105,7 +105,7 @@ jQuery(function($){
|
|||
<p>{$lang->detail_input_footer_script}</p>
|
||||
</div>
|
||||
<p class="a">
|
||||
<textarea name="htmlFooter" id="htmlFooter" rows="4" cols="42">{$htmlFooter}</textarea>
|
||||
<textarea name="htmlFooter" id="htmlFooter" rows="8" cols="42">{$htmlFooter}</textarea>
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
|
|
@ -137,7 +137,7 @@ jQuery(function($){
|
|||
<p>{$lang->detail_about_admin_ip_limit}</p>
|
||||
</div>
|
||||
<p class="a">
|
||||
<textarea name="admin_ip_list" id="admin_ip_list" rows="4" cols="42">{$admin_ip_list}</textarea>
|
||||
<textarea name="admin_ip_list" id="admin_ip_list" rows="8" cols="42">{$admin_ip_list}</textarea>
|
||||
{$lang->local_ip_address} : {$IP}</p>
|
||||
</li>
|
||||
<li>
|
||||
|
|
|
|||
|
|
@ -58,19 +58,21 @@ header,footer,section,article,aside,nav,hgroup,details,menu,figure,figcaption{di
|
|||
.x .table caption strong{color:#e00}
|
||||
.x .table caption .side{float:right;font-weight:normal;margin-left:1em}
|
||||
.x .table th,
|
||||
.x .table td{border:0;padding:8px;vertical-align:top;text-align:left;border-bottom:1px solid #ddd;white-space:nowrap}
|
||||
.x .table th{background:#f8f8f8}
|
||||
.x .table td{border:0;padding:8px;vertical-align:top;text-align:left;border-bottom:1px solid #ddd}
|
||||
.x .table th{background:#f8f8f8;white-space:nowrap}
|
||||
.x .table thead th{border-bottom:1px solid #999}
|
||||
.x .table tfoot td{font-weight:bold;background:#f8f8f8}
|
||||
.x .table.even tbody tr:nth-of-type(even) td{background-color:#fafafa}
|
||||
.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 img{vertical-align:middle}
|
||||
.x .table em{font-style:normal;font-weight:normal;color:#e00}
|
||||
.x .table th.nowr,
|
||||
.x .table td.nowr{white-space:nowrap}
|
||||
.x .table th.title,
|
||||
.x .table td.title,
|
||||
.x .table th.text,
|
||||
.x .table td.text{white-space:normal;width:100%}
|
||||
.x .table td[colspan]{white-space:normal}
|
||||
.x .table td.text{width:100%}
|
||||
/* Form */
|
||||
.x .form{margin:1em 0;padding:0}
|
||||
.x .form fieldset{margin:0 0 2em 0;padding:0;border:0}
|
||||
|
|
@ -84,6 +86,7 @@ header,footer,section,article,aside,nav,hgroup,details,menu,figure,figcaption{di
|
|||
.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}
|
||||
.x .form li:first-child{border-top:0}
|
||||
.x .form li>label:first-child{display:block;font-weight:bold}
|
||||
.x .form li label em{font-weight:normal}
|
||||
|
|
@ -91,6 +94,7 @@ header,footer,section,article,aside,nav,hgroup,details,menu,figure,figcaption{di
|
|||
.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],
|
||||
|
|
@ -105,7 +109,7 @@ header,footer,section,article,aside,nav,hgroup,details,menu,figure,figcaption{di
|
|||
.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}
|
||||
.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}
|
||||
.x .form p.desc{margin:.25em 0;line-height:1.4}
|
||||
|
|
@ -113,60 +117,46 @@ header,footer,section,article,aside,nav,hgroup,details,menu,figure,figcaption{di
|
|||
.x .form .a{margin:0 0 5px 0}
|
||||
.x .form .tgForm{margin-right:1em}
|
||||
/* Global Navigation Bar */
|
||||
.x .gnb{position:relative;clear:both;border:1px solid #c1c1c1;border-left:0;border-right:0;background-color:#efefef;background:#efefef -webkit-gradient(linear, 0% 0%, 0% 100%, from(#efefef), to(#dcdcdc));background:#efefef -moz-linear-gradient(top, #efefef, #dcdcdc);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr=#efefef, endColorStr=#dcdcdc);zoom:1}
|
||||
.x .gnb ul{margin:0;padding:0 0 0 20px;list-style:none;border:1px solid #fff;border-left:0;border-right:0;zoom:1}
|
||||
.x .gnb ul ul{position:absolute;top:30px;left:0;border:1px solid #ccc;border-top:0;padding:1px 0 0 0;background:#fff}
|
||||
.x .gnb ul:after{content:"";display:block;clear:both}
|
||||
.x .gnb li{position:relative;float:left;border:1px solid #fff;border-top:0;border-bottom:0;margin:0 -1px 0 0}
|
||||
.x .gnb li li{float:none;clear:both;overflow:hidden;border:0;border-top:1px dotted #ccc;margin:0;padding:2px}
|
||||
.x .gnb li li:first-child{border:0}
|
||||
.x .gnb li a{float:left;font-weight:bold;color:#333;font-size:12px;height:14px;padding:8px 18px;white-space:nowrap;text-decoration:none;text-shadow:0 1px 0 #fff;zoom:1}
|
||||
.x .gnb li a:hover,
|
||||
.x .gnb li a:active,
|
||||
.x .gnb li a:focus,
|
||||
.x .gnb li.active a{background:#f4f4f4;border:1px solid #ccc;border-bottom:0;padding:7px 17px 8px 17px}
|
||||
.x .gnb li.activeOn a{background:#fff;border:1px solid #ccc;border-bottom:0;padding:7px 17px 8px 17px}
|
||||
.x .gnb li.active li a{display:block;float:none;color:#555;background:#fff;padding:5px 15px !important;font-weight:normal !important;border:0 !important}
|
||||
.x .gnb li.active li a:hover,
|
||||
.x .gnb li.active li a:active,
|
||||
.x .gnb li.active li a:focus{border:0;background:#eee}
|
||||
.x .gnb .setting{position:absolute;top:8px;right:2em;width:16px;height:0;padding:16px 0 0 0;overflow:hidden;background:url(../img/iconSetting.gif) no-repeat center}
|
||||
.x .gnb.jx ul{display:block;position:static;padding:0}
|
||||
.x .gnb.jx li{float:none;clear:both;border-top:1px solid #ccc}
|
||||
.x .gnb.jx ul ul{border:0}
|
||||
.x .gnb.jx li li{border:0}
|
||||
.x .gnb.jx li a{float:none;display:block}
|
||||
.x .gnb.jx li a:hover,
|
||||
.x .gnb.jx li a:active,
|
||||
.x .gnb.jx li a:focus{background:none}
|
||||
.x .gnb.jx li.activeOn>a{background:#ddd}
|
||||
.x .gnb{height:34px;clear:both;border:1px solid #c1c1c1;border-left:0;border-right:0;background-color:#efefef;background:#efefef -webkit-gradient(linear, 0% 0%, 0% 100%, from(#efefef), to(#dcdcdc));background:#efefef -moz-linear-gradient(top, #efefef, #dcdcdc);filter:progid:DXImageTransform.Microsoft.gradient(startColorStr=#efefef, endColorStr=#dcdcdc);zoom:1}
|
||||
.x .gnb:after{content:"";display:block;clear:both}
|
||||
.x .gnb .nav{float:left;position:relative;display:inline-block;*display:inline;zoom:1;margin:0 0 0 20px;padding:1px;list-style:none}
|
||||
.x .gnb .nav ul{_position:absolute;display:block;_display:inline;zoom:1;clear:both;margin:0;padding:0;border:0;overflow:hidden}
|
||||
.x .gnb.active .nav{top:-5px;padding:5px 5px 5px 0;margin:0 0 -100% 20px;border:1px solid #aaa;background:#fff;box-shadow:0 0 10px #999;border-radius:5px}
|
||||
.x .gnb.active .nav ul{top:0;_position:relative;box-shadow:none;display:block;_display:inline;clear:both;padding:0;margin:0;border:0}
|
||||
.x .gnb .nav:after{content:"";display:block;clear:both}
|
||||
.x .gnb .nav li{position:relative;display:inline-block;*display:inline;zoom:1;vertical-align:top;overflow:hidden;margin:0}
|
||||
.x .gnb .nav li.activeOn{z-index:10}
|
||||
.x .gnb .nav li.activeOn>a{border:1px solid #ccc}
|
||||
.x .gnb .nav li li{display:block;_float:left;clear:both;overflow:hidden;border:0;margin:0}
|
||||
.x .gnb .nav li li:first-child{border:0}
|
||||
.x .gnb .nav li a{display:block;_float:left;font-weight:bold;color:#333;font-size:12px;height:14px;padding:9px 0;white-space:nowrap;text-decoration:none;text-shadow:0 1px 0 #fff;zoom:1}
|
||||
.x .gnb .nav li a span{padding:0 15px;border-left:1px solid #fff}
|
||||
.x .gnb.active .nav li a span,
|
||||
.x .gnb .nav li:first-child a span,
|
||||
.x .gnb .nav li.activeOn+li a span{border:0;margin:0 0 0 1px}
|
||||
.x .gnb .nav li a:hover,
|
||||
.x .gnb .nav li a:active,
|
||||
.x .gnb .nav li a:focus{background:#f4f4f4}
|
||||
.x .gnb .nav li.activeOn>a{background:#fff;padding:8px 0}
|
||||
.x .gnb .nav li li a{color:#555;background:#fff;padding:5px 15px !important;font-weight:normal !important;border:0 !important}
|
||||
.x .gnb .nav li li a:hover,
|
||||
.x .gnb .nav li li a:active,
|
||||
.x .gnb .nav li li a:focus{border:0;background:#eee}
|
||||
.x .gnb .bmk{position:relative;float:right;padding:8px 15px;margin:0 20px -100% 0;text-align:right;display:inline}
|
||||
.x .gnb .bmk.active{top:-5px;padding:12px 14px 10px 15px;background-color:#fff;border:1px solid #aaa;box-shadow:0 0 10px #999;border-radius:5px}
|
||||
.x .gnb .bmk .bmAnchor{height:16px;text-shadow:0 1px 0 #fff;display:inline-block;padding:0 0 0 20px;background:url(../img/iconFavorite.gif) no-repeat 0 -16px}
|
||||
.x .gnb .bmk ul{display:none}
|
||||
.x .gnb .bmk.active ul{position:relative;list-style:none;display:block !important;text-align:left;background:none;margin:0 !important;padding:10px 0 0 0 !important;border:0;box-shadow:none;border-radius:0}
|
||||
.x .gnb .bmk li{display:block;position:relative;padding:3px 15px 3px 0 !important;white-space:nowrap}
|
||||
.x .gnb .bmk li a{display:inline;padding:0;background:none !important;font-weight:normal}
|
||||
.x .gnb .bmk li .action{position:absolute;top:0;right:0}
|
||||
.x .gnb .bmk li .action .text{text-decoration:none;width:16px;text-align:center;margin:0;padding:0;border:0;background:none;overflow:visible}
|
||||
.x .gnb .mnv{width:100%;height:32px;display:none}
|
||||
@media only all and (max-width:860px){
|
||||
.x .gnb ul{padding-left:1em}
|
||||
.x .gnb .setting{right:1em}
|
||||
}
|
||||
@media only all and (max-width:640px){
|
||||
.x .gnb ul{display:block;position:static;padding:0}
|
||||
.x .gnb li{float:none;clear:both;border-top:1px solid #ccc}
|
||||
.x .gnb ul ul{border:0;position:static}
|
||||
.x .gnb li li{border:0}
|
||||
.x .gnb li a{float:none;display:block}
|
||||
.x .gnb li a:hover,
|
||||
.x .gnb li a:active,
|
||||
.x .gnb li a:focus{background:none}
|
||||
.x .gnb li.activeOn>a{background:#ddd}
|
||||
}
|
||||
/* Favorite */
|
||||
.x .bmk{position:absolute;right:20px;bottom:10px;padding:0 0 0 20px;background:url(../img/iconFavorite.gif) no-repeat 0 -16px}
|
||||
.x .bmk>a{text-shadow:0 1px 0 #fff}
|
||||
.x .bmk ul{position:absolute;top:140%;right:0;list-style:none;margin:0;padding:5px 10px;border:1px solid #aaa;border-radius:5px;background:#fff;box-shadow:1px 1px 3px #aaa}
|
||||
.x .bmk li{position:relative;padding:3px 30px 3px 0;white-space:nowrap}
|
||||
.x .bmk li .action{position:absolute;top:0;right:0}
|
||||
.x .bmk li .action .text{text-decoration:none;width:16px;text-align:center;margin:0}
|
||||
@media only all and (max-width:640px){
|
||||
.x .bmk{position:static;background-color:#fff;padding:10px 20px;background:#fff}
|
||||
.x .bmk .tgAnchor{display:block}
|
||||
.x .bmk ul{position:relative;border:0;border-top:1px solid #ccc;border-radius:0;box-shadow:none;padding:0;margin:5px 0 0 0}
|
||||
.x .bmk li{position:relative;top:-1px;border-top:1px dotted #ccc}
|
||||
.x .gnb{height:auto}
|
||||
.x .gnb .nav,
|
||||
.x .gnb .bmk{display:none}
|
||||
.x .gnb .mnv{display:block}
|
||||
}
|
||||
/* Local Navigation */
|
||||
.x .lnb{position:relative;float:left;width:210px;margin:1em 0 1em -240px;line-height:normal;zoom:1;display:inline}
|
||||
|
|
@ -236,7 +226,7 @@ header,footer,section,article,aside,nav,hgroup,details,menu,figure,figcaption{di
|
|||
.x .prgrs.prgrsLarge .pAction,
|
||||
.x .prgrs.prgrsLarge .pNum{height:34px;line-height:34px;font-size:14px}
|
||||
/* Modal Window */
|
||||
.modal{position:absolute;top:0;left:0;width:100%;_height:100%;min-height:100%;z-index:100}
|
||||
.modal{position:absolute;top:0;left:0;width:100%;_height:100%;min-height:100%;z-index:99}
|
||||
.modal .bg{position:absolute;background:#000;_background:none;width:100%;height:100%;opacity:.5;z-index:2;filter:progid:DXImageTransform.Microsoft.Alpha(opacity=50);zoom:1}
|
||||
.modal .fg{position:relative;width:80%;margin:5em auto;background:#fff;padding:0 1em;*padding:1em;border:8px solid #ddd;z-index:3;zoom:1;border-radius:5px;box-shadow:0 0 6px #000}
|
||||
.modal ul,
|
||||
|
|
@ -262,7 +252,10 @@ body.modalContainer{_height:100%;_width:100%} /* IE6 only */
|
|||
.x .h2Anchor{position:absolute;right:0;border:0;background:none;color:#00f;text-decoration:underline}
|
||||
/* Skip Navigation */
|
||||
.x .skipNav{margin:0;text-align:center}
|
||||
.x .skipNav a{position:absolute;width:1px;height:1px;display:block;font-weight:bold;padding:10px 0}
|
||||
@media only all and (max-width:860px){
|
||||
.x .skipNav{display:none}
|
||||
}
|
||||
.x .skipNav a{position:absolute;width:1px;height:1px;display:block;padding:10px 0;font-weight:bold;overflow:hidden}
|
||||
.x .skipNav a:hover,
|
||||
.x .skipNav a:active,
|
||||
.x .skipNav a:focus{position:relative;width:auto;height:auto}
|
||||
|
|
@ -270,11 +263,11 @@ body.modalContainer{_height:100%;_width:100%} /* IE6 only */
|
|||
.x .header{position:relative;z-index:2;padding:30px 0 0 0;background:#4c4c4c;box-shadow:0 0 10px #aaa;zoom:1;border-radius:5px 5px 0 0}
|
||||
.x .header:after{content:"";display:block;clear:both}
|
||||
.x .header a{text-decoration:none}
|
||||
.x .header h1{margin:0 15px 10px 20px;font-size:24px;line-height:32px;display:inline-block;zoom:1}
|
||||
.x .header h1{margin:0 0 10px 20px;font-size:24px;line-height:32px;display:inline-block;*display:inline;zoom:1;vertical-align:middle}
|
||||
.x .header h1 *{vertical-align:middle}
|
||||
.x .header h1 a{color:#fff;text-shadow:1px 1px 0 #000;filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=1, Color=#000000, Positive=true);zoom:1}
|
||||
.x .header h1 a{display:inline-block;color:#fff;text-shadow:1px 1px 0 #000;filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=1, Color=#000000, Positive=true);zoom:1}
|
||||
.x .header h1 .url{font-size:12px;font-weight:normal}
|
||||
.x .header .site{margin:0;display:inline-block;zoom:1}
|
||||
.x .header .site{margin:0 0 10px 20px;display:inline-block;*display:inline;zoom:1}
|
||||
.x .header .site a{color:#fff;text-decoration:underline}
|
||||
.x .header #moveSiteList{padding:10px 1em 5px 1em;margin:0}
|
||||
.x .header #moveSiteList ul{list-style:none;margin:0;padding:0}
|
||||
|
|
@ -282,12 +275,15 @@ body.modalContainer{_height:100%;_width:100%} /* IE6 only */
|
|||
.x .header #siteMapList{padding:0 1em 1em 1em;margin:0}
|
||||
.x .header #siteMapList li{white-space:nowrap}
|
||||
.x .header .account{position:absolute;z-index:3;width:100%;top:0;right:0;white-space:nowrap;text-align:right;background:#333;border-bottom:1px solid #656565;color:#fff;font-size:12px;border-radius:5px 5px 0 0}
|
||||
.x .header .account ul{margin:0 2px 0 0;padding:5px 20px 5px 0;list-style:none}
|
||||
.x .header .account ul{margin:0;padding:5px 20px 5px 0;list-style:none}
|
||||
.x .header .account li{position:relative;display:inline;border-left:1px solid #666;padding:0 6px 0 10px}
|
||||
.x .header .account li:first-child{border:0}
|
||||
.x .header .account a{color:#fff;display:inline-block;height:14px}
|
||||
.x .header .account a.language{padding-right:16px;background:url(../img/iconArrow.gif) no-repeat right -160px}
|
||||
.x .header #language{position:absolute;top:19px;right:-2em;padding:6px 4px !important;border:1px solid #666;border-top:0;background:#333}
|
||||
.x .header #language{position:absolute;top:19px;right:-20px;padding:6px 4px !important;border:1px solid #666;border-top:0;background:#333}
|
||||
@media only all and (max-width:860px){
|
||||
.x .header #language{right:-10px}
|
||||
}
|
||||
.x .header #language li{border:0;display:block;padding:1px 8px 1px 10px;text-align:left;line-height:1}
|
||||
.x .header #language li.selected{background:url(../img/iconCheck.gif) no-repeat left center}
|
||||
.x .header #language li.selected a{text-decoration:underline}
|
||||
|
|
@ -303,6 +299,7 @@ body.modalContainer{_height:100%;_width:100%} /* IE6 only */
|
|||
.x .footer p{margin:0}
|
||||
.x .footer .power{float:left}
|
||||
.x .footer .cache{float:right}
|
||||
.x .footer .vr{color:#ccc}
|
||||
/* Body */
|
||||
.x .body{position:relative;z-index:1;padding:1em 20px 1em 260px;zoom:1}
|
||||
.x .body:after{content:"";display:block;clear:both}
|
||||
|
|
@ -334,7 +331,9 @@ body.modalContainer{_height:100%;_width:100%} /* IE6 only */
|
|||
.x .search form{float:right;margin:1em 0}
|
||||
.x .search form *{vertical-align:middle}
|
||||
/* Site Map */
|
||||
.x .siteMap h2 input{font-size:14px;font-weight:bold;padding:0 .5em}
|
||||
.x .siteMap h2 input{font-size:14px;font-weight:bold;padding:3px 4px;margin:0;border:0;background:transparent}
|
||||
.x .siteMap h2:hover input,
|
||||
.x .siteMap h2 input:focus{background:#ff0;border:1px dashed #ccc;margin:-1px}
|
||||
.x .siteMap label{cursor:text}
|
||||
.x .siteMap .lined ul{padding:0;margin:0;border-top:1px solid #eee;zoom:1}
|
||||
.x .siteMap .lined li{position:relative;padding:0;margin:0;cursor:all-scroll;list-style:none;zoom:1}
|
||||
|
|
@ -496,7 +495,10 @@ body.modalContainer{_height:100%;_width:100%} /* IE6 only */
|
|||
.x .easyNav h2{font-size:16px}
|
||||
.x .easyNav .category{width:30%;float:left;margin:0 2em;display:inline}
|
||||
.x .easyNav .filter{position:absolute;top:0;right:0;margin:1em 2em;text-align:right}
|
||||
.x .easyList td p{margin-top:0}
|
||||
.x .easyList caption .side .text .hide,
|
||||
.x .easyList caption .side .details .show{display:none}
|
||||
.x .easyList caption .side .details .hide{display:inline}
|
||||
.x .easyList td p:first-child{margin:0}
|
||||
.x .easyList td p.update{background:#ffc;padding:.5em 1em;border:1px solid #fc9;border-left:0;border-right:0;text-align:center}
|
||||
/* Font Preview */
|
||||
.x .fontPreview{width:96%;border:1px solid #e9e9e9;zoom:1;padding:1em 2em;margin:.5em 0}
|
||||
|
|
@ -576,7 +578,6 @@ body.modalContainer{_height:100%;_width:100%} /* IE6 only */
|
|||
.x a.cMenu{display:inline-block;width:16px;height:0;padding:16px 0 0 0;overflow:hidden;vertical-align:middle;background:url(../../../../common/img/icon.bubble.png) no-repeat}
|
||||
/* Responsive Layout */
|
||||
@media only all and (max-width:860px){
|
||||
.x .header h1{margin-left:.7em}
|
||||
.x .header .account ul{padding-right:10px}
|
||||
.x .body{padding:0}
|
||||
.x .content{float:none;margin-left:0}
|
||||
|
|
@ -587,10 +588,6 @@ body.modalContainer{_height:100%;_width:100%} /* IE6 only */
|
|||
.x .easyNav .category{float:none;display:block;width:auto}
|
||||
.x .easyNav .filter{position:static}
|
||||
}
|
||||
@media only all and (max-width:640px){
|
||||
.x .skipNav a{position:relative;width:auto;height:auto}
|
||||
.modal{position:absolute}
|
||||
}
|
||||
/* Legacy Code (Don't use it. It will be removed as soon as possible.) */
|
||||
.x h3.xeAdmin,
|
||||
.x h4.xeAdmin{position:relative;border-bottom-style:solid;border-bottom-color:#ccc;zoom:1}
|
||||
|
|
|
|||
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,7 @@
|
|||
<!--#include("./_spHeader.html")-->
|
||||
|
||||
|
||||
|
||||
<div class="content dashboard" id="content">
|
||||
<div cond="$XE_VALIDATOR_MESSAGE" class="message {$XE_VALIDATOR_MESSAGE_TYPE}">
|
||||
<p>{$XE_VALIDATOR_MESSAGE}</p>
|
||||
|
|
@ -15,15 +18,17 @@
|
|||
</div>
|
||||
</form>
|
||||
<!--@end-->
|
||||
<!--@if($isUpdated)-->
|
||||
<!--@if($addTables || $needUpdate)-->
|
||||
<div class="message update">
|
||||
<h2>{$lang->update_available}</h2>
|
||||
<h2 cond="$needUpdate && $addTables">{$lang->need_update_and_table}</h2>
|
||||
<h2 cond="$needUpdate && !$addTables">{$lang->need_update}</h2>
|
||||
<h2 cond="!$needUpdate && $addTables">{$lang->need_table}</h2>
|
||||
<ul>
|
||||
<!--@foreach($module_list AS $key => $value)-->
|
||||
<!--@if($value->need_install)-->
|
||||
<li><a href="{getUrl('','module','admin','act',$val->admin_index_act)}">{$value->module}</a> - <a href="#" onclick="doInstallModule('{$value->module}');return false;">{$lang->cmd_install}</a></li>
|
||||
<li style="margin:0 0 4px 0;">{$value->module} - <span class="btn"><button type="button" onclick="doInstallModule('{$value->module}')">{$lang->cmd_create_db_table}</button></span></li>
|
||||
<!--@else if($value->need_update)-->
|
||||
<li><a href="{getUrl('','module','admin','act',$val->admin_index_act)}">{$value->module}</a> - <a href="#" onclick="doUpdateModule('{$value->module}')">{$lang->cmd_update}</a></li>
|
||||
<li style="margin:0 0 4px 0;">{$value->module} - <span class="btn"><button type="button" onclick="doUpdateModule('{$value->module}')">{$lang->cmd_module_update}</button></li>
|
||||
<!--@end-->
|
||||
<!--@end-->
|
||||
</ul>
|
||||
|
|
@ -41,7 +46,7 @@
|
|||
</ul>
|
||||
</div>
|
||||
<div class="portlet">
|
||||
<h2 class="h2">{$lang->latest_documents}</h2>
|
||||
<h2 class="h2"><a href="{getUrl('', 'module', 'admin', 'act', 'dispDocumentAdminList')}">{$lang->latest_documents}</a></h2>
|
||||
<ul class="lined">
|
||||
<!--@foreach($latestDocumentList AS $key=>$value)-->
|
||||
{@$document = $value->variables}
|
||||
|
|
@ -63,7 +68,7 @@
|
|||
</ul>
|
||||
</div>
|
||||
<div class="portlet">
|
||||
<h2 class="h2">{$lang->latest_comments}</h2>
|
||||
<h2 class="h2"><a href="{getUrl('', 'module', 'admin', 'act', 'dispCommentAdminList')}">{$lang->latest_comments}</a></h2>
|
||||
<ul class="lined">
|
||||
<!--@foreach($latestCommentList AS $key=>$value)-->
|
||||
<li>
|
||||
|
|
@ -84,7 +89,7 @@
|
|||
</ul>
|
||||
</div>
|
||||
<div class="portlet">
|
||||
<h2 class="h2">{$lang->latest_trackbacks}</h2>
|
||||
<h2 class="h2"><a href="{getUrl('', 'module', 'admin', 'act', 'dispTrackbackAdminList')}">{$lang->latest_trackbacks}</a></h2>
|
||||
<ul class="lined">
|
||||
<!--@foreach($latestTrackbackList AS $key=>$value)-->
|
||||
<li>
|
||||
|
|
@ -103,32 +108,6 @@
|
|||
<li cond="!is_array($latestTrackbackList) || count($latestTrackbackList) < 1">{$lang->no_data}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="portlet">
|
||||
<h2 class="h2">{$lang->notices}</h2>
|
||||
<ul class="lined">
|
||||
<!--@foreach($news AS $key=>$value)-->
|
||||
<li><a href="{$value->url}" target="_blank">{$value->title}</a> <span class="side">{zdate($value->date, 'Y-m-d')}</span></li>
|
||||
<!--@end-->
|
||||
<li cond="!is_array($news) || count($news) < 1">{$lang->no_data}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="portlet">
|
||||
<h2 class="h2">{$lang->favorites}</h2>
|
||||
<ul class="lined">
|
||||
<li loop="$favorite_list => $favorite">
|
||||
<a href="{getUrl('act', $favorite->admin_index_act)}">{$favorite->title}</a>
|
||||
<form class="action" action="">
|
||||
<input type="hidden" name="module" value="admin" />
|
||||
<input type="hidden" name="act" value="procAdminToggleFavorite" />
|
||||
<input type="hidden" name="site_srl" value="0" />
|
||||
<input type="hidden" name="module_name" value="{$favorite->module}" />
|
||||
<input type="hidden" name="success_return_url" value="{getUrl('', 'module', 'admin')}" />
|
||||
<button type="submit" class="text">{$lang->cmd_delete}</button>
|
||||
</form>
|
||||
</li>
|
||||
<li cond="!is_array($favorite_list) || count($favorite_list) < 1">{$lang->no_data}</li>
|
||||
</UL>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--#include("./_spFooter.html")-->
|
||||
|
|
|
|||
|
|
@ -152,51 +152,73 @@ jQuery(function($){
|
|||
// Global Navigation Bar
|
||||
jQuery(function($){
|
||||
|
||||
$.fn.xeMenu = function(){
|
||||
this
|
||||
.removeClass('jx')
|
||||
.attr('role', 'navigation') // WAI-ARIA role
|
||||
.find('li')
|
||||
.attr('role', 'menuitem') // WAI-ARIA role
|
||||
.find('>ul').hide().end()
|
||||
.filter(':has(>ul)')
|
||||
.attr('aria-haspopup', 'true') // WAI-ARIA
|
||||
$.fn.xeMenu = function(){
|
||||
this
|
||||
.attr('role', 'navigation') // WAI-ARIA role
|
||||
.find('>.nav>li')
|
||||
.attr('role', 'menuitem') // WAI-ARIA role
|
||||
.find('>ul').css('height','0').end()
|
||||
.filter(':has(>ul)')
|
||||
.attr('aria-haspopup', 'true') // WAI-ARIA
|
||||
.end()
|
||||
.end()
|
||||
.end()
|
||||
.delegate('li', {
|
||||
mouseover : function(){
|
||||
.find('>.nav')
|
||||
.mouseover(function(){
|
||||
$(this)
|
||||
.addClass('active')
|
||||
.find('>ul').show().end()
|
||||
.parentsUntil('.gnb')
|
||||
.filter('li').addClass('active').end()
|
||||
.end()
|
||||
},
|
||||
mouseleave : function(){
|
||||
.parent('.gnb').addClass('active').end()
|
||||
.find('>li>ul').css('height','auto').end()
|
||||
})
|
||||
.mouseleave(function(){
|
||||
$(this)
|
||||
.removeClass('active')
|
||||
.find('>ul').hide();
|
||||
},
|
||||
focusout : function(){
|
||||
.parent('.gnb').removeClass('active').end()
|
||||
.find('>li>ul').css('height','0').end()
|
||||
})
|
||||
.focusout(function(){
|
||||
var $this = $(this);
|
||||
setTimeout(function(){
|
||||
if(!$this.find(':focus').length) {
|
||||
$this.removeClass('active').find('>ul').hide();
|
||||
$this.mouseleave();
|
||||
}
|
||||
}, 1);
|
||||
}
|
||||
})
|
||||
.delegate('a', {
|
||||
focus : function(){
|
||||
$(this).parent('li').mouseover();
|
||||
}
|
||||
});
|
||||
};
|
||||
})
|
||||
.delegate('a', {
|
||||
focus : function(){
|
||||
$(this).mouseover();
|
||||
}
|
||||
});
|
||||
this
|
||||
.find('>.bmk')
|
||||
.removeClass('active')
|
||||
.mouseover(function(){
|
||||
$(this).addClass('active')
|
||||
})
|
||||
.mouseleave(function(){
|
||||
$(this).removeClass('active')
|
||||
})
|
||||
.focusout(function(){
|
||||
var $this = $(this);
|
||||
setTimeout(function(){
|
||||
if(!$this.find(':focus').length) {
|
||||
$this.mouseleave();
|
||||
}
|
||||
}, 1);
|
||||
})
|
||||
.delegate('a', {
|
||||
focus : function(){
|
||||
$(this).mouseover();
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
$('div.gnb').xeMenu();
|
||||
|
||||
$('div.gnb').xeMenu();
|
||||
$('.gnb>.mnv').change(function(){
|
||||
window.location.href=$(this).find('option:selected').val();
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
|
||||
// Modal Window
|
||||
jQuery(function($){
|
||||
|
||||
|
|
@ -944,7 +966,7 @@ function initLayer($layer) {
|
|||
.bind('multilang-reset', function(){
|
||||
$layer
|
||||
.data('multilang-current-name', '')
|
||||
.find('.langInput li').find('>input:text,>textarea').val(' ').prev('label').css('visibility','visible');
|
||||
.find('.langInput li').find('>input:text,>textarea').val('').prev('label').css('visibility','visible');
|
||||
|
||||
mode = MODE_SAVE;
|
||||
setTitleText();
|
||||
|
|
@ -1190,3 +1212,21 @@ jQuery(function($){
|
|||
$('.x>.body>.content').addClass('single'); // Add class single
|
||||
}
|
||||
});
|
||||
/* Details toggle in admin table */
|
||||
jQuery(function($){
|
||||
var viewBtn = $('.x .dsTg span.side>button.text');
|
||||
var tdTitle = $('.x .dsTg td.title');
|
||||
tdTitle.each(function(){
|
||||
var $t = $(this)
|
||||
if($t.find('p.update').length==0){
|
||||
$t.addClass('tg').find('>p:not(:first-child)').hide();
|
||||
} else {
|
||||
$t.addClass('up');
|
||||
}
|
||||
});
|
||||
var details = $('.x .dsTg td.tg>p:not(:first-child)');
|
||||
viewBtn.click(function(){
|
||||
viewBtn.toggleClass('details');
|
||||
details.slideToggle(200);
|
||||
});
|
||||
});
|
||||
|
|
|
|||
39
modules/admin/tpl/js/admin.min.js
vendored
39
modules/admin/tpl/js/admin.min.js
vendored
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue