From 91ccb4ba6e203f1b80a1aa7187d8773434948fc2 Mon Sep 17 00:00:00 2001 From: Vojta Jina Date: Tue, 19 Jul 2011 15:52:27 +0200 Subject: feat($browser): add $browser.baseHref() This method abstracts in document.head - returns the value. If absolute href set, it converts the href to relative. --- src/Browser.js | 11 +++++++++++ src/angular-mocks.js | 5 +++++ 2 files changed, 16 insertions(+) (limited to 'src') diff --git a/src/Browser.js b/src/Browser.js index 8e8f511a..62e5b116 100644 --- a/src/Browser.js +++ b/src/Browser.js @@ -509,4 +509,15 @@ function Browser(window, document, body, XHR, $log, $sniffer) { return script; }; + + /** + * Returns current + * (always relative - without domain) + * + * @returns {string=} + */ + self.baseHref = function() { + var href = document.find('base').attr('href'); + return href ? href.replace(/^https?\:\/\/[^\/]*/, '') : href; + }; } diff --git a/src/angular-mocks.js b/src/angular-mocks.js index 8410dc8c..f533bee0 100644 --- a/src/angular-mocks.js +++ b/src/angular-mocks.js @@ -302,6 +302,11 @@ function MockBrowser() { self.deferredFns.shift().fn(); } }; + + self.$$baseHref = ''; + self.baseHref = function() { + return this.$$baseHref; + }; } MockBrowser.prototype = { -- cgit v1.2.3