%args>
$o => 'dc=ikfia,dc=ysn,dc=ru'
$dn => ''
%args>
<%perl>
use Net::LDAP;
use CGI::Enurl;
use cyrillic qw(convert);
my $comp_path = $m->current_comp->path;
my @namingcontexts = ('dc=ysn,dc=ru');
#$m->comp("./advanced_search_form.html", o=>$o);
my $founded_flag = 0;
$m->comp("./advanced_search_form.mhtml", o=>$o, founded_flag=>\$founded_flag);
#if($o ne ''){
# $dn = $o;
#}
$CGI::Enurl::KeepUnencoded = "a-zA-Z0-9";
if($dn ne ''){
#print "$dn
\n";
my $dn_enurl = enurl($dn);
my $res = $ldap_conn->search(
base => $m->comp('./utils.mhtml:win2utf', $dn),
scope => 'base',
filter => 'objectclass=*'
);
#print $res->count, "
\n";
if($res->count > 0){
my $entry = $res->entry(0);
my @objectclasses = $entry->get_value('objectclass');
my $dn = $m->comp('./utils.mhtml:utf2koi', $entry->dn());
foreach my $oc (@objectclasses){
if($oc eq 'person'){
$m->comp('./person_ext.mhtml', dn=>$dn);
last;
}
elsif($oc eq 'organization'){
$m->comp('./organization_ext.mhtml', entry=>$entry);
print "Поиск других сотрудников этой организации
\n";
last;
}
elsif($oc eq 'organizationalunit'){
$m->comp('./organizationalunit_ext.mhtml', entry=>$entry);
last;
}
}
}
}
else{
#$m->comp('./organization_list.mhtml');
#print "Список организаций\n";
}
%perl>