Záznam jízdy služebního vozu
-Systém pro evidenci služebních jízd.
- - Otevřít aplikaci - -Canboard úkolníček
-Správa úkolů a projektů v přehledném kanban stylu
- - Otevřít aplikaci - -From af5e92d8179c6424746d04f9e209386ce59c8f28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Dvo=C5=99=C3=A1k?= <150935816+Dvorinka@users.noreply.github.com> Date: Wed, 21 May 2025 09:10:43 +0200 Subject: [PATCH] Add files via upload --- folderopener/main.go | 68 +++++++ folderopener/start_server.bat | 4 + index.html | 326 +++++++++++++++++++++------------- main.go | 55 +++++- 4 files changed, 330 insertions(+), 123 deletions(-) create mode 100644 folderopener/main.go create mode 100644 folderopener/start_server.bat diff --git a/folderopener/main.go b/folderopener/main.go new file mode 100644 index 0000000..abfb20a --- /dev/null +++ b/folderopener/main.go @@ -0,0 +1,68 @@ +package main + +import ( + "fmt" + "log" + "net/http" + "os/exec" + "strings" +) + +func main() { + // Set up HTTP server + http.HandleFunc("/open", openFolderHandler) + + // Start server on port 8080 + fmt.Println("Folder opener server running on http://localhost:8080") + log.Fatal(http.ListenAndServe(":8080", nil)) +} + +func openFolderHandler(w http.ResponseWriter, r *http.Request) { + // Set CORS headers to allow requests from any origin + w.Header().Set("Access-Control-Allow-Origin", "*") + w.Header().Set("Access-Control-Allow-Methods", "GET, OPTIONS") + w.Header().Set("Access-Control-Allow-Headers", "Content-Type") + + // Handle preflight OPTIONS request + if r.Method == "OPTIONS" { + w.WriteHeader(http.StatusOK) + return + } + + // Only allow GET requests + if r.Method != "GET" { + http.Error(w, "Method not allowed", http.StatusMethodNotAllowed) + return + } + + // Get the folder path from the query parameter + folderPath := r.URL.Query().Get("path") + if folderPath == "" { + http.Error(w, "Missing path parameter", http.StatusBadRequest) + return + } + + // Log the request + fmt.Printf("Opening folder: %s\n", folderPath) + + // Open the folder in Windows Explorer + // The /select flag opens Explorer with the specified folder selected + cmd := exec.Command("explorer.exe", folderPath) + err := cmd.Start() + + if err != nil { + // If there was an error, try to clean the path and retry + cleanPath := strings.ReplaceAll(folderPath, "/", "\\") + cmd = exec.Command("explorer.exe", cleanPath) + err = cmd.Start() + + if err != nil { + http.Error(w, fmt.Sprintf("Error opening folder: %v", err), http.StatusInternalServerError) + return + } + } + + // Return success response + w.WriteHeader(http.StatusOK) + fmt.Fprintf(w, "Opening folder: %s", folderPath) +} diff --git a/folderopener/start_server.bat b/folderopener/start_server.bat new file mode 100644 index 0000000..32ac4a2 --- /dev/null +++ b/folderopener/start_server.bat @@ -0,0 +1,4 @@ +@echo off +echo Starting Folder Opener Server... +cd %~dp0 +go run main.go diff --git a/index.html b/index.html index 6453f9f..f1b1824 100644 --- a/index.html +++ b/index.html @@ -1,123 +1,205 @@ - - -
- - -Rychlý přístup ke všem důležitým systémům
-Systém pro evidenci služebních jízd.
- - Otevřít aplikaci - -Správa úkolů a projektů v přehledném kanban stylu
- - Otevřít aplikaci - -Rychlý přístup ke všem důležitým systémům
+Systém pro evidenci služebních jízd.
+ + Otevřít aplikaci + +Aktuální telefonní seznam společnosti
+Přístup k firemní řízené dokumentaci
+Systém pro správu a sledování firemních úkolů
+