1
0
mirror of https://github.com/lancedikson/bowser synced 2026-03-02 03:40:27 +00:00

added detection for tizen and a new tizen flag

This commit is contained in:
BendingBender
2014-02-25 01:48:35 +01:00
parent 6b0bc2ee9b
commit e39d6a8fc0
5 changed files with 84 additions and 22 deletions

View File

@@ -35,7 +35,8 @@
, windowsphone = /windows phone/i.test(ua)
, blackberry = /(blackberry|\bbb\d+)/i.test(ua)
, rimtablet = /rim\stablet/i.test(ua)
, bada = /bada\//i.test(ua)
, bada = /bada/i.test(ua)
, tizen = /tizen/i.test(ua)
, webkitVersion = /version\/(\d+(\.\d+)?)/i
, firefoxVersion = /(?:firefox|iceweasel)[ \/](\d+(\.\d+)?)/i
, mobile = /mobi/i.test(ua)
@@ -139,6 +140,14 @@
};
touchpad && (o.touchpad = t)
}
else if (tizen) {
o = {
name: 'Tizen'
, webkit: t
, tizen: t
, version: getVersion(ua, /(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i, 1) || getVersion(ua, webkitVersion, 1)
};
}
else if (gecko) {
o = {
name: 'Gecko'
@@ -176,14 +185,8 @@
// OS version extraction
var osVersion;
if (android) {
osVersion = getVersion(ua, /android[ \/-](\d+(\.\d+)*)/i, 1);
if (osVersion) {
o.osversion = osVersion;
}
} else if (iphone || ipad || ipod) {
osVersion = getVersion(ua, /os (\d+([_\s]\d+)*) like mac os x/i, 1);
osVersion = (osVersion || "").replace(/[_\s]/g, '.');
if (tizen) {
osVersion = getVersion(ua, /tizen[\/\s](\d+(\.\d+)*)/i, 1);
} else if (windowsphone) {
osVersion = getVersion(ua, /windows phone (?:os)?\s?(\d+(\.\d+)*)/i, 1);
} else if (webos) {
@@ -192,6 +195,12 @@
osVersion = getVersion(ua, /rim\stablet\sos\s(\d+(\.\d+)*)/i, 1);
} else if (bada) {
osVersion = getVersion(ua, /bada\/(\d+(\.\d+)*)/i, 1);
} else if (iphone || ipad || ipod) {
osVersion = getVersion(ua, /os (\d+([_\s]\d+)*) like mac os x/i, 1);
osVersion = (osVersion || "").replace(/[_\s]/g, '.');
} else if (android) {
osVersion = getVersion(ua, /android[ \/-](\d+(\.\d+)*)/i, 1);
osVersion && (o.osversion = osVersion)
}
if (osVersion) {
o.osversion = osVersion;
@@ -201,7 +210,7 @@
var osMajorVersion = (osVersion || '').split('.')[0];
if (tablet || ipad || (android && (osMajorVersion == 3 || (osMajorVersion == 4 && !mobile))) || rimtablet || silk || touchpad) {
o.tablet = t
} else if (iphone || ipod || (android && mobile) || windowsphone || blackberry || webos || bada || mobile) {
} else if (iphone || ipod || (android && mobile) || windowsphone || blackberry || webos || bada || tizen || mobile) {
o.mobile = t
}

View File

@@ -886,6 +886,48 @@ module.exports.useragents = {
, x: true
}
}
, Tizen: {
'Mozilla/5.0 (Linux; Tizen 2.2; sdk) AppleWebKit/537.3 (KHTML, like Gecko) Version/2.2 Mobile Safari/537.3': {
tizen: true
, osversion: '2.2'
, webkit: true
, version: '2.2'
, mobile: true
, x: true
}
, 'Mozilla/5.0 (Linux; Tizen 2.1; sdk) AppleWebKit/537.3 (KHTML, like Gecko) Version/2.1 Mobile Safari/537.3': {
tizen: true
, osversion: '2.1'
, webkit: true
, version: '2.1'
, mobile: true
, x: true
}
, 'Mozilla/5.0 (Linux; U; Tizen 2.0; en-us) AppleWebKit/537.1 (KHTML, like Gecko) Mobile TizenBrowser/2.0': {
tizen: true
, osversion: '2.0'
, webkit: true
, version: '2.0'
, mobile: true
, x: true
}
, 'Mozilla/5.0 (Linux; U; Tizen/1.0 like Android; en-us; AppleWebKit/534.46 (KHTML, like Gecko) Tizen Browser/1.0 Mobile': {
tizen: true
, osversion: '1.0'
, webkit: true
, version: '1.0'
, mobile: true
, x: true
}
, 'Mozilla/5.0 (SAMSUNG; SAMSUNG-GT-i9500/1.0; U; Tizen/1.0 like Android; en-us) AppleWebKit/534.46 (KHTML, like Gecko) SLP Browser/1.0 Mobile': {
tizen: true
, osversion: '1.0'
, webkit: true
, version: '1.0'
, mobile: true
, x: true
}
}
, PhantomJS: {
'Mozilla/5.0 (Macintosh; Intel Mac OS X) AppleWebKit/534.34 (KHTML, like Gecko) PhantomJS/1.5.0 Safari/534.34': {
phantom: true