]> glassweightruler.freedombox.rocks Git - Ventoy.git/blobdiff - Plugson/www/static/js/vtoy.js
upate issue template
[Ventoy.git] / Plugson / www / static / js / vtoy.js
index aee33796727cb77be02eb1045d7a994857a0b55e..68719254a0c6d1ca4f08d15952b2927abd857fd1 100644 (file)
@@ -2,6 +2,13 @@
 function ventoy_replace_slash(str) {\r
     var str1 = str.replace(/\\/g, '/');\r
     var str2 = str1.replace(/\/\//g, '/');\r
 function ventoy_replace_slash(str) {\r
     var str1 = str.replace(/\\/g, '/');\r
     var str2 = str1.replace(/\/\//g, '/');\r
+    \r
+    if (str2 && str2.length > 0) {\r
+        if (str2.substr(-1) === "/") {\r
+            return str2.substr(0, str2.length - 1);\r
+        }\r
+    }\r
+    \r
     return str2;\r
 }\r
 \r
     return str2;\r
 }\r
 \r
@@ -429,10 +436,10 @@ var g_vtoy_cur_language_en =
 \r
     "STR_PATH_TOO_LONG": "The path exceeds the maximum supported length, please check!",\r
     "STR_INPUT_TOO_LONG": "The string exceeds the maximum supported length, please check!",\r
 \r
     "STR_PATH_TOO_LONG": "The path exceeds the maximum supported length, please check!",\r
     "STR_INPUT_TOO_LONG": "The string exceeds the maximum supported length, please check!",\r
-    "STR_INVALID_FILE_PATH": "Invalid full file path, please check!",\r
-    "STR_INVALID_FILE_PATH1": "The 1st file path is invalid!",    \r
-    "STR_INVALID_FILE_PATH2": "The 2nd file path is invalid!",    \r
-    "STR_INVALID_NEW_FILE_PATH": "The full file path of new is invalid, please check!",\r
+    "STR_INVALID_FILE_PATH": "Invalid or nonexist full file path, please check!",\r
+    "STR_INVALID_FILE_PATH1": "The 1st file path is invalid or nonexist!",    \r
+    "STR_INVALID_FILE_PATH2": "The 2nd file path is invalid or nonexist!",    \r
+    "STR_INVALID_NEW_FILE_PATH": "The full file path of new is invalid or nonexist, please check!",\r
     "STR_INVALID_DIR_PATH": "Invalid directory path, please check!",\r
     "STR_INVALID_NUMBER": "Please input valid non-negative integer!",\r
     "STR_INVALID_AUTOSEL": "autosel exceeds the length of the list!",\r
     "STR_INVALID_DIR_PATH": "Invalid directory path, please check!",\r
     "STR_INVALID_NUMBER": "Please input valid non-negative integer!",\r
     "STR_INVALID_AUTOSEL": "autosel exceeds the length of the list!",\r
@@ -446,7 +453,7 @@ var g_vtoy_cur_language_en =
     "STR_SET_TIP_FOR_DIR": "Set Menu Tip For Directory",\r
     "STR_SET_INJECTION_FOR_FILE": "[image] Set injection for a file",\r
     "STR_SET_INJECTION_FOR_DIR": "[parent] Set the same injection for all the files under a directory.",\r
     "STR_SET_TIP_FOR_DIR": "Set Menu Tip For Directory",\r
     "STR_SET_INJECTION_FOR_FILE": "[image] Set injection for a file",\r
     "STR_SET_INJECTION_FOR_DIR": "[parent] Set the same injection for all the files under a directory.",\r
-    "STR_INVALID_ARCHIVE_PATH": "Invalid archive file path, please check!",\r
+    "STR_INVALID_ARCHIVE_PATH": "Invalid or nonexist archive file path, please check!",\r
     "STR_SET_PWD_FOR_FILE": "[file] Set password for a file.",\r
     "STR_SET_PWD_FOR_DIR": "[parent] Set the same password for all the files under a directory.",\r
     "STR_SET_AUTO_INSTALL_FOR_FILE": "[image] Set auto install template for a file",\r
     "STR_SET_PWD_FOR_FILE": "[file] Set password for a file.",\r
     "STR_SET_PWD_FOR_DIR": "[parent] Set the same password for all the files under a directory.",\r
     "STR_SET_AUTO_INSTALL_FOR_FILE": "[image] Set auto install template for a file",\r
@@ -479,6 +486,8 @@ var g_vtoy_cur_language_en =
     "STR_SECURE_BOOT_ENABLE": "Enable",\r
     "STR_SECURE_BOOT_DISABLE": "Disable",\r
     "STR_SYNTAX_ERROR_TIP": "Syntax error detected in ventoy.json, so the configuration is not loaded!",\r
     "STR_SECURE_BOOT_ENABLE": "Enable",\r
     "STR_SECURE_BOOT_DISABLE": "Disable",\r
     "STR_SYNTAX_ERROR_TIP": "Syntax error detected in ventoy.json, so the configuration is not loaded!",\r
+    "STR_INVALID_CONFIG_TIP": "Invalid configuration detected in ventoy.json, so the configuration is not loaded!",\r
+    "STR_CONFIG_SAVE_ERROR_TIP": "Failed to write ventoy.json file. Check VentoyPlugson.log for more details!",\r
 \r
     "STR_XXX": "xxx"\r
 };\r
 \r
     "STR_XXX": "xxx"\r
 };\r
