protected static function _prepareParams($url, $context, array $options)
{
if (is_string($url)) {
if (strpos($url, '://')) {
return $url;
}
foreach (array('#', '//', 'mailto', 'javascript') as $prefix) {
if (strpos($url, $prefix) === 0) {
return $url;
}
}
if (is_string($url = static::_parseString($url, $context, $options))) {
return static::_prefix($url, $context, $options);
}
}
$isArray = isset($url[0]) && is_array($params = static::_parseString($url[0], $context, $options));
if ($isArray) {
unset($url[0]);
$url = $params + $url;
}
return static::_persist(static::_parseController($url), $context);
}