bool RecordingRule::SameTimeslot(RecordingRule& rule) { time_t starttime = StartTime(); time_t rStarttime = rule.StartTime(); switch( rule.Type() ) { case MythTimer::NotRecording: case MythTimer::SingleRecord: case MythTimer::OverrideRecord: case MythTimer::DontRecord: return rStarttime == starttime && rule.EndTime() == EndTime() && rule.ChanID() == ChanID(); case MythTimer::FindDailyRecord: case MythTimer::FindWeeklyRecord: case MythTimer::FindOneRecord: return rule.Title(false) == Title(false); case MythTimer::TimeslotRecord: return rule.Title(false) == Title(false) && daytime( &starttime) == daytime( &rStarttime ) && rule.ChanID() == ChanID(); case MythTimer::ChannelRecord: return rule.Title(false) == Title(false) && rule.ChanID() == ChanID(); //TODO: dup case MythTimer::AllRecord: return rule.Title(false) == Title(false);//TODO: dup case MythTimer::WeekslotRecord: return rule.Title(false) == Title(false) && daytime( &starttime) == daytime( &rStarttime ) && weekday( &starttime) == weekday( &rStarttime) && rule.ChanID() == ChanID(); } return false; }