PageSourceSearch

https://estudent.uninp.edu.rs/resources/js/browserDetect.js

js uninp.edu.rs collected 2026-10-02 19:09:45 UTC 2,922 bytes, 117 lines download raw bytes

1/*
2 * preuzeto sa sajta www.quirksmode.org
3 */
4var BrowserDetect = {
5  init: function () {
6    this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
7    this.version = this.searchVersion(navigator.userAgent)
8      || this.searchVersion(navigator.appVersion)
9      || "an unknown version";
10    this.OS = this.searchString(this.dataOS) || "an unknown OS";
11  },
12  searchString: function (data) {
13    for (var i=0;i<data.length;i++) {
14      var dataString = data[i].string;
15      var dataProp = data[i].prop;
16      this.versionSearchString = data[i].versionSearch || data[i].identity;
17      if (dataString) {
18        if (dataString.indexOf(data[i].subString) != -1)
19          return data[i].identity;
20      }
21      else if (dataProp)
22        return data[i].identity;
23    }
24  },
25  searchVersion: function (dataString) {
26    var index = dataString.indexOf(this.versionSearchString);
27    if (index == -1) return;
28    return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
29  },
30  dataBrowser: [
31    {
32      string: navigator.userAgent,
33      subString: "Chrome",
34      identity: "Chrome"
35    },
36    {   string: navigator.userAgent,
37      subString: "OmniWeb",
38      versionSearch: "OmniWeb/",
39      identity: "OmniWeb"
40    },
41    {
42      string: navigator.vendor,
43      subString: "Apple",
44      identity: "Safari"
45    },
46    {
47      prop: window.opera,
48      identity: "Opera"
49    },
50    {
51      string: navigator.vendor,
52      subString: "iCab",
53      identity: "iCab"
54    },
55    {
56      string: navigator.vendor,
57      subString: "KDE",
58      identity: "Konqueror"
59    },
60    {
61      string: navigator.userAgent,
62      subString: "Firefox",
63      identity: "Firefox"
64    },
65    {
66      string: navigator.vendor,
67      subString: "Camino",
68      identity: "Camino"
69    },
70    {   // for newer Netscapes (6+)
71      string: navigator.userAgent,
72      subString: "Netscape",
73      identity: "Netscape"
74    },
75    {
76      string: navigator.userAgent,
77      subString: "MSIE",
78      identity: "Explorer",
79      versionSearch: "MSIE"
80    },
81    {
82      string: navigator.userAgent,
83      subString: "Gecko",
84      identity: "Mozilla",
85      versionSearch: "rv"
86    },
87    {     // for older Netscapes (4-)
88      string: navigator.userAgent,
89      subString: "Mozilla",
90      identity: "Netscape",
91      versionSearch: "Mozilla"
92    }
93  ],
94  dataOS : [
95    {
96      string: navigator.platform,
97      subString: "Win",
98      identity: "Windows"
99    },
100    {
101      string: navigator.platform,
102      subString: "Mac",
103      identity: "Mac"
104    },
105    {
106      string: navigator.platform,
107      subString: "Linux",
108      identity: "Linux"
109    }
110  ]
111
112};
113BrowserDetect.init();
114
115function focusOnFirstElement() {
116	document.forms['securityForm'].elements['j_username'].focus();
117}

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.