[LON-CAPA-cvs] cvs: loncom /auth lonroles.pm /interface loncommon.pm londocs.pm lonnavdisplay.pm lonquickgrades.pm lontiny.pm /lonnet/perl lonnet.pm rat lonpageflip.pm lonsequence.pm

raeburn raeburn at source.lon-capa.org
Sat Oct 29 14:13:30 EDT 2022


raeburn		Sat Oct 29 18:13:30 2022 EDT

  Modified files:              
    /loncom/interface	lontiny.pm lonquickgrades.pm lonnavdisplay.pm 
                     	londocs.pm loncommon.pm 
    /rat	lonpageflip.pm lonsequence.pm 
    /loncom/auth	lonroles.pm 
    /loncom/lonnet/perl	lonnet.pm 
  Log:
  - Bug 6975
    - &get_supplemental() routine moved from lonnet.pm to loncommon.pm
    - use LONCAPA::map() moved out of conditional block in loncommon.pm
    - $keeporder arg for update_content_constraints() no longer needed 
  
  
-------------- next part --------------
Index: loncom/interface/lontiny.pm
diff -u loncom/interface/lontiny.pm:1.17 loncom/interface/lontiny.pm:1.18
--- loncom/interface/lontiny.pm:1.17	Wed Oct 19 18:09:04 2022
+++ loncom/interface/lontiny.pm	Sat Oct 29 18:13:28 2022
@@ -2,7 +2,7 @@
 # Extract domain, courseID, and symb from a shortened URL,
 # and switch role to a role in designated course.
 #
-# $Id: lontiny.pm,v 1.17 2022/10/19 18:09:04 raeburn Exp $
+# $Id: lontiny.pm,v 1.18 2022/10/29 18:13:28 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -160,7 +160,7 @@
                                         if ($reinitresult eq 'supp') {
                                             $possdel = 1;
                                         }
-                                        my ($supplemental,$refs_updated) = &Apache::lonnet::get_supplemental($cnum,$cdom,'',$possdel);
+                                        my ($supplemental,$refs_updated) = &Apache::loncommon::get_supplemental($cnum,$cdom,'',$possdel);
                                         unless ($refs_updated) {
                                             &Apache::loncommon::set_supp_httprefs($cnum,$cdom,$supplemental,$possdel);
                                         }
Index: loncom/interface/lonquickgrades.pm
diff -u loncom/interface/lonquickgrades.pm:1.124 loncom/interface/lonquickgrades.pm:1.125
--- loncom/interface/lonquickgrades.pm:1.124	Wed Oct 19 18:09:04 2022
+++ loncom/interface/lonquickgrades.pm	Sat Oct 29 18:13:28 2022
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # Quick Student Grades Display
 #
-# $Id: lonquickgrades.pm,v 1.124 2022/10/19 18:09:04 raeburn Exp $
+# $Id: lonquickgrades.pm,v 1.125 2022/10/29 18:13:28 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -170,7 +170,7 @@
             if ($reinitresult eq 'supp') {
                 $possdel = 1;
             }
-            my ($supplemental,$refs_updated) = &Apache::lonnet::get_supplemental($cnum,$cdom,'',$possdel);
+            my ($supplemental,$refs_updated) = &Apache::loncommon::get_supplemental($cnum,$cdom,'',$possdel);
             unless ($refs_updated) {
                 &Apache::loncommon::set_supp_httprefs($cnum,$cdom,$supplemental);
             }
Index: loncom/interface/lonnavdisplay.pm
diff -u loncom/interface/lonnavdisplay.pm:1.40 loncom/interface/lonnavdisplay.pm:1.41
--- loncom/interface/lonnavdisplay.pm:1.40	Wed Oct 19 00:03:10 2022
+++ loncom/interface/lonnavdisplay.pm	Sat Oct 29 18:13:28 2022
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # Navigate Maps Display Handler
 #
