From f41360d864bfa3fb850d669a0a8321820fc550de Mon Sep 17 00:00:00 2001 From: Unknwon Date: Sat, 5 Dec 2015 01:09:14 -0500 Subject: #2052 advanced select ops for system notices --- models/admin.go | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'models/admin.go') diff --git a/models/admin.go b/models/admin.go index f2ddf11e..1d6bf629 100644 --- a/models/admin.go +++ b/models/admin.go @@ -5,9 +5,12 @@ package models import ( + "strings" "time" "github.com/Unknwon/com" + + "github.com/gogits/gogs/modules/base" ) type NoticeType int @@ -18,7 +21,7 @@ const ( // Notice represents a system notice for admin. type Notice struct { - Id int64 + ID int64 `xorm:"pk autoincr"` Type NoticeType Description string `xorm:"TEXT"` Created time.Time `xorm:"CREATED"` @@ -71,3 +74,12 @@ func DeleteNotices(start, end int64) error { _, err := sess.Delete(new(Notice)) return err } + +// DeleteNoticesByIDs deletes notices by given IDs. +func DeleteNoticesByIDs(ids []int64) error { + if len(ids) == 0 { + return nil + } + _, err := x.Where("id IN (" + strings.Join(base.Int64sToStrings(ids), ",") + ")").Delete(new(Notice)) + return err +} -- cgit v1.2.3