From ef591e7ee21435da9314c5f7f6ea983c6f423898 Mon Sep 17 00:00:00 2001 From: Guillaume Virlet Date: Wed, 2 Sep 2015 13:55:39 +0200 Subject: Url: introduce global helper functions for cleanup and scheme detection Relates to #314 & #326 Additions: - add global `cleanup_url()` and `get_url_scheme()` functions Modifications: - replace `Url` usage in `index.php` by calls to global functions - fix `Url` tests not being run: PHPUnit expects a single test class per file - move classes to separate files --- application/LinkDB.php | 4 ++++ application/Url.php | 30 ++++++++++++++++++++++++++++-- 2 files changed, 32 insertions(+), 2 deletions(-) (limited to 'application') diff --git a/application/LinkDB.php b/application/LinkDB.php index 463aa47e..84733505 100644 --- a/application/LinkDB.php +++ b/application/LinkDB.php @@ -287,6 +287,10 @@ You use the community supported version of the original Shaarli project, by Seba /** * Returns the link for a given URL, or False if it does not exist. + * + * @param string $url URL to search for + * + * @return mixed the existing link if it exists, else 'false' */ public function getLinkFromUrl($url) { diff --git a/application/Url.php b/application/Url.php index 02a4395d..af43b457 100755 --- a/application/Url.php +++ b/application/Url.php @@ -25,6 +25,32 @@ function unparse_url($parsedUrl) return "$scheme$user$pass$host$port$path$query$fragment"; } +/** + * Removes undesired query parameters and fragments + * + * @param string url Url to be cleaned + * + * @return string the string representation of this URL after cleanup + */ +function cleanup_url($url) +{ + $obj_url = new Url($url); + return $obj_url->cleanup(); +} + +/** + * Get URL scheme. + * + * @param string url Url for which the scheme is requested + * + * @return mixed the URL scheme or false if none is provided. + */ +function get_url_scheme($url) +{ + $obj_url = new Url($url); + return $obj_url->getScheme(); +} + /** * URL representation and cleanup utilities * @@ -90,7 +116,7 @@ class Url /** * Returns a string representation of this URL */ - public function __toString() + public function toString() { return unparse_url($this->parts); } @@ -149,7 +175,7 @@ class Url { $this->cleanupQuery(); $this->cleanupFragment(); - return $this->__toString(); + return $this->toString(); } /** -- cgit v1.2.3