use Data::Dump qw/dump/;
+my $debug = 0; # XXX very slow
+
# XXX test with:
#
# ldapsearch -h localhost -p 2389 -b dc=ffzg,dc=hr -x 'otherPager=200903160021'
my $ldap_sql_mapping = {
'uid' => 'userid',
- 'objectGUID' => 'borrowernumber',
+ 'objectGUID' => 'b.borrowernumber',
'displayName' => 'surname',
'sn' => 'surname',
- 'pager' => 'rfid_sid',
+ 'pager' => 'a.attribute', # was: rfid_sid
};
sub __sql_column {
sub _dn_attributes {
my ($row,$base) = @_;
- warn "## row = ",dump( $row );
+ warn "## row = ",dump( $row ) if $debug;
die "no objectClass column in ",dump( $row ) unless defined $row->{objectClass};
$row->{objectClass} = [ split(/\s+/, $row->{objectClass}) ] if $row->{objectClass} =~ m{\n};
- warn "## row = ",dump( $row );
+ warn "## row = ",dump( $row ) if $debug;
my $dn = delete( $row->{dn} ) || die "no dn in ",dump( $row );
my $sql
= $sql_select
. $sql_where
- . ( $objectclass =~ m{person}i ? " LIMIT $max_results" : '' ) # add limit just for persons
+# . ( $objectclass =~ m{person}i ? " LIMIT $max_results" : '' ) # add limit just for persons
;
warn "# SQL:\n$sql\n# DATA: ",dump( @values );