Diff for /loncom/publisher/lonunauthorized.pm between versions 1.11 and 1.17.2.1

version 1.11, 2011/11/13 01:07:09 version 1.17.2.1, 2018/11/26 13:07:41
Line 32  use strict; Line 32  use strict;
 use Apache::Constants qw(:common);  use Apache::Constants qw(:common);
 use Apache::loncommon;  use Apache::loncommon;
 use Apache::lonnet;  use Apache::lonnet;
 use Apache::loncacc;  
 use Apache::lonlocal;  use Apache::lonlocal;
 use LONCAPA();  use LONCAPA();
 use HTML::Entities();  use HTML::Entities();
Line 49  sub handler { Line 48  sub handler {
     my ($ownername,$ownerdomain,$ownerhome);      my ($ownername,$ownerdomain,$ownerhome);
     if ($env{'request.editurl'} ne '') {      if ($env{'request.editurl'} ne '') {
         ($ownername,$ownerdomain,$ownerhome) =           ($ownername,$ownerdomain,$ownerhome) = 
             &Apache::loncacc::constructaccess($env{'request.editurl'});              &Apache::lonnet::constructaccess($env{'request.editurl'});
     }      }
   
     # Breadcrumbs      # Breadcrumbs
     &Apache::lonhtmlcommon::clear_breadcrumbs();      &Apache::lonhtmlcommon::clear_breadcrumbs();
     if ($env{'request.role'} =~ /^(au|ca|aa)/) {       if ($env{'request.role'} =~ /^(au|ca|aa)/) { 
         &Apache::lonhtmlcommon::add_breadcrumb({          &Apache::lonhtmlcommon::add_breadcrumb({
             'text' => 'Construction Space',              'text' => 'Authoring Space',
             'href' => &Apache::loncommon::authorspace(),              'href' => &Apache::loncommon::authorspace($env{'request.editurl'}),
         });          });
     } elsif (($env{'request.course.id'}) &&       } elsif (($env{'request.course.id'}) && 
              (&Apache::lonnet::allowed('mdc',$env{'request.course.id'}))) {               (&Apache::lonnet::allowed('mdc',$env{'request.course.id'}))) {
Line 68  sub handler { Line 67  sub handler {
     }      }
   
 # print header  # print header
     $r->print(&Apache::loncommon::start_page("Failed Access to Construction Space",      $r->print(&Apache::loncommon::start_page("Failed Access to Authoring Space",
      undef,       undef,
      {'domain' => $ownerdomain,}).       {'domain' => $ownerdomain,}).
                                              &Apache::lonhtmlcommon::breadcrumbs());                                               &Apache::lonhtmlcommon::breadcrumbs());
Line 86  sub handler { Line 85  sub handler {
                 my $switchlink = '/adm/switchserver?otherserver='.$ownerhome.                  my $switchlink = '/adm/switchserver?otherserver='.$ownerhome.
                                  '&origurl='.&HTML::Entities::encode($env{'request.editurl'},'<>&"');                                   '&origurl='.&HTML::Entities::encode($env{'request.editurl'},'<>&"');
         $r->print('<p class="LC_warning">'.          $r->print('<p class="LC_warning">'.
                           &mt('The construction space for this resource is located on a different server: [_1]',                            &mt('The Authoring Space for this resource is located on a different server: [_1]',
                           '<b><tt>'.&Apache::lonnet::hostname($ownerhome).'</b></tt>').                            '<b><tt>'.&Apache::lonnet::hostname($ownerhome).'</b></tt>').
                           '</p>'.                            '</p>'.
                           '<p class="LC_error"><a href="'.$switchlink.'">'.                            '<p class="LC_error"><a href="'.$switchlink.'">'.
Line 103  sub handler { Line 102  sub handler {
         if ($ENV{'REDIRECT_URL'} =~ m{^/adm/([^/]+)}) {          if ($ENV{'REDIRECT_URL'} =~ m{^/adm/([^/]+)}) {
             my $action = $1;                 my $action = $1;   
             my ($option,$filename,$filename1,$filename2,$decompress,              my ($option,$filename,$filename1,$filename2,$decompress,
                 $qualifiedfilename);                  $qualifiedfilename,$warning);
               my %deniedactions = &get_denied_action_text();
             if ($ENV{'REDIRECT_QUERY_STRING'} ne '') {              if ($ENV{'REDIRECT_QUERY_STRING'} ne '') {
                 foreach my $pair (split(/&/,$ENV{'REDIRECT_QUERY_STRING'})) {                  foreach my $pair (split(/&/,$ENV{'REDIRECT_QUERY_STRING'})) {
                     my ($name,$value) = split(/=/,$pair);                      my ($name,$value) = split(/=/,$pair);
Line 122  sub handler { Line 122  sub handler {
                         $option = 'decompress';                          $option = 'decompress';
                     } elsif ($name eq 'qualifiedfilename') {                      } elsif ($name eq 'qualifiedfilename') {
                         $qualifiedfilename = $value;                          $qualifiedfilename = $value;
                     } elsif ($name = 'versionone') {                      } elsif ($name eq 'versionone') {
                         if ($value eq 'priv') {                          if ($value eq 'priv') {
                             $option = 'cstr';                              $option = 'cstr';
                         }                          }
Line 131  sub handler { Line 131  sub handler {
                             $option = 'cstr';                              $option = 'cstr';
                         }                          }
                     } elsif ($name eq 'filetwo') {                      } elsif ($name eq 'filetwo') {
                         $option = $value;                           $option = $value;
                     }                      }
                 }                  }
                 if (($action eq 'upload') || ($action eq 'testbank')) {                  if (($action eq 'upload') || ($action eq 'testbank')) {
                     if (($filename1 ne '') && ($filename ne '')) {                      if (($filename1 ne '') && ($filename2 ne '')) {
                         $filename = $filename1.$filename2;                          $filename = $filename1.$filename2;
                     }                      }
                 } elsif ($action eq 'cfile') {                  } elsif ($action eq 'cfile') {
Line 145  sub handler { Line 145  sub handler {
                         $filename = $qualifiedfilename;                          $filename = $qualifiedfilename;
                     }                      }
                 }                  }
                 my %deniedactions = &get_denied_action_text();  
                 my $warning;  
                 if ($option eq 'decompress') {                  if ($option eq 'decompress') {
                     $warning = $deniedactions{$option};                      $warning = $deniedactions{$option};
                 } else {                  } else {
Line 155  sub handler { Line 153  sub handler {
                 if ($warning) {                  if ($warning) {
                     if (($action eq 'diff') && ($option ne 'cstr')) {                      if (($action eq 'diff') && ($option ne 'cstr')) {
                         $r->print('<p class="LC_error">'.                          $r->print('<p class="LC_error">'.
                                   $deniedactions{$action}.'</p><p class="LC_warning">'                                    $deniedactions{$action}.'</p><p class="LC_warning">'.
                                   &mt('You do not have privileges to view the published resource').' '.                                    &mt('You do not have privileges to view the published resource').' '.
                                       '<span class="LC_filename">'.$filename.'</span>'.                                        '<span class="LC_filename">'.$filename.'</span>'.
                                   '</p>');                                    '</p>');
Line 174  sub handler { Line 172  sub handler {
                               &mt('You are not permitted to take this action.').                                &mt('You are not permitted to take this action.').
                               '</p>');                                '</p>');
                 }                  }
               } elsif (($action eq 'upload') || ($action eq 'testbank')) {
                   $filename1 = $env{'form.filename1'};
                   $filename2 = $env{'form.filename2'};
                   if (($filename1 ne '') && ($filename2 ne '')) {
                       $filename = $filename1.$filename2;
                   }
                   $warning = $deniedactions{$action};
                   if ($warning) {
                       if ($filename =~ m{^/priv/.+\.\d+\.[^.]+$}) {
                           $r->print('<p class="LC_error">'.
                                     &mt('There is a problem with the filename').' '.
                                     '<span class="LC_filename">'.$filename.'</span></p>'.
                                     '<p class="LC_warning">'.
                                     &mt('The suggested filename may not include the pattern ".number.extension" as LON-CAPA reserves that pattern for its internal versioning mechanism.').
                                     '</p>');
                       } else {
                           $r->print('<p class="LC_error">'.
                                     $deniedactions{$action}.'</p><p class="LC_warning">'.
                                     &mt('You do not have authoring privileges for this resource').' '.
                                         '<span class="LC_filename">'.$filename.'</span>'.
                                     '</p>');
                       }
                   } else {
                       $r->print('<p class="LC_error">'.
                                 &mt('You are not permitted to take this action.').
                                 '</p>');
                   }
             }              }
         } elsif ($r->uri =~ m{priv/.+\.\d+\.[^.]+$}) {          } elsif ($r->uri =~ m{priv/.+\.\d+\.[^.]+$}) {
             $r->print('<p class="LC_error">'.              $r->print('<p class="LC_error">'.
                       &mt('There is a problem with the filename').' '.                        &mt('There is a problem with the filename').' '.
                       '<span class="LC_filename">'.$r->uri.'</span></p>'.                        '<span class="LC_filename">'.$r->uri.'</span></p>'.
                       '<p class="LC_warning">'.                        '<p class="LC_warning">'.
                       &mt('You may be attempting to edit a versioned file (files in construction space may not include a version number before the extension).').                        &mt('You may be attempting to edit a versioned file (files in Authoring Space may not include a version number before the extension).').
                       '</p>');                        '</p>');
         } else {          } else {
             $r->print('<p class="LC_error">'.              $r->print('<p class="LC_error">'.
Line 192  sub handler { Line 217  sub handler {
                   &mt('There is a problem with the filename').' '.                    &mt('There is a problem with the filename').' '.
                   '<span class="LC_filename">'.$env{'request.editurl'}.'</span></p>'.                    '<span class="LC_filename">'.$env{'request.editurl'}.'</span></p>'.
                   '<p class="LC_warning">'.                    '<p class="LC_warning">'.
                   &mt('You may be attempting to edit a versioned file (files in construction space may not include a version number before the extension).').                    &mt('You may be attempting to edit a versioned file (files in Authoring Space may not include a version number before the extension).').
                   '</p>');                    '</p>');
     } else {      } else {
         $r->print('<p class="LC_error">'          $r->print('<p class="LC_error">'

Removed from v.1.11  
changed lines
  Added in v.1.17.2.1


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>