mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-08 19:21:40 +09:00
commit
b32367a464
18 changed files with 145 additions and 97 deletions
|
|
@ -27,4 +27,5 @@ script:
|
|||
- if [ $(phpenv version-name) != "5.3" ]; then ./vendor/bin/codecept run -d --fail-fast --env travis; fi
|
||||
notifications:
|
||||
slack:
|
||||
secure: 0HhwktIb65zfge56E4yMfYj0Xj4GeYIaxvh/Obb13BK1/C8RdWBy6u213N5MQ2UHsxYk8wXXzynaCh4psegi2iPy9dbKmkdAdEQMzYoKE2xYVSqZveeVQm0sqFVXAlzggpgs/j5vtvKYjRkQKtTrz0C+p0uJ0bkLcyWGezWTpGc=
|
||||
secure: jpoMjtkveVuPZM4JXJETAPv8QUCtTbI/ZTixdS9HUgxSb9tD2DkoekMaRzXYnXA82Les/gGxTC0fQFcFrls6Ypkbvp1udBPggmAdLiBHubBIz+yd1BGIf/l4I6MY1QmGe1Lx4xlnVlEgLnKXHn+W+ENep4/MzpCEaR9Vw8wfGqY=
|
||||
secure: "gPv4qFmGcXimNlI/OeVk5n4VtRCWbAe7VUtw7Inb3A/ZZaVDo11gtMNkwo/JVKSnXqFkaCQYebcNpj2D9Rb2ZCwgjMSX6wxvpA4/8OLOZpbWqFW6Hz2RKNggubXlnalXkIwFcsvj70rKctbcJFk2C1G9rVvYWdVGD9X4/ozQtAc="
|
||||
|
|
|
|||
|
|
@ -666,9 +666,20 @@ class Context
|
|||
{
|
||||
$url = base64_decode(self::get('default_url'));
|
||||
$url_info = parse_url($url);
|
||||
|
||||
$oModuleModel = getModel('module');
|
||||
$site_info = $oModuleModel->getSiteInfoByDomain($url_info['host']);
|
||||
if(!$site_info->site_srl) {
|
||||
$oModuleObject = new ModuleObject();
|
||||
$oModuleObject->stop('msg_invalid_request');
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
$url_info['query'].= ($url_info['query'] ? '&' : '') . 'SSOID=' . session_id();
|
||||
$redirect_url = sprintf('%s://%s%s%s?%s', $url_info['scheme'], $url_info['host'], $url_info['port'] ? ':' . $url_info['port'] : '', $url_info['path'], $url_info['query']);
|
||||
header('location:' . $redirect_url);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
// for sites requesting SSO validation
|
||||
|
|
@ -1658,6 +1669,7 @@ class Context
|
|||
'document_srl.mid' => "$mid/$srl",
|
||||
'document_srl.vid' => "$vid/$srl",
|
||||
'document_srl.mid.vid' => "$vid/$mid/$srl",
|
||||
'act' => ($is_feed && $act !== 'api') ? $act : '',
|
||||
'act.mid' => $is_feed ? "$mid/$act" : '',
|
||||
'act.mid.vid' => $is_feed ? "$vid/$mid/$act" : '',
|
||||
'act.document_srl.key' => ($act == 'trackback') ? "$srl/$key/$act" : '',
|
||||
|
|
|
|||
|
|
@ -116,7 +116,6 @@ class ModuleHandler extends Handler
|
|||
* */
|
||||
function init()
|
||||
{
|
||||
|
||||
$oModuleModel = getModel('module');
|
||||
$site_module_info = Context::get('site_module_info');
|
||||
|
||||
|
|
@ -317,13 +316,13 @@ class ModuleHandler extends Handler
|
|||
function procModule()
|
||||
{
|
||||
$oModuleModel = getModel('module');
|
||||
$display_mode = Mobile::isFromMobilePhone() ? 'mobile' : 'view';
|
||||
|
||||
// If error occurred while preparation, return a message instance
|
||||
if($this->error)
|
||||
{
|
||||
$this->_setInputErrorToContext();
|
||||
$type = Mobile::isFromMobilePhone() ? 'mobile' : 'view';
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $type);
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $display_mode);
|
||||
$oMessageObject->setError(-1);
|
||||
$oMessageObject->setMessage($this->error);
|
||||
$oMessageObject->dispMessage();
|
||||
|
|
@ -359,8 +358,7 @@ class ModuleHandler extends Handler
|
|||
$this->httpStatusCode = '404';
|
||||
|
||||
$this->_setInputErrorToContext();
|
||||
$type = Mobile::isFromMobilePhone() ? 'mobile' : 'view';
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $type);
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $display_mode);
|
||||
$oMessageObject->setError(-1);
|
||||
$oMessageObject->setMessage($this->error);
|
||||
$oMessageObject->dispMessage();
|
||||
|
|
@ -397,7 +395,7 @@ class ModuleHandler extends Handler
|
|||
if(!in_array(strtoupper($_SERVER['REQUEST_METHOD']), $allowedMethodList))
|
||||
{
|
||||
$this->error = "msg_invalid_request";
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', 'view');
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $display_mode);
|
||||
$oMessageObject->setError(-1);
|
||||
$oMessageObject->setMessage($this->error);
|
||||
$oMessageObject->dispMessage();
|
||||
|
|
@ -410,13 +408,24 @@ class ModuleHandler extends Handler
|
|||
Mobile::setMobile(FALSE);
|
||||
}
|
||||
|
||||
// Admin ip
|
||||
$logged_info = Context::get('logged_info');
|
||||
|
||||
// check CSRF for admin actions
|
||||
if($kind === 'admin' && Context::getRequestMethod() === 'POST' && !checkCSRF()) {
|
||||
$this->error = 'msg_invalid_request';
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $display_mode);
|
||||
$oMessageObject->setError(-1);
|
||||
$oMessageObject->setMessage($this->error);
|
||||
$oMessageObject->dispMessage();
|
||||
return $oMessageObject;
|
||||
}
|
||||
|
||||
// Admin ip
|
||||
if($kind == 'admin' && $_SESSION['denied_admin'] == 'Y')
|
||||
{
|
||||
$this->_setInputErrorToContext();
|
||||
$this->error = "msg_not_permitted_act";
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $type);
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $display_mode);
|
||||
$oMessageObject->setError(-1);
|
||||
$oMessageObject->setMessage($this->error);
|
||||
$oMessageObject->dispMessage();
|
||||
|
|
@ -446,8 +455,7 @@ class ModuleHandler extends Handler
|
|||
if(!is_object($oModule))
|
||||
{
|
||||
$this->_setInputErrorToContext();
|
||||
$type = Mobile::isFromMobilePhone() ? 'mobile' : 'view';
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $type);
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $display_mode);
|
||||
$oMessageObject->setError(-1);
|
||||
$oMessageObject->setMessage($this->error);
|
||||
$oMessageObject->dispMessage();
|
||||
|
|
@ -466,7 +474,7 @@ class ModuleHandler extends Handler
|
|||
{
|
||||
$this->_setInputErrorToContext();
|
||||
$this->error = 'msg_invalid_request';
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $type);
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $display_mode);
|
||||
$oMessageObject->setError(-1);
|
||||
$oMessageObject->setMessage($this->error);
|
||||
$oMessageObject->dispMessage();
|
||||
|
|
@ -495,7 +503,7 @@ class ModuleHandler extends Handler
|
|||
else
|
||||
{
|
||||
$this->error = 'msg_invalid_request';
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', 'view');
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $display_mode);
|
||||
$oMessageObject->setError(-1);
|
||||
$oMessageObject->setMessage($this->error);
|
||||
$oMessageObject->dispMessage();
|
||||
|
|
@ -537,9 +545,8 @@ class ModuleHandler extends Handler
|
|||
|
||||
if(!is_object($oModule))
|
||||
{
|
||||
$type = Mobile::isFromMobilePhone() ? 'mobile' : 'view';
|
||||
$this->_setInputErrorToContext();
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $type);
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $display_mode);
|
||||
$oMessageObject->setError(-1);
|
||||
$oMessageObject->setMessage('msg_module_is_not_exists');
|
||||
$oMessageObject->dispMessage();
|
||||
|
|
@ -569,7 +576,7 @@ class ModuleHandler extends Handler
|
|||
$this->_setInputErrorToContext();
|
||||
|
||||
$this->error = 'msg_is_not_administrator';
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $type);
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $display_mode);
|
||||
$oMessageObject->setError(-1);
|
||||
$oMessageObject->setMessage($this->error);
|
||||
$oMessageObject->dispMessage();
|
||||
|
|
@ -583,7 +590,7 @@ class ModuleHandler extends Handler
|
|||
{
|
||||
$this->_setInputErrorToContext();
|
||||
$this->error = 'msg_is_not_manager';
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', 'view');
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $display_mode);
|
||||
$oMessageObject->setError(-1);
|
||||
$oMessageObject->setMessage($this->error);
|
||||
$oMessageObject->dispMessage();
|
||||
|
|
@ -595,7 +602,7 @@ class ModuleHandler extends Handler
|
|||
{
|
||||
$this->_setInputErrorToContext();
|
||||
$this->error = 'msg_is_not_administrator';
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', 'view');
|
||||
$oMessageObject = ModuleHandler::getModuleInstance('message', $display_mode);
|
||||
$oMessageObject->setError(-1);
|
||||
$oMessageObject->setMessage($this->error);
|
||||
$oMessageObject->dispMessage();
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ define('__ZBXE__', __XE__);
|
|||
/**
|
||||
* Display XE's full version.
|
||||
*/
|
||||
define('__XE_VERSION__', '1.8.7');
|
||||
define('__XE_VERSION__', '1.8.11');
|
||||
define('__XE_VERSION_ALPHA__', (stripos(__XE_VERSION__, 'alpha') !== false));
|
||||
define('__XE_VERSION_BETA__', (stripos(__XE_VERSION__, 'beta') !== false));
|
||||
define('__XE_VERSION_RC__', (stripos(__XE_VERSION__, 'rc') !== false));
|
||||
|
|
|
|||
|
|
@ -274,6 +274,7 @@ class documentController extends document
|
|||
$obj->homepage = $logged_info->homepage;
|
||||
}
|
||||
// If the tile is empty, extract string from the contents.
|
||||
$obj->title = htmlspecialchars($obj->title);
|
||||
settype($obj->title, "string");
|
||||
if($obj->title == '') $obj->title = cut_str(trim(strip_tags(nl2br($obj->content))),20,'...');
|
||||
// If no tile extracted from the contents, leave it untitled.
|
||||
|
|
|
|||
|
|
@ -43,18 +43,24 @@ class image_gallery extends EditorHandler
|
|||
*/
|
||||
function transHTML($xml_obj)
|
||||
{
|
||||
$gallery_info = new stdClass;
|
||||
$gallery_info->srl = rand(111111,999999);
|
||||
$gallery_info->border_thickness = $xml_obj->attrs->border_thickness;
|
||||
$gallery_info = new stdClass();
|
||||
$gallery_info->srl = rand(111111, 999999);
|
||||
$gallery_info->border_thickness = (int)$xml_obj->attrs->border_thickness;
|
||||
$gallery_info->gallery_style = $xml_obj->attrs->gallery_style;
|
||||
$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;
|
||||
|
||||
if(!in_array($gallery_info->gallery_align, array('left', 'center', 'right'))) {
|
||||
$gallery_info->gallery_align = 'center';
|
||||
}
|
||||
|
||||
$images_list = $xml_obj->attrs->images_list;
|
||||
$images_list = preg_replace('/\.(gif|jpg|jpeg|png) /i',".\\1\n",$images_list);
|
||||
$gallery_info->images_list = explode("\n",trim($images_list));
|
||||
$images_list = preg_replace('/\.(gif|jpe?g|png) /i', ".\\1\n", $images_list);
|
||||
$images_list = explode("\n", trim($images_list));
|
||||
$gallery_info->images_list = preg_grep("/^[a-z0-9\/]+\.(gif|jpe?g|png)+$/", $images_list);
|
||||
|
||||
// If you set the output to output the XML code generated a list of the image
|
||||
if(Context::getResponseMethod() == 'XMLRPC')
|
||||
{
|
||||
|
|
|
|||
|
|
@ -662,16 +662,17 @@ class fileController extends file
|
|||
}
|
||||
}
|
||||
|
||||
// https://github.com/xpressengine/xe-core/issues/1713
|
||||
$file_info['name'] = preg_replace('/\.(php|phtm|phar|html?|cgi|pl|exe|jsp|asp|inc)/i', '$0-x',$file_info['name']);
|
||||
$file_info['name'] = removeHackTag($file_info['name']);
|
||||
$file_info['name'] = str_replace(array('<','>'),array('%3C','%3E'),$file_info['name']);
|
||||
|
||||
// Get random number generator
|
||||
$random = new Password();
|
||||
|
||||
|
||||
// Set upload path by checking if the attachement is an image or other kinds of file
|
||||
if(preg_match("/\.(jpe?g|gif|png|wm[va]|mpe?g|avi|swf|flv|mp[1-4]|as[fx]|wav|midi?|moo?v|qt|r[am]{1,2}|m4v)$/i", $file_info['name']))
|
||||
{
|
||||
// Immediately remove the direct file if it has any kind of extensions for hacking
|
||||
$file_info['name'] = preg_replace('/\.(php|phtm|phar|html?|cgi|pl|exe|jsp|asp|inc)/i', '$0-x',$file_info['name']);
|
||||
$file_info['name'] = str_replace(array('<','>'),array('%3C','%3E'),$file_info['name']);
|
||||
|
||||
$path = sprintf("./files/attach/images/%s/%s", $module_srl,getNumberingPath($upload_target_srl,3));
|
||||
|
||||
// special character to '_'
|
||||
|
|
|
|||
|
|
@ -220,6 +220,7 @@ class fileModel extends file
|
|||
{
|
||||
$file = $file_list[$i];
|
||||
$file->source_filename = stripslashes($file->source_filename);
|
||||
$file->source_filename = htmlspecialchars($file->source_filename);
|
||||
$file->download_url = $this->getDownloadUrl($file->file_srl, $file->sid, $file->module_srl);
|
||||
$file_list[$i] = $file;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
<value xml:lang="en"><![CDATA[XE Installation]]></value>
|
||||
<value xml:lang="jp"><![CDATA[XEのインストール]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[安装XE]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[XE程式安裝]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[安裝XE]]></value>
|
||||
<value xml:lang="fr"><![CDATA[Installation du XE ]]></value>
|
||||
<value xml:lang="ru"><![CDATA[Установка XE]]></value>
|
||||
<value xml:lang="es"><![CDATA[Instalación de XE ]]></value>
|
||||
|
|
@ -34,36 +34,51 @@
|
|||
<item name="license_agreement">
|
||||
<value xml:lang="ko"><![CDATA[사용권 동의]]></value>
|
||||
<value xml:lang="en"><![CDATA[License agreement]]></value>
|
||||
<value xml:lang="jp"><![CDATA[ライセンス契約]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[许可协议]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[許可協議]]></value>
|
||||
</item>
|
||||
<item name="condition">
|
||||
<value xml:lang="ko"><![CDATA[설치 조건 확인]]></value>
|
||||
<value xml:lang="en"><![CDATA[Check the installation conditions]]></value>
|
||||
<value xml:lang="jp"><![CDATA[インストール条件確認]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[检查安装条件]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[檢查安裝條件]]></value>
|
||||
</item>
|
||||
<item name="ftp">
|
||||
<value xml:lang="ko"><![CDATA[FTP 정보 입력]]></value>
|
||||
<value xml:lang="en"><![CDATA[Input FTP information]]></value>
|
||||
<value xml:lang="jp"><![CDATA[FTP情報入力]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[输入FTP信息]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[輸入FTP信息]]></value>
|
||||
</item>
|
||||
<item name="dbSelect">
|
||||
<value xml:lang="ko"><![CDATA[DB 선택]]></value>
|
||||
<value xml:lang="en"><![CDATA[Choose database type]]></value>
|
||||
<value xml:lang="jp"><![CDATA[DB選択]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[选择DB]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[選擇DB]]></value>
|
||||
</item>
|
||||
<item name="dbInfo">
|
||||
<value xml:lang="ko"><![CDATA[DB 정보 입력]]></value>
|
||||
<value xml:lang="en"><![CDATA[Input Database information]]></value>
|
||||
<value xml:lang="jp"><![CDATA[DB情報入力]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[输入DB信息]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[輸入DB信息]]></value>
|
||||
</item>
|
||||
<item name="configInfo">
|
||||
<value xml:lang="ko"><![CDATA[환경 설정]]></value>
|
||||
<value xml:lang="en"><![CDATA[Settings]]></value>
|
||||
<value xml:lang="jp"><![CDATA[環境設定]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[环境设置]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[環境設置]]></value>
|
||||
</item>
|
||||
<item name="adminInfo">
|
||||
<value xml:lang="ko"><![CDATA[관리자 정보 입력]]></value>
|
||||
<value xml:lang="en"><![CDATA[Enter Administrator information]]></value>
|
||||
<value xml:lang="jp"><![CDATA[管理者情報入力]]></value>
|
||||
<value xml:lang="zh-CN"><![CDATA[输入管理员信息]]></value>
|
||||
<value xml:lang="zh-TW"><![CDATA[輸入管理員信息]]></value>
|
||||
</item>
|
||||
</item>
|
||||
<item name="install_condition_enable">
|
||||
|
|
|
|||
|
|
@ -103,7 +103,7 @@ class menuAdminController extends menu
|
|||
$output->add('menuSrl', $args->menu_srl);
|
||||
return $output;
|
||||
}
|
||||
|
||||
|
||||
function linkAllModuleInstancesToSitemap()
|
||||
{
|
||||
$unlinked_modules = false;
|
||||
|
|
@ -114,7 +114,7 @@ class menuAdminController extends menu
|
|||
{
|
||||
$unlinked_modules = $output->data;
|
||||
}
|
||||
|
||||
|
||||
if($unlinked_modules)
|
||||
{
|
||||
$unlinked_menu_srl = $this->getUnlinkedMenu();
|
||||
|
|
@ -122,7 +122,7 @@ class menuAdminController extends menu
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
function getUnlinkedMenu()
|
||||
{
|
||||
// 'unlinked' menu 존재여부 확인
|
||||
|
|
@ -139,7 +139,7 @@ class menuAdminController extends menu
|
|||
unset($moduleConfig->unlinked_menu_srl);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if(!$moduleConfig->unlinked_menu_srl)
|
||||
{
|
||||
$output = $this->addMenu('unlinked', 0);
|
||||
|
|
@ -154,10 +154,10 @@ class menuAdminController extends menu
|
|||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return $moduleConfig->unlinked_menu_srl;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* insert menu when not linked module.
|
||||
*
|
||||
|
|
@ -172,7 +172,7 @@ class menuAdminController extends menu
|
|||
{
|
||||
return new Object(-1, 'msg_invalid_request');
|
||||
}
|
||||
|
||||
|
||||
foreach($moduleInfos as $moduleInfo)
|
||||
{
|
||||
// search menu.
|
||||
|
|
@ -180,9 +180,9 @@ class menuAdminController extends menu
|
|||
$args->url = $moduleInfo->mid;
|
||||
$args->site_srl = $moduleInfo->site_srl;
|
||||
$args->is_shortcut = 'N';
|
||||
|
||||
|
||||
$output = executeQuery('menu.getMenuItemByUrl', $args);
|
||||
|
||||
|
||||
if($output->toBool() && $output->data)
|
||||
{
|
||||
$moduleInfo->menu_srl = $output->data->menu_srl;
|
||||
|
|
@ -195,7 +195,7 @@ class menuAdminController extends menu
|
|||
$item_args->name = $moduleInfo->mid;
|
||||
$item_args->menu_item_srl = getNextSequence();
|
||||
$item_args->listorder = -1*$item_args->menu_item_srl;
|
||||
|
||||
|
||||
$output = executeQuery('menu.insertMenuItem', $item_args);
|
||||
if(!$output->toBool())
|
||||
{
|
||||
|
|
@ -203,9 +203,9 @@ class menuAdminController extends menu
|
|||
}
|
||||
$moduleInfo->menu_srl = $menuSrl;
|
||||
}
|
||||
|
||||
|
||||
$output = executeQuery('module.updateModule', $moduleInfo);
|
||||
|
||||
|
||||
return $output;
|
||||
}
|
||||
|
||||
|
|
@ -214,14 +214,14 @@ class menuAdminController extends menu
|
|||
{
|
||||
$oCacheHandler->invalidateGroupKey('site_and_module');
|
||||
}
|
||||
|
||||
|
||||
$oMenuAdminController = getAdminController('menu');
|
||||
$oMenuAdminController->makeXmlFile($menuSrl);
|
||||
|
||||
|
||||
return new Object();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Change the menu title
|
||||
|
|
@ -418,7 +418,7 @@ class menuAdminController extends menu
|
|||
|
||||
// recreate menu cache file
|
||||
$this->makeXmlFile($request->menu_srl);
|
||||
|
||||
|
||||
if(!$isProc)
|
||||
{
|
||||
return $this->get('menu_item_srl');
|
||||
|
|
@ -504,7 +504,7 @@ class menuAdminController extends menu
|
|||
$args->is_shortcut = $request->is_shortcut;
|
||||
$args->url = '#';
|
||||
}
|
||||
|
||||
|
||||
if($request->menu_desc) $args->desc = $request->menu_desc;
|
||||
else $args->desc = '';
|
||||
|
||||
|
|
@ -539,7 +539,7 @@ class menuAdminController extends menu
|
|||
|
||||
if($request->menu_name_key) $args->name = $request->menu_name_key;
|
||||
else $args->name = $request->menu_name;
|
||||
|
||||
|
||||
if($request->menu_desc) $args->desc = $request->menu_desc;
|
||||
else $args->desc = '';
|
||||
|
||||
|
|
@ -616,7 +616,7 @@ class menuAdminController extends menu
|
|||
{
|
||||
$cmArgs->use_mobile = 'Y';
|
||||
}
|
||||
|
||||
|
||||
// if mid is empty, auto create mid
|
||||
if(!$request->module_id)
|
||||
{
|
||||
|
|
@ -725,14 +725,14 @@ class menuAdminController extends menu
|
|||
{
|
||||
$args->name = $request->menu_name;
|
||||
}
|
||||
|
||||
|
||||
if($request->menu_desc) $args->desc = $request->menu_desc;
|
||||
else $args->desc = '';
|
||||
|
||||
|
||||
unset($args->group_srls);
|
||||
$args->open_window = $request->menu_open_window;
|
||||
$args->expand = $request->menu_expand;
|
||||
$output = executeQuery('menu.updateMenuItem', $args);
|
||||
$output = $this->_updateMenuItem($args);
|
||||
|
||||
$this->makeXmlFile($args->menu_srl);
|
||||
|
||||
|
|
@ -790,7 +790,7 @@ class menuAdminController extends menu
|
|||
$item_info->active_btn = '';
|
||||
}
|
||||
|
||||
$output = executeQuery('menu.updateMenuItem', $item_info);
|
||||
$output = $this->_updateMenuItem($item_info);
|
||||
|
||||
// recreate menu cache file
|
||||
$this->makeXmlFile($args->menu_srl);
|
||||
|
|
@ -798,13 +798,20 @@ class menuAdminController extends menu
|
|||
|
||||
public function updateMenuItem($itemInfo)
|
||||
{
|
||||
$output = executeQuery('menu.updateMenuItem', $itemInfo);
|
||||
$output = $this->_updateMenuItem($itemInfo);
|
||||
|
||||
// recreate menu cache file
|
||||
$this->makeXmlFile($itemInfo->menu_srl);
|
||||
return $output;
|
||||
}
|
||||
|
||||
public function _updateMenuItem($itemInfo)
|
||||
{
|
||||
$output = executeQuery('menu.updateMenuItem', $itemInfo);
|
||||
|
||||
return $output;
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete menu item(menu of the menu)
|
||||
* @return void|Object
|
||||
|
|
@ -961,7 +968,7 @@ class menuAdminController extends menu
|
|||
{
|
||||
$output->data->url = '';
|
||||
$referenceItem = $output->data;
|
||||
$output = executeQuery('menu.updateMenuItem', $referenceItem);
|
||||
$output = $this->_updateMenuItem($referenceItem);
|
||||
if(!$output->toBool())
|
||||
{
|
||||
$oDB->rollback();
|
||||
|
|
@ -1085,7 +1092,7 @@ class menuAdminController extends menu
|
|||
$args = new stdClass();
|
||||
$args->menu_srl = $menu_srl;
|
||||
$args->menu_item_srl = $node['node_srl'];
|
||||
$output = executeQuery('menu.updateMenuItemNode', $args);
|
||||
$output = $this->_updateMenuItem($args);
|
||||
|
||||
//module's menu_srl move also
|
||||
if($node['is_shortcut'] == 'N' && !empty($node['url']))
|
||||
|
|
@ -1249,7 +1256,7 @@ class menuAdminController extends menu
|
|||
$update_item_info->normal_btn = $copied_info['normal_btn'];
|
||||
$update_item_info->hover_btn = $copied_info['hover_btn'];
|
||||
$update_item_info->active_btn = $copied_info['active_btn'];
|
||||
executeQuery('menu.updateMenuItem', $update_item_info);
|
||||
$output = $this->_updateMenuItem($update_item_info);
|
||||
}
|
||||
$this->insertedMenuItemSrlList[] = $insertedMenuItemSrl;
|
||||
}
|
||||
|
|
@ -1629,7 +1636,7 @@ class menuAdminController extends menu
|
|||
// Update if exists
|
||||
if($item_info->menu_item_srl == $args->menu_item_srl)
|
||||
{
|
||||
$output = executeQuery('menu.updateMenuItem', $args);
|
||||
$output = $this->_updateMenuItem($args);
|
||||
if(!$output->toBool()) return $output;
|
||||
}
|
||||
// Insert if not exist
|
||||
|
|
@ -1680,7 +1687,7 @@ class menuAdminController extends menu
|
|||
if($exposure) $args->group_srls = implode(',', $exposure);
|
||||
}
|
||||
|
||||
$output = executeQuery('menu.updateMenuItem', $args);
|
||||
$output = $this->_updateMenuItem($args);
|
||||
if(!$output->toBool())
|
||||
{
|
||||
return $output;
|
||||
|
|
|
|||
|
|
@ -441,6 +441,8 @@ class moduleController extends module
|
|||
|
||||
unset($output);
|
||||
|
||||
$args->browser_title = strip_tags($args->browser_title);
|
||||
|
||||
if($isMenuCreate == TRUE)
|
||||
{
|
||||
$menuArgs = new stdClass;
|
||||
|
|
@ -476,8 +478,8 @@ class moduleController extends module
|
|||
}
|
||||
}
|
||||
|
||||
$args->menu_srl = $menuArgs->menu_srl;
|
||||
// Insert a module
|
||||
$args->menu_srl = $menuArgs->menu_srl;
|
||||
$output = executeQuery('module.insertModule', $args);
|
||||
if(!$output->toBool())
|
||||
{
|
||||
|
|
@ -521,6 +523,8 @@ class moduleController extends module
|
|||
if(!$args->browser_title) $args->browser_title = $module_info->browser_title;
|
||||
}
|
||||
|
||||
$args->browser_title = strip_tags($args->browser_title);
|
||||
|
||||
$output = executeQuery('module.isExistsModuleName', $args);
|
||||
if(!$output->toBool() || $output->data->count)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -55,6 +55,7 @@ class rssAdminView extends rss
|
|||
}
|
||||
}
|
||||
if(!$total_config->feed_document_count) $total_config->feed_document_count = 15;
|
||||
$total_config->url = $oRssModel->getModuleFeedUrl(NULL, '', 'rss', true);
|
||||
|
||||
Context::set('feed_config', $feed_config);
|
||||
Context::set('total_config', $total_config);
|
||||
|
|
|
|||
|
|
@ -12,27 +12,19 @@ class rssModel extends rss
|
|||
*
|
||||
* @param string $vid Vid
|
||||
* @param string $mid mid
|
||||
* @param string $format Feed format. ef)xe, atom, rss1.0
|
||||
* @param string $format Feed format. rss | atom
|
||||
* @param bool $absolute_url
|
||||
* @return string
|
||||
*/
|
||||
function getModuleFeedUrl($vid = null, $mid, $format)
|
||||
function getModuleFeedUrl($vid, $mid, $format = 'rss', $absolute_url = false)
|
||||
{
|
||||
if(Context::isAllowRewrite())
|
||||
if($absolute_url)
|
||||
{
|
||||
$request_uri = Context::getRequestUri();
|
||||
// If the virtual site variable exists and it is different from mid (vid and mid should not be the same)
|
||||
if($vid && $vid != $mid)
|
||||
{
|
||||
return $request_uri.$vid.'/'.$mid.'/'.$format;
|
||||
}
|
||||
else
|
||||
{
|
||||
return $request_uri.$mid.'/'.$format;
|
||||
}
|
||||
return getFullUrl('','vid',$vid, 'mid',$mid, 'act',$format);
|
||||
}
|
||||
else
|
||||
{
|
||||
return getUrl('','mid',$mid,'act',$format);
|
||||
return getUrl('','vid',$vid, 'mid',$mid, 'act',$format);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -172,7 +172,7 @@ class rssView extends rss
|
|||
$info->id = $proctcl.$_SERVER['HTTP_HOST'].$info->id;
|
||||
}
|
||||
|
||||
$info->language = Context::getLangType();
|
||||
$info->language = str_replace('jp','ja',Context::getLangType());
|
||||
// Set the variables used in the RSS output
|
||||
Context::set('info', $info);
|
||||
Context::set('feed_config', $config);
|
||||
|
|
|
|||
|
|
@ -1,13 +1,13 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ruleset version="1.5.0">
|
||||
<customrules>
|
||||
<customrules>
|
||||
<rule name="boolean" type="enum" test="Y,N" />
|
||||
</customrules>
|
||||
<fields>
|
||||
</customrules>
|
||||
<fields>
|
||||
<field name="module" required="true" default="rss" />
|
||||
<field name="act" required="true" default="procRssAdminInsertConfig" />
|
||||
<field name="use_total_feed" required="true" default="Y" rule="boolean" />
|
||||
<field name="feed_title" required="true">
|
||||
<field name="feed_title">
|
||||
<title xml:lang="ko">피드(Feed) 제목</title>
|
||||
<title xml:lang="en">Feed Title</title>
|
||||
</field>
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
<input type="hidden" name="xe_validator_id" value="modules/rss/tpl/rss_admin_index/1" />
|
||||
<div class="x_control-group">
|
||||
<div class="x_control-label">{$lang->url}</div>
|
||||
<div class="x_controls" style="padding-top:5px"><a href="{getFullSiteUrl()}rss" target="_blank">{getFullSiteUrl()}rss</a></div>
|
||||
<div class="x_controls" style="padding-top:5px"><a href="{$total_config->url}" target="_blank">{$total_config->url}</a></div>
|
||||
</div>
|
||||
<div class="x_control-group">
|
||||
<label class="x_control-label">{$lang->total_feed}</label>
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
<?php //[STAMP] 655f3852f47c53f31093f448f1b7f2c5
|
||||
<?php //[STAMP] 8226438e4d1a01d3ebb358f3af77c814
|
||||
|
||||
// This class was automatically generated by build task
|
||||
// You should not change it manually as it will be overwritten on next build
|
||||
|
|
@ -1639,7 +1639,7 @@ class InstallTester extends \Codeception\Actor
|
|||
* @return mixed
|
||||
* @see \Codeception\Lib\InnerBrowser::grabCookie()
|
||||
*/
|
||||
public function grabCookie($name, $params = null) {
|
||||
public function grabCookie($cookie, $params = null) {
|
||||
return $this->scenario->runStep(new \Codeception\Step\Action('grabCookie', func_get_args()));
|
||||
}
|
||||
|
||||
|
|
@ -1662,7 +1662,7 @@ class InstallTester extends \Codeception\Actor
|
|||
* Conditional Assertion: Test won't be stopped on fail
|
||||
* @see \Codeception\Lib\InnerBrowser::seeCookie()
|
||||
*/
|
||||
public function canSeeCookie($name, $params = null) {
|
||||
public function canSeeCookie($cookie, $params = null) {
|
||||
return $this->scenario->runStep(new \Codeception\Step\ConditionalAssertion('seeCookie', func_get_args()));
|
||||
}
|
||||
/**
|
||||
|
|
@ -1682,7 +1682,7 @@ class InstallTester extends \Codeception\Actor
|
|||
* @return mixed
|
||||
* @see \Codeception\Lib\InnerBrowser::seeCookie()
|
||||
*/
|
||||
public function seeCookie($name, $params = null) {
|
||||
public function seeCookie($cookie, $params = null) {
|
||||
return $this->scenario->runStep(new \Codeception\Step\Assertion('seeCookie', func_get_args()));
|
||||
}
|
||||
|
||||
|
|
@ -1700,7 +1700,7 @@ class InstallTester extends \Codeception\Actor
|
|||
* Conditional Assertion: Test won't be stopped on fail
|
||||
* @see \Codeception\Lib\InnerBrowser::dontSeeCookie()
|
||||
*/
|
||||
public function cantSeeCookie($name, $params = null) {
|
||||
public function cantSeeCookie($cookie, $params = null) {
|
||||
return $this->scenario->runStep(new \Codeception\Step\ConditionalAssertion('dontSeeCookie', func_get_args()));
|
||||
}
|
||||
/**
|
||||
|
|
@ -1715,7 +1715,7 @@ class InstallTester extends \Codeception\Actor
|
|||
* @return mixed
|
||||
* @see \Codeception\Lib\InnerBrowser::dontSeeCookie()
|
||||
*/
|
||||
public function dontSeeCookie($name, $params = null) {
|
||||
public function dontSeeCookie($cookie, $params = null) {
|
||||
return $this->scenario->runStep(new \Codeception\Step\Assertion('dontSeeCookie', func_get_args()));
|
||||
}
|
||||
|
||||
|
|
@ -1900,7 +1900,7 @@ class InstallTester extends \Codeception\Actor
|
|||
* Conditional Assertion: Test won't be stopped on fail
|
||||
* @see \Codeception\Lib\InnerBrowser::seeOptionIsSelected()
|
||||
*/
|
||||
public function canSeeOptionIsSelected($select, $optionText) {
|
||||
public function canSeeOptionIsSelected($selector, $optionText) {
|
||||
return $this->scenario->runStep(new \Codeception\Step\ConditionalAssertion('seeOptionIsSelected', func_get_args()));
|
||||
}
|
||||
/**
|
||||
|
|
@ -1920,7 +1920,7 @@ class InstallTester extends \Codeception\Actor
|
|||
* @return mixed
|
||||
* @see \Codeception\Lib\InnerBrowser::seeOptionIsSelected()
|
||||
*/
|
||||
public function seeOptionIsSelected($select, $optionText) {
|
||||
public function seeOptionIsSelected($selector, $optionText) {
|
||||
return $this->scenario->runStep(new \Codeception\Step\Assertion('seeOptionIsSelected', func_get_args()));
|
||||
}
|
||||
|
||||
|
|
@ -1943,7 +1943,7 @@ class InstallTester extends \Codeception\Actor
|
|||
* Conditional Assertion: Test won't be stopped on fail
|
||||
* @see \Codeception\Lib\InnerBrowser::dontSeeOptionIsSelected()
|
||||
*/
|
||||
public function cantSeeOptionIsSelected($select, $optionText) {
|
||||
public function cantSeeOptionIsSelected($selector, $optionText) {
|
||||
return $this->scenario->runStep(new \Codeception\Step\ConditionalAssertion('dontSeeOptionIsSelected', func_get_args()));
|
||||
}
|
||||
/**
|
||||
|
|
@ -1963,7 +1963,7 @@ class InstallTester extends \Codeception\Actor
|
|||
* @return mixed
|
||||
* @see \Codeception\Lib\InnerBrowser::dontSeeOptionIsSelected()
|
||||
*/
|
||||
public function dontSeeOptionIsSelected($select, $optionText) {
|
||||
public function dontSeeOptionIsSelected($selector, $optionText) {
|
||||
return $this->scenario->runStep(new \Codeception\Step\Assertion('dontSeeOptionIsSelected', func_get_args()));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
<?php //[STAMP] bd6b55949e6a72559e6ee503e29432bb
|
||||
<?php //[STAMP] 3dec2fc1382a9643e3c2a5f6e95c8413
|
||||
|
||||
// This class was automatically generated by build task
|
||||
// You should not change it manually as it will be overwritten on next build
|
||||
|
|
@ -93,7 +93,7 @@ class UnitTester extends \Codeception\Actor
|
|||
/**
|
||||
* [!] Method is generated. Documentation taken from corresponding module.
|
||||
*
|
||||
* Checks that expected is greater than actual
|
||||
* Checks that actual is greater than expected
|
||||
*
|
||||
* @param $expected
|
||||
* @param $actual
|
||||
|
|
@ -119,7 +119,7 @@ class UnitTester extends \Codeception\Actor
|
|||
/**
|
||||
* [!] Method is generated. Documentation taken from corresponding module.
|
||||
*
|
||||
* Checks that expected is greater or equal than actual
|
||||
* Checks that actual is greater or equal than expected
|
||||
*
|
||||
* @param $expected
|
||||
* @param $actual
|
||||
|
|
@ -145,7 +145,7 @@ class UnitTester extends \Codeception\Actor
|
|||
/**
|
||||
* [!] Method is generated. Documentation taken from corresponding module.
|
||||
*
|
||||
* Checks that expected is less than actual
|
||||
* Checks that actual is less than expected
|
||||
*
|
||||
* @param $expected
|
||||
* @param $actual
|
||||
|
|
@ -160,7 +160,7 @@ class UnitTester extends \Codeception\Actor
|
|||
/**
|
||||
* [!] Method is generated. Documentation taken from corresponding module.
|
||||
*
|
||||
* Checks that expected is less or equal than actual
|
||||
* Checks that actual is less or equal than expected
|
||||
*
|
||||
* @param $expected
|
||||
* @param $actual
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue