setting.js 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  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 += gLocal.gui.interface_language + ":";
  9. $("#setting_general").html(html);
  10. html = "";
  11. html += gLocal.gui.translation_language + ":";
  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 += gLocal.gui.magic_dict_language + ":";
  21. html += "<div style='display:flex;'>";
  22. html += "<fieldset style='width:10em;'>";
  23. html += "<legend>" + gLocal.gui.priority + "</legend>";
  24. html += "<ul id='ul_dict_lang1' class='dict_lang'>";
  25. let i = 0;
  26. for (const iterator of setting["dict.lang"]) {
  27. html +=
  28. "<li id='dict_lang1_li_" +
  29. i +
  30. "' value='" +
  31. iterator +
  32. "'>" +
  33. lang_get_org_name(iterator) +
  34. "</li>";
  35. i++;
  36. }
  37. html += "</ul>";
  38. html += "</fieldset>";
  39. html += "<fieldset style='width:10em;'>";
  40. html += "<legend>" + gLocal.gui.no_need + "</legend>";
  41. html += "<ul id='ul_dict_lang2' class='dict_lang'>";
  42. i = 0;
  43. for (const iterator of dict_lang_others) {
  44. html +=
  45. "<li id='dict_lang2_li_" +
  46. i +
  47. "' value='" +
  48. iterator +
  49. "'>" +
  50. lang_get_org_name(iterator) +
  51. "</li>";
  52. i++;
  53. }
  54. html += "</ul>";
  55. html += "</fieldset>";
  56. html += "</div>";
  57. $("#setting_dictionary").html(html);
  58. $("#ul_dict_lang1, #ul_dict_lang2")
  59. .sortable({
  60. connectWith: ".dict_lang",
  61. })
  62. .disableSelection();
  63. $("#ul_dict_lang1").sortable({
  64. update: function (event, ui) {
  65. let sortedIDs = $("#ul_dict_lang1").sortable("toArray");
  66. let newLang = new Array();
  67. for (const iSorted of sortedIDs) {
  68. newLang.push($("#" + iSorted).attr("value"));
  69. }
  70. setting["dict.lang"] = newLang;
  71. setting_save();
  72. },
  73. });
  74. } catch (e) { }
  75. });
  76. }
  77. function li_remove() {
  78. $(this).parent().remove();
  79. }
  80. var get_callback;
  81. function setting_get(key, callback) {
  82. get_callback = callback;
  83. $.post(
  84. "../ucenter/get_setting.php",
  85. {
  86. key: key,
  87. },
  88. function (data, status) {
  89. try {
  90. let arrSetting = JSON.parse(data);
  91. if (arrSetting.hasOwnProperty(key)) {
  92. get_callback(arrSetting[key]);
  93. } else {
  94. get_callback(false);
  95. }
  96. } catch (e) {
  97. get_callback(false);
  98. }
  99. }
  100. );
  101. }
  102. function setting_save() {
  103. $.post(
  104. "set_setting.php",
  105. {
  106. data: JSON.stringify(setting),
  107. },
  108. function (data, status) {
  109. ntf_show(data);
  110. }
  111. );
  112. }