DB: sort by date

This commit is contained in:
aceberg 2022-08-24 16:04:28 +07:00
parent 177ba13497
commit 58ab0291b1
6 changed files with 22 additions and 14 deletions

View file

@ -3,14 +3,14 @@ name: Docker
on: on:
push: push:
branches: [ "main" ] branches: [ "main" ]
paths-ignore: paths:
- '**.md' - 'Dockerfile'
- 'Makefile' - 'scr/**'
pull_request: pull_request:
branches: [ "main" ] branches: [ "main" ]
paths-ignore: paths:
- '**.md' - 'Dockerfile'
- 'Makefile' - 'scr/**'
env: env:
IMAGE_NAME: watchyourlan IMAGE_NAME: watchyourlan

View file

@ -7,12 +7,12 @@ RUN cd /src && go build .
FROM alpine FROM alpine
WORKDIR /app
RUN apk add --no-cache tzdata arp-scan \ RUN apk add --no-cache tzdata arp-scan \
&& mkdir /data && mkdir /data
COPY src/templates /app/templates COPY src/templates /app/templates
COPY --from=builder /src/watchyourlan /app/ COPY --from=builder /src/watchyourlan /app/
WORKDIR /app
ENTRYPOINT ["./watchyourlan"] ENTRYPOINT ["./watchyourlan"]

View file

@ -21,7 +21,7 @@ func db_select() (dbHosts []Host) {
db, _ := sql.Open("sqlite3", AppConfig.DbPath) db, _ := sql.Open("sqlite3", AppConfig.DbPath)
defer db.Close() defer db.Close()
sqlStatement := `SELECT * FROM "now"` sqlStatement := `SELECT * FROM "now" ORDER BY DATE DESC`
res, err := db.Query(sqlStatement) res, err := db.Query(sqlStatement)
if err != nil { if err != nil {

View file

@ -8,9 +8,16 @@ import (
) )
func index(w http.ResponseWriter, r *http.Request) { func index(w http.ResponseWriter, r *http.Request) {
//fmt.Println(AllHosts) type allData struct {
Config Conf
Hosts []Host
}
var guiData allData
guiData.Config = AppConfig
guiData.Hosts = AllHosts
tmpl, _ := template.ParseFiles("templates/index.html", "templates/header.html") tmpl, _ := template.ParseFiles("templates/index.html", "templates/header.html")
tmpl.ExecuteTemplate(w, "index", AllHosts) tmpl.ExecuteTemplate(w, "index", guiData)
} }
func update_host(w http.ResponseWriter, r *http.Request) { func update_host(w http.ResponseWriter, r *http.Request) {

View file

@ -4,7 +4,7 @@
<title>Watch Your LAN</title> <title>Watch Your LAN</title>
<meta charset="utf-8"> <meta charset="utf-8">
<!--Auto refresh (seconds)--> <!--Auto refresh (seconds)-->
<!-- <meta http-equiv="refresh" content="60"> --> <!-- <meta http-equiv="refresh" content="{{ .Config.Timeout }}"> -->
<!--Favicon--> <!--Favicon-->
<link href="data:image/x-icon;base64,AAABAAEAEBAQAAEABAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAAAAAAgAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAA/6k7AP+uSQD/z50A7urjAD85MgAAOO8AWlpaAADIawAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADEREQAAAAAzEREREQAAAzEREREREAAzFxEREVERADN3d3VVVREDM3d3dYVlERMzd3d1VVUREzM3ERESERETMzcRESERERMzNxESMREREzM3ESNEQREwMzcSMxEREwAzNyM0REQzAAMzMzMzMzAAADMzMzMzAAAAADMzMwAAD4HwAA4AcAAMADAACAAQAAgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIABAACAAQAAwAMAAOAHAAD4HwAA" rel="icon" type="image/x-icon" /> <link href="data:image/x-icon;base64,AAABAAEAEBAQAAEABAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAAAAAAgAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAA/6k7AP+uSQD/z50A7urjAD85MgAAOO8AWlpaAADIawAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADEREQAAAAAzEREREQAAAzEREREREAAzFxEREVERADN3d3VVVREDM3d3dYVlERMzd3d1VVUREzM3ERESERETMzcRESERERMzNxESMREREzM3ESNEQREwMzcSMxEREwAzNyM0REQzAAMzMzMzMzAAADMzMzMzAAAAADMzMwAAD4HwAA4AcAAMADAACAAQAAgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIABAACAAQAAwAMAAOAHAAD4HwAA" rel="icon" type="image/x-icon" />
<!--Bootstrap theme--> <!--Bootstrap theme-->

View file

@ -5,6 +5,7 @@
<body> <body>
<div class="container mt-3"> <div class="container mt-3">
<h2>Online</h2> <h2>Online</h2>
<p>Scanning interface: {{ .Config.Iface }}</p>
<table class="table table-striped"> <table class="table table-striped">
<tr> <tr>
<th>Name</th> <th>Name</th>
@ -13,7 +14,7 @@
<th>Hardware</th> <th>Hardware</th>
<th>Known</th> <th>Known</th>
</tr> </tr>
{{ range . }} {{ range .Hosts }}
{{ if eq .Now 1 }} {{ if eq .Now 1 }}
<tr> <tr>
<td>{{ .Name }}</td> <td>{{ .Name }}</td>
@ -41,7 +42,7 @@
<th>Last seen</th> <th>Last seen</th>
<th>Known</th> <th>Known</th>
</tr> </tr>
{{ range . }} {{ range .Hosts }}
<form action="/update_host/" method="post"> <form action="/update_host/" method="post">
<input name="id" type="hidden" class="form-control" value="{{ .Id }}"> <input name="id" type="hidden" class="form-control" value="{{ .Id }}">
<tr> <tr>