Skip to content

Commit

Permalink
add notes
Browse files Browse the repository at this point in the history
  • Loading branch information
kazhuravlev authored and avelino committed Apr 3, 2023
1 parent fa03759 commit 65dc56e
Showing 1 changed file with 15 additions and 10 deletions.
25 changes: 15 additions & 10 deletions main.go
Original file line number Diff line number Diff line change
Expand Up @@ -166,16 +166,21 @@ func makeObjByID(selector string, s *goquery.Selection) (*Object, error) {
var obj Object
var err error

s.Find(selector).Each(func(_ int, s *goquery.Selection) {
desc := s.NextFiltered("p")
ul := s.NextFilteredUntil("ul", "h2")
s.Find(selector).Each(func(_ int, selCatHeader *goquery.Selection) {
selDescr := selCatHeader.NextFiltered("p")
// FIXME: bug. this would select links from all neighboring
// sub-categories until the next category. To prevent this we should
// find only first ul
ul := selCatHeader.NextFilteredUntil("ul", "h2")

var links []Link
ul.Find("li").Each(func(_ int, s *goquery.Selection) {
url, _ := s.Find("a").Attr("href")
ul.Find("li").Each(func(_ int, selLi *goquery.Selection) {
selLink := selLi.Find("a")
url, _ := selLink.Attr("href")
link := Link{
Title: s.Find("a").Text(),
Description: s.Text(),
Title: selLink.Text(),
// FIXME: Title contains only title but description contains Title + description
Description: selLi.Text(),
Url: url,
}
links = append(links, link)
Expand All @@ -186,9 +191,9 @@ func makeObjByID(selector string, s *goquery.Selection) (*Object, error) {
return
}
obj = Object{
Slug: slug.Generate(s.Text()),
Title: s.Text(),
Description: desc.Text(),
Slug: slug.Generate(selCatHeader.Text()),
Title: selCatHeader.Text(),
Description: selDescr.Text(),
Items: links,
}
})
Expand Down

0 comments on commit 65dc56e

Please sign in to comment.