[LON-CAPA-cvs] cvs: loncom(version_2_11_X) /auth lonlogout.pm

raeburn raeburn at source.lon-capa.org
Wed Mar 11 20:50:46 EDT 2015


raeburn		Thu Mar 12 00:50:46 2015 EDT

  Modified files:              (Branch: version_2_11_X)
    /loncom/auth	lonlogout.pm 
  Log:
  - For 2.11
    Backport 1.47. 1.48, 1.49
  
  
Index: loncom/auth/lonlogout.pm
diff -u loncom/auth/lonlogout.pm:1.45.2.2 loncom/auth/lonlogout.pm:1.45.2.3
--- loncom/auth/lonlogout.pm:1.45.2.2	Fri Feb  8 17:11:59 2013
+++ loncom/auth/lonlogout.pm	Thu Mar 12 00:50:46 2015
@@ -1,7 +1,7 @@
 # The LearningOnline Network
 # Logout Handler
 #
-# $Id: lonlogout.pm,v 1.45.2.2 2013/02/08 17:11:59 raeburn Exp $
+# $Id: lonlogout.pm,v 1.45.2.3 2015/03/12 00:50:46 raeburn Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -104,14 +104,29 @@
 	$start_page=&Apache::loncommon::start_page('Switching Server ...',
 						   $switch);
     } else {
-	$start_page=&Apache::loncommon::start_page('Logged Out',undef,
+        my $domain = $env{'user.domain'};
+        my $headextra;
+        if ($env{'request.sso.login'}
+            && defined($r->dir_config("lonSSOUserLogoutHeadFile_$domain"))) {
+            if (open(my $fh,$r->dir_config("lonSSOUserLogoutHeadFile_$domain"))) {
+                $headextra = join('',<$fh>);
+                close($fh);
+            }
+        }
+        if ($env{'request.sso.login'}
+            && defined($r->dir_config('lonSSOUserLogoutHeadFile'))) {
+            if (open(my $fh,$r->dir_config('lonSSOUserLogoutHeadFile'))) {
+                $headextra.= join('',<$fh>);
+                close($fh);
+            }
+        }
+	$start_page=&Apache::loncommon::start_page('Logged Out',$headextra,
                            {'no_inline_link' => 1,
                             'no_nav_bar'     => 1,});
 	
         $relogmessage.='<h1>'.&mt('Goodbye').'</h1>'
                       .'<p>'.&mt('Thank you for using LON-CAPA.').'</p>';
 
-        my $domain = $env{'user.domain'};
 	if (!$env{'request.sso.norelogin'}) {
 	    my ($relogin_server,$login_url);
 	    if ($env{'request.sso.reloginserver'}) {
@@ -157,7 +172,7 @@
 
 '<a href="javascript:self.close();">','</a>'
 
-Due to security reasons in new web browsers a window could only be closed with java script, if this window has also been opend with javascript. This is not done here which means that in most cases the close link will not work. Unless we find another solution, this link should not be offered. (Stefan Bisitz, 2008-08-01)
+Due to security reasons in new web browsers a window could only be closed with javascript, if this window has also been opened with javascript. This is not done here which means that in most cases the close link will not work. Unless we find another solution, this link should not be offered. (Stefan Bisitz, 2008-08-01)
 
 =cut
             $relogmessage.='<p>'.&mt('[_1]Log in again[_2]'
@@ -166,15 +181,18 @@
         }
         if ($env{'request.sso.login'}
 	    && defined($r->dir_config("lonSSOUserLogoutMessageFile_$domain"))) {
-	    open(my $fh,$r->dir_config("lonSSOUserLogoutMessageFile_$domain"));
-	    $relogmessage.= join('',<$fh>);
+	    if (open(my $fh,$r->dir_config("lonSSOUserLogoutMessageFile_$domain"))) {
+	        $relogmessage.= join('',<$fh>);
+                close($fh);
+            }
 	}
 	if ($env{'request.sso.login'}
 	    && defined($r->dir_config('lonSSOUserLogoutMessageFile'))) {
-	    open(my $fh,$r->dir_config('lonSSOUserLogoutMessageFile'));
-	    $relogmessage.= join('',<$fh>);
+	    if (open(my $fh,$r->dir_config('lonSSOUserLogoutMessageFile'))) {
+	        $relogmessage.= join('',<$fh>);
+                close($fh);
+            }
 	}
-
     }
     my $end_page=&Apache::loncommon::end_page();
 # --------------------------------------------------------------- Screen Output




More information about the LON-CAPA-cvs mailing list