4 $ * @since PHP 5 * @require PHP 4.0.0 (user_error) */ if (!function_exists('stripos')) { function stripos($haystack, $needle, $offset = null) { if (!is_scalar($haystack)) { user_error('stripos() expects parameter 1 to be string, ' . gettype($haystack) . ' given', E_USER_WARNING); return false; } if (!is_scalar($needle)) { user_error('stripos() needle is not a string or an integer.', E_USER_WARNING); return false; } if (!is_int($offset) && !is_bool($offset) && !is_null($offset)) { user_error('stripos() expects parameter 3 to be long, ' . gettype($offset) . ' given', E_USER_WARNING); return false; } // Manipulate the string if there is an offset $fix = 0; if (!is_null($offset)) { if ($offset > 0) { $haystack = substr($haystack, $offset, strlen($haystack) - $offset); $fix = $offset; } } $segments = explode(strtolower($needle), strtolower($haystack), 2); // Check there was a match if (count($segments) === 1) { return false; } $position = strlen($segments[0]) + $fix; return $position; } } /** * Ported PHP5 function to PHP4 for forward compatibility */ function clone($object) { return $object; } ?>aphone', // Others (TV) 'webtv' => 'webtv', // Other kind of browsers 'csscheck' => 'notavailable', 'w3m' => 'notavailable', 'w3c_css_validator' => 'notavailable', 'w3c_validator' => 'notavailable', 'wdg_validator' => 'notavailable', 'webzip' => 'webzip', 'staroffice' => 'staroffice', 'mozilla' => 'mozilla', 'libwww' => 'notavailable' ); // TODO // Add Gecko category -> IE / Netscape / Gecko(except Netscape) / Other // IE (based on Mosaic) // Netscape family // Gecko except Netscape (Mozilla, Firebird (was Phoenix), Galeon, AmiZilla, Dino, and few others) // Opera (Opera 6/7) // KHTML (Konqueror, Safari) ?>x\r۸&ϱDRlI{rLvzKH"iY>rfkiݹ@RD8IhC7n{{0ReCCķrZj6뭒_zr/_? ߫'߮#]3s7J/49ad2)OeF 2qZ 3e;ݶlSPj*L-z+Z-:F%tEF.vD#m]mIǤل[ D,;ZAM_#~c\A$o>' %rp!k,АoL'+ϊsB9&Lâ^3Ԃ,ȳ?e)wl (1|0w̩]>B)@~Ji8'X2tAôTݳ"0# 1%٘x(~<,_?fneG-08WXc?@[Y_0IK他#r~d/ ?4E}\tF# yE!ơ c~ H/tА EJ1|a҉xc}bxl@'Gs eFkB'42whdU 8D_"1/8 AuA.9b&= -2:avMG'ÌuLv .ʿi{z {j($ϵYB,mv%J9pwTjd7x ;W^lo^옲{;yܡ,Pt5?#!DejV%{NK C18 ;eF25 1z; 8@\0Poiz>/#V8֓h@\#hڡZ_44ek/A0˛﹡PhA (fv tt4HVH!t N y]1t5QO1\k~~%`l[;%..T4œzBC0uUrqk@;-"+2PP1ǀ>dU 5? Ŭk{QY.Ò?"Еp/t\^VE:o۔4CjE|hV*O-Q7Z#IR o؋Cj+<N#||%8f, ]Q'KpEיٍmOLؙDž  ^LGr |YM 0{Lta_"w4SOumFcCcC# t";ח]]Z끽5 *fɬ 85zGV\b!Asc n tVTMA&F}TXX`@ :駋̈\V{j9t"SpJ QD\a >8=F$+"]$8#dҔ"1Z-OH\rǽu}R1W2@QB }VE0ER"lfEԺx |L8=GWؿ%r:bqPh5,l7ZުեY2 *Gfx^y#FQqX D4a8`F'Gs5{oo 2EWY#ֆPW!̎WUM<ݺ|F<〧hO89l!^:l jƛKz.^] ݊;ht ۞"mT0p4(ck`-f~l J7hר\֘%f|(˳鷋mNơ\35c.y|VR˨yp뽹պ%{t|?]\zr/. m)a1s[ĥDHհzr4Vm [/"Rp50(SA ^NF[GLϭ 2| 58#ח]|\\H9TmέsA%ɉr x@.e}-=ʞJE;`qdɡ*l\B4ܫW$2h!/ eA.o ƌN_լNǡ0P/1K_h87}E_aia)zq+<t LϹz| `|1?, Mns-Ll8h=mͲlXizmZP \SrUAf;;A'FTJLs GVŧ^ (LqܹbAan8jM'Sl" Ve-&V>ígp-EEE mIЙ׹r}i,)\+sfU_U]VC'c|Ubd481Zho,sbԊ@y1Ž<` NY!x}o>xsxxxϏ7jqK<[RBNh~W30U?F"N ⏅G8@cyWMJUu;55Sz87bQWT:W.1;ҕ`ɮ-AlmZ{6(?z*Pb-OvnXT$VfW/Z[~VOx6oyule}M ޶i4ZڰURovլ6Y{~[tW:޹[ožW2zuqMV{V\U?/ݫ_cjd%MEV)<3eҤ;̂3R0 46 K6=mو ?PJJ?BP4TC׻2BPÉ2X.g܅F8)S-Zt&{'J#Ily^*ƛ KDv0lAk@< jV4*Qm6 8[V^P(C -O.z!E?28W hd s%bC;?b2 {QbM%Fre