diff --git a/include/bb2diaspora.php b/include/bb2diaspora.php index 2673750ee..d5fa8642a 100644 --- a/include/bb2diaspora.php +++ b/include/bb2diaspora.php @@ -5,6 +5,7 @@ use Friendica\Core\Addon; use Friendica\Core\System; use Friendica\Model\Contact; use Friendica\Network\Probe; +use Friendica\Util\Network; use League\HTMLToMarkdown\HtmlConverter; require_once 'include/event.php'; @@ -82,7 +83,7 @@ function diaspora2bb($s) { $s = preg_replace('/(\[code\])+(.*?)(\[\/code\])+/ism', '[code]$2[/code]', $s); // Don't show link to full picture (until it is fixed) - $s = scale_external_images($s, false); + $s = Network::scaleExternalImages($s, false); return $s; } diff --git a/include/conversation.php b/include/conversation.php index e0f9856ba..11d0a0d0d 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -15,6 +15,7 @@ use Friendica\Model\Contact; use Friendica\Model\Profile; use Friendica\Object\Thread; use Friendica\Object\Post; +use Friendica\Util\Network; require_once "include/bbcode.php"; require_once "include/acl_selectors.php"; @@ -184,8 +185,8 @@ function localize_item(&$item) { $xmlhead="<"."?xml version='1.0' encoding='UTF-8' ?".">"; - $obj = parse_xml_string($xmlhead.$item['object']); - $links = parse_xml_string($xmlhead."".unxmlify($obj->link).""); + $obj = Network::parseXmlString($xmlhead.$item['object']); + $links = Network::parseXmlString($xmlhead."".unxmlify($obj->link).""); $Bname = $obj->title; $Blink = ""; $Bphoto = ""; @@ -220,8 +221,8 @@ function localize_item(&$item) { $xmlhead = "<" . "?xml version='1.0' encoding='UTF-8' ?" . ">"; - $obj = parse_xml_string($xmlhead.$item['object']); - $links = parse_xml_string($xmlhead."".unxmlify($obj->link).""); + $obj = Network::parseXmlString($xmlhead.$item['object']); + $links = Network::parseXmlString($xmlhead."".unxmlify($obj->link).""); $Bname = $obj->title; $Blink = ""; @@ -295,7 +296,7 @@ function localize_item(&$item) { } $plink = '[url=' . $obj['plink'] . ']' . $post_type . '[/url]'; - $parsedobj = parse_xml_string($xmlhead.$item['object']); + $parsedobj = Network::parseXmlString($xmlhead.$item['object']); $tag = sprintf('#[url=%s]%s[/url]', $parsedobj->id, $parsedobj->content); $item['body'] = L10n::t('%1$s tagged %2$s\'s %3$s with %4$s', $author, $objauthor, $plink, $tag ); @@ -312,7 +313,7 @@ function localize_item(&$item) { $xmlhead = "<" . "?xml version='1.0' encoding='UTF-8' ?" . ">"; - $obj = parse_xml_string($xmlhead.$item['object']); + $obj = Network::parseXmlString($xmlhead.$item['object']); if (strlen($obj->id)) { $r = q("SELECT * FROM `item` WHERE `uri` = '%s' AND `uid` = %d LIMIT 1", dbesc($obj->id), diff --git a/include/html2bbcode.php b/include/html2bbcode.php index 2404e42f6..c8a05c145 100644 --- a/include/html2bbcode.php +++ b/include/html2bbcode.php @@ -9,6 +9,7 @@ */ use Friendica\Core\Addon; +use Friendica\Util\Network; use Friendica\Util\XML; function node2bbcode(&$doc, $oldnode, $attributes, $startbb, $endbb) @@ -362,7 +363,7 @@ function addHostnameSub($matches, $basepath) $url = $matches[1]; $parts = array_merge($base, parse_url($url)); - $url2 = unParseUrl($parts); + $url2 = Network::unParseURL($parts); return str_replace($url, $url2, $link); } diff --git a/mod/dfrn_confirm.php b/mod/dfrn_confirm.php index 9e5f0f3d5..8c50a05a1 100644 --- a/mod/dfrn_confirm.php +++ b/mod/dfrn_confirm.php @@ -252,7 +252,7 @@ function dfrn_confirm_post(App $a, $handsfree = null) return; } - $xml = parse_xml_string($res); + $xml = Network::parseXmlString($res); $status = (int) $xml->status; $message = unxmlify($xml->message); // human readable text of what may have gone wrong. switch ($status) { diff --git a/mod/dfrn_notify.php b/mod/dfrn_notify.php index 142cafaa0..b1af5b3ef 100644 --- a/mod/dfrn_notify.php +++ b/mod/dfrn_notify.php @@ -123,7 +123,7 @@ function dfrn_notify_post(App $a) { // if contact's ssl policy changed, update our links - fix_contact_ssl_policy($importer,$ssl_policy); + Network::fixContactSslPolicy($importer, $ssl_policy); logger('dfrn_notify: received notify from ' . $importer['name'] . ' for ' . $importer['username']); logger('dfrn_notify: data: ' . $data, LOGGER_DATA); diff --git a/mod/dfrn_poll.php b/mod/dfrn_poll.php index 8841a7b5a..5042ed642 100644 --- a/mod/dfrn_poll.php +++ b/mod/dfrn_poll.php @@ -104,7 +104,7 @@ function dfrn_poll_init(App $a) logger("dfrn_poll: old profile returns " . $s, LOGGER_DATA); if (strlen($s)) { - $xml = parse_xml_string($s); + $xml = Network::parseXmlString($s); if ((int) $xml->status === 1) { $_SESSION['authenticated'] = 1; @@ -521,7 +521,7 @@ function dfrn_poll_content(App $a) logger("dfrn_poll: sec profile: " . $s, LOGGER_DATA); if (strlen($s) && strstr($s, 'pager['page']; // Json output - if(intval($json) === 1) - json_return_and_die($notifs); + if (intval($json) === 1) { + Network::jsonReturnAndDie($notifs); + } $notif_tpl = get_markup_template('notifications.tpl'); diff --git a/mod/smilies.php b/mod/smilies.php index d96a4bfc6..232ef91d0 100644 --- a/mod/smilies.php +++ b/mod/smilies.php @@ -1,10 +1,10 @@ $tmp['texts'][$i], 'icon' => $tmp['icons'][$i]]; } - json_return_and_die($results); + Network::jsonReturnAndDie($results); } else { return Smilies::replace('', true); } diff --git a/src/Core/NotificationsManager.php b/src/Core/NotificationsManager.php index e88b4218b..654ed5cc4 100644 --- a/src/Core/NotificationsManager.php +++ b/src/Core/NotificationsManager.php @@ -13,6 +13,7 @@ use Friendica\Core\System; use Friendica\Database\DBM; use Friendica\Model\Contact; use Friendica\Model\Profile; +use Friendica\Util\Network; require_once 'include/dba.php'; require_once 'include/html2plain.php'; @@ -337,7 +338,7 @@ class NotificationsManager extends BaseObject case ACTIVITY_FRIEND: $xmlhead = "<" . "?xml version='1.0' encoding='UTF-8' ?" . ">"; - $obj = parse_xml_string($xmlhead . $it['object']); + $obj = Network::parseXmlString($xmlhead . $it['object']); $it['fname'] = $obj->title; $notif = [ diff --git a/src/Network/Probe.php b/src/Network/Probe.php index e3130a4d7..db4f307b6 100644 --- a/src/Network/Probe.php +++ b/src/Network/Probe.php @@ -26,7 +26,6 @@ use DOMXPath; use DOMDocument; require_once 'include/dba.php'; -require_once 'include/network.php'; /** * @brief This class contain functions for probing URL @@ -111,7 +110,7 @@ class Probe $ret = Network::zFetchURL($ssl_url, false, $redirects, ['timeout' => $xrd_timeout, 'accept_content' => 'application/xrd+xml']); if ($ret['success']) { $xml = $ret['body']; - $xrd = parse_xml_string($xml, false); + $xrd = Network::parseXmlString($xml, false); $host_url = 'https://'.$host; } @@ -122,7 +121,7 @@ class Probe return false; } $xml = $ret['body']; - $xrd = parse_xml_string($xml, false); + $xrd = Network::parseXmlString($xml, false); $host_url = 'http://'.$host; } if (!is_object($xrd)) { @@ -332,7 +331,7 @@ class Probe } if (x($data, "photo")) { - $data["baseurl"] = matching_url(normalise_link($data["baseurl"]), normalise_link($data["photo"])); + $data["baseurl"] = Network::matchingURL(normalise_link($data["baseurl"]), normalise_link($data["photo"])); } else { $data["photo"] = System::baseUrl().'/images/person-175.jpg'; } @@ -709,7 +708,7 @@ class Probe } // If it is not JSON, maybe it is XML - $xrd = parse_xml_string($data, false); + $xrd = Network::parseXmlString($data, false); if (!is_object($xrd)) { logger("No webfinger data retrievable for ".$url, LOGGER_DEBUG); return false; diff --git a/src/Protocol/DFRN.php b/src/Protocol/DFRN.php index aed68e704..2901796db 100644 --- a/src/Protocol/DFRN.php +++ b/src/Protocol/DFRN.php @@ -793,7 +793,7 @@ class DFRN if ($activity) { $entry = $doc->createElement($element); - $r = parse_xml_string($activity, false); + $r = Network::parseXmlString($activity, false); if (!$r) { return false; } @@ -816,7 +816,7 @@ class DFRN $r->link = preg_replace('/\/', '', $r->link); // XML does need a single element as root element so we add a dummy element here - $data = parse_xml_string("" . $r->link . "", false); + $data = Network::parseXmlString("" . $r->link . "", false); if (is_object($data)) { foreach ($data->link as $link) { $attributes = []; @@ -1212,7 +1212,7 @@ class DFRN return 3; } - $res = parse_xml_string($xml); + $res = Network::parseXmlString($xml); if ((intval($res->status) != 0) || (! strlen($res->challenge)) || (! strlen($res->dfrn_id))) { return (($res->status) ? $res->status : 3); @@ -1357,7 +1357,7 @@ class DFRN Contact::unmarkForArchival($contact); } - $res = parse_xml_string($xml); + $res = Network::parseXmlString($xml); if (!isset($res->status)) { return -11; @@ -2188,7 +2188,7 @@ class DFRN if (!$verb) { return; } - $xo = parse_xml_string($item["object"], false); + $xo = Network::parseXmlString($item["object"], false); if (($xo->type == ACTIVITY_OBJ_PERSON) && ($xo->id)) { // somebody was poked/prodded. Was it me? @@ -2310,8 +2310,8 @@ class DFRN } if (($item["verb"] == ACTIVITY_TAG) && ($item["object-type"] == ACTIVITY_OBJ_TAGTERM)) { - $xo = parse_xml_string($item["object"], false); - $xt = parse_xml_string($item["target"], false); + $xo = Network::parseXmlString($item["object"], false); + $xt = Network::parseXmlString($item["target"], false); if ($xt->type == ACTIVITY_OBJ_NOTE) { $r = q( @@ -2518,7 +2518,7 @@ class DFRN $item["object"] = self::transformActivity($xpath, $object, "object"); if (trim($item["object"]) != "") { - $r = parse_xml_string($item["object"], false); + $r = Network::parseXmlString($item["object"], false); if (isset($r->type)) { $item["object-type"] = $r->type; } @@ -2787,8 +2787,8 @@ class DFRN } if (($item["verb"] == ACTIVITY_TAG) && ($item["object-type"] == ACTIVITY_OBJ_TAGTERM)) { - $xo = parse_xml_string($item["object"], false); - $xt = parse_xml_string($item["target"], false); + $xo = Network::parseXmlString($item["object"], false); + $xt = Network::parseXmlString($item["target"], false); if ($xt->type == ACTIVITY_OBJ_NOTE) { $i = q( diff --git a/src/Protocol/Diaspora.php b/src/Protocol/Diaspora.php index 58e3f5aff..b87aabfb4 100644 --- a/src/Protocol/Diaspora.php +++ b/src/Protocol/Diaspora.php @@ -186,7 +186,7 @@ class Diaspora */ private static function verifyMagicEnvelope($envelope) { - $basedom = parse_xml_string($envelope); + $basedom = Network::parseXmlString($envelope); if (!is_object($basedom)) { logger("Envelope is no XML file"); @@ -296,7 +296,7 @@ class Diaspora $xml = $raw; } - $basedom = parse_xml_string($xml); + $basedom = Network::parseXmlString($xml); if (!is_object($basedom)) { logger('Received data does not seem to be an XML. Discarding. '.$xml); @@ -347,7 +347,7 @@ class Diaspora public static function decode($importer, $xml) { $public = false; - $basedom = parse_xml_string($xml); + $basedom = Network::parseXmlString($xml); if (!is_object($basedom)) { logger("XML is not parseable."); @@ -381,7 +381,7 @@ class Diaspora $decrypted = self::aesDecrypt($outer_key, $outer_iv, $ciphertext); logger('decrypted: '.$decrypted, LOGGER_DEBUG); - $idom = parse_xml_string($decrypted); + $idom = Network::parseXmlString($decrypted); $inner_iv = base64_decode($idom->iv); $inner_aes_key = base64_decode($idom->aes_key); @@ -631,7 +631,7 @@ class Diaspora */ private static function validPosting($msg) { - $data = parse_xml_string($msg["message"]); + $data = Network::parseXmlString($msg["message"]); if (!is_object($data)) { logger("No valid XML ".$msg["message"], LOGGER_DEBUG); @@ -1281,7 +1281,7 @@ class Diaspora } } - $source_xml = parse_xml_string($x); + $source_xml = Network::parseXmlString($x); if (!is_object($source_xml)) { return false; diff --git a/src/Protocol/Feed.php b/src/Protocol/Feed.php index c129c31b0..e728afa24 100644 --- a/src/Protocol/Feed.php +++ b/src/Protocol/Feed.php @@ -9,6 +9,7 @@ namespace Friendica\Protocol; use Friendica\Database\DBM; use Friendica\Core\System; use Friendica\Model\Item; +use Friendica\Util\Network; use dba; use DOMDocument; use DOMXPath; @@ -243,7 +244,7 @@ class Feed { $orig_plink = $item["plink"]; - $item["plink"] = original_url($item["plink"]); + $item["plink"] = Network::originalURL($item["plink"]); $item["parent-uri"] = $item["uri"]; diff --git a/src/Util/Network.php b/src/Util/Network.php index cc796c5f7..9cd3cb719 100644 --- a/src/Util/Network.php +++ b/src/Util/Network.php @@ -11,6 +11,7 @@ use Friendica\Core\System; use Friendica\Core\Config; use Friendica\Network\Probe; use Friendica\Object\Image; +use Friendica\Util\Network; use Friendica\Util\XML; require_once 'library/slinky.php'; @@ -852,7 +853,7 @@ class Network { $a = get_app(); - $url = strip_tracking_query_params($url); + $url = self::stripTrackingQueryParams($url); if ($depth > 10) { return($url); @@ -885,15 +886,15 @@ class Network && (($curl_info['redirect_url'] != "") || ($curl_info['location'] != "")) ) { if ($curl_info['redirect_url'] != "") { - return(original_url($curl_info['redirect_url'], ++$depth, $fetchbody)); + return(Network::originalURL($curl_info['redirect_url'], ++$depth, $fetchbody)); } else { - return(original_url($curl_info['location'], ++$depth, $fetchbody)); + return(Network::originalURL($curl_info['location'], ++$depth, $fetchbody)); } } // Check for redirects in the meta elements of the body if there are no redirects in the header. if (!$fetchbody) { - return(original_url($url, ++$depth, true)); + return(Network::originalURL($url, ++$depth, true)); } // if the file is too large then exit @@ -945,7 +946,7 @@ class Network $pathinfo = explode(";", $path); foreach ($pathinfo as $value) { if (substr(strtolower($value), 0, 4) == "url=") { - return(original_url(substr($value, 4), ++$depth)); + return(Network::originalURL(substr($value, 4), ++$depth)); } } } diff --git a/src/Util/ParseUrl.php b/src/Util/ParseUrl.php index 67aebb4c7..ba9b7ec14 100644 --- a/src/Util/ParseUrl.php +++ b/src/Util/ParseUrl.php @@ -141,7 +141,7 @@ class ParseUrl $url = trim($url, "'"); $url = trim($url, '"'); - $url = strip_tracking_query_params($url); + $url = Network::stripTrackingQueryParams($url); $siteinfo["url"] = $url; $siteinfo["type"] = "link"; diff --git a/src/Worker/Delivery.php b/src/Worker/Delivery.php index a5befb844..cc704474e 100644 --- a/src/Worker/Delivery.php +++ b/src/Worker/Delivery.php @@ -15,6 +15,7 @@ use Friendica\Model\User; use Friendica\Protocol\Diaspora; use Friendica\Protocol\DFRN; use Friendica\Protocol\Email; +use Friendica\Util\Network; use dba; require_once 'include/html2plain.php'; @@ -299,7 +300,7 @@ class Delivery { } $ssl_policy = Config::get('system','ssl_policy'); - fix_contact_ssl_policy($x[0],$ssl_policy); + Network::fixContactSslPolicy($x[0], $ssl_policy); // If we are setup as a soapbox we aren't accepting top level posts from this person diff --git a/src/Worker/OnePoll.php b/src/Worker/OnePoll.php index b4e7bc20c..c06b8f593 100644 --- a/src/Worker/OnePoll.php +++ b/src/Worker/OnePoll.php @@ -219,7 +219,7 @@ class OnePoll } - $res = parse_xml_string($handshake_xml); + $res = Network::parseXmlString($handshake_xml); if (intval($res->status) == 1) { logger("$url replied status 1 - marking for death ");