'application/msword', 'jpg' => 'image/jpeg', 'pdf' => 'application/pdf', 'txt' => 'text/plain', 'xls' => 'application/vnd.ms-excel', // compressed file types 'exe' => 'application/octet-stream', 'tar' => 'application/x-tar', 'zip' => 'application/zip', 'gz' => 'application/x-gzip', 'torrent' => 'application/x-bittorrent', // multimedi files 'avi' => 'video/x-msvideo', 'mp3' => 'audio/mpeg', 'mpe' => 'video/mpeg', 'mpg' => 'video/mpeg', 'mpeg' => 'video/mpeg' ); // search engine referer urls $engines = array( 'www.alexa.com' => 'Alexa', 'www.alltheinternet.com' => 'All the Internet', 'alltheweb.com' => 'AlltheWeb.com', 'www.altavista.com' => 'AltaVista', 'aolsearch.aol.com' => 'AOL Web Search', 'search.aol.com' => 'AOL Web Search', 'web.ask.com' => 'Ask Jeeves', 'search.dmoz.org' => 'DMOZ', 'www.dogpile.com' => 'Dogpile', 'search.earthlink.net' => 'EarthLink', 'www.entireweb.com' => 'Entireweb', 'euroseek.com' => 'Euroseek.com', 'msxml.excite.com' => 'Excite', 'www.gigablast.com' => 'Gigablast', 'www.google.com' => 'Google', 'www.google.co.uk' => 'Google', // UK 'www.hotbot.com' => 'HotBot', 'search.info.com' => 'Info.uk', 'search.iwon.com' => 'iWon', 'search.looksmart.com' => 'LookSmart', 'search.lycos.co.uk' => 'Lycos', 'www.metacrawler.com' => 'MetaCrawler', 'search.msn.com' => 'MSN Search', 'search.msn.co.uk' => 'MSN Search', // UK 'sea.search.msn.co.uk' => 'MSN Search', // UK 'search.netscape.com' => 'Netscape Search', 'www.overture.com' => 'Overture', 'www.search.com' => 'Search.com', 's.teoma.com' => 'Teoma', 'search.thunderstone.com' => 'Thunderstone', 'search.viewpoint.com' => 'Viewpoint', 'msxml.webcrawler.com' => 'WebCrawler', 'www.wisenut.com' => 'WiseNut', 'yell.com' => 'Yell.com', 'search.yahoo.com' => 'Yahoo!', 'uk.search.yahoo.com' => 'Yahoo!', // UK 'br.busca.yahoo.com' => 'Yahoo!', // Brazil 'www.zeal.com' => 'Zeal.com' @!@'www.pubsub.com' => 'PubSub-RSS-Reader/1.1' 'www.syndic8.com' => 'Syndic8/1.0',@!@ ); // search engine "start of query" markers $keymark = array( 'Alexa' => 'q=', 'All the Internet' => 'q=', 'AlltheWeb.com' => 'q=', 'AltaVista' => 'q=', 'AOL Web Search' => 'query=', 'Ask Jeeves' => 'q=', 'DMOZ' => 'search=', 'Dogpile' => 'web/', 'EarthLink' => 'q=', 'Entireweb' => 'q=', 'Euroseek.com' => 'string=', 'Excite' => 'web/', 'Gigablast' => 'q=', 'Google' => 'q=', 'HotBot' => 'query=', 'iWon' => 'searchfor=', 'LookSmart' => 'qt=', 'MetaCrawler' => 'web/', 'Mirago' => 'qry=', 'MSN Search' => 'q=', 'Netscape Search' => 'query=', 'Overture' => 'Keywords=', 'Search.com' => 'q=', 'Teoma' => 'q=', 'Thunderstone' => 'q=', 'Viewpoint' => 'k=', 'WebCrawler' => 'web/', 'WiseNut' => 'q=', 'Yahoo!' => 'p=', 'Zeal.com' => 'keyword=', 'Lycos' => 'query=', 'Info.uk' => 'query=', ); // search bots and crawler client string markers $bots = array( 'AltaVista' => 'AltaVista', 'Ask Jeeves' => 'Ask Jeeves', 'Entireweb' => 'Speedy_Spider', 'Excite' => 'ArchitextSpider', 'FAST-WebCrawler' => 'AlltheWeb.com', 'Gigablast' => 'Gigabot', 'Google' => 'Googlebot', 'LookSmart' => 'Martini', 'LookSmart' => 'Zyborg', // Looksmart link check bot 'Mirago' => 'HenryTheMiragoRobot', 'MSN Search' => 'msnbot', 'Teoma' => 'teomaagent', 'Thunderstone' => 'T-H-U-N-D-E-R-S-T-O-N-E', //'WiseNut' => 'http://www.WISEnutbot.com', 'Yahoo!' => 'Yahoo!', 'Yell.com' => 'Yell Weblinks Checker', 'Zeal.com' => 'zealbot' @!@'pubsub.com' => 'PubSub-RSS-Reader/1.1' //RSS Readers// 'www.syndic8.com' => 'Syndic8/1.0', //RSS Readers//@!@, ); // determine web browser *** DO NOT CHANGE ORDER OF Opera and MSIE *** function findbrowser($client) { if(substr_count($client, 'Opera')) { $browser = 'Opera'; } elseif(substr_count($client, 'Avant Browser')) { $browser = 'Avant Browser'; } elseif(substr_count($client, 'MSIE')) { $browser = 'MSIE'; } elseif(substr_count($client, 'Netscape')) { $browser = 'Netscape'; } elseif(substr_count($client, 'Safari')) { $browser = 'Safari'; } elseif(substr_count($client, 'Firefox')) { $browser = 'Firefox'; } elseif(substr_count($client, 'Firebird')) { $browser = 'Firebird'; } elseif(substr_count($client, 'AOL')) { $browser = 'AOL'; } elseif(substr_count($client, 'Konqueror')) { $browser = 'Konqueror'; } elseif(substr_count($client, 'Camino')) { $browser = 'Camino'; } elseif(substr_count($client, 'Thunderbird')) { $browser = 'Thunderbird'; } elseif(substr_count($client, 'Gecko')) { $browser = 'Mozilla'; } elseif(substr_count($client, 'Macintosh')) { $browser = 'Mac'; } elseif(substr_count($client, 'AvantGo')) { $browser = 'AvantGo'; } elseif(substr_count($client, 'Nautilus')) { $browser = "Nautilus"; } elseif(substr_count($client, 'Lynx')) { $browser = "Lynx"; } elseif(substr_count($client, 'Galeon')) { $browser = "Galeon"; } elseif(substr_count($client, 'Mozilla')) { $browser = 'Mozilla'; } else { $browser = 'Unknown'; } return $browser; } // determine the operating system function findos($client) { if(substr_count($client, 'Win')) { if(substr_count($client, '95')) { $os = 'Windows 95'; } elseif(substr_count($client, '98')) { $os = 'Windows 98'; } elseif(substr_count($client, 'NT 4.0')) { $os = 'Windows NT'; } elseif(substr_count($client, 'NT 5.0')) { $os = 'Windows 2000'; } elseif(substr_count($client, 'Windows 2000')) { $os = 'Windows 2000'; } elseif(substr_count($client, 'NT 5.1')) { $os = 'Windows XP'; } elseif(substr_count($client, 'NT 5.2')) { $os = 'Windows Server 2003'; } elseif(substr_count($client, 'NT 6.0')) { $os = 'Windows Longhorn'; } elseif(substr_count($client, 'NT')) { $os = 'Windows NT'; } elseif(substr_count($client, 'Windows ME')) { $os = 'Windows ME'; } } elseif(substr_count($client, 'Linux')) { $os = 'Linux'; } elseif(substr_count($client, 'Unix')) { $os = 'Unix'; } elseif(substr_count($client, 'OS X')) { $os = 'Mac OS X'; } elseif(substr_count($client, 'Mac_PowerPC')) { $os = 'Macintosh'; } elseif(substr_count($client, 'Macintosh')) { $os = 'Macintosh'; } elseif(substr_count($client, 'FreeBSD')) { $os = 'FreeBSD'; } else { $os = 'Unknown'; } return $os; } ?>