a page with no replies

This commit is contained in:
Ted Unangst 2019-09-26 11:28:05 -04:00
parent a85f05c86b
commit f96479423f
4 changed files with 18 additions and 2 deletions

View File

@ -119,6 +119,11 @@ func gethonksforuser(userid int64) []*Honk {
rows, err := stmtHonksForUser.Query(userid, dt, userid, userid)
return getsomehonks(rows, err)
}
func gethonksforuserfirstclass(userid int64) []*Honk {
dt := time.Now().UTC().Add(-7 * 24 * time.Hour).Format(dbtimeformat)
rows, err := stmtHonksForUserFirstClass.Query(userid, dt, userid, userid)
return getsomehonks(rows, err)
}
func gethonksforme(userid int64) []*Honk {
dt := time.Now().UTC().Add(-7 * 24 * time.Hour).Format(dbtimeformat)
rows, err := stmtHonksForMe.Query(userid, dt, userid)
@ -343,7 +348,7 @@ var stmtAddDoover, stmtGetDoovers, stmtLoadDoover, stmtZapDoover, stmtOneHonker
var stmtThumbBiters, stmtDeleteHonk, stmtDeleteDonks, stmtDeleteOnts, stmtSaveZonker *sql.Stmt
var stmtGetZonkers, stmtRecentHonkers, stmtGetXonker, stmtSaveXonker, stmtDeleteXonker *sql.Stmt
var stmtSelectOnts, stmtSaveOnt, stmtUpdateFlags, stmtClearFlags *sql.Stmt
var stmtSaveOld, stmtUpdateHonk *sql.Stmt
var stmtHonksForUserFirstClass, stmtSaveOld, stmtUpdateHonk *sql.Stmt
func preparetodie(db *sql.DB, s string) *sql.Stmt {
stmt, err := db.Prepare(s)
@ -369,6 +374,7 @@ func prepareStatements(db *sql.DB) {
stmtPublicHonks = preparetodie(db, selecthonks+"where whofore = 2 and dt > ?"+limit)
stmtUserHonks = preparetodie(db, selecthonks+"where (whofore = 2 or whofore = ?) and username = ? and dt > ?"+limit)
stmtHonksForUser = preparetodie(db, selecthonks+"where honks.userid = ? and dt > ? and honker in (select xid from honkers where userid = ? and flavor = 'sub' and combos not like '% - %')"+butnotthose+limit)
stmtHonksForUserFirstClass = preparetodie(db, selecthonks+"where honks.userid = ? and dt > ? and (what <> 'tonk') and honker in (select xid from honkers where userid = ? and flavor = 'sub' and combos not like '% - %')"+butnotthose+limit)
stmtHonksForMe = preparetodie(db, selecthonks+"where honks.userid = ? and dt > ? and whofore = 1"+butnotthose+limit)
stmtHonksByHonker = preparetodie(db, selecthonks+"join honkers on (honkers.xid = honks.honker or honkers.xid = honks.oonker) where honks.userid = ? and honkers.name = ?"+butnotthose+limit)
stmtHonksByXonker = preparetodie(db, selecthonks+" where honks.userid = ? and (honker = ? or oonker = ?)"+butnotthose+limit)

View File

@ -20,6 +20,7 @@
<summary>menu</summary>
<p>
<ul>
<li><a id="firstlink" href="/first">first</a>
<li><a href="/{{ .UserSep }}/{{ .UserInfo.Username }}">{{ .UserInfo.Username }}</a>
<li><a href="/honkers">honkers</a>
<li style="list-style-type:none; margin-left:-1em">

View File

@ -166,8 +166,10 @@ function relinklinks() {
(function() {
var el = document.getElementById("homelink")
el.onclick = pageswitcher("home", "")
var el = document.getElementById("atmelink")
el = document.getElementById("atmelink")
el.onclick = pageswitcher("atme", "")
el = document.getElementById("firstlink")
el.onclick = pageswitcher("first", "")
relinklinks()
window.onpopstate = statechanger
history.replaceState(curpagestate, "some title", "")

7
web.go
View File

@ -90,6 +90,10 @@ func homepage(w http.ResponseWriter, r *http.Request) {
if r.URL.Path == "/atme" {
templinfo["PageName"] = "atme"
honks = gethonksforme(userid)
} else if r.URL.Path == "/first" {
templinfo["PageName"] = "first"
honks = gethonksforuser(userid)
honks = osmosis(honks, userid)
} else {
templinfo["PageName"] = "home"
honks = gethonksforuser(userid)
@ -1419,6 +1423,9 @@ func webhydra(w http.ResponseWriter, r *http.Request) {
case "home":
honks = gethonksforuser(userid)
honks = osmosis(honks, userid)
case "first":
honks = gethonksforuserfirstclass(userid)
honks = osmosis(honks, userid)
case "combo":
c := r.FormValue("c")
honks = gethonksbycombo(userid, c)