version 1.515, 2016/03/02 14:14:06
|
version 1.517, 2016/03/17 13:20:35
|
Line 2768 sub parmval_real {
|
Line 2768 sub parmval_real {
|
sub recurseup_maps { |
sub recurseup_maps { |
my ($self,$mapname) = @_; |
my ($self,$mapname) = @_; |
my @recurseup; |
my @recurseup; |
my @pcs = split(/,/,$self->getResourceByUrl(&Apache::lonnet::clutter($mapname))->map_hierarchy()); |
if ($mapname) { |
shift(@pcs); |
my @pcs = split(/,/,$self->getResourceByUrl(&Apache::lonnet::clutter($mapname))->map_hierarchy()); |
pop(@pcs); |
shift(@pcs); |
if (@pcs) { |
pop(@pcs); |
@recurseup = map { &Apache::lonnet::declutter($self->getByMapPc($_)->src()); } reverse(@pcs); |
if (@pcs) { |
|
@recurseup = map { &Apache::lonnet::declutter($self->getByMapPc($_)->src()); } reverse(@pcs); |
|
} |
} |
} |
return @recurseup; |
return @recurseup; |
} |
} |
Line 2817 sub get_mapparam {
|
Line 2819 sub get_mapparam {
|
|
|
unless ($symb) { return ['']; } |
unless ($symb) { return ['']; } |
my $result=''; |
my $result=''; |
|
my ($recursed,@recurseup); |
|
|
|
|
# Figure out which map we are in. |
# Figure out which map we are in. |
Line 2862 sub get_mapparam {
|
Line 2865 sub get_mapparam {
|
if (defined($$useropt{$courseleveli})) { |
if (defined($$useropt{$courseleveli})) { |
return $$useropt{$courseleveli}; |
return $$useropt{$courseleveli}; |
} |
} |
|
unless ($recursed) { |
|
@recurseup = $self->recurseup_maps($mapname); |
|
$recursed = 1; |
|
} |
|
foreach my $item (@recurseup) { |
|
my $norecursechk=$usercourseprefix.'.'.$item.'___(all).'.$what; |
|
last if (defined($$useropt{$norecursechk})); |
|
my $recursechk=$usercourseprefix.'.'.$item.'___(rec).'.$what; |
|
if (defined($$useropt{$recursechk})) { |
|
return $$useropt{$recursechk}; |
|
} |
|
} |
} |
} |
|
|
# Check course -- group |
# Check course -- group |
Line 2875 sub get_mapparam {
|
Line 2890 sub get_mapparam {
|
if (defined($$courseopt{$grpleveli})) { |
if (defined($$courseopt{$grpleveli})) { |
return $$courseopt{$grpleveli}; |
return $$courseopt{$grpleveli}; |
} |
} |
|
unless ($recursed) { |
|
@recurseup = $self->recurseup_maps($mapname); |
|
$recursed = 1; |
|
} |
|
foreach my $item (@recurseup) { |
|
my $norecursechk=$usercourseprefix.'.['.$cgroup.'].'.$item.'___(all).'.$what; |
|
last if (defined($$courseopt{$norecursechk})); |
|
my $recursechk=$usercourseprefix.'.['.$cgroup.'].'.$item.'___(rec).'.$what; |
|
if (defined($$courseopt{$recursechk})) { |
|
return $$courseopt{$recursechk}; |
|
} |
|
} |
} |
} |
|
|
# Check course -- section |
# Check course -- section |
|
|
|
|
if ($csec and defined($courseopt)) { |
if ($csec ne '' and defined($courseopt)) { |
if (defined($$courseopt{$seclevelm})) { |
if (defined($$courseopt{$seclevelm})) { |
return $$courseopt{$seclevelm}; |
return $$courseopt{$seclevelm}; |
} |
} |
if (defined($$courseopt{$secleveli})) { |
if (defined($$courseopt{$secleveli})) { |
return $$courseopt{$secleveli}; |
return $$courseopt{$secleveli}; |
} |
} |
|
unless ($recursed) { |
|
@recurseup = $self->recurseup_maps($mapname); |
|
$recursed = 1; |
|
} |
|
foreach my $item (@recurseup) { |
|
my $norecursechk=$usercourseprefix.'.['.$csec.'].'.$item.'___(all).'.$what; |
|
last if (defined($$courseopt{$norecursechk})); |
|
my $recursechk=$usercourseprefix.'.['.$csec.'].'.$item.'___(rec).'.$what; |
|
if (defined($$courseopt{$recursechk})) { |
|
return $$courseopt{$recursechk}; |
|
} |
|
} |
} |
} |
# Check the map parameters themselves: |
# Check the map parameters themselves: |
|
|
Line 2902 sub get_mapparam {
|
Line 2941 sub get_mapparam {
|
if (defined($$courseopt{$courselevelm})) { |
if (defined($$courseopt{$courselevelm})) { |
return $$courseopt{$courselevelm}; |
return $$courseopt{$courselevelm}; |
} |
} |
|
unless ($recursed) { |
|
@recurseup = $self->recurseup_maps($mapname); |
|
$recursed = 1; |
|
} |
|
if (@recurseup) { |
|
foreach my $item (@recurseup) { |
|
my $norecursechk=$usercourseprefix.'.'.$item.'___(all).'.$what; |
|
last if (defined($$courseopt{$norecursechk})); |
|
my $recursechk=$usercourseprefix.'.'.$item.'___(rec).'.$what; |
|
if (defined($$courseopt{$recursechk})) { |
|
return $$courseopt{$recursechk}; |
|
} |
|
} |
|
} |
} |
} |
return undef; # Unefined if we got here. |
return undef; # Undefined if we got here. |
} |
} |
|
|
sub course_printdates { |
sub course_printdates { |