Diff for /loncom/interface/lonsearchcat.pm between versions 1.101 and 1.104

version 1.101, 2001/10/16 17:12:51 version 1.104, 2001/11/28 14:02:31
Line 3 Line 3
 # Search Catalog  # Search Catalog
 #  #
 # YEAR=2001  # YEAR=2001
 # 03/08/2001 Scott Harrison  # 3/8, 3/12, 3/13, 3/14, 3/15, 3/19 Scott Harrison
 # Scott Harrison: 03/12/2001, 03/13/2001, 03/14/2001, 03/15/2001, 03/19/2001  # 3/20, 3/21, 3/22, 3/26, 3/27, 4/2, 8/15, 8/24, 8/25 Scott Harrison
 # Scott Harrison: 03/20/2001, 03/21/2001, 03/22/2001, 03/26/2001, 03/27/2001  # 10/12,10/14,10/15,10/16,11/28 Scott Harrison
 # Scott Harrison: 04/02/2001, 08/15/2001, 08/24/2001, 08/25/2001  #
 # 10/12,10/14,10/15 Scott Harrison  # $Id$
   #
   ###
   
 ###############################################################################  ###############################################################################
 ##                                                                           ##  ##                                                                           ##
Line 203  my $domain = ""; Line 205  my $domain = "";
 # ----------------------------- Handling routine called via Apache and mod_perl  # ----------------------------- Handling routine called via Apache and mod_perl
 sub handler {  sub handler {
     my $r = shift;      my $r = shift;
       untie %hash;
     &get_unprocessed_cgi();      &get_unprocessed_cgi();
   
     $r->content_type('text/html');      $r->content_type('text/html');
Line 212  sub handler { Line 214  sub handler {
   
     $domain  = $r->dir_config('lonDefDomain');      $domain  = $r->dir_config('lonDefDomain');
   
     $diropendb = "/home/httpd/perl/tmp/$domain\_$ENV{'user.name'}_indexer.db";      $diropendb= "/home/httpd/perl/tmp/$domain\_$ENV{'user.name'}_searchcat.db";
   
     if ($ENV{'form.launch'} eq '1') {      if ($ENV{'form.launch'} eq '1') {
  if (tie(%hash,'GDBM_File',$diropendb,&GDBM_WRCREAT,0640)) {   if (tie(%hash,'GDBM_File',$diropendb,&GDBM_WRCREAT,0640)) {
Line 917  sub output_results { Line 919  sub output_results {
     my %ENV=%{$envhash};      my %ENV=%{$envhash};
     my %rhash=%{$replyref};      my %rhash=%{$replyref};
     my $compiledresult='';      my $compiledresult='';
     my $timeremain=30;      my $timeremain=300;
     my $elapsetime=0;      my $elapsetime=0;
     my $resultflag=0;      my $resultflag=0;
     my $tflag=1;      my $tflag=1;
Line 982  SCRIPT Line 984  SCRIPT
      'scrollbars=1,width=400,height=300');       'scrollbars=1,width=400,height=300');
  openhelpwin.focus();   openhelpwin.focus();
     }      }
       function abortsearch(val) {
    openhelpwin=open('/adm/help/searchcat.html','helpscreen',
        'scrollbars=1,width=400,height=300');
    openhelpwin.focus();
       }
 </script>  </script>
 SCRIPT  SCRIPT
     $r->rflush();      $r->rflush();
Line 1090  RESULTS Line 1097  RESULTS
  '<'+'br />'+   '<'+'br />'+
  ' <'+'input type="button" name="button"'+   ' <'+'input type="button" name="button"'+
  ' value="abort search and view current results" '+   ' value="abort search and view current results" '+
  ' />'+   ' onClick="javascript:opener.abortsearch()" />'+
  ' <'+'input type="button" name="button"'+   ' <'+'input type="button" name="button"'+
  ' value="help" onClick="javascript:opener.openhelp()" />'+   ' value="help" onClick="javascript:opener.openhelp()" />'+
  '<'+'/tt>'+   '<'+'/tt>'+
Line 1102  ENDPOP Line 1109  ENDPOP
     $r->rflush();      $r->rflush();
   
     my $servercount=0;      my $servercount=0;
     $sn=0;  
     my $hitcountsum=0;      my $hitcountsum=0;
     foreach my $rkey (sort keys %rhash) {      my $bloop=$servernum;
       my %orkey;
     BLOOP: while(1) {
         my $sn=0;
         last BLOOP unless $bloop;
       RLOOP: foreach my $rkey (sort keys %rhash) {
  $sn++;   $sn++;
    next RLOOP if $orkey{$rkey};
  $servercount++;   $servercount++;
  $tflag=1;   $tflag=1;
  $compiledresult='';   $compiledresult='';
Line 1121  ENDPOP Line 1133  ENDPOP
       'src="/adm/lonIcons/srvbad.gif";</script>'.        'src="/adm/lonIcons/srvbad.gif";</script>'.
       "\n");        "\n");
     $r->rflush();      $r->rflush();
       $bloop--;
       $orkey{$rkey}=1;
  }   }
  else {   else {
     $reply=~/^([\.\w]+)$/; # must do since 'use strict' checks for tainting      $reply=~/^([\.\w]+)$/; # must do since 'use strict' checks for tainting
Line 1142  ENDPOP Line 1156  ENDPOP
       $r->rflush();        $r->rflush();
       $tflag=0;        $tflag=0;
   }    }
   last WLOOP if $temp>5;    last WLOOP if $temp>1;
   if (-e "$replyfile.end") {    if (-e "$replyfile.end") {
         $bloop--;
         $orkey{$rkey}=1;
       if (-s $replyfile) {        if (-s $replyfile) {
   $r->print('<script type="text/javascript">'.    $r->print('<script type="text/javascript">'.
     'popwin.document.img'.$sn.'.'.      'popwin.document.img'.$sn.'.'.
Line 1242  ENDPOP Line 1258  ENDPOP
  my ($title,$author,$subject,$url,$keywords,$version,   my ($title,$author,$subject,$url,$keywords,$version,
     $notes,$abstract,$mime,$lang,      $notes,$abstract,$mime,$lang,
     $creationdate,$lastrevisiondate,$owner,$copyright)=@fields;      $creationdate,$lastrevisiondate,$owner,$copyright)=@fields;
   
    unless ($ENV{'user.adv'}) {
       $keywords='<i>- not displayed -</i>';
       $fields[4]=$keywords;
       $notes='<i>- not displayed -</i>';
       $fields[6]=$notes;
       $abstract='<i>- not displayed -</i>';
       $fields[7]=$abstract;
       $subject='<i>- not displayed -</i>';
       $fields[2]=$subject;
    }
   
  my $shortabstract=$abstract;   my $shortabstract=$abstract;
  $shortabstract=substr($abstract,0,200) if length($abstract)>200;   $shortabstract=substr($abstract,0,200).'...' if length($abstract)>200;
  $fields[7]=$shortabstract;   $fields[7]=$shortabstract;
    my $shortkeywords=$keywords;
    $shortkeywords=substr($keywords,0,200).'...' if length($keywords)>200;
    $fields[4]=$shortkeywords;
   
  my $extrashow2=$extrashow;   my $extrashow2=$extrashow;
  if ($extrashow) {   if ($extrashow) {
     foreach my $field (@customfields) {      foreach my $field (@customfields) {
Line 1268  onClick="javascript:select_data('$title' Line 1300  onClick="javascript:select_data('$title'
 </font>  </font>
 <br />  <br />
 END  END
                 $hash{"HELLOWORLD"}='123';  
                 if ($ENV{'form.catalogmode'} eq 'groupsearch') {                  if ($ENV{'form.catalogmode'} eq 'groupsearch') {
     $fnum+=0;      $fnum+=0;
     $hash{"pre_${fnum}_link"}=$url;      $hash{"pre_${fnum}_link"}=$url;
Line 1328  $compiledresult Line 1359  $compiledresult
 RESULTS  RESULTS
         my $percent=sprintf('%3.0f',($servercount/$servernum*100));          my $percent=sprintf('%3.0f',($servercount/$servernum*100));
     }      }
     }
     unless ($resultflag) {      unless ($resultflag) {
         $r->print("\nThere were no results that matched your query\n");          $r->print("\nThere were no results that matched your query\n");
     }      }
Line 1525  $message Line 1557  $message
 RESULTS  RESULTS
 }  }
   
 # --------- settings whenever the user causes the indexer window to be launched  # --------- settings whenever the user causes the search window to be launched
 sub start_fresh_session {  sub start_fresh_session {
     delete $hash{'mode_catalog'};      delete $hash{'mode_catalog'};
     map {      map {

Removed from v.1.101  
changed lines
  Added in v.1.104


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