@@ -563,10 +572,10 @@ var g_vtoy_cur_language_cn =
 \r
     "STR_PATH_TOO_LONG": "路径超过最大支持长度,请检查!",\r
     "STR_INPUT_TOO_LONG": "字符串超过最大支持长度,请检查!",\r
 \r
     "STR_PATH_TOO_LONG": "路径超过最大支持长度,请检查!",\r
     "STR_INPUT_TOO_LONG": "字符串超过最大支持长度,请检查!",\r
-    "STR_INVALID_FILE_PATH": "文件路径不合法,请检查!",    \r
-    "STR_INVALID_FILE_PATH1": "第1个文件路径不合法,请检查!",    \r
-    "STR_INVALID_FILE_PATH2": "第2个文件路径不合法,请检查!",    \r
-    "STR_INVALID_NEW_FILE_PATH": "new 文件路径不合法,请检查!",    \r
+    "STR_INVALID_FILE_PATH": "文件路径不合法或不存在,请检查!",    \r
+    "STR_INVALID_FILE_PATH1": "第1个文件路径不合法或不存在,请检查!",    \r
+    "STR_INVALID_FILE_PATH2": "第2个文件路径不合法或不存在,请检查!",    \r
+    "STR_INVALID_NEW_FILE_PATH": "new 文件路径不合法或不存在,请检查!",    \r
     "STR_INVALID_DIR_PATH": "文件夹路径不合法,请检查!",\r
     "STR_INVALID_NUMBER": "请输入合法的非负整数!",\r
     "STR_INVALID_AUTOSEL": "autosel 的值超过了列表实际长度!",\r
     "STR_INVALID_DIR_PATH": "文件夹路径不合法,请检查!",\r
     "STR_INVALID_NUMBER": "请输入合法的非负整数!",\r
     "STR_INVALID_AUTOSEL": "autosel 的值超过了列表实际长度!",\r
@@ -580,7 +589,7 @@ var g_vtoy_cur_language_cn =
     "STR_SET_TIP_FOR_DIR": "为目录设置菜单提示信息",\r
     "STR_SET_INJECTION_FOR_FILE": "[image] 为某一个文件设置注入",\r
     "STR_SET_INJECTION_FOR_DIR": "[parent] 为某个目录下的所有文件设置相同的注入",\r
     "STR_SET_TIP_FOR_DIR": "为目录设置菜单提示信息",\r
     "STR_SET_INJECTION_FOR_FILE": "[image] 为某一个文件设置注入",\r
     "STR_SET_INJECTION_FOR_DIR": "[parent] 为某个目录下的所有文件设置相同的注入",\r
