# Older browsers do not support ISO8601 (JSON) timestamps in Date.parse supportsISO8601 = not isNaN Date.parse(“2011-01-01T12:00:00-05:00”)

LocalTime.parseDate = (dateString) ->

dateString = dateString.toString()
dateString = reformatDateString(dateString) unless supportsISO8601
new Date Date.parse(dateString)

iso8601Pattern = /^(d{4})-(d{2})-(d{2})T(d{2}):(d{2}):(d{2})(Z|?[d:]+)$/

reformatDateString = (dateString) ->

if matches = dateString.match(iso8601Pattern)
  [_, year, month, day, hour, minute, second, zone] = matches
  offset = zone.replace(":", "") if zone isnt "Z"
  "#{year}/#{month}/#{day} #{hour}:#{minute}:#{second} GMT#{[offset]}"