Diff for /loncom/publisher/lonpubdir.pm between versions 1.89 and 1.93

version 1.89, 2006/04/06 20:52:50 version 1.93, 2006/06/22 20:49:19
Line 36  use Apache::Constants qw(:common :http : Line 36  use Apache::Constants qw(:common :http :
 use Apache::loncacc;  use Apache::loncacc;
 use Apache::loncommon();  use Apache::loncommon();
 use Apache::lonhtmlcommon();  use Apache::lonhtmlcommon();
   use Apache::londiff();
 use Apache::lonlocal;  use Apache::lonlocal;
 use Apache::lonmsg;  use Apache::lonmsg;
 use Apache::lonmenu;  use Apache::lonmenu;
Line 104  sub handler { Line 105  sub handler {
       
   # Start off the directory table.    # Start off the directory table.
   $r->print('<h3>Directory Contents:</h3>');    $r->print('<h3>Directory Contents:</h3>');
   $r->print('<table border="0" cellspacing="2" cellpadding="2"><tr>'.    $r->print('<table id="LC_browser"><tr>'.
             '<th bgcolor="#DDDDDD">'.&mt('Type').'</th>'.              '<th>'.&mt('Type').'</th>'.
             '<th bgcolor="#DDDDDD">'.&mt('Actions').'</th>'.              '<th>'.&mt('Actions').'</th>'.
             '<th bgcolor="#DDDDDD">'.&mt('Name').'</th>'.              '<th>'.&mt('Name').'</th>'.
             '<th bgcolor="#DDDDDD">'.&mt('Title').'</th>'.              '<th>'.&mt('Title').'</th>'.
     '<th bgcolor="#DDDDDD">'.&mt('Status').'</th>'.      '<th>'.&mt('Status').'</th>'.
             '<th bgcolor="#DDDDDD">'.&mt('Last Modified').              '<th>'.&mt('Last Modified').
     '</th></tr>'."\n");      '</th></tr>'."\n");
   
   my $filename;    my $filename;
Line 209  sub startpage { Line 210  sub startpage {
  {'body_title' =>   {'body_title' =>
       $pagetitle,}));        $pagetitle,}));
     } else {      } else {
  $r->print(&Apache::loncommon::start_page('Construction Space',undef,   $r->print(&Apache::loncommon::start_page('Construction Space',undef));
  {'only_body' => 1,}));  
  $r->print($pagetitle);   $r->print($pagetitle);
     }      }
   
     my $pubdirscript=(<<ENDPUBDIRSCRIPT);      my $pubdirscript=(<<ENDPUBDIRSCRIPT);
 <script type="text/javascript">  <script type="text/javascript">
 top.document.title = '$thisdisfn/ - LON-CAPA Construction Space';  top.document.title = '$thisdisfn/ - LON-CAPA Construction Space';
Line 363  sub dircontrols { Line 364  sub dircontrols {
        updc => 'Upload a new document'         updc => 'Upload a new document'
                                       );                                        );
     $r->print(<<END);      $r->print(<<END);
         <table cellspacing="4" cellpadding="4" width="100%">          <table id="LC_cstr_controls">
          <tr>           <tr>
           <td bgcolor="#DDDDDD" align="center"><font face="Arial, Helvetica, sans-serif" size="-1"><b>$lt{'acti'}</b></font></td>            <th>$lt{'acti'}</th>
           <td bgcolor="#DDDDDD" align="center"><font face="Arial, Helvetica, sans-serif" size="-1"><b>$lt{'updc'}</b></font></td>            <th>$lt{'updc'}</th>
           <td bgcolor="#DDDDDD" align="center"><font face="Arial, Helvetica, sans-serif" size="-1"><b>$lt{'crea'}</b></font></td>            <th>$lt{'crea'}</th>
         </tr>          </tr>
         <tr>          <tr>
          <td bgcolor="#ccddaa" valign="top" align="center">           <td>
           <form name="curractions" method="post" action="">            <form name="curractions" method="post" action="">
            <select name="dirtask" onchange="currdiract(this.form)">             <select name="dirtask" onchange="currdiract(this.form)">
             <option>$lt{'sela'}</option>              <option>$lt{'sela'}</option>
