Go to the source code of this file.
Namespaces | |
| namespace | dateplaner |
dateplaner includes personal an group specific date management developt for ilias3 and adapted also to ilias2 | |
Functions | |
| setNavigation ($timestamp, $rowSpan) | |
| void function setNavigation($timestamp,$rowSpan) set variables in the setNavigation of week | |
| setDateInTblHead ($timestamp) | |
| void function setDateInTblHead($timestamp) set the Stings for the date format in the week view at the table top | |
| getContent ($begin_ts, $end_ts, $DB) | |
| function getContent($begin_ts, $end_ts) get Content for the Week View from the sortdates functions | |
| setDatesInWeek ($date_ts, $Dates, $day_ts, $row_height, &$style) | |
| void function setDatesInWeek($date_ts, $Dates, $row_height, &$style) set the Output for normal Dates into the Week view | |
| setDayDatesInWeek ($date_ts, $Dates, $row_height, &$style) | |
| void function setDayDatesInWeek($date_ts, $Dates, $row_height, &$style) set the Output for one Day Dates into the Week view | |
| setWeekView ($week_ts, $DB) | |
| void function setWeekView($week_ts, $DB) the Main function of the week view called from the executed file | |
| getContent | ( | $ | begin_ts, | |
| $ | end_ts, | |||
| $ | DB | |||
| ) |
function getContent($begin_ts, $end_ts) get Content for the Week View from the sortdates functions
| int | $begin_ts | |
| int | $end_ts | |
| int | $DB (object of th db class ) string $DP_UId ( current User ID ) Array $DP_Keywords ( current Keywords) |
Definition at line 121 of file inc.week.php.
References $_SESSION, $DB, $DP_UId, getDateList(), and getWholeDayDateList().
{
global $DP_UId , $_SESSION ;
$Dates = getDateList ($DP_UId, $begin_ts, $end_ts, $_SESSION[DP_Keywords], $DB);
$WholeDates = getWholeDayDateList ($DP_UId, $begin_ts, $end_ts, $_SESSION[DP_Keywords], $DB);
$DATE[0]=$Dates;
$DATE[1]=$WholeDates;
return $DATE;
} // end func
Here is the call graph for this function:| setDateInTblHead | ( | $ | timestamp | ) |
void function setDateInTblHead($timestamp) set the Stings for the date format in the week view at the table top
| int | $timestamp |
Definition at line 71 of file inc.week.php.
References $S_Datum.
{
$ttd = new TimestampToDate;
$ttd->ttd($timestamp);
$S_Datum[monday_full] = $ttd->shorttime ;
$S_Datum[monday_link] = $timestamp ;
$S_Datum[week] = $ttd->weeknumber;
$ttd->ttd(strtotime ("+1 day" , $timestamp));
$S_Datum[tuesday_full] = $ttd->shorttime ;
$S_Datum[tuesday_link] = strtotime ("+1 day" , $timestamp) ;
$ttd->ttd(strtotime ("+2 day" , $timestamp));
$S_Datum[wednesday_full] = $ttd->shorttime ;
$S_Datum[wednesday_link] = strtotime ("+2 day" , $timestamp) ;
$ttd->ttd(strtotime ("+3 day" , $timestamp));
$S_Datum[thursday_full] = $ttd->shorttime ;
$S_Datum[thursday_link] = strtotime ("+3 day" , $timestamp) ;
$ttd->ttd(strtotime ("+4 day" , $timestamp));
$S_Datum[friday_full] = $ttd->shorttime ;
$S_Datum[friday_link] = strtotime ("+4 day" , $timestamp) ;
$ttd->ttd(strtotime ("+5 day" , $timestamp));
$S_Datum[saturday_full] = $ttd->shorttime ;
$S_Datum[saturday_link] = strtotime ("+5 day" , $timestamp) ;
$ttd->ttd(strtotime ("+6 day" , $timestamp));
$S_Datum[sunday_full] = $ttd->shorttime ;
$S_Datum[sunday_link] = strtotime ("+6 day" , $timestamp) ;
Return $S_Datum;
} // end func
| setDatesInWeek | ( | $ | date_ts, | |
| $ | Dates, | |||
| $ | day_ts, | |||
| $ | row_height, | |||
| &$ | style | |||
| ) |
void function setDatesInWeek($date_ts, $Dates, $row_height, &$style) set the Output for normal Dates into the Week view
| int | $date_ts | |
| int | $day_ts ( Day Timestamp ) | |
| Array | $Dates ( Date Data ) | |
| string | $style ( to format rows, control variable ) | |
| string | $row_height ( to format the height of rows, control variable ) Array $DP_language ( include Languageproperties ) Array $_SESSION ( DP_JSscript is 0 if JavaScript disabled ) |
Definition at line 146 of file inc.week.php.
References $_SESSION, $DP_CSS, $DP_language, $Gui, $id, and $week_float.
{
global $DP_language, $DP_CSS, $_SESSION;
$ttd = new TimestampToDate;
$Gui = new Gui();
$datesperhalfhourmax = 4 ; // max dates in a day
$shorttextmax = 10; // max lenght of shorttext in normal dates
$today_style = $DP_CSS[tblrow1];
$ttd->ttd($date_ts);
$day = $ttd->day_of_month ;
$week_float = $week_float."<td width=\"11%\" height=\"".$row_height."%\" style=\"border-style: solid; border-width: 1 \" ";
// if today change background
if ($date_ts >= mktime(0,0,0) and $date_ts <= mktime(23,59,59))
{
$week_float = $week_float.$today_style." >";
}
else
{
$week_float = $week_float.$style.">";
}
// filter Dates of the day out of the array
$datebeginend_ts = strtotime ("+30 minutes", $date_ts);
for ($i=0;$i< count($Dates);$i++)
{
if ($Dates[$i][1] >= $date_ts and $Dates[$i][1] < $datebeginend_ts)
{
$datesperhalfhour++;
$ttd->ttd($Dates[$i][1]);
// count sting lenght
if (strlen ($Dates[$i][5]) >= $shorttextmax)
{
$shortext = substr($Dates[$i][5], 0, $shorttextmax)." ..";
}
else
{
$shortext = $Dates[$i][5];
}
$starttime = $ttd->hour_long.":".$ttd->minutes ;
$ttd->ttd($Dates[$i][2]);
$endtime = $ttd->hour_long.":".$ttd->minutes ;
$alttag = $starttime." bis ".$endtime." [ ".$Dates[$i][5]." ]";
$text = $Dates[$i][6];
$id = rand(1,100);
if($_SESSION[DP_JSscript] != 1 ) {
$week_float = $week_float."<span ".$DP_CSS[small]."><a TITLE=\"".$alttag."\" href=\"dateplaner.php?app=date×tamp=".$day_ts."&date_id=".$Dates[$i][0]."&PHPSESSID=".session_id()."\" target=\"_blank\">".$starttime." - ".$endtime."</a> <br>".$shortext."</span><br>";
}else {
$week_float = $week_float."<span ".$DP_CSS[small]."><a onMouseOver=show('".$id."') onMouseOut=hide('".$id."') href=\"javascript:popup('dateplaner.php?app=date×tamp=".$day_ts."&date_id=".$Dates[$i][0]."&PHPSESSID=".session_id()."','Date','width=600,height=650,directories=no,toolbar=no,location=no,menubar=no,scrollbars=yes,status=yes,resizable=yes,dependent=no')\" >".$starttime." - ".$endtime."</a> <br>".$shortext."</span><br>";
$week_float.= $Gui->setToolTip($starttime, $endtime, $Dates[$i][5], $text, $id );
}
}
if ($datesperhalfhourmax == $datesperhalfhour)
{
$week_float = $week_float."<span ".$DP_CSS[small]."><a href=\"day.php?timestamp=".$date_ts."\">".$DP_language[more]."</a> </span>";
break ;
}
}
$week_float = $week_float."</td>";
Return $week_float;
} // end func
| setDayDatesInWeek | ( | $ | date_ts, | |
| $ | Dates, | |||
| $ | row_height, | |||
| &$ | style | |||
| ) |
void function setDayDatesInWeek($date_ts, $Dates, $row_height, &$style) set the Output for one Day Dates into the Week view
| int | $date_ts | |
| Array | $Dates ( Date Data ) | |
| string | $style ( to format rows, control variable ) | |
| string | $row_height ( to format the height of rows, control variable ) Array $DP_language ( include Languageproperties ) array $DP_CSS ( contains CSS Strings from the conf.gui file ) Array $_SESSION ( $DP_JSscriptis 0 if JavaScript disabled ) |
Definition at line 233 of file inc.week.php.
References $_SESSION, $DP_CSS, $DP_language, $Gui, $id, and $week_float.
{
global $DP_language, $DP_CSS, $_SESSION;
$ttd = new TimestampToDate;
$Gui = new Gui();
$datesperhalfhourmax = 4 ; // maximale Termine pro Tag
$shorttextmax = 12; // maximale Länge des shorttextes
$today_style = $DP_CSS[tblrow1];
$ttd->ttd($date_ts);
$day = $ttd->day_of_month ;
$week_float = $week_float."<td width=\"11%\" height=\"".$row_height."%\" style=\"border-style: solid; border-width: 1 \" ";
// if today change background
if ($date_ts >= mktime(0,0,0) and $date_ts <= mktime(23,59,59))
{
$week_float = $week_float.$today_style." >";
}
else
{
$week_float = $week_float.$style.">";
}
// filter Dates of the day out of the array
$dayend_ts = strtotime ("+23 hours +59 minutes +59 seconds", $date_ts);
for ($i=0;$i< count($Dates);$i++)
{
if ($Dates[$i][1] >= $date_ts and $Dates[$i][2] <= $dayend_ts)
{
$datesperhalfhour++;
$ttd->ttd($Dates[$i][1]);
// count sting lenght
if (strlen ($Dates[$i][5]) >= $shorttextmax)
{
$shortext = substr($Dates[$i][5], 0, $shorttextmax)." ..";
}
else
{
$shortext = $Dates[$i][5];
}
$alttag = " [ ".$Dates[$i][5]." ]";
$text = $Dates[$i][6];
$id = rand(100,200);
if($_SESSION[DP_JSscript] != 1 ) {
$week_float = $week_float."<span ".$DP_CSS[small]."><a TITLE=\"".$alttag."\" href=\"dateplaner.php?app=date×tamp=".$day_ts."&date_id=".$Dates[$i][0]."&PHPSESSID=".session_id()."\" target=\"_blank\"><b>".$shortext."</b></a> </span><br>";
}else {
$week_float = $week_float."<span ".$DP_CSS[small]."><a onMouseOver=show('".$id."') onMouseOut=hide('".$id."') href=\"javascript:popup('dateplaner.php?app=date×tamp=".$date_ts."&date_id=".$Dates[$i][0]."&PHPSESSID=".session_id()."','Date','width=600,height=650,directories=no,toolbar=no,location=no,menubar=no,scrollbars=yes,status=yes,resizable=yes,dependent=no')\" ><b>".$shortext."</b></a></span><br>";
$week_float.= $Gui->setToolTip($starttime, $endtime, $Dates[$i][5], $text, $id );
}
}
if ($datesperhalfhourmax == $datesperhalfhour)
{
$week_float = $week_float."<span ".$DP_CSS[small]."><a href=\"day.php?timestamp=".$date_ts."\">".$DP_language[more]."</a> </span>";
break ;
}
}
$week_float = $week_float."</td>";
Return $week_float;
} // end func
| setNavigation | ( | $ | timestamp, | |
| $ | rowSpan | |||
| ) |
void function setNavigation($timestamp,$rowSpan) set variables in the setNavigation of week
| int | $timestamp | |
| string | $rowSpan ( to format the Span of rows, control variable ) Array $DP_language ( include languageproperties ) |
Definition at line 47 of file inc.week.php.
References $DP_language, and $Gui.
{
global $DP_language;
$Gui = new Gui();
$today = mktime(0,0,0);
$lastweek = strtotime ("last week" , $timestamp) ;
$nextweek = strtotime ("+7 days" , $timestamp) ;
$rowSpan = $rowSpan+1;
eval ("\$week_navigation = \"".$Gui->getTemplate("week_navigation")."\";");
Return $week_navigation;
} // end func
| setWeekView | ( | $ | week_ts, | |
| $ | DB | |||
| ) |
void function setWeekView($week_ts, $DB) the Main function of the week view called from the executed file
| int | $week_ts ( one timestamp in the week, which should be shown ) | |
| int | $DB (object of th db class ) array $S_Datum ( contains Date from Table Top ) array $DP_language ( include Languageproperties ) array $DP_CSS ( contains CSS Strings from the conf.gui file ) array $_SESSION ( DP_Starttime include Start Time of during on day in week view and DP_Endtimeinclude End Time of during on day in week view) |
Definition at line 320 of file inc.week.php.
References $_SESSION, $DB, $DP_CSS, $DP_language, $S_Datum, $week_float, getContent(), setDateInTblHead(), and setNavigation().
{
global $DP_language, $DP_CSS, $_SESSION;
srand(microtime()*1000000);
// time period for view
$from_time = $_SESSION[DP_Starttime];
$to_time = $_SESSION[DP_Endtime];
$ttd = new TimestampToDate;
$ttd->ttd($week_ts);
// if the timestamp into the week , set to the first day
if ($ttd->weekdaynumber != 1 )
{
$week_ts = strtotime ("last Monday", $week_ts );
$ttd->ttd($week_ts);
}
$week_ts = mktime(0,0,0,$ttd->monthnumber,$ttd->day_of_month,$ttd->year_long);
$ttd->ttd($week_ts);
// set Week view start and End time
$start_ts = $week_ts;
$end_ts = strtotime ("+6 days 23 hours 59 minutes 59 seconds", $week_ts );
$DATE = getContent($start_ts, $end_ts, $DB);
$Dates = $DATE[0];
$WholeDates = $DATE[1];
// take care that no date begin or end after time zone above
// if it, enhance time zone
if($Dates)
{
for ($i=0;$i< count($Dates);$i++)
{
$ttdend = new TimestampToDate;
$ttdend->ttd($Dates[$i][2]);
$end = $ttdend->hour_long.":".$ttdend->minutes.":".$ttdend->seconds;
$ttd->ttd($Dates[$i][1]);
$begin = $ttd->hour_long.":".$ttd->minutes.":".$ttd->seconds;
if ($ttd->hour_short <= (int)$from_time )
{
$from_time = $ttd->hour_short;
}
if ($ttdend->hour_short >= (int)$to_time)
{
$to_time = $ttdend->hour_short+1;
}
}
}
// count rows for view
$rows = (($to_time - $from_time)*2)+1;
// count rows height , best compatibility
$row_height = 100/$rows;
$week_navigation = setNavigation($week_ts,$rows);
$S_Datum = setDateInTblHead($week_ts) ;
$monatstag_ts = $week_ts;
$style = $DP_CSS[tblrow2];
// 1st - one day dates , cause more important
$c_rows = 0;
for ($i=0;$i<=7;$i++)
{
if ($i==0)
{
$week_float = $week_float."<tr >\n";
$week_float = $week_float."<td width=\"4%\" height=\"".$row_height."%\" style=\"border-style: solid; border-width: 1\" $DP_CSS[tblrow2] ><center>".$DP_language[o_day_date]."<center></td>";
}
else
{
$week_float = $week_float.setDayDatesInWeek($monatstag_ts, $WholeDates, $row_height, $style);
$monatstag_ts = strtotime ("+1 day", $monatstag_ts );
}
$ttd->ttd($monatstag_ts);
}
$week_float = $week_float."</tr>\n";
$c_rows++;
$ttd->ttd($week_ts);
$week_ts = mktime($from_time,0,0,$ttd->monthnumber,$ttd->day_of_month,$ttd->year_long);
$monatstag_ts = $week_ts;
$style = $DP_CSS[tblrow2];
$day_ts = mktime(0,0,0,$ttd->monthnumber,$ttd->day_of_month,$ttd->year_long);
// 2nd - normal dates
while($c_rows < $rows)
{
for ($i=0;$i<=7;$i++)
{
if ($i==0)
{
// set time in left row
$time = (($c_rows-1)/2)+$from_time;
if (floor($time)!=0)
{
if (($time/floor($time)) > 1)
{
$time = floor ($time).":30";
}
else
{
$time = $time.":00";
}
}
else
{
if (round ($time)==1)
{
$time = "0:30";
}
else
{
$time = "0:00";
}
}
$week_float = $week_float."<tr >\n";
$week_float = $week_float."<td width=\"4%\" height=\"".$row_height."%\" style=\"border-style: solid; border-width: 1\" $DP_CSS[tblrow2] ><center>".$time."<center></td>";
}
else
{
$week_float = $week_float.setDatesInWeek($monatstag_ts, $Dates, $day_ts, $row_height, $style);
$monatstag_ts = strtotime ("+1 day", $monatstag_ts );
}
$ttd->ttd($monatstag_ts);
$day_ts = mktime(0,0,0,$ttd->monthnumber,$ttd->day_of_month,$ttd->year_long);
}
$week_ts = strtotime ("+30 minutes", $week_ts);
$monatstag_ts = $week_ts ;
$week_float = $week_float."</tr>\n";
$c_rows++;
}
$week_float = $week_float."</tr>\n";
$Return[0] = $week_navigation;
$Return[1] = $week_float;
$Return[2] = $S_Datum;
Return $Return;
}//end func
Here is the call graph for this function:
1.7.1