From 516b4a1966e6b5fb99421a49bfd50a711460c3de Mon Sep 17 00:00:00 2001 From: Eduard Urbach Date: Mon, 26 Mar 2018 22:24:42 +0200 Subject: [PATCH] Added a patch to fix broken relations --- .../fix-broken-relations.go | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 patches/fix-broken-relations/fix-broken-relations.go diff --git a/patches/fix-broken-relations/fix-broken-relations.go b/patches/fix-broken-relations/fix-broken-relations.go new file mode 100644 index 00000000..dfd55cf8 --- /dev/null +++ b/patches/fix-broken-relations/fix-broken-relations.go @@ -0,0 +1,35 @@ +package main + +import ( + "github.com/animenotifier/arn" + "github.com/fatih/color" +) + +func main() { + color.Yellow("Fixing broken anime relations") + + defer arn.Node.Close() + + count := 0 + + for relations := range arn.StreamAnimeRelations() { + brokenIDs := []string{} + + for _, item := range relations.Items { + _, err := arn.GetAnime(item.AnimeID) + + if err != nil { + brokenIDs = append(brokenIDs, item.AnimeID) + } + } + + for _, brokenID := range brokenIDs { + relations.Remove(brokenID) + count++ + } + + relations.Save() + } + + color.Green("Finished removing %d broken relations.", count) +}