<script type="text/javascript" src="static/jquery-1.10.1.min.js"></script>
<script type="text/javascript" src="static/jquery.flot.min.js"></script>
<script type="text/javascript" src="static/mctx.gui.js"></script>
+ <script type="text/javascript" src="static/mctx.control.js"></script>
<link rel="stylesheet" type="text/css" href="static/style.css">
<link rel="stylesheet" type="text/css" href="static/nav-menu.css">
<script type="text/javascript">
runBeforeLoad().done(function () {
$(document).ready(function () {
- $("#main_controls").submit(function () {
- //Validate!
- return false;
- });
+ $("form").submit(function () { //Prevent form submit globally
+ return false;
+ }).trigger("reset"); //Reset forms
+
+ //Force enable start buttons if previously disabled
+ $("#start-controls input[type='button']").removeAttr("disabled");
+
+ //Set the status updated
+ $("#state-exp").setStatusUpdater();
+
+ //Set the logic for the start controls
+ $("#start-controls input[type='button']").click(function () {
+ var start = $("#start-controls input[type='button']");
+ var force = $("#start-controls input[name='start_force']");
+
+ $(this).startExperiment(start, $("#experiment_name").val(),
+ force.is(":checked"), $("#start-result"));
+ force.prop("checked", false);
+ });
+
+ //Set the logic for the stop button
+ $("#experiment-stop").click(function () {
+ $(this).stopExperiment($("#stop-status"));
+ });
+
+ //Set the logic for the pressure controls
+ $("#pressure-controls").submit(function () {
+ var pressure = {
+ set : $("#pressure-set").val(),
+ step : $("#pressure-stepsize").val(),
+ wait : $("#pressure-stepwait").val(),
+ count : $("#pressure-stepcount").val()
+ };
+ $(this).setPressure(pressure, $("#pressure-result"));
+ });
+
+ $("#pressure-controls input[name='clear']").click(function () {
+ $("#pressure-controls")[0].reset();
+ $("#pressure-result").text("");
+ });
+
+ $("#pressure-controls input[name='zero']").click(function () {
+ $("#pressure-controls input[name='clear']").click();
+ $("#pressure-set").val("0");
+
+ $("#pressure-controls").submit();
+ });
+
+ $("#pressure-controls input[name='step-it']").click(function () {
+ var pressure = {
+ set : $("#pressure-set").val(), step : "", wait : "", count : ""
+ };
+
+ $(this).setPressure(pressure, $("#pressure-result")).done(function () {
+ var next = Number($("#pressure-set").val()) + Number($("#pressure-stepsize").val());
+ $("#pressure-set").val(next.toString());
+ });
+
+ });
+ $("#samplerate-controls").submit(function () {
+ setSampleRate($("#sensor-select option:selected").val(),
+ $("#sensor-set").val(), $("#samplerate-result"));
+ });
});
- })
-
+ }).fail(function () {
+ $(document).ready(function () {
+ $("#state-exp").text("Connection failure").parent().addClass("fail");
+ });
+ });
</script>
</head>
<li><a href="index.html"><span>Home</span></a></li>
<li><a href="control.html"><span>Experiment control</span></a></li>
<li><a href="graph.html"><span>Experiment graphs</span></a></li>
+ <li><a href="values.html"><span>Experiment data (live)</span></a></li>
<li><a href="data.html"><span>Experiment data</span></a></li>
<li><a href="pintest.html"><span>Pin debugging</span></a></li>
<li class="last"><a href="help.html"><span>Help</span></a></li>
<div id="main">
<div class="widget">
- <div class="title">Experiment Status</div>
- <table class="horizontal">
- <tr>
+ <div class="title">Experiment Overview</div>
+ <table class="horizontal medium">
+ <tr id="state-exp-r">
<th>Experiment state</th>
- <td id="state-exp">No experiment running.</td>
- </tr>
- <tr>
- <th>Software status</th>
- <td id="state-software"></td>
+ <td id="state-exp"></td>
+ <td style="text-align: right;">
+ <input id="experiment-stop" type="button" value="Stop">
+ </td>
</tr>
</table>
- <div class="bold">Error and warning messages</div>
+ <div id="stop-status">
+
+ </div>
+
+ <div class="sub-title">Error and warning messages</div>
<textarea id="errorlog" wrap="off" rows="4" cols="30" readonly>
</textarea>
</div>
- <div class="widget">
- <div class="bold">Main controls</div>
- <form id="main-controls" action="">
+ <div id="start-widget" class="widget">
+ <div class="title centre">Start an experiment</div>
+ <form id="start-controls" class="nice" action="#">
+ <p>
+ <label for="experiment_name">Experiment name</label>
+ <input id="experiment_name" type="text">
+
+ <label for="start_force">Overwrite existing</label>
+ <input type="checkbox" name="start_force" id="start_force">
+ </p>
+ <p id="start-result">
+
+ </p>
+ <p class="centre">
+ <input type="button" name="start_explode" value="Explode test">
+ <input type="button" name="start_strain" value="Strain test">
+ </p>
+ </form>
+ </div>
+
+ <div id="pressure-widget" class="widget">
+ <form id="pressure-controls" action="#" class="nice clear">
<table>
<tr>
- <td>Experiment name</td>
- <td><input name="experiment_name" type="text"></td>
+ <td><label for="pressure-set">Starting pressure (kPa)</label></td>
+ <td><label for="pressure-stepsize">Pressure step size (kPa)</label></td>
+ </tr>
+ <tr>
+ <td><input id="pressure-set" type="text"></td>
+ <td><input id="pressure-stepsize" type="text"></td>
</tr>
<tr>
- <td>Experiment mode</td>
- <td>
- <input name="experiment_type" value="strain" type="radio"> Strain it
- <input name="experiment_type" value="explode" type="radio"> Explode it
- </td>
+ <td><label for="pressure-stepcount">Number of steps to make</label></td>
+ <td><label for="pressure-stepwait">Wait time between steps (s)</label></td>
</tr>
<tr>
- <td>
- </td>
- <td align="right">
- <input type="submit" value="Start">
- <input type="submit" value="Pause">
- <input type="submit" value="Stop">
- </td>
+ <td><input id="pressure-stepcount" type="text"></td>
+ <td><input id="pressure-stepwait" type="text"></td>
</tr>
</table>
+ <p class="left" id="pressure-result">
+
+ </p>
+ <p class="right">
+ <input type="button" name="clear" value="Clear input">
+ <input type="button" name="zero" value="Zero the pressure">
+ <input type="button" name="step-it" value="Step the pressure">
+ <input type="submit" value="Set pressure">
+ </p>
</form>
- <div class="bold">Pressure controls</div>
- <form id="pressure-controls" action="">
+ <form id="samplerate-controls" action="#" class="nice clear">
<table>
<tr>
- <td>Experiment name</td>
- <td><input name="experiment_name" type="text"></td>
- </tr>
- <tr>
- <td>Experiment mode</td>
- <td>
- <input name="experiment_type" value="strain" type="radio"> Strain it
- <input name="experiment_type" value="explode" type="radio"> Explode it
- </td>
+ <td><label for="sensor-select">Select a sensor</label></td>
+ <td><label for="sensor-set">Set sampling rate (s)</label></td>
</tr>
<tr>
- <td>
- </td>
- <td align="right">
- <input type="submit" value="Start">
- <input type="submit" value="Pause">
- <input type="submit" value="Stop">
- </td>
+ <td><select id="sensor-select" style="width:100%;"></select></td>
+ <td><input id="sensor-set" type="text"></td>
</tr>
</table>
+ <p class="left" id="samplerate-result">
+
+ </p>
+ <p class="right">
+ <input type="submit" value="Set sampling rate">
+ </p>
</form>
</div>
</div>