--- loncom/cgi/userstatus.pl 2003/09/01 03:37:27 1.7
+++ loncom/cgi/userstatus.pl 2005/08/25 19:43:40 1.12
@@ -1,7 +1,7 @@
#!/usr/bin/perl
$|=1;
# User Status
-# $Id: userstatus.pl,v 1.7 2003/09/01 03:37:27 albertel Exp $
+# $Id: userstatus.pl,v 1.12 2005/08/25 19:43:40 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -50,7 +50,7 @@ sub analyze_time {
my $userclass=$actl[0];
if ($since>300) { $color="#222222"; }
if ($since>600) { $color="#444444"; }
- if ($since>3600) { $color="#666666"; $userclass=$actl[1]; }
+ if ($since>1800) { $color="#666666"; $userclass=$actl[1]; }
if ($since>7200) { $color="#888888"; }
if ($since>21600) { $color="#AAAAAA"; $userclass=$actl[2]; }
return ($color,$userclass);
@@ -80,6 +80,7 @@ sub main {
my @allfiles=(sort(readdir(DIR)));
foreach my $filename (@allfiles) {
if ($filename=~/^\./) { next; }
+ if ($filename=~/^publicuser_/) { next; }
my ($dev,$ino,$mode,$nlink,
$uid,$gid,$rdev,$size,
$atime,$mtime,$ctime,
@@ -89,18 +90,20 @@ sub main {
my $sinceacc=$now-$atime;
unless ($oneline || $justsummary) { print ("\n\n
"); }
my %userinfo;
- my $fh=IO::File->new($$perlvar{'lonIDsDir'}.'/'.$filename);
- while (my $line=<$fh>) {
- chomp($line);
- my ($name,$value)=split(/\=/,$line);
- $userinfo{$name}=$value;
- }
- $fh->close();
+ ($userinfo{'user.name'},undef,$userinfo{'user.domain'})=
+ split('_',$filename);
my ($color,$userclass)=&analyze_time($since);
&add_count('Overall','all',$userclass);
&add_count('Domain',$userinfo{'user.domain'},$userclass);
unless ($oneline) {
+ my $fh=IO::File->new($$perlvar{'lonIDsDir'}.'/'.$filename);
+ while (my $line=<$fh>) {
+ chomp($line);
+ my ($name,$value)=split(/\=/,$line);
+ $userinfo{$name}=$value;
+ }
+ $fh->close();
if (!$justsummary) {
print '';
print ''.$userinfo{'environment.lastname'}.', '.
@@ -110,11 +113,13 @@ sub main {
$userinfo{'user.name'}."\@".$userinfo{'user.domain'}.
")
\nLogin time: ".
localtime($userinfo{'user.login.time'}).
- ' Browser: '.$userinfo{'browser.type'}." Client: ".
+ ' Browser: '.$userinfo{'browser.type'}.
+ " on ".$userinfo{'browser.os'}."Client: ".
$userinfo{'request.host'}."
\nRole: ".
$userinfo{'request.role'}." ";
}
&add_count('Browser',$userinfo{'browser.type'},$userinfo{'browser.version'});
+ &add_count('OS',$userinfo{'browser.os'},$userinfo{'browser.type'});
if ($userinfo{'request.course.id'}) {
my $cid=$userinfo{'request.course.id'};
my $coursename= $userinfo{'course.'.$cid.'.description'}.
@@ -144,6 +149,7 @@ sub main {
&showact('Domain',%usercount);
&showact('Course',%usercount);
&show('Browser',%usercount);
+ &show('OS',%usercount);
# print "\n";
print "Load Average: ".$loadavg;