package fr.ydelouis.selfoss.util;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import java.util.ArrayList;
import java.util.List;
import fr.ydelouis.selfoss.entity.Article;
public class ArticleContentParser {
private Article article;
public ArticleContentParser(Article article) {
this.article = article;
}
public List<String> getImagesUrls() {
List<String> imageUrls = new ArrayList<String>();
Document document = Jsoup.parse(article.getContent());
for (Element element : document.getElementsByTag("img")) {
String src = element.attr("src");
if (src != null && !src.isEmpty()) {
imageUrls.add(src);
}
}
return imageUrls;
}
public String getTitleOfImage(String imageSrc) {
Document document = Jsoup.parse(article.getContent());
for (Element element : document.getElementsByTag("img")) {
if (imageSrc.equals(element.attr("src"))) {
return element.attr("title");
}
}
return null;
}
public String getContentWithoutImage() {
String content = article.getContent();
if (article.hasImage()) {
Document document = Jsoup.parse(content);
for (Element element : document.getElementsByTag("img")) {
String src = element.attr("src");
if (article.getImageUrl().equals(src)) {
element.remove();
document.outputSettings().charset("ISO-8859-1");
content = document.html();
break;
}
}
}
return content;
}
}