summaryrefslogtreecommitdiff
path: root/internal/entry/entry.go
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2024-12-25 23:27:01 +0200
committerPaul Buetow <paul@buetow.org>2024-12-25 23:27:01 +0200
commit35f393acae883eecdac98d2fceb85961f05ca848 (patch)
tree9bd3b554693f35cee6665a3177b139bec74fe94c /internal/entry/entry.go
parent17b6631a084062f06dcd39da44bedcd6bc26a839 (diff)
use range over functions to get all the entries
Diffstat (limited to 'internal/entry/entry.go')
-rw-r--r--internal/entry/entry.go20
1 files changed, 20 insertions, 0 deletions
diff --git a/internal/entry/entry.go b/internal/entry/entry.go
index 7570c0b..cfec5fe 100644
--- a/internal/entry/entry.go
+++ b/internal/entry/entry.go
@@ -196,6 +196,26 @@ func (en Entry) extractTags(parts []string) {
}
}
+func (en Entry) Timestamp() (time.Time, error) {
+ fileInfo, err := os.Stat(en.Path)
+ if err != nil {
+ return time.Time{}, err
+ }
+ return fileInfo.ModTime(), nil
+}
+
+func (en Entry) After(other Entry) (bool, error) {
+ t1, err := en.Timestamp()
+ if err != nil {
+ return false, err
+ }
+ t2, err := other.Timestamp()
+ if err != nil {
+ return false, err
+ }
+ return t1.After(t2), nil
+}
+
func extractURLs(input string) []string {
urlPattern := `(http://|https://|ftp://)[^\s]+`
re := regexp.MustCompile(urlPattern)