1 | 'use strict';
|
2 | var fs = require('fs');
|
3 |
|
4 | var botlist = require('./botlist.json');
|
5 |
|
6 | var custombotlist = require('./customBotlist.json');
|
7 |
|
8 | var ua_list = {};
|
9 | var exports = module.exports = {};
|
10 |
|
11 | var printList = function() {
|
12 | console.log(ua_list);
|
13 | }
|
14 | exports.printList = printList;
|
15 |
|
16 | var uaCount = function(callback) {
|
17 | callback(Object.keys(ua_list).length);
|
18 | }
|
19 | exports.uaCount = uaCount;
|
20 |
|
21 | var isBot = function(ua_string) {
|
22 | if (ua_list[ua_string]) {
|
23 | return true;
|
24 | }
|
25 | return false;
|
26 | }
|
27 | exports.isBot = isBot;
|
28 |
|
29 | var loadBotList = function(callback) {
|
30 | ua_list = botlist;
|
31 | for (var attrname in custombotlist) {
|
32 | ua_list[attrname] = custombotlist[attrname];
|
33 | }
|
34 | callback(null);
|
35 | }
|
36 |
|
37 | exports.loadBotList = loadBotList;
|
38 |
|
39 | loadBotList(function() {
|
40 | uaCount(function(count) {
|
41 | if (count === 0) {
|
42 | console.log("WARNING: No bot list loaded. Bot list count is 0");
|
43 | } else {
|
44 | console.log("Bot detector loaded. Bot list count: " + count);
|
45 | }
|
46 | });
|
47 | });
|