blob: 819e42b695424c4bd84d0dfe09d853b37d0563a7 [file] [log] [blame]
Andrey Andreeve734b382012-03-26 13:42:36 +03001<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
Derek Jonesf4a4bd82011-10-20 12:18:42 -05002/**
3 * CodeIgniter
4 *
Phil Sturgeon07c1ac82012-03-09 17:03:37 +00005 * An open source application development framework for PHP 5.2.4 or newer
Derek Jonesf4a4bd82011-10-20 12:18:42 -05006 *
7 * NOTICE OF LICENSE
Eric Barnes46fcf0b2011-11-12 12:42:14 -05008 *
Derek Jonesf4a4bd82011-10-20 12:18:42 -05009 * Licensed under the Academic Free License version 3.0
Eric Barnes46fcf0b2011-11-12 12:42:14 -050010 *
Derek Jones61df9062011-10-21 09:55:40 -050011 * This source file is subject to the Academic Free License (AFL 3.0) that is
Derek Jonesf4a4bd82011-10-20 12:18:42 -050012 * bundled with this package in the files license_afl.txt / license_afl.rst.
13 * It is also available through the world wide web at this URL:
14 * http://opensource.org/licenses/AFL-3.0
15 * If you did not receive a copy of the license and are unable to obtain it
16 * through the world wide web, please send an email to
17 * licensing@ellislab.com so we can send you a copy immediately.
18 *
19 * @package CodeIgniter
20 * @author EllisLab Dev Team
Andrey Andreev80500af2013-01-01 08:16:53 +020021 * @copyright Copyright (c) 2008 - 2013, EllisLab, Inc. (http://ellislab.com/)
Derek Jonesf4a4bd82011-10-20 12:18:42 -050022 * @license http://opensource.org/licenses/AFL-3.0 Academic Free License (AFL 3.0)
23 * @link http://codeigniter.com
24 * @since Version 1.0
25 * @filesource
26 */
27
Derek Allard2067d1a2008-11-13 22:59:24 +000028/*
29| -------------------------------------------------------------------
30| USER AGENT TYPES
31| -------------------------------------------------------------------
Andrey Andreevd4901392012-06-06 14:54:15 +030032| This file contains four arrays of user agent data. It is used by the
Derek Allard2067d1a2008-11-13 22:59:24 +000033| User Agent Class to help identify browser, platform, robot, and
Andrey Andreevd4901392012-06-06 14:54:15 +030034| mobile device data. The array keys are used to identify the device
Derek Allard2067d1a2008-11-13 22:59:24 +000035| and the array values are used to set the actual name of the item.
Derek Allard2067d1a2008-11-13 22:59:24 +000036*/
37
Andrey Andreevca7d8222012-05-11 10:59:09 +030038$platforms = array(
Andre Gardiner303c7b22013-12-05 22:00:32 -050039 'windows nt 6.3' => 'Windows 8.1',
Debeet9defe902012-07-25 17:32:11 +030040 'windows nt 6.2' => 'Windows 8',
Eric Barnes46fcf0b2011-11-12 12:42:14 -050041 'windows nt 6.1' => 'Windows 7',
42 'windows nt 6.0' => 'Windows Vista',
43 'windows nt 5.2' => 'Windows 2003',
44 'windows nt 5.1' => 'Windows XP',
45 'windows nt 5.0' => 'Windows 2000',
46 'windows nt 4.0' => 'Windows NT 4.0',
47 'winnt4.0' => 'Windows NT 4.0',
48 'winnt 4.0' => 'Windows NT',
49 'winnt' => 'Windows NT',
50 'windows 98' => 'Windows 98',
51 'win98' => 'Windows 98',
52 'windows 95' => 'Windows 95',
53 'win95' => 'Windows 95',
msegers335fed92013-08-14 10:46:25 +020054 'windows phone' => 'Windows Phone',
Eric Barnes46fcf0b2011-11-12 12:42:14 -050055 'windows' => 'Unknown Windows OS',
Andrey Andreevca7d8222012-05-11 10:59:09 +030056 'android' => 'Android',
57 'blackberry' => 'BlackBerry',
58 'iphone' => 'iOS',
59 'ipad' => 'iOS',
60 'ipod' => 'iOS',
Eric Barnes46fcf0b2011-11-12 12:42:14 -050061 'os x' => 'Mac OS X',
62 'ppc mac' => 'Power PC Mac',
63 'freebsd' => 'FreeBSD',
64 'ppc' => 'Macintosh',
65 'linux' => 'Linux',
66 'debian' => 'Debian',
67 'sunos' => 'Sun Solaris',
68 'beos' => 'BeOS',
69 'apachebench' => 'ApacheBench',
70 'aix' => 'AIX',
71 'irix' => 'Irix',
72 'osf' => 'DEC OSF',
73 'hp-ux' => 'HP-UX',
74 'netbsd' => 'NetBSD',
75 'bsdi' => 'BSDi',
76 'openbsd' => 'OpenBSD',
77 'gnu' => 'GNU/Linux',
78 'unix' => 'Unknown Unix OS'
79);
Derek Allard2067d1a2008-11-13 22:59:24 +000080
81
82// The order of this array should NOT be changed. Many browsers return
83// multiple browser types so we want to identify the sub-type first.
84$browsers = array(
Jcchemin02410502013-10-08 18:18:54 +020085 'OPR' => 'Opera',
Eric Barnes46fcf0b2011-11-12 12:42:14 -050086 'Flock' => 'Flock',
87 'Chrome' => 'Chrome',
Andrey Andreev10925d22014-01-09 00:16:46 +020088 // Opera 10+ always reports Opera/9.80 and appends Version/<real version> to the user agent string
89 'Opera.*?Version' => 'Opera',
Eric Barnes46fcf0b2011-11-12 12:42:14 -050090 'Opera' => 'Opera',
91 'MSIE' => 'Internet Explorer',
92 'Internet Explorer' => 'Internet Explorer',
Dionysis Arvanitis2cdd50e2014-01-15 16:24:15 +020093 'Trident.* rv' => 'Internet Explorer',
Eric Barnes46fcf0b2011-11-12 12:42:14 -050094 'Shiira' => 'Shiira',
95 'Firefox' => 'Firefox',
96 'Chimera' => 'Chimera',
97 'Phoenix' => 'Phoenix',
98 'Firebird' => 'Firebird',
99 'Camino' => 'Camino',
100 'Netscape' => 'Netscape',
101 'OmniWeb' => 'OmniWeb',
102 'Safari' => 'Safari',
103 'Mozilla' => 'Mozilla',
104 'Konqueror' => 'Konqueror',
105 'icab' => 'iCab',
106 'Lynx' => 'Lynx',
107 'Links' => 'Links',
108 'hotjava' => 'HotJava',
109 'amaya' => 'Amaya',
Andrey Andreev3ffce982013-01-21 15:24:09 +0200110 'IBrowse' => 'IBrowse',
vkeranovfdd14612013-11-08 09:19:29 +0200111 'Maxthon' => 'Maxthon',
112 'Ubuntu' => 'Ubuntu Web Browser'
Eric Barnes46fcf0b2011-11-12 12:42:14 -0500113);
Derek Allard2067d1a2008-11-13 22:59:24 +0000114
115$mobiles = array(
Eric Barnes46fcf0b2011-11-12 12:42:14 -0500116 // legacy array, old values commented out
117 'mobileexplorer' => 'Mobile Explorer',
118// 'openwave' => 'Open Wave',
119// 'opera mini' => 'Opera Mini',
120// 'operamini' => 'Opera Mini',
121// 'elaine' => 'Palm',
122 'palmsource' => 'Palm',
123// 'digital paths' => 'Palm',
124// 'avantgo' => 'Avantgo',
125// 'xiino' => 'Xiino',
126 'palmscape' => 'Palmscape',
127// 'nokia' => 'Nokia',
128// 'ericsson' => 'Ericsson',
129// 'blackberry' => 'BlackBerry',
130// 'motorola' => 'Motorola'
Derek Allard2067d1a2008-11-13 22:59:24 +0000131
Eric Barnes46fcf0b2011-11-12 12:42:14 -0500132 // Phones and Manufacturers
Andrey Andreevca7d8222012-05-11 10:59:09 +0300133 'motorola' => 'Motorola',
134 'nokia' => 'Nokia',
135 'palm' => 'Palm',
136 'iphone' => 'Apple iPhone',
137 'ipad' => 'iPad',
138 'ipod' => 'Apple iPod Touch',
139 'sony' => 'Sony Ericsson',
140 'ericsson' => 'Sony Ericsson',
141 'blackberry' => 'BlackBerry',
142 'cocoon' => 'O2 Cocoon',
143 'blazer' => 'Treo',
144 'lg' => 'LG',
145 'amoi' => 'Amoi',
146 'xda' => 'XDA',
147 'mda' => 'MDA',
148 'vario' => 'Vario',
149 'htc' => 'HTC',
150 'samsung' => 'Samsung',
151 'sharp' => 'Sharp',
152 'sie-' => 'Siemens',
153 'alcatel' => 'Alcatel',
154 'benq' => 'BenQ',
155 'ipaq' => 'HP iPaq',
156 'mot-' => 'Motorola',
157 'playstation portable' => 'PlayStation Portable',
Debeet9defe902012-07-25 17:32:11 +0300158 'playstation 3' => 'PlayStation 3',
TheDragonSlayer2e746812013-03-30 09:50:27 -0300159 'playstation vita' => 'PlayStation Vita',
Andrey Andreevca7d8222012-05-11 10:59:09 +0300160 'hiptop' => 'Danger Hiptop',
161 'nec-' => 'NEC',
162 'panasonic' => 'Panasonic',
163 'philips' => 'Philips',
164 'sagem' => 'Sagem',
165 'sanyo' => 'Sanyo',
166 'spv' => 'SPV',
167 'zte' => 'ZTE',
168 'sendo' => 'Sendo',
Eric Roberts19d0f562012-08-11 19:53:59 -0500169 'nintendo dsi' => 'Nintendo DSi',
170 'nintendo ds' => 'Nintendo DS',
171 'nintendo 3ds' => 'Nintendo 3DS',
Andrey Andreevca7d8222012-05-11 10:59:09 +0300172 'wii' => 'Nintendo Wii',
Andrey Andreevca7d8222012-05-11 10:59:09 +0300173 'open web' => 'Open Web',
174 'openweb' => 'OpenWeb',
Bo-Yi Wuf22f8522011-11-12 15:23:04 +0800175
Eric Barnes46fcf0b2011-11-12 12:42:14 -0500176 // Operating Systems
Andrey Andreevca7d8222012-05-11 10:59:09 +0300177 'android' => 'Android',
178 'symbian' => 'Symbian',
179 'SymbianOS' => 'SymbianOS',
180 'elaine' => 'Palm',
Andrey Andreevca7d8222012-05-11 10:59:09 +0300181 'series60' => 'Symbian S60',
182 'windows ce' => 'Windows CE',
Derek Allard2067d1a2008-11-13 22:59:24 +0000183
Eric Barnes46fcf0b2011-11-12 12:42:14 -0500184 // Browsers
Andrey Andreevca7d8222012-05-11 10:59:09 +0300185 'obigo' => 'Obigo',
186 'netfront' => 'Netfront Browser',
187 'openwave' => 'Openwave Browser',
188 'mobilexplorer' => 'Mobile Explorer',
189 'operamini' => 'Opera Mini',
190 'opera mini' => 'Opera Mini',
191 'opera mobi' => 'Opera Mobile',
vlakoffc941d852013-08-06 14:44:40 +0200192 'fennec' => 'Firefox Mobile',
Derek Allard2067d1a2008-11-13 22:59:24 +0000193
Eric Barnes46fcf0b2011-11-12 12:42:14 -0500194 // Other
Andrey Andreevca7d8222012-05-11 10:59:09 +0300195 'digital paths' => 'Digital Paths',
196 'avantgo' => 'AvantGo',
197 'xiino' => 'Xiino',
198 'novarra' => 'Novarra Transcoder',
199 'vodafone' => 'Vodafone',
200 'docomo' => 'NTT DoCoMo',
201 'o2' => 'O2',
Derek Allard2067d1a2008-11-13 22:59:24 +0000202
Eric Barnes46fcf0b2011-11-12 12:42:14 -0500203 // Fallback
Andrey Andreevca7d8222012-05-11 10:59:09 +0300204 'mobile' => 'Generic Mobile',
205 'wireless' => 'Generic Mobile',
206 'j2me' => 'Generic Mobile',
207 'midp' => 'Generic Mobile',
208 'cldc' => 'Generic Mobile',
209 'up.link' => 'Generic Mobile',
210 'up.browser' => 'Generic Mobile',
211 'smartphone' => 'Generic Mobile',
212 'cellphone' => 'Generic Mobile'
Eric Barnes46fcf0b2011-11-12 12:42:14 -0500213);
Derek Allard2067d1a2008-11-13 22:59:24 +0000214
215// There are hundreds of bots but these are the most common.
216$robots = array(
Eric Barnes46fcf0b2011-11-12 12:42:14 -0500217 'googlebot' => 'Googlebot',
218 'msnbot' => 'MSNBot',
Garth Kerr1bfc1152013-04-03 13:02:21 -0400219 'baiduspider' => 'Baiduspider',
Andrew Seymour00cfbd22011-11-12 21:18:07 +0000220 'bingbot' => 'Bing',
Eric Barnes46fcf0b2011-11-12 12:42:14 -0500221 'slurp' => 'Inktomi Slurp',
222 'yahoo' => 'Yahoo',
223 'askjeeves' => 'AskJeeves',
224 'fastcrawler' => 'FastCrawler',
225 'infoseek' => 'InfoSeek Robot 1.0',
Garth Kerr1bfc1152013-04-03 13:02:21 -0400226 'lycos' => 'Lycos',
227 'yandex' => 'YandexBot'
Eric Barnes46fcf0b2011-11-12 12:42:14 -0500228);
Derek Allard2067d1a2008-11-13 22:59:24 +0000229
230/* End of file user_agents.php */
Andrey Andreeva6eae872014-01-03 18:25:20 +0200231/* Location: ./application/config/user_agents.php */