code: def manage(self, dateTimeString):
          
          dateTime = None
          dateTimeString = dateTimeString.replace('-', '/')
          
          _date_time_split = dateTimeString.split(' ') # [0] = date, [1] = time (if exists)
          _date = _date_time_split[0]
          _time = '00:00:00' # default
          if len(_date_time_split) > 1:
              _time = _date_time_split[1]
          
          if dateTimeString.find('/') == 4: # YYYY/MM/DD...
              dateList = _date.split('/') + _time.split(':')
              dateTime = datetime(*map(lambda x: int(x), dateList))
          elif 1 <= dateTimeString.find('/') <= 2: # MM/DD/YYYY or M/D?/YYYY
              _date_split = _date.split('/')
              dateList = [_date_split[2], _date_split[0], _date_split[1]] + _time.split(':')
              dateTime = datetime(*map(lambda x: int(x), dateList))
          if not dateTime:
              raise ValueError("unable to manage unsupported string format: %s"%(dateTimeString))
          
          return dateTime
docs: Return a Python datetime object based on the dateTimeString
          
          This will handle date times in the following formats:
              YYYY/MM/DD HH:MM:SS
              2014/11/05 21:47:28
              2014/11/5 21:47:28
              11/05/2014
              11/5/2014
              11/05/2014 16:28:00
              11/05/2014 16:28
              11/5/2014 16:28:00
              11/5/2014 16:28
          It can also handle these formats when using a - instead of a / for a 
          date separator.