mirror of
https://github.com/ventoy/Ventoy.git
synced 2025-05-20 02:05:15 -04:00
VentoyPlugson ---- A GUI ventoy.json configurator
This commit is contained in:
parent
9eeb94e8b5
commit
4bf43ab9d4
227 changed files with 67510 additions and 33 deletions
4
Plugson/www/static/js/jQuery-2.1.4.min.js
vendored
Normal file
4
Plugson/www/static/js/jQuery-2.1.4.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4
Plugson/www/static/js/jquery.validate.min.js
vendored
Normal file
4
Plugson/www/static/js/jquery.validate.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
85
Plugson/www/static/js/jquery.validate.vtoymethods.js
Normal file
85
Plugson/www/static/js/jquery.validate.vtoymethods.js
Normal file
|
@ -0,0 +1,85 @@
|
|||
(function(factory) {
|
||||
if (typeof define === "function" && define.amd) {
|
||||
define(["jquery", "../jquery.validate"], factory);
|
||||
} else {
|
||||
factory(jQuery);
|
||||
}
|
||||
} (function($) {
|
||||
|
||||
// 设置validator插件默认校验格式
|
||||
$.validator.setDefaults({
|
||||
highlight: function(element) {
|
||||
$(element).closest('.form-group').addClass('has-error');
|
||||
},
|
||||
success: function(label) {
|
||||
label.closest('.form-group').removeClass('has-error');
|
||||
label.remove();
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
//密码
|
||||
$.validator.addMethod('password', function(value, element, params) {
|
||||
if (this.optional(element)) {
|
||||
return true;
|
||||
}
|
||||
var re = /^[^\u4e00-\u9fa5]{1,64}$/;
|
||||
return re.test(value);
|
||||
}, '密码不合法');
|
||||
|
||||
$.validator.addMethod('utfmaxlen', function(value, element, params) {
|
||||
if (this.optional(element)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (ventoy_get_ulen(value) > 250) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}, 'Input too long');
|
||||
|
||||
$.validator.addMethod('start_slash', function(value, element, params) {
|
||||
if (this.optional(element)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (value.length > 0 && value.charCodeAt(0) != 47) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}, 'Must start with /');
|
||||
|
||||
$.validator.addMethod('noquotes', function(value, element, params) {
|
||||
if (this.optional(element)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (value.length > 0 && value.indexOf('"') >= 0) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}, 'Can not contain double quotes');
|
||||
|
||||
|
||||
$.validator.addMethod('printascii', function(value, element, params) {
|
||||
if (this.optional(element)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
for (var i = 0; i < value.length; i++) {
|
||||
if (value.charCodeAt(i) > 127) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if (value.length > 0 && value.indexOf('"') >= 0) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}, 'Can only use printable ascii code');
|
||||
|
||||
}));
|
218
Plugson/www/static/js/jquery.vtoy.alert.js
Normal file
218
Plugson/www/static/js/jquery.vtoy.alert.js
Normal file
|
@ -0,0 +1,218 @@
|
|||
|
||||
/**
|
||||
* 用于bootstap框架下提示信息框
|
||||
* demo:
|
||||
*
|
||||
* 模态框
|
||||
* Modal.confirm({msg: "是否确定提交?"}).on( function (e) {alert("返回结果:" + e);});
|
||||
* Modal.alert({msg:"该记录已删除!"})
|
||||
* Modal.process('show'/'hide') 隐藏或显示全屏、进度条
|
||||
*
|
||||
* 非模态框
|
||||
* Message.show({ type : 'S|W|E|I', msg: '提示信息' })
|
||||
* Message.success('成功信息')
|
||||
* Message.error('错误信息')
|
||||
* Message.warn('警告信息')
|
||||
* Message.info('提示信息')
|
||||
* Message.warn('警告信息',10000) //10000为显示时长
|
||||
*/
|
||||
;$(function() {
|
||||
|
||||
window.Modal = function() {
|
||||
var reg = new RegExp("\\[([^\\[\\]]*?)\\]", 'igm');
|
||||
var alr = $("#msgAlertDiv");
|
||||
|
||||
if (alr.length == 0) {
|
||||
alr = $('<div id="msgAlertDiv" class="modal fade"></div>')
|
||||
$("body").append(alr);
|
||||
}
|
||||
|
||||
var ahtml = ' <div class="modal-dialog">'
|
||||
+ '<div class="modal-content">'
|
||||
+ '<div class="modal-header">'
|
||||
+ '<h3 class="modal-title"><B style="font-weight: 400;"> [Title]</B></h3>'
|
||||
+ '</div>'
|
||||
+ '<div class="modal-body " style="word-break: break-all;display: block;">'
|
||||
+ '[Message]'
|
||||
+ '</div>'
|
||||
+ '<div class="modal-footer" >'
|
||||
+ '<button type="button" class="btn btn-success ok" data-dismiss="modal">[BtnOk]</button>'
|
||||
+ '[UserDefined]'
|
||||
+ '<button type="button" class="btn cancel" data-dismiss="modal">[BtnCancel]</button>'
|
||||
+ '</div>' + '</div>' + '</div>';
|
||||
|
||||
var _alert = function(options) {
|
||||
alr.html(ahtml); // 复原
|
||||
alr.find('.ok').removeClass('btn-success').addClass('btn-primary');
|
||||
|
||||
if (document.body.clientHeight > 400) {
|
||||
alr.find('.modal-dialog').css("top",((document.body.clientHeight - 400) / 2));
|
||||
}
|
||||
|
||||
alr.find('.cancel').hide();
|
||||
_dialog(options);
|
||||
|
||||
return {
|
||||
on : function(callback) {
|
||||
if (callback && callback instanceof Function) {
|
||||
alr.find('.ok').click(function() {
|
||||
callback(true)
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
var _confirm = function(options) {
|
||||
alr.html(ahtml);
|
||||
alr.find('.ok').removeClass('btn-primary').addClass('btn-success');
|
||||
alr.find('.cancel').show();
|
||||
if (document.body.clientHeight > 400) {
|
||||
alr.find('.modal-dialog').css("top",((document.body.clientHeight - 400) / 2));
|
||||
}
|
||||
|
||||
_dialog(options);
|
||||
|
||||
return {
|
||||
on : function(callback) {
|
||||
if (callback && callback instanceof Function) {
|
||||
alr.find('.ok').click(function() {
|
||||
callback(true);
|
||||
});
|
||||
alr.find('.cancel').click(function() {
|
||||
callback(false);
|
||||
});
|
||||
alr.find('.userDefiend').click(function() {
|
||||
callback("userDefiend");
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
var _dialog = function(options) {
|
||||
var ops = {
|
||||
msg : '',
|
||||
title : g_vtoy_cur_language.STR_INFO,
|
||||
btnok : g_vtoy_cur_language.STR_BTN_OK,
|
||||
btncl : g_vtoy_cur_language.STR_BTN_CANCEL,
|
||||
userDefined : ""
|
||||
};
|
||||
|
||||
$.extend(ops, options);
|
||||
|
||||
var html = alr.html().replace(reg, function(node, key) {
|
||||
return {
|
||||
Title : ops.title,
|
||||
Message : ops.msg,
|
||||
BtnOk : ops.btnok,
|
||||
BtnCancel : ops.btncl,
|
||||
UserDefined : ops.userDefined
|
||||
}[key];
|
||||
});
|
||||
|
||||
alr.html(html);
|
||||
alr.modal({
|
||||
width : 500,
|
||||
backdrop : 'static'
|
||||
});
|
||||
}
|
||||
|
||||
var _process = function(showOrHide,time) {
|
||||
var defaultTime = 100;
|
||||
if($.isNumeric(time)) {
|
||||
defaultTime = time;
|
||||
}
|
||||
var $proc;
|
||||
$proc = $("#vtoy_proc");
|
||||
if('hide' === showOrHide) {
|
||||
$proc.remove();
|
||||
} else if ('show' === showOrHide) {
|
||||
if($proc.length == 1) {
|
||||
return;
|
||||
}
|
||||
$(document).find(":focus").blur();
|
||||
$proc = $('<div id="vtoy_proc" class="loading"></div>');
|
||||
$("body").append($proc);
|
||||
setTimeout(function() {
|
||||
$proc.replaceWith('<div id="vtoy_proc" class="loading" style="background-color: rgba(0, 0, 0, 0.2);"><div class="rectbox"><div class="title">DATA</div><div class="rect rect1"></div><div class="rect rect2"></div><div class="rect rect3"></div><div class="rect rect4"></div><div class="rect rect5"></div></div></div>');
|
||||
}, $.isNumeric(time) ? time : 100);
|
||||
} else {
|
||||
alert("Modal.process参数必须为show/hide");
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
alert : _alert,
|
||||
confirm : _confirm,
|
||||
process : _process
|
||||
}
|
||||
|
||||
}();
|
||||
|
||||
window.Message = function() {
|
||||
var _showMsg = function(type, msg, time) {
|
||||
var o = {type : type, msg : msg };
|
||||
if(time) {
|
||||
o.time = time;
|
||||
}
|
||||
_show(o);
|
||||
}
|
||||
|
||||
var _show = function(options) {
|
||||
var ops = {
|
||||
msg : "提示内容",
|
||||
type: 'S',
|
||||
time: 3000
|
||||
};
|
||||
$.extend(ops, options);
|
||||
|
||||
var msg_class = 'alert-success';
|
||||
if('S' === ops.type || 's' === ops.type) {
|
||||
msg_class = 'alert-success';
|
||||
} else if ('E' === ops.type || 'e' === ops.type) {
|
||||
msg_class = 'alert-danger';
|
||||
} else if ('W' === ops.type || 'w' === ops.type) {
|
||||
msg_class = 'alert-warning';
|
||||
} else if ('I' === ops.type || 'i' === ops.type) {
|
||||
msg_class = 'alert-info';
|
||||
} else {
|
||||
alert("未知的类型,请使用: w-警告;s-成功;e-失败;i-提示");
|
||||
return;
|
||||
}
|
||||
var $messageContainer = $("#fcss_message");
|
||||
if($messageContainer.length === 0) {
|
||||
$messageContainer = $('<div id="fcss_message" style="position:fixed; left: 20%; right: 20%; top:0px; z-index:99999999"></div>');
|
||||
$messageContainer.appendTo($('body'));
|
||||
}
|
||||
var $div = $('<div class="alert ' + msg_class + ' alert-dismissible fade in" role="alert" style="margin-bottom: 0; padding-top:10px; padding-bottom: 10px;"></div>');
|
||||
var $btn = $('<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>');
|
||||
$div.append($btn).append(ops.msg).appendTo($messageContainer);
|
||||
setTimeout(function() {
|
||||
$div.remove();
|
||||
}, ops.time);
|
||||
}
|
||||
|
||||
var _success = function(msg, time) {
|
||||
_showMsg('s', msg, time);
|
||||
}
|
||||
var _error = function(msg, time) {
|
||||
_showMsg('e', msg, time || 6000);
|
||||
}
|
||||
var _warn = function(msg, time) {
|
||||
_showMsg('w', msg, time);
|
||||
}
|
||||
var _info = function(msg, time) {
|
||||
_showMsg('i', msg, time);
|
||||
}
|
||||
|
||||
return {
|
||||
success : _success,
|
||||
error : _error,
|
||||
warn : _warn,
|
||||
info : _info,
|
||||
show : _show
|
||||
}
|
||||
}();
|
||||
|
||||
});
|
2
Plugson/www/static/js/md5.min.js
vendored
Normal file
2
Plugson/www/static/js/md5.min.js
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
!function(n){"use strict";function d(n,t){var r=(65535&n)+(65535&t);return(n>>16)+(t>>16)+(r>>16)<<16|65535&r}function f(n,t,r,e,o,u){return d((u=d(d(t,n),d(e,u)))<<o|u>>>32-o,r)}function l(n,t,r,e,o,u,c){return f(t&r|~t&e,n,t,o,u,c)}function g(n,t,r,e,o,u,c){return f(t&e|r&~e,n,t,o,u,c)}function v(n,t,r,e,o,u,c){return f(t^r^e,n,t,o,u,c)}function m(n,t,r,e,o,u,c){return f(r^(t|~e),n,t,o,u,c)}function c(n,t){var r,e,o,u;n[t>>5]|=128<<t%32,n[14+(t+64>>>9<<4)]=t;for(var c=1732584193,f=-271733879,i=-1732584194,a=271733878,h=0;h<n.length;h+=16)c=l(r=c,e=f,o=i,u=a,n[h],7,-680876936),a=l(a,c,f,i,n[h+1],12,-389564586),i=l(i,a,c,f,n[h+2],17,606105819),f=l(f,i,a,c,n[h+3],22,-1044525330),c=l(c,f,i,a,n[h+4],7,-176418897),a=l(a,c,f,i,n[h+5],12,1200080426),i=l(i,a,c,f,n[h+6],17,-1473231341),f=l(f,i,a,c,n[h+7],22,-45705983),c=l(c,f,i,a,n[h+8],7,1770035416),a=l(a,c,f,i,n[h+9],12,-1958414417),i=l(i,a,c,f,n[h+10],17,-42063),f=l(f,i,a,c,n[h+11],22,-1990404162),c=l(c,f,i,a,n[h+12],7,1804603682),a=l(a,c,f,i,n[h+13],12,-40341101),i=l(i,a,c,f,n[h+14],17,-1502002290),c=g(c,f=l(f,i,a,c,n[h+15],22,1236535329),i,a,n[h+1],5,-165796510),a=g(a,c,f,i,n[h+6],9,-1069501632),i=g(i,a,c,f,n[h+11],14,643717713),f=g(f,i,a,c,n[h],20,-373897302),c=g(c,f,i,a,n[h+5],5,-701558691),a=g(a,c,f,i,n[h+10],9,38016083),i=g(i,a,c,f,n[h+15],14,-660478335),f=g(f,i,a,c,n[h+4],20,-405537848),c=g(c,f,i,a,n[h+9],5,568446438),a=g(a,c,f,i,n[h+14],9,-1019803690),i=g(i,a,c,f,n[h+3],14,-187363961),f=g(f,i,a,c,n[h+8],20,1163531501),c=g(c,f,i,a,n[h+13],5,-1444681467),a=g(a,c,f,i,n[h+2],9,-51403784),i=g(i,a,c,f,n[h+7],14,1735328473),c=v(c,f=g(f,i,a,c,n[h+12],20,-1926607734),i,a,n[h+5],4,-378558),a=v(a,c,f,i,n[h+8],11,-2022574463),i=v(i,a,c,f,n[h+11],16,1839030562),f=v(f,i,a,c,n[h+14],23,-35309556),c=v(c,f,i,a,n[h+1],4,-1530992060),a=v(a,c,f,i,n[h+4],11,1272893353),i=v(i,a,c,f,n[h+7],16,-155497632),f=v(f,i,a,c,n[h+10],23,-1094730640),c=v(c,f,i,a,n[h+13],4,681279174),a=v(a,c,f,i,n[h],11,-358537222),i=v(i,a,c,f,n[h+3],16,-722521979),f=v(f,i,a,c,n[h+6],23,76029189),c=v(c,f,i,a,n[h+9],4,-640364487),a=v(a,c,f,i,n[h+12],11,-421815835),i=v(i,a,c,f,n[h+15],16,530742520),c=m(c,f=v(f,i,a,c,n[h+2],23,-995338651),i,a,n[h],6,-198630844),a=m(a,c,f,i,n[h+7],10,1126891415),i=m(i,a,c,f,n[h+14],15,-1416354905),f=m(f,i,a,c,n[h+5],21,-57434055),c=m(c,f,i,a,n[h+12],6,1700485571),a=m(a,c,f,i,n[h+3],10,-1894986606),i=m(i,a,c,f,n[h+10],15,-1051523),f=m(f,i,a,c,n[h+1],21,-2054922799),c=m(c,f,i,a,n[h+8],6,1873313359),a=m(a,c,f,i,n[h+15],10,-30611744),i=m(i,a,c,f,n[h+6],15,-1560198380),f=m(f,i,a,c,n[h+13],21,1309151649),c=m(c,f,i,a,n[h+4],6,-145523070),a=m(a,c,f,i,n[h+11],10,-1120210379),i=m(i,a,c,f,n[h+2],15,718787259),f=m(f,i,a,c,n[h+9],21,-343485551),c=d(c,r),f=d(f,e),i=d(i,o),a=d(a,u);return[c,f,i,a]}function i(n){for(var t="",r=32*n.length,e=0;e<r;e+=8)t+=String.fromCharCode(n[e>>5]>>>e%32&255);return t}function a(n){var t=[];for(t[(n.length>>2)-1]=void 0,e=0;e<t.length;e+=1)t[e]=0;for(var r=8*n.length,e=0;e<r;e+=8)t[e>>5]|=(255&n.charCodeAt(e/8))<<e%32;return t}function e(n){for(var t,r="0123456789abcdef",e="",o=0;o<n.length;o+=1)t=n.charCodeAt(o),e+=r.charAt(t>>>4&15)+r.charAt(15&t);return e}function r(n){return unescape(encodeURIComponent(n))}function o(n){return i(c(a(n=r(n)),8*n.length))}function u(n,t){return function(n,t){var r,e=a(n),o=[],u=[];for(o[15]=u[15]=void 0,16<e.length&&(e=c(e,8*n.length)),r=0;r<16;r+=1)o[r]=909522486^e[r],u[r]=1549556828^e[r];return t=c(o.concat(a(t)),512+8*t.length),i(c(u.concat(t),640))}(r(n),r(t))}function t(n,t,r){return t?r?u(t,n):e(u(t,n)):r?o(n):e(o(n))}"function"==typeof define&&define.amd?define(function(){return t}):"object"==typeof module&&module.exports?module.exports=t:n.md5=t}(this);
|
||||
//# sourceMappingURL=md5.min.js.map
|
1445
Plugson/www/static/js/vtoy.js
Normal file
1445
Plugson/www/static/js/vtoy.js
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue