Added possibility to define alternative names on data structures

This can be used to find elements, based on the data returned by info providers
This commit is contained in:
Jan Böhmer 2023-07-16 22:59:46 +02:00
parent edc54aaf91
commit b74ab18a6d
11 changed files with 79 additions and 5 deletions

View file

@ -209,17 +209,17 @@ class StructuralDBElementRepository extends NamedDBElementRepository
return $result[0];
}
/*//If we have no result, try to find the element by additional names
//If we have no result, try to find the element by alternative names
$qb = $this->createQueryBuilder('e');
//Use lowercase conversion to be case-insensitive
$qb->where($qb->expr()->like('LOWER(e.additional_names)', 'LOWER(:name)'));
$qb->setParameter('name', '%'.$name.'%');
$qb->where($qb->expr()->like('LOWER(e.alternative_names)', 'LOWER(:name)'));
$qb->setParameter('name', '%'.$name.',%');
$result = $qb->getQuery()->getResult();
if (count($result) === 1) {
if (count($result) >= 1) {
return $result[0];
}*/
}
//If we find nothing, return null
return null;
@ -247,6 +247,9 @@ class StructuralDBElementRepository extends NamedDBElementRepository
$entity = new $class;
$entity->setName($name);
//Set the found name to the alternative names, so the entity can be easily renamed later
$entity->setAlternativeNames($name);
$this->setNewEntityToCache($entity);
}