‚LogicException‘ with message ‚Filter 'timezonedate‘ is not defined.'

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
dada-amater
Bronze Partner | 52
+
0
-

Ahoj kluci (a holky),

po updatu z nette 2.3 na nette 2.4 se nam v logu objevuje zahadna chyba:

LogicException: Uncaught exception 'LogicException' with message 'Filter 'timezonedate' is not defined.' in /srv/www/amateri.com/vendor/latte/latte/src/Latte/Runtime/FilterExecutor.php:133

Filtr timeZoneDate pouzivame pro prevod data pro konkretni casovou zonu napric celou aplikaci. Chyba se vyskytne jen nekolikrat za den napric sablonama, pritom filtr jinak normalne funguje (prumer 300req/sec).

Filtr je radne zaregistrovany jako dalsi filtry, u kterych zadne problemy v logu nejsou.

Filtr ma definici:

public static function timeZoneDate($time, $format = NULL)
{
	//...
}

Diky za jakoukoliv radu.

Pavel Kravčík
Člen | 1180
+
+1
-

Nemůže se stát, že místo datumu do toho vstoupí nějaký neplatný formát? Že u některých amatérů jsou špatná data a místo výjimky to vyhodí výjimku o tom, že nemůže vyhodit výjimku?

Víc informací by mělo být v laděnce.

CZechBoY
Člen | 3608
+
0
-

Jak ten filtr registrujes?

dada-amater
Bronze Partner | 52
+
0
-

Pavel Kravčík napsal(a):

Nemůže se stát, že místo datumu do toho vstoupí nějaký neplatný formát? Že u některých amatérů jsou špatná data a místo výjimky to vyhodí výjimku o tom, že nemůže vyhodit výjimku?

Víc informací by mělo být v laděnce.

Ve vygenerovane sablone to vola

LR\Filters::escapeHtmlText(call_user_func($this->filters->timezonedate, $event->time, "j.n.Y"))

$event urcite neni NULL a na druhy parametr nemam typovou kontrolu, ale null byt muze. Pokud tam dam NULL, tak to opravdu zarve. Drive to problem nedelalo, protoze jsme mel starsi Dibi, ktera nevracela datum jako Nette\DateTime|NULL, ale jako string. Moc dekuju za navedeni!

Update: filtr s NULL rval, protoze tam bylo:

if ($time === NULL) {
    return NULL;
}

A NULL filtr vracet samozrejme nemuze.

Editoval dada-amater (1. 2. 2017 12:54)