forked from Wavyzz/dolibarr
Fix case of ismultientitymanaged that is key@table
This commit is contained in:
@@ -137,9 +137,14 @@ class MyModuleApi extends DolibarrApi
|
||||
$sql = "SELECT t.rowid";
|
||||
$sql .= " FROM ".$this->db->prefix().$tmpobject->table_element." AS t";
|
||||
$sql .= " LEFT JOIN ".$this->db->prefix().$tmpobject->table_element."_extrafields AS ef ON (ef.fk_object = t.rowid)"; // Modification VMR Global Solutions to include extrafields as search parameters in the API GET call, so we will be able to filter on extrafields
|
||||
$sql .= " WHERE 1 = 1";
|
||||
if ($tmpobject->ismultientitymanaged) {
|
||||
$sql .= ' AND t.entity IN ('.getEntity($tmpobject->element).')';
|
||||
if (!empty($tmpobject->ismultientitymanaged) && (int) $tmpobject->ismultientitymanaged == 1) {
|
||||
$sql .= " WHERE t.entity IN (".getEntity($tmpobject->element).")";
|
||||
} elseif (preg_match('/^\w+@\w+$/', (string) $tmpobject->ismultientitymanaged)) {
|
||||
$tmparray = explode('@', (string) $tmpobject->ismultientitymanaged);
|
||||
$sql .= " LEFT JOIN ".$this->db->prefix().$tmparray[1]." as pt ON t.".$tmparray[0]." = pt.rowid";
|
||||
$sql .= " WHERE pt.entity IN (".getEntity($tmpobject->element).")";
|
||||
} else {
|
||||
$sql .= " WHERE 1 = 1";
|
||||
}
|
||||
if ($restrictonsocid && $socid) {
|
||||
$sql .= " AND t.fk_soc = ".((int) $socid);
|
||||
|
||||
Reference in New Issue
Block a user