Index: trunk/tools/czartool/DayMetrics.pm
===================================================================
--- trunk/tools/czartool/DayMetrics.pm	(revision 29770)
+++ trunk/tools/czartool/DayMetrics.pm	(revision 29863)
@@ -43,8 +43,8 @@
 
     # create path, dir and html file
-    $self->{dayDir} = "$self->{baseDir}/$self->{day}";
-    rmdir($self->{dayDir});
-    mkdir($self->{dayDir}, 0777);
-    $self->{plotter}->setOutputPath($self->{dayDir});
+    $self->{path} = "$self->{baseDir}/$self->{day}";
+    rmdir($self->{path});
+    mkdir($self->{path}, 0777);
+    $self->{plotter}->setOutputPath($self->{path});
 
     if ($self->{verbose}) {print "* Creating metrics for $self->{day}\n";}
@@ -64,10 +64,8 @@
 
     # create HTML file and write header stuff
-    open (HTMLDOC, ">$self->{dayDir}/index.html");
-    print HTMLDOC "<html>\n";
-    print HTMLDOC "<head>\n";
-    print HTMLDOC "<title>IPP Metrics for $self->{day}</title>\n";
-    print HTMLDOC "<a name=\"top\"></a>\n";
-    print HTMLDOC "<h1 align=\"middle\">IPP Metrics for $self->{day}</h1>\n";
+
+
+    $self->createHtml("IPP Metrics for $self->{day}");
+    my $htmlFile = $self->{htmlFile};
 
     # summit and burntool exposures
@@ -79,11 +77,11 @@
     my $nextDay = $self->{czarDb}->addInterval($self->{day}, "1 DAY");
 
-    print HTMLDOC "<h5  align=\"middle\">";
-    print HTMLDOC "<a href=\"../$previousDay/index.html\"> \< previous day</a> | <a href=\"../$nextDay/index.html\">next day \></a><br>\n";
-    print HTMLDOC "Measured from $self->{begin} to $self->{end} HST<br>\n";
-    printf ( HTMLDOC "%d exposures taken on summit last night, %d through burntool today</h5>\n", 
+    print $htmlFile "<h5  align=\"middle\">";
+    print $htmlFile "<a href=\"../$previousDay/index.html\"> \< previous day</a> | <a href=\"../index.html\">all</a> | <a href=\"../$nextDay/index.html\">next day \></a><br>\n";
+    print $htmlFile "Measured from $self->{begin} to $self->{end} HST<br>\n";
+    printf ( $htmlFile "%d exposures taken on summit last night, %d through burntool today</h5>\n", 
             $summitExposures, $burntoolMetrics->getProcessed() ? $burntoolMetrics->getProcessed() : 0 );
-    print HTMLDOC "</head>\n";
-    print HTMLDOC "<body>\n";
+    print $htmlFile "</head>\n";
+    print $htmlFile "<body>\n";
 
 
@@ -176,31 +174,27 @@
     }
 
-    # create hyperlink list of list of active labels
-    print HTMLDOC "<h2>Active labels for this day</h1>\n";
+    # create contents
+    print $htmlFile "<h2>Contents</h2>\n";
+    print $htmlFile "<a href=\"#surveys\">Survey timings</a><br>\n";
+    print $htmlFile "<a href=\"#summaryplot\">Summary plots</a><br>\n";
+    print $htmlFile "<a href=\"#stages\">Stage totals</a><br>\n";
+    print $htmlFile "<a href=\"#mask\">Magic mask fraction</a><br>\n";
     foreach my $label (keys (%labelTables)) {
 
-        print HTMLDOC "<a href=\"#$label\">$label</a><br>\n";
-    }
-
-    # some plots
-    print HTMLDOC "<h1 align=\"middle\">Summary plots</h1>\n";
-    $self->{plotter}->createTimeSeries("all_stdscience_labels", undef, $self->{begin}, $self->{end}, 0, 0, 0);
-    print HTMLDOC "<img src=\"czarplot_linear_all_stdscience_labels_all_stages_t.png\" alt=\"All labels and all stages for $self->{day}\" />\n";
-    $self->{plotter}->createHistogram("all_stdscience_labels", $self->{begin}, $self->{end}, 0, 0, 0);
-    print HTMLDOC "<img src=\"czarplot_linear_all_stdscience_labels_all_stages_h.png\" alt=\"All stages for all_stdscience_labels for $self->{day}\" />\n";
-    $self->{plotter}->createRateTimeSeries("all_stdscience_labels", undef, $self->{begin}, $self->{end}, "1 HOUR", 0);
-    print HTMLDOC "<img src=\"czarplot_linear_all_stdscience_labels_all_stages_r.png\" alt=\"All stages for all_stdscience_labels for $self->{day}\" />\n";
-    $self->{plotter}->plotMagicMaskFractionHistogram($self->{day}, $self->{day});
-    print HTMLDOC "<img src=\"czarplot_magic_mask_fraction_h.png\" alt=\"\" />\n";
-    $self->{plotter}->plotStorageTimeSeries($self->{begin}, $self->{end});
-    print HTMLDOC "<img src=\"czarplot_cluster.png\" alt=\"All stages for all_stdscience_labels for $self->{day}\" />\n";
-    print HTMLDOC "<img src=\"czarplot_magic_mask_fraction_d.png\" alt=\"\" />\n";
-
+        print $htmlFile "<a href=\"#$label\">$label</a><br>\n";
+    }
 
     # survey table
     $self->printSurveyTable();
 
+    # some summary plots
+    $self->createSummaryPlots();
+
+    # magic mask plots
+    $self->createMaskPlots($self->{day}, $self->{day});
+
     # table for stage totals
-    $table =  "<h2  align=\"middle\">Totals for all labels</h1>\n";
+    $table = "<a name=\"stages\"></a>\n";
+    $table .= "<h2  align=\"middle\">Stage totals <a href=\"#top\">(top)</a></h1>\n";
     $table .= "<table border='1'>";
     $table .= "  <tr>\n";
@@ -224,24 +218,21 @@
     $table .= "<br>\n";
 
-    print HTMLDOC $table;
+    print $htmlFile $table;
 
     # print all label tables to page
     foreach my $label (keys (%labelTables)) {
 
-        print HTMLDOC "<a name=\"$label\"></a>\n";
-        print HTMLDOC "<h2  align=\"middle\">$label <a href=\"#top\">(top)</a></h1>\n";
+        print $htmlFile "<a name=\"$label\"></a>\n";
+        print $htmlFile "<h2  align=\"middle\">$label <a href=\"#top\">(top)</a></h1>\n";
         $self->{plotter}->createTimeSeries($label, undef, $self->{begin}, $self->{end}, 0, 0, 0);
-        print HTMLDOC "<img src=\"czarplot_linear_".$label."_all_stages_t.png\" alt=\"All stages for $label for $self->{day}\" />\n";
+        print $htmlFile "<img src=\"czarplot_linear_".$label."_all_stages_t.png\" alt=\"All stages for $label for $self->{day}\" />\n";
         $self->{plotter}->createHistogram($label, $self->{begin}, $self->{end}, 0, 0, 0);
-        print HTMLDOC "<img src=\"czarplot_linear_".$label."_all_stages_h.png\" alt=\"All stages for $label for $self->{day}\" />\n";
-
-        print HTMLDOC $labelTables{$label};
-    }
-
-
-    print HTMLDOC "<br>\n";
-    print HTMLDOC "</body>\n";
-    print HTMLDOC "</html>\n";
-    close(HTMLDOC);
+        print $htmlFile "<img src=\"czarplot_linear_".$label."_all_stages_h.png\" alt=\"All stages for $label for $self->{day}\" />\n";
+
+        print $htmlFile $labelTables{$label};
+    }
+
+
+    $self->finishHtml();
 }
 
@@ -254,12 +245,15 @@
     my ($self) = @_;
 
-    print HTMLDOC "<h2  align=\"middle\">Survey statistics</h1>\n";
-    print HTMLDOC "<table border='1'>";
-    print HTMLDOC "  <tr>\n";
-    print HTMLDOC "    <th>Survey</th>\n";
-    print HTMLDOC "    <th>Started burntool</th>\n";
-    print HTMLDOC "    <th>Finished distribution</th>\n";
-    print HTMLDOC "    <th>Time taken</th>\n";
-    print HTMLDOC "  </tr>\n";
+    my $htmlFile = $self->{htmlFile};
+
+    print $htmlFile "<a name=\"surveys\"></a>\n";
+    print $htmlFile "<h2  align=\"middle\">Survey timings <a href=\"#top\">(top)</a></h1>\n";
+    print $htmlFile "<table border='1'>";
+    print $htmlFile "  <tr>\n";
+    print $htmlFile "    <th>Survey</th>\n";
+    print $htmlFile "    <th>Started burntool</th>\n";
+    print $htmlFile "    <th>Finished distribution</th>\n";
+    print $htmlFile "    <th>Time taken</th>\n";
+    print $htmlFile "  </tr>\n";
 
     # OSS survey
@@ -307,5 +301,5 @@
     $self->printSurveyDetails("All", $started, $finished, $timeTaken);
 
-    print HTMLDOC "</table>\n";
+    print $htmlFile "</table>\n";
 }
 
@@ -318,10 +312,12 @@
     my ($self, $survey, $started, $finished, $timeTaken, $processed, $pending) = @_;
 
-    print HTMLDOC "  <tr>\n";
-    print HTMLDOC "    <td>$survey</td>\n";
-    printf (HTMLDOC "    <td>%s</td>\n", $started ? $started : "no");
-    printf (HTMLDOC "    <td>%s</td>\n", $finished ? $finished : "no");
-    printf (HTMLDOC "    <td>%s</td>\n", $timeTaken ? $timeTaken : "na");
-    print HTMLDOC "  </tr>\n";
+    my $htmlFile = $self->{htmlFile};
+
+    print $htmlFile "  <tr>\n";
+    print $htmlFile "    <td>$survey</td>\n";
+    printf ($htmlFile "    <td>%s</td>\n", $started ? $started : "no");
+    printf ($htmlFile "    <td>%s</td>\n", $finished ? $finished : "no");
+    printf ($htmlFile "    <td>%s</td>\n", $timeTaken ? $timeTaken : "na");
+    print $htmlFile "  </tr>\n";
 }
 1;
