[LON-CAPA-cvs] cvs: rat / lonuserstate.pm
raeburn
raeburn at source.lon-capa.org
Sat Sep 6 14:16:16 EDT 2025
raeburn Sat Sep 6 18:16:16 2025 EDT
Modified files:
/rat lonuserstate.pm
Log:
- If resource level parameter for part 0 is set to "no" for encrypturl in
the Parameter Manager it will override value of "yes" set for "URL hidden"
for resource in the XML of the map containing it.
Index: rat/lonuserstate.pm
diff -u rat/lonuserstate.pm:1.171 rat/lonuserstate.pm:1.172
--- rat/lonuserstate.pm:1.171 Mon May 26 19:55:11 2025
+++ rat/lonuserstate.pm Sat Sep 6 18:16:16 2025
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# Construct and maintain state and binary representation of course for user
#
-# $Id: lonuserstate.pm,v 1.171 2025/05/26 19:55:11 raeburn Exp $
+# $Id: lonuserstate.pm,v 1.172 2025/09/06 18:16:16 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -1150,6 +1150,20 @@
my $symb=&Apache::lonnet::encode_symb($hash{'map_id_'.$mapid},$resid,$hash{'src_'.$rid});
my $hidden=&Apache::lonnet::EXT('resource.0.hiddenresource',$symb);
+ my @recurseup;
+ if ($hash{'is_map_'.$rid}) {
+ my ($cdom,$cnum) = split(/_/,$cid);
+ my $mapsrc = $hash{'src_'.$rid};
+ my $map_pc = $hash{'map_pc_'.$mapsrc};
+ my @pcs = split(/,/,$hash{'map_hierarchy_'.$map_pc});
+ shift(@pcs);
+ @recurseup = map { &Apache::lonnet::declutter($hash{'map_id_'.$_}) } reverse(@pcs);
+ } else {
+ my @pcs = split(/,/,$hash{'map_hierarchy_'.$mapid});
+ shift(@pcs);
+ @recurseup = map { &Apache::lonnet::declutter($hash{'map_id_'.$_}) } reverse(@pcs);
+ }
+
if ($hdnflag || lc($hidden) eq 'yes') {
$hiddenurl{$rid}=1;
}
@@ -1157,22 +1171,23 @@
delete($hiddenurl{$rid});
}
- my $encrypt=&Apache::lonnet::EXT('resource.0.encrypturl',$symb);
- if ($encflag || lc($encrypt) eq 'yes') { $encurl{$rid}=1; }
+ my $encrypt=&Apache::lonnet::EXT('resource.0.encrypturl',$symb,'','','','',$cid,\@recurseup);
+ if ($encflag || lc($encrypt) eq 'yes') {
+ $encurl{$rid}=1;
+ }
+ if (!$encflag && lc($encrypt) eq 'no') {
+ delete($encurl{$rid});
+ }
if (($retfrid eq '') && ($hash{'src_'.$rid})
&& ($hash{'src_'.$rid}!~/\.sequence$/)) {
$retfrid=$rid;
}
- my (@deeplink, at recurseup);
+ my @deeplink;
if ($hash{'is_map_'.$rid}) {
my ($cdom,$cnum) = split(/_/,$cid);
my $mapsrc = $hash{'src_'.$rid};
- my $map_pc = $hash{'map_pc_'.$mapsrc};
- my @pcs = split(/,/,$hash{'map_hierarchy_'.$map_pc});
- shift(@pcs);
- @recurseup = map { &Apache::lonnet::declutter($hash{'map_id_'.$_}) } reverse(@pcs);
my $mapname = &Apache::lonnet::declutter(&Apache::lonnet::deversion($mapsrc));
my $deeplinkval = &get_mapparam($env{'user.name'},$env{'user.domain'},$cnum,$cdom,
$rid,$mapname,'0.deeplink',\@recurseup);
@@ -1180,9 +1195,6 @@
@deeplink = ($deeplinkval,'map');
}
} else {
- my @pcs = split(/,/,$hash{'map_hierarchy_'.$mapid});
- shift(@pcs);
- @recurseup = map { &Apache::lonnet::declutter($hash{'map_id_'.$_}) } reverse(@pcs);
@deeplink = &Apache::lonnet::EXT('resource.0.deeplink',$symb,'','','','',$cid,\@recurseup);
}
unless (@deeplink < 2) {
More information about the LON-CAPA-cvs
mailing list