mirror of
https://github.com/EGroupware/egroupware.git
synced 2024-11-23 08:23:12 +01:00
Some more fixes to the calendar. Also, will allow the user to select the interval for the day view.
This commit is contained in:
parent
d11e1c8274
commit
bab6416134
@ -42,6 +42,14 @@
|
|||||||
'int'
|
'int'
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
|
'delete_calendar' => Array(
|
||||||
|
'in' => Array(
|
||||||
|
'int'
|
||||||
|
),
|
||||||
|
'out' => Array(
|
||||||
|
'int'
|
||||||
|
)
|
||||||
|
),
|
||||||
'update' => Array(
|
'update' => Array(
|
||||||
'in' => Array(
|
'in' => Array(
|
||||||
'array',
|
'array',
|
||||||
@ -56,12 +64,7 @@
|
|||||||
),
|
),
|
||||||
'store_to_cache' => Array(
|
'store_to_cache' => Array(
|
||||||
'in' => Array(
|
'in' => Array(
|
||||||
'int',
|
'struct'
|
||||||
'int',
|
|
||||||
'int',
|
|
||||||
'int',
|
|
||||||
'int',
|
|
||||||
'int'
|
|
||||||
),
|
),
|
||||||
'out' => Array(
|
'out' => Array(
|
||||||
'SOAPStruct'
|
'SOAPStruct'
|
||||||
@ -515,11 +518,11 @@
|
|||||||
{
|
{
|
||||||
$GLOBALS['phpgw']->preferences->read_repository();
|
$GLOBALS['phpgw']->preferences->read_repository();
|
||||||
$GLOBALS['phpgw']->preferences->add('calendar','weekdaystarts',$HTTP_POST_VARS['prefs']['weekdaystarts']);
|
$GLOBALS['phpgw']->preferences->add('calendar','weekdaystarts',$HTTP_POST_VARS['prefs']['weekdaystarts']);
|
||||||
$GLOBALS['phpgw']->preferences->add('calendar','workdaystarts',$HTTP_POST_VARS['prefs']['workdaystarts']);
|
$GLOBALS['phpgw']->preferences->add('calendar','workdaystarts',intval($HTTP_POST_VARS['prefs']['workdaystarts']));
|
||||||
$GLOBALS['phpgw']->preferences->add('calendar','workdayends',$HTTP_POST_VARS['prefs']['workdayends']);
|
$GLOBALS['phpgw']->preferences->add('calendar','workdayends',intval($HTTP_POST_VARS['prefs']['workdayends']));
|
||||||
$GLOBALS['phpgw']->preferences->add('calendar','defaultcalendar',$HTTP_POST_VARS['prefs']['defaultcalendar']);
|
$GLOBALS['phpgw']->preferences->add('calendar','defaultcalendar',$HTTP_POST_VARS['prefs']['defaultcalendar']);
|
||||||
$GLOBALS['phpgw']->preferences->add('calendar','defaultfilter',$HTTP_POST_VARS['prefs']['defaultfilter']);
|
$GLOBALS['phpgw']->preferences->add('calendar','defaultfilter',$HTTP_POST_VARS['prefs']['defaultfilter']);
|
||||||
$GLOBALS['phpgw']->preferences->add('calendar','interval',$HTTP_POST_VARS['prefs']['interval']);
|
$GLOBALS['phpgw']->preferences->add('calendar','interval',intval($HTTP_POST_VARS['prefs']['interval']));
|
||||||
if ($HTTP_POST_VARS['prefs']['mainscreen_showevents'] == True)
|
if ($HTTP_POST_VARS['prefs']['mainscreen_showevents'] == True)
|
||||||
{
|
{
|
||||||
$GLOBALS['phpgw']->preferences->add('calendar','mainscreen_showevents',$HTTP_POST_VARS['prefs']['mainscreen_showevents']);
|
$GLOBALS['phpgw']->preferences->add('calendar','mainscreen_showevents',$HTTP_POST_VARS['prefs']['mainscreen_showevents']);
|
||||||
@ -1133,8 +1136,20 @@
|
|||||||
} // end for loop
|
} // end for loop
|
||||||
} // end function
|
} // end function
|
||||||
|
|
||||||
function store_to_cache($syear,$smonth,$sday,$eyear=0,$emonth=0,$eday=0)
|
function store_to_cache($params)
|
||||||
{
|
{
|
||||||
|
if(!is_array($params))
|
||||||
|
{
|
||||||
|
return False;
|
||||||
|
}
|
||||||
|
|
||||||
|
$syear = $params['syear'];
|
||||||
|
$smonth = $params['smonth'];
|
||||||
|
$sday = $params['sday'];
|
||||||
|
$eyear = (isset($params['eyear'])?$params['eyear']:0);
|
||||||
|
$emonth = (isset($params['emonth'])?$params['emonth']:0);
|
||||||
|
$eday = (isset($params['eday'])?$params['eday']:0);
|
||||||
|
|
||||||
if(!$eyear && !$emonth && !$eday)
|
if(!$eyear && !$emonth && !$eday)
|
||||||
{
|
{
|
||||||
$edate = mktime(23,59,59,$smonth + 1,$sday + 1,$syear);
|
$edate = mktime(23,59,59,$smonth + 1,$sday + 1,$syear);
|
||||||
@ -1235,7 +1250,12 @@
|
|||||||
$this->check_repeating_events($date);
|
$this->check_repeating_events($date);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $this->cached_events;
|
for($j=date('Ymd',mktime(0,0,0,$smonth,$sday,$syear)),$k=0;$j<=date('Ymd',mktime(0,0,0,$emonth,$eday,$eyear));$k++,$j=date('Ymd',mktime(0,0,0,$smonth,$sday + $k,$syear)))
|
||||||
|
{
|
||||||
|
$retval[$j] = $this->cached_events[$j];
|
||||||
|
}
|
||||||
|
return $retval;
|
||||||
|
// return $this->cached_events;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Begin Appsession Data */
|
/* Begin Appsession Data */
|
||||||
|
@ -26,6 +26,7 @@
|
|||||||
var $holiday_color;
|
var $holiday_color;
|
||||||
|
|
||||||
var $debug = False;
|
var $debug = False;
|
||||||
|
// var $debug = True;
|
||||||
|
|
||||||
var $cat_id;
|
var $cat_id;
|
||||||
|
|
||||||
@ -653,14 +654,14 @@
|
|||||||
$str = '';
|
$str = '';
|
||||||
for ($i=0; $i<24; $i++)
|
for ($i=0; $i<24; $i++)
|
||||||
{
|
{
|
||||||
$str .= '<option value="'.$i.'"'.($this->bo->prefs['calendar']['workdaystarts']==$i?' selected':'').'>'.$phpgw->common->formattime($i,'00').'</option>'."\n";
|
$str .= '<option value="'.$i.'"'.($this->bo->prefs['calendar']['workdaystarts']==$i?' selected':'').'>'.$GLOBALS['phpgw']->common->formattime($i,'00').'</option>'."\n";
|
||||||
}
|
}
|
||||||
$this->display_item($p,lang('work day starts on'),'<select name="prefs[workdaystarts]">'."\n".$str.'</select>'."\n");
|
$this->display_item($p,lang('work day starts on'),'<select name="prefs[workdaystarts]">'."\n".$str.'</select>'."\n");
|
||||||
|
|
||||||
$str = '';
|
$str = '';
|
||||||
for ($i=0; $i<24; $i++)
|
for ($i=0; $i<24; $i++)
|
||||||
{
|
{
|
||||||
$str .= '<option value="'.$i.'"'.($this->bo->prefs['calendar']['workdayends']==$i?' selected':'').'>'.$phpgw->common->formattime($i,'00').'</option>';
|
$str .= '<option value="'.$i.'"'.($this->bo->prefs['calendar']['workdayends']==$i?' selected':'').'>'.$GLOBALS['phpgw']->common->formattime($i,'00').'</option>';
|
||||||
}
|
}
|
||||||
$this->display_item($p,lang('work day ends on'),'<select name="prefs[workdayends]">'."\n".$str.'</select>'."\n");
|
$this->display_item($p,lang('work day ends on'),'<select name="prefs[workdayends]">'."\n".$str.'</select>'."\n");
|
||||||
|
|
||||||
@ -891,7 +892,16 @@
|
|||||||
}
|
}
|
||||||
$last_cell = $intervals_per_day * $days - 1;
|
$last_cell = $intervals_per_day * $days - 1;
|
||||||
|
|
||||||
$this->bo->store_to_cache($this->bo->year,$this->bo->month,1,0,0,1);
|
$this->bo->store_to_cache(
|
||||||
|
Array(
|
||||||
|
'syear' => $this->bo->year,
|
||||||
|
'smonth' => $this->bo->month,
|
||||||
|
'sday' => 1,
|
||||||
|
'eyear' => 0,
|
||||||
|
'emonth' => 0,
|
||||||
|
'eday' => 1
|
||||||
|
)
|
||||||
|
);
|
||||||
$firstday = intval(date('Ymd',mktime(0,0,0,$this->bo->month,1,$this->bo->year)));
|
$firstday = intval(date('Ymd',mktime(0,0,0,$this->bo->month,1,$this->bo->year)));
|
||||||
$lastday = intval(date('Ymd',mktime(0,0,0,$this->bo->month + 1,0,$this->bo->year)));
|
$lastday = intval(date('Ymd',mktime(0,0,0,$this->bo->month + 1,0,$this->bo->year)));
|
||||||
|
|
||||||
@ -1934,7 +1944,13 @@
|
|||||||
{
|
{
|
||||||
global $GLOBALS;
|
global $GLOBALS;
|
||||||
|
|
||||||
$this->bo->store_to_cache($year,$month,1);
|
$this->bo->store_to_cache(
|
||||||
|
Array(
|
||||||
|
'syear' => $year,
|
||||||
|
'smonth' => $month,
|
||||||
|
'sday' => 1
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
$monthstart = intval(date('Ymd',mktime(0,0,0,$month ,1,$year)));
|
$monthstart = intval(date('Ymd',mktime(0,0,0,$month ,1,$year)));
|
||||||
$monthend = intval(date('Ymd',mktime(0,0,0,$month + 1,0,$year)));
|
$monthend = intval(date('Ymd',mktime(0,0,0,$month + 1,0,$year)));
|
||||||
@ -2028,7 +2044,13 @@
|
|||||||
for($i=0;$i<$counter;$i++)
|
for($i=0;$i<$counter;$i++)
|
||||||
{
|
{
|
||||||
$this->so->owner = $owners_array[$i];
|
$this->so->owner = $owners_array[$i];
|
||||||
$this->bo->store_to_cache($year,$month,1);
|
$this->bo->store_to_cache(
|
||||||
|
Array(
|
||||||
|
'syear' => $year,
|
||||||
|
'smonth' => $month,
|
||||||
|
'sday' => 1
|
||||||
|
)
|
||||||
|
);
|
||||||
$p->set_var('day_events',$this->display_week($start,True,$cellcolor,$display_name,$owners_array[$i]));
|
$p->set_var('day_events',$this->display_week($start,True,$cellcolor,$display_name,$owners_array[$i]));
|
||||||
$p->parse('row','event',True);
|
$p->parse('row','event',True);
|
||||||
}
|
}
|
||||||
@ -2265,7 +2287,17 @@
|
|||||||
$month = $param['month'];
|
$month = $param['month'];
|
||||||
$day = $param['day'];
|
$day = $param['day'];
|
||||||
|
|
||||||
$this->bo->store_to_cache($year,$month,$day,$year,$month,$day + 7);
|
$this->bo->store_to_cache(
|
||||||
|
Array(
|
||||||
|
'syear' => $year,
|
||||||
|
'smomth' => $month,
|
||||||
|
'sday' => $day,
|
||||||
|
'eyear' => $year,
|
||||||
|
'emonth' => $month,
|
||||||
|
// 'eday' => $day + 7
|
||||||
|
'eday' => $day
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
$p = CreateObject('phpgwapi.Template',$this->template_dir);
|
$p = CreateObject('phpgwapi.Template',$this->template_dir);
|
||||||
$p->set_unknowns('keep');
|
$p->set_unknowns('keep');
|
||||||
@ -2290,14 +2322,19 @@
|
|||||||
$this->bo->prefs['calendar']['workdayends'] = 16;
|
$this->bo->prefs['calendar']['workdayends'] = 16;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if($this->debug)
|
||||||
|
{
|
||||||
|
echo "Interval set to : ".intval($this->bo->prefs['calendar']['interval'])."<br>\n";
|
||||||
|
}
|
||||||
|
|
||||||
$GLOBALS['phpgw']->browser->browser();
|
$GLOBALS['phpgw']->browser->browser();
|
||||||
if($GLOBALS['phpgw']->browser->get_agent() == 'MOZILLA')
|
if($GLOBALS['phpgw']->browser->get_agent() == 'MOZILLA')
|
||||||
{
|
{
|
||||||
$time_width = ($this->bo->prefs['common']['time_format'] == '12'?12:8);
|
$time_width = (intval($this->bo->prefs['common']['time_format']) == 12?12:8);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$time_width = ($this->bo->prefs['common']['time_format'] == '12'?10:7);
|
$time_width = (intval($this->bo->prefs['common']['time_format']) == 12?10:7);
|
||||||
}
|
}
|
||||||
$var = Array(
|
$var = Array(
|
||||||
'time_width' => $time_width,
|
'time_width' => $time_width,
|
||||||
@ -2311,7 +2348,11 @@
|
|||||||
|
|
||||||
for ($i=0;$i<24;$i++)
|
for ($i=0;$i<24;$i++)
|
||||||
{
|
{
|
||||||
$rowspan_arr[$i] = 0;
|
for($j=0;$j<(60 / intval($this->bo->prefs['calendar']['interval']));$j++)
|
||||||
|
{
|
||||||
|
$rowspan_arr[$i][$j] = 0;
|
||||||
|
$time[$ind][$j] = '';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$date_to_eval = sprintf("%04d%02d%02d",$year,$month,$day);
|
$date_to_eval = sprintf("%04d%02d%02d",$year,$month,$day);
|
||||||
@ -2319,12 +2360,18 @@
|
|||||||
$time = Array();
|
$time = Array();
|
||||||
|
|
||||||
$daily = $this->bo->set_week_array($this->bo->datetime->get_weekday_start($year, $month, $day),$GLOBALS['phpgw_info']['theme']['row_on'],True);
|
$daily = $this->bo->set_week_array($this->bo->datetime->get_weekday_start($year, $month, $day),$GLOBALS['phpgw_info']['theme']['row_on'],True);
|
||||||
//echo "Date to Eval : ".$date_to_eval."<br>\n";
|
if($this->debug)
|
||||||
|
{
|
||||||
|
echo "Date to Eval : ".$date_to_eval."<br>\n";
|
||||||
|
}
|
||||||
if($daily[$date_to_eval]['appts'])
|
if($daily[$date_to_eval]['appts'])
|
||||||
{
|
{
|
||||||
$events = $this->bo->cached_events[$date_to_eval];
|
$events = $this->bo->cached_events[$date_to_eval];
|
||||||
$c_events = count($events);
|
$c_events = count($events);
|
||||||
//echo "Date : ".$date_to_eval." Count : ".$c_events."<br>\n";
|
if($this->debug)
|
||||||
|
{
|
||||||
|
echo "Date : ".$date_to_eval." Count : ".$c_events."<br>\n";
|
||||||
|
}
|
||||||
for($i=0;$i<$c_events;$i++)
|
for($i=0;$i<$c_events;$i++)
|
||||||
{
|
{
|
||||||
// $event = $events[$i];
|
// $event = $events[$i];
|
||||||
@ -2335,51 +2382,64 @@
|
|||||||
if($events[$i]['end']['mday'] > $day)
|
if($events[$i]['end']['mday'] > $day)
|
||||||
{
|
{
|
||||||
$ind = 99;
|
$ind = 99;
|
||||||
|
$interval_start = 0;
|
||||||
}
|
}
|
||||||
elseif($events[$i]['end']['mday'] == $day)
|
elseif($events[$i]['end']['mday'] == $day)
|
||||||
{
|
{
|
||||||
$ind = 0;
|
$ind = 0;
|
||||||
|
$interval_start = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif($events[$i]['start']['mday'] == $day)
|
elseif($events[$i]['start']['mday'] == $day)
|
||||||
{
|
{
|
||||||
$ind = intval($events[$i]['start']['hour']);
|
$ind = intval($events[$i]['start']['hour']);
|
||||||
|
$interval_start = intval($events[$i]['start']['min'] / intval($this->bo->prefs['calendar']['interval']));
|
||||||
|
if($this->debug)
|
||||||
|
{
|
||||||
|
echo 'Start Time Minutes : '.$events[$i]['start']['min']."<br>\n";
|
||||||
|
echo 'Interval : '.$interval_start."<br>\n";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$ind = intval($events[$i]['start']['hour']);
|
$ind = intval($events[$i]['start']['hour']);
|
||||||
|
$interval_start = intval($events[$i]['start']['min'] / intval($this->bo->prefs['calendar']['interval']));
|
||||||
}
|
}
|
||||||
|
|
||||||
if($ind < (int)$this->bo->prefs['calendar']['workdaystarts'] || $ind > (int)$this->bo->prefs['calendar']['workdayends'])
|
if($ind < (int)$this->bo->prefs['calendar']['workdaystarts'] || $ind > (int)$this->bo->prefs['calendar']['workdayends'])
|
||||||
{
|
{
|
||||||
$ind = 99;
|
$ind = 99;
|
||||||
|
$interval_start = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!@$time[$ind])
|
$time[$ind][$interval_start] .= $this->link_to_entry($events[$i],$month,$day,$year);
|
||||||
{
|
|
||||||
$time[$ind] = '';
|
|
||||||
}
|
|
||||||
|
|
||||||
$time[$ind] .= $this->link_to_entry($events[$i],$month,$day,$year);
|
|
||||||
|
|
||||||
$starttime = $this->bo->maketime($events[$i]['start']);
|
$starttime = $this->bo->maketime($events[$i]['start']);
|
||||||
$endtime = $this->bo->maketime($events[$i]['end']);
|
$endtime = $this->bo->maketime($events[$i]['end']);
|
||||||
|
|
||||||
if ($starttime <> $endtime)
|
if ($starttime <> $endtime)
|
||||||
{
|
{
|
||||||
$rowspan = (int)(($endtime - $starttime) / 3600);
|
$rowspan = intval(($endtime - $starttime) / (60 * intval($this->bo->prefs['calendar']['interval'])));
|
||||||
$mins = (int)((($endtime - $starttime) / 60) % 60);
|
$mins = (int)((($endtime - $starttime) / 60) % 60);
|
||||||
|
|
||||||
if ($mins <> 0)
|
if ($mins <> 0 && $mins < intval(60 / intval($this->bo->prefs['calendar']['interval'])))
|
||||||
{
|
{
|
||||||
$rowspan += 1;
|
$rowspan += 1;
|
||||||
}
|
}
|
||||||
|
if($this->debug)
|
||||||
if ($rowspan > $rowspan_arr[$ind] && $rowspan > 1)
|
|
||||||
{
|
{
|
||||||
$rowspan_arr[$ind] = $rowspan;
|
echo "Rowspan being set to : ".$rowspan."<br>\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($rowspan > $rowspan_arr[$ind][$interval_start] && $rowspan > 1)
|
||||||
|
{
|
||||||
|
$rowspan_arr[$ind][$interval_start] = $rowspan;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if($this->debug)
|
||||||
|
{
|
||||||
|
echo 'Time : '.$GLOBALS['phpgw']->common->show_date($this->bo->maketime($events[$i]['start']) - $this->bo->datetime->tz_offset).' - '.$GLOBALS['phpgw']->common->show_date($this->bo->maketime($events[$i]['end']) - $this->bo->datetime->tz_offset).' : Start : '.$ind.' : Interval # : '.$interval_start."<br>\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2387,31 +2447,34 @@
|
|||||||
// squish events that use the same cell into the same cell.
|
// squish events that use the same cell into the same cell.
|
||||||
// For example, an event from 8:00-9:15 and another from 9:30-9:45 both
|
// For example, an event from 8:00-9:15 and another from 9:30-9:45 both
|
||||||
// want to show up in the 8:00-9:59 cell.
|
// want to show up in the 8:00-9:59 cell.
|
||||||
$rowspan = 0;
|
// $rowspan = 0;
|
||||||
$last_row = -1;
|
// $last_row = -1;
|
||||||
for ($i=0;$i<24;$i++)
|
// for ($i=0;$i<24;$i++)
|
||||||
{
|
// {
|
||||||
if ($rowspan > 1)
|
// for($j=0;$j<(60 / intval($this->bo->prefs['calendar']['interval']));$j++)
|
||||||
{
|
// {
|
||||||
if (isset($time[$i]) && strlen($time[$i]) > 0)
|
// if ($rowspan > 1)
|
||||||
{
|
// {
|
||||||
$rowspan_arr[$last_row] += $rowspan_arr[$i];
|
// if (isset($time[$i][$j]) && strlen($time[$i]) > 0)
|
||||||
if ($rowspan_arr[$i] <> 0)
|
// {
|
||||||
{
|
// $rowspan_arr[$last_row] += $rowspan_arr[$i];
|
||||||
$rowspan_arr[$last_row] -= 1;
|
// if ($rowspan_arr[$i] <> 0)
|
||||||
}
|
// {
|
||||||
$time[$last_row] .= $time[$i];
|
// $rowspan_arr[$last_row] -= 1;
|
||||||
$time[$i] = '';
|
// }
|
||||||
$rowspan_arr[$i] = 0;
|
// $time[$last_row] .= $time[$i];
|
||||||
}
|
// $time[$i] = '';
|
||||||
$rowspan--;
|
// $rowspan_arr[$i] = 0;
|
||||||
}
|
// }
|
||||||
elseif ($rowspan_arr[$i] > 1)
|
// $rowspan--;
|
||||||
{
|
// }
|
||||||
$rowspan = $rowspan_arr[$i];
|
// elseif ($rowspan_arr[$i] > 1)
|
||||||
$last_row = $i;
|
// {
|
||||||
}
|
// $rowspan = $rowspan_arr[$i];
|
||||||
}
|
// $last_row = $i;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
$holiday_names = $daily[$date_to_eval]['holidays'];
|
$holiday_names = $daily[$date_to_eval]['holidays'];
|
||||||
if(!$holiday_names)
|
if(!$holiday_names)
|
||||||
@ -2423,14 +2486,15 @@
|
|||||||
$bgcolor = $GLOBALS['phpgw_info']['theme']['bg04'];
|
$bgcolor = $GLOBALS['phpgw_info']['theme']['bg04'];
|
||||||
while(list($index,$name) = each($holiday_names))
|
while(list($index,$name) = each($holiday_names))
|
||||||
{
|
{
|
||||||
$time[99] = '<center>'.$name.'</center>'.$time[99];
|
$time[99][0] = '<center>'.$name.'</center>'.$time[99][0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isset($time[99]) && strlen($time[99]) > 0)
|
// if (isset($time[99]) && strlen($time[99]) > 0)
|
||||||
|
if (isset($time[99][0]))
|
||||||
{
|
{
|
||||||
$var = Array(
|
$var = Array(
|
||||||
'event' => $time[99],
|
'event' => $time[99][0],
|
||||||
'bgcolor' => $bgcolor
|
'bgcolor' => $bgcolor
|
||||||
);
|
);
|
||||||
$this->output_template_array($p,'item','day_event',$var);
|
$this->output_template_array($p,'item','day_event',$var);
|
||||||
@ -2447,22 +2511,26 @@
|
|||||||
$rowspan = 0;
|
$rowspan = 0;
|
||||||
for ($i=(int)$this->bo->prefs['calendar']['workdaystarts'];$i<=(int)$this->bo->prefs['calendar']['workdayends'];$i++)
|
for ($i=(int)$this->bo->prefs['calendar']['workdaystarts'];$i<=(int)$this->bo->prefs['calendar']['workdayends'];$i++)
|
||||||
{
|
{
|
||||||
$dtime = $this->bo->build_time_for_display($i * 10000);
|
for($j=0;$j<(60 / intval($this->bo->prefs['calendar']['interval']));$j++)
|
||||||
|
{
|
||||||
|
$dtime = $this->bo->build_time_for_display(($i * 10000) + (($j *intval($this->bo->prefs['calendar']['interval'])) * 100));
|
||||||
$p->set_var('extras','');
|
$p->set_var('extras','');
|
||||||
$p->set_var('event',' ');
|
$p->set_var('event',' ');
|
||||||
if ($rowspan > 1)
|
if ($rowspan > 1)
|
||||||
{
|
{
|
||||||
// this might mean there's an overlap, or it could mean one event
|
// this might mean there's an overlap, or it could mean one event
|
||||||
// ends at 11:15 and another starts at 11:30.
|
// ends at 11:15 and another starts at 11:30.
|
||||||
if (isset($time[$i]) && strlen($time[$i]))
|
// if (isset($time[$i]) && strlen($time[$i]))
|
||||||
|
if (isset($time[$i][$j]))
|
||||||
{
|
{
|
||||||
$p->set_var('event',$time[$i]);
|
$p->set_var('event',$time[$i][$j]);
|
||||||
$p->set_var('bgcolor',$GLOBALS['phpgw']->nextmatchs->alternate_row_color());
|
$p->set_var('bgcolor',$GLOBALS['phpgw']->nextmatchs->alternate_row_color());
|
||||||
$p->parse('item','day_event',False);
|
$p->parse('item','day_event',False);
|
||||||
}
|
}
|
||||||
$rowspan--;
|
$rowspan--;
|
||||||
}
|
}
|
||||||
elseif (!isset($time[$i]) || !strlen($time[$i]))
|
// elseif (!isset($time[$i]) || !strlen($time[$i]))
|
||||||
|
elseif (!isset($time[$i][$j]))
|
||||||
{
|
{
|
||||||
$p->set_var('event',' ');
|
$p->set_var('event',' ');
|
||||||
$p->set_var('bgcolor',$GLOBALS['phpgw']->nextmatchs->alternate_row_color());
|
$p->set_var('bgcolor',$GLOBALS['phpgw']->nextmatchs->alternate_row_color());
|
||||||
@ -2470,12 +2538,12 @@
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$rowspan = intval($rowspan_arr[$i]);
|
$rowspan = intval($rowspan_arr[$i][$j]);
|
||||||
if ($rowspan > 1)
|
if ($rowspan > 1)
|
||||||
{
|
{
|
||||||
$p->set_var('extras',' rowspan="'.$rowspan.'"');
|
$p->set_var('extras',' rowspan="'.$rowspan.'"');
|
||||||
}
|
}
|
||||||
$p->set_var('event',$time[$i]);
|
$p->set_var('event',$time[$i][$j]);
|
||||||
$p->set_var('bgcolor',$GLOBALS['phpgw']->nextmatchs->alternate_row_color());
|
$p->set_var('bgcolor',$GLOBALS['phpgw']->nextmatchs->alternate_row_color());
|
||||||
$p->parse('item','day_event',False);
|
$p->parse('item','day_event',False);
|
||||||
}
|
}
|
||||||
@ -2506,6 +2574,7 @@
|
|||||||
$p->parse('row','day_row',True);
|
$p->parse('row','day_row',True);
|
||||||
$p->set_var('event','');
|
$p->set_var('event','');
|
||||||
$p->set_var('item','');
|
$p->set_var('item','');
|
||||||
|
}
|
||||||
} // end for
|
} // end for
|
||||||
return $p->fp('out','day');
|
return $p->fp('out','day');
|
||||||
} // end function
|
} // end function
|
||||||
@ -2592,7 +2661,16 @@
|
|||||||
$this->bo->cached_events = Array();
|
$this->bo->cached_events = Array();
|
||||||
$this->bo->owner = $part;
|
$this->bo->owner = $part;
|
||||||
$this->so->owner = $part;
|
$this->so->owner = $part;
|
||||||
$this->bo->store_to_cache($date['year'],$date['month'],$date['day'],0,0,$date['day'] + 1);
|
$this->bo->store_to_cache(
|
||||||
|
Array(
|
||||||
|
'syear' => $date['year'],
|
||||||
|
'smonth' => $date['month'],
|
||||||
|
'sday' => $date['day'],
|
||||||
|
'eyear' => 0,
|
||||||
|
'emonth' => 0,
|
||||||
|
'eday' => $date['day'] + 1
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
if(!$this->bo->cached_events[$date['full']])
|
if(!$this->bo->cached_events[$date['full']])
|
||||||
{
|
{
|
||||||
@ -2679,10 +2757,6 @@
|
|||||||
{
|
{
|
||||||
$event = $param['event'];
|
$event = $param['event'];
|
||||||
}
|
}
|
||||||
if(isset($param['cd']))
|
|
||||||
{
|
|
||||||
$cd = $param['cd'];
|
|
||||||
}
|
|
||||||
|
|
||||||
$hourformat = substr($this->bo->users_timeformat,0,1);
|
$hourformat = substr($this->bo->users_timeformat,0,1);
|
||||||
|
|
||||||
@ -2708,12 +2782,11 @@
|
|||||||
$vars = Array(
|
$vars = Array(
|
||||||
'font' => $GLOBALS['phpgw_info']['theme']['font'],
|
'font' => $GLOBALS['phpgw_info']['theme']['font'],
|
||||||
'bg_color' => $GLOBALS['phpgw_info']['theme']['bg_text'],
|
'bg_color' => $GLOBALS['phpgw_info']['theme']['bg_text'],
|
||||||
'calendar_action' => ($event->id?lang('Calendar - Edit'):lang('Calendar - Add')),
|
'calendar_action' => ($event['id']?lang('Calendar - Edit'):lang('Calendar - Add')),
|
||||||
/* 'action_url' => $GLOBALS['phpgw']->link('/index.php','menuaction=calendar.bocalendar.'.($event['id']?'update':'add')), */
|
|
||||||
'action_url' => $GLOBALS['phpgw']->link('/index.php','menuaction=calendar.bocalendar.update'),
|
'action_url' => $GLOBALS['phpgw']->link('/index.php','menuaction=calendar.bocalendar.update'),
|
||||||
'common_hidden' => '<input type="hidden" name="cal[id]" value="'.$event['id'].'">'."\n"
|
'common_hidden' => '<input type="hidden" name="cal[id]" value="'.$event['id'].'">'."\n"
|
||||||
. '<input type="hidden" name="cal[owner]" value="'.$this->bo->owner.'">'."\n",
|
. '<input type="hidden" name="cal[owner]" value="'.$this->bo->owner.'">'."\n",
|
||||||
'errormsg' => ($cd?$GLOBALS['phpgw']->common->check_code($cd):'')
|
'errormsg' => ($params['cd']?$GLOBALS['phpgw']->common->check_code($params['cd']):'')
|
||||||
);
|
);
|
||||||
$p->set_var($vars);
|
$p->set_var($vars);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user