MDL-41792 calendar: refactored the calendar blocks to support multiple calendar types