/** * Returns a channel record based on its node guid * * @param string GUID * * @return array Channel information */ public function fetchChannelByGUID($guid) { $cache = vB_Cache::instance(vB_Cache::CACHE_FAST); $channel = $cache->read('vbChannelGUID_' . $guid); if (!empty($channel)) { return $channel; } $parentChannelGUIDs = vB_Channel::getDefaultGUIDs(); $parentChannels = vB::getDbAssertor()->assertQuery('vBForum:channel', array('guid' => $parentChannelGUIDs)); $channel = array(); foreach ($parentChannels as $parentChannel) { $cache->write('vbChannelGUID_' . $parentChannel['guid'], $parentChannel, 1440, 'nodeChg_' . $parentChannel['nodeid']); if ($parentChannel['guid'] == $guid) { $channel = $parentChannel; } } return $channel; }