Merge pull request #22 from xpressengine/develop

Version up to 1.8.11
This commit is contained in:
YJSoft 2015-09-18 15:57:17 +09:00
commit b32367a464
18 changed files with 145 additions and 97 deletions

View file

@ -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="

View file

@ -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" : '',

View file

@ -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();

View file

@ -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));

View file

@ -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.

View file

@ -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')
{

View file

@ -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 '_'

View file

@ -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;
}

View 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">

View file

@ -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;

View file

@ -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)
{

View file

@ -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);

View file

@ -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);
}
}

View file

@ -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);

View file

@ -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>

View file

@ -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>

View file

@ -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()));
}

View file

@ -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