version 1.340, 2010/12/02 06:00:12
|
version 1.346, 2011/01/27 14:38:44
|
Line 107 entries from mydesk.tab
|
Line 107 entries from mydesk.tab
|
|
|
Same as primary_menu() but operates on @secondary_menu. |
Same as primary_menu() but operates on @secondary_menu. |
|
|
=item show_return_link() |
|
|
|
=item innerregister() |
=item innerregister() |
|
|
This gets called in order to register a URL in the body of the document |
This gets called in order to register a URL in the body of the document |
Line 157 use Apache::lonenc();
|
Line 155 use Apache::lonenc();
|
use Apache::lonlocal; |
use Apache::lonlocal; |
use LONCAPA qw(:DEFAULT :match); |
use LONCAPA qw(:DEFAULT :match); |
use HTML::Entities(); |
use HTML::Entities(); |
|
use Apache::lonwishlist(); |
|
|
use vars qw(@desklines %category_names %category_members %category_positions |
use vars qw(@desklines %category_names %category_members %category_positions |
$readdesk @primary_menu @secondary_menu); |
$readdesk @primary_menu @secondary_menu); |
Line 272 sub secondary_menu {
|
Line 271 sub secondary_menu {
|
my $canviewgrps = &Apache::lonnet::allowed('vcg', $crs_sec); |
my $canviewgrps = &Apache::lonnet::allowed('vcg', $crs_sec); |
my $canmodifyuser = &Apache::lonnet::allowed('cst', $crs_sec); |
my $canmodifyuser = &Apache::lonnet::allowed('cst', $crs_sec); |
my $canviewwnew = &Apache::lonnet::allowed('whn', $crs_sec); |
my $canviewwnew = &Apache::lonnet::allowed('whn', $crs_sec); |
my $canmodpara = &Apache::lonnet::allowed('opa', $crs_sec); |
my $canmodpara = &Apache::lonnet::allowed('opa', $crs_sec); |
my $author = getauthor(); |
my $canvgr = &Apache::lonnet::allowed('vgr', $crs_sec); |
|
my $canmgr = &Apache::lonnet::allowed('mgr', $crs_sec); |
|
my $author = &getauthor(); |
|
|
my $showlink = &show_return_link(); |
|
my %groups = &Apache::lonnet::get_active_groups( |
my %groups = &Apache::lonnet::get_active_groups( |
$env{'user.domain'}, $env{'user.name'}, |
$env{'user.domain'}, $env{'user.name'}, |
$env{'course.' . $env{'request.course.id'} . '.domain'}, |
$env{'course.' . $env{'request.course.id'} . '.domain'}, |
Line 287 sub secondary_menu {
|
Line 287 sub secondary_menu {
|
next if $$menuitem[4] ne 'always' |
next if $$menuitem[4] ne 'always' |
&& $$menuitem[4] ne 'author' |
&& $$menuitem[4] ne 'author' |
&& !$env{'request.course.id'}; |
&& !$env{'request.course.id'}; |
next if $$menuitem[4] eq 'showreturn' |
|
&& !$showlink |
|
&& !($env{'request.state'} eq 'construct'); |
|
next if $$menuitem[4] =~ /^mdc/ |
next if $$menuitem[4] =~ /^mdc/ |
&& !$canedit; |
&& !$canedit; |
next if $$menuitem[4] eq 'mdcCourse' |
next if $$menuitem[4] eq 'nvgr' |
&& $crstype eq 'Community'; |
&& $canvgr; |
next if $$menuitem[4] eq 'mdcCommunity' |
next if $$menuitem[4] eq 'vgr' |
&& $crstype ne 'Community'; |
&& !$canvgr; |
next if $$menuitem[4] eq 'cst' |
next if $$menuitem[4] eq 'cst' |
&& !$canmodifyuser; |
&& !$canmodifyuser; |
|
next if $$menuitem[4] eq 'ncst' |
|
&& $canmodifyuser; |
|
next if $$menuitem[4] eq 'mgr' |
|
&& !$canmgr; |
|
next if $$menuitem[4] eq 'nmgr' |
|
&& $canmgr; |
next if $$menuitem[4] eq 'whn' |
next if $$menuitem[4] eq 'whn' |
&& !$canviewwnew; |
&& !$canviewwnew; |
next if $$menuitem[4] eq 'opa' |
next if $$menuitem[4] eq 'opa' |
Line 345 sub secondary_menu {
|
Line 348 sub secondary_menu {
|
return "<ul id=\"LC_secondary_menu\">$menu</ul>"; |
return "<ul id=\"LC_secondary_menu\">$menu</ul>"; |
} |
} |
|
|
sub show_return_link { |
|
if (($env{'request.noversionuri'} =~ m{^/adm/(viewclasslist|navmaps)($|\?)}) |
|
|| ($env{'request.noversionuri'} =~ m{^/adm/.*/aboutme($|\?)})) { |
|
|
|
return if ($env{'form.register'}); |
|
} |
|
return (($env{'request.noversionuri'}=~m{^/(res|public)/} && |
|
$env{'request.symb'} eq '') |
|
|| |
|
($env{'request.noversionuri'}=~ m{^/cgi-bin/printout.pl}) |
|
|| |
|
(($env{'request.noversionuri'}=~/^\/adm\//) && |
|
($env{'request.noversionuri'}!~/^\/adm\/wrapper\//) && |
|
($env{'request.noversionuri'}!~ |
|
m{^/adm/.*/(smppg|bulletinboard)($|\?)}) |
|
)); |
|
} |
|
|
|
sub innerregister { |
sub innerregister { |
my ($forcereg,$bread_crumbs) = @_; |
my ($forcereg,$bread_crumbs) = @_; |
my $const_space = ($env{'request.state'} eq 'construct'); |
my $const_space = ($env{'request.state'} eq 'construct'); |
Line 427 sub innerregister {
|
Line 412 sub innerregister {
|
if ($env{'request.symb'} ne '' && |
if ($env{'request.symb'} ne '' && |
$env{'request.filename'}=~/\.(problem|exam|quiz|assess|survey|form|task)$/) { |
$env{'request.filename'}=~/\.(problem|exam|quiz|assess|survey|form|task)$/) { |
if (&Apache::lonnet::allowed('mgr',$crs)) { |
if (&Apache::lonnet::allowed('mgr',$crs)) { |
$hwkadd.=&switch('','',7,2,'pgrd.png','problem[_1]','grades[_4]', |
$hwkadd.=&switch('','',7,2,'pgrd.png','Content Grades','grades[_4]', |
"gocmd('/adm/grades','gradingmenu')", |
"gocmd('/adm/grades','gradingmenu')", |
'Modify user grades for this assessment resource'); |
'Content Grades'); |
} elsif (&Apache::lonnet::allowed('vgr',$crs)) { |
} elsif (&Apache::lonnet::allowed('vgr',$crs)) { |
$hwkadd.=&switch('','',7,2,'subm.png','view sub-[_1]','missions[_1]', |
$hwkadd.=&switch('','',7,2,'subm.png','Content Submissions','missions[_1]', |
"gocmd('/adm/grades','submission')", |
"gocmd('/adm/grades','submission')", |
'View user submissions for this assessment resource'); |
'Content Submissions'); |
} |
} |
} |
} |
if ($env{'request.symb'} ne '' && |
if ($env{'request.symb'} ne '' && |
&Apache::lonnet::allowed('opa',$crs)) { |
&Apache::lonnet::allowed('opa',$crs)) { |
$hwkadd.=&switch('','',7,3,'pparm.png','problem[_2]','parms[_2]', |
$hwkadd.=&switch('','',7,3,'pparm.png','Content Settings','parms[_2]', |
"gocmd('/adm/parmset','set')", |
"gocmd('/adm/parmset','set')", |
'Modify parameter settings for this resource'); |
'Content Settings'); |
} |
} |
# -- End Homework |
# -- End Homework |
### |
### |
Line 546 sub innerregister {
|
Line 531 sub innerregister {
|
} |
} |
} |
} |
$editbutton=&switch |
$editbutton=&switch |
('','',6,1,'pcstr.png','edit[_1]','resource[_2]', |
('','',6,1,'pcstr.png','Edit','resource[_2]', |
$bot,"Edit this resource"); |
$bot,"Edit this resource"); |
$noeditbutton = 0; |
$noeditbutton = 0; |
} |
} |
Line 562 sub innerregister {
|
Line 547 sub innerregister {
|
my $cfile = &edit_course_upload($file,$cnum,$cdom); |
my $cfile = &edit_course_upload($file,$cnum,$cdom); |
if ($cfile) { |
if ($cfile) { |
$editbutton=&switch |
$editbutton=&switch |
('','',6,1,'pcstr.png','edit[_1]', |
('','',6,1,'pcstr.png','Edit', |
'resource[_2]',"go('".$cfile."');", |
'resource[_2]',"go('".$cfile."');", |
'Edit this resource'); |
'Edit this resource'); |
} |
} |
Line 591 sub innerregister {
|
Line 576 sub innerregister {
|
# Probably should be in mydesk.tab |
# Probably should be in mydesk.tab |
# |
# |
$menuitems=(<<ENDMENUITEMS); |
$menuitems=(<<ENDMENUITEMS); |
s&6&1&list.png&list[_1]&dir[_1]&golist('$esc_currdir')&List current directory |
s&6&1&list.png&Directory&dir[_1]&golist('$esc_currdir')&List current directory |
s&6&2&rtrv.png&retrieve[_1]&version[_1]&gocstr('/adm/retrieve','/~$uname/$cleandisfn')&Retrieve old version |
s&6&2&rtrv.png&Retrieve&version[_1]&gocstr('/adm/retrieve','/~$uname/$cleandisfn')&Retrieve old version |
s&6&3&pub.png&publish[_1]&resource[_3]&gocstr('/adm/publish','/~$uname/$cleandisfn')&Publish this resource |
s&6&3&pub.png&Publish&resource[_3]&gocstr('/adm/publish','/~$uname/$cleandisfn')&Publish this resource |
s&7&1&del.png&delete[_1]&resource[_2]&gocstr('/adm/cfile?action=delete','/~$uname/$cleandisfn')&Delete this resource |
s&7&1&del.png&Delete&resource[_2]&gocstr('/adm/cfile?action=delete','/~$uname/$cleandisfn')&Delete this resource |
s&7&2&prt.png&prepare[_1]&printout[_1]&gocstr('/adm/printout','/~$uname/$cleandisfn')&Prepare a printable document |
s&7&2&prt.png&Print&printout[_1]&gocstr('/adm/printout','/~$uname/$cleandisfn')&Prepare a printable document |
ENDMENUITEMS |
ENDMENUITEMS |
} |
} |
if (ref($bread_crumbs) eq 'ARRAY') { |
if (ref($bread_crumbs) eq 'ARRAY') { |
Line 612 ENDMENUITEMS
|
Line 597 ENDMENUITEMS
|
# |
# |
$menuitems=(<<ENDMENUITEMS); |
$menuitems=(<<ENDMENUITEMS); |
c&3&1 |
c&3&1 |
s&2&1&back.png&backward[_1]&&gopost('/adm/flip','back:'+currentURL)&Go to the previous resource in the course sequence&&1 |
s&2&1&back.png&&&gopost('/adm/flip','back:'+currentURL)&Previous content resource&&1 |
s&2&3&forw.png&forward[_1]&&gopost('/adm/flip','forward:'+currentURL)&Go to the next resource in the course sequence&&3 |
s&2&3&forw.png&&&gopost('/adm/flip','forward:'+currentURL)&Next content resource&&3 |
c&6&3 |
c&6&3 |
c&8&1 |
c&8&1 |
c&8&2 |
c&8&2 |
s&8&3&prt.png&prepare[_1]&printout[_1]&gopost('/adm/printout',currentURL)&Prepare a printable document |
s&8&3&prt.png&Print&printout[_1]&gopost('/adm/printout',currentURL)&Prepare a printable document |
ENDMENUITEMS |
ENDMENUITEMS |
if (&Apache::lonnet::allowed('bre', $env{'request.course.id'}) eq 'F' && $env{'request.uri'} =~ /^\/res/) { |
if (&Apache::lonnet::allowed('bre', $env{'request.course.id'}) eq 'F' && $env{'request.uri'} =~ /^\/res/) { |
# wishlist is only available for users with access to resource-pool |
# wishlist is only available for users with access to resource-pool |
# and links can only be set for resources within the resource-pool |
# and links can only be set for resources within the resource-pool |
$menuitems .= (<<ENDMENUITEMS); |
$menuitems .= (<<ENDMENUITEMS); |
s&9&1&wishlist-link.png&set[_1]&wishlistlink[_2]&set_wishlistlink()&Set a link for this resource to wishlist&&1 |
s&9&1&wishlist-link.png&Wishlist&wishlistlink[_2]&set_wishlistlink()&Set a link for this resource to wishlist&&1 |
ENDMENUITEMS |
ENDMENUITEMS |
} |
} |
|
|
Line 636 if(length($annotation) > 0){
|
Line 621 if(length($annotation) > 0){
|
}else{ |
}else{ |
$menuitems.="anot.png"; |
$menuitems.="anot.png"; |
} |
} |
$menuitems.="&anno-[_1]&tations[_1]&annotate()&"; |
$menuitems.="&Notes&&annotate()&"; |
$menuitems.="Make notes and annotations about this resource&&1\n"; |
$menuitems.="Make notes and annotations about this resource&&1\n"; |
|
|
unless ($env{'request.noversionuri'}=~/\/(bulletinboard|smppg|navmaps|syllabus|aboutme|viewclasslist|portfolio)(\?|$)/) { |
unless ($env{'request.noversionuri'}=~/\/(bulletinboard|smppg|navmaps|syllabus|aboutme|viewclasslist|portfolio)(\?|$)/) { |
if ((!$env{'request.enc'}) && ($env{'request.noversionuri'} !~ m{^/adm/wrapper/ext/})) { |
if ((!$env{'request.enc'}) && ($env{'request.noversionuri'} !~ m{^/adm/wrapper/ext/})) { |
$menuitems.=(<<ENDREALRES); |
$menuitems.=(<<ENDREALRES); |
s&6&3&catalog.png&catalog[_2]&info[_1]&catalog_info()&Show Metadata |
s&6&3&catalog.png&Info&info[_1]&catalog_info()&Show Metadata |
ENDREALRES |
ENDREALRES |
} |
} |
$menuitems.=(<<ENDREALRES); |
$menuitems.=(<<ENDREALRES); |
s&8&1&eval.png&evaluate[_1]&this[_1]&gopost('/adm/evaluate',currentURL,1)&Provide my evaluation of this resource |
s&8&1&eval.png&Evaluate&this[_1]&gopost('/adm/evaluate',currentURL,1)&Provide my evaluation of this resource |
s&8&2&fdbk.png&feedback[_1]&discuss[_1]&gopost('/adm/feedback',currentURL,1)&Provide feedback messages or contribute to the course discussion about this resource |
s&8&2&fdbk.png&Communicate&discuss[_1]&gopost('/adm/feedback',currentURL,1)&Provide feedback messages or contribute to the course discussion about this resource |
ENDREALRES |
ENDREALRES |
} |
} |
} |
} |
if ($env{'request.uri'} =~ /^\/res/) { |
if ($env{'request.uri'} =~ /^\/res/) { |
$menuitems .= (<<ENDMENUITEMS); |
$menuitems .= (<<ENDMENUITEMS); |
s&8&3&prt.png&prepare[_1]&printout[_1]&gopost('/adm/printout',currentURL)&Prepare a printable document |
s&8&3&prt.png&Print&printout[_1]&gopost('/adm/printout',currentURL)&Prepare a printable document |
ENDMENUITEMS |
ENDMENUITEMS |
if (&Apache::lonnet::allowed('bre', $env{'request.course.id'}) eq 'F') { |
if (&Apache::lonnet::allowed('bre', $env{'request.course.id'}) eq 'F') { |
# wishlist is only available for users with access to resource-pool |
# wishlist is only available for users with access to resource-pool |
$menuitems .= (<<ENDMENUITEMS); |
$menuitems .= (<<ENDMENUITEMS); |
s&9&1&wishlist-link.png&set[_1]&wishlistlink[_2]&set_wishlistlink()&Set a link for this resource to wishlist&&1 |
s&9&1&wishlist-link.png&Wishlist&wishlistlink[_2]&set_wishlistlink()&Set a link for this resource to wishlist&&1 |
ENDMENUITEMS |
ENDMENUITEMS |
} |
} |
} |
} |
Line 685 ENDMENUITEMS
|
Line 670 ENDMENUITEMS
|
foreach (@inlineremote) { if ($_ ne '') { $addremote=1; last;} } |
foreach (@inlineremote) { if ($_ ne '') { $addremote=1; last;} } |
if ($addremote) { |
if ($addremote) { |
|
|
Apache::lonhtmlcommon::clear_breadcrumb_tools(); |
&Apache::lonhtmlcommon::clear_breadcrumb_tools(); |
|
|
Apache::lonhtmlcommon::add_breadcrumb_tool( |
&Apache::lonhtmlcommon::add_breadcrumb_tool( |
'navigation', @inlineremote[21,23]); |
'navigation', @inlineremote[21,23]); |
|
|
if(hidden_button_check() ne 'yes') { |
if(hidden_button_check() ne 'yes') { |
Apache::lonhtmlcommon::add_breadcrumb_tool( |
&Apache::lonhtmlcommon::add_breadcrumb_tool( |
'tools', @inlineremote[93,91,81,82,83]); |
'tools', @inlineremote[93,91,81,82,83]); |
|
|
#publish button in construction space |
#publish button in construction space |
if ($env{'request.state'} eq 'construct'){ |
if ($env{'request.state'} eq 'construct'){ |
Apache::lonhtmlcommon::add_breadcrumb_tool( |
&Apache::lonhtmlcommon::add_breadcrumb_tool( |
'advtools', @inlineremote[63]); |
'advtools', @inlineremote[63]); |
}else{ |
} else { |
Apache::lonhtmlcommon::add_breadcrumb_tool( |
&Apache::lonhtmlcommon::add_breadcrumb_tool( |
'tools', @inlineremote[63]); |
'tools', @inlineremote[63]); |
} |
} |
|
|
unless ($env{'request.noversionuri'}=~ m{^/adm/(navmaps|viewclasslist)(\?|$)}) { |
unless ($env{'request.noversionuri'}=~ m{^/adm/(navmaps|viewclasslist)(\?|$)}) { |
Apache::lonhtmlcommon::add_breadcrumb_tool( |
&Apache::lonhtmlcommon::add_breadcrumb_tool( |
'advtools', @inlineremote[61,71,72,73,92]); |
'advtools', @inlineremote[61,71,72,73,92]); |
} |
} |
} |
} |
} |
} |
|
|
return Apache::lonhtmlcommon::scripttag('', 'start') |
return &Apache::lonhtmlcommon::scripttag('', 'start') |
. Apache::lonhtmlcommon::breadcrumbs(undef,undef,0) |
. &Apache::lonhtmlcommon::breadcrumbs(undef,undef,0) |
. Apache::lonhtmlcommon::scripttag('', 'end'); |
. &Apache::lonhtmlcommon::scripttag('', 'end'); |
} |
} |
|
|
sub is_course_upload { |
sub is_course_upload { |
Line 805 sub switch {
|
Line 790 sub switch {
|
# Inline Menu |
# Inline Menu |
$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">'.$desc.'</span></a>'; |
'<span class="LC_menubuttons_inline_text">'.$top.' </span></a>'; |
} |
} |
return ''; |
return ''; |
} |
} |
Line 1121 sub utilityfunctions {
|
Line 1106 sub utilityfunctions {
|
my $confirm_switch = &mt("Editing requires switching to the resource's home server.").'\n'. |
my $confirm_switch = &mt("Editing requires switching to the resource's home server.").'\n'. |
&mt('Switch server?'); |
&mt('Switch server?'); |
|
|
my $start_page_wishlistlink = |
my $wishlistpopup; |
&Apache::loncommon::start_page('Set link to wishlist',undef, |
if (&Apache::lonwishlist::getWishlist() ne 'error') { |
{'only_body' => 1, |
$wishlistpopup = &Apache::lonwishlist::makePopUpNewLink(); |
'js_ready' => 1, |
} |
'bgcolor' => '#FFFFFF',}); |
|
|
|
my $warningLink = &mt('You must insert a title!'); |
|
|
|
# HTML-Markup for 'Set a link for this resource to wishlist' |
|
# this is written via JavaScript document.write (function set_wishlistlink) |
|
# it is split into 3 parts and the inputfields for title and path are left out |
|
# these fields are inserted later to set the values for title and path |
|
# automatically via JavaScript (document.title and location.pathname) |
|
my %folders = &Apache::lonnet::get('wishlist',['folders']); |
|
if ($folders{'folders'} eq '') { |
|
$folders{'folders'} = '<option value="" selected="selected">('.&mt('Top level').')</option>'; |
|
} |
|
my $in_page_wishlistlink1 = '<h1>'.&mt('Set a link to wishlist').'</h1>'. |
|
'<form method="post" name="newlink" action="/adm/wishlist?mode=set" '. |
|
'onsubmit="return newlinksubmit();" >'. |
|
&Apache::lonhtmlcommon::start_pick_box(). |
|
&Apache::lonhtmlcommon::row_title(&mt('Link Title')); |
|
|
|
my $in_page_wishlistlink2 = &Apache::lonhtmlcommon::row_closure(). |
|
&Apache::lonhtmlcommon::row_title(&mt('Path')); |
|
|
|
my $in_page_wishlistlink3 = &Apache::lonhtmlcommon::row_closure(). |
|
&Apache::lonhtmlcommon::row_title(&mt('Note')). |
|
'<textarea name="note" rows="3" cols="35" style="width:100%"></textarea>'. |
|
&Apache::lonhtmlcommon::row_closure(1). |
|
&Apache::lonhtmlcommon::end_pick_box(). |
|
'<br/><br/>'. |
|
'<input type="submit" value="'.&mt('Save in').'" />'. |
|
'<select name="folders">'. |
|
$folders{'folders'}. |
|
'</select>'. |
|
'<input type="button" value="'.&mt('cancel').'" onclick="javascript:window.close();" />'. |
|
'</form>'; |
|
|
|
# remove all \n for inserting on javascript document.write |
|
$in_page_wishlistlink1 =~ s/\n//g; |
|
$in_page_wishlistlink2 =~ s/\n//g; |
|
$in_page_wishlistlink3 =~ s/\n//g; |
|
|
|
my $end_page_wishlistlink = |
|
&Apache::loncommon::end_page({'js_ready' => 1}); |
|
|
|
return (<<ENDUTILITY) |
return (<<ENDUTILITY) |
|
|
Line 1292 function annotate() {
|
Line 1235 function annotate() {
|
} |
} |
|
|
function set_wishlistlink(title, path) { |
function set_wishlistlink(title, path) { |
if (!title) { |
$wishlistpopup |
title=document.title; |
|
} |
|
if (!path) { |
|
path=location.pathname; |
|
} |
|
title = title.replace(/^LON-CAPA /,''); |
|
wishlistlink=window.open('','wishlistNewLink','width=560,height=350,scrollbars=0'); |
|
wishlistlink.document.write( |
|
'$start_page_wishlistlink' |
|
+'<script type="text\/javascript">' |
|
+'function newlinksubmit(){' |
|
+'var title = document.getElementsByName("title")[0].value;' |
|
+'if (!title) {' |
|
+'alert("$warningLink");' |
|
+'return false;}' |
|
+'return true;}' |
|
+'<\/scr'+'ipt>' |
|
+'$in_page_wishlistlink1' |
|
+'<input type="text" name="title" size="45" value="'+title+'"/>' |
|
+'$in_page_wishlistlink2' |
|
+'<input type="text" name="path" size="45" value="'+path+'" ' |
|
+'readonly="readonly" style="background-color: #DDDDDD"/>' |
|
+'$in_page_wishlistlink3' |
|
+'$end_page_wishlistlink' ); |
|
wishlistlink.document.close(); |
|
} |
} |
|
|
function open_Wishlist_Import(rat) { |
function open_Wishlist_Import(rat) { |