func itmify(o *rss.Item, ch *rss.Channel) Itm { var x Itm x.Title = o.Title x.Links = o.Links x.ChannelKey = ch.Key() x.Description = o.Description x.Author = o.Author x.Categories = o.Categories x.Comments = o.Comments x.Enclosures = o.Enclosures x.Guid = o.Guid x.PubDate = o.PubDate x.Id = o.Id x.Key = o.Key() x.Generator = o.Generator x.Contributors = o.Contributors x.Content = o.Content x.Extensions = o.Extensions x.Date, _ = o.ParsedPubDate() if o.Content != nil && o.Content.Text != "" { x.FullContent = o.Content.Text } else { x.FullContent = o.Description } return x }
func itemHandler(feed *rss.Feed, ch *rss.Channel, newitems []*rss.Item) { for _, item := range newitems { var f Feed var i Item f.Title = ch.Key() f.Description = ch.Description f.Url = ch.Links[0].Href i.Title = item.Title i.Key = item.Key() i.PubDate = item.PubDate i.Description = item.Description i.Url = item.Links[0].Href insertSQL(f, i) } }
func itemHandler(feed *rss.Feed, ch *rss.Channel, newitems []*rss.Item) { logger.Debug.Println(strconv.Itoa(len(newitems)) + " available episodes for " + ch.Title) logger.Debug.Println("Channel : ", ch) if ch.Title == "" { if ch.Author.Name != "" { ch.Title = ch.Author.Name } else if ch.Description != "" { ch.Title = ch.Description } else { ch.Title = extractResourceNameFromURL(feed.Url) } logger.Warning.Println("Missing podcast title in the feed, this replacement will be used : " + ch.Title) } podcast := NewPodcast(targetFolder, ch) podcast.fetchNewEpisodes(newitems) }
func chnlify(url string, o *rss.Channel) Chnl { var x Chnl x.ObjectId = url x.Key = o.Key() x.Title = o.Title x.Links = o.Links x.Description = o.Description x.Language = o.Language x.Copyright = o.Copyright x.ManagingEditor = o.ManagingEditor x.WebMaster = o.WebMaster x.PubDate = o.PubDate x.LastBuildDate = o.LastBuildDate x.Docs = o.Docs x.Categories = o.Categories x.Generator = o.Generator x.TTL = o.TTL x.Rating = o.Rating x.SkipHours = o.SkipHours x.SkipDays = o.SkipDays x.Image = o.Image x.Cloud = o.Cloud x.TextInput = o.TextInput x.Extensions = o.Extensions x.Id = o.Id x.Rights = o.Rights x.Author = o.Author x.SubTitle = o.SubTitle var keys []string for _, y := range o.Items { keys = append(keys, y.Key()) } x.ItemKeys = keys return x }