]> glassweightruler.freedombox.rocks Git - Ventoy.git/blobdiff - Plugson/www/plugson_theme.html
Fix the issue that VTOY_LINUX_REMOUNT option does not take effect in latest openSUSE...
[Ventoy.git] / Plugson / www / plugson_theme.html
index e6f96a0226915ced5bbbc44acda03b09eb7e596a..1e6e8b0d59f4275522c494025d4a615e22498846 100644 (file)
             </div><!-- /.box-body -->\r
         </div><!-- /.box -->\r
     \r
+        \r
+        <div class="box box-primary box-solid" id='resolution_fit_div'>\r
+          <div class="box-header with-border">\r
+            <h3 class="box-title" style="font-size: 14px;font-weight: bold;">resolution_fit\r
+              <span id="id_span_desc_cn"> —— 按照分辨率过滤</span></h3>\r
+            <div class="box-tools pull-right">\r
+              <button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>\r
+            </div><!-- /.box-tools -->\r
+          </div><!-- /.box-header -->\r
+          <div class="box-body no-padding">\r
+              <table class="table table-bordered  no-padding">\r
+                  <tr style="font-weight:bold;">\r
+                    <td class="td_ctrl_col" id="td_title_setting">选项设置</td>\r
+                    <td>\r
+                      <label class="radio-inline">\r
+                          <input type="radio" id="id_ctrl_radio_res_fit0" name="id_ctrl_radio_res_fit" data-type="0" value="0"> <span style="font-weight:bold;">0</span>\r
+                      </label>&nbsp;&nbsp;&nbsp;&nbsp;\r
+                      <label class="radio-inline">\r
+                          <input type="radio" id="id_ctrl_radio_res_fit1" name="id_ctrl_radio_res_fit" data-type="1" value="1"> <span style="font-weight:bold;">1</span>\r
+                      </label>\r
+                    </td>\r
+                  </tr>\r
+                  <tr id="tr_title_desc_cn">\r
+                    <td class="td_ctrl_col" id="td_title_desc">选项说明</td>\r
+                    <td>当设置多个主题时,在随机选择时是否按照当前分辨率过滤。&nbsp;&nbsp;\r
+                      <code style="font-weight: bold;">0</code> 不过滤 &nbsp;&nbsp;\r
+                      <code style="font-weight: bold;">1</code> 过滤 <br/>\r
+                      注意,这个选项必须在上面设置了多个主题配置文件,同时 "默认" 设置为 “随机选择” 时才有效,其他情况下均无效。<br/>\r
+                      关于这个选项的详细解释,请参考 <a href="https://www.ventoy.net/cn/plugin_theme.html#vtoy_theme_res_fit">resolution_fit 选项说明</a>\r
+                    </td>\r
+                  </tr>\r
+                  <tr id="tr_title_desc_en">\r
+                    <td class="td_ctrl_col">Option Description</td>\r
+                    <td>\r
+                      Filter by current resolution when you set more than one themes. &nbsp;&nbsp;\r
+                      <code style="font-weight: bold;">0</code> No filter &nbsp;&nbsp\r
+                      <code style="font-weight: bold;">1</code> Filter <br/>\r
+                      You can refer <a href="https://www.ventoy.net/en/plugin_theme.html#vtoy_theme_res_fit">About resolution_fit</a> for details about this option.\r
+                    </td>\r
+                  </tr>\r
+              </table>\r
+          </div><!-- /.box-body -->\r
+      </div><!-- /.box -->\r
+        \r
     \r
         <div class="box box-primary box-solid">\r
             <div class="box-header with-border">\r
                       <td class="td_ctrl_col" id="td_title_setting">选项设置</td>\r
                       <td>\r
                         <select id="id_theme_sel_gfxmode" name="name_theme_sel_gfxmode" class="form-control">\r
