[LON-CAPA-cvs] cvs: modules /albertel course_info.pl

albertel lon-capa-cvs@mail.lon-capa.org
Thu, 28 Sep 2006 03:22:03 -0000


albertel		Wed Sep 27 23:22:03 2006 EDT

  Modified files:              
    /modules/albertel	course_info.pl 
  Log:
  - updating for version 2.2
  
  
Index: modules/albertel/course_info.pl
diff -u modules/albertel/course_info.pl:1.7 modules/albertel/course_info.pl:1.8
--- modules/albertel/course_info.pl:1.7	Thu Jan 19 12:50:59 2006
+++ modules/albertel/course_info.pl	Wed Sep 27 23:22:01 2006
@@ -4,6 +4,7 @@
 use lib '/home/httpd/lib/perl';
 use IO::File;
 use Apache::lonnet;
+use Apache::lonxml;
 use Apache::lonuserstate;
 use Apache::loncoursedata;
 use LONCAPA::Configuration;
@@ -31,13 +32,13 @@
     my @domains_do = split(',',$domain);
     foreach my $dom (sort(@domains)) {
 	if ($domain ne 'all') {
-	    if (!grep(/\Q$dom\E/,@domains_do)) { print("$dom isn't in @domains_do\n"); next; }
+	    if (!grep(/\Q$dom\E/,@domains_do)) { next; }
 	}
 	&logfile("output/$year/$year.$dom.info");
 	&log("\n\n$dom\n");
 	&increaselog();
 	my %courses = 
-	    &Apache::lonnet::courseiddump($dom,'.',1,'.','.','.',1,\@hostids);
+	    &Apache::lonnet::courseiddump($dom,'.',1,'.','.','.',1,\@hostids,'.');
 	foreach my $key (sort 
 			 { 
 			     my ($acdom,$acnum) = split('_',$a);
@@ -68,7 +69,7 @@
     &log('Created on: '.scalar(localtime(&creation_date($cdom,$cnum)))."\n");
     &log_adv_users($cdom,$cnum);
     &log_classlist($cdom,$cnum);
-    &log_course_info($cdom,$cnum);
+    #&log_course_info($cdom,$cnum);
     &decreaselog();
 }
 
@@ -183,20 +184,33 @@
 	? &Apache::loncoursedata::get_classlist($cdom.'_'.$cnum,$cdom,$cnum)
 	: &Apache::loncoursedata::get_classlist($cdom,$cnum);
     my $classlist = &Apache::loncoursedata::get_classlist($cdom,$cnum);
-    my (%sections,%activity_count);
-    my $numsections = &Apache::loncommon::get_sections($cdom,$cnum,\%sections);
+    my (%activity_count);
+    my %sections = &Apache::loncommon::get_sections($cdom,$cnum);
     my $seccol   = &Apache::loncoursedata::CL_SECTION();
     my $startcol = &Apache::loncoursedata::CL_START();
     my $endcol   = &Apache::loncoursedata::CL_END();
     &log("Total \# of students: ".scalar(keys(%{ $classlist })));
+    &log("Section list: ".join(', ',keys(%sections)));
+print $sections{''};
     &increaselog();
     foreach my $section (sort(keys(%sections))) {
-	if ($section eq 'NONE') { $section=''; }
+	my $cl_section = $section;
+	if ($section eq 'NONE') { $cl_section=''; }
 	my ($active_users,$total_logins) = (0,0);
 	foreach my $user (keys(%{ $classlist })) {
-	    if ($classlist->{$user}[$seccol] ne $section) { next; }
-	    my $act_key = strftime("%F",localtime($classlist->{$user}[$startcol])).':'.
-		          strftime("%F",localtime($classlist->{$user}[$endcol]));
+	    if ($classlist->{$user}[$seccol] ne $cl_section) { next; }
+	    my $act_key;
+	    if ($classlist->{$user}[$startcol]) {
+		$act_key .= strftime("%F",localtime($classlist->{$user}[$startcol]));
+	    } else {
+		$act_key .= ' ';
+	    }
+	    $act_key .= ':';
+	    if ($classlist->{$user}[$endcol]) {
+		$act_key .= strftime("%F",localtime($classlist->{$user}[$endcol]));
+	    } else {
+		$act_key .= ' ';
+	    }
 	    $activity_count{$act_key}++;
 	    my ($uname,$udom) = split(':',$user);
 	    my $num_logins = &num_logins($cdom,$cnum,$udom,$uname);
@@ -211,7 +225,7 @@
     }
     foreach my $timespan (sort(keys(%activity_count))) {
 	my ($start,$end)=split(':',$timespan,2);
-	&log(sprintf("%4s from %6s til %6s",$activity_count{$timespan},
+	&log(sprintf("%4s from %10s til %10s",$activity_count{$timespan},
 	     $start,$end));
     }
     &decreaselog();