--- loncom/interface/londocs.pm 2010/12/08 02:08:21 1.445
+++ loncom/interface/londocs.pm 2011/01/30 01:21:29 1.452
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Documents
#
-# $Id: londocs.pm,v 1.445 2010/12/08 02:08:21 www Exp $
+# $Id: londocs.pm,v 1.452 2011/01/30 01:21:29 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -1150,6 +1150,7 @@ sub docs_change_log {
&Apache::loncommon::restore_course_settings('docs_log',
\%saveable_parameters);
if (!$env{'form.show'}) { $env{'form.show'}=10; }
+# FIXME: internationalization seems wrong here
my %lt=('hiddenresource' => 'Resources hidden',
'encrypturl' => 'URL hidden',
'randompick' => 'Randomly pick',
@@ -1238,6 +1239,7 @@ sub docs_change_log {
$r->print(&LONCAPA::map::qtescape((split(/\:/,$docslog{$id}{'logentry'}{'parameter_res'}))[0]).':
');
@@ -2663,6 +2668,10 @@ sub endContentScreen {
$r->print('');
}
+sub supplemental_base {
+ return 'supplemental&'.&escape(&mt('Supplemental '.&Apache::loncommon::course_type().' Documents'));
+}
+
sub handler {
my $r = shift;
&Apache::loncommon::content_type($r,'text/html');
@@ -2759,29 +2768,39 @@ sub handler {
&Apache::loncommon::restore_course_settings($stored_folderpath,
{'folderpath' => 'scalar'});
}
+
+# If we are not allowed to make changes, all we can see are supplemental docs
if (!$allowed) {
- unless($env{'form.folderpath'} =~ /^supplemental/) {
- $env{'form.folderpath'} = '';
+ $env{'form.pagepath'}='';
+ unless ($env{'form.folderpath'} =~ /^supplemental/) {
+ $env{'form.folderpath'} = &supplemental_base();
}
}
+# If we still not have a folderpath, see if we can resurrect at pagepath
if (!$env{'form.folderpath'} && $allowed) {
&Apache::loncommon::restore_course_settings($stored_folderpath,
{'pagepath' => 'scalar'});
}
- if ($env{'form.pagepath'}) {
- $env{'form.folderpath'}='';
- }
+# Make the zeroth entry in supplemental docs page paths, so we can get to top level
if ($env{'form.folderpath'} =~ /^supplemental_\d+/) {
- $env{'form.folderpath'} = 'supplemental&'.
- &escape(&mt('Supplemental '.$crstype.' Documents')).'&'.
+ $env{'form.folderpath'} = &supplemental_base()
+ .'&'.
$env{'form.folderpath'};
}
+# If after all of this, we still don't have any paths, make them
+ unless (($env{'form.pagepath'}) || ($env{'form.folderpath'})) {
+ if ($supplementalflag) {
+ $env{'form.folderpath'}=&supplemental_base();
+ } else {
+ $env{'form.folderpath'}='default';
+ }
+ }
+
# Store this
- if ($allowed) {
- &Apache::loncommon::store_course_settings($stored_folderpath,
+ &Apache::loncommon::store_course_settings($stored_folderpath,
{'pagepath' => 'scalar',
'folderpath' => 'scalar'});
- }
+
if ($env{'form.folderpath'}) {
my (@folderpath)=split('&',$env{'form.folderpath'});
$env{'form.foldername'}=&unescape(pop(@folderpath));
@@ -2846,29 +2865,20 @@ sub handler {
# Breadcrumbs
&Apache::lonhtmlcommon::clear_breadcrumbs();
- if ($allowed) {
+ unless ($showdoc) {
&Apache::lonhtmlcommon::add_breadcrumb({
- href=>"/adm/coursedocs",text=>"$crstype Editor"});
+ href=>"/adm/coursedocs",text=>"$crstype Contents"});
- $r->print(&Apache::loncommon::start_page("$crstype Editor", $script,
+ $r->print(&Apache::loncommon::start_page("$crstype Contents", $script,
{'force_register' => $showdoc,})
.&Apache::loncommon::help_open_menu('','',273,'RAT')
.&Apache::lonhtmlcommon::breadcrumbs(
'Editing the Table of Contents for your '.$crstype,
'Docs_Adding_Course_Doc')
);
- } elsif ($showdoc) {
+ } else {
$r->print(&Apache::loncommon::start_page("$crstype documents",undef,
{'force_register' => $showdoc,}));
- } else {
- my $folder=$env{'form.folder'};
- if ($folder eq '' || $folder eq 'supplemental') {
- $env{'form.folderpath'} = 'supplemental&'.
- &escape(&mt('Supplemental '.$crstype.' Documents'));
- }
- my ($breadcrumbtrail) = &breadcrumbs($allowed,$crstype);
- $r->print(&Apache::loncommon::start_page("Supplemental documents").
- $breadcrumbtrail);
}
my %allfiles = ();
@@ -2937,7 +2947,7 @@ sub handler {
'sipa' => 'Simple Course Page',
'sipr' => 'Simple Problem',
'drbx' => 'Drop Box',
- 'scuf' => 'Score Upload Form',
+ 'scuf' => 'External Scores (handgrade, upload, clicker)',
'bull' => 'Discussion Board',
'mypi' => 'My Personal Information Page',
'grpo' => 'Group Portfolio',
@@ -3189,11 +3199,14 @@ NROSTFORM
my $specialdocumentsform;
my @specialdocumentsforma;
+my $gradingform;
+my @gradingforma;
+my $communityform;
+my @communityforma;
my $newfolderform;
my $newfolderb;
- unless ($env{'form.pagepath'}) {
- my $path = &HTML::Entities::encode($env{'form.folderpath'},'<>&"');
+ my $path = &HTML::Entities::encode($env{'form.folderpath'},'<>&"');
my $newpageform=(<
@@ -3240,35 +3253,35 @@ NGFFORM
@specialdocumentsforma=(
{'
'=>$newpageform},
{'
'=>$newsylform},
- {'
'=>$newgroupfileform},
- );
+ {'
'=>$newnavform},
+ {'
'=>$newsmppageform},
+ );
+ $specialdocumentsform = &create_form_ul(&create_list_elements(@specialdocumentsforma));
+
my @importdoc = (
{'
'=>$extresourcesform},
{'
'=>$imspform},);
$fileuploadform = &create_form_ul(&create_list_elements(@importdoc)) . '
' . $fileuploadform;
- push @specialdocumentsforma, ({'
'=>$newnavform},
- {'
'=>$newsmppageform},
- {'
'=>$newsmpproblemform},
- {'
'=>$newdropboxform},
- {'
'=>$newexuploadform},
- {'
'=>$newbulform},
- {'
'=>$newaboutmeform},
- {'
'=>$newaboutsomeoneform},
- {'
'=>$newrosterform},);
+ @gradingforma=(
+ {'
'=>$newsmpproblemform},
+ {'
'=>$newdropboxform},
+ {'
'=>$newexuploadform},
+
+ );
+ $gradingform = &create_form_ul(&create_list_elements(@gradingforma));
+
+ @communityforma=(
+ {'
'=>$newbulform},
+ {'
'=>$newaboutmeform},
+ {'
'=>$newaboutsomeoneform},
+ {'
'=>$newrosterform},
+ {'
'=>$newgroupfileform},
+ );
+ $communityform = &create_form_ul(&create_list_elements(@communityforma));
- $specialdocumentsform = &create_form_ul(&create_list_elements(@specialdocumentsforma));
- }
-if($env{'form.pagepath'}) {
-
- @specialdocumentsforma=(
- {'
'=>$newsmpproblemform},
- {'
'=>$newexuploadform}
- );
- $specialdocumentsform= &create_form_ul(&create_list_elements(@specialdocumentsforma));
-}
my @tools = (
# {'
'=>$extresourcesform},
@@ -3279,11 +3292,13 @@ my @tools = (
my %orderhash = (
'aa' => ['Import Documents',$fileuploadform],
'bb' => ['Published Resources',$simpleeditdefaultform],
- 'cc' => ['Special Documents',$specialdocumentsform],
- 'dd' => ['Tools', &create_form_ul(&create_list_elements(@tools)).&generate_admin_options(\%help,\%env)],
+ 'cc' => ['Grading Resources',$gradingform],
+ 'ff' => ['Tools', &create_form_ul(&create_list_elements(@tools)).&generate_admin_options(\%help,\%env)],
);
-unless($env{'form.pagepath'}) {
+unless ($env{'form.pagepath'}) {
$orderhash{'00'} = ['Newfolder',$newfolderform];
+ $orderhash{'dd'} = ['Community Resources',$communityform];
+ $orderhash{'ee'} = ['Special Documents',$specialdocumentsform];
}
$hadchanges=0;
@@ -3310,8 +3325,7 @@ unless($env{'form.pagepath'}) {
}
if ($folder =~ /^supplemental$/ &&
(($env{'form.folderpath'} =~ /^default\&/) || ($env{'form.folderpath'} eq ''))) {
- $env{'form.folderpath'} = 'supplemental&'.
- &escape(&mt('Supplemental '.$crstype.' Documents'));
+ $env{'form.folderpath'} = &supplemental_base();
} elsif ($allowed) {
$env{'form.folderpath'} = $savefolderpath;
}
@@ -3565,7 +3579,7 @@ sub editing_js {
t_mnf => 'New Folder',
p_mnp => 'Name of New Page',
t_mnp => 'New Page',
- p_mxu => 'Title for the Uploaded Score',
+ p_mxu => 'Title for the External Score',
p_msp => 'Name of Simple Course Page',
p_msb => 'Title for the Problem',
p_mdb => 'Title for the Drop Box',
@@ -3594,7 +3608,7 @@ sub editing_js {
}
}
my $toplevelmain = 'default&Main%20'.$crstype.'%20Documents';
- my $toplevelsupp = 'supplemental&Supplemental%20'.$crstype.'%20Documents';
+ my $toplevelsupp = &supplemental_base();
return <