use Friendica\DI;
use Friendica\Model\Contact;
use Friendica\Network\HTTPException\NotModifiedException;
+use GuzzleHttp\Psr7\Uri;
class Network
{
* @param array $parsed URL parts
*
* @return string The glued URL.
- * @deprecated since version 2021.12, use a UriInterface object like GuzzleHttp\Psr7\Uri instead
+ * @deprecated since version 2021.12, use GuzzleHttp\Psr7\Uri::fromParts($parts) instead
*/
public static function unparseURL(array $parsed)
{
$parts = parse_url($uri);
if (!empty($parts['scheme']) && !empty($parts['host'])) {
$parts['host'] = idn_to_ascii($parts['host']);
- $uri = self::unparseURL($parts);
- } elseif (strstr($uri, '@')) {
- $host = idn_to_ascii(substr($uri, strpos($uri, '@') + 1));
- $nick = substr($uri, 0, strpos($uri, '@'));
-
- $uri = $nick . '@' . $host;
+ $uri = Uri::fromParts($parts);
+ } else {
+ $parts = explode('@', $uri);
+ if (count($parts) == 2) {
+ $uri = $parts[0] . '@' . idn_to_ascii($parts[1]);
+ } else {
+ $uri = idn_to_ascii($uri);
+ }
}
return $uri;