natural search

This commit is contained in:
Cédric Salvador 2013-09-04 11:06:33 +02:00
parent b58297a791
commit bbae47c48f
2 changed files with 19 additions and 4 deletions

View File

@ -181,10 +181,18 @@ if (dol_strlen($type)) {
} }
} }
if ($sref) { if ($sref) {
$sql .= ' AND p.ref LIKE "%' . $sref . '%"'; //natural search
$scrit = explode(' ', $sref);
foreach ($scrit as $crit) {
$sql .= ' AND p.ref LIKE "%' . $crit . '%"';
}
} }
if ($snom) { if ($snom) {
$sql .= ' AND p.label LIKE "%' . $db->escape($snom) . '%"'; //natural search
$scrit = explode(' ', $snom);
foreach ($scrit as $crit) {
$sql .= ' AND p.label LIKE "%' . $db->escape($crit) . '%"';
}
} }
$sql .= ' AND p.tobuy = 1'; $sql .= ' AND p.tobuy = 1';

View File

@ -103,10 +103,17 @@ if (!$user->rights->societe->client->voir && !$socid) {
$sql .= ' AND s.rowid = sc.fk_soc AND sc.fk_user = ' . $user->id; $sql .= ' AND s.rowid = sc.fk_soc AND sc.fk_user = ' . $user->id;
} }
if ($sref) { if ($sref) {
$sql .= ' AND cf.ref LIKE "%' . $db->escape($sref) . '%"'; //natural search
$scrit = explode(' ', $sref);
foreach ($scrit as $crit) {
$sql .= ' AND cf.ref LIKE "%' . $db->escape($crit) . '%"';
}
} }
if ($snom) { if ($snom) {
$sql .= ' AND s.nom LIKE "%' . $db->escape($snom) . '%"'; $scrit = explode(' ', $snom);
foreach ($scrit as $crit) {
$sql .= ' AND s.nom LIKE "%' . $db->escape($crit) . '%"';
}
} }
if ($suser) { if ($suser) {
$sql .= ' AND u.login LIKE "%' . $db->escape($suser) . '%"'; $sql .= ' AND u.login LIKE "%' . $db->escape($suser) . '%"';