       @setState({showingPeriods: not (commonDates and hasAllTaskings), savedTaskings: periods})
       TaskPlanActions.disableEmptyTaskings(planId)
 
+  getDefaultPlanDates: (periodId) ->
+    taskingOpensAt = TaskPlanStore.getOpensAt(@props.id, periodId)
+    if not taskingOpensAt or isNaN(taskingOpensAt.getTime())
+      taskingOpensAt = @getQueriedOpensAt()
+
+    taskingDueAt = TaskPlanStore.getDueAt(@props.id, periodId)
+    if not taskingDueAt or isNaN(taskingDueAt.getTime())
+      taskingDueAt = @getQueriedDueAt()
+
+    {taskingOpensAt, taskingDueAt}
+
+
   # this will be called whenever the course store loads, but won't if
   # the store has already finished loading by the time the component mounts
   bindUpdate: ->

    {id} = @props

    periodTasking = @getSavedTaskingFor(period.id)

    if ev.target.checked
      TaskPlanActions.enableTasking(@props.id, period.id,
        periodTasking.opens_at, periodTasking.due_at
      )
    else
      TaskPlanActions.disableTasking(@props.id, period.id)


    </BS.Row>

  renderEnabledTasking: (plan) ->
    {taskingOpensAt, taskingDueAt} = @getDefaultPlanDates(plan.id)

    <BS.Row key={plan.id} className="tasking-plan tutor-date-input">
      <BS.Col sm=4 md=3>
        <input
          id={"period-toggle-#{plan.id}"}
