       @setCurrentDate(start)
 
     setCurrentDate: (d) ->
-      @updateFragment view_start: d.toISOString()
+      d.setHours(0, 0, 0, 0)
+      @updateFragment
+        view_start: d.toISOString()
+        replaceState: true
+
       $.publish('Calendar/currentDate', d)
 
     getCurrentDate: () ->

      data = @dataFromDocumentHash()
      if not data.view_start and @options?.viewStart
        data.view_start = @options.viewStart
        @updateFragment data
      if data.view_start
        date = $.fullCalendar.parseISO8601(data.view_start)
      else

        $.fudgeDateForProfileTimezone(new Date)

    setCurrentView: (view) ->
      @updateFragment
        view_name: view
        replaceState: !_.has(@dataFromDocumentHash(), 'view_name') # use replaceState if view_name wasn't set before

      @currentView = view
      userSettings.set('calendar_view', view)

