forked from extern/egroupware
Add read_single_entry
This commit is contained in:
parent
27c6fc6ed1
commit
786bffc4c5
@ -61,6 +61,42 @@
|
|||||||
return array($ab_fields,$ab_fieldnames,$extra_fields);
|
return array($ab_fields,$ab_fieldnames,$extra_fields);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function read_single_entry($id,$fields)
|
||||||
|
{
|
||||||
|
list($ab_fields,$ab_fieldnames,$extra_fields) = $this->split_ab_and_extras($fields);
|
||||||
|
if (count($ab_fieldnames)) {
|
||||||
|
$t_fields = ",ab_" . implode(",ab_",$ab_fieldnames);
|
||||||
|
if ($t_fields == ",ab_") {
|
||||||
|
unset($t_fields);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->db2 = $this->db;
|
||||||
|
|
||||||
|
$this->db->query("select ab_id,ab_owner,ab_access $t_fields from addressbook WHERE ab_id='$id'");
|
||||||
|
$this->db->next_record();
|
||||||
|
|
||||||
|
$return_fields[0]["id"] = $this->db->f("ab_id");
|
||||||
|
$return_fields[0]["owner"] = $this->db->f("ab_owner");
|
||||||
|
$return_fields[0]["access"] = $this->db->f("ab_access");
|
||||||
|
if (gettype($ab_fieldnames) == "array") {
|
||||||
|
while (list($f_name) = each($ab_fieldnames)) {
|
||||||
|
$return_fields[0][$f_name] = $this->db->f("ab_" . $f_name);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->db2->query("select contact_name,contact_value from phpgw_contacts where contact_id='"
|
||||||
|
. $this->db->f("ab_id") . "'",__LINE__,__FILE__);
|
||||||
|
while ($this->db2->next_record()) {
|
||||||
|
// If its not in the list to be return, don't return it.
|
||||||
|
// This is still quicker then 5(+) seperate querys
|
||||||
|
if ($extra_fields[$this->db2->f("contact_name")]) {
|
||||||
|
$return_fields[0][$this->db2->f("contact_name")] = $this->db2->f("contact_value");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $return_fields;
|
||||||
|
}
|
||||||
|
|
||||||
function read($start,$offset,$access,$filters,$fields)
|
function read($start,$offset,$access,$filters,$fields)
|
||||||
{
|
{
|
||||||
list($ab_fields,$ab_fieldnames,$extra_fields) = $this->split_ab_and_extras($fields);
|
list($ab_fields,$ab_fieldnames,$extra_fields) = $this->split_ab_and_extras($fields);
|
||||||
|
Loading…
Reference in New Issue
Block a user