Diff for /loncom/lonmap.pm between versions 1.3 and 1.5

version 1.3, 2011/10/06 10:56:49 version 1.5, 2011/10/21 10:10:07
Line 95  my %cenv;   # Course environment. Line 95  my %cenv;   # Course environment.
   
 sub simplify {  sub simplify {
     my $expression=shift;      my $expression=shift;
     my $prior = ''; # This is safe as a null expression is pretty optimal.  
       
     while ($prior ne $expression) {  
  $prior = $expression; # Stop when the substitutions below do nothing.  
 # (0&1) = 1  # (0&1) = 1
  $expression=~s/\(0\&([_\.\d]+)\)/$1/g;   $expression=~s/\(0\&([_\.\d]+)\)/$1/g;
 # (8)=8  # (8)=8
Line 115  sub simplify { Line 112  sub simplify {
 # ((5&3)|(4&6))|(1&2)=(5&3)|(4&6)|(1&2)  # ((5&3)|(4&6))|(1&2)=(5&3)|(4&6)|(1&2)
  $expression=~   $expression=~
     s/\((\([_\.\d]+(?:\&[_\.\d]+)*\))((?:\|\([_\.\d]+(?:\&[_\.\d]+)*\))+)\)\|(\([_\.\d]+(?:\&[_\.\d]+)*\))/\($1$2\|$3\)/g;      s/\((\([_\.\d]+(?:\&[_\.\d]+)*\))((?:\|\([_\.\d]+(?:\&[_\.\d]+)*\))+)\)\|(\([_\.\d]+(?:\&[_\.\d]+)*\))/\($1$2\|$3\)/g;
     }  
   
     return $expression;      return $expression;
 }  }
           
Line 405  sub hiddenurls { Line 403  sub hiddenurls {
  my (undef,$id)=split(/\./,$rid);   my (undef,$id)=split(/\./,$rid);
         if ($randompickseed{$rid}) { $id=$randompickseed{$rid}; }          if ($randompickseed{$rid}) { $id=$randompickseed{$rid}; }
  my $rndseed=&Apache::lonnet::rndseed($id, $courseid, $udom, $uname, \%cenv); # use id instead of symb   my $rndseed=&Apache::lonnet::rndseed($id, $courseid, $udom, $uname, \%cenv); # use id instead of symb
  &Apache::lonnet::logthis("lonmap random seed: $rndseed");  
  &Apache::lonnet::setup_random_from_rndseed($rndseed);   &Apache::lonnet::setup_random_from_rndseed($rndseed);
  my @whichids=&Math::Random::random_permuted_index($#currentrids+1);   my @whichids=&Math::Random::random_permuted_index($#currentrids+1);
         for (my $i=1;$i<=$rndpick;$i++) { $currentrids[$whichids[$i]]=''; }          for (my $i=1;$i<=$rndpick;$i++) { $currentrids[$whichids[$i]]=''; }
Line 1387  sub loadmap { Line 1384  sub loadmap {
     %encurl         = ();      %encurl         = ();
     %hiddenurl      = ();      %hiddenurl      = ();
     %parmhash       = ();      %parmhash       = ();
     @cond           = ();      @cond           = ('true:normal'); # Initial value for cond 0.
     $retfrid        = '';      $retfrid        = '';
     $username       = '';      $username       = '';
     $userdomain     = '';      $userdomain     = '';
Line 1417  sub loadmap { Line 1414  sub loadmap {
     &Apache::lonnet::logthis("lonmap::loadmap failed: $cnum/$cdom - did not get url");      &Apache::lonnet::logthis("lonmap::loadmap failed: $cnum/$cdom - did not get url");
     return;       return; 
  }   }
  &Apache::lonnet::logthis("Course environment: \n" . Dumper(\%cenv));  
   
  $course_id = $cdom . '_' . $cnum; # Long course id.   $course_id = $cdom . '_' . $cnum; # Long course id.
   

Removed from v.1.3  
changed lines
  Added in v.1.5


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>