The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
#16
|
||||
|
||||
![]()
SOLVED
Got it to work with this php code Code:
// ### TODAY'S EVENTS ################################################# if ($vbulletin->options['showevents'] ==1) { require_once(DIR . '/includes/functions_calendar.php'); $future = gmdate('n-j-Y' , TIMENOW + 86400 * $vbulletin->options['showevents']); if (!is_array($vbulletin->eventcache) OR $future != $vbulletin->eventcache['date']) { // Need to update! require_once(DIR . '/includes/functions_databuild.php'); $eventstore = build_events(); DEVDEBUG('Updated Events'); } else { $eventstore = $vbulletin->eventcache; } // Bitfield setup for Calendar $cpermissions = array ( 'view' => 1, 'post' => 2, 'edit' => 4, 'delete' => 8, 'viewothers' => 16, 'notmoderated' => 32 ); // Get the best permissions for each calendar based on all user group memberships. $results = $vbulletin->db->query_read(" SELECT c.calendarid, max(CASE WHEN cp.calendarpermissions IS NULL THEN ug.calendarpermissions ELSE cp.calendarpermissions END) maxPerm FROM ".TABLE_PREFIX."usergroup ug CROSS JOIN ".TABLE_PREFIX."calendar c LEFT JOIN ".TABLE_PREFIX."calendarpermission cp ON c.calendarid = cp.calendarid AND cp.usergroupid = ug.usergroupid WHERE ug.usergroupid IN (" . $vbulletin->userinfo['usergroupid'] . ", 0" . $vbulletin->userinfo['membergroupids'] . ") GROUP BY c.calendarid;" ); // Put the permission results into an array $calperm = array(); while ($row = $vbulletin->db->fetch_array($results)) { // Decode the bitfield. $bitperm = convert_bits_to_array(&$row[maxPerm], $cpermissions); $calperm[$row[calendarid]]=$bitperm; } unset($eventstore['date']); $events = array(); $eventcount = 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); DEVDEBUG('Processing Event - '.$calperm[$eventinfo[calendarid]] ['view'].",".$calperm[$eventinfo[calendarid]]['viewothers']); if ($calperm[$eventinfo[calendarid]][view]==1 & $vbulletin- >bf_ugp_calendarpermissions['canviewcalendar'] OR ($eventinfo['holidayid'] AND $vbulletin- >options['showholidays'])) { if ($eventinfo['userid'] == $vbulletin->userinfo['userid'] OR $calperm [$eventinfo[calendarid]][viewothers]==1 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; } 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; } 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 { return ($a[0] < $b[0]) ? -1 : 1; } } uasort($events, 'groupbyevent'); } 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) // $eventdates = construct_phrase($vbphrase ['event_x_to_y'], vbdate($vbulletin->options['dateformat'], $eventinfo['dateline_from_user'], false, true, false, true), vbdate($vbulletin->options['dateformat'], $eventinfo ['dateline_to_user'], false, true, false, true)); $day = vbdate('Y-n-j', $eventinfo['dateline_from_user'], false, false); $eventdates = vbdate($vbulletin->options['dateformat'], $eventinfo['dateline_from_user'], false, true, false, true); $eventdates .= " to ". vbdate($vbulletin->options ['dateformat'], $eventinfo['dateline_to_user'], false, true, false, true); } 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\">" . $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, true, 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\">" . $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); } Code:
<if condition="$show['upcomingevents']"> <if condition="$show['todaysevents']">$vbphrase[todays_events]<else /><phrase 1="$vboptions[showevents]">$vbphrase[upcoming_events_for_the_next_x_days]</phrase></if> <a href="calendar.php$session[sessionurl_q]"><img src="$stylevar[imgdir_misc]/calendar.gif" alt="$vbphrase[calendar]" border="0" /></a> <div class="smallfont">$upcomingevents</div> </if> |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
![]() |
|
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|