-# $Id: lonnavdisplay.pm,v 1.40 2022/10/19 00:03:10 raeburn Exp $
+# $Id: lonnavdisplay.pm,v 1.41 2022/10/29 18:13:28 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -120,7 +120,7 @@
         if ($result eq 'supp') {
             $possdel = 1;
         }
-        my ($supplemental,$refs_updated) = &Apache::lonnet::get_supplemental($cnum,$cdom,'',$possdel);
+        my ($supplemental,$refs_updated) = &Apache::loncommon::get_supplemental($cnum,$cdom,'',$possdel);
         unless ($refs_updated) {
             &Apache::loncommon::set_supp_httprefs($cnum,$cdom,$supplemental,$possdel);
         }
Index: loncom/interface/londocs.pm
diff -u loncom/interface/londocs.pm:1.687 loncom/interface/londocs.pm:1.688
--- loncom/interface/londocs.pm:1.687	Sat Oct 29 14:47:00 2022
+++ loncom/interface/londocs.pm	Sat Oct 29 18:13:28 2022
@@ -1,7 +1,7 @@
 # The LearningOnline Network
 # Documents
 #
-# $Id: londocs.pm,v 1.687 2022/10/29 14:47:00 raeburn Exp $
+# $Id: londocs.pm,v 1.688 2022/10/29 18:13:28 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -205,7 +205,7 @@
                     $backto .= '&'.$items[$i];
                     my $is_hidden;
                     unless ($got_supp) {
-                        my ($supplemental) = &Apache::lonnet::get_supplemental($coursenum,$coursedom);
+                        my ($supplemental) = &Apache::loncommon::get_supplemental($coursenum,$coursedom);
                         if (ref($supplemental) eq 'HASH') {
                             if (ref($supplemental->{'hidden'}) eq 'HASH') {
                                 %supphidden = %{$supplemental->{'hidden'}};
@@ -3562,7 +3562,7 @@
     }
 
     if ((!$allowed) && ($folder =~ /^supplemental_\d+$/)) {
-        my ($supplemental) = &Apache::lonnet::get_supplemental($coursenum,$coursedom);
+        my ($supplemental) = &Apache::loncommon::get_supplemental($coursenum,$coursedom);
         if (ref($supplemental) eq 'HASH') {
             if ((ref($supplemental->{'hidden'}) eq 'HASH') &&
                 (ref($supplemental->{'ids'}) eq 'HASH')) {
@@ -5802,7 +5802,7 @@
             if ($supplementalflag) {
                 ($foldername,$hiddenfolder) = ($pathitems[-1] =~ /^([^:]*)::(|1):::$/);
                 $foldername = &HTML::Entities::decode(&unescape($foldername));
-                my ($supplemental) = &Apache::lonnet::get_supplemental($coursenum,$coursedom);
+                my ($supplemental) = &Apache::loncommon::get_supplemental($coursenum,$coursedom);
                 if (ref($supplemental) eq 'HASH') {
                     my ($suppmap,$suppmapnum);
                     if ($folder eq 'supplemental') {
Index: loncom/interface/loncommon.pm
diff -u loncom/interface/loncommon.pm:1.1394 loncom/interface/loncommon.pm:1.1395
--- loncom/interface/loncommon.pm:1.1394	Sat Oct 29 17:44:05 2022
+++ loncom/interface/loncommon.pm	Sat Oct 29 18:13:28 2022
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # a pile of common routines
 #
-# $Id: loncommon.pm,v 1.1394 2022/10/29 17:44:05 raeburn Exp $
+# $Id: loncommon.pm,v 1.1395 2022/10/29 18:13:28 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -72,6 +72,7 @@
 use Apache::courseclassifier();
 use LONCAPA qw(:DEFAULT :match);
 use LONCAPA::LWPReq;
+use LONCAPA::map();
 use HTTP::Request;
 use DateTime::TimeZone;
 use DateTime::Locale;
@@ -17062,7 +17063,6 @@
 #
     unless (($args->{'nonstandard'}) || ($args->{'firstres'} eq 'blank')
 	    || ($cloneid)) {
-	use LONCAPA::map;
 	$outcome .= &mt('Setting first resource').': ';
 
 	my $map = '/uploaded/'.$$crsudom.'/'.$$crsunum.'/default.sequence';
@@ -18369,7 +18369,7 @@
 }
 
 sub update_content_constraints {
-    my ($cdom,$cnum,$chome,$cid,$keeporder) = @_;
+    my ($cdom,$cnum,$chome,$cid) = @_;
     my %curr_reqd_hash = &Apache::lonnet::userenvironment($cdom,$cnum,'internal.releaserequired');
     my ($reqdmajor,$reqdminor) = split(/\./,$curr_reqd_hash{'internal.releaserequired'});
     my (%checkresponsetypes,%checkcrsrestypes);
@@ -18417,20 +18417,6 @@
         }
         undef($navmap);
     }
-    my (@resources, at order, at resparms, at zombies);
-    if ($keeporder) {
-        use LONCAPA::map;
-        @resources = @LONCAPA::map::resources;
-        @order = @LONCAPA::map::order;
-        @resparms = @LONCAPA::map::resparms;
-        @zombies = @LONCAPA::map::zombies;
-    }
-    if ($keeporder) {
-        @LONCAPA::map::resources = @resources;
-        @LONCAPA::map::order = @order;
-        @LONCAPA::map::resparms = @resparms;
-        @LONCAPA::map::zombies = @zombies;
-    }
     if (&Apache::lonnet::count_supptools($cnum,$cdom,1)) {
         my ($major,$minor) = split(/\./,$checkcrsrestypes{'exttool'});
         if (($major > $reqdmajor) || ($major == $reqdmajor && $minor > $reqdminor)) {
@@ -18457,7 +18443,7 @@
     if ($lastchange > $env{'request.course.tied'}) {
         my ($furl,$ferr) = &Apache::lonuserstate::readmap("$cdom/$cnum");
         unless ($ferr) {
-            &update_content_constraints($cdom,$cnum,$chome,$cid,1);
+            &update_content_constraints($cdom,$cnum,$chome,$cid);
         }
     }
     my $navmap = Apache::lonnavmaps::navmap->new();
@@ -18492,6 +18478,42 @@
     return $title;
 }
 
+sub get_supplemental {
+    my ($cnum,$cdom,$ignorecache,$possdel)=@_;
+    my $hashid=$cnum.':'.$cdom;
+    my ($supplemental,$cached,$set_httprefs);
+    unless ($ignorecache) {
+        ($supplemental,$cached) = &Apache::lonnet::is_cached_new('supplemental',$hashid);
+    }
+    unless (defined($cached)) {
+        my $chome=&Apache::lonnet::homeserver($cnum,$cdom);
+        unless ($chome eq 'no_host') {
+            my @order = @LONCAPA::map::order;
+            my @resources = @LONCAPA::map::resources;
+            my @resparms = @LONCAPA::map::resparms;
+            my @zombies = @LONCAPA::map::zombies;
+            my ($errors,%ids,%hidden);
+            $errors =
+                &recurse_supplemental($cnum,$cdom,'supplemental.sequence',
+                                      $errors,$possdel,\%ids,\%hidden);
+            @LONCAPA::map::order = @order;
+            @LONCAPA::map::resources = @resources;
+            @LONCAPA::map::resparms = @resparms;
+            @LONCAPA::map::zombies = @zombies;
+            $set_httprefs = 1;
+            if ($env{'request.course.id'} eq $cdom.'_'.$cnum) {
+                &Apache::lonnet::appenv({'request.course.suppupdated' => time});
+            }
+            $supplemental = {
+                               ids => \%ids,
+                               hidden => \%hidden,
+                            };
+            &Apache::lonnet::do_cache_new('supplemental',$hashid,$supplemental,600);
+        }
+    }
+    return ($supplemental,$set_httprefs);
+}
+
 sub recurse_supplemental {
     my ($cnum,$cdom,$suppmap,$errors,$possdel,$suppids,$hiddensupp,$hidden) = @_;
     if (($suppmap) && (ref($suppids) eq 'HASH') && (ref($hiddensupp) eq 'HASH')) {
@@ -18692,7 +18714,7 @@
                     $changed = 1;
                     my $is_hidden;
                     unless ($got_supp) {
-                        my ($supplemental) = &Apache::lonnet::get_supplemental($coursenum,$coursedom);
+                        my ($supplemental) = &get_supplemental($coursenum,$coursedom);
                         if (ref($supplemental) eq 'HASH') {
                             if (ref($supplemental->{'hidden'}) eq 'HASH') {
                                 %supphidden = %{$supplemental->{'hidden'}};
Index: rat/lonpageflip.pm
diff -u rat/lonpageflip.pm:1.113 rat/lonpageflip.pm:1.114
--- rat/lonpageflip.pm:1.113	Wed Oct 19 18:09:03 2022
+++ rat/lonpageflip.pm	Sat Oct 29 18:13:29 2022
@@ -2,7 +2,7 @@
 #
 # Page flip handler
 #
-# $Id: lonpageflip.pm,v 1.113 2022/10/19 18:09:03 raeburn Exp $
+# $Id: lonpageflip.pm,v 1.114 2022/10/29 18:13:29 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -549,7 +549,7 @@
               if ($reinitcheck eq 'supp') {
                   $possdel = 1;
               }
-              my ($supplemental,$refs_updated) = &Apache::lonnet::get_supplemental($cnum,$cdom,'',$possdel);
+              my ($supplemental,$refs_updated) = &Apache::loncommon::get_supplemental($cnum,$cdom,'',$possdel);
               unless ($refs_updated) {
                   &Apache::loncommon::set_supp_httprefs($cnum,$cdom,$supplemental);
               }
Index: rat/lonsequence.pm
diff -u rat/lonsequence.pm:1.58 rat/lonsequence.pm:1.59
--- rat/lonsequence.pm:1.58	Wed Oct 19 18:09:03 2022
+++ rat/lonsequence.pm	Sat Oct 29 18:13:29 2022
@@ -2,7 +2,7 @@
 #
 # Sequence Handler
 #
-# $Id: lonsequence.pm,v 1.58 2022/10/19 18:09:03 raeburn Exp $
+# $Id: lonsequence.pm,v 1.59 2022/10/29 18:13:29 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -254,7 +254,7 @@
                if ($result eq 'supp') {
                    $possdel = 1;
                }
-               my ($supplemental,$refs_updated) = &Apache::lonnet::get_supplemental($cnum,$cdom,'',$possdel);
+               my ($supplemental,$refs_updated) = &Apache::loncommon::get_supplemental($cnum,$cdom,'',$possdel);
                unless ($refs_updated) {
                    &Apache::loncommon::set_supp_httprefs($cnum,$cdom,$supplemental,$possdel);
                }
Index: loncom/auth/lonroles.pm
diff -u loncom/auth/lonroles.pm:1.368 loncom/auth/lonroles.pm:1.369
--- loncom/auth/lonroles.pm:1.368	Wed Oct 19 00:03:11 2022
+++ loncom/auth/lonroles.pm	Sat Oct 29 18:13:29 2022
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # User Roles Screen
 #
-# $Id: lonroles.pm,v 1.368 2022/10/19 00:03:11 raeburn Exp $
+# $Id: lonroles.pm,v 1.369 2022/10/29 18:13:29 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -3615,7 +3615,7 @@
 
 sub set_supplemental_access {
     my ($cnum,$cdom) = @_;
-    my ($supplemental,$refs_updated) = &Apache::lonnet::get_supplemental($cnum,$cdom);
+    my ($supplemental,$refs_updated) = &Apache::loncommon::get_supplemental($cnum,$cdom);
     unless ($refs_updated) {
         &Apache::loncommon::set_supp_httprefs($cnum,$cdom,$supplemental);
     }
Index: loncom/lonnet/perl/lonnet.pm
diff -u loncom/lonnet/perl/lonnet.pm:1.1499 loncom/lonnet/perl/lonnet.pm:1.1500
--- loncom/lonnet/perl/lonnet.pm:1.1499	Sat Oct 22 21:13:47 2022
+++ loncom/lonnet/perl/lonnet.pm	Sat Oct 29 18:13:29 2022
@@ -1,7 +1,7 @@
 # The LearningOnline Network
 # TCP networking package
 #
-# $Id: lonnet.pm,v 1.1499 2022/10/22 21:13:47 raeburn Exp $
+# $Id: lonnet.pm,v 1.1500 2022/10/29 18:13:29 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -12468,7 +12468,7 @@
         my $chome=&homeserver($cnum,$cdom);
         $numexttools = 0;
         unless ($chome eq 'no_host') {
-            my ($supplemental) = &get_supplemental($cnum,$cdom,$reload);
+            my ($supplemental) = &Apache::loncommon::get_supplemental($cnum,$cdom,$reload);
             if (ref($supplemental) eq 'HASH') {
                 if ((ref($supplemental->{'ids'}) eq 'HASH') && (ref($supplemental->{'hidden'}) eq 'HASH')) {
                     foreach my $key (keys(%{$supplemental->{'ids'}})) {
@@ -12494,7 +12494,7 @@
     unless (defined($cached)) {
         my $chome=&homeserver($cnum,$cdom);
         unless ($chome eq 'no_host') {
-            my ($supplemental) = &get_supplemental($cnum,$cdom,$ignorecache,$possdel);
+            my ($supplemental) = &Apache::loncommon::get_supplemental($cnum,$cdom,$ignorecache,$possdel);
             if (ref($supplemental) eq 'HASH') {
                 if ((ref($supplemental->{'ids'}) eq 'HASH') && (ref($supplemental->{'hidden'}) eq 'HASH')) {
                     foreach my $key (keys(%{$supplemental->{'ids'}})) {
@@ -12517,43 +12517,6 @@
     return $showsupp;
 }
 
-sub get_supplemental {
-    my ($cnum,$cdom,$ignorecache,$possdel)=@_;
-    my $hashid=$cnum.':'.$cdom;
-    my ($supplemental,$cached,$set_httprefs);
-    unless ($ignorecache) {
-        ($supplemental,$cached) = &is_cached_new('supplemental',$hashid);
-    }
-    unless (defined($cached)) {
-        my $chome=&homeserver($cnum,$cdom);
-        unless ($chome eq 'no_host') {
-            my @order = @LONCAPA::map::order;
-            my @resources = @LONCAPA::map::resources;
-            my @resparms = @LONCAPA::map::resparms;
-            my @zombies = @LONCAPA::map::zombies;
-            my ($errors,%ids,%hidden);
-            $errors =
-                &Apache::loncommon::recurse_supplemental($cnum,$cdom,
-                                                         'supplemental.sequence',
-                                                         $errors,$possdel,\%ids,\%hidden);
-            @LONCAPA::map::order = @order;
-            @LONCAPA::map::resources = @resources;
-            @LONCAPA::map::resparms = @resparms;
-            @LONCAPA::map::zombies = @zombies;
-            $set_httprefs = 1;
-            if ($env{'request.course.id'} eq $cdom.'_'.$cnum) {
-                &Apache::lonnet::appenv({'request.course.suppupdated' => time});
-            }
-            $supplemental = {
-                               ids => \%ids,
-                               hidden => \%hidden,
-                            };
-            &do_cache_new('supplemental',$hashid,$supplemental,600);
-        }
-    }
-    return ($supplemental,$set_httprefs);
-}
-
 #
 # EXT resource caching routines
 #


More information about the LON-CAPA-cvs mailing list