dátum tárolási/feldolgozási probléma

andrew képe

Sziasztok,

adott egy saját modul, amiben saját tartalom típust deklarálok.
a form api -val megvalósított beviteli mezők között van egy date típus.
ennek ugyebár tömbbel tudok értéket adni, tehát pl így:

<?php
'#default_value' => array('year' => 2007, 'month' => 2, 'day' => 15),
?>

úgy gondoltam, h ennek a tárolását a saját adatbázis táblámban timestamp -ként fogom kezelni és így amikor mentem (hook_insert()) akkor:

<?php
datefield=%d //amit a következő módon generálok:
mktime(0, 0, 0, $node->date_field['month'], $node->date_field['day'], $node->date_field['year'])
?>

megjelenítéskor ez kényelmes, mert egyszerűen ennyit kell csak csinálni:

<?php
echo format_date($node->date_field)
?>

ez a módszer teljesen jól működik ha
- új node -ot küldök be előzénet nélkül
- szerkesztem az adott node -ot előnézet nélkül
- listázva v. teljes oldalas nézetben jelenítem meg a node -ot

DE bármely esetben HA előnézetet nyomok, akkor elszáll
Fatal error: Unsupported operand types in /ott/ahol/van/includes/common.inc on line 1066
hibával.

Ez a format_date fv. $timestamp += $timezone sora.

Igazából érthető a dolog, mert jelen esetben egy tömböt kap (ugyebár az kell a form-on elhelyezkedő date -nek) nem pedig időbélyeget és ettől makkan meg a feldolgozás.

Kérdésem tehát az, hogy miként célszerű összehozni a tartalom típusokat és a tárolás formáját úgy, hogy az minden helyzetben megfeleljen a feldolgozás folyamatának ill. milyen más megközelítést javasolnátok?