protected function checkBrowserOpera()
{
if (stripos($this->_agent, 'opera mini') !== false) {
$resultant = stristr($this->_agent, 'opera mini');
if (preg_match('/\\//', $resultant)) {
$aresult = explode('/', $resultant);
if (isset($aresult[1])) {
$aversion = explode(' ', $aresult[1]);
$this->setVersion($aversion[0]);
}
} else {
$aversion = explode(' ', stristr($resultant, 'opera mini'));
if (isset($aversion[1])) {
$this->setVersion($aversion[1]);
}
}
$this->_browser_name = self::BROWSER_OPERA_MINI;
$this->setMobile(true);
return true;
} else {
if (stripos($this->_agent, 'opera') !== false) {
$resultant = stristr($this->_agent, 'opera');
if (preg_match('/Version\\/(1*.*)$/', $resultant, $matches)) {
$this->setVersion($matches[1]);
} else {
if (preg_match('/\\//', $resultant)) {
$aresult = explode('/', str_replace("(", " ", $resultant));
if (isset($aresult[1])) {
$aversion = explode(' ', $aresult[1]);
$this->setVersion($aversion[0]);
}
} else {
$aversion = explode(' ', stristr($resultant, 'opera'));
$this->setVersion(isset($aversion[1]) ? $aversion[1] : "");
}
}
if (stripos($this->_agent, 'Opera Mobi') !== false) {
$this->setMobile(true);
}
$this->_browser_name = self::BROWSER_OPERA;
return true;
} else {
if (stripos($this->_agent, 'OPR') !== false) {
$resultant = stristr($this->_agent, 'OPR');
if (preg_match('/\\//', $resultant)) {
$aresult = explode('/', str_replace("(", " ", $resultant));
if (isset($aresult[1])) {
$aversion = explode(' ', $aresult[1]);
$this->setVersion($aversion[0]);
}
}
if (stripos($this->_agent, 'Mobile') !== false) {
$this->setMobile(true);
}
$this->_browser_name = self::BROWSER_OPERA;
return true;
}
}
}
return false;
}