--- loncom/interface/lonnavmaps.pm 2004/10/27 18:15:31 1.301 +++ loncom/interface/lonnavmaps.pm 2004/11/11 22:47:55 1.305 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Navigate Maps Handler # -# $Id: lonnavmaps.pm,v 1.301 2004/10/27 18:15:31 albertel Exp $ +# $Id: lonnavmaps.pm,v 1.305 2004/11/11 22:47:55 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -33,6 +33,7 @@ use strict; use Apache::Constants qw(:common :http); use Apache::loncommon(); use Apache::lonmenu(); +use Apache::lonenc(); use Apache::lonlocal; use POSIX qw (floor strftime); use Data::Dumper; # for debugging, not always @@ -119,23 +120,6 @@ window.status='Done.'; ENDCLOSE } -sub nav_control_js { - my $nav=($ENV{'environment.remotenavmap'} eq 'on'); - return (<is_page()) { - return $res->src(); + return $res->link(); } # in case folder was skipped over as "only sequence" my ($map,$id,$src)=&Apache::lonnet::decode_symb($res->symb()); @@ -478,7 +462,7 @@ sub getLinkForResource { if (defined($_)) { $res = $_; } } - return $res->src(); + return $res->link(); } # Convenience function: This separates the logic of how to create @@ -1417,7 +1401,7 @@ sub render { # Determine where the "here" marker is and where the screen jumps to. if ($ENV{'form.postsymb'}) { - $here = $jump = $ENV{'form.postsymb'}; + $here = $jump = &Apache::lonnet::symbclean($ENV{'form.postsymb'}); } elsif ($ENV{'form.postdata'}) { # couldn't find a symb, is there a URL? my $currenturl = $ENV{'form.postdata'}; @@ -1871,7 +1855,7 @@ END my $srcHasQuestion = $src =~ /\?/; $args->{"resourceLink"} = $src. ($srcHasQuestion?'&':'?') . - 'symb=' . &Apache::lonnet::escape($curRes->symb()). + 'symb=' . &Apache::lonnet::escape($curRes->shown_symb()). $anchor; # Now, display each column. @@ -3463,6 +3447,7 @@ Returns the title of the resource. # These info functions can be used directly, as they don't return # resource information. sub comesfrom { my $self=shift; return $self->navHash("comesfrom_", 1); } +sub encrypted { my $self=shift; return $self->navHash("encrypted_", 1); } sub ext { my $self=shift; return $self->navHash("ext_", 1) eq 'true:'; } sub from { my $self=shift; return $self->navHash("from_", 1); } # considered private and undocumented @@ -3474,10 +3459,20 @@ sub randompick { return $self->{NAV_MAP}->{PARM_HASH}->{$self->symb . '.0.parameter_randompick'}; } +sub link { + my $self=shift; + if ($self->encrypted()) { return &Apache::lonenc::encrypted($self->src); } + return $self->src; +} sub src { my $self=shift; return $self->navHash("src_", 1); } +sub shown_symb { + my $self=shift; + if ($self->encrypted()) {return &Apache::lonenc::encrypted($self->symb());} + return $self->symb(); +} sub symb { my $self=shift; (my $first, my $second) = $self->{ID} =~ /(\d+).(\d+)/;