+ snprintf (time_params, sizeof (time_params), ";begin=%li;end=%li",
+ begin, end);
+ time_params[sizeof (time_params) - 1] = 0;
+
+ if (index < MAX_SHOW_GRAPHS)
+ printf ("<div class=\"graph-img\"><img src=\"%s?action=graph;%s%s\" "
+ "title=\"%s / %s\" /></div>\n",
+ script_name (), params, time_params, title, descr);
+ else
+ printf ("<a href=\"%s?action=show_instance;%s\">Show graph "
+ ""%s / %s"</a>\n",
+ script_name (), params, title, descr);
+
+#if 0
+ printf ("<div><a href=\"%s?action=instance_data_json;%s%s\">"
+ "Get graph data as JSON</a></div>\n",
+ script_name (), params, time_params);
+#endif
+
+ return (0);
+} /* }}} int show_instance_rrdtool */
+
+static int show_instance_cb (graph_config_t *cfg, /* {{{ */
+ graph_instance_t *inst,
+ void *user_data)
+{
+ show_graph_data_t *data = user_data;
+ char descr[128];
+
+ long begin;
+ long end;
+ int status;
+
+ memset (descr, 0, sizeof (descr));
+ inst_describe (cfg, inst, descr, sizeof (descr));
+ html_escape_buffer (descr, sizeof (descr));
+
+ begin = 0;
+ end = 0;
+
+ status = get_time_args (&begin, &end, /* now = */ NULL);
+ if (status != 0)
+ return (status);
+
+ printf ("<h2>Instance "%s"</h2>\n", descr);
+
+ show_breadcrump (cfg, inst);
+
+ if (data->format == SGD_FORMAT_RRD)
+ show_instance_rrdtool (cfg, inst, begin, end, data->graph_count);
+ else
+ show_instance_json (cfg, inst, begin, end, data->graph_count);
+
+ data->graph_count++;