summaryrefslogtreecommitdiff
path: root/src/SemanticScuttle/functions.php
diff options
context:
space:
mode:
authorChristian Weiske <cweiske@cweiske.de>2012-01-20 14:52:36 +0100
committerChristian Weiske <cweiske@cweiske.de>2012-01-20 14:52:36 +0100
commit728d642563be526d84921c73825f4087dcb1b044 (patch)
tree3b7a8d7db0c141bb7627b7948984d1a0d5bf36fc /src/SemanticScuttle/functions.php
parent79d1e2de1097bb73b2cc1e7d0190a6c2bc05268d (diff)
downloadsemanticscuttle-728d642563be526d84921c73825f4087dcb1b044.tar.gz
semanticscuttle-728d642563be526d84921c73825f4087dcb1b044.tar.bz2
Part of bug #3463481: Add HTTP protocol to self URL in feed
Diffstat (limited to 'src/SemanticScuttle/functions.php')
-rw-r--r--src/SemanticScuttle/functions.php25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/SemanticScuttle/functions.php b/src/SemanticScuttle/functions.php
index 84e9c5f..09f7cf3 100644
--- a/src/SemanticScuttle/functions.php
+++ b/src/SemanticScuttle/functions.php
@@ -118,6 +118,31 @@ function createURL($page = '', $ending = '') {
return ROOT . $page;
}
}
+
+/**
+ * Adds the protocol to the URL if it's missing.
+ * If the current URL is served via HTTPS, https will be used as protocol.
+ *
+ * Useful to fix ROOT urls of SemanticScuttle when it's needed, e.g.
+ * in the bookmarklet or the feed.
+ *
+ * @param string $url Url with or without the protocol ("//example.org/foo")
+ *
+ * @return string URL with a HTTP protocol
+ */
+function addProtocolToUrl($url)
+{
+ if (substr($url, 0, 2) != '//') {
+ return $url;
+ }
+
+ if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']) {
+ $protocol = 'https:';
+ } else {
+ $protocol = 'http:';
+ }
+ return $protocol . $url;
+}
/**
* Creates a "vote for/against this bookmark" URL.
* Also runs htmlspecialchars() on them to prevent XSS.