phpgroupware-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Phpgroupware-tracker] [ 100340 ] Addressbook ldap filtering


From: nobody
Subject: [Phpgroupware-tracker] [ 100340 ] Addressbook ldap filtering
Date: Tue, 22 Jan 2002 17:41:55 -0500

Support Request #100340, was updated on 2002-Jan-22 17:41
You can respond by visiting: 
http://savannah.gnu.org/support/?func=detailsupport&support_id=100340&group_id=509

Category: Bug Report
Status: Open
Priority: 5
Summary: Addressbook ldap filtering

By: news
Date: 2002-Jan-22 17:41

Message:
Logged In: NO 
Browser: Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; Win 9x 4.90; T312461)

Version 9.14

The addressbook does not show the proper results when 
using ldap and more than one user submitting ldap 
entries.

The ldap read() function sets an array called 
filterfields to the filter variables. When looping 
through the acl grants, each grant is supposed to be 
appended to the filterfields array. What really 
happens is the same field name is used as a key each 
time and the key value is the last value appended at 
the end of the loop. 

example
filterfields += array('contactid'=>'4')
filterfields += array('contactid'=>'5')

result, there is only one filterfields['contactid'] 
entry and it's value is 5.

This could be change to:
filterfields[] = array('contactid'=>'4')

but I hacked my code to be:
filterfields[]=array
('logic'=>'and','field'=>'contactid','equals'=>5)

filterfields[]=array
('logic'=>'and','field'=>'contactid','equals'=>4)

and then changed the ldap filter function which 
evaluates the filterfields.

Adding the 'logic' array key allows using 'and' 'or' 
logic for the filtering.

----------------------------------------------------------------------
You can respond by visiting: 
http://savannah.gnu.org/support/?func=detailsupport&support_id=100340&group_id=509



reply via email to

[Prev in Thread] Current Thread [Next in Thread]