add checkin functionality