]> jspc29.x-matter.uni-frankfurt.de Git - labtools.git/commitdiff
can now consistently set tty, introduced status output (beta)
authorMaps <maps@ikf>
Mon, 8 Dec 2014 18:14:02 +0000 (19:14 +0100)
committerMaps <maps@ikf>
Mon, 8 Dec 2014 18:14:02 +0000 (19:14 +0100)
peltier_controller/webGUI/index.pl
peltier_controller/webGUI/peltierControl.css
peltier_controller/webGUI/peltierControl.js
peltier_controller/webGUI/webpage.pm

index 8d248e7845a73b85a70f19260aa1c6f1a85674ef..64ae6041f45290587b236c1ef6343f9b7c5f7c7e 100755 (executable)
@@ -38,7 +38,7 @@ sub new {
   
   my $self = {
     appName => "peltierControl",
-    tty => "/dev/ttyACM1",
+    tty => "/dev/ttyACM0",
     baudrate => 115200,
     columnNames => ["temp","pid","setpoint"]
   }; # put tons of default values here (if you wish);
@@ -63,6 +63,10 @@ sub main {
   # receive CGI query
   $self->{query} = CGI->new(); 
   my $action = $self->{query}->param('action') || "print_html";
+  
+  if(defined($self->{query}->param('tty'))){
+    $self->{tty} = $self->{query}->param('tty');
+  }
 
   # go only to methods that are in the following dispatch table:
   # if associated value is one, sub can be called via CGI
@@ -166,9 +170,20 @@ sub print_html{
   my %options = @_;
   my $shm_manager = $self->create_shm_manager();
   my $webpage = webpage->new(shm_manager => $shm_manager);
+  $webpage->{shared}->{tty} = $self->{tty};
   $webpage->page_body();
-
 }
+
+# sub print_status{
+#   my $self = shift;
+#   my %options = @_;
+#   my $shm_manager = $self->create_shm_manager();
+#   my $webpage = webpage->new(shm_manager => $shm_manager);
+#   $webpage->{shared}->{tty} = $self->{tty};
+#   $webpage->status();
+# }
+
+
 sub plot {
   my $self = shift;
   my %options = @_;
index 7187f6de42ffd3bc6af63c6992e03fbf9e34f37d..07550d1686afc896766592f2937ba49cd1b6d3ff 100644 (file)
 
    }
    
+#status {
+   float:right;
+   position:absolute;
+   position:fixed;
+   top: 200px;
+   left: 680px;
+   width:280px;
+   padding:10px;
+   margin-top:30px;
+   margin-left:30px;
+
+}
+   
+   
+   
 .plotArea {
 /*    float:left; */
    position:absolute;
index b85946268ec0057f4944343d0a29116806f7df8a..64c5934e52281b3667708380884b0bbb52b6b585 100644 (file)
@@ -9,6 +9,7 @@ $(document).ready(function(){
   
   timer = $.timer(function() {
     plot();
+    status();
   });
   
   
@@ -25,6 +26,7 @@ function plot(){
         dataType:  "text",
         data:      {
           action     : "plot",
+          tty        : shared.tty,
           clientId   : clientId
         },
         success:   function(result) {
@@ -33,6 +35,22 @@ function plot(){
      });
 }
 
+function status(){
+  $.ajax({
+        url:       "index.pl",
+        cache:     false,
+        async:     false,
+        dataType:  "text",
+        data:      {
+          action     : "dump_shm",
+          tty        : shared.tty
+        },
+        success:   function(result) {
+          $("#statusContainer").html(result);
+        }
+     });
+}
+
 function start_logging_tool(){
   $.ajax({
         url:       "index.pl",
@@ -41,6 +59,7 @@ function start_logging_tool(){
         dataType:  "text",
         data:      {
           action     : "start_logging_tool",
+          tty        : shared.tty,
           daemonize  : 1
         }
      });
@@ -53,6 +72,7 @@ function terminate_logging_tool(){
         async:     false,
         dataType:  "text",
         data:      {
+          tty        : shared.tty,
           action     : "terminate_logging_tool"
         }
      });
@@ -65,6 +85,7 @@ function clear_records(){
         async:     false,
         dataType:  "text",
         data:      {
+          tty        : shared.tty,
           action     : "clear_records"
         }
      });
@@ -78,6 +99,7 @@ function set_setpoint(){
         async:     false,
         dataType:  "text",
         data:      {
+          tty        : shared.tty,
           action     : "set_setpoint",
           setpoint   : setpoint
         }
index 6454d47b61a5317fed044fffd56ad6e49b5183c8..57e5b8c710c297302402cd20ce71a96c270454f0 100644 (file)
@@ -47,6 +47,12 @@ sub page_body {
   print "<div class='header'>Options</div>";
   $self->print_device_controls();
   print '</div>';
+  
+  print '<div id="status" class="stylishBox">';
+  print "<div class='header'>Status</div>";
+  print '<div id="statusContainer">';
+  print '</div>';
+  print '</div>';
 
   print '<div id="plotArea" class="stylishBox plotArea">';
   print "<div class='header'>Plots</div>";
@@ -60,11 +66,13 @@ sub page_body {
   } else {
     passHashToJs({},"shm");
   }
+  passHashToJs($self->{shared},"shared");
   
   return;
   
 }
 
+
 sub print_device_controls {
   my $self = shift;
   print "<table>";
@@ -96,19 +104,6 @@ sub print_device_controls {
 }
 
 
-# sub passHashToJs {
-# 
-#   my $hashref = shift();
-#   my $objname = shift();
-#   $objname = 'fromPerl' unless (defined($objname));
-#   print "<script language='javascript'>\n";
-#   print "var $objname = new Object();\n";
-#   for my $key (keys %$hashref){
-#     print $objname.qq%["$key"]="%.$hashref->{$key}.qq%";\n%;
-#   }
-#   print "</script>";
-# 
-# }
 
 sub passHashToJs {