Browse Source

Optimized error message

Toby Chui 8 months ago
parent
commit
36403f68df
3 changed files with 10 additions and 7 deletions
  1. 6 3
      docker.go
  2. 2 4
      web/components/rules.html
  3. 2 0
      web/snippet/dockerContainersList.html

+ 6 - 3
docker.go

@@ -22,20 +22,23 @@ func HandleDockerAvailable(w http.ResponseWriter, r *http.Request) {
 func HandleDockerContainersList(w http.ResponseWriter, r *http.Request) {
 	apiClient, err := client.NewClientWithOpts(client.WithVersion("1.43"))
 	if err != nil {
-		utils.SendErrorResponse(w, err.Error())
+		SystemWideLogger.PrintAndLog("Docker", "Unable to create new docker client", err)
+		utils.SendErrorResponse(w, "Docker client initiation failed")
 		return
 	}
 	defer apiClient.Close()
 
 	containers, err := apiClient.ContainerList(context.Background(), container.ListOptions{All: true})
 	if err != nil {
-		utils.SendErrorResponse(w, err.Error())
+		SystemWideLogger.PrintAndLog("Docker", "List docker container failed", err)
+		utils.SendErrorResponse(w, "List docker container failed")
 		return
 	}
 
 	networks, err := apiClient.NetworkList(context.Background(), types.NetworkListOptions{})
 	if err != nil {
-		utils.SendErrorResponse(w, err.Error())
+		SystemWideLogger.PrintAndLog("Docker", "List docker network failed", err)
+		utils.SendErrorResponse(w, "List docker network failed")
 		return
 	}
 

+ 2 - 4
web/components/rules.html

@@ -26,13 +26,11 @@
                     </div>
                     <div class="field">
                         <label>Target IP Address or Domain Name with port</label>
-                        
                             <input type="text" id="proxyDomain" onchange="autoCheckTls(this.value);">
-                        
                         <small>E.g. 192.168.0.101:8000 or example.com</small>
                     </div>
                     <div class="field dockerOptimizations" style="display:none;">
-                        <button class="ui basic button" onclick="openDockerContainersList();"><i class="blue docker icon"></i> Pick from Docker Containers</button>
+                        <button style="margin-top: -2em;" class="ui basic small button" onclick="openDockerContainersList();"><i class="blue docker icon"></i> Pick from Docker Containers</button>
                     </div>
                     <div class="field">
                         <div class="ui checkbox">
@@ -434,7 +432,7 @@
 
     /* Docker Optimizations */
     function initDockerUXOptimizations(){
-        $("/api/docker/available", function(dockerAvailable){
+        $.get("/api/docker/available", function(dockerAvailable){
             if (dockerAvailable){
                 $(".dockerOptimizations").show();
             }else{

+ 2 - 0
web/snippet/dockerContainersList.html

@@ -118,9 +118,11 @@
                 `Error loading data: ${dockerData.error || hostData.error}`,
                 false
               );
+              $("#containersList").html(`<div class="ui basic segment"><i class="ui red times icon"></i> ${dockerData.error || hostData.error}</div>`);
             }
           })
           .catch((error) => {
+            console.log(error.responseText);
             parent.msgbox("Error loading data: " + error.message, false);
           });
       }