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ٖ1!-1|_@W#|DMOS9?g1KiI>)tʓi}I mكBO CnfG*%ت&%$ \{`^sǔ,O ]2h_uKBnB A5y/Ym\vRHs#4dDNYvE hXiATV byۚ)vD#$6ۉ`p7Hu v龉%"$ bi>t21;ܐ2ե{ $>V)M˜GzS.**}g7ɐS6Z9P0AuÞECܗ2CI.NgX %Z_f'ZzP9Qr<nonMG=|iV\$zGt Djݲ`=˰q (M\%m阸>MoZ&V5K ѥgJQ>5槒gN܇ro|:<  YcEZ N&!Z64S JZ{,aVT6 le0z.@45Hog)=(;ETǣ|DZG^R oIjJmĜn|REWƇ\Ɖ-=|mfIX&=_?XsĘ6K8ƹ gR~$}/ SxL|'֒Â2bw!`KXdm{j?Nn|A,66JR> BMrWA{fxo:j8FMewzMZ5^JiA@Ǽ@aEM)=TF4gBa>bqbZA'ؤ.VI<OiZſtQ>WtF#%>9iBr,brTD~t,~LHH#.~pĭvG āXq/%1.ZfM:YtnFg,C_O?Z8..5l _'=ҟaкe |?*]R~wWFQ֫y"w4r<+bZjD4Ii{i{ &¬,k 1jٝ$̎7FQn:PϘqMD@+xqtIyڬRjأKy5\} H`A+R }ʔF,;.v6FL[rsyA#۵WX䢟nWJ6ƘuFY4g/799Ss!wjDŽ4]_NggB ק~*3+CT^ 3j0fxn] ߤ]DCﮒ1+_$L0]_XYKV4V&^d((t< ٶ9T@4g jc,e@TgcXodm=$y+4 $d\r.bILb9AZprS:Z?*i)R1Ͷ՗"Lf錶5ė61:Ƭh&@6By;l;d-GCЖNHrUS #g; #>}`K BӬ5θ~T6w^X{7WYKVȂh'!M` 5e݁:.Z)*cCNYɹPOS9yKkn+<:ֺ<+Մ@H|M& B\5%G$ M2Q'$|zsK/Si M^@; N C5Wz6c""M!Gt=x| i,U }}}'w\2+Ś>WHe1)+}N#ɭXvl!OەŰL@PHW2RbTErl"Kg1p.R93{i/x\1h1yg"DkW8MzJ=7 # M^32@ KTO~=׆Yw=m-{B- m7\bL|ͱh9sJ'G^*93EQY*h;- DȔuKK`Ȫ ~Njq3ĿٚK,zV|$CH>CGrNMg\Љ`M3<ݣ6*UnS-&nۤPo.Zl:mpT:~b=hrnȩV lp9*,P_ Ǫ(1PK b sVqu~`ri{ܕ/UPه{Ǫq^zQi=-Sa'M݋ƞ0>?رDӚFZ9[au?˪xJ