now filling the form with the fucking data. currently, unidentified
This commit is contained in:
80
main.go
80
main.go
@@ -7,7 +7,7 @@ import (
|
||||
"fmt"
|
||||
"html/template"
|
||||
"io"
|
||||
"log"
|
||||
"log/slog"
|
||||
"net/http"
|
||||
"os"
|
||||
"strings"
|
||||
@@ -15,22 +15,24 @@ import (
|
||||
|
||||
_ "modernc.org/sqlite" // Importing SQLite driver for database interaction.
|
||||
)
|
||||
|
||||
var c chan bool
|
||||
// readHtml function reads an HTML file and applies a CSS template to it before sending it to the client.
|
||||
func readHtml(res http.ResponseWriter, req *http.Request) {
|
||||
func readHtml(res http.ResponseWriter, _ *http.Request) {
|
||||
g := template.CSS("./html/public/mod.css") // Define the CSS path.
|
||||
f, err := template.ParseFiles("./html/wsb.html") // Parse the HTML file.
|
||||
if err != nil {
|
||||
log.Println(err) // Log any errors encountered.
|
||||
slog.Error(err.Error())
|
||||
// Log any errors encountered.
|
||||
}
|
||||
err = f.Execute(res, g) // Execute the template with the CSS and send it to the client.
|
||||
if err != nil {
|
||||
log.Println(err) // Log any errors encountered.
|
||||
slog.Error(err.Error())
|
||||
// Log any errors encountered.
|
||||
}
|
||||
|
||||
}
|
||||
// simpRequestResp sends a simple response to the client.
|
||||
func simpRequestResp(res http.ResponseWriter, req *http.Request) {
|
||||
func simpRequestResp(res http.ResponseWriter, _ *http.Request) {
|
||||
fmt.Fprint(res, "Hello, M'Lord", 153*4, " I'm here to serveè") // Print a formatted string to the client.
|
||||
}
|
||||
|
||||
@@ -58,13 +60,13 @@ func queryPacks(sqldb *sql.DB, element *elements) []packages {
|
||||
defer res.Close() // Ensure the result set is closed after the function returns.
|
||||
err = res.Err() // Check for any errors during query execution.
|
||||
if err != nil {
|
||||
log.Panicln(err) // Log and panic on any errors.
|
||||
slog.Error(err.Error()) // Log and panic on any errors.
|
||||
}
|
||||
for res.Next() {
|
||||
npkg := packages{} // Create a new package instance.
|
||||
err := res.Scan(&npkg.Id, &npkg.Name, &npkg.Version, &npkg.ExtraCommand, &npkg.Tag, &npkg.Warning) // Scan the result into the package instance.
|
||||
if err != nil {
|
||||
log.Fatalln(err) // Log and exit on any errors.
|
||||
slog.Error(err.Error()) // Log and exit on any errors.
|
||||
}
|
||||
npkg.Element = element // Associate the element with the package.
|
||||
pkgs = append(pkgs, npkg) // Append the package to the slice.
|
||||
@@ -82,7 +84,8 @@ func queryDatabase(sqldb *sql.DB, queryRow string) []string {
|
||||
var values []string
|
||||
err := res.Scan(&values)
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
slog.Error(err.Error())
|
||||
|
||||
}
|
||||
return values
|
||||
}
|
||||
@@ -118,7 +121,7 @@ func searchDownloads(sqldb *sql.DB, table string, columns ...string) []DownloadE
|
||||
defer runquery.Close()
|
||||
err = runquery.Err()
|
||||
if err != nil {
|
||||
log.Fatalln(err)
|
||||
slog.Error(err.Error())
|
||||
}
|
||||
var elems []DownloadElements
|
||||
var e DownloadElements
|
||||
@@ -163,11 +166,13 @@ func stats(sqldb *sql.DB, lang string) http.Handler {
|
||||
}
|
||||
templates, err := template.ParseFiles("html/master.html", "html/statsitics.html")
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
slog.Error(err.Error())
|
||||
|
||||
}
|
||||
err = templates.ExecuteTemplate(res, "master", Counter)
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
slog.Error(err.Error())
|
||||
|
||||
}
|
||||
res.WriteHeader(http.StatusOK)
|
||||
})
|
||||
@@ -181,20 +186,21 @@ func getPkgIdFromDB(sqldb *sql.DB) []string {
|
||||
defer query.Close()
|
||||
err = query.Err()
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
slog.Error(err.Error())
|
||||
}
|
||||
var pkgs []string
|
||||
var tmpstr string
|
||||
for query.Next() {
|
||||
err = query.Scan(&tmpstr)
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
slog.Error(err.Error())
|
||||
|
||||
}
|
||||
pkgs = append(pkgs, tmpstr)
|
||||
}
|
||||
// query.Scan(&pkgs)
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
slog.Error(err.Error())
|
||||
}
|
||||
return pkgs
|
||||
}
|
||||
@@ -238,11 +244,11 @@ func uploadFileForServer(sqldb *sql.DB, lang string) http.Handler{
|
||||
}
|
||||
templates, err := template.ParseFiles("html/master.html", "html/uploadfile.html")
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
slog.Error(err.Error())
|
||||
}
|
||||
err = templates.ExecuteTemplate(res, "master", data)
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
slog.Error(err.Error())
|
||||
}
|
||||
// upload(res, req)
|
||||
res.WriteHeader(http.StatusOK)
|
||||
@@ -261,7 +267,7 @@ func upload() http.Handler {
|
||||
fn,_:=os.OpenFile("Data/"+filename, os.O_WRONLY|os.O_CREATE, 0666)
|
||||
defer fn.Close()
|
||||
fn.Write(fileBytes)
|
||||
log.Println(getDataFromFile("Data/"+filename))
|
||||
slog.Info(fmt.Sprint(getDataFromFile("Data/"+filename)))
|
||||
})}
|
||||
|
||||
// index creates an HTTP handler that serves the main page with data from the database.
|
||||
@@ -294,11 +300,11 @@ func index(sqldb *sql.DB, lang string) http.Handler {
|
||||
templates, err := template.ParseFiles("html/master.html", "html/main.html")
|
||||
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
slog.Error(err.Error())
|
||||
}
|
||||
err = templates.ExecuteTemplate(res, "master", data)
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
slog.Error(err.Error())
|
||||
}
|
||||
|
||||
res.WriteHeader(http.StatusOK)
|
||||
@@ -315,13 +321,30 @@ func public() http.Handler {
|
||||
|
||||
// main initializes the application, sets up logging, database connection, HTTP routing, and starts the server.
|
||||
func main() {
|
||||
logfilename := "Logs/" + time.Now().Format("2006-01-02--15-04-05") + ".log"
|
||||
file, err := os.OpenFile(logfilename, os.O_APPEND|os.O_CREATE, 0777)
|
||||
if err != nil {
|
||||
os.Exit(12)
|
||||
}
|
||||
|
||||
log.SetOutput(file)
|
||||
// Check if the directory exists
|
||||
if _, err := os.Stat("Logs/"); os.IsNotExist(err) {
|
||||
// Create your directory if it does not exist
|
||||
err = os.Mkdir("Logs/", 0755)
|
||||
if err != nil {
|
||||
fmt.Println(err)
|
||||
}
|
||||
}
|
||||
handlerOpts := &slog.HandlerOptions{
|
||||
Level: slog.LevelDebug,
|
||||
}
|
||||
logfilename := "Logs/" + time.Now().Format("2006-01-02--15-04-05") + ".log"
|
||||
file, err := os.OpenFile(logfilename, os.O_WRONLY|os.O_APPEND|os.O_CREATE, 0777)
|
||||
defer file.Close()
|
||||
log:=slog.New(slog.NewTextHandler(file,handlerOpts ))
|
||||
slog.SetDefault(log)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
|
||||
// Write a log entry
|
||||
slog.Info("This is a test log entry")
|
||||
db, _ := sql.Open("sqlite", "file:progs.db")
|
||||
mux := http.NewServeMux()
|
||||
mux.Handle("/public/", public())
|
||||
@@ -330,6 +353,7 @@ func main() {
|
||||
mux.Handle("/stats", stats(db,"eng"))
|
||||
mux.Handle("/up", uploadFileForServer(db,"eng"))
|
||||
mux.Handle("/upload",upload())
|
||||
mux.Handle("/pkg",getJson(db))
|
||||
addr := fmt.Sprintf(":%s", "12312")
|
||||
server := http.Server{
|
||||
Addr: addr,
|
||||
@@ -340,9 +364,9 @@ func main() {
|
||||
}
|
||||
|
||||
if err := server.ListenAndServe(); err != nil {
|
||||
log.Fatalf("main: couldn't start simple server: %v\n", err)
|
||||
log.Error("main: couldn't start simple server: %v\n", err)
|
||||
}
|
||||
lang := "heb"
|
||||
|
||||
log.Println(getMsgFromDB(db, "title", lang))
|
||||
log.Info(getMsgFromDB(db, "title", lang))
|
||||
}
|
||||
|
Reference in New Issue
Block a user