mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-27 15:19:57 +09:00
Merge remote-tracking branch 'xpressengine/master' into Cover-Image-MULTILANG
Conflicts: common/js/plugins/jquery.fileupload/js/main.min.js min 파일은 자동 생성되리라 믿고 포기.
This commit is contained in:
commit
8dfd018435
22 changed files with 132 additions and 71 deletions
|
|
@ -10,6 +10,7 @@ matrix:
|
||||||
allow_failures:
|
allow_failures:
|
||||||
- php: 7
|
- php: 7
|
||||||
- php: hhvm
|
- php: hhvm
|
||||||
|
sudo: false
|
||||||
before_script:
|
before_script:
|
||||||
- travis_retry composer self-update
|
- travis_retry composer self-update
|
||||||
- npm install -g grunt-cli
|
- npm install -g grunt-cli
|
||||||
|
|
|
||||||
12
Gruntfile.js
12
Gruntfile.js
|
|
@ -299,7 +299,17 @@ module.exports = function(grunt) {
|
||||||
grunt.file.delete('build/xe');
|
grunt.file.delete('build/xe');
|
||||||
grunt.file.delete('build/temp.full.tar');
|
grunt.file.delete('build/temp.full.tar');
|
||||||
|
|
||||||
grunt.log.ok('Done!');
|
grunt.util.spawn({
|
||||||
|
cmd: "git",
|
||||||
|
args: ['diff', '--name-status', target]
|
||||||
|
}, function (error, result, code) {
|
||||||
|
var fs = require('fs');
|
||||||
|
result = 'Added (A), Copied (C), Deleted (D), Modified (M), Renamed (R).' + grunt.util.linefeed + result;
|
||||||
|
grunt.file.write(build_dir + '/CHANGED.' + version + '.txt', result);
|
||||||
|
|
||||||
|
grunt.log.ok('Done!');
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1658,6 +1658,7 @@ class Context
|
||||||
'document_srl.mid' => "$mid/$srl",
|
'document_srl.mid' => "$mid/$srl",
|
||||||
'document_srl.vid' => "$vid/$srl",
|
'document_srl.vid' => "$vid/$srl",
|
||||||
'document_srl.mid.vid' => "$vid/$mid/$srl",
|
'document_srl.mid.vid' => "$vid/$mid/$srl",
|
||||||
|
'act' => ($is_feed && $act !== 'api') ? $act : '',
|
||||||
'act.mid' => $is_feed ? "$mid/$act" : '',
|
'act.mid' => $is_feed ? "$mid/$act" : '',
|
||||||
'act.mid.vid' => $is_feed ? "$vid/$mid/$act" : '',
|
'act.mid.vid' => $is_feed ? "$vid/$mid/$act" : '',
|
||||||
'act.document_srl.key' => ($act == 'trackback') ? "$srl/$key/$act" : '',
|
'act.document_srl.key' => ($act == 'trackback') ? "$srl/$key/$act" : '',
|
||||||
|
|
|
||||||
|
|
@ -289,6 +289,16 @@ class ExtraItem
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns a value for HTML
|
||||||
|
*
|
||||||
|
* @return string Returns a value expressed in HTML.
|
||||||
|
*/
|
||||||
|
function getValue()
|
||||||
|
{
|
||||||
|
return $this->_getTypeValue($this->type, $this->value);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns a value for HTML
|
* Returns a value for HTML
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,7 @@
|
||||||
// send Blob objects via XHR requests:
|
// send Blob objects via XHR requests:
|
||||||
disableImageResize: /Android(?!.*Chrome)|Opera/
|
disableImageResize: /Android(?!.*Chrome)|Opera/
|
||||||
.test(window.navigator.userAgent),
|
.test(window.navigator.userAgent),
|
||||||
maxFileSize: 5000000,
|
maxFileSize: 999000,
|
||||||
acceptFileTypes: /(\.|\/)(gif|jpe?g|png)$/i
|
acceptFileTypes: /(\.|\/)(gif|jpe?g|png)$/i
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -242,7 +242,7 @@
|
||||||
blob.name = file.name;
|
blob.name = file.name;
|
||||||
} else if (file.name) {
|
} else if (file.name) {
|
||||||
blob.name = file.name.replace(
|
blob.name = file.name.replace(
|
||||||
/\..+$/,
|
/\.\w+$/,
|
||||||
'.' + blob.type.substr(6)
|
'.' + blob.type.substr(6)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* jQuery File Upload Plugin 5.42.2
|
* jQuery File Upload Plugin 5.42.3
|
||||||
* https://github.com/blueimp/jQuery-File-Upload
|
* https://github.com/blueimp/jQuery-File-Upload
|
||||||
*
|
*
|
||||||
* Copyright 2010, Sebastian Tschan
|
* Copyright 2010, Sebastian Tschan
|
||||||
|
|
@ -277,7 +277,8 @@
|
||||||
// The following are jQuery ajax settings required for the file uploads:
|
// The following are jQuery ajax settings required for the file uploads:
|
||||||
processData: false,
|
processData: false,
|
||||||
contentType: false,
|
contentType: false,
|
||||||
cache: false
|
cache: false,
|
||||||
|
timeout: 0
|
||||||
},
|
},
|
||||||
|
|
||||||
// A list of options that require reinitializing event listeners and/or
|
// A list of options that require reinitializing event listeners and/or
|
||||||
|
|
@ -983,7 +984,10 @@
|
||||||
fileSet,
|
fileSet,
|
||||||
i,
|
i,
|
||||||
j = 0;
|
j = 0;
|
||||||
if (limitSize && (!filesLength || files[0].size === undefined)) {
|
if (!filesLength) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (limitSize && files[0].size === undefined) {
|
||||||
limitSize = undefined;
|
limitSize = undefined;
|
||||||
}
|
}
|
||||||
if (!(options.singleFileUploads || limit || limitSize) ||
|
if (!(options.singleFileUploads || limit || limitSize) ||
|
||||||
|
|
@ -1344,18 +1348,19 @@
|
||||||
_initDataAttributes: function () {
|
_initDataAttributes: function () {
|
||||||
var that = this,
|
var that = this,
|
||||||
options = this.options,
|
options = this.options,
|
||||||
clone = $(this.element[0].cloneNode(false)),
|
data = this.element.data();
|
||||||
data = clone.data();
|
|
||||||
// Avoid memory leaks:
|
|
||||||
clone.remove();
|
|
||||||
// Initialize options set via HTML5 data-attributes:
|
// Initialize options set via HTML5 data-attributes:
|
||||||
$.each(
|
$.each(
|
||||||
data,
|
this.element[0].attributes,
|
||||||
function (key, value) {
|
function (index, attr) {
|
||||||
var dataAttributeName = 'data-' +
|
var key = attr.name.toLowerCase(),
|
||||||
// Convert camelCase to hyphen-ated key:
|
value;
|
||||||
key.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
|
if (/^data-/.test(key)) {
|
||||||
if (clone.attr(dataAttributeName)) {
|
// Convert hyphen-ated key to camelCase:
|
||||||
|
key = key.slice(5).replace(/-[a-z]/g, function (str) {
|
||||||
|
return str.charAt(1).toUpperCase();
|
||||||
|
});
|
||||||
|
value = data[key];
|
||||||
if (that._isRegExpOption(key, value)) {
|
if (that._isRegExpOption(key, value)) {
|
||||||
value = that._getRegExp(value);
|
value = that._getRegExp(value);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -60,6 +60,8 @@
|
||||||
last_selected_file: null,
|
last_selected_file: null,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
var currentEnforce_ssl = window.enforce_ssl;
|
||||||
|
if(location.protocol == 'https:') { window.enforce_ssl = true; }
|
||||||
|
|
||||||
var settings = {
|
var settings = {
|
||||||
url: request_uri
|
url: request_uri
|
||||||
|
|
@ -122,6 +124,8 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
window.enforce_ssl = currentEnforce_ssl;
|
||||||
|
|
||||||
|
|
||||||
data.settings = $.extend({} , default_settings, settings, opt || {});
|
data.settings = $.extend({} , default_settings, settings, opt || {});
|
||||||
$container.data(data);
|
$container.data(data);
|
||||||
|
|
@ -287,7 +291,6 @@
|
||||||
obj.editor_sequence = data.editorSequence;
|
obj.editor_sequence = data.editorSequence;
|
||||||
|
|
||||||
$.exec_json('file.getFileList', obj, function(res){
|
$.exec_json('file.getFileList', obj, function(res){
|
||||||
console.log(res);
|
|
||||||
data.uploadTargetSrl = res.upload_target_srl;
|
data.uploadTargetSrl = res.upload_target_srl;
|
||||||
editorRelKeys[data.editorSequence].primary.value = res.upload_target_srl;
|
editorRelKeys[data.editorSequence].primary.value = res.upload_target_srl;
|
||||||
data.uploadTargetSrl = res.uploadTargetSrl;
|
data.uploadTargetSrl = res.uploadTargetSrl;
|
||||||
|
|
@ -366,8 +369,6 @@
|
||||||
|
|
||||||
return u;
|
return u;
|
||||||
};
|
};
|
||||||
|
|
||||||
xe.unregisterApp();
|
|
||||||
})(jQuery);
|
})(jQuery);
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,7 @@ define('__ZBXE__', __XE__);
|
||||||
/**
|
/**
|
||||||
* Display XE's full version.
|
* Display XE's full version.
|
||||||
*/
|
*/
|
||||||
define('__XE_VERSION__', '1.8.5');
|
define('__XE_VERSION__', '1.8.8');
|
||||||
define('__XE_VERSION_ALPHA__', (stripos(__XE_VERSION__, 'alpha') !== false));
|
define('__XE_VERSION_ALPHA__', (stripos(__XE_VERSION__, 'alpha') !== false));
|
||||||
define('__XE_VERSION_BETA__', (stripos(__XE_VERSION__, 'beta') !== false));
|
define('__XE_VERSION_BETA__', (stripos(__XE_VERSION__, 'beta') !== false));
|
||||||
define('__XE_VERSION_RC__', (stripos(__XE_VERSION__, 'rc') !== false));
|
define('__XE_VERSION_RC__', (stripos(__XE_VERSION__, 'rc') !== false));
|
||||||
|
|
|
||||||
|
|
@ -307,35 +307,35 @@
|
||||||
<!--@if($_sample_slide)-->
|
<!--@if($_sample_slide)-->
|
||||||
<include target="./demo/slide.html" />
|
<include target="./demo/slide.html" />
|
||||||
<!--@else-->
|
<!--@else-->
|
||||||
<div cond="$layout_info->slide_img1" style="background-image:url('{$layout_info->slide_img1}');">
|
<div cond="$layout_info->slide_img1" style="background-image:url('{$layout_info->slide_img1}');" class="swiper-slide">
|
||||||
<div cond="$layout_info->slide_text1">
|
<div cond="$layout_info->slide_text1">
|
||||||
<div>
|
<div>
|
||||||
{$layout_info->slide_text1}
|
{$layout_info->slide_text1}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div cond="$layout_info->slide_img2" style="background-image:url('{$layout_info->slide_img2}');">
|
<div cond="$layout_info->slide_img2" style="background-image:url('{$layout_info->slide_img2}');" class="swiper-slide">
|
||||||
<div cond="$layout_info->slide_text2">
|
<div cond="$layout_info->slide_text2">
|
||||||
<div>
|
<div>
|
||||||
{$layout_info->slide_text2}
|
{$layout_info->slide_text2}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div cond="$layout_info->slide_img3" style="background-image:url('{$layout_info->slide_img3}');">
|
<div cond="$layout_info->slide_img3" style="background-image:url('{$layout_info->slide_img3}');" class="swiper-slide">
|
||||||
<div cond="$layout_info->slide_text3">
|
<div cond="$layout_info->slide_text3">
|
||||||
<div>
|
<div>
|
||||||
{$layout_info->slide_text3}
|
{$layout_info->slide_text3}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div cond="$layout_info->slide_img4" style="background-image:url('{$layout_info->slide_img4}');">
|
<div cond="$layout_info->slide_img4" style="background-image:url('{$layout_info->slide_img4}');" class="swiper-slide">
|
||||||
<div cond="$layout_info->slide_text4">
|
<div cond="$layout_info->slide_text4">
|
||||||
<div>
|
<div>
|
||||||
{$layout_info->slide_text4}
|
{$layout_info->slide_text4}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div cond="$layout_info->slide_img5" style="background-image:url('{$layout_info->slide_img5}');">
|
<div cond="$layout_info->slide_img5" style="background-image:url('{$layout_info->slide_img5}');" class="swiper-slide">
|
||||||
<div cond="$layout_info->slide_text5">
|
<div cond="$layout_info->slide_text5">
|
||||||
<div>
|
<div>
|
||||||
{$layout_info->slide_text5}
|
{$layout_info->slide_text5}
|
||||||
|
|
|
||||||
|
|
@ -651,7 +651,14 @@ class documentItem extends Object
|
||||||
function getExtraValue($idx)
|
function getExtraValue($idx)
|
||||||
{
|
{
|
||||||
$extra_vars = $this->getExtraVars();
|
$extra_vars = $this->getExtraVars();
|
||||||
return $extra_vars[$idx]->value;
|
if(is_array($extra_vars) && array_key_exists($idx,$extra_vars))
|
||||||
|
{
|
||||||
|
return $extra_vars[$idx]->getValue();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return '';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function getExtraValueHTML($idx)
|
function getExtraValueHTML($idx)
|
||||||
|
|
@ -679,7 +686,15 @@ class documentItem extends Object
|
||||||
$extra_eid[$key->eid] = $key;
|
$extra_eid[$key->eid] = $key;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $extra_eid[$eid]->value;
|
|
||||||
|
if(is_array($extra_eid) && array_key_exists($eid,$extra_eid))
|
||||||
|
{
|
||||||
|
return $extra_eid[$eid]->getValue();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return '';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function getExtraEidValueHTML($eid)
|
function getExtraEidValueHTML($eid)
|
||||||
|
|
@ -690,7 +705,15 @@ class documentItem extends Object
|
||||||
{
|
{
|
||||||
$extra_eid[$key->eid] = $key;
|
$extra_eid[$key->eid] = $key;
|
||||||
}
|
}
|
||||||
return $extra_eid[$eid]->getValueHTML();
|
|
||||||
|
if(is_array($extra_eid) && array_key_exists($eid,$extra_eid))
|
||||||
|
{
|
||||||
|
return $extra_eid[$eid]->getValueHTML();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return '';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function getExtraVarsValue($key)
|
function getExtraVarsValue($key)
|
||||||
|
|
|
||||||
|
|
@ -32,9 +32,9 @@
|
||||||
<script>
|
<script>
|
||||||
(function($){
|
(function($){
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
// editor
|
// editor
|
||||||
$(function(){
|
$(function(){
|
||||||
|
<!--@if(!FileHandler::exists('common/js/plugins/ckeditor/ckeditor/config.js'))-->CKEDITOR.config.customConfig = '';<!--@endif-->
|
||||||
var settings = {
|
var settings = {
|
||||||
ckeconfig: {
|
ckeconfig: {
|
||||||
height: '{$editor_height}',
|
height: '{$editor_height}',
|
||||||
|
|
|
||||||
|
|
@ -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
|
// Get random number generator
|
||||||
$random = new Password();
|
$random = new Password();
|
||||||
|
|
||||||
// Set upload path by checking if the attachement is an image or other kinds of file
|
// 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']))
|
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));
|
$path = sprintf("./files/attach/images/%s/%s", $module_srl,getNumberingPath($upload_target_srl,3));
|
||||||
|
|
||||||
// special character to '_'
|
// special character to '_'
|
||||||
|
|
|
||||||
|
|
@ -220,6 +220,7 @@ class fileModel extends file
|
||||||
{
|
{
|
||||||
$file = $file_list[$i];
|
$file = $file_list[$i];
|
||||||
$file->source_filename = stripslashes($file->source_filename);
|
$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->download_url = $this->getDownloadUrl($file->file_srl, $file->sid, $file->module_srl);
|
||||||
$file_list[$i] = $file;
|
$file_list[$i] = $file;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
<value xml:lang="en"><![CDATA[XE Installation]]></value>
|
<value xml:lang="en"><![CDATA[XE Installation]]></value>
|
||||||
<value xml:lang="jp"><![CDATA[XEのインストール]]></value>
|
<value xml:lang="jp"><![CDATA[XEのインストール]]></value>
|
||||||
<value xml:lang="zh-CN"><![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="fr"><![CDATA[Installation du XE ]]></value>
|
||||||
<value xml:lang="ru"><![CDATA[Установка XE]]></value>
|
<value xml:lang="ru"><![CDATA[Установка XE]]></value>
|
||||||
<value xml:lang="es"><![CDATA[Instalación de XE ]]></value>
|
<value xml:lang="es"><![CDATA[Instalación de XE ]]></value>
|
||||||
|
|
@ -34,36 +34,51 @@
|
||||||
<item name="license_agreement">
|
<item name="license_agreement">
|
||||||
<value xml:lang="ko"><![CDATA[사용권 동의]]></value>
|
<value xml:lang="ko"><![CDATA[사용권 동의]]></value>
|
||||||
<value xml:lang="en"><![CDATA[License agreement]]></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>
|
||||||
<item name="condition">
|
<item name="condition">
|
||||||
<value xml:lang="ko"><![CDATA[설치 조건 확인]]></value>
|
<value xml:lang="ko"><![CDATA[설치 조건 확인]]></value>
|
||||||
<value xml:lang="en"><![CDATA[Check the installation conditions]]></value>
|
<value xml:lang="en"><![CDATA[Check the installation conditions]]></value>
|
||||||
<value xml:lang="jp"><![CDATA[インストール条件確認]]></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="ftp">
|
<item name="ftp">
|
||||||
<value xml:lang="ko"><![CDATA[FTP 정보 입력]]></value>
|
<value xml:lang="ko"><![CDATA[FTP 정보 입력]]></value>
|
||||||
<value xml:lang="en"><![CDATA[Input FTP information]]></value>
|
<value xml:lang="en"><![CDATA[Input FTP information]]></value>
|
||||||
<value xml:lang="jp"><![CDATA[FTP情報入力]]></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>
|
||||||
<item name="dbSelect">
|
<item name="dbSelect">
|
||||||
<value xml:lang="ko"><![CDATA[DB 선택]]></value>
|
<value xml:lang="ko"><![CDATA[DB 선택]]></value>
|
||||||
<value xml:lang="en"><![CDATA[Choose database type]]></value>
|
<value xml:lang="en"><![CDATA[Choose database type]]></value>
|
||||||
<value xml:lang="jp"><![CDATA[DB選択]]></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>
|
||||||
<item name="dbInfo">
|
<item name="dbInfo">
|
||||||
<value xml:lang="ko"><![CDATA[DB 정보 입력]]></value>
|
<value xml:lang="ko"><![CDATA[DB 정보 입력]]></value>
|
||||||
<value xml:lang="en"><![CDATA[Input Database information]]></value>
|
<value xml:lang="en"><![CDATA[Input Database information]]></value>
|
||||||
<value xml:lang="jp"><![CDATA[DB情報入力]]></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>
|
||||||
<item name="configInfo">
|
<item name="configInfo">
|
||||||
<value xml:lang="ko"><![CDATA[환경 설정]]></value>
|
<value xml:lang="ko"><![CDATA[환경 설정]]></value>
|
||||||
<value xml:lang="en"><![CDATA[Settings]]></value>
|
<value xml:lang="en"><![CDATA[Settings]]></value>
|
||||||
<value xml:lang="jp"><![CDATA[環境設定]]></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="adminInfo">
|
<item name="adminInfo">
|
||||||
<value xml:lang="ko"><![CDATA[관리자 정보 입력]]></value>
|
<value xml:lang="ko"><![CDATA[관리자 정보 입력]]></value>
|
||||||
<value xml:lang="en"><![CDATA[Enter Administrator information]]></value>
|
<value xml:lang="en"><![CDATA[Enter Administrator information]]></value>
|
||||||
<value xml:lang="jp"><![CDATA[管理者情報入力]]></value>
|
<value xml:lang="jp"><![CDATA[管理者情報入力]]></value>
|
||||||
|
<value xml:lang="zh-CN"><![CDATA[输入管理员信息]]></value>
|
||||||
|
<value xml:lang="zh-TW"><![CDATA[輸入管理員信息]]></value>
|
||||||
</item>
|
</item>
|
||||||
</item>
|
</item>
|
||||||
<item name="install_condition_enable">
|
<item name="install_condition_enable">
|
||||||
|
|
|
||||||
|
|
@ -55,6 +55,7 @@ class rssAdminView extends rss
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(!$total_config->feed_document_count) $total_config->feed_document_count = 15;
|
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('feed_config', $feed_config);
|
||||||
Context::set('total_config', $total_config);
|
Context::set('total_config', $total_config);
|
||||||
|
|
|
||||||
|
|
@ -12,27 +12,19 @@ class rssModel extends rss
|
||||||
*
|
*
|
||||||
* @param string $vid Vid
|
* @param string $vid Vid
|
||||||
* @param string $mid mid
|
* @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
|
* @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();
|
return getFullUrl('','vid',$vid, 'mid',$mid, 'act',$format);
|
||||||
// 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;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
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->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
|
// Set the variables used in the RSS output
|
||||||
Context::set('info', $info);
|
Context::set('info', $info);
|
||||||
Context::set('feed_config', $config);
|
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">
|
<ruleset version="1.5.0">
|
||||||
<customrules>
|
<customrules>
|
||||||
<rule name="boolean" type="enum" test="Y,N" />
|
<rule name="boolean" type="enum" test="Y,N" />
|
||||||
</customrules>
|
</customrules>
|
||||||
<fields>
|
<fields>
|
||||||
<field name="module" required="true" default="rss" />
|
<field name="module" required="true" default="rss" />
|
||||||
<field name="act" required="true" default="procRssAdminInsertConfig" />
|
<field name="act" required="true" default="procRssAdminInsertConfig" />
|
||||||
<field name="use_total_feed" required="true" default="Y" rule="boolean" />
|
<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="ko">피드(Feed) 제목</title>
|
||||||
<title xml:lang="en">Feed Title</title>
|
<title xml:lang="en">Feed Title</title>
|
||||||
</field>
|
</field>
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@
|
||||||
<input type="hidden" name="xe_validator_id" value="modules/rss/tpl/rss_admin_index/1" />
|
<input type="hidden" name="xe_validator_id" value="modules/rss/tpl/rss_admin_index/1" />
|
||||||
<div class="x_control-group">
|
<div class="x_control-group">
|
||||||
<div class="x_control-label">{$lang->url}</div>
|
<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>
|
||||||
<div class="x_control-group">
|
<div class="x_control-group">
|
||||||
<label class="x_control-label">{$lang->total_feed}</label>
|
<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
|
// This class was automatically generated by build task
|
||||||
// You should not change it manually as it will be overwritten on next build
|
// 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
|
* @return mixed
|
||||||
* @see \Codeception\Lib\InnerBrowser::grabCookie()
|
* @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()));
|
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
|
* Conditional Assertion: Test won't be stopped on fail
|
||||||
* @see \Codeception\Lib\InnerBrowser::seeCookie()
|
* @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()));
|
return $this->scenario->runStep(new \Codeception\Step\ConditionalAssertion('seeCookie', func_get_args()));
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
|
@ -1682,7 +1682,7 @@ class InstallTester extends \Codeception\Actor
|
||||||
* @return mixed
|
* @return mixed
|
||||||
* @see \Codeception\Lib\InnerBrowser::seeCookie()
|
* @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()));
|
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
|
* Conditional Assertion: Test won't be stopped on fail
|
||||||
* @see \Codeception\Lib\InnerBrowser::dontSeeCookie()
|
* @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()));
|
return $this->scenario->runStep(new \Codeception\Step\ConditionalAssertion('dontSeeCookie', func_get_args()));
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
|
@ -1715,7 +1715,7 @@ class InstallTester extends \Codeception\Actor
|
||||||
* @return mixed
|
* @return mixed
|
||||||
* @see \Codeception\Lib\InnerBrowser::dontSeeCookie()
|
* @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()));
|
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
|
* Conditional Assertion: Test won't be stopped on fail
|
||||||
* @see \Codeception\Lib\InnerBrowser::seeOptionIsSelected()
|
* @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()));
|
return $this->scenario->runStep(new \Codeception\Step\ConditionalAssertion('seeOptionIsSelected', func_get_args()));
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
|
@ -1920,7 +1920,7 @@ class InstallTester extends \Codeception\Actor
|
||||||
* @return mixed
|
* @return mixed
|
||||||
* @see \Codeception\Lib\InnerBrowser::seeOptionIsSelected()
|
* @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()));
|
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
|
* Conditional Assertion: Test won't be stopped on fail
|
||||||
* @see \Codeception\Lib\InnerBrowser::dontSeeOptionIsSelected()
|
* @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()));
|
return $this->scenario->runStep(new \Codeception\Step\ConditionalAssertion('dontSeeOptionIsSelected', func_get_args()));
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
|
@ -1963,7 +1963,7 @@ class InstallTester extends \Codeception\Actor
|
||||||
* @return mixed
|
* @return mixed
|
||||||
* @see \Codeception\Lib\InnerBrowser::dontSeeOptionIsSelected()
|
* @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()));
|
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
|
// This class was automatically generated by build task
|
||||||
// You should not change it manually as it will be overwritten on next build
|
// 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.
|
* [!] 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 $expected
|
||||||
* @param $actual
|
* @param $actual
|
||||||
|
|
@ -119,7 +119,7 @@ class UnitTester extends \Codeception\Actor
|
||||||
/**
|
/**
|
||||||
* [!] Method is generated. Documentation taken from corresponding module.
|
* [!] 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 $expected
|
||||||
* @param $actual
|
* @param $actual
|
||||||
|
|
@ -145,7 +145,7 @@ class UnitTester extends \Codeception\Actor
|
||||||
/**
|
/**
|
||||||
* [!] Method is generated. Documentation taken from corresponding module.
|
* [!] 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 $expected
|
||||||
* @param $actual
|
* @param $actual
|
||||||
|
|
@ -160,7 +160,7 @@ class UnitTester extends \Codeception\Actor
|
||||||
/**
|
/**
|
||||||
* [!] Method is generated. Documentation taken from corresponding module.
|
* [!] 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 $expected
|
||||||
* @param $actual
|
* @param $actual
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue