aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/MangaGeneric.cpp
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2021-04-29 00:21:50 +0200
committerdec05eba <dec05eba@protonmail.com>2021-04-29 00:21:50 +0200
commit7dc7ee78094a3d76e8cb70d724a7054d59347369 (patch)
tree317db7e9bd14805b62601dc07927a51acf7cbb3d /src/plugins/MangaGeneric.cpp
parent67618e51ed44effba871447255a5e7389969ccaa (diff)
Add xvideos and xhamster
Diffstat (limited to 'src/plugins/MangaGeneric.cpp')
-rw-r--r--src/plugins/MangaGeneric.cpp38
1 files changed, 16 insertions, 22 deletions
diff --git a/src/plugins/MangaGeneric.cpp b/src/plugins/MangaGeneric.cpp
index b3326fc..48533b8 100644
--- a/src/plugins/MangaGeneric.cpp
+++ b/src/plugins/MangaGeneric.cpp
@@ -49,6 +49,20 @@ namespace QuickMedia {
return quickmedia_html_node_get_attribute_value(node, field_name);
}
+ static void body_items_prepend_website_url(BodyItems &body_items, const std::string &website_url) {
+ for(auto &body_item : body_items) {
+ if(string_starts_with(body_item->url, "//"))
+ body_item->url = "https://" + body_item->url.substr(2);
+ else if(string_starts_with(body_item->url, "/"))
+ body_item->url = website_url + body_item->url.substr(1);
+
+ if(string_starts_with(body_item->thumbnail_url, "//"))
+ body_item->thumbnail_url = "https://" + body_item->thumbnail_url.substr(2);
+ else if(string_starts_with(body_item->thumbnail_url, "/"))
+ body_item->thumbnail_url = website_url + body_item->thumbnail_url.substr(1);
+ }
+ }
+
static int html_append_search(QuickMediaHtmlSearch *html_search, const char *html_query, HtmlSearchUserdata *search_userdata) {
return quickmedia_html_find_nodes_xpath(html_search, html_query,
[](QuickMediaHtmlNode *node, void *userdata) {
@@ -239,17 +253,7 @@ namespace QuickMedia {
}
}
- for(auto &body_item : result_items) {
- if(string_starts_with(body_item->url, "//"))
- body_item->url = "https://" + body_item->url.substr(2);
- else if(string_starts_with(body_item->url, "/"))
- body_item->url = website_url + body_item->url.substr(1);
-
- if(string_starts_with(body_item->thumbnail_url, "//"))
- body_item->thumbnail_url = "https://" + body_item->thumbnail_url.substr(2);
- else if(string_starts_with(body_item->thumbnail_url, "/"))
- body_item->thumbnail_url = website_url + body_item->thumbnail_url.substr(1);
- }
+ body_items_prepend_website_url(result_items, website_url);
cleanup:
quickmedia_html_search_deinit(&html_search);
@@ -333,17 +337,7 @@ namespace QuickMedia {
}
}
- for(auto &body_item : chapters_items) {
- if(string_starts_with(body_item->url, "//"))
- body_item->url = "https://" + body_item->url.substr(2);
- else if(string_starts_with(body_item->url, "/"))
- body_item->url = website_url + body_item->url.substr(1);
-
- if(string_starts_with(body_item->thumbnail_url, "//"))
- body_item->thumbnail_url = "https://" + body_item->thumbnail_url.substr(2);
- else if(string_starts_with(body_item->thumbnail_url, "/"))
- body_item->thumbnail_url = website_url + body_item->thumbnail_url.substr(1);
- }
+ body_items_prepend_website_url(chapters_items, website_url);
for(auto &it : creators) {
if(string_starts_with(it.second, "//"))