/** * Returns constant representing user agent (browser) in SPAW terms * @returns integer * @static * @see SPAW_AGENT_UNSUPPORTED, SPAW_AGENT_IE, SPAW_AGENT_GECKO */ function getAgent() { $result = SPAW_AGENT_UNSUPPORTED; $browser = SpawVars::GetServerVar('HTTP_USER_AGENT'); //echo $browser; // check if msie if (preg_match("/MSIE[^;]*/i", $browser, $msie)) { // get version if (preg_match("/[0-9]+\\.[0-9]+/i", $msie[0], $version)) { // check version if ((double) $version[0] >= 5.5) { // finally check if it's not opera impersonating ie if (!preg_match("/opera/i", $browser)) { $result = SPAW_AGENT_IE; } } } } elseif (preg_match("/Gecko\\/([0-9]*)/", $browser, $build)) { // build date of Mozilla version 1.3 is 20030312 if ($build[1] > "20030312") { $result = SPAW_AGENT_GECKO; } } elseif (preg_match("/Opera\\/([0-9]*)/i", $browser, $opera)) { if ((double) $opera[1] >= 9) { $result = SPAW_AGENT_OPERA; } } elseif (preg_match("/Safari\\/([0-9]*)/i", $browser, $safari)) { // safari build 500 or higher (safari 3 or newer) if ((double) $safari[1] >= 500) { $result = SPAW_AGENT_SAFARI; } } return $result; }
/** * Returns constant representing user agent (browser) in SPAW terms * @returns integer * @static * @see SPAW_AGENT_UNSUPPORTED, SPAW_AGENT_IE, SPAW_AGENT_GECKO */ function getAgent() { $result = SPAW_AGENT_UNSUPPORTED; $browser = SpawVars::GetServerVar('HTTP_USER_AGENT'); // check if msie if (eregi("MSIE[^;]*", $browser, $msie)) { // get version if (eregi("[0-9]+\\.[0-9]+", $msie[0], $version)) { // check version if ((double) $version[0] >= 5.5) { // finally check if it's not opera impersonating ie if (!eregi("opera", $browser)) { $result = SPAW_AGENT_IE; } } } } elseif (ereg("Gecko/([0-9]*)", $browser, $build)) { // build date of Mozilla version 1.3 is 20030312 if ($build[1] > "20030312") { $result = SPAW_AGENT_GECKO; } } elseif (eregi("Opera/([0-9]*)", $browser, $opera)) { if ((double) $opera[1] >= 9) { $result = SPAW_AGENT_OPERA; } } return $result; }