Hi,
I found an issue in filters. If I have date filter on column and it has default filter value. The problem appears if I clear filter input manually to empty string "". Datagrid does not set default filter in this case and also hides the reset button. So I am not able to reset grid to default filter. Here is the code. I am using it with Nextras ORM.
$grid->addColumnDateTime('closed', "$cDomain.date")
->setRenderer( function ( $item ) use ( $cDomain ) {
/** @var Task $item */
$title = $this->translator->translate("$cDomain.$item->state");
return '<span title="' . $title . '">' . $item->closed->format( 'j. n. Y' ) . '</span>';
})
->setTemplateEscaping( FALSE )
->setSortable()
->setFilterDate()
->setCondition( function ($fluent, $value) {
Debugger::log($value);
/** @var \Nextras\Orm\Mapper\Dbal\DbalCollection $fluent */
$start = DateTime::createFromFormat( 'j. n. Y', $value)->setTime( 0, 0, 0 );
$end = DateTime::createFromFormat( 'j. n. Y', $value)->setTime( 23, 59, 59 );
$fluent->getQueryBuilder()
->from('tasks', 'tasks')
->andWhere( 'tasks.closed > %dt', $start )
->andWhere( 'tasks.closed < %dt', $end );
});
$defaultDate = (new DateTime())->modify('- 14 Day');
$grid->setDefaultFilter(['closed' => $defaultDate->format( 'j. n. Y' )]);
It is not fatal but it has to be fixed via session.
Hi,
I found an issue in filters. If I have date filter on column and it has default filter value. The problem appears if I clear filter input manually to empty string "". Datagrid does not set default filter in this case and also hides the reset button. So I am not able to reset grid to default filter. Here is the code. I am using it with Nextras ORM.
It is not fatal but it has to be fixed via session.