Changeset 1741 for ZMS


Ignore:
Timestamp:
25.11.2011 21:33:35 (6 months ago)
Author:
zmsdev
Message:

isActive: OverflowError? - mktime argument out of range (requested by uni-bern) (21)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • ZMS/trunk/_objattrs.py

    r1715 r1741  
    2121from types import StringTypes 
    2222import ZPublisher.HTTPRequest 
     23import datetime 
    2324import string 
    2425import time 
     
    784785          elif key == 'attr_active_start': 
    785786            if value is not None: 
    786               dt = DateTime(time.mktime(value)) 
    787               b = b and dt.isPast() 
     787              try: 
     788                dt = DateTime(time.mktime(value)) 
     789                b = b and dt.isPast() 
     790              except: 
     791                # todo: consistent replacement of time by datetime 
     792                dtValue = datetime.datetime(value[0],value[1],value[2],value[3],value[4],value[5],value[6]) 
     793                b = b and datetime.datetime.now() > dtValue 
    788794          # End time. 
    789795          elif key == 'attr_active_end': 
    790796            if value is not None: 
    791               dt = DateTime(time.mktime(value)) 
    792               b = b and (dt.isFuture() or (dt.equalTo(dt.earliestTime()) and dt.latestTime().isFuture())) 
     797              try: 
     798                dt = DateTime(time.mktime(value)) 
     799                b = b and (dt.isFuture() or (dt.equalTo(dt.earliestTime()) and dt.latestTime().isFuture())) 
     800              except: 
     801                # todo: consistent replacement of time by datetime 
     802                dtValue = datetime.datetime(value[0],value[1],value[2],value[3],value[4],value[5],value[6]) 
     803                b = b and dtValue < datetime.datetime.now() 
    793804          if not b: break 
    794805      return b 
Note: See TracChangeset for help on using the changeset viewer.