From a14b3c3d4447cbeb77e4146fba7e0d31393e625e Mon Sep 17 00:00:00 2001 From: Joris Guyonvarch Date: Sat, 18 Apr 2015 11:03:56 +0200 Subject: Parsing images in detail and show URLs in notifications --- src/Parser/Detail.hs | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) (limited to 'src/Parser/Detail.hs') diff --git a/src/Parser/Detail.hs b/src/Parser/Detail.hs index 4144964..3a91ac2 100644 --- a/src/Parser/Detail.hs +++ b/src/Parser/Detail.hs @@ -14,12 +14,16 @@ import Parser.Utils parseDetail :: Text -> Detail parseDetail page = let tags = parseTags page - descriptionTags = getTagsBetween "
" "
" tags - description = - if null descriptionTags - then - Nothing - else - let replaceBr = map (\tag -> if tag ~== "
" then TagText (T.pack "\n") else tag) - in Just . T.strip . renderTags . replaceBr $ descriptionTags - in Detail { description = description } + description = parseDescription tags + images = getTagAttributes "" (T.pack "content") tags + in Detail { description = description, images = images } + +parseDescription :: [Tag Text] -> Maybe Text +parseDescription tags = + let descriptionTags = getTagsBetween "
" "
" tags + in if null descriptionTags + then + Nothing + else + let replaceBr = map (\tag -> if tag ~== "
" then TagText (T.pack "\n") else tag) + in Just . T.strip . renderTags . replaceBr $ descriptionTags -- cgit v1.2.3