Diff for /loncom/publisher/lonretrieve.pm between versions 1.32 and 1.34.2.2

version 1.32, 2006/09/19 21:47:29 version 1.34.2.2, 2008/12/21 04:38:43
Line 38  use Apache::loncacc; Line 38  use Apache::loncacc;
 use Apache::loncommon();  use Apache::loncommon();
 use Apache::lonlocal;  use Apache::lonlocal;
 use Apache::lonnet;  use Apache::lonnet;
   use LONCAPA();
   
 # ------------------------------------ Interface for selecting previous version  # ------------------------------------ Interface for selecting previous version
 sub phaseone {  sub phaseone {
Line 125  sub phaseone { Line 126  sub phaseone {
  }   }
  $r->print(&Apache::loncommon::end_data_table_row().   $r->print(&Apache::loncommon::end_data_table_row().
   &Apache::loncommon::end_data_table().    &Apache::loncommon::end_data_table().
   '<p>'.    '<p>'.'<span class="LC_warning">'.
   '<span class="LC_error">'.    &mt('Retrieval of an old version will overwrite the file currently in construction space.').'</span></p>');
   &mt('Retrieval of an old version will overwrite the file currently in construction space').'</span><p>'.   if (!$is_meta) {
   '<input type="submit" value="'.&mt('Retrieve version').'" /></form>');      $r->print('<p>'.'<span class="LC_warning">'.
         &mt('This will only retrieve the resource. If you want to retrieve the metadata you will need to do that separately.').
         '</span></p>');
    }
    $r->print('<input type="submit" value="'.&mt('Retrieve version').'" /></form>');
     } else {      } else {
  $r->print('<h3>'.&mt('No previous versions published.').'</h3>');   $r->print('<p class="LC_warning">'.&mt('No previous versions published.').'</p>');
     }      }
     $r->print('<p><a href="/priv/'.$uname.$fn.'">'.&mt('Back to').' '.$fn.      $r->print('<p><a href="/priv/'.$uname.$fn.'">'.&mt('Back to [_1]','<span class="LC_filename">'.$fn.'</span>')
       '</a></p>');         .'</a></p>'); 
 }  }
   
 # ---------------------------------- Interface for presenting specified version  # ---------------------------------- Interface for presenting specified version
Line 161  sub phasetwo { Line 166  sub phasetwo {
  if ($is_meta) { $logname =~ s/\.meta$//; }   if ($is_meta) { $logname =~ s/\.meta$//; }
  $logname = $ctarget.'.log';   $logname = $ctarget.'.log';
         unless ($logfile=Apache::File->new('>>'.$logname)) {          unless ($logfile=Apache::File->new('>>'.$logname)) {
   $r->print(    $r->print('<span class="LC_error">'
          '<font color=red>'.&mt('No write permission to user directory, FAIL').'</font>');                      .&mt('No write permission to user directory, FAIL')
                       .'</span>');
         }          }
         print $logfile           print $logfile 
 "\n\n================= Retrieve ".localtime()." ================\n".  "\n\n================= Retrieve ".localtime()." ================\n".
 "Version: $version\nSource: $csource\nTarget: $ctarget\n";  "Version: $version\nSource: $csource\nTarget: $ctarget\n";
         $r->print('<p>'.&mt('Copying file').': ');          $r->print('<p>'.&mt('Copying file').': ');
  if (copy($csource,$ctarget)) {   if (copy($csource,$ctarget)) {
     $r->print('ok<p>');      $r->print('<span class="LC_success">'
                         .&mt('ok')
                         .'</span>');
             print $logfile "Copied sucessfully.\n\n";              print $logfile "Copied sucessfully.\n\n";
         } else {          } else {
             my $error=$!;              my $error=$!;
     $r->print('fail, '.$error.'<p>');      $r->print('<span class="LC_error">'
                         .&mt('Copy failed: [_1]',$error)
                         .'</span>');
             print $logfile "Copy failed: $error\n\n";              print $logfile "Copy failed: $error\n\n";
         }          }
         $r->print('<font size=+2><a href="/priv/'.$uname.$fn.          $r->print('</p>'
                   '">'.&mt('Back to').' '.$fn.'</a></font>');                     .'<p><a href="/priv/'.$uname.$fn.'">'
                     .&mt('Back to [_1]',$fn)
                     .'</a></p>'); 
     } else {      } else {
        $r->print('<span class="LC_warning">'.&mt('Please pick a version to retrieve').'</span><p>');         $r->print('<p class="LC_info">'.&mt('Please pick a version to retrieve:').'</p>');
        &phaseone($r,$fn,$uname,$udom);         &phaseone($r,$fn,$uname,$udom);
     }      }
 }  }
Line 211  sub handler { Line 223  sub handler {
   
   if ($env{'form.filename'}) {    if ($env{'form.filename'}) {
       $fn=$env{'form.filename'};        $fn=$env{'form.filename'};
       $fn=~s/^http\:\/\/[^\/]+//;        $fn=~s/^https?\:\/\/[^\/]+//;
   } else {    } else {
      $r->log_reason($env{'user.name'}.' at '.$env{'user.domain'}.       $r->log_reason($env{'user.name'}.' at '.$env{'user.domain'}.
          ' unspecified filename for retrieval', $r->filename);            ' unspecified filename for retrieval', $r->filename); 
Line 238  sub handler { Line 250  sub handler {
      return HTTP_NOT_ACCEPTABLE;       return HTTP_NOT_ACCEPTABLE;
   }    }
   
   $fn=~s/\/\~(\w+)//;    $fn=~s{/~($LONCAPA::username_re)}{};
   
   &Apache::loncommon::content_type($r,'text/html');    &Apache::loncommon::content_type($r,'text/html');
   $r->send_http_header;    $r->send_http_header;
Line 246  sub handler { Line 258  sub handler {
   $r->print(&Apache::loncommon::start_page('Retrieve Published Resources'));    $r->print(&Apache::loncommon::start_page('Retrieve Published Resources'));
   
       
   $r->print('<h1>'.&mt('Retrieve previous versions of').' <tt>'.$fn.'</tt></h1>');    $r->print('<h1>'
               .&mt('Retrieve previous versions of [_1]'
                       ,'<span class="LC_filename">'.$fn.'</span>')
               .'</h1>');
       
   if (($uname ne $env{'user.name'}) || ($udom ne $env{'user.domain'})) {    if (($uname ne $env{'user.name'}) || ($udom ne $env{'user.domain'})) {
           $r->print('<h3><span class="LC_diff_coauthor">'.&mt('Co-Author').': '.$uname.            $r->print('<h3><span class="LC_diff_coauthor">'.&mt('Co-Author').': '.$uname.

Removed from v.1.32  
changed lines
  Added in v.1.34.2.2


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