~gbmor/getwtxt

525f339c80d6e8662d5a981bcecd3910dbe5987a — Ben Morrison 5 months ago 9ff5307 v0.4.15
dealing with time is hard
1 files changed, 13 insertions(+), 1 deletions(-)

M registry/fetch.go
M registry/fetch.go => registry/fetch.go +13 -1
@@ 186,11 186,23 @@ func ParseUserTwtxt(twtxt []byte, nickname, urlKey string) (TimeMap, error) {
			return nil, fmt.Errorf("improperly formatted data in twtxt file")
		}

		noSeconds := false
		count := strings.Count(columns[0], ":")

		if strings.Contains(columns[0], "Z") {
			split := strings.Split(columns[0], "Z")
			if len(split[1]) > 0 && count == 2 {
				noSeconds = true
			}
		} else if count == 2 {
			noSeconds = true
		}

		var thetime time.Time
		var err error
		if strings.Contains(columns[0], ".") {
			thetime, err = time.Parse(time.RFC3339Nano, columns[0])
		} else if strings.Count(columns[0], ":") == 2 {
		} else if noSeconds {
			// this means they're probably not including seconds into the datetime
			thetime, err = time.Parse(rfc3339WithoutSeconds, columns[0])
		} else {