function refreshZoom(query, form, image, divOverlay) { //INIT var qs = new Querystring(query); init(); var scale = refreshImg(); var start_epoch = (+qs.get("rst_start_epoch", form.start_epoch.value)); var stop_epoch = (+qs.get("rst_stop_epoch", form.stop_epoch.value)); var initial_left; var initial_top; //form.btnMaj.onclick = majDates; form.plugin_name.onblur = refreshImg; form.start_iso8601.onblur = majDates; form.stop_iso8601.onblur = majDates; form.start_epoch.onblur = refreshImg; form.stop_epoch.onblur = refreshImg; form.lower_limit.onblur = refreshImg; form.upper_limit.onblur = refreshImg; form.size_x.onblur = refreshImg; form.size_y.onblur = refreshImg; form.btnReset.onclick = reset; // Sets the onClick handler image.onclick = click; var clickCounter = 0; //FUNCTIONS function init(){ form.plugin_name.value = qs.get("plugin_name", "localdomain/localhost.localdomain/if_eth0"); form.start_epoch.value = qs.get("start_epoch", "1236561663"); form.stop_epoch.value = qs.get("stop_epoch", "1237561663"); form.lower_limit.value = qs.get("lower_limit", ""); form.upper_limit.value = qs.get("upper_limit", ""); form.size_x.value = qs.get("size_x", ""); form.size_y.value = qs.get("size_y", ""); updateStartStop(); } function reset(event){ init(); //Can be not the initial ones in case of manual refresh form.start_epoch.value = start_epoch; form.stop_epoch.value = stop_epoch; updateStartStop(); //Redraw scale = refreshImg(); //Reset gui clickCounter = 0; initial_left = 0; initial_top = 0; image.onmousemove = undefined; form.start_iso8601.disabled = false; form.stop_iso8601.disabled = false; form.start_epoch.disabled = false; form.stop_epoch.disabled = false; } function refreshImg(event) { image.src = qs.get("cgiurl_graph", "/munin-cgi/munin-cgi-graph") + "/" + form.plugin_name.value + "-pinpoint=" + parseInt(form.start_epoch.value) + "," + parseInt(form.stop_epoch.value) + ".png" + "?" + "&lower_limit=" + form.lower_limit.value + "&upper_limit=" + form.upper_limit.value + "&size_x=" + form.size_x.value + "&size_y=" + form.size_y.value ; return ((+form.stop_epoch.value) - (+form.start_epoch.value)) / (+form.size_x.value); } function updateStartStop() { form.start_iso8601.value = new Date(form.start_epoch.value * 1000).formatDate(Date.DATE_ISO8601); form.stop_iso8601.value = new Date(form.stop_epoch.value * 1000).formatDate(Date.DATE_ISO8601); } function divMouseMove(event) { var delta_x; var size_x; // Handling the borders (X1>X2 ou X1