--- loncom/interface/londocs.pm 2005/02/02 22:15:06 1.166
+++ loncom/interface/londocs.pm 2005/11/17 19:37:30 1.213
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Documents
#
-# $Id: londocs.pm,v 1.166 2005/02/02 22:15:06 albertel Exp $
+# $Id: londocs.pm,v 1.213 2005/11/17 19:37:30 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -86,17 +86,17 @@ sub authorhosts {
my %outhash=();
my $home=0;
my $other=0;
- foreach (keys %ENV) {
+ foreach (keys %env) {
if ($_=~/^user\.role\.(au|ca)\.(.+)$/) {
my $role=$1;
my $realm=$2;
- my ($start,$end)=split(/\./,$ENV{$_});
+ my ($start,$end)=split(/\./,$env{$_});
if (($start) && ($start>time)) { next; }
if (($end) && (time>$end)) { next; }
my $ca; my $cd;
if ($1 eq 'au') {
- $ca=$ENV{'user.name'};
- $cd=$ENV{'user.domain'};
+ $ca=$env{'user.name'};
+ $cd=$env{'user.domain'};
} else {
($cd,$ca)=($realm=~/^\/(\w+)\/(\w+)$/);
}
@@ -141,31 +141,35 @@ sub clean {
sub dumpcourse {
my $r=shift;
- $r->print('
'."\n\n");
}
# ================================================================ Main Handler
@@ -1781,14 +2103,14 @@ sub handler {
return OK if $r->header_only;
# --------------------------------------------- Initialize help topics for this
- foreach ('Adding_Course_Doc','Main_Course_Documents',
- 'Adding_External_Resource','Navigate_Content',
- 'Adding_Folders','Docs_Overview', 'Load_Map',
- 'Supplemental','Score_Upload_Form','Adding_Pages',
- 'Importing_LON-CAPA_Resource','Uploading_From_Harddrive',
- 'Check_Resource_Versions','Verify_Content') {
- $help{$_}=&Apache::loncommon::help_open_topic('Docs_'.$_);
- }
+ foreach ('Adding_Course_Doc','Main_Course_Documents',
+ 'Adding_External_Resource','Navigate_Content',
+ 'Adding_Folders','Docs_Overview', 'Load_Map',
+ 'Supplemental','Score_Upload_Form','Adding_Pages',
+ 'Importing_LON-CAPA_Resource','Uploading_From_Harddrive',
+ 'Check_Resource_Versions','Verify_Content') {
+ $help{$_}=&Apache::loncommon::help_open_topic('Docs_'.$_);
+ }
# Composite help files
$help{'Syllabus'} = &Apache::loncommon::help_open_topic(
'Docs_About_Syllabus,Docs_Editing_Templated_Pages');
@@ -1802,54 +2124,56 @@ sub handler {
'Docs_About_My_Personal_Info,Docs_Editing_Templated_Pages');
$help{'Caching'} = &Apache::loncommon::help_open_topic('Caching');
- if ($ENV{'form.verify'}) {
+# does this user have privileges to modify docs
+ my $allowed=&Apache::lonnet::allowed('mdc',$env{'request.course.id'});
+
+ if ($allowed && $env{'form.verify'}) {
&verifycontent($r);
- } elsif ($ENV{'form.versions'}) {
+ } elsif ($allowed && $env{'form.listsymbs'}) {
+ &list_symbs($r);
+ } elsif ($allowed && $env{'form.versions'}) {
&checkversions($r);
- } elsif ($ENV{'form.dumpcourse'}) {
+ } elsif ($allowed && $env{'form.dumpcourse'}) {
&dumpcourse($r);
- } elsif ($ENV{'form.exportcourse'}) {
+ } elsif ($allowed && $env{'form.exportcourse'}) {
&exportcourse($r);
} else {
# is this a standard course?
- my $standard=($ENV{'request.course.uri'}=~/^\/uploaded\//);
+ my $standard=($env{'request.course.uri'}=~/^\/uploaded\//);
my $forcestandard = 0;
my $forcesupplement;
my $script='';
- my $allowed;
my $events='';
my $showdoc=0;
my $containertag;
my $uploadtag;
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},
- ['folderpath','pagepath','pagesymb']);
- if ($ENV{'form.folderpath'}) {
- my (@folderpath)=split('&',$ENV{'form.folderpath'});
- $ENV{'form.foldername'}=&Apache::lonnet::unescape(pop(@folderpath));
- $ENV{'form.folder'}=pop(@folderpath);
- }
- if ($ENV{'form.pagepath'}) {
- my (@pagepath)=split('&',$ENV{'form.pagepath'});
- $ENV{'form.pagename'}=&Apache::lonnet::unescape(pop(@pagepath));
- $ENV{'form.folder'}=pop(@pagepath);
+ ['folderpath','pagepath','pagesymb','markedcopy_url','markedcopy_title']);
+ if ($env{'form.folderpath'}) {
+ my (@folderpath)=split('&',$env{'form.folderpath'});
+ $env{'form.foldername'}=&Apache::lonnet::unescape(pop(@folderpath));
+ $env{'form.folder'}=pop(@folderpath);
+ }
+ if ($env{'form.pagepath'}) {
+ my (@pagepath)=split('&',$env{'form.pagepath'});
+ $env{'form.pagename'}=&Apache::lonnet::unescape(pop(@pagepath));
+ $env{'form.folder'}=pop(@pagepath);
$containertag = '