glpi-plugin-auf : version de mai 2014
[auf-serveur.git] / glpi-plugin-auf / plugin / rapport.migrationubuntu.php
index f28b381..19b34a8 100644 (file)
@@ -11,11 +11,13 @@ $svg_bar_height = 10;
 Session::checkRight("reports", "r");
 Session::checkRight("computer", "r");
 
+$report_title = "Progression de la migration vers Ubuntu 12.04";
+
 #Html::header(Report::getTypeName(2), $_SERVER['PHP_SELF'], "utils", "report");
-Html::header("Progression de la migration vers Ubuntu 12.04.", $_SERVER['PHP_SELF'], "utils", "report");
+Html::header($report_title, $_SERVER['PHP_SELF'], "utils", "report");
 Report::title();
 
-echo "\n<p class='big b' style='margin: 5px; text-align: center'>Progression de la migration vers Ubuntu 12.04 <em>(Precise)</em></p>";
+echo "\n<p class='big b' style='margin: 5px; text-align: center'><span id='report_date' style='float: right; margin: 2px 20px; font-size: 75%; font-style: italic'>(".date('Y-m-d H:i:s')." UTC)</span>$report_title <em>(Precise)</em></p>";
 
 $computer = new Computer();
 
@@ -76,6 +78,15 @@ function svg_bar($values, $width=100, $height=5) {
   return $svg;
 }
 
+function progression_html($valeurs, $progres) {
+  global $svg_bar_width, $svg_bar_height;
+  $somme_valeurs = 0; foreach ($valeurs as $v) $somme_valeurs += $v;
+  if (!$somme_valeurs) return '';
+  $result = svg_bar($valeurs, $svg_bar_width, $svg_bar_height);
+  $result .= round((100*$progres)/$somme_valeurs)."%";
+  return $result;
+}
+
 // echo "\n<span class='big b' style='color: red;'>ATTENTION : ce rapport est en cours de refonte, merci de ne pas tenir compte des données affichées ci-dessous.</span><br><br>";
 
 //echo "\n<span class='big b'>Ordinateurs par implantation</span><br><br>";
@@ -187,15 +198,11 @@ while ($region_data = $DB->fetch_assoc($region_result)) {
       $line .= "<td class='numeric'>$nb_internes_autres</td>";
       $line .= "<td class='numeric'>$nb_internes_1004</td>";
       $line .= "<td class='numeric'>$nb_internes_1204</td>";
-      $line .= "<td class='numeric tab_bg_2'>";
-      $line .= svg_bar(Array($nb_internes_autres, $nb_internes_1004, $nb_internes_1204), $svg_bar_width, $svg_bar_height);
-      $line .= round((100*$nb_internes_1204)/$total_internes)."%</td>";
+      $line .= "<td class='numeric tab_bg_2'>".progression_html(Array($nb_internes_autres, $nb_internes_1004, $nb_internes_1204), $nb_internes_1204)."</td>";
       $line .= "<td class='numeric'>$nb_publics_autres</td>";
       $line .= "<td class='numeric'>$nb_publics_1004</td>";
       $line .= "<td class='numeric'>$nb_publics_1204</td>";
-      $line .= "<td class='numeric tab_bg_2'>";
-      $line .= svg_bar(Array($nb_publics_autres, $nb_publics_1004, $nb_publics_1204), $svg_bar_width, $svg_bar_height);
-      $line .= round((100*$nb_publics_1204)/$total_publics)."%</td>";
+      $line .= "<td class='numeric tab_bg_2'>".progression_html(Array($nb_publics_autres, $nb_publics_1004, $nb_publics_1204), $nb_publics_1204)."</td>";
       $line .= "</tr>\n";
       $table_lines[] = $line;
     }
@@ -210,21 +217,17 @@ while ($region_data = $DB->fetch_assoc($region_result)) {
   } // fin des implantations de la région
 
   $total_internes = $region_internes_1204 + $region_internes_1004 + $region_internes_autres;
