SimplePortal
Support => English Support => Topic started by: Aw06 on January 12, 2009, 03:46:33 AM
-
Get these errors each time the portal is Viewed..
8: Undefined index: 01
File: /home/!!!!##$@@/public_html/forum/Themes/default/SPortal.template.php (eval?)
Line: 228
Please Advise
-
anybody :O
-
Hello :bandaged:
Line 228 does not have any code on it :-X
It may be related to this php calender block im using
/*
Calender DIN1031 Version 11-11-2008-1
This is a costumizable calendar php block
It will show a calendar, and add the Today Events, Holidays and Birthdays.
Normal it's programmed and tested for SMF 1.1.X
I don't use any SSI.php, because all data that needed is loaded.
*/
global $scripturl, $modSettings, $sourcedir, $txt;
//With that you can start the calander on a other day
//-1 = Start on Saturaday, 0 = Start on Sunday, 1 = Start on Monday, 2 = Start on Thusday...
$first_day = 0;
//How many day in future should be shown in the events on today? (If you disable today nothing will work ;D)
$eventes_future = 5;
//Show Weeksnumber? 1 = on 0 = off
$show_weeknumber = 0;
//How long should the day, if the number higher 3 than the complete dayname will be shown
$day_name_length = 0; //0 is short day name 1 is full day name :)
//The background color of days with Events, birthdays or holidays, you can use css colors
$color_background_items_mixed = 'lightblue';
$color_background_items_event = 'lightblue';
$color_background_items_birthday = 'lightblue';
$color_background_items_holiday = 'lightblue';
//The textcolor of days with Events, birthdays or holidays, you can use css colors
$color_text_items_mixed = 'steelblue';
$color_text_items_event = 'steelblue';
$color_text_items_birthday = 'steelblue';
$color_text_items_holiday = 'steelblue';
//The Color of the todays background / text
$color_background_today = 'white';
$color_text_today = 'green';
//The Textcolor for the standard days
$color_text = 'steelblue';
//The Textcolor for the Sundays
$color_text_sunday = '#C00000';
//The Textcolor for the Week Number
$color_text_week = '#990000';
//If you have a diffrent calender you can change the link to it here
$month_href = $scripturl . '?action=calendar';
//What should the callendar show?
$show_events = 1; //0 No, 1 Yes
$show_birthdays = 1; //0 No, 1 Yes
$show_holidays = 1; //0 No, 1 Yes
//Show the single events and items of the day :)
$show_today = 1; //0 No, 1 Yes
//Dateformat of day you can use %y for year %d for day and %m for month (Only digital numbers!)
$currentDateFormat = '%m/%d';
//This Variable is only for mulitple blocks of this type, please change it only if you know what you do ;)
//If show today disabled than this will not work and is disabled!
$enableJavaScript = 1;
$javascript_idFix = 'calendarDIN1031_';
//Okay please don't do anything here if you not now what you do
/**************************************************************/
// You can't do anything if the calendar is off!
if (empty($modSettings['cal_enabled']))
fatal_lang_error('calendar_off', false);
//First try to make it compatible between versions SMF 1.1 and 2.0 ;) (Not Working, text problems ;P)
if(file_exists($sourcedir . '/Subs-Calendar.php')) {
require_once($sourcedir . '/Subs-Calendar.php');
$smcFunc['getEvents'] = 'getEventRange';
$smcFunc['getBirthdays'] = 'getBirthdayRange';
$smcFunc['getHolidays'] = 'getHolidayRange';
}
else {
require_once($sourcedir . '/Calendar.php');
$smcFunc['getEvents'] = 'calendarEventArray';
$smcFunc['getBirthdays'] = 'calendarBirthdayArray';
$smcFunc['getHolidays'] = 'calendarHolidayArray';
}
//Fix possible mistakes by user
$eventes_future = (int) $eventes_future;
$eventes_future = !empty($eventes_future) ? abs($eventes_future) : 0;
//Easier and faster to handel =).
$show_weeknumber = !empty($show_weeknumber);
//Enable the Javascript?
$enableJavaScript = !empty($enableJavaScript) && !empty($show_today);
//Built some standard dates
$now = time() + $modSettings['time_offset'] * 3600;
$today = date('j',$now);
$year = date("Y",$now);
$month = date("n",$now);
$days = array();
$pn = array();
$first_of_month = gmmktime(0,0,0,$month,1,$year);
//retrieve this month events, holydays and birthdays
$days_in_month = gmdate('t',$first_of_month);
//Built Month low and high date :)
$low_date = $year.'-'.$month.'-01';
$high_date = $year.'-'.$month.'-'.$days_in_month;
//Premission Checkup
$can_post_calendar = allowedTo('calendar_post');
$calendarDataToday = array('events' => array(), 'birthdays' => array(), 'holidays' => array());
$collectionDays = array(); //This is for the java script build :)
$calendarEventsFuture = array();
$todayDate = date("Y-m-d", time());
//add important days to the days array
if(!empty($show_events)) {
$insert_date = true;
//Special Case the high date of events can be more in the future than normal
$event_future_time = $now + $eventes_future * 86400;
if($eventes_future != 0) {
$month_event = date("n",$event_future_time);
//Next Month?
if($month_event != $month) {
$day_event = date("j",$event_future_time);
$year_event = date("Y",$event_future_time); //This is need, could be possible that this jan next year.
$event_future_date = $year_event.'-'.$month_event.'-'.$day_event;
}
else
$event_future_date = $high_date;
}
else
$event_future_date = $high_date;
$events = $smcFunc['getEvents']($low_date, $event_future_date);
foreach($events as $startdate => $event) {
list($cyear, $cmonth, $cday) = explode('-', $startdate);
$current_timestamp = mktime(0,0,0, $cmonth, $cday, $cyear);
//This insert the today events and future events if they exist
if($startdate == $todayDate || ($current_timestamp >= $now && $current_timestamp <= $event_future_time)) {
if($startdate == $todayDate)
$calendarDataToday['events'] = $event;
else
$calendarEventsFuture[$startdate] = $event;
}
//We must select between create or only show!
$href_calendar = $enableJavaScript ? '#day'.$cday.'" onclick="return '.$javascript_idFix.'selectCalendarDate(\'day'.$cday.'\');' : $month_href;
//Insert only the current informtions
if($cmonth == $month) //Next month is not avaible ;)
$days[$cday] = '<a class="smalltext" style="color: '.$color_text_items_event.'; font-weight: bold; background-color: '.$color_background_items_event.'; padding: 0px 4px 0px 4px;" href="'.$href_calendar.'" target="_self">'.$cday.'</a>';
if($cmonth == $month && $startdate != $todayDate)
$collectionDays[$startdate] = $cday;
}
//Correct the order :)
if(!empty($calendarEventsFuture))
ksort($calendarEventsFuture, SORT_NUMERIC);
}
//Add holidays into the day array?
if(!empty($show_birthdays)) {
$birthdays = $smcFunc['getBirthdays']($low_date, $high_date);
foreach($birthdays as $startdate => $birth) {
//This insert the today events if they exist
if($todayDate == $startdate)
$calendarDataToday['birthdays'] = $birth;
$cday = (int) substr($startdate,8,2);
//We must select between create or only show!
$href_calendar = $enableJavaScript ? '#day'.$cday.'" onclick="return '.$javascript_idFix.'selectCalendarDate(\'day'.$cday.'\');' : $month_href;
//Mixed color?
$text_color = !empty($days[$cday]) ? $color_text_items_mixed : $color_text_items_birthday;
$background_color = !empty($days[$cday]) ? $color_background_items_mixed : $color_background_items_birthday;
$days[$cday] = '<a class="smalltext" style="color: '.$text_color.'; font-weight: bold; background-color: '.$background_color.'; padding: 0px 4px 0px 4px;" href="'.$href_calendar.'" target="_self">'.$cday.'</a>';
if($startdate != $todayDate)
$collectionDays[$startdate] = $cday;
}
}
//Add holidays into the day array?
if(!empty($show_holidays)) {
$holidays = $smcFunc['getHolidays']($low_date, $high_date);
foreach($holidays as $startdate => $holiday) {
//This insert the today events if they exist
if($todayDate == $startdate)
$calendarDataToday['holidays'] = $holiday;
$cday = (int) substr($startdate,8,2);
//We must select between create or only show!
$text_color = !empty($days[$cday]) ? $color_text_items_mixed : $color_text_items_holiday;
$background_color = !empty($days[$cday]) ? $color_background_items_mixed : $color_background_items_holiday;
$href_calendar = $enableJavaScript ? '#day'.$cday.'" onclick="return '.$javascript_idFix.'selectCalendarDate(\'day'.$cday.'\');' : $month_href;
$days[$cday] = '<a class="smalltext" style="color: '.$text_color.'; font-weight: bold; background-color: '.$background_color.'; padding: 0px 4px 0px 4px;" href="'.$href_calendar.'" target="_self">'.$cday.'</a>';
if($startdate != $todayDate)
$collectionDays[$startdate] = $cday;
}
}
//So Todays it's an diffrent color :D
$href_calendar = $enableJavaScript ? '#today" onclick="return '.$javascript_idFix.'selectCalendarDate(\'today\');' : $month_href;
$days[$today] = '<a class="smalltext" style="color: '.$color_text_today.'; font-weight: bold; border: solid 1px black; background-color: '.$color_background_today.'; padding: 0px 4px 0px 4px;" href="'.$href_calendar.'" target="_self">'.$today.'</a>';
//Wellcome to the smf way of Day building with existing Language strings :D
$day_names = $txt['days'];
$day_names_short = $txt['days_short'];
//So lets see $firstday = 0 means sunday this is the first day :)
//if there is a higher number than i need to resort them
//negativ values can also be used :)
if(!empty($first_day)) {
if($first_day < 0)
$first_day = 7-(abs($first_day)%7);
else
$first_day = ($first_day%7);
}
if(!empty($first_day)) {
$old = $day_names;
$old_s = $day_names_short;
$day_names = array();
$day_names_short = array();
//Create the new day order :)
for($n=0; $n<7; $n++) {
$c = (($first_day+$n)%7);
$day_names[$n] = $old[$c];
$day_names_short[$n] = $old_s[$c];
}
}
list($month, $year, $weekday) = explode(',',gmstrftime('%m,%Y,%w',$first_of_month));
$weekday = ($weekday + 7 - $first_day) % 7; //adjust for $first_day
$title = $txt['months_titles'][$month].' '.$year; //This is the SMF Text string, so it should be corrected for ut8 or iso
//Insert the Java Sciptfunction
if($enableJavaScript) {
echo '
<script language="JavaScript" type="text/javascript"><!-- // --><![CDATA[
var '.$javascript_idFix.'current_block = "'.$javascript_idFix.'today";
function '.$javascript_idFix.'selectCalendarDate (day) {
var blockid = "'.$javascript_idFix.'" + day;
if(blockid == '.$javascript_idFix.'current_block) {
return false;
}
document.getElementById('.$javascript_idFix.'current_block).style.display = "none";
'.$javascript_idFix.'current_block = blockid + "";
document.getElementById(blockid).style.display = "block";
return false;
}
// ]]></script>';
}
/* Begin calendar. Uses a real <caption>. See http://diveintomark.org/archives/2002/07/03 */
$calendar = '
<table align="center" style="display:block; width:100%;" width="100%">
<caption>'.($month_href ? '<a href="'.htmlspecialchars($month_href).'">'.$title.'</a>' : $title)."</caption>
<tr>";
//Show the weekday?
if($show_weeknumber)
$calendar .= '
<th class="smalltext" abbr="'.$txt['calendar51'].'">'.$txt['calendar51'].'</th>';
//Put out the Daynames :)
foreach($day_names as $k => $d)
$calendar .= '
<th class="smalltext" abbr="'.$d.'">'.(!empty($day_name_length) ? $d : $day_names_short[$k]).'</th>';
$calendar .= "
</tr>
<tr style=\"text-align:right;\">";
if($show_weeknumber)
$calendar .= '
<td class="smalltext" abbr="'.$txt['calendar51'].'" align="center"><span style="color:'.$color_text_week.'">'.gmdate('W', $first_of_month).'</span></td>';
if($weekday > 0) $calendar .= '
<td class="smalltext" colspan="'.$weekday.'"> </td>'; //initial 'empty' days
for($day=1,$days_in_month=gmdate('t',$first_of_month); $day<=$days_in_month; $day++,$weekday++){
if($weekday == 7){
$weekday = 0; //start a new week
$calendar .= "
</tr>
<tr style=\"text-align:right;\">";
if($show_weeknumber)
$calendar .= '
<td class="smalltext" abbr="'.$txt['calendar51'].'" align="center"><span style="color:'.$color_text_week.'">'.gmdate('W', gmmktime(0,0,0, $month ,$day, $year)).'</span></td>';
}
if(isset($days[$day])){
$calendar .= '
<td>'.$days[$day].'</td>';
}
else
{
$href_calendar = $enableJavaScript ? '#none" onclick="return '.$javascript_idFix.'selectCalendarDate(\'none\');' : $month_href;
$calendar .= "
<td class=\"smalltext\" style=\"padding-right:4px;\"><a";
if(((($weekday+$first_day) % 7)==0))
{
$calendar .= ' style="color:'.$color_text_sunday.';"';
}
$calendar .= " href=\"".$href_calendar."\" target=\"_self\">$day</a></td>";
}
}
if($weekday != 7) $calendar .= '
<td class="smalltext" colspan="'.(7-$weekday).'"> </td>'; //remaining "empty" days
$calendar .= '
</tr>
</table>';
echo $calendar;
if(!empty($show_today)) {
echo '
<div style="display:block; width:100%;" align="center">';
if (!empty($calendarDataToday['events']) || !empty($calendarDataToday['birthdays']) || !empty($calendarDataToday['holidays']) || !empty($calendarEventsFuture)) {
//Standard Output :)
echo '
<table id="'.$javascript_idFix.'today" align="center" style="display:block; width:100%;">';
if(!empty($calendarDataToday['holidays'])){
echo '
<tr>
<td width="15%">
<hr />
</td>
<td class="smalltext" align="center" style="color: ' . $color_text_items_holiday . ';">
<b>Holidays</b>
</td>
<td width="15%">
<hr />
</td>
</tr>
<tr>
<td colspan="3" class="smalltext" style="width:100%;">';
echo implode('<br />', $calendarDataToday['holidays']);
echo '
</td>
</tr>';
}
if(!empty($calendarDataToday['birthdays'])){
echo '
<tr>
<td width="15%">
<hr />
</td>
<td class="smalltext" align="center" style="color: ' . $color_text_items_birthday . ';">
<b>Birthdays</b>
</td>
<td width="15%">
<hr />
</td>
</tr>
<tr>
<td colspan="3" class="smalltext" style="width:100%;">';
foreach( $calendarDataToday['birthdays'] as $member )
echo '
<a href="', $scripturl, '?action=profile;u=', $member['id'], '">', $member['name'], isset($member['age']) ? ' (' . $member['age'] . ')' : '', '</a>', '<br />';
echo '
</td>
</tr>';
}
if(!empty($calendarDataToday['events']))
{
$dayOutput = str_replace(array('%y','%m','%d'), explode('-', $todayDate), $currentDateFormat);
echo '
<tr>
<td width="15%">
<hr />
</td>
<td class="smalltext" align="center" style="color: ' . $color_text_items_event . ';">
<b>Events ('.$dayOutput.')</b>
</td>
<td width="15%">
<hr />
</td>
</tr>
<tr>
<td colspan="3" class="smalltext" align="left" style="width:100%;">';
foreach ($calendarDataToday['events'] as $event)
{
if ($event['can_edit'])
echo '
<a href="' . $event['modify_href'] . '" style="color: #FF0000;">*</a> ';
echo '
' . $event['link'] . '<br />';
}
echo '
</td>
</tr>';
}
if(!empty($calendarEventsFuture))
{
echo '
<tr>
<td width="15%">
<hr />
</td>
<td class="smalltext" align="center" style="color: ' . $color_text_items_event . ';" style="width:100%;">
<b>Upcoming Events</b>
</td>
<td width="15%">
<hr />
</td>
</tr>
<tr>
<td colspan="3" class="smalltext" align="left">';
foreach ($calendarEventsFuture as $startdate => $future_events)
{
//Okay tell the user the date of this even...
$dayOutput = str_replace(array('%y','%m','%d'), explode('-', $startdate), $currentDateFormat);
foreach($future_events as $event) {
if ($event['can_edit'])
echo '
<a href="' . $event['modify_href'] . '" style="color: #FF0000;">*</a> ';
echo '
' . $dayOutput . ' ' . $event['link'] . '<br />';
}
}
echo '
</td>
</tr>';
}
echo '
</table>';
}
else
echo '
<table id="'.$javascript_idFix.'today" align="center" width="100%" style="display:block; width:100%;">
<tr>
<td>
No Entries Found.
</td>
</tr>
</table>';
//Okay Start he Java Script insert :)
if($enableJavaScript) {
//First the Table for none ;)
echo '
<table id="'.$javascript_idFix.'none" align="center" width="100%" style="display:none; width:100%;">
<tr>
<td class="smalltext">
No Entries Found.
</td>
</tr>
</table>';
foreach($collectionDays as $startdate => $day) {
echo '
<table id="'.$javascript_idFix.'day'.$day.'" align="center" width="100%" style="display:none; width:100%;">';
if(!empty($holidays[$startdate])){
echo '
<tr>
<td width="15%">
<hr />
</td>
<td class="smalltext" align="center" style="color: ' . $color_text_items_holiday . ';">
<b>Holidays</b>
</td>
<td width="15%">
<hr />
</td>
</tr>
<tr>
<td colspan="3" class="smalltext" style="width:100%;">';
echo implode('<br />', $holidays[$startdate]);
echo '
</td>
</tr>';
}
if(!empty($birthdays[$startdate])){
echo '
<tr>
<td width="15%">
<hr />
</td>
<td class="smalltext" align="center" style="color: ' . $color_text_items_birthday . ';">
<b>Birthdays</b>
</td>
<td width="15%">
<hr />
</td>
</tr>
<tr>
<td colspan="3" class="smalltext" style="width:100%;">';
foreach( $birthdays[$startdate] as $member )
echo '
<a href="', $scripturl, '?action=profile;u=', $member['id'], '">', $member['name'], isset($member['age']) ? ' (' . $member['age'] . ')' : '', '</a>', '<br />';
echo '
</td>
</tr>';
}
if(!empty($events[$startdate]))
{
$dayOutput = str_replace(array('%y','%m','%d'), explode('-', $startdate), $currentDateFormat);
echo '
<tr>
<td width="15%">
<hr />
</td>
<td class="smalltext" align="center" style="color: ' . $color_text_items_event . ';">
<b>Events ('.$dayOutput.')</b>
</td>
<td width="15%">
<hr />
</td>
</tr>
<tr>
<td colspan="3" class="smalltext" align="left" style="width:100%;">';
foreach ($events[$startdate] as $event)
{
if ($event['can_edit'])
echo '
<a href="' . $event['modify_href'] . '" style="color: #FF0000;">*</a> ';
echo '
' . $event['link'] . '<br />';
}
echo '
</td>
</tr>';
}
echo '
</table>';
}
}
echo '
</div>';
}
-
Sorry for the late answer...
Please update to the latest Version of this php block :X
http://simpleportal.net/index.php?topic=89.msg5205#msg5205
DIN1031CalenderBlockV3.php in your case :).
-
Updated ... getting this now
8: Undefined variable: year
File: /home/xxxxxx/public_html/forum/Themes/default/SPortal.template.php (eval?)
Line: 228
8: Undefined variable: 0
File: /home/xxxxxx/public_html/forum/Themes/default/SPortal.template.php (eval?)
Line: 228
8: Undefined variable: month
File: /home/xxxxxx/public_html/forum/Themes/default/SPortal.template.php (eval?)
Line: 228
-
Okay i will look at this... but i was sure that i had no errors <<.