From 9939b656bf6a383b793f8b5b402d60b44345a097 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Wed, 7 Apr 2021 00:41:34 +0200 Subject: Add upload date to manganelo and mangatown chapters --- src/plugins/Manganelo.cpp | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) (limited to 'src/plugins/Manganelo.cpp') diff --git a/src/plugins/Manganelo.cpp b/src/plugins/Manganelo.cpp index 7d1e8b3..6b526d4 100644 --- a/src/plugins/Manganelo.cpp +++ b/src/plugins/Manganelo.cpp @@ -49,6 +49,22 @@ namespace QuickMedia { item_data->push_back(std::move(item)); } }, &chapters_items); + + BodyItemContext body_item_context; + body_item_context.body_items = &chapters_items; + body_item_context.index = 0; + + quickmedia_html_find_nodes_xpath(&html_search, "//ul[class='row-content-chapter']//span", + [](QuickMediaHtmlNode *node, void *userdata) { + auto *item_data = (BodyItemContext*)userdata; + const char *class_attr = quickmedia_html_node_get_attribute_value(node, "class"); + const char *text = quickmedia_html_node_get_text(node); + if(text && class_attr && strstr(class_attr, "chapter-time") && item_data->index < item_data->body_items->size()) { + std::string uploaded_date = strip(text); + (*item_data->body_items)[item_data->index]->set_description("Uploaded: " + uploaded_date); + item_data->index++; + } + }, &body_item_context); quickmedia_html_find_nodes_xpath(&html_search, "//a[class='a-h']", [](QuickMediaHtmlNode *node, void *userdata) { @@ -187,13 +203,13 @@ namespace QuickMedia { if(result != 0) goto cleanup; - BodyItemImageContext body_item_image_context; + BodyItemContext body_item_image_context; body_item_image_context.body_items = &result_items; body_item_image_context.index = 0; result = quickmedia_html_find_nodes_xpath(&html_search, "//div[class='search-story-item']//a[class='item-img']//img", [](QuickMediaHtmlNode *node, void *userdata) { - auto *item_data = (BodyItemImageContext*)userdata; + auto *item_data = (BodyItemContext*)userdata; const char *src = quickmedia_html_node_get_attribute_value(node, "src"); if(src && item_data->index < item_data->body_items->size()) { (*item_data->body_items)[item_data->index]->thumbnail_url = src; -- cgit v1.2.3