steffen: server/kolab-resource-handlers/kolab-resource-handlers/freebusy freebusy.class.php, 1.11, 1.12
cvs at intevation.de
cvs at intevation.de
Wed Oct 27 16:32:04 CEST 2004
Author: steffen
Update of /kolabrepository/server/kolab-resource-handlers/kolab-resource-handlers/freebusy
In directory doto:/tmp/cvs-serv25613/kolab-resource-handlers/freebusy
Modified Files:
freebusy.class.php
Log Message:
more recurrence improvements
Index: freebusy.class.php
===================================================================
RCS file: /kolabrepository/server/kolab-resource-handlers/kolab-resource-handlers/freebusy/freebusy.class.php,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -d -r1.11 -r1.12
--- freebusy.class.php 26 Oct 2004 13:44:21 -0000 1.11
+++ freebusy.class.php 27 Oct 2004 14:32:02 -0000 1.12
@@ -177,6 +177,41 @@
}
case 'monthly':
// TODO
+ $interval = (int)$rec['interval'];
+ if( !$interval ) $interval = 1;
+ $count = 0;
+ for( $t = $initial_start; $t < $endstamp; $t = strtotime( "+$interval months", $t) ) {
+ if( $rec['type'] == 'daynumber') {
+ foreach( $rec['daynumber'] as $dayno ) {
+ $tmp = strtotime( "+$dayno days", $t);
+ if( $tmp < $endstamp ) {
+ myLog("Adding recurrence $tmp -> ".($tmp+$duration), RM_LOG_DEBUG );
+ $vFb->addBusyPeriod('BUSY', $tmp, null, $duration, $extra);
+ } else {
+ break;
+ }
+ }
+ $count++;
+ } else if( $rec['type'] == 'weekday' ) {
+ for( $i = 0; $i < count($rec['daynumber']); $i++ ) {
+ $dayno = $rec['daynumber'][$i];
+ $wday = $rec['day'][$i];
+ $tmp = strtotime( "+$dayno $wday", $t);
+ if( $tmp < $endstamp ) {
+ myLog("Adding recurrence $tmp -> ".($tmp+$duration), RM_LOG_DEBUG );
+ $vFb->addBusyPeriod('BUSY', $tmp, null, $duration, $extra);
+ } else {
+ break;
+ }
+ }
+ $count++;
+ }
+ if( $rangetype == 'number' && $count > $range ) {
+ break;
+ } else if( $rangetype == 'date' && $t > strtotime( '+1 day',$range ) ) {
+ break;
+ }
+ }
case 'yearly':
// TODO
}
More information about the commits
mailing list