koha-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Koha-cvs] koha/C4 Context.pm


From: Tumer Garip
Subject: [Koha-cvs] koha/C4 Context.pm
Date: Mon, 10 Apr 2006 21:40:23 +0000

CVSROOT:        /sources/koha
Module name:    koha
Branch:         
Changes by:     Tumer Garip <address@hidden>    06/04/10 21:40:23

Modified files:
        C4             : Context.pm 

Log message:
        A new handler defined for zebra Zconnauth with read/write permission. 
Zconnauth should only be called in biblio.pm where write operations are. Use of 
this handler will break things unless koha.conf contains new variables:
        zebradb=localhost
        zebraport=<your port>
        zebrauser=<username>
        zebrapass=<password>
        
        The zebra.cfg file should read:
        perm.anonymous:r
        perm.username:rw
        passw.c:<yourpasswordfile>
        
        Password file should be prepared with Apaches htpasswd utility in 
encrypted mode and should exist in a folder zebra.cfg can read

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/koha/koha/C4/Context.pm.diff?tr1=1.33&tr2=1.34&r1=text&r2=text

Patches:
Index: koha/C4/Context.pm
diff -u koha/C4/Context.pm:1.33 koha/C4/Context.pm:1.34
--- koha/C4/Context.pm:1.33     Wed Mar 15 11:21:56 2006
+++ koha/C4/Context.pm  Mon Apr 10 21:40:23 2006
@@ -15,7 +15,7 @@
 # Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
 # Suite 330, Boston, MA  02111-1307 USA
 
-# $Id: Context.pm,v 1.33 2006/03/15 11:21:56 plg Exp $
+# $Id: Context.pm,v 1.34 2006/04/10 21:40:23 tgarip1957 Exp $
 
 package C4::Context;
 use strict;
@@ -26,7 +26,7 @@
        qw($context),
        qw(@context_stack);
 
-$VERSION = do { my @v = '$Revision: 1.33 $' =~ /\d+/g;
+$VERSION = do { my @v = '$Revision: 1.34 $' =~ /\d+/g;
                shift(@v) . "." . join("_", map {sprintf "%03d", $_ } @v); };
 
 =head1 NAME
@@ -230,6 +230,7 @@
 
        $self->{"dbh"} = undef;         # Database handle
        $self->{"Zconn"} = undef;       # Zebra Connection
+       $self->{"Zconnauth"} = undef;   # Zebra Connection for updating
        $self->{"stopwords"} = undef; # stopwords list
        $self->{"marcfromkohafield"} = undef; # the hash with relations between 
koha table fields and MARC field/subfield
        $self->{"userenv"} = undef;             # User env
@@ -429,6 +430,24 @@
         }
 }
 
+=item Zconnauth
+Returns a connection to the Zebradb with write privileges.Requires setting 
from etc/koha.conf
+zebradb,zebraport,zebrauser,zebrapass
+
+=cut
+
+sub Zconnauth {
+        my $self = shift;
+       my $Zconnauth;
+        if (defined($context->{"Zconnauth"})) {
+           $Zconnauth = $context->{"Zconnauth"};
+                   return $context->{"Zconnauth"};
+       } else {
+               $context->{"Zconnauth"} = &new_Zconnauth();
+               return $context->{"Zconnauth"};
+       }       
+}
+
 =item new_Zconn
 
 Internal helper function. creates a new database connection from
@@ -451,6 +470,32 @@
        return $Zconn;
 }
 
+
+## Zebra handler with write permission
+sub new_Zconnauth {
+use ZOOM;
+my $Zconnauth;
+my $option1=new ZOOM::Options();
+$option1->option(user=>$context->{"config"}{"zebrauser"});
+my $option2=new ZOOM::Options();
+$option2->option(password=>$context->{"config"}{"zebrapass"});
+my $opts = new ZOOM::Options($option1,$option2);
+
+ $Zconnauth=create ZOOM::Connection($opts);
+
+       eval {
+       
$Zconnauth->connect($context->{"config"}{"zebradb"},$context->{"config"}{"zebraport"});
+       };
+       if ($@){        
+               warn "Error-auth ", address@hidden>code(), ": ", 
address@hidden>message(), "\n";
+               die "Fatal error, cant connect to z3950 server";
+               
+       }
+       $Zconnauth->option(preferredRecordSyntax => "XML");
+       $Zconnauth->option(elementSetName=> "F");
+       $Zconnauuth->option(cqlfile => 
C4::Context->config("intranetdir")."/zebra/pqf.properties");
+       return $Zconnauth;
+}
 # _new_dbh
 # Internal helper function (not a method!). This creates a new
 # database connection from the data given in the current context, and
@@ -780,6 +825,20 @@
 
 =cut
 # $Log: Context.pm,v $
+# Revision 1.34  2006/04/10 21:40:23  tgarip1957
+# A new handler defined for zebra Zconnauth with read/write permission. 
Zconnauth should only be called in biblio.pm where write operations are. Use of 
this handler will break things unless koha.conf contains new variables:
+# zebradb=localhost
+# zebraport=<your port>
+# zebrauser=<username>
+# zebrapass=<password>
+#
+# The zebra.cfg file should read:
+# perm.anonymous:r
+# perm.username:rw
+# passw.c:<yourpasswordfile>
+#
+# Password file should be prepared with Apaches htpasswd utility in encrypted 
mode and should exist in a folder zebra.cfg can read
+#
 # Revision 1.33  2006/03/15 11:21:56  plg
 # bug fixed: utf-8 data where not displayed correctly in screens. Supposing
 # your data are truely utf-8 encoded in your database, they should be




reply via email to

[Prev in Thread] Current Thread [Next in Thread]