ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/BBClone/trunk/lib/browser.php
Revision: 383
Committed: Tue Jan 16 09:40:11 2018 UTC (6 years, 10 months ago) by joku
File size: 43060 byte(s)
Log Message:
update Opera detection

File Contents

# User Rev Content
1 joku 63 <?php
2     /* This file is part of BBClone (A PHP based Web Counter on Steroids)
3     *
4     * SVN FILE $Id$
5     *
6 joku 381 * Copyright (C) 2001-2018, the BBClone Team (see doc/authors.txt for details)
7 joku 63 *
8     * This program is free software: you can redistribute it and/or modify
9     * it under the terms of the GNU General Public License as published by
10     * the Free Software Foundation, either version 3 of the License, or
11     * (at your option) any later version.
12     *
13     * This program is distributed in the hope that it will be useful,
14     * but WITHOUT ANY WARRANTY; without even the implied warranty of
15     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16     * GNU General Public License for more details.
17     *
18     * See doc/copying.txt for details
19     */
20    
21     ///////////////////////
22     // Browser Detection //
23     ///////////////////////
24    
25     $browser = array(
26     "1X" => array(
27     "icon" => "question",
28     "title" => "1X",
29     "rule" => array(
30     "^Science Traveller International 1X[ /]([0-9.]{1,10})" => "\\1",
31     ),
32     "uri" => "http://jansfreeware.com/jfinternet.htm"
33     ),
34     "abolimba" => array(
35     "icon" => "question",
36     "title" => "Abolimba",
37     "rule" => array(
38     "www.abolimba.de" => ""
39     ),
40     "uri" => "http://www.abolimba.de"
41     ),
42     "abrowse" => array(
43     "icon" => "abrowse",
44     "title" => "ABrowse",
45     "rule" => array(
46     "abrowse[ /\-]([0-9.]{1,10})" => "\\1",
47     "^abrowse" => ""
48     ),
49     "uri" => "http://abrowse.sourceforge.net/"
50     ),
51     "ace" => array(
52     "icon" => "ace",
53     "title" => "Ace Explorer",
54     "rule" => array(
55     "^Ace Explorer" => ""
56     ),
57     "uri" => "http://www.aceexplorer.com/"
58     ),
59     "acorn" => array(
60     "icon" => "question",
61     "title" => "Acorn Browser",
62     "rule" => array(
63     "Acorn (Browse|Phoenix)[ /]([0-9.]{1,10})" => "\\1"
64     ),
65     "uri" => "http://www.vigay.com/inet/acorn/browse-html.html"
66     ),
67     "acoo" => array(
68     "icon" => "acoo",
69     "title" => "Acoo",
70     "rule" => array(
71     "ACOO BROWSER" => ""
72     ),
73     "uri" => "http://www.acoobrowser.com/"
74     ),
75     "activeworlds" => array(
76     "icon" => "question",
77     "title" => "ActiveWorlds",
78     "rule" => array(
79     "Activeworlds[ /]([0-9.]{1,10})" => "\\1",
80     "Activeworlds" => ""
81     ),
82     "uri" => ""
83     ),
84     "akregator" => array(
85     "icon" => "akregator",
86     "title" => "Akregator",
87     "rule" => array(
88     "akregator/([0-9.]{1,10})" => "\\1"
89     ),
90     "uri" => "http://akregator.kde.org/"
91     ),
92     "amaya" => array(
93     "icon" => "amaya",
94     "title" => "Amaya",
95     "rule" => array(
96     "amaya/([0-9.]{1,10})" => "\\1"
97     ),
98     "uri" => "http://www.w3c.org/amaya/"
99     ),
100     "annotate_google" => array(
101     "icon" => "question",
102     "title" => "annotate_google",
103     "rule" => array(
104     "^annotate_google" => "\\1"
105     ),
106     "uri" => "http://ponderer.org/download/annotate_google.user.js"
107     ),
108     "ant" => array(
109     "icon" => "ant",
110     "title" => "ANTFresco",
111     "rule" => array(
112     "ANTFresco[ /]([0-9.]{1,10})" => "\\1"
113     ),
114     "uri" => ""
115     ),
116     "aol" => array(
117     "icon" => "aol",
118     "title" => "AOL",
119     "rule" => array(
120     "aol[ /\-]([0-9.]{1,10})" => "\\1",
121     "America Online Browser[ /]([0-9.]{1,10}).*rev([0-9.]{1,10})" => "\\1",
122     "aol[ /\-]?browser" => "",
123     "AOL-IWENG ([0-9.]{1,10})" => "\\1",
124     "ADM[ /]([0-9.]{1,10})" => "\\1"
125     ),
126     "uri" => "http://www.aol.com"
127     ),
128     "aplix" => array(
129     "icon" => "question",
130     "title" => "Aplix",
131     "rule" => array(
132     "^Aplix HTTP[ /]([0-9.]{1,10})" => "\\1",
133     "^Aplix_(SANYO|SEGASATURN)_browser[ /]([0-9.]{1,10})" => "\\2"
134     ),
135     "uri" => ""
136     ),
137     "arora" => array(
138     "icon" => "arora",
139     "title" => "Arora",
140     "rule" => array(
141     "Arora[ /]([0-9.]{1,10})" => "\\1"
142     ),
143     "uri" => "http://www.arora-browser.org/"
144     ),
145     "avantbrowser" => array(
146     "icon" => "avantbrowser",
147     "title" => "Avant Browser",
148     "rule" => array(
149     "Avant[ ]?Browser" => ""
150     ),
151     "uri" => "http://www.avantbrowser.com/"
152     ),
153     "avantgo" => array(
154     "icon" => "avantgo",
155     "title" => "AvantGo",
156     "rule" => array(
157     "AvantGo[ /]([0-9.]{1,10})" => "\\1"
158     ),
159     "uri" => "http://www.avantgo.com/frontdoor/"
160     ),
161     "aweb" => array(
162     "icon" => "aweb",
163     "title" => "Aweb",
164     "rule" => array(
165     "Amiga-Aweb[/ ]([0-9.]{1,10})" => "\\1",
166     "Aweb[/ ]([0-9.]{1,10})" => "\\1",
167     "^AWeb" => ""
168     ),
169     "uri" => "http://aweb.sunsite.dk/"
170     ),
171     "babya" => array(
172     "icon" => "question",
173     "title" => "Babya Discoverer",
174     "rule" => array(
175     "Babya Discoverer ([0-9.]{1,10})" => "\\1"
176     ),
177     "uri" => ""
178     ),
179     "barca" => array(
180     "icon" => "question",
181     "title" => "Barca",
182     "rule" => array(
183     "Barca(Pro)?[ /]([0-9.]{1,10})" => "\\2"
184     ),
185     "uri" => ""
186     ),
187     "beonex" => array(
188     "icon" => "beonex",
189     "title" => "Beonex",
190     "rule" => array(
191     "beonex/([0-9.]{1,10})" => "\\1"
192     ),
193     "uri" => ""
194     ),
195     "bezillabrowser" => array(
196     "icon" => "bezillabrowser",
197     "title" => "BeZillaBrowser",
198     "rule" => array(
199     "BeZillaBrowser/([0-9.+]{1,10})" => "\\1"
200     ),
201     "uri" => "http://www.bezilla.org/"
202     ),
203     "biyubi" => array(
204     "icon" => "question",
205     "title" => "Biyubi",
206     "rule" => array(
207     "^Biyubi/([0-9.]{1,10})" => "\\1"
208     ),
209     "uri" => ""
210     ),
211     "blackberry" => array(
212     "icon" => "blackberry",
213     "title" => "BlackBerry",
214     "rule" => array(
215     "^BlackBerry.*?/([0-9.]{1,10})" => "\\1"
216     ),
217     "uri" => "http://www.blackberry.com/"
218     ),
219     "blazer" => array(
220     "icon" => "blazer",
221     "title" => "Blazer",
222     "rule" => array(
223     "Blazer[/ ]([0-9.]{1,10})" => "\\1"
224     ),
225     "uri" => ""
226     ),
227     "bluefish" => array(
228     "icon" => "bluefish",
229     "title" => "BlueFish",
230     "rule" => array(
231     "bluefish[/ ]([0-9.]{1,10})" => "\\1"
232     ),
233     "uri" => "http://bluefish.openoffice.nl/"
234     ),
235     "browsex" => array(
236     "icon" => "browsex",
237     "title" => "BrowseX",
238     "rule" => array(
239     "BrowseX.*\(([0-9.]{1,10})" => "\\1"
240     ),
241     "uri" => "http://www.browsex.com/"
242     ),
243     "camino" => array(
244     "icon" => "camino",
245     "title" => "Camino",
246     "rule" => array(
247     "camino/([0-9.+]{1,10})" => "\\1"
248     ),
249     "uri" => "http://www.mozilla.org/projects/camino/"
250     ),
251     "checkandget" => array(
252     "icon" => "checkandget",
253     "title" => "Check&Get",
254     "rule" => array(
255     "Check\&Get[/ ]([0-9.]{1,10})" => "\\1"
256     ),
257     "uri" => "http://activeurls.com/"
258     ),
259     "chimera" => array(
260     "icon" => "chimera",
261     "title" => "Chimera",
262     "rule" => array(
263     "chimera/([0-9.+]{1,10})" => "\\1"
264     ),
265     "uri" => "http://www.chimera.org/"
266     ),
267     "cometbird" => array(
268     "icon" => "cometbird",
269     "title" => "CometBird",
270     "rule" => array(
271     "CometBird[ /]([0-9.]{1,10})" => "\\1"
272     ),
273     "uri" => "http://www.cometbird.com/"
274     ),
275     "compuserve" => array(
276     "icon" => "question",
277     "title" => "CompuServe",
278     "rule" => array(
279     "CS 2000 ([0-9.]{1,10})" => "\\1"
280     ),
281     "uri" => "http://www.compuserve.com/"
282     ),
283     "contiki" => array(
284     "icon" => "question",
285     "title" => "Contiki",
286     "rule" => array(
287     "^Contiki[ /]([0-9.]{1,10})" => "\\1"
288     ),
289     "uri" => "http://www.sics.se/~adam/contiki/apps/webbrowser.html"
290     ),
291     "columbus" => array(
292     "icon" => "columbus",
293     "title" => "Columbus",
294     "rule" => array(
295     "columbus[ /]([0-9.]{1,10})" => "\\1"
296     ),
297     "uri" => ""
298     ),
299     "crazybrowser" => array(
300     "icon" => "crazybrowser",
301     "title" => "Crazy Browser",
302     "rule" => array(
303     "Crazy Browser[ /]([0-9.]{1,10})" => "\\1"
304     ),
305     "uri" => "http://www.crazybrowser.com/"
306     ),
307     "cruz" => array(
308     "icon" => "cruz",
309     "title" => "Cruz",
310     "rule" => array(
311     "Cruz[ /]([0-9.]{1,10})" => "\\1"
312     ),
313     "uri" => "http://www.cruzapp.com"
314     ),
315     "curl" => array(
316     "icon" => "curl",
317     "title" => "Curl",
318     "rule" => array(
319     "curl[ /]([0-9.]{1,10})" => "\\1"
320     ),
321     "uri" => "http://curl.haxx.se/"
322     ),
323     "cuteftp" => array(
324     "icon" => "question",
325     "title" => "Cute FTP",
326     "rule" => array(
327     "Cute FTP .*[ /]([0-9.]{1,10})" => "\\1"
328     ),
329     "uri" => ""
330     ),
331     "cyberdog" => array(
332     "icon" => "question",
333     "title" => "Cyberdog",
334     "rule" => array(
335     "^Cyberdog[ /]([0-9.]{1,10})" => "\\1"
336     ),
337     "uri" => "http://www.cyberdog.org/"
338     ),
339     "deepnet" => array(
340     "icon" => "deepnet",
341     "title" => "Deepnet Explorer",
342     "rule" => array(
343     "Deepnet Explorer[/ ]([0-9.]{1,10})" => "\\1",
344     " Deepnet Explorer[\);]" => ""
345     ),
346     "uri" => "http://www.deepnetexplorer.com/"
347     ),
348     "demeter" => array(
349     "icon" => "demeter",
350     "title" => "Demeter",
351     "rule" => array(
352     "Demeter[ /]([0-9.]{1,10})" => "\\1",
353     "Demeter" => ""
354     ),
355     "uri" => "http://www.hurrikenux.com/demeter/"
356     ),
357     "democracy" => array(
358     "icon" => "question",
359     "title" => "Democracy",
360     "rule" => array(
361     "Democracy[/ ]([0-9.]{1,10})" => "\\1"
362     ),
363     "uri" => "http://www.getdemocracy.com/"
364     ),
365     "dillo" => array(
366     "icon" => "dillo",
367     "title" => "Dillo",
368     "rule" => array(
369     "dillo/([0-9.]{1,10})" => "\\1"
370     ),
371     "uri" => "http://www.dillo.org/"
372     ),
373     "divx" => array(
374     "icon" => "dillo",
375     "title" => "DivX Player",
376     "rule" => array(
377     "DivX Player[ /]([0-9.]{1,10})" => "\\1"
378     ),
379     "uri" => ""
380     ),
381     "dolfin" => array(
382     "icon" => "dolfin",
383     "title" => "Dolfin",
384     "rule" => array(
385     "Dolfin[ /]([0-9.]{1,10})" => "\\1"
386     ),
387     "uri" => "http://www.bada.com/"
388     ),
389     "doczilla" => array(
390     "icon" => "doczilla",
391     "title" => "DocZilla",
392     "rule" => array(
393     "DocZilla/([0-9.]{1,10})" => "\\1"
394     ),
395     "uri" => "http://www.doczilla.com/"
396     ),
397     "donut" => array(
398     "icon" => "donut",
399     "title" => "Donut RAPT",
400     "rule" => array(
401     "Donut RAPT[/ ]#?([0-9.]{1,10})" => "\\1"
402     ),
403     "uri" => ""
404     ),
405     "donutp" => array(
406     "icon" => "question",
407     "title" => "Donut P",
408     "rule" => array(
409     "^DonutP" => "\\1"
410     ),
411     "uri" => ""
412     ),
413     "dooble" => array(
414     "icon" => "dooble",
415     "title" => "Dooble",
416     "rule" => array(
417     "Dooble/([0-9.]{1,10})" => "\\1"
418     ),
419     "uri" => "http://dooble.sourceforge.net/"
420     ),
421     "doris" => array(
422     "icon" => "doris",
423     "title" => "Doris",
424     "rule" => array(
425     "Doris/([0-9.]{1,10})" => "\\1"
426     ),
427     "uri" => ""
428     ),
429     "dreampassport" => array(
430     "icon" => "dreamcast",
431     "title" => "DreamPassport",
432     "rule" => array(
433     "\(SonicPassport\)" => "",
434     "\(Dream(Passport|Key)[ /]([0-9.]{1,10})\)" => "\\1",
435     "\(Dream(Passport|Key)[ /]([0-9.]{1,10}); ([A-Z.a-z/]{1,50})\)" => "\\1",
436     "\(Planetweb[ /]([0-9.a-z]{1,10})" => "\\1"
437     ),
438     "uri" => "http://css.vis.ne.jp/dp-agent.shtml"
439     ),
440     "dxbrowser" => array(
441     "icon" => "question",
442     "title" => "DX-Browser",
443     "rule" => array(
444     "DX-Browser ([0-9.]{1,10})" => "\\1"
445     ),
446     "uri" => "http://www.wankoo.org/index.php?page=Software.DXBrowser"
447     ),
448     "edbrowse" => array(
449     "icon" => "question",
450     "title" => "edbrowse",
451     "rule" => array(
452     "edbrowse/([0-9.]{1,10})" => "\\1"
453     ),
454     "uri" => "http://www.eklhad.net/linux/app/"
455     ),
456 joku 354 "edge" => array(
457     "icon" => "edge",
458     "title" => "Edge",
459     "rule" => array(
460     "Edge/([0-9.]{1,10})" => "\\1"
461     ),
462     "uri" => "http://www.microsoft.com/"
463     ),
464 joku 63 "elinks" => array(
465     "icon" => "links",
466     "title" => "ELinks",
467     "rule" => array(
468     "ELinks[ /][\(]*([0-9.]{1,10})" => "\\1"
469     ),
470     "uri" => "http://elinks.or.cz/"
471     ),
472     "emacs" => array(
473     "icon" => "question",
474     "title" => "Emacs/w3s",
475     "rule" => array(
476     "Emacs-W3/([0-9.]{1,10}(pre)?)" => "\\1"
477     ),
478     "uri" => "http://www.gnu.org/software/w3/"
479     ),
480     "endo" => array(
481     "icon" => "endo",
482     "title" => "endo",
483     "rule" => array(
484     "^endo/([0-9.]{1,10})" => "\\1"
485     ),
486     "uri" => "http://kula.jp/endo"
487     ),
488     "epiphany" => array(
489     "icon" => "epiphany",
490     "title" => "Epiphany",
491     "rule" => array(
492     "Epiphany/([0-9.]{1,10})" => "\\1",
493     "epiphany-webkit" => ""
494     ),
495     "uri" => "http://www.gnome.org/projects/epiphany/"
496     ),
497     "eudoraweb" => array(
498     "icon" => "mobile",
499     "title" => "EudoraWeb",
500     "rule" => array(
501     "EudoraWeb[ /]([0-9.]{1,10})" => "\\1"
502     ),
503     "uri" => "http://www.eudora.com/internetsuite/eudoraweb.html"
504     ),
505     "fennec" => array(
506     "icon" => "fennec",
507     "title" => "Fennec",
508     "rule" => array(
509     "Fennec[ /]([0-9.a-z]{1,10})" => "\\1"
510     ),
511     "uri" => "http://www.mozilla.org/projects/fennec/1.0a2/releasenotes/"
512     ),
513     "firebird" => array(
514     "icon" => "firebird",
515     "title" => "Firebird",
516     "rule" => array(
517     "Firebird( Browser)?/([0-9.+]{1,10})" => "\\2"
518     ),
519     "uri" => "http://www.mozilla.org/"
520     ),
521     "firescape" => array(
522     "icon" => "firescape",
523     "title" => "Firescape",
524     "rule" => array(
525     "Firescape/([0-9.+]{1,10})" => "\\1"
526     ),
527     "uri" => ""
528     ),
529     "flock" => array(
530     "icon" => "flock",
531     "title" => "Flock",
532     "rule" => array(
533     "Flock/([0-9a-z.]{1,10})" => "\\1",
534     "Sulfur/([0-9a-z.]{1,10})" => "\\1"
535     ),
536     "uri" => "http://www.flock.com/"
537     ),
538     "fluid" => array(
539     "icon" => "fluid",
540     "title" => "Fluid",
541     "rule" => array(
542     "Fluid[ /]([0-9.]{1,10})" => "\\1"
543     ),
544     "uri" => "http://www.fluidapp.com"
545     ),
546     "freshdownload" => array(
547     "icon" => "freshdownload",
548     "title" => "FreshDownload",
549     "rule" => array(
550     "FreshDownload/([0-9.]{1,10})" => "\\1"
551     ),
552     "uri" => "http://www.freshdevices.com/"
553     ),
554     "frontpage" => array(
555     "icon" => "frontpage",
556     "title" => "Frontpage",
557     "rule" => array(
558     "FrontPage[ /]([0-9.+]{1,10})" => "\\1"
559     ),
560     "uri" => "http://www.microsoft.com/"
561     ),
562     "galeon" => array(
563     "icon" => "galeon",
564     "title" => "Galeon",
565     "rule" => array(
566     "galeon/([0-9.]{1,10})" => "\\1"
567     ),
568     "uri" => "http://galeon.sourceforge.net/"
569     ),
570     "hgrepurl" => array(
571     "icon" => "oreilly",
572     "title" => "O'Reilly tutorial",
573     "rule" => array(
574     "hgrepurl/([0-9.]{1,10})" => "\\1"
575     ),
576     "uri" => "http://www.oreilly.com/openbook/webclient/"
577     ),
578     "hotjava" => array(
579     "icon" => "hotjava",
580     "title" => "HotJava",
581     "rule" => array(
582     "^HotJava[ /]([0-9.]{1,10})" => "\\1"
583     ),
584     "uri" => "http://java.sun.com/products/archive/hotjava/index.html"
585     ),
586     "hv3" => array(
587     "icon" => "question",
588     "title" => "Hv3",
589     "rule" => array(
590     " Hv3[ /]([0-9.a-z]{1,10})" => "\\1"
591     ),
592     "uri" => "http://tkhtml.tcl.tk/hv3.html"
593     ),
594     "ibis" => array(
595     "icon" => "question",
596     "title" => "ibisBrowser",
597     "rule" => array(
598     "ibisBrowser" => ""
599     ),
600     "uri" => ""
601     ),
602     "ibrowse" => array(
603     "icon" => "ibrowse",
604     "title" => "IBrowse",
605     "rule" => array(
606     "ibrowse[ /]([0-9.]{1,10})" => "\\1"
607     ),
608     "uri" => "http://www.ibrowse-dev.net/"
609     ),
610     "icab" => array(
611     "icon" => "icab",
612     "title" => "iCab",
613     "rule" => array(
614     "icab[/ ]([0-9.]{1,10})" => "\\1"
615     ),
616     "uri" => "http://www.icab.de/"
617     ),
618     "ice" => array(
619     "icon" => "ice",
620     "title" => "ICEbrowser",
621     "rule" => array(
622     "ICE[ ]?Browser/v?([0-9._]{1,10})" => "\\1"
623     ),
624     "uri" => "http://www.borland.com/jbuilder/"
625     ),
626     "iceape" => array(
627     "icon" => "iceape",
628     "title" => "Iceape",
629     "rule" => array(
630     "Iceape/([0-9a-z.]{1,10})" => "\\1"
631     ),
632     "uri" => "http://packages.debian.org/source/iceape"
633     ),
634     "icecat" => array(
635     "icon" => "icecat",
636     "title" => "IceCat",
637     "rule" => array(
638     "IceCat/([0-9a-z.]{1,10})" => "\\1"
639     ),
640     "uri" => "http://www.gnu.org/software/gnuzilla/"
641     ),
642     "iceweasel" => array(
643     "icon" => "iceweasel",
644     "title" => "Iceweasel",
645     "rule" => array(
646     "Iceweasel/([0-9.+]{1,10})" => "\\1"
647     ),
648     "uri" => "http://www.geticeweasel.org/"
649     ),
650 matthys 301 "iemobile" => array(
651     "icon" => "iemobile",
652     "title" => "IE Mobile",
653     "rule" => array(
654     "IEMobile/([0-9.]{1,10})" => "\\1"
655     ),
656     "uri" => ""
657     ),
658 joku 63 "iexplorepocket" => array(
659     "icon" => "mobile",
660     "title" => "Internet Explorer Pocket",
661     "rule" => array(
662     "Microsoft Pocket Internet Explorer[ /]([0-9.]{1,10})" => "\\1",
663     "MSPIE[ /]([0-9.]{1,10})" => "\\1"
664     ),
665     "uri" => ""
666     ),
667     "ipeng" => array(
668     "icon" => "ipeng",
669     "title" => "iPeng",
670     "rule" => array(
671     "^iPeng.*(iPhone|iPad)[ /]([0-9.]{1,10})" => "\\2"
672     ),
673     "uri" => "http://penguinlovesmusic.de/"
674     ),
675 joku 244 "ipoto" => array(
676     "icon" => "iphoto",
677     "title" => "iPhoto",
678     "rule" => array(
679     "iPhoto/([0-9.+]{1,10})" => "\\1"
680     ),
681     "uri" => "http://penguinlovesmusic.de/"
682     ),
683 joku 63 "irider" => array(
684     "icon" => "irider",
685     "title" => "iRider",
686     "rule" => array(
687     "iRider[/ ]([0-9.]{1,10})" => "\\1"
688     ),
689     "uri" => ""
690     ),
691     "iron" => array(
692     "icon" => "iron",
693     "title" => "Iron",
694     "rule" => array(
695     "Iron/([0-9.]{1,10})" => "\\1"
696     ),
697     "uri" => "http://www.srware.net/"
698     ),
699     "isilox" => array(
700     "icon" => "isilox",
701     "title" => "iSiloX",
702     "rule" => array(
703     "iSilox/([0-9.]{1,10})" => "\\1"
704     ),
705     "uri" => ""
706     ),
707     "kazehakase" => array(
708     "icon" => "kazehakase",
709     "title" => "Kazehakase",
710     "rule" => array(
711     "Kazehakase[ /]([0-9a-z.]{1,10})" => "\\1",
712     "kazehakase" => ""
713     ),
714     "uri" => "http://kazehakase.sourceforge.jp/20031201.html"
715     ),
716     "kkman" => array(
717     "icon" => "kkman",
718     "title" => "KKman",
719     "rule" => array(
720     "KKman[ /]?([0-9.]{1,10})" => "\\1"
721     ),
722     "uri" => "http://www.kkman.com.tw/"
723     ),
724     "klondike" => array(
725     "icon" => "question",
726     "title" => "Klondike",
727     "rule" => array(
728     "Klondike[ /]([0-9.]{1,10})" => "\\1"
729     ),
730     "uri" => ""
731     ),
732     "k-meleon" => array(
733     "icon" => "k-meleon",
734     "title" => "K-Meleon",
735     "rule" => array(
736     "K-Meleon[ /]([0-9.]{1,10})" => "\\1"
737     ),
738     "uri" => "http://kmeleon.sourceforge.net/"
739     ),
740     "k-ninja" => array(
741     "icon" => "k-ninja",
742     "title" => "K-Ninja",
743     "rule" => array(
744     "K-Ninja[ /]([0-9.]{1,10})" => "\\1"
745     ),
746     "uri" => "http://www.geocities.com/grenleef/"
747     ),
748     "konqueror" => array(
749     "icon" => "konqueror",
750     "title" => "Konqueror",
751     "rule" => array(
752     "konqueror/([0-9.]{1,10})" => "\\1"
753     ),
754     "uri" => "http://www.konqueror.org/"
755     ),
756     "kylo" => array(
757     "icon" => "kylo",
758     "title" => "Kylo",
759     "rule" => array(
760     "Kylo/([0-9.]{1,10})" => "\\1"
761     ),
762     "uri" => "http://kylo.tv/"
763     ),
764     "liferea" => array(
765     "icon" => "liferea",
766     "title" => "Liferea",
767     "rule" => array(
768     "Liferea[ /]([0-9a-z.\-]{1,10})" => "\\1"
769     ),
770     "uri" => "http://liferea.sf.net/"
771     ),
772     "links" => array(
773     "icon" => "links",
774     "title" => "Links",
775     "rule" => array(
776     "Links[ /]\(([0-9.]{1,10})" => "\\1"
777     ),
778     "uri" => "http://artax.karlin.mff.cuni.cz/~mikulas/links"
779     ),
780     "lobo" => array(
781     "icon" => "lobo",
782     "title" => "Lobo",
783     "rule" => array(
784     "Lobo/([0-9.]{1,10})" => "\\1"
785     ),
786     "uri" => "http://lobobrowser.org/"
787     ),
788     "lotus" => array(
789     "icon" => "lotus",
790     "title" => "Lotus Notes",
791     "rule" => array(
792     "Lotus[ \-]?Notes[ /]([0-9.]{1,10})" => "\\1"
793     ),
794     "uri" => ""
795     ),
796     "lunascape" => array(
797     "icon" => "lunascape",
798     "title" => "Lunascape",
799     "rule" => array(
800     "Lunascape[ /]([0-9a-z.]{1,10})" => "\\1"
801     ),
802     "uri" => ""
803     ),
804     "lynx" => array(
805     "icon" => "lynx",
806     "title" => "Lynx",
807     "rule" => array(
808 joku 254 "lynx[ /]([0-9a-z.]{1,10})" => "\\1"
809 joku 63 ),
810     "uri" => "http://lynx.browser.org/"
811     ),
812     "maxthon" => array(
813     "icon" => "maxthon",
814     "title" => "Maxthon",
815     "rule" => array(
816     "Maxthon[ /]([0-9.]{1,10})" => "\\1",
817     "Maxthon[\);]" => ""
818     ),
819     "uri" => ""
820     ),
821     "mbrowser" => array(
822     "icon" => "mbrowser",
823     "title" => "mBrowser",
824     "rule" => array(
825     "mBrowser[ /]([0-9.]{1,10})" => "\\1"
826     ),
827     "uri" => ""
828     ),
829     "mediaplayer" => array(
830     "icon" => "wmp10",
831     "title" => "Media Player",
832     "rule" => array(
833     "NSPlayer[ /]([0-9.]{1,10})" => "\\1",
834     "WMFSDK[ /]([0-9.]{1,10})" => "\\1",
835     "Windows-Media-Player[ /]([0-9.]{1,10})" => "\\1"
836     ),
837     "uri" => ""
838     ),
839     "mib" => array(
840     "icon" => "mobile",
841     "title" => "Mobile Internet Browser",
842     "rule" => array(
843     " MIB[ /]([0-9.]{1,10})" => "\\1"
844     ),
845     "uri" => "http://www.motorola.com/content.jsp?globalObjectId=1827-4343"
846     ),
847     "midori" => array(
848     "icon" => "midori",
849     "title" => "Midori",
850     "rule" => array(
851     "midori[ /]([0-9.]{1,10})" => "\\1",
852     "midori" => ""
853     ),
854     "uri" => "http://software.twotoasts.de/"
855     ),
856     "minimo" => array(
857     "icon" => "mozilla",
858     "title" => "Minimo",
859     "rule" => array(
860     "Minimo[ /]([0-9.]{1,10})" => "\\1"
861     ),
862     "uri" => "http://www.mozilla.org/projects/minimo/"
863     ),
864     "miro" => array(
865     "icon" => "miro",
866     "title" => "Miro",
867     "rule" => array(
868     "Miro[ /]([0-9.]{1,10})" => "\\1"
869     ),
870     "uri" => "http://www.getmiro.com/"
871     ),
872     "mnenhy" => array(
873     "icon" => "mnenhy",
874     "title" => "Mnenhy",
875     "rule" => array(
876     "Mnenhy[ /]([0-9.]{1,10})" => "\\1"
877     ),
878     "uri" => "http://mnenhy.mozdev.org/"
879     ),
880     "mosaic" => array(
881     "icon" => "mosaic",
882     "title" => "Mosaic",
883     "rule" => array(
884     "mosaic[ /]([0-9.]{1,10})" => "\\1"
885     ),
886     "uri" => ""
887     ),
888     "mpc" => array(
889     "icon" => "mpc",
890     "title" => "Media Player Classic",
891     "rule" => array(
892     "Media Player Classic" => ""
893     ),
894     "uri" => "http://sourceforge.net/projects/guliverkli/"
895     ),
896     "mplayer" => array(
897     "icon" => "mplayer",
898     "title" => "MPlayer",
899     "rule" => array(
900     "^MPlayer[ /]([0-9.]{1,10})" => "\\1"
901     ),
902     "uri" => "http://www.mplayerhq.hu"
903     ),
904     "msn" => array(
905     "icon" => "msn",
906     "title" => "MSN Explorer",
907     "rule" => array(
908     "MSN[ /]([0-9.]{1,10})" => "\\1"
909     ),
910     "uri" => "http://www.mplayerhq.hu"
911     ),
912     "multibrowser" => array(
913     "icon" => "multibrowser",
914     "title" => "Multi-Browser",
915     "rule" => array(
916     "Multi-Browser[ /]([0-9.]{1,10})" => "\\1"
917     ),
918     "uri" => "http://archive.ncsa.uiuc.edu/SDG/Software/XMosaic/"
919     ),
920     "myie2" => array(
921     "icon" => "myie2",
922     "title" => "MyIE2",
923     "rule" => array(
924     " MyIE2[\);]" => ""
925     ),
926     "uri" => ""
927     ),
928     "nautilus" => array(
929     "icon" => "nautilus",
930     "title" => "Nautilus",
931     "rule" => array(
932     "(gnome[ \-]?vfs|nautilus)/([0-9.]{1,10})" => "\\2"
933     ),
934     "uri" => ""
935     ),
936     "netnewswire" => array(
937     "icon" => "netnewswire",
938     "title" => "NetNewsWire",
939     "rule" => array(
940     "NetNewsWire[ /]([0-9.]{1,10})" => "\\1"
941     ),
942     "uri" => "http://ranchero.com/netnewswire/"
943     ),
944     "netsurf" => array(
945     "icon" => "netsurf",
946     "title" => "NetSurf",
947     "rule" => array(
948     "Netsurf[ /]?([0-9.]{1,10})?" => "\\1"
949     ),
950     "uri" => ""
951     ),
952     "netcaptor" => array(
953     "icon" => "netcaptor",
954     "title" => "Netcaptor",
955     "rule" => array(
956     "netcaptor[ /]([0-9.]{1,10})" => "\\1"
957     ),
958     "uri" => ""
959     ),
960     "netfront" => array(
961     "icon" => "netfront",
962     "title" => "Netfront",
963     "rule" => array(
964     "NetFront[ /]([0-9.]{1,10})" => "\\1"
965     ),
966     "uri" => "http://www.access-company.com/"
967     ),
968     "netpositive" => array(
969     "icon" => "netpositive",
970     "title" => "NetPositive",
971     "rule" => array(
972     "netpositive[ /]([0-9.]{1,10})" => "\\1"
973     ),
974     "uri" => "http://browsers.evolt.org/?netpositive/"
975     ),
976     "nexus" => array(
977     "icon" => "question",
978     "title" => "Nexus",
979     "rule" => array(
980     "^Nexus" => ""
981     ),
982     "uri" => "http://browsers.evolt.org/"
983     ),
984     "offbyone" => array(
985     "icon" => "offbyone",
986     "title" => "OffByOne",
987     "rule" => array(
988     "OffByOne" => ""
989     ),
990     "uri" => "http://www.offbyone.com/"
991     ),
992     "office" => array(
993     "icon" => "office",
994     "title" => "Office",
995     "rule" => array(
996     "^Microsoft Data Access Internet Publishing Provider (Protocol Discovery|Cache Manager|DAV)" => ""
997     ),
998     "uri" => "http://www.office.microsoft.com/"
999     ),
1000     "omniweb" => array(
1001     "icon" => "omniweb",
1002     "title" => "OmniWeb",
1003     "rule" => array(
1004     "omniweb/[ a-z]?([0-9.]{1,10})$" => "\\1",
1005     "OmniWeb/[ a-z]?([0-9.]{1,10})" => "\\1"
1006     ),
1007     "uri" => ""
1008     ),
1009     "openwave" => array(
1010     "icon" => "mobile",
1011     "title" => "OpenWave",
1012     "rule" => array(
1013     "OPWV-SDK UP\.Browser[ /]([0-9.]{1,10})" => "\\1"
1014     ),
1015     "uri" => "http://www.openwave.com/us/products/mobile/device_products/mobile_browser/index.htm"
1016     ),
1017     "operamini" => array(
1018     "icon" => "opera",
1019     "title" => "Opera Mini",
1020     "rule" => array(
1021     "opera mini[ /]([0-9.]{1,10})" => "\\1"
1022     ),
1023     "uri" => "http://www.opera.com/"
1024     ),
1025     "opera" => array(
1026     "icon" => "opera",
1027     "title" => "Opera",
1028     "rule" => array(
1029     "opera.+Version[ /]([x0-9.]{1,10})" => "\\1",
1030 joku 383 "opera[ /]([0-9.]{1,10})" => "\\1",
1031     "OPR[ /]([0-9.]{1,10})" => "\\1"
1032 joku 63 ),
1033     "uri" => "http://www.opera.com/"
1034     ),
1035     "orca" => array(
1036     "icon" => "question",
1037     "title" => "Orca",
1038     "rule" => array(
1039     "Orca Browser \(http://www.orcabrowser.com\)" => "\\1"
1040     ),
1041     "uri" => "http://www.orcabrowser.com"
1042     ),
1043     "oregano" => array(
1044     "icon" => "oregano",
1045     "title" => "Oregano",
1046     "rule" => array(
1047     "Oregano[0-9]?[ /]([0-9.]{1,10})" => "\\1"
1048     ),
1049     "uri" => "http://www.castle.org.uk/oregano/"
1050     ),
1051     "palmsource" => array(
1052     "icon" => "palmsource",
1053     "title" => "PalmSource Web Browser",
1054     "rule" => array(
1055     "PalmSource" => "",
1056     "Palm-Arz1" => ""
1057     ),
1058     "uri" => "http://www.palmos.com/dev/tech/palmos5/webbrowser.html"
1059     ),
1060     "paparazzi" => array(
1061     "icon" => "question",
1062     "title" => "Paparazzi",
1063     "rule" => array(
1064     "Paparazzi!/([0-9.]{1,10})" => "\\1"
1065     ),
1066     "uri" => ""
1067     ),
1068     "phaseout" => array(
1069     "icon" => "phaseout",
1070     "title" => "PhaseOut",
1071     "rule" => array(
1072     "www\.phaseout\.net" => ""
1073     ),
1074     "uri" => "http://www.phaseout.net/"
1075     ),
1076     "plainview" => array(
1077     "icon" => "plainview",
1078     "title" => "Plainview",
1079     "rule" => array(
1080     "Plainview[ /]([0-9.]{1,10})" => "\\1"
1081     ),
1082     "uri" => "http://www.barbariangroup.com/software/plainview"
1083     ),
1084     "plink" => array(
1085     "icon" => "plink",
1086     "title" => "PLink",
1087     "rule" => array(
1088     "PLink[ /]([0-9a-z.]{1,10})" => "\\1"
1089     ),
1090     "uri" => ""
1091     ),
1092     "plucker" => array(
1093     "icon" => "mobile",
1094     "title" => "Plucker",
1095     "rule" => array(
1096     "Plucker[ /](Py-)?([0-9.]{1,10})" => "\\1"
1097     ),
1098     "uri" => "http://www.openwave.com/us/products/mobile/device_products/mobile_browser/index.htm"
1099     ),
1100     "phoenix" => array(
1101     "icon" => "phoenix",
1102     "title" => "Phoenix",
1103     "rule" => array(
1104     "Phoenix/([0-9.+]{1,10})" => "\\1"
1105     ),
1106     "uri" => ""
1107     ),
1108     "phped" => array(
1109     "icon" => "question",
1110     "title" => "PHPEd",
1111     "rule" => array(
1112     "PHPEd Version[ /]([0-9.]{1,10})" => "\\1"
1113     ),
1114     "uri" => ""
1115     ),
1116     "printsmart" => array(
1117     "icon" => "question",
1118     "title" => "HP Web PrintSmart",
1119     "rule" => array(
1120     "HP Web PrintSmart ([0-9.a-z]{1,10})" => "\\1"
1121     ),
1122     "uri" => ""
1123     ),
1124     "prism" => array(
1125     "icon" => "prism",
1126     "title" => "Mozilla Prism",
1127     "rule" => array(
1128     "prism/([0-9.+]{1,10})" => "\\1"
1129     ),
1130     "uri" => "http://prism.mozillalabs.com/"
1131     ),
1132     "proxomitron" => array(
1133     "icon" => "proxomitron",
1134     "title" => "Proxomitron",
1135     "rule" => array(
1136     "(Space( )?)?bison/([0-9.]{1,10})" => "\\1"
1137     ),
1138     "uri" => "http://www.proxomitron.info/"
1139     ),
1140     "psp" => array(
1141     "icon" => "question",
1142     "title" => "PlayStation Portable",
1143     "rule" => array(
1144     "PSP \(PlayStation Portable\); ([0-9.]{1,10})" => "\\1"
1145     ),
1146     "uri" => ""
1147     ),
1148     "puf" => array(
1149     "icon" => "question",
1150     "title" => "Parallel URL Fetcher",
1151     "rule" => array(
1152     "^puf[ /]([0-9.]{1,10})" => "\\1"
1153     ),
1154     "uri" => "http://puf.sourceforge.net/"
1155     ),
1156     "quicktime" => array(
1157     "icon" => "quicktime",
1158     "title" => "QuickTime",
1159     "rule" => array(
1160     "QuickTime..qtver.([0-9.]{1,10})" => "\\1",
1161     "qtver.([0-9.]{1,10})" => "\\1"
1162     ),
1163     "uri" => "http://www.apple.com/quicktime/"
1164     ),
1165     "realplayer" => array(
1166     "icon" => "realplayer",
1167     "title" => "Real Player",
1168     "rule" => array(
1169     "RealPlayer/([0-9.+]{1,10})" => "\\1",
1170     "^Mozilla/([0-9.+]{1,10}).*\(R1 1.5\)\)" => "",
1171     "RMA/([0-9.+]{1,10})" => ""
1172     ),
1173     "uri" => "http://www.realplayer.com"
1174     ),
1175     "reeder" => array(
1176     "icon" => "reeder",
1177     "title" => "Reeder",
1178     "rule" => array(
1179     "Reeder/([0-9.+]{1,10})" => "\\1"
1180     ),
1181     "uri" => "http://www.reederapp.com/"
1182     ),
1183     "retawq" => array(
1184     "icon" => "question",
1185     "title" => "retawq",
1186     "rule" => array(
1187     "retawq/([0-9.]{1,10})" => "\\1"
1188     ),
1189     "uri" => "http://retawq.sourceforge.net/"
1190     ),
1191     "safexplorer" => array(
1192     "icon" => "question",
1193     "title" => "Safexplorer",
1194     "rule" => array(
1195     "SAFEXPLORER TL" => ""
1196     ),
1197     "uri" => "http://www.safexplorer.com/"
1198     ),
1199     "sage" => array(
1200     "icon" => "sage",
1201     "title" => "Sage",
1202     "rule" => array(
1203     "\(Sage\)" => ""
1204     ),
1205     "uri" => "http://sage.mozdev.org/"
1206     ),
1207     "seamonkey" => array(
1208     "icon" => "seamonkey",
1209     "title" => "Seamonkey",
1210     "rule" => array(
1211     "Seamonkey[ \-/]([0-9a-z.]{1,10})" => "\\1"
1212     ),
1213     "uri" => "http://www.seamonkey-project.org/"
1214     ),
1215     "securewebbrowser" => array(
1216     "icon" => "question",
1217     "title" => "HP Secure Web Browser",
1218     "rule" => array(
1219     "SWB[ /]V?([0-9.]{1,10}) \(HP\)" => "\\1"
1220     ),
1221     "uri" => "http://h71000.www7.hp.com/openvms/products/ips/cswb/cswb.html"
1222     ),
1223     "shareaza" => array(
1224     "icon" => "shareaza",
1225     "title" => "Shareaza",
1226     "rule" => array(
1227     "Shareaza[ /]v?([0-9.]{1,10})" => "\\1"
1228     ),
1229     "uri" => "http://www.shareaza.com/"
1230     ),
1231     "shiira" => array(
1232     "icon" => "shiira",
1233     "title" => "Shiira",
1234     "rule" => array(
1235     "Shiira/([0-9.]{1,10})" => "\\1",
1236     " Shiira " => ""
1237     ),
1238     "uri" => "http://shiira.jp/en.php"
1239     ),
1240     "sitekiosk" => array(
1241     "icon" => "sitekiosk",
1242     "title" => "SiteKiosk",
1243     "rule" => array(
1244     "SiteKiosk[ /]([0-9.]{1,10})" => "\\1"
1245     ),
1246     "uri" => "http://www.sitekiosk.com/"
1247     ),
1248     "sleipnir" => array(
1249     "icon" => "sleipnir",
1250     "title" => "Sleipnir",
1251     "rule" => array(
1252     "Sleipnir( Version)?[ /]([0-9a-z.]{1,10})" => "\\2"
1253     ),
1254     "uri" => ""
1255     ),
1256     "slimbrowser" => array(
1257     "icon" => "slimbrowser",
1258     "title" => "SlimBrowser",
1259     "rule" => array(
1260     "Slimbrowser" => ""
1261     ),
1262     "uri" => ""
1263     ),
1264     "smartbro" => array(
1265     "icon" => "smartbro",
1266     "title" => "Smart Bro",
1267     "rule" => array(
1268     "Smart Bro[ /]?([0-9.]{1,10})?" => "\\1"
1269     ),
1270     "uri" => "http://www.smartbro.com/"
1271     ),
1272     "songbird" => array(
1273     "icon" => "songbird",
1274     "title" => "Songbird",
1275     "rule" => array(
1276     "Songbird[/ ]([0-9.]{1,10})" => "\\1"
1277     ),
1278     "uri" => "http://www.songbirdnest.com/"
1279     ),
1280     "spectruminternetsuite" => array(
1281     "icon" => "question",
1282     "title" => "Spectrum Internet Suite",
1283     "rule" => array(
1284     " SIS ([0-9.]{1,10})" => "\\1"
1285     ),
1286     "uri" => "http://sis.gwlink.net/"
1287     ),
1288     "sputnik" => array(
1289     "icon" => "sputnik",
1290     "title" => "Sputnik",
1291     "rule" => array(
1292     "Sputnik[ /]([0-9.]{1,10})" => "\\1"
1293     ),
1294     "uri" => ""
1295     ),
1296     "squid" => array(
1297     "icon" => "squid",
1298     "title" => "Squid Proxy",
1299     "rule" => array(
1300     "^Cafi[ /]([0-9.]{1,10})" => "\\1",
1301     "SquidClamAV_Redirector[ /]([0-9.]{1,10})" => ""
1302     ),
1303     "uri" => ""
1304     ),
1305     "staroffice" => array(
1306     "icon" => "staroffice",
1307     "title" => "StarOffice",
1308     "rule" => array(
1309     "staroffice[ /]([0-9.]{1,10})" => "\\1"
1310     ),
1311     "uri" => ""
1312     ),
1313     "stainless" => array(
1314     "icon" => "stainless",
1315     "title" => "Stainless",
1316     "rule" => array(
1317     "Stainless[ /]([0-9.]{1,10})" => "\\1"
1318     ),
1319     "uri" => "http://www.stainlessapp.com"
1320     ),
1321     "strata" => array(
1322     "icon" => "strata",
1323     "title" => "Strata",
1324     "rule" => array(
1325     "Strata[/ ]([0-9.]{1,10})" => "\\1"
1326     ),
1327     "uri" => "https://www.kirix.com/"
1328     ),
1329     "sunrise" => array(
1330     "icon" => "sunrise",
1331     "title" => "Sunrise",
1332     "rule" => array(
1333     "SunriseBrowser[ /]([0-9.]{1,10})" => "\\1",
1334     "Sunrise[ /]([0-9.]{1,10})" => "\\1",
1335     "Sunrise2[ /]([0-9.]{1,10})" => "\\1"
1336     ),
1337     "uri" => "http://www.sunrisebrowser.com/"
1338     ),
1339     "sunrisefeeds" => array(
1340     "icon" => "question",
1341     "title" => "Sunrise Feeds",
1342     "rule" => array(
1343     "^Sunrise[ /]([0-9.]{1,10})" => "\\1"
1344     ),
1345     "uri" => ""
1346     ),
1347     "swift" => array(
1348     "icon" => "swift",
1349     "title" => "Swift",
1350     "rule" => array(
1351     "Swift[ /]([0-9.]{1,10})" => "\\1"
1352     ),
1353     "uri" => "http://www.getswift.org/"
1354     ),
1355     "swiftfox" => array(
1356     "icon" => "swiftfox",
1357     "title" => "Swiftfox",
1358     "rule" => array(
1359     "Swiftfox[ /]?([0-9.]{1,10})?" => "\\1"
1360     ),
1361     "uri" => "http://getswiftfox.com/"
1362     ),
1363     "sylera" => array(
1364     "icon" => "question",
1365     "title" => "Sylera",
1366     "rule" => array(
1367     "Sylera[/ ]([0-9.]{1,10})" => "\\1"
1368     ),
1369     "uri" => "http://www.zawameki.net/izmi/prog/sylera_en.html"
1370     ),
1371     "syndirella" => array(
1372     "icon" => "question",
1373     "title" => "Syndirella",
1374     "rule" => array(
1375     "Syndirella[/ ]([0-9.]{1,10})" => "\\1"
1376     ),
1377     "uri" => "http://sourceforge.net/projects/syndirella/"
1378     ),
1379     "thunderbird" => array(
1380     "icon" => "thunderbird",
1381     "title" => "Thunderbird",
1382     "rule" => array(
1383     "Thunderbird[ /]([0-9a-z.]{1,10})" => "\\1"
1384     ),
1385     "uri" => ""
1386     ),
1387     "tonline" => array(
1388     "icon" => "tonline",
1389     "title" => "T-Online",
1390     "rule" => array(
1391     "^T-Online Browser" => "\\1"
1392     ),
1393     "uri" => ""
1394     ),
1395     "upbrowser" => array(
1396     "icon" => "upbrowser",
1397     "title" => "UP.Browser",
1398     "rule" => array(
1399     "UP\.Browser[ /]([0-9.]{1,10})" => "\\1",
1400     "UP\.Link[ /]([0-9.]{1,10})" => "\\1"
1401     ),
1402     "uri" => ""
1403     ),
1404     "uzbl" => array(
1405     "icon" => "uzbl",
1406     "title" => "Uzbl",
1407     "rule" => array(
1408     "Uzbl" => ""
1409     ),
1410     "uri" => "http://www.uzbl.org/"
1411     ),
1412     "vienna" => array(
1413     "icon" => "vienna",
1414     "title" => "Vienna",
1415     "rule" => array(
1416     "Vienna[ /]([0-9.]{1,10})" => "\\1"
1417     ),
1418     "uri" => "http://vienna-rss.sourceforge.net/"
1419     ),
1420     "vlc" => array(
1421     "icon" => "vlc",
1422     "title" => "VLC",
1423     "rule" => array(
1424 joku 365 "^VLC media player - version ([0-9.]{1,10})" => "\\1",
1425     "VLC/([0-9.]{1,10})" => "\\1"
1426 joku 63 ),
1427     "uri" => "http://www.videolan.org/vlc/"
1428     ),
1429 joku 374 "vivaldi" => array(
1430     "icon" => "vivaldi",
1431     "title" => "Vivaldi",
1432     "rule" => array(
1433     "Vivaldi[ /]([0-9.]{1,10})" => "\\1"
1434     ),
1435     "uri" => "https://vivaldi.com/"
1436     ),
1437 joku 63 "voyager" => array(
1438     "icon" => "voyager",
1439     "title" => "Voyager",
1440     "rule" => array(
1441     "voyager[ /]([0-9.]{1,10})" => "\\1",
1442     "AmigaVoyager" => "",
1443     " Voyager" => ""
1444     ),
1445     "uri" => "http://v3.vapor.com/"
1446     ),
1447     "w3clinemode" => array(
1448     "icon" => "question",
1449     "title" => "W3C Line Mode",
1450     "rule" => array(
1451     "W3CLineMode/([0-9.]{1,10})" => "\\1"
1452     ),
1453     "uri" => "http://www.w3.org/LineMode"
1454     ),
1455     "w3m" => array(
1456     "icon" => "w3m",
1457     "title" => "w3m",
1458     "rule" => array(
1459     "w3m/([0-9.]{1,10})" => "\\1"
1460     ),
1461     "uri" => ""
1462     ),
1463     "wannabe" => array(
1464     "icon" => "question",
1465     "title" => "WannaBe",
1466     "rule" => array(
1467     "^WannaBe" => ""
1468     ),
1469     "uri" => "http://mindstory.com/wb2/"
1470     ),
1471     "warrior" => array(
1472     "icon" => "warrior",
1473     "title" => "Warrior",
1474     "rule" => array(
1475     "^Warrior" => ""
1476     ),
1477     "uri" => ""
1478     ),
1479     "webcapture" => array(
1480     "icon" => "question",
1481     "title" => "WebCapture (Adobe)",
1482     "rule" => array(
1483     "WebCapture[ /]([0-9.]{1,10})" => "\\1"
1484     ),
1485     "uri" => ""
1486     ),
1487     "webtv" => array(
1488     "icon" => "webtv",
1489     "title" => "Webtv",
1490     "rule" => array(
1491     "webtv[ /]([0-9.]{1,10})" => "\\1",
1492     "webtv" => ""
1493     ),
1494     "uri" => ""
1495     ),
1496     "winamp" => array(
1497     "icon" => "winamp",
1498     "title" => "Winamp",
1499     "rule" => array(
1500     "^WinampMPEG[ /]([0-9.]{1,10})" => "\\1",
1501     "^Nullsoft Winamp3 version[ /]([0-9.a-z]{1,10})" => "\\1",
1502     "NSV Player" => ""
1503     ),
1504     "uri" => "http://www.winamp.com/"
1505     ),
1506     "wyzo" => array(
1507     "icon" => "wyzo",
1508     "title" => "Wyzo",
1509     "rule" => array(
1510     "Wyzo[ /]([0-9.]{1,10})" => "\\1"
1511     ),
1512     "uri" => "http://www.wyzo.com/"
1513     ),
1514     "xiino" => array(
1515     "icon" => "xiino",
1516     "title" => "Xiino",
1517     "rule" => array(
1518     "^Xiino[ /]([0-9a-z.]{1,10})" => "\\1"
1519     ),
1520     "uri" => "http://www.access-us-inc.com/"
1521     ),
1522     "xine" => array(
1523     "icon" => "xine",
1524     "title" => "xine",
1525     "rule" => array(
1526     "^xine[ /]([0-9.]{1,10})" => "\\1"
1527     ),
1528     "uri" => "http://xine.sourceforge.net/"
1529     ),
1530     "yahoomessenger" => array(
1531     "icon" => "yahoo",
1532     "title" => "Yahoo Messenger",
1533     "rule" => array(
1534     "^Y(!)*TunnelPro" => ""
1535     ),
1536     "uri" => "http://messenger.yahoo.com/"
1537     ),
1538     "zipcommander" => array(
1539     "icon" => "question",
1540     "title" => "ZipCommander",
1541     "rule" => array(
1542     "ZipCommander" => ""
1543     ),
1544     "uri" => "http://www.zipcommander.com/"
1545     ),
1546     "zootycoon2" => array(
1547     "icon" => "question",
1548     "title" => "Zoo Tycoon 2",
1549     "rule" => array(
1550     "Zoo Tycoon 2 Client" => ""
1551     ),
1552     "uri" => "http://www.zootycoon.com/"
1553     ),
1554     // Catch up for the originals, they got to stay in that order.
1555     "explorer" => array(
1556     "icon" => "explorer",
1557     "title" => "Explorer",
1558     "rule" => array(
1559     ".*MSIE 7.0.*Trident.*" => "text:8.0 (MSIE 7.0)", //special feature, to detect IE8 Compatibility mode
1560     "Trident/7.0.*rv:([0-9.+]{1,10})" => "\\1",
1561     "\(compatible; MSIE[ /]([0-9a-z.]{1,10})" => "\\1",
1562     "MSIE[ /]([0-9a-z.]{1,3})" => "\\1",
1563     "Internet Explorer[ /]([0-9.]{1,10})" => "\\1",
1564     "^Auto-Proxy Downloader" => ""
1565     ),
1566     "uri" => "http://www.microsoft.com/windows/ie/"
1567     ),
1568     "chrome" => array(
1569     "icon" => "chrome",
1570     "title" => "Chrome",
1571     "rule" => array(
1572     "Chrome/([0-9.]{1,15})" => "\\1"
1573     ),
1574     "uri" => "http://www.google.com/chrome/"
1575     ),
1576     "safari" => array(
1577     "icon" => "safari",
1578     "title" => "Safari",
1579     "rule" => array(
1580     "version/([0-9.]{1,10})(.*)safari" => "\\1",
1581     "Safari[ /]?([0-9.]{1,10})" => "\\1"
1582     ),
1583     "uri" => ""
1584     ),
1585     "netscape" => array(
1586     "icon" => "netscape",
1587     "title" => "Netscape",
1588     "rule" => array(
1589     "netscape[0-9]?/([0-9.]{1,10})" => "\\1",
1590     "navigator[0-9]?/([0-9.]{1,10})" => "\\1",
1591     "^mozilla/([0-4]\.[0-9.]{1,10})" => "\\1"
1592     ),
1593     "uri" => "http://www.netscape.com/"
1594     ),
1595     "firefox" => array(
1596     "icon" => "firefox",
1597     "title" => "Firefox",
1598     "rule" => array(
1599     "Firefox/([0-9.+]{1,10})" => "\\1",
1600     "BonEcho/([0-9.+]{1,10})" => "\\1", // Firefox 2.0 beta
1601     "GranParadiso/([0-9.+]{1,10})" => "\\1", // Firefox 3.0 alpha
1602     "Minefield/([0-9.+]{1,10})" => "\\1", // Firefox 3.0 beta
1603     "Shiretoko/([0-9a-z.+]{1,10})" => "\\1", // Firefox 3.1 alpha
1604     "Namoroka/([0-9a-z.+]{1,10})" => "\\1", // Firefox 3.6 beta
1605     "Firefox" => ""
1606     ),
1607     "uri" => "http://www.mozilla.org/projects/firefox/",
1608     "known" => array(
1609     "Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1) Gecko/20061019 Firefox" => "Firefox nightly on Windows XP",
1610     "Mozilla/5.0 (Windows; U; Windows NT 5.1; nl-NL; rv:1.7.5) Gecko/20041202 Firefox/1.0" => "Firefox 1.0 on Windows XP (dutch)",
1611     "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.7.6) Gecko/20050512 Firefox" => "Firefox 1.0.4 on Ubuntu Linux (AMD64)",
1612     "Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.8) Gecko/20050609 Firefox/1.0.4" => "Firefox 1.0.4 on FreeBSD (i386)",
1613     "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.9) Gecko/20050711 Firefox/1.0.5" => "Firefox 1.0.5 on Slackware",
1614     "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.10) Gecko/20050716 Firefox/1.0.6" => "Firefox 1.0.6 on Windows XP",
1615     "Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-GB; rv:1.7.10) Gecko/20050717 Firefox/1.0.6" => "Firefox 1.0.6 on Mac OS X 10.4 PPC",
1616     "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7" => "Firefox 1.0.7 on Windows XP",
1617     "Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7" => "Firefox 1.0.7 on Mac OS X 10.3 PPC",
1618     "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b4) Gecko/20050908 Firefox/1.4" => "Firefox 1.5 beta 1 on Windows XP",
1619     "Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8b4) Gecko/20050908 Firefox/1.4" => "Firefox 1.5 beta 1 on Mac OS X 10.3 PPC",
1620     "Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8) Gecko/20051107 Firefox/1.5" => "Firefox 1.5 on Windows XP",
1621     "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.0.1) Gecko/20060111 Firefox/1.5.0.1" => "Firefox 1.5.0.1 on Windows XP",
1622     "Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.0.1) Gecko/20060111 Firefox/1.5.0.1" => "Firefox 1.5.0.1 on Windows Vista",
1623     "Mozilla/5.0 (BeOS; U; BeOS BePC; en-US; rv:1.9a1) Gecko/20051002 Firefox/1.6a1" => "1.6 alpha 1 on BeOS R5",
1624     "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Gecko/20060321 Firefox/2.0a1" => "2.0 alpha 1 on Windows XP",
1625     "Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1b1) Gecko/20060710 Firefox/2.0b1" => "2.0 beta 1 on Windows XP",
1626     "Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1b2) Gecko/20060710 Firefox/2.0b2" => "2.0 beta 2 on Windows XP",
1627     "Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1) Gecko/20060918 Firefox/2.0" => "2.0 on Windows XP"
1628     )
1629     ),
1630     "webkit" => array(
1631     "icon" => "webkit",
1632     "title" => "Webkit",
1633     "rule" => array(
1634     "AppleWebKit/([0-9.]{1,10}).*Gecko" => "\\1"
1635     ),
1636     "uri" => "http://webkit.org"
1637     ),
1638     "mozilla" => array(
1639     "icon" => "mozilla",
1640     "title" => "Mozilla",
1641     "rule" => array(
1642     "^mozilla/[5-9]\.[0-9.]{1,10}.+rv:([0-9a-z.+]{1,10})" => "\\1",
1643     "^mozilla/([5-9]\.[0-9a-z.]{1,10})" => "\\1",
1644     "GNUzilla/([0-9.+]{1,10})" => "\\1"
1645     ),
1646     "uri" => "",
1647     "known" => array(
1648     "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) Gecko/20050511" => "Mozilla 1.7.9 on Linux (american english)",
1649     "Mozilla/5.0 (X11; U; Linux i686; cs-CZ; rv:1.7.12) Gecko/20050929" => "Mozilla 1.7.12 on Gentoo Linux"
1650     )
1651     ),
1652     "wap" => array(
1653     "icon" => "question",
1654     "title" => "WAP",
1655     "rule" => array(
1656     "Profile[ /]MIDP-([0-9.+]{1,10})" => "",
1657     "Configuration[ /]CLDC-([0-9.+]{1,10})" => "",
1658     "WAP" => "\\1",
1659     "SonyEricsson([0-9A-Z]{1,10})" => ""
1660     ),
1661     "uri" => ""
1662     ),
1663     // Things we don't know by now
1664     "other" => array(
1665     "icon" => "question",
1666     "title" => "other",
1667     "rule" => array(
1668     ".*" => ""
1669     )
1670     )
1671     );
1672 joku 244 ?>

Properties

Name Value
svn:keywords Id