diff options
author | Teddy Wing | 2018-04-15 13:51:13 +0200 |
---|---|---|
committer | Teddy Wing | 2018-04-15 13:51:13 +0200 |
commit | 10be3d81230deb8952897b3ba41e415388377ffc (patch) | |
tree | 3021712f93b4ba346fdcc91c4ddf1998959514c9 | |
parent | f47ecec40460292e66def0bfeb048dbc12301176 (diff) | |
download | meetup-find-events-rss-10be3d81230deb8952897b3ba41e415388377ffc.tar.bz2 |
meetup_rss: Use HTML formatting for description
Well, turns out that the RSS item `description` field uses HTML, so my
`\n`s didn't actually change the formatting in a real RSS reader. Use
HTML tag formatting instead to get our description header with date and
venue to look right.
-rw-r--r-- | src/meetup_rss.rs | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/src/meetup_rss.rs b/src/meetup_rss.rs index 99c0009..b0339cd 100644 --- a/src/meetup_rss.rs +++ b/src/meetup_rss.rs @@ -11,12 +11,10 @@ pub fn generate(events: &Vec<Event>) -> Result<Channel> { item.set_title(event.name.clone()); item.set_link(event.link.clone()); item.set_description( - join_nonempty( - &[ - description_header(&event), - event.description.clone().unwrap_or("".to_owned()), - ], - "\n\n", + format!( + "<p>{}</p>{}", + description_header(&event), + event.description.clone().unwrap_or("".to_owned()), ) ); @@ -75,7 +73,7 @@ fn description_header(event: &Event) -> String { "".to_owned() }; - join_nonempty(&[when, place], "\n") + join_nonempty(&[when, place], "<br />") } /// Joins a slice of `String`s with `separator`, filtering out empty strings. @@ -116,7 +114,7 @@ mod tests { assert_eq!(event.link, item.link().unwrap()); assert_eq!( format!( - "When: {} {}\n\n{}", + "<p>When: {} {}</p>{}", event.local_date.clone().unwrap(), event.local_time.clone().unwrap(), event.description.clone().unwrap(), @@ -144,8 +142,7 @@ mod tests { let header = description_header(&event); assert_eq!( - "When: 2018-04-15 19:00 -Where: Passage, 99 Passage des Panoramas, Paris, France", + "When: 2018-04-15 19:00<br />Where: Passage, 99 Passage des Panoramas, Paris, France", header ); } |