aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Plugin.cpp
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2020-10-11 21:35:37 +0200
committerdec05eba <dec05eba@protonmail.com>2020-10-13 13:13:01 +0200
commit77ed51898157d99112be7550471ec06e32344c9e (patch)
tree0645274d0f13b4fa6940d4054f74a070611a8ef0 /src/plugins/Plugin.cpp
parentda89ec98fb34757f0c46dc8cb2dd87ae78d317ce (diff)
Refactor plugin into seperate pages
TODO: Readd 4chan login page, manganelo creators page, autocomplete
Diffstat (limited to 'src/plugins/Plugin.cpp')
-rw-r--r--src/plugins/Plugin.cpp52
1 files changed, 6 insertions, 46 deletions
diff --git a/src/plugins/Plugin.cpp b/src/plugins/Plugin.cpp
index ac60187..3f76b4c 100644
--- a/src/plugins/Plugin.cpp
+++ b/src/plugins/Plugin.cpp
@@ -1,34 +1,10 @@
#include "../../plugins/Plugin.hpp"
+#include "../../include/StringUtils.hpp"
#include <sstream>
#include <iomanip>
#include <array>
-#include <json/reader.h>
namespace QuickMedia {
- SearchResult Plugin::search(const std::string &text, BodyItems &result_items) {
- (void)text;
- (void)result_items;
- return SearchResult::OK;
- }
-
- SuggestionResult Plugin::update_search_suggestions(const std::string &text, BodyItems &result_items) {
- (void)text;
- (void)result_items;
- return SuggestionResult::OK;
- }
-
- SearchResult Plugin::content_list_search(const std::string &list_url, const std::string &text, BodyItems &result_items) {
- (void)list_url;
- (void)text;
- (void)result_items;
- return SearchResult::OK;
- }
-
- BodyItems Plugin::get_related_media(const std::string &url) {
- (void)url;
- return {};
- }
-
struct HtmlEscapeSequence {
char unescape_char;
std::string escape_sequence;
@@ -69,7 +45,7 @@ namespace QuickMedia {
}
}
- std::string Plugin::url_param_encode(const std::string &param) const {
+ std::string url_param_encode(const std::string &param) {
std::ostringstream result;
result.fill('0');
result << std::hex;
@@ -86,24 +62,8 @@ namespace QuickMedia {
return result.str();
}
- DownloadResult Plugin::download_json(Json::Value &result, const std::string &url, std::vector<CommandArg> additional_args, bool use_browser_useragent, std::string *err_msg) const {
- std::string server_response;
- if(download_to_string(url, server_response, std::move(additional_args), use_tor, use_browser_useragent, err_msg == nullptr) != DownloadResult::OK) {
- if(err_msg)
- *err_msg = server_response;
- return DownloadResult::NET_ERR;
- }
-
- Json::CharReaderBuilder json_builder;
- std::unique_ptr<Json::CharReader> json_reader(json_builder.newCharReader());
- std::string json_errors;
- if(!json_reader->parse(&server_response[0], &server_response[server_response.size()], &result, &json_errors)) {
- fprintf(stderr, "download_json error: %s\n", json_errors.c_str());
- if(err_msg)
- *err_msg = std::move(json_errors);
- return DownloadResult::ERR;
- }
-
- return DownloadResult::OK;
- }
+ SuggestionResult download_result_to_suggestion_result(DownloadResult download_result) { return (SuggestionResult)download_result; }
+ PluginResult download_result_to_plugin_result(DownloadResult download_result) { return (PluginResult)download_result; }
+ SearchResult download_result_to_search_result(DownloadResult download_result) { return (SearchResult)download_result; }
+ ImageResult download_result_to_image_result(DownloadResult download_result) { return (ImageResult)download_result; }
} \ No newline at end of file