function testBrowserNameToClass() { $result = CoreUtils::browserNameToClass('Chrome'); self::assertEquals('chrome', $result); $result = CoreUtils::browserNameToClass('Edge'); self::assertEquals('edge', $result); $result = CoreUtils::browserNameToClass('Firefox'); self::assertEquals('firefox', $result); $result = CoreUtils::browserNameToClass('Internet Explorer'); self::assertEquals('internetexplorer', $result); $result = CoreUtils::browserNameToClass('IE Mobile'); self::assertEquals('iemobile', $result); $result = CoreUtils::browserNameToClass('Opera'); self::assertEquals('opera', $result); $result = CoreUtils::browserNameToClass('Opera Mini'); self::assertEquals('operamini', $result); $result = CoreUtils::browserNameToClass('Safari'); self::assertEquals('safari', $result); $result = CoreUtils::browserNameToClass('Vivaldi'); self::assertEquals('vivaldi', $result); }
<?php use App\CoreUtils; use App\Users; ?> <div id="content"> <? if (isset($browser['browser_name'])){ ?> <div class="browser-<?php echo CoreUtils::browserNameToClass($browser['browser_name']); ?> "></div> <? } ?> <h1><?php echo rtrim(($browser['browser_name'] ?? 'Unknown browser') . ' ' . ($browser['browser_ver'] ?? '')); ?> </h1> <p><?php echo !empty($browser['platform']) ? "on {$browser['platform']}" : 'Unknown platform'; ?> </p> <?php echo !empty($Session) ? CoreUtils::notice('warn', "You're debugging session #{$Session['id']} (belongs to " . Users::get($Session['user'])->getProfileLink() . ")") : ''; ?> <?php echo CoreUtils::notice('info', 'Browser recognition testing page', "The following page is used to make sure that the site's browser detection script works as it should. If you're seeing a browser and/or operating system that's different from what you're currently using, please <a class='send-feedback'>let us know.</a>"); ?> <section> <h2>Your User Agent string</h2> <p><code><?php
/** * Parse session array for user page * * @param array $Session * @param bool $current */ static function renderSessionLi($Session, $current = false) { $browserClass = CoreUtils::browserNameToClass($Session['browser_name']); $browserTitle = !empty($Session['browser_name']) ? "{$Session['browser_name']} {$Session['browser_ver']}" : 'Unrecognized browser'; $platform = !empty($Session['platform']) ? "<span class='platform'>on <strong>{$Session['platform']}</strong></span>" : ''; $signoutText = !$current ? 'Delete' : 'Sign out'; $buttons = "<button class='typcn remove " . (!$current ? 'typcn-trash red' : 'typcn-arrow-back') . "' data-sid='{$Session['id']}'>{$signoutText}</button>"; if (Permission::sufficient('developer') && !empty($Session['user_agent'])) { $buttons .= "<br><button class='darkblue typcn typcn-eye useragent' data-agent='" . CoreUtils::aposEncode($Session['user_agent']) . "'>UA</button>" . "<a class='btn orange typcn typcn-chevron-right' href='/browser/{$Session['id']}'>Debug</a>"; } $firstuse = Time::tag($Session['created']); $lastuse = !$current ? 'Last used: ' . Time::tag($Session['lastvisit']) : '<em>Current session</em>'; echo <<<HTML <li class="browser-{$browserClass}" id="session-{$Session['id']}"> <span class="browser">{$browserTitle}</span> {$platform}{$buttons} <span class="created">Created: {$firstuse}</span> <span class="used">{$lastuse}</span> </li> HTML; }