Fix: best method
This commit is contained in:
parent
6791d23032
commit
3abb1b88ff
@ -862,7 +862,16 @@ class Societe extends CommonObject
|
|||||||
if (! empty($name))
|
if (! empty($name))
|
||||||
{
|
{
|
||||||
if (! $exact)
|
if (! $exact)
|
||||||
$name = '%'.str_replace('*', '%', $name).'%';
|
{
|
||||||
|
if (preg_match('/^([\*]+)[^*]+([\*]+)$/', $name))
|
||||||
|
{
|
||||||
|
$name = str_replace('*', '%', $name);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$name = '%'.$name.'%';
|
||||||
|
}
|
||||||
|
}
|
||||||
$sql.= " AND ";
|
$sql.= " AND ";
|
||||||
if (is_array($filters) && ! empty($filters))
|
if (is_array($filters) && ! empty($filters))
|
||||||
$sql.= "(";
|
$sql.= "(";
|
||||||
@ -876,7 +885,16 @@ class Societe extends CommonObject
|
|||||||
foreach($filters as $field => $value)
|
foreach($filters as $field => $value)
|
||||||
{
|
{
|
||||||
if (! $exact)
|
if (! $exact)
|
||||||
$value = str_replace('*', '%', $value);
|
{
|
||||||
|
if (preg_match('/^([\*]+)[^*]+([\*]+)$/', $value))
|
||||||
|
{
|
||||||
|
$value = str_replace('*', '%', $value);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$value = '%'.$value.'%';
|
||||||
|
}
|
||||||
|
}
|
||||||
if (! $case)
|
if (! $case)
|
||||||
$sql.= " ".$clause." ".$field." LIKE '".$this->db->escape($value)."'";
|
$sql.= " ".$clause." ".$field." LIKE '".$this->db->escape($value)."'";
|
||||||
else
|
else
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user