/ 9㓎#themeco\cornerstone\services\csi18nz8k6$Themeco\Cornerstone\Services\sprintfvaJ$themeco\cornerstone\services\sprintfj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nz8k6$Themeco\Cornerstone\Services\sprintfvaJ$themeco\cornerstone\services\sprintfj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nz8k6$Themeco\Cornerstone\Services\sprintfvaJ$themeco\cornerstone\services\sprintfj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nz8k6$Themeco\Cornerstone\Services\sprintfvaJ$themeco\cornerstone\services\sprintfj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nz8k6$Themeco\Cornerstone\Services\sprintfvaJ$themeco\cornerstone\services\sprintfj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nz8k6$Themeco\Cornerstone\Services\sprintfvaJ$themeco\cornerstone\services\sprintfj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nz8k6$Themeco\Cornerstone\Services\sprintfvaJ$themeco\cornerstone\services\sprintfj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nz8k6$Themeco\Cornerstone\Services\sprintfvaJ$themeco\cornerstone\services\sprintfj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nj`Ê#Themeco\Cornerstone\Services\csi18n/ 9㓎#themeco\cornerstone\services\csi18nz8k6$Themeco\Cornerstone\Services\sprintfvaJ$themeco\cornerstone\services\sprintfj`Ê#Themeco\Cornerstone\Services\csi18n> empty($result[BROWSER_VERSION]) ? null : $result[BROWSER_VERSION] ]; } return $return; } if( preg_match('/rv:(?P[0-9A-Z.]+)/i', $u_agent, $rv_result) ) { $rv_result = $rv_result[BROWSER_VERSION]; } $browser = $result[BROWSER][0]; $version = $result[BROWSER_VERSION][0]; $lowerBrowser = array_map('strtolower', $result[BROWSER]); $find = function( $search, &$key = null, &$value = null ) use ( $lowerBrowser ) { $search = (array)$search; foreach( $search as $val ) { $xkey = array_search(strtolower($val), $lowerBrowser); if( $xkey !== false ) { $value = $val; $key = $xkey; return true; } } return false; }; $findT = function( array $search, &$key = null, &$value = null ) use ( $find ) { $value2 = null; if( $find(array_keys($search), $key, $value2) ) { $value = $search[$value2]; return true; } return false; }; $key = 0; $val = ''; if( $findT([ 'OPR' => 'Opera', 'Facebot' => 'iMessageBot', 'UCBrowser' => 'UC Browser', 'YaBrowser' => 'Yandex', 'YaApp_Android' => 'Yandex', 'Iceweasel' => 'Firefox', 'Icecat' => 'Firefox', 'CriOS' => 'Chrome', 'Edg' => 'Edge', 'EdgA' => 'Edge', 'XiaoMi/MiuiBrowser' => 'MiuiBrowser' ], $key, $browser) ) { $version = is_numeric(substr($result[BROWSER_VERSION][$key], 0, 1)) ? $result[BROWSER_VERSION][$key] : null; } elseif( $find('Playstation Vita', $key, $platform) ) { $platform = 'PlayStation Vita'; $browser = 'Browser'; } elseif( $find([ 'Kindle Fire', 'Silk' ], $key, $val) ) { $browser = $val == 'Silk' ? 'Silk' : 'Kindle'; $platform = 'Kindle Fire'; if( !($version = $result[BROWSER_VERSION][$key]) || !is_numeric($version[0]) ) { $version = $result[BROWSER_VERSION][array_search('Version', $result[BROWSER])]; } } elseif( $find('NintendoBrowser', $key) || $platform == 'Nintendo 3DS' ) { $browser = 'NintendoBrowser'; $version = $result[BROWSER_VERSION][$key]; } elseif( $find([ 'Kindle' ], $key, $platform) ) { $browser = $result[BROWSER][$key]; $version = $result[BROWSER_VERSION][$key]; } elseif( $find('Opera', $key, $browser) ) { $find('Version', $key); $version = $result[BROWSER_VERSION][$key]; } elseif( $find('Puffin', $key, $browser) ) { $version = $result[BROWSER_VERSION][$key]; if( strlen($version) > 3 ) { $part = substr($version, -2); if( ctype_upper($part) ) { $version = substr($version, 0, -2); $flags = [ 'IP' => 'iPhone', 'IT' => 'iPad', 'AP' => 'Android', 'AT' => 'Android', 'WP' => 'Windows Phone', 'WT' => 'Windows' ]; if( isset($flags[$part]) ) { $platform = $flags[$part]; } } } } elseif( $find([ 'Googlebot', 'Applebot', 'IEMobile', 'Edge', 'Midori', 'Whale', 'Vivaldi', 'OculusBrowser', 'SamsungBrowser', 'Valve Steam Tenfoot', 'Chrome', 'HeadlessChrome', 'SailfishBrowser' ], $key, $browser) ) { $version = $result[BROWSER_VERSION][$key]; } elseif( $rv_result && $find('Trident') ) { $browser = 'MSIE'; $version = $rv_result; } elseif( $browser == 'AppleWebKit' ) { if( $platform == 'Android' ) { $browser = 'Android Browser'; } elseif( strpos((string)$platform, 'BB') === 0 ) { $browser = 'BlackBerry Browser'; $platform = 'BlackBerry'; } elseif( $platform == 'BlackBerry' || $platform == 'PlayBook' ) { $browser = 'BlackBerry Browser'; } elseif( $find('Safari', $key, $browser) || $find('TizenBrowser', $key, $browser) ) { $version = $result[BROWSER_VERSION][$key]; } elseif( count($result[BROWSER]) ) { $key = count($result[BROWSER]) - 1; $browser = $result[BROWSER][$key]; $version = $result[BROWSER_VERSION][$key]; } if( $find('Version', $key) ) { $version = $result[BROWSER_VERSION][$key]; } } elseif( $pKey = preg_grep('/playstation \d/i', $result[BROWSER]) ) { $pKey = reset($pKey); $platform = 'PlayStation ' . preg_replace('/\D/', '', $pKey); $browser = 'NetFront'; } return $return; } }