Diff for /loncom/cgi/metadata_harvest.pl between versions 1.1 and 1.4

version 1.1, 2002/10/23 20:44:15 version 1.4, 2008/11/28 20:50:25
Line 1 Line 1
 #!/usr/bin/perl  #!/usr/bin/perl
   # Inserts metadata from .meta files into the mysql database
   # $Id$
 #  #
 # The LearningOnline Network with CAPA  # Copyright Michigan State University Board of Trustees
 #  #
 # Gets keywords from metadata database.  # This file is part of the LearningOnline Network with CAPA (LON-CAPA).
 #  #
 # YEAR=2001  # LON-CAPA is free software; you can redistribute it and/or modify
 # 9/25 Scott Harrison  # it under the terms of the GNU General Public License as published by
   # the Free Software Foundation; either version 2 of the License, or
   # (at your option) any later version.
 #  #
 # YEAR=2002  # LON-CAPA is distributed in the hope that it will be useful,
 # 5/11 Scott Harrison  # but WITHOUT ANY WARRANTY; without even the implied warranty of
   # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   # GNU General Public License for more details.
   #
   # You should have received a copy of the GNU General Public License
   # along with LON-CAPA; if not, write to the Free Software
   # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   #
   # /home/httpd/html/adm/gpl.txt
   #
   # http://www.lon-capa.org/
 #  #
   
   
 ###############################################################################  ###############################################################################
 ##                                                                           ##  ##                                                                           ##
 ## ORGANIZATION OF THIS PERL CGI SCRIPT                                      ##  ## ORGANIZATION OF THIS PERL CGI SCRIPT                                      ##
Line 46 Line 61
   
 # ------------------------------------------------- Modules used by this script  # ------------------------------------------------- Modules used by this script
   
 use lib '/home/httpd/lib/perl/';  $|=1;
 use LONCAPA::Configuration;  
   
 use strict;  use strict;
 use DBI;  use DBI;
   use lib '/home/httpd/lib/perl/';
   use Apache::lonlocal;
   use LONCAPA::Configuration;
   use LONCAPA::loncgi;
   
 # ---------------------------- Print MIME Content-type and other initialization  # ---------------------------- Print MIME Content-type and other initialization
 $|=1;  
 print 'Content-type: text/plain'."\n\n";  print 'Content-type: text/plain'."\n\n";
   
   &main();
   
   sub main {
       if (!&LONCAPA::loncgi::check_ipbased_access('metadata_harvest')) {
           if (!&LONCAPA::loncgi::check_cookie_and_load_env()) {
               &Apache::lonlocal::get_language_handle();
               print(&LONCAPA::loncgi::missing_cookie_msg());
               return;
           }
   
           if (!&LONCAPA::loncgi::can_view('metadata_harvest')) {
               &Apache::lonlocal::get_language_handle();
               print(&LONCAPA::loncgi::unauthorized_msg('metadata_harvest'));
               return;
           }
       }
   
       &Apache::lonlocal::get_language_handle();
   
 # --- Make sure that database can be accessed and that this is a library server  # --- Make sure that database can be accessed and that this is a library server
 # library server test  # library server test
   
 # By default, loncapa_apache.conf is also read by the read_conf subroutine.  # By default, loncapa_apache.conf is also read by the read_conf subroutine.
 my $perlvarref=LONCAPA::Configuration::read_conf('loncapa.conf');      my $perlvarref=LONCAPA::Configuration::read_conf('loncapa.conf');
 my %perlvar=%{$perlvarref};      my %perlvar=%{$perlvarref};
 undef($perlvarref);      undef($perlvarref);
   
 unless ($perlvar{'lonRole'} eq 'library') {      unless ($perlvar{'lonRole'} eq 'library') {
     print "This can only be run on a library server!\n";          print(&Apache::lonlocal::mt('This can only be run on a library server!')."\n");
     exit;          return;
 }      }
 # database test  # database test
 my $dbh;      my $dbh;
 {      {
     unless (          unless (
     $dbh = DBI->connect("DBI:mysql:loncapa","www",          $dbh = DBI->connect("DBI:mysql:loncapa","www",
  $perlvar{'lonSqlAccess'},      $perlvar{'lonSqlAccess'},
  { RaiseError =>0,PrintError=>0})      { RaiseError =>0,PrintError=>0})
     ) {           ) { 
  print "Cannot connect to database!\n";      print "Cannot connect to database!\n";
  exit;      return;
           }
     }      }
 }      %perlvar=(); # undefine it
 %perlvar=(); # undefine it  
   
 # ------------------------ Loop through database records and print out keywords  # ------------------------ Loop through database records and print out keywords
 my $sth=$dbh->prepare("select * from metadata");      my $sth=$dbh->prepare("select * from metadata");
 $sth->execute();      $sth->execute();
 my @row;      my @row;
 while (@row=$sth->fetchrow_array) {      while (@row=$sth->fetchrow_array) {
     for (my $i=0;$i<=$#row;$i++) {          for (my $i=0;$i<=$#row;$i++) {
         $row[$i]=~s/\n/ /g;              $row[$i]=~s/\n/ /g;
         $row[$i]=~s/\|/ /g;              $row[$i]=~s/\|/ /g;
           }
           print join('|',@row)."\n";
     }      }
     print join('|',@row)."\n";  
 }  
   
 # --------------------------------------------------- Close database connection  # --------------------------------------------------- Close database connection
 $dbh->disconnect();      $dbh->disconnect();
       return;
   }

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


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