diff --git a/.travis.yml b/.travis.yml index 03e76fdb9..72a55f5ad 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,6 +10,7 @@ matrix: allow_failures: - php: 7 - php: hhvm +sudo: false before_script: - travis_retry composer self-update - npm install -g grunt-cli diff --git a/Gruntfile.js b/Gruntfile.js index 8c46bc8ee..326bbc019 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -299,7 +299,17 @@ module.exports = function(grunt) { grunt.file.delete('build/xe'); 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!'); + }); + }); }); } diff --git a/classes/context/Context.class.php b/classes/context/Context.class.php index 09f7d09a1..cd4265b1f 100644 --- a/classes/context/Context.class.php +++ b/classes/context/Context.class.php @@ -1658,6 +1658,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" : '', diff --git a/classes/extravar/Extravar.class.php b/classes/extravar/Extravar.class.php index 7438db2b9..821a7c62b 100644 --- a/classes/extravar/Extravar.class.php +++ b/classes/extravar/Extravar.class.php @@ -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 * diff --git a/common/js/plugins/jquery.fileupload/js/app.js b/common/js/plugins/jquery.fileupload/js/app.js index 47b4f923b..548a60d31 100755 --- a/common/js/plugins/jquery.fileupload/js/app.js +++ b/common/js/plugins/jquery.fileupload/js/app.js @@ -37,7 +37,7 @@ // send Blob objects via XHR requests: disableImageResize: /Android(?!.*Chrome)|Opera/ .test(window.navigator.userAgent), - maxFileSize: 5000000, + maxFileSize: 999000, acceptFileTypes: /(\.|\/)(gif|jpe?g|png)$/i }); } diff --git a/common/js/plugins/jquery.fileupload/js/jquery.fileupload-image.js b/common/js/plugins/jquery.fileupload/js/jquery.fileupload-image.js index 0ac993650..266b088de 100755 --- a/common/js/plugins/jquery.fileupload/js/jquery.fileupload-image.js +++ b/common/js/plugins/jquery.fileupload/js/jquery.fileupload-image.js @@ -242,7 +242,7 @@ blob.name = file.name; } else if (file.name) { blob.name = file.name.replace( - /\..+$/, + /\.\w+$/, '.' + blob.type.substr(6) ); } diff --git a/common/js/plugins/jquery.fileupload/js/jquery.fileupload.js b/common/js/plugins/jquery.fileupload/js/jquery.fileupload.js index e99f3091e..ab0748fc0 100755 --- a/common/js/plugins/jquery.fileupload/js/jquery.fileupload.js +++ b/common/js/plugins/jquery.fileupload/js/jquery.fileupload.js @@ -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 * * Copyright 2010, Sebastian Tschan @@ -277,7 +277,8 @@ // The following are jQuery ajax settings required for the file uploads: processData: false, contentType: false, - cache: false + cache: false, + timeout: 0 }, // A list of options that require reinitializing event listeners and/or @@ -983,7 +984,10 @@ fileSet, i, j = 0; - if (limitSize && (!filesLength || files[0].size === undefined)) { + if (!filesLength) { + return false; + } + if (limitSize && files[0].size === undefined) { limitSize = undefined; } if (!(options.singleFileUploads || limit || limitSize) || @@ -1344,18 +1348,19 @@ _initDataAttributes: function () { var that = this, options = this.options, - clone = $(this.element[0].cloneNode(false)), - data = clone.data(); - // Avoid memory leaks: - clone.remove(); + data = this.element.data(); // Initialize options set via HTML5 data-attributes: $.each( - data, - function (key, value) { - var dataAttributeName = 'data-' + - // Convert camelCase to hyphen-ated key: - key.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase(); - if (clone.attr(dataAttributeName)) { + this.element[0].attributes, + function (index, attr) { + var key = attr.name.toLowerCase(), + value; + if (/^data-/.test(key)) { + // 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)) { value = that._getRegExp(value); } diff --git a/common/js/plugins/jquery.fileupload/js/main.js b/common/js/plugins/jquery.fileupload/js/main.js index c8743471d..b3ac7b9ef 100644 --- a/common/js/plugins/jquery.fileupload/js/main.js +++ b/common/js/plugins/jquery.fileupload/js/main.js @@ -60,6 +60,8 @@ last_selected_file: null, }); + var currentEnforce_ssl = window.enforce_ssl; + if(location.protocol == 'https:') { window.enforce_ssl = true; } var settings = { url: request_uri @@ -122,6 +124,8 @@ } } }; + window.enforce_ssl = currentEnforce_ssl; + data.settings = $.extend({} , default_settings, settings, opt || {}); $container.data(data); @@ -287,7 +291,6 @@ obj.editor_sequence = data.editorSequence; $.exec_json('file.getFileList', obj, function(res){ - console.log(res); data.uploadTargetSrl = res.upload_target_srl; editorRelKeys[data.editorSequence].primary.value = res.upload_target_srl; data.uploadTargetSrl = res.uploadTargetSrl; @@ -366,8 +369,6 @@ return u; }; - - xe.unregisterApp(); })(jQuery); diff --git a/config/config.inc.php b/config/config.inc.php index eebf7d6e8..3eb89230b 100644 --- a/config/config.inc.php +++ b/config/config.inc.php @@ -29,7 +29,7 @@ define('__ZBXE__', __XE__); /** * 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_BETA__', (stripos(__XE_VERSION__, 'beta') !== false)); define('__XE_VERSION_RC__', (stripos(__XE_VERSION__, 'rc') !== false)); diff --git a/layouts/xedition/layout.html b/layouts/xedition/layout.html index 61ecbed39..dc38c065b 100644 --- a/layouts/xedition/layout.html +++ b/layouts/xedition/layout.html @@ -307,35 +307,35 @@ -
+
{$layout_info->slide_text1}
-
+
{$layout_info->slide_text2}
-
+
{$layout_info->slide_text3}
-
+
{$layout_info->slide_text4}
-
+
{$layout_info->slide_text5} diff --git a/modules/document/document.item.php b/modules/document/document.item.php index 0604cf69c..ec5dc2d2a 100644 --- a/modules/document/document.item.php +++ b/modules/document/document.item.php @@ -651,7 +651,14 @@ class documentItem extends Object function getExtraValue($idx) { $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) @@ -679,7 +686,15 @@ class documentItem extends Object $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) @@ -690,7 +705,15 @@ class documentItem extends Object { $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) diff --git a/modules/editor/skins/ckeditor/editor.html b/modules/editor/skins/ckeditor/editor.html index 093301a1a..850691e89 100755 --- a/modules/editor/skins/ckeditor/editor.html +++ b/modules/editor/skins/ckeditor/editor.html @@ -32,9 +32,9 @@