You are here

function browserclass_get_classes in Browser Class 7

Same name and namespace in other branches
  1. 6 browserclass.module \browserclass_get_classes()

Get classes.

Return value

array An array of browser classes.

3 calls to browserclass_get_classes()
browserclass_page_build in ./browserclass.module
Implements hook_page_build().
browserclass_preprocess_html in ./browserclass.module
Implements hook_preprocess_HOOK().
browserclass_tokens in ./browserclass.tokens.inc
Implements hook_tokens().

File

./browserclass.module, line 110
Provides Browser Class settings form, permission, and browser detection.

Code

function browserclass_get_classes($types = BROWSERCLASS_ALL) {
  $classes = [];

  // User agent doesn't set always, for example on rss readers.
  if (isset($_SERVER['HTTP_USER_AGENT'])) {
    $agent = strtolower($_SERVER['HTTP_USER_AGENT']);
    if ($types & BROWSERCLASS_BROWSER) {
      $classes = array_merge($classes, browserclass_check_browser($agent));
    }
    if ($types & BROWSERCLASS_PLATFORM) {
      $classes = array_merge($classes, browserclass_check_platform($agent));
    }
    if ($types & BROWSERCLASS_OTHER_CLASSES) {

      // Merge other modules classes.
      $classes = array_merge($classes, module_invoke_all('browserclass_classes', $agent));
    }
    if ($types & BROWSERCLASS_MOBILE) {
      $classes[] = browserclass_is_mobile_devide($agent, $classes) ? 'mobile' : 'desktop';
    }
  }
  return $classes;
}