Fix internal format of date and datetime fields

Use datetime object.
This commit is contained in:
Cédric Krier committed 2008-03-13 15:53:31 +01:00
1 parent 8f444b36e8
commit 793000630f
1 file changed
+18
@@ -1,5 +1,8 @@
from tryton.rpc import RPCProxy
import tryton.rpc as rpc
from tryton.common import DT_FORMAT, DHM_FORMAT, HM_FORMAT
import time
import datetime
class ModelField(object):
'''
@@ -117,6 +120,14 @@ class SelectionField(CharField):
class DateTimeField(CharField):
def set_client(self, model, value, test_state=True, force_change=False):
if value:
date = time.strptime(value, DHM_FORMAT)
value = datetime.datetime(date[0], date[1], date[2], date[3],
date[4], date[5])
return super(DateTimeField, self).set_client(model, value,
test_state=test_state, force_change=force_change)
def get_client(self, model):
value = super(DateTimeField, self).get_client(model)
return value and str(value) or False
@@ -124,6 +135,13 @@ class DateTimeField(CharField):
class DateField(CharField):
def set_client(self, model, value, test_state=True, force_change=False):
if value:
date = time.strptime(value, DT_FORMAT)
value = datetime.datetime(date[0], date[1], date[2])
return super(DateField, self).set_client(model, value,
test_state=test_state, force_change=force_change)
def get_client(self, model):
value = super(DateField, self).get_client(model)
return value and str(value) or False