X-Git-Url: https://git.octo.it/?p=licom.git;a=blobdiff_plain;f=licom.cgi;h=f0dfd12840145e3fff0aed689e265d919e7a97d7;hp=59eddd66fb65a04bcd2e978a6bb5adf4601cadaa;hb=328bdcb841ecaa72c69379e6ccd7165f44e7c2e4;hpb=58514068dafe37b69bca7d34e5d4bc2e6e234c9a diff --git a/licom.cgi b/licom.cgi index 59eddd6..f0dfd12 100755 --- a/licom.cgi +++ b/licom.cgi @@ -9,13 +9,14 @@ use CGI::Carp (qw(fatalsToBrowser)); use URI::Escape; use Data::Dumper; -use LiCoM::Config (qw(get_config)); -use LiCoM::Person; +use LiCoM::Config (qw(get_config set_config read_config)); +use LiCoM::Connection (); +use LiCoM::Group (); +use LiCoM::Person (); our $Debug = 0; -our $Config = {}; -our @MultiFields = (qw(address homephone cellphone officephone fax mail uri group)); +our @MultiFields = (qw(address homephone cellphone officephone fax mail uri)); our %FieldNames = ( @@ -49,24 +50,25 @@ our %Actions = vcard => \&action_vcard ); -$Config = get_config (); +read_config (); # make sure AuthLDAPRemoteUserIsDN is enabled. die unless ($ENV{'REMOTE_USER'}); -$Config->{'base_dn'} = $ENV{'REMOTE_USER'}; +set_config ('base_dn', $ENV{'REMOTE_USER'}); -die unless (defined ($Config->{'uri'}) and defined ($Config->{'base_dn'}) - and defined ($Config->{'bind_dn'}) and defined ($Config->{'password'})); +die unless (defined (get_config ('uri')) + and defined (get_config ('base_dn')) + and defined (get_config ('bind_dn')) + and defined (get_config ('password'))); -LiCoM::Person->connect +LiCoM::Connection->connect ( - uri => $Config->{'uri'}, - base_dn => $Config->{'base_dn'}, - bind_dn => $Config->{'bind_dn'}, - password => $Config->{'password'} + uri => get_config ('uri'), + bind_dn => get_config ('bind_dn'), + password => get_config ('password') ) or die; -our ($UserCN, $UserID) = LiCoM::Person->get_user ($Config->{'base_dn'}); +our ($UserCN, $UserID) = LiCoM::Person->get_user ($ENV{'REMOTE_USER'}); if (!$UserID and $Action ne 'save') { @@ -95,7 +97,7 @@ elsif (ref ($Actions{$Action}) eq 'ARRAY') } } -LiCoM::Person->disconnect (); +LiCoM::Connection->disconnect (); exit (0); @@ -107,6 +109,8 @@ sub action_browse $group = shift if (@_); $group ||= ''; + return (''); + my @all; if ($group) {