Diff for /loncom/interface/londocs.pm between versions 1.146 and 1.155

version 1.146, 2004/09/18 17:06:57 version 1.155, 2004/12/13 01:57:10
Line 989  sub editor { Line 989  sub editor {
 # ---------------------------------------------------------------- End commands  # ---------------------------------------------------------------- End commands
 # ---------------------------------------------------------------- Print screen  # ---------------------------------------------------------------- Print screen
         my $idx=0;          my $idx=0;
    my $shown=0;
         $r->print('<table>');          $r->print('<table>');
         foreach (@Apache::lonratedt::order) {          foreach (@Apache::lonratedt::order) {
            my ($name,$url)=split(/\:/,$Apache::lonratedt::resources[$_]);             my ($name,$url)=split(/\:/,$Apache::lonratedt::resources[$_]);
            unless ($name) {  $name=(split(/\//,$url))[-1]; }             unless ($name) {  $name=(split(/\//,$url))[-1]; }
            unless ($name) { next; }             unless ($name) { $idx++; next; }
            $r->print(&entryline($idx,$name,$url,$folder,$allowed,$_,$coursenum));             $r->print(&entryline($idx,$name,$url,$folder,$allowed,$_,$coursenum));
            $idx++;             $idx++;
      $shown++;
         }          }
  unless ($idx) {   unless ($shown) {
     $r->print('<tr><td>'.&mt('Currently no documents.').'</td></tr>');      $r->print('<tr><td>'.&mt('Currently no documents.').'</td></tr>');
  }   }
         $r->print('</table>');          $r->print('</table>');
Line 1150  END Line 1152  END
  } elsif ($url=~m|^/ext/|) {    } elsif ($url=~m|^/ext/|) { 
     $url='/adm/wrapper'.$url;      $url='/adm/wrapper'.$url;
  }   }
         unless ($container eq 'page') {   $url.=(($url=~/\?/)?'&':'?').'symb='.&Apache::lonnet::escape($symb);
    if ($container eq 'page') {
       my $symb=$ENV{'form.pagesymb'};
           
       $url=&Apache::lonnet::clutter((&Apache::lonnet::decode_symb($symb))[2]);
     $url.=(($url=~/\?/)?'&':'?').'symb='.&Apache::lonnet::escape($symb);      $url.=(($url=~/\?/)?'&':'?').'symb='.&Apache::lonnet::escape($symb);
         }   }
     }      }
     my $parameterset='&nbsp;';      my $parameterset='&nbsp;';
     if ($isfolder) {      if ($isfolder) {
Line 1161  END Line 1167  END
  if ($folderpath) { $folderpath.='&' };   if ($folderpath) { $folderpath.='&' };
  $folderpath.=$folderarg.'&'.$foldername;   $folderpath.=$folderarg.'&'.$foldername;
  $url.='folderpath='.&Apache::lonnet::escape($folderpath);   $url.='folderpath='.&Apache::lonnet::escape($folderpath);
  $parameterset=&mt('Randomly Pick: ').   $parameterset='<label>'.&mt('Randomly Pick: ').
     '<input type="text" size="4" name="randpick_'.$orderidx.'" value="'.      '<input type="text" size="4" name="randpick_'.$orderidx.'" value="'.
     (&Apache::lonratedt::getparameter($orderidx,'parameter_randompick'))[0].'" />';      (&Apache::lonratedt::getparameter($orderidx,
                                                 'parameter_randompick'))[0].
                                                 '" />'.'</label>';
          
     }      }
     if ($ispage) {      if ($ispage) {
         my $pagename=&Apache::lonnet::escape($pagetitle);          my $pagename=&Apache::lonnet::escape($pagetitle);
Line 1171  END Line 1180  END
         my $folderpath=$ENV{'form.folderpath'};          my $folderpath=$ENV{'form.folderpath'};
         if ($folderpath) { $pagepath = $folderpath.'&' };          if ($folderpath) { $pagepath = $folderpath.'&' };
         $pagepath.=$pagearg.'&'.$pagename;          $pagepath.=$pagearg.'&'.$pagename;
         $url.='pagepath='.&Apache::lonnet::escape($pagepath);   my $symb=$ENV{'form.pagesymb'};
    if (!$symb) {
       my $path='uploaded/'.
    $ENV{'course.'.$ENV{'request.course.id'}.'.domain'}.'/'.
    $ENV{'course.'.$ENV{'request.course.id'}.'.num'}.'/';
       $symb=&Apache::lonnet::encode_symb($path.$folder.'.sequence',
          $residx,
          $path.$pagearg.'.page');
    }
    $url.='pagepath='.&Apache::lonnet::escape($pagepath).
       '&pagesymb='.&Apache::lonnet::escape($symb);
     }      }
     $line.='<td bgcolor="#FFFFBB"><a href="'.$url.'"><img src="'.$icon.      $line.='<td bgcolor="#FFFFBB"><a href="'.$url.'"><img src="'.$icon.
  '" border="0"></a></td>'.   '" border="0"></a></td>'.
Line 1187  END Line 1206  END
     ((&Apache::lonratedt::getparameter($orderidx,'parameter_hiddenresource'))[0]=~/^yes$/i?' checked="1"':'');      ((&Apache::lonratedt::getparameter($orderidx,'parameter_hiddenresource'))[0]=~/^yes$/i?' checked="1"':'');
  $line.=(<<ENDPARMS);   $line.=(<<ENDPARMS);
 <td bgcolor="#BBBBFF"><font size='-2'>  <td bgcolor="#BBBBFF"><font size='-2'>
 <input type="checkbox" name="hidprs_$orderidx" $hidtext/> $lt{'hd'}</td>  <nobr><label><input type="checkbox" name="hidprs_$orderidx" $hidtext/> $lt{'hd'}</label></nobr></td>
 <!--<td bgcolor="#BBBBFF"><font size='-2'>  <td bgcolor="#BBBBFF"><font size='-2'>
 <input type="checkbox" name="encprs_$orderidx" $enctext/> $lt{'ec'}</td>-->  <nobr><label><input type="checkbox" name="encprs_$orderidx" $enctext/> $lt{'ec'}</label></nobr></td>
 <td bgcolor="#BBBBFF"><font size="-2">$parameterset</font></td>  <td bgcolor="#BBBBFF"><font size="-2">$parameterset</font></td>
 <td bgcolor="#BBBBFF"><font size='-2'>  <td bgcolor="#BBBBFF"><font size='-2'>
 <input type="submit" value="$lt{'sp'}" />  <input type="submit" value="$lt{'sp'}" />
Line 1205  ENDPARMS Line 1224  ENDPARMS
 sub tiehash {  sub tiehash {
     my ($mode)=@_;      my ($mode)=@_;
     $hashtied=0;      $hashtied=0;
     &Apache::lonnet::logthis(" tiehash1 -- $hashtied ");  
     if ($ENV{'request.course.fn'}) {      if ($ENV{'request.course.fn'}) {
  &Apache::lonnet::logthis(" tiehash2 -- $hashtied ");  
  if ($mode eq 'write') {   if ($mode eq 'write') {
     &Apache::lonnet::logthis(" tiehash3 -- $hashtied ");  
     if (tie(%hash,'GDBM_File',$ENV{'request.course.fn'}.".db",      if (tie(%hash,'GDBM_File',$ENV{'request.course.fn'}.".db",
     &GDBM_WRCREAT(),0640)) {      &GDBM_WRCREAT(),0640)) {
                 $hashtied=2;                  $hashtied=2;
  &Apache::lonnet::logthis(" tiehash4 -- $hashtied ");  
     }      }
  } else {   } else {
     &Apache::lonnet::logthis(" tiehash5 -- $hashtied ");  
     if (tie(%hash,'GDBM_File',$ENV{'request.course.fn'}.".db",      if (tie(%hash,'GDBM_File',$ENV{'request.course.fn'}.".db",
     &GDBM_READER(),0640)) {      &GDBM_READER(),0640)) {
                 $hashtied=1;                  $hashtied=1;
  &Apache::lonnet::logthis(" tiehash6 -- $hashtied ");  
     }      }
  }   }
     }          }    
     &Apache::lonnet::logthis(" tiehash7 -- $hashtied ");  
 }  }
   
 sub untiehash {  sub untiehash {
     &Apache::lonnet::logthis(" untiehash1 -- $hashtied ");  
     if ($hashtied) { untie %hash; }      if ($hashtied) { untie %hash; }
     $hashtied=0;      $hashtied=0;
     &Apache::lonnet::logthis(" untiehash2 -- $hashtied ");  
 }  }
   
 # --------------------------------------------------------------- check on this  # --------------------------------------------------------------- check on this
Line 1587  ENDHEADERS Line 1597  ENDHEADERS
   
 sub mark_hash_old {  sub mark_hash_old {
     my $retie_hash=0;      my $retie_hash=0;
     &Apache::lonnet::logthis(" markold1 -- $hashtied $retie_hash ");  
     if ($hashtied) {      if ($hashtied) {
  $retie_hash=1;   $retie_hash=1;
  &Apache::lonnet::logthis(" markold2 -- $hashtied $retie_hash ");  
  &untiehash();   &untiehash();
  &Apache::lonnet::logthis(" markold3 -- $hashtied $retie_hash ");  
     }      }
     &tiehash('write');      &tiehash('write');
     &Apache::lonnet::logthis(" markold4 -- $hashtied $retie_hash ");  
     $hash{'old'}=1;      $hash{'old'}=1;
     &Apache::lonnet::logthis(" markold5 -- $hashtied $retie_hash ");      
     &untiehash();      &untiehash();
     &Apache::lonnet::logthis(" markold6 -- $hashtied $retie_hash ");  
     if ($retie_hash) { &tiehash(); }      if ($retie_hash) { &tiehash(); }
     &Apache::lonnet::logthis(" markold7 -- $hashtied $retie_hash ");  
 }  }
   
 sub is_hash_old {  sub is_hash_old {
Line 1618  sub is_hash_old { Line 1621  sub is_hash_old {
 sub changewarning {  sub changewarning {
     my ($r,$postexec)=@_;      my ($r,$postexec)=@_;
     if (!&is_hash_old()) { return; }      if (!&is_hash_old()) { return; }
       my $pathvar='folderpath';
       my $path=&Apache::lonnet::escape($ENV{'form.folderpath'});
       if (defined($ENV{'form.pagepath'})) {
    $pathvar='pagepath';
    $path=&Apache::lonnet::escape($ENV{'form.pagepath'});
       }
     $r->print(      $r->print(
 '<script>function reinit(tf) { tf.submit();'.$postexec.' }</script>'.   '<script>function reinit(tf) { tf.submit();'.$postexec.' }</script>'. 
 '<form method="post" action="/adm/roles" target="loncapaclient">'.  '<form method="post" action="/adm/roles" target="loncapaclient">'.
 '<input type="hidden" name="orgurl" value="/adm/coursedocs?folderpath='.  '<input type="hidden" name="orgurl" value="/adm/coursedocs?'.
 &Apache::lonnet::escape($ENV{'form.folderpath'}).  $pathvar.'='.$path.
 '" /><input type="hidden" name="selectrole" value="1" /><h3><font color="red">'.  '" /><input type="hidden" name="selectrole" value="1" /><h3><font color="red">'.
 &mt('Changes will become active for your current session after').  &mt('Changes will become active for your current session after').
 ' <input type="hidden" name="'.  ' <input type="hidden" name="'.
Line 1672  sub handler { Line 1681  sub handler {
 # is this a standard course?  # is this a standard course?
   
     my $standard=($ENV{'request.course.uri'}=~/^\/uploaded\//);      my $standard=($ENV{'request.course.uri'}=~/^\/uploaded\//);
     my $forcestandard;      my $forcestandard = 0;
     my $forcesupplement;      my $forcesupplement;
     my $script='';      my $script='';
     my $allowed;      my $allowed;
Line 1681  sub handler { Line 1690  sub handler {
     my $containertag;      my $containertag;
     my $uploadtag;      my $uploadtag;
     &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},      &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},
     ['folderpath','pagepath']);      ['folderpath','pagepath','pagesymb']);
     if ($ENV{'form.folderpath'}) {      if ($ENV{'form.folderpath'}) {
  my (@folderpath)=split('&',$ENV{'form.folderpath'});   my (@folderpath)=split('&',$ENV{'form.folderpath'});
  $ENV{'form.foldername'}=&Apache::lonnet::unescape(pop(@folderpath));   $ENV{'form.foldername'}=&Apache::lonnet::unescape(pop(@folderpath));
Line 1698  sub handler { Line 1707  sub handler {
        $showdoc='/'.$1;         $showdoc='/'.$1;
     }      }
     unless ($showdoc) { # got called from remote      unless ($showdoc) { # got called from remote
        $forcestandard=($ENV{'form.folder'}=~/^default_/);         if (($ENV{'form.folder'}=~/^default_$/) || 
             ($ENV{'form.folder'} =~ m#^\d+/(pages|sequences)/#)) {
              $forcestandard = 1;
          } 
        $forcesupplement=($ENV{'form.folder'}=~/^supplemental_/);         $forcesupplement=($ENV{'form.folder'}=~/^supplemental_/);
   
 # does this user have privileges to post, etc?  # does this user have privileges to post, etc?

Removed from v.1.146  
changed lines
  Added in v.1.155


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