Adds pagination to admin sites, using the "id" query parameter
This commit is contained in:
parent
a50018f64f
commit
b220dec55b
|
@ -27,20 +27,39 @@ func renderHomepage(c *gin.Context) {
|
||||||
// Admin
|
// Admin
|
||||||
func renderAdminInbox(c *gin.Context) {
|
func renderAdminInbox(c *gin.Context) {
|
||||||
var ITs []database.Item
|
var ITs []database.Item
|
||||||
database.Db.Order("created_at ASC").Find(&ITs, "state = ?", database.Inbox)
|
id := c.DefaultQuery("id", "0")
|
||||||
|
if id == "0" {
|
||||||
|
database.Db.Where("state = ?", database.Inbox).Order("created_at ASC").Limit(20).Find(&ITs)
|
||||||
c.HTML(200, "admin.html", gin.H{"its": ITs, "title": "SocialDragon – Admin – Inbox", "state": database.Inbox})
|
c.HTML(200, "admin.html", gin.H{"its": ITs, "title": "SocialDragon – Admin – Inbox", "state": database.Inbox})
|
||||||
|
} else {
|
||||||
|
database.Db.Where("state = ? and id > ?", database.Inbox, id).Order("created_at ASC").Limit(20).Find(&ITs)
|
||||||
|
c.JSON(200, ITs)
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func renderAdminApproved(c *gin.Context) {
|
func renderAdminApproved(c *gin.Context) {
|
||||||
var ITs []database.Item
|
var ITs []database.Item
|
||||||
database.Db.Order("updated_at DESC").Find(&ITs, "state = ?", database.Approved)
|
id := c.DefaultQuery("id", "0")
|
||||||
|
if id == "0" {
|
||||||
|
database.Db.Where("state = ?", database.Approved).Order("updated_at DESC").Limit(20).Find(&ITs)
|
||||||
c.HTML(200, "admin.html", gin.H{"its": ITs, "title": "SocialDragon – Admin – Approved", "state": database.Approved})
|
c.HTML(200, "admin.html", gin.H{"its": ITs, "title": "SocialDragon – Admin – Approved", "state": database.Approved})
|
||||||
|
} else {
|
||||||
|
database.Db.Where("state = ? and id < ?", database.Approved, id).Order("updated_at DESC").Limit(20).Find(&ITs)
|
||||||
|
c.JSON(200, ITs)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func renderAdminRejected(c *gin.Context) {
|
func renderAdminRejected(c *gin.Context) {
|
||||||
var ITs []database.Item
|
var ITs []database.Item
|
||||||
database.Db.Order("updated_at DESC").Find(&ITs, "state = ?", database.Rejected)
|
id := c.DefaultQuery("id", "0")
|
||||||
|
if id == "0" {
|
||||||
|
database.Db.Where("state = ?", database.Rejected).Order("updated_at DESC").Limit(20).Find(&ITs)
|
||||||
c.HTML(200, "admin.html", gin.H{"its": ITs, "title": "SocialDragon – Admin – Rejected", "state": database.Rejected})
|
c.HTML(200, "admin.html", gin.H{"its": ITs, "title": "SocialDragon – Admin – Rejected", "state": database.Rejected})
|
||||||
|
} else {
|
||||||
|
database.Db.Where("state = ? and id < ?", database.Rejected, id).Order("updated_at DESC").Limit(20).Find(&ITs)
|
||||||
|
c.JSON(200, ITs)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func approveSnap(c *gin.Context) {
|
func approveSnap(c *gin.Context) {
|
||||||
|
|
Loading…
Reference in a new issue