ILIAS  Release_3_10_x_branch Revision 61812
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilBrowser Class Reference

Browser check. More...

+ Collaboration diagram for ilBrowser:

Public Member Functions

 ilBrowser ()
 returnArray ()
 getAgent ()
 getVersion ($a_as_array=true)
 getPlatform ()
 isLinux ()
 isUnix ()
 isBeos ()
 isMac ()
 isWindows ()
 isIE ()
 isNetscape ()
 means: Netscape/Mozilla without Gecko engine
 isMozilla ()
 means: Netscape/Mozilla with Gecko engine
 isOpera ()
 isSafari ()
 isFirefox ()

Data Fields

 $BROWSER_AGENT
 $BROWSER_VER
 $BROWSER_PLATFORM
 $br
 $p
 $data

Detailed Description

Browser check.

Version
Id:
class.ilBrowser.php 13038 2007-01-18 09:43:09Z akill

Definition at line 44 of file class.ilBrowser.php.

Member Function Documentation

ilBrowser::getAgent ( )

Definition at line 189 of file class.ilBrowser.php.

References $BROWSER_AGENT.

Referenced by isFirefox(), isIE(), isMozilla(), isNetscape(), isOpera(), isSafari(), and returnArray().

{
}

+ Here is the caller graph for this function:

ilBrowser::getPlatform ( )

Definition at line 199 of file class.ilBrowser.php.

References $BROWSER_PLATFORM.

Referenced by isBeos(), isLinux(), isMac(), isUnix(), isWindows(), and returnArray().

+ Here is the caller graph for this function:

ilBrowser::getVersion (   $a_as_array = true)

Definition at line 194 of file class.ilBrowser.php.

Referenced by returnArray().

{
return explode(".", $this->BROWSER_VER);
}

+ Here is the caller graph for this function:

ilBrowser::ilBrowser ( )

Definition at line 53 of file class.ilBrowser.php.

{
$HTTP_USER_AGENT = $_SERVER['HTTP_USER_AGENT'];
/*
Determine browser and version
*/
if(ereg('MSIE ([0-9].[0-9]{1,2})',$HTTP_USER_AGENT,$log_version))
{
$this->BROWSER_VER = $log_version[1];
$this->BROWSER_AGENT = 'IE';
}
elseif(ereg('Opera ([0-9].[0-9]{1,2})',$HTTP_USER_AGENT,$log_version) ||
ereg('Opera/([0-9].[0-9]{1,2})',$HTTP_USER_AGENT,$log_version))
{
$this->BROWSER_VER = $log_version[1];
$this->BROWSER_AGENT = 'OPERA';
}
elseif(ereg('Safari ([0-9/.]*)',$HTTP_USER_AGENT,$log_version) ||
ereg('Safari/([0-9/.]*)',$HTTP_USER_AGENT,$log_version))
{
$this->BROWSER_VER = $log_version[1];
$this->BROWSER_AGENT = 'Safari';
}
elseif(ereg('Firefox ([0-9/.]*)',$HTTP_USER_AGENT,$log_version) ||
ereg('Firefox/([0-9/.]*)',$HTTP_USER_AGENT,$log_version))
{
$this->BROWSER_VER = $log_version[1];
$this->BROWSER_AGENT = 'Firefox';
}
elseif(eregi('iCab ([0-9].[0-9a-zA-Z]{1,4})',$HTTP_USER_AGENT,$log_version) ||
eregi('iCab/([0-9].[0-9a-zA-Z]{1,4})',$HTTP_USER_AGENT,$log_version))
{
$this->BROWSER_VER = $log_version[1];
$this->BROWSER_AGENT = 'iCab';
}
elseif(eregi('Mozilla ([0-9].[0-9a-zA-Z]{1,4})',$HTTP_USER_AGENT,$log_version) ||
eregi('Mozilla/([0-9].[0-9a-zA-Z]{1,4})',$HTTP_USER_AGENT,$log_version))
{
$this->BROWSER_VER = $log_version[1];
if (ereg('Gecko',$HTTP_USER_AGENT,$log_version))
{
$this->BROWSER_AGENT = 'Mozilla';
}
else
{
$this->BROWSER_AGENT = 'Netscape';
}
}
elseif(ereg('Konqueror/([0-9].[0-9].[0-9]{1,2})',$HTTP_USER_AGENT,$log_version) ||
ereg('Konqueror/([0-9].[0-9]{1,2})',$HTTP_USER_AGENT,$log_version))
{
$this->BROWSER_VER=$log_version[1];
$this->BROWSER_AGENT='Konqueror';
}
else
{
$this->BROWSER_VER=0;
$this->BROWSER_AGENT='OTHER';
}
/*
Determine platform
*/
if(strstr($HTTP_USER_AGENT,'Win'))
{
$this->BROWSER_PLATFORM='Win';
}
elseif(strstr($HTTP_USER_AGENT,'Mac'))
{
$this->BROWSER_PLATFORM='Mac';
}
elseif(strstr($HTTP_USER_AGENT,'Linux'))
{
$this->BROWSER_PLATFORM='Linux';
}
elseif(strstr($HTTP_USER_AGENT,'Unix'))
{
$this->BROWSER_PLATFORM='Unix';
}
elseif(strstr($HTTP_USER_AGENT,'Beos'))
{
$this->BROWSER_PLATFORM='Beos';
}
else
{
$this->BROWSER_PLATFORM='Other';
}
/*
echo "<br>Agent: $HTTP_USER_AGENT";
echo "<br><b>Browser</b>";
echo "<br>IE: ".$this->isIE();
echo "<br>Netscape: ".$this->isNetscape();
echo "<br>Mozilla: ".$this->isMozilla();
echo "<br>Firefox: ".$this->isFirefox();
echo "<br>Safari: ".$this->isSafari();
echo "<br>Opera: ".$this->isOpera();
echo "<br><b>OS</b>";
echo "<br>Mac: ".$this->isMac();
echo "<br>Windows: ".$this->isWindows();
echo "<br>Linux: ".$this->isLinux();
echo "<br>Unix: ".$this->isUnix();
echo "<br>Beos: ".$this->isBeos();
echo "<br><b>Summary</b>";
echo "<br>OS: ".$this->getPlatform();
echo "<br>Version: ".$this->getVersion(false);
echo "<br>Agent: ".$this->getAgent();
*/
// The br and p functions are supposed to return the correct
// value for tags that do not need to be closed. This is
// per the xhmtl spec, so we need to fix this to include
// all compliant browsers we know of.
if($this->BROWSER_AGENT == 'IE')
{
$this->br = '<br/>';
$this->p = '<p/>';
}
else
{
$this->br = '<br>';
$this->p = '<p>';
}
}
ilBrowser::isBeos ( )

