48e5a95e9f4e4a496fcfa498f3d607564c0e9c70
[project/luci.git] / docs / jsapi / rpc.js.html
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <meta charset="utf-8">
5 <title>Source: rpc.js</title>
6
7
8 <script src="scripts/prettify/prettify.js"></script>
9 <script src="scripts/prettify/lang-css.js"></script>
10 <script src="scripts/jquery.min.js"></script>
11 <!--[if lt IE 9]>
12 <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
13 <![endif]-->
14 <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
15 <link type="text/css" rel="stylesheet" href="styles/bootstrap.min.css">
16 <link type="text/css" rel="stylesheet" href="styles/jaguar.css">
17
18
19 <script>
20 var config = {"monospaceLinks":true,"cleverLinks":true,"default":{"outputSourceFiles":true}};
21 </script>
22
23
24
25 </head>
26 <body>
27 <div id="wrap" class="clearfix">
28
29 <div class="navigation">
30 <h3 class="applicationName"><a href="index.html"></a></h3>
31
32 <div class="search">
33 <input id="search" type="text" class="form-control input-sm" placeholder="Search Documentations">
34 </div>
35 <ul class="list">
36
37 <li class="item" data-name="LuCI">
38 <span class="title">
39 <a href="LuCI.html">LuCI</a>
40
41 </span>
42 <ul class="members itemMembers">
43
44 <span class="subtitle">Members</span>
45
46 <li data-name="LuCI#Class"><a href="LuCI.html#Class">Class</a></li>
47
48 <li data-name="LuCI#dom"><a href="LuCI.html#dom">dom</a></li>
49
50 <li data-name="LuCI#env"><a href="LuCI.html#env">env</a></li>
51
52 <li data-name="LuCI#Poll"><a href="LuCI.html#Poll">Poll</a></li>
53
54 <li data-name="LuCI#Request"><a href="LuCI.html#Request">Request</a></li>
55
56 <li data-name="LuCI#view"><a href="LuCI.html#view">view</a></li>
57
58 </ul>
59 <ul class="typedefs itemMembers">
60
61 <span class="subtitle">Typedefs</span>
62
63 <li data-name="LuCI.requestCallbackFn"><a href="LuCI.html#.requestCallbackFn">requestCallbackFn</a></li>
64
65 </ul>
66 <ul class="typedefs itemMembers">
67
68 </ul>
69 <ul class="methods itemMembers">
70
71 <span class="subtitle">Methods</span>
72
73 <li data-name="LuCI#bind"><a href="LuCI.html#bind">bind</a></li>
74
75 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
76
77 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
78
79 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
80
81 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
82
83 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
84
85 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
86
87 <li data-name="LuCI#media"><a href="LuCI.html#media">media</a></li>
88
89 <li data-name="LuCI#path"><a href="LuCI.html#path">path</a></li>
90
91 <li data-name="LuCI#poll"><a href="LuCI.html#poll">poll</a></li>
92
93 <li data-name="LuCI#post"><a href="LuCI.html#post">post</a></li>
94
95 <li data-name="LuCI#raise"><a href="LuCI.html#raise">raise</a></li>
96
97 <li data-name="LuCI#require"><a href="LuCI.html#require">require</a></li>
98
99 <li data-name="LuCI#resolveDefault"><a href="LuCI.html#resolveDefault">resolveDefault</a></li>
100
101 <li data-name="LuCI#resource"><a href="LuCI.html#resource">resource</a></li>
102
103 <li data-name="LuCI#run"><a href="LuCI.html#run">run</a></li>
104
105 <li data-name="LuCI#sortedKeys"><a href="LuCI.html#sortedKeys">sortedKeys</a></li>
106
107 <li data-name="LuCI#stop"><a href="LuCI.html#stop">stop</a></li>
108
109 <li data-name="LuCI#toArray"><a href="LuCI.html#toArray">toArray</a></li>
110
111 <li data-name="LuCI#url"><a href="LuCI.html#url">url</a></li>
112
113 </ul>
114 <ul class="events itemMembers">
115
116 </ul>
117 </li>
118
119 <li class="item" data-name="LuCI.baseclass">
120 <span class="title">
121 <a href="LuCI.baseclass.html">LuCI.baseclass</a>
122
123 </span>
124 <ul class="members itemMembers">
125
126 </ul>
127 <ul class="typedefs itemMembers">
128
129 </ul>
130 <ul class="typedefs itemMembers">
131
132 </ul>
133 <ul class="methods itemMembers">
134
135 <span class="subtitle">Methods</span>
136
137 <li data-name="LuCI.baseclass.extend"><a href="LuCI.baseclass.html#.extend">extend</a></li>
138
139 <li data-name="LuCI.baseclass.instantiate"><a href="LuCI.baseclass.html#.instantiate">instantiate</a></li>
140
141 <li data-name="LuCI.baseclass.isSubclass"><a href="LuCI.baseclass.html#.isSubclass">isSubclass</a></li>
142
143 <li data-name="LuCI.baseclass.singleton"><a href="LuCI.baseclass.html#.singleton">singleton</a></li>
144
145 <li data-name="LuCI.baseclass#super"><a href="LuCI.baseclass.html#super">super</a></li>
146
147 <li data-name="LuCI.baseclass#varargs"><a href="LuCI.baseclass.html#varargs">varargs</a></li>
148
149 </ul>
150 <ul class="events itemMembers">
151
152 </ul>
153 </li>
154
155 <li class="item" data-name="LuCI.dom">
156 <span class="title">
157 <a href="LuCI.dom.html">LuCI.dom</a>
158
159 </span>
160 <ul class="members itemMembers">
161
162 </ul>
163 <ul class="typedefs itemMembers">
164
165 <span class="subtitle">Typedefs</span>
166
167 <li data-name="LuCI.dom~ignoreCallbackFn"><a href="LuCI.dom.html#~ignoreCallbackFn">ignoreCallbackFn</a></li>
168
169 </ul>
170 <ul class="typedefs itemMembers">
171
172 </ul>
173 <ul class="methods itemMembers">
174
175 <span class="subtitle">Methods</span>
176
177 <li data-name="LuCI.dom#append"><a href="LuCI.dom.html#append">append</a></li>
178
179 <li data-name="LuCI.dom#attr"><a href="LuCI.dom.html#attr">attr</a></li>
180
181 <li data-name="LuCI.dom#bindClassInstance"><a href="LuCI.dom.html#bindClassInstance">bindClassInstance</a></li>
182
183 <li data-name="LuCI.dom#callClassMethod"><a href="LuCI.dom.html#callClassMethod">callClassMethod</a></li>
184
185 <li data-name="LuCI.dom#content"><a href="LuCI.dom.html#content">content</a></li>
186
187 <li data-name="LuCI.dom#create"><a href="LuCI.dom.html#create">create</a></li>
188
189 <li data-name="LuCI.dom#data"><a href="LuCI.dom.html#data">data</a></li>
190
191 <li data-name="LuCI.dom#elem"><a href="LuCI.dom.html#elem">elem</a></li>
192
193 <li data-name="LuCI.dom#findClassInstance"><a href="LuCI.dom.html#findClassInstance">findClassInstance</a></li>
194
195 <li data-name="LuCI.dom#isEmpty"><a href="LuCI.dom.html#isEmpty">isEmpty</a></li>
196
197 <li data-name="LuCI.dom#matches"><a href="LuCI.dom.html#matches">matches</a></li>
198
199 <li data-name="LuCI.dom#parent"><a href="LuCI.dom.html#parent">parent</a></li>
200
201 <li data-name="LuCI.dom#parse"><a href="LuCI.dom.html#parse">parse</a></li>
202
203 </ul>
204 <ul class="events itemMembers">
205
206 </ul>
207 </li>
208
209 <li class="item" data-name="LuCI.fs">
210 <span class="title">
211 <a href="LuCI.fs.html">LuCI.fs</a>
212
213 </span>
214 <ul class="members itemMembers">
215
216 </ul>
217 <ul class="typedefs itemMembers">
218
219 <span class="subtitle">Typedefs</span>
220
221 <li data-name="LuCI.fs.FileExecResult"><a href="LuCI.fs.html#.FileExecResult">FileExecResult</a></li>
222
223 <li data-name="LuCI.fs.FileStatEntry"><a href="LuCI.fs.html#.FileStatEntry">FileStatEntry</a></li>
224
225 </ul>
226 <ul class="typedefs itemMembers">
227
228 </ul>
229 <ul class="methods itemMembers">
230
231 <span class="subtitle">Methods</span>
232
233 <li data-name="LuCI.fs#exec"><a href="LuCI.fs.html#exec">exec</a></li>
234
235 <li data-name="LuCI.fs#exec_direct"><a href="LuCI.fs.html#exec_direct">exec_direct</a></li>
236
237 <li data-name="LuCI.fs#lines"><a href="LuCI.fs.html#lines">lines</a></li>
238
239 <li data-name="LuCI.fs#list"><a href="LuCI.fs.html#list">list</a></li>
240
241 <li data-name="LuCI.fs#read"><a href="LuCI.fs.html#read">read</a></li>
242
243 <li data-name="LuCI.fs#read_direct"><a href="LuCI.fs.html#read_direct">read_direct</a></li>
244
245 <li data-name="LuCI.fs#remove"><a href="LuCI.fs.html#remove">remove</a></li>
246
247 <li data-name="LuCI.fs#stat"><a href="LuCI.fs.html#stat">stat</a></li>
248
249 <li data-name="LuCI.fs#trimmed"><a href="LuCI.fs.html#trimmed">trimmed</a></li>
250
251 <li data-name="LuCI.fs#write"><a href="LuCI.fs.html#write">write</a></li>
252
253 </ul>
254 <ul class="events itemMembers">
255
256 </ul>
257 </li>
258
259 <li class="item" data-name="LuCI.headers">
260 <span class="title">
261 <a href="LuCI.headers.html">LuCI.headers</a>
262
263 </span>
264 <ul class="members itemMembers">
265
266 </ul>
267 <ul class="typedefs itemMembers">
268
269 </ul>
270 <ul class="typedefs itemMembers">
271
272 </ul>
273 <ul class="methods itemMembers">
274
275 <span class="subtitle">Methods</span>
276
277 <li data-name="LuCI.headers#get"><a href="LuCI.headers.html#get">get</a></li>
278
279 <li data-name="LuCI.headers#has"><a href="LuCI.headers.html#has">has</a></li>
280
281 </ul>
282 <ul class="events itemMembers">
283
284 </ul>
285 </li>
286
287 <li class="item" data-name="LuCI.network">
288 <span class="title">
289 <a href="LuCI.network.html">LuCI.network</a>
290
291 </span>
292 <ul class="members itemMembers">
293
294 </ul>
295 <ul class="typedefs itemMembers">
296
297 <span class="subtitle">Typedefs</span>
298
299 <li data-name="LuCI.network.SwitchTopology"><a href="LuCI.network.html#.SwitchTopology">SwitchTopology</a></li>
300
301 <li data-name="LuCI.network.WifiEncryption"><a href="LuCI.network.html#.WifiEncryption">WifiEncryption</a></li>
302
303 <li data-name="LuCI.network.WifiPeerEntry"><a href="LuCI.network.html#.WifiPeerEntry">WifiPeerEntry</a></li>
304
305 <li data-name="LuCI.network.WifiRateEntry"><a href="LuCI.network.html#.WifiRateEntry">WifiRateEntry</a></li>
306
307 <li data-name="LuCI.network.WifiScanResult"><a href="LuCI.network.html#.WifiScanResult">WifiScanResult</a></li>
308
309 </ul>
310 <ul class="typedefs itemMembers">
311
312 </ul>
313 <ul class="methods itemMembers">
314
315 <span class="subtitle">Methods</span>
316
317 <li data-name="LuCI.network#addNetwork"><a href="LuCI.network.html#addNetwork">addNetwork</a></li>
318
319 <li data-name="LuCI.network#addWifiNetwork"><a href="LuCI.network.html#addWifiNetwork">addWifiNetwork</a></li>
320
321 <li data-name="LuCI.network#deleteNetwork"><a href="LuCI.network.html#deleteNetwork">deleteNetwork</a></li>
322
323 <li data-name="LuCI.network#deleteWifiNetwork"><a href="LuCI.network.html#deleteWifiNetwork">deleteWifiNetwork</a></li>
324
325 <li data-name="LuCI.network#flushCache"><a href="LuCI.network.html#flushCache">flushCache</a></li>
326
327 <li data-name="LuCI.network#formatWifiEncryption"><a href="LuCI.network.html#formatWifiEncryption">formatWifiEncryption</a></li>
328
329 <li data-name="LuCI.network#getDevice"><a href="LuCI.network.html#getDevice">getDevice</a></li>
330
331 <li data-name="LuCI.network#getDevices"><a href="LuCI.network.html#getDevices">getDevices</a></li>
332
333 <li data-name="LuCI.network#getDSLModemType"><a href="LuCI.network.html#getDSLModemType">getDSLModemType</a></li>
334
335 <li data-name="LuCI.network#getHostHints"><a href="LuCI.network.html#getHostHints">getHostHints</a></li>
336
337 <li data-name="LuCI.network#getIfnameOf"><a href="LuCI.network.html#getIfnameOf">getIfnameOf</a></li>
338
339 <li data-name="LuCI.network#getNetwork"><a href="LuCI.network.html#getNetwork">getNetwork</a></li>
340
341 <li data-name="LuCI.network#getNetworks"><a href="LuCI.network.html#getNetworks">getNetworks</a></li>
342
343 <li data-name="LuCI.network#getProtocol"><a href="LuCI.network.html#getProtocol">getProtocol</a></li>
344
345 <li data-name="LuCI.network#getProtocols"><a href="LuCI.network.html#getProtocols">getProtocols</a></li>
346
347 <li data-name="LuCI.network#getSwitchTopologies"><a href="LuCI.network.html#getSwitchTopologies">getSwitchTopologies</a></li>
348
349 <li data-name="LuCI.network#getWAN6Networks"><a href="LuCI.network.html#getWAN6Networks">getWAN6Networks</a></li>
350
351 <li data-name="LuCI.network#getWANNetworks"><a href="LuCI.network.html#getWANNetworks">getWANNetworks</a></li>
352
353 <li data-name="LuCI.network#getWifiDevice"><a href="LuCI.network.html#getWifiDevice">getWifiDevice</a></li>
354
355 <li data-name="LuCI.network#getWifiDevices"><a href="LuCI.network.html#getWifiDevices">getWifiDevices</a></li>
356
357 <li data-name="LuCI.network#getWifiNetwork"><a href="LuCI.network.html#getWifiNetwork">getWifiNetwork</a></li>
358
359 <li data-name="LuCI.network#getWifiNetworks"><a href="LuCI.network.html#getWifiNetworks">getWifiNetworks</a></li>
360
361 <li data-name="LuCI.network#isIgnoredDevice"><a href="LuCI.network.html#isIgnoredDevice">isIgnoredDevice</a></li>
362
363 <li data-name="LuCI.network#maskToPrefix"><a href="LuCI.network.html#maskToPrefix">maskToPrefix</a></li>
364
365 <li data-name="LuCI.network#prefixToMask"><a href="LuCI.network.html#prefixToMask">prefixToMask</a></li>
366
367 <li data-name="LuCI.network#registerErrorCode"><a href="LuCI.network.html#registerErrorCode">registerErrorCode</a></li>
368
369 <li data-name="LuCI.network#registerPatternVirtual"><a href="LuCI.network.html#registerPatternVirtual">registerPatternVirtual</a></li>
370
371 <li data-name="LuCI.network#registerProtocol"><a href="LuCI.network.html#registerProtocol">registerProtocol</a></li>
372
373 <li data-name="LuCI.network#renameNetwork"><a href="LuCI.network.html#renameNetwork">renameNetwork</a></li>
374
375 </ul>
376 <ul class="events itemMembers">
377
378 </ul>
379 </li>
380
381 <li class="item" data-name="LuCI.network.Device">
382 <span class="title">
383 <a href="LuCI.network.Device.html">LuCI.network.Device</a>
384
385 </span>
386 <ul class="members itemMembers">
387
388 </ul>
389 <ul class="typedefs itemMembers">
390
391 </ul>
392 <ul class="typedefs itemMembers">
393
394 </ul>
395 <ul class="methods itemMembers">
396
397 <span class="subtitle">Methods</span>
398
399 <li data-name="LuCI.network.Device#getBridgeID"><a href="LuCI.network.Device.html#getBridgeID">getBridgeID</a></li>
400
401 <li data-name="LuCI.network.Device#getBridgeSTP"><a href="LuCI.network.Device.html#getBridgeSTP">getBridgeSTP</a></li>
402
403 <li data-name="LuCI.network.Device#getI18n"><a href="LuCI.network.Device.html#getI18n">getI18n</a></li>
404
405 <li data-name="LuCI.network.Device#getIP6Addrs"><a href="LuCI.network.Device.html#getIP6Addrs">getIP6Addrs</a></li>
406
407 <li data-name="LuCI.network.Device#getIPAddrs"><a href="LuCI.network.Device.html#getIPAddrs">getIPAddrs</a></li>
408
409 <li data-name="LuCI.network.Device#getMAC"><a href="LuCI.network.Device.html#getMAC">getMAC</a></li>
410
411 <li data-name="LuCI.network.Device#getMTU"><a href="LuCI.network.Device.html#getMTU">getMTU</a></li>
412
413 <li data-name="LuCI.network.Device#getName"><a href="LuCI.network.Device.html#getName">getName</a></li>
414
415 <li data-name="LuCI.network.Device#getNetwork"><a href="LuCI.network.Device.html#getNetwork">getNetwork</a></li>
416
417 <li data-name="LuCI.network.Device#getNetworks"><a href="LuCI.network.Device.html#getNetworks">getNetworks</a></li>
418
419 <li data-name="LuCI.network.Device#getPorts"><a href="LuCI.network.Device.html#getPorts">getPorts</a></li>
420
421 <li data-name="LuCI.network.Device#getRXBytes"><a href="LuCI.network.Device.html#getRXBytes">getRXBytes</a></li>
422
423 <li data-name="LuCI.network.Device#getRXPackets"><a href="LuCI.network.Device.html#getRXPackets">getRXPackets</a></li>
424
425 <li data-name="LuCI.network.Device#getShortName"><a href="LuCI.network.Device.html#getShortName">getShortName</a></li>
426
427 <li data-name="LuCI.network.Device#getTXBytes"><a href="LuCI.network.Device.html#getTXBytes">getTXBytes</a></li>
428
429 <li data-name="LuCI.network.Device#getTXPackets"><a href="LuCI.network.Device.html#getTXPackets">getTXPackets</a></li>
430
431 <li data-name="LuCI.network.Device#getType"><a href="LuCI.network.Device.html#getType">getType</a></li>
432
433 <li data-name="LuCI.network.Device#getTypeI18n"><a href="LuCI.network.Device.html#getTypeI18n">getTypeI18n</a></li>
434
435 <li data-name="LuCI.network.Device#getWifiNetwork"><a href="LuCI.network.Device.html#getWifiNetwork">getWifiNetwork</a></li>
436
437 <li data-name="LuCI.network.Device#isBridge"><a href="LuCI.network.Device.html#isBridge">isBridge</a></li>
438
439 <li data-name="LuCI.network.Device#isBridgePort"><a href="LuCI.network.Device.html#isBridgePort">isBridgePort</a></li>
440
441 <li data-name="LuCI.network.Device#isUp"><a href="LuCI.network.Device.html#isUp">isUp</a></li>
442
443 </ul>
444 <ul class="events itemMembers">
445
446 </ul>
447 </li>
448
449 <li class="item" data-name="LuCI.network.Hosts">
450 <span class="title">
451 <a href="LuCI.network.Hosts.html">LuCI.network.Hosts</a>
452
453 </span>
454 <ul class="members itemMembers">
455
456 </ul>
457 <ul class="typedefs itemMembers">
458
459 </ul>
460 <ul class="typedefs itemMembers">
461
462 </ul>
463 <ul class="methods itemMembers">
464
465 <span class="subtitle">Methods</span>
466
467 <li data-name="LuCI.network.Hosts#getHostnameByIP6Addr"><a href="LuCI.network.Hosts.html#getHostnameByIP6Addr">getHostnameByIP6Addr</a></li>
468
469 <li data-name="LuCI.network.Hosts#getHostnameByIPAddr"><a href="LuCI.network.Hosts.html#getHostnameByIPAddr">getHostnameByIPAddr</a></li>
470
471 <li data-name="LuCI.network.Hosts#getHostnameByMACAddr"><a href="LuCI.network.Hosts.html#getHostnameByMACAddr">getHostnameByMACAddr</a></li>
472
473 <li data-name="LuCI.network.Hosts#getIP6AddrByMACAddr"><a href="LuCI.network.Hosts.html#getIP6AddrByMACAddr">getIP6AddrByMACAddr</a></li>
474
475 <li data-name="LuCI.network.Hosts#getIPAddrByMACAddr"><a href="LuCI.network.Hosts.html#getIPAddrByMACAddr">getIPAddrByMACAddr</a></li>
476
477 <li data-name="LuCI.network.Hosts#getMACAddrByIP6Addr"><a href="LuCI.network.Hosts.html#getMACAddrByIP6Addr">getMACAddrByIP6Addr</a></li>
478
479 <li data-name="LuCI.network.Hosts#getMACAddrByIPAddr"><a href="LuCI.network.Hosts.html#getMACAddrByIPAddr">getMACAddrByIPAddr</a></li>
480
481 <li data-name="LuCI.network.Hosts#getMACHints"><a href="LuCI.network.Hosts.html#getMACHints">getMACHints</a></li>
482
483 </ul>
484 <ul class="events itemMembers">
485
486 </ul>
487 </li>
488
489 <li class="item" data-name="LuCI.network.Protocol">
490 <span class="title">
491 <a href="LuCI.network.Protocol.html">LuCI.network.Protocol</a>
492
493 </span>
494 <ul class="members itemMembers">
495
496 </ul>
497 <ul class="typedefs itemMembers">
498
499 </ul>
500 <ul class="typedefs itemMembers">
501
502 </ul>
503 <ul class="methods itemMembers">
504
505 <span class="subtitle">Methods</span>
506
507 <li data-name="LuCI.network.Protocol#addDevice"><a href="LuCI.network.Protocol.html#addDevice">addDevice</a></li>
508
509 <li data-name="LuCI.network.Protocol#containsDevice"><a href="LuCI.network.Protocol.html#containsDevice">containsDevice</a></li>
510
511 <li data-name="LuCI.network.Protocol#deleteConfiguration"><a href="LuCI.network.Protocol.html#deleteConfiguration">deleteConfiguration</a></li>
512
513 <li data-name="LuCI.network.Protocol#deleteDevice"><a href="LuCI.network.Protocol.html#deleteDevice">deleteDevice</a></li>
514
515 <li data-name="LuCI.network.Protocol#get"><a href="LuCI.network.Protocol.html#get">get</a></li>
516
517 <li data-name="LuCI.network.Protocol#getDevice"><a href="LuCI.network.Protocol.html#getDevice">getDevice</a></li>
518
519 <li data-name="LuCI.network.Protocol#getDevices"><a href="LuCI.network.Protocol.html#getDevices">getDevices</a></li>
520
521 <li data-name="LuCI.network.Protocol#getDNS6Addrs"><a href="LuCI.network.Protocol.html#getDNS6Addrs">getDNS6Addrs</a></li>
522
523 <li data-name="LuCI.network.Protocol#getDNSAddrs"><a href="LuCI.network.Protocol.html#getDNSAddrs">getDNSAddrs</a></li>
524
525 <li data-name="LuCI.network.Protocol#getErrors"><a href="LuCI.network.Protocol.html#getErrors">getErrors</a></li>
526
527 <li data-name="LuCI.network.Protocol#getExpiry"><a href="LuCI.network.Protocol.html#getExpiry">getExpiry</a></li>
528
529 <li data-name="LuCI.network.Protocol#getGateway6Addr"><a href="LuCI.network.Protocol.html#getGateway6Addr">getGateway6Addr</a></li>
530
531 <li data-name="LuCI.network.Protocol#getGatewayAddr"><a href="LuCI.network.Protocol.html#getGatewayAddr">getGatewayAddr</a></li>
532
533 <li data-name="LuCI.network.Protocol#getI18n"><a href="LuCI.network.Protocol.html#getI18n">getI18n</a></li>
534
535 <li data-name="LuCI.network.Protocol#getIfname"><a href="LuCI.network.Protocol.html#getIfname">getIfname</a></li>
536
537 <li data-name="LuCI.network.Protocol#getIP6Addr"><a href="LuCI.network.Protocol.html#getIP6Addr">getIP6Addr</a></li>
538
539 <li data-name="LuCI.network.Protocol#getIP6Addrs"><a href="LuCI.network.Protocol.html#getIP6Addrs">getIP6Addrs</a></li>
540
541 <li data-name="LuCI.network.Protocol#getIP6Prefix"><a href="LuCI.network.Protocol.html#getIP6Prefix">getIP6Prefix</a></li>
542
543 <li data-name="LuCI.network.Protocol#getIPAddr"><a href="LuCI.network.Protocol.html#getIPAddr">getIPAddr</a></li>
544
545 <li data-name="LuCI.network.Protocol#getIPAddrs"><a href="LuCI.network.Protocol.html#getIPAddrs">getIPAddrs</a></li>
546
547 <li data-name="LuCI.network.Protocol#getL2Device"><a href="LuCI.network.Protocol.html#getL2Device">getL2Device</a></li>
548
549 <li data-name="LuCI.network.Protocol#getL3Device"><a href="LuCI.network.Protocol.html#getL3Device">getL3Device</a></li>
550
551 <li data-name="LuCI.network.Protocol#getMetric"><a href="LuCI.network.Protocol.html#getMetric">getMetric</a></li>
552
553 <li data-name="LuCI.network.Protocol#getName"><a href="LuCI.network.Protocol.html#getName">getName</a></li>
554
555 <li data-name="LuCI.network.Protocol#getNetmask"><a href="LuCI.network.Protocol.html#getNetmask">getNetmask</a></li>
556
557 <li data-name="LuCI.network.Protocol#getOpkgPackage"><a href="LuCI.network.Protocol.html#getOpkgPackage">getOpkgPackage</a></li>
558
559 <li data-name="LuCI.network.Protocol#getProtocol"><a href="LuCI.network.Protocol.html#getProtocol">getProtocol</a></li>
560
561 <li data-name="LuCI.network.Protocol#getType"><a href="LuCI.network.Protocol.html#getType">getType</a></li>
562
563 <li data-name="LuCI.network.Protocol#getUptime"><a href="LuCI.network.Protocol.html#getUptime">getUptime</a></li>
564
565 <li data-name="LuCI.network.Protocol#getZoneName"><a href="LuCI.network.Protocol.html#getZoneName">getZoneName</a></li>
566
567 <li data-name="LuCI.network.Protocol#isAlias"><a href="LuCI.network.Protocol.html#isAlias">isAlias</a></li>
568
569 <li data-name="LuCI.network.Protocol#isBridge"><a href="LuCI.network.Protocol.html#isBridge">isBridge</a></li>
570
571 <li data-name="LuCI.network.Protocol#isDynamic"><a href="LuCI.network.Protocol.html#isDynamic">isDynamic</a></li>
572
573 <li data-name="LuCI.network.Protocol#isEmpty"><a href="LuCI.network.Protocol.html#isEmpty">isEmpty</a></li>
574
575 <li data-name="LuCI.network.Protocol#isFloating"><a href="LuCI.network.Protocol.html#isFloating">isFloating</a></li>
576
577 <li data-name="LuCI.network.Protocol#isInstalled"><a href="LuCI.network.Protocol.html#isInstalled">isInstalled</a></li>
578
579 <li data-name="LuCI.network.Protocol#isUp"><a href="LuCI.network.Protocol.html#isUp">isUp</a></li>
580
581 <li data-name="LuCI.network.Protocol#isVirtual"><a href="LuCI.network.Protocol.html#isVirtual">isVirtual</a></li>
582
583 <li data-name="LuCI.network.Protocol#set"><a href="LuCI.network.Protocol.html#set">set</a></li>
584
585 </ul>
586 <ul class="events itemMembers">
587
588 </ul>
589 </li>
590
591 <li class="item" data-name="LuCI.network.WifiDevice">
592 <span class="title">
593 <a href="LuCI.network.WifiDevice.html">LuCI.network.WifiDevice</a>
594
595 </span>
596 <ul class="members itemMembers">
597
598 </ul>
599 <ul class="typedefs itemMembers">
600
601 </ul>
602 <ul class="typedefs itemMembers">
603
604 </ul>
605 <ul class="methods itemMembers">
606
607 <span class="subtitle">Methods</span>
608
609 <li data-name="LuCI.network.WifiDevice#addWifiNetwork"><a href="LuCI.network.WifiDevice.html#addWifiNetwork">addWifiNetwork</a></li>
610
611 <li data-name="LuCI.network.WifiDevice#deleteWifiNetwork"><a href="LuCI.network.WifiDevice.html#deleteWifiNetwork">deleteWifiNetwork</a></li>
612
613 <li data-name="LuCI.network.WifiDevice#get"><a href="LuCI.network.WifiDevice.html#get">get</a></li>
614
615 <li data-name="LuCI.network.WifiDevice#getHTModes"><a href="LuCI.network.WifiDevice.html#getHTModes">getHTModes</a></li>
616
617 <li data-name="LuCI.network.WifiDevice#getHWModes"><a href="LuCI.network.WifiDevice.html#getHWModes">getHWModes</a></li>
618
619 <li data-name="LuCI.network.WifiDevice#getI18n"><a href="LuCI.network.WifiDevice.html#getI18n">getI18n</a></li>
620
621 <li data-name="LuCI.network.WifiDevice#getName"><a href="LuCI.network.WifiDevice.html#getName">getName</a></li>
622
623 <li data-name="LuCI.network.WifiDevice#getScanList"><a href="LuCI.network.WifiDevice.html#getScanList">getScanList</a></li>
624
625 <li data-name="LuCI.network.WifiDevice#getWifiNetwork"><a href="LuCI.network.WifiDevice.html#getWifiNetwork">getWifiNetwork</a></li>
626
627 <li data-name="LuCI.network.WifiDevice#getWifiNetworks"><a href="LuCI.network.WifiDevice.html#getWifiNetworks">getWifiNetworks</a></li>
628
629 <li data-name="LuCI.network.WifiDevice#isDisabled"><a href="LuCI.network.WifiDevice.html#isDisabled">isDisabled</a></li>
630
631 <li data-name="LuCI.network.WifiDevice#isUp"><a href="LuCI.network.WifiDevice.html#isUp">isUp</a></li>
632
633 <li data-name="LuCI.network.WifiDevice#set"><a href="LuCI.network.WifiDevice.html#set">set</a></li>
634
635 </ul>
636 <ul class="events itemMembers">
637
638 </ul>
639 </li>
640
641 <li class="item" data-name="LuCI.network.WifiNetwork">
642 <span class="title">
643 <a href="LuCI.network.WifiNetwork.html">LuCI.network.WifiNetwork</a>
644
645 </span>
646 <ul class="members itemMembers">
647
648 </ul>
649 <ul class="typedefs itemMembers">
650
651 </ul>
652 <ul class="typedefs itemMembers">
653
654 </ul>
655 <ul class="methods itemMembers">
656
657 <span class="subtitle">Methods</span>
658
659 <li data-name="LuCI.network.WifiNetwork#disconnectClient"><a href="LuCI.network.WifiNetwork.html#disconnectClient">disconnectClient</a></li>
660
661 <li data-name="LuCI.network.WifiNetwork#get"><a href="LuCI.network.WifiNetwork.html#get">get</a></li>
662
663 <li data-name="LuCI.network.WifiNetwork#getActiveBSSID"><a href="LuCI.network.WifiNetwork.html#getActiveBSSID">getActiveBSSID</a></li>
664
665 <li data-name="LuCI.network.WifiNetwork#getActiveEncryption"><a href="LuCI.network.WifiNetwork.html#getActiveEncryption">getActiveEncryption</a></li>
666
667 <li data-name="LuCI.network.WifiNetwork#getActiveMode"><a href="LuCI.network.WifiNetwork.html#getActiveMode">getActiveMode</a></li>
668
669 <li data-name="LuCI.network.WifiNetwork#getActiveModeI18n"><a href="LuCI.network.WifiNetwork.html#getActiveModeI18n">getActiveModeI18n</a></li>
670
671 <li data-name="LuCI.network.WifiNetwork#getActiveSSID"><a href="LuCI.network.WifiNetwork.html#getActiveSSID">getActiveSSID</a></li>
672
673 <li data-name="LuCI.network.WifiNetwork#getAssocList"><a href="LuCI.network.WifiNetwork.html#getAssocList">getAssocList</a></li>
674
675 <li data-name="LuCI.network.WifiNetwork#getBitRate"><a href="LuCI.network.WifiNetwork.html#getBitRate">getBitRate</a></li>
676
677 <li data-name="LuCI.network.WifiNetwork#getBSSID"><a href="LuCI.network.WifiNetwork.html#getBSSID">getBSSID</a></li>
678
679 <li data-name="LuCI.network.WifiNetwork#getChannel"><a href="LuCI.network.WifiNetwork.html#getChannel">getChannel</a></li>
680
681 <li data-name="LuCI.network.WifiNetwork#getCountryCode"><a href="LuCI.network.WifiNetwork.html#getCountryCode">getCountryCode</a></li>
682
683 <li data-name="LuCI.network.WifiNetwork#getDevice"><a href="LuCI.network.WifiNetwork.html#getDevice">getDevice</a></li>
684
685 <li data-name="LuCI.network.WifiNetwork#getFrequency"><a href="LuCI.network.WifiNetwork.html#getFrequency">getFrequency</a></li>
686
687 <li data-name="LuCI.network.WifiNetwork#getI18n"><a href="LuCI.network.WifiNetwork.html#getI18n">getI18n</a></li>
688
689 <li data-name="LuCI.network.WifiNetwork#getID"><a href="LuCI.network.WifiNetwork.html#getID">getID</a></li>
690
691 <li data-name="LuCI.network.WifiNetwork#getIfname"><a href="LuCI.network.WifiNetwork.html#getIfname">getIfname</a></li>
692
693 <li data-name="LuCI.network.WifiNetwork#getMeshID"><a href="LuCI.network.WifiNetwork.html#getMeshID">getMeshID</a></li>
694
695 <li data-name="LuCI.network.WifiNetwork#getMode"><a href="LuCI.network.WifiNetwork.html#getMode">getMode</a></li>
696
697 <li data-name="LuCI.network.WifiNetwork#getName"><a href="LuCI.network.WifiNetwork.html#getName">getName</a></li>
698
699 <li data-name="LuCI.network.WifiNetwork#getNetwork"><a href="LuCI.network.WifiNetwork.html#getNetwork">getNetwork</a></li>
700
701 <li data-name="LuCI.network.WifiNetwork#getNetworkNames"><a href="LuCI.network.WifiNetwork.html#getNetworkNames">getNetworkNames</a></li>
702
703 <li data-name="LuCI.network.WifiNetwork#getNetworks"><a href="LuCI.network.WifiNetwork.html#getNetworks">getNetworks</a></li>
704
705 <li data-name="LuCI.network.WifiNetwork#getNoise"><a href="LuCI.network.WifiNetwork.html#getNoise">getNoise</a></li>
706
707 <li data-name="LuCI.network.WifiNetwork#getShortName"><a href="LuCI.network.WifiNetwork.html#getShortName">getShortName</a></li>
708
709 <li data-name="LuCI.network.WifiNetwork#getSignal"><a href="LuCI.network.WifiNetwork.html#getSignal">getSignal</a></li>
710
711 <li data-name="LuCI.network.WifiNetwork#getSignalLevel"><a href="LuCI.network.WifiNetwork.html#getSignalLevel">getSignalLevel</a></li>
712
713 <li data-name="LuCI.network.WifiNetwork#getSignalPercent"><a href="LuCI.network.WifiNetwork.html#getSignalPercent">getSignalPercent</a></li>
714
715 <li data-name="LuCI.network.WifiNetwork#getSSID"><a href="LuCI.network.WifiNetwork.html#getSSID">getSSID</a></li>
716
717 <li data-name="LuCI.network.WifiNetwork#getTXPower"><a href="LuCI.network.WifiNetwork.html#getTXPower">getTXPower</a></li>
718
719 <li data-name="LuCI.network.WifiNetwork#getTXPowerOffset"><a href="LuCI.network.WifiNetwork.html#getTXPowerOffset">getTXPowerOffset</a></li>
720
721 <li data-name="LuCI.network.WifiNetwork#getWifiDevice"><a href="LuCI.network.WifiNetwork.html#getWifiDevice">getWifiDevice</a></li>
722
723 <li data-name="LuCI.network.WifiNetwork#getWifiDeviceName"><a href="LuCI.network.WifiNetwork.html#getWifiDeviceName">getWifiDeviceName</a></li>
724
725 <li data-name="LuCI.network.WifiNetwork#isClientDisconnectSupported"><a href="LuCI.network.WifiNetwork.html#isClientDisconnectSupported">isClientDisconnectSupported</a></li>
726
727 <li data-name="LuCI.network.WifiNetwork#isDisabled"><a href="LuCI.network.WifiNetwork.html#isDisabled">isDisabled</a></li>
728
729 <li data-name="LuCI.network.WifiNetwork#isUp"><a href="LuCI.network.WifiNetwork.html#isUp">isUp</a></li>
730
731 <li data-name="LuCI.network.WifiNetwork#set"><a href="LuCI.network.WifiNetwork.html#set">set</a></li>
732
733 </ul>
734 <ul class="events itemMembers">
735
736 </ul>
737 </li>
738
739 <li class="item" data-name="LuCI.poll">
740 <span class="title">
741 <a href="LuCI.poll.html">LuCI.poll</a>
742
743 </span>
744 <ul class="members itemMembers">
745
746 </ul>
747 <ul class="typedefs itemMembers">
748
749 </ul>
750 <ul class="typedefs itemMembers">
751
752 </ul>
753 <ul class="methods itemMembers">
754
755 <span class="subtitle">Methods</span>
756
757 <li data-name="LuCI.poll#active"><a href="LuCI.poll.html#active">active</a></li>
758
759 <li data-name="LuCI.poll#add"><a href="LuCI.poll.html#add">add</a></li>
760
761 <li data-name="LuCI.poll#remove"><a href="LuCI.poll.html#remove">remove</a></li>
762
763 <li data-name="LuCI.poll#start"><a href="LuCI.poll.html#start">start</a></li>
764
765 <li data-name="LuCI.poll#stop"><a href="LuCI.poll.html#stop">stop</a></li>
766
767 </ul>
768 <ul class="events itemMembers">
769
770 </ul>
771 </li>
772
773 <li class="item" data-name="LuCI.request">
774 <span class="title">
775 <a href="LuCI.request.html">LuCI.request</a>
776
777 </span>
778 <ul class="members itemMembers">
779
780 </ul>
781 <ul class="typedefs itemMembers">
782
783 <span class="subtitle">Typedefs</span>
784
785 <li data-name="LuCI.request.interceptorFn"><a href="LuCI.request.html#.interceptorFn">interceptorFn</a></li>
786
787 <li data-name="LuCI.request.RequestOptions"><a href="LuCI.request.html#.RequestOptions">RequestOptions</a></li>
788
789 </ul>
790 <ul class="typedefs itemMembers">
791
792 </ul>
793 <ul class="methods itemMembers">
794
795 <span class="subtitle">Methods</span>
796
797 <li data-name="LuCI.request#addInterceptor"><a href="LuCI.request.html#addInterceptor">addInterceptor</a></li>
798
799 <li data-name="LuCI.request#expandURL"><a href="LuCI.request.html#expandURL">expandURL</a></li>
800
801 <li data-name="LuCI.request#get"><a href="LuCI.request.html#get">get</a></li>
802
803 <li data-name="LuCI.request#post"><a href="LuCI.request.html#post">post</a></li>
804
805 <li data-name="LuCI.request#removeInterceptor"><a href="LuCI.request.html#removeInterceptor">removeInterceptor</a></li>
806
807 <li data-name="LuCI.request#request"><a href="LuCI.request.html#request">request</a></li>
808
809 </ul>
810 <ul class="events itemMembers">
811
812 </ul>
813 </li>
814
815 <li class="item" data-name="LuCI.request.poll">
816 <span class="title">
817 <a href="LuCI.request.poll.html">LuCI.request.poll</a>
818
819 </span>
820 <ul class="members itemMembers">
821
822 </ul>
823 <ul class="typedefs itemMembers">
824
825 <span class="subtitle">Typedefs</span>
826
827 <li data-name="LuCI.request.poll~callbackFn"><a href="LuCI.request.poll.html#~callbackFn">callbackFn</a></li>
828
829 </ul>
830 <ul class="typedefs itemMembers">
831
832 </ul>
833 <ul class="methods itemMembers">
834
835 <span class="subtitle">Methods</span>
836
837 <li data-name="LuCI.request.poll#active"><a href="LuCI.request.poll.html#active">active</a></li>
838
839 <li data-name="LuCI.request.poll#add"><a href="LuCI.request.poll.html#add">add</a></li>
840
841 <li data-name="LuCI.request.poll#remove"><a href="LuCI.request.poll.html#remove">remove</a></li>
842
843 <li data-name="LuCI.request.poll#start"><a href="LuCI.request.poll.html#start">start</a></li>
844
845 <li data-name="LuCI.request.poll#stop"><a href="LuCI.request.poll.html#stop">stop</a></li>
846
847 </ul>
848 <ul class="events itemMembers">
849
850 </ul>
851 </li>
852
853 <li class="item" data-name="LuCI.response">
854 <span class="title">
855 <a href="LuCI.response.html">LuCI.response</a>
856
857 </span>
858 <ul class="members itemMembers">
859
860 <span class="subtitle">Members</span>
861
862 <li data-name="LuCI.response#duration"><a href="LuCI.response.html#duration">duration</a></li>
863
864 <li data-name="LuCI.response#headers"><a href="LuCI.response.html#headers">headers</a></li>
865
866 <li data-name="LuCI.response#ok"><a href="LuCI.response.html#ok">ok</a></li>
867
868 <li data-name="LuCI.response#status"><a href="LuCI.response.html#status">status</a></li>
869
870 <li data-name="LuCI.response#statusText"><a href="LuCI.response.html#statusText">statusText</a></li>
871
872 <li data-name="LuCI.response#url"><a href="LuCI.response.html#url">url</a></li>
873
874 </ul>
875 <ul class="typedefs itemMembers">
876
877 </ul>
878 <ul class="typedefs itemMembers">
879
880 </ul>
881 <ul class="methods itemMembers">
882
883 <span class="subtitle">Methods</span>
884
885 <li data-name="LuCI.response#blob"><a href="LuCI.response.html#blob">blob</a></li>
886
887 <li data-name="LuCI.response#clone"><a href="LuCI.response.html#clone">clone</a></li>
888
889 <li data-name="LuCI.response#json"><a href="LuCI.response.html#json">json</a></li>
890
891 <li data-name="LuCI.response#text"><a href="LuCI.response.html#text">text</a></li>
892
893 </ul>
894 <ul class="events itemMembers">
895
896 </ul>
897 </li>
898
899 <li class="item" data-name="LuCI.rpc">
900 <span class="title">
901 <a href="LuCI.rpc.html">LuCI.rpc</a>
902
903 </span>
904 <ul class="members itemMembers">
905
906 </ul>
907 <ul class="typedefs itemMembers">
908
909 <span class="subtitle">Typedefs</span>
910
911 <li data-name="LuCI.rpc.DeclareOptions"><a href="LuCI.rpc.html#.DeclareOptions">DeclareOptions</a></li>
912
913 <li data-name="LuCI.rpc~filterFn"><a href="LuCI.rpc.html#~filterFn">filterFn</a></li>
914
915 <li data-name="LuCI.rpc~interceptorFn"><a href="LuCI.rpc.html#~interceptorFn">interceptorFn</a></li>
916
917 <li data-name="LuCI.rpc~invokeFn"><a href="LuCI.rpc.html#~invokeFn">invokeFn</a></li>
918
919 </ul>
920 <ul class="typedefs itemMembers">
921
922 </ul>
923 <ul class="methods itemMembers">
924
925 <span class="subtitle">Methods</span>
926
927 <li data-name="LuCI.rpc#addInterceptor"><a href="LuCI.rpc.html#addInterceptor">addInterceptor</a></li>
928
929 <li data-name="LuCI.rpc#declare"><a href="LuCI.rpc.html#declare">declare</a></li>
930
931 <li data-name="LuCI.rpc#getBaseURL"><a href="LuCI.rpc.html#getBaseURL">getBaseURL</a></li>
932
933 <li data-name="LuCI.rpc#getSessionID"><a href="LuCI.rpc.html#getSessionID">getSessionID</a></li>
934
935 <li data-name="LuCI.rpc#getStatusText"><a href="LuCI.rpc.html#getStatusText">getStatusText</a></li>
936
937 <li data-name="LuCI.rpc#list"><a href="LuCI.rpc.html#list">list</a></li>
938
939 <li data-name="LuCI.rpc#removeInterceptor"><a href="LuCI.rpc.html#removeInterceptor">removeInterceptor</a></li>
940
941 <li data-name="LuCI.rpc#setBaseURL"><a href="LuCI.rpc.html#setBaseURL">setBaseURL</a></li>
942
943 <li data-name="LuCI.rpc#setSessionID"><a href="LuCI.rpc.html#setSessionID">setSessionID</a></li>
944
945 </ul>
946 <ul class="events itemMembers">
947
948 </ul>
949 </li>
950
951 <li class="item" data-name="LuCI.uci">
952 <span class="title">
953 <a href="LuCI.uci.html">LuCI.uci</a>
954
955 </span>
956 <ul class="members itemMembers">
957
958 </ul>
959 <ul class="typedefs itemMembers">
960
961 <span class="subtitle">Typedefs</span>
962
963 <li data-name="LuCI.uci.ChangeRecord"><a href="LuCI.uci.html#.ChangeRecord">ChangeRecord</a></li>
964
965 <li data-name="LuCI.uci.SectionObject"><a href="LuCI.uci.html#.SectionObject">SectionObject</a></li>
966
967 <li data-name="LuCI.uci~sectionsFn"><a href="LuCI.uci.html#~sectionsFn">sectionsFn</a></li>
968
969 </ul>
970 <ul class="typedefs itemMembers">
971
972 </ul>
973 <ul class="methods itemMembers">
974
975 <span class="subtitle">Methods</span>
976
977 <li data-name="LuCI.uci#add"><a href="LuCI.uci.html#add">add</a></li>
978
979 <li data-name="LuCI.uci#apply"><a href="LuCI.uci.html#apply">apply</a></li>
980
981 <li data-name="LuCI.uci#changes"><a href="LuCI.uci.html#changes">changes</a></li>
982
983 <li data-name="LuCI.uci#createSID"><a href="LuCI.uci.html#createSID">createSID</a></li>
984
985 <li data-name="LuCI.uci#get"><a href="LuCI.uci.html#get">get</a></li>
986
987 <li data-name="LuCI.uci#get_first"><a href="LuCI.uci.html#get_first">get_first</a></li>
988
989 <li data-name="LuCI.uci#load"><a href="LuCI.uci.html#load">load</a></li>
990
991 <li data-name="LuCI.uci#move"><a href="LuCI.uci.html#move">move</a></li>
992
993 <li data-name="LuCI.uci#remove"><a href="LuCI.uci.html#remove">remove</a></li>
994
995 <li data-name="LuCI.uci#resolveSID"><a href="LuCI.uci.html#resolveSID">resolveSID</a></li>
996
997 <li data-name="LuCI.uci#save"><a href="LuCI.uci.html#save">save</a></li>
998
999 <li data-name="LuCI.uci#sections"><a href="LuCI.uci.html#sections">sections</a></li>
1000
1001 <li data-name="LuCI.uci#set"><a href="LuCI.uci.html#set">set</a></li>
1002
1003 <li data-name="LuCI.uci#set_first"><a href="LuCI.uci.html#set_first">set_first</a></li>
1004
1005 <li data-name="LuCI.uci#unload"><a href="LuCI.uci.html#unload">unload</a></li>
1006
1007 <li data-name="LuCI.uci#unset"><a href="LuCI.uci.html#unset">unset</a></li>
1008
1009 <li data-name="LuCI.uci#unset_first"><a href="LuCI.uci.html#unset_first">unset_first</a></li>
1010
1011 </ul>
1012 <ul class="events itemMembers">
1013
1014 </ul>
1015 </li>
1016
1017 <li class="item" data-name="LuCI.ui">
1018 <span class="title">
1019 <a href="LuCI.ui.html">LuCI.ui</a>
1020
1021 </span>
1022 <ul class="members itemMembers">
1023
1024 </ul>
1025 <ul class="typedefs itemMembers">
1026
1027 <span class="subtitle">Typedefs</span>
1028
1029 <li data-name="LuCI.ui.FileUploadReply"><a href="LuCI.ui.html#.FileUploadReply">FileUploadReply</a></li>
1030
1031 </ul>
1032 <ul class="typedefs itemMembers">
1033
1034 </ul>
1035 <ul class="methods itemMembers">
1036
1037 <span class="subtitle">Methods</span>
1038
1039 <li data-name="LuCI.ui#addNotification"><a href="LuCI.ui.html#addNotification">addNotification</a></li>
1040
1041 <li data-name="LuCI.ui#addValidator"><a href="LuCI.ui.html#addValidator">addValidator</a></li>
1042
1043 <li data-name="LuCI.ui#awaitReconnect"><a href="LuCI.ui.html#awaitReconnect">awaitReconnect</a></li>
1044
1045 <li data-name="LuCI.ui#createHandlerFn"><a href="LuCI.ui.html#createHandlerFn">createHandlerFn</a></li>
1046
1047 <li data-name="LuCI.ui#hideIndicator"><a href="LuCI.ui.html#hideIndicator">hideIndicator</a></li>
1048
1049 <li data-name="LuCI.ui#hideModal"><a href="LuCI.ui.html#hideModal">hideModal</a></li>
1050
1051 <li data-name="LuCI.ui#itemlist"><a href="LuCI.ui.html#itemlist">itemlist</a></li>
1052
1053 <li data-name="LuCI.ui#pingDevice"><a href="LuCI.ui.html#pingDevice">pingDevice</a></li>
1054
1055 <li data-name="LuCI.ui#showIndicator"><a href="LuCI.ui.html#showIndicator">showIndicator</a></li>
1056
1057 <li data-name="LuCI.ui#showModal"><a href="LuCI.ui.html#showModal">showModal</a></li>
1058
1059 <li data-name="LuCI.ui#uploadFile"><a href="LuCI.ui.html#uploadFile">uploadFile</a></li>
1060
1061 </ul>
1062 <ul class="events itemMembers">
1063
1064 </ul>
1065 </li>
1066
1067 <li class="item" data-name="LuCI.ui.AbstractElement">
1068 <span class="title">
1069 <a href="LuCI.ui.AbstractElement.html">LuCI.ui.AbstractElement</a>
1070
1071 </span>
1072 <ul class="members itemMembers">
1073
1074 </ul>
1075 <ul class="typedefs itemMembers">
1076
1077 <span class="subtitle">Typedefs</span>
1078
1079 <li data-name="LuCI.ui.AbstractElement.InitOptions"><a href="LuCI.ui.AbstractElement.html#.InitOptions">InitOptions</a></li>
1080
1081 </ul>
1082 <ul class="typedefs itemMembers">
1083
1084 </ul>
1085 <ul class="methods itemMembers">
1086
1087 <span class="subtitle">Methods</span>
1088
1089 <li data-name="LuCI.ui.AbstractElement#getValue"><a href="LuCI.ui.AbstractElement.html#getValue">getValue</a></li>
1090
1091 <li data-name="LuCI.ui.AbstractElement#isValid"><a href="LuCI.ui.AbstractElement.html#isValid">isValid</a></li>
1092
1093 <li data-name="LuCI.ui.AbstractElement#registerEvents"><a href="LuCI.ui.AbstractElement.html#registerEvents">registerEvents</a></li>
1094
1095 <li data-name="LuCI.ui.AbstractElement#render"><a href="LuCI.ui.AbstractElement.html#render">render</a></li>
1096
1097 <li data-name="LuCI.ui.AbstractElement#setChangeEvents"><a href="LuCI.ui.AbstractElement.html#setChangeEvents">setChangeEvents</a></li>
1098
1099 <li data-name="LuCI.ui.AbstractElement#setUpdateEvents"><a href="LuCI.ui.AbstractElement.html#setUpdateEvents">setUpdateEvents</a></li>
1100
1101 <li data-name="LuCI.ui.AbstractElement#setValue"><a href="LuCI.ui.AbstractElement.html#setValue">setValue</a></li>
1102
1103 <li data-name="LuCI.ui.AbstractElement#triggerValidation"><a href="LuCI.ui.AbstractElement.html#triggerValidation">triggerValidation</a></li>
1104
1105 </ul>
1106 <ul class="events itemMembers">
1107
1108 </ul>
1109 </li>
1110
1111 <li class="item" data-name="LuCI.ui.changes">
1112 <span class="title">
1113 <a href="LuCI.ui.changes.html">LuCI.ui.changes</a>
1114
1115 </span>
1116 <ul class="members itemMembers">
1117
1118 </ul>
1119 <ul class="typedefs itemMembers">
1120
1121 </ul>
1122 <ul class="typedefs itemMembers">
1123
1124 </ul>
1125 <ul class="methods itemMembers">
1126
1127 <span class="subtitle">Methods</span>
1128
1129 <li data-name="LuCI.ui.changes#apply"><a href="LuCI.ui.changes.html#apply">apply</a></li>
1130
1131 <li data-name="LuCI.ui.changes#displayChanges"><a href="LuCI.ui.changes.html#displayChanges">displayChanges</a></li>
1132
1133 <li data-name="LuCI.ui.changes#renderChangeIndicator"><a href="LuCI.ui.changes.html#renderChangeIndicator">renderChangeIndicator</a></li>
1134
1135 <li data-name="LuCI.ui.changes#revert"><a href="LuCI.ui.changes.html#revert">revert</a></li>
1136
1137 <li data-name="LuCI.ui.changes#setIndicator"><a href="LuCI.ui.changes.html#setIndicator">setIndicator</a></li>
1138
1139 </ul>
1140 <ul class="events itemMembers">
1141
1142 </ul>
1143 </li>
1144
1145 <li class="item" data-name="LuCI.ui.Checkbox">
1146 <span class="title">
1147 <a href="LuCI.ui.Checkbox.html">LuCI.ui.Checkbox</a>
1148
1149 </span>
1150 <ul class="members itemMembers">
1151
1152 </ul>
1153 <ul class="typedefs itemMembers">
1154
1155 <span class="subtitle">Typedefs</span>
1156
1157 <li data-name="LuCI.ui.Checkbox.InitOptions"><a href="LuCI.ui.Checkbox.html#.InitOptions">InitOptions</a></li>
1158
1159 </ul>
1160 <ul class="typedefs itemMembers">
1161
1162 </ul>
1163 <ul class="methods itemMembers">
1164
1165 <span class="subtitle">Methods</span>
1166
1167 <li data-name="LuCI.ui.Checkbox#getValue"><a href="LuCI.ui.Checkbox.html#getValue">getValue</a></li>
1168
1169 <li data-name="LuCI.ui.Checkbox#isChecked"><a href="LuCI.ui.Checkbox.html#isChecked">isChecked</a></li>
1170
1171 <li data-name="LuCI.ui.Checkbox#isValid"><a href="LuCI.ui.Checkbox.html#isValid">isValid</a></li>
1172
1173 <li data-name="LuCI.ui.Checkbox#registerEvents"><a href="LuCI.ui.Checkbox.html#registerEvents">registerEvents</a></li>
1174
1175 <li data-name="LuCI.ui.Checkbox#render"><a href="LuCI.ui.Checkbox.html#render">render</a></li>
1176
1177 <li data-name="LuCI.ui.Checkbox#setChangeEvents"><a href="LuCI.ui.Checkbox.html#setChangeEvents">setChangeEvents</a></li>
1178
1179 <li data-name="LuCI.ui.Checkbox#setUpdateEvents"><a href="LuCI.ui.Checkbox.html#setUpdateEvents">setUpdateEvents</a></li>
1180
1181 <li data-name="LuCI.ui.Checkbox#setValue"><a href="LuCI.ui.Checkbox.html#setValue">setValue</a></li>
1182
1183 <li data-name="LuCI.ui.Checkbox#triggerValidation"><a href="LuCI.ui.Checkbox.html#triggerValidation">triggerValidation</a></li>
1184
1185 </ul>
1186 <ul class="events itemMembers">
1187
1188 </ul>
1189 </li>
1190
1191 <li class="item" data-name="LuCI.ui.Combobox">
1192 <span class="title">
1193 <a href="LuCI.ui.Combobox.html">LuCI.ui.Combobox</a>
1194
1195 </span>
1196 <ul class="members itemMembers">
1197
1198 </ul>
1199 <ul class="typedefs itemMembers">
1200
1201 <span class="subtitle">Typedefs</span>
1202
1203 <li data-name="LuCI.ui.Combobox.InitOptions"><a href="LuCI.ui.Combobox.html#.InitOptions">InitOptions</a></li>
1204
1205 </ul>
1206 <ul class="typedefs itemMembers">
1207
1208 </ul>
1209 <ul class="methods itemMembers">
1210
1211 <span class="subtitle">Methods</span>
1212
1213 <li data-name="LuCI.ui.Combobox#addChoices"><a href="LuCI.ui.Combobox.html#addChoices">addChoices</a></li>
1214
1215 <li data-name="LuCI.ui.Combobox#clearChoices"><a href="LuCI.ui.Combobox.html#clearChoices">clearChoices</a></li>
1216
1217 <li data-name="LuCI.ui.Combobox#closeAllDropdowns"><a href="LuCI.ui.Combobox.html#closeAllDropdowns">closeAllDropdowns</a></li>
1218
1219 <li data-name="LuCI.ui.Combobox#isValid"><a href="LuCI.ui.Combobox.html#isValid">isValid</a></li>
1220
1221 <li data-name="LuCI.ui.Combobox#registerEvents"><a href="LuCI.ui.Combobox.html#registerEvents">registerEvents</a></li>
1222
1223 <li data-name="LuCI.ui.Combobox#setChangeEvents"><a href="LuCI.ui.Combobox.html#setChangeEvents">setChangeEvents</a></li>
1224
1225 <li data-name="LuCI.ui.Combobox#setUpdateEvents"><a href="LuCI.ui.Combobox.html#setUpdateEvents">setUpdateEvents</a></li>
1226
1227 <li data-name="LuCI.ui.Combobox#triggerValidation"><a href="LuCI.ui.Combobox.html#triggerValidation">triggerValidation</a></li>
1228
1229 </ul>
1230 <ul class="events itemMembers">
1231
1232 </ul>
1233 </li>
1234
1235 <li class="item" data-name="LuCI.ui.ComboButton">
1236 <span class="title">
1237 <a href="LuCI.ui.ComboButton.html">LuCI.ui.ComboButton</a>
1238
1239 </span>
1240 <ul class="members itemMembers">
1241
1242 </ul>
1243 <ul class="typedefs itemMembers">
1244
1245 <span class="subtitle">Typedefs</span>
1246
1247 <li data-name="LuCI.ui.ComboButton.InitOptions"><a href="LuCI.ui.ComboButton.html#.InitOptions">InitOptions</a></li>
1248
1249 </ul>
1250 <ul class="typedefs itemMembers">
1251
1252 </ul>
1253 <ul class="methods itemMembers">
1254
1255 <span class="subtitle">Methods</span>
1256
1257 <li data-name="LuCI.ui.ComboButton#addChoices"><a href="LuCI.ui.ComboButton.html#addChoices">addChoices</a></li>
1258
1259 <li data-name="LuCI.ui.ComboButton#clearChoices"><a href="LuCI.ui.ComboButton.html#clearChoices">clearChoices</a></li>
1260
1261 <li data-name="LuCI.ui.ComboButton#closeAllDropdowns"><a href="LuCI.ui.ComboButton.html#closeAllDropdowns">closeAllDropdowns</a></li>
1262
1263 <li data-name="LuCI.ui.ComboButton#isValid"><a href="LuCI.ui.ComboButton.html#isValid">isValid</a></li>
1264
1265 <li data-name="LuCI.ui.ComboButton#registerEvents"><a href="LuCI.ui.ComboButton.html#registerEvents">registerEvents</a></li>
1266
1267 <li data-name="LuCI.ui.ComboButton#setChangeEvents"><a href="LuCI.ui.ComboButton.html#setChangeEvents">setChangeEvents</a></li>
1268
1269 <li data-name="LuCI.ui.ComboButton#setUpdateEvents"><a href="LuCI.ui.ComboButton.html#setUpdateEvents">setUpdateEvents</a></li>
1270
1271 <li data-name="LuCI.ui.ComboButton#triggerValidation"><a href="LuCI.ui.ComboButton.html#triggerValidation">triggerValidation</a></li>
1272
1273 </ul>
1274 <ul class="events itemMembers">
1275
1276 </ul>
1277 </li>
1278
1279 <li class="item" data-name="LuCI.ui.Dropdown">
1280 <span class="title">
1281 <a href="LuCI.ui.Dropdown.html">LuCI.ui.Dropdown</a>
1282
1283 </span>
1284 <ul class="members itemMembers">
1285
1286 </ul>
1287 <ul class="typedefs itemMembers">
1288
1289 <span class="subtitle">Typedefs</span>
1290
1291 <li data-name="LuCI.ui.Dropdown.InitOptions"><a href="LuCI.ui.Dropdown.html#.InitOptions">InitOptions</a></li>
1292
1293 </ul>
1294 <ul class="typedefs itemMembers">
1295
1296 </ul>
1297 <ul class="methods itemMembers">
1298
1299 <span class="subtitle">Methods</span>
1300
1301 <li data-name="LuCI.ui.Dropdown#addChoices"><a href="LuCI.ui.Dropdown.html#addChoices">addChoices</a></li>
1302
1303 <li data-name="LuCI.ui.Dropdown#clearChoices"><a href="LuCI.ui.Dropdown.html#clearChoices">clearChoices</a></li>
1304
1305 <li data-name="LuCI.ui.Dropdown#closeAllDropdowns"><a href="LuCI.ui.Dropdown.html#closeAllDropdowns">closeAllDropdowns</a></li>
1306
1307 <li data-name="LuCI.ui.Dropdown#getValue"><a href="LuCI.ui.Dropdown.html#getValue">getValue</a></li>
1308
1309 <li data-name="LuCI.ui.Dropdown#isValid"><a href="LuCI.ui.Dropdown.html#isValid">isValid</a></li>
1310
1311 <li data-name="LuCI.ui.Dropdown#registerEvents"><a href="LuCI.ui.Dropdown.html#registerEvents">registerEvents</a></li>
1312
1313 <li data-name="LuCI.ui.Dropdown#render"><a href="LuCI.ui.Dropdown.html#render">render</a></li>
1314
1315 <li data-name="LuCI.ui.Dropdown#setChangeEvents"><a href="LuCI.ui.Dropdown.html#setChangeEvents">setChangeEvents</a></li>
1316
1317 <li data-name="LuCI.ui.Dropdown#setUpdateEvents"><a href="LuCI.ui.Dropdown.html#setUpdateEvents">setUpdateEvents</a></li>
1318
1319 <li data-name="LuCI.ui.Dropdown#setValue"><a href="LuCI.ui.Dropdown.html#setValue">setValue</a></li>
1320
1321 <li data-name="LuCI.ui.Dropdown#triggerValidation"><a href="LuCI.ui.Dropdown.html#triggerValidation">triggerValidation</a></li>
1322
1323 </ul>
1324 <ul class="events itemMembers">
1325
1326 </ul>
1327 </li>
1328
1329 <li class="item" data-name="LuCI.ui.DynamicList">
1330 <span class="title">
1331 <a href="LuCI.ui.DynamicList.html">LuCI.ui.DynamicList</a>
1332
1333 </span>
1334 <ul class="members itemMembers">
1335
1336 </ul>
1337 <ul class="typedefs itemMembers">
1338
1339 <span class="subtitle">Typedefs</span>
1340
1341 <li data-name="LuCI.ui.DynamicList.InitOptions"><a href="LuCI.ui.DynamicList.html#.InitOptions">InitOptions</a></li>
1342
1343 </ul>
1344 <ul class="typedefs itemMembers">
1345
1346 </ul>
1347 <ul class="methods itemMembers">
1348
1349 <span class="subtitle">Methods</span>
1350
1351 <li data-name="LuCI.ui.DynamicList#addChoices"><a href="LuCI.ui.DynamicList.html#addChoices">addChoices</a></li>
1352
1353 <li data-name="LuCI.ui.DynamicList#clearChoices"><a href="LuCI.ui.DynamicList.html#clearChoices">clearChoices</a></li>
1354
1355 <li data-name="LuCI.ui.DynamicList#getValue"><a href="LuCI.ui.DynamicList.html#getValue">getValue</a></li>
1356
1357 <li data-name="LuCI.ui.DynamicList#isValid"><a href="LuCI.ui.DynamicList.html#isValid">isValid</a></li>
1358
1359 <li data-name="LuCI.ui.DynamicList#registerEvents"><a href="LuCI.ui.DynamicList.html#registerEvents">registerEvents</a></li>
1360
1361 <li data-name="LuCI.ui.DynamicList#render"><a href="LuCI.ui.DynamicList.html#render">render</a></li>
1362
1363 <li data-name="LuCI.ui.DynamicList#setChangeEvents"><a href="LuCI.ui.DynamicList.html#setChangeEvents">setChangeEvents</a></li>
1364
1365 <li data-name="LuCI.ui.DynamicList#setUpdateEvents"><a href="LuCI.ui.DynamicList.html#setUpdateEvents">setUpdateEvents</a></li>
1366
1367 <li data-name="LuCI.ui.DynamicList#setValue"><a href="LuCI.ui.DynamicList.html#setValue">setValue</a></li>
1368
1369 <li data-name="LuCI.ui.DynamicList#triggerValidation"><a href="LuCI.ui.DynamicList.html#triggerValidation">triggerValidation</a></li>
1370
1371 </ul>
1372 <ul class="events itemMembers">
1373
1374 </ul>
1375 </li>
1376
1377 <li class="item" data-name="LuCI.ui.FileUpload">
1378 <span class="title">
1379 <a href="LuCI.ui.FileUpload.html">LuCI.ui.FileUpload</a>
1380
1381 </span>
1382 <ul class="members itemMembers">
1383
1384 </ul>
1385 <ul class="typedefs itemMembers">
1386
1387 <span class="subtitle">Typedefs</span>
1388
1389 <li data-name="LuCI.ui.FileUpload.InitOptions"><a href="LuCI.ui.FileUpload.html#.InitOptions">InitOptions</a></li>
1390
1391 </ul>
1392 <ul class="typedefs itemMembers">
1393
1394 </ul>
1395 <ul class="methods itemMembers">
1396
1397 <span class="subtitle">Methods</span>
1398
1399 <li data-name="LuCI.ui.FileUpload#getValue"><a href="LuCI.ui.FileUpload.html#getValue">getValue</a></li>
1400
1401 <li data-name="LuCI.ui.FileUpload#isValid"><a href="LuCI.ui.FileUpload.html#isValid">isValid</a></li>
1402
1403 <li data-name="LuCI.ui.FileUpload#registerEvents"><a href="LuCI.ui.FileUpload.html#registerEvents">registerEvents</a></li>
1404
1405 <li data-name="LuCI.ui.FileUpload#render"><a href="LuCI.ui.FileUpload.html#render">render</a></li>
1406
1407 <li data-name="LuCI.ui.FileUpload#setChangeEvents"><a href="LuCI.ui.FileUpload.html#setChangeEvents">setChangeEvents</a></li>
1408
1409 <li data-name="LuCI.ui.FileUpload#setUpdateEvents"><a href="LuCI.ui.FileUpload.html#setUpdateEvents">setUpdateEvents</a></li>
1410
1411 <li data-name="LuCI.ui.FileUpload#setValue"><a href="LuCI.ui.FileUpload.html#setValue">setValue</a></li>
1412
1413 <li data-name="LuCI.ui.FileUpload#triggerValidation"><a href="LuCI.ui.FileUpload.html#triggerValidation">triggerValidation</a></li>
1414
1415 </ul>
1416 <ul class="events itemMembers">
1417
1418 </ul>
1419 </li>
1420
1421 <li class="item" data-name="LuCI.ui.Hiddenfield">
1422 <span class="title">
1423 <a href="LuCI.ui.Hiddenfield.html">LuCI.ui.Hiddenfield</a>
1424
1425 </span>
1426 <ul class="members itemMembers">
1427
1428 </ul>
1429 <ul class="typedefs itemMembers">
1430
1431 </ul>
1432 <ul class="typedefs itemMembers">
1433
1434 </ul>
1435 <ul class="methods itemMembers">
1436
1437 <span class="subtitle">Methods</span>
1438
1439 <li data-name="LuCI.ui.Hiddenfield#getValue"><a href="LuCI.ui.Hiddenfield.html#getValue">getValue</a></li>
1440
1441 <li data-name="LuCI.ui.Hiddenfield#isValid"><a href="LuCI.ui.Hiddenfield.html#isValid">isValid</a></li>
1442
1443 <li data-name="LuCI.ui.Hiddenfield#registerEvents"><a href="LuCI.ui.Hiddenfield.html#registerEvents">registerEvents</a></li>
1444
1445 <li data-name="LuCI.ui.Hiddenfield#render"><a href="LuCI.ui.Hiddenfield.html#render">render</a></li>
1446
1447 <li data-name="LuCI.ui.Hiddenfield#setChangeEvents"><a href="LuCI.ui.Hiddenfield.html#setChangeEvents">setChangeEvents</a></li>
1448
1449 <li data-name="LuCI.ui.Hiddenfield#setUpdateEvents"><a href="LuCI.ui.Hiddenfield.html#setUpdateEvents">setUpdateEvents</a></li>
1450
1451 <li data-name="LuCI.ui.Hiddenfield#setValue"><a href="LuCI.ui.Hiddenfield.html#setValue">setValue</a></li>
1452
1453 <li data-name="LuCI.ui.Hiddenfield#triggerValidation"><a href="LuCI.ui.Hiddenfield.html#triggerValidation">triggerValidation</a></li>
1454
1455 </ul>
1456 <ul class="events itemMembers">
1457
1458 </ul>
1459 </li>
1460
1461 <li class="item" data-name="LuCI.ui.Select">
1462 <span class="title">
1463 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
1464
1465 </span>
1466 <ul class="members itemMembers">
1467
1468 </ul>
1469 <ul class="typedefs itemMembers">
1470
1471 <span class="subtitle">Typedefs</span>
1472
1473 <li data-name="LuCI.ui.Select.InitOptions"><a href="LuCI.ui.Select.html#.InitOptions">InitOptions</a></li>
1474
1475 </ul>
1476 <ul class="typedefs itemMembers">
1477
1478 </ul>
1479 <ul class="methods itemMembers">
1480
1481 <span class="subtitle">Methods</span>
1482
1483 <li data-name="LuCI.ui.Select#getValue"><a href="LuCI.ui.Select.html#getValue">getValue</a></li>
1484
1485 <li data-name="LuCI.ui.Select#isValid"><a href="LuCI.ui.Select.html#isValid">isValid</a></li>
1486
1487 <li data-name="LuCI.ui.Select#registerEvents"><a href="LuCI.ui.Select.html#registerEvents">registerEvents</a></li>
1488
1489 <li data-name="LuCI.ui.Select#render"><a href="LuCI.ui.Select.html#render">render</a></li>
1490
1491 <li data-name="LuCI.ui.Select#setChangeEvents"><a href="LuCI.ui.Select.html#setChangeEvents">setChangeEvents</a></li>
1492
1493 <li data-name="LuCI.ui.Select#setUpdateEvents"><a href="LuCI.ui.Select.html#setUpdateEvents">setUpdateEvents</a></li>
1494
1495 <li data-name="LuCI.ui.Select#setValue"><a href="LuCI.ui.Select.html#setValue">setValue</a></li>
1496
1497 <li data-name="LuCI.ui.Select#triggerValidation"><a href="LuCI.ui.Select.html#triggerValidation">triggerValidation</a></li>
1498
1499 </ul>
1500 <ul class="events itemMembers">
1501
1502 </ul>
1503 </li>
1504
1505 <li class="item" data-name="LuCI.ui.tabs">
1506 <span class="title">
1507 <a href="LuCI.ui.tabs.html">LuCI.ui.tabs</a>
1508
1509 </span>
1510 <ul class="members itemMembers">
1511
1512 </ul>
1513 <ul class="typedefs itemMembers">
1514
1515 </ul>
1516 <ul class="typedefs itemMembers">
1517
1518 </ul>
1519 <ul class="methods itemMembers">
1520
1521 <span class="subtitle">Methods</span>
1522
1523 <li data-name="LuCI.ui.tabs#initTabGroup"><a href="LuCI.ui.tabs.html#initTabGroup">initTabGroup</a></li>
1524
1525 <li data-name="LuCI.ui.tabs#isEmptyPane"><a href="LuCI.ui.tabs.html#isEmptyPane">isEmptyPane</a></li>
1526
1527 </ul>
1528 <ul class="events itemMembers">
1529
1530 </ul>
1531 </li>
1532
1533 <li class="item" data-name="LuCI.ui.Textarea">
1534 <span class="title">
1535 <a href="LuCI.ui.Textarea.html">LuCI.ui.Textarea</a>
1536
1537 </span>
1538 <ul class="members itemMembers">
1539
1540 </ul>
1541 <ul class="typedefs itemMembers">
1542
1543 <span class="subtitle">Typedefs</span>
1544
1545 <li data-name="LuCI.ui.Textarea.InitOptions"><a href="LuCI.ui.Textarea.html#.InitOptions">InitOptions</a></li>
1546
1547 </ul>
1548 <ul class="typedefs itemMembers">
1549
1550 </ul>
1551 <ul class="methods itemMembers">
1552
1553 <span class="subtitle">Methods</span>
1554
1555 <li data-name="LuCI.ui.Textarea#getValue"><a href="LuCI.ui.Textarea.html#getValue">getValue</a></li>
1556
1557 <li data-name="LuCI.ui.Textarea#isValid"><a href="LuCI.ui.Textarea.html#isValid">isValid</a></li>
1558
1559 <li data-name="LuCI.ui.Textarea#registerEvents"><a href="LuCI.ui.Textarea.html#registerEvents">registerEvents</a></li>
1560
1561 <li data-name="LuCI.ui.Textarea#render"><a href="LuCI.ui.Textarea.html#render">render</a></li>
1562
1563 <li data-name="LuCI.ui.Textarea#setChangeEvents"><a href="LuCI.ui.Textarea.html#setChangeEvents">setChangeEvents</a></li>
1564
1565 <li data-name="LuCI.ui.Textarea#setUpdateEvents"><a href="LuCI.ui.Textarea.html#setUpdateEvents">setUpdateEvents</a></li>
1566
1567 <li data-name="LuCI.ui.Textarea#setValue"><a href="LuCI.ui.Textarea.html#setValue">setValue</a></li>
1568
1569 <li data-name="LuCI.ui.Textarea#triggerValidation"><a href="LuCI.ui.Textarea.html#triggerValidation">triggerValidation</a></li>
1570
1571 </ul>
1572 <ul class="events itemMembers">
1573
1574 </ul>
1575 </li>
1576
1577 <li class="item" data-name="LuCI.ui.Textfield">
1578 <span class="title">
1579 <a href="LuCI.ui.Textfield.html">LuCI.ui.Textfield</a>
1580
1581 </span>
1582 <ul class="members itemMembers">
1583
1584 </ul>
1585 <ul class="typedefs itemMembers">
1586
1587 <span class="subtitle">Typedefs</span>
1588
1589 <li data-name="LuCI.ui.Textfield.InitOptions"><a href="LuCI.ui.Textfield.html#.InitOptions">InitOptions</a></li>
1590
1591 </ul>
1592 <ul class="typedefs itemMembers">
1593
1594 </ul>
1595 <ul class="methods itemMembers">
1596
1597 <span class="subtitle">Methods</span>
1598
1599 <li data-name="LuCI.ui.Textfield#getValue"><a href="LuCI.ui.Textfield.html#getValue">getValue</a></li>
1600
1601 <li data-name="LuCI.ui.Textfield#isValid"><a href="LuCI.ui.Textfield.html#isValid">isValid</a></li>
1602
1603 <li data-name="LuCI.ui.Textfield#registerEvents"><a href="LuCI.ui.Textfield.html#registerEvents">registerEvents</a></li>
1604
1605 <li data-name="LuCI.ui.Textfield#render"><a href="LuCI.ui.Textfield.html#render">render</a></li>
1606
1607 <li data-name="LuCI.ui.Textfield#setChangeEvents"><a href="LuCI.ui.Textfield.html#setChangeEvents">setChangeEvents</a></li>
1608
1609 <li data-name="LuCI.ui.Textfield#setUpdateEvents"><a href="LuCI.ui.Textfield.html#setUpdateEvents">setUpdateEvents</a></li>
1610
1611 <li data-name="LuCI.ui.Textfield#setValue"><a href="LuCI.ui.Textfield.html#setValue">setValue</a></li>
1612
1613 <li data-name="LuCI.ui.Textfield#triggerValidation"><a href="LuCI.ui.Textfield.html#triggerValidation">triggerValidation</a></li>
1614
1615 </ul>
1616 <ul class="events itemMembers">
1617
1618 </ul>
1619 </li>
1620
1621 <li class="item" data-name="LuCI.view">
1622 <span class="title">
1623 <a href="LuCI.view.html">LuCI.view</a>
1624
1625 </span>
1626 <ul class="members itemMembers">
1627
1628 </ul>
1629 <ul class="typedefs itemMembers">
1630
1631 </ul>
1632 <ul class="typedefs itemMembers">
1633
1634 </ul>
1635 <ul class="methods itemMembers">
1636
1637 <span class="subtitle">Methods</span>
1638
1639 <li data-name="LuCI.view#addFooter"><a href="LuCI.view.html#addFooter">addFooter</a></li>
1640
1641 <li data-name="LuCI.view#handleReset"><a href="LuCI.view.html#handleReset">handleReset</a></li>
1642
1643 <li data-name="LuCI.view#handleSave"><a href="LuCI.view.html#handleSave">handleSave</a></li>
1644
1645 <li data-name="LuCI.view#handleSaveApply"><a href="LuCI.view.html#handleSaveApply">handleSaveApply</a></li>
1646
1647 <li data-name="LuCI.view#load"><a href="LuCI.view.html#load">load</a></li>
1648
1649 <li data-name="LuCI.view#render"><a href="LuCI.view.html#render">render</a></li>
1650
1651 </ul>
1652 <ul class="events itemMembers">
1653
1654 </ul>
1655 </li>
1656
1657 <li class="item" data-name="LuCI.xhr">
1658 <span class="title">
1659 <a href="LuCI.xhr.html">LuCI.xhr</a>
1660
1661 </span>
1662 <ul class="members itemMembers">
1663
1664 </ul>
1665 <ul class="typedefs itemMembers">
1666
1667 </ul>
1668 <ul class="typedefs itemMembers">
1669
1670 </ul>
1671 <ul class="methods itemMembers">
1672
1673 <span class="subtitle">Methods</span>
1674
1675 <li data-name="LuCI.xhr#abort"><a href="LuCI.xhr.html#abort">abort</a></li>
1676
1677 <li data-name="LuCI.xhr#busy"><a href="LuCI.xhr.html#busy">busy</a></li>
1678
1679 <li data-name="LuCI.xhr#cancel"><a href="LuCI.xhr.html#cancel">cancel</a></li>
1680
1681 <li data-name="LuCI.xhr#get"><a href="LuCI.xhr.html#get">get</a></li>
1682
1683 <li data-name="LuCI.xhr#post"><a href="LuCI.xhr.html#post">post</a></li>
1684
1685 <li data-name="LuCI.xhr#send_form"><a href="LuCI.xhr.html#send_form">send_form</a></li>
1686
1687 </ul>
1688 <ul class="events itemMembers">
1689
1690 </ul>
1691 </li>
1692
1693 </ul>
1694 </div>
1695 <div class="main">
1696 <h1 class="page-title" data-filename="rpc.js.html">Source: rpc.js</h1>
1697
1698
1699
1700
1701 <section>
1702 <article>
1703 <pre id="source-code" class="prettyprint source "><code>'use strict';
1704 'require baseclass';
1705 'require request';
1706
1707 var rpcRequestID = 1,
1708 rpcSessionID = L.env.sessionid || '00000000000000000000000000000000',
1709 rpcBaseURL = L.url('admin/ubus'),
1710 rpcInterceptorFns = [];
1711
1712 /**
1713 * @class rpc
1714 * @memberof LuCI
1715 * @hideconstructor
1716 * @classdesc
1717 *
1718 * The `LuCI.rpc` class provides high level ubus JSON-RPC abstractions
1719 * and means for listing and invoking remove RPC methods.
1720 */
1721 return baseclass.extend(/** @lends LuCI.rpc.prototype */ {
1722 /* privates */
1723 call: function(req, cb, nobatch) {
1724 var q = '';
1725
1726 if (Array.isArray(req)) {
1727 if (req.length == 0)
1728 return Promise.resolve([]);
1729
1730 for (var i = 0; i &lt; req.length; i++)
1731 if (req[i].params)
1732 q += '%s%s.%s'.format(
1733 q ? ';' : '/',
1734 req[i].params[1],
1735 req[i].params[2]
1736 );
1737 }
1738 else if (req.params) {
1739 q += '/%s.%s'.format(req.params[1], req.params[2]);
1740 }
1741
1742 return request.post(rpcBaseURL + q, req, {
1743 timeout: (L.env.rpctimeout || 20) * 1000,
1744 nobatch: nobatch,
1745 credentials: true
1746 }).then(cb, cb);
1747 },
1748
1749 parseCallReply: function(req, res) {
1750 var msg = null;
1751
1752 if (res instanceof Error)
1753 return req.reject(res);
1754
1755 try {
1756 if (!res.ok)
1757 L.raise('RPCError', 'RPC call to %s/%s failed with HTTP error %d: %s',
1758 req.object, req.method, res.status, res.statusText || '?');
1759
1760 msg = res.json();
1761 }
1762 catch (e) {
1763 return req.reject(e);
1764 }
1765
1766 /*
1767 * The interceptor args are intentionally swapped.
1768 * Response is passed as first arg to align with Request class interceptors
1769 */
1770 Promise.all(rpcInterceptorFns.map(function(fn) { return fn(msg, req) }))
1771 .then(this.handleCallReply.bind(this, req, msg))
1772 .catch(req.reject);
1773 },
1774
1775 handleCallReply: function(req, msg) {
1776 var type = Object.prototype.toString,
1777 ret = null;
1778
1779 try {
1780 /* verify message frame */
1781 if (!L.isObject(msg) || msg.jsonrpc != '2.0')
1782 L.raise('RPCError', 'RPC call to %s/%s returned invalid message frame',
1783 req.object, req.method);
1784
1785 /* check error condition */
1786 if (L.isObject(msg.error) &amp;&amp; msg.error.code &amp;&amp; msg.error.message)
1787 L.raise('RPCError', 'RPC call to %s/%s failed with error %d: %s',
1788 req.object, req.method, msg.error.code, msg.error.message || '?');
1789 }
1790 catch (e) {
1791 return req.reject(e);
1792 }
1793
1794 if (!req.object &amp;&amp; !req.method) {
1795 ret = msg.result;
1796 }
1797 else if (Array.isArray(msg.result)) {
1798 ret = (msg.result.length > 1) ? msg.result[1] : msg.result[0];
1799 }
1800
1801 if (req.expect) {
1802 for (var key in req.expect) {
1803 if (ret != null &amp;&amp; key != '')
1804 ret = ret[key];
1805
1806 if (ret == null || type.call(ret) != type.call(req.expect[key]))
1807 ret = req.expect[key];
1808
1809 break;
1810 }
1811 }
1812
1813 /* apply filter */
1814 if (typeof(req.filter) == 'function') {
1815 req.priv[0] = ret;
1816 req.priv[1] = req.params;
1817 ret = req.filter.apply(this, req.priv);
1818 }
1819
1820 req.resolve(ret);
1821 },
1822
1823 /**
1824 * Lists available remote ubus objects or the method signatures of
1825 * specific objects.
1826 *
1827 * This function has two signatures and is sensitive to the number of
1828 * arguments passed to it:
1829 * - `list()` -
1830 * Returns an array containing the names of all remote `ubus` objects
1831 * - `list("objname", ...)`
1832 * Returns method signatures for each given `ubus` object name.
1833 *
1834 * @param {...string} [objectNames]
1835 * If any object names are given, this function will return the method
1836 * signatures of each given object.
1837 *
1838 * @returns {Promise&lt;Array&lt;string>|Object&lt;string, Object&lt;string, Object&lt;string, string>>>>}
1839 * When invoked without arguments, this function will return a promise
1840 * resolving to an array of `ubus` object names. When invoked with one or
1841 * more arguments, a promise resolving to an object describing the method
1842 * signatures of each requested `ubus` object name will be returned.
1843 */
1844 list: function() {
1845 var msg = {
1846 jsonrpc: '2.0',
1847 id: rpcRequestID++,
1848 method: 'list',
1849 params: arguments.length ? this.varargs(arguments) : undefined
1850 };
1851
1852 return new Promise(L.bind(function(resolveFn, rejectFn) {
1853 /* store request info */
1854 var req = {
1855 resolve: resolveFn,
1856 reject: rejectFn
1857 };
1858
1859 /* call rpc */
1860 this.call(msg, this.parseCallReply.bind(this, req));
1861 }, this));
1862 },
1863
1864 /**
1865 * @typedef {Object} DeclareOptions
1866 * @memberof LuCI.rpc
1867 *
1868 * @property {string} object
1869 * The name of the remote `ubus` object to invoke.
1870 *
1871 * @property {string} method
1872 * The name of the remote `ubus` method to invoke.
1873 *
1874 * @property {string[]} [params]
1875 * Lists the named parameters expected by the remote `ubus` RPC method.
1876 * The arguments passed to the resulting generated method call function
1877 * will be mapped to named parameters in the order they appear in this
1878 * array.
1879 *
1880 * Extraneous parameters passed to the generated function will not be
1881 * sent to the remote procedure but are passed to the
1882 * {@link LuCI.rpc~filterFn filter function} if one is specified.
1883 *
1884 * Examples:
1885 * - `params: [ "foo", "bar" ]` -
1886 * When the resulting call function is invoked with `fn(true, false)`,
1887 * the corresponding args object sent to the remote procedure will be
1888 * `{ foo: true, bar: false }`.
1889 * - `params: [ "test" ], filter: function(reply, args, extra) { ... }` -
1890 * When the resultung generated function is invoked with
1891 * `fn("foo", "bar", "baz")` then `{ "test": "foo" }` will be sent as
1892 * argument to the remote procedure and the filter function will be
1893 * invoked with `filterFn(reply, [ "foo" ], "bar", "baz")`
1894 *
1895 * @property {Object&lt;string,*>} [expect]
1896 * Describes the expected return data structure. The given object is
1897 * supposed to contain a single key selecting the value to use from
1898 * the returned `ubus` reply object. The value of the sole key within
1899 * the `expect` object is used to infer the expected type of the received
1900 * `ubus` reply data.
1901 *
1902 * If the received data does not contain `expect`'s key, or if the
1903 * type of the data differs from the type of the value in the expect
1904 * object, the expect object's value is returned as default instead.
1905 *
1906 * The key in the `expect` object may be an empty string (`''`) in which
1907 * case the entire reply object is selected instead of one of its subkeys.
1908 *
1909 * If the `expect` option is omitted, the received reply will be returned
1910 * as-is, regardless of its format or type.
1911 *
1912 * Examples:
1913 * - `expect: { '': { error: 'Invalid response' } }` -
1914 * This requires the entire `ubus` reply to be a plain JavaScript
1915 * object. If the reply isn't an object but e.g. an array or a numeric
1916 * error code instead, it will get replaced with
1917 * `{ error: 'Invalid response' }` instead.
1918 * - `expect: { results: [] }` -
1919 * This requires the received `ubus` reply to be an object containing
1920 * a key `results` with an array as value. If the received reply does
1921 * not contain such a key, or if `reply.results` points to a non-array
1922 * value, the empty array (`[]`) will be used instead.
1923 * - `expect: { success: false }` -
1924 * This requires the received `ubus` reply to be an object containing
1925 * a key `success` with a boolean value. If the reply does not contain
1926 * `success` or if `reply.success` is not a boolean value, `false` will
1927 * be returned as default instead.
1928 *
1929 * @property {LuCI.rpc~filterFn} [filter]
1930 * Specfies an optional filter function which is invoked to transform the
1931 * received reply data before it is returned to the caller.
1932 *
1933 */
1934
1935 /**
1936 * The filter function is invoked to transform a received `ubus` RPC call
1937 * reply before returning it to the caller.
1938 *
1939 * @callback LuCI.rpc~filterFn
1940 *
1941 * @param {*} data
1942 * The received `ubus` reply data or a subset of it as described in the
1943 * `expect` option of the RPC call declaration. In case of remote call
1944 * errors, `data` is numeric `ubus` error code instead.
1945 *
1946 * @param {Array&lt;*>} args
1947 * The arguments the RPC method has been invoked with.
1948 *
1949 * @param {...*} extraArgs
1950 * All extraneous arguments passed to the RPC method exceeding the number
1951 * of arguments describes in the RPC call declaration.
1952 *
1953 * @return {*}
1954 * The return value of the filter function will be returned to the caller
1955 * of the RPC method as-is.
1956 */
1957
1958 /**
1959 * The generated invocation function is returned by
1960 * {@link LuCI.rpc#declare rpc.declare()} and encapsulates a single
1961 * RPC method call.
1962 *
1963 * Calling this function will execute a remote `ubus` HTTP call request
1964 * using the arguments passed to it as arguments and return a promise
1965 * resolving to the received reply values.
1966 *
1967 * @callback LuCI.rpc~invokeFn
1968 *
1969 * @param {...*} params
1970 * The parameters to pass to the remote procedure call. The given
1971 * positional arguments will be named to named RPC parameters according
1972 * to the names specified in the `params` array of the method declaration.
1973 *
1974 * Any additional parameters exceeding the amount of arguments in the
1975 * `params` declaration are passed as private extra arguments to the
1976 * declared filter function.
1977 *
1978 * @return {Promise&lt;*>}
1979 * Returns a promise resolving to the result data of the remote `ubus`
1980 * RPC method invocation, optionally substituted and filtered according
1981 * to the `expect` and `filter` declarations.
1982 */
1983
1984 /**
1985 * Describes a remote RPC call procedure and returns a function
1986 * implementing it.
1987 *
1988 * @param {LuCI.rpc.DeclareOptions} options
1989 * If any object names are given, this function will return the method
1990 * signatures of each given object.
1991 *
1992 * @returns {LuCI.rpc~invokeFn}
1993 * Returns a new function implementing the method call described in
1994 * `options`.
1995 */
1996 declare: function(options) {
1997 return Function.prototype.bind.call(function(rpc, options) {
1998 var args = this.varargs(arguments, 2);
1999 return new Promise(function(resolveFn, rejectFn) {
2000 /* build parameter object */
2001 var p_off = 0;
2002 var params = { };
2003 if (Array.isArray(options.params))
2004 for (p_off = 0; p_off &lt; options.params.length; p_off++)
2005 params[options.params[p_off]] = args[p_off];
2006
2007 /* all remaining arguments are private args */
2008 var priv = [ undefined, undefined ];
2009 for (; p_off &lt; args.length; p_off++)
2010 priv.push(args[p_off]);
2011
2012 /* store request info */
2013 var req = {
2014 expect: options.expect,
2015 filter: options.filter,
2016 resolve: resolveFn,
2017 reject: rejectFn,
2018 params: params,
2019 priv: priv,
2020 object: options.object,
2021 method: options.method
2022 };
2023
2024 /* build message object */
2025 var msg = {
2026 jsonrpc: '2.0',
2027 id: rpcRequestID++,
2028 method: 'call',
2029 params: [
2030 rpcSessionID,
2031 options.object,
2032 options.method,
2033 params
2034 ]
2035 };
2036
2037 /* call rpc */
2038 rpc.call(msg, rpc.parseCallReply.bind(rpc, req), options.nobatch);
2039 });
2040 }, this, this, options);
2041 },
2042
2043 /**
2044 * Returns the current RPC session id.
2045 *
2046 * @returns {string}
2047 * Returns the 32 byte session ID string used for authenticating remote
2048 * requests.
2049 */
2050 getSessionID: function() {
2051 return rpcSessionID;
2052 },
2053
2054 /**
2055 * Set the RPC session id to use.
2056 *
2057 * @param {string} sid
2058 * Sets the 32 byte session ID string used for authenticating remote
2059 * requests.
2060 */
2061 setSessionID: function(sid) {
2062 rpcSessionID = sid;
2063 },
2064
2065 /**
2066 * Returns the current RPC base URL.
2067 *
2068 * @returns {string}
2069 * Returns the RPC URL endpoint to issue requests against.
2070 */
2071 getBaseURL: function() {
2072 return rpcBaseURL;
2073 },
2074
2075 /**
2076 * Set the RPC base URL to use.
2077 *
2078 * @param {string} sid
2079 * Sets the RPC URL endpoint to issue requests against.
2080 */
2081 setBaseURL: function(url) {
2082 rpcBaseURL = url;
2083 },
2084
2085 /**
2086 * Translates a numeric `ubus` error code into a human readable
2087 * description.
2088 *
2089 * @param {number} statusCode
2090 * The numeric status code.
2091 *
2092 * @returns {string}
2093 * Returns the textual description of the code.
2094 */
2095 getStatusText: function(statusCode) {
2096 switch (statusCode) {
2097 case 0: return _('Command OK');
2098 case 1: return _('Invalid command');
2099 case 2: return _('Invalid argument');
2100 case 3: return _('Method not found');
2101 case 4: return _('Resource not found');
2102 case 5: return _('No data received');
2103 case 6: return _('Permission denied');
2104 case 7: return _('Request timeout');
2105 case 8: return _('Not supported');
2106 case 9: return _('Unspecified error');
2107 case 10: return _('Connection lost');
2108 default: return _('Unknown error code');
2109 }
2110 },
2111
2112 /**
2113 * Registered interceptor functions are invoked before the standard reply
2114 * parsing and handling logic.
2115 *
2116 * By returning rejected promises, interceptor functions can cause the
2117 * invocation function to fail, regardless of the received reply.
2118 *
2119 * Interceptors may also modify their message argument in-place to
2120 * rewrite received replies before they're processed by the standard
2121 * response handling code.
2122 *
2123 * A common use case for such functions is to detect failing RPC replies
2124 * due to expired authentication in order to trigger a new login.
2125 *
2126 * @callback LuCI.rpc~interceptorFn
2127 *
2128 * @param {*} msg
2129 * The unprocessed, JSON decoded remote RPC method call reply.
2130 *
2131 * Since interceptors run before the standard parsing logic, the reply
2132 * data is not verified for correctness or filtered according to
2133 * `expect` and `filter` specifications in the declarations.
2134 *
2135 * @param {Object} req
2136 * The related request object which is an extended variant of the
2137 * declaration object, allowing access to internals of the invocation
2138 * function such as `filter`, `expect` or `params` values.
2139 *
2140 * @return {Promise&lt;*>|*}
2141 * Interceptor functions may return a promise to defer response
2142 * processing until some delayed work completed. Any values the returned
2143 * promise resolves to are ignored.
2144 *
2145 * When the returned promise rejects with an error, the invocation
2146 * function will fail too, forwarding the error to the caller.
2147 */
2148
2149 /**
2150 * Registers a new interceptor function.
2151 *
2152 * @param {LuCI.rpc~interceptorFn} interceptorFn
2153 * The inteceptor function to register.
2154 *
2155 * @returns {LuCI.rpc~interceptorFn}
2156 * Returns the given function value.
2157 */
2158 addInterceptor: function(interceptorFn) {
2159 if (typeof(interceptorFn) == 'function')
2160 rpcInterceptorFns.push(interceptorFn);
2161 return interceptorFn;
2162 },
2163
2164 /**
2165 * Removes a registered interceptor function.
2166 *
2167 * @param {LuCI.rpc~interceptorFn} interceptorFn
2168 * The inteceptor function to remove.
2169 *
2170 * @returns {boolean}
2171 * Returns `true` if the given function has been removed or `false`
2172 * if it has not been found.
2173 */
2174 removeInterceptor: function(interceptorFn) {
2175 var oldlen = rpcInterceptorFns.length, i = oldlen;
2176 while (i--)
2177 if (rpcInterceptorFns[i] === interceptorFn)
2178 rpcInterceptorFns.splice(i, 1);
2179 return (rpcInterceptorFns.length &lt; oldlen);
2180 }
2181 });
2182 </code></pre>
2183 </article>
2184 </section>
2185
2186
2187
2188
2189
2190
2191
2192
2193 <footer>
2194 Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 02 2020 21:30:57 GMT+0200 (Central European Summer Time)
2195 </footer>
2196 </div>
2197 </div>
2198 <script>prettyPrint();</script>
2199 <script src="scripts/jaguar.js"></script>
2200 </body>
2201 </html>