implement FERWeb's users.getinfobycode
[ferlib2koha.git] / lib / FERWeb.pm
1 package FERWeb;
2 use warnings;
3 use strict;
4
5 # sudo apt-get install librpc-xml-perl libio-socket-ssl-perl
6
7 #use IO::Socket::SSL qw(debug4);
8 #use LWP::Debug qw(+);
9
10 require RPC::XML;
11 require RPC::XML::Client;
12
13 use Data::Dump qw(dump);
14
15 sub new {
16         my ($class) = @_;
17
18         my $auth = RPC::XML::Client->new('https://www.fer.hr/xmlrpc/xr_auth.php');
19
20         my $login_id = $auth->send_request('auth.rlogin', '_koha', $ENV{PASSWD} )->value;
21         die dump $login_id if ref $login_id eq 'HASH';
22
23         warn "# login_id $login_id\n";
24
25         my $self = { login_id => $login_id };
26         bless $self, $class;
27         return $self;
28 }
29
30 our $users = RPC::XML::Client->new('https://www.fer.hr/xmlrpc/xr_users.php');
31 sub getinfobycode {
32         my ($self,$code) = @_;
33
34         my $res = $users->send_request(
35                 'users.getinfobycode', $self->{login_id}, RPC::XML::string->new($code)
36         )->value;
37
38         print "[$code] = ", dump($res), $/;
39
40         return $res;
41 }
42
43 1;