PageSourceSearch

https://secretariageneral.gov.co/modules/contrib/user_agent_class/js/user_agent_check.js?v=1.x

js secretariageneral.gov.co collected 2026-10-01 12:25:15 UTC 1,871 bytes, 50 lines download raw bytes

1/**
2 * @file
3 * Contains user_agent_check.js.
4 */
5
6(function ($, Drupal, drupalSettings) {
7  'use strict';
8  Drupal.behaviors.userAgentClassBehavior = {
9    attach: function () {
10      var userAgentText = navigator.userAgent;
11      var listDevicesAndBrowsers = drupalSettings.user_agent_class.ListDevicesAndBrowsers;
12      var listDevices = Object.keys(listDevicesAndBrowsers[0].device_entity).map(function (e) {
13        return listDevicesAndBrowsers[0].device_entity[e];
14      });
15      var listBrowsers = Object.keys(listDevicesAndBrowsers[1].user_agent_entity).map(function (e) {
16        return listDevicesAndBrowsers[1].user_agent_entity[e];
17      });
18      var methodProvideBoolean = drupalSettings.user_agent_class.methodProvide;
19      if (methodProvideBoolean === '0' || methodProvideBoolean === 0) {
20        var classes = [];
21        var item = '';
22        for (item in listBrowsers) {
23          if (listBrowsers[item].exclude.length > 0
24            && userAgentText.search(listBrowsers[item].exclude) >= 0
25            && userAgentText.search(listBrowsers[item].trigger) >= 0) {
26            continue;
27          }
28          else if (userAgentText.search(listBrowsers[item].trigger) >= 0) {
29            classes.push(listBrowsers[item].className);
30            break;
31          }
32        }
33
34        for (item in listDevices) {
35          if (listDevices[item].exclude.length > 0
36            && userAgentText.search(listDevices[item].exclude) >= 0
37            && userAgentText.search(listDevices[item].trigger) >= 0) {
38            continue;
39          }
40          else if (userAgentText.search(listDevices[item].trigger) >= 0) {
41            classes.push(listDevices[item].className);
42            break;
43          }
44        }
45        var classesInBody = classes.join(' ');
46        $('body').addClass(classesInBody);
47      }
48    }
49  };
50})(jQuery, Drupal, drupalSettings);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.