-    "STR_INVALID_ARCHIVE_PATH": "Archive 文件路径非法,请检查!",\r
+    "STR_INVALID_ARCHIVE_PATH": "Archive 文件路径非法或不存在,请检查!",\r
     "STR_SET_PWD_FOR_FILE": "[file] 为指定文件设置密码",\r
     "STR_SET_PWD_FOR_DIR": "[parent] 为某个目录下的所有文件设置相同的密码",\r
     "STR_SET_AUTO_INSTALL_FOR_FILE": "[image] 为某个镜像文件设置自动安装脚本",\r
     "STR_SET_PWD_FOR_FILE": "[file] 为指定文件设置密码",\r
     "STR_SET_PWD_FOR_DIR": "[parent] 为某个目录下的所有文件设置相同的密码",\r
     "STR_SET_AUTO_INSTALL_FOR_FILE": "[image] 为某个镜像文件设置自动安装脚本",\r
@@ -613,7 +622,8 @@ var g_vtoy_cur_language_cn =
     "STR_SECURE_BOOT_ENABLE": "开启",\r
     "STR_SECURE_BOOT_DISABLE": "未开启",\r
     "STR_SYNTAX_ERROR_TIP": "ventoy.json 文件中存在语法错误,配置未加载!",\r
     "STR_SECURE_BOOT_ENABLE": "开启",\r
     "STR_SECURE_BOOT_DISABLE": "未开启",\r
     "STR_SYNTAX_ERROR_TIP": "ventoy.json 文件中存在语法错误,配置未加载!",\r
-\r
+    "STR_INVALID_CONFIG_TIP": "ventoy.json 文件中存在错误配置,配置未加载!",\r
+    "STR_CONFIG_SAVE_ERROR_TIP": "ventoy.json 文件写入失败,详细信息请参考 VentoyPlugson.log 文件!",\r
 \r
 \r
     "STR_XXX": "xxx"\r
 \r
 \r
     "STR_XXX": "xxx"\r
@@ -896,6 +906,7 @@ function VtoyCommonChangeLanguage(newlang) {
             utfmaxlen: $.validator.format("The string exceeds the maximum supported length"),\r
             start_slash: $.validator.format("Must start with /"),\r
             noquotes: $.validator.format("Can not include double quotes"),\r
             utfmaxlen: $.validator.format("The string exceeds the maximum supported length"),\r
             start_slash: $.validator.format("Must start with /"),\r
             noquotes: $.validator.format("Can not include double quotes"),\r
+            filenamepart:$.validator.format("As part of file name, can not include invalid characters"),\r
             printascii: $.validator.format("Can not include non-ascii characters.")\r
         });\r
 \r
             printascii: $.validator.format("Can not include non-ascii characters.")\r
         });\r
 \r
@@ -941,6 +952,7 @@ function VtoyCommonChangeLanguage(newlang) {
             utfmaxlen: $.validator.format("超过最大长度"),\r
             start_slash: $.validator.format("必须以反斜杠 / 开头"),\r
             noquotes: $.validator.format("不能包含双引号"),\r
             utfmaxlen: $.validator.format("超过最大长度"),\r
             start_slash: $.validator.format("必须以反斜杠 / 开头"),\r
             noquotes: $.validator.format("不能包含双引号"),\r
+            filenamepart:$.validator.format("作为文件名的一部分,不能包含特殊的符号"),\r
             printascii: $.validator.format("不能包含中文或其他非 ascii 字符。")\r
         });\r
         \r
             printascii: $.validator.format("不能包含中文或其他非 ascii 字符。")\r
         });\r
         \r
