mirror of
https://github.com/discourse/discourse.git
synced 2024-12-01 20:25:48 +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;
|
||
|
}
|