Index: lib/basedomain.js |
=================================================================== |
--- a/lib/basedomain.js |
+++ b/lib/basedomain.js |
@@ -158,6 +158,30 @@ |
} |
/** |
+ * Extracts host name from the URL of the given frame. If the URL don't have host |
+ * information (like about:blank or data: URLs) it falls back to the parent frame. |
+ */ |
+function extractHostFromFrame(frame) |
+{ |
+ var host = extractHostFromURL(frame.url); |
+ if (!host) |
+ { |
+ var parentFrame = frame.parent; |
+ if (parentFrame) |
+ return extractHostFromFrame(parentFrame); |
+ } |
+ return host; |
+} |
+ |
+/** |
+ * Strips the fragment from a URL. |
+ */ |
+function stripFragmentFromURL(/**String*/ url) |
+{ |
+ return url.replace(/#.*/, ""); |
+} |
+ |
+/** |
* Parses URLs and provides an interface similar to nsIURI in Gecko, see |
* https://developer.mozilla.org/en-US/docs/XPCOM_Interface_Reference/nsIURI. |
* TODO: Make sure the parsing actually works the same as nsStandardURL. |