优化路径加载

优化JS和CSS加载目录
pull/438/head
Karson 2023-03-15 16:18:28 +08:00
parent 6f1805ceb0
commit ec84778d3d
16 changed files with 13308 additions and 11996 deletions

View File

@ -3,15 +3,15 @@
@import url("../css/skins/skin-black-blue.css");
@import url("../css/iconfont.css");
@import url("../libs/font-awesome/css/font-awesome.min.css");
@import url("../libs/toastr/toastr.min.css");
@import url("../libs/toastr/build/toastr.min.css");
@import url("../libs/fastadmin-layer/dist/theme/default/layer.css");
@import url("../libs/bootstrap-table/dist/bootstrap-table.min.css");
@import url("../libs/fastadmin-bootstraptable/dist/bootstrap-table.min.css");
@import url("../libs/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.min.css");
@import url("../libs/bootstrap-daterangepicker/daterangepicker.css");
@import url("../libs/nice-validator/dist/jquery.validator.css");
@import url("../libs/bootstrap-select/dist/css/bootstrap-select.min.css");
@import url("../libs/fastadmin-selectpage/selectpage.css");
@import url("../libs/bootstrap-slider/slider.css");
@import url("../libs/bootstrap-slider/dist/css/bootstrap-slider.min.css");
.m-0 {
margin-top: 0px !important;
margin-right: 0px !important;
@ -417,15 +417,18 @@ table.table-template {
margin-bottom: -5px;
padding: 10px 20px;
}
.bootstrap-select .bs-placeholder {
min-height: 33px;
}
select.bs-select-hidden,
select.selectpicker {
display: inherit !important;
max-height: 31px;
max-height: 33px;
overflow: hidden;
}
select.bs-select-hidden[multiple],
select.selectpicker[multiple] {
height: 31px;
height: 33px;
padding: 0;
background: #f4f4f4;
}
@ -1038,12 +1041,12 @@ form.form-horizontal .control-label {
.bootstrap-table .table:not(.table-condensed) > thead > tr > td,
.bootstrap-table .table:not(.table-condensed) > tbody > tr > td,
.bootstrap-table .table:not(.table-condensed) > tfoot > tr > td {
padding: 8px 15px;
padding: 10px 15px;
height: 47px;
}
.fixed-table-container tbody td .th-inner,
.fixed-table-container thead th .th-inner {
padding: 8px 10px;
padding: 10px 10px;
}
.toolbar {
margin-top: 10px;
@ -1437,7 +1440,7 @@ table.table-nowrap thead > tr > th {
}
/*修正开关关闭下的颜色值*/
.btn-switcher.disabled {
opacity: .6;
opacity: 0.6;
cursor: not-allowed;
}
.btn-switcher .text-gray {
@ -1516,7 +1519,7 @@ table.table-nowrap thead > tr > th {
color: #555;
vertical-align: middle;
width: 100%;
line-height: 22px;
line-height: 23px;
cursor: text;
}
.bootstrap-tagsinput input {
@ -1546,6 +1549,7 @@ table.table-nowrap thead > tr > th {
.bootstrap-tagsinput .tag {
margin-right: 2px;
color: white;
min-height: 23px;
}
.bootstrap-tagsinput .tag [data-role="remove"] {
margin-left: 5px;

File diff suppressed because one or more lines are too long

View File

@ -1424,7 +1424,7 @@ select.form-control {
.input-lg + .form-control-feedback.fa,
.input-group-lg + .form-control-feedback.fa,
.form-group-lg .form-control + .form-control-feedback.fa {
line-height: 45px;
line-height: 44px;
}
.input-sm + .form-control-feedback.fa,
.input-group-sm + .form-control-feedback.fa,

View File

@ -2,15 +2,15 @@
@import url("../css/fastadmin.css");
@import url("../css/iconfont.css");
@import url("../libs/font-awesome/css/font-awesome.min.css");
@import url("../libs/toastr/toastr.min.css");
@import url("../libs/toastr/build/toastr.min.css");
@import url("../libs/fastadmin-layer/dist/theme/default/layer.css");
@import url("../libs/bootstrap-table/dist/bootstrap-table.min.css");
@import url("../libs/fastadmin-bootstraptable/dist/bootstrap-table.min.css");
@import url("../libs/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.min.css");
@import url("../libs/bootstrap-daterangepicker/daterangepicker.css");
@import url("../libs/nice-validator/dist/jquery.validator.css");
@import url("../libs/bootstrap-select/dist/css/bootstrap-select.min.css");
@import url("../libs/fastadmin-selectpage/selectpage.css");
@import url("../libs/bootstrap-slider/slider.css");
@import url("../libs/bootstrap-slider/dist/css/bootstrap-slider.min.css");
.m-0 {
margin-top: 0px !important;
margin-right: 0px !important;
@ -813,21 +813,25 @@ footer.footer .copyright a:hover {
.login-section .login-main {
padding: 40px 45px 20px 45px;
}
.login-section .n-bootstrap .form-group {
.login-section .n-bootstrap .controls,
.form-section .n-bootstrap .controls {
position: relative;
}
.login-section .n-bootstrap .input-group {
.login-section .n-bootstrap .input-group,
.form-section .n-bootstrap .input-group {
position: inherit;
}
.login-section .n-bootstrap .n-right {
.login-section .n-bootstrap .n-right,
.form-section .n-bootstrap .n-right {
margin-top: 0;
top: 0;
top: -20px;
position: absolute;
left: 0;
text-align: right;
width: 100%;
}
.login-section .n-bootstrap .n-right .msg-wrap {
.login-section .n-bootstrap .n-right .msg-wrap,
.form-section .n-bootstrap .n-right .msg-wrap {
position: relative;
}
main.content {
@ -950,21 +954,21 @@ main.content {
margin: 0;
}
.pager li {
margin: 0 .4em;
margin: 0 0.4em;
display: inline-block;
}
.pager li:first-child > a,
.pager li:last-child > a,
.pager li:first-child > span,
.pager li:last-child > span {
padding: .5em 1.2em;
padding: 0.5em 1.2em;
}
.pager li > a,
.pager li > span {
background: none;
border: 1px solid #e6e6e6;
border-radius: 0.25em;
padding: .5em .93em;
padding: 0.5em 0.93em;
font-size: 14px;
}
.jumpto input {

File diff suppressed because one or more lines are too long

View File

@ -57,7 +57,6 @@ p {
margin-bottom: 20px;
}
#mainbody {
position: relative;
width: 100%;
@ -114,15 +113,11 @@ p {
@media (max-width: 767px) {
#mainbody > .container > .text-center {
padding: 130px 0 0 0;
height: calc(100vh - 261px);
}
#mainbody > .container > .text-center > h1 {
font-size: 50px;
margin-bottom: 20px;
}
@ -139,3 +134,4 @@ p {
font-size: 14px;
margin: 0;
}

File diff suppressed because one or more lines are too long

View File

@ -6,7 +6,7 @@ require.config({
main: 'moment'
}],
//在打包压缩时将会把include中的模块合并到主文件中
include: ['css', 'layer', 'toastr', 'fast', 'backend', 'backend-init', 'table', 'form', 'dragsort', 'drag', 'drop', 'addtabs', 'selectpage'],
include: ['css', 'layer', 'toastr', 'fast', 'backend', 'backend-init', 'table', 'form', 'dragsort', 'drag', 'drop', 'addtabs', 'selectpage', 'bootstrap-daterangepicker'],
paths: {
'lang': "empty:",
'form': 'require-form',
@ -20,24 +20,23 @@ require.config({
'adminlte': 'adminlte',
'bootstrap-table-commonsearch': 'bootstrap-table-commonsearch',
'bootstrap-table-template': 'bootstrap-table-template',
//
// 以下的包从bower的libs目录加载
// 以下的包从libs目录加载
'jquery': '../libs/jquery/dist/jquery.min',
'bootstrap': '../libs/bootstrap/dist/js/bootstrap.min',
'bootstrap-datetimepicker': '../libs/eonasdan-bootstrap-datetimepicker/build/js/bootstrap-datetimepicker.min',
'bootstrap-daterangepicker': '../libs/bootstrap-daterangepicker/daterangepicker',
'bootstrap-select': '../libs/bootstrap-select/dist/js/bootstrap-select.min',
'bootstrap-select-lang': '../libs/bootstrap-select/dist/js/i18n/defaults-zh_CN',
'bootstrap-table': '../libs/bootstrap-table/dist/bootstrap-table.min',
'bootstrap-table-export': '../libs/bootstrap-table/dist/extensions/export/bootstrap-table-export.min',
'bootstrap-table-fixed-columns': '../libs/bootstrap-table/dist/extensions/fixed-columns/bootstrap-table-fixed-columns',
'bootstrap-table-mobile': '../libs/bootstrap-table/dist/extensions/mobile/bootstrap-table-mobile',
'bootstrap-table-lang': '../libs/bootstrap-table/dist/locale/bootstrap-table-zh-CN',
'bootstrap-table-jumpto': '../libs/bootstrap-table/dist/extensions/page-jumpto/bootstrap-table-jumpto',
'bootstrap-slider': '../libs/bootstrap-slider/bootstrap-slider',
'tableexport': '../libs/tableExport.jquery.plugin/tableExport.min',
'bootstrap-table': '../libs/fastadmin-bootstraptable/dist/bootstrap-table.min',
'bootstrap-table-export': '../libs/fastadmin-bootstraptable/dist/extensions/export/bootstrap-table-export',
'bootstrap-table-fixed-columns': '../libs/fastadmin-bootstraptable/dist/extensions/fixed-columns/bootstrap-table-fixed-columns',
'bootstrap-table-mobile': '../libs/fastadmin-bootstraptable/dist/extensions/mobile/bootstrap-table-mobile.min',
'bootstrap-table-lang': '../libs/fastadmin-bootstraptable/dist/locale/bootstrap-table-zh-CN',
'bootstrap-table-jumpto': '../libs/fastadmin-bootstraptable/dist/extensions/page-jumpto/bootstrap-table-jumpto',
'bootstrap-slider': '../libs/bootstrap-slider/dist/bootstrap-slider.min',
'tableexport': '../libs/tableexport.jquery.plugin/tableExport.min',
'dragsort': '../libs/fastadmin-dragsort/jquery.dragsort',
'sortable': '../libs/Sortable/Sortable.min',
'sortable': '../libs/sortablejs/Sortable.min',
'addtabs': '../libs/fastadmin-addtabs/jquery.addtabs',
'slimscroll': '../libs/jquery-slimscroll/jquery.slimscroll',
'validator': '../libs/nice-validator/dist/jquery.validator',
@ -49,6 +48,7 @@ require.config({
'cxselect': '../libs/fastadmin-cxselect/js/jquery.cxselect',
'template': '../libs/art-template/dist/template-native',
'selectpage': '../libs/fastadmin-selectpage/selectpage',
'coloris': '../libs/coloris/dist/umd/coloris.min',
'citypicker': '../libs/fastadmin-citypicker/dist/js/city-picker.min',
'citypicker-data': '../libs/fastadmin-citypicker/dist/js/city-picker.data',
},
@ -65,7 +65,7 @@ require.config({
exports: '$.fn.bootstrapTable.defaults'
},
'bootstrap-table-export': {
deps: ['bootstrap-table', 'tableexport'],
deps: ['bootstrap-table'],
exports: '$.fn.bootstrapTable.defaults'
},
'bootstrap-table-fixed-columns': {
@ -104,15 +104,25 @@ require.config({
deps: ['bootstrap', 'slimscroll'],
exports: '$.AdminLTE'
},
'bootstrap-daterangepicker': [
'moment/locale/zh-cn'
],
'bootstrap-datetimepicker': [
'moment/locale/zh-cn',
'table': [
'moment', 'moment/locale/zh-cn',
'bootstrap-table',
'bootstrap-table-lang', 'bootstrap-table-export', 'bootstrap-table-commonsearch', 'bootstrap-table-template',
'bootstrap-table-jumpto', 'bootstrap-table-fixed-columns'
],
'bootstrap-daterangepicker': ['moment', 'moment/locale/zh-cn'],
'bootstrap-datetimepicker': ['moment', 'moment/locale/zh-cn'],
'bootstrap-select-lang': ['bootstrap-select'],
'selectpage': {
deps: ['jquery'],
exports: '$.fn.extend'
},
'layer': {
deps: ['jquery']
},
'jstree': ['css!../libs/jstree/dist/themes/default/style.css'],
'validator-lang': ['validator'],
'coloris': ['css!../libs/coloris/dist/coloris.min.css'],
'citypicker': ['citypicker-data', 'css!../libs/fastadmin-citypicker/dist/css/city-picker.css']
},
baseUrl: requirejs.s.contexts._.config.config.site.cdnurl + '/assets/js/', //资源基础路径
@ -135,6 +145,15 @@ require(['jquery', 'bootstrap'], function ($, undefined) {
paths['lang'] = Config.moduleurl + '/ajax/lang?callback=define&controllername=' + Config.controllername + '&lang=' + Config.language + '&v=' + Config.site.version;
// 避免目录冲突
paths['backend/'] = 'backend/';
// 如果是英文,则移除默认的定义
if (Config.language === 'en') {
$.each(requirejs.s.contexts._.config.paths, function (key, value) {
if (key.match(/\-lang$/)) {
define(key);
}
});
define('moment/locale/zh-cn');
}
require.config({paths: paths});
// 初始化

File diff suppressed because one or more lines are too long

View File

@ -61,8 +61,10 @@ define(['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'], functio
var msg = ret.hasOwnProperty("msg") && ret.msg !== "" ? ret.msg : __('Operation completed');
parent.Toastr.success(msg);
parent.$(".btn-refresh").trigger("click");
var index = parent.Layer.getFrameIndex(window.name);
parent.Layer.close(index);
if (window.name) {
var index = parent.Layer.getFrameIndex(window.name);
parent.Layer.close(index);
}
return false;
}, function (data, ret) {
that.holdSubmit(false);
@ -89,8 +91,10 @@ define(['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'], functio
$(".layer-footer [type=submit],.fixed-footer [type=submit],.normal-footer [type=submit]", form).removeClass("disabled");
//自定义关闭按钮事件
form.on("click", ".layer-close", function () {
var index = parent.Layer.getFrameIndex(window.name);
parent.Layer.close(index);
if (window.name) {
var index = parent.Layer.getFrameIndex(window.name);
parent.Layer.close(index);
}
return false;
});
},
@ -282,7 +286,7 @@ define(['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'], functio
}
var result = urlArr.join(",");
inputObj.val(result).trigger("change").trigger("validate");
} else {
} else if (input_id) {
var url = Config.upload.fullmode ? Fast.api.cdnurl(data.url) : data.url;
$("#" + input_id).val(url).trigger("change").trigger("validate");
}

View File

@ -20,28 +20,28 @@ require.config({
'adminlte': 'adminlte',
'bootstrap-table-commonsearch': 'bootstrap-table-commonsearch',
'bootstrap-table-template': 'bootstrap-table-template',
//
// 以下的包从bower的libs目录加载
// 以下的包从libs目录加载
'jquery': '../libs/jquery/dist/jquery.min',
'bootstrap': '../libs/bootstrap/dist/js/bootstrap.min',
'bootstrap-datetimepicker': '../libs/eonasdan-bootstrap-datetimepicker/build/js/bootstrap-datetimepicker.min',
'bootstrap-daterangepicker': '../libs/bootstrap-daterangepicker/daterangepicker',
'bootstrap-select': '../libs/bootstrap-select/dist/js/bootstrap-select.min',
'bootstrap-select-lang': '../libs/bootstrap-select/dist/js/i18n/defaults-zh_CN',
'bootstrap-table': '../libs/bootstrap-table/dist/bootstrap-table.min',
'bootstrap-table-export': '../libs/bootstrap-table/dist/extensions/export/bootstrap-table-export.min',
'bootstrap-table-fixed-columns': '../libs/bootstrap-table/dist/extensions/fixed-columns/bootstrap-table-fixed-columns',
'bootstrap-table-mobile': '../libs/bootstrap-table/dist/extensions/mobile/bootstrap-table-mobile',
'bootstrap-table-lang': '../libs/bootstrap-table/dist/locale/bootstrap-table-zh-CN',
'bootstrap-table-jumpto': '../libs/bootstrap-table/dist/extensions/page-jumpto/bootstrap-table-jumpto',
'tableexport': '../libs/tableExport.jquery.plugin/tableExport.min',
'bootstrap-table': '../libs/fastadmin-bootstraptable/dist/bootstrap-table.min',
'bootstrap-table-export': '../libs/fastadmin-bootstraptable/dist/extensions/export/bootstrap-table-export.min',
'bootstrap-table-fixed-columns': '../libs/fastadmin-bootstraptable/dist/extensions/fixed-columns/bootstrap-table-fixed-columns',
'bootstrap-table-mobile': '../libs/fastadmin-bootstraptable/dist/extensions/mobile/bootstrap-table-mobile.min',
'bootstrap-table-lang': '../libs/fastadmin-bootstraptable/dist/locale/bootstrap-table-zh-CN',
'bootstrap-table-jumpto': '../libs/fastadmin-bootstraptable/dist/extensions/page-jumpto/bootstrap-table-jumpto',
'bootstrap-slider': '../libs/bootstrap-slider/dist/bootstrap-slider.min',
'tableexport': '../libs/tableexport.jquery.plugin/tableExport.min',
'dragsort': '../libs/fastadmin-dragsort/jquery.dragsort',
'sortable': '../libs/Sortable/Sortable.min',
'sortable': '../libs/sortablejs/Sortable.min',
'addtabs': '../libs/fastadmin-addtabs/jquery.addtabs',
'slimscroll': '../libs/jquery-slimscroll/jquery.slimscroll',
'validator': '../libs/nice-validator/dist/jquery.validator',
'validator-lang': '../libs/nice-validator/dist/local/zh-CN',
'toastr': '../libs/toastr/toastr',
'toastr': '../libs/toastr/build/toastr.min',
'jstree': '../libs/jstree/dist/jstree.min',
'layer': '../libs/fastadmin-layer/dist/layer',
'cookie': '../libs/jquery.cookie/jquery.cookie',
@ -64,7 +64,7 @@ require.config({
exports: '$.fn.bootstrapTable.defaults'
},
'bootstrap-table-export': {
deps: ['bootstrap-table', 'tableexport'],
deps: ['bootstrap-table'],
exports: '$.fn.bootstrapTable.defaults'
},
'bootstrap-table-fixed-columns': {
@ -103,13 +103,22 @@ require.config({
deps: ['bootstrap', 'slimscroll'],
exports: '$.AdminLTE'
},
'bootstrap-daterangepicker': [
'moment/locale/zh-cn'
],
'bootstrap-datetimepicker': [
'moment/locale/zh-cn',
'table': [
'moment', 'moment/locale/zh-cn',
'bootstrap-table',
'bootstrap-table-lang', 'bootstrap-table-export', 'bootstrap-table-commonsearch', 'bootstrap-table-template',
'bootstrap-table-jumpto', 'bootstrap-table-fixed-columns'
],
'bootstrap-daterangepicker': ['moment', 'moment/locale/zh-cn'],
'bootstrap-datetimepicker': ['moment', 'moment/locale/zh-cn'],
'bootstrap-select-lang': ['bootstrap-select'],
'selectpage': {
deps: ['jquery'],
exports: '$.fn.extend'
},
'layer': {
deps: ['jquery']
},
'jstree': ['css!../libs/jstree/dist/themes/default/style.css'],
'validator-lang': ['validator'],
'citypicker': ['citypicker-data', 'css!../libs/fastadmin-citypicker/dist/css/city-picker.css']
@ -134,6 +143,15 @@ require(['jquery', 'bootstrap'], function ($, undefined) {
paths['lang'] = Config.moduleurl + '/ajax/lang?callback=define&controllername=' + Config.controllername + '&lang=' + Config.language + '&v=' + Config.site.version;
// 避免目录冲突
paths['frontend/'] = 'frontend/';
// 如果是英文,则移除默认的定义
if (Config.language === 'en') {
$.each(requirejs.s.contexts._.config.paths, function (key, value) {
if (key.match(/\-lang$/)) {
define(key);
}
});
define('moment/locale/zh-cn');
}
require.config({paths: paths});
// 初始化
@ -143,7 +161,13 @@ require(['jquery', 'bootstrap'], function ($, undefined) {
//加载相应模块
if (Config.jsname) {
require([Config.jsname], function (Controller) {
Controller[Config.actionname] != undefined && Controller[Config.actionname]();
if (Controller.hasOwnProperty(Config.actionname)) {
Controller[Config.actionname]();
} else {
if (Controller.hasOwnProperty("_empty")) {
Controller._empty();
}
}
}, function (e) {
console.error(e);
// 这里可捕获模块加载的错误

File diff suppressed because one or more lines are too long

54
public/assets/js/require-table.js 100644 → 100755
View File

@ -1,4 +1,4 @@
define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table', 'bootstrap-table-lang', 'bootstrap-table-export', 'bootstrap-table-commonsearch', 'bootstrap-table-template', 'bootstrap-table-jumpto', 'bootstrap-table-fixed-columns'], function ($, undefined, Moment) {
define(['jquery', 'bootstrap'], function ($, undefined) {
var Table = {
list: {},
// Bootstrap-table 基础配置
@ -34,7 +34,9 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table
singleSelect: false, //是否启用单选
showRefresh: false,
showJumpto: true,
locale: Config.language == 'zh-cn' ? 'zh-CN' : 'en-US',
locale: Config.language === 'en' ? 'en-US' : Config.language.replace(/\-(\w+)$/, function (value) {
return value.toUpperCase();
}),
showToggle: true,
showColumns: true,
pk: 'id',
@ -224,12 +226,14 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table
checkboxtd.drag("start", function (ev, dd) {
return $('<div class="selection" />').css('opacity', .65).appendTo(document.body);
}).drag(function (ev, dd) {
$(dd.proxy).css({
top: Math.min(ev.pageY, dd.startY),
left: Math.min(ev.pageX, dd.startX),
height: Math.abs(ev.pageY - dd.startY),
width: Math.abs(ev.pageX - dd.startX)
});
setTimeout(function () {
$(dd.proxy).css({
top: Math.min(ev.pageY, dd.startY),
left: Math.min(ev.pageX, dd.startX),
height: Math.abs(ev.pageY - dd.startY),
width: Math.abs(ev.pageX - dd.startX)
});
}, 0);
}).drag("end", function (ev, dd) {
$(dd.proxy).remove();
});
@ -383,7 +387,7 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table
$(document).on('click', Table.config.restoreonebtn + ',' + Table.config.destroyonebtn, function () {
var that = this;
var url = $(that).data("url") ? $(that).data("url") : $(that).attr("href");
var row = Fast.api.getrowbyindex(table, $(that).data("row-index"));
var row = Table.api.getrowbyindex(table, $(that).data("row-index"));
Fast.api.ajax({
url: url,
data: {ids: row[options.pk]}
@ -635,40 +639,30 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table
return '<i class="' + value + '"></i> ' + value;
},
image: function (value, row, index) {
value = value == null || value.length === 0 ? '' : value.toString();
value = value ? value : '/assets/img/blank.gif';
var classname = typeof this.classname !== 'undefined' ? this.classname : 'img-sm img-center';
var url = Fast.api.cdnurl(value, true);
url = url.match(/^(\/|data:image\\)/) ? url : url + Config.upload.thumbstyle;
return '<a href="javascript:"><img class="' + classname + '" src="' + url + '" /></a>';
return Table.api.formatter.images.call(this, value, row, index);
},
images: function (value, row, index) {
value = value == null || value.length === 0 ? '' : value.toString();
var classname = typeof this.classname !== 'undefined' ? this.classname : 'img-sm img-center';
var arr = value != '' ? value.split(',') : [];
var arr = value !== '' ? value.split(',') : [];
var html = [];
var url;
$.each(arr, function (i, value) {
value = value ? value : '/assets/img/blank.gif';
url = Fast.api.cdnurl(value, true);
url = url.match(/^(\/|data:image\\)/) ? url : url + Config.upload.thumbstyle;
html.push('<a href="javascript:"><img class="' + classname + '" src="' + url + '" /></a>');
html.push('<a href="javascript:"><img class="' + classname + '" src="' + url + '" width="30" height="30" /></a>');
});
return html.join(' ');
},
file: function (value, row, index) {
value = value == null || value.length === 0 ? '' : value.toString();
value = Fast.api.cdnurl(value, true);
var classname = typeof this.classname !== 'undefined' ? this.classname : 'img-sm img-center';
var suffix = /[\.]?([a-zA-Z0-9]+)$/.exec(value);
suffix = suffix ? suffix[1] : 'file';
var url = Fast.api.fixurl("ajax/icon?suffix=" + suffix);
return '<a href="' + value + '" target="_blank"><img src="' + url + '" class="' + classname + '"></a>';
return Table.api.formatter.files.call(this, value, row, index);
},
files: function (value, row, index) {
value = value == null || value.length === 0 ? '' : value.toString();
var classname = typeof this.classname !== 'undefined' ? this.classname : 'img-sm img-center';
var arr = value != '' ? value.split(',') : [];
var arr = value !== '' ? value.split(',') : [];
var html = [];
var suffix, url;
$.each(arr, function (i, value) {
@ -676,7 +670,7 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table
suffix = /[\.]?([a-zA-Z0-9]+)$/.exec(value);
suffix = suffix ? suffix[1] : 'file';
url = Fast.api.fixurl("ajax/icon?suffix=" + suffix);
html.push('<a href="' + value + '" target="_blank"><img src="' + url + '" class="' + classname + '"></a>');
html.push('<a href="' + value + '" target="_blank"><img src="' + url + '" class="' + classname + '" width="30" height="30"></a>');
});
return html.join(' ');
},
@ -773,7 +767,9 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table
}
if (typeof that.searchList === 'object' && typeof that.custom === 'undefined') {
var i = 0;
var searchValues = Object.values(colorArr);
var searchValues = Object.keys(colorArr).map(function (e) {
return colorArr[e];
});
$.each(that.searchList, function (key, val) {
if (typeof colorArr[key] == 'undefined') {
colorArr[key] = searchValues[i];
@ -784,11 +780,11 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table
//渲染Flag
var html = [];
var arr = value != '' ? value.split(',') : [];
var arr = value !== '' ? value.split(',') : [];
var color, display, label;
$.each(arr, function (i, value) {
value = value == null || value.length === 0 ? '' : value.toString();
if (value == '')
if (value === '')
return true;
color = value && typeof colorArr[value] !== 'undefined' ? colorArr[value] : 'primary';
display = typeof that.searchList !== 'undefined' && typeof that.searchList[value] !== 'undefined' ? that.searchList[value] : __(value.charAt(0).toUpperCase() + value.slice(1));

View File

@ -27,7 +27,7 @@ define(['jquery', 'bootstrap', 'dropzone', 'template'], function ($, undefined,
if ($(button).data("multiple") && inputObj.val() !== "") {
urlArr.push(inputObj.val());
}
var url = Config.upload.fullmode ? Fast.api.cdnurl(data.url) : data.url;
var url = Config.upload.fullmode ? (data.fullurl ? data.fullurl : Fast.api.cdnurl(data.url)) : data.url;
urlArr.push(url);
inputObj.val(urlArr.join(",")).trigger("change").trigger("validate");
}
@ -173,12 +173,8 @@ define(['jquery', 'bootstrap', 'dropzone', 'template'], function ($, undefined,
options = $.extend(true, {}, options, $(this).data("upload-options") || {});
delete options.success;
delete options.url;
// delete options.params;
multipart = $.isArray(multipart) ? {} : multipart;
var params = $(this).data("params") || {};
var category = typeof params.category !== 'undefined' ? params.category : ($(this).data("category") || '');
if (category) {
// multipart.category = category;
}
Upload.list[id] = new Dropzone(this, $.extend({
url: url,
@ -232,6 +228,7 @@ define(['jquery', 'bootstrap', 'dropzone', 'template'], function ($, undefined,
},
addedfile: function (file) {
var params = $(this.element).data("params") || {};
params = typeof params === 'function' ? params.call(this, file) : params;
var category = typeof params.category !== 'undefined' ? params.category : ($(this.element).data("category") || '');
file.category = typeof category === 'function' ? category.call(this, file) : category;
},

View File

@ -8,15 +8,15 @@
@import url("../css/skins/skin-black-blue.css");
@import url("../css/iconfont.css");
@import url("../libs/font-awesome/css/font-awesome.min.css");
@import url("../libs/toastr/toastr.min.css");
@import url("../libs/toastr/build/toastr.min.css");
@import url("../libs/fastadmin-layer/dist/theme/default/layer.css");
@import url("../libs/bootstrap-table/dist/bootstrap-table.min.css");
@import url("../libs/fastadmin-bootstraptable/dist/bootstrap-table.min.css");
@import url("../libs/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.min.css");
@import url("../libs/bootstrap-daterangepicker/daterangepicker.css");
@import url("../libs/nice-validator/dist/jquery.validator.css");
@import url("../libs/bootstrap-select/dist/css/bootstrap-select.min.css");
@import url("../libs/fastadmin-selectpage/selectpage.css");
@import url("../libs/bootstrap-slider/slider.css");
@import url("../libs/bootstrap-slider/dist/css/bootstrap-slider.min.css");
@import "tinycss.less";
@main-bg: #f1f4f6;
@ -204,24 +204,30 @@ table.table-template {
right: 12px;
}
.bootstrap-select .status {
background: #f0f0f0;
clear: both;
color: #999;
font-size: 13px;
font-weight: 500;
line-height: 1;
margin-bottom: -5px;
padding: 10px 20px;
.bootstrap-select {
.status {
background: #f0f0f0;
clear: both;
color: #999;
font-size: 13px;
font-weight: 500;
line-height: 1;
margin-bottom: -5px;
padding: 10px 20px;
}
.bs-placeholder {
min-height: 33px;
}
}
select.bs-select-hidden, select.selectpicker {
display: inherit !important;
max-height: 31px;
max-height: 33px;
overflow: hidden;
&[multiple] {
height: 31px;
height: 33px;
//visibility: hidden;
padding: 0;
background: #f4f4f4;
@ -963,12 +969,13 @@ form.form-horizontal .control-label {
.bootstrap-table .table:not(.table-condensed) > thead > tr > td,
.bootstrap-table .table:not(.table-condensed) > tbody > tr > td,
.bootstrap-table .table:not(.table-condensed) > tfoot > tr > td {
padding: 8px 15px;
padding: 10px 15px;
height: 47px;
}
.fixed-table-container tbody td .th-inner, .fixed-table-container thead th .th-inner {
padding: 8px 10px;
padding: 10px 10px;
}
.toolbar {
@ -1532,13 +1539,14 @@ table.table-nowrap {
display: inline-block;
padding: 4px 6px;
//margin-bottom: 10px;
color: #555;
vertical-align: middle;
//border-radius: 4px;
//max-width: 100%;
width: 100%;
line-height: 22px;
line-height: 23px;
cursor: text;
@ -1573,6 +1581,7 @@ table.table-nowrap {
.tag {
margin-right: 2px;
color: white;
min-height: 23px;
[data-role="remove"] {
margin-left: 5px;

View File

@ -5,15 +5,15 @@
@import url("../css/fastadmin.css");
@import url("../css/iconfont.css");
@import url("../libs/font-awesome/css/font-awesome.min.css");
@import url("../libs/toastr/toastr.min.css");
@import url("../libs/toastr/build/toastr.min.css");
@import url("../libs/fastadmin-layer/dist/theme/default/layer.css");
@import url("../libs/bootstrap-table/dist/bootstrap-table.min.css");
@import url("../libs/fastadmin-bootstraptable/dist/bootstrap-table.min.css");
@import url("../libs/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.min.css");
@import url("../libs/bootstrap-daterangepicker/daterangepicker.css");
@import url("../libs/nice-validator/dist/jquery.validator.css");
@import url("../libs/bootstrap-select/dist/css/bootstrap-select.min.css");
@import url("../libs/fastadmin-selectpage/selectpage.css");
@import url("../libs/bootstrap-slider/slider.css");
@import url("../libs/bootstrap-slider/dist/css/bootstrap-slider.min.css");
@import "tinycss.less";
@primary-color: #007bff;
@ -619,9 +619,11 @@ footer.footer {
.login-main {
padding: 40px 45px 20px 45px;
}
}
.login-section, .form-section {
.n-bootstrap {
.form-group {
.controls {
position: relative;
}
@ -631,7 +633,7 @@ footer.footer {
.n-right {
margin-top: 0;
top: 0;
top: -20px;
position: absolute;
left: 0;
text-align: right;