Definition at line 228 of file class.ilBrowser.php.

References getPlatform().

{
if($this->getPlatform()=='Beos')
{
return true;
}
else
{
return false;
}
}

+ Here is the call graph for this function:

ilBrowser::isFirefox ( )

Definition at line 330 of file class.ilBrowser.php.

References getAgent().

{
if($this->getAgent()=='Firefox')
{
return true;
}
else
{
return false;
}
}

+ Here is the call graph for this function:

ilBrowser::isIE ( )

Definition at line 264 of file class.ilBrowser.php.

References getAgent().

{
if($this->getAgent()=='IE')
{
return true;
}
else
{
return false;
}
}

+ Here is the call graph for this function:

ilBrowser::isLinux ( )

Definition at line 204 of file class.ilBrowser.php.

References getPlatform().

{
if($this->getPlatform()=='Linux')
{
return true;
}
else
{
return false;
}
}

+ Here is the call graph for this function:

ilBrowser::isMac ( )

Definition at line 240 of file class.ilBrowser.php.

References getPlatform().

{
if($this->getPlatform()=='Mac')
{
return true;
}
else
{
return false;
}
}

+ Here is the call graph for this function:

ilBrowser::isMozilla ( )

means: Netscape/Mozilla with Gecko engine

Definition at line 294 of file class.ilBrowser.php.

References getAgent().

{
if($this->getAgent()=='Mozilla')
{
return true;
}
else
{
return false;
}
}

+ Here is the call graph for this function:

ilBrowser::isNetscape ( )

means: Netscape/Mozilla without Gecko engine

Definition at line 279 of file class.ilBrowser.php.

References getAgent().

{
if($this->getAgent()=='Netscape')
{
return true;
}
else
{
return false;
}
}

+ Here is the call graph for this function:

ilBrowser::isOpera ( )

Definition at line 306 of file class.ilBrowser.php.

References getAgent().

{
if($this->getAgent()=='OPERA')
{
return true;
}
else
{
return false;
}
}

+ Here is the call graph for this function:

ilBrowser::isSafari ( )

Definition at line 318 of file class.ilBrowser.php.

References getAgent().

{
if($this->getAgent()=='Safari')
{
return true;
}
else
{
return false;
}
}

+ Here is the call graph for this function:

ilBrowser::isUnix ( )

Definition at line 216 of file class.ilBrowser.php.

References getPlatform().

{
if($this->getPlatform()=='Unix')
{
return true;
}
else
{
return false;
}
}

+ Here is the call graph for this function:

ilBrowser::isWindows ( )

Definition at line 252 of file class.ilBrowser.php.

References getPlatform().

{
if($this->getPlatform()=='Win')
{
return true;
}
else
{
return false;
}
}

+ Here is the call graph for this function:

ilBrowser::returnArray ( )

Definition at line 178 of file class.ilBrowser.php.

References $data, getAgent(), getPlatform(), and getVersion().

{
$this->data = array(
'agent' => $this->getAgent(),
'version' => $this->getVersion(false),
'platform' => $this->getPlatform()
);
return $this->data;
}

+ Here is the call graph for this function:

Field Documentation

ilBrowser::$br

Definition at line 49 of file class.ilBrowser.php.

ilBrowser::$BROWSER_AGENT

Definition at line 46 of file class.ilBrowser.php.

Referenced by getAgent().

ilBrowser::$BROWSER_PLATFORM

Definition at line 48 of file class.ilBrowser.php.

Referenced by getPlatform().

ilBrowser::$BROWSER_VER

Definition at line 47 of file class.ilBrowser.php.

ilBrowser::$data

Definition at line 51 of file class.ilBrowser.php.

Referenced by returnArray().

ilBrowser::$p

Definition at line 50 of file class.ilBrowser.php.


The documentation for this class was generated from the following file: