version 1.369.2.83.2.10, 2023/09/06 16:05:23
|
version 1.369.2.83.2.17, 2024/02/26 00:28:19
|
Line 370 sub primary_menu {
|
Line 370 sub primary_menu {
|
($item->[2] eq 'blog')) && |
($item->[2] eq 'blog')) && |
(!&Apache::lonnet::usertools_access('','',$item->[2], |
(!&Apache::lonnet::usertools_access('','',$item->[2], |
undef,'tools'))); |
undef,'tools'))); |
|
if (($item->[2] eq 'browsepub') && ($item->[0] eq '/res/')) { |
|
if ($env{'request.role'} =~ /^au\./) { |
|
$item->[0] .= $env{'request.role.domain'}.'/?launch=1'; |
|
} elsif ($env{'request.role'} =~ m{^ca\./($match_domain)/($match_username)$}) { |
|
$item->[0] .= $1.'/'.$2.'/?launch=1'; |
|
} elsif (&Apache::lonnet::allowed('bre',$env{'user.domain'})) { |
|
$item->[0] .= $env{'user.domain'}.'/?launch=1'; |
|
} elsif (&Apache::lonnet::allowed('bro','/res/')) { |
|
$item->[0] .= '?launch=1'; |
|
} else { |
|
next; |
|
} |
|
} |
if ($env{'request.course.id'} && $menucoll) { |
if ($env{'request.course.id'} && $menucoll) { |
next if ($item->[3]) && (!$menuopts{$item->[3]}); |
next if ($item->[3]) && (!$menuopts{$item->[3]}); |
} |
} |
Line 1009 sub innerregister {
|
Line 1022 sub innerregister {
|
$$showncrumbsref = 1; |
$$showncrumbsref = 1; |
} |
} |
return $trail; |
return $trail; |
|
} elsif (($resurl eq '/public'.$courseurl.'/syllabus') && |
|
($env{'form.folderpath'})) { |
|
if ($env{'form.title'}) { |
|
$title = $env{'form.title'}; |
|
} else { |
|
$title = 'Syllabus'; |
|
} |
|
&prepare_functions($resurl,$forcereg,$group,undef,undef,1,$hostname); |
|
$title = &HTML::Entities::encode($title,'\'"<>&'); |
|
my ($trail) = |
|
&Apache::lonhtmlcommon::docs_breadcrumbs(undef,$crstype,undef,$title,1,1); |
|
return $trail; |
} |
} |
unless ($env{'request.state'} eq 'construct') { |
unless ($env{'request.state'} eq 'construct') { |
&Apache::lonhtmlcommon::clear_breadcrumbs(); |
&Apache::lonhtmlcommon::clear_breadcrumbs(); |
Line 1125 sub innerregister {
|
Line 1150 sub innerregister {
|
if (($env{'request.symb'} ne '') && |
if (($env{'request.symb'} ne '') && |
($env{'request.filename'}=~/$LONCAPA::assess_re/) && |
($env{'request.filename'}=~/$LONCAPA::assess_re/) && |
(($perms{'mgr'}) || ($perms{'vgr'}))) { |
(($perms{'mgr'}) || ($perms{'vgr'}))) { |
my ($viewas,$text,$change,$visibility,$vuname,$vudom,$vid,$leftvis,$defdom,$righticon); |
my ($viewas,$text,$change,$visibility,$vuname,$vudom,$vid,$leftvis,$defdom, |
|
$domselector,$righticon); |
my %lt = &Apache::lonlocal::texthash( |
my %lt = &Apache::lonlocal::texthash( |
view => 'View', |
view => 'View', |
upda => 'Update', |
upda => 'Update', |
); |
); |
|
my $possdomstr = $env{'course.'.$env{'request.course.id'}.'.internal.userdomains'}; |
|
if ($possdomstr =~ /,/) { |
|
my @possdoms = split(/,/,$possdomstr); |
|
if ($env{'request.user_in_effect'} =~ /^$match_username:($match_domain)$/) { |
|
$defdom = $1; |
|
} elsif (grep(/^\Q$cdom\E$/,@possdoms)) { |
|
$defdom = $cdom; |
|
} elsif (&Apache::lonnet::domain($possdoms[0]) ne '') { |
|
$defdom = $possdoms[0]; |
|
} |
|
$domselector = &Apache::loncommon::select_dom_form($defdom,'vudom','','','',\@possdoms); |
|
} elsif (($possdomstr ne '') && (&Apache::lonnet::domain($possdomstr) ne '')) { |
|
if ($env{'request.user_in_effect'} =~ /^$match_username:($match_domain)$/) { |
|
$defdom = $1; |
|
} else { |
|
$defdom = $possdomstr; |
|
} |
|
} |
if ($env{'request.user_in_effect'} =~ /^($match_username):($match_domain)$/) { |
if ($env{'request.user_in_effect'} =~ /^($match_username):($match_domain)$/) { |
($vuname,$vudom) = ($1,$2); |
($vuname,$vudom) = ($1,$2); |
unless (&Apache::lonnet::is_advanced_user($vudom,$vuname)) { |
unless (&Apache::lonnet::is_advanced_user($vudom,$vuname)) { |
Line 1147 sub innerregister {
|
Line 1191 sub innerregister {
|
$change = 'on'; |
$change = 'on'; |
$visibility = 'none'; |
$visibility = 'none'; |
$leftvis = 'inline'; |
$leftvis = 'inline'; |
$defdom = $cdom; |
if ($defdom eq '') { |
|
$defdom = $cdom; |
|
} |
} |
} |
my $sellink = &Apache::loncommon::selectstudent_link('userview','vuname','vudom'); |
my $sellink = &Apache::loncommon::selectstudent_link('userview','vuname','vudom','','','vuidentifier'); |
my $selscript=&Apache::loncommon::studentbrowser_javascript(); |
my $selscript=&Apache::loncommon::studentbrowser_javascript(); |
my $shownsymb = &HTML::Entities::encode(&Apache::lonenc::check_encrypt($env{'request.symb'}),'<>&"'); |
my $shownsymb = &HTML::Entities::encode(&Apache::lonenc::check_encrypt($env{'request.symb'}),'<>&"'); |
my $input = &mt('User: [_1] or ID: [_2] at: [_3]', |
my $input; |
'<input name="vuname" type="text" size="8" value="'.$vuname.'" />', |
my @items = ( |
'<input name="vid" type="text" size="8" value="'.$vid.'" />', |
'<label><input type="radio" name="vuidentifier" value="uname" checked="checked" onclick="javascript:toggleIdentifier(this.form);" />', |
&Apache::loncommon::select_dom_form($defdom,'vudom')). |
'</label><input name="vuname" type="text" size="6" value="'.$vuname.'" id="LC_vuname" />', |
'<input name="LC_viewas" type="hidden" value="'.$viewas.'" />', |
'<label><input type="radio" name="vuidentifier" value="uid" onclick="javascript:toggleIdentifier(this.form);" />', |
'<input name="symb" type="hidden" value="'.$shownsymb.'" />'; |
'</label><input name="vid" type="hidden" size="6" value="'.$vid.'" id="LC_vid" />' |
|
); |
|
if ($domselector) { |
|
push(@items,$domselector); |
|
$input = &mt('[_1]User:[_2] or [_3]ID:[_4] at [_5] | ',@items); |
|
} else { |
|
$input = &mt('[_1]Username:[_2] or [_3]ID:[_4] | ',@items). |
|
'<input name="vudom" type="hidden" value="'.$defdom.'" />'; |
|
} |
|
$input .= '<input name="LC_viewas" type="hidden" value="'.$viewas.'" />', |
|
'<input name="symb" type="hidden" value="'.$shownsymb.'" />'; |
my $chooser = <<END; |
my $chooser = <<END; |
$selscript |
$selscript |
<a href="javascript:toggleViewAsUser('$change');" class="LC_menubuttons_link"> |
<a href="javascript:toggleViewAsUser('$change');" class="LC_menubuttons_link"> |
Line 1178 $sellink
|
Line 1234 $sellink
|
END |
END |
&switch('','',7,5,'viewuser.png','View As','user[_1]', |
&switch('','',7,5,'viewuser.png','View As','user[_1]', |
'toggleViewAsUser('."'$change'".')', |
'toggleViewAsUser('."'$change'".')', |
'View As','','',$chooser); |
'View As','','','',$chooser); |
} |
} |
# End view as user check |
# End view as user check |
|
|
Line 1213 s&6&1&list.png&Directory&dir[_1]&golist(
|
Line 1269 s&6&1&list.png&Directory&dir[_1]&golist(
|
s&6&2&rtrv.png&Retrieve&version[_1]&gocstr('/adm/retrieve','/priv/$udom/$uname/$cleandisfn')&Retrieve old version |
s&6&2&rtrv.png&Retrieve&version[_1]&gocstr('/adm/retrieve','/priv/$udom/$uname/$cleandisfn')&Retrieve old version |
s&6&3&pub.png&Publish&resource[_3]&gocstr('/adm/publish','/priv/$udom/$uname/$cleandisfn')&Publish this resource |
s&6&3&pub.png&Publish&resource[_3]&gocstr('/adm/publish','/priv/$udom/$uname/$cleandisfn')&Publish this resource |
s&7&1&del.png&Delete&resource[_2]&gocstr('/adm/cfile?action=delete','/priv/$udom/$uname/$cleandisfn')&Delete this resource |
s&7&1&del.png&Delete&resource[_2]&gocstr('/adm/cfile?action=delete','/priv/$udom/$uname/$cleandisfn')&Delete this resource |
|
ENDMENUITEMS |
|
|
|
# |
|
# Print only makes sense for certain mime types |
|
# |
|
if ($thisdisfn=~/\.(xml|html|htm|xhtml|xhtm|tex)$/ || $thisdisfn=~/$LONCAPA::assess_re/) { |
|
$menuitems .= (<<ENDMENUITEMS); |
s&7&2&prt.png&Print&printout[_1]&gocstr('/adm/printout','/priv/$udom/$uname/$cleandisfn')&Prepare a printable document |
s&7&2&prt.png&Print&printout[_1]&gocstr('/adm/printout','/priv/$udom/$uname/$cleandisfn')&Prepare a printable document |
ENDMENUITEMS |
ENDMENUITEMS |
|
} |
unless ($noremote) { |
unless ($noremote) { |
$cstritems = $menuitems; |
$cstritems = $menuitems; |
undef($menuitems); |
undef($menuitems); |
Line 1267 s&2&1&back.png&&&gopost('/adm/flip','bac
|
Line 1331 s&2&1&back.png&&&gopost('/adm/flip','bac
|
s&2&3&forw.png&&&gopost('/adm/flip','forward:'+currentURL)&Next content resource&&3"; |
s&2&3&forw.png&&&gopost('/adm/flip','forward:'+currentURL)&Next content resource&&3"; |
} |
} |
$menuitems .= (<<ENDMENUITEMS); |
$menuitems .= (<<ENDMENUITEMS); |
|
|
c&6&3 |
c&6&3 |
c&8&2 |
c&8&2 |
s&8&3&prt.png&$swtext{'prt'}&printout[_1]&gopost('/adm/printout',currentURL)&Prepare a printable document |
s&8&3&prt.png&$swtext{'prt'}&printout[_1]&gopost('/adm/printout',currentURL)&Prepare a printable document |
Line 2094 sub switch {
|
Line 2159 sub switch {
|
'" align="'.($nobreak==3?'right':'left').'" class="LC_icon" />'; |
'" align="'.($nobreak==3?'right':'left').'" class="LC_icon" />'; |
$inlineremote[$idx] = |
$inlineremote[$idx] = |
'<a title="'.$desc.'" class="LC_menubuttons_link" href="javascript:'.$act.';">'. |
'<a title="'.$desc.'" class="LC_menubuttons_link" href="javascript:'.$act.';">'. |
$pic.'<span class="LC_menubuttons_inline_text">'.$top.' </span></a>'.$form; |
$pic.'<span class="LC_menubuttons_inline_text">'.$top.' </span></a>'; |
} |
} |
# Remote |
# Remote |
$img=~s/\.png$/\.gif/; |
$img=~s/\.png$/\.gif/; |
Line 2144 sub switch {
|
Line 2209 sub switch {
|
} else { |
} else { |
$inlineremote[$idx] = |
$inlineremote[$idx] = |
'<a title="'.$desc.'" class="LC_menubuttons_link" href="javascript:'.$act.';">'.$pic. |
'<a title="'.$desc.'" class="LC_menubuttons_link" href="javascript:'.$act.';">'.$pic. |
'<span class="LC_menubuttons_inline_text">'.$top.' </span></a>'; |
'<span class="LC_menubuttons_inline_text">'.$top.' </span></a>'.$form; |
} |
} |
} |
} |
return ''; |
return ''; |
Line 2727 sub view_as_js {
|
Line 2792 sub view_as_js {
|
return <<"END"; |
return <<"END"; |
|
|
function toggleViewAsUser(change) { |
function toggleViewAsUser(change) { |
var seluserid = document.getElementById('LC_selectuser'); |
if (document.getElementById('LC_selectuser')) { |
var currstyle = seluserid.style.display; |
var seluserid = document.getElementById('LC_selectuser'); |
if (change == 'off') { |
var currstyle = seluserid.style.display; |
document.userview.elements['LC_viewas'].value = ''; |
if (change == 'off') { |
document.userview.elements['vuname'].value = ''; |
document.userview.elements['LC_viewas'].value = ''; |
document.userview.elements['vid'].value = ''; |
document.userview.elements['vuname'].value = ''; |
document.userview.submit(); |
document.userview.elements['vid'].value = ''; |
return; |
document.userview.submit(); |
} |
return; |
if (currstyle == 'inline') { |
} |
seluserid.style.display = 'none'; |
if ((document.getElementById('usexpand')) && (document.getElementById('uscollapse'))) { |
document.getElementById('usexpand').innerHTML='► '; |
if (currstyle == 'inline') { |
document.getElementById('uscollapse').innerHTML=''; |
seluserid.style.display = 'none'; |
} else { |
document.getElementById('usexpand').innerHTML='► '; |
seluserid.style.display = 'inline'; |
document.getElementById('uscollapse').innerHTML=''; |
document.getElementById('usexpand').innerHTML=''; |
} else { |
document.getElementById('uscollapse').innerHTML='◄ '; |
seluserid.style.display = 'inline'; |
|
document.getElementById('usexpand').innerHTML=''; |
|
document.getElementById('uscollapse').innerHTML='◄ '; |
|
toggleIdentifier(document.userview); |
|
} |
|
} |
} |
} |
return; |
return; |
} |
} |
Line 2751 function toggleViewAsUser(change) {
|
Line 2821 function toggleViewAsUser(change) {
|
function validCourseUser(form,change) { |
function validCourseUser(form,change) { |
var possuname = form.elements['vuname'].value; |
var possuname = form.elements['vuname'].value; |
var possuid = form.elements['vid'].value; |
var possuid = form.elements['vid'].value; |
var possudom = form.elements['vudom'].options[form.elements['vudom'].selectedIndex].value; |
var domelem = form.elements['vudom']; |
|
var possudom = ''; |
|
if ((domelem.tagName === 'INPUT') && ((domelem.type === 'text') || (domelem.type === 'hidden'))) { |
|
possudom = domelem.value; |
|
} else if (domelem.tagName === 'SELECT') { |
|
possudom = domelem.options[domelem.selectedIndex].value; |
|
} |
if ((possuname == '') && (possuid == '')) { |
if ((possuname == '') && (possuid == '')) { |
if (change == 'off') { |
if (change == 'off') { |
form.elements['LC_viewas'].value = ''; |
form.elements['LC_viewas'].value = ''; |
Line 2787 function validCourseUser(form,change) {
|
Line 2863 function validCourseUser(form,change) {
|
return false; |
return false; |
} |
} |
|
|
|
function toggleIdentifier(form) { |
|
if ((document.getElementById('LC_vuname')) && (document.getElementById('LC_vid'))) { |
|
var radioelem = form.elements['vuidentifier']; |
|
if (radioelem.length > 0) { |
|
var i; |
|
for (i=0; i<radioelem.length; i++) { |
|
if (radioelem[i].checked == true) { |
|
if (radioelem[i].value == 'uname') { |
|
document.getElementById('LC_vuname').type = 'text'; |
|
document.getElementById('LC_vid').type = 'hidden'; |
|
document.getElementById('LC_vid').value = ''; |
|
} else { |
|
document.getElementById('LC_vuname').type = 'hidden'; |
|
document.getElementById('LC_vuname').value = ''; |
|
document.getElementById('LC_vid').type = 'text'; |
|
} |
|
break; |
|
} |
|
} |
|
} |
|
} |
|
return; |
|
} |
|
|
END |
END |
} |
} |
|
|