From 94c45e3c4d185b3f0d70f0d2d761b72c6561e1b5 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Tue, 14 Jul 2020 06:55:18 +0200 Subject: Implement add_html --- src/main.c | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'src/main.c') diff --git a/src/main.c b/src/main.c index 11b2a5d..bc554b5 100644 --- a/src/main.c +++ b/src/main.c @@ -4,6 +4,7 @@ #include "fileutils.h" #include "stringutils.h" #include "rss.h" +#include "html.h" #include "json.h" #include @@ -12,6 +13,7 @@ #include #include +#include #define NAME_MAX_LEN 250 @@ -136,8 +138,7 @@ static void data_file_get_downloaded(const char *dir_name, const char *data_file } cleanup: - if(json_root) - free(json_root); + free(json_root); free(file_data); } @@ -185,7 +186,7 @@ static int compare_downloaded_item(const void *a, const void *b) { return list_data_a->timestamp - list_data_b->timestamp; } -static void command_add(int argc, char **argv, char *rss_config_dir, char *html_config_dir) { +static void command_add(int argc, char **argv, char *rss_config_dir, char *html_config_dir, char *program_dir) { if(argc < 2) usage_add(); @@ -246,7 +247,14 @@ static void command_add(int argc, char **argv, char *rss_config_dir, char *html_ if(add_rss(media_name, media_url, rss_config_dir, start_after) != 0) exit(1); } else if(strcmp(media_type, "html") == 0) { - (void)html_config_dir; + int res = create_directory_recursive(html_config_dir); + if(res != 0) { + fprintf(stderr, "Failed to create %s, error: %s\n", html_config_dir, strerror(res)); + exit(1); + } + + if(add_html(media_name, media_url, html_config_dir, program_dir, start_after) != 0) + exit(1); } else { fprintf(stderr, "type should be either rss or html\n"); usage_add(); @@ -307,7 +315,7 @@ int main(int argc, char **argv) { const char *command = argv[1]; if(strcmp(command, "add") == 0) { - command_add(argc - 2, argv + 2, rss_config_dir, html_config_dir); + command_add(argc - 2, argv + 2, rss_config_dir, html_config_dir, dirname(argv[0])); } else if(strcmp(command, "sync") == 0) { command_sync(argc - 2, argv + 2); } else if(strcmp(command, "downloaded") == 0) { -- cgit v1.2.3