version 1.283, 2013/05/06 16:16:03
|
version 1.286, 2013/05/21 23:13:40
|
Line 311 sub handler {
|
Line 311 sub handler {
|
my $trolecode = 'au./'.$domain.'/'; |
my $trolecode = 'au./'.$domain.'/'; |
my $switchserver = '/adm/switchserver?otherserver='.$home.'&role='.$trolecode; |
my $switchserver = '/adm/switchserver?otherserver='.$home.'&role='.$trolecode; |
$r->internal_redirect($switchserver); |
$r->internal_redirect($switchserver); |
|
return OK; |
} |
} |
last; |
last; |
} |
} |
Line 322 sub handler {
|
Line 323 sub handler {
|
my $trolecode = 'ca./'.$domain.'/'.$user; |
my $trolecode = 'ca./'.$domain.'/'.$user; |
my $switchserver = '/adm/switchserver?otherserver='.$home.'&role='.$trolecode; |
my $switchserver = '/adm/switchserver?otherserver='.$home.'&role='.$trolecode; |
$r->internal_redirect($switchserver); |
$r->internal_redirect($switchserver); |
|
return OK; |
} |
} |
last; |
last; |
} |
} |
Line 343 sub handler {
|
Line 345 sub handler {
|
my $switchserver = '/adm/switchserver?' |
my $switchserver = '/adm/switchserver?' |
.'otherserver='.$home.'&role='.$trolecode; |
.'otherserver='.$home.'&role='.$trolecode; |
$r->internal_redirect($switchserver); |
$r->internal_redirect($switchserver); |
|
return OK; |
} |
} |
} else { |
} else { |
delete($env{$envkey}); |
delete($env{$envkey}); |
Line 519 ENDENTERKEY
|
Line 522 ENDENTERKEY
|
my $msg; |
my $msg; |
my ($furl,$ferr)= |
my ($furl,$ferr)= |
&Apache::lonuserstate::readmap($cdom.'/'.$cnum); |
&Apache::lonuserstate::readmap($cdom.'/'.$cnum); |
unless (($ferr) || ($env{'form.switchrole'}) || |
unless ($ferr) { |
($env{"environment.internal.$cdom.$cnum.$role.adhoc"})) { |
unless (($env{'form.switchrole'}) || |
&Apache::lonnet::put('nohist_crslastlogin', |
($env{"environment.internal.$cdom.$cnum.$role.adhoc"})) { |
{$env{'user.name'}.':'.$env{'user.domain'}. |
&Apache::lonnet::put('nohist_crslastlogin', |
':'.$csec.':'.$role => $now},$cdom,$cnum); |
{$env{'user.name'}.':'.$env{'user.domain'}. |
my $feeds; |
':'.$csec.':'.$role => $now},$cdom,$cnum); |
|
} |
|
my ($feeds,$syllabus_time); |
&Apache::lonrss::advertisefeeds($cnum,$cdom,undef,\$feeds); |
&Apache::lonrss::advertisefeeds($cnum,$cdom,undef,\$feeds); |
&Apache::lonnet::appenv( |
&Apache::lonnet::appenv({'request.course.feeds' => $feeds}); |
{'course.'.$cdom.'_'.$cnum.'.feeds' => $feeds} |
unless ($env{'course.'.$cdom.'_'.$cnum.'.updatedsyllabus'}) { |
); |
unless (($env{'course.'.$cdom.'_'.$cnum.'.externalsyllabus'}) || |
|
($env{'course.'.$cdom.'_'.$cnum.'.uploadedsyllabus'})) { |
|
my %syllabus=&Apache::lonnet::dump('syllabus',$cdom,$cnum); |
|
$syllabus_time = $syllabus{'uploaded.lastmodified'}; |
|
if ($syllabus_time) { |
|
&Apache::lonnet::appenv({'request.course.syllabustime' => $syllabus_time}); |
|
} |
|
} |
|
} |
} |
} |
if (($env{'form.orgurl'}) && |
if (($env{'form.orgurl'}) && |
($env{'form.orgurl'}!~/^\/adm\/flip/)) { |
($env{'form.orgurl'}!~/^\/adm\/flip/)) { |
Line 2427 sub update_session_roles {
|
Line 2440 sub update_session_roles {
|
&unescape($groupinfo{'description'}); |
&unescape($groupinfo{'description'}); |
} |
} |
$groupdesc = $groupdescs{$cdom.'_'.$cnum}{$group}; |
$groupdesc = $groupdescs{$cdom.'_'.$cnum}{$group}; |
$groupmsg .= '<li>'. |
if ($groupdesc) { |
&mt('[_1] with status: [_2].', |
$groupmsg .= '<li>'. |
'<b>'.$groupdesc.'</b>',$newgroup{$item}).'</li>'; |
&mt('[_1] with status: [_2].', |
|
'<b>'.$groupdesc.'</b>',$newgroup{$item}).'</li>'; |
|
} |
} |
} |
} |
} |
if ($groupmsg) { |
if ($groupmsg) { |
Line 2443 sub update_session_roles {
|
Line 2458 sub update_session_roles {
|
} |
} |
} |
} |
if (keys(%newrole) > 0) { |
if (keys(%newrole) > 0) { |
$changemsg .= '<li>'.&mt('New roles'). |
my $newmsg; |
'<ul>'; |
|
foreach my $item (sort(keys(%newrole))) { |
foreach my $item (sort(keys(%newrole))) { |
my $desc = &role_desc($item,$update,$refresh,$now); |
my $desc = &role_desc($item,$update,$refresh,$now); |
$changemsg .= '<li>'. |
if ($desc) { |
&mt('[_1] with status: [_2].', |
$newmsg .= '<li>'. |
$desc,$newrole{$item}).'</li>'; |
&mt('[_1] with status: [_2].', |
|
$desc,$newrole{$item}).'</li>'; |
|
} |
|
} |
|
if ($newmsg) { |
|
$changemsg .= '<li>'.&mt('New roles'). |
|
'<ul>'.$newmsg.'</ul>'. |
|
'</li>'; |
} |
} |
$changemsg .= '</ul></li>'; |
|
} |
} |
if (keys(%customprivchg) > 0) { |
if (keys(%customprivchg) > 0) { |
$changemsg .= '<li>'. |
my $privmsg; |
&mt('Custom roles with privilege changes'). |
|
'<ul>'; |
|
foreach my $item (sort(keys(%customprivchg))) { |
foreach my $item (sort(keys(%customprivchg))) { |
my $desc = &role_desc($item,$update,$refresh,$now); |
my $desc = &role_desc($item,$update,$refresh,$now); |
$changemsg .= '<li>'.$desc.'</li>'; |
if ($desc) { |
|
$privmsg .= '<li>'.$desc.'</li>'; |
|
} |
} |
} |
$changemsg .= '</ul></li>'; |
if ($privmsg) { |
|
$changemsg .= '<li>'. |
|
&mt('Custom roles with privilege changes'). |
|
'<ul>'.$privmsg.'</ul>'. |
|
'</li>'; |
|
} |
} |
} |
if (keys(%rolechange) > 0) { |
if (keys(%rolechange) > 0) { |
$changemsg .= '<li>'. |
my $rolemsg; |
&mt('Existing roles with status changes').'</li>'. |
|
'<ul>'; |
|
foreach my $item (sort(keys(%rolechange))) { |
foreach my $item (sort(keys(%rolechange))) { |
my $desc = &role_desc($item,$update,$refresh,$now); |
my $desc = &role_desc($item,$update,$refresh,$now); |
|
if ($desc) { |
|
$rolemsg .= '<li>'. |
|
&mt('[_1] status now: [_2].',$desc, |
|
$rolechange{$item}).'</li>'; |
|
} |
|
} |
|
if ($rolemsg) { |
$changemsg .= '<li>'. |
$changemsg .= '<li>'. |
&mt('[_1] status now: [_2].',$desc, |
&mt('Existing roles with status changes').'</li>'. |
$rolechange{$item}).'</li>'; |
'<ul>'.$rolemsg.'</ul>'. |
|
'</li>'; |
} |
} |
$changemsg .= '</ul></li>'; |
|
} |
} |
if (keys(%deletedroles) > 0) { |
if (keys(%deletedroles) > 0) { |
$changemsg .= '<li>'. |
my $delmsg; |
&mt('Existing roles now expired').'</li>'. |
|
'<ul>'; |
|
foreach my $item (sort(keys(%deletedroles))) { |
foreach my $item (sort(keys(%deletedroles))) { |
my $desc = &role_desc($item,$update,$refresh,$now); |
my $desc = &role_desc($item,$update,$refresh,$now); |
$changemsg .= '<li>'.$desc.'</li>'; |
if ($desc) { |
|
$delmsg .= '<li>'.$desc.'</li>'; |
|
} |
|
} |
|
if ($delmsg) { |
|
$changemsg .= '<li>'. |
|
&mt('Existing roles now expired').'</li>'. |
|
'<ul>'.$delmsg.'</ul>'. |
|
'</li>'; |
} |
} |
$changemsg .= '</ul></li>'; |
|
} |
} |
} |
} |
if ((keys(%changed_groups) > 0) || (keys(%groupchange) > 0)) { |
if ((keys(%changed_groups) > 0) || (keys(%groupchange) > 0)) { |
Line 2543 sub update_session_roles {
|
Line 2578 sub update_session_roles {
|
} |
} |
if ($changemsg) { |
if ($changemsg) { |
$msg .= '<ul>'.$changemsg.'</ul>'; |
$msg .= '<ul>'.$changemsg.'</ul>'; |
|
} else { |
|
if (&Apache::loncommon::show_course()) { |
|
$msg = &mt('No new courses or communities'); |
|
} else { |
|
$msg = &mt('No role changes'); |
|
} |
} |
} |
return $msg; |
return $msg; |
} |
} |
Line 2554 sub role_desc {
|
Line 2595 sub role_desc {
|
&Apache::lonnet::role_status('user.role.'.$item,$update,$refresh, |
&Apache::lonnet::role_status('user.role.'.$item,$update,$refresh, |
$now,\$role,\$where,\$trolecode, |
$now,\$role,\$where,\$trolecode, |
\$tstatus,\$tstart,\$tend); |
\$tstatus,\$tstart,\$tend); |
|
return unless ($role); |
if ($role =~ /^cr\//) { |
if ($role =~ /^cr\//) { |
my ($rdummy,$rdomain,$rauthor,$rrole)=split(/\//,$role); |
my ($rdummy,$rdomain,$rauthor,$rrole)=split(/\//,$role); |
$tremark = &mt('Customrole defined by [_1].',$rauthor.':'.$rdomain); |
$tremark = &mt('Customrole defined by [_1].',$rauthor.':'.$rdomain); |
Line 2595 sub role_desc {
|
Line 2637 sub role_desc {
|
} elsif ($tdom) { |
} elsif ($tdom) { |
$twhere = &mt('Domain').': '.$tdom; |
$twhere = &mt('Domain').': '.$tdom; |
} |
} |
my $output = "$trole -- $twhere"; |
my $output; |
if ($tremark) { |
if ($trole) { |
$output .= '<br />'.$tremark; |
$output = $trole; |
|
if ($twhere) { |
|
$output .= " -- $twhere"; |
|
} |
|
if ($tremark) { |
|
$output .= '<br />'.$tremark; |
|
} |
} |
} |
return $output; |
return $output; |
} |
} |