code.gitea.io/gitea@v1.22.3/services/context/utils.go (about) 1 // Copyright 2017 The Gitea Authors. All rights reserved. 2 // SPDX-License-Identifier: MIT 3 4 package context 5 6 import ( 7 "strings" 8 "time" 9 ) 10 11 // GetQueryBeforeSince return parsed time (unix format) from URL query's before and since 12 func GetQueryBeforeSince(ctx *Base) (before, since int64, err error) { 13 before, err = parseFormTime(ctx, "before") 14 if err != nil { 15 return 0, 0, err 16 } 17 18 since, err = parseFormTime(ctx, "since") 19 if err != nil { 20 return 0, 0, err 21 } 22 return before, since, nil 23 } 24 25 // parseTime parse time and return unix timestamp 26 func parseFormTime(ctx *Base, name string) (int64, error) { 27 value := strings.TrimSpace(ctx.FormString(name)) 28 if len(value) != 0 { 29 t, err := time.Parse(time.RFC3339, value) 30 if err != nil { 31 return 0, err 32 } 33 if !t.IsZero() { 34 return t.Unix(), nil 35 } 36 } 37 return 0, nil 38 }