aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorknotteye <knotteye@airmail.cc>2021-07-02 15:10:49 -0500
committerknotteye <knotteye@airmail.cc>2021-07-02 15:10:49 -0500
commitfab8de7187571a4f3f8a30966057d661a858b645 (patch)
treed050426e46e47c6d4e4e8951dcd5bf914e919fc8
parentfaae38726dd804e3246514d88f93794c23a0cdb2 (diff)
add deletion of news items
-rw-r--r--database.go5
-rw-r--r--main.go15
-rw-r--r--static/anews.html4
-rw-r--r--static/index.html3
4 files changed, 25 insertions, 2 deletions
diff --git a/database.go b/database.go
index 731f160..6a871ba 100644
--- a/database.go
+++ b/database.go
@@ -1547,6 +1547,11 @@ func getNewsItemFromDB(db *sql.DB, timestamp int) (NewsItem, error) {
return news, nil
}
+func deleteNewsItemFromDB(db *sql.DB, timestamp int) {
+ query := `delete from newsItem where time=$1`
+ db.Exec(query, timestamp)
+}
+
func WriteNewsToDB(db *sql.DB, news NewsItem) {
query := `insert into newsItem (title, content, time) values ($1, $2, $3)`
diff --git a/main.go b/main.go
index 3eb47c0..f98add9 100644
--- a/main.go
+++ b/main.go
@@ -634,6 +634,21 @@ func main() {
http.Redirect(w, r, "/", http.StatusSeeOther)
})
+
+ http.HandleFunc("/" + *Key + "/newsdelete/", func(w http.ResponseWriter, r *http.Request){
+ timestamp := r.URL.Path[13+len(*Key):]
+
+ tsint, err := strconv.Atoi(timestamp)
+
+ if(err != nil){
+ w.WriteHeader(http.StatusForbidden)
+ w.Write([]byte("404 no path"))
+ return
+ } else {
+ deleteNewsItemFromDB(db, tsint)
+ http.Redirect(w, r, "/news/", http.StatusSeeOther)
+ }
+ })
http.HandleFunc("/verify", func(w http.ResponseWriter, r *http.Request){
if(r.Method == "POST") {
diff --git a/static/anews.html b/static/anews.html
index 6527ce5..127760a 100644
--- a/static/anews.html
+++ b/static/anews.html
@@ -26,7 +26,9 @@
{{ range $i, $e := .NewsItems }}
<tr>
- <td><a href="/news/{{.Time}}">{{unixtoreadable $e.Time}} - {{$e.Title}}</a>
+ <td>
+ {{ if $.Board.ModCred }}<a href="/{{ $.Key }}/newsdelete/{{ $e.Time }}">[Delete] </a>{{end}}
+ <a href="/news/{{.Time}}">{{unixtoreadable $e.Time}} - {{$e.Title}}</a>
{{ if eq $i 0 }}
<br><p>{{$e.Content}}</p>
{{ end }}
diff --git a/static/index.html b/static/index.html
index 106a6b3..61aeab8 100644
--- a/static/index.html
+++ b/static/index.html
@@ -44,7 +44,8 @@
{{ range $i, $e := .NewsItems }}
<tr>
- <td><a href="/news/{{.Time}}">{{unixtoreadable $e.Time}} - {{$e.Title}}</a>
+ <td>{{ if $.Board.ModCred }}<a href="/{{ $.Key }}/newsdelete/{{ $e.Time }}">[Delete] </a>{{end}}
+ <a href="/news/{{.Time}}">{{unixtoreadable $e.Time}} - {{$e.Title}}</a>
{{ if eq $i 0 }}
<br><p>{{$e.Content}}</p>
{{ end }}