@@ -1062,13 +1074,13 @@ var g_type_select_validator = $("#TypeSelectForm").validate({
 function VtoySelectType(cb, para) {\r
 \r
     $('#TypeSelectForm #TypeSelForm_lang_1').text(g_vtoy_cur_language.STR_SELECT);\r
 function VtoySelectType(cb, para) {\r
 \r
     $('#TypeSelectForm #TypeSelForm_lang_1').text(g_vtoy_cur_language.STR_SELECT);\r
-\r
+    \r
     if (g_current_language === 'en') {\r
     if (g_current_language === 'en') {\r
-        $('#SetDirForm #SetDirForm_lang_2').text(" OK");\r
-        $('#SetDirForm #SetDirForm_lang_3').text("Cancel");\r
+        $('#TypeSelectForm #TypeSelForm_lang_2').text(" OK");\r
+        $('#TypeSelectForm #TypeSelForm_lang_3').text("Cancel");\r
     } else {\r
     } else {\r
-        $('#SetDirForm #SetDirForm_lang_2').text("确定");\r
-        $('#SetDirForm #SetDirForm_lang_3').text("取消");\r
+        $('#TypeSelectForm #TypeSelForm_lang_2').text("确定");\r
+        $('#TypeSelectForm #TypeSelForm_lang_3').text("取消");\r
     }\r
     \r
     var $tbl = $("#id_type_select_table tbody");\r
     }\r
     \r
     var $tbl = $("#id_type_select_table tbody");\r
@@ -1102,7 +1114,8 @@ var g_set_key_validator = $("#SetKeyForm").validate({
         },\r
         SetKeyValue : {\r
             required: true,\r
         },\r
         SetKeyValue : {\r
             required: true,\r
-            utfmaxlen: true          \r
+            utfmaxlen: true,\r
+            filenamepart: true        \r
         }\r
     },\r
 \r
         }\r
     },\r
 \r
@@ -1130,11 +1143,11 @@ function VtoySetKey(cb, para) {
     $('#SetKeyForm #SetKeyForm_lang_3').text(para.title2);\r
 \r
     if (g_current_language === 'en') {\r
     $('#SetKeyForm #SetKeyForm_lang_3').text(para.title2);\r
 \r
     if (g_current_language === 'en') {\r
-        $('#SetDirForm #SetDirForm_lang_4').text(" OK");\r
-        $('#SetDirForm #SetDirForm_lang_5').text("Cancel");\r
+        $('#SetKeyForm #SetKeyForm_lang_4').text(" OK");\r
+        $('#SetKeyForm #SetKeyForm_lang_5').text("Cancel");\r
     } else {\r
     } else {\r
-        $('#SetDirForm #SetDirForm_lang_4').text("确定");\r
-        $('#SetDirForm #SetDirForm_lang_5').text("取消");\r
+        $('#SetKeyForm #SetKeyForm_lang_4').text("确定");\r
+        $('#SetKeyForm #SetKeyForm_lang_5').text("取消");\r
     }\r
     \r
     g_set_key_callback = cb;\r
     }\r
     \r
     g_set_key_callback = cb;\r
@@ -1392,15 +1405,15 @@ function VtoySetDirFile(cb, para) {
     $('#SetDirFileModal #SetDirFileForm_label2').text(para.label2);\r
 \r
     if (g_current_language === 'en') {\r
     $('#SetDirFileModal #SetDirFileForm_label2').text(para.label2);\r
 \r
     if (g_current_language === 'en') {\r
-        $('#SetDirFileModal #SetDirFileModal_ok').text(" OK");\r
-        $('#SetDirFileModal #SetDirFileModal_cancel').text("Cancel");\r
+        $('#SetDirFileModal #SetDirFileForm_ok').text(" OK");\r
+        $('#SetDirFileModal #SetDirFileForm_cancel').text("Cancel");\r
 \r
         $('#SetDirFileModal #id_note_dirfile_cn').hide();\r
         $('#SetDirFileModal #id_note_dirfile_en').show();\r
 \r
     } else {\r
 \r
         $('#SetDirFileModal #id_note_dirfile_cn').hide();\r
         $('#SetDirFileModal #id_note_dirfile_en').show();\r
 \r
     } else {\r
-        $('#SetDirFileModal #SetDirFileModal_ok').text("确定");\r
-        $('#SetDirFileModal #SetDirFileModal_cancel').text("取消");\r
+        $('#SetDirFileModal #SetDirFileForm_ok').text("确定");\r
+        $('#SetDirFileModal #SetDirFileForm_cancel').text("取消");\r
 \r
         $('#SetDirFileModal #id_note_dirfile_en').hide();\r
         $('#SetDirFileModal #id_note_dirfile_cn').show();\r
 \r
         $('#SetDirFileModal #id_note_dirfile_en').hide();\r
         $('#SetDirFileModal #id_note_dirfile_cn').show();\r