[LON-CAPA-cvs] cvs: modules /gerd/gcistuff londocs.pm

www www@source.lon-capa.org
Thu, 16 Jul 2009 06:37:13 -0000


www		Thu Jul 16 06:37:13 2009 EDT

  Modified files:              
    /modules/gerd/gcistuff	londocs.pm 
  Log:
  Saving my work on GCI Concept Test Assembly
  
  
Index: modules/gerd/gcistuff/londocs.pm
diff -u modules/gerd/gcistuff/londocs.pm:1.3 modules/gerd/gcistuff/londocs.pm:1.4
--- modules/gerd/gcistuff/londocs.pm:1.3	Wed Jul 15 09:14:10 2009
+++ modules/gerd/gcistuff/londocs.pm	Thu Jul 16 06:37:13 2009
@@ -2,7 +2,7 @@
 # Documents
 # Modified for GCI Concept Inventory Assemby
 #
-# $Id: londocs.pm,v 1.3 2009/07/15 09:14:10 www Exp $
+# $Id: londocs.pm,v 1.4 2009/07/16 06:37:13 www Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -42,6 +42,7 @@
 use Apache::lonxml;
 use Apache::lonclonecourse;
 use Apache::lonnavmaps;
+use Apache::lonindexer;
 use HTML::Entities;
 use GDBM_File;
 use Apache::lonlocal;
@@ -65,7 +66,8 @@
 my $version;
 my $reqnum;
 my @categories;
-my %problems;
+my @allprobs;
+my %probcat;
 my %prereqs;
 my @defchosen;
 my @chosen;
@@ -74,9 +76,22 @@
    $path='/res/gci/gci';
    $version='GCIv2-1-1';
    $reqnum=15;
+   @allprobs=('01','02','03','04','05','06','07','08','09','10',
+              '11','12','13','14','15','16','17','18','19','20',
+              '21','22','23','24','25','26','27','28','29','30',
+              '31','32','33','34','35','36','37','38',
+              '39A','39B',
+              '40',
+              '41','42','43','44','45','46','47','48','49','50',
+              '51','52','53','54','55','56','57','58',
+              '60',
+              '61','62','63','64','65','66','67','68','69','70',
+              '71',
+              '2004_73');
+
    @categories=('M1','M2','M3','M4',
                 'A','B','C','D','E','F','G','H','I','J','K');
-   %problems=('01' => 'M1','02' => 'M2','03' => 'A' ,'04' => 'A' ,'05' => ''  ,'06' => 'A' ,'07' => 'B' ,'08' => 'B' ,'09' => 'B' ,'10' => 'C' ,
+   %probcat =('01' => 'M1','02' => 'M2','03' => 'A' ,'04' => 'A' ,'05' => ''  ,'06' => 'A' ,'07' => 'B' ,'08' => 'B' ,'09' => 'B' ,'10' => 'C' ,
               '11' => ''  ,'12' => 'C' ,'13' => 'C' ,'14' => 'C' ,'15' => 'C' ,'16' => 'C' ,'17' => 'C' ,'18' => 'D' ,'19' => 'D' ,'20' => 'D' ,
               '21' => 'D' ,'22' => 'D' ,'23' => 'D' ,'24' => 'D' ,'25' => 'D' ,'26' => 'E' ,'27' => 'E' ,'28' => 'E' ,'29' => ''  ,'30' => 'E' ,
               '31' => ''  ,'32' => 'F' ,'33' => 'F' ,'34' => 'F' ,'35' => 'F' ,'36' => 'F' ,'37' => 'M3','38' => 'G' ,
@@ -102,7 +117,7 @@
    }
    foreach my $item (@chosen) {
       $chosenproblems{$item}=1;
-      $covered{$problems{$item}}=1;
+      $covered{$probcat{$item}}=1;
    }
    foreach my $cat (@categories) {
       unless ($covered{$cat}) {
@@ -116,6 +131,37 @@
           }
        }
    }
+   return @errors;
+}
+
+sub fullurl {
+   my ($item)=@_;
+   return $path.'/'.$version.'/GCI_'.$item.'.problem';
+}
+
+sub listresources {
+   my ($r)=@_;
+   my %chosen=();
+   foreach my $item (@chosen) {
+      $chosen{$item}=1;
+   }
+   $r->print(&Apache::loncommon::start_data_table().
+             &Apache::loncommon::start_data_table_header_row().
+             '<th>'.&mt('Select').'</th><th>'.&mt('Problem').'</th><th>'.&mt('Category').'</th><th>'.&mt('Preview').'</th>'.
+             &Apache::loncommon::end_data_table_header_row());
+   foreach my $item (@allprobs) {
+      $r->print(&Apache::loncommon::start_data_table_row());
+      $r->print('<td><font size="+3">');
+      $r->print('<input type="checkbox" name="item'.$item.'"');
+      if ($chosen{$item}) { $r->print(' checked="checked"'); }
+      $r->print(' /></font></td>');
+      $r->print('<td><font size="+3">'.$item.'</font></td><td><font size="+3">'.$probcat{$item}.'</font></td>');
+      my $output=&Apache::lonindexer::showpreview(&fullurl($item));
+      $r->print('<td> '.($output eq '' ? '&nbsp;':$output)." </td>\n");
+
+      $r->print( &Apache::loncommon::end_data_table_row());
+   }
+   $r->print(&Apache::loncommon::start_data_table());
 }
 
 sub mapread {
@@ -2051,8 +2097,14 @@
 # graphics settings
     $iconpath = &Apache::loncommon::lonhttpdurl($r->dir_config('lonIconsURL') . "/");
 
+# initialize default values
+
+    &setdefaults();
+
 # Only edit stuff if the user is allowed to edit
     if ($allowed) {
+       @chosen=@defchosen;
+       &listresources($r);
     }
     $r->print(&Apache::loncommon::end_page());
     return OK;