+                            <option title="max">max</option>\r
                             <option title="1920x1080">1920x1080</option>\r
                             <option title="1680x1050">1680x1050</option>\r
                             <option title="1600x900">1600x900</option>\r
     } else {\r
       data.display_mode = 0;\r
     }\r
+    \r
+    data.resolution_fit = parseInt($('input:radio[name=id_ctrl_radio_res_fit]:checked').val());\r
   }\r
 \r
   function VtoySaveCurrentPage() {\r
       method : 'save_theme',\r
       index: current_tab_index,\r
       display_mode: data.display_mode,\r
+      resolution_fit: data.resolution_fit,\r
       gfxmode: data.gfxmode,\r
       default_file: data.default_file\r
     }, function(e) {\r
     var $tbl = $("#id_theme_tbl_file tbody");\r
     $tbl.empty();\r
 \r
+    if (list.length > 1) {\r
+        $('#resolution_fit_div').show();\r
+    } else {\r
+        $('#resolution_fit_div').hide();\r
+    }\r
+\r
     for (var i = 0; i < list.length; i++) {\r
       var $tr;\r
       td1 = '<td>' + (i + 1) + '</td>';\r
       var id = $(this).attr('id');\r
       if (typeof(id) != 'undefined' && id.startsWith('id_theme_file')) {\r
         $(this).change(function() {\r
-          m_data_theme[current_tab_index].default_file =parseInt(id.substr(id.length - 1));\r
+          var prelen = 'id_theme_file_radio'.length;\r
+          m_data_theme[current_tab_index].default_file = parseInt(id.substr(id.length - 1));\r
+          if (id.substr(0, prelen) === 'id_theme_file_radio') {\r
+              m_data_theme[current_tab_index].default_file = parseInt(id.substr(prelen));\r
+          }\r
+          \r
           VtoySaveCurrentPage();\r
         });\r
       }\r
       $('select[id=id_theme_sel_dismode').val('GUI');\r
     }\r
     \r
+    $('input:radio[name=id_ctrl_radio_res_fit]')[data.resolution_fit].checked = true;\r
+    \r
     FillThemeFileTable(data.filelist, data.default_file);\r
     FillThemeFontTable(data.fontslist);\r
   }\r
       index: current_tab_index,\r
       path: data.path\r
     }, function(e) {\r
-      list.push(data);\r
-      FillThemeFileTable(list, m_data_theme[current_tab_index].default_file);\r
-      Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);\r
+        if (e.result === 'success') {\r
+            list.push(data);\r
+            FillThemeFileTable(list, m_data_theme[current_tab_index].default_file);\r
+            Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);\r
+        } else if (e.result === 'duplicate') {\r
+            Message.error(g_vtoy_cur_language.STR_DUPLICATE_PATH);\r
+        }\r
     });\r
   }\r
 \r
       index: current_tab_index,\r
       path: data.path\r
     }, function(e) {\r
-      list.push(data);\r
-      FillThemeFontTable(list);\r
-      Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);\r
+        if (e.result === 'success') {\r
+            list.push(data);\r
+            FillThemeFontTable(list);\r
+            Message.success(g_vtoy_cur_language.STR_SAVE_SUCCESS);\r
+        } else if (e.result === 'duplicate') {\r
+            Message.error(g_vtoy_cur_language.STR_DUPLICATE_PATH);\r
+        }\r
     });\r
   }\r
 \r
 \r
   $('select[id=id_theme_sel_gfxmode]').change(VtoySaveCurrentPage);\r
   $('select[id=id_theme_sel_dismode]').change(VtoySaveCurrentPage);\r
+  $('#id_ctrl_radio_res_fit0').change(VtoySaveCurrentPage);\r
+  $('#id_ctrl_radio_res_fit1').change(VtoySaveCurrentPage);\r
 \r
   $('#id_tab_theme a[href="#tab_0"]').click(OnClickMultiModeTab);\r
   $('#id_tab_theme a[href="#tab_1"]').click(OnClickMultiModeTab);\r