Line 389  sub dircontrols { Line 390  sub dircontrols {
            <input type="hidden" name="postdata" value="" />             <input type="hidden" name="postdata" value="" />
           </form>            </form>
          </td>           </td>
          <td bgcolor="#ccddaa" valign="top" align="center">           <td>
     <form name="upublisher" enctype="multipart/form-data" method="post" action="/adm/upload" target="_parent">      <form name="upublisher" enctype="multipart/form-data" method="post" action="/adm/upload" target="_parent">
       <input type="hidden" name="filename" value="/~$uname$thisdisfn/" />        <input type="hidden" name="filename" value="/~$uname$thisdisfn/" />
       <input type="file" name="upfile" size="20" />        <input type="file" name="upfile" size="20" />
       <input type="button" value="$lt{'uplo'}"  onclick="checkUpload(this.form)" />        <input type="button" value="$lt{'uplo'}"  onclick="checkUpload(this.form)" />
     </form>      </form>
  </td>   </td>
  <td bgcolor="#ccddaa" align="center">   <td>
     <form name="fileaction" method="post" action="/adm/cfile" target="_parent">      <form name="fileaction" method="post" action="/adm/cfile" target="_parent">
       <nobr>        <span style="white-space: nowrap">
  <input type="hidden" name="filename" value="/~$uname$thisdisfn/" />   <input type="hidden" name="filename" value="/~$uname$thisdisfn/" />
   <select name="action">    <select name="action">
     <option value="Select Action">$lt{'sela'}</option>      <option value="Select Action">$lt{'sela'}</option>
Line 412  sub dircontrols { Line 413  sub dircontrols {
                             <option value="newlibraryfile">$lt{'nlib'}:</option>                              <option value="newlibraryfile">$lt{'nlib'}:</option>
     <option value="newdir">$lt{'nsub'}:</option>      <option value="newdir">$lt{'nsub'}:</option>
   </select>&nbsp;<input type="text" name="newfilename" value="Type Name Here" onfocus="if (this.value == 'Type Name Here') this.value=''" />&nbsp;<input type="button" value="Go" onclick="document.fileaction.submit()" />    </select>&nbsp;<input type="text" name="newfilename" value="Type Name Here" onfocus="if (this.value == 'Type Name Here') this.value=''" />&nbsp;<input type="button" value="Go" onclick="document.fileaction.submit()" />
  </nobr>   </span>
  </form>   </form>
   </td>    </td>
          </tr>           </tr>
Line 539  sub putdirectory { Line 540  sub putdirectory {
                    '</form>';                     '</form>';
             $$numdir ++;              $$numdir ++;
         }          }
  $r->print('<tr bgcolor="#CCCCFF">'.   $r->print('<tr class="LC_browser_folder">'.
   '<td><img src="'.    '<td><img src="'.
   $Apache::lonnet::perlvar{'lonIconsURL'}.'/folder_closed.gif" alt="folder" /></td>'.    $Apache::lonnet::perlvar{'lonIconsURL'}.'/folder_closed.gif" alt="folder" /></td>'.
   '<td>'.$actionitem.'</td>'.    '<td>'.$actionitem.'</td>'.
   '<td><font face="arial"><a href="'.&HTML::Entities::encode($here.'/'.$dirname,'<>&"').'/" target="_parent">'.    '<td><span class="LC_filename"><a href="'.&HTML::Entities::encode($here.'/'.$dirname,'<>&"').'/" target="_parent">'.
   $disfilename.'</a></font></td>'.    $disfilename.'</a></span></td>'.
         '<td colspan="2">'.($kaputt?&Apache::lonhtmlcommon::authorbombs($resdir.'/'.$disfilename.'/'):'').$Apache::lonpublisher::metadatafields{'title'}.' <i>'.          '<td colspan="2">'.($kaputt?&Apache::lonhtmlcommon::authorbombs($resdir.'/'.$disfilename.'/'):'').$Apache::lonpublisher::metadatafields{'title'});
   $Apache::lonpublisher::metadatafields{'subject'}.'</i> '.   if ($Apache::lonpublisher::metadatafields{'subject'} ne '') {
   $Apache::lonpublisher::metadatafields{'keywords'}.'</td>'.      $r->print(' <i>'.
         $Apache::lonpublisher::metadatafields{'subject'}.
         '</i> ');
    }
    $r->print($Apache::lonpublisher::metadatafields{'keywords'}.'</td>'.
   '<td>'.&Apache::lonlocal::locallocaltime($modtime).'</td>'.    '<td>'.&Apache::lonlocal::locallocaltime($modtime).'</td>'.
   "</tr>\n");    "</tr>\n");
     }      }
Line 563  sub putresource { Line 568  sub putresource {
     &Apache::lonnet::devalidate_cache_new('meta',$targetdir.'/'.$filename);      &Apache::lonnet::devalidate_cache_new('meta',$targetdir.'/'.$filename);
     my $pubstatus = 'unpublished';      my $pubstatus = 'unpublished';
     my $status=&mt('Unpublished');      my $status=&mt('Unpublished');
     my $bgcolor='#FFAA99';      my $css_class='LC_browser_file';
     my $title='&nbsp;';      my $title='&nbsp;';
     my $publish_button=&mt('Publish');      my $publish_button=&mt('Publish');
 #    my $action_buttons=  #    my $action_buttons=
Line 571  sub putresource { Line 576  sub putresource {
 # $uname.'/'.$thisdisfn.'/'.$filename.'">'.  # $uname.'/'.$thisdisfn.'/'.$filename.'">'.
 # &mt('Delete').'</a>';  # &mt('Delete').'</a>';
     if (-e $resdir.'/'.$filename) {      if (-e $resdir.'/'.$filename) {
           my $same=0;
  my ($rdev,$rino,$rmode,$rnlink,   my ($rdev,$rino,$rmode,$rnlink,
     $ruid,$rgid,$rrdev,$rsize,      $ruid,$rgid,$rrdev,$rsize,
     $ratime,$rmtime,$rctime,      $ratime,$rmtime,$rctime,
     $rblksize,$rblocks)=stat($resdir.'/'.$filename);      $rblksize,$rblocks)=stat($resdir.'/'.$filename);
           if ($rmtime>=$cmtime) {
              $same=1;
           } else {
              if (&Apache::londiff::are_different_files($resdir.'/'.$filename,
                                         '/home/'.$uname.'/public_html/'.$thisdisfn.'/'.$filename)) {
                 $same=0;
              } else {
                 $same=1;
              }
           }
  $publish_button=&mt('Re-publish');   $publish_button=&mt('Re-publish');
  if ($rmtime>=$cmtime) {   if ($same) {
             $pubstatus = 'published';              $pubstatus = 'published';
     $status=&mt('Published').'<br />'.      $status=&mt('Published').'<br />'.
  &mt(&getCopyRightString($targetdir.'/'.$filename)).' '.   &mt(&getCopyRightString($targetdir.'/'.$filename)).' '.
  &mt(&getSourceRightString($targetdir.'/'.$filename));   &mt(&getSourceRightString($targetdir.'/'.$filename));
     $bgcolor='#CCFF88';  
     if (&Apache::lonnet::metadata($targetdir.'/'.$filename,'obsolete')) {      if (&Apache::lonnet::metadata($targetdir.'/'.$filename,'obsolete')) {
                 $pubstatus = 'obsolete';                  $pubstatus = 'obsolete';
  $status=&mt('Obsolete');   $status=&mt('Obsolete');
                 $bgcolor='#AAAAAA';  
             }              }
 #    } else {  #    } else {
 # $action_buttons='';  # $action_buttons='';
Line 598  sub putresource { Line 612  sub putresource {
     $status=&mt('Modified').'<br />'.      $status=&mt('Modified').'<br />'.
  &mt(&getCopyRightString($targetdir.'/'.$filename)).' '.   &mt(&getCopyRightString($targetdir.'/'.$filename)).' '.
  &mt(&getSourceRightString($targetdir.'/'.$filename));   &mt(&getSourceRightString($targetdir.'/'.$filename));
             $bgcolor='#FFFF77';  
 #    $action_buttons='';  #    $action_buttons='';
     $title='<a href="/res/'.$targetdir.'/'.$filename.'.meta" target="cat">'.      $title='<a href="/res/'.$targetdir.'/'.$filename.'.meta" target="cat">'.
  &getTitleString($targetdir.'/'.$filename).'</a>';   &getTitleString($targetdir.'/'.$filename).'</a>';
Line 632  sub putresource { Line 645  sub putresource {
     }      }
     my $pub_select = '';      my $pub_select = '';
     &create_pubselect($r,\$pub_select,$udom,$uname,$thisdisfn,$filename,$resdir,$pubstatus,$publish_button,$numres);      &create_pubselect($r,\$pub_select,$udom,$uname,$thisdisfn,$filename,$resdir,$pubstatus,$publish_button,$numres);
     $r->print('<tr bgcolor="'.$bgcolor.'">'.      $r->print('<tr class="LC_browser_file_'.$pubstatus.'">'.
       '<td>'.($filename=~/[\#\~]$/?'&nbsp;':        '<td>'.($filename=~/[\#\~]$/?'&nbsp;':
       '<img src="'.&Apache::loncommon::icon($filename).'" alt="" />').'</td>'.        '<img src="'.&Apache::loncommon::icon($filename).'" alt="" />').'</td>'.
               '<td>'.$pub_select.'</td>'.                '<td>'.$pub_select.'</td>'.
       '<td><font face="arial">'.        '<td><span class="LC_filename"> '.
       '<a href="'.$linkdir.'/'.$filename.'" target="_parent">'.        '<a href="'.$linkdir.'/'.$filename.'" target="_parent">'.
                $filename.'</a></font>'.$editlink2.$editlink.                 $filename.'</a></span>'.$editlink2.$editlink.
       '</td>'.        '</td>'.
       '<td>'.$title.'</td>'.        '<td>'.$title.'</td>'.
       '<td>'.$status.'</td>'.        '<td>'.$status.'</td>'.

Removed from v.1.89  
changed lines
  Added in v.1.93


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