diff options
Diffstat (limited to 'page/pagelist.go')
| -rw-r--r-- | page/pagelist.go | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/page/pagelist.go b/page/pagelist.go index a5cf844..f2140f9 100644 --- a/page/pagelist.go +++ b/page/pagelist.go @@ -8,6 +8,22 @@ import ( // by the date, or date reversed type PageList []*Page +// RemoveDateless returns two PageLists, the first with valid dates, +// and the second without. This is useful if you need a PageList which +// will run SortDate and SortDateReverse without issue +func (p PageList) RemoveDateless() (PageList, PageList) { + with := PageList{} + without := PageList{} + for _, p := range p { + if p.Date != nil { + with = append(with, p) + } else { + without = append(without, p) + } + } + return with, without +} + func (p PageList) SortDate() PageList { sort.Slice(p, func(i, j int) bool { return p[i].Time().After(p[j].Time()) |
