--- loncom/auth/lonroles.pm 2017/09/29 19:18:14 1.334
+++ loncom/auth/lonroles.pm 2018/04/28 00:57:58 1.337
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# User Roles Screen
#
-# $Id: lonroles.pm,v 1.334 2017/09/29 19:18:14 raeburn Exp $
+# $Id: lonroles.pm,v 1.337 2018/04/28 00:57:58 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -153,20 +153,26 @@ sub redirect_user {
&Apache::loncommon::no_cache($r);
$r->send_http_header;
- # Breadcrumbs
- my $brcrum = [{'href' => $url,
- 'text' => 'Switching Role'},];
- my $start_page = &Apache::loncommon::start_page('Switching Role',undef,
- {'redirect' => [1,$url],
- 'bread_crumbs' => $brcrum,});
- my $end_page = &Apache::loncommon::end_page();
+ my $start_page;
+ if ($env{'request.lti.login'}) {
+ $start_page = &Apache::loncommon::start_page(undef,undef,
+ {'redirect' => [0,$url],}).$msg;
+ } else {
+ # Breadcrumbs
+ my $brcrum = [{'href' => $url,
+ 'text' => 'Switching Role'},];
+ $start_page = &Apache::loncommon::start_page('Switching Role',undef,
+ {'redirect' => [1,$url],
+ 'bread_crumbs' => $brcrum,}).
+ "\n
$msg
";
+ }
+ my $end_page = &Apache::loncommon::end_page();
# Note to style police:
# This must only replace the spaces, nothing else, or it bombs elsewhere.
$url=~s/ /\%20/g;
$r->print(<$msg
$end_page
ENDREDIR
return;
@@ -578,6 +584,7 @@ ENDENTERKEY
my ($furl,$ferr)=
&Apache::lonuserstate::readmap($cdom.'/'.$cnum);
unless ($ferr) {
+ &Apache::lonnet::appenv({'request.course.timechecked'=>$now});
unless (($env{'form.switchrole'}) ||
($env{"environment.internal.$cdom.$cnum.$role.adhoc"})) {
&Apache::lonnet::put('nohist_crslastlogin',
@@ -737,9 +744,12 @@ ENDENTERKEY
$dest .= (($dest =~/\?/)? '&':'?').'symb='.$esc_symb;
}
}
- &redirect_user($r, &mt('Entering [_1]',
- $env{'course.'.$cdom.'_'.$cnum.'.description'}),
- $dest, $msg);
+ my $title;
+ unless ($env{'request.lti.login'}) {
+ $title = &mt('Entering [_1]',
+ $env{'course.'.$cdom.'_'.$cnum.'.description'});
+ }
+ &redirect_user($r,$title,$dest,$msg);
return OK;
}
if (&Apache::lonnet::allowed('whn',
@@ -777,11 +787,16 @@ ENDENTERKEY
} elsif ($access eq 'B') {
$furl = '/adm/navmaps?showOnlyHomework=1';
}
- $msg = &mt('Entering [_1] ...',
- $env{'course.'.$cdom.'_'.$cnum.'.description'});
- &redirect_user($r, &mt('Entering [_1]',
- $env{'course.'.$cdom.'_'.$cnum.'.description'}),
- $furl, $msg);
+ my $title;
+ if ($env{'request.lti.login'}) {
+ undef($msg);
+ } else {
+ $title = &mt('Entering [_1]',
+ $env{'course.'.$cdom.'_'.$cnum.'.description'});
+ $msg = &mt('Entering [_1] ...',
+ $env{'course.'.$cdom.'_'.$cnum.'.description'});
+ }
+ &redirect_user($r,$title,$furl,$msg);
}
return OK;
}
@@ -1634,6 +1649,7 @@ sub findcourse_advice {
'.&mt('You are in a section of course for which automatic enrollment in the corresponding LON-CAPA course is not active.').'
'.&mt('The start date for automated enrollment has yet to be reached.').'
'.&mt('You registered for the course recently and there is a time lag between the time you register, and the time this information becomes available for the update of LON-CAPA course rosters.').'
+ '.&mt('Automated enrollment added you to the course in the time since you last logged in.').' '.&mt('If that is the case you can use the "Check for changes" link in the gray Functions bar to update the list of your available course roles.').'
');
} else {
$r->print(&mt('If you were expecting to see an active role listed for a particular course, that course may not have been created yet.').'
');