setting.js 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. var setting;
  2. function setting_onload() {
  3. $.post("get_setting.php", {}, function (data, status) {
  4. try {
  5. setting = JSON.parse(data);
  6. let html;
  7. html = "";
  8. html += "常用界面语言:";
  9. $("#setting_general").html(html);
  10. html = "";
  11. html += "常用译文语言:";
  12. $("#setting_studio").html(html);
  13. let dict_lang_others = new Array();
  14. for (const iterator of setting["_dict.lang"]) {
  15. if (setting["dict.lang"].indexOf(iterator) == -1) {
  16. dict_lang_others.push(iterator);
  17. }
  18. }
  19. html = "";
  20. html += "自动查词词典语言:";
  21. html += "<div style='display:flex;'>";
  22. html += "<div style='width:10em;'>顺序";
  23. html += "<ul id='ul_dict_lang1' class='dict_lang'>";
  24. let i = 0;
  25. for (const iterator of setting["dict.lang"]) {
  26. html +=
  27. "<li id='dict_lang1_li_" +
  28. i +
  29. "' value='" +
  30. iterator +
  31. "'>" +
  32. lang_get_org_name(iterator) +
  33. "</li>";
  34. i++;
  35. }
  36. html += "</ul>";
  37. html += "</div>";
  38. html += "<div style='width:10em;'>不展示";
  39. html += "<ul id='ul_dict_lang2' class='dict_lang'>";
  40. i = 0;
  41. for (const iterator of dict_lang_others) {
  42. html +=
  43. "<li id='dict_lang2_li_" +
  44. i +
  45. "' value='" +
  46. iterator +
  47. "'>" +
  48. lang_get_org_name(iterator) +
  49. "</li>";
  50. i++;
  51. }
  52. html += "</ul>";
  53. html += "</div>";
  54. html += "</div>";
  55. $("#setting_dictionary").html(html);
  56. $("#ul_dict_lang1, #ul_dict_lang2")
  57. .sortable({
  58. connectWith: ".dict_lang",
  59. })
  60. .disableSelection();
  61. $("#ul_dict_lang1").sortable({
  62. update: function (event, ui) {
  63. let sortedIDs = $("#ul_dict_lang1").sortable("toArray");
  64. let newLang = new Array();
  65. for (const iSorted of sortedIDs) {
  66. newLang.push($("#" + iSorted).attr("value"));
  67. }
  68. setting["dict.lang"] = newLang;
  69. setting_save();
  70. },
  71. });
  72. } catch (e) {}
  73. });
  74. }
  75. function li_remove() {
  76. $(this).parent().remove();
  77. }
  78. var get_callback;
  79. function setting_get(key, callback) {
  80. get_callback = callback;
  81. $.post(
  82. "../ucenter/get_setting.php",
  83. {
  84. key: key,
  85. },
  86. function (data, status) {
  87. try {
  88. let arrSetting = JSON.parse(data);
  89. if (arrSetting.hasOwnProperty(key)) {
  90. get_callback(arrSetting[key]);
  91. } else {
  92. get_callback(false);
  93. }
  94. } catch (e) {
  95. get_callback(false);
  96. }
  97. }
  98. );
  99. }
  100. function setting_save() {
  101. $.post(
  102. "set_setting.php",
  103. {
  104. data: JSON.stringify(setting),
  105. },
  106. function (data, status) {
  107. alert(data);
  108. }
  109. );
  110. }