X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Faction_list_graphs.c;h=2b26043846766af2e3e0ff17f2fe4882b7f2baad;hb=ad1116ef7c9edd4d03a500f53c14ef1754503e21;hp=caa90a82b1aeaac1e275c99d6ec43fa9a2e81c60;hpb=b988bcc13c655299bc3796cccaa583f62704e759;p=collection4.git diff --git a/src/action_list_graphs.c b/src/action_list_graphs.c index caa90a8..2b26043 100644 --- a/src/action_list_graphs.c +++ b/src/action_list_graphs.c @@ -48,6 +48,7 @@ struct callback_data_s int inst_index; int inst_limit; _Bool inst_more; + const char *search_term; }; typedef struct callback_data_s callback_data_t; @@ -88,7 +89,27 @@ static int print_graph_inst_html (graph_config_t *cfg, /* {{{ */ { if (!data->inst_more) { - printf ("
  • More ...
  • \n"); + char *search_term_html = html_escape (data->search_term); + char param_search_term[1024]; + + memset (params, 0, sizeof (params)); + graph_get_params (cfg, params, sizeof (params)); + html_escape_buffer (params, sizeof (params)); + + param_search_term[0] = 0; + if (search_term_html != NULL) + { + snprintf (param_search_term, sizeof (param_search_term), ";q=%s", + search_term_html); + param_search_term[sizeof (param_search_term) - 1] = 0; + } + + free (search_term_html); + + printf ("
  • More …
  • \n", + script_name (), params, param_search_term); + data->inst_more = 1; } return (0); @@ -108,6 +129,27 @@ static int print_graph_inst_html (graph_config_t *cfg, /* {{{ */ return (0); } /* }}} int print_graph_inst_html */ +static int print_graph_html (graph_config_t *cfg, /* {{{ */ + __attribute__((unused)) void *user_data) +{ + char params[1024]; + char title[1024]; + + memset (title, 0, sizeof (title)); + graph_get_title (cfg, title, sizeof (title)); + html_escape_buffer (title, sizeof (title)); + + memset (params, 0, sizeof (params)); + graph_get_params (cfg, params, sizeof (params)); + html_escape_buffer (params, sizeof (params)); + + printf ("
  • " + "%s
  • \n", + script_name (), params, title); + + return (0); +} /* }}} int print_graph_html */ + struct page_data_s { const char *search_term; @@ -119,7 +161,8 @@ static int print_search_result (void *user_data) /* {{{ */ page_data_t *pg_data = user_data; callback_data_t cb_data = { /* cfg = */ NULL, /* graph_index = */ -1, /* graph_limit = */ 20, /* graph_more = */ 0, - /* inst_index = */ -1, /* inst_limit = */ 5, /* inst more = */ 0 }; + /* inst_index = */ -1, /* inst_limit = */ 5, /* inst more = */ 0, + /* search_term = */ pg_data->search_term }; if (pg_data->search_term != NULL) { @@ -131,7 +174,9 @@ static int print_search_result (void *user_data) /* {{{ */ printf ("