getType()][] = $platform; } } } } return $platforms; } /** * @param string $url * @return array [parsed, platform] */ function videolist_parse_url($url) { $params = array( 'url' => $url, ); $platforms = videolist_get_default_platforms(); $platforms = elgg_trigger_plugin_hook('videolist:prepare', 'platforms', $params, $platforms); foreach ($platforms as $list) { foreach ($list as $platform) { /* @var Videolist_PlatformInterface $platform */ $parsed = $platform->parseUrl($url); if ($parsed) { return array($parsed, $platform); } } } return false; }