version 1.64, 2004/10/29 18:40:40
|
version 1.72, 2004/12/10 18:26:49
|
Line 91 sub handler {
|
Line 91 sub handler {
|
my %bombs=&Apache::lonmsg::all_url_author_res_msg($uname,$udom); |
my %bombs=&Apache::lonmsg::all_url_author_res_msg($uname,$udom); |
|
|
&startpage($r, $uname, $udom, $thisdisfn); # Put out the start of page. |
&startpage($r, $uname, $udom, $thisdisfn); # Put out the start of page. |
|
if ($ENV{'environment.remote'} eq 'off') { |
&dircontrols($r,$uname,$udom,$thisdisfn); # Put out actions for directory, |
&dircontrols($r,$uname,$udom,$thisdisfn); # Put out actions for directory, |
# browse/upload + new file page. |
# browse/upload + new file page. |
|
} else { |
|
&pubbuttons($r,$uname,$thisdisfn); |
|
} |
&resourceactions($r,$uname,$udom,$thisdisfn); #Put out form used for printing/deletion etc. |
&resourceactions($r,$uname,$udom,$thisdisfn); #Put out form used for printing/deletion etc. |
|
|
my $numdir = 0; |
my $numdir = 0; |
Line 192 sub startpage {
|
Line 194 sub startpage {
|
|
|
$r->print('<html><head><title>LON-CAPA Construction Space</title></head>'); |
$r->print('<html><head><title>LON-CAPA Construction Space</title></head>'); |
|
|
my $pagetitle; |
my $pagetitle; |
my $formaction='/priv/'.$uname.'/'.$thisdisfn; |
my $formaction='/priv/'.$uname.$thisdisfn.'/'; |
$formaction=~s/\/+/\//g; |
$formaction=~s/\/+/\//g; |
$pagetitle .= ('<form name="dirs" method="post" action="'.$formaction |
$pagetitle .= &Apache::loncommon::help_open_menu('','','','',3,'Authoring'). |
.'" target="_parent">'. |
'<font face="Arial, Helvetica, sans-serif" size="+1"><b>Construction Space</b>:</font> '. |
'<font face="Arial, Helvetica, sans-serif"><b>Construction Space</b>:</font> '. |
'<form name="dirs" method="post" action="'.$formaction. |
&Apache::lonhtmlcommon::crumbs($uname.'/'.$thisdisfn,'top','/priv','','-1'). |
'" target="_parent"><tt><b>'. |
|
&Apache::lonhtmlcommon::crumbs($uname.$thisdisfn.'/','_top','/priv','','+1',1)."</b></tt><br />". |
&Apache::lonhtmlcommon::select_recent('construct','recent', |
&Apache::lonhtmlcommon::select_recent('construct','recent', |
'this.form.action=this.form.recent.value;this.form.submit()'). |
'this.form.action=this.form.recent.value;this.form.submit()'). |
'</form>'); |
'</form>'; |
&Apache::lonhtmlcommon::store_recent('construct',$formaction,$formaction); |
&Apache::lonhtmlcommon::store_recent('construct',$formaction,$formaction); |
|
if ($ENV{'environment.remote'} eq 'off') { |
$r->print(&Apache::loncommon::bodytag('Construction Space',undef,undef,undef,undef,undef,$pagetitle)); |
$ENV{'request.noversionuri'}=$currdir.'/'; |
|
$r->print(&Apache::loncommon::bodytag('Construction Space',undef,undef,undef,undef,undef,$pagetitle)); |
$r->print(&Apache::loncommon::help_open_menu('','','','',3,'Authoring')); |
} else { |
|
$r->print($pagetitle); |
|
} |
my $pubdirscript=(<<ENDPUBDIRSCRIPT); |
my $pubdirscript=(<<ENDPUBDIRSCRIPT); |
<script> |
<script> |
// Store directory location for menu bar to find |
// Store directory location for menu bar to find |
|
|
parent.lastknownpriv='/~$uname/$thisdisfn/'; |
parent.lastknownpriv='/~$uname$thisdisfn/'; |
|
|
// Confirmation dialogues |
// Confirmation dialogues |
|
|
Line 225 parent.lastknownpriv='/~$uname/$thisdisf
|
Line 230 parent.lastknownpriv='/~$uname/$thisdisf
|
pubrecdir(document.publishdir) |
pubrecdir(document.publishdir) |
} |
} |
if (theform.dirtask.options[theform.dirtask.selectedIndex].value == 'editcat') { |
if (theform.dirtask.options[theform.dirtask.selectedIndex].value == 'editcat') { |
window.location=theform.filename.value+'default.meta' |
top.location=theform.filename.value+'default.meta' |
} |
} |
if (theform.dirtask.options[theform.dirtask.selectedIndex].value == 'printdir' ) { |
if (theform.dirtask.options[theform.dirtask.selectedIndex].value == 'printdir' ) { |
document.printdir.postdata.value=theform.filename.value |
document.printdir.postdata.value=theform.filename.value |
Line 263 parent.lastknownpriv='/~$uname/$thisdisf
|
Line 268 parent.lastknownpriv='/~$uname/$thisdisf
|
|
|
function SetPubDir(theform,printForm) { |
function SetPubDir(theform,printForm) { |
if (theform.diraction.options[theform.diraction.selectedIndex].value == "open") { |
if (theform.diraction.options[theform.diraction.selectedIndex].value == "open") { |
window.location = theform.filename.value |
top.location = theform.filename.value |
return |
return |
} |
} |
if (theform.diraction.options[theform.diraction.selectedIndex].value == "publish") { |
if (theform.diraction.options[theform.diraction.selectedIndex].value == "publish") { |
Line 273 parent.lastknownpriv='/~$uname/$thisdisf
|
Line 278 parent.lastknownpriv='/~$uname/$thisdisf
|
pubrecdir(theform) |
pubrecdir(theform) |
} |
} |
if (theform.diraction.options[theform.diraction.selectedIndex].value == "editcat") { |
if (theform.diraction.options[theform.diraction.selectedIndex].value == "editcat") { |
window.location=theform.filename.value+'default.meta' |
top.location=theform.filename.value+'default.meta' |
} |
} |
if (theform.diraction.options[theform.diraction.selectedIndex].value == "print") { |
if (theform.diraction.options[theform.diraction.selectedIndex].value == "printdir") { |
theform.action = '/adm/printout' |
theform.action = '/adm/printout' |
theform.postdata.value = theform.filename.value |
theform.postdata.value = theform.filename.value |
theform.submit() |
theform.submit() |
Line 295 parent.lastknownpriv='/~$uname/$thisdisf
|
Line 300 parent.lastknownpriv='/~$uname/$thisdisf
|
if (activity == 'delete') { |
if (activity == 'delete') { |
var delform = document.delresource |
var delform = document.delresource |
delform.filename.value = theform.filename.value |
delform.filename.value = theform.filename.value |
if (confirm("Are you sure you want to delete "+theform.filename.value+"?")) { |
delform.submit() |
delform.submit() |
|
} |
|
} |
} |
if (activity == 'obsolete') { |
if (activity == 'obsolete') { |
alert("Mark as obsolete - still to be implemented") |
var pubform = document.pubresource |
|
pubform.filename.value = theform.filename.value |
|
alert("You will be taken to the publication page.\\nCheck the 'Obsolete' checkbox at the bottom of the page, and click 'Finalize Publication'.") |
|
pubform.submit() |
} |
} |
if (activity == 'print') { |
if (activity == 'print') { |
document.printresource.postdata = theform.filename.value |
document.printresource.postdata.value = theform.filename.value |
document.printresource.curseed = getcurseed() |
|
document.printresource.problemtype = getproblemtype() |
|
document.printresource.submit() |
document.printresource.submit() |
} |
} |
if (activity == 'retrieve') { |
if (activity == 'retrieve') { |
retrieveres.filename.value = theform.filename.value |
document.retrieveres.filename.value = theform.filename.value |
retrieveres.submit() |
document.retrieveres.submit() |
} |
} |
return |
return |
} |
} |
Line 324 parent.lastknownpriv='/~$uname/$thisdisf
|
Line 328 parent.lastknownpriv='/~$uname/$thisdisf
|
document.moveresource.action.value = activity |
document.moveresource.action.value = activity |
document.moveresource.submit(); |
document.moveresource.submit(); |
} |
} |
|
|
function getcurseed() { |
|
if (parent.document.lonhomework |
|
&& |
|
parent.document.lonhomework.rndseed |
|
&& |
|
parent.document.lonhomework.rndseed.value) { |
|
return parent.document.lonhomework.rndseed.value; |
|
} |
|
return 0; |
|
} |
|
|
|
function getproblemtype() { |
|
if (parent.document.lonhomework) { |
|
var optionelement; |
|
var valueIndex=0; |
|
for (var optionIndex=0; |
|
optionIndex < parent.document.lonhomework.problemtype.options.length; |
|
optionIndex++) |
|
{ |
|
optionElement=parent.document.lonhomework.problemtype.options[optionIndex]; |
|
if (optionElement.selected) { |
|
return optionElement.value; |
|
} |
|
} |
|
} |
|
return 0; |
|
} |
|
</script> |
</script> |
ENDPUBDIRSCRIPT |
ENDPUBDIRSCRIPT |
$r->print($pubdirscript); |
$r->print($pubdirscript); |
Line 367 sub dircontrols {
|
Line 343 sub dircontrols {
|
$r->print(<<END); |
$r->print(<<END); |
<table cellspacing="4" cellpadding="4" width="100%"> |
<table cellspacing="4" cellpadding="4" width="100%"> |
<tr> |
<tr> |
<th bgcolor="#DDDDDD">Actions for current directory</th> |
<td bgcolor="#DDDDDD" align="middle"><font face="Arial, Helvetica, sans-serif" size="-1"><b>Actions for current directory</b></font></td> |
<th bgcolor="#DDDDDD">Upload a new document</th> |
<td bgcolor="#DDDDDD" align="middle"><font face="Arial, Helvetica, sans-serif" size="-1"><b>Upload a new document</b></font></td> |
<th bgcolor="#DDDDDD">Create a new directory or LON-CAPA document</th> |
<td bgcolor="#DDDDDD" align="middle"><font face="Arial, Helvetica, sans-serif" size="-1"><b>Create a new directory or LON-CAPA document</b></font></td> |
</tr> |
</tr> |
<tr> |
<tr> |
<td bgcolor="#ccddaa" valign="top" align="center"> |
<td bgcolor="#ccddaa" valign="top" align="center"> |
Line 390 sub dircontrols {
|
Line 366 sub dircontrols {
|
</form> |
</form> |
<form name="printdir" method="post" action="/adm/printout" target="_parent"> |
<form name="printdir" method="post" action="/adm/printout" target="_parent"> |
<input type="hidden" name="postdata" value="" /> |
<input type="hidden" name="postdata" value="" /> |
<input type="hidden" name="curseed" value="0" /> |
|
<input type="hidden" name="problemtype" value="0" /> |
|
</form> |
</form> |
</td> |
</td> |
<td bgcolor="#ccddaa" valign="top" align="center"> |
<td bgcolor="#ccddaa" valign="top" align="center"> |
Line 406 sub dircontrols {
|
Line 380 sub dircontrols {
|
<nobr> |
<nobr> |
<input type="hidden" name="filename" value="/~$uname$thisdisfn/" /> |
<input type="hidden" name="filename" value="/~$uname$thisdisfn/" /> |
<select name="action"> |
<select name="action"> |
<option>Select action</option> |
<option>Select Action</option> |
<option value="newfile">New file:</option> |
<option value="newfile">New file:</option> |
<option value="newhtmlfile">New HTML file:</option> |
<option value="newhtmlfile">New HTML file:</option> |
<option value="newproblemfile">New problem:</option> |
<option value="newproblemfile">New problem:</option> |
Line 421 sub dircontrols {
|
Line 395 sub dircontrols {
|
</td> |
</td> |
</tr> |
</tr> |
</table> |
</table> |
<br /> |
|
<br /> |
|
END |
END |
} |
} |
|
|
|
sub pubbuttons { |
|
my ($r,$uname,$thisdisfn) = @_; |
|
$r->print('<form method="post" action="/adm/publish" target="_parent">'. |
|
'<table><tr><td><input type="hidden" name="filename" value="/~'. |
|
$uname.$thisdisfn.'/" />'. |
|
'<input type="button" onClick="pubdir(this.form);" value="'. |
|
&mt('Publish Directory').'" />'. |
|
'<input type="hidden" name="pubrec" value="" />'. |
|
'<input type="hidden" name="forcerepub" value="NO" />'. |
|
'<input type="button" onClick="pubrecdir(this.form);" value="'. |
|
&mt('Publish Directory and Sub Directories').'" /></td><td>'. |
|
'<input type="button" onClick="window.location='."'/~". |
|
$uname.$thisdisfn."/default.meta'".'" value="'. |
|
&mt('Edit Directory Catalog Information').'" /></td></tr></table></form>'); |
|
} |
|
|
sub resourceactions { |
sub resourceactions { |
my ($r,$uname,$udom,$thisdisfn) = @_; |
my ($r,$uname,$udom,$thisdisfn) = @_; |
$r->print(<<END); |
$r->print(<<END); |
Line 445 sub resourceactions {
|
Line 433 sub resourceactions {
|
</form> |
</form> |
<form name="printresource" action="/adm/printout" target="_parent" method="post"> |
<form name="printresource" action="/adm/printout" target="_parent" method="post"> |
<input type="hidden" name="postdata" value="" /> |
<input type="hidden" name="postdata" value="" /> |
<input type="hidden" name="curseed" value="" /> |
|
<input type="hidden" name="problemtype" value="" /> |
|
</form> |
</form> |
<form name="retrieveres" action="/adm/retrieve" target="_parent" method="post"> |
<form name="retrieveres" action="/adm/retrieve" target="_parent" method="post"> |
<input type="hidden" name="filename" value="" /> |
<input type="hidden" name="filename" value="" /> |
Line 508 sub putdirectory {
|
Line 494 sub putdirectory {
|
%Apache::lonpublisher::metadatakeys=(); |
%Apache::lonpublisher::metadatakeys=(); |
my $construct=$here; |
my $construct=$here; |
$construct=~s:^/priv/(\w+)$:/home/$1/public_html:; |
$construct=~s:^/priv/(\w+)$:/home/$1/public_html:; |
|
my $dirpath = $here; |
|
$dirpath=~s:^/priv/:/~:; |
&Apache::lonpublisher::metaeval(&Apache::lonnet::getfile( |
&Apache::lonpublisher::metaeval(&Apache::lonnet::getfile( |
$construct.'/'.$dirname.'/default.meta' |
$construct.'/'.$dirname.'/default.meta' |
)); |
)); |
Line 526 sub putdirectory {
|
Line 514 sub putdirectory {
|
'<option value="editcat">'.&mt('Edit catalog information').'</option>'. |
'<option value="editcat">'.&mt('Edit catalog information').'</option>'. |
'<option value="printdir">'.&mt('Print directory'). |
'<option value="printdir">'.&mt('Print directory'). |
'</select>'. |
'</select>'. |
'<input type="hidden" name="filename" value="'.$here.'/'.$dirname.'" />'. |
'<input type="hidden" name="filename" value="'.$dirpath.'/'.$dirname.'/" />'. |
'<input type="hidden" name="pubrec" value="" />'. |
'<input type="hidden" name="pubrec" value="" />'. |
'<input type="hidden" name="forcerepub" value="" />'. |
'<input type="hidden" name="forcerepub" value="" />'. |
'<input type="hidden" name="curseed" value="0" />'. |
|
'<input type="hidden" name="problemtype" value="0" />'. |
|
'<input type="hidden" name="postdata" value="" />'. |
'<input type="hidden" name="postdata" value="" />'. |
'</form>'; |
'</form>'; |
$$numdir ++; |
$$numdir ++; |
Line 644 sub create_pubselect {
|
Line 630 sub create_pubselect {
|
<form name="resselect_'.$$numres.'" action=""> |
<form name="resselect_'.$$numres.'" action=""> |
<select name="reschoice" onChange="SetResChoice(this.form)"> |
<select name="reschoice" onChange="SetResChoice(this.form)"> |
<option>'.&mt('Select action'). |
<option>'.&mt('Select action'). |
|
'<option value="copy"/>'.&mt('Copy'); |
|
if ($pubstatus eq 'obsolete' || $pubstatus eq 'unpublished') { |
|
$$pub_select .= |
'<option value="rename"/>'.&mt('Rename'). |
'<option value="rename"/>'.&mt('Rename'). |
'<option value="move"/>'.&mt('Move'). |
'<option value="move"/>'.&mt('Move'). |
'<option value="copy"/>'.&mt('Copy'). |
'<option value="delete"/>'.&mt('Delete'); |
'<option value="publish"/>'.$publish_button; |
|
if ($pubstatus eq 'obsolete' || $pubstatus eq 'unpublished') { |
|
$$pub_select .= ' |
|
<option value="delete"/>'.&mt('Delete'); |
|
} else { |
} else { |
$$pub_select .= ' |
$$pub_select .= ' |
<option value="obsolete"/>'.&mt('Mark obsolete'); |
<option value="obsolete"/>'.&mt('Mark obsolete'); |
} |
} |
$$pub_select .= ' |
|
<option value="print"/>'.&mt('Print'); |
|
|
|
# check for versions |
# check for versions |
my $versions = &check_for_versions($r,'/'.$filename,$udom,$uname); |
my $versions = &check_for_versions($r,'/'.$filename,$udom,$uname); |
if ($versions > 0) { |
if ($versions > 0) { |
Line 665 sub create_pubselect {
|
Line 647 sub create_pubselect {
|
<option value="retrieve"/>'.&mt('Retrieve old version'); |
<option value="retrieve"/>'.&mt('Retrieve old version'); |
} |
} |
$$pub_select .= ' |
$$pub_select .= ' |
</select> |
<option value="publish"/>'.$publish_button. |
|
'<option value="print"/>'.&mt('Print'). |
|
'</select> |
<input type="hidden" name="filename" value="/~'. |
<input type="hidden" name="filename" value="/~'. |
$uname.'/'.$thisdisfn.'/'.$filename.'"></form>'; |
$uname.$thisdisfn.'/'.$filename.'"></form>'; |
$$numres ++; |
$$numres ++; |
} |
} |
|
|