тайм-фильтр: отдельно на каждый день (вкл воскр), одна пауза в день. Если пауза=0, значит она выкл. Код: extern string S1 = " DayOfWeek Filter"; extern bool monday = true; extern string monday_open = "01:00"; extern string monday_pause_start = "0"; extern string monday_pause_stop = "0"; extern string monday_close = "23:50"; extern bool tuesday = true; extern string tuesday_open = "00:00"; extern string tuesday_pause_start = "0"; extern string tuesday_pause_stop = "0"; extern string tuesday_close = "23:50"; extern bool wednesday = true; extern string wednesday_open = "00:00"; extern string wednesday_pause_start = "0"; extern string wednesday_pause_stop = "0"; extern string wednesday_close = "23:50"; extern bool thursday = true; extern string thursday_open = "00:00"; extern string thursday_pause_start = "0"; extern string thursday_pause_stop = "0"; extern string thursday_close = "23:50"; extern bool friday = false; extern string friday_open = "08:30"; extern string friday_pause_start = "15:30"; extern string friday_pause_stop = "17:55"; extern string friday_close = "21:35"; extern bool sunday = false; extern string sunday_open = "08:30"; extern string sunday_pause_start = "15:30"; extern string sunday_pause_stop = "17:55"; extern string sunday_close = "21:35"; ///////////////////////////////////////////////////////////////////////// bool IsTime() { switch(DayOfWeek()) { case 0: { return(sunday && IsNow(sunday_open,sunday_pause_start,sunday_pause_stop,sunday_close)); break; } case 1: { return(monday && IsNow(monday_open,monday_pause_start,monday_pause_stop,monday_close)); break; } case 2: { return(tuesday && IsNow(tuesday_open,tuesday_pause_start,tuesday_pause_stop,tuesday_close)); break; } case 3: { return(wednesday && IsNow(wednesday_open,wednesday_pause_start,wednesday_pause_stop,wednesday_close)); break; } case 4: { return(thursday && IsNow(thursday_open,thursday_pause_start,thursday_pause_stop,thursday_close)); break; } case 5: { return(friday && IsNow(friday_open,friday_pause_start,friday_pause_stop,friday_close)); break; } default:{ return(false); } } } bool IsNow(string open,string pause_start,string pause_stop,string close) { if((pause_start == "0")||((pause_start == open)&&(pause_stop == close))) { //no pause return((TimeCurrent() >= StrToTime(open)) && (TimeCurrent() = StrToTime(open)) && (TimeCurrent() = StrToTime(pause_stop)) && (TimeCurrent()