Add in live values data page + minor gui fixes
[matches/MCTX3420.git] / testing / MCTXWeb / public_html / control.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2 <html>
3   <head>
4     <title>MCTX3420 Web Interface</title>
5     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
6     <!--[if lte IE 8]>
7       <script language="javascript" type="text/javascript" src="static/excanvas.min.js"></script>
8     <![endif]-->
9     <script type="text/javascript" src="static/jquery-1.10.1.min.js"></script>
10     <script type="text/javascript" src="static/jquery.flot.min.js"></script>
11     <script type="text/javascript" src="static/mctx.gui.js"></script>
12     <script type="text/javascript" src="static/mctx.control.js"></script>
13     
14     <link rel="stylesheet" type="text/css" href="static/style.css">
15     <link rel="stylesheet" type="text/css" href="static/nav-menu.css">
16     <script type="text/javascript">
17       runBeforeLoad().done(function () {
18         $(document).ready(function () {
19           $("form").submit(function () { //Prevent form submit globally
20             return false;
21           }).each(function () {
22             this.reset();
23           });
24           
25           //Set the status updated
26           $("#state-exp").setStatusUpdater();
27           
28           //Set the logic for the start controls
29           $("#start-controls input[type='button']").click(function () {
30             var start = $("#start-controls input[type='button']");
31             var force = $("#start-controls input[name='start_force']");
32             
33             $(this).startExperiment(start, $("#experiment_name").val(), 
34                       force.is(":checked"), $("#start-result"));
35             force.prop("checked", false);
36           });
37           
38           //Set the logic for the stop button
39           $("#experiment-stop").click(function () {
40             $(this).stopExperiment($("#stop-status"));
41           });
42           
43           //Set the logic for the pressure controls
44           $("#pressure-controls").submit(function () {
45             var pressure = {
46               set : $("#pressure-set").val(),
47               step : $("#pressure-stepsize").val(),
48               wait : $("#pressure-stepwait").val(),
49               count : $("#pressure-stepcount").val()
50             };   
51             $(this).setPressure(pressure, $("#pressure-result"));
52           });
53           
54           $("#pressure-controls input[name='clear']").click(function () {
55             $("#pressure-controls")[0].reset();
56             $("#pressure-result").text("");
57           });
58           
59           $("#pressure-controls input[name='zero']").click(function () {
60             $("#pressure-controls input[name='clear']").click();
61             $("#pressure-set").val("0");
62             
63             $("#pressure-controls").submit();
64           });
65           
66           $("#pressure-controls input[name='step-it']").click(function () {
67             var pressure = {
68               set : $("#pressure-set").val(), step : "", wait : "", count : ""
69             };
70             
71             $(this).setPressure(pressure, $("#pressure-result")).done(function () {
72               var next = Number($("#pressure-set").val()) + Number($("#pressure-stepsize").val());
73               $("#pressure-set").val(next.toString());
74             });
75             
76           });
77           $("#samplerate-controls").submit(function () {
78             setSampleRate($("#sensor-select option:selected").val(), 
79                           $("#sensor-set").val(), $("#samplerate-result"));
80           });
81        });       
82       }).fail(function () {
83         $(document).ready(function () {
84          $("#state-exp").text("Connection failure").parent().addClass("fail");
85        });  
86       });
87     </script>
88   </head>
89   
90   <body>
91     <div id="header-wrap">
92       <div id="header">
93         <div id="leftnav">
94           <a href="http://www.uwa.edu.au/" target="_blank">
95             <img alt = "The University of Western Australia"
96             src="static/uwacrest-text.png">
97           </a>
98           <span id="title">Exploding Cans</span>
99         </div>
100         <div id="rightnav">
101           <span id="welcome-container">
102           </span>
103           <span id="date">
104             <script type="text/javascript">getDate();</script>
105           </span>
106           <div id="logout-container">
107             <form action="#">
108               <div>
109                 <input type="button" id="logout" value="Logout">
110               </div>
111             </form>
112           </div>
113         </div>
114         <div class="clear"></div>
115       </div>
116     </div>
117     <!-- End header -->
118     
119     <div id="content-wrap">
120       <noscript>
121         <div class="widget centre">
122           <div class="title">JavaScript required</div>
123           This website requires JavaScript to function correctly.
124           Please enable JavaScript to use this site.
125         </div>
126       </noscript>
127
128       <div id="content">
129         <div class="widget" id="sidebar-show">&gt;</div>
130         <div id="sidebar">
131           <div class="widget">
132             <div id="sidebar-hide">&lt;</div>
133             <div class="title">Navigation menu</div>
134             <div id="sidebar-menu" class="nav-menu">
135               <ul>
136                 <li><a href="index.html"><span>Home</span></a></li>
137                 <li><a href="control.html"><span>Experiment control</span></a></li>
138                 <li><a href="graph.html"><span>Experiment graphs</span></a></li>
139                 <li><a href="values.html"><span>Experiment data (live)</span></a></li>
140                 <li><a href="data.html"><span>Experiment data</span></a></li>
141                 <li><a href="pintest.html"><span>Pin debugging</span></a></li>
142                 <li class="last"><a href="help.html"><span>Help</span></a></li>
143               </ul>
144             </div>
145           </div>
146         </div>
147         <!-- End sidebar -->
148
149         <div id="main">
150           <div class="widget">
151             <div class="title">Experiment Overview</div>
152             <table class="horizontal medium">
153               <tr id="state-exp-r">
154                 <th>Experiment state</th>
155                 <td id="state-exp"></td>
156                 <td style="text-align: right;">
157                   <input id="experiment-stop" type="button" value="Stop">
158                 </td>
159               </tr>
160             </table>
161             <div id="stop-status">
162               &nbsp;
163             </div>
164             
165             <div class="sub-title">Error and warning messages</div>
166             <textarea id="errorlog" wrap="off" rows="4" cols="30" readonly>
167             </textarea>
168           </div>
169           
170           <div id="start-widget" class="widget">
171             <div class="title centre">Start an experiment</div>
172             <form id="start-controls" class="nice" action="#">
173               <p>
174                 <label for="experiment_name">Experiment name</label>
175                 <input id="experiment_name" type="text">
176                 
177                 <label for="start_force">Overwrite existing</label>
178                 <input type="checkbox" name="start_force" id="start_force">
179               </p>
180               <p id="start-result">
181                 &nbsp;
182               </p>
183               <p class="centre">
184                 
185                 <input type="button" name="start_explode" value="Explode test">
186                 <input type="button" name="start_strain" value="Strain test">                
187               </p>
188             </form>
189           </div>
190           
191           <div id="pressure-widget" class="widget">            
192             <form id="pressure-controls" action="#" class="nice clear">
193               <table>
194                 <tr>
195                   <td><label for="pressure-set">Starting pressure (kPa)</label></td>
196                   <td><label for="pressure-stepsize">Pressure step size (kPa)</label></td>
197                 </tr>
198                 <tr>
199                   <td><input id="pressure-set" type="text"></td>
200                   <td><input id="pressure-stepsize" type="text"></td>
201                 </tr>
202                 <tr>
203                   <td><label for="pressure-stepcount">Number of steps to make</label></td>
204                   <td><label for="pressure-stepwait">Wait time between steps (s)</label></td>
205                 </tr>
206                 <tr>
207                   <td><input id="pressure-stepcount" type="text"></td>
208                   <td><input id="pressure-stepwait" type="text"></td>
209                 </tr>
210               </table>
211               <p class="left" id="pressure-result">
212                 &nbsp;
213               </p>
214               <p class="right">
215                 <input type="button" name="clear" value="Clear input">
216                 <input type="button" name="zero" value="Zero the pressure">
217                 <input type="button" name="step-it" value="Step the pressure">
218                 <input type="submit" value="Set pressure">
219               </p>
220             </form>
221             
222             <form id="samplerate-controls" action="#" class="nice clear">
223               <table>
224                 <tr>
225                   <td><label for="sensor-select">Select a sensor</label></td>
226                   <td><label for="sensor-set">Set sampling rate (s)</label></td>
227                 </tr>
228                 <tr>
229                   <td><select id="sensor-select" style="width:100%;"></select></td>
230                   <td><input id="sensor-set" type="text"></td>
231                 </tr>
232               </table>
233               <p class="left" id="samplerate-result">
234                 &nbsp;
235               </p>
236               <p class="right">
237                 <input type="submit" value="Set sampling rate">
238               </p>
239             </form>
240           </div>
241         </div>
242         <!-- End main content -->
243       </div>
244     </div>
245   </body>
246 </html>

UCC git Repository :: git.ucc.asn.au