Diff for /loncom/interface/portfolio.pm between versions 1.76 and 1.77

version 1.76, 2005/02/20 20:39:30 version 1.77, 2005/02/21 02:20:12
Line 83  sub display_directory { Line 83  sub display_directory {
     my ($r,$current_path,$is_empty,$dir_list)=@_;      my ($r,$current_path,$is_empty,$dir_list)=@_;
     my $iconpath= $r->dir_config('lonIconsURL') . "/";      my $iconpath= $r->dir_config('lonIconsURL') . "/";
     my $display_out;      my $display_out;
       my $select_mode;
       my $checked_files;
     my %locked_files = &Apache::lonnet::get_marked_as_readonly_hash ($ENV{'user.domain'},$ENV{'user.name'});      my %locked_files = &Apache::lonnet::get_marked_as_readonly_hash ($ENV{'user.domain'},$ENV{'user.name'});
       if ($ENV{"form.mode"} eq 'selectfile'){
    &select_files($r);
    $checked_files =&Apache::lonnet::files_in_path($ENV{'user.name'},$ENV{'form.currentpath'});
    $select_mode = 'true';
       } 
     if ($is_empty && ($current_path ne '/')) {      if ($is_empty && ($current_path ne '/')) {
         $display_out = '<form method="post" action="/adm/portfolio">'.          $display_out = '<form method="post" action="/adm/portfolio">'.
         '<input type="hidden" name="action" value="deletedir" />'.          '<input type="hidden" name="action" value="deletedir" />'.
Line 95  sub display_directory { Line 102  sub display_directory {
         $r->print($display_out);          $r->print($display_out);
  return;   return;
     }      }
     $r->print('<table border="0" cellspacing="2" cellpadding="2">'.      if ($select_mode eq 'true') {
           $r->print('<table border="0" cellspacing="2" cellpadding="2">'.
               '<tr><th>Select</th><th>&nbsp;</th><th>Name</th><th>Size</th><th>Last Modified</th></tr>');
           $r->print('<form method="post" name="checkselect" action="/adm/portfolio">');
       } else {
           $r->print('<table border="0" cellspacing="2" cellpadding="2">'.
             '<tr><th colspan="2">Actions</th><th>&nbsp;</th><th>Name</th><th>Size</th><th>Last Modified</th></tr>');              '<tr><th colspan="2">Actions</th><th>&nbsp;</th><th>Name</th><th>Size</th><th>Last Modified</th></tr>');
     my $href_location="/uploaded/$ENV{'user.domain'}/$ENV{'user.name'}/portfolio$current_path";          $r->print('<form method="post" action="/adm/portfolio">');
     $r->print('<form method="post" action="/adm/portfolio">');  
     foreach my $line (sort   
       {   
   my ($afile)=split('&',$a,2);  
   my ($bfile)=split('&',$b,2);  
   return (lc($afile) cmp lc($bfile));  
       } (@$dir_list)) {  
     #$strip holds directory/file name  
     #$dom   
     my ($filename,$dom,undef,$testdir,undef,undef,undef,undef,$size,undef,$mtime,undef,undef,undef,$obs,undef)=split(/\&/,$line,16);   
     if (($filename ne '.') && ($filename ne '..')) {  
             if ($dirptr&$testdir) {  
                 $r->print('<tr bgcolor="#FFAA99"><td colspan="2"><img src="'.$iconpath.'folder_closed.gif"></td>');  
                 $r->print('<td>Go to ...</td>');  
                 $r->print('<td>'.&make_anchor($filename.'/',$current_path.$filename.'/',$ENV{'form.mode'},$ENV{"form.fieldname"}).'</td>');   
                 $r->print('</tr>');   
             } else {  
                 $r->print('<tr bgcolor="#CCCCFF">');  
                 if (exists $locked_files{$current_path.$filename}){  
                     $r->print('<td colspan="2">Locked</td>');  
                 } else {  
                     $r->print('<td><input type="checkbox" name="selectfile" value="'.$filename.'" />  
                         <a href="/adm/portfolio?rename='.$filename.'&amp;currentpath='.$current_path.'">Rename</a></td>  
                         <td><a href="/adm/portfolio'.$current_path.$filename.'.meta">Meta</a>  
                         </td>');  
                 }  
                 $r->print('<td><img src="'.$iconpath.'unknown.gif"></td>');  
                 $r->print('<td><a href="'.$href_location.$filename.'">'.  
     $filename.'</a></td>');   
                 $r->print('<td>'.$size.'</td>');  
                 $r->print('<td>'.&Apache::lonlocal::locallocaltime($mtime).'</td>');  
                 $r->print('</tr>');   
             }  
         }  
     }      }
 #   <tr bgcolor="#FFAA99"> pink bg   
 #   <tr bgcolor="#CCCCFF"> blue bg              
 #   $r->print(&display_directory($current_path, $currentFile, @dir_list));  
 #    $r->print('</td>><td>');  
 #   $r->print(&display_actions($current_path, $currentFile, $isEmpty));  
     $r->print('</table>  
     <input type="submit" name="doit" value="Delete Checked Files" />  
     <input type="hidden" name="action" value="delete" />  
     <input type="hidden" name="currentpath" value="'.$current_path.'" />  
     </form>');  
 }  
 sub display_file_select {  
     my ($r,$current_path,$is_empty,$dir_list)=@_;  
     my $iconpath= $r->dir_config('lonIconsURL') . "/";  
     my $display_out;  
     my $checked_files = &Apache::lonnet::files_in_path($ENV{'user.name'}, $ENV{'form.currentpath'});  
     if ($is_empty && ($current_path ne '/')) {  
         $display_out = '<form method="post" action="/adm/portfolio">'.  
         '<input type="hidden" name="action" value="deletedir" />'.  
         '<input type="submit" name="deletedir" value="'.&mt("Delete Directory").'" />'.  
         '<input type="hidden" name="selectfile" value="" />'.  
         '<input type="hidden" name="currentpath" value="'.$current_path.'" />'.  
   
         '</form>';  
           
         $r->print($display_out);  
  return;  
     }  
     $r->print('<table border="0" cellspacing="2" cellpadding="2">'.  
             '<tr><th>Select</th><th>&nbsp;</th><th>Name</th><th>Size</th><th>Last Modified</th></tr>');  
     my $href_location="/uploaded/$ENV{'user.domain'}/$ENV{'user.name'}/portfolio$current_path";      my $href_location="/uploaded/$ENV{'user.domain'}/$ENV{'user.name'}/portfolio$current_path";
     $r->print('<form method="post" name="checkselect" action="/adm/portfolio">');  
     foreach my $line (sort       foreach my $line (sort 
       {         { 
   my ($afile)=split('&',$a,2);    my ($afile)=split('&',$a,2);
Line 177  sub display_file_select { Line 124  sub display_file_select {
     $filename =~ s/\s+$//;      $filename =~ s/\s+$//;
     if (($filename ne '.') && ($filename ne '..')) {      if (($filename ne '.') && ($filename ne '..')) {
             if ($dirptr&$testdir) {              if ($dirptr&$testdir) {
                 $r->print('<tr bgcolor="#FFAA99"><td><img src="'.$iconpath.'folder_closed.gif"></td>');                  if ($select_mode eq 'true'){
                       $r->print('<tr bgcolor="#FFAA99"><td><img src="'.$iconpath.'folder_closed.gif"></td>');
                   } else {
                       $r->print('<tr bgcolor="#FFAA99"><td colspan="2"><img src="'.$iconpath.'folder_closed.gif"></td>');
                   }
                 $r->print('<td>Go to ...</td>');                  $r->print('<td>Go to ...</td>');
                 $r->print('<td>'.&make_anchor($filename.'/',$current_path.$filename.'/',$ENV{'form.mode'},$ENV{"form.fieldname"}).'</td>');                   $r->print('<td>'.&make_anchor($filename.'/',$current_path.$filename.'/',$ENV{'form.mode'},$ENV{"form.fieldname"}).'</td>'); 
                 $r->print('</tr>');                   $r->print('</tr>'); 
             } else {              } else {
                 $r->print('<tr bgcolor="#CCCCFF">');                  $r->print('<tr bgcolor="#CCCCFF">');
                 $r->print('<td><input type="checkbox" name="selectfile" value="'.$filename.'"');                   if ($select_mode eq 'true'){
                 if ($$checked_files{$filename} eq 'selected') {                      $r->print('<td><input type="checkbox" name="selectfile" value="'.$filename.'"'); 
                     $r->print("CHECKED");                      if ($$checked_files{$filename} eq 'selected') {
                           $r->print("CHECKED");
                       }
                       $r->print('></td>');
                   } else {
                       if (exists $locked_files{$current_path.$filename}){
                           $r->print('<td colspan="2">Locked</td>');
                       } else {
                           $r->print('<td><input type="checkbox" name="selectfile" value="'.$filename.'" />
                               <a href="/adm/portfolio?rename='.$filename.'&amp;currentpath='.$current_path.'">Rename</a></td>
                               <td><a href="/adm/portfolio'.$current_path.$filename.'.meta">Meta</a>
                               </td>');
                       }
                 }                  }
                 $r->print('></td>');  
                 $r->print('<td><img src="'.$iconpath.'unknown.gif"></td>');                  $r->print('<td><img src="'.$iconpath.'unknown.gif"></td>');
                 $r->print('<td><a href="'.$href_location.$filename.'">'.                  $r->print('<td><a href="'.$href_location.$filename.'">'.
     $filename.'</a></td>');       $filename.'</a></td>'); 
Line 197  sub display_file_select { Line 159  sub display_file_select {
             }              }
         }          }
     }      }
     $r->print('</table>      if ($select_mode eq 'true') {
           $r->print('</table>
             <input type="hidden" name="continue" value="true">              <input type="hidden" name="continue" value="true">
             <input type="hidden" name="fieldname" value="'.$ENV{'form.fieldname'}.'">              <input type="hidden" name="fieldname" value="'.$ENV{'form.fieldname'}.'">
             <input type="hidden" name="mode" value="selectfile">              <input type="hidden" name="mode" value="selectfile">
             <input type="submit" name="submit" value="Select checked files, and continue selecting." /><br />              <input type="submit" name="submit" value="Select checked files, and continue selecting." /><br />
             <input type="button" name="doit" onClick= "finishSelect();" value="Select checked files, and close window" />              <input type="button" name="doit" onClick= "finishSelect();" value="Select checked files, and close window" />
             <input type="hidden" name="currentpath" value="'.$current_path.'" />              <input type="hidden" name="currentpath" value="'.$current_path.'" />
     </form>');          </form>');        
       } else {
           $r->print('</table>
           <input type="submit" name="doit" value="Delete Checked Files" />
           <input type="hidden" name="action" value="delete" />
           <input type="hidden" name="currentpath" value="'.$current_path.'" />
           </form>');
       }
 }  }
   
 sub open_form {  sub open_form {
Line 599  sub handler { Line 569  sub handler {
  # need to know if directory is empty so it can be removed if desired   # need to know if directory is empty so it can be removed if desired
  my $is_empty=(@dir_list == 2);   my $is_empty=(@dir_list == 2);
  &display_common($r,$current_path,$is_empty,\@dir_list);   &display_common($r,$current_path,$is_empty,\@dir_list);
  if ($ENV{"form.mode"} eq 'selectfile'){          &display_directory($r,$current_path,$is_empty,\@dir_list);
     &select_files($r);  
             &display_file_select($r,$current_path,$is_empty,\@dir_list);  
  } else {  
     &display_directory($r,$current_path,$is_empty,\@dir_list);  
  }  
  $r->print("</body>\n</html>\n");   $r->print("</body>\n</html>\n");
  return OK;   return OK;
     }      }

Removed from v.1.76  
changed lines
  Added in v.1.77


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