mirror of
https://github.com/discourse/discourse.git
synced 2024-11-28 07:03:40 +08:00
20 lines
423 B
JavaScript
20 lines
423 B
JavaScript
let baseUri;
|
|
|
|
export default function getURL(url) {
|
|
if (!url) return url;
|
|
|
|
if (!baseUri) {
|
|
baseUri = $('meta[name="discourse-base-uri"]').attr("content") || "";
|
|
}
|
|
|
|
// if it's a non relative URL, return it.
|
|
if (url !== "/" && !/^\/[^\/]/.test(url)) return url;
|
|
|
|
const found = url.indexOf(baseUri);
|
|
|
|
if (found >= 0 && found < 3) return url;
|
|
if (url[0] !== "/") url = "/" + url;
|
|
|
|
return baseUri + url;
|
|
}
|