[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Phpgroupware-cvs] CVS: calendar/inc class.uicalendar.inc.php,1.66.2.43,
From: |
Ralf Becker <address@hidden> |
Subject: |
[Phpgroupware-cvs] CVS: calendar/inc class.uicalendar.inc.php,1.66.2.43,1.66.2.44 |
Date: |
Sat, 16 Nov 2002 16:52:23 -0500 |
Update of /cvsroot/phpgroupware/calendar/inc
In directory subversions:/tmp/cvs-serv10965
Modified Files:
Tag: Version-0_9_14-branch
class.uicalendar.inc.php
Log Message:
fixed some bug & disadvantages in day-view:
1) corrected handling of multiple events in one interval-row (incorrect
html-cells because of rowspan and not omitted cells in next rows),
2) events ending and starting on same full hour (or timeinterval) are placed in
different rows now,
3) added rowspan for events starting before workday and ending in the workday,
4) added events after workday behind the workday (was in front)
Index: class.uicalendar.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/calendar/inc/class.uicalendar.inc.php,v
retrieving revision 1.66.2.43
retrieving revision 1.66.2.44
diff -C2 -r1.66.2.43 -r1.66.2.44
*** class.uicalendar.inc.php 16 Nov 2002 19:07:41 -0000 1.66.2.43
--- class.uicalendar.inc.php 16 Nov 2002 21:52:19 -0000 1.66.2.44
***************
*** 3426,3436 ****
if(($ind <
intval($this->bo->prefs['calendar']['workdaystarts'])) || ($ind >
intval($this->bo->prefs['calendar']['workdayends'])))
{
! $ind = 99;
$interval_start = 0;
}
if((($ind <> 99) && ($ind <> 0)) &&
(($starttime <> 0) && ($endtime <> 0)))
{
print_debug('IND before',$ind);
! if(($ind >=
date('H',$last_starttime)) && ($ind <= date('H',$last_endtime)))
{
$ind = $last_ind;
--- 3426,3437 ----
if(($ind <
intval($this->bo->prefs['calendar']['workdaystarts'])) || ($ind >
intval($this->bo->prefs['calendar']['workdayends'])))
{
! $ind = $ind <
intval($this->bo->prefs['calendar']['workdaystarts']) ? 0 : 99;
$interval_start = 0;
}
+
if((($ind <> 99) && ($ind <> 0)) &&
(($starttime <> 0) && ($endtime <> 0)))
{
print_debug('IND before',$ind);
! if($ind <=
date('H',$last_endtime-1)) // -1 to allow events to end on a full hour,
without blocking the next hour-slot
{
$ind = $last_ind;
***************
*** 3451,3455 ****
{
$rowspan =
$rowspan_arr[$ind][$interval_start];
! if($rowspan == 0)
{
$rowspan =
intval(($endtime - $starttime) / (60 *
intval($this->bo->prefs['calendar']['interval'])));
--- 3452,3456 ----
{
$rowspan =
$rowspan_arr[$ind][$interval_start];
! if($rowspan == 0 ||
$last_endtime <= $starttime)
{
$rowspan =
intval(($endtime - $starttime) / (60 *
intval($this->bo->prefs['calendar']['interval'])));
***************
*** 3459,3463 ****
$rowspan =
intval(($endtime - $last_starttime) / (60 *
intval($this->bo->prefs['calendar']['interval'])));
}
-
$mins = (int)((($endtime -
$starttime) / 60) % 60);
--- 3460,3463 ----
***************
*** 3469,3473 ****
print_debug('Rowspan being set
to',$rowspan);
! if ($rowspan >
$rowspan_arr[$ind][$interval_start] && $rowspan > 1)
{
$rowspan_arr[$ind][$interval_start] = $rowspan;
--- 3469,3473 ----
print_debug('Rowspan being set
to',$rowspan);
! if ($rowspan >
$rowspan_arr[$ind][$interval_start])
{
$rowspan_arr[$ind][$interval_start] = $rowspan;
***************
*** 3476,3480 ****
$last_ind = $ind;
$last_interval_start = $interval_start;
! $last_starttime = $starttime;
$last_endtime = $endtime;
print_debug('Time',$GLOBALS['phpgw']->common->show_date($this->bo->maketime($events[$i]['start'])
- $GLOBALS['phpgw']->datetime->tz_offset).' -
'.$GLOBALS['phpgw']->common->show_date($this->bo->maketime($events[$i]['end'])
- $GLOBALS['phpgw']->datetime->tz_offset));
--- 3476,3483 ----
$last_ind = $ind;
$last_interval_start = $interval_start;
! if ($rowspan <= 1)
! {
! $last_starttime = $starttime;
! }
$last_endtime = $endtime;
print_debug('Time',$GLOBALS['phpgw']->common->show_date($this->bo->maketime($events[$i]['start'])
- $GLOBALS['phpgw']->datetime->tz_offset).' -
'.$GLOBALS['phpgw']->common->show_date($this->bo->maketime($events[$i]['end'])
- $GLOBALS['phpgw']->datetime->tz_offset));
***************
*** 3504,3515 ****
while(list($index,$name) = each($holiday_names))
{
! $time[99][0] =
'<center>'.$name.'</center>'.$time[99][0];
}
}
! if (isset($time[99][0]))
{
! $var['event'] = $time[99][0];
!
$this->output_template_array($p,'item','day_event'.$row_to_print,$var);
--- 3507,3523 ----
while(list($index,$name) = each($holiday_names))
{
! $time[0][0] =
'<center>'.$name.'</center>'.$time[0][0];
}
}
! $rowspan = intval($rowspan_arr[0][0]);
! // events before workdaystart
! if (isset($time[0][0]))
{
! $var = array('event' => $time[0][0]);
! if ($rowspan > 1)
! {
! $var['extras'] = '
rowspan="'.$rowspan.'"';
! }
$this->output_template_array($p,'item','day_event'.$row_to_print,$var);
***************
*** 3523,3527 ****
$p->set_var('item','');
}
! $rowspan = 0;
for
($i=(int)$this->bo->prefs['calendar']['workdaystarts'];$i<=(int)$this->bo->prefs['calendar']['workdayends'];$i++)
{
--- 3531,3535 ----
$p->set_var('item','');
}
! // events between workdaystart and -end
for
($i=(int)$this->bo->prefs['calendar']['workdaystarts'];$i<=(int)$this->bo->prefs['calendar']['workdayends'];$i++)
{
***************
*** 3610,3613 ****
--- 3618,3636 ----
}
} // end for
+ // events after workdayend
+ if (isset($time[99][0]))
+ {
+ $var = array('event' => $time[99][0]);
+
$this->output_template_array($p,'item','day_event'.$row_to_print,$var);
+
+ $var = Array(
+ 'open_link' => '',
+ 'time' => ' ',
+ 'close_link' => ''
+ );
+
$this->output_template_array($p,'item','day_time',$var);
+ $p->parse('row','day_row',True);
+ $p->set_var('item','');
+ }
return $p->fp('out','day');
} // end function
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Phpgroupware-cvs] CVS: calendar/inc class.uicalendar.inc.php,1.66.2.43,1.66.2.44,
Ralf Becker <address@hidden> <=