32 lines
761 B
Plaintext
32 lines
761 B
Plaintext
{
|
|
|
|
if (($ejabberd{'SharedRoster'} || 'disabled') eq 'enabled'){
|
|
|
|
my $filter = '';
|
|
if (scalar(@groups) == 1){
|
|
$filter = "(cn=$groups[0])";
|
|
}
|
|
elsif (scalar(@groups) gt 1){
|
|
$filter = '(|';
|
|
$filter .= "(cn=$_)" foreach (@groups);
|
|
$filter .= ')';
|
|
}
|
|
|
|
$OUT .=<<"HERE";
|
|
,{mod_shared_roster_ldap, [
|
|
{ldap_base, "$base"},
|
|
{ldap_rfilter, "(objectClass=mailboxRelatedObject)"},
|
|
{ldap_filter, "$filter"},
|
|
{ldap_gfilter, "(&(objectClass=mailboxRelatedObject)(cn=%g))"},
|
|
{ldap_ufilter, "(&(objectClass=inetOrgPerson)(uid=%u))"},
|
|
{ldap_groupattr, "cn"},
|
|
{ldap_groupdesc, "description"},
|
|
{ldap_memberattr, "memberUid"},
|
|
{ldap_useruid, "uid"},
|
|
{ldap_userdesc, "cn"}
|
|
]}
|
|
HERE
|
|
|
|
}
|
|
}
|