Dry up date logic

Removes duplication between #next_tb_event_date and #next_ifp_event_date