ragtek |
03-05-2009 08:53 PM |
try this code:
PHP Code:
<?php
// ####################### SET PHP ENVIRONMENT ########################### error_reporting(E_ALL & ~E_NOTICE);
// #################### DEFINE IMPORTANT CONSTANTS #######################
define('THIS_SCRIPT', 'clubslist'); // change this depending on your filename
// ################### PRE-CACHE TEMPLATES AND DATA ###################### // get special phrase groups $phrasegroups = array(
);
// get special data templates from the datastore $specialtemplates = array( );
// pre-cache templates used by all actions $globaltemplates = array( 'navigation', );
// pre-cache templates used by specific actions $actiontemplates = array(
);
$specialtemplates = array( 'birthdaycache', 'eventcache' );
// ######################### REQUIRE BACK-END ############################ require_once('./global.php');
// ####################################################################### // ######################## START MAIN SCRIPT ############################ // #######################################################################
$navbits = array(); $navbits[$parent] = 'Club Listings';
$navbits = construct_navbits($navbits); eval('$navbar = "' . fetch_template('navbar') . '";');
// ### TODAY'S BIRTHDAYS ################################################# if ($vbulletin->options['showbirthdays']) { if (!is_array($vbulletin->birthdaycache) OR ($today != $vbulletin->birthdaycache['day1'] AND $today !=
$vbulletin->birthdaycache['day2']) OR !is_array($vbulletin->birthdaycache['users1']) ) { // Need to update! require_once(DIR . '/includes/functions_databuild.php'); $birthdaystore = build_birthdays(); DEVDEBUG('Updated Birthdays'); } else { $birthdaystore = $vbulletin->birthdaycache; }
switch ($today) { case $birthdaystore['day1']: $birthdaysarray = $birthdaystore['users1']; break;
case $birthdaystore['day2']: $birthdaysarray = $birthdaystore['users2']; break;
default: $birthdaysarray = array(); } // memory saving unset($birthdaystore);
$birthdaybits = array();
foreach ($birthdaysarray AS $birthday) { eval('$birthdaybits[] = "' . fetch_template('forumhome_birthdaybit')
. '";'); }
$birthdays = implode(', ', $birthdaybits);
if ($stylevar['dirmark']) { $birthdays = str_replace('<!--rlm-->', $stylevar['dirmark'],
$birthdays); }
$show['birthdays'] = iif ($birthdays, true, false); } else { $show['birthdays'] = false; }
// ### TODAY'S EVENTS ################################################# if ($vbulletin->options['showevents']) { require_once(DIR . '/includes/functions_calendar.php');
$future = gmdate('n-j-Y' , TIMENOW + 86400 + 86400 * $vbulletin->options
['showevents']);
if (!is_array($vbulletin->eventcache) OR $future != $vbulletin->eventcache
['date']) { // Need to update! $eventstore = build_events(); DEVDEBUG('Updated Events'); } else { $eventstore = $vbulletin->eventcache; }
unset($eventstore['date']); $events = array(); $eventcount = 0; $holiday_calendarid = 0;
foreach ($eventstore AS $eventid => $eventinfo) { $offset = $eventinfo['dst'] ? $vbulletin->userinfo['timezoneoffset']
: $vbulletin->userinfo['tzoffset']; $eventstore["$eventid"]['dateline_from_user'] = $eventinfo
['dateline_from_user'] = $eventinfo['dateline_from'] + $offset * 3600; $eventstore["$eventid"]['dateline_to_user'] = $eventinfo
['dateline_to_user'] = $eventinfo['dateline_to'] + $offset * 3600; $gettime = TIMENOW - $vbulletin->options['hourdiff']; $iterations = 0; $todaydate = getdate($gettime);
if (!$eventinfo['singleday'] AND !$eventinfo['recurring'] AND
$eventinfo['dateline_from_user'] < gmmktime(0, 0, 0, $todaydate['mon'], $todaydate
['mday'], $todaydate['year'])) { $sub = -3; } else if ($eventinfo['holidayid']) { $sub = -2; } else if ($eventinfo['singleday']) { $sub = -1; } else { $sub = $eventinfo['dateline_from_user'] - (86400 * (intval
($eventinfo['dateline_from_user'] / 86400))); }
if ($vbulletin->userinfo['calendarpermissions']["$eventinfo
[calendarid]"] & $vbulletin->bf_ugp_calendarpermissions['canviewcalendar'] OR
($eventinfo['holidayid'] AND $vbulletin->options['showholidays'])) { if ($eventinfo['holidayid'] AND $vbulletin->options
['showholidays']) { if (!$holiday_calendarid) { $holiday_calendarid = -1; if (is_array($eventinfo
['holiday_calendarids'])) { foreach ($eventinfo
['holiday_calendarids'] AS $potential_holiday_calendarid) { if ($vbulletin->userinfo
['calendarpermissions']["$potential_holiday_calendarid"] & $vbulletin->bf_ugp_calendarpermissions['canviewcalendar']) { $holiday_calendarid =
$potential_holiday_calendarid; break; } } } }
if ($holiday_calendarid < 0) { continue; }
$eventstore["$eventid"]['calendarid'] = $holiday_calendarid; $eventinfo['calendarid'] = $holiday_calendarid; }
if ($eventinfo['userid'] == $vbulletin->userinfo['userid'] OR
$vbulletin->userinfo['calendarpermissions']["$eventinfo[calendarid]"] & $vbulletin->bf_ugp_calendarpermissions['canviewothersevent'] OR ($eventinfo['holidayid'] AND
$vbulletin->options['showholidays'])) { if (!$eventinfo['recurring'] AND !$vbulletin->options['showeventtype'] AND !$eventinfo['singleday'] AND cache_event_info
($eventinfo, $todaydate['mon'], $todaydate['mday'], $todaydate['year'])) { $events["$eventid"][] = $gettime . "_$sub"; } else { while ($iterations < $vbulletin->options
['showevents']) { $addcache = false;
$todaydate = getdate($gettime); if ($eventinfo['holidayid'] AND
$eventinfo['recurring'] == 6) { if ($eventinfo['recuroption']
== "$todaydate[mon]|$todaydate[mday]") { $addcache = true; } } else if (cache_event_info($eventinfo,
$todaydate['mon'], $todaydate['mday'], $todaydate['year'])) { $addcache = true; }
if ($addcache) { if (!$vbulletin->options
['showeventtype']) { $events["$eventid"][]
= $gettime . "_$sub"; } else { $events["$gettime"][]
= $eventid; } $eventcount++; }
$iterations++; $gettime += 86400; } } } } }
if (!empty($events)) { if ($vbulletin->options['showeventtype']) { ksort($events, SORT_NUMERIC); } else { function groupbyevent($a, $b) { if ($a[0] == $b[0]) { return 0; } else { $values1 = explode('_', $a[0]); $values2 = explode('_', $b[0]); if ($values1[0] != $values2[0]) { return ($values1[0] < $values2[0]) ?
-1 : 1; } else { // Same day events. Check the event start time to order them properly (compare number of seconds from 00:00) return ($values1[1] < $values2[1]) ?
-1 : 1; } } } uasort($events, 'groupbyevent');
foreach($events AS $eventid => $times) { foreach ($times AS $key => $time) { $events["$eventid"]["$key"] = intval($time); } } }
$upcomingevents = ''; foreach($events AS $index => $value) { $pastevent = 0; $pastcount = 0;
$comma = $eventdates = $daysevents = ''; if (!$vbulletin->options['showeventtype']) { // Group by Event // $index = $eventid $eventinfo = $eventstore["$index"]; if (empty($eventinfo['recurring']) AND empty
($eventinfo['singleday'])) { $fromdate = vbdate($vbulletin->options
['dateformat'], $eventinfo['dateline_from_user'], false, true, false, true); $todate = vbdate($vbulletin->options
['dateformat'], $eventinfo['dateline_to_user'], false, true, false, true); if ($fromdate != $todate) { $eventdates = construct_phrase
($vbphrase['event_x_to_y'], $fromdate, $todate); } else { $eventdates = vbdate($vbulletin->options['dateformat'], $eventinfo['dateline_from_user'], false, true, false, true); } $day = vbdate('Y-n-j', $eventinfo
['dateline_from_user'], false, false); } else { unset($day); foreach($value AS $key => $dateline) { if (($dateline - 86400) == $pastevent
AND !$eventinfo['holidayid']) { $pastevent = $dateline; $pastcount++; continue; } else { if ($pastcount) { $eventdates =
construct_phrase($vbphrase['event_x_to_y'], $eventdates, vbdate($vbulletin->options
['dateformat'], $pastevent, false, true, false)); } $pastcount = 0; $pastevent = $dateline; } if (!$day) { $day = vbdate('Y-n-j',
$dateline, false, false, false); } $eventdates .= $comma . vbdate
($vbulletin->options['dateformat'], $dateline, false, true, false); $comma = ', '; } if ($pastcount) { $eventdates = construct_phrase
($vbphrase['event_x_to_y'], $eventdates, vbdate($vbulletin->options['dateformat'],
$pastevent, false, true, false)); } }
if ($eventinfo['holidayid']) { $callink = '<a href="calendar.php?' .
$vbulletin->session->vars['sessionurl'] . "do=getinfo&day=$day&c=$eventinfo
[calendarid]\">" . $vbphrase['holiday' . $eventinfo['holidayid'] . '_title'] .
"</a>"; } else { $callink = '<a href="calendar.php?' .
$vbulletin->session->vars['sessionurl'] . "do=getinfo&day=$day&e=$eventinfo
[eventid]&c=$eventinfo[calendarid]\">$eventinfo[title]</a>"; } } else { // Group by Date $eventdate = vbdate($vbulletin->options
['dateformat'], $index, false, true, false);
$day = vbdate('Y-n-j', $index, false, false, false); foreach($value AS $key => $eventid) { $eventinfo = $eventstore["$eventid"]; if ($eventinfo['holidayid']) { $daysevents .= $comma . '<a
href="calendar.php?' . $vbulletin->session->vars['sessionurl'] .
"do=getinfo&day=$day&c=$eventinfo[calendarid]\">" . $vbphrase['holiday' .
$eventinfo['holidayid'] . '_title'] . "</a>"; } else { $daysevents .= $comma . '<a
href="calendar.php?' . $vbulletin->session->vars['sessionurl'] .
"do=getinfo&day=$day&e=$eventinfo[eventid]&c=$eventinfo[calendarid]
\">$eventinfo[title]</a>"; } $comma = ', '; } }
($hook = vBulletinHook::fetch_hook('forumhome_event')) ?
eval($hook) : false; eval('$upcomingevents .= "' . fetch_template
('forumhome_event') . '";'); } // memory saving unset($events, $eventstore); } $show['upcomingevents'] = iif ($upcomingevents, true, false); $show['todaysevents'] = iif ($vbulletin->options['showevents'] == 1, true,
false); } else { $show['upcomingevents'] = false; }
//var_dump($upcomingevents); $show['latestalbums'] = true; eval('print_output("' . fetch_template('navigation') . '");'); ?>
you had print_output at the beginning, and that was not ok! but hadn't the time to check your whole code..
|