-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 };
-
- if (pg_data->search_term != NULL)
- {
- char *search_term_html = html_escape (pg_data->search_term);
- printf (" <h2>Search results for "%s"</h2>\n",
- search_term_html);
- free (search_term_html);
- }
-
- printf (" <ul id=\"search-output\" class=\"graph_list\">\n");
- if (pg_data->search_term == NULL)
- gl_instance_get_all (print_graph_inst_html, /* user_data = */ &cb_data);
- else
- {
- char *term_lc = strtolower_copy (pg_data->search_term);
-
- if (strncmp ("host:", term_lc, strlen ("host:")) == 0)
- gl_search_field (GIF_HOST, term_lc + strlen ("host:"),
- print_graph_inst_html, /* user_data = */ &cb_data);
- else if (strncmp ("plugin:", term_lc, strlen ("plugin:")) == 0)
- gl_search_field (GIF_PLUGIN, term_lc + strlen ("plugin:"),
- print_graph_inst_html, /* user_data = */ &cb_data);
- else if (strncmp ("plugin_instance:", term_lc, strlen ("plugin_instance:")) == 0)
- gl_search_field (GIF_PLUGIN_INSTANCE, term_lc + strlen ("plugin_instance:"),
- print_graph_inst_html, /* user_data = */ &cb_data);
- else if (strncmp ("type:", term_lc, strlen ("type:")) == 0)
- gl_search_field (GIF_TYPE, term_lc + strlen ("type:"),
- print_graph_inst_html, /* user_data = */ &cb_data);
- else if (strncmp ("type_instance:", term_lc, strlen ("type_instance:")) == 0)
- gl_search_field (GIF_TYPE_INSTANCE, term_lc + strlen ("type_instance:"),
- print_graph_inst_html, /* user_data = */ &cb_data);
- else
- gl_search (term_lc,
- print_graph_inst_html, /* user_data = */ &cb_data);
-
- free (term_lc);
- }
-
- if (cb_data.cfg != NULL)
- printf (" </ul></li>\n");
-
- if (cb_data.graph_more)
- {
- printf (" <li class=\"graph more\">More ...</li>\n");
- }