diff --git a/public/assets/js/fast.js b/public/assets/js/fast.js
index e3ec332c..9796d633 100644
--- a/public/assets/js/fast.js
+++ b/public/assets/js/fast.js
@@ -103,8 +103,10 @@ define(['jquery', 'bootstrap', 'toastr', 'layer', 'lang'], function ($, undefine
//获取修复后可访问的cdn链接
cdnurl: function (url, domain) {
var rule = new RegExp("^((?:[a-z]+:)?\\/\\/|data:image\\/)", "i");
- var cdnurl = Config.upload.cdnurl;
- url = rule.test(url) || (cdnurl && url.indexOf(cdnurl) === 0) ? url : cdnurl + url;
+ if(typeof domain === 'undefined'){
+ var cdnurl = Config.upload.cdnurl;
+ url = rule.test(url) || (cdnurl && url.indexOf(cdnurl) === 0) ? url : cdnurl + url;
+ }
if (domain && !rule.test(url)) {
domain = typeof domain === 'string' ? domain : location.origin;
url = domain + url;
diff --git a/public/assets/js/require-backend.min.js b/public/assets/js/require-backend.min.js
index 9f4a8111..395384c4 100644
--- a/public/assets/js/require-backend.min.js
+++ b/public/assets/js/require-backend.min.js
@@ -776,8 +776,10 @@ define('fast',['jquery', 'bootstrap', 'toastr', 'layer', 'lang'], function ($, u
//获取修复后可访问的cdn链接
cdnurl: function (url, domain) {
var rule = new RegExp("^((?:[a-z]+:)?\\/\\/|data:image\\/)", "i");
- var cdnurl = Config.upload.cdnurl;
- url = rule.test(url) || (cdnurl && url.indexOf(cdnurl) === 0) ? url : cdnurl + url;
+ if(typeof domain === 'undefined'){
+ var cdnurl = Config.upload.cdnurl;
+ url = rule.test(url) || (cdnurl && url.indexOf(cdnurl) === 0) ? url : cdnurl + url;
+ }
if (domain && !rule.test(url)) {
domain = typeof domain === 'string' ? domain : location.origin;
url = domain + url;
@@ -7686,9 +7688,10 @@ define('upload',['jquery', 'bootstrap', 'dropzone', 'template'], function ($, un
$(document.body).on("keyup change", "#" + input_id, function (e) {
var inputStr = $("#" + input_id).val();
var inputArr = inputStr.split(/\,/);
- $("#" + preview_id).empty();
- var tpl = $("#" + preview_id).data("template") ? $("#" + preview_id).data("template") : "";
- var extend = $("#" + preview_id).next().is("textarea") ? $("#" + preview_id).next("textarea").val() : "{}";
+ var previewObj = $("#" + preview_id);
+ previewObj.empty();
+ var tpl = previewObj.data("template") ? previewObj.data("template") : "";
+ var extend = previewObj.next().is("textarea") ? previewObj.next("textarea").val() : "{}";
var json = {};
try {
json = JSON.parse(extend);
@@ -7700,13 +7703,15 @@ define('upload',['jquery', 'bootstrap', 'dropzone', 'template'], function ($, un
}
var suffix = /[\.]?([a-zA-Z0-9]+)$/.exec(j);
suffix = suffix ? suffix[1] : 'file';
- j = Config.upload.fullmode ? Fast.api.cdnurl(j) : j;
+ var btnData = $(that).data();
+ var fullurl = typeof btnData.cdnurl!=='undefined' ? Fast.api.cdnurl(j, btnData.cdnurl) : Fast.api.cdnurl(j);
+ j = Config.upload.fullmode ? fullurl : j;
var value = (json && typeof json[i] !== 'undefined' ? json[i] : null);
- var data = {url: j, fullurl: Fast.api.cdnurl(j), data: $(that).data(), key: i, index: i, value: value, row: value, suffix: suffix};
+ var data = {url: j, fullurl: fullurl, data: btnData, key: i, index: i, value: value, row: value, suffix: suffix};
var html = tpl ? Template(tpl, data) : Template.render(Upload.config.previewtpl, data);
- $("#" + preview_id).append(html);
+ previewObj.append(html);
});
- refresh($("#" + preview_id).data("name"));
+ refresh(previewObj.data("name"));
});
$("#" + input_id).trigger("change");
}
@@ -10186,6 +10191,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
//绑定select元素事件
if ($(".selectpicker", form).length > 0) {
require(['bootstrap-select', 'bootstrap-select-lang'], function () {
+ $.fn.selectpicker.Constructor.BootstrapVersion = '3';
$('.selectpicker', form).selectpicker();
$(form).on("reset", function () {
setTimeout(function () {
@@ -10298,7 +10304,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
};
var origincallback = function (start, end) {
$(this.element).val(start.format(this.locale.format) + " - " + end.format(this.locale.format));
- $(this.element).trigger('blur');
+ $(this.element).trigger('change');
};
$(".datetimerange", form).each(function () {
var callback = typeof $(this).data('callback') == 'function' ? $(this).data('callback') : origincallback;
@@ -10306,7 +10312,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
callback.call(picker, picker.startDate, picker.endDate);
});
$(this).on('cancel.daterangepicker', function (ev, picker) {
- $(this).val('').trigger('blur');
+ $(this).val('').trigger('change');
});
$(this).daterangepicker($.extend(true, options, $(this).data() || {}, $(this).data("daterangepicker-options") || {}));
});
@@ -10405,15 +10411,15 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
$.each(data, function (i, j) {
if (j) {
if (!template) {
- if (j.key != '') {
- result[j.key] = j.value;
+ if (j.key !== '') {
+ result['__PLACEHOLDKEY__' + j.key] = j.value;
}
} else {
result.push(j);
}
}
});
- textarea.val(JSON.stringify(result));
+ textarea.val(JSON.stringify(result).replace(/__PLACEHOLDKEY__/g, ''));
};
//追加一行数据
var append = function (container, row, initial) {
@@ -10481,11 +10487,12 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
$("[fieldlist-item]", container).remove();
var json = {};
try {
- json = JSON.parse(textarea.val());
+ var val = textarea.val().replace(/"(\d+)"\:/g, "\"__PLACEHOLDERKEY__$1\":");
+ json = JSON.parse(val);
} catch (e) {
}
$.each(json, function (i, j) {
- append(container, {key: i, value: j}, true);
+ append(container, {key: i.toString().replace("__PLACEHOLDERKEY__", ""), value: j}, true);
});
});
//拖拽排序
@@ -10593,7 +10600,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
'==': function(a, b) { return a == b; },
'!=': function(a, b) { return a != b; },
'in': function(a, b) { return b.split(/\,/).indexOf(a) > -1; },
- 'regex': function(a, b) {
+ 'regex': function (a, b) {
var regParts = b.match(/^\/(.*?)\/([gim]*)$/);
var regexp = regParts ? new RegExp(regParts[1], regParts[2]) : new RegExp(b);
return regexp.test(a);
@@ -10824,7 +10831,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
setTimeout(function () {
that.onCommonSearch();
- }, 0);
+ }, 10);
});
};
@@ -10989,13 +10996,23 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
} else {
value = process ? process(obj.val()) : obj.val();
}
- if (removeempty && (value == '' || value == null || ($.isArray(value) && value.length == 0)) && !sym.match(/null/i)) {
+ if (removeempty && (value === '' || value == null || ($.isArray(value) && value.length === 0)) && !sym.match(/null/i)) {
return true;
}
op[name] = sym;
filter[name] = value;
});
+ if (that.options.searchCountTips) {
+ var count = 0;
+ $.each(filter, function (key, value) {
+ if ((value === '' || value == null || ($.isArray(value) && value.length === 0))) {
+ return true;
+ }
+ count++;
+ });
+ that.$toolbar.find(".btn-commonsearch > span").text(count).toggleClass("hidden", count === 0);
+ }
return {op: op, filter: filter};
};
@@ -11025,6 +11042,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
actionForm: "",
searchFormTemplate: "",
searchFormVisible: true,
+ searchCountTips: true,
searchClass: 'searchit',
showSearch: true,
renderDefault: true,
@@ -11049,7 +11067,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
return "Common search";
},
formatCommonSubmitButton: function () {
- return "Submit";
+ return "Search";
},
formatCommonResetButton: function () {
return "Reset";
@@ -11092,8 +11110,11 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
html = [];
if (that.options.showSearch) {
html.push(sprintf('
', this.options.buttonsAlign, this.options.buttonsAlign));
- html.push(sprintf('
');
}
if (that.$toolbar.find(".pull-right").length > 0) {
@@ -11934,7 +11955,7 @@ define('table',['jquery', 'bootstrap'], function ($, undefined) {
return __('Common search');
},
formatCommonSubmitButton: function () {
- return __('Submit');
+ return __('Search');
},
formatCommonResetButton: function () {
return __('Reset');
@@ -13344,7 +13365,7 @@ define("drop", function(){});
}
}
}
- localStorage.setItem("addtabs", $(this).prop('outerHTML'));
+ // localStorage.setItem("addtabs", $(this).prop('outerHTML'));
//激活TAB
tabitem.addClass('active');
conitem.addClass("active");
@@ -14009,9 +14030,11 @@ define("addtabs", function(){});
hidden_id = input_id;
//switch the id and name attributes of input/hidden element
- elem.hidden = $('').attr({
+ elem.hidden = elem.combo_input.clone().attr({
name: hidden_name,
- id: hidden_id
+ id: hidden_id,
+ type: 'hidden',
+ class: 'sp_hidden'
}).val('');
elem.combo_input.attr({
name: typeof input.data('name') !== 'undefined' ? input.data('name') : input_name + namePrefix,
@@ -14436,7 +14459,7 @@ define("addtabs", function(){});
self.elem.results.empty().append(msgLi).show();
self.calcResultsSize(self);
self.setOpenStatus(self, true);
- if(self.elem.control) self.elem.control.hide();
+ if (self.elem.control) self.elem.control.hide();
if (self.option.pagination) self.elem.navi.hide();
};
@@ -15625,7 +15648,7 @@ define("addtabs", function(){});
* Get selected item raw data
* @returns {any[]}
*/
- function GetSelectedData () {
+ function GetSelectedData() {
var results = [];
this.each(function () {
var $this = getPlugin(this), data = $this.data(SelectPage.dataKey);
diff --git a/public/assets/js/require-form.js b/public/assets/js/require-form.js
index 2bf84ae4..0bb2a1e5 100755
--- a/public/assets/js/require-form.js
+++ b/public/assets/js/require-form.js
@@ -102,6 +102,7 @@ define(['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'], functio
//绑定select元素事件
if ($(".selectpicker", form).length > 0) {
require(['bootstrap-select', 'bootstrap-select-lang'], function () {
+ $.fn.selectpicker.Constructor.BootstrapVersion = '3';
$('.selectpicker', form).selectpicker();
$(form).on("reset", function () {
setTimeout(function () {
@@ -214,7 +215,7 @@ define(['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'], functio
};
var origincallback = function (start, end) {
$(this.element).val(start.format(this.locale.format) + " - " + end.format(this.locale.format));
- $(this.element).trigger('blur');
+ $(this.element).trigger('change');
};
$(".datetimerange", form).each(function () {
var callback = typeof $(this).data('callback') == 'function' ? $(this).data('callback') : origincallback;
@@ -222,7 +223,7 @@ define(['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'], functio
callback.call(picker, picker.startDate, picker.endDate);
});
$(this).on('cancel.daterangepicker', function (ev, picker) {
- $(this).val('').trigger('blur');
+ $(this).val('').trigger('change');
});
$(this).daterangepicker($.extend(true, options, $(this).data() || {}, $(this).data("daterangepicker-options") || {}));
});
@@ -321,15 +322,15 @@ define(['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'], functio
$.each(data, function (i, j) {
if (j) {
if (!template) {
- if (j.key != '') {
- result[j.key] = j.value;
+ if (j.key !== '') {
+ result['__PLACEHOLDKEY__' + j.key] = j.value;
}
} else {
result.push(j);
}
}
});
- textarea.val(JSON.stringify(result));
+ textarea.val(JSON.stringify(result).replace(/__PLACEHOLDKEY__/g, ''));
};
//追加一行数据
var append = function (container, row, initial) {
@@ -397,11 +398,12 @@ define(['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'], functio
$("[fieldlist-item]", container).remove();
var json = {};
try {
- json = JSON.parse(textarea.val());
+ var val = textarea.val().replace(/"(\d+)"\:/g, "\"__PLACEHOLDERKEY__$1\":");
+ json = JSON.parse(val);
} catch (e) {
}
$.each(json, function (i, j) {
- append(container, {key: i, value: j}, true);
+ append(container, {key: i.toString().replace("__PLACEHOLDERKEY__", ""), value: j}, true);
});
});
//拖拽排序
@@ -509,7 +511,7 @@ define(['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'], functio
'==': function(a, b) { return a == b; },
'!=': function(a, b) { return a != b; },
'in': function(a, b) { return b.split(/\,/).indexOf(a) > -1; },
- 'regex': function(a, b) {
+ 'regex': function (a, b) {
var regParts = b.match(/^\/(.*?)\/([gim]*)$/);
var regexp = regParts ? new RegExp(regParts[1], regParts[2]) : new RegExp(b);
return regexp.test(a);
diff --git a/public/assets/js/require-frontend.min.js b/public/assets/js/require-frontend.min.js
index 9b0b760a..000fe53f 100644
--- a/public/assets/js/require-frontend.min.js
+++ b/public/assets/js/require-frontend.min.js
@@ -302,8 +302,10 @@ define('fast',['jquery', 'bootstrap', 'toastr', 'layer', 'lang'], function ($, u
//获取修复后可访问的cdn链接
cdnurl: function (url, domain) {
var rule = new RegExp("^((?:[a-z]+:)?\\/\\/|data:image\\/)", "i");
- var cdnurl = Config.upload.cdnurl;
- url = rule.test(url) || (cdnurl && url.indexOf(cdnurl) === 0) ? url : cdnurl + url;
+ if(typeof domain === 'undefined'){
+ var cdnurl = Config.upload.cdnurl;
+ url = rule.test(url) || (cdnurl && url.indexOf(cdnurl) === 0) ? url : cdnurl + url;
+ }
if (domain && !rule.test(url)) {
domain = typeof domain === 'string' ? domain : location.origin;
url = domain + url;
@@ -6969,9 +6971,10 @@ define('upload',['jquery', 'bootstrap', 'dropzone', 'template'], function ($, un
$(document.body).on("keyup change", "#" + input_id, function (e) {
var inputStr = $("#" + input_id).val();
var inputArr = inputStr.split(/\,/);
- $("#" + preview_id).empty();
- var tpl = $("#" + preview_id).data("template") ? $("#" + preview_id).data("template") : "";
- var extend = $("#" + preview_id).next().is("textarea") ? $("#" + preview_id).next("textarea").val() : "{}";
+ var previewObj = $("#" + preview_id);
+ previewObj.empty();
+ var tpl = previewObj.data("template") ? previewObj.data("template") : "";
+ var extend = previewObj.next().is("textarea") ? previewObj.next("textarea").val() : "{}";
var json = {};
try {
json = JSON.parse(extend);
@@ -6983,13 +6986,15 @@ define('upload',['jquery', 'bootstrap', 'dropzone', 'template'], function ($, un
}
var suffix = /[\.]?([a-zA-Z0-9]+)$/.exec(j);
suffix = suffix ? suffix[1] : 'file';
- j = Config.upload.fullmode ? Fast.api.cdnurl(j) : j;
+ var btnData = $(that).data();
+ var fullurl = typeof btnData.cdnurl!=='undefined' ? Fast.api.cdnurl(j, btnData.cdnurl) : Fast.api.cdnurl(j);
+ j = Config.upload.fullmode ? fullurl : j;
var value = (json && typeof json[i] !== 'undefined' ? json[i] : null);
- var data = {url: j, fullurl: Fast.api.cdnurl(j), data: $(that).data(), key: i, index: i, value: value, row: value, suffix: suffix};
+ var data = {url: j, fullurl: fullurl, data: btnData, key: i, index: i, value: value, row: value, suffix: suffix};
var html = tpl ? Template(tpl, data) : Template.render(Upload.config.previewtpl, data);
- $("#" + preview_id).append(html);
+ previewObj.append(html);
});
- refresh($("#" + preview_id).data("name"));
+ refresh(previewObj.data("name"));
});
$("#" + input_id).trigger("change");
}
@@ -9469,6 +9474,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
//绑定select元素事件
if ($(".selectpicker", form).length > 0) {
require(['bootstrap-select', 'bootstrap-select-lang'], function () {
+ $.fn.selectpicker.Constructor.BootstrapVersion = '3';
$('.selectpicker', form).selectpicker();
$(form).on("reset", function () {
setTimeout(function () {
@@ -9581,7 +9587,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
};
var origincallback = function (start, end) {
$(this.element).val(start.format(this.locale.format) + " - " + end.format(this.locale.format));
- $(this.element).trigger('blur');
+ $(this.element).trigger('change');
};
$(".datetimerange", form).each(function () {
var callback = typeof $(this).data('callback') == 'function' ? $(this).data('callback') : origincallback;
@@ -9589,7 +9595,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
callback.call(picker, picker.startDate, picker.endDate);
});
$(this).on('cancel.daterangepicker', function (ev, picker) {
- $(this).val('').trigger('blur');
+ $(this).val('').trigger('change');
});
$(this).daterangepicker($.extend(true, options, $(this).data() || {}, $(this).data("daterangepicker-options") || {}));
});
@@ -9688,15 +9694,15 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
$.each(data, function (i, j) {
if (j) {
if (!template) {
- if (j.key != '') {
- result[j.key] = j.value;
+ if (j.key !== '') {
+ result['__PLACEHOLDKEY__' + j.key] = j.value;
}
} else {
result.push(j);
}
}
});
- textarea.val(JSON.stringify(result));
+ textarea.val(JSON.stringify(result).replace(/__PLACEHOLDKEY__/g, ''));
};
//追加一行数据
var append = function (container, row, initial) {
@@ -9764,11 +9770,12 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
$("[fieldlist-item]", container).remove();
var json = {};
try {
- json = JSON.parse(textarea.val());
+ var val = textarea.val().replace(/"(\d+)"\:/g, "\"__PLACEHOLDERKEY__$1\":");
+ json = JSON.parse(val);
} catch (e) {
}
$.each(json, function (i, j) {
- append(container, {key: i, value: j}, true);
+ append(container, {key: i.toString().replace("__PLACEHOLDERKEY__", ""), value: j}, true);
});
});
//拖拽排序
@@ -9876,7 +9883,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
'==': function(a, b) { return a == b; },
'!=': function(a, b) { return a != b; },
'in': function(a, b) { return b.split(/\,/).indexOf(a) > -1; },
- 'regex': function(a, b) {
+ 'regex': function (a, b) {
var regParts = b.match(/^\/(.*?)\/([gim]*)$/);
var regexp = regParts ? new RegExp(regParts[1], regParts[2]) : new RegExp(b);
return regexp.test(a);
@@ -10107,7 +10114,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
setTimeout(function () {
that.onCommonSearch();
- }, 0);
+ }, 10);
});
};
@@ -10272,13 +10279,23 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
} else {
value = process ? process(obj.val()) : obj.val();
}
- if (removeempty && (value == '' || value == null || ($.isArray(value) && value.length == 0)) && !sym.match(/null/i)) {
+ if (removeempty && (value === '' || value == null || ($.isArray(value) && value.length === 0)) && !sym.match(/null/i)) {
return true;
}
op[name] = sym;
filter[name] = value;
});
+ if (that.options.searchCountTips) {
+ var count = 0;
+ $.each(filter, function (key, value) {
+ if ((value === '' || value == null || ($.isArray(value) && value.length === 0))) {
+ return true;
+ }
+ count++;
+ });
+ that.$toolbar.find(".btn-commonsearch > span").text(count).toggleClass("hidden", count === 0);
+ }
return {op: op, filter: filter};
};
@@ -10308,6 +10325,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
actionForm: "",
searchFormTemplate: "",
searchFormVisible: true,
+ searchCountTips: true,
searchClass: 'searchit',
showSearch: true,
renderDefault: true,
@@ -10332,7 +10350,7 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
return "Common search";
},
formatCommonSubmitButton: function () {
- return "Submit";
+ return "Search";
},
formatCommonResetButton: function () {
return "Reset";
@@ -10375,8 +10393,11 @@ define('form',['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'],
html = [];
if (that.options.showSearch) {
html.push(sprintf('', this.options.buttonsAlign, this.options.buttonsAlign));
- html.push(sprintf('', that.options.iconSize === undefined ? '' : ' btn-' + that.options.iconSize, that.options.formatCommonSearch()));
- html.push(sprintf('', that.options.iconsPrefix, that.options.icons.commonSearchIcon))
+ html.push(sprintf('', that.options.iconSize === undefined ? '' : ' btn-' + that.options.iconSize, that.options.formatCommonSearch()));
+ if (that.options.searchCountTips) {
+ html.push(sprintf('0'));
+ }
+ html.push(sprintf('', that.options.iconsPrefix, that.options.icons.commonSearchIcon));
html.push('
');
}
if (that.$toolbar.find(".pull-right").length > 0) {
@@ -11217,7 +11238,7 @@ define('table',['jquery', 'bootstrap'], function ($, undefined) {
return __('Common search');
},
formatCommonSubmitButton: function () {
- return __('Submit');
+ return __('Search');
},
formatCommonResetButton: function () {
return __('Reset');
@@ -13043,9 +13064,11 @@ define("drop", function(){});
hidden_id = input_id;
//switch the id and name attributes of input/hidden element
- elem.hidden = $('').attr({
+ elem.hidden = elem.combo_input.clone().attr({
name: hidden_name,
- id: hidden_id
+ id: hidden_id,
+ type: 'hidden',
+ class: 'sp_hidden'
}).val('');
elem.combo_input.attr({
name: typeof input.data('name') !== 'undefined' ? input.data('name') : input_name + namePrefix,
@@ -13470,7 +13493,7 @@ define("drop", function(){});
self.elem.results.empty().append(msgLi).show();
self.calcResultsSize(self);
self.setOpenStatus(self, true);
- if(self.elem.control) self.elem.control.hide();
+ if (self.elem.control) self.elem.control.hide();
if (self.option.pagination) self.elem.navi.hide();
};
@@ -14659,7 +14682,7 @@ define("drop", function(){});
* Get selected item raw data
* @returns {any[]}
*/
- function GetSelectedData () {
+ function GetSelectedData() {
var results = [];
this.each(function () {
var $this = getPlugin(this), data = $this.data(SelectPage.dataKey);
diff --git a/public/assets/js/require-upload.js b/public/assets/js/require-upload.js
index 664184d1..bac3714f 100755
--- a/public/assets/js/require-upload.js
+++ b/public/assets/js/require-upload.js
@@ -348,9 +348,10 @@ define(['jquery', 'bootstrap', 'dropzone', 'template'], function ($, undefined,
$(document.body).on("keyup change", "#" + input_id, function (e) {
var inputStr = $("#" + input_id).val();
var inputArr = inputStr.split(/\,/);
- $("#" + preview_id).empty();
- var tpl = $("#" + preview_id).data("template") ? $("#" + preview_id).data("template") : "";
- var extend = $("#" + preview_id).next().is("textarea") ? $("#" + preview_id).next("textarea").val() : "{}";
+ var previewObj = $("#" + preview_id);
+ previewObj.empty();
+ var tpl = previewObj.data("template") ? previewObj.data("template") : "";
+ var extend = previewObj.next().is("textarea") ? previewObj.next("textarea").val() : "{}";
var json = {};
try {
json = JSON.parse(extend);
@@ -362,13 +363,15 @@ define(['jquery', 'bootstrap', 'dropzone', 'template'], function ($, undefined,
}
var suffix = /[\.]?([a-zA-Z0-9]+)$/.exec(j);
suffix = suffix ? suffix[1] : 'file';
- j = Config.upload.fullmode ? Fast.api.cdnurl(j) : j;
+ var btnData = $(that).data();
+ var fullurl = typeof btnData.cdnurl!=='undefined' ? Fast.api.cdnurl(j, btnData.cdnurl) : Fast.api.cdnurl(j);
+ j = Config.upload.fullmode ? fullurl : j;
var value = (json && typeof json[i] !== 'undefined' ? json[i] : null);
- var data = {url: j, fullurl: Fast.api.cdnurl(j), data: $(that).data(), key: i, index: i, value: value, row: value, suffix: suffix};
+ var data = {url: j, fullurl: fullurl, data: btnData, key: i, index: i, value: value, row: value, suffix: suffix};
var html = tpl ? Template(tpl, data) : Template.render(Upload.config.previewtpl, data);
- $("#" + preview_id).append(html);
+ previewObj.append(html);
});
- refresh($("#" + preview_id).data("name"));
+ refresh(previewObj.data("name"));
});
$("#" + input_id).trigger("change");
}