summaryrefslogtreecommitdiffstats
path: root/install/html/ffconfig.js
diff options
context:
space:
mode:
Diffstat (limited to 'install/html/ffconfig.js')
-rw-r--r--install/html/ffconfig.js32
1 files changed, 31 insertions, 1 deletions
diff --git a/install/html/ffconfig.js b/install/html/ffconfig.js
index 3c9f34c77..ecb1a635f 100644
--- a/install/html/ffconfig.js
+++ b/install/html/ffconfig.js
@@ -111,6 +111,36 @@ IPA.browser_config = {
var element = self.get_data_element();
var ext_installed = element.getAttribute('answer') === 'true';
return ext_installed;
- }
+ },
+
+ get_browser: function() {
+
+ var ua = window.navigator.userAgent.toLowerCase();
+
+ var match = (/(chrome)[ \/]([\w.]+)/.exec(ua)) ||
+ (/(webkit)[ \/]([\w.]+)/.exec(ua)) ||
+ (/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua)) ||
+ (/(msie) ([\w.]+)/.exec(ua)) ||
+ ua.indexOf("compatible") < 0 && (/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua)) ||
+ [];
+ var matched = {
+ browser: match[ 1 ] || "",
+ version: match[ 2 ] || "0"
+ };
+ var browser = {};
+
+ if (matched.browser) {
+ browser[matched.browser] = true;
+ browser.version = matched.version;
+ }
+
+ // Chrome is Webkit, but Webkit is also Safari.
+ if (browser.chrome) {
+ browser.webkit = true;
+ } else if ( browser.webkit ) {
+ browser.safari = true;
+ }
+ return browser;
+ }
}; \ No newline at end of file