1
|
|
|
define([], function () { |
2
|
|
|
return { |
3
|
|
|
'reverseGeocodingApi': 'https://nominatim.openstreetmap.org/reverse', |
4
|
|
|
'maxAge': 14, |
5
|
|
|
'maxAgeAlert': 3, |
6
|
|
|
'nodeZoom': 18, |
7
|
|
|
'labelZoom': 13, |
8
|
|
|
'clientZoom': 15, |
9
|
|
|
'fullscreen': true, |
10
|
|
|
'fullscreenFrame': true, |
11
|
|
|
'nodeAttr': [ |
12
|
|
|
// value can be a node attribute (1 depth) or a a function in utils/node with prefix show |
13
|
|
|
{ |
14
|
|
|
'name': 'node.status', |
15
|
|
|
'value': 'Status' |
16
|
|
|
}, |
17
|
|
|
{ |
18
|
|
|
'name': 'node.gateway', |
19
|
|
|
'value': 'Gateway' |
20
|
|
|
}, |
21
|
|
|
{ |
22
|
|
|
'name': 'node.coordinates', |
23
|
|
|
'value': 'GeoURI' |
24
|
|
|
}, |
25
|
|
|
// { |
26
|
|
|
// "name": "node.contact", |
27
|
|
|
// "value": "owner" |
28
|
|
|
// }, |
29
|
|
|
|
30
|
|
|
// Examples for functions |
31
|
|
|
// { |
32
|
|
|
// // no name will remove first column |
33
|
|
|
// 'value': function (d) { |
34
|
|
|
// var moment = require('moment'); |
35
|
|
|
// var V = require('snabbdom').default; |
36
|
|
|
// return V.h('td', { props: { colSpan: 2 }, style: { background: '#49a' } }, |
37
|
|
|
// _.t('sidebar.nodeOnline') + ' translate, ' + moment(d.firstseen).get('month') + |
38
|
|
|
// ' Month require libs like moment, access config ' + config.siteName); |
39
|
|
|
// } |
40
|
|
|
// }, |
41
|
|
|
// { |
42
|
|
|
// 'name': 'Neighbour first seen', |
43
|
|
|
// 'value': function (d, nodeDict) { |
44
|
|
|
// return nodeDict[d.gateway_nexthop].firstseen.format() + 'access node object'; |
45
|
|
|
// } |
46
|
|
|
// }, |
47
|
|
|
{ |
48
|
|
|
'name': 'node.hardware', |
49
|
|
|
'value': 'model' |
50
|
|
|
}, |
51
|
|
|
{ |
52
|
|
|
'name': 'node.primaryMac', |
53
|
|
|
'value': 'mac' |
54
|
|
|
}, |
55
|
|
|
{ |
56
|
|
|
'name': 'node.firmware', |
57
|
|
|
'value': 'Firmware' |
58
|
|
|
}, |
59
|
|
|
{ |
60
|
|
|
'name': 'node.uptime', |
61
|
|
|
'value': 'Uptime' |
62
|
|
|
}, |
63
|
|
|
{ |
64
|
|
|
'name': 'node.firstSeen', |
65
|
|
|
'value': 'FirstSeen' |
66
|
|
|
}, |
67
|
|
|
{ |
68
|
|
|
'name': 'node.systemLoad', |
69
|
|
|
'value': 'Load' |
70
|
|
|
}, |
71
|
|
|
{ |
72
|
|
|
'name': 'node.ram', |
73
|
|
|
'value': 'RAM' |
74
|
|
|
}, |
75
|
|
|
{ |
76
|
|
|
'name': 'node.ipAddresses', |
77
|
|
|
'value': 'IPs' |
78
|
|
|
}, |
79
|
|
|
{ |
80
|
|
|
'name': 'node.update', |
81
|
|
|
'value': 'Autoupdate' |
82
|
|
|
}, |
83
|
|
|
{ |
84
|
|
|
'name': 'node.domain', |
85
|
|
|
'value': 'Domain' |
86
|
|
|
}, |
87
|
|
|
{ |
88
|
|
|
'name': 'node.clients', |
89
|
|
|
'value': 'Clients' |
90
|
|
|
} |
91
|
|
|
], |
92
|
|
|
'supportedLocale': [ |
93
|
|
|
'en', |
94
|
|
|
'de', |
95
|
|
|
'cz', |
96
|
|
|
'fr', |
97
|
|
|
'tr', |
98
|
|
|
'ru' |
99
|
|
|
], |
100
|
|
|
// Color configs |
101
|
|
|
'icon': { |
102
|
|
|
'base': { |
103
|
|
|
'fillOpacity': 0.6, |
104
|
|
|
'opacity': 0.6, |
105
|
|
|
'weight': 2, |
106
|
|
|
'radius': 6, |
107
|
|
|
'className': 'stroke-first' |
108
|
|
|
}, |
109
|
|
|
'online': { |
110
|
|
|
'color': '#1566A9', |
111
|
|
|
'fillColor': '#1566A9' |
112
|
|
|
}, |
113
|
|
|
'offline': { |
114
|
|
|
'color': '#D43E2A', |
115
|
|
|
'fillColor': '#D43E2A', |
116
|
|
|
'radius': 3 |
117
|
|
|
}, |
118
|
|
|
'lost': { |
119
|
|
|
'color': '#D43E2A', |
120
|
|
|
'fillColor': '#D43E2A', |
121
|
|
|
'radius': 4 |
122
|
|
|
}, |
123
|
|
|
'alert': { |
124
|
|
|
'color': '#D43E2A', |
125
|
|
|
'fillColor': '#D43E2A', |
126
|
|
|
'radius': 5 |
127
|
|
|
}, |
128
|
|
|
'new': { |
129
|
|
|
'color': '#1566A9', |
130
|
|
|
'fillColor': '#93E929' |
131
|
|
|
} |
132
|
|
|
}, |
133
|
|
|
'client': { |
134
|
|
|
'wifi24': 'rgba(220, 0, 103, 0.7)', |
135
|
|
|
'wifi5': 'rgba(10, 156, 146, 0.7)', |
136
|
|
|
'other': 'rgba(227, 166, 25, 0.7)' |
137
|
|
|
}, |
138
|
|
|
'map': { |
139
|
|
|
'labelNewColor': '#459c18', |
140
|
|
|
'tqFrom': '#F02311', |
141
|
|
|
'tqTo': '#04C714', |
142
|
|
|
'highlightNode': { |
143
|
|
|
'color': '#ad2358', |
144
|
|
|
'weight': 8, |
145
|
|
|
'fillOpacity': 1, |
146
|
|
|
'opacity': 0.4, |
147
|
|
|
'className': 'stroke-first' |
148
|
|
|
}, |
149
|
|
|
'highlightLink': { |
150
|
|
|
'weight': 4, |
151
|
|
|
'opacity': 1, |
152
|
|
|
'dashArray': '5, 10' |
153
|
|
|
} |
154
|
|
|
}, |
155
|
|
|
'forceGraph': { |
156
|
|
|
'nodeColor': '#fff', |
157
|
|
|
'nodeOfflineColor': '#D43E2A', |
158
|
|
|
'highlightColor': 'rgba(255, 255, 255, 0.2)', |
159
|
|
|
'labelColor': '#fff', |
160
|
|
|
'tqFrom': '#770038', |
161
|
|
|
'tqTo': '#dc0067', |
162
|
|
|
'zoomModifier': 1 |
163
|
|
|
}, |
164
|
|
|
'locate': { |
165
|
|
|
'outerCircle': { |
166
|
|
|
'stroke': false, |
167
|
|
|
'color': '#4285F4', |
168
|
|
|
'opacity': 1, |
169
|
|
|
'fillOpacity': 0.3, |
170
|
|
|
'clickable': false, |
171
|
|
|
'radius': 16 |
172
|
|
|
}, |
173
|
|
|
'innerCircle': { |
174
|
|
|
'stroke:': true, |
175
|
|
|
'color': '#ffffff', |
176
|
|
|
'fillColor': '#4285F4', |
177
|
|
|
'weight': 1.5, |
178
|
|
|
'clickable': false, |
179
|
|
|
'opacity': 1, |
180
|
|
|
'fillOpacity': 1, |
181
|
|
|
'radius': 7 |
182
|
|
|
}, |
183
|
|
|
'accuracyCircle': { |
184
|
|
|
'stroke': true, |
185
|
|
|
'color': '#4285F4', |
186
|
|
|
'weight': 1, |
187
|
|
|
'clickable': false, |
188
|
|
|
'opacity': 0.7, |
189
|
|
|
'fillOpacity': 0.2 |
190
|
|
|
} |
191
|
|
|
}, |
192
|
|
|
'deprecated': ['TP-Link TL-WR740N/ND v1', |
193
|
|
|
'AP121', 'AP121U', 'D-Link DIR-615', 'D-Link DIR-615 D', |
194
|
|
|
'AVM FRITZ!Box 7320', 'AVM FRITZ!Box 7330', 'AVM FRITZ!Box 7330 SL', |
195
|
|
|
'TP-Link TL-MR13U v1', 'TP-Link TL-MR3020 v1', 'TP-Link TL-MR3040 v1', 'TP-Link TL-MR3040 v2', |
196
|
|
|
'TP-Link TL-MR3220 v1', 'TP-Link TL-MR3220 v2', 'TP-Link TL-MR3420 v1', 'TP-Link TL-MR3420 v2', |
197
|
|
|
'TP-Link TL-WA701N/ND v1', 'TP-Link TL-WA701N/ND v2', 'TP-Link TL-WA730RE v1', 'TP-Link TL-WA750RE v1', |
198
|
|
|
'TP-Link TL-WA801N/ND v1', 'TP-Link TL-WA801N/ND v2', 'TP-Link TL-WA801N/ND v3', |
199
|
|
|
'TP-Link TL-WA830RE v1', 'TP-Link TL-WA830RE v2', 'TP-Link TL-WA850RE v1', 'TP-Link TL-WA860RE v1', |
200
|
|
|
'TP-Link TL-WA901N/ND v1', 'TP-Link TL-WA901N/ND v2', 'TP-Link TL-WA901N/ND v3', 'TP-Link TL-WA901N/ND v4', 'TP-Link TL-WA901N/ND v5', |
201
|
|
|
'TP-Link TL-WA7210N v2', 'TP-Link TL-WA7510N v1', 'TP-Link TL-WR703N v1', 'TP-Link TL-WR710N v2', |
202
|
|
|
'TP-Link TL-WR740N/ND v1', 'TP-Link TL-WR740N/ND v3', 'TP-Link TL-WR740N/ND v4', 'TP-Link TL-WR740N/ND v5', |
203
|
|
|
'TP-Link TL-WR741N/ND v1', 'TP-Link TL-WR741N/ND v3', 'TP-Link TL-WR741N/ND v4', 'TP-Link TL-WR741N/ND v5', |
204
|
|
|
'TP-Link TL-WR743N/ND v1', 'TP-Link TL-WR743N/ND v2', |
205
|
|
|
'TP-Link TL-WR840N v2', |
206
|
|
|
'TP-Link TL-WR841N/ND v3', 'TP-Link TL-WR841N/ND v5', 'TP-Link TL-WR841N/ND v7', 'TP-Link TL-WR841N/ND v8', 'TP-Link TL-WR841N/ND v9', 'TP-Link TL-WR841N/ND v10', 'TP-Link TL-WR841N/ND v11', 'TP-Link TL-WR841N/ND v12', |
207
|
|
|
'TP-Link TL-WR841N/ND Mod (16M) v11', 'TP-Link TL-WR841N/ND Mod (16M) v10', 'TP-Link TL-WR841N/ND Mod (16M) v8', 'TP-Link TL-WR841N/ND Mod (16M) v9', 'TP-Link TL-WR841N/ND Mod (8M) v10', |
208
|
|
|
'TP-Link TL-WR842N/ND v1', 'TP-Link TL-WR842N/ND v2', |
209
|
|
|
'TP-Link TL-WR843N/ND v1', |
210
|
|
|
'TP-Link TL-WR940N v1', 'TP-Link TL-WR940N v2', 'TP-Link TL-WR940N v3', 'TP-Link TL-WR940N v4', 'TP-Link TL-WR940N v5', 'TP-Link TL-WR940N v6', |
211
|
|
|
'TP-Link TL-WR941N/ND v2', 'TP-Link TL-WR941N/ND v3', 'TP-Link TL-WR941N/ND v4', 'TP-Link TL-WR941N/ND v5', 'TP-Link TL-WR941N/ND v6', |
212
|
|
|
'TP-Link TL-WR1043N/ND v1', |
213
|
|
|
'A5-V11', 'D-Link DIR-615 D1', 'D-Link DIR-615 D2', 'D-Link DIR-615 D3', 'D-Link DIR-615 D4', 'D-Link DIR-615 H1', |
214
|
|
|
'VoCore 8M', 'VoCore 16M'] |
215
|
|
|
}; |
216
|
|
|
}); |
217
|
|
|
|