TNCclubman |
03-04-2009 02:47 PM |
damn, didnt work...
heres the php page
Code:
<?php
// ####################### SET PHP ENVIRONMENT ###########################
error_reporting(E_ALL & ~E_NOTICE);
// #################### DEFINE IMPORTANT CONSTANTS #######################
define('NO_REGISTER_GLOBALS', 1);
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') . '";');
eval('print_output("' . fetch_template('navigation') . '");');
// ### 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; // stop this loop
from running again in the future
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');
// this crazy code is to remove $sub added above that ensures
a event maintains its position after the sort
// if associative values are the same
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']))
{ // ranged event -- show it from its real
start and real end date (vbgmdate)
$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;
}
$show['latestalbums'] = true;
?>
Be sure to change 'TEST' to the actual template name, and change 'test' to the
filename. Also, change 'Test Page' to whatever you want to show in the navbar, such
as 'Viewing Member Profile' (just an example
--------------- Added [DATE]1236185363[/DATE] at [TIME]1236185363[/TIME] ---------------
heres the template page
Code:
$stylevar[htmldoctype]
<html dir="$stylevar[textdirection]" lang="$stylevar[languagecode]">
<head>
<title>$vboptions[bbtitle]</title>
$headinclude
</head>
<body>
$header
$navbar
<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center">
<tr>
<td class="tcat">Title</td>
</tr>
</table>
<if condition="$show['birthdays']">
<!-- today's birthdays -->
<tbody>
<tr>
<td class="thead" colspan="2">
<a style="float:$stylevar[right]" href="#top" onclick="return toggle_collapse('forumhome_birthdays')"><img id="collapseimg_forumhome_birthdays" src="$stylevar[imgdir_button]/collapse_thead$vbcollapse[collapseimg_forumhome_birthdays].gif" alt="" border="0" /></a>
$vbphrase[todays_birthdays]
</td>
</tr>
</tbody>
<tbody id="collapseobj_forumhome_birthdays" style="$vbcollapse[collapseobj_forumhome_birthdays]">
<tr>
<td class="alt2"><a href="calendar.php?$session[sessionurl]do=getday&day=$today&sb=1"><img src="$stylevar[imgdir_misc]/birthday.gif" alt="$vbphrase[view_birthdays]" border="0" /></a></td>
<td class="alt1" width="100%"><div class="smallfont">$birthdays</div></td>
</tr>
</tbody>
<!-- end today's birthdays -->
</if>
$template_hook[forumhome_wgo_pos4]
<if condition="$show['upcomingevents']">
<tbody>
<tr>
<td class="thead" colspan="2">
<a style="float:$stylevar[right]" href="#top" onclick="return toggle_collapse('forumhome_events')"><img id="collapseimg_forumhome_events" src="$stylevar[imgdir_button]/collapse_thead$vbcollapse[collapseimg_forumhome_events].gif" alt="" border="0" /></a>
<if condition="$show['todaysevents']">$vbphrase[todays_events]<else /><phrase 1="$vboptions[showevents]">$vbphrase[upcoming_events_for_the_next_x_days]</phrase></if>
</td>
</tr>
</tbody>
<tbody id="collapseobj_forumhome_events" style="$vbcollapse[collapseobj_forumhome_events]">
<tr>
<td class="alt2"><a href="calendar.php$session[sessionurl_q]"><img src="$stylevar[imgdir_misc]/calendar.gif" alt="$vbphrase[calendar]" border="0" /></a></td>
<td class="alt1" width="100%"><div class="smallfont">$upcomingevents</div></td>
</tr>
</tbody>
</if>
$footer
</body>
</html>
|