diff --git a/Aida/python.html b/Aida/python.html
index 99c752f..6091a98 100644
--- a/Aida/python.html
+++ b/Aida/python.html
@@ -186,6 +186,7 @@
@@ -281,12 +282,10 @@
var getPythonBufferSize = 64;
var getBufferStatusTemp = null;
var getBufferSignal = null;
- //var displayDataCounter = 0;
var currentRunningFile = ''; // temp running file name
var g_isPythonRunning = 0;
var pythoncode = ""
var currentFileName = '';
- // 初始化為 null,確保 intervalId 定義過
var intervalId = null; // Ming add 2024/08/22
var autoScroll = true; // Ming 2024-08-29
var isUserScrolling = false; // Ming 2024-08-29
@@ -295,30 +294,28 @@
// 取得語系
func_get_lang_cookie();
- // 當網頁加載完成後自動載入 hello.py
- window.onload = function() { // Ming add 2024/08/22
+ // 修改 window.onload 使用 async/await
+ window.onload = async function() {
// 確認之前執行狀態
- func_enablePythonfile();
-
+ await func_enablePythonfile();
// 確認有無回傳的資料
func_getPythonStatus();
-
+ // 確認是否有 python 文件正在執行
if (currentRunningFile.endsWith('.py'))
{
- func_FileGet(currentRunningFile);
-
- func_getFileList(currentRunningFile);
+ currentFileName = currentRunningFile;
}
else
{
currentFileName = 'hello.py';
- // 加載文件列表並選中 hello.py
- func_FileGet(currentFileName);
- // 自動加載並顯示 hello.py 的內容
- func_getFileList(currentFileName);
}
-
+ // 加載文件列表並選中 python
+ func_FileGet(currentFileName);
+
+ // 自動加載並顯示 python 的內容
+ func_getFileList(currentFileName);
};
+
// 初始化 CodeMirror
var editor = CodeMirror.fromTextArea(document.getElementById('code-textarea'), {
lineNumbers: true,
@@ -776,44 +773,37 @@
});
return false;
}
- // 取得 config.json 中 enable_python_file 的值
- function func_enablePythonfile() { // Ming 2024-10-04
- $.ajax({
- url: "/getconfigfile?ch=all",
- type: "GET",
- async: true,
- beforeSend: function (xmlHttp) {
- xmlHttp.setRequestHeader("If-Modified-Since", "0");
- xmlHttp.setRequestHeader("Cache-Control", "no-cache");
- //xmlHttp.setRequestHeader("Authorization", "Basic " + btoa("username:password"));
- },
- success: function (retdata) {
- var jsonbuf = JSON.parse(retdata);
-
- if ("enable_python_file" in jsonbuf["system_setting"]) {
- currentRunningFile = jsonbuf["system_setting"]["enable_python_file"];
- g_isPythonRunning = 1;
- if (currentRunningFile.endsWith('.py'))
- {
- $('#console').html("Execute unfinished python file !!");
- $('#console').append('
'); // 換行
- $('#console').append("Running...");
- $('#console').append('
'); // 換行
- console.log("find enable python file !!!!!!!!!!!!!! ");
- }
- else
- {
- console.log("not found enable python file !!!!!!!!!!!!!! ");
+ // 使用 Promise 取得 config.json 中 enable_python_file 的值後返回
+ function func_enablePythonfile() {
+ return new Promise((resolve, reject) => {
+ $.ajax({
+ url: "/getconfigfile?ch=all",
+ type: "GET",
+ async: true,
+ beforeSend: function (xmlHttp) {
+ xmlHttp.setRequestHeader("If-Modified-Since", "0");
+ xmlHttp.setRequestHeader("Cache-Control", "no-cache");
+ },
+ success: function (retdata) {
+ var jsonbuf = JSON.parse(retdata);
+ if ("enable_python_file" in jsonbuf["system_setting"]) {
+ currentRunningFile = jsonbuf["system_setting"]["enable_python_file"];
+ g_isPythonRunning = 1;
+ if (currentRunningFile.endsWith('.py')) {
+ $('#console').html("Execute unfinished python file !!");
+ $('#console').append('
'); // 換行
+ $('#console').append("Running...");
+ $('#console').append('
'); // 換行
+ console.log("find enable python file !!!!!!!!!!!!!! ");
+ }
}
- } else {
- console.log("not found enable python setting");
+ resolve(); // 結束後解析 Promise
+ },
+ error: function (retdata) {
+ console.warn(retdata);
+ reject(retdata); // 發生錯誤時拒絕 Promise
}
-
- },
- error: function (retdata) {
- // setTimeout(func_enablePythonfile(), 3000);
- console.warn(retdata);
- }
+ });
});
}
// 新建檔案