--- loncom/misc/refresh_courseids_db.pl 2013/05/27 17:24:11 1.15 +++ loncom/misc/refresh_courseids_db.pl 2014/06/07 03:07:06 1.18 @@ -1,7 +1,7 @@ #!/usr/bin/perl # The LearningOnline Network # -# $Id: refresh_courseids_db.pl,v 1.15 2013/05/27 17:24:11 bisitz Exp $ +# $Id: refresh_courseids_db.pl,v 1.18 2014/06/07 03:07:06 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -184,8 +184,10 @@ sub recurse_courses { my $creationcontext = $courseinfo{'internal.creationcontext'}; my $inst_code = $courseinfo{'internal.coursecode'}; my $releaserequired = $courseinfo{'internal.releaserequired'}; + my $uniquecode = $courseinfo{'internal.uniquecode'}; $inst_code = '' if (!defined($inst_code)); $owner = '' if (!defined($owner)); + $uniquecode = '' if (!defined($uniquecode)); if ($created eq '') { if (ref($currhash->{$cid}) eq 'HASH') { $created = $currhash->{$cid}{'created'}; @@ -326,7 +328,7 @@ sub recurse_courses { $courseshash->{$chome}{$cid}{$item} = $courseinfo{$item}; } } - foreach my $item ('selfenroll_types','selfenroll_start_date','selfenroll_end_date') { + foreach my $item ('selfenroll_types','selfenroll_start_date','selfenroll_end_date','uniquecode') { if ($courseinfo{'internal.'.$item} ne '') { $courseshash->{$chome}{$cid}{$item} = $courseinfo{'internal.'.$item}; @@ -376,6 +378,13 @@ sub parameter_constraints { if ($key =~ /(\Q$item\E)$/) { if (ref($checkparms{$item}) eq 'ARRAY') { my $value = $resourcedata->{$key}; + if ($item eq 'examcode') { + if (&Apache::lonnet::validCODE($value)) { + $value = 'valid'; + } else { + $value = ''; + } + } if (grep(/^\Q$value\E$/,@{$checkparms{$item}})) { my ($major,$minor) = split(/\./,$Apache::lonnet::needsrelease{'parameter:'.$item.':'.$value}); ($reqdmajor,$reqdminor) = @@ -401,12 +410,12 @@ sub coursetype_constraints { sub commblock_constraints { my ($cnum,$cdom,$reqdmajor,$reqdminor) = @_; - my %comm_blocks = &Apache::lonnet::dump('commblock',$cdom,$cnum); + my %comm_blocks = &Apache::lonnet::dump('comm_block',$cdom,$cnum); my $now = time; if (keys(%comm_blocks) > 0) { foreach my $block (keys(%comm_blocks)) { if ($block =~ /^firstaccess____(.+)$/) { - my ($major,$minor) = split(/\./,$Apache::lonnet::needsrelease{'course.commblock.timer'}); + my ($major,$minor) = split(/\./,$Apache::lonnet::needsrelease{'course:commblock:timer'}); ($reqdmajor,$reqdminor) = &update_reqd_loncaparev($major,$minor,$reqdmajor,$reqdminor); last; } elsif ($block =~ /^(\d+)____(\d+)$/) { @@ -417,7 +426,7 @@ sub commblock_constraints { if (ref($comm_blocks{$block}{'blocks'}) eq 'HASH') { if (ref($comm_blocks{$block}{'blocks'}{'docs'}) eq 'HASH') { if (keys(%{$comm_blocks{$block}{'blocks'}{'docs'}}) > 0) { - my ($major,$minor) = split(/\./,$Apache::lonnet::needsrelease{'course.commblock.docs'}); + my ($major,$minor) = split(/\./,$Apache::lonnet::needsrelease{'course:commblock:docs'}); ($reqdmajor,$reqdminor) = &update_reqd_loncaparev($major,$minor,$reqdmajor,$reqdminor); last; }