Повторить календарь событий по будням, например, Google Calendar в php

Я создал календарь событий, который позволяет пользователю добавлять события. Добавление событий позволяет создавать ежедневные, еженедельные, ежемесячные (и ежегодные) события.

Ну, все работает GREAT, но если пользователь выбирает еженедельное мероприятие с днями (понедельник, tueday, среда …), это не сработает, мой код

function recurringEvents($type, $interval, $date) { $startdate = date('Ym-d', strtotime($date)); $day = explode('-', $startdate); $datetotime = mktime(0,0,0,$day[1], $day[2], $day[0]); $dates = array(); //If interval type is daily if($type == 'D') { for($i=1;$i<$interval-1;$i++) { $newdate = '+ '. $i .' day'; $dates[] = date('Ym-d', strtotime($newdate, $datetotime)); } } //If interval type is weekly if($type == 'W') { for($i=1;$i<$interval;$i++) { $newdate = '+ '. $i .' week'; $dates[] = date('Ym-d', strtotime($newdate, $datetotime)); } } //If interval type is monthly if($type == 'M') { for($i=1;$i<$interval;$i++) { $newdate = '+ '. $i .' month'; $dates[] = date('Ym-d', strtotime($newdate, $datetotime)); } } //If interval type is yearly if($type == 'Y') { for($i=1;$i<$interval;$i++) { $newdate = '+ '. $i .' year'; $dates[] = date('Ym-d', strtotime($newdate, $datetotime)); } } return $dates; } 

как сохранить определенные события недели, выбранные пользователем,

пример ввода пользователем,

 start date : 2-5-2014 end date : 2-5-2014 Repeats: : Weekly Repeat every: 2 weeks Repeat on: Sunday , Friday , Saturday Starts on: 2-5-2014 Ends: After 4 occurrencesOn Summary: Every 2 weeks on Sunday, Friday, Saturday, 4 times