version 1.108, 2021/08/06 01:27:04
|
version 1.111, 2021/12/31 19:51:04
|
Line 126 sub move {
|
Line 126 sub move {
|
} |
} |
$deeplinkonly = 0; |
$deeplinkonly = 0; |
if ($hash{'deeplinkonly_'.$next}) { |
if ($hash{'deeplinkonly_'.$next}) { |
my ($value,$level) = split(/:/,$hash{'deeplinkonly_'.$next}); |
my ($value,$level) = map { &unescape($_); } split(/:/,$hash{'deeplinkonly_'.$next}); |
my ($state,$others,$listed,$scope,$protect) = split(/,/,$value); |
my ($state,$others,$listed,$scope,$protect) = split(/,/,$value); |
unless (($state eq 'both') || ($hash{'is_map_'.$next})) { |
unless (($state eq 'both') || ($hash{'is_map_'.$next})) { |
if ($level eq 'resource') { |
if ($level eq 'resource') { |
Line 160 sub move {
|
Line 160 sub move {
|
} |
} |
} |
} |
} elsif (($hash{'deeplinkonly_'.$prev}) && (!$firstres)) { |
} elsif (($hash{'deeplinkonly_'.$prev}) && (!$firstres)) { |
my ($value,$level) = split(/:/,$hash{'deeplinkonly_'.$prev}); |
my ($value,$level) = map { &unescape($_); } split(/:/,$hash{'deeplinkonly_'.$prev}); |
my ($state,$others,$listed,$scope,$protect) = split(/,/,$value); |
my ($state,$others,$listed,$scope,$protect) = split(/,/,$value); |
unless (($state eq 'both') || ($hash{'is_map_'.$prev})) { |
unless (($state eq 'both') || ($hash{'is_map_'.$prev})) { |
if ($level eq 'resource') { |
if ($level eq 'resource') { |
Line 425 sub get_deeplink_login_pc {
|
Line 425 sub get_deeplink_login_pc {
|
if (($env{'request.deeplink.login'}) && ($env{'request.course.id'})) { |
if (($env{'request.deeplink.login'}) && ($env{'request.course.id'})) { |
my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'}; |
my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'}; |
my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'}; |
my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'}; |
if ($env{'request.deeplink.login'}) { |
my $deeplink_symb = &Apache::loncommon::deeplink_login_symb($cnum,$cdom); |
my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'}; |
if ($deeplink_symb) { |
my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'}; |
my $loginmap; |
my $deeplink_symb = &Apache::loncommon::deeplink_login_symb($cnum,$cdom); |
if ($deeplink_symb =~ /\.(page|sequence)$/) { |
if ($deeplink_symb) { |
$loginmap = &Apache::lonnet::clutter((&Apache::lonnet::decode_symb($deeplink_symb))[2]); |
my $loginmap; |
} else { |
if ($deeplink_symb =~ /\.(page|sequence)$/) { |
$loginmap = &Apache::lonnet::clutter((&Apache::lonnet::decode_symb($deeplink_symb))[0]); |
$loginmap = &Apache::lonnet::clutter((&Apache::lonnet::decode_symb($deeplink_symb))[2]); |
|
} else { |
|
$loginmap = &Apache::lonnet::clutter((&Apache::lonnet::decode_symb($deeplink_symb))[0]); |
|
} |
|
$deeplink_login_pc = $hash{'map_pc_'.$loginmap}; |
|
} |
} |
|
$deeplink_login_pc = $hash{'map_pc_'.$loginmap}; |
} |
} |
} |
} |
return $deeplink_login_pc; |
return $deeplink_login_pc; |
Line 694 sub handler {
|
Line 690 sub handler {
|
my $mapid = $hash{'map_pc_'.&Apache::lonnet::clutter($map)}; |
my $mapid = $hash{'map_pc_'.&Apache::lonnet::clutter($map)}; |
my $position_deeplink = $hash{'deeplinkonly_'.$mapid.'.'.$resid}; |
my $position_deeplink = $hash{'deeplinkonly_'.$mapid.'.'.$resid}; |
if ($position_deeplink) { |
if ($position_deeplink) { |
(my $value,$deeplinklevel) = split(/:/,$position_deeplink); |
(my $value,$deeplinklevel) = map { &unescape($_); } |
|
split(/:/,$position_deeplink); |
} |
} |
} |
} |
} |
} |
Line 839 ENDSTART
|
Line 836 ENDSTART
|
} |
} |
} |
} |
} |
} |
unless (($env{'course.'.$env{'request.course.id'}.'.type'} eq 'Placement') || |
unless (($env{'course.'.$env{'request.course.id'}.'.type'} eq 'Placement') && |
($env{'request.role.adv'})) { |
(!$env{'request.role.adv'})) { |
if ($deeplinklevel) { |
if ($deeplinklevel) { |
$r->print( |
$r->print( |
&Apache::lonhtmlcommon::actionbox( |
&Apache::lonhtmlcommon::actionbox( |