summaryrefslogtreecommitdiffstats
path: root/core/src
diff options
context:
space:
mode:
authorChristoph Wurst <christoph@winzerhof-wurst.at>2019-05-13 20:46:13 +0200
committerChristoph Wurst <christoph@winzerhof-wurst.at>2019-05-14 08:36:54 +0200
commit9aeed859c40d1070645ece02db472e09c6aceccc (patch)
treee0fef69129a9b4d28e4b80ae209aeac59faf58e7 /core/src
parentc1bd7e7fe7914fb1a73eb8c03b135dd657f9ce7c (diff)
downloadnextcloud-server-9aeed859c40d1070645ece02db472e09c6aceccc.tar.gz
nextcloud-server-9aeed859c40d1070645ece02db472e09c6aceccc.zip
Move OC host/port/protocol helpers to the bundle and deprecate them
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
Diffstat (limited to 'core/src')
-rw-r--r--core/src/OC/host.js63
-rw-r--r--core/src/OC/index.js14
2 files changed, 77 insertions, 0 deletions
diff --git a/core/src/OC/host.js b/core/src/OC/host.js
new file mode 100644
index 00000000000..ac02c63a72a
--- /dev/null
+++ b/core/src/OC/host.js
@@ -0,0 +1,63 @@
+/*
+ * @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @author 2019 Christoph Wurst <christoph@winzerhof-wurst.at>
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+/**
+ * Protocol that is used to access this Nextcloud instance
+ * @return {string} Used protocol
+ * @deprecated 17.0.0 use window.location.protocol directly
+ */
+export const getProtocol = () => window.location.protocol.split(':')[0]
+
+/**
+ * Returns the host used to access this Nextcloud instance
+ * Host is sometimes the same as the hostname but now always.
+ *
+ * Examples:
+ * http://example.com => example.com
+ * https://example.com => example.com
+ * http://example.com:8080 => example.com:8080
+ *
+ * @return {string} host
+ *
+ * @since 8.2
+ * @deprecated 17.0.0 use window.location.host directly
+ */
+export const getHost = () => window.location.host
+
+/**
+ * Returns the hostname used to access this Nextcloud instance
+ * The hostname is always stripped of the port
+ *
+ * @return {string} hostname
+ * @since 9.0
+ * @deprecated 17.0.0 use window.location.hostname directly
+ */
+export const getHostName = () => window.location.hostname
+
+/**
+ * Returns the port number used to access this Nextcloud instance
+ *
+ * @return {int} port number
+ *
+ * @since 8.2
+ * @deprecated 17.0.0 use window.location.port directly
+ */
+export const getPort = () => window.location.port
diff --git a/core/src/OC/index.js b/core/src/OC/index.js
index a346c32f033..4525ef189ac 100644
--- a/core/src/OC/index.js
+++ b/core/src/OC/index.js
@@ -51,6 +51,12 @@ import EventSource from './eventsource'
import {get, set} from './get_set'
import {getCapabilities} from './capabilities'
import {
+ getHost,
+ getHostName,
+ getPort,
+ getProtocol,
+} from './host'
+import {
getToken as getRequestToken,
subscribe as subscribeToRequestTokenChange,
} from './requesttoken'
@@ -158,6 +164,14 @@ export default {
joinPaths,
/**
+ * Host (url) helpers
+ */
+ getHost,
+ getHostName,
+ getPort,
+ getProtocol,
+
+ /**
* L10n
*/
getCanonicalLocale,