     @updateGroupedDurations(nextProps)
 
   groupDurations: (durations, viewingDuration, groupingDurations) ->
-    console.info('durations')
-    console.info(durations)
     durationsInView = _.chain(durations)
       .clone()
       # TODO these parts actually seem like they should be in flux
       .each(@setDuration(viewingDuration))
       .filter(@isInDuration(viewingDuration))
       .sortBy((plan) ->
-        -1 * plan.duration.start.valueOf()
+        -1 * plan.duration.length('days')
       )
       .value()
 

            plan: _.omit(plan, 'due_at', 'opens_at', 'duration', 'durationAsWeeks')
            index: counter[plan.id]

          previousDur = _.last(_.last(rangeData.plansByOverlaps))

          # Check this duration for overlap with the previously sorted duration
          # Adds this duration the the previous group of durations if there is overlap.
          # Otherwise, add this duration to a new group.
          currentOverlap = @_checkAndSetOverlaps(planForRange, previousDur, rangeData.plansByOverlaps)

          # set day height to fit the number of overlapping durations
          @_setDayHeightToMaxOverlaps(currentOverlap, rangeData)

      weekTopOffset = _.chain(dayHeights).first(index + 1).reduce((memo, current) ->
        memo + current
      ).value()

      _.each(range.plansByOverlaps, (plans) ->
        _.chain(plans)
          .sortBy((plan) ->
            -1 * plan.rangeDuration.start.valueOf()
          ).each((plan, order) ->
            plan.order = order + 1
            plan.weekTopOffset = weekTopOffset
          ).value()
      )
    )

