]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blobdiff - html/cgi-bin/traffic.cgi
Update spanish translation.
[people/pmueller/ipfire-2.x.git] / html / cgi-bin / traffic.cgi
index 0930fdf40d0d73dc758c4952b7d044257a04e5cf..70e5726c907b6498b85c92bd63f04cea1d341966 100644 (file)
@@ -50,7 +50,7 @@ my %netsettings;
 &Header::openpage($Lang::tr{'sstraffic'}, 1, '');
 &Header::openbigbox('100%', 'left');
 
-&Header::openbox('100%', 'left', "$Lang::tr{'traffics'}");
+&Header::openbox('100%', 'center', "$Lang::tr{'traffics'}");
 
 # Display internal network
 display_vnstat($netsettings{'GREEN_DEV'});
@@ -83,23 +83,34 @@ sub display_vnstat
 {
        my $device = $_[0];
 
-       # Sumary graph sometimes hang so i print the text
-       print "<B><PRE>";
-       system("/usr/bin/vnstat -s -i $device");
-       print "</PRE></B>";
-       # generate Graphs if they are older than 5 min (-c 5)
-       # Hour graph
-       system("/usr/bin/vnstati -c 5 -h -i $device -o /srv/web/ipfire/html/graphs/vnstat-h-$device.png");
-       # Day graph
-       system("/usr/bin/vnstati -c 5 -d -i $device -o /srv/web/ipfire/html/graphs/vnstat-d-$device.png");
-       # Month graph
-       system("/usr/bin/vnstati -c 5 -m -i $device -o /srv/web/ipfire/html/graphs/vnstat-m-$device.png");
-       # Top10 graph
-       system("/usr/bin/vnstati -c 5 -t -i $device -o /srv/web/ipfire/html/graphs/vnstat-t-$device.png");
+       my $testdata = `/usr/bin/vnstat -i $device`;
+
+       if ( $testdata =~ 'enough') {
+               print"No data for $device !<br>";
+       } else {
+           # Falls back to textoutput if there was no % value because vnstati hang in this case
+           if (!($testdata =~ 'nan%')) {
+                   system("/usr/bin/vnstati -c 5 -s -i $device -o /srv/web/ipfire/html/graphs/vnstat-s-$device.png");
+           }
+           # Hour graph
+           system("/usr/bin/vnstati -c 5 -h -i $device -o /srv/web/ipfire/html/graphs/vnstat-h-$device.png");
+           # Day graph
+           system("/usr/bin/vnstati -c 5 -d -i $device -o /srv/web/ipfire/html/graphs/vnstat-d-$device.png");
+           # Month graph
+           system("/usr/bin/vnstati -c 5 -m -i $device -o /srv/web/ipfire/html/graphs/vnstat-m-$device.png");
+           # Top10 graph
+           system("/usr/bin/vnstati -c 5 -t -i $device -o /srv/web/ipfire/html/graphs/vnstat-t-$device.png");
 
 # Generate HTML-Table with the graphs
+           print "<table>";
+           if ($testdata =~ 'nan%') {
+               print "<tr><td><b><pre>";
+               system("/usr/bin/vnstat -i $device");
+               print "</pre></b></td></tr>";
+           } else {
+               print"<tr><td><img src=\"/graphs/vnstat-s-$device.png\"></td></tr>";
+           }
 print <<END
-<table>
 <tr><td><img src="/graphs/vnstat-h-$device.png"></td></tr>
 <tr><td><img src="/graphs/vnstat-d-$device.png"></td></tr>
 <tr><td><img src="/graphs/vnstat-m-$device.png"></td></tr>
@@ -107,4 +118,6 @@ print <<END
 </table>
 END
 ;
+           }
+       print"<hr>";
 }