-  $total_publics += $region_publics_1204 + $region_publics_1004 + $region_publics_autres;
+  $total_publics = $region_publics_1204 + $region_publics_1004 + $region_publics_autres;
   if (($total_internes + $total_publics) > 0) {
     $line = "<tr class='tab_bg_1 b'><td>Sous-total</td>";
     $line .= "<td class='numeric'>$region_internes_autres</td>";
     $line .= "<td class='numeric'>$region_internes_1004</td>";
     $line .= "<td class='numeric'>$region_internes_1204</td>";
-    $line .= "<td class='numeric tab_bg_1'>";
-    $line .= svg_bar(Array($region_internes_autres, $region_internes_1004, $region_internes_1204), $svg_bar_width, $svg_bar_height);
-    $line .= round((100*$region_internes_1204)/$total_internes)."%</td>";
+    $line .= "<td class='numeric tab_bg_1'>".progression_html(Array($region_internes_autres, $region_internes_1004, $region_internes_1204), $region_internes_1204)."</td>";
     $line .= "<td class='numeric'>$region_publics_autres</td>";
     $line .= "<td class='numeric'>$region_publics_1004</td>";
     $line .= "<td class='numeric'>$region_publics_1204</td>";
-    $line .= "<td class='numeric tab_bg_1'>";
-    $line .= svg_bar(Array($region_publics_autres, $region_publics_1004, $region_publics_1204), $svg_bar_width, $svg_bar_height);
-    $line .= round((100*$region_publics_1204)/$total_publics)."%</td>";
+    $line .= "<td class='numeric tab_bg_1'>".progression_html(Array($region_publics_autres, $region_publics_1004, $region_publics_1204), $region_publics_1204)."</td>";
     $line .= "</tr>\n";
     $table_lines[] = $line;
   }
@@ -252,8 +255,6 @@ while ($region_data = $DB->fetch_assoc($region_result)) {
 
 #echo "<tr class='tab_bg_1'><td colspan='8'>&nbsp;</td></tr>";
 
-$total_internes = $grand_internes_1204 + $grand_internes_1004 + $grand_internes_autres;
-$total_publics += $grand_publics_1204 + $grand_publics_1004 + $grand_publics_autres;
 $line = "<tr class='tab_bg_1'><td class='b' colspan='2'>";
 $line .= svg_pie_chart(Array(
   $grand_internes_autres + $grand_publics_autres,
@@ -264,15 +265,11 @@ $line .= "TOTAL GÉNÉRAL</td>";
 $line .= "<td class='numeric b'>$grand_internes_autres</td>";
 $line .= "<td class='numeric b'>$grand_internes_1004</td>";
 $line .= "<td class='numeric b'>$grand_internes_1204</td>";
-$line .= "<td class='numeric tab_bg_1'>";
-$line .= svg_bar(Array($grand_internes_autres, $grand_internes_1004, $grand_internes_1204), $svg_bar_width, $svg_bar_height);
-$line .= round((100*$grand_internes_1204)/$total_internes)."%</td>";
+$line .= "<td class='numeric tab_bg_1'>".progression_html(Array($grand_internes_autres, $grand_internes_1004, $grand_internes_1204), $grand_internes_1204)."</td>";
 $line .= "<td class='numeric b'>$grand_publics_autres</td>";
 $line .= "<td class='numeric b'>$grand_publics_1004</td>";
 $line .= "<td class='numeric b'>$grand_publics_1204</td>";
-$line .= "<td class='numeric tab_bg_1'>";
-$line .= svg_bar(Array($grand_publics_autres, $grand_publics_1004, $grand_publics_1204), $svg_bar_width, $svg_bar_height);
-$line .= round((100*$grand_publics_1204)/$total_publics)."%</td>";
+$line .= "<td class='numeric tab_bg_1'>".progression_html(Array($grand_publics_autres, $grand_publics_1004, $grand_publics_1204), $grand_publics_1204)."</td>";
 $line .= "</tr>";
 echo "<tr><th colspan='10'></th></tr>\n";
 echo $line;