Diff for /loncom/interface/lonsearchcat.pm between versions 1.1 and 1.6

version 1.1, 2001/01/03 16:20:59 version 1.6, 2001/03/08 20:54:53
Line 1 Line 1
 # The LearningOnline Network  # The LearningOnline Network
 # Search Catalog  # Search Catalog
 #  #
 # (Internal Server Error Handler  # 03/08/2001 Scott Harrison
 #  
 # (Login Screen  
 # 5/21/99,5/22,5/25,5/26,5/31,6/2,6/10,7/12,7/14,  
 # 1/14/00,5/29,5/30,6/1,6/29,7/1,11/9 Gerd Kortemeyer)  
 #  
 # 3/1/1 Gerd Kortemeyer)  
 #  
 # 3/1 Gerd Kortemeyer  
 #  #
 package Apache::lonsearchcat;  package Apache::lonsearchcat;
   
 use strict;  use strict;
 use Apache::Constants qw(:common);  use Apache::Constants qw(:common);
   use Apache::lonnet();
   use Apache::File();
   
   my %language;
   my $scrout;
   my %metadatafields;
   my %cprtag;
   my %mimetag;
   
 sub handler {  sub handler {
     my $r = shift;      my $r = shift;
Line 22  sub handler { Line 22  sub handler {
     $r->send_http_header;      $r->send_http_header;
     return OK if $r->header_only;      return OK if $r->header_only;
   
 # --------------------------------------------------- Print login screen header      %metadatafields=();
   
   # ------------------------------------------------ First, check out environment
       $metadatafields{'owner'}=$ENV{'user.name'}.'@'.$ENV{'user.domain'};
   
       
       %language=();
       $language{'any'}='Any language';
       {
    my $fh=Apache::File->new($r->dir_config('lonTabDir').'/language.tab');
    map {
       $_=~/(\w+)\s+([\w\s\-]+)/;
       $language{$1}=$2;
    } <$fh>;
       }
   
       %cprtag=();
       $cprtag{'any'}='Any copyright/distribution';
       {
    my $fh=Apache::File->new($r->dir_config('lonIncludes').'/copyright.tab');
    map {
       $_=~/(\w+)\s+([\w\s\-]+)/;
       $cprtag{$1}=$2;
    } <$fh>;
       }
   
       %mimetag=();
       $mimetag{'any'}='Any type';
       {
    my $fh=Apache::File->new($r->dir_config('lonTabDir').'/filetypes.tab');
    map {
       $_=~/(\w+)\s+(\w+)\s+([\w\s\-]+)/;
       $mimetag{$1}=".$1 $3";
    } <$fh>;
       }
   
       if ($ENV{'form.basicsubmit'} eq 'SEARCH') {
    return &basicsearch($r,$ENV{'form.basicexp'});
       }
   
       $scrout="";
       $scrout.=&searchphrasefield('Limit by title','title',
    '');
   
       $scrout.=&searchphrasefield('Limit by author','author',
    '');
   
       $scrout.=&searchphrasefield('Limit by subject','subject',
    '');
   
       $scrout.=&searchphrasefield('Limit by notes','notes',
    '');
   
       $scrout.=&searchphrasefield('Limit by abstract','abstract',
    '');
   
       $scrout.=&selectbox('Limit by MIME type','mime',
    'notxxx',%mimetag);
   
       $scrout.=&selectbox('Limit by language','language',
    'any',%language);
       
       $scrout.=<<CREATIONDATEEND;
   <p>
   <font color="#800000" face="helvetica"><b>LIMIT BY CREATION DATE RANGE:</b>
   </font>
   <br>
   between:<select name="creationdatemonthstart">
   <option value="01"> </option>
   <option value="01">January</option>
   <option value="02">February</option>
   <option value="03">March</option>
   <option value="04">April</option>
   <option value="05">May</option>
   <option value="06">June</option>
   <option value="07">July</option>
   <option value="08">August</option>
   <option value="09">September</option>
   <option value="10">October</option>
   <option value="11">November</option>
   <option value="12">December</option>
   </select>
   <select name="creationdatedaystart">
   <option value="1"> </option>
   <option value=1>1</option>
   <option value=2>2</option>
   <option value=3>3</option>
   <option value=4>4</option>
   <option value=5>5</option>
   <option value=6>6</option>
   <option value=7>7</option>
   <option value=8>8</option>
   <option value=9>9</option>
   <option value=10>10</option>
   <option value=11>11</option>
   <option value=12>12</option>
   <option value=13>13</option>
   <option value=14>14</option>
   <option value=15>15</option>
   <option value=16>16</option>
   <option value=17>17</option>
   <option value=18>18</option>
   <option value=19>19</option>
   <option value=20>20</option>
   <option value=21>21</option>
   <option value=22>22</option>
   <option value=23>23</option>
   <option value=24>24</option>
   <option value=25>25</option>
   <option value=26>26</option>
   <option value=27>27</option>
   <option value=28>28</option>
   <option value=29>29</option>
   <option value=30>30</option>
   <option value=31>31</option>
   </select>
   <select name="creationdateyearstart">
   <option value=1976> </option>
   <option value=1976>1976</option>
   <option value=1977>1977</option>
   <option value=1978>1978</option>
   <option value=1979>1979</option>
   <option value=1980>1980</option>
   <option value=1981>1981</option>
   <option value=1982>1982</option>
   <option value=1983>1983</option>
   <option value=1984>1984</option>
   <option value=1985>1985</option>
   <option value=1986>1986</option>
   <option value=1987>1987</option>
   <option value=1988>1988</option>
   <option value=1989>1989</option>
   <option value=1990>1990</option>
   <option value=1991>1991</option>
   <option value=1992>1992</option>
   <option value=1993>1993</option>
   <option value=1994>1994</option>
   <option value=1995>1995</option>
   <option value=1996>1996</option>
   <option value=1997>1997</option>
   <option value=1998>1998</option>
   <option value=1999>1999</option>
   <option value=2000>2000</option>
   <option value=2001>2001</option>
   <option value=2002>2002</option>
   <option value=2003>2003</option>
   <option value=2004>2004</option>
   <option value=2005>2005</option>
   <option value=2006>2006</option>
   <option value=2007>2007</option>
   <option value=2008>2008</option>
   <option value=2009>2009</option>
   <option value=2010>2010</option>
   <option value=2011>2011</option>
   <option value=2012>2012</option>
   <option value=2013>2013</option>
   <option value=2014>2014</option>
   <option value=2015>2015</option>
   <option value=2016>2016</option>
   <option value=2017>2017</option>
   <option value=2018>2018</option>
   <option value=2019>2019</option>
   <option value=2020>2020</option>
   <option value=2021>2021</option>
   <option value=2022>2022</option>
   <option value=2023>2023</option>
   <option value=2024>2024</option>
   <option value=2025>2025</option>
   <option value=2026>2026</option>
   <option value=2027>2027</option>
   <option value=2028>2028</option>
   <option value=2029>2029</option>
   <option value=2030>2030</option>
   <option value=2031>2031</option>
   <option value=2032>2032</option>
   <option value=2033>2033</option>
   <option value=2034>2034</option>
   <option value=2035>2035</option>
   <option value=2036>2036</option>
   <option value=2037>2037</option>
   <option value=2038>2038</option>
   <option value=2039>2039</option>
   <option value=2040>2040</option>
   <option value=2041>2041</option>
   <option value=2042>2042</option>
   <option value=2043>2043</option>
   <option value=2044>2044</option>
   <option value=2045>2045</option>
   <option value=2046>2046</option>
   <option value=2047>2047</option>
   <option value=2048>2048</option>
   <option value=2049>2049</option>
   <option value=2050>2050</option>
   <option value=2051>2051</option>
   </select>
   and:<select name="creationdatemonthend">
   <option value="12"> </option>
   <option value="01">January</option>
   <option value="02">February</option>
   <option value="03">March</option>
   <option value="04">April</option>
   <option value="05">May</option>
   <option value="06">June</option>
   <option value="07">July</option>
   <option value="08">August</option>
   <option value="09">September</option>
   <option value="10">October</option>
   <option value="11">November</option>
   <option value="12">December</option>
   </select>
   <select name="creationdatedayend">
   <option value=28> </option>
   <option value=1>1</option>
   <option value=2>2</option>
   <option value=3>3</option>
   <option value=4>4</option>
   <option value=5>5</option>
   <option value=6>6</option>
   <option value=7>7</option>
   <option value=8>8</option>
   <option value=9>9</option>
   <option value=10>10</option>
   <option value=11>11</option>
   <option value=12>12</option>
   <option value=13>13</option>
   <option value=14>14</option>
   <option value=15>15</option>
   <option value=16>16</option>
   <option value=17>17</option>
   <option value=18>18</option>
   <option value=19>19</option>
   <option value=20>20</option>
   <option value=21>21</option>
   <option value=22>22</option>
   <option value=23>23</option>
   <option value=24>24</option>
   <option value=25>25</option>
   <option value=26>26</option>
   <option value=27>27</option>
   <option value=28>28</option>
   <option value=29>29</option>
   <option value=30>30</option>
   <option value=31>31</option>
   </select>
   <select name="creationdateyearend">
   <option value=2051> </option>
   <option value=1976>1976</option>
   <option value=1977>1977</option>
   <option value=1978>1978</option>
   <option value=1979>1979</option>
   <option value=1980>1980</option>
   <option value=1981>1981</option>
   <option value=1982>1982</option>
   <option value=1983>1983</option>
   <option value=1984>1984</option>
   <option value=1985>1985</option>
   <option value=1986>1986</option>
   <option value=1987>1987</option>
   <option value=1988>1988</option>
   <option value=1989>1989</option>
   <option value=1990>1990</option>
   <option value=1991>1991</option>
   <option value=1992>1992</option>
   <option value=1993>1993</option>
   <option value=1994>1994</option>
   <option value=1995>1995</option>
   <option value=1996>1996</option>
   <option value=1997>1997</option>
   <option value=1998>1998</option>
   <option value=1999>1999</option>
   <option value=2000>2000</option>
   <option value=2001>2001</option>
   <option value=2002>2002</option>
   <option value=2003>2003</option>
   <option value=2004>2004</option>
   <option value=2005>2005</option>
   <option value=2006>2006</option>
   <option value=2007>2007</option>
   <option value=2008>2008</option>
   <option value=2009>2009</option>
   <option value=2010>2010</option>
   <option value=2011>2011</option>
   <option value=2012>2012</option>
   <option value=2013>2013</option>
   <option value=2014>2014</option>
   <option value=2015>2015</option>
   <option value=2016>2016</option>
   <option value=2017>2017</option>
   <option value=2018>2018</option>
   <option value=2019>2019</option>
   <option value=2020>2020</option>
   <option value=2021>2021</option>
   <option value=2022>2022</option>
   <option value=2023>2023</option>
   <option value=2024>2024</option>
   <option value=2025>2025</option>
   <option value=2026>2026</option>
   <option value=2027>2027</option>
   <option value=2028>2028</option>
   <option value=2029>2029</option>
   <option value=2030>2030</option>
   <option value=2031>2031</option>
   <option value=2032>2032</option>
   <option value=2033>2033</option>
   <option value=2034>2034</option>
   <option value=2035>2035</option>
   <option value=2036>2036</option>
   <option value=2037>2037</option>
   <option value=2038>2038</option>
   <option value=2039>2039</option>
   <option value=2040>2040</option>
   <option value=2041>2041</option>
   <option value=2042>2042</option>
   <option value=2043>2043</option>
   <option value=2044>2044</option>
   <option value=2045>2045</option>
   <option value=2046>2046</option>
   <option value=2047>2047</option>
   <option value=2048>2048</option>
   <option value=2049>2049</option>
   <option value=2050>2050</option>
   <option value=2051>2051</option>
   </select>
   </p>
   CREATIONDATEEND
   
       $scrout.=<<LASTREVISIONDATEEND;
   <p>
   <font color="#800000" face="helvetica"><b>LIMIT BY LAST REVISION DATE RANGE:
   </b></font>
   <br>between:<select name="lastrevisiondatemonthstart">
   <option value="00"> </option>
   <option value="01">January</option>
   <option value="02">February</option>
   <option value="03">March</option>
   <option value="04">April</option>
   <option value="05">May</option>
   <option value="06">June</option>
   <option value="07">July</option>
   <option value="08">August</option>
   <option value="09">September</option>
   <option value="10">October</option>
   <option value="11">November</option>
   <option value="12">December</option>
   </select>
   <select name="lastrevisiondatedaystart">
   <option value=1> </option>
   <option value=1>1</option>
   <option value=2>2</option>
   <option value=3>3</option>
   <option value=4>4</option>
   <option value=5>5</option>
   <option value=6>6</option>
   <option value=7>7</option>
   <option value=8>8</option>
   <option value=9>9</option>
   <option value=10>10</option>
   <option value=11>11</option>
   <option value=12>12</option>
   <option value=13>13</option>
   <option value=14>14</option>
   <option value=15>15</option>
   <option value=16>16</option>
   <option value=17>17</option>
   <option value=18>18</option>
   <option value=19>19</option>
   <option value=20>20</option>
   <option value=21>21</option>
   <option value=22>22</option>
   <option value=23>23</option>
   <option value=24>24</option>
   <option value=25>25</option>
   <option value=26>26</option>
   <option value=27>27</option>
   <option value=28>28</option>
   <option value=29>29</option>
   <option value=30>30</option>
   <option value=31>31</option>
   </select>
   <select name="lastrevisiondateyearstart">
   <option value=1976> </option>
   <option value=1976>1976</option>
   <option value=1977>1977</option>
   <option value=1978>1978</option>
   <option value=1979>1979</option>
   <option value=1980>1980</option>
   <option value=1981>1981</option>
   <option value=1982>1982</option>
   <option value=1983>1983</option>
   <option value=1984>1984</option>
   <option value=1985>1985</option>
   <option value=1986>1986</option>
   <option value=1987>1987</option>
   <option value=1988>1988</option>
   <option value=1989>1989</option>
   <option value=1990>1990</option>
   <option value=1991>1991</option>
   <option value=1992>1992</option>
   <option value=1993>1993</option>
   <option value=1994>1994</option>
   <option value=1995>1995</option>
   <option value=1996>1996</option>
   <option value=1997>1997</option>
   <option value=1998>1998</option>
   <option value=1999>1999</option>
   <option value=2000>2000</option>
   <option value=2001>2001</option>
   <option value=2002>2002</option>
   <option value=2003>2003</option>
   <option value=2004>2004</option>
   <option value=2005>2005</option>
   <option value=2006>2006</option>
   <option value=2007>2007</option>
   <option value=2008>2008</option>
   <option value=2009>2009</option>
   <option value=2010>2010</option>
   <option value=2011>2011</option>
   <option value=2012>2012</option>
   <option value=2013>2013</option>
   <option value=2014>2014</option>
   <option value=2015>2015</option>
   <option value=2016>2016</option>
   <option value=2017>2017</option>
   <option value=2018>2018</option>
   <option value=2019>2019</option>
   <option value=2020>2020</option>
   <option value=2021>2021</option>
   <option value=2022>2022</option>
   <option value=2023>2023</option>
   <option value=2024>2024</option>
   <option value=2025>2025</option>
   <option value=2026>2026</option>
   <option value=2027>2027</option>
   <option value=2028>2028</option>
   <option value=2029>2029</option>
   <option value=2030>2030</option>
   <option value=2031>2031</option>
   <option value=2032>2032</option>
   <option value=2033>2033</option>
   <option value=2034>2034</option>
   <option value=2035>2035</option>
   <option value=2036>2036</option>
   <option value=2037>2037</option>
   <option value=2038>2038</option>
   <option value=2039>2039</option>
   <option value=2040>2040</option>
   <option value=2041>2041</option>
   <option value=2042>2042</option>
   <option value=2043>2043</option>
   <option value=2044>2044</option>
   <option value=2045>2045</option>
   <option value=2046>2046</option>
   <option value=2047>2047</option>
   <option value=2048>2048</option>
   <option value=2049>2049</option>
   <option value=2050>2050</option>
   <option value=2051>2051</option>
   </select>
   and:<select name="lastrevisiondatemonthend">
   <option value="12"> </option>
   <option value="01">January</option>
   <option value="02">February</option>
   <option value="03">March</option>
   <option value="04">April</option>
   <option value="05">May</option>
   <option value="06">June</option>
   <option value="07">July</option>
   <option value="08">August</option>
   <option value="09">September</option>
   <option value="10">October</option>
   <option value="11">November</option>
   <option value="12">December</option>
   </select>
   <select name="lastrevisiondatedayend">
   <option value=28> </option>
   <option value=1>1</option>
   <option value=2>2</option>
   <option value=3>3</option>
   <option value=4>4</option>
   <option value=5>5</option>
   <option value=6>6</option>
   <option value=7>7</option>
   <option value=8>8</option>
   <option value=9>9</option>
   <option value=10>10</option>
   <option value=11>11</option>
   <option value=12>12</option>
   <option value=13>13</option>
   <option value=14>14</option>
   <option value=15>15</option>
   <option value=16>16</option>
   <option value=17>17</option>
   <option value=18>18</option>
   <option value=19>19</option>
   <option value=20>20</option>
   <option value=21>21</option>
   <option value=22>22</option>
   <option value=23>23</option>
   <option value=24>24</option>
   <option value=25>25</option>
   <option value=26>26</option>
   <option value=27>27</option>
   <option value=28>28</option>
   <option value=29>29</option>
   <option value=30>30</option>
   <option value=31>31</option>
   </select>
   <select name="lastrevisiondateyearend">
   <option value=2051> </option>
   <option value=1976>1976</option>
   <option value=1977>1977</option>
   <option value=1978>1978</option>
   <option value=1979>1979</option>
   <option value=1980>1980</option>
   <option value=1981>1981</option>
   <option value=1982>1982</option>
   <option value=1983>1983</option>
   <option value=1984>1984</option>
   <option value=1985>1985</option>
   <option value=1986>1986</option>
   <option value=1987>1987</option>
   <option value=1988>1988</option>
   <option value=1989>1989</option>
   <option value=1990>1990</option>
   <option value=1991>1991</option>
   <option value=1992>1992</option>
   <option value=1993>1993</option>
   <option value=1994>1994</option>
   <option value=1995>1995</option>
   <option value=1996>1996</option>
   <option value=1997>1997</option>
   <option value=1998>1998</option>
   <option value=1999>1999</option>
   <option value=2000>2000</option>
   <option value=2001>2001</option>
   <option value=2002>2002</option>
   <option value=2003>2003</option>
   <option value=2004>2004</option>
   <option value=2005>2005</option>
   <option value=2006>2006</option>
   <option value=2007>2007</option>
   <option value=2008>2008</option>
   <option value=2009>2009</option>
   <option value=2010>2010</option>
   <option value=2011>2011</option>
   <option value=2012>2012</option>
   <option value=2013>2013</option>
   <option value=2014>2014</option>
   <option value=2015>2015</option>
   <option value=2016>2016</option>
   <option value=2017>2017</option>
   <option value=2018>2018</option>
   <option value=2019>2019</option>
   <option value=2020>2020</option>
   <option value=2021>2021</option>
   <option value=2022>2022</option>
   <option value=2023>2023</option>
   <option value=2024>2024</option>
   <option value=2025>2025</option>
   <option value=2026>2026</option>
   <option value=2027>2027</option>
   <option value=2028>2028</option>
   <option value=2029>2029</option>
   <option value=2030>2030</option>
   <option value=2031>2031</option>
   <option value=2032>2032</option>
   <option value=2033>2033</option>
   <option value=2034>2034</option>
   <option value=2035>2035</option>
   <option value=2036>2036</option>
   <option value=2037>2037</option>
   <option value=2038>2038</option>
   <option value=2039>2039</option>
   <option value=2040>2040</option>
   <option value=2041>2041</option>
   <option value=2042>2042</option>
   <option value=2043>2043</option>
   <option value=2044>2044</option>
   <option value=2045>2045</option>
   <option value=2046>2046</option>
   <option value=2047>2047</option>
   <option value=2048>2048</option>
   <option value=2049>2049</option>
   <option value=2050>2050</option>
   <option value=2051>2051</option>
   </select>
   </p>
   LASTREVISIONDATEEND
   
       $scrout.=&searchphrasefield('Limit by publisher/owner','owner',
    $metadatafields{'owner'});
   
       $scrout.=&selectbox('Limit by copyright/distribution','copyright',
    'any',%cprtag);
   
   # ---------------------------------------------------------------- Print screen
     $r->print(<<ENDDOCUMENT);      $r->print(<<ENDDOCUMENT);
 <html>  <html>
 <head>  <head>
 <title>The LearningOnline Network with CAPA</title>  <title>The LearningOnline Network with CAPA</title>
 </head>  </head>
 <body bgcolor="#FFFFFF">  <body bgcolor="#FFFFFF">
   <img align=right src=/adm/lonIcons/lonlogos.gif>
 <h1>Search Catalog</h1>  <h1>Search Catalog</h1>
 <img src="/adm/lonKaputt/lonconstruct.gif">  <form method="post" action="/adm/searchcat">
   <hr>
   <h3>Basic Search</h3>
   <p>
   Enter terms or phrases separated by search operators
   such as AND or OR then press SEARCH below.  Terms should be specific
   to the title, author, subject, notes, or abstract information associated
   with a resource.
   <br>
   <input type="text" name="basicexp">
   <input type="checkbox" name="titleonly">
   <font color="#800000">Title only</font>
   <br>
   <input type="submit" name="basicsubmit" value="SEARCH">
   </p>
   <hr>
   <h3>Advanced Search</h3>
   $scrout
   <p>
   <input type="submit" name="advancedsubmit" value="SEARCH">
   </p>
   </form>
 </body>  </body>
 </html>  </html>
 ENDDOCUMENT  ENDDOCUMENT
     return OK;      return OK;
 }   } 
   
   # --------------------------------------------------------- Various form fields
   
   sub textfield {
       my ($title,$name,$value)=@_;
       return "\n<p><b>$title:</b><br>".
              '<input type=text name="'.$name.'" size=80 value="'.$value.'">';
   }
   
   sub searchphrasefield {
       my ($title,$name,$value)=@_;
       my $instruction=<<END;
   Enter terms or phrases separated by search operators such
   as AND or OR.
   END
       my $uctitle=uc($title);
       return "\n<p><font color=\"#800000\" face=\"helvetica\"><b>$uctitle:</b>".
      ":</FONT> $instruction<br>".
              '<input type=text name="'.$name.'" size=80 value="'.$value.'">';
   }
   
   sub selectbox {
       my ($title,$name,$value,%options)=@_;
       my $uctitle=uc($title);
       my $selout="\n<p><font color=\"#800000\" face=\"helvetica\"><b>$uctitle:".
    "</b></font><br>".'<select name="'.$name.'">';
       map {
           $selout.='<option value="'.$_.'"';
           if ($_ eq $value) { $selout.=' selected'; }
           $selout.='>'.$options{$_}.'</option>';
       } sort keys %options;
       return $selout.'</select>';
   }
   
   # --------------------------------------------------- Performing a basic search
   sub basicsearch {
       my ($r,$expression)=@_;
   
       my $query=$expression;
   #    $query="select * from metadata where concat(title,':\@:',author) like '\%Sci\%'";
       $query="select * from metadata where concat(title,\"    \",author) like '\%$expression\%'";
   #    my $reply=&Apache::lonnet::reply("querysend:DESCRIBE metadata","msul3");
       my $reply=&Apache::lonnet::reply("querysend:$query",'msul3');
   #    my $reply=&Apache::lonnet::reply('querysend:select * from metadata','msul3');
   
       my @results;
   
       my $replyfile='';
       $reply=~/^([\.\w]+)$/; # must do since 'use strict' checks for tainting
       $replyfile=$r->dir_config('lonDaemons').'/tmp/'.$1;
       $reply=~/(.*?)\_/;
       my $hostname=$1;
   
       {
    while (1) {
       last if -e $replyfile;
       sleep 1;
    }
    # QUESTION: how should I handle this error condition..
    # I'm sure there is syntax elsewhere I can use..
    my $fh=Apache::File->new($replyfile) or
          ($r->print('file cannot be opened') and return OK);
          @results=<$fh>;
       }
   
       my $compiledresult='';
   
       foreach my $result (@results) {
    my ($title,$author,$subject,$notes,$abstract,$mime,$lang,
       $creationdate,$lastrevisiondate,$owner,$copyright
       )=map {&Apache::lonnet::unescape($_)} (split(/\,/,$result));
    my $shortabstract=$abstract;
    $shortabstract=substr($abstract,0,200) if length($abstract)>200;
    $compiledresult=<<END;
   <p>
   <b>Title:</b> $title<br>
   <b>Author(s):</b> $author<br>
   <b>Subject:</b> $subject<br>
   <b>Keyword(s):</b> <i>not available yet</i><br>
   <b>Notes:</b> $notes<br>
   <b>Abstract:</b> $shortabstract<br>
   <b>MIME Type:</b> $mimetag{$mime}<br>
   <b>Language:</b> $language{$lang}<br>
   <b>Creation Date:</b> $creationdate<br>
   <b>Last Revision Date:</b> $lastrevisiondate<br>
   <b>Publisher/Owner:</b> $owner<br>
   <b>Copyright/Distribution:</b> $copyright<br>
   <b>Repository Location:</b> $hostname
   </p>
   END
   }
   
       unless ($compiledresult) {
    $compiledresult="There were no results that matched your query";
       }
   
   # Question... allow to ask question from this page, or click to
   # search again?
       $r->print(<<RESULTS);
   <html>
   <head>
   <title>The LearningOnline Network with CAPA</title>
   </head>
   <body bgcolor="#ffffff">
   <img align=right src=/adm/lonIcons/lonlogos.gif>
   <h1>Search Catalog</h1>
   <form method="post" action="/adm/searchcat">
   <hr>
   <h3>Search Query</h3>
   <p>
   $expression
   </p>
   <h3>Search Results</h3>
   $compiledresult
   </body>
   </html>
   RESULTS
   
       return OK;
   }
   
 1;  1;
 __END__  __END__

Removed from v.1.1  
changed lines
  Added in v.1.6


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