':'').($textinter?'':'');
# =============================================================================
# ============================ This is for URLs that actually can be registered
- if (($ENV{'request.noversionuri'}!~/^\/(res\/)*adm\//) || ($forcereg)) {
+ if (($env{'request.noversionuri'}!~m|^/(res/)*adm/|) || ($forcereg)) {
# -- This applies to homework problems for users with grading privileges
- my $crs='/'.$ENV{'request.course.id'};
- if ($ENV{'request.course.sec'}) {
- $crs.='_'.$ENV{'request.course.sec'};
+ my $crs='/'.$env{'request.course.id'};
+ if ($env{'request.course.sec'}) {
+ $crs.='_'.$env{'request.course.sec'};
}
$crs=~s/\_/\//g;
my $hwkadd='';
- if ($ENV{'request.filename'}=~/\.(problem|exam|quiz|assess|survey|form)$/) {
- if (&Apache::lonnet::allowed('vgr',$crs)) {
- $hwkadd.=&switch('','',7,1,'subm.gif','view sub-[_1]','missions[_1]',
- "gocmd('/adm/grades','submission')",
- 'View user submissions for this assessment resource');
- }
+ if ($env{'request.symb'} ne '' &&
+ $env{'request.filename'}=~/\.(problem|exam|quiz|assess|survey|form|task)$/) {
if (&Apache::lonnet::allowed('mgr',$crs)) {
$hwkadd.=&switch('','',7,2,'pgrd.gif','problem[_1]','grades[_3]',
"gocmd('/adm/grades','gradingmenu')",
'Modify user grades for this assessment resource');
+ } elsif (&Apache::lonnet::allowed('vgr',$crs)) {
+ $hwkadd.=&switch('','',7,2,'subm.gif','view sub-[_1]','missions[_1]',
+ "gocmd('/adm/grades','submission')",
+ 'View user submissions for this assessment resource');
}
}
- if (&Apache::lonnet::allowed('opa',$crs)) {
+ if ($env{'request.symb'} ne '' &&
+ &Apache::lonnet::allowed('opa',$crs)) {
$hwkadd.=&switch('','',7,3,'pparm.gif','problem[_2]','parms[_2]',
"gocmd('/adm/parmset','set')",
- 'Modify deadlines, etc, for this resource');
+ 'Modify parameter settings for this resource');
}
# -- End Homework
###
@@ -341,20 +422,25 @@ END
### resource
###
my $editbutton = '';
- if ($ENV{'user.author'}) {
- if ($ENV{'request.role'}=~/^(ca|au)/) {
+ if ($env{'user.author'}) {
+ if ($env{'request.role'}=~/^(aa|ca|au)/) {
# Set defaults for authors
my ($top,$bottom) = ('con-','struct');
- my $action = "go('/priv/".$ENV{'user.name'}."');";
- my $cadom = $ENV{'request.role.domain'};
- my $caname = $ENV{'user.name'};
- my $desc = "Enter my resource construction space";
+ my $action = "go('/priv/".$env{'user.name'}."');";
+ my $cadom = $env{'request.role.domain'};
+ my $caname = $env{'user.name'};
+ my $desc = "Enter my construction space";
# Set defaults for co-authors
- if ($ENV{'request.role'} =~ /^ca/) {
- ($cadom,$caname)=($ENV{'request.role'}=~/(\w+)\/(\w+)$/);
+ if ($env{'request.role'} =~ /^ca/) {
+ ($cadom,$caname)=($env{'request.role'}=~/($match_domain)\/($match_username)$/);
($top,$bottom) = ('co con-','struct');
$action = "go('/priv/".$caname."');";
$desc = "Enter construction space as co-author";
+ } elsif ($env{'request.role'} =~ /^aa/) {
+ ($cadom,$caname)=($env{'request.role'}=~/($match_domain)\/($match_username)$/);
+ ($top,$bottom) = ('co con-','struct');
+ $action = "go('/priv/".$caname."');";
+ $desc = "Enter construction space as assistant co-author";
}
# Check that we are on the correct machine
my $home = &Apache::lonnet::homeserver($caname,$cadom);
@@ -371,9 +457,9 @@ END
my $cfile='';
my $cfuname='';
my $cfudom='';
- if ($ENV{'request.filename'}) {
- my $file=&Apache::lonnet::declutter($ENV{'request.filename'});
- $file=~s/^(\w+)\/(\w+)/\/priv\/$2/;
+ if ($env{'request.filename'}) {
+ my $file=&Apache::lonnet::declutter($env{'request.filename'});
+ $file=~s/^($match_domain)\/($match_username)/\/priv\/$2/;
# Check that the user has permission to edit this resource
($cfuname,$cfudom)=&Apache::loncacc::constructaccess($file,$1);
if (defined($cfudom)) {
@@ -389,7 +475,7 @@ END
# Finally, turn the button on or off
if ($cfile && !$const_space) {
$editbutton=&switch
- ('','',6,1,'cstr.gif','edit[_1]','resource[_2]',
+ ('','',6,1,'pcstr.gif','edit[_1]','resource[_2]',
"go('".$cfile."');","Edit this resource");
} elsif ($editbutton eq '') {
$editbutton=&clear(6,1);
@@ -400,85 +486,153 @@ END
# Prepare the rest of the buttons
my $menuitems;
if ($const_space) {
+ my ($uname,$thisdisfn) =
+ ($env{'request.filename'}=~m|^/home/([^/]+)/public_html/(.*)|);
my $currdir = '/priv/'.$uname.'/'.$thisdisfn;
- $currdir =~ s#[^/]+$##;
- $menuitems=(< 0){
+ $menuitems.="anot2.gif";
+}else{
+ $menuitems.="anot.gif";
+}
+$menuitems.="&anno-[_1]&tations[_1]&annotate()&";
+$menuitems.="Make notes and annotations about this resource&&1\n";
+
+ unless ($env{'request.noversionuri'}=~/\/(bulletinboard|smppg|navmaps|syllabus|aboutme)(\?|$)/) {
+ if (!$env{'request.enc'}) {
+ $menuitems.=(<