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=rHV̙ le%wv(EBޘOڧy*\$DRoL @yVfVUVwe"wjFƄoJ񇝚aU{=y_._3;6_{ju}f_{C55V882hm7d84?߱6֏вaVx ~ԩuxxʂ[7vbWt7)=Vg2L,:]BX'jq≘3{SO5fJ?~ܩh_cF%"3tCR"=Ŷ`"H'y) 7b< {bXORC=GE%oV,}xS ޥ \T^Ub9vSxϟB׿]7,>_nSogEg׎$.c|]` 4?2sŧ0v"c&Cv!z^ t4iQ3OL?$cXP>Ç.ҧDT|SCA_$W^#>)0b%-QܗAtU)t-& ͐w%G-P7!eXO``:C;fΞv >f}q VrqUX(` 11}[HURw_X#] ՈVXxǥ a?m7- UG`Ȣx E{lN ̋>Gx 㒩-zC1{# zFpEQxn c Tp BǏkt?-' \>>/Zco5fg|j]@`š{CQ[2ZcǎC>1 ʅq`P 2uTѣo@uN1r?ߥHA:&GgdQgPm%KnvB@a:ʽx|j7Nȣ2 k&1sLt;بQ=Ĺ4%i#N̴ySzEQk#[xA@Ơ1h/^sGJ/4&] gN4:KkLQ@9Vlwj>" 3V un఩ޣc$/>Y˹eXBPЊ-(4(AhM]MߟhCD<<8ӓV jRӺ |ԇ%w|W Em b,xbp` v1# P -=hqk4 n nWNN1X '}C+cw4(ZGa?E`{>Y<$p3NX3"GH.꟡4Fꊏ񕎃GÇx$g;]je#1]U* \f@+MGɹo"%4dWXl@-j&K_~/ޚ8vk$+l4 ,d Jg,t67fdmLFyrkldMBv,7H=,\KY?o(&-UJyfFN>f+o +\bH>]@6T@FYhuOS? &Q̺`! C< =fpr ͭ[G /߃V+nZnȺCQ"^ʁlbtTR}1y o״!"ZfjfhgzVZ4Z4@"TBGc(sy2̟ L3W/K(P9xMZxZxܷƦ-G$6j,h{0pٕ->OHh 29 4 "iֺ0[@ Z7ojo@0Wj@;G;4MEMbu(ƒZV9.߳OܿqZ,_avGOans.VW$_|w~Z[aNV),W/I +3iap!2TAm,hiLV87p%+'pӕ1`ջB"}n%&\AsTv768AkE~j\VP+4&[ͦj g Ͻ ]VCgwj 5R-܅%% ݲ2渎+jgfs܅isZ Ǹs]rvm]x$Û-T#ap p߿|`Ydۻ85#c CP{ dX(Q#%1&*:CFMqӂaUyexR0Hh)_  l!sYiSTAwwO8KU`)al$5-q_2."<;lRN~ʻBHpv9Lڇl aq6x{6r  h6(V6n6󔚻·bؾˏ*'KTPZ+[mlSޠx=y6vǭF''CNS%)XYU2BV=3{xd;KٜIƟ} 5kVnϤ7)OL.P;KT ٵՄ袽svmn{3 1c n R;%ٕy33O qW廲z؝N$ cod*#y393R ʘuCz&& ?_27ZW.y}4 9"؊ۋןNϮzr^pg2ivI]Mdޭ/%F*~1ĕQqƭ9W/Fugk4uGv VKD7v2s{rBVnK_>~X6d&oy#TބxTNJ]Jՙ. C] /0a'A Dr`pgqє֯D)5Pm>:Ych>i){u*em/ @+Q;ʂU_y+nU cKdY`M[7^EI^F#>Xg͎EAuQɰSŰ|q+a9^7`?BR{نD@ԉ j0h&ЉP 7q 5/hxŊ #ݔ_3o^;*C:G8aZS95pO>G׳}oByYL|,?y CMGgΑ Ӽ P2S<3p<-Vy Գ9t,'6Ȧ:IasH-uC}ux.X;WlA_ht@r;ò=!Lo|+,3^AENdh|Qt!TtކTpIpQ_ө"cI_ywE  ] 5)6_XӅa0t3b%d-͛Z[q; e)ψϏ ./Ө\WLZ<W Ϻ(ph y]h)F}'F4o(h1t?hx"1 N`D!_=s* v!OqZPS/)A.bL^/p*_nүȣ#r RӀl/6D R*3ҖtՃ0c2 lK!K*l Jг)bChIBk@Txtc,\.P#TFJPnhrS?xM/*Ǡ]r"xs֣"M=VkժD]^ ynF%H=/d(GǤWק7xJǠYUGK iK!,@;N!kk40jl)ً3 Q/$id`Fs63Z<7~bϏ'xd|y^0xh׃6~<[:J"%Pzn(Mo y7qGD] NsizIskbI5)kn P9bb[ *is!YkkgFj."S8\-Ӆ/)ʍ]ǟaM2He\` __đQ+$|}{GBrА$׌\E pZ\caھĽ)`]޾̒$-XT`qʼnwEH9eu+\ƣ <4;KݯKt]rVNaQYTqhRd9$I\2*'g,Ԓ/H0sk"uS"0NSeT [Wj ?` /0rRk?,Ak59` Hd`ITZ_xb Q=,!~?2͢/Sפ&9Cr=)0zV)x7EZy+\ h)3NcLHg=&h{QP1Ck[ ˫aie2\˪dߕC!!ѯSe&5k/SfS^mtiVx$1$꼱N͖]?p_5i"8~(3Kۥ JVJNaU` ̮KK h8݀bY9`.K`]$ßDhr[2P4N-B^ Y~<0k8FkK Je^aeH}CPh$"AyN` AsDƅOVí2+Ji,ufvRl')ѓ,љPLXly6:=\N1ZGM~*.]XP-poρEG_k; #X{}y|{Q?=hoy'@W-m6ugg?WjHqxBM:ݛƛ@")ꠓJf`샰({<~ ]