version 1.48, 2003/02/07 15:05:37
|
version 1.56, 2003/05/21 00:48:27
|
Line 179 sub editor {
|
Line 179 sub editor {
|
# Store the changed version |
# Store the changed version |
&storemap($coursenum,$coursedom,$folder.'.sequence'); |
&storemap($coursenum,$coursedom,$folder.'.sequence'); |
} |
} |
|
# Loading a complete map |
|
if (($ENV{'form.importmap'}) && ($ENV{'form.loadmap'})) { |
|
foreach |
|
(&Apache::lonsequence::attemptread(&Apache::lonnet::filelocation('',$ENV{'form.importmap'}))) { |
|
my $idx=$#Apache::lonratedt::resources; |
|
$idx++; |
|
$Apache::lonratedt::resources[$idx]=$_; |
|
$Apache::lonratedt::order |
|
[$#Apache::lonratedt::order+1]=$idx; |
|
} |
|
|
|
# Store the changed version |
|
&storemap($coursenum,$coursedom,$folder.'.sequence'); |
|
} |
} |
} |
# ---------------------------------------------------------------- End commands |
# ---------------------------------------------------------------- End commands |
# ---------------------------------------------------------------- Print screen |
# ---------------------------------------------------------------- Print screen |
Line 188 sub editor {
|
Line 202 sub editor {
|
my ($name,$url)=split(/\:/,$Apache::lonratedt::resources[$_]); |
my ($name,$url)=split(/\:/,$Apache::lonratedt::resources[$_]); |
unless ($name) { $name=(split(/\//,$url))[-1]; } |
unless ($name) { $name=(split(/\//,$url))[-1]; } |
unless ($name) { $name='NO RESOURCE'; $url='/adm/notfound.html'; } |
unless ($name) { $name='NO RESOURCE'; $url='/adm/notfound.html'; } |
$r->print(&entryline($idx,$name,$url,$folder,$allowed)); |
$r->print(&entryline($idx,$name,$url,$folder,$allowed,$_)); |
$idx++; |
$idx++; |
} |
} |
$r->print('</table>'); |
$r->print('</table>'); |
Line 198 sub editor {
|
Line 212 sub editor {
|
# --------------------------------------------------------------- An entry line |
# --------------------------------------------------------------- An entry line |
|
|
sub entryline { |
sub entryline { |
my ($index,$title,$url,$folder,$allowed)=@_; |
my ($index,$title,$url,$folder,$allowed,$residx)=@_; |
$title=~s/\&colon\;/\:/g; |
$title=~s/\&colon\;/\:/g; |
$title=&HTML::Entities::encode(&HTML::Entities::decode( |
$title=&HTML::Entities::encode(&HTML::Entities::decode( |
&Apache::lonnet::unescape($title)),'\"\<\>\&\''); |
&Apache::lonnet::unescape($title)),'\"\<\>\&\''); |
Line 218 sub entryline {
|
Line 232 sub entryline {
|
# Edit commands |
# Edit commands |
if ($allowed) { |
if ($allowed) { |
$line.=(<<END); |
$line.=(<<END); |
<td><table border='0' cellspacing='0' cellpadding='0'> |
<td><table border='0' cellspacing='2' cellpadding='0'> |
<tr><td><a href='/adm/coursedocs?folder=$folder&cmd=up_$index'> |
<tr><td bgcolor="#DDDDDD"> |
|
<a href='/adm/coursedocs?folder=$folder&cmd=up_$index'> |
<img src="${iconpath}move_up.gif" alt='UP' border='0' /></a></td></tr> |
<img src="${iconpath}move_up.gif" alt='UP' border='0' /></a></td></tr> |
<tr><td><a href='/adm/coursedocs?folder=$folder&cmd=down_$index'> |
<tr><td bgcolor="#DDDDDD"> |
|
<a href='/adm/coursedocs?folder=$folder&cmd=down_$index'> |
<img src="${iconpath}move_down.gif" alt='DOWN' border='0' /></a></td></tr> |
<img src="${iconpath}move_down.gif" alt='DOWN' border='0' /></a></td></tr> |
</table></td><td> |
</table></td><td bgcolor="#DDDDDD"> |
<a href='/adm/coursedocs?folder=$folder&cmd=del_$index'> |
<a href='javascript:removeres("$folder","$index","$renametitle");'> |
<font size="-2">Remove</font></a> |
<font size="-2" color="#990000">Remove</font></a> |
<a href='javascript:changename("$folder","$index","$renametitle");'> |
<a href='javascript:changename("$folder","$index","$renametitle");'> |
<font size="-2">Rename</font></a></td> |
<font size="-2" color="#009900">Rename</font></a></td> |
END |
END |
} |
} |
# Figure out what kind of a resource this is |
# Figure out what kind of a resource this is |
Line 249 END
|
Line 265 END
|
} |
} |
} |
} |
$url=~s/^http\&colon\;\/\//\/adm\/wrapper\/ext\//; |
$url=~s/^http\&colon\;\/\//\/adm\/wrapper\/ext\//; |
|
if ($residx) { |
|
$url.=(($url=~/\?/)?'&':'?').'symb='. |
|
&Apache::lonnet::escape(&Apache::lonnet::symbclean( |
|
&Apache::lonnet::declutter('uploaded/'. |
|
$ENV{'course.'.$ENV{'request.course.id'}.'.domain'}.'/'. |
|
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}.'/'.$folder. |
|
'.sequence'). |
|
'___'.$residx.'___'. |
|
&Apache::lonnet::declutter($url))); |
|
} |
if ($isfolder) { $url.='&foldername='. |
if ($isfolder) { $url.='&foldername='. |
&Apache::lonnet::escape($foldertitle); } |
&Apache::lonnet::escape($foldertitle); } |
$line.='<td bgcolor="#FFFFBB"><a href="'.$url.'" target="cat_'.$folder. |
$line.='<td bgcolor="#FFFFBB"><a href="'.$url.'" target="cat_'.$folder. |
Line 472 ENDHEADERS
|
Line 498 ENDHEADERS
|
my $script=''; |
my $script=''; |
my $allowed; |
my $allowed; |
my $events=''; |
my $events=''; |
|
my $buttons=''; |
my $showdoc=0; |
my $showdoc=0; |
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, |
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, |
['folder','foldername']); |
['folder','foldername']); |
Line 490 ENDHEADERS
|
Line 517 ENDHEADERS
|
} |
} |
} else { # got called in sequence from course |
} else { # got called in sequence from course |
$allowed=0; |
$allowed=0; |
$script='</script>'.&Apache::lonxml::registerurl(1,undef).'<script>'; |
$script='</script>'.&Apache::lonmenu::registerurl(1,undef).'<script>'; |
$events='onLoad="'.&Apache::lonxml::loadevents. |
$events='onLoad="'.&Apache::lonmenu::loadevents. |
'" onUnload="'.&Apache::lonxml::unloadevents.'"'; |
'" onUnload="'.&Apache::lonmenu::unloadevents.'"'; |
|
$buttons=&Apache::lonmenu::menubuttons(1,undef); |
} |
} |
|
|
# get course data |
# get course data |
Line 511 ENDHEADERS
|
Line 539 ENDHEADERS
|
$iconpath = $r->dir_config('lonIconsURL') . "/"; |
$iconpath = $r->dir_config('lonIconsURL') . "/"; |
|
|
my $now=time; |
my $now=time; |
|
# |
|
# FIXME: hack to disable new problem |
|
# |
|
my $noeggforyou=''; |
|
unless ($ENV{'user.debug'}) { |
|
$noeggforyou='alert("Sorry, not implemented yet."); return 0;'; |
|
} |
# print screen |
# print screen |
$r->print(<<ENDDOCUMENT); |
$r->print(<<ENDDOCUMENT); |
<html> |
<html> |
Line 546 function makesmppage() {
|
Line 580 function makesmppage() {
|
} |
} |
} |
} |
|
|
|
function makesmpproblem() { |
|
$noeggforyou |
|
var title=prompt('Listed Title for the Problem'); |
|
if (title) { |
|
this.document.forms.newsmpproblem.importdetail.value= |
|
title+'=/adm/wrapper/uploaded/$udom/$uname/$now.problem'; |
|
this.document.forms.newsmpproblem.submit(); |
|
} |
|
} |
|
|
function makebulboard() { |
function makebulboard() { |
var title=prompt('Listed Title for the Bulletin Board'); |
var title=prompt('Listed Title for the Bulletin Board'); |
if (title) { |
if (title) { |
Line 573 function changename(folder,index,oldtitl
|
Line 617 function changename(folder,index,oldtitl
|
this.document.forms.renameform.submit(); |
this.document.forms.renameform.submit(); |
} |
} |
} |
} |
|
|
|
function removeres(folder,index,oldtitle) { |
|
if (confirm('Remove "'+oldtitle+'"?')) { |
|
this.document.forms.renameform.cmd.value='del_'+index; |
|
this.document.forms.renameform.folder.value=folder; |
|
this.document.forms.renameform.submit(); |
|
} |
|
} |
</script> |
</script> |
|
|
ENDNEWSCRIPT |
ENDNEWSCRIPT |
} |
} |
# -------------------------------------------------------------------- Body tag |
# -------------------------------------------------------------------- Body tag |
$r->print('</head>'. |
$r->print('</head>'. |
&Apache::loncommon::bodytag('Course Documents','',$events)); |
&Apache::loncommon::bodytag('Course Documents','',$events). |
|
$buttons); |
unless ($showdoc) { |
unless ($showdoc) { |
if ($allowed) { |
if ($allowed) { |
$r->print(&Apache::loncommon::help_open_topic('Docs_Adding_Course_Doc', |
$r->print(&Apache::loncommon::help_open_topic('Docs_Adding_Course_Doc', |
Line 607 ENDCOURSEVERIFY
|
Line 660 ENDCOURSEVERIFY
|
($allowed?' '.$help{'Main_Course_Documents'}:'').'</h2>'); |
($allowed?' '.$help{'Main_Course_Documents'}:'').'</h2>'); |
my $folder=$ENV{'form.folder'}; |
my $folder=$ENV{'form.folder'}; |
unless ($folder=~/^default/) { $folder='default'; } |
unless ($folder=~/^default/) { $folder='default'; } |
|
my $postexec=''; |
|
if ($folder eq 'default') { |
|
$r->print('<script>this.window.name="loncapaclient";</script>'); |
|
} else { |
|
$postexec='self.close();'; |
|
} |
$hadchanges=0; |
$hadchanges=0; |
&editor($r,$coursenum,$coursedom,$folder,$allowed); |
&editor($r,$coursenum,$coursedom,$folder,$allowed); |
if ($hadchanges) { |
if ($hadchanges) { |
$r->print('<form method="post" action="/adm/roles">'. |
$r->print( |
'<input type=hidden name=orgurl value="/adm/coursedocs" /><input type=hidden name=selectrole value=1 /><h3><font color="red">Changes will become active for your current session after <input type="submit" name="'. |
'<script>function reinit(tf) { tf.submit();'.$postexec.' }</script>'. |
$ENV{'request.role'}.'" value="re-initializing course" />, or the next time you log in.</font></h3></form>'); |
'<form method="post" action="/adm/roles" target="loncapaclient">'. |
|
'<input type="hidden" name="orgurl" value="/adm/coursedocs" /><input type="hidden" name="selectrole" value="1" /><h3><font color="red">Changes will become active for your current session after <input type="hidden" name="'. |
|
$ENV{'request.role'}.'" value="1" /><input type="button" value="re-initializing course" onClick="reinit(this.form)"/>, or the next time you log in.</font></h3></form>'); |
} |
} |
my $folderseq='/uploaded/'.$coursedom.'/'.$coursenum.'/default_'.time. |
my $folderseq='/uploaded/'.$coursedom.'/'.$coursenum.'/default_'.time. |
'.sequence'; |
'.sequence'; |
Line 638 Title:<br />
|
Line 699 Title:<br />
|
</td> |
</td> |
<td bgcolor="#DDDDDD"> |
<td bgcolor="#DDDDDD"> |
<form action="/adm/coursedocs" method="post" name="simpleeditdefault"> |
<form action="/adm/coursedocs" method="post" name="simpleeditdefault"> |
|
<input type="hidden" name="folder" value="$folder"> |
|
<input type="hidden" name="foldername" value="$ENV{'form.foldername'}"> |
<input type=button onClick= |
<input type=button onClick= |
"javascript:document.forms.simpleedit.folder.value='$folder';groupsearch()" value="Search"> |
"javascript:document.forms.simpleedit.folder.value='$folder';groupsearch()" value="Search"> |
<input type=button onClick= |
<input type=button onClick= |
"javascript:document.forms.simpleedit.folder.value='$folder';groupimport();" value="Import"> |
"javascript:document.forms.simpleedit.folder.value='$folder';groupimport();" value="Import"> |
$help{'Importing_LON-CAPA_Resource'}</form> |
$help{'Importing_LON-CAPA_Resource'}<br /> |
|
<input type="text" size="20" name="importmap"> |
|
<input type=button |
|
onClick="javascript:openbrowser('simpleeditdefault','importmap','sequence,page','')" |
|
value="Browse"><input type="submit" name="loadmap" value="Load Map"> |
|
</form> |
</td><td bgcolor="#DDDDDD"> |
</td><td bgcolor="#DDDDDD"> |
<form action="/adm/coursedocs" method="post" name="newfolder"> |
<form action="/adm/coursedocs" method="post" name="newfolder"> |
<input type="hidden" name="folder" value="$folder"> |
<input type="hidden" name="folder" value="$folder"> |
Line 681 $help{'Navigate_Content'}
|
Line 749 $help{'Navigate_Content'}
|
<input name="newsmppg" type="button" value="Simple Page" |
<input name="newsmppg" type="button" value="Simple Page" |
onClick="javascript:makesmppage();" /> $help{'Creating_From_Template'} |
onClick="javascript:makesmppage();" /> $help{'Creating_From_Template'} |
</form> |
</form> |
|
<form action="/adm/coursedocs" method="post" name="newsmpproblem"> |
|
<input type="hidden" name="folder" value="$folder"> |
|
<input type="hidden" name="foldername" value="$ENV{'form.foldername'}"> |
|
<input type=hidden name="importdetail" value=""> |
|
<input name="newsmpproblem" type="button" value="Simple Problem" |
|
onClick="javascript:makesmpproblem();" /> $help{'Creating_From_Template'} |
|
</form> |
<form action="/adm/coursedocs" method="post" name="newbul"> |
<form action="/adm/coursedocs" method="post" name="newbul"> |
<input type="hidden" name="folder" value="$folder"> |
<input type="hidden" name="folder" value="$folder"> |
<input type="hidden" name="foldername" value="$ENV{'form.foldername'}"> |
<input type="hidden" name="foldername" value="$ENV{'form.foldername'}"> |
Line 733 ENDFORM
|
Line 808 ENDFORM
|
</td> |
</td> |
<td bgcolor="#DDDDDD"> |
<td bgcolor="#DDDDDD"> |
<form action="/adm/coursedocs" method="post" name="simpleeditsupplement"> |
<form action="/adm/coursedocs" method="post" name="simpleeditsupplement"> |
|
<input type="hidden" name="folder" value="$folder"> |
|
<input type="hidden" name="foldername" value="$ENV{'form.foldername'}"> |
<input type=hidden name="importdetail" value=""> |
<input type=hidden name="importdetail" value=""> |
<input type=button onClick= |
<input type=button onClick= |
"javascript:document.forms.simpleedit.folder.value='$folder';groupsearch()" value="Search"> |
"javascript:document.forms.simpleedit.folder.value='$folder';groupsearch()" value="Search"> |
<input type=button onClick= |
<input type=button onClick= |
"javascript:document.forms.simpleedit.folder.value='$folder';groupimport();" value="Import">$help{'Importing_LON-CAPA_Resource'} |
"javascript:document.forms.simpleedit.folder.value='$folder';groupimport();" value="Import">$help{'Importing_LON-CAPA_Resource'} |
|
<br /> |
|
<input type="text" size="20" name="importmap"> |
|
<input type=button |
|
onClick="javascript:openbrowser('simpleeditsupplement','importmap','sequence,page','')" |
|
value="Browse"><input type="submit" name="loadmap" value="Load Map"> |
</form> |
</form> |
</td><td bgcolor="#DDDDDD"> |
</td><td bgcolor="#DDDDDD"> |
<form action="/adm/coursedocs" method="post" name="supnewfolder"> |
<form action="/adm/coursedocs" method="post" name="supnewfolder"> |