public function __getConditions(array $filter)
{
$conditions = [];
if (!empty($filter)) {
try {
$this['form']->setDefaults([Filter::ID => $filter]);
} catch (\Nette\InvalidArgumentException $e) {
$this->__triggerUserNotice($e->getMessage());
$filter = [];
if ($session = $this->getRememberSession()) {
$session->remove();
}
}
foreach ($filter as $column => $value) {
if ($component = $this->getFilter($column, FALSE)) {
if ($condition = $component->__getCondition($value)) {
$conditions[] = $condition;
}
} else {
$this->__triggerUserNotice("Filter with name '{$column}' does not exist.");
}
}
}
return $conditions;
}