Advanced Search: add class alias in criterion

SVN:b1162[5563]
This commit is contained in:
Eric Espié
2018-03-29 08:06:16 +00:00
parent 3246c36984
commit 11af11b3be
3 changed files with 27 additions and 16 deletions

View File

@@ -80,24 +80,28 @@ class CriterionToSearchForm extends CriterionConversionAbstract
}
$aCriteria['is_removable'] = $bIsRemovable;
// Check criteria validity
if (!array_key_exists('ref', $aCriteria) || !array_key_exists($aCriteria['ref'], $aAllFields))
if (isset($aCriteria['ref']))
{
$aCriteria['label'] = Dict::S('UI:Search:Criteria:Raw:Filtered');
if (array_key_exists('ref', $aCriteria))
$aRef = explode('.', $aCriteria['ref']);
if (isset($aClasses[$aRef[0]]))
{
$aRef = explode('.', $aCriteria['ref']);
if (isset($aClasses[$aRef[0]]))
$sClass = $aClasses[$aRef[0]];
$aCriteria['class'] = $sClass;
}
}
// Check criteria validity
if (!isset($aCriteria['ref']) || !isset($aAllFields[$aCriteria['ref']]))
{
$aCriteria['label'] = Dict::S('UI:Search:Criteria:Raw:Filtered');
if (isset($aCriteria['ref']))
{
try
{
$aCriteria['label'] = Dict::Format('UI:Search:Criteria:Raw:FilteredOn', MetaModel::GetName($sClass));
}
catch (Exception $e)
{
$sClass = $aClasses[$aRef[0]];
try
{
$aCriteria['label'] = Dict::Format('UI:Search:Criteria:Raw:FilteredOn', MetaModel::GetName($sClass));
}
catch (Exception $e)
{